Socket
Socket
Sign inDemoInstall

@aws-amplify/graphql-index-transformer

Package Overview
Dependencies
55
Maintainers
10
Versions
369
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 2.3.8 to 2.3.9-gen2-release.0

4

CHANGELOG.md

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

## [2.3.9-gen2-release.0](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-index-transformer@2.4.0-gen2-release.0...@aws-amplify/graphql-index-transformer@2.3.9-gen2-release.0) (2024-03-29)
**Note:** Version bump only for package @aws-amplify/graphql-index-transformer
## [2.3.8](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-index-transformer@2.3.7...@aws-amplify/graphql-index-transformer@2.3.8) (2024-03-28)

@@ -8,0 +12,0 @@

2

lib/resolvers/resolvers.d.ts

@@ -20,4 +20,4 @@ import { TransformerContextProvider, TransformerResolverProvider, ModelDataSourceStrategyDbType } from '@aws-amplify/graphql-transformer-interfaces';

export declare const constructSyncVTL: (syncVTLContent: string, resolver: TransformerResolverProvider) => void;
export declare const generateAuthExpressionForSandboxMode: (enabled: boolean) => string;
export declare const generatePostAuthExpression: (isSandboxModeEnabled: boolean, genericIamAccessEnabled: boolean | undefined) => string;
export declare const getVTLGenerator: (dbType: ModelDataSourceStrategyDbType | undefined) => RDSIndexVTLGenerator | DynamoDBIndexVTLGenerator;
//# sourceMappingURL=resolvers.d.ts.map

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

Object.defineProperty(exports, "__esModule", { value: true });
exports.getVTLGenerator = exports.generateAuthExpressionForSandboxMode = exports.constructSyncVTL = exports.addIndexToResolverSlot = exports.mergeInputsAndDefaultsSnippet = exports.makeQueryResolver = exports.updateResolversForIndex = exports.overrideIndexAtCfnLevel = exports.appendSecondaryIndex = exports.validateSortDirectionInput = exports.setQuerySnippet = exports.ensureCompositeKeySnippet = exports.getResolverObject = exports.attributeTypeFromType = exports.updateResolvers = exports.replaceDdbPrimaryKey = void 0;
exports.getVTLGenerator = exports.generatePostAuthExpression = exports.constructSyncVTL = exports.addIndexToResolverSlot = exports.mergeInputsAndDefaultsSnippet = exports.makeQueryResolver = exports.updateResolversForIndex = exports.overrideIndexAtCfnLevel = exports.appendSecondaryIndex = exports.validateSortDirectionInput = exports.setQuerySnippet = exports.ensureCompositeKeySnippet = exports.getResolverObject = exports.attributeTypeFromType = exports.updateResolvers = exports.replaceDdbPrimaryKey = void 0;
const graphql_model_transformer_1 = require("@aws-amplify/graphql-model-transformer");

@@ -38,2 +38,3 @@ const graphql_transformer_core_1 = require("@aws-amplify/graphql-transformer-core");

const API_KEY = 'API Key Authorization';
const IAM_AUTH_TYPE = 'IAM Authorization';
const replaceDdbPrimaryKey = (config, ctx) => {

@@ -378,3 +379,3 @@ var _a, _b, _c;

])), `${queryTypeName}.${queryField}.res.vtl`));
resolver.addToSlot('postAuth', graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, exports.generateAuthExpressionForSandboxMode)(ctx.transformParameters.sandboxModeEnabled), `${queryTypeName}.${queryField}.{slotName}.{slotIndex}.res.vtl`));
resolver.addToSlot('postAuth', graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, exports.generatePostAuthExpression)(ctx.transformParameters.sandboxModeEnabled, ctx.synthParameters.enableIamAccess), `${queryTypeName}.${queryField}.{slotName}.{slotIndex}.res.vtl`));
resolver.setScope(ctx.stackManager.getScopeFor(resolverResourceId, stackId));

@@ -569,11 +570,19 @@ ctx.resolvers.addResolver(queryTypeName, queryField, resolver);

};
const generateAuthExpressionForSandboxMode = (enabled) => {
let exp;
if (enabled)
exp = (0, graphql_mapping_template_1.iff)((0, graphql_mapping_template_1.notEquals)((0, graphql_mapping_template_1.methodCall)((0, graphql_mapping_template_1.ref)('util.authType')), (0, graphql_mapping_template_1.str)(API_KEY)), (0, graphql_mapping_template_1.methodCall)((0, graphql_mapping_template_1.ref)('util.unauthorized')));
else
exp = (0, graphql_mapping_template_1.methodCall)((0, graphql_mapping_template_1.ref)('util.unauthorized'));
return (0, graphql_mapping_template_1.printBlock)(`Sandbox Mode ${enabled ? 'Enabled' : 'Disabled'}`)((0, graphql_mapping_template_1.compoundExpression)([(0, graphql_mapping_template_1.iff)((0, graphql_mapping_template_1.not)((0, graphql_mapping_template_1.ref)('ctx.stash.get("hasAuth")')), exp), (0, graphql_mapping_template_1.toJson)((0, graphql_mapping_template_1.obj)({}))]));
const generatePostAuthExpression = (isSandboxModeEnabled, genericIamAccessEnabled) => {
const expressions = [];
if (isSandboxModeEnabled) {
expressions.push((0, graphql_mapping_template_1.iff)((0, graphql_mapping_template_1.equals)((0, graphql_mapping_template_1.methodCall)((0, graphql_mapping_template_1.ref)('util.authType')), (0, graphql_mapping_template_1.str)(API_KEY)), (0, graphql_mapping_template_1.ret)((0, graphql_mapping_template_1.toJson)((0, graphql_mapping_template_1.obj)({})))));
}
if (genericIamAccessEnabled) {
const isNonCognitoIAMPrincipal = (0, graphql_mapping_template_1.and)([
(0, graphql_mapping_template_1.equals)((0, graphql_mapping_template_1.ref)('util.authType()'), (0, graphql_mapping_template_1.str)(IAM_AUTH_TYPE)),
(0, graphql_mapping_template_1.methodCall)((0, graphql_mapping_template_1.ref)('util.isNull'), (0, graphql_mapping_template_1.ref)('ctx.identity.cognitoIdentityPoolId')),
(0, graphql_mapping_template_1.methodCall)((0, graphql_mapping_template_1.ref)('util.isNull'), (0, graphql_mapping_template_1.ref)('ctx.identity.cognitoIdentityId')),
]);
expressions.push((0, graphql_mapping_template_1.iff)(isNonCognitoIAMPrincipal, (0, graphql_mapping_template_1.ret)((0, graphql_mapping_template_1.toJson)((0, graphql_mapping_template_1.obj)({})))));
}
expressions.push((0, graphql_mapping_template_1.methodCall)((0, graphql_mapping_template_1.ref)('util.unauthorized')));
return (0, graphql_mapping_template_1.printBlock)(`Sandbox Mode ${isSandboxModeEnabled ? 'Enabled' : 'Disabled'}, IAM Access ${genericIamAccessEnabled ? 'Enabled' : 'Disabled'}`)((0, graphql_mapping_template_1.compoundExpression)([(0, graphql_mapping_template_1.iff)((0, graphql_mapping_template_1.not)((0, graphql_mapping_template_1.ref)('ctx.stash.get("hasAuth")')), (0, graphql_mapping_template_1.compoundExpression)(expressions)), (0, graphql_mapping_template_1.toJson)((0, graphql_mapping_template_1.obj)({}))]));
};
exports.generateAuthExpressionForSandboxMode = generateAuthExpressionForSandboxMode;
exports.generatePostAuthExpression = generatePostAuthExpression;
const getVTLGenerator = (dbType) => {

@@ -580,0 +589,0 @@ switch (dbType) {

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

const utils_1 = require("./utils");
const API_KEY_DIRECTIVE = 'aws_api_key';
const AWS_IAM_DIRECTIVE = 'aws_iam';
function addKeyConditionInputs(config, ctx) {

@@ -244,4 +246,13 @@ const { object, sortKey } = config;

args.push((0, graphql_transformer_common_1.makeInputValueDefinition)('sortDirection', (0, graphql_transformer_common_1.makeNamedType)('ModelSortDirection')));
if (!hasAuth && ctx.transformParameters.sandboxModeEnabled && ctx.authConfig.defaultAuthentication.authenticationType !== 'API_KEY') {
directives.push((0, graphql_transformer_common_1.makeDirective)('aws_api_key', []));
if (!hasAuth) {
if (ctx.transformParameters.sandboxModeEnabled && ctx.synthParameters.enableIamAccess) {
directives.push((0, graphql_transformer_common_1.makeDirective)(API_KEY_DIRECTIVE, []));
directives.push((0, graphql_transformer_common_1.makeDirective)(AWS_IAM_DIRECTIVE, []));
}
else if (ctx.transformParameters.sandboxModeEnabled && ctx.authConfig.defaultAuthentication.authenticationType !== 'API_KEY') {
directives.push((0, graphql_transformer_common_1.makeDirective)(API_KEY_DIRECTIVE, []));
}
else if (ctx.synthParameters.enableIamAccess && ctx.authConfig.defaultAuthentication.authenticationType !== 'AWS_IAM') {
directives.push((0, graphql_transformer_common_1.makeDirective)(AWS_IAM_DIRECTIVE, []));
}
}

@@ -248,0 +259,0 @@ const queryFieldObj = (0, graphql_transformer_common_1.makeConnectionField)(queryField, object.name.value, args, directives);

{
"name": "@aws-amplify/graphql-index-transformer",
"version": "2.3.8",
"version": "2.3.9-gen2-release.0",
"description": "Amplify GraphQL index and key transformers",

@@ -31,12 +31,12 @@ "repository": {

"dependencies": {
"@aws-amplify/graphql-directives": "1.0.1",
"@aws-amplify/graphql-model-transformer": "2.7.0",
"@aws-amplify/graphql-transformer-core": "2.5.1",
"@aws-amplify/graphql-transformer-interfaces": "3.5.0",
"@aws-amplify/graphql-directives": "1.1.0-gen2-release.0",
"@aws-amplify/graphql-model-transformer": "2.7.1-gen2-release.0",
"@aws-amplify/graphql-transformer-core": "2.5.2-gen2-release.0",
"@aws-amplify/graphql-transformer-interfaces": "3.5.1-gen2-release.0",
"graphql": "^15.5.0",
"graphql-mapping-template": "4.20.15",
"graphql-transformer-common": "4.29.0"
"graphql-transformer-common": "4.29.1-gen2-release.0"
},
"devDependencies": {
"@aws-amplify/graphql-transformer-test-utils": "0.4.7"
"@aws-amplify/graphql-transformer-test-utils": "0.4.8-gen2-release.0"
},

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

},
"gitHead": "ac8990dd06d7b6a29c079e84a7c1e23ec5708fc1"
"gitHead": "a550843921e81b923214a9038b0725ac5e6b2b67"
}

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

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc