fluid-framework 2.10.0-305357 → 2.10.0-307060

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.
@@ -5,9 +5,9 @@
5
5
  ```ts
6
6
 
7
7
  // @alpha
8
- export function adaptEnum<TScope extends string, const TEnum extends Record<string, string | number>>(factory: SchemaFactory<TScope>, members: TEnum): (<TValue extends TEnum[keyof TEnum]>(value: TValue) => TreeNode & {
8
+ export function adaptEnum<TScope extends string, const TEnum extends Record<string, string | number>>(factory: SchemaFactory<TScope>, members: TEnum): (<TValue extends TEnum[keyof TEnum]>(value: TValue) => TValue extends unknown ? TreeNode & {
9
9
  readonly value: TValue;
10
- }) & { readonly [Property in keyof TEnum]: TreeNodeSchemaClass<ScopedSchemaName<TScope, TEnum[Property]>, NodeKind.Object, TreeNode & {
10
+ } : never) & { readonly [Property in keyof TEnum]: TreeNodeSchemaClass<ScopedSchemaName<TScope, TEnum[Property]>, NodeKind.Object, TreeNode & {
11
11
  readonly value: TEnum[Property];
12
12
  }, Record<string, never>, true, Record<string, never>, undefined>; } & {
13
13
  readonly schema: UnionToTuple<{ readonly [Property in keyof TEnum]: TreeNodeSchemaClass<ScopedSchemaName<TScope, TEnum[Property]>, NodeKind.Object, TreeNode & {
@@ -114,14 +114,14 @@ export interface EncodeOptions<TCustom> {
114
114
  }
115
115
 
116
116
  // @alpha
117
- export function enumFromStrings<TScope extends string, const Members extends readonly string[]>(factory: SchemaFactory<TScope>, members: Members): (<TValue extends Members[number]>(value: TValue) => TreeNode & {
117
+ export function enumFromStrings<TScope extends string, const Members extends readonly string[]>(factory: SchemaFactory<TScope>, members: Members): (<TValue extends Members[number]>(value: TValue) => TValue extends unknown ? TreeNode & {
118
118
  readonly value: TValue;
119
- }) & Record<Members[number], TreeNodeSchemaClass<ScopedSchemaName<TScope, Members[number]>, NodeKind.Object, TreeNode & {
120
- readonly value: Members[number];
121
- }, Record<string, never>, true, Record<string, never>, undefined>> & {
122
- readonly schema: UnionToTuple<Record<Members[number], TreeNodeSchemaClass<ScopedSchemaName<TScope, Members[number]>, NodeKind.Object, TreeNode & {
123
- readonly value: Members[number];
124
- }, Record<string, never>, true, Record<string, never>, undefined>>[Members[number]]>;
119
+ } : never) & { [Index in Extract<keyof Members, `${number}`> extends `${infer N extends number}` ? N : never as Members[Index]]: TreeNodeSchemaClass<ScopedSchemaName<TScope, Members[Index]>, NodeKind.Object, TreeNode & {
120
+ readonly value: Members[Index];
121
+ }, Record<string, never>, true, Record<string, never>, undefined>; } & {
122
+ readonly schema: UnionToTuple<Members[number] extends unknown ? { [Index in Extract<keyof Members, `${number}`> extends `${infer N extends number}` ? N : never as Members[Index]]: TreeNodeSchemaClass<ScopedSchemaName<TScope, Members[Index]>, NodeKind.Object, TreeNode & {
123
+ readonly value: Members[Index];
124
+ }, Record<string, never>, true, Record<string, never>, undefined>; }[Members[number]] : never>;
125
125
  };
126
126
 
127
127
  // @public @sealed
@@ -757,6 +757,7 @@ export type LazyItem<Item = unknown> = Item | (() => Item);
757
757
 
758
758
  // @public @sealed
759
759
  export interface Listenable<TListeners extends object> {
760
+ off<K extends keyof Listeners<TListeners>>(eventName: K, listener: TListeners[K]): void;
760
761
  on<K extends keyof Listeners<TListeners>>(eventName: K, listener: TListeners[K]): Off;
761
762
  }
762
763
 
@@ -930,7 +931,8 @@ export interface SchemaCompatibilityStatus {
930
931
 
931
932
  // @public @sealed
932
933
  export class SchemaFactory<out TScope extends string | undefined = string | undefined, TName extends number | string = string> {
933
- constructor(scope: TScope);
934
+ constructor(
935
+ scope: TScope);
934
936
  array<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchemaNonClass<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T, undefined>;
935
937
  array<const Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T, undefined>;
936
938
  arrayRecursive<const Name extends TName, const T extends Unenforced<ImplicitAllowedTypes>>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNodeUnsafe<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array, unknown>, {
@@ -946,6 +948,8 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
946
948
  string,
947
949
  InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
948
950
  ]>;
951
+ } | {
952
+ readonly [x: string]: InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>;
949
953
  }, false, T, undefined>;
950
954
  readonly null: TreeNodeSchemaNonClass<"com.fluidframework.leaf.null", NodeKind.Leaf, null, null, true, unknown, never>;
951
955
  readonly number: TreeNodeSchemaNonClass<"com.fluidframework.leaf.number", NodeKind.Leaf, number, number, true, unknown, never>;
@@ -955,7 +959,6 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
955
959
  optionalRecursive<const T extends Unenforced<ImplicitAllowedTypes>>(t: T, props?: Omit<FieldProps, "defaultProvider">): FieldSchemaUnsafe<FieldKind.Optional, T>;
956
960
  required<const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">): FieldSchema<FieldKind.Required, T, TCustomMetadata>;
957
961
  requiredRecursive<const T extends Unenforced<ImplicitAllowedTypes>>(t: T, props?: Omit<FieldProps, "defaultProvider">): FieldSchemaUnsafe<FieldKind.Required, T>;
958
- // (undocumented)
959
962
  readonly scope: TScope;
960
963
  readonly string: TreeNodeSchemaNonClass<"com.fluidframework.leaf.string", NodeKind.Leaf, string, string, true, unknown, never>;
961
964
  }
@@ -562,6 +562,7 @@ export type LazyItem<Item = unknown> = Item | (() => Item);
562
562
 
563
563
  // @public @sealed
564
564
  export interface Listenable<TListeners extends object> {
565
+ off<K extends keyof Listeners<TListeners>>(eventName: K, listener: TListeners[K]): void;
565
566
  on<K extends keyof Listeners<TListeners>>(eventName: K, listener: TListeners[K]): Off;
566
567
  }
567
568
 
@@ -715,7 +716,8 @@ export interface SchemaCompatibilityStatus {
715
716
 
716
717
  // @public @sealed
717
718
  export class SchemaFactory<out TScope extends string | undefined = string | undefined, TName extends number | string = string> {
718
- constructor(scope: TScope);
719
+ constructor(
720
+ scope: TScope);
719
721
  array<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchemaNonClass<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T, undefined>;
720
722
  array<const Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T, undefined>;
721
723
  arrayRecursive<const Name extends TName, const T extends Unenforced<ImplicitAllowedTypes>>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNodeUnsafe<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array, unknown>, {
@@ -731,6 +733,8 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
731
733
  string,
732
734
  InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
733
735
  ]>;
736
+ } | {
737
+ readonly [x: string]: InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>;
734
738
  }, false, T, undefined>;
735
739
  readonly null: TreeNodeSchemaNonClass<"com.fluidframework.leaf.null", NodeKind.Leaf, null, null, true, unknown, never>;
736
740
  readonly number: TreeNodeSchemaNonClass<"com.fluidframework.leaf.number", NodeKind.Leaf, number, number, true, unknown, never>;
@@ -740,7 +744,6 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
740
744
  optionalRecursive<const T extends Unenforced<ImplicitAllowedTypes>>(t: T, props?: Omit<FieldProps, "defaultProvider">): FieldSchemaUnsafe<FieldKind.Optional, T>;
741
745
  required<const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">): FieldSchema<FieldKind.Required, T, TCustomMetadata>;
742
746
  requiredRecursive<const T extends Unenforced<ImplicitAllowedTypes>>(t: T, props?: Omit<FieldProps, "defaultProvider">): FieldSchemaUnsafe<FieldKind.Required, T>;
743
- // (undocumented)
744
747
  readonly scope: TScope;
745
748
  readonly string: TreeNodeSchemaNonClass<"com.fluidframework.leaf.string", NodeKind.Leaf, string, string, true, unknown, never>;
746
749
  }
@@ -864,6 +864,7 @@ export type LazyItem<Item = unknown> = Item | (() => Item);
864
864
 
865
865
  // @public @sealed
866
866
  export interface Listenable<TListeners extends object> {
867
+ off<K extends keyof Listeners<TListeners>>(eventName: K, listener: TListeners[K]): void;
867
868
  on<K extends keyof Listeners<TListeners>>(eventName: K, listener: TListeners[K]): Off;
868
869
  }
869
870
 
@@ -1012,7 +1013,8 @@ export interface SchemaCompatibilityStatus {
1012
1013
 
1013
1014
  // @public @sealed
1014
1015
  export class SchemaFactory<out TScope extends string | undefined = string | undefined, TName extends number | string = string> {
1015
- constructor(scope: TScope);
1016
+ constructor(
1017
+ scope: TScope);
1016
1018
  array<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchemaNonClass<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T, undefined>;
1017
1019
  array<const Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T, undefined>;
1018
1020
  arrayRecursive<const Name extends TName, const T extends Unenforced<ImplicitAllowedTypes>>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNodeUnsafe<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array, unknown>, {
@@ -1028,6 +1030,8 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
1028
1030
  string,
1029
1031
  InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
1030
1032
  ]>;
1033
+ } | {
1034
+ readonly [x: string]: InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>;
1031
1035
  }, false, T, undefined>;
1032
1036
  readonly null: TreeNodeSchemaNonClass<"com.fluidframework.leaf.null", NodeKind.Leaf, null, null, true, unknown, never>;
1033
1037
  readonly number: TreeNodeSchemaNonClass<"com.fluidframework.leaf.number", NodeKind.Leaf, number, number, true, unknown, never>;
@@ -1037,7 +1041,6 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
1037
1041
  optionalRecursive<const T extends Unenforced<ImplicitAllowedTypes>>(t: T, props?: Omit<FieldProps, "defaultProvider">): FieldSchemaUnsafe<FieldKind.Optional, T>;
1038
1042
  required<const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">): FieldSchema<FieldKind.Required, T, TCustomMetadata>;
1039
1043
  requiredRecursive<const T extends Unenforced<ImplicitAllowedTypes>>(t: T, props?: Omit<FieldProps, "defaultProvider">): FieldSchemaUnsafe<FieldKind.Required, T>;
1040
- // (undocumented)
1041
1044
  readonly scope: TScope;
1042
1045
  readonly string: TreeNodeSchemaNonClass<"com.fluidframework.leaf.string", NodeKind.Leaf, string, string, true, unknown, never>;
1043
1046
  }
@@ -598,6 +598,7 @@ export type LazyItem<Item = unknown> = Item | (() => Item);
598
598
 
599
599
  // @public @sealed
600
600
  export interface Listenable<TListeners extends object> {
601
+ off<K extends keyof Listeners<TListeners>>(eventName: K, listener: TListeners[K]): void;
601
602
  on<K extends keyof Listeners<TListeners>>(eventName: K, listener: TListeners[K]): Off;
602
603
  }
603
604
 
@@ -746,7 +747,8 @@ export interface SchemaCompatibilityStatus {
746
747
 
747
748
  // @public @sealed
748
749
  export class SchemaFactory<out TScope extends string | undefined = string | undefined, TName extends number | string = string> {
749
- constructor(scope: TScope);
750
+ constructor(
751
+ scope: TScope);
750
752
  array<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchemaNonClass<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T, undefined>;
751
753
  array<const Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T, undefined>;
752
754
  arrayRecursive<const Name extends TName, const T extends Unenforced<ImplicitAllowedTypes>>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNodeUnsafe<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array, unknown>, {
@@ -762,6 +764,8 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
762
764
  string,
763
765
  InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
764
766
  ]>;
767
+ } | {
768
+ readonly [x: string]: InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>;
765
769
  }, false, T, undefined>;
766
770
  readonly null: TreeNodeSchemaNonClass<"com.fluidframework.leaf.null", NodeKind.Leaf, null, null, true, unknown, never>;
767
771
  readonly number: TreeNodeSchemaNonClass<"com.fluidframework.leaf.number", NodeKind.Leaf, number, number, true, unknown, never>;
@@ -771,7 +775,6 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
771
775
  optionalRecursive<const T extends Unenforced<ImplicitAllowedTypes>>(t: T, props?: Omit<FieldProps, "defaultProvider">): FieldSchemaUnsafe<FieldKind.Optional, T>;
772
776
  required<const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">): FieldSchema<FieldKind.Required, T, TCustomMetadata>;
773
777
  requiredRecursive<const T extends Unenforced<ImplicitAllowedTypes>>(t: T, props?: Omit<FieldProps, "defaultProvider">): FieldSchemaUnsafe<FieldKind.Required, T>;
774
- // (undocumented)
775
778
  readonly scope: TScope;
776
779
  readonly string: TreeNodeSchemaNonClass<"com.fluidframework.leaf.string", NodeKind.Leaf, string, string, true, unknown, never>;
777
780
  }
@@ -562,6 +562,7 @@ export type LazyItem<Item = unknown> = Item | (() => Item);
562
562
 
563
563
  // @public @sealed
564
564
  export interface Listenable<TListeners extends object> {
565
+ off<K extends keyof Listeners<TListeners>>(eventName: K, listener: TListeners[K]): void;
565
566
  on<K extends keyof Listeners<TListeners>>(eventName: K, listener: TListeners[K]): Off;
566
567
  }
567
568
 
@@ -710,7 +711,8 @@ export interface SchemaCompatibilityStatus {
710
711
 
711
712
  // @public @sealed
712
713
  export class SchemaFactory<out TScope extends string | undefined = string | undefined, TName extends number | string = string> {
713
- constructor(scope: TScope);
714
+ constructor(
715
+ scope: TScope);
714
716
  array<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchemaNonClass<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T, undefined>;
715
717
  array<const Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T, undefined>;
716
718
  arrayRecursive<const Name extends TName, const T extends Unenforced<ImplicitAllowedTypes>>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNodeUnsafe<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array, unknown>, {
@@ -726,6 +728,8 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
726
728
  string,
727
729
  InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
728
730
  ]>;
731
+ } | {
732
+ readonly [x: string]: InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>;
729
733
  }, false, T, undefined>;
730
734
  readonly null: TreeNodeSchemaNonClass<"com.fluidframework.leaf.null", NodeKind.Leaf, null, null, true, unknown, never>;
731
735
  readonly number: TreeNodeSchemaNonClass<"com.fluidframework.leaf.number", NodeKind.Leaf, number, number, true, unknown, never>;
@@ -735,7 +739,6 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
735
739
  optionalRecursive<const T extends Unenforced<ImplicitAllowedTypes>>(t: T, props?: Omit<FieldProps, "defaultProvider">): FieldSchemaUnsafe<FieldKind.Optional, T>;
736
740
  required<const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">): FieldSchema<FieldKind.Required, T, TCustomMetadata>;
737
741
  requiredRecursive<const T extends Unenforced<ImplicitAllowedTypes>>(t: T, props?: Omit<FieldProps, "defaultProvider">): FieldSchemaUnsafe<FieldKind.Required, T>;
738
- // (undocumented)
739
742
  readonly scope: TScope;
740
743
  readonly string: TreeNodeSchemaNonClass<"com.fluidframework.leaf.string", NodeKind.Leaf, string, string, true, unknown, never>;
741
744
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fluid-framework",
3
- "version": "2.10.0-305357",
3
+ "version": "2.10.0-307060",
4
4
  "description": "The main entry point into Fluid Framework public packages",
5
5
  "homepage": "https://fluidframework.com",
6
6
  "repository": {
@@ -57,16 +57,16 @@
57
57
  "main": "lib/index.js",
58
58
  "types": "lib/public.d.ts",
59
59
  "dependencies": {
60
- "@fluidframework/container-definitions": "2.10.0-305357",
61
- "@fluidframework/container-loader": "2.10.0-305357",
62
- "@fluidframework/core-interfaces": "2.10.0-305357",
63
- "@fluidframework/driver-definitions": "2.10.0-305357",
64
- "@fluidframework/fluid-static": "2.10.0-305357",
65
- "@fluidframework/map": "2.10.0-305357",
66
- "@fluidframework/runtime-utils": "2.10.0-305357",
67
- "@fluidframework/sequence": "2.10.0-305357",
68
- "@fluidframework/shared-object-base": "2.10.0-305357",
69
- "@fluidframework/tree": "2.10.0-305357"
60
+ "@fluidframework/container-definitions": "2.10.0-307060",
61
+ "@fluidframework/container-loader": "2.10.0-307060",
62
+ "@fluidframework/core-interfaces": "2.10.0-307060",
63
+ "@fluidframework/driver-definitions": "2.10.0-307060",
64
+ "@fluidframework/fluid-static": "2.10.0-307060",
65
+ "@fluidframework/map": "2.10.0-307060",
66
+ "@fluidframework/runtime-utils": "2.10.0-307060",
67
+ "@fluidframework/sequence": "2.10.0-307060",
68
+ "@fluidframework/shared-object-base": "2.10.0-307060",
69
+ "@fluidframework/tree": "2.10.0-307060"
70
70
  },
71
71
  "devDependencies": {
72
72
  "@arethetypeswrong/cli": "^0.16.4",