@aws-amplify/graphql-transformer-core
Version:
A framework to transform from GraphQL SDL to AWS CloudFormation.
28 lines • 1.53 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getFieldNameFor = void 0;
const graphql_transformer_common_1 = require("graphql-transformer-common");
const md5_1 = __importDefault(require("md5"));
const toPrefixedCamelCase = (prefix) => (base) => (0, graphql_transformer_common_1.toCamelCase)([prefix, base]);
const truncateSubscriptionName = (name) => {
if (name.length <= 50)
return name;
return name.slice(0, 45) + (0, md5_1.default)(name).slice(0, 5);
};
const fieldNameFuncMap = {
get: toPrefixedCamelCase('get'),
create: toPrefixedCamelCase('create'),
update: toPrefixedCamelCase('update'),
delete: toPrefixedCamelCase('delete'),
list: (typeName) => toPrefixedCamelCase('list')((0, graphql_transformer_common_1.plurality)(typeName, true)),
sync: (typeName) => toPrefixedCamelCase('sync')((0, graphql_transformer_common_1.plurality)(typeName, true)),
onCreate: (typeName) => truncateSubscriptionName(toPrefixedCamelCase('onCreate')(typeName)),
onUpdate: (typeName) => truncateSubscriptionName(toPrefixedCamelCase('onUpdate')(typeName)),
onDelete: (typeName) => truncateSubscriptionName(toPrefixedCamelCase('onDelete')(typeName)),
};
const getFieldNameFor = (op, typeName) => fieldNameFuncMap[op](typeName);
exports.getFieldNameFor = getFieldNameFor;
//# sourceMappingURL=operation-names.js.map