react-sync-board 1.4.0 → 1.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -14,12 +14,19 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
14
14
  }, S = (e, t, n) => (n = e == null ? {} : m(v(e)), x(t || !e || !e.__esModule || !y.call(e, "default") ? h(n, "default", {
15
15
  value: e,
16
16
  enumerable: !0
17
- }) : n, e)), C = (e = 21) => crypto.getRandomValues(new Uint8Array(e)).reduce((e, t) => (t &= 63, e += t < 36 ? t.toString(36) : t < 62 ? (t - 26).toString(36).toUpperCase() : t > 62 ? "-" : "_", e), ""), w = class {
17
+ }) : n, e)), C = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict", w = (e = 21) => {
18
+ let t = "", n = crypto.getRandomValues(new Uint8Array(e |= 0));
19
+ for (; e--;) t += C[n[e] & 63];
20
+ return t;
21
+ }, ee = 128, T = (e) => typeof e == "string" && e.length > 0 && e.length <= ee && !/[\u0000-\u001f\u007f]/u.test(e), E = (e, t) => {
22
+ if (!T(e)) throw Error(`Invalid ${t}`);
23
+ }, D = class {
18
24
  constructor(e, t, n = null) {
19
25
  this._socket = e, this.userId = n, this.room = t, this.toUnregister = [() => {
20
26
  this._socket.off(`${this.room}.isMaster`), this._socket.off(`${this.room}.roomJoined`), this._socket.off(`${this.room}._call`);
21
- }], this._left = !1, this.registeredRPC = {}, this._socket.on(`${this.room}._call`, async ({ callId: t, name: n, params: r }) => {
27
+ }], this._left = !1, this.registeredRPC = Object.create(null), this._socket.on(`${this.room}._call`, async ({ callId: t, name: n, params: r }) => {
22
28
  try {
29
+ if (!Object.hasOwn(this.registeredRPC, n)) throw Error(`Function ${n} is not registered`);
23
30
  let i = await this.registeredRPC[n](r);
24
31
  e.emit(`${this.room}._result.${t}`, { ok: i || null });
25
32
  } catch (n) {
@@ -28,10 +35,10 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
28
35
  });
29
36
  }
30
37
  async _callServerRPC(e, t) {
31
- let n = C();
38
+ let n = w();
32
39
  return new Promise((r, i) => {
33
40
  this._socket.once(`${this.room}._result.${n}`, (e) => {
34
- e.hasOwnProperty("ok") ? r(e.ok) : i(e.err);
41
+ Object.hasOwn(e, "ok") ? r(e.ok) : i(e.err);
35
42
  }), this._socket.emit(`${this.room}._call`, {
36
43
  callId: n,
37
44
  name: e,
@@ -45,13 +52,14 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
45
52
  }), this._socket.emit(`${this.room}.leave`);
46
53
  }
47
54
  publish(e, t, n = !1) {
48
- this._socket.emit(`${this.room}.publish`, {
55
+ E(e, "event name"), this._socket.emit(`${this.room}.publish`, {
49
56
  name: e,
50
57
  params: t,
51
58
  self: n
52
59
  });
53
60
  }
54
61
  subscribe(e, t) {
62
+ if (E(e, "event name"), typeof t != "function") throw TypeError("Invalid callback");
55
63
  this._socket.on(`${this.room}.${e}`, t);
56
64
  let n = () => {
57
65
  this._socket.off(`${this.room}.${e}`, t);
@@ -59,6 +67,13 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
59
67
  return this.toUnregister.push(n), n;
60
68
  }
61
69
  async register(e, t, { invoke: n = "single" } = {}) {
70
+ if (E(e, "RPC name"), typeof t != "function") throw TypeError("Invalid callback");
71
+ if (![
72
+ "single",
73
+ "first",
74
+ "last",
75
+ "random"
76
+ ].includes(n)) throw Error("Invalid invoke mode");
62
77
  this.registeredRPC[e] = t, await this._callServerRPC("register", {
63
78
  name: e,
64
79
  invoke: n
@@ -74,8 +89,9 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
74
89
  params: t
75
90
  });
76
91
  }
77
- }, ee = ({ socket: e, room: t, onJoined: n = () => {}, onMaster: r = () => {}, userId: i = null }) => {
78
- let a = new w(e, t, i);
92
+ }, te = ({ socket: e, room: t, onJoined: n = () => {}, onMaster: r = () => {}, userId: i = null }) => {
93
+ E(t, "room name"), i != null && E(i, "user id");
94
+ let a = new D(e, t, i);
79
95
  return new Promise((o) => {
80
96
  let s = !0;
81
97
  e.on(`${t}.isMaster`, () => {
@@ -92,7 +108,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
92
108
  userId: i
93
109
  });
94
110
  });
95
- }, T = e.createContext(), te = () => /* @__PURE__ */ a("div", {
111
+ }, O = e.createContext(), ne = () => /* @__PURE__ */ a("div", {
96
112
  style: {
97
113
  position: "absolute",
98
114
  top: "0",
@@ -103,34 +119,36 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
103
119
  alignItems: "center"
104
120
  },
105
121
  children: /* @__PURE__ */ a("h2", { children: "🌀 Loading..." })
106
- }), E = ({ socket: t, room: n, channel: i = "default", LoadingComponent: o = te, children: s }) => {
107
- let [c, l] = e.useState(!1), [u, d] = e.useState(!1), [f, p] = e.useState(null), m = e.useRef(null), h = e.useRef(!1), g = r(T), _ = e.useRef(!1);
122
+ }), re = ({ socket: t, room: n, channel: i = "default", LoadingComponent: o = ne, children: s }) => {
123
+ let [c, l] = e.useState(!1), [u, d] = e.useState(!1), [f, p] = e.useState(null), m = e.useRef(null), h = e.useRef(!1), g = r(O), _ = e.useRef(!1);
108
124
  return e.useEffect(() => (h.current = !0, () => {
109
125
  h.current = !1;
110
126
  }), []), e.useEffect(() => {
111
- if (!t) return null;
127
+ if (!t) return;
112
128
  let e = () => {
113
129
  console.log(`Disconnected from ${i}…`), h.current && (l(!1), d(!1));
114
130
  };
115
131
  return t.on("disconnect", e), () => {
116
132
  t.off("disconnect", e);
117
133
  };
118
- }, [i, t]), e.useEffect(() => t ? (t.connected || t.connect(), console.log(`Try to connect to wire ${n} on channel ${i}`), _.current || (_.current = !0, ee({
119
- socket: t,
120
- room: n,
121
- onMaster: () => {
122
- console.log(`Is now master on channel ${i}…`), h.current && d(!0);
123
- },
124
- onJoined: (e) => {
125
- console.log(`Connected on channel ${i}…`), m.current = e, h.current && (p(e), l(!0));
126
- }
127
- })), () => {
128
- m.current?.leave();
129
- }) : null, [
134
+ }, [i, t]), e.useEffect(() => {
135
+ if (t) return t.connected || t.connect(), console.log(`Try to connect to wire ${n} on channel ${i}`), _.current || (_.current = !0, te({
136
+ socket: t,
137
+ room: n,
138
+ onMaster: () => {
139
+ console.log(`Is now master on channel ${i}…`), h.current && d(!0);
140
+ },
141
+ onJoined: (e) => {
142
+ console.log(`Connected on channel ${i}…`), m.current = e, h.current && (p(e), l(!0));
143
+ }
144
+ })), () => {
145
+ m.current?.leave();
146
+ };
147
+ }, [
130
148
  i,
131
149
  n,
132
150
  t
133
- ]), !c || !f ? /* @__PURE__ */ a(o, {}) : /* @__PURE__ */ a(T.Provider, {
151
+ ]), !c || !f ? /* @__PURE__ */ a(o, {}) : /* @__PURE__ */ a(O.Provider, {
134
152
  value: {
135
153
  ...g,
136
154
  [i]: {
@@ -142,34 +160,34 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
142
160
  },
143
161
  children: s
144
162
  });
145
- }, D = (e = "default") => (r(T) || {})[e], O = (e, t) => e.classList && e.classList.contains(t), ne = (e, t) => O(e, t) ? e : e.parentNode ? ne(e.parentNode, t) : !1, re = ([e, t], [n, r]) => {
163
+ }, k = (e = "default") => (r(O) || {})[e], A = (e, t) => e.classList && e.classList.contains(t), j = (e, t) => A(e, t) ? e : e.parentNode ? j(e.parentNode, t) : !1, ie = ([e, t], [n, r]) => {
146
164
  let i = Math.abs(e - n), a = Math.abs(t - r);
147
165
  return Math.hypot(i, a);
148
- }, ie = (e, t, n) => {
166
+ }, ae = (e, t, n) => {
149
167
  let r = n * Math.PI / 180;
150
168
  return [e * Math.cos(r) - t * Math.sin(r), e * Math.sin(r) + t * Math.cos(r)];
151
- }, k = ([e, t], { scale: n, rotate: r, translateX: i, translateY: a }) => ie((e - i) / n, (t - a) / n, -r), A = ([e, t], { scale: n, rotate: r, translateX: i, translateY: a }) => {
152
- let [o, s] = ie(e, t, r);
169
+ }, oe = ([e, t], { scale: n, rotate: r, translateX: i, translateY: a }) => ae((e - i) / n, (t - a) / n, -r), M = ([e, t], { scale: n, rotate: r, translateX: i, translateY: a }) => {
170
+ let [o, s] = ae(e, t, r);
153
171
  return [o * n + i, s * n + a];
154
- }, j = (e, t) => e.x > t.left && e.x < t.left + t.width && e.y > t.top && e.y < t.top + t.height, ae = (e, t) => Array.from(e.querySelectorAll(".corner")).every((e) => {
172
+ }, N = (e, t) => e.x > t.left && e.x < t.left + t.width && e.y > t.top && e.y < t.top + t.height, se = (e, t) => Array.from(e.querySelectorAll(".corner")).every((e) => {
155
173
  let { top: n, left: r } = e.getBoundingClientRect();
156
- return j({
174
+ return N({
157
175
  x: r,
158
176
  y: n
159
177
  }, t);
160
- }), oe = (e, t) => ae(e, t.getBoundingClientRect()), M = (e, t) => {
178
+ }), ce = (e, t) => se(e, t.getBoundingClientRect()), P = (e, t) => {
161
179
  try {
162
180
  return document.getElementById(`${e}__${t}`);
163
181
  } catch {
164
182
  console.error(`Error while getting item with id ${t} inside wrapper`, e);
165
183
  return;
166
184
  }
167
- }, N = (e) => {
185
+ }, F = (e) => {
168
186
  let t = e?.dataset?.id;
169
187
  return t || console.error("getIdFromElem call fails", e, JSON.stringify(e?.dataset), e?.dataset?.id), t;
170
- }, se = (e, t) => {
188
+ }, le = (e, t) => {
171
189
  let n = e.reduce((e, n) => {
172
- let r = M(t, n);
190
+ let r = P(t, n);
173
191
  if (!r) return e || null;
174
192
  let { left: i, right: a, top: o, bottom: s } = r.getBoundingClientRect(), c;
175
193
  return c = e || {
@@ -180,10 +198,10 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
180
198
  }, c.left = Math.min(i, c.left), c.top = Math.min(o, c.top), c.right = Math.max(a, c.right), c.bottom = Math.max(s, c.bottom), c;
181
199
  }, null);
182
200
  return n && (n.width = n.right - n.left, n.height = n.bottom - n.top, n);
183
- }, ce = (e, t, n = null) => (n === null && (n = /* @__PURE__ */ new Set()), !Array.isArray(t) || t.length === 0 ? [] : t.map((t) => n.has(t) ? [] : (n.add(t), e[t] ? [t, ...ce(e, e[t].linkedItems, n)] : [])).flat()), le = (e, t, n) => {
184
- let r = new Set(ce(e, n));
201
+ }, ue = (e, t, n = null) => (n === null && (n = /* @__PURE__ */ new Set()), !Array.isArray(t) || t.length === 0 ? [] : t.map((t) => n.has(t) ? [] : (n.add(t), e[t] ? [t, ...ue(e, e[t].linkedItems, n)] : [])).flat()), de = (e, t, n) => {
202
+ let r = new Set(ue(e, n));
185
203
  return t.filter((e) => r.has(e));
186
- }, ue = ({ x: e, y: t, width: n, height: r }, { type: i = "grid", size: a = 1, offset: o = {
204
+ }, fe = ({ x: e, y: t, width: n, height: r }, { type: i = "grid", size: a = 1, offset: o = {
187
205
  x: 0,
188
206
  y: 0
189
207
  } }) => {
@@ -204,7 +222,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
204
222
  x: l + o.x - n / 2,
205
223
  y: u + o.y - r / 2
206
224
  };
207
- }, de = /* @__PURE__ */ "#037758.#99092a.#067070.#c6650f.#008726.#3d7004.#348402.#057f58.#b58612.#c44c01.#0a7704.#0e910e.#027377.#c99e02.#054160.#157a01.#b10de2.#0d6289.#bc5d03.#ba0cd1.#d39f10.#0c4c7a.#460782.#a51f10.#cecb10.#9b0943.#607f0c.#007a4b.#bf0daa.#af0ad8".split("."), fe = () => de[Math.floor(Math.random() * de.length)], pe = ({ wire: e, storeName: t, noSync: n = [], defaultValue: r }, i) => (a, o, s) => {
225
+ }, pe = /* @__PURE__ */ "#037758.#99092a.#067070.#c6650f.#008726.#3d7004.#348402.#057f58.#b58612.#c44c01.#0a7704.#0e910e.#027377.#c99e02.#054160.#157a01.#b10de2.#0d6289.#bc5d03.#ba0cd1.#d39f10.#0c4c7a.#460782.#a51f10.#cecb10.#9b0943.#607f0c.#007a4b.#bf0daa.#af0ad8".split("."), me = () => pe[Math.floor(Math.random() * pe.length)], I = ({ wire: e, storeName: t, noSync: n = [], defaultValue: r }, i) => (a, o, s) => {
208
226
  a({ ready: !1 });
209
227
  let c = [];
210
228
  (async () => {
@@ -228,7 +246,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
228
246
  return d.unsub = () => {
229
247
  c.forEach((e) => e());
230
248
  }, d;
231
- }, me = e.createContext(), he = (e, t) => ({
249
+ }, he = e.createContext(), ge = (e, t) => ({
232
250
  items: {},
233
251
  getItems: () => t().items,
234
252
  setItems: (t) => e({ items: t }),
@@ -251,7 +269,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
251
269
  });
252
270
  }), { items: r };
253
271
  })
254
- }), ge = (e, t) => ({
272
+ }), _e = (e, t) => ({
255
273
  itemIds: [],
256
274
  setItemIds: (t) => e({ itemIds: t }),
257
275
  getItemIds: () => t().itemIds,
@@ -268,7 +286,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
268
286
  return r[t] = n, { itemIds: r };
269
287
  }),
270
288
  updateManyItemIds: (t) => e((e) => ({ itemIds: e.itemIds.map((e, n) => t[n] === void 0 ? e : t[n]) }))
271
- }), _e = (e, t) => ({
289
+ }), ve = (e, t) => ({
272
290
  removeItemsById: (t) => e((e) => ({
273
291
  itemIds: e.itemIds.filter((e) => !t.includes(e)),
274
292
  items: Object.fromEntries(Object.entries(e.items).filter(([e]) => !t.includes(e)))
@@ -295,7 +313,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
295
313
  itemIds: r
296
314
  };
297
315
  })
298
- }), ve = (e, t) => ({
316
+ }), ye = (e, t) => ({
299
317
  boardConfig: {},
300
318
  getBoardConfig: () => t().boardConfig,
301
319
  setBoardConfig: (t) => e({ boardConfig: t }),
@@ -303,7 +321,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
303
321
  ...e.boardConfig,
304
322
  ...t
305
323
  } }))
306
- }), ye = (e, t) => ({
324
+ }), be = (e, t) => ({
307
325
  session: {},
308
326
  getSessionInfo: () => t().session,
309
327
  setSessionInfo: (t) => e({ session: t }),
@@ -311,34 +329,34 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
311
329
  ...e.session,
312
330
  ...t
313
331
  } }))
314
- }), be = ({ storeName: t, children: n, defaultValue: r }) => {
315
- let { wire: i } = D("room"), [o, c] = e.useState(!1), [l] = e.useState(() => s(pe({
332
+ }), xe = ({ storeName: t, children: n, defaultValue: r }) => {
333
+ let { wire: i } = k("room"), [o, c] = e.useState(!1), [l] = e.useState(() => s(I({
316
334
  wire: i,
317
335
  storeName: t,
318
336
  defaultValue: r
319
337
  }, (...e) => ({
320
- ...he(...e),
321
338
  ...ge(...e),
322
339
  ..._e(...e),
323
340
  ...ve(...e),
324
- ...ye(...e)
341
+ ...ye(...e),
342
+ ...be(...e)
325
343
  }))));
326
344
  return e.useEffect(() => {
327
345
  let e = l.subscribe((t) => {
328
346
  t.ready && (e(), c(!0));
329
347
  });
330
- }, [l]), o ? /* @__PURE__ */ a(me.Provider, {
348
+ }, [l]), o ? /* @__PURE__ */ a(he.Provider, {
331
349
  value: l,
332
350
  children: n
333
351
  }) : null;
334
- }, P = (e) => {
335
- let t = r(me);
352
+ }, L = (e) => {
353
+ let t = r(he);
336
354
  return c(t, e, l);
337
- }, xe = () => {
338
- let [t, n] = P((e) => [e.itemIds, e.items]);
339
- return e.useMemo(() => t.map((e) => n[e]), [t, n]);
340
355
  }, Se = () => {
341
- let [t, n, r] = P((e) => [
356
+ let [t, n] = L((e) => [e.itemIds, e.items]);
357
+ return e.useMemo(() => t.map((e) => n[e]), [t, n]);
358
+ }, Ce = () => {
359
+ let [t, n, r] = L((e) => [
342
360
  e.items,
343
361
  e.itemIds,
344
362
  e.getItemList
@@ -353,7 +371,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
353
371
  n,
354
372
  r
355
373
  ]), i;
356
- }, Ce = 5e4, we = e.createContext(), Te = (e, t) => ({
374
+ }, we = 5e4, Te = e.createContext(), Ee = (e, t) => ({
357
375
  config: {
358
376
  itemTemplates: {},
359
377
  actions: {},
@@ -364,14 +382,14 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
364
382
  radius: 0
365
383
  },
366
384
  boardWrapperRect: {},
367
- boardSize: Ce
385
+ boardSize: we
368
386
  },
369
387
  updateConfiguration: (t) => e((e) => ({ config: {
370
388
  ...e.config,
371
389
  ...t
372
390
  } })),
373
391
  getConfiguration: () => t().config
374
- }), Ee = (e, t) => ({
392
+ }), De = (e, t) => ({
375
393
  boardState: {
376
394
  movingItems: !1,
377
395
  selecting: !1,
@@ -387,7 +405,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
387
405
  ...t
388
406
  } })),
389
407
  getBoardState: () => t().boardState
390
- }), De = (e, t) => ({
408
+ }), Oe = (e, t) => ({
391
409
  interactions: {},
392
410
  getInteractions: () => t().interactions,
393
411
  register: (t, n) => e((e) => {
@@ -409,7 +427,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
409
427
  setTimeout(() => e(n), 0);
410
428
  });
411
429
  }
412
- }), Oe = (e, t) => ({
430
+ }), ke = (e, t) => ({
413
431
  selection: [],
414
432
  setSelection: (t) => e((e) => JSON.stringify(e.selection) === JSON.stringify(t) ? {} : { selection: t }),
415
433
  getSelection: () => t().selection,
@@ -425,34 +443,34 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
425
443
  let n = e.selectionBox;
426
444
  return !n || !t || n.top !== t.top || n.left !== t.left || n.width !== t.width || n.height !== t.height ? { selectionBox: t } : {};
427
445
  })
428
- }), ke = ({ children: t }) => {
446
+ }), Ae = ({ children: t }) => {
429
447
  let [n] = e.useState(() => s((...e) => ({
430
- ...Te(...e),
431
448
  ...Ee(...e),
432
449
  ...De(...e),
433
- ...Oe(...e)
450
+ ...Oe(...e),
451
+ ...ke(...e)
434
452
  })));
435
- return /* @__PURE__ */ a(we.Provider, {
453
+ return /* @__PURE__ */ a(Te.Provider, {
436
454
  value: n,
437
455
  children: t
438
456
  });
439
- }, F = (e) => {
440
- let t = r(we);
457
+ }, R = (e) => {
458
+ let t = r(Te);
441
459
  return c(t, e, l);
442
- }, Ae = () => {
443
- let [e] = F((e) => [e.selection]);
444
- return e;
445
460
  }, je = () => {
446
- let [e] = F((e) => [e.getSelection]);
461
+ let [e] = R((e) => [e.selection]);
462
+ return e;
463
+ }, Me = () => {
464
+ let [e] = R((e) => [e.getSelection]);
447
465
  return e;
448
- }, Me = 1e3, Ne = .8, I = !1, L = () => {
449
- let [t, n, r, i, a] = F((e) => [
466
+ }, Ne = 1e3, Pe = .8, z = !1, B = () => {
467
+ let [t, n, r, i, a] = R((e) => [
450
468
  e.getBoardState,
451
469
  e.updateBoardState,
452
470
  e.config.itemExtent,
453
471
  e.getConfiguration,
454
472
  e.updateConfiguration
455
- ]), o = e.useRef([.15, 5]), [s] = P((e) => [e.getItemList]), c = e.useCallback(() => {
473
+ ]), o = e.useRef([.15, 5]), [s] = L((e) => [e.getItemList]), c = e.useCallback(() => {
456
474
  let { translateX: e, translateY: n, scale: r, rotate: i } = t();
457
475
  return {
458
476
  translateX: e,
@@ -460,9 +478,9 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
460
478
  scale: r,
461
479
  rotate: i
462
480
  };
463
- }, [t]), l = e.useCallback((e, n) => k([e, n], t()), [t]), d = e.useCallback((e, n) => A([e, n], t()), [t]), f = e.useCallback((e, n) => {
481
+ }, [t]), l = e.useCallback((e, n) => oe([e, n], t()), [t]), d = e.useCallback((e, n) => M([e, n], t()), [t]), f = e.useCallback((e, n) => {
464
482
  let { scale: r, rotate: i } = t();
465
- return k([e, n], {
483
+ return oe([e, n], {
466
484
  translateX: 0,
467
485
  translateY: 0,
468
486
  rotate: i,
@@ -473,9 +491,9 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
473
491
  ...r,
474
492
  ...e(r)
475
493
  };
476
- I && console.log("New expected values: ", i, a, o, s);
494
+ z && console.log("New expected values: ", i, a, o, s);
477
495
  let c = p(o), l = i, u = a;
478
- I && console.log("New fixed values: ", l, u, c, s), n({
496
+ z && console.log("New fixed values: ", l, u, c, s), n({
479
497
  translateX: Number.isFinite(l) ? l : r.translateX,
480
498
  translateY: Number.isFinite(u) ? u : r.translateY,
481
499
  scale: Number.isFinite(c) ? c : p(1),
@@ -520,7 +538,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
520
538
  e || 0,
521
539
  n || 0,
522
540
  r || 2e3
523
- ], u = o.width / (l * 2), d = o.height / (l * 2), f = p(Math.min(u, d) * Ne), [h, g] = A([-s, -c], {
541
+ ], u = o.width / (l * 2), d = o.height / (l * 2), f = p(Math.min(u, d) * Pe), [h, g] = M([-s, -c], {
524
542
  translateX: o.width / 2,
525
543
  translateY: o.height / 2,
526
544
  scale: f,
@@ -545,7 +563,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
545
563
  };
546
564
  }, [l, i]), y = e.useCallback(() => {
547
565
  let e = s(), { uid: t } = i(), n = e.reduce((e, n) => {
548
- let r = M(t, n.id);
566
+ let r = P(t, n.id);
549
567
  return r && (e.left = Math.min(n.x, e.left), e.top = Math.min(n.y, e.top), e.right = Math.max(n.x + r.offsetWidth, e.right), e.bottom = Math.max(n.y + r.offsetHeight, e.bottom)), e;
550
568
  }, {
551
569
  left: Infinity,
@@ -557,7 +575,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
557
575
  a({ itemExtent: {
558
576
  x: 0,
559
577
  y: 0,
560
- radius: Me
578
+ radius: Ne
561
579
  } });
562
580
  return;
563
581
  }
@@ -565,7 +583,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
565
583
  x: (n.right + n.left) / 2,
566
584
  y: (n.bottom + n.top) / 2
567
585
  };
568
- r.radius = Math.max(re([r.x, r.y], [n.left, n.top]), Me), a({ itemExtent: r });
586
+ r.radius = Math.max(ie([r.x, r.y], [n.left, n.top]), Ne), a({ itemExtent: r });
569
587
  }, [
570
588
  i,
571
589
  s,
@@ -584,7 +602,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
584
602
  ]), x = u(() => y(), [y], 200);
585
603
  return e.useEffect(() => {
586
604
  window.debugUpdateExtent = () => y(), window.debugDisplayExtent = () => console.log(i().itemExtent), window.debugSetDebug = () => {
587
- I = !0;
605
+ z = !0;
588
606
  };
589
607
  }, [i, y]), {
590
608
  setDim: m,
@@ -600,8 +618,8 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
600
618
  fromWrapperToBoard: l,
601
619
  fromBoardToWrapper: d
602
620
  };
603
- }, R = (t) => {
604
- let [n, r, i] = F(({ register: e, unregister: t, callInteractions: n }) => [
621
+ }, V = (t) => {
622
+ let [n, r, i] = R(({ register: e, unregister: t, callInteractions: n }) => [
605
623
  e,
606
624
  t,
607
625
  n
@@ -618,13 +636,13 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
618
636
  i(t, e);
619
637
  }, [i, t])
620
638
  };
621
- }, z = () => {
622
- let { call: t } = R("place"), { call: n } = R("delete"), { getCenter: r, updateItemExtent: i } = L(), [a, o, s, c] = F((e) => [
639
+ }, H = () => {
640
+ let { call: t } = V("place"), { call: n } = V("delete"), { getCenter: r, updateItemExtent: i } = B(), [a, o, s, c] = R((e) => [
623
641
  e.clear,
624
642
  e.reverse,
625
643
  e.unselect,
626
644
  e.getConfiguration
627
- ]), { getItems: l, getItemIds: u, setItemIds: d, updateItems: f, moveItems: p, removeItemsById: m, getItemList: h, insertItems: g, setItemList: _ } = P(({ getItems: e, getItemIds: t, setItemIds: n, updateItems: r, moveItems: i, removeItemsById: a, getItemList: o, insertItems: s, setItemList: c }) => ({
645
+ ]), { getItems: l, getItemIds: u, setItemIds: d, updateItems: f, moveItems: p, removeItemsById: m, getItemList: h, insertItems: g, setItemList: _ } = L(({ getItems: e, getItemIds: t, setItemIds: n, updateItems: r, moveItems: i, removeItemsById: a, getItemList: o, insertItems: s, setItemList: c }) => ({
628
646
  getItems: e,
629
647
  getItemIds: t,
630
648
  setItemIds: n,
@@ -658,7 +676,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
658
676
  ]), b = e.useCallback((e, t, n = !1) => {
659
677
  v([e], t, n);
660
678
  }, [v]), x = e.useCallback((e, t) => {
661
- p(le(l(), u(), e), t);
679
+ p(de(l(), u(), e), t);
662
680
  }, [
663
681
  u,
664
682
  l,
@@ -669,7 +687,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
669
687
  }, [u, d]), C = e.useCallback((e, { type: t, size: n } = {}) => {
670
688
  let { uid: r } = c();
671
689
  v(e, (e) => {
672
- let i = M(r, e.id);
690
+ let i = P(r, e.id);
673
691
  if (!i) return;
674
692
  let a = {
675
693
  type: t || "grid",
@@ -680,7 +698,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
680
698
  },
681
699
  ...e.grid
682
700
  };
683
- return ue({
701
+ return fe({
684
702
  x: e.x,
685
703
  y: e.y,
686
704
  width: i.clientWidth,
@@ -688,7 +706,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
688
706
  }, a);
689
707
  }, !0);
690
708
  }, [c, v]), w = e.useCallback((e, n) => {
691
- let r = le(l(), u(), e);
709
+ let r = de(l(), u(), e);
692
710
  S(r), v(r, { moving: !1 }, !0), C(r, n), t(e), i();
693
711
  }, [
694
712
  v,
@@ -707,7 +725,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
707
725
  u,
708
726
  o,
709
727
  d
710
- ]), te = e.useCallback((e, t) => {
728
+ ]), E = e.useCallback((e, t) => {
711
729
  let n = l(), r = Object.fromEntries(t.map((t, r) => {
712
730
  let i = n[e[r]];
713
731
  return [t, {
@@ -723,7 +741,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
723
741
  v,
724
742
  u,
725
743
  d
726
- ]), E = e.useCallback((e, t) => {
744
+ ]), D = e.useCallback((e, t) => {
727
745
  let n = r(), i = e.map((e, t) => e.x === void 0 || e.x === null || e.y === void 0 || e.y === null ? {
728
746
  ...e,
729
747
  x: n.x + 2 * t,
@@ -736,15 +754,15 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
736
754
  r,
737
755
  g,
738
756
  w
739
- ]), D = e.useCallback((e, t) => {
740
- E([e], t);
741
- }, [E]), re = e.useCallback((e) => {
757
+ ]), te = e.useCallback((e, t) => {
758
+ D([e], t);
759
+ }, [D]), O = e.useCallback((e) => {
742
760
  s(e), m(e), n(e);
743
761
  }, [
744
762
  s,
745
763
  m,
746
764
  n
747
- ]), ie = e.useCallback((e) => {
765
+ ]), ne = e.useCallback((e) => {
748
766
  let t = l();
749
767
  return e.map((e) => t[e]);
750
768
  }, [l]);
@@ -755,39 +773,39 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
755
773
  moveItems: x,
756
774
  placeItems: w,
757
775
  updateItem: b,
758
- swapItems: te,
776
+ swapItems: E,
759
777
  reverseItemsOrder: T,
760
778
  setItemList: y,
761
- pushItem: D,
762
- pushItems: E,
763
- removeItems: re,
779
+ pushItem: te,
780
+ pushItems: D,
781
+ removeItems: O,
764
782
  getItemList: h,
765
783
  findElementUnderPointer: e.useCallback(({ target: e, clientX: t, clientY: n }, { returnLocked: r = !1, passLocked: i = !1 } = {}) => {
766
784
  if (["INPUT", "TEXTAREA"].includes(e.tagName)) return null;
767
- let a = ne(e, "item");
785
+ let a = j(e, "item");
768
786
  if (a) {
769
- if (O(a, "selected")) return a;
770
- if (!i && O(a, "locked") && !O(e, "passthrough")) return r ? a : null;
771
- if (O(e, "passthrough")) {
787
+ if (A(a, "selected")) return a;
788
+ if (!i && A(a, "locked") && !A(e, "passthrough")) return r ? a : null;
789
+ if (A(e, "passthrough")) {
772
790
  let e = u(), { uid: r } = c(), o = e.reduce((e, i) => {
773
- let a = M(r, i), o = a.getBoundingClientRect();
774
- return j({
791
+ let a = P(r, i), o = a.getBoundingClientRect();
792
+ return N({
775
793
  x: t,
776
794
  y: n
777
795
  }, o) && e.unshift(a), e;
778
796
  }, []);
779
797
  for (let e = 0; e < o.length; e += 1) {
780
798
  let t = o[e];
781
- if (t !== a && (i || !O(t, "locked"))) return t;
799
+ if (t !== a && (i || !A(t, "locked"))) return t;
782
800
  }
783
801
  return null;
784
802
  }
785
803
  }
786
804
  return a;
787
805
  }, [c, u]),
788
- getItems: ie
806
+ getItems: ne
789
807
  };
790
- }, Pe = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
808
+ }, Fe = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
791
809
  t.exports = function e(t, n) {
792
810
  if (t === n) return !0;
793
811
  if (t && n && typeof t == "object" && typeof n == "object") {
@@ -827,17 +845,17 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
827
845
  }
828
846
  return t !== t && n !== n;
829
847
  };
830
- })))(), 1), Fe = (e, t) => {
848
+ })))(), 1), Ie = (e, t) => {
831
849
  if (e.type in t) {
832
850
  let n = t[e.type].defaultActions;
833
851
  return typeof n == "function" ? n(e) : n;
834
852
  }
835
853
  return [];
836
- }, Ie = (e, t) => {
837
- let { actions: n = Fe(e, t) } = e;
854
+ }, Le = (e, t) => {
855
+ let { actions: n = Ie(e, t) } = e;
838
856
  return n.map((e) => typeof e == "string" ? { name: e } : e);
839
- }, Le = () => {
840
- let [t, r] = P((e) => [e.items, e.getItems]), [i, a, o] = F((e) => [
857
+ }, Re = () => {
858
+ let [t, r] = L((e) => [e.items, e.getItems]), [i, a, o] = R((e) => [
841
859
  e.config.itemTemplates,
842
860
  e.selection,
843
861
  e.getSelection
@@ -855,9 +873,9 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
855
873
  if (e.length > 0) {
856
874
  if (!l.current) return;
857
875
  let e = t.reduce((e, t) => {
858
- let n = Ie(t, i);
859
- return e.filter((e) => n.some((t) => (0, Pe.default)(e, t)));
860
- }, Ie(t[0], i));
876
+ let n = Le(t, i);
877
+ return e.filter((e) => n.some((t) => (0, Fe.default)(e, t)));
878
+ }, Le(t[0], i));
861
879
  u(() => {
862
880
  c(e);
863
881
  });
@@ -870,29 +888,25 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
870
888
  a,
871
889
  p
872
890
  ], 100), { availableActions: s };
873
- }, Re = () => {
874
- let [e] = F((e) => [e.selectionBox]);
891
+ }, ze = () => {
892
+ let [e] = R((e) => [e.selectionBox]);
875
893
  return e;
876
- }, ze = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict", B = (e = 21) => {
877
- let t = "", n = crypto.getRandomValues(new Uint8Array(e |= 0));
878
- for (; e--;) t += ze[n[e] & 63];
879
- return t;
880
894
  }, Be = e.createContext(), Ve = (e) => {
881
895
  localStorage.setItem("user", JSON.stringify(e));
882
896
  }, He = () => {
883
897
  if (localStorage.user) {
884
898
  let e = {
885
899
  name: "Player",
886
- color: fe(),
887
- uid: B(),
900
+ color: me(),
901
+ uid: w(),
888
902
  ...JSON.parse(localStorage.user)
889
903
  };
890
904
  return Ve(e), e;
891
905
  }
892
906
  let e = {
893
907
  name: "Player",
894
- color: fe(),
895
- uid: B()
908
+ color: me(),
909
+ uid: w()
896
910
  };
897
911
  return Ve(e), e;
898
912
  }, Ue = (e) => (t, n) => ({
@@ -952,11 +966,11 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
952
966
  return delete n[t], { cursors: n };
953
967
  })
954
968
  }), Ge = ({ storeName: t, children: n }) => {
955
- let { wire: r, isMaster: i } = D("room"), [o, c] = e.useState(null), [l, u] = e.useState(!1), d = e.useRef(!1);
969
+ let { wire: r, isMaster: i } = k("room"), [o, c] = e.useState(null), [l, u] = e.useState(!1), d = e.useRef(!1);
956
970
  return e.useEffect(() => {
957
971
  let e = !0, n = [];
958
972
  if (!o && !d.current) return d.current = !0, (() => {
959
- let n = s(pe({
973
+ let n = s(I({
960
974
  wire: r,
961
975
  storeName: t,
962
976
  noSync: [
@@ -1013,11 +1027,11 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
1013
1027
  value: o,
1014
1028
  children: n
1015
1029
  }) : null;
1016
- }, V = (e) => {
1030
+ }, U = (e) => {
1017
1031
  let t = r(Be);
1018
1032
  return c(t, e, l);
1019
1033
  }, Ke = () => {
1020
- let [t, n, r, i, a] = V((e) => [
1034
+ let [t, n, r, i, a] = U((e) => [
1021
1035
  e.isSpaceMaster,
1022
1036
  e.getUser(),
1023
1037
  e.users,
@@ -1036,7 +1050,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
1036
1050
  joinSpace: a
1037
1051
  };
1038
1052
  }, qe = () => {
1039
- let [t, n, r] = P((e) => [
1053
+ let [t, n, r] = L((e) => [
1040
1054
  e.boardConfig,
1041
1055
  e.getBoardConfig,
1042
1056
  e.setBoardConfig
@@ -1048,10 +1062,10 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
1048
1062
  r(a);
1049
1063
  }, [n, r])];
1050
1064
  }, Je = () => {
1051
- let [e] = F((e) => [e.boardState]);
1065
+ let [e] = R((e) => [e.boardState]);
1052
1066
  return e;
1053
1067
  }, Ye = () => {
1054
- let [e, t, n, r] = P((e) => [
1068
+ let [e, t, n, r] = L((e) => [
1055
1069
  e.getSessionInfo,
1056
1070
  e.setSessionInfo,
1057
1071
  e.updateSessionInfo,
@@ -1071,7 +1085,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
1071
1085
  color: n
1072
1086
  },
1073
1087
  content: r,
1074
- uid: B(),
1088
+ uid: w(),
1075
1089
  timestamp: (/* @__PURE__ */ new Date()).toISOString()
1076
1090
  }), Qe = (e, t) => ({
1077
1091
  messages: [],
@@ -1091,7 +1105,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
1091
1105
  r && t().addMessage(r);
1092
1106
  }
1093
1107
  }), $e = ({ storeName: t, children: n, defaultValue: r = [] }) => {
1094
- let { wire: i } = D("room"), [o] = e.useState(() => s(pe({
1108
+ let { wire: i } = k("room"), [o] = e.useState(() => s(I({
1095
1109
  wire: i,
1096
1110
  storeName: t,
1097
1111
  defaultValue: r,
@@ -1105,7 +1119,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
1105
1119
  let t = r(Xe);
1106
1120
  return c(t, e, l);
1107
1121
  }, tt = () => {}, nt = (t = tt) => {
1108
- let n = V((e) => e.getUser()), [r, i, a] = et((e) => [
1122
+ let n = U((e) => e.getUser()), [r, i, a] = et((e) => [
1109
1123
  e.messages,
1110
1124
  e.setMessages,
1111
1125
  e.sendMessage
@@ -1120,19 +1134,19 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
1120
1134
  }, [n, a])
1121
1135
  };
1122
1136
  }, rt = ({ children: t, session: n }) => {
1123
- let r = V((e) => e.joinSpace);
1137
+ let r = U((e) => e.joinSpace);
1124
1138
  return e.useEffect(() => (r(n), () => {
1125
1139
  r(null);
1126
1140
  }), [r, n]), t;
1127
1141
  }, it = ({ socket: t, room: n, session: r, items: i = [], messages: o = [], LoadingComponent: s, ...c }) => {
1128
- let [l] = e.useState(n || B()), [u] = e.useState(r || B()), [d] = e.useState(() => ({
1142
+ let [l] = e.useState(n || w()), [u] = e.useState(r || w()), [d] = e.useState(() => ({
1129
1143
  itemIds: i.map(({ id: e }) => e),
1130
1144
  items: Object.fromEntries(i.map((e) => [e.id, e]))
1131
1145
  }));
1132
- return D("room") ? /* @__PURE__ */ a($e, {
1146
+ return k("room") ? /* @__PURE__ */ a($e, {
1133
1147
  storeName: `${u}_messages`,
1134
1148
  defaultValue: o,
1135
- children: /* @__PURE__ */ a(ke, { children: /* @__PURE__ */ a(be, {
1149
+ children: /* @__PURE__ */ a(Ae, { children: /* @__PURE__ */ a(xe, {
1136
1150
  storeName: `${u}_item`,
1137
1151
  defaultValue: d,
1138
1152
  children: /* @__PURE__ */ a(rt, {
@@ -1140,7 +1154,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
1140
1154
  session: u
1141
1155
  })
1142
1156
  }) })
1143
- }) : /* @__PURE__ */ a(E, {
1157
+ }) : /* @__PURE__ */ a(re, {
1144
1158
  room: l,
1145
1159
  channel: "room",
1146
1160
  socket: t,
@@ -1150,7 +1164,7 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
1150
1164
  children: /* @__PURE__ */ a($e, {
1151
1165
  storeName: `${u}_messages`,
1152
1166
  defaultValue: o,
1153
- children: /* @__PURE__ */ a(ke, { children: /* @__PURE__ */ a(be, {
1167
+ children: /* @__PURE__ */ a(Ae, { children: /* @__PURE__ */ a(xe, {
1154
1168
  storeName: `${u}_item`,
1155
1169
  defaultValue: d,
1156
1170
  children: /* @__PURE__ */ a(rt, {
@@ -1162,8 +1176,8 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
1162
1176
  })
1163
1177
  });
1164
1178
  }, at = ({ socket: t, room: n, children: r, LoadingComponent: i }) => {
1165
- let [o] = e.useState(n || B());
1166
- return /* @__PURE__ */ a(E, {
1179
+ let [o] = e.useState(n || w());
1180
+ return /* @__PURE__ */ a(re, {
1167
1181
  room: o,
1168
1182
  channel: "room",
1169
1183
  socket: t,
@@ -1182,14 +1196,14 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
1182
1196
  return t.nonce = window.__nonce__, t.parentNode || (e || document.head).appendChild(t), t.firstChild;
1183
1197
  }
1184
1198
  return e || ot;
1185
- }, ct = /(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\s*)/g, lt = /\/\*[^]*?\*\/| +/g, ut = /\n+/g, H = (e, t) => {
1199
+ }, ct = /(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\s*)/g, lt = /\/\*[^]*?\*\/| +/g, ut = /\n+/g, W = (e, t) => {
1186
1200
  let n = "", r = "", i = "";
1187
1201
  for (let a in e) {
1188
1202
  let o = e[a];
1189
- a[0] == "@" ? a[1] == "i" ? n = a + " " + o + ";" : r += a[1] == "f" ? H(o, a) : a + "{" + H(o, a[1] == "k" ? "" : t) + "}" : typeof o == "object" ? r += H(o, t ? t.replace(/([^,])+/g, (e) => a.replace(/([^,]*:\S+\([^)]*\))|([^,])+/g, (t) => /&/.test(t) ? t.replace(/&/g, e) : e ? e + " " + t : t)) : a) : o != null && (a = a[1] == "-" ? a : a.replace(/[A-Z]/g, "-$&").toLowerCase(), i += H.p ? H.p(a, o) : a + ":" + o + ";");
1203
+ a[0] == "@" ? a[1] == "i" ? n = a + " " + o + ";" : r += a[1] == "f" ? W(o, a) : a + "{" + W(o, a[1] == "k" ? "" : t) + "}" : typeof o == "object" ? r += W(o, t ? t.replace(/([^,])+/g, (e) => a.replace(/([^,]*:\S+\([^)]*\))|([^,])+/g, (t) => /&/.test(t) ? t.replace(/&/g, e) : e ? e + " " + t : t)) : a) : o != null && (a = a[1] == "-" ? a : a.replace(/[A-Z]/g, "-$&").toLowerCase(), i += W.p ? W.p(a, o) : a + ":" + o + ";");
1190
1204
  }
1191
1205
  return n + (t && i ? t + "{" + i + "}" : i) + r;
1192
- }, U = {}, dt = (e) => {
1206
+ }, G = {}, dt = (e) => {
1193
1207
  if (typeof e == "object") {
1194
1208
  let t = "";
1195
1209
  for (let n in e) t += n + dt(e[n]);
@@ -1197,38 +1211,38 @@ var m = Object.create, h = Object.defineProperty, g = Object.getOwnPropertyDescr
1197
1211
  }
1198
1212
  return e;
1199
1213
  }, ft = (e, t, n, r, i) => {
1200
- let a = dt(e), o = U[a] || (U[a] = ((e) => {
1214
+ let a = dt(e), o = G[a] || (G[a] = ((e) => {
1201
1215
  let t = 0, n = 11;
1202
1216
  for (; t < e.length;) n = 101 * n + e.charCodeAt(t++) >>> 0;
1203
1217
  return "go" + n;
1204
1218
  })(a));
1205
- if (!U[o]) {
1219
+ if (!G[o]) {
1206
1220
  let t = a === e ? ((e) => {
1207
1221
  let t, n, r = [{}];
1208
1222
  for (; t = ct.exec(e.replace(lt, ""));) t[4] ? r.shift() : t[3] ? (n = t[3].replace(ut, " ").trim(), r.unshift(r[0][n] = r[0][n] || {})) : r[0][t[1]] = t[2].replace(ut, " ").trim();
1209
1223
  return r[0];
1210
1224
  })(e) : e;
1211
- U[o] = H(i ? { ["@keyframes " + o]: t } : t, n ? "" : "." + o);
1225
+ G[o] = W(i ? { ["@keyframes " + o]: t } : t, n ? "" : "." + o);
1212
1226
  }
1213
- let s = n && U.g;
1214
- return n && (U.g = U[o]), ((e, t, n, r) => {
1227
+ let s = n && G.g;
1228
+ return n && (G.g = G[o]), ((e, t, n, r) => {
1215
1229
  r ? t.data = t.data.replace(r, e) : t.data.indexOf(e) === -1 && (t.data = n ? e + t.data : t.data + e);
1216
- })(U[o], t, r, s), o;
1230
+ })(G[o], t, r, s), o;
1217
1231
  }, pt = (e, t, n) => e.reduce((e, r, i) => {
1218
1232
  let a = t[i];
1219
1233
  if (a && a.call) {
1220
1234
  let e = a(n), t = e && e.props && e.props.className || /^go/.test(e) && e;
1221
- a = t ? "." + t : e && typeof e == "object" ? e.props ? "" : H(e, "") : !1 === e ? "" : e;
1235
+ a = t ? "." + t : e && typeof e == "object" ? e.props ? "" : W(e, "") : !1 === e ? "" : e;
1222
1236
  }
1223
1237
  return e + r + (a ?? "");
1224
1238
  }, "");
1225
- function W(e) {
1239
+ function K(e) {
1226
1240
  let t = this || {}, n = e.call ? e(t.p) : e;
1227
1241
  return ft(n.unshift ? n.raw ? pt(n, [].slice.call(arguments, 1), t.p) : n.reduce((e, n) => Object.assign(e, n && n.call ? n(t.p) : n), {}) : n, st(t.target), t.g, t.o, t.k);
1228
1242
  }
1229
- W.bind({ g: 1 }), W.bind({ k: 1 });
1243
+ K.bind({ g: 1 }), K.bind({ k: 1 });
1230
1244
  function mt(e, t, n, r) {
1231
- H.p = t;
1245
+ W.p = t;
1232
1246
  }
1233
1247
  //#endregion
1234
1248
  //#region src/lib/board/Gesture.jsx
@@ -1269,7 +1283,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1269
1283
  })(), vt = 800, yt = (e, t) => e[Object.keys(e).map((e) => Number(e)).find((e) => e !== t)], bt = ([e, t], [n, r]) => {
1270
1284
  let i = Math.abs(e - n), a = Math.abs(t - r);
1271
1285
  return Math.hypot(i, a);
1272
- }, G = () => {}, xt = (e) => (t) => {
1286
+ }, q = () => {}, xt = (e) => (t) => {
1273
1287
  let { event: n } = t;
1274
1288
  return n.isPropagationStopped() ? null : e(t);
1275
1289
  }, St = (e) => async (...t) => {
@@ -1278,14 +1292,14 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1278
1292
  } catch (e) {
1279
1293
  console.error(e);
1280
1294
  }
1281
- }, K = new class {
1295
+ }, J = new class {
1282
1296
  lastPromise = Promise.resolve(!0);
1283
1297
  add(e, ...t) {
1284
1298
  return new Promise((n, r) => {
1285
1299
  this.lastPromise = this.lastPromise.then(() => xt(St(e))(...t)).then(n).catch(r);
1286
1300
  });
1287
1301
  }
1288
- }(), q = ({ children: t, onDrag: n = G, onDragStart: r = G, onDragEnd: i = G, onPan: o = G, onTap: s = G, onLongTap: c = G, onDoubleTap: l = G, onZoom: u, mainAction: d = "drag", fill: f = !1 }) => {
1302
+ }(), Y = ({ children: t, onDrag: n = q, onDragStart: r = q, onDragEnd: i = q, onPan: o = q, onTap: s = q, onLongTap: c = q, onDoubleTap: l = q, onZoom: u, mainAction: d = "drag", fill: f = !1 }) => {
1289
1303
  let p = e.useRef(null), m = e.useRef({
1290
1304
  moving: !1,
1291
1305
  pointers: {},
@@ -1293,7 +1307,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1293
1307
  }), h = (e) => {
1294
1308
  let { deltaX: t, deltaY: n, clientX: r, clientY: i, deltaMode: a, ctrlKey: s, altKey: c, metaKey: l, target: d } = e;
1295
1309
  if (!(c || s && !gt())) {
1296
- if (gt() && !s) K.add(o, {
1310
+ if (gt() && !s) J.add(o, {
1297
1311
  deltaX: -2 * t,
1298
1312
  deltaY: -2 * n,
1299
1313
  button: 1,
@@ -1311,7 +1325,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1311
1325
  break;
1312
1326
  case 2: t *= vt;
1313
1327
  }
1314
- gt() && (t *= 2), K.add(u, {
1328
+ gt() && (t *= 2), J.add(u, {
1315
1329
  scale: t,
1316
1330
  clientX: r,
1317
1331
  clientY: i,
@@ -1358,7 +1372,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1358
1372
  target: t,
1359
1373
  timeStart: Date.now(),
1360
1374
  longTapTimeout: setTimeout(async () => {
1361
- m.current.noTap = !0, K.add(c, {
1375
+ m.current.noTap = !0, J.add(c, {
1362
1376
  clientX: r,
1363
1377
  clientY: i,
1364
1378
  altKey: o,
@@ -1390,7 +1404,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1390
1404
  d !== "drag" && (b = !b);
1391
1405
  let x = !b, S = b;
1392
1406
  if (x) {
1393
- m.current.gestureStart || (p.current.style.cursor = "move", m.current.gestureStart = !0, clearTimeout(m.current.longTapTimeout), K.add(r, {
1407
+ m.current.gestureStart || (p.current.style.cursor = "move", m.current.gestureStart = !0, clearTimeout(m.current.longTapTimeout), J.add(r, {
1394
1408
  deltaX: 0,
1395
1409
  deltaY: 0,
1396
1410
  startX: m.current.startX,
@@ -1408,7 +1422,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1408
1422
  event: m.current.pointerDownEvent
1409
1423
  }));
1410
1424
  let t = _ - m.current.prevX, i = v - m.current.prevY, a = _ - m.current.startX, o = v - m.current.startY;
1411
- K.add(n, {
1425
+ J.add(n, {
1412
1426
  deltaX: t,
1413
1427
  deltaY: i,
1414
1428
  startX: m.current.startX,
@@ -1429,7 +1443,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1429
1443
  if (S) {
1430
1444
  m.current.gestureStart || (p.current.style.cursor = "move", m.current.gestureStart = !0, clearTimeout(m.current.longTapTimeout));
1431
1445
  let t = _ - m.current.prevX, n = v - m.current.prevY, { target: r } = m.current;
1432
- if (K.add(o, {
1446
+ if (J.add(o, {
1433
1447
  deltaX: t,
1434
1448
  deltaY: n,
1435
1449
  button: m.current.currentButton,
@@ -1441,7 +1455,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1441
1455
  event: e
1442
1456
  }), y !== m.current.prevDistance && u) {
1443
1457
  let t = m.current.prevDistance - y;
1444
- Math.abs(t) > 0 && (K.add(u, {
1458
+ Math.abs(t) > 0 && (J.add(u, {
1445
1459
  scale: t * 3,
1446
1460
  clientX: _,
1447
1461
  clientY: v,
@@ -1480,7 +1494,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1480
1494
  console.log("Fails to set pointer capture", e), m.current.mainPointer = void 0, delete m.current.pointers[Object.keys(m.current.pointers)[0]];
1481
1495
  }
1482
1496
  }
1483
- if (m.current.mainPointer = void 0, m.current.pressed = !1, clearTimeout(m.current.longTapTimeout), m.current.moving) m.current.moving = !1, K.add(i, {
1497
+ if (m.current.mainPointer = void 0, m.current.pressed = !1, clearTimeout(m.current.longTapTimeout), m.current.moving) m.current.moving = !1, J.add(i, {
1484
1498
  deltaX: t - m.current.prevX,
1485
1499
  deltaY: n - m.current.prevY,
1486
1500
  startX: m.current.startX,
@@ -1498,7 +1512,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1498
1512
  }), p.current.style.cursor = "auto";
1499
1513
  else {
1500
1514
  let i = Date.now();
1501
- m.current.noTap ? m.current.noTap = !1 : m.current.timeStart - i < 300 && K.add(s, {
1515
+ m.current.noTap ? m.current.noTap = !1 : m.current.timeStart - i < 300 && J.add(s, {
1502
1516
  clientX: t,
1503
1517
  clientY: n,
1504
1518
  altKey: r,
@@ -1519,7 +1533,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1519
1533
  onPointerCancel: v,
1520
1534
  onDoubleClick: (e) => {
1521
1535
  let { clientX: t, clientY: n, altKey: r, shiftKey: i, ctrlKey: a, metaKey: o, target: s } = e;
1522
- K.add(l, {
1536
+ J.add(l, {
1523
1537
  clientX: t,
1524
1538
  clientY: n,
1525
1539
  altKey: r,
@@ -1540,9 +1554,9 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1540
1554
  ref: p,
1541
1555
  children: t
1542
1556
  });
1543
- }, J = ({ onResize: e, ...t }) => {
1544
- let [n] = F((e) => [e.getBoardState]);
1545
- return /* @__PURE__ */ a(q, {
1557
+ }, Ct = ({ onResize: e, ...t }) => {
1558
+ let [n] = R((e) => [e.getBoardState]);
1559
+ return /* @__PURE__ */ a(Y, {
1546
1560
  onDrag: ({ deltaX: t, deltaY: r, event: i }) => {
1547
1561
  i.stopPropagation();
1548
1562
  let { scale: a } = n();
@@ -1553,36 +1567,36 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1553
1567
  },
1554
1568
  children: /* @__PURE__ */ a("div", { ...t })
1555
1569
  });
1556
- }, Ct = W`
1570
+ }, wt = K`
1557
1571
  display: inline-block;
1558
1572
  transition: transform 150ms;
1559
1573
  user-select: none;
1560
1574
  padding: 2px;
1561
1575
  box-sizing: border-box;
1562
- `, wt = W`
1576
+ `, Tt = K`
1563
1577
  border: 2px dashed #db5034;
1564
1578
  padding: 0px;
1565
1579
  cursor: pointer;
1566
- `, Y = W`
1580
+ `, X = K`
1567
1581
  position: absolute;
1568
1582
  width: 0px;
1569
1583
  height: 0px;
1570
- `, Tt = W`
1584
+ `, Et = K`
1571
1585
  top: 0;
1572
1586
  left: 0;
1573
- `, Et = W`
1587
+ `, Dt = K`
1574
1588
  top: 0;
1575
1589
  right: 0;
1576
- `, Dt = W`
1590
+ `, Ot = K`
1577
1591
  bottom: 0;
1578
1592
  left: 0;
1579
- `, Ot = W`
1593
+ `, kt = K`
1580
1594
  bottom: 0;
1581
1595
  right: 0;
1582
- `, kt = W`
1596
+ `, At = K`
1583
1597
  top: 50%;
1584
1598
  left: 50%;
1585
- `, X = W`
1599
+ `, jt = K`
1586
1600
  position: absolute;
1587
1601
 
1588
1602
  width: 10px;
@@ -1590,20 +1604,20 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1590
1604
  border: 2px solid #db5034;
1591
1605
  background-color: #db5034;
1592
1606
  cursor: move;
1593
- `, At = W`
1607
+ `, Mt = K`
1594
1608
  cursor: ew-resize;
1595
1609
  right: -6px;
1596
1610
  top: calc(50% - 5px);
1597
- `, jt = W`
1611
+ `, Nt = K`
1598
1612
  cursor: ns-resize;
1599
1613
  bottom: -6px;
1600
1614
  left: calc(50% - 5px);
1601
- `, Mt = W`
1615
+ `, Pt = K`
1602
1616
  cursor: nwse-resize;
1603
1617
  bottom: -6px;
1604
1618
  right: -6px;
1605
- `, Nt = ({ onReload: e }) => /* @__PURE__ */ o("div", {
1606
- className: `syncboard-error-item ${W({
1619
+ `, Ft = ({ onReload: e }) => /* @__PURE__ */ o("div", {
1620
+ className: `syncboard-error-item ${K({
1607
1621
  width: "100px",
1608
1622
  display: "flex",
1609
1623
  flexDirection: "column",
@@ -1615,7 +1629,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1615
1629
  onClick: e,
1616
1630
  children: "Reload it"
1617
1631
  })]
1618
- }), Pt = class extends e.Component {
1632
+ }), It = class extends e.Component {
1619
1633
  constructor(e) {
1620
1634
  super(e), this.state = {
1621
1635
  hasError: !1,
@@ -1635,9 +1649,9 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1635
1649
  let { ErrorComponent: e } = this.props;
1636
1650
  return this.state.hasError ? /* @__PURE__ */ a(e, { onReload: this.onReload }) : this.props.children;
1637
1651
  }
1638
- }, Ft = (e) => {
1652
+ }, Lt = (e) => {
1639
1653
  e.target.className = "";
1640
- }, It = ({ width: e, height: t, actualWidth: n, actualHeight: r, prevState: i, keepRatio: a }) => {
1654
+ }, Rt = ({ width: e, height: t, actualWidth: n, actualHeight: r, prevState: i, keepRatio: a }) => {
1641
1655
  let { width: o, height: s } = i;
1642
1656
  if ([o, s] = [parseFloat(o), parseFloat(s)], (!o || Number.isNaN(Number(o))) && (o = n), (!s || Number.isNaN(Number(s))) && (s = r), a) {
1643
1657
  let n = o / s;
@@ -1652,21 +1666,21 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1652
1666
  width: (o + e).toFixed(1),
1653
1667
  height: (s + t).toFixed(1)
1654
1668
  };
1655
- }, Lt = {
1669
+ }, zt = {
1656
1670
  w: !0,
1657
1671
  h: !0,
1658
1672
  b: !0
1659
- }, Rt = t(({ setState: t, state: { type: n, rotation: r = 0, id: s, locked: c, extraClasses: l, ...u } = {}, animate: d = "hvr-pop", isSelected: f, itemMap: p, showResizeHandle: m = !0 }) => {
1660
- let h = e.useRef(null), [g] = F((e) => [e.config.uid]), { component: _ = () => null, resizeDirections: v = Lt, resize: y = It } = p[n], b = e.useCallback((e, n = !1) => t(s, e, n), [t, s]);
1673
+ }, Bt = t(({ setState: t, state: { type: n, rotation: r = 0, id: s, locked: c, extraClasses: l, ...u } = {}, animate: d = "hvr-pop", isSelected: f, itemMap: p, showResizeHandle: m = !0 }) => {
1674
+ let h = e.useRef(null), [g] = R((e) => [e.config.uid]), { component: _ = () => null, resizeDirections: v = zt, resize: y = Rt } = p[n], b = e.useCallback((e, n = !1) => t(s, e, n), [t, s]);
1661
1675
  e.useEffect(() => {
1662
1676
  h.current.className = d;
1663
1677
  }, [d]);
1664
1678
  let x = [
1665
1679
  "item",
1666
1680
  s,
1667
- Ct
1681
+ wt
1668
1682
  ];
1669
- c && x.push("locked"), f && (x.push("selected"), x.push(wt)), Array.isArray(l) && x.concat(l);
1683
+ c && x.push("locked"), f && (x.push("selected"), x.push(Tt)), Array.isArray(l) && x.concat(l);
1670
1684
  let S = x.join(" "), C = ({ width: e = 0, height: t = 0, keepRatio: n }) => {
1671
1685
  b((r) => {
1672
1686
  let { offsetWidth: i, offsetHeight: a } = h.current;
@@ -1698,63 +1712,63 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1698
1712
  children: /* @__PURE__ */ o("div", {
1699
1713
  style: { display: "flex" },
1700
1714
  ref: h,
1701
- onAnimationEnd: Ft,
1715
+ onAnimationEnd: Lt,
1702
1716
  onKeyDown: (e) => e.stopPropagation(),
1703
1717
  onKeyUp: (e) => e.stopPropagation(),
1704
1718
  children: [
1705
- /* @__PURE__ */ a(Pt, {
1719
+ /* @__PURE__ */ a(It, {
1706
1720
  itemId: s,
1707
1721
  state: u,
1708
- ErrorComponent: p?.error?.component || Nt,
1722
+ ErrorComponent: p?.error?.component || Ft,
1709
1723
  children: /* @__PURE__ */ a(_, {
1710
1724
  ...u,
1711
1725
  id: s,
1712
1726
  setState: b
1713
1727
  })
1714
1728
  }),
1715
- /* @__PURE__ */ a("div", { className: `corner ${Y} ${Tt}` }),
1716
- /* @__PURE__ */ a("div", { className: `corner ${Y} ${Et}` }),
1717
- /* @__PURE__ */ a("div", { className: `corner ${Y} ${Ot}` }),
1718
- /* @__PURE__ */ a("div", { className: `corner ${Y} ${Dt}` }),
1719
- /* @__PURE__ */ a("div", { className: `center ${Y} ${kt}` }),
1729
+ /* @__PURE__ */ a("div", { className: `corner ${X} ${Et}` }),
1730
+ /* @__PURE__ */ a("div", { className: `corner ${X} ${Dt}` }),
1731
+ /* @__PURE__ */ a("div", { className: `corner ${X} ${kt}` }),
1732
+ /* @__PURE__ */ a("div", { className: `corner ${X} ${Ot}` }),
1733
+ /* @__PURE__ */ a("div", { className: `center ${X} ${At}` }),
1720
1734
  m && /* @__PURE__ */ o(i, { children: [
1721
- v.b && /* @__PURE__ */ a(J, {
1722
- className: `${X} ${Mt}`,
1735
+ v.b && /* @__PURE__ */ a(Ct, {
1736
+ className: `${jt} ${Pt}`,
1723
1737
  onResize: T
1724
1738
  }),
1725
- v.h && /* @__PURE__ */ a(J, {
1726
- className: `${X} ${jt}`,
1739
+ v.h && /* @__PURE__ */ a(Ct, {
1740
+ className: `${jt} ${Nt}`,
1727
1741
  onResize: ee
1728
1742
  }),
1729
- v.w && /* @__PURE__ */ a(J, {
1730
- className: `${X} ${At}`,
1743
+ v.w && /* @__PURE__ */ a(Ct, {
1744
+ className: `${jt} ${Mt}`,
1731
1745
  onResize: w
1732
1746
  })
1733
1747
  ] })
1734
1748
  ]
1735
1749
  })
1736
1750
  });
1737
- }, ({ state: e, setState: t, isSelected: n, showResizeHandle: r }, { state: i, setState: a, isSelected: o, showResizeHandle: s }) => n === o && r === s && t === a && (0, ht.default)(e, i)), zt = (e) => e, Bt = t(({ state: e = {}, getCurrentUser: t, className: n, ...r }) => {
1751
+ }, ({ state: e, setState: t, isSelected: n, showResizeHandle: r }, { state: i, setState: a, isSelected: o, showResizeHandle: s }) => n === o && r === s && t === a && (0, ht.default)(e, i)), Vt = (e) => e, Ht = t(({ state: e = {}, getCurrentUser: t, className: n, ...r }) => {
1738
1752
  if (!r.itemMap[e.type]) return null;
1739
- let { stateHook: i = zt } = r.itemMap[e.type], { x: o = 0, y: s = 0, layer: c = 0, moving: l, ...u } = i(e, { currentUser: t?.() }), d = (c + 4) * 10 + 100 + (l ? 5 : 0);
1753
+ let { stateHook: i = Vt } = r.itemMap[e.type], { x: o = 0, y: s = 0, layer: c = 0, moving: l, ...u } = i(e, { currentUser: t?.() }), d = (c + 4) * 10 + 100 + (l ? 5 : 0);
1740
1754
  return /* @__PURE__ */ a("div", {
1741
1755
  className: n,
1742
1756
  style: {
1743
1757
  transform: `translate(${o}px, ${s}px)`,
1744
1758
  zIndex: d
1745
1759
  },
1746
- children: /* @__PURE__ */ a(Rt, {
1760
+ children: /* @__PURE__ */ a(Bt, {
1747
1761
  ...r,
1748
1762
  showResizeHandle: r.isSelected && r.showResizeHandle,
1749
1763
  state: u
1750
1764
  })
1751
1765
  });
1752
- }), Vt = () => {
1753
- let { updateItem: e } = z(), [t, n] = P((e) => [e.itemIds, e.items]), [r, i, o] = F((e) => [
1766
+ }), Ut = () => {
1767
+ let { updateItem: e } = H(), [t, n] = L((e) => [e.itemIds, e.items]), [r, i, o] = R((e) => [
1754
1768
  e.config.showResizeHandle,
1755
1769
  e.config.itemTemplates,
1756
1770
  e.selection
1757
- ]), [s] = V((e) => [e.getUser]), c = W({
1771
+ ]), [s] = U((e) => [e.getUser]), c = K({
1758
1772
  position: "absolute",
1759
1773
  top: 0,
1760
1774
  left: 0,
@@ -1762,7 +1776,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1762
1776
  display: "inline-block",
1763
1777
  lineHeight: 0
1764
1778
  });
1765
- return t.map((t) => /* @__PURE__ */ a(Bt, {
1779
+ return t.map((t) => /* @__PURE__ */ a(Ht, {
1766
1780
  state: n[t],
1767
1781
  setState: e,
1768
1782
  isSelected: o.includes(t),
@@ -1771,28 +1785,28 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1771
1785
  showResizeHandle: r,
1772
1786
  className: c
1773
1787
  }, t));
1774
- }, Ht = W({
1788
+ }, Wt = K({
1775
1789
  zIndex: 210,
1776
1790
  position: "absolute",
1777
1791
  backgroundColor: "hsla(0, 40%, 50%, 10%)",
1778
1792
  border: "2px solid hsl(0, 55%, 40%)"
1779
- }), Ut = (e, t, n = !1) => {
1793
+ }), Gt = (e, t, n = !1) => {
1780
1794
  let r = t.getElementsByClassName("selector");
1781
1795
  if (!r.length) return [];
1782
1796
  let i = r[0];
1783
1797
  return Array.from(t.getElementsByClassName("item")).filter((t) => {
1784
- let r = e[N(t)];
1785
- return !r || !n && r.locked ? !1 : oe(t, i);
1786
- }).map((e) => N(e));
1787
- }, Wt = ({ children: t, moveFirst: n }) => {
1788
- let [r, i, s, c, l, u] = F((e) => [
1798
+ let r = e[F(t)];
1799
+ return !r || !n && r.locked ? !1 : ce(t, i);
1800
+ }).map((e) => F(e));
1801
+ }, Kt = ({ children: t, moveFirst: n }) => {
1802
+ let [r, i, s, c, l, u] = R((e) => [
1789
1803
  e.getSelection,
1790
1804
  e.clear,
1791
1805
  e.setSelection,
1792
1806
  e.select,
1793
1807
  e.getConfiguration,
1794
1808
  e.updateBoardState
1795
- ]), { findElementUnderPointer: d } = z(), [p] = P((e) => [e.getItems]), [m, h] = e.useState({}), [, g] = e.useTransition(), [_, v] = e.useState(!1), y = e.useRef(null), b = e.useRef({ moving: !1 });
1809
+ ]), { findElementUnderPointer: d } = H(), [p] = L((e) => [e.getItems]), [m, h] = e.useState({}), [, g] = e.useTransition(), [_, v] = e.useState(!1), y = e.useRef(null), b = e.useRef({ moving: !1 });
1796
1810
  return f(document, "keydown", (e) => {
1797
1811
  e.key === "l" && v(!0);
1798
1812
  }), f(document, "keyup", (e) => {
@@ -1801,7 +1815,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1801
1815
  i();
1802
1816
  }), [i]), e.useEffect(() => {
1803
1817
  if (b.current.moving) {
1804
- let e = p(), { boardWrapper: t } = l(), n = Ut(e, t, _);
1818
+ let e = p(), { boardWrapper: t } = l(), n = Gt(e, t, _);
1805
1819
  g(() => {
1806
1820
  s(n);
1807
1821
  });
@@ -1812,7 +1826,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1812
1826
  m,
1813
1827
  s,
1814
1828
  _
1815
- ]), /* @__PURE__ */ a(q, {
1829
+ ]), /* @__PURE__ */ a(Y, {
1816
1830
  fill: !0,
1817
1831
  onDragStart: async (e) => {
1818
1832
  await d(e) || (b.current.moving = !0, g(() => {
@@ -1837,7 +1851,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1837
1851
  let { ctrlKey: t, metaKey: n } = e, a = d(e);
1838
1852
  if (!a) i();
1839
1853
  else {
1840
- let e = N(a);
1854
+ let e = F(a);
1841
1855
  if (!e) {
1842
1856
  i();
1843
1857
  return;
@@ -1847,9 +1861,9 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1847
1861
  }
1848
1862
  },
1849
1863
  onLongTap: ({ target: e }) => {
1850
- let t = ne(e, "item");
1864
+ let t = j(e, "item");
1851
1865
  if (t) {
1852
- let e = N(t);
1866
+ let e = F(t);
1853
1867
  s([e]);
1854
1868
  }
1855
1869
  },
@@ -1866,18 +1880,18 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1866
1880
  height: `${m.height}px`,
1867
1881
  width: `${m.width}px`
1868
1882
  },
1869
- className: `selector ${Ht}`
1883
+ className: `selector ${Wt}`
1870
1884
  }), t]
1871
1885
  })
1872
1886
  });
1873
- }, Gt = ({ children: t }) => {
1874
- let { moveItems: n, placeItems: r, findElementUnderPointer: i } = z(), { vectorFromWrapperToBoard: o } = L(), [s, c, l, u, d] = F((e) => [
1887
+ }, qt = ({ children: t }) => {
1888
+ let { moveItems: n, placeItems: r, findElementUnderPointer: i } = H(), { vectorFromWrapperToBoard: o } = B(), [s, c, l, u, d] = R((e) => [
1875
1889
  e.select,
1876
1890
  e.setSelection,
1877
1891
  e.getSelection,
1878
1892
  e.getBoardState,
1879
1893
  e.updateBoardState
1880
- ]), [p] = P((e) => [e.getBoardConfig]), m = e.useRef({}), h = e.useRef({ items: [] });
1894
+ ]), [p] = L((e) => [e.getBoardConfig]), m = e.useRef({}), h = e.useRef({ items: [] });
1881
1895
  return f(document, "keydown", (e) => {
1882
1896
  if (["INPUT", "TEXTAREA"].includes(e.target.tagName)) return;
1883
1897
  let t = l();
@@ -1907,7 +1921,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1907
1921
  }), e.preventDefault();
1908
1922
  }
1909
1923
  }
1910
- }), /* @__PURE__ */ a(q, {
1924
+ }), /* @__PURE__ */ a(Y, {
1911
1925
  fill: !0,
1912
1926
  onDragStart: (e) => {
1913
1927
  let { ctrlKey: t, metaKey: n, event: r } = e, a = i(e);
@@ -1915,7 +1929,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1915
1929
  r.stopPropagation();
1916
1930
  let e = l();
1917
1931
  h.current.items = e;
1918
- let i = N(a);
1932
+ let i = F(a);
1919
1933
  e.includes(i) || (t || n ? (h.current.items = [...e, i], s([i])) : (h.current.items = [i], c([i]))), Object.assign(m.current, { moving: !0 });
1920
1934
  }
1921
1935
  },
@@ -1940,7 +1954,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1940
1954
  },
1941
1955
  children: t
1942
1956
  });
1943
- }, Kt = (t) => {
1957
+ }, Jt = (t) => {
1944
1958
  let n = e.useRef({
1945
1959
  hover: !1,
1946
1960
  x: 0,
@@ -1954,16 +1968,16 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1954
1968
  }), f(t, "mouseleave", () => {
1955
1969
  n.current.hover = !1;
1956
1970
  }), e.useCallback(() => n.current, []);
1957
- }, qt = [...[
1971
+ }, Yt = [...[
1958
1972
  ,
1959
1973
  ,
1960
1974
  ,
1961
1975
  ,
1962
1976
  ,
1963
- ].keys()].map((e) => `Digit${e + 1}`), Jt = () => {
1964
- let [t, n] = e.useState({}), [r, i] = F((e) => [e.getBoardState, e.updateBoardState]);
1977
+ ].keys()].map((e) => `Digit${e + 1}`), Xt = () => {
1978
+ let [t, n] = e.useState({}), [r, i] = R((e) => [e.getBoardState, e.updateBoardState]);
1965
1979
  return f(document, "keydown", (e) => {
1966
- if (!["INPUT", "TEXTAREA"].includes(e.target.tagName) && qt.includes(e.code)) {
1980
+ if (!["INPUT", "TEXTAREA"].includes(e.target.tagName) && Yt.includes(e.code)) {
1967
1981
  let a = e.code, { translateX: o, translateY: s, scale: c } = r();
1968
1982
  e.altKey || e.metaKey || e.ctrlKey || e.shiftKey ? n((e) => ({
1969
1983
  ...e,
@@ -1975,14 +1989,14 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
1975
1989
  })) : t[a] && i(t[a]), e.preventDefault();
1976
1990
  }
1977
1991
  }), null;
1978
- }, Yt = ({ children: t, moveFirst: n = !1 }) => {
1979
- let r = e.useRef(null), [i, o, s, c] = F((e) => [
1992
+ }, Zt = ({ children: t, moveFirst: n = !1 }) => {
1993
+ let r = e.useRef(null), [i, o, s, c] = R((e) => [
1980
1994
  e.config.itemExtent,
1981
1995
  e.getConfiguration,
1982
1996
  e.updateBoardState,
1983
1997
  e.getSelection
1984
- ]), { zoomToCenter: l, zoomToExtent: u, moveBoard: d } = L(), [p, m] = e.useState(!1), h = e.useRef({}), g = Kt(r);
1985
- Jt();
1998
+ ]), { zoomToCenter: l, zoomToExtent: u, moveBoard: d } = B(), [p, m] = e.useState(!1), h = e.useRef({}), g = Jt(r);
1999
+ Xt();
1986
2000
  let _ = e.useCallback(() => {
1987
2001
  let { itemExtent: e } = o();
1988
2002
  u(e);
@@ -2031,15 +2045,16 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
2031
2045
  factor: 1 / 3,
2032
2046
  to: g()
2033
2047
  });
2034
- }), /* @__PURE__ */ a(q, {
2048
+ }), /* @__PURE__ */ a(Y, {
2035
2049
  fill: !0,
2036
- onPan: ({ deltaX: e, deltaY: t }) => {
2037
- d(({ translateX: n, translateY: r }) => ({
2050
+ onPan: ({ deltaX: e, deltaY: t, target: n }) => {
2051
+ let r = j(n, "item");
2052
+ r && A(r, "selected") || (d(({ translateX: n, translateY: r }) => ({
2038
2053
  translateX: n + e,
2039
2054
  translateY: r + t
2040
2055
  })), clearTimeout(h.current.pan), h.current.pan = setTimeout(() => {
2041
2056
  s({ panning: !1 });
2042
- }, 200), s({ panning: !0 });
2057
+ }, 200), s({ panning: !0 }));
2043
2058
  },
2044
2059
  onZoom: ({ clientX: e, clientY: t, scale: n }) => {
2045
2060
  l({
@@ -2067,7 +2082,7 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
2067
2082
  children: t
2068
2083
  })
2069
2084
  });
2070
- }, Xt = W({
2085
+ }, Qt = K({
2071
2086
  position: "absolute",
2072
2087
  top: 0,
2073
2088
  left: 0,
@@ -2075,8 +2090,8 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
2075
2090
  backgroundColor: "hsla(0, 40%, 50%, 0%)",
2076
2091
  border: "2px dashed hsl(20, 55%, 40%)",
2077
2092
  pointerEvents: "none"
2078
- }), Zt = () => {
2079
- let [t, n, r, i, o, { translateX: s, translateY: c, scale: l }] = F((e) => [
2093
+ }), $t = () => {
2094
+ let [t, n, r, i, o, { translateX: s, translateY: c, scale: l }] = R((e) => [
2080
2095
  e.selection,
2081
2096
  e.getSelection,
2082
2097
  e.selectionBox,
@@ -2087,13 +2102,13 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
2087
2102
  translateY: e.boardState.translateY,
2088
2103
  scale: e.boardState.scale
2089
2104
  }
2090
- ]), [d] = P((e) => [e.items]), f = e.useCallback(() => {
2105
+ ]), [d] = L((e) => [e.items]), f = e.useCallback(() => {
2091
2106
  let e = n(), { boardWrapperRect: t, uid: r } = o();
2092
2107
  if (e.length === 0) {
2093
2108
  i(null);
2094
2109
  return;
2095
2110
  }
2096
- let a = se(e, r);
2111
+ let a = le(e, r);
2097
2112
  if (!a) {
2098
2113
  i(null);
2099
2114
  return;
@@ -2126,15 +2141,15 @@ var ht = /* @__PURE__ */ S((/* @__PURE__ */ b(((e, t) => {
2126
2141
  height: `${r.height}px`,
2127
2142
  width: `${r.width}px`
2128
2143
  },
2129
- className: `selection ${Xt}`
2144
+ className: `selection ${Qt}`
2130
2145
  });
2131
- }, Qt = () => {
2132
- let [e] = F((e) => [e.boardState.movingItems]);
2133
- return e ? null : /* @__PURE__ */ a(Zt, {});
2146
+ }, en = () => {
2147
+ let [e] = R((e) => [e.boardState.movingItems]);
2148
+ return e ? null : /* @__PURE__ */ a($t, {});
2134
2149
  };
2135
2150
  //#endregion
2136
2151
  //#region node_modules/color2k/dist/index.exports.import.es.mjs
2137
- function $t(e, t, n) {
2152
+ function tn(e, t, n) {
2138
2153
  return Math.min(Math.max(e, n), t);
2139
2154
  }
2140
2155
  var Z = class extends Error {
@@ -2142,7 +2157,7 @@ var Z = class extends Error {
2142
2157
  super(`Failed to parse color: "${e}"`);
2143
2158
  }
2144
2159
  };
2145
- function en(e) {
2160
+ function nn(e) {
2146
2161
  if (typeof e != "string") throw new Z(e);
2147
2162
  if (e.trim().toLowerCase() === "transparent") return [
2148
2163
  0,
@@ -2151,52 +2166,52 @@ function en(e) {
2151
2166
  0
2152
2167
  ];
2153
2168
  let t = e.trim();
2154
- t = un.test(e) ? an(e) : e;
2155
- let n = on.exec(t);
2169
+ t = fn.test(e) ? sn(e) : e;
2170
+ let n = cn.exec(t);
2156
2171
  if (n) {
2157
2172
  let e = Array.from(n).slice(1);
2158
2173
  return [...e.slice(0, 3).map((e) => parseInt(Q(e, 2), 16)), parseInt(Q(e[3] || "f", 2), 16) / 255];
2159
2174
  }
2160
- let r = sn.exec(t);
2175
+ let r = ln.exec(t);
2161
2176
  if (r) {
2162
2177
  let e = Array.from(r).slice(1);
2163
2178
  return [...e.slice(0, 3).map((e) => parseInt(e, 16)), parseInt(e[3] || "ff", 16) / 255];
2164
2179
  }
2165
- let i = cn.exec(t);
2180
+ let i = un.exec(t);
2166
2181
  if (i) {
2167
2182
  let e = Array.from(i).slice(1);
2168
2183
  return [...e.slice(0, 3).map((e) => parseInt(e, 10)), parseFloat(e[3] || "1")];
2169
2184
  }
2170
- let a = ln.exec(t);
2185
+ let a = dn.exec(t);
2171
2186
  if (a) {
2172
2187
  let [t, n, r, i] = Array.from(a).slice(1).map(parseFloat);
2173
- if ($t(0, 100, n) !== n || $t(0, 100, r) !== r) throw new Z(e);
2174
- return [...fn(t, n, r), Number.isNaN(i) ? 1 : i];
2188
+ if (tn(0, 100, n) !== n || tn(0, 100, r) !== r) throw new Z(e);
2189
+ return [...mn(t, n, r), Number.isNaN(i) ? 1 : i];
2175
2190
  }
2176
2191
  throw new Z(e);
2177
2192
  }
2178
- function tn(e) {
2193
+ function rn(e) {
2179
2194
  let t = 5381, n = e.length;
2180
2195
  for (; n;) t = t * 33 ^ e.charCodeAt(--n);
2181
2196
  return (t >>> 0) % 2341;
2182
2197
  }
2183
- var nn = (e) => parseInt(e.replace(/_/g, ""), 36), rn = "1q29ehhb 1n09sgk7 1kl1ekf_ _yl4zsno 16z9eiv3 1p29lhp8 _bd9zg04 17u0____ _iw9zhe5 _to73___ _r45e31e _7l6g016 _jh8ouiv _zn3qba8 1jy4zshs 11u87k0u 1ro9yvyo 1aj3xael 1gz9zjz0 _3w8l4xo 1bf1ekf_ _ke3v___ _4rrkb__ 13j776yz _646mbhl _nrjr4__ _le6mbhl 1n37ehkb _m75f91n _qj3bzfz 1939yygw 11i5z6x8 _1k5f8xs 1509441m 15t5lwgf _ae2th1n _tg1ugcv 1lp1ugcv 16e14up_ _h55rw7n _ny9yavn _7a11xb_ 1ih442g9 _pv442g9 1mv16xof 14e6y7tu 1oo9zkds 17d1cisi _4v9y70f _y98m8kc 1019pq0v 12o9zda8 _348j4f4 1et50i2o _8epa8__ _ts6senj 1o350i2o 1mi9eiuo 1259yrp0 1ln80gnw _632xcoy 1cn9zldc _f29edu4 1n490c8q _9f9ziet 1b94vk74 _m49zkct 1kz6s73a 1eu9dtog _q58s1rz 1dy9sjiq __u89jo3 _aj5nkwg _ld89jo3 13h9z6wx _qa9z2ii _l119xgq _bs5arju 1hj4nwk9 1qt4nwk9 1ge6wau6 14j9zlcw 11p1edc_ _ms1zcxe _439shk6 _jt9y70f _754zsow 1la40eju _oq5p___ _x279qkz 1fa5r3rv _yd2d9ip _424tcku _8y1di2_ _zi2uabw _yy7rn9h 12yz980_ __39ljp6 1b59zg0x _n39zfzp 1fy9zest _b33k___ _hp9wq92 1il50hz4 _io472ub _lj9z3eo 19z9ykg0 _8t8iu3a 12b9bl4a 1ak5yw0o _896v4ku _tb8k8lv _s59zi6t _c09ze0p 1lg80oqn 1id9z8wb _238nba5 1kq6wgdi _154zssg _tn3zk49 _da9y6tc 1sg7cv4f _r12jvtt 1gq5fmkz 1cs9rvci _lp9jn1c _xw1tdnb 13f9zje6 16f6973h _vo7ir40 _bt5arjf _rc45e4t _hr4e100 10v4e100 _hc9zke2 _w91egv_ _sj2r1kk 13c87yx8 _vqpds__ _ni8ggk8 _tj9yqfb 1ia2j4r4 _7x9b10u 1fc9ld4j 1eq9zldr _5j9lhpx _ez9zl6o _md61fzm".split(" ").reduce((e, t) => {
2184
- let n = nn(t.substring(0, 3)), r = nn(t.substring(3)).toString(16), i = "";
2198
+ var an = (e) => parseInt(e.replace(/_/g, ""), 36), on = "1q29ehhb 1n09sgk7 1kl1ekf_ _yl4zsno 16z9eiv3 1p29lhp8 _bd9zg04 17u0____ _iw9zhe5 _to73___ _r45e31e _7l6g016 _jh8ouiv _zn3qba8 1jy4zshs 11u87k0u 1ro9yvyo 1aj3xael 1gz9zjz0 _3w8l4xo 1bf1ekf_ _ke3v___ _4rrkb__ 13j776yz _646mbhl _nrjr4__ _le6mbhl 1n37ehkb _m75f91n _qj3bzfz 1939yygw 11i5z6x8 _1k5f8xs 1509441m 15t5lwgf _ae2th1n _tg1ugcv 1lp1ugcv 16e14up_ _h55rw7n _ny9yavn _7a11xb_ 1ih442g9 _pv442g9 1mv16xof 14e6y7tu 1oo9zkds 17d1cisi _4v9y70f _y98m8kc 1019pq0v 12o9zda8 _348j4f4 1et50i2o _8epa8__ _ts6senj 1o350i2o 1mi9eiuo 1259yrp0 1ln80gnw _632xcoy 1cn9zldc _f29edu4 1n490c8q _9f9ziet 1b94vk74 _m49zkct 1kz6s73a 1eu9dtog _q58s1rz 1dy9sjiq __u89jo3 _aj5nkwg _ld89jo3 13h9z6wx _qa9z2ii _l119xgq _bs5arju 1hj4nwk9 1qt4nwk9 1ge6wau6 14j9zlcw 11p1edc_ _ms1zcxe _439shk6 _jt9y70f _754zsow 1la40eju _oq5p___ _x279qkz 1fa5r3rv _yd2d9ip _424tcku _8y1di2_ _zi2uabw _yy7rn9h 12yz980_ __39ljp6 1b59zg0x _n39zfzp 1fy9zest _b33k___ _hp9wq92 1il50hz4 _io472ub _lj9z3eo 19z9ykg0 _8t8iu3a 12b9bl4a 1ak5yw0o _896v4ku _tb8k8lv _s59zi6t _c09ze0p 1lg80oqn 1id9z8wb _238nba5 1kq6wgdi _154zssg _tn3zk49 _da9y6tc 1sg7cv4f _r12jvtt 1gq5fmkz 1cs9rvci _lp9jn1c _xw1tdnb 13f9zje6 16f6973h _vo7ir40 _bt5arjf _rc45e4t _hr4e100 10v4e100 _hc9zke2 _w91egv_ _sj2r1kk 13c87yx8 _vqpds__ _ni8ggk8 _tj9yqfb 1ia2j4r4 _7x9b10u 1fc9ld4j 1eq9zldr _5j9lhpx _ez9zl6o _md61fzm".split(" ").reduce((e, t) => {
2199
+ let n = an(t.substring(0, 3)), r = an(t.substring(3)).toString(16), i = "";
2185
2200
  for (let e = 0; e < 6 - r.length; e++) i += "0";
2186
2201
  return e[n] = `${i}${r}`, e;
2187
2202
  }, {});
2188
- function an(e) {
2189
- let t = rn[tn(e.toLowerCase().trim())];
2203
+ function sn(e) {
2204
+ let t = on[rn(e.toLowerCase().trim())];
2190
2205
  if (!t) throw new Z(e);
2191
2206
  return `#${t}`;
2192
2207
  }
2193
- var Q = (e, t) => Array.from(Array(t)).map(() => e).join(""), on = RegExp(`^#${Q("([a-f0-9])", 3)}([a-f0-9])?$`, "i"), sn = RegExp(`^#${Q("([a-f0-9]{2})", 3)}([a-f0-9]{2})?$`, "i"), cn = RegExp(`^rgba?\\(\\s*(\\d+)\\s*${Q(",\\s*(\\d+)\\s*", 2)}(?:,\\s*([\\d.]+))?\\s*\\)$`, "i"), ln = /^hsla?\(\s*([\d.]+)\s*,\s*([\d.]+)%\s*,\s*([\d.]+)%(?:\s*,\s*([\d.]+))?\s*\)$/i, un = /^[a-z]+$/i, dn = (e) => Math.round(e * 255), fn = (e, t, n) => {
2208
+ var Q = (e, t) => Array.from(Array(t)).map(() => e).join(""), cn = RegExp(`^#${Q("([a-f0-9])", 3)}([a-f0-9])?$`, "i"), ln = RegExp(`^#${Q("([a-f0-9]{2})", 3)}([a-f0-9]{2})?$`, "i"), un = RegExp(`^rgba?\\(\\s*(\\d+)\\s*${Q(",\\s*(\\d+)\\s*", 2)}(?:,\\s*([\\d.]+))?\\s*\\)$`, "i"), dn = /^hsla?\(\s*([\d.]+)\s*,\s*([\d.]+)%\s*,\s*([\d.]+)%(?:\s*,\s*([\d.]+))?\s*\)$/i, fn = /^[a-z]+$/i, pn = (e) => Math.round(e * 255), mn = (e, t, n) => {
2194
2209
  let r = n / 100;
2195
2210
  if (t === 0) return [
2196
2211
  r,
2197
2212
  r,
2198
2213
  r
2199
- ].map(dn);
2214
+ ].map(pn);
2200
2215
  let i = (e % 360 + 360) % 360 / 60, a = (1 - Math.abs(2 * r - 1)) * (t / 100), o = a * (1 - Math.abs(i % 2 - 1)), s = 0, c = 0, l = 0;
2201
2216
  i >= 0 && i < 1 ? (s = a, c = o) : i >= 1 && i < 2 ? (s = o, c = a) : i >= 2 && i < 3 ? (c = a, l = o) : i >= 3 && i < 4 ? (c = o, l = a) : i >= 4 && i < 5 ? (s = o, l = a) : i >= 5 && i < 6 && (s = a, l = o);
2202
2217
  let u = r - a / 2;
@@ -2204,29 +2219,29 @@ var Q = (e, t) => Array.from(Array(t)).map(() => e).join(""), on = RegExp(`^#${Q
2204
2219
  s + u,
2205
2220
  c + u,
2206
2221
  l + u
2207
- ].map(dn);
2222
+ ].map(pn);
2208
2223
  };
2209
- function pn(e) {
2224
+ function hn(e) {
2210
2225
  if (e === "transparent") return 0;
2211
2226
  function t(e) {
2212
2227
  let t = e / 255;
2213
2228
  return t <= .04045 ? t / 12.92 : ((t + .055) / 1.055) ** 2.4;
2214
2229
  }
2215
- let [n, r, i] = en(e);
2230
+ let [n, r, i] = nn(e);
2216
2231
  return .2126 * t(n) + .7152 * t(r) + .0722 * t(i);
2217
2232
  }
2218
- function mn(e) {
2219
- return pn(e) > .179;
2233
+ function gn(e) {
2234
+ return hn(e) > .179;
2220
2235
  }
2221
2236
  //#endregion
2222
2237
  //#region src/lib/board/Cursors/Cursor.jsx
2223
- var hn = W({
2238
+ var _n = K({
2224
2239
  display: "flex",
2225
2240
  flexDirection: "row",
2226
2241
  alignItems: "center",
2227
2242
  zIndex: 210,
2228
2243
  pointerEvents: "none"
2229
- }), gn = W({
2244
+ }), vn = K({
2230
2245
  fontWeight: "bold",
2231
2246
  padding: "0 0.5em",
2232
2247
  borderRadius: "2px",
@@ -2237,10 +2252,10 @@ var hn = W({
2237
2252
  marginTop: "1.7em",
2238
2253
  whitespace: "nowrap",
2239
2254
  pointerEvents: "none"
2240
- }), _n = e.memo(({ color: e = "#666", size: t = 40, text: n }) => {
2241
- let r = mn(e) ? "#222" : "#EEE";
2255
+ }), yn = e.memo(({ color: e = "#666", size: t = 40, text: n }) => {
2256
+ let r = gn(e) ? "#222" : "#EEE";
2242
2257
  return /* @__PURE__ */ o("div", {
2243
- className: hn,
2258
+ className: _n,
2244
2259
  children: [/* @__PURE__ */ o("svg", {
2245
2260
  version: "1.1",
2246
2261
  xmlns: "http://www.w3.org/2000/svg",
@@ -2263,27 +2278,27 @@ var hn = W({
2263
2278
  color: r,
2264
2279
  backgroundColor: e
2265
2280
  },
2266
- className: gn,
2281
+ className: vn,
2267
2282
  children: n
2268
2283
  })]
2269
2284
  });
2270
- }), vn = W({
2285
+ }), bn = K({
2271
2286
  top: 0,
2272
2287
  left: 0,
2273
2288
  zIndex: 210,
2274
2289
  position: "fixed",
2275
2290
  pointerEvents: "none"
2276
- }), yn = ({ pos: e, ...t }) => /* @__PURE__ */ a("div", {
2277
- className: vn,
2291
+ }), xn = ({ pos: e, ...t }) => /* @__PURE__ */ a("div", {
2292
+ className: bn,
2278
2293
  style: { transform: `translate(${e.x - 6}px, ${e.y - 15}px)` },
2279
- children: /* @__PURE__ */ a(_n, { ...t })
2280
- }), bn = ({ children: e }) => {
2281
- let [t] = F((e) => [e.getConfiguration, e.boardState.scale]), { fromWrapperToBoard: n, fromBoardToWrapper: r } = L(), [i, s, c, l] = V((e) => [
2294
+ children: /* @__PURE__ */ a(yn, { ...t })
2295
+ }), Sn = ({ children: e }) => {
2296
+ let [t] = R((e) => [e.getConfiguration, e.boardState.scale]), { fromWrapperToBoard: n, fromBoardToWrapper: r } = B(), [i, s, c, l] = U((e) => [
2282
2297
  e.getUser(),
2283
2298
  e.getLocalUsers(),
2284
2299
  e.cursors,
2285
2300
  e.users
2286
- ]), [u, d] = V((e) => [e.moveCursor, e.removeCursor]), { boardWrapperRect: f } = t(), p = ({ clientX: e, clientY: t }) => {
2301
+ ]), [u, d] = U((e) => [e.moveCursor, e.removeCursor]), { boardWrapperRect: f } = t(), p = ({ clientX: e, clientY: t }) => {
2287
2302
  let [r, a] = n(e - f.left, t - f.top);
2288
2303
  u(i.id, {
2289
2304
  x: r,
@@ -2300,15 +2315,15 @@ var hn = W({
2300
2315
  x: n + f.left,
2301
2316
  y: i + f.top
2302
2317
  };
2303
- return j(o, f) ? /* @__PURE__ */ a(yn, {
2318
+ return N(o, f) ? /* @__PURE__ */ a(xn, {
2304
2319
  pos: o,
2305
2320
  text: l[e].name,
2306
2321
  color: l[e].color
2307
2322
  }, e) : null;
2308
2323
  })]
2309
2324
  });
2310
- }, xn = /[+-]?(?:\d*\.)?\d+(?:e[+-]?\d+)?(?:px|%)/gi;
2311
- function Sn(e, t = ",") {
2325
+ }, Cn = /[+-]?(?:\d*\.)?\d+(?:e[+-]?\d+)?(?:px|%)/gi;
2326
+ function wn(e, t = ",") {
2312
2327
  let n = 0, r = "", i = 0, a = [];
2313
2328
  for (let [o, s] of e.split("").entries()) if (r) s === r && e[o - 1] !== "\\" && (r = "");
2314
2329
  else if (s === "\"" || s === "'") r = s;
@@ -2322,10 +2337,10 @@ function Sn(e, t = ",") {
2322
2337
  return o && a.push(o), a;
2323
2338
  }
2324
2339
  function $(e, t) {
2325
- return [...e.replace(/\s/g, "").matchAll(xn)].reduce((e, [n]) => e + Number.parseFloat(n) * (n.endsWith("%") ? t / 100 : 1), 0);
2340
+ return [...e.replace(/\s/g, "").matchAll(Cn)].reduce((e, [n]) => e + Number.parseFloat(n) * (n.endsWith("%") ? t / 100 : 1), 0);
2326
2341
  }
2327
- function Cn(e, t, n, r) {
2328
- let [i, a = "auto"] = Sn(e, " "), o = r?.width, s = r?.height;
2342
+ function Tn(e, t, n, r) {
2343
+ let [i, a = "auto"] = wn(e, " "), o = r?.width, s = r?.height;
2329
2344
  if (i === "cover" || i === "contain") {
2330
2345
  if (!o || !s) return [t, n];
2331
2346
  let e = Math[i === "cover" ? "max" : "min"](t / o, n / s);
@@ -2334,13 +2349,13 @@ function Cn(e, t, n, r) {
2334
2349
  let c = i === "auto" ? null : $(i, t), l = a === "auto" ? null : $(a, n);
2335
2350
  return c === null && l === null ? [o || t, s || n] : (c === null && (c = o && s ? l * o / s : t), l === null && (l = o && s ? c * s / o : n), [c, l]);
2336
2351
  }
2337
- function wn(e, t, n) {
2352
+ function En(e, t, n) {
2338
2353
  let r = [
2339
2354
  [0, 0],
2340
2355
  [e, 0],
2341
2356
  [0, t],
2342
2357
  [e, t]
2343
- ].map((e) => k(e, n)), i = r.map(([e]) => e), a = r.map(([, e]) => e), o = Math.floor(Math.min(...i)) - 2, s = Math.floor(Math.min(...a)) - 2, c = Math.ceil(Math.max(...i)) + 2, l = Math.ceil(Math.max(...a)) + 2, [u, d] = A([o, s], n);
2358
+ ].map((e) => oe(e, n)), i = r.map(([e]) => e), a = r.map(([, e]) => e), o = Math.floor(Math.min(...i)) - 2, s = Math.floor(Math.min(...a)) - 2, c = Math.ceil(Math.max(...i)) + 2, l = Math.ceil(Math.max(...a)) + 2, [u, d] = M([o, s], n);
2344
2359
  return {
2345
2360
  left: o,
2346
2361
  top: s,
@@ -2350,9 +2365,9 @@ function wn(e, t, n) {
2350
2365
  y: d
2351
2366
  };
2352
2367
  }
2353
- var Tn = (e, t, n) => ((e - t) % n + n) % n;
2354
- function En(e, t, n, r) {
2355
- let i = wn(e, t, n), a = Number.isFinite(r) && r > 0 ? r : 512 * 2 ** Math.max(0, Math.ceil(Math.log2(1 / n.scale))), o = Math.floor(i.left / a) - 1, s = Math.floor((i.left + i.width) / a) + 1, c = Math.floor(i.top / a) - 1, l = Math.floor((i.top + i.height) / a) + 1, u = o * a, d = c * a, [f, p] = A([u, d], n);
2368
+ var Dn = (e, t, n) => ((e - t) % n + n) % n;
2369
+ function On(e, t, n, r) {
2370
+ let i = En(e, t, n), a = Number.isFinite(r) && r > 0 ? r : 512 * 2 ** Math.max(0, Math.ceil(Math.log2(1 / n.scale))), o = Math.floor(i.left / a) - 1, s = Math.floor((i.left + i.width) / a) + 1, c = Math.floor(i.top / a) - 1, l = Math.floor((i.top + i.height) / a) + 1, u = o * a, d = c * a, [f, p] = M([u, d], n);
2356
2371
  return {
2357
2372
  tiles: Array.from({ length: l - c + 1 }, (e, t) => {
2358
2373
  let n = c + t;
@@ -2374,18 +2389,18 @@ function En(e, t, n, r) {
2374
2389
  }
2375
2390
  //#endregion
2376
2391
  //#region src/lib/board/WorldBackground.jsx
2377
- var Dn = {
2392
+ var kn = {
2378
2393
  position: "absolute",
2379
2394
  inset: 0,
2380
2395
  pointerEvents: "none"
2381
2396
  };
2382
- function On({ style: t, tileSizeOverride: n }) {
2383
- let [r, i] = F((e) => [e.boardState, e.config.boardWrapperRect]), s = i.width || 1, c = i.height || 1, l = e.useRef(null), [u, d] = e.useState({
2397
+ function An({ style: t, tileSizeOverride: n }) {
2398
+ let [r, i] = R((e) => [e.boardState, e.config.boardWrapperRect]), s = i.width || 1, c = i.height || 1, l = e.useRef(null), [u, d] = e.useState({
2384
2399
  color: "#333",
2385
2400
  layers: []
2386
2401
  }), [f, p] = e.useState({});
2387
2402
  e.useLayoutEffect(() => {
2388
- let e = getComputedStyle(l.current), t = (t) => Sn(e[t]), n = t("backgroundSize"), r = t("backgroundPositionX"), i = t("backgroundPositionY"), a = t("backgroundRepeat"), o = t("backgroundBlendMode");
2403
+ let e = getComputedStyle(l.current), t = (t) => wn(e[t]), n = t("backgroundSize"), r = t("backgroundPositionX"), i = t("backgroundPositionY"), a = t("backgroundRepeat"), o = t("backgroundBlendMode");
2389
2404
  d({
2390
2405
  color: e.backgroundColor,
2391
2406
  layers: t("backgroundImage").map((e, t) => ({
@@ -2419,19 +2434,19 @@ function On({ style: t, tileSizeOverride: n }) {
2419
2434
  e = !1;
2420
2435
  };
2421
2436
  }, [u.layers]);
2422
- let m = En(s, c, r, n), h = u.layers.map((e) => {
2423
- let [t, n] = Cn(e.size, s, c, f[e.image]), r = ["repeat", "repeat-x"].includes(e.repeat) || e.repeat.startsWith("repeat "), i = ["repeat", "repeat-y"].includes(e.repeat) || e.repeat.endsWith(" repeat"), a = $(e.x, s - t), o = $(e.y, c - n);
2437
+ let m = On(s, c, r, n), h = u.layers.map((e) => {
2438
+ let [t, n] = Tn(e.size, s, c, f[e.image]), r = ["repeat", "repeat-x"].includes(e.repeat) || e.repeat.startsWith("repeat "), i = ["repeat", "repeat-y"].includes(e.repeat) || e.repeat.endsWith(" repeat"), a = $(e.x, s - t), o = $(e.y, c - n);
2424
2439
  return {
2425
2440
  ...e,
2426
2441
  size: `${t}px ${n}px`,
2427
- position: (e, s) => `${r && t ? Tn(a, e, t) : a - e}px ${i && n ? Tn(o, s, n) : o - s}px`
2442
+ position: (e, s) => `${r && t ? Dn(a, e, t) : a - e}px ${i && n ? Dn(o, s, n) : o - s}px`
2428
2443
  };
2429
2444
  });
2430
2445
  return /* @__PURE__ */ o("div", {
2431
2446
  className: "world-background",
2432
2447
  "aria-hidden": "true",
2433
2448
  style: {
2434
- ...Dn,
2449
+ ...kn,
2435
2450
  overflow: "hidden",
2436
2451
  backgroundColor: u.color
2437
2452
  },
@@ -2474,17 +2489,17 @@ function On({ style: t, tileSizeOverride: n }) {
2474
2489
  }
2475
2490
  //#endregion
2476
2491
  //#region src/lib/board/Board.jsx
2477
- var kn = ({ children: e }) => e, An = {}, jn = {
2492
+ var jn = ({ children: e }) => e, Mn = {}, Nn = {
2478
2493
  overflow: "hidden",
2479
2494
  position: "absolute",
2480
2495
  inset: 0
2481
- }, Mn = ({ moveFirst: t = !0, style: n, wrapperStyle: r, itemTemplates: i = An, boardSize: s = Ce, backgroundTileSize: c, children: l, showResizeHandle: u = !1, Wrapper: d = kn }) => {
2482
- let f = e.useRef(null), [m, h] = F((e) => [e.config.uid, e.updateConfiguration]), [g, _, v, y] = F((e) => [
2496
+ }, Pn = ({ moveFirst: t = !0, style: n, wrapperStyle: r, itemTemplates: i = Mn, boardSize: s = we, backgroundTileSize: c, children: l, showResizeHandle: u = !1, Wrapper: d = jn }) => {
2497
+ let f = e.useRef(null), [m, h] = R((e) => [e.config.uid, e.updateConfiguration]), [g, _, v, y] = R((e) => [
2483
2498
  e.boardState.translateX,
2484
2499
  e.boardState.translateY,
2485
2500
  e.boardState.scale,
2486
2501
  e.boardState.rotate
2487
- ]), { updateItemExtent: b } = L(), x = {
2502
+ ]), { updateItemExtent: b } = B(), x = {
2488
2503
  userSelect: "none",
2489
2504
  position: "absolute",
2490
2505
  inset: 0,
@@ -2504,7 +2519,7 @@ var kn = ({ children: e }) => e, An = {}, jn = {
2504
2519
  }, []), e.useEffect(() => {
2505
2520
  h({ boardWrapper: f.current });
2506
2521
  }, [h]), e.useEffect(() => {
2507
- m || h({ uid: B() });
2522
+ m || h({ uid: w() });
2508
2523
  }, [m, h]), e.useEffect(() => {
2509
2524
  h({
2510
2525
  itemTemplates: i,
@@ -2521,8 +2536,8 @@ var kn = ({ children: e }) => e, An = {}, jn = {
2521
2536
  }, [h, b]), p(f, () => {
2522
2537
  f.current && h({ boardWrapperRect: f.current.getBoundingClientRect() });
2523
2538
  });
2524
- let S = W({
2525
- ...jn,
2539
+ let S = K({
2540
+ ...Nn,
2526
2541
  ...r
2527
2542
  });
2528
2543
  return /* @__PURE__ */ o("div", {
@@ -2530,15 +2545,15 @@ var kn = ({ children: e }) => e, An = {}, jn = {
2530
2545
  id: m,
2531
2546
  className: `sync-board ${S}`,
2532
2547
  children: [
2533
- /* @__PURE__ */ a(On, {
2548
+ /* @__PURE__ */ a(An, {
2534
2549
  style: n,
2535
2550
  tileSizeOverride: c
2536
2551
  }),
2537
- /* @__PURE__ */ a(bn, { children: /* @__PURE__ */ a(Wt, {
2552
+ /* @__PURE__ */ a(Sn, { children: /* @__PURE__ */ a(Kt, {
2538
2553
  moveFirst: t,
2539
- children: /* @__PURE__ */ a(Yt, {
2554
+ children: /* @__PURE__ */ a(Zt, {
2540
2555
  moveFirst: t,
2541
- children: /* @__PURE__ */ a(Gt, {
2556
+ children: /* @__PURE__ */ a(qt, {
2542
2557
  moveFirst: t,
2543
2558
  children: /* @__PURE__ */ a(d, { children: /* @__PURE__ */ o("div", {
2544
2559
  onContextMenu: (e) => {
@@ -2546,7 +2561,7 @@ var kn = ({ children: e }) => e, An = {}, jn = {
2546
2561
  },
2547
2562
  style: x,
2548
2563
  className: `board-pane${v < .5 ? " board-pane__far" : ""}`,
2549
- children: [/* @__PURE__ */ a(Vt, {}), /* @__PURE__ */ a("div", {
2564
+ children: [/* @__PURE__ */ a(Ut, {}), /* @__PURE__ */ a("div", {
2550
2565
  style: { pointerEvents: "auto" },
2551
2566
  children: l
2552
2567
  })]
@@ -2554,7 +2569,7 @@ var kn = ({ children: e }) => e, An = {}, jn = {
2554
2569
  })
2555
2570
  })
2556
2571
  }) }),
2557
- /* @__PURE__ */ a(Qt, {})
2572
+ /* @__PURE__ */ a(en, {})
2558
2573
  ]
2559
2574
  });
2560
2575
  };
@@ -2562,6 +2577,6 @@ var kn = ({ children: e }) => e, An = {}, jn = {
2562
2577
  //#region src/lib/index.js
2563
2578
  mt(e.createElement);
2564
2579
  //#endregion
2565
- export { Mn as Board, it as BoardWrapper, at as RoomWrapper, Le as useAvailableActions, qe as useBoardConfig, L as useBoardPosition, Je as useBoardState, Se as useDebouncedItems, je as useGetSelectedItems, z as useItemActions, R as useItemInteraction, xe as useItems, nt as useMessage, Ae as useSelectedItems, Re as useSelectionBox, Ye as useSessionInfo, Ke as useUsers, D as useWire };
2580
+ export { Pn as Board, it as BoardWrapper, at as RoomWrapper, Re as useAvailableActions, qe as useBoardConfig, B as useBoardPosition, Je as useBoardState, Ce as useDebouncedItems, Me as useGetSelectedItems, H as useItemActions, V as useItemInteraction, Se as useItems, nt as useMessage, je as useSelectedItems, ze as useSelectionBox, Ye as useSessionInfo, Ke as useUsers, k as useWire };
2566
2581
 
2567
2582
  //# sourceMappingURL=react-sync-board.js.map