@fluidframework/local-driver 1.4.0-121020 → 2.0.0-dev-rc.1.0.0.224419
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/.eslintrc.js +19 -22
- package/.mocharc.js +12 -0
- package/CHANGELOG.md +127 -0
- package/README.md +38 -0
- package/api-extractor-lint.json +4 -0
- package/api-extractor.json +4 -0
- package/api-report/local-driver.api.md +129 -0
- package/dist/{auth.js → auth.cjs} +8 -6
- package/dist/auth.cjs.map +1 -0
- package/dist/auth.d.ts.map +1 -1
- package/dist/index.cjs +24 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +7 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/local-driver-alpha.d.ts +110 -0
- package/dist/local-driver-beta.d.ts +75 -0
- package/dist/local-driver-public.d.ts +75 -0
- package/dist/local-driver-untrimmed.d.ts +226 -0
- package/dist/localCreateDocument.cjs +28 -0
- package/dist/localCreateDocument.cjs.map +1 -0
- package/dist/localCreateDocument.d.ts +8 -0
- package/dist/localCreateDocument.d.ts.map +1 -0
- package/dist/{localDeltaStorageService.js → localDeltaStorageService.cjs} +3 -2
- package/dist/localDeltaStorageService.cjs.map +1 -0
- package/dist/localDeltaStorageService.d.ts +4 -3
- package/dist/localDeltaStorageService.d.ts.map +1 -1
- package/dist/{localDocumentDeltaConnection.js → localDocumentDeltaConnection.cjs} +9 -11
- package/dist/localDocumentDeltaConnection.cjs.map +1 -0
- package/dist/localDocumentDeltaConnection.d.ts +5 -4
- package/dist/localDocumentDeltaConnection.d.ts.map +1 -1
- package/dist/{localDocumentService.js → localDocumentService.cjs} +15 -30
- package/dist/localDocumentService.cjs.map +1 -0
- package/dist/localDocumentService.d.ts +15 -11
- package/dist/localDocumentService.d.ts.map +1 -1
- package/dist/{localDocumentServiceFactory.js → localDocumentServiceFactory.cjs} +14 -31
- package/dist/localDocumentServiceFactory.cjs.map +1 -0
- package/dist/localDocumentServiceFactory.d.ts +3 -2
- package/dist/localDocumentServiceFactory.d.ts.map +1 -1
- package/dist/localDocumentStorageService.cjs +88 -0
- package/dist/localDocumentStorageService.cjs.map +1 -0
- package/dist/localDocumentStorageService.d.ts +30 -0
- package/dist/localDocumentStorageService.d.ts.map +1 -0
- package/dist/{localResolver.js → localResolver.cjs} +10 -6
- package/dist/localResolver.cjs.map +1 -0
- package/dist/localResolver.d.ts +5 -0
- package/dist/localResolver.d.ts.map +1 -1
- package/dist/{localSessionStorageDb.js → localSessionStorageDb.cjs} +26 -18
- package/dist/localSessionStorageDb.cjs.map +1 -0
- package/dist/localSessionStorageDb.d.ts +1 -1
- package/dist/localSessionStorageDb.d.ts.map +1 -1
- package/dist/tsdoc-metadata.json +11 -0
- package/lib/auth.d.mts +12 -0
- package/lib/auth.d.mts.map +1 -0
- package/lib/auth.mjs +40 -0
- package/lib/auth.mjs.map +1 -0
- package/lib/index.d.mts +12 -0
- package/lib/index.d.mts.map +1 -0
- package/lib/index.mjs +12 -0
- package/lib/index.mjs.map +1 -0
- package/lib/local-driver-alpha.d.mts +110 -0
- package/lib/local-driver-beta.d.mts +75 -0
- package/lib/local-driver-public.d.mts +75 -0
- package/lib/local-driver-untrimmed.d.mts +226 -0
- package/lib/localCreateDocument.d.mts +8 -0
- package/lib/localCreateDocument.d.mts.map +1 -0
- package/lib/localCreateDocument.mjs +24 -0
- package/lib/localCreateDocument.mjs.map +1 -0
- package/lib/localDeltaStorageService.d.mts +20 -0
- package/lib/localDeltaStorageService.d.mts.map +1 -0
- package/lib/localDeltaStorageService.mjs +32 -0
- package/lib/localDeltaStorageService.mjs.map +1 -0
- package/lib/localDocumentDeltaConnection.d.mts +48 -0
- package/lib/localDocumentDeltaConnection.d.mts.map +1 -0
- package/lib/localDocumentDeltaConnection.mjs +86 -0
- package/lib/localDocumentDeltaConnection.mjs.map +1 -0
- package/lib/localDocumentService.d.mts +56 -0
- package/lib/localDocumentService.d.mts.map +1 -0
- package/lib/localDocumentService.mjs +84 -0
- package/lib/localDocumentService.mjs.map +1 -0
- package/lib/localDocumentServiceFactory.d.mts +45 -0
- package/lib/localDocumentServiceFactory.d.mts.map +1 -0
- package/lib/localDocumentServiceFactory.mjs +80 -0
- package/lib/localDocumentServiceFactory.mjs.map +1 -0
- package/lib/localDocumentStorageService.d.mts +30 -0
- package/lib/localDocumentStorageService.d.mts.map +1 -0
- package/lib/localDocumentStorageService.mjs +84 -0
- package/lib/localDocumentStorageService.mjs.map +1 -0
- package/lib/localResolver.d.mts +31 -0
- package/lib/localResolver.d.mts.map +1 -0
- package/lib/localResolver.mjs +74 -0
- package/lib/localResolver.mjs.map +1 -0
- package/lib/localSessionStorageDb.d.mts +11 -0
- package/lib/localSessionStorageDb.d.mts.map +1 -0
- package/lib/localSessionStorageDb.mjs +292 -0
- package/lib/localSessionStorageDb.mjs.map +1 -0
- package/package.json +102 -59
- package/prettier.config.cjs +8 -0
- package/src/auth.ts +42 -33
- package/src/index.ts +7 -6
- package/src/localCreateDocument.ts +48 -0
- package/src/localDeltaStorageService.ts +28 -27
- package/src/localDocumentDeltaConnection.ts +91 -88
- package/src/localDocumentService.ts +117 -97
- package/src/localDocumentServiceFactory.ts +95 -123
- package/src/localDocumentStorageService.ts +131 -0
- package/src/localResolver.ts +57 -59
- package/src/localSessionStorageDb.ts +272 -265
- package/tsc-multi.test.json +4 -0
- package/tsconfig.json +11 -13
- package/dist/auth.js.map +0 -1
- package/dist/index.js +0 -23
- package/dist/index.js.map +0 -1
- package/dist/localDeltaStorageService.js.map +0 -1
- package/dist/localDocumentDeltaConnection.js.map +0 -1
- package/dist/localDocumentService.js.map +0 -1
- package/dist/localDocumentServiceFactory.js.map +0 -1
- package/dist/localResolver.js.map +0 -1
- package/dist/localSessionStorageDb.js.map +0 -1
- package/dist/packageVersion.d.ts +0 -9
- package/dist/packageVersion.d.ts.map +0 -1
- package/dist/packageVersion.js +0 -12
- package/dist/packageVersion.js.map +0 -1
- package/src/packageVersion.ts +0 -9
package/.eslintrc.js
CHANGED
|
@@ -4,27 +4,24 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
module.exports = {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
7
|
+
extends: [require.resolve("@fluidframework/eslint-config-fluid/minimal"), "prettier"],
|
|
8
|
+
parserOptions: {
|
|
9
|
+
project: ["./tsconfig.json", "./src/test/tsconfig.json"],
|
|
10
|
+
},
|
|
11
|
+
rules: {
|
|
12
|
+
"@typescript-eslint/strict-boolean-expressions": "off",
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
},
|
|
28
|
-
},
|
|
29
|
-
],
|
|
14
|
+
// This library is used in the browser, so we don't want dependencies on most node libraries.
|
|
15
|
+
"import/no-nodejs-modules": ["error", { allow: ["url", "events"] }],
|
|
16
|
+
},
|
|
17
|
+
overrides: [
|
|
18
|
+
{
|
|
19
|
+
// Rules only for test files
|
|
20
|
+
files: ["*.spec.ts", "src/test/**"],
|
|
21
|
+
rules: {
|
|
22
|
+
// Test files are run in node only so additional node libraries can be used.
|
|
23
|
+
"import/no-nodejs-modules": ["error", { allow: ["assert", "url", "events"] }],
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
],
|
|
30
27
|
};
|
package/.mocharc.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
"use strict";
|
|
7
|
+
|
|
8
|
+
const getFluidTestMochaConfig = require("@fluidframework/mocha-test-setup/mocharc-common");
|
|
9
|
+
|
|
10
|
+
const packageDir = __dirname;
|
|
11
|
+
const config = getFluidTestMochaConfig(packageDir);
|
|
12
|
+
module.exports = config;
|
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
# @fluidframework/local-driver
|
|
2
|
+
|
|
3
|
+
## 2.0.0-internal.8.0.0
|
|
4
|
+
|
|
5
|
+
### Major Changes
|
|
6
|
+
|
|
7
|
+
- local-driver: LocalDocumentStorageService class property type changes [9a451d4946](https://github.com/microsoft/FluidFramework/commits/9a451d4946b5c51a52e4d1ab5bf51e7b285b0d74)
|
|
8
|
+
|
|
9
|
+
The `repositoryUrl` property on the `LocalDocumentStorageService` class has changed from a property getter to a
|
|
10
|
+
`readonly` field. While this is an API change, there should be no changes required on the consumer side since calling
|
|
11
|
+
code should remain the same.
|
|
12
|
+
|
|
13
|
+
## 2.0.0-internal.7.4.0
|
|
14
|
+
|
|
15
|
+
Dependency updates only.
|
|
16
|
+
|
|
17
|
+
## 2.0.0-internal.7.3.0
|
|
18
|
+
|
|
19
|
+
Dependency updates only.
|
|
20
|
+
|
|
21
|
+
## 2.0.0-internal.7.2.0
|
|
22
|
+
|
|
23
|
+
Dependency updates only.
|
|
24
|
+
|
|
25
|
+
## 2.0.0-internal.7.1.0
|
|
26
|
+
|
|
27
|
+
Dependency updates only.
|
|
28
|
+
|
|
29
|
+
## 2.0.0-internal.7.0.0
|
|
30
|
+
|
|
31
|
+
### Major Changes
|
|
32
|
+
|
|
33
|
+
- Dependencies on @fluidframework/protocol-definitions package updated to 3.0.0 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
34
|
+
|
|
35
|
+
This included the following changes from the protocol-definitions release:
|
|
36
|
+
|
|
37
|
+
- Updating signal interfaces for some planned improvements. The intention is split the interface between signals
|
|
38
|
+
submitted by clients to the server and the resulting signals sent from the server to clients.
|
|
39
|
+
- A new optional type member is available on the ISignalMessage interface and a new ISentSignalMessage interface has
|
|
40
|
+
been added, which will be the typing for signals sent from the client to the server. Both extend a new
|
|
41
|
+
ISignalMessageBase interface that contains common members.
|
|
42
|
+
- The @fluidframework/common-definitions package dependency has been updated to version 1.0.0.
|
|
43
|
+
|
|
44
|
+
- routerlicious-driver: remove dead blob aggregation concepts and code [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
45
|
+
|
|
46
|
+
Dead concepts blob aggregation like `aggregateBlobsSmallerThanBytes` and `minBlobSize` have been removed.
|
|
47
|
+
|
|
48
|
+
- Server upgrade: dependencies on Fluid server packages updated to 2.0.1 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
49
|
+
|
|
50
|
+
Dependencies on the following Fluid server package have been updated to version 2.0.1:
|
|
51
|
+
|
|
52
|
+
- @fluidframework/gitresources: 2.0.1
|
|
53
|
+
- @fluidframework/server-kafka-orderer: 2.0.1
|
|
54
|
+
- @fluidframework/server-lambdas: 2.0.1
|
|
55
|
+
- @fluidframework/server-lambdas-driver: 2.0.1
|
|
56
|
+
- @fluidframework/server-local-server: 2.0.1
|
|
57
|
+
- @fluidframework/server-memory-orderer: 2.0.1
|
|
58
|
+
- @fluidframework/protocol-base: 2.0.1
|
|
59
|
+
- @fluidframework/server-routerlicious: 2.0.1
|
|
60
|
+
- @fluidframework/server-routerlicious-base: 2.0.1
|
|
61
|
+
- @fluidframework/server-services: 2.0.1
|
|
62
|
+
- @fluidframework/server-services-client: 2.0.1
|
|
63
|
+
- @fluidframework/server-services-core: 2.0.1
|
|
64
|
+
- @fluidframework/server-services-ordering-kafkanode: 2.0.1
|
|
65
|
+
- @fluidframework/server-services-ordering-rdkafka: 2.0.1
|
|
66
|
+
- @fluidframework/server-services-ordering-zookeeper: 2.0.1
|
|
67
|
+
- @fluidframework/server-services-shared: 2.0.1
|
|
68
|
+
- @fluidframework/server-services-telemetry: 2.0.1
|
|
69
|
+
- @fluidframework/server-services-utils: 2.0.1
|
|
70
|
+
- @fluidframework/server-test-utils: 2.0.1
|
|
71
|
+
- tinylicious: 2.0.1
|
|
72
|
+
|
|
73
|
+
- Minimum TypeScript version now 5.1.6 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
74
|
+
|
|
75
|
+
The minimum supported TypeScript version for Fluid 2.0 clients is now 5.1.6.
|
|
76
|
+
|
|
77
|
+
## 2.0.0-internal.6.4.0
|
|
78
|
+
|
|
79
|
+
Dependency updates only.
|
|
80
|
+
|
|
81
|
+
## 2.0.0-internal.6.3.0
|
|
82
|
+
|
|
83
|
+
Dependency updates only.
|
|
84
|
+
|
|
85
|
+
## 2.0.0-internal.6.2.0
|
|
86
|
+
|
|
87
|
+
Dependency updates only.
|
|
88
|
+
|
|
89
|
+
## 2.0.0-internal.6.1.0
|
|
90
|
+
|
|
91
|
+
Dependency updates only.
|
|
92
|
+
|
|
93
|
+
## 2.0.0-internal.6.0.0
|
|
94
|
+
|
|
95
|
+
### Major Changes
|
|
96
|
+
|
|
97
|
+
- Upgraded typescript transpilation target to ES2020 [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
|
|
98
|
+
|
|
99
|
+
Upgraded typescript transpilation target to ES2020. This is done in order to decrease the bundle sizes of Fluid Framework packages. This has provided size improvements across the board for ex. Loader, Driver, Runtime etc. Reduced bundle sizes helps to load lesser code in apps and hence also helps to improve the perf.If any app wants to target any older versions of browsers with which this target version is not compatible, then they can use packages like babel to transpile to a older target.
|
|
100
|
+
|
|
101
|
+
## 2.0.0-internal.5.4.0
|
|
102
|
+
|
|
103
|
+
Dependency updates only.
|
|
104
|
+
|
|
105
|
+
## 2.0.0-internal.5.3.0
|
|
106
|
+
|
|
107
|
+
Dependency updates only.
|
|
108
|
+
|
|
109
|
+
## 2.0.0-internal.5.2.0
|
|
110
|
+
|
|
111
|
+
Dependency updates only.
|
|
112
|
+
|
|
113
|
+
## 2.0.0-internal.5.1.0
|
|
114
|
+
|
|
115
|
+
Dependency updates only.
|
|
116
|
+
|
|
117
|
+
## 2.0.0-internal.5.0.0
|
|
118
|
+
|
|
119
|
+
Dependency updates only.
|
|
120
|
+
|
|
121
|
+
## 2.0.0-internal.4.4.0
|
|
122
|
+
|
|
123
|
+
Dependency updates only.
|
|
124
|
+
|
|
125
|
+
## 2.0.0-internal.4.1.0
|
|
126
|
+
|
|
127
|
+
Dependency updates only.
|
package/README.md
CHANGED
|
@@ -1 +1,39 @@
|
|
|
1
1
|
# @fluidframework/local-driver
|
|
2
|
+
|
|
3
|
+
<!-- AUTO-GENERATED-CONTENT:START (README_DEPENDENCY_GUIDELINES_SECTION:includeHeading=TRUE) -->
|
|
4
|
+
|
|
5
|
+
<!-- prettier-ignore-start -->
|
|
6
|
+
<!-- NOTE: This section is automatically generated using @fluid-tools/markdown-magic. Do not update these generated contents directly. -->
|
|
7
|
+
|
|
8
|
+
## Using Fluid Framework libraries
|
|
9
|
+
|
|
10
|
+
When taking a dependency on a Fluid Framework library, we recommend using a `^` (caret) version range, such as `^1.3.4`.
|
|
11
|
+
While Fluid Framework libraries may use different ranges with interdependencies between other Fluid Framework libraries,
|
|
12
|
+
library consumers should always prefer `^`.
|
|
13
|
+
|
|
14
|
+
Note that when depending on a library version of the form `2.0.0-internal.x.y.z`, called the Fluid internal version scheme,
|
|
15
|
+
you must use a `>= <` dependency range (such as `>=2.0.0-internal.x.y.z <2.0.0-internal.w.0.0` where `w` is `x+1`).
|
|
16
|
+
Standard `^` and `~` ranges will not work as expected.
|
|
17
|
+
See the [@fluid-tools/version-tools](https://github.com/microsoft/FluidFramework/blob/main/build-tools/packages/version-tools/README.md)
|
|
18
|
+
package for more information including tools to convert between version schemes.
|
|
19
|
+
|
|
20
|
+
<!-- prettier-ignore-end -->
|
|
21
|
+
|
|
22
|
+
<!-- AUTO-GENERATED-CONTENT:END -->
|
|
23
|
+
|
|
24
|
+
<!-- AUTO-GENERATED-CONTENT:START (README_TRADEMARK_SECTION:includeHeading=TRUE) -->
|
|
25
|
+
|
|
26
|
+
<!-- prettier-ignore-start -->
|
|
27
|
+
<!-- NOTE: This section is automatically generated using @fluid-tools/markdown-magic. Do not update these generated contents directly. -->
|
|
28
|
+
|
|
29
|
+
## Trademark
|
|
30
|
+
|
|
31
|
+
This project may contain Microsoft trademarks or logos for Microsoft projects, products, or services.
|
|
32
|
+
|
|
33
|
+
Use of these trademarks or logos must follow Microsoft's [Trademark & Brand Guidelines](https://www.microsoft.com/en-us/legal/intellectualproperty/trademarks/usage/general).
|
|
34
|
+
|
|
35
|
+
Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship.
|
|
36
|
+
|
|
37
|
+
<!-- prettier-ignore-end -->
|
|
38
|
+
|
|
39
|
+
<!-- AUTO-GENERATED-CONTENT:END -->
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
## API Report File for "@fluidframework/local-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 { DocumentDeltaConnection } from '@fluidframework/driver-base';
|
|
8
|
+
import { GitManager } from '@fluidframework/server-services-client';
|
|
9
|
+
import { IClient } from '@fluidframework/protocol-definitions';
|
|
10
|
+
import { ICreateBlobResponse } from '@fluidframework/protocol-definitions';
|
|
11
|
+
import { IDatabaseManager } from '@fluidframework/server-services-core';
|
|
12
|
+
import { IDb } from '@fluidframework/server-services-core';
|
|
13
|
+
import { IDocumentDeltaConnection } from '@fluidframework/driver-definitions';
|
|
14
|
+
import { IDocumentDeltaStorageService } from '@fluidframework/driver-definitions';
|
|
15
|
+
import { IDocumentMessage } from '@fluidframework/protocol-definitions';
|
|
16
|
+
import { IDocumentService } from '@fluidframework/driver-definitions';
|
|
17
|
+
import { IDocumentServiceFactory } from '@fluidframework/driver-definitions';
|
|
18
|
+
import { IDocumentServicePolicies } from '@fluidframework/driver-definitions';
|
|
19
|
+
import { IDocumentStorageService } from '@fluidframework/driver-definitions';
|
|
20
|
+
import { IDocumentStorageServicePolicies } from '@fluidframework/driver-definitions';
|
|
21
|
+
import { ILocalDeltaConnectionServer } from '@fluidframework/server-local-server';
|
|
22
|
+
import { IRequest } from '@fluidframework/core-interfaces';
|
|
23
|
+
import { IResolvedUrl } from '@fluidframework/driver-definitions';
|
|
24
|
+
import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
|
|
25
|
+
import { ISnapshotTreeEx } from '@fluidframework/protocol-definitions';
|
|
26
|
+
import { IStream } from '@fluidframework/driver-definitions';
|
|
27
|
+
import { ISummaryContext } from '@fluidframework/driver-definitions';
|
|
28
|
+
import { ISummaryHandle } from '@fluidframework/protocol-definitions';
|
|
29
|
+
import { ISummaryTree } from '@fluidframework/protocol-definitions';
|
|
30
|
+
import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
|
|
31
|
+
import { ITestDbFactory } from '@fluidframework/server-test-utils';
|
|
32
|
+
import { ITokenProvider } from '@fluidframework/routerlicious-driver';
|
|
33
|
+
import { IUrlResolver } from '@fluidframework/driver-definitions';
|
|
34
|
+
import { IVersion } from '@fluidframework/protocol-definitions';
|
|
35
|
+
import { IWebSocketServer } from '@fluidframework/server-services-core';
|
|
36
|
+
import { NackErrorType } from '@fluidframework/protocol-definitions';
|
|
37
|
+
import type { Socket } from 'socket.io-client';
|
|
38
|
+
|
|
39
|
+
// @internal
|
|
40
|
+
export function createLocalDocumentService(resolvedUrl: IResolvedUrl, localDeltaConnectionServer: ILocalDeltaConnectionServer, tokenProvider: ITokenProvider, tenantId: string, documentId: string, documentDeltaConnectionsMap: Map<string, LocalDocumentDeltaConnection>, policies?: IDocumentServicePolicies, innerDocumentService?: IDocumentService, logger?: ITelemetryBaseLogger): IDocumentService;
|
|
41
|
+
|
|
42
|
+
// @alpha (undocumented)
|
|
43
|
+
export function createLocalResolverCreateNewRequest(documentId: string): IRequest;
|
|
44
|
+
|
|
45
|
+
// @internal
|
|
46
|
+
export class LocalDeltaStorageService implements IDocumentDeltaStorageService {
|
|
47
|
+
constructor(tenantId: string, id: string, databaseManager: IDatabaseManager);
|
|
48
|
+
// (undocumented)
|
|
49
|
+
fetchMessages(from: number, to: number | undefined, abortSignal?: AbortSignal, cachedOnly?: boolean): IStream<ISequencedDocumentMessage[]>;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
// @internal
|
|
53
|
+
export class LocalDocumentDeltaConnection extends DocumentDeltaConnection {
|
|
54
|
+
constructor(socket: Socket, documentId: string, logger?: ITelemetryBaseLogger);
|
|
55
|
+
static create(tenantId: string, id: string, token: string, client: IClient, webSocketServer: IWebSocketServer, timeoutMs?: number, logger?: ITelemetryBaseLogger): Promise<LocalDocumentDeltaConnection>;
|
|
56
|
+
disconnectClient(disconnectReason: string): void;
|
|
57
|
+
nackClient(code: number | undefined, type: NackErrorType | undefined, message: any): void;
|
|
58
|
+
submit(messages: IDocumentMessage[]): void;
|
|
59
|
+
submitSignal(message: any): void;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
// @internal
|
|
63
|
+
export class LocalDocumentService implements IDocumentService {
|
|
64
|
+
constructor(resolvedUrl: IResolvedUrl, localDeltaConnectionServer: ILocalDeltaConnectionServer, tokenProvider: ITokenProvider, tenantId: string, documentId: string, documentDeltaConnectionsMap: Map<string, LocalDocumentDeltaConnection>, policies?: IDocumentServicePolicies, innerDocumentService?: IDocumentService | undefined, logger?: ITelemetryBaseLogger | undefined);
|
|
65
|
+
connectToDeltaStorage(): Promise<IDocumentDeltaStorageService>;
|
|
66
|
+
connectToDeltaStream(client: IClient): Promise<IDocumentDeltaConnection>;
|
|
67
|
+
connectToStorage(): Promise<IDocumentStorageService>;
|
|
68
|
+
// (undocumented)
|
|
69
|
+
dispose(): void;
|
|
70
|
+
// (undocumented)
|
|
71
|
+
readonly policies: IDocumentServicePolicies;
|
|
72
|
+
// (undocumented)
|
|
73
|
+
readonly resolvedUrl: IResolvedUrl;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
// @alpha
|
|
77
|
+
export class LocalDocumentServiceFactory implements IDocumentServiceFactory {
|
|
78
|
+
constructor(localDeltaConnectionServer: ILocalDeltaConnectionServer, policies?: IDocumentServicePolicies | undefined, innerDocumentService?: IDocumentService | undefined);
|
|
79
|
+
// (undocumented)
|
|
80
|
+
createContainer(createNewSummary: ISummaryTree | undefined, resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
|
|
81
|
+
createDocumentService(resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
|
|
82
|
+
disconnectClient(clientId: string, disconnectReason: string): void;
|
|
83
|
+
nackClient(clientId: string, code?: number, type?: NackErrorType, message?: any): void;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// @internal (undocumented)
|
|
87
|
+
export class LocalDocumentStorageService implements IDocumentStorageService {
|
|
88
|
+
constructor(id: string, manager: GitManager, policies: IDocumentStorageServicePolicies, localDeltaConnectionServer?: ILocalDeltaConnectionServer | undefined, resolvedUrl?: IResolvedUrl | undefined);
|
|
89
|
+
// (undocumented)
|
|
90
|
+
protected readonly blobsShaCache: Map<string, string>;
|
|
91
|
+
// (undocumented)
|
|
92
|
+
createBlob(file: ArrayBufferLike): Promise<ICreateBlobResponse>;
|
|
93
|
+
// (undocumented)
|
|
94
|
+
downloadSummary(handle: ISummaryHandle): Promise<ISummaryTree>;
|
|
95
|
+
// (undocumented)
|
|
96
|
+
getSnapshotTree(version?: IVersion): Promise<ISnapshotTreeEx | null>;
|
|
97
|
+
// (undocumented)
|
|
98
|
+
getVersions(versionId: string | null, count: number): Promise<IVersion[]>;
|
|
99
|
+
// (undocumented)
|
|
100
|
+
readonly policies: IDocumentStorageServicePolicies;
|
|
101
|
+
// (undocumented)
|
|
102
|
+
readBlob(blobId: string): Promise<ArrayBufferLike>;
|
|
103
|
+
// (undocumented)
|
|
104
|
+
readonly repositoryUrl: string;
|
|
105
|
+
// (undocumented)
|
|
106
|
+
uploadSummaryWithContext(summary: ISummaryTree, context: ISummaryContext): Promise<string>;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
// @alpha
|
|
110
|
+
export class LocalResolver implements IUrlResolver {
|
|
111
|
+
constructor();
|
|
112
|
+
// (undocumented)
|
|
113
|
+
createCreateNewRequest(documentId: string): IRequest;
|
|
114
|
+
// (undocumented)
|
|
115
|
+
getAbsoluteUrl(resolvedUrl: IResolvedUrl, relativeUrl: string): Promise<string>;
|
|
116
|
+
resolve(request: IRequest): Promise<IResolvedUrl>;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
// @internal
|
|
120
|
+
export class LocalSessionStorageDbFactory implements ITestDbFactory {
|
|
121
|
+
// (undocumented)
|
|
122
|
+
connect(): Promise<IDb>;
|
|
123
|
+
// (undocumented)
|
|
124
|
+
readonly testDatabase: IDb;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
// (No @packageDocumentation comment for this package)
|
|
128
|
+
|
|
129
|
+
```
|
|
@@ -7,18 +7,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
7
7
|
exports.generateUser = exports.generateToken = void 0;
|
|
8
8
|
const jsrsasign_1 = require("jsrsasign");
|
|
9
9
|
const uuid_1 = require("uuid");
|
|
10
|
-
const server_services_client_1 = require("@fluidframework/server-services-client");
|
|
11
10
|
/**
|
|
12
11
|
* Generates a JWT token to authorize against. We do not use the implementation in
|
|
13
12
|
* services-client since it cannot run in the browser without polyfills.
|
|
14
13
|
*/
|
|
15
14
|
function generateToken(tenantId, documentId, key, scopes, user, lifetime = 60 * 60, ver = "1.0") {
|
|
16
|
-
let userClaim =
|
|
15
|
+
let userClaim = user ? user : generateUser();
|
|
17
16
|
if (userClaim.id === "" || userClaim.id === undefined) {
|
|
18
17
|
userClaim = generateUser();
|
|
19
18
|
}
|
|
20
19
|
// Current time in seconds
|
|
21
|
-
const now = Math.round(
|
|
20
|
+
const now = Math.round(new Date().getTime() / 1000);
|
|
22
21
|
const claims = {
|
|
23
22
|
documentId,
|
|
24
23
|
scopes,
|
|
@@ -33,11 +32,14 @@ function generateToken(tenantId, documentId, key, scopes, user, lifetime = 60 *
|
|
|
33
32
|
}
|
|
34
33
|
exports.generateToken = generateToken;
|
|
35
34
|
function generateUser() {
|
|
35
|
+
const userId = (0, uuid_1.v4)();
|
|
36
|
+
const match = userId.match(/^([\da-f]{8})-([\da-f]{4})/);
|
|
37
|
+
const userName = match !== null ? match[0] : userId; // Just use the first two segments of the (fake) userId as a fake name.
|
|
36
38
|
const randomUser = {
|
|
37
|
-
id:
|
|
38
|
-
name:
|
|
39
|
+
id: userId,
|
|
40
|
+
name: userName,
|
|
39
41
|
};
|
|
40
42
|
return randomUser;
|
|
41
43
|
}
|
|
42
44
|
exports.generateUser = generateUser;
|
|
43
|
-
//# sourceMappingURL=auth.
|
|
45
|
+
//# sourceMappingURL=auth.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.cjs","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,yCAA8C;AAC9C,+BAAkC;AAElC;;;GAGG;AACH,SAAgB,aAAa,CAC5B,QAAgB,EAChB,UAAkB,EAClB,GAAW,EACX,MAAmB,EACnB,IAAY,EACZ,WAAmB,EAAE,GAAG,EAAE,EAC1B,MAAc,KAAK;IAEnB,IAAI,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC;IAC7C,IAAI,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,SAAS,CAAC,EAAE,KAAK,SAAS,EAAE;QACtD,SAAS,GAAG,YAAY,EAAE,CAAC;KAC3B;IAED,0BAA0B;IAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAEpD,MAAM,MAAM,GAAiB;QAC5B,UAAU;QACV,MAAM;QACN,QAAQ;QACR,IAAI,EAAE,SAAS;QACf,GAAG,EAAE,GAAG;QACR,GAAG,EAAE,GAAG,GAAG,QAAQ;QACnB,GAAG;KACH,CAAC;IAEF,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;IAC9B,OAAO,gBAAS,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAC5B,IAAI,EACJ,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,EAC5C,MAAM,EACN,OAAO,CACP,CAAC;AACH,CAAC;AAlCD,sCAkCC;AAED,SAAgB,YAAY;IAC3B,MAAM,MAAM,GAAG,IAAA,SAAI,GAAE,CAAC;IACtB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,uEAAuE;IAE5H,MAAM,UAAU,GAAG;QAClB,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,QAAQ;KACd,CAAC;IAEF,OAAO,UAAU,CAAC;AACnB,CAAC;AAXD,oCAWC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { ITokenClaims, IUser, ScopeType } from \"@fluidframework/protocol-definitions\";\nimport { KJUR as jsrsasign } from \"jsrsasign\";\nimport { v4 as uuid } from \"uuid\";\n\n/**\n * Generates a JWT token to authorize against. We do not use the implementation in\n * services-client since it cannot run in the browser without polyfills.\n */\nexport function generateToken(\n\ttenantId: string,\n\tdocumentId: string,\n\tkey: string,\n\tscopes: ScopeType[],\n\tuser?: IUser,\n\tlifetime: number = 60 * 60,\n\tver: string = \"1.0\",\n): string {\n\tlet userClaim = user ? user : generateUser();\n\tif (userClaim.id === \"\" || userClaim.id === undefined) {\n\t\tuserClaim = generateUser();\n\t}\n\n\t// Current time in seconds\n\tconst now = Math.round(new Date().getTime() / 1000);\n\n\tconst claims: ITokenClaims = {\n\t\tdocumentId,\n\t\tscopes,\n\t\ttenantId,\n\t\tuser: userClaim,\n\t\tiat: now,\n\t\texp: now + lifetime,\n\t\tver,\n\t};\n\n\tconst utf8Key = { utf8: key };\n\treturn jsrsasign.jws.JWS.sign(\n\t\tnull,\n\t\tJSON.stringify({ alg: \"HS256\", typ: \"JWT\" }),\n\t\tclaims,\n\t\tutf8Key,\n\t);\n}\n\nexport function generateUser(): IUser {\n\tconst userId = uuid();\n\tconst match = userId.match(/^([\\da-f]{8})-([\\da-f]{4})/);\n\tconst userName = match !== null ? match[0] : userId; // Just use the first two segments of the (fake) userId as a fake name.\n\n\tconst randomUser = {\n\t\tid: userId,\n\t\tname: userName,\n\t};\n\n\treturn randomUser;\n}\n"]}
|
package/dist/auth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAgB,KAAK,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAgB,KAAK,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAItF;;;GAGG;AACH,wBAAgB,aAAa,CAC5B,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,SAAS,EAAE,EACnB,IAAI,CAAC,EAAE,KAAK,EACZ,QAAQ,GAAE,MAAgB,EAC1B,GAAG,GAAE,MAAc,GACjB,MAAM,CA0BR;AAED,wBAAgB,YAAY,IAAI,KAAK,CAWpC"}
|
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*!
|
|
3
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
4
|
+
* Licensed under the MIT License.
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.LocalSessionStorageDbFactory = exports.LocalResolver = exports.createLocalResolverCreateNewRequest = exports.LocalDocumentStorageService = exports.LocalDocumentServiceFactory = exports.LocalDocumentService = exports.createLocalDocumentService = exports.LocalDocumentDeltaConnection = exports.LocalDeltaStorageService = void 0;
|
|
8
|
+
var localDeltaStorageService_1 = require("./localDeltaStorageService.cjs");
|
|
9
|
+
Object.defineProperty(exports, "LocalDeltaStorageService", { enumerable: true, get: function () { return localDeltaStorageService_1.LocalDeltaStorageService; } });
|
|
10
|
+
var localDocumentDeltaConnection_1 = require("./localDocumentDeltaConnection.cjs");
|
|
11
|
+
Object.defineProperty(exports, "LocalDocumentDeltaConnection", { enumerable: true, get: function () { return localDocumentDeltaConnection_1.LocalDocumentDeltaConnection; } });
|
|
12
|
+
var localDocumentService_1 = require("./localDocumentService.cjs");
|
|
13
|
+
Object.defineProperty(exports, "createLocalDocumentService", { enumerable: true, get: function () { return localDocumentService_1.createLocalDocumentService; } });
|
|
14
|
+
Object.defineProperty(exports, "LocalDocumentService", { enumerable: true, get: function () { return localDocumentService_1.LocalDocumentService; } });
|
|
15
|
+
var localDocumentServiceFactory_1 = require("./localDocumentServiceFactory.cjs");
|
|
16
|
+
Object.defineProperty(exports, "LocalDocumentServiceFactory", { enumerable: true, get: function () { return localDocumentServiceFactory_1.LocalDocumentServiceFactory; } });
|
|
17
|
+
var localDocumentStorageService_1 = require("./localDocumentStorageService.cjs");
|
|
18
|
+
Object.defineProperty(exports, "LocalDocumentStorageService", { enumerable: true, get: function () { return localDocumentStorageService_1.LocalDocumentStorageService; } });
|
|
19
|
+
var localResolver_1 = require("./localResolver.cjs");
|
|
20
|
+
Object.defineProperty(exports, "createLocalResolverCreateNewRequest", { enumerable: true, get: function () { return localResolver_1.createLocalResolverCreateNewRequest; } });
|
|
21
|
+
Object.defineProperty(exports, "LocalResolver", { enumerable: true, get: function () { return localResolver_1.LocalResolver; } });
|
|
22
|
+
var localSessionStorageDb_1 = require("./localSessionStorageDb.cjs");
|
|
23
|
+
Object.defineProperty(exports, "LocalSessionStorageDbFactory", { enumerable: true, get: function () { return localSessionStorageDb_1.LocalSessionStorageDbFactory; } });
|
|
24
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,2EAAsE;AAA7D,oIAAA,wBAAwB,OAAA;AACjC,mFAA8E;AAArE,4IAAA,4BAA4B,OAAA;AACrC,mEAA0F;AAAjF,kIAAA,0BAA0B,OAAA;AAAE,4HAAA,oBAAoB,OAAA;AACzD,iFAA4E;AAAnE,0IAAA,2BAA2B,OAAA;AACpC,iFAA4E;AAAnE,0IAAA,2BAA2B,OAAA;AACpC,qDAAqF;AAA5E,oIAAA,mCAAmC,OAAA;AAAE,8GAAA,aAAa,OAAA;AAC3D,qEAAuE;AAA9D,qIAAA,4BAA4B,OAAA","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nexport { LocalDeltaStorageService } from \"./localDeltaStorageService\";\nexport { LocalDocumentDeltaConnection } from \"./localDocumentDeltaConnection\";\nexport { createLocalDocumentService, LocalDocumentService } from \"./localDocumentService\";\nexport { LocalDocumentServiceFactory } from \"./localDocumentServiceFactory\";\nexport { LocalDocumentStorageService } from \"./localDocumentStorageService\";\nexport { createLocalResolverCreateNewRequest, LocalResolver } from \"./localResolver\";\nexport { LocalSessionStorageDbFactory } from \"./localSessionStorageDb\";\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
|
-
export
|
|
6
|
-
export
|
|
7
|
-
export
|
|
8
|
-
export
|
|
9
|
-
export
|
|
10
|
-
export
|
|
5
|
+
export { LocalDeltaStorageService } from "./localDeltaStorageService";
|
|
6
|
+
export { LocalDocumentDeltaConnection } from "./localDocumentDeltaConnection";
|
|
7
|
+
export { createLocalDocumentService, LocalDocumentService } from "./localDocumentService";
|
|
8
|
+
export { LocalDocumentServiceFactory } from "./localDocumentServiceFactory";
|
|
9
|
+
export { LocalDocumentStorageService } from "./localDocumentStorageService";
|
|
10
|
+
export { createLocalResolverCreateNewRequest, LocalResolver } from "./localResolver";
|
|
11
|
+
export { LocalSessionStorageDbFactory } from "./localSessionStorageDb";
|
|
11
12
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC1F,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,mCAAmC,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { DocumentDeltaConnection } from '@fluidframework/driver-base';
|
|
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';
|
|
8
|
+
import { IDocumentDeltaStorageService } from '@fluidframework/driver-definitions';
|
|
9
|
+
import { IDocumentMessage } from '@fluidframework/protocol-definitions';
|
|
10
|
+
import { IDocumentService } from '@fluidframework/driver-definitions';
|
|
11
|
+
import { IDocumentServiceFactory } from '@fluidframework/driver-definitions';
|
|
12
|
+
import { IDocumentServicePolicies } from '@fluidframework/driver-definitions';
|
|
13
|
+
import { IDocumentStorageService } from '@fluidframework/driver-definitions';
|
|
14
|
+
import { IDocumentStorageServicePolicies } from '@fluidframework/driver-definitions';
|
|
15
|
+
import { ILocalDeltaConnectionServer } from '@fluidframework/server-local-server';
|
|
16
|
+
import { IRequest } from '@fluidframework/core-interfaces';
|
|
17
|
+
import { IResolvedUrl } from '@fluidframework/driver-definitions';
|
|
18
|
+
import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
|
|
19
|
+
import { ISnapshotTreeEx } from '@fluidframework/protocol-definitions';
|
|
20
|
+
import { IStream } from '@fluidframework/driver-definitions';
|
|
21
|
+
import { ISummaryContext } from '@fluidframework/driver-definitions';
|
|
22
|
+
import { ISummaryHandle } from '@fluidframework/protocol-definitions';
|
|
23
|
+
import { ISummaryTree } from '@fluidframework/protocol-definitions';
|
|
24
|
+
import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
|
|
25
|
+
import { ITestDbFactory } from '@fluidframework/server-test-utils';
|
|
26
|
+
import { ITokenProvider } from '@fluidframework/routerlicious-driver';
|
|
27
|
+
import { IUrlResolver } from '@fluidframework/driver-definitions';
|
|
28
|
+
import { IVersion } from '@fluidframework/protocol-definitions';
|
|
29
|
+
import { IWebSocketServer } from '@fluidframework/server-services-core';
|
|
30
|
+
import { NackErrorType } from '@fluidframework/protocol-definitions';
|
|
31
|
+
import type { Socket } from 'socket.io-client';
|
|
32
|
+
|
|
33
|
+
/* Excluded from this release type: createLocalDocumentService */
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* @alpha
|
|
37
|
+
*/
|
|
38
|
+
export declare function createLocalResolverCreateNewRequest(documentId: string): IRequest;
|
|
39
|
+
|
|
40
|
+
/* Excluded from this release type: DocumentDeltaConnection */
|
|
41
|
+
|
|
42
|
+
/* Excluded from this release type: LocalDeltaStorageService */
|
|
43
|
+
|
|
44
|
+
/* Excluded from this release type: LocalDocumentDeltaConnection */
|
|
45
|
+
|
|
46
|
+
/* Excluded from this release type: LocalDocumentService */
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Implementation of document service factory for local use.
|
|
50
|
+
* @alpha
|
|
51
|
+
*/
|
|
52
|
+
export declare class LocalDocumentServiceFactory implements IDocumentServiceFactory {
|
|
53
|
+
private readonly localDeltaConnectionServer;
|
|
54
|
+
private readonly policies?;
|
|
55
|
+
private readonly innerDocumentService?;
|
|
56
|
+
private readonly documentDeltaConnectionsMap;
|
|
57
|
+
/**
|
|
58
|
+
* @param localDeltaConnectionServer - delta connection server for ops
|
|
59
|
+
* @alpha
|
|
60
|
+
*/
|
|
61
|
+
constructor(localDeltaConnectionServer: ILocalDeltaConnectionServer, policies?: IDocumentServicePolicies | undefined, innerDocumentService?: IDocumentService | undefined);
|
|
62
|
+
createContainer(createNewSummary: ISummaryTree | undefined, resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
|
|
63
|
+
/**
|
|
64
|
+
* Creates and returns a document service for testing using the given resolved
|
|
65
|
+
* URL for the tenant ID, document ID, and token.
|
|
66
|
+
* @param resolvedUrl - resolved URL of document
|
|
67
|
+
*/
|
|
68
|
+
createDocumentService(resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
|
|
69
|
+
/**
|
|
70
|
+
* Gets the document delta connection for the clientId and asks it to disconnect the client.
|
|
71
|
+
* @param clientId - The ID of the client to be disconnected.
|
|
72
|
+
* @param disconnectReason - The reason of the disconnection.
|
|
73
|
+
*/
|
|
74
|
+
disconnectClient(clientId: string, disconnectReason: string): void;
|
|
75
|
+
/**
|
|
76
|
+
* Gets the document delta connection for the clientId and asks it to nack the client.
|
|
77
|
+
* @param clientId - The ID of the client to be Nack'd.
|
|
78
|
+
* @param code - An error code number that represents the error. It will be a valid HTTP error code.
|
|
79
|
+
* @param type - Type of the Nack.
|
|
80
|
+
* @param message - A message about the nack for debugging/logging/telemetry purposes.
|
|
81
|
+
*/
|
|
82
|
+
nackClient(clientId: string, code?: number, type?: NackErrorType, message?: any): void;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
/* Excluded from this release type: LocalDocumentStorageService */
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Resolves URLs by providing fake URLs which succeed with the other
|
|
89
|
+
* related local classes.
|
|
90
|
+
* @alpha
|
|
91
|
+
*/
|
|
92
|
+
export declare class LocalResolver implements IUrlResolver {
|
|
93
|
+
private readonly tenantId;
|
|
94
|
+
private readonly tokenKey;
|
|
95
|
+
constructor();
|
|
96
|
+
/**
|
|
97
|
+
* Resolves URL requests by providing fake URLs with an actually generated
|
|
98
|
+
* token from constant test strings. The root of the URL is fake, but the
|
|
99
|
+
* remaining relative URL can still be parsed.
|
|
100
|
+
* @param request - request to handle
|
|
101
|
+
* @alpha
|
|
102
|
+
*/
|
|
103
|
+
resolve(request: IRequest): Promise<IResolvedUrl>;
|
|
104
|
+
getAbsoluteUrl(resolvedUrl: IResolvedUrl, relativeUrl: string): Promise<string>;
|
|
105
|
+
createCreateNewRequest(documentId: string): IRequest;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
/* Excluded from this release type: LocalSessionStorageDbFactory */
|
|
109
|
+
|
|
110
|
+
export { }
|