quoin-editor 1.0.2 → 1.1.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 (224) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/dist/ai.cjs +169 -249
  3. package/dist/ai.cjs.map +1 -1
  4. package/dist/ai.js +38 -121
  5. package/dist/ai.js.map +1 -1
  6. package/dist/catalogue.cjs +29 -43
  7. package/dist/catalogue.cjs.map +1 -1
  8. package/dist/catalogue.js +21 -37
  9. package/dist/catalogue.js.map +1 -1
  10. package/dist/{chunk-DUE3HCZD.js → chunk-2EQ6FKSK.js} +19 -28
  11. package/dist/chunk-2EQ6FKSK.js.map +1 -0
  12. package/dist/{chunk-RJRX34BZ.js → chunk-3BXUGX5F.js} +4 -18
  13. package/dist/chunk-3BXUGX5F.js.map +1 -0
  14. package/dist/chunk-3QRVAI53.cjs +27 -0
  15. package/dist/chunk-3QRVAI53.cjs.map +1 -0
  16. package/dist/{chunk-U3LOLYAU.js → chunk-7FAVFJAS.js} +4 -10
  17. package/dist/chunk-7FAVFJAS.js.map +1 -0
  18. package/dist/{chunk-FDRUAL3Z.cjs → chunk-7NAONESM.cjs} +90 -153
  19. package/dist/chunk-7NAONESM.cjs.map +1 -0
  20. package/dist/{chunk-6V6GGBDK.cjs → chunk-7SVKLWDT.cjs} +24 -31
  21. package/dist/chunk-7SVKLWDT.cjs.map +1 -0
  22. package/dist/{chunk-CW3AFJBR.cjs → chunk-7XQGOCUG.cjs} +1332 -1772
  23. package/dist/chunk-7XQGOCUG.cjs.map +1 -0
  24. package/dist/{chunk-EH5KXQXY.cjs → chunk-A6PGQVTR.cjs} +36 -20
  25. package/dist/chunk-A6PGQVTR.cjs.map +1 -0
  26. package/dist/{chunk-4SLJNZSM.cjs → chunk-AIS37SL2.cjs} +201 -198
  27. package/dist/chunk-AIS37SL2.cjs.map +1 -0
  28. package/dist/{chunk-IQBMAE3F.js → chunk-CKHKCPGL.js} +34 -92
  29. package/dist/chunk-CKHKCPGL.js.map +1 -0
  30. package/dist/{chunk-T43RZTUT.js → chunk-DYWU4SQ2.js} +723 -1246
  31. package/dist/chunk-DYWU4SQ2.js.map +1 -0
  32. package/dist/chunk-EFRQMYZ6.cjs +33 -0
  33. package/dist/chunk-EFRQMYZ6.cjs.map +1 -0
  34. package/dist/{chunk-O4Z2WMFF.js → chunk-HDJ653LM.js} +25 -18
  35. package/dist/chunk-HDJ653LM.js.map +1 -0
  36. package/dist/chunk-HQ43EIYO.cjs +94 -0
  37. package/dist/chunk-HQ43EIYO.cjs.map +1 -0
  38. package/dist/{chunk-6NULZPVC.js → chunk-HTLWPSMU.js} +8 -61
  39. package/dist/chunk-HTLWPSMU.js.map +1 -0
  40. package/dist/{chunk-EPARJI4V.js → chunk-IEP7BPFN.js} +122 -267
  41. package/dist/chunk-IEP7BPFN.js.map +1 -0
  42. package/dist/{chunk-P6KYXFZC.cjs → chunk-IGZRZIAF.cjs} +440 -538
  43. package/dist/chunk-IGZRZIAF.cjs.map +1 -0
  44. package/dist/chunk-JCEFSTVG.cjs +483 -0
  45. package/dist/chunk-JCEFSTVG.cjs.map +1 -0
  46. package/dist/chunk-KXRGY5LK.cjs +612 -0
  47. package/dist/chunk-KXRGY5LK.cjs.map +1 -0
  48. package/dist/{chunk-JHQUHFLX.js → chunk-KZ6ZFCGO.js} +38 -120
  49. package/dist/chunk-KZ6ZFCGO.js.map +1 -0
  50. package/dist/{chunk-ADSJ42DO.js → chunk-L2QA2UTY.js} +17 -69
  51. package/dist/chunk-L2QA2UTY.js.map +1 -0
  52. package/dist/{chunk-OBMBSU2S.js → chunk-L4D23LM2.js} +5 -184
  53. package/dist/chunk-L4D23LM2.js.map +1 -0
  54. package/dist/{chunk-4XFXB37X.js → chunk-L6OW2FL3.js} +7 -90
  55. package/dist/chunk-L6OW2FL3.js.map +1 -0
  56. package/dist/chunk-LE5XMIFJ.cjs +4 -3
  57. package/dist/chunk-LE5XMIFJ.cjs.map +1 -1
  58. package/dist/chunk-MQUCCSWG.js +2 -3
  59. package/dist/chunk-MQUCCSWG.js.map +1 -1
  60. package/dist/{chunk-C23RQVRK.js → chunk-MUIPM26J.js} +66 -216
  61. package/dist/chunk-MUIPM26J.js.map +1 -0
  62. package/dist/{chunk-AUOEM3SF.cjs → chunk-OKWER2RV.cjs} +102 -155
  63. package/dist/chunk-OKWER2RV.cjs.map +1 -0
  64. package/dist/{chunk-TLGX43P6.cjs → chunk-OM7E43ZN.cjs} +89 -86
  65. package/dist/chunk-OM7E43ZN.cjs.map +1 -0
  66. package/dist/{chunk-NEZJ7ZP5.js → chunk-QSXPKZ2F.js} +4 -8
  67. package/dist/chunk-QSXPKZ2F.js.map +1 -0
  68. package/dist/{chunk-VCLL5C7J.js → chunk-RFLFRIPV.js} +14 -57
  69. package/dist/chunk-RFLFRIPV.js.map +1 -0
  70. package/dist/chunk-RIIXJWBR.cjs +24 -0
  71. package/dist/chunk-RIIXJWBR.cjs.map +1 -0
  72. package/dist/{chunk-VRS6WCEK.js → chunk-SFMORPWB.js} +60 -167
  73. package/dist/chunk-SFMORPWB.js.map +1 -0
  74. package/dist/{chunk-YBMUEEM5.js → chunk-TYZSB7JT.js} +4 -8
  75. package/dist/chunk-TYZSB7JT.js.map +1 -0
  76. package/dist/{chunk-BQANU5BH.cjs → chunk-U5BSCAMP.cjs} +34 -44
  77. package/dist/chunk-U5BSCAMP.cjs.map +1 -0
  78. package/dist/{chunk-OSHZQR3W.js → chunk-UEVR4B5S.js} +13 -45
  79. package/dist/chunk-UEVR4B5S.js.map +1 -0
  80. package/dist/{chunk-N4FGA3H4.js → chunk-VBJY2CSK.js} +38 -105
  81. package/dist/chunk-VBJY2CSK.js.map +1 -0
  82. package/dist/{chunk-ZKVOS57Q.cjs → chunk-VFSVN5IQ.cjs} +495 -551
  83. package/dist/chunk-VFSVN5IQ.cjs.map +1 -0
  84. package/dist/{chunk-X4HDKFW5.cjs → chunk-VNRI5DAL.cjs} +56 -105
  85. package/dist/chunk-VNRI5DAL.cjs.map +1 -0
  86. package/dist/chunk-W7B4WQ3L.cjs +200 -0
  87. package/dist/chunk-W7B4WQ3L.cjs.map +1 -0
  88. package/dist/{chunk-623AOJM2.js → chunk-WAGBELKA.js} +7 -25
  89. package/dist/chunk-WAGBELKA.js.map +1 -0
  90. package/dist/{chunk-WEYDDIBQ.cjs → chunk-WH56EW3H.cjs} +36 -64
  91. package/dist/chunk-WH56EW3H.cjs.map +1 -0
  92. package/dist/{chunk-5MAYUGTE.cjs → chunk-XAS7LANM.cjs} +233 -363
  93. package/dist/chunk-XAS7LANM.cjs.map +1 -0
  94. package/dist/comments.cjs +210 -290
  95. package/dist/comments.cjs.map +1 -1
  96. package/dist/comments.js +82 -186
  97. package/dist/comments.js.map +1 -1
  98. package/dist/diff.cjs +48 -65
  99. package/dist/diff.cjs.map +1 -1
  100. package/dist/diff.d.cts +2 -2
  101. package/dist/diff.d.ts +2 -2
  102. package/dist/diff.js +8 -32
  103. package/dist/diff.js.map +1 -1
  104. package/dist/docx.cjs +50 -63
  105. package/dist/docx.cjs.map +1 -1
  106. package/dist/docx.js +7 -22
  107. package/dist/docx.js.map +1 -1
  108. package/dist/embed.cjs +19 -12
  109. package/dist/embed.cjs.map +1 -1
  110. package/dist/embed.js +10 -16
  111. package/dist/embed.js.map +1 -1
  112. package/dist/emoji-data.cjs +7 -5
  113. package/dist/emoji-data.cjs.map +1 -1
  114. package/dist/emoji-data.js +3 -5
  115. package/dist/emoji-data.js.map +1 -1
  116. package/dist/emoji.cjs +26 -17
  117. package/dist/emoji.cjs.map +1 -1
  118. package/dist/emoji.js +9 -17
  119. package/dist/emoji.js.map +1 -1
  120. package/dist/engine.cjs +229 -118
  121. package/dist/engine.cjs.map +1 -1
  122. package/dist/engine.js +4 -118
  123. package/dist/engine.js.map +1 -1
  124. package/dist/find.cjs +30 -19
  125. package/dist/find.cjs.map +1 -1
  126. package/dist/find.js +9 -19
  127. package/dist/find.js.map +1 -1
  128. package/dist/headless.cjs +291 -151
  129. package/dist/headless.cjs.map +1 -1
  130. package/dist/headless.d.cts +5 -1
  131. package/dist/headless.d.ts +5 -1
  132. package/dist/headless.js +6 -151
  133. package/dist/headless.js.map +1 -1
  134. package/dist/index.cjs +349 -183
  135. package/dist/index.cjs.map +1 -1
  136. package/dist/index.d.cts +17 -4
  137. package/dist/index.d.ts +17 -4
  138. package/dist/index.js +8 -183
  139. package/dist/index.js.map +1 -1
  140. package/dist/math.cjs +20 -13
  141. package/dist/math.cjs.map +1 -1
  142. package/dist/math.js +11 -17
  143. package/dist/math.js.map +1 -1
  144. package/dist/mention.cjs +20 -13
  145. package/dist/mention.cjs.map +1 -1
  146. package/dist/mention.js +11 -17
  147. package/dist/mention.js.map +1 -1
  148. package/dist/presence.cjs +99 -132
  149. package/dist/presence.cjs.map +1 -1
  150. package/dist/presence.js +22 -78
  151. package/dist/presence.js.map +1 -1
  152. package/dist/{registry-CWBOSAHm.d.ts → registry-CXegaw5k.d.cts} +25 -2
  153. package/dist/{registry-CWBOSAHm.d.cts → registry-CXegaw5k.d.ts} +25 -2
  154. package/dist/stats.cjs +27 -18
  155. package/dist/stats.cjs.map +1 -1
  156. package/dist/stats.js +10 -18
  157. package/dist/stats.js.map +1 -1
  158. package/dist/styles.css +1 -1
  159. package/dist/table.cjs +90 -49
  160. package/dist/table.cjs.map +1 -1
  161. package/dist/table.js +9 -49
  162. package/dist/table.js.map +1 -1
  163. package/dist/toc.cjs +26 -17
  164. package/dist/toc.cjs.map +1 -1
  165. package/dist/toc.js +9 -17
  166. package/dist/toc.js.map +1 -1
  167. package/dist/view.cjs +13 -16
  168. package/dist/view.cjs.map +1 -1
  169. package/dist/view.d.cts +2 -2
  170. package/dist/view.d.ts +2 -2
  171. package/dist/view.js +7 -16
  172. package/dist/view.js.map +1 -1
  173. package/dist/yjs.cjs +186 -228
  174. package/dist/yjs.cjs.map +1 -1
  175. package/dist/yjs.js +12 -80
  176. package/dist/yjs.js.map +1 -1
  177. package/package.json +2 -1
  178. package/dist/chunk-4SLJNZSM.cjs.map +0 -1
  179. package/dist/chunk-4XFXB37X.js.map +0 -1
  180. package/dist/chunk-5MAYUGTE.cjs.map +0 -1
  181. package/dist/chunk-623AOJM2.js.map +0 -1
  182. package/dist/chunk-6NULZPVC.js.map +0 -1
  183. package/dist/chunk-6V6GGBDK.cjs.map +0 -1
  184. package/dist/chunk-73653CJ4.cjs +0 -34
  185. package/dist/chunk-73653CJ4.cjs.map +0 -1
  186. package/dist/chunk-ADSJ42DO.js.map +0 -1
  187. package/dist/chunk-AUOEM3SF.cjs.map +0 -1
  188. package/dist/chunk-BQANU5BH.cjs.map +0 -1
  189. package/dist/chunk-C23RQVRK.js.map +0 -1
  190. package/dist/chunk-CW3AFJBR.cjs.map +0 -1
  191. package/dist/chunk-DUE3HCZD.js.map +0 -1
  192. package/dist/chunk-EH5KXQXY.cjs.map +0 -1
  193. package/dist/chunk-EPARJI4V.js.map +0 -1
  194. package/dist/chunk-FDRUAL3Z.cjs.map +0 -1
  195. package/dist/chunk-IQBMAE3F.js.map +0 -1
  196. package/dist/chunk-JHQUHFLX.js.map +0 -1
  197. package/dist/chunk-KUYZMSMF.cjs +0 -100
  198. package/dist/chunk-KUYZMSMF.cjs.map +0 -1
  199. package/dist/chunk-LLTEGXWZ.cjs +0 -562
  200. package/dist/chunk-LLTEGXWZ.cjs.map +0 -1
  201. package/dist/chunk-N4FGA3H4.js.map +0 -1
  202. package/dist/chunk-NEZJ7ZP5.js.map +0 -1
  203. package/dist/chunk-O4Z2WMFF.js.map +0 -1
  204. package/dist/chunk-OBMBSU2S.js.map +0 -1
  205. package/dist/chunk-OSHZQR3W.js.map +0 -1
  206. package/dist/chunk-P6KYXFZC.cjs.map +0 -1
  207. package/dist/chunk-R2BLBV43.cjs +0 -239
  208. package/dist/chunk-R2BLBV43.cjs.map +0 -1
  209. package/dist/chunk-RJRX34BZ.js.map +0 -1
  210. package/dist/chunk-T43RZTUT.js.map +0 -1
  211. package/dist/chunk-TLGX43P6.cjs.map +0 -1
  212. package/dist/chunk-U3LOLYAU.js.map +0 -1
  213. package/dist/chunk-UEKXVCKC.cjs +0 -716
  214. package/dist/chunk-UEKXVCKC.cjs.map +0 -1
  215. package/dist/chunk-VCLL5C7J.js.map +0 -1
  216. package/dist/chunk-VRS6WCEK.js.map +0 -1
  217. package/dist/chunk-WEYDDIBQ.cjs.map +0 -1
  218. package/dist/chunk-X4HDKFW5.cjs.map +0 -1
  219. package/dist/chunk-X4P4TQXH.cjs +0 -30
  220. package/dist/chunk-X4P4TQXH.cjs.map +0 -1
  221. package/dist/chunk-XA3UEJIW.cjs +0 -25
  222. package/dist/chunk-XA3UEJIW.cjs.map +0 -1
  223. package/dist/chunk-YBMUEEM5.js.map +0 -1
  224. package/dist/chunk-ZKVOS57Q.cjs.map +0 -1
@@ -1,56 +1,21 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } 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; }
1
+ 'use strict';
2
2
 
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
-
16
-
17
-
18
-
19
-
20
- var _chunkCW3AFJBRcjs = require('./chunk-CW3AFJBR.cjs');
21
-
22
-
23
-
24
-
25
- var _chunkP6KYXFZCcjs = require('./chunk-P6KYXFZC.cjs');
26
-
27
-
28
-
29
-
30
-
31
-
32
- var _chunkZKVOS57Qcjs = require('./chunk-ZKVOS57Q.cjs');
33
-
34
-
35
- var _chunk4SLJNZSMcjs = require('./chunk-4SLJNZSM.cjs');
36
-
37
- // src/extensions/emoji/CalloutIconPicker.tsx
38
- var _react = require('react');
3
+ var chunk7XQGOCUG_cjs = require('./chunk-7XQGOCUG.cjs');
4
+ var chunkIGZRZIAF_cjs = require('./chunk-IGZRZIAF.cjs');
5
+ var chunkVFSVN5IQ_cjs = require('./chunk-VFSVN5IQ.cjs');
6
+ var chunkAIS37SL2_cjs = require('./chunk-AIS37SL2.cjs');
7
+ var react = require('react');
8
+ var jsxRuntime = require('react/jsx-runtime');
9
+ var lucideReact = require('lucide-react');
39
10
 
40
11
  // src/extensions/emoji/all-callouts.ts
41
- var allCallouts = (state, blockIds) => blockIds.length > 0 && blockIds.every((id) => _optionalChain([_chunk4SLJNZSMcjs.blockById.call(void 0, state.doc, id), 'optionalAccess', _2 => _2.type]) === "CALLOUT");
12
+ var allCallouts = (state, blockIds) => blockIds.length > 0 && blockIds.every((id) => chunkAIS37SL2_cjs.blockById(state.doc, id)?.type === "CALLOUT");
42
13
 
43
14
  // src/extensions/emoji/composing-key.ts
44
15
  var isComposing = (event) => event.isComposing || event.keyCode === 229;
45
16
 
46
- // src/extensions/emoji/EmojiPicker.tsx
47
-
48
-
49
- // src/extensions/emoji/EmojiGrids.tsx
50
-
51
-
52
17
  // src/extensions/emoji/emoji-name.ts
53
- var emojiName = ({ shortcodes, tags }) => _nullishCoalesce(_nullishCoalesce(shortcodes[0], () => ( tags[0])), () => ( ""));
18
+ var emojiName = ({ shortcodes, tags }) => shortcodes[0] ?? tags[0] ?? "";
54
19
 
55
20
  // src/extensions/emoji/grid-moves.ts
56
21
  var inRow = (rows, row, col) => ({ row, col: Math.min(col, rows[row] - 1) });
@@ -74,19 +39,16 @@ var MOVES = {
74
39
  function gridMove(rows, cell, key, ctrl = false) {
75
40
  return Object.hasOwn(MOVES, key) ? MOVES[key](rows, cell, ctrl) : null;
76
41
  }
77
-
78
- // src/extensions/emoji/EmojiGrids.tsx
79
- var _jsxruntime = require('react/jsx-runtime');
80
- var CELL = _chunkCW3AFJBRcjs.cn.call(void 0,
42
+ var CELL = chunk7XQGOCUG_cjs.cn(
81
43
  "flex size-8 shrink-0 cursor-default items-center justify-center rounded-sm text-xl hover:bg-accent",
82
- _chunkCW3AFJBRcjs.FOCUS_RING
44
+ chunk7XQGOCUG_cjs.FOCUS_RING
83
45
  );
84
46
  var HEADING = "px-1 pt-2 pb-1 text-xs font-medium text-muted-foreground";
85
47
  var FIRST = { row: 0, col: 0 };
86
48
  var cellId = (baseId, row, col) => `${baseId}-cell-${row}-${col}`;
87
- var emojiAt = (target) => target instanceof Element ? _nullishCoalesce(_optionalChain([target, 'access', _3 => _3.closest, 'call', _4 => _4("[data-emoji]"), 'optionalAccess', _5 => _5.getAttribute, 'call', _6 => _6("data-emoji")]), () => ( null)) : null;
88
- var EmojiRow = _react.memo.call(void 0, function EmojiRow2({ baseId, row, emoji, activeCol }) {
89
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { role: "row", className: "flex", children: emoji.map((cell, col) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
49
+ var emojiAt = (target) => target instanceof Element ? target.closest("[data-emoji]")?.getAttribute("data-emoji") ?? null : null;
50
+ var EmojiRow = react.memo(function EmojiRow2({ baseId, row, emoji, activeCol }) {
51
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { role: "row", className: "flex", children: emoji.map((cell, col) => /* @__PURE__ */ jsxRuntime.jsx(
90
52
  "div",
91
53
  {
92
54
  role: "gridcell",
@@ -95,15 +57,15 @@ var EmojiRow = _react.memo.call(void 0, function EmojiRow2({ baseId, row, emoji,
95
57
  "aria-label": emojiName(cell),
96
58
  "data-emoji": cell.emoji,
97
59
  className: CELL,
98
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { "aria-hidden": "true", children: cell.emoji })
60
+ children: /* @__PURE__ */ jsxRuntime.jsx("span", { "aria-hidden": "true", children: cell.emoji })
99
61
  },
100
62
  cell.emoji
101
63
  )) });
102
64
  });
103
- var EmojiGrids = _react.forwardRef.call(void 0, function EmojiGrids2({ layout, onPick }, ref) {
104
- const baseId = _react.useId.call(void 0, );
105
- const [active, setActive] = _react.useState.call(void 0, null);
106
- const current = _nullishCoalesce((active === null ? void 0 : layout.places.get(active)), () => ( FIRST));
65
+ var EmojiGrids = react.forwardRef(function EmojiGrids2({ layout, onPick }, ref) {
66
+ const baseId = react.useId();
67
+ const [active, setActive] = react.useState(null);
68
+ const current = (active === null ? void 0 : layout.places.get(active)) ?? FIRST;
107
69
  const onKeyDown = (event) => {
108
70
  if (isComposing(event.nativeEvent) || event.altKey || event.shiftKey || event.metaKey) return;
109
71
  if (event.key === "Enter") {
@@ -117,7 +79,7 @@ var EmojiGrids = _react.forwardRef.call(void 0, function EmojiGrids2({ layout, o
117
79
  if (next === null) return;
118
80
  event.preventDefault();
119
81
  setActive(layout.rows[next.row][next.col].emoji);
120
- _optionalChain([event, 'access', _7 => _7.currentTarget, 'access', _8 => _8.ownerDocument, 'access', _9 => _9.getElementById, 'call', _10 => _10(cellId(baseId, next.row, next.col)), 'optionalAccess', _11 => _11.focus, 'call', _12 => _12()]);
82
+ event.currentTarget.ownerDocument.getElementById(cellId(baseId, next.row, next.col))?.focus();
121
83
  };
122
84
  const onClick = (event) => {
123
85
  const emoji = emojiAt(event.target);
@@ -127,11 +89,11 @@ var EmojiGrids = _react.forwardRef.call(void 0, function EmojiGrids2({ layout, o
127
89
  const emoji = emojiAt(event.target);
128
90
  if (emoji !== null) setActive(emoji);
129
91
  };
130
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, className: "max-h-72 overflow-y-auto", onKeyDown, onClick, onFocus, children: layout.sections.map((section) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { children: [
131
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { id: `${baseId}-${section.key}`, className: HEADING, children: section.label }),
132
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { role: "grid", "aria-labelledby": `${baseId}-${section.key}`, children: section.rows.map((emoji, index) => {
92
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: "max-h-72 overflow-y-auto", onKeyDown, onClick, onFocus, children: layout.sections.map((section) => /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
93
+ /* @__PURE__ */ jsxRuntime.jsx("div", { id: `${baseId}-${section.key}`, className: HEADING, children: section.label }),
94
+ /* @__PURE__ */ jsxRuntime.jsx("div", { role: "grid", "aria-labelledby": `${baseId}-${section.key}`, children: section.rows.map((emoji, index) => {
133
95
  const row = section.firstRow + index;
134
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
96
+ return /* @__PURE__ */ jsxRuntime.jsx(
135
97
  EmojiRow,
136
98
  {
137
99
  baseId,
@@ -175,9 +137,6 @@ function pickerLayout(found, searching, labels) {
175
137
  return { sections, rows, rowLengths: rows.map((cells) => cells.length), places };
176
138
  }
177
139
 
178
- // src/extensions/emoji/use-emoji-data.ts
179
-
180
-
181
140
  // src/extensions/emoji/lazy-load.ts
182
141
  function lazyLoad(load) {
183
142
  let pending = null;
@@ -196,12 +155,12 @@ function lazyLoad(load) {
196
155
  );
197
156
  return pending;
198
157
  },
199
- loaded: () => _optionalChain([value, 'optionalAccess', _13 => _13.current])
158
+ loaded: () => value?.current
200
159
  };
201
160
  }
202
161
 
203
162
  // src/extensions/emoji/emoji-data.ts
204
- var importEmojiData = () => Promise.resolve().then(() => _interopRequireWildcard(require("./emoji-data.cjs"))).then(({ searchEmoji, emojiByShortcode, skinTones }) => ({
163
+ var importEmojiData = () => import('./emoji-data.cjs').then(({ searchEmoji, emojiByShortcode, skinTones }) => ({
205
164
  searchEmoji,
206
165
  emojiByShortcode,
207
166
  skinTones
@@ -211,13 +170,13 @@ var loadEmojiData = () => emojiData.load();
211
170
 
212
171
  // src/extensions/emoji/use-emoji-data.ts
213
172
  function useEmojiData() {
214
- const { onError } = _chunkCW3AFJBRcjs.useQuoin.call(void 0, );
215
- const report = _react.useRef.call(void 0, onError);
216
- _chunkP6KYXFZCcjs.useIsomorphicLayoutEffect.call(void 0, () => {
173
+ const { onError } = chunk7XQGOCUG_cjs.useQuoin();
174
+ const report = react.useRef(onError);
175
+ chunkIGZRZIAF_cjs.useIsomorphicLayoutEffect(() => {
217
176
  report.current = onError;
218
177
  });
219
- const [state, setState] = _react.useState.call(void 0, () => _nullishCoalesce(emojiData.loaded(), () => ( "loading")));
220
- _react.useEffect.call(void 0, () => {
178
+ const [state, setState] = react.useState(() => emojiData.loaded() ?? "loading");
179
+ react.useEffect(() => {
221
180
  let current = true;
222
181
  emojiData.load().then(
223
182
  (data) => {
@@ -226,7 +185,7 @@ function useEmojiData() {
226
185
  (reason) => {
227
186
  if (!current) return;
228
187
  setState("failed");
229
- report.current(_chunkCW3AFJBRcjs.toError.call(void 0, reason));
188
+ report.current(chunk7XQGOCUG_cjs.toError(reason));
230
189
  }
231
190
  );
232
191
  return () => {
@@ -235,29 +194,26 @@ function useEmojiData() {
235
194
  }, []);
236
195
  return state;
237
196
  }
238
-
239
- // src/extensions/emoji/EmojiPicker.tsx
240
-
241
197
  var ACTIVE_CELL = '[role="gridcell"][tabindex="0"]';
242
198
  function EmojiPicker({ labels, onPick }) {
243
199
  const data = useEmojiData();
244
- const [query, setQuery] = _react.useState.call(void 0, "");
245
- const field = _react.useRef.call(void 0, null);
246
- const grids = _react.useRef.call(void 0, null);
200
+ const [query, setQuery] = react.useState("");
201
+ const field = react.useRef(null);
202
+ const grids = react.useRef(null);
247
203
  const searching = query.trim() !== "";
248
- const layout = _react.useMemo.call(void 0,
204
+ const layout = react.useMemo(
249
205
  () => typeof data === "string" ? null : pickerLayout(data.searchEmoji(query), searching, labels),
250
206
  [data, query, searching, labels]
251
207
  );
252
208
  const shown = layout !== null && layout.sections.length > 0;
253
209
  const status = data === "loading" ? labels.loading : data === "failed" ? labels.loadFailed : shown ? "" : labels.noMatches;
254
- const focusGrids = () => _optionalChain([grids, 'access', _14 => _14.current, 'optionalAccess', _15 => _15.querySelector, 'call', _16 => _16(ACTIVE_CELL), 'optionalAccess', _17 => _17.focus, 'call', _18 => _18()]);
210
+ const focusGrids = () => grids.current?.querySelector(ACTIVE_CELL)?.focus();
255
211
  const onKeyDown = (event) => {
256
212
  if (event.key !== "Tab" || isComposing(event.nativeEvent) || event.altKey || event.ctrlKey || event.metaKey) return;
257
213
  event.preventDefault();
258
214
  event.stopPropagation();
259
215
  if (event.target === field.current) focusGrids();
260
- else _optionalChain([field, 'access', _19 => _19.current, 'optionalAccess', _20 => _20.focus, 'call', _21 => _21()]);
216
+ else field.current?.focus();
261
217
  };
262
218
  const onFieldKeyDown = (event) => {
263
219
  if (isComposing(event.nativeEvent)) return;
@@ -269,9 +225,9 @@ function EmojiPicker({ labels, onPick }) {
269
225
  onPick(layout.rows[0][0].emoji);
270
226
  }
271
227
  };
272
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-1", onKeyDown, children: [
273
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
274
- _chunkCW3AFJBRcjs.Input,
228
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-1", onKeyDown, children: [
229
+ /* @__PURE__ */ jsxRuntime.jsx(
230
+ chunk7XQGOCUG_cjs.Input,
275
231
  {
276
232
  ref: field,
277
233
  className: "h-8",
@@ -284,13 +240,10 @@ function EmojiPicker({ labels, onPick }) {
284
240
  onKeyDown: onFieldKeyDown
285
241
  }
286
242
  ),
287
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { role: "status", className: "px-1 text-sm text-muted-foreground empty:hidden", children: status }),
288
- shown && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmojiGrids, { ref: grids, layout, onPick })
243
+ /* @__PURE__ */ jsxRuntime.jsx("p", { role: "status", className: "px-1 text-sm text-muted-foreground empty:hidden", children: status }),
244
+ shown && /* @__PURE__ */ jsxRuntime.jsx(EmojiGrids, { ref: grids, layout, onPick })
289
245
  ] });
290
246
  }
291
-
292
- // src/extensions/emoji/icon-request.ts
293
-
294
247
  var stores = /* @__PURE__ */ new WeakMap();
295
248
  function storeOf(controller) {
296
249
  let store = stores.get(controller);
@@ -307,7 +260,7 @@ function requestIcon(controller, request) {
307
260
  for (const listener of [...store.listeners]) listener();
308
261
  }
309
262
  function useIconRequest(controller) {
310
- const subscribe = _react.useCallback.call(void 0,
263
+ const subscribe = react.useCallback(
311
264
  (notify) => {
312
265
  const { listeners } = storeOf(controller);
313
266
  listeners.add(notify);
@@ -315,40 +268,37 @@ function useIconRequest(controller) {
315
268
  },
316
269
  [controller]
317
270
  );
318
- const read = _react.useCallback.call(void 0, () => storeOf(controller).request, [controller]);
319
- return _react.useSyncExternalStore.call(void 0, subscribe, read, read);
271
+ const read = react.useCallback(() => storeOf(controller).request, [controller]);
272
+ return react.useSyncExternalStore(subscribe, read, read);
320
273
  }
321
-
322
- // src/extensions/emoji/CalloutIconPicker.tsx
323
-
324
274
  var CALLOUT_ICON = ".quoin-callout > :first-child";
325
275
  function CalloutIconPicker({ controller, labels }) {
326
- const readOnly = _chunkP6KYXFZCcjs.useReadOnly.call(void 0, controller);
276
+ const readOnly = chunkIGZRZIAF_cjs.useReadOnly(controller);
327
277
  const request = useIconRequest(controller);
328
- const there = _chunkP6KYXFZCcjs.useEditorState.call(void 0,
278
+ const there = chunkIGZRZIAF_cjs.useEditorState(
329
279
  controller,
330
- _react.useCallback.call(void 0, (state) => request !== null && allCallouts(state, request.blocks), [request])
280
+ react.useCallback((state) => request !== null && allCallouts(state, request.blocks), [request])
331
281
  );
332
282
  const shown = request !== null && there && !readOnly;
333
- _react.useEffect.call(void 0, () => {
283
+ react.useEffect(() => {
334
284
  if (request !== null && !shown) requestIcon(controller, null);
335
285
  }, [controller, request, shown]);
336
286
  if (!shown) return null;
337
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconPopover, { controller, labels, request }, request.blocks.join(" "));
287
+ return /* @__PURE__ */ jsxRuntime.jsx(IconPopover, { controller, labels, request }, request.blocks.join(" "));
338
288
  }
339
289
  function IconPopover({ controller, labels, request: { blocks } }) {
340
- const anchor = _chunkCW3AFJBRcjs.usePartAnchor.call(void 0, controller, blocks[0], CALLOUT_ICON);
341
- const content = _react.useRef.call(void 0, null);
290
+ const anchor = chunk7XQGOCUG_cjs.usePartAnchor(controller, blocks[0], CALLOUT_ICON);
291
+ const content = react.useRef(null);
342
292
  const close = () => requestIcon(controller, null);
343
293
  const finish = (icon) => {
344
294
  close();
345
- _chunkCW3AFJBRcjs.runOnBlocks.call(void 0, controller, blocks, icon === null ? _chunkCW3AFJBRcjs.noChange : _chunkZKVOS57Qcjs.setAttrs.call(void 0, { icon }));
295
+ chunk7XQGOCUG_cjs.runOnBlocks(controller, blocks, icon === null ? chunk7XQGOCUG_cjs.noChange : chunkVFSVN5IQ_cjs.setAttrs({ icon }));
346
296
  controller.focus();
347
297
  };
348
- const ownerDocument = _react.useCallback.call(void 0, () => _nullishCoalesce(_optionalChain([controller, 'access', _22 => _22.root, 'optionalAccess', _23 => _23.ownerDocument]), () => ( document)), [controller]);
349
- _chunkCW3AFJBRcjs.useOutsidePress.call(void 0, content, ownerDocument, close);
350
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
351
- _chunkCW3AFJBRcjs.Popover,
298
+ const ownerDocument = react.useCallback(() => controller.root?.ownerDocument ?? document, [controller]);
299
+ chunk7XQGOCUG_cjs.useOutsidePress(content, ownerDocument, close);
300
+ return /* @__PURE__ */ jsxRuntime.jsxs(
301
+ chunk7XQGOCUG_cjs.Popover,
352
302
  {
353
303
  open: true,
354
304
  modal: false,
@@ -356,40 +306,37 @@ function IconPopover({ controller, labels, request: { blocks } }) {
356
306
  if (!open) close();
357
307
  },
358
308
  children: [
359
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCW3AFJBRcjs.PopoverAnchor, { virtualRef: anchor }),
360
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
361
- _chunkCW3AFJBRcjs.PopoverContent,
309
+ /* @__PURE__ */ jsxRuntime.jsx(chunk7XQGOCUG_cjs.PopoverAnchor, { virtualRef: anchor }),
310
+ /* @__PURE__ */ jsxRuntime.jsx(
311
+ chunk7XQGOCUG_cjs.PopoverContent,
362
312
  {
363
313
  ref: content,
364
314
  "aria-label": labels.chooseIcon,
365
315
  side: "bottom",
366
316
  align: "start",
367
317
  className: "w-80 p-2",
368
- onCloseAutoFocus: _chunkCW3AFJBRcjs.preventDefault,
318
+ onCloseAutoFocus: chunk7XQGOCUG_cjs.preventDefault,
369
319
  onEscapeKeyDown: (event) => {
370
320
  event.preventDefault();
371
321
  if (!isComposing(event)) finish(null);
372
322
  },
373
- ..._chunkCW3AFJBRcjs.bubblePart.call(void 0, controller),
374
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmojiPicker, { labels, onPick: finish })
323
+ ...chunk7XQGOCUG_cjs.bubblePart(controller),
324
+ children: /* @__PURE__ */ jsxRuntime.jsx(EmojiPicker, { labels, onPick: finish })
375
325
  }
376
326
  )
377
327
  ]
378
328
  }
379
329
  );
380
330
  }
381
-
382
- // src/extensions/emoji/choose-icon-action.ts
383
- var _lucidereact = require('lucide-react');
384
331
  function calloutsFor(state, blockIds) {
385
332
  if (blockIds.length === 0 || !state.doc.index.has(blockIds[0])) return null;
386
- const targets = _chunkCW3AFJBRcjs.styleTargets.call(void 0, state, blockIds[0]);
333
+ const targets = chunk7XQGOCUG_cjs.styleTargets(state, blockIds[0]);
387
334
  return allCallouts(state, targets) ? targets : null;
388
335
  }
389
336
  var chooseIconAction = (labels) => ({
390
337
  id: "choose-icon",
391
338
  label: labels.chooseIcon,
392
- icon: _lucidereact.SmilePlus,
339
+ icon: lucideReact.SmilePlus,
393
340
  available: (state, blockIds) => calloutsFor(state, blockIds) !== null,
394
341
  run: (controller, blockIds) => {
395
342
  const blocks = calloutsFor(controller.editor.state, blockIds);
@@ -398,7 +345,7 @@ var chooseIconAction = (labels) => ({
398
345
  });
399
346
 
400
347
  // src/extensions/emoji/emoji-key.ts
401
- var emojiKey = _chunkZKVOS57Qcjs.createPluginKey.call(void 0, "emoji");
348
+ var emojiKey = chunkVFSVN5IQ_cjs.createPluginKey("emoji");
402
349
 
403
350
  // src/extensions/emoji/emoji-labels.ts
404
351
  var englishEmojiLabels = {
@@ -422,13 +369,10 @@ var englishEmojiLabels = {
422
369
  }
423
370
  };
424
371
  function resolveEmojiLabels(overrides) {
425
- const given = Object.entries(_nullishCoalesce(overrides, () => ( {}))).filter(([, value]) => value !== void 0);
372
+ const given = Object.entries(overrides ?? {}).filter(([, value]) => value !== void 0);
426
373
  return given.length === 0 ? englishEmojiLabels : { ...englishEmojiLabels, ...Object.fromEntries(given) };
427
374
  }
428
375
 
429
- // src/extensions/emoji/EmojiMenu.tsx
430
-
431
-
432
376
  // src/extensions/emoji/emoji-source.ts
433
377
  function emojiSource(limit, onFailure) {
434
378
  let failed = false;
@@ -446,32 +390,29 @@ function emojiSource(limit, onFailure) {
446
390
  );
447
391
  };
448
392
  }
449
-
450
- // src/extensions/emoji/EmojiMenu.tsx
451
-
452
393
  var SHOWN = 8;
453
394
  var SHORTEST_QUERY = 2;
454
- var queryAt = (state) => _nullishCoalesce(_optionalChain([_chunkZKVOS57Qcjs.getPluginState.call(void 0, state, emojiKey), 'access', _24 => _24.active, 'optionalAccess', _25 => _25.query]), () => ( null));
395
+ var queryAt = (state) => chunkVFSVN5IQ_cjs.getPluginState(state, emojiKey).active?.query ?? null;
455
396
  var emojiOf = ({ emoji }) => emoji;
456
- var renderEmoji = (emoji) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
457
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { "aria-hidden": "true", className: "text-base", children: emoji.emoji }),
458
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: emojiName(emoji) })
397
+ var renderEmoji = (emoji) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
398
+ /* @__PURE__ */ jsxRuntime.jsx("span", { "aria-hidden": "true", className: "text-base", children: emoji.emoji }),
399
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "truncate", children: emojiName(emoji) })
459
400
  ] });
460
401
  function EmojiMenu({ controller, labels }) {
461
- const readOnly = _chunkP6KYXFZCcjs.useReadOnly.call(void 0, controller);
462
- const query = _chunkP6KYXFZCcjs.useEditorState.call(void 0, controller, queryAt);
402
+ const readOnly = chunkIGZRZIAF_cjs.useReadOnly(controller);
403
+ const query = chunkIGZRZIAF_cjs.useEditorState(controller, queryAt);
463
404
  if (readOnly || query === null || query.length < SHORTEST_QUERY) return null;
464
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmojiMatches, { controller, labels });
405
+ return /* @__PURE__ */ jsxRuntime.jsx(EmojiMatches, { controller, labels });
465
406
  }
466
407
  function EmojiMatches({ controller, labels }) {
467
- const [failed, setFailed] = _react.useState.call(void 0, false);
468
- const source = _react.useMemo.call(void 0, () => emojiSource(SHOWN, () => setFailed(true)), []);
469
- const choose = _react.useCallback.call(void 0,
470
- (emoji, range) => void _chunkCW3AFJBRcjs.replaceTrigger.call(void 0, controller, range, _chunkZKVOS57Qcjs.insertText.call(void 0, emoji.emoji)),
408
+ const [failed, setFailed] = react.useState(false);
409
+ const source = react.useMemo(() => emojiSource(SHOWN, () => setFailed(true)), []);
410
+ const choose = react.useCallback(
411
+ (emoji, range) => void chunk7XQGOCUG_cjs.replaceTrigger(controller, range, chunkVFSVN5IQ_cjs.insertText(emoji.emoji)),
471
412
  [controller]
472
413
  );
473
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
474
- _chunkCW3AFJBRcjs.SuggestionMenu,
414
+ return /* @__PURE__ */ jsxRuntime.jsx(
415
+ chunk7XQGOCUG_cjs.SuggestionMenu,
475
416
  {
476
417
  controller,
477
418
  pluginKey: emojiKey,
@@ -485,20 +426,16 @@ function EmojiMatches({ controller, labels }) {
485
426
  }
486
427
  );
487
428
  }
488
-
489
- // src/extensions/emoji/emoji-extension.tsx
490
-
491
429
  function emojiExtension(options = {}) {
492
430
  const labels = resolveEmojiLabels(options.labels);
493
- const Menu = ({ controller }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmojiMenu, { controller, labels });
494
- const Picker = ({ controller }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CalloutIconPicker, { controller, labels });
431
+ const Menu = ({ controller }) => /* @__PURE__ */ jsxRuntime.jsx(EmojiMenu, { controller, labels });
432
+ const Picker = ({ controller }) => /* @__PURE__ */ jsxRuntime.jsx(CalloutIconPicker, { controller, labels });
495
433
  const ui = { blockMenuItems: [chooseIconAction(labels)], overlays: [Menu, Picker] };
496
- return _chunkZKVOS57Qcjs.defineExtension.call(void 0, { name: "emoji", plugins: [_chunkCW3AFJBRcjs.suggestionPlugin.call(void 0, emojiKey, { char: ":" })], ui });
434
+ return chunkVFSVN5IQ_cjs.defineExtension({ name: "emoji", plugins: [chunk7XQGOCUG_cjs.suggestionPlugin(emojiKey, { char: ":" })], ui });
497
435
  }
498
436
 
499
-
500
-
501
-
502
-
503
- exports.loadEmojiData = loadEmojiData; exports.englishEmojiLabels = englishEmojiLabels; exports.emojiExtension = emojiExtension;
504
- //# sourceMappingURL=chunk-FDRUAL3Z.cjs.map
437
+ exports.emojiExtension = emojiExtension;
438
+ exports.englishEmojiLabels = englishEmojiLabels;
439
+ exports.loadEmojiData = loadEmojiData;
440
+ //# sourceMappingURL=chunk-7NAONESM.cjs.map
441
+ //# sourceMappingURL=chunk-7NAONESM.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/extensions/emoji/all-callouts.ts","../src/extensions/emoji/composing-key.ts","../src/extensions/emoji/emoji-name.ts","../src/extensions/emoji/grid-moves.ts","../src/extensions/emoji/EmojiGrids.tsx","../src/extensions/emoji/picker-layout.ts","../src/extensions/emoji/lazy-load.ts","../src/extensions/emoji/emoji-data.ts","../src/extensions/emoji/use-emoji-data.ts","../src/extensions/emoji/EmojiPicker.tsx","../src/extensions/emoji/icon-request.ts","../src/extensions/emoji/CalloutIconPicker.tsx","../src/extensions/emoji/choose-icon-action.ts","../src/extensions/emoji/emoji-key.ts","../src/extensions/emoji/emoji-labels.ts","../src/extensions/emoji/emoji-source.ts","../src/extensions/emoji/EmojiMenu.tsx","../src/extensions/emoji/emoji-extension.tsx"],"names":["blockById","cn","FOCUS_RING","memo","EmojiRow","jsx","forwardRef","EmojiGrids","useId","useState","useQuoin","useRef","useIsomorphicLayoutEffect","useEffect","toError","useMemo","jsxs","Input","useCallback","useSyncExternalStore","useReadOnly","useEditorState","usePartAnchor","runOnBlocks","noChange","setAttrs","useOutsidePress","Popover","PopoverAnchor","PopoverContent","preventDefault","bubblePart","styleTargets","SmilePlus","createPluginKey","getPluginState","Fragment","replaceTrigger","insertText","SuggestionMenu","defineExtension","suggestionPlugin"],"mappings":"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","file":"chunk-7NAONESM.cjs"}
@@ -1,12 +1,6 @@
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; }
1
+ 'use strict';
2
2
 
3
-
4
-
5
-
6
-
7
-
8
-
9
- var _chunk4SLJNZSMcjs = require('./chunk-4SLJNZSM.cjs');
3
+ var chunkAIS37SL2_cjs = require('./chunk-AIS37SL2.cjs');
10
4
 
11
5
  // src/engine/diff/myers.ts
12
6
  var same = (x, y) => x === y;
@@ -71,7 +65,7 @@ function mergeEdits(edits) {
71
65
  } else {
72
66
  flush();
73
67
  const last = ops[ops.length - 1];
74
- if (_optionalChain([last, 'optionalAccess', _ => _.op]) === "equal") last.items.push(item);
68
+ if (last?.op === "equal") last.items.push(item);
75
69
  else ops.push({ op: "equal", items: [item] });
76
70
  }
77
71
  }
@@ -87,15 +81,15 @@ var TOKEN = /\s+|[\p{L}\p{N}_][\p{L}\p{N}\p{M}_]*|.(?:[\p{M}\p{Emoji_Modifier}]|
87
81
  function tokenize(inline) {
88
82
  return inline.flatMap((node) => {
89
83
  if (node.kind === "atom") return [node];
90
- return (_nullishCoalesce(node.text.match(TOKEN), () => ( []))).map((part) => ({ kind: "text", text: part, marks: node.marks }));
84
+ return (node.text.match(TOKEN) ?? []).map((part) => ({ kind: "text", text: part, marks: node.marks }));
91
85
  });
92
86
  }
93
87
 
94
88
  // src/engine/diff/diff-inline.ts
95
89
  function diffInline(a, b) {
96
- return diffSequences(tokenize(a), tokenize(b), _chunk4SLJNZSMcjs.equalNode).map(({ op, items }) => ({
90
+ return diffSequences(tokenize(a), tokenize(b), chunkAIS37SL2_cjs.equalNode).map(({ op, items }) => ({
97
91
  op,
98
- inline: _chunk4SLJNZSMcjs.normalizeInline.call(void 0, items)
92
+ inline: chunkAIS37SL2_cjs.normalizeInline(items)
99
93
  }));
100
94
  }
101
95
 
@@ -106,26 +100,26 @@ function isRecord(value) {
106
100
  function sameValue(a, b) {
107
101
  if (a === b) return true;
108
102
  if (!isRecord(a) || !isRecord(b) || Array.isArray(a) !== Array.isArray(b)) return false;
109
- if (Array.isArray(a) && Array.isArray(b)) return _chunk4SLJNZSMcjs.sameItems.call(void 0, a, b, sameValue);
103
+ if (Array.isArray(a) && Array.isArray(b)) return chunkAIS37SL2_cjs.sameItems(a, b, sameValue);
110
104
  const keys = /* @__PURE__ */ new Set([...Object.keys(a), ...Object.keys(b)]);
111
105
  return [...keys].every((key) => sameValue(a[key], b[key]));
112
106
  }
113
107
 
114
108
  // src/engine/diff/block-change.ts
115
- var indentOf = (block) => _nullishCoalesce(block.indent, () => ( 0));
109
+ var indentOf = (block) => block.indent ?? 0;
116
110
  function sameContent(a, b) {
117
111
  return a.type === b.type && indentOf(a) === indentOf(b) && sameValue(a.data, b.data);
118
112
  }
119
113
  function changeBetween(before, after, schema, ctx) {
120
- const left = _chunk4SLJNZSMcjs.specFor.call(void 0, schema, before.type).fromData(before.data, ctx);
121
- const right = _chunk4SLJNZSMcjs.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(_chunk4SLJNZSMcjs.compareRegionNames);
114
+ const left = chunkAIS37SL2_cjs.specFor(schema, before.type).fromData(before.data, ctx);
115
+ const right = chunkAIS37SL2_cjs.specFor(schema, after.type).fromData(after.data, ctx);
116
+ const names = [.../* @__PURE__ */ new Set([...Object.keys(left.regions), ...Object.keys(right.regions)])].sort(chunkAIS37SL2_cjs.compareRegionNames);
123
117
  return {
124
118
  op: "change",
125
119
  before,
126
120
  after,
127
121
  regions: Object.fromEntries(
128
- names.map((name) => [name, diffInline(_nullishCoalesce(left.regions[name], () => ( [])), _nullishCoalesce(right.regions[name], () => ( [])))])
122
+ names.map((name) => [name, diffInline(left.regions[name] ?? [], right.regions[name] ?? [])])
129
123
  ),
130
124
  attrsChanged: before.type !== after.type || indentOf(before) !== indentOf(after) || !sameValue(left.attrs, right.attrs)
131
125
  };
@@ -162,7 +156,7 @@ function movedIds(steps) {
162
156
  var WORD = /[\p{L}\p{N}_]+/gu;
163
157
  function collectWords(value, words) {
164
158
  if (typeof value === "string") {
165
- for (const [word] of value.matchAll(WORD)) words.set(word, (_nullishCoalesce(words.get(word), () => ( 0))) + 1);
159
+ for (const [word] of value.matchAll(WORD)) words.set(word, (words.get(word) ?? 0) + 1);
166
160
  } else if (Array.isArray(value)) {
167
161
  for (const item of value) collectWords(item, words);
168
162
  } else if (typeof value === "object" && value !== null) {
@@ -180,7 +174,7 @@ function similarity(a, b) {
180
174
  if (a.block.type !== b.block.type) return 0;
181
175
  if (a.total === 0 && b.total === 0) return sameValue(a.block.data, b.block.data) ? 1 : 0;
182
176
  let shared = 0;
183
- for (const [word, count] of a.words) shared += Math.min(count, _nullishCoalesce(b.words.get(word), () => ( 0)));
177
+ for (const [word, count] of a.words) shared += Math.min(count, b.words.get(word) ?? 0);
184
178
  return 2 * shared / (a.total + b.total);
185
179
  }
186
180
 
@@ -291,8 +285,8 @@ function idsMostlyMatch(a, b) {
291
285
  return matching * 2 >= Math.min(a.length, b.length);
292
286
  }
293
287
  function diffBlocks(a, b, options = {}) {
294
- const schema = _nullishCoalesce(options.schema, () => ( _chunk4SLJNZSMcjs.createSchema.call(void 0, )));
295
- const codec = _chunk4SLJNZSMcjs.createBlockCodec.call(void 0, schema);
288
+ const schema = options.schema ?? chunkAIS37SL2_cjs.createSchema();
289
+ const codec = chunkAIS37SL2_cjs.createBlockCodec(schema);
296
290
  const byId = idsMostlyMatch(a, b);
297
291
  const expand = (block) => {
298
292
  const pieces = codec.toEngineBlocks(block);
@@ -309,12 +303,11 @@ function diffBlocks(a, b, options = {}) {
309
303
  });
310
304
  }
311
305
 
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-6V6GGBDK.cjs.map
306
+ exports.changeBetween = changeBetween;
307
+ exports.diffBlocks = diffBlocks;
308
+ exports.diffInline = diffInline;
309
+ exports.diffSequences = diffSequences;
310
+ exports.sameContent = sameContent;
311
+ exports.sameValue = sameValue;
312
+ //# sourceMappingURL=chunk-7SVKLWDT.cjs.map
313
+ //# sourceMappingURL=chunk-7SVKLWDT.cjs.map