UNPKG

@prismicio/types-internal

Version:
11 lines (10 loc) 554 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const Either_1 = require("fp-ts/Either"); const function_1 = require("fp-ts/function"); const t = (0, tslib_1.__importStar)(require("io-ts")); exports.default = new t.Type("dateFromStringOrNumber", (u) => u instanceof Date, (u, c) => (0, function_1.pipe)(t.union([t.number, t.string]).validate(u, c), (0, Either_1.chain)((s) => { const d = new Date(s); return isNaN(d.getTime()) ? t.failure(u, c) : t.success(d); })), (date) => date);