Socket
Socket
Sign inDemoInstall

@aws-amplify/graphql-relational-transformer

Package Overview
Dependencies
Maintainers
9
Versions
416
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@aws-amplify/graphql-relational-transformer - npm Package Compare versions

Comparing version 2.5.9-gen2-migration.0 to 2.5.9

7

CHANGELOG.md

@@ -6,6 +6,9 @@ # Change Log

## [2.5.9-gen2-migration.0](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-relational-transformer@2.5.8...@aws-amplify/graphql-relational-transformer@2.5.9-gen2-migration.0) (2024-07-15)
## [2.5.9](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-relational-transformer@2.5.8...@aws-amplify/graphql-relational-transformer@2.5.9) (2024-07-15)
**Note:** Version bump only for package @aws-amplify/graphql-relational-transformer
### Bug Fixes
- add nonScalarFields and arrayFields to schemas with mapped names ([#2689](https://github.com/aws-amplify/amplify-category-api/issues/2689)) ([4feb898](https://github.com/aws-amplify/amplify-category-api/commit/4feb898ae21710bb86dd900faef082c24bc08960)), closes [#2581](https://github.com/aws-amplify/amplify-category-api/issues/2581)
- add translation behavior to disable gen 1 patterns ([#2670](https://github.com/aws-amplify/amplify-category-api/issues/2670)) ([38d1a71](https://github.com/aws-amplify/amplify-category-api/commit/38d1a718ec2b0290f514780c6d1d5f0790ba7764))
## [2.5.8](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-relational-transformer@2.5.7...@aws-amplify/graphql-relational-transformer@2.5.8) (2024-07-02)

@@ -12,0 +15,0 @@

@@ -9,2 +9,3 @@ "use strict";

const graphql_directives_1 = require("@aws-amplify/graphql-directives");
const graphql_1 = require("graphql");
const graphql_transformer_common_1 = require("graphql-transformer-common");

@@ -91,2 +92,12 @@ const immer_1 = __importDefault(require("immer"));

const { field, object } = config;
if (!ctx.transformParameters.allowGen1Patterns) {
const modelName = object.name.value;
const fieldName = field.name.value;
if (field.type.kind === graphql_1.Kind.NON_NULL_TYPE) {
throw new graphql_transformer_core_1.InvalidDirectiveError(`@${graphql_directives_1.BelongsToDirective.name} cannot be used on required fields. Modify ${modelName}.${fieldName} to be optional.`);
}
if (config.fields) {
throw new graphql_transformer_core_1.InvalidDirectiveError(`fields argument on @${graphql_directives_1.BelongsToDirective.name} is disallowed. Modify ${modelName}.${fieldName} to use references instead.`);
}
}
let dbType;

@@ -93,0 +104,0 @@ try {

@@ -9,2 +9,3 @@ "use strict";

const graphql_transformer_core_1 = require("@aws-amplify/graphql-transformer-core");
const graphql_1 = require("graphql");
const graphql_transformer_common_1 = require("graphql-transformer-common");

@@ -89,3 +90,13 @@ const immer_1 = __importDefault(require("immer"));

var _a, _b;
const { field } = config;
const { field, object } = config;
if (!ctx.transformParameters.allowGen1Patterns) {
const modelName = object.name.value;
const fieldName = field.name.value;
if (field.type.kind === graphql_1.Kind.NON_NULL_TYPE) {
throw new graphql_transformer_core_1.InvalidDirectiveError(`@${graphql_directives_1.HasManyDirective.name} cannot be used on required fields. Modify ${modelName}.${fieldName} to be optional.`);
}
if (config.fields) {
throw new graphql_transformer_core_1.InvalidDirectiveError(`fields argument on @${graphql_directives_1.HasManyDirective.name} is disallowed. Modify ${modelName}.${fieldName} to use references instead.`);
}
}
if (!(0, graphql_transformer_common_1.isListType)(field.type)) {

@@ -92,0 +103,0 @@ throw new graphql_transformer_core_1.InvalidDirectiveError(`@${graphql_directives_1.HasManyDirective.name} must be used with a list. Use @hasOne for non-list types.`);

@@ -6,2 +6,3 @@ "use strict";

const graphql_directives_1 = require("@aws-amplify/graphql-directives");
const graphql_1 = require("graphql");
const graphql_transformer_common_1 = require("graphql-transformer-common");

@@ -101,3 +102,13 @@ const immer_1 = require("immer");

var _a, _b;
const { field } = config;
const { field, object } = config;
if (!ctx.transformParameters.allowGen1Patterns) {
const modelName = object.name.value;
const fieldName = field.name.value;
if (field.type.kind === graphql_1.Kind.NON_NULL_TYPE) {
throw new graphql_transformer_core_1.InvalidDirectiveError(`@${graphql_directives_1.HasOneDirective.name} cannot be used on required fields. Modify ${modelName}.${fieldName} to be optional.`);
}
if (config.fields) {
throw new graphql_transformer_core_1.InvalidDirectiveError(`fields argument on @${graphql_directives_1.HasOneDirective.name} is disallowed. Modify ${modelName}.${fieldName} to use references instead.`);
}
}
let dbType;

@@ -104,0 +115,0 @@ try {

@@ -21,3 +21,2 @@ "use strict";

const dataSource = ctx.api.host.getDataSource(dataSourceName);
const mappedTableName = ctx.resourceHelper.getModelNameMapping(relatedType.name.value);
const connectionCondition = [];

@@ -29,3 +28,3 @@ const primaryKeys = (0, graphql_transformer_core_1.getPrimaryKeyFields)(object);

const resolverResourceId = graphql_transformer_common_1.ResolverResourceIDs.ResolverResourceID(object.name.value, field.name.value);
const resolver = ctx.resolvers.generateQueryResolver(object.name.value, field.name.value, resolverResourceId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(this.generateHasManyLambdaRequestTemplate(mappedTableName, 'LIST', 'ConnectionQuery', connectionCondition, ctx), `${object.name.value}.${field.name.value}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(this.generateListConnectionLambdaResponseMappingTemplate(), `${object.name.value}.${field.name.value}.res.vtl`));
const resolver = ctx.resolvers.generateQueryResolver(object.name.value, field.name.value, resolverResourceId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(this.generateHasManyLambdaRequestTemplate(relatedType.name.value, 'LIST', 'ConnectionQuery', connectionCondition, ctx), `${object.name.value}.${field.name.value}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(this.generateListConnectionLambdaResponseMappingTemplate(), `${object.name.value}.${field.name.value}.res.vtl`));
resolver.setScope(ctx.stackManager.getScopeFor(resolverResourceId, CONNECTION_STACK));

@@ -35,2 +34,3 @@ ctx.resolvers.addResolver(object.name.value, field.name.value, resolver);

this.generateHasManyLambdaRequestTemplate = (tableName, operation, operationName, joinCondition, ctx) => {
const mappedTableName = ctx.resourceHelper.getModelNameMapping(tableName);
return (0, graphql_mapping_template_1.printBlock)('Invoke RDS Lambda data source')((0, graphql_mapping_template_1.compoundExpression)([

@@ -40,3 +40,3 @@ (0, graphql_mapping_template_1.iff)((0, graphql_mapping_template_1.ref)('ctx.stash.deniedField'), (0, graphql_mapping_template_1.compoundExpression)([(0, graphql_mapping_template_1.set)((0, graphql_mapping_template_1.ref)('result'), (0, graphql_mapping_template_1.obj)({ items: (0, graphql_mapping_template_1.list)([]) })), (0, graphql_mapping_template_1.raw)('#return($result)')])),

(0, graphql_mapping_template_1.set)((0, graphql_mapping_template_1.ref)('lambdaInput.args'), (0, graphql_mapping_template_1.obj)({})),
(0, graphql_mapping_template_1.set)((0, graphql_mapping_template_1.ref)('lambdaInput.table'), (0, graphql_mapping_template_1.str)(tableName)),
(0, graphql_mapping_template_1.set)((0, graphql_mapping_template_1.ref)('lambdaInput.table'), (0, graphql_mapping_template_1.str)(mappedTableName)),
(0, graphql_mapping_template_1.set)((0, graphql_mapping_template_1.ref)('lambdaInput.operation'), (0, graphql_mapping_template_1.str)(operation)),

@@ -62,2 +62,3 @@ (0, graphql_mapping_template_1.set)((0, graphql_mapping_template_1.ref)('lambdaInput.operationName'), (0, graphql_mapping_template_1.str)(operationName)),

this.generateHasOneLambdaRequestTemplate = (tableName, operation, operationName, joinCondition, relatedTypePrimaryKeys, ctx) => {
const mappedTableName = ctx.resourceHelper.getModelNameMapping(tableName);
return (0, graphql_mapping_template_1.printBlock)('Invoke RDS Lambda data source')((0, graphql_mapping_template_1.compoundExpression)([

@@ -67,3 +68,3 @@ (0, graphql_mapping_template_1.iff)((0, graphql_mapping_template_1.ref)('ctx.stash.deniedField'), (0, graphql_mapping_template_1.raw)('#return($util.toJson(null))')),

(0, graphql_mapping_template_1.set)((0, graphql_mapping_template_1.ref)('lambdaInput.args'), (0, graphql_mapping_template_1.obj)({})),
(0, graphql_mapping_template_1.set)((0, graphql_mapping_template_1.ref)('lambdaInput.table'), (0, graphql_mapping_template_1.str)(tableName)),
(0, graphql_mapping_template_1.set)((0, graphql_mapping_template_1.ref)('lambdaInput.table'), (0, graphql_mapping_template_1.str)(mappedTableName)),
(0, graphql_mapping_template_1.set)((0, graphql_mapping_template_1.ref)('lambdaInput.operation'), (0, graphql_mapping_template_1.str)(operation)),

@@ -114,3 +115,2 @@ (0, graphql_mapping_template_1.set)((0, graphql_mapping_template_1.ref)('lambdaInput.operationName'), (0, graphql_mapping_template_1.str)(operationName)),

const dataSource = ctx.api.host.getDataSource(dataSourceName);
const mappedTableName = ctx.resourceHelper.getModelNameMapping(relatedType.name.value);
const connectionCondition = [];

@@ -123,3 +123,3 @@ const primaryKeys = (0, graphql_transformer_core_1.getPrimaryKeyFields)(object);

const resolverResourceId = graphql_transformer_common_1.ResolverResourceIDs.ResolverResourceID(object.name.value, field.name.value);
const resolver = ctx.resolvers.generateQueryResolver(object.name.value, field.name.value, resolverResourceId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(this.generateHasOneLambdaRequestTemplate(mappedTableName, 'GET_FIRST', 'GetItemConnectionQuery', connectionCondition, relatedTypePrimaryKeys, ctx), `${object.name.value}.${field.name.value}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(this.generateSingleItemConnectionLambdaResponseMappingTemplate(), `${object.name.value}.${field.name.value}.res.vtl`));
const resolver = ctx.resolvers.generateQueryResolver(object.name.value, field.name.value, resolverResourceId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(this.generateHasOneLambdaRequestTemplate(relatedType.name.value, 'GET_FIRST', 'GetItemConnectionQuery', connectionCondition, relatedTypePrimaryKeys, ctx), `${object.name.value}.${field.name.value}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(this.generateSingleItemConnectionLambdaResponseMappingTemplate(), `${object.name.value}.${field.name.value}.res.vtl`));
resolver.setScope(ctx.stackManager.getScopeFor(resolverResourceId, CONNECTION_STACK));

@@ -136,3 +136,2 @@ ctx.resolvers.addResolver(object.name.value, field.name.value, resolver);

const dataSource = ctx.api.host.getDataSource(dataSourceName);
const mappedTableName = ctx.resourceHelper.getModelNameMapping(relatedType.name.value);
const connectionCondition = [];

@@ -144,3 +143,3 @@ const primaryKeys = (0, graphql_transformer_core_1.getPrimaryKeyFields)(relatedType);

const resolverResourceId = graphql_transformer_common_1.ResolverResourceIDs.ResolverResourceID(object.name.value, field.name.value);
const resolver = ctx.resolvers.generateQueryResolver(object.name.value, field.name.value, resolverResourceId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(this.generateHasOneLambdaRequestTemplate(mappedTableName, 'GET', 'BelongsToConnectionQuery', connectionCondition, primaryKeys, ctx), `${object.name.value}.${field.name.value}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(this.generateSingleItemConnectionLambdaResponseMappingTemplate(), `${object.name.value}.${field.name.value}.res.vtl`));
const resolver = ctx.resolvers.generateQueryResolver(object.name.value, field.name.value, resolverResourceId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(this.generateHasOneLambdaRequestTemplate(relatedType.name.value, 'GET', 'BelongsToConnectionQuery', connectionCondition, primaryKeys, ctx), `${object.name.value}.${field.name.value}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(this.generateSingleItemConnectionLambdaResponseMappingTemplate(), `${object.name.value}.${field.name.value}.res.vtl`));
resolver.setScope(ctx.stackManager.getScopeFor(resolverResourceId, CONNECTION_STACK));

@@ -147,0 +146,0 @@ ctx.resolvers.addResolver(object.name.value, field.name.value, resolver);

{
"name": "@aws-amplify/graphql-relational-transformer",
"version": "2.5.9-gen2-migration.0",
"version": "2.5.9",
"description": "Amplify GraphQL relational modeling transformers",

@@ -32,17 +32,17 @@ "repository": {

"@aws-amplify/graphql-directives": "1.1.0",
"@aws-amplify/graphql-index-transformer": "2.4.7-gen2-migration.0",
"@aws-amplify/graphql-model-transformer": "2.12.0-gen2-migration.0",
"@aws-amplify/graphql-transformer-core": "2.10.0-gen2-migration.0",
"@aws-amplify/graphql-transformer-interfaces": "3.11.0-gen2-migration.0",
"@aws-amplify/graphql-index-transformer": "2.4.7",
"@aws-amplify/graphql-model-transformer": "2.11.2",
"@aws-amplify/graphql-transformer-core": "2.9.3",
"@aws-amplify/graphql-transformer-interfaces": "3.10.1",
"graphql": "^15.5.0",
"graphql-mapping-template": "4.20.16",
"graphql-transformer-common": "4.32.0-gen2-migration.0",
"graphql-transformer-common": "4.31.1",
"immer": "^9.0.12"
},
"devDependencies": {
"@aws-amplify/graphql-transformer-test-utils": "0.5.6-gen2-migration.0"
"@aws-amplify/graphql-transformer-test-utils": "0.5.6"
},
"peerDependencies": {
"aws-cdk-lib": "^2.80.0",
"constructs": "^10.0.5"
"aws-cdk-lib": "^2.129.0",
"constructs": "^10.3.0"
},

@@ -83,3 +83,3 @@ "jest": {

},
"gitHead": "95431091fe3a13ae97a1f57a0bffb23f49c7e569"
"gitHead": "1cdf6b3886e79240b8c95e3c513e2556a7ef0380"
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc