@aws-amplify/data-schema 1.20.5 → 1.21.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.
@@ -4,7 +4,7 @@ export type ModelIndexData = {
4
4
  partitionKey: string;
5
5
  sortKeys: readonly unknown[];
6
6
  indexName: string;
7
- queryField: string;
7
+ queryField: string | null;
8
8
  };
9
9
  export type InternalModelIndexType = ModelIndexType<any, any, any, any> & {
10
10
  data: ModelIndexData;
@@ -12,7 +12,7 @@ export type InternalModelIndexType = ModelIndexType<any, any, any, any> & {
12
12
  export type ModelIndexType<ModelFieldKeys extends string, PK, SK = readonly [], QueryField = never, K extends keyof ModelIndexType<any, any, any, any> = never> = Omit<{
13
13
  sortKeys<FieldKeys extends ModelFieldKeys = ModelFieldKeys, const SK extends ReadonlyArray<Exclude<FieldKeys, PK>> = readonly []>(sortKeys: SK): ModelIndexType<FieldKeys, PK, SK, QueryField, K | 'sortKeys'>;
14
14
  name(name: string): ModelIndexType<ModelFieldKeys, PK, SK, QueryField, K | 'name'>;
15
- queryField<QF extends string = never, MF extends ModelFieldKeys = ModelFieldKeys>(field: QF): ModelIndexType<MF, PK, SK, QF, K | 'queryField'>;
15
+ queryField<QF extends string | null = never, MF extends ModelFieldKeys = ModelFieldKeys>(field: QF): ModelIndexType<MF, PK, SK, QF, K | 'queryField'>;
16
16
  }, K> & Brand<typeof brandName>;
17
17
  export declare function modelIndex<ModelFieldKeys extends string, PK extends ModelFieldKeys, SK = readonly [], QueryField = never>(partitionKeyFieldName: PK): ModelIndexType<ModelFieldKeys, PK, SK, QueryField, never>;
18
18
  export {};
@@ -740,7 +740,7 @@ const transformedSecondaryIndexesForModel = (modelName, secondaryIndexes, modelF
740
740
  }
741
741
  }
742
742
  }
743
- if (!sortKeys.length && !indexName && !queryField) {
743
+ if (!sortKeys.length && !indexName && !queryField && queryField !== null) {
744
744
  return `@index(queryField: "${secondaryIndexDefaultQueryField(modelName, partitionKey)}")`;
745
745
  }
746
746
  const attributes = [];
@@ -750,7 +750,10 @@ const transformedSecondaryIndexesForModel = (modelName, secondaryIndexes, modelF
750
750
  if (sortKeys.length) {
751
751
  attributes.push(`sortKeyFields: [${sortKeys.map((sk) => `"${sk}"`).join(', ')}]`);
752
752
  }
753
- if (queryField) {
753
+ if (queryField === null) {
754
+ attributes.push(`queryField: null`);
755
+ }
756
+ else if (queryField) {
754
757
  attributes.push(`queryField: "${queryField}"`);
755
758
  }
756
759
  else {