@fluidframework/map 2.0.0-internal.7.3.0 → 2.0.0-internal.7.4.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.
Files changed (61) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/api-extractor-lint.json +13 -0
  3. package/api-extractor.json +8 -3
  4. package/api-report/map.api.md +42 -44
  5. package/dist/directory.cjs +221 -35
  6. package/dist/directory.cjs.map +1 -1
  7. package/dist/directory.d.ts +499 -38
  8. package/dist/directory.d.ts.map +1 -1
  9. package/dist/interfaces.cjs.map +1 -1
  10. package/dist/interfaces.d.ts +10 -20
  11. package/dist/interfaces.d.ts.map +1 -1
  12. package/dist/localValues.cjs +1 -2
  13. package/dist/localValues.cjs.map +1 -1
  14. package/dist/localValues.d.ts +2 -4
  15. package/dist/localValues.d.ts.map +1 -1
  16. package/dist/map-alpha.d.ts +97 -68
  17. package/dist/map-beta.d.ts +59 -890
  18. package/dist/map-public.d.ts +59 -890
  19. package/dist/map-untrimmed.d.ts +28 -70
  20. package/dist/map.cjs +2 -10
  21. package/dist/map.cjs.map +1 -1
  22. package/dist/map.d.ts +2 -10
  23. package/dist/map.d.ts.map +1 -1
  24. package/dist/packageVersion.cjs +1 -1
  25. package/dist/packageVersion.cjs.map +1 -1
  26. package/dist/packageVersion.d.ts +1 -1
  27. package/lib/directory.d.ts +499 -38
  28. package/lib/directory.d.ts.map +1 -1
  29. package/lib/directory.mjs +221 -35
  30. package/lib/directory.mjs.map +1 -1
  31. package/lib/index.d.ts +4 -15
  32. package/lib/index.d.ts.map +1 -1
  33. package/lib/interfaces.d.ts +10 -20
  34. package/lib/interfaces.d.ts.map +1 -1
  35. package/lib/interfaces.mjs.map +1 -1
  36. package/lib/internalInterfaces.d.ts +2 -2
  37. package/lib/internalInterfaces.d.ts.map +1 -1
  38. package/lib/localValues.d.ts +3 -5
  39. package/lib/localValues.d.ts.map +1 -1
  40. package/lib/localValues.mjs +1 -2
  41. package/lib/localValues.mjs.map +1 -1
  42. package/lib/map-alpha.d.ts +97 -68
  43. package/lib/map-beta.d.ts +59 -890
  44. package/lib/map-public.d.ts +59 -890
  45. package/lib/map-untrimmed.d.ts +28 -70
  46. package/lib/map.d.ts +3 -11
  47. package/lib/map.d.ts.map +1 -1
  48. package/lib/map.mjs +2 -10
  49. package/lib/map.mjs.map +1 -1
  50. package/lib/mapKernel.d.ts +2 -2
  51. package/lib/mapKernel.d.ts.map +1 -1
  52. package/lib/packageVersion.d.ts +1 -1
  53. package/lib/packageVersion.mjs +1 -1
  54. package/lib/packageVersion.mjs.map +1 -1
  55. package/map.test-files.tar +0 -0
  56. package/package.json +22 -18
  57. package/src/directory.ts +275 -58
  58. package/src/interfaces.ts +10 -20
  59. package/src/localValues.ts +2 -4
  60. package/src/map.ts +2 -10
  61. package/src/packageVersion.ts +1 -1
@@ -32,7 +32,7 @@ import { SharedObject } from '@fluidframework/shared-object-base';
32
32
  * {@link @fluidframework/datastore-definitions#IChannelFactory} for {@link SharedDirectory}.
33
33
  *
34
34
  * @sealed
35
- * @public
35
+ * @alpha
36
36
  */
37
37
  export declare class DirectoryFactory implements IChannelFactory {
38
38
  /**
@@ -63,8 +63,7 @@ export declare class DirectoryFactory implements IChannelFactory {
63
63
 
64
64
  /**
65
65
  * Create info for the subdirectory.
66
- *
67
- * @public
66
+ * @alpha
68
67
  */
69
68
  export declare interface ICreateInfo {
70
69
  /**
@@ -81,8 +80,7 @@ export declare interface ICreateInfo {
81
80
  * Interface describing actions on a directory.
82
81
  *
83
82
  * @remarks When used as a Map, operates on its keys.
84
- *
85
- * @public
83
+ * @alpha
86
84
  */
87
85
  export declare interface IDirectory extends Map<string, any>, IEventProvider<IDirectoryEvents>, Partial<IDisposable> {
88
86
  /**
@@ -147,8 +145,7 @@ export declare interface IDirectory extends Map<string, any>, IEventProvider<IDi
147
145
 
148
146
  /**
149
147
  * Operation indicating the directory should be cleared.
150
- *
151
- * @public
148
+ * @alpha
152
149
  */
153
150
  export declare interface IDirectoryClearOperation {
154
151
  /**
@@ -163,8 +160,7 @@ export declare interface IDirectoryClearOperation {
163
160
 
164
161
  /**
165
162
  * Operation indicating a subdirectory should be created.
166
- *
167
- * @public
163
+ * @alpha
168
164
  */
169
165
  export declare interface IDirectoryCreateSubDirectoryOperation {
170
166
  /**
@@ -188,8 +184,7 @@ export declare interface IDirectoryCreateSubDirectoryOperation {
188
184
  * {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify
189
185
  * | JSON.stringify}, direct result from
190
186
  * {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse | JSON.parse}.
191
- *
192
- * @public
187
+ * @alpha
193
188
  */
194
189
  export declare interface IDirectoryDataObject {
195
190
  /**
@@ -216,8 +211,7 @@ export declare interface IDirectoryDataObject {
216
211
 
217
212
  /**
218
213
  * Operation indicating a key should be deleted from the directory.
219
- *
220
- * @public
214
+ * @alpha
221
215
  */
222
216
  export declare interface IDirectoryDeleteOperation {
223
217
  /**
@@ -236,8 +230,7 @@ export declare interface IDirectoryDeleteOperation {
236
230
 
237
231
  /**
238
232
  * Operation indicating a subdirectory should be deleted.
239
- *
240
- * @public
233
+ * @alpha
241
234
  */
242
235
  export declare interface IDirectoryDeleteSubDirectoryOperation {
243
236
  /**
@@ -256,8 +249,7 @@ export declare interface IDirectoryDeleteSubDirectoryOperation {
256
249
 
257
250
  /**
258
251
  * Events emitted in response to changes to the directory data.
259
- *
260
- * @public
252
+ * @alpha
261
253
  */
262
254
  export declare interface IDirectoryEvents extends IEvent {
263
255
  /**
@@ -323,8 +315,7 @@ export declare interface IDirectoryEvents extends IEvent {
323
315
 
324
316
  /**
325
317
  * An operation on a specific key within a directory.
326
- *
327
- * @public
318
+ * @alpha
328
319
  */
329
320
  export declare type IDirectoryKeyOperation = IDirectorySetOperation | IDirectoryDeleteOperation;
330
321
 
@@ -332,15 +323,13 @@ export declare type IDirectoryKeyOperation = IDirectorySetOperation | IDirectory
332
323
 
333
324
  /**
334
325
  * Any operation on a directory.
335
- *
336
- * @public
326
+ * @alpha
337
327
  */
338
328
  export declare type IDirectoryOperation = IDirectoryStorageOperation | IDirectorySubDirectoryOperation;
339
329
 
340
330
  /**
341
331
  * Operation indicating a value should be set for a key.
342
- *
343
- * @public
332
+ * @alpha
344
333
  */
345
334
  export declare interface IDirectorySetOperation {
346
335
  /**
@@ -363,22 +352,19 @@ export declare interface IDirectorySetOperation {
363
352
 
364
353
  /**
365
354
  * An operation on one or more of the keys within a directory.
366
- *
367
- * @public
355
+ * @alpha
368
356
  */
369
357
  export declare type IDirectoryStorageOperation = IDirectoryKeyOperation | IDirectoryClearOperation;
370
358
 
371
359
  /**
372
360
  * An operation on the subdirectories within a directory.
373
- *
374
- * @public
361
+ * @alpha
375
362
  */
376
363
  export declare type IDirectorySubDirectoryOperation = IDirectoryCreateSubDirectoryOperation | IDirectoryDeleteSubDirectoryOperation;
377
364
 
378
365
  /**
379
366
  * Type of "valueChanged" event parameter for {@link ISharedDirectory}.
380
- *
381
- * @public
367
+ * @alpha
382
368
  */
383
369
  export declare interface IDirectoryValueChanged extends IValueChanged {
384
370
  /**
@@ -389,8 +375,7 @@ export declare interface IDirectoryValueChanged extends IValueChanged {
389
375
 
390
376
  /**
391
377
  * A local value to be stored in a container type Distributed Data Store (DDS).
392
- *
393
- * @public
378
+ * @alpha
394
379
  */
395
380
  export declare interface ILocalValue {
396
381
  /**
@@ -432,8 +417,7 @@ export declare interface ILocalValue {
432
417
  * channel ID.
433
418
  *
434
419
  * @deprecated This type is legacy and deprecated.
435
- *
436
- * @public
420
+ * @alpha
437
421
  */
438
422
  export declare interface ISerializableValue {
439
423
  /**
@@ -448,8 +432,7 @@ export declare interface ISerializableValue {
448
432
 
449
433
  /**
450
434
  * Serialized {@link ISerializableValue} counterpart.
451
- *
452
- * @public
435
+ * @alpha
453
436
  */
454
437
  export declare interface ISerializedValue {
455
438
  /**
@@ -468,8 +451,7 @@ export declare interface ISerializedValue {
468
451
  * Provides a hierarchical organization of map-like data structures as SubDirectories.
469
452
  * The values stored within can be accessed like a map, and the hierarchy can be navigated using path syntax.
470
453
  * SubDirectories can be retrieved for use as working directories.
471
- *
472
- * @public
454
+ * @alpha
473
455
  */
474
456
  export declare interface ISharedDirectory extends ISharedObject<ISharedDirectoryEvents & IDirectoryEvents>, Omit<IDirectory, "on" | "once" | "off"> {
475
457
  [Symbol.iterator](): IterableIterator<[string, any]>;
@@ -481,8 +463,7 @@ export declare interface ISharedDirectory extends ISharedObject<ISharedDirectory
481
463
  *
482
464
  * @remarks
483
465
  * These events only emit on the {@link ISharedDirectory} itself, and not on subdirectories.
484
- *
485
- * @public
466
+ * @alpha
486
467
  */
487
468
  export declare interface ISharedDirectoryEvents extends ISharedObjectEvents {
488
469
  /**
@@ -545,8 +526,7 @@ export declare interface ISharedDirectoryEvents extends ISharedObjectEvents {
545
526
  * {@link @fluidframework/datastore#FluidObjectHandle}.
546
527
  *
547
528
  * For more information, including example usages, see {@link https://fluidframework.com/docs/data-structures/map/}.
548
- *
549
- * @public
529
+ * @alpha
550
530
  */
551
531
  export declare interface ISharedMap extends ISharedObject<ISharedMapEvents>, Map<string, any> {
552
532
  /**
@@ -566,8 +546,7 @@ export declare interface ISharedMap extends ISharedObject<ISharedMapEvents>, Map
566
546
 
567
547
  /**
568
548
  * Events emitted in response to changes to the {@link ISharedMap | map} data.
569
- *
570
- * @public
549
+ * @alpha
571
550
  */
572
551
  export declare interface ISharedMapEvents extends ISharedObjectEvents {
573
552
  /**
@@ -596,8 +575,7 @@ export declare interface ISharedMapEvents extends ISharedObjectEvents {
596
575
 
597
576
  /**
598
577
  * Type of "valueChanged" event parameter.
599
- *
600
- * @public
578
+ * @alpha
601
579
  */
602
580
  export declare interface IValueChanged {
603
581
  /**
@@ -613,8 +591,7 @@ export declare interface IValueChanged {
613
591
  /**
614
592
  * Enables a container type {@link https://fluidframework.com/docs/build/dds/ | DDS} to produce and store local
615
593
  * values with minimal awareness of how those objects are stored, serialized, and deserialized.
616
- *
617
- * @public
594
+ * @alpha
618
595
  */
619
596
  export declare class LocalValueMaker {
620
597
  private readonly serializer;
@@ -640,7 +617,7 @@ export declare class LocalValueMaker {
640
617
  * {@link @fluidframework/datastore-definitions#IChannelFactory} for {@link SharedMap}.
641
618
  *
642
619
  * @sealed
643
- * @public
620
+ * @alpha
644
621
  */
645
622
  export declare class MapFactory implements IChannelFactory {
646
623
  /**
@@ -681,7 +658,7 @@ export declare class MapFactory implements IChannelFactory {
681
658
  * ```
682
659
  *
683
660
  * @sealed
684
- * @public
661
+ * @alpha
685
662
  */
686
663
  export declare class SharedDirectory extends SharedObject<ISharedDirectoryEvents> implements ISharedDirectory {
687
664
  /**
@@ -706,7 +683,8 @@ export declare class SharedDirectory extends SharedObject<ISharedDirectoryEvents
706
683
  * {@inheritDoc IDirectory.absolutePath}
707
684
  */
708
685
  get absolutePath(): string;
709
- /* Excluded from this release type: localValueMaker */
686
+ /***/
687
+ readonly localValueMaker: LocalValueMaker;
710
688
  /**
711
689
  * Root of the SharedDirectory, most operations on the SharedDirectory itself act on the root.
712
690
  */
@@ -806,14 +784,42 @@ export declare class SharedDirectory extends SharedObject<ISharedDirectoryEvents
806
784
  * {@inheritDoc IDirectory.getWorkingDirectory}
807
785
  */
808
786
  getWorkingDirectory(relativePath: string): IDirectory | undefined;
809
- /* Excluded from this release type: summarizeCore */
810
- /* Excluded from this release type: submitDirectoryMessage */
811
- /* Excluded from this release type: onDisconnect */
812
- /* Excluded from this release type: reSubmitCore */
813
- /* Excluded from this release type: loadCore */
814
- /* Excluded from this release type: populate */
815
- /* Excluded from this release type: processCore */
816
- /* Excluded from this release type: rollback */
787
+ /**
788
+ * {@inheritDoc @fluidframework/shared-object-base#SharedObject.summarizeCore}
789
+ */
790
+ protected summarizeCore(serializer: IFluidSerializer, telemetryContext?: ITelemetryContext): ISummaryTreeWithStats;
791
+ /**
792
+ * Submits an operation
793
+ * @param op - Op to submit
794
+ * @param localOpMetadata - The local metadata associated with the op. We send a unique id that is used to track
795
+ * this op while it has not been ack'd. This will be sent when we receive this op back from the server.
796
+ */
797
+ submitDirectoryMessage(op: IDirectoryOperation, localOpMetadata: unknown): void;
798
+ /**
799
+ * {@inheritDoc @fluidframework/shared-object-base#SharedObject.onDisconnect}
800
+ */
801
+ protected onDisconnect(): void;
802
+ /**
803
+ * {@inheritDoc @fluidframework/shared-object-base#SharedObject.reSubmitCore}
804
+ */
805
+ protected reSubmitCore(content: unknown, localOpMetadata: unknown): void;
806
+ /**
807
+ * {@inheritDoc @fluidframework/shared-object-base#SharedObject.loadCore}
808
+ */
809
+ protected loadCore(storage: IChannelStorageService): Promise<void>;
810
+ /**
811
+ * Populate the directory with the given directory data.
812
+ * @param data - A JSON string containing serialized directory data
813
+ */
814
+ protected populate(data: IDirectoryDataObject): void;
815
+ /**
816
+ * {@inheritDoc @fluidframework/shared-object-base#SharedObject.processCore}
817
+ */
818
+ protected processCore(message: ISequencedDocumentMessage, local: boolean, localOpMetadata: unknown): void;
819
+ /**
820
+ * {@inheritDoc @fluidframework/shared-object-base#SharedObject.rollback}
821
+ */
822
+ protected rollback(content: unknown, localOpMetadata: unknown): void;
817
823
  /**
818
824
  * Converts the given relative path to absolute against the root.
819
825
  * @param relativePath - The path to convert
@@ -840,14 +846,16 @@ export declare class SharedDirectory extends SharedObject<ISharedDirectoryEvents
840
846
  * Set the message handlers for the directory.
841
847
  */
842
848
  private setMessageHandlers;
843
- /* Excluded from this release type: applyStashedOp */
849
+ /**
850
+ * {@inheritDoc @fluidframework/shared-object-base#SharedObjectCore.applyStashedOp}
851
+ */
852
+ protected applyStashedOp(op: unknown): unknown;
844
853
  private serializeDirectory;
845
854
  }
846
855
 
847
856
  /**
848
857
  * {@inheritDoc ISharedMap}
849
- *
850
- * @public
858
+ * @alpha
851
859
  */
852
860
  export declare class SharedMap extends SharedObject<ISharedMapEvents> implements ISharedMap {
853
861
  /**
@@ -938,13 +946,34 @@ export declare class SharedMap extends SharedObject<ISharedMapEvents> implements
938
946
  * Clear all data from the map.
939
947
  */
940
948
  clear(): void;
941
- /* Excluded from this release type: summarizeCore */
942
- /* Excluded from this release type: loadCore */
943
- /* Excluded from this release type: onDisconnect */
944
- /* Excluded from this release type: reSubmitCore */
945
- /* Excluded from this release type: applyStashedOp */
946
- /* Excluded from this release type: processCore */
947
- /* Excluded from this release type: rollback */
949
+ /**
950
+ * {@inheritDoc @fluidframework/shared-object-base#SharedObject.summarizeCore}
951
+ */
952
+ protected summarizeCore(serializer: IFluidSerializer, telemetryContext?: ITelemetryContext): ISummaryTreeWithStats;
953
+ /**
954
+ * {@inheritDoc @fluidframework/shared-object-base#SharedObject.loadCore}
955
+ */
956
+ protected loadCore(storage: IChannelStorageService): Promise<void>;
957
+ /**
958
+ * {@inheritDoc @fluidframework/shared-object-base#SharedObject.onDisconnect}
959
+ */
960
+ protected onDisconnect(): void;
961
+ /**
962
+ * {@inheritDoc @fluidframework/shared-object-base#SharedObject.reSubmitCore}
963
+ */
964
+ protected reSubmitCore(content: unknown, localOpMetadata: unknown): void;
965
+ /**
966
+ * {@inheritDoc @fluidframework/shared-object-base#SharedObjectCore.applyStashedOp}
967
+ */
968
+ protected applyStashedOp(content: unknown): unknown;
969
+ /**
970
+ * {@inheritDoc @fluidframework/shared-object-base#SharedObject.processCore}
971
+ */
972
+ protected processCore(message: ISequencedDocumentMessage, local: boolean, localOpMetadata: unknown): void;
973
+ /**
974
+ * {@inheritDoc @fluidframework/shared-object-base#SharedObject.rollback}
975
+ */
976
+ protected rollback(content: unknown, localOpMetadata: unknown): void;
948
977
  }
949
978
 
950
979
  export { }