@hocuspocus/extension-redis 2.0.0-alpha.0 → 2.0.0-beta.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/dist/packages/extension-webhook/src/index.d.ts +1 -2
- package/dist/packages/provider/src/HocuspocusProvider.d.ts +4 -2
- package/dist/packages/provider/src/OutgoingMessages/CloseMessage.d.ts +8 -0
- package/dist/packages/provider/src/types.d.ts +2 -1
- package/dist/packages/server/src/Connection.d.ts +5 -1
- package/dist/packages/server/src/types.d.ts +2 -1
- package/dist/tests/server/onClose.d.ts +1 -0
- package/package.json +2 -2
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
import { Extension, onChangePayload, onConnectPayload, onLoadDocumentPayload, onDisconnectPayload } from '@hocuspocus/server';
|
|
3
3
|
import { Doc } from 'yjs';
|
|
4
4
|
import { Transformer } from '@hocuspocus/transformer';
|
|
5
|
-
import { AxiosResponse } from 'axios';
|
|
6
5
|
export declare enum Events {
|
|
7
6
|
onChange = "change",
|
|
8
7
|
onConnect = "connect",
|
|
@@ -41,7 +40,7 @@ export declare class Webhook implements Extension {
|
|
|
41
40
|
/**
|
|
42
41
|
* Send a request to the given url containing the given data
|
|
43
42
|
*/
|
|
44
|
-
sendRequest(event: Events, payload: any): Promise<AxiosResponse<any, any>>;
|
|
43
|
+
sendRequest(event: Events, payload: any): Promise<import("axios").AxiosResponse<any, any>>;
|
|
45
44
|
/**
|
|
46
45
|
* onChange hook
|
|
47
46
|
*/
|
|
@@ -4,9 +4,9 @@ import * as mutex from 'lib0/mutex';
|
|
|
4
4
|
import type { CloseEvent, Event, MessageEvent } from 'ws';
|
|
5
5
|
import EventEmitter from './EventEmitter';
|
|
6
6
|
import { ConstructableOutgoingMessage, onAuthenticationFailedParameters, onCloseParameters, onDisconnectParameters, onMessageParameters, onOpenParameters, onOutgoingMessageParameters, onStatelessParameters, onStatusParameters, onSyncedParameters, WebSocketStatus } from './types';
|
|
7
|
-
import { HocuspocusProviderWebsocket } from './HocuspocusProviderWebsocket';
|
|
7
|
+
import { CompleteHocuspocusProviderWebsocketConfiguration, HocuspocusProviderWebsocket } from './HocuspocusProviderWebsocket';
|
|
8
8
|
import { onAwarenessChangeParameters, onAwarenessUpdateParameters } from '.';
|
|
9
|
-
export declare type HocuspocusProviderConfiguration = Required<Pick<CompleteHocuspocusProviderConfiguration, 'name'
|
|
9
|
+
export declare type HocuspocusProviderConfiguration = Required<Pick<CompleteHocuspocusProviderConfiguration, 'name'>> & Partial<CompleteHocuspocusProviderConfiguration> & (Required<Pick<CompleteHocuspocusProviderWebsocketConfiguration, 'url'>> | Required<Pick<CompleteHocuspocusProviderConfiguration, 'websocketProvider'>>);
|
|
10
10
|
export interface CompleteHocuspocusProviderConfiguration {
|
|
11
11
|
/**
|
|
12
12
|
* The identifier/name of your document
|
|
@@ -70,6 +70,7 @@ export declare class HocuspocusProvider extends EventEmitter {
|
|
|
70
70
|
isAuthenticated: boolean;
|
|
71
71
|
mux: mutex.mutex;
|
|
72
72
|
intervals: any;
|
|
73
|
+
isConnected: boolean;
|
|
73
74
|
constructor(configuration: HocuspocusProviderConfiguration);
|
|
74
75
|
onStatus({ status }: onStatusParameters): void;
|
|
75
76
|
setConfiguration(configuration?: Partial<HocuspocusProviderConfiguration>): void;
|
|
@@ -87,6 +88,7 @@ export declare class HocuspocusProvider extends EventEmitter {
|
|
|
87
88
|
set synced(state: boolean);
|
|
88
89
|
receiveStateless(payload: string): void;
|
|
89
90
|
get isAuthenticationRequired(): boolean;
|
|
91
|
+
connect(): Promise<unknown>;
|
|
90
92
|
disconnect(): void;
|
|
91
93
|
onOpen(event: Event): Promise<void>;
|
|
92
94
|
getToken(): Promise<string | null>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as encoding from 'lib0/encoding';
|
|
2
|
+
import { MessageType, OutgoingMessageArguments } from '../types';
|
|
3
|
+
import { OutgoingMessage } from '../OutgoingMessage';
|
|
4
|
+
export declare class CloseMessage extends OutgoingMessage {
|
|
5
|
+
type: MessageType;
|
|
6
|
+
description: string;
|
|
7
|
+
get(args: Partial<OutgoingMessageArguments>): encoding.Encoder;
|
|
8
|
+
}
|
|
@@ -23,10 +23,14 @@ export declare class Connection {
|
|
|
23
23
|
* Constructor.
|
|
24
24
|
*/
|
|
25
25
|
constructor(connection: WebSocket, request: HTTPIncomingMessage, document: Document, timeout: number, socketId: string, context: any, readOnly: boolean | undefined, logger: Debugger);
|
|
26
|
+
boundClose: (event?: CloseEvent | undefined) => void;
|
|
27
|
+
boundHandleMessage: (data: Uint8Array) => void;
|
|
28
|
+
boundHandlePong: () => void;
|
|
29
|
+
handlePong(): void;
|
|
26
30
|
/**
|
|
27
31
|
* Set a callback that will be triggered when the connection is closed
|
|
28
32
|
*/
|
|
29
|
-
onClose(callback: (document: Document) => void): Connection;
|
|
33
|
+
onClose(callback: (document: Document, event?: CloseEvent) => void): Connection;
|
|
30
34
|
/**
|
|
31
35
|
* Set a callback that will be triggered when an stateless message is received
|
|
32
36
|
*/
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hocuspocus/extension-redis",
|
|
3
|
-
"version": "2.0.0-
|
|
3
|
+
"version": "2.0.0-beta.0",
|
|
4
4
|
"description": "Scale Hocuspocus horizontally with Redis",
|
|
5
5
|
"homepage": "https://hocuspocus.dev",
|
|
6
6
|
"keywords": [
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"@types/redlock": "^4.0.3"
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@hocuspocus/server": "^2.0.0-
|
|
35
|
+
"@hocuspocus/server": "^2.0.0-beta.0",
|
|
36
36
|
"ioredis": "^4.28.2",
|
|
37
37
|
"kleur": "^4.1.4",
|
|
38
38
|
"lodash.debounce": "^4.0.8",
|