edytor 1.0.0-rc.3 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (667) hide show
  1. package/README.md +21 -39
  2. package/dist/block/block.svelte.d.ts +11 -84
  3. package/dist/block/block.svelte.js +30 -134
  4. package/dist/block/colors.d.ts +0 -9
  5. package/dist/block/colors.js +1 -18
  6. package/dist/block/contentRange.d.ts +5 -1
  7. package/dist/block/contentRange.js +15 -16
  8. package/dist/block/inlineBlock.svelte.d.ts +11 -9
  9. package/dist/block/inlineBlock.svelte.js +18 -21
  10. package/dist/clipboard/createClipboardFragment.js +22 -64
  11. package/dist/clipboard/fragmentData.js +17 -42
  12. package/dist/clipboard/htmlFlow.js +7 -7
  13. package/dist/clipboard/insertClipboardFragment.js +5 -4
  14. package/dist/clipboard/moveText.js +16 -8
  15. package/dist/clipboard/serializeClipboardFragment.d.ts +2 -0
  16. package/dist/clipboard/serializeClipboardFragment.js +32 -28
  17. package/dist/cloudflare/DocumentRoom.d.ts +4 -17
  18. package/dist/cloudflare/DocumentRoom.js +3 -5
  19. package/dist/cloudflare/move.d.ts +1 -18
  20. package/dist/cloudflare/move.js +2 -48
  21. package/dist/cloudflare/room/admission.d.ts +1 -60
  22. package/dist/cloudflare/room/admission.js +25 -29
  23. package/dist/cloudflare/room/comments.d.ts +1 -3
  24. package/dist/cloudflare/room/comments.js +6 -6
  25. package/dist/cloudflare/room/context.d.ts +25 -82
  26. package/dist/cloudflare/room/context.js +8 -8
  27. package/dist/cloudflare/room/forged.d.ts +1 -1
  28. package/dist/cloudflare/room/forged.js +2 -12
  29. package/dist/cloudflare/room/frames.d.ts +1 -1
  30. package/dist/cloudflare/room/frames.js +1 -1
  31. package/dist/cloudflare/room/history.d.ts +1 -25
  32. package/dist/cloudflare/room/history.js +39 -54
  33. package/dist/cloudflare/room/moves.d.ts +1 -13
  34. package/dist/cloudflare/room/moves.js +33 -57
  35. package/dist/cloudflare/room/presence.d.ts +1 -11
  36. package/dist/cloudflare/room/presence.js +4 -4
  37. package/dist/cloudflare/room/purge.d.ts +1 -2
  38. package/dist/cloudflare/room/purge.js +2 -2
  39. package/dist/cloudflare/room/replicas.d.ts +1 -7
  40. package/dist/cloudflare/room/replicas.js +2 -2
  41. package/dist/cloudflare/room/storage.d.ts +3 -32
  42. package/dist/cloudflare/room/storage.js +33 -108
  43. package/dist/cloudflare/room/updates.d.ts +4 -4
  44. package/dist/cloudflare/room/updates.js +17 -24
  45. package/dist/cloudflare/room/validation.d.ts +1 -5
  46. package/dist/cloudflare/room/validation.js +16 -37
  47. package/dist/collaboration/RemoteSelections.svelte +13 -17
  48. package/dist/collaboration/awarenessSelection.d.ts +22 -1
  49. package/dist/collaboration/awarenessSelection.js +42 -0
  50. package/dist/collaboration/comments/client.d.ts +2 -2
  51. package/dist/collaboration/comments/client.js +1 -1
  52. package/dist/collaboration/history/index.d.ts +5 -5
  53. package/dist/collaboration/history/index.js +5 -5
  54. package/dist/collaboration/history/panel.svelte.d.ts +91 -0
  55. package/dist/collaboration/history/panel.svelte.js +223 -0
  56. package/dist/collaboration/providers.d.ts +12 -3
  57. package/dist/collaboration/providers.js +5 -4
  58. package/dist/components/Block.svelte +42 -56
  59. package/dist/components/Block.svelte.d.ts +7 -5
  60. package/dist/components/Content.svelte +1 -5
  61. package/dist/components/Edytor.svelte +82 -99
  62. package/dist/components/Edytor.svelte.d.ts +16 -13
  63. package/dist/components/InlineBlock.svelte +1 -1
  64. package/dist/components/Ranges.svelte +96 -0
  65. package/dist/components/Ranges.svelte.d.ts +19 -0
  66. package/dist/components/Suggestion.svelte +3 -2
  67. package/dist/components/Text.svelte +2 -5
  68. package/dist/components/Text.svelte.d.ts +1 -1
  69. package/dist/crdt/admission.d.ts +2 -9
  70. package/dist/crdt/admission.js +3 -9
  71. package/dist/crdt/attribution/attribution.d.ts +11 -72
  72. package/dist/crdt/attribution/attribution.js +5 -52
  73. package/dist/crdt/attribution/block.d.ts +0 -78
  74. package/dist/crdt/attribution/block.js +1 -144
  75. package/dist/crdt/data.d.ts +18 -13
  76. package/dist/crdt/data.js +49 -71
  77. package/dist/crdt/doc/anchors.js +4 -4
  78. package/dist/crdt/doc/content.d.ts +5 -1
  79. package/dist/crdt/doc/content.js +3 -1
  80. package/dist/crdt/doc/delete.d.ts +1 -0
  81. package/dist/crdt/doc/funnel.d.ts +0 -23
  82. package/dist/crdt/doc/funnel.js +34 -85
  83. package/dist/crdt/doc/gate.d.ts +8 -9
  84. package/dist/crdt/doc/gate.js +7 -17
  85. package/dist/crdt/doc/history.d.ts +87 -14
  86. package/dist/crdt/doc/history.js +334 -149
  87. package/dist/crdt/doc/layout.d.ts +0 -1
  88. package/dist/crdt/doc/layout.js +2 -3
  89. package/dist/crdt/doc/meta.d.ts +4 -4
  90. package/dist/crdt/doc/meta.js +10 -21
  91. package/dist/crdt/doc/moves.d.ts +4 -4
  92. package/dist/crdt/doc/moves.js +5 -5
  93. package/dist/crdt/doc/plan.d.ts +2 -0
  94. package/dist/crdt/doc/plan.js +2 -0
  95. package/dist/crdt/doc/reads.d.ts +8 -5
  96. package/dist/crdt/doc/reads.js +49 -50
  97. package/dist/crdt/doc/seed.d.ts +15 -6
  98. package/dist/crdt/doc/seed.js +27 -26
  99. package/dist/crdt/doc/split-merge.d.ts +1 -3
  100. package/dist/crdt/doc/split-merge.js +4 -5
  101. package/dist/crdt/doc/steps.d.ts +3 -7
  102. package/dist/crdt/doc/steps.js +20 -9
  103. package/dist/crdt/doc/types.d.ts +0 -10
  104. package/dist/crdt/document.d.ts +32 -115
  105. package/dist/crdt/document.js +216 -302
  106. package/dist/crdt/edytor-doc.d.ts +689 -90
  107. package/dist/crdt/edytor-doc.js +74 -149
  108. package/dist/crdt/engine-api.d.ts +15 -47
  109. package/dist/crdt/engine.d.ts +7 -17
  110. package/dist/crdt/engine.js +9 -19
  111. package/dist/crdt/flow.d.ts +9 -37
  112. package/dist/crdt/flow.js +260 -238
  113. package/dist/crdt/index.d.ts +32 -85
  114. package/dist/crdt/index.js +21 -47
  115. package/dist/crdt/operations.d.ts +24 -33
  116. package/dist/crdt/operations.js +8 -17
  117. package/dist/crdt/placement/display.d.ts +0 -2
  118. package/dist/crdt/placement/display.js +0 -15
  119. package/dist/crdt/placement/model.d.ts +160 -12
  120. package/dist/crdt/placement/model.js +413 -414
  121. package/dist/crdt/placement/rank.d.ts +1 -5
  122. package/dist/crdt/placement/rank.js +28 -38
  123. package/dist/crdt/props.d.ts +32 -0
  124. package/dist/crdt/props.js +172 -0
  125. package/dist/crdt/protocol.d.ts +4 -5
  126. package/dist/crdt/protocol.js +3 -4
  127. package/dist/crdt/protocols/awareness.d.ts +3 -7
  128. package/dist/crdt/protocols/awareness.js +17 -33
  129. package/dist/crdt/protocols/envelope.d.ts +9 -29
  130. package/dist/crdt/protocols/envelope.js +8 -25
  131. package/dist/crdt/protocols/sync.d.ts +15 -30
  132. package/dist/crdt/protocols/sync.js +27 -89
  133. package/dist/crdt/providers/bound.d.ts +3 -1
  134. package/dist/crdt/providers/bound.js +3 -1
  135. package/dist/crdt/providers/container.d.ts +11 -17
  136. package/dist/crdt/providers/container.js +39 -27
  137. package/dist/crdt/providers/index.d.ts +34 -6
  138. package/dist/crdt/providers/index.js +106 -111
  139. package/dist/crdt/providers/indexeddb.d.ts +2 -12
  140. package/dist/crdt/providers/indexeddb.js +29 -90
  141. package/dist/crdt/providers/room.d.ts +58 -2
  142. package/dist/crdt/providers/room.js +38 -21
  143. package/dist/crdt/providers/websocket.d.ts +1 -1
  144. package/dist/crdt/providers/websocket.js +3 -4
  145. package/dist/crdt/purge.d.ts +2 -2
  146. package/dist/crdt/purge.js +69 -6
  147. package/dist/crdt/rangeDelete.d.ts +4 -42
  148. package/dist/crdt/rangeDelete.js +7 -6
  149. package/dist/crdt/restore.d.ts +21 -1
  150. package/dist/crdt/restore.js +54 -59
  151. package/dist/crdt/schema.d.ts +2 -2
  152. package/dist/crdt/schema.js +4 -5
  153. package/dist/crdt/semantics.d.ts +10 -15
  154. package/dist/crdt/semantics.js +22 -21
  155. package/dist/crdt/storage.d.ts +7 -13
  156. package/dist/crdt/storage.js +10 -24
  157. package/dist/crdt/structs.d.ts +42 -47
  158. package/dist/crdt/structs.js +76 -67
  159. package/dist/crdt/tables.d.ts +9 -0
  160. package/dist/crdt/tables.js +20 -0
  161. package/dist/crdt/text/delete-index.d.ts +0 -13
  162. package/dist/crdt/text/delete-index.js +7 -14
  163. package/dist/crdt/text/deletes.d.ts +9 -22
  164. package/dist/crdt/text/deletes.js +11 -74
  165. package/dist/crdt/text/index/cache.js +3 -3
  166. package/dist/crdt/text/index/fold.d.ts +1 -2
  167. package/dist/crdt/text/index/fold.js +15 -10
  168. package/dist/crdt/text/index/layout.d.ts +0 -10
  169. package/dist/crdt/text/index/layout.js +6 -20
  170. package/dist/crdt/text/index/records.js +2 -1
  171. package/dist/crdt/text/index/report.js +5 -6
  172. package/dist/crdt/text/index/shared.d.ts +11 -4
  173. package/dist/crdt/text/index/shared.js +8 -7
  174. package/dist/crdt/text/index/state.d.ts +3 -33
  175. package/dist/crdt/text/index/state.js +2 -4
  176. package/dist/crdt/text/model.d.ts +82 -2
  177. package/dist/crdt/text/model.js +344 -354
  178. package/dist/crdt/text/rows.d.ts +0 -2
  179. package/dist/crdt/text/rows.js +0 -11
  180. package/dist/crdt/text/runs.d.ts +6 -3
  181. package/dist/crdt/text/runs.js +132 -137
  182. package/dist/crdt/text/streams.d.ts +1 -1
  183. package/dist/crdt/text/streams.js +1 -1
  184. package/dist/crdt/vendor/yjs/API-NOTES.md +25 -8
  185. package/dist/crdt/vendor/yjs/UPSTREAM.md +288 -8
  186. package/dist/crdt/vendor/yjs/dts/global.d.ts +5 -26
  187. package/dist/crdt/vendor/yjs/dts/index.d.ts +10 -15
  188. package/dist/crdt/vendor/yjs/dts/structs/AbstractStruct.d.ts +2 -2
  189. package/dist/crdt/vendor/yjs/dts/structs/Item.d.ts +14 -219
  190. package/dist/crdt/vendor/yjs/dts/structs/Skip.d.ts +2 -2
  191. package/dist/crdt/vendor/yjs/dts/utils/BlockSet.d.ts +2 -2
  192. package/dist/crdt/vendor/yjs/dts/utils/Doc.d.ts +12 -123
  193. package/dist/crdt/vendor/yjs/dts/utils/ID.d.ts +1 -1
  194. package/dist/crdt/vendor/yjs/dts/utils/RangeCursor.d.ts +37 -58
  195. package/dist/crdt/vendor/yjs/dts/utils/Transaction.d.ts +3 -78
  196. package/dist/crdt/vendor/yjs/dts/utils/UpdateDecoder.d.ts +2 -81
  197. package/dist/crdt/vendor/yjs/dts/utils/UpdateEncoder.d.ts +2 -74
  198. package/dist/crdt/vendor/yjs/dts/utils/encoding-helpers.d.ts +4 -4
  199. package/dist/crdt/vendor/yjs/dts/utils/encoding.d.ts +6 -18
  200. package/dist/crdt/vendor/yjs/dts/utils/ids.d.ts +12 -237
  201. package/dist/crdt/vendor/yjs/dts/utils/positions.d.ts +5 -0
  202. package/dist/crdt/vendor/yjs/dts/utils/redo.d.ts +3 -0
  203. package/dist/crdt/vendor/yjs/dts/utils/transaction-helpers.d.ts +1 -3
  204. package/dist/crdt/vendor/yjs/dts/utils/updates.d.ts +6 -23
  205. package/dist/crdt/vendor/yjs/dts/ynode.d.ts +73 -498
  206. package/dist/crdt/vendor/yjs/global.d.ts +5 -26
  207. package/dist/crdt/vendor/yjs/src/index.js +11 -25
  208. package/dist/crdt/vendor/yjs/src/structs/AbstractStruct.js +1 -1
  209. package/dist/crdt/vendor/yjs/src/structs/GC.js +1 -1
  210. package/dist/crdt/vendor/yjs/src/structs/Item.js +10 -372
  211. package/dist/crdt/vendor/yjs/src/structs/Skip.js +1 -1
  212. package/dist/crdt/vendor/yjs/src/utils/BlockSet.js +2 -2
  213. package/dist/crdt/vendor/yjs/src/utils/Doc.js +14 -170
  214. package/dist/crdt/vendor/yjs/src/utils/ID.js +1 -1
  215. package/dist/crdt/vendor/yjs/src/utils/RangeCursor.js +61 -128
  216. package/dist/crdt/vendor/yjs/src/utils/StructStore.js +0 -22
  217. package/dist/crdt/vendor/yjs/src/utils/Transaction.js +17 -282
  218. package/dist/crdt/vendor/yjs/src/utils/UpdateDecoder.js +3 -130
  219. package/dist/crdt/vendor/yjs/src/utils/UpdateEncoder.js +2 -132
  220. package/dist/crdt/vendor/yjs/src/utils/encoding-helpers.js +4 -4
  221. package/dist/crdt/vendor/yjs/src/utils/encoding.js +49 -146
  222. package/dist/crdt/vendor/yjs/src/utils/ids.js +23 -900
  223. package/dist/crdt/vendor/yjs/src/utils/positions.js +115 -0
  224. package/dist/crdt/vendor/yjs/src/utils/redo.js +143 -0
  225. package/dist/crdt/vendor/yjs/src/utils/transaction-helpers.js +10 -127
  226. package/dist/crdt/vendor/yjs/src/utils/updates.js +7 -50
  227. package/dist/crdt/vendor/yjs/src/ynode.js +261 -2226
  228. package/dist/dnd/autoScroll.js +1 -2
  229. package/dist/{plugins/blockHandles → dnd}/dropIndicator.d.ts +2 -2
  230. package/dist/{plugins/blockHandles → dnd}/dropIndicator.js +52 -60
  231. package/dist/{plugins/blockHandles → dnd}/geometry.d.ts +4 -3
  232. package/dist/{plugins/blockHandles → dnd}/geometry.js +6 -6
  233. package/dist/dnd/placement.d.ts +200 -0
  234. package/dist/dnd/placement.js +426 -0
  235. package/dist/dnd/pragmatic.d.ts +4 -22
  236. package/dist/dnd/pragmatic.js +7 -26
  237. package/dist/dnd/track.d.ts +14 -0
  238. package/dist/dnd/track.js +55 -0
  239. package/dist/dnd/vendor/pragmatic/UPSTREAM.md +103 -0
  240. package/dist/dnd/vendor/pragmatic/bind-event-listener/LICENSE +21 -0
  241. package/dist/dnd/vendor/pragmatic/bind-event-listener/bind-all.js +46 -0
  242. package/dist/dnd/vendor/pragmatic/bind-event-listener/bind.js +7 -0
  243. package/dist/dnd/vendor/pragmatic/bind-event-listener/index.js +2 -0
  244. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/LICENSE.md +11 -0
  245. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/adapter/element-adapter-native-data-key.js +6 -0
  246. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/adapter/element-adapter.d.ts +57 -0
  247. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/adapter/element-adapter.js +306 -0
  248. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/entry-point/element/adapter.d.ts +8 -0
  249. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/entry-point/element/adapter.js +10 -0
  250. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/entry-point/element/set-custom-native-drag-preview.d.ts +4 -0
  251. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/entry-point/element/set-custom-native-drag-preview.js +6 -0
  252. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/entry-point/types.d.ts +1 -0
  253. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/honey-pot-fix/get-element-from-point-without-honey-pot.js +12 -0
  254. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/honey-pot-fix/honey-pot-data-attribute.js +3 -0
  255. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/honey-pot-fix/is-honey-pot-element.js +4 -0
  256. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/honey-pot-fix/make-honey-pot-fix.js +333 -0
  257. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/internal-types.d.ts +350 -0
  258. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/ledger/dispatch-consumer-event.js +128 -0
  259. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/ledger/lifecycle-manager.js +340 -0
  260. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/ledger/usage-ledger.js +32 -0
  261. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/make-adapter/make-adapter.js +59 -0
  262. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/make-adapter/make-drop-target.js +288 -0
  263. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/make-adapter/make-monitor.js +85 -0
  264. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/public-utils/combine.js +6 -0
  265. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/public-utils/element/custom-native-drag-preview/set-custom-native-drag-preview.d.ts +36 -0
  266. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/public-utils/element/custom-native-drag-preview/set-custom-native-drag-preview.js +153 -0
  267. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/public-utils/element/custom-native-drag-preview/types.d.ts +16 -0
  268. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/public-utils/once.js +13 -0
  269. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/add-attribute.js +7 -0
  270. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/android.js +10 -0
  271. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/changing-window/count-events-for-safari.js +104 -0
  272. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/changing-window/is-from-another-window.js +16 -0
  273. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/changing-window/is-leaving-window-in-safari.js +12 -0
  274. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/changing-window/is-leaving-window.js +55 -0
  275. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/detect-broken-drag.js +48 -0
  276. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/get-input.js +14 -0
  277. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/is-firefox.js +13 -0
  278. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/is-safari.js +19 -0
  279. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/max-z-index.js +3 -0
  280. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/media-types/text-media-type.js +6 -0
  281. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/media-types/url-media-type.js +6 -0
  282. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/popover-reset-styles.js +40 -0
  283. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/supports-popover.js +16 -0
  284. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/LICENSE.md +11 -0
  285. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/entry-point/element.d.ts +4 -0
  286. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/entry-point/element.js +8 -0
  287. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/internal-types.d.ts +50 -0
  288. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/over-element/data-attributes.js +9 -0
  289. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/over-element/get-scroll-by.js +117 -0
  290. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/over-element/make-api.js +90 -0
  291. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/over-element/try-scroll.js +183 -0
  292. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/axis.js +22 -0
  293. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/can-scroll-on-edge.js +17 -0
  294. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/configuration.js +49 -0
  295. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/edges.js +9 -0
  296. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/engagement-history.js +43 -0
  297. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/get-over-element-hitbox.js +50 -0
  298. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/get-percentage-in-range.js +19 -0
  299. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/get-scroll-change.js +106 -0
  300. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/is-axis-allowed.js +3 -0
  301. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/is-within.js +11 -0
  302. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/scheduler.js +104 -0
  303. package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/side.js +6 -0
  304. package/dist/dnd/vendor/pragmatic/raf-schd/LICENSE +21 -0
  305. package/dist/dnd/vendor/pragmatic/raf-schd/raf-schd.esm.js +34 -0
  306. package/dist/edytor.svelte.d.ts +46 -63
  307. package/dist/edytor.svelte.js +126 -181
  308. package/dist/events/beforeInputCommands.d.ts +6 -11
  309. package/dist/events/beforeInputCommands.js +189 -181
  310. package/dist/events/beforeInputDeleteCommands.d.ts +20 -1
  311. package/dist/events/beforeInputDeleteCommands.js +153 -204
  312. package/dist/events/domTextOffset.d.ts +9 -9
  313. package/dist/events/domTextOffset.js +20 -48
  314. package/dist/events/events.utils.d.ts +0 -2
  315. package/dist/events/events.utils.js +0 -4
  316. package/dist/events/nativeInteractiveControl.d.ts +13 -13
  317. package/dist/events/nativeInteractiveControl.js +28 -56
  318. package/dist/events/onBeforeInput.d.ts +6 -1
  319. package/dist/events/onBeforeInput.js +207 -331
  320. package/dist/events/onCopy.js +1 -5
  321. package/dist/events/onDrop.d.ts +7 -1
  322. package/dist/events/onDrop.js +64 -78
  323. package/dist/events/onFocus.d.ts +9 -4
  324. package/dist/events/onFocus.js +45 -67
  325. package/dist/events/onInput.d.ts +8 -4
  326. package/dist/events/onInput.js +34 -147
  327. package/dist/events/onKeyDown.js +55 -122
  328. package/dist/events/onPaste.d.ts +14 -1
  329. package/dist/events/onPaste.js +51 -76
  330. package/dist/index.d.ts +11 -15
  331. package/dist/index.js +3 -3
  332. package/dist/kinds.d.ts +4 -6
  333. package/dist/kinds.js +28 -27
  334. package/dist/labels.d.ts +83 -320
  335. package/dist/labels.js +181 -408
  336. package/dist/plugins/Chrome.svelte +29 -0
  337. package/dist/plugins/Chrome.svelte.d.ts +32 -0
  338. package/dist/plugins/Control.svelte +23 -0
  339. package/dist/plugins/Control.svelte.d.ts +30 -0
  340. package/dist/plugins/anchored.svelte.d.ts +47 -0
  341. package/dist/plugins/anchored.svelte.js +73 -0
  342. package/dist/plugins/arrowMove/arrowMove.d.ts +2 -1
  343. package/dist/plugins/arrowMove/arrowMove.js +9 -5
  344. package/dist/plugins/bands.svelte.d.ts +57 -0
  345. package/dist/plugins/bands.svelte.js +95 -0
  346. package/dist/plugins/blockHandles/BlockHandle.svelte +14 -154
  347. package/dist/plugins/blockHandles/BlockHandle.svelte.d.ts +2 -2
  348. package/dist/plugins/blockHandles/BlockHandleController.svelte.d.ts +21 -196
  349. package/dist/plugins/blockHandles/BlockHandleController.svelte.js +158 -573
  350. package/dist/plugins/blockHandles/BlockHandles.svelte +15 -23
  351. package/dist/plugins/blockHandles/BlockHandles.svelte.d.ts +2 -2
  352. package/dist/plugins/blockHandles/blockHandlesPlugin.d.ts +25 -39
  353. package/dist/plugins/blockHandles/blockHandlesPlugin.js +130 -185
  354. package/dist/plugins/blockHandles/dragPreview.d.ts +8 -6
  355. package/dist/plugins/blockHandles/dragPreview.js +18 -16
  356. package/dist/plugins/blockMenu/BlockMenuController.svelte.d.ts +28 -38
  357. package/dist/plugins/blockMenu/BlockMenuController.svelte.js +116 -183
  358. package/dist/plugins/blockMenu/blockMenuPlugin.d.ts +1 -3
  359. package/dist/plugins/blockMenu/blockMenuPlugin.js +12 -29
  360. package/dist/plugins/brand.d.ts +8 -0
  361. package/dist/plugins/brand.js +8 -0
  362. package/dist/plugins/chrome.d.ts +45 -38
  363. package/dist/plugins/chrome.js +59 -36
  364. package/dist/plugins/code/CodeHeader.svelte +8 -38
  365. package/dist/plugins/code/CodePlugin.svelte +53 -56
  366. package/dist/plugins/code/CodePlugin.svelte.d.ts +0 -2
  367. package/dist/plugins/code/LanguageMenu.svelte +16 -125
  368. package/dist/plugins/code/LanguageMenu.svelte.d.ts +2 -1
  369. package/dist/plugins/code/code.css +5 -117
  370. package/dist/plugins/code/header.svelte.d.ts +2 -11
  371. package/dist/plugins/code/header.svelte.js +11 -38
  372. package/dist/plugins/code/languageMenu.svelte.d.ts +12 -32
  373. package/dist/plugins/code/languageMenu.svelte.js +30 -160
  374. package/dist/plugins/code/languages.d.ts +9 -22
  375. package/dist/plugins/code/languages.js +39 -128
  376. package/dist/plugins/columns/ColumnResize.svelte +16 -27
  377. package/dist/plugins/columns/ColumnResize.svelte.d.ts +1 -1
  378. package/dist/plugins/columns/ColumnsPlugin.svelte +46 -78
  379. package/dist/plugins/columns/ColumnsPlugin.svelte.d.ts +0 -12
  380. package/dist/plugins/columns/columns.css +7 -26
  381. package/dist/plugins/columns/gaps.d.ts +7 -5
  382. package/dist/plugins/columns/gaps.js +11 -6
  383. package/dist/plugins/columns/resize.svelte.d.ts +17 -54
  384. package/dist/plugins/columns/resize.svelte.js +80 -173
  385. package/dist/plugins/comments/CommentsController.svelte.d.ts +1 -4
  386. package/dist/plugins/comments/CommentsController.svelte.js +14 -25
  387. package/dist/plugins/comments/CommentsSidebar.svelte +82 -431
  388. package/dist/plugins/comments/CommentsSidebar.svelte.d.ts +4 -2
  389. package/dist/plugins/comments/commentsPlugin.d.ts +25 -9
  390. package/dist/plugins/comments/commentsPlugin.js +12 -10
  391. package/dist/plugins/equation/EquationEditor.svelte +16 -130
  392. package/dist/plugins/equation/EquationEditor.svelte.d.ts +1 -2
  393. package/dist/plugins/equation/EquationPlugin.svelte +109 -172
  394. package/dist/plugins/equation/EquationPlugin.svelte.d.ts +3 -2
  395. package/dist/plugins/equation/EquationView.svelte +20 -11
  396. package/dist/plugins/equation/equation.css +7 -0
  397. package/dist/plugins/equation/equation.svelte.d.ts +37 -24
  398. package/dist/plugins/equation/equation.svelte.js +20 -94
  399. package/dist/plugins/equation/katex.js +6 -9
  400. package/dist/plugins/fileDrop.d.ts +28 -0
  401. package/dist/plugins/fileDrop.js +116 -0
  402. package/dist/plugins/find/FindController.svelte.d.ts +8 -13
  403. package/dist/plugins/find/FindController.svelte.js +34 -55
  404. package/dist/plugins/find/findPlugin.d.ts +4 -8
  405. package/dist/plugins/find/findPlugin.js +29 -9
  406. package/dist/plugins/image/ImageChrome.svelte +6 -167
  407. package/dist/plugins/image/ImageChrome.svelte.d.ts +0 -2
  408. package/dist/plugins/image/ImagePlugin.svelte +71 -151
  409. package/dist/plugins/image/ImagePlugin.svelte.d.ts +12 -41
  410. package/dist/plugins/image/ImageToolbarHost.svelte +37 -0
  411. package/dist/plugins/image/ImageToolbarHost.svelte.d.ts +9 -0
  412. package/dist/plugins/image/controls.svelte.d.ts +6 -36
  413. package/dist/plugins/image/controls.svelte.js +43 -212
  414. package/dist/plugins/image/image.css +17 -0
  415. package/dist/plugins/image/image.d.ts +0 -5
  416. package/dist/plugins/image/image.js +0 -3
  417. package/dist/plugins/image/toolbar.svelte.d.ts +69 -0
  418. package/dist/plugins/image/toolbar.svelte.js +145 -0
  419. package/dist/plugins/index.d.ts +30 -26
  420. package/dist/plugins/index.js +28 -22
  421. package/dist/plugins/list.svelte.d.ts +128 -0
  422. package/dist/plugins/list.svelte.js +217 -0
  423. package/dist/plugins/markdownShortcuts.d.ts +1 -1
  424. package/dist/plugins/markdownShortcuts.js +10 -9
  425. package/dist/plugins/marquee/MarqueeBox.svelte +3 -20
  426. package/dist/plugins/marquee/MarqueeBox.svelte.d.ts +1 -1
  427. package/dist/plugins/marquee/MarqueeController.svelte.d.ts +0 -2
  428. package/dist/plugins/marquee/MarqueeController.svelte.js +20 -23
  429. package/dist/plugins/marquee/marquee.js +4 -21
  430. package/dist/plugins/marquee/marqueePlugin.d.ts +4 -3
  431. package/dist/plugins/marquee/marqueePlugin.js +16 -15
  432. package/dist/plugins/media/AudioPlugin.svelte +13 -88
  433. package/dist/plugins/media/AudioPlugin.svelte.d.ts +11 -4
  434. package/dist/plugins/media/BookmarkPlugin.svelte +113 -120
  435. package/dist/plugins/media/BookmarkPlugin.svelte.d.ts +10 -15
  436. package/dist/plugins/media/EmbedPlugin.svelte +82 -86
  437. package/dist/plugins/media/EmbedPlugin.svelte.d.ts +11 -17
  438. package/dist/plugins/media/EmptySlot.svelte +44 -0
  439. package/dist/plugins/media/EmptySlot.svelte.d.ts +25 -0
  440. package/dist/plugins/media/FilePlugin.svelte +45 -113
  441. package/dist/plugins/media/FilePlugin.svelte.d.ts +21 -4
  442. package/dist/plugins/media/MediaEmpty.svelte +51 -90
  443. package/dist/plugins/media/MediaEmpty.svelte.d.ts +26 -10
  444. package/dist/plugins/media/SourceBlock.svelte +200 -0
  445. package/dist/plugins/media/SourceBlock.svelte.d.ts +34 -0
  446. package/dist/plugins/media/UploadPreview.svelte +32 -0
  447. package/dist/plugins/media/UploadPreview.svelte.d.ts +11 -0
  448. package/dist/plugins/media/VideoPlugin.svelte +14 -97
  449. package/dist/plugins/media/VideoPlugin.svelte.d.ts +12 -5
  450. package/dist/plugins/media/empty.svelte.d.ts +47 -46
  451. package/dist/plugins/media/empty.svelte.js +67 -60
  452. package/dist/plugins/media/media.d.ts +97 -44
  453. package/dist/plugins/media/media.js +77 -99
  454. package/dist/plugins/media/upload.css +23 -0
  455. package/dist/plugins/media/urlPaste.svelte.d.ts +6 -37
  456. package/dist/plugins/media/urlPaste.svelte.js +32 -102
  457. package/dist/plugins/mention/MentionPlugin.svelte +84 -126
  458. package/dist/plugins/mention/MentionPlugin.svelte.d.ts +17 -27
  459. package/dist/plugins/mention/mention.css +6 -0
  460. package/dist/plugins/page/PageLink.svelte +54 -38
  461. package/dist/plugins/page/PagePlugin.svelte +20 -18
  462. package/dist/plugins/page/PagePlugin.svelte.d.ts +2 -4
  463. package/dist/plugins/page/page.d.ts +35 -9
  464. package/dist/plugins/page/page.js +3 -4
  465. package/dist/plugins/pageLink/PageLinkPlugin.svelte +154 -109
  466. package/dist/plugins/pageLink/PageLinkPlugin.svelte.d.ts +19 -26
  467. package/dist/plugins/pageLink/pageLink.css +6 -0
  468. package/dist/plugins/planned.d.ts +10 -0
  469. package/dist/plugins/planned.js +12 -0
  470. package/dist/plugins/richtext/CalloutIcon.svelte +13 -26
  471. package/dist/plugins/richtext/CalloutIconPicker.svelte +26 -0
  472. package/dist/plugins/richtext/CalloutIconPicker.svelte.d.ts +9 -0
  473. package/dist/plugins/richtext/EmptyBody.svelte +13 -20
  474. package/dist/plugins/richtext/RichTextControl.svelte +39 -0
  475. package/dist/plugins/richtext/RichTextControl.svelte.d.ts +8 -0
  476. package/dist/plugins/richtext/RichTextPlugin.svelte +174 -183
  477. package/dist/plugins/richtext/RichTextPlugin.svelte.d.ts +34 -34
  478. package/dist/plugins/richtext/TodoCheckbox.svelte +10 -21
  479. package/dist/plugins/richtext/TodoCheckbox.svelte.d.ts +0 -2
  480. package/dist/plugins/richtext/body.js +2 -2
  481. package/dist/plugins/richtext/calloutIcons.svelte.d.ts +50 -55
  482. package/dist/plugins/richtext/calloutIcons.svelte.js +86 -174
  483. package/dist/plugins/richtext/callouts.d.ts +15 -0
  484. package/dist/plugins/richtext/callouts.js +23 -0
  485. package/dist/plugins/richtext/controls.svelte.d.ts +110 -0
  486. package/dist/plugins/richtext/controls.svelte.js +126 -0
  487. package/dist/plugins/richtext/richTextOperations.js +37 -28
  488. package/dist/plugins/richtext/richtext.css +6 -0
  489. package/dist/plugins/slashMenu/SlashMenuController.svelte.d.ts +2 -14
  490. package/dist/plugins/slashMenu/SlashMenuController.svelte.js +34 -71
  491. package/dist/plugins/slashMenu/slashMenuPlugin.d.ts +9 -26
  492. package/dist/plugins/slashMenu/slashMenuPlugin.js +27 -68
  493. package/dist/plugins/suggestions/SuggestionBars.svelte +27 -84
  494. package/dist/plugins/suggestions/SuggestionBars.svelte.d.ts +9 -3
  495. package/dist/plugins/suggestions/suggestionsPlugin.d.ts +10 -18
  496. package/dist/plugins/suggestions/suggestionsPlugin.js +9 -24
  497. package/dist/plugins/table/TableChrome.svelte +40 -124
  498. package/dist/plugins/table/TablePlugin.svelte +106 -168
  499. package/dist/plugins/table/TablePlugin.svelte.d.ts +0 -4
  500. package/dist/plugins/table/chrome.svelte.d.ts +38 -141
  501. package/dist/plugins/table/chrome.svelte.js +340 -589
  502. package/dist/plugins/table/ops.d.ts +47 -0
  503. package/dist/plugins/table/ops.js +233 -0
  504. package/dist/plugins/table/table.css +16 -152
  505. package/dist/plugins/table/table.d.ts +15 -14
  506. package/dist/plugins/table/table.js +22 -16
  507. package/dist/plugins/toc/TableOfContents.svelte +32 -38
  508. package/dist/plugins/toc/TableOfContents.svelte.d.ts +1 -5
  509. package/dist/plugins/toc/TocPlugin.svelte +22 -22
  510. package/dist/plugins/toc/TocPlugin.svelte.d.ts +4 -6
  511. package/dist/plugins/toc/toc.d.ts +41 -10
  512. package/dist/plugins/toc/toc.js +2 -3
  513. package/dist/plugins/toolbar/ToolbarController.svelte.d.ts +4 -68
  514. package/dist/plugins/toolbar/ToolbarController.svelte.js +63 -89
  515. package/dist/plugins/toolbar/toolbarPlugin.d.ts +8 -18
  516. package/dist/plugins/toolbar/toolbarPlugin.js +28 -43
  517. package/dist/plugins/triggers/TriggerController.svelte.d.ts +4 -68
  518. package/dist/plugins/triggers/TriggerController.svelte.js +48 -129
  519. package/dist/plugins/triggers/place.d.ts +0 -9
  520. package/dist/plugins/triggers/place.js +1 -17
  521. package/dist/plugins/triggers/triggers.d.ts +31 -9
  522. package/dist/plugins/triggers/triggers.js +82 -62
  523. package/dist/plugins/uploads.svelte.d.ts +55 -24
  524. package/dist/plugins/uploads.svelte.js +123 -50
  525. package/dist/plugins.d.ts +187 -66
  526. package/dist/selection/domSelection.d.ts +13 -4
  527. package/dist/selection/domSelection.js +110 -183
  528. package/dist/selection/pointer.svelte.d.ts +8 -10
  529. package/dist/selection/pointer.svelte.js +32 -73
  530. package/dist/selection/replaceSelection.d.ts +21 -22
  531. package/dist/selection/replaceSelection.js +60 -69
  532. package/dist/selection/selection.svelte.d.ts +5 -73
  533. package/dist/selection/selection.svelte.js +224 -542
  534. package/dist/selection/selection.utils.d.ts +34 -11
  535. package/dist/selection/selection.utils.js +128 -247
  536. package/dist/selection/visibility.d.ts +3 -8
  537. package/dist/selection/visibility.js +7 -5
  538. package/dist/session/announcer.svelte.d.ts +2 -1
  539. package/dist/session/announcer.svelte.js +7 -3
  540. package/dist/session/attempt.d.ts +43 -39
  541. package/dist/session/attempt.js +62 -55
  542. package/dist/session/bindings.js +117 -145
  543. package/dist/session/commands.d.ts +47 -22
  544. package/dist/session/commands.js +208 -208
  545. package/dist/session/composition.svelte.d.ts +2 -4
  546. package/dist/session/composition.svelte.js +55 -65
  547. package/dist/session/editing/text.d.ts +6 -0
  548. package/dist/session/editing/text.js +17 -3
  549. package/dist/session/handles.d.ts +10 -1
  550. package/dist/session/handles.js +28 -0
  551. package/dist/session/history.d.ts +0 -4
  552. package/dist/session/history.js +16 -21
  553. package/dist/session/inputRules.d.ts +6 -3
  554. package/dist/session/inputRules.js +78 -83
  555. package/dist/session/keymap.d.ts +1 -6
  556. package/dist/session/keymap.js +17 -20
  557. package/dist/session/moves.d.ts +43 -10
  558. package/dist/session/moves.js +101 -59
  559. package/dist/session/navigation.d.ts +10 -2
  560. package/dist/session/navigation.js +140 -172
  561. package/dist/session/ports.d.ts +2 -7
  562. package/dist/session/props.d.ts +25 -25
  563. package/dist/session/props.js +62 -159
  564. package/dist/session/selection.d.ts +4 -3
  565. package/dist/session/selection.js +5 -0
  566. package/dist/session/suggestions.svelte.d.ts +1 -1
  567. package/dist/session/suggestions.svelte.js +42 -47
  568. package/dist/session/uploads.d.ts +29 -0
  569. package/dist/session/uploads.js +10 -0
  570. package/dist/session/virtual.d.ts +3 -3
  571. package/dist/session/virtual.js +18 -40
  572. package/dist/surface/attributes.d.ts +1 -0
  573. package/dist/surface/attributes.js +3 -26
  574. package/dist/surface/cells.d.ts +5 -0
  575. package/dist/surface/cells.js +5 -0
  576. package/dist/surface/lines.d.ts +2 -2
  577. package/dist/surface/lines.js +1 -1
  578. package/dist/surface/observer.svelte.d.ts +3 -20
  579. package/dist/surface/observer.svelte.js +52 -72
  580. package/dist/surface/overlay.d.ts +41 -3
  581. package/dist/surface/overlay.js +92 -37
  582. package/dist/surface/pin.svelte.d.ts +5 -0
  583. package/dist/surface/pin.svelte.js +5 -0
  584. package/dist/surface/projector.svelte.d.ts +4 -6
  585. package/dist/surface/projector.svelte.js +42 -69
  586. package/dist/text/text.svelte.d.ts +14 -40
  587. package/dist/text/text.svelte.js +35 -51
  588. package/dist/text/wordBoundary.d.ts +19 -0
  589. package/dist/text/wordBoundary.js +29 -44
  590. package/dist/themes/notion.css +272 -106
  591. package/dist/utils/json.d.ts +3 -1
  592. package/dist/utils/json.js +52 -51
  593. package/dist/utils/listen.d.ts +8 -0
  594. package/dist/utils/listen.js +19 -0
  595. package/package.json +4 -5
  596. package/dist/block/block.utils.d.ts +0 -340
  597. package/dist/block/block.utils.js +0 -356
  598. package/dist/collaboration/history/HistoryPanel.svelte +0 -554
  599. package/dist/collaboration/history/HistoryPanel.svelte.d.ts +0 -7
  600. package/dist/collaboration/history/panel.d.ts +0 -61
  601. package/dist/collaboration/history/panel.js +0 -3
  602. package/dist/components/SuggestionRanges.svelte +0 -58
  603. package/dist/components/SuggestionRanges.svelte.d.ts +0 -7
  604. package/dist/crdt/doc/table.d.ts +0 -21
  605. package/dist/crdt/doc/table.js +0 -288
  606. package/dist/crdt/migration/generation.d.ts +0 -58
  607. package/dist/crdt/migration/generation.js +0 -70
  608. package/dist/crdt/migration/legacy-schema.d.ts +0 -61
  609. package/dist/crdt/migration/legacy-schema.js +0 -151
  610. package/dist/crdt/migration/migrate.d.ts +0 -56
  611. package/dist/crdt/migration/migrate.js +0 -227
  612. package/dist/crdt/nodes.d.ts +0 -121
  613. package/dist/crdt/nodes.js +0 -56
  614. package/dist/crdt/text/index/checks.d.ts +0 -15
  615. package/dist/crdt/text/index/checks.js +0 -156
  616. package/dist/crdt/vendor/yjs/dts/utils/EventHandler.d.ts +0 -17
  617. package/dist/crdt/vendor/yjs/dts/utils/RelativePosition.d.ts +0 -80
  618. package/dist/crdt/vendor/yjs/dts/utils/UndoManager.d.ts +0 -205
  619. package/dist/crdt/vendor/yjs/dts/utils/YEvent.d.ts +0 -93
  620. package/dist/crdt/vendor/yjs/dts/utils/meta.d.ts +0 -25
  621. package/dist/crdt/vendor/yjs/dts/utils/renderer-helpers.d.ts +0 -98
  622. package/dist/crdt/vendor/yjs/dts/utils/schemas.d.ts +0 -2
  623. package/dist/crdt/vendor/yjs/src/utils/EventHandler.js +0 -75
  624. package/dist/crdt/vendor/yjs/src/utils/RelativePosition.js +0 -301
  625. package/dist/crdt/vendor/yjs/src/utils/UndoManager.js +0 -554
  626. package/dist/crdt/vendor/yjs/src/utils/YEvent.js +0 -158
  627. package/dist/crdt/vendor/yjs/src/utils/meta.js +0 -74
  628. package/dist/crdt/vendor/yjs/src/utils/renderer-helpers.js +0 -186
  629. package/dist/crdt/vendor/yjs/src/utils/schemas.js +0 -3
  630. package/dist/edytor.utils.d.ts +0 -50
  631. package/dist/edytor.utils.js +0 -67
  632. package/dist/plugins/blockMenu/BlockMenu.svelte +0 -335
  633. package/dist/plugins/blockMenu/BlockMenu.svelte.d.ts +0 -9
  634. package/dist/plugins/find/FindBar.svelte +0 -170
  635. package/dist/plugins/find/FindBar.svelte.d.ts +0 -9
  636. package/dist/plugins/find/FindHighlights.svelte +0 -75
  637. package/dist/plugins/find/FindHighlights.svelte.d.ts +0 -9
  638. package/dist/plugins/icons.d.ts +0 -2
  639. package/dist/plugins/icons.js +0 -63
  640. package/dist/plugins/image/ImageEmpty.svelte +0 -93
  641. package/dist/plugins/image/ImageEmpty.svelte.d.ts +0 -15
  642. package/dist/plugins/image/empty.svelte.d.ts +0 -56
  643. package/dist/plugins/image/empty.svelte.js +0 -83
  644. package/dist/plugins/keepInView.d.ts +0 -4
  645. package/dist/plugins/keepInView.js +0 -6
  646. package/dist/plugins/media/UrlPasteMenu.svelte +0 -92
  647. package/dist/plugins/media/UrlPasteMenu.svelte.d.ts +0 -9
  648. package/dist/plugins/richtext/CalloutIconMenu.svelte +0 -98
  649. package/dist/plugins/richtext/CalloutIconMenu.svelte.d.ts +0 -9
  650. package/dist/plugins/richtext/labels.d.ts +0 -9
  651. package/dist/plugins/richtext/labels.js +0 -7
  652. package/dist/plugins/slashMenu/SlashMenu.svelte +0 -276
  653. package/dist/plugins/slashMenu/SlashMenu.svelte.d.ts +0 -11
  654. package/dist/plugins/table/dragPreview.d.ts +0 -29
  655. package/dist/plugins/table/dragPreview.js +0 -103
  656. package/dist/plugins/toolbar/LinkCard.svelte +0 -122
  657. package/dist/plugins/toolbar/LinkCard.svelte.d.ts +0 -9
  658. package/dist/plugins/toolbar/Toolbar.svelte +0 -349
  659. package/dist/plugins/toolbar/Toolbar.svelte.d.ts +0 -9
  660. package/dist/plugins/triggers/TriggerMenu.svelte +0 -135
  661. package/dist/plugins/triggers/TriggerMenu.svelte.d.ts +0 -7
  662. package/dist/text/deltas.d.ts +0 -22
  663. package/dist/text/deltas.js +0 -46
  664. package/dist/text/text.utils.d.ts +0 -45
  665. package/dist/text/text.utils.js +0 -199
  666. /package/dist/{plugins/columns → dnd}/stacking.d.ts +0 -0
  667. /package/dist/{plugins/columns → dnd}/stacking.js +0 -0
@@ -1,41 +1,29 @@
1
- export function warnPrematureAccess(): void;
2
- export function createAttributionFromAttributionItems(attrs: Array<ContentAttribute<any>> | null, deleted: boolean): Attribution | undefined;
3
1
  export class ItemTextListPosition {
4
2
  /**
5
3
  * @param {Item|null} left
6
4
  * @param {Item|null} right
7
5
  * @param {number} index
8
6
  * @param {Map<string,any>} currentFormats
9
- * @param {AbstractRenderer?} renderer
10
7
  */
11
- constructor(left: Item | null, right: Item | null, index: number, currentFormats: Map<string, any>, renderer: AbstractRenderer | null);
8
+ constructor(left: Item | null, right: Item | null, index: number, currentFormats: Map<string, any>);
12
9
  left: Item | null;
13
10
  right: Item | null;
14
11
  index: number;
15
12
  currentFormats: Map<string, any>;
16
- renderer: import("./utils/renderer-helpers.js").AbstractRenderer | null;
17
13
  /**
18
14
  * Only call this if you know that this.right is defined
19
15
  */
20
16
  forward(): void;
21
17
  /**
18
+ * Move past `length` live units, splitting the item the last one ends in,
19
+ * and past the deleted items around them (YP19: the positioning of every
20
+ * write; mark items are folded, never rewritten).
21
+ *
22
22
  * @param {Transaction} transaction
23
- * @param {YNode} parent
24
23
  * @param {number} length
25
- * @param {Object<string,any>} formats
26
- *
27
- * @function
28
24
  */
29
- formatText(transaction: Transaction, parent: YNode, length: number, formats: {
30
- [x: string]: any;
31
- }): void;
25
+ advance(transaction: Transaction, length: number): void;
32
26
  }
33
- export function insertContent(transaction: Transaction, parent: YNode, currPos: ItemTextListPosition, content: import("./structs/Item.js").AbstractContent, formats: {
34
- [x: string]: any;
35
- }): void;
36
- export function insertContentHelper(transaction: Transaction, parent: YNode, currPos: ItemTextListPosition, insert: Array<any> | string, formats: {
37
- [x: string]: any;
38
- }): void;
39
27
  export function insertAtGapEndHelper(transaction: Transaction, parent: YNode, index: number, content: import("./structs/Item.js").AbstractContent): void;
40
28
  export function deleteText(transaction: Transaction, currPos: ItemTextListPosition, length: number): ItemTextListPosition;
41
29
  export class ArraySearchMarker {
@@ -74,43 +62,24 @@ export class ArraySearchMarker {
74
62
  formats: Map<string, any> | null;
75
63
  timestamp: number;
76
64
  }
77
- export function plantSearchMarker(parent: YNode<any>, p: Item, index: number, formats: Map<string, any>): void;
65
+ export function plantMarker(parent: YNode, currPos: ItemTextListPosition): void;
66
+ export function plantSearchMarker(parent: YNode, p: Item, index: number, formats: Map<string, any>): void;
78
67
  export function findMarker(yarray: YNode, index: number): ArraySearchMarker | null;
79
68
  export function updateMarkerChanges(searchMarker: Array<ArraySearchMarker>, index: number, len: number): void;
80
- export function callTypeObservers(type: YNode, transaction: Transaction, event: YEvent<any>): void;
69
+ export function cursorAt(transaction: Transaction, node: YNode, index: number): ItemTextListPosition;
81
70
  /**
82
- * Abstract Yjs Type class.
83
- *
84
- * A `YNode` is a {@link https://github.com/dmonad/lib0 lib0} `RDT` ("replicated data type", see
85
- * `lib0-v14/delta/rdt.js`): it emits a `'delta'` event whenever its state changes (carrying the change
86
- * and the origin of the transaction that caused it), accepts foreign
87
- * changes via {@link YNode#applyDelta}, exposes its delta {@link YNode#$delta schema}, and can be
88
- * torn down via {@link YNode#destroy}. This lets a `YNode` be `bind()`-ed to any other RDT (another
89
- * `YNode`, an in-memory delta, a DOM subtree, …). The legacy {@link YNode#observe `observe`} /
90
- * {@link YNode#observeDeep `observeDeep`} `YEvent` API continues to work alongside the `'delta'`
91
- * channel.
92
- *
93
- * @template {delta.DeltaConf} [DConf=any]
94
- * @extends {ObservableV2<{ delta: (delta: delta.Delta<DConf>, origin: any) => void, destroy: (type: YNode<DConf>) => void }>}
71
+ * The engine's node: a sequence (text, elements, nested nodes) and a map of attributes. YP19: the
72
+ * reads and writes edytor calls — no observers, no plain formats, no JSON or string renderings.
95
73
  */
96
- export class YNode<DConf extends delta.DeltaConf = any> extends ObservableV2<{
97
- delta: (delta: delta.Delta<DConf>, origin: any) => void;
98
- destroy: (type: YNode<DConf>) => void;
99
- }> {
100
- /**
101
- * @template {delta.DeltaConf} DC
102
- * @param {delta.Delta<DC>} d
103
- * @return {YNode<DC>}
104
- */
105
- static from<DC extends delta.DeltaConf>(d: delta.Delta<DC>): YNode<DC>;
74
+ export class YNode {
106
75
  /**
107
- * @param {delta.DeltaConfGetName<DConf>?} name
76
+ * @param {string?} name
108
77
  */
109
- constructor(name?: delta.DeltaConfGetName<DConf> | null);
78
+ constructor(name?: string | null);
110
79
  /**
111
- * @type {delta.DeltaConfGetName<DConf>}
80
+ * @type {string|null}
112
81
  */
113
- name: delta.DeltaConfGetName<DConf>;
82
+ name: string | null;
114
83
  /**
115
84
  * @type {Item|null}
116
85
  */
@@ -128,312 +97,61 @@ export class YNode<DConf extends delta.DeltaConf = any> extends ObservableV2<{
128
97
  */
129
98
  doc: Doc | null;
130
99
  _length: number;
131
- /**
132
- * Event handlers
133
- * @type {EventHandler<YEvent<DeltaToYNode<DConf>>,Transaction>}
134
- */
135
- _eH: EventHandler<YEvent<DeltaToYNode<DConf>>, Transaction>;
136
- /**
137
- * Deep event handlers
138
- * @type {EventHandler<YEvent<DConf>,Transaction>}
139
- */
140
- _dEH: EventHandler<YEvent<DConf>, Transaction>;
141
- /**
142
- * @type {null | Array<ArraySearchMarker>}
143
- */
144
- _searchMarker: null | Array<ArraySearchMarker>;
145
- /**
146
- * Maintained deep-delta cache backing {@link YNode#delta}. `null` until `delta` is first
147
- * accessed; thereafter kept current on every event of this type (incrementally, by applying the
148
- * deep change) and re-diffed by {@link YNode#useRenderer}. Cleared by {@link YNode#clearCache}.
149
- *
150
- * INVARIANT (fingerprint-memo safety): consumers (e.g. y-sync) diff against this LIVE object
151
- * via {@link YNode#delta}, which memoizes `_fingerprint` on its delta/op nodes at every depth.
152
- * Every in-place patch — the per-transaction `apply` in `cleanupTransactions` and the
153
- * renderer-overlay `apply` in {@link typeApplyRendererChange} — MUST route through the lib0
154
- * delta builder API (`apply`), which invalidates those memos. NEVER write delta/op fields
155
- * directly: a direct write leaves stale memos, corrupting every subsequent fingerprint read
156
- * and diff. Pinned by the `testRdtFingerprintMemo*CacheDrift` tests.
157
- * @type {delta.DeltaBuilderAny | null}
158
- */
159
- _delta: delta.DeltaBuilderAny | null;
160
100
  _legacyTypeRef: number;
161
101
  /**
162
- * Whether this YText contains formats.
163
- * This flag is updated when a formatting item is integrated (see ContentFormat.integrate)
102
+ * @type {Array<ArraySearchMarker>|null}
164
103
  */
165
- _hasFormatting: boolean;
104
+ _searchMarker: Array<ArraySearchMarker> | null;
166
105
  /**
167
- * The active default renderer. Used by `toDelta`, `applyDelta`, and the events whenever no
168
- * explicit renderer is passed. `null` = no renderer: content renders as-is via the generic
169
- * fast path. Change it via {@link YNode#useRenderer}.
170
- * @type {AbstractRenderer?}
106
+ * The writes made while this node is detached, replayed when it integrates (YP16).
107
+ * @type {Prelim|null}
171
108
  */
172
- _renderer: AbstractRenderer | null;
109
+ _prelim: Prelim | null;
173
110
  /**
174
- * Bound listener on the active renderer's `'change'` event — attribution corrections that
175
- * happen without a Y transaction on this doc (e.g. a suggestion is accepted and the
176
- * renderer's attribution overlay updates). `null` while no renderer is active.
177
- * Managed by {@link YNode#useRenderer}; see {@link typeApplyRendererChange}.
178
- * @type {((changes: IdSet, origin: any, local: boolean) => void) | null}
111
+ * The live length of the sequence (`0` while detached).
179
112
  */
180
- _rendererChangeHandler: ((changes: IdSet, origin: any, local: boolean) => void) | null;
181
- /**
182
- * Schema of the deltas this type produces — part of the lib0 `RDT` interface.
183
- *
184
- * @type {s.Schema<delta.Delta<DConf>>}
185
- */
186
- get $delta(): s.Schema<delta.Delta<DConf>>;
187
- /**
188
- * The deep delta of this type (the full nested content tree, children rendered as their own
189
- * deltas).
190
- *
191
- * The returned value is the type's **live** maintained cache: it is materialized on first access
192
- * and then kept current on every event fired on this type (and re-diffed by
193
- * {@link YNode#useRenderer}), so a reference held across edits keeps updating in place. Clone it
194
- * (e.g. `type.delta.clone()`) if you need a stable snapshot, and call {@link YNode#clearCache} to
195
- * drop the cache.
196
- *
197
- * Consider the returned delta **done** — it must not be edited from the outside. It is
198
- * deliberately typed as a `Delta` (not a `DeltaBuilder`) so the mutating builder API is not
199
- * reachable; editing it anyway would corrupt the cache without changing the CRDT. The proper way
200
- * to change this type is {@link YNode#applyDelta}.
201
- *
202
- * @type {delta.Delta<DConf>}
203
- */
204
- get delta(): delta.Delta<DConf>;
205
- /**
206
- * Render the full deep current state into a fresh `isFinal` builder (so subsequent `.apply`s of
207
- * deep changes update content in place). Uses this type's active renderer.
208
- *
209
- * @return {delta.DeltaBuilderAny}
210
- */
211
- _renderDelta(): delta.DeltaBuilderAny;
212
- /**
213
- * Discard the cached deep delta backing {@link YNode#delta}.
214
- *
215
- * After `delta` is first accessed, the cache is updated on every event fired on this type (and
216
- * re-diffed by {@link YNode#useRenderer}). Call this to drop it — e.g. to reclaim memory, or to
217
- * force an exact recomputation after editing while a non-base renderer is active (the incremental
218
- * updates can drift from a fresh deep render in that case).
219
- */
220
- clearCache(): void;
221
- /**
222
- * Change the default renderer used by this type. After calling `useRenderer(renderer)`, the
223
- * `toDelta`, `applyDelta`, and event methods all use `renderer` whenever no explicit renderer is
224
- * passed (an explicit `{ renderer }` argument still overrides it per call).
225
- *
226
- * If the deep-delta cache ({@link YNode#delta}) is being maintained, or a `'delta'` listener is
227
- * attached, the content is re-rendered with the new renderer and the difference is emitted on the
228
- * `'delta'` channel only (a renderer switch is not a CRDT change, so no `YEvent` is produced, and
229
- * the emitted origin is `null` as no transaction is involved).
230
- *
231
- * @param {AbstractRenderer?} renderer - `null` detaches: content renders as-is again
232
- * @return {this}
233
- */
234
- useRenderer(renderer: AbstractRenderer | null): this;
235
113
  get length(): number;
236
- /**
237
- * Returns a fresh delta that can be used to change this YNode.
238
- * @type {delta.DeltaBuilder<DeltaToYNode<DConf>>}
239
- */
240
- get change(): delta.DeltaBuilder<DeltaToYNode<DConf>>;
241
- /**
242
- * @return {YNode<any>?}
243
- */
244
- get parent(): YNode<any> | null;
245
114
  /**
246
115
  * Integrate this type into the Yjs instance.
247
116
  *
248
- * * Save this struct in the os
249
- * * This type is sent to other client
250
- * * Observer functions are fired
251
- *
252
117
  * @param {Doc} y The Yjs instance
253
118
  * @param {Item|null} item
254
119
  */
255
120
  _integrate(y: Doc, item: Item | null): void;
256
- _prelim: any;
257
- /**
258
- * @return {YNode<DConf>}
259
- */
260
- _copy(): YNode<DConf>;
261
- /**
262
- * Creates YEvent and calls all type observers.
263
- * Must be implemented by each type.
264
- *
265
- * @param {Transaction} transaction
266
- * @param {Set<null|string>} parentSubs Keys changed on this type. `null` if list was modified.
267
- */
268
- _callObserver(transaction: Transaction, parentSubs: Set<null | string>): void;
269
- /**
270
- * Observe all events that are created on this type.
271
- *
272
- * @template {(target: YEvent<DeltaToYNode<DConf>>, tr: Transaction) => void} F
273
- * @param {F} f Observer function
274
- * @return {F}
275
- */
276
- observe<F extends (target: YEvent<DeltaToYNode<DConf>>, tr: Transaction) => void>(f: F): F;
277
- /**
278
- * Observe all events that are created by this type and its children.
279
- *
280
- * @template {function(YEvent<DConf>,Transaction):void} F
281
- * @param {F} f Observer function
282
- * @return {F}
283
- */
284
- observeDeep<F extends (arg0: YEvent<DConf>, arg1: Transaction) => void>(f: F): F;
285
- /**
286
- * Unregister an observer function.
287
- *
288
- * @param {(type:YEvent<DeltaToYNode<DConf>>,tr:Transaction)=>void} f Observer function
289
- */
290
- unobserve(f: (type: YEvent<DeltaToYNode<DConf>>, tr: Transaction) => void): void;
291
121
  /**
292
- * Unregister an observer function.
293
- *
294
- * @param {function(YEvent<DConf>,Transaction):void} f Observer function
295
- */
296
- unobserveDeep(f: (arg0: YEvent<DConf>, arg1: Transaction) => void): void;
297
- /**
298
- * Render the difference to another ydoc (which can be empty) and highlight the differences with
299
- * attributions.
300
- *
301
- * Note that deleted content that was not deleted in prevYdoc is rendered as an insertion with the
302
- * attribution `{ isDeleted: true, .. }`.
303
- *
304
- * @template {boolean} [Deep=false]
305
- *
306
- * @param {Object} [opts]
307
- * @param {AbstractRenderer?} [opts.renderer] - renders the content (with attributions); defaults to this type's active renderer (see {@link YNode#useRenderer}), i.e. `null` (render as-is) unless changed
308
- * @param {IdSet?} [opts.itemsToRender]
309
- * @param {boolean} [opts.retainInserts] - if true, retain rendered inserts with attributions
310
- * @param {boolean} [opts.retainDeletes] - if true, retain rendered+attributed deletes only
311
- * @param {IdSet?} [opts.insertedItems] - ids inserted by the change being rendered; content that is both in `insertedItems` and deleted renders as a *fresh* insert even under `retainDeletes` (it was never part of the consuming state)
312
- * @param {Map<YNode,Set<string|null>>|null} [opts.modified] - set of types that should be rendered as modified children
313
- * @param {Deep} [opts.deep] - render child types as delta
314
- * @return {Deep extends true ? delta.Delta<DConf> : delta.Delta<DeltaConfDeltaToYNode<DConf>>} The Delta representation of this type.
315
- *
316
- * @public
317
- */
318
- public toDelta<Deep extends boolean = false>(opts?: {
319
- renderer?: import("./utils/renderer-helpers.js").AbstractRenderer | null | undefined;
320
- itemsToRender?: import("./utils/ids.js").IdSet | null | undefined;
321
- retainInserts?: boolean | undefined;
322
- retainDeletes?: boolean | undefined;
323
- insertedItems?: import("./utils/ids.js").IdSet | null | undefined;
324
- modified?: Map<YNode<any>, Set<string | null>> | null | undefined;
325
- deep?: Deep | undefined;
326
- }): Deep extends true ? delta.Delta<DConf> : delta.Delta<DeltaConfDeltaToYNode<DConf>>;
327
- /**
328
- * Render the difference to another ydoc (which can be empty) and highlight the differences with
329
- * attributions.
330
- *
331
- * @param {Object} [opts]
332
- * @param {AbstractRenderer?} [opts.renderer] - renders the content (with attributions); defaults to this type's active renderer (see {@link YNode#useRenderer}), i.e. `null` (render as-is) unless changed
333
- * @return {delta.Delta<DConf>}
334
- */
335
- toDeltaDeep(opts?: {
336
- renderer?: import("./utils/renderer-helpers.js").AbstractRenderer | null | undefined;
337
- }): delta.Delta<DConf>;
338
- /**
339
- * Apply a {@link Delta} on this shared type.
340
- *
341
- * @param {delta.DeltaAny} d The changes to apply on this element.
342
- * @param {any} [origin] Origin of the transaction that applies this delta (stored on
343
- * `transaction.origin` and forwarded verbatim on the emitted `'delta'` event, so listeners can
344
- * recognize — and skip — changes they produced themselves; see the lib0 `RDT` spec). Defaults to `null`.
345
- * @param {Object} [opts]
346
- * @param {AbstractRenderer?} [opts.renderer] - renders the content (with attributions); defaults to this type's active renderer (see {@link YNode#useRenderer}), i.e. `null` (render as-is) unless changed
347
- * @return {delta.DeltaBuilder<any>?} The lib0 `RDT` "fix" of this apply — a change measured against the
348
- * caller's expected state (`old.apply(d)`) that transforms it into the actual state, or `null`
349
- * when `d` applied cleanly. A fix is produced when `d` (or a nested `modify`/`modifyAttr`)
350
- * addresses a *deleted but rendered* node (e.g. a suggestion-deleted paragraph under a
351
- * DiffRenderer): that part of the change is not applied to the document, and its inverse
352
- * (`lib0-v14/delta` `inverse` against the node's rendered state) is returned — the change is
353
- * immediately reverted.
354
- *
355
- * @public
122
+ * @return {YNode}
356
123
  */
357
- public applyDelta(d: delta.DeltaAny, origin?: any, { renderer }?: {
358
- renderer?: import("./utils/renderer-helpers.js").AbstractRenderer | null | undefined;
359
- }): delta.DeltaBuilder<any> | null;
124
+ _copy(): YNode;
360
125
  /**
361
- * Makes a copy of this data type that can be included somewhere else.
362
- *
363
- * Note that the content is only readable _after_ it has been included somewhere in the Ydoc.
364
- *
365
- * @return {YNode<DConf>}
366
- */
367
- clone(): YNode<DConf>;
368
- /**
369
- * Removes all elements from this YMap.
370
- */
371
- clearAttrs(): void;
372
- /**
373
- * Removes an attribute from this YXmlElement.
126
+ * Removes an attribute. A deleted node is left as it is.
374
127
  *
375
128
  * @param {string} attributeName The attribute name that is to be removed.
376
- *
377
- * @public
378
129
  */
379
- public deleteAttr(attributeName: string): void;
130
+ deleteAttr(attributeName: string): void;
380
131
  /**
381
- * Sets or updates an attribute.
132
+ * Sets or updates an attribute. A deleted node is left as it is.
382
133
  *
383
- * @template {Exclude<keyof delta.DeltaConfGetAttrs<DConf>,symbol>} KEY
384
- * @template {delta.DeltaConfGetAttrs<DConf>[KEY]} VAL
385
- *
386
- * @param {KEY} attributeName The attribute name that is to be set.
134
+ * @template VAL
135
+ * @param {string} attributeName The attribute name that is to be set.
387
136
  * @param {VAL} attributeValue The attribute value that is to be set.
388
137
  * @return {VAL}
389
- *
390
- * @public
391
138
  */
392
- public setAttr<KEY extends Exclude<keyof delta.DeltaConfGetAttrs<DConf>, symbol>, VAL extends delta.DeltaConfGetAttrs<DConf>[KEY]>(attributeName: KEY, attributeValue: VAL): VAL;
139
+ setAttr<VAL>(attributeName: string, attributeValue: VAL): VAL;
393
140
  /**
394
141
  * Returns an attribute value that belongs to the attribute name.
395
142
  *
396
- * @template {Exclude<keyof delta.DeltaConfGetAttrs<DConf>,symbol|number>} KEY
397
- * @param {KEY} attributeName The attribute name that identifies the queried value.
398
- * @return {delta.DeltaConfGetAttrs<DConf>[KEY]|undefined} The queried attribute value.
399
- * @public
400
- */
401
- public getAttr<KEY extends Exclude<keyof delta.DeltaConfGetAttrs<DConf>, symbol | number>>(attributeName: KEY): delta.DeltaConfGetAttrs<DConf>[KEY] | undefined;
402
- /**
403
- * Returns whether an attribute exists
404
- *
405
- * @param {string} attributeName The attribute name to check for existence.
406
- * @return {boolean} whether the attribute exists.
407
- *
408
- * @public
143
+ * @param {string} attributeName The attribute name that identifies the queried value.
144
+ * @return {any} The queried attribute value.
409
145
  */
410
- public hasAttr(attributeName: string): boolean;
146
+ getAttr(attributeName: string): any;
411
147
  /**
412
- * Returns all attribute name/value pairs in a JSON Object.
413
- *
414
- * @return {{ [Key in Extract<keyof delta.DeltaConfGetAttrs<DConf>,string>]?: delta.DeltaConfGetAttrs<DConf>[Key]}} A JSON Object that describes the attributes.
415
- *
416
- * @public
417
- */
418
- public getAttrs(): { [Key in Extract<keyof delta.DeltaConfGetAttrs<DConf>, string>]?: delta.DeltaConfGetAttrs<DConf>[Key]; };
419
- /**
420
- * Inserts new content at an index.
421
- *
422
- * Important: This function expects an array of content. Not just a content
423
- * object. The reason for this "weirdness" is that inserting several elements
424
- * is very efficient when it is done as a single operation.
425
- *
426
- * @example
427
- * // Insert character 'a' at position 0
428
- * yarray.insert(0, ['a'])
429
- * // Insert numbers 1, 2 at position 1
430
- * yarray.insert(1, [1, 2])
148
+ * Inserts new content at an index — a string, or an array of elements (JSON values, nodes) —
149
+ * as `insertInGap` places it (YP19: one sequence write). A deleted node is left as it is.
431
150
  *
432
151
  * @param {number} index The index to insert content at.
433
- * @param {Array<delta.DeltaConfGetChildren<DConf>>|delta.DeltaConfGetText<DConf>} content Array of content to append.
434
- * @param {delta.Formats} [format]
152
+ * @param {Array<any>|string} content
435
153
  */
436
- insert(index: number, content: Array<delta.DeltaConfGetChildren<DConf>> | delta.DeltaConfGetText<DConf>, format?: delta.Formats): void;
154
+ insert(index: number, content: Array<any> | string): void;
437
155
  /**
438
156
  * Insert `content` (an array of JSON values, one countable unit each) at the end of the gap at
439
157
  * live index `index`: after every deleted item and every format item that precedes the next live
@@ -469,212 +187,69 @@ export class YNode<DConf extends delta.DeltaConf = any> extends ObservableV2<{
469
187
  */
470
188
  mark(index: number, length: number, mark: string, value: any, startSide: number, endSide: number): void;
471
189
  /**
472
- * Inserts new content at an index.
473
- *
474
- * Important: This function expects an array of content. Not just a content
475
- * object. The reason for this "weirdness" is that inserting several elements
476
- * is very efficient when it is done as a single operation.
477
- *
478
- * @example
479
- * // Insert character 'a' at position 0
480
- * yarray.insert(0, ['a'])
481
- * // Insert numbers 1, 2 at position 1
482
- * yarray.insert(1, [1, 2])
483
- *
484
- * @param {number} index The index to insert content at.
485
- * @param {number} length The index to insert content at.
486
- * @param {delta.Formats} formats
487
- *
488
- */
489
- format(index: number, length: number, formats: delta.Formats): void;
490
- /**
491
- * Appends content to this YArray.
492
- *
493
- * @param {Array<delta.DeltaConfGetChildren<DConf>>|delta.DeltaConfGetText<DConf>} content Array of content to append.
494
- *
495
- * @todo Use the following implementation in all types.
496
- */
497
- push(content: Array<delta.DeltaConfGetChildren<DConf>> | delta.DeltaConfGetText<DConf>): void;
498
- /**
499
- * Prepends content to this YArray.
500
- *
501
- * @param {delta.DeltaConfGetText<DConf>} content Array of content to prepend.
502
- */
503
- unshift(content: delta.DeltaConfGetText<DConf>): void;
504
- /**
505
- * Deletes elements starting from an index.
190
+ * Deletes elements starting from an index. A deleted node is left as it is.
506
191
  *
507
192
  * @param {number} index Index at which to start deleting elements
508
193
  * @param {number} length The number of elements to remove. Defaults to 1.
509
194
  */
510
195
  delete(index: number, length?: number): void;
511
- /**
512
- * Returns the i-th element from a YArray.
513
- *
514
- * @param {number} index The index of the element to return from the YArray
515
- * @return {delta.DeltaConfGetChildren<DConf>}
516
- */
517
- get(index: number): delta.DeltaConfGetChildren<DConf>;
518
- /**
519
- * Returns a portion of this YXmlFragment into a JavaScript Array selected
520
- * from start to end (end not included).
521
- *
522
- * @param {number} [start]
523
- * @param {number} [end]
524
- * @return {Array<delta.DeltaConfGetChildren<DConf>>}
525
- */
526
- slice(start?: number, end?: number): Array<delta.DeltaConfGetChildren<DConf>>;
527
- /**
528
- * @todo refactor this, this should use getContent only!
529
- *
530
- * Transforms this YArray to a JavaScript Array.
531
- *
532
- * @return {Array<delta.DeltaConfGetChildren<DConf> | delta.DeltaConfGetText<DConf>>}
533
- */
534
- toArray(): Array<delta.DeltaConfGetChildren<DConf> | delta.DeltaConfGetText<DConf>>;
535
- /**
536
- * Transforms this Shared Type to a JSON object.
537
- * @return {{ name?: string, attrs?: { [K:string|number]: any }, children?: Array<any> }}
538
- */
539
- toJSON(): {
540
- name?: string;
541
- attrs?: {
542
- [K: string | number]: any;
543
- };
544
- children?: Array<any>;
545
- };
546
- /**
547
- * @param {object} opts
548
- * @param {boolean} [opts.forceTag] enforce creating a surrouning <name /> tag, even if it is null.
549
- */
550
- toString({ forceTag }?: {
551
- forceTag?: boolean | undefined;
552
- }): string;
553
- /**
554
- * Returns an Array with the result of calling a provided function on every
555
- * child-element.
556
- *
557
- * @template M
558
- * @param {(child:delta.DeltaConfGetChildren<DConf>|delta.DeltaConfGetText<DConf>,index:number)=>M} f Function that produces an element of the new Array
559
- * @return {Array<M>} A new array with each element being the result of the
560
- * callback function
561
- */
562
- map<M>(f: (child: delta.DeltaConfGetChildren<DConf> | delta.DeltaConfGetText<DConf>, index: number) => M): Array<M>;
563
- /**
564
- * Executes a provided function once on every element of this YArray.
565
- *
566
- * @param {(child:delta.DeltaConfGetChildren<DConf>|delta.DeltaConfGetText<DConf>,index:number)=>any} f Function that produces an element of the new Array
567
- */
568
- forEach(f: (child: delta.DeltaConfGetChildren<DConf> | delta.DeltaConfGetText<DConf>, index: number) => any): void;
569
196
  /**
570
197
  * Executes a provided function on once on every key-value pair.
571
198
  *
572
- * @param {(val:delta.DeltaConfGetAttrs<DConf>[any],key:Exclude<keyof delta.DeltaConfGetAttrs<DConf>,symbol>,ynode:this)=>any} f
573
- */
574
- forEachAttr(f: (val: delta.DeltaConfGetAttrs<DConf>[any], key: Exclude<keyof delta.DeltaConfGetAttrs<DConf>, symbol>, ynode: this) => any): void;
575
- /**
576
- * Returns the keys for each element in the YMap Type.
577
- *
578
- * @return {IterableIterator<import('lib0-v14/ts').KeyOf<delta.DeltaConfGetAttrs<DConf>>>}
579
- */
580
- attrKeys(): IterableIterator<import("lib0-v14/ts").KeyOf<delta.DeltaConfGetAttrs<DConf>>>;
581
- /**
582
- * Returns the values for each element in the YMap Type.
583
- *
584
- * @return {IterableIterator<delta.DeltaConfGetAttrs<DConf>[any]>}
585
- */
586
- attrValues(): IterableIterator<delta.DeltaConfGetAttrs<DConf>[any]>;
587
- /**
588
- * Returns an Iterator of [key, value] pairs
589
- *
590
- * @return {IterableIterator<{ [K in keyof delta.DeltaConfGetAttrs<DConf>]: [K,delta.DeltaConfGetAttrs<DConf>[K]] }[any]>}
199
+ * @param {(val:any,key:string,ynode:this)=>any} f
591
200
  */
592
- attrEntries(): IterableIterator<{ [K in keyof delta.DeltaConfGetAttrs<DConf>]: [K, delta.DeltaConfGetAttrs<DConf>[K]]; }[any]>;
201
+ forEachAttr(f: (val: any, key: string, ynode: this) => any): void;
593
202
  /**
594
- * Returns the number of stored attributes (count of key/value pairs)
203
+ * The keys of the live attributes.
595
204
  *
596
- * @return {number}
205
+ * @return {IterableIterator<string>}
597
206
  */
598
- get attrSize(): number;
207
+ attrKeys(): IterableIterator<string>;
599
208
  /**
600
- * @todo this doesn't need to live in a method.
209
+ * Write this node's type reference (and name), sent with the item that holds it.
601
210
  *
602
- * Transform the properties of this type to binary and write it to an
603
- * BinaryEncoder.
604
- *
605
- * This is called when this Item is sent to a remote peer.
606
- *
607
- * @param {UpdateEncoderV1 | UpdateEncoderV2} encoder The encoder to write data to.
608
- */
609
- _write(encoder: UpdateEncoderV1 | UpdateEncoderV2): void;
610
- $type: s.Schema<YNode<any>>;
611
- /**
612
- * @param {this} other
211
+ * @param {UpdateEncoder} encoder The encoder to write data to.
613
212
  */
614
- [traits.EqualityTraitSymbol](other: this): boolean;
213
+ _write(encoder: UpdateEncoder): void;
615
214
  }
616
- /**
617
- * Schema of a {@link YNode} with any delta configuration. This is where the nominal `y:node` tag
618
- * lives - {@link $node} builds on it. Mirrors lib0's `$deltaAny` / `$delta` split.
619
- */
620
- export const $nodeAny: s.Schema<YNode<any>>;
621
- export function computeModifiedFromItems(store: StructStore, items: IdSet): Map<YNode<any>, Set<string | null>>;
622
- export function typeApplyRendererChange(type: YNode<any>, changes: IdSet, origin: any): void;
623
- export function equalFormats(a: any, b: any): boolean;
624
- export function typeListSlice(type: YNode<any>, start: number, end: number): Array<any>;
625
- export function typeListGet(type: YNode, index: number): any;
626
215
  export function nodeMapDelete(transaction: Transaction, parent: YNode, key: string): void;
627
216
  export function nodeMapSet(transaction: Transaction, parent: YNode, key: string, value: YValue): void;
628
- export function nodeMapGet(parent: YNode<any>, key: string): {
629
- [x: string]: any;
630
- } | number | null | Array<any> | string | Uint8Array | YNode<any> | undefined;
631
- export function nodeMapGetAll(parent: YNode<any>): {
632
- [x: string]: string | number | any[] | YNode<any> | Uint8Array<ArrayBufferLike> | {
633
- [x: string]: any;
634
- } | null | undefined;
635
- };
636
- export function nodeMapGetDelta<TypeDelta extends delta.DeltaBuilderAny>(d: TypeDelta, parent: YNode, attrsToRender: Set<string | null> | null, renderer: AbstractRenderer | null, deep: boolean, modified?: Set<YNode> | Map<YNode, any> | null, itemsToRender?: IdSet | null, opts?: any, optsAll?: any): void;
637
- export function nodeMapHas(parent: YNode<any>, key: string): boolean;
638
- export function createMapIterator(type: YNode<any> & {
639
- _map: Map<string, Item>;
640
- }): IterableIterator<Array<any>>;
641
- export function readContentType(decoder: UpdateDecoderV1 | UpdateDecoderV2): ContentType;
642
- export function readContentString(decoder: UpdateDecoderV1 | UpdateDecoderV2): ContentString;
643
- export function readContentJSON(decoder: UpdateDecoderV1 | UpdateDecoderV2): ContentJSON;
644
- export function readContentFormat(decoder: UpdateDecoderV1 | UpdateDecoderV2): ContentFormat;
645
- export function readContentEmbed(decoder: UpdateDecoderV1 | UpdateDecoderV2): ContentEmbed;
646
- export function readContentDoc(decoder: UpdateDecoderV1 | UpdateDecoderV2): ContentDoc;
647
- export function readContentAny(decoder: UpdateDecoderV1 | UpdateDecoderV2): ContentAny;
648
- export function readContentBinary(decoder: UpdateDecoderV1 | UpdateDecoderV2): ContentBinary;
649
- export function readContentDeleted(decoder: UpdateDecoderV1 | UpdateDecoderV2): ContentDeleted;
217
+ export function readContentType(decoder: UpdateDecoder): ContentType;
218
+ export function readContentString(decoder: UpdateDecoder): ContentString;
219
+ export function readContentFormat(decoder: UpdateDecoder): ContentFormat;
220
+ export function readContentAny(decoder: UpdateDecoder): ContentAny;
221
+ export function readContentBinary(decoder: UpdateDecoder): ContentBinary;
222
+ export function readContentDeleted(decoder: UpdateDecoder): ContentDeleted;
650
223
  /**
651
- * A lookup map for reading Item content.
224
+ * A lookup map for reading Item content. YP19: JSON (2), embed (5) and
225
+ * subdocument (9) contents are refused like GC (0) and Skip (10): edytor
226
+ * writes none, so an update holding one is malformed.
652
227
  *
653
- * @type {Array<function(UpdateDecoderV1 | UpdateDecoderV2):AbstractContent>}
228
+ * @type {Array<function(UpdateDecoder):AbstractContent>}
654
229
  */
655
- export const contentRefs: Array<(arg0: UpdateDecoderV1 | UpdateDecoderV2) => AbstractContent>;
656
- export function readItemContent(decoder: UpdateDecoderV1 | UpdateDecoderV2, info: number): import("./structs/Item.js").AbstractContent;
657
- export function readYNode(decoder: UpdateDecoderV1 | UpdateDecoderV2): YNode;
230
+ export const contentRefs: Array<(arg0: UpdateDecoder) => AbstractContent>;
231
+ export function readItemContent(decoder: UpdateDecoder, info: number): import("./structs/Item.js").AbstractContent;
232
+ export function readYNode(decoder: UpdateDecoder): YNode;
658
233
  export type YValue = {
659
234
  [x: string]: any;
660
- } | Array<any> | number | null | string | Uint8Array | bigint | YNode<any>;
661
- export type DeltaConfDeltaToYNode<DConf extends delta.DeltaConf> = delta.DeltaConfOverwrite<DConf, {
662
- attrs: { [K in keyof delta.DeltaConfGetAttrs<DConf>]: DeltaToYNode<delta.DeltaConfGetAttrs<DConf>[K]>; };
663
- children: DeltaToYNode<delta.DeltaConfGetChildren<DConf>>;
664
- }>;
665
- export type DeltaToYNode<Data extends unknown> = Exclude<Data, delta.DeltaAny> | (Extract<Data, delta.DeltaAny> extends delta.Delta<infer DConf> ? (unknown extends DConf ? YNode<DConf> : never) : never);
235
+ } | Array<any> | number | null | string | Uint8Array | bigint | YNode;
236
+ /**
237
+ * What a detached node was given, replayed when it integrates: its content
238
+ * (adjacent strings, and adjacent arrays, merged) and its attrs in
239
+ * first-write order (`null`: removed).
240
+ */
241
+ export type Prelim = {
242
+ runs: Array<string | Array<any>>;
243
+ attrs: {
244
+ [x: string]: {
245
+ value: any;
246
+ } | null;
247
+ };
248
+ };
666
249
  import { Item } from './structs/Item.js';
667
- import { YEvent } from './utils/YEvent.js';
668
- import * as delta from 'lib0-v14/delta';
669
- import { ObservableV2 } from 'lib0-v14/observable';
670
- import * as s from 'lib0-v14/schema';
671
- import * as traits from 'lib0-v14/traits';
672
250
  import { ContentType } from './structs/Item.js';
673
251
  import { ContentString } from './structs/Item.js';
674
- import { ContentJSON } from './structs/Item.js';
675
252
  import { ContentFormat } from './structs/Item.js';
676
- import { ContentEmbed } from './structs/Item.js';
677
- import { ContentDoc } from './structs/Item.js';
678
253
  import { ContentAny } from './structs/Item.js';
679
254
  import { ContentBinary } from './structs/Item.js';
680
255
  import { ContentDeleted } from './structs/Item.js';