@jackuait/blok 0.4.3-beta.4 → 0.4.3-beta.6

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.
@@ -2,14 +2,14 @@ var No = Object.defineProperty, Ro = Object.defineProperties;
2
2
  var Po = Object.getOwnPropertyDescriptors;
3
3
  var Et = Object.getOwnPropertySymbols;
4
4
  var Re = Object.prototype.hasOwnProperty, Pe = Object.prototype.propertyIsEnumerable;
5
- var Ne = (a, t, e) => t in a ? No(a, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : a[t] = e, B = (a, t) => {
5
+ var Ne = (a, t, e) => t in a ? No(a, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : a[t] = e, y = (a, t) => {
6
6
  for (var e in t || (t = {}))
7
7
  Re.call(t, e) && Ne(a, e, t[e]);
8
8
  if (Et)
9
9
  for (var e of Et(t))
10
10
  Pe.call(t, e) && Ne(a, e, t[e]);
11
11
  return a;
12
- }, _ = (a, t) => Ro(a, Po(t));
12
+ }, P = (a, t) => Ro(a, Po(t));
13
13
  var Yt = (a, t) => {
14
14
  var e = {};
15
15
  for (var o in a)
@@ -19,7 +19,7 @@ var Yt = (a, t) => {
19
19
  t.indexOf(o) < 0 && Pe.call(a, o) && (e[o] = a[o]);
20
20
  return e;
21
21
  };
22
- import { i as N, g as Ho, a as f, b as be, c as E, l as I, S as y, d as Fo, e as _o, D as m, t as C, f as $, h as co, P as O, j as Ht, k as j, m as A, n as wt, o as ht, p as ho, q as J, T as jt, r as Ft, s as v, I as zo, u as Uo, v as ct, w as oe, x as Ko, y as Wo, z as $o, A as uo, B as Yo, C as po, E as fo, F as jo, G as Xo, H as Vo, J as qo, K as Go, L as ke, M as He, N as Zo, O as Fe, Q as _e, R as Jo, U as Qo, V as ts, W as es, X as os, Y as se, Z as _t, _ as ss, $ as ns, a0 as is, a1 as ze, a2 as rs, a3 as as, a4 as ls, a5 as cs, a6 as ds, a7 as hs, a8 as us } from "./inline-tool-convert-BBeAtLcM.mjs";
22
+ import { i as N, g as Ho, a as f, b as be, c as E, l as I, S as B, d as Fo, e as _o, D as m, t as C, f as $, h as co, P as O, j as Ht, k as j, m as A, n as wt, o as ht, p as ho, q as J, T as jt, r as Ft, s as v, I as zo, u as Uo, v as ct, w as oe, x as Ko, y as Wo, z as $o, A as uo, B as Yo, C as po, E as fo, F as jo, G as Xo, H as Vo, J as qo, K as Go, L as ke, M as He, N as Zo, O as Fe, Q as _e, R as Jo, U as Qo, V as ts, W as es, X as os, Y as se, Z as _t, _ as ss, $ as ns, a0 as is, a1 as ze, a2 as rs, a3 as as, a4 as ls, a5 as cs, a6 as ds, a7 as hs, a8 as us } from "./inline-tool-convert-DqYXfC5g.mjs";
23
23
  function ps(a) {
24
24
  return a && a.__esModule && Object.prototype.hasOwnProperty.call(a, "default") ? a.default : a;
25
25
  }
@@ -577,7 +577,7 @@ const z = class z extends Ct {
577
577
  const t = await this.extractToolData();
578
578
  if (t === void 0)
579
579
  return;
580
- const e = B({}, this.unavailableTunesData);
580
+ const e = y({}, this.unavailableTunesData);
581
581
  [
582
582
  ...this.tunesInstances.entries(),
583
583
  ...this.defaultTunesInstances.entries()
@@ -590,7 +590,7 @@ const z = class z extends Ct {
590
590
  }
591
591
  });
592
592
  const o = window.performance.now();
593
- this.lastSavedData = t, this.lastSavedTunes = B({}, e);
593
+ this.lastSavedData = t, this.lastSavedTunes = y({}, e);
594
594
  const s = window.performance.now();
595
595
  return {
596
596
  id: this.id,
@@ -608,7 +608,7 @@ const z = class z extends Ct {
608
608
  const t = await this.toolInstance.save(this.pluginsContent);
609
609
  if (!this.isEmpty || t === void 0 || t === null || typeof t != "object")
610
610
  return t;
611
- const e = B({}, t), o = (s) => {
611
+ const e = y({}, t), o = (s) => {
612
612
  const n = e[s];
613
613
  if (typeof n != "string")
614
614
  return;
@@ -672,7 +672,7 @@ const z = class z extends Ct {
672
672
  */
673
673
  updateCurrentInput() {
674
674
  var n;
675
- const t = y.anchorNode, e = document.activeElement, o = (i) => {
675
+ const t = B.anchorNode, e = document.activeElement, o = (i) => {
676
676
  if (!i)
677
677
  return;
678
678
  const r = i instanceof HTMLElement ? i : i.parentElement;
@@ -889,8 +889,8 @@ const z = class z extends Ct {
889
889
  const i = this.stretched ? z.styles.contentStretched : "";
890
890
  this.contentElement.className = t ? C(z.styles.content, z.styles.contentSelected) : C(z.styles.content, i);
891
891
  }
892
- const e = t === !0 && y.isRangeInsideContainer(this.holder), o = t === !1 && y.isFakeCursorInsideContainer(this.holder);
893
- !e && !o || ((s = this.blokEventBus) == null || s.emit(go, { state: t }), e && y.addFakeCursor(), o && y.removeFakeCursor(this.holder), (n = this.blokEventBus) == null || n.emit(mo, { state: t }));
892
+ const e = t === !0 && B.isRangeInsideContainer(this.holder), o = t === !1 && B.isFakeCursorInsideContainer(this.holder);
893
+ !e && !o || ((s = this.blokEventBus) == null || s.emit(go, { state: t }), e && B.addFakeCursor(), o && B.removeFakeCursor(this.holder), (n = this.blokEventBus) == null || n.emit(mo, { state: t }));
894
894
  }
895
895
  /**
896
896
  * Returns True if it is Selected
@@ -1355,7 +1355,8 @@ class Ss extends T {
1355
1355
  */
1356
1356
  get methods() {
1357
1357
  return this.cachedMethods === null && (this.cachedMethods = {
1358
- t: (t) => this.Blok.I18n.t(t)
1358
+ t: (t) => this.Blok.I18n.t(t),
1359
+ has: (t) => this.Blok.I18n.has(t)
1359
1360
  }), this.cachedMethods;
1360
1361
  }
1361
1362
  }
@@ -1458,7 +1459,7 @@ class As {
1458
1459
  * @returns {Promise<NotifierModule>} loaded notifier module
1459
1460
  */
1460
1461
  loadNotifierModule() {
1461
- return this.notifierModule !== null ? Promise.resolve(this.notifierModule) : (this.loadingPromise === null && (this.loadingPromise = import("./index-B6xvzBsa.mjs").then((t) => {
1462
+ return this.notifierModule !== null ? Promise.resolve(this.notifierModule) : (this.loadingPromise === null && (this.loadingPromise = import("./index-Bqo-x11-.mjs").then((t) => {
1462
1463
  const e = t;
1463
1464
  if (!this.isNotifierModule(e))
1464
1465
  throw new Error('notifier module does not expose a "show" method.');
@@ -1625,7 +1626,7 @@ function Os() {
1625
1626
  var Ns = Os();
1626
1627
  const Rs = /* @__PURE__ */ ps(Ns), Ps = /^\s*(?:javascript\s*:|data\s*:\s*text\s*\/\s*html)/i, Hs = /\s*(?:href|src)\s*=\s*(?:"\s*(?:javascript\s*:|data\s*:\s*text\s*\/\s*html)[^"]*"|'\s*(?:javascript\s*:|data\s*:\s*text\s*\/\s*html)[^']*|(?:javascript\s*:|data\s*:\s*text\s*\/\s*html)[^ \t\r\n>]*)/gi, ve = (a, t, e = {}) => a.map((o) => {
1627
1628
  const s = E(t) ? t(o.tool) : t, n = s != null ? s : {};
1628
- return A(n) && N(n) && N(e) ? o : _(B({}, o), {
1629
+ return A(n) && N(n) && N(e) ? o : P(y({}, o), {
1629
1630
  data: we(o.data, n, e)
1630
1631
  });
1631
1632
  }), q = (a, t = {}) => {
@@ -1814,7 +1815,7 @@ class qs extends T {
1814
1815
  }
1815
1816
  class Gs extends T {
1816
1817
  constructor() {
1817
- super(...arguments), this.selectionUtils = new y();
1818
+ super(...arguments), this.selectionUtils = new B();
1818
1819
  }
1819
1820
  /**
1820
1821
  * Available methods
@@ -2446,7 +2447,7 @@ const it = class it {
2446
2447
  */
2447
2448
  (this.items.length + o - 1) % this.items.length
2448
2449
  );
2449
- return f.canSetCaret(this.items[s]) && Ft(() => y.setCursor(this.items[s]), 50)(), this.items[s].classList.add(this.focusedCssClass), this.items[s].setAttribute("data-blok-focused", "true"), s;
2450
+ return f.canSetCaret(this.items[s]) && Ft(() => B.setCursor(this.items[s]), 50)(), this.items[s].classList.add(this.focusedCssClass), this.items[s].setAttribute("data-blok-focused", "true"), s;
2450
2451
  }
2451
2452
  };
2452
2453
  it.directions = {
@@ -2978,7 +2979,7 @@ class G extends xe {
2978
2979
  const o = (i = e == null ? void 0 : e.wrapperTag) != null ? i : "div", s = document.createElement(o);
2979
2980
  return o === "button" && s.setAttribute("type", "button"), s.className = this.getContainerClass(), s.setAttribute(m.popoverItem, ""), s.setAttribute("data-blok-testid", "popover-item"), t.name && s.setAttribute("data-blok-item-name", t.name), t.dataset && Object.entries(t.dataset).forEach(([d, h]) => {
2980
2981
  s.setAttribute(`data-${d}`, h);
2981
- }), t.isDisabled && s.setAttribute(m.disabled, "true"), this.isActive && s.setAttribute(m.popoverItemActive, "true"), this.hasChildren && s.setAttribute(m.hasChildren, "true"), this.createContentElements(s, t, e), t.hint !== void 0 && ((r = e == null ? void 0 : e.hint) == null ? void 0 : r.enabled) !== !1 && t.hint !== void 0 && this.addHint(s, _(B({}, t.hint), {
2982
+ }), t.isDisabled && s.setAttribute(m.disabled, "true"), this.isActive && s.setAttribute(m.popoverItemActive, "true"), this.hasChildren && s.setAttribute(m.hasChildren, "true"), this.createContentElements(s, t, e), t.hint !== void 0 && ((r = e == null ? void 0 : e.hint) == null ? void 0 : r.enabled) !== !1 && t.hint !== void 0 && this.addHint(s, P(y({}, t.hint), {
2982
2983
  position: ((l = e == null ? void 0 : e.hint) == null ? void 0 : l.position) || "right",
2983
2984
  alignment: ((c = e == null ? void 0 : e.hint) == null ? void 0 : c.alignment) || "center"
2984
2985
  })), s;
@@ -3083,7 +3084,7 @@ class G extends xe {
3083
3084
  enableConfirmationMode(t) {
3084
3085
  if (this.nodes.root === null)
3085
3086
  return;
3086
- const e = _(B(B({}, this.params), t), {
3087
+ const e = P(y(y({}, this.params), t), {
3087
3088
  confirmation: "confirmation" in t ? t.confirmation : void 0
3088
3089
  });
3089
3090
  this.setConfirmation(e), this.confirmationState = t, this.enableSpecialHoverAndFocusBehavior();
@@ -3335,7 +3336,7 @@ class St extends xe {
3335
3336
  return o.className = C(
3336
3337
  Gt.root,
3337
3338
  this.isInline && Ye.root
3338
- ), o.setAttribute(m.popoverItemHtml, ""), o.setAttribute("data-blok-testid", "popover-item-html"), t.name && o.setAttribute("data-blok-item-name", t.name), o.appendChild(t.element), t.hint !== void 0 && ((s = e == null ? void 0 : e.hint) == null ? void 0 : s.enabled) !== !1 && this.addHint(o, _(B({}, t.hint), {
3339
+ ), o.setAttribute(m.popoverItemHtml, ""), o.setAttribute("data-blok-testid", "popover-item-html"), t.name && o.setAttribute("data-blok-item-name", t.name), o.appendChild(t.element), t.hint !== void 0 && ((s = e == null ? void 0 : e.hint) == null ? void 0 : s.enabled) !== !1 && this.addHint(o, P(y({}, t.hint), {
3339
3340
  position: ((n = e == null ? void 0 : e.hint) == null ? void 0 : n.position) || "right",
3340
3341
  alignment: ((i = e == null ? void 0 : e.hint) == null ? void 0 : i.alignment) || "center"
3341
3342
  })), o;
@@ -3370,7 +3371,7 @@ class ko extends Ct {
3370
3371
  super(), this.params = t, this.itemsRenderParams = e, this.listeners = new It(), this.messages = {
3371
3372
  nothingFound: "Nothing found",
3372
3373
  search: "Search"
3373
- }, this.items = this.buildItems(t.items), t.messages && (this.messages = B(B({}, this.messages), t.messages)), this.nodes = this.createPopoverDOM(), this.appendItemElements(), this.nodes.popoverContainer && this.listeners.on(this.nodes.popoverContainer, "click", (o) => this.handleClick(o));
3374
+ }, this.items = this.buildItems(t.items), t.messages && (this.messages = y(y({}, this.messages), t.messages)), this.nodes = this.createPopoverDOM(), this.appendItemElements(), this.nodes.popoverContainer && this.listeners.on(this.nodes.popoverContainer, "click", (o) => this.handleClick(o));
3374
3375
  }
3375
3376
  /**
3376
3377
  * List of default popover items that are searchable and may have confirmation state
@@ -3953,7 +3954,7 @@ class je extends ft {
3953
3954
  ]
3954
3955
  });
3955
3956
  super(
3956
- _(B({}, t), {
3957
+ P(y({}, t), {
3957
3958
  flipper: o
3958
3959
  }),
3959
3960
  {
@@ -4108,7 +4109,7 @@ class je extends ft {
4108
4109
  t !== this.nestedPopoverTriggerItem && ((e = this.nestedPopoverTriggerItem) == null || e.handleClick(), super.destroyNestedPopoverIfExists()), super.handleItemClick(t);
4109
4110
  }
4110
4111
  }
4111
- const P = class P {
4112
+ const H = class H {
4112
4113
  constructor() {
4113
4114
  this.scrollPosition = null;
4114
4115
  }
@@ -4116,13 +4117,13 @@ const P = class P {
4116
4117
  * Locks body element scroll
4117
4118
  */
4118
4119
  lock() {
4119
- oe ? this.lockHard() : (document.body.classList.add(P.CSS.overflowHidden), document.body.setAttribute(P.DATA_ATTR.scrollLocked, "true"));
4120
+ oe ? this.lockHard() : (document.body.classList.add(H.CSS.overflowHidden), document.body.setAttribute(H.DATA_ATTR.scrollLocked, "true"));
4120
4121
  }
4121
4122
  /**
4122
4123
  * Unlocks body element scroll
4123
4124
  */
4124
4125
  unlock() {
4125
- oe ? this.unlockHard() : (document.body.classList.remove(P.CSS.overflowHidden), document.body.removeAttribute(P.DATA_ATTR.scrollLocked));
4126
+ oe ? this.unlockHard() : (document.body.classList.remove(H.CSS.overflowHidden), document.body.removeAttribute(H.DATA_ATTR.scrollLocked));
4126
4127
  }
4127
4128
  /**
4128
4129
  * Locks scroll in a hard way (via setting fixed position to body element)
@@ -4132,31 +4133,31 @@ const P = class P {
4132
4133
  "--window-scroll-offset",
4133
4134
  `${this.scrollPosition}px`
4134
4135
  ), document.body.classList.add(
4135
- P.CSS.overflowHidden,
4136
- P.CSS.fixed,
4137
- P.CSS.wFull
4138
- ), document.body.style.top = "calc(-1 * var(--window-scroll-offset))", document.body.setAttribute(P.DATA_ATTR.scrollLockedHard, "true");
4136
+ H.CSS.overflowHidden,
4137
+ H.CSS.fixed,
4138
+ H.CSS.wFull
4139
+ ), document.body.style.top = "calc(-1 * var(--window-scroll-offset))", document.body.setAttribute(H.DATA_ATTR.scrollLockedHard, "true");
4139
4140
  }
4140
4141
  /**
4141
4142
  * Unlocks hard scroll lock
4142
4143
  */
4143
4144
  unlockHard() {
4144
4145
  document.body.classList.remove(
4145
- P.CSS.overflowHidden,
4146
- P.CSS.fixed,
4147
- P.CSS.wFull
4148
- ), document.body.style.top = "", document.body.removeAttribute(P.DATA_ATTR.scrollLockedHard), this.scrollPosition !== null && window.scrollTo(0, this.scrollPosition), this.scrollPosition = null;
4146
+ H.CSS.overflowHidden,
4147
+ H.CSS.fixed,
4148
+ H.CSS.wFull
4149
+ ), document.body.style.top = "", document.body.removeAttribute(H.DATA_ATTR.scrollLockedHard), this.scrollPosition !== null && window.scrollTo(0, this.scrollPosition), this.scrollPosition = null;
4149
4150
  }
4150
4151
  };
4151
- P.CSS = {
4152
+ H.CSS = {
4152
4153
  overflowHidden: "overflow-hidden",
4153
4154
  fixed: "fixed",
4154
4155
  wFull: "w-full"
4155
- }, P.DATA_ATTR = {
4156
+ }, H.DATA_ATTR = {
4156
4157
  scrollLocked: "data-blok-scroll-locked",
4157
4158
  scrollLockedHard: "data-blok-scroll-locked-hard"
4158
4159
  };
4159
- let le = P;
4160
+ let le = H;
4160
4161
  const Jt = {
4161
4162
  root: "flex items-center mb-2 mt-1",
4162
4163
  text: "text-lg font-semibold text-text-primary",
@@ -4325,7 +4326,7 @@ class vo extends ko {
4325
4326
  }
4326
4327
  class Bn extends T {
4327
4328
  constructor() {
4328
- super(...arguments), this.opened = !1, this.selection = new y(), this.popover = null, this.flipperInstance = new Z({
4329
+ super(...arguments), this.opened = !1, this.selection = new B(), this.popover = null, this.flipperInstance = new Z({
4329
4330
  focusedItemClass: lt.focused,
4330
4331
  allowedKeys: [
4331
4332
  v.TAB,
@@ -4336,7 +4337,7 @@ class Bn extends T {
4336
4337
  v.LEFT
4337
4338
  ]
4338
4339
  }), this.flipperKeydownHandler = null, this.flipperKeydownSource = null, this.close = () => {
4339
- this.opened && (this.opened = !1, y.isAtBlok || this.selection.restore(), this.selection.clearSaved(), this.detachFlipperKeydownListener(), this.clearBlockSelectionOnClose(), this.eventsDispatcher.emit(this.events.closed), this.popover && (this.popover.off(X.Closed, this.onPopoverClose), this.popover.destroy(), this.popover.getElement().remove(), this.popover = null));
4340
+ this.opened && (this.opened = !1, B.isAtBlok || this.selection.restore(), this.selection.clearSaved(), this.detachFlipperKeydownListener(), this.clearBlockSelectionOnClose(), this.eventsDispatcher.emit(this.events.closed), this.popover && (this.popover.off(X.Closed, this.onPopoverClose), this.popover.destroy(), this.popover.getElement().remove(), this.popover = null));
4340
4341
  }, this.onPopoverClose = () => {
4341
4342
  this.close();
4342
4343
  };
@@ -4836,7 +4837,7 @@ class Cn {
4836
4837
  return (this.registeredShortcuts.get(t) || []).find(({ name: s }) => s === e);
4837
4838
  }
4838
4839
  }
4839
- const F = new Cn();
4840
+ const _ = new Cn();
4840
4841
  var Nt = /* @__PURE__ */ ((a) => (a.Opened = "toolbox-opened", a.Closed = "toolbox-closed", a.BlockAdded = "toolbox-block-added", a))(Nt || {});
4841
4842
  class In extends Ct {
4842
4843
  /**
@@ -5009,7 +5010,7 @@ class In extends Ct {
5009
5010
  * @param {string} shortcut - shortcut according to the ShortcutData Module format
5010
5011
  */
5011
5012
  enableShortcutForTool(t, e) {
5012
- F.add({
5013
+ _.add({
5013
5014
  name: e,
5014
5015
  on: this.api.ui.nodes.redactor,
5015
5016
  handler: async (o) => {
@@ -5033,7 +5034,7 @@ class In extends Ct {
5033
5034
  removeAllShortcuts() {
5034
5035
  this.toolsToBeDisplayed.forEach((t) => {
5035
5036
  const e = t.shortcut;
5036
- e && F.remove(this.api.ui.nodes.redactor, e);
5037
+ e && _.remove(this.api.ui.nodes.redactor, e);
5037
5038
  });
5038
5039
  }
5039
5040
  /**
@@ -5427,7 +5428,7 @@ class En extends T {
5427
5428
  */
5428
5429
  plusButtonClicked() {
5429
5430
  var t, e;
5430
- this.hoveredBlock && (this.Blok.BlockManager.currentBlock = this.hoveredBlock), this.Blok.BlockSettings.opened && this.Blok.BlockSettings.close(), this.Blok.BlockSelection.anyBlockSelected && this.Blok.BlockSelection.clearSelection(), (t = y.get()) == null || t.removeAllRanges(), (e = this.toolboxInstance) == null || e.toggle();
5431
+ this.hoveredBlock && (this.Blok.BlockManager.currentBlock = this.hoveredBlock), this.Blok.BlockSettings.opened && this.Blok.BlockSettings.close(), this.Blok.BlockSelection.anyBlockSelected && this.Blok.BlockSelection.clearSelection(), (t = B.get()) == null || t.removeAllRanges(), (e = this.toolboxInstance) == null || e.toggle();
5431
5432
  }
5432
5433
  /**
5433
5434
  * Enable bindings
@@ -5839,14 +5840,14 @@ class An extends T {
5839
5840
  if (t instanceof HTMLElement)
5840
5841
  return i;
5841
5842
  if (t.type === O.Html)
5842
- return i.push(_(B(B({}, r), t), {
5843
+ return i.push(P(y(y({}, r), t), {
5843
5844
  type: O.Html
5844
5845
  })), i;
5845
5846
  if (t.type === O.Separator)
5846
5847
  return i.push({
5847
5848
  type: O.Separator
5848
5849
  }), i;
5849
- const l = _(B(B({}, r), t), {
5850
+ const l = P(y(y({}, r), t), {
5850
5851
  type: O.Default
5851
5852
  });
5852
5853
  return i.push(l), "children" in l && n && i.push({
@@ -5859,7 +5860,7 @@ class An extends T {
5859
5860
  applyPosition(t) {
5860
5861
  if (!this.nodes.wrapper)
5861
5862
  return;
5862
- const e = this.Blok.UI.nodes.wrapper.getBoundingClientRect(), o = this.Blok.UI.contentRect, s = y.rect, n = {
5863
+ const e = this.Blok.UI.nodes.wrapper.getBoundingClientRect(), o = this.Blok.UI.contentRect, s = B.rect, n = {
5863
5864
  x: s.x - e.x,
5864
5865
  y: s.y + s.height - e.top + this.toolbarVerticalMargin
5865
5866
  };
@@ -5869,7 +5870,7 @@ class An extends T {
5869
5870
  * Need to show Inline Toolbar or not
5870
5871
  */
5871
5872
  allowedToShow() {
5872
- const t = ["IMG", "INPUT"], e = this.resolveSelection(), o = y.text;
5873
+ const t = ["IMG", "INPUT"], e = this.resolveSelection(), o = B.text;
5873
5874
  if (!e || !e.anchorNode || e.isCollapsed || o.length < 1)
5874
5875
  return !1;
5875
5876
  const s = f.isElement(e.anchorNode) ? e.anchorNode : e.anchorNode.parentElement;
@@ -5882,7 +5883,7 @@ class An extends T {
5882
5883
  if (s.closest(d) !== null)
5883
5884
  return !0;
5884
5885
  const u = r.holder;
5885
- return u && (u.matches(d) ? u : u.closest(d)) ? !0 : this.Blok.ReadOnly.isEnabled ? y.isSelectionAtBlok(e) : !1;
5886
+ return u && (u.matches(d) ? u : u.closest(d)) ? !0 : this.Blok.ReadOnly.isEnabled ? B.isSelectionAtBlok(e) : !1;
5886
5887
  }
5887
5888
  /**
5888
5889
  * Working with Tools
@@ -5933,7 +5934,7 @@ class An extends T {
5933
5934
  */
5934
5935
  enableShortcuts(t, e) {
5935
5936
  const o = this.registeredShortcuts.get(t);
5936
- o !== e && (this.isShortcutTakenByAnotherTool(t, e) || (o !== void 0 && (F.remove(document, o), this.registeredShortcuts.delete(t)), F.add({
5937
+ o !== e && (this.isShortcutTakenByAnotherTool(t, e) || (o !== void 0 && (_.remove(document, o), this.registeredShortcuts.delete(t)), _.add({
5937
5938
  name: e,
5938
5939
  handler: (s) => {
5939
5940
  const { currentBlock: n } = this.Blok.BlockManager;
@@ -5999,11 +6000,11 @@ class An extends T {
5999
6000
  * Resolves the current selection, handling test mocks
6000
6001
  */
6001
6002
  resolveSelection() {
6002
- const t = y.selection;
6003
+ const t = B.selection;
6003
6004
  if (t !== void 0)
6004
6005
  return t;
6005
- const e = y.instance;
6006
- return e !== void 0 ? e : y.get();
6006
+ const e = B.instance;
6007
+ return e !== void 0 ? e : B.get();
6007
6008
  }
6008
6009
  }
6009
6010
  const $t = {
@@ -6240,7 +6241,7 @@ class Rn {
6240
6241
  * Add custom dictionary overrides
6241
6242
  */
6242
6243
  setDictionary(t) {
6243
- this.overrides = B(B({}, this.overrides), t);
6244
+ this.overrides = y(y({}, this.overrides), t);
6244
6245
  }
6245
6246
  /**
6246
6247
  * Get the current locale
@@ -6366,7 +6367,7 @@ class Pn extends T {
6366
6367
  async ensureI18nextLoaded(t, e) {
6367
6368
  if (this.i18nextWrapper !== null)
6368
6369
  return;
6369
- const { loadI18next: o } = await import("./i18next-loader-aMaQI76a.mjs");
6370
+ const { loadI18next: o } = await import("./i18next-loader-DolG6O7i.mjs");
6370
6371
  this.i18nextWrapper = await o(t, e);
6371
6372
  }
6372
6373
  /**
@@ -6798,7 +6799,7 @@ const Hn = (a) => {
6798
6799
  const { BlockSelection: e, BlockManager: o, Caret: s, BlockSettings: n } = this.Blok;
6799
6800
  if (n.contains(t.target))
6800
6801
  return !1;
6801
- const i = t.key === "Backspace" || t.key === "Delete", r = y.isSelectionExists, l = y.isCollapsed === !0;
6802
+ const i = t.key === "Backspace" || t.key === "Delete", r = B.isSelectionExists, l = B.isCollapsed === !0;
6802
6803
  if (!(i && e.anyBlockSelected && (!r || l)))
6803
6804
  return !1;
6804
6805
  const d = o.removeSelectedBlocks();
@@ -6883,7 +6884,7 @@ const Hn = (a) => {
6883
6884
  return;
6884
6885
  const i = n.textContent || "", r = o.holder.getAttribute("data-blok-depth"), l = r ? parseInt(r, 10) : 0, c = tt.CHECKLIST_PATTERN.exec(i);
6885
6886
  if (c) {
6886
- const S = ((x = c[1]) == null ? void 0 : x.toLowerCase()) === "x", M = c[1] !== void 0 ? 4 : 3, R = this.extractRemainingHtml(n, M), D = this.getCaretOffset(n) - M, et = t.replace(o, "list", B({
6887
+ const S = ((x = c[1]) == null ? void 0 : x.toLowerCase()) === "x", M = c[1] !== void 0 ? 4 : 3, R = this.extractRemainingHtml(n, M), D = this.getCaretOffset(n) - M, et = t.replace(o, "list", y({
6887
6888
  text: R,
6888
6889
  style: "checklist",
6889
6890
  checked: S
@@ -6892,7 +6893,7 @@ const Hn = (a) => {
6892
6893
  return;
6893
6894
  }
6894
6895
  if (tt.UNORDERED_LIST_PATTERN.exec(i)) {
6895
- const M = this.extractRemainingHtml(n, 2), R = this.getCaretOffset(n) - 2, D = t.replace(o, "list", B({
6896
+ const M = this.extractRemainingHtml(n, 2), R = this.getCaretOffset(n) - 2, D = t.replace(o, "list", y({
6896
6897
  text: M,
6897
6898
  style: "unordered",
6898
6899
  checked: !1
@@ -7035,7 +7036,7 @@ const Hn = (a) => {
7035
7036
  */
7036
7037
  backspace(t) {
7037
7038
  const { BlockManager: e, Caret: o } = this.Blok, { currentBlock: s, previousBlock: n } = e;
7038
- if (s === void 0 || !y.isCollapsed || !s.currentInput || !Pt(s.currentInput))
7039
+ if (s === void 0 || !B.isCollapsed || !s.currentInput || !Pt(s.currentInput))
7039
7040
  return;
7040
7041
  if (t.preventDefault(), this.Blok.Toolbar.close(), !(s.currentInput === s.firstInput)) {
7041
7042
  o.navigatePrevious();
@@ -7063,7 +7064,7 @@ const Hn = (a) => {
7063
7064
  */
7064
7065
  delete(t) {
7065
7066
  const { BlockManager: e, Caret: o } = this.Blok, { currentBlock: s, nextBlock: n } = e;
7066
- if (s === void 0 || !y.isCollapsed || !s.currentInput || !kt(s.currentInput))
7067
+ if (s === void 0 || !B.isCollapsed || !s.currentInput || !kt(s.currentInput))
7067
7068
  return;
7068
7069
  if (t.preventDefault(), this.Blok.Toolbar.close(), !(s.currentInput === s.lastInput)) {
7069
7070
  o.navigateNext();
@@ -7106,7 +7107,7 @@ const Hn = (a) => {
7106
7107
  if (this.Blok.UI.someToolbarOpened && o)
7107
7108
  return;
7108
7109
  t.shiftKey || (this.Blok.Toolbar.close(), this.Blok.InlineToolbar.close());
7109
- const s = y.get();
7110
+ const s = B.get();
7110
7111
  s != null && s.anchorNode && !this.Blok.BlockSelection.anyBlockSelected && this.Blok.BlockManager.setCurrentBlockByChildNode(s.anchorNode);
7111
7112
  const { currentBlock: n } = this.Blok.BlockManager, i = t.target, r = document.activeElement instanceof HTMLElement ? document.activeElement : null, l = [
7112
7113
  n == null ? void 0 : n.inputs.find((S) => i !== null && S.contains(i)),
@@ -7121,7 +7122,7 @@ const Hn = (a) => {
7121
7122
  u && this.Blok.InlineToolbar.tryToShow();
7122
7123
  const p = e === v.RIGHT && !t.shiftKey && !this.isRtl && c instanceof HTMLElement ? Hn(c) : null;
7123
7124
  if (p !== null) {
7124
- y.setCursor(p.node, p.offset), t.preventDefault();
7125
+ B.setCursor(p.node, p.offset), t.preventDefault();
7125
7126
  return;
7126
7127
  }
7127
7128
  const b = e === v.DOWN, k = e === v.RIGHT && !this.isRtl;
@@ -8114,13 +8115,13 @@ class Gn extends T {
8114
8115
  */
8115
8116
  setupKeyboardShortcuts() {
8116
8117
  setTimeout(() => {
8117
- ["CMD+SHIFT+UP", "CMD+SHIFT+DOWN"].forEach((e) => F.remove(document, e)), F.add({
8118
+ ["CMD+SHIFT+UP", "CMD+SHIFT+DOWN"].forEach((e) => _.remove(document, e)), _.add({
8118
8119
  name: "CMD+SHIFT+UP",
8119
8120
  on: document,
8120
8121
  handler: (e) => {
8121
8122
  this.shouldHandleShortcut(e) && (e.preventDefault(), this.moveCurrentBlockUp());
8122
8123
  }
8123
- }), this.registeredShortcuts.push("CMD+SHIFT+UP"), F.add({
8124
+ }), this.registeredShortcuts.push("CMD+SHIFT+UP"), _.add({
8124
8125
  name: "CMD+SHIFT+DOWN",
8125
8126
  on: document,
8126
8127
  handler: (e) => {
@@ -8146,7 +8147,7 @@ class Gn extends T {
8146
8147
  */
8147
8148
  async destroy() {
8148
8149
  for (const t of this.registeredShortcuts)
8149
- F.remove(document, t);
8150
+ _.remove(document, t);
8150
8151
  this.registeredShortcuts = [], await Promise.all(this.blocks.map((t) => t.destroy()));
8151
8152
  }
8152
8153
  /**
@@ -8200,10 +8201,10 @@ class Gn extends T {
8200
8201
  * @param detailData - additional data to pass with change event
8201
8202
  */
8202
8203
  blockDidMutated(t, e, o) {
8203
- const s = B({
8204
+ const s = y({
8204
8205
  target: new V(e)
8205
8206
  }, o), n = new CustomEvent(t, {
8206
- detail: B({}, s)
8207
+ detail: y({}, s)
8207
8208
  });
8208
8209
  return Object.prototype.propertyIsEnumerable.call(n, "type") || Object.defineProperty(n, "type", {
8209
8210
  value: t,
@@ -8220,7 +8221,7 @@ class Gn extends T {
8220
8221
  }
8221
8222
  class Zn extends T {
8222
8223
  constructor() {
8223
- super(...arguments), this.anyBlockSelectedCache = null, this._navigationModeEnabled = !1, this.navigationFocusIndex = -1, this.needToSelectAll = !1, this.nativeInputSelected = !1, this.readyToBlockSelection = !1, this.selection = new y();
8224
+ super(...arguments), this.anyBlockSelectedCache = null, this._navigationModeEnabled = !1, this.navigationFocusIndex = -1, this.needToSelectAll = !1, this.nativeInputSelected = !1, this.readyToBlockSelection = !1, this.selection = new B();
8224
8225
  }
8225
8226
  /**
8226
8227
  * Sanitizer Config
@@ -8307,7 +8308,7 @@ class Zn extends T {
8307
8308
  * to select all and copy them
8308
8309
  */
8309
8310
  prepare() {
8310
- this.selection = new y(), F.add({
8311
+ this.selection = new B(), _.add({
8311
8312
  name: "CMD+A",
8312
8313
  handler: (t) => {
8313
8314
  const { BlockManager: e, ReadOnly: o } = this.Blok;
@@ -8327,7 +8328,7 @@ class Zn extends T {
8327
8328
  * - Unselect all Blocks
8328
8329
  */
8329
8330
  toggleReadOnly() {
8330
- const t = y.get();
8331
+ const t = B.get();
8331
8332
  t == null || t.removeAllRanges(), this.allBlocksSelected = !1;
8332
8333
  }
8333
8334
  /**
@@ -8347,7 +8348,7 @@ class Zn extends T {
8347
8348
  const { RectangleSelection: o } = this.Blok;
8348
8349
  this.needToSelectAll = !1, this.nativeInputSelected = !1, this.readyToBlockSelection = !1, this._navigationModeEnabled && this.disableNavigationMode();
8349
8350
  const s = t && t instanceof KeyboardEvent, n = t, i = s && n.key && n.key.length === 1;
8350
- this.anyBlockSelected && s && i && !y.isSelectionExists && this.replaceSelectedBlocksWithPrintableKey(t), this.Blok.CrossBlockSelection.clear(t), e && this.selection.restore(), o.isRectActivated() && this.Blok.RectangleSelection.clearSelection(), this.anyBlockSelected && (this.allBlocksSelected = !1);
8351
+ this.anyBlockSelected && s && i && !B.isSelectionExists && this.replaceSelectedBlocksWithPrintableKey(t), this.Blok.CrossBlockSelection.clear(t), e && this.selection.restore(), o.isRectActivated() && this.Blok.RectangleSelection.clearSelection(), this.anyBlockSelected && (this.allBlocksSelected = !1);
8351
8352
  }
8352
8353
  /**
8353
8354
  * Reduce each Block and copy its content
@@ -8396,7 +8397,7 @@ class Zn extends T {
8396
8397
  */
8397
8398
  selectBlock(t) {
8398
8399
  this.selection.save();
8399
- const e = y.get();
8400
+ const e = B.get();
8400
8401
  e == null || e.removeAllRanges();
8401
8402
  const o = t;
8402
8403
  o.selected = !0, this.clearCache(), this.Blok.InlineToolbar.close();
@@ -8471,7 +8472,7 @@ class Zn extends T {
8471
8472
  return;
8472
8473
  const s = this.navigationFocusedBlock;
8473
8474
  s && s.holder.removeAttribute("data-blok-navigation-focused"), this.navigationFocusIndex = t, o.holder.setAttribute("data-blok-navigation-focused", "true");
8474
- const n = y.get();
8475
+ const n = B.get();
8475
8476
  n == null || n.removeAllRanges(), document.activeElement instanceof HTMLElement && document.activeElement.blur(), o.holder.scrollIntoView({
8476
8477
  behavior: "smooth",
8477
8478
  block: "nearest"
@@ -8482,7 +8483,7 @@ class Zn extends T {
8482
8483
  * De-registers Shortcut CMD+A
8483
8484
  */
8484
8485
  destroy() {
8485
- F.remove(this.Blok.UI.nodes.redactor, "CMD+A");
8486
+ _.remove(this.Blok.UI.nodes.redactor, "CMD+A");
8486
8487
  }
8487
8488
  /**
8488
8489
  * First CMD+A selects all input content by native behaviour,
@@ -8518,7 +8519,7 @@ class Zn extends T {
8518
8519
  */
8519
8520
  selectAllBlocks() {
8520
8521
  this.selection.save();
8521
- const t = y.get();
8522
+ const t = B.get();
8522
8523
  t == null || t.removeAllRanges(), this.allBlocksSelected = !0, this.Blok.InlineToolbar.close();
8523
8524
  }
8524
8525
  /**
@@ -8751,7 +8752,7 @@ class Ee extends T {
8751
8752
  * @param {number} offset - offset
8752
8753
  */
8753
8754
  set(t, e = 0) {
8754
- const { top: s, bottom: n } = y.setCursor(t, e), { innerHeight: i } = window;
8755
+ const { top: s, bottom: n } = B.setCursor(t, e), { innerHeight: i } = window;
8755
8756
  if (s < 0) {
8756
8757
  window.scrollBy(0, s - 30);
8757
8758
  return;
@@ -8777,7 +8778,7 @@ class Ee extends T {
8777
8778
  */
8778
8779
  extractFragmentFromCaretPosition() {
8779
8780
  var i;
8780
- const t = y.get();
8781
+ const t = B.get();
8781
8782
  if (!t || !t.rangeCount)
8782
8783
  return;
8783
8784
  const e = t.getRangeAt(0), o = this.Blok.BlockManager.currentBlock;
@@ -8900,7 +8901,7 @@ class Ee extends T {
8900
8901
  const e = t.querySelector('[data-blok-testid="shadow-caret"]');
8901
8902
  if (!e)
8902
8903
  return;
8903
- new y().expandToTag(e);
8904
+ new B().expandToTag(e);
8904
8905
  const s = document.createRange();
8905
8906
  s.selectNode(e), s.extractContents();
8906
8907
  }
@@ -8909,7 +8910,7 @@ class Ee extends T {
8909
8910
  * @param {string} content - content to insert
8910
8911
  */
8911
8912
  insertContentAtCaretPosition(t) {
8912
- const e = document.createDocumentFragment(), o = document.createElement("div"), s = y.get(), n = y.range;
8913
+ const e = document.createDocumentFragment(), o = document.createElement("div"), s = B.get(), n = B.range;
8913
8914
  if (!s || !n)
8914
8915
  return;
8915
8916
  o.innerHTML = t, Array.from(o.childNodes).forEach((c) => e.appendChild(c)), e.childNodes.length === 0 && e.appendChild(new Text());
@@ -8931,7 +8932,7 @@ class ti extends T {
8931
8932
  const r = o.getBlockByChildNode(e.relatedTarget) || this.lastSelectedBlock, l = o.getBlockByChildNode(e.target);
8932
8933
  if (!(!r || !l) && l !== r) {
8933
8934
  if (this.firstSelectedBlock && r === this.firstSelectedBlock) {
8934
- (c = y.get()) == null || c.removeAllRanges(), r.selected = !0, l.selected = !0, s.clearCache();
8935
+ (c = B.get()) == null || c.removeAllRanges(), r.selected = !0, l.selected = !0, s.clearCache();
8935
8936
  return;
8936
8937
  }
8937
8938
  if (this.firstSelectedBlock && l === this.firstSelectedBlock) {
@@ -8976,7 +8977,7 @@ class ti extends T {
8976
8977
  toggleBlockSelectedState(t = !0) {
8977
8978
  var r;
8978
8979
  const { BlockManager: e, BlockSelection: o } = this.Blok, s = e.currentBlock;
8979
- if (!this.lastSelectedBlock && !s || (!this.lastSelectedBlock && s && (this.lastSelectedBlock = this.firstSelectedBlock = s), this.firstSelectedBlock === this.lastSelectedBlock && this.firstSelectedBlock && (this.firstSelectedBlock.selected = !0, o.clearCache(), (r = y.get()) == null || r.removeAllRanges(), this.Blok.Toolbar.close()), !this.lastSelectedBlock))
8980
+ if (!this.lastSelectedBlock && !s || (!this.lastSelectedBlock && s && (this.lastSelectedBlock = this.firstSelectedBlock = s), this.firstSelectedBlock === this.lastSelectedBlock && this.firstSelectedBlock && (this.firstSelectedBlock.selected = !0, o.clearCache(), (r = B.get()) == null || r.removeAllRanges(), this.Blok.Toolbar.close()), !this.lastSelectedBlock))
8980
8981
  return;
8981
8982
  const n = e.blocks.indexOf(this.lastSelectedBlock) + (t ? 1 : -1), i = e.blocks[n];
8982
8983
  i && (this.lastSelectedBlock.selected !== i.selected ? (i.selected = !0, o.clearCache(), this.Blok.Toolbar.close()) : (this.lastSelectedBlock.selected = !1, o.clearCache(), this.Blok.Toolbar.close()), this.lastSelectedBlock = i, this.Blok.InlineToolbar.close(), i.holder.scrollIntoView({
@@ -9017,7 +9018,7 @@ class ti extends T {
9017
9018
  */
9018
9019
  enableCrossBlockSelection(t) {
9019
9020
  const { UI: e } = this.Blok;
9020
- e.nodes.redactor && (y.isCollapsed || this.Blok.BlockSelection.clearSelection(t), e.nodes.redactor.contains(t.target) ? this.watchSelection(t) : this.Blok.BlockSelection.clearSelection(t));
9021
+ e.nodes.redactor && (B.isCollapsed || this.Blok.BlockSelection.clearSelection(t), e.nodes.redactor.contains(t.target) ? this.watchSelection(t) : this.Blok.BlockSelection.clearSelection(t));
9021
9022
  }
9022
9023
  /**
9023
9024
  * Change blocks selection state between passed two blocks.
@@ -9946,7 +9947,7 @@ const ro = /* @__PURE__ */ new Set([
9946
9947
  if (!i)
9947
9948
  return null;
9948
9949
  const { content: r, tool: l, isBlock: c } = i, h = (l.pasteConfig === !1 ? [] : ((k = l.pasteConfig) == null ? void 0 : k.tags) || []).reduce((w, x) => {
9949
- const S = this.collectTagNames(x), M = B({}, w);
9950
+ const S = this.collectTagNames(x), M = y({}, w);
9950
9951
  return S.forEach((R) => {
9951
9952
  const D = A(x) ? x[R] : null;
9952
9953
  M[R.toLowerCase()] = D != null ? D : {};
@@ -10389,7 +10390,7 @@ class ni extends T {
10389
10390
  if (this.rectCrossesBlocks = !(i || r), this.isRectSelectionActivated || (this.rectCrossesBlocks = !1, this.isRectSelectionActivated = !0, this.shrinkRectangleToPoint(), e.style.display = "block"), this.updateRectangleSize(), this.Blok.Toolbar.close(), n === void 0)
10390
10391
  return;
10391
10392
  this.trySelectNextBlock(n), this.inverseSelection();
10392
- const l = y.get();
10393
+ const l = B.get();
10393
10394
  l && l.removeAllRanges();
10394
10395
  }
10395
10396
  /**
@@ -10512,10 +10513,10 @@ const ii = (a) => a.some((t) => t.items !== void 0 && t.items.length > 0), ri =
10512
10513
  return a.forEach((l, c) => {
10513
10514
  const d = be();
10514
10515
  r.push(d);
10515
- const h = l.items && l.items.length > 0 ? Lo(l.items, d, e + 1, o, void 0, n, i) : [], u = o === "ordered" && e === 0 && c === 0 && s !== void 0 && s !== 1, g = B(B(B({
10516
+ const h = l.items && l.items.length > 0 ? Lo(l.items, d, e + 1, o, void 0, n, i) : [], u = o === "ordered" && e === 0 && c === 0 && s !== void 0 && s !== 1, g = y(y(y({
10516
10517
  id: d,
10517
10518
  type: "list_item",
10518
- data: B({
10519
+ data: y({
10519
10520
  text: l.content,
10520
10521
  checked: l.checked,
10521
10522
  style: o
@@ -10535,7 +10536,7 @@ const ii = (a) => a.some((t) => t.items !== void 0 && t.items.length > 0), ri =
10535
10536
  const r = s.data, l = ci(r, s.tunes);
10536
10537
  t.push(...l);
10537
10538
  } else
10538
- t.push(_(B({}, s), {
10539
+ t.push(P(y({}, s), {
10539
10540
  id: n
10540
10541
  }));
10541
10542
  }
@@ -10567,10 +10568,10 @@ const ii = (a) => a.some((t) => t.items !== void 0 && t.items.length > 0), ri =
10567
10568
  }, pi = (a, t, e) => {
10568
10569
  var r, l;
10569
10570
  const o = Oo(a, t, e), s = ((r = a.data) == null ? void 0 : r.style) || "unordered", n = (l = a.data) == null ? void 0 : l.start;
10570
- return B({
10571
+ return y({
10571
10572
  id: a.id,
10572
10573
  type: "list",
10573
- data: B({
10574
+ data: y({
10574
10575
  style: s,
10575
10576
  items: o
10576
10577
  }, s === "ordered" && n !== void 0 && n !== 1 ? { start: n } : {})
@@ -10726,7 +10727,7 @@ class ki extends T {
10726
10727
  isValid: !1
10727
10728
  };
10728
10729
  const n = await t.validate(s.data);
10729
- return _(B({}, s), {
10730
+ return P(y({}, s), {
10730
10731
  isValid: n,
10731
10732
  parentId: t.parentId,
10732
10733
  contentIds: t.contentIds
@@ -10757,7 +10758,7 @@ class ki extends T {
10757
10758
  I("Stub block data is malformed and was skipped");
10758
10759
  return;
10759
10760
  }
10760
- const k = u === void 0 || N(u), w = p != null, x = b !== void 0 && b.length > 0, S = B(B(B({
10761
+ const k = u === void 0 || N(u), w = p != null, x = b !== void 0 && b.length > 0, S = y(y(y({
10761
10762
  id: c,
10762
10763
  type: d,
10763
10764
  data: h
@@ -10796,10 +10797,10 @@ class ki extends T {
10796
10797
  s.map(({ data: r }) => r),
10797
10798
  e,
10798
10799
  o
10799
- ), i = t.map((r) => B({}, r));
10800
+ ), i = t.map((r) => y({}, r));
10800
10801
  return s.forEach(({ index: r }, l) => {
10801
10802
  const c = n[l];
10802
- i[r] = _(B({}, i[r]), {
10803
+ i[r] = P(y({}, i[r]), {
10803
10804
  data: c.data
10804
10805
  });
10805
10806
  }), i;
@@ -10836,7 +10837,7 @@ class ki extends T {
10836
10837
  if (N(e))
10837
10838
  return;
10838
10839
  const o = t.preservedTunes;
10839
- return _(B({
10840
+ return P(y({
10840
10841
  id: t.id,
10841
10842
  tool: t.name,
10842
10843
  data: e
@@ -10946,46 +10947,46 @@ class wi extends Se {
10946
10947
  });
10947
10948
  }
10948
10949
  }
10949
- class H extends Map {
10950
+ class F extends Map {
10950
10951
  /**
10951
10952
  * Returns Block Tools collection
10952
10953
  */
10953
10954
  get blockTools() {
10954
10955
  const t = Array.from(this.entries()).filter(([, e]) => e.isBlock());
10955
- return new H(t);
10956
+ return new F(t);
10956
10957
  }
10957
10958
  /**
10958
10959
  * Returns Inline Tools collection
10959
10960
  */
10960
10961
  get inlineTools() {
10961
10962
  const t = Array.from(this.entries()).filter(([, e]) => e.isInline());
10962
- return new H(t);
10963
+ return new F(t);
10963
10964
  }
10964
10965
  /**
10965
10966
  * Returns Block Tunes collection
10966
10967
  */
10967
10968
  get blockTunes() {
10968
10969
  const t = Array.from(this.entries()).filter(([, e]) => e.isTune());
10969
- return new H(t);
10970
+ return new F(t);
10970
10971
  }
10971
10972
  /**
10972
10973
  * Returns internal Tools collection
10973
10974
  */
10974
10975
  get internalTools() {
10975
10976
  const t = Array.from(this.entries()).filter(([, e]) => e.isInternal);
10976
- return new H(t);
10977
+ return new F(t);
10977
10978
  }
10978
10979
  /**
10979
10980
  * Returns Tools collection provided by user
10980
10981
  */
10981
10982
  get externalTools() {
10982
10983
  const t = Array.from(this.entries()).filter(([, e]) => !e.isInternal);
10983
- return new H(t);
10984
+ return new F(t);
10984
10985
  }
10985
10986
  }
10986
10987
  class yi extends Se {
10987
10988
  constructor() {
10988
- super(...arguments), this.type = dt.Block, this.inlineTools = new H(), this.tunes = new H();
10989
+ super(...arguments), this.type = dt.Block, this.inlineTools = new F(), this.tunes = new F();
10989
10990
  }
10990
10991
  /**
10991
10992
  * Creates new Tool instance
@@ -10994,12 +10995,13 @@ class yi extends Se {
10994
10995
  * @param readOnly - True if Blok is in read-only mode
10995
10996
  */
10996
10997
  create(t, e, o) {
10998
+ const s = this.toolbox, n = s !== void 0 ? P(y({}, this.settings), { _toolboxEntries: s }) : this.settings;
10997
10999
  return new this.constructable({
10998
11000
  data: t,
10999
11001
  block: e,
11000
11002
  readOnly: o,
11001
11003
  api: this.api,
11002
- config: this.settings
11004
+ config: n
11003
11005
  });
11004
11006
  }
11005
11007
  /**
@@ -11044,9 +11046,9 @@ class yi extends Se {
11044
11046
  mergeToolboxSettings(t, e) {
11045
11047
  return e == null ? Array.isArray(t) ? t : [t] : !Array.isArray(e) && Array.isArray(t) ? [e] : Array.isArray(e) ? Array.isArray(t) ? e.map((o, s) => {
11046
11048
  const n = t[s];
11047
- return n ? B(B({}, n), o) : o;
11049
+ return n ? y(y({}, n), o) : o;
11048
11050
  }) : e : [
11049
- B(B({}, t), e)
11051
+ y(y({}, t), e)
11050
11052
  ];
11051
11053
  }
11052
11054
  /**
@@ -11136,20 +11138,46 @@ class Bi {
11136
11138
  * @param name - tool name
11137
11139
  */
11138
11140
  get(t) {
11139
- const r = this.config[t], { class: e, isInternal: o = !1 } = r, s = Yt(r, ["class", "isInternal"]), n = e;
11141
+ const l = this.config[t], { class: e, isInternal: o = !1 } = l, s = Yt(l, ["class", "isInternal"]), n = e;
11140
11142
  if (n === void 0)
11141
11143
  throw new Error(`Tool "${t}" does not provide a class.`);
11142
- const i = this.getConstructor(n);
11144
+ const i = this.getConstructor(n), r = this.createToolApi(t);
11143
11145
  return new i({
11144
11146
  name: t,
11145
11147
  constructable: n,
11146
11148
  config: s,
11147
- api: this.api.methods,
11149
+ api: r,
11148
11150
  isDefault: t === this.blokConfig.defaultBlock,
11149
11151
  defaultPlaceholder: this.blokConfig.placeholder,
11150
11152
  isInternal: o
11151
11153
  });
11152
11154
  }
11155
+ /**
11156
+ * Creates a tool-specific API with namespaced i18n.
11157
+ *
11158
+ * EditorJS tools expect `api.i18n.t('key')` to automatically look up
11159
+ * `tools.{toolName}.key`. This wrapper provides that behavior while
11160
+ * falling back to direct key lookup for Blok internal tools that use
11161
+ * fully-qualified keys like `tools.stub.error`.
11162
+ *
11163
+ * @param toolName - Name of the tool
11164
+ * @returns API object with tool-namespaced i18n
11165
+ */
11166
+ createToolApi(t) {
11167
+ const e = this.api.methods, o = `tools.${t}`, s = {
11168
+ t: (n) => {
11169
+ const i = `${o}.${n}`;
11170
+ return e.i18n.has(i) ? e.i18n.t(i) : e.i18n.t(n);
11171
+ },
11172
+ has: (n) => {
11173
+ const i = `${o}.${n}`;
11174
+ return e.i18n.has(i) || e.i18n.has(n);
11175
+ }
11176
+ };
11177
+ return P(y({}, e), {
11178
+ i18n: s
11179
+ });
11180
+ }
11153
11181
  /**
11154
11182
  * Find appropriate Tool object constructor for Tool constructable
11155
11183
  * @param constructable - Tools constructable
@@ -11200,7 +11228,7 @@ const ee = (a) => {
11200
11228
  };
11201
11229
  class xi extends T {
11202
11230
  constructor() {
11203
- super(...arguments), this.stubTool = "stub", this.factory = null, this.toolsAvailable = new H(), this.toolsUnavailable = new H(), this.inlineToolsSanitizeConfigCache = null;
11231
+ super(...arguments), this.stubTool = "stub", this.factory = null, this.toolsAvailable = new F(), this.toolsUnavailable = new F(), this.inlineToolsSanitizeConfigCache = null;
11204
11232
  }
11205
11233
  /**
11206
11234
  * Returns available Tools
@@ -11429,7 +11457,7 @@ class xi extends T {
11429
11457
  ...Array.from(o.entries()),
11430
11458
  ...Array.from(this.blockTunes.internalTools.entries())
11431
11459
  ];
11432
- e.tunes = new H(s);
11460
+ e.tunes = new F(s);
11433
11461
  return;
11434
11462
  }
11435
11463
  if (Array.isArray(this.config.tunes)) {
@@ -11437,10 +11465,10 @@ class xi extends T {
11437
11465
  ...Array.from(o.entries()),
11438
11466
  ...Array.from(this.blockTunes.internalTools.entries())
11439
11467
  ];
11440
- e.tunes = new H(s);
11468
+ e.tunes = new F(s);
11441
11469
  return;
11442
11470
  }
11443
- e.tunes = new H(
11471
+ e.tunes = new F(
11444
11472
  Array.from(this.blockTunes.internalTools.entries())
11445
11473
  );
11446
11474
  }
@@ -11513,7 +11541,7 @@ class xi extends T {
11513
11541
  }
11514
11542
  e.push([o, s]);
11515
11543
  }
11516
- return new H(e);
11544
+ return new F(e);
11517
11545
  }
11518
11546
  /**
11519
11547
  * Builds block tunes collection for provided tune names, skipping unavailable ones.
@@ -11530,7 +11558,7 @@ class xi extends T {
11530
11558
  }
11531
11559
  e.push([o, s]);
11532
11560
  }
11533
- return new H(e);
11561
+ return new F(e);
11534
11562
  }
11535
11563
  }
11536
11564
  const Ti = `*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:PT Mono,Menlo,Monaco,Consolas,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\\!container{width:100%!important}.container{width:100%}@media(min-width:640px){.\\!container{max-width:640px!important}.container{max-width:640px}}@media(min-width:651px){.\\!container{max-width:651px!important}.container{max-width:651px}}@media(min-width:768px){.\\!container{max-width:768px!important}.container{max-width:768px}}@media(min-width:1024px){.\\!container{max-width:1024px!important}.container{max-width:1024px}}@media(min-width:1280px){.\\!container{max-width:1280px!important}.container{max-width:1280px}}@media(min-width:1536px){.\\!container{max-width:1536px!important}.container{max-width:1536px}}.blok-block{padding:3px 2px}.blok-block::-webkit-input-placeholder{line-height:1.5!important}.blok-inline-tool-button{display:flex;height:100%;width:1.75rem;cursor:pointer;align-items:center;justify-content:center;border-radius:.25rem;border-width:0px;background-color:transparent;padding:0;line-height:1.5;--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.blok-inline-tool-button--active{background-color:#388ae51a;--tw-text-opacity: 1;color:rgb(56 138 229 / var(--tw-text-opacity, 1))}.blok-input{width:100%;border-radius:3px;border-width:1px;--tw-border-opacity: 1;border-color:rgb(239 240 241 / var(--tw-border-opacity, 1));padding:.625rem .75rem;--tw-shadow: inset 0 1px 2px 0 rgba(35, 44, 72, .06);--tw-shadow-colored: inset 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);outline:2px solid transparent;outline-offset:2px}.blok-input[data-blok-placeholder]:before{pointer-events:none;position:static!important;display:inline-block;width:0px;content:var(--tw-content);white-space:nowrap}.blok-loader{position:relative;border-width:1px;--tw-border-opacity: 1;border-color:rgb(239 240 241 / var(--tw-border-opacity, 1))}.blok-loader:before{position:absolute;left:50%;top:50%;margin-left:-11px;margin-top:-11px;height:18px;content:var(--tw-content);width:18px}@keyframes rotation{0%{content:var(--tw-content);transform:rotate(0)}to{content:var(--tw-content);transform:rotate(360deg)}}.blok-loader:before{animation:rotation 1.2s infinite linear;border-radius:9999px;border-width:2px;border-color:rgb(239 240 241 / var(--tw-border-opacity, 1));--tw-border-opacity: 1;border-left-color:rgb(56 138 229 / var(--tw-border-opacity, 1));--tw-content: "";content:var(--tw-content)}.blok-button{cursor:pointer;border-radius:3px;border-width:1px;--tw-border-opacity: 1;border-color:rgb(239 240 241 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:13px;text-align:center;font-size:14.9px;--tw-text-opacity: 1;color:rgb(112 118 132 / var(--tw-text-opacity, 1));--tw-shadow: 0 2px 2px 0 rgba(18, 30, 57, .04);--tw-shadow-colored: 0 2px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.blok-button:hover{--tw-bg-opacity: 1;background-color:rgb(251 252 254 / var(--tw-bg-opacity, 1));--tw-shadow: 0 1px 3px 0 rgba(18, 30, 57, .08);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.blok-button svg{margin-right:.2em;margin-top:-.125rem;height:1.25rem}.blok-settings-button{margin:0;display:inline-flex;min-height:26px;min-width:26px;cursor:pointer;align-items:center;justify-content:center;border-radius:3px;border-width:0px;background-color:transparent;vertical-align:bottom;color:inherit;outline:2px solid transparent;outline-offset:2px}@media(max-width:650px){.blok-settings-button{height:36px;width:36px;border-radius:.5rem}}@media(hover:hover){.blok-settings-button:hover{--tw-bg-opacity: 1;background-color:rgb(239 242 245 / var(--tw-bg-opacity, 1))}}.blok-settings-button svg{height:auto;width:auto}@media(max-width:650px){.blok-settings-button svg{height:28px;width:28px}}.blok-settings-button--active{--tw-text-opacity: 1;color:rgb(56 138 229 / var(--tw-text-opacity, 1))}.blok-settings-button--focused{background-color:#22baff14;--tw-shadow: inset 0 0 0 1px rgba(7, 161, 227, .08);--tw-shadow-colored: inset 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}@keyframes buttonClicked{0%{transform:scale3d(.95,.95,.95)}60%{transform:scale3d(1.02,1.02,1.02)}80%,to{transform:scaleZ(1)}}.blok-settings-button--focused-animated{animation:buttonClicked .75s cubic-bezier(.215,.61,.355,1) forwards}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-\\[auto_var\\(--offset\\)_calc\\(var\\(--offset\\)\\+env\\(safe-area-inset-bottom\\)\\)_var\\(--offset\\)\\]{inset:auto var(--offset) calc(var(--offset) + env(safe-area-inset-bottom)) var(--offset)}.bottom-0{bottom:0}.bottom-5{bottom:1.25rem}.left-0{left:0}.left-5{left:1.25rem}.left-\\[var\\(--popover-left\\)\\]{left:var(--popover-left)}.left-auto{left:auto}.right-0{right:0}.right-\\[15px\\]{right:15px}.right-full{right:100%}.top-0{top:0}.top-\\[7px\\]{top:7px}.top-\\[var\\(--popover-top\\)\\]{top:var(--popover-top)}.top-auto{top:auto}.z-0{z-index:0}.z-\\[10000\\]{z-index:10000}.z-\\[1\\]{z-index:1}.z-\\[2\\]{z-index:2}.z-\\[3\\]{z-index:3}.z-\\[4\\]{z-index:4}.z-overlay{z-index:999}.\\!m-0{margin:0!important}.-m-px{margin:-1px}.m-0{margin:0}.mx-auto{margin-left:auto;margin-right:auto}.my-2\\.5{margin-top:.625rem;margin-bottom:.625rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-\\[-0\\.5em\\]{margin-top:-.5em;margin-bottom:-.5em}.\\!mr-0{margin-right:0!important}.\\!mr-2{margin-right:.5rem!important}.mb-1{margin-bottom:.25rem}.mb-1\\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-\\[30px\\]{margin-bottom:30px}.mb-px{margin-bottom:1px}.ml-3\\.5{margin-left:.875rem}.mr-2{margin-right:.5rem}.mr-auto{margin-right:auto}.mt-1{margin-top:.25rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-\\[15px\\]{margin-top:15px}.mt-\\[2px\\]{margin-top:2px}.mt-\\[3px\\]{margin-top:3px}.mt-\\[5px\\]{margin-top:5px}.box-border{box-sizing:border-box}.\\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.\\!hidden{display:none!important}.hidden{display:none}.h-2\\.5{height:.625rem}.h-4{height:1rem}.h-9{height:2.25rem}.h-\\[26px\\]{height:26px}.h-\\[50px\\]{height:50px}.h-auto{height:auto}.h-fit{height:-moz-fit-content;height:fit-content}.h-full{height:100%}.h-px{height:1px}.h-toolbox-btn{height:26px}.max-h-0{max-height:0px}.max-h-\\[var\\(--max-height\\)\\]{max-height:var(--max-height)}.max-h-none{max-height:none}.w-2\\.5{width:.625rem}.w-4{width:1rem}.w-6{width:1.5rem}.w-9{width:2.25rem}.w-\\[230px\\]{width:230px}.w-\\[26px\\]{width:26px}.w-\\[var\\(--width\\)\\]{width:var(--width)}.w-auto{width:auto}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-px{width:1px}.w-toolbox-btn{width:26px}.min-w-0{min-width:0px}.min-w-\\[calc\\(100\\%-theme\\(\\'spacing\\.6\\'\\)-10px\\)\\]{min-width:calc(100% - 1.5rem - 10px)}.min-w-\\[calc\\(100\\%-var\\(--offset\\)\\*2\\)\\]{min-width:calc(100% - var(--offset) * 2)}.min-w-\\[var\\(--width\\)\\]{min-width:var(--width)}.min-w-max{min-width:-moz-max-content;min-width:max-content}.max-w-\\[1100px\\]{max-width:1100px}.max-w-\\[130px\\]{max-width:130px}.max-w-content{max-width:650px}.max-w-none{max-width:none}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-\\[5px\\]{--tw-translate-x: -5px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-\\[5px\\]{--tw-translate-y: -5px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\\[5px\\]{--tw-translate-x: 5px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\\[5px\\]{--tw-translate-y: 5px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform-none{transform:none}@keyframes panelShowingMobile{0%{opacity:0;transform:translateY(14px) scale(.98)}70%{opacity:1;transform:translateY(-4px)}to{transform:translateY(0)}}.animate-\\[panelShowingMobile_250ms_ease\\]{animation:panelShowingMobile .25s ease}@keyframes panelShowing{0%{opacity:0;transform:translateY(-8px) scale(.9)}70%{opacity:1;transform:translateY(2px)}to{transform:translateY(0)}}.animate-\\[panelShowing_100ms_ease\\]{animation:panelShowing .1s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in .3s ease forwards}.animate-none{animation:none}@keyframes notifyBounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1)}}.animate-notify-bounce-in{animation:notifyBounceIn .6s 1}@keyframes wobble{0%{transform:translateZ(0)}15%{transform:translate3d(-9%,0,0)}30%{transform:translate3d(9%,0,0)}45%{transform:translate3d(-4%,0,0)}60%{transform:translate3d(4%,0,0)}75%{transform:translate3d(-1%,0,0)}to{transform:translateZ(0)}}.animate-wobble{animation:wobble .4s}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize{resize:both}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-\\[auto_auto_1fr\\]{grid-template-columns:auto auto 1fr}.grid-rows-\\[auto\\]{grid-template-rows:auto}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:.5rem}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-\\[10px\\]{border-radius:10px}.rounded-\\[3px\\]{border-radius:3px}.rounded-\\[4px\\]{border-radius:4px}.rounded-\\[5px\\]{border-radius:5px}.rounded-\\[7px\\]{border-radius:7px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-t-lg{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.border{border-width:1px}.border-0{border-width:0px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-none{border-style:none}.border-\\[\\#e8e8eb\\]{--tw-border-opacity: 1;border-color:rgb(232 232 235 / var(--tw-border-opacity, 1))}.border-\\[rgba\\(226\\,226\\,229\\,0\\.2\\)\\],.border-\\[rgba\\(226\\,226\\,229\\,0\\.20\\)\\]{border-color:#e2e2e533}.border-line-gray,.border-popover-border{--tw-border-opacity: 1;border-color:rgb(239 240 241 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.\\!bg-\\[\\#fafffe\\]{--tw-bg-opacity: 1 !important;background-color:rgb(250 255 254 / var(--tw-bg-opacity, 1))!important}.\\!bg-\\[\\#fffbfb\\]{--tw-bg-opacity: 1 !important;background-color:rgb(255 251 251 / var(--tw-bg-opacity, 1))!important}.\\!bg-item-confirm-bg{--tw-bg-opacity: 1 !important;background-color:rgb(226 74 74 / var(--tw-bg-opacity, 1))!important}.\\!bg-item-focus-bg{background-color:#22baff14!important}.bg-\\[\\#34c992\\]{--tw-bg-opacity: 1;background-color:rgb(52 201 146 / var(--tw-bg-opacity, 1))}.bg-\\[\\#F8F8F8\\]{--tw-bg-opacity: 1;background-color:rgb(248 248 248 / var(--tw-bg-opacity, 1))}.bg-\\[\\#eff1f4\\]{--tw-bg-opacity: 1;background-color:rgb(239 241 244 / var(--tw-bg-opacity, 1))}.bg-\\[\\#f2f5f7\\]{--tw-bg-opacity: 1;background-color:rgb(242 245 247 / var(--tw-bg-opacity, 1))}.bg-\\[\\#f7f7f7\\]{--tw-bg-opacity: 1;background-color:rgb(247 247 247 / var(--tw-bg-opacity, 1))}.bg-bg-light{--tw-bg-opacity: 1;background-color:rgb(239 242 245 / var(--tw-bg-opacity, 1))}.bg-dark{--tw-bg-opacity: 1;background-color:rgb(29 32 43 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-item-hover-bg{--tw-bg-opacity: 1;background-color:rgb(248 248 248 / var(--tw-bg-opacity, 1))}.bg-popover-bg{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-popover-border{--tw-bg-opacity: 1;background-color:rgb(239 240 241 / var(--tw-bg-opacity, 1))}.bg-selection{--tw-bg-opacity: 1;background-color:rgb(225 242 255 / var(--tw-bg-opacity, 1))}.bg-selection-highlight{background-color:#2eaadc33}.bg-tooltip-bg{--tw-bg-opacity: 1;background-color:rgb(29 32 43 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.p-0{padding:0}.p-0\\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-\\[3px\\]{padding:3px}.p-\\[5px\\]{padding:5px}.p-\\[var\\(--item-padding\\)\\]{padding:var(--item-padding)}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-\\[18px\\]{padding-left:18px;padding-right:18px}.px-\\[2px\\]{padding-left:2px;padding-right:2px}.px-\\[30px\\]{padding-left:30px;padding-right:30px}.px-\\[3px\\]{padding-left:3px;padding-right:3px}.py-0{padding-top:0;padding-bottom:0}.py-0\\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-\\[0\\.5em\\]{padding-top:.5em;padding-bottom:.5em}.py-\\[13px\\]{padding-top:13px;padding-bottom:13px}.py-\\[3px\\]{padding-top:3px;padding-bottom:3px}.py-\\[5px\\]{padding-top:5px;padding-bottom:5px}.pl-0\\.5{padding-left:.125rem}.pr-1\\.5{padding-right:.375rem}.pr-\\[5px\\]{padding-right:5px}.text-center{text-align:center}.text-right{text-align:right}.text-start{text-align:start}.font-\\[-apple-system\\,BlinkMacSystemFont\\,\\"Segoe_UI\\"\\,\\"Roboto\\"\\,\\"Oxygen\\"\\,\\"Ubuntu\\"\\,\\"Cantarell\\"\\,\\"Fira_Sans\\"\\,\\"Droid_Sans\\"\\,\\"Helvetica_Neue\\"\\,sans-serif\\]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.font-\\[inherit\\]{font-family:inherit}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\\[13px\\]{font-size:13px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.capitalize{text-transform:capitalize}.italic{font-style:italic}.\\!leading-\\[1\\.3\\]{line-height:1.3!important}.leading-5{line-height:1.25rem}.leading-\\[1\\.4em\\]{line-height:1.4em}.leading-\\[1\\.6em\\]{line-height:1.6em}.leading-\\[1em\\]{line-height:1em}.leading-\\[22px\\]{line-height:22px}.leading-\\[50px\\]{line-height:50px}.leading-relaxed{line-height:1.625}.-tracking-widest{letter-spacing:-.1em}.tracking-\\[0\\.02em\\]{letter-spacing:.02em}.\\!text-white{--tw-text-opacity: 1 !important;color:rgb(255 255 255 / var(--tw-text-opacity, 1))!important}.text-\\[\\#656b7c\\]{--tw-text-opacity: 1;color:rgb(101 107 124 / var(--tw-text-opacity, 1))}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-dark{--tw-text-opacity: 1;color:rgb(29 32 43 / var(--tw-text-opacity, 1))}.text-gray-text{--tw-text-opacity: 1;color:rgb(112 118 132 / var(--tw-text-opacity, 1))}.text-inherit{color:inherit}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-text-primary{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.text-text-secondary{--tw-text-opacity: 1;color:rgb(112 118 132 / var(--tw-text-opacity, 1))}.text-tooltip-font{--tw-text-opacity: 1;color:rgb(205 209 224 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-current{accent-color:currentColor}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-50{opacity:.5}.opacity-55{opacity:.55}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\\[0_11px_17px_0_rgba\\(23\\,32\\,61\\,0\\.13\\)\\]{--tw-shadow: 0 11px 17px 0 rgba(23,32,61,.13);--tw-shadow-colored: 0 11px 17px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\\[0_1px_1px_0_rgba\\(18\\,49\\,35\\,0\\.05\\)\\]{--tw-shadow: 0 1px 1px 0 rgba(18,49,35,.05);--tw-shadow-colored: 0 1px 1px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\\[0_2px_1px_0_rgba\\(16\\,19\\,29\\,0\\)\\]{--tw-shadow: 0 2px 1px 0 rgba(16,19,29,0);--tw-shadow-colored: 0 2px 1px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\\[0_3px_15px_-3px_theme\\(colors\\.popover-shadow\\)\\]{--tw-shadow: 0 3px 15px -3px rgba(13, 20, 33, .1);--tw-shadow-colored: 0 3px 15px -3px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-tooltip{--tw-shadow: 0 8px 12px 0 rgba(29, 32, 43, .17), 0 4px 5px -3px rgba(5, 6, 12, .49);--tw-shadow-colored: 0 8px 12px 0 var(--tw-shadow-color), 0 4px 5px -3px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[opacity\\,transform\\]{transition-property:opacity,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-none{transition-property:none}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-150{transition-duration:.15s}.duration-\\[120ms\\]{transition-duration:.12s}.duration-\\[250ms\\]{transition-duration:.25s}.duration-\\[50ms\\,70ms\\]{transition-duration:50ms,70ms}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-linear{transition-timing-function:linear}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.will-change-\\[opacity\\,left\\,top\\]{will-change:opacity,left,top}.will-change-\\[opacity\\,top\\,left\\]{will-change:opacity,top,left}.will-change-\\[opacity\\,top\\]{will-change:opacity,top}.will-change-\\[opacity\\]{will-change:opacity}.\\[clip\\:rect\\(0\\,0\\,0\\,0\\)\\]{clip:rect(0,0,0,0)}.\\[direction\\:rtl\\]{direction:rtl}[data-blok-navigation-focused=true]{margin-left:auto;margin-right:auto;width:650px;max-width:100%;border-radius:.375rem;background-color:#22baff14}@media(hover:hover){[data-blok-item-name=delete]:hover{--tw-text-opacity: 1;color:rgb(226 74 74 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}}[data-drop-indicator]{position:relative}[data-drop-indicator]:before{pointer-events:none;position:absolute;z-index:10;height:.375rem;width:100%;max-width:650px;--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:.125rem;--tw-bg-opacity: 1;background-color:rgb(212 227 252 / var(--tw-bg-opacity, 1));--tw-content: "";content:var(--tw-content);left:calc(50% + var(--drop-indicator-depth, 0) * 12px);max-width:calc(650px - var(--drop-indicator-depth, 0) * 24px)}[data-drop-indicator=bottom]:before{bottom:0;--tw-translate-y: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}[data-drop-indicator=top]:before{top:0;--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}[data-blok-dragging-multi=true] [data-blok-selected=true]{opacity:.4;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}[data-blok-selected=true] [data-blok-element-content]:has([data-list-style]){background-color:transparent}[data-blok-selected=true] [data-list-style] [role=listitem]{border-radius:4px;--tw-bg-opacity: 1;background-color:rgb(225 242 255 / var(--tw-bg-opacity, 1))}[data-blok-selected=true] [data-list-style] [role=listitem] [contenteditable]{-webkit-user-select:none;-moz-user-select:none;user-select:none}.placeholder\\:font-medium::-moz-placeholder{font-weight:500}.placeholder\\:font-medium::placeholder{font-weight:500}.placeholder\\:text-\\[\\#656b7c\\]::-moz-placeholder{--tw-text-opacity: 1;color:rgb(101 107 124 / var(--tw-text-opacity, 1))}.placeholder\\:text-\\[\\#656b7c\\]::placeholder{--tw-text-opacity: 1;color:rgb(101 107 124 / var(--tw-text-opacity, 1))}.placeholder\\:text-gray-text::-moz-placeholder{--tw-text-opacity: 1;color:rgb(112 118 132 / var(--tw-text-opacity, 1))}.placeholder\\:text-gray-text::placeholder{--tw-text-opacity: 1;color:rgb(112 118 132 / var(--tw-text-opacity, 1))}.before\\:absolute:before{content:var(--tw-content);position:absolute}.before\\:inset-0:before{content:var(--tw-content);inset:0}.before\\:left-0:before{content:var(--tw-content);left:0}.before\\:left-\\[9px\\]:before{content:var(--tw-content);left:9px}.before\\:top-0:before{content:var(--tw-content);top:0}.before\\:top-\\[5px\\]:before{content:var(--tw-content);top:5px}.before\\:-z-10:before{content:var(--tw-content);z-index:-10}.before\\:m-\\[3px\\]:before{content:var(--tw-content);margin:3px}.before\\:block:before{content:var(--tw-content);display:block}.before\\:h-3:before{content:var(--tw-content);height:.75rem}.before\\:h-\\[calc\\(100\\%-6px\\)\\]:before{content:var(--tw-content);height:calc(100% - 6px)}.before\\:w-0\\.5:before{content:var(--tw-content);width:.125rem}.before\\:w-\\[3px\\]:before{content:var(--tw-content);width:3px}.before\\:rotate-\\[-45deg\\]:before{content:var(--tw-content);--tw-rotate: -45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.before\\:rounded-\\[5px\\]:before{content:var(--tw-content);border-radius:5px}.before\\:rounded-lg:before{content:var(--tw-content);border-radius:.5rem}.before\\:\\!bg-\\[\\#41ffb1\\]:before{content:var(--tw-content);--tw-bg-opacity: 1 !important;background-color:rgb(65 255 177 / var(--tw-bg-opacity, 1))!important}.before\\:\\!bg-\\[\\#fb5d5d\\]:before{content:var(--tw-content);--tw-bg-opacity: 1 !important;background-color:rgb(251 93 93 / var(--tw-bg-opacity, 1))!important}.before\\:bg-\\[\\#575d67\\]:before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(87 93 103 / var(--tw-bg-opacity, 1))}.before\\:bg-tooltip-bg:before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(29 32 43 / var(--tw-bg-opacity, 1))}.before\\:bg-transparent:before{content:var(--tw-content);background-color:transparent}.before\\:content-\\[\\"\\"\\]:before{--tw-content: "";content:var(--tw-content)}.before\\:content-\\[\\\\\\'\\\\\\'\\]:before{--tw-content: \\'\\';content:var(--tw-content)}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:left-\\[9px\\]:after{content:var(--tw-content);left:9px}.after\\:top-\\[5px\\]:after{content:var(--tw-content);top:5px}.after\\:mx-3:after{content:var(--tw-content);margin-left:.75rem;margin-right:.75rem}.after\\:h-3:after{content:var(--tw-content);height:.75rem}.after\\:w-0\\.5:after{content:var(--tw-content);width:.125rem}.after\\:rotate-45:after{content:var(--tw-content);--tw-rotate: 45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.after\\:bg-\\[\\#575d67\\]:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(87 93 103 / var(--tw-bg-opacity, 1))}.after\\:text-\\[\\#ddd\\]:after{content:var(--tw-content);--tw-text-opacity: 1;color:rgb(221 221 221 / var(--tw-text-opacity, 1))}.after\\:content-\\[\\"\\"\\]:after{--tw-content: "";content:var(--tw-content)}.after\\:content-\\[\\'\\|\\'\\]:after{--tw-content: "|";content:var(--tw-content)}.first\\:mt-0:first-child{margin-top:0}.last\\:ml-2\\.5:last-child{margin-left:.625rem}.empty\\:before\\:pointer-events-none:empty:before{content:var(--tw-content);pointer-events:none}.empty\\:before\\:cursor-text:empty:before{content:var(--tw-content);cursor:text}.empty\\:before\\:text-gray-text:empty:before{content:var(--tw-content);--tw-text-opacity: 1;color:rgb(112 118 132 / var(--tw-text-opacity, 1))}.empty\\:before\\:content-\\[attr\\(data-blok-placeholder\\)\\]:empty:before{--tw-content: attr(data-blok-placeholder);content:var(--tw-content)}.empty\\:before\\:content-\\[attr\\(data-blok-placeholder-active\\)\\]:empty:before{--tw-content: attr(data-blok-placeholder-active);content:var(--tw-content)}.empty\\:before\\:content-\\[attr\\(data-placeholder\\)\\]:empty:before{--tw-content: attr(data-placeholder);content:var(--tw-content)}.hover\\:bg-\\[\\#2db583\\]:hover{--tw-bg-opacity: 1;background-color:rgb(45 181 131 / var(--tw-bg-opacity, 1))}.hover\\:bg-\\[\\#e0e4eb\\]:hover{--tw-bg-opacity: 1;background-color:rgb(224 228 235 / var(--tw-bg-opacity, 1))}.hover\\:bg-\\[\\#e9ecee\\]:hover{--tw-bg-opacity: 1;background-color:rgb(233 236 238 / var(--tw-bg-opacity, 1))}.hover\\:opacity-100:hover{opacity:1}.focus\\:placeholder\\:text-\\[rgba\\(101\\,107\\,124\\,0\\.3\\)\\]:focus::-moz-placeholder{color:#656b7c4d}.focus\\:placeholder\\:text-\\[rgba\\(101\\,107\\,124\\,0\\.3\\)\\]:focus::placeholder{color:#656b7c4d}.empty\\:focus\\:before\\:pointer-events-none:focus:empty:before{content:var(--tw-content);pointer-events:none}.empty\\:focus\\:before\\:cursor-text:focus:empty:before{content:var(--tw-content);cursor:text}.empty\\:focus\\:before\\:text-gray-text:focus:empty:before{content:var(--tw-content);--tw-text-opacity: 1;color:rgb(112 118 132 / var(--tw-text-opacity, 1))}.empty\\:focus\\:before\\:content-\\[attr\\(data-blok-placeholder-active\\)\\]:focus:empty:before{--tw-content: attr(data-blok-placeholder-active);content:var(--tw-content)}.active\\:cursor-grabbing:active{cursor:grabbing}.group[data-blok-dragging=true] .group-data-\\[blok-dragging\\=true\\]\\:pointer-events-none{pointer-events:none}.group[data-blok-rtl=true] .group-data-\\[blok-rtl\\=true\\]\\:left-\\[calc\\(-1\\*theme\\(width\\.toolbox-btn\\)\\)\\]{left:-26px}.group[data-blok-rtl=true] .group-data-\\[blok-rtl\\=true\\]\\:left-auto{left:auto}.group[data-blok-rtl=true] .group-data-\\[blok-rtl\\=true\\]\\:right-\\[calc\\(-1\\*theme\\(width\\.toolbox-btn\\)\\)\\]{right:-26px}.group[data-blok-rtl=true] .group-data-\\[blok-rtl\\=true\\]\\:right-auto{right:auto}.group[data-blok-dragging=true] .group-data-\\[blok-dragging\\=true\\]\\:cursor-grabbing{cursor:grabbing}@media(max-width:650px){.mobile\\:absolute{position:absolute}.mobile\\:right-auto{right:auto}.mobile\\:z-\\[2\\]{z-index:2}.mobile\\:hidden{display:none}.mobile\\:h-toolbox-btn-mobile{height:36px}.mobile\\:w-toolbox-btn-mobile{width:36px}.mobile\\:rounded-\\[6px\\]{border-radius:6px}.mobile\\:border{border-width:1px}.mobile\\:border-\\[\\#e8e8eb\\]{--tw-border-opacity: 1;border-color:rgb(232 232 235 / var(--tw-border-opacity, 1))}.mobile\\:bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.mobile\\:p-1{padding:.25rem}.mobile\\:text-\\[15px\\]{font-size:15px}.mobile\\:font-medium{font-weight:500}.mobile\\:shadow-overlay-pane{--tw-shadow: 0 3px 15px -3px rgba(13, 20, 33, .13);--tw-shadow-colored: 0 3px 15px -3px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group[data-blok-rtl=true] .mobile\\:group-data-\\[blok-rtl\\=true\\]\\:ml-0{margin-left:0}.group[data-blok-rtl=true] .mobile\\:group-data-\\[blok-rtl\\=true\\]\\:mr-auto{margin-right:auto}.group[data-blok-rtl=true] .mobile\\:group-data-\\[blok-rtl\\=true\\]\\:pl-\\[10px\\]{padding-left:10px}.group[data-blok-rtl=true] .mobile\\:group-data-\\[blok-rtl\\=true\\]\\:pr-0{padding-right:0}}@media(min-width:651px){.not-mobile\\:w-6{width:1.5rem}.group[data-blok-narrow=true][data-blok-rtl=true] .not-mobile\\:group-data-\\[blok-narrow\\=true\\]\\:group-data-\\[blok-rtl\\=true\\]\\:left-0{left:0}.group[data-blok-narrow=true][data-blok-rtl=true] .not-mobile\\:group-data-\\[blok-narrow\\=true\\]\\:group-data-\\[blok-rtl\\=true\\]\\:left-\\[-5px\\]{left:-5px}.group[data-blok-narrow=true][data-blok-rtl=true] .not-mobile\\:group-data-\\[blok-narrow\\=true\\]\\:group-data-\\[blok-rtl\\=true\\]\\:left-\\[calc\\(-1\\*theme\\(spacing\\.narrow-mode-right-padding\\)-5px\\)\\]{left:-55px}.group[data-blok-narrow=true][data-blok-rtl=true] .not-mobile\\:group-data-\\[blok-narrow\\=true\\]\\:group-data-\\[blok-rtl\\=true\\]\\:right-\\[5px\\]{right:5px}.group[data-blok-narrow=true][data-blok-rtl=true] .not-mobile\\:group-data-\\[blok-narrow\\=true\\]\\:group-data-\\[blok-rtl\\=true\\]\\:right-auto{right:auto}.group[data-blok-narrow=true] .not-mobile\\:group-data-\\[blok-narrow\\=true\\]\\:left-\\[5px\\]{left:5px}.group[data-blok-narrow=true] .not-mobile\\:group-data-\\[blok-narrow\\=true\\]\\:right-\\[calc\\(-1\\*theme\\(spacing\\.narrow-mode-right-padding\\)-5px\\)\\]{right:-55px}.group[data-blok-narrow=true][data-blok-rtl=true] .not-mobile\\:group-data-\\[blok-narrow\\=true\\]\\:group-data-\\[blok-rtl\\=true\\]\\:ml-\\[theme\\(spacing\\.narrow-mode-right-padding\\)\\]{margin-left:50px}.group[data-blok-narrow=true][data-blok-rtl=true] .not-mobile\\:group-data-\\[blok-narrow\\=true\\]\\:group-data-\\[blok-rtl\\=true\\]\\:mr-0{margin-right:0}.group[data-blok-narrow=true] .not-mobile\\:group-data-\\[blok-narrow\\=true\\]\\:mr-\\[theme\\(spacing\\.narrow-mode-right-padding\\)\\]{margin-right:50px}}@media(hover:hover){.can-hover\\:hover\\:cursor-grab:hover{cursor:grab}.can-hover\\:hover\\:cursor-pointer:hover{cursor:pointer}.can-hover\\:hover\\:bg-bg-light:hover{--tw-bg-opacity: 1;background-color:rgb(239 242 245 / var(--tw-bg-opacity, 1))}.can-hover\\:hover\\:bg-item-hover-bg:hover{--tw-bg-opacity: 1;background-color:rgb(248 248 248 / var(--tw-bg-opacity, 1))}.group[data-blok-toolbox-opened=true] .group-data-\\[blok-toolbox-opened\\=true\\]\\:can-hover\\:hover\\:cursor-pointer:hover{cursor:pointer}}.\\[\\&\\>p\\:first-of-type\\]\\:mt-0>p:first-of-type{margin-top:0}.\\[\\&\\>p\\:last-of-type\\]\\:mb-0>p:last-of-type{margin-bottom:0}.\\[\\&\\[data-blok-dragging\\=true\\]\\]\\:cursor-grabbing[data-blok-dragging=true]{cursor:grabbing}.\\[\\&\\[data-blok-empty\\=true\\]\\]\\:before\\:pointer-events-none[data-blok-empty=true]:before{content:var(--tw-content);pointer-events:none}.\\[\\&\\[data-blok-empty\\=true\\]\\]\\:before\\:cursor-text[data-blok-empty=true]:before{content:var(--tw-content);cursor:text}.\\[\\&\\[data-blok-empty\\=true\\]\\]\\:before\\:text-gray-text[data-blok-empty=true]:before{content:var(--tw-content);--tw-text-opacity: 1;color:rgb(112 118 132 / var(--tw-text-opacity, 1))}.\\[\\&\\[data-blok-empty\\=true\\]\\]\\:before\\:content-\\[attr\\(data-blok-placeholder\\)\\][data-blok-empty=true]:before{--tw-content: attr(data-blok-placeholder);content:var(--tw-content)}.\\[\\&\\[data-blok-empty\\=true\\]\\]\\:before\\:content-\\[attr\\(data-placeholder\\)\\][data-blok-empty=true]:before{--tw-content: attr(data-placeholder);content:var(--tw-content)}.\\[\\&\\[data-blok-focused\\=\\"true\\"\\]\\]\\:bg-item-focus-bg[data-blok-focused=true]{background-color:#22baff14}.\\[\\&\\[data-blok-force-hover\\]\\]\\:cursor-pointer[data-blok-force-hover]{cursor:pointer}.\\[\\&\\[data-blok-force-hover\\]\\]\\:bg-item-hover-bg[data-blok-force-hover]{--tw-bg-opacity: 1;background-color:rgb(248 248 248 / var(--tw-bg-opacity, 1))}.\\[\\&\\[data-blok-popover-item-active\\]\\]\\:bg-icon-active-bg[data-blok-popover-item-active]{background-color:#388ae51a}.\\[\\&\\[data-blok-popover-item-active\\]\\]\\:text-icon-active-text[data-blok-popover-item-active]{--tw-text-opacity: 1;color:rgb(56 138 229 / var(--tw-text-opacity, 1))}.\\[\\&\\[data-blok-popover-item-no-hover\\]\\]\\:cursor-default[data-blok-popover-item-no-hover]{cursor:default}.\\[\\&\\[data-blok-popover-item-no-hover\\]\\]\\:hover\\:bg-transparent:hover[data-blok-popover-item-no-hover]{background-color:transparent}.\\[\\&\\[data-blok-toolbox-opened\\=true\\]_\\[contentEditable\\=true\\]\\[data-blok-placeholder\\]\\:focus\\]\\:before\\:\\!opacity-0[data-blok-toolbox-opened=true] [contentEditable=true][data-blok-placeholder]:focus:before{content:var(--tw-content);opacity:0!important}.\\[\\&\\[data-empty\\=true\\]\\:focus\\]\\:before\\:pointer-events-none[data-empty=true]:focus:before{content:var(--tw-content);pointer-events:none}.\\[\\&\\[data-empty\\=true\\]\\:focus\\]\\:before\\:cursor-text[data-empty=true]:focus:before{content:var(--tw-content);cursor:text}.\\[\\&\\[data-empty\\=true\\]\\:focus\\]\\:before\\:text-gray-text[data-empty=true]:focus:before{content:var(--tw-content);--tw-text-opacity: 1;color:rgb(112 118 132 / var(--tw-text-opacity, 1))}.\\[\\&\\[data-empty\\=true\\]\\:focus\\]\\:before\\:content-\\[attr\\(data-blok-placeholder-active\\)\\][data-empty=true]:focus:before{--tw-content: attr(data-blok-placeholder-active);content:var(--tw-content)}.\\[\\&\\[data-empty\\=true\\]\\]\\:before\\:pointer-events-none[data-empty=true]:before{content:var(--tw-content);pointer-events:none}.\\[\\&\\[data-empty\\=true\\]\\]\\:before\\:cursor-text[data-empty=true]:before{content:var(--tw-content);cursor:text}.\\[\\&\\[data-empty\\=true\\]\\]\\:before\\:text-gray-text[data-empty=true]:before{content:var(--tw-content);--tw-text-opacity: 1;color:rgb(112 118 132 / var(--tw-text-opacity, 1))}.\\[\\&\\[data-empty\\=true\\]\\]\\:before\\:content-\\[attr\\(data-blok-placeholder-active\\)\\][data-empty=true]:before{--tw-content: attr(data-blok-placeholder-active);content:var(--tw-content)}.\\[\\&_\\:\\:selection\\]\\:bg-selection-inline ::-moz-selection{--tw-bg-opacity: 1;background-color:rgb(212 236 255 / var(--tw-bg-opacity, 1))}.\\[\\&_\\:\\:selection\\]\\:bg-selection-inline ::selection{--tw-bg-opacity: 1;background-color:rgb(212 236 255 / var(--tw-bg-opacity, 1))}.\\[\\&_\\[contenteditable\\]\\:empty\\]\\:after\\:content-\\[\\"\\\\\\\\feff_\\"\\] [contenteditable]:empty:after{--tw-content: "\\\\feff ";content:var(--tw-content)}.\\[\\&_\\[contenteditable\\]\\]\\:select-none [contenteditable]{-webkit-user-select:none;-moz-user-select:none;user-select:none}.\\[\\&_\\[data-blok-tool\\=stub\\]\\]\\:opacity-55 [data-blok-tool=stub]{opacity:.55}.\\[\\&_\\[hidden\\]\\]\\:\\!hidden [hidden]{display:none!important}.\\[\\&_a\\]\\:cursor-pointer a{cursor:pointer}.\\[\\&_a\\]\\:text-link a{--tw-text-opacity: 1;color:rgb(56 138 229 / var(--tw-text-opacity, 1))}.\\[\\&_a\\]\\:underline a{text-decoration-line:underline}.\\[\\&_b\\]\\:font-bold b{font-weight:700}.\\[\\&_div\\]\\:\\!m-0 div{margin:0!important}.\\[\\&_div\\]\\:\\!p-0 div{padding:0!important}.\\[\\&_i\\]\\:italic i{font-style:italic}.\\[\\&_img\\]\\:opacity-55 img{opacity:.55}.\\[\\&_p\\]\\:\\!m-0 p{margin:0!important}.\\[\\&_p\\]\\:\\!p-0 p{padding:0!important}.\\[\\&_path\\]\\:stroke-current path{stroke:currentColor}.\\[\\&_svg\\]\\:block svg{display:block}.\\[\\&_svg\\]\\:size-icon svg{width:20px;height:20px}.\\[\\&_svg\\]\\:h-6 svg{height:1.5rem}.\\[\\&_svg\\]\\:h-7 svg{height:1.75rem}.\\[\\&_svg\\]\\:h-icon svg{height:20px}.\\[\\&_svg\\]\\:max-h-full svg{max-height:100%}.\\[\\&_svg\\]\\:w-6 svg{width:1.5rem}.\\[\\&_svg\\]\\:w-7 svg{width:1.75rem}.\\[\\&_svg\\]\\:w-icon svg{width:20px}.\\[\\&_svg\\]\\:text-gray-text svg{--tw-text-opacity: 1;color:rgb(112 118 132 / var(--tw-text-opacity, 1))}@media(max-width:650px){.mobile\\:\\[\\&_svg\\]\\:h-icon-mobile svg{height:28px}.mobile\\:\\[\\&_svg\\]\\:w-icon-mobile svg{width:28px}}`;
@@ -11792,7 +11820,7 @@ class Si extends T {
11792
11820
  backspacePressed(t) {
11793
11821
  if (this.Blok.BlockSettings.contains(t.target))
11794
11822
  return;
11795
- const { BlockManager: e, BlockSelection: o, Caret: s } = this.Blok, n = y.isSelectionExists, i = y.isCollapsed;
11823
+ const { BlockManager: e, BlockSelection: o, Caret: s } = this.Blok, n = B.isSelectionExists, i = B.isCollapsed;
11796
11824
  if (!(o.anyBlockSelected && (!n || i === !0 || this.Blok.CrossBlockSelection.isCrossBlockSelectionStarted)))
11797
11825
  return;
11798
11826
  const l = e.removeSelectedBlocks();
@@ -11851,7 +11879,7 @@ class Si extends T {
11851
11879
  s.keydown(t);
11852
11880
  return;
11853
11881
  }
11854
- const n = e.currentBlockIndex >= 0, i = y.isSelectionExists, r = y.isCollapsed;
11882
+ const n = e.currentBlockIndex >= 0, i = B.isSelectionExists, r = B.isCollapsed;
11855
11883
  if (o.anyBlockSelected && (!i || r === !0)) {
11856
11884
  o.clearSelection(t), t.preventDefault(), t.stopImmediatePropagation(), t.stopPropagation();
11857
11885
  return;
@@ -11870,7 +11898,7 @@ class Si extends T {
11870
11898
  var p, b;
11871
11899
  if (!t.isTrusted)
11872
11900
  return;
11873
- const e = t.target, o = this.nodes.holder.contains(e) || y.isAtBlok, s = this.nodes.redactor.contains(e), n = this.Blok.Toolbar.contains(e), i = this.Blok.InlineToolbar.containsNode(e), r = o || n, l = this.Blok.BlockSettings.contains(e), c = (p = this.Blok.Toolbar.nodes.settingsToggler) == null ? void 0 : p.contains(e), d = (b = this.Blok.Toolbar.nodes.plusButton) == null ? void 0 : b.contains(e), h = l || c || d;
11901
+ const e = t.target, o = this.nodes.holder.contains(e) || B.isAtBlok, s = this.nodes.redactor.contains(e), n = this.Blok.Toolbar.contains(e), i = this.Blok.InlineToolbar.containsNode(e), r = o || n, l = this.Blok.BlockSettings.contains(e), c = (p = this.Blok.Toolbar.nodes.settingsToggler) == null ? void 0 : p.contains(e), d = (b = this.Blok.Toolbar.nodes.plusButton) == null ? void 0 : b.contains(e), h = l || c || d;
11874
11902
  (!r || !s && !n) && !h && (this.Blok.BlockManager.unsetCurrentBlock(), this.Blok.Toolbar.close());
11875
11903
  const g = this.Blok.BlockSettings.opened && !h;
11876
11904
  if (g && this.Blok.BlockSettings.close(), g && s) {
@@ -11919,7 +11947,7 @@ class Si extends T {
11919
11947
  * - otherwise, add a new empty Block and set a Caret to that
11920
11948
  */
11921
11949
  redactorClicked(t) {
11922
- if (!y.isCollapsed)
11950
+ if (!B.isCollapsed)
11923
11951
  return;
11924
11952
  const e = t.target, o = t.metaKey || t.ctrlKey;
11925
11953
  if (!(f.isAnchor(e) && o)) {
@@ -11960,10 +11988,10 @@ class Si extends T {
11960
11988
  */
11961
11989
  selectionChanged() {
11962
11990
  var u, g, p;
11963
- const { CrossBlockSelection: t, BlockSelection: e } = this.Blok, o = y.anchorElement;
11964
- if (t.isCrossBlockSelectionStarted && e.anyBlockSelected && ((u = y.get()) == null || u.removeAllRanges()), document.querySelector('[data-blok-fake-background="true"]') !== null && ((p = (g = this.Blok) == null ? void 0 : g.InlineToolbar) != null && p.opened) || (!o && !y.range && this.Blok.InlineToolbar.close(), !o))
11991
+ const { CrossBlockSelection: t, BlockSelection: e } = this.Blok, o = B.anchorElement;
11992
+ if (t.isCrossBlockSelectionStarted && e.anyBlockSelected && ((u = B.get()) == null || u.removeAllRanges()), document.querySelector('[data-blok-fake-background="true"]') !== null && ((p = (g = this.Blok) == null ? void 0 : g.InlineToolbar) != null && p.opened) || (!o && !B.range && this.Blok.InlineToolbar.close(), !o))
11965
11993
  return;
11966
- const n = o.closest('[data-blok-testid="block-content"]'), i = n === null || n.closest('[data-blok-testid="blok-editor"]') !== this.nodes.wrapper, r = o.getAttribute("data-blok-inline-toolbar") === "true", l = i && !this.Blok.InlineToolbar.containsNode(o), c = y.get(), d = !c || c.isCollapsed || y.text.length === 0, h = this.Blok.InlineToolbar.hasFlipperFocus;
11994
+ const n = o.closest('[data-blok-testid="block-content"]'), i = n === null || n.closest('[data-blok-testid="blok-editor"]') !== this.nodes.wrapper, r = o.getAttribute("data-blok-inline-toolbar") === "true", l = i && !this.Blok.InlineToolbar.containsNode(o), c = B.get(), d = !c || c.isCollapsed || B.text.length === 0, h = this.Blok.InlineToolbar.hasFlipperFocus;
11967
11995
  if (d && this.Blok.InlineToolbar.opened && !h) {
11968
11996
  this.Blok.InlineToolbar.close();
11969
11997
  return;
@@ -12118,19 +12146,19 @@ const Ci = 30, Ii = 200, Ei = 100, rt = class rt extends T {
12118
12146
  if (!t)
12119
12147
  return;
12120
12148
  const e = this.globalUndoRedo ? document : t;
12121
- ["CMD+Z", "CMD+SHIFT+Z", "CMD+Y"].forEach((i) => F.remove(e, i)), F.add({
12149
+ ["CMD+Z", "CMD+SHIFT+Z", "CMD+Y"].forEach((i) => _.remove(e, i)), _.add({
12122
12150
  name: "CMD+Z",
12123
12151
  on: e,
12124
12152
  handler: (i) => {
12125
12153
  this.shouldHandleShortcut(i) && (i.preventDefault(), this.undo());
12126
12154
  }
12127
- }), this.registeredShortcuts.push({ name: "CMD+Z", element: e }), F.add({
12155
+ }), this.registeredShortcuts.push({ name: "CMD+Z", element: e }), _.add({
12128
12156
  name: "CMD+SHIFT+Z",
12129
12157
  on: e,
12130
12158
  handler: (i) => {
12131
12159
  this.shouldHandleShortcut(i) && (i.preventDefault(), this.redo());
12132
12160
  }
12133
- }), this.registeredShortcuts.push({ name: "CMD+SHIFT+Z", element: e }), F.add({
12161
+ }), this.registeredShortcuts.push({ name: "CMD+SHIFT+Z", element: e }), _.add({
12134
12162
  name: "CMD+Y",
12135
12163
  on: e,
12136
12164
  handler: (i) => {
@@ -12209,7 +12237,7 @@ const Ci = 30, Ii = 200, Ei = 100, rt = class rt extends T {
12209
12237
  };
12210
12238
  const o = e.map(async (i) => {
12211
12239
  const r = await i.save();
12212
- return !r || r.data === void 0 || !await i.validate(r.data) ? null : B({
12240
+ return !r || r.data === void 0 || !await i.validate(r.data) ? null : y({
12213
12241
  id: r.id,
12214
12242
  type: r.tool,
12215
12243
  data: r.data
@@ -12508,7 +12536,7 @@ const Ci = 30, Ii = 200, Ei = 100, rt = class rt extends T {
12508
12536
  destroy() {
12509
12537
  this.clearDebounce();
12510
12538
  for (const { name: t, element: e } of this.registeredShortcuts)
12511
- F.remove(e, t);
12539
+ _.remove(e, t);
12512
12540
  this.registeredShortcuts = [], rt.activeInstance === this && (rt.activeInstance = null), this.undoStack = [], this.redoStack = [], this.initialStateCaptured = !1;
12513
12541
  }
12514
12542
  };
@@ -12577,7 +12605,7 @@ class Mi {
12577
12605
  */
12578
12606
  set configuration(t) {
12579
12607
  var l, c, d, h;
12580
- A(t) ? this.config = B({}, t) : this.config = {
12608
+ A(t) ? this.config = y({}, t) : this.config = {
12581
12609
  holder: t
12582
12610
  }, this.config.holder == null && (this.config.holder = "blok"), this.config.logLevel == null && (this.config.logLevel = hs.VERBOSE), us(this.config.logLevel), this.config.defaultBlock = (l = this.config.defaultBlock) != null ? l : "paragraph";
12583
12611
  const e = this.config.tools, o = this.config.defaultBlock, s = e != null && Object.prototype.hasOwnProperty.call(e, o != null ? o : ""), n = (c = this.config.data) == null ? void 0 : c.blocks, i = Array.isArray(n) && n.length > 0;
@@ -12586,7 +12614,7 @@ class Mi {
12586
12614
  `Default block "${o}" is not configured. Falling back to "paragraph" tool.`,
12587
12615
  "warn"
12588
12616
  ), this.config.defaultBlock = "paragraph";
12589
- const u = this.config.tools, g = B({}, u != null ? u : {}), p = g.paragraph;
12617
+ const u = this.config.tools, g = y({}, u != null ? u : {}), p = g.paragraph;
12590
12618
  g.paragraph = this.createParagraphToolConfig(p), this.config.tools = g;
12591
12619
  }
12592
12620
  this.config.minHeight = this.config.minHeight !== void 0 ? this.config.minHeight : 300;
@@ -12710,8 +12738,8 @@ class Mi {
12710
12738
  };
12711
12739
  if (A(t)) {
12712
12740
  const e = t, o = e.config;
12713
- return _(B({}, e), {
12714
- config: _(B({}, A(o) ? o : {}), {
12741
+ return P(y({}, e), {
12742
+ config: P(y({}, A(o) ? o : {}), {
12715
12743
  preserveBlank: !0
12716
12744
  })
12717
12745
  });
@@ -12742,7 +12770,7 @@ const Ni = _t(), vt = class vt {
12742
12770
  * @param {BlokConfig|string|undefined} [configuration] - user configuration
12743
12771
  */
12744
12772
  constructor(t) {
12745
- this.initialConfiguration = A(t) ? B({}, t) : t;
12773
+ this.initialConfiguration = A(t) ? y({}, t) : t;
12746
12774
  const e = A(t) && E(t.onReady) ? t.onReady : () => {
12747
12775
  }, o = new Mi(t);
12748
12776
  this.destroy = () => {