@hocuspocus/extension-sqlite 2.1.0-alpha.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/dist/hocuspocus-sqlite.cjs +46 -46
  2. package/dist/hocuspocus-sqlite.esm.js +46 -46
  3. package/dist/packages/common/src/CloseEvents.d.ts +29 -29
  4. package/dist/packages/common/src/auth.d.ts +6 -6
  5. package/dist/packages/common/src/awarenessStatesToArray.d.ts +3 -3
  6. package/dist/packages/common/src/index.d.ts +4 -4
  7. package/dist/packages/common/src/types.d.ts +10 -10
  8. package/dist/packages/extension-database/src/Database.d.ts +30 -30
  9. package/dist/packages/extension-database/src/index.d.ts +1 -1
  10. package/dist/packages/extension-logger/src/Logger.d.ts +67 -67
  11. package/dist/packages/extension-logger/src/index.d.ts +1 -1
  12. package/dist/packages/extension-redis/src/Redis.d.ts +116 -95
  13. package/dist/packages/extension-redis/src/index.d.ts +1 -1
  14. package/dist/packages/extension-sqlite/src/SQLite.d.ts +26 -26
  15. package/dist/packages/extension-sqlite/src/index.d.ts +1 -1
  16. package/dist/packages/extension-throttle/src/index.d.ts +31 -31
  17. package/dist/packages/extension-webhook/src/index.d.ts +57 -57
  18. package/dist/packages/provider/src/EventEmitter.d.ts +9 -9
  19. package/dist/packages/provider/src/HocuspocusProvider.d.ts +110 -110
  20. package/dist/packages/provider/src/HocuspocusProviderWebsocket.d.ts +115 -115
  21. package/dist/packages/provider/src/IncomingMessage.d.ts +16 -16
  22. package/dist/packages/provider/src/MessageReceiver.d.ts +13 -13
  23. package/dist/packages/provider/src/MessageSender.d.ts +10 -10
  24. package/dist/packages/provider/src/OutgoingMessage.d.ts +9 -9
  25. package/dist/packages/provider/src/OutgoingMessages/AuthenticationMessage.d.ts +7 -7
  26. package/dist/packages/provider/src/OutgoingMessages/AwarenessMessage.d.ts +8 -8
  27. package/dist/packages/provider/src/OutgoingMessages/CloseMessage.d.ts +8 -8
  28. package/dist/packages/provider/src/OutgoingMessages/QueryAwarenessMessage.d.ts +8 -8
  29. package/dist/packages/provider/src/OutgoingMessages/StatelessMessage.d.ts +7 -7
  30. package/dist/packages/provider/src/OutgoingMessages/SyncStepOneMessage.d.ts +8 -8
  31. package/dist/packages/provider/src/OutgoingMessages/SyncStepTwoMessage.d.ts +8 -8
  32. package/dist/packages/provider/src/OutgoingMessages/UpdateMessage.d.ts +7 -7
  33. package/dist/packages/provider/src/TiptapCollabProvider.d.ts +11 -11
  34. package/dist/packages/provider/src/TiptapCollabProviderWebsocket.d.ts +11 -11
  35. package/dist/packages/provider/src/index.d.ts +5 -5
  36. package/dist/packages/provider/src/types.d.ts +84 -84
  37. package/dist/packages/server/src/ClientConnection.d.ts +56 -0
  38. package/dist/packages/server/src/Connection.d.ts +71 -71
  39. package/dist/packages/server/src/Debugger.d.ts +14 -14
  40. package/dist/packages/server/src/DirectConnection.d.ts +14 -0
  41. package/dist/packages/server/src/Document.d.ts +91 -88
  42. package/dist/packages/server/src/Hocuspocus.d.ts +103 -108
  43. package/dist/packages/server/src/IncomingMessage.d.ts +21 -21
  44. package/dist/packages/server/src/MessageReceiver.d.ts +12 -12
  45. package/dist/packages/server/src/OutgoingMessage.d.ts +20 -20
  46. package/dist/packages/server/src/index.d.ts +8 -8
  47. package/dist/packages/server/src/types.d.ts +270 -264
  48. package/dist/packages/server/src/util/getParameters.d.ts +8 -0
  49. package/dist/packages/transformer/src/Prosemirror.d.ts +11 -11
  50. package/dist/packages/transformer/src/Tiptap.d.ts +10 -10
  51. package/dist/packages/transformer/src/index.d.ts +3 -3
  52. package/dist/packages/transformer/src/types.d.ts +5 -5
  53. package/dist/playground/backend/src/default.d.ts +1 -1
  54. package/dist/playground/backend/src/express.d.ts +1 -1
  55. package/dist/playground/backend/src/koa.d.ts +1 -1
  56. package/dist/playground/backend/src/load-document.d.ts +1 -1
  57. package/dist/playground/backend/src/redis.d.ts +1 -1
  58. package/dist/playground/backend/src/slow.d.ts +1 -1
  59. package/dist/playground/backend/src/tiptapcollab.d.ts +1 -1
  60. package/dist/playground/backend/src/webhook.d.ts +1 -1
  61. package/dist/playground/frontend/src/main.d.ts +1 -1
  62. package/dist/playground/frontend/vite.config.d.ts +2 -2
  63. package/dist/tests/extension-database/fetch.d.ts +1 -1
  64. package/dist/tests/extension-logger/onListen.d.ts +1 -1
  65. package/dist/tests/extension-redis/closeConnections.d.ts +1 -1
  66. package/dist/tests/extension-redis/getConnectionCount.d.ts +1 -1
  67. package/dist/tests/extension-redis/getDocumentsCount.d.ts +1 -1
  68. package/dist/tests/extension-redis/onAwarenessChange.d.ts +1 -1
  69. package/dist/tests/extension-redis/onChange.d.ts +1 -1
  70. package/dist/tests/extension-redis/onStateless.d.ts +1 -1
  71. package/dist/tests/extension-redis/onStoreDocument.d.ts +1 -1
  72. package/dist/tests/extension-throttle/banning.d.ts +1 -1
  73. package/dist/tests/extension-throttle/configuration.d.ts +1 -1
  74. package/dist/tests/provider/observe.d.ts +1 -1
  75. package/dist/tests/provider/observeDeep.d.ts +1 -1
  76. package/dist/tests/provider/onAuthenticated.d.ts +1 -1
  77. package/dist/tests/provider/onAuthenticationFailed.d.ts +1 -1
  78. package/dist/tests/provider/onAwarenessChange.d.ts +1 -1
  79. package/dist/tests/provider/onAwarenessUpdate.d.ts +1 -1
  80. package/dist/tests/provider/onClose.d.ts +1 -1
  81. package/dist/tests/provider/onConnect.d.ts +1 -1
  82. package/dist/tests/provider/onDisconnect.d.ts +1 -1
  83. package/dist/tests/provider/onMessage.d.ts +1 -1
  84. package/dist/tests/provider/onOpen.d.ts +1 -1
  85. package/dist/tests/provider/onStateless.d.ts +1 -1
  86. package/dist/tests/provider/onSynced.d.ts +1 -1
  87. package/dist/tests/providerwebsocket/configuration.d.ts +1 -1
  88. package/dist/tests/server/address.d.ts +1 -1
  89. package/dist/tests/server/afterStoreDocument.d.ts +1 -1
  90. package/dist/tests/server/beforeBroadcastStateless.d.ts +1 -1
  91. package/dist/tests/server/beforeHandleMessage.d.ts +1 -1
  92. package/dist/tests/server/closeConnections.d.ts +1 -1
  93. package/dist/tests/server/getConnectionsCount.d.ts +1 -1
  94. package/dist/tests/server/getDocumentsCount.d.ts +1 -1
  95. package/dist/tests/server/getMessageLogs.d.ts +1 -1
  96. package/dist/tests/server/listen.d.ts +1 -1
  97. package/dist/tests/server/onAuthenticate.d.ts +1 -1
  98. package/dist/tests/server/onAwarenessUpdate.d.ts +1 -1
  99. package/dist/tests/server/onChange.d.ts +1 -1
  100. package/dist/tests/server/onClose.d.ts +1 -1
  101. package/dist/tests/server/onConfigure.d.ts +1 -1
  102. package/dist/tests/server/onConnect.d.ts +1 -1
  103. package/dist/tests/server/onDestroy.d.ts +1 -1
  104. package/dist/tests/server/onDisconnect.d.ts +1 -1
  105. package/dist/tests/server/onListen.d.ts +1 -1
  106. package/dist/tests/server/onLoadDocument.d.ts +1 -1
  107. package/dist/tests/server/onRequest.d.ts +1 -1
  108. package/dist/tests/server/onStateless.d.ts +1 -1
  109. package/dist/tests/server/onStoreDocument.d.ts +1 -1
  110. package/dist/tests/server/onUpgrade.d.ts +1 -1
  111. package/dist/tests/server/openDirectConnection.d.ts +1 -0
  112. package/dist/tests/server/requiresAuthentication.d.ts +1 -1
  113. package/dist/tests/server/websocketError.d.ts +1 -1
  114. package/dist/tests/transformer/TiptapTransformer.d.ts +1 -1
  115. package/dist/tests/utils/createDirectory.d.ts +1 -1
  116. package/dist/tests/utils/flushRedis.d.ts +1 -1
  117. package/dist/tests/utils/index.d.ts +9 -9
  118. package/dist/tests/utils/newHocuspocus.d.ts +2 -2
  119. package/dist/tests/utils/newHocuspocusProvider.d.ts +3 -3
  120. package/dist/tests/utils/newHocuspocusProviderWebsocket.d.ts +3 -3
  121. package/dist/tests/utils/randomInteger.d.ts +1 -1
  122. package/dist/tests/utils/redisConnectionSettings.d.ts +4 -4
  123. package/dist/tests/utils/removeDirectory.d.ts +1 -1
  124. package/dist/tests/utils/retryableAssertion.d.ts +2 -2
  125. package/dist/tests/utils/sleep.d.ts +1 -1
  126. package/package.json +4 -3
  127. package/src/index.ts +1 -1
@@ -1,264 +1,270 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
3
- /// <reference types="node" />
4
- import { IncomingHttpHeaders, IncomingMessage, ServerResponse } from 'http';
5
- import { URLSearchParams } from 'url';
6
- import { Awareness } from 'y-protocols/awareness';
7
- import Document from './Document';
8
- import { Hocuspocus } from './Hocuspocus';
9
- import Connection from './Connection';
10
- export declare enum MessageType {
11
- Unknown = -1,
12
- Sync = 0,
13
- Awareness = 1,
14
- Auth = 2,
15
- QueryAwareness = 3,
16
- SyncReply = 4,
17
- Stateless = 5,
18
- BroadcastStateless = 6,
19
- CLOSE = 7
20
- }
21
- export interface AwarenessUpdate {
22
- added: Array<any>;
23
- updated: Array<any>;
24
- removed: Array<any>;
25
- }
26
- export interface ConnectionConfiguration {
27
- readOnly: boolean;
28
- requiresAuthentication: boolean;
29
- isAuthenticated: boolean;
30
- }
31
- export interface Extension {
32
- priority?: number;
33
- onConfigure?(data: onConfigurePayload): Promise<any>;
34
- onListen?(data: onListenPayload): Promise<any>;
35
- onUpgrade?(data: onUpgradePayload): Promise<any>;
36
- onConnect?(data: onConnectPayload): Promise<any>;
37
- connected?(data: connectedPayload): Promise<any>;
38
- onAuthenticate?(data: onAuthenticatePayload): Promise<any>;
39
- onLoadDocument?(data: onLoadDocumentPayload): Promise<any>;
40
- afterLoadDocument?(data: onLoadDocumentPayload): Promise<any>;
41
- beforeHandleMessage?(data: beforeHandleMessagePayload): Promise<any>;
42
- beforeBroadcastStateless?(data: beforeBroadcastStatelessPayload): Promise<any>;
43
- onStateless?(payload: onStatelessPayload): Promise<any>;
44
- onChange?(data: onChangePayload): Promise<any>;
45
- onStoreDocument?(data: onStoreDocumentPayload): Promise<any>;
46
- afterStoreDocument?(data: afterStoreDocumentPayload): Promise<any>;
47
- onAwarenessUpdate?(data: onAwarenessUpdatePayload): Promise<any>;
48
- onRequest?(data: onRequestPayload): Promise<any>;
49
- onDisconnect?(data: onDisconnectPayload): Promise<any>;
50
- onDestroy?(data: onDestroyPayload): Promise<any>;
51
- }
52
- export type HookName = 'onConfigure' | 'onListen' | 'onUpgrade' | 'onConnect' | 'connected' | 'onAuthenticate' | 'onLoadDocument' | 'afterLoadDocument' | 'beforeHandleMessage' | 'beforeBroadcastStateless' | 'onStateless' | 'onChange' | 'onStoreDocument' | 'afterStoreDocument' | 'onAwarenessUpdate' | 'onRequest' | 'onDisconnect' | 'onDestroy';
53
- export type HookPayload = onConfigurePayload | onListenPayload | onUpgradePayload | onConnectPayload | connectedPayload | onAuthenticatePayload | onLoadDocumentPayload | onStatelessPayload | beforeHandleMessagePayload | beforeBroadcastStatelessPayload | onChangePayload | onStoreDocumentPayload | afterStoreDocumentPayload | onAwarenessUpdatePayload | onRequestPayload | onDisconnectPayload | onDestroyPayload;
54
- export interface Configuration extends Extension {
55
- /**
56
- * A name for the instance, used for logging.
57
- */
58
- name: string | null;
59
- /**
60
- * A list of hocuspocus extenions.
61
- */
62
- extensions: Array<Extension>;
63
- /**
64
- * The port which the server listens on.
65
- */
66
- port?: number;
67
- /**
68
- * The address which the server listens on.
69
- */
70
- address?: string;
71
- /**
72
- * Defines in which interval the server sends a ping, and closes the connection when no pong is sent back.
73
- */
74
- timeout: number;
75
- /**
76
- * Debounces the call of the `onStoreDocument` hook for the given amount of time in ms.
77
- * Otherwise every single update would be persisted.
78
- */
79
- debounce: number;
80
- /**
81
- * Makes sure to call `onStoreDocument` at least in the given amount of time (ms).
82
- */
83
- maxDebounce: number;
84
- /**
85
- * By default, the servers show a start screen. If passed false, the server will start quietly.
86
- */
87
- quiet: boolean;
88
- /**
89
- * options to pass to the ydoc document
90
- */
91
- yDocOptions: {
92
- gc: boolean;
93
- gcFilter: () => boolean;
94
- };
95
- /**
96
- * Function which returns the (customized) document name based on the request
97
- */
98
- getDocumentName?(data: getDocumentNamePayload): string | Promise<string>;
99
- }
100
- export interface getDocumentNamePayload {
101
- documentName: string;
102
- request: IncomingMessage;
103
- requestParameters: URLSearchParams;
104
- }
105
- export interface onStatelessPayload {
106
- connection: Connection;
107
- documentName: string;
108
- document: Document;
109
- payload: string;
110
- }
111
- export interface onAuthenticatePayload {
112
- documentName: string;
113
- instance: Hocuspocus;
114
- requestHeaders: IncomingHttpHeaders;
115
- requestParameters: URLSearchParams;
116
- socketId: string;
117
- token: string;
118
- connection: ConnectionConfiguration;
119
- }
120
- export interface onConnectPayload {
121
- documentName: string;
122
- instance: Hocuspocus;
123
- request: IncomingMessage;
124
- requestHeaders: IncomingHttpHeaders;
125
- requestParameters: URLSearchParams;
126
- socketId: string;
127
- connection: ConnectionConfiguration;
128
- }
129
- export interface connectedPayload {
130
- documentName: string;
131
- instance: Hocuspocus;
132
- request: IncomingMessage;
133
- requestHeaders: IncomingHttpHeaders;
134
- requestParameters: URLSearchParams;
135
- socketId: string;
136
- connection: ConnectionConfiguration;
137
- }
138
- export interface onLoadDocumentPayload {
139
- context: any;
140
- document: Document;
141
- documentName: string;
142
- instance: Hocuspocus;
143
- requestHeaders: IncomingHttpHeaders;
144
- requestParameters: URLSearchParams;
145
- socketId: string;
146
- connection: ConnectionConfiguration;
147
- }
148
- export interface afterLoadDocumentPayload {
149
- context: any;
150
- document: Document;
151
- documentName: string;
152
- instance: Hocuspocus;
153
- requestHeaders: IncomingHttpHeaders;
154
- requestParameters: URLSearchParams;
155
- socketId: string;
156
- connection: ConnectionConfiguration;
157
- }
158
- export interface onChangePayload {
159
- clientsCount: number;
160
- context: any;
161
- document: Document;
162
- documentName: string;
163
- instance: Hocuspocus;
164
- requestHeaders: IncomingHttpHeaders;
165
- requestParameters: URLSearchParams;
166
- update: Uint8Array;
167
- socketId: string;
168
- }
169
- export interface beforeHandleMessagePayload {
170
- clientsCount: number;
171
- context: any;
172
- document: Document;
173
- documentName: string;
174
- instance: Hocuspocus;
175
- requestHeaders: IncomingHttpHeaders;
176
- requestParameters: URLSearchParams;
177
- update: Uint8Array;
178
- socketId: string;
179
- connection: Connection;
180
- }
181
- export interface beforeBroadcastStatelessPayload {
182
- document: Document;
183
- documentName: string;
184
- payload: string;
185
- }
186
- export interface onStoreDocumentPayload {
187
- clientsCount: number;
188
- context: any;
189
- document: Document;
190
- documentName: string;
191
- instance: Hocuspocus;
192
- requestHeaders: IncomingHttpHeaders;
193
- requestParameters: URLSearchParams;
194
- socketId: string;
195
- }
196
- export interface afterStoreDocumentPayload extends onStoreDocumentPayload {
197
- }
198
- export interface onAwarenessUpdatePayload {
199
- clientsCount: number;
200
- context: any;
201
- document: Document;
202
- documentName: string;
203
- instance: Hocuspocus;
204
- requestHeaders: IncomingHttpHeaders;
205
- requestParameters: URLSearchParams;
206
- update: Uint8Array;
207
- socketId: string;
208
- added: number[];
209
- updated: number[];
210
- removed: number[];
211
- awareness: Awareness;
212
- states: StatesArray;
213
- }
214
- export type StatesArray = {
215
- clientId: number;
216
- [key: string | number]: any;
217
- }[];
218
- export interface fetchPayload {
219
- context: any;
220
- document: Document;
221
- documentName: string;
222
- instance: Hocuspocus;
223
- requestHeaders: IncomingHttpHeaders;
224
- requestParameters: URLSearchParams;
225
- socketId: string;
226
- connection: ConnectionConfiguration;
227
- }
228
- export interface storePayload extends onStoreDocumentPayload {
229
- state: Buffer;
230
- }
231
- export interface onDisconnectPayload {
232
- clientsCount: number;
233
- context: any;
234
- document: Document;
235
- documentName: string;
236
- instance: Hocuspocus;
237
- requestHeaders: IncomingHttpHeaders;
238
- requestParameters: URLSearchParams;
239
- socketId: string;
240
- }
241
- export interface onRequestPayload {
242
- request: IncomingMessage;
243
- response: ServerResponse;
244
- instance: Hocuspocus;
245
- }
246
- export interface onUpgradePayload {
247
- request: IncomingMessage;
248
- socket: any;
249
- head: any;
250
- instance: Hocuspocus;
251
- }
252
- export interface onListenPayload {
253
- instance: Hocuspocus;
254
- configuration: Configuration;
255
- port: number;
256
- }
257
- export interface onDestroyPayload {
258
- instance: Hocuspocus;
259
- }
260
- export interface onConfigurePayload {
261
- instance: Hocuspocus;
262
- configuration: Configuration;
263
- version: string;
264
- }
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ /// <reference types="node" />
4
+ import { IncomingHttpHeaders, IncomingMessage, ServerResponse } from 'http';
5
+ import { URLSearchParams } from 'url';
6
+ import { Awareness } from 'y-protocols/awareness';
7
+ import Document from './Document.js';
8
+ import { Hocuspocus } from './Hocuspocus.js';
9
+ import Connection from './Connection.js';
10
+ export declare enum MessageType {
11
+ Unknown = -1,
12
+ Sync = 0,
13
+ Awareness = 1,
14
+ Auth = 2,
15
+ QueryAwareness = 3,
16
+ SyncReply = 4,
17
+ Stateless = 5,
18
+ BroadcastStateless = 6,
19
+ CLOSE = 7
20
+ }
21
+ export interface AwarenessUpdate {
22
+ added: Array<any>;
23
+ updated: Array<any>;
24
+ removed: Array<any>;
25
+ }
26
+ export interface ConnectionConfiguration {
27
+ readOnly: boolean;
28
+ requiresAuthentication: boolean;
29
+ isAuthenticated: boolean;
30
+ }
31
+ export interface Extension {
32
+ priority?: number;
33
+ onConfigure?(data: onConfigurePayload): Promise<any>;
34
+ onListen?(data: onListenPayload): Promise<any>;
35
+ onUpgrade?(data: onUpgradePayload): Promise<any>;
36
+ onConnect?(data: onConnectPayload): Promise<any>;
37
+ connected?(data: connectedPayload): Promise<any>;
38
+ onAuthenticate?(data: onAuthenticatePayload): Promise<any>;
39
+ onLoadDocument?(data: onLoadDocumentPayload): Promise<any>;
40
+ afterLoadDocument?(data: onLoadDocumentPayload): Promise<any>;
41
+ beforeHandleMessage?(data: beforeHandleMessagePayload): Promise<any>;
42
+ beforeBroadcastStateless?(data: beforeBroadcastStatelessPayload): Promise<any>;
43
+ onStateless?(payload: onStatelessPayload): Promise<any>;
44
+ onChange?(data: onChangePayload): Promise<any>;
45
+ onStoreDocument?(data: onStoreDocumentPayload): Promise<any>;
46
+ afterStoreDocument?(data: afterStoreDocumentPayload): Promise<any>;
47
+ onAwarenessUpdate?(data: onAwarenessUpdatePayload): Promise<any>;
48
+ onRequest?(data: onRequestPayload): Promise<any>;
49
+ onDisconnect?(data: onDisconnectPayload): Promise<any>;
50
+ onDestroy?(data: onDestroyPayload): Promise<any>;
51
+ }
52
+ export type HookName = 'onConfigure' | 'onListen' | 'onUpgrade' | 'onConnect' | 'connected' | 'onAuthenticate' | 'onLoadDocument' | 'afterLoadDocument' | 'beforeHandleMessage' | 'beforeBroadcastStateless' | 'onStateless' | 'onChange' | 'onStoreDocument' | 'afterStoreDocument' | 'onAwarenessUpdate' | 'onRequest' | 'onDisconnect' | 'onDestroy';
53
+ export type HookPayload = onConfigurePayload | onListenPayload | onUpgradePayload | onConnectPayload | connectedPayload | onAuthenticatePayload | onLoadDocumentPayload | onStatelessPayload | beforeHandleMessagePayload | beforeBroadcastStatelessPayload | onChangePayload | onStoreDocumentPayload | afterStoreDocumentPayload | onAwarenessUpdatePayload | onRequestPayload | onDisconnectPayload | onDestroyPayload;
54
+ export interface Configuration extends Extension {
55
+ /**
56
+ * A name for the instance, used for logging.
57
+ */
58
+ name: string | null;
59
+ /**
60
+ * A list of hocuspocus extenions.
61
+ */
62
+ extensions: Array<Extension>;
63
+ /**
64
+ * The port which the server listens on.
65
+ */
66
+ port?: number;
67
+ /**
68
+ * The address which the server listens on.
69
+ */
70
+ address?: string;
71
+ /**
72
+ * Defines in which interval the server sends a ping, and closes the connection when no pong is sent back.
73
+ */
74
+ timeout: number;
75
+ /**
76
+ * Debounces the call of the `onStoreDocument` hook for the given amount of time in ms.
77
+ * Otherwise every single update would be persisted.
78
+ */
79
+ debounce: number;
80
+ /**
81
+ * Makes sure to call `onStoreDocument` at least in the given amount of time (ms).
82
+ */
83
+ maxDebounce: number;
84
+ /**
85
+ * By default, the servers show a start screen. If passed false, the server will start quietly.
86
+ */
87
+ quiet: boolean;
88
+ /**
89
+ * options to pass to the ydoc document
90
+ */
91
+ yDocOptions: {
92
+ gc: boolean;
93
+ gcFilter: () => boolean;
94
+ };
95
+ /**
96
+ * Function which returns the (customized) document name based on the request
97
+ */
98
+ getDocumentName?(data: getDocumentNamePayload): string | Promise<string>;
99
+ }
100
+ export interface getDocumentNamePayload {
101
+ documentName: string;
102
+ request: IncomingMessage;
103
+ requestParameters: URLSearchParams;
104
+ }
105
+ export interface onStatelessPayload {
106
+ connection: Connection;
107
+ documentName: string;
108
+ document: Document;
109
+ payload: string;
110
+ }
111
+ export interface onAuthenticatePayload {
112
+ documentName: string;
113
+ instance: Hocuspocus;
114
+ requestHeaders: IncomingHttpHeaders;
115
+ requestParameters: URLSearchParams;
116
+ socketId: string;
117
+ token: string;
118
+ connection: ConnectionConfiguration;
119
+ }
120
+ export interface onConnectPayload {
121
+ documentName: string;
122
+ instance: Hocuspocus;
123
+ request: IncomingMessage;
124
+ requestHeaders: IncomingHttpHeaders;
125
+ requestParameters: URLSearchParams;
126
+ socketId: string;
127
+ connection: ConnectionConfiguration;
128
+ }
129
+ export interface connectedPayload {
130
+ context: any;
131
+ documentName: string;
132
+ instance: Hocuspocus;
133
+ request: IncomingMessage;
134
+ requestHeaders: IncomingHttpHeaders;
135
+ requestParameters: URLSearchParams;
136
+ socketId: string;
137
+ connection: ConnectionConfiguration;
138
+ connectionInstance: Connection;
139
+ }
140
+ export interface onLoadDocumentPayload {
141
+ context: any;
142
+ document: Document;
143
+ documentName: string;
144
+ instance: Hocuspocus;
145
+ requestHeaders: IncomingHttpHeaders;
146
+ requestParameters: URLSearchParams;
147
+ socketId: string;
148
+ connection: ConnectionConfiguration;
149
+ }
150
+ export interface afterLoadDocumentPayload {
151
+ context: any;
152
+ document: Document;
153
+ documentName: string;
154
+ instance: Hocuspocus;
155
+ requestHeaders: IncomingHttpHeaders;
156
+ requestParameters: URLSearchParams;
157
+ socketId: string;
158
+ connection: ConnectionConfiguration;
159
+ }
160
+ export interface onChangePayload {
161
+ clientsCount: number;
162
+ context: any;
163
+ document: Document;
164
+ documentName: string;
165
+ instance: Hocuspocus;
166
+ requestHeaders: IncomingHttpHeaders;
167
+ requestParameters: URLSearchParams;
168
+ update: Uint8Array;
169
+ socketId: string;
170
+ }
171
+ export interface beforeHandleMessagePayload {
172
+ clientsCount: number;
173
+ context: any;
174
+ document: Document;
175
+ documentName: string;
176
+ instance: Hocuspocus;
177
+ requestHeaders: IncomingHttpHeaders;
178
+ requestParameters: URLSearchParams;
179
+ update: Uint8Array;
180
+ socketId: string;
181
+ connection: Connection;
182
+ }
183
+ export interface beforeBroadcastStatelessPayload {
184
+ document: Document;
185
+ documentName: string;
186
+ payload: string;
187
+ }
188
+ export interface onStoreDocumentPayload {
189
+ clientsCount: number;
190
+ context: any;
191
+ document: Document;
192
+ documentName: string;
193
+ instance: Hocuspocus;
194
+ requestHeaders: IncomingHttpHeaders;
195
+ requestParameters: URLSearchParams;
196
+ socketId: string;
197
+ }
198
+ export interface afterStoreDocumentPayload extends onStoreDocumentPayload {
199
+ }
200
+ export interface onAwarenessUpdatePayload {
201
+ clientsCount: number;
202
+ context: any;
203
+ document: Document;
204
+ documentName: string;
205
+ instance: Hocuspocus;
206
+ requestHeaders: IncomingHttpHeaders;
207
+ requestParameters: URLSearchParams;
208
+ update: Uint8Array;
209
+ socketId: string;
210
+ added: number[];
211
+ updated: number[];
212
+ removed: number[];
213
+ awareness: Awareness;
214
+ states: StatesArray;
215
+ }
216
+ export type StatesArray = {
217
+ clientId: number;
218
+ [key: string | number]: any;
219
+ }[];
220
+ export interface fetchPayload {
221
+ context: any;
222
+ document: Document;
223
+ documentName: string;
224
+ instance: Hocuspocus;
225
+ requestHeaders: IncomingHttpHeaders;
226
+ requestParameters: URLSearchParams;
227
+ socketId: string;
228
+ connection: ConnectionConfiguration;
229
+ }
230
+ export interface storePayload extends onStoreDocumentPayload {
231
+ state: Buffer;
232
+ }
233
+ export interface onDisconnectPayload {
234
+ clientsCount: number;
235
+ context: any;
236
+ document: Document;
237
+ documentName: string;
238
+ instance: Hocuspocus;
239
+ requestHeaders: IncomingHttpHeaders;
240
+ requestParameters: URLSearchParams;
241
+ socketId: string;
242
+ }
243
+ export interface onRequestPayload {
244
+ request: IncomingMessage;
245
+ response: ServerResponse;
246
+ instance: Hocuspocus;
247
+ }
248
+ export interface onUpgradePayload {
249
+ request: IncomingMessage;
250
+ socket: any;
251
+ head: any;
252
+ instance: Hocuspocus;
253
+ }
254
+ export interface onListenPayload {
255
+ instance: Hocuspocus;
256
+ configuration: Configuration;
257
+ port: number;
258
+ }
259
+ export interface onDestroyPayload {
260
+ instance: Hocuspocus;
261
+ }
262
+ export interface onConfigurePayload {
263
+ instance: Hocuspocus;
264
+ configuration: Configuration;
265
+ version: string;
266
+ }
267
+ export interface DirectConnection {
268
+ transact(transaction: (document: Document) => void): Promise<void>;
269
+ disconnect(): void;
270
+ }
@@ -0,0 +1,8 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ import { IncomingMessage } from 'http';
4
+ import { URLSearchParams } from 'url';
5
+ /**
6
+ * Get parameters by the given request
7
+ */
8
+ export declare function getParameters(request?: Pick<IncomingMessage, 'url'>): URLSearchParams;
@@ -1,11 +1,11 @@
1
- import { Doc } from 'yjs';
2
- import { Schema } from '@tiptap/pm/model';
3
- import { Transformer } from './types';
4
- declare class Prosemirror implements Transformer {
5
- defaultSchema: Schema;
6
- schema(schema: Schema): Prosemirror;
7
- fromYdoc(document: Doc, fieldName?: string | Array<string>): any;
8
- toYdoc(document: any, fieldName?: string | Array<string>, schema?: Schema): Doc;
9
- }
10
- export declare const ProsemirrorTransformer: Prosemirror;
11
- export {};
1
+ import { Doc } from 'yjs';
2
+ import { Schema } from '@tiptap/pm/model';
3
+ import { Transformer } from './types.js';
4
+ declare class Prosemirror implements Transformer {
5
+ defaultSchema: Schema;
6
+ schema(schema: Schema): Prosemirror;
7
+ fromYdoc(document: Doc, fieldName?: string | Array<string>): any;
8
+ toYdoc(document: any, fieldName?: string | Array<string>, schema?: Schema): Doc;
9
+ }
10
+ export declare const ProsemirrorTransformer: Prosemirror;
11
+ export {};
@@ -1,10 +1,10 @@
1
- import { Doc } from 'yjs';
2
- import { Extensions } from '@tiptap/core';
3
- import { Transformer } from './types';
4
- export declare class Tiptap implements Transformer {
5
- defaultExtensions: Extensions;
6
- extensions(extensions: Extensions): Tiptap;
7
- fromYdoc(document: Doc, fieldName?: string | Array<string>): any;
8
- toYdoc(document: any, fieldName?: string | Array<string>, extensions?: Extensions): Doc;
9
- }
10
- export declare const TiptapTransformer: Tiptap;
1
+ import { Doc } from 'yjs';
2
+ import { Extensions } from '@tiptap/core';
3
+ import { Transformer } from './types.js';
4
+ export declare class Tiptap implements Transformer {
5
+ defaultExtensions: Extensions;
6
+ extensions(extensions: Extensions): Tiptap;
7
+ fromYdoc(document: Doc, fieldName?: string | Array<string>): any;
8
+ toYdoc(document: any, fieldName?: string | Array<string>, extensions?: Extensions): Doc;
9
+ }
10
+ export declare const TiptapTransformer: Tiptap;
@@ -1,3 +1,3 @@
1
- export * from './Prosemirror';
2
- export * from './Tiptap';
3
- export * from './types';
1
+ export * from './Prosemirror.js';
2
+ export * from './Tiptap.js';
3
+ export * from './types.js';
@@ -1,5 +1,5 @@
1
- import { Doc } from 'yjs';
2
- export interface Transformer {
3
- fromYdoc: (document: Doc, fieldName?: string | Array<string>) => any;
4
- toYdoc: (document: any, fieldName: string) => Doc;
5
- }
1
+ import { Doc } from 'yjs';
2
+ export interface Transformer {
3
+ fromYdoc: (document: Doc, fieldName?: string | Array<string>) => any;
4
+ toYdoc: (document: any, fieldName: string) => Doc;
5
+ }
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1 +1 @@
1
- export {};
1
+ export {};