edytor 1.0.0-rc.2 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +65 -25
- package/dist/block/block.svelte.d.ts +10 -85
- package/dist/block/block.svelte.js +47 -141
- package/dist/block/colors.d.ts +0 -9
- package/dist/block/colors.js +1 -18
- package/dist/block/contentRange.d.ts +5 -1
- package/dist/block/contentRange.js +15 -16
- package/dist/block/inlineBlock.svelte.d.ts +8 -10
- package/dist/block/inlineBlock.svelte.js +14 -22
- package/dist/clipboard/createClipboardFragment.js +22 -64
- package/dist/clipboard/fragmentData.js +17 -42
- package/dist/clipboard/htmlFlow.d.ts +6 -1
- package/dist/clipboard/htmlFlow.js +26 -13
- package/dist/clipboard/insertClipboardFragment.js +5 -4
- package/dist/clipboard/moveText.js +16 -8
- package/dist/clipboard/serializeClipboardFragment.d.ts +2 -0
- package/dist/clipboard/serializeClipboardFragment.js +32 -28
- package/dist/cloudflare/DocumentRoom.d.ts +22 -17
- package/dist/cloudflare/DocumentRoom.js +10 -5
- package/dist/cloudflare/index.d.ts +1 -1
- package/dist/cloudflare/index.js +1 -1
- package/dist/cloudflare/move.d.ts +1 -18
- package/dist/cloudflare/move.js +2 -48
- package/dist/cloudflare/room/admission.d.ts +1 -60
- package/dist/cloudflare/room/admission.js +25 -29
- package/dist/cloudflare/room/comments.d.ts +1 -3
- package/dist/cloudflare/room/comments.js +6 -6
- package/dist/cloudflare/room/context.d.ts +20 -82
- package/dist/cloudflare/room/context.js +8 -8
- package/dist/cloudflare/room/forged.d.ts +1 -1
- package/dist/cloudflare/room/forged.js +2 -12
- package/dist/cloudflare/room/frames.d.ts +1 -1
- package/dist/cloudflare/room/frames.js +1 -1
- package/dist/cloudflare/room/history.d.ts +1 -25
- package/dist/cloudflare/room/history.js +39 -54
- package/dist/cloudflare/room/moves.d.ts +1 -13
- package/dist/cloudflare/room/moves.js +33 -57
- package/dist/cloudflare/room/presence.d.ts +1 -11
- package/dist/cloudflare/room/presence.js +4 -4
- package/dist/cloudflare/room/purge.d.ts +1 -2
- package/dist/cloudflare/room/purge.js +2 -2
- package/dist/cloudflare/room/replicas.d.ts +1 -7
- package/dist/cloudflare/room/replicas.js +2 -2
- package/dist/cloudflare/room/storage.d.ts +9 -30
- package/dist/cloudflare/room/storage.js +52 -104
- package/dist/cloudflare/room/updates.d.ts +4 -4
- package/dist/cloudflare/room/updates.js +17 -24
- package/dist/cloudflare/room/validation.d.ts +1 -5
- package/dist/cloudflare/room/validation.js +16 -37
- package/dist/collaboration/RemoteSelections.svelte +13 -17
- package/dist/collaboration/comments/client.d.ts +2 -2
- package/dist/collaboration/comments/client.js +1 -1
- package/dist/collaboration/history/index.d.ts +5 -5
- package/dist/collaboration/history/index.js +5 -5
- package/dist/collaboration/history/panel.svelte.d.ts +91 -0
- package/dist/collaboration/history/panel.svelte.js +223 -0
- package/dist/collaboration/providers.d.ts +12 -3
- package/dist/collaboration/providers.js +5 -4
- package/dist/components/Block.svelte +160 -119
- package/dist/components/Block.svelte.d.ts +8 -3
- package/dist/components/Content.svelte +91 -44
- package/dist/components/CustomMark.svelte +46 -0
- package/dist/components/CustomMark.svelte.d.ts +11 -0
- package/dist/components/Edytor.svelte +80 -95
- package/dist/components/Edytor.svelte.d.ts +8 -12
- package/dist/components/InlineBlock.svelte +4 -9
- package/dist/components/Mark.svelte +46 -35
- package/dist/components/Mark.svelte.d.ts +7 -0
- package/dist/components/Ranges.svelte +96 -0
- package/dist/components/Ranges.svelte.d.ts +19 -0
- package/dist/components/Suggestion.svelte +3 -2
- package/dist/components/Text.svelte +48 -14
- package/dist/components/Text.svelte.d.ts +1 -1
- package/dist/crdt/admission.d.ts +2 -9
- package/dist/crdt/admission.js +3 -9
- package/dist/crdt/attribution/attribution.d.ts +11 -72
- package/dist/crdt/attribution/attribution.js +5 -52
- package/dist/crdt/attribution/block.d.ts +0 -78
- package/dist/crdt/attribution/block.js +1 -144
- package/dist/crdt/data.d.ts +8 -13
- package/dist/crdt/data.js +30 -70
- package/dist/crdt/doc/anchors.js +4 -4
- package/dist/crdt/doc/content.d.ts +5 -1
- package/dist/crdt/doc/content.js +3 -1
- package/dist/crdt/doc/delete.d.ts +1 -0
- package/dist/crdt/doc/funnel.d.ts +0 -23
- package/dist/crdt/doc/funnel.js +34 -85
- package/dist/crdt/doc/gate.d.ts +8 -9
- package/dist/crdt/doc/gate.js +7 -17
- package/dist/crdt/doc/history.d.ts +87 -14
- package/dist/crdt/doc/history.js +334 -149
- package/dist/crdt/doc/layout.d.ts +0 -1
- package/dist/crdt/doc/layout.js +2 -3
- package/dist/crdt/doc/meta.d.ts +4 -4
- package/dist/crdt/doc/meta.js +10 -21
- package/dist/crdt/doc/moves.d.ts +4 -4
- package/dist/crdt/doc/moves.js +5 -5
- package/dist/crdt/doc/plan.d.ts +2 -0
- package/dist/crdt/doc/plan.js +2 -0
- package/dist/crdt/doc/reads.d.ts +1 -5
- package/dist/crdt/doc/reads.js +38 -49
- package/dist/crdt/doc/seed.d.ts +15 -6
- package/dist/crdt/doc/seed.js +27 -26
- package/dist/crdt/doc/split-merge.d.ts +1 -3
- package/dist/crdt/doc/split-merge.js +4 -5
- package/dist/crdt/doc/steps.d.ts +3 -7
- package/dist/crdt/doc/steps.js +20 -9
- package/dist/crdt/doc/types.d.ts +0 -10
- package/dist/crdt/document.d.ts +24 -115
- package/dist/crdt/document.js +207 -305
- package/dist/crdt/edytor-doc.d.ts +671 -90
- package/dist/crdt/edytor-doc.js +73 -149
- package/dist/crdt/engine-api.d.ts +15 -47
- package/dist/crdt/engine.d.ts +7 -17
- package/dist/crdt/engine.js +9 -19
- package/dist/crdt/flow.d.ts +9 -37
- package/dist/crdt/flow.js +260 -238
- package/dist/crdt/index.d.ts +26 -85
- package/dist/crdt/index.js +21 -47
- package/dist/crdt/operations.d.ts +24 -33
- package/dist/crdt/operations.js +7 -17
- package/dist/crdt/placement/display.d.ts +0 -2
- package/dist/crdt/placement/display.js +0 -15
- package/dist/crdt/placement/model.d.ts +160 -12
- package/dist/crdt/placement/model.js +413 -414
- package/dist/crdt/placement/rank.d.ts +1 -5
- package/dist/crdt/placement/rank.js +28 -38
- package/dist/crdt/protocol.d.ts +4 -5
- package/dist/crdt/protocol.js +3 -4
- package/dist/crdt/protocols/awareness.d.ts +3 -7
- package/dist/crdt/protocols/awareness.js +17 -33
- package/dist/crdt/protocols/envelope.d.ts +9 -29
- package/dist/crdt/protocols/envelope.js +8 -25
- package/dist/crdt/protocols/sync.d.ts +15 -30
- package/dist/crdt/protocols/sync.js +27 -89
- package/dist/crdt/providers/bound.d.ts +3 -1
- package/dist/crdt/providers/bound.js +3 -1
- package/dist/crdt/providers/container.d.ts +11 -17
- package/dist/crdt/providers/container.js +39 -27
- package/dist/crdt/providers/index.d.ts +34 -6
- package/dist/crdt/providers/index.js +106 -111
- package/dist/crdt/providers/indexeddb.d.ts +2 -12
- package/dist/crdt/providers/indexeddb.js +29 -90
- package/dist/crdt/providers/room.d.ts +58 -2
- package/dist/crdt/providers/room.js +38 -21
- package/dist/crdt/providers/websocket.d.ts +1 -1
- package/dist/crdt/providers/websocket.js +3 -4
- package/dist/crdt/purge.d.ts +2 -2
- package/dist/crdt/purge.js +69 -6
- package/dist/crdt/rangeDelete.d.ts +4 -42
- package/dist/crdt/rangeDelete.js +7 -6
- package/dist/crdt/restore.d.ts +21 -1
- package/dist/crdt/restore.js +54 -59
- package/dist/crdt/schema.d.ts +2 -2
- package/dist/crdt/schema.js +4 -5
- package/dist/crdt/semantics.d.ts +10 -15
- package/dist/crdt/semantics.js +22 -21
- package/dist/crdt/storage.d.ts +7 -13
- package/dist/crdt/storage.js +10 -24
- package/dist/crdt/structs.d.ts +42 -47
- package/dist/crdt/structs.js +76 -67
- package/dist/crdt/tables.d.ts +9 -0
- package/dist/crdt/tables.js +20 -0
- package/dist/crdt/text/delete-index.d.ts +0 -13
- package/dist/crdt/text/delete-index.js +7 -14
- package/dist/crdt/text/deletes.d.ts +9 -22
- package/dist/crdt/text/deletes.js +11 -74
- package/dist/crdt/text/index/cache.js +3 -3
- package/dist/crdt/text/index/fold.d.ts +1 -2
- package/dist/crdt/text/index/fold.js +15 -10
- package/dist/crdt/text/index/layout.d.ts +0 -10
- package/dist/crdt/text/index/layout.js +6 -20
- package/dist/crdt/text/index/records.js +2 -1
- package/dist/crdt/text/index/report.js +5 -6
- package/dist/crdt/text/index/shared.d.ts +11 -4
- package/dist/crdt/text/index/shared.js +8 -7
- package/dist/crdt/text/index/state.d.ts +3 -33
- package/dist/crdt/text/index/state.js +2 -4
- package/dist/crdt/text/model.d.ts +82 -2
- package/dist/crdt/text/model.js +344 -354
- package/dist/crdt/text/rows.d.ts +0 -2
- package/dist/crdt/text/rows.js +0 -11
- package/dist/crdt/text/runs.d.ts +6 -3
- package/dist/crdt/text/runs.js +132 -137
- package/dist/crdt/text/streams.d.ts +1 -1
- package/dist/crdt/text/streams.js +1 -1
- package/dist/crdt/vendor/yjs/API-NOTES.md +25 -8
- package/dist/crdt/vendor/yjs/UPSTREAM.md +288 -8
- package/dist/crdt/vendor/yjs/dts/global.d.ts +5 -26
- package/dist/crdt/vendor/yjs/dts/index.d.ts +10 -15
- package/dist/crdt/vendor/yjs/dts/structs/AbstractStruct.d.ts +2 -2
- package/dist/crdt/vendor/yjs/dts/structs/Item.d.ts +14 -219
- package/dist/crdt/vendor/yjs/dts/structs/Skip.d.ts +2 -2
- package/dist/crdt/vendor/yjs/dts/utils/BlockSet.d.ts +2 -2
- package/dist/crdt/vendor/yjs/dts/utils/Doc.d.ts +12 -123
- package/dist/crdt/vendor/yjs/dts/utils/ID.d.ts +1 -1
- package/dist/crdt/vendor/yjs/dts/utils/RangeCursor.d.ts +37 -58
- package/dist/crdt/vendor/yjs/dts/utils/Transaction.d.ts +3 -78
- package/dist/crdt/vendor/yjs/dts/utils/UpdateDecoder.d.ts +2 -81
- package/dist/crdt/vendor/yjs/dts/utils/UpdateEncoder.d.ts +2 -74
- package/dist/crdt/vendor/yjs/dts/utils/encoding-helpers.d.ts +4 -4
- package/dist/crdt/vendor/yjs/dts/utils/encoding.d.ts +6 -18
- package/dist/crdt/vendor/yjs/dts/utils/ids.d.ts +12 -237
- package/dist/crdt/vendor/yjs/dts/utils/positions.d.ts +5 -0
- package/dist/crdt/vendor/yjs/dts/utils/redo.d.ts +3 -0
- package/dist/crdt/vendor/yjs/dts/utils/transaction-helpers.d.ts +1 -3
- package/dist/crdt/vendor/yjs/dts/utils/updates.d.ts +6 -23
- package/dist/crdt/vendor/yjs/dts/ynode.d.ts +73 -498
- package/dist/crdt/vendor/yjs/global.d.ts +5 -26
- package/dist/crdt/vendor/yjs/src/index.js +11 -25
- package/dist/crdt/vendor/yjs/src/structs/AbstractStruct.js +1 -1
- package/dist/crdt/vendor/yjs/src/structs/GC.js +1 -1
- package/dist/crdt/vendor/yjs/src/structs/Item.js +10 -372
- package/dist/crdt/vendor/yjs/src/structs/Skip.js +1 -1
- package/dist/crdt/vendor/yjs/src/utils/BlockSet.js +2 -2
- package/dist/crdt/vendor/yjs/src/utils/Doc.js +14 -170
- package/dist/crdt/vendor/yjs/src/utils/ID.js +1 -1
- package/dist/crdt/vendor/yjs/src/utils/RangeCursor.js +61 -128
- package/dist/crdt/vendor/yjs/src/utils/StructStore.js +0 -22
- package/dist/crdt/vendor/yjs/src/utils/Transaction.js +17 -282
- package/dist/crdt/vendor/yjs/src/utils/UpdateDecoder.js +3 -130
- package/dist/crdt/vendor/yjs/src/utils/UpdateEncoder.js +2 -132
- package/dist/crdt/vendor/yjs/src/utils/encoding-helpers.js +4 -4
- package/dist/crdt/vendor/yjs/src/utils/encoding.js +49 -146
- package/dist/crdt/vendor/yjs/src/utils/ids.js +23 -900
- package/dist/crdt/vendor/yjs/src/utils/positions.js +115 -0
- package/dist/crdt/vendor/yjs/src/utils/redo.js +143 -0
- package/dist/crdt/vendor/yjs/src/utils/transaction-helpers.js +10 -127
- package/dist/crdt/vendor/yjs/src/utils/updates.js +7 -50
- package/dist/crdt/vendor/yjs/src/ynode.js +261 -2226
- package/dist/{plugins/blockHandles → dnd}/autoScroll.d.ts +2 -1
- package/dist/{plugins/blockHandles → dnd}/autoScroll.js +3 -3
- package/dist/dnd/pragmatic.d.ts +4 -22
- package/dist/dnd/pragmatic.js +7 -26
- package/dist/dnd/track.d.ts +14 -0
- package/dist/dnd/track.js +55 -0
- package/dist/dnd/vendor/pragmatic/UPSTREAM.md +103 -0
- package/dist/dnd/vendor/pragmatic/bind-event-listener/LICENSE +21 -0
- package/dist/dnd/vendor/pragmatic/bind-event-listener/bind-all.js +46 -0
- package/dist/dnd/vendor/pragmatic/bind-event-listener/bind.js +7 -0
- package/dist/dnd/vendor/pragmatic/bind-event-listener/index.js +2 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/LICENSE.md +11 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/adapter/element-adapter-native-data-key.js +6 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/adapter/element-adapter.d.ts +57 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/adapter/element-adapter.js +306 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/entry-point/element/adapter.d.ts +8 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/entry-point/element/adapter.js +10 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/entry-point/element/set-custom-native-drag-preview.d.ts +4 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/entry-point/element/set-custom-native-drag-preview.js +6 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/entry-point/types.d.ts +1 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/honey-pot-fix/get-element-from-point-without-honey-pot.js +12 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/honey-pot-fix/honey-pot-data-attribute.js +3 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/honey-pot-fix/is-honey-pot-element.js +4 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/honey-pot-fix/make-honey-pot-fix.js +333 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/internal-types.d.ts +350 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/ledger/dispatch-consumer-event.js +128 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/ledger/lifecycle-manager.js +340 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/ledger/usage-ledger.js +32 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/make-adapter/make-adapter.js +59 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/make-adapter/make-drop-target.js +288 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/make-adapter/make-monitor.js +85 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/public-utils/combine.js +6 -0
- 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
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/public-utils/element/custom-native-drag-preview/set-custom-native-drag-preview.js +153 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/public-utils/element/custom-native-drag-preview/types.d.ts +16 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/public-utils/once.js +13 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/add-attribute.js +7 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/android.js +10 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/changing-window/count-events-for-safari.js +104 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/changing-window/is-from-another-window.js +16 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/changing-window/is-leaving-window-in-safari.js +12 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/changing-window/is-leaving-window.js +55 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/detect-broken-drag.js +48 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/get-input.js +14 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/is-firefox.js +13 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/is-safari.js +19 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/max-z-index.js +3 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/media-types/text-media-type.js +6 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/media-types/url-media-type.js +6 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/popover-reset-styles.js +40 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop/util/supports-popover.js +16 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/LICENSE.md +11 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/entry-point/element.d.ts +4 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/entry-point/element.js +8 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/internal-types.d.ts +50 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/over-element/data-attributes.js +9 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/over-element/get-scroll-by.js +117 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/over-element/make-api.js +90 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/over-element/try-scroll.js +183 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/axis.js +22 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/can-scroll-on-edge.js +17 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/configuration.js +49 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/edges.js +9 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/engagement-history.js +43 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/get-over-element-hitbox.js +50 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/get-percentage-in-range.js +19 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/get-scroll-change.js +106 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/is-axis-allowed.js +3 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/is-within.js +11 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/scheduler.js +104 -0
- package/dist/dnd/vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/shared/side.js +6 -0
- package/dist/dnd/vendor/pragmatic/raf-schd/LICENSE +21 -0
- package/dist/dnd/vendor/pragmatic/raf-schd/raf-schd.esm.js +34 -0
- package/dist/edytor.svelte.d.ts +34 -64
- package/dist/edytor.svelte.js +118 -180
- package/dist/events/beforeInputCommands.d.ts +6 -11
- package/dist/events/beforeInputCommands.js +189 -184
- package/dist/events/beforeInputDeleteCommands.d.ts +20 -1
- package/dist/events/beforeInputDeleteCommands.js +153 -204
- package/dist/events/domTextOffset.d.ts +9 -9
- package/dist/events/domTextOffset.js +20 -48
- package/dist/events/events.utils.d.ts +0 -2
- package/dist/events/events.utils.js +0 -4
- package/dist/events/nativeInteractiveControl.d.ts +13 -13
- package/dist/events/nativeInteractiveControl.js +28 -56
- package/dist/events/onBeforeInput.d.ts +6 -1
- package/dist/events/onBeforeInput.js +207 -331
- package/dist/events/onCopy.js +1 -5
- package/dist/events/onDrop.d.ts +7 -1
- package/dist/events/onDrop.js +33 -72
- package/dist/events/onFocus.d.ts +9 -4
- package/dist/events/onFocus.js +92 -72
- package/dist/events/onInput.d.ts +8 -4
- package/dist/events/onInput.js +34 -147
- package/dist/events/onKeyDown.js +55 -122
- package/dist/events/onPaste.d.ts +13 -1
- package/dist/events/onPaste.js +46 -76
- package/dist/index.d.ts +10 -13
- package/dist/index.js +3 -3
- package/dist/kinds.d.ts +4 -6
- package/dist/kinds.js +28 -27
- package/dist/labels.d.ts +91 -314
- package/dist/labels.js +180 -396
- package/dist/plugins/Chrome.svelte +29 -0
- package/dist/plugins/Chrome.svelte.d.ts +32 -0
- package/dist/plugins/Control.svelte +23 -0
- package/dist/plugins/Control.svelte.d.ts +30 -0
- package/dist/plugins/anchored.svelte.d.ts +47 -0
- package/dist/plugins/anchored.svelte.js +73 -0
- package/dist/plugins/arrowMove/arrowMove.d.ts +2 -1
- package/dist/plugins/arrowMove/arrowMove.js +9 -5
- package/dist/plugins/bands.svelte.d.ts +57 -0
- package/dist/plugins/bands.svelte.js +95 -0
- package/dist/plugins/blockHandles/BlockHandle.svelte +14 -151
- package/dist/plugins/blockHandles/BlockHandle.svelte.d.ts +2 -2
- package/dist/plugins/blockHandles/BlockHandleController.svelte.d.ts +63 -97
- package/dist/plugins/blockHandles/BlockHandleController.svelte.js +247 -268
- package/dist/plugins/blockHandles/BlockHandles.svelte +46 -29
- package/dist/plugins/blockHandles/BlockHandles.svelte.d.ts +2 -2
- package/dist/plugins/blockHandles/blockHandlesPlugin.d.ts +29 -23
- package/dist/plugins/blockHandles/blockHandlesPlugin.js +130 -162
- package/dist/plugins/blockHandles/dragPreview.d.ts +8 -6
- package/dist/plugins/blockHandles/dragPreview.js +20 -17
- package/dist/plugins/blockHandles/dropIndicator.js +52 -60
- package/dist/plugins/blockHandles/geometry.d.ts +46 -1
- package/dist/plugins/blockHandles/geometry.js +51 -4
- package/dist/plugins/blockMenu/BlockMenuController.svelte.d.ts +59 -28
- package/dist/plugins/blockMenu/BlockMenuController.svelte.js +180 -105
- package/dist/plugins/blockMenu/blockMenuPlugin.d.ts +1 -3
- package/dist/plugins/blockMenu/blockMenuPlugin.js +12 -29
- package/dist/plugins/brand.d.ts +8 -0
- package/dist/plugins/brand.js +8 -0
- package/dist/plugins/chrome.d.ts +79 -0
- package/dist/plugins/chrome.js +87 -0
- package/dist/plugins/code/CodeHeader.svelte +12 -58
- package/dist/plugins/code/CodeHeader.svelte.d.ts +1 -0
- package/dist/plugins/code/CodePlugin.svelte +75 -56
- package/dist/plugins/code/CodePlugin.svelte.d.ts +0 -2
- package/dist/plugins/code/LanguageMenu.svelte +25 -0
- package/dist/plugins/code/LanguageMenu.svelte.d.ts +9 -0
- package/dist/plugins/code/code.css +5 -100
- package/dist/plugins/code/header.svelte.d.ts +47 -0
- package/dist/plugins/code/header.svelte.js +141 -0
- package/dist/plugins/code/languageMenu.svelte.d.ts +84 -0
- package/dist/plugins/code/languageMenu.svelte.js +199 -0
- package/dist/plugins/code/languages.d.ts +21 -10
- package/dist/plugins/code/languages.js +39 -126
- package/dist/plugins/columns/ColumnResize.svelte +13 -25
- package/dist/plugins/columns/ColumnResize.svelte.d.ts +1 -1
- package/dist/plugins/columns/ColumnsPlugin.svelte +46 -78
- package/dist/plugins/columns/ColumnsPlugin.svelte.d.ts +0 -12
- package/dist/plugins/columns/columns.css +7 -26
- package/dist/plugins/columns/resize.svelte.d.ts +14 -51
- package/dist/plugins/columns/resize.svelte.js +70 -164
- package/dist/plugins/comments/CommentsController.svelte.d.ts +1 -4
- package/dist/plugins/comments/CommentsController.svelte.js +14 -25
- package/dist/plugins/comments/CommentsSidebar.svelte +82 -430
- package/dist/plugins/comments/CommentsSidebar.svelte.d.ts +6 -7
- package/dist/plugins/comments/commentsPlugin.d.ts +31 -10
- package/dist/plugins/comments/commentsPlugin.js +12 -10
- package/dist/plugins/equation/EquationEditor.svelte +18 -129
- package/dist/plugins/equation/EquationEditor.svelte.d.ts +2 -1
- package/dist/plugins/equation/EquationPlugin.svelte +123 -168
- package/dist/plugins/equation/EquationPlugin.svelte.d.ts +5 -3
- package/dist/plugins/equation/EquationView.svelte +20 -11
- package/dist/plugins/equation/equation.svelte.d.ts +74 -36
- package/dist/plugins/equation/equation.svelte.js +74 -66
- package/dist/plugins/equation/importUrl.d.ts +6 -0
- package/dist/plugins/equation/importUrl.js +6 -0
- package/dist/plugins/equation/katex.d.ts +8 -0
- package/dist/plugins/equation/katex.js +77 -0
- package/dist/plugins/find/FindController.svelte.d.ts +8 -13
- package/dist/plugins/find/FindController.svelte.js +34 -55
- package/dist/plugins/find/findPlugin.d.ts +4 -8
- package/dist/plugins/find/findPlugin.js +29 -9
- package/dist/plugins/image/ImageChrome.svelte +5 -151
- package/dist/plugins/image/ImagePlugin.svelte +49 -117
- package/dist/plugins/image/ImagePlugin.svelte.d.ts +1 -24
- package/dist/plugins/image/ImageToolbarHost.svelte +37 -0
- package/dist/plugins/image/ImageToolbarHost.svelte.d.ts +9 -0
- package/dist/plugins/image/controls.svelte.d.ts +6 -57
- package/dist/plugins/image/controls.svelte.js +51 -174
- package/dist/plugins/image/image.d.ts +0 -5
- package/dist/plugins/image/image.js +0 -3
- package/dist/plugins/image/toolbar.svelte.d.ts +69 -0
- package/dist/plugins/image/toolbar.svelte.js +145 -0
- package/dist/plugins/index.d.ts +39 -24
- package/dist/plugins/index.js +30 -22
- package/dist/plugins/list.svelte.d.ts +128 -0
- package/dist/plugins/list.svelte.js +217 -0
- package/dist/plugins/markdownShortcuts.d.ts +1 -1
- package/dist/plugins/markdownShortcuts.js +6 -5
- package/dist/plugins/marquee/MarqueeBox.svelte +15 -0
- package/dist/plugins/marquee/MarqueeBox.svelte.d.ts +9 -0
- package/dist/plugins/marquee/MarqueeController.svelte.d.ts +46 -0
- package/dist/plugins/marquee/MarqueeController.svelte.js +243 -0
- package/dist/plugins/marquee/marquee.d.ts +33 -0
- package/dist/plugins/marquee/marquee.js +89 -0
- package/dist/plugins/marquee/marqueePlugin.d.ts +32 -0
- package/dist/plugins/marquee/marqueePlugin.js +68 -0
- package/dist/plugins/media/AudioPlugin.svelte +3 -88
- package/dist/plugins/media/AudioPlugin.svelte.d.ts +1 -4
- package/dist/plugins/media/BookmarkPlugin.svelte +124 -112
- package/dist/plugins/media/BookmarkPlugin.svelte.d.ts +20 -7
- package/dist/plugins/media/EmbedPlugin.svelte +93 -77
- package/dist/plugins/media/EmbedPlugin.svelte.d.ts +21 -9
- package/dist/plugins/media/EmptySlot.svelte +44 -0
- package/dist/plugins/media/EmptySlot.svelte.d.ts +25 -0
- package/dist/plugins/media/FilePlugin.svelte +35 -111
- package/dist/plugins/media/FilePlugin.svelte.d.ts +12 -4
- package/dist/plugins/media/MediaEmpty.svelte +55 -112
- package/dist/plugins/media/MediaEmpty.svelte.d.ts +26 -10
- package/dist/plugins/media/SourceBlock.svelte +164 -0
- package/dist/plugins/media/SourceBlock.svelte.d.ts +33 -0
- package/dist/plugins/media/VideoPlugin.svelte +4 -97
- package/dist/plugins/media/VideoPlugin.svelte.d.ts +2 -5
- package/dist/plugins/media/empty.svelte.d.ts +69 -0
- package/dist/plugins/media/empty.svelte.js +111 -0
- package/dist/plugins/media/media.d.ts +93 -30
- package/dist/plugins/media/media.js +79 -86
- package/dist/plugins/media/urlPaste.svelte.d.ts +9 -32
- package/dist/plugins/media/urlPaste.svelte.js +46 -75
- package/dist/plugins/mention/MentionPlugin.svelte +47 -124
- package/dist/plugins/mention/MentionPlugin.svelte.d.ts +11 -23
- package/dist/plugins/page/PageLink.svelte +54 -38
- package/dist/plugins/page/PagePlugin.svelte +20 -18
- package/dist/plugins/page/PagePlugin.svelte.d.ts +2 -4
- package/dist/plugins/page/page.d.ts +35 -9
- package/dist/plugins/page/page.js +3 -4
- package/dist/plugins/pageLink/PageLinkPlugin.svelte +52 -108
- package/dist/plugins/pageLink/PageLinkPlugin.svelte.d.ts +11 -23
- package/dist/plugins/planned.d.ts +10 -0
- package/dist/plugins/planned.js +12 -0
- package/dist/plugins/richtext/CalloutIcon.svelte +25 -0
- package/dist/plugins/richtext/CalloutIcon.svelte.d.ts +9 -0
- package/dist/plugins/richtext/CalloutIconPicker.svelte +26 -0
- package/dist/plugins/richtext/CalloutIconPicker.svelte.d.ts +9 -0
- package/dist/plugins/richtext/EmptyBody.svelte +25 -0
- package/dist/plugins/richtext/EmptyBody.svelte.d.ts +8 -0
- package/dist/plugins/richtext/RichTextControl.svelte +39 -0
- package/dist/plugins/richtext/RichTextControl.svelte.d.ts +8 -0
- package/dist/plugins/richtext/RichTextPlugin.svelte +272 -148
- package/dist/plugins/richtext/RichTextPlugin.svelte.d.ts +37 -18
- package/dist/plugins/richtext/TodoCheckbox.svelte +10 -21
- package/dist/plugins/richtext/TodoCheckbox.svelte.d.ts +0 -2
- package/dist/plugins/richtext/body.d.ts +9 -0
- package/dist/plugins/richtext/body.js +16 -0
- package/dist/plugins/richtext/calloutIcons.svelte.d.ts +97 -0
- package/dist/plugins/richtext/calloutIcons.svelte.js +214 -0
- package/dist/plugins/richtext/callouts.d.ts +15 -0
- package/dist/plugins/richtext/callouts.js +23 -0
- package/dist/plugins/richtext/controls.svelte.d.ts +110 -0
- package/dist/plugins/richtext/controls.svelte.js +126 -0
- package/dist/plugins/richtext/richTextOperations.js +37 -28
- package/dist/plugins/slashMenu/SlashMenuController.svelte.d.ts +18 -11
- package/dist/plugins/slashMenu/SlashMenuController.svelte.js +93 -35
- package/dist/plugins/slashMenu/slashMenuPlugin.d.ts +11 -24
- package/dist/plugins/slashMenu/slashMenuPlugin.js +27 -68
- package/dist/plugins/suggestions/SuggestionBars.svelte +32 -84
- package/dist/plugins/suggestions/SuggestionBars.svelte.d.ts +9 -3
- package/dist/plugins/suggestions/suggestionsPlugin.d.ts +10 -16
- package/dist/plugins/suggestions/suggestionsPlugin.js +9 -24
- package/dist/plugins/table/TableChrome.svelte +96 -127
- package/dist/plugins/table/TableChrome.svelte.d.ts +5 -1
- package/dist/plugins/table/TablePlugin.svelte +116 -171
- package/dist/plugins/table/TablePlugin.svelte.d.ts +0 -4
- package/dist/plugins/table/chrome.svelte.d.ts +110 -117
- package/dist/plugins/table/chrome.svelte.js +643 -289
- package/dist/plugins/table/ops.d.ts +47 -0
- package/dist/plugins/table/ops.js +233 -0
- package/dist/plugins/table/table.css +55 -134
- package/dist/plugins/table/table.d.ts +26 -7
- package/dist/plugins/table/table.js +23 -49
- package/dist/plugins/toc/TableOfContents.svelte +32 -38
- package/dist/plugins/toc/TableOfContents.svelte.d.ts +1 -5
- package/dist/plugins/toc/TocPlugin.svelte +22 -22
- package/dist/plugins/toc/TocPlugin.svelte.d.ts +4 -6
- package/dist/plugins/toc/toc.d.ts +41 -10
- package/dist/plugins/toc/toc.js +2 -3
- package/dist/plugins/toolbar/ToolbarController.svelte.d.ts +29 -66
- package/dist/plugins/toolbar/ToolbarController.svelte.js +151 -76
- package/dist/plugins/toolbar/toolbarPlugin.d.ts +14 -13
- package/dist/plugins/toolbar/toolbarPlugin.js +28 -43
- package/dist/plugins/triggers/TriggerController.svelte.d.ts +6 -45
- package/dist/plugins/triggers/TriggerController.svelte.js +51 -96
- package/dist/plugins/triggers/place.d.ts +0 -9
- package/dist/plugins/triggers/place.js +1 -17
- package/dist/plugins/triggers/triggers.d.ts +31 -9
- package/dist/plugins/triggers/triggers.js +82 -62
- package/dist/plugins/uploads.svelte.d.ts +38 -20
- package/dist/plugins/uploads.svelte.js +39 -32
- package/dist/plugins.d.ts +167 -60
- package/dist/selection/domSelection.d.ts +13 -4
- package/dist/selection/domSelection.js +110 -183
- package/dist/selection/pointer.svelte.d.ts +12 -10
- package/dist/selection/pointer.svelte.js +154 -71
- package/dist/selection/replaceSelection.d.ts +21 -22
- package/dist/selection/replaceSelection.js +60 -69
- package/dist/selection/selection.svelte.d.ts +5 -73
- package/dist/selection/selection.svelte.js +263 -542
- package/dist/selection/selection.utils.d.ts +34 -11
- package/dist/selection/selection.utils.js +128 -247
- package/dist/selection/visibility.d.ts +11 -8
- package/dist/selection/visibility.js +23 -8
- package/dist/session/announcer.svelte.d.ts +2 -1
- package/dist/session/announcer.svelte.js +7 -3
- package/dist/session/attempt.d.ts +33 -39
- package/dist/session/attempt.js +61 -53
- package/dist/session/bindings.js +108 -139
- package/dist/session/commands.d.ts +47 -22
- package/dist/session/commands.js +206 -208
- package/dist/session/composition.svelte.d.ts +2 -4
- package/dist/session/composition.svelte.js +55 -65
- package/dist/session/editing/text.d.ts +6 -0
- package/dist/session/editing/text.js +17 -3
- package/dist/session/handles.d.ts +10 -1
- package/dist/session/handles.js +28 -0
- package/dist/session/history.d.ts +0 -4
- package/dist/session/history.js +15 -21
- package/dist/session/inputRules.js +75 -84
- package/dist/session/keymap.d.ts +1 -6
- package/dist/session/keymap.js +17 -20
- package/dist/session/moves.d.ts +10 -10
- package/dist/session/moves.js +31 -59
- package/dist/session/navigation.d.ts +18 -3
- package/dist/session/navigation.js +194 -153
- package/dist/session/ports.d.ts +7 -0
- package/dist/session/selection.d.ts +4 -3
- package/dist/session/selection.js +8 -0
- package/dist/session/suggestions.svelte.d.ts +1 -1
- package/dist/session/suggestions.svelte.js +64 -47
- package/dist/session/virtual.d.ts +3 -3
- package/dist/session/virtual.js +18 -40
- package/dist/surface/attributes.d.ts +1 -0
- package/dist/surface/attributes.js +3 -26
- package/dist/surface/cells.d.ts +5 -0
- package/dist/surface/cells.js +5 -0
- package/dist/surface/lines.d.ts +32 -0
- package/dist/surface/lines.js +43 -0
- package/dist/surface/observer.svelte.d.ts +3 -20
- package/dist/surface/observer.svelte.js +73 -77
- package/dist/surface/overlay.d.ts +48 -6
- package/dist/surface/overlay.js +133 -23
- package/dist/surface/pin.svelte.d.ts +5 -0
- package/dist/surface/pin.svelte.js +5 -0
- package/dist/surface/projector.svelte.d.ts +4 -6
- package/dist/surface/projector.svelte.js +42 -69
- package/dist/text/text.svelte.d.ts +14 -40
- package/dist/text/text.svelte.js +35 -51
- package/dist/text/wordBoundary.d.ts +19 -0
- package/dist/text/wordBoundary.js +29 -44
- package/dist/themes/notion.css +315 -126
- package/dist/utils/json.d.ts +3 -1
- package/dist/utils/json.js +52 -51
- package/dist/utils/listen.d.ts +8 -0
- package/dist/utils/listen.js +19 -0
- package/package.json +4 -5
- package/dist/block/block.utils.d.ts +0 -340
- package/dist/block/block.utils.js +0 -356
- package/dist/collaboration/history/HistoryPanel.svelte +0 -525
- package/dist/collaboration/history/HistoryPanel.svelte.d.ts +0 -7
- package/dist/collaboration/history/panel.d.ts +0 -43
- package/dist/collaboration/history/panel.js +0 -3
- package/dist/components/SuggestionRanges.svelte +0 -58
- package/dist/components/SuggestionRanges.svelte.d.ts +0 -7
- package/dist/crdt/doc/table.d.ts +0 -21
- package/dist/crdt/doc/table.js +0 -288
- package/dist/crdt/migration/generation.d.ts +0 -58
- package/dist/crdt/migration/generation.js +0 -70
- package/dist/crdt/migration/legacy-schema.d.ts +0 -61
- package/dist/crdt/migration/legacy-schema.js +0 -151
- package/dist/crdt/migration/migrate.d.ts +0 -56
- package/dist/crdt/migration/migrate.js +0 -227
- package/dist/crdt/nodes.d.ts +0 -121
- package/dist/crdt/nodes.js +0 -56
- package/dist/crdt/text/index/checks.d.ts +0 -15
- package/dist/crdt/text/index/checks.js +0 -156
- package/dist/crdt/vendor/yjs/dts/utils/EventHandler.d.ts +0 -17
- package/dist/crdt/vendor/yjs/dts/utils/RelativePosition.d.ts +0 -80
- package/dist/crdt/vendor/yjs/dts/utils/UndoManager.d.ts +0 -205
- package/dist/crdt/vendor/yjs/dts/utils/YEvent.d.ts +0 -93
- package/dist/crdt/vendor/yjs/dts/utils/meta.d.ts +0 -25
- package/dist/crdt/vendor/yjs/dts/utils/renderer-helpers.d.ts +0 -98
- package/dist/crdt/vendor/yjs/dts/utils/schemas.d.ts +0 -2
- package/dist/crdt/vendor/yjs/src/utils/EventHandler.js +0 -75
- package/dist/crdt/vendor/yjs/src/utils/RelativePosition.js +0 -301
- package/dist/crdt/vendor/yjs/src/utils/UndoManager.js +0 -554
- package/dist/crdt/vendor/yjs/src/utils/YEvent.js +0 -158
- package/dist/crdt/vendor/yjs/src/utils/meta.js +0 -74
- package/dist/crdt/vendor/yjs/src/utils/renderer-helpers.js +0 -186
- package/dist/crdt/vendor/yjs/src/utils/schemas.js +0 -3
- package/dist/edytor.utils.d.ts +0 -50
- package/dist/edytor.utils.js +0 -67
- package/dist/plugins/blockMenu/BlockMenu.svelte +0 -447
- package/dist/plugins/blockMenu/BlockMenu.svelte.d.ts +0 -9
- package/dist/plugins/find/FindBar.svelte +0 -170
- package/dist/plugins/find/FindBar.svelte.d.ts +0 -9
- package/dist/plugins/find/FindHighlights.svelte +0 -75
- package/dist/plugins/find/FindHighlights.svelte.d.ts +0 -9
- package/dist/plugins/icons.d.ts +0 -2
- package/dist/plugins/icons.js +0 -63
- package/dist/plugins/image/ImageEmpty.svelte +0 -116
- package/dist/plugins/image/ImageEmpty.svelte.d.ts +0 -12
- package/dist/plugins/keepInView.d.ts +0 -4
- package/dist/plugins/keepInView.js +0 -6
- package/dist/plugins/media/UrlPasteMenu.svelte +0 -83
- package/dist/plugins/media/UrlPasteMenu.svelte.d.ts +0 -7
- package/dist/plugins/richtext/labels.d.ts +0 -5
- package/dist/plugins/richtext/labels.js +0 -3
- package/dist/plugins/slashMenu/SlashMenu.svelte +0 -360
- package/dist/plugins/slashMenu/SlashMenu.svelte.d.ts +0 -11
- package/dist/plugins/toolbar/LinkCard.svelte +0 -118
- package/dist/plugins/toolbar/LinkCard.svelte.d.ts +0 -7
- package/dist/plugins/toolbar/Toolbar.svelte +0 -400
- package/dist/plugins/toolbar/Toolbar.svelte.d.ts +0 -9
- package/dist/plugins/triggers/TriggerMenu.svelte +0 -144
- package/dist/plugins/triggers/TriggerMenu.svelte.d.ts +0 -7
- package/dist/session/props.d.ts +0 -28
- package/dist/session/props.js +0 -162
- package/dist/text/deltas.d.ts +0 -22
- package/dist/text/deltas.js +0 -46
- package/dist/text/text.utils.d.ts +0 -45
- package/dist/text/text.utils.js +0 -199
package/dist/crdt/index.d.ts
CHANGED
|
@@ -24,9 +24,9 @@
|
|
|
24
24
|
* (`BlockSpec`, `Destination`, `ProjectedDoc`, `DocChange`, `JSONDoc`,
|
|
25
25
|
* …), the provider/sync contract (`EdytorSync`), `Awareness`, the
|
|
26
26
|
* admission errors a load throws, the attribution read surface
|
|
27
|
-
* (`DocumentAttribution`)
|
|
27
|
+
* (`DocumentAttribution`).
|
|
28
28
|
* - **Composition** — `bindCrdt(Y)` for consumers that inject the engine
|
|
29
|
-
* themselves (node/SSR-side provider stacks,
|
|
29
|
+
* themselves (node/SSR-side provider stacks,
|
|
30
30
|
* alternate engine instances) plus the engine typings that contract
|
|
31
31
|
* needs.
|
|
32
32
|
*
|
|
@@ -49,15 +49,14 @@ export { defaultSemantics, richTextSemantics, codeSemantics, imageSemantics, med
|
|
|
49
49
|
export { tableBlock, type TableBlockOptions } from './tables.js';
|
|
50
50
|
export { markName, type MarkEdge } from './text/marks.js';
|
|
51
51
|
export type { JSONDoc, JSONBlock, JSONText, JSONInlineBlock, SerializableContent } from '../utils/json.js';
|
|
52
|
-
/** Canonical JSON → the `BlockSpec` `facade.
|
|
52
|
+
/** Canonical JSON → the `BlockSpec` `facade.insertBlocks` takes (ids kept or minted). */
|
|
53
53
|
export { toBlockSpec } from '../utils/json.js';
|
|
54
54
|
export { type EdytorDoc, type OpResult, type Plan, type Prepared, type DocChange, type BlockRole, type OrderPolicy, type DocAnchor, type AnchorAffinity, type DataTarget } from './edytor-doc.js';
|
|
55
|
-
export { DOCUMENT_OPERATIONS, type DocumentOperations, type DocumentReads, type DocumentWrites } from './operations.js';
|
|
55
|
+
export { DOCUMENT_OPERATIONS, DOCUMENT_WRITES, type DocumentOperations, type DocumentReads, type DocumentWrites } from './operations.js';
|
|
56
56
|
export { type DataPatch } from './data.js';
|
|
57
57
|
export { type DocPosition, type RangeView } from './rangeDelete.js';
|
|
58
58
|
export { type FlowView } from './flow.js';
|
|
59
59
|
export { type BlockId, type Destination, type ContentItem, type BlockSpec, type InlineSpec, type ProjectedBlock, type ProjectedDoc } from './placement/model.js';
|
|
60
|
-
export { type DocBlock } from './nodes.js';
|
|
61
60
|
export { type ContentRun } from './text/runs.js';
|
|
62
61
|
export type { YDoc, YUndoManager, YTransaction } from './engine-api.js';
|
|
63
62
|
export { type EdytorSync, type EdytorSyncPayload, type EdytorSyncCleanup, type IndexeddbSyncOptions, type WebsocketSync, type WebsocketSyncOptions, type ProviderStack, type PrefetchOptions, type PrefetchResult, type LastUpdatedOptions } from './providers/index.js';
|
|
@@ -66,10 +65,9 @@ export { Awareness, type AwarenessDoc, type AwarenessStates, type AwarenessUpdat
|
|
|
66
65
|
export { SchemaMismatchError, UndecodableUpdateError, UnsupportedDocError } from './admission.js';
|
|
67
66
|
export { type DocumentAttribution, type AttributionActor, type ActorProfile, type AttributionController } from './attribution/index.js';
|
|
68
67
|
export { type ActorId, type BlockAttribution } from './attribution/index.js';
|
|
69
|
-
export { isLegacyDoc } from './migration/legacy-schema.js';
|
|
70
|
-
export { type Migration, type MigrationStatus, type MigrationRecord, type MigrationPhase, type MigrateResult, type MigrateOptions } from './migration/migrate.js';
|
|
71
68
|
import type { EngineApi, YDoc } from './engine-api.js';
|
|
72
69
|
import { Awareness as _Awareness } from './protocols/awareness.js';
|
|
70
|
+
import { type PrefetchOptions } from './providers/index.js';
|
|
73
71
|
export declare const bindCrdt: (Y: EngineApi) => {
|
|
74
72
|
/** Create a v14 edytor document — `new Y.Doc(opts)` on the bound engine, with the document's rules (`doc.newDoc`). */
|
|
75
73
|
createDoc: (opts?: ConstructorParameters<EngineApi["Doc"]>[0]) => YDoc;
|
|
@@ -77,7 +75,7 @@ export declare const bindCrdt: (Y: EngineApi) => {
|
|
|
77
75
|
Awareness: typeof _Awareness;
|
|
78
76
|
doc: {
|
|
79
77
|
SCHEMA: {
|
|
80
|
-
readonly version:
|
|
78
|
+
readonly version: 6;
|
|
81
79
|
readonly name: "edytor-doc";
|
|
82
80
|
readonly roots: {
|
|
83
81
|
readonly registry: "blocks";
|
|
@@ -88,7 +86,7 @@ export declare const bindCrdt: (Y: EngineApi) => {
|
|
|
88
86
|
readonly schema: "schema";
|
|
89
87
|
};
|
|
90
88
|
};
|
|
91
|
-
SCHEMA_VERSION:
|
|
89
|
+
SCHEMA_VERSION: 6;
|
|
92
90
|
SCHEMA_NAME: "edytor-doc";
|
|
93
91
|
META_KEY: "meta";
|
|
94
92
|
init: (doc: import("./engine-api.js").EngineDoc, opts?: {
|
|
@@ -108,17 +106,8 @@ export declare const bindCrdt: (Y: EngineApi) => {
|
|
|
108
106
|
insertFlow: (target: import("./flow.js").FlowTarget, flow: import("./flow.js").Flow, view?: import("./flow.js").FlowView) => import("./edytor-doc.js").Prepared;
|
|
109
107
|
deleteRange: (from: import("./rangeDelete.js").DocPosition, to: import("./rangeDelete.js").DocPosition, view?: import("./rangeDelete.js").RangeView) => import("./edytor-doc.js").Prepared;
|
|
110
108
|
replaceRange: (from: import("./rangeDelete.js").DocPosition, to: import("./rangeDelete.js").DocPosition, view?: import("./rangeDelete.js").RangeView) => import("./edytor-doc.js").Prepared;
|
|
111
|
-
insertTableRow: (table: import("./index.js").BlockId, index: number) => import("./edytor-doc.js").Prepared;
|
|
112
|
-
deleteTableRows: (rows: readonly import("./index.js").BlockId[]) => import("./edytor-doc.js").Prepared;
|
|
113
|
-
insertTableColumn: (table: import("./index.js").BlockId, index: number, width?: number) => import("./edytor-doc.js").Prepared;
|
|
114
|
-
deleteTableColumn: (table: import("./index.js").BlockId, column: string | number) => import("./edytor-doc.js").Prepared;
|
|
115
|
-
moveTableColumn: (table: import("./index.js").BlockId, column: string | number, to: number) => import("./edytor-doc.js").Prepared;
|
|
116
|
-
moveTableRows: (rows: readonly import("./index.js").BlockId[], to: number) => import("./edytor-doc.js").Prepared;
|
|
117
|
-
fillTableCell: (row: import("./index.js").BlockId, column: string | number) => import("./edytor-doc.js").Prepared;
|
|
118
109
|
insertBlocks: (dest: import("./index.js").Destination, specs: readonly (import("./index.js").BlockSpec | import("./index.js").JSONBlock)[]) => import("./edytor-doc.js").Prepared;
|
|
119
|
-
insertBlock: (dest: import("./index.js").Destination, spec: import("./index.js").BlockSpec | import("./index.js").JSONBlock) => import("./edytor-doc.js").Prepared;
|
|
120
110
|
moveBlocks: (ids: readonly import("./index.js").BlockId[], dest: import("./index.js").Destination) => import("./edytor-doc.js").Prepared;
|
|
121
|
-
moveBlock: (id: import("./index.js").BlockId, dest: import("./index.js").Destination) => import("./edytor-doc.js").Prepared;
|
|
122
111
|
nestBlock: (id: import("./index.js").BlockId, parent: import("./index.js").BlockId) => import("./edytor-doc.js").Prepared;
|
|
123
112
|
unNestBlock: (id: import("./index.js").BlockId) => import("./edytor-doc.js").Prepared;
|
|
124
113
|
unNestBlocks: (ids: readonly import("./index.js").BlockId[]) => import("./edytor-doc.js").Prepared;
|
|
@@ -138,22 +127,18 @@ export declare const bindCrdt: (Y: EngineApi) => {
|
|
|
138
127
|
setBlock: (id: import("./index.js").BlockId, value: {
|
|
139
128
|
type?: string;
|
|
140
129
|
data?: Record<string, unknown>;
|
|
141
|
-
content?: import("./index.js").ContentItem[];
|
|
142
|
-
children?: import("./index.js").BlockSpec[];
|
|
130
|
+
content?: (import("./index.js").ContentItem | import("./index.js").JSONText | import("./index.js").JSONInlineBlock)[];
|
|
131
|
+
children?: (import("./index.js").BlockSpec | import("./index.js").JSONBlock)[];
|
|
143
132
|
}) => import("./edytor-doc.js").Prepared;
|
|
144
133
|
setBlockType: (id: import("./index.js").BlockId, type: string) => import("./edytor-doc.js").Prepared;
|
|
145
134
|
patchData: (target: import("./edytor-doc.js").DataTarget, patches: readonly import("./data.js").DataPatch[]) => import("./edytor-doc.js").Prepared;
|
|
146
|
-
|
|
147
|
-
duplicateBlock: (id: import("./index.js").BlockId, freshId: (oldId: string, kind: "block" | "inline") => string) => import("./edytor-doc.js").Prepared;
|
|
135
|
+
duplicateBlock: (id: import("./index.js").BlockId, freshId?: (oldId: string, kind: "block" | "inline") => string) => import("./edytor-doc.js").Prepared;
|
|
148
136
|
insertText: (id: import("./index.js").BlockId, offset: number, text: string, marks?: Record<string, unknown>) => import("./edytor-doc.js").Prepared;
|
|
149
137
|
deleteText: (id: import("./index.js").BlockId, offset: number, length: number) => import("./edytor-doc.js").Prepared;
|
|
150
138
|
formatRange: (id: import("./index.js").BlockId, offset: number, length: number, marks: Record<string, unknown>) => import("./edytor-doc.js").Prepared;
|
|
151
|
-
setMark: (id: import("./index.js").BlockId, offset: number, length: number, name: string, value: unknown) => import("./edytor-doc.js").Prepared;
|
|
152
|
-
unsetMark: (id: import("./index.js").BlockId, offset: number, length: number, name: string) => import("./edytor-doc.js").Prepared;
|
|
153
139
|
clearMarks: (id: import("./index.js").BlockId, offset: number, length: number) => import("./edytor-doc.js").Prepared;
|
|
154
|
-
insertInline: (id: import("./index.js").BlockId, offset: number, atom: import("./
|
|
140
|
+
insertInline: (id: import("./index.js").BlockId, offset: number, atom: import("./doc/content.js").NewInline) => import("./edytor-doc.js").Prepared;
|
|
155
141
|
removeInline: (id: import("./index.js").BlockId, inlineId: string) => import("./edytor-doc.js").Prepared;
|
|
156
|
-
setInlineData: (id: import("./index.js").BlockId, inlineId: string, data: Record<string, unknown>) => import("./edytor-doc.js").Prepared;
|
|
157
142
|
deleteBlocks: (ids: readonly import("./index.js").BlockId[]) => import("./edytor-doc.js").Prepared;
|
|
158
143
|
};
|
|
159
144
|
apply: (p: import("./edytor-doc.js").Prepared) => import("./edytor-doc.js").OpResult;
|
|
@@ -178,7 +163,7 @@ export declare const bindCrdt: (Y: EngineApi) => {
|
|
|
178
163
|
writePlacement: (doc: import("./engine-api.js").EngineDoc, node: import("./engine-api.js").EngineNode, p: import("./index.js").BlockId | null, r: string) => void;
|
|
179
164
|
withdrawOnUndo: (doc: import("./engine-api.js").EngineDoc) => (item: import("./engine-api.js").EngineItemRef, stackItem: {
|
|
180
165
|
inserts: {
|
|
181
|
-
|
|
166
|
+
has(client: number, clock: number): boolean;
|
|
182
167
|
};
|
|
183
168
|
}) => boolean;
|
|
184
169
|
materializeSpec: (doc: import("./engine-api.js").EngineDoc, sp: import("./index.js").BlockSpec, parent: import("./index.js").BlockId | null, rank: string) => void;
|
|
@@ -228,21 +213,11 @@ export declare const bindCrdt: (Y: EngineApi) => {
|
|
|
228
213
|
};
|
|
229
214
|
runsView: import("./text/runs.js").RunView;
|
|
230
215
|
version: number;
|
|
231
|
-
block: (id: import("./index.js").BlockId) => import("./nodes.js").DocBlock;
|
|
232
216
|
insertFlow: (target: import("./flow.js").FlowTarget, flow: import("./flow.js").Flow, view?: import("./flow.js").FlowView | undefined) => import("./edytor-doc.js").OpResult;
|
|
233
217
|
deleteRange: (from: import("./rangeDelete.js").DocPosition, to: import("./rangeDelete.js").DocPosition, view?: import("./rangeDelete.js").RangeView | undefined) => import("./edytor-doc.js").OpResult;
|
|
234
218
|
replaceRange: (from: import("./rangeDelete.js").DocPosition, to: import("./rangeDelete.js").DocPosition, view?: import("./rangeDelete.js").RangeView | undefined) => import("./edytor-doc.js").OpResult;
|
|
235
|
-
|
|
236
|
-
deleteTableRows: (rows: readonly string[]) => import("./edytor-doc.js").OpResult;
|
|
237
|
-
insertTableColumn: (table: string, index: number, width?: number | undefined) => import("./edytor-doc.js").OpResult;
|
|
238
|
-
deleteTableColumn: (table: string, column: string | number) => import("./edytor-doc.js").OpResult;
|
|
239
|
-
moveTableColumn: (table: string, column: string | number, to: number) => import("./edytor-doc.js").OpResult;
|
|
240
|
-
moveTableRows: (rows: readonly string[], to: number) => import("./edytor-doc.js").OpResult;
|
|
241
|
-
fillTableCell: (row: string, column: string | number) => import("./edytor-doc.js").OpResult;
|
|
242
|
-
insertBlocks: (dest: import("./index.js").Destination, specs: readonly (import("./index.js").JSONBlock | import("./index.js").BlockSpec)[]) => import("./edytor-doc.js").OpResult;
|
|
243
|
-
insertBlock: (dest: import("./index.js").Destination, spec: import("./index.js").JSONBlock | import("./index.js").BlockSpec) => import("./edytor-doc.js").OpResult;
|
|
219
|
+
insertBlocks: (dest: import("./index.js").Destination, specs: readonly (import("./index.js").BlockSpec | import("./index.js").JSONBlock)[]) => import("./edytor-doc.js").OpResult;
|
|
244
220
|
moveBlocks: (ids: readonly string[], dest: import("./index.js").Destination) => import("./edytor-doc.js").OpResult;
|
|
245
|
-
moveBlock: (id: string, dest: import("./index.js").Destination) => import("./edytor-doc.js").OpResult;
|
|
246
221
|
nestBlock: (id: string, parent: string) => import("./edytor-doc.js").OpResult;
|
|
247
222
|
unNestBlock: (id: string) => import("./edytor-doc.js").OpResult;
|
|
248
223
|
unNestBlocks: (ids: readonly string[]) => import("./edytor-doc.js").OpResult;
|
|
@@ -262,22 +237,18 @@ export declare const bindCrdt: (Y: EngineApi) => {
|
|
|
262
237
|
setBlock: (id: string, value: {
|
|
263
238
|
type?: string;
|
|
264
239
|
data?: Record<string, unknown>;
|
|
265
|
-
content?: import("./index.js").ContentItem[];
|
|
266
|
-
children?: import("./index.js").BlockSpec[];
|
|
240
|
+
content?: (import("./index.js").ContentItem | import("./index.js").JSONText | import("./index.js").JSONInlineBlock)[];
|
|
241
|
+
children?: (import("./index.js").BlockSpec | import("./index.js").JSONBlock)[];
|
|
267
242
|
}) => import("./edytor-doc.js").OpResult;
|
|
268
243
|
setBlockType: (id: string, type: string) => import("./edytor-doc.js").OpResult;
|
|
269
244
|
patchData: (target: import("./edytor-doc.js").DataTarget, patches: readonly import("./data.js").DataPatch[]) => import("./edytor-doc.js").OpResult;
|
|
270
|
-
|
|
271
|
-
duplicateBlock: (id: string, freshId: (oldId: string, kind: "block" | "inline") => string) => import("./edytor-doc.js").OpResult;
|
|
245
|
+
duplicateBlock: (id: string, freshId?: ((oldId: string, kind: "block" | "inline") => string) | undefined) => import("./edytor-doc.js").OpResult;
|
|
272
246
|
insertText: (id: string, offset: number, text: string, marks?: Record<string, unknown> | undefined) => import("./edytor-doc.js").OpResult;
|
|
273
247
|
deleteText: (id: string, offset: number, length: number) => import("./edytor-doc.js").OpResult;
|
|
274
248
|
formatRange: (id: string, offset: number, length: number, marks: Record<string, unknown>) => import("./edytor-doc.js").OpResult;
|
|
275
|
-
setMark: (id: string, offset: number, length: number, name: string, value: unknown) => import("./edytor-doc.js").OpResult;
|
|
276
|
-
unsetMark: (id: string, offset: number, length: number, name: string) => import("./edytor-doc.js").OpResult;
|
|
277
249
|
clearMarks: (id: string, offset: number, length: number) => import("./edytor-doc.js").OpResult;
|
|
278
|
-
insertInline: (id: string, offset: number, atom: import("./
|
|
250
|
+
insertInline: (id: string, offset: number, atom: import("./doc/content.js").NewInline) => import("./edytor-doc.js").OpResult;
|
|
279
251
|
removeInline: (id: string, inlineId: string) => import("./edytor-doc.js").OpResult;
|
|
280
|
-
setInlineData: (id: string, inlineId: string, data: Record<string, unknown>) => import("./edytor-doc.js").OpResult;
|
|
281
252
|
deleteBlocks: (ids: readonly string[]) => import("./edytor-doc.js").OpResult;
|
|
282
253
|
init: (opts?: Parameters<(doc: import("./engine-api.js").EngineDoc, opts?: {
|
|
283
254
|
content?: import("./index.js").BlockSpec[];
|
|
@@ -289,10 +260,7 @@ export declare const bindCrdt: (Y: EngineApi) => {
|
|
|
289
260
|
checkSchema: () => import("./edytor-doc.js").SchemaProblem | null;
|
|
290
261
|
assertSchema: () => void;
|
|
291
262
|
dispose: () => void;
|
|
292
|
-
createUndoManager: (options?:
|
|
293
|
-
limit?: number;
|
|
294
|
-
}) => import("./engine-api.js").YUndoManager;
|
|
295
|
-
releaseHistory: (um: import("./engine-api.js").YUndoManager) => void;
|
|
263
|
+
createUndoManager: (options?: import("./doc/history.js").HistoryOptions) => import("./doc/history.js").UndoManager;
|
|
296
264
|
project: () => import("./index.js").ProjectedDoc;
|
|
297
265
|
toJSON: () => import("./index.js").JSONDoc;
|
|
298
266
|
blockJSON: (id: string) => import("./index.js").JSONBlock;
|
|
@@ -400,7 +368,7 @@ export declare const bindCrdt: (Y: EngineApi) => {
|
|
|
400
368
|
writePlacement: (doc: import("./engine-api.js").EngineDoc, node: import("./engine-api.js").EngineNode, p: import("./index.js").BlockId | null, r: string) => void;
|
|
401
369
|
withdrawOnUndo: (doc: import("./engine-api.js").EngineDoc) => (item: import("./engine-api.js").EngineItemRef, stackItem: {
|
|
402
370
|
inserts: {
|
|
403
|
-
|
|
371
|
+
has(client: number, clock: number): boolean;
|
|
404
372
|
};
|
|
405
373
|
}) => boolean;
|
|
406
374
|
materializeSpec: (doc: import("./engine-api.js").EngineDoc, sp: import("./index.js").BlockSpec, parent: import("./index.js").BlockId | null, rank: string) => void;
|
|
@@ -453,7 +421,7 @@ export declare const bindCrdt: (Y: EngineApi) => {
|
|
|
453
421
|
};
|
|
454
422
|
};
|
|
455
423
|
providers: {
|
|
456
|
-
prefetch: (options:
|
|
424
|
+
prefetch: (options: PrefetchOptions) => Promise<import("./index.js").PrefetchResult>;
|
|
457
425
|
lastUpdated: (options: import("./index.js").LastUpdatedOptions) => Promise<number | null>;
|
|
458
426
|
documentSnapshot: (options: import("./index.js").LastUpdatedOptions) => Promise<import("./index.js").JSONDoc | null>;
|
|
459
427
|
IndexeddbPersistence: {
|
|
@@ -479,7 +447,7 @@ export declare const bindCrdt: (Y: EngineApi) => {
|
|
|
479
447
|
bcconnected: boolean;
|
|
480
448
|
disableBc: boolean;
|
|
481
449
|
_ownsAwareness: boolean;
|
|
482
|
-
_bcSubscriber: (data: ArrayBuffer, origin: unknown) => void;
|
|
450
|
+
_bcSubscriber: (data: ArrayBuffer | Uint8Array, origin: unknown) => void;
|
|
483
451
|
_awarenessUpdateHandler: (updates: {
|
|
484
452
|
added: number[];
|
|
485
453
|
updated: number[];
|
|
@@ -551,7 +519,7 @@ export declare const bindCrdt: (Y: EngineApi) => {
|
|
|
551
519
|
bcChannel: string;
|
|
552
520
|
bcconnected: boolean;
|
|
553
521
|
disableBc: boolean;
|
|
554
|
-
_bcSubscriber: (data: ArrayBuffer, origin: unknown) => void;
|
|
522
|
+
_bcSubscriber: (data: ArrayBuffer | Uint8Array, origin: unknown) => void;
|
|
555
523
|
_fromTab: {};
|
|
556
524
|
wsUnsuccessfulReconnects: number;
|
|
557
525
|
wsLastMessageReceived: number;
|
|
@@ -618,31 +586,11 @@ export declare const bindCrdt: (Y: EngineApi) => {
|
|
|
618
586
|
_dbsize: number;
|
|
619
587
|
_destroyed: boolean;
|
|
620
588
|
}, forceStore?: boolean) => Promise<undefined>;
|
|
621
|
-
clearDocument: (name: string) => Promise<
|
|
589
|
+
clearDocument: (name: string) => Promise<void>;
|
|
622
590
|
PREFERRED_TRIM_SIZE: number;
|
|
623
591
|
createIndexeddbSync: (name: string) => import("./index.js").EdytorSync;
|
|
624
592
|
createWebsocketSync: (options: import("./index.js").WebsocketSyncOptions) => import("./index.js").WebsocketSync;
|
|
625
593
|
};
|
|
626
|
-
migration: {
|
|
627
|
-
migrate: (name: string, options?: import("./index.js").MigrateOptions) => Promise<import("./index.js").MigrateResult>;
|
|
628
|
-
rollback: (name: string) => Promise<void>;
|
|
629
|
-
status: (name: string) => Promise<import("./index.js").MigrationRecord>;
|
|
630
|
-
waitForSettled: (name: string) => Promise<import("./index.js").MigrationRecord>;
|
|
631
|
-
};
|
|
632
|
-
/** The generation cutover (4 → 5): a generation-4 state read as JSON. */
|
|
633
|
-
generations: {
|
|
634
|
-
isPreviousGenerationRecord: (v: unknown) => v is import("./protocol.js").GenerationRecord;
|
|
635
|
-
previousJSON: (updates: ReadonlyArray<Uint8Array | {
|
|
636
|
-
v2: Uint8Array;
|
|
637
|
-
}>, facadeOf: (doc: YDoc) => {
|
|
638
|
-
toJSON(): import("./index.js").JSONDoc;
|
|
639
|
-
dispose(): void;
|
|
640
|
-
}) => import("./index.js").JSONDoc;
|
|
641
|
-
seedOf: (value: import("./index.js").JSONDoc, semantics?: import("./document.js").DocumentSemanticsConfig) => Uint8Array;
|
|
642
|
-
previousJSONWith: (updates: ReadonlyArray<Uint8Array | {
|
|
643
|
-
v2: Uint8Array;
|
|
644
|
-
}>, semantics?: import("./document.js").DocumentSemanticsConfig) => import("./index.js").JSONDoc;
|
|
645
|
-
};
|
|
646
594
|
sync: {
|
|
647
595
|
messageYjsSyncStep1: number;
|
|
648
596
|
messageYjsSyncStep2: number;
|
|
@@ -650,12 +598,7 @@ export declare const bindCrdt: (Y: EngineApi) => {
|
|
|
650
598
|
remoteApplyOrigin: symbol;
|
|
651
599
|
writeSyncStep1: (encoder: import("lib0-v14/encoding").Encoder, doc: YDoc) => void;
|
|
652
600
|
writeSyncStep2: (encoder: import("lib0-v14/encoding").Encoder, doc: YDoc, encodedStateVector?: Uint8Array) => void;
|
|
653
|
-
step2Update: (payload: Uint8Array) => Uint8Array;
|
|
654
|
-
readSyncStep1: (decoder: import("lib0-v14/decoding").Decoder, encoder: import("lib0-v14/encoding").Encoder, doc: YDoc) => void;
|
|
655
|
-
readSyncStep2: (decoder: import("lib0-v14/decoding").Decoder, doc: YDoc, transactionOrigin: unknown, errorHandler?: (error: Error) => unknown) => void;
|
|
656
601
|
writeUpdate: (encoder: import("lib0-v14/encoding").Encoder, update: Uint8Array) => void;
|
|
657
|
-
readUpdate: (decoder: import("lib0-v14/decoding").Decoder, doc: YDoc, transactionOrigin: unknown, errorHandler?: (error: Error) => unknown) => void;
|
|
658
|
-
readSyncMessage: (decoder: import("lib0-v14/decoding").Decoder, encoder: import("lib0-v14/encoding").Encoder, doc: YDoc, transactionOrigin: unknown, errorHandler?: (error: Error) => unknown) => number;
|
|
659
602
|
applyRemote: (doc: YDoc, update: Uint8Array, transactionOrigin: unknown, errorHandler?: (error: Error) => unknown) => {
|
|
660
603
|
applied: boolean;
|
|
661
604
|
problem: import("./edytor-doc.js").SchemaProblem | null;
|
|
@@ -670,13 +613,11 @@ export declare const bindCrdt: (Y: EngineApi) => {
|
|
|
670
613
|
};
|
|
671
614
|
/** The document-admission boundary (`admitUpdate` staged restore + the shared gate vocabulary). */
|
|
672
615
|
admission: {
|
|
673
|
-
admitUpdate: (update: Uint8Array | ReadonlyArray<Uint8Array
|
|
674
|
-
v2: Uint8Array;
|
|
675
|
-
}>, docName?: string, options?: {
|
|
616
|
+
admitUpdate: (update: Uint8Array | ReadonlyArray<Uint8Array>, docName?: string, options?: {
|
|
676
617
|
prepare?: (doc: YDoc) => void;
|
|
677
618
|
}) => YDoc;
|
|
678
619
|
};
|
|
679
|
-
/** Bind the attribution service to this engine — actor dictionary +
|
|
620
|
+
/** Bind the attribution service to this engine — actor dictionary + block attribution (documents attach it automatically). */
|
|
680
621
|
attribution: {
|
|
681
622
|
attach: (doc: import("./engine-api.js").EngineDoc, opts: {
|
|
682
623
|
actor: import("./index.js").AttributionActor;
|
|
@@ -684,5 +625,5 @@ export declare const bindCrdt: (Y: EngineApi) => {
|
|
|
684
625
|
};
|
|
685
626
|
};
|
|
686
627
|
export type Crdt = ReturnType<typeof bindCrdt>;
|
|
687
|
-
export type { EngineApi, EngineDoc, EngineNode,
|
|
628
|
+
export type { EngineApi, EngineDoc, EngineNode, EngineTransaction, EngineItemRef, YNode, YItem } from './engine-api.js';
|
|
688
629
|
export { EdytorDocDisposedError, DEFAULT_HISTORY_LIMIT } from './edytor-doc.js';
|
package/dist/crdt/index.js
CHANGED
|
@@ -24,9 +24,9 @@
|
|
|
24
24
|
* (`BlockSpec`, `Destination`, `ProjectedDoc`, `DocChange`, `JSONDoc`,
|
|
25
25
|
* …), the provider/sync contract (`EdytorSync`), `Awareness`, the
|
|
26
26
|
* admission errors a load throws, the attribution read surface
|
|
27
|
-
* (`DocumentAttribution`)
|
|
27
|
+
* (`DocumentAttribution`).
|
|
28
28
|
* - **Composition** — `bindCrdt(Y)` for consumers that inject the engine
|
|
29
|
-
* themselves (node/SSR-side provider stacks,
|
|
29
|
+
* themselves (node/SSR-side provider stacks,
|
|
30
30
|
* alternate engine instances) plus the engine typings that contract
|
|
31
31
|
* needs.
|
|
32
32
|
*
|
|
@@ -65,24 +65,23 @@ export { defaultSemantics, richTextSemantics, codeSemantics, imageSemantics, med
|
|
|
65
65
|
export { tableBlock } from './tables.js';
|
|
66
66
|
// Paired marks — a mark's edge as document semantics, the record a key names.
|
|
67
67
|
export { markName } from './text/marks.js';
|
|
68
|
-
/** Canonical JSON → the `BlockSpec` `facade.
|
|
68
|
+
/** Canonical JSON → the `BlockSpec` `facade.insertBlocks` takes (ids kept or minted). */
|
|
69
69
|
export { toBlockSpec } from '../utils/json.js';
|
|
70
70
|
// ── 2 · The document's vocabulary ──────────────────────────────────────
|
|
71
71
|
//
|
|
72
72
|
// Types a consumer meets while driving the document's operations
|
|
73
|
-
// (`DocumentOperations`: `document.
|
|
73
|
+
// (`DocumentOperations`: `document.insertBlocks(…)`, a room's `transact`) — block specs, destinations, projected
|
|
74
74
|
// trees, change notifications — plus the engine-object types the
|
|
75
75
|
// document's own members are typed as (`document.doc: YDoc`,
|
|
76
76
|
// `document.history: YUndoManager`).
|
|
77
77
|
export {} from './edytor-doc.js';
|
|
78
|
-
export { DOCUMENT_OPERATIONS } from './operations.js';
|
|
78
|
+
export { DOCUMENT_OPERATIONS, DOCUMENT_WRITES } from './operations.js';
|
|
79
79
|
export {} from './data.js';
|
|
80
80
|
export {} from './rangeDelete.js';
|
|
81
81
|
export {} from './flow.js';
|
|
82
82
|
export {} from './placement/model.js';
|
|
83
|
-
|
|
84
|
-
// `
|
|
85
|
-
// serialization speaks (`text/deltas.ts`). Part of the public
|
|
83
|
+
// `ContentRun` — the maintained-runs item the view layer's text values
|
|
84
|
+
// read (`segmentJSON`, `session/handles.ts`). Part of the public
|
|
86
85
|
// model→render vocabulary.
|
|
87
86
|
export {} from './text/runs.js';
|
|
88
87
|
// ── 3 · Sync, providers, awareness ─────────────────────────────────────
|
|
@@ -106,65 +105,40 @@ export { SchemaMismatchError, UndecodableUpdateError, UnsupportedDocError } from
|
|
|
106
105
|
// ── 5 · Attribution (read surface) ─────────────────────────────────────
|
|
107
106
|
//
|
|
108
107
|
// `document.attribution` hands back a `DocumentAttribution` — compact
|
|
109
|
-
// per-block records
|
|
110
|
-
//
|
|
111
|
-
//
|
|
108
|
+
// per-block records and the replicated actor dictionary. The types are
|
|
109
|
+
// the public read vocabulary; ordinary editing writes no per-edit
|
|
110
|
+
// attribution.
|
|
112
111
|
export {} from './attribution/index.js';
|
|
113
112
|
// Compact per-BLOCK attribution read vocabulary (`b/<blockId>`
|
|
114
113
|
// records + the block-node `l` attr — see `attribution/block.ts`).
|
|
115
|
-
// `document.attribution.block(id)` / `
|
|
116
|
-
//
|
|
114
|
+
// `document.attribution.block(id)` / `document.blockAttribution(id)`
|
|
115
|
+
// are the read entry points.
|
|
117
116
|
export {} from './attribution/index.js';
|
|
118
|
-
// ── 6 · Migration ──────────────────────────────────────────────────────
|
|
119
|
-
//
|
|
120
|
-
// v13 → v14 one-way import: `isLegacyDoc` detects a v13-era layout, the
|
|
121
|
-
// `Migration` surface (via `bindCrdt(Y).migration` or `bindMigration`)
|
|
122
|
-
// rebuilds an admitted document whose `MigrateResult.update` restores
|
|
123
|
-
// through `loadDocument`. Runbook: `docs/crdt-v14-migration.md`.
|
|
124
|
-
export { isLegacyDoc } from './migration/legacy-schema.js';
|
|
125
|
-
export {} from './migration/migrate.js';
|
|
126
|
-
// ── 7 · Composition — injecting the engine ─────────────────────────────
|
|
127
|
-
//
|
|
128
|
-
// `bindCrdt(Y)` is the supported one-shot entry for consumers that take
|
|
129
|
-
// the engine themselves (the documented node/SSR path):
|
|
130
|
-
//
|
|
131
|
-
// ```ts
|
|
132
|
-
// import * as Y from 'edytor/crdt'; // vendored v14 engine
|
|
133
|
-
// import { bindCrdt } from 'edytor/crdt/edytor';
|
|
134
|
-
// const crdt = bindCrdt(Y);
|
|
135
|
-
// const doc = crdt.createDoc();
|
|
136
|
-
// const provider = new crdt.providers.IndexeddbPersistence('my-doc', doc);
|
|
137
|
-
// ```
|
|
138
|
-
//
|
|
139
|
-
// Everything `bindCrdt` composes is also available pre-bound through the
|
|
140
|
-
// document factories above — reach for `bindCrdt` when the caller needs
|
|
141
|
-
// the raw provider/migration/sync stacks on a doc it owns, not for
|
|
142
|
-
// ordinary document work. `EngineApi`/`EngineDoc`/`YDoc` and friends are
|
|
143
|
-
// the typings that injection contract speaks.
|
|
144
|
-
import { bindGenerations } from './migration/generation.js';
|
|
145
117
|
import { Awareness as _Awareness } from './protocols/awareness.js';
|
|
146
118
|
import { bindAdmission } from './admission.js';
|
|
147
119
|
import { bindAttribution } from './attribution/index.js';
|
|
148
120
|
import { bindEdytorDoc } from './edytor-doc.js';
|
|
149
|
-
import { bindProviders } from './providers/index.js';
|
|
150
|
-
import { bindMigration } from './migration/migrate.js';
|
|
121
|
+
import { bindProviders, documentSnapshot, lastUpdated, prefetchWith } from './providers/index.js';
|
|
151
122
|
import { bindSync } from './protocols/sync.js';
|
|
152
123
|
export const bindCrdt = (Y) => {
|
|
153
124
|
const doc = bindEdytorDoc(Y);
|
|
125
|
+
const providers = bindProviders(Y);
|
|
154
126
|
return {
|
|
155
127
|
/** Create a v14 edytor document — `new Y.Doc(opts)` on the bound engine, with the document's rules (`doc.newDoc`). */
|
|
156
128
|
createDoc: (opts) => doc.newDoc(opts),
|
|
157
129
|
/** Engine-free — same class for every engine instance. */
|
|
158
130
|
Awareness: _Awareness,
|
|
159
131
|
doc,
|
|
160
|
-
providers:
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
132
|
+
providers: {
|
|
133
|
+
...providers,
|
|
134
|
+
prefetch: (options) => prefetchWith(Y, providers, options),
|
|
135
|
+
lastUpdated,
|
|
136
|
+
documentSnapshot
|
|
137
|
+
},
|
|
164
138
|
sync: bindSync(Y),
|
|
165
139
|
/** The document-admission boundary (`admitUpdate` staged restore + the shared gate vocabulary). */
|
|
166
140
|
admission: bindAdmission(Y),
|
|
167
|
-
/** Bind the attribution service to this engine — actor dictionary +
|
|
141
|
+
/** Bind the attribution service to this engine — actor dictionary + block attribution (documents attach it automatically). */
|
|
168
142
|
attribution: bindAttribution(Y)
|
|
169
143
|
};
|
|
170
144
|
};
|
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The document's public operations and reads (`DocumentOperations`)
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
2
|
+
* The document's public operations and reads (`DocumentOperations`). The
|
|
3
|
+
* writes (`DocumentWrites`) are the one operation set, entered two ways
|
|
4
|
+
* under the same names and arguments: on a bare `EdytorDocument`
|
|
5
|
+
* (`document.insertBlocks(…)`, a room's `transact` callback and `validate`)
|
|
6
|
+
* they are raw — no plugin hook, no view's undo, no readonly check; through
|
|
7
|
+
* a view (`edytor.insertBlocks(…)`) they are dispatched. The facade a
|
|
8
|
+
* document binds has more (the index, the engine hooks): those stay
|
|
9
|
+
* internal. `DOCUMENT_OPERATIONS` lists the names, `DOCUMENT_WRITES` the
|
|
10
|
+
* writes, checked against the interfaces here and against the facade in
|
|
11
|
+
* `document.ts`. Worker-safe: types and two lists.
|
|
10
12
|
*/
|
|
11
13
|
import type { BlockAttribution } from './attribution/block.js';
|
|
12
14
|
import type { AnchorAffinity, DataTarget, DocAnchor, DocChange, JsonObj, OpResult, OrderPolicy, Prepared } from './doc/types.js';
|
|
13
15
|
import type { DataPatch } from './data.js';
|
|
16
|
+
import type { NewInline } from './doc/content.js';
|
|
14
17
|
import type { Flow, FlowTarget, FlowView } from './flow.js';
|
|
15
|
-
import type {
|
|
16
|
-
import type { BlockId, BlockSpec, ContentItem, Destination, InlineSpec, ProjectedDoc, SplitTail } from './placement/model.js';
|
|
18
|
+
import type { BlockId, BlockSpec, ContentItem, Destination, ProjectedDoc, SplitTail } from './placement/model.js';
|
|
17
19
|
import type { DocPosition, RangeView } from './rangeDelete.js';
|
|
18
20
|
import type { ContentRun } from './text/runs.js';
|
|
19
|
-
import type { JSONBlock, JSONDoc } from '../utils/json.js';
|
|
21
|
+
import type { JSONBlock, JSONDoc, JSONInlineBlock, JSONText } from '../utils/json.js';
|
|
20
22
|
/** The document's writes: each one transaction, answering what it did (`OpResult`). */
|
|
21
23
|
export interface DocumentWrites {
|
|
22
|
-
insertBlock(dest: Destination, spec: JSONBlock | BlockSpec): OpResult;
|
|
23
24
|
insertBlocks(dest: Destination, specs: readonly (JSONBlock | BlockSpec)[]): OpResult;
|
|
24
|
-
moveBlock(id: BlockId, dest: Destination): OpResult;
|
|
25
25
|
moveBlocks(ids: readonly BlockId[], dest: Destination): OpResult;
|
|
26
26
|
nestBlock(id: BlockId, parent: BlockId): OpResult;
|
|
27
27
|
unNestBlock(id: BlockId): OpResult;
|
|
@@ -43,29 +43,20 @@ export interface DocumentWrites {
|
|
|
43
43
|
setBlock(id: BlockId, value: {
|
|
44
44
|
type?: string;
|
|
45
45
|
data?: Record<string, unknown>;
|
|
46
|
-
content?: ContentItem[];
|
|
47
|
-
children?: BlockSpec[];
|
|
46
|
+
content?: (ContentItem | JSONText | JSONInlineBlock)[];
|
|
47
|
+
children?: (BlockSpec | JSONBlock)[];
|
|
48
48
|
}): OpResult;
|
|
49
49
|
setBlockType(id: BlockId, type: string): OpResult;
|
|
50
50
|
patchData(target: DataTarget, patches: readonly DataPatch[]): OpResult;
|
|
51
|
-
|
|
52
|
-
duplicateBlock(id: BlockId, freshId
|
|
53
|
-
insertTableRow(table: BlockId, index: number): OpResult;
|
|
54
|
-
deleteTableRows(rows: readonly BlockId[]): OpResult;
|
|
55
|
-
insertTableColumn(table: BlockId, index: number, width?: number): OpResult;
|
|
56
|
-
deleteTableColumn(table: BlockId, column: string | number): OpResult;
|
|
57
|
-
moveTableColumn(table: BlockId, column: string | number, to: number): OpResult;
|
|
58
|
-
moveTableRows(rows: readonly BlockId[], to: number): OpResult;
|
|
59
|
-
fillTableCell(row: BlockId, column: string | number): OpResult;
|
|
51
|
+
/** `freshId` names each copy (fresh ids by default). */
|
|
52
|
+
duplicateBlock(id: BlockId, freshId?: (oldId: string, kind: 'block' | 'inline') => string): OpResult;
|
|
60
53
|
insertText(id: BlockId, offset: number, text: string, marks?: Record<string, unknown>): OpResult;
|
|
61
54
|
deleteText(id: BlockId, offset: number, length: number): OpResult;
|
|
62
55
|
formatRange(id: BlockId, offset: number, length: number, marks: Record<string, unknown>): OpResult;
|
|
63
|
-
setMark(id: BlockId, offset: number, length: number, name: string, value: unknown): OpResult;
|
|
64
|
-
unsetMark(id: BlockId, offset: number, length: number, name: string): OpResult;
|
|
65
56
|
clearMarks(id: BlockId, offset: number, length: number): OpResult;
|
|
66
|
-
|
|
57
|
+
/** An atom without an id gets a fresh one. */
|
|
58
|
+
insertInline(id: BlockId, offset: number, atom: NewInline): OpResult;
|
|
67
59
|
removeInline(id: BlockId, inlineId: string): OpResult;
|
|
68
|
-
setInlineData(id: BlockId, inlineId: string, data: Record<string, unknown>): OpResult;
|
|
69
60
|
deleteRange(from: DocPosition, to: DocPosition, view?: RangeView): OpResult;
|
|
70
61
|
replaceRange(from: DocPosition, to: DocPosition, view?: RangeView): OpResult;
|
|
71
62
|
insertFlow(target: FlowTarget, flow: Flow, view?: FlowView): OpResult;
|
|
@@ -136,8 +127,8 @@ export interface DocumentReads {
|
|
|
136
127
|
/**
|
|
137
128
|
* The document's public operations: the writes, each also prepared
|
|
138
129
|
* (`prepare.<op>(…)`, pure, then `apply(plan)`; `compose` joins plans),
|
|
139
|
-
* the reads,
|
|
140
|
-
*
|
|
130
|
+
* the reads, `transact`, `onChange` and `version`. See the document API
|
|
131
|
+
* reference.
|
|
141
132
|
*/
|
|
142
133
|
export interface DocumentOperations extends DocumentWrites, DocumentReads {
|
|
143
134
|
/** Every write, prepared: a plan of named steps and its effect, or `refused`. Writes nothing. */
|
|
@@ -150,12 +141,12 @@ export interface DocumentOperations extends DocumentWrites, DocumentReads {
|
|
|
150
141
|
compose(...parts: Prepared[]): Prepared;
|
|
151
142
|
/** Group writes in one transaction and one change event (no rollback on a throw). */
|
|
152
143
|
transact<R>(fn: () => R, origin?: unknown): R;
|
|
153
|
-
/** A handle over block `id`: the same operations bound to it (cached; refused when absent). */
|
|
154
|
-
block(id: BlockId): DocBlock;
|
|
155
144
|
/** Hear each transaction's change; answers the unsubscribe. */
|
|
156
145
|
onChange(listener: (change: DocChange) => void): () => void;
|
|
157
146
|
/** Changes on every write that changed the tree. */
|
|
158
147
|
readonly version: number;
|
|
159
148
|
}
|
|
149
|
+
/** Every write of `DocumentWrites`: what a view dispatches under the same names (`edytor.insertBlocks(…)`). */
|
|
150
|
+
export declare const DOCUMENT_WRITES: readonly ["insertBlocks", "moveBlocks", "nestBlock", "unNestBlock", "unNestBlocks", "liftOut", "wrapInLayout", "placeBeside", "splitBlock", "mergeBlocks", "mergeBackward", "mergeForward", "deleteBlock", "deleteBlocks", "setBlock", "setBlockType", "patchData", "duplicateBlock", "insertText", "deleteText", "formatRange", "clearMarks", "insertInline", "removeInline", "deleteRange", "replaceRange", "insertFlow"];
|
|
160
151
|
/** Every name of `DocumentOperations`, for the document's own members (`EdytorDocument`). */
|
|
161
|
-
export declare const DOCUMENT_OPERATIONS: readonly ["
|
|
152
|
+
export declare const DOCUMENT_OPERATIONS: readonly ["insertBlocks", "moveBlocks", "nestBlock", "unNestBlock", "unNestBlocks", "liftOut", "wrapInLayout", "placeBeside", "splitBlock", "mergeBlocks", "mergeBackward", "mergeForward", "deleteBlock", "deleteBlocks", "setBlock", "setBlockType", "patchData", "duplicateBlock", "insertText", "deleteText", "formatRange", "clearMarks", "insertInline", "removeInline", "deleteRange", "replaceRange", "insertFlow", "toJSON", "docData", "dataItemIds", "project", "blockJSON", "childrenIds", "parentOf", "ancestorsOf", "positionOf", "pathOf", "blockTypeOf", "blockDataOf", "blockText", "contentItems", "displayLength", "runs", "hasBlock", "isVisibleBlock", "listBlockIds", "blockAttribution", "isVoid", "isIsland", "isLines", "islandOf", "insideIsland", "isLayout", "isLayoutItem", "besideAt", "isTable", "isTableRow", "isTableCell", "tableOf", "tableColumns", "tableGrid", "order", "compare", "next", "previous", "canPlace", "canMerge", "fits", "nestParent", "landingOf", "anchorAt", "resolveAnchor", "prepare", "apply", "compose", "transact", "onChange", "version"];
|
package/dist/crdt/operations.js
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
/** Every
|
|
2
|
-
export const
|
|
3
|
-
'insertBlock',
|
|
1
|
+
/** Every write of `DocumentWrites`: what a view dispatches under the same names (`edytor.insertBlocks(…)`). */
|
|
2
|
+
export const DOCUMENT_WRITES = [
|
|
4
3
|
'insertBlocks',
|
|
5
|
-
'moveBlock',
|
|
6
4
|
'moveBlocks',
|
|
7
5
|
'nestBlock',
|
|
8
6
|
'unNestBlock',
|
|
@@ -19,27 +17,20 @@ export const DOCUMENT_OPERATIONS = [
|
|
|
19
17
|
'setBlock',
|
|
20
18
|
'setBlockType',
|
|
21
19
|
'patchData',
|
|
22
|
-
'setBlockData',
|
|
23
20
|
'duplicateBlock',
|
|
24
|
-
'insertTableRow',
|
|
25
|
-
'deleteTableRows',
|
|
26
|
-
'insertTableColumn',
|
|
27
|
-
'deleteTableColumn',
|
|
28
|
-
'moveTableColumn',
|
|
29
|
-
'moveTableRows',
|
|
30
|
-
'fillTableCell',
|
|
31
21
|
'insertText',
|
|
32
22
|
'deleteText',
|
|
33
23
|
'formatRange',
|
|
34
|
-
'setMark',
|
|
35
|
-
'unsetMark',
|
|
36
24
|
'clearMarks',
|
|
37
25
|
'insertInline',
|
|
38
26
|
'removeInline',
|
|
39
|
-
'setInlineData',
|
|
40
27
|
'deleteRange',
|
|
41
28
|
'replaceRange',
|
|
42
|
-
'insertFlow'
|
|
29
|
+
'insertFlow'
|
|
30
|
+
];
|
|
31
|
+
/** Every name of `DocumentOperations`, for the document's own members (`EdytorDocument`). */
|
|
32
|
+
export const DOCUMENT_OPERATIONS = [
|
|
33
|
+
...DOCUMENT_WRITES,
|
|
43
34
|
'toJSON',
|
|
44
35
|
'docData',
|
|
45
36
|
'dataItemIds',
|
|
@@ -89,7 +80,6 @@ export const DOCUMENT_OPERATIONS = [
|
|
|
89
80
|
'apply',
|
|
90
81
|
'compose',
|
|
91
82
|
'transact',
|
|
92
|
-
'block',
|
|
93
83
|
'onChange',
|
|
94
84
|
'version'
|
|
95
85
|
];
|
|
@@ -33,8 +33,6 @@ export declare const textRanker: (blocks: ReadonlyMap<BlockId, BlockRec>, placem
|
|
|
33
33
|
/** Drop what was decided for `home`'s text (every one, without it). */
|
|
34
34
|
forget: (home?: BlockId) => void;
|
|
35
35
|
};
|
|
36
|
-
/** The inverse of `ownerOf` over `blocks`: each live owner → the blocks it displays. */
|
|
37
|
-
export declare const displayIndex: (blocks: ReadonlyMap<BlockId, unknown>, ownerOf: (b: BlockId) => Owner) => Map<BlockId, BlockId[]>;
|
|
38
36
|
/**
|
|
39
37
|
* THE liveness answer: `id` carries no live delete mark, owns
|
|
40
38
|
* itself (`own.hidden` covers both: a delete-marked or unknown block owns
|
|
@@ -139,21 +139,6 @@ export const textRanker = (blocks, placements, homeOf, inText) => {
|
|
|
139
139
|
}
|
|
140
140
|
};
|
|
141
141
|
};
|
|
142
|
-
/** The inverse of `ownerOf` over `blocks`: each live owner → the blocks it displays. */
|
|
143
|
-
export const displayIndex = (blocks, ownerOf) => {
|
|
144
|
-
const by = new Map();
|
|
145
|
-
for (const b of blocks.keys()) {
|
|
146
|
-
const owner = ownerOf(b);
|
|
147
|
-
if (typeof owner !== 'string')
|
|
148
|
-
continue;
|
|
149
|
-
const list = by.get(owner);
|
|
150
|
-
if (list === undefined)
|
|
151
|
-
by.set(owner, [b]);
|
|
152
|
-
else
|
|
153
|
-
list.push(b);
|
|
154
|
-
}
|
|
155
|
-
return by;
|
|
156
|
-
};
|
|
157
142
|
/**
|
|
158
143
|
* THE liveness answer: `id` carries no live delete mark, owns
|
|
159
144
|
* itself (`own.hidden` covers both: a delete-marked or unknown block owns
|