quoin-editor 0.4.2 → 1.0.1

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 (231) hide show
  1. package/CHANGELOG.md +251 -0
  2. package/MIGRATION.md +233 -0
  3. package/README.md +78 -716
  4. package/dist/ai.cjs +1148 -0
  5. package/dist/ai.cjs.map +1 -0
  6. package/dist/ai.d.cts +68 -0
  7. package/dist/ai.d.ts +68 -0
  8. package/dist/ai.js +1148 -0
  9. package/dist/ai.js.map +1 -0
  10. package/dist/catalogue.cjs +59 -0
  11. package/dist/catalogue.cjs.map +1 -0
  12. package/dist/catalogue.d.cts +39 -0
  13. package/dist/catalogue.d.ts +39 -0
  14. package/dist/catalogue.js +59 -0
  15. package/dist/catalogue.js.map +1 -0
  16. package/dist/chunk-26Q4LSIU.js +100 -0
  17. package/dist/chunk-26Q4LSIU.js.map +1 -0
  18. package/dist/chunk-56C7GCKO.cjs +1385 -0
  19. package/dist/chunk-56C7GCKO.cjs.map +1 -0
  20. package/dist/chunk-5M4QG3ZC.cjs +3303 -0
  21. package/dist/chunk-5M4QG3ZC.cjs.map +1 -0
  22. package/dist/chunk-5R3ISX4A.cjs +6643 -0
  23. package/dist/chunk-5R3ISX4A.cjs.map +1 -0
  24. package/dist/chunk-62WKUAQY.js +3335 -0
  25. package/dist/chunk-62WKUAQY.js.map +1 -0
  26. package/dist/chunk-6LMS5J3Y.js +320 -0
  27. package/dist/chunk-6LMS5J3Y.js.map +1 -0
  28. package/dist/chunk-6PKVJZQV.cjs +100 -0
  29. package/dist/chunk-6PKVJZQV.cjs.map +1 -0
  30. package/dist/chunk-6YSGUAVW.js +376 -0
  31. package/dist/chunk-6YSGUAVW.js.map +1 -0
  32. package/dist/chunk-75C6PX2L.cjs +239 -0
  33. package/dist/chunk-75C6PX2L.cjs.map +1 -0
  34. package/dist/chunk-A4IJSJKL.js +598 -0
  35. package/dist/chunk-A4IJSJKL.js.map +1 -0
  36. package/dist/chunk-BTBHHBVR.cjs +3335 -0
  37. package/dist/chunk-BTBHHBVR.cjs.map +1 -0
  38. package/dist/chunk-CLTHD5GO.cjs +34 -0
  39. package/dist/chunk-CLTHD5GO.cjs.map +1 -0
  40. package/dist/chunk-EH5KXQXY.cjs +62 -0
  41. package/dist/chunk-EH5KXQXY.cjs.map +1 -0
  42. package/dist/chunk-ESMAW4NK.cjs +184 -0
  43. package/dist/chunk-ESMAW4NK.cjs.map +1 -0
  44. package/dist/chunk-EYFCOV3T.cjs +30 -0
  45. package/dist/chunk-EYFCOV3T.cjs.map +1 -0
  46. package/dist/chunk-F5V3IEEE.cjs +326 -0
  47. package/dist/chunk-F5V3IEEE.cjs.map +1 -0
  48. package/dist/chunk-GPIDU3GN.js +239 -0
  49. package/dist/chunk-GPIDU3GN.js.map +1 -0
  50. package/dist/chunk-HOIDJEVI.cjs +4063 -0
  51. package/dist/chunk-HOIDJEVI.cjs.map +1 -0
  52. package/dist/chunk-JJ3RASQS.cjs +706 -0
  53. package/dist/chunk-JJ3RASQS.cjs.map +1 -0
  54. package/dist/chunk-LE3F7WIP.js +6643 -0
  55. package/dist/chunk-LE3F7WIP.js.map +1 -0
  56. package/dist/chunk-LE5XMIFJ.cjs +14 -0
  57. package/dist/chunk-LE5XMIFJ.cjs.map +1 -0
  58. package/dist/chunk-LMAEPFTX.js +30 -0
  59. package/dist/chunk-LMAEPFTX.js.map +1 -0
  60. package/dist/chunk-LV6EYPJO.js +34 -0
  61. package/dist/chunk-LV6EYPJO.js.map +1 -0
  62. package/dist/chunk-MLRAVUFG.cjs +376 -0
  63. package/dist/chunk-MLRAVUFG.cjs.map +1 -0
  64. package/dist/chunk-MQUCCSWG.js +14 -0
  65. package/dist/chunk-MQUCCSWG.js.map +1 -0
  66. package/dist/chunk-O4Z2WMFF.js +62 -0
  67. package/dist/chunk-O4Z2WMFF.js.map +1 -0
  68. package/dist/chunk-OCCKQHCY.js +25 -0
  69. package/dist/chunk-OCCKQHCY.js.map +1 -0
  70. package/dist/chunk-PGSS4IOS.js +706 -0
  71. package/dist/chunk-PGSS4IOS.js.map +1 -0
  72. package/dist/chunk-PIWRSX7U.js +562 -0
  73. package/dist/chunk-PIWRSX7U.js.map +1 -0
  74. package/dist/chunk-PX6LZMH4.cjs +598 -0
  75. package/dist/chunk-PX6LZMH4.cjs.map +1 -0
  76. package/dist/chunk-QXG3HWDS.js +184 -0
  77. package/dist/chunk-QXG3HWDS.js.map +1 -0
  78. package/dist/chunk-RQW3P3GH.js +504 -0
  79. package/dist/chunk-RQW3P3GH.js.map +1 -0
  80. package/dist/chunk-SSIRYUCK.js +3303 -0
  81. package/dist/chunk-SSIRYUCK.js.map +1 -0
  82. package/dist/chunk-UBNG5YCG.js +326 -0
  83. package/dist/chunk-UBNG5YCG.js.map +1 -0
  84. package/dist/chunk-UCXLRRWY.js +1385 -0
  85. package/dist/chunk-UCXLRRWY.js.map +1 -0
  86. package/dist/chunk-UDAVVEFC.cjs +562 -0
  87. package/dist/chunk-UDAVVEFC.cjs.map +1 -0
  88. package/dist/chunk-UPSLDTLT.js +4063 -0
  89. package/dist/chunk-UPSLDTLT.js.map +1 -0
  90. package/dist/chunk-UWNZG2SD.cjs +25 -0
  91. package/dist/chunk-UWNZG2SD.cjs.map +1 -0
  92. package/dist/chunk-V3KLMSRO.cjs +504 -0
  93. package/dist/chunk-V3KLMSRO.cjs.map +1 -0
  94. package/dist/chunk-VACTAZWS.cjs +249 -0
  95. package/dist/chunk-VACTAZWS.cjs.map +1 -0
  96. package/dist/chunk-WMN6566P.js +249 -0
  97. package/dist/chunk-WMN6566P.js.map +1 -0
  98. package/dist/chunk-XX5FTPJR.cjs +320 -0
  99. package/dist/chunk-XX5FTPJR.cjs.map +1 -0
  100. package/dist/comments.cjs +1008 -0
  101. package/dist/comments.cjs.map +1 -0
  102. package/dist/comments.d.cts +93 -0
  103. package/dist/comments.d.ts +93 -0
  104. package/dist/comments.js +1008 -0
  105. package/dist/comments.js.map +1 -0
  106. package/dist/diff.cjs +346 -0
  107. package/dist/diff.cjs.map +1 -0
  108. package/dist/diff.d.cts +67 -0
  109. package/dist/diff.d.ts +67 -0
  110. package/dist/diff.js +346 -0
  111. package/dist/diff.js.map +1 -0
  112. package/dist/docx.cjs +874 -0
  113. package/dist/docx.cjs.map +1 -0
  114. package/dist/docx.d.cts +33 -0
  115. package/dist/docx.d.ts +33 -0
  116. package/dist/docx.js +874 -0
  117. package/dist/docx.js.map +1 -0
  118. package/dist/embed-provider-jXwlRmnp.d.cts +19 -0
  119. package/dist/embed-provider-jXwlRmnp.d.ts +19 -0
  120. package/dist/embed.cjs +17 -0
  121. package/dist/embed.cjs.map +1 -0
  122. package/dist/embed.d.cts +56 -0
  123. package/dist/embed.d.ts +56 -0
  124. package/dist/embed.js +17 -0
  125. package/dist/embed.js.map +1 -0
  126. package/dist/emoji-data.cjs +1968 -0
  127. package/dist/emoji-data.cjs.map +1 -0
  128. package/dist/emoji-data.js +1968 -0
  129. package/dist/emoji-data.js.map +1 -0
  130. package/dist/emoji-extension-CmPlRssm.d.ts +46 -0
  131. package/dist/emoji-extension-zJ6F7hW8.d.cts +46 -0
  132. package/dist/emoji.cjs +18 -0
  133. package/dist/emoji.cjs.map +1 -0
  134. package/dist/emoji.d.cts +31 -0
  135. package/dist/emoji.d.ts +31 -0
  136. package/dist/emoji.js +18 -0
  137. package/dist/emoji.js.map +1 -0
  138. package/dist/engine.cjs +119 -0
  139. package/dist/engine.cjs.map +1 -0
  140. package/dist/engine.d.cts +144 -0
  141. package/dist/engine.d.ts +144 -0
  142. package/dist/engine.js +119 -0
  143. package/dist/engine.js.map +1 -0
  144. package/dist/find-extension-BcRyE9K4.d.cts +41 -0
  145. package/dist/find-extension-CmFehyul.d.ts +41 -0
  146. package/dist/find.cjs +20 -0
  147. package/dist/find.cjs.map +1 -0
  148. package/dist/find.d.cts +44 -0
  149. package/dist/find.d.ts +44 -0
  150. package/dist/find.js +20 -0
  151. package/dist/find.js.map +1 -0
  152. package/dist/headless.cjs +151 -518
  153. package/dist/headless.cjs.map +1 -1
  154. package/dist/headless.d.cts +102 -69
  155. package/dist/headless.d.ts +102 -69
  156. package/dist/headless.js +149 -467
  157. package/dist/headless.js.map +1 -1
  158. package/dist/index-CFPmCee4.d.cts +68 -0
  159. package/dist/index-DiCGV60d.d.ts +68 -0
  160. package/dist/index.cjs +183 -2753
  161. package/dist/index.cjs.map +1 -1
  162. package/dist/index.d.cts +345 -253
  163. package/dist/index.d.ts +345 -253
  164. package/dist/index.js +168 -2696
  165. package/dist/index.js.map +1 -1
  166. package/dist/math.cjs +18 -0
  167. package/dist/math.cjs.map +1 -0
  168. package/dist/math.d.cts +49 -0
  169. package/dist/math.d.ts +49 -0
  170. package/dist/math.js +18 -0
  171. package/dist/math.js.map +1 -0
  172. package/dist/mention.cjs +18 -0
  173. package/dist/mention.cjs.map +1 -0
  174. package/dist/mention.d.cts +50 -0
  175. package/dist/mention.d.ts +50 -0
  176. package/dist/mention.js +18 -0
  177. package/dist/mention.js.map +1 -0
  178. package/dist/presence.cjs +562 -0
  179. package/dist/presence.cjs.map +1 -0
  180. package/dist/presence.d.cts +30 -0
  181. package/dist/presence.d.ts +30 -0
  182. package/dist/presence.js +562 -0
  183. package/dist/presence.js.map +1 -0
  184. package/dist/registry-CWBOSAHm.d.cts +121 -0
  185. package/dist/registry-CWBOSAHm.d.ts +121 -0
  186. package/dist/stats-extension-DisOEbbI.d.ts +40 -0
  187. package/dist/stats-extension-Dt1lgP3m.d.cts +40 -0
  188. package/dist/stats.cjs +19 -0
  189. package/dist/stats.cjs.map +1 -0
  190. package/dist/stats.d.cts +19 -0
  191. package/dist/stats.d.ts +19 -0
  192. package/dist/stats.js +19 -0
  193. package/dist/stats.js.map +1 -0
  194. package/dist/styles.css +1 -1
  195. package/dist/table-extension-BTMJnT7J.d.ts +57 -0
  196. package/dist/table-extension-DxZz3jqp.d.cts +57 -0
  197. package/dist/table.cjs +50 -0
  198. package/dist/table.cjs.map +1 -0
  199. package/dist/table.d.cts +57 -0
  200. package/dist/table.d.ts +57 -0
  201. package/dist/table.js +50 -0
  202. package/dist/table.js.map +1 -0
  203. package/dist/to-html-C5t7xyaM.d.ts +21 -0
  204. package/dist/to-html-CNCITCln.d.cts +21 -0
  205. package/dist/toc-extension-CR9U-l6j.d.ts +25 -0
  206. package/dist/toc-extension-DGHywOBv.d.cts +25 -0
  207. package/dist/toc.cjs +18 -0
  208. package/dist/toc.cjs.map +1 -0
  209. package/dist/toc.d.cts +24 -0
  210. package/dist/toc.d.ts +24 -0
  211. package/dist/toc.js +18 -0
  212. package/dist/toc.js.map +1 -0
  213. package/dist/types-C6_QkXzy.d.ts +358 -0
  214. package/dist/types-CJ7Gq3GX.d.cts +358 -0
  215. package/dist/types-DULc8wwg.d.cts +120 -0
  216. package/dist/types-DULc8wwg.d.ts +120 -0
  217. package/dist/view-controller-BD1KwYfE.d.cts +105 -0
  218. package/dist/view-controller-y4cb60ue.d.ts +105 -0
  219. package/dist/view.cjs +23 -0
  220. package/dist/view.cjs.map +1 -0
  221. package/dist/view.d.cts +40 -0
  222. package/dist/view.d.ts +40 -0
  223. package/dist/view.js +23 -0
  224. package/dist/view.js.map +1 -0
  225. package/dist/yjs.cjs +864 -0
  226. package/dist/yjs.cjs.map +1 -0
  227. package/dist/yjs.d.cts +22 -0
  228. package/dist/yjs.d.ts +22 -0
  229. package/dist/yjs.js +864 -0
  230. package/dist/yjs.js.map +1 -0
  231. package/package.json +217 -18
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/engine/commands/table-shape.ts","../src/engine/state/cell-selection.ts","../src/engine/commands/cell-commands.ts","../src/extensions/table/TableBlock.tsx","../src/extensions/table/controls-slot.ts","../src/extensions/table/TableCell.tsx","../src/extensions/table/table-ui-store.ts","../src/extensions/table/use-cell-press.ts","../src/engine/commands/table-commands.ts","../src/extensions/table/table-keys.ts","../src/extensions/table/use-reveal-cell.ts","../src/extensions/table/use-table-keys.ts","../src/extensions/table/vertical-cell-move.ts","../src/extensions/table/TableControls.tsx","../src/extensions/table/menu-cells.ts","../src/extensions/table/TableHandles.tsx","../src/extensions/table/ColumnResizer.tsx","../src/extensions/table/HandleMenu.tsx","../src/extensions/table/table-menu-items.ts","../src/extensions/table/use-table-geometry.ts","../src/extensions/table/table-geometry.ts","../src/extensions/table/use-cut-cells.ts","../src/extensions/table/use-table-target.ts","../src/extensions/table/table-labels.ts","../src/extensions/table/table-slash-item.ts","../src/extensions/table/table-extension.tsx"],"mappings":"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","names":["end","TableCell","useCallback","cellOf","useCallback","useEffect","useCallback","useEffect","useEffect","useEffect","jsx","useCallback","useEffect","useState","useRef","useEffect","useRef","jsx","useRef","useEffect","end","jsx","jsxs","item","Fragment","jsx","jsxs","useRef","useEffect","useEffect","useCallback","useEffect","useState","useState","useCallback","useEffect","jsx","useState","useCallback","useEffect","jsx"]}
@@ -0,0 +1,562 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
+
3
+ var _chunkEYFCOV3Tcjs = require('./chunk-EYFCOV3T.cjs');
4
+
5
+
6
+
7
+
8
+
9
+
10
+
11
+
12
+ var _chunkESMAW4NKcjs = require('./chunk-ESMAW4NK.cjs');
13
+
14
+
15
+
16
+
17
+
18
+
19
+
20
+
21
+
22
+
23
+
24
+
25
+
26
+
27
+ var _chunk5R3ISX4Acjs = require('./chunk-5R3ISX4A.cjs');
28
+
29
+
30
+
31
+
32
+ var _chunk5M4QG3ZCcjs = require('./chunk-5M4QG3ZC.cjs');
33
+
34
+
35
+ var _chunkEH5KXQXYcjs = require('./chunk-EH5KXQXY.cjs');
36
+
37
+
38
+
39
+
40
+
41
+
42
+
43
+
44
+ var _chunkHOIDJEVIcjs = require('./chunk-HOIDJEVI.cjs');
45
+
46
+
47
+
48
+
49
+
50
+
51
+
52
+
53
+
54
+
55
+
56
+
57
+
58
+ var _chunkBTBHHBVRcjs = require('./chunk-BTBHHBVR.cjs');
59
+
60
+ // src/extensions/math/rendered-math.ts
61
+ function attempt(renderMath, latex, displayMode) {
62
+ try {
63
+ return renderMath(latex, { displayMode });
64
+ } catch (e) {
65
+ return void 0;
66
+ }
67
+ }
68
+ function renderedMath(renderMath, latex, displayMode) {
69
+ if (renderMath === void 0) return null;
70
+ const html = attempt(renderMath, latex, displayMode);
71
+ if (typeof html === "string" && html.trim() !== "") return html;
72
+ _chunkEH5KXQXYcjs.devWarn.call(void 0, "renderMath threw or returned no HTML, so the equation shows its LaTeX source instead.");
73
+ return null;
74
+ }
75
+
76
+ // src/extensions/math/InlineMath.ts
77
+ function inlineMathRenderer({ labels, renderMath }) {
78
+ return (node, doc) => {
79
+ const element = doc.createElement("span");
80
+ const latex = _nullishCoalesce(node.attrs.latex, () => ( ""));
81
+ const html = latex === "" ? null : renderedMath(renderMath, latex, false);
82
+ element.className = "quoin-math-inline";
83
+ if (html !== null) element.innerHTML = html;
84
+ else {
85
+ element.classList.add(latex === "" ? "quoin-math-empty" : "quoin-math-source");
86
+ element.textContent = latex === "" ? labels.emptyEquation : latex;
87
+ }
88
+ return element;
89
+ };
90
+ }
91
+
92
+ // src/extensions/math/MathBlock.tsx
93
+ var _react = require('react');
94
+
95
+ // src/extensions/math/math-target.ts
96
+
97
+ var atomTarget = ({ block, region, offset, node }) => ({
98
+ kind: "atom",
99
+ block,
100
+ region,
101
+ offset,
102
+ latex: _nullishCoalesce(node.attrs.latex, () => ( ""))
103
+ });
104
+ var stores = /* @__PURE__ */ new WeakMap();
105
+ function storeOf(controller) {
106
+ let store = stores.get(controller);
107
+ if (store === void 0) {
108
+ store = { target: null, listeners: /* @__PURE__ */ new Set() };
109
+ stores.set(controller, store);
110
+ }
111
+ return store;
112
+ }
113
+ var sameTarget = (a, b) => JSON.stringify(a) === JSON.stringify(b);
114
+ function openMath(controller, target) {
115
+ const store = storeOf(controller);
116
+ if (sameTarget(store.target, target)) return;
117
+ store.target = target;
118
+ for (const listener of [...store.listeners]) listener();
119
+ }
120
+ function useMathTarget(controller) {
121
+ const subscribe = _react.useCallback.call(void 0,
122
+ (notify) => {
123
+ const { listeners } = storeOf(controller);
124
+ listeners.add(notify);
125
+ return () => void listeners.delete(notify);
126
+ },
127
+ [controller]
128
+ );
129
+ const read = _react.useCallback.call(void 0, () => storeOf(controller).target, [controller]);
130
+ return _react.useSyncExternalStore.call(void 0, subscribe, read, read);
131
+ }
132
+
133
+ // src/extensions/math/MathOutput.tsx
134
+
135
+ var _jsxruntime = require('react/jsx-runtime');
136
+ function MathOutput({ feature, latex, displayMode }) {
137
+ const { labels, renderMath } = feature;
138
+ const html = _react.useMemo.call(void 0,
139
+ () => latex === "" ? null : renderedMath(renderMath, latex, displayMode),
140
+ [renderMath, latex, displayMode]
141
+ );
142
+ if (latex === "") return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "quoin-math-empty", children: labels.emptyEquation });
143
+ if (html === null) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "pre", { className: "quoin-math-source", children: latex });
144
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "quoin-math-rendered", dangerouslySetInnerHTML: { __html: html } });
145
+ }
146
+
147
+ // src/extensions/math/MathBlock.tsx
148
+
149
+ function MathBlock({ block, controller, feature }) {
150
+ const readOnly = _chunk5M4QG3ZCcjs.useReadOnly.call(void 0, controller);
151
+ const root = _react.useRef.call(void 0, null);
152
+ const blockId = block.id;
153
+ const latex = _chunkBTBHHBVRcjs.str.call(void 0, block.attrs.latex);
154
+ const keys = _react.useMemo.call(void 0,
155
+ () => ({ enter: () => openMath(controller, { kind: "block", block: blockId, latex }) }),
156
+ [controller, blockId, latex]
157
+ );
158
+ _chunk5R3ISX4Acjs.useNodeKeys.call(void 0, controller, blockId, !readOnly, true, root, keys);
159
+ const open = () => {
160
+ _chunk5R3ISX4Acjs.selectNode.call(void 0, controller, blockId);
161
+ keys.enter();
162
+ };
163
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
164
+ "div",
165
+ {
166
+ ref: root,
167
+ role: "group",
168
+ "aria-label": feature.labels.equation,
169
+ contentEditable: false,
170
+ className: "quoin-math",
171
+ "data-editable": readOnly ? void 0 : "",
172
+ onClick: readOnly ? void 0 : open,
173
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MathOutput, { feature, latex, displayMode: true })
174
+ }
175
+ );
176
+ }
177
+
178
+ // src/extensions/math/MathEditorOverlay.tsx
179
+
180
+
181
+ // src/extensions/math/math-feature.ts
182
+ var MATH_ATOMS = ["math"];
183
+
184
+ // src/extensions/math/MathEditorPopover.tsx
185
+
186
+
187
+ var withMod = (event, isMac) => isMac ? event.metaKey && !event.ctrlKey : event.ctrlKey && !event.metaKey;
188
+ function MathEditorPopover(props) {
189
+ const { controller, feature, anchor, side, latex, displayMode, onStore, onClose, onReturn } = props;
190
+ const { labels } = feature;
191
+ const [draft, setDraft] = _react.useState.call(void 0, latex);
192
+ const fieldId = _react.useId.call(void 0, );
193
+ const closed = _react.useRef.call(void 0, false);
194
+ const field = _react.useRef.call(void 0, null);
195
+ const saveButton = _react.useRef.call(void 0, null);
196
+ const finish = (store, refocus = false) => {
197
+ if (closed.current) return false;
198
+ closed.current = true;
199
+ if (store && draft !== latex) onStore(draft, refocus);
200
+ return true;
201
+ };
202
+ const latestFinish = _react.useRef.call(void 0, finish);
203
+ latestFinish.current = finish;
204
+ _react.useEffect.call(void 0, () => {
205
+ closed.current = false;
206
+ return () => void latestFinish.current(true);
207
+ }, []);
208
+ const close = (store, refocus = true) => {
209
+ if (!refocus) controller.readSelectionFromDom();
210
+ if (!finish(store, refocus)) return;
211
+ onClose();
212
+ if (refocus) onReturn();
213
+ };
214
+ const content = _react.useRef.call(void 0, null);
215
+ const ownerDocument = _react.useCallback.call(void 0, () => _nullishCoalesce(_optionalChain([controller, 'access', _ => _.root, 'optionalAccess', _2 => _2.ownerDocument]), () => ( document)), [controller]);
216
+ _chunk5R3ISX4Acjs.useOutsidePress.call(void 0, content, ownerDocument, () => close(true, false));
217
+ const save = (event) => {
218
+ event.preventDefault();
219
+ close(true);
220
+ };
221
+ const onKeyDown = (event) => {
222
+ if (_chunk5M4QG3ZCcjs.isComposingKey.call(void 0, controller, event.nativeEvent) || event.altKey) return;
223
+ const fromField = event.target === field.current;
224
+ if (event.key === "Enter" && fromField && !event.shiftKey) {
225
+ const mod = withMod(event, controller.isMac);
226
+ if (displayMode ? !mod : event.ctrlKey || event.metaKey) return;
227
+ event.preventDefault();
228
+ close(true);
229
+ } else if (event.key === "Tab" && !event.ctrlKey && !event.metaKey) {
230
+ event.preventDefault();
231
+ event.stopPropagation();
232
+ if (event.shiftKey === fromField) close(true);
233
+ else _optionalChain([(fromField ? saveButton : field), 'access', _3 => _3.current, 'optionalAccess', _4 => _4.focus, 'call', _5 => _5()]);
234
+ }
235
+ };
236
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
237
+ _chunk5R3ISX4Acjs.Popover,
238
+ {
239
+ open: true,
240
+ modal: false,
241
+ onOpenChange: (open) => {
242
+ if (!open) close(true, false);
243
+ },
244
+ children: [
245
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5R3ISX4Acjs.PopoverAnchor, { virtualRef: anchor }),
246
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
247
+ _chunk5R3ISX4Acjs.PopoverContent,
248
+ {
249
+ ref: content,
250
+ "aria-label": labels.editEquation,
251
+ side,
252
+ align: "start",
253
+ className: "w-96 max-w-[calc(100vw-2rem)] p-3",
254
+ onOpenAutoFocus: (event) => {
255
+ event.preventDefault();
256
+ const end = _nullishCoalesce(_optionalChain([field, 'access', _6 => _6.current, 'optionalAccess', _7 => _7.value, 'access', _8 => _8.length]), () => ( 0));
257
+ _optionalChain([field, 'access', _9 => _9.current, 'optionalAccess', _10 => _10.focus, 'call', _11 => _11()]);
258
+ _optionalChain([field, 'access', _12 => _12.current, 'optionalAccess', _13 => _13.setSelectionRange, 'call', _14 => _14(end, end)]);
259
+ },
260
+ onCloseAutoFocus: _chunk5R3ISX4Acjs.preventDefault,
261
+ onEscapeKeyDown: (event) => {
262
+ event.preventDefault();
263
+ if (!_chunk5M4QG3ZCcjs.isComposingKey.call(void 0, controller, event)) close(false);
264
+ },
265
+ ..._chunk5R3ISX4Acjs.bubblePart.call(void 0, controller),
266
+ children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "form", { noValidate: true, className: "quoin-math-editor", onSubmit: save, onKeyDown, children: [
267
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "label", { htmlFor: fieldId, className: "text-sm font-medium", children: labels.latex }),
268
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
269
+ "textarea",
270
+ {
271
+ ref: field,
272
+ id: fieldId,
273
+ dir: "ltr",
274
+ rows: displayMode ? 4 : 2,
275
+ spellCheck: false,
276
+ autoCapitalize: "off",
277
+ autoComplete: "off",
278
+ autoCorrect: "off",
279
+ className: "quoin-math-field",
280
+ value: draft,
281
+ onChange: (event) => setDraft(event.target.value)
282
+ }
283
+ ),
284
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { role: "group", "aria-label": labels.preview, className: "quoin-math-preview", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MathOutput, { feature, latex: draft, displayMode }) }),
285
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5R3ISX4Acjs.Button, { ref: saveButton, type: "submit", size: "sm", children: labels.save })
286
+ ] })
287
+ }
288
+ )
289
+ ]
290
+ }
291
+ );
292
+ }
293
+
294
+ // src/extensions/math/store-latex.ts
295
+ function write(controller, tr, refocus) {
296
+ if (controller.readOnly || controller.root === null) return;
297
+ if (refocus) controller.dispatch(tr);
298
+ else controller.editor.dispatch(tr);
299
+ }
300
+ function targetAtom(state, target) {
301
+ const node = _chunkESMAW4NKcjs.atomAt.call(void 0, state, target, MATH_ATOMS);
302
+ return node !== null && (_nullishCoalesce(node.attrs.latex, () => ( ""))) === target.latex ? node : null;
303
+ }
304
+ function targetBlockThere(state, target) {
305
+ const block = _chunkBTBHHBVRcjs.blockById.call(void 0, state.doc, target.block);
306
+ return _optionalChain([block, 'optionalAccess', _15 => _15.type]) === "MATH" && _chunkBTBHHBVRcjs.str.call(void 0, block.attrs.latex) === target.latex;
307
+ }
308
+ function targetLineThere(state, target) {
309
+ const inline = _optionalChain([_chunkBTBHHBVRcjs.blockById.call(void 0, state.doc, target.block), 'optionalAccess', _16 => _16.regions, 'access', _17 => _17[target.region]]);
310
+ return inline !== void 0 && _chunkBTBHHBVRcjs.inlineText.call(void 0, inline) === target.text;
311
+ }
312
+ function storeBlockLatex(controller, target, latex, refocus) {
313
+ const { state } = controller.editor;
314
+ if (!targetBlockThere(state, target)) return;
315
+ write(controller, new (0, _chunkHOIDJEVIcjs.Transaction)(state).step(_chunkHOIDJEVIcjs.setAttrsStep.call(void 0, target.block, { latex })), refocus);
316
+ }
317
+ function storeAtomLatex(controller, target, latex, refocus) {
318
+ const { state } = controller.editor;
319
+ const node = targetAtom(state, target);
320
+ if (node === null) return;
321
+ const { block, region, offset } = target;
322
+ const formula = latex === "" ? [] : [_chunkBTBHHBVRcjs.atom.call(void 0, "math", { ...node.attrs, latex }, node.marks)];
323
+ const tr = new (0, _chunkHOIDJEVIcjs.Transaction)(state).step(_chunkHOIDJEVIcjs.replaceInlineStep.call(void 0, block, region, offset, offset + 1, formula));
324
+ write(controller, tr, refocus);
325
+ }
326
+ function insertFormula(controller, target, latex, refocus) {
327
+ const { state } = controller.editor;
328
+ if (latex === "" || !targetLineThere(state, target)) return;
329
+ const { block, region, offset } = target;
330
+ const formula = _chunkBTBHHBVRcjs.atom.call(void 0, "math", { latex }, _chunkHOIDJEVIcjs.caretMarks.call(void 0, state.doc, state.schema, state.storedMarks, target));
331
+ write(controller, new (0, _chunkHOIDJEVIcjs.Transaction)(state).step(_chunkHOIDJEVIcjs.replaceInlineStep.call(void 0, block, region, offset, offset, [formula])), refocus);
332
+ }
333
+
334
+ // src/extensions/math/use-math-atom-opening.ts
335
+
336
+ function useMathAtomOpening(controller, editable) {
337
+ _react.useEffect.call(void 0, () => {
338
+ const root = controller.root;
339
+ if (!editable || root === null) return;
340
+ const intercept = (event) => {
341
+ if (!_chunkESMAW4NKcjs.plainEnter.call(void 0, event) || _chunk5M4QG3ZCcjs.isComposingKey.call(void 0, controller, event)) return false;
342
+ const place = _chunkESMAW4NKcjs.selectedAtom.call(void 0, controller.editor.state, MATH_ATOMS);
343
+ if (place === null) return false;
344
+ event.preventDefault();
345
+ openMath(controller, atomTarget(place));
346
+ return true;
347
+ };
348
+ const onClick = (event) => {
349
+ const place = event.shiftKey ? null : _chunkESMAW4NKcjs.atomAtTarget.call(void 0, controller, event.target, MATH_ATOMS);
350
+ if (place !== null) openMath(controller, atomTarget(place));
351
+ };
352
+ controller.keyInterceptors.add(intercept);
353
+ root.addEventListener("click", onClick);
354
+ return () => {
355
+ controller.keyInterceptors.delete(intercept);
356
+ root.removeEventListener("click", onClick);
357
+ };
358
+ }, [controller, editable]);
359
+ }
360
+
361
+ // src/extensions/math/MathEditorOverlay.tsx
362
+
363
+ function isThere(state, target) {
364
+ if (target.kind === "block") return targetBlockThere(state, target);
365
+ return target.kind === "atom" ? targetAtom(state, target) !== null : targetLineThere(state, target);
366
+ }
367
+ function MathEditorOverlay({ controller, feature }) {
368
+ const readOnly = _chunk5M4QG3ZCcjs.useReadOnly.call(void 0, controller);
369
+ const target = useMathTarget(controller);
370
+ const there = _chunk5M4QG3ZCcjs.useEditorState.call(void 0,
371
+ controller,
372
+ _react.useCallback.call(void 0, (state) => target !== null && isThere(state, target), [target])
373
+ );
374
+ useMathAtomOpening(controller, !readOnly);
375
+ _chunkESMAW4NKcjs.useSelectionOutOfAtoms.call(void 0, controller, MATH_ATOMS, !readOnly);
376
+ const shown = target !== null && there && !readOnly;
377
+ _react.useEffect.call(void 0, () => {
378
+ if (target !== null && !shown) openMath(controller, null);
379
+ }, [controller, target, shown]);
380
+ if (!shown) return null;
381
+ return target.kind === "block" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, BlockMathEditor, { controller, feature, target }, JSON.stringify(target)) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InlineMathEditor, { controller, feature, target }, JSON.stringify(target));
382
+ }
383
+ function BlockMathEditor({ controller, feature, target }) {
384
+ const anchor = _chunk5R3ISX4Acjs.usePartAnchor.call(void 0, controller, target.block, ".quoin-math");
385
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
386
+ MathEditorPopover,
387
+ {
388
+ controller,
389
+ feature,
390
+ anchor,
391
+ side: "bottom",
392
+ latex: target.latex,
393
+ displayMode: true,
394
+ onStore: (next, refocus) => storeBlockLatex(controller, target, next, refocus),
395
+ onClose: () => openMath(controller, null),
396
+ onReturn: () => _chunk5R3ISX4Acjs.focusNode.call(void 0, controller, target.block)
397
+ }
398
+ );
399
+ }
400
+ function InlineMathEditor({ controller, feature, target }) {
401
+ const { block, region, offset } = target;
402
+ const editing = target.kind === "atom";
403
+ const range = _react.useMemo.call(void 0,
404
+ () => ({ block, region, from: offset, to: editing ? offset + 1 : offset }),
405
+ [block, region, offset, editing]
406
+ );
407
+ const { anchor, side } = _chunk5R3ISX4Acjs.useRangeAnchor.call(void 0, controller, range);
408
+ const kept = _react.useRef.call(void 0, editing);
409
+ const onStore = (latex, refocus) => {
410
+ kept.current = latex !== "";
411
+ if (target.kind === "atom") storeAtomLatex(controller, target, latex, refocus);
412
+ else insertFormula(controller, target, latex, refocus);
413
+ };
414
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
415
+ MathEditorPopover,
416
+ {
417
+ controller,
418
+ feature,
419
+ anchor,
420
+ side,
421
+ latex: editing ? target.latex : "",
422
+ displayMode: false,
423
+ onStore,
424
+ onClose: () => openMath(controller, null),
425
+ onReturn: () => controller.focus({ block, region, offset: kept.current ? offset + 1 : offset })
426
+ }
427
+ );
428
+ }
429
+
430
+ // src/extensions/math/math-labels.ts
431
+ var englishMathLabels = {
432
+ equation: "Equation",
433
+ emptyEquation: "Empty equation",
434
+ editEquation: "Edit equation",
435
+ latex: "LaTeX",
436
+ preview: "Preview",
437
+ save: "Save",
438
+ blockEquation: "Block equation",
439
+ blockEquationDescription: "A formula on a line of its own",
440
+ inlineEquation: "Inline equation",
441
+ inlineEquationDescription: "A formula in the line of text"
442
+ };
443
+ function resolveMathLabels(overrides) {
444
+ const given = Object.entries(_nullishCoalesce(overrides, () => ( {}))).filter(([, value]) => value !== void 0);
445
+ return given.length === 0 ? englishMathLabels : { ...englishMathLabels, ...Object.fromEntries(given) };
446
+ }
447
+
448
+ // src/extensions/math/math-rules.ts
449
+ var OPAQUE = "`";
450
+ function scannedLine(inline) {
451
+ let src = "";
452
+ const offsets = [];
453
+ const push = (char, offset) => {
454
+ src += char;
455
+ offsets.push(offset);
456
+ };
457
+ let marks = [];
458
+ let start = 0;
459
+ for (const node of inline) {
460
+ if (!_chunkBTBHHBVRcjs.sameMarkSet.call(void 0, marks, node.marks)) push(OPAQUE, null);
461
+ marks = node.marks;
462
+ if (node.kind === "atom") push(OPAQUE, null);
463
+ else for (let i = 0; i < node.text.length; i++) push(_chunkBTBHHBVRcjs.hasMark.call(void 0, marks, "code") ? OPAQUE : node.text[i], start + i);
464
+ start += node.kind === "atom" ? 1 : node.text.length;
465
+ }
466
+ if (marks.length > 0) push(OPAQUE, null);
467
+ return { src, offsets };
468
+ }
469
+ function mathOpening(src, close) {
470
+ let pos = 0;
471
+ for (; ; ) {
472
+ const at = src.indexOf("$", pos);
473
+ if (at < 0 || at >= close) return -1;
474
+ if (src[at + 1] === "$") {
475
+ pos = _chunkBTBHHBVRcjs.dollarRunEnd.call(void 0, src, at);
476
+ continue;
477
+ }
478
+ const end = _chunkEYFCOV3Tcjs.escaped.call(void 0, src, at) || !_chunkBTBHHBVRcjs.opensMath.call(void 0, src, at) ? -1 : _chunkBTBHHBVRcjs.findMathClose.call(void 0, src, at + 2);
479
+ if (end === close) return at;
480
+ pos = end < 0 ? at + 1 : end + 1;
481
+ }
482
+ }
483
+ var inlineMathRule = {
484
+ name: "inline-math",
485
+ match: /\$$/,
486
+ handler(state, _match, range) {
487
+ const { block, region, to } = range;
488
+ const inline = _chunkHOIDJEVIcjs.regionInline.call(void 0, state, range);
489
+ const { src, offsets } = scannedLine(inline);
490
+ const close = offsets.indexOf(to - 1);
491
+ const open = close < 0 ? -1 : mathOpening(src, close);
492
+ if (open < 0 || offsets.slice(open, close + 1).includes(null)) return null;
493
+ const from = offsets[open];
494
+ const formula = _chunkBTBHHBVRcjs.atom.call(void 0, "math", { latex: _chunkBTBHHBVRcjs.mathLatex.call(void 0, src, open, close) }, _chunkBTBHHBVRcjs.sliceInline.call(void 0, inline, from, from + 1)[0].marks);
495
+ return new (0, _chunkHOIDJEVIcjs.Transaction)(state).step(_chunkHOIDJEVIcjs.replaceInlineStep.call(void 0, block, region, from, to, [formula])).setSelection(_chunkHOIDJEVIcjs.textSelection.call(void 0, { block, region, offset: from + 1 }));
496
+ }
497
+ };
498
+
499
+ // src/extensions/math/math-slash-items.ts
500
+ var _lucidereact = require('lucide-react');
501
+ var KEYWORDS = ["math", "latex", "formula", "katex"];
502
+ function caretInCode({ doc, selection }) {
503
+ if (_optionalChain([selection, 'optionalAccess', _18 => _18.kind]) !== "text") return false;
504
+ const { block, region, offset } = selection.head;
505
+ const inline = _nullishCoalesce(_optionalChain([_chunkBTBHHBVRcjs.blockById.call(void 0, doc, block), 'optionalAccess', _19 => _19.regions, 'access', _20 => _20[region]]), () => ( []));
506
+ return _chunkBTBHHBVRcjs.hasMark.call(void 0, _chunkBTBHHBVRcjs.marksAt.call(void 0, inline, offset, () => true), "code");
507
+ }
508
+ var mathSlashItems = (labels) => [
509
+ {
510
+ id: "block-equation",
511
+ title: labels.blockEquation,
512
+ description: labels.blockEquationDescription,
513
+ group: "advanced",
514
+ icon: _lucidereact.Sigma,
515
+ keywords: [...KEYWORDS, "$$"],
516
+ command: () => _chunk5R3ISX4Acjs.insertBlockToWrite.call(void 0, { type: "MATH", attrs: { latex: "" } }, true)
517
+ },
518
+ {
519
+ id: "inline-equation",
520
+ title: labels.inlineEquation,
521
+ description: labels.inlineEquationDescription,
522
+ group: "advanced",
523
+ icon: _lucidereact.Radical,
524
+ keywords: [...KEYWORDS, "$"],
525
+ available: (state) => !caretInCode(state),
526
+ run({ controller, range }) {
527
+ const inline = _nullishCoalesce(_optionalChain([_chunkBTBHHBVRcjs.blockById.call(void 0, controller.editor.state.doc, range.block), 'optionalAccess', _21 => _21.regions, 'access', _22 => _22[range.region]]), () => ( []));
528
+ const { block, region, from } = range;
529
+ openMath(controller, { kind: "insert", block, region, offset: from, text: _chunkBTBHHBVRcjs.inlineText.call(void 0, inline) });
530
+ }
531
+ }
532
+ ];
533
+
534
+ // src/extensions/math/math-extension.tsx
535
+
536
+ var ABOVE_CORE_KEYS = 200;
537
+ function mathExtension(options = {}) {
538
+ const feature = { labels: resolveMathLabels(options.labels), renderMath: options.renderMath };
539
+ const MathRenderer = (props) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MathBlock, { ...props, feature });
540
+ const EditorOverlay = ({ controller }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MathEditorOverlay, { controller, feature });
541
+ const ui = {
542
+ slashItems: mathSlashItems(feature.labels),
543
+ renderers: { MATH: MathRenderer },
544
+ blockNames: { MATH: feature.labels.equation },
545
+ render: { atoms: { math: inlineMathRenderer(feature) } },
546
+ overlays: [EditorOverlay]
547
+ };
548
+ return _chunkHOIDJEVIcjs.defineExtension.call(void 0, {
549
+ name: "math",
550
+ priority: ABOVE_CORE_KEYS,
551
+ inputRules: [inlineMathRule],
552
+ keymap: _chunkESMAW4NKcjs.atomKeymap.call(void 0, MATH_ATOMS),
553
+ decorations: _chunkESMAW4NKcjs.selectedAtomDecorations.call(void 0, MATH_ATOMS),
554
+ ui
555
+ });
556
+ }
557
+
558
+
559
+
560
+
561
+ exports.englishMathLabels = englishMathLabels; exports.mathExtension = mathExtension;
562
+ //# sourceMappingURL=chunk-UDAVVEFC.cjs.map