@fluidframework/container-loader 2.0.0-internal.1.2.0.93071 → 2.0.0-internal.1.2.2

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 (58) hide show
  1. package/dist/catchUpMonitor.d.ts +6 -17
  2. package/dist/catchUpMonitor.d.ts.map +1 -1
  3. package/dist/catchUpMonitor.js +5 -36
  4. package/dist/catchUpMonitor.js.map +1 -1
  5. package/dist/connectionManager.d.ts.map +1 -1
  6. package/dist/connectionManager.js +3 -6
  7. package/dist/connectionManager.js.map +1 -1
  8. package/dist/connectionStateHandler.d.ts +80 -26
  9. package/dist/connectionStateHandler.d.ts.map +1 -1
  10. package/dist/connectionStateHandler.js +170 -89
  11. package/dist/connectionStateHandler.js.map +1 -1
  12. package/dist/container.d.ts +12 -11
  13. package/dist/container.d.ts.map +1 -1
  14. package/dist/container.js +76 -100
  15. package/dist/container.js.map +1 -1
  16. package/dist/containerStorageAdapter.d.ts +10 -24
  17. package/dist/containerStorageAdapter.d.ts.map +1 -1
  18. package/dist/containerStorageAdapter.js +50 -16
  19. package/dist/containerStorageAdapter.js.map +1 -1
  20. package/dist/deltaManager.js +4 -4
  21. package/dist/deltaManager.js.map +1 -1
  22. package/dist/packageVersion.d.ts +1 -1
  23. package/dist/packageVersion.d.ts.map +1 -1
  24. package/dist/packageVersion.js +1 -1
  25. package/dist/packageVersion.js.map +1 -1
  26. package/lib/catchUpMonitor.d.ts +6 -17
  27. package/lib/catchUpMonitor.d.ts.map +1 -1
  28. package/lib/catchUpMonitor.js +5 -35
  29. package/lib/catchUpMonitor.js.map +1 -1
  30. package/lib/connectionManager.d.ts.map +1 -1
  31. package/lib/connectionManager.js +3 -6
  32. package/lib/connectionManager.js.map +1 -1
  33. package/lib/connectionStateHandler.d.ts +80 -26
  34. package/lib/connectionStateHandler.d.ts.map +1 -1
  35. package/lib/connectionStateHandler.js +170 -90
  36. package/lib/connectionStateHandler.js.map +1 -1
  37. package/lib/container.d.ts +12 -11
  38. package/lib/container.d.ts.map +1 -1
  39. package/lib/container.js +77 -101
  40. package/lib/container.js.map +1 -1
  41. package/lib/containerStorageAdapter.d.ts +10 -24
  42. package/lib/containerStorageAdapter.d.ts.map +1 -1
  43. package/lib/containerStorageAdapter.js +50 -15
  44. package/lib/containerStorageAdapter.js.map +1 -1
  45. package/lib/deltaManager.js +4 -4
  46. package/lib/deltaManager.js.map +1 -1
  47. package/lib/packageVersion.d.ts +1 -1
  48. package/lib/packageVersion.d.ts.map +1 -1
  49. package/lib/packageVersion.js +1 -1
  50. package/lib/packageVersion.js.map +1 -1
  51. package/package.json +11 -11
  52. package/src/catchUpMonitor.ts +7 -47
  53. package/src/connectionManager.ts +3 -5
  54. package/src/connectionStateHandler.ts +231 -106
  55. package/src/container.ts +89 -118
  56. package/src/containerStorageAdapter.ts +64 -15
  57. package/src/deltaManager.ts +4 -4
  58. package/src/packageVersion.ts +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluidframework/container-loader",
3
- "version": "2.0.0-internal.1.2.0.93071",
3
+ "version": "2.0.0-internal.1.2.2",
4
4
  "description": "Fluid container loader",
5
5
  "homepage": "https://fluidframework.com",
6
6
  "repository": {
@@ -63,14 +63,14 @@
63
63
  "dependencies": {
64
64
  "@fluidframework/common-definitions": "^0.20.1",
65
65
  "@fluidframework/common-utils": "^1.0.0",
66
- "@fluidframework/container-definitions": "2.0.0-internal.1.2.0.93071",
67
- "@fluidframework/container-utils": "2.0.0-internal.1.2.0.93071",
68
- "@fluidframework/core-interfaces": "2.0.0-internal.1.2.0.93071",
69
- "@fluidframework/driver-definitions": "2.0.0-internal.1.2.0.93071",
70
- "@fluidframework/driver-utils": "2.0.0-internal.1.2.0.93071",
71
- "@fluidframework/protocol-base": "^0.1037.2000-91174",
66
+ "@fluidframework/container-definitions": "^2.0.0-internal.1.2.2",
67
+ "@fluidframework/container-utils": "^2.0.0-internal.1.2.2",
68
+ "@fluidframework/core-interfaces": "^2.0.0-internal.1.2.2",
69
+ "@fluidframework/driver-definitions": "^2.0.0-internal.1.2.2",
70
+ "@fluidframework/driver-utils": "^2.0.0-internal.1.2.2",
71
+ "@fluidframework/protocol-base": "^0.1037.2001",
72
72
  "@fluidframework/protocol-definitions": "^1.0.0",
73
- "@fluidframework/telemetry-utils": "2.0.0-internal.1.2.0.93071",
73
+ "@fluidframework/telemetry-utils": "^2.0.0-internal.1.2.2",
74
74
  "abort-controller": "^3.0.0",
75
75
  "double-ended-queue": "^2.1.0-0",
76
76
  "lodash": "^4.17.21",
@@ -81,9 +81,9 @@
81
81
  "@fluidframework/build-common": "^1.0.0",
82
82
  "@fluidframework/build-tools": "^0.4.4000",
83
83
  "@fluidframework/container-loader-previous": "npm:@fluidframework/container-loader@^1.0.0",
84
- "@fluidframework/eslint-config-fluid": "^0.28.2000",
85
- "@fluidframework/mocha-test-setup": "2.0.0-internal.1.2.0.93071",
86
- "@fluidframework/test-loader-utils": "2.0.0-internal.1.2.0.93071",
84
+ "@fluidframework/eslint-config-fluid": "^1.0.0",
85
+ "@fluidframework/mocha-test-setup": "^2.0.0-internal.1.2.2",
86
+ "@fluidframework/test-loader-utils": "^2.0.0-internal.1.2.2",
87
87
  "@microsoft/api-extractor": "^7.22.2",
88
88
  "@rushstack/eslint-config": "^2.5.1",
89
89
  "@types/double-ended-queue": "^2.1.0",
@@ -3,34 +3,29 @@
3
3
  * Licensed under the MIT License.
4
4
  */
5
5
 
6
- import { IDisposable, IEvent } from "@fluidframework/common-definitions";
7
- import { assert, TypedEventEmitter } from "@fluidframework/common-utils";
6
+ import { IDisposable } from "@fluidframework/common-definitions";
7
+ import { assert } from "@fluidframework/common-utils";
8
8
  import { IDeltaManager } from "@fluidframework/container-definitions";
9
9
  import { ISequencedDocumentMessage } from "@fluidframework/protocol-definitions";
10
10
 
11
- /** @see ICatchUpMonitor for usage */
11
+ /** @see CatchUpMonitor for usage */
12
12
  type CaughtUpListener = () => void;
13
13
 
14
- /** @see ICatchUpMonitor for usage */
15
- export interface ICatchUpMonitorEvents extends IEvent {
16
- (event: "caughtUp", listener: CaughtUpListener): void;
17
- }
18
-
19
14
  /** Monitor that emits an event when a Container has caught up to a given point in the op stream */
20
- export interface ICatchUpMonitor extends TypedEventEmitter<ICatchUpMonitorEvents>, IDisposable { }
15
+ export type ICatchUpMonitor = IDisposable;
21
16
 
22
17
  /**
23
18
  * Monitors a Container's DeltaManager, notifying listeners when all ops have been processed
24
19
  * that were known at the time the monitor was created.
25
20
  */
26
- export class CatchUpMonitor extends TypedEventEmitter<ICatchUpMonitorEvents> implements ICatchUpMonitor {
21
+ export class CatchUpMonitor implements ICatchUpMonitor {
27
22
  private readonly targetSeqNumber: number;
28
23
  private caughtUp: boolean = false;
29
24
 
30
25
  private readonly opHandler = (message: Pick<ISequencedDocumentMessage, "sequenceNumber">) => {
31
26
  if (!this.caughtUp && message.sequenceNumber >= this.targetSeqNumber) {
32
27
  this.caughtUp = true;
33
- this.emit("caughtUp");
28
+ this.listener();
34
29
  }
35
30
  };
36
31
 
@@ -39,9 +34,8 @@ export class CatchUpMonitor extends TypedEventEmitter<ICatchUpMonitorEvents> imp
39
34
  */
40
35
  constructor(
41
36
  private readonly deltaManager: IDeltaManager<any, any>,
37
+ private readonly listener: CaughtUpListener,
42
38
  ) {
43
- super();
44
-
45
39
  this.targetSeqNumber = this.deltaManager.lastKnownSeqNumber;
46
40
 
47
41
  assert(this.targetSeqNumber >= this.deltaManager.lastSequenceNumber,
@@ -51,16 +45,6 @@ export class CatchUpMonitor extends TypedEventEmitter<ICatchUpMonitorEvents> imp
51
45
 
52
46
  // Simulate the last processed op to set caughtUp in case we already are
53
47
  this.opHandler({ sequenceNumber: this.deltaManager.lastSequenceNumber });
54
-
55
- // If a listener is added after we are already caught up, notify that new listener immediately
56
- this.on("newListener", (event: string, listener) => {
57
- if (event === "caughtUp") {
58
- const caughtUpListener = listener as CaughtUpListener;
59
- if (this.caughtUp) {
60
- caughtUpListener();
61
- }
62
- }
63
- });
64
48
  }
65
49
 
66
50
  public disposed: boolean = false;
@@ -70,30 +54,6 @@ export class CatchUpMonitor extends TypedEventEmitter<ICatchUpMonitorEvents> imp
70
54
  }
71
55
  this.disposed = true;
72
56
 
73
- this.removeAllListeners();
74
57
  this.deltaManager.off("op", this.opHandler);
75
58
  }
76
59
  }
77
-
78
- /** Monitor that always notifies listeners immediately */
79
- export class ImmediateCatchUpMonitor extends TypedEventEmitter<ICatchUpMonitorEvents> implements ICatchUpMonitor {
80
- constructor() {
81
- super();
82
- this.on("newListener", (event: string, listener) => {
83
- if (event === "caughtUp") {
84
- const caughtUpListener = listener as CaughtUpListener;
85
- caughtUpListener();
86
- }
87
- });
88
- }
89
-
90
- public disposed: boolean = false;
91
- public dispose() {
92
- if (this.disposed) {
93
- return;
94
- }
95
- this.disposed = true;
96
-
97
- this.removeAllListeners();
98
- }
99
- }
@@ -234,15 +234,13 @@ export class ConnectionManager implements IConnectionManager {
234
234
  * about current or last connection (if there is no connection at the moment)
235
235
  */
236
236
  public get connectionProps(): ITelemetryProperties {
237
- if (this.connection !== undefined) {
238
- return this._connectionProps;
239
- } else {
240
- return {
237
+ return this.connection !== undefined
238
+ ? this._connectionProps
239
+ : {
241
240
  ...this._connectionProps,
242
241
  // Report how many ops this client sent in last disconnected session
243
242
  sentOps: this.clientSequenceNumber,
244
243
  };
245
- }
246
244
  }
247
245
 
248
246
  public shouldJoinWrite(): boolean {