123456789101112131415161718192021222324252627282930313233343536 |
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.parseTupleDef = void 0;
- const parseDef_js_1 = require("../parseDef.js");
- function parseTupleDef(def, refs) {
- if (def.rest) {
- return {
- type: "array",
- minItems: def.items.length,
- items: def.items
- .map((x, i) => (0, parseDef_js_1.parseDef)(x._def, {
- ...refs,
- currentPath: [...refs.currentPath, "items", `${i}`],
- }))
- .reduce((acc, x) => (x === undefined ? acc : [...acc, x]), []),
- additionalItems: (0, parseDef_js_1.parseDef)(def.rest._def, {
- ...refs,
- currentPath: [...refs.currentPath, "additionalItems"],
- }),
- };
- }
- else {
- return {
- type: "array",
- minItems: def.items.length,
- maxItems: def.items.length,
- items: def.items
- .map((x, i) => (0, parseDef_js_1.parseDef)(x._def, {
- ...refs,
- currentPath: [...refs.currentPath, "items", `${i}`],
- }))
- .reduce((acc, x) => (x === undefined ? acc : [...acc, x]), []),
- };
- }
- }
- exports.parseTupleDef = parseTupleDef;
|