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,320 @@
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
+
4
+
5
+
6
+
7
+
8
+
9
+ var _chunkBTBHHBVRcjs = require('./chunk-BTBHHBVR.cjs');
10
+
11
+ // src/engine/diff/myers.ts
12
+ var same = (x, y) => x === y;
13
+ function traceEdits(a, b, equal) {
14
+ const n = a.length;
15
+ const m = b.length;
16
+ const offset = n + m + 1;
17
+ const furthest = new Int32Array(2 * offset + 1);
18
+ const trace = [];
19
+ for (let d = 0; ; d++) {
20
+ trace.push(furthest.slice(offset - d - 1, offset + d + 2));
21
+ for (let k = -d; k <= d; k += 2) {
22
+ const down = k === -d || k !== d && furthest[offset + k - 1] < furthest[offset + k + 1];
23
+ let x = down ? furthest[offset + k + 1] : furthest[offset + k - 1] + 1;
24
+ let y = x - k;
25
+ while (x < n && y < m && equal(a[x], b[y])) {
26
+ x++;
27
+ y++;
28
+ }
29
+ furthest[offset + k] = x;
30
+ if (x >= n && y >= m) return trace;
31
+ }
32
+ }
33
+ }
34
+ function backtrack(trace, a, b) {
35
+ const edits = [];
36
+ let x = a.length;
37
+ let y = b.length;
38
+ for (let d = trace.length - 1; d >= 0; d--) {
39
+ const at = (k2) => trace[d][k2 + d + 1];
40
+ const k = x - y;
41
+ const down = k === -d || k !== d && at(k - 1) < at(k + 1);
42
+ const previousK = down ? k + 1 : k - 1;
43
+ const previousX = at(previousK);
44
+ const previousY = previousX - previousK;
45
+ while (x > previousX && y > previousY) {
46
+ edits.push({ op: "equal", item: a[x - 1] });
47
+ x--;
48
+ y--;
49
+ }
50
+ if (d > 0) edits.push(down ? { op: "insert", item: b[previousY] } : { op: "delete", item: a[previousX] });
51
+ x = previousX;
52
+ y = previousY;
53
+ }
54
+ return edits.reverse();
55
+ }
56
+ function mergeEdits(edits) {
57
+ const ops = [];
58
+ let deleted = [];
59
+ let inserted = [];
60
+ const flush = () => {
61
+ if (deleted.length > 0) ops.push({ op: "delete", items: deleted });
62
+ if (inserted.length > 0) ops.push({ op: "insert", items: inserted });
63
+ deleted = [];
64
+ inserted = [];
65
+ };
66
+ for (const { op, item } of edits) {
67
+ if (op === "delete") {
68
+ deleted.push(item);
69
+ } else if (op === "insert") {
70
+ inserted.push(item);
71
+ } else {
72
+ flush();
73
+ const last = ops[ops.length - 1];
74
+ if (_optionalChain([last, 'optionalAccess', _ => _.op]) === "equal") last.items.push(item);
75
+ else ops.push({ op: "equal", items: [item] });
76
+ }
77
+ }
78
+ flush();
79
+ return ops;
80
+ }
81
+ function diffSequences(a, b, equal = same) {
82
+ return mergeEdits(backtrack(traceEdits(a, b, equal), a, b));
83
+ }
84
+
85
+ // src/engine/diff/tokens.ts
86
+ var TOKEN = /\s+|[\p{L}\p{N}_][\p{L}\p{N}\p{M}_]*|.(?:[\p{M}\p{Emoji_Modifier}]|\u{200D}.)*/gsu;
87
+ function tokenize(inline) {
88
+ return inline.flatMap((node) => {
89
+ if (node.kind === "atom") return [node];
90
+ return (_nullishCoalesce(node.text.match(TOKEN), () => ( []))).map((part) => ({ kind: "text", text: part, marks: node.marks }));
91
+ });
92
+ }
93
+
94
+ // src/engine/diff/diff-inline.ts
95
+ function diffInline(a, b) {
96
+ return diffSequences(tokenize(a), tokenize(b), _chunkBTBHHBVRcjs.equalNode).map(({ op, items }) => ({
97
+ op,
98
+ inline: _chunkBTBHHBVRcjs.normalizeInline.call(void 0, items)
99
+ }));
100
+ }
101
+
102
+ // src/engine/model/same-value.ts
103
+ function isRecord(value) {
104
+ return typeof value === "object" && value !== null;
105
+ }
106
+ function sameValue(a, b) {
107
+ if (a === b) return true;
108
+ if (!isRecord(a) || !isRecord(b) || Array.isArray(a) !== Array.isArray(b)) return false;
109
+ if (Array.isArray(a) && Array.isArray(b)) return _chunkBTBHHBVRcjs.sameItems.call(void 0, a, b, sameValue);
110
+ const keys = /* @__PURE__ */ new Set([...Object.keys(a), ...Object.keys(b)]);
111
+ return [...keys].every((key) => sameValue(a[key], b[key]));
112
+ }
113
+
114
+ // src/engine/diff/block-change.ts
115
+ var indentOf = (block) => _nullishCoalesce(block.indent, () => ( 0));
116
+ function sameContent(a, b) {
117
+ return a.type === b.type && indentOf(a) === indentOf(b) && sameValue(a.data, b.data);
118
+ }
119
+ function changeBetween(before, after, schema, ctx) {
120
+ const left = _chunkBTBHHBVRcjs.specFor.call(void 0, schema, before.type).fromData(before.data, ctx);
121
+ const right = _chunkBTBHHBVRcjs.specFor.call(void 0, schema, after.type).fromData(after.data, ctx);
122
+ const names = [.../* @__PURE__ */ new Set([...Object.keys(left.regions), ...Object.keys(right.regions)])].sort(_chunkBTBHHBVRcjs.compareRegionNames);
123
+ return {
124
+ op: "change",
125
+ before,
126
+ after,
127
+ regions: Object.fromEntries(
128
+ names.map((name) => [name, diffInline(_nullishCoalesce(left.regions[name], () => ( [])), _nullishCoalesce(right.regions[name], () => ( [])))])
129
+ ),
130
+ attrsChanged: before.type !== after.type || indentOf(before) !== indentOf(after) || !sameValue(left.attrs, right.attrs)
131
+ };
132
+ }
133
+
134
+ // src/engine/diff/diff-steps.ts
135
+ var idOf = (block) => block.id;
136
+ function stepsOf(ops, a, b) {
137
+ const steps = [];
138
+ let i = 0;
139
+ let j = 0;
140
+ for (const { op, items } of ops) {
141
+ for (let n = 0; n < items.length; n++) {
142
+ if (op === "equal") steps.push({ kind: "pair", before: a[i++], after: b[j++] });
143
+ else if (op === "delete") steps.push({ kind: "delete", block: a[i++] });
144
+ else steps.push({ kind: "insert", block: b[j++] });
145
+ }
146
+ }
147
+ return steps;
148
+ }
149
+ function alignSteps(a, b, byId) {
150
+ const ops = byId ? diffSequences(a.map(idOf), b.map(idOf)) : diffSequences(a, b, sameContent);
151
+ return stepsOf(ops, a, b);
152
+ }
153
+ function movedIds(steps) {
154
+ const deleted = /* @__PURE__ */ new Set();
155
+ for (const step of steps) if (step.kind === "delete") deleted.add(step.block.id);
156
+ const moved = /* @__PURE__ */ new Set();
157
+ for (const step of steps) if (step.kind === "insert" && deleted.has(step.block.id)) moved.add(step.block.id);
158
+ return moved;
159
+ }
160
+
161
+ // src/engine/diff/block-similarity.ts
162
+ var WORD = /[\p{L}\p{N}_]+/gu;
163
+ function collectWords(value, words) {
164
+ if (typeof value === "string") {
165
+ for (const [word] of value.matchAll(WORD)) words.set(word, (_nullishCoalesce(words.get(word), () => ( 0))) + 1);
166
+ } else if (Array.isArray(value)) {
167
+ for (const item of value) collectWords(item, words);
168
+ } else if (typeof value === "object" && value !== null) {
169
+ for (const item of Object.values(value)) collectWords(item, words);
170
+ }
171
+ }
172
+ function profileOf(block) {
173
+ const words = /* @__PURE__ */ new Map();
174
+ collectWords(block.data, words);
175
+ let total = 0;
176
+ for (const count of words.values()) total += count;
177
+ return { block, words, total };
178
+ }
179
+ function similarity(a, b) {
180
+ if (a.block.type !== b.block.type) return 0;
181
+ if (a.total === 0 && b.total === 0) return sameValue(a.block.data, b.block.data) ? 1 : 0;
182
+ let shared = 0;
183
+ for (const [word, count] of a.words) shared += Math.min(count, _nullishCoalesce(b.words.get(word), () => ( 0)));
184
+ return 2 * shared / (a.total + b.total);
185
+ }
186
+
187
+ // src/engine/diff/pair-leftovers.ts
188
+ var MIN_SIMILARITY = 0.5;
189
+ var MAX_CANDIDATES = 1e4;
190
+ function bestMatches(left, right) {
191
+ const rows = left.length;
192
+ const cols = right.length;
193
+ if (rows === 0 || cols === 0 || rows * cols > MAX_CANDIDATES) return [];
194
+ const width = cols + 1;
195
+ const gain = new Float64Array(rows * cols);
196
+ const total = new Float64Array((rows + 1) * width);
197
+ for (let r = 1; r <= rows; r++) {
198
+ for (let c = 1; c <= cols; c++) {
199
+ const s = similarity(left[r - 1], right[c - 1]);
200
+ const g = s >= MIN_SIMILARITY ? s : 0;
201
+ gain[(r - 1) * cols + c - 1] = g;
202
+ const diagonal = g > 0 ? total[(r - 1) * width + c - 1] + g : 0;
203
+ total[r * width + c] = Math.max(total[(r - 1) * width + c], total[r * width + c - 1], diagonal);
204
+ }
205
+ }
206
+ const matches = [];
207
+ for (let r = rows, c = cols; r > 0 && c > 0; ) {
208
+ const g = gain[(r - 1) * cols + c - 1];
209
+ if (g > 0 && total[r * width + c] === total[(r - 1) * width + c - 1] + g) {
210
+ matches.push([r - 1, c - 1]);
211
+ r--;
212
+ c--;
213
+ } else if (total[r * width + c] === total[(r - 1) * width + c]) {
214
+ r--;
215
+ } else {
216
+ c--;
217
+ }
218
+ }
219
+ return matches.reverse();
220
+ }
221
+ function pairRun(run) {
222
+ const deletes = run.filter((step) => step.kind === "delete");
223
+ const inserts = run.filter((step) => step.kind === "insert");
224
+ const matches = bestMatches(
225
+ deletes.map((step) => profileOf(step.block)),
226
+ inserts.map((step) => profileOf(step.block))
227
+ );
228
+ if (matches.length === 0) return [...run];
229
+ const paired = [];
230
+ let d = 0;
231
+ let i = 0;
232
+ for (const [deleted, inserted] of matches) {
233
+ while (d < deleted) paired.push(deletes[d++]);
234
+ while (i < inserted) paired.push(inserts[i++]);
235
+ paired.push({ kind: "pair", before: deletes[deleted].block, after: inserts[inserted].block });
236
+ d = deleted + 1;
237
+ i = inserted + 1;
238
+ }
239
+ return [...paired, ...deletes.slice(d), ...inserts.slice(i)];
240
+ }
241
+ function pairLeftovers(steps) {
242
+ const result = [];
243
+ let run = [];
244
+ const flush = () => {
245
+ result.push(...pairRun(run));
246
+ run = [];
247
+ };
248
+ for (const step of steps) {
249
+ if (step.kind === "pair") {
250
+ flush();
251
+ result.push(step);
252
+ } else {
253
+ run.push(step);
254
+ }
255
+ }
256
+ flush();
257
+ return result;
258
+ }
259
+
260
+ // src/engine/diff/refine-gaps.ts
261
+ var isAnchor = (step) => step.kind === "pair" && sameContent(step.before, step.after);
262
+ var sameBlocks = (a, b) => a.length === b.length && a.every((block, index) => block === b[index]);
263
+ function refineGap(gap, expand, byId) {
264
+ const before = gap.flatMap((step) => step.kind === "insert" ? [] : [step.kind === "pair" ? step.before : step.block]);
265
+ const after = gap.flatMap((step) => step.kind === "delete" ? [] : [step.kind === "pair" ? step.after : step.block]);
266
+ const left = before.flatMap(expand);
267
+ const right = after.flatMap(expand);
268
+ const unchanged = sameBlocks(before, left) && sameBlocks(after, right);
269
+ return pairLeftovers(unchanged ? gap : alignSteps(left, right, byId));
270
+ }
271
+ function refineSteps(steps, expand, byId) {
272
+ const refined = [];
273
+ for (let start = 0; start < steps.length; ) {
274
+ if (isAnchor(steps[start])) {
275
+ refined.push(steps[start++]);
276
+ continue;
277
+ }
278
+ let end = start;
279
+ while (end < steps.length && !isAnchor(steps[end])) end++;
280
+ refined.push(...refineGap(steps.slice(start, end), expand, byId));
281
+ start = end;
282
+ }
283
+ return refined;
284
+ }
285
+
286
+ // src/engine/diff/diff-blocks.ts
287
+ var idOf2 = (block) => block.id;
288
+ function idsMostlyMatch(a, b) {
289
+ const known = new Set(b.map(idOf2));
290
+ const matching = a.filter((block) => known.has(block.id)).length;
291
+ return matching * 2 >= Math.min(a.length, b.length);
292
+ }
293
+ function diffBlocks(a, b, options = {}) {
294
+ const schema = _nullishCoalesce(options.schema, () => ( _chunkBTBHHBVRcjs.createSchema.call(void 0, )));
295
+ const codec = _chunkBTBHHBVRcjs.createBlockCodec.call(void 0, schema);
296
+ const byId = idsMostlyMatch(a, b);
297
+ const expand = (block) => {
298
+ const pieces = codec.toEngineBlocks(block);
299
+ return pieces.length === 1 ? [block] : pieces.map(codec.toQuoin);
300
+ };
301
+ const steps = refineSteps(alignSteps(a, b, byId), expand, byId);
302
+ const moved = byId ? movedIds(steps) : /* @__PURE__ */ new Set();
303
+ return steps.map((step) => {
304
+ if (step.kind === "pair") {
305
+ return sameContent(step.before, step.after) ? { op: "equal", block: step.after } : changeBetween(step.before, step.after, schema, codec.context);
306
+ }
307
+ const { kind, block } = step;
308
+ return moved.has(block.id) ? { op: kind, block, moved: true } : { op: kind, block };
309
+ });
310
+ }
311
+
312
+
313
+
314
+
315
+
316
+
317
+
318
+
319
+ exports.sameValue = sameValue; exports.diffSequences = diffSequences; exports.diffInline = diffInline; exports.sameContent = sameContent; exports.changeBetween = changeBetween; exports.diffBlocks = diffBlocks;
320
+ //# sourceMappingURL=chunk-XX5FTPJR.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["chunk-XX5FTPJR.cjs","../src/engine/diff/myers.ts","../src/engine/diff/tokens.ts","../src/engine/diff/diff-inline.ts","../src/engine/model/same-value.ts","../src/engine/diff/block-change.ts","../src/engine/diff/diff-steps.ts","../src/engine/diff/block-similarity.ts","../src/engine/diff/pair-leftovers.ts","../src/engine/diff/refine-gaps.ts","../src/engine/diff/diff-blocks.ts"],"names":["k","idOf"],"mappings":"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","file":"/home/runner/work/quoin-editor/quoin-editor/dist/chunk-XX5FTPJR.cjs"}