@blade-hq/agent-react 2612.0.0-beta.1 → 2612.0.0-beta.10

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 (1161) hide show
  1. package/README.md +18 -0
  2. package/dist/chat/ChatPanel.d.ts +1 -3
  3. package/dist/chat/LightComposer.d.ts +1 -1
  4. package/dist/chat/LiteMessageList.d.ts +1 -1
  5. package/dist/chat/MessageList.d.ts +1 -0
  6. package/dist/chat/WorkflowRunBlock.d.ts +19 -3
  7. package/dist/chat/ai-elements/reasoning.d.ts +4 -4
  8. package/dist/chat/customization.d.ts +1 -5
  9. package/dist/chat/index.d.ts +1 -4
  10. package/dist/chat/lib/citations.d.ts +5 -22
  11. package/dist/chat/markdown/MarkdownContent.d.ts +3 -0
  12. package/dist/chat/runtime/actions.d.ts +2 -1
  13. package/dist/chat/runtime/composer-channels.d.ts +4 -0
  14. package/dist/chat/runtime/input-cache-reset.d.ts +1 -1
  15. package/dist/chat/runtime/input-history-storage.d.ts +2 -0
  16. package/dist/chat/runtime/input-services.d.ts +0 -6
  17. package/dist/{chunk-FQQJP2GJ.js → chunk-7TQVTNPL.js} +780 -819
  18. package/dist/chunk-7TQVTNPL.js.map +1 -0
  19. package/dist/{chunk-WCMGQJLE.js → chunk-EYRP6PV3.js} +2 -2
  20. package/dist/{chunk-6ZDOQEWK.js → chunk-JVM2WTTS.js} +898 -638
  21. package/dist/chunk-JVM2WTTS.js.map +1 -0
  22. package/dist/components/ChatInput.d.ts +3 -1
  23. package/dist/components/TopicAssetSubmitDialog.d.ts +14 -0
  24. package/dist/components/plugin-connector.d.ts +1 -0
  25. package/dist/embed/entry.d.ts +2 -0
  26. package/dist/host.d.ts +0 -4
  27. package/dist/index.d.ts +2 -0
  28. package/dist/index.js +8 -4
  29. package/dist/internal.d.ts +3 -0
  30. package/dist/internal.js +9 -3
  31. package/dist/internal.js.map +1 -1
  32. package/dist/lib/agent-computer-command.d.ts +1 -3
  33. package/dist/rich-input/ChatInput.d.ts +1 -1
  34. package/dist/rich-input/FileCompletionMenu.d.ts +6 -9
  35. package/dist/rich-input/SkillStatusBar.d.ts +2 -4
  36. package/dist/rich-input/extensions/plugin-mention.d.ts +15 -0
  37. package/dist/rich-input/extensions/skill-mention.d.ts +3 -21
  38. package/dist/rich-input/extensions/topic-asset-mention.d.ts +13 -0
  39. package/dist/rich-input/index.d.ts +6 -3
  40. package/dist/rich-input/lib/composer-content.d.ts +11 -21
  41. package/dist/rich-input/lib/input-history-document.d.ts +3 -0
  42. package/dist/rich-input/lib/plugin-suggestions.d.ts +7 -0
  43. package/dist/rich-input/lib/reference-candidates.d.ts +27 -0
  44. package/dist/rich-input/lib/skill-suggestions.d.ts +1 -1
  45. package/dist/rich-input/lib/topic-asset-suggestions.d.ts +6 -0
  46. package/dist/rich-input/services.d.ts +2 -3
  47. package/dist/rich-input/use-input-history.d.ts +8 -8
  48. package/dist/rich-input/use-reference-candidates.d.ts +8 -0
  49. package/dist/rich-input.js +6409 -6351
  50. package/dist/rich-input.js.map +1 -1
  51. package/dist/style.full.css +1 -1
  52. package/node_modules/@floating-ui/core/LICENSE +20 -0
  53. package/node_modules/@floating-ui/core/README.md +4 -0
  54. package/node_modules/@floating-ui/core/dist/floating-ui.core.browser.min.mjs +1 -0
  55. package/node_modules/@floating-ui/core/dist/floating-ui.core.browser.mjs +1184 -0
  56. package/node_modules/@floating-ui/core/dist/floating-ui.core.d.mts +531 -0
  57. package/node_modules/@floating-ui/core/dist/floating-ui.core.d.ts +531 -0
  58. package/node_modules/@floating-ui/core/dist/floating-ui.core.esm.js +1058 -0
  59. package/node_modules/@floating-ui/core/dist/floating-ui.core.mjs +1058 -0
  60. package/node_modules/@floating-ui/core/dist/floating-ui.core.umd.js +1203 -0
  61. package/node_modules/@floating-ui/core/dist/floating-ui.core.umd.min.js +1 -0
  62. package/node_modules/@floating-ui/core/package.json +63 -0
  63. package/node_modules/@floating-ui/dom/LICENSE +20 -0
  64. package/node_modules/@floating-ui/dom/README.md +4 -0
  65. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.browser.min.mjs +1 -0
  66. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.browser.mjs +956 -0
  67. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.d.mts +358 -0
  68. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.d.ts +358 -0
  69. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.esm.js +781 -0
  70. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs +781 -0
  71. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.umd.js +975 -0
  72. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.umd.min.js +1 -0
  73. package/node_modules/@floating-ui/dom/package.json +71 -0
  74. package/node_modules/@floating-ui/utils/LICENSE +20 -0
  75. package/node_modules/@floating-ui/utils/README.md +4 -0
  76. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.d.mts +103 -0
  77. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.d.ts +103 -0
  78. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.d.mts +47 -0
  79. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.d.ts +47 -0
  80. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.esm.js +165 -0
  81. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs +165 -0
  82. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.umd.js +192 -0
  83. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.umd.min.js +1 -0
  84. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.esm.js +136 -0
  85. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs +136 -0
  86. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.umd.js +167 -0
  87. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.umd.min.js +1 -0
  88. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.d.ts +47 -0
  89. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.esm.js +165 -0
  90. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.umd.js +192 -0
  91. package/node_modules/@floating-ui/utils/dom/package.json +6 -0
  92. package/node_modules/@floating-ui/utils/package.json +70 -0
  93. package/node_modules/@radix-ui/primitive/LICENSE +21 -0
  94. package/node_modules/@radix-ui/primitive/README.md +3 -0
  95. package/node_modules/@radix-ui/primitive/dist/index.d.mts +20 -0
  96. package/node_modules/@radix-ui/primitive/dist/index.d.ts +20 -0
  97. package/node_modules/@radix-ui/primitive/dist/index.js +76 -0
  98. package/node_modules/@radix-ui/primitive/dist/index.js.map +7 -0
  99. package/node_modules/@radix-ui/primitive/dist/index.mjs +53 -0
  100. package/node_modules/@radix-ui/primitive/dist/index.mjs.map +7 -0
  101. package/node_modules/@radix-ui/primitive/package.json +47 -0
  102. package/node_modules/@radix-ui/react-collapsible/LICENSE +21 -0
  103. package/node_modules/@radix-ui/react-collapsible/README.md +3 -0
  104. package/node_modules/@radix-ui/react-collapsible/dist/index.d.mts +33 -0
  105. package/node_modules/@radix-ui/react-collapsible/dist/index.d.ts +33 -0
  106. package/node_modules/@radix-ui/react-collapsible/dist/index.js +187 -0
  107. package/node_modules/@radix-ui/react-collapsible/dist/index.js.map +7 -0
  108. package/node_modules/@radix-ui/react-collapsible/dist/index.mjs +155 -0
  109. package/node_modules/@radix-ui/react-collapsible/dist/index.mjs.map +7 -0
  110. package/node_modules/@radix-ui/react-collapsible/package.json +75 -0
  111. package/node_modules/@radix-ui/react-compose-refs/README.md +13 -0
  112. package/node_modules/@radix-ui/react-compose-refs/dist/index.d.mts +15 -0
  113. package/node_modules/@radix-ui/react-compose-refs/dist/index.d.ts +15 -0
  114. package/node_modules/@radix-ui/react-compose-refs/dist/index.js +74 -0
  115. package/node_modules/@radix-ui/react-compose-refs/dist/index.js.map +7 -0
  116. package/node_modules/@radix-ui/react-compose-refs/dist/index.mjs +41 -0
  117. package/node_modules/@radix-ui/react-compose-refs/dist/index.mjs.map +7 -0
  118. package/node_modules/@radix-ui/react-compose-refs/package.json +75 -0
  119. package/node_modules/@radix-ui/react-context/README.md +13 -0
  120. package/node_modules/@radix-ui/react-context/dist/index.d.mts +21 -0
  121. package/node_modules/@radix-ui/react-context/dist/index.d.ts +21 -0
  122. package/node_modules/@radix-ui/react-context/dist/index.js +114 -0
  123. package/node_modules/@radix-ui/react-context/dist/index.js.map +7 -0
  124. package/node_modules/@radix-ui/react-context/dist/index.mjs +81 -0
  125. package/node_modules/@radix-ui/react-context/dist/index.mjs.map +7 -0
  126. package/node_modules/@radix-ui/react-context/package.json +75 -0
  127. package/node_modules/@radix-ui/react-id/README.md +13 -0
  128. package/node_modules/@radix-ui/react-id/dist/index.d.mts +3 -0
  129. package/node_modules/@radix-ui/react-id/dist/index.d.ts +3 -0
  130. package/node_modules/@radix-ui/react-id/dist/index.js +49 -0
  131. package/node_modules/@radix-ui/react-id/dist/index.js.map +7 -0
  132. package/node_modules/@radix-ui/react-id/dist/index.mjs +16 -0
  133. package/node_modules/@radix-ui/react-id/dist/index.mjs.map +7 -0
  134. package/node_modules/@radix-ui/react-id/package.json +78 -0
  135. package/node_modules/@radix-ui/react-presence/LICENSE +21 -0
  136. package/node_modules/@radix-ui/react-presence/README.md +3 -0
  137. package/node_modules/@radix-ui/react-presence/dist/index.d.mts +12 -0
  138. package/node_modules/@radix-ui/react-presence/dist/index.d.ts +12 -0
  139. package/node_modules/@radix-ui/react-presence/dist/index.js +171 -0
  140. package/node_modules/@radix-ui/react-presence/dist/index.js.map +7 -0
  141. package/node_modules/@radix-ui/react-presence/dist/index.mjs +139 -0
  142. package/node_modules/@radix-ui/react-presence/dist/index.mjs.map +7 -0
  143. package/node_modules/@radix-ui/react-presence/package.json +69 -0
  144. package/node_modules/@radix-ui/react-primitive/LICENSE +21 -0
  145. package/node_modules/@radix-ui/react-primitive/README.md +3 -0
  146. package/node_modules/@radix-ui/react-primitive/dist/index.d.mts +52 -0
  147. package/node_modules/@radix-ui/react-primitive/dist/index.d.ts +52 -0
  148. package/node_modules/@radix-ui/react-primitive/dist/index.js +80 -0
  149. package/node_modules/@radix-ui/react-primitive/dist/index.js.map +7 -0
  150. package/node_modules/@radix-ui/react-primitive/dist/index.mjs +47 -0
  151. package/node_modules/@radix-ui/react-primitive/dist/index.mjs.map +7 -0
  152. package/node_modules/@radix-ui/react-primitive/package.json +68 -0
  153. package/node_modules/@radix-ui/react-slot/LICENSE +21 -0
  154. package/node_modules/@radix-ui/react-slot/README.md +3 -0
  155. package/node_modules/@radix-ui/react-slot/dist/index.d.mts +17 -0
  156. package/node_modules/@radix-ui/react-slot/dist/index.d.ts +17 -0
  157. package/node_modules/@radix-ui/react-slot/dist/index.js +138 -0
  158. package/node_modules/@radix-ui/react-slot/dist/index.js.map +7 -0
  159. package/node_modules/@radix-ui/react-slot/dist/index.mjs +105 -0
  160. package/node_modules/@radix-ui/react-slot/dist/index.mjs.map +7 -0
  161. package/node_modules/@radix-ui/react-slot/package.json +63 -0
  162. package/node_modules/@radix-ui/react-use-controllable-state/LICENSE +21 -0
  163. package/node_modules/@radix-ui/react-use-controllable-state/README.md +3 -0
  164. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.d.mts +40 -0
  165. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.d.ts +40 -0
  166. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.js +169 -0
  167. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.js.map +7 -0
  168. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs +136 -0
  169. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs.map +7 -0
  170. package/node_modules/@radix-ui/react-use-controllable-state/package.json +64 -0
  171. package/node_modules/@radix-ui/react-use-effect-event/LICENSE +21 -0
  172. package/node_modules/@radix-ui/react-use-effect-event/README.md +5 -0
  173. package/node_modules/@radix-ui/react-use-effect-event/dist/index.d.mts +8 -0
  174. package/node_modules/@radix-ui/react-use-effect-event/dist/index.d.ts +8 -0
  175. package/node_modules/@radix-ui/react-use-effect-event/dist/index.js +60 -0
  176. package/node_modules/@radix-ui/react-use-effect-event/dist/index.js.map +7 -0
  177. package/node_modules/@radix-ui/react-use-effect-event/dist/index.mjs +27 -0
  178. package/node_modules/@radix-ui/react-use-effect-event/dist/index.mjs.map +7 -0
  179. package/node_modules/@radix-ui/react-use-effect-event/package.json +65 -0
  180. package/node_modules/@radix-ui/react-use-effect-event/src/index.ts +1 -0
  181. package/node_modules/@radix-ui/react-use-effect-event/src/use-effect-event.tsx +36 -0
  182. package/node_modules/@radix-ui/react-use-layout-effect/README.md +13 -0
  183. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.d.mts +12 -0
  184. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.d.ts +12 -0
  185. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.js +41 -0
  186. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.js.map +7 -0
  187. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs +8 -0
  188. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs.map +7 -0
  189. package/node_modules/@radix-ui/react-use-layout-effect/package.json +75 -0
  190. package/node_modules/@remirror/core-constants/LICENSE +21 -0
  191. package/node_modules/@remirror/core-constants/dist/_tsup-dts-rollup.d.cts +612 -0
  192. package/node_modules/@remirror/core-constants/dist/_tsup-dts-rollup.d.ts +612 -0
  193. package/node_modules/@remirror/core-constants/dist/remirror-core-constants.cjs +314 -0
  194. package/node_modules/@remirror/core-constants/dist/remirror-core-constants.d.cts +20 -0
  195. package/node_modules/@remirror/core-constants/dist/remirror-core-constants.d.ts +20 -0
  196. package/node_modules/@remirror/core-constants/dist/remirror-core-constants.js +269 -0
  197. package/node_modules/@remirror/core-constants/dist-types/core-constants.d.ts +431 -0
  198. package/node_modules/@remirror/core-constants/dist-types/error-constants.d.ts +119 -0
  199. package/node_modules/@remirror/core-constants/dist-types/index.d.ts +2 -0
  200. package/node_modules/@remirror/core-constants/dist-types/tsconfig.tsbuildinfo +1 -0
  201. package/node_modules/@remirror/core-constants/package.json +45 -0
  202. package/node_modules/@remirror/core-constants/readme.md +17 -0
  203. package/node_modules/@tiptap/core/LICENSE.md +21 -0
  204. package/node_modules/@tiptap/core/README.md +18 -0
  205. package/node_modules/@tiptap/core/dist/index.cjs +7126 -0
  206. package/node_modules/@tiptap/core/dist/index.cjs.map +1 -0
  207. package/node_modules/@tiptap/core/dist/index.d.cts +4954 -0
  208. package/node_modules/@tiptap/core/dist/index.d.ts +4954 -0
  209. package/node_modules/@tiptap/core/dist/index.js +6992 -0
  210. package/node_modules/@tiptap/core/dist/index.js.map +1 -0
  211. package/node_modules/@tiptap/core/dist/jsx-runtime/jsx-runtime.cjs +56 -0
  212. package/node_modules/@tiptap/core/dist/jsx-runtime/jsx-runtime.cjs.map +1 -0
  213. package/node_modules/@tiptap/core/dist/jsx-runtime/jsx-runtime.d.cts +23 -0
  214. package/node_modules/@tiptap/core/dist/jsx-runtime/jsx-runtime.d.ts +23 -0
  215. package/node_modules/@tiptap/core/dist/jsx-runtime/jsx-runtime.js +26 -0
  216. package/node_modules/@tiptap/core/dist/jsx-runtime/jsx-runtime.js.map +1 -0
  217. package/node_modules/@tiptap/core/jsx-dev-runtime/index.cjs +1 -0
  218. package/node_modules/@tiptap/core/jsx-dev-runtime/index.d.cts +1 -0
  219. package/node_modules/@tiptap/core/jsx-dev-runtime/index.d.ts +1 -0
  220. package/node_modules/@tiptap/core/jsx-dev-runtime/index.js +1 -0
  221. package/node_modules/@tiptap/core/jsx-runtime/index.cjs +1 -0
  222. package/node_modules/@tiptap/core/jsx-runtime/index.d.cts +1 -0
  223. package/node_modules/@tiptap/core/jsx-runtime/index.d.ts +1 -0
  224. package/node_modules/@tiptap/core/jsx-runtime/index.js +1 -0
  225. package/node_modules/@tiptap/core/package.json +70 -0
  226. package/node_modules/@tiptap/core/src/CommandManager.ts +138 -0
  227. package/node_modules/@tiptap/core/src/Editor.ts +806 -0
  228. package/node_modules/@tiptap/core/src/EventEmitter.ts +58 -0
  229. package/node_modules/@tiptap/core/src/Extendable.ts +602 -0
  230. package/node_modules/@tiptap/core/src/Extension.ts +55 -0
  231. package/node_modules/@tiptap/core/src/ExtensionManager.ts +440 -0
  232. package/node_modules/@tiptap/core/src/InputRule.ts +290 -0
  233. package/node_modules/@tiptap/core/src/Mark.ts +211 -0
  234. package/node_modules/@tiptap/core/src/MarkView.ts +122 -0
  235. package/node_modules/@tiptap/core/src/Node.ts +377 -0
  236. package/node_modules/@tiptap/core/src/NodePos.ts +257 -0
  237. package/node_modules/@tiptap/core/src/NodeView.ts +339 -0
  238. package/node_modules/@tiptap/core/src/PasteRule.ts +373 -0
  239. package/node_modules/@tiptap/core/src/Tracker.ts +36 -0
  240. package/node_modules/@tiptap/core/src/__tests__/transformPastedHTML.test.ts +575 -0
  241. package/node_modules/@tiptap/core/src/commands/blur.ts +29 -0
  242. package/node_modules/@tiptap/core/src/commands/clearContent.ts +25 -0
  243. package/node_modules/@tiptap/core/src/commands/clearNodes.ts +57 -0
  244. package/node_modules/@tiptap/core/src/commands/command.ts +22 -0
  245. package/node_modules/@tiptap/core/src/commands/createParagraphNear.ts +21 -0
  246. package/node_modules/@tiptap/core/src/commands/cut.ts +36 -0
  247. package/node_modules/@tiptap/core/src/commands/deleteCurrentNode.ts +44 -0
  248. package/node_modules/@tiptap/core/src/commands/deleteNode.ts +41 -0
  249. package/node_modules/@tiptap/core/src/commands/deleteRange.ts +26 -0
  250. package/node_modules/@tiptap/core/src/commands/deleteSelection.ts +21 -0
  251. package/node_modules/@tiptap/core/src/commands/enter.ts +19 -0
  252. package/node_modules/@tiptap/core/src/commands/exitCode.ts +21 -0
  253. package/node_modules/@tiptap/core/src/commands/extendMarkRange.ts +51 -0
  254. package/node_modules/@tiptap/core/src/commands/first.ts +26 -0
  255. package/node_modules/@tiptap/core/src/commands/focus.ts +108 -0
  256. package/node_modules/@tiptap/core/src/commands/forEach.ts +24 -0
  257. package/node_modules/@tiptap/core/src/commands/index.ts +57 -0
  258. package/node_modules/@tiptap/core/src/commands/insertContent.ts +46 -0
  259. package/node_modules/@tiptap/core/src/commands/insertContentAt.ts +212 -0
  260. package/node_modules/@tiptap/core/src/commands/join.ts +69 -0
  261. package/node_modules/@tiptap/core/src/commands/joinItemBackward.ts +37 -0
  262. package/node_modules/@tiptap/core/src/commands/joinItemForward.ts +37 -0
  263. package/node_modules/@tiptap/core/src/commands/joinTextblockBackward.ts +20 -0
  264. package/node_modules/@tiptap/core/src/commands/joinTextblockForward.ts +20 -0
  265. package/node_modules/@tiptap/core/src/commands/keyboardShortcut.ts +100 -0
  266. package/node_modules/@tiptap/core/src/commands/lift.ts +34 -0
  267. package/node_modules/@tiptap/core/src/commands/liftEmptyBlock.ts +21 -0
  268. package/node_modules/@tiptap/core/src/commands/liftListItem.ts +26 -0
  269. package/node_modules/@tiptap/core/src/commands/newlineInCode.ts +21 -0
  270. package/node_modules/@tiptap/core/src/commands/resetAttributes.ts +73 -0
  271. package/node_modules/@tiptap/core/src/commands/scrollIntoView.ts +23 -0
  272. package/node_modules/@tiptap/core/src/commands/selectAll.ts +27 -0
  273. package/node_modules/@tiptap/core/src/commands/selectNodeBackward.ts +21 -0
  274. package/node_modules/@tiptap/core/src/commands/selectNodeForward.ts +21 -0
  275. package/node_modules/@tiptap/core/src/commands/selectParentNode.ts +21 -0
  276. package/node_modules/@tiptap/core/src/commands/selectTextblockEnd.ts +23 -0
  277. package/node_modules/@tiptap/core/src/commands/selectTextblockStart.ts +23 -0
  278. package/node_modules/@tiptap/core/src/commands/setContent.ts +76 -0
  279. package/node_modules/@tiptap/core/src/commands/setMark.ts +118 -0
  280. package/node_modules/@tiptap/core/src/commands/setMeta.ts +25 -0
  281. package/node_modules/@tiptap/core/src/commands/setNode.ts +57 -0
  282. package/node_modules/@tiptap/core/src/commands/setNodeSelection.ts +31 -0
  283. package/node_modules/@tiptap/core/src/commands/setTextDirection.ts +51 -0
  284. package/node_modules/@tiptap/core/src/commands/setTextSelection.ts +35 -0
  285. package/node_modules/@tiptap/core/src/commands/sinkListItem.ts +26 -0
  286. package/node_modules/@tiptap/core/src/commands/splitBlock.ts +115 -0
  287. package/node_modules/@tiptap/core/src/commands/splitListItem.ts +149 -0
  288. package/node_modules/@tiptap/core/src/commands/toggleList.ts +159 -0
  289. package/node_modules/@tiptap/core/src/commands/toggleMark.ts +51 -0
  290. package/node_modules/@tiptap/core/src/commands/toggleNode.ts +47 -0
  291. package/node_modules/@tiptap/core/src/commands/toggleWrap.ts +32 -0
  292. package/node_modules/@tiptap/core/src/commands/undoInputRule.ts +49 -0
  293. package/node_modules/@tiptap/core/src/commands/unsetAllMarks.ts +32 -0
  294. package/node_modules/@tiptap/core/src/commands/unsetMark.ts +65 -0
  295. package/node_modules/@tiptap/core/src/commands/unsetTextDirection.ts +51 -0
  296. package/node_modules/@tiptap/core/src/commands/updateAttributes.ts +150 -0
  297. package/node_modules/@tiptap/core/src/commands/wrapIn.ts +27 -0
  298. package/node_modules/@tiptap/core/src/commands/wrapInList.ts +27 -0
  299. package/node_modules/@tiptap/core/src/extensions/clipboardTextSerializer.ts +44 -0
  300. package/node_modules/@tiptap/core/src/extensions/commands.ts +14 -0
  301. package/node_modules/@tiptap/core/src/extensions/delete.ts +89 -0
  302. package/node_modules/@tiptap/core/src/extensions/drop.ts +26 -0
  303. package/node_modules/@tiptap/core/src/extensions/editable.ts +18 -0
  304. package/node_modules/@tiptap/core/src/extensions/focusEvents.ts +41 -0
  305. package/node_modules/@tiptap/core/src/extensions/index.ts +10 -0
  306. package/node_modules/@tiptap/core/src/extensions/keymap.ts +160 -0
  307. package/node_modules/@tiptap/core/src/extensions/paste.ts +25 -0
  308. package/node_modules/@tiptap/core/src/extensions/tabindex.ts +18 -0
  309. package/node_modules/@tiptap/core/src/extensions/textDirection.ts +86 -0
  310. package/node_modules/@tiptap/core/src/helpers/MappablePosition.ts +66 -0
  311. package/node_modules/@tiptap/core/src/helpers/combineTransactionSteps.ts +21 -0
  312. package/node_modules/@tiptap/core/src/helpers/createChainableState.ts +39 -0
  313. package/node_modules/@tiptap/core/src/helpers/createDocument.ts +24 -0
  314. package/node_modules/@tiptap/core/src/helpers/createNodeFromContent.ts +119 -0
  315. package/node_modules/@tiptap/core/src/helpers/defaultBlockAt.ts +18 -0
  316. package/node_modules/@tiptap/core/src/helpers/findChildren.ts +24 -0
  317. package/node_modules/@tiptap/core/src/helpers/findChildrenInRange.ts +36 -0
  318. package/node_modules/@tiptap/core/src/helpers/findParentNode.ts +18 -0
  319. package/node_modules/@tiptap/core/src/helpers/findParentNodeClosestToPos.ts +37 -0
  320. package/node_modules/@tiptap/core/src/helpers/flattenExtensions.ts +30 -0
  321. package/node_modules/@tiptap/core/src/helpers/generateHTML.ts +18 -0
  322. package/node_modules/@tiptap/core/src/helpers/generateJSON.ts +18 -0
  323. package/node_modules/@tiptap/core/src/helpers/generateText.ts +34 -0
  324. package/node_modules/@tiptap/core/src/helpers/getAttributes.ts +29 -0
  325. package/node_modules/@tiptap/core/src/helpers/getAttributesFromExtensions.ts +122 -0
  326. package/node_modules/@tiptap/core/src/helpers/getChangedRanges.ts +85 -0
  327. package/node_modules/@tiptap/core/src/helpers/getDebugJSON.ts +54 -0
  328. package/node_modules/@tiptap/core/src/helpers/getExtensionField.ts +32 -0
  329. package/node_modules/@tiptap/core/src/helpers/getHTMLFromFragment.ts +13 -0
  330. package/node_modules/@tiptap/core/src/helpers/getMarkAttributes.ts +30 -0
  331. package/node_modules/@tiptap/core/src/helpers/getMarkRange.ts +90 -0
  332. package/node_modules/@tiptap/core/src/helpers/getMarkType.ts +13 -0
  333. package/node_modules/@tiptap/core/src/helpers/getMarksBetween.ts +44 -0
  334. package/node_modules/@tiptap/core/src/helpers/getNodeAtPosition.ts +29 -0
  335. package/node_modules/@tiptap/core/src/helpers/getNodeAttributes.ts +22 -0
  336. package/node_modules/@tiptap/core/src/helpers/getNodeType.ts +13 -0
  337. package/node_modules/@tiptap/core/src/helpers/getRenderedAttributes.ts +23 -0
  338. package/node_modules/@tiptap/core/src/helpers/getSchema.ts +12 -0
  339. package/node_modules/@tiptap/core/src/helpers/getSchemaByResolvedExtensions.ts +183 -0
  340. package/node_modules/@tiptap/core/src/helpers/getSchemaTypeByName.ts +11 -0
  341. package/node_modules/@tiptap/core/src/helpers/getSchemaTypeNameByName.ts +19 -0
  342. package/node_modules/@tiptap/core/src/helpers/getSplittedAttributes.ts +28 -0
  343. package/node_modules/@tiptap/core/src/helpers/getText.ts +28 -0
  344. package/node_modules/@tiptap/core/src/helpers/getTextBetween.ts +52 -0
  345. package/node_modules/@tiptap/core/src/helpers/getTextContentFromNodes.ts +29 -0
  346. package/node_modules/@tiptap/core/src/helpers/getTextSerializersFromSchema.ts +16 -0
  347. package/node_modules/@tiptap/core/src/helpers/index.ts +55 -0
  348. package/node_modules/@tiptap/core/src/helpers/injectExtensionAttributesToParseRule.ts +47 -0
  349. package/node_modules/@tiptap/core/src/helpers/isActive.ts +23 -0
  350. package/node_modules/@tiptap/core/src/helpers/isAtEndOfNode.ts +29 -0
  351. package/node_modules/@tiptap/core/src/helpers/isAtStartOfNode.ts +11 -0
  352. package/node_modules/@tiptap/core/src/helpers/isExtensionRulesEnabled.ts +13 -0
  353. package/node_modules/@tiptap/core/src/helpers/isList.ts +27 -0
  354. package/node_modules/@tiptap/core/src/helpers/isMarkActive.ts +94 -0
  355. package/node_modules/@tiptap/core/src/helpers/isNodeActive.ts +51 -0
  356. package/node_modules/@tiptap/core/src/helpers/isNodeEmpty.ts +62 -0
  357. package/node_modules/@tiptap/core/src/helpers/isNodeSelection.ts +5 -0
  358. package/node_modules/@tiptap/core/src/helpers/isTextSelection.ts +5 -0
  359. package/node_modules/@tiptap/core/src/helpers/posToDOMRect.ts +35 -0
  360. package/node_modules/@tiptap/core/src/helpers/resolveExtensions.ts +25 -0
  361. package/node_modules/@tiptap/core/src/helpers/resolveFocusPosition.ts +31 -0
  362. package/node_modules/@tiptap/core/src/helpers/rewriteUnknownContent.ts +149 -0
  363. package/node_modules/@tiptap/core/src/helpers/selectionToInsertionEnd.ts +29 -0
  364. package/node_modules/@tiptap/core/src/helpers/sortExtensions.ts +26 -0
  365. package/node_modules/@tiptap/core/src/helpers/splitExtensions.ts +16 -0
  366. package/node_modules/@tiptap/core/src/index.ts +28 -0
  367. package/node_modules/@tiptap/core/src/inputRules/index.ts +5 -0
  368. package/node_modules/@tiptap/core/src/inputRules/markInputRule.ts +68 -0
  369. package/node_modules/@tiptap/core/src/inputRules/nodeInputRule.ts +73 -0
  370. package/node_modules/@tiptap/core/src/inputRules/textInputRule.ts +35 -0
  371. package/node_modules/@tiptap/core/src/inputRules/textblockTypeInputRule.ts +35 -0
  372. package/node_modules/@tiptap/core/src/inputRules/wrappingInputRule.ts +82 -0
  373. package/node_modules/@tiptap/core/src/jsx-runtime.ts +65 -0
  374. package/node_modules/@tiptap/core/src/lib/ResizableNodeView.ts +1060 -0
  375. package/node_modules/@tiptap/core/src/lib/index.ts +1 -0
  376. package/node_modules/@tiptap/core/src/pasteRules/index.ts +3 -0
  377. package/node_modules/@tiptap/core/src/pasteRules/markPasteRule.ts +71 -0
  378. package/node_modules/@tiptap/core/src/pasteRules/nodePasteRule.ts +44 -0
  379. package/node_modules/@tiptap/core/src/pasteRules/textPasteRule.ts +34 -0
  380. package/node_modules/@tiptap/core/src/style.ts +71 -0
  381. package/node_modules/@tiptap/core/src/types.ts +1058 -0
  382. package/node_modules/@tiptap/core/src/utilities/callOrReturn.ts +21 -0
  383. package/node_modules/@tiptap/core/src/utilities/canInsertNode.ts +30 -0
  384. package/node_modules/@tiptap/core/src/utilities/createStyleTag.ts +21 -0
  385. package/node_modules/@tiptap/core/src/utilities/deleteProps.ts +16 -0
  386. package/node_modules/@tiptap/core/src/utilities/elementFromString.ts +27 -0
  387. package/node_modules/@tiptap/core/src/utilities/escapeForRegEx.ts +4 -0
  388. package/node_modules/@tiptap/core/src/utilities/findDuplicates.ts +8 -0
  389. package/node_modules/@tiptap/core/src/utilities/fromString.ts +19 -0
  390. package/node_modules/@tiptap/core/src/utilities/index.ts +26 -0
  391. package/node_modules/@tiptap/core/src/utilities/isAndroid.ts +3 -0
  392. package/node_modules/@tiptap/core/src/utilities/isEmptyObject.ts +3 -0
  393. package/node_modules/@tiptap/core/src/utilities/isFirefox.ts +11 -0
  394. package/node_modules/@tiptap/core/src/utilities/isFunction.ts +4 -0
  395. package/node_modules/@tiptap/core/src/utilities/isMacOS.ts +3 -0
  396. package/node_modules/@tiptap/core/src/utilities/isNumber.ts +3 -0
  397. package/node_modules/@tiptap/core/src/utilities/isPlainObject.ts +13 -0
  398. package/node_modules/@tiptap/core/src/utilities/isRegExp.ts +3 -0
  399. package/node_modules/@tiptap/core/src/utilities/isSafari.ts +11 -0
  400. package/node_modules/@tiptap/core/src/utilities/isString.ts +3 -0
  401. package/node_modules/@tiptap/core/src/utilities/isiOS.ts +7 -0
  402. package/node_modules/@tiptap/core/src/utilities/markdown/attributeUtils.ts +130 -0
  403. package/node_modules/@tiptap/core/src/utilities/markdown/createAtomBlockMarkdownSpec.ts +141 -0
  404. package/node_modules/@tiptap/core/src/utilities/markdown/createBlockMarkdownSpec.ts +225 -0
  405. package/node_modules/@tiptap/core/src/utilities/markdown/createInlineMarkdownSpec.ts +282 -0
  406. package/node_modules/@tiptap/core/src/utilities/markdown/index.ts +13 -0
  407. package/node_modules/@tiptap/core/src/utilities/markdown/parseIndentedBlocks.ts +194 -0
  408. package/node_modules/@tiptap/core/src/utilities/markdown/renderNestedMarkdownContent.ts +96 -0
  409. package/node_modules/@tiptap/core/src/utilities/mergeAttributes.ts +109 -0
  410. package/node_modules/@tiptap/core/src/utilities/mergeDeep.ts +17 -0
  411. package/node_modules/@tiptap/core/src/utilities/minMax.ts +3 -0
  412. package/node_modules/@tiptap/core/src/utilities/objectIncludes.ts +30 -0
  413. package/node_modules/@tiptap/core/src/utilities/removeDuplicates.ts +13 -0
  414. package/node_modules/@tiptap/extension-bubble-menu/LICENSE.md +21 -0
  415. package/node_modules/@tiptap/extension-bubble-menu/README.md +18 -0
  416. package/node_modules/@tiptap/extension-bubble-menu/dist/index.cjs +462 -0
  417. package/node_modules/@tiptap/extension-bubble-menu/dist/index.cjs.map +1 -0
  418. package/node_modules/@tiptap/extension-bubble-menu/dist/index.d.cts +169 -0
  419. package/node_modules/@tiptap/extension-bubble-menu/dist/index.d.ts +169 -0
  420. package/node_modules/@tiptap/extension-bubble-menu/dist/index.js +443 -0
  421. package/node_modules/@tiptap/extension-bubble-menu/dist/index.js.map +1 -0
  422. package/node_modules/@tiptap/extension-bubble-menu/package.json +54 -0
  423. package/node_modules/@tiptap/extension-bubble-menu/src/bubble-menu-plugin.ts +650 -0
  424. package/node_modules/@tiptap/extension-bubble-menu/src/bubble-menu.ts +50 -0
  425. package/node_modules/@tiptap/extension-bubble-menu/src/index.ts +6 -0
  426. package/node_modules/@tiptap/extension-floating-menu/LICENSE.md +21 -0
  427. package/node_modules/@tiptap/extension-floating-menu/README.md +18 -0
  428. package/node_modules/@tiptap/extension-floating-menu/dist/index.cjs +380 -0
  429. package/node_modules/@tiptap/extension-floating-menu/dist/index.cjs.map +1 -0
  430. package/node_modules/@tiptap/extension-floating-menu/dist/index.d.cts +179 -0
  431. package/node_modules/@tiptap/extension-floating-menu/dist/index.d.ts +179 -0
  432. package/node_modules/@tiptap/extension-floating-menu/dist/index.js +361 -0
  433. package/node_modules/@tiptap/extension-floating-menu/dist/index.js.map +1 -0
  434. package/node_modules/@tiptap/extension-floating-menu/package.json +53 -0
  435. package/node_modules/@tiptap/extension-floating-menu/src/floating-menu-plugin.ts +525 -0
  436. package/node_modules/@tiptap/extension-floating-menu/src/floating-menu.ts +77 -0
  437. package/node_modules/@tiptap/extension-floating-menu/src/index.ts +6 -0
  438. package/node_modules/@tiptap/extension-mention/LICENSE.md +21 -0
  439. package/node_modules/@tiptap/extension-mention/README.md +18 -0
  440. package/node_modules/@tiptap/extension-mention/dist/index.cjs +277 -0
  441. package/node_modules/@tiptap/extension-mention/dist/index.cjs.map +1 -0
  442. package/node_modules/@tiptap/extension-mention/dist/index.d.cts +93 -0
  443. package/node_modules/@tiptap/extension-mention/dist/index.d.ts +93 -0
  444. package/node_modules/@tiptap/extension-mention/dist/index.js +250 -0
  445. package/node_modules/@tiptap/extension-mention/dist/index.js.map +1 -0
  446. package/node_modules/@tiptap/extension-mention/package.json +52 -0
  447. package/node_modules/@tiptap/extension-mention/src/index.ts +5 -0
  448. package/node_modules/@tiptap/extension-mention/src/mention.ts +357 -0
  449. package/node_modules/@tiptap/extension-mention/src/utils/get-default-suggestion-attributes.ts +89 -0
  450. package/node_modules/@tiptap/pm/LICENSE.md +21 -0
  451. package/node_modules/@tiptap/pm/README.md +22 -0
  452. package/node_modules/@tiptap/pm/changeset/index.ts +1 -0
  453. package/node_modules/@tiptap/pm/collab/index.ts +1 -0
  454. package/node_modules/@tiptap/pm/commands/index.ts +1 -0
  455. package/node_modules/@tiptap/pm/dist/changeset/index.cjs +2 -0
  456. package/node_modules/@tiptap/pm/dist/changeset/index.d.cts +18 -0
  457. package/node_modules/@tiptap/pm/dist/changeset/index.d.ts +18 -0
  458. package/node_modules/@tiptap/pm/dist/changeset/index.js +2 -0
  459. package/node_modules/@tiptap/pm/dist/collab/index.cjs +2 -0
  460. package/node_modules/@tiptap/pm/dist/collab/index.d.cts +1 -0
  461. package/node_modules/@tiptap/pm/dist/collab/index.d.ts +1 -0
  462. package/node_modules/@tiptap/pm/dist/collab/index.js +2 -0
  463. package/node_modules/@tiptap/pm/dist/commands/index.cjs +2 -0
  464. package/node_modules/@tiptap/pm/dist/commands/index.d.cts +1 -0
  465. package/node_modules/@tiptap/pm/dist/commands/index.d.ts +1 -0
  466. package/node_modules/@tiptap/pm/dist/commands/index.js +2 -0
  467. package/node_modules/@tiptap/pm/dist/dropcursor/index.cjs +2 -0
  468. package/node_modules/@tiptap/pm/dist/dropcursor/index.d.cts +1 -0
  469. package/node_modules/@tiptap/pm/dist/dropcursor/index.d.ts +1 -0
  470. package/node_modules/@tiptap/pm/dist/dropcursor/index.js +2 -0
  471. package/node_modules/@tiptap/pm/dist/gapcursor/index.cjs +2 -0
  472. package/node_modules/@tiptap/pm/dist/gapcursor/index.d.cts +1 -0
  473. package/node_modules/@tiptap/pm/dist/gapcursor/index.d.ts +1 -0
  474. package/node_modules/@tiptap/pm/dist/gapcursor/index.js +2 -0
  475. package/node_modules/@tiptap/pm/dist/history/index.cjs +2 -0
  476. package/node_modules/@tiptap/pm/dist/history/index.d.cts +1 -0
  477. package/node_modules/@tiptap/pm/dist/history/index.d.ts +1 -0
  478. package/node_modules/@tiptap/pm/dist/history/index.js +2 -0
  479. package/node_modules/@tiptap/pm/dist/inputrules/index.cjs +2 -0
  480. package/node_modules/@tiptap/pm/dist/inputrules/index.d.cts +1 -0
  481. package/node_modules/@tiptap/pm/dist/inputrules/index.d.ts +1 -0
  482. package/node_modules/@tiptap/pm/dist/inputrules/index.js +2 -0
  483. package/node_modules/@tiptap/pm/dist/keymap/index.cjs +2 -0
  484. package/node_modules/@tiptap/pm/dist/keymap/index.d.cts +1 -0
  485. package/node_modules/@tiptap/pm/dist/keymap/index.d.ts +1 -0
  486. package/node_modules/@tiptap/pm/dist/keymap/index.js +2 -0
  487. package/node_modules/@tiptap/pm/dist/markdown/index.cjs +2 -0
  488. package/node_modules/@tiptap/pm/dist/markdown/index.d.cts +1 -0
  489. package/node_modules/@tiptap/pm/dist/markdown/index.d.ts +1 -0
  490. package/node_modules/@tiptap/pm/dist/markdown/index.js +2 -0
  491. package/node_modules/@tiptap/pm/dist/menu/index.cjs +2 -0
  492. package/node_modules/@tiptap/pm/dist/menu/index.d.cts +1 -0
  493. package/node_modules/@tiptap/pm/dist/menu/index.d.ts +1 -0
  494. package/node_modules/@tiptap/pm/dist/menu/index.js +2 -0
  495. package/node_modules/@tiptap/pm/dist/model/index.cjs +2 -0
  496. package/node_modules/@tiptap/pm/dist/model/index.d.cts +1 -0
  497. package/node_modules/@tiptap/pm/dist/model/index.d.ts +1 -0
  498. package/node_modules/@tiptap/pm/dist/model/index.js +2 -0
  499. package/node_modules/@tiptap/pm/dist/schema-basic/index.cjs +2 -0
  500. package/node_modules/@tiptap/pm/dist/schema-basic/index.d.cts +1 -0
  501. package/node_modules/@tiptap/pm/dist/schema-basic/index.d.ts +1 -0
  502. package/node_modules/@tiptap/pm/dist/schema-basic/index.js +2 -0
  503. package/node_modules/@tiptap/pm/dist/schema-list/index.cjs +2 -0
  504. package/node_modules/@tiptap/pm/dist/schema-list/index.d.cts +1 -0
  505. package/node_modules/@tiptap/pm/dist/schema-list/index.d.ts +1 -0
  506. package/node_modules/@tiptap/pm/dist/schema-list/index.js +2 -0
  507. package/node_modules/@tiptap/pm/dist/state/index.cjs +2 -0
  508. package/node_modules/@tiptap/pm/dist/state/index.d.cts +1 -0
  509. package/node_modules/@tiptap/pm/dist/state/index.d.ts +1 -0
  510. package/node_modules/@tiptap/pm/dist/state/index.js +2 -0
  511. package/node_modules/@tiptap/pm/dist/tables/index.cjs +2 -0
  512. package/node_modules/@tiptap/pm/dist/tables/index.d.cts +1 -0
  513. package/node_modules/@tiptap/pm/dist/tables/index.d.ts +1 -0
  514. package/node_modules/@tiptap/pm/dist/tables/index.js +2 -0
  515. package/node_modules/@tiptap/pm/dist/trailing-node/index.cjs +2 -0
  516. package/node_modules/@tiptap/pm/dist/trailing-node/index.d.cts +1 -0
  517. package/node_modules/@tiptap/pm/dist/trailing-node/index.d.ts +1 -0
  518. package/node_modules/@tiptap/pm/dist/trailing-node/index.js +2 -0
  519. package/node_modules/@tiptap/pm/dist/transform/index.cjs +2 -0
  520. package/node_modules/@tiptap/pm/dist/transform/index.d.cts +1 -0
  521. package/node_modules/@tiptap/pm/dist/transform/index.d.ts +1 -0
  522. package/node_modules/@tiptap/pm/dist/transform/index.js +2 -0
  523. package/node_modules/@tiptap/pm/dist/view/index.cjs +2 -0
  524. package/node_modules/@tiptap/pm/dist/view/index.d.cts +1 -0
  525. package/node_modules/@tiptap/pm/dist/view/index.d.ts +1 -0
  526. package/node_modules/@tiptap/pm/dist/view/index.js +2 -0
  527. package/node_modules/@tiptap/pm/dropcursor/index.ts +1 -0
  528. package/node_modules/@tiptap/pm/gapcursor/index.ts +1 -0
  529. package/node_modules/@tiptap/pm/history/index.ts +1 -0
  530. package/node_modules/@tiptap/pm/inputrules/index.ts +1 -0
  531. package/node_modules/@tiptap/pm/keymap/index.ts +1 -0
  532. package/node_modules/@tiptap/pm/markdown/index.ts +1 -0
  533. package/node_modules/@tiptap/pm/menu/index.ts +1 -0
  534. package/node_modules/@tiptap/pm/model/index.ts +1 -0
  535. package/node_modules/@tiptap/pm/package.json +211 -0
  536. package/node_modules/@tiptap/pm/schema-basic/index.ts +1 -0
  537. package/node_modules/@tiptap/pm/schema-list/index.ts +1 -0
  538. package/node_modules/@tiptap/pm/state/index.ts +1 -0
  539. package/node_modules/@tiptap/pm/tables/index.ts +1 -0
  540. package/node_modules/@tiptap/pm/trailing-node/index.ts +1 -0
  541. package/node_modules/@tiptap/pm/transform/index.ts +1 -0
  542. package/node_modules/@tiptap/pm/view/index.ts +1 -0
  543. package/node_modules/@tiptap/react/LICENSE.md +21 -0
  544. package/node_modules/@tiptap/react/README.md +18 -0
  545. package/node_modules/@tiptap/react/dist/index.cjs +1195 -0
  546. package/node_modules/@tiptap/react/dist/index.cjs.map +1 -0
  547. package/node_modules/@tiptap/react/dist/index.d.cts +534 -0
  548. package/node_modules/@tiptap/react/dist/index.d.ts +534 -0
  549. package/node_modules/@tiptap/react/dist/index.js +1131 -0
  550. package/node_modules/@tiptap/react/dist/index.js.map +1 -0
  551. package/node_modules/@tiptap/react/dist/menus/index.cjs +499 -0
  552. package/node_modules/@tiptap/react/dist/menus/index.cjs.map +1 -0
  553. package/node_modules/@tiptap/react/dist/menus/index.d.cts +19 -0
  554. package/node_modules/@tiptap/react/dist/menus/index.d.ts +19 -0
  555. package/node_modules/@tiptap/react/dist/menus/index.js +461 -0
  556. package/node_modules/@tiptap/react/dist/menus/index.js.map +1 -0
  557. package/node_modules/@tiptap/react/package.json +76 -0
  558. package/node_modules/@tiptap/react/src/Context.tsx +60 -0
  559. package/node_modules/@tiptap/react/src/Editor.ts +13 -0
  560. package/node_modules/@tiptap/react/src/EditorContent.tsx +229 -0
  561. package/node_modules/@tiptap/react/src/NodeViewContent.tsx +30 -0
  562. package/node_modules/@tiptap/react/src/NodeViewWrapper.tsx +27 -0
  563. package/node_modules/@tiptap/react/src/ReactMarkViewRenderer.tsx +106 -0
  564. package/node_modules/@tiptap/react/src/ReactNodeViewRenderer.tsx +387 -0
  565. package/node_modules/@tiptap/react/src/ReactRenderer.tsx +282 -0
  566. package/node_modules/@tiptap/react/src/Tiptap.tsx +224 -0
  567. package/node_modules/@tiptap/react/src/index.ts +13 -0
  568. package/node_modules/@tiptap/react/src/menus/BubbleMenu.spec.ts +174 -0
  569. package/node_modules/@tiptap/react/src/menus/BubbleMenu.tsx +153 -0
  570. package/node_modules/@tiptap/react/src/menus/FloatingMenu.spec.ts +164 -0
  571. package/node_modules/@tiptap/react/src/menus/FloatingMenu.tsx +137 -0
  572. package/node_modules/@tiptap/react/src/menus/getAutoPluginKey.ts +5 -0
  573. package/node_modules/@tiptap/react/src/menus/index.ts +2 -0
  574. package/node_modules/@tiptap/react/src/menus/useMenuElementProps.ts +354 -0
  575. package/node_modules/@tiptap/react/src/types.ts +6 -0
  576. package/node_modules/@tiptap/react/src/useEditor.ts +382 -0
  577. package/node_modules/@tiptap/react/src/useEditorState.ts +173 -0
  578. package/node_modules/@tiptap/react/src/useReactNodeView.ts +28 -0
  579. package/node_modules/@tiptap/suggestion/LICENSE.md +21 -0
  580. package/node_modules/@tiptap/suggestion/README.md +18 -0
  581. package/node_modules/@tiptap/suggestion/dist/index.cjs +369 -0
  582. package/node_modules/@tiptap/suggestion/dist/index.cjs.map +1 -0
  583. package/node_modules/@tiptap/suggestion/dist/index.d.cts +213 -0
  584. package/node_modules/@tiptap/suggestion/dist/index.d.ts +213 -0
  585. package/node_modules/@tiptap/suggestion/dist/index.js +339 -0
  586. package/node_modules/@tiptap/suggestion/dist/index.js.map +1 -0
  587. package/node_modules/@tiptap/suggestion/package.json +50 -0
  588. package/node_modules/@tiptap/suggestion/src/__tests__/suggestion.test.ts +127 -0
  589. package/node_modules/@tiptap/suggestion/src/findSuggestionMatch.ts +79 -0
  590. package/node_modules/@tiptap/suggestion/src/index.ts +8 -0
  591. package/node_modules/@tiptap/suggestion/src/suggestion.ts +585 -0
  592. package/node_modules/@types/linkify-it/LICENSE +21 -0
  593. package/node_modules/@types/linkify-it/README.md +15 -0
  594. package/node_modules/@types/linkify-it/build/index.cjs.d.ts +178 -0
  595. package/node_modules/@types/linkify-it/index.d.mts +174 -0
  596. package/node_modules/@types/linkify-it/index.d.ts +3 -0
  597. package/node_modules/@types/linkify-it/package.json +50 -0
  598. package/node_modules/@types/markdown-it/LICENSE +21 -0
  599. package/node_modules/@types/markdown-it/README.md +15 -0
  600. package/node_modules/@types/markdown-it/dist/index.cjs.d.ts +1236 -0
  601. package/node_modules/@types/markdown-it/dist/markdown-it.d.ts +5 -0
  602. package/node_modules/@types/markdown-it/dist/markdown-it.min.d.ts +5 -0
  603. package/node_modules/@types/markdown-it/index.d.mts +1 -0
  604. package/node_modules/@types/markdown-it/index.d.ts +3 -0
  605. package/node_modules/@types/markdown-it/lib/common/html_blocks.d.mts +7 -0
  606. package/node_modules/@types/markdown-it/lib/common/html_re.d.mts +2 -0
  607. package/node_modules/@types/markdown-it/lib/common/utils.d.mts +62 -0
  608. package/node_modules/@types/markdown-it/lib/helpers/index.d.mts +5 -0
  609. package/node_modules/@types/markdown-it/lib/helpers/parse_link_destination.d.mts +7 -0
  610. package/node_modules/@types/markdown-it/lib/helpers/parse_link_label.d.mts +3 -0
  611. package/node_modules/@types/markdown-it/lib/helpers/parse_link_title.d.mts +29 -0
  612. package/node_modules/@types/markdown-it/lib/index.d.mts +404 -0
  613. package/node_modules/@types/markdown-it/lib/parser_block.d.mts +25 -0
  614. package/node_modules/@types/markdown-it/lib/parser_core.d.mts +18 -0
  615. package/node_modules/@types/markdown-it/lib/parser_inline.d.mts +38 -0
  616. package/node_modules/@types/markdown-it/lib/renderer.d.mts +96 -0
  617. package/node_modules/@types/markdown-it/lib/ruler.d.mts +158 -0
  618. package/node_modules/@types/markdown-it/lib/rules_block/state_block.d.mts +124 -0
  619. package/node_modules/@types/markdown-it/lib/rules_core/state_core.d.mts +18 -0
  620. package/node_modules/@types/markdown-it/lib/rules_inline/state_inline.d.mts +73 -0
  621. package/node_modules/@types/markdown-it/lib/token.d.mts +108 -0
  622. package/node_modules/@types/markdown-it/package.json +54 -0
  623. package/node_modules/@types/mdurl/LICENSE +21 -0
  624. package/node_modules/@types/mdurl/README.md +15 -0
  625. package/node_modules/@types/mdurl/build/index.cjs.d.ts +52 -0
  626. package/node_modules/@types/mdurl/index.d.mts +6 -0
  627. package/node_modules/@types/mdurl/index.d.ts +3 -0
  628. package/node_modules/@types/mdurl/lib/decode.d.mts +10 -0
  629. package/node_modules/@types/mdurl/lib/encode.d.mts +15 -0
  630. package/node_modules/@types/mdurl/lib/format.d.mts +3 -0
  631. package/node_modules/@types/mdurl/lib/parse.d.mts +18 -0
  632. package/node_modules/@types/mdurl/package.json +36 -0
  633. package/node_modules/@types/use-sync-external-store/LICENSE +21 -0
  634. package/node_modules/@types/use-sync-external-store/README.md +15 -0
  635. package/node_modules/@types/use-sync-external-store/index.d.ts +5 -0
  636. package/node_modules/@types/use-sync-external-store/package.json +30 -0
  637. package/node_modules/@types/use-sync-external-store/shim/index.d.ts +1 -0
  638. package/node_modules/@types/use-sync-external-store/shim/with-selector.d.ts +1 -0
  639. package/node_modules/@types/use-sync-external-store/with-selector.d.ts +7 -0
  640. package/node_modules/argparse/LICENSE +254 -0
  641. package/node_modules/argparse/README.md +84 -0
  642. package/node_modules/argparse/argparse.js +3707 -0
  643. package/node_modules/argparse/lib/sub.js +67 -0
  644. package/node_modules/argparse/lib/textwrap.js +440 -0
  645. package/node_modules/argparse/package.json +31 -0
  646. package/node_modules/crelt/LICENSE +19 -0
  647. package/node_modules/crelt/README.md +23 -0
  648. package/node_modules/crelt/dist/index.cjs +31 -0
  649. package/node_modules/crelt/dist/index.d.cts +4 -0
  650. package/node_modules/crelt/index.d.ts +4 -0
  651. package/node_modules/crelt/index.js +28 -0
  652. package/node_modules/crelt/package.json +35 -0
  653. package/node_modules/crelt/rollup.config.js +13 -0
  654. package/node_modules/entities/LICENSE +11 -0
  655. package/node_modules/entities/lib/decode.d.ts +211 -0
  656. package/node_modules/entities/lib/decode.d.ts.map +1 -0
  657. package/node_modules/entities/lib/decode.js +536 -0
  658. package/node_modules/entities/lib/decode.js.map +1 -0
  659. package/node_modules/entities/lib/decode_codepoint.d.ts +19 -0
  660. package/node_modules/entities/lib/decode_codepoint.d.ts.map +1 -0
  661. package/node_modules/entities/lib/decode_codepoint.js +76 -0
  662. package/node_modules/entities/lib/decode_codepoint.js.map +1 -0
  663. package/node_modules/entities/lib/encode.d.ts +22 -0
  664. package/node_modules/entities/lib/encode.d.ts.map +1 -0
  665. package/node_modules/entities/lib/encode.js +77 -0
  666. package/node_modules/entities/lib/encode.js.map +1 -0
  667. package/node_modules/entities/lib/escape.d.ts +43 -0
  668. package/node_modules/entities/lib/escape.d.ts.map +1 -0
  669. package/node_modules/entities/lib/escape.js +122 -0
  670. package/node_modules/entities/lib/escape.js.map +1 -0
  671. package/node_modules/entities/lib/esm/decode.d.ts +211 -0
  672. package/node_modules/entities/lib/esm/decode.d.ts.map +1 -0
  673. package/node_modules/entities/lib/esm/decode.js +496 -0
  674. package/node_modules/entities/lib/esm/decode.js.map +1 -0
  675. package/node_modules/entities/lib/esm/decode_codepoint.d.ts +19 -0
  676. package/node_modules/entities/lib/esm/decode_codepoint.d.ts.map +1 -0
  677. package/node_modules/entities/lib/esm/decode_codepoint.js +71 -0
  678. package/node_modules/entities/lib/esm/decode_codepoint.js.map +1 -0
  679. package/node_modules/entities/lib/esm/encode.d.ts +22 -0
  680. package/node_modules/entities/lib/esm/encode.d.ts.map +1 -0
  681. package/node_modules/entities/lib/esm/encode.js +69 -0
  682. package/node_modules/entities/lib/esm/encode.js.map +1 -0
  683. package/node_modules/entities/lib/esm/escape.d.ts +43 -0
  684. package/node_modules/entities/lib/esm/escape.d.ts.map +1 -0
  685. package/node_modules/entities/lib/esm/escape.js +116 -0
  686. package/node_modules/entities/lib/esm/escape.js.map +1 -0
  687. package/node_modules/entities/lib/esm/generated/decode-data-html.d.ts +3 -0
  688. package/node_modules/entities/lib/esm/generated/decode-data-html.d.ts.map +1 -0
  689. package/node_modules/entities/lib/esm/generated/decode-data-html.js +7 -0
  690. package/node_modules/entities/lib/esm/generated/decode-data-html.js.map +1 -0
  691. package/node_modules/entities/lib/esm/generated/decode-data-xml.d.ts +3 -0
  692. package/node_modules/entities/lib/esm/generated/decode-data-xml.d.ts.map +1 -0
  693. package/node_modules/entities/lib/esm/generated/decode-data-xml.js +7 -0
  694. package/node_modules/entities/lib/esm/generated/decode-data-xml.js.map +1 -0
  695. package/node_modules/entities/lib/esm/generated/encode-html.d.ts +8 -0
  696. package/node_modules/entities/lib/esm/generated/encode-html.d.ts.map +1 -0
  697. package/node_modules/entities/lib/esm/generated/encode-html.js +10 -0
  698. package/node_modules/entities/lib/esm/generated/encode-html.js.map +1 -0
  699. package/node_modules/entities/lib/esm/index.d.ts +96 -0
  700. package/node_modules/entities/lib/esm/index.d.ts.map +1 -0
  701. package/node_modules/entities/lib/esm/index.js +99 -0
  702. package/node_modules/entities/lib/esm/index.js.map +1 -0
  703. package/node_modules/entities/lib/esm/package.json +1 -0
  704. package/node_modules/entities/lib/generated/decode-data-html.d.ts +3 -0
  705. package/node_modules/entities/lib/generated/decode-data-html.d.ts.map +1 -0
  706. package/node_modules/entities/lib/generated/decode-data-html.js +9 -0
  707. package/node_modules/entities/lib/generated/decode-data-html.js.map +1 -0
  708. package/node_modules/entities/lib/generated/decode-data-xml.d.ts +3 -0
  709. package/node_modules/entities/lib/generated/decode-data-xml.d.ts.map +1 -0
  710. package/node_modules/entities/lib/generated/decode-data-xml.js +9 -0
  711. package/node_modules/entities/lib/generated/decode-data-xml.js.map +1 -0
  712. package/node_modules/entities/lib/generated/encode-html.d.ts +8 -0
  713. package/node_modules/entities/lib/generated/encode-html.d.ts.map +1 -0
  714. package/node_modules/entities/lib/generated/encode-html.js +12 -0
  715. package/node_modules/entities/lib/generated/encode-html.js.map +1 -0
  716. package/node_modules/entities/lib/index.d.ts +96 -0
  717. package/node_modules/entities/lib/index.d.ts.map +1 -0
  718. package/node_modules/entities/lib/index.js +126 -0
  719. package/node_modules/entities/lib/index.js.map +1 -0
  720. package/node_modules/entities/package.json +90 -0
  721. package/node_modules/entities/readme.md +122 -0
  722. package/node_modules/escape-string-regexp/index.d.ts +18 -0
  723. package/node_modules/escape-string-regexp/index.js +13 -0
  724. package/node_modules/escape-string-regexp/license +9 -0
  725. package/node_modules/escape-string-regexp/package.json +38 -0
  726. package/node_modules/escape-string-regexp/readme.md +34 -0
  727. package/node_modules/fast-equals/LICENSE +21 -0
  728. package/node_modules/fast-equals/README.md +477 -0
  729. package/node_modules/fast-equals/dist/cjs/comparator.d.cts +60 -0
  730. package/node_modules/fast-equals/dist/cjs/equals.d.cts +62 -0
  731. package/node_modules/fast-equals/dist/cjs/index.cjs +653 -0
  732. package/node_modules/fast-equals/dist/cjs/index.cjs.map +1 -0
  733. package/node_modules/fast-equals/dist/cjs/index.d.cts +66 -0
  734. package/node_modules/fast-equals/dist/cjs/internalTypes.d.cts +178 -0
  735. package/node_modules/fast-equals/dist/cjs/utils.d.cts +33 -0
  736. package/node_modules/fast-equals/dist/es/comparator.d.mts +60 -0
  737. package/node_modules/fast-equals/dist/es/equals.d.mts +62 -0
  738. package/node_modules/fast-equals/dist/es/index.d.mts +66 -0
  739. package/node_modules/fast-equals/dist/es/index.mjs +642 -0
  740. package/node_modules/fast-equals/dist/es/index.mjs.map +1 -0
  741. package/node_modules/fast-equals/dist/es/internalTypes.d.mts +178 -0
  742. package/node_modules/fast-equals/dist/es/utils.d.mts +33 -0
  743. package/node_modules/fast-equals/dist/umd/comparator.d.ts +26 -0
  744. package/node_modules/fast-equals/dist/umd/equals.d.ts +62 -0
  745. package/node_modules/fast-equals/dist/umd/index.d.ts +47 -0
  746. package/node_modules/fast-equals/dist/umd/index.js +659 -0
  747. package/node_modules/fast-equals/dist/umd/index.js.map +1 -0
  748. package/node_modules/fast-equals/dist/umd/internalTypes.d.ts +159 -0
  749. package/node_modules/fast-equals/dist/umd/utils.d.ts +28 -0
  750. package/node_modules/fast-equals/index.d.ts +260 -0
  751. package/node_modules/fast-equals/package.json +113 -0
  752. package/node_modules/linkify-it/LICENSE +22 -0
  753. package/node_modules/linkify-it/README.md +196 -0
  754. package/node_modules/linkify-it/build/index.cjs.js +832 -0
  755. package/node_modules/linkify-it/index.mjs +642 -0
  756. package/node_modules/linkify-it/lib/re.mjs +189 -0
  757. package/node_modules/linkify-it/package.json +58 -0
  758. package/node_modules/markdown-it/LICENSE +22 -0
  759. package/node_modules/markdown-it/README.md +324 -0
  760. package/node_modules/markdown-it/bin/markdown-it.mjs +107 -0
  761. package/node_modules/markdown-it/dist/index.cjs.js +5547 -0
  762. package/node_modules/markdown-it/dist/markdown-it.js +6969 -0
  763. package/node_modules/markdown-it/dist/markdown-it.min.js +2 -0
  764. package/node_modules/markdown-it/index.mjs +1 -0
  765. package/node_modules/markdown-it/lib/common/html_blocks.mjs +67 -0
  766. package/node_modules/markdown-it/lib/common/html_re.mjs +25 -0
  767. package/node_modules/markdown-it/lib/common/utils.mjs +304 -0
  768. package/node_modules/markdown-it/lib/helpers/index.mjs +11 -0
  769. package/node_modules/markdown-it/lib/helpers/parse_link_destination.mjs +77 -0
  770. package/node_modules/markdown-it/lib/helpers/parse_link_label.mjs +49 -0
  771. package/node_modules/markdown-it/lib/helpers/parse_link_title.mjs +66 -0
  772. package/node_modules/markdown-it/lib/index.mjs +565 -0
  773. package/node_modules/markdown-it/lib/parser_block.mjs +134 -0
  774. package/node_modules/markdown-it/lib/parser_core.mjs +62 -0
  775. package/node_modules/markdown-it/lib/parser_inline.mjs +197 -0
  776. package/node_modules/markdown-it/lib/presets/commonmark.mjs +88 -0
  777. package/node_modules/markdown-it/lib/presets/default.mjs +47 -0
  778. package/node_modules/markdown-it/lib/presets/zero.mjs +70 -0
  779. package/node_modules/markdown-it/lib/renderer.mjs +322 -0
  780. package/node_modules/markdown-it/lib/ruler.mjs +340 -0
  781. package/node_modules/markdown-it/lib/rules_block/blockquote.mjs +209 -0
  782. package/node_modules/markdown-it/lib/rules_block/code.mjs +30 -0
  783. package/node_modules/markdown-it/lib/rules_block/fence.mjs +94 -0
  784. package/node_modules/markdown-it/lib/rules_block/heading.mjs +51 -0
  785. package/node_modules/markdown-it/lib/rules_block/hr.mjs +40 -0
  786. package/node_modules/markdown-it/lib/rules_block/html_block.mjs +69 -0
  787. package/node_modules/markdown-it/lib/rules_block/lheading.mjs +82 -0
  788. package/node_modules/markdown-it/lib/rules_block/list.mjs +331 -0
  789. package/node_modules/markdown-it/lib/rules_block/paragraph.mjs +46 -0
  790. package/node_modules/markdown-it/lib/rules_block/reference.mjs +212 -0
  791. package/node_modules/markdown-it/lib/rules_block/state_block.mjs +220 -0
  792. package/node_modules/markdown-it/lib/rules_block/table.mjs +228 -0
  793. package/node_modules/markdown-it/lib/rules_core/block.mjs +13 -0
  794. package/node_modules/markdown-it/lib/rules_core/inline.mjs +11 -0
  795. package/node_modules/markdown-it/lib/rules_core/linkify.mjs +134 -0
  796. package/node_modules/markdown-it/lib/rules_core/normalize.mjs +17 -0
  797. package/node_modules/markdown-it/lib/rules_core/replacements.mjs +101 -0
  798. package/node_modules/markdown-it/lib/rules_core/smartquotes.mjs +193 -0
  799. package/node_modules/markdown-it/lib/rules_core/state_core.mjs +17 -0
  800. package/node_modules/markdown-it/lib/rules_core/text_join.mjs +43 -0
  801. package/node_modules/markdown-it/lib/rules_inline/autolink.mjs +72 -0
  802. package/node_modules/markdown-it/lib/rules_inline/backticks.mjs +60 -0
  803. package/node_modules/markdown-it/lib/rules_inline/balance_pairs.mjs +124 -0
  804. package/node_modules/markdown-it/lib/rules_inline/emphasis.mjs +123 -0
  805. package/node_modules/markdown-it/lib/rules_inline/entity.mjs +51 -0
  806. package/node_modules/markdown-it/lib/rules_inline/escape.mjs +69 -0
  807. package/node_modules/markdown-it/lib/rules_inline/fragments_join.mjs +38 -0
  808. package/node_modules/markdown-it/lib/rules_inline/html_inline.mjs +50 -0
  809. package/node_modules/markdown-it/lib/rules_inline/image.mjs +138 -0
  810. package/node_modules/markdown-it/lib/rules_inline/link.mjs +139 -0
  811. package/node_modules/markdown-it/lib/rules_inline/linkify.mjs +63 -0
  812. package/node_modules/markdown-it/lib/rules_inline/newline.mjs +42 -0
  813. package/node_modules/markdown-it/lib/rules_inline/state_inline.mjs +123 -0
  814. package/node_modules/markdown-it/lib/rules_inline/strikethrough.mjs +127 -0
  815. package/node_modules/markdown-it/lib/rules_inline/text.mjs +86 -0
  816. package/node_modules/markdown-it/lib/token.mjs +191 -0
  817. package/node_modules/markdown-it/package.json +92 -0
  818. package/node_modules/mdurl/LICENSE +45 -0
  819. package/node_modules/mdurl/README.md +102 -0
  820. package/node_modules/mdurl/build/index.cjs.js +534 -0
  821. package/node_modules/mdurl/index.mjs +11 -0
  822. package/node_modules/mdurl/lib/decode.mjs +112 -0
  823. package/node_modules/mdurl/lib/encode.mjs +89 -0
  824. package/node_modules/mdurl/lib/format.mjs +21 -0
  825. package/node_modules/mdurl/lib/parse.mjs +308 -0
  826. package/node_modules/mdurl/package.json +37 -0
  827. package/node_modules/orderedmap/LICENSE +19 -0
  828. package/node_modules/orderedmap/README.md +69 -0
  829. package/node_modules/orderedmap/dist/index.cjs +139 -0
  830. package/node_modules/orderedmap/dist/index.d.cts +33 -0
  831. package/node_modules/orderedmap/dist/index.d.ts +33 -0
  832. package/node_modules/orderedmap/dist/index.js +137 -0
  833. package/node_modules/orderedmap/package.json +39 -0
  834. package/node_modules/prosemirror-changeset/CHANGELOG.md +147 -0
  835. package/node_modules/prosemirror-changeset/LICENSE +19 -0
  836. package/node_modules/prosemirror-changeset/README.md +175 -0
  837. package/node_modules/prosemirror-changeset/dist/index.cjs +585 -0
  838. package/node_modules/prosemirror-changeset/dist/index.d.cts +186 -0
  839. package/node_modules/prosemirror-changeset/dist/index.d.ts +186 -0
  840. package/node_modules/prosemirror-changeset/dist/index.js +715 -0
  841. package/node_modules/prosemirror-changeset/package.json +40 -0
  842. package/node_modules/prosemirror-changeset/src/README.md +32 -0
  843. package/node_modules/prosemirror-changeset/src/change.ts +189 -0
  844. package/node_modules/prosemirror-changeset/src/changeset.ts +212 -0
  845. package/node_modules/prosemirror-changeset/src/diff.ts +151 -0
  846. package/node_modules/prosemirror-changeset/src/simplify.ts +132 -0
  847. package/node_modules/prosemirror-changeset/test/test-changed-range.ts +48 -0
  848. package/node_modules/prosemirror-changeset/test/test-changes.ts +211 -0
  849. package/node_modules/prosemirror-changeset/test/test-diff.ts +69 -0
  850. package/node_modules/prosemirror-changeset/test/test-merge.ts +56 -0
  851. package/node_modules/prosemirror-changeset/test/test-simplify.ts +71 -0
  852. package/node_modules/prosemirror-collab/.tern-project +8 -0
  853. package/node_modules/prosemirror-collab/CHANGELOG.md +77 -0
  854. package/node_modules/prosemirror-collab/CONTRIBUTING.md +104 -0
  855. package/node_modules/prosemirror-collab/LICENSE +19 -0
  856. package/node_modules/prosemirror-collab/README.md +28 -0
  857. package/node_modules/prosemirror-collab/dist/index.cjs +155 -0
  858. package/node_modules/prosemirror-collab/dist/index.d.cts +60 -0
  859. package/node_modules/prosemirror-collab/dist/index.d.ts +60 -0
  860. package/node_modules/prosemirror-collab/dist/index.js +156 -0
  861. package/node_modules/prosemirror-collab/package.json +40 -0
  862. package/node_modules/prosemirror-collab/src/README.md +11 -0
  863. package/node_modules/prosemirror-collab/src/collab.ts +184 -0
  864. package/node_modules/prosemirror-commands/.tern-project +8 -0
  865. package/node_modules/prosemirror-commands/CHANGELOG.md +322 -0
  866. package/node_modules/prosemirror-commands/CONTRIBUTING.md +104 -0
  867. package/node_modules/prosemirror-commands/LICENSE +19 -0
  868. package/node_modules/prosemirror-commands/README.md +28 -0
  869. package/node_modules/prosemirror-commands/dist/index.cjs +687 -0
  870. package/node_modules/prosemirror-commands/dist/index.d.cts +215 -0
  871. package/node_modules/prosemirror-commands/dist/index.d.ts +215 -0
  872. package/node_modules/prosemirror-commands/dist/index.js +850 -0
  873. package/node_modules/prosemirror-commands/package.json +39 -0
  874. package/node_modules/prosemirror-commands/src/README.md +40 -0
  875. package/node_modules/prosemirror-commands/src/commands.ts +783 -0
  876. package/node_modules/prosemirror-dropcursor/CHANGELOG.md +137 -0
  877. package/node_modules/prosemirror-dropcursor/CONTRIBUTING.md +100 -0
  878. package/node_modules/prosemirror-dropcursor/LICENSE +19 -0
  879. package/node_modules/prosemirror-dropcursor/README.md +50 -0
  880. package/node_modules/prosemirror-dropcursor/dist/index.cjs +185 -0
  881. package/node_modules/prosemirror-dropcursor/dist/index.d.cts +38 -0
  882. package/node_modules/prosemirror-dropcursor/dist/index.d.ts +38 -0
  883. package/node_modules/prosemirror-dropcursor/dist/index.js +146 -0
  884. package/node_modules/prosemirror-dropcursor/package.json +38 -0
  885. package/node_modules/prosemirror-dropcursor/src/dropcursor.ts +170 -0
  886. package/node_modules/prosemirror-gapcursor/CHANGELOG.md +122 -0
  887. package/node_modules/prosemirror-gapcursor/CONTRIBUTING.md +104 -0
  888. package/node_modules/prosemirror-gapcursor/LICENSE +19 -0
  889. package/node_modules/prosemirror-gapcursor/README.md +31 -0
  890. package/node_modules/prosemirror-gapcursor/dist/index.cjs +239 -0
  891. package/node_modules/prosemirror-gapcursor/dist/index.d.cts +31 -0
  892. package/node_modules/prosemirror-gapcursor/dist/index.d.ts +31 -0
  893. package/node_modules/prosemirror-gapcursor/dist/index.js +239 -0
  894. package/node_modules/prosemirror-gapcursor/package.json +43 -0
  895. package/node_modules/prosemirror-gapcursor/src/README.md +21 -0
  896. package/node_modules/prosemirror-gapcursor/src/gapcursor.ts +141 -0
  897. package/node_modules/prosemirror-gapcursor/src/index.ts +91 -0
  898. package/node_modules/prosemirror-gapcursor/style/gapcursor.css +25 -0
  899. package/node_modules/prosemirror-history/.tern-project +8 -0
  900. package/node_modules/prosemirror-history/CHANGELOG.md +170 -0
  901. package/node_modules/prosemirror-history/CONTRIBUTING.md +104 -0
  902. package/node_modules/prosemirror-history/LICENSE +19 -0
  903. package/node_modules/prosemirror-history/README.md +27 -0
  904. package/node_modules/prosemirror-history/dist/index.cjs +382 -0
  905. package/node_modules/prosemirror-history/dist/index.d.cts +64 -0
  906. package/node_modules/prosemirror-history/dist/index.d.ts +64 -0
  907. package/node_modules/prosemirror-history/dist/index.js +453 -0
  908. package/node_modules/prosemirror-history/package.json +40 -0
  909. package/node_modules/prosemirror-history/src/README.md +23 -0
  910. package/node_modules/prosemirror-history/src/history.ts +465 -0
  911. package/node_modules/prosemirror-inputrules/.tern-project +8 -0
  912. package/node_modules/prosemirror-inputrules/CHANGELOG.md +127 -0
  913. package/node_modules/prosemirror-inputrules/CONTRIBUTING.md +104 -0
  914. package/node_modules/prosemirror-inputrules/LICENSE +19 -0
  915. package/node_modules/prosemirror-inputrules/README.md +29 -0
  916. package/node_modules/prosemirror-inputrules/dist/index.cjs +194 -0
  917. package/node_modules/prosemirror-inputrules/dist/index.d.cts +131 -0
  918. package/node_modules/prosemirror-inputrules/dist/index.d.ts +131 -0
  919. package/node_modules/prosemirror-inputrules/dist/index.js +239 -0
  920. package/node_modules/prosemirror-inputrules/package.json +36 -0
  921. package/node_modules/prosemirror-inputrules/src/README.md +23 -0
  922. package/node_modules/prosemirror-inputrules/src/index.ts +4 -0
  923. package/node_modules/prosemirror-inputrules/src/inputrules.ts +167 -0
  924. package/node_modules/prosemirror-inputrules/src/rulebuilders.ts +59 -0
  925. package/node_modules/prosemirror-inputrules/src/rules.ts +17 -0
  926. package/node_modules/prosemirror-keymap/.tern-project +8 -0
  927. package/node_modules/prosemirror-keymap/CHANGELOG.md +104 -0
  928. package/node_modules/prosemirror-keymap/CONTRIBUTING.md +104 -0
  929. package/node_modules/prosemirror-keymap/LICENSE +19 -0
  930. package/node_modules/prosemirror-keymap/README.md +27 -0
  931. package/node_modules/prosemirror-keymap/dist/index.cjs +65 -0
  932. package/node_modules/prosemirror-keymap/dist/index.d.cts +47 -0
  933. package/node_modules/prosemirror-keymap/dist/index.d.ts +47 -0
  934. package/node_modules/prosemirror-keymap/dist/index.js +128 -0
  935. package/node_modules/prosemirror-keymap/package.json +38 -0
  936. package/node_modules/prosemirror-keymap/src/README.md +5 -0
  937. package/node_modules/prosemirror-keymap/src/keymap.ts +105 -0
  938. package/node_modules/prosemirror-markdown/.tern-project +8 -0
  939. package/node_modules/prosemirror-markdown/CHANGELOG.md +311 -0
  940. package/node_modules/prosemirror-markdown/CONTRIBUTING.md +100 -0
  941. package/node_modules/prosemirror-markdown/LICENSE +19 -0
  942. package/node_modules/prosemirror-markdown/README.md +276 -0
  943. package/node_modules/prosemirror-markdown/dist/index.cjs +966 -0
  944. package/node_modules/prosemirror-markdown/dist/index.d.cts +335 -0
  945. package/node_modules/prosemirror-markdown/dist/index.d.ts +335 -0
  946. package/node_modules/prosemirror-markdown/dist/index.js +878 -0
  947. package/node_modules/prosemirror-markdown/package.json +40 -0
  948. package/node_modules/prosemirror-markdown/src/README.md +42 -0
  949. package/node_modules/prosemirror-markdown/src/from_markdown.ts +272 -0
  950. package/node_modules/prosemirror-markdown/src/index.ts +5 -0
  951. package/node_modules/prosemirror-markdown/src/schema.ts +156 -0
  952. package/node_modules/prosemirror-markdown/src/to_markdown.ts +483 -0
  953. package/node_modules/prosemirror-menu/.tern-project +8 -0
  954. package/node_modules/prosemirror-menu/CHANGELOG.md +107 -0
  955. package/node_modules/prosemirror-menu/CONTRIBUTING.md +100 -0
  956. package/node_modules/prosemirror-menu/LICENSE +19 -0
  957. package/node_modules/prosemirror-menu/README.md +235 -0
  958. package/node_modules/prosemirror-menu/dist/index.cjs +798 -0
  959. package/node_modules/prosemirror-menu/dist/index.d.cts +281 -0
  960. package/node_modules/prosemirror-menu/dist/index.d.ts +281 -0
  961. package/node_modules/prosemirror-menu/dist/index.js +795 -0
  962. package/node_modules/prosemirror-menu/package.json +42 -0
  963. package/node_modules/prosemirror-menu/src/README.md +60 -0
  964. package/node_modules/prosemirror-menu/src/icons.ts +53 -0
  965. package/node_modules/prosemirror-menu/src/index.ts +4 -0
  966. package/node_modules/prosemirror-menu/src/menu.ts +628 -0
  967. package/node_modules/prosemirror-menu/src/menubar.ts +210 -0
  968. package/node_modules/prosemirror-menu/style/menu.css +169 -0
  969. package/node_modules/prosemirror-model/.tern-project +8 -0
  970. package/node_modules/prosemirror-model/CHANGELOG.md +730 -0
  971. package/node_modules/prosemirror-model/CONTRIBUTING.md +104 -0
  972. package/node_modules/prosemirror-model/LICENSE +19 -0
  973. package/node_modules/prosemirror-model/README.md +29 -0
  974. package/node_modules/prosemirror-model/dist/index.cjs +2898 -0
  975. package/node_modules/prosemirror-model/dist/index.d.cts +1679 -0
  976. package/node_modules/prosemirror-model/dist/index.d.ts +1679 -0
  977. package/node_modules/prosemirror-model/dist/index.js +3464 -0
  978. package/node_modules/prosemirror-model/package.json +38 -0
  979. package/node_modules/prosemirror-model/src/README.md +62 -0
  980. package/node_modules/prosemirror-model/src/comparedeep.ts +15 -0
  981. package/node_modules/prosemirror-model/src/content.ts +413 -0
  982. package/node_modules/prosemirror-model/src/diff.ts +52 -0
  983. package/node_modules/prosemirror-model/src/dom.ts +1 -0
  984. package/node_modules/prosemirror-model/src/fragment.ts +268 -0
  985. package/node_modules/prosemirror-model/src/from_dom.ts +848 -0
  986. package/node_modules/prosemirror-model/src/index.ts +11 -0
  987. package/node_modules/prosemirror-model/src/mark.ts +111 -0
  988. package/node_modules/prosemirror-model/src/node.ts +402 -0
  989. package/node_modules/prosemirror-model/src/replace.ts +225 -0
  990. package/node_modules/prosemirror-model/src/resolvedpos.ts +289 -0
  991. package/node_modules/prosemirror-model/src/schema.ts +705 -0
  992. package/node_modules/prosemirror-model/src/to_dom.ts +238 -0
  993. package/node_modules/prosemirror-schema-basic/.tern-project +8 -0
  994. package/node_modules/prosemirror-schema-basic/CHANGELOG.md +81 -0
  995. package/node_modules/prosemirror-schema-basic/CONTRIBUTING.md +100 -0
  996. package/node_modules/prosemirror-schema-basic/LICENSE +19 -0
  997. package/node_modules/prosemirror-schema-basic/README.md +28 -0
  998. package/node_modules/prosemirror-schema-basic/dist/index.cjs +246 -0
  999. package/node_modules/prosemirror-schema-basic/dist/index.d.cts +87 -0
  1000. package/node_modules/prosemirror-schema-basic/dist/index.d.ts +87 -0
  1001. package/node_modules/prosemirror-schema-basic/dist/index.js +183 -0
  1002. package/node_modules/prosemirror-schema-basic/package.json +37 -0
  1003. package/node_modules/prosemirror-schema-basic/src/README.md +8 -0
  1004. package/node_modules/prosemirror-schema-basic/src/schema-basic.ts +166 -0
  1005. package/node_modules/prosemirror-schema-list/.tern-project +8 -0
  1006. package/node_modules/prosemirror-schema-list/CHANGELOG.md +140 -0
  1007. package/node_modules/prosemirror-schema-list/CONTRIBUTING.md +100 -0
  1008. package/node_modules/prosemirror-schema-list/LICENSE +19 -0
  1009. package/node_modules/prosemirror-schema-list/README.md +28 -0
  1010. package/node_modules/prosemirror-schema-list/dist/index.cjs +253 -0
  1011. package/node_modules/prosemirror-schema-list/dist/index.d.cts +71 -0
  1012. package/node_modules/prosemirror-schema-list/dist/index.d.ts +71 -0
  1013. package/node_modules/prosemirror-schema-list/dist/index.js +289 -0
  1014. package/node_modules/prosemirror-schema-list/package.json +40 -0
  1015. package/node_modules/prosemirror-schema-list/src/README.md +29 -0
  1016. package/node_modules/prosemirror-schema-list/src/schema-list.ts +267 -0
  1017. package/node_modules/prosemirror-state/.tern-project +8 -0
  1018. package/node_modules/prosemirror-state/CHANGELOG.md +296 -0
  1019. package/node_modules/prosemirror-state/CONTRIBUTING.md +104 -0
  1020. package/node_modules/prosemirror-state/LICENSE +19 -0
  1021. package/node_modules/prosemirror-state/README.md +28 -0
  1022. package/node_modules/prosemirror-state/dist/index.cjs +884 -0
  1023. package/node_modules/prosemirror-state/dist/index.d.cts +709 -0
  1024. package/node_modules/prosemirror-state/dist/index.d.ts +709 -0
  1025. package/node_modules/prosemirror-state/dist/index.js +1002 -0
  1026. package/node_modules/prosemirror-state/package.json +39 -0
  1027. package/node_modules/prosemirror-state/src/README.md +42 -0
  1028. package/node_modules/prosemirror-state/src/index.ts +7 -0
  1029. package/node_modules/prosemirror-state/src/plugin.ts +142 -0
  1030. package/node_modules/prosemirror-state/src/selection.ts +462 -0
  1031. package/node_modules/prosemirror-state/src/state.ts +266 -0
  1032. package/node_modules/prosemirror-state/src/transaction.ts +215 -0
  1033. package/node_modules/prosemirror-tables/LICENSE +19 -0
  1034. package/node_modules/prosemirror-tables/README.md +254 -0
  1035. package/node_modules/prosemirror-tables/dist/index.cjs +2683 -0
  1036. package/node_modules/prosemirror-tables/dist/index.d.cts +751 -0
  1037. package/node_modules/prosemirror-tables/dist/index.d.cts.map +1 -0
  1038. package/node_modules/prosemirror-tables/dist/index.d.ts +751 -0
  1039. package/node_modules/prosemirror-tables/dist/index.d.ts.map +1 -0
  1040. package/node_modules/prosemirror-tables/dist/index.js +2626 -0
  1041. package/node_modules/prosemirror-tables/dist/index.js.map +1 -0
  1042. package/node_modules/prosemirror-tables/package.json +80 -0
  1043. package/node_modules/prosemirror-tables/style/tables.css +48 -0
  1044. package/node_modules/prosemirror-trailing-node/LICENSE +21 -0
  1045. package/node_modules/prosemirror-trailing-node/dist/_tsup-dts-rollup.d.cts +41 -0
  1046. package/node_modules/prosemirror-trailing-node/dist/_tsup-dts-rollup.d.ts +41 -0
  1047. package/node_modules/prosemirror-trailing-node/dist/prosemirror-trailing-node.cjs +70 -0
  1048. package/node_modules/prosemirror-trailing-node/dist/prosemirror-trailing-node.d.cts +2 -0
  1049. package/node_modules/prosemirror-trailing-node/dist/prosemirror-trailing-node.d.ts +2 -0
  1050. package/node_modules/prosemirror-trailing-node/dist/prosemirror-trailing-node.js +43 -0
  1051. package/node_modules/prosemirror-trailing-node/dist-types/index.d.ts +2 -0
  1052. package/node_modules/prosemirror-trailing-node/dist-types/trailing-node-plugin.d.ts +33 -0
  1053. package/node_modules/prosemirror-trailing-node/dist-types/tsconfig.tsbuildinfo +1 -0
  1054. package/node_modules/prosemirror-trailing-node/package.json +57 -0
  1055. package/node_modules/prosemirror-trailing-node/readme.md +55 -0
  1056. package/node_modules/prosemirror-transform/.tern-project +8 -0
  1057. package/node_modules/prosemirror-transform/CHANGELOG.md +502 -0
  1058. package/node_modules/prosemirror-transform/CONTRIBUTING.md +104 -0
  1059. package/node_modules/prosemirror-transform/LICENSE +19 -0
  1060. package/node_modules/prosemirror-transform/README.md +29 -0
  1061. package/node_modules/prosemirror-transform/dist/index.cjs +1888 -0
  1062. package/node_modules/prosemirror-transform/dist/index.d.cts +847 -0
  1063. package/node_modules/prosemirror-transform/dist/index.d.ts +847 -0
  1064. package/node_modules/prosemirror-transform/dist/index.js +2181 -0
  1065. package/node_modules/prosemirror-transform/package.json +37 -0
  1066. package/node_modules/prosemirror-transform/src/README.md +59 -0
  1067. package/node_modules/prosemirror-transform/src/attr_step.ts +98 -0
  1068. package/node_modules/prosemirror-transform/src/index.ts +11 -0
  1069. package/node_modules/prosemirror-transform/src/map.ts +284 -0
  1070. package/node_modules/prosemirror-transform/src/mark.ts +106 -0
  1071. package/node_modules/prosemirror-transform/src/mark_step.ts +224 -0
  1072. package/node_modules/prosemirror-transform/src/replace.ts +460 -0
  1073. package/node_modules/prosemirror-transform/src/replace_step.ts +178 -0
  1074. package/node_modules/prosemirror-transform/src/step.ts +97 -0
  1075. package/node_modules/prosemirror-transform/src/structure.ts +349 -0
  1076. package/node_modules/prosemirror-transform/src/transform.ts +271 -0
  1077. package/node_modules/prosemirror-view/.tern-project +8 -0
  1078. package/node_modules/prosemirror-view/CHANGELOG.md +2447 -0
  1079. package/node_modules/prosemirror-view/CONTRIBUTING.md +104 -0
  1080. package/node_modules/prosemirror-view/LICENSE +19 -0
  1081. package/node_modules/prosemirror-view/README.md +28 -0
  1082. package/node_modules/prosemirror-view/dist/index.cjs +5381 -0
  1083. package/node_modules/prosemirror-view/dist/index.d.cts +904 -0
  1084. package/node_modules/prosemirror-view/dist/index.d.ts +904 -0
  1085. package/node_modules/prosemirror-view/dist/index.js +5900 -0
  1086. package/node_modules/prosemirror-view/package.json +43 -0
  1087. package/node_modules/prosemirror-view/src/README.md +38 -0
  1088. package/node_modules/prosemirror-view/src/browser.ts +24 -0
  1089. package/node_modules/prosemirror-view/src/capturekeys.ts +345 -0
  1090. package/node_modules/prosemirror-view/src/clipboard.ts +263 -0
  1091. package/node_modules/prosemirror-view/src/decoration.ts +793 -0
  1092. package/node_modules/prosemirror-view/src/dom.ts +159 -0
  1093. package/node_modules/prosemirror-view/src/domchange.ts +383 -0
  1094. package/node_modules/prosemirror-view/src/domcoords.ts +515 -0
  1095. package/node_modules/prosemirror-view/src/domobserver.ts +392 -0
  1096. package/node_modules/prosemirror-view/src/index.ts +825 -0
  1097. package/node_modules/prosemirror-view/src/input.ts +830 -0
  1098. package/node_modules/prosemirror-view/src/selection.ts +216 -0
  1099. package/node_modules/prosemirror-view/src/viewdesc.ts +1590 -0
  1100. package/node_modules/prosemirror-view/style/prosemirror.css +54 -0
  1101. package/node_modules/punycode.js/LICENSE-MIT.txt +20 -0
  1102. package/node_modules/punycode.js/README.md +148 -0
  1103. package/node_modules/punycode.js/package.json +58 -0
  1104. package/node_modules/punycode.js/punycode.es6.js +444 -0
  1105. package/node_modules/punycode.js/punycode.js +443 -0
  1106. package/node_modules/rope-sequence/LICENSE +19 -0
  1107. package/node_modules/rope-sequence/README.md +63 -0
  1108. package/node_modules/rope-sequence/dist/index.cjs +209 -0
  1109. package/node_modules/rope-sequence/dist/index.d.cts +11 -0
  1110. package/node_modules/rope-sequence/dist/index.d.ts +11 -0
  1111. package/node_modules/rope-sequence/dist/index.js +207 -0
  1112. package/node_modules/rope-sequence/index.js +190 -0
  1113. package/node_modules/rope-sequence/package.json +34 -0
  1114. package/node_modules/rope-sequence/test.js +78 -0
  1115. package/node_modules/uc.micro/LICENSE.txt +20 -0
  1116. package/node_modules/uc.micro/README.md +14 -0
  1117. package/node_modules/uc.micro/build/index.cjs.js +20 -0
  1118. package/node_modules/uc.micro/categories/Cc/regex.mjs +1 -0
  1119. package/node_modules/uc.micro/categories/Cf/regex.mjs +1 -0
  1120. package/node_modules/uc.micro/categories/P/regex.mjs +1 -0
  1121. package/node_modules/uc.micro/categories/S/regex.mjs +1 -0
  1122. package/node_modules/uc.micro/categories/Z/regex.mjs +1 -0
  1123. package/node_modules/uc.micro/index.mjs +8 -0
  1124. package/node_modules/uc.micro/package.json +37 -0
  1125. package/node_modules/uc.micro/properties/Any/regex.mjs +1 -0
  1126. package/node_modules/use-sync-external-store/LICENSE +21 -0
  1127. package/node_modules/use-sync-external-store/README.md +5 -0
  1128. package/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js +97 -0
  1129. package/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js +85 -0
  1130. package/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +95 -0
  1131. package/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.native.development.js +88 -0
  1132. package/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.native.production.js +59 -0
  1133. package/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js +66 -0
  1134. package/node_modules/use-sync-external-store/cjs/use-sync-external-store-with-selector.development.js +96 -0
  1135. package/node_modules/use-sync-external-store/cjs/use-sync-external-store-with-selector.production.js +84 -0
  1136. package/node_modules/use-sync-external-store/cjs/use-sync-external-store.development.js +27 -0
  1137. package/node_modules/use-sync-external-store/cjs/use-sync-external-store.production.js +13 -0
  1138. package/node_modules/use-sync-external-store/index.js +7 -0
  1139. package/node_modules/use-sync-external-store/package.json +43 -0
  1140. package/node_modules/use-sync-external-store/shim/index.js +7 -0
  1141. package/node_modules/use-sync-external-store/shim/index.native.js +7 -0
  1142. package/node_modules/use-sync-external-store/shim/with-selector.js +7 -0
  1143. package/node_modules/use-sync-external-store/with-selector.js +7 -0
  1144. package/node_modules/w3c-keyname/.tern-port +1 -0
  1145. package/node_modules/w3c-keyname/LICENSE +19 -0
  1146. package/node_modules/w3c-keyname/README.md +18 -0
  1147. package/node_modules/w3c-keyname/index.cjs +127 -0
  1148. package/node_modules/w3c-keyname/index.d.cts +5 -0
  1149. package/node_modules/w3c-keyname/index.d.ts +5 -0
  1150. package/node_modules/w3c-keyname/index.js +119 -0
  1151. package/node_modules/w3c-keyname/package.json +37 -0
  1152. package/package.json +120 -3
  1153. package/public-api.md +23 -2
  1154. package/dist/chat/tool-renderers/KbSearchRenderer.d.ts +0 -2
  1155. package/dist/chat/tool-renderers/kb-search-result.d.ts +0 -19
  1156. package/dist/chunk-6ZDOQEWK.js.map +0 -1
  1157. package/dist/chunk-FQQJP2GJ.js.map +0 -1
  1158. package/dist/rich-input/extensions/kb-mention.d.ts +0 -18
  1159. package/dist/rich-input/extensions/workflow-mention.d.ts +0 -10
  1160. package/dist/rich-input/lib/kb-suggestions.d.ts +0 -37
  1161. /package/dist/{chunk-WCMGQJLE.js.map → chunk-EYRP6PV3.js.map} +0 -0
@@ -0,0 +1,793 @@
1
+ import {Node, Mark} from "prosemirror-model"
2
+ import {Mappable, Mapping} from "prosemirror-transform"
3
+ import {EditorView} from "./index"
4
+ import {DOMNode} from "./dom"
5
+
6
+ function compareObjs(a: {[prop: string]: any}, b: {[prop: string]: any}) {
7
+ if (a == b) return true
8
+ for (let p in a) if (a[p] !== b[p]) return false
9
+ for (let p in b) if (!(p in a)) return false
10
+ return true
11
+ }
12
+
13
+ export interface DecorationType {
14
+ spec: any
15
+ map(mapping: Mappable, span: Decoration, offset: number, oldOffset: number): Decoration | null
16
+ valid(node: Node, span: Decoration): boolean
17
+ eq(other: DecorationType): boolean
18
+ destroy(dom: DOMNode): void
19
+ }
20
+
21
+ export type WidgetConstructor = ((view: EditorView, getPos: () => number | undefined) => DOMNode) | DOMNode
22
+
23
+ export class WidgetType implements DecorationType {
24
+ spec: any
25
+ side: number
26
+
27
+ constructor(readonly toDOM: WidgetConstructor, spec: any) {
28
+ this.spec = spec || noSpec
29
+ this.side = this.spec.side || 0
30
+ }
31
+
32
+ map(mapping: Mappable, span: Decoration, offset: number, oldOffset: number): Decoration | null {
33
+ let {pos, deleted} = mapping.mapResult(span.from + oldOffset, this.side < 0 ? -1 : 1)
34
+ return deleted ? null : new Decoration(pos - offset, pos - offset, this)
35
+ }
36
+
37
+ valid() { return true }
38
+
39
+ eq(other: WidgetType) {
40
+ return this == other ||
41
+ (other instanceof WidgetType &&
42
+ (this.spec.key && this.spec.key == other.spec.key ||
43
+ this.toDOM == other.toDOM && compareObjs(this.spec, other.spec)))
44
+ }
45
+
46
+ destroy(node: DOMNode) {
47
+ if (this.spec.destroy) this.spec.destroy(node)
48
+ }
49
+ }
50
+
51
+ export class InlineType implements DecorationType {
52
+ spec: any
53
+
54
+ constructor(readonly attrs: DecorationAttrs, spec: any) {
55
+ this.spec = spec || noSpec
56
+ }
57
+
58
+ map(mapping: Mappable, span: Decoration, offset: number, oldOffset: number): Decoration | null {
59
+ let from = mapping.map(span.from + oldOffset, this.spec.inclusiveStart ? -1 : 1) - offset
60
+ let to = mapping.map(span.to + oldOffset, this.spec.inclusiveEnd ? 1 : -1) - offset
61
+ return from >= to ? null : new Decoration(from, to, this)
62
+ }
63
+
64
+ valid(_: Node, span: Decoration) { return span.from < span.to }
65
+
66
+ eq(other: DecorationType): boolean {
67
+ return this == other ||
68
+ (other instanceof InlineType && compareObjs(this.attrs, other.attrs) &&
69
+ compareObjs(this.spec, other.spec))
70
+ }
71
+
72
+ static is(span: Decoration) { return span.type instanceof InlineType }
73
+
74
+ destroy() {}
75
+ }
76
+
77
+ export class NodeType implements DecorationType {
78
+ spec: any
79
+ constructor(readonly attrs: DecorationAttrs, spec: any) {
80
+ this.spec = spec || noSpec
81
+ }
82
+
83
+ map(mapping: Mappable, span: Decoration, offset: number, oldOffset: number): Decoration | null {
84
+ let from = mapping.mapResult(span.from + oldOffset, 1)
85
+ if (from.deleted) return null
86
+ let to = mapping.mapResult(span.to + oldOffset, -1)
87
+ if (to.deleted || to.pos <= from.pos) return null
88
+ return new Decoration(from.pos - offset, to.pos - offset, this)
89
+ }
90
+
91
+ valid(node: Node, span: Decoration): boolean {
92
+ let {index, offset} = node.content.findIndex(span.from), child
93
+ return offset == span.from && !(child = node.child(index)).isText && offset + child.nodeSize == span.to
94
+ }
95
+
96
+ eq(other: DecorationType): boolean {
97
+ return this == other ||
98
+ (other instanceof NodeType && compareObjs(this.attrs, other.attrs) &&
99
+ compareObjs(this.spec, other.spec))
100
+ }
101
+
102
+ destroy() {}
103
+ }
104
+
105
+ /// Decoration objects can be provided to the view through the
106
+ /// [`decorations` prop](#view.EditorProps.decorations). They come in
107
+ /// several variants—see the static members of this class for details.
108
+ export class Decoration {
109
+ /// @internal
110
+ constructor(
111
+ /// The start position of the decoration.
112
+ readonly from: number,
113
+ /// The end position. Will be the same as `from` for [widget
114
+ /// decorations](#view.Decoration^widget).
115
+ readonly to: number,
116
+ /// @internal
117
+ readonly type: DecorationType
118
+ ) {}
119
+
120
+ /// @internal
121
+ copy(from: number, to: number) {
122
+ return new Decoration(from, to, this.type)
123
+ }
124
+
125
+ /// @internal
126
+ eq(other: Decoration, offset = 0) {
127
+ return this.type.eq(other.type) && this.from + offset == other.from && this.to + offset == other.to
128
+ }
129
+
130
+ /// @internal
131
+ map(mapping: Mappable, offset: number, oldOffset: number) {
132
+ return this.type.map(mapping, this, offset, oldOffset)
133
+ }
134
+
135
+ /// Creates a widget decoration, which is a DOM node that's shown in
136
+ /// the document at the given position. It is recommended that you
137
+ /// delay rendering the widget by passing a function that will be
138
+ /// called when the widget is actually drawn in a view, but you can
139
+ /// also directly pass a DOM node. `getPos` can be used to find the
140
+ /// widget's current document position.
141
+ static widget(pos: number, toDOM: WidgetConstructor, spec?: {
142
+ /// Controls which side of the document position this widget is
143
+ /// associated with. When negative, it is drawn before a cursor
144
+ /// at its position, and content inserted at that position ends
145
+ /// up after the widget. When zero (the default) or positive, the
146
+ /// widget is drawn after the cursor and content inserted there
147
+ /// ends up before the widget.
148
+ ///
149
+ /// When there are multiple widgets at a given position, their
150
+ /// `side` values determine the order in which they appear. Those
151
+ /// with lower values appear first. The ordering of widgets with
152
+ /// the same `side` value is unspecified.
153
+ ///
154
+ /// When `marks` is null, `side` also determines the marks that
155
+ /// the widget is wrapped in—those of the node before when
156
+ /// negative, those of the node after when positive.
157
+ side?: number
158
+
159
+ /// By default, the cursor, when at the position of the widget,
160
+ /// will be strictly kept on the side indicated by
161
+ /// [`side`](#view.Decoration^widget^spec.side). Set this to true
162
+ /// to allow the DOM selection to stay on the other side if the
163
+ /// client sets it there.
164
+ ///
165
+ /// **Note**: Mapping of this decoration, which decides on which
166
+ /// side insertions at its position appear, will still happen
167
+ /// according to `side`, and keyboard cursor motion will not,
168
+ /// without further custom handling, visit both sides of the
169
+ /// widget.
170
+ relaxedSide?: boolean
171
+
172
+ /// The precise set of marks to draw around the widget.
173
+ marks?: readonly Mark[]
174
+
175
+ /// Can be used to control which DOM events, when they bubble out
176
+ /// of this widget, the editor view should ignore.
177
+ stopEvent?: (event: Event) => boolean
178
+
179
+ /// When set (defaults to false), selection changes inside the
180
+ /// widget are ignored, and don't cause ProseMirror to try and
181
+ /// re-sync the selection with its selection state.
182
+ ignoreSelection?: boolean
183
+
184
+ /// When comparing decorations of this type (in order to decide
185
+ /// whether it needs to be redrawn), ProseMirror will by default
186
+ /// compare the widget DOM node by identity. If you pass a key,
187
+ /// that key will be compared instead, which can be useful when
188
+ /// you generate decorations on the fly and don't want to store
189
+ /// and reuse DOM nodes. Make sure that any widgets with the same
190
+ /// key are interchangeable—if widgets differ in, for example,
191
+ /// the behavior of some event handler, they should get
192
+ /// different keys.
193
+ key?: string
194
+
195
+ /// Called when the widget decoration is removed or the editor is
196
+ /// destroyed.
197
+ destroy?: (node: DOMNode) => void
198
+
199
+ /// Specs allow arbitrary additional properties.
200
+ [key: string]: any
201
+ }): Decoration {
202
+ return new Decoration(pos, pos, new WidgetType(toDOM, spec))
203
+ }
204
+
205
+ /// Creates an inline decoration, which adds the given attributes to
206
+ /// each inline node between `from` and `to`.
207
+ static inline(from: number, to: number, attrs: DecorationAttrs, spec?: {
208
+ /// Determines how the left side of the decoration is
209
+ /// [mapped](#transform.Position_Mapping) when content is
210
+ /// inserted directly at that position. By default, the decoration
211
+ /// won't include the new content, but you can set this to `true`
212
+ /// to make it inclusive.
213
+ inclusiveStart?: boolean
214
+
215
+ /// Determines how the right side of the decoration is mapped.
216
+ /// See
217
+ /// [`inclusiveStart`](#view.Decoration^inline^spec.inclusiveStart).
218
+ inclusiveEnd?: boolean
219
+
220
+ /// Specs may have arbitrary additional properties.
221
+ [key: string]: any
222
+ }) {
223
+ return new Decoration(from, to, new InlineType(attrs, spec))
224
+ }
225
+
226
+ /// Creates a node decoration. `from` and `to` should point precisely
227
+ /// before and after a node in the document. That node, and only that
228
+ /// node, will receive the given attributes.
229
+ static node(from: number, to: number, attrs: DecorationAttrs, spec?: any) {
230
+ return new Decoration(from, to, new NodeType(attrs, spec))
231
+ }
232
+
233
+ /// The spec provided when creating this decoration. Can be useful
234
+ /// if you've stored extra information in that object.
235
+ get spec() { return this.type.spec }
236
+
237
+ /// @internal
238
+ get inline() { return this.type instanceof InlineType }
239
+
240
+ /// @internal
241
+ get widget() { return this.type instanceof WidgetType }
242
+ }
243
+
244
+ /// A set of attributes to add to a decorated node. Most properties
245
+ /// simply directly correspond to DOM attributes of the same name,
246
+ /// which will be set to the property's value. These are exceptions:
247
+ export type DecorationAttrs = {
248
+ /// When non-null, the target node is wrapped in a DOM element of
249
+ /// this type (and the other attributes are applied to this element).
250
+ nodeName?: string
251
+
252
+ /// A CSS class name or a space-separated set of class names to be
253
+ /// _added_ to the classes that the node already had.
254
+ class?: string
255
+
256
+ /// A string of CSS to be _added_ to the node's existing `style` property.
257
+ style?: string
258
+
259
+ /// Any other properties are treated as regular DOM attributes.
260
+ [attribute: string]: string | undefined
261
+ }
262
+
263
+ const none: readonly any[] = [], noSpec = {}
264
+
265
+ /// An object that can [provide](#view.EditorProps.decorations)
266
+ /// decorations. Implemented by [`DecorationSet`](#view.DecorationSet),
267
+ /// and passed to [node views](#view.EditorProps.nodeViews).
268
+ export interface DecorationSource {
269
+ /// Map the set of decorations in response to a change in the
270
+ /// document.
271
+ map: (mapping: Mapping, node: Node) => DecorationSource
272
+ /// @internal
273
+ locals(node: Node): readonly Decoration[]
274
+ /// Extract a DecorationSource containing decorations for the given child node at the given offset.
275
+ forChild(offset: number, child: Node): DecorationSource
276
+ /// @internal
277
+ eq(other: DecorationSource): boolean
278
+ /// Call the given function for each decoration set in the group.
279
+ forEachSet(f: (set: DecorationSet) => void): void
280
+ }
281
+
282
+ /// A collection of [decorations](#view.Decoration), organized in such
283
+ /// a way that the drawing algorithm can efficiently use and compare
284
+ /// them. This is a persistent data structure—it is not modified,
285
+ /// updates create a new value.
286
+ export class DecorationSet implements DecorationSource {
287
+ /// @internal
288
+ local: readonly Decoration[]
289
+ /// @internal
290
+ children: readonly (number | DecorationSet)[]
291
+
292
+ /// @internal
293
+ constructor(local: readonly Decoration[], children: readonly (number | DecorationSet)[]) {
294
+ this.local = local.length ? local : none
295
+ this.children = children.length ? children : none
296
+ }
297
+
298
+ /// Create a set of decorations, using the structure of the given
299
+ /// document. This will consume (modify) the `decorations` array, so
300
+ /// you must make a copy if you want need to preserve that.
301
+ static create(doc: Node, decorations: Decoration[]) {
302
+ return decorations.length ? buildTree(decorations, doc, 0, noSpec) : empty
303
+ }
304
+
305
+ /// Find all decorations in this set which touch the given range
306
+ /// (including decorations that start or end directly at the
307
+ /// boundaries) and match the given predicate on their spec. When
308
+ /// `start` and `end` are omitted, all decorations in the set are
309
+ /// considered. When `predicate` isn't given, all decorations are
310
+ /// assumed to match.
311
+ find(start?: number, end?: number, predicate?: (spec: any) => boolean): Decoration[] {
312
+ let result: Decoration[] = []
313
+ this.findInner(start == null ? 0 : start, end == null ? 1e9 : end, result, 0, predicate)
314
+ return result
315
+ }
316
+
317
+ private findInner(start: number, end: number, result: Decoration[], offset: number, predicate?: (spec: any) => boolean) {
318
+ for (let i = 0; i < this.local.length; i++) {
319
+ let span = this.local[i]
320
+ if (span.from <= end && span.to >= start && (!predicate || predicate(span.spec)))
321
+ result.push(span.copy(span.from + offset, span.to + offset))
322
+ }
323
+ for (let i = 0; i < this.children.length; i += 3) {
324
+ if ((this.children[i] as number) < end && (this.children[i + 1] as number) > start) {
325
+ let childOff = (this.children[i] as number) + 1
326
+ ;(this.children[i + 2] as DecorationSet).findInner(start - childOff, end - childOff,
327
+ result, offset + childOff, predicate)
328
+ }
329
+ }
330
+ }
331
+
332
+ /// Map the set of decorations in response to a change in the
333
+ /// document.
334
+ map(mapping: Mapping, doc: Node, options?: {
335
+ /// When given, this function will be called for each decoration
336
+ /// that gets dropped as a result of the mapping, passing the
337
+ /// spec of that decoration.
338
+ onRemove?: (decorationSpec: any) => void
339
+ }) {
340
+ if (this == empty || mapping.maps.length == 0) return this
341
+ return this.mapInner(mapping, doc, 0, 0, options || noSpec)
342
+ }
343
+
344
+ /// @internal
345
+ mapInner(mapping: Mapping, node: Node, offset: number, oldOffset: number, options: {
346
+ onRemove?: (decorationSpec: any) => void
347
+ }) {
348
+ let newLocal: Decoration[] | undefined
349
+ for (let i = 0; i < this.local.length; i++) {
350
+ let mapped = this.local[i].map(mapping, offset, oldOffset)
351
+ if (mapped && mapped.type.valid(node, mapped)) (newLocal || (newLocal = [])).push(mapped)
352
+ else if (options.onRemove) options.onRemove(this.local[i].spec)
353
+ }
354
+
355
+ if (this.children.length)
356
+ return mapChildren(this.children, newLocal || [], mapping, node, offset, oldOffset, options)
357
+ else
358
+ return newLocal ? new DecorationSet(newLocal.sort(byPos), none) : empty
359
+ }
360
+
361
+ /// Add the given array of decorations to the ones in the set,
362
+ /// producing a new set. Consumes the `decorations` array. Needs
363
+ /// access to the current document to create the appropriate tree
364
+ /// structure.
365
+ add(doc: Node, decorations: Decoration[]) {
366
+ if (!decorations.length) return this
367
+ if (this == empty) return DecorationSet.create(doc, decorations)
368
+ return this.addInner(doc, decorations, 0)
369
+ }
370
+
371
+ private addInner(doc: Node, decorations: Decoration[], offset: number) {
372
+ let children: (number | DecorationSet)[] | undefined, childIndex = 0
373
+ doc.forEach((childNode, childOffset) => {
374
+ let baseOffset = childOffset + offset, found
375
+ if (!(found = takeSpansForNode(decorations, childNode, baseOffset))) return
376
+
377
+ if (!children) children = this.children.slice()
378
+ while (childIndex < children.length && (children[childIndex] as number) < childOffset) childIndex += 3
379
+ if (children[childIndex] == childOffset)
380
+ children[childIndex + 2] = (children[childIndex + 2] as DecorationSet).addInner(childNode, found, baseOffset + 1)
381
+ else
382
+ children.splice(childIndex, 0, childOffset, childOffset + childNode.nodeSize, buildTree(found, childNode, baseOffset + 1, noSpec))
383
+ childIndex += 3
384
+ })
385
+
386
+ let local = moveSpans(childIndex ? withoutNulls(decorations) : decorations, -offset)
387
+ for (let i = 0; i < local.length; i++) if (!local[i].type.valid(doc, local[i])) local.splice(i--, 1)
388
+
389
+ return new DecorationSet(local.length ? this.local.concat(local).sort(byPos) : this.local,
390
+ children || this.children)
391
+ }
392
+
393
+ /// Create a new set that contains the decorations in this set, minus
394
+ /// the ones in the given array.
395
+ remove(decorations: Decoration[]) {
396
+ if (decorations.length == 0 || this == empty) return this
397
+ return this.removeInner(decorations, 0)
398
+ }
399
+
400
+ private removeInner(decorations: (Decoration | null)[], offset: number) {
401
+ let children = this.children as (number | DecorationSet)[], local = this.local as Decoration[]
402
+ for (let i = 0; i < children.length; i += 3) {
403
+ let found: Decoration[] | undefined
404
+ let from = (children[i] as number) + offset, to = (children[i + 1] as number) + offset
405
+ for (let j = 0, span; j < decorations.length; j++) if (span = decorations[j]) {
406
+ if (span.from > from && span.to < to) {
407
+ decorations[j] = null
408
+ ;(found || (found = [])).push(span)
409
+ }
410
+ }
411
+ if (!found) continue
412
+ if (children == this.children) children = this.children.slice()
413
+ let removed = (children[i + 2] as DecorationSet).removeInner(found, from + 1)
414
+ if (removed != empty) {
415
+ children[i + 2] = removed
416
+ } else {
417
+ children.splice(i, 3)
418
+ i -= 3
419
+ }
420
+ }
421
+ if (local.length) for (let i = 0, span; i < decorations.length; i++) if (span = decorations[i]) {
422
+ for (let j = 0; j < local.length; j++) if (local[j].eq(span, offset)) {
423
+ if (local == this.local) local = this.local.slice()
424
+ local.splice(j--, 1)
425
+ }
426
+ }
427
+ if (children == this.children && local == this.local) return this
428
+ return local.length || children.length ? new DecorationSet(local, children) : empty
429
+ }
430
+
431
+ forChild(offset: number, node: Node): DecorationSet | DecorationGroup {
432
+ if (this == empty) return this
433
+ if (node.isLeaf) return DecorationSet.empty
434
+
435
+ let child, local: Decoration[] | undefined
436
+ for (let i = 0; i < this.children.length; i += 3) if ((this.children[i] as number) >= offset) {
437
+ if (this.children[i] == offset) child = this.children[i + 2] as DecorationSet
438
+ break
439
+ }
440
+ let start = offset + 1, end = start + node.content.size
441
+ for (let i = 0; i < this.local.length; i++) {
442
+ let dec = this.local[i]
443
+ if (dec.from < end && dec.to > start && (dec.type instanceof InlineType)) {
444
+ let from = Math.max(start, dec.from) - start, to = Math.min(end, dec.to) - start
445
+ if (from < to) (local || (local = [])).push(dec.copy(from, to))
446
+ }
447
+ }
448
+ if (local) {
449
+ let localSet = new DecorationSet(local.sort(byPos), none)
450
+ return child ? new DecorationGroup([localSet, child]) : localSet
451
+ }
452
+ return child || empty
453
+ }
454
+
455
+ /// @internal
456
+ eq(other: DecorationSet) {
457
+ if (this == other) return true
458
+ if (!(other instanceof DecorationSet) ||
459
+ this.local.length != other.local.length ||
460
+ this.children.length != other.children.length) return false
461
+ for (let i = 0; i < this.local.length; i++)
462
+ if (!this.local[i].eq(other.local[i])) return false
463
+ for (let i = 0; i < this.children.length; i += 3)
464
+ if (this.children[i] != other.children[i] ||
465
+ this.children[i + 1] != other.children[i + 1] ||
466
+ !(this.children[i + 2] as DecorationSet).eq(other.children[i + 2] as DecorationSet))
467
+ return false
468
+ return true
469
+ }
470
+
471
+ /// @internal
472
+ locals(node: Node) {
473
+ return removeOverlap(this.localsInner(node))
474
+ }
475
+
476
+ /// @internal
477
+ localsInner(node: Node): readonly Decoration[] {
478
+ if (this == empty) return none
479
+ if (node.inlineContent || !this.local.some(InlineType.is)) return this.local
480
+ let result = []
481
+ for (let i = 0; i < this.local.length; i++) {
482
+ if (!(this.local[i].type instanceof InlineType))
483
+ result.push(this.local[i])
484
+ }
485
+ return result
486
+ }
487
+
488
+ /// The empty set of decorations.
489
+ static empty: DecorationSet = new DecorationSet([], [])
490
+
491
+ /// @internal
492
+ static removeOverlap = removeOverlap
493
+
494
+ forEachSet(f: (set: DecorationSet) => void) { f(this) }
495
+ }
496
+
497
+ const empty = DecorationSet.empty
498
+
499
+ // An abstraction that allows the code dealing with decorations to
500
+ // treat multiple DecorationSet objects as if it were a single object
501
+ // with (a subset of) the same interface.
502
+ class DecorationGroup implements DecorationSource {
503
+ constructor(readonly members: readonly DecorationSet[]) {}
504
+
505
+ map(mapping: Mapping, doc: Node) {
506
+ const mappedDecos = this.members.map(
507
+ member => member.map(mapping, doc, noSpec)
508
+ )
509
+ return DecorationGroup.from(mappedDecos)
510
+ }
511
+
512
+ forChild(offset: number, child: Node) {
513
+ if (child.isLeaf) return DecorationSet.empty
514
+ let found: DecorationSet[] = []
515
+ for (let i = 0; i < this.members.length; i++) {
516
+ let result = this.members[i].forChild(offset, child)
517
+ if (result == empty) continue
518
+ if (result instanceof DecorationGroup) found = found.concat(result.members)
519
+ else found.push(result)
520
+ }
521
+ return DecorationGroup.from(found)
522
+ }
523
+
524
+ eq(other: DecorationGroup) {
525
+ if (!(other instanceof DecorationGroup) ||
526
+ other.members.length != this.members.length) return false
527
+ for (let i = 0; i < this.members.length; i++)
528
+ if (!this.members[i].eq(other.members[i])) return false
529
+ return true
530
+ }
531
+
532
+ locals(node: Node) {
533
+ let result: Decoration[] | undefined, sorted = true
534
+ for (let i = 0; i < this.members.length; i++) {
535
+ let locals = this.members[i].localsInner(node)
536
+ if (!locals.length) continue
537
+ if (!result) {
538
+ result = locals as Decoration[]
539
+ } else {
540
+ if (sorted) {
541
+ result = result.slice()
542
+ sorted = false
543
+ }
544
+ for (let j = 0; j < locals.length; j++) result.push(locals[j])
545
+ }
546
+ }
547
+ return result ? removeOverlap(sorted ? result : result.sort(byPos)) : none
548
+ }
549
+
550
+ // Create a group for the given array of decoration sets, or return
551
+ // a single set when possible.
552
+ static from(members: readonly DecorationSource[]): DecorationSource {
553
+ switch (members.length) {
554
+ case 0: return empty
555
+ case 1: return members[0]
556
+ default: return new DecorationGroup(
557
+ members.every(m => m instanceof DecorationSet) ? members as DecorationSet[] :
558
+ members.reduce((r, m) => r.concat(m instanceof DecorationSet ? m : (m as DecorationGroup).members),
559
+ [] as DecorationSet[]))
560
+ }
561
+ }
562
+
563
+ forEachSet(f: (set: DecorationSet) => void) {
564
+ for (let i = 0; i < this.members.length; i++) this.members[i].forEachSet(f)
565
+ }
566
+ }
567
+
568
+ function mapChildren(
569
+ oldChildren: readonly (number | DecorationSet)[],
570
+ newLocal: Decoration[],
571
+ mapping: Mapping,
572
+ node: Node,
573
+ offset: number,
574
+ oldOffset: number,
575
+ options: {onRemove?: (decorationSpec: any) => void}
576
+ ) {
577
+ let children = oldChildren.slice() as (number | DecorationSet)[]
578
+
579
+ // Mark the children that are directly touched by changes, and
580
+ // move those that are after the changes.
581
+ for (let i = 0, baseOffset = oldOffset; i < mapping.maps.length; i++) {
582
+ let moved = 0
583
+ mapping.maps[i].forEach((oldStart: number, oldEnd: number, newStart: number, newEnd: number) => {
584
+ let dSize = (newEnd - newStart) - (oldEnd - oldStart)
585
+ for (let i = 0; i < children.length; i += 3) {
586
+ let end = children[i + 1] as number
587
+ if (end < 0 || oldStart > end + baseOffset - moved) continue
588
+ let start = (children[i] as number) + baseOffset - moved
589
+ if (oldEnd >= start) {
590
+ children[i + 1] = oldStart <= start ? -2 : -1
591
+ } else if (oldStart >= baseOffset && dSize) {
592
+ ;(children[i] as number) += dSize
593
+ ;(children[i + 1] as number) += dSize
594
+ }
595
+ }
596
+ moved += dSize
597
+ })
598
+ baseOffset = mapping.maps[i].map(baseOffset, -1)
599
+ }
600
+
601
+ // Find the child nodes that still correspond to a single node,
602
+ // recursively call mapInner on them and update their positions.
603
+ let mustRebuild = false
604
+ for (let i = 0; i < children.length; i += 3) if ((children[i + 1] as number) < 0) { // Touched nodes
605
+ if (children[i + 1] == -2) {
606
+ mustRebuild = true
607
+ children[i + 1] = -1
608
+ continue
609
+ }
610
+ let from = mapping.map((oldChildren[i] as number) + oldOffset), fromLocal = from - offset
611
+ if (fromLocal < 0 || fromLocal >= node.content.size) {
612
+ mustRebuild = true
613
+ continue
614
+ }
615
+ // Must read oldChildren because children was tagged with -1
616
+ let to = mapping.map((oldChildren[i + 1] as number) + oldOffset, -1), toLocal = to - offset
617
+ let {index, offset: childOffset} = node.content.findIndex(fromLocal)
618
+ let childNode = node.maybeChild(index)
619
+ if (childNode && childOffset == fromLocal && childOffset + childNode.nodeSize == toLocal) {
620
+ let mapped = (children[i + 2] as DecorationSet)
621
+ .mapInner(mapping, childNode, from + 1, (oldChildren[i] as number) + oldOffset + 1, options)
622
+ if (mapped != empty) {
623
+ children[i] = fromLocal
624
+ children[i + 1] = toLocal
625
+ children[i + 2] = mapped
626
+ } else {
627
+ children[i + 1] = -2
628
+ mustRebuild = true
629
+ }
630
+ } else {
631
+ mustRebuild = true
632
+ }
633
+ }
634
+
635
+ // Remaining children must be collected and rebuilt into the appropriate structure
636
+ if (mustRebuild) {
637
+ let decorations = mapAndGatherRemainingDecorations(children, oldChildren, newLocal, mapping,
638
+ offset, oldOffset, options)
639
+ let built = buildTree(decorations, node, 0, options)
640
+ newLocal = built.local as Decoration[]
641
+ for (let i = 0; i < children.length; i += 3) if ((children[i + 1] as number) < 0) {
642
+ children.splice(i, 3)
643
+ i -= 3
644
+ }
645
+ for (let i = 0, j = 0; i < built.children.length; i += 3) {
646
+ let from = built.children[i]
647
+ while (j < children.length && children[j] < from) j += 3
648
+ children.splice(j, 0, built.children[i], built.children[i + 1], built.children[i + 2])
649
+ }
650
+ }
651
+
652
+ return new DecorationSet(newLocal.sort(byPos), children)
653
+ }
654
+
655
+ function moveSpans(spans: Decoration[], offset: number) {
656
+ if (!offset || !spans.length) return spans
657
+ let result = []
658
+ for (let i = 0; i < spans.length; i++) {
659
+ let span = spans[i]
660
+ result.push(new Decoration(span.from + offset, span.to + offset, span.type))
661
+ }
662
+ return result
663
+ }
664
+
665
+ function mapAndGatherRemainingDecorations(
666
+ children: (number | DecorationSet)[],
667
+ oldChildren: readonly (number | DecorationSet)[],
668
+ decorations: Decoration[],
669
+ mapping: Mapping,
670
+ offset: number,
671
+ oldOffset: number,
672
+ options: {onRemove?: (decorationSpec: any) => void}
673
+ ) {
674
+ // Gather all decorations from the remaining marked children
675
+ function gather(set: DecorationSet, oldOffset: number) {
676
+ for (let i = 0; i < set.local.length; i++) {
677
+ let mapped = set.local[i].map(mapping, offset, oldOffset)
678
+ if (mapped) decorations.push(mapped)
679
+ else if (options.onRemove) options.onRemove(set.local[i].spec)
680
+ }
681
+ for (let i = 0; i < set.children.length; i += 3)
682
+ gather(set.children[i + 2] as DecorationSet, set.children[i] as number + oldOffset + 1)
683
+ }
684
+ for (let i = 0; i < children.length; i += 3) if (children[i + 1] == -1)
685
+ gather(children[i + 2] as DecorationSet, oldChildren[i] as number + oldOffset + 1)
686
+
687
+ return decorations
688
+ }
689
+
690
+ function takeSpansForNode(spans: (Decoration | null)[], node: Node, offset: number): Decoration[] | null {
691
+ if (node.isLeaf) return null
692
+ let end = offset + node.nodeSize, found = null
693
+ for (let i = 0, span; i < spans.length; i++) {
694
+ if ((span = spans[i]) && span.from > offset && span.to < end) {
695
+ ;(found || (found = [])).push(span)
696
+ spans[i] = null
697
+ }
698
+ }
699
+ return found
700
+ }
701
+
702
+ function withoutNulls<T>(array: readonly (T | null)[]): T[] {
703
+ let result: T[] = []
704
+ for (let i = 0; i < array.length; i++)
705
+ if (array[i] != null) result.push(array[i]!)
706
+ return result
707
+ }
708
+
709
+ // Build up a tree that corresponds to a set of decorations. `offset`
710
+ // is a base offset that should be subtracted from the `from` and `to`
711
+ // positions in the spans (so that we don't have to allocate new spans
712
+ // for recursive calls).
713
+ function buildTree(
714
+ spans: Decoration[],
715
+ node: Node,
716
+ offset: number,
717
+ options: {onRemove?: (decorationSpec: any) => void}
718
+ ) {
719
+ let children: (DecorationSet | number)[] = [], hasNulls = false
720
+ node.forEach((childNode, localStart) => {
721
+ let found = takeSpansForNode(spans, childNode, localStart + offset)
722
+ if (found) {
723
+ hasNulls = true
724
+ let subtree = buildTree(found, childNode, offset + localStart + 1, options)
725
+ if (subtree != empty)
726
+ children.push(localStart, localStart + childNode.nodeSize, subtree)
727
+ }
728
+ })
729
+ let locals = moveSpans(hasNulls ? withoutNulls(spans) : spans, -offset).sort(byPos)
730
+ for (let i = 0; i < locals.length; i++) if (!locals[i].type.valid(node, locals[i])) {
731
+ if (options.onRemove) options.onRemove(locals[i].spec)
732
+ locals.splice(i--, 1)
733
+ }
734
+ return locals.length || children.length ? new DecorationSet(locals, children) : empty
735
+ }
736
+
737
+ // Used to sort decorations so that ones with a low start position
738
+ // come first, and within a set with the same start position, those
739
+ // with an smaller end position come first.
740
+ function byPos(a: Decoration, b: Decoration) {
741
+ return a.from - b.from || a.to - b.to
742
+ }
743
+
744
+ // Scan a sorted array of decorations for partially overlapping spans,
745
+ // and split those so that only fully overlapping spans are left (to
746
+ // make subsequent rendering easier). Will return the input array if
747
+ // no partially overlapping spans are found (the common case).
748
+ function removeOverlap(spans: readonly Decoration[]): Decoration[] {
749
+ let working: Decoration[] = spans as Decoration[]
750
+ for (let i = 0; i < working.length - 1; i++) {
751
+ let span = working[i]
752
+ if (span.from != span.to) for (let j = i + 1; j < working.length; j++) {
753
+ let next = working[j]
754
+ if (next.from == span.from) {
755
+ if (next.to != span.to) {
756
+ if (working == spans) working = spans.slice()
757
+ // Followed by a partially overlapping larger span. Split that
758
+ // span.
759
+ working[j] = next.copy(next.from, span.to)
760
+ insertAhead(working, j + 1, next.copy(span.to, next.to))
761
+ }
762
+ continue
763
+ } else {
764
+ if (next.from < span.to) {
765
+ if (working == spans) working = spans.slice()
766
+ // The end of this one overlaps with a subsequent span. Split
767
+ // this one.
768
+ working[i] = span.copy(span.from, next.from)
769
+ insertAhead(working, j, span.copy(next.from, span.to))
770
+ }
771
+ break
772
+ }
773
+ }
774
+ }
775
+ return working
776
+ }
777
+
778
+ function insertAhead(array: Decoration[], i: number, deco: Decoration) {
779
+ while (i < array.length && byPos(deco, array[i]) > 0) i++
780
+ array.splice(i, 0, deco)
781
+ }
782
+
783
+ // Get the decorations associated with the current props of a view.
784
+ export function viewDecorations(view: EditorView): DecorationSource {
785
+ let found: DecorationSource[] = []
786
+ view.someProp("decorations", f => {
787
+ let result = f(view.state)
788
+ if (result && result != empty) found.push(result)
789
+ })
790
+ if (view.cursorWrapper)
791
+ found.push(DecorationSet.create(view.state.doc, [view.cursorWrapper.deco]))
792
+ return DecorationGroup.from(found)
793
+ }