graphql-extra-scalars
Version:
Collection of extra GraphQL scalar types like Email, URL, Password and more
18 lines (17 loc) • 760 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const graphql_1 = require("graphql");
const literalParser_1 = require("../literalParser");
const regexpTypeCoercer_1 = require("../regexpTypeCoercer");
const coerceType = regexpTypeCoercer_1.createRegexpTypeCoercer('UUID', /^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/ui);
const GraphQLUUID = new graphql_1.GraphQLScalarType({
name: 'UUID',
description: 'The UUID scalar type represents a UUID.',
serialize: (value) => {
const coercedValue = coerceType(value);
return coercedValue.toLowerCase();
},
parseValue: coerceType,
parseLiteral: literalParser_1.createParseLiteral(coerceType),
});
exports.GraphQLUUID = GraphQLUUID;