erl-mathtextx-editor 0.2.2 → 0.2.3

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/CHANGELOG.md CHANGED
@@ -5,6 +5,18 @@ All notable changes to `erl-mathtextx-editor` will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.2.3] - 2026-05-20
9
+
10
+ ### Fixed
11
+
12
+ - **MathLive Latex Normalization** — Crash saat `latex` attribute bukan string
13
+ - `MathTypeDialog.tsx` — `latex.trim is not a function` → semua `setLatex` sekarang pakai `normalizeLatex()` guard
14
+ - `MathFieldView.tsx` — `props.updateAttributes({ latex })` selalu di-normalize ke string
15
+ - Auto-fix: jika `latex` attribute terisi object/event (bukan string), otomatis dikoreksi ke string kosong
16
+ - React `flushSync` warning dihindari dengan `queueMicrotask` untuk normalization effect
17
+ - **MathTypeDialog** — Defensive guard pada `initialLatex` prop dan semua `setLatex` calls
18
+ - **MathFieldView** — Sync effect `props.node.attrs.latex` memakai `normalizeLatex()` + `queueMicrotask`
19
+
8
20
  ## [0.2.2] - 2026-05-20
9
21
 
10
22
  ### Added
@@ -1,6 +1,6 @@
1
1
  import { jsx as t, jsxs as l } from "react/jsx-runtime";
2
2
  import V, { useId as B, useRef as M, useCallback as b, useState as d, useEffect as A } from "react";
3
- import { u as $ } from "./index-BHhpSW1p.js";
3
+ import { u as $ } from "./index-CkhZlaGj.js";
4
4
  import { u as I } from "./useDraggable-DEoLIB5k.js";
5
5
  const P = V.memo(({
6
6
  isOpen: o,
@@ -1,6 +1,6 @@
1
1
  import { jsxs as i, Fragment as J, jsx as e } from "react/jsx-runtime";
2
2
  import { useId as V, useRef as y, useState as d, useCallback as s } from "react";
3
- import { u as q } from "./index-BHhpSW1p.js";
3
+ import { u as q } from "./index-CkhZlaGj.js";
4
4
  function Z({
5
5
  isOpen: U,
6
6
  onClose: w,
@@ -1,6 +1,6 @@
1
1
  import { jsx as e, jsxs as t } from "react/jsx-runtime";
2
2
  import v, { useId as g, useRef as y, useState as c, useEffect as k, useCallback as w } from "react";
3
- import { u as C } from "./index-BHhpSW1p.js";
3
+ import { u as C } from "./index-CkhZlaGj.js";
4
4
  import { u as M } from "./useDraggable-DEoLIB5k.js";
5
5
  const I = v.memo(({ isOpen: i, onInsert: d, onClose: m }) => {
6
6
  const u = g(), b = y(null), [l, n] = c(3), [a, s] = c(3), [o, h] = c(!0), { position: p, handleMouseDown: N } = M(i);
@@ -1,6 +1,6 @@
1
1
  import { jsx as a, jsxs as e } from "react/jsx-runtime";
2
2
  import S, { useId as T, useRef as _, useState as r, useEffect as w, useCallback as c } from "react";
3
- import { u as F } from "./index-BHhpSW1p.js";
3
+ import { u as F } from "./index-CkhZlaGj.js";
4
4
  const I = S.memo(({
5
5
  isOpen: s,
6
6
  currentUrl: o = "",
@@ -1,6 +1,6 @@
1
1
  import { jsx as t, jsxs as l } from "react/jsx-runtime";
2
2
  import g, { useId as x, useRef as p, useState as f, useEffect as y, useCallback as h } from "react";
3
- import { u as N } from "./index-BHhpSW1p.js";
3
+ import { u as N } from "./index-CkhZlaGj.js";
4
4
  import { u as k } from "./useDraggable-DEoLIB5k.js";
5
5
  const z = g.memo(({
6
6
  isOpen: a,
@@ -1,6 +1,6 @@
1
1
  import { jsx as e, jsxs as l } from "react/jsx-runtime";
2
2
  import c, { useId as p, useRef as h, useCallback as x } from "react";
3
- import { u as b } from "./index-BHhpSW1p.js";
3
+ import { u as b } from "./index-CkhZlaGj.js";
4
4
  import { u } from "./useDraggable-DEoLIB5k.js";
5
5
  const g = [
6
6
  { id: "plain", name: "Polos", description: "Tabel sederhana tanpa gaya tambahan", headerStyle: "none", borderStyle: "all", stripeRows: !1 },
@@ -1,4 +1,4 @@
1
- import { C as t, I as s, b as o, L as l, M as i, d as r, e as T, f as g, h as n, i as m, S as p, T as M, j as C, k as b, l as d, W as h, m as y, n as D, o as L, p as c, q as x, r as u, s as E, t as I, v as P, w as S, x as f, y as k } from "./index-BHhpSW1p.js";
1
+ import { C as t, I as s, b as o, L as l, M as i, d as r, e as T, f as g, h as n, i as m, S as p, T as M, j as C, k as b, l as d, W as h, m as y, n as D, o as L, p as c, q as x, r as u, s as E, t as I, v as P, w as S, x as f, y as k } from "./index-CkhZlaGj.js";
2
2
  import { C as H } from "./ContentViewer-RijJ5nlJ.js";
3
3
  export {
4
4
  t as CellPropertiesDialog,