Socket
Socket
Sign inDemoInstall

@aws-amplify/graphql-model-transformer

Package Overview
Dependencies
56
Maintainers
10
Versions
408
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 2.8.0-gen2-release.0 to 2.8.0-gen2-release-0410.0

6

CHANGELOG.md

@@ -6,2 +6,8 @@ # Change Log

# [2.8.0-gen2-release-0410.0](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-model-transformer@2.8.0-gen2-release.0...@aws-amplify/graphql-model-transformer@2.8.0-gen2-release-0410.0) (2024-04-10)
### Features
- Fetch SNS topic ARN from SQL manifest ([#2345](https://github.com/aws-amplify/amplify-category-api/issues/2345)) ([fca256e](https://github.com/aws-amplify/amplify-category-api/commit/fca256e7cabf5af838b28b26c4ae0c3c8b1583eb))
# [2.8.0-gen2-release.0](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-model-transformer@2.7.1-gen2-release.0...@aws-amplify/graphql-model-transformer@2.8.0-gen2-release.0) (2024-04-03)

@@ -8,0 +14,0 @@

4

lib/resolvers/rds/resolver.d.ts
import { CfnMapping } from 'aws-cdk-lib';
import { Expression } from 'graphql-mapping-template';
import { SQLLambdaResourceNames } from '@aws-amplify/graphql-transformer-core';
import { GraphQLAPIProvider, RDSLayerMapping, TransformerContextProvider, VpcConfig, ProvisionedConcurrencyConfig, SqlModelDataSourceDbConnectionConfig } from '@aws-amplify/graphql-transformer-interfaces';
import { GraphQLAPIProvider, RDSLayerMapping, TransformerContextProvider, VpcConfig, ProvisionedConcurrencyConfig, SqlModelDataSourceDbConnectionConfig, RDSSNSTopicMapping } from '@aws-amplify/graphql-transformer-interfaces';
import { IRole } from 'aws-cdk-lib/aws-iam';

@@ -16,2 +16,3 @@ import { IFunction } from 'aws-cdk-lib/aws-lambda';

export declare const setRDSLayerMappings: (scope: Construct, mapping: RDSLayerMapping, resourceNames: SQLLambdaResourceNames) => CfnMapping;
export declare const setRDSSNSTopicMappings: (scope: Construct, mapping: RDSSNSTopicMapping, resourceNames: SQLLambdaResourceNames) => CfnMapping;
export declare const createRdsLambda: (scope: Construct, apiGraphql: GraphQLAPIProvider, lambdaRole: IRole, layerVersionArn: string, resourceNames: SQLLambdaResourceNames, credentialStorageMethod: CredentialStorageMethod | undefined, environment?: {

@@ -21,2 +22,3 @@ [key: string]: string;

export declare const createLayerVersionCustomResource: (scope: Construct, resourceNames: SQLLambdaResourceNames) => AwsCustomResource;
export declare const createSNSTopicARNCustomResource: (scope: Construct, resourceNames: SQLLambdaResourceNames) => AwsCustomResource;
export declare const createRdsPatchingLambda: (scope: Construct, apiGraphql: GraphQLAPIProvider, lambdaRole: IRole, resourceNames: SQLLambdaResourceNames, environment?: {

@@ -23,0 +25,0 @@ [key: string]: string;

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

Object.defineProperty(exports, "__esModule", { value: true });
exports.constructAuthFilterStatement = exports.constructFieldMappingInput = exports.constructArrayFieldsStatement = exports.constructNonScalarFieldsStatement = exports.getArrayFields = exports.getNonScalarFields = exports.generateDefaultLambdaResponseMappingTemplate = exports.generateGetLambdaResponseTemplate = exports.generateLambdaRequestTemplate = exports.createRdsPatchingLambdaRole = exports.createRdsLambdaRole = exports.createRdsPatchingLambda = exports.createLayerVersionCustomResource = exports.createRdsLambda = exports.setRDSLayerMappings = exports.CredentialStorageMethod = void 0;
exports.constructAuthFilterStatement = exports.constructFieldMappingInput = exports.constructArrayFieldsStatement = exports.constructNonScalarFieldsStatement = exports.getArrayFields = exports.getNonScalarFields = exports.generateDefaultLambdaResponseMappingTemplate = exports.generateGetLambdaResponseTemplate = exports.generateLambdaRequestTemplate = exports.createRdsPatchingLambdaRole = exports.createRdsLambdaRole = exports.createRdsPatchingLambda = exports.createSNSTopicARNCustomResource = exports.createLayerVersionCustomResource = exports.createRdsLambda = exports.setRDSSNSTopicMappings = exports.setRDSLayerMappings = exports.CredentialStorageMethod = void 0;
const path_1 = __importDefault(require("path"));

@@ -29,2 +29,6 @@ const aws_cdk_lib_1 = require("aws-cdk-lib");

exports.setRDSLayerMappings = setRDSLayerMappings;
const setRDSSNSTopicMappings = (scope, mapping, resourceNames) => new aws_cdk_lib_1.CfnMapping(scope, resourceNames.sqlSNSTopicArnMapping, {
mapping,
});
exports.setRDSSNSTopicMappings = setRDSSNSTopicMappings;
const createRdsLambda = (scope, apiGraphql, lambdaRole, layerVersionArn, resourceNames, credentialStorageMethod, environment, sqlLambdaVpcConfig, sqlLambdaProvisionedConcurrencyConfig) => {

@@ -79,5 +83,5 @@ var _a, _b;

const createLayerVersionCustomResource = (scope, resourceNames) => {
const { SQLLayerVersionManifestBucket, SQLLayerVersionManifestBucketRegion, SQLLayerVersionManifestKeyPrefix } = graphql_transformer_common_1.ResourceConstants.RESOURCES;
const { SQLLayerManifestBucket, SQLLayerManifestBucketRegion, SQLLayerVersionManifestKeyPrefix } = graphql_transformer_common_1.ResourceConstants.RESOURCES;
const key = aws_cdk_lib_1.Fn.join('', [SQLLayerVersionManifestKeyPrefix, aws_cdk_lib_1.Fn.ref('AWS::Region')]);
const manifestArn = `arn:aws:s3:::${SQLLayerVersionManifestBucket}/${key}`;
const manifestArn = `arn:aws:s3:::${SQLLayerManifestBucket}/${key}`;
const resourceName = resourceNames.sqlLayerVersionResolverCustomResource;

@@ -89,5 +93,5 @@ const customResource = new custom_resources_1.AwsCustomResource(scope, resourceName, {

action: 'getObject',
region: SQLLayerVersionManifestBucketRegion,
region: SQLLayerManifestBucketRegion,
parameters: {
Bucket: SQLLayerVersionManifestBucket,
Bucket: SQLLayerManifestBucket,
Key: key,

@@ -104,2 +108,26 @@ },

exports.createLayerVersionCustomResource = createLayerVersionCustomResource;
const createSNSTopicARNCustomResource = (scope, resourceNames) => {
const { SQLLayerManifestBucket, SQLLayerManifestBucketRegion, SQLSNSTopicARNManifestKeyPrefix } = graphql_transformer_common_1.ResourceConstants.RESOURCES;
const key = aws_cdk_lib_1.Fn.join('', [SQLSNSTopicARNManifestKeyPrefix, aws_cdk_lib_1.Fn.ref('AWS::Region')]);
const manifestArn = `arn:aws:s3:::${SQLLayerManifestBucket}/${key}`;
const resourceName = resourceNames.sqlSNSTopicARNResolverCustomResource;
const customResource = new custom_resources_1.AwsCustomResource(scope, resourceName, {
resourceType: 'Custom::SQLSNSTopicARNCustomResource',
onUpdate: {
service: 'S3',
action: 'getObject',
region: SQLLayerManifestBucketRegion,
parameters: {
Bucket: SQLLayerManifestBucket,
Key: key,
},
physicalResourceId: custom_resources_1.PhysicalResourceId.of(`${resourceName}-${Date.now().toString()}`),
},
policy: custom_resources_1.AwsCustomResourcePolicy.fromSdkCalls({
resources: [manifestArn],
}),
});
return customResource;
};
exports.createSNSTopicARNCustomResource = createSNSTopicARNCustomResource;
const addVpcEndpoint = (scope, sqlLambdaVpcConfig, serviceSuffix, resourceNames) => {

@@ -106,0 +134,0 @@ const serviceEndpointPrefix = 'com.amazonaws';

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

const graphql_transformer_interfaces_1 = require("@aws-amplify/graphql-transformer-interfaces");
const graphql_transformer_common_1 = require("graphql-transformer-common");
const resolvers_1 = require("../resolvers");

@@ -24,3 +23,2 @@ const rds_1 = require("../resolvers/rds");

const secretEntry = strategy.dbConnectionConfig;
const { AmplifySQLLayerNotificationTopicAccount, AmplifySQLLayerNotificationTopicName } = graphql_transformer_common_1.ResourceConstants.RESOURCES;
const lambdaRoleScope = context.stackManager.getScopeFor(resourceNames.sqlLambdaExecutionRole, resourceNames.sqlStack);

@@ -63,10 +61,3 @@ const lambdaScope = context.stackManager.getScopeFor(resourceNames.sqlLambdaFunction, resourceNames.sqlStack);

});
const topicArn = aws_cdk_lib_1.Fn.join(':', [
'arn',
'aws',
'sns',
aws_cdk_lib_1.Fn.ref('AWS::Region'),
AmplifySQLLayerNotificationTopicAccount,
AmplifySQLLayerNotificationTopicName,
]);
const topicArn = resolveSNSTopicARN(lambdaScope, context, resourceNames);
const patchingSubscriptionScope = context.stackManager.getScopeFor(resourceNames.sqlPatchingSubscription, resourceNames.sqlStack);

@@ -168,2 +159,10 @@ const snsTopic = aws_sns_1.Topic.fromTopicArn(patchingSubscriptionScope, resourceNames.sqlPatchingTopic, topicArn);

};
const resolveSNSTopicARN = (scope, context, resourceNames) => {
if (context.rdsSnsTopicMapping) {
(0, rds_1.setRDSSNSTopicMappings)(scope, context.rdsSnsTopicMapping, resourceNames);
return aws_cdk_lib_1.Fn.findInMap(resourceNames.sqlSNSTopicArnMapping, aws_cdk_lib_1.Fn.ref('AWS::Region'), 'topicArn');
}
const layerVersionCustomResource = (0, rds_1.createSNSTopicARNCustomResource)(scope, resourceNames);
return layerVersionCustomResource.getResponseField('Body');
};
//# sourceMappingURL=rds-model-resource-generator.js.map
{
"name": "@aws-amplify/graphql-model-transformer",
"version": "2.8.0-gen2-release.0",
"version": "2.8.0-gen2-release-0410.0",
"description": "Amplify graphql @model transformer",

@@ -36,7 +36,7 @@ "repository": {

"@aws-amplify/graphql-directives": "1.1.0-gen2-release.0",
"@aws-amplify/graphql-transformer-core": "2.5.2-gen2-release.1",
"@aws-amplify/graphql-transformer-interfaces": "3.6.0-gen2-release.0",
"@aws-amplify/graphql-transformer-core": "2.6.0-gen2-release-0410.0",
"@aws-amplify/graphql-transformer-interfaces": "3.6.0-gen2-release-0410.0",
"graphql": "^15.5.0",
"graphql-mapping-template": "4.20.15",
"graphql-transformer-common": "4.29.1-gen2-release.0"
"graphql-transformer-common": "4.30.0-gen2-release-0410.0"
},

@@ -48,3 +48,3 @@ "peerDependencies": {

"devDependencies": {
"@aws-amplify/graphql-transformer-test-utils": "0.4.8-gen2-release.1",
"@aws-amplify/graphql-transformer-test-utils": "0.5.0-gen2-release-0410.0",
"@aws-sdk/client-dynamodb": "^3.431.0",

@@ -91,3 +91,3 @@ "@types/aws-lambda": "8.10.119",

},
"gitHead": "990369ef2ef303d9abaea74f5c8c24e745af3461"
"gitHead": "b261989e733e47807af4a92c7f9a26be5e36d6ee"
}

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc