Socket
Socket
Sign inDemoInstall

@aws-amplify/graphql-transformer-core

Package Overview
Dependencies
Maintainers
9
Versions
415
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

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

Comparing version 3.1.2-ai.0 to 3.1.2-ai.1

lib/types/function-runtime-types.d.ts

28

API.md

@@ -35,2 +35,3 @@ ## API Report File for "@aws-amplify/graphql-transformer-core"

import { FieldNode } from 'graphql';
import { FunctionRuntimeTemplate } from '@aws-amplify/graphql-transformer-interfaces';
import { Grant } from 'aws-cdk-lib/aws-iam';

@@ -49,2 +50,3 @@ import { GraphqlApiBase } from 'aws-cdk-lib/aws-appsync';

import { InterfaceTypeExtensionNode } from 'graphql';
import { JSRuntimeTemplate } from '@aws-amplify/graphql-transformer-interfaces';
import { Location as Location_2 } from 'graphql';

@@ -68,2 +70,3 @@ import { LogConfig } from 'aws-cdk-lib/aws-appsync';

import { RDSSNSTopicMappingProvider } from '@aws-amplify/graphql-transformer-interfaces';
import { S3Asset } from '@aws-amplify/graphql-transformer-interfaces';
import { S3MappingTemplateProvider } from '@aws-amplify/graphql-transformer-interfaces';

@@ -104,2 +107,3 @@ import { SchemaDefinitionNode } from 'graphql';

import { Visibility } from 'aws-cdk-lib/aws-appsync';
import { VTLRuntimeTemplate } from '@aws-amplify/graphql-transformer-interfaces';

@@ -110,2 +114,5 @@ // @public (undocumented)

// @public (undocumented)
export const APPSYNC_JS_RUNTIME: CfnFunctionConfiguration.AppSyncRuntimeProperty;
// @public (undocumented)
export function collectDirectives(sdl: string): DirectiveNode[];

@@ -531,2 +538,6 @@

static inlineTemplateFromString(template: string): InlineTemplate;
// Warning: (ae-forgotten-export) The symbol "S3MappingJSResolverFunctionCode" needs to be exported by the entry point index.d.ts
//
// (undocumented)
static s3MappingFunctionCodeFromString(template: string, templateName: string): S3MappingJSResolverFunctionCode;
// Warning: (ae-forgotten-export) The symbol "S3MappingTemplate" needs to be exported by the entry point index.d.ts

@@ -826,9 +837,11 @@ //

export class TransformerResolver implements TransformerResolverProvider {
constructor(typeName: string, fieldName: string, resolverLogicalId: string, requestMappingTemplate: MappingTemplateProvider, responseMappingTemplate: MappingTemplateProvider, requestSlots: string[], responseSlots: string[], datasource?: DataSourceProvider | undefined, runtime?: CfnFunctionConfiguration.AppSyncRuntimeProperty | undefined);
constructor(typeName: string, fieldName: string, resolverLogicalId: string, mappingTemplate: FunctionRuntimeTemplate, requestSlots: string[], responseSlots: string[], datasource?: DataSourceProvider | undefined, runtime?: CfnFunctionConfiguration.AppSyncRuntimeProperty | undefined);
// (undocumented)
addToSlot: (slotName: string, requestMappingTemplate?: MappingTemplateProvider, responseMappingTemplate?: MappingTemplateProvider, dataSource?: DataSourceProvider, runtime?: CfnFunctionConfiguration.AppSyncRuntimeProperty) => void;
addJsFunctionToSlot: (slotName: string, codeMappingTemplate: MappingTemplateProvider, dataSource?: DataSourceProvider) => void;
// (undocumented)
addVtlFunctionToSlot: (slotName: string, requestMappingTemplate?: MappingTemplateProvider, responseMappingTemplate?: MappingTemplateProvider, dataSource?: DataSourceProvider) => void;
// Warning: (ae-forgotten-export) The symbol "Slot" needs to be exported by the entry point index.d.ts
//
// (undocumented)
findSlot: (slotName: string, requestMappingTemplate?: MappingTemplateProvider, responseMappingTemplate?: MappingTemplateProvider) => Slot | undefined;
findSlot: (slotName: string, mappingTemplate: FunctionRuntimeTemplatePartialVTL) => Slot | undefined;
// (undocumented)

@@ -838,4 +851,6 @@ mapToStack: (stack: Stack) => void;

setScope: (scope: Construct) => void;
// Warning: (ae-forgotten-export) The symbol "FunctionRuntimeTemplatePartialVTL" needs to be exported by the entry point index.d.ts
//
// (undocumented)
slotExists: (slotName: string, requestMappingTemplate?: MappingTemplateProvider, responseMappingTemplate?: MappingTemplateProvider) => boolean;
slotExists: (slotName: string, mappingTemplate: FunctionRuntimeTemplatePartialVTL) => boolean;
// (undocumented)

@@ -846,3 +861,3 @@ synthesize: (context: TransformerContextProvider, api: GraphQLAPIProvider) => void;

// (undocumented)
updateSlot: (slotName: string, requestMappingTemplate?: MappingTemplateProvider, responseMappingTemplate?: MappingTemplateProvider) => void;
updateSlot: (slotName: string, mappingTemplate: FunctionRuntimeTemplatePartialVTL) => void;
}

@@ -876,2 +891,5 @@

// @public (undocumented)
export const VTL_RUNTIME: CfnFunctionConfiguration.AppSyncRuntimeProperty | undefined;
// Warnings were encountered during analysis:

@@ -878,0 +896,0 @@ //

5

lib/appsync-function.d.ts

@@ -1,2 +0,2 @@

import { MappingTemplateProvider } from '@aws-amplify/graphql-transformer-interfaces';
import { FunctionRuntimeTemplate } from '@aws-amplify/graphql-transformer-interfaces';
import { BaseDataSource, CfnFunctionConfiguration } from 'aws-cdk-lib/aws-appsync';

@@ -6,5 +6,4 @@ import { Construct } from 'constructs';

export interface BaseFunctionConfigurationProps {
readonly requestMappingTemplate: MappingTemplateProvider;
readonly responseMappingTemplate: MappingTemplateProvider;
readonly description?: string;
readonly mappingTemplate: FunctionRuntimeTemplate;
}

@@ -11,0 +10,0 @@ export interface FunctionConfigurationProps extends BaseFunctionConfigurationProps {

@@ -11,2 +11,11 @@ import { InlineMappingTemplateProvider, MappingTemplateType, S3Asset, S3MappingFunctionCodeProvider, S3MappingTemplateProvider, AssetProvider } from '@aws-amplify/graphql-transformer-interfaces';

}
export declare class S3MappingJSResolverFunctionCode implements S3MappingTemplateProvider {
readonly type = MappingTemplateType.S3_LOCATION;
asset?: S3Asset;
private content;
readonly name: string;
constructor(content: string, name?: string);
bind(scope: Construct, assetProvider: AssetProvider): string;
getTemplateHash(): string;
}
export declare class S3MappingTemplate implements S3MappingTemplateProvider {

@@ -33,3 +42,4 @@ private content;

static s3MappingTemplateFromString(template: string, templateName: string): S3MappingTemplate;
static s3MappingFunctionCodeFromString(template: string, templateName: string): S3MappingJSResolverFunctionCode;
}
//# sourceMappingURL=template-asset.d.ts.map

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

Object.defineProperty(exports, "__esModule", { value: true });
exports.MappingTemplate = exports.InlineTemplate = exports.S3MappingTemplate = exports.S3MappingFunctionCode = void 0;
exports.MappingTemplate = exports.InlineTemplate = exports.S3MappingTemplate = exports.S3MappingJSResolverFunctionCode = exports.S3MappingFunctionCode = void 0;
const crypto = __importStar(require("crypto"));

@@ -47,2 +47,23 @@ const graphql_transformer_interfaces_1 = require("@aws-amplify/graphql-transformer-interfaces");

exports.S3MappingFunctionCode = S3MappingFunctionCode;
class S3MappingJSResolverFunctionCode {
constructor(content, name) {
this.type = graphql_transformer_interfaces_1.MappingTemplateType.S3_LOCATION;
this.content = content;
const assetHash = crypto.createHash('sha256').update(content).digest('hex');
this.name = name || `function-code-${assetHash}.js`;
}
bind(scope, assetProvider) {
if (!this.asset) {
this.asset = assetProvider.provide(scope, `Code${this.name}`, {
fileContent: this.content,
fileName: this.name,
});
}
return this.asset.s3ObjectUrl;
}
getTemplateHash() {
return crypto.createHash('sha256').update(this.content).digest('base64');
}
}
exports.S3MappingJSResolverFunctionCode = S3MappingJSResolverFunctionCode;
class S3MappingTemplate {

@@ -101,4 +122,8 @@ static fromInlineTemplate(code, templateName) {

}
static s3MappingFunctionCodeFromString(template, templateName) {
const templatePrefix = 'resolvers';
return new S3MappingJSResolverFunctionCode(template, `${templatePrefix}/${templateName}`);
}
}
exports.MappingTemplate = MappingTemplate;
//# sourceMappingURL=template-asset.js.map

@@ -12,3 +12,3 @@ export { constructDataSourceStrategies, constructSqlDirectiveDataSourceStrategies, getModelTypeNames, GraphQLTransform, GraphQLTransformOptions, SyncUtils, } from './transformation';

export { TransformerResolver, StackManager } from './transformer-context';
export { DDB_AMPLIFY_MANAGED_DATASOURCE_STRATEGY, DDB_DB_TYPE, DDB_DEFAULT_DATASOURCE_STRATEGY, ImportAppSyncAPIInputs, ImportedDataSourceConfig, ImportedDataSourceType, ImportedRDSType, MYSQL_DB_TYPE, POSTGRES_DB_TYPE, RDSConnectionSecrets, RDSDataSourceConfig, SQL_SCHEMA_FILE_NAME, } from './types';
export { DDB_AMPLIFY_MANAGED_DATASOURCE_STRATEGY, DDB_DB_TYPE, DDB_DEFAULT_DATASOURCE_STRATEGY, ImportAppSyncAPIInputs, ImportedDataSourceConfig, ImportedDataSourceType, ImportedRDSType, MYSQL_DB_TYPE, POSTGRES_DB_TYPE, RDSConnectionSecrets, RDSDataSourceConfig, SQL_SCHEMA_FILE_NAME, APPSYNC_JS_RUNTIME, VTL_RUNTIME, } from './types';
export declare const getAppSyncServiceExtraDirectives: () => string;

@@ -15,0 +15,0 @@ export { MappingTemplate } from './cdk-compat';

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

exports.isQueryType = exports.isQueryNode = exports.isObjectTypeDefinitionNode = exports.isMutationNode = exports.isModelType = exports.isDynamoDbType = exports.isDynamoDbModel = exports.isDefaultDynamoDbModelDataSourceStrategy = exports.isBuiltInGraphqlNode = exports.isAmplifyDynamoDbModelDataSourceStrategy = exports.getType = exports.getTable = exports.getSubscriptionFilterInputName = exports.getStrategyDbTypeFromTypeNode = exports.getStrategyDbTypeFromModel = exports.getSortKeyFieldNames = exports.getResourceNamesForStrategyName = exports.getResourceNamesForStrategy = exports.getResourceName = exports.getPrimaryKeyFields = exports.getPrimaryKeyFieldNodes = exports.getParameterStoreSecretPath = exports.getNonScalarFields = exports.getModelDataSourceStrategy = exports.getModelDataSourceNameForTypeName = exports.getKeySchema = exports.getImportedRDSTypeFromStrategyDbType = exports.getFilterInputName = exports.getField = exports.getDefaultStrategyNameForDbType = exports.getConnectionName = exports.getConditionInputName = exports.getArrayFields = exports.generateGetArgumentsInput = exports.fieldsWithSqlDirective = exports.DirectiveWrapper = exports.constructNonScalarFieldsStatement = exports.constructFieldMappingInput = exports.constructAuthFilterStatement = exports.constructArrayFieldsStatement = exports.collectDirectivesByTypeNames = exports.collectDirectives = exports.APICategory = exports.ConflictHandlerType = exports.validateModelSchema = exports.SyncUtils = exports.GraphQLTransform = exports.getModelTypeNames = exports.constructSqlDirectiveDataSourceStrategies = exports.constructDataSourceStrategies = void 0;
exports.ObjectDefinitionWrapper = exports.InputObjectDefinitionWrapper = exports.InputFieldWrapper = exports.FieldWrapper = exports.EnumWrapper = exports.MappingTemplate = exports.getAppSyncServiceExtraDirectives = exports.SQL_SCHEMA_FILE_NAME = exports.POSTGRES_DB_TYPE = exports.MYSQL_DB_TYPE = exports.ImportedRDSType = exports.DDB_DEFAULT_DATASOURCE_STRATEGY = exports.DDB_DB_TYPE = exports.DDB_AMPLIFY_MANAGED_DATASOURCE_STRATEGY = exports.StackManager = exports.TransformerResolver = exports.TransformerAuthBase = exports.TransformerPluginBase = exports.TransformerModelEnhancerBase = exports.TransformerModelBase = exports.convertNamedTypeToJSONSchema = exports.GraphQLScalarJSONSchemaDefinition = exports.supportedScalarTypes = exports.isDisallowedScalarType = exports.setResourceName = exports.normalizeDbType = exports.isSqlStrategy = exports.isSqlModel = exports.isSqlDbType = void 0;
exports.ObjectDefinitionWrapper = exports.InputObjectDefinitionWrapper = exports.InputFieldWrapper = exports.FieldWrapper = exports.EnumWrapper = exports.MappingTemplate = exports.getAppSyncServiceExtraDirectives = exports.VTL_RUNTIME = exports.APPSYNC_JS_RUNTIME = exports.SQL_SCHEMA_FILE_NAME = exports.POSTGRES_DB_TYPE = exports.MYSQL_DB_TYPE = exports.ImportedRDSType = exports.DDB_DEFAULT_DATASOURCE_STRATEGY = exports.DDB_DB_TYPE = exports.DDB_AMPLIFY_MANAGED_DATASOURCE_STRATEGY = exports.StackManager = exports.TransformerResolver = exports.TransformerAuthBase = exports.TransformerPluginBase = exports.TransformerModelEnhancerBase = exports.TransformerModelBase = exports.convertNamedTypeToJSONSchema = exports.GraphQLScalarJSONSchemaDefinition = exports.supportedScalarTypes = exports.isDisallowedScalarType = exports.setResourceName = exports.normalizeDbType = exports.isSqlStrategy = exports.isSqlModel = exports.isSqlDbType = void 0;
const graphql_1 = require("graphql");

@@ -104,2 +104,4 @@ const validation_1 = require("./transformation/validation");

Object.defineProperty(exports, "SQL_SCHEMA_FILE_NAME", { enumerable: true, get: function () { return types_1.SQL_SCHEMA_FILE_NAME; } });
Object.defineProperty(exports, "APPSYNC_JS_RUNTIME", { enumerable: true, get: function () { return types_1.APPSYNC_JS_RUNTIME; } });
Object.defineProperty(exports, "VTL_RUNTIME", { enumerable: true, get: function () { return types_1.VTL_RUNTIME; } });
const getAppSyncServiceExtraDirectives = () => {

@@ -106,0 +108,0 @@ return (0, graphql_1.print)(validation_1.EXTRA_DIRECTIVES_DOCUMENT);

@@ -1,2 +0,2 @@

import { DynamoDbDataSourceOptions, MappingTemplateProvider, SearchableDataSourceOptions, TransformHostProvider, VpcConfig } from '@aws-amplify/graphql-transformer-interfaces';
import { DynamoDbDataSourceOptions, FunctionRuntimeTemplate, MappingTemplateProvider, SearchableDataSourceOptions, TransformHostProvider, VpcConfig } from '@aws-amplify/graphql-transformer-interfaces';
import { BaseDataSource, DataSourceOptions, DynamoDbDataSource, HttpDataSource, HttpDataSourceOptions, LambdaDataSource, NoneDataSource, CfnResolver, CfnFunctionConfiguration } from 'aws-cdk-lib/aws-appsync';

@@ -30,4 +30,8 @@ import { ITable } from 'aws-cdk-lib/aws-dynamodb';

addLambdaDataSource: (name: string, lambdaFunction: IFunction, options?: DataSourceOptions, scope?: Construct) => LambdaDataSource;
addAppSyncFunction: (name: string, requestMappingTemplate: MappingTemplateProvider, responseMappingTemplate: MappingTemplateProvider, dataSourceName: string, scope?: Construct, runtime?: CfnFunctionConfiguration.AppSyncRuntimeProperty) => AppSyncFunctionConfiguration;
addResolver: (typeName: string, fieldName: string, requestMappingTemplate: MappingTemplateProvider, responseMappingTemplate: MappingTemplateProvider, resolverLogicalId?: string, dataSourceName?: string, pipelineConfig?: string[], scope?: Construct, runtime?: CfnFunctionConfiguration.AppSyncRuntimeProperty) => CfnResolver;
addAppSyncJsRuntimeFunction: (name: string, codeMappingTemplate: MappingTemplateProvider, dataSourceName: string, scope?: Construct) => AppSyncFunctionConfiguration;
addAppSyncVtlRuntimeFunction: (name: string, requestMappingTemplate: MappingTemplateProvider, responseMappingTemplate: MappingTemplateProvider, dataSourceName: string, scope?: Construct) => AppSyncFunctionConfiguration;
addAppSyncFunction: (name: string, mappingTemplate: FunctionRuntimeTemplate, dataSourceName: string, scope?: Construct, runtime?: CfnFunctionConfiguration.AppSyncRuntimeProperty) => AppSyncFunctionConfiguration;
addJsRuntimeResolver: (typeName: string, fieldName: string, codeMappingTemplate: MappingTemplateProvider, resolverLogicalId?: string, dataSourceName?: string, pipelineConfig?: string[], scope?: Construct) => CfnResolver;
addVtlRuntimeResolver: (typeName: string, fieldName: string, requestMappingTemplate: MappingTemplateProvider, responseMappingTemplate: MappingTemplateProvider, resolverLogicalId?: string, dataSourceName?: string, pipelineConfig?: string[], scope?: Construct) => CfnResolver;
addResolver: (typeName: string, fieldName: string, mappingTemplate: FunctionRuntimeTemplate, resolverLogicalId?: string, dataSourceName?: string, pipelineConfig?: string[], scope?: Construct, runtime?: CfnFunctionConfiguration.AppSyncRuntimeProperty) => CfnResolver;
addLambdaFunction: (functionName: string, functionKey: string, handlerName: string, filePath: string, runtime: Runtime, layers?: ILayerVersion[], role?: IRole, environment?: {

@@ -41,3 +45,5 @@ [key: string]: string;

protected doAddLambdaDataSource(id: string, lambdaFunction: IFunction, options?: DataSourceOptions, scope?: Construct): LambdaDataSource;
private getMappingTemplateHash;
private bindMappingTemplate;
}
//# sourceMappingURL=transform-host.d.ts.map

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

const function_runtime_1 = require("./utils/function-runtime");
const types_1 = require("./types");
class DefaultTransformHost {

@@ -63,3 +64,9 @@ constructor(options) {

};
this.addAppSyncFunction = (name, requestMappingTemplate, responseMappingTemplate, dataSourceName, scope, runtime) => {
this.addAppSyncJsRuntimeFunction = (name, codeMappingTemplate, dataSourceName, scope) => {
return this.addAppSyncFunction(name, { codeMappingTemplate }, dataSourceName, scope, types_1.APPSYNC_JS_RUNTIME);
};
this.addAppSyncVtlRuntimeFunction = (name, requestMappingTemplate, responseMappingTemplate, dataSourceName, scope) => {
return this.addAppSyncFunction(name, { requestMappingTemplate, responseMappingTemplate }, dataSourceName, scope, types_1.VTL_RUNTIME);
};
this.addAppSyncFunction = (name, mappingTemplate, dataSourceName, scope, runtime) => {
if (dataSourceName && !aws_cdk_lib_1.Token.isUnresolved(dataSourceName) && !this.dataSources.has(dataSourceName)) {

@@ -69,6 +76,6 @@ throw new Error(`DataSource ${dataSourceName} is missing in the API`);

const dataSource = this.dataSources.get(dataSourceName);
const hashes = this.getMappingTemplateHash(mappingTemplate);
const obj = {
dataSource: dataSourceName,
requestMappingTemplate: requestMappingTemplate.getTemplateHash(),
responseMappingTemplate: responseMappingTemplate.getTemplateHash(),
...hashes,
};

@@ -78,4 +85,3 @@ const slotHash = (0, object_hash_1.default)(obj);

const appsyncFunction = this.appsyncFunctions.get(slotHash);
requestMappingTemplate.bind(appsyncFunction, this.api.assetProvider);
responseMappingTemplate.bind(appsyncFunction, this.api.assetProvider);
this.bindMappingTemplate(mappingTemplate, appsyncFunction, this.api.assetProvider, runtime);
return appsyncFunction;

@@ -86,4 +92,3 @@ }

dataSource: dataSource || dataSourceName,
requestMappingTemplate,
responseMappingTemplate,
mappingTemplate,
runtime,

@@ -94,3 +99,9 @@ });

};
this.addResolver = (typeName, fieldName, requestMappingTemplate, responseMappingTemplate, resolverLogicalId, dataSourceName, pipelineConfig, scope, runtime) => {
this.addJsRuntimeResolver = (typeName, fieldName, codeMappingTemplate, resolverLogicalId, dataSourceName, pipelineConfig, scope) => {
return this.addResolver(typeName, fieldName, { codeMappingTemplate }, resolverLogicalId, dataSourceName, pipelineConfig, scope, types_1.APPSYNC_JS_RUNTIME);
};
this.addVtlRuntimeResolver = (typeName, fieldName, requestMappingTemplate, responseMappingTemplate, resolverLogicalId, dataSourceName, pipelineConfig, scope) => {
return this.addResolver(typeName, fieldName, { requestMappingTemplate, responseMappingTemplate }, resolverLogicalId, dataSourceName, pipelineConfig, scope, types_1.VTL_RUNTIME);
};
this.addResolver = (typeName, fieldName, mappingTemplate, resolverLogicalId, dataSourceName, pipelineConfig, scope, runtime) => {
if (dataSourceName && !aws_cdk_lib_1.Token.isUnresolved(dataSourceName) && !this.dataSources.has(dataSourceName)) {

@@ -102,4 +113,3 @@ throw new Error(`DataSource ${dataSourceName} is missing in the API`);

const runtimeSpecificProps = (0, function_runtime_1.getRuntimeSpecificFunctionProps)(this.api, {
requestMappingTemplate,
responseMappingTemplate,
mappingTemplate,
runtime,

@@ -250,4 +260,27 @@ api: this.api,

}
getMappingTemplateHash(mappingTemplate) {
var _a, _b;
const isJsRuntimeTemplate = (mappingTemplate) => {
return mappingTemplate.codeMappingTemplate !== undefined;
};
return isJsRuntimeTemplate(mappingTemplate)
? { codeMappingTemplate: mappingTemplate.codeMappingTemplate.getTemplateHash() }
: {
requestMappingTemplate: (_a = mappingTemplate.requestMappingTemplate) === null || _a === void 0 ? void 0 : _a.getTemplateHash(),
responseMappingTemplate: (_b = mappingTemplate.responseMappingTemplate) === null || _b === void 0 ? void 0 : _b.getTemplateHash(),
};
}
bindMappingTemplate(mappingTemplate, functionConfiguration, assetProvider, runtime) {
if ((0, function_runtime_1.isJsResolverFnRuntime)(runtime)) {
const { codeMappingTemplate } = mappingTemplate;
codeMappingTemplate.bind(functionConfiguration, assetProvider);
}
else {
const { requestMappingTemplate, responseMappingTemplate } = mappingTemplate;
requestMappingTemplate && requestMappingTemplate.bind(functionConfiguration, assetProvider);
responseMappingTemplate && responseMappingTemplate.bind(functionConfiguration, assetProvider);
}
}
}
exports.DefaultTransformHost = DefaultTransformHost;
//# sourceMappingURL=transform-host.js.map

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

: undefined;
resolver.addToSlot(slot.slotName, requestTemplate, responseTemplate);
resolver.addVtlFunctionToSlot(slot.slotName, requestTemplate, responseTemplate);
});

@@ -269,0 +269,0 @@ resolver.synthesize(context, api);

@@ -1,8 +0,8 @@

import { AppSyncFunctionConfigurationProvider, DataSourceProvider, GraphQLAPIProvider, MappingTemplateProvider, TransformerContextProvider, TransformerResolverProvider, TransformerResolversManagerProvider } from '@aws-amplify/graphql-transformer-interfaces';
import { AppSyncFunctionConfigurationProvider, DataSourceProvider, FunctionRuntimeTemplate, GraphQLAPIProvider, JSRuntimeTemplate, MappingTemplateProvider, TransformerContextProvider, TransformerResolverProvider, TransformerResolversManagerProvider, VTLRuntimeTemplate } from '@aws-amplify/graphql-transformer-interfaces';
import { CfnFunctionConfiguration } from 'aws-cdk-lib/aws-appsync';
import { Stack } from 'aws-cdk-lib';
import { Construct } from 'constructs';
type FunctionRuntimeTemplatePartialVTL = Partial<VTLRuntimeTemplate> | JSRuntimeTemplate;
type Slot = {
requestMappingTemplate?: MappingTemplateProvider;
responseMappingTemplate?: MappingTemplateProvider;
mappingTemplate?: FunctionRuntimeTemplatePartialVTL;
dataSource?: DataSourceProvider;

@@ -27,4 +27,3 @@ runtime?: CfnFunctionConfiguration.AppSyncRuntimeProperty;

private resolverLogicalId;
private requestMappingTemplate;
private responseMappingTemplate;
private mappingTemplate;
private requestSlots;

@@ -37,9 +36,11 @@ private responseSlots;

private scope?;
constructor(typeName: string, fieldName: string, resolverLogicalId: string, requestMappingTemplate: MappingTemplateProvider, responseMappingTemplate: MappingTemplateProvider, requestSlots: string[], responseSlots: string[], datasource?: DataSourceProvider | undefined, runtime?: CfnFunctionConfiguration.AppSyncRuntimeProperty | undefined);
constructor(typeName: string, fieldName: string, resolverLogicalId: string, mappingTemplate: FunctionRuntimeTemplate, requestSlots: string[], responseSlots: string[], datasource?: DataSourceProvider | undefined, runtime?: CfnFunctionConfiguration.AppSyncRuntimeProperty | undefined);
mapToStack: (stack: Stack) => void;
setScope: (scope: Construct) => void;
addToSlot: (slotName: string, requestMappingTemplate?: MappingTemplateProvider, responseMappingTemplate?: MappingTemplateProvider, dataSource?: DataSourceProvider, runtime?: CfnFunctionConfiguration.AppSyncRuntimeProperty) => void;
slotExists: (slotName: string, requestMappingTemplate?: MappingTemplateProvider, responseMappingTemplate?: MappingTemplateProvider) => boolean;
findSlot: (slotName: string, requestMappingTemplate?: MappingTemplateProvider, responseMappingTemplate?: MappingTemplateProvider) => Slot | undefined;
updateSlot: (slotName: string, requestMappingTemplate?: MappingTemplateProvider, responseMappingTemplate?: MappingTemplateProvider) => void;
addJsFunctionToSlot: (slotName: string, codeMappingTemplate: MappingTemplateProvider, dataSource?: DataSourceProvider) => void;
addVtlFunctionToSlot: (slotName: string, requestMappingTemplate?: MappingTemplateProvider, responseMappingTemplate?: MappingTemplateProvider, dataSource?: DataSourceProvider) => void;
private addToSlot;
slotExists: (slotName: string, mappingTemplate: FunctionRuntimeTemplatePartialVTL) => boolean;
findSlot: (slotName: string, mappingTemplate: FunctionRuntimeTemplatePartialVTL) => Slot | undefined;
updateSlot: (slotName: string, mappingTemplate: FunctionRuntimeTemplatePartialVTL) => void;
synthesize: (context: TransformerContextProvider, api: GraphQLAPIProvider) => void;

@@ -50,4 +51,5 @@ synthesizeResolvers: (scope: Construct, api: GraphQLAPIProvider, slotsNames: string[]) => AppSyncFunctionConfigurationProvider[];

private createStashStatementGenerator;
private getMappingTemplateNames;
}
export {};
//# sourceMappingURL=resolver.d.ts.map

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

const function_runtime_1 = require("../utils/function-runtime");
const types_1 = require("../types");
exports.NONE_DATA_SOURCE_NAME = 'NONE_DS';

@@ -39,5 +40,5 @@ class ResolverManager {

this.resolvers = new Map();
this.generateQueryResolver = (typeName, fieldName, resolverLogicalId, dataSource, requestMappingTemplate, responseMappingTemplate) => new TransformerResolver(typeName, fieldName, resolverLogicalId, requestMappingTemplate, responseMappingTemplate, ['init', 'preAuth', 'auth', 'postAuth', 'preDataLoad'], ['postDataLoad', 'finish'], dataSource);
this.generateMutationResolver = (typeName, fieldName, resolverLogicalId, dataSource, requestMappingTemplate, responseMappingTemplate) => new TransformerResolver(typeName, fieldName, resolverLogicalId, requestMappingTemplate, responseMappingTemplate, ['init', 'preAuth', 'auth', 'postAuth', 'preUpdate'], ['postUpdate', 'finish'], dataSource);
this.generateSubscriptionResolver = (typeName, fieldName, resolverLogicalId, requestMappingTemplate, responseMappingTemplate) => new TransformerResolver(typeName, fieldName, resolverLogicalId, requestMappingTemplate, responseMappingTemplate, ['init', 'preAuth', 'auth', 'postAuth', 'preSubscribe'], []);
this.generateQueryResolver = (typeName, fieldName, resolverLogicalId, dataSource, requestMappingTemplate, responseMappingTemplate) => new TransformerResolver(typeName, fieldName, resolverLogicalId, { requestMappingTemplate, responseMappingTemplate }, ['init', 'preAuth', 'auth', 'postAuth', 'preDataLoad'], ['postDataLoad', 'finish'], dataSource);
this.generateMutationResolver = (typeName, fieldName, resolverLogicalId, dataSource, requestMappingTemplate, responseMappingTemplate) => new TransformerResolver(typeName, fieldName, resolverLogicalId, { requestMappingTemplate, responseMappingTemplate }, ['init', 'preAuth', 'auth', 'postAuth', 'preUpdate'], ['postUpdate', 'finish'], dataSource);
this.generateSubscriptionResolver = (typeName, fieldName, resolverLogicalId, requestMappingTemplate, responseMappingTemplate) => new TransformerResolver(typeName, fieldName, resolverLogicalId, { requestMappingTemplate, responseMappingTemplate }, ['init', 'preAuth', 'auth', 'postAuth', 'preSubscribe'], []);
this.addResolver = (typeName, fieldName, resolver) => {

@@ -75,8 +76,7 @@ const key = `${typeName}.${fieldName}`;

class TransformerResolver {
constructor(typeName, fieldName, resolverLogicalId, requestMappingTemplate, responseMappingTemplate, requestSlots, responseSlots, datasource, runtime) {
constructor(typeName, fieldName, resolverLogicalId, mappingTemplate, requestSlots, responseSlots, datasource, runtime) {
this.typeName = typeName;
this.fieldName = fieldName;
this.resolverLogicalId = resolverLogicalId;
this.requestMappingTemplate = requestMappingTemplate;
this.responseMappingTemplate = responseMappingTemplate;
this.mappingTemplate = mappingTemplate;
this.requestSlots = requestSlots;

@@ -93,3 +93,9 @@ this.responseSlots = responseSlots;

};
this.addToSlot = (slotName, requestMappingTemplate, responseMappingTemplate, dataSource, runtime) => {
this.addJsFunctionToSlot = (slotName, codeMappingTemplate, dataSource) => {
this.addToSlot(slotName, { codeMappingTemplate }, dataSource, types_1.APPSYNC_JS_RUNTIME);
};
this.addVtlFunctionToSlot = (slotName, requestMappingTemplate, responseMappingTemplate, dataSource) => {
this.addToSlot(slotName, { requestMappingTemplate, responseMappingTemplate }, dataSource, types_1.VTL_RUNTIME);
};
this.addToSlot = (slotName, mappingTemplate, dataSource, runtime) => {
if (!this.slotNames.has(slotName)) {

@@ -105,9 +111,8 @@ throw new Error(`Resolver is missing slot ${slotName}`);

}
if (this.slotExists(slotName, requestMappingTemplate, responseMappingTemplate)) {
this.updateSlot(slotName, requestMappingTemplate, responseMappingTemplate);
if (this.slotExists(slotName, mappingTemplate)) {
this.updateSlot(slotName, mappingTemplate);
}
else {
slotEntry.push({
requestMappingTemplate,
responseMappingTemplate,
mappingTemplate,
dataSource,

@@ -119,9 +124,7 @@ runtime,

};
this.slotExists = (slotName, requestMappingTemplate, responseMappingTemplate) => this.findSlot(slotName, requestMappingTemplate, responseMappingTemplate) !== undefined;
this.findSlot = (slotName, requestMappingTemplate, responseMappingTemplate) => {
var _a, _b, _c, _d, _e, _f;
this.slotExists = (slotName, mappingTemplate) => this.findSlot(slotName, mappingTemplate) !== undefined;
this.findSlot = (slotName, mappingTemplate) => {
const slotEntries = this.slotMap.get(slotName);
const requestMappingTemplateName = (_a = requestMappingTemplate === null || requestMappingTemplate === void 0 ? void 0 : requestMappingTemplate.name) !== null && _a !== void 0 ? _a : '';
const responseMappingTemplateName = (_b = responseMappingTemplate === null || responseMappingTemplate === void 0 ? void 0 : responseMappingTemplate.name) !== null && _b !== void 0 ? _b : '';
if (!slotEntries || requestMappingTemplateName.includes('{slotIndex}') || responseMappingTemplateName.includes('{slotIndex}')) {
const mappingTemplateNames = this.getMappingTemplateNames(mappingTemplate);
if (!slotEntries || mappingTemplateNames.find((name) => name.includes('{slotIndex}'))) {
return;

@@ -131,11 +134,8 @@ }

for (const slotEntry of slotEntries) {
const [slotEntryRequestMappingTemplate, slotEntryResponseMappingTemplate] = [
(_d = (_c = slotEntry.requestMappingTemplate) === null || _c === void 0 ? void 0 : _c.name) !== null && _d !== void 0 ? _d : 'NOT-FOUND',
(_f = (_e = slotEntry.responseMappingTemplate) === null || _e === void 0 ? void 0 : _e.name) !== null && _f !== void 0 ? _f : 'NOT-FOUND',
].map((name) => name.replace('{slotName}', slotName).replace('{slotIndex}', slotIndex));
if (slotEntryRequestMappingTemplate === '' && slotEntryResponseMappingTemplate === '') {
const slotEntryMappingTemplateNames = this.getMappingTemplateNames(slotEntry.mappingTemplate, 'NOT-FOUND').map((name) => name.replace('{slotName}', slotName).replace('{slotIndex}', `${slotIndex}`));
if (slotEntryMappingTemplateNames.every((name) => name === '')) {
continue;
}
if (slotEntryRequestMappingTemplate === requestMappingTemplateName ||
slotEntryResponseMappingTemplate === responseMappingTemplateName) {
if (slotEntryMappingTemplateNames.length === mappingTemplateNames.length &&
slotEntryMappingTemplateNames.every((element, index) => element === mappingTemplateNames[index])) {
return slotEntry;

@@ -146,8 +146,33 @@ }

};
this.updateSlot = (slotName, requestMappingTemplate, responseMappingTemplate) => {
const slot = this.findSlot(slotName, requestMappingTemplate, responseMappingTemplate);
if (slot) {
slot.requestMappingTemplate = (requestMappingTemplate === null || requestMappingTemplate === void 0 ? void 0 : requestMappingTemplate.name) ? requestMappingTemplate : slot.requestMappingTemplate;
slot.responseMappingTemplate = (responseMappingTemplate === null || responseMappingTemplate === void 0 ? void 0 : responseMappingTemplate.name) ? responseMappingTemplate : slot.responseMappingTemplate;
this.updateSlot = (slotName, mappingTemplate) => {
const slot = this.findSlot(slotName, mappingTemplate);
if (!slot) {
return;
}
if ((0, function_runtime_1.isJsRuntimeTemplate)(mappingTemplate)) {
slot.mappingTemplate = mappingTemplate;
slot.runtime = types_1.APPSYNC_JS_RUNTIME;
}
else {
const { requestMappingTemplate, responseMappingTemplate } = mappingTemplate;
if (requestMappingTemplate && responseMappingTemplate) {
slot.mappingTemplate = { requestMappingTemplate, responseMappingTemplate };
}
if ((0, function_runtime_1.isJsRuntimeTemplate)(slot.mappingTemplate)) {
slot.mappingTemplate = mappingTemplate;
slot.runtime = types_1.VTL_RUNTIME;
}
else if (slot.mappingTemplate) {
const { requestMappingTemplate: slotRequestMappingTemplate, responseMappingTemplate: slotResponseMappingTemplate } = slot.mappingTemplate;
slot.mappingTemplate.requestMappingTemplate = requestMappingTemplate.name
? requestMappingTemplate
: slotRequestMappingTemplate;
slot.mappingTemplate.responseMappingTemplate = responseMappingTemplate.name
? responseMappingTemplate
: slotResponseMappingTemplate;
}
else {
slot.mappingTemplate = mappingTemplate;
}
}
};

@@ -160,4 +185,12 @@ this.synthesize = (context, api) => {

const responseFns = this.synthesizeResolvers(scope, api, this.responseSlots);
[this.requestMappingTemplate, this.requestMappingTemplate].map((template) => this.substituteSlotInfo(template, 'main', 0));
const dataSourceProviderFn = api.host.addAppSyncFunction((0, graphql_transformer_common_1.toPascalCase)([this.typeName, this.fieldName, 'DataResolverFn']), this.requestMappingTemplate, this.responseMappingTemplate, ((_a = this.datasource) === null || _a === void 0 ? void 0 : _a.name) || exports.NONE_DATA_SOURCE_NAME, scope, this.runtime);
if ((0, function_runtime_1.isJsRuntimeTemplate)(this.mappingTemplate)) {
const { codeMappingTemplate } = this.mappingTemplate;
this.substituteSlotInfo(codeMappingTemplate, 'main', 0);
}
else {
const { requestMappingTemplate, responseMappingTemplate } = this.mappingTemplate;
requestMappingTemplate && this.substituteSlotInfo(requestMappingTemplate, 'main', 0);
responseMappingTemplate && this.substituteSlotInfo(responseMappingTemplate, 'main', 0);
}
const dataSourceProviderFn = api.host.addAppSyncFunction((0, graphql_transformer_common_1.toPascalCase)([this.typeName, this.fieldName, 'DataResolverFn']), this.mappingTemplate, ((_a = this.datasource) === null || _a === void 0 ? void 0 : _a.name) || exports.NONE_DATA_SOURCE_NAME, scope, this.runtime);
const { stashString, stashExpression } = this.createStashStatementGenerator(this.runtime);

@@ -297,3 +330,11 @@ let dataSourceType = 'NONE';

: '$util.toJson($ctx.prev.result)';
api.host.addResolver(this.typeName, this.fieldName, cdk_compat_1.MappingTemplate.inlineTemplateFromString(initResolver), cdk_compat_1.MappingTemplate.inlineTemplateFromString(initResponseResolver), this.resolverLogicalId, undefined, [...requestFns, dataSourceProviderFn, ...responseFns].map((fn) => fn.functionId), scope, this.runtime);
const initResolverMappingTemplate = (0, function_runtime_1.isJsResolverFnRuntime)(this.runtime)
? {
codeMappingTemplate: cdk_compat_1.MappingTemplate.inlineTemplateFromString(initResolver + '\n\n' + initResponseResolver),
}
: {
requestMappingTemplate: cdk_compat_1.MappingTemplate.inlineTemplateFromString(initResolver),
responseMappingTemplate: cdk_compat_1.MappingTemplate.inlineTemplateFromString(initResponseResolver),
};
api.host.addResolver(this.typeName, this.fieldName, initResolverMappingTemplate, this.resolverLogicalId, undefined, [...requestFns, dataSourceProviderFn, ...responseFns].map((fn) => fn.functionId), scope, this.runtime);
};

@@ -308,6 +349,20 @@ this.synthesizeResolvers = (scope, api, slotsNames) => {

const name = `${this.typeName}${this.fieldName}${slotName}${index++}Function`;
const { requestMappingTemplate, responseMappingTemplate, dataSource } = slotItem;
requestMappingTemplate && this.substituteSlotInfo(requestMappingTemplate, slotName, index);
responseMappingTemplate && this.substituteSlotInfo(responseMappingTemplate, slotName, index);
const fn = api.host.addAppSyncFunction(name, requestMappingTemplate || cdk_compat_1.MappingTemplate.inlineTemplateFromString('$util.toJson({})'), responseMappingTemplate || cdk_compat_1.MappingTemplate.inlineTemplateFromString('$util.toJson({})'), (dataSource === null || dataSource === void 0 ? void 0 : dataSource.name) || exports.NONE_DATA_SOURCE_NAME, scope, slotItem.runtime);
const { mappingTemplate, dataSource } = slotItem;
let template;
if ((0, function_runtime_1.isJsRuntimeTemplate)(mappingTemplate)) {
const { codeMappingTemplate } = mappingTemplate;
this.substituteSlotInfo(codeMappingTemplate, slotName, index);
template = { codeMappingTemplate };
}
else {
const { requestMappingTemplate, responseMappingTemplate } = mappingTemplate;
requestMappingTemplate && this.substituteSlotInfo(requestMappingTemplate, slotName, index);
responseMappingTemplate && this.substituteSlotInfo(responseMappingTemplate, slotName, index);
const defaultVtlTemplate = cdk_compat_1.MappingTemplate.inlineTemplateFromString('$util.toJson({})');
template = {
requestMappingTemplate: requestMappingTemplate || defaultVtlTemplate,
responseMappingTemplate: responseMappingTemplate || defaultVtlTemplate,
};
}
const fn = api.host.addAppSyncFunction(name, template, (dataSource === null || dataSource === void 0 ? void 0 : dataSource.name) || exports.NONE_DATA_SOURCE_NAME, scope, slotItem.runtime);
appSyncFunctions.push(fn);

@@ -328,8 +383,11 @@ }

}
if (!requestMappingTemplate) {
if (!(0, function_runtime_1.isJsResolverFnRuntime)(runtime) && !('requestMappingTemplate' in mappingTemplate)) {
throw new errors_1.InvalidDirectiveError('requestMappingTemplate is required');
}
if (!responseMappingTemplate) {
if (!(0, function_runtime_1.isJsResolverFnRuntime)(runtime) && !('responseMappingTemplate' in mappingTemplate)) {
throw new errors_1.InvalidDirectiveError('responseMappingTemplate is required');
}
if ((0, function_runtime_1.isJsResolverFnRuntime)(runtime) && !('codeMappingTemplate' in mappingTemplate)) {
throw new errors_1.InvalidDirectiveError('codeMappingTemplate is required for JavaScript resolver function runtimes');
}
this.slotNames = new Set([...requestSlots, ...responseSlots]);

@@ -376,4 +434,15 @@ }

}
getMappingTemplateNames(mappingTemplate, fallbackName = '') {
var _a, _b, _c, _d, _e;
if ((0, function_runtime_1.isJsRuntimeTemplate)(mappingTemplate)) {
return [(_a = mappingTemplate.codeMappingTemplate.name) !== null && _a !== void 0 ? _a : fallbackName];
}
else {
const requestMappingTemplateName = (_c = (_b = mappingTemplate === null || mappingTemplate === void 0 ? void 0 : mappingTemplate.requestMappingTemplate) === null || _b === void 0 ? void 0 : _b.name) !== null && _c !== void 0 ? _c : fallbackName;
const responseMappingTemplateName = (_e = (_d = mappingTemplate === null || mappingTemplate === void 0 ? void 0 : mappingTemplate.responseMappingTemplate) === null || _d === void 0 ? void 0 : _d.name) !== null && _e !== void 0 ? _e : fallbackName;
return [requestMappingTemplateName, responseMappingTemplateName];
}
}
}
exports.TransformerResolver = TransformerResolver;
//# sourceMappingURL=resolver.js.map
export { ImportAppSyncAPIInputs, ImportedDataSourceType, ImportedRDSType, SQL_SCHEMA_FILE_NAME, RDSConnectionSecrets, ImportedDataSourceConfig, RDSDataSourceConfig, } from './import-appsync-api-types';
export { APPSYNC_JS_RUNTIME, VTL_RUNTIME } from './function-runtime-types';
export * from './model-datasource-strategies';
//# sourceMappingURL=index.d.ts.map

@@ -17,7 +17,10 @@ "use strict";

Object.defineProperty(exports, "__esModule", { value: true });
exports.SQL_SCHEMA_FILE_NAME = exports.ImportedRDSType = void 0;
exports.VTL_RUNTIME = exports.APPSYNC_JS_RUNTIME = exports.SQL_SCHEMA_FILE_NAME = exports.ImportedRDSType = void 0;
var import_appsync_api_types_1 = require("./import-appsync-api-types");
Object.defineProperty(exports, "ImportedRDSType", { enumerable: true, get: function () { return import_appsync_api_types_1.ImportedRDSType; } });
Object.defineProperty(exports, "SQL_SCHEMA_FILE_NAME", { enumerable: true, get: function () { return import_appsync_api_types_1.SQL_SCHEMA_FILE_NAME; } });
var function_runtime_types_1 = require("./function-runtime-types");
Object.defineProperty(exports, "APPSYNC_JS_RUNTIME", { enumerable: true, get: function () { return function_runtime_types_1.APPSYNC_JS_RUNTIME; } });
Object.defineProperty(exports, "VTL_RUNTIME", { enumerable: true, get: function () { return function_runtime_types_1.VTL_RUNTIME; } });
__exportStar(require("./model-datasource-strategies"), exports);
//# sourceMappingURL=index.js.map

@@ -1,2 +0,2 @@

import { MappingTemplateProvider } from '@aws-amplify/graphql-transformer-interfaces';
import { FunctionRuntimeTemplate, JSRuntimeTemplate, VTLRuntimeTemplate } from '@aws-amplify/graphql-transformer-interfaces';
import { CfnFunctionConfiguration } from 'aws-cdk-lib/aws-appsync';

@@ -13,10 +13,11 @@ import { GraphQLApi } from '../graphql-api';

code?: string;
codeS3Location?: string;
};
export declare const getRuntimeSpecificFunctionProps: (scope: Construct, props: {
requestMappingTemplate: MappingTemplateProvider;
responseMappingTemplate: MappingTemplateProvider;
mappingTemplate: FunctionRuntimeTemplate;
runtime?: CfnFunctionConfiguration.AppSyncRuntimeProperty;
api: GraphQLApi;
}) => RuntimeSpecificFunctionProps;
export declare const isJsRuntimeTemplate: (mappingTemplate?: Partial<VTLRuntimeTemplate> | JSRuntimeTemplate) => mappingTemplate is JSRuntimeTemplate;
export {};
//# sourceMappingURL=function-runtime.d.ts.map
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getRuntimeSpecificFunctionProps = exports.isJsResolverFnRuntime = void 0;
exports.isJsRuntimeTemplate = exports.getRuntimeSpecificFunctionProps = exports.isJsResolverFnRuntime = void 0;
const graphql_transformer_interfaces_1 = require("@aws-amplify/graphql-transformer-interfaces");
const cdk_compat_1 = require("../cdk-compat");

@@ -8,11 +9,16 @@ const isJsResolverFnRuntime = (runtime) => (runtime === null || runtime === void 0 ? void 0 : runtime.name) === 'APPSYNC_JS';

const getRuntimeSpecificFunctionProps = (scope, props) => {
const { requestMappingTemplate, responseMappingTemplate, runtime, api } = props;
const requestTemplateLocation = requestMappingTemplate.bind(scope, api.assetProvider);
const responseTemplateLocation = responseMappingTemplate.bind(scope, api.assetProvider);
if ((0, exports.isJsResolverFnRuntime)(runtime)) {
return {
runtime,
code: requestTemplateLocation + '\n\n' + responseTemplateLocation,
};
const { mappingTemplate, runtime, api } = props;
if ((0, exports.isJsRuntimeTemplate)(mappingTemplate)) {
const { codeMappingTemplate } = mappingTemplate;
if (!(0, exports.isJsResolverFnRuntime)(runtime)) {
throw new Error('Runtime provided with codeMappingTemplate is not a JavaScript runtime');
}
const codeTemplateLocation = codeMappingTemplate.bind(scope, api.assetProvider);
return codeMappingTemplate.type === graphql_transformer_interfaces_1.MappingTemplateType.INLINE
? { runtime, code: codeTemplateLocation }
: { runtime, codeS3Location: codeTemplateLocation };
}
const { requestMappingTemplate, responseMappingTemplate } = mappingTemplate;
const requestTemplateLocation = requestMappingTemplate === null || requestMappingTemplate === void 0 ? void 0 : requestMappingTemplate.bind(scope, api.assetProvider);
const responseTemplateLocation = responseMappingTemplate === null || responseMappingTemplate === void 0 ? void 0 : responseMappingTemplate.bind(scope, api.assetProvider);
return {

@@ -28,2 +34,6 @@ ...(requestMappingTemplate instanceof cdk_compat_1.InlineTemplate

exports.getRuntimeSpecificFunctionProps = getRuntimeSpecificFunctionProps;
const isJsRuntimeTemplate = (mappingTemplate) => {
return mappingTemplate.codeMappingTemplate !== undefined;
};
exports.isJsRuntimeTemplate = isJsRuntimeTemplate;
//# sourceMappingURL=function-runtime.js.map
{
"name": "@aws-amplify/graphql-transformer-core",
"version": "3.1.2-ai.0",
"version": "3.1.2-ai.1",
"description": "A framework to transform from GraphQL SDL to AWS CloudFormation.",

@@ -33,3 +33,3 @@ "repository": {

"@aws-amplify/graphql-directives": "2.2.1-ai.0",
"@aws-amplify/graphql-transformer-interfaces": "4.1.0",
"@aws-amplify/graphql-transformer-interfaces": "4.1.1-ai.0",
"fs-extra": "^8.1.0",

@@ -97,3 +97,3 @@ "graphql": "^15.5.0",

},
"gitHead": "a83e8f0bb457defb766303db7e993b27b5af42b7"
"gitHead": "6852fafdfead1bdb4dfe0d75886cd5419d989c0f"
}

Sorry, the diff of this file is too big to display

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

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