@aws-amplify/data-schema 0.14.11 → 0.14.13
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.
|
@@ -38,17 +38,25 @@ export type GenericModelSchema<T extends ModelSchemaParamShape> = BaseSchema<T>
|
|
|
38
38
|
export type ModelSchema<T extends ModelSchemaParamShape, UsedMethods extends 'authorization' | 'addRelationships' = never> = Omit<{
|
|
39
39
|
authorization: <AuthRules extends SchemaAuthorization<any, any, any>>(auth: AuthRules[]) => ModelSchema<SetTypeSubArg<T, 'authorization', AuthRules[]>, UsedMethods | 'authorization'>;
|
|
40
40
|
}, UsedMethods> & BaseSchema<T> & DDBSchemaBrand;
|
|
41
|
-
type RDSModelSchemaFunctions = 'addQueries' | 'addMutations' | 'addSubscriptions' | 'authorization' | 'relationships' | 'setAuthorization';
|
|
41
|
+
type RDSModelSchemaFunctions = 'addQueries' | 'addMutations' | 'addSubscriptions' | 'authorization' | 'relationships' | 'setAuthorization' | 'renameModelFields' | 'renameModels';
|
|
42
42
|
export type RDSModelSchema<T extends RDSModelSchemaParamShape, UsedMethods extends RDSModelSchemaFunctions = never, RelationshipTemplate extends Record<string, ModelRelationalField<ModelRelationalFieldParamShape, string, any, any>> = Record<string, ModelRelationalField<ModelRelationalFieldParamShape, string, any, any>>> = Omit<{
|
|
43
43
|
addQueries: <Queries extends Record<string, QueryCustomOperation>>(types: Queries) => RDSModelSchema<SetTypeSubArg<T, 'types', T['types'] & Queries>, UsedMethods | 'addQueries'>;
|
|
44
44
|
addMutations: <Mutations extends Record<string, MutationCustomOperation>>(types: Mutations) => RDSModelSchema<SetTypeSubArg<T, 'types', T['types'] & Mutations>, UsedMethods | 'addMutations'>;
|
|
45
45
|
addSubscriptions: <Subscriptions extends Record<string, SubscriptionCustomOperation>>(types: Subscriptions) => RDSModelSchema<SetTypeSubArg<T, 'types', T['types'] & Subscriptions>, UsedMethods | 'addSubscriptions'>;
|
|
46
46
|
authorization: <AuthRules extends SchemaAuthorization<any, any, any>>(auth: AuthRules[]) => RDSModelSchema<SetTypeSubArg<T, 'authorization', AuthRules[]>, UsedMethods | 'authorization'>;
|
|
47
|
-
setAuthorization: (callback: (models: BaseSchema<T, true>['models'], schema: RDSModelSchema<T>) => void) => RDSModelSchema<T>;
|
|
47
|
+
setAuthorization: (callback: (models: BaseSchema<T, true>['models'], schema: RDSModelSchema<T, UsedMethods | 'setAuthorization'>) => void) => RDSModelSchema<T>;
|
|
48
48
|
relationships: <Relationships extends ReadonlyArray<Partial<Record<keyof T['types'], RelationshipTemplate>>>>(callback: (models: BaseSchema<T, true>['models']) => Relationships) => RDSModelSchema<UnionToIntersection<Relationships[number]> extends infer RelationshipsDefs ? RelationshipsDefs extends Record<string, RelationshipTemplate> ? SetTypeSubArg<T, 'types', {
|
|
49
49
|
[ModelName in keyof T['types']]: ModelName extends keyof RelationshipsDefs ? AddRelationshipFieldsToModelTypeFields<T['types'][ModelName], RelationshipsDefs[ModelName]> : T['types'][ModelName];
|
|
50
50
|
}> : T : T, UsedMethods | 'relationships'>;
|
|
51
|
+
renameModels: <NewName extends string, CurName extends string = keyof BaseSchema<T>['models'] & string, const ChangeLog extends readonly [CurName, NewName][] = []>(callback: () => ChangeLog) => RDSModelSchema<SetTypeSubArg<T, 'types', RenameModelArr<ChangeLog, T['types']>>, UsedMethods | 'renameModels'>;
|
|
51
52
|
}, UsedMethods> & BaseSchema<T, true> & RDSSchemaBrand;
|
|
53
|
+
type RenameModel<CurName extends string, NewName extends string, Types extends ModelSchemaContents> = {
|
|
54
|
+
[Type in keyof Types as Type extends CurName ? NewName : Type]: Types[Type];
|
|
55
|
+
};
|
|
56
|
+
type RenameModelArr<ChangeLog extends readonly [string, string][], Types extends ModelSchemaContents> = ChangeLog extends readonly [
|
|
57
|
+
infer CurPair extends [string, string],
|
|
58
|
+
...infer Rest extends readonly [string, string][]
|
|
59
|
+
] ? RenameModelArr<Rest, RenameModel<CurPair[0], CurPair[1], Types>> : Types;
|
|
52
60
|
/**
|
|
53
61
|
* Amplify API Next Model Schema shape
|
|
54
62
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelSchema.d.ts","sourceRoot":"","sources":["../../src/ModelSchema.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ModelSchema.d.ts","sourceRoot":"","sources":["../../src/ModelSchema.ts"],"names":[],"mappings":"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"}
|
|
@@ -82,6 +82,25 @@ function _rdsSchema(types, config) {
|
|
|
82
82
|
callback(models);
|
|
83
83
|
return rest;
|
|
84
84
|
},
|
|
85
|
+
renameModels(callback) {
|
|
86
|
+
const { renameModels: _, ...rest } = this;
|
|
87
|
+
// returns an array of tuples [curName, newName]
|
|
88
|
+
const changeLog = callback();
|
|
89
|
+
changeLog.forEach(([curName, newName]) => {
|
|
90
|
+
const currentType = data.types[curName];
|
|
91
|
+
if (currentType === undefined) {
|
|
92
|
+
throw new Error(`Invalid renameModels call. ${curName} is not defined in the schema`);
|
|
93
|
+
}
|
|
94
|
+
if (typeof newName !== 'string' || newName.length < 1) {
|
|
95
|
+
throw new Error(`Invalid renameModels call. New name must be a non-empty string. Received: "${newName}"`);
|
|
96
|
+
}
|
|
97
|
+
models[newName] = currentType;
|
|
98
|
+
data.types[newName] = currentType;
|
|
99
|
+
delete models[curName];
|
|
100
|
+
delete data.types[curName];
|
|
101
|
+
});
|
|
102
|
+
return rest;
|
|
103
|
+
},
|
|
85
104
|
...exports.rdsSchemaBrand,
|
|
86
105
|
};
|
|
87
106
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaProcessor.d.ts","sourceRoot":"","sources":["../../src/SchemaProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAsBzE,OAAO,EACL,oBAAoB,EAMrB,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"SchemaProcessor.d.ts","sourceRoot":"","sources":["../../src/SchemaProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAsBzE,OAAO,EACL,oBAAoB,EAMrB,MAAM,gCAAgC,CAAC;AA4nDxC;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE;IACjC,MAAM,EAAE,cAAc,CAAC;CACxB,GAAG,oBAAoB,CAiBvB"}
|
|
@@ -155,7 +155,7 @@ function refFieldToGql(fieldDef) {
|
|
|
155
155
|
}
|
|
156
156
|
return field;
|
|
157
157
|
}
|
|
158
|
-
function transformFunctionHandler(handlers,
|
|
158
|
+
function transformFunctionHandler(handlers, functionFieldName) {
|
|
159
159
|
let gqlHandlerContent = '';
|
|
160
160
|
const lambdaFunctionDefinition = {};
|
|
161
161
|
handlers.forEach((handler, idx) => {
|
|
@@ -164,14 +164,12 @@ function transformFunctionHandler(handlers, callSignature) {
|
|
|
164
164
|
gqlHandlerContent += `@function(name: "${handlerData}") `;
|
|
165
165
|
}
|
|
166
166
|
else if (typeof handlerData.getInstance === 'function') {
|
|
167
|
-
const
|
|
168
|
-
const fnNameSuffix = idx === 0 ? '' : `${idx + 1}`;
|
|
169
|
-
const fnName = fnBaseName + fnNameSuffix;
|
|
167
|
+
const fnName = `Fn${capitalize(functionFieldName)}${idx === 0 ? '' : `${idx + 1}`}`;
|
|
170
168
|
lambdaFunctionDefinition[fnName] = handlerData;
|
|
171
169
|
gqlHandlerContent += `@function(name: "${fnName}") `;
|
|
172
170
|
}
|
|
173
171
|
else {
|
|
174
|
-
throw new Error(`Invalid value specified for ${
|
|
172
|
+
throw new Error(`Invalid value specified for ${functionFieldName} handler.function(). Expected: defineFunction or string.`);
|
|
175
173
|
}
|
|
176
174
|
});
|
|
177
175
|
return { gqlHandlerContent, lambdaFunctionDefinition };
|
|
@@ -240,7 +238,7 @@ function customOperationToGql(typeName, typeDef, authorization, isCustom = false
|
|
|
240
238
|
let lambdaFunctionDefinition = {};
|
|
241
239
|
let customSqlDataSourceStrategy;
|
|
242
240
|
if (isFunctionHandler(handlers)) {
|
|
243
|
-
({ gqlHandlerContent, lambdaFunctionDefinition } = transformFunctionHandler(handlers,
|
|
241
|
+
({ gqlHandlerContent, lambdaFunctionDefinition } = transformFunctionHandler(handlers, typeName));
|
|
244
242
|
}
|
|
245
243
|
else if (functionRef) {
|
|
246
244
|
gqlHandlerContent = `@function(name: "${functionRef}") `;
|
|
@@ -821,7 +819,7 @@ const schemaPreprocessor = (schema) => {
|
|
|
821
819
|
const customMutations = [];
|
|
822
820
|
const customSubscriptions = [];
|
|
823
821
|
const jsFunctions = [];
|
|
824
|
-
|
|
822
|
+
const lambdaFunctions = {};
|
|
825
823
|
const customSqlDataSourceStrategies = [];
|
|
826
824
|
const databaseType = schema.data.configuration.database.engine === 'dynamodb'
|
|
827
825
|
? 'dynamodb'
|
|
@@ -859,7 +857,7 @@ const schemaPreprocessor = (schema) => {
|
|
|
859
857
|
else if (isCustomOperation(typeDef)) {
|
|
860
858
|
const { typeName: opType } = typeDef.data;
|
|
861
859
|
const { gqlField, models, jsFunctionForField, lambdaFunctionDefinition, customSqlDataSourceStrategy, } = transformCustomOperations(typeDef, typeName, mostRelevantAuthRules, databaseType, getRefType);
|
|
862
|
-
lambdaFunctions
|
|
860
|
+
Object.assign(lambdaFunctions, lambdaFunctionDefinition);
|
|
863
861
|
topLevelTypes.push(...models);
|
|
864
862
|
if (jsFunctionForField) {
|
|
865
863
|
jsFunctions.push(jsFunctionForField);
|