quoin-editor 0.4.2 → 1.0.0

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 +205 -0
  2. package/MIGRATION.md +233 -0
  3. package/README.md +78 -716
  4. package/dist/ai.cjs +1107 -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 +1107 -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-2QCRZ7OL.cjs +319 -0
  17. package/dist/chunk-2QCRZ7OL.cjs.map +1 -0
  18. package/dist/chunk-2VDK27IF.cjs +6666 -0
  19. package/dist/chunk-2VDK27IF.cjs.map +1 -0
  20. package/dist/chunk-47MLKSI2.js +326 -0
  21. package/dist/chunk-47MLKSI2.js.map +1 -0
  22. package/dist/chunk-5DNCCN6X.cjs +326 -0
  23. package/dist/chunk-5DNCCN6X.cjs.map +1 -0
  24. package/dist/chunk-AEJXZBVR.cjs +1378 -0
  25. package/dist/chunk-AEJXZBVR.cjs.map +1 -0
  26. package/dist/chunk-CDELOHDY.cjs +239 -0
  27. package/dist/chunk-CDELOHDY.cjs.map +1 -0
  28. package/dist/chunk-E75EHRPA.cjs +175 -0
  29. package/dist/chunk-E75EHRPA.cjs.map +1 -0
  30. package/dist/chunk-EL2OEJQC.cjs +562 -0
  31. package/dist/chunk-EL2OEJQC.cjs.map +1 -0
  32. package/dist/chunk-GLLXHMH2.cjs +25 -0
  33. package/dist/chunk-GLLXHMH2.cjs.map +1 -0
  34. package/dist/chunk-GTTPVJSD.cjs +3286 -0
  35. package/dist/chunk-GTTPVJSD.cjs.map +1 -0
  36. package/dist/chunk-HELJTLNC.cjs +100 -0
  37. package/dist/chunk-HELJTLNC.cjs.map +1 -0
  38. package/dist/chunk-HJIQT3S5.js +4047 -0
  39. package/dist/chunk-HJIQT3S5.js.map +1 -0
  40. package/dist/chunk-HZSSEYJS.cjs +504 -0
  41. package/dist/chunk-HZSSEYJS.cjs.map +1 -0
  42. package/dist/chunk-JDPTZUBW.js +184 -0
  43. package/dist/chunk-JDPTZUBW.js.map +1 -0
  44. package/dist/chunk-JEIFJHEI.js +14 -0
  45. package/dist/chunk-JEIFJHEI.js.map +1 -0
  46. package/dist/chunk-K574XHMM.js +25 -0
  47. package/dist/chunk-K574XHMM.js.map +1 -0
  48. package/dist/chunk-KAVU6T6J.js +249 -0
  49. package/dist/chunk-KAVU6T6J.js.map +1 -0
  50. package/dist/chunk-KXOBZGQO.js +1378 -0
  51. package/dist/chunk-KXOBZGQO.js.map +1 -0
  52. package/dist/chunk-LCQSG4M6.js +3335 -0
  53. package/dist/chunk-LCQSG4M6.js.map +1 -0
  54. package/dist/chunk-MQ2XQ4MX.js +100 -0
  55. package/dist/chunk-MQ2XQ4MX.js.map +1 -0
  56. package/dist/chunk-ND5XJVK2.cjs +3335 -0
  57. package/dist/chunk-ND5XJVK2.cjs.map +1 -0
  58. package/dist/chunk-NNDYYEW5.js +504 -0
  59. package/dist/chunk-NNDYYEW5.js.map +1 -0
  60. package/dist/chunk-NOKWNK2O.js +319 -0
  61. package/dist/chunk-NOKWNK2O.js.map +1 -0
  62. package/dist/chunk-OMOBMXD5.cjs +57 -0
  63. package/dist/chunk-OMOBMXD5.cjs.map +1 -0
  64. package/dist/chunk-PMWCQSQX.js +239 -0
  65. package/dist/chunk-PMWCQSQX.js.map +1 -0
  66. package/dist/chunk-POBM7MGR.js +30 -0
  67. package/dist/chunk-POBM7MGR.js.map +1 -0
  68. package/dist/chunk-PWUEPDA3.cjs +598 -0
  69. package/dist/chunk-PWUEPDA3.cjs.map +1 -0
  70. package/dist/chunk-PZ4GT5JO.cjs +4047 -0
  71. package/dist/chunk-PZ4GT5JO.cjs.map +1 -0
  72. package/dist/chunk-QAW5NH6S.cjs +14 -0
  73. package/dist/chunk-QAW5NH6S.cjs.map +1 -0
  74. package/dist/chunk-RDG4VI6E.cjs +706 -0
  75. package/dist/chunk-RDG4VI6E.cjs.map +1 -0
  76. package/dist/chunk-RUDWMKYX.js +562 -0
  77. package/dist/chunk-RUDWMKYX.js.map +1 -0
  78. package/dist/chunk-SG37UBDO.js +706 -0
  79. package/dist/chunk-SG37UBDO.js.map +1 -0
  80. package/dist/chunk-SLVDAHHK.cjs +30 -0
  81. package/dist/chunk-SLVDAHHK.cjs.map +1 -0
  82. package/dist/chunk-T7SW6OWV.js +598 -0
  83. package/dist/chunk-T7SW6OWV.js.map +1 -0
  84. package/dist/chunk-TC4DARU2.js +175 -0
  85. package/dist/chunk-TC4DARU2.js.map +1 -0
  86. package/dist/chunk-WQHV3MRE.cjs +184 -0
  87. package/dist/chunk-WQHV3MRE.cjs.map +1 -0
  88. package/dist/chunk-WXMYDXPN.cjs +33 -0
  89. package/dist/chunk-WXMYDXPN.cjs.map +1 -0
  90. package/dist/chunk-XEBWC7ZL.js +57 -0
  91. package/dist/chunk-XEBWC7ZL.js.map +1 -0
  92. package/dist/chunk-ZC24WB7Y.cjs +249 -0
  93. package/dist/chunk-ZC24WB7Y.cjs.map +1 -0
  94. package/dist/chunk-ZGZEJCRV.js +6666 -0
  95. package/dist/chunk-ZGZEJCRV.js.map +1 -0
  96. package/dist/chunk-ZHOSSWUM.js +33 -0
  97. package/dist/chunk-ZHOSSWUM.js.map +1 -0
  98. package/dist/chunk-ZS2WA357.js +3286 -0
  99. package/dist/chunk-ZS2WA357.js.map +1 -0
  100. package/dist/comments.cjs +993 -0
  101. package/dist/comments.cjs.map +1 -0
  102. package/dist/comments.d.cts +88 -0
  103. package/dist/comments.d.ts +88 -0
  104. package/dist/comments.js +993 -0
  105. package/dist/comments.js.map +1 -0
  106. package/dist/diff.cjs +343 -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 +343 -0
  111. package/dist/diff.js.map +1 -0
  112. package/dist/docx.cjs +854 -0
  113. package/dist/docx.cjs.map +1 -0
  114. package/dist/docx.d.cts +27 -0
  115. package/dist/docx.d.ts +27 -0
  116. package/dist/docx.js +854 -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-C12gDPm6.d.cts +46 -0
  131. package/dist/emoji-extension-DpQ43HjE.d.ts +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-DKqLLSuP.d.ts +41 -0
  145. package/dist/find-extension-_sbZEt3R.d.cts +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-CgD72kHB.d.cts +65 -0
  159. package/dist/index-DNYbTK3w.d.ts +65 -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 +565 -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 +565 -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-Bly88uio.d.ts +40 -0
  187. package/dist/stats-extension-CJPijvUb.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-BTLxFy2S.d.cts +57 -0
  196. package/dist/table-extension-Dzf4k6hI.d.ts +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-B3-s6h2x.d.cts +25 -0
  206. package/dist/toc-extension-DWm5alVj.d.ts +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-Cz7XJLaK.d.cts +366 -0
  214. package/dist/types-DULc8wwg.d.cts +120 -0
  215. package/dist/types-DULc8wwg.d.ts +120 -0
  216. package/dist/types-a1CRBlEh.d.ts +366 -0
  217. package/dist/view-controller-DSHw0ltQ.d.cts +118 -0
  218. package/dist/view-controller-UbpzblGl.d.ts +118 -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 +1026 -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 +1026 -0
  230. package/dist/yjs.js.map +1 -0
  231. package/package.json +217 -18
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["chunk-ND5XJVK2.cjs","../src/engine/model/attrs.ts","../src/engine/model/compare.ts","../src/engine/model/same-items.ts","../src/engine/model/marks.ts","../src/engine/model/inline.ts","../src/engine/markdown/palette.ts","../src/engine/model/is-record.ts","../src/engine/blocks/data-fields.ts","../src/engine/blocks/bookmark-spec.ts","../src/engine/blocks/callout-spec.ts","../src/engine/blocks/code-spec.ts","../src/engine/blocks/marker-spec.ts","../src/engine/blocks/divider-spec.ts","../src/engine/blocks/embed-spec.ts","../src/engine/blocks/file-spec.ts","../src/engine/blocks/image-spec.ts","../src/engine/markdown/ordered-start.ts","../src/engine/markdown/line-kind.ts","../src/engine/markdown/line-markdown.ts","../src/engine/blocks/markdown-spec.ts","../src/engine/blocks/math-spec.ts","../src/engine/model/count.ts","../src/engine/blocks/table-spec.ts","../src/engine/blocks/toc-spec.ts","../src/engine/blocks/toggle-spec.ts","../src/engine/blocks/core-specs.ts","../src/engine/schema/core-atoms.ts","../src/engine/schema/core-marks.ts","../src/engine/schema/create-schema.ts","../src/engine/markdown/urls.ts","../src/engine/markdown/inline/delimiters.ts","../src/engine/markdown/inline/match-at.ts","../src/engine/markdown/inline/entities.ts","../src/engine/markdown/inline/escapes.ts","../src/engine/markdown/inline/link-syntax.ts","../src/engine/markdown/inline/scanner.ts","../src/engine/markdown/inline/close-bracket.ts","../src/engine/markdown/inline/code-span.ts","../src/engine/markdown/inline/active-marks.ts","../src/engine/markdown/inline/inline-items.ts","../src/engine/markdown/inline/math-span.ts","../src/engine/markdown/inline/html-tags.ts","../src/engine/markdown/inline/open-angle.ts","../src/engine/markdown/inline/pair-tags.ts","../src/engine/markdown/inline/parse-inline.ts","../src/engine/markdown/inline/escape-text.ts","../src/engine/markdown/inline/data-attributes.ts","../src/engine/render/html-node.ts","../src/engine/render/plain-mark-tags.ts","../src/engine/render/mark-node.ts","../src/engine/markdown/inline/html-marks.ts","../src/engine/markdown/inline/link-markdown.ts","../src/engine/markdown/inline/atom-markdown.ts","../src/engine/markdown/inline/code-markdown.ts","../src/engine/markdown/inline/literal-ranges.ts","../src/engine/markdown/inline/edge-chars.ts","../src/engine/markdown/inline/inline-tree.ts","../src/engine/markdown/inline/emphasis-delimiter.ts","../src/engine/markdown/inline/range-wrapper.ts","../src/engine/markdown/inline/render-inline.ts","../src/engine/markdown/inline/serialize-inline.ts","../src/engine/model/new-id.ts","../src/engine/markdown/block/lines.ts","../src/engine/markdown/block/block-tree.ts","../src/engine/markdown/block/references.ts","../src/engine/markdown/block/summary-text.ts","../src/engine/markdown/block/parser-state.ts","../src/engine/markdown/block/container-blocks.ts","../src/engine/markdown/block/details-blocks.ts","../src/engine/markdown/block/quoin-comment.ts","../src/engine/markdown/block/html-blocks.ts","../src/engine/markdown/block/leaf-blocks.ts","../src/engine/markdown/block/tables.ts","../src/engine/markdown/block/parse-blocks.ts","../src/engine/markdown/block/alert.ts","../src/engine/markdown/block/drafts.ts","../src/engine/markdown/block/inline-text.ts","../src/engine/markdown/block/image-paragraph.ts","../src/engine/markdown/block/leaf-drafts.ts","../src/engine/markdown/block/tree-to-blocks.ts","../src/engine/markdown/block/from-markdown.ts","../src/engine/model/doc.ts","../src/engine/blocks/legacy-split.ts","../src/engine/blocks/unique-ids.ts","../src/engine/blocks/unknown-spec.ts","../src/engine/blocks/codec.ts","../src/engine/render/block-groups.ts","../src/engine/render/block-attrs.ts","../src/engine/render/table-cells.ts","../src/engine/render/block-plain-text.ts","../src/engine/render/heading-tree.ts","../src/engine/render/heading-level.ts","../src/engine/render/headings.ts","../src/engine/render/toc-node.ts","../src/engine/render/engine-blocks.ts","../src/engine/render/inline-nodes.ts","../src/engine/render/html-env.ts","../src/engine/render/embed-provider.ts","../src/engine/render/media-nodes.ts","../src/engine/render/table-node.ts","../src/engine/render/block-node.ts","../src/engine/render/embed-providers.ts","../src/engine/render/group-nodes.ts","../src/engine/render/document-nodes.ts"],"names":["KNOWN","target","text","newId","convert","headingLevel"],"mappings":"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AAA;AACkB,IAAA;AACG,IAAA;AACC,IAAA;AACxB,IAAA;AACT,EAAA;AACF;AAE+B;AACvB,EAAA;AACK,EAAA;AACkB,IAAA;AACN,IAAA;AACA,IAAA;AACW,IAAA;AAClC,EAAA;AACF;AAE+B;AACvB,EAAA;AACK,EAAA;AACkB,IAAA;AACN,IAAA;AACG,IAAA;AAC1B,EAAA;AACF;AAEkC;AAC1B,EAAA;AACK,EAAA;AACa,IAAA;AACW,IAAA;AAGnC,EAAA;AACF;AAEsE;AtGmjGjC;AACA;AuGvoGF;AACF,EAAA;AACE,EAAA;AACD,EAAA;AAClC;AAGmE;AACrC,EAAA;AAEC,EAAA;AACE,IAAA;AACD,IAAA;AACK,MAAA;AACD,MAAA;AAChC,IAAA;AACgC,IAAA;AACjC,EAAA;AACH;AvGsoGqC;AACA;AwGlpGwB;AAC1B,EAAA;AACH,EAAA;AACT,EAAA;AACM,IAAA;AACL,IAAA;AACM,IAAA;AACG,IAAA;AACH,IAAA;AACM,IAAA;AACZ,IAAA;AACtB,EAAA;AAC8B,EAAA;AAChC;AxGopGqC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/quoin-editor/quoin-editor/dist/chunk-ND5XJVK2.cjs"}
@@ -0,0 +1,504 @@
1
+ import {
2
+ FOCUS_RING,
3
+ Input,
4
+ Popover,
5
+ PopoverAnchor,
6
+ PopoverContent,
7
+ SuggestionMenu,
8
+ bubblePart,
9
+ cn,
10
+ noChange,
11
+ preventDefault,
12
+ replaceTrigger,
13
+ runOnBlocks,
14
+ styleTargets,
15
+ suggestionPlugin,
16
+ toError,
17
+ useOutsidePress,
18
+ usePartAnchor,
19
+ useQuoin
20
+ } from "./chunk-ZGZEJCRV.js";
21
+ import {
22
+ useEditorState,
23
+ useIsomorphicLayoutEffect,
24
+ useReadOnly
25
+ } from "./chunk-ZS2WA357.js";
26
+ import {
27
+ createPluginKey,
28
+ defineExtension,
29
+ getPluginState,
30
+ insertText,
31
+ setAttrs
32
+ } from "./chunk-HJIQT3S5.js";
33
+ import {
34
+ blockById
35
+ } from "./chunk-LCQSG4M6.js";
36
+
37
+ // src/extensions/emoji/CalloutIconPicker.tsx
38
+ import { useCallback as useCallback2, useEffect as useEffect2, useRef as useRef3 } from "react";
39
+
40
+ // src/extensions/emoji/all-callouts.ts
41
+ var allCallouts = (state, blockIds) => blockIds.length > 0 && blockIds.every((id) => blockById(state.doc, id)?.type === "CALLOUT");
42
+
43
+ // src/extensions/emoji/composing-key.ts
44
+ var isComposing = (event) => event.isComposing || event.keyCode === 229;
45
+
46
+ // src/extensions/emoji/EmojiPicker.tsx
47
+ import { useMemo, useRef as useRef2, useState as useState3 } from "react";
48
+
49
+ // src/extensions/emoji/EmojiGrids.tsx
50
+ import { forwardRef, memo, useId, useState } from "react";
51
+
52
+ // src/extensions/emoji/emoji-name.ts
53
+ var emojiName = ({ shortcodes, tags }) => shortcodes[0] ?? tags[0] ?? "";
54
+
55
+ // src/extensions/emoji/grid-moves.ts
56
+ var inRow = (rows, row, col) => ({ row, col: Math.min(col, rows[row] - 1) });
57
+ var MOVES = {
58
+ ArrowRight: (rows, { row, col }) => {
59
+ if (col + 1 < rows[row]) return { row, col: col + 1 };
60
+ return row + 1 < rows.length ? { row: row + 1, col: 0 } : { row, col };
61
+ },
62
+ ArrowLeft: (rows, { row, col }) => {
63
+ if (col > 0) return { row, col: col - 1 };
64
+ return row > 0 ? { row: row - 1, col: rows[row - 1] - 1 } : { row, col };
65
+ },
66
+ ArrowDown: (rows, { row, col }) => inRow(rows, Math.min(row + 1, rows.length - 1), col),
67
+ ArrowUp: (rows, { row, col }) => inRow(rows, Math.max(row - 1, 0), col),
68
+ Home: (_, { row }, ctrl) => ctrl ? { row: 0, col: 0 } : { row, col: 0 },
69
+ End: (rows, { row }, ctrl) => {
70
+ const to = ctrl ? rows.length - 1 : row;
71
+ return { row: to, col: rows[to] - 1 };
72
+ }
73
+ };
74
+ function gridMove(rows, cell, key, ctrl = false) {
75
+ return Object.hasOwn(MOVES, key) ? MOVES[key](rows, cell, ctrl) : null;
76
+ }
77
+
78
+ // src/extensions/emoji/EmojiGrids.tsx
79
+ import { jsx, jsxs } from "react/jsx-runtime";
80
+ var CELL = cn(
81
+ "flex size-8 shrink-0 cursor-default items-center justify-center rounded-sm text-xl hover:bg-accent",
82
+ FOCUS_RING
83
+ );
84
+ var HEADING = "px-1 pt-2 pb-1 text-xs font-medium text-muted-foreground";
85
+ var FIRST = { row: 0, col: 0 };
86
+ var cellId = (baseId, row, col) => `${baseId}-cell-${row}-${col}`;
87
+ var emojiAt = (target) => target instanceof Element ? target.closest("[data-emoji]")?.getAttribute("data-emoji") ?? null : null;
88
+ var EmojiRow = memo(function EmojiRow2({ baseId, row, emoji, activeCol }) {
89
+ return /* @__PURE__ */ jsx("div", { role: "row", className: "flex", children: emoji.map((cell, col) => /* @__PURE__ */ jsx(
90
+ "div",
91
+ {
92
+ role: "gridcell",
93
+ id: cellId(baseId, row, col),
94
+ tabIndex: col === activeCol ? 0 : -1,
95
+ "aria-label": emojiName(cell),
96
+ "data-emoji": cell.emoji,
97
+ className: CELL,
98
+ children: /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: cell.emoji })
99
+ },
100
+ cell.emoji
101
+ )) });
102
+ });
103
+ var EmojiGrids = forwardRef(function EmojiGrids2({ layout, onPick }, ref) {
104
+ const baseId = useId();
105
+ const [active, setActive] = useState(null);
106
+ const current = (active === null ? void 0 : layout.places.get(active)) ?? FIRST;
107
+ const onKeyDown = (event) => {
108
+ if (isComposing(event.nativeEvent) || event.altKey || event.shiftKey || event.metaKey) return;
109
+ if (event.key === "Enter") {
110
+ const emoji = emojiAt(event.target);
111
+ if (emoji === null) return;
112
+ event.preventDefault();
113
+ onPick(emoji);
114
+ return;
115
+ }
116
+ const next = gridMove(layout.rowLengths, current, event.key, event.ctrlKey);
117
+ if (next === null) return;
118
+ event.preventDefault();
119
+ setActive(layout.rows[next.row][next.col].emoji);
120
+ event.currentTarget.ownerDocument.getElementById(cellId(baseId, next.row, next.col))?.focus();
121
+ };
122
+ const onClick = (event) => {
123
+ const emoji = emojiAt(event.target);
124
+ if (emoji !== null) onPick(emoji);
125
+ };
126
+ const onFocus = (event) => {
127
+ const emoji = emojiAt(event.target);
128
+ if (emoji !== null) setActive(emoji);
129
+ };
130
+ return /* @__PURE__ */ jsx("div", { ref, className: "max-h-72 overflow-y-auto", onKeyDown, onClick, onFocus, children: layout.sections.map((section) => /* @__PURE__ */ jsxs("div", { children: [
131
+ /* @__PURE__ */ jsx("div", { id: `${baseId}-${section.key}`, className: HEADING, children: section.label }),
132
+ /* @__PURE__ */ jsx("div", { role: "grid", "aria-labelledby": `${baseId}-${section.key}`, children: section.rows.map((emoji, index) => {
133
+ const row = section.firstRow + index;
134
+ return /* @__PURE__ */ jsx(
135
+ EmojiRow,
136
+ {
137
+ baseId,
138
+ row,
139
+ emoji,
140
+ activeCol: row === current.row ? current.col : null
141
+ },
142
+ row
143
+ );
144
+ }) })
145
+ ] }, section.key)) });
146
+ });
147
+
148
+ // src/extensions/emoji/picker-layout.ts
149
+ var COLUMNS = 8;
150
+ function inRows(emoji) {
151
+ const rows = [];
152
+ for (let start = 0; start < emoji.length; start += COLUMNS) rows.push(emoji.slice(start, start + COLUMNS));
153
+ return rows;
154
+ }
155
+ function grouped(found, labels) {
156
+ const byGroup = /* @__PURE__ */ new Map();
157
+ for (const emoji of found) {
158
+ const group = byGroup.get(emoji.group);
159
+ if (group === void 0) byGroup.set(emoji.group, [emoji]);
160
+ else group.push(emoji);
161
+ }
162
+ return [...byGroup].map(([group, emoji]) => ({ key: group, label: labels.groups[group], rows: inRows(emoji) }));
163
+ }
164
+ function pickerLayout(found, searching, labels) {
165
+ const unplaced = found.length === 0 ? [] : searching ? [{ key: "results", label: labels.searchResults, rows: inRows(found) }] : grouped(found, labels);
166
+ let firstRow = 0;
167
+ const sections = unplaced.map((section) => {
168
+ const placed = { ...section, firstRow };
169
+ firstRow += section.rows.length;
170
+ return placed;
171
+ });
172
+ const rows = sections.flatMap((section) => section.rows);
173
+ const places = /* @__PURE__ */ new Map();
174
+ rows.forEach((cells, row) => cells.forEach(({ emoji }, col) => places.set(emoji, { row, col })));
175
+ return { sections, rows, rowLengths: rows.map((cells) => cells.length), places };
176
+ }
177
+
178
+ // src/extensions/emoji/use-emoji-data.ts
179
+ import { useEffect, useRef, useState as useState2 } from "react";
180
+
181
+ // src/extensions/emoji/lazy-load.ts
182
+ function lazyLoad(load) {
183
+ let pending = null;
184
+ let value = null;
185
+ return {
186
+ load() {
187
+ pending ??= new Promise((resolve) => resolve(load())).then(
188
+ (current) => {
189
+ value = { current };
190
+ return current;
191
+ },
192
+ (reason) => {
193
+ pending = null;
194
+ throw reason;
195
+ }
196
+ );
197
+ return pending;
198
+ },
199
+ loaded: () => value?.current
200
+ };
201
+ }
202
+
203
+ // src/extensions/emoji/emoji-data.ts
204
+ var importEmojiData = () => import("./emoji-data.js").then(({ searchEmoji, emojiByShortcode, skinTones }) => ({
205
+ searchEmoji,
206
+ emojiByShortcode,
207
+ skinTones
208
+ }));
209
+ var emojiData = lazyLoad(importEmojiData);
210
+ var loadEmojiData = () => emojiData.load();
211
+
212
+ // src/extensions/emoji/use-emoji-data.ts
213
+ function useEmojiData() {
214
+ const { onError } = useQuoin();
215
+ const report = useRef(onError);
216
+ useIsomorphicLayoutEffect(() => {
217
+ report.current = onError;
218
+ });
219
+ const [state, setState] = useState2(() => emojiData.loaded() ?? "loading");
220
+ useEffect(() => {
221
+ let current = true;
222
+ emojiData.load().then(
223
+ (data) => {
224
+ if (current) setState(data);
225
+ },
226
+ (reason) => {
227
+ if (!current) return;
228
+ setState("failed");
229
+ report.current(toError(reason));
230
+ }
231
+ );
232
+ return () => {
233
+ current = false;
234
+ };
235
+ }, []);
236
+ return state;
237
+ }
238
+
239
+ // src/extensions/emoji/EmojiPicker.tsx
240
+ import { jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
241
+ var ACTIVE_CELL = '[role="gridcell"][tabindex="0"]';
242
+ function EmojiPicker({ labels, onPick }) {
243
+ const data = useEmojiData();
244
+ const [query, setQuery] = useState3("");
245
+ const field = useRef2(null);
246
+ const grids = useRef2(null);
247
+ const searching = query.trim() !== "";
248
+ const layout = useMemo(
249
+ () => typeof data === "string" ? null : pickerLayout(data.searchEmoji(query), searching, labels),
250
+ [data, query, searching, labels]
251
+ );
252
+ const shown = layout !== null && layout.sections.length > 0;
253
+ const status = data === "loading" ? labels.loading : data === "failed" ? labels.loadFailed : shown ? "" : labels.noMatches;
254
+ const focusGrids = () => grids.current?.querySelector(ACTIVE_CELL)?.focus();
255
+ const onKeyDown = (event) => {
256
+ if (event.key !== "Tab" || isComposing(event.nativeEvent) || event.altKey || event.ctrlKey || event.metaKey) return;
257
+ event.preventDefault();
258
+ event.stopPropagation();
259
+ if (event.target === field.current) focusGrids();
260
+ else field.current?.focus();
261
+ };
262
+ const onFieldKeyDown = (event) => {
263
+ if (isComposing(event.nativeEvent)) return;
264
+ if (event.key === "ArrowDown") {
265
+ event.preventDefault();
266
+ focusGrids();
267
+ } else if (event.key === "Enter" && searching && shown) {
268
+ event.preventDefault();
269
+ onPick(layout.rows[0][0].emoji);
270
+ }
271
+ };
272
+ return /* @__PURE__ */ jsxs2("div", { className: "flex flex-col gap-1", onKeyDown, children: [
273
+ /* @__PURE__ */ jsx2(
274
+ Input,
275
+ {
276
+ ref: field,
277
+ className: "h-8",
278
+ "aria-label": labels.searchEmoji,
279
+ placeholder: labels.searchEmoji,
280
+ autoComplete: "off",
281
+ spellCheck: false,
282
+ value: query,
283
+ onChange: (event) => setQuery(event.target.value),
284
+ onKeyDown: onFieldKeyDown
285
+ }
286
+ ),
287
+ /* @__PURE__ */ jsx2("p", { role: "status", className: "px-1 text-sm text-muted-foreground empty:hidden", children: status }),
288
+ shown && /* @__PURE__ */ jsx2(EmojiGrids, { ref: grids, layout, onPick })
289
+ ] });
290
+ }
291
+
292
+ // src/extensions/emoji/icon-request.ts
293
+ import { useCallback, useSyncExternalStore } from "react";
294
+ var stores = /* @__PURE__ */ new WeakMap();
295
+ function storeOf(controller) {
296
+ let store = stores.get(controller);
297
+ if (store === void 0) {
298
+ store = { request: null, listeners: /* @__PURE__ */ new Set() };
299
+ stores.set(controller, store);
300
+ }
301
+ return store;
302
+ }
303
+ function requestIcon(controller, request) {
304
+ const store = storeOf(controller);
305
+ if (store.request === request) return;
306
+ store.request = request;
307
+ for (const listener of [...store.listeners]) listener();
308
+ }
309
+ function useIconRequest(controller) {
310
+ const subscribe = useCallback(
311
+ (notify) => {
312
+ const { listeners } = storeOf(controller);
313
+ listeners.add(notify);
314
+ return () => void listeners.delete(notify);
315
+ },
316
+ [controller]
317
+ );
318
+ const read = useCallback(() => storeOf(controller).request, [controller]);
319
+ return useSyncExternalStore(subscribe, read, read);
320
+ }
321
+
322
+ // src/extensions/emoji/CalloutIconPicker.tsx
323
+ import { jsx as jsx3, jsxs as jsxs3 } from "react/jsx-runtime";
324
+ var CALLOUT_ICON = ".quoin-callout > :first-child";
325
+ function CalloutIconPicker({ controller, labels }) {
326
+ const readOnly = useReadOnly(controller);
327
+ const request = useIconRequest(controller);
328
+ const there = useEditorState(
329
+ controller,
330
+ useCallback2((state) => request !== null && allCallouts(state, request.blocks), [request])
331
+ );
332
+ const shown = request !== null && there && !readOnly;
333
+ useEffect2(() => {
334
+ if (request !== null && !shown) requestIcon(controller, null);
335
+ }, [controller, request, shown]);
336
+ if (!shown) return null;
337
+ return /* @__PURE__ */ jsx3(IconPopover, { controller, labels, request }, request.blocks.join(" "));
338
+ }
339
+ function IconPopover({ controller, labels, request: { blocks } }) {
340
+ const anchor = usePartAnchor(controller, blocks[0], CALLOUT_ICON);
341
+ const content = useRef3(null);
342
+ const close = () => requestIcon(controller, null);
343
+ const finish = (icon) => {
344
+ close();
345
+ runOnBlocks(controller, blocks, icon === null ? noChange : setAttrs({ icon }));
346
+ controller.focus();
347
+ };
348
+ const ownerDocument = useCallback2(() => controller.root?.ownerDocument ?? document, [controller]);
349
+ useOutsidePress(content, ownerDocument, close);
350
+ return /* @__PURE__ */ jsxs3(
351
+ Popover,
352
+ {
353
+ open: true,
354
+ modal: false,
355
+ onOpenChange: (open) => {
356
+ if (!open) close();
357
+ },
358
+ children: [
359
+ /* @__PURE__ */ jsx3(PopoverAnchor, { virtualRef: anchor }),
360
+ /* @__PURE__ */ jsx3(
361
+ PopoverContent,
362
+ {
363
+ ref: content,
364
+ "aria-label": labels.chooseIcon,
365
+ side: "bottom",
366
+ align: "start",
367
+ className: "w-80 p-2",
368
+ onCloseAutoFocus: preventDefault,
369
+ onEscapeKeyDown: (event) => {
370
+ event.preventDefault();
371
+ if (!isComposing(event)) finish(null);
372
+ },
373
+ ...bubblePart(controller),
374
+ children: /* @__PURE__ */ jsx3(EmojiPicker, { labels, onPick: finish })
375
+ }
376
+ )
377
+ ]
378
+ }
379
+ );
380
+ }
381
+
382
+ // src/extensions/emoji/choose-icon-action.ts
383
+ import { SmilePlus } from "lucide-react";
384
+ function calloutsFor(state, blockIds) {
385
+ if (blockIds.length === 0 || !state.doc.index.has(blockIds[0])) return null;
386
+ const targets = styleTargets(state, blockIds[0]);
387
+ return allCallouts(state, targets) ? targets : null;
388
+ }
389
+ var chooseIconAction = (labels) => ({
390
+ id: "choose-icon",
391
+ label: labels.chooseIcon,
392
+ icon: SmilePlus,
393
+ available: (state, blockIds) => calloutsFor(state, blockIds) !== null,
394
+ run: (controller, blockIds) => {
395
+ const blocks = calloutsFor(controller.editor.state, blockIds);
396
+ if (blocks !== null) requestIcon(controller, { blocks });
397
+ }
398
+ });
399
+
400
+ // src/extensions/emoji/emoji-key.ts
401
+ var emojiKey = createPluginKey("emoji");
402
+
403
+ // src/extensions/emoji/emoji-labels.ts
404
+ var englishEmojiLabels = {
405
+ emojiMenu: "Emoji",
406
+ loading: "Loading emoji\u2026",
407
+ loadFailed: "Emoji could not be loaded",
408
+ noMatches: "No emoji found",
409
+ chooseIcon: "Choose icon",
410
+ searchEmoji: "Search emoji",
411
+ searchResults: "Search results",
412
+ groups: {
413
+ smileys: "Smileys and emotion",
414
+ people: "People and body",
415
+ animals: "Animals and nature",
416
+ food: "Food and drink",
417
+ travel: "Travel and places",
418
+ activities: "Activities",
419
+ objects: "Objects",
420
+ symbols: "Symbols",
421
+ flags: "Flags"
422
+ }
423
+ };
424
+ function resolveEmojiLabels(overrides) {
425
+ const given = Object.entries(overrides ?? {}).filter(([, value]) => value !== void 0);
426
+ return given.length === 0 ? englishEmojiLabels : { ...englishEmojiLabels, ...Object.fromEntries(given) };
427
+ }
428
+
429
+ // src/extensions/emoji/EmojiMenu.tsx
430
+ import { useCallback as useCallback3, useMemo as useMemo2, useState as useState4 } from "react";
431
+
432
+ // src/extensions/emoji/emoji-source.ts
433
+ function emojiSource(limit, onFailure) {
434
+ let failed = false;
435
+ return (query) => {
436
+ const data = emojiData.loaded();
437
+ if (data !== void 0) return data.searchEmoji(query, limit);
438
+ if (failed) return [];
439
+ return emojiData.load().then(
440
+ (loaded) => loaded.searchEmoji(query, limit),
441
+ (reason) => {
442
+ failed = true;
443
+ onFailure();
444
+ throw reason;
445
+ }
446
+ );
447
+ };
448
+ }
449
+
450
+ // src/extensions/emoji/EmojiMenu.tsx
451
+ import { Fragment, jsx as jsx4, jsxs as jsxs4 } from "react/jsx-runtime";
452
+ var SHOWN = 8;
453
+ var SHORTEST_QUERY = 2;
454
+ var queryAt = (state) => getPluginState(state, emojiKey).active?.query ?? null;
455
+ var emojiOf = ({ emoji }) => emoji;
456
+ var renderEmoji = (emoji) => /* @__PURE__ */ jsxs4(Fragment, { children: [
457
+ /* @__PURE__ */ jsx4("span", { "aria-hidden": "true", className: "text-base", children: emoji.emoji }),
458
+ /* @__PURE__ */ jsx4("span", { className: "truncate", children: emojiName(emoji) })
459
+ ] });
460
+ function EmojiMenu({ controller, labels }) {
461
+ const readOnly = useReadOnly(controller);
462
+ const query = useEditorState(controller, queryAt);
463
+ if (readOnly || query === null || query.length < SHORTEST_QUERY) return null;
464
+ return /* @__PURE__ */ jsx4(EmojiMatches, { controller, labels });
465
+ }
466
+ function EmojiMatches({ controller, labels }) {
467
+ const [failed, setFailed] = useState4(false);
468
+ const source = useMemo2(() => emojiSource(SHOWN, () => setFailed(true)), []);
469
+ const choose = useCallback3(
470
+ (emoji, range) => void replaceTrigger(controller, range, insertText(emoji.emoji)),
471
+ [controller]
472
+ );
473
+ return /* @__PURE__ */ jsx4(
474
+ SuggestionMenu,
475
+ {
476
+ controller,
477
+ pluginKey: emojiKey,
478
+ items: source,
479
+ itemKey: emojiOf,
480
+ renderItem: renderEmoji,
481
+ onSelect: choose,
482
+ label: labels.emojiMenu,
483
+ emptyLabel: failed ? labels.loadFailed : labels.noMatches,
484
+ pendingLabel: labels.loading
485
+ }
486
+ );
487
+ }
488
+
489
+ // src/extensions/emoji/emoji-extension.tsx
490
+ import { jsx as jsx5 } from "react/jsx-runtime";
491
+ function emojiExtension(options = {}) {
492
+ const labels = resolveEmojiLabels(options.labels);
493
+ const Menu = ({ controller }) => /* @__PURE__ */ jsx5(EmojiMenu, { controller, labels });
494
+ const Picker = ({ controller }) => /* @__PURE__ */ jsx5(CalloutIconPicker, { controller, labels });
495
+ const ui = { blockMenuItems: [chooseIconAction(labels)], overlays: [Menu, Picker] };
496
+ return defineExtension({ name: "emoji", plugins: [suggestionPlugin(emojiKey, { char: ":" })], ui });
497
+ }
498
+
499
+ export {
500
+ loadEmojiData,
501
+ englishEmojiLabels,
502
+ emojiExtension
503
+ };
504
+ //# sourceMappingURL=chunk-NNDYYEW5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/extensions/emoji/CalloutIconPicker.tsx","../src/extensions/emoji/all-callouts.ts","../src/extensions/emoji/composing-key.ts","../src/extensions/emoji/EmojiPicker.tsx","../src/extensions/emoji/EmojiGrids.tsx","../src/extensions/emoji/emoji-name.ts","../src/extensions/emoji/grid-moves.ts","../src/extensions/emoji/picker-layout.ts","../src/extensions/emoji/use-emoji-data.ts","../src/extensions/emoji/lazy-load.ts","../src/extensions/emoji/emoji-data.ts","../src/extensions/emoji/icon-request.ts","../src/extensions/emoji/choose-icon-action.ts","../src/extensions/emoji/emoji-key.ts","../src/extensions/emoji/emoji-labels.ts","../src/extensions/emoji/EmojiMenu.tsx","../src/extensions/emoji/emoji-source.ts","../src/extensions/emoji/emoji-extension.tsx"],"mappings":"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","names":["useCallback","useEffect","useRef","useRef","useState","EmojiRow","EmojiGrids","useState","useState","jsx","jsxs","useState","useRef","jsx","jsxs","useCallback","useEffect","useRef","useCallback","useMemo","useState","jsx","jsxs","useState","useMemo","useCallback","jsx"]}