justus 0.0.4 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -26,6 +26,7 @@ typing can be inferred.
26
26
  * [Tuples](#tuple-validator)
27
27
  * [Objects](#object-validator) (yes, this is the important one!!!)
28
28
  * [Any of, all of](#union-validators)
29
+ * [Validation Options](#validation-options)
29
30
  * [A (slightly more) complex example](#a-complex-example)
30
31
  * [Generating DTS files](#generating-dts-files)
31
32
  * [Copyright Notice](NOTICE.md)
@@ -621,6 +622,40 @@ result // <-- its type will be "number | string"
621
622
  ```
622
623
 
623
624
 
625
+ Validation Options
626
+ ------------------
627
+
628
+ The `validate(...)` function accepts (as a third parameter) some validation
629
+ options. Those are:
630
+
631
+ * `stripAdditionalProperties`: the `validate(...)` function will ignore any
632
+ object property that was not declared in the schema, and will strip them
633
+ out of the returned object (rather than failing).
634
+ * `stripForbiddenProperties`: the `validate(...)` function will ignore any
635
+ _forbidden_ property that was declared in the schema (for more info see
636
+ [below](#ensure-properties-never-exist)), and will strip them out of the
637
+ returned object (rather than failing).
638
+ * `stripOptionalNulls`: the `validate(...)` function will ignore _optional_
639
+ properties with `null` values and strip them out of the returned object.
640
+ This is convenient when validating/stripping results coming from a database
641
+ table, where columns are declared as _nullable_.
642
+
643
+ The `strip(...)` function is a convenience wrapper around `validate(...)`
644
+ implying `stripAdditionalProperties` and `stripOptionalNulls`. Therefore:
645
+
646
+ ```typescript
647
+ const result1 = strip(schema, object)
648
+
649
+ // is equivalent to
650
+
651
+ const result2 = validate(schema, object, {
652
+ stripAdditionalProperties: true,
653
+ stripForbiddenProperties: false,
654
+ stripOptionalNulls: true,
655
+ })
656
+ ```
657
+
658
+
624
659
  A complex example
625
660
  -----------------
626
661
 
@@ -4,27 +4,20 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __getProtoOf = Object.getPrototypeOf;
6
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
7
  var __export = (target, all) => {
9
8
  for (var name in all)
10
9
  __defProp(target, name, { get: all[name], enumerable: true });
11
10
  };
12
- var __reExport = (target, module2, copyDefault, desc) => {
13
- if (module2 && typeof module2 === "object" || typeof module2 === "function") {
14
- for (let key of __getOwnPropNames(module2))
15
- if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
16
- __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
16
  }
18
- return target;
17
+ return to;
19
18
  };
20
- var __toESM = (module2, isNodeMode) => {
21
- return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
22
- };
23
- var __toCommonJS = /* @__PURE__ */ ((cache) => {
24
- return (module2, temp) => {
25
- return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
26
- };
27
- })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
20
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
21
 
29
22
  // src/dts-generator.ts
30
23
  var dts_generator_exports = {};
@@ -32,6 +25,7 @@ __export(dts_generator_exports, {
32
25
  generateTypes: () => generateTypes,
33
26
  registerTypeGenerator: () => registerTypeGenerator
34
27
  });
28
+ module.exports = __toCommonJS(dts_generator_exports);
35
29
  var import_typescript = __toESM(require("typescript"));
36
30
  var import_index = require("./index.js");
37
31
  var generators = /* @__PURE__ */ new Map();
@@ -75,6 +69,7 @@ var booleanType = import_typescript.default.factory.createKeywordTypeNode(import
75
69
  var numberType = import_typescript.default.factory.createKeywordTypeNode(import_typescript.default.SyntaxKind.NumberKeyword);
76
70
  var neverType = import_typescript.default.factory.createKeywordTypeNode(import_typescript.default.SyntaxKind.NeverKeyword);
77
71
  var stringType = import_typescript.default.factory.createKeywordTypeNode(import_typescript.default.SyntaxKind.StringKeyword);
72
+ var undefinedType = import_typescript.default.factory.createKeywordTypeNode(import_typescript.default.SyntaxKind.UndefinedKeyword);
78
73
  var recordType = import_typescript.default.factory.createMappedTypeNode(void 0, import_typescript.default.factory.createTypeParameterDeclaration("key", stringType), void 0, void 0, anyType, void 0);
79
74
  var readonlyKeyword = [import_typescript.default.factory.createModifier(import_typescript.default.SyntaxKind.ReadonlyKeyword)];
80
75
  var optionalKeyword = import_typescript.default.factory.createToken(import_typescript.default.SyntaxKind.QuestionToken);
@@ -155,7 +150,9 @@ registerTypeGenerator(import_index.ObjectValidator, (validator, references) => {
155
150
  properties.push(signature);
156
151
  }
157
152
  if (validator.additionalProperties) {
158
- const extra = import_typescript.default.factory.createMappedTypeNode(void 0, import_typescript.default.factory.createTypeParameterDeclaration("key", stringType), void 0, void 0, generateTypeNode(validator.additionalProperties, references), void 0);
153
+ const propertyType = generateTypeNode(validator.additionalProperties, references);
154
+ const optionalPropertyType = import_typescript.default.factory.createUnionTypeNode([propertyType, undefinedType]);
155
+ const extra = import_typescript.default.factory.createMappedTypeNode(void 0, import_typescript.default.factory.createTypeParameterDeclaration("key", stringType), void 0, void 0, optionalPropertyType, void 0);
159
156
  if (properties.length == 0)
160
157
  return extra;
161
158
  const type = import_typescript.default.factory.createTypeLiteralNode(properties);
@@ -164,7 +161,6 @@ registerTypeGenerator(import_index.ObjectValidator, (validator, references) => {
164
161
  return import_typescript.default.factory.createTypeLiteralNode(properties);
165
162
  }
166
163
  });
167
- module.exports = __toCommonJS(dts_generator_exports);
168
164
  // Annotate the CommonJS export names for ESM import in node:
169
165
  0 && (module.exports = {
170
166
  generateTypes,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/dts-generator.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -62,6 +62,7 @@ var booleanType = ts.factory.createKeywordTypeNode(ts.SyntaxKind.BooleanKeyword)
62
62
  var numberType = ts.factory.createKeywordTypeNode(ts.SyntaxKind.NumberKeyword);
63
63
  var neverType = ts.factory.createKeywordTypeNode(ts.SyntaxKind.NeverKeyword);
64
64
  var stringType = ts.factory.createKeywordTypeNode(ts.SyntaxKind.StringKeyword);
65
+ var undefinedType = ts.factory.createKeywordTypeNode(ts.SyntaxKind.UndefinedKeyword);
65
66
  var recordType = ts.factory.createMappedTypeNode(void 0, ts.factory.createTypeParameterDeclaration("key", stringType), void 0, void 0, anyType, void 0);
66
67
  var readonlyKeyword = [ts.factory.createModifier(ts.SyntaxKind.ReadonlyKeyword)];
67
68
  var optionalKeyword = ts.factory.createToken(ts.SyntaxKind.QuestionToken);
@@ -142,7 +143,9 @@ registerTypeGenerator(ObjectValidator, (validator, references) => {
142
143
  properties.push(signature);
143
144
  }
144
145
  if (validator.additionalProperties) {
145
- const extra = ts.factory.createMappedTypeNode(void 0, ts.factory.createTypeParameterDeclaration("key", stringType), void 0, void 0, generateTypeNode(validator.additionalProperties, references), void 0);
146
+ const propertyType = generateTypeNode(validator.additionalProperties, references);
147
+ const optionalPropertyType = ts.factory.createUnionTypeNode([propertyType, undefinedType]);
148
+ const extra = ts.factory.createMappedTypeNode(void 0, ts.factory.createTypeParameterDeclaration("key", stringType), void 0, void 0, optionalPropertyType, void 0);
146
149
  if (properties.length == 0)
147
150
  return extra;
148
151
  const type = ts.factory.createTypeLiteralNode(properties);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/dts-generator.ts"],
4
- "mappings": ";AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA2CA,IAAM,aAAa,oBAAI;AAGhB,+BACH,WACA,WACI;AACN,eAAa,UAAU,qBAAqB,WAAW;AACvD,aAAW,IAAI,WAAW;AAAA;AAIrB,uBAAuB,aAAiD;AAK7E,QAAM,aAAa,oBAAI;AACvB,QAAM,aAAa,oBAAI;AAEvB,SAAO,QAAQ,aAAa,QAAQ,CAAC,CAAE,MAAM,gBAAiB;AAC5D,UAAM,YAAY,aAAa;AAE/B,QAAI,CAAE,WAAW,IAAI;AAAY,iBAAW,IAAI,WAAW;AAC3D,eAAW,IAAI,MAAM;AAAA;AAIvB,QAAM,QAAmC;AACzC,aAAW,CAAE,MAAM,cAAe,WAAW,WAAW;AAGtD,UAAM,gBAAgB,IAAI,IAAI;AAC9B,QAAI,cAAc,IAAI,eAAe,MAAM;AACzC,oBAAc,OAAO;AAAA;AAIvB,UAAM,OAAO,iBAAiB,WAAW;AAGzC,UAAM,YAAY,CAAE,GAAG,QAAQ,eAAe,GAAG,WAAW;AAC5D,UAAM,OAAO,GAAG,QAAQ,2BAA2B,QAAW,WAAW,MAAM,IAAI;AACnF,UAAM,KAAK;AAAA;AAIb,SAAO,GAAG,gBAAgB,UACtB,GAAG,WAAW,sBACd,GAAG,QAAQ,gBAAgB,QAC3B,GAAG,iBAAiB,cAAc,IAAI,GAAG,aAAa;AAAA;AAQ5D,0BACI,WACA,YACW;AACb,QAAM,YAAY,WAAW,IAAI;AACjC,MAAI;AAAW,WAAO,GAAG,QAAQ,wBAAwB;AAEzD,QAAM,YAAY,WAAW,IAAI,UAAU;AAC3C,eAAa,CAAC,CAAE,WAAW,uBAAuB,UAAU,YAAY;AACxE,SAAO,UAAU,WAAW;AAAA;AAO9B,IAAM,UAAU,GAAG,QAAQ,sBAAsB,GAAG,WAAW;AAC/D,IAAM,eAAe,GAAG,QAAQ,oBAAoB;AACpD,IAAM,cAAc,GAAG,QAAQ,sBAAsB,GAAG,WAAW;AACnE,IAAM,aAAa,GAAG,QAAQ,sBAAsB,GAAG,WAAW;AAClE,IAAM,YAAY,GAAG,QAAQ,sBAAsB,GAAG,WAAW;AACjE,IAAM,aAAa,GAAG,QAAQ,sBAAsB,GAAG,WAAW;AAClE,IAAM,aAAa,GAAG,QAAQ,qBAC1B,QACA,GAAG,QAAQ,+BAA+B,OAAO,aACjD,QACA,QACA,SACA;AAIJ,IAAM,kBAAkB,CAAE,GAAG,QAAQ,eAAe,GAAG,WAAW;AAClE,IAAM,kBAAkB,GAAG,QAAQ,YAAY,GAAG,WAAW;AAO7D,sBAAsB,cAAc,MAAM;AAC1C,sBAAsB,mBAAmB,MAAM;AAC/C,sBAAsB,oBAAoB,MAAM;AAChD,sBAAsB,oBAAoB,MAAM;AAChD,sBAAsB,oBAAoB,MAAM;AAChD,sBAAsB,kBAAkB,MAAM;AAC9C,sBAAsB,eAAe,MAAM,GAAG,QAAQ,wBAAwB;AAC9E,sBAAsB,cAAc,MAAM,GAAG,QAAQ,wBAAwB;AAM7E,sBAAsB,gBAAgB,CAAC,WAAW,eAAe;AAC/D,QAAM,WAAW,iBAAiB,UAAU,OAAO;AACnD,SAAO,GAAG,QAAQ,oBAAoB;AAAA;AAGxC,sBAAsB,mBAAmB,CAAC,cAAc;AACtD,QAAM,UACJ,OAAO,UAAU,aAAa,WAAW,GAAG,QAAQ,qBAAqB,UAAU,YACnF,OAAO,UAAU,aAAa,WAAW,GAAG,QAAQ,oBAAoB,UAAU,YAClF,UAAU,aAAa,QAAQ,GAAG,QAAQ,gBAC1C,UAAU,aAAa,OAAO,GAAG,QAAQ,eACzC,UAAU,aAAa,OAAO,GAAG,QAAQ,eACzC;AAEF,eAAa,CAAC,CAAE,SAAS,qBAAqB,UAAU;AACxD,SAAO,GAAG,QAAQ,sBAAsB;AAAA;AAG1C,sBAAsB,iBAAiB,CAAC,cAA+B;AACrE,MAAI,CAAE,UAAU;AAAO,WAAO;AAE9B,QAAM,YAAY,GAAG,QAAQ,wBAAwB,QAAW,WAAW,UAAU,SAAS,QAAW;AACzG,QAAM,UAAU,GAAG,QAAQ,sBAAsB,CAAE;AACnD,SAAO,GAAG,QAAQ,2BAA2B,CAAE,YAAY;AAAA;AAG7D,sBAAsB,iBAAiB,CAAC,cAA+B;AACrE,MAAI,CAAE,UAAU;AAAO,WAAO;AAE9B,QAAM,YAAY,GAAG,QAAQ,wBAAwB,QAAW,WAAW,UAAU,SAAS,QAAW;AACzG,QAAM,UAAU,GAAG,QAAQ,sBAAsB,CAAE;AACnD,SAAO,GAAG,QAAQ,2BAA2B,CAAE,YAAY;AAAA;AAG7D,sBAAsB,gBAAgB,CAAC,WAAgC,eAAe;AACpF,QAAM,UAAU,UAAU;AAG1B,QAAM,EAAE,OAAO,OAAO,SAClB,QAAQ,OAAO,CAAC,EAAE,eAAO,eAAO,eAAQ,EAAE,UAAU,MAAM;AACxD,QAAI,CAAE,QAAQ;AACZ,UAAI,IAAI;AAAO,iBAAQ;AACvB,cAAO,IAAI;AACX,gBAAS;AAAA;AAEX,WAAO,EAAE,eAAO,eAAO;AAAA,KACtB,EAAE,OAAO,GAAG,OAAO,QAAQ,QAAQ,MAAM;AAGhD,MAAI,QAAQ,GAAG;AACb,UAAM,SAAQ,QAAQ,IAAI,CAAC,EAAE,QAAQ,4BAAgB;AACnD,YAAM,aAAa,iBAAiB,YAAW;AAE/C,UAAI;AAAQ,eAAO,iBAAiB,YAAW;AAE/C,YAAM,YAAY,GAAG,QAAQ,oBAAoB;AACjD,aAAO,GAAG,QAAQ,mBAAmB;AAAA;AAGvC,WAAO,GAAG,QAAQ,oBAAoB;AAAA;AAKxC,QAAM,SAAS,QAAQ,MAAM,GAAG,OAC3B,IAAI,CAAC,EAAE,4BAAgB,iBAAiB,YAAW;AACxD,QAAM,QAAQ,QAAQ,MAAM,OAAO,MAC9B,IAAI,CAAC,EAAE,4BAAgB,iBAAiB,YAAW;AACxD,QAAM,QAAQ,QAAQ,MAAM,MACvB,IAAI,CAAC,EAAE,4BAAgB,iBAAiB,YAAW;AAExD,QAAM,QAAQ,GAAG,QAAQ,oBAAoB;AAC7C,QAAM,QAAQ,GAAG,QAAQ,oBAAoB;AAC7C,QAAM,OAAO,GAAG,QAAQ,mBAAmB;AAE3C,SAAO,GAAG,QAAQ,oBAAoB,CAAE,GAAG,QAAQ,MAAM,GAAG;AAAA;AAG9D,sBAAsB,gBAAgB,CAAC,WAAW,eAAe;AAC/D,QAAM,UAAU,UAAU,WAAW,IAAI,CAAC,eAAc,iBAAiB,YAAW;AACpF,SAAO,GAAG,QAAQ,2BAA2B;AAAA;AAG/C,sBAAsB,gBAAgB,CAAC,WAAW,eAAe;AAC/D,QAAM,UAAU,UAAU,WAAW,IAAI,CAAC,eAAc,iBAAiB,YAAW;AACpF,SAAO,GAAG,QAAQ,oBAAoB;AAAA;AAGxC,sBAAsB,iBAAiB,CAAC,WAAW,eAAe;AAChE,QAAM,aAAqC;AAE3C,aAAW,CAAE,KAAK,aAAc,UAAU,WAAW,WAAW;AAC9D,UAAM,EAAE,uBAAW,UAAU,aAAa,YAAY,EAAE,UAAU;AAClE,UAAM,OAAO,aAAY,iBAAiB,YAAW,cAAc;AAEnE,UAAM,YAAY,GAAG,QAAQ,wBACvB,WAAW,kBAAkB,QAC7B,KACA,WAAW,kBAAkB,QAC7B;AAEN,eAAW,KAAK;AAAA;AAGlB,MAAI,UAAU,sBAAsB;AAClC,UAAM,QAAQ,GAAG,QAAQ,qBACrB,QACA,GAAG,QAAQ,+BAA+B,OAAO,aACjD,QACA,QACA,iBAAiB,UAAU,sBAAsB,aACjD;AAEJ,QAAI,WAAW,UAAU;AAAG,aAAO;AAEnC,UAAM,OAAO,GAAG,QAAQ,sBAAsB;AAC9C,WAAO,GAAG,QAAQ,2BAA2B,CAAE,MAAM;AAAA,SAChD;AACL,WAAO,GAAG,QAAQ,sBAAsB;AAAA;AAAA;",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
package/dist/index.js CHANGED
@@ -19,7 +19,6 @@ var __spreadValues = (a, b) => {
19
19
  return a;
20
20
  };
21
21
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
22
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
23
22
  var __restKey = (key) => typeof key === "symbol" ? key : key + "";
24
23
  var __objRest = (source, exclude) => {
25
24
  var target = {};
@@ -37,19 +36,15 @@ var __export = (target, all) => {
37
36
  for (var name in all)
38
37
  __defProp(target, name, { get: all[name], enumerable: true });
39
38
  };
40
- var __reExport = (target, module2, copyDefault, desc) => {
41
- if (module2 && typeof module2 === "object" || typeof module2 === "function") {
42
- for (let key of __getOwnPropNames(module2))
43
- if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
44
- __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
39
+ var __copyProps = (to, from, except, desc) => {
40
+ if (from && typeof from === "object" || typeof from === "function") {
41
+ for (let key of __getOwnPropNames(from))
42
+ if (!__hasOwnProp.call(to, key) && key !== except)
43
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
45
44
  }
46
- return target;
45
+ return to;
47
46
  };
48
- var __toCommonJS = /* @__PURE__ */ ((cache) => {
49
- return (module2, temp) => {
50
- return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
51
- };
52
- })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
47
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
53
48
 
54
49
  // src/index.ts
55
50
  var src_exports = {};
@@ -73,6 +68,13 @@ __export(src_exports, {
73
68
  ValidationError: () => ValidationError,
74
69
  ValidationErrorBuilder: () => ValidationErrorBuilder,
75
70
  Validator: () => Validator,
71
+ _allowAdditionalProperties: () => _allowAdditionalProperties,
72
+ _array: () => _array,
73
+ _date: () => _date,
74
+ _number: () => _number,
75
+ _object: () => _object,
76
+ _string: () => _string,
77
+ _url: () => _url,
76
78
  additionalValidator: () => additionalValidator,
77
79
  allOf: () => allOf,
78
80
  allowAdditionalProperties: () => allowAdditionalProperties,
@@ -101,6 +103,7 @@ __export(src_exports, {
101
103
  url: () => url,
102
104
  validate: () => validate
103
105
  });
106
+ module.exports = __toCommonJS(src_exports);
104
107
 
105
108
  // src/errors.ts
106
109
  function pathToString(path) {
@@ -306,6 +309,7 @@ var ObjectValidator = class extends Validator {
306
309
  validate(value, options) {
307
310
  assertValidation(typeof value === "object", 'Value is not an "object"');
308
311
  assertValidation(value !== null, 'Value is "null"');
312
+ const { stripAdditionalProperties, stripForbiddenProperties, stripOptionalNulls } = options;
309
313
  const record = value;
310
314
  const builder = new ValidationErrorBuilder();
311
315
  const clone = {};
@@ -314,7 +318,7 @@ var ObjectValidator = class extends Validator {
314
318
  if (!validator) {
315
319
  if (record[key] === void 0)
316
320
  continue;
317
- if (options.stripForbiddenProperties)
321
+ if (stripForbiddenProperties)
318
322
  continue;
319
323
  builder.record("Forbidden property", key);
320
324
  continue;
@@ -324,6 +328,9 @@ var ObjectValidator = class extends Validator {
324
328
  builder.record("Required property missing", key);
325
329
  continue;
326
330
  }
331
+ if (stripOptionalNulls && optional2 && record[key] === null) {
332
+ continue;
333
+ }
327
334
  try {
328
335
  clone[key] = validator.validate(record[key], options);
329
336
  } catch (error) {
@@ -342,7 +349,7 @@ var ObjectValidator = class extends Validator {
342
349
  builder.record(error, key);
343
350
  }
344
351
  });
345
- } else if (!options.stripAdditionalProperties) {
352
+ } else if (!stripAdditionalProperties) {
346
353
  additionalKeys.forEach((key) => {
347
354
  if (record[key] !== void 0)
348
355
  builder.record("Unknown property", key);
@@ -458,7 +465,6 @@ function allOf(...args) {
458
465
  // src/validators/array.ts
459
466
  var AnyArrayValidator = class extends Validator {
460
467
  validate(value, options) {
461
- void 0;
462
468
  assertValidation(Array.isArray(value), 'Value is not an "array"');
463
469
  return [...value];
464
470
  }
@@ -726,7 +732,8 @@ var KEYS = [
726
732
  ];
727
733
  var OPTIONS = {
728
734
  stripAdditionalProperties: false,
729
- stripForbiddenProperties: false
735
+ stripForbiddenProperties: false,
736
+ stripOptionalNulls: false
730
737
  };
731
738
  var URLValidator = class extends Validator {
732
739
  href;
@@ -797,18 +804,19 @@ var url = makeTupleRestIterable(_url);
797
804
  function validate(validation, value, options = {}) {
798
805
  const opts = __spreadValues({
799
806
  stripAdditionalProperties: false,
800
- stripForbiddenProperties: false
807
+ stripForbiddenProperties: false,
808
+ stripOptionalNulls: false
801
809
  }, options);
802
810
  return getValidator(validation).validate(value, opts);
803
811
  }
804
812
  function strip(validation, value, options = {}) {
805
813
  const opts = __spreadValues({
806
814
  stripAdditionalProperties: true,
807
- stripForbiddenProperties: false
815
+ stripForbiddenProperties: false,
816
+ stripOptionalNulls: true
808
817
  }, options);
809
818
  return getValidator(validation).validate(value, opts);
810
819
  }
811
- module.exports = __toCommonJS(src_exports);
812
820
  // Annotate the CommonJS export names for ESM import in node:
813
821
  0 && (module.exports = {
814
822
  AllOfValidator,
@@ -830,6 +838,13 @@ module.exports = __toCommonJS(src_exports);
830
838
  ValidationError,
831
839
  ValidationErrorBuilder,
832
840
  Validator,
841
+ _allowAdditionalProperties,
842
+ _array,
843
+ _date,
844
+ _number,
845
+ _object,
846
+ _string,
847
+ _url,
833
848
  additionalValidator,
834
849
  allOf,
835
850
  allowAdditionalProperties,
package/dist/index.js.map CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/index.ts", "../src/errors.ts", "../src/types.ts", "../src/validators/any.ts", "../src/validators/constant.ts", "../src/validators/tuple.ts", "../src/validators/object.ts", "../src/utilities.ts", "../src/schema.ts", "../src/validators/union.ts", "../src/validators/array.ts", "../src/validators/boolean.ts", "../src/validators/date.ts", "../src/validators/number.ts", "../src/validators/string.ts", "../src/validators/url.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
package/dist/index.mjs CHANGED
@@ -235,6 +235,7 @@ var ObjectValidator = class extends Validator {
235
235
  validate(value, options) {
236
236
  assertValidation(typeof value === "object", 'Value is not an "object"');
237
237
  assertValidation(value !== null, 'Value is "null"');
238
+ const { stripAdditionalProperties, stripForbiddenProperties, stripOptionalNulls } = options;
238
239
  const record = value;
239
240
  const builder = new ValidationErrorBuilder();
240
241
  const clone = {};
@@ -243,7 +244,7 @@ var ObjectValidator = class extends Validator {
243
244
  if (!validator) {
244
245
  if (record[key] === void 0)
245
246
  continue;
246
- if (options.stripForbiddenProperties)
247
+ if (stripForbiddenProperties)
247
248
  continue;
248
249
  builder.record("Forbidden property", key);
249
250
  continue;
@@ -253,6 +254,9 @@ var ObjectValidator = class extends Validator {
253
254
  builder.record("Required property missing", key);
254
255
  continue;
255
256
  }
257
+ if (stripOptionalNulls && optional2 && record[key] === null) {
258
+ continue;
259
+ }
256
260
  try {
257
261
  clone[key] = validator.validate(record[key], options);
258
262
  } catch (error) {
@@ -271,7 +275,7 @@ var ObjectValidator = class extends Validator {
271
275
  builder.record(error, key);
272
276
  }
273
277
  });
274
- } else if (!options.stripAdditionalProperties) {
278
+ } else if (!stripAdditionalProperties) {
275
279
  additionalKeys.forEach((key) => {
276
280
  if (record[key] !== void 0)
277
281
  builder.record("Unknown property", key);
@@ -387,7 +391,6 @@ function allOf(...args) {
387
391
  // src/validators/array.ts
388
392
  var AnyArrayValidator = class extends Validator {
389
393
  validate(value, options) {
390
- void 0;
391
394
  assertValidation(Array.isArray(value), 'Value is not an "array"');
392
395
  return [...value];
393
396
  }
@@ -655,7 +658,8 @@ var KEYS = [
655
658
  ];
656
659
  var OPTIONS = {
657
660
  stripAdditionalProperties: false,
658
- stripForbiddenProperties: false
661
+ stripForbiddenProperties: false,
662
+ stripOptionalNulls: false
659
663
  };
660
664
  var URLValidator = class extends Validator {
661
665
  href;
@@ -726,14 +730,16 @@ var url = makeTupleRestIterable(_url);
726
730
  function validate(validation, value, options = {}) {
727
731
  const opts = __spreadValues({
728
732
  stripAdditionalProperties: false,
729
- stripForbiddenProperties: false
733
+ stripForbiddenProperties: false,
734
+ stripOptionalNulls: false
730
735
  }, options);
731
736
  return getValidator(validation).validate(value, opts);
732
737
  }
733
738
  function strip(validation, value, options = {}) {
734
739
  const opts = __spreadValues({
735
740
  stripAdditionalProperties: true,
736
- stripForbiddenProperties: false
741
+ stripForbiddenProperties: false,
742
+ stripOptionalNulls: true
737
743
  }, options);
738
744
  return getValidator(validation).validate(value, opts);
739
745
  }
@@ -757,6 +763,13 @@ export {
757
763
  ValidationError,
758
764
  ValidationErrorBuilder,
759
765
  Validator,
766
+ _allowAdditionalProperties,
767
+ _array,
768
+ _date,
769
+ _number,
770
+ _object,
771
+ _string,
772
+ _url,
760
773
  additionalValidator,
761
774
  allOf,
762
775
  allowAdditionalProperties,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/errors.ts", "../src/types.ts", "../src/validators/any.ts", "../src/validators/constant.ts", "../src/validators/tuple.ts", "../src/validators/object.ts", "../src/utilities.ts", "../src/schema.ts", "../src/validators/union.ts", "../src/validators/array.ts", "../src/validators/boolean.ts", "../src/validators/date.ts", "../src/validators/number.ts", "../src/validators/string.ts", "../src/validators/url.ts", "../src/index.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }