Files
SnowLuma/.pnpm-store/v11/files/f3/9683df0c93bac88f8a4404def0c5ca05312ffe710d4fa0127bc31c935ec459efba587659ff86976a7437f82ee593ecd4c59e18da56d70a5b5dce32bfef7dc6
T
TanTan 2a69b23b47
Dev Build / cleanup (push) Waiting to run
Dev Build / typecheck (push) Waiting to run
docs: 仓库链接指向本镜像仓库
2026-11-13 09:27:07 +08:00

22 lines
623 B
Plaintext

import { parseDef } from "../parseDef.js";
import { parseAnyDef } from "./any.js";
export const parseOptionalDef = (def, refs) => {
if (refs.currentPath.toString() === refs.propertyPath?.toString()) {
return parseDef(def.innerType._def, refs);
}
const innerSchema = parseDef(def.innerType._def, {
...refs,
currentPath: [...refs.currentPath, "anyOf", "1"],
});
return innerSchema
? {
anyOf: [
{
not: parseAnyDef(refs),
},
innerSchema,
],
}
: parseAnyDef(refs);
};