@jackuait/blok 0.10.6 → 0.10.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/blok.mjs CHANGED
@@ -1,3 +1,3 @@
1
- import { n as e, t } from "./chunks/blok-B0k4z2h1.mjs";
2
- import { ur as n } from "./chunks/constants-lOEJu8bC.mjs";
1
+ import { n as e, t } from "./chunks/blok-oWXfRfnM.mjs";
2
+ import { ur as n } from "./chunks/constants-BQ1-lyZI.mjs";
3
3
  export { t as Blok, n as DATA_ATTR, e as version };
@@ -1,5 +1,5 @@
1
1
  import { t as e } from "./chunk-D6kmoKXy.mjs";
2
- import { $n as t, An as n, Bn as r, C as i, Cn as a, Dn as o, Dt as s, E as c, En as l, Fn as u, Gn as d, Hn as f, In as p, Jn as m, Kn as h, Kt as g, Ln as _, Mn as ee, N as te, On as ne, Pn as v, Qn as y, Rt as re, S as ie, Sn as ae, T as oe, Tn as se, Un as ce, Vn as le, Vt as ue, Wn as de, Xn as fe, Xt as pe, Yn as me, Yt as he, Zn as ge, _ as _e, _n as ve, an as ye, ar as b, b as x, bn as be, cn as xe, cr as S, dn as Se, dr as C, en as Ce, er as w, fn as we, ft as Te, g as Ee, h as De, hn as Oe, in as ke, ir as T, jn as Ae, kn as je, ln as Me, lr as Ne, m as Pe, mn as E, nn as Fe, nr as Ie, on as Le, or as Re, p as ze, pn as D, qn as Be, rn as Ve, rr as He, sn as Ue, sr as We, tn as Ge, tr as Ke, u as qe, un as Je, ur as O, v as Ye, w as Xe, wn as Ze, wt as Qe, x as $e, xn as et, y as tt, yn as nt, yt as rt, zn as it } from "./constants-lOEJu8bC.mjs";
2
+ import { $n as t, An as n, Bn as r, C as i, Cn as a, Dn as o, Dt as s, E as c, En as l, Fn as u, Gn as d, Hn as f, In as p, Jn as m, Kn as h, Kt as g, Ln as _, Mn as ee, N as te, On as ne, Pn as v, Qn as y, Rt as re, S as ie, Sn as ae, T as oe, Tn as se, Un as ce, Vn as le, Vt as ue, Wn as de, Xn as fe, Xt as pe, Yn as me, Yt as he, Zn as ge, _ as _e, _n as ve, an as ye, ar as b, b as x, bn as be, cn as xe, cr as S, dn as Se, dr as C, en as Ce, er as w, fn as we, ft as Te, g as Ee, h as De, hn as Oe, in as ke, ir as T, jn as Ae, kn as je, ln as Me, lr as Ne, m as Pe, mn as E, nn as Fe, nr as Ie, on as Le, or as Re, p as ze, pn as D, qn as Be, rn as Ve, rr as He, sn as Ue, sr as We, tn as Ge, tr as Ke, u as qe, un as Je, ur as O, v as Ye, w as Xe, wn as Ze, wt as Qe, x as $e, xn as et, y as tt, yn as nt, yt as rt, zn as it } from "./constants-BQ1-lyZI.mjs";
3
3
  import { n as at, t as k } from "./objectSpread2-CWwMYL_U.mjs";
4
4
  import { n as A, t as ot } from "./tw-CqxBf-1Y.mjs";
5
5
  import { r as st, t as ct } from "./lightweight-i18n-DTYoSr_o.mjs";
@@ -12830,7 +12830,7 @@ var kf = new Set([
12830
12830
  }
12831
12831
  prepare() {
12832
12832
  var e;
12833
- Gf.activeInstances++, this.mode = (e = this.config.theme) == null ? "auto" : e, this.applyAttribute(), this.resolved = this.deriveResolved(), this.mode === "auto" && this.addMediaListener();
12833
+ Gf.activeInstances++, this.mode = (e = this.config.theme) == null ? "auto" : e, this.applyAttribute(!1), this.resolved = this.deriveResolved(), this.mode === "auto" && this.addMediaListener();
12834
12834
  }
12835
12835
  getMode() {
12836
12836
  return this.mode;
@@ -12840,13 +12840,17 @@ var kf = new Set([
12840
12840
  }
12841
12841
  setMode(e) {
12842
12842
  let t = this.resolved;
12843
- this.mode === "auto" && this.removeMediaListener(), this.mode = e, this.applyAttribute(), this.resolved = this.deriveResolved(), this.mode === "auto" && this.addMediaListener(), this.resolved !== t && this.fireCallback();
12843
+ this.mode === "auto" && this.removeMediaListener(), this.mode = e, this.applyAttribute(!0), this.resolved = this.deriveResolved(), this.mode === "auto" && this.addMediaListener(), this.resolved !== t && this.fireCallback();
12844
12844
  }
12845
12845
  destroy() {
12846
12846
  this.removeMediaListener(), Gf.activeInstances--, Gf.activeInstances <= 0 && (Gf.activeInstances = 0, this.removeAttribute());
12847
12847
  }
12848
- applyAttribute() {
12849
- typeof document > "u" || (this.mode === "auto" ? Gf.activeInstances <= 1 && this.removeAttribute() : document.documentElement.setAttribute(Wf, this.mode));
12848
+ applyAttribute(e) {
12849
+ if (!(typeof document > "u")) if (this.mode === "auto") Gf.activeInstances <= 1 && this.removeAttribute();
12850
+ else {
12851
+ if (!e && Gf.activeInstances > 1 && document.documentElement.hasAttribute(Wf)) return;
12852
+ document.documentElement.setAttribute(Wf, this.mode);
12853
+ }
12850
12854
  }
12851
12855
  removeAttribute() {
12852
12856
  typeof document > "u" || document.documentElement.removeAttribute(Wf);
@@ -130,7 +130,7 @@ var a = {
130
130
  RIGHT: 2,
131
131
  BACKWARD: 3,
132
132
  FORWARD: 4
133
- }, l = () => "0.10.6", u = /* @__PURE__ */ function(e) {
133
+ }, l = () => "0.10.7", u = /* @__PURE__ */ function(e) {
134
134
  return e.VERBOSE = "VERBOSE", e.INFO = "INFO", e.WARN = "WARN", e.ERROR = "ERROR", e;
135
135
  }({}), d = (e, t, n = "log", r, i = "color: inherit") => {
136
136
  let a = typeof console > "u" ? void 0 : console;
@@ -1,4 +1,4 @@
1
- import { $ as e, $t as t, A as n, At as r, B as i, Bt as a, Ct as o, D as s, Et as c, F as l, Ft as u, G as d, Gt as f, H as p, Ht as m, I as h, It as g, J as _, Jt as v, K as y, Kt as b, L as ee, Lt as x, M as te, Mt as S, Nn as ne, Nt as re, O as ie, Ot as C, P as ae, Pt as oe, Q as se, Qt as ce, R as le, Rn as w, Rt as ue, St as de, Tt as fe, U as pe, Ut as me, V as he, W as ge, Wt as _e, X as ve, Xt as ye, Y as be, Yt as xe, Z as Se, Zt as Ce, _n as we, _t as Te, a as Ee, at as De, bt as Oe, c as ke, cn as T, ct as Ae, d as je, dr as E, dt as Me, en as Ne, et as Pe, f as Fe, ft as Ie, g as Le, gt as Re, h as ze, ht as Be, i as Ve, ir as He, it as Ue, j as We, jt as Ge, k as Ke, kt as qe, l as Je, ln as Ye, lt as Xe, mn as Ze, mt as Qe, n as $e, nt as et, o as tt, ot as nt, p as rt, pn as D, pt as it, q as at, qt as ot, r as st, rn as ct, rt as lt, s as ut, sn as dt, st as ft, t as pt, tt as mt, u as O, un as ht, ur as k, ut as gt, v as _t, vn as vt, vt as yt, wt as bt, xt, z as St, zt as Ct } from "./constants-lOEJu8bC.mjs";
1
+ import { $ as e, $t as t, A as n, At as r, B as i, Bt as a, Ct as o, D as s, Et as c, F as l, Ft as u, G as d, Gt as f, H as p, Ht as m, I as h, It as g, J as _, Jt as v, K as y, Kt as b, L as ee, Lt as x, M as te, Mt as S, Nn as ne, Nt as re, O as ie, Ot as C, P as ae, Pt as oe, Q as se, Qt as ce, R as le, Rn as w, Rt as ue, St as de, Tt as fe, U as pe, Ut as me, V as he, W as ge, Wt as _e, X as ve, Xt as ye, Y as be, Yt as xe, Z as Se, Zt as Ce, _n as we, _t as Te, a as Ee, at as De, bt as Oe, c as ke, cn as T, ct as Ae, d as je, dr as E, dt as Me, en as Ne, et as Pe, f as Fe, ft as Ie, g as Le, gt as Re, h as ze, ht as Be, i as Ve, ir as He, it as Ue, j as We, jt as Ge, k as Ke, kt as qe, l as Je, ln as Ye, lt as Xe, mn as Ze, mt as Qe, n as $e, nt as et, o as tt, ot as nt, p as rt, pn as D, pt as it, q as at, qt as ot, r as st, rn as ct, rt as lt, s as ut, sn as dt, st as ft, t as pt, tt as mt, u as O, un as ht, ur as k, ut as gt, v as _t, vn as vt, vt as yt, wt as bt, xt, z as St, zt as Ct } from "./constants-BQ1-lyZI.mjs";
2
2
  import { t as A } from "./objectSpread2-CWwMYL_U.mjs";
3
3
  import { n as j } from "./tw-CqxBf-1Y.mjs";
4
4
  //#region src/components/utils/html.ts
package/dist/full.mjs CHANGED
@@ -1,7 +1,7 @@
1
- import { n as e, t } from "./chunks/blok-B0k4z2h1.mjs";
2
- import { ur as n } from "./chunks/constants-lOEJu8bC.mjs";
1
+ import { n as e, t } from "./chunks/blok-oWXfRfnM.mjs";
2
+ import { ur as n } from "./chunks/constants-BQ1-lyZI.mjs";
3
3
  import { t as r } from "./chunks/objectSpread2-CWwMYL_U.mjs";
4
- import { a as i, b as a, c as o, g as s, i as c, l, n as u, o as d, s as f, t as p, v as m, y as h } from "./chunks/tools-FmtWXVgt.mjs";
4
+ import { a as i, b as a, c as o, g as s, i as c, l, n as u, o as d, s as f, t as p, v as m, y as h } from "./chunks/tools-MuBQQyZ-.mjs";
5
5
  //#region src/full.ts
6
6
  var g = {
7
7
  paragraph: {
package/dist/react.mjs CHANGED
@@ -1,5 +1,5 @@
1
- import { t as e } from "./chunks/blok-B0k4z2h1.mjs";
2
- import "./chunks/constants-lOEJu8bC.mjs";
1
+ import { t as e } from "./chunks/blok-oWXfRfnM.mjs";
2
+ import "./chunks/constants-BQ1-lyZI.mjs";
3
3
  import { t } from "./chunks/objectSpread2-CWwMYL_U.mjs";
4
4
  import { t as n } from "./chunks/objectWithoutProperties-D0XxKB4n.mjs";
5
5
  import { forwardRef as r, useEffect as i, useMemo as a, useRef as o, useState as s } from "react";
package/dist/tools.mjs CHANGED
@@ -1,3 +1,3 @@
1
- import { m as e } from "./chunks/constants-lOEJu8bC.mjs";
2
- import { _ as t, a as n, b as r, c as i, d as a, f as o, g as s, h as c, i as l, l as u, m as d, n as f, o as p, p as m, r as h, s as g, t as _, u as v, v as y, y as b } from "./chunks/tools-FmtWXVgt.mjs";
1
+ import { m as e } from "./chunks/constants-BQ1-lyZI.mjs";
2
+ import { _ as t, a as n, b as r, c as i, d as a, f as o, g as s, h as c, i as l, l as u, m as d, n as f, o as p, p as m, r as h, s as g, t as _, u as v, v as y, y as b } from "./chunks/tools-MuBQQyZ-.mjs";
3
3
  export { u as Bold, c as Callout, v as Code, e as Convert, d as Database, m as DatabaseRow, o as Divider, b as Header, h as InlineCode, i as Italic, g as Link, y as List, p as Marker, r as Paragraph, a as Quote, l as Strikethrough, t as Table, s as Toggle, n as Underline, _ as defaultBlockTools, f as defaultInlineTools };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jackuait/blok",
3
- "version": "0.10.6",
3
+ "version": "0.10.7",
4
4
  "description": "Blok — headless, highly extensible rich text editor built for developers who need to implement a block-based editing experience (similar to Notion) without building it from scratch",
5
5
  "module": "dist/blok.mjs",
6
6
  "types": "./types/index.d.ts",
@@ -42,7 +42,7 @@ export class ThemeManager extends Module {
42
42
  public prepare(): void {
43
43
  state.activeInstances++;
44
44
  this.mode = this.config.theme ?? 'auto';
45
- this.applyAttribute();
45
+ this.applyAttribute(false);
46
46
  this.resolved = this.deriveResolved();
47
47
 
48
48
  if (this.mode === 'auto') {
@@ -75,7 +75,7 @@ export class ThemeManager extends Module {
75
75
  }
76
76
 
77
77
  this.mode = mode;
78
- this.applyAttribute();
78
+ this.applyAttribute(true);
79
79
  this.resolved = this.deriveResolved();
80
80
 
81
81
  if (this.mode === 'auto') {
@@ -102,7 +102,14 @@ export class ThemeManager extends Module {
102
102
 
103
103
  // ─── Private ───────────────────────────────────────────────────────────────
104
104
 
105
- private applyAttribute(): void {
105
+ /**
106
+ * @param explicit - true when called from setMode() (consumer API);
107
+ * false when called from prepare() (initial construction).
108
+ * During prepare(), skip setting the attribute if another
109
+ * instance already controls it — prevents nested editors
110
+ * (e.g. inside Columns) from overriding the parent theme.
111
+ */
112
+ private applyAttribute(explicit: boolean): void {
106
113
  if (typeof document === 'undefined') {
107
114
  return;
108
115
  }
@@ -112,6 +119,9 @@ export class ThemeManager extends Module {
112
119
  this.removeAttribute();
113
120
  }
114
121
  } else {
122
+ if (!explicit && state.activeInstances > 1 && document.documentElement.hasAttribute(ATTR)) {
123
+ return;
124
+ }
115
125
  document.documentElement.setAttribute(ATTR, this.mode);
116
126
  }
117
127
  }