Urara-Blog/node_modules/.pnpm-store/v3/files/69/9dd8a7ec8e7d6e4c483977fca82c4fc20f2f0280d63b82dcaa84a83e637fd8ee2e26e89ac2dfbd7a85e650fca331e5800179a14df714f2f3c6c7c82d363d45
2022-08-14 01:14:53 +08:00

22 lines
No EOL
859 B
Text

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.checkNullableObject = exports.checkNullable = void 0;
const codegen_1 = require("../../compile/codegen");
function checkNullable({ gen, data, parentSchema }, cond = codegen_1.nil) {
const valid = gen.name("valid");
if (parentSchema.nullable) {
gen.let(valid, (0, codegen_1._) `${data} === null`);
cond = (0, codegen_1.not)(valid);
}
else {
gen.let(valid, false);
}
return [valid, cond];
}
exports.checkNullable = checkNullable;
function checkNullableObject(cxt, cond) {
const [valid, cond_] = checkNullable(cxt, cond);
return [valid, (0, codegen_1._) `${cond_} && typeof ${cxt.data} == "object" && !Array.isArray(${cxt.data})`];
}
exports.checkNullableObject = checkNullableObject;
//# sourceMappingURL=nullable.js.map