optional.js 747 B

123456789101112131415161718192021222324
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.parseOptionalDef = void 0;
  4. const parseDef_js_1 = require("../parseDef.js");
  5. const parseOptionalDef = (def, refs) => {
  6. if (refs.currentPath.toString() === refs.propertyPath?.toString()) {
  7. return (0, parseDef_js_1.parseDef)(def.innerType._def, refs);
  8. }
  9. const innerSchema = (0, parseDef_js_1.parseDef)(def.innerType._def, {
  10. ...refs,
  11. currentPath: [...refs.currentPath, "anyOf", "1"],
  12. });
  13. return innerSchema
  14. ? {
  15. anyOf: [
  16. {
  17. not: {},
  18. },
  19. innerSchema,
  20. ],
  21. }
  22. : {};
  23. };
  24. exports.parseOptionalDef = parseOptionalDef;