UNPKG

@cran/lib.gql.core

Version:

GQL Core Functionality

27 lines (26 loc) 621 B
import { createScalar } from "../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(); } export const TstzScalar = createScalar("tstz", "timestamp with time zone", { string(value, invalid) { if (allowed[value.toLowerCase()]) { return value; } return asTstz(value, invalid); }, number: asTstz, });