UNPKG

@prismicio/types-internal

Version:
32 lines (31 loc) 1.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const Either_1 = require("fp-ts/lib/Either"); const t = (0, tslib_1.__importStar)(require("io-ts")); const IntFromString_1 = require("io-ts-types/lib/IntFromString"); const validators_1 = require("../../../validators"); const SideConstraint = new t.Type("SideConstraints", (u) => { return !u || typeof u === "number"; }, (u, context) => { return Either_1.either.chain(t .union([ t.literal("auto"), t.literal(""), t.Int, IntFromString_1.IntFromString, validators_1.IntFromNumber, validators_1.IntFromPixels, t.null, ]) .validate(u, context), (constraint) => { if (constraint === "auto" || constraint === "") return t.success(null); return t.success(constraint); }); }, (res) => res); const ImageConstraint = t.partial({ width: SideConstraint, height: SideConstraint, }); exports.default = ImageConstraint;