@fluidframework/runtime-definitions 2.0.0-rc.1.0.6 → 2.0.0-rc.2.0.1
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.cjs +1 -1
- package/CHANGELOG.md +75 -0
- package/api-extractor-cjs.json +8 -0
- package/api-extractor-lint.json +1 -1
- package/api-extractor.json +1 -1
- package/api-report/runtime-definitions.api.md +98 -112
- package/dist/dataStoreContext.d.ts +110 -64
- package/dist/dataStoreContext.d.ts.map +1 -1
- package/dist/dataStoreContext.js +3 -0
- package/dist/dataStoreContext.js.map +1 -1
- package/dist/dataStoreFactory.d.ts +1 -1
- package/dist/dataStoreFactory.d.ts.map +1 -1
- package/dist/dataStoreFactory.js.map +1 -1
- package/dist/dataStoreRegistry.d.ts +1 -1
- package/dist/dataStoreRegistry.d.ts.map +1 -1
- package/dist/dataStoreRegistry.js.map +1 -1
- package/dist/{garbageCollection.d.ts → garbageCollectionDefinitions.d.ts} +1 -1
- package/dist/garbageCollectionDefinitions.d.ts.map +1 -0
- package/dist/{garbageCollection.js → garbageCollectionDefinitions.js} +1 -1
- package/dist/garbageCollectionDefinitions.js.map +1 -0
- package/dist/index.d.ts +12 -52
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -27
- package/dist/index.js.map +1 -1
- package/dist/package.json +3 -0
- package/dist/protocol.d.ts +2 -1
- package/dist/protocol.d.ts.map +1 -1
- package/dist/protocol.js.map +1 -1
- package/dist/runtime-definitions-alpha.d.ts +184 -175
- package/dist/runtime-definitions-beta.d.ts +35 -57
- package/dist/runtime-definitions-public.d.ts +35 -57
- package/dist/runtime-definitions-untrimmed.d.ts +185 -175
- package/dist/summary.d.ts +15 -20
- package/dist/summary.d.ts.map +1 -1
- package/dist/summary.js.map +1 -1
- package/dist/tsdoc-metadata.json +1 -1
- package/lib/attribution.d.ts +71 -0
- package/lib/attribution.d.ts.map +1 -0
- package/lib/attribution.js +6 -0
- package/lib/attribution.js.map +1 -0
- package/lib/dataStoreContext.d.ts +469 -0
- package/lib/dataStoreContext.d.ts.map +1 -0
- package/lib/dataStoreContext.js +67 -0
- package/lib/dataStoreContext.js.map +1 -0
- package/lib/dataStoreFactory.d.ts +33 -0
- package/lib/dataStoreFactory.d.ts.map +1 -0
- package/lib/dataStoreFactory.js +9 -0
- package/lib/dataStoreFactory.js.map +1 -0
- package/lib/dataStoreRegistry.d.ts +41 -0
- package/lib/dataStoreRegistry.d.ts.map +1 -0
- package/lib/dataStoreRegistry.js +9 -0
- package/lib/dataStoreRegistry.js.map +1 -0
- package/lib/garbageCollectionDefinitions.d.ts +62 -0
- package/lib/garbageCollectionDefinitions.d.ts.map +1 -0
- package/lib/garbageCollectionDefinitions.js +35 -0
- package/lib/garbageCollectionDefinitions.js.map +1 -0
- package/lib/index.d.ts +17 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +10 -0
- package/lib/index.js.map +1 -0
- package/lib/protocol.d.ts +77 -0
- package/lib/protocol.d.ts.map +1 -0
- package/lib/protocol.js +6 -0
- package/lib/protocol.js.map +1 -0
- package/lib/runtime-definitions-alpha.d.ts +1025 -0
- package/lib/runtime-definitions-beta.d.ts +244 -0
- package/lib/runtime-definitions-public.d.ts +244 -0
- package/lib/runtime-definitions-untrimmed.d.ts +1106 -0
- package/lib/summary.d.ts +322 -0
- package/lib/summary.d.ts.map +1 -0
- package/lib/summary.js +26 -0
- package/lib/summary.js.map +1 -0
- package/package.json +111 -34
- package/src/dataStoreContext.ts +133 -80
- package/src/dataStoreFactory.ts +1 -1
- package/src/dataStoreRegistry.ts +1 -1
- package/src/index.ts +25 -70
- package/src/protocol.ts +2 -1
- package/src/summary.ts +18 -20
- package/tsconfig.cjs.json +7 -0
- package/tsconfig.json +2 -5
- package/dist/garbageCollection.d.ts.map +0 -1
- package/dist/garbageCollection.js.map +0 -1
- /package/src/{garbageCollection.ts → garbageCollectionDefinitions.ts} +0 -0
|
@@ -1,39 +1,28 @@
|
|
|
1
|
-
import { AttachState } from '@fluidframework/container-definitions';
|
|
2
|
-
import { FluidObject } from '@fluidframework/core-interfaces';
|
|
3
|
-
import { IAudience } from '@fluidframework/container-definitions';
|
|
4
|
-
import { IClientDetails } from '@fluidframework/protocol-definitions';
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import { ISnapshotTree } from '@fluidframework/protocol-definitions';
|
|
24
|
-
import { ISummaryTree } from '@fluidframework/protocol-definitions';
|
|
25
|
-
import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
|
|
26
|
-
import { ITree } from '@fluidframework/protocol-definitions';
|
|
1
|
+
import type { AttachState } from '@fluidframework/container-definitions';
|
|
2
|
+
import type { FluidObject } from '@fluidframework/core-interfaces';
|
|
3
|
+
import type { IAudience } from '@fluidframework/container-definitions';
|
|
4
|
+
import type { IClientDetails } from '@fluidframework/protocol-definitions';
|
|
5
|
+
import type { IDeltaManager } from '@fluidframework/container-definitions';
|
|
6
|
+
import type { IDisposable } from '@fluidframework/core-interfaces';
|
|
7
|
+
import type { IDocumentMessage } from '@fluidframework/protocol-definitions';
|
|
8
|
+
import type { IDocumentStorageService } from '@fluidframework/driver-definitions';
|
|
9
|
+
import type { IEvent } from '@fluidframework/core-interfaces';
|
|
10
|
+
import type { IEventProvider } from '@fluidframework/core-interfaces';
|
|
11
|
+
import type { IFluidHandle } from '@fluidframework/core-interfaces';
|
|
12
|
+
import type { IIdCompressor } from '@fluidframework/id-compressor';
|
|
13
|
+
import type { IProvideFluidHandleContext } from '@fluidframework/core-interfaces';
|
|
14
|
+
import type { IQuorumClients } from '@fluidframework/protocol-definitions';
|
|
15
|
+
import type { IRequest } from '@fluidframework/core-interfaces';
|
|
16
|
+
import type { IResponse } from '@fluidframework/core-interfaces';
|
|
17
|
+
import type { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
|
|
18
|
+
import type { ISignalMessage } from '@fluidframework/protocol-definitions';
|
|
19
|
+
import type { ISnapshotTree } from '@fluidframework/protocol-definitions';
|
|
20
|
+
import type { ISummaryTree } from '@fluidframework/protocol-definitions';
|
|
21
|
+
import type { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
|
|
22
|
+
import type { ITree } from '@fluidframework/protocol-definitions';
|
|
27
23
|
import type { IUser } from '@fluidframework/protocol-definitions';
|
|
28
|
-
import {
|
|
29
|
-
import {
|
|
30
|
-
import { SerializedIdCompressorWithNoSession } from '@fluidframework/id-compressor';
|
|
31
|
-
import { SerializedIdCompressorWithOngoingSession } from '@fluidframework/id-compressor';
|
|
32
|
-
import { SessionId } from '@fluidframework/id-compressor';
|
|
33
|
-
import { SessionSpaceCompressedId } from '@fluidframework/id-compressor';
|
|
34
|
-
import { StableId } from '@fluidframework/id-compressor';
|
|
35
|
-
import { SummaryTree } from '@fluidframework/protocol-definitions';
|
|
36
|
-
import { TelemetryEventPropertyType } from '@fluidframework/core-interfaces';
|
|
24
|
+
import type { SummaryTree } from '@fluidframework/protocol-definitions';
|
|
25
|
+
import type { TelemetryBaseEventPropertyType } from '@fluidframework/core-interfaces';
|
|
37
26
|
|
|
38
27
|
/**
|
|
39
28
|
* Encapsulates the return codes of the aliasing API.
|
|
@@ -145,6 +134,9 @@ export declare type FluidDataStoreRegistryEntry = Readonly<Partial<IProvideFluid
|
|
|
145
134
|
export declare enum FlushMode {
|
|
146
135
|
/**
|
|
147
136
|
* In Immediate flush mode the runtime will immediately send all operations to the driver layer.
|
|
137
|
+
*
|
|
138
|
+
* @deprecated This option will be removed in the next major version and should not be used. Use {@link FlushMode.TurnBased} instead, which is the default.
|
|
139
|
+
* See https://github.com/microsoft/FluidFramework/tree/main/packages/runtime/container-runtime/src/opLifecycle#how-batching-works
|
|
148
140
|
*/
|
|
149
141
|
Immediate = 0,
|
|
150
142
|
/**
|
|
@@ -233,6 +225,7 @@ export declare interface IAttachMessage {
|
|
|
233
225
|
export declare interface IContainerRuntimeBase extends IEventProvider<IContainerRuntimeBaseEvents> {
|
|
234
226
|
readonly logger: ITelemetryBaseLogger;
|
|
235
227
|
readonly clientDetails: IClientDetails;
|
|
228
|
+
readonly disposed: boolean;
|
|
236
229
|
/**
|
|
237
230
|
* Invokes the given callback and guarantees that all operations generated within the callback will be ordered
|
|
238
231
|
* sequentially.
|
|
@@ -244,12 +237,13 @@ export declare interface IContainerRuntimeBase extends IEventProvider<IContainer
|
|
|
244
237
|
* Submits a container runtime level signal to be sent to other clients.
|
|
245
238
|
* @param type - Type of the signal.
|
|
246
239
|
* @param content - Content of the signal.
|
|
240
|
+
* @param targetClientId - When specified, the signal is only sent to the provided client id.
|
|
247
241
|
*/
|
|
248
|
-
submitSignal(type: string, content: any): void;
|
|
242
|
+
submitSignal(type: string, content: any, targetClientId?: string): void;
|
|
249
243
|
/**
|
|
250
244
|
* @deprecated 0.16 Issue #1537, #3631
|
|
251
245
|
*/
|
|
252
|
-
_createDataStoreWithProps(pkg: string | string[]
|
|
246
|
+
_createDataStoreWithProps(pkg: Readonly<string | string[]>, props?: any, id?: string): Promise<IDataStore>;
|
|
253
247
|
/**
|
|
254
248
|
* Creates a data store and returns an object that exposes a handle to the data store's entryPoint, and also serves
|
|
255
249
|
* as the data store's router. The data store is not bound to a container, and in such state is not persisted to
|
|
@@ -257,13 +251,20 @@ export declare interface IContainerRuntimeBase extends IEventProvider<IContainer
|
|
|
257
251
|
* already attached DDS (or non-attached DDS that will eventually get attached to storage) will result in this
|
|
258
252
|
* store being attached to storage.
|
|
259
253
|
* @param pkg - Package name of the data store factory
|
|
254
|
+
* @param loadingGroupId - This represents the group of the datastore within a container or its snapshot.
|
|
255
|
+
* When not specified the datastore will belong to a `default` group. Read more about it in this
|
|
256
|
+
* {@link https://github.com/microsoft/FluidFramework/blob/main/packages/runtime/container-runtime/README.md | README}
|
|
260
257
|
*/
|
|
261
|
-
createDataStore(pkg: string | string[]): Promise<IDataStore>;
|
|
258
|
+
createDataStore(pkg: Readonly<string | string[]>, loadingGroupId?: string): Promise<IDataStore>;
|
|
262
259
|
/**
|
|
263
260
|
* Creates detached data store context. Only after context.attachRuntime() is called,
|
|
264
261
|
* data store initialization is considered complete.
|
|
262
|
+
* @param pkg - Package name of the data store factory
|
|
263
|
+
* @param loadingGroupId - This represents the group of the datastore within a container or its snapshot.
|
|
264
|
+
* When not specified the datastore will belong to a `default` group. Read more about it in this
|
|
265
|
+
* {@link https://github.com/microsoft/FluidFramework/blob/main/packages/runtime/container-runtime/README.md | README}.
|
|
265
266
|
*/
|
|
266
|
-
createDetachedDataStore(pkg: Readonly<string[]
|
|
267
|
+
createDetachedDataStore(pkg: Readonly<string[]>, loadingGroupId?: string): IFluidDataStoreContextDetached;
|
|
267
268
|
/**
|
|
268
269
|
* Get an absolute url for a provided container-relative request.
|
|
269
270
|
* Returns undefined if the container or data store isn't attached to storage.
|
|
@@ -279,6 +280,28 @@ export declare interface IContainerRuntimeBase extends IEventProvider<IContainer
|
|
|
279
280
|
* Returns the current audience.
|
|
280
281
|
*/
|
|
281
282
|
getAudience(): IAudience;
|
|
283
|
+
/**
|
|
284
|
+
* Generates a new ID that is guaranteed to be unique across all sessions for this container.
|
|
285
|
+
* It could be in compact form (non-negative integer, oppotunistic), but it could also be UUID string.
|
|
286
|
+
* UUIDs generated will have low entropy in groups and will compress well.
|
|
287
|
+
* It can be leveraged anywhere in container where container unique IDs are required, i.e. any place
|
|
288
|
+
* that uses uuid() and stores result in container is likely candidate to start leveraging this API.
|
|
289
|
+
* If you always want to convert to string, instead of doing String(generateDocumentUniqueId()), consider
|
|
290
|
+
* doing encodeCompactIdToString(generateDocumentUniqueId()).
|
|
291
|
+
*
|
|
292
|
+
* For more details, please see IIdCompressor.generateDocumentUniqueId()
|
|
293
|
+
*/
|
|
294
|
+
generateDocumentUniqueId(): number | string;
|
|
295
|
+
/**
|
|
296
|
+
* Api to fetch the snapshot from the service for a loadingGroupIds.
|
|
297
|
+
* @param loadingGroupIds - LoadingGroupId for which the snapshot is asked for.
|
|
298
|
+
* @param pathParts - Parts of the path, which we want to extract from the snapshot tree.
|
|
299
|
+
* @returns - snapshotTree and the sequence number of the snapshot.
|
|
300
|
+
*/
|
|
301
|
+
getSnapshotForLoadingGroupId(loadingGroupIds: string[], pathParts: string[]): Promise<{
|
|
302
|
+
snapshotTree: ISnapshotTree;
|
|
303
|
+
sequenceNumber: number;
|
|
304
|
+
}>;
|
|
282
305
|
}
|
|
283
306
|
|
|
284
307
|
/**
|
|
@@ -293,6 +316,7 @@ export declare interface IContainerRuntimeBaseEvents extends IEvent {
|
|
|
293
316
|
(event: "op", listener: (op: ISequencedDocumentMessage, runtimeMessage?: boolean) => void): any;
|
|
294
317
|
(event: "batchEnd", listener: (error: any, op: ISequencedDocumentMessage) => void): any;
|
|
295
318
|
(event: "signal", listener: (message: IInboundSignalMessage, local: boolean) => void): any;
|
|
319
|
+
(event: "dispose", listener: () => void): any;
|
|
296
320
|
}
|
|
297
321
|
|
|
298
322
|
/**
|
|
@@ -319,10 +343,6 @@ export declare interface IDataStore {
|
|
|
319
343
|
readonly entryPoint: IFluidHandle<FluidObject>;
|
|
320
344
|
}
|
|
321
345
|
|
|
322
|
-
export { IdCompressor }
|
|
323
|
-
|
|
324
|
-
export { IdCreationRange }
|
|
325
|
-
|
|
326
346
|
/**
|
|
327
347
|
* An envelope wraps the contents with the intended target
|
|
328
348
|
* @alpha
|
|
@@ -373,17 +393,6 @@ export declare interface IExperimentalIncrementalSummaryContext {
|
|
|
373
393
|
* @alpha
|
|
374
394
|
*/
|
|
375
395
|
export declare interface IFluidDataStoreChannel extends IDisposable {
|
|
376
|
-
readonly id: string;
|
|
377
|
-
/**
|
|
378
|
-
* Indicates the attachment state of the channel to a host service.
|
|
379
|
-
*/
|
|
380
|
-
readonly attachState: AttachState;
|
|
381
|
-
readonly visibilityState: VisibilityState;
|
|
382
|
-
/**
|
|
383
|
-
* Runs through the graph and attaches the bound handles. Then binds this runtime to the container.
|
|
384
|
-
* @deprecated This will be removed in favor of {@link IFluidDataStoreChannel.makeVisibleAndAttachGraph}.
|
|
385
|
-
*/
|
|
386
|
-
attachGraph(): void;
|
|
387
396
|
/**
|
|
388
397
|
* Makes the data store channel visible in the container. Also, runs through its graph and attaches all
|
|
389
398
|
* bound handles that represent its dependencies in the container's graph.
|
|
@@ -400,11 +409,11 @@ export declare interface IFluidDataStoreChannel extends IDisposable {
|
|
|
400
409
|
/**
|
|
401
410
|
* Processes the op.
|
|
402
411
|
*/
|
|
403
|
-
process(message: ISequencedDocumentMessage, local: boolean, localOpMetadata: unknown): void;
|
|
412
|
+
process(message: ISequencedDocumentMessage, local: boolean, localOpMetadata: unknown, addedOutboundReference?: (fromNodePath: string, toNodePath: string) => void): void;
|
|
404
413
|
/**
|
|
405
414
|
* Processes the signal.
|
|
406
415
|
*/
|
|
407
|
-
processSignal(message:
|
|
416
|
+
processSignal(message: IInboundSignalMessage, local: boolean): void;
|
|
408
417
|
/**
|
|
409
418
|
* Generates a summary for the channel.
|
|
410
419
|
* Introduced with summarizerNode - will be required in a future release.
|
|
@@ -459,7 +468,7 @@ export declare interface IFluidDataStoreChannel extends IDisposable {
|
|
|
459
468
|
* get information and call functionality to the container.
|
|
460
469
|
* @alpha
|
|
461
470
|
*/
|
|
462
|
-
export declare interface IFluidDataStoreContext extends IEventProvider<IFluidDataStoreContextEvents>,
|
|
471
|
+
export declare interface IFluidDataStoreContext extends IEventProvider<IFluidDataStoreContextEvents>, IFluidParentContext {
|
|
463
472
|
readonly id: string;
|
|
464
473
|
/**
|
|
465
474
|
* A data store created by a client, is a local data store for that client. Also, when a detached container loads
|
|
@@ -474,28 +483,122 @@ export declare interface IFluidDataStoreContext extends IEventProvider<IFluidDat
|
|
|
474
483
|
* The package path of the data store as per the package factory.
|
|
475
484
|
*/
|
|
476
485
|
readonly packagePath: readonly string[];
|
|
477
|
-
readonly
|
|
486
|
+
readonly baseSnapshot: ISnapshotTree | undefined;
|
|
487
|
+
/**
|
|
488
|
+
* @deprecated 0.16 Issue #1635, #3631
|
|
489
|
+
*/
|
|
490
|
+
readonly createProps?: any;
|
|
491
|
+
/**
|
|
492
|
+
* Call by IFluidDataStoreChannel, indicates that a channel is dirty and needs to be part of the summary.
|
|
493
|
+
* @param address - The address of the channel that is dirty.
|
|
494
|
+
*/
|
|
495
|
+
setChannelDirty(address: string): void;
|
|
496
|
+
/**
|
|
497
|
+
* @deprecated The functionality to get base GC details has been moved to summarizer node.
|
|
498
|
+
*
|
|
499
|
+
* Returns the GC details in the initial summary of this data store. This is used to initialize the data store
|
|
500
|
+
* and its children with the GC details from the previous summary.
|
|
501
|
+
*/
|
|
502
|
+
getBaseGCDetails(): Promise<IGarbageCollectionDetailsBase>;
|
|
503
|
+
/**
|
|
504
|
+
* (Same as @see addedGCOutboundReference, but with string paths instead of handles)
|
|
505
|
+
*
|
|
506
|
+
* Called when a new outbound reference is added to another node. This is used by garbage collection to identify
|
|
507
|
+
* all references added in the system.
|
|
508
|
+
*
|
|
509
|
+
* @param fromPath - The absolute path of the node that added the reference.
|
|
510
|
+
* @param toPath - The absolute path of the outbound node that is referenced.
|
|
511
|
+
*/
|
|
512
|
+
addedGCOutboundRoute?(fromPath: string, toPath: string): void;
|
|
513
|
+
}
|
|
514
|
+
|
|
515
|
+
/**
|
|
516
|
+
* @alpha
|
|
517
|
+
*/
|
|
518
|
+
export declare interface IFluidDataStoreContextDetached extends IFluidDataStoreContext {
|
|
519
|
+
/**
|
|
520
|
+
* Binds a runtime to the context.
|
|
521
|
+
*/
|
|
522
|
+
attachRuntime(factory: IProvideFluidDataStoreFactory, dataStoreRuntime: IFluidDataStoreChannel): Promise<IDataStore>;
|
|
523
|
+
}
|
|
524
|
+
|
|
525
|
+
/**
|
|
526
|
+
* @alpha
|
|
527
|
+
*/
|
|
528
|
+
export declare interface IFluidDataStoreContextEvents extends IEvent {
|
|
529
|
+
(event: "attaching" | "attached", listener: () => void): any;
|
|
530
|
+
}
|
|
531
|
+
|
|
532
|
+
/**
|
|
533
|
+
* @alpha
|
|
534
|
+
*/
|
|
535
|
+
export declare const IFluidDataStoreFactory: keyof IProvideFluidDataStoreFactory;
|
|
536
|
+
|
|
537
|
+
/**
|
|
538
|
+
* IFluidDataStoreFactory create data stores. It is associated with an identifier (its `type` member)
|
|
539
|
+
* and usually provided to consumers using this mapping through a data store registry.
|
|
540
|
+
* @alpha
|
|
541
|
+
*/
|
|
542
|
+
export declare interface IFluidDataStoreFactory extends IProvideFluidDataStoreFactory {
|
|
543
|
+
/**
|
|
544
|
+
* String that uniquely identifies the type of data store created by this factory.
|
|
545
|
+
*/
|
|
546
|
+
type: string;
|
|
547
|
+
/**
|
|
548
|
+
* Generates runtime for the data store from the data store context. Once created should be bound to the context.
|
|
549
|
+
* @param context - Context for the data store.
|
|
550
|
+
* @param existing - If instantiating from an existing file.
|
|
551
|
+
*/
|
|
552
|
+
instantiateDataStore(context: IFluidDataStoreContext, existing: boolean): Promise<IFluidDataStoreChannel>;
|
|
553
|
+
}
|
|
554
|
+
|
|
555
|
+
/**
|
|
556
|
+
* @alpha
|
|
557
|
+
*/
|
|
558
|
+
export declare const IFluidDataStoreRegistry: keyof IProvideFluidDataStoreRegistry;
|
|
559
|
+
|
|
560
|
+
/**
|
|
561
|
+
* An association of identifiers to data store registry entries, where the
|
|
562
|
+
* entries can be used to create data stores.
|
|
563
|
+
* @alpha
|
|
564
|
+
*/
|
|
565
|
+
export declare interface IFluidDataStoreRegistry extends IProvideFluidDataStoreRegistry {
|
|
566
|
+
get(name: string): Promise<FluidDataStoreRegistryEntry | undefined>;
|
|
567
|
+
}
|
|
568
|
+
|
|
569
|
+
/**
|
|
570
|
+
* Represents the context for the data store like objects. It is used by the data store runtime to
|
|
571
|
+
* get information and call functionality to its parent.
|
|
572
|
+
*
|
|
573
|
+
* This layout is temporary, as {@link IFluidParentContext} and {@link IFluidDataStoreContext} will converge.
|
|
574
|
+
*
|
|
575
|
+
* @alpha
|
|
576
|
+
*/
|
|
577
|
+
export declare interface IFluidParentContext extends IProvideFluidHandleContext, Partial<IProvideFluidDataStoreRegistry> {
|
|
578
|
+
readonly options: Record<string | number, any>;
|
|
478
579
|
readonly clientId: string | undefined;
|
|
479
580
|
readonly connected: boolean;
|
|
480
581
|
readonly deltaManager: IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>;
|
|
481
582
|
readonly storage: IDocumentStorageService;
|
|
482
|
-
readonly baseSnapshot: ISnapshotTree | undefined;
|
|
483
583
|
readonly logger: ITelemetryBaseLogger;
|
|
484
584
|
readonly clientDetails: IClientDetails;
|
|
485
585
|
readonly idCompressor?: IIdCompressor;
|
|
586
|
+
/**
|
|
587
|
+
* Represents the loading group to which the data store belongs to. Please refer to this readme for more context.
|
|
588
|
+
* {@link https://github.com/microsoft/FluidFramework/blob/main/packages/runtime/container-runtime/README.md | README}
|
|
589
|
+
*/
|
|
590
|
+
readonly loadingGroupId?: string;
|
|
486
591
|
/**
|
|
487
592
|
* Indicates the attachment state of the data store to a host service.
|
|
488
593
|
*/
|
|
489
594
|
readonly attachState: AttachState;
|
|
490
595
|
readonly containerRuntime: IContainerRuntimeBase;
|
|
491
|
-
/**
|
|
492
|
-
* @deprecated 0.16 Issue #1635, #3631
|
|
493
|
-
*/
|
|
494
|
-
readonly createProps?: any;
|
|
495
596
|
/**
|
|
496
597
|
* Ambient services provided with the context
|
|
497
598
|
*/
|
|
498
599
|
readonly scope: FluidObject;
|
|
600
|
+
readonly gcThrowOnTombstoneUsage: boolean;
|
|
601
|
+
readonly gcTombstoneEnforcementAllowed: boolean;
|
|
499
602
|
/**
|
|
500
603
|
* Returns the current quorum.
|
|
501
604
|
*/
|
|
@@ -534,11 +637,6 @@ export declare interface IFluidDataStoreContext extends IEventProvider<IFluidDat
|
|
|
534
637
|
* when they are marked as root. For non-root data stores, this happens when their handle is added to a visible DDS.
|
|
535
638
|
*/
|
|
536
639
|
makeLocallyVisible(): void;
|
|
537
|
-
/**
|
|
538
|
-
* Call by IFluidDataStoreChannel, indicates that a channel is dirty and needs to be part of the summary.
|
|
539
|
-
* @param address - The address of the channel that is dirty.
|
|
540
|
-
*/
|
|
541
|
-
setChannelDirty(address: string): void;
|
|
542
640
|
/**
|
|
543
641
|
* Get an absolute url to the container based on the provided relativeUrl.
|
|
544
642
|
* Returns undefined if the container or data store isn't attached to storage.
|
|
@@ -557,14 +655,8 @@ export declare interface IFluidDataStoreContext extends IEventProvider<IFluidDat
|
|
|
557
655
|
* If it is local, it will throw unsupported errors on calls to summarize.
|
|
558
656
|
*/
|
|
559
657
|
createParam: CreateChildSummarizerNodeParam): CreateChildSummarizerNodeFn;
|
|
658
|
+
deleteChildSummarizerNode?(id: string): void;
|
|
560
659
|
uploadBlob(blob: ArrayBufferLike, signal?: AbortSignal): Promise<IFluidHandle<ArrayBufferLike>>;
|
|
561
|
-
/**
|
|
562
|
-
* @deprecated The functionality to get base GC details has been moved to summarizer node.
|
|
563
|
-
*
|
|
564
|
-
* Returns the GC details in the initial summary of this data store. This is used to initialize the data store
|
|
565
|
-
* and its children with the GC details from the previous summary.
|
|
566
|
-
*/
|
|
567
|
-
getBaseGCDetails(): Promise<IGarbageCollectionDetailsBase>;
|
|
568
660
|
/**
|
|
569
661
|
* @deprecated There is no replacement for this, its functionality is no longer needed at this layer.
|
|
570
662
|
* It will be removed in a future release, sometime after 2.0.0-internal.8.0.0
|
|
@@ -576,71 +668,11 @@ export declare interface IFluidDataStoreContext extends IEventProvider<IFluidDat
|
|
|
576
668
|
* @param srcHandle - The handle of the node that added the reference.
|
|
577
669
|
* @param outboundHandle - The handle of the outbound node that is referenced.
|
|
578
670
|
*/
|
|
579
|
-
addedGCOutboundReference?(srcHandle:
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
* all references added in the system.
|
|
585
|
-
*
|
|
586
|
-
* @param fromPath - The absolute path of the node that added the reference.
|
|
587
|
-
* @param toPath - The absolute path of the outbound node that is referenced.
|
|
588
|
-
*/
|
|
589
|
-
addedGCOutboundRoute?(fromPath: string, toPath: string): void;
|
|
590
|
-
}
|
|
591
|
-
|
|
592
|
-
/**
|
|
593
|
-
* @alpha
|
|
594
|
-
*/
|
|
595
|
-
export declare interface IFluidDataStoreContextDetached extends IFluidDataStoreContext {
|
|
596
|
-
/**
|
|
597
|
-
* Binds a runtime to the context.
|
|
598
|
-
*/
|
|
599
|
-
attachRuntime(factory: IProvideFluidDataStoreFactory, dataStoreRuntime: IFluidDataStoreChannel): Promise<void>;
|
|
600
|
-
}
|
|
601
|
-
|
|
602
|
-
/**
|
|
603
|
-
* @alpha
|
|
604
|
-
*/
|
|
605
|
-
export declare interface IFluidDataStoreContextEvents extends IEvent {
|
|
606
|
-
(event: "attaching" | "attached", listener: () => void): any;
|
|
607
|
-
}
|
|
608
|
-
|
|
609
|
-
/**
|
|
610
|
-
* @alpha
|
|
611
|
-
*/
|
|
612
|
-
export declare const IFluidDataStoreFactory: keyof IProvideFluidDataStoreFactory;
|
|
613
|
-
|
|
614
|
-
/**
|
|
615
|
-
* IFluidDataStoreFactory create data stores. It is associated with an identifier (its `type` member)
|
|
616
|
-
* and usually provided to consumers using this mapping through a data store registry.
|
|
617
|
-
* @alpha
|
|
618
|
-
*/
|
|
619
|
-
export declare interface IFluidDataStoreFactory extends IProvideFluidDataStoreFactory {
|
|
620
|
-
/**
|
|
621
|
-
* String that uniquely identifies the type of data store created by this factory.
|
|
622
|
-
*/
|
|
623
|
-
type: string;
|
|
624
|
-
/**
|
|
625
|
-
* Generates runtime for the data store from the data store context. Once created should be bound to the context.
|
|
626
|
-
* @param context - Context for the data store.
|
|
627
|
-
* @param existing - If instantiating from an existing file.
|
|
628
|
-
*/
|
|
629
|
-
instantiateDataStore(context: IFluidDataStoreContext, existing: boolean): Promise<IFluidDataStoreChannel>;
|
|
630
|
-
}
|
|
631
|
-
|
|
632
|
-
/**
|
|
633
|
-
* @alpha
|
|
634
|
-
*/
|
|
635
|
-
export declare const IFluidDataStoreRegistry: keyof IProvideFluidDataStoreRegistry;
|
|
636
|
-
|
|
637
|
-
/**
|
|
638
|
-
* An association of identifiers to data store registry entries, where the
|
|
639
|
-
* entries can be used to create data stores.
|
|
640
|
-
* @alpha
|
|
641
|
-
*/
|
|
642
|
-
export declare interface IFluidDataStoreRegistry extends IProvideFluidDataStoreRegistry {
|
|
643
|
-
get(name: string): Promise<FluidDataStoreRegistryEntry | undefined>;
|
|
671
|
+
addedGCOutboundReference?(srcHandle: {
|
|
672
|
+
absolutePath: string;
|
|
673
|
+
}, outboundHandle: {
|
|
674
|
+
absolutePath: string;
|
|
675
|
+
}): void;
|
|
644
676
|
}
|
|
645
677
|
|
|
646
678
|
/**
|
|
@@ -672,10 +704,6 @@ export declare interface IGarbageCollectionDetailsBase {
|
|
|
672
704
|
gcData?: IGarbageCollectionData;
|
|
673
705
|
}
|
|
674
706
|
|
|
675
|
-
export { IIdCompressor }
|
|
676
|
-
|
|
677
|
-
export { IIdCompressorCore }
|
|
678
|
-
|
|
679
707
|
/**
|
|
680
708
|
* Represents ISignalMessage with its type.
|
|
681
709
|
* @public
|
|
@@ -711,6 +739,7 @@ export declare interface IProvideFluidDataStoreRegistry {
|
|
|
711
739
|
|
|
712
740
|
/**
|
|
713
741
|
* @internal
|
|
742
|
+
* @deprecated - This interface is now moved to `@fluidframework/container-definitions` package. Please import from that package.
|
|
714
743
|
*/
|
|
715
744
|
export declare interface ISignalEnvelope {
|
|
716
745
|
/**
|
|
@@ -778,9 +807,6 @@ export declare interface ISummarizerNode {
|
|
|
778
807
|
invalidate(sequenceNumber: number): void;
|
|
779
808
|
/**
|
|
780
809
|
* Calls the internal summarize function and handles internal state tracking.
|
|
781
|
-
* If unchanged and fullTree is false, it will reuse previous summary subtree.
|
|
782
|
-
* If an error is encountered and throwOnFailure is false, it will try to make
|
|
783
|
-
* a summary with a pointer to the previous summary + a blob of outstanding ops.
|
|
784
810
|
* @param fullTree - true to skip optimizations and always generate the full tree
|
|
785
811
|
* @param trackState - indicates whether the summarizer node should track the state of the summary or not
|
|
786
812
|
* @param telemetryContext - summary data passed through the layers for telemetry purposes
|
|
@@ -821,7 +847,9 @@ export declare interface ISummarizerNode {
|
|
|
821
847
|
*/
|
|
822
848
|
config?: ISummarizerNodeConfig): ISummarizerNode;
|
|
823
849
|
getChild(id: string): ISummarizerNode | undefined;
|
|
824
|
-
/**
|
|
850
|
+
/**
|
|
851
|
+
* True if a summary is currently in progress
|
|
852
|
+
*/
|
|
825
853
|
isSummaryInProgress?(): boolean;
|
|
826
854
|
}
|
|
827
855
|
|
|
@@ -834,16 +862,6 @@ export declare interface ISummarizerNodeConfig {
|
|
|
834
862
|
* Defaults to true.
|
|
835
863
|
*/
|
|
836
864
|
readonly canReuseHandle?: boolean;
|
|
837
|
-
/**
|
|
838
|
-
* True to always stop execution on error during summarize, or false to
|
|
839
|
-
* attempt creating a summary that is a pointer ot the last acked summary
|
|
840
|
-
* plus outstanding ops in case of internal summarize failure.
|
|
841
|
-
* Defaults to false.
|
|
842
|
-
*
|
|
843
|
-
* BUG BUG: Default to true while we investigate problem
|
|
844
|
-
* with differential summaries
|
|
845
|
-
*/
|
|
846
|
-
readonly throwOnFailure?: true;
|
|
847
865
|
}
|
|
848
866
|
|
|
849
867
|
/**
|
|
@@ -974,24 +992,30 @@ export declare interface ITelemetryContext {
|
|
|
974
992
|
* @param property - property name of the telemetry data being tracked (ex: "DirectoryCount")
|
|
975
993
|
* @param value - value to attribute to this summary telemetry data
|
|
976
994
|
*/
|
|
977
|
-
set(prefix: string, property: string, value:
|
|
995
|
+
set(prefix: string, property: string, value: TelemetryBaseEventPropertyType): void;
|
|
978
996
|
/**
|
|
979
997
|
* Sets multiple values for telemetry data being tracked.
|
|
980
998
|
* @param prefix - unique prefix to tag this data with (ex: "fluid:summarize:")
|
|
981
999
|
* @param property - property name of the telemetry data being tracked (ex: "Options")
|
|
982
1000
|
* @param values - A set of values to attribute to this summary telemetry data.
|
|
983
1001
|
*/
|
|
984
|
-
setMultiple(prefix: string, property: string, values: Record<string,
|
|
1002
|
+
setMultiple(prefix: string, property: string, values: Record<string, TelemetryBaseEventPropertyType>): void;
|
|
985
1003
|
/**
|
|
986
1004
|
* Get the telemetry data being tracked
|
|
1005
|
+
*
|
|
1006
|
+
* @deprecated This interface should only be used for instrumenting, not for attempting to read already-set telemetry data.
|
|
1007
|
+
*
|
|
987
1008
|
* @param prefix - unique prefix for this data (ex: "fluid:map:")
|
|
988
1009
|
* @param property - property name of the telemetry data being tracked (ex: "DirectoryCount")
|
|
989
1010
|
* @returns undefined if item not found
|
|
990
1011
|
*/
|
|
991
|
-
get(prefix: string, property: string):
|
|
1012
|
+
get(prefix: string, property: string): TelemetryBaseEventPropertyType;
|
|
992
1013
|
/**
|
|
993
1014
|
* Returns a serialized version of all the telemetry data.
|
|
994
1015
|
* Should be used when logging in telemetry events.
|
|
1016
|
+
*
|
|
1017
|
+
* @deprecated This interface should only be used for instrumenting. A concrete implementation will likely have a serialize function
|
|
1018
|
+
* but this functionality should not be used by other code being given an ITelemetryContext.
|
|
995
1019
|
*/
|
|
996
1020
|
serialize(): string;
|
|
997
1021
|
}
|
|
@@ -1036,20 +1060,6 @@ export declare interface OpAttributionKey {
|
|
|
1036
1060
|
seq: number;
|
|
1037
1061
|
}
|
|
1038
1062
|
|
|
1039
|
-
export { OpSpaceCompressedId }
|
|
1040
|
-
|
|
1041
|
-
export { SerializedIdCompressor }
|
|
1042
|
-
|
|
1043
|
-
export { SerializedIdCompressorWithNoSession }
|
|
1044
|
-
|
|
1045
|
-
export { SerializedIdCompressorWithOngoingSession }
|
|
1046
|
-
|
|
1047
|
-
export { SessionId }
|
|
1048
|
-
|
|
1049
|
-
export { SessionSpaceCompressedId }
|
|
1050
|
-
|
|
1051
|
-
export { StableId }
|
|
1052
|
-
|
|
1053
1063
|
/**
|
|
1054
1064
|
* @alpha
|
|
1055
1065
|
*/
|
package/dist/summary.d.ts
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
|
-
import {
|
|
6
|
-
import { SummaryTree, ISummaryTree, ISequencedDocumentMessage, ISnapshotTree, ITree } from "@fluidframework/protocol-definitions";
|
|
7
|
-
import { IGarbageCollectionData, IGarbageCollectionDetailsBase } from "./
|
|
5
|
+
import type { TelemetryBaseEventPropertyType } from "@fluidframework/core-interfaces";
|
|
6
|
+
import type { SummaryTree, ISummaryTree, ISequencedDocumentMessage, ISnapshotTree, ITree } from "@fluidframework/protocol-definitions";
|
|
7
|
+
import type { IGarbageCollectionData, IGarbageCollectionDetailsBase } from "./garbageCollectionDefinitions.js";
|
|
8
8
|
/**
|
|
9
9
|
* Contains the aggregation data from a Tree/Subtree.
|
|
10
10
|
* @public
|
|
@@ -105,16 +105,6 @@ export interface ISummarizerNodeConfig {
|
|
|
105
105
|
* Defaults to true.
|
|
106
106
|
*/
|
|
107
107
|
readonly canReuseHandle?: boolean;
|
|
108
|
-
/**
|
|
109
|
-
* True to always stop execution on error during summarize, or false to
|
|
110
|
-
* attempt creating a summary that is a pointer ot the last acked summary
|
|
111
|
-
* plus outstanding ops in case of internal summarize failure.
|
|
112
|
-
* Defaults to false.
|
|
113
|
-
*
|
|
114
|
-
* BUG BUG: Default to true while we investigate problem
|
|
115
|
-
* with differential summaries
|
|
116
|
-
*/
|
|
117
|
-
readonly throwOnFailure?: true;
|
|
118
108
|
}
|
|
119
109
|
/**
|
|
120
110
|
* @alpha
|
|
@@ -161,9 +151,6 @@ export interface ISummarizerNode {
|
|
|
161
151
|
invalidate(sequenceNumber: number): void;
|
|
162
152
|
/**
|
|
163
153
|
* Calls the internal summarize function and handles internal state tracking.
|
|
164
|
-
* If unchanged and fullTree is false, it will reuse previous summary subtree.
|
|
165
|
-
* If an error is encountered and throwOnFailure is false, it will try to make
|
|
166
|
-
* a summary with a pointer to the previous summary + a blob of outstanding ops.
|
|
167
154
|
* @param fullTree - true to skip optimizations and always generate the full tree
|
|
168
155
|
* @param trackState - indicates whether the summarizer node should track the state of the summary or not
|
|
169
156
|
* @param telemetryContext - summary data passed through the layers for telemetry purposes
|
|
@@ -204,7 +191,9 @@ export interface ISummarizerNode {
|
|
|
204
191
|
*/
|
|
205
192
|
config?: ISummarizerNodeConfig): ISummarizerNode;
|
|
206
193
|
getChild(id: string): ISummarizerNode | undefined;
|
|
207
|
-
/**
|
|
194
|
+
/**
|
|
195
|
+
* True if a summary is currently in progress
|
|
196
|
+
*/
|
|
208
197
|
isSummaryInProgress?(): boolean;
|
|
209
198
|
}
|
|
210
199
|
/**
|
|
@@ -295,24 +284,30 @@ export interface ITelemetryContext {
|
|
|
295
284
|
* @param property - property name of the telemetry data being tracked (ex: "DirectoryCount")
|
|
296
285
|
* @param value - value to attribute to this summary telemetry data
|
|
297
286
|
*/
|
|
298
|
-
set(prefix: string, property: string, value:
|
|
287
|
+
set(prefix: string, property: string, value: TelemetryBaseEventPropertyType): void;
|
|
299
288
|
/**
|
|
300
289
|
* Sets multiple values for telemetry data being tracked.
|
|
301
290
|
* @param prefix - unique prefix to tag this data with (ex: "fluid:summarize:")
|
|
302
291
|
* @param property - property name of the telemetry data being tracked (ex: "Options")
|
|
303
292
|
* @param values - A set of values to attribute to this summary telemetry data.
|
|
304
293
|
*/
|
|
305
|
-
setMultiple(prefix: string, property: string, values: Record<string,
|
|
294
|
+
setMultiple(prefix: string, property: string, values: Record<string, TelemetryBaseEventPropertyType>): void;
|
|
306
295
|
/**
|
|
307
296
|
* Get the telemetry data being tracked
|
|
297
|
+
*
|
|
298
|
+
* @deprecated This interface should only be used for instrumenting, not for attempting to read already-set telemetry data.
|
|
299
|
+
*
|
|
308
300
|
* @param prefix - unique prefix for this data (ex: "fluid:map:")
|
|
309
301
|
* @param property - property name of the telemetry data being tracked (ex: "DirectoryCount")
|
|
310
302
|
* @returns undefined if item not found
|
|
311
303
|
*/
|
|
312
|
-
get(prefix: string, property: string):
|
|
304
|
+
get(prefix: string, property: string): TelemetryBaseEventPropertyType;
|
|
313
305
|
/**
|
|
314
306
|
* Returns a serialized version of all the telemetry data.
|
|
315
307
|
* Should be used when logging in telemetry events.
|
|
308
|
+
*
|
|
309
|
+
* @deprecated This interface should only be used for instrumenting. A concrete implementation will likely have a serialize function
|
|
310
|
+
* but this functionality should not be used by other code being given an ITelemetryContext.
|
|
316
311
|
*/
|
|
317
312
|
serialize(): string;
|
|
318
313
|
}
|
package/dist/summary.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"summary.d.ts","sourceRoot":"","sources":["../src/summary.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"summary.d.ts","sourceRoot":"","sources":["../src/summary.ts"],"names":[],"mappings":"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"}
|