@fluidframework/datastore-definitions 2.0.0-dev.7.4.0.217884 → 2.0.0-dev.7.4.0.221926
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 +4 -0
- package/api-extractor.json +0 -3
- package/api-report/datastore-definitions.api.md +3 -3
- package/dist/dataStoreRuntime.d.ts +2 -1
- package/dist/dataStoreRuntime.d.ts.map +1 -1
- package/dist/dataStoreRuntime.js.map +1 -1
- package/dist/datastore-definitions-alpha.d.ts +62 -3
- package/dist/datastore-definitions-beta.d.ts +22 -0
- package/dist/datastore-definitions-public.d.ts +22 -0
- package/dist/datastore-definitions-untrimmed.d.ts +3 -3
- package/dist/jsonable.d.ts +1 -1
- package/dist/jsonable.js.map +1 -1
- package/dist/serializable.d.ts +1 -1
- package/dist/serializable.js.map +1 -1
- package/lib/datastore-definitions-alpha.d.ts +62 -3
- package/lib/datastore-definitions-beta.d.ts +22 -0
- package/lib/datastore-definitions-public.d.ts +22 -0
- package/lib/datastore-definitions-untrimmed.d.ts +3 -3
- package/package.json +7 -4
- package/src/dataStoreRuntime.ts +1 -1
- package/src/jsonable.ts +1 -1
- package/src/serializable.ts +1 -1
package/CHANGELOG.md
CHANGED
package/api-extractor.json
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json",
|
|
3
3
|
"extends": "../../../common/build/build-common/api-extractor-base.json",
|
|
4
|
-
"dtsRollup": {
|
|
5
|
-
"enabled": true
|
|
6
|
-
},
|
|
7
4
|
"messages": {
|
|
8
5
|
"extractorMessageReporting": {
|
|
9
6
|
// TODO: Add missing documentation and remove this rule override
|
|
@@ -18,7 +18,7 @@ import { IFluidHandleContext } from '@fluidframework/core-interfaces';
|
|
|
18
18
|
import { IFluidLoadable } from '@fluidframework/core-interfaces';
|
|
19
19
|
import { IFluidRouter } from '@fluidframework/core-interfaces';
|
|
20
20
|
import { IGarbageCollectionData } from '@fluidframework/runtime-definitions';
|
|
21
|
-
import { IIdCompressor } from '@fluidframework/
|
|
21
|
+
import { IIdCompressor } from '@fluidframework/id-compressor';
|
|
22
22
|
import { IInboundSignalMessage } from '@fluidframework/runtime-definitions';
|
|
23
23
|
import { ILoaderOptions } from '@fluidframework/container-definitions';
|
|
24
24
|
import { IProvideFluidDataStoreRegistry } from '@fluidframework/runtime-definitions';
|
|
@@ -144,12 +144,12 @@ export interface IFluidDataStoreRuntimeEvents extends IEvent {
|
|
|
144
144
|
(event: "connected", listener: (clientId: string) => void): any;
|
|
145
145
|
}
|
|
146
146
|
|
|
147
|
-
// @
|
|
147
|
+
// @alpha
|
|
148
148
|
export type Jsonable<T = any, TReplaced = void> = T extends undefined | null | boolean | number | string | TReplaced ? T : Extract<T, Function> extends never ? {
|
|
149
149
|
[K in keyof T]: Extract<K, symbol> extends never ? Jsonable<T[K], TReplaced> : never;
|
|
150
150
|
} : never;
|
|
151
151
|
|
|
152
|
-
// @
|
|
152
|
+
// @alpha
|
|
153
153
|
export type Serializable<T = any> = Jsonable<T, IFluidHandle>;
|
|
154
154
|
|
|
155
155
|
```
|
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
import { IEvent, IEventProvider, ITelemetryLogger, IDisposable, IFluidHandleContext, IFluidRouter, IFluidHandle, FluidObject, IRequest, IResponse } from "@fluidframework/core-interfaces";
|
|
6
6
|
import { IAudience, IDeltaManager, AttachState, ILoaderOptions } from "@fluidframework/container-definitions";
|
|
7
7
|
import { IDocumentMessage, IQuorumClients, ISequencedDocumentMessage } from "@fluidframework/protocol-definitions";
|
|
8
|
-
import {
|
|
8
|
+
import { IInboundSignalMessage, IProvideFluidDataStoreRegistry } from "@fluidframework/runtime-definitions";
|
|
9
|
+
import { IIdCompressor } from "@fluidframework/id-compressor";
|
|
9
10
|
import { IChannel } from ".";
|
|
10
11
|
/**
|
|
11
12
|
* Events emitted by {@link IFluidDataStoreRuntime}.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataStoreRuntime.d.ts","sourceRoot":"","sources":["../src/dataStoreRuntime.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,MAAM,EACN,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,mBAAmB,EAEnB,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,SAAS,EACT,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACN,gBAAgB,EAChB,cAAc,EACd,yBAAyB,EACzB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACN,
|
|
1
|
+
{"version":3,"file":"dataStoreRuntime.d.ts","sourceRoot":"","sources":["../src/dataStoreRuntime.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataStoreRuntime.js","sourceRoot":"","sources":["../src/dataStoreRuntime.ts"],"names":[],"mappings":";AAAA;;;GAGG","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport {\n\tIEvent,\n\tIEventProvider,\n\tITelemetryLogger,\n\tIDisposable,\n\tIFluidHandleContext,\n\t// eslint-disable-next-line import/no-deprecated\n\tIFluidRouter,\n\tIFluidHandle,\n\tFluidObject,\n\tIRequest,\n\tIResponse,\n} from \"@fluidframework/core-interfaces\";\nimport {\n\tIAudience,\n\tIDeltaManager,\n\tAttachState,\n\tILoaderOptions,\n} from \"@fluidframework/container-definitions\";\nimport {\n\tIDocumentMessage,\n\tIQuorumClients,\n\tISequencedDocumentMessage,\n} from \"@fluidframework/protocol-definitions\";\nimport {\n\
|
|
1
|
+
{"version":3,"file":"dataStoreRuntime.js","sourceRoot":"","sources":["../src/dataStoreRuntime.ts"],"names":[],"mappings":";AAAA;;;GAGG","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport {\n\tIEvent,\n\tIEventProvider,\n\tITelemetryLogger,\n\tIDisposable,\n\tIFluidHandleContext,\n\t// eslint-disable-next-line import/no-deprecated\n\tIFluidRouter,\n\tIFluidHandle,\n\tFluidObject,\n\tIRequest,\n\tIResponse,\n} from \"@fluidframework/core-interfaces\";\nimport {\n\tIAudience,\n\tIDeltaManager,\n\tAttachState,\n\tILoaderOptions,\n} from \"@fluidframework/container-definitions\";\nimport {\n\tIDocumentMessage,\n\tIQuorumClients,\n\tISequencedDocumentMessage,\n} from \"@fluidframework/protocol-definitions\";\nimport {\n\tIInboundSignalMessage,\n\tIProvideFluidDataStoreRegistry,\n} from \"@fluidframework/runtime-definitions\";\nimport { IIdCompressor } from \"@fluidframework/id-compressor\";\nimport { IChannel } from \".\";\n\n/**\n * Events emitted by {@link IFluidDataStoreRuntime}.\n * @alpha\n */\nexport interface IFluidDataStoreRuntimeEvents extends IEvent {\n\t(event: \"disconnected\" | \"dispose\" | \"attaching\" | \"attached\", listener: () => void);\n\t(event: \"op\", listener: (message: ISequencedDocumentMessage) => void);\n\t(event: \"signal\", listener: (message: IInboundSignalMessage, local: boolean) => void);\n\t(event: \"connected\", listener: (clientId: string) => void);\n}\n\n/**\n * Represents the runtime for the data store. Contains helper functions/state of the data store.\n * @alpha\n */\nexport interface IFluidDataStoreRuntime\n\textends IEventProvider<IFluidDataStoreRuntimeEvents>,\n\t\tIDisposable,\n\t\tPartial<IProvideFluidDataStoreRegistry> {\n\treadonly id: string;\n\n\treadonly IFluidHandleContext: IFluidHandleContext;\n\n\treadonly rootRoutingContext: IFluidHandleContext;\n\treadonly channelsRoutingContext: IFluidHandleContext;\n\treadonly objectsRoutingContext: IFluidHandleContext;\n\n\treadonly options: ILoaderOptions;\n\n\treadonly deltaManager: IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>;\n\n\treadonly clientId: string | undefined;\n\n\treadonly connected: boolean;\n\n\treadonly logger: ITelemetryLogger;\n\n\t/**\n\t * Indicates the attachment state of the data store to a host service.\n\t */\n\treadonly attachState: AttachState;\n\n\treadonly idCompressor?: IIdCompressor;\n\n\t/**\n\t * Returns the channel with the given id\n\t */\n\tgetChannel(id: string): Promise<IChannel>;\n\n\t/**\n\t * Invokes the given callback and expects that no ops are submitted\n\t * until execution finishes. If an op is submitted, an error will be raised.\n\t *\n\t * Can be disabled by feature gate `Fluid.ContainerRuntime.DisableOpReentryCheck`\n\t *\n\t * @param callback - the callback to be invoked\n\t */\n\tensureNoDataModelChanges<T>(callback: () => T): T;\n\n\t/**\n\t * Creates a new channel of the given type.\n\t * @param id - ID of the channel to be created. A unique ID will be generated if left undefined.\n\t * @param type - Type of the channel.\n\t */\n\tcreateChannel(id: string | undefined, type: string): IChannel;\n\n\t/**\n\t * Bind the channel with the data store runtime. If the runtime\n\t * is attached then we attach the channel to make it live.\n\t */\n\tbindChannel(channel: IChannel): void;\n\n\t// Blob related calls\n\t/**\n\t * Api to upload a blob of data.\n\t * @param blob - blob to be uploaded.\n\t */\n\tuploadBlob(blob: ArrayBufferLike, signal?: AbortSignal): Promise<IFluidHandle<ArrayBufferLike>>;\n\n\t/**\n\t * Submits the signal to be sent to other clients.\n\t * @param type - Type of the signal.\n\t * @param content - Content of the signal.\n\t * @param targetClientId - When specified, the signal is only sent to the provided client id.\n\t */\n\tsubmitSignal(type: string, content: any, targetClientId?: string): void;\n\n\t/**\n\t * Returns the current quorum.\n\t */\n\tgetQuorum(): IQuorumClients;\n\n\t/**\n\t * Returns the current audience.\n\t */\n\tgetAudience(): IAudience;\n\n\t/**\n\t * Resolves when a local data store is attached.\n\t */\n\twaitAttached(): Promise<void>;\n\n\t/**\n\t * Exposes a handle to the root object / entryPoint of the data store. Use this as the primary way of interacting\n\t * with it.\n\t */\n\treadonly entryPoint: IFluidHandle<FluidObject>;\n\n\t/**\n\t * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the \"entryPoint\" pattern. Refer to Removing-IFluidRouter.md\n\t */\n\trequest(request: IRequest): Promise<IResponse>;\n\n\t/**\n\t * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the \"entryPoint\" pattern. Refer to Removing-IFluidRouter.md\n\t */\n\t// eslint-disable-next-line import/no-deprecated\n\treadonly IFluidRouter: IFluidRouter;\n}\n"]}
|
|
@@ -19,7 +19,7 @@ import { IFluidHandleContext } from '@fluidframework/core-interfaces';
|
|
|
19
19
|
import { IFluidLoadable } from '@fluidframework/core-interfaces';
|
|
20
20
|
import { IFluidRouter } from '@fluidframework/core-interfaces';
|
|
21
21
|
import { IGarbageCollectionData } from '@fluidframework/runtime-definitions';
|
|
22
|
-
import { IIdCompressor } from '@fluidframework/
|
|
22
|
+
import { IIdCompressor } from '@fluidframework/id-compressor';
|
|
23
23
|
import { IInboundSignalMessage } from '@fluidframework/runtime-definitions';
|
|
24
24
|
import { ILoaderOptions } from '@fluidframework/container-definitions';
|
|
25
25
|
import { IProvideFluidDataStoreRegistry } from '@fluidframework/runtime-definitions';
|
|
@@ -396,8 +396,67 @@ export declare interface IFluidDataStoreRuntimeEvents extends IEvent {
|
|
|
396
396
|
(event: "connected", listener: (clientId: string) => void): any;
|
|
397
397
|
}
|
|
398
398
|
|
|
399
|
-
|
|
399
|
+
/**
|
|
400
|
+
* Used to constrain a type `T` to types that are serializable as JSON.
|
|
401
|
+
* Produces a compile-time error if `T` contains non-Jsonable members.
|
|
402
|
+
*
|
|
403
|
+
* @remarks
|
|
404
|
+
* Note that this does NOT prevent using of values with non-json compatible data,
|
|
405
|
+
* it only prevents using values with types that include non-json compatible data.
|
|
406
|
+
* This means that one can, for example, pass an a value typed with json compatible
|
|
407
|
+
* interface into this function,
|
|
408
|
+
* that could actually be a class with lots on non-json compatible fields and methods.
|
|
409
|
+
*
|
|
410
|
+
* Important: `T extends Jsonable<T>` is incorrect (does not even compile).
|
|
411
|
+
* `T extends Jsonable` is also incorrect since `Jsonable` is just `any` and thus applies no constraint at all.
|
|
412
|
+
*
|
|
413
|
+
* The optional 'TReplaced' parameter may be used to permit additional leaf types to support
|
|
414
|
+
* situations where a `replacer` is used to handle special values (e.g., `Jsonable<{ x: IFluidHandle }, IFluidHandle>`).
|
|
415
|
+
*
|
|
416
|
+
* Note that `Jsonable<T>` does not protect against the following pitfalls when serializing with JSON.stringify():
|
|
417
|
+
*
|
|
418
|
+
* - `undefined` properties on objects are omitted (i.e., properties become undefined instead of equal to undefined).
|
|
419
|
+
*
|
|
420
|
+
* - When `undefined` appears as the root object or as an array element it is coerced to `null`.
|
|
421
|
+
*
|
|
422
|
+
* - Non-finite numbers (`NaN`, `+/-Infinity`) are also coerced to `null`.
|
|
423
|
+
*
|
|
424
|
+
* - prototypes and non-enumerable properties are lost.
|
|
425
|
+
*
|
|
426
|
+
* Also, `Jsonable<T>` does not prevent the construction of circular references.
|
|
427
|
+
*
|
|
428
|
+
* Using `Jsonable` (with no type parameters) or `Jsonable<any>` is just a type alias for `any`
|
|
429
|
+
* and should not be used if type safety is desired.
|
|
430
|
+
*
|
|
431
|
+
* @example Typical usage
|
|
432
|
+
*
|
|
433
|
+
* ```typescript
|
|
434
|
+
* function foo<T>(value: Jsonable<T>) { ... }
|
|
435
|
+
* ```
|
|
436
|
+
* @alpha
|
|
437
|
+
*/
|
|
438
|
+
export declare type Jsonable<T = any, TReplaced = void> = T extends undefined | null | boolean | number | string | TReplaced ? T : Extract<T, Function> extends never ? {
|
|
439
|
+
[K in keyof T]: Extract<K, symbol> extends never ? Jsonable<T[K], TReplaced> : never;
|
|
440
|
+
} : never;
|
|
400
441
|
|
|
401
|
-
|
|
442
|
+
/**
|
|
443
|
+
* Used to constrain a type 'T' to types that Fluid can intrinsically serialize. Produces a
|
|
444
|
+
* compile-time error if `T` contains non-serializable members.
|
|
445
|
+
*
|
|
446
|
+
* @remarks
|
|
447
|
+
* See Jsonable for caveats regarding serialization of `undefined`, non-finite numbers,
|
|
448
|
+
* and circular references.
|
|
449
|
+
*
|
|
450
|
+
* Important: `T extends Serializable<T>` is generally incorrect.
|
|
451
|
+
* (Any value of `T` extends the serializable subset of itself.)
|
|
452
|
+
*
|
|
453
|
+
* @example Typical usage
|
|
454
|
+
*
|
|
455
|
+
* ```typescript
|
|
456
|
+
* function serialize<T>(value: Serializable<T>) { ... }
|
|
457
|
+
* ```
|
|
458
|
+
* @alpha
|
|
459
|
+
*/
|
|
460
|
+
export declare type Serializable<T = any> = Jsonable<T, IFluidHandle>;
|
|
402
461
|
|
|
403
462
|
export { }
|
|
@@ -5,9 +5,31 @@
|
|
|
5
5
|
* @packageDocumentation
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
+
import { AttachState } from '@fluidframework/container-definitions';
|
|
9
|
+
import { FluidObject } from '@fluidframework/core-interfaces';
|
|
10
|
+
import { IAudience } from '@fluidframework/container-definitions';
|
|
11
|
+
import { IDeltaManager } from '@fluidframework/container-definitions';
|
|
12
|
+
import { IDisposable } from '@fluidframework/core-interfaces';
|
|
8
13
|
import { IDocumentMessage } from '@fluidframework/protocol-definitions';
|
|
14
|
+
import { IEvent } from '@fluidframework/core-interfaces';
|
|
15
|
+
import { IEventProvider } from '@fluidframework/core-interfaces';
|
|
16
|
+
import { IExperimentalIncrementalSummaryContext } from '@fluidframework/runtime-definitions';
|
|
17
|
+
import { IFluidHandle } from '@fluidframework/core-interfaces';
|
|
18
|
+
import { IFluidHandleContext } from '@fluidframework/core-interfaces';
|
|
19
|
+
import { IFluidLoadable } from '@fluidframework/core-interfaces';
|
|
20
|
+
import { IFluidRouter } from '@fluidframework/core-interfaces';
|
|
21
|
+
import { IGarbageCollectionData } from '@fluidframework/runtime-definitions';
|
|
22
|
+
import { IIdCompressor } from '@fluidframework/id-compressor';
|
|
23
|
+
import { IInboundSignalMessage } from '@fluidframework/runtime-definitions';
|
|
24
|
+
import { ILoaderOptions } from '@fluidframework/container-definitions';
|
|
25
|
+
import { IProvideFluidDataStoreRegistry } from '@fluidframework/runtime-definitions';
|
|
9
26
|
import { IQuorumClients } from '@fluidframework/protocol-definitions';
|
|
27
|
+
import { IRequest } from '@fluidframework/core-interfaces';
|
|
28
|
+
import { IResponse } from '@fluidframework/core-interfaces';
|
|
10
29
|
import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
|
|
30
|
+
import { ISummaryTreeWithStats } from '@fluidframework/runtime-definitions';
|
|
31
|
+
import { ITelemetryContext } from '@fluidframework/runtime-definitions';
|
|
32
|
+
import { ITelemetryLogger } from '@fluidframework/core-interfaces';
|
|
11
33
|
|
|
12
34
|
/* Excluded from this release type: AttachState */
|
|
13
35
|
|
|
@@ -5,9 +5,31 @@
|
|
|
5
5
|
* @packageDocumentation
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
+
import { AttachState } from '@fluidframework/container-definitions';
|
|
9
|
+
import { FluidObject } from '@fluidframework/core-interfaces';
|
|
10
|
+
import { IAudience } from '@fluidframework/container-definitions';
|
|
11
|
+
import { IDeltaManager } from '@fluidframework/container-definitions';
|
|
12
|
+
import { IDisposable } from '@fluidframework/core-interfaces';
|
|
8
13
|
import { IDocumentMessage } from '@fluidframework/protocol-definitions';
|
|
14
|
+
import { IEvent } from '@fluidframework/core-interfaces';
|
|
15
|
+
import { IEventProvider } from '@fluidframework/core-interfaces';
|
|
16
|
+
import { IExperimentalIncrementalSummaryContext } from '@fluidframework/runtime-definitions';
|
|
17
|
+
import { IFluidHandle } from '@fluidframework/core-interfaces';
|
|
18
|
+
import { IFluidHandleContext } from '@fluidframework/core-interfaces';
|
|
19
|
+
import { IFluidLoadable } from '@fluidframework/core-interfaces';
|
|
20
|
+
import { IFluidRouter } from '@fluidframework/core-interfaces';
|
|
21
|
+
import { IGarbageCollectionData } from '@fluidframework/runtime-definitions';
|
|
22
|
+
import { IIdCompressor } from '@fluidframework/id-compressor';
|
|
23
|
+
import { IInboundSignalMessage } from '@fluidframework/runtime-definitions';
|
|
24
|
+
import { ILoaderOptions } from '@fluidframework/container-definitions';
|
|
25
|
+
import { IProvideFluidDataStoreRegistry } from '@fluidframework/runtime-definitions';
|
|
9
26
|
import { IQuorumClients } from '@fluidframework/protocol-definitions';
|
|
27
|
+
import { IRequest } from '@fluidframework/core-interfaces';
|
|
28
|
+
import { IResponse } from '@fluidframework/core-interfaces';
|
|
10
29
|
import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
|
|
30
|
+
import { ISummaryTreeWithStats } from '@fluidframework/runtime-definitions';
|
|
31
|
+
import { ITelemetryContext } from '@fluidframework/runtime-definitions';
|
|
32
|
+
import { ITelemetryLogger } from '@fluidframework/core-interfaces';
|
|
11
33
|
|
|
12
34
|
/* Excluded from this release type: AttachState */
|
|
13
35
|
|
|
@@ -19,7 +19,7 @@ import { IFluidHandleContext } from '@fluidframework/core-interfaces';
|
|
|
19
19
|
import { IFluidLoadable } from '@fluidframework/core-interfaces';
|
|
20
20
|
import { IFluidRouter } from '@fluidframework/core-interfaces';
|
|
21
21
|
import { IGarbageCollectionData } from '@fluidframework/runtime-definitions';
|
|
22
|
-
import { IIdCompressor } from '@fluidframework/
|
|
22
|
+
import { IIdCompressor } from '@fluidframework/id-compressor';
|
|
23
23
|
import { IInboundSignalMessage } from '@fluidframework/runtime-definitions';
|
|
24
24
|
import { ILoaderOptions } from '@fluidframework/container-definitions';
|
|
25
25
|
import { IProvideFluidDataStoreRegistry } from '@fluidframework/runtime-definitions';
|
|
@@ -433,7 +433,7 @@ export declare interface IFluidDataStoreRuntimeEvents extends IEvent {
|
|
|
433
433
|
* ```typescript
|
|
434
434
|
* function foo<T>(value: Jsonable<T>) { ... }
|
|
435
435
|
* ```
|
|
436
|
-
* @
|
|
436
|
+
* @alpha
|
|
437
437
|
*/
|
|
438
438
|
export declare type Jsonable<T = any, TReplaced = void> = T extends undefined | null | boolean | number | string | TReplaced ? T : Extract<T, Function> extends never ? {
|
|
439
439
|
[K in keyof T]: Extract<K, symbol> extends never ? Jsonable<T[K], TReplaced> : never;
|
|
@@ -455,7 +455,7 @@ export declare type Jsonable<T = any, TReplaced = void> = T extends undefined |
|
|
|
455
455
|
* ```typescript
|
|
456
456
|
* function serialize<T>(value: Serializable<T>) { ... }
|
|
457
457
|
* ```
|
|
458
|
-
* @
|
|
458
|
+
* @alpha
|
|
459
459
|
*/
|
|
460
460
|
export declare type Serializable<T = any> = Jsonable<T, IFluidHandle>;
|
|
461
461
|
|
package/dist/jsonable.d.ts
CHANGED
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
* ```typescript
|
|
40
40
|
* function foo<T>(value: Jsonable<T>) { ... }
|
|
41
41
|
* ```
|
|
42
|
-
* @
|
|
42
|
+
* @alpha
|
|
43
43
|
*/
|
|
44
44
|
export type Jsonable<T = any, TReplaced = void> = T extends undefined | null | boolean | number | string | TReplaced ? T : Extract<T, Function> extends never ? {
|
|
45
45
|
[K in keyof T]: Extract<K, symbol> extends never ? Jsonable<T[K], TReplaced> : never;
|
package/dist/jsonable.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsonable.js","sourceRoot":"","sources":["../src/jsonable.ts"],"names":[],"mappings":";AAAA;;;GAGG","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Used to constrain a type `T` to types that are serializable as JSON.\n * Produces a compile-time error if `T` contains non-Jsonable members.\n *\n * @remarks\n * Note that this does NOT prevent using of values with non-json compatible data,\n * it only prevents using values with types that include non-json compatible data.\n * This means that one can, for example, pass an a value typed with json compatible\n * interface into this function,\n * that could actually be a class with lots on non-json compatible fields and methods.\n *\n * Important: `T extends Jsonable<T>` is incorrect (does not even compile).\n * `T extends Jsonable` is also incorrect since `Jsonable` is just `any` and thus applies no constraint at all.\n *\n * The optional 'TReplaced' parameter may be used to permit additional leaf types to support\n * situations where a `replacer` is used to handle special values (e.g., `Jsonable<{ x: IFluidHandle }, IFluidHandle>`).\n *\n * Note that `Jsonable<T>` does not protect against the following pitfalls when serializing with JSON.stringify():\n *\n * - `undefined` properties on objects are omitted (i.e., properties become undefined instead of equal to undefined).\n *\n * - When `undefined` appears as the root object or as an array element it is coerced to `null`.\n *\n * - Non-finite numbers (`NaN`, `+/-Infinity`) are also coerced to `null`.\n *\n * - prototypes and non-enumerable properties are lost.\n *\n * Also, `Jsonable<T>` does not prevent the construction of circular references.\n *\n * Using `Jsonable` (with no type parameters) or `Jsonable<any>` is just a type alias for `any`\n * and should not be used if type safety is desired.\n *\n * @example Typical usage\n *\n * ```typescript\n * function foo<T>(value: Jsonable<T>) { ... }\n * ```\n * @
|
|
1
|
+
{"version":3,"file":"jsonable.js","sourceRoot":"","sources":["../src/jsonable.ts"],"names":[],"mappings":";AAAA;;;GAGG","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Used to constrain a type `T` to types that are serializable as JSON.\n * Produces a compile-time error if `T` contains non-Jsonable members.\n *\n * @remarks\n * Note that this does NOT prevent using of values with non-json compatible data,\n * it only prevents using values with types that include non-json compatible data.\n * This means that one can, for example, pass an a value typed with json compatible\n * interface into this function,\n * that could actually be a class with lots on non-json compatible fields and methods.\n *\n * Important: `T extends Jsonable<T>` is incorrect (does not even compile).\n * `T extends Jsonable` is also incorrect since `Jsonable` is just `any` and thus applies no constraint at all.\n *\n * The optional 'TReplaced' parameter may be used to permit additional leaf types to support\n * situations where a `replacer` is used to handle special values (e.g., `Jsonable<{ x: IFluidHandle }, IFluidHandle>`).\n *\n * Note that `Jsonable<T>` does not protect against the following pitfalls when serializing with JSON.stringify():\n *\n * - `undefined` properties on objects are omitted (i.e., properties become undefined instead of equal to undefined).\n *\n * - When `undefined` appears as the root object or as an array element it is coerced to `null`.\n *\n * - Non-finite numbers (`NaN`, `+/-Infinity`) are also coerced to `null`.\n *\n * - prototypes and non-enumerable properties are lost.\n *\n * Also, `Jsonable<T>` does not prevent the construction of circular references.\n *\n * Using `Jsonable` (with no type parameters) or `Jsonable<any>` is just a type alias for `any`\n * and should not be used if type safety is desired.\n *\n * @example Typical usage\n *\n * ```typescript\n * function foo<T>(value: Jsonable<T>) { ... }\n * ```\n * @alpha\n */\nexport type Jsonable<T = any, TReplaced = void> = T extends\n\t| undefined\n\t| null\n\t| boolean\n\t| number\n\t| string\n\t| TReplaced\n\t? T\n\t: // eslint-disable-next-line @typescript-eslint/ban-types\n\tExtract<T, Function> extends never\n\t? {\n\t\t\t[K in keyof T]: Extract<K, symbol> extends never ? Jsonable<T[K], TReplaced> : never;\n\t }\n\t: never;\n"]}
|
package/dist/serializable.d.ts
CHANGED
|
@@ -20,7 +20,7 @@ import { Jsonable } from "./jsonable";
|
|
|
20
20
|
* ```typescript
|
|
21
21
|
* function serialize<T>(value: Serializable<T>) { ... }
|
|
22
22
|
* ```
|
|
23
|
-
* @
|
|
23
|
+
* @alpha
|
|
24
24
|
*/
|
|
25
25
|
export type Serializable<T = any> = Jsonable<T, IFluidHandle>;
|
|
26
26
|
//# sourceMappingURL=serializable.d.ts.map
|
package/dist/serializable.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializable.js","sourceRoot":"","sources":["../src/serializable.ts"],"names":[],"mappings":";AAAA;;;GAGG","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { IFluidHandle } from \"@fluidframework/core-interfaces\";\nimport { Jsonable } from \"./jsonable\";\n\n/**\n * Used to constrain a type 'T' to types that Fluid can intrinsically serialize. Produces a\n * compile-time error if `T` contains non-serializable members.\n *\n * @remarks\n * See Jsonable for caveats regarding serialization of `undefined`, non-finite numbers,\n * and circular references.\n *\n * Important: `T extends Serializable<T>` is generally incorrect.\n * (Any value of `T` extends the serializable subset of itself.)\n *\n * @example Typical usage\n *\n * ```typescript\n * function serialize<T>(value: Serializable<T>) { ... }\n * ```\n * @
|
|
1
|
+
{"version":3,"file":"serializable.js","sourceRoot":"","sources":["../src/serializable.ts"],"names":[],"mappings":";AAAA;;;GAGG","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { IFluidHandle } from \"@fluidframework/core-interfaces\";\nimport { Jsonable } from \"./jsonable\";\n\n/**\n * Used to constrain a type 'T' to types that Fluid can intrinsically serialize. Produces a\n * compile-time error if `T` contains non-serializable members.\n *\n * @remarks\n * See Jsonable for caveats regarding serialization of `undefined`, non-finite numbers,\n * and circular references.\n *\n * Important: `T extends Serializable<T>` is generally incorrect.\n * (Any value of `T` extends the serializable subset of itself.)\n *\n * @example Typical usage\n *\n * ```typescript\n * function serialize<T>(value: Serializable<T>) { ... }\n * ```\n * @alpha\n */\nexport type Serializable<T = any> = Jsonable<T, IFluidHandle>;\n"]}
|
|
@@ -19,7 +19,7 @@ import { IFluidHandleContext } from '@fluidframework/core-interfaces';
|
|
|
19
19
|
import { IFluidLoadable } from '@fluidframework/core-interfaces';
|
|
20
20
|
import { IFluidRouter } from '@fluidframework/core-interfaces';
|
|
21
21
|
import { IGarbageCollectionData } from '@fluidframework/runtime-definitions';
|
|
22
|
-
import { IIdCompressor } from '@fluidframework/
|
|
22
|
+
import { IIdCompressor } from '@fluidframework/id-compressor';
|
|
23
23
|
import { IInboundSignalMessage } from '@fluidframework/runtime-definitions';
|
|
24
24
|
import { ILoaderOptions } from '@fluidframework/container-definitions';
|
|
25
25
|
import { IProvideFluidDataStoreRegistry } from '@fluidframework/runtime-definitions';
|
|
@@ -396,8 +396,67 @@ export declare interface IFluidDataStoreRuntimeEvents extends IEvent {
|
|
|
396
396
|
(event: "connected", listener: (clientId: string) => void): any;
|
|
397
397
|
}
|
|
398
398
|
|
|
399
|
-
|
|
399
|
+
/**
|
|
400
|
+
* Used to constrain a type `T` to types that are serializable as JSON.
|
|
401
|
+
* Produces a compile-time error if `T` contains non-Jsonable members.
|
|
402
|
+
*
|
|
403
|
+
* @remarks
|
|
404
|
+
* Note that this does NOT prevent using of values with non-json compatible data,
|
|
405
|
+
* it only prevents using values with types that include non-json compatible data.
|
|
406
|
+
* This means that one can, for example, pass an a value typed with json compatible
|
|
407
|
+
* interface into this function,
|
|
408
|
+
* that could actually be a class with lots on non-json compatible fields and methods.
|
|
409
|
+
*
|
|
410
|
+
* Important: `T extends Jsonable<T>` is incorrect (does not even compile).
|
|
411
|
+
* `T extends Jsonable` is also incorrect since `Jsonable` is just `any` and thus applies no constraint at all.
|
|
412
|
+
*
|
|
413
|
+
* The optional 'TReplaced' parameter may be used to permit additional leaf types to support
|
|
414
|
+
* situations where a `replacer` is used to handle special values (e.g., `Jsonable<{ x: IFluidHandle }, IFluidHandle>`).
|
|
415
|
+
*
|
|
416
|
+
* Note that `Jsonable<T>` does not protect against the following pitfalls when serializing with JSON.stringify():
|
|
417
|
+
*
|
|
418
|
+
* - `undefined` properties on objects are omitted (i.e., properties become undefined instead of equal to undefined).
|
|
419
|
+
*
|
|
420
|
+
* - When `undefined` appears as the root object or as an array element it is coerced to `null`.
|
|
421
|
+
*
|
|
422
|
+
* - Non-finite numbers (`NaN`, `+/-Infinity`) are also coerced to `null`.
|
|
423
|
+
*
|
|
424
|
+
* - prototypes and non-enumerable properties are lost.
|
|
425
|
+
*
|
|
426
|
+
* Also, `Jsonable<T>` does not prevent the construction of circular references.
|
|
427
|
+
*
|
|
428
|
+
* Using `Jsonable` (with no type parameters) or `Jsonable<any>` is just a type alias for `any`
|
|
429
|
+
* and should not be used if type safety is desired.
|
|
430
|
+
*
|
|
431
|
+
* @example Typical usage
|
|
432
|
+
*
|
|
433
|
+
* ```typescript
|
|
434
|
+
* function foo<T>(value: Jsonable<T>) { ... }
|
|
435
|
+
* ```
|
|
436
|
+
* @alpha
|
|
437
|
+
*/
|
|
438
|
+
export declare type Jsonable<T = any, TReplaced = void> = T extends undefined | null | boolean | number | string | TReplaced ? T : Extract<T, Function> extends never ? {
|
|
439
|
+
[K in keyof T]: Extract<K, symbol> extends never ? Jsonable<T[K], TReplaced> : never;
|
|
440
|
+
} : never;
|
|
400
441
|
|
|
401
|
-
|
|
442
|
+
/**
|
|
443
|
+
* Used to constrain a type 'T' to types that Fluid can intrinsically serialize. Produces a
|
|
444
|
+
* compile-time error if `T` contains non-serializable members.
|
|
445
|
+
*
|
|
446
|
+
* @remarks
|
|
447
|
+
* See Jsonable for caveats regarding serialization of `undefined`, non-finite numbers,
|
|
448
|
+
* and circular references.
|
|
449
|
+
*
|
|
450
|
+
* Important: `T extends Serializable<T>` is generally incorrect.
|
|
451
|
+
* (Any value of `T` extends the serializable subset of itself.)
|
|
452
|
+
*
|
|
453
|
+
* @example Typical usage
|
|
454
|
+
*
|
|
455
|
+
* ```typescript
|
|
456
|
+
* function serialize<T>(value: Serializable<T>) { ... }
|
|
457
|
+
* ```
|
|
458
|
+
* @alpha
|
|
459
|
+
*/
|
|
460
|
+
export declare type Serializable<T = any> = Jsonable<T, IFluidHandle>;
|
|
402
461
|
|
|
403
462
|
export { }
|
|
@@ -5,9 +5,31 @@
|
|
|
5
5
|
* @packageDocumentation
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
+
import { AttachState } from '@fluidframework/container-definitions';
|
|
9
|
+
import { FluidObject } from '@fluidframework/core-interfaces';
|
|
10
|
+
import { IAudience } from '@fluidframework/container-definitions';
|
|
11
|
+
import { IDeltaManager } from '@fluidframework/container-definitions';
|
|
12
|
+
import { IDisposable } from '@fluidframework/core-interfaces';
|
|
8
13
|
import { IDocumentMessage } from '@fluidframework/protocol-definitions';
|
|
14
|
+
import { IEvent } from '@fluidframework/core-interfaces';
|
|
15
|
+
import { IEventProvider } from '@fluidframework/core-interfaces';
|
|
16
|
+
import { IExperimentalIncrementalSummaryContext } from '@fluidframework/runtime-definitions';
|
|
17
|
+
import { IFluidHandle } from '@fluidframework/core-interfaces';
|
|
18
|
+
import { IFluidHandleContext } from '@fluidframework/core-interfaces';
|
|
19
|
+
import { IFluidLoadable } from '@fluidframework/core-interfaces';
|
|
20
|
+
import { IFluidRouter } from '@fluidframework/core-interfaces';
|
|
21
|
+
import { IGarbageCollectionData } from '@fluidframework/runtime-definitions';
|
|
22
|
+
import { IIdCompressor } from '@fluidframework/id-compressor';
|
|
23
|
+
import { IInboundSignalMessage } from '@fluidframework/runtime-definitions';
|
|
24
|
+
import { ILoaderOptions } from '@fluidframework/container-definitions';
|
|
25
|
+
import { IProvideFluidDataStoreRegistry } from '@fluidframework/runtime-definitions';
|
|
9
26
|
import { IQuorumClients } from '@fluidframework/protocol-definitions';
|
|
27
|
+
import { IRequest } from '@fluidframework/core-interfaces';
|
|
28
|
+
import { IResponse } from '@fluidframework/core-interfaces';
|
|
10
29
|
import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
|
|
30
|
+
import { ISummaryTreeWithStats } from '@fluidframework/runtime-definitions';
|
|
31
|
+
import { ITelemetryContext } from '@fluidframework/runtime-definitions';
|
|
32
|
+
import { ITelemetryLogger } from '@fluidframework/core-interfaces';
|
|
11
33
|
|
|
12
34
|
/* Excluded from this release type: AttachState */
|
|
13
35
|
|
|
@@ -5,9 +5,31 @@
|
|
|
5
5
|
* @packageDocumentation
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
+
import { AttachState } from '@fluidframework/container-definitions';
|
|
9
|
+
import { FluidObject } from '@fluidframework/core-interfaces';
|
|
10
|
+
import { IAudience } from '@fluidframework/container-definitions';
|
|
11
|
+
import { IDeltaManager } from '@fluidframework/container-definitions';
|
|
12
|
+
import { IDisposable } from '@fluidframework/core-interfaces';
|
|
8
13
|
import { IDocumentMessage } from '@fluidframework/protocol-definitions';
|
|
14
|
+
import { IEvent } from '@fluidframework/core-interfaces';
|
|
15
|
+
import { IEventProvider } from '@fluidframework/core-interfaces';
|
|
16
|
+
import { IExperimentalIncrementalSummaryContext } from '@fluidframework/runtime-definitions';
|
|
17
|
+
import { IFluidHandle } from '@fluidframework/core-interfaces';
|
|
18
|
+
import { IFluidHandleContext } from '@fluidframework/core-interfaces';
|
|
19
|
+
import { IFluidLoadable } from '@fluidframework/core-interfaces';
|
|
20
|
+
import { IFluidRouter } from '@fluidframework/core-interfaces';
|
|
21
|
+
import { IGarbageCollectionData } from '@fluidframework/runtime-definitions';
|
|
22
|
+
import { IIdCompressor } from '@fluidframework/id-compressor';
|
|
23
|
+
import { IInboundSignalMessage } from '@fluidframework/runtime-definitions';
|
|
24
|
+
import { ILoaderOptions } from '@fluidframework/container-definitions';
|
|
25
|
+
import { IProvideFluidDataStoreRegistry } from '@fluidframework/runtime-definitions';
|
|
9
26
|
import { IQuorumClients } from '@fluidframework/protocol-definitions';
|
|
27
|
+
import { IRequest } from '@fluidframework/core-interfaces';
|
|
28
|
+
import { IResponse } from '@fluidframework/core-interfaces';
|
|
10
29
|
import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
|
|
30
|
+
import { ISummaryTreeWithStats } from '@fluidframework/runtime-definitions';
|
|
31
|
+
import { ITelemetryContext } from '@fluidframework/runtime-definitions';
|
|
32
|
+
import { ITelemetryLogger } from '@fluidframework/core-interfaces';
|
|
11
33
|
|
|
12
34
|
/* Excluded from this release type: AttachState */
|
|
13
35
|
|
|
@@ -19,7 +19,7 @@ import { IFluidHandleContext } from '@fluidframework/core-interfaces';
|
|
|
19
19
|
import { IFluidLoadable } from '@fluidframework/core-interfaces';
|
|
20
20
|
import { IFluidRouter } from '@fluidframework/core-interfaces';
|
|
21
21
|
import { IGarbageCollectionData } from '@fluidframework/runtime-definitions';
|
|
22
|
-
import { IIdCompressor } from '@fluidframework/
|
|
22
|
+
import { IIdCompressor } from '@fluidframework/id-compressor';
|
|
23
23
|
import { IInboundSignalMessage } from '@fluidframework/runtime-definitions';
|
|
24
24
|
import { ILoaderOptions } from '@fluidframework/container-definitions';
|
|
25
25
|
import { IProvideFluidDataStoreRegistry } from '@fluidframework/runtime-definitions';
|
|
@@ -433,7 +433,7 @@ export declare interface IFluidDataStoreRuntimeEvents extends IEvent {
|
|
|
433
433
|
* ```typescript
|
|
434
434
|
* function foo<T>(value: Jsonable<T>) { ... }
|
|
435
435
|
* ```
|
|
436
|
-
* @
|
|
436
|
+
* @alpha
|
|
437
437
|
*/
|
|
438
438
|
export declare type Jsonable<T = any, TReplaced = void> = T extends undefined | null | boolean | number | string | TReplaced ? T : Extract<T, Function> extends never ? {
|
|
439
439
|
[K in keyof T]: Extract<K, symbol> extends never ? Jsonable<T[K], TReplaced> : never;
|
|
@@ -455,7 +455,7 @@ export declare type Jsonable<T = any, TReplaced = void> = T extends undefined |
|
|
|
455
455
|
* ```typescript
|
|
456
456
|
* function serialize<T>(value: Serializable<T>) { ... }
|
|
457
457
|
* ```
|
|
458
|
-
* @
|
|
458
|
+
* @alpha
|
|
459
459
|
*/
|
|
460
460
|
export declare type Serializable<T = any> = Jsonable<T, IFluidHandle>;
|
|
461
461
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluidframework/datastore-definitions",
|
|
3
|
-
"version": "2.0.0-dev.7.4.0.
|
|
3
|
+
"version": "2.0.0-dev.7.4.0.221926",
|
|
4
4
|
"description": "Fluid data store definitions",
|
|
5
5
|
"homepage": "https://fluidframework.com",
|
|
6
6
|
"repository": {
|
|
@@ -14,12 +14,14 @@
|
|
|
14
14
|
"main": "dist/index.js",
|
|
15
15
|
"types": "dist/index.d.ts",
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@fluidframework/container-definitions": "2.0.0-dev.7.4.0.
|
|
18
|
-
"@fluidframework/core-interfaces": "2.0.0-dev.7.4.0.
|
|
17
|
+
"@fluidframework/container-definitions": "2.0.0-dev.7.4.0.221926",
|
|
18
|
+
"@fluidframework/core-interfaces": "2.0.0-dev.7.4.0.221926",
|
|
19
|
+
"@fluidframework/id-compressor": "2.0.0-dev.7.4.0.221926",
|
|
19
20
|
"@fluidframework/protocol-definitions": "^3.0.0",
|
|
20
|
-
"@fluidframework/runtime-definitions": "2.0.0-dev.7.4.0.
|
|
21
|
+
"@fluidframework/runtime-definitions": "2.0.0-dev.7.4.0.221926"
|
|
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",
|
|
@@ -55,6 +57,7 @@
|
|
|
55
57
|
"build:compile": "fluid-build . --task compile",
|
|
56
58
|
"build:docs": "fluid-build . --task api",
|
|
57
59
|
"build:test": "tsc --project ./src/test/tsconfig.json",
|
|
60
|
+
"check:are-the-types-wrong": "attw --pack",
|
|
58
61
|
"check:release-tags": "api-extractor run --local --config ./api-extractor-lint.json",
|
|
59
62
|
"ci:build:docs": "api-extractor run",
|
|
60
63
|
"clean": "rimraf --glob dist \"**/*.tsbuildinfo\" \"**/*.build.log\" _api-extractor-temp",
|
package/src/dataStoreRuntime.ts
CHANGED
|
@@ -28,10 +28,10 @@ import {
|
|
|
28
28
|
ISequencedDocumentMessage,
|
|
29
29
|
} from "@fluidframework/protocol-definitions";
|
|
30
30
|
import {
|
|
31
|
-
IIdCompressor,
|
|
32
31
|
IInboundSignalMessage,
|
|
33
32
|
IProvideFluidDataStoreRegistry,
|
|
34
33
|
} from "@fluidframework/runtime-definitions";
|
|
34
|
+
import { IIdCompressor } from "@fluidframework/id-compressor";
|
|
35
35
|
import { IChannel } from ".";
|
|
36
36
|
|
|
37
37
|
/**
|
package/src/jsonable.ts
CHANGED