@fluidframework/runtime-definitions 2.0.0-internal.7.3.0 → 2.0.0-internal.8.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +52 -0
- package/api-extractor-lint.json +13 -0
- package/api-extractor.json +3 -3
- package/api-report/runtime-definitions.api.md +74 -127
- package/dist/attribution.d.ts +1 -4
- package/dist/attribution.d.ts.map +1 -1
- package/dist/attribution.js.map +1 -1
- package/dist/dataStoreContext.d.ts +27 -47
- package/dist/dataStoreContext.d.ts.map +1 -1
- package/dist/dataStoreContext.js +5 -0
- package/dist/dataStoreContext.js.map +1 -1
- package/dist/dataStoreFactory.d.ts +7 -0
- package/dist/dataStoreFactory.d.ts.map +1 -1
- package/dist/dataStoreFactory.js +3 -0
- package/dist/dataStoreFactory.js.map +1 -1
- package/dist/dataStoreRegistry.d.ts +10 -0
- package/dist/dataStoreRegistry.d.ts.map +1 -1
- package/dist/dataStoreRegistry.js +3 -0
- package/dist/dataStoreRegistry.js.map +1 -1
- package/dist/garbageCollection.d.ts +22 -4
- package/dist/garbageCollection.d.ts.map +1 -1
- package/dist/garbageCollection.js +20 -4
- package/dist/garbageCollection.js.map +1 -1
- package/dist/index.d.ts +45 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -3
- package/dist/index.js.map +1 -1
- package/dist/protocol.d.ts +7 -0
- package/dist/protocol.d.ts.map +1 -1
- package/dist/protocol.js.map +1 -1
- package/dist/runtime-definitions-alpha.d.ts +953 -0
- package/dist/runtime-definitions-beta.d.ts +192 -0
- package/dist/runtime-definitions-public.d.ts +192 -0
- package/dist/runtime-definitions-untrimmed.d.ts +1068 -0
- package/dist/summary.d.ts +34 -0
- package/dist/summary.d.ts.map +1 -1
- package/dist/summary.js +12 -0
- package/dist/summary.js.map +1 -1
- package/lib/runtime-definitions-alpha.d.ts +953 -0
- package/lib/runtime-definitions-beta.d.ts +192 -0
- package/lib/runtime-definitions-public.d.ts +192 -0
- package/lib/runtime-definitions-untrimmed.d.ts +1068 -0
- package/package.json +54 -8
- package/src/attribution.ts +1 -4
- package/src/dataStoreContext.ts +26 -54
- package/src/dataStoreFactory.ts +7 -0
- package/src/dataStoreRegistry.ts +10 -0
- package/src/garbageCollection.ts +22 -4
- package/src/index.ts +43 -7
- package/src/protocol.ts +7 -0
- package/src/summary.ts +34 -0
- package/dist/id-compressor/idCompressor.d.ts +0 -136
- package/dist/id-compressor/idCompressor.d.ts.map +0 -1
- package/dist/id-compressor/idCompressor.js +0 -7
- package/dist/id-compressor/idCompressor.js.map +0 -1
- package/dist/id-compressor/identifiers.d.ts +0 -36
- package/dist/id-compressor/identifiers.d.ts.map +0 -1
- package/dist/id-compressor/identifiers.js +0 -7
- package/dist/id-compressor/identifiers.js.map +0 -1
- package/dist/id-compressor/index.d.ts +0 -8
- package/dist/id-compressor/index.d.ts.map +0 -1
- package/dist/id-compressor/index.js +0 -10
- package/dist/id-compressor/index.js.map +0 -1
- package/dist/id-compressor/persisted-types/0.0.1.d.ts +0 -41
- package/dist/id-compressor/persisted-types/0.0.1.d.ts.map +0 -1
- package/dist/id-compressor/persisted-types/0.0.1.js +0 -13
- package/dist/id-compressor/persisted-types/0.0.1.js.map +0 -1
- package/dist/id-compressor/persisted-types/index.d.ts +0 -6
- package/dist/id-compressor/persisted-types/index.d.ts.map +0 -1
- package/dist/id-compressor/persisted-types/index.js +0 -10
- package/dist/id-compressor/persisted-types/index.js.map +0 -1
- package/src/id-compressor/idCompressor.ts +0 -152
- package/src/id-compressor/identifiers.ts +0 -35
- package/src/id-compressor/index.ts +0 -16
- package/src/id-compressor/persisted-types/0.0.1.ts +0 -46
- package/src/id-compressor/persisted-types/README.md +0 -3
- package/src/id-compressor/persisted-types/index.ts +0 -12
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluidframework/runtime-definitions",
|
|
3
|
-
"version": "2.0.0-internal.
|
|
3
|
+
"version": "2.0.0-internal.8.0.0",
|
|
4
4
|
"description": "Fluid Runtime definitions",
|
|
5
5
|
"homepage": "https://fluidframework.com",
|
|
6
6
|
"repository": {
|
|
@@ -14,24 +14,39 @@
|
|
|
14
14
|
"main": "dist/index.js",
|
|
15
15
|
"types": "dist/index.d.ts",
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@fluidframework/container-definitions": ">=2.0.0-internal.
|
|
18
|
-
"@fluidframework/core-interfaces": ">=2.0.0-internal.
|
|
19
|
-
"@fluidframework/driver-definitions": ">=2.0.0-internal.
|
|
17
|
+
"@fluidframework/container-definitions": ">=2.0.0-internal.8.0.0 <2.0.0-internal.8.1.0",
|
|
18
|
+
"@fluidframework/core-interfaces": ">=2.0.0-internal.8.0.0 <2.0.0-internal.8.1.0",
|
|
19
|
+
"@fluidframework/driver-definitions": ">=2.0.0-internal.8.0.0 <2.0.0-internal.8.1.0",
|
|
20
|
+
"@fluidframework/id-compressor": ">=2.0.0-internal.8.0.0 <2.0.0-internal.8.1.0",
|
|
20
21
|
"@fluidframework/protocol-definitions": "^3.0.0"
|
|
21
22
|
},
|
|
22
23
|
"devDependencies": {
|
|
24
|
+
"@arethetypeswrong/cli": "^0.13.3",
|
|
23
25
|
"@fluid-tools/build-cli": "^0.28.0",
|
|
24
26
|
"@fluidframework/build-common": "^2.0.3",
|
|
25
27
|
"@fluidframework/build-tools": "^0.28.0",
|
|
26
28
|
"@fluidframework/eslint-config-fluid": "^3.1.0",
|
|
27
29
|
"@fluidframework/runtime-definitions-previous": "npm:@fluidframework/runtime-definitions@2.0.0-internal.7.2.0",
|
|
28
30
|
"@microsoft/api-extractor": "^7.38.3",
|
|
31
|
+
"copyfiles": "^2.4.1",
|
|
29
32
|
"eslint": "~8.50.0",
|
|
30
33
|
"eslint-plugin-deprecation": "~2.0.0",
|
|
31
34
|
"prettier": "~3.0.3",
|
|
32
35
|
"rimraf": "^4.4.0",
|
|
33
36
|
"typescript": "~5.1.6"
|
|
34
37
|
},
|
|
38
|
+
"fluidBuild": {
|
|
39
|
+
"tasks": {
|
|
40
|
+
"build:docs": {
|
|
41
|
+
"dependsOn": [
|
|
42
|
+
"...",
|
|
43
|
+
"api-extractor:commonjs",
|
|
44
|
+
"api-extractor:esnext"
|
|
45
|
+
],
|
|
46
|
+
"script": false
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
},
|
|
35
50
|
"typeValidation": {
|
|
36
51
|
"broken": {
|
|
37
52
|
"TypeAliasDeclaration_IdCreationRangeWithStashedState": {
|
|
@@ -41,23 +56,54 @@
|
|
|
41
56
|
"RemovedTypeAliasDeclaration_IdCreationRangeWithStashedState": {
|
|
42
57
|
"forwardCompat": false,
|
|
43
58
|
"backCompat": false
|
|
59
|
+
},
|
|
60
|
+
"InterfaceDeclaration_IdCreationRange": {
|
|
61
|
+
"forwardCompat": false
|
|
62
|
+
},
|
|
63
|
+
"VariableDeclaration_initialClusterCapacity": {
|
|
64
|
+
"backCompat": false,
|
|
65
|
+
"forwardCompat": false
|
|
66
|
+
},
|
|
67
|
+
"RemovedVariableDeclaration_initialClusterCapacity": {
|
|
68
|
+
"forwardCompat": false,
|
|
69
|
+
"backCompat": false
|
|
70
|
+
},
|
|
71
|
+
"InterfaceDeclaration_IContainerRuntimeBase": {
|
|
72
|
+
"backCompat": false
|
|
73
|
+
},
|
|
74
|
+
"InterfaceDeclaration_IFluidDataStoreContext": {
|
|
75
|
+
"backCompat": false
|
|
76
|
+
},
|
|
77
|
+
"InterfaceDeclaration_IFluidDataStoreContextDetached": {
|
|
78
|
+
"backCompat": false
|
|
79
|
+
},
|
|
80
|
+
"InterfaceDeclaration_IDataStore": {
|
|
81
|
+
"backCompat": false
|
|
82
|
+
},
|
|
83
|
+
"InterfaceDeclaration_IFluidDataStoreChannel": {
|
|
84
|
+
"backCompat": false
|
|
44
85
|
}
|
|
45
86
|
}
|
|
46
87
|
},
|
|
47
88
|
"scripts": {
|
|
89
|
+
"api": "fluid-build . --task api",
|
|
90
|
+
"api-extractor:commonjs": "api-extractor run --local",
|
|
91
|
+
"api-extractor:esnext": "copyfiles -u 1 \"dist/**/*-@(alpha|beta|public|untrimmed).d.ts\" lib",
|
|
48
92
|
"build": "fluid-build . --task build",
|
|
49
93
|
"build:compile": "fluid-build . --task compile",
|
|
50
|
-
"build:docs": "
|
|
94
|
+
"build:docs": "fluid-build . --task api",
|
|
51
95
|
"build:test": "tsc --project ./src/test/tsconfig.json",
|
|
96
|
+
"check:are-the-types-wrong": "attw --pack",
|
|
97
|
+
"check:release-tags": "api-extractor run --local --config ./api-extractor-lint.json",
|
|
52
98
|
"ci:build:docs": "api-extractor run",
|
|
53
99
|
"clean": "rimraf --glob dist \"**/*.tsbuildinfo\" \"**/*.build.log\" _api-extractor-temp",
|
|
54
100
|
"eslint": "eslint --format stylish src",
|
|
55
101
|
"eslint:fix": "eslint --format stylish src --fix --fix-type problem,suggestion,layout",
|
|
56
102
|
"format": "npm run prettier:fix",
|
|
57
|
-
"lint": "npm run prettier && npm run eslint",
|
|
103
|
+
"lint": "npm run prettier && npm run check:release-tags && npm run eslint",
|
|
58
104
|
"lint:fix": "npm run prettier:fix && npm run eslint:fix",
|
|
59
|
-
"prettier": "prettier --check . --ignore-path ../../../.prettierignore",
|
|
60
|
-
"prettier:fix": "prettier --write . --ignore-path ../../../.prettierignore",
|
|
105
|
+
"prettier": "prettier --check . --cache --ignore-path ../../../.prettierignore",
|
|
106
|
+
"prettier:fix": "prettier --write . --cache --ignore-path ../../../.prettierignore",
|
|
61
107
|
"tsc": "tsc",
|
|
62
108
|
"typetests:gen": "fluid-type-test-generator",
|
|
63
109
|
"typetests:prepare": "flub typetests --dir . --reset --previous --normalize"
|
package/src/attribution.ts
CHANGED
|
@@ -8,7 +8,6 @@ import type { IUser } from "@fluidframework/protocol-definitions";
|
|
|
8
8
|
/**
|
|
9
9
|
* AttributionKey representing a reference to some op in the op stream.
|
|
10
10
|
* Content associated with this key aligns with content modified by that op.
|
|
11
|
-
*
|
|
12
11
|
* @alpha
|
|
13
12
|
*/
|
|
14
13
|
export interface OpAttributionKey {
|
|
@@ -33,7 +32,6 @@ export interface OpAttributionKey {
|
|
|
33
32
|
* is currently unsupported, as applications can effectively modify content anonymously while detached.
|
|
34
33
|
* The runtime has no mechanism for reliably obtaining the user. It would be reasonable to start supporting
|
|
35
34
|
* this functionality if the host provided additional context to their attributor or attach calls.
|
|
36
|
-
*
|
|
37
35
|
* @alpha
|
|
38
36
|
*/
|
|
39
37
|
export interface DetachedAttributionKey {
|
|
@@ -52,7 +50,6 @@ export interface DetachedAttributionKey {
|
|
|
52
50
|
|
|
53
51
|
/**
|
|
54
52
|
* AttributionKey associated with content that has been made locally but not yet acked by the server.
|
|
55
|
-
*
|
|
56
53
|
* @alpha
|
|
57
54
|
*/
|
|
58
55
|
export interface LocalAttributionKey {
|
|
@@ -67,7 +64,7 @@ export type AttributionKey = OpAttributionKey | DetachedAttributionKey | LocalAt
|
|
|
67
64
|
|
|
68
65
|
/**
|
|
69
66
|
* Attribution information associated with a change.
|
|
70
|
-
* @
|
|
67
|
+
* @internal
|
|
71
68
|
*/
|
|
72
69
|
export interface AttributionInfo {
|
|
73
70
|
/**
|
package/src/dataStoreContext.ts
CHANGED
|
@@ -8,14 +8,11 @@ import {
|
|
|
8
8
|
IEventProvider,
|
|
9
9
|
ITelemetryBaseLogger,
|
|
10
10
|
IDisposable,
|
|
11
|
-
// eslint-disable-next-line import/no-deprecated
|
|
12
|
-
IFluidRouter,
|
|
13
11
|
IProvideFluidHandleContext,
|
|
14
12
|
IFluidHandle,
|
|
15
13
|
IRequest,
|
|
16
14
|
IResponse,
|
|
17
15
|
FluidObject,
|
|
18
|
-
IFluidHandleContext,
|
|
19
16
|
} from "@fluidframework/core-interfaces";
|
|
20
17
|
import {
|
|
21
18
|
IAudience,
|
|
@@ -31,6 +28,7 @@ import {
|
|
|
31
28
|
ISequencedDocumentMessage,
|
|
32
29
|
ISnapshotTree,
|
|
33
30
|
} from "@fluidframework/protocol-definitions";
|
|
31
|
+
import { IIdCompressor } from "@fluidframework/id-compressor";
|
|
34
32
|
import { IProvideFluidDataStoreFactory } from "./dataStoreFactory";
|
|
35
33
|
import { IProvideFluidDataStoreRegistry } from "./dataStoreRegistry";
|
|
36
34
|
import { IGarbageCollectionData, IGarbageCollectionDetailsBase } from "./garbageCollection";
|
|
@@ -42,10 +40,10 @@ import {
|
|
|
42
40
|
ITelemetryContext,
|
|
43
41
|
SummarizeInternalFn,
|
|
44
42
|
} from "./summary";
|
|
45
|
-
import { IIdCompressor } from "./id-compressor";
|
|
46
43
|
|
|
47
44
|
/**
|
|
48
45
|
* Runtime flush mode handling
|
|
46
|
+
* @alpha
|
|
49
47
|
*/
|
|
50
48
|
export enum FlushMode {
|
|
51
49
|
/**
|
|
@@ -60,6 +58,9 @@ export enum FlushMode {
|
|
|
60
58
|
TurnBased,
|
|
61
59
|
}
|
|
62
60
|
|
|
61
|
+
/**
|
|
62
|
+
* @internal
|
|
63
|
+
*/
|
|
63
64
|
export enum FlushModeExperimental {
|
|
64
65
|
/**
|
|
65
66
|
* When in Async flush mode, the runtime will accumulate all operations across JS turns and send them as a single
|
|
@@ -76,6 +77,7 @@ export enum FlushModeExperimental {
|
|
|
76
77
|
/**
|
|
77
78
|
* This tells the visibility state of a Fluid object. It basically tracks whether the object is not visible, visible
|
|
78
79
|
* locally within the container only or visible globally to all clients.
|
|
80
|
+
* @alpha
|
|
79
81
|
*/
|
|
80
82
|
export const VisibilityState = {
|
|
81
83
|
/**
|
|
@@ -101,8 +103,14 @@ export const VisibilityState = {
|
|
|
101
103
|
*/
|
|
102
104
|
GloballyVisible: "GloballyVisible",
|
|
103
105
|
};
|
|
106
|
+
/**
|
|
107
|
+
* @alpha
|
|
108
|
+
*/
|
|
104
109
|
export type VisibilityState = (typeof VisibilityState)[keyof typeof VisibilityState];
|
|
105
110
|
|
|
111
|
+
/**
|
|
112
|
+
* @alpha
|
|
113
|
+
*/
|
|
106
114
|
export interface IContainerRuntimeBaseEvents extends IEvent {
|
|
107
115
|
(event: "batchBegin", listener: (op: ISequencedDocumentMessage) => void);
|
|
108
116
|
/**
|
|
@@ -122,6 +130,7 @@ export interface IContainerRuntimeBaseEvents extends IEvent {
|
|
|
122
130
|
* the `IContainerRuntime.getAliasedDataStoreEntryPoint` function. The current datastore should be discarded
|
|
123
131
|
* and will be garbage collected. The current datastore cannot be aliased to a different value.
|
|
124
132
|
* 'AlreadyAliased' - the datastore has already been previously bound to another alias name.
|
|
133
|
+
* @alpha
|
|
125
134
|
*/
|
|
126
135
|
export type AliasResult = "Success" | "Conflict" | "AlreadyAliased";
|
|
127
136
|
|
|
@@ -130,6 +139,7 @@ export type AliasResult = "Success" | "Conflict" | "AlreadyAliased";
|
|
|
130
139
|
* - Handle to the data store's entryPoint
|
|
131
140
|
* - Fluid router for the data store
|
|
132
141
|
* - Can be assigned an alias
|
|
142
|
+
* @alpha
|
|
133
143
|
*/
|
|
134
144
|
export interface IDataStore {
|
|
135
145
|
/**
|
|
@@ -147,43 +157,12 @@ export interface IDataStore {
|
|
|
147
157
|
* with it.
|
|
148
158
|
*/
|
|
149
159
|
readonly entryPoint: IFluidHandle<FluidObject>;
|
|
150
|
-
|
|
151
|
-
/**
|
|
152
|
-
* @deprecated Requesting will not be supported in a future major release.
|
|
153
|
-
* Instead, access the objects within the DataStore using entryPoint, and then navigate from there using
|
|
154
|
-
* app-specific logic (e.g. retrieving a handle from a DDS, or the entryPoint object could implement a request paradigm itself)
|
|
155
|
-
*
|
|
156
|
-
* IMPORTANT: This overload is provided for back-compat where IDataStore.request(\{ url: "/" \}) is already implemented and used.
|
|
157
|
-
* The functionality it can provide (if the DataStore implementation is built for it) is redundant with @see {@link IDataStore.entryPoint}.
|
|
158
|
-
*
|
|
159
|
-
* Refer to Removing-IFluidRouter.md for details on migrating from the request pattern to using entryPoint.
|
|
160
|
-
*
|
|
161
|
-
* @param request - Only requesting \{ url: "/" \} is supported, requesting arbitrary URLs is deprecated.
|
|
162
|
-
*/
|
|
163
|
-
request(request: { url: "/"; headers?: undefined }): Promise<IResponse>;
|
|
164
|
-
|
|
165
|
-
/**
|
|
166
|
-
* Issue a request against the DataStore for a resource within it.
|
|
167
|
-
* @param request - The request to be issued against the DataStore
|
|
168
|
-
*
|
|
169
|
-
* @deprecated Requesting an arbitrary URL with headers will not be supported in a future major release.
|
|
170
|
-
* Instead, access the objects within the DataStore using entryPoint, and then navigate from there using
|
|
171
|
-
* app-specific logic (e.g. retrieving a handle from a DDS, or the entryPoint object could implement a request paradigm itself)
|
|
172
|
-
*
|
|
173
|
-
* Refer to Removing-IFluidRouter.md for details on migrating from the request pattern to using entryPoint.
|
|
174
|
-
*/
|
|
175
|
-
request(request: IRequest): Promise<IResponse>;
|
|
176
|
-
|
|
177
|
-
/**
|
|
178
|
-
* @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the "entryPoint" pattern. Refer to Removing-IFluidRouter.md
|
|
179
|
-
*/
|
|
180
|
-
// eslint-disable-next-line import/no-deprecated
|
|
181
|
-
readonly IFluidRouter: IFluidRouter;
|
|
182
160
|
}
|
|
183
161
|
|
|
184
162
|
/**
|
|
185
163
|
* A reduced set of functionality of IContainerRuntime that a data store context/data store runtime will need
|
|
186
164
|
* TODO: this should be merged into IFluidDataStoreContext
|
|
165
|
+
* @alpha
|
|
187
166
|
*/
|
|
188
167
|
export interface IContainerRuntimeBase extends IEventProvider<IContainerRuntimeBaseEvents> {
|
|
189
168
|
readonly logger: ITelemetryBaseLogger;
|
|
@@ -195,12 +174,6 @@ export interface IContainerRuntimeBase extends IEventProvider<IContainerRuntimeB
|
|
|
195
174
|
*/
|
|
196
175
|
orderSequentially(callback: () => void): void;
|
|
197
176
|
|
|
198
|
-
/**
|
|
199
|
-
* Executes a request against the container runtime
|
|
200
|
-
* @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the "entryPoint" pattern. Refer to Removing-IFluidRouter.md
|
|
201
|
-
*/
|
|
202
|
-
request(request: IRequest): Promise<IResponse>;
|
|
203
|
-
|
|
204
177
|
/**
|
|
205
178
|
* Submits a container runtime level signal to be sent to other clients.
|
|
206
179
|
* @param type - Type of the signal.
|
|
@@ -210,7 +183,6 @@ export interface IContainerRuntimeBase extends IEventProvider<IContainerRuntimeB
|
|
|
210
183
|
|
|
211
184
|
/**
|
|
212
185
|
* @deprecated 0.16 Issue #1537, #3631
|
|
213
|
-
* @internal
|
|
214
186
|
*/
|
|
215
187
|
_createDataStoreWithProps(
|
|
216
188
|
pkg: string | string[],
|
|
@@ -252,11 +224,6 @@ export interface IContainerRuntimeBase extends IEventProvider<IContainerRuntimeB
|
|
|
252
224
|
* Returns the current audience.
|
|
253
225
|
*/
|
|
254
226
|
getAudience(): IAudience;
|
|
255
|
-
|
|
256
|
-
/**
|
|
257
|
-
* @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the "entryPoint" pattern. Refer to Removing-IFluidRouter.md
|
|
258
|
-
*/
|
|
259
|
-
readonly IFluidHandleContext: IFluidHandleContext;
|
|
260
227
|
}
|
|
261
228
|
|
|
262
229
|
/**
|
|
@@ -264,6 +231,7 @@ export interface IContainerRuntimeBase extends IEventProvider<IContainerRuntimeB
|
|
|
264
231
|
*
|
|
265
232
|
* Functionality include attach, snapshot, op/signal processing, request routes, expose an entryPoint,
|
|
266
233
|
* and connection state notifications
|
|
234
|
+
* @alpha
|
|
267
235
|
*/
|
|
268
236
|
export interface IFluidDataStoreChannel extends IDisposable {
|
|
269
237
|
readonly id: string;
|
|
@@ -361,14 +329,11 @@ export interface IFluidDataStoreChannel extends IDisposable {
|
|
|
361
329
|
readonly entryPoint: IFluidHandle<FluidObject>;
|
|
362
330
|
|
|
363
331
|
request(request: IRequest): Promise<IResponse>;
|
|
364
|
-
|
|
365
|
-
/**
|
|
366
|
-
* @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the "entryPoint" pattern. Refer to Removing-IFluidRouter.md
|
|
367
|
-
*/
|
|
368
|
-
// eslint-disable-next-line import/no-deprecated
|
|
369
|
-
readonly IFluidRouter: IFluidRouter;
|
|
370
332
|
}
|
|
371
333
|
|
|
334
|
+
/**
|
|
335
|
+
* @alpha
|
|
336
|
+
*/
|
|
372
337
|
export type CreateChildSummarizerNodeFn = (
|
|
373
338
|
summarizeInternal: SummarizeInternalFn,
|
|
374
339
|
getGCDataFn: (fullGC?: boolean) => Promise<IGarbageCollectionData>,
|
|
@@ -378,6 +343,9 @@ export type CreateChildSummarizerNodeFn = (
|
|
|
378
343
|
getBaseGCDetailsFn?: () => Promise<IGarbageCollectionDetailsBase>,
|
|
379
344
|
) => ISummarizerNodeWithGC;
|
|
380
345
|
|
|
346
|
+
/**
|
|
347
|
+
* @alpha
|
|
348
|
+
*/
|
|
381
349
|
export interface IFluidDataStoreContextEvents extends IEvent {
|
|
382
350
|
(event: "attaching" | "attached", listener: () => void);
|
|
383
351
|
}
|
|
@@ -385,6 +353,7 @@ export interface IFluidDataStoreContextEvents extends IEvent {
|
|
|
385
353
|
/**
|
|
386
354
|
* Represents the context for the data store. It is used by the data store runtime to
|
|
387
355
|
* get information and call functionality to the container.
|
|
356
|
+
* @alpha
|
|
388
357
|
*/
|
|
389
358
|
export interface IFluidDataStoreContext
|
|
390
359
|
extends IEventProvider<IFluidDataStoreContextEvents>,
|
|
@@ -520,6 +489,9 @@ export interface IFluidDataStoreContext
|
|
|
520
489
|
addedGCOutboundReference?(srcHandle: IFluidHandle, outboundHandle: IFluidHandle): void;
|
|
521
490
|
}
|
|
522
491
|
|
|
492
|
+
/**
|
|
493
|
+
* @alpha
|
|
494
|
+
*/
|
|
523
495
|
export interface IFluidDataStoreContextDetached extends IFluidDataStoreContext {
|
|
524
496
|
/**
|
|
525
497
|
* Binds a runtime to the context.
|
package/src/dataStoreFactory.ts
CHANGED
|
@@ -5,8 +5,14 @@
|
|
|
5
5
|
|
|
6
6
|
import { IFluidDataStoreContext, IFluidDataStoreChannel } from "./dataStoreContext";
|
|
7
7
|
|
|
8
|
+
/**
|
|
9
|
+
* @alpha
|
|
10
|
+
*/
|
|
8
11
|
export const IFluidDataStoreFactory: keyof IProvideFluidDataStoreFactory = "IFluidDataStoreFactory";
|
|
9
12
|
|
|
13
|
+
/**
|
|
14
|
+
* @alpha
|
|
15
|
+
*/
|
|
10
16
|
export interface IProvideFluidDataStoreFactory {
|
|
11
17
|
readonly IFluidDataStoreFactory: IFluidDataStoreFactory;
|
|
12
18
|
}
|
|
@@ -14,6 +20,7 @@ export interface IProvideFluidDataStoreFactory {
|
|
|
14
20
|
/**
|
|
15
21
|
* IFluidDataStoreFactory create data stores. It is associated with an identifier (its `type` member)
|
|
16
22
|
* and usually provided to consumers using this mapping through a data store registry.
|
|
23
|
+
* @alpha
|
|
17
24
|
*/
|
|
18
25
|
export interface IFluidDataStoreFactory extends IProvideFluidDataStoreFactory {
|
|
19
26
|
/**
|
package/src/dataStoreRegistry.ts
CHANGED
|
@@ -8,6 +8,7 @@ import { IProvideFluidDataStoreFactory } from "./dataStoreFactory";
|
|
|
8
8
|
/**
|
|
9
9
|
* A single registry entry that may be used to create data stores
|
|
10
10
|
* It has to have either factory or registry, or both.
|
|
11
|
+
* @alpha
|
|
11
12
|
*/
|
|
12
13
|
export type FluidDataStoreRegistryEntry = Readonly<
|
|
13
14
|
Partial<IProvideFluidDataStoreRegistry & IProvideFluidDataStoreFactory>
|
|
@@ -15,16 +16,24 @@ export type FluidDataStoreRegistryEntry = Readonly<
|
|
|
15
16
|
/**
|
|
16
17
|
* An associated pair of an identifier and registry entry. Registry entries
|
|
17
18
|
* may be dynamically loaded.
|
|
19
|
+
* @alpha
|
|
18
20
|
*/
|
|
19
21
|
export type NamedFluidDataStoreRegistryEntry = [string, Promise<FluidDataStoreRegistryEntry>];
|
|
20
22
|
/**
|
|
21
23
|
* An iterable identifier/registry entry pair list
|
|
24
|
+
* @alpha
|
|
22
25
|
*/
|
|
23
26
|
export type NamedFluidDataStoreRegistryEntries = Iterable<NamedFluidDataStoreRegistryEntry>;
|
|
24
27
|
|
|
28
|
+
/**
|
|
29
|
+
* @alpha
|
|
30
|
+
*/
|
|
25
31
|
export const IFluidDataStoreRegistry: keyof IProvideFluidDataStoreRegistry =
|
|
26
32
|
"IFluidDataStoreRegistry";
|
|
27
33
|
|
|
34
|
+
/**
|
|
35
|
+
* @alpha
|
|
36
|
+
*/
|
|
28
37
|
export interface IProvideFluidDataStoreRegistry {
|
|
29
38
|
readonly IFluidDataStoreRegistry: IFluidDataStoreRegistry;
|
|
30
39
|
}
|
|
@@ -32,6 +41,7 @@ export interface IProvideFluidDataStoreRegistry {
|
|
|
32
41
|
/**
|
|
33
42
|
* An association of identifiers to data store registry entries, where the
|
|
34
43
|
* entries can be used to create data stores.
|
|
44
|
+
* @alpha
|
|
35
45
|
*/
|
|
36
46
|
export interface IFluidDataStoreRegistry extends IProvideFluidDataStoreRegistry {
|
|
37
47
|
get(name: string): Promise<FluidDataStoreRegistryEntry | undefined>;
|
package/src/garbageCollection.ts
CHANGED
|
@@ -3,18 +3,35 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
/**
|
|
6
|
+
/**
|
|
7
|
+
* The key for the GC tree in summary.
|
|
8
|
+
*
|
|
9
|
+
* @internal
|
|
10
|
+
*/
|
|
7
11
|
export const gcTreeKey = "gc";
|
|
8
|
-
/**
|
|
12
|
+
/**
|
|
13
|
+
* They prefix for GC blobs in the GC tree in summary.
|
|
14
|
+
*
|
|
15
|
+
* @internal
|
|
16
|
+
*/
|
|
9
17
|
export const gcBlobPrefix = "__gc";
|
|
10
|
-
/**
|
|
18
|
+
/**
|
|
19
|
+
* The key for tombstone blob in the GC tree in summary.
|
|
20
|
+
*
|
|
21
|
+
* @internal
|
|
22
|
+
*/
|
|
11
23
|
export const gcTombstoneBlobKey = "__tombstones";
|
|
12
|
-
/**
|
|
24
|
+
/**
|
|
25
|
+
* The key for deleted nodes blob in the GC tree in summary.
|
|
26
|
+
*
|
|
27
|
+
* @internal
|
|
28
|
+
*/
|
|
13
29
|
export const gcDeletedBlobKey = "__deletedNodes";
|
|
14
30
|
|
|
15
31
|
/**
|
|
16
32
|
* Garbage collection data returned by nodes in a Container.
|
|
17
33
|
* Used for running GC in the Container.
|
|
34
|
+
* @alpha
|
|
18
35
|
*/
|
|
19
36
|
export interface IGarbageCollectionData {
|
|
20
37
|
/**
|
|
@@ -25,6 +42,7 @@ export interface IGarbageCollectionData {
|
|
|
25
42
|
|
|
26
43
|
/**
|
|
27
44
|
* GC details provided to each node during creation.
|
|
45
|
+
* @alpha
|
|
28
46
|
*/
|
|
29
47
|
export interface IGarbageCollectionDetailsBase {
|
|
30
48
|
/**
|
package/src/index.ts
CHANGED
|
@@ -65,16 +65,52 @@ export {
|
|
|
65
65
|
SummarizeInternalFn,
|
|
66
66
|
totalBlobSizePropertyName,
|
|
67
67
|
} from "./summary";
|
|
68
|
+
|
|
69
|
+
// Re-exports for backwards compatibility.
|
|
70
|
+
// Will be removed in the future.
|
|
68
71
|
export {
|
|
69
|
-
|
|
72
|
+
/**
|
|
73
|
+
* @deprecated Import from `@fluidframework/id-compressor` instead.
|
|
74
|
+
*/
|
|
75
|
+
IdCompressor,
|
|
76
|
+
/**
|
|
77
|
+
* @deprecated Import from `@fluidframework/id-compressor` instead.
|
|
78
|
+
*/
|
|
70
79
|
IIdCompressor,
|
|
80
|
+
/**
|
|
81
|
+
* @deprecated Import from `@fluidframework/id-compressor` instead.
|
|
82
|
+
*/
|
|
83
|
+
IIdCompressorCore,
|
|
84
|
+
/**
|
|
85
|
+
* @deprecated Import from `@fluidframework/id-compressor` instead.
|
|
86
|
+
*/
|
|
87
|
+
IdCreationRange,
|
|
88
|
+
/**
|
|
89
|
+
* @deprecated Import from `@fluidframework/id-compressor` instead.
|
|
90
|
+
*/
|
|
91
|
+
OpSpaceCompressedId,
|
|
92
|
+
/**
|
|
93
|
+
* @deprecated Import from `@fluidframework/id-compressor` instead.
|
|
94
|
+
*/
|
|
71
95
|
SerializedIdCompressor,
|
|
72
|
-
|
|
96
|
+
/**
|
|
97
|
+
* @deprecated Import from `@fluidframework/id-compressor` instead.
|
|
98
|
+
*/
|
|
73
99
|
SerializedIdCompressorWithNoSession,
|
|
74
|
-
|
|
75
|
-
|
|
100
|
+
/**
|
|
101
|
+
* @deprecated Import from `@fluidframework/id-compressor` instead.
|
|
102
|
+
*/
|
|
103
|
+
SerializedIdCompressorWithOngoingSession,
|
|
104
|
+
/**
|
|
105
|
+
* @deprecated Import from `@fluidframework/id-compressor` instead.
|
|
106
|
+
*/
|
|
76
107
|
SessionId,
|
|
108
|
+
/**
|
|
109
|
+
* @deprecated Import from `@fluidframework/id-compressor` instead.
|
|
110
|
+
*/
|
|
111
|
+
SessionSpaceCompressedId,
|
|
112
|
+
/**
|
|
113
|
+
* @deprecated Import from `@fluidframework/id-compressor` instead.
|
|
114
|
+
*/
|
|
77
115
|
StableId,
|
|
78
|
-
|
|
79
|
-
initialClusterCapacity,
|
|
80
|
-
} from "./id-compressor";
|
|
116
|
+
} from "@fluidframework/id-compressor";
|
package/src/protocol.ts
CHANGED
|
@@ -7,6 +7,7 @@ import { ISignalMessage, ITree } from "@fluidframework/protocol-definitions";
|
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* An envelope wraps the contents with the intended target
|
|
10
|
+
* @internal
|
|
10
11
|
*/
|
|
11
12
|
export interface IEnvelope {
|
|
12
13
|
/**
|
|
@@ -20,6 +21,9 @@ export interface IEnvelope {
|
|
|
20
21
|
contents: any;
|
|
21
22
|
}
|
|
22
23
|
|
|
24
|
+
/**
|
|
25
|
+
* @internal
|
|
26
|
+
*/
|
|
23
27
|
export interface ISignalEnvelope {
|
|
24
28
|
/**
|
|
25
29
|
* The target for the envelope, undefined for the container
|
|
@@ -42,6 +46,7 @@ export interface ISignalEnvelope {
|
|
|
42
46
|
|
|
43
47
|
/**
|
|
44
48
|
* Represents ISignalMessage with its type.
|
|
49
|
+
* @alpha
|
|
45
50
|
*/
|
|
46
51
|
export interface IInboundSignalMessage extends ISignalMessage {
|
|
47
52
|
type: string;
|
|
@@ -50,6 +55,7 @@ export interface IInboundSignalMessage extends ISignalMessage {
|
|
|
50
55
|
/**
|
|
51
56
|
* Message send by client attaching local data structure.
|
|
52
57
|
* Contains snapshot of data structure which is the current state of this data structure.
|
|
58
|
+
* @internal
|
|
53
59
|
*/
|
|
54
60
|
export interface IAttachMessage {
|
|
55
61
|
/**
|
|
@@ -73,6 +79,7 @@ export interface IAttachMessage {
|
|
|
73
79
|
* but it should not be used when creating a new attach op.
|
|
74
80
|
* Older versions of attach messages could have null snapshots,
|
|
75
81
|
* so this gives correct typings for writing backward compatible code.
|
|
82
|
+
* @internal
|
|
76
83
|
*/
|
|
77
84
|
export type InboundAttachMessage = Omit<IAttachMessage, "snapshot"> & {
|
|
78
85
|
snapshot: IAttachMessage["snapshot"] | null;
|