@cran/lib.gql.core
Version:
GQL Core Functionality
19 lines (18 loc) • 508 B
JavaScript
import { createScalar } from "../utilities";
const trueValue = /^t(rue)?|y(es)?|on|1$/iu;
const falseValue = /^f(alse)?|no?|off|0$/iu;
export const BoolScalar = createScalar("bool", "state of true or false", {
string(value, invalid) {
if (trueValue.test(value)) {
return "true";
}
if (falseValue.test(value)) {
return "false";
}
return invalid();
},
number(value) {
return `${Boolean(value)}`;
},
boolean: true,
});