@fluidframework/container-runtime-definitions 2.41.0 → 2.42.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
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
|
+
import type { ILayerCompatDetails } from "@fluid-internal/client-utils";
|
|
5
6
|
import type { IAudience } from "@fluidframework/container-definitions/internal";
|
|
6
7
|
import type { BrandedType, InternalUtilityTypes, ITelemetryBaseLogger, JsonDeserialized, JsonSerializable, Listenable, TypedMessage } from "@fluidframework/core-interfaces/internal";
|
|
7
8
|
import type { IQuorumClients } from "@fluidframework/driver-definitions/internal";
|
|
@@ -43,11 +44,24 @@ export type OutboundExtensionMessage<TMessage extends TypedMessage = TypedMessag
|
|
|
43
44
|
/**
|
|
44
45
|
* Brand for value that has not been verified.
|
|
45
46
|
*
|
|
47
|
+
* @remarks
|
|
46
48
|
* Usage:
|
|
47
49
|
*
|
|
48
|
-
* - Cast to
|
|
50
|
+
* - Cast any value to `UnverifiedBrand` using `as unknown as UnverifiedBrand<T>`
|
|
51
|
+
* when it is not yet confirmed that value is of type `T`.
|
|
52
|
+
*
|
|
53
|
+
* - When `T` value is needed, use narrowing type guards to check (preferred)
|
|
54
|
+
* or cast from `UnverifiedBrand` using `as unknown` when "instance" must
|
|
55
|
+
* be parsed to `T`.
|
|
49
56
|
*
|
|
50
|
-
*
|
|
57
|
+
* @example Example narrowing type guard:
|
|
58
|
+
* ```typescript
|
|
59
|
+
* function validateFoo(
|
|
60
|
+
* unverified: Foo | (Record<string, unknown> & UnverifiedBrand<Foo>)
|
|
61
|
+
* ): unverified is Foo {
|
|
62
|
+
* return unverified.IFooProvider === unverified;
|
|
63
|
+
* }
|
|
64
|
+
* ```
|
|
51
65
|
*
|
|
52
66
|
* @sealed
|
|
53
67
|
* @internal
|
|
@@ -96,6 +110,12 @@ export type VerifiedInboundExtensionMessage<TMessage extends TypedMessage = Type
|
|
|
96
110
|
*/
|
|
97
111
|
export type InboundExtensionMessage<TMessage extends TypedMessage = TypedMessage> = RawInboundExtensionMessage<TMessage> | VerifiedInboundExtensionMessage<TMessage>;
|
|
98
112
|
/**
|
|
113
|
+
* Runtime properties of an extension.
|
|
114
|
+
*
|
|
115
|
+
* @remarks
|
|
116
|
+
* This is used to coordinate select types that are known only to the extension, but
|
|
117
|
+
* that host will respect where it calls back or provides extension specific data.
|
|
118
|
+
*
|
|
99
119
|
* @internal
|
|
100
120
|
*/
|
|
101
121
|
export interface ExtensionRuntimeProperties {
|
|
@@ -151,6 +171,7 @@ export interface ExtensionHost<TRuntimeProperties extends ExtensionRuntimeProper
|
|
|
151
171
|
readonly getClientId: () => ClientConnectionId | undefined;
|
|
152
172
|
readonly events: Listenable<ExtensionHostEvents>;
|
|
153
173
|
readonly logger: ITelemetryBaseLogger;
|
|
174
|
+
readonly supportedFeatures: ILayerCompatDetails["supportedFeatures"];
|
|
154
175
|
/**
|
|
155
176
|
* Submits a signal to be sent to other clients.
|
|
156
177
|
* @param addressChain - Custom address sequence for the signal.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"containerExtension.d.ts","sourceRoot":"","sources":["../src/containerExtension.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAC;AAEhF,OAAO,KAAK,EACX,WAAW,EACX,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,YAAY,EACZ,MAAM,0CAA0C,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAElF;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAExC;;;;;;;;GAQG;AACH,MAAM,MAAM,gBAAgB,CAC3B,QAAQ,SAAS,YAAY,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,gBAAgB,CAAC,OAAO,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;CAC/D,IAED,QAAQ,SAAS,YAAY,GAC1B,oBAAoB,CAAC,mBAAmB,CACxC,QAAQ,GAAG;IACV;;;OAGG;IACH,cAAc,CAAC,EAAE,kBAAkB,CAAC;CACpC,CACD,GACA,KAAK,CAAC;AAEV;;;;;GAKG;AACH,MAAM,MAAM,wBAAwB,CAAC,QAAQ,SAAS,YAAY,GAAG,YAAY,IAChF,gBAAgB,CAAC;IAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAA;CAAE,CAAC,CAAC;AAE9F
|
|
1
|
+
{"version":3,"file":"containerExtension.d.ts","sourceRoot":"","sources":["../src/containerExtension.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
|
+
import type { ILayerCompatDetails } from "@fluid-internal/client-utils";
|
|
5
6
|
import type { IAudience } from "@fluidframework/container-definitions/internal";
|
|
6
7
|
import type { BrandedType, InternalUtilityTypes, ITelemetryBaseLogger, JsonDeserialized, JsonSerializable, Listenable, TypedMessage } from "@fluidframework/core-interfaces/internal";
|
|
7
8
|
import type { IQuorumClients } from "@fluidframework/driver-definitions/internal";
|
|
@@ -43,11 +44,24 @@ export type OutboundExtensionMessage<TMessage extends TypedMessage = TypedMessag
|
|
|
43
44
|
/**
|
|
44
45
|
* Brand for value that has not been verified.
|
|
45
46
|
*
|
|
47
|
+
* @remarks
|
|
46
48
|
* Usage:
|
|
47
49
|
*
|
|
48
|
-
* - Cast to
|
|
50
|
+
* - Cast any value to `UnverifiedBrand` using `as unknown as UnverifiedBrand<T>`
|
|
51
|
+
* when it is not yet confirmed that value is of type `T`.
|
|
52
|
+
*
|
|
53
|
+
* - When `T` value is needed, use narrowing type guards to check (preferred)
|
|
54
|
+
* or cast from `UnverifiedBrand` using `as unknown` when "instance" must
|
|
55
|
+
* be parsed to `T`.
|
|
49
56
|
*
|
|
50
|
-
*
|
|
57
|
+
* @example Example narrowing type guard:
|
|
58
|
+
* ```typescript
|
|
59
|
+
* function validateFoo(
|
|
60
|
+
* unverified: Foo | (Record<string, unknown> & UnverifiedBrand<Foo>)
|
|
61
|
+
* ): unverified is Foo {
|
|
62
|
+
* return unverified.IFooProvider === unverified;
|
|
63
|
+
* }
|
|
64
|
+
* ```
|
|
51
65
|
*
|
|
52
66
|
* @sealed
|
|
53
67
|
* @internal
|
|
@@ -96,6 +110,12 @@ export type VerifiedInboundExtensionMessage<TMessage extends TypedMessage = Type
|
|
|
96
110
|
*/
|
|
97
111
|
export type InboundExtensionMessage<TMessage extends TypedMessage = TypedMessage> = RawInboundExtensionMessage<TMessage> | VerifiedInboundExtensionMessage<TMessage>;
|
|
98
112
|
/**
|
|
113
|
+
* Runtime properties of an extension.
|
|
114
|
+
*
|
|
115
|
+
* @remarks
|
|
116
|
+
* This is used to coordinate select types that are known only to the extension, but
|
|
117
|
+
* that host will respect where it calls back or provides extension specific data.
|
|
118
|
+
*
|
|
99
119
|
* @internal
|
|
100
120
|
*/
|
|
101
121
|
export interface ExtensionRuntimeProperties {
|
|
@@ -151,6 +171,7 @@ export interface ExtensionHost<TRuntimeProperties extends ExtensionRuntimeProper
|
|
|
151
171
|
readonly getClientId: () => ClientConnectionId | undefined;
|
|
152
172
|
readonly events: Listenable<ExtensionHostEvents>;
|
|
153
173
|
readonly logger: ITelemetryBaseLogger;
|
|
174
|
+
readonly supportedFeatures: ILayerCompatDetails["supportedFeatures"];
|
|
154
175
|
/**
|
|
155
176
|
* Submits a signal to be sent to other clients.
|
|
156
177
|
* @param addressChain - Custom address sequence for the signal.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"containerExtension.d.ts","sourceRoot":"","sources":["../src/containerExtension.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAC;AAEhF,OAAO,KAAK,EACX,WAAW,EACX,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,YAAY,EACZ,MAAM,0CAA0C,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAElF;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAExC;;;;;;;;GAQG;AACH,MAAM,MAAM,gBAAgB,CAC3B,QAAQ,SAAS,YAAY,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,gBAAgB,CAAC,OAAO,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;CAC/D,IAED,QAAQ,SAAS,YAAY,GAC1B,oBAAoB,CAAC,mBAAmB,CACxC,QAAQ,GAAG;IACV;;;OAGG;IACH,cAAc,CAAC,EAAE,kBAAkB,CAAC;CACpC,CACD,GACA,KAAK,CAAC;AAEV;;;;;GAKG;AACH,MAAM,MAAM,wBAAwB,CAAC,QAAQ,SAAS,YAAY,GAAG,YAAY,IAChF,gBAAgB,CAAC;IAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAA;CAAE,CAAC,CAAC;AAE9F
|
|
1
|
+
{"version":3,"file":"containerExtension.d.ts","sourceRoot":"","sources":["../src/containerExtension.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluidframework/container-runtime-definitions",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.42.0",
|
|
4
4
|
"description": "Fluid Runtime definitions",
|
|
5
5
|
"homepage": "https://fluidframework.com",
|
|
6
6
|
"repository": {
|
|
@@ -41,10 +41,11 @@
|
|
|
41
41
|
"main": "",
|
|
42
42
|
"types": "lib/public.d.ts",
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@
|
|
45
|
-
"@fluidframework/
|
|
46
|
-
"@fluidframework/
|
|
47
|
-
"@fluidframework/
|
|
44
|
+
"@fluid-internal/client-utils": "~2.42.0",
|
|
45
|
+
"@fluidframework/container-definitions": "~2.42.0",
|
|
46
|
+
"@fluidframework/core-interfaces": "~2.42.0",
|
|
47
|
+
"@fluidframework/driver-definitions": "~2.42.0",
|
|
48
|
+
"@fluidframework/runtime-definitions": "~2.42.0"
|
|
48
49
|
},
|
|
49
50
|
"devDependencies": {
|
|
50
51
|
"@arethetypeswrong/cli": "^0.17.1",
|
|
@@ -52,7 +53,7 @@
|
|
|
52
53
|
"@fluid-tools/build-cli": "^0.55.0",
|
|
53
54
|
"@fluidframework/build-common": "^2.0.3",
|
|
54
55
|
"@fluidframework/build-tools": "^0.55.0",
|
|
55
|
-
"@fluidframework/container-runtime-definitions-previous": "npm:@fluidframework/container-runtime-definitions@2.
|
|
56
|
+
"@fluidframework/container-runtime-definitions-previous": "npm:@fluidframework/container-runtime-definitions@2.41.0",
|
|
56
57
|
"@fluidframework/eslint-config-fluid": "^5.7.4",
|
|
57
58
|
"@microsoft/api-extractor": "7.52.8",
|
|
58
59
|
"concurrently": "^8.2.1",
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
+
import type { ILayerCompatDetails } from "@fluid-internal/client-utils";
|
|
6
7
|
import type { IAudience } from "@fluidframework/container-definitions/internal";
|
|
7
8
|
// eslint-disable-next-line @typescript-eslint/consistent-type-imports -- BrandedType is a class declaration only
|
|
8
9
|
import type {
|
|
@@ -62,11 +63,24 @@ export type OutboundExtensionMessage<TMessage extends TypedMessage = TypedMessag
|
|
|
62
63
|
/**
|
|
63
64
|
* Brand for value that has not been verified.
|
|
64
65
|
*
|
|
66
|
+
* @remarks
|
|
65
67
|
* Usage:
|
|
66
68
|
*
|
|
67
|
-
* - Cast to
|
|
69
|
+
* - Cast any value to `UnverifiedBrand` using `as unknown as UnverifiedBrand<T>`
|
|
70
|
+
* when it is not yet confirmed that value is of type `T`.
|
|
71
|
+
*
|
|
72
|
+
* - When `T` value is needed, use narrowing type guards to check (preferred)
|
|
73
|
+
* or cast from `UnverifiedBrand` using `as unknown` when "instance" must
|
|
74
|
+
* be parsed to `T`.
|
|
68
75
|
*
|
|
69
|
-
*
|
|
76
|
+
* @example Example narrowing type guard:
|
|
77
|
+
* ```typescript
|
|
78
|
+
* function validateFoo(
|
|
79
|
+
* unverified: Foo | (Record<string, unknown> & UnverifiedBrand<Foo>)
|
|
80
|
+
* ): unverified is Foo {
|
|
81
|
+
* return unverified.IFooProvider === unverified;
|
|
82
|
+
* }
|
|
83
|
+
* ```
|
|
70
84
|
*
|
|
71
85
|
* @sealed
|
|
72
86
|
* @internal
|
|
@@ -136,6 +150,12 @@ export type InboundExtensionMessage<TMessage extends TypedMessage = TypedMessage
|
|
|
136
150
|
| VerifiedInboundExtensionMessage<TMessage>;
|
|
137
151
|
|
|
138
152
|
/**
|
|
153
|
+
* Runtime properties of an extension.
|
|
154
|
+
*
|
|
155
|
+
* @remarks
|
|
156
|
+
* This is used to coordinate select types that are known only to the extension, but
|
|
157
|
+
* that host will respect where it calls back or provides extension specific data.
|
|
158
|
+
*
|
|
139
159
|
* @internal
|
|
140
160
|
*/
|
|
141
161
|
export interface ExtensionRuntimeProperties {
|
|
@@ -205,6 +225,8 @@ export interface ExtensionHost<TRuntimeProperties extends ExtensionRuntimeProper
|
|
|
205
225
|
|
|
206
226
|
readonly logger: ITelemetryBaseLogger;
|
|
207
227
|
|
|
228
|
+
readonly supportedFeatures: ILayerCompatDetails["supportedFeatures"];
|
|
229
|
+
|
|
208
230
|
/**
|
|
209
231
|
* Submits a signal to be sent to other clients.
|
|
210
232
|
* @param addressChain - Custom address sequence for the signal.
|