@fluidframework/replay-driver 2.0.0-internal.7.0.1 → 2.0.0-internal.7.1.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # @fluidframework/replay-driver
2
2
 
3
+ ## 2.0.0-internal.7.1.0
4
+
5
+ Dependency updates only.
6
+
3
7
  ## 2.0.0-internal.7.0.0
4
8
 
5
9
  ### Major Changes
@@ -1,4 +1,12 @@
1
1
  {
2
2
  "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json",
3
- "extends": "@fluidframework/build-common/api-extractor-common-report.json"
3
+ "extends": "@fluidframework/build-common/api-extractor-base.json",
4
+ "messages": {
5
+ "extractorMessageReporting": {
6
+ "ae-missing-release-tag": {
7
+ // TODO: Fix violations and remove this rule override
8
+ "logLevel": "none"
9
+ }
10
+ }
11
+ }
4
12
  }
@@ -0,0 +1,150 @@
1
+ ## API Report File for "@fluidframework/replay-driver"
2
+
3
+ > Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
4
+
5
+ ```ts
6
+
7
+ import * as api from '@fluidframework/protocol-definitions';
8
+ import * as api_2 from '@fluidframework/driver-definitions';
9
+ import { IClient } from '@fluidframework/protocol-definitions';
10
+ import { IDocumentService } from '@fluidframework/driver-definitions';
11
+ import { IDocumentServiceFactory } from '@fluidframework/driver-definitions';
12
+ import { IDocumentStorageService } from '@fluidframework/driver-definitions';
13
+ import { IResolvedUrl } from '@fluidframework/driver-definitions';
14
+ import { ISnapshotTree } from '@fluidframework/protocol-definitions';
15
+ import { ISummaryContext } from '@fluidframework/driver-definitions';
16
+ import { ISummaryTree } from '@fluidframework/protocol-definitions';
17
+ import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
18
+ import { ITelemetryLoggerExt } from '@fluidframework/telemetry-utils';
19
+ import { ITree } from '@fluidframework/protocol-definitions';
20
+ import { IVersion } from '@fluidframework/protocol-definitions';
21
+
22
+ // @public (undocumented)
23
+ export class FileSnapshotReader extends ReadDocumentStorageServiceBase implements IDocumentStorageService {
24
+ constructor(json: IFileSnapshot);
25
+ // (undocumented)
26
+ protected blobs: Map<string, ArrayBufferLike>;
27
+ // (undocumented)
28
+ protected readonly commits: {
29
+ [key: string]: ITree;
30
+ };
31
+ // (undocumented)
32
+ protected docId?: string;
33
+ // (undocumented)
34
+ protected docTree: ISnapshotTree;
35
+ // (undocumented)
36
+ protected static readonly FileStorageVersionTreeId = "FileStorageTreeId";
37
+ // (undocumented)
38
+ getSnapshotTree(versionRequested?: IVersion): Promise<ISnapshotTree | null>;
39
+ // (undocumented)
40
+ getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
41
+ // (undocumented)
42
+ readBlob(blobId: string): Promise<ArrayBufferLike>;
43
+ // (undocumented)
44
+ protected readonly trees: {
45
+ [key: string]: ISnapshotTree;
46
+ };
47
+ }
48
+
49
+ // @public
50
+ export interface IFileSnapshot {
51
+ // (undocumented)
52
+ commits: {
53
+ [key: string]: ITree;
54
+ };
55
+ // (undocumented)
56
+ tree: ITree;
57
+ }
58
+
59
+ // @public (undocumented)
60
+ export class OpStorage extends ReadDocumentStorageServiceBase {
61
+ // (undocumented)
62
+ getSnapshotTree(version?: IVersion): Promise<ISnapshotTree | null>;
63
+ // (undocumented)
64
+ getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
65
+ // (undocumented)
66
+ readBlob(blobId: string): Promise<ArrayBufferLike>;
67
+ }
68
+
69
+ // @public
70
+ export abstract class ReadDocumentStorageServiceBase implements IDocumentStorageService {
71
+ // (undocumented)
72
+ createBlob(file: ArrayBufferLike): Promise<api.ICreateBlobResponse>;
73
+ // (undocumented)
74
+ downloadSummary(handle: api.ISummaryHandle): Promise<api.ISummaryTree>;
75
+ // (undocumented)
76
+ abstract getSnapshotTree(version?: api.IVersion): Promise<api.ISnapshotTree | null>;
77
+ // (undocumented)
78
+ abstract getVersions(versionId: string | null, count: number): Promise<api.IVersion[]>;
79
+ // (undocumented)
80
+ abstract readBlob(blobId: string): Promise<ArrayBufferLike>;
81
+ // (undocumented)
82
+ get repositoryUrl(): string;
83
+ // (undocumented)
84
+ uploadSummaryWithContext(summary: api.ISummaryTree, context: ISummaryContext): Promise<string>;
85
+ }
86
+
87
+ // @public
88
+ export abstract class ReplayController extends ReadDocumentStorageServiceBase {
89
+ abstract fetchTo(currentOp: number): number | undefined;
90
+ abstract getStartingOpSequence(): Promise<number>;
91
+ abstract initStorage(documentService: IDocumentService): Promise<boolean>;
92
+ abstract isDoneFetch(currentOp: number, lastTimeStamp?: number): boolean;
93
+ abstract replay(emitter: (op: api.ISequencedDocumentMessage[]) => void, fetchedOps: api.ISequencedDocumentMessage[]): Promise<void>;
94
+ }
95
+
96
+ // @public
97
+ export class ReplayDocumentService implements api_2.IDocumentService {
98
+ constructor(controller: api_2.IDocumentStorageService, deltaStorage: api_2.IDocumentDeltaConnection);
99
+ connectToDeltaStorage(): Promise<api_2.IDocumentDeltaStorageService>;
100
+ connectToDeltaStream(client: IClient): Promise<api_2.IDocumentDeltaConnection>;
101
+ connectToStorage(): Promise<api_2.IDocumentStorageService>;
102
+ // (undocumented)
103
+ static create(documentService: api_2.IDocumentService, controller: ReplayController): Promise<api_2.IDocumentService>;
104
+ // (undocumented)
105
+ dispose(): void;
106
+ // (undocumented)
107
+ get resolvedUrl(): api_2.IResolvedUrl;
108
+ }
109
+
110
+ // @public (undocumented)
111
+ export class ReplayDocumentServiceFactory implements IDocumentServiceFactory {
112
+ constructor(documentServiceFactory: IDocumentServiceFactory, controller: ReplayController);
113
+ // (undocumented)
114
+ static create(from: number, to: number, documentServiceFactory: IDocumentServiceFactory): ReplayDocumentServiceFactory;
115
+ // (undocumented)
116
+ createContainer(createNewSummary: ISummaryTree, resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
117
+ createDocumentService(resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
118
+ }
119
+
120
+ // @public (undocumented)
121
+ export class SnapshotStorage extends ReadDocumentStorageServiceBase {
122
+ constructor(storage: IDocumentStorageService, docTree: ISnapshotTree | null);
123
+ // (undocumented)
124
+ protected docId?: string;
125
+ // (undocumented)
126
+ protected readonly docTree: ISnapshotTree | null;
127
+ // (undocumented)
128
+ getSnapshotTree(versionRequested?: IVersion): Promise<ISnapshotTree | null>;
129
+ // (undocumented)
130
+ getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
131
+ // (undocumented)
132
+ readBlob(blobId: string): Promise<ArrayBufferLike>;
133
+ // (undocumented)
134
+ protected readonly storage: IDocumentStorageService;
135
+ }
136
+
137
+ // @public (undocumented)
138
+ export class StaticStorageDocumentServiceFactory implements IDocumentServiceFactory {
139
+ constructor(storage: IDocumentStorageService);
140
+ // (undocumented)
141
+ createContainer(createNewSummary: ISummaryTree, resolvedUrl: IResolvedUrl, logger: ITelemetryLoggerExt, clientIsSummarizer?: boolean): Promise<IDocumentService>;
142
+ // (undocumented)
143
+ createDocumentService(fileURL: IResolvedUrl, logger?: ITelemetryLoggerExt, clientIsSummarizer?: boolean): Promise<IDocumentService>;
144
+ // (undocumented)
145
+ protected readonly storage: IDocumentStorageService;
146
+ }
147
+
148
+ // (No @packageDocumentation comment for this package)
149
+
150
+ ```
@@ -0,0 +1,168 @@
1
+ import * as api from '@fluidframework/protocol-definitions';
2
+ import * as api_2 from '@fluidframework/driver-definitions';
3
+ import { IClient } from '@fluidframework/protocol-definitions';
4
+ import { IDocumentService } from '@fluidframework/driver-definitions';
5
+ import { IDocumentServiceFactory } from '@fluidframework/driver-definitions';
6
+ import { IDocumentStorageService } from '@fluidframework/driver-definitions';
7
+ import { IResolvedUrl } from '@fluidframework/driver-definitions';
8
+ import { ISnapshotTree } from '@fluidframework/protocol-definitions';
9
+ import { ISummaryContext } from '@fluidframework/driver-definitions';
10
+ import { ISummaryTree } from '@fluidframework/protocol-definitions';
11
+ import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
12
+ import { ITelemetryLoggerExt } from '@fluidframework/telemetry-utils';
13
+ import { ITree } from '@fluidframework/protocol-definitions';
14
+ import { IVersion } from '@fluidframework/protocol-definitions';
15
+
16
+ export declare class FileSnapshotReader extends ReadDocumentStorageServiceBase implements IDocumentStorageService {
17
+ protected static readonly FileStorageVersionTreeId = "FileStorageTreeId";
18
+ protected docId?: string;
19
+ protected docTree: ISnapshotTree;
20
+ protected blobs: Map<string, ArrayBufferLike>;
21
+ protected readonly commits: {
22
+ [key: string]: ITree;
23
+ };
24
+ protected readonly trees: {
25
+ [key: string]: ISnapshotTree;
26
+ };
27
+ constructor(json: IFileSnapshot);
28
+ getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
29
+ getSnapshotTree(versionRequested?: IVersion): Promise<ISnapshotTree | null>;
30
+ readBlob(blobId: string): Promise<ArrayBufferLike>;
31
+ }
32
+
33
+ /**
34
+ * Structure of snapshot on disk, when we store snapshot as single file
35
+ */
36
+ export declare interface IFileSnapshot {
37
+ tree: ITree;
38
+ commits: {
39
+ [key: string]: ITree;
40
+ };
41
+ }
42
+
43
+ export declare class OpStorage extends ReadDocumentStorageServiceBase {
44
+ getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
45
+ getSnapshotTree(version?: IVersion): Promise<ISnapshotTree | null>;
46
+ readBlob(blobId: string): Promise<ArrayBufferLike>;
47
+ }
48
+
49
+ /**
50
+ * Partial implementation of IDocumentStorageService
51
+ */
52
+ export declare abstract class ReadDocumentStorageServiceBase implements IDocumentStorageService {
53
+ abstract getVersions(versionId: string | null, count: number): Promise<api.IVersion[]>;
54
+ abstract getSnapshotTree(version?: api.IVersion): Promise<api.ISnapshotTree | null>;
55
+ abstract readBlob(blobId: string): Promise<ArrayBufferLike>;
56
+ uploadSummaryWithContext(summary: api.ISummaryTree, context: ISummaryContext): Promise<string>;
57
+ createBlob(file: ArrayBufferLike): Promise<api.ICreateBlobResponse>;
58
+ downloadSummary(handle: api.ISummaryHandle): Promise<api.ISummaryTree>;
59
+ get repositoryUrl(): string;
60
+ }
61
+
62
+ /**
63
+ * Replay controller object
64
+ * It controls where we start (snapshot, local file, no snapshots)
65
+ * As well as dispatch of ops
66
+ */
67
+ export declare abstract class ReplayController extends ReadDocumentStorageServiceBase {
68
+ /**
69
+ * Initialize reply controller
70
+ * @param documentService - the real document service
71
+ * @returns Whether or not the controller should be used.
72
+ * If `false` is returned, caller should fallback to original storage.
73
+ */
74
+ abstract initStorage(documentService: IDocumentService): Promise<boolean>;
75
+ /**
76
+ * Returns sequence number to start processing ops
77
+ * Should be zero if not using snapshot, and snapshot seq# otherwise
78
+ */
79
+ abstract getStartingOpSequence(): Promise<number>;
80
+ /**
81
+ * Returns last op number to fetch from current op
82
+ * Note: this API is called while replay() is in progress - next batch of ops is downloaded in parallel
83
+ * @param currentOp - current op
84
+ */
85
+ abstract fetchTo(currentOp: number): number | undefined;
86
+ /**
87
+ * Returns true if no more ops should be processed (or downloaded for future processing).
88
+ * It's called at end of each batch with latest op timestamp.
89
+ * Also it's called when there are no more ops available (lastTimeStamp === undefined).
90
+ * If false is returned and there are no more ops, request for more ops is made every 2 seconds.
91
+ * Note: this API is called while replay() is in progress - next batch of ops is downloaded in parallel
92
+ * @param currentOp - current op
93
+ * @param lastTimeStamp - timestamp of last op (if more ops are available). Undefined otherwise.
94
+ */
95
+ abstract isDoneFetch(currentOp: number, lastTimeStamp?: number): boolean;
96
+ /**
97
+ * Replay batch of ops
98
+ * NOTE: new batch of ops is fetched (fetchTo() & isDoneFetch() APIs are called) while this call is in flights
99
+ * @param emitter - callback to emit ops
100
+ * @param fetchedOps - ops to process
101
+ */
102
+ abstract replay(emitter: (op: api.ISequencedDocumentMessage[]) => void, fetchedOps: api.ISequencedDocumentMessage[]): Promise<void>;
103
+ }
104
+
105
+ /**
106
+ * The Replay document service dummies out the snapshot and the delta storage.
107
+ * Delta connection simulates the socket by fetching the ops from delta storage
108
+ * and emitting them with a pre determined delay
109
+ */
110
+ export declare class ReplayDocumentService implements api_2.IDocumentService {
111
+ private readonly controller;
112
+ private readonly deltaStorage;
113
+ static create(documentService: api_2.IDocumentService, controller: ReplayController): Promise<api_2.IDocumentService>;
114
+ constructor(controller: api_2.IDocumentStorageService, deltaStorage: api_2.IDocumentDeltaConnection);
115
+ dispose(): void;
116
+ get resolvedUrl(): api_2.IResolvedUrl;
117
+ /**
118
+ * Connects to a storage endpoint for snapshot service and blobs.
119
+ * @returns returns the dummy document storage service for replay driver.
120
+ */
121
+ connectToStorage(): Promise<api_2.IDocumentStorageService>;
122
+ /**
123
+ * Connects to a delta storage endpoint for getting ops between a range.
124
+ * @returns returns the dummy document delta storage service for replay driver.
125
+ */
126
+ connectToDeltaStorage(): Promise<api_2.IDocumentDeltaStorageService>;
127
+ /**
128
+ * Connects to a delta storage endpoint of provided documentService to get ops and then replaying
129
+ * them so as to mimic a delta stream endpoint.
130
+ * @param client - Client that connects to socket.
131
+ * @returns returns the delta stream service which replay ops from --from to --to arguments.
132
+ */
133
+ connectToDeltaStream(client: IClient): Promise<api_2.IDocumentDeltaConnection>;
134
+ }
135
+
136
+ export declare class ReplayDocumentServiceFactory implements IDocumentServiceFactory {
137
+ private readonly documentServiceFactory;
138
+ private readonly controller;
139
+ static create(from: number, to: number, documentServiceFactory: IDocumentServiceFactory): ReplayDocumentServiceFactory;
140
+ constructor(documentServiceFactory: IDocumentServiceFactory, controller: ReplayController);
141
+ /**
142
+ * Creates a replay document service which uses the document service of provided
143
+ * documentServiceFactory for connecting to delta stream endpoint.
144
+ * @param resolvedUrl - URL to be used for connecting to endpoints.
145
+ * @returns returns the requested document service
146
+ */
147
+ createDocumentService(resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
148
+ createContainer(createNewSummary: ISummaryTree, resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
149
+ }
150
+
151
+ export declare class SnapshotStorage extends ReadDocumentStorageServiceBase {
152
+ protected readonly storage: IDocumentStorageService;
153
+ protected readonly docTree: ISnapshotTree | null;
154
+ protected docId?: string;
155
+ constructor(storage: IDocumentStorageService, docTree: ISnapshotTree | null);
156
+ getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
157
+ getSnapshotTree(versionRequested?: IVersion): Promise<ISnapshotTree | null>;
158
+ readBlob(blobId: string): Promise<ArrayBufferLike>;
159
+ }
160
+
161
+ export declare class StaticStorageDocumentServiceFactory implements IDocumentServiceFactory {
162
+ protected readonly storage: IDocumentStorageService;
163
+ constructor(storage: IDocumentStorageService);
164
+ createDocumentService(fileURL: IResolvedUrl, logger?: ITelemetryLoggerExt, clientIsSummarizer?: boolean): Promise<IDocumentService>;
165
+ createContainer(createNewSummary: ISummaryTree, resolvedUrl: IResolvedUrl, logger: ITelemetryLoggerExt, clientIsSummarizer?: boolean): Promise<IDocumentService>;
166
+ }
167
+
168
+ export { }
@@ -0,0 +1,168 @@
1
+ import * as api from '@fluidframework/protocol-definitions';
2
+ import * as api_2 from '@fluidframework/driver-definitions';
3
+ import { IClient } from '@fluidframework/protocol-definitions';
4
+ import { IDocumentService } from '@fluidframework/driver-definitions';
5
+ import { IDocumentServiceFactory } from '@fluidframework/driver-definitions';
6
+ import { IDocumentStorageService } from '@fluidframework/driver-definitions';
7
+ import { IResolvedUrl } from '@fluidframework/driver-definitions';
8
+ import { ISnapshotTree } from '@fluidframework/protocol-definitions';
9
+ import { ISummaryContext } from '@fluidframework/driver-definitions';
10
+ import { ISummaryTree } from '@fluidframework/protocol-definitions';
11
+ import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
12
+ import { ITelemetryLoggerExt } from '@fluidframework/telemetry-utils';
13
+ import { ITree } from '@fluidframework/protocol-definitions';
14
+ import { IVersion } from '@fluidframework/protocol-definitions';
15
+
16
+ export declare class FileSnapshotReader extends ReadDocumentStorageServiceBase implements IDocumentStorageService {
17
+ protected static readonly FileStorageVersionTreeId = "FileStorageTreeId";
18
+ protected docId?: string;
19
+ protected docTree: ISnapshotTree;
20
+ protected blobs: Map<string, ArrayBufferLike>;
21
+ protected readonly commits: {
22
+ [key: string]: ITree;
23
+ };
24
+ protected readonly trees: {
25
+ [key: string]: ISnapshotTree;
26
+ };
27
+ constructor(json: IFileSnapshot);
28
+ getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
29
+ getSnapshotTree(versionRequested?: IVersion): Promise<ISnapshotTree | null>;
30
+ readBlob(blobId: string): Promise<ArrayBufferLike>;
31
+ }
32
+
33
+ /**
34
+ * Structure of snapshot on disk, when we store snapshot as single file
35
+ */
36
+ export declare interface IFileSnapshot {
37
+ tree: ITree;
38
+ commits: {
39
+ [key: string]: ITree;
40
+ };
41
+ }
42
+
43
+ export declare class OpStorage extends ReadDocumentStorageServiceBase {
44
+ getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
45
+ getSnapshotTree(version?: IVersion): Promise<ISnapshotTree | null>;
46
+ readBlob(blobId: string): Promise<ArrayBufferLike>;
47
+ }
48
+
49
+ /**
50
+ * Partial implementation of IDocumentStorageService
51
+ */
52
+ export declare abstract class ReadDocumentStorageServiceBase implements IDocumentStorageService {
53
+ abstract getVersions(versionId: string | null, count: number): Promise<api.IVersion[]>;
54
+ abstract getSnapshotTree(version?: api.IVersion): Promise<api.ISnapshotTree | null>;
55
+ abstract readBlob(blobId: string): Promise<ArrayBufferLike>;
56
+ uploadSummaryWithContext(summary: api.ISummaryTree, context: ISummaryContext): Promise<string>;
57
+ createBlob(file: ArrayBufferLike): Promise<api.ICreateBlobResponse>;
58
+ downloadSummary(handle: api.ISummaryHandle): Promise<api.ISummaryTree>;
59
+ get repositoryUrl(): string;
60
+ }
61
+
62
+ /**
63
+ * Replay controller object
64
+ * It controls where we start (snapshot, local file, no snapshots)
65
+ * As well as dispatch of ops
66
+ */
67
+ export declare abstract class ReplayController extends ReadDocumentStorageServiceBase {
68
+ /**
69
+ * Initialize reply controller
70
+ * @param documentService - the real document service
71
+ * @returns Whether or not the controller should be used.
72
+ * If `false` is returned, caller should fallback to original storage.
73
+ */
74
+ abstract initStorage(documentService: IDocumentService): Promise<boolean>;
75
+ /**
76
+ * Returns sequence number to start processing ops
77
+ * Should be zero if not using snapshot, and snapshot seq# otherwise
78
+ */
79
+ abstract getStartingOpSequence(): Promise<number>;
80
+ /**
81
+ * Returns last op number to fetch from current op
82
+ * Note: this API is called while replay() is in progress - next batch of ops is downloaded in parallel
83
+ * @param currentOp - current op
84
+ */
85
+ abstract fetchTo(currentOp: number): number | undefined;
86
+ /**
87
+ * Returns true if no more ops should be processed (or downloaded for future processing).
88
+ * It's called at end of each batch with latest op timestamp.
89
+ * Also it's called when there are no more ops available (lastTimeStamp === undefined).
90
+ * If false is returned and there are no more ops, request for more ops is made every 2 seconds.
91
+ * Note: this API is called while replay() is in progress - next batch of ops is downloaded in parallel
92
+ * @param currentOp - current op
93
+ * @param lastTimeStamp - timestamp of last op (if more ops are available). Undefined otherwise.
94
+ */
95
+ abstract isDoneFetch(currentOp: number, lastTimeStamp?: number): boolean;
96
+ /**
97
+ * Replay batch of ops
98
+ * NOTE: new batch of ops is fetched (fetchTo() & isDoneFetch() APIs are called) while this call is in flights
99
+ * @param emitter - callback to emit ops
100
+ * @param fetchedOps - ops to process
101
+ */
102
+ abstract replay(emitter: (op: api.ISequencedDocumentMessage[]) => void, fetchedOps: api.ISequencedDocumentMessage[]): Promise<void>;
103
+ }
104
+
105
+ /**
106
+ * The Replay document service dummies out the snapshot and the delta storage.
107
+ * Delta connection simulates the socket by fetching the ops from delta storage
108
+ * and emitting them with a pre determined delay
109
+ */
110
+ export declare class ReplayDocumentService implements api_2.IDocumentService {
111
+ private readonly controller;
112
+ private readonly deltaStorage;
113
+ static create(documentService: api_2.IDocumentService, controller: ReplayController): Promise<api_2.IDocumentService>;
114
+ constructor(controller: api_2.IDocumentStorageService, deltaStorage: api_2.IDocumentDeltaConnection);
115
+ dispose(): void;
116
+ get resolvedUrl(): api_2.IResolvedUrl;
117
+ /**
118
+ * Connects to a storage endpoint for snapshot service and blobs.
119
+ * @returns returns the dummy document storage service for replay driver.
120
+ */
121
+ connectToStorage(): Promise<api_2.IDocumentStorageService>;
122
+ /**
123
+ * Connects to a delta storage endpoint for getting ops between a range.
124
+ * @returns returns the dummy document delta storage service for replay driver.
125
+ */
126
+ connectToDeltaStorage(): Promise<api_2.IDocumentDeltaStorageService>;
127
+ /**
128
+ * Connects to a delta storage endpoint of provided documentService to get ops and then replaying
129
+ * them so as to mimic a delta stream endpoint.
130
+ * @param client - Client that connects to socket.
131
+ * @returns returns the delta stream service which replay ops from --from to --to arguments.
132
+ */
133
+ connectToDeltaStream(client: IClient): Promise<api_2.IDocumentDeltaConnection>;
134
+ }
135
+
136
+ export declare class ReplayDocumentServiceFactory implements IDocumentServiceFactory {
137
+ private readonly documentServiceFactory;
138
+ private readonly controller;
139
+ static create(from: number, to: number, documentServiceFactory: IDocumentServiceFactory): ReplayDocumentServiceFactory;
140
+ constructor(documentServiceFactory: IDocumentServiceFactory, controller: ReplayController);
141
+ /**
142
+ * Creates a replay document service which uses the document service of provided
143
+ * documentServiceFactory for connecting to delta stream endpoint.
144
+ * @param resolvedUrl - URL to be used for connecting to endpoints.
145
+ * @returns returns the requested document service
146
+ */
147
+ createDocumentService(resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
148
+ createContainer(createNewSummary: ISummaryTree, resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
149
+ }
150
+
151
+ export declare class SnapshotStorage extends ReadDocumentStorageServiceBase {
152
+ protected readonly storage: IDocumentStorageService;
153
+ protected readonly docTree: ISnapshotTree | null;
154
+ protected docId?: string;
155
+ constructor(storage: IDocumentStorageService, docTree: ISnapshotTree | null);
156
+ getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
157
+ getSnapshotTree(versionRequested?: IVersion): Promise<ISnapshotTree | null>;
158
+ readBlob(blobId: string): Promise<ArrayBufferLike>;
159
+ }
160
+
161
+ export declare class StaticStorageDocumentServiceFactory implements IDocumentServiceFactory {
162
+ protected readonly storage: IDocumentStorageService;
163
+ constructor(storage: IDocumentStorageService);
164
+ createDocumentService(fileURL: IResolvedUrl, logger?: ITelemetryLoggerExt, clientIsSummarizer?: boolean): Promise<IDocumentService>;
165
+ createContainer(createNewSummary: ISummaryTree, resolvedUrl: IResolvedUrl, logger: ITelemetryLoggerExt, clientIsSummarizer?: boolean): Promise<IDocumentService>;
166
+ }
167
+
168
+ export { }
@@ -0,0 +1,168 @@
1
+ import * as api from '@fluidframework/protocol-definitions';
2
+ import * as api_2 from '@fluidframework/driver-definitions';
3
+ import { IClient } from '@fluidframework/protocol-definitions';
4
+ import { IDocumentService } from '@fluidframework/driver-definitions';
5
+ import { IDocumentServiceFactory } from '@fluidframework/driver-definitions';
6
+ import { IDocumentStorageService } from '@fluidframework/driver-definitions';
7
+ import { IResolvedUrl } from '@fluidframework/driver-definitions';
8
+ import { ISnapshotTree } from '@fluidframework/protocol-definitions';
9
+ import { ISummaryContext } from '@fluidframework/driver-definitions';
10
+ import { ISummaryTree } from '@fluidframework/protocol-definitions';
11
+ import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
12
+ import { ITelemetryLoggerExt } from '@fluidframework/telemetry-utils';
13
+ import { ITree } from '@fluidframework/protocol-definitions';
14
+ import { IVersion } from '@fluidframework/protocol-definitions';
15
+
16
+ export declare class FileSnapshotReader extends ReadDocumentStorageServiceBase implements IDocumentStorageService {
17
+ protected static readonly FileStorageVersionTreeId = "FileStorageTreeId";
18
+ protected docId?: string;
19
+ protected docTree: ISnapshotTree;
20
+ protected blobs: Map<string, ArrayBufferLike>;
21
+ protected readonly commits: {
22
+ [key: string]: ITree;
23
+ };
24
+ protected readonly trees: {
25
+ [key: string]: ISnapshotTree;
26
+ };
27
+ constructor(json: IFileSnapshot);
28
+ getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
29
+ getSnapshotTree(versionRequested?: IVersion): Promise<ISnapshotTree | null>;
30
+ readBlob(blobId: string): Promise<ArrayBufferLike>;
31
+ }
32
+
33
+ /**
34
+ * Structure of snapshot on disk, when we store snapshot as single file
35
+ */
36
+ export declare interface IFileSnapshot {
37
+ tree: ITree;
38
+ commits: {
39
+ [key: string]: ITree;
40
+ };
41
+ }
42
+
43
+ export declare class OpStorage extends ReadDocumentStorageServiceBase {
44
+ getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
45
+ getSnapshotTree(version?: IVersion): Promise<ISnapshotTree | null>;
46
+ readBlob(blobId: string): Promise<ArrayBufferLike>;
47
+ }
48
+
49
+ /**
50
+ * Partial implementation of IDocumentStorageService
51
+ */
52
+ export declare abstract class ReadDocumentStorageServiceBase implements IDocumentStorageService {
53
+ abstract getVersions(versionId: string | null, count: number): Promise<api.IVersion[]>;
54
+ abstract getSnapshotTree(version?: api.IVersion): Promise<api.ISnapshotTree | null>;
55
+ abstract readBlob(blobId: string): Promise<ArrayBufferLike>;
56
+ uploadSummaryWithContext(summary: api.ISummaryTree, context: ISummaryContext): Promise<string>;
57
+ createBlob(file: ArrayBufferLike): Promise<api.ICreateBlobResponse>;
58
+ downloadSummary(handle: api.ISummaryHandle): Promise<api.ISummaryTree>;
59
+ get repositoryUrl(): string;
60
+ }
61
+
62
+ /**
63
+ * Replay controller object
64
+ * It controls where we start (snapshot, local file, no snapshots)
65
+ * As well as dispatch of ops
66
+ */
67
+ export declare abstract class ReplayController extends ReadDocumentStorageServiceBase {
68
+ /**
69
+ * Initialize reply controller
70
+ * @param documentService - the real document service
71
+ * @returns Whether or not the controller should be used.
72
+ * If `false` is returned, caller should fallback to original storage.
73
+ */
74
+ abstract initStorage(documentService: IDocumentService): Promise<boolean>;
75
+ /**
76
+ * Returns sequence number to start processing ops
77
+ * Should be zero if not using snapshot, and snapshot seq# otherwise
78
+ */
79
+ abstract getStartingOpSequence(): Promise<number>;
80
+ /**
81
+ * Returns last op number to fetch from current op
82
+ * Note: this API is called while replay() is in progress - next batch of ops is downloaded in parallel
83
+ * @param currentOp - current op
84
+ */
85
+ abstract fetchTo(currentOp: number): number | undefined;
86
+ /**
87
+ * Returns true if no more ops should be processed (or downloaded for future processing).
88
+ * It's called at end of each batch with latest op timestamp.
89
+ * Also it's called when there are no more ops available (lastTimeStamp === undefined).
90
+ * If false is returned and there are no more ops, request for more ops is made every 2 seconds.
91
+ * Note: this API is called while replay() is in progress - next batch of ops is downloaded in parallel
92
+ * @param currentOp - current op
93
+ * @param lastTimeStamp - timestamp of last op (if more ops are available). Undefined otherwise.
94
+ */
95
+ abstract isDoneFetch(currentOp: number, lastTimeStamp?: number): boolean;
96
+ /**
97
+ * Replay batch of ops
98
+ * NOTE: new batch of ops is fetched (fetchTo() & isDoneFetch() APIs are called) while this call is in flights
99
+ * @param emitter - callback to emit ops
100
+ * @param fetchedOps - ops to process
101
+ */
102
+ abstract replay(emitter: (op: api.ISequencedDocumentMessage[]) => void, fetchedOps: api.ISequencedDocumentMessage[]): Promise<void>;
103
+ }
104
+
105
+ /**
106
+ * The Replay document service dummies out the snapshot and the delta storage.
107
+ * Delta connection simulates the socket by fetching the ops from delta storage
108
+ * and emitting them with a pre determined delay
109
+ */
110
+ export declare class ReplayDocumentService implements api_2.IDocumentService {
111
+ private readonly controller;
112
+ private readonly deltaStorage;
113
+ static create(documentService: api_2.IDocumentService, controller: ReplayController): Promise<api_2.IDocumentService>;
114
+ constructor(controller: api_2.IDocumentStorageService, deltaStorage: api_2.IDocumentDeltaConnection);
115
+ dispose(): void;
116
+ get resolvedUrl(): api_2.IResolvedUrl;
117
+ /**
118
+ * Connects to a storage endpoint for snapshot service and blobs.
119
+ * @returns returns the dummy document storage service for replay driver.
120
+ */
121
+ connectToStorage(): Promise<api_2.IDocumentStorageService>;
122
+ /**
123
+ * Connects to a delta storage endpoint for getting ops between a range.
124
+ * @returns returns the dummy document delta storage service for replay driver.
125
+ */
126
+ connectToDeltaStorage(): Promise<api_2.IDocumentDeltaStorageService>;
127
+ /**
128
+ * Connects to a delta storage endpoint of provided documentService to get ops and then replaying
129
+ * them so as to mimic a delta stream endpoint.
130
+ * @param client - Client that connects to socket.
131
+ * @returns returns the delta stream service which replay ops from --from to --to arguments.
132
+ */
133
+ connectToDeltaStream(client: IClient): Promise<api_2.IDocumentDeltaConnection>;
134
+ }
135
+
136
+ export declare class ReplayDocumentServiceFactory implements IDocumentServiceFactory {
137
+ private readonly documentServiceFactory;
138
+ private readonly controller;
139
+ static create(from: number, to: number, documentServiceFactory: IDocumentServiceFactory): ReplayDocumentServiceFactory;
140
+ constructor(documentServiceFactory: IDocumentServiceFactory, controller: ReplayController);
141
+ /**
142
+ * Creates a replay document service which uses the document service of provided
143
+ * documentServiceFactory for connecting to delta stream endpoint.
144
+ * @param resolvedUrl - URL to be used for connecting to endpoints.
145
+ * @returns returns the requested document service
146
+ */
147
+ createDocumentService(resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
148
+ createContainer(createNewSummary: ISummaryTree, resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
149
+ }
150
+
151
+ export declare class SnapshotStorage extends ReadDocumentStorageServiceBase {
152
+ protected readonly storage: IDocumentStorageService;
153
+ protected readonly docTree: ISnapshotTree | null;
154
+ protected docId?: string;
155
+ constructor(storage: IDocumentStorageService, docTree: ISnapshotTree | null);
156
+ getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
157
+ getSnapshotTree(versionRequested?: IVersion): Promise<ISnapshotTree | null>;
158
+ readBlob(blobId: string): Promise<ArrayBufferLike>;
159
+ }
160
+
161
+ export declare class StaticStorageDocumentServiceFactory implements IDocumentServiceFactory {
162
+ protected readonly storage: IDocumentStorageService;
163
+ constructor(storage: IDocumentStorageService);
164
+ createDocumentService(fileURL: IResolvedUrl, logger?: ITelemetryLoggerExt, clientIsSummarizer?: boolean): Promise<IDocumentService>;
165
+ createContainer(createNewSummary: ISummaryTree, resolvedUrl: IResolvedUrl, logger: ITelemetryLoggerExt, clientIsSummarizer?: boolean): Promise<IDocumentService>;
166
+ }
167
+
168
+ export { }
@@ -0,0 +1,168 @@
1
+ import * as api from '@fluidframework/protocol-definitions';
2
+ import * as api_2 from '@fluidframework/driver-definitions';
3
+ import { IClient } from '@fluidframework/protocol-definitions';
4
+ import { IDocumentService } from '@fluidframework/driver-definitions';
5
+ import { IDocumentServiceFactory } from '@fluidframework/driver-definitions';
6
+ import { IDocumentStorageService } from '@fluidframework/driver-definitions';
7
+ import { IResolvedUrl } from '@fluidframework/driver-definitions';
8
+ import { ISnapshotTree } from '@fluidframework/protocol-definitions';
9
+ import { ISummaryContext } from '@fluidframework/driver-definitions';
10
+ import { ISummaryTree } from '@fluidframework/protocol-definitions';
11
+ import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
12
+ import { ITelemetryLoggerExt } from '@fluidframework/telemetry-utils';
13
+ import { ITree } from '@fluidframework/protocol-definitions';
14
+ import { IVersion } from '@fluidframework/protocol-definitions';
15
+
16
+ export declare class FileSnapshotReader extends ReadDocumentStorageServiceBase implements IDocumentStorageService {
17
+ protected static readonly FileStorageVersionTreeId = "FileStorageTreeId";
18
+ protected docId?: string;
19
+ protected docTree: ISnapshotTree;
20
+ protected blobs: Map<string, ArrayBufferLike>;
21
+ protected readonly commits: {
22
+ [key: string]: ITree;
23
+ };
24
+ protected readonly trees: {
25
+ [key: string]: ISnapshotTree;
26
+ };
27
+ constructor(json: IFileSnapshot);
28
+ getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
29
+ getSnapshotTree(versionRequested?: IVersion): Promise<ISnapshotTree | null>;
30
+ readBlob(blobId: string): Promise<ArrayBufferLike>;
31
+ }
32
+
33
+ /**
34
+ * Structure of snapshot on disk, when we store snapshot as single file
35
+ */
36
+ export declare interface IFileSnapshot {
37
+ tree: ITree;
38
+ commits: {
39
+ [key: string]: ITree;
40
+ };
41
+ }
42
+
43
+ export declare class OpStorage extends ReadDocumentStorageServiceBase {
44
+ getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
45
+ getSnapshotTree(version?: IVersion): Promise<ISnapshotTree | null>;
46
+ readBlob(blobId: string): Promise<ArrayBufferLike>;
47
+ }
48
+
49
+ /**
50
+ * Partial implementation of IDocumentStorageService
51
+ */
52
+ export declare abstract class ReadDocumentStorageServiceBase implements IDocumentStorageService {
53
+ abstract getVersions(versionId: string | null, count: number): Promise<api.IVersion[]>;
54
+ abstract getSnapshotTree(version?: api.IVersion): Promise<api.ISnapshotTree | null>;
55
+ abstract readBlob(blobId: string): Promise<ArrayBufferLike>;
56
+ uploadSummaryWithContext(summary: api.ISummaryTree, context: ISummaryContext): Promise<string>;
57
+ createBlob(file: ArrayBufferLike): Promise<api.ICreateBlobResponse>;
58
+ downloadSummary(handle: api.ISummaryHandle): Promise<api.ISummaryTree>;
59
+ get repositoryUrl(): string;
60
+ }
61
+
62
+ /**
63
+ * Replay controller object
64
+ * It controls where we start (snapshot, local file, no snapshots)
65
+ * As well as dispatch of ops
66
+ */
67
+ export declare abstract class ReplayController extends ReadDocumentStorageServiceBase {
68
+ /**
69
+ * Initialize reply controller
70
+ * @param documentService - the real document service
71
+ * @returns Whether or not the controller should be used.
72
+ * If `false` is returned, caller should fallback to original storage.
73
+ */
74
+ abstract initStorage(documentService: IDocumentService): Promise<boolean>;
75
+ /**
76
+ * Returns sequence number to start processing ops
77
+ * Should be zero if not using snapshot, and snapshot seq# otherwise
78
+ */
79
+ abstract getStartingOpSequence(): Promise<number>;
80
+ /**
81
+ * Returns last op number to fetch from current op
82
+ * Note: this API is called while replay() is in progress - next batch of ops is downloaded in parallel
83
+ * @param currentOp - current op
84
+ */
85
+ abstract fetchTo(currentOp: number): number | undefined;
86
+ /**
87
+ * Returns true if no more ops should be processed (or downloaded for future processing).
88
+ * It's called at end of each batch with latest op timestamp.
89
+ * Also it's called when there are no more ops available (lastTimeStamp === undefined).
90
+ * If false is returned and there are no more ops, request for more ops is made every 2 seconds.
91
+ * Note: this API is called while replay() is in progress - next batch of ops is downloaded in parallel
92
+ * @param currentOp - current op
93
+ * @param lastTimeStamp - timestamp of last op (if more ops are available). Undefined otherwise.
94
+ */
95
+ abstract isDoneFetch(currentOp: number, lastTimeStamp?: number): boolean;
96
+ /**
97
+ * Replay batch of ops
98
+ * NOTE: new batch of ops is fetched (fetchTo() & isDoneFetch() APIs are called) while this call is in flights
99
+ * @param emitter - callback to emit ops
100
+ * @param fetchedOps - ops to process
101
+ */
102
+ abstract replay(emitter: (op: api.ISequencedDocumentMessage[]) => void, fetchedOps: api.ISequencedDocumentMessage[]): Promise<void>;
103
+ }
104
+
105
+ /**
106
+ * The Replay document service dummies out the snapshot and the delta storage.
107
+ * Delta connection simulates the socket by fetching the ops from delta storage
108
+ * and emitting them with a pre determined delay
109
+ */
110
+ export declare class ReplayDocumentService implements api_2.IDocumentService {
111
+ private readonly controller;
112
+ private readonly deltaStorage;
113
+ static create(documentService: api_2.IDocumentService, controller: ReplayController): Promise<api_2.IDocumentService>;
114
+ constructor(controller: api_2.IDocumentStorageService, deltaStorage: api_2.IDocumentDeltaConnection);
115
+ dispose(): void;
116
+ get resolvedUrl(): api_2.IResolvedUrl;
117
+ /**
118
+ * Connects to a storage endpoint for snapshot service and blobs.
119
+ * @returns returns the dummy document storage service for replay driver.
120
+ */
121
+ connectToStorage(): Promise<api_2.IDocumentStorageService>;
122
+ /**
123
+ * Connects to a delta storage endpoint for getting ops between a range.
124
+ * @returns returns the dummy document delta storage service for replay driver.
125
+ */
126
+ connectToDeltaStorage(): Promise<api_2.IDocumentDeltaStorageService>;
127
+ /**
128
+ * Connects to a delta storage endpoint of provided documentService to get ops and then replaying
129
+ * them so as to mimic a delta stream endpoint.
130
+ * @param client - Client that connects to socket.
131
+ * @returns returns the delta stream service which replay ops from --from to --to arguments.
132
+ */
133
+ connectToDeltaStream(client: IClient): Promise<api_2.IDocumentDeltaConnection>;
134
+ }
135
+
136
+ export declare class ReplayDocumentServiceFactory implements IDocumentServiceFactory {
137
+ private readonly documentServiceFactory;
138
+ private readonly controller;
139
+ static create(from: number, to: number, documentServiceFactory: IDocumentServiceFactory): ReplayDocumentServiceFactory;
140
+ constructor(documentServiceFactory: IDocumentServiceFactory, controller: ReplayController);
141
+ /**
142
+ * Creates a replay document service which uses the document service of provided
143
+ * documentServiceFactory for connecting to delta stream endpoint.
144
+ * @param resolvedUrl - URL to be used for connecting to endpoints.
145
+ * @returns returns the requested document service
146
+ */
147
+ createDocumentService(resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
148
+ createContainer(createNewSummary: ISummaryTree, resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
149
+ }
150
+
151
+ export declare class SnapshotStorage extends ReadDocumentStorageServiceBase {
152
+ protected readonly storage: IDocumentStorageService;
153
+ protected readonly docTree: ISnapshotTree | null;
154
+ protected docId?: string;
155
+ constructor(storage: IDocumentStorageService, docTree: ISnapshotTree | null);
156
+ getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
157
+ getSnapshotTree(versionRequested?: IVersion): Promise<ISnapshotTree | null>;
158
+ readBlob(blobId: string): Promise<ArrayBufferLike>;
159
+ }
160
+
161
+ export declare class StaticStorageDocumentServiceFactory implements IDocumentServiceFactory {
162
+ protected readonly storage: IDocumentStorageService;
163
+ constructor(storage: IDocumentStorageService);
164
+ createDocumentService(fileURL: IResolvedUrl, logger?: ITelemetryLoggerExt, clientIsSummarizer?: boolean): Promise<IDocumentService>;
165
+ createContainer(createNewSummary: ISummaryTree, resolvedUrl: IResolvedUrl, logger: ITelemetryLoggerExt, clientIsSummarizer?: boolean): Promise<IDocumentService>;
166
+ }
167
+
168
+ export { }
@@ -5,7 +5,7 @@
5
5
  "toolPackages": [
6
6
  {
7
7
  "packageName": "@microsoft/api-extractor",
8
- "packageVersion": "7.37.0"
8
+ "packageVersion": "7.38.0"
9
9
  }
10
10
  ]
11
11
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluidframework/replay-driver",
3
- "version": "2.0.0-internal.7.0.1",
3
+ "version": "2.0.0-internal.7.1.1",
4
4
  "description": "Document replay version of Socket.IO implementation",
5
5
  "homepage": "https://fluidframework.com",
6
6
  "repository": {
@@ -15,27 +15,27 @@
15
15
  "module": "lib/index.js",
16
16
  "types": "dist/index.d.ts",
17
17
  "dependencies": {
18
- "@fluid-internal/client-utils": ">=2.0.0-internal.7.0.1 <2.0.0-internal.7.1.0",
19
- "@fluidframework/core-interfaces": ">=2.0.0-internal.7.0.1 <2.0.0-internal.7.1.0",
20
- "@fluidframework/core-utils": ">=2.0.0-internal.7.0.1 <2.0.0-internal.7.1.0",
21
- "@fluidframework/driver-definitions": ">=2.0.0-internal.7.0.1 <2.0.0-internal.7.1.0",
22
- "@fluidframework/driver-utils": ">=2.0.0-internal.7.0.1 <2.0.0-internal.7.1.0",
18
+ "@fluid-internal/client-utils": ">=2.0.0-internal.7.1.1 <2.0.0-internal.7.2.0",
19
+ "@fluidframework/core-interfaces": ">=2.0.0-internal.7.1.1 <2.0.0-internal.7.2.0",
20
+ "@fluidframework/core-utils": ">=2.0.0-internal.7.1.1 <2.0.0-internal.7.2.0",
21
+ "@fluidframework/driver-definitions": ">=2.0.0-internal.7.1.1 <2.0.0-internal.7.2.0",
22
+ "@fluidframework/driver-utils": ">=2.0.0-internal.7.1.1 <2.0.0-internal.7.2.0",
23
23
  "@fluidframework/protocol-definitions": "^3.0.0",
24
- "@fluidframework/telemetry-utils": ">=2.0.0-internal.7.0.1 <2.0.0-internal.7.1.0"
24
+ "@fluidframework/telemetry-utils": ">=2.0.0-internal.7.1.1 <2.0.0-internal.7.2.0"
25
25
  },
26
26
  "devDependencies": {
27
- "@fluid-tools/build-cli": "^0.24.0",
28
- "@fluidframework/build-common": "^2.0.0",
29
- "@fluidframework/build-tools": "^0.24.0",
30
- "@fluidframework/eslint-config-fluid": "^2.1.0",
31
- "@fluidframework/replay-driver-previous": "npm:@fluidframework/replay-driver@2.0.0-internal.6.3.0",
27
+ "@fluid-tools/build-cli": "^0.25.0",
28
+ "@fluidframework/build-common": "^2.0.1",
29
+ "@fluidframework/build-tools": "^0.25.0",
30
+ "@fluidframework/eslint-config-fluid": "^3.0.0",
31
+ "@fluidframework/replay-driver-previous": "npm:@fluidframework/replay-driver@2.0.0-internal.7.1.0",
32
32
  "@microsoft/api-extractor": "^7.37.0",
33
33
  "@types/nock": "^9.3.0",
34
34
  "@types/node": "^16.18.38",
35
35
  "copyfiles": "^2.4.1",
36
- "eslint": "~8.6.0",
36
+ "eslint": "~8.50.0",
37
37
  "nock": "^13.3.3",
38
- "prettier": "~2.6.2",
38
+ "prettier": "~3.0.3",
39
39
  "rimraf": "^4.4.0",
40
40
  "typescript": "~5.1.6"
41
41
  },
@@ -53,9 +53,9 @@
53
53
  "scripts": {
54
54
  "build": "fluid-build . --task build",
55
55
  "build:compile": "fluid-build . --task compile",
56
- "build:docs": "api-extractor run --local --typescript-compiler-folder ../../../node_modules/typescript && copyfiles -u 1 ./_api-extractor-temp/doc-models/* ../../../_api-extractor-temp/",
56
+ "build:docs": "api-extractor run --local",
57
57
  "build:esnext": "tsc --project ./tsconfig.esnext.json",
58
- "ci:build:docs": "api-extractor run --typescript-compiler-folder ../../../node_modules/typescript && copyfiles -u 1 ./_api-extractor-temp/* ../../../_api-extractor-temp/",
58
+ "ci:build:docs": "api-extractor run",
59
59
  "clean": "rimraf --glob 'dist' 'lib' '*.tsbuildinfo' '*.build.log' '_api-extractor-temp'",
60
60
  "eslint": "eslint --format stylish src",
61
61
  "eslint:fix": "eslint --format stylish src --fix --fix-type problem,suggestion,layout",