@aws-amplify/data-schema 1.3.9 → 1.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.
- package/dist/cjs/ModelType.js +5 -0
- package/dist/cjs/ModelType.js.map +1 -1
- package/dist/cjs/SchemaProcessor.js +58 -1
- package/dist/cjs/SchemaProcessor.js.map +1 -1
- package/dist/cjs/runtime/addSchemaToClient.js +1 -0
- package/dist/cjs/runtime/addSchemaToClient.js.map +1 -1
- package/dist/cjs/runtime/addSchemaToClientWithInstance.js +1 -0
- package/dist/cjs/runtime/addSchemaToClientWithInstance.js.map +1 -1
- package/dist/cjs/runtime/internals/APIClient.js +63 -42
- package/dist/cjs/runtime/internals/APIClient.js.map +1 -1
- package/dist/cjs/runtime/internals/cancellation.js +48 -0
- package/dist/cjs/runtime/internals/cancellation.js.map +1 -0
- package/dist/cjs/runtime/internals/clientUtils.js +45 -3
- package/dist/cjs/runtime/internals/clientUtils.js.map +1 -1
- package/dist/cjs/runtime/internals/index.js +3 -1
- package/dist/cjs/runtime/internals/index.js.map +1 -1
- package/dist/cjs/runtime/internals/operations/custom.js +91 -85
- package/dist/cjs/runtime/internals/operations/custom.js.map +1 -1
- package/dist/cjs/runtime/internals/operations/get.js +71 -65
- package/dist/cjs/runtime/internals/operations/get.js.map +1 -1
- package/dist/cjs/runtime/internals/operations/indexQuery.js +66 -60
- package/dist/cjs/runtime/internals/operations/indexQuery.js.map +1 -1
- package/dist/cjs/runtime/internals/operations/list.js +90 -84
- package/dist/cjs/runtime/internals/operations/list.js.map +1 -1
- package/dist/cjs/runtime/internals/server/generateModelsProperty.js +3 -3
- package/dist/cjs/runtime/internals/server/generateModelsProperty.js.map +1 -1
- package/dist/cjs/runtime/internals/utils/clientProperties/generateModelsProperty.js +3 -3
- package/dist/cjs/runtime/internals/utils/clientProperties/generateModelsProperty.js.map +1 -1
- package/dist/cjs/runtime/utils/index.js +3 -1
- package/dist/cjs/runtime/utils/index.js.map +1 -1
- package/dist/cjs/runtime/utils/selfAwareAsync.js +40 -0
- package/dist/cjs/runtime/utils/selfAwareAsync.js.map +1 -0
- package/dist/esm/Authorization.d.ts +1 -1
- package/dist/esm/ClientSchema/Core/ClientModel.d.ts +20 -1
- package/dist/esm/ClientSchema/utilities/ResolveField.d.ts +5 -1
- package/dist/esm/ModelType.d.ts +6 -0
- package/dist/esm/ModelType.mjs +5 -0
- package/dist/esm/ModelType.mjs.map +1 -1
- package/dist/esm/SchemaProcessor.mjs +58 -1
- package/dist/esm/SchemaProcessor.mjs.map +1 -1
- package/dist/esm/runtime/addSchemaToClient.mjs +2 -0
- package/dist/esm/runtime/addSchemaToClient.mjs.map +1 -1
- package/dist/esm/runtime/addSchemaToClientWithInstance.mjs +2 -0
- package/dist/esm/runtime/addSchemaToClientWithInstance.mjs.map +1 -1
- package/dist/esm/runtime/bridge-types.d.ts +2 -2
- package/dist/esm/runtime/client/index.d.ts +18 -10
- package/dist/esm/runtime/internals/APIClient.d.ts +2 -2
- package/dist/esm/runtime/internals/APIClient.mjs +64 -42
- package/dist/esm/runtime/internals/APIClient.mjs.map +1 -1
- package/dist/esm/runtime/internals/cancellation.d.ts +10 -0
- package/dist/esm/runtime/internals/cancellation.mjs +44 -0
- package/dist/esm/runtime/internals/cancellation.mjs.map +1 -0
- package/dist/esm/runtime/internals/clientUtils.d.ts +78 -1
- package/dist/esm/runtime/internals/clientUtils.mjs +45 -3
- package/dist/esm/runtime/internals/clientUtils.mjs.map +1 -1
- package/dist/esm/runtime/internals/index.d.ts +1 -0
- package/dist/esm/runtime/internals/index.mjs +1 -0
- package/dist/esm/runtime/internals/index.mjs.map +1 -1
- package/dist/esm/runtime/internals/operations/custom.d.ts +1 -1
- package/dist/esm/runtime/internals/operations/custom.mjs +91 -85
- package/dist/esm/runtime/internals/operations/custom.mjs.map +1 -1
- package/dist/esm/runtime/internals/operations/get.d.ts +1 -1
- package/dist/esm/runtime/internals/operations/get.mjs +71 -65
- package/dist/esm/runtime/internals/operations/get.mjs.map +1 -1
- package/dist/esm/runtime/internals/operations/indexQuery.d.ts +1 -1
- package/dist/esm/runtime/internals/operations/indexQuery.mjs +66 -60
- package/dist/esm/runtime/internals/operations/indexQuery.mjs.map +1 -1
- package/dist/esm/runtime/internals/operations/list.d.ts +1 -1
- package/dist/esm/runtime/internals/operations/list.mjs +90 -84
- package/dist/esm/runtime/internals/operations/list.mjs.map +1 -1
- package/dist/esm/runtime/internals/server/generateModelsProperty.mjs +4 -4
- package/dist/esm/runtime/internals/server/generateModelsProperty.mjs.map +1 -1
- package/dist/esm/runtime/internals/utils/clientProperties/generateModelsProperty.mjs +4 -4
- package/dist/esm/runtime/internals/utils/clientProperties/generateModelsProperty.mjs.map +1 -1
- package/dist/esm/runtime/utils/index.d.ts +1 -0
- package/dist/esm/runtime/utils/index.mjs +1 -0
- package/dist/esm/runtime/utils/index.mjs.map +1 -1
- package/dist/esm/runtime/utils/selfAwareAsync.d.ts +19 -0
- package/dist/esm/runtime/utils/selfAwareAsync.mjs +37 -0
- package/dist/esm/runtime/utils/selfAwareAsync.mjs.map +1 -0
- package/dist/esm/util/Filters.d.ts +42 -3
- package/dist/meta/cjs.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/ClientSchema/Core/ClientModel.ts +29 -0
- package/src/ClientSchema/utilities/ResolveField.ts +26 -6
- package/src/ModelType.ts +31 -0
- package/src/SchemaProcessor.ts +77 -2
- package/src/runtime/addSchemaToClient.ts +2 -0
- package/src/runtime/addSchemaToClientWithInstance.ts +2 -0
- package/src/runtime/bridge-types.ts +2 -2
- package/src/runtime/client/index.ts +230 -184
- package/src/runtime/internals/APIClient.ts +67 -23
- package/src/runtime/internals/cancellation.ts +57 -0
- package/src/runtime/internals/clientUtils.ts +61 -1
- package/src/runtime/internals/index.ts +1 -0
- package/src/runtime/internals/operations/custom.ts +117 -109
- package/src/runtime/internals/operations/get.ts +111 -95
- package/src/runtime/internals/operations/indexQuery.ts +100 -94
- package/src/runtime/internals/operations/list.ts +132 -119
- package/src/runtime/internals/server/generateModelsProperty.ts +31 -28
- package/src/runtime/internals/utils/clientProperties/generateModelsProperty.ts +36 -33
- package/src/runtime/utils/index.ts +1 -0
- package/src/runtime/utils/selfAwareAsync.ts +39 -0
- package/src/util/Filters.ts +47 -3
|
@@ -2,7 +2,7 @@ import { type DeepReadOnlyObject, type UnwrapArray, type UnionToIntersection, ty
|
|
|
2
2
|
import type { Observable } from 'rxjs';
|
|
3
3
|
import type { ClientSchemaByEntityType, ClientSchemaByEntityTypeBaseShape } from '../../ClientSchema';
|
|
4
4
|
import type { ExtractNestedTypes } from '../../ClientSchema/utilities/';
|
|
5
|
-
import type { Select, StringFilter, NumericFilter, BooleanFilters } from '../../util';
|
|
5
|
+
import type { Select, StringFilter, NumericFilter, BooleanFilters, SubscriptionStringFilter, SubscriptionNumericFilter, SubscriptionBooleanFilters } from '../../util';
|
|
6
6
|
import { AmplifyServer } from '../bridge-types';
|
|
7
7
|
export { __modelMeta__, ExtractModelMeta, } from '@aws-amplify/data-schema-types';
|
|
8
8
|
type Model = Record<string, any>;
|
|
@@ -258,6 +258,14 @@ type LogicalFilters<Model extends ClientSchemaByEntityTypeBaseShape['models'][st
|
|
|
258
258
|
type ModelFilter<Model extends ClientSchemaByEntityTypeBaseShape['models'][string]> = LogicalFilters<Model> & {
|
|
259
259
|
[K in keyof Model['type'] as Model['type'][K] extends LazyLoader<any, any> ? never : K]?: boolean extends Model['type'][K] ? BooleanFilters : number extends Model['type'][K] ? NumericFilter : StringFilter;
|
|
260
260
|
};
|
|
261
|
+
type LogicalSubscriptionFilters<Model extends ClientSchemaByEntityTypeBaseShape['models'][string]> = {
|
|
262
|
+
and?: ModelSubscriptionFilter<Model> | ModelSubscriptionFilter<Model>[];
|
|
263
|
+
or?: ModelSubscriptionFilter<Model> | ModelSubscriptionFilter<Model>[];
|
|
264
|
+
not?: ModelSubscriptionFilter<Model>;
|
|
265
|
+
};
|
|
266
|
+
type ModelSubscriptionFilter<Model extends ClientSchemaByEntityTypeBaseShape['models'][string]> = LogicalSubscriptionFilters<Model> & {
|
|
267
|
+
[K in keyof Model['type'] as Model['type'][K] extends LazyLoader<any, any> ? never : K]?: boolean extends Model['type'][K] ? SubscriptionBooleanFilters : number extends Model['type'][K] ? SubscriptionNumericFilter : SubscriptionStringFilter;
|
|
268
|
+
};
|
|
261
269
|
export type ModelSortDirection = 'ASC' | 'DESC';
|
|
262
270
|
type ListCpkOptions<Model extends ClientSchemaByEntityTypeBaseShape['models'][string]> = unknown extends Model['__meta']['listOptionsPkParams'] ? unknown : Model['__meta']['listOptionsPkParams'] & {
|
|
263
271
|
sortDirection?: ModelSortDirection;
|
|
@@ -287,7 +295,7 @@ type IndexQueryMethod<Model extends ClientSchemaByEntityTypeBaseShape['models'][
|
|
|
287
295
|
authToken?: string;
|
|
288
296
|
headers?: CustomHeaders;
|
|
289
297
|
}) => ListReturnValue<Prettify<ReturnValue<Model, FlatModel, SelectionSet>>>;
|
|
290
|
-
type ModelTypesClient<Model extends ClientSchemaByEntityTypeBaseShape['models'][string], FlatModel extends Record<string, unknown> = ResolvedModel<Model['type']>> = IndexQueryMethods<Model> & {
|
|
298
|
+
type ModelTypesClient<Model extends ClientSchemaByEntityTypeBaseShape['models'][string], FlatModel extends Record<string, unknown> = ResolvedModel<Model['type']>> = IndexQueryMethods<Model> & Omit<{
|
|
291
299
|
create: (model: Model['createType'], options?: {
|
|
292
300
|
authMode?: AuthMode;
|
|
293
301
|
authToken?: string;
|
|
@@ -319,21 +327,21 @@ type ModelTypesClient<Model extends ClientSchemaByEntityTypeBaseShape['models'][
|
|
|
319
327
|
headers?: CustomHeaders;
|
|
320
328
|
}): ListReturnValue<Prettify<ReturnValue<Model, FlatModel, SelectionSet>>>;
|
|
321
329
|
onCreate<SelectionSet extends ReadonlyArray<ModelPath<FlatModel>> = never[]>(options?: {
|
|
322
|
-
filter?:
|
|
330
|
+
filter?: ModelSubscriptionFilter<Model>;
|
|
323
331
|
selectionSet?: SelectionSet;
|
|
324
332
|
authMode?: AuthMode;
|
|
325
333
|
authToken?: string;
|
|
326
334
|
headers?: CustomHeaders;
|
|
327
335
|
}): ObservedReturnValue<Prettify<ReturnValue<Model, FlatModel, SelectionSet>>>;
|
|
328
336
|
onUpdate<SelectionSet extends ReadonlyArray<ModelPath<FlatModel>> = never[]>(options?: {
|
|
329
|
-
filter?:
|
|
337
|
+
filter?: ModelSubscriptionFilter<Model>;
|
|
330
338
|
selectionSet?: SelectionSet;
|
|
331
339
|
authMode?: AuthMode;
|
|
332
340
|
authToken?: string;
|
|
333
341
|
headers?: CustomHeaders;
|
|
334
342
|
}): ObservedReturnValue<Prettify<ReturnValue<Model, FlatModel, SelectionSet>>>;
|
|
335
343
|
onDelete<SelectionSet extends ReadonlyArray<ModelPath<FlatModel>> = never[]>(options?: {
|
|
336
|
-
filter?:
|
|
344
|
+
filter?: ModelSubscriptionFilter<Model>;
|
|
337
345
|
selectionSet?: SelectionSet;
|
|
338
346
|
authMode?: AuthMode;
|
|
339
347
|
authToken?: string;
|
|
@@ -345,8 +353,8 @@ type ModelTypesClient<Model extends ClientSchemaByEntityTypeBaseShape['models'][
|
|
|
345
353
|
authMode?: AuthMode;
|
|
346
354
|
authToken?: string;
|
|
347
355
|
}): ObserveQueryReturnValue<Prettify<ReturnValue<Model, FlatModel, SelectionSet>>>;
|
|
348
|
-
}
|
|
349
|
-
type ModelTypesSSRCookies<Model extends ClientSchemaByEntityTypeBaseShape['models'][string], FlatModel extends Record<string, unknown> = ResolvedModel<Model['type']>> = IndexQueryMethods<Model> & {
|
|
356
|
+
}, keyof Model['__meta']['disabledOperations']>;
|
|
357
|
+
type ModelTypesSSRCookies<Model extends ClientSchemaByEntityTypeBaseShape['models'][string], FlatModel extends Record<string, unknown> = ResolvedModel<Model['type']>> = IndexQueryMethods<Model> & Omit<{
|
|
350
358
|
create: (model: Model['createType'], options?: {
|
|
351
359
|
authMode?: AuthMode;
|
|
352
360
|
authToken?: string;
|
|
@@ -378,8 +386,8 @@ type ModelTypesSSRCookies<Model extends ClientSchemaByEntityTypeBaseShape['model
|
|
|
378
386
|
authToken?: string;
|
|
379
387
|
headers?: CustomHeaders;
|
|
380
388
|
}): ListReturnValue<Prettify<ReturnValue<Model, FlatModel, SelectionSet>>>;
|
|
381
|
-
}
|
|
382
|
-
type ModelTypesSSRRequest<Model extends ClientSchemaByEntityTypeBaseShape['models'][string], FlatModel extends Record<string, unknown> = ResolvedModel<Model['type']>> = IndexQueryMethods<Model, 'REQUEST'> & {
|
|
389
|
+
}, keyof Model['__meta']['disabledOperations']>;
|
|
390
|
+
type ModelTypesSSRRequest<Model extends ClientSchemaByEntityTypeBaseShape['models'][string], FlatModel extends Record<string, unknown> = ResolvedModel<Model['type']>> = IndexQueryMethods<Model, 'REQUEST'> & Omit<{
|
|
383
391
|
create: (contextSpec: AmplifyServer.ContextSpec, model: Model['createType'], options?: {
|
|
384
392
|
authMode?: AuthMode;
|
|
385
393
|
authToken?: string;
|
|
@@ -411,7 +419,7 @@ type ModelTypesSSRRequest<Model extends ClientSchemaByEntityTypeBaseShape['model
|
|
|
411
419
|
authToken?: string;
|
|
412
420
|
headers?: CustomHeaders;
|
|
413
421
|
}): ListReturnValue<Prettify<ReturnValue<Model, FlatModel, SelectionSet>>>;
|
|
414
|
-
}
|
|
422
|
+
}, keyof Model['__meta']['disabledOperations']>;
|
|
415
423
|
type ContextType = 'CLIENT' | 'COOKIES' | 'REQUEST';
|
|
416
424
|
export type ModelTypes<T extends Record<any, any>, Context extends ContextType = 'CLIENT', Schema extends ClientSchemaByEntityType<T> = ClientSchemaByEntityType<T>> = {
|
|
417
425
|
[ModelName in keyof Schema['models']]: Context extends 'CLIENT' ? ModelTypesClient<Schema['models'][ModelName]> : Context extends 'COOKIES' ? ModelTypesSSRCookies<Schema['models'][ModelName]> : Context extends 'REQUEST' ? ModelTypesSSRRequest<Schema['models'][ModelName]> : never;
|
|
@@ -51,7 +51,7 @@ export declare const graphQLOperationsInfo: {
|
|
|
51
51
|
readonly operationPrefix: "create";
|
|
52
52
|
readonly usePlural: false;
|
|
53
53
|
};
|
|
54
|
-
readonly
|
|
54
|
+
readonly GET: {
|
|
55
55
|
readonly operationPrefix: "get";
|
|
56
56
|
readonly usePlural: false;
|
|
57
57
|
};
|
|
@@ -83,7 +83,7 @@ export declare const graphQLOperationsInfo: {
|
|
|
83
83
|
readonly operationPrefix: "onDelete";
|
|
84
84
|
readonly usePlural: false;
|
|
85
85
|
};
|
|
86
|
-
readonly
|
|
86
|
+
readonly OBSERVEQUERY: {
|
|
87
87
|
readonly operationPrefix: "observeQuery";
|
|
88
88
|
readonly usePlural: false;
|
|
89
89
|
};
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { resolveOwnerFields } from '../utils/resolveOwnerFields.mjs';
|
|
2
2
|
import { capitalize } from '../utils/stringTransformation.mjs';
|
|
3
|
+
import { selfAwareAsync } from '../utils/selfAwareAsync.mjs';
|
|
4
|
+
import { extendCancellability } from './cancellation.mjs';
|
|
3
5
|
|
|
4
6
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
5
7
|
const connectionType = {
|
|
@@ -166,6 +168,10 @@ function initializeModel(client, modelName, result, modelIntrospection, authMode
|
|
|
166
168
|
return (acc[curVal] = record[curVal]);
|
|
167
169
|
}
|
|
168
170
|
}, {});
|
|
171
|
+
// if get is disabled on the related model
|
|
172
|
+
if (client.models[relatedModelName].get === undefined) {
|
|
173
|
+
break;
|
|
174
|
+
}
|
|
169
175
|
if (context) {
|
|
170
176
|
initializedRelationalFields[fieldName] = (contextSpec, options) => {
|
|
171
177
|
if (record[targetNames[0]]) {
|
|
@@ -228,18 +234,24 @@ function initializeModel(client, modelName, result, modelIntrospection, authMode
|
|
|
228
234
|
}
|
|
229
235
|
return { [field]: { eq: record[parentSK[idx - 1]] } };
|
|
230
236
|
});
|
|
237
|
+
// if list is disabled on the related model
|
|
238
|
+
if (client.models[relatedModelName].list === undefined) {
|
|
239
|
+
break;
|
|
240
|
+
}
|
|
231
241
|
if (context) {
|
|
232
242
|
initializedRelationalFields[fieldName] = (contextSpec, options) => {
|
|
233
243
|
if (record[parentPk]) {
|
|
234
|
-
return
|
|
235
|
-
.list(contextSpec, {
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
244
|
+
return selfAwareAsync(async (resultPromise) => {
|
|
245
|
+
const basePromise = client.models[relatedModelName].list(contextSpec, {
|
|
246
|
+
filter: { and: hasManyFilter },
|
|
247
|
+
limit: options?.limit,
|
|
248
|
+
nextToken: options?.nextToken,
|
|
249
|
+
authMode: options?.authMode || authMode,
|
|
250
|
+
authToken: options?.authToken || authToken,
|
|
251
|
+
});
|
|
252
|
+
const extendedBase = extendCancellability(basePromise, resultPromise);
|
|
253
|
+
return mapResult((await extendedBase));
|
|
254
|
+
});
|
|
243
255
|
}
|
|
244
256
|
return [];
|
|
245
257
|
};
|
|
@@ -247,15 +259,17 @@ function initializeModel(client, modelName, result, modelIntrospection, authMode
|
|
|
247
259
|
else {
|
|
248
260
|
initializedRelationalFields[fieldName] = (options) => {
|
|
249
261
|
if (record[parentPk]) {
|
|
250
|
-
return
|
|
251
|
-
.list({
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
262
|
+
return selfAwareAsync(async (resultPromise) => {
|
|
263
|
+
const basePromise = client.models[relatedModelName].list({
|
|
264
|
+
filter: { and: hasManyFilter },
|
|
265
|
+
limit: options?.limit,
|
|
266
|
+
nextToken: options?.nextToken,
|
|
267
|
+
authMode: options?.authMode || authMode,
|
|
268
|
+
authToken: options?.authToken || authToken,
|
|
269
|
+
});
|
|
270
|
+
const extendedBase = extendCancellability(basePromise, resultPromise);
|
|
271
|
+
return mapResult((await extendedBase));
|
|
272
|
+
});
|
|
259
273
|
}
|
|
260
274
|
return [];
|
|
261
275
|
};
|
|
@@ -268,18 +282,24 @@ function initializeModel(client, modelName, result, modelIntrospection, authMode
|
|
|
268
282
|
}
|
|
269
283
|
return { [field]: { eq: record[parentSK[idx - 1]] } };
|
|
270
284
|
});
|
|
285
|
+
// if list is disabled on the related model
|
|
286
|
+
if (client.models[relatedModelName].list === undefined) {
|
|
287
|
+
break;
|
|
288
|
+
}
|
|
271
289
|
if (context) {
|
|
272
290
|
initializedRelationalFields[fieldName] = (contextSpec, options) => {
|
|
273
291
|
if (record[parentPk]) {
|
|
274
|
-
return
|
|
275
|
-
.list(contextSpec, {
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
292
|
+
return selfAwareAsync(async (resultPromise) => {
|
|
293
|
+
const basePromise = client.models[relatedModelName].list(contextSpec, {
|
|
294
|
+
filter: { and: hasManyFilter },
|
|
295
|
+
limit: options?.limit,
|
|
296
|
+
nextToken: options?.nextToken,
|
|
297
|
+
authMode: options?.authMode || authMode,
|
|
298
|
+
authToken: options?.authToken || authToken,
|
|
299
|
+
});
|
|
300
|
+
const extendedBase = extendCancellability(basePromise, resultPromise);
|
|
301
|
+
return mapResult((await extendedBase));
|
|
302
|
+
});
|
|
283
303
|
}
|
|
284
304
|
return [];
|
|
285
305
|
};
|
|
@@ -287,15 +307,17 @@ function initializeModel(client, modelName, result, modelIntrospection, authMode
|
|
|
287
307
|
else {
|
|
288
308
|
initializedRelationalFields[fieldName] = (options) => {
|
|
289
309
|
if (record[parentPk]) {
|
|
290
|
-
return
|
|
291
|
-
.list({
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
310
|
+
return selfAwareAsync(async (resultPromise) => {
|
|
311
|
+
const basePromise = client.models[relatedModelName].list({
|
|
312
|
+
filter: { and: hasManyFilter },
|
|
313
|
+
limit: options?.limit,
|
|
314
|
+
nextToken: options?.nextToken,
|
|
315
|
+
authMode: options?.authMode || authMode,
|
|
316
|
+
authToken: options?.authToken || authToken,
|
|
317
|
+
});
|
|
318
|
+
const extendedBase = extendCancellability(basePromise, resultPromise);
|
|
319
|
+
return mapResult((await extendedBase));
|
|
320
|
+
});
|
|
299
321
|
}
|
|
300
322
|
return [];
|
|
301
323
|
};
|
|
@@ -309,7 +331,7 @@ function initializeModel(client, modelName, result, modelIntrospection, authMode
|
|
|
309
331
|
}
|
|
310
332
|
const graphQLOperationsInfo = {
|
|
311
333
|
CREATE: { operationPrefix: 'create', usePlural: false },
|
|
312
|
-
|
|
334
|
+
GET: { operationPrefix: 'get', usePlural: false },
|
|
313
335
|
UPDATE: { operationPrefix: 'update', usePlural: false },
|
|
314
336
|
DELETE: { operationPrefix: 'delete', usePlural: false },
|
|
315
337
|
LIST: { operationPrefix: 'list', usePlural: true },
|
|
@@ -317,7 +339,7 @@ const graphQLOperationsInfo = {
|
|
|
317
339
|
ONCREATE: { operationPrefix: 'onCreate', usePlural: false },
|
|
318
340
|
ONUPDATE: { operationPrefix: 'onUpdate', usePlural: false },
|
|
319
341
|
ONDELETE: { operationPrefix: 'onDelete', usePlural: false },
|
|
320
|
-
|
|
342
|
+
OBSERVEQUERY: { operationPrefix: 'observeQuery', usePlural: false },
|
|
321
343
|
};
|
|
322
344
|
const SELECTION_SET_WILDCARD = '*';
|
|
323
345
|
const getDefaultSelectionSetForNonModelWithIR = (nonModelDefinition, modelIntrospection) => {
|
|
@@ -696,7 +718,7 @@ function generateGraphQLDocument(modelIntrospection, modelName, modelOperation,
|
|
|
696
718
|
graphQLOperationType ?? (graphQLOperationType = 'mutation');
|
|
697
719
|
// TODO(Eslint): this this case clause correct without the break statement?
|
|
698
720
|
// eslint-disable-next-line no-fallthrough
|
|
699
|
-
case '
|
|
721
|
+
case 'GET':
|
|
700
722
|
graphQLArguments ?? (graphQLArguments = getPkArgs);
|
|
701
723
|
graphQLSelectionSet ?? (graphQLSelectionSet = selectionSetFields);
|
|
702
724
|
// TODO(Eslint): this this case clause correct without the break statement?
|
|
@@ -744,7 +766,7 @@ function generateGraphQLDocument(modelIntrospection, modelName, modelOperation,
|
|
|
744
766
|
graphQLOperationType ?? (graphQLOperationType = 'subscription');
|
|
745
767
|
graphQLSelectionSet ?? (graphQLSelectionSet = selectionSetFields);
|
|
746
768
|
break;
|
|
747
|
-
case '
|
|
769
|
+
case 'OBSERVEQUERY':
|
|
748
770
|
default:
|
|
749
771
|
throw new Error('Internal error: Attempted to generate graphql document for observeQuery. Please report this error.');
|
|
750
772
|
}
|
|
@@ -779,7 +801,7 @@ function buildGraphQLVariables(modelDefinition, operation, arg, modelIntrospecti
|
|
|
779
801
|
: {},
|
|
780
802
|
};
|
|
781
803
|
break;
|
|
782
|
-
case '
|
|
804
|
+
case 'GET':
|
|
783
805
|
case 'DELETE':
|
|
784
806
|
// only identifiers are sent
|
|
785
807
|
if (arg) {
|
|
@@ -842,7 +864,7 @@ function buildGraphQLVariables(modelDefinition, operation, arg, modelIntrospecti
|
|
|
842
864
|
variables = { filter: arg.filter };
|
|
843
865
|
}
|
|
844
866
|
break;
|
|
845
|
-
case '
|
|
867
|
+
case 'OBSERVEQUERY':
|
|
846
868
|
throw new Error('Internal error: Attempted to build variables for observeQuery. Please report this error.');
|
|
847
869
|
default: {
|
|
848
870
|
const exhaustiveCheck = operation;
|