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
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Auto-scroll for one
|
|
2
|
+
* Auto-scroll for one drag (a block's, a table row's or column's; Atlassian's
|
|
3
|
+
* auto-scroll package): the window
|
|
3
4
|
* and every scrolling element from the editor up (the editor included) scroll
|
|
4
5
|
* as the pointer nears their edges, faster the closer and the longer it stays,
|
|
5
6
|
* innermost first. `ours` keeps it to this editor's drags. Registered at the
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { autoScroll, autoScrollWindow } from './pragmatic.js';
|
|
2
2
|
/**
|
|
3
|
-
* Auto-scroll for one
|
|
3
|
+
* Auto-scroll for one drag (a block's, a table row's or column's; Atlassian's
|
|
4
|
+
* auto-scroll package): the window
|
|
4
5
|
* and every scrolling element from the editor up (the editor included) scroll
|
|
5
6
|
* as the pointer nears their edges, faster the closer and the longer it stays,
|
|
6
7
|
* innermost first. `ours` keeps it to this editor's drags. Registered at the
|
|
@@ -11,7 +12,6 @@ export const autoScrollFor = (root, ours) => {
|
|
|
11
12
|
// so it is created only where that exists.
|
|
12
13
|
if (typeof root.ownerDocument.elementsFromPoint !== 'function')
|
|
13
14
|
return () => { };
|
|
14
|
-
const { autoScroll, autoScrollWindow } = autoScrollApi();
|
|
15
15
|
const canScroll = ({ source }) => ours(source.data);
|
|
16
16
|
const releases = [autoScrollWindow({ canScroll })];
|
|
17
17
|
const { body, documentElement, defaultView } = root.ownerDocument;
|
package/dist/dnd/pragmatic.d.ts
CHANGED
|
@@ -1,22 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
export declare const draggable: typeof ElementAdapter.draggable, dropTargetForElements: (args: import("@atlaskit/pragmatic-drag-and-drop/dist/types/internal-types").DropTargetArgs<import("@atlaskit/pragmatic-drag-and-drop/dist/types/internal-types").ElementDragType>) => import("@atlaskit/pragmatic-drag-and-drop/dist/types/internal-types").CleanupFn;
|
|
6
|
-
export declare const setCustomNativeDragPreview: typeof CustomPreview.setCustomNativeDragPreview;
|
|
7
|
-
/** The list-item hitbox (reorder-before / reorder-after / combine, each available, not-available or blocked). */
|
|
8
|
-
export declare const attachInstruction: typeof ListItem.attachInstruction, extractInstruction: typeof ListItem.extractInstruction;
|
|
9
|
-
export type { Availability, Instruction } from '@atlaskit/pragmatic-drag-and-drop-hitbox/list-item';
|
|
10
|
-
type AutoScrollApi = {
|
|
11
|
-
autoScroll: typeof AutoScroll.autoScrollForElements;
|
|
12
|
-
autoScrollWindow: typeof AutoScroll.autoScrollWindowForElements;
|
|
13
|
-
};
|
|
14
|
-
/**
|
|
15
|
-
* Atlassian's auto-scroll for element drags (registered scroll containers, and
|
|
16
|
-
* the window), bound to this module's adapter. The package's own element entry
|
|
17
|
-
* binds it to the core required by its bare path, which a browser bundle
|
|
18
|
-
* resolves to the core's ES build: a second adapter whose monitor never sees
|
|
19
|
-
* the drags this adapter starts, so nothing would scroll. Created on first use:
|
|
20
|
-
* creating it registers a monitor whose frame loop runs on every element drag.
|
|
21
|
-
*/
|
|
22
|
-
export declare const autoScrollApi: () => AutoScrollApi;
|
|
1
|
+
export { draggable, dropTargetForElements } from './vendor/pragmatic/pragmatic-drag-and-drop/entry-point/element/adapter.js';
|
|
2
|
+
export type { ElementDropTargetEventPayloadMap } from './vendor/pragmatic/pragmatic-drag-and-drop/entry-point/element/adapter.js';
|
|
3
|
+
export { setCustomNativeDragPreview } from './vendor/pragmatic/pragmatic-drag-and-drop/entry-point/element/set-custom-native-drag-preview.js';
|
|
4
|
+
export { autoScrollForElements as autoScroll, autoScrollWindowForElements as autoScrollWindow } from './vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/entry-point/element.js';
|
package/dist/dnd/pragmatic.js
CHANGED
|
@@ -1,26 +1,7 @@
|
|
|
1
|
-
// Atlassian's
|
|
2
|
-
//
|
|
3
|
-
//
|
|
4
|
-
//
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
// @ts-expect-error The published CommonJS entry has no adjacent declaration.
|
|
9
|
-
import * as listItemRuntime from '@atlaskit/pragmatic-drag-and-drop-hitbox/dist/cjs/list-item.js';
|
|
10
|
-
// @ts-expect-error The published CommonJS module has no adjacent declaration.
|
|
11
|
-
import * as autoScrollRuntime from '@atlaskit/pragmatic-drag-and-drop-auto-scroll/dist/cjs/over-element/make-api.js';
|
|
12
|
-
const adapter = adapterRuntime;
|
|
13
|
-
export const { draggable, dropTargetForElements } = adapter;
|
|
14
|
-
export const { setCustomNativeDragPreview } = previewRuntime;
|
|
15
|
-
/** The list-item hitbox (reorder-before / reorder-after / combine, each available, not-available or blocked). */
|
|
16
|
-
export const { attachInstruction, extractInstruction } = listItemRuntime;
|
|
17
|
-
let autoScrollApiOf;
|
|
18
|
-
/**
|
|
19
|
-
* Atlassian's auto-scroll for element drags (registered scroll containers, and
|
|
20
|
-
* the window), bound to this module's adapter. The package's own element entry
|
|
21
|
-
* binds it to the core required by its bare path, which a browser bundle
|
|
22
|
-
* resolves to the core's ES build: a second adapter whose monitor never sees
|
|
23
|
-
* the drags this adapter starts, so nothing would scroll. Created on first use:
|
|
24
|
-
* creating it registers a monitor whose frame loop runs on every element drag.
|
|
25
|
-
*/
|
|
26
|
-
export const autoScrollApi = () => (autoScrollApiOf ??= autoScrollRuntime.makeApi({ monitor: adapter.monitorForElements }));
|
|
1
|
+
// Atlassian's Pragmatic drag and drop, forked in `vendor/pragmatic` (its own
|
|
2
|
+
// ES2019 build, `UPSTREAM.md`): the element adapter, the custom native drag
|
|
3
|
+
// preview and the element auto-scroll, all on one core,
|
|
4
|
+
// so the auto-scroll's monitor sees the drags this adapter starts.
|
|
5
|
+
export { draggable, dropTargetForElements } from './vendor/pragmatic/pragmatic-drag-and-drop/entry-point/element/adapter.js';
|
|
6
|
+
export { setCustomNativeDragPreview } from './vendor/pragmatic/pragmatic-drag-and-drop/entry-point/element/set-custom-native-drag-preview.js';
|
|
7
|
+
export { autoScrollForElements as autoScroll, autoScrollWindowForElements as autoScrollWindow } from './vendor/pragmatic/pragmatic-drag-and-drop-auto-scroll/entry-point/element.js';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { Edytor } from '../edytor.svelte.js';
|
|
2
|
+
/**
|
|
3
|
+
* A resize drag from its press (the image's handles, a table column's and
|
|
4
|
+
* a layout gap's bands): the press's default and propagation stop; a
|
|
5
|
+
* `pointerdown` tracks its pointer (captured, on the document), a lone
|
|
6
|
+
* `mousedown` (`isLonePress`: WebKit's first press after a native drag)
|
|
7
|
+
* tracks the mouse on the window. `move` takes each move's client x, then
|
|
8
|
+
* the overlay measures again; `end` takes the release's x, or `null` when
|
|
9
|
+
* the drag ends without one (Escape, a cancel, the answered cancel, the view
|
|
10
|
+
* no longer permitting a write), and nothing is to be written. After a
|
|
11
|
+
* release the editor takes the keys (Notion: Mod+Z right after). Answers the
|
|
12
|
+
* cancel (for the view turning readonly mid-drag).
|
|
13
|
+
*/
|
|
14
|
+
export declare const trackDrag: (edytor: Edytor, press: PointerEvent | MouseEvent, move: (x: number) => void, end: (x: number | null) => void) => (() => void);
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { takeKeys } from '../events/onFocus.js';
|
|
2
|
+
/**
|
|
3
|
+
* A resize drag from its press (the image's handles, a table column's and
|
|
4
|
+
* a layout gap's bands): the press's default and propagation stop; a
|
|
5
|
+
* `pointerdown` tracks its pointer (captured, on the document), a lone
|
|
6
|
+
* `mousedown` (`isLonePress`: WebKit's first press after a native drag)
|
|
7
|
+
* tracks the mouse on the window. `move` takes each move's client x, then
|
|
8
|
+
* the overlay measures again; `end` takes the release's x, or `null` when
|
|
9
|
+
* the drag ends without one (Escape, a cancel, the answered cancel, the view
|
|
10
|
+
* no longer permitting a write), and nothing is to be written. After a
|
|
11
|
+
* release the editor takes the keys (Notion: Mod+Z right after). Answers the
|
|
12
|
+
* cancel (for the view turning readonly mid-drag).
|
|
13
|
+
*/
|
|
14
|
+
export const trackDrag = (edytor, press, move, end) => {
|
|
15
|
+
press.preventDefault();
|
|
16
|
+
press.stopPropagation();
|
|
17
|
+
const target = press.currentTarget;
|
|
18
|
+
const pointer = press.type === 'pointerdown';
|
|
19
|
+
if (pointer)
|
|
20
|
+
target?.setPointerCapture?.(press.pointerId);
|
|
21
|
+
const document = target?.ownerDocument ?? edytor.node?.ownerDocument;
|
|
22
|
+
const tracked = pointer ? document : document?.defaultView;
|
|
23
|
+
const [moves, ups] = pointer ? ['pointermove', 'pointerup'] : ['mousemove', 'mouseup'];
|
|
24
|
+
const moved = (event) => {
|
|
25
|
+
if (!edytor.dispatcher.permits())
|
|
26
|
+
return finish(event);
|
|
27
|
+
move(event.clientX);
|
|
28
|
+
edytor.overlay.invalidate();
|
|
29
|
+
};
|
|
30
|
+
const finish = (event) => {
|
|
31
|
+
tracked?.removeEventListener(moves, moved);
|
|
32
|
+
tracked?.removeEventListener(ups, finish);
|
|
33
|
+
tracked?.removeEventListener('pointercancel', finish);
|
|
34
|
+
document?.removeEventListener('keydown', escape, true);
|
|
35
|
+
const released = event.type === ups;
|
|
36
|
+
end(released ? event.clientX : null);
|
|
37
|
+
edytor.overlay.invalidate();
|
|
38
|
+
if (released)
|
|
39
|
+
takeKeys(edytor);
|
|
40
|
+
};
|
|
41
|
+
const escape = (event) => {
|
|
42
|
+
if (event.key !== 'Escape')
|
|
43
|
+
return;
|
|
44
|
+
event.preventDefault();
|
|
45
|
+
event.stopPropagation();
|
|
46
|
+
finish(event);
|
|
47
|
+
};
|
|
48
|
+
tracked?.addEventListener(moves, moved);
|
|
49
|
+
tracked?.addEventListener(ups, finish);
|
|
50
|
+
if (pointer)
|
|
51
|
+
tracked?.addEventListener('pointercancel', finish);
|
|
52
|
+
document?.addEventListener('keydown', escape, true);
|
|
53
|
+
edytor.overlay.invalidate();
|
|
54
|
+
return () => finish(new Event('cancel'));
|
|
55
|
+
};
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
# Vendored Pragmatic drag and drop — provenance & changes
|
|
2
|
+
|
|
3
|
+
Atlassian's Pragmatic drag and drop, forked inside edytor: only the modules
|
|
4
|
+
edytor reaches, as the packages publish them, so the block handles' and the
|
|
5
|
+
table grips' drags run the library's own logic without depending on its
|
|
6
|
+
packages. `src/lib/dnd/pragmatic.ts` is the one importer; nothing else in
|
|
7
|
+
edytor imports from this directory. Do not edit these files by hand: re-sync
|
|
8
|
+
(below) and record every change here.
|
|
9
|
+
|
|
10
|
+
## Pinned source
|
|
11
|
+
|
|
12
|
+
| Package | Version | npm integrity (`pnpm-lock.yaml` before the fork) | License |
|
|
13
|
+
| ----------------------------------------------- | ------- | --------------------------------------------------------------------------------------------------------- | --------------------------------- |
|
|
14
|
+
| `@atlaskit/pragmatic-drag-and-drop` | 4.0.0 | `sha512-pyDo2B5NiaExoKGmgeXKGNUL4aR4UzzSZm8QWWjYTEyBLVqSqKyKUwtVxMw2YEkakagOGFONUdHM32LAH2nPug==` | Apache-2.0, `…/LICENSE.md` |
|
|
15
|
+
| `@atlaskit/pragmatic-drag-and-drop-auto-scroll` | 3.2.1 | `sha512-2fhWAG48EjPoKhoHLG6RcT3/VaCzYEbRb6BtA/Vcfx4FrL0P1KrEgBJ6OAwB0X8MOV6UH22YgjFFHjv8fQD9rA==` | Apache-2.0, `…/LICENSE.md` |
|
|
16
|
+
| `bind-event-listener` (core's dependency) | 3.0.0 | `sha512-PJvH288AWQhKs2v9zyfYdPzlPqf5bXbGMmhmUIY9x4dAUGIWgomO771oBQNwJnMQSnUIXhKu6sgzpBRXTlvb8Q==` | MIT © Alexander Reardon, `LICENSE` |
|
|
17
|
+
| `raf-schd` (core's dependency) | 4.0.3 | `sha512-tQkJl2GRWh83ui2DiPTJz9wEiMN20syf+5oKfB03yYP7ioZcJwsIK8FjrtLwH1m7C7e+Tt2yYBlrOpdT+dyeIQ==` | MIT © Alex Reardon, `LICENSE` |
|
|
18
|
+
|
|
19
|
+
The core's third dependency, `@babel/runtime`, is not needed: the fork takes
|
|
20
|
+
each package's `dist/es2019` build, which uses no Babel helper (object spread,
|
|
21
|
+
destructuring and `for…of` are native there), not its `dist/esm` build.
|
|
22
|
+
|
|
23
|
+
## Layout
|
|
24
|
+
|
|
25
|
+
```text
|
|
26
|
+
pragmatic-drag-and-drop/ dist/es2019/<path>.js and dist/types/<path>.d.ts of the core
|
|
27
|
+
pragmatic-drag-and-drop-auto-scroll/ the same, of the auto-scroll package
|
|
28
|
+
bind-event-listener/ index.js, bind.js, bind-all.js: its src/*.ts with the types removed
|
|
29
|
+
raf-schd/ dist/raf-schd.esm.js, verbatim
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
Each package keeps its published directory structure, so a file here diffs
|
|
33
|
+
against `dist/es2019/<same path>` (or `dist/types/<same path>` for a `.d.ts`).
|
|
34
|
+
|
|
35
|
+
## What was kept
|
|
36
|
+
|
|
37
|
+
The module closure of the three entry points `pragmatic.ts` imports, nothing
|
|
38
|
+
else:
|
|
39
|
+
|
|
40
|
+
- core `entry-point/element/adapter` (`draggable`, `dropTargetForElements`,
|
|
41
|
+
`monitorForElements`): the element adapter, the drag lifecycle, drop targets
|
|
42
|
+
and monitors, the honey pot fix, the window-leaving and broken-drag
|
|
43
|
+
detection;
|
|
44
|
+
- core `entry-point/element/set-custom-native-drag-preview`;
|
|
45
|
+
- auto-scroll `entry-point/element` (`autoScrollForElements`,
|
|
46
|
+
`autoScrollWindowForElements`, the over-element API and its scheduler).
|
|
47
|
+
|
|
48
|
+
The `.d.ts` files are the declarations those entry points' types reach (9
|
|
49
|
+
files); a `.js` without one is reached only from other vendored `.js`.
|
|
50
|
+
Everything else the packages publish (the external and text-selection
|
|
51
|
+
adapters, the other utilities, the hitbox package (the block handles split a
|
|
52
|
+
row into its halves themselves), the unsafe-overflow auto-scroll, CommonJS and `dist/esm` builds) is left out.
|
|
53
|
+
|
|
54
|
+
## Local changes (the only ones)
|
|
55
|
+
|
|
56
|
+
1. **Import specifiers.** Every relative specifier gains its file extension
|
|
57
|
+
(`'./once'` → `'./once.js'`, a directory import its `/index.js`), so the
|
|
58
|
+
packaged `dist/` loads in Node as ES modules too. Every bare specifier
|
|
59
|
+
between the packages (`@atlaskit/pragmatic-drag-and-drop/adapter/element-adapter`,
|
|
60
|
+
`…/utils/combine`, `…/utils/once`, `…/get-element-from-point-without-honey-pot`,
|
|
61
|
+
`…/types` in the declarations) and to the two dependencies
|
|
62
|
+
(`bind-event-listener`, `raf-schd`) becomes the relative path of the
|
|
63
|
+
vendored file. This binds the auto-scroll package to the same core as the
|
|
64
|
+
element adapter: its monitor sees the drags the adapter starts (edytor
|
|
65
|
+
used to rebuild the auto-scroll API from its CommonJS `makeApi` for that,
|
|
66
|
+
since a browser bundle resolved the package's own bare import to a second
|
|
67
|
+
core). Specifiers quoted in comments (the `@deprecated` notes) stay as
|
|
68
|
+
written.
|
|
69
|
+
2. **`bind-event-listener` in JavaScript.** The package publishes CommonJS
|
|
70
|
+
only; its three `src/*.ts` modules are vendored as ES modules with their
|
|
71
|
+
type annotations removed (the code, comments and names unchanged). Its
|
|
72
|
+
types are not needed: no vendored declaration names them.
|
|
73
|
+
|
|
74
|
+
No statement of the libraries' own code is changed. A check that a re-sync
|
|
75
|
+
reproduces this: strip every import specifier from each vendored file and from
|
|
76
|
+
its upstream file, and compare: they are equal.
|
|
77
|
+
|
|
78
|
+
## How edytor builds around it
|
|
79
|
+
|
|
80
|
+
- `tsconfig*.json` exclude `src/lib/dnd/vendor/**`: TypeScript reads the
|
|
81
|
+
vendored `.d.ts` beside each entry `.js`, never checks the JavaScript.
|
|
82
|
+
- ESLint, Prettier, `scripts/deps.mjs` (the context graph) and the line counts
|
|
83
|
+
(`scripts/xloc.mjs`, `scripts/bundle-size.mjs`) skip it as vendored code.
|
|
84
|
+
- `package.json#sideEffects` lists the core's directory: upstream declares the
|
|
85
|
+
core with side effects (`count-events-for-safari.js` binds its WebKit
|
|
86
|
+
listeners at import), the auto-scroll without.
|
|
87
|
+
- Nothing runs against the DOM at import (the core guards `typeof window`):
|
|
88
|
+
server rendering imports it as before.
|
|
89
|
+
|
|
90
|
+
## Re-syncing with upstream
|
|
91
|
+
|
|
92
|
+
1. Install the new versions of the two packages (and of `bind-event-listener`,
|
|
93
|
+
`raf-schd`) somewhere outside the package's dependencies.
|
|
94
|
+
2. From each package's `module:es2019` entry (`element/adapter`,
|
|
95
|
+
`element/set-custom-native-drag-preview`, auto-scroll
|
|
96
|
+
`element`), follow every import; copy each reached `dist/es2019` file and,
|
|
97
|
+
from each entry's `types` field, each reached `dist/types` declaration to
|
|
98
|
+
the same path here, rewriting specifiers as in change 1.
|
|
99
|
+
3. Redo change 2 from `bind-event-listener`'s `src/`; copy
|
|
100
|
+
`raf-schd/dist/raf-schd.esm.js`; copy the license files.
|
|
101
|
+
4. Update the table above, run the drag lanes (the block handle, table, columns,
|
|
102
|
+
drop reach, auto-scroll, drag preview and press-after-drag specs in
|
|
103
|
+
Chromium, Firefox and WebKit, the jsdom drag rows) and the packed consumer.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2020 Alexander Reardon
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { bind } from './bind.js';
|
|
2
|
+
|
|
3
|
+
function toOptions(value) {
|
|
4
|
+
if (typeof value === 'undefined') {
|
|
5
|
+
return undefined;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
// Convert capture boolean format to options to object
|
|
9
|
+
if (typeof value === 'boolean') {
|
|
10
|
+
return {
|
|
11
|
+
capture: value,
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
// Already an object, don't need to convert it
|
|
16
|
+
return value;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
function getBinding(original, sharedOptions) {
|
|
20
|
+
// No shared options, just return original binding
|
|
21
|
+
if (sharedOptions == null) {
|
|
22
|
+
return original;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
const binding = {
|
|
26
|
+
...original,
|
|
27
|
+
// Converting both options to object format for merging
|
|
28
|
+
options: {
|
|
29
|
+
...toOptions(sharedOptions),
|
|
30
|
+
// Giving individual binding option precedence
|
|
31
|
+
...toOptions(original.options),
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
return binding;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export function bindAll(target, bindings, sharedOptions) {
|
|
38
|
+
const unbinds = bindings.map((original) => {
|
|
39
|
+
const binding = getBinding(original, sharedOptions);
|
|
40
|
+
return bind(target, binding);
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
return function unbindAll() {
|
|
44
|
+
unbinds.forEach((unbind) => unbind());
|
|
45
|
+
};
|
|
46
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
Copyright 2022 Atlassian Pty Ltd
|
|
2
|
+
|
|
3
|
+
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in
|
|
4
|
+
compliance with the License. You may obtain a copy of the License at
|
|
5
|
+
|
|
6
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
7
|
+
|
|
8
|
+
Unless required by applicable law or agreed to in writing, software distributed under the License is
|
|
9
|
+
distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
10
|
+
implied. See the License for the specific language governing permissions and limitations under the
|
|
11
|
+
License.
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { type AllEvents, type BaseEventPayload, type CleanupFn, type DropTargetArgs, type DropTargetEventBasePayload, type DropTargetEventPayloadMap, type DropTargetGetFeedbackArgs, type ElementDragType, type EventPayloadMap, type Input, type MonitorArgs, type MonitorGetFeedbackArgs, type NativeMediaType } from '../internal-types.js';
|
|
2
|
+
export type { ElementDragPayload } from '../internal-types.js';
|
|
3
|
+
type DraggableGetFeedbackArgs = {
|
|
4
|
+
/**
|
|
5
|
+
* The user input as a drag is trying to start (the `initial` input)
|
|
6
|
+
*/
|
|
7
|
+
input: Input;
|
|
8
|
+
/**
|
|
9
|
+
* The `draggable` element
|
|
10
|
+
*/
|
|
11
|
+
element: HTMLElement;
|
|
12
|
+
/**
|
|
13
|
+
* The `dragHandle` element for the `draggable`
|
|
14
|
+
*/
|
|
15
|
+
dragHandle: Element | null;
|
|
16
|
+
};
|
|
17
|
+
type DraggableArgs = {
|
|
18
|
+
/** The `HTMLElement` that you want to attach draggable behaviour to.
|
|
19
|
+
* `element` is our unique _key_ for a draggable.
|
|
20
|
+
* `element` is a `HTMLElement` as only a `HTMLElement`
|
|
21
|
+
* can have a "draggable" attribute
|
|
22
|
+
*/
|
|
23
|
+
element: HTMLElement;
|
|
24
|
+
/** The part of a draggable `element` that you want to use to control the dragging of the whole `element` */
|
|
25
|
+
dragHandle?: Element;
|
|
26
|
+
/** Conditionally allow a drag to occur */
|
|
27
|
+
canDrag?: (args: DraggableGetFeedbackArgs) => boolean;
|
|
28
|
+
/** Used to attach data to a drag operation. Called once just before the drag starts */
|
|
29
|
+
getInitialData?: (args: DraggableGetFeedbackArgs) => Record<string, unknown>;
|
|
30
|
+
/** Attach data to the native drag data store.
|
|
31
|
+
* This function is useful to attach native data that can be extracted by other web pages
|
|
32
|
+
* or web applications
|
|
33
|
+
* Attaching native data in this way will _not_ cause the native adapter on this page to start
|
|
34
|
+
* Although it can cause a native adapter in other applications to start
|
|
35
|
+
* @example getInitialDataForExternal(() => ({'text/plain': item.description}))
|
|
36
|
+
* */
|
|
37
|
+
getInitialDataForExternal?: (args: DraggableGetFeedbackArgs) => {
|
|
38
|
+
[Key in NativeMediaType]?: string;
|
|
39
|
+
};
|
|
40
|
+
} & Partial<AllEvents<ElementDragType>>;
|
|
41
|
+
export declare const dropTargetForElements: (args: DropTargetArgs<ElementDragType>) => CleanupFn;
|
|
42
|
+
export declare const monitorForElements: (args: MonitorArgs<ElementDragType>) => CleanupFn;
|
|
43
|
+
export declare function draggable(args: DraggableArgs): CleanupFn;
|
|
44
|
+
/** Common event payload for all events */
|
|
45
|
+
export type ElementEventBasePayload = BaseEventPayload<ElementDragType>;
|
|
46
|
+
/** A map containing payloads for all events */
|
|
47
|
+
export type ElementEventPayloadMap = EventPayloadMap<ElementDragType>;
|
|
48
|
+
/** Common event payload for all drop target events */
|
|
49
|
+
export type ElementDropTargetEventBasePayload = DropTargetEventBasePayload<ElementDragType>;
|
|
50
|
+
/** A map containing payloads for all events on drop targets */
|
|
51
|
+
export type ElementDropTargetEventPayloadMap = DropTargetEventPayloadMap<ElementDragType>;
|
|
52
|
+
/** Arguments given to all feedback functions (eg `canDrag()`) on for a `draggable()` */
|
|
53
|
+
export type ElementGetFeedbackArgs = DraggableGetFeedbackArgs;
|
|
54
|
+
/** Arguments given to all feedback functions (eg `canDrop()`) on a `dropTargetForElements()` */
|
|
55
|
+
export type ElementDropTargetGetFeedbackArgs = DropTargetGetFeedbackArgs<ElementDragType>;
|
|
56
|
+
/** Arguments given to all monitor feedback functions (eg `canMonitor()`) for a `monitorForElements` */
|
|
57
|
+
export type ElementMonitorGetFeedbackArgs = MonitorGetFeedbackArgs<ElementDragType>;
|