@kerebron/extension-yjs 0.4.27 → 0.4.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/esm/ExtensionYjs.d.ts +17 -0
  2. package/esm/ExtensionYjs.d.ts.map +1 -0
  3. package/esm/ExtensionYjs.js +34 -0
  4. package/esm/ExtensionYjs.js.map +1 -0
  5. package/esm/convertUtils.d.ts +59 -0
  6. package/esm/convertUtils.d.ts.map +1 -0
  7. package/esm/convertUtils.js +89 -0
  8. package/esm/convertUtils.js.map +1 -0
  9. package/esm/keys.d.ts +11 -0
  10. package/esm/keys.d.ts.map +1 -0
  11. package/esm/keys.js +10 -0
  12. package/esm/keys.js.map +1 -0
  13. package/esm/lib.d.ts +15 -0
  14. package/esm/lib.d.ts.map +1 -0
  15. package/esm/lib.js +191 -0
  16. package/esm/lib.js.map +1 -0
  17. package/esm/package.json +3 -0
  18. package/esm/userColors.d.ts +5 -0
  19. package/esm/userColors.d.ts.map +1 -0
  20. package/esm/userColors.js +11 -0
  21. package/esm/userColors.js.map +1 -0
  22. package/esm/utils.d.ts +2 -0
  23. package/esm/utils.d.ts.map +1 -0
  24. package/esm/utils.js +11 -0
  25. package/esm/utils.js.map +1 -0
  26. package/esm/yPositionPlugin.d.ts +14 -0
  27. package/esm/yPositionPlugin.d.ts.map +1 -0
  28. package/esm/yPositionPlugin.js +122 -0
  29. package/esm/yPositionPlugin.js.map +1 -0
  30. package/esm/ySyncPlugin.d.ts +102 -0
  31. package/esm/ySyncPlugin.d.ts.map +1 -0
  32. package/esm/ySyncPlugin.js +938 -0
  33. package/esm/ySyncPlugin.js.map +1 -0
  34. package/esm/yUndoPlugin.d.ts +22 -0
  35. package/esm/yUndoPlugin.d.ts.map +1 -0
  36. package/esm/yUndoPlugin.js +90 -0
  37. package/esm/yUndoPlugin.js.map +1 -0
  38. package/package.json +7 -4
  39. package/src/ExtensionYjs.ts +55 -0
  40. package/src/convertUtils.ts +143 -0
  41. package/src/keys.ts +14 -0
  42. package/src/lib.ts +230 -0
  43. package/src/userColors.ts +10 -0
  44. package/src/utils.ts +13 -0
  45. package/src/yPositionPlugin.ts +228 -0
  46. package/src/ySyncPlugin.ts +1313 -0
  47. package/src/yUndoPlugin.ts +124 -0
@@ -0,0 +1,122 @@
1
+ import * as Y from 'yjs';
2
+ import { Plugin, PluginKey } from 'prosemirror-state';
3
+ import { remoteSelectionPluginKey } from '@kerebron/extension-basic-editor/ExtensionRemoteSelection';
4
+ import { absolutePositionToRelativePosition, relativePositionToAbsolutePosition, setMeta, } from './lib.js';
5
+ import { ySyncPluginKey } from './keys.js';
6
+ export const yPositionPluginKey = new PluginKey('yjs-position');
7
+ /**
8
+ * Default awareness state filter
9
+ */
10
+ export const defaultAwarenessStateFilter = (currentClientId, userClientId, _user) => currentClientId !== userClientId;
11
+ export const yPositionPlugin = (awareness, editor, { getSelection = (state) => state.selection, } = {}, cursorStateField = 'cursor') => {
12
+ return new Plugin({
13
+ key: yPositionPluginKey,
14
+ view: (view) => {
15
+ const extension = editor.getExtension('remote-selection');
16
+ const awarenessListener = ({ added, updated, removed }) => {
17
+ const clients = added.concat(updated).concat(removed);
18
+ if (clients.findIndex((id) => id !== awareness.doc.clientID) ===
19
+ -1) {
20
+ return;
21
+ }
22
+ if (view.docView) {
23
+ setMeta(view, remoteSelectionPluginKey, {
24
+ remotePositionUpdated: true,
25
+ });
26
+ }
27
+ const remoteStates = [];
28
+ const ystate = ySyncPluginKey.getState(view.state);
29
+ const y = ystate.doc;
30
+ awareness.getStates().forEach((aw, clientId) => {
31
+ if (!defaultAwarenessStateFilter(y.clientID, clientId, aw)) {
32
+ return;
33
+ }
34
+ if (!aw.cursor) {
35
+ return;
36
+ }
37
+ let anchor = relativePositionToAbsolutePosition(y, ystate.type, Y.createRelativePositionFromJSON(aw.cursor.anchor), ystate.binding.mapping);
38
+ let head = relativePositionToAbsolutePosition(y, ystate.type, Y.createRelativePositionFromJSON(aw.cursor.head), ystate.binding.mapping);
39
+ if (anchor !== null && head !== null) {
40
+ remoteStates.push({
41
+ clientId,
42
+ user: {
43
+ name: aw.user?.name,
44
+ color: aw.user?.color,
45
+ colorLight: aw.user?.colorLight,
46
+ },
47
+ cursor: {
48
+ anchor,
49
+ head,
50
+ },
51
+ });
52
+ }
53
+ });
54
+ extension.setRemoteStates(remoteStates);
55
+ // view.dispatch({ annotations: [yRemoteSelectionsAnnotation.of([])] });
56
+ };
57
+ {
58
+ // if (
59
+ // ystate.snapshot != null || ystate.prevSnapshot != null ||
60
+ // ystate.binding.mapping.size === 0
61
+ // ) {
62
+ // // do not render cursors while snapshot is active
63
+ // return DecorationSet.create(state.doc, []);
64
+ // }
65
+ }
66
+ const updateAwareness = (selectionAnchor, selectionHead) => {
67
+ const ystate = ySyncPluginKey.getState(view.state);
68
+ const current = awareness.getLocalState() || {};
69
+ const anchor = absolutePositionToRelativePosition(selectionAnchor, ystate.type, ystate.binding.mapping);
70
+ const head = absolutePositionToRelativePosition(selectionHead, ystate.type, ystate.binding.mapping);
71
+ if (current.cursor == null ||
72
+ !Y.compareRelativePositions(Y.createRelativePositionFromJSON(current.cursor.anchor), anchor) ||
73
+ !Y.compareRelativePositions(Y.createRelativePositionFromJSON(current.cursor.head), head)) {
74
+ awareness.setLocalStateField(cursorStateField, {
75
+ anchor,
76
+ head,
77
+ });
78
+ }
79
+ };
80
+ const clearAwareness = () => {
81
+ const ystate = ySyncPluginKey.getState(view.state);
82
+ const current = awareness.getLocalState() || {};
83
+ if (current.cursor != null &&
84
+ relativePositionToAbsolutePosition(ystate.doc, ystate.type, Y.createRelativePositionFromJSON(current.cursor.anchor), ystate.binding.mapping) !== null) {
85
+ // delete cursor information if current cursor information is owned by this editor binding
86
+ awareness.setLocalStateField(cursorStateField, null);
87
+ }
88
+ };
89
+ const updateCursorInfo = () => {
90
+ if (view.hasFocus()) {
91
+ const selection = getSelection(view.state);
92
+ updateAwareness(selection.anchor, selection.head);
93
+ }
94
+ else {
95
+ // clearAwareness();
96
+ }
97
+ };
98
+ const localPositionChangedListener = (event) => {
99
+ const { detail } = event;
100
+ updateAwareness(detail.anchor, detail.head);
101
+ };
102
+ editor.addEventListener('localPositionChanged', localPositionChangedListener);
103
+ awareness.on('change', awarenessListener);
104
+ view.dom.addEventListener('focusin', updateCursorInfo);
105
+ view.dom.addEventListener('focusout', updateCursorInfo);
106
+ return {
107
+ update: updateCursorInfo,
108
+ destroy: () => {
109
+ view.dom.removeEventListener('focusin', updateCursorInfo);
110
+ view.dom.removeEventListener('focusout', updateCursorInfo);
111
+ awareness.off('change', awarenessListener);
112
+ awareness.setLocalStateField(cursorStateField, null);
113
+ editor.removeEventListener('localPositionChanged', localPositionChangedListener);
114
+ },
115
+ };
116
+ },
117
+ updateCursorInfo(state) {
118
+ throw new Error('TODO: merge with updateCursorInfo above');
119
+ },
120
+ });
121
+ };
122
+ //# sourceMappingURL=yPositionPlugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yPositionPlugin.js","sourceRoot":"","sources":["../src/yPositionPlugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,102 @@
1
+ import * as Y from 'yjs';
2
+ import * as PModel from 'prosemirror-model';
3
+ import { MarkType, Node, Schema } from 'prosemirror-model';
4
+ import { EditorState } from 'prosemirror-state';
5
+ import { EditorView } from 'prosemirror-view';
6
+ export type TransactFunc<T> = (f: (arg0?: Y.Transaction) => T, origin?: any) => T;
7
+ export interface BindingMetadata {
8
+ mapping: ProsemirrorMapping;
9
+ isOMark: Map<MarkType, boolean>;
10
+ }
11
+ export declare const isVisible: (item: Y.Item, snapshot: Y.Snapshot) => boolean;
12
+ type ProsemirrorMapping = Map<Y.AbstractType<any>, PModel.Node | Array<PModel.Node>>;
13
+ interface ColorDef {
14
+ light: string;
15
+ dark: string;
16
+ }
17
+ interface YSyncOpts {
18
+ colors?: Array<ColorDef>;
19
+ colorMapping?: Map<string, ColorDef>;
20
+ permanentUserData?: Y.PermanentUserData | null;
21
+ mapping?: ProsemirrorMapping;
22
+ onFirstRender?: () => void;
23
+ }
24
+ /**
25
+ * This plugin listens to changes in prosemirror view and keeps yXmlState and view in sync.
26
+ *
27
+ * This plugin also keeps references to the type and the shared document so other plugins can access it.
28
+ */
29
+ export declare const ySyncPlugin: (yXmlFragment: Y.XmlFragment, { colors, colorMapping, permanentUserData, onFirstRender, mapping, }?: YSyncOpts) => any;
30
+ interface TransactionSelection {
31
+ type: string;
32
+ anchor: Y.RelativePosition;
33
+ head: Y.RelativePosition;
34
+ }
35
+ export declare const getRelativeSelection: (pmbinding: ProsemirrorBinding, state: EditorState) => TransactionSelection;
36
+ interface PluginState {
37
+ addToHistory: boolean;
38
+ isChangeOrigin: boolean;
39
+ restore: any;
40
+ snapshot?: Y.Snapshot;
41
+ prevSnapshot?: Y.Snapshot;
42
+ isUndoRedoOperation: boolean;
43
+ colors: Array<ColorDef>;
44
+ colorMapping: Map<string, ColorDef>;
45
+ permanentUserData: Y.PermanentUserData;
46
+ }
47
+ /**
48
+ * Binding for prosemirror.
49
+ *
50
+ * @protected
51
+ */
52
+ export declare class ProsemirrorBinding implements BindingMetadata {
53
+ mapping: ProsemirrorMapping;
54
+ ydoc: Y.Doc;
55
+ isOMark: Map<MarkType, boolean>;
56
+ type: Y.XmlFragment;
57
+ private mux;
58
+ prosemirrorView: EditorView | null;
59
+ private _beforeTransactionSelection;
60
+ private beforeAllTransactions;
61
+ private afterAllTransactions;
62
+ private _observeFunction;
63
+ private _domSelectionInView;
64
+ get beforeTransactionSelection(): TransactionSelection;
65
+ set beforeTransactionSelection(value: TransactionSelection);
66
+ constructor(yXmlFragment: Y.XmlFragment, mapping?: ProsemirrorMapping);
67
+ debug(msg?: string): void;
68
+ _isLocalCursorInView(): boolean;
69
+ _isDomSelectionInView(): boolean;
70
+ renderSnapshot(snapshot: Y.Snapshot, prevSnapshot: Y.Snapshot): void;
71
+ unrenderSnapshot(): void;
72
+ _forceRerender(): void;
73
+ _renderSnapshot(snapshot: Y.Snapshot | Uint8Array, prevSnapshot: Y.Snapshot | Uint8Array, pluginState: PluginState): void;
74
+ yXmlChanged(events: Array<Y.YEvent<any>>, transaction: Y.Transaction): void;
75
+ _prosemirrorChanged(doc: Node): void;
76
+ /**
77
+ * View is ready to listen to changes. Register observers.
78
+ */
79
+ initView(prosemirrorView: any): void;
80
+ destroy(): void;
81
+ }
82
+ export declare const createNodeFromYElement: (el: Y.XmlElement, schema: any, meta: BindingMetadata, snapshot?: Y.Snapshot, prevSnapshot?: Y.Snapshot, computeYChange?: (arg0: "removed" | "added", arg1: Y.ID) => any) => PModel.Node | null;
83
+ export declare const yattr2markname: (attrName: string) => string;
84
+ /**
85
+ * @todo move this to markstoattributes
86
+ */
87
+ export declare const attributesToMarks: (attrs: {
88
+ [s: string]: any;
89
+ }, schema: Schema) => PModel.Mark[];
90
+ /**
91
+ * Update a yDom node by syncing the current content of the prosemirror node.
92
+ *
93
+ * This is a y-prosemirror internal feature that you can use at your own risk.
94
+ *
95
+ * @private
96
+ * @unstable
97
+ */
98
+ export declare const updateYFragment: (y: {
99
+ transact: TransactFunc<void>;
100
+ }, yDomFragment: Y.XmlFragment, pNode: Node, meta: BindingMetadata) => void;
101
+ export {};
102
+ //# sourceMappingURL=ySyncPlugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ySyncPlugin.d.ts","sourceRoot":"","sources":["../src/ySyncPlugin.ts"],"names":[],"mappings":"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"}