@levo-so/studio 0.3.3 → 0.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/index.js +112 -95
  2. package/package.json +3 -3
  3. package/studio.css +1 -1
package/index.js CHANGED
@@ -9655,7 +9655,7 @@ var rd = {
9655
9655
  ...e,
9656
9656
  national: Cd(n.target.value, e.iso2)
9657
9657
  }),
9658
- className: "w-full rounded-r-xl bg-transparent px-3.5 py-2.5 text-base text-text-1 outline-none placeholder:text-text-3"
9658
+ className: "w-full rounded-r-xl bg-transparent px-3.5 py-2.5 text-base text-text-1 outline-none placeholder:text-text-3/55"
9659
9659
  })]
9660
9660
  }),
9661
9661
  i ? /* @__PURE__ */ U("p", {
@@ -9746,7 +9746,7 @@ var rd = {
9746
9746
  wide: !1,
9747
9747
  optional: !1
9748
9748
  }
9749
- ], jd = (e) => M("w-full rounded-xl border bg-page px-3.5 py-2.5 text-base text-text-1 outline-none transition placeholder:text-text-3", e ? "border-red-500 focus:ring-[3px] focus:ring-red-500/15" : "[border-color:var(--color-border)] focus:border-brand focus:ring-[3px] focus:ring-brand/20"), Md = "flex items-baseline gap-1.5 font-medium text-sm text-text-1", Nd = () => /* @__PURE__ */ U("span", {
9749
+ ], jd = (e) => M("w-full rounded-xl border bg-page px-3.5 py-2.5 text-base text-text-1 outline-none transition placeholder:text-text-3/55", e ? "border-red-500 focus:ring-[3px] focus:ring-red-500/15" : "[border-color:var(--color-border)] focus:border-brand focus:ring-[3px] focus:ring-brand/20"), Md = "flex items-baseline gap-1.5 font-medium text-sm text-text-1", Nd = () => /* @__PURE__ */ U("span", {
9750
9750
  "aria-hidden": !0,
9751
9751
  className: "text-red-500",
9752
9752
  children: "*"
@@ -10107,7 +10107,7 @@ var rd = {
10107
10107
  onKeyDown: (t) => {
10108
10108
  t.key === "Enter" && (t.preventDefault(), e.trim() && i());
10109
10109
  },
10110
- className: M("w-full rounded-xl border bg-page px-3.5 py-2.5 text-base text-text-1 uppercase outline-none transition placeholder:text-text-3 placeholder:normal-case", n ? "border-red-500 focus:ring-[3px] focus:ring-red-500/15" : "[border-color:var(--color-border)] focus:border-brand focus:ring-[3px] focus:ring-brand/20")
10110
+ className: M("w-full rounded-xl border bg-page px-3.5 py-2.5 text-base text-text-1 uppercase outline-none transition placeholder:text-text-3/55 placeholder:normal-case", n ? "border-red-500 focus:ring-[3px] focus:ring-red-500/15" : "[border-color:var(--color-border)] focus:border-brand focus:ring-[3px] focus:ring-brand/20")
10111
10111
  }), /* @__PURE__ */ W("button", {
10112
10112
  type: "button",
10113
10113
  disabled: !e.trim() || r,
@@ -10244,7 +10244,15 @@ var rd = {
10244
10244
  o,
10245
10245
  e
10246
10246
  ]), null;
10247
- }, sf = 200, cf = "a[href],button:not([disabled]),input:not([disabled]),select:not([disabled]),textarea:not([disabled]),summary,[tabindex]:not([tabindex=\"-1\"])", lf = (e) => {
10247
+ }, sf = 200, cf = () => {
10248
+ let [e, t] = V(null);
10249
+ return R(() => {
10250
+ let e = typeof window > "u" ? null : window.visualViewport;
10251
+ if (!e) return;
10252
+ let n = () => t(e.height);
10253
+ return n(), e.addEventListener("resize", n), () => e.removeEventListener("resize", n);
10254
+ }, []), e;
10255
+ }, lf = "a[href],button:not([disabled]),input:not([disabled]),select:not([disabled]),textarea:not([disabled]),summary,[tabindex]:not([tabindex=\"-1\"])", uf = (e) => {
10248
10256
  R(() => {
10249
10257
  if (!e || typeof document > "u") return;
10250
10258
  let { body: t } = document, n = window.scrollY, r = {
@@ -10257,19 +10265,19 @@ var rd = {
10257
10265
  t.style.position = r.position, t.style.top = r.top, t.style.width = r.width, t.style.overflow = r.overflow, window.scrollTo(0, n);
10258
10266
  };
10259
10267
  }, [e]);
10260
- }, uf = ({ title: e, when: t, priceLabel: n, isFree: r, isClosing: i, onClose: a, onSubmit: o, footer: s, wide: c, children: l }) => {
10261
- let u = Fe(), d = B(null), [f, p] = V(!1);
10262
- lf(!0);
10263
- let m = B(a);
10264
- m.current = a, R(() => {
10268
+ }, df = ({ title: e, when: t, priceLabel: n, isFree: r, isClosing: i, onClose: a, onSubmit: o, footer: s, wide: c, children: l }) => {
10269
+ let u = Fe(), d = B(null), f = cf(), [p, m] = V(!1);
10270
+ uf(!0);
10271
+ let h = B(a);
10272
+ h.current = a, R(() => {
10265
10273
  let e = document.activeElement, t = (e) => {
10266
10274
  if (document.querySelector("[data-radix-popper-content-wrapper]")) return;
10267
10275
  if (e.key === "Escape") {
10268
- e.stopPropagation(), m.current();
10276
+ e.stopPropagation(), h.current();
10269
10277
  return;
10270
10278
  }
10271
10279
  if (e.key !== "Tab" || !d.current) return;
10272
- let t = Array.from(d.current.querySelectorAll(cf)).filter((e) => e.offsetParent !== null);
10280
+ let t = Array.from(d.current.querySelectorAll(lf)).filter((e) => e.offsetParent !== null);
10273
10281
  if (t.length === 0) return;
10274
10282
  let n = t[0], r = t[t.length - 1], i = document.activeElement;
10275
10283
  e.shiftKey && (i === n || !d.current.contains(i)) ? (e.preventDefault(), r.focus()) : !e.shiftKey && i === r && (e.preventDefault(), n.focus());
@@ -10278,14 +10286,20 @@ var rd = {
10278
10286
  document.removeEventListener("keydown", t), e?.focus?.();
10279
10287
  };
10280
10288
  }, []);
10281
- let h = /* @__PURE__ */ W(H, { children: [/* @__PURE__ */ U("div", {
10282
- onScroll: (e) => p(e.currentTarget.scrollTop > 2),
10283
- className: "min-h-0 flex-1 overflow-y-auto overflow-x-hidden overscroll-contain px-5 pt-4 pb-3",
10284
- children: l
10285
- }), s && /* @__PURE__ */ U("div", {
10286
- className: "sticky bottom-0 z-10 shrink-0 border-t bg-page px-5 pt-3 pb-[max(env(safe-area-inset-bottom),16px)] [border-color:var(--color-border)]",
10287
- children: s
10288
- })] });
10289
+ let g = /* @__PURE__ */ U("div", {
10290
+ onScroll: (e) => m(e.currentTarget.scrollTop > 2),
10291
+ className: "min-h-0 flex-1 overflow-y-auto overflow-x-hidden overscroll-contain",
10292
+ children: /* @__PURE__ */ W("div", {
10293
+ className: "flex min-h-full flex-col",
10294
+ children: [/* @__PURE__ */ U("div", {
10295
+ className: "px-5 pt-4 pb-3",
10296
+ children: l
10297
+ }), s && /* @__PURE__ */ U("div", {
10298
+ className: "mt-auto border-t bg-page px-5 pt-3 pb-[max(env(safe-area-inset-bottom),16px)] [border-color:var(--color-border)] sm:sticky sm:bottom-0 sm:z-10",
10299
+ children: s
10300
+ })]
10301
+ })
10302
+ });
10289
10303
  return /* @__PURE__ */ U(zn.Root, { children: /* @__PURE__ */ U("div", {
10290
10304
  className: M("fixed inset-0 z-[2147483000] flex items-end justify-center bg-black/40 fill-mode-forwards sm:items-start", "sm:backdrop-blur-[3px]", i ? "fade-out-0 pointer-events-none animate-out ease-out" : "fade-in-0 animate-in ease-out"),
10291
10305
  style: { animationDuration: `${i ? 160 : sf}ms` },
@@ -10297,10 +10311,13 @@ var rd = {
10297
10311
  role: "dialog",
10298
10312
  "aria-modal": "true",
10299
10313
  "aria-labelledby": u,
10300
- className: M("relative flex h-dvh max-h-dvh w-full flex-col overflow-hidden bg-page will-change-transform", "sm:mt-[6vh] sm:h-auto sm:max-h-[88dvh] sm:rounded-2xl sm:border sm:shadow-2xl sm:[border-color:var(--color-border)]", "fill-mode-forwards ease-out", i ? "slide-out-to-bottom-4 fade-out-0 sm:slide-out-to-bottom-2 animate-out" : "slide-in-from-bottom-4 fade-in-0 sm:slide-in-from-bottom-2 animate-in", c ? "sm:max-w-[540px]" : "sm:max-w-[460px]"),
10301
- style: { animationDuration: `${i ? 160 : sf}ms` },
10314
+ className: M("relative flex h-[var(--sheet-height)] max-h-[var(--sheet-height)] w-full flex-col overflow-hidden bg-page will-change-transform", "sm:mt-[6vh] sm:h-auto sm:max-h-[88dvh] sm:rounded-2xl sm:border sm:shadow-2xl sm:[border-color:var(--color-border)]", "fill-mode-forwards ease-out", i ? "slide-out-to-bottom-4 fade-out-0 sm:slide-out-to-bottom-2 animate-out" : "slide-in-from-bottom-4 fade-in-0 sm:slide-in-from-bottom-2 animate-in", c ? "sm:max-w-[540px]" : "sm:max-w-[460px]"),
10315
+ style: {
10316
+ animationDuration: `${i ? 160 : sf}ms`,
10317
+ "--sheet-height": f ? `${f}px` : "100dvh"
10318
+ },
10302
10319
  children: [/* @__PURE__ */ W("div", {
10303
- className: M("sticky top-0 z-10 shrink-0 border-b bg-page px-5 pt-[max(env(safe-area-inset-top),16px)] pb-3.5 transition-colors", f ? "[border-color:var(--color-border)]" : "border-transparent"),
10320
+ className: M("sticky top-0 z-10 shrink-0 border-b bg-page px-5 pt-[max(env(safe-area-inset-top),16px)] pb-3.5 transition-colors", p ? "[border-color:var(--color-border)]" : "border-transparent"),
10304
10321
  children: [/* @__PURE__ */ W("div", {
10305
10322
  className: "mb-2.5 flex items-center justify-between gap-3",
10306
10323
  children: [/* @__PURE__ */ U("h2", {
@@ -10336,11 +10353,11 @@ var rd = {
10336
10353
  }), o ? /* @__PURE__ */ U("form", {
10337
10354
  onSubmit: o,
10338
10355
  className: "flex min-h-0 flex-1 flex-col",
10339
- children: h
10340
- }) : h]
10356
+ children: g
10357
+ }) : g]
10341
10358
  })
10342
10359
  }) });
10343
- }, df = "\n@keyframes levo-reg-draw { to { stroke-dashoffset: 0; } }\n@keyframes levo-reg-sweep { to { transform: translateX(240%); } }\n@media (prefers-reduced-motion: reduce) {\n [data-levo-reg-check] { stroke-dashoffset: 0 !important; animation: none !important; }\n [data-levo-reg-sweep] { display: none !important; }\n}\n", ff = ({ email: e, eventTitle: t, startsAt: n, endsAt: r, eventUrl: i, when: a, bookingRef: o, qrImageUrl: s, invoiceUrl: c, onClose: l, onRegisterAnother: u }) => {
10360
+ }, ff = "\n@keyframes levo-reg-draw { to { stroke-dashoffset: 0; } }\n@keyframes levo-reg-sweep { to { transform: translateX(240%); } }\n@media (prefers-reduced-motion: reduce) {\n [data-levo-reg-check] { stroke-dashoffset: 0 !important; animation: none !important; }\n [data-levo-reg-sweep] { display: none !important; }\n}\n", pf = ({ email: e, eventTitle: t, startsAt: n, endsAt: r, eventUrl: i, when: a, bookingRef: o, qrImageUrl: s, invoiceUrl: c, onClose: l, onRegisterAnother: u }) => {
10344
10361
  let d = Yd({
10345
10362
  title: t,
10346
10363
  startsAt: n,
@@ -10352,7 +10369,7 @@ var rd = {
10352
10369
  }, []), /* @__PURE__ */ W("div", {
10353
10370
  className: "flex flex-1 flex-col items-center justify-center px-6 py-9 text-center",
10354
10371
  children: [
10355
- /* @__PURE__ */ U("style", { dangerouslySetInnerHTML: { __html: df } }),
10372
+ /* @__PURE__ */ U("style", { dangerouslySetInnerHTML: { __html: ff } }),
10356
10373
  /* @__PURE__ */ U("div", {
10357
10374
  className: "zoom-in-50 fade-in-0 flex size-[68px] animate-in items-center justify-center rounded-full bg-green-500/10 text-green-700 duration-300 ease-[cubic-bezier(0.32,0.72,0,1)]",
10358
10375
  children: /* @__PURE__ */ W("svg", {
@@ -10497,7 +10514,7 @@ var rd = {
10497
10514
  })
10498
10515
  ]
10499
10516
  });
10500
- }, pf = ({ tickets: e, selectedTicket: t, onSelect: n, error: r }) => {
10517
+ }, mf = ({ tickets: e, selectedTicket: t, onSelect: n, error: r }) => {
10501
10518
  let [i, a] = V(!t);
10502
10519
  return /* @__PURE__ */ W("fieldset", {
10503
10520
  className: "flex flex-col gap-2",
@@ -10574,7 +10591,7 @@ var rd = {
10574
10591
  })
10575
10592
  ]
10576
10593
  });
10577
- }, mf = {
10594
+ }, hf = {
10578
10595
  name: "",
10579
10596
  email: "",
10580
10597
  designation: "",
@@ -10593,11 +10610,11 @@ var rd = {
10593
10610
  country: ""
10594
10611
  }
10595
10612
  }
10596
- }, hf = (e) => {
10613
+ }, gf = (e) => {
10597
10614
  let t = {};
10598
10615
  return e.name.trim() || (t.name = "Please enter your name"), e.email.trim() ? /^[^\s@]+@[^\s@]+\.[^\s@]{2,}$/.test(e.email.trim()) || (t.email = "That email address doesn't look right") : t.email = "Please enter your email", e.phone.national && !ir(Td(e.phone)) && (t.phone = "That doesn't look like a valid phone number"), t;
10599
- }, gf = (e) => {
10600
- let [t, n] = V(mf), [r, i] = V({}), [a, o] = V(!1), s = B(!1);
10616
+ }, _f = (e) => {
10617
+ let [t, n] = V(hf), [r, i] = V({}), [a, o] = V(!1), s = B(!1);
10601
10618
  R(() => {
10602
10619
  s.current || !e || (s.current = !0, n((t) => ({
10603
10620
  ...t,
@@ -10605,14 +10622,14 @@ var rd = {
10605
10622
  email: t.email || e.email || ""
10606
10623
  })));
10607
10624
  }, [e]);
10608
- let c = hf(t), l = L((e, t) => n((n) => ({
10625
+ let c = gf(t), l = L((e, t) => n((n) => ({
10609
10626
  ...n,
10610
10627
  [e]: t
10611
10628
  })), []), u = L((e) => i((t) => ({
10612
10629
  ...t,
10613
10630
  [e]: !0
10614
10631
  })), []), d = L(() => {
10615
- n(mf), i({}), o(!1), s.current = !0;
10632
+ n(hf), i({}), o(!1), s.current = !0;
10616
10633
  }, []), f = L(() => {
10617
10634
  i({}), o(!1);
10618
10635
  }, []);
@@ -10633,7 +10650,7 @@ var rd = {
10633
10650
  } : r,
10634
10651
  fieldError: (e) => a || r[e] ? c[e] : void 0
10635
10652
  };
10636
- }, _f = ({ eventID: e, workspaceId: t, selectedTicket: n, enabled: r }) => {
10653
+ }, vf = ({ eventID: e, workspaceId: t, selectedTicket: n, enabled: r }) => {
10637
10654
  let i = P(), [a, o] = V(""), [s, c] = V(null), [l, u] = V(!1), [d, f] = V(null), [p, m] = V([]);
10638
10655
  return R(() => {
10639
10656
  !r || !e || i?.fetch?.url(`/v1/event/event/${e}/coupon/list-public-coupons`)?.options({ headers: { Origin: t || "" } })?.get().json().then((e) => {
@@ -10686,13 +10703,13 @@ var rd = {
10686
10703
  o(""), c(null), f(null);
10687
10704
  }, [])
10688
10705
  };
10689
- }, vf = async (e, t, n) => {
10706
+ }, yf = async (e, t, n) => {
10690
10707
  let r = new URLSearchParams();
10691
10708
  return r.append("query", JSON.stringify({ where: { status: "active" } })), (await e.fetch?.url(`/v1/event/event/${t}/ticket/query?${r.toString()}`).options({ headers: { Origin: n || "" } }).get().json())?.content?.data ?? [];
10692
- }, yf = ({ eventID: e, external: t, workspaceId: n }) => {
10709
+ }, bf = ({ eventID: e, external: t, workspaceId: n }) => {
10693
10710
  let r = P(), [i, a] = V([]), [o, s] = V(!t), [c, l] = V(!1), [u, d] = V(null);
10694
10711
  return R(() => {
10695
- t || !e || (s(!0), vf(r, e, n ?? "").then((e) => {
10712
+ t || !e || (s(!0), yf(r, e, n ?? "").then((e) => {
10696
10713
  a(e), e.length === 1 && d(e[0] ?? null);
10697
10714
  }).catch((e) => {
10698
10715
  l(!0), r?.logger?.error("Failed to load event tickets", { exception: G(e) });
@@ -10708,20 +10725,20 @@ var rd = {
10708
10725
  selectedTicket: u,
10709
10726
  selectTicket: d
10710
10727
  };
10711
- }, bf = "register", xf = () => {
10728
+ }, xf = "register", Sf = () => {
10712
10729
  if (typeof window > "u") return !1;
10713
- let e = new URLSearchParams(window.location.search).get(bf);
10730
+ let e = new URLSearchParams(window.location.search).get(xf);
10714
10731
  return e !== null && e !== "0" && e !== "false";
10715
- }, Sf = () => typeof window < "u" && window.matchMedia("(prefers-reduced-motion: reduce)").matches, Cf = ({ canAutoOpen: e, onClosed: t }) => {
10732
+ }, Cf = () => typeof window < "u" && window.matchMedia("(prefers-reduced-motion: reduce)").matches, wf = ({ canAutoOpen: e, onClosed: t }) => {
10716
10733
  let [n, r] = V(!1), [i, a] = V(!1), o = B(null), s = B(!1), c = B(t);
10717
10734
  c.current = t;
10718
10735
  let l = L(() => r(!0), []), u = L(() => {
10719
10736
  o.current === null && (a(!0), o.current = window.setTimeout(() => {
10720
10737
  o.current = null, a(!1), r(!1), c.current();
10721
- }, Sf() ? 0 : 160));
10738
+ }, Cf() ? 0 : 160));
10722
10739
  }, []);
10723
10740
  return R(() => {
10724
- s.current || !e || !xf() || (s.current = !0, r(!0));
10741
+ s.current || !e || !Sf() || (s.current = !0, r(!0));
10725
10742
  }, [e]), R(() => () => {
10726
10743
  o.current !== null && window.clearTimeout(o.current);
10727
10744
  }, []), {
@@ -10730,22 +10747,22 @@ var rd = {
10730
10747
  open: l,
10731
10748
  close: u
10732
10749
  };
10733
- }, wf = "We took the payment but could not confirm your booking. Please contact the organiser.", Tf = ({ eventID: e, title: t, external: n, buttonText: r = "Register Now", additionalFields: i = [], startsAt: a, endsAt: o, eventUrl: s }) => {
10734
- let c = P(), { workspace: l, account: u } = A(), d = yf({
10750
+ }, Tf = "We took the payment but could not confirm your booking. Please contact the organiser.", Ef = ({ eventID: e, title: t, external: n, buttonText: r = "Register Now", additionalFields: i = [], startsAt: a, endsAt: o, eventUrl: s }) => {
10751
+ let c = P(), { workspace: l, account: u } = A(), d = bf({
10735
10752
  eventID: e,
10736
10753
  external: n,
10737
10754
  workspaceId: l?.id
10738
- }), f = gf(u), p = Vd(d.selectedTicket, null)?.isFree === !1, [m, h] = V(!1), [g, _] = V(null), [v, y] = V(null), [b, x] = V(null);
10755
+ }), f = _f(u), p = Vd(d.selectedTicket, null)?.isFree === !1, [m, h] = V(!1), [g, _] = V(null), [v, y] = V(null), [b, x] = V(null);
10739
10756
  R(() => {
10740
10757
  let t = Zd(e);
10741
10758
  t && x({ email: t.email });
10742
10759
  }, [e]);
10743
- let [S, w] = V(null), T = B(null), E = Cf({
10760
+ let [S, w] = V(null), T = B(null), E = wf({
10744
10761
  canAutoOpen: !n && !d.isLoading && d.tickets.length > 0 && !b,
10745
10762
  onClosed: L(() => {
10746
10763
  _(null), w(null), f.resetValidationDisplay();
10747
10764
  }, [f.resetValidationDisplay])
10748
- }), D = _f({
10765
+ }), D = vf({
10749
10766
  eventID: e,
10750
10767
  workspaceId: l?.id,
10751
10768
  selectedTicket: d.selectedTicket,
@@ -10764,9 +10781,9 @@ var rd = {
10764
10781
  }, [e, f.values.email]), fe = L(async (e, t) => {
10765
10782
  try {
10766
10783
  let n = await c?.fetch?.url(`/v1/event/booking/${e}/confirm-booking`)?.options({ headers: { Origin: l?.id || "" } })?.post(t)?.json();
10767
- n?.content?.data ? de(n.content.data) : _(wf);
10784
+ n?.content?.data ? de(n.content.data) : _(Tf);
10768
10785
  } catch (e) {
10769
- c?.logger?.error("Failed to confirm booking after payment", { exception: G(e) }), _(wf);
10786
+ c?.logger?.error("Failed to confirm booking after payment", { exception: G(e) }), _(Tf);
10770
10787
  }
10771
10788
  }, [
10772
10789
  c,
@@ -10888,7 +10905,7 @@ var rd = {
10888
10905
  children: r
10889
10906
  })
10890
10907
  }),
10891
- E.isOpen && /* @__PURE__ */ U(uf, {
10908
+ E.isOpen && /* @__PURE__ */ U(df, {
10892
10909
  title: v ? se : `Register for ${se}`,
10893
10910
  when: oe,
10894
10911
  priceLabel: v || !j ? void 0 : Id({
@@ -10916,7 +10933,7 @@ var rd = {
10916
10933
  children: ie ? "Secure payment · confirmation sent to your email" : "No card needed · joining link sent to your email"
10917
10934
  })
10918
10935
  ] }),
10919
- children: v ? /* @__PURE__ */ U(ff, {
10936
+ children: v ? /* @__PURE__ */ U(pf, {
10920
10937
  email: f.values.email.trim(),
10921
10938
  eventTitle: se,
10922
10939
  startsAt: a,
@@ -10931,7 +10948,7 @@ var rd = {
10931
10948
  }) : /* @__PURE__ */ W("div", {
10932
10949
  className: "flex flex-col gap-4",
10933
10950
  children: [
10934
- ae && /* @__PURE__ */ U(pf, {
10951
+ ae && /* @__PURE__ */ U(mf, {
10935
10952
  tickets: d.tickets,
10936
10953
  selectedTicket: d.selectedTicket,
10937
10954
  onSelect: le,
@@ -10998,7 +11015,7 @@ var rd = {
10998
11015
  onComplete: he
10999
11016
  })
11000
11017
  ] });
11001
- }, Ef = ({ blockInstance: e, blocks: t, theme: n }) => {
11018
+ }, Df = ({ blockInstance: e, blocks: t, theme: n }) => {
11002
11019
  let r = Fe(), i = B(null), a = Co({
11003
11020
  pageTheme: n ?? ho,
11004
11021
  blocks: [e],
@@ -11022,7 +11039,7 @@ var rd = {
11022
11039
  workspace_id: "devtools"
11023
11040
  })
11024
11041
  })] });
11025
- }, Df = 300, Of = ({ label: e, value: t, onChange: n }) => {
11042
+ }, Of = 300, kf = ({ label: e, value: t, onChange: n }) => {
11026
11043
  let [r, i] = V(() => JSON.stringify(t, null, 2)), [a, o] = V(null), s = B(null), c = B(JSON.stringify(t, null, 2));
11027
11044
  R(() => {
11028
11045
  let e = JSON.stringify(t, null, 2);
@@ -11037,7 +11054,7 @@ var rd = {
11037
11054
  } catch (e) {
11038
11055
  o(e.message);
11039
11056
  }
11040
- }, Df);
11057
+ }, Of);
11041
11058
  }, [n]);
11042
11059
  return R(() => () => {
11043
11060
  s.current && clearTimeout(s.current);
@@ -11090,7 +11107,7 @@ var rd = {
11090
11107
  })
11091
11108
  ]
11092
11109
  });
11093
- }, kf = (e, t = 0) => {
11110
+ }, Af = (e, t = 0) => {
11094
11111
  let n = e.layouts[t];
11095
11112
  if (!n) throw Error(`Layout index ${t} not found on block "${e.key}". Available: ${e.layouts.length}`);
11096
11113
  let r = n.content && Object.keys(n.content).length > 0 ? n.content : Yr(e.content_schema), i = (/* @__PURE__ */ new Date()).toISOString();
@@ -11119,7 +11136,7 @@ var rd = {
11119
11136
  deleted_at: null,
11120
11137
  site_version: "v2"
11121
11138
  };
11122
- }, Af = [
11139
+ }, jf = [
11123
11140
  {
11124
11141
  key: "content",
11125
11142
  label: "Content"
@@ -11132,8 +11149,8 @@ var rd = {
11132
11149
  key: "config",
11133
11150
  label: "Config"
11134
11151
  }
11135
- ], jf = ({ schema: e, component: t, theme: n, defaultLayoutIndex: r = 0 }) => {
11136
- let [i, a] = V(r), [o, s] = V("content"), [c, l] = V(!0), u = z(() => kf(e, i), [e, i]), [d, f] = V(u.content), [p, m] = V(u.styles), [h, g] = V(u.config), _ = z(() => ({
11152
+ ], Mf = ({ schema: e, component: t, theme: n, defaultLayoutIndex: r = 0 }) => {
11153
+ let [i, a] = V(r), [o, s] = V("content"), [c, l] = V(!0), u = z(() => Af(e, i), [e, i]), [d, f] = V(u.content), [p, m] = V(u.styles), [h, g] = V(u.config), _ = z(() => ({
11137
11154
  ...u,
11138
11155
  content: d,
11139
11156
  styles: p,
@@ -11150,18 +11167,18 @@ var rd = {
11150
11167
  ]), y = L((t) => {
11151
11168
  let n = Number(t.target.value);
11152
11169
  a(n);
11153
- let r = kf(e, n);
11170
+ let r = Af(e, n);
11154
11171
  f(r.content), m(r.styles), g(r.config);
11155
11172
  }, [e]), b = L(() => {
11156
- let t = kf(e, i);
11173
+ let t = Af(e, i);
11157
11174
  f(t.content), m(t.styles), g(t.config);
11158
11175
  }, [e, i]);
11159
11176
  return /* @__PURE__ */ W("div", {
11160
- style: Mf,
11177
+ style: Nf,
11161
11178
  children: [
11162
11179
  /* @__PURE__ */ U("div", {
11163
- style: Nf,
11164
- children: /* @__PURE__ */ U(Ef, {
11180
+ style: Pf,
11181
+ children: /* @__PURE__ */ U(Df, {
11165
11182
  blockInstance: _,
11166
11183
  blocks: v,
11167
11184
  theme: n
@@ -11170,7 +11187,7 @@ var rd = {
11170
11187
  !c && /* @__PURE__ */ U("button", {
11171
11188
  type: "button",
11172
11189
  onClick: () => l(!0),
11173
- style: Pf,
11190
+ style: Ff,
11174
11191
  title: "Open DevTools",
11175
11192
  children: /* @__PURE__ */ W("svg", {
11176
11193
  width: "18",
@@ -11185,10 +11202,10 @@ var rd = {
11185
11202
  })
11186
11203
  }),
11187
11204
  c && /* @__PURE__ */ W("div", {
11188
- style: Ff,
11205
+ style: If,
11189
11206
  children: [
11190
11207
  /* @__PURE__ */ W("div", {
11191
- style: If,
11208
+ style: Lf,
11192
11209
  children: [/* @__PURE__ */ W("div", {
11193
11210
  style: {
11194
11211
  display: "flex",
@@ -11196,10 +11213,10 @@ var rd = {
11196
11213
  gap: 8
11197
11214
  },
11198
11215
  children: [/* @__PURE__ */ U("span", {
11199
- style: Lf,
11216
+ style: Rf,
11200
11217
  children: e.title
11201
11218
  }), /* @__PURE__ */ W("span", {
11202
- style: Rf,
11219
+ style: zf,
11203
11220
  children: [
11204
11221
  e.key,
11205
11222
  ":",
@@ -11216,7 +11233,7 @@ var rd = {
11216
11233
  e.layouts.length > 1 && /* @__PURE__ */ U("select", {
11217
11234
  value: i,
11218
11235
  onChange: y,
11219
- style: zf,
11236
+ style: Bf,
11220
11237
  children: e.layouts.map((e, t) => /* @__PURE__ */ U("option", {
11221
11238
  value: t,
11222
11239
  children: e.title || e.key
@@ -11225,13 +11242,13 @@ var rd = {
11225
11242
  /* @__PURE__ */ U("button", {
11226
11243
  type: "button",
11227
11244
  onClick: b,
11228
- style: Bf,
11245
+ style: Vf,
11229
11246
  children: "Reset"
11230
11247
  }),
11231
11248
  /* @__PURE__ */ U("button", {
11232
11249
  type: "button",
11233
11250
  onClick: () => l(!1),
11234
- style: Vf,
11251
+ style: Hf,
11235
11252
  title: "Collapse DevTools",
11236
11253
  children: /* @__PURE__ */ W("svg", {
11237
11254
  width: "14",
@@ -11259,13 +11276,13 @@ var rd = {
11259
11276
  })]
11260
11277
  }),
11261
11278
  /* @__PURE__ */ U("div", {
11262
- style: Hf,
11263
- children: Af.map((e) => /* @__PURE__ */ U("button", {
11279
+ style: Uf,
11280
+ children: jf.map((e) => /* @__PURE__ */ U("button", {
11264
11281
  type: "button",
11265
11282
  onClick: () => s(e.key),
11266
11283
  style: {
11267
- ...Uf,
11268
- ...o === e.key ? Wf : {}
11284
+ ...Wf,
11285
+ ...o === e.key ? Gf : {}
11269
11286
  },
11270
11287
  children: e.label
11271
11288
  }, e.key))
@@ -11278,7 +11295,7 @@ var rd = {
11278
11295
  display: o === "content" ? "flex" : "none",
11279
11296
  flexDirection: "column"
11280
11297
  },
11281
- children: /* @__PURE__ */ U(Of, {
11298
+ children: /* @__PURE__ */ U(kf, {
11282
11299
  label: "content",
11283
11300
  value: d,
11284
11301
  onChange: f
@@ -11292,7 +11309,7 @@ var rd = {
11292
11309
  display: o === "styles" ? "flex" : "none",
11293
11310
  flexDirection: "column"
11294
11311
  },
11295
- children: /* @__PURE__ */ U(Of, {
11312
+ children: /* @__PURE__ */ U(kf, {
11296
11313
  label: "styles",
11297
11314
  value: p,
11298
11315
  onChange: m
@@ -11306,7 +11323,7 @@ var rd = {
11306
11323
  display: o === "config" ? "flex" : "none",
11307
11324
  flexDirection: "column"
11308
11325
  },
11309
- children: /* @__PURE__ */ U(Of, {
11326
+ children: /* @__PURE__ */ U(kf, {
11310
11327
  label: "config",
11311
11328
  value: h,
11312
11329
  onChange: g
@@ -11316,16 +11333,16 @@ var rd = {
11316
11333
  })
11317
11334
  ]
11318
11335
  });
11319
- }, Mf = {
11336
+ }, Nf = {
11320
11337
  position: "relative",
11321
11338
  width: "100%",
11322
11339
  minHeight: "100vh",
11323
11340
  fontFamily: "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
11324
11341
  color: "#1a1a1a"
11325
- }, Nf = {
11342
+ }, Pf = {
11326
11343
  width: "100%",
11327
11344
  minHeight: "100vh"
11328
- }, Pf = {
11345
+ }, Ff = {
11329
11346
  position: "fixed",
11330
11347
  bottom: 20,
11331
11348
  right: 20,
@@ -11343,7 +11360,7 @@ var rd = {
11343
11360
  justifyContent: "center",
11344
11361
  color: "#374151",
11345
11362
  transition: "transform 0.15s ease, box-shadow 0.15s ease"
11346
- }, Ff = {
11363
+ }, If = {
11347
11364
  position: "fixed",
11348
11365
  top: 12,
11349
11366
  right: 12,
@@ -11359,38 +11376,38 @@ var rd = {
11359
11376
  boxShadow: "0 8px 40px rgba(0,0,0,0.12), 0 2px 8px rgba(0,0,0,0.06)",
11360
11377
  overflow: "hidden",
11361
11378
  fontFamily: "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"
11362
- }, If = {
11379
+ }, Lf = {
11363
11380
  display: "flex",
11364
11381
  alignItems: "center",
11365
11382
  justifyContent: "space-between",
11366
11383
  padding: "10px 12px",
11367
11384
  borderBottom: "1px solid rgba(0,0,0,0.06)",
11368
11385
  flexShrink: 0
11369
- }, Lf = {
11386
+ }, Rf = {
11370
11387
  fontSize: 13,
11371
11388
  fontWeight: 600
11372
- }, Rf = {
11389
+ }, zf = {
11373
11390
  fontSize: 10,
11374
11391
  fontFamily: "monospace",
11375
11392
  color: "#6b7280",
11376
11393
  backgroundColor: "#f3f4f6",
11377
11394
  padding: "2px 5px",
11378
11395
  borderRadius: 4
11379
- }, zf = {
11396
+ }, Bf = {
11380
11397
  fontSize: 12,
11381
11398
  padding: "3px 6px",
11382
11399
  border: "1px solid #d1d5db",
11383
11400
  borderRadius: 4,
11384
11401
  backgroundColor: "#fff",
11385
11402
  cursor: "pointer"
11386
- }, Bf = {
11403
+ }, Vf = {
11387
11404
  fontSize: 12,
11388
11405
  padding: "3px 8px",
11389
11406
  border: "1px solid #d1d5db",
11390
11407
  borderRadius: 4,
11391
11408
  backgroundColor: "#fff",
11392
11409
  cursor: "pointer"
11393
- }, Vf = {
11410
+ }, Hf = {
11394
11411
  display: "flex",
11395
11412
  alignItems: "center",
11396
11413
  justifyContent: "center",
@@ -11401,11 +11418,11 @@ var rd = {
11401
11418
  backgroundColor: "transparent",
11402
11419
  cursor: "pointer",
11403
11420
  color: "#6b7280"
11404
- }, Hf = {
11421
+ }, Uf = {
11405
11422
  display: "flex",
11406
11423
  borderBottom: "1px solid rgba(0,0,0,0.06)",
11407
11424
  flexShrink: 0
11408
- }, Uf = {
11425
+ }, Wf = {
11409
11426
  fontSize: 12,
11410
11427
  padding: "7px 14px",
11411
11428
  border: "none",
@@ -11413,11 +11430,11 @@ var rd = {
11413
11430
  backgroundColor: "transparent",
11414
11431
  cursor: "pointer",
11415
11432
  color: "#6b7280"
11416
- }, Wf = {
11433
+ }, Gf = {
11417
11434
  color: "#1a1a1a",
11418
11435
  borderBottomColor: "#1a1a1a",
11419
11436
  fontWeight: 500
11420
- }, Gf = ["element", "group"], Kf = /* @__PURE__ */ "BoxWidget.ButtonWidget.LayoutWidget.HeadingWidget.IframeWidget.ImageWidget.IconWidget.MediaWidget.TypographyWidget.BlogContentWidget.CarouselWidget.FormWidget.ContainerWidget.UserMenuWidget.TabsListWidget.TabsTriggerWidget.TabsContentWidget.NavMenuWidget.CardWidget.TitleWidget.TextWidget.NumberWidget.URLWidget.ImageUploadWidget.MultiImageUploadWidget.TextareaWidget.RichTextWidget.DropdownWidget.SwitchWidget.DateWidget.ArrayWidget.RecordWidget".split("."), qf = Kf.reduce((e, t) => (e[t] = t, e), {}), Jf = [
11437
+ }, Kf = ["element", "group"], qf = /* @__PURE__ */ "BoxWidget.ButtonWidget.LayoutWidget.HeadingWidget.IframeWidget.ImageWidget.IconWidget.MediaWidget.TypographyWidget.BlogContentWidget.CarouselWidget.FormWidget.ContainerWidget.UserMenuWidget.TabsListWidget.TabsTriggerWidget.TabsContentWidget.NavMenuWidget.CardWidget.TitleWidget.TextWidget.NumberWidget.URLWidget.ImageUploadWidget.MultiImageUploadWidget.TextareaWidget.RichTextWidget.DropdownWidget.SwitchWidget.DateWidget.ArrayWidget.RecordWidget".split("."), Jf = qf.reduce((e, t) => (e[t] = t, e), {}), Yf = [
11421
11438
  "collection",
11422
11439
  "event",
11423
11440
  "blog",
@@ -11427,7 +11444,7 @@ var rd = {
11427
11444
  "blog_author",
11428
11445
  "blog_category",
11429
11446
  "blog_tag"
11430
- ], Yf = [
11447
+ ], Xf = [
11431
11448
  "linkedin",
11432
11449
  "google",
11433
11450
  "oauth",
@@ -11438,4 +11455,4 @@ var rd = {
11438
11455
  "password"
11439
11456
  ];
11440
11457
  //#endregion
11441
- export { Ce as ALTERNATE_METHOD_VALUES, ye as ALTERNATIVE_AUTH_METHODS, Os as AccordionContent, Es as AccordionItem, Ts as AccordionRoot, Ds as AccordionTrigger, ne as AuthProvider, xe as AuthenticationOptions, Wu as Avatar, Yu as AvatarBadge, qu as AvatarFallback, Ju as AvatarFallbackV2, Xu as AvatarGroup, Zu as AvatarGroupCount, Gu as AvatarImage, Ku as AvatarImageV2, lu as BUILT_IN_PRESETS, Eu as BackgroundEffects, dc as BaseBlogContent, O as BaseButton, Dc as BaseContainer, Yl as BaseHeading, fd as BaseLanguageSwitcher, Du as BaseSection, Lu as BaseTypography, zu as BaseUserMenu, v as BlockProvider, Jf as BlockSourceModuleList, Go as BlocksRegistry, fc as BlogContent, Vu as BookingConfirmation, Uu as BookingModal, Hu as BookingSummary, hc as Box, C as Button, ed as Calendar, Ec as Carousel, bc as CarouselContent, wc as CarouselDotButton, Tc as CarouselDots, xc as CarouselItem, Cc as CarouselNext, Sc as CarouselPrevious, Fc as CategoryFilter, _l as CommentStatusBadge, Fl as Comments, Wl as CommentsRestrictionOverlay, Oc as Container, Ll as CreateForumPost, J as DATA_ATTRIBUTES, sa as DATE_DISPLAYS, ca as DATE_FORMATS, da as DATE_HOUR12_VALUES, ua as DATE_LOCALES, la as DATE_STYLES, fa as DEFAULT_DATE_SPEC, _ as DEFAULT_FROM_STATE, ho as DEFAULT_THEME, T as DEFAULT_TRANSITION, S as DEFAULT_VIEWPORT, y as DEFAULT_VISIBLE_STATE, jf as DevTools, Ef as DevToolsPreview, Ac as EditForm, Pc as Form, Cl as FormInput, nd as FormTextarea, Bl as ForumPost, Lc as ForumProvider, cd as GlobalSearch, Xl as Heading, Yf as IMembershipAuthenticationMethods, E as Icon, Ql as Iframe, iu as Image, vl as Input, xd as IntegrationFilters, Hl as JoinRequestForm, Of as JsonEditor, Yo as KBChat, Qu as Kbd, $u as KbdGroup, Gf as KindList, pd as LanguageSwitcher, zo as LazyMotionProvider, Zo as LevoBlock, ls as LevoPage, ou as Link, Y as MESSAGE_TYPES, es as MadeWithLevo, cu as Media, _e as PENDING_APPROVAL_ERROR_CODE, uu as PRESET_CATEGORIES, du as PRESET_MAP, he as PRIMARY_AUTH_METHODS, be as PRIMARY_METHOD_VALUES, Gl as PendingRequestState, Zc as PopoverContent, qc as PopoverRoot, Xc as PopoverTrigger, m as PopupLoader, ol as PostActions, tl as PostCategory, rl as PostContent, cl as PostGallery, el as PostHeader, sl as PostLink, Vl as PostLinkWrapper, pl as PostPoll, hl as PostStatusBadge, nl as PostTitle, ql as PostsRestrictionOverlay, Mi as PreviewHighlighter, Tf as RegisterModal, Ul as SampleCommentSkeleton, Kl as SamplePostSkeleton, Jl as SearchInput, Ou as Section, Wc as SimpleTooltipWrapper, Q as Skeleton, il as StatContainer, _s as StudioPreview, Kf as StudioWidgetList, qf as StudioWidgetMap, Fu as TabsContent, Nu as TabsList, ku as TabsRoot, Pu as TabsTrigger, Bc as Tooltip, Uc as TooltipContent, Hc as TooltipPortal, zc as TooltipProvider, Vc as TooltipTrigger, Ru as Typography, Bu as UserMenu, La as VARIABLE_SINGLE_TOKEN_REGEX, Ia as VARIABLE_TOKEN_REGEX, Ma as VARIABLE_TRANSFORMS, Ko as blocksRegistry, ud as buildLocalizedHref, Zi as clearContentCache, Xa as colorOptions, lc as convertHtmlToJSON, Kr as convertKeysToPascalCase, no as cssOptionsMap, _a as dateSpecToArgs, Fa as evaluateVariableToken, ko as fetchCollectionSchema, Oo as fetchSource, vs as findFieldSchema, ys as flattenVariableMatches, Ja as generateAccentColor, Ni as generateBodyContent, Yr as generateDefaultContent, Vr as generateSchemaFromJSX, So as generateThemeStyles, yo as generateThemeVariables, p as generateVariantClasses, pu as getAvailableCategories, gu as getEffectConfigFromPresetId, Lo as getInitialPageContent, $i as getKeysWithValue, w as getNestedValue, Ro as getPageData, Po as getPageSource, fu as getPresetsByCategory, qa as getWcagContrast, Ua as hexToOKLCH, Se as isAlternateMethod, D as isConfigWithVariants, ge as isPendingApprovalError, ve as isPrimaryMethod, Ha as isValidOKLCH, _o as normalizeColorName, vo as normalizeFontName, Va as oklchStringToRGBA, Ka as oklchToHex, Ga as oklchToRGBA, X as oklchToString, ga as parseDateSpec, h as parseGroupContext, Wa as parseOKLCHString, ia as parseVariableToken, Fo as parseVariablesFromResolvedSource, go as processFonts, Co as processTheme, Qi as resetContentCache, No as resolveStyles, Mo as resolveVariables, za as rgbaToOKLCH, Ba as rgbaToOKLCHString, vu as sanitizeBackgroundEffectConfig, x as sanitizeElementKey, Xi as schemaCache, kf as schemaToBlockInstance, xa as snapDateStyle, Yi as sourceCache, ba as stylesFor, A as useAuth, f as useBlockContext, k as useCommonProps, Bo as useContentEngine, Vo as useContextEngine, vc as useDotButton, Rc as useForumContext, g as useGeneratedClassName, ee as useLanguageVariants, fe as useLogin, Ho as usePageContext, Uo as usePageMeta, pe as useStripePayment, aa as variableTokenToString };
11458
+ export { Ce as ALTERNATE_METHOD_VALUES, ye as ALTERNATIVE_AUTH_METHODS, Os as AccordionContent, Es as AccordionItem, Ts as AccordionRoot, Ds as AccordionTrigger, ne as AuthProvider, xe as AuthenticationOptions, Wu as Avatar, Yu as AvatarBadge, qu as AvatarFallback, Ju as AvatarFallbackV2, Xu as AvatarGroup, Zu as AvatarGroupCount, Gu as AvatarImage, Ku as AvatarImageV2, lu as BUILT_IN_PRESETS, Eu as BackgroundEffects, dc as BaseBlogContent, O as BaseButton, Dc as BaseContainer, Yl as BaseHeading, fd as BaseLanguageSwitcher, Du as BaseSection, Lu as BaseTypography, zu as BaseUserMenu, v as BlockProvider, Yf as BlockSourceModuleList, Go as BlocksRegistry, fc as BlogContent, Vu as BookingConfirmation, Uu as BookingModal, Hu as BookingSummary, hc as Box, C as Button, ed as Calendar, Ec as Carousel, bc as CarouselContent, wc as CarouselDotButton, Tc as CarouselDots, xc as CarouselItem, Cc as CarouselNext, Sc as CarouselPrevious, Fc as CategoryFilter, _l as CommentStatusBadge, Fl as Comments, Wl as CommentsRestrictionOverlay, Oc as Container, Ll as CreateForumPost, J as DATA_ATTRIBUTES, sa as DATE_DISPLAYS, ca as DATE_FORMATS, da as DATE_HOUR12_VALUES, ua as DATE_LOCALES, la as DATE_STYLES, fa as DEFAULT_DATE_SPEC, _ as DEFAULT_FROM_STATE, ho as DEFAULT_THEME, T as DEFAULT_TRANSITION, S as DEFAULT_VIEWPORT, y as DEFAULT_VISIBLE_STATE, Mf as DevTools, Df as DevToolsPreview, Ac as EditForm, Pc as Form, Cl as FormInput, nd as FormTextarea, Bl as ForumPost, Lc as ForumProvider, cd as GlobalSearch, Xl as Heading, Xf as IMembershipAuthenticationMethods, E as Icon, Ql as Iframe, iu as Image, vl as Input, xd as IntegrationFilters, Hl as JoinRequestForm, kf as JsonEditor, Yo as KBChat, Qu as Kbd, $u as KbdGroup, Kf as KindList, pd as LanguageSwitcher, zo as LazyMotionProvider, Zo as LevoBlock, ls as LevoPage, ou as Link, Y as MESSAGE_TYPES, es as MadeWithLevo, cu as Media, _e as PENDING_APPROVAL_ERROR_CODE, uu as PRESET_CATEGORIES, du as PRESET_MAP, he as PRIMARY_AUTH_METHODS, be as PRIMARY_METHOD_VALUES, Gl as PendingRequestState, Zc as PopoverContent, qc as PopoverRoot, Xc as PopoverTrigger, m as PopupLoader, ol as PostActions, tl as PostCategory, rl as PostContent, cl as PostGallery, el as PostHeader, sl as PostLink, Vl as PostLinkWrapper, pl as PostPoll, hl as PostStatusBadge, nl as PostTitle, ql as PostsRestrictionOverlay, Mi as PreviewHighlighter, Ef as RegisterModal, Ul as SampleCommentSkeleton, Kl as SamplePostSkeleton, Jl as SearchInput, Ou as Section, Wc as SimpleTooltipWrapper, Q as Skeleton, il as StatContainer, _s as StudioPreview, qf as StudioWidgetList, Jf as StudioWidgetMap, Fu as TabsContent, Nu as TabsList, ku as TabsRoot, Pu as TabsTrigger, Bc as Tooltip, Uc as TooltipContent, Hc as TooltipPortal, zc as TooltipProvider, Vc as TooltipTrigger, Ru as Typography, Bu as UserMenu, La as VARIABLE_SINGLE_TOKEN_REGEX, Ia as VARIABLE_TOKEN_REGEX, Ma as VARIABLE_TRANSFORMS, Ko as blocksRegistry, ud as buildLocalizedHref, Zi as clearContentCache, Xa as colorOptions, lc as convertHtmlToJSON, Kr as convertKeysToPascalCase, no as cssOptionsMap, _a as dateSpecToArgs, Fa as evaluateVariableToken, ko as fetchCollectionSchema, Oo as fetchSource, vs as findFieldSchema, ys as flattenVariableMatches, Ja as generateAccentColor, Ni as generateBodyContent, Yr as generateDefaultContent, Vr as generateSchemaFromJSX, So as generateThemeStyles, yo as generateThemeVariables, p as generateVariantClasses, pu as getAvailableCategories, gu as getEffectConfigFromPresetId, Lo as getInitialPageContent, $i as getKeysWithValue, w as getNestedValue, Ro as getPageData, Po as getPageSource, fu as getPresetsByCategory, qa as getWcagContrast, Ua as hexToOKLCH, Se as isAlternateMethod, D as isConfigWithVariants, ge as isPendingApprovalError, ve as isPrimaryMethod, Ha as isValidOKLCH, _o as normalizeColorName, vo as normalizeFontName, Va as oklchStringToRGBA, Ka as oklchToHex, Ga as oklchToRGBA, X as oklchToString, ga as parseDateSpec, h as parseGroupContext, Wa as parseOKLCHString, ia as parseVariableToken, Fo as parseVariablesFromResolvedSource, go as processFonts, Co as processTheme, Qi as resetContentCache, No as resolveStyles, Mo as resolveVariables, za as rgbaToOKLCH, Ba as rgbaToOKLCHString, vu as sanitizeBackgroundEffectConfig, x as sanitizeElementKey, Xi as schemaCache, Af as schemaToBlockInstance, xa as snapDateStyle, Yi as sourceCache, ba as stylesFor, A as useAuth, f as useBlockContext, k as useCommonProps, Bo as useContentEngine, Vo as useContextEngine, vc as useDotButton, Rc as useForumContext, g as useGeneratedClassName, ee as useLanguageVariants, fe as useLogin, Ho as usePageContext, Uo as usePageMeta, pe as useStripePayment, aa as variableTokenToString };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@levo-so/studio",
3
- "version": "0.3.3",
3
+ "version": "0.3.5",
4
4
  "author": "Levo Engineering <devs@theinternetfolks.com>",
5
5
  "description": "Levo Studio components and utilities for building block-based pages",
6
6
  "type": "module",
@@ -119,8 +119,8 @@
119
119
  "react": ">=19",
120
120
  "next": ">=14",
121
121
  "react-dom": ">=19",
122
- "@levo-so/insights": "0.2.1",
123
122
  "@levo-so/core": "0.2.1",
124
- "@levo-so/react": "0.2.1"
123
+ "@levo-so/react": "0.2.1",
124
+ "@levo-so/insights": "0.2.1"
125
125
  }
126
126
  }