@cran/lib.gql.core
Version:
GQL Core Functionality
30 lines (29 loc) • 739 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.TstzScalar = void 0;
const utilities_1 = require("../utilities");
const allowed = {
epoch: true,
infinity: true,
"-infinity": true,
now: true,
today: true,
tomorrow: true,
yesterday: true,
};
function asTstz(value, invalid) {
const date = new Date(value);
if (isNaN(date.valueOf())) {
return invalid();
}
return date.toISOString();
}
exports.TstzScalar = (0, utilities_1.createScalar)("tstz", "timestamp with time zone", {
string(value, invalid) {
if (allowed[value.toLowerCase()]) {
return value;
}
return asTstz(value, invalid);
},
number: asTstz,
});