@fluidframework/local-driver 2.0.0-dev-rc.3.0.0.254513 → 2.0.0-dev-rc.3.0.0.254866

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.
@@ -0,0 +1,15 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ /*
7
+ * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
8
+ * Generated by "flub generate entrypoints" in @fluidframework/build-tools.
9
+ */
10
+ export {
11
+ // alpha APIs
12
+ LocalDocumentServiceFactory,
13
+ LocalResolver,
14
+ createLocalResolverCreateNewRequest
15
+ } from "./index.js";
package/dist/beta.d.ts ADDED
@@ -0,0 +1,9 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ /*
7
+ * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
8
+ * Generated by "flub generate entrypoints" in @fluidframework/build-tools.
9
+ */
@@ -0,0 +1,9 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ /*
7
+ * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
8
+ * Generated by "flub generate entrypoints" in @fluidframework/build-tools.
9
+ */
package/lib/alpha.d.ts ADDED
@@ -0,0 +1,15 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ /*
7
+ * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
8
+ * Generated by "flub generate entrypoints" in @fluidframework/build-tools.
9
+ */
10
+ export {
11
+ // alpha APIs
12
+ LocalDocumentServiceFactory,
13
+ LocalResolver,
14
+ createLocalResolverCreateNewRequest
15
+ } from "./index.js";
package/lib/beta.d.ts ADDED
@@ -0,0 +1,9 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ /*
7
+ * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
8
+ * Generated by "flub generate entrypoints" in @fluidframework/build-tools.
9
+ */
@@ -0,0 +1,9 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ /*
7
+ * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
8
+ * Generated by "flub generate entrypoints" in @fluidframework/build-tools.
9
+ */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluidframework/local-driver",
3
- "version": "2.0.0-dev-rc.3.0.0.254513",
3
+ "version": "2.0.0-dev-rc.3.0.0.254866",
4
4
  "description": "Fluid local driver",
5
5
  "homepage": "https://fluidframework.com",
6
6
  "repository": {
@@ -14,21 +14,21 @@
14
14
  "exports": {
15
15
  ".": {
16
16
  "import": {
17
- "types": "./lib/local-driver-public.d.ts",
17
+ "types": "./lib/public.d.ts",
18
18
  "default": "./lib/index.js"
19
19
  },
20
20
  "require": {
21
- "types": "./dist/local-driver-public.d.ts",
21
+ "types": "./dist/public.d.ts",
22
22
  "default": "./dist/index.js"
23
23
  }
24
24
  },
25
25
  "./alpha": {
26
26
  "import": {
27
- "types": "./lib/local-driver-alpha.d.ts",
27
+ "types": "./lib/alpha.d.ts",
28
28
  "default": "./lib/index.js"
29
29
  },
30
30
  "require": {
31
- "types": "./dist/local-driver-alpha.d.ts",
31
+ "types": "./dist/alpha.d.ts",
32
32
  "default": "./dist/index.js"
33
33
  }
34
34
  },
@@ -69,27 +69,27 @@
69
69
  "temp-directory": "nyc/.nyc_output"
70
70
  },
71
71
  "dependencies": {
72
- "@fluid-internal/client-utils": "2.0.0-dev-rc.3.0.0.254513",
73
- "@fluidframework/core-interfaces": "2.0.0-dev-rc.3.0.0.254513",
74
- "@fluidframework/core-utils": "2.0.0-dev-rc.3.0.0.254513",
75
- "@fluidframework/driver-base": "2.0.0-dev-rc.3.0.0.254513",
76
- "@fluidframework/driver-definitions": "2.0.0-dev-rc.3.0.0.254513",
77
- "@fluidframework/driver-utils": "2.0.0-dev-rc.3.0.0.254513",
72
+ "@fluid-internal/client-utils": "2.0.0-dev-rc.3.0.0.254866",
73
+ "@fluidframework/core-interfaces": "2.0.0-dev-rc.3.0.0.254866",
74
+ "@fluidframework/core-utils": "2.0.0-dev-rc.3.0.0.254866",
75
+ "@fluidframework/driver-base": "2.0.0-dev-rc.3.0.0.254866",
76
+ "@fluidframework/driver-definitions": "2.0.0-dev-rc.3.0.0.254866",
77
+ "@fluidframework/driver-utils": "2.0.0-dev-rc.3.0.0.254866",
78
78
  "@fluidframework/protocol-base": "^4.0.0",
79
79
  "@fluidframework/protocol-definitions": "^3.2.0",
80
- "@fluidframework/routerlicious-driver": "2.0.0-dev-rc.3.0.0.254513",
80
+ "@fluidframework/routerlicious-driver": "2.0.0-dev-rc.3.0.0.254866",
81
81
  "@fluidframework/server-local-server": "^4.0.0",
82
82
  "@fluidframework/server-services-client": "^4.0.0",
83
83
  "@fluidframework/server-services-core": "^4.0.0",
84
84
  "@fluidframework/server-test-utils": "^4.0.0",
85
- "@fluidframework/telemetry-utils": "2.0.0-dev-rc.3.0.0.254513",
85
+ "@fluidframework/telemetry-utils": "2.0.0-dev-rc.3.0.0.254866",
86
86
  "jsrsasign": "^11.0.0",
87
87
  "uuid": "^9.0.0"
88
88
  },
89
89
  "devDependencies": {
90
90
  "@arethetypeswrong/cli": "^0.15.2",
91
91
  "@biomejs/biome": "^1.6.2",
92
- "@fluid-internal/mocha-test-setup": "2.0.0-dev-rc.3.0.0.254513",
92
+ "@fluid-internal/mocha-test-setup": "2.0.0-dev-rc.3.0.0.254866",
93
93
  "@fluid-tools/build-cli": "^0.35.0",
94
94
  "@fluidframework/build-common": "^2.0.3",
95
95
  "@fluidframework/build-tools": "^0.35.0",
@@ -113,18 +113,6 @@
113
113
  "socket.io-client": "^4.7.3",
114
114
  "typescript": "~5.1.6"
115
115
  },
116
- "fluidBuild": {
117
- "tasks": {
118
- "build:docs": {
119
- "dependsOn": [
120
- "...",
121
- "api-extractor:commonjs",
122
- "api-extractor:esnext"
123
- ],
124
- "script": false
125
- }
126
- }
127
- },
128
116
  "typeValidation": {
129
117
  "broken": {
130
118
  "ClassDeclaration_LocalDocumentService": {
@@ -138,12 +126,12 @@
138
126
  },
139
127
  "scripts": {
140
128
  "api": "fluid-build . --task api",
141
- "api-extractor:commonjs": "api-extractor run --config ./api-extractor-cjs.json",
142
- "api-extractor:esnext": "api-extractor run --local",
129
+ "api-extractor:commonjs": "flub generate entrypoints --outDir ./dist",
130
+ "api-extractor:esnext": "flub generate entrypoints --outDir ./lib",
143
131
  "build": "fluid-build . --task build",
144
132
  "build:commonjs": "fluid-build . --task commonjs",
145
133
  "build:compile": "fluid-build . --task compile",
146
- "build:docs": "fluid-build . --task api",
134
+ "build:docs": "api-extractor run --local",
147
135
  "build:esnext": "tsc --project ./tsconfig.json",
148
136
  "build:test": "npm run build:test:esm && npm run build:test:cjs",
149
137
  "build:test:cjs": "fluid-tsc commonjs --project ./src/test/tsconfig.cjs.json",
@@ -1,8 +0,0 @@
1
- {
2
- "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json",
3
- "extends": "../../../common/build/build-common/api-extractor-base.cjs.primary.json",
4
- // CJS is actually secondary; so, no report.
5
- "apiReport": {
6
- "enabled": false
7
- }
8
- }
@@ -1,112 +0,0 @@
1
- import { DocumentDeltaConnection } from '@fluidframework/driver-base/internal';
2
- import { GitManager } from '@fluidframework/server-services-client';
3
- import { IClient } from '@fluidframework/protocol-definitions';
4
- import { ICreateBlobResponse } from '@fluidframework/protocol-definitions';
5
- import { IDatabaseManager } from '@fluidframework/server-services-core';
6
- import { IDb } from '@fluidframework/server-services-core';
7
- import { IDocumentDeltaConnection } from '@fluidframework/driver-definitions/internal';
8
- import { IDocumentDeltaStorageService } from '@fluidframework/driver-definitions/internal';
9
- import { IDocumentMessage } from '@fluidframework/protocol-definitions';
10
- import { IDocumentService } from '@fluidframework/driver-definitions/internal';
11
- import { IDocumentServiceEvents } from '@fluidframework/driver-definitions/internal';
12
- import { IDocumentServiceFactory } from '@fluidframework/driver-definitions/internal';
13
- import { IDocumentServicePolicies } from '@fluidframework/driver-definitions/internal';
14
- import { IDocumentStorageService } from '@fluidframework/driver-definitions/internal';
15
- import { IDocumentStorageServicePolicies } from '@fluidframework/driver-definitions/internal';
16
- import { ILocalDeltaConnectionServer } from '@fluidframework/server-local-server';
17
- import { IRequest } from '@fluidframework/core-interfaces';
18
- import { IResolvedUrl } from '@fluidframework/driver-definitions/internal';
19
- import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
20
- import { ISnapshot } from '@fluidframework/driver-definitions/internal';
21
- import { ISnapshotFetchOptions } from '@fluidframework/driver-definitions/internal';
22
- import { ISnapshotTreeEx } from '@fluidframework/protocol-definitions';
23
- import { IStream } from '@fluidframework/driver-definitions/internal';
24
- import { ISummaryContext } from '@fluidframework/driver-definitions/internal';
25
- import { ISummaryHandle } from '@fluidframework/protocol-definitions';
26
- import { ISummaryTree } from '@fluidframework/protocol-definitions';
27
- import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
28
- import { ITestDbFactory } from '@fluidframework/server-test-utils';
29
- import { ITokenProvider } from '@fluidframework/routerlicious-driver';
30
- import { IUrlResolver } from '@fluidframework/driver-definitions/internal';
31
- import { IVersion } from '@fluidframework/protocol-definitions';
32
- import { IWebSocketServer } from '@fluidframework/server-services-core';
33
- import { NackErrorType } from '@fluidframework/protocol-definitions';
34
- import type { Socket } from 'socket.io-client';
35
- import { TypedEventEmitter } from '@fluid-internal/client-utils';
36
-
37
- /* Excluded from this release type: createLocalDocumentService */
38
-
39
- /**
40
- * @alpha
41
- */
42
- export declare function createLocalResolverCreateNewRequest(documentId: string): IRequest;
43
-
44
- /* Excluded from this release type: DocumentDeltaConnection */
45
-
46
- /* Excluded from this release type: LocalDeltaStorageService */
47
-
48
- /* Excluded from this release type: LocalDocumentDeltaConnection */
49
-
50
- /* Excluded from this release type: LocalDocumentService */
51
-
52
- /**
53
- * Implementation of document service factory for local use.
54
- * @alpha
55
- */
56
- export declare class LocalDocumentServiceFactory implements IDocumentServiceFactory {
57
- private readonly localDeltaConnectionServer;
58
- private readonly policies?;
59
- private readonly innerDocumentService?;
60
- private readonly documentDeltaConnectionsMap;
61
- /**
62
- * @param localDeltaConnectionServer - delta connection server for ops
63
- */
64
- constructor(localDeltaConnectionServer: ILocalDeltaConnectionServer, policies?: IDocumentServicePolicies | undefined, innerDocumentService?: IDocumentService | undefined);
65
- createContainer(createNewSummary: ISummaryTree | undefined, resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
66
- /**
67
- * Creates and returns a document service for testing using the given resolved
68
- * URL for the tenant ID, document ID, and token.
69
- * @param resolvedUrl - resolved URL of document
70
- */
71
- createDocumentService(resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
72
- /**
73
- * Gets the document delta connection for the clientId and asks it to disconnect the client.
74
- * @param clientId - The ID of the client to be disconnected.
75
- * @param disconnectReason - The reason of the disconnection.
76
- */
77
- disconnectClient(clientId: string, disconnectReason: string): void;
78
- /**
79
- * Gets the document delta connection for the clientId and asks it to nack the client.
80
- * @param clientId - The ID of the client to be Nack'd.
81
- * @param code - An error code number that represents the error. It will be a valid HTTP error code.
82
- * @param type - Type of the Nack.
83
- * @param message - A message about the nack for debugging/logging/telemetry purposes.
84
- */
85
- nackClient(clientId: string, code?: number, type?: NackErrorType, message?: any): void;
86
- }
87
-
88
- /* Excluded from this release type: LocalDocumentStorageService */
89
-
90
- /**
91
- * Resolves URLs by providing fake URLs which succeed with the other
92
- * related local classes.
93
- * @alpha
94
- */
95
- export declare class LocalResolver implements IUrlResolver {
96
- private readonly tenantId;
97
- private readonly tokenKey;
98
- constructor();
99
- /**
100
- * Resolves URL requests by providing fake URLs with an actually generated
101
- * token from constant test strings. The root of the URL is fake, but the
102
- * remaining relative URL can still be parsed.
103
- * @param request - request to handle
104
- */
105
- resolve(request: IRequest): Promise<IResolvedUrl>;
106
- getAbsoluteUrl(resolvedUrl: IResolvedUrl, relativeUrl: string): Promise<string>;
107
- createCreateNewRequest(documentId: string): IRequest;
108
- }
109
-
110
- /* Excluded from this release type: LocalSessionStorageDbFactory */
111
-
112
- export { }
@@ -1,85 +0,0 @@
1
- import { DocumentDeltaConnection } from '@fluidframework/driver-base/internal';
2
- import { GitManager } from '@fluidframework/server-services-client';
3
- import { IClient } from '@fluidframework/protocol-definitions';
4
- import { ICreateBlobResponse } from '@fluidframework/protocol-definitions';
5
- import { IDatabaseManager } from '@fluidframework/server-services-core';
6
- import { IDb } from '@fluidframework/server-services-core';
7
- import { IDocumentDeltaConnection } from '@fluidframework/driver-definitions/internal';
8
- import { IDocumentDeltaStorageService } from '@fluidframework/driver-definitions/internal';
9
- import { IDocumentMessage } from '@fluidframework/protocol-definitions';
10
- import { IDocumentService } from '@fluidframework/driver-definitions/internal';
11
- import { IDocumentServiceEvents } from '@fluidframework/driver-definitions/internal';
12
- import { IDocumentServiceFactory } from '@fluidframework/driver-definitions/internal';
13
- import { IDocumentServicePolicies } from '@fluidframework/driver-definitions/internal';
14
- import { IDocumentStorageService } from '@fluidframework/driver-definitions/internal';
15
- import { IDocumentStorageServicePolicies } from '@fluidframework/driver-definitions/internal';
16
- import { ILocalDeltaConnectionServer } from '@fluidframework/server-local-server';
17
- import { IRequest } from '@fluidframework/core-interfaces';
18
- import { IResolvedUrl } from '@fluidframework/driver-definitions/internal';
19
- import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
20
- import { ISnapshot } from '@fluidframework/driver-definitions/internal';
21
- import { ISnapshotFetchOptions } from '@fluidframework/driver-definitions/internal';
22
- import { ISnapshotTreeEx } from '@fluidframework/protocol-definitions';
23
- import { IStream } from '@fluidframework/driver-definitions/internal';
24
- import { ISummaryContext } from '@fluidframework/driver-definitions/internal';
25
- import { ISummaryHandle } from '@fluidframework/protocol-definitions';
26
- import { ISummaryTree } from '@fluidframework/protocol-definitions';
27
- import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
28
- import { ITestDbFactory } from '@fluidframework/server-test-utils';
29
- import { ITokenProvider } from '@fluidframework/routerlicious-driver';
30
- import { IUrlResolver } from '@fluidframework/driver-definitions/internal';
31
- import { IVersion } from '@fluidframework/protocol-definitions';
32
- import { IWebSocketServer } from '@fluidframework/server-services-core';
33
- import { NackErrorType } from '@fluidframework/protocol-definitions';
34
- import type { Socket } from 'socket.io-client';
35
- import { TypedEventEmitter } from '@fluid-internal/client-utils';
36
-
37
- /* Excluded from this release type: createLocalDocumentService */
38
-
39
- /* Excluded from this release type: createLocalResolverCreateNewRequest */
40
-
41
- /* Excluded from this release type: DocumentDeltaConnection */
42
-
43
- /* Excluded from this release type: IDocumentDeltaConnection */
44
-
45
- /* Excluded from this release type: IDocumentDeltaStorageService */
46
-
47
- /* Excluded from this release type: IDocumentService */
48
-
49
- /* Excluded from this release type: IDocumentServiceEvents */
50
-
51
- /* Excluded from this release type: IDocumentServiceFactory */
52
-
53
- /* Excluded from this release type: IDocumentServicePolicies */
54
-
55
- /* Excluded from this release type: IDocumentStorageService */
56
-
57
- /* Excluded from this release type: IDocumentStorageServicePolicies */
58
-
59
- /* Excluded from this release type: IResolvedUrl */
60
-
61
- /* Excluded from this release type: ISnapshot */
62
-
63
- /* Excluded from this release type: ISnapshotFetchOptions */
64
-
65
- /* Excluded from this release type: IStream */
66
-
67
- /* Excluded from this release type: ISummaryContext */
68
-
69
- /* Excluded from this release type: IUrlResolver */
70
-
71
- /* Excluded from this release type: LocalDeltaStorageService */
72
-
73
- /* Excluded from this release type: LocalDocumentDeltaConnection */
74
-
75
- /* Excluded from this release type: LocalDocumentService */
76
-
77
- /* Excluded from this release type: LocalDocumentServiceFactory */
78
-
79
- /* Excluded from this release type: LocalDocumentStorageService */
80
-
81
- /* Excluded from this release type: LocalResolver */
82
-
83
- /* Excluded from this release type: LocalSessionStorageDbFactory */
84
-
85
- export { }
@@ -1,85 +0,0 @@
1
- import { DocumentDeltaConnection } from '@fluidframework/driver-base/internal';
2
- import { GitManager } from '@fluidframework/server-services-client';
3
- import { IClient } from '@fluidframework/protocol-definitions';
4
- import { ICreateBlobResponse } from '@fluidframework/protocol-definitions';
5
- import { IDatabaseManager } from '@fluidframework/server-services-core';
6
- import { IDb } from '@fluidframework/server-services-core';
7
- import { IDocumentDeltaConnection } from '@fluidframework/driver-definitions/internal';
8
- import { IDocumentDeltaStorageService } from '@fluidframework/driver-definitions/internal';
9
- import { IDocumentMessage } from '@fluidframework/protocol-definitions';
10
- import { IDocumentService } from '@fluidframework/driver-definitions/internal';
11
- import { IDocumentServiceEvents } from '@fluidframework/driver-definitions/internal';
12
- import { IDocumentServiceFactory } from '@fluidframework/driver-definitions/internal';
13
- import { IDocumentServicePolicies } from '@fluidframework/driver-definitions/internal';
14
- import { IDocumentStorageService } from '@fluidframework/driver-definitions/internal';
15
- import { IDocumentStorageServicePolicies } from '@fluidframework/driver-definitions/internal';
16
- import { ILocalDeltaConnectionServer } from '@fluidframework/server-local-server';
17
- import { IRequest } from '@fluidframework/core-interfaces';
18
- import { IResolvedUrl } from '@fluidframework/driver-definitions/internal';
19
- import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
20
- import { ISnapshot } from '@fluidframework/driver-definitions/internal';
21
- import { ISnapshotFetchOptions } from '@fluidframework/driver-definitions/internal';
22
- import { ISnapshotTreeEx } from '@fluidframework/protocol-definitions';
23
- import { IStream } from '@fluidframework/driver-definitions/internal';
24
- import { ISummaryContext } from '@fluidframework/driver-definitions/internal';
25
- import { ISummaryHandle } from '@fluidframework/protocol-definitions';
26
- import { ISummaryTree } from '@fluidframework/protocol-definitions';
27
- import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
28
- import { ITestDbFactory } from '@fluidframework/server-test-utils';
29
- import { ITokenProvider } from '@fluidframework/routerlicious-driver';
30
- import { IUrlResolver } from '@fluidframework/driver-definitions/internal';
31
- import { IVersion } from '@fluidframework/protocol-definitions';
32
- import { IWebSocketServer } from '@fluidframework/server-services-core';
33
- import { NackErrorType } from '@fluidframework/protocol-definitions';
34
- import type { Socket } from 'socket.io-client';
35
- import { TypedEventEmitter } from '@fluid-internal/client-utils';
36
-
37
- /* Excluded from this release type: createLocalDocumentService */
38
-
39
- /* Excluded from this release type: createLocalResolverCreateNewRequest */
40
-
41
- /* Excluded from this release type: DocumentDeltaConnection */
42
-
43
- /* Excluded from this release type: IDocumentDeltaConnection */
44
-
45
- /* Excluded from this release type: IDocumentDeltaStorageService */
46
-
47
- /* Excluded from this release type: IDocumentService */
48
-
49
- /* Excluded from this release type: IDocumentServiceEvents */
50
-
51
- /* Excluded from this release type: IDocumentServiceFactory */
52
-
53
- /* Excluded from this release type: IDocumentServicePolicies */
54
-
55
- /* Excluded from this release type: IDocumentStorageService */
56
-
57
- /* Excluded from this release type: IDocumentStorageServicePolicies */
58
-
59
- /* Excluded from this release type: IResolvedUrl */
60
-
61
- /* Excluded from this release type: ISnapshot */
62
-
63
- /* Excluded from this release type: ISnapshotFetchOptions */
64
-
65
- /* Excluded from this release type: IStream */
66
-
67
- /* Excluded from this release type: ISummaryContext */
68
-
69
- /* Excluded from this release type: IUrlResolver */
70
-
71
- /* Excluded from this release type: LocalDeltaStorageService */
72
-
73
- /* Excluded from this release type: LocalDocumentDeltaConnection */
74
-
75
- /* Excluded from this release type: LocalDocumentService */
76
-
77
- /* Excluded from this release type: LocalDocumentServiceFactory */
78
-
79
- /* Excluded from this release type: LocalDocumentStorageService */
80
-
81
- /* Excluded from this release type: LocalResolver */
82
-
83
- /* Excluded from this release type: LocalSessionStorageDbFactory */
84
-
85
- export { }
@@ -1,253 +0,0 @@
1
- import { DocumentDeltaConnection } from '@fluidframework/driver-base/internal';
2
- import { GitManager } from '@fluidframework/server-services-client';
3
- import { IClient } from '@fluidframework/protocol-definitions';
4
- import { ICreateBlobResponse } from '@fluidframework/protocol-definitions';
5
- import { IDatabaseManager } from '@fluidframework/server-services-core';
6
- import { IDb } from '@fluidframework/server-services-core';
7
- import { IDocumentDeltaConnection } from '@fluidframework/driver-definitions/internal';
8
- import { IDocumentDeltaStorageService } from '@fluidframework/driver-definitions/internal';
9
- import { IDocumentMessage } from '@fluidframework/protocol-definitions';
10
- import { IDocumentService } from '@fluidframework/driver-definitions/internal';
11
- import { IDocumentServiceEvents } from '@fluidframework/driver-definitions/internal';
12
- import { IDocumentServiceFactory } from '@fluidframework/driver-definitions/internal';
13
- import { IDocumentServicePolicies } from '@fluidframework/driver-definitions/internal';
14
- import { IDocumentStorageService } from '@fluidframework/driver-definitions/internal';
15
- import { IDocumentStorageServicePolicies } from '@fluidframework/driver-definitions/internal';
16
- import { ILocalDeltaConnectionServer } from '@fluidframework/server-local-server';
17
- import { IRequest } from '@fluidframework/core-interfaces';
18
- import { IResolvedUrl } from '@fluidframework/driver-definitions/internal';
19
- import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
20
- import { ISnapshot } from '@fluidframework/driver-definitions/internal';
21
- import { ISnapshotFetchOptions } from '@fluidframework/driver-definitions/internal';
22
- import { ISnapshotTreeEx } from '@fluidframework/protocol-definitions';
23
- import { IStream } from '@fluidframework/driver-definitions/internal';
24
- import { ISummaryContext } from '@fluidframework/driver-definitions/internal';
25
- import { ISummaryHandle } from '@fluidframework/protocol-definitions';
26
- import { ISummaryTree } from '@fluidframework/protocol-definitions';
27
- import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
28
- import { ITestDbFactory } from '@fluidframework/server-test-utils';
29
- import { ITokenProvider } from '@fluidframework/routerlicious-driver';
30
- import { IUrlResolver } from '@fluidframework/driver-definitions/internal';
31
- import { IVersion } from '@fluidframework/protocol-definitions';
32
- import { IWebSocketServer } from '@fluidframework/server-services-core';
33
- import { NackErrorType } from '@fluidframework/protocol-definitions';
34
- import type { Socket } from 'socket.io-client';
35
- import { TypedEventEmitter } from '@fluid-internal/client-utils';
36
-
37
- /**
38
- * Creates and returns a document service for local use.
39
- * @param localDeltaConnectionServer - delta connection server for ops
40
- * @param tokenProvider - token provider with a single token
41
- * @param tenantId - ID of tenant
42
- * @param documentId - ID of document
43
- * @internal
44
- */
45
- export declare function createLocalDocumentService(resolvedUrl: IResolvedUrl, localDeltaConnectionServer: ILocalDeltaConnectionServer, tokenProvider: ITokenProvider, tenantId: string, documentId: string, documentDeltaConnectionsMap: Map<string, LocalDocumentDeltaConnection>, policies?: IDocumentServicePolicies, innerDocumentService?: IDocumentService, logger?: ITelemetryBaseLogger): IDocumentService;
46
-
47
- /**
48
- * @alpha
49
- */
50
- export declare function createLocalResolverCreateNewRequest(documentId: string): IRequest;
51
-
52
- /**
53
- * Provides access to the underlying delta storage on the server for local driver.
54
- * @internal
55
- */
56
- export declare class LocalDeltaStorageService implements IDocumentDeltaStorageService {
57
- private readonly tenantId;
58
- private readonly id;
59
- private readonly databaseManager;
60
- constructor(tenantId: string, id: string, databaseManager: IDatabaseManager);
61
- fetchMessages(from: number, to: number | undefined, abortSignal?: AbortSignal, cachedOnly?: boolean): IStream<ISequencedDocumentMessage[]>;
62
- private getCore;
63
- }
64
-
65
- /**
66
- * Represents a connection to a stream of delta updates
67
- * @internal
68
- */
69
- export declare class LocalDocumentDeltaConnection extends DocumentDeltaConnection {
70
- /**
71
- * Create a LocalDocumentDeltaConnection
72
- * Handle initial messages, contents or signals if they were in queue
73
- *
74
- * @param tenantId - the ID of the tenant
75
- * @param id - document ID
76
- * @param token - authorization token for storage service
77
- * @param client - information about the client
78
- * @param webSocketServer - web socket server to create connection
79
- */
80
- static create(tenantId: string, id: string, token: string, client: IClient, webSocketServer: IWebSocketServer, timeoutMs?: number, logger?: ITelemetryBaseLogger): Promise<LocalDocumentDeltaConnection>;
81
- constructor(socket: Socket, documentId: string, logger?: ITelemetryBaseLogger);
82
- /**
83
- * Submits a new delta operation to the server
84
- */
85
- submit(messages: IDocumentMessage[]): void;
86
- /**
87
- * Submits a new signal to the server
88
- */
89
- submitSignal(message: string): void;
90
- /**
91
- * Send a "disconnect" message on the socket.
92
- * @param disconnectReason - The reason of the disconnection.
93
- */
94
- disconnectClient(disconnectReason: string): void;
95
- /**
96
- * * Sends a "nack" message on the socket.
97
- * @param code - An error code number that represents the error. It will be a valid HTTP error code.
98
- * @param type - Type of the Nack.
99
- * @param message - A message about the nack for debugging/logging/telemetry purposes.
100
- */
101
- nackClient(code: number | undefined, type: NackErrorType | undefined, message: any): void;
102
- }
103
-
104
- /**
105
- * Basic implementation of a document service for local use.
106
- * @internal
107
- */
108
- export declare class LocalDocumentService extends TypedEventEmitter<IDocumentServiceEvents> implements IDocumentService {
109
- readonly resolvedUrl: IResolvedUrl;
110
- private readonly localDeltaConnectionServer;
111
- private readonly tokenProvider;
112
- private readonly tenantId;
113
- private readonly documentId;
114
- private readonly documentDeltaConnectionsMap;
115
- readonly policies: IDocumentServicePolicies;
116
- private readonly innerDocumentService?;
117
- private readonly logger?;
118
- /**
119
- * @param localDeltaConnectionServer - delta connection server for ops
120
- * @param tokenProvider - token provider
121
- * @param tenantId - ID of tenant
122
- * @param documentId - ID of document
123
- */
124
- constructor(resolvedUrl: IResolvedUrl, localDeltaConnectionServer: ILocalDeltaConnectionServer, tokenProvider: ITokenProvider, tenantId: string, documentId: string, documentDeltaConnectionsMap: Map<string, LocalDocumentDeltaConnection>, policies?: IDocumentServicePolicies, innerDocumentService?: IDocumentService | undefined, logger?: ITelemetryBaseLogger | undefined);
125
- dispose(): void;
126
- /**
127
- * Creates and returns a document storage service for local use.
128
- */
129
- connectToStorage(): Promise<IDocumentStorageService>;
130
- /**
131
- * Creates and returns a delta storage service for local use.
132
- */
133
- connectToDeltaStorage(): Promise<IDocumentDeltaStorageService>;
134
- /**
135
- * Creates and returns a delta stream for local use.
136
- * @param client - client data
137
- */
138
- connectToDeltaStream(client: IClient): Promise<IDocumentDeltaConnection>;
139
- }
140
-
141
- /**
142
- * Implementation of document service factory for local use.
143
- * @alpha
144
- */
145
- export declare class LocalDocumentServiceFactory implements IDocumentServiceFactory {
146
- private readonly localDeltaConnectionServer;
147
- private readonly policies?;
148
- private readonly innerDocumentService?;
149
- private readonly documentDeltaConnectionsMap;
150
- /**
151
- * @param localDeltaConnectionServer - delta connection server for ops
152
- */
153
- constructor(localDeltaConnectionServer: ILocalDeltaConnectionServer, policies?: IDocumentServicePolicies | undefined, innerDocumentService?: IDocumentService | undefined);
154
- createContainer(createNewSummary: ISummaryTree | undefined, resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
155
- /**
156
- * Creates and returns a document service for testing using the given resolved
157
- * URL for the tenant ID, document ID, and token.
158
- * @param resolvedUrl - resolved URL of document
159
- */
160
- createDocumentService(resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
161
- /**
162
- * Gets the document delta connection for the clientId and asks it to disconnect the client.
163
- * @param clientId - The ID of the client to be disconnected.
164
- * @param disconnectReason - The reason of the disconnection.
165
- */
166
- disconnectClient(clientId: string, disconnectReason: string): void;
167
- /**
168
- * Gets the document delta connection for the clientId and asks it to nack the client.
169
- * @param clientId - The ID of the client to be Nack'd.
170
- * @param code - An error code number that represents the error. It will be a valid HTTP error code.
171
- * @param type - Type of the Nack.
172
- * @param message - A message about the nack for debugging/logging/telemetry purposes.
173
- */
174
- nackClient(clientId: string, code?: number, type?: NackErrorType, message?: any): void;
175
- }
176
-
177
- /**
178
- * @internal
179
- */
180
- export declare class LocalDocumentStorageService implements IDocumentStorageService {
181
- private readonly id;
182
- private readonly manager;
183
- readonly policies: IDocumentStorageServicePolicies;
184
- private readonly localDeltaConnectionServer?;
185
- private readonly resolvedUrl?;
186
- protected readonly blobsShaCache: Map<string, string>;
187
- private readonly summaryTreeUploadManager;
188
- constructor(id: string, manager: GitManager, policies: IDocumentStorageServicePolicies, localDeltaConnectionServer?: ILocalDeltaConnectionServer | undefined, resolvedUrl?: IResolvedUrl | undefined);
189
- getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
190
- getSnapshotTree(version?: IVersion): Promise<ISnapshotTreeEx | null>;
191
- getSnapshot(snapshotFetchOptions?: ISnapshotFetchOptions): Promise<ISnapshot>;
192
- /**
193
- * Strips the tree or any subtree of data if it has a groupId.
194
- *
195
- * @param tree - The tree to strip of loading groupIds
196
- * @returns a tree that has trees with groupIds that are empty
197
- */
198
- private stripTreeOfMissingLoadingGroupIds;
199
- /**
200
- * Named differently as the algorithm is a little more involved.
201
- *
202
- * We want to strip the tree if it has a groupId that is not in the loadingGroupIds or if it doesn't have a descendent or ancestor
203
- * that has a groupId that is in the loadingGroupIds.
204
- *
205
- * We keep the tree in the opposite case.
206
- *
207
- * @param tree - the tree to strip of any data that is not in the loadingGroupIds
208
- * @param loadingGroupIds - the set of groupIds that are being loaded
209
- * @param ancestorGroupIdInLoadingGroup - whether the ancestor of the tree has a groupId that is in the loadingGroupIds
210
- * @returns whether or not it or descendant has a groupId that is in the loadingGroupIds
211
- */
212
- private filterTreeByLoadingGroupIds;
213
- private populateBlobContents;
214
- private populateGroupId;
215
- private stripTree;
216
- private readGroupId;
217
- readBlob(blobId: string): Promise<ArrayBufferLike>;
218
- uploadSummaryWithContext(summary: ISummaryTree, context: ISummaryContext): Promise<string>;
219
- createBlob(file: ArrayBufferLike): Promise<ICreateBlobResponse>;
220
- downloadSummary(handle: ISummaryHandle): Promise<ISummaryTree>;
221
- private getPreviousFullSnapshot;
222
- }
223
-
224
- /**
225
- * Resolves URLs by providing fake URLs which succeed with the other
226
- * related local classes.
227
- * @alpha
228
- */
229
- export declare class LocalResolver implements IUrlResolver {
230
- private readonly tenantId;
231
- private readonly tokenKey;
232
- constructor();
233
- /**
234
- * Resolves URL requests by providing fake URLs with an actually generated
235
- * token from constant test strings. The root of the URL is fake, but the
236
- * remaining relative URL can still be parsed.
237
- * @param request - request to handle
238
- */
239
- resolve(request: IRequest): Promise<IResolvedUrl>;
240
- getAbsoluteUrl(resolvedUrl: IResolvedUrl, relativeUrl: string): Promise<string>;
241
- createCreateNewRequest(documentId: string): IRequest;
242
- }
243
-
244
- /**
245
- * A database factory for testing that stores data in the browsers session storage
246
- * @internal
247
- */
248
- export declare class LocalSessionStorageDbFactory implements ITestDbFactory {
249
- readonly testDatabase: IDb;
250
- connect(): Promise<IDb>;
251
- }
252
-
253
- export { }
@@ -1,11 +0,0 @@
1
- // This file is read by tools that parse documentation comments conforming to the TSDoc standard.
2
- // It should be published with your NPM package. It should not be tracked by Git.
3
- {
4
- "tsdocVersion": "0.12",
5
- "toolPackages": [
6
- {
7
- "packageName": "@microsoft/api-extractor",
8
- "packageVersion": "7.42.3"
9
- }
10
- ]
11
- }
@@ -1,112 +0,0 @@
1
- import { DocumentDeltaConnection } from '@fluidframework/driver-base/internal';
2
- import { GitManager } from '@fluidframework/server-services-client';
3
- import { IClient } from '@fluidframework/protocol-definitions';
4
- import { ICreateBlobResponse } from '@fluidframework/protocol-definitions';
5
- import { IDatabaseManager } from '@fluidframework/server-services-core';
6
- import { IDb } from '@fluidframework/server-services-core';
7
- import { IDocumentDeltaConnection } from '@fluidframework/driver-definitions/internal';
8
- import { IDocumentDeltaStorageService } from '@fluidframework/driver-definitions/internal';
9
- import { IDocumentMessage } from '@fluidframework/protocol-definitions';
10
- import { IDocumentService } from '@fluidframework/driver-definitions/internal';
11
- import { IDocumentServiceEvents } from '@fluidframework/driver-definitions/internal';
12
- import { IDocumentServiceFactory } from '@fluidframework/driver-definitions/internal';
13
- import { IDocumentServicePolicies } from '@fluidframework/driver-definitions/internal';
14
- import { IDocumentStorageService } from '@fluidframework/driver-definitions/internal';
15
- import { IDocumentStorageServicePolicies } from '@fluidframework/driver-definitions/internal';
16
- import { ILocalDeltaConnectionServer } from '@fluidframework/server-local-server';
17
- import { IRequest } from '@fluidframework/core-interfaces';
18
- import { IResolvedUrl } from '@fluidframework/driver-definitions/internal';
19
- import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
20
- import { ISnapshot } from '@fluidframework/driver-definitions/internal';
21
- import { ISnapshotFetchOptions } from '@fluidframework/driver-definitions/internal';
22
- import { ISnapshotTreeEx } from '@fluidframework/protocol-definitions';
23
- import { IStream } from '@fluidframework/driver-definitions/internal';
24
- import { ISummaryContext } from '@fluidframework/driver-definitions/internal';
25
- import { ISummaryHandle } from '@fluidframework/protocol-definitions';
26
- import { ISummaryTree } from '@fluidframework/protocol-definitions';
27
- import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
28
- import { ITestDbFactory } from '@fluidframework/server-test-utils';
29
- import { ITokenProvider } from '@fluidframework/routerlicious-driver';
30
- import { IUrlResolver } from '@fluidframework/driver-definitions/internal';
31
- import { IVersion } from '@fluidframework/protocol-definitions';
32
- import { IWebSocketServer } from '@fluidframework/server-services-core';
33
- import { NackErrorType } from '@fluidframework/protocol-definitions';
34
- import type { Socket } from 'socket.io-client';
35
- import { TypedEventEmitter } from '@fluid-internal/client-utils';
36
-
37
- /* Excluded from this release type: createLocalDocumentService */
38
-
39
- /**
40
- * @alpha
41
- */
42
- export declare function createLocalResolverCreateNewRequest(documentId: string): IRequest;
43
-
44
- /* Excluded from this release type: DocumentDeltaConnection */
45
-
46
- /* Excluded from this release type: LocalDeltaStorageService */
47
-
48
- /* Excluded from this release type: LocalDocumentDeltaConnection */
49
-
50
- /* Excluded from this release type: LocalDocumentService */
51
-
52
- /**
53
- * Implementation of document service factory for local use.
54
- * @alpha
55
- */
56
- export declare class LocalDocumentServiceFactory implements IDocumentServiceFactory {
57
- private readonly localDeltaConnectionServer;
58
- private readonly policies?;
59
- private readonly innerDocumentService?;
60
- private readonly documentDeltaConnectionsMap;
61
- /**
62
- * @param localDeltaConnectionServer - delta connection server for ops
63
- */
64
- constructor(localDeltaConnectionServer: ILocalDeltaConnectionServer, policies?: IDocumentServicePolicies | undefined, innerDocumentService?: IDocumentService | undefined);
65
- createContainer(createNewSummary: ISummaryTree | undefined, resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
66
- /**
67
- * Creates and returns a document service for testing using the given resolved
68
- * URL for the tenant ID, document ID, and token.
69
- * @param resolvedUrl - resolved URL of document
70
- */
71
- createDocumentService(resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
72
- /**
73
- * Gets the document delta connection for the clientId and asks it to disconnect the client.
74
- * @param clientId - The ID of the client to be disconnected.
75
- * @param disconnectReason - The reason of the disconnection.
76
- */
77
- disconnectClient(clientId: string, disconnectReason: string): void;
78
- /**
79
- * Gets the document delta connection for the clientId and asks it to nack the client.
80
- * @param clientId - The ID of the client to be Nack'd.
81
- * @param code - An error code number that represents the error. It will be a valid HTTP error code.
82
- * @param type - Type of the Nack.
83
- * @param message - A message about the nack for debugging/logging/telemetry purposes.
84
- */
85
- nackClient(clientId: string, code?: number, type?: NackErrorType, message?: any): void;
86
- }
87
-
88
- /* Excluded from this release type: LocalDocumentStorageService */
89
-
90
- /**
91
- * Resolves URLs by providing fake URLs which succeed with the other
92
- * related local classes.
93
- * @alpha
94
- */
95
- export declare class LocalResolver implements IUrlResolver {
96
- private readonly tenantId;
97
- private readonly tokenKey;
98
- constructor();
99
- /**
100
- * Resolves URL requests by providing fake URLs with an actually generated
101
- * token from constant test strings. The root of the URL is fake, but the
102
- * remaining relative URL can still be parsed.
103
- * @param request - request to handle
104
- */
105
- resolve(request: IRequest): Promise<IResolvedUrl>;
106
- getAbsoluteUrl(resolvedUrl: IResolvedUrl, relativeUrl: string): Promise<string>;
107
- createCreateNewRequest(documentId: string): IRequest;
108
- }
109
-
110
- /* Excluded from this release type: LocalSessionStorageDbFactory */
111
-
112
- export { }
@@ -1,85 +0,0 @@
1
- import { DocumentDeltaConnection } from '@fluidframework/driver-base/internal';
2
- import { GitManager } from '@fluidframework/server-services-client';
3
- import { IClient } from '@fluidframework/protocol-definitions';
4
- import { ICreateBlobResponse } from '@fluidframework/protocol-definitions';
5
- import { IDatabaseManager } from '@fluidframework/server-services-core';
6
- import { IDb } from '@fluidframework/server-services-core';
7
- import { IDocumentDeltaConnection } from '@fluidframework/driver-definitions/internal';
8
- import { IDocumentDeltaStorageService } from '@fluidframework/driver-definitions/internal';
9
- import { IDocumentMessage } from '@fluidframework/protocol-definitions';
10
- import { IDocumentService } from '@fluidframework/driver-definitions/internal';
11
- import { IDocumentServiceEvents } from '@fluidframework/driver-definitions/internal';
12
- import { IDocumentServiceFactory } from '@fluidframework/driver-definitions/internal';
13
- import { IDocumentServicePolicies } from '@fluidframework/driver-definitions/internal';
14
- import { IDocumentStorageService } from '@fluidframework/driver-definitions/internal';
15
- import { IDocumentStorageServicePolicies } from '@fluidframework/driver-definitions/internal';
16
- import { ILocalDeltaConnectionServer } from '@fluidframework/server-local-server';
17
- import { IRequest } from '@fluidframework/core-interfaces';
18
- import { IResolvedUrl } from '@fluidframework/driver-definitions/internal';
19
- import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
20
- import { ISnapshot } from '@fluidframework/driver-definitions/internal';
21
- import { ISnapshotFetchOptions } from '@fluidframework/driver-definitions/internal';
22
- import { ISnapshotTreeEx } from '@fluidframework/protocol-definitions';
23
- import { IStream } from '@fluidframework/driver-definitions/internal';
24
- import { ISummaryContext } from '@fluidframework/driver-definitions/internal';
25
- import { ISummaryHandle } from '@fluidframework/protocol-definitions';
26
- import { ISummaryTree } from '@fluidframework/protocol-definitions';
27
- import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
28
- import { ITestDbFactory } from '@fluidframework/server-test-utils';
29
- import { ITokenProvider } from '@fluidframework/routerlicious-driver';
30
- import { IUrlResolver } from '@fluidframework/driver-definitions/internal';
31
- import { IVersion } from '@fluidframework/protocol-definitions';
32
- import { IWebSocketServer } from '@fluidframework/server-services-core';
33
- import { NackErrorType } from '@fluidframework/protocol-definitions';
34
- import type { Socket } from 'socket.io-client';
35
- import { TypedEventEmitter } from '@fluid-internal/client-utils';
36
-
37
- /* Excluded from this release type: createLocalDocumentService */
38
-
39
- /* Excluded from this release type: createLocalResolverCreateNewRequest */
40
-
41
- /* Excluded from this release type: DocumentDeltaConnection */
42
-
43
- /* Excluded from this release type: IDocumentDeltaConnection */
44
-
45
- /* Excluded from this release type: IDocumentDeltaStorageService */
46
-
47
- /* Excluded from this release type: IDocumentService */
48
-
49
- /* Excluded from this release type: IDocumentServiceEvents */
50
-
51
- /* Excluded from this release type: IDocumentServiceFactory */
52
-
53
- /* Excluded from this release type: IDocumentServicePolicies */
54
-
55
- /* Excluded from this release type: IDocumentStorageService */
56
-
57
- /* Excluded from this release type: IDocumentStorageServicePolicies */
58
-
59
- /* Excluded from this release type: IResolvedUrl */
60
-
61
- /* Excluded from this release type: ISnapshot */
62
-
63
- /* Excluded from this release type: ISnapshotFetchOptions */
64
-
65
- /* Excluded from this release type: IStream */
66
-
67
- /* Excluded from this release type: ISummaryContext */
68
-
69
- /* Excluded from this release type: IUrlResolver */
70
-
71
- /* Excluded from this release type: LocalDeltaStorageService */
72
-
73
- /* Excluded from this release type: LocalDocumentDeltaConnection */
74
-
75
- /* Excluded from this release type: LocalDocumentService */
76
-
77
- /* Excluded from this release type: LocalDocumentServiceFactory */
78
-
79
- /* Excluded from this release type: LocalDocumentStorageService */
80
-
81
- /* Excluded from this release type: LocalResolver */
82
-
83
- /* Excluded from this release type: LocalSessionStorageDbFactory */
84
-
85
- export { }
@@ -1,85 +0,0 @@
1
- import { DocumentDeltaConnection } from '@fluidframework/driver-base/internal';
2
- import { GitManager } from '@fluidframework/server-services-client';
3
- import { IClient } from '@fluidframework/protocol-definitions';
4
- import { ICreateBlobResponse } from '@fluidframework/protocol-definitions';
5
- import { IDatabaseManager } from '@fluidframework/server-services-core';
6
- import { IDb } from '@fluidframework/server-services-core';
7
- import { IDocumentDeltaConnection } from '@fluidframework/driver-definitions/internal';
8
- import { IDocumentDeltaStorageService } from '@fluidframework/driver-definitions/internal';
9
- import { IDocumentMessage } from '@fluidframework/protocol-definitions';
10
- import { IDocumentService } from '@fluidframework/driver-definitions/internal';
11
- import { IDocumentServiceEvents } from '@fluidframework/driver-definitions/internal';
12
- import { IDocumentServiceFactory } from '@fluidframework/driver-definitions/internal';
13
- import { IDocumentServicePolicies } from '@fluidframework/driver-definitions/internal';
14
- import { IDocumentStorageService } from '@fluidframework/driver-definitions/internal';
15
- import { IDocumentStorageServicePolicies } from '@fluidframework/driver-definitions/internal';
16
- import { ILocalDeltaConnectionServer } from '@fluidframework/server-local-server';
17
- import { IRequest } from '@fluidframework/core-interfaces';
18
- import { IResolvedUrl } from '@fluidframework/driver-definitions/internal';
19
- import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
20
- import { ISnapshot } from '@fluidframework/driver-definitions/internal';
21
- import { ISnapshotFetchOptions } from '@fluidframework/driver-definitions/internal';
22
- import { ISnapshotTreeEx } from '@fluidframework/protocol-definitions';
23
- import { IStream } from '@fluidframework/driver-definitions/internal';
24
- import { ISummaryContext } from '@fluidframework/driver-definitions/internal';
25
- import { ISummaryHandle } from '@fluidframework/protocol-definitions';
26
- import { ISummaryTree } from '@fluidframework/protocol-definitions';
27
- import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
28
- import { ITestDbFactory } from '@fluidframework/server-test-utils';
29
- import { ITokenProvider } from '@fluidframework/routerlicious-driver';
30
- import { IUrlResolver } from '@fluidframework/driver-definitions/internal';
31
- import { IVersion } from '@fluidframework/protocol-definitions';
32
- import { IWebSocketServer } from '@fluidframework/server-services-core';
33
- import { NackErrorType } from '@fluidframework/protocol-definitions';
34
- import type { Socket } from 'socket.io-client';
35
- import { TypedEventEmitter } from '@fluid-internal/client-utils';
36
-
37
- /* Excluded from this release type: createLocalDocumentService */
38
-
39
- /* Excluded from this release type: createLocalResolverCreateNewRequest */
40
-
41
- /* Excluded from this release type: DocumentDeltaConnection */
42
-
43
- /* Excluded from this release type: IDocumentDeltaConnection */
44
-
45
- /* Excluded from this release type: IDocumentDeltaStorageService */
46
-
47
- /* Excluded from this release type: IDocumentService */
48
-
49
- /* Excluded from this release type: IDocumentServiceEvents */
50
-
51
- /* Excluded from this release type: IDocumentServiceFactory */
52
-
53
- /* Excluded from this release type: IDocumentServicePolicies */
54
-
55
- /* Excluded from this release type: IDocumentStorageService */
56
-
57
- /* Excluded from this release type: IDocumentStorageServicePolicies */
58
-
59
- /* Excluded from this release type: IResolvedUrl */
60
-
61
- /* Excluded from this release type: ISnapshot */
62
-
63
- /* Excluded from this release type: ISnapshotFetchOptions */
64
-
65
- /* Excluded from this release type: IStream */
66
-
67
- /* Excluded from this release type: ISummaryContext */
68
-
69
- /* Excluded from this release type: IUrlResolver */
70
-
71
- /* Excluded from this release type: LocalDeltaStorageService */
72
-
73
- /* Excluded from this release type: LocalDocumentDeltaConnection */
74
-
75
- /* Excluded from this release type: LocalDocumentService */
76
-
77
- /* Excluded from this release type: LocalDocumentServiceFactory */
78
-
79
- /* Excluded from this release type: LocalDocumentStorageService */
80
-
81
- /* Excluded from this release type: LocalResolver */
82
-
83
- /* Excluded from this release type: LocalSessionStorageDbFactory */
84
-
85
- export { }
@@ -1,253 +0,0 @@
1
- import { DocumentDeltaConnection } from '@fluidframework/driver-base/internal';
2
- import { GitManager } from '@fluidframework/server-services-client';
3
- import { IClient } from '@fluidframework/protocol-definitions';
4
- import { ICreateBlobResponse } from '@fluidframework/protocol-definitions';
5
- import { IDatabaseManager } from '@fluidframework/server-services-core';
6
- import { IDb } from '@fluidframework/server-services-core';
7
- import { IDocumentDeltaConnection } from '@fluidframework/driver-definitions/internal';
8
- import { IDocumentDeltaStorageService } from '@fluidframework/driver-definitions/internal';
9
- import { IDocumentMessage } from '@fluidframework/protocol-definitions';
10
- import { IDocumentService } from '@fluidframework/driver-definitions/internal';
11
- import { IDocumentServiceEvents } from '@fluidframework/driver-definitions/internal';
12
- import { IDocumentServiceFactory } from '@fluidframework/driver-definitions/internal';
13
- import { IDocumentServicePolicies } from '@fluidframework/driver-definitions/internal';
14
- import { IDocumentStorageService } from '@fluidframework/driver-definitions/internal';
15
- import { IDocumentStorageServicePolicies } from '@fluidframework/driver-definitions/internal';
16
- import { ILocalDeltaConnectionServer } from '@fluidframework/server-local-server';
17
- import { IRequest } from '@fluidframework/core-interfaces';
18
- import { IResolvedUrl } from '@fluidframework/driver-definitions/internal';
19
- import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
20
- import { ISnapshot } from '@fluidframework/driver-definitions/internal';
21
- import { ISnapshotFetchOptions } from '@fluidframework/driver-definitions/internal';
22
- import { ISnapshotTreeEx } from '@fluidframework/protocol-definitions';
23
- import { IStream } from '@fluidframework/driver-definitions/internal';
24
- import { ISummaryContext } from '@fluidframework/driver-definitions/internal';
25
- import { ISummaryHandle } from '@fluidframework/protocol-definitions';
26
- import { ISummaryTree } from '@fluidframework/protocol-definitions';
27
- import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
28
- import { ITestDbFactory } from '@fluidframework/server-test-utils';
29
- import { ITokenProvider } from '@fluidframework/routerlicious-driver';
30
- import { IUrlResolver } from '@fluidframework/driver-definitions/internal';
31
- import { IVersion } from '@fluidframework/protocol-definitions';
32
- import { IWebSocketServer } from '@fluidframework/server-services-core';
33
- import { NackErrorType } from '@fluidframework/protocol-definitions';
34
- import type { Socket } from 'socket.io-client';
35
- import { TypedEventEmitter } from '@fluid-internal/client-utils';
36
-
37
- /**
38
- * Creates and returns a document service for local use.
39
- * @param localDeltaConnectionServer - delta connection server for ops
40
- * @param tokenProvider - token provider with a single token
41
- * @param tenantId - ID of tenant
42
- * @param documentId - ID of document
43
- * @internal
44
- */
45
- export declare function createLocalDocumentService(resolvedUrl: IResolvedUrl, localDeltaConnectionServer: ILocalDeltaConnectionServer, tokenProvider: ITokenProvider, tenantId: string, documentId: string, documentDeltaConnectionsMap: Map<string, LocalDocumentDeltaConnection>, policies?: IDocumentServicePolicies, innerDocumentService?: IDocumentService, logger?: ITelemetryBaseLogger): IDocumentService;
46
-
47
- /**
48
- * @alpha
49
- */
50
- export declare function createLocalResolverCreateNewRequest(documentId: string): IRequest;
51
-
52
- /**
53
- * Provides access to the underlying delta storage on the server for local driver.
54
- * @internal
55
- */
56
- export declare class LocalDeltaStorageService implements IDocumentDeltaStorageService {
57
- private readonly tenantId;
58
- private readonly id;
59
- private readonly databaseManager;
60
- constructor(tenantId: string, id: string, databaseManager: IDatabaseManager);
61
- fetchMessages(from: number, to: number | undefined, abortSignal?: AbortSignal, cachedOnly?: boolean): IStream<ISequencedDocumentMessage[]>;
62
- private getCore;
63
- }
64
-
65
- /**
66
- * Represents a connection to a stream of delta updates
67
- * @internal
68
- */
69
- export declare class LocalDocumentDeltaConnection extends DocumentDeltaConnection {
70
- /**
71
- * Create a LocalDocumentDeltaConnection
72
- * Handle initial messages, contents or signals if they were in queue
73
- *
74
- * @param tenantId - the ID of the tenant
75
- * @param id - document ID
76
- * @param token - authorization token for storage service
77
- * @param client - information about the client
78
- * @param webSocketServer - web socket server to create connection
79
- */
80
- static create(tenantId: string, id: string, token: string, client: IClient, webSocketServer: IWebSocketServer, timeoutMs?: number, logger?: ITelemetryBaseLogger): Promise<LocalDocumentDeltaConnection>;
81
- constructor(socket: Socket, documentId: string, logger?: ITelemetryBaseLogger);
82
- /**
83
- * Submits a new delta operation to the server
84
- */
85
- submit(messages: IDocumentMessage[]): void;
86
- /**
87
- * Submits a new signal to the server
88
- */
89
- submitSignal(message: string): void;
90
- /**
91
- * Send a "disconnect" message on the socket.
92
- * @param disconnectReason - The reason of the disconnection.
93
- */
94
- disconnectClient(disconnectReason: string): void;
95
- /**
96
- * * Sends a "nack" message on the socket.
97
- * @param code - An error code number that represents the error. It will be a valid HTTP error code.
98
- * @param type - Type of the Nack.
99
- * @param message - A message about the nack for debugging/logging/telemetry purposes.
100
- */
101
- nackClient(code: number | undefined, type: NackErrorType | undefined, message: any): void;
102
- }
103
-
104
- /**
105
- * Basic implementation of a document service for local use.
106
- * @internal
107
- */
108
- export declare class LocalDocumentService extends TypedEventEmitter<IDocumentServiceEvents> implements IDocumentService {
109
- readonly resolvedUrl: IResolvedUrl;
110
- private readonly localDeltaConnectionServer;
111
- private readonly tokenProvider;
112
- private readonly tenantId;
113
- private readonly documentId;
114
- private readonly documentDeltaConnectionsMap;
115
- readonly policies: IDocumentServicePolicies;
116
- private readonly innerDocumentService?;
117
- private readonly logger?;
118
- /**
119
- * @param localDeltaConnectionServer - delta connection server for ops
120
- * @param tokenProvider - token provider
121
- * @param tenantId - ID of tenant
122
- * @param documentId - ID of document
123
- */
124
- constructor(resolvedUrl: IResolvedUrl, localDeltaConnectionServer: ILocalDeltaConnectionServer, tokenProvider: ITokenProvider, tenantId: string, documentId: string, documentDeltaConnectionsMap: Map<string, LocalDocumentDeltaConnection>, policies?: IDocumentServicePolicies, innerDocumentService?: IDocumentService | undefined, logger?: ITelemetryBaseLogger | undefined);
125
- dispose(): void;
126
- /**
127
- * Creates and returns a document storage service for local use.
128
- */
129
- connectToStorage(): Promise<IDocumentStorageService>;
130
- /**
131
- * Creates and returns a delta storage service for local use.
132
- */
133
- connectToDeltaStorage(): Promise<IDocumentDeltaStorageService>;
134
- /**
135
- * Creates and returns a delta stream for local use.
136
- * @param client - client data
137
- */
138
- connectToDeltaStream(client: IClient): Promise<IDocumentDeltaConnection>;
139
- }
140
-
141
- /**
142
- * Implementation of document service factory for local use.
143
- * @alpha
144
- */
145
- export declare class LocalDocumentServiceFactory implements IDocumentServiceFactory {
146
- private readonly localDeltaConnectionServer;
147
- private readonly policies?;
148
- private readonly innerDocumentService?;
149
- private readonly documentDeltaConnectionsMap;
150
- /**
151
- * @param localDeltaConnectionServer - delta connection server for ops
152
- */
153
- constructor(localDeltaConnectionServer: ILocalDeltaConnectionServer, policies?: IDocumentServicePolicies | undefined, innerDocumentService?: IDocumentService | undefined);
154
- createContainer(createNewSummary: ISummaryTree | undefined, resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
155
- /**
156
- * Creates and returns a document service for testing using the given resolved
157
- * URL for the tenant ID, document ID, and token.
158
- * @param resolvedUrl - resolved URL of document
159
- */
160
- createDocumentService(resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
161
- /**
162
- * Gets the document delta connection for the clientId and asks it to disconnect the client.
163
- * @param clientId - The ID of the client to be disconnected.
164
- * @param disconnectReason - The reason of the disconnection.
165
- */
166
- disconnectClient(clientId: string, disconnectReason: string): void;
167
- /**
168
- * Gets the document delta connection for the clientId and asks it to nack the client.
169
- * @param clientId - The ID of the client to be Nack'd.
170
- * @param code - An error code number that represents the error. It will be a valid HTTP error code.
171
- * @param type - Type of the Nack.
172
- * @param message - A message about the nack for debugging/logging/telemetry purposes.
173
- */
174
- nackClient(clientId: string, code?: number, type?: NackErrorType, message?: any): void;
175
- }
176
-
177
- /**
178
- * @internal
179
- */
180
- export declare class LocalDocumentStorageService implements IDocumentStorageService {
181
- private readonly id;
182
- private readonly manager;
183
- readonly policies: IDocumentStorageServicePolicies;
184
- private readonly localDeltaConnectionServer?;
185
- private readonly resolvedUrl?;
186
- protected readonly blobsShaCache: Map<string, string>;
187
- private readonly summaryTreeUploadManager;
188
- constructor(id: string, manager: GitManager, policies: IDocumentStorageServicePolicies, localDeltaConnectionServer?: ILocalDeltaConnectionServer | undefined, resolvedUrl?: IResolvedUrl | undefined);
189
- getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
190
- getSnapshotTree(version?: IVersion): Promise<ISnapshotTreeEx | null>;
191
- getSnapshot(snapshotFetchOptions?: ISnapshotFetchOptions): Promise<ISnapshot>;
192
- /**
193
- * Strips the tree or any subtree of data if it has a groupId.
194
- *
195
- * @param tree - The tree to strip of loading groupIds
196
- * @returns a tree that has trees with groupIds that are empty
197
- */
198
- private stripTreeOfMissingLoadingGroupIds;
199
- /**
200
- * Named differently as the algorithm is a little more involved.
201
- *
202
- * We want to strip the tree if it has a groupId that is not in the loadingGroupIds or if it doesn't have a descendent or ancestor
203
- * that has a groupId that is in the loadingGroupIds.
204
- *
205
- * We keep the tree in the opposite case.
206
- *
207
- * @param tree - the tree to strip of any data that is not in the loadingGroupIds
208
- * @param loadingGroupIds - the set of groupIds that are being loaded
209
- * @param ancestorGroupIdInLoadingGroup - whether the ancestor of the tree has a groupId that is in the loadingGroupIds
210
- * @returns whether or not it or descendant has a groupId that is in the loadingGroupIds
211
- */
212
- private filterTreeByLoadingGroupIds;
213
- private populateBlobContents;
214
- private populateGroupId;
215
- private stripTree;
216
- private readGroupId;
217
- readBlob(blobId: string): Promise<ArrayBufferLike>;
218
- uploadSummaryWithContext(summary: ISummaryTree, context: ISummaryContext): Promise<string>;
219
- createBlob(file: ArrayBufferLike): Promise<ICreateBlobResponse>;
220
- downloadSummary(handle: ISummaryHandle): Promise<ISummaryTree>;
221
- private getPreviousFullSnapshot;
222
- }
223
-
224
- /**
225
- * Resolves URLs by providing fake URLs which succeed with the other
226
- * related local classes.
227
- * @alpha
228
- */
229
- export declare class LocalResolver implements IUrlResolver {
230
- private readonly tenantId;
231
- private readonly tokenKey;
232
- constructor();
233
- /**
234
- * Resolves URL requests by providing fake URLs with an actually generated
235
- * token from constant test strings. The root of the URL is fake, but the
236
- * remaining relative URL can still be parsed.
237
- * @param request - request to handle
238
- */
239
- resolve(request: IRequest): Promise<IResolvedUrl>;
240
- getAbsoluteUrl(resolvedUrl: IResolvedUrl, relativeUrl: string): Promise<string>;
241
- createCreateNewRequest(documentId: string): IRequest;
242
- }
243
-
244
- /**
245
- * A database factory for testing that stores data in the browsers session storage
246
- * @internal
247
- */
248
- export declare class LocalSessionStorageDbFactory implements ITestDbFactory {
249
- readonly testDatabase: IDb;
250
- connect(): Promise<IDb>;
251
- }
252
-
253
- export { }