@woven-canvas/vue 1.6.0 → 1.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Synced as zh, defineCanvasSingleton as Fh, CanvasStore as H0 } from "@woven-ecs/canvas-store";
2
- import { CanvasComponentDef as sI, CanvasSingletonDef as iI, CanvasStore as lI, Synced as aI, defineCanvasComponent as cI, defineCanvasSingleton as uI } from "@woven-ecs/canvas-store";
2
+ import { CanvasComponentDef as iI, CanvasSingletonDef as lI, CanvasStore as aI, Synced as cI, defineCanvasComponent as uI, defineCanvasSingleton as dI } from "@woven-ecs/canvas-store";
3
3
  import { ArrowHeadKind as Qe, ArcArrow as fn, ElbowArrow as hn, createArrowsPlugin as V0 } from "@woven-canvas/plugin-arrows";
4
4
  import { inject as ge, shallowRef as Ae, onUnmounted as $e, defineComponent as q, computed as O, openBlock as C, createElementBlock as A, unref as F, Fragment as ie, createElementVNode as x, createCommentVNode as j, ref as B, onMounted as kt, createBlock as ee, renderList as Se, toDisplayString as _e, normalizeStyle as ve, watch as pe, normalizeClass as Te, withAsyncContext as Dr, h as Xi, getCurrentInstance as Cc, watchEffect as Ws, nextTick as Gn, onBeforeUnmount as W0, markRaw as j0, customRef as U0, toValue as st, reactive as Hh, readonly as Rl, createVNode as Z, mergeProps as Xo, getCurrentScope as Vh, onScopeDispose as Wh, shallowReadonly as Lo, provide as ho, withModifiers as ut, renderSlot as me, Teleport as ps, withCtx as se, Transition as Mc, withDirectives as jh, withKeys as td, vModelText as Uh, useSlots as Kh, resolveDynamicComponent as xa, createTextVNode as Sa, normalizeProps as qh, guardReactiveProps as Jh, Suspense as K0, createSlots as q0 } from "vue";
5
5
  import { hasComponent as Fe, Color as Zo, EmbedProvider as de, Embed as Ca, Block as le, Frame as js, FrameDropTarget as J0, UploadState as jn, Asset as gn, Image as Us, getBlockDef as Gh, Grid as bn, RankBounds as Yh, createEntity as Zi, addComponent as He, Synced as Et, defineQuery as ct, Selected as Qi, Mouse as Ma, Camera as Pe, canBlockEdit as Tc, EditAfterPlacing as Ec, SelectBlock as G0, isAlive as Y0, cascadeDelete as X0, getResources as cr, deselectAll as Ta, selectBlock as Ea, findFrameAtPoint as Z0, AssignFrameChildren as Q0, Text as it, getDescendants as ey, Aabb as Uo, DeselectAll as Ac, Edited as Ic, Screen as eo, TransformBoxStateSingleton as Oc, TransformBoxState as ty, UpdateTransformBox as _c, SelectionStateSingleton as el, SelectionState as Jr, TransformHandle as nd, TransformHandleKind as ny, removeEntity as Aa, ResetKeyboard as oy, VerticalAlignment as Ze, StrokeKind as Tt, Shape as Gt, VerticalAlign as Ks, ResizeMode as Pl, DuplicateSelected as ry, BringForwardSelected as sy, SendBackwardSelected as iy, RemoveSelected as Xh, TextAlignment as un, getPluginResources as Io, Undo as Dc, Redo as qs, detectEmbedProvider as ly, validateEmbedUrl as ay, resolveEmbedUrl as cy, Controls as Bt, Cursor as Nc, field as pn, defineEditorState as uy, defineEditorSystem as tl, isReadonly as nl, getPointerInput as Rc, PointerButton as Zh, PlaceBlockEvent as Js, Held as Ia, on as od, Key as Ll, Connector as rd, Hovered as dy, Opacity as sd, User as $l, Layer as fy, UserData as hy, Editor as py, SINGLETON_ENTITY_ID as my, EventType as $o, resolveLayerRank as id, compareBlockOrder as gy } from "@woven-canvas/core";
@@ -20861,22 +20861,27 @@ const _t = /* @__PURE__ */ Oo(WC, [["render", UC]]), KC = { class: "wov-menu-but
20861
20861
  _: 1
20862
20862
  }));
20863
20863
  }
20864
- }), ZM = {
20864
+ }), ZM = [
20865
+ { label: "Small", value: 16, displayValue: 10 },
20866
+ { label: "Medium", value: 24, displayValue: 12 },
20867
+ { label: "Large", value: 40, displayValue: 16 },
20868
+ { label: "Huge", value: 96, displayValue: 20 }
20869
+ ], QM = {
20865
20870
  key: 0,
20866
20871
  xmlns: "http://www.w3.org/2000/svg",
20867
20872
  viewBox: "0 0 448 512",
20868
20873
  fill: "currentColor"
20869
- }, QM = {
20874
+ }, eT = {
20870
20875
  key: 1,
20871
20876
  xmlns: "http://www.w3.org/2000/svg",
20872
20877
  viewBox: "0 0 448 512",
20873
20878
  fill: "currentColor"
20874
- }, eT = {
20879
+ }, tT = {
20875
20880
  key: 2,
20876
20881
  xmlns: "http://www.w3.org/2000/svg",
20877
20882
  viewBox: "0 0 448 512",
20878
20883
  fill: "currentColor"
20879
- }, tT = {
20884
+ }, nT = {
20880
20885
  key: 3,
20881
20886
  xmlns: "http://www.w3.org/2000/svg",
20882
20887
  viewBox: "0 0 448 512",
@@ -20903,13 +20908,13 @@ const _t = /* @__PURE__ */ Oo(WC, [["render", UC]]), KC = { class: "wov-menu-but
20903
20908
  onClick: s
20904
20909
  }, {
20905
20910
  default: se(() => [
20906
- F(t).alignment === F(un).Left ? (C(), A("svg", ZM, [...l[0] || (l[0] = [
20911
+ F(t).alignment === F(un).Left ? (C(), A("svg", QM, [...l[0] || (l[0] = [
20907
20912
  x("path", { d: "M288 64c0 17.7-14.3 32-32 32L32 96C14.3 96 0 81.7 0 64S14.3 32 32 32l224 0c17.7 0 32 14.3 32 32zm0 256c0 17.7-14.3 32-32 32L32 352c-17.7 0-32-14.3-32-32s14.3-32 32-32l224 0c17.7 0 32 14.3 32 32zM0 192c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 224c-17.7 0-32-14.3-32-32zM448 448c0 17.7-14.3 32-32 32L32 480c-17.7 0-32-14.3-32-32s14.3-32 32-32l384 0c17.7 0 32 14.3 32 32z" }, null, -1)
20908
- ])])) : F(t).alignment === F(un).Center ? (C(), A("svg", QM, [...l[1] || (l[1] = [
20913
+ ])])) : F(t).alignment === F(un).Center ? (C(), A("svg", eT, [...l[1] || (l[1] = [
20909
20914
  x("path", { d: "M352 64c0-17.7-14.3-32-32-32L128 32c-17.7 0-32 14.3-32 32s14.3 32 32 32l192 0c17.7 0 32-14.3 32-32zm96 128c0-17.7-14.3-32-32-32L32 160c-17.7 0-32 14.3-32 32s14.3 32 32 32l384 0c17.7 0 32-14.3 32-32zM0 448c0 17.7 14.3 32 32 32l384 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 416c-17.7 0-32 14.3-32 32zM352 320c0-17.7-14.3-32-32-32l-192 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l192 0c17.7 0 32-14.3 32-32z" }, null, -1)
20910
- ])])) : F(t).alignment === F(un).Right ? (C(), A("svg", eT, [...l[2] || (l[2] = [
20915
+ ])])) : F(t).alignment === F(un).Right ? (C(), A("svg", tT, [...l[2] || (l[2] = [
20911
20916
  x("path", { d: "M448 64c0 17.7-14.3 32-32 32L192 96c-17.7 0-32-14.3-32-32s14.3-32 32-32l224 0c17.7 0 32 14.3 32 32zm0 256c0 17.7-14.3 32-32 32l-224 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l224 0c17.7 0 32 14.3 32 32zM0 192c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 224c-17.7 0-32-14.3-32-32zM448 448c0 17.7-14.3 32-32 32L32 480c-17.7 0-32-14.3-32-32s14.3-32 32-32l384 0c17.7 0 32 14.3 32 32z" }, null, -1)
20912
- ])])) : (C(), A("svg", tT, [...l[3] || (l[3] = [
20917
+ ])])) : (C(), A("svg", nT, [...l[3] || (l[3] = [
20913
20918
  x("path", { d: "M448 64c0-17.7-14.3-32-32-32L32 32C14.3 32 0 46.3 0 64S14.3 96 32 96l384 0c17.7 0 32-14.3 32-32zm0 256c0-17.7-14.3-32-32-32L32 288c-17.7 0-32 14.3-32 32s14.3 32 32 32l384 0c17.7 0 32-14.3 32-32zM0 192c0 17.7 14.3 32 32 32l384 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 160c-17.7 0-32 14.3-32 32zM448 448c0-17.7-14.3-32-32-32L32 416c-17.7 0-32 14.3-32 32s14.3 32 32 32l384 0c17.7 0 32-14.3 32-32z" }, null, -1)
20914
20919
  ])]))
20915
20920
  ]),
@@ -20942,29 +20947,29 @@ const _t = /* @__PURE__ */ Oo(WC, [["render", UC]]), KC = { class: "wov-menu-but
20942
20947
  }, 8, ["class", "onClick"])) : j("", !0);
20943
20948
  }
20944
20949
  });
20945
- function nT(n, e) {
20950
+ function oT(n, e) {
20946
20951
  return Vh() ? (Wh(n, e), !0) : !1;
20947
20952
  }
20948
- const oT = typeof window < "u" && typeof document < "u";
20953
+ const rT = typeof window < "u" && typeof document < "u";
20949
20954
  typeof WorkerGlobalScope < "u" && globalThis instanceof WorkerGlobalScope;
20950
- const rT = Object.prototype.toString, sT = (n) => rT.call(n) === "[object Object]", Ps = () => {
20955
+ const sT = Object.prototype.toString, iT = (n) => sT.call(n) === "[object Object]", Ps = () => {
20951
20956
  };
20952
20957
  function Hs(n) {
20953
20958
  return Array.isArray(n) ? n : [n];
20954
20959
  }
20955
- function iT(n) {
20960
+ function lT(n) {
20956
20961
  return Cc();
20957
20962
  }
20958
- function lT(n, e = !0, t) {
20959
- iT() ? kt(n, t) : e ? n() : Gn(n);
20963
+ function aT(n, e = !0, t) {
20964
+ lT() ? kt(n, t) : e ? n() : Gn(n);
20960
20965
  }
20961
- function aT(n, e, t) {
20966
+ function cT(n, e, t) {
20962
20967
  return pe(n, e, {
20963
20968
  ...t,
20964
20969
  immediate: !0
20965
20970
  });
20966
20971
  }
20967
- const Tl = oT ? window : void 0;
20972
+ const Tl = rT ? window : void 0;
20968
20973
  function $t(n) {
20969
20974
  var e;
20970
20975
  const t = st(n);
@@ -20975,7 +20980,7 @@ function ga(...n) {
20975
20980
  const o = Hs(st(n[0])).filter((r) => r != null);
20976
20981
  return o.every((r) => typeof r != "string") ? o : void 0;
20977
20982
  });
20978
- return aT(() => {
20983
+ return cT(() => {
20979
20984
  var o, r;
20980
20985
  return [
20981
20986
  (o = (r = t.value) === null || r === void 0 ? void 0 : r.map((s) => $t(s))) !== null && o !== void 0 ? o : [Tl].filter((s) => s != null),
@@ -20985,13 +20990,13 @@ function ga(...n) {
20985
20990
  ];
20986
20991
  }, ([o, r, s, i], l, a) => {
20987
20992
  if (!(o != null && o.length) || !(r != null && r.length) || !(s != null && s.length)) return;
20988
- const c = sT(i) ? { ...i } : i, u = o.flatMap((d) => r.flatMap((f) => s.map((h) => e(d, f, h, c))));
20993
+ const c = iT(i) ? { ...i } : i, u = o.flatMap((d) => r.flatMap((f) => s.map((h) => e(d, f, h, c))));
20989
20994
  a(() => {
20990
20995
  u.forEach((d) => d());
20991
20996
  });
20992
20997
  }, { flush: "post" });
20993
20998
  }
20994
- function cT(n, e, t = {}) {
20999
+ function uT(n, e, t = {}) {
20995
21000
  const { window: o = Tl, ignore: r = [], capture: s = !0, detectIframe: i = !1, controls: l = !1 } = t;
20996
21001
  if (!o) return l ? {
20997
21002
  stop: Ps,
@@ -21057,21 +21062,21 @@ function cT(n, e, t = {}) {
21057
21062
  } : m;
21058
21063
  }
21059
21064
  // @__NO_SIDE_EFFECTS__
21060
- function uT() {
21065
+ function dT() {
21061
21066
  const n = Ae(!1), e = Cc();
21062
21067
  return e && kt(() => {
21063
21068
  n.value = !0;
21064
21069
  }, e), n;
21065
21070
  }
21066
21071
  // @__NO_SIDE_EFFECTS__
21067
- function dT(n) {
21068
- const e = /* @__PURE__ */ uT();
21072
+ function fT(n) {
21073
+ const e = /* @__PURE__ */ dT();
21069
21074
  return O(() => (e.value, !!n()));
21070
21075
  }
21071
- function fT(n, e, t = {}) {
21076
+ function hT(n, e, t = {}) {
21072
21077
  const { window: o = Tl, ...r } = t;
21073
21078
  let s;
21074
- const i = /* @__PURE__ */ dT(() => o && "ResizeObserver" in o), l = () => {
21079
+ const i = /* @__PURE__ */ fT(() => o && "ResizeObserver" in o), l = () => {
21075
21080
  s && (s.disconnect(), s = void 0);
21076
21081
  }, a = pe(O(() => {
21077
21082
  const u = st(n);
@@ -21087,7 +21092,7 @@ function fT(n, e, t = {}) {
21087
21092
  }), c = () => {
21088
21093
  l(), a();
21089
21094
  };
21090
- return nT(c), {
21095
+ return oT(c), {
21091
21096
  isSupported: i,
21092
21097
  stop: c
21093
21098
  };
@@ -21099,7 +21104,7 @@ function r0(n, e = {
21099
21104
  const { window: o = Tl, box: r = "content-box" } = t, s = O(() => {
21100
21105
  var d;
21101
21106
  return (d = $t(n)) === null || d === void 0 || (d = d.namespaceURI) === null || d === void 0 ? void 0 : d.includes("svg");
21102
- }), i = Ae(e.width), l = Ae(e.height), { stop: a } = fT(n, ([d]) => {
21107
+ }), i = Ae(e.width), l = Ae(e.height), { stop: a } = hT(n, ([d]) => {
21103
21108
  const f = r === "border-box" ? d.borderBoxSize : r === "content-box" ? d.contentBoxSize : d.devicePixelContentBoxSize;
21104
21109
  if (o && s.value) {
21105
21110
  const h = $t(n);
@@ -21113,7 +21118,7 @@ function r0(n, e = {
21113
21118
  } else
21114
21119
  i.value = d.contentRect.width, l.value = d.contentRect.height;
21115
21120
  }, t);
21116
- lT(() => {
21121
+ aT(() => {
21117
21122
  const d = $t(n);
21118
21123
  d && (i.value = "offsetWidth" in d ? d.offsetWidth : e.width, l.value = "offsetHeight" in d ? d.offsetHeight : e.height);
21119
21124
  });
@@ -21129,7 +21134,7 @@ function r0(n, e = {
21129
21134
  stop: u
21130
21135
  };
21131
21136
  }
21132
- function hT() {
21137
+ function pT() {
21133
21138
  const n = ge(Ue);
21134
21139
  if (!n)
21135
21140
  throw new Error("useFonts must be used within a WovenCanvas component");
@@ -21138,13 +21143,13 @@ function hT() {
21138
21143
  return e ? e.fonts.filter((t) => t.selectable) : [];
21139
21144
  });
21140
21145
  }
21141
- const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-label" }, gT = { class: "wov-font-list" }, yT = ["onClick"], vT = ["src", "alt"], ph = /* @__PURE__ */ q({
21146
+ const mT = { class: "wov-font-family-button" }, gT = { class: "wov-font-family-label" }, yT = { class: "wov-font-list" }, vT = ["onClick"], wT = ["src", "alt"], ph = /* @__PURE__ */ q({
21142
21147
  __name: "TextFontFamilyButton",
21143
21148
  props: {
21144
21149
  entityIds: {}
21145
21150
  },
21146
21151
  setup(n) {
21147
- const e = n, { state: t, commands: o } = nn(() => e.entityIds), r = hT(), s = O(() => r.value.map((u) => ({
21152
+ const e = n, { state: t, commands: o } = nn(() => e.entityIds), r = pT(), s = O(() => r.value.map((u) => ({
21148
21153
  name: u.name,
21149
21154
  displayName: u.displayName,
21150
21155
  previewImage: u.previewImage
@@ -21165,8 +21170,8 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21165
21170
  title: "Font Family"
21166
21171
  }, {
21167
21172
  button: se(() => [
21168
- x("div", pT, [
21169
- x("span", mT, _e(l.value), 1),
21173
+ x("div", mT, [
21174
+ x("span", gT, _e(l.value), 1),
21170
21175
  Z(_t, { class: "wov-chevron-down" })
21171
21176
  ])
21172
21177
  ]),
@@ -21177,7 +21182,7 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21177
21182
  onClick: d[0] || (d[0] = ut(() => {
21178
21183
  }, ["stop"]))
21179
21184
  }, [
21180
- x("div", gT, [
21185
+ x("div", yT, [
21181
21186
  (C(!0), A(ie, null, Se(s.value, (f) => (C(), A("div", {
21182
21187
  key: f.name,
21183
21188
  class: Te(["wov-font-item", { active: i.value === f.name }]),
@@ -21190,120 +21195,116 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21190
21195
  alt: f.name,
21191
21196
  loading: "lazy",
21192
21197
  decoding: "async"
21193
- }, null, 8, vT)) : (C(), A("span", {
21198
+ }, null, 8, wT)) : (C(), A("span", {
21194
21199
  key: 1,
21195
21200
  class: "wov-font-name",
21196
21201
  style: ve({ fontFamily: f.name })
21197
21202
  }, _e(f.displayName), 5))
21198
- ], 10, yT))), 128))
21203
+ ], 10, vT))), 128))
21199
21204
  ])
21200
21205
  ], 32)
21201
21206
  ]),
21202
21207
  _: 1
21203
21208
  })) : j("", !0);
21204
21209
  }
21205
- }), wT = { class: "wov-font-size-button" }, kT = { class: "wov-font-size-label" }, bT = ["onClick"], xT = {
21210
+ }), kT = { class: "wov-font-size-button" }, bT = { class: "wov-font-size-label" }, xT = ["onClick"], ST = {
21206
21211
  key: 0,
21207
21212
  class: "wov-check-icon",
21208
21213
  xmlns: "http://www.w3.org/2000/svg",
21209
21214
  viewBox: "0 0 448 512",
21210
21215
  fill: "currentColor"
21211
- }, ST = { class: "wov-input-container" }, CT = ["value"], MT = { class: "wov-size-stepper" }, TT = 1, mh = /* @__PURE__ */ q({
21216
+ }, CT = { class: "wov-input-container" }, MT = ["value"], TT = { class: "wov-size-stepper" }, ET = 1, mh = /* @__PURE__ */ q({
21212
21217
  __name: "TextFontSizeButton",
21213
21218
  props: {
21214
- entityIds: {}
21219
+ entityIds: {},
21220
+ sizeOptions: { default: () => ZM }
21215
21221
  },
21216
21222
  setup(n) {
21217
- const e = n, { state: t, commands: o } = nn(() => e.entityIds), r = B(null), s = [
21218
- { label: "Small", value: 16, displayValue: 10 },
21219
- { label: "Medium", value: 24, displayValue: 12 },
21220
- { label: "Large", value: 40, displayValue: 16 },
21221
- { label: "Huge", value: 96, displayValue: 20 }
21222
- ], i = O(() => t.fontSize), l = O(() => {
21223
- const p = i.value;
21224
- if (p === null) return "Mixed";
21225
- const m = s.find((g) => g.value === p);
21226
- return m ? m.label : `${+p.toFixed(1)} px`;
21227
- }), a = O(() => {
21228
- const p = i.value;
21229
- return p === null ? "" : String(+p.toFixed(1));
21223
+ const e = n, { state: t, commands: o } = nn(() => e.entityIds), r = B(null), s = O(() => t.fontSize), i = O(() => {
21224
+ const h = s.value;
21225
+ if (h === null) return "Mixed";
21226
+ const p = e.sizeOptions.find((m) => m.value === h);
21227
+ return p ? p.label : `${+h.toFixed(1)} px`;
21228
+ }), l = O(() => {
21229
+ const h = s.value;
21230
+ return h === null ? "" : String(+h.toFixed(1));
21230
21231
  });
21231
- function c(p) {
21232
- o.setFontSize(p);
21232
+ function a(h) {
21233
+ o.setFontSize(h);
21233
21234
  }
21234
- function u(p) {
21235
- const m = p.target, g = Number.parseFloat(m.value);
21236
- if (Number.isNaN(g) || g <= 0) {
21237
- m.value = a.value;
21235
+ function c(h) {
21236
+ const p = h.target, m = Number.parseFloat(p.value);
21237
+ if (Number.isNaN(m) || m <= 0) {
21238
+ p.value = l.value;
21238
21239
  return;
21239
21240
  }
21240
- c(g);
21241
+ a(m);
21241
21242
  }
21242
- function d(p) {
21243
- var k;
21244
- const m = Number.parseFloat(((k = r.value) == null ? void 0 : k.value) ?? ""), g = Number.isNaN(m) ? i.value : m;
21245
- if (g === null) return;
21246
- const y = Math.max(+(g + p).toFixed(1), TT);
21247
- r.value && (r.value.value = String(y)), c(y);
21243
+ function u(h) {
21244
+ var y;
21245
+ const p = Number.parseFloat(((y = r.value) == null ? void 0 : y.value) ?? ""), m = Number.isNaN(p) ? s.value : p;
21246
+ if (m === null) return;
21247
+ const g = Math.max(+(m + h).toFixed(1), ET);
21248
+ r.value && (r.value.value = String(g)), a(g);
21248
21249
  }
21249
- function f(p) {
21250
- p.key === "Enter" ? p.target.blur() : p.key === "ArrowUp" ? (p.preventDefault(), d(1)) : p.key === "ArrowDown" && (p.preventDefault(), d(-1));
21250
+ function d(h) {
21251
+ h.key === "Enter" ? h.target.blur() : h.key === "ArrowUp" ? (h.preventDefault(), u(1)) : h.key === "ArrowDown" && (h.preventDefault(), u(-1));
21251
21252
  }
21252
- function h(p) {
21253
- p.stopPropagation();
21253
+ function f(h) {
21254
+ h.stopPropagation();
21254
21255
  }
21255
- return (p, m) => F(t).showTextMenuButtons ? (C(), ee(bt, {
21256
+ return (h, p) => F(t).showTextMenuButtons ? (C(), ee(bt, {
21256
21257
  key: 0,
21257
21258
  title: "Font Size"
21258
21259
  }, {
21259
21260
  button: se(() => [
21260
- x("div", wT, [
21261
- x("span", kT, _e(l.value), 1),
21261
+ x("div", kT, [
21262
+ x("span", bT, _e(i.value), 1),
21262
21263
  Z(_t, { class: "wov-chevron-down" })
21263
21264
  ])
21264
21265
  ]),
21265
21266
  dropdown: se(() => [
21266
21267
  x("div", {
21267
21268
  class: "wov-font-size-menu",
21268
- onWheel: h,
21269
- onClick: m[4] || (m[4] = ut(() => {
21269
+ onWheel: f,
21270
+ onClick: p[4] || (p[4] = ut(() => {
21270
21271
  }, ["stop"])),
21271
- onKeydown: m[5] || (m[5] = ut(() => {
21272
+ onKeydown: p[5] || (p[5] = ut(() => {
21272
21273
  }, ["stop"]))
21273
21274
  }, [
21274
- (C(), A(ie, null, Se(s, (g) => x("div", {
21275
- key: g.value,
21276
- class: Te(["wov-font-size-option", { active: i.value === g.value }]),
21277
- onClick: (y) => c(g.value)
21275
+ (C(!0), A(ie, null, Se(n.sizeOptions, (m) => (C(), A("div", {
21276
+ key: m.value,
21277
+ class: Te(["wov-font-size-option", { active: s.value === m.value }]),
21278
+ onClick: (g) => a(m.value)
21278
21279
  }, [
21279
- i.value === g.value ? (C(), A("svg", xT, [...m[6] || (m[6] = [
21280
+ s.value === m.value ? (C(), A("svg", ST, [...p[6] || (p[6] = [
21280
21281
  x("path", { d: "M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z" }, null, -1)
21281
21282
  ])])) : j("", !0),
21282
21283
  x("span", {
21283
21284
  class: "wov-option-label",
21284
- style: ve({ fontSize: `${g.displayValue}px` })
21285
- }, _e(g.label), 5)
21286
- ], 10, bT)), 64)),
21287
- m[10] || (m[10] = x("div", { class: "wov-separator" }, null, -1)),
21288
- x("div", ST, [
21285
+ style: ve({ fontSize: `${m.displayValue}px` })
21286
+ }, _e(m.label), 5)
21287
+ ], 10, xT))), 128)),
21288
+ p[10] || (p[10] = x("div", { class: "wov-separator" }, null, -1)),
21289
+ x("div", CT, [
21289
21290
  x("input", {
21290
21291
  ref_key: "inputRef",
21291
21292
  ref: r,
21292
21293
  class: "wov-custom-input",
21293
- value: a.value,
21294
- onChange: u,
21295
- onKeydown: f,
21294
+ value: l.value,
21295
+ onChange: c,
21296
+ onKeydown: d,
21296
21297
  placeholder: "Custom size"
21297
- }, null, 40, CT),
21298
- m[9] || (m[9] = x("span", { class: "wov-px-suffix" }, "px", -1)),
21299
- x("div", MT, [
21298
+ }, null, 40, MT),
21299
+ p[9] || (p[9] = x("span", { class: "wov-px-suffix" }, "px", -1)),
21300
+ x("div", TT, [
21300
21301
  x("button", {
21301
21302
  class: "wov-size-stepper-button",
21302
21303
  title: "Increase size",
21303
- onMousedown: m[0] || (m[0] = ut(() => {
21304
+ onMousedown: p[0] || (p[0] = ut(() => {
21304
21305
  }, ["prevent"])),
21305
- onClick: m[1] || (m[1] = (g) => d(1))
21306
- }, [...m[7] || (m[7] = [
21306
+ onClick: p[1] || (p[1] = (m) => u(1))
21307
+ }, [...p[7] || (p[7] = [
21307
21308
  x("svg", {
21308
21309
  class: "wov-size-stepper-icon up",
21309
21310
  xmlns: "http://www.w3.org/2000/svg",
@@ -21316,10 +21317,10 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21316
21317
  x("button", {
21317
21318
  class: "wov-size-stepper-button",
21318
21319
  title: "Decrease size",
21319
- onMousedown: m[2] || (m[2] = ut(() => {
21320
+ onMousedown: p[2] || (p[2] = ut(() => {
21320
21321
  }, ["prevent"])),
21321
- onClick: m[3] || (m[3] = (g) => d(-1))
21322
- }, [...m[8] || (m[8] = [
21322
+ onClick: p[3] || (p[3] = (m) => u(-1))
21323
+ }, [...p[8] || (p[8] = [
21323
21324
  x("svg", {
21324
21325
  class: "wov-size-stepper-icon",
21325
21326
  xmlns: "http://www.w3.org/2000/svg",
@@ -21386,7 +21387,7 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21386
21387
  _: 1
21387
21388
  }, 8, ["class", "onClick"])) : j("", !0);
21388
21389
  }
21389
- }), ET = { class: "wov-link-input-container" }, AT = ["onKeydown"], vh = /* @__PURE__ */ q({
21390
+ }), AT = { class: "wov-link-input-container" }, IT = ["onKeydown"], vh = /* @__PURE__ */ q({
21390
21391
  __name: "TextLinkButton",
21391
21392
  props: {
21392
21393
  entityIds: {}
@@ -21453,7 +21454,7 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21453
21454
  onKeydown: g[2] || (g[2] = ut(() => {
21454
21455
  }, ["stop"]))
21455
21456
  }, [
21456
- x("div", ET, [
21457
+ x("div", AT, [
21457
21458
  jh(x("input", {
21458
21459
  ref_key: "inputRef",
21459
21460
  ref: i,
@@ -21464,7 +21465,7 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21464
21465
  td(ut(f, ["prevent"]), ["enter"]),
21465
21466
  g[1] || (g[1] = td(ut((y) => r.value = !1, ["prevent"]), ["esc"]))
21466
21467
  ]
21467
- }, null, 40, AT), [
21468
+ }, null, 40, IT), [
21468
21469
  [Uh, s.value]
21469
21470
  ]),
21470
21471
  s.value || F(t).linkHref ? (C(), A("button", {
@@ -21499,7 +21500,7 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21499
21500
  ], 8, ["to"])) : j("", !0)
21500
21501
  ], 64));
21501
21502
  }
21502
- }), IT = { class: "wov-text-color-button" }, OT = { class: "wov-text-icon-container" }, wh = /* @__PURE__ */ q({
21503
+ }), OT = { class: "wov-text-color-button" }, _T = { class: "wov-text-icon-container" }, wh = /* @__PURE__ */ q({
21503
21504
  __name: "TextColorButton",
21504
21505
  props: {
21505
21506
  entityIds: {}
@@ -21514,8 +21515,8 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21514
21515
  title: "Text Color"
21515
21516
  }, {
21516
21517
  button: se(() => [
21517
- x("div", IT, [
21518
- x("div", OT, [
21518
+ x("div", OT, [
21519
+ x("div", _T, [
21519
21520
  a[0] || (a[0] = x("svg", {
21520
21521
  xmlns: "http://www.w3.org/2000/svg",
21521
21522
  viewBox: "0 0 640 640",
@@ -21542,7 +21543,7 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21542
21543
  _: 1
21543
21544
  })) : j("", !0);
21544
21545
  }
21545
- }), _T = {
21546
+ }), DT = {
21546
21547
  key: 0,
21547
21548
  xmlns: "http://www.w3.org/2000/svg",
21548
21549
  width: "24",
@@ -21554,7 +21555,7 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21554
21555
  "stroke-linecap": "round",
21555
21556
  "stroke-linejoin": "round",
21556
21557
  class: "lucide lucide-align-vertical-justify-start-icon lucide-align-vertical-justify-start"
21557
- }, DT = {
21558
+ }, NT = {
21558
21559
  key: 1,
21559
21560
  xmlns: "http://www.w3.org/2000/svg",
21560
21561
  width: "24",
@@ -21566,7 +21567,7 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21566
21567
  "stroke-linecap": "round",
21567
21568
  "stroke-linejoin": "round",
21568
21569
  class: "lucide lucide-align-vertical-justify-center-icon lucide-align-vertical-justify-center"
21569
- }, NT = {
21570
+ }, RT = {
21570
21571
  key: 2,
21571
21572
  xmlns: "http://www.w3.org/2000/svg",
21572
21573
  width: "24",
@@ -21610,7 +21611,7 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21610
21611
  onClick: l
21611
21612
  }, {
21612
21613
  default: se(() => [
21613
- i.value === F(Ze).Top || i.value === null ? (C(), A("svg", _T, [...c[0] || (c[0] = [
21614
+ i.value === F(Ze).Top || i.value === null ? (C(), A("svg", DT, [...c[0] || (c[0] = [
21614
21615
  x("rect", {
21615
21616
  width: "14",
21616
21617
  height: "6",
@@ -21626,7 +21627,7 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21626
21627
  rx: "2"
21627
21628
  }, null, -1),
21628
21629
  x("path", { d: "M2 2h20" }, null, -1)
21629
- ])])) : i.value === F(Ze).Center ? (C(), A("svg", DT, [...c[1] || (c[1] = [
21630
+ ])])) : i.value === F(Ze).Center ? (C(), A("svg", NT, [...c[1] || (c[1] = [
21630
21631
  x("rect", {
21631
21632
  width: "14",
21632
21633
  height: "6",
@@ -21642,7 +21643,7 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21642
21643
  rx: "2"
21643
21644
  }, null, -1),
21644
21645
  x("path", { d: "M2 12h20" }, null, -1)
21645
- ])])) : (C(), A("svg", NT, [...c[2] || (c[2] = [
21646
+ ])])) : (C(), A("svg", RT, [...c[2] || (c[2] = [
21646
21647
  x("rect", {
21647
21648
  width: "14",
21648
21649
  height: "6",
@@ -21663,7 +21664,7 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21663
21664
  _: 1
21664
21665
  })) : j("", !0);
21665
21666
  }
21666
- }), RT = { class: "wov-text-group-button" }, PT = { class: "wov-text-group-dropdown" }, LT = { class: "wov-text-group-row wov-text-group-row-full" }, $T = { class: "wov-text-group-row" }, BT = /* @__PURE__ */ q({
21667
+ }), PT = { class: "wov-text-group-button" }, LT = { class: "wov-text-group-dropdown" }, $T = { class: "wov-text-group-row wov-text-group-row-full" }, BT = { class: "wov-text-group-row" }, zT = /* @__PURE__ */ q({
21667
21668
  __name: "TextButtonGroup",
21668
21669
  props: {
21669
21670
  entityIds: {},
@@ -21678,7 +21679,7 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21678
21679
  placement: "top"
21679
21680
  }, {
21680
21681
  button: se(() => [
21681
- x("div", RT, [
21682
+ x("div", PT, [
21682
21683
  a[0] || (a[0] = x("svg", {
21683
21684
  xmlns: "http://www.w3.org/2000/svg",
21684
21685
  viewBox: "0 0 640 640",
@@ -21691,13 +21692,13 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21691
21692
  ])
21692
21693
  ]),
21693
21694
  dropdown: se(() => [
21694
- x("div", PT, [
21695
- x("div", LT, [
21695
+ x("div", LT, [
21696
+ x("div", $T, [
21696
21697
  Z(ph, { entityIds: n.entityIds }, null, 8, ["entityIds"]),
21697
21698
  a[1] || (a[1] = x("div", { class: "wov-text-group-spacer" }, null, -1)),
21698
21699
  Z(mh, { entityIds: n.entityIds }, null, 8, ["entityIds"])
21699
21700
  ]),
21700
- x("div", $T, [
21701
+ x("div", BT, [
21701
21702
  Z(hh, { entityIds: n.entityIds }, null, 8, ["entityIds"]),
21702
21703
  Z(gh, { entityIds: n.entityIds }, null, 8, ["entityIds"]),
21703
21704
  Z(yh, { entityIds: n.entityIds }, null, 8, ["entityIds"]),
@@ -21737,7 +21738,7 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21737
21738
  ], 64))
21738
21739
  ], 64)) : j("", !0);
21739
21740
  }
21740
- }), zT = /* @__PURE__ */ q({
21741
+ }), FT = /* @__PURE__ */ q({
21741
21742
  __name: "CanvasBackground",
21742
21743
  props: {
21743
21744
  background: {}
@@ -21913,7 +21914,7 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
21913
21914
  }
21914
21915
  }, null, 512));
21915
21916
  }
21916
- }), FT = /* @__PURE__ */ q({
21917
+ }), HT = /* @__PURE__ */ q({
21917
21918
  __name: "FileDropZone",
21918
21919
  props: {
21919
21920
  maxSize: { default: 400 }
@@ -22020,7 +22021,7 @@ const pT = { class: "wov-font-family-button" }, mT = { class: "wov-font-family-l
22020
22021
  }, null, 34));
22021
22022
  }
22022
22023
  });
22023
- function HT(n, e) {
22024
+ function VT(n, e) {
22024
22025
  if (e.length === 0) return /* @__PURE__ */ new Set();
22025
22026
  const t = e[0].tag, o = n.blockDefs[t];
22026
22027
  if (!o) return /* @__PURE__ */ new Set();
@@ -22037,13 +22038,13 @@ function HT(n, e) {
22037
22038
  }
22038
22039
  return r;
22039
22040
  }
22040
- function VT(n, e) {
22041
+ function WT(n, e) {
22041
22042
  return e.length === 0 ? !1 : e.every(({ tag: t }) => {
22042
22043
  var o;
22043
22044
  return ((o = n.blockDefs[t]) == null ? void 0 : o.showOperations) ?? !0;
22044
22045
  });
22045
22046
  }
22046
- const WT = /* @__PURE__ */ q({
22047
+ const jT = /* @__PURE__ */ q({
22047
22048
  __name: "FloatingMenuBar",
22048
22049
  setup(n) {
22049
22050
  const e = Kh(), { reset: t } = no(), o = ge(tp), { selectedIds: r, commonComponents: s, showOperations: i } = o, l = /* @__PURE__ */ new Set([
@@ -22130,7 +22131,7 @@ const WT = /* @__PURE__ */ q({
22130
22131
  key: 6,
22131
22132
  entityIds: F(r)
22132
22133
  }, () => [
22133
- Z(BT, {
22134
+ Z(zT, {
22134
22135
  entityIds: F(r),
22135
22136
  showVerticalAlign: F(s).has("verticalAlign")
22136
22137
  }, null, 8, ["entityIds", "showVerticalAlign"])
@@ -22146,7 +22147,7 @@ const WT = /* @__PURE__ */ q({
22146
22147
  ], 64)) : j("", !0)
22147
22148
  ], 32));
22148
22149
  }
22149
- }), jT = { class: "wov-floating-menu-inner" }, UT = /* @__PURE__ */ q({
22150
+ }), UT = { class: "wov-floating-menu-inner" }, KT = /* @__PURE__ */ q({
22150
22151
  __name: "FloatingMenu",
22151
22152
  setup(n) {
22152
22153
  const e = ge(Ue), t = gS([le, Qi]), o = ot(Pe), r = ot(eo), s = ot(el), i = fr(), l = O(
@@ -22155,10 +22156,10 @@ const WT = /* @__PURE__ */ q({
22155
22156
  () => t.value.map((T) => ({ tag: T.block.value.tag }))
22156
22157
  ), c = O(() => {
22157
22158
  const T = e == null ? void 0 : e.getEditor();
22158
- return T ? HT(T, a.value) : /* @__PURE__ */ new Set();
22159
+ return T ? VT(T, a.value) : /* @__PURE__ */ new Set();
22159
22160
  }), u = O(() => {
22160
22161
  const T = e == null ? void 0 : e.getEditor();
22161
- return T ? VT(T, a.value) : !1;
22162
+ return T ? WT(T, a.value) : !1;
22162
22163
  });
22163
22164
  ho(tp, { selectedIds: l, commonComponents: c, showOperations: u });
22164
22165
  const d = [0, 0, 0, 0];
@@ -22262,9 +22263,9 @@ const WT = /* @__PURE__ */ q({
22262
22263
  class: "wov-floating-menu",
22263
22264
  style: ve(F(k))
22264
22265
  }, [
22265
- x("div", jT, [
22266
+ x("div", UT, [
22266
22267
  me(T.$slots, "default", {}, () => [
22267
- Z(WT)
22268
+ Z(jT)
22268
22269
  ])
22269
22270
  ])
22270
22271
  ], 4)) : j("", !0)
@@ -22272,10 +22273,10 @@ const WT = /* @__PURE__ */ q({
22272
22273
  _: 3
22273
22274
  }));
22274
22275
  }
22275
- }), KT = {
22276
+ }), qT = {
22276
22277
  key: 0,
22277
22278
  class: "wov-loading-overlay"
22278
- }, qT = { class: "wov-loading-spinner" }, JT = /* @__PURE__ */ q({
22279
+ }, JT = { class: "wov-loading-spinner" }, GT = /* @__PURE__ */ q({
22279
22280
  __name: "LoadingOverlay",
22280
22281
  props: {
22281
22282
  isLoading: { type: Boolean }
@@ -22292,14 +22293,14 @@ const WT = /* @__PURE__ */ q({
22292
22293
  o !== null && clearInterval(o);
22293
22294
  }), (r, s) => (C(), ee(Mc, { name: "wov-loading-fade" }, {
22294
22295
  default: se(() => [
22295
- n.isLoading ? (C(), A("div", KT, [
22296
- x("div", qT, _e(e.value), 1)
22296
+ n.isLoading ? (C(), A("div", qT, [
22297
+ x("div", JT, _e(e.value), 1)
22297
22298
  ])) : j("", !0)
22298
22299
  ]),
22299
22300
  _: 1
22300
22301
  }));
22301
22302
  }
22302
- }), GT = { class: "wov-action-bar" }, YT = /* @__PURE__ */ q({
22303
+ }), YT = { class: "wov-action-bar" }, XT = /* @__PURE__ */ q({
22303
22304
  __name: "ActionBar",
22304
22305
  setup(n) {
22305
22306
  const { getEditor: e } = Ce(), t = ge(Ue), o = B(!1), r = B(!1);
@@ -22322,7 +22323,7 @@ const WT = /* @__PURE__ */ q({
22322
22323
  const a = e();
22323
22324
  a == null || a.command(Xh);
22324
22325
  }
22325
- return (a, c) => (C(), A("div", GT, [
22326
+ return (a, c) => (C(), A("div", YT, [
22326
22327
  x("button", {
22327
22328
  class: "wov-action-button",
22328
22329
  onClick: s,
@@ -22438,30 +22439,30 @@ const WT = /* @__PURE__ */ q({
22438
22439
  me(h.$slots, "default")
22439
22440
  ], 34));
22440
22441
  }
22441
- }), XT = '<?xml version="1.0" encoding="UTF-8"?><svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4.35 4.75" width="20" height="20"><defs><style>.cls-1{stroke:#fff;stroke-miterlimit:10;stroke-width:.25px;}</style></defs><path class="cls-1" d="M2.39,2.88s-.04.01-.05.02c-.01,0-.02.01-.03.02,0,.01-.02.02-.03.05l-.77,1.44c-.07.13-.1.19-.14.2-.03.01-.07,0-.1-.01-.03-.02-.05-.09-.09-.23L.16.41c-.03-.13-.05-.19-.03-.23.02-.03.04-.05.08-.06.04,0,.1.02.21.08l3.59,1.94c.13.07.19.1.2.14.01.03,0,.07-.01.1-.02.03-.09.05-.23.09l-1.58.4Z"/></svg>', ZT = '<?xml version="1.0" encoding="UTF-8"?><svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4.08 4.75" width="24" height="24"><defs><style>.cls-1{fill:#fff;stroke:#000;stroke-linecap:round;stroke-linejoin:round;stroke-width:.25px;}.cls-2{fill:none;stroke:#fff;stroke-miterlimit:10;stroke-width:.51px;}</style></defs><path class="cls-1" d="M.89,2.25v.63M.89,2.25V.75c0-.21.17-.38.38-.38s.38.17.38.38M.89,2.25c0-.21-.17-.37-.38-.37s-.38.17-.38.37v.5c0,1.04.86,1.87,1.91,1.87s1.91-.84,1.91-1.87v-1.25c0-.21-.17-.38-.38-.38s-.38.17.38.38M1.66.75v1.38M1.66.75v-.25c0-.21.17-.38.38-.38s.38.17.38.38v.25M2.42.75v1.38M2.42.75c0-.21.17-.38.38-.38s.38.17.38.38v.75M3.19,1.5v.63"/><line class="cls-2" x1="2.8" y1=".77" x2="2.8" y2="2.03"/><line class="cls-2" x1="2.04" y1=".64" x2="2.04" y2="2.02"/><line class="cls-2" x1="1.27" y1=".84" x2="1.27" y2="2.29"/></svg>', QT = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M4 8v-2a2 2 0 0 1 2 -2h2" /><path d="M4 16v2a2 2 0 0 0 2 2h2" /><path d="M16 4h2a2 2 0 0 1 2 2v2" /><path d="M16 20h2a2 2 0 0 0 2 -2v-2" /><path d="M9 12l6 0" /><path d="M12 9l0 6" /></svg>', ko = {
22442
+ }), ZT = '<?xml version="1.0" encoding="UTF-8"?><svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4.35 4.75" width="20" height="20"><defs><style>.cls-1{stroke:#fff;stroke-miterlimit:10;stroke-width:.25px;}</style></defs><path class="cls-1" d="M2.39,2.88s-.04.01-.05.02c-.01,0-.02.01-.03.02,0,.01-.02.02-.03.05l-.77,1.44c-.07.13-.1.19-.14.2-.03.01-.07,0-.1-.01-.03-.02-.05-.09-.09-.23L.16.41c-.03-.13-.05-.19-.03-.23.02-.03.04-.05.08-.06.04,0,.1.02.21.08l3.59,1.94c.13.07.19.1.2.14.01.03,0,.07-.01.1-.02.03-.09.05-.23.09l-1.58.4Z"/></svg>', QT = '<?xml version="1.0" encoding="UTF-8"?><svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4.08 4.75" width="24" height="24"><defs><style>.cls-1{fill:#fff;stroke:#000;stroke-linecap:round;stroke-linejoin:round;stroke-width:.25px;}.cls-2{fill:none;stroke:#fff;stroke-miterlimit:10;stroke-width:.51px;}</style></defs><path class="cls-1" d="M.89,2.25v.63M.89,2.25V.75c0-.21.17-.38.38-.38s.38.17.38.38M.89,2.25c0-.21-.17-.37-.38-.37s-.38.17-.38.37v.5c0,1.04.86,1.87,1.91,1.87s1.91-.84,1.91-1.87v-1.25c0-.21-.17-.38-.38-.38s-.38.17.38.38M1.66.75v1.38M1.66.75v-.25c0-.21.17-.38.38-.38s.38.17.38.38v.25M2.42.75v1.38M2.42.75c0-.21.17-.38.38-.38s.38.17.38.38v.75M3.19,1.5v.63"/><line class="cls-2" x1="2.8" y1=".77" x2="2.8" y2="2.03"/><line class="cls-2" x1="2.04" y1=".64" x2="2.04" y2="2.02"/><line class="cls-2" x1="1.27" y1=".84" x2="1.27" y2="2.29"/></svg>', eE = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M4 8v-2a2 2 0 0 1 2 -2h2" /><path d="M4 16v2a2 2 0 0 0 2 2h2" /><path d="M16 4h2a2 2 0 0 1 2 2v2" /><path d="M16 20h2a2 2 0 0 0 2 -2v-2" /><path d="M9 12l6 0" /><path d="M12 9l0 6" /></svg>', ko = {
22442
22443
  Select: "select",
22443
22444
  Hand: "hand",
22444
22445
  Crosshair: "crosshair"
22445
- }, eE = {
22446
+ }, tE = {
22446
22447
  [ko.Select]: {
22447
- makeSvg: () => XT,
22448
+ makeSvg: () => ZT,
22448
22449
  hotspot: [1, 0],
22449
22450
  rotationOffset: 0
22450
22451
  },
22451
22452
  [ko.Hand]: {
22452
- makeSvg: () => ZT,
22453
+ makeSvg: () => QT,
22453
22454
  hotspot: [12, 12],
22454
22455
  rotationOffset: 0
22455
22456
  },
22456
22457
  [ko.Crosshair]: {
22457
- makeSvg: () => QT,
22458
+ makeSvg: () => eE,
22458
22459
  hotspot: [12, 12],
22459
22460
  rotationOffset: 0
22460
22461
  }
22461
- }, tE = {
22462
+ }, nE = {
22462
22463
  viewBox: "0 0 20 20",
22463
22464
  style: { "fill-rule": "evenodd", "clip-rule": "evenodd", "stroke-miterlimit": "10" }
22464
- }, nE = /* @__PURE__ */ q({
22465
+ }, oE = /* @__PURE__ */ q({
22465
22466
  __name: "SelectTool",
22466
22467
  setup(n) {
22467
22468
  const { nextEditorTick: e } = Ce(), { activeTool: t } = Mu();
@@ -22475,7 +22476,7 @@ const WT = /* @__PURE__ */ q({
22475
22476
  cursor: F(ko).Select
22476
22477
  }, {
22477
22478
  default: se(() => [
22478
- (C(), A("svg", tE, [...r[0] || (r[0] = [
22479
+ (C(), A("svg", nE, [...r[0] || (r[0] = [
22479
22480
  x("g", { transform: "matrix(4.21053,0,0,4.21053,0.842105,0)" }, [
22480
22481
  x("path", {
22481
22482
  fill: "none",
@@ -22489,7 +22490,7 @@ const WT = /* @__PURE__ */ q({
22489
22490
  _: 1
22490
22491
  }, 8, ["cursor"]));
22491
22492
  }
22492
- }), oE = /* @__PURE__ */ q({
22493
+ }), rE = /* @__PURE__ */ q({
22493
22494
  __name: "HandTool",
22494
22495
  setup(n) {
22495
22496
  return (e, t) => (C(), ee(Ht, {
@@ -22512,7 +22513,7 @@ const WT = /* @__PURE__ */ q({
22512
22513
  _: 1
22513
22514
  }, 8, ["cursor"]));
22514
22515
  }
22515
- }), rE = /* @__PURE__ */ q({
22516
+ }), sE = /* @__PURE__ */ q({
22516
22517
  __name: "StickyNoteTool",
22517
22518
  setup(n) {
22518
22519
  const e = ge(Ue), t = O(() => JSON.stringify({
@@ -22553,7 +22554,7 @@ const WT = /* @__PURE__ */ q({
22553
22554
  _: 1
22554
22555
  }, 8, ["drag-out-snapshot", "placement-snapshot"]));
22555
22556
  }
22556
- }), sE = /* @__PURE__ */ q({
22557
+ }), iE = /* @__PURE__ */ q({
22557
22558
  __name: "ShapeTool",
22558
22559
  setup(n) {
22559
22560
  const e = ge(Ue), t = O(() => JSON.stringify({
@@ -22607,7 +22608,7 @@ const WT = /* @__PURE__ */ q({
22607
22608
  _: 1
22608
22609
  }, 8, ["drag-out-snapshot", "draw-snapshot"]));
22609
22610
  }
22610
- }), iE = /* @__PURE__ */ q({
22611
+ }), lE = /* @__PURE__ */ q({
22611
22612
  __name: "EraserTool",
22612
22613
  setup(n) {
22613
22614
  return (e, t) => (C(), ee(Ht, {
@@ -22626,7 +22627,7 @@ const WT = /* @__PURE__ */ q({
22626
22627
  _: 1
22627
22628
  }));
22628
22629
  }
22629
- }), lE = /* @__PURE__ */ q({
22630
+ }), aE = /* @__PURE__ */ q({
22630
22631
  __name: "PenTool",
22631
22632
  setup(n) {
22632
22633
  return (e, t) => (C(), ee(Ht, {
@@ -22654,7 +22655,7 @@ const WT = /* @__PURE__ */ q({
22654
22655
  _: 1
22655
22656
  }));
22656
22657
  }
22657
- }), aE = /* @__PURE__ */ q({
22658
+ }), cE = /* @__PURE__ */ q({
22658
22659
  __name: "TextTool",
22659
22660
  setup(n) {
22660
22661
  const e = ge(Ue), t = O(() => JSON.stringify({
@@ -22706,7 +22707,7 @@ const WT = /* @__PURE__ */ q({
22706
22707
  _: 1
22707
22708
  }, 8, ["drag-out-snapshot", "placement-snapshot"]));
22708
22709
  }
22709
- }), cE = /* @__PURE__ */ q({
22710
+ }), uE = /* @__PURE__ */ q({
22710
22711
  __name: "ElbowArrowTool",
22711
22712
  setup(n) {
22712
22713
  const e = JSON.stringify({
@@ -22744,7 +22745,7 @@ const WT = /* @__PURE__ */ q({
22744
22745
  _: 1
22745
22746
  }, 8, ["drag-out-snapshot"]));
22746
22747
  }
22747
- }), uE = /* @__PURE__ */ q({
22748
+ }), dE = /* @__PURE__ */ q({
22748
22749
  __name: "ImageTool",
22749
22750
  setup(n) {
22750
22751
  const { nextEditorTick: e } = Ce(), { show: t, hide: o } = no(), { setTool: r } = Mu(), { createImageBlock: s } = jg(), i = B(null), l = B(null);
@@ -22815,7 +22816,7 @@ const WT = /* @__PURE__ */ q({
22815
22816
  }, null, 544)
22816
22817
  ], 544));
22817
22818
  }
22818
- }), dE = { class: "wov-embed-provider-grid" }, fE = ["onClick"], hE = { class: "wov-embed-provider-icon" }, pE = {
22819
+ }), fE = { class: "wov-embed-provider-grid" }, hE = ["onClick"], pE = { class: "wov-embed-provider-icon" }, mE = {
22819
22820
  key: 0,
22820
22821
  viewBox: "0 0 24 24",
22821
22822
  fill: "none",
@@ -22823,7 +22824,7 @@ const WT = /* @__PURE__ */ q({
22823
22824
  "stroke-width": "1.5",
22824
22825
  "stroke-linecap": "round",
22825
22826
  "stroke-linejoin": "round"
22826
- }, mE = {
22827
+ }, gE = {
22827
22828
  key: 1,
22828
22829
  viewBox: "0 0 24 24",
22829
22830
  fill: "none",
@@ -22831,7 +22832,7 @@ const WT = /* @__PURE__ */ q({
22831
22832
  "stroke-width": "1.5",
22832
22833
  "stroke-linecap": "round",
22833
22834
  "stroke-linejoin": "round"
22834
- }, gE = {
22835
+ }, yE = {
22835
22836
  key: 2,
22836
22837
  viewBox: "0 0 24 24",
22837
22838
  fill: "none",
@@ -22839,7 +22840,7 @@ const WT = /* @__PURE__ */ q({
22839
22840
  "stroke-width": "1.5",
22840
22841
  "stroke-linecap": "round",
22841
22842
  "stroke-linejoin": "round"
22842
- }, yE = {
22843
+ }, vE = {
22843
22844
  key: 3,
22844
22845
  viewBox: "0 0 24 24",
22845
22846
  fill: "none",
@@ -22847,7 +22848,7 @@ const WT = /* @__PURE__ */ q({
22847
22848
  "stroke-width": "1.5",
22848
22849
  "stroke-linecap": "round",
22849
22850
  "stroke-linejoin": "round"
22850
- }, vE = {
22851
+ }, wE = {
22851
22852
  key: 4,
22852
22853
  viewBox: "0 0 24 24",
22853
22854
  fill: "none",
@@ -22855,7 +22856,7 @@ const WT = /* @__PURE__ */ q({
22855
22856
  "stroke-width": "1.5",
22856
22857
  "stroke-linecap": "round",
22857
22858
  "stroke-linejoin": "round"
22858
- }, wE = {
22859
+ }, kE = {
22859
22860
  key: 5,
22860
22861
  viewBox: "0 0 24 24",
22861
22862
  fill: "none",
@@ -22863,7 +22864,7 @@ const WT = /* @__PURE__ */ q({
22863
22864
  "stroke-width": "1.5",
22864
22865
  "stroke-linecap": "round",
22865
22866
  "stroke-linejoin": "round"
22866
- }, kE = {
22867
+ }, bE = {
22867
22868
  key: 6,
22868
22869
  viewBox: "0 0 24 24",
22869
22870
  fill: "none",
@@ -22871,16 +22872,16 @@ const WT = /* @__PURE__ */ q({
22871
22872
  "stroke-width": "1.5",
22872
22873
  "stroke-linecap": "round",
22873
22874
  "stroke-linejoin": "round"
22874
- }, bE = {
22875
+ }, xE = {
22875
22876
  key: 7,
22876
22877
  xmlns: "http://www.w3.org/2000/svg",
22877
22878
  width: "24",
22878
22879
  height: "24",
22879
22880
  viewBox: "0 0 24 24"
22880
- }, xE = { class: "wov-embed-provider-label" }, SE = { class: "wov-embed-panel-header" }, CE = { class: "wov-embed-url-form" }, ME = ["placeholder"], TE = {
22881
+ }, SE = { class: "wov-embed-provider-label" }, CE = { class: "wov-embed-panel-header" }, ME = { class: "wov-embed-url-form" }, TE = ["placeholder"], EE = {
22881
22882
  key: 0,
22882
22883
  class: "wov-embed-url-error"
22883
- }, EE = /* @__PURE__ */ q({
22884
+ }, AE = /* @__PURE__ */ q({
22884
22885
  __name: "EmbedTool",
22885
22886
  setup(n) {
22886
22887
  const { nextEditorTick: e } = Ce(), { show: t, hide: o } = no(), { setTool: r } = Mu(), s = B(null), i = B(null), l = B(null), a = B(!1), c = B(null), u = B(""), d = B(""), f = ge("containerRef"), { floatingStyles: h } = gr(s, i, {
@@ -23051,7 +23052,7 @@ const WT = /* @__PURE__ */ q({
23051
23052
  style: ve(F(h))
23052
23053
  }, [
23053
23054
  c.value ? (C(), A(ie, { key: 1 }, [
23054
- x("div", SE, [
23055
+ x("div", CE, [
23055
23056
  x("button", {
23056
23057
  class: "wov-embed-back-button",
23057
23058
  onClick: k
@@ -23069,7 +23070,7 @@ const WT = /* @__PURE__ */ q({
23069
23070
  ])]),
23070
23071
  x("span", null, _e((_ = p.find((D) => D.value === c.value)) == null ? void 0 : _.label), 1)
23071
23072
  ]),
23072
- x("div", CE, [
23073
+ x("div", ME, [
23073
23074
  jh(x("input", {
23074
23075
  ref_key: "urlInputRef",
23075
23076
  ref: l,
@@ -23078,10 +23079,10 @@ const WT = /* @__PURE__ */ q({
23078
23079
  placeholder: m.value,
23079
23080
  class: "wov-embed-url-input",
23080
23081
  onKeydown: v
23081
- }, null, 40, ME), [
23082
+ }, null, 40, TE), [
23082
23083
  [Uh, u.value]
23083
23084
  ]),
23084
- d.value ? (C(), A("div", TE, _e(d.value), 1)) : j("", !0),
23085
+ d.value ? (C(), A("div", EE, _e(d.value), 1)) : j("", !0),
23085
23086
  x("button", {
23086
23087
  class: "wov-embed-submit-button",
23087
23088
  onClick: w
@@ -23089,17 +23090,17 @@ const WT = /* @__PURE__ */ q({
23089
23090
  ])
23090
23091
  ], 64)) : (C(), A(ie, { key: 0 }, [
23091
23092
  E[10] || (E[10] = x("div", { class: "wov-embed-panel-header" }, "Add embed", -1)),
23092
- x("div", dE, [
23093
+ x("div", fE, [
23093
23094
  (C(), A(ie, null, Se(p, (D) => x("button", {
23094
23095
  key: D.value,
23095
23096
  class: "wov-embed-provider-button",
23096
23097
  onClick: (N) => y(D.value)
23097
23098
  }, [
23098
- x("span", hE, [
23099
- D.icon === "youtube" ? (C(), A("svg", pE, [...E[2] || (E[2] = [
23099
+ x("span", pE, [
23100
+ D.icon === "youtube" ? (C(), A("svg", mE, [...E[2] || (E[2] = [
23100
23101
  x("path", { d: "M2.5 17V7a2 2 0 0 1 2-2h15a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2h-15a2 2 0 0 1-2-2z" }, null, -1),
23101
23102
  x("path", { d: "m10 15 5-3-5-3z" }, null, -1)
23102
- ])])) : D.icon === "spotify" ? (C(), A("svg", mE, [...E[3] || (E[3] = [
23103
+ ])])) : D.icon === "spotify" ? (C(), A("svg", gE, [...E[3] || (E[3] = [
23103
23104
  x("circle", {
23104
23105
  cx: "12",
23105
23106
  cy: "12",
@@ -23108,14 +23109,14 @@ const WT = /* @__PURE__ */ q({
23108
23109
  x("path", { d: "M8 11.973c2.5-1.473 5.5-.973 7.5.527" }, null, -1),
23109
23110
  x("path", { d: "M9 15c1.5-1 4-.5 5.5.5" }, null, -1),
23110
23111
  x("path", { d: "M7 9c3-2 7-1 10 1" }, null, -1)
23111
- ])])) : D.icon === "map" ? (C(), A("svg", gE, [...E[4] || (E[4] = [
23112
+ ])])) : D.icon === "map" ? (C(), A("svg", yE, [...E[4] || (E[4] = [
23112
23113
  x("path", { d: "M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7z" }, null, -1),
23113
23114
  x("circle", {
23114
23115
  cx: "12",
23115
23116
  cy: "9",
23116
23117
  r: "2.5"
23117
23118
  }, null, -1)
23118
- ])])) : D.icon === "calendar" ? (C(), A("svg", yE, [...E[5] || (E[5] = [
23119
+ ])])) : D.icon === "calendar" ? (C(), A("svg", vE, [...E[5] || (E[5] = [
23119
23120
  x("rect", {
23120
23121
  x: "3",
23121
23122
  y: "4",
@@ -23142,7 +23143,7 @@ const WT = /* @__PURE__ */ q({
23142
23143
  x2: "21",
23143
23144
  y2: "10"
23144
23145
  }, null, -1)
23145
- ])])) : D.icon === "slides" ? (C(), A("svg", vE, [...E[6] || (E[6] = [
23146
+ ])])) : D.icon === "slides" ? (C(), A("svg", wE, [...E[6] || (E[6] = [
23146
23147
  x("rect", {
23147
23148
  x: "2",
23148
23149
  y: "3",
@@ -23163,24 +23164,24 @@ const WT = /* @__PURE__ */ q({
23163
23164
  x2: "12",
23164
23165
  y2: "21"
23165
23166
  }, null, -1)
23166
- ])])) : D.icon === "figma" ? (C(), A("svg", wE, [...E[7] || (E[7] = [
23167
+ ])])) : D.icon === "figma" ? (C(), A("svg", kE, [...E[7] || (E[7] = [
23167
23168
  x("path", { d: "M5 5.5A3.5 3.5 0 0 1 8.5 2H12v7H8.5A3.5 3.5 0 0 1 5 5.5z" }, null, -1),
23168
23169
  x("path", { d: "M12 2h3.5a3.5 3.5 0 1 1 0 7H12V2z" }, null, -1),
23169
23170
  x("path", { d: "M12 12.5a3.5 3.5 0 1 1 7 0 3.5 3.5 0 1 1-7 0z" }, null, -1),
23170
23171
  x("path", { d: "M5 19.5A3.5 3.5 0 0 1 8.5 16H12v3.5a3.5 3.5 0 1 1-7 0z" }, null, -1),
23171
23172
  x("path", { d: "M5 12.5A3.5 3.5 0 0 1 8.5 9H12v7H8.5A3.5 3.5 0 0 1 5 12.5z" }, null, -1)
23172
- ])])) : D.icon === "gist" ? (C(), A("svg", kE, [...E[8] || (E[8] = [
23173
+ ])])) : D.icon === "gist" ? (C(), A("svg", bE, [...E[8] || (E[8] = [
23173
23174
  x("polyline", { points: "16 18 22 12 16 6" }, null, -1),
23174
23175
  x("polyline", { points: "8 6 2 12 8 18" }, null, -1)
23175
- ])])) : D.icon === "tldraw" ? (C(), A("svg", bE, [...E[9] || (E[9] = [
23176
+ ])])) : D.icon === "tldraw" ? (C(), A("svg", xE, [...E[9] || (E[9] = [
23176
23177
  x("path", {
23177
23178
  fill: "currentColor",
23178
23179
  d: "M21.474 0H2.526C1.131 0 0 1.18 0 2.637v18.726C0 22.819 1.131 24 2.526 24h18.948C22.869 24 24 22.82 24 21.363V2.637C24 1.181 22.869 0 21.474 0m-11.01 5.388q.595-.607 1.474-.607q.854 0 1.448.607q.595.606.595 1.476c0 .87-.198 1.072-.595 1.476a1.95 1.95 0 0 1-1.448.607q-.879 0-1.474-.607q-.594-.606-.594-1.476c0-.87.198-1.072.594-1.476m3.13 11.49a4.9 4.9 0 0 1-2.018 2.136q-.724.422-1.19-.026q-.438-.422.26-1.002q.387-.29.646-.738q.258-.449.336-.923q.026-.21-.181-.21q-.517-.027-1.06-.581t-.543-1.37q0-.87.594-1.477a2.02 2.02 0 0 1 1.5-.633q.828 0 1.448.633q.62.605.724 1.37q.207 1.424-.517 2.822z"
23179
23180
  }, null, -1)
23180
23181
  ])])) : j("", !0)
23181
23182
  ]),
23182
- x("span", xE, _e(D.label), 1)
23183
- ], 8, fE)), 64))
23183
+ x("span", SE, _e(D.label), 1)
23184
+ ], 8, hE)), 64))
23184
23185
  ])
23185
23186
  ], 64))
23186
23187
  ], 4)) : j("", !0)
@@ -23188,7 +23189,7 @@ const WT = /* @__PURE__ */ q({
23188
23189
  ], 64);
23189
23190
  };
23190
23191
  }
23191
- }), AE = "https://storage.googleapis.com/download/storage/v1/b/zine-maker-public/o/tapes%2F7e3b7dde-927d-4b09-aeb4-d49eac36d4ea.png?generation=1715183194653465&alt=media", IE = /* @__PURE__ */ q({
23192
+ }), IE = "https://storage.googleapis.com/download/storage/v1/b/zine-maker-public/o/tapes%2F7e3b7dde-927d-4b09-aeb4-d49eac36d4ea.png?generation=1715183194653465&alt=media", OE = /* @__PURE__ */ q({
23192
23193
  __name: "TapeTool",
23193
23194
  setup(n) {
23194
23195
  const e = JSON.stringify({
@@ -23200,7 +23201,7 @@ const WT = /* @__PURE__ */ q({
23200
23201
  thickness: 30
23201
23202
  },
23202
23203
  asset: {
23203
- identifier: AE,
23204
+ identifier: IE,
23204
23205
  uploadState: "complete"
23205
23206
  }
23206
23207
  });
@@ -23258,7 +23259,7 @@ const WT = /* @__PURE__ */ q({
23258
23259
  _: 1
23259
23260
  }, 8, ["drag-out-snapshot"]));
23260
23261
  }
23261
- }), OE = /* @__PURE__ */ q({
23262
+ }), _E = /* @__PURE__ */ q({
23262
23263
  __name: "FrameTool",
23263
23264
  setup(n) {
23264
23265
  const e = O(() => JSON.stringify({
@@ -23294,22 +23295,22 @@ const WT = /* @__PURE__ */ q({
23294
23295
  _: 1
23295
23296
  }, 8, ["drag-out-snapshot", "draw-snapshot"]));
23296
23297
  }
23297
- }), _E = { class: "wov-toolbar-container" }, DE = /* @__PURE__ */ q({
23298
+ }), DE = { class: "wov-toolbar-container" }, NE = /* @__PURE__ */ q({
23298
23299
  __name: "Toolbar",
23299
23300
  setup(n) {
23300
23301
  const e = Kh(), { reset: t } = no(), { nextEditorTick: o } = Ce(), r = B(null), s = B(null), i = ot(Bt), l = O(() => i.value.activeToolName), a = [
23301
- nE,
23302
23302
  oE,
23303
- aE,
23303
+ rE,
23304
+ cE,
23305
+ dE,
23306
+ AE,
23307
+ iE,
23308
+ _E,
23304
23309
  uE,
23305
- EE,
23306
23310
  sE,
23307
23311
  OE,
23308
- cE,
23309
- rE,
23310
- IE,
23311
- lE,
23312
- iE
23312
+ aE,
23313
+ lE
23313
23314
  ], c = ge("containerRef"), u = B(null), d = B(!1), f = B(null), h = B(null), p = B(1 / 0), m = B(0), g = B([]), y = B(8), k = B(48), { width: w } = r0(c);
23314
23315
  function v() {
23315
23316
  return f.value ? Array.from(f.value.children).filter((X) => !X.classList.contains("wov-overflow-button") && !X.classList.contains("wov-menu-tooltip")) : [];
@@ -23404,8 +23405,8 @@ const WT = /* @__PURE__ */ q({
23404
23405
  dragOutTool: R,
23405
23406
  onToolPointerDown: W,
23406
23407
  onToolPointerUp: V
23407
- }), (X, Y) => (C(), A("div", _E, [
23408
- Z(YT),
23408
+ }), (X, Y) => (C(), A("div", DE, [
23409
+ Z(XT),
23409
23410
  x("div", {
23410
23411
  ref_key: "toolsContainerRef",
23411
23412
  ref: f,
@@ -23457,7 +23458,7 @@ const WT = /* @__PURE__ */ q({
23457
23458
  ], 8, ["to"])) : j("", !0)
23458
23459
  ]));
23459
23460
  }
23460
- }), tI = /* @__PURE__ */ q({
23461
+ }), nI = /* @__PURE__ */ q({
23461
23462
  __name: "ArcArrowTool",
23462
23463
  setup(n) {
23463
23464
  return (e, t) => (C(), ee(Ht, {
@@ -23481,14 +23482,14 @@ const WT = /* @__PURE__ */ q({
23481
23482
  _: 1
23482
23483
  }));
23483
23484
  }
23484
- }), NE = { class: "wov-user-presence-avatars" }, RE = ["src", "alt"], PE = { class: "wov-user-presence-list" }, LE = ["src", "alt"], $E = { class: "wov-user-presence-name" }, BE = 4, zE = /* @__PURE__ */ q({
23485
+ }), RE = { class: "wov-user-presence-avatars" }, PE = ["src", "alt"], LE = { class: "wov-user-presence-list" }, $E = ["src", "alt"], BE = { class: "wov-user-presence-name" }, zE = 4, FE = /* @__PURE__ */ q({
23485
23486
  __name: "UserPresence",
23486
23487
  props: {
23487
23488
  users: {}
23488
23489
  },
23489
23490
  setup(n) {
23490
23491
  const e = n, t = B(!1), o = B(null);
23491
- cT(o, () => {
23492
+ uT(o, () => {
23492
23493
  t.value = !1;
23493
23494
  });
23494
23495
  function r(l) {
@@ -23504,7 +23505,7 @@ const WT = /* @__PURE__ */ q({
23504
23505
  avatar: l.avatar,
23505
23506
  initials: r(l.name)
23506
23507
  }))
23507
- ), i = O(() => s.value.slice(0, BE));
23508
+ ), i = O(() => s.value.slice(0, zE));
23508
23509
  return (l, a) => n.users.length > 1 ? (C(), A("div", {
23509
23510
  key: 0,
23510
23511
  ref_key: "containerRef",
@@ -23515,7 +23516,7 @@ const WT = /* @__PURE__ */ q({
23515
23516
  class: Te(["wov-user-presence-trigger", { "is-open": t.value }]),
23516
23517
  onClick: a[0] || (a[0] = (c) => t.value = !t.value)
23517
23518
  }, [
23518
- x("div", NE, [
23519
+ x("div", RE, [
23519
23520
  (C(!0), A(ie, null, Se(i.value, (c) => (C(), A("div", {
23520
23521
  key: c.sessionId,
23521
23522
  class: "wov-user-avatar",
@@ -23526,7 +23527,7 @@ const WT = /* @__PURE__ */ q({
23526
23527
  src: c.avatar,
23527
23528
  alt: c.name,
23528
23529
  class: "wov-user-avatar-img"
23529
- }, null, 8, RE)) : (C(), A(ie, { key: 1 }, [
23530
+ }, null, 8, PE)) : (C(), A(ie, { key: 1 }, [
23530
23531
  Sa(_e(c.initials), 1)
23531
23532
  ], 64))
23532
23533
  ], 4))), 128))
@@ -23538,7 +23539,7 @@ const WT = /* @__PURE__ */ q({
23538
23539
  onWheel: a[1] || (a[1] = ut(() => {
23539
23540
  }, ["stop"]))
23540
23541
  }, [
23541
- x("div", PE, [
23542
+ x("div", LE, [
23542
23543
  (C(!0), A(ie, null, Se(s.value, (c) => (C(), A("div", {
23543
23544
  key: c.sessionId,
23544
23545
  class: "wov-user-presence-item"
@@ -23554,11 +23555,11 @@ const WT = /* @__PURE__ */ q({
23554
23555
  src: c.avatar,
23555
23556
  alt: c.name,
23556
23557
  class: "wov-user-avatar-img"
23557
- }, null, 8, LE)) : (C(), A(ie, { key: 1 }, [
23558
+ }, null, 8, $E)) : (C(), A(ie, { key: 1 }, [
23558
23559
  Sa(_e(c.initials), 1)
23559
23560
  ], 64))
23560
23561
  ], 4),
23561
- x("span", $E, _e(c.name), 1)
23562
+ x("span", BE, _e(c.name), 1)
23562
23563
  ]))), 128))
23563
23564
  ])
23564
23565
  ], 32)) : j("", !0)
@@ -23566,7 +23567,7 @@ const WT = /* @__PURE__ */ q({
23566
23567
  }
23567
23568
  }), dc = (n, e) => e.some((t) => n instanceof t);
23568
23569
  let bh, xh;
23569
- function FE() {
23570
+ function HE() {
23570
23571
  return bh || (bh = [
23571
23572
  IDBDatabase,
23572
23573
  IDBObjectStore,
@@ -23575,7 +23576,7 @@ function FE() {
23575
23576
  IDBTransaction
23576
23577
  ]);
23577
23578
  }
23578
- function HE() {
23579
+ function VE() {
23579
23580
  return xh || (xh = [
23580
23581
  IDBCursor.prototype.advance,
23581
23582
  IDBCursor.prototype.continue,
@@ -23583,7 +23584,7 @@ function HE() {
23583
23584
  ]);
23584
23585
  }
23585
23586
  const fc = /* @__PURE__ */ new WeakMap(), ya = /* @__PURE__ */ new WeakMap(), El = /* @__PURE__ */ new WeakMap();
23586
- function VE(n) {
23587
+ function WE(n) {
23587
23588
  const e = new Promise((t, o) => {
23588
23589
  const r = () => {
23589
23590
  n.removeEventListener("success", s), n.removeEventListener("error", i);
@@ -23596,7 +23597,7 @@ function VE(n) {
23596
23597
  });
23597
23598
  return El.set(e, n), e;
23598
23599
  }
23599
- function WE(n) {
23600
+ function jE(n) {
23600
23601
  if (fc.has(n))
23601
23602
  return;
23602
23603
  const e = new Promise((t, o) => {
@@ -23631,26 +23632,26 @@ let hc = {
23631
23632
  function s0(n) {
23632
23633
  hc = n(hc);
23633
23634
  }
23634
- function jE(n) {
23635
- return HE().includes(n) ? function(...e) {
23635
+ function UE(n) {
23636
+ return VE().includes(n) ? function(...e) {
23636
23637
  return n.apply(pc(this), e), bo(this.request);
23637
23638
  } : function(...e) {
23638
23639
  return bo(n.apply(pc(this), e));
23639
23640
  };
23640
23641
  }
23641
- function UE(n) {
23642
- return typeof n == "function" ? jE(n) : (n instanceof IDBTransaction && WE(n), dc(n, FE()) ? new Proxy(n, hc) : n);
23642
+ function KE(n) {
23643
+ return typeof n == "function" ? UE(n) : (n instanceof IDBTransaction && jE(n), dc(n, HE()) ? new Proxy(n, hc) : n);
23643
23644
  }
23644
23645
  function bo(n) {
23645
23646
  if (n instanceof IDBRequest)
23646
- return VE(n);
23647
+ return WE(n);
23647
23648
  if (ya.has(n))
23648
23649
  return ya.get(n);
23649
- const e = UE(n);
23650
+ const e = KE(n);
23650
23651
  return e !== n && (ya.set(n, e), El.set(e, n)), e;
23651
23652
  }
23652
23653
  const pc = (n) => El.get(n);
23653
- function KE(n, e, { blocked: t, upgrade: o, blocking: r, terminated: s } = {}) {
23654
+ function qE(n, e, { blocked: t, upgrade: o, blocking: r, terminated: s } = {}) {
23654
23655
  const i = indexedDB.open(n, e), l = bo(i);
23655
23656
  return o && i.addEventListener("upgradeneeded", (a) => {
23656
23657
  o(bo(i.result), a.oldVersion, a.newVersion, bo(i.transaction), a);
@@ -23664,16 +23665,16 @@ function KE(n, e, { blocked: t, upgrade: o, blocking: r, terminated: s } = {}) {
23664
23665
  }).catch(() => {
23665
23666
  }), l;
23666
23667
  }
23667
- const qE = ["get", "getKey", "getAll", "getAllKeys", "count"], JE = ["put", "add", "delete", "clear"], va = /* @__PURE__ */ new Map();
23668
+ const JE = ["get", "getKey", "getAll", "getAllKeys", "count"], GE = ["put", "add", "delete", "clear"], va = /* @__PURE__ */ new Map();
23668
23669
  function Sh(n, e) {
23669
23670
  if (!(n instanceof IDBDatabase && !(e in n) && typeof e == "string"))
23670
23671
  return;
23671
23672
  if (va.get(e))
23672
23673
  return va.get(e);
23673
- const t = e.replace(/FromIndex$/, ""), o = e !== t, r = JE.includes(t);
23674
+ const t = e.replace(/FromIndex$/, ""), o = e !== t, r = GE.includes(t);
23674
23675
  if (
23675
23676
  // Bail if the target doesn't exist on the target. Eg, getAll isn't in Edge.
23676
- !(t in (o ? IDBIndex : IDBObjectStore).prototype) || !(r || qE.includes(t))
23677
+ !(t in (o ? IDBIndex : IDBObjectStore).prototype) || !(r || JE.includes(t))
23677
23678
  )
23678
23679
  return;
23679
23680
  const s = async function(i, ...l) {
@@ -23691,9 +23692,9 @@ s0((n) => ({
23691
23692
  get: (e, t, o) => Sh(e, t) || n.get(e, t, o),
23692
23693
  has: (e, t) => !!Sh(e, t) || n.has(e, t)
23693
23694
  }));
23694
- const GE = ["continue", "continuePrimaryKey", "advance"], Ch = {}, mc = /* @__PURE__ */ new WeakMap(), i0 = /* @__PURE__ */ new WeakMap(), YE = {
23695
+ const YE = ["continue", "continuePrimaryKey", "advance"], Ch = {}, mc = /* @__PURE__ */ new WeakMap(), i0 = /* @__PURE__ */ new WeakMap(), XE = {
23695
23696
  get(n, e) {
23696
- if (!GE.includes(e))
23697
+ if (!YE.includes(e))
23697
23698
  return n[e];
23698
23699
  let t = Ch[e];
23699
23700
  return t || (t = Ch[e] = function(...o) {
@@ -23701,12 +23702,12 @@ const GE = ["continue", "continuePrimaryKey", "advance"], Ch = {}, mc = /* @__PU
23701
23702
  }), t;
23702
23703
  }
23703
23704
  };
23704
- async function* XE(...n) {
23705
+ async function* ZE(...n) {
23705
23706
  let e = this;
23706
23707
  if (e instanceof IDBCursor || (e = await e.openCursor(...n)), !e)
23707
23708
  return;
23708
23709
  e = e;
23709
- const t = new Proxy(e, YE);
23710
+ const t = new Proxy(e, XE);
23710
23711
  for (i0.set(t, e), El.set(t, pc(e)); e; )
23711
23712
  yield t, e = await (mc.get(t) || e.continue()), mc.delete(t);
23712
23713
  }
@@ -23716,21 +23717,21 @@ function Mh(n, e) {
23716
23717
  s0((n) => ({
23717
23718
  ...n,
23718
23719
  get(e, t, o) {
23719
- return Mh(e, t) ? XE : n.get(e, t, o);
23720
+ return Mh(e, t) ? ZE : n.get(e, t, o);
23720
23721
  },
23721
23722
  has(e, t) {
23722
23723
  return Mh(e, t) || n.has(e, t);
23723
23724
  }
23724
23725
  }));
23725
23726
  async function gc(n, e) {
23726
- const t = await KE(n, 1, {
23727
+ const t = await qE(n, 1, {
23727
23728
  upgrade(o) {
23728
23729
  o.objectStoreNames.contains(e) || o.createObjectStore(e);
23729
23730
  }
23730
23731
  });
23731
- return new ZE(t, e);
23732
+ return new QE(t, e);
23732
23733
  }
23733
- var ZE = class {
23734
+ var QE = class {
23734
23735
  constructor(n, e) {
23735
23736
  this.db = n, this.storeName = e;
23736
23737
  }
@@ -23756,7 +23757,7 @@ var ZE = class {
23756
23757
  close() {
23757
23758
  this.db.close();
23758
23759
  }
23759
- }, QE = class {
23760
+ }, e3 = class {
23760
23761
  constructor(n) {
23761
23762
  this.jobsStore = null, this.binariesStore = null, this.blobUrls = /* @__PURE__ */ new Map(), this.uploading = /* @__PURE__ */ new Set(), this.uploadPromises = /* @__PURE__ */ new Map(), this.startListeners = /* @__PURE__ */ new Set(), this.completeListeners = /* @__PURE__ */ new Set(), this.errorListeners = /* @__PURE__ */ new Set(), this.persisting = /* @__PURE__ */ new Set(), this.persistStartListeners = /* @__PURE__ */ new Set(), this.persistEndListeners = /* @__PURE__ */ new Set(), this.provider = n.provider, this.documentId = n.documentId, this.maxRetries = n.provider.maxRetries ?? 3, this.retryDelay = n.provider.retryDelay ?? 5e3;
23762
23763
  }
@@ -23986,7 +23987,7 @@ var ZE = class {
23986
23987
  s && (s.reject(r), this.uploadPromises.delete(n));
23987
23988
  }
23988
23989
  }
23989
- }, e3 = "wovencanvas-assets", t3 = "blobs", n3 = class {
23990
+ }, t3 = "wovencanvas-assets", n3 = "blobs", o3 = class {
23990
23991
  constructor() {
23991
23992
  this.store = null, this.initPromise = null, this.maxRetries = 3, this.retryDelay = 5e3;
23992
23993
  }
@@ -24009,10 +24010,10 @@ var ZE = class {
24009
24010
  this.store && (this.store.close(), this.store = null, this.initPromise = null);
24010
24011
  }
24011
24012
  getStore() {
24012
- return this.store ? Promise.resolve(this.store) : (this.initPromise || (this.initPromise = gc(e3, t3).then((n) => (this.store = n, n))), this.initPromise);
24013
+ return this.store ? Promise.resolve(this.store) : (this.initPromise || (this.initPromise = gc(t3, n3).then((n) => (this.store = n, n))), this.initPromise);
24013
24014
  }
24014
24015
  };
24015
- const o3 = /* @__PURE__ */ q({
24016
+ const r3 = /* @__PURE__ */ q({
24016
24017
  __name: "StickyNote",
24017
24018
  props: {
24018
24019
  entityId: {},
@@ -24062,14 +24063,14 @@ const o3 = /* @__PURE__ */ q({
24062
24063
  /** Checkpoint ID for squashing edited block history, or empty string if none */
24063
24064
  editedCheckpoint: pn.string().default("").max(36)
24064
24065
  }
24065
- ), r3 = JSON.stringify({
24066
+ ), s3 = JSON.stringify({
24066
24067
  block: { tag: "text", size: [10, 29] },
24067
24068
  text: { constrainWidth: !1, fontSizePx: 24 }
24068
24069
  }), qr = Fh(
24069
24070
  { name: "doubleClickState" },
24070
24071
  {
24071
24072
  /** JSON-serialized BlockSnapshot, or empty string to disable */
24072
- snapshot: pn.string().max(1024).default(r3),
24073
+ snapshot: pn.string().max(1024).default(s3),
24073
24074
  lastClickTime: pn.float64().default(0),
24074
24075
  lastClickWorldX: pn.float64().default(0),
24075
24076
  lastClickWorldY: pn.float64().default(0)
@@ -24103,7 +24104,7 @@ function Eh(n, e, t, o, r) {
24103
24104
  const u = Nc.write(n);
24104
24105
  u.cursorKind = "select", u.rotation = 0;
24105
24106
  }
24106
- function s3(n) {
24107
+ function i3(n) {
24107
24108
  const e = Ui.read(n);
24108
24109
  if (e.editedCheckpoint) {
24109
24110
  const t = e.editedCheckpoint;
@@ -24112,9 +24113,9 @@ function s3(n) {
24112
24113
  o.onSettled(() => o.squashToCheckpoint(t), { frames: 5 });
24113
24114
  }
24114
24115
  }
24115
- const i3 = tl({ phase: "capture" }, (n) => {
24116
+ const l3 = tl({ phase: "capture" }, (n) => {
24116
24117
  if (nl(n)) return;
24117
- Th.removed(n).length > 0 && Th.current(n).length === 0 && s3(n);
24118
+ Th.removed(n).length > 0 && Th.current(n).length === 0 && i3(n);
24118
24119
  const e = Bt.read(n);
24119
24120
  if (!e.heldSnapshot || e.leftMouseTool === "draw") return;
24120
24121
  const t = Rc(n, [Zh.Left]);
@@ -24143,7 +24144,7 @@ const i3 = tl({ phase: "capture" }, (n) => {
24143
24144
  "placement"
24144
24145
  );
24145
24146
  }
24146
- }), l3 = 400, a3 = 10, c3 = tl({ phase: "capture" }, (n) => {
24147
+ }), a3 = 400, c3 = 10, u3 = tl({ phase: "capture" }, (n) => {
24147
24148
  var d, f;
24148
24149
  if (nl(n)) return;
24149
24150
  const e = qr.read(n);
@@ -24155,7 +24156,7 @@ const i3 = tl({ phase: "capture" }, (n) => {
24155
24156
  const r = o.find((h) => h.type === "click" && !h.obscured);
24156
24157
  if (!r || r.intersects.some((h) => !Fe(n, h, js))) return;
24157
24158
  const i = performance.now(), l = i - e.lastClickTime, a = r.worldPosition[0] - e.lastClickWorldX, c = r.worldPosition[1] - e.lastClickWorldY, u = Math.sqrt(a * a + c * c);
24158
- if (l < l3 && u < a3) {
24159
+ if (l < a3 && u < c3) {
24159
24160
  let h;
24160
24161
  try {
24161
24162
  h = JSON.parse(e.snapshot);
@@ -24178,7 +24179,7 @@ const i3 = tl({ phase: "capture" }, (n) => {
24178
24179
  h.lastClickTime = i, h.lastClickWorldX = r.worldPosition[0], h.lastClickWorldY = r.worldPosition[1];
24179
24180
  }
24180
24181
  });
24181
- function u3() {
24182
+ function d3() {
24182
24183
  if (typeof globalThis < "u")
24183
24184
  return globalThis;
24184
24185
  if (typeof self < "u")
@@ -24188,15 +24189,15 @@ function u3() {
24188
24189
  if (typeof global < "u")
24189
24190
  return global;
24190
24191
  }
24191
- function d3() {
24192
- const n = u3();
24192
+ function f3() {
24193
+ const n = d3();
24193
24194
  if (n.__xstate__)
24194
24195
  return n.__xstate__;
24195
24196
  }
24196
- const f3 = (n) => {
24197
+ const h3 = (n) => {
24197
24198
  if (typeof window > "u")
24198
24199
  return;
24199
- const e = d3();
24200
+ const e = f3();
24200
24201
  e && e.register(n);
24201
24202
  };
24202
24203
  class Ah {
@@ -24228,8 +24229,8 @@ class Ah {
24228
24229
  this._last = null;
24229
24230
  }
24230
24231
  }
24231
- const a0 = ".", h3 = "", c0 = "", p3 = "#", m3 = "*", u0 = "xstate.init", g3 = "xstate.error", yc = "xstate.stop";
24232
- function y3(n, e) {
24232
+ const a0 = ".", p3 = "", c0 = "", m3 = "#", g3 = "*", u0 = "xstate.init", y3 = "xstate.error", yc = "xstate.stop";
24233
+ function v3(n, e) {
24233
24234
  return {
24234
24235
  type: `xstate.after.${n}.${e}`
24235
24236
  };
@@ -24240,7 +24241,7 @@ function vc(n, e) {
24240
24241
  output: e
24241
24242
  };
24242
24243
  }
24243
- function v3(n, e) {
24244
+ function w3(n, e) {
24244
24245
  return {
24245
24246
  type: `xstate.done.actor.${n}`,
24246
24247
  output: e,
@@ -24265,7 +24266,7 @@ function Ut(n) {
24265
24266
  throw n;
24266
24267
  });
24267
24268
  }
24268
- const w3 = typeof Symbol == "function" && Symbol.observable || "@@observable";
24269
+ const k3 = typeof Symbol == "function" && Symbol.observable || "@@observable";
24269
24270
  function h0(n, e) {
24270
24271
  const t = Ih(n), o = Ih(e);
24271
24272
  return typeof o == "string" ? typeof t == "string" ? o === t : !1 : typeof t == "string" ? t in o : Object.keys(t).every((r) => r in o ? h0(t[r], o[r]) : !1);
@@ -24289,14 +24290,14 @@ function Nu(n) {
24289
24290
  return e.push(t), e;
24290
24291
  }
24291
24292
  function Ih(n) {
24292
- if (eA(n))
24293
+ if (tA(n))
24293
24294
  return n.value;
24294
24295
  if (typeof n != "string")
24295
24296
  return n;
24296
24297
  const e = Nu(n);
24297
- return k3(e);
24298
+ return b3(e);
24298
24299
  }
24299
- function k3(n) {
24300
+ function b3(n) {
24300
24301
  if (n.length === 1)
24301
24302
  return n[0];
24302
24303
  const e = {};
@@ -24334,7 +24335,7 @@ function wc(n, e, t, o) {
24334
24335
  function m0(n) {
24335
24336
  return Array.isArray(n);
24336
24337
  }
24337
- function b3(n) {
24338
+ function x3(n) {
24338
24339
  return n.type.startsWith("xstate.error.actor");
24339
24340
  }
24340
24341
  function jo(n) {
@@ -24343,7 +24344,7 @@ function jo(n) {
24343
24344
  } : e);
24344
24345
  }
24345
24346
  function g0(n) {
24346
- if (!(n === void 0 || n === h3))
24347
+ if (!(n === void 0 || n === p3))
24347
24348
  return Wn(n);
24348
24349
  }
24349
24350
  function kc(n, e, t) {
@@ -24365,8 +24366,8 @@ function Ru(n, e) {
24365
24366
  const [, o, r] = t, i = n.getStateNodeById(r).config.invoke;
24366
24367
  return (Array.isArray(i) ? i[o] : i).src;
24367
24368
  }
24368
- function x3(n, e) {
24369
- if (e === n || e === m3)
24369
+ function S3(n, e) {
24370
+ if (e === n || e === g3)
24370
24371
  return !0;
24371
24372
  if (!e.endsWith(".*"))
24372
24373
  return !1;
@@ -24383,8 +24384,8 @@ function x3(n, e) {
24383
24384
  function Dh(n, e) {
24384
24385
  return `${n.sessionId}.${e}`;
24385
24386
  }
24386
- let S3 = 0;
24387
- function C3(n, e) {
24387
+ let C3 = 0;
24388
+ function M3(n, e) {
24388
24389
  const t = /* @__PURE__ */ new Map(), o = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new WeakMap(), s = /* @__PURE__ */ new Set(), i = {}, {
24389
24390
  clock: l,
24390
24391
  logger: a
@@ -24429,7 +24430,7 @@ function C3(n, e) {
24429
24430
  _snapshot: {
24430
24431
  _scheduledEvents: ((e == null ? void 0 : e.snapshot) && e.snapshot.scheduler) ?? {}
24431
24432
  },
24432
- _bookId: () => `x:${S3++}`,
24433
+ _bookId: () => `x:${C3++}`,
24433
24434
  _register: (f, h) => (t.set(f, h), f),
24434
24435
  _unregister: (f) => {
24435
24436
  t.delete(f.sessionId);
@@ -24491,7 +24492,7 @@ const Pu = 1;
24491
24492
  let pt = /* @__PURE__ */ function(n) {
24492
24493
  return n[n.NotStarted = 0] = "NotStarted", n[n.Running = 1] = "Running", n[n.Stopped = 2] = "Stopped", n;
24493
24494
  }({});
24494
- const M3 = {
24495
+ const T3 = {
24495
24496
  clock: {
24496
24497
  setTimeout: (n, e) => setTimeout(n, e),
24497
24498
  clearTimeout: (n) => clearTimeout(n)
@@ -24499,7 +24500,7 @@ const M3 = {
24499
24500
  logger: console.log.bind(console),
24500
24501
  devTools: !1
24501
24502
  };
24502
- class T3 {
24503
+ class E3 {
24503
24504
  /**
24504
24505
  * Creates a new actor instance for the given logic with the provided options,
24505
24506
  * if any.
@@ -24510,7 +24511,7 @@ class T3 {
24510
24511
  constructor(e, t) {
24511
24512
  this.logic = e, this._snapshot = void 0, this.clock = void 0, this.options = void 0, this.id = void 0, this.mailbox = new Ah(this._process.bind(this)), this.observers = /* @__PURE__ */ new Set(), this.eventListeners = /* @__PURE__ */ new Map(), this.logger = void 0, this._processingStatus = pt.NotStarted, this._parent = void 0, this._syncSnapshot = void 0, this.ref = void 0, this._actorScope = void 0, this.systemId = void 0, this.sessionId = void 0, this.system = void 0, this._doneEvent = void 0, this.src = void 0, this._deferred = [];
24512
24513
  const o = {
24513
- ...M3,
24514
+ ...T3,
24514
24515
  ...t
24515
24516
  }, {
24516
24517
  clock: r,
@@ -24521,7 +24522,7 @@ class T3 {
24521
24522
  systemId: c,
24522
24523
  inspect: u
24523
24524
  } = o;
24524
- this.system = i ? i.system : C3(this, {
24525
+ this.system = i ? i.system : M3(this, {
24525
24526
  clock: r,
24526
24527
  logger: s
24527
24528
  }), u && !i && this.system.inspect(kc(u)), this.sessionId = this.system._bookId(), this.id = a ?? this.sessionId, this.logger = (t == null ? void 0 : t.logger) ?? this.system._logger, this.clock = (t == null ? void 0 : t.clock) ?? this.system._clock, this._parent = i, this._syncSnapshot = l, this.options = o, this.src = o.src ?? e, this.ref = this, this._actorScope = {
@@ -24617,7 +24618,7 @@ class T3 {
24617
24618
  } catch (l) {
24618
24619
  Ut(l);
24619
24620
  }
24620
- this._stopProcedure(), this._complete(), this._doneEvent = v3(this.id, this._snapshot.output), this._parent && this.system._relay(this, this._parent, this._doneEvent);
24621
+ this._stopProcedure(), this._complete(), this._doneEvent = w3(this.id, this._snapshot.output), this._parent && this.system._relay(this, this._parent, this._doneEvent);
24621
24622
  break;
24622
24623
  case "error":
24623
24624
  this._error(this._snapshot.error);
@@ -24857,7 +24858,7 @@ class T3 {
24857
24858
  const {
24858
24859
  devTools: e
24859
24860
  } = this.options;
24860
- e && (typeof e == "function" ? e : f3)(this);
24861
+ e && (typeof e == "function" ? e : h3)(this);
24861
24862
  }
24862
24863
  toJSON() {
24863
24864
  return {
@@ -24881,7 +24882,7 @@ class T3 {
24881
24882
  getPersistedSnapshot(e) {
24882
24883
  return this.logic.getPersistedSnapshot(this._snapshot, e);
24883
24884
  }
24884
- [w3]() {
24885
+ [k3]() {
24885
24886
  return this;
24886
24887
  }
24887
24888
  /**
@@ -24903,9 +24904,9 @@ class T3 {
24903
24904
  }
24904
24905
  }
24905
24906
  function Ki(n, ...[e]) {
24906
- return new T3(n, e);
24907
+ return new E3(n, e);
24907
24908
  }
24908
- function E3(n, e, t, o, {
24909
+ function A3(n, e, t, o, {
24909
24910
  sendId: r
24910
24911
  }) {
24911
24912
  const s = typeof r == "function" ? r(t, o) : r;
@@ -24913,7 +24914,7 @@ function E3(n, e, t, o, {
24913
24914
  sendId: s
24914
24915
  }, void 0];
24915
24916
  }
24916
- function A3(n, e) {
24917
+ function I3(n, e) {
24917
24918
  n.defer(() => {
24918
24919
  n.system.scheduler.cancel(n.self, e.sendId);
24919
24920
  });
@@ -24921,9 +24922,9 @@ function A3(n, e) {
24921
24922
  function Lu(n) {
24922
24923
  function e(t, o) {
24923
24924
  }
24924
- return e.type = "xstate.cancel", e.sendId = n, e.resolve = E3, e.execute = A3, e;
24925
+ return e.type = "xstate.cancel", e.sendId = n, e.resolve = A3, e.execute = I3, e;
24925
24926
  }
24926
- function I3(n, e, t, o, {
24927
+ function O3(n, e, t, o, {
24927
24928
  id: r,
24928
24929
  systemId: s,
24929
24930
  src: i,
@@ -24956,7 +24957,7 @@ function I3(n, e, t, o, {
24956
24957
  input: f
24957
24958
  }, void 0];
24958
24959
  }
24959
- function O3(n, {
24960
+ function _3(n, {
24960
24961
  actorRef: e
24961
24962
  }) {
24962
24963
  e && n.defer(() => {
@@ -24971,9 +24972,9 @@ function $u(...[n, {
24971
24972
  } = {}]) {
24972
24973
  function s(i, l) {
24973
24974
  }
24974
- return s.type = "xstate.spawnChild", s.id = e, s.systemId = t, s.src = n, s.input = o, s.syncSnapshot = r, s.resolve = I3, s.execute = O3, s;
24975
+ return s.type = "xstate.spawnChild", s.id = e, s.systemId = t, s.src = n, s.input = o, s.syncSnapshot = r, s.resolve = O3, s.execute = _3, s;
24975
24976
  }
24976
- function _3(n, e, t, o, {
24977
+ function D3(n, e, t, o, {
24977
24978
  actorRef: r
24978
24979
  }) {
24979
24980
  const s = typeof r == "function" ? r(t, o) : r, i = typeof s == "string" ? e.children[s] : s;
@@ -24991,7 +24992,7 @@ function y0(n, e) {
24991
24992
  y0(n, o);
24992
24993
  n.system._unregister(e);
24993
24994
  }
24994
- function D3(n, e) {
24995
+ function N3(n, e) {
24995
24996
  if (e) {
24996
24997
  if (y0(n, e), e._processingStatus !== pt.Running) {
24997
24998
  n.stopChild(e);
@@ -25005,7 +25006,7 @@ function D3(n, e) {
25005
25006
  function Al(n) {
25006
25007
  function e(t, o) {
25007
25008
  }
25008
- return e.type = "xstate.stopChild", e.actorRef = n, e.resolve = _3, e.execute = D3, e;
25009
+ return e.type = "xstate.stopChild", e.actorRef = n, e.resolve = D3, e.execute = N3, e;
25009
25010
  }
25010
25011
  function Il(n, e, t, o) {
25011
25012
  const {
@@ -25094,16 +25095,16 @@ function k0(n, e) {
25094
25095
  function zu(n, e) {
25095
25096
  return e.type === "compound" ? ir(e).some((t) => t.type === "final" && n.has(t)) : e.type === "parallel" ? ir(e).every((t) => zu(n, t)) : e.type === "final";
25096
25097
  }
25097
- const Ol = (n) => n[0] === p3;
25098
- function N3(n, e) {
25099
- return n.transitions.get(e) || [...n.transitions.keys()].filter((o) => x3(e, o)).sort((o, r) => r.length - o.length).flatMap((o) => n.transitions.get(o));
25098
+ const Ol = (n) => n[0] === m3;
25099
+ function R3(n, e) {
25100
+ return n.transitions.get(e) || [...n.transitions.keys()].filter((o) => S3(e, o)).sort((o, r) => r.length - o.length).flatMap((o) => n.transitions.get(o));
25100
25101
  }
25101
- function R3(n) {
25102
+ function P3(n) {
25102
25103
  const e = n.config.after;
25103
25104
  if (!e)
25104
25105
  return [];
25105
25106
  const t = (r) => {
25106
- const s = y3(r, n.id), i = s.type;
25107
+ const s = v3(r, n.id), i = s.type;
25107
25108
  return n.entry.push(Vu(s, {
25108
25109
  id: i,
25109
25110
  delay: r
@@ -25129,7 +25130,7 @@ function R3(n) {
25129
25130
  });
25130
25131
  }
25131
25132
  function Pn(n, e, t) {
25132
- const o = g0(t.target), r = t.reenter ?? !1, s = B3(n, o), i = {
25133
+ const o = g0(t.target), r = t.reenter ?? !1, s = z3(n, o), i = {
25133
25134
  ...t,
25134
25135
  actions: Wn(t.actions),
25135
25136
  guard: t.guard,
@@ -25145,7 +25146,7 @@ function Pn(n, e, t) {
25145
25146
  };
25146
25147
  return i;
25147
25148
  }
25148
- function P3(n) {
25149
+ function L3(n) {
25149
25150
  const e = /* @__PURE__ */ new Map();
25150
25151
  if (n.config.on)
25151
25152
  for (const t of Object.keys(n.config.on)) {
@@ -25178,7 +25179,7 @@ function P3(n) {
25178
25179
  }
25179
25180
  return e;
25180
25181
  }
25181
- function L3(n) {
25182
+ function $3(n) {
25182
25183
  const e = [], t = (o) => {
25183
25184
  Object.values(o).forEach((r) => {
25184
25185
  if (r.config.route && r.config.id) {
@@ -25194,7 +25195,7 @@ function L3(n) {
25194
25195
  };
25195
25196
  t(n.states), e.length > 0 && n.transitions.set("xstate.route", e);
25196
25197
  }
25197
- function $3(n, e) {
25198
+ function B3(n, e) {
25198
25199
  const t = typeof e == "string" ? n.states[e] : e ? n.states[e.target] : void 0;
25199
25200
  if (!t && e)
25200
25201
  throw new Error(
@@ -25215,7 +25216,7 @@ function $3(n, e) {
25215
25216
  };
25216
25217
  return o;
25217
25218
  }
25218
- function B3(n, e) {
25219
+ function z3(n, e) {
25219
25220
  if (e !== void 0)
25220
25221
  return e.map((t) => {
25221
25222
  if (typeof t != "string")
@@ -25308,15 +25309,15 @@ function Gi(n, e) {
25308
25309
  return r.concat(l);
25309
25310
  }, []));
25310
25311
  }
25311
- function z3(n, e, t, o) {
25312
+ function F3(n, e, t, o) {
25312
25313
  const s = lr(n, e).next(t, o);
25313
25314
  return !s || !s.length ? n.next(t, o) : s;
25314
25315
  }
25315
- function F3(n, e, t, o) {
25316
+ function H3(n, e, t, o) {
25316
25317
  const r = Object.keys(e), s = lr(n, r[0]), i = Fu(s, e[r[0]], t, o);
25317
25318
  return !i || !i.length ? n.next(t, o) : i;
25318
25319
  }
25319
- function H3(n, e, t, o) {
25320
+ function V3(n, e, t, o) {
25320
25321
  const r = [];
25321
25322
  for (const s of Object.keys(e)) {
25322
25323
  const i = e[s];
@@ -25328,9 +25329,9 @@ function H3(n, e, t, o) {
25328
25329
  return r.length ? r : n.next(t, o);
25329
25330
  }
25330
25331
  function Fu(n, e, t, o) {
25331
- return typeof e == "string" ? z3(n, e, t, o) : Object.keys(e).length === 1 ? F3(n, e, t, o) : H3(n, e, t, o);
25332
+ return typeof e == "string" ? F3(n, e, t, o) : Object.keys(e).length === 1 ? H3(n, e, t, o) : V3(n, e, t, o);
25332
25333
  }
25333
- function V3(n) {
25334
+ function W3(n) {
25334
25335
  return Object.keys(n.states).map((e) => n.states[e]).filter((e) => e.type === "history");
25335
25336
  }
25336
25337
  function Qn(n, e) {
@@ -25339,7 +25340,7 @@ function Qn(n, e) {
25339
25340
  t = t.parent;
25340
25341
  return t.parent === e;
25341
25342
  }
25342
- function W3(n, e) {
25343
+ function j3(n, e) {
25343
25344
  const t = new Set(n), o = new Set(e);
25344
25345
  for (const r of t)
25345
25346
  if (o.has(r))
@@ -25355,7 +25356,7 @@ function S0(n, e, t) {
25355
25356
  let s = !1;
25356
25357
  const i = /* @__PURE__ */ new Set();
25357
25358
  for (const l of o)
25358
- if (W3(bc([r], e, t), bc([l], e, t)))
25359
+ if (j3(bc([r], e, t), bc([l], e, t)))
25359
25360
  if (Qn(r.source, l.source))
25360
25361
  i.add(l);
25361
25362
  else {
@@ -25370,7 +25371,7 @@ function S0(n, e, t) {
25370
25371
  }
25371
25372
  return Array.from(o);
25372
25373
  }
25373
- function j3(n) {
25374
+ function U3(n) {
25374
25375
  const [e, ...t] = n;
25375
25376
  for (const o of ws(e, void 0))
25376
25377
  if (t.every((r) => Qn(r, o)))
@@ -25398,7 +25399,7 @@ function C0(n, e) {
25398
25399
  return;
25399
25400
  if (!n.reenter && t.every((r) => r === n.source || Qn(r, n.source)))
25400
25401
  return n.source;
25401
- const o = j3(t.concat(n.source));
25402
+ const o = U3(t.concat(n.source));
25402
25403
  if (o)
25403
25404
  return o;
25404
25405
  if (!n.reenter)
@@ -25416,7 +25417,7 @@ function bc(n, e, t) {
25416
25417
  }
25417
25418
  return [...o];
25418
25419
  }
25419
- function U3(n, e) {
25420
+ function K3(n, e) {
25420
25421
  if (n.length !== e.size)
25421
25422
  return !1;
25422
25423
  for (const t of n)
@@ -25424,7 +25425,7 @@ function U3(n, e) {
25424
25425
  return !1;
25425
25426
  return !0;
25426
25427
  }
25427
- function K3(n, e, t, o, r) {
25428
+ function q3(n, e, t, o, r) {
25428
25429
  return xc([{
25429
25430
  target: [...x0(n)],
25430
25431
  source: n,
@@ -25447,11 +25448,11 @@ function xc(n, e, t, o, r, s) {
25447
25448
  let c = e.historyValue;
25448
25449
  const u = S0(n, a, c);
25449
25450
  let d = e;
25450
- r || ([d, c] = Y3(d, o, t, u, a, c, s, t.actionExecutor)), d = ar(d, o, t, u.flatMap((h) => h.actions), s, void 0), d = J3(d, o, t, u, a, s, c, r);
25451
+ r || ([d, c] = X3(d, o, t, u, a, c, s, t.actionExecutor)), d = ar(d, o, t, u.flatMap((h) => h.actions), s, void 0), d = G3(d, o, t, u, a, s, c, r);
25451
25452
  const f = [...a];
25452
25453
  d.status === "done" && (d = ar(d, o, t, f.sort((h, p) => p.order - h.order).flatMap((h) => h.exit), s, void 0));
25453
25454
  try {
25454
- return c === e.historyValue && U3(e._nodes, a) ? [d, i] : [Ao(d, {
25455
+ return c === e.historyValue && K3(e._nodes, a) ? [d, i] : [Ao(d, {
25455
25456
  _nodes: f,
25456
25457
  historyValue: c
25457
25458
  }), i];
@@ -25462,16 +25463,16 @@ function xc(n, e, t, o, r, s) {
25462
25463
  t.actionExecutor = l;
25463
25464
  }
25464
25465
  }
25465
- function q3(n, e, t, o, r) {
25466
+ function J3(n, e, t, o, r) {
25466
25467
  if (o.output === void 0)
25467
25468
  return;
25468
25469
  const s = vc(r.id, r.output !== void 0 && r.parent ? wc(r.output, n.context, e, t.self) : void 0);
25469
25470
  return wc(o.output, n.context, s, t.self);
25470
25471
  }
25471
- function J3(n, e, t, o, r, s, i, l) {
25472
+ function G3(n, e, t, o, r, s, i, l) {
25472
25473
  let a = n;
25473
25474
  const c = /* @__PURE__ */ new Set(), u = /* @__PURE__ */ new Set();
25474
- G3(o, i, u, c), l && u.add(n.machine.root);
25475
+ Y3(o, i, u, c), l && u.add(n.machine.root);
25475
25476
  const d = /* @__PURE__ */ new Set();
25476
25477
  for (const f of [...c].sort((h, p) => h.order - p.order)) {
25477
25478
  r.add(f);
@@ -25495,13 +25496,13 @@ function J3(n, e, t, o, r, s, i, l) {
25495
25496
  continue;
25496
25497
  a = Ao(a, {
25497
25498
  status: "done",
25498
- output: q3(a, e, t, a.machine.root, g)
25499
+ output: J3(a, e, t, a.machine.root, g)
25499
25500
  });
25500
25501
  }
25501
25502
  }
25502
25503
  return a;
25503
25504
  }
25504
- function G3(n, e, t, o) {
25505
+ function Y3(n, e, t, o) {
25505
25506
  for (const r of n) {
25506
25507
  const s = C0(r, e);
25507
25508
  for (const l of r.target || [])
@@ -25549,13 +25550,13 @@ function M0(n, e, t, o, r) {
25549
25550
  function ka(n, e, t, o, r) {
25550
25551
  M0(t, o, r, ws(n, e));
25551
25552
  }
25552
- function Y3(n, e, t, o, r, s, i, l) {
25553
+ function X3(n, e, t, o, r, s, i, l) {
25553
25554
  let a = n;
25554
25555
  const c = bc(o, r, s);
25555
25556
  c.sort((d, f) => f.order - d.order);
25556
25557
  let u;
25557
25558
  for (const d of c)
25558
- for (const f of V3(d)) {
25559
+ for (const f of W3(d)) {
25559
25560
  let h;
25560
25561
  f.history === "deep" ? h = (p) => Bu(p) && Qn(p, d) : h = (p) => p.parent === d, u ?? (u = {
25561
25562
  ...s
@@ -25565,7 +25566,7 @@ function Y3(n, e, t, o, r, s, i, l) {
25565
25566
  a = ar(a, e, t, [...d.exit, ...d.invoke.map((f) => Al(f.id))], i, void 0), r.delete(d);
25566
25567
  return [a, u || s];
25567
25568
  }
25568
- function X3(n, e) {
25569
+ function Z3(n, e) {
25569
25570
  return n.implementations.actions[e];
25570
25571
  }
25571
25572
  function T0(n, e, t, o, r, s) {
@@ -25578,7 +25579,7 @@ function T0(n, e, t, o, r, s) {
25578
25579
  // the existing type of `.actions` assumes non-nullable `TExpressionAction`
25579
25580
  // it's fine to cast this here to get a common type and lack of errors in the rest of the code
25580
25581
  // our logic below makes sure that we call those 2 "variants" correctly
25581
- X3(i, typeof a == "string" ? a : a.type)
25582
+ Z3(i, typeof a == "string" ? a : a.type)
25582
25583
  ), d = {
25583
25584
  context: l.context,
25584
25585
  event: e,
@@ -25645,7 +25646,7 @@ function ba(n, e, t, o) {
25645
25646
  };
25646
25647
  let l = e;
25647
25648
  if (l.type !== u0) {
25648
- const c = l, u = b3(c), d = Ph(c, r);
25649
+ const c = l, u = x3(c), d = Ph(c, r);
25649
25650
  if (u && !d.length)
25650
25651
  return r = Ao(n, {
25651
25652
  status: "error",
@@ -25667,7 +25668,7 @@ function ba(n, e, t, o) {
25667
25668
  }
25668
25669
  let a = !0;
25669
25670
  for (; r.status === "active"; ) {
25670
- let c = a ? Z3(r, l) : [];
25671
+ let c = a ? Q3(r, l) : [];
25671
25672
  const u = c.length ? r : void 0;
25672
25673
  if (!c.length) {
25673
25674
  if (!o.length)
@@ -25688,7 +25689,7 @@ function Rh(n, e, t) {
25688
25689
  function Ph(n, e) {
25689
25690
  return e.machine.getTransitionData(e, n);
25690
25691
  }
25691
- function Z3(n, e) {
25692
+ function Q3(n, e) {
25692
25693
  const t = /* @__PURE__ */ new Set(), o = n._nodes.filter(Bu);
25693
25694
  for (const r of o)
25694
25695
  e: for (const s of [r].concat(ws(r, void 0)))
@@ -25701,22 +25702,22 @@ function Z3(n, e) {
25701
25702
  }
25702
25703
  return S0(Array.from(t), new Set(n._nodes), n.historyValue);
25703
25704
  }
25704
- function Q3(n, e) {
25705
+ function eA(n, e) {
25705
25706
  const t = qi(Gi(n, e));
25706
25707
  return k0(n, [...t]);
25707
25708
  }
25708
- function eA(n) {
25709
+ function tA(n) {
25709
25710
  return !!n && typeof n == "object" && "machine" in n && "value" in n;
25710
25711
  }
25711
- const tA = function(e) {
25712
+ const nA = function(e) {
25712
25713
  return h0(e, this.value);
25713
- }, nA = function(e) {
25714
- return this.tags.has(e);
25715
25714
  }, oA = function(e) {
25715
+ return this.tags.has(e);
25716
+ }, rA = function(e) {
25716
25717
  const t = this.machine.getTransitionData(this, e);
25717
25718
  return !!(t != null && t.length) && // Check that at least one transition is not forbidden
25718
25719
  t.some((o) => o.target !== void 0 || o.actions.length);
25719
- }, rA = function() {
25720
+ }, sA = function() {
25720
25721
  const {
25721
25722
  _nodes: e,
25722
25723
  tags: t,
@@ -25732,7 +25733,7 @@ const tA = function(e) {
25732
25733
  ...c,
25733
25734
  tags: Array.from(t)
25734
25735
  };
25735
- }, sA = function() {
25736
+ }, iA = function() {
25736
25737
  return this._nodes.reduce((e, t) => (t.meta !== void 0 && (e[t.id] = t.meta), e), {});
25737
25738
  };
25738
25739
  function Vs(n, e) {
@@ -25747,11 +25748,11 @@ function Vs(n, e) {
25747
25748
  tags: new Set(n._nodes.flatMap((t) => t.tags)),
25748
25749
  children: n.children,
25749
25750
  historyValue: n.historyValue || {},
25750
- matches: tA,
25751
- hasTag: nA,
25752
- can: oA,
25753
- getMeta: sA,
25754
- toJSON: rA
25751
+ matches: nA,
25752
+ hasTag: oA,
25753
+ can: rA,
25754
+ getMeta: iA,
25755
+ toJSON: sA
25755
25756
  };
25756
25757
  }
25757
25758
  function Ao(n, e = {}) {
@@ -25760,7 +25761,7 @@ function Ao(n, e = {}) {
25760
25761
  ...e
25761
25762
  }, n.machine);
25762
25763
  }
25763
- function iA(n) {
25764
+ function lA(n) {
25764
25765
  if (typeof n != "object" || n === null)
25765
25766
  return {};
25766
25767
  const e = {};
@@ -25772,7 +25773,7 @@ function iA(n) {
25772
25773
  }
25773
25774
  return e;
25774
25775
  }
25775
- function lA(n, e) {
25776
+ function aA(n, e) {
25776
25777
  const {
25777
25778
  _nodes: t,
25778
25779
  tags: o,
@@ -25799,7 +25800,7 @@ function lA(n, e) {
25799
25800
  ...f,
25800
25801
  context: E0(i),
25801
25802
  children: h,
25802
- historyValue: iA(f.historyValue)
25803
+ historyValue: lA(f.historyValue)
25803
25804
  };
25804
25805
  }
25805
25806
  function E0(n) {
@@ -25823,7 +25824,7 @@ function E0(n) {
25823
25824
  }
25824
25825
  return e ?? n;
25825
25826
  }
25826
- function aA(n, e, t, o, {
25827
+ function cA(n, e, t, o, {
25827
25828
  event: r,
25828
25829
  id: s,
25829
25830
  delay: i
@@ -25849,7 +25850,7 @@ function aA(n, e, t, o, {
25849
25850
  delay: u
25850
25851
  }, void 0];
25851
25852
  }
25852
- function cA(n, e) {
25853
+ function uA(n, e) {
25853
25854
  const {
25854
25855
  event: t,
25855
25856
  delay: o,
@@ -25866,9 +25867,9 @@ function cA(n, e) {
25866
25867
  function Vu(n, e) {
25867
25868
  function t(o, r) {
25868
25869
  }
25869
- return t.type = "xstate.raise", t.event = n, t.id = e == null ? void 0 : e.id, t.delay = e == null ? void 0 : e.delay, t.resolve = aA, t.execute = cA, t;
25870
+ return t.type = "xstate.raise", t.event = n, t.id = e == null ? void 0 : e.id, t.delay = e == null ? void 0 : e.delay, t.resolve = cA, t.execute = uA, t;
25870
25871
  }
25871
- function uA(n, {
25872
+ function dA(n, {
25872
25873
  machine: e,
25873
25874
  context: t
25874
25875
  }, o, r) {
@@ -25907,7 +25908,7 @@ function uA(n, {
25907
25908
  }), a;
25908
25909
  };
25909
25910
  }
25910
- function dA(n, e, t, o, {
25911
+ function fA(n, e, t, o, {
25911
25912
  assignment: r
25912
25913
  }) {
25913
25914
  if (!e.context)
@@ -25915,7 +25916,7 @@ function dA(n, e, t, o, {
25915
25916
  const s = {}, i = {
25916
25917
  context: e.context,
25917
25918
  event: t.event,
25918
- spawn: uA(n, e, t.event, s),
25919
+ spawn: dA(n, e, t.event, s),
25919
25920
  self: n.self,
25920
25921
  system: n.system
25921
25922
  };
@@ -25939,7 +25940,7 @@ function dA(n, e, t, o, {
25939
25940
  function fo(n) {
25940
25941
  function e(t, o) {
25941
25942
  }
25942
- return e.type = "xstate.assign", e.assignment = n, e.resolve = dA, e;
25943
+ return e.type = "xstate.assign", e.assignment = n, e.resolve = fA, e;
25943
25944
  }
25944
25945
  const Lh = /* @__PURE__ */ new WeakMap();
25945
25946
  function Fo(n, e, t) {
@@ -25948,7 +25949,7 @@ function Fo(n, e, t) {
25948
25949
  [e]: t()
25949
25950
  }, Lh.set(n, o)), o[e];
25950
25951
  }
25951
- const fA = {}, Mr = (n) => typeof n == "string" ? {
25952
+ const hA = {}, Mr = (n) => typeof n == "string" ? {
25952
25953
  type: n
25953
25954
  } : typeof n == "function" ? "resolve" in n ? {
25954
25955
  type: n.type
@@ -25961,13 +25962,13 @@ class Yi {
25961
25962
  _parent: this,
25962
25963
  _key: r,
25963
25964
  _machine: this.machine
25964
- })) : fA, this.type === "compound" && !this.config.initial)
25965
+ })) : hA, this.type === "compound" && !this.config.initial)
25965
25966
  throw new Error(`No initial state specified for compound state node "#${this.id}". Try adding { initial: "${Object.keys(this.states)[0]}" } to the state config.`);
25966
25967
  this.history = this.config.history === !0 ? "shallow" : this.config.history || !1, this.entry = Wn(this.config.entry).slice(), this.exit = Wn(this.config.exit).slice(), this.meta = this.config.meta, this.output = this.type === "final" || !this.parent ? this.config.output : void 0, this.tags = Wn(e.tags).slice();
25967
25968
  }
25968
25969
  /** @internal */
25969
25970
  _initialize() {
25970
- this.transitions = P3(this), this.config.always && (this.always = jo(this.config.always).map((e) => Pn(this, c0, e))), Object.keys(this.states).forEach((e) => {
25971
+ this.transitions = L3(this), this.config.always && (this.always = jo(this.config.always).map((e) => Pn(this, c0, e))), Object.keys(this.states).forEach((e) => {
25971
25972
  this.states[e]._initialize();
25972
25973
  });
25973
25974
  }
@@ -26045,16 +26046,16 @@ class Yi {
26045
26046
  return Fo(this, "on", () => [...this.transitions].flatMap(([t, o]) => o.map((r) => [t, r])).reduce((t, [o, r]) => (t[o] = t[o] || [], t[o].push(r), t), {}));
26046
26047
  }
26047
26048
  get after() {
26048
- return Fo(this, "delayedTransitions", () => R3(this));
26049
+ return Fo(this, "delayedTransitions", () => P3(this));
26049
26050
  }
26050
26051
  get initial() {
26051
- return Fo(this, "initial", () => $3(this, this.config.initial));
26052
+ return Fo(this, "initial", () => B3(this, this.config.initial));
26052
26053
  }
26053
26054
  /** @internal */
26054
26055
  next(e, t) {
26055
26056
  const o = t.type, r = [];
26056
26057
  let s;
26057
- const i = Fo(this, `candidates-${o}`, () => N3(this, o));
26058
+ const i = Fo(this, `candidates-${o}`, () => R3(this, o));
26058
26059
  for (const l of i) {
26059
26060
  const {
26060
26061
  guard: a
@@ -26100,7 +26101,7 @@ ${d.message}`);
26100
26101
  return Array.from(t);
26101
26102
  }
26102
26103
  }
26103
- const hA = "#";
26104
+ const pA = "#";
26104
26105
  class Wu {
26105
26106
  constructor(e, t) {
26106
26107
  this.config = e, this.version = void 0, this.schemas = void 0, this.implementations = void 0, this.__xstatenode = !0, this.idMap = /* @__PURE__ */ new Map(), this.root = void 0, this.id = void 0, this.states = void 0, this.events = void 0, this.id = e.id || "(machine)", this.implementations = {
@@ -26111,7 +26112,7 @@ class Wu {
26111
26112
  }, this.version = this.config.version, this.schemas = this.config.schemas, this.transition = this.transition.bind(this), this.getInitialSnapshot = this.getInitialSnapshot.bind(this), this.getPersistedSnapshot = this.getPersistedSnapshot.bind(this), this.restoreSnapshot = this.restoreSnapshot.bind(this), this.start = this.start.bind(this), this.root = new Yi(e, {
26112
26113
  _key: this.id,
26113
26114
  _machine: this
26114
- }), this.root._initialize(), L3(this.root), this.states = this.root.states, this.events = this.root.events;
26115
+ }), this.root._initialize(), $3(this.root), this.states = this.root.states, this.events = this.root.events;
26115
26116
  }
26116
26117
  /**
26117
26118
  * Clones this state machine with the provided implementations.
@@ -26147,7 +26148,7 @@ class Wu {
26147
26148
  });
26148
26149
  }
26149
26150
  resolveState(e) {
26150
- const t = Q3(this.root, e.value), o = qi(Gi(this.root, t));
26151
+ const t = eA(this.root, e.value), o = qi(Gi(this.root, t));
26151
26152
  return Vs({
26152
26153
  _nodes: [...o],
26153
26154
  context: e.context || {},
@@ -26211,7 +26212,7 @@ class Wu {
26211
26212
  * `ActorRef`.
26212
26213
  */
26213
26214
  getInitialSnapshot(e, t) {
26214
- const o = f0(t), r = [], s = this._getPreInitialState(e, o, r), [i] = K3(this.root, s, e, o, r), {
26215
+ const o = f0(t), r = [], s = this._getPreInitialState(e, o, r), [i] = q3(this.root, s, e, o, r), {
26215
26216
  snapshot: l
26216
26217
  } = ba(i, o, e, r);
26217
26218
  return l;
@@ -26222,7 +26223,7 @@ class Wu {
26222
26223
  });
26223
26224
  }
26224
26225
  getStateNodeById(e) {
26225
- const t = Nu(e), o = t.slice(1), r = Ol(t[0]) ? t[0].slice(hA.length) : t[0], s = this.idMap.get(r);
26226
+ const t = Nu(e), o = t.slice(1), r = Ol(t[0]) ? t[0].slice(pA.length) : t[0], s = this.idMap.get(r);
26226
26227
  if (!s)
26227
26228
  throw new Error(`Child state node '#${r}' does not exist on machine '${this.id}'`);
26228
26229
  return Ji(s, o);
@@ -26234,7 +26235,7 @@ class Wu {
26234
26235
  return this.definition;
26235
26236
  }
26236
26237
  getPersistedSnapshot(e, t) {
26237
- return lA(e, t);
26238
+ return aA(e, t);
26238
26239
  }
26239
26240
  restoreSnapshot(e, t) {
26240
26241
  const o = {}, r = e.children;
@@ -26297,7 +26298,7 @@ class Wu {
26297
26298
  return u(a.context, o), a;
26298
26299
  }
26299
26300
  }
26300
- function pA(n, e, t, o, {
26301
+ function mA(n, e, t, o, {
26301
26302
  event: r
26302
26303
  }) {
26303
26304
  const s = typeof r == "function" ? r(t, o) : r;
@@ -26305,7 +26306,7 @@ function pA(n, e, t, o, {
26305
26306
  event: s
26306
26307
  }, void 0];
26307
26308
  }
26308
- function mA(n, {
26309
+ function gA(n, {
26309
26310
  event: e
26310
26311
  }) {
26311
26312
  n.defer(() => n.emit(e));
@@ -26313,12 +26314,12 @@ function mA(n, {
26313
26314
  function A0(n) {
26314
26315
  function e(t, o) {
26315
26316
  }
26316
- return e.type = "xstate.emit", e.event = n, e.resolve = pA, e.execute = mA, e;
26317
+ return e.type = "xstate.emit", e.event = n, e.resolve = mA, e.execute = gA, e;
26317
26318
  }
26318
26319
  let Sc = /* @__PURE__ */ function(n) {
26319
26320
  return n.Parent = "#_parent", n.Internal = "#_internal", n;
26320
26321
  }({});
26321
- function gA(n, e, t, o, {
26322
+ function yA(n, e, t, o, {
26322
26323
  to: r,
26323
26324
  event: s,
26324
26325
  id: i,
@@ -26353,10 +26354,10 @@ function gA(n, e, t, o, {
26353
26354
  delay: d
26354
26355
  }, void 0];
26355
26356
  }
26356
- function yA(n, e, t) {
26357
+ function vA(n, e, t) {
26357
26358
  typeof t.to == "string" && (t.to = e.children[t.to]);
26358
26359
  }
26359
- function vA(n, e) {
26360
+ function wA(n, e) {
26360
26361
  n.defer(() => {
26361
26362
  const {
26362
26363
  to: t,
@@ -26373,19 +26374,19 @@ function vA(n, e) {
26373
26374
  // at this point, in a deferred task, it should already be mutated by retryResolveSendTo
26374
26375
  // if it initially started as a string
26375
26376
  t,
26376
- o.type === g3 ? d0(n.self.id, o.data) : o
26377
+ o.type === y3 ? d0(n.self.id, o.data) : o
26377
26378
  );
26378
26379
  });
26379
26380
  }
26380
26381
  function ju(n, e, t) {
26381
26382
  function o(r, s) {
26382
26383
  }
26383
- return o.type = "xstate.sendTo", o.to = n, o.event = e, o.id = t == null ? void 0 : t.id, o.delay = t == null ? void 0 : t.delay, o.resolve = gA, o.retryResolve = yA, o.execute = vA, o;
26384
+ return o.type = "xstate.sendTo", o.to = n, o.event = e, o.id = t == null ? void 0 : t.id, o.delay = t == null ? void 0 : t.delay, o.resolve = yA, o.retryResolve = vA, o.execute = wA, o;
26384
26385
  }
26385
- function wA(n, e) {
26386
+ function kA(n, e) {
26386
26387
  return ju(Sc.Parent, n, e);
26387
26388
  }
26388
- function kA(n, e, t, o, {
26389
+ function bA(n, e, t, o, {
26389
26390
  collect: r
26390
26391
  }) {
26391
26392
  const s = [], i = function(a) {
@@ -26400,7 +26401,7 @@ function kA(n, e, t, o, {
26400
26401
  }, i.sendTo = (...l) => {
26401
26402
  s.push(ju(...l));
26402
26403
  }, i.sendParent = (...l) => {
26403
- s.push(wA(...l));
26404
+ s.push(kA(...l));
26404
26405
  }, i.spawnChild = (...l) => {
26405
26406
  s.push($u(...l));
26406
26407
  }, i.stopChild = (...l) => {
@@ -26416,12 +26417,12 @@ function kA(n, e, t, o, {
26416
26417
  system: n.system
26417
26418
  }, o), [e, void 0, s];
26418
26419
  }
26419
- function bA(n) {
26420
+ function xA(n) {
26420
26421
  function e(t, o) {
26421
26422
  }
26422
- return e.type = "xstate.enqueueActions", e.collect = n, e.resolve = kA, e;
26423
+ return e.type = "xstate.enqueueActions", e.collect = n, e.resolve = bA, e;
26423
26424
  }
26424
- function xA(n, e, t, o, {
26425
+ function SA(n, e, t, o, {
26425
26426
  value: r,
26426
26427
  label: s
26427
26428
  }) {
@@ -26430,7 +26431,7 @@ function xA(n, e, t, o, {
26430
26431
  label: s
26431
26432
  }, void 0];
26432
26433
  }
26433
- function SA({
26434
+ function CA({
26434
26435
  logger: n
26435
26436
  }, {
26436
26437
  value: e,
@@ -26438,7 +26439,7 @@ function SA({
26438
26439
  }) {
26439
26440
  t ? n(t, e) : n(e);
26440
26441
  }
26441
- function CA(n = ({
26442
+ function MA(n = ({
26442
26443
  context: t,
26443
26444
  event: o
26444
26445
  }) => ({
@@ -26447,9 +26448,9 @@ function CA(n = ({
26447
26448
  }), e) {
26448
26449
  function t(o, r) {
26449
26450
  }
26450
- return t.type = "xstate.log", t.value = n, t.label = e, t.resolve = xA, t.execute = SA, t;
26451
+ return t.type = "xstate.log", t.value = n, t.label = e, t.resolve = SA, t.execute = CA, t;
26451
26452
  }
26452
- function MA(n, e) {
26453
+ function TA(n, e) {
26453
26454
  return new Wu(n, e);
26454
26455
  }
26455
26456
  function I0({
@@ -26463,15 +26464,15 @@ function I0({
26463
26464
  assign: fo,
26464
26465
  sendTo: ju,
26465
26466
  raise: Vu,
26466
- log: CA,
26467
+ log: MA,
26467
26468
  cancel: Lu,
26468
26469
  stopChild: Al,
26469
- enqueueActions: bA,
26470
+ enqueueActions: xA,
26470
26471
  emit: A0,
26471
26472
  spawnChild: $u,
26472
26473
  createStateConfig: (s) => s,
26473
26474
  createAction: (s) => s,
26474
- createMachine: (s) => MA({
26475
+ createMachine: (s) => TA({
26475
26476
  ...s,
26476
26477
  schemas: n
26477
26478
  }, {
@@ -26498,9 +26499,9 @@ function I0({
26498
26499
  })
26499
26500
  };
26500
26501
  }
26501
- const TA = 4, $h = 1, Bh = "draw", EA = I0({
26502
+ const EA = 4, $h = 1, Bh = "draw", AA = I0({
26502
26503
  guards: {
26503
- isThresholdReached: ({ context: n, event: e }) => In.distance(n.pointingStartWorld, e.worldPosition) * e.cameraZoom >= TA
26504
+ isThresholdReached: ({ context: n, event: e }) => In.distance(n.pointingStartWorld, e.worldPosition) * e.cameraZoom >= EA
26504
26505
  },
26505
26506
  actions: {
26506
26507
  setPointingStart: fo({
@@ -26603,15 +26604,15 @@ const TA = 4, $h = 1, Bh = "draw", EA = I0({
26603
26604
  }
26604
26605
  }
26605
26606
  }
26606
- }), AA = tl({ phase: "capture", priority: 100 }, (n) => {
26607
+ }), IA = tl({ phase: "capture", priority: 100 }, (n) => {
26607
26608
  if (nl(n)) return;
26608
26609
  const e = Bt.read(n);
26609
26610
  if (e.leftMouseTool !== Bh || !e.heldSnapshot) return;
26610
26611
  const t = Bt.getButtons(n, Bh);
26611
26612
  if (t.length === 0) return;
26612
26613
  const o = Rc(n, t);
26613
- o.length !== 0 && l0.run(n, EA, o);
26614
- }), IA = tl({ phase: "update" }, (n) => {
26614
+ o.length !== 0 && l0.run(n, AA, o);
26615
+ }), OA = tl({ phase: "update" }, (n) => {
26615
26616
  if (nl(n)) return;
26616
26617
  const { store: e } = Io(n, No);
26617
26618
  od(n, Dc, () => {
@@ -26619,7 +26620,7 @@ const TA = 4, $h = 1, Bh = "draw", EA = I0({
26619
26620
  }), od(n, qs, () => {
26620
26621
  e.canRedo() && (Ta(n), e.redo());
26621
26622
  });
26622
- }), OA = [
26623
+ }), _A = [
26623
26624
  {
26624
26625
  name: "Figtree",
26625
26626
  displayName: "Figtree",
@@ -26645,17 +26646,17 @@ const TA = 4, $h = 1, Bh = "draw", EA = I0({
26645
26646
  previewImage: "https://storage.googleapis.com/scrolly-page-fonts/EBGaramond.png"
26646
26647
  }
26647
26648
  ];
26648
- function _A(n) {
26649
+ function DA(n) {
26649
26650
  return {
26650
26651
  name: No,
26651
26652
  resources: { store: n.store, getDefaults: n.getDefaults },
26652
26653
  singletons: [Ui, qr, l0],
26653
- systems: [i3, AA, c3, IA],
26654
+ systems: [l3, IA, u3, OA],
26654
26655
  setup(e) {
26655
26656
  n.doubleClickSnapshot && (qr.write(e).snapshot = n.doubleClickSnapshot);
26656
26657
  },
26657
- cursors: eE,
26658
- fonts: OA,
26658
+ cursors: tE,
26659
+ fonts: _A,
26659
26660
  keybinds: [
26660
26661
  { command: Dc.name, key: Ll.Z, mod: !0 },
26661
26662
  { command: qs.name, key: Ll.Y, mod: !0 },
@@ -26663,7 +26664,7 @@ function _A(n) {
26663
26664
  ]
26664
26665
  };
26665
26666
  }
26666
- const DA = /* @__PURE__ */ q({
26667
+ const NA = /* @__PURE__ */ q({
26667
26668
  __name: "ClipboardHandler",
26668
26669
  props: {
26669
26670
  options: {}
@@ -26672,12 +26673,12 @@ const DA = /* @__PURE__ */ q({
26672
26673
  const e = n, t = ge("containerRef", B(null));
26673
26674
  return hS(t, e.options), (o, r) => me(o.$slots, "default");
26674
26675
  }
26675
- }), NA = { class: "wov-user-cursors" }, RA = {
26676
+ }), RA = { class: "wov-user-cursors" }, PA = {
26676
26677
  class: "wov-cursor-svg",
26677
26678
  viewBox: "0 0 4.35 4.75",
26678
26679
  width: "20",
26679
26680
  height: "20"
26680
- }, PA = ["fill"], LA = "M2.39,2.88s-.04.01-.05.02c-.01,0-.02.01-.03.02,0,.01-.02.02-.03.05l-.77,1.44c-.07.13-.1.19-.14.2-.03.01-.07,0-.1-.01-.03-.02-.05-.09-.09-.23L.16.41c-.03-.13-.05-.19-.03-.23.02-.03.04-.05.08-.06.04,0,.1.02.21.08l3.59,1.94c.13.07.19.1.2.14.01.03,0,.07-.01.1-.02.03-.09.05-.23.09l-1.58.4Z", $A = /* @__PURE__ */ q({
26681
+ }, LA = ["fill"], $A = "M2.39,2.88s-.04.01-.05.02c-.01,0-.02.01-.03.02,0,.01-.02.02-.03.05l-.77,1.44c-.07.13-.1.19-.14.2-.03.01-.07,0-.1-.01-.03-.02-.05-.09-.09-.23L.16.41c-.03-.13-.05-.19-.03-.23.02-.03.04-.05.08-.06.04,0,.1.02.21.08l3.59,1.94c.13.07.19.1.2.14.01.03,0,.07-.01.1-.02.03-.09.05-.23.09l-1.58.4Z", BA = /* @__PURE__ */ q({
26681
26682
  __name: "UserCursors",
26682
26683
  props: {
26683
26684
  users: {},
@@ -26692,7 +26693,7 @@ const DA = /* @__PURE__ */ q({
26692
26693
  screenY: (o.position[1] - e.camera.top) * e.camera.zoom
26693
26694
  }))
26694
26695
  );
26695
- return (o, r) => (C(), A("div", NA, [
26696
+ return (o, r) => (C(), A("div", RA, [
26696
26697
  (C(!0), A(ie, null, Se(t.value, (s) => (C(), A("div", {
26697
26698
  key: s.sessionId,
26698
26699
  class: "wov-user-cursor",
@@ -26700,14 +26701,14 @@ const DA = /* @__PURE__ */ q({
26700
26701
  transform: `translate(${s.screenX}px, ${s.screenY}px)`
26701
26702
  })
26702
26703
  }, [
26703
- (C(), A("svg", RA, [
26704
+ (C(), A("svg", PA, [
26704
26705
  x("path", {
26705
26706
  fill: s.color,
26706
26707
  stroke: "#fff",
26707
26708
  "stroke-miterlimit": "10",
26708
26709
  "stroke-width": ".25",
26709
- d: LA
26710
- }, null, 8, PA)
26710
+ d: $A
26711
+ }, null, 8, LA)
26711
26712
  ])),
26712
26713
  x("span", {
26713
26714
  class: "wov-cursor-label",
@@ -26716,21 +26717,21 @@ const DA = /* @__PURE__ */ q({
26716
26717
  ], 4))), 128))
26717
26718
  ]));
26718
26719
  }
26719
- }), BA = {
26720
+ }), zA = {
26720
26721
  key: 0,
26721
26722
  class: "wov-offline-indicator"
26722
- }, zA = /* @__PURE__ */ q({
26723
+ }, FA = /* @__PURE__ */ q({
26723
26724
  __name: "OfflineIndicator",
26724
26725
  props: {
26725
26726
  isOnline: { type: Boolean }
26726
26727
  },
26727
26728
  setup(n) {
26728
- return (e, t) => n.isOnline ? j("", !0) : (C(), A("div", BA, "Working Offline"));
26729
+ return (e, t) => n.isOnline ? j("", !0) : (C(), A("div", zA, "Working Offline"));
26729
26730
  }
26730
- }), FA = {
26731
+ }), HA = {
26731
26732
  key: 0,
26732
26733
  class: "wov-version-mismatch-overlay"
26733
- }, HA = /* @__PURE__ */ q({
26734
+ }, VA = /* @__PURE__ */ q({
26734
26735
  __name: "VersionMismatch",
26735
26736
  props: {
26736
26737
  versionMismatch: { type: Boolean }
@@ -26739,7 +26740,7 @@ const DA = /* @__PURE__ */ q({
26739
26740
  function e() {
26740
26741
  window.location.reload();
26741
26742
  }
26742
- return (t, o) => n.versionMismatch ? (C(), A("div", FA, [
26743
+ return (t, o) => n.versionMismatch ? (C(), A("div", HA, [
26743
26744
  x("div", { class: "wov-version-mismatch-dialog" }, [
26744
26745
  o[0] || (o[0] = x("p", null, "A new version is available.", -1)),
26745
26746
  o[1] || (o[1] = x("p", null, "Please refresh the page to continue.", -1)),
@@ -26747,7 +26748,7 @@ const DA = /* @__PURE__ */ q({
26747
26748
  ])
26748
26749
  ])) : j("", !0);
26749
26750
  }
26750
- }), VA = /* @__PURE__ */ q({
26751
+ }), WA = /* @__PURE__ */ q({
26751
26752
  __name: "BackToContentButton",
26752
26753
  setup(n) {
26753
26754
  const { nextEditorTick: e } = Ce(), t = ot(Pe), o = ct((c) => c.with(Et, le, Uo)), r = B(0), s = ge(Ue);
@@ -26831,7 +26832,7 @@ const DA = /* @__PURE__ */ q({
26831
26832
  Sa(" Back to content ", -1)
26832
26833
  ])])) : j("", !0);
26833
26834
  }
26834
- }), WA = ["data-entity-id", "data-selected", "data-held-by-other", "data-hovered", "data-edited"], jA = /* @__PURE__ */ q({
26835
+ }), jA = ["data-entity-id", "data-selected", "data-held-by-other", "data-hovered", "data-edited"], UA = /* @__PURE__ */ q({
26835
26836
  __name: "WovenCanvasCore",
26836
26837
  props: {
26837
26838
  store: {},
@@ -26857,7 +26858,7 @@ const DA = /* @__PURE__ */ q({
26857
26858
  "transform-handle": YS,
26858
26859
  "arrow-handle": Wy,
26859
26860
  "arrow-terminal": qy,
26860
- "sticky-note": o3,
26861
+ "sticky-note": r3,
26861
26862
  eraser: Sv,
26862
26863
  "pen-stroke": $v,
26863
26864
  "arc-arrow": zy,
@@ -26962,15 +26963,15 @@ const DA = /* @__PURE__ */ q({
26962
26963
  });
26963
26964
  let Vt = 0, Wt = null, Je = null;
26964
26965
  const O0 = ((Yu = (Gu = g.store) == null ? void 0 : Gu.persistence) == null ? void 0 : Yu.documentId) ?? "default";
26965
- let Ge = new QE({
26966
- provider: g.assetProvider ?? new n3(),
26966
+ let Ge = new e3({
26967
+ provider: g.assetProvider ?? new o3(),
26967
26968
  documentId: O0
26968
26969
  });
26969
26970
  function _0(I) {
26970
26971
  var K;
26971
26972
  const U = [], P = g.pluginOptions;
26972
26973
  return (P == null ? void 0 : P.controls) !== !1 && U.push(Sy((P == null ? void 0 : P.controls) ?? {})), (P == null ? void 0 : P.eraser) !== !1 && U.push(wy((P == null ? void 0 : P.eraser) || void 0)), (P == null ? void 0 : P.pen) !== !1 && U.push(ky()), (P == null ? void 0 : P.arrows) !== !1 && U.push(V0((P == null ? void 0 : P.arrows) || void 0)), (P == null ? void 0 : P.tapes) !== !1 && U.push(Cy()), U.push(
26973
- _A({
26974
+ DA({
26974
26975
  store: I,
26975
26976
  doubleClickSnapshot: g.doubleClickSnapshot,
26976
26977
  // Live read of the creation-defaults registry so the placement systems can
@@ -27303,7 +27304,7 @@ const DA = /* @__PURE__ */ q({
27303
27304
  key: 0,
27304
27305
  background: n.background
27305
27306
  }, () => [
27306
- Z(zT, { background: n.background }, null, 8, ["background"])
27307
+ Z(FT, { background: n.background }, null, 8, ["background"])
27307
27308
  ]) : j("", !0),
27308
27309
  (C(), A(ie, null, Se(k, (P) => (C(), A(ie, {
27309
27310
  key: P.class
@@ -27337,7 +27338,7 @@ const DA = /* @__PURE__ */ q({
27337
27338
  ref_for: !0
27338
27339
  }, K.value), null, 16)) : j("", !0)
27339
27340
  ])
27340
- ], 12, WA)) : j("", !0)
27341
+ ], 12, jA)) : j("", !0)
27341
27342
  ], 64))), 128))
27342
27343
  ], 6)
27343
27344
  ], 64))), 64)),
@@ -27347,13 +27348,13 @@ const DA = /* @__PURE__ */ q({
27347
27348
  currentSessionId: F(M).sessionId,
27348
27349
  camera: fe.value
27349
27350
  }, () => [
27350
- Z($A, {
27351
+ Z(BA, {
27351
27352
  users: E.value,
27352
27353
  "current-session-id": F(M).sessionId,
27353
27354
  camera: fe.value
27354
27355
  }, null, 8, ["users", "current-session-id", "camera"])
27355
27356
  ]) : j("", !0),
27356
- b.value ? (C(), ee(UT, { key: 2 }, {
27357
+ b.value ? (C(), ee(KT, { key: 2 }, {
27357
27358
  default: se((P) => [
27358
27359
  me(I.$slots, "floating-menu", qh(Jh(P)))
27359
27360
  ]),
@@ -27363,35 +27364,35 @@ const DA = /* @__PURE__ */ q({
27363
27364
  key: 3,
27364
27365
  users: E.value
27365
27366
  }, () => [
27366
- Z(zE, { users: E.value }, null, 8, ["users"])
27367
+ Z(FE, { users: E.value }, null, 8, ["users"])
27367
27368
  ]) : j("", !0),
27368
27369
  b.value ? me(I.$slots, "toolbar", { key: 4 }, () => [
27369
- Z(DE)
27370
+ Z(NE)
27370
27371
  ]) : j("", !0),
27371
27372
  b.value ? me(I.$slots, "default", { key: 5 }) : j("", !0),
27372
27373
  me(I.$slots, "offline-indicator", { isOnline: V.value }, () => [
27373
- Z(zA, { "is-online": V.value }, null, 8, ["is-online"])
27374
+ Z(FA, { "is-online": V.value }, null, 8, ["is-online"])
27374
27375
  ]),
27375
27376
  me(I.$slots, "version-mismatch", { versionMismatch: Y.value }, () => [
27376
- Z(HA, { "version-mismatch": Y.value }, null, 8, ["version-mismatch"])
27377
+ Z(VA, { "version-mismatch": Y.value }, null, 8, ["version-mismatch"])
27377
27378
  ]),
27378
27379
  me(I.$slots, "back-to-content", {}, () => [
27379
- Z(VA)
27380
+ Z(WA)
27380
27381
  ]),
27381
27382
  me(I.$slots, "loading", { isLoading: re.value }, () => [
27382
- Z(JT, { "is-loading": re.value }, null, 8, ["is-loading"])
27383
+ Z(GT, { "is-loading": re.value }, null, 8, ["is-loading"])
27383
27384
  ]),
27384
27385
  b.value ? me(I.$slots, "file-drop-zone", { key: 6 }, () => [
27385
- Z(FT)
27386
+ Z(HT)
27386
27387
  ]) : j("", !0),
27387
- b.value ? (C(), ee(DA, {
27388
+ b.value ? (C(), ee(NA, {
27388
27389
  key: 7,
27389
27390
  options: g.copyPaste
27390
27391
  }, null, 8, ["options"])) : j("", !0),
27391
27392
  Z(wM)
27392
27393
  ], 512));
27393
27394
  }
27394
- }), nI = /* @__PURE__ */ q({
27395
+ }), oI = /* @__PURE__ */ q({
27395
27396
  inheritAttrs: !1,
27396
27397
  __name: "WovenCanvas",
27397
27398
  setup(n, { expose: e }) {
@@ -27403,7 +27404,7 @@ const DA = /* @__PURE__ */ q({
27403
27404
  }
27404
27405
  }), (o, r) => (C(), ee(K0, null, {
27405
27406
  default: se(() => [
27406
- Z(jA, Xo({
27407
+ Z(UA, Xo({
27407
27408
  ref_key: "core",
27408
27409
  ref: t
27409
27410
  }, o.$attrs), q0({ _: 2 }, [
@@ -27422,7 +27423,7 @@ const DA = /* @__PURE__ */ q({
27422
27423
  export {
27423
27424
  Qh as ARROW_HEADS,
27424
27425
  zy as ArcArrow,
27425
- tI as ArcArrowTool,
27426
+ nI as ArcArrowTool,
27426
27427
  Wy as ArrowHandle,
27427
27428
  $n as ArrowHead,
27428
27429
  uh as ArrowHeadButton,
@@ -27430,51 +27431,52 @@ export {
27430
27431
  ZC as ArrowThicknessButton,
27431
27432
  eM as AspectLockButton,
27432
27433
  sM as BlockOperationsButton,
27433
- eE as CURSORS,
27434
- zT as CanvasBackground,
27435
- sI as CanvasComponentDef,
27436
- iI as CanvasSingletonDef,
27437
- lI as CanvasStore,
27434
+ tE as CURSORS,
27435
+ FT as CanvasBackground,
27436
+ iI as CanvasComponentDef,
27437
+ lI as CanvasSingletonDef,
27438
+ aI as CanvasStore,
27438
27439
  vM as ColorButton,
27439
27440
  fM as ColorPicker,
27440
27441
  ko as CursorKind,
27442
+ ZM as DEFAULT_FONT_SIZE_OPTIONS,
27441
27443
  No as EDITING_PLUGIN_NAME,
27442
27444
  Au as EditableText,
27443
- _A as EditingPlugin,
27445
+ DA as EditingPlugin,
27444
27446
  Qy as ElbowArrow,
27445
- cE as ElbowArrowTool,
27447
+ uE as ElbowArrowTool,
27446
27448
  ov as EmbedBlock,
27447
- EE as EmbedTool,
27449
+ AE as EmbedTool,
27448
27450
  Sv as Eraser,
27449
- iE as EraserTool,
27450
- FT as FileDropZone,
27451
- UT as FloatingMenu,
27452
- WT as FloatingMenuBar,
27451
+ lE as EraserTool,
27452
+ HT as FileDropZone,
27453
+ KT as FloatingMenu,
27454
+ jT as FloatingMenuBar,
27453
27455
  Cv as FrameBlock,
27454
- oE as HandTool,
27456
+ rE as HandTool,
27455
27457
  _t as IconChevronDown,
27456
27458
  Ov as ImageBlock,
27457
- uE as ImageTool,
27458
- JT as LoadingOverlay,
27459
+ dE as ImageTool,
27460
+ GT as LoadingOverlay,
27459
27461
  Po as MenuButton,
27460
27462
  bt as MenuDropdown,
27461
27463
  wM as MenuTooltip,
27462
27464
  $v as PenStroke,
27463
27465
  xM as PenStrokeThicknessButton,
27464
- lE as PenTool,
27466
+ aE as PenTool,
27465
27467
  Ys as SHAPES,
27466
- nE as SelectTool,
27468
+ oE as SelectTool,
27467
27469
  zv as SelectionBox,
27468
27470
  zS as ShapeBlock,
27469
27471
  IM as ShapeFillColorButton,
27470
27472
  PM as ShapeKindButton,
27471
27473
  qM as ShapeStrokeColorButton,
27472
- sE as ShapeTool,
27473
- rE as StickyNoteTool,
27474
- aI as Synced,
27474
+ iE as ShapeTool,
27475
+ sE as StickyNoteTool,
27476
+ cI as Synced,
27475
27477
  VS as TapeBlock,
27476
27478
  XM as TapeImageButton,
27477
- IE as TapeTool,
27479
+ OE as TapeTool,
27478
27480
  fh as TextAlignmentButton,
27479
27481
  jS as TextBlock,
27480
27482
  hh as TextBoldButton,
@@ -27483,24 +27485,24 @@ export {
27483
27485
  mh as TextFontSizeButton,
27484
27486
  gh as TextItalicButton,
27485
27487
  vh as TextLinkButton,
27486
- aE as TextTool,
27488
+ cE as TextTool,
27487
27489
  yh as TextUnderlineButton,
27488
- DE as Toolbar,
27490
+ NE as Toolbar,
27489
27491
  Ht as ToolbarButton,
27490
27492
  KS as TransformBox,
27491
27493
  YS as TransformHandle,
27492
- zE as UserPresence,
27494
+ FE as UserPresence,
27493
27495
  Ue as WOVEN_CANVAS_KEY,
27494
- nI as WovenCanvas,
27495
- HT as computeCommonComponents,
27496
- VT as computeShowOperations,
27497
- cI as defineCanvasComponent,
27498
- uI as defineCanvasSingleton,
27496
+ oI as WovenCanvas,
27497
+ VT as computeCommonComponents,
27498
+ WT as computeShowOperations,
27499
+ uI as defineCanvasComponent,
27500
+ dI as defineCanvasSingleton,
27499
27501
  Gr as getArrowHead,
27500
27502
  De as useComponent,
27501
27503
  Sn as useComponents,
27502
27504
  Ce as useEditorContext,
27503
- hT as useFonts,
27505
+ pT as useFonts,
27504
27506
  jg as useImageCreation,
27505
27507
  gS as useQuery,
27506
27508
  ot as useSingleton,