erl-mathtextx-editor 0.1.10 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/CHANGELOG.md +64 -0
  2. package/README.md +448 -423
  3. package/dist/{CellPropertiesDialogImpl-Cl0pxbeQ.js → CellPropertiesDialogImpl-D-qjxrs5.js} +40 -40
  4. package/dist/{ImageInsertDialog-BVBl1y36.js → ImageInsertDialog-BUX79-_G.js} +1 -1
  5. package/dist/{InsertTableDialogImpl-Cx3ShX7u.js → InsertTableDialogImpl-DfGvKwP4.js} +25 -25
  6. package/dist/{LinkDialogImpl-gMjoZVma.js → LinkDialogImpl-BQEObyL2.js} +57 -57
  7. package/dist/MathTextXEditor.d.ts +1 -1
  8. package/dist/TablePropertiesDialogImpl-CDWcoc-Y.js +56 -0
  9. package/dist/TableTemplatesDialogImpl-BUSPvt83.js +64 -0
  10. package/dist/assets/erl-mathtextx-editor.css +1 -1
  11. package/dist/assets/viewer.css +1 -1
  12. package/dist/components/ImageEditDialog.d.ts +3 -0
  13. package/dist/components/useDraggable.d.ts +7 -0
  14. package/dist/core/serializer.d.ts +8 -0
  15. package/dist/erl-mathtextx-editor.js +1 -1
  16. package/dist/erl-mathtextx-editor.umd.cjs +178 -178
  17. package/dist/{index-CakccgVO.js → index-BHhpSW1p.js} +4208 -4478
  18. package/dist/{index-Djb9MY7m.js → index-D7JFZLgA.js} +1 -1
  19. package/dist/{index-QMz8TDH0.js → index-DBnDkAIP.js} +1 -1
  20. package/dist/toolbar/MainToolbar.d.ts +1 -0
  21. package/dist/toolbar/MathToolbar.d.ts +3 -1
  22. package/dist/toolbar/toolbar-config.d.ts +22 -0
  23. package/dist/toolbar/toolbar-icons.d.ts +53 -0
  24. package/dist/toolbar/useDialogManager.d.ts +45 -0
  25. package/dist/types/index.d.ts +1 -1
  26. package/dist/useDraggable-DEoLIB5k.js +34 -0
  27. package/package.json +1 -1
  28. package/dist/TablePropertiesDialogImpl-CrTTV3Zr.js +0 -56
  29. package/dist/TableTemplatesDialogImpl-DTcom8H5.js +0 -64
package/CHANGELOG.md CHANGED
@@ -5,6 +5,70 @@ 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.2] - 2026-05-20
9
+
10
+ ### Added
11
+
12
+ - **🖐️ Draggable Dialogs** — Semua dialog (MathType, Link, Image, Table, Cell Properties, Table Properties, Table Templates) sekarang bisa di-drag bebas
13
+ - Hook `useDraggable` untuk drag behavior yang konsisten
14
+ - Drag handle di header setiap dialog
15
+ - Posisi dialog tersimpan saat drag
16
+ - **🌐 Localized Table Dialogs** — Dialog insert/edit table dalam Bahasa Indonesia
17
+ - Insert Table, Table Properties, Cell Properties, Table Templates
18
+ - Label, placeholder, dan pesan error diterjemahkan
19
+ - **🔣 Enhanced Math Symbols** — Symbol palette diperluas
20
+ - Tambahan simbol matematika untuk kategori yang ada
21
+ - MathToolbar dengan konfigurasi yang lebih fleksibel
22
+
23
+ ### Changed
24
+
25
+ - **💅 TipTap Table CSS** — Perbaikan styling table untuk tampilan yang lebih rapi
26
+ - Border, spacing, dan hover state yang lebih konsisten
27
+ - Resizable column handle yang lebih jelas
28
+ - Selected cell highlight yang lebih visible
29
+ - **🔧 MainToolbar Refactoring** — Arsitektur toolbar data-driven
30
+ - Konfigurasi toolbar via `toolbar-config.ts` (Basic/Advanced/Olimpiade)
31
+ - Icon SVG ter-ekstrak di `toolbar-icons.tsx`
32
+ - Dialog state management terpusat via `useDialogManager` hook
33
+ - Kode lebih bersih dan mudah maintain (~430 lines, turun dari 1311)
34
+
35
+ ### Fixed
36
+
37
+ - **IndentBackspace** — Perbaikan backspace behavior di awal paragraph dengan indentasi
38
+ - **Serializer** — Improved HTML serialization untuk table elements
39
+
40
+ ## [0.2.0] - 2026-05-13
41
+
42
+ ### Added
43
+
44
+ - **🏆 Olimpiade Toolbar Mode** — Toolbar khusus untuk olimpiade/kompetisi matematika
45
+ - Mode switch 3 opsi: Basic / Advanced / Olimpiade
46
+ - Toolbar minimal: Undo/Redo, Bold/Italic/Underline, Paragraph/H1/H2, Lists, Math Formula, Block Math
47
+ - Math Toolbar khusus olimpiade: Basic, Relation, Set (extended), Greek, Structure
48
+ - Block Math button untuk insert display-style math node langsung
49
+ - **Block Math Direct Insert** — Prop `onInsertBlockMath` untuk insert block math tanpa dialog
50
+ - **Empty Inline Math Visibility** — Empty math fields sekarang terlihat sebagai kotak dashed abu-abu
51
+ - `min-width: 50px`, `min-height: 26px` untuk empty math inline
52
+
53
+ ### Fixed
54
+
55
+ - **Math Node Serialization** — Perbaikan kritis: DOMPurify strip `latex` attribute
56
+ - `addAttributes` sekarang render sebagai `data-latex` / `data-display` (bukan `latex` / `display`)
57
+ - `data-display` ditambahkan ke `ALLOWED_ATTR` di DOMPurify
58
+ - Math nodes persist saat tab switch editor ↔ viewer
59
+ - **MathTypeDialog Enter Conflict** — Enter tidak lagi submit dialog
60
+ - Solusi: `\sqrt` + Enter → MathLive auto-convert ke √, dialog tetap terbuka
61
+ - Submit hanya via klik tombol "Sisipkan"
62
+ - **ESLint Cleanup** — Fixed `let` → `const` di MathFieldView, fixed regex escape di MathTypeDialog
63
+ - **Edit Button Overlap** — Tombol Edit pada math node hanya muncul saat hover, hilang saat focus
64
+
65
+ ### Changed
66
+
67
+ - **Toolbar Cleanup** — Advanced mode jadi lebih ringkas
68
+ - Image editing (Edit, Wrap) dipindah ke right-click context menu
69
+ - Table operation buttons dipindah ke Table Operations dropdown
70
+ - **Ctrl+M** — Insert inline math langsung (tanpa dialog MathType)
71
+
8
72
  ## [0.1.9] - 2026-04-01
9
73
 
10
74
  ### Fixed