@fluidframework/local-driver 0.47.0-35961 → 0.47.1

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.
@@ -22,6 +22,7 @@ export declare class LocalDocumentDeltaConnection extends DocumentDeltaConnectio
22
22
  */
23
23
  static create(tenantId: string, id: string, token: string, client: IClient, webSocketServer: core.IWebSocketServer, timeoutMs?: number): Promise<LocalDocumentDeltaConnection>;
24
24
  constructor(socket: SocketIOClient.Socket, documentId: string);
25
+ protected submitCore(type: string, messages: IDocumentMessage[]): void;
25
26
  /**
26
27
  * Submits a new delta operation to the server
27
28
  */
@@ -1 +1 @@
1
- {"version":3,"file":"localDocumentDeltaConnection.d.ts","sourceRoot":"","sources":["../src/localDocumentDeltaConnection.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EACH,OAAO,EAEP,gBAAgB,EAChB,aAAa,EAChB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,KAAK,IAAI,MAAM,sCAAsC,CAAC;AAI7D;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,uBAAuB;IACrE;;;;;;;;;OASG;WACiB,MAAM,CACtB,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,OAAO,EACf,eAAe,EAAE,IAAI,CAAC,gBAAgB,EACtC,SAAS,SAAQ,GAClB,OAAO,CAAC,4BAA4B,CAAC;gBAqB5B,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM;IAI7D;;OAEG;IACI,MAAM,CAAC,QAAQ,EAAE,gBAAgB,EAAE,GAAG,IAAI;IASjD;;OAEG;IACI,YAAY,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IAKvC;;;OAGG;IACI,gBAAgB,CAAC,gBAAgB,EAAE,MAAM;IAIhD;;;;;OAKG;IACI,UAAU,CAAC,IAAI,oBAAc,EAAE,IAAI,2BAA+C,EAAE,OAAO,EAAE,GAAG;CAY1G"}
1
+ {"version":3,"file":"localDocumentDeltaConnection.d.ts","sourceRoot":"","sources":["../src/localDocumentDeltaConnection.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EACH,OAAO,EAEP,gBAAgB,EAChB,aAAa,EAChB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,KAAK,IAAI,MAAM,sCAAsC,CAAC;AAI7D;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,uBAAuB;IACrE;;;;;;;;;OASG;WACiB,MAAM,CACtB,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,OAAO,EACf,eAAe,EAAE,IAAI,CAAC,gBAAgB,EACtC,SAAS,SAAQ,GAClB,OAAO,CAAC,4BAA4B,CAAC;gBAqB5B,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM;IAI7D,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE;IAS/D;;OAEG;IACI,MAAM,CAAC,QAAQ,EAAE,gBAAgB,EAAE,GAAG,IAAI;IAQjD;;OAEG;IACI,YAAY,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IAIvC;;;OAGG;IACI,gBAAgB,CAAC,gBAAgB,EAAE,MAAM;IAIhD;;;;;OAKG;IACI,UAAU,CAAC,IAAI,oBAAc,EAAE,IAAI,2BAA+C,EAAE,OAAO,EAAE,GAAG;CAY1G"}
@@ -43,6 +43,15 @@ class LocalDocumentDeltaConnection extends driver_base_1.DocumentDeltaConnection
43
43
  constructor(socket, documentId) {
44
44
  super(socket, documentId, new common_utils_1.TelemetryNullLogger());
45
45
  }
46
+ submitCore(type, messages) {
47
+ if (this.isBatchManagerDisabled) {
48
+ this.emitMessages(type, [messages]);
49
+ }
50
+ else {
51
+ this.submitManager.add(type, messages);
52
+ this.submitManager.drain();
53
+ }
54
+ }
46
55
  /**
47
56
  * Submits a new delta operation to the server
48
57
  */
@@ -50,16 +59,14 @@ class LocalDocumentDeltaConnection extends driver_base_1.DocumentDeltaConnection
50
59
  // We use a promise resolve to force a turn break given message processing is sync
51
60
  // eslint-disable-next-line @typescript-eslint/no-floating-promises
52
61
  Promise.resolve().then(() => {
53
- this.submitManager.add("submitOp", messages);
54
- this.submitManager.drain();
62
+ this.submitCore("submitOp", messages);
55
63
  });
56
64
  }
57
65
  /**
58
66
  * Submits a new signal to the server
59
67
  */
60
68
  submitSignal(message) {
61
- this.submitManager.add("submitSignal", message);
62
- this.submitManager.drain();
69
+ this.submitCore("submitSignal", [message]);
63
70
  }
64
71
  /**
65
72
  * Send a "disconnect" message on the socket.
@@ -1 +1 @@
1
- {"version":3,"file":"localDocumentDeltaConnection.js","sourceRoot":"","sources":["../src/localDocumentDeltaConnection.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,+DAAmE;AACnE,6DAAsE;AACtE,+EAK8C;AAI9C,MAAM,oBAAoB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAE5D;;GAEG;AACH,MAAa,4BAA6B,SAAQ,qCAAuB;IACrE;;;;;;;;;OASG;IACI,MAAM,CAAC,KAAK,CAAC,MAAM,CACtB,QAAgB,EAChB,EAAU,EACV,KAAa,EACb,MAAe,EACf,eAAsC,EACtC,SAAS,GAAG,KAAK;QAEjB,MAAM,MAAM,GAAI,eAAwC,CAAC,gBAAgB,EAAE,CAAC;QAE5E,4GAA4G;QAC5G,0EAA0E;QAC1E,MAAM,kBAAkB,GAAG,MAA0C,CAAC;QAEtE,MAAM,eAAe,GAAG,IAAI,4BAA4B,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QAEjF,MAAM,cAAc,GAAa;YAC7B,MAAM;YACN,EAAE;YACF,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ;YACR,KAAK;YACL,QAAQ,EAAE,oBAAoB;SACjC,CAAC;QACF,MAAM,eAAe,CAAC,UAAU,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;QAC5D,OAAO,eAAe,CAAC;IAC3B,CAAC;IAED,YAAY,MAA6B,EAAE,UAAkB;QACvD,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,kCAAmB,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,QAA4B;QACtC,kFAAkF;QAClF,mEAAmE;QACnE,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YACxB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YAC7C,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACI,YAAY,CAAC,OAAY;QAC5B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACI,gBAAgB,CAAC,gBAAwB;QAC5C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;IACrD,CAAC;IAED;;;;;OAKG;IACI,UAAU,CAAC,OAAe,GAAG,EAAE,OAAsB,oCAAa,CAAC,eAAe,EAAE,OAAY;QACnG,MAAM,WAAW,GAAG;YAChB,SAAS,EAAE,SAAS;YACpB,cAAc,EAAE,CAAC,CAAC;YAClB,OAAO,EAAE;gBACL,IAAI;gBACJ,IAAI;gBACJ,OAAO;aACV;SACJ,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAChD,CAAC;CACJ;AAzFD,oEAyFC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { TelemetryNullLogger } from \"@fluidframework/common-utils\";\nimport { DocumentDeltaConnection } from \"@fluidframework/driver-base\";\nimport {\n IClient,\n IConnect,\n IDocumentMessage,\n NackErrorType,\n} from \"@fluidframework/protocol-definitions\";\nimport { LocalWebSocketServer } from \"@fluidframework/server-local-server\";\nimport * as core from \"@fluidframework/server-services-core\";\n\nconst testProtocolVersions = [\"^0.3.0\", \"^0.2.0\", \"^0.1.0\"];\n\n/**\n * Represents a connection to a stream of delta updates\n */\nexport class LocalDocumentDeltaConnection extends DocumentDeltaConnection {\n /**\n * Create a LocalDocumentDeltaConnection\n * Handle initial messages, contents or signals if they were in queue\n *\n * @param tenantId - the ID of the tenant\n * @param id - document ID\n * @param token - authorization token for storage service\n * @param client - information about the client\n * @param webSocketServer - web socket server to create connection\n */\n public static async create(\n tenantId: string,\n id: string,\n token: string,\n client: IClient,\n webSocketServer: core.IWebSocketServer,\n timeoutMs = 60000,\n ): Promise<LocalDocumentDeltaConnection> {\n const socket = (webSocketServer as LocalWebSocketServer).createConnection();\n\n // Cast LocalWebSocket to SocketIOClient.Socket which is the socket that the base class needs. This is hacky\n // but should be fine because this delta connection is for local use only.\n const socketWithListener = socket as unknown as SocketIOClient.Socket;\n\n const deltaConnection = new LocalDocumentDeltaConnection(socketWithListener, id);\n\n const connectMessage: IConnect = {\n client,\n id,\n mode: client.mode,\n tenantId,\n token, // Token is going to indicate tenant level information, etc...\n versions: testProtocolVersions,\n };\n await deltaConnection.initialize(connectMessage, timeoutMs);\n return deltaConnection;\n }\n\n constructor(socket: SocketIOClient.Socket, documentId: string) {\n super(socket, documentId, new TelemetryNullLogger());\n }\n\n /**\n * Submits a new delta operation to the server\n */\n public submit(messages: IDocumentMessage[]): void {\n // We use a promise resolve to force a turn break given message processing is sync\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n Promise.resolve().then(() => {\n this.submitManager.add(\"submitOp\", messages);\n this.submitManager.drain();\n });\n }\n\n /**\n * Submits a new signal to the server\n */\n public submitSignal(message: any): void {\n this.submitManager.add(\"submitSignal\", message);\n this.submitManager.drain();\n }\n\n /**\n * Send a \"disconnect\" message on the socket.\n * @param disconnectReason - The reason of the disconnection.\n */\n public disconnectClient(disconnectReason: string) {\n this.socket.emit(\"disconnect\", disconnectReason);\n }\n\n /**\n * * Sends a \"nack\" message on the socket.\n * @param code - An error code number that represents the error. It will be a valid HTTP error code.\n * @param type - Type of the Nack.\n * @param message - A message about the nack for debugging/logging/telemetry purposes.\n */\n public nackClient(code: number = 400, type: NackErrorType = NackErrorType.ThrottlingError, message: any) {\n const nackMessage = {\n operation: undefined,\n sequenceNumber: -1,\n content: {\n code,\n type,\n message,\n },\n };\n this.socket.emit(\"nack\", \"\", [nackMessage]);\n }\n}\n"]}
1
+ {"version":3,"file":"localDocumentDeltaConnection.js","sourceRoot":"","sources":["../src/localDocumentDeltaConnection.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,+DAAmE;AACnE,6DAAsE;AACtE,+EAK8C;AAI9C,MAAM,oBAAoB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAE5D;;GAEG;AACH,MAAa,4BAA6B,SAAQ,qCAAuB;IACrE;;;;;;;;;OASG;IACI,MAAM,CAAC,KAAK,CAAC,MAAM,CACtB,QAAgB,EAChB,EAAU,EACV,KAAa,EACb,MAAe,EACf,eAAsC,EACtC,SAAS,GAAG,KAAK;QAEjB,MAAM,MAAM,GAAI,eAAwC,CAAC,gBAAgB,EAAE,CAAC;QAE5E,4GAA4G;QAC5G,0EAA0E;QAC1E,MAAM,kBAAkB,GAAG,MAA0C,CAAC;QAEtE,MAAM,eAAe,GAAG,IAAI,4BAA4B,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QAEjF,MAAM,cAAc,GAAa;YAC7B,MAAM;YACN,EAAE;YACF,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ;YACR,KAAK;YACL,QAAQ,EAAE,oBAAoB;SACjC,CAAC;QACF,MAAM,eAAe,CAAC,UAAU,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;QAC5D,OAAO,eAAe,CAAC;IAC3B,CAAC;IAED,YAAY,MAA6B,EAAE,UAAkB;QACvD,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,kCAAmB,EAAE,CAAC,CAAC;IAC3D,CAAC;IAES,UAAU,CAAC,IAAY,EAAE,QAA4B;QAC3D,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC7B,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;SACvC;aAAM;YACH,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACvC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;SAC9B;IACL,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,QAA4B;QACtC,kFAAkF;QAClF,mEAAmE;QACnE,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YACxB,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACI,YAAY,CAAC,OAAY;QAC5B,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED;;;OAGG;IACI,gBAAgB,CAAC,gBAAwB;QAC5C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;IACrD,CAAC;IAED;;;;;OAKG;IACI,UAAU,CAAC,OAAe,GAAG,EAAE,OAAsB,oCAAa,CAAC,eAAe,EAAE,OAAY;QACnG,MAAM,WAAW,GAAG;YAChB,SAAS,EAAE,SAAS;YACpB,cAAc,EAAE,CAAC,CAAC;YAClB,OAAO,EAAE;gBACL,IAAI;gBACJ,IAAI;gBACJ,OAAO;aACV;SACJ,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAChD,CAAC;CACJ;AAhGD,oEAgGC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { TelemetryNullLogger } from \"@fluidframework/common-utils\";\nimport { DocumentDeltaConnection } from \"@fluidframework/driver-base\";\nimport {\n IClient,\n IConnect,\n IDocumentMessage,\n NackErrorType,\n} from \"@fluidframework/protocol-definitions\";\nimport { LocalWebSocketServer } from \"@fluidframework/server-local-server\";\nimport * as core from \"@fluidframework/server-services-core\";\n\nconst testProtocolVersions = [\"^0.3.0\", \"^0.2.0\", \"^0.1.0\"];\n\n/**\n * Represents a connection to a stream of delta updates\n */\nexport class LocalDocumentDeltaConnection extends DocumentDeltaConnection {\n /**\n * Create a LocalDocumentDeltaConnection\n * Handle initial messages, contents or signals if they were in queue\n *\n * @param tenantId - the ID of the tenant\n * @param id - document ID\n * @param token - authorization token for storage service\n * @param client - information about the client\n * @param webSocketServer - web socket server to create connection\n */\n public static async create(\n tenantId: string,\n id: string,\n token: string,\n client: IClient,\n webSocketServer: core.IWebSocketServer,\n timeoutMs = 60000,\n ): Promise<LocalDocumentDeltaConnection> {\n const socket = (webSocketServer as LocalWebSocketServer).createConnection();\n\n // Cast LocalWebSocket to SocketIOClient.Socket which is the socket that the base class needs. This is hacky\n // but should be fine because this delta connection is for local use only.\n const socketWithListener = socket as unknown as SocketIOClient.Socket;\n\n const deltaConnection = new LocalDocumentDeltaConnection(socketWithListener, id);\n\n const connectMessage: IConnect = {\n client,\n id,\n mode: client.mode,\n tenantId,\n token, // Token is going to indicate tenant level information, etc...\n versions: testProtocolVersions,\n };\n await deltaConnection.initialize(connectMessage, timeoutMs);\n return deltaConnection;\n }\n\n constructor(socket: SocketIOClient.Socket, documentId: string) {\n super(socket, documentId, new TelemetryNullLogger());\n }\n\n protected submitCore(type: string, messages: IDocumentMessage[]) {\n if (this.isBatchManagerDisabled) {\n this.emitMessages(type, [messages]);\n } else {\n this.submitManager.add(type, messages);\n this.submitManager.drain();\n }\n }\n\n /**\n * Submits a new delta operation to the server\n */\n public submit(messages: IDocumentMessage[]): void {\n // We use a promise resolve to force a turn break given message processing is sync\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n Promise.resolve().then(() => {\n this.submitCore(\"submitOp\", messages);\n });\n }\n\n /**\n * Submits a new signal to the server\n */\n public submitSignal(message: any): void {\n this.submitCore(\"submitSignal\", [message]);\n }\n\n /**\n * Send a \"disconnect\" message on the socket.\n * @param disconnectReason - The reason of the disconnection.\n */\n public disconnectClient(disconnectReason: string) {\n this.socket.emit(\"disconnect\", disconnectReason);\n }\n\n /**\n * * Sends a \"nack\" message on the socket.\n * @param code - An error code number that represents the error. It will be a valid HTTP error code.\n * @param type - Type of the Nack.\n * @param message - A message about the nack for debugging/logging/telemetry purposes.\n */\n public nackClient(code: number = 400, type: NackErrorType = NackErrorType.ThrottlingError, message: any) {\n const nackMessage = {\n operation: undefined,\n sequenceNumber: -1,\n content: {\n code,\n type,\n message,\n },\n };\n this.socket.emit(\"nack\", \"\", [nackMessage]);\n }\n}\n"]}
@@ -5,5 +5,5 @@
5
5
  * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY
6
6
  */
7
7
  export declare const pkgName = "@fluidframework/local-driver";
8
- export declare const pkgVersion = "0.47.0-35961";
8
+ export declare const pkgVersion = "0.47.1";
9
9
  //# sourceMappingURL=packageVersion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"packageVersion.d.ts","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,OAAO,iCAAiC,CAAC;AACtD,eAAO,MAAM,UAAU,iBAAiB,CAAC"}
1
+ {"version":3,"file":"packageVersion.d.ts","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,OAAO,iCAAiC,CAAC;AACtD,eAAO,MAAM,UAAU,WAAW,CAAC"}
@@ -8,5 +8,5 @@
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.pkgVersion = exports.pkgName = void 0;
10
10
  exports.pkgName = "@fluidframework/local-driver";
11
- exports.pkgVersion = "0.47.0-35961";
11
+ exports.pkgVersion = "0.47.1";
12
12
  //# sourceMappingURL=packageVersion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEU,QAAA,OAAO,GAAG,8BAA8B,CAAC;AACzC,QAAA,UAAU,GAAG,cAAc,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n *\n * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY\n */\n\nexport const pkgName = \"@fluidframework/local-driver\";\nexport const pkgVersion = \"0.47.0-35961\";\n"]}
1
+ {"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEU,QAAA,OAAO,GAAG,8BAA8B,CAAC;AACzC,QAAA,UAAU,GAAG,QAAQ,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n *\n * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY\n */\n\nexport const pkgName = \"@fluidframework/local-driver\";\nexport const pkgVersion = \"0.47.1\";\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluidframework/local-driver",
3
- "version": "0.47.0-35961",
3
+ "version": "0.47.1",
4
4
  "description": "Fluid local driver",
5
5
  "homepage": "https://fluidframework.com",
6
6
  "repository": "https://github.com/microsoft/FluidFramework",
@@ -55,22 +55,22 @@
55
55
  "@fluidframework/common-definitions": "^0.20.1",
56
56
  "@fluidframework/common-utils": "^0.32.1",
57
57
  "@fluidframework/core-interfaces": "^0.39.7",
58
- "@fluidframework/driver-base": "0.47.0-35961",
58
+ "@fluidframework/driver-base": "^0.47.1",
59
59
  "@fluidframework/driver-definitions": "^0.39.6",
60
- "@fluidframework/driver-utils": "0.47.0-35961",
60
+ "@fluidframework/driver-utils": "^0.47.1",
61
61
  "@fluidframework/protocol-definitions": "^0.1024.0",
62
- "@fluidframework/routerlicious-driver": "0.47.0-35961",
63
- "@fluidframework/server-local-server": "^0.1030.0-0",
64
- "@fluidframework/server-services-client": "^0.1030.0-0",
65
- "@fluidframework/server-services-core": "^0.1030.0-0",
66
- "@fluidframework/server-test-utils": "^0.1030.0-0",
62
+ "@fluidframework/routerlicious-driver": "^0.47.1",
63
+ "@fluidframework/server-local-server": "^0.1030.0",
64
+ "@fluidframework/server-services-client": "^0.1030.0",
65
+ "@fluidframework/server-services-core": "^0.1030.0",
66
+ "@fluidframework/server-test-utils": "^0.1030.0",
67
67
  "jsrsasign": "^10.2.0",
68
68
  "uuid": "^8.3.1"
69
69
  },
70
70
  "devDependencies": {
71
- "@fluidframework/build-common": "^0.22.0",
71
+ "@fluidframework/build-common": "^0.23.0",
72
72
  "@fluidframework/eslint-config-fluid": "^0.23.0",
73
- "@fluidframework/mocha-test-setup": "0.47.0-35961",
73
+ "@fluidframework/mocha-test-setup": "^0.47.1",
74
74
  "@types/jsrsasign": "^8.0.8",
75
75
  "@types/mocha": "^8.2.2",
76
76
  "@types/node": "^12.19.0",
@@ -62,6 +62,15 @@ export class LocalDocumentDeltaConnection extends DocumentDeltaConnection {
62
62
  super(socket, documentId, new TelemetryNullLogger());
63
63
  }
64
64
 
65
+ protected submitCore(type: string, messages: IDocumentMessage[]) {
66
+ if (this.isBatchManagerDisabled) {
67
+ this.emitMessages(type, [messages]);
68
+ } else {
69
+ this.submitManager.add(type, messages);
70
+ this.submitManager.drain();
71
+ }
72
+ }
73
+
65
74
  /**
66
75
  * Submits a new delta operation to the server
67
76
  */
@@ -69,8 +78,7 @@ export class LocalDocumentDeltaConnection extends DocumentDeltaConnection {
69
78
  // We use a promise resolve to force a turn break given message processing is sync
70
79
  // eslint-disable-next-line @typescript-eslint/no-floating-promises
71
80
  Promise.resolve().then(() => {
72
- this.submitManager.add("submitOp", messages);
73
- this.submitManager.drain();
81
+ this.submitCore("submitOp", messages);
74
82
  });
75
83
  }
76
84
 
@@ -78,8 +86,7 @@ export class LocalDocumentDeltaConnection extends DocumentDeltaConnection {
78
86
  * Submits a new signal to the server
79
87
  */
80
88
  public submitSignal(message: any): void {
81
- this.submitManager.add("submitSignal", message);
82
- this.submitManager.drain();
89
+ this.submitCore("submitSignal", [message]);
83
90
  }
84
91
 
85
92
  /**
@@ -6,4 +6,4 @@
6
6
  */
7
7
 
8
8
  export const pkgName = "@fluidframework/local-driver";
9
- export const pkgVersion = "0.47.0-35961";
9
+ export const pkgVersion = "0.47.1";