26 lines
		
	
	
		
			875 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			26 lines
		
	
	
		
			875 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| "use strict";
 | |
| Object.defineProperty(exports, "__esModule", { value: true });
 | |
| exports.parseOptionalDef = void 0;
 | |
| const parseDef_1 = require("../parseDef.js");
 | |
| const parseOptionalDef = (def, refs) => {
 | |
|     if (refs.propertyPath &&
 | |
|         refs.currentPath.slice(0, refs.propertyPath.length).toString() === refs.propertyPath.toString()) {
 | |
|         return (0, parseDef_1.parseDef)(def.innerType._def, { ...refs, currentPath: refs.currentPath });
 | |
|     }
 | |
|     const innerSchema = (0, parseDef_1.parseDef)(def.innerType._def, {
 | |
|         ...refs,
 | |
|         currentPath: [...refs.currentPath, 'anyOf', '1'],
 | |
|     });
 | |
|     return innerSchema ?
 | |
|         {
 | |
|             anyOf: [
 | |
|                 {
 | |
|                     not: {},
 | |
|                 },
 | |
|                 innerSchema,
 | |
|             ],
 | |
|         }
 | |
|         : {};
 | |
| };
 | |
| exports.parseOptionalDef = parseOptionalDef;
 | |
| //# sourceMappingURL=optional.js.map
 |