anyvali 0.3.4 → 0.3.6

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/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.3.6](https://github.com/BetterCorp/AnyVali/compare/js-v0.3.5...js-v0.3.6) (2026-06-20)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * cascade unknown key policy ([7d21a51](https://github.com/BetterCorp/AnyVali/commit/7d21a51b0d7961c9089fdc92bb1c787c33186207))
9
+
10
+ ## [0.3.5](https://github.com/BetterCorp/AnyVali/compare/js-v0.3.4...js-v0.3.5) (2026-06-17)
11
+
12
+
13
+ ### Bug Fixes
14
+
15
+ * infer default coercion source ([19577b3](https://github.com/BetterCorp/AnyVali/commit/19577b3d59e00e246fe2021c0b7e30e4196a5fa3))
16
+
3
17
  ## [0.3.4](https://github.com/BetterCorp/AnyVali/compare/js-v0.3.3...js-v0.3.4) (2026-06-14)
4
18
 
5
19
 
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export type { SchemaNode, SchemaKind, ParseResult, ValidationIssue, AnyValiDocument, ExportMode, UnknownKeyMode, CoercionConfig, StringFormat, ParseContext, MetadataOptions, DescribeOptions, } from "./types.js";
1
+ export type { SchemaNode, SchemaKind, ParseResult, ValidationIssue, AnyValiDocument, ExportMode, UnknownKeyMode, CoercionConfig, StringFormat, ParseContext, ParseOptions, MetadataOptions, DescribeOptions, } from "./types.js";
2
2
  export { ISSUE_CODES } from "./issue-codes.js";
3
3
  export type { IssueCode } from "./issue-codes.js";
4
4
  export type { SchemaAny, Infer, InferInput } from "./infer.js";
@@ -23,7 +23,7 @@ import { IntersectionSchema } from "./schemas/intersection.js";
23
23
  import { OptionalSchema } from "./schemas/optional.js";
24
24
  import { NullableSchema } from "./schemas/nullable.js";
25
25
  import { BaseSchema } from "./schemas/base.js";
26
- import type { UnknownKeyMode, ParseResult, AnyValiDocument, ExportMode } from "./types.js";
26
+ import type { UnknownKeyMode, ParseResult, ParseOptions, AnyValiDocument, ExportMode } from "./types.js";
27
27
  /** Create a string schema */
28
28
  export declare function string(): StringSchema;
29
29
  /** Create a number (float64) schema */
@@ -83,9 +83,9 @@ export declare function optional<T extends BaseSchema<any, any>>(schema: T): Opt
83
83
  /** Wrap a schema as nullable */
84
84
  export declare function nullable<T extends BaseSchema<any, any>>(schema: T): NullableSchema<T>;
85
85
  /** Parse input using the given schema. Throws ValidationError on failure. */
86
- export declare function parse<T>(schema: BaseSchema<unknown, T>, input: unknown): T;
86
+ export declare function parse<T>(schema: BaseSchema<unknown, T>, input: unknown, options?: ParseOptions): T;
87
87
  /** Parse input using the given schema. Returns a result object. */
88
- export declare function safeParse<T>(schema: BaseSchema<unknown, T>, input: unknown): ParseResult<T>;
88
+ export declare function safeParse<T>(schema: BaseSchema<unknown, T>, input: unknown, options?: ParseOptions): ParseResult<T>;
89
89
  /** Export a schema to an AnyValiDocument */
90
90
  export declare function exportSchema(schema: BaseSchema, mode?: ExportMode): AnyValiDocument;
91
91
  /** Import an AnyValiDocument to a live schema */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -135,12 +135,12 @@ export function nullable(schema) {
135
135
  }
136
136
  // ---- Top-level parse functions ----
137
137
  /** Parse input using the given schema. Throws ValidationError on failure. */
138
- export function parse(schema, input) {
139
- return schema.parse(input);
138
+ export function parse(schema, input, options) {
139
+ return schema.parse(input, options);
140
140
  }
141
141
  /** Parse input using the given schema. Returns a result object. */
142
- export function safeParse(schema, input) {
143
- return schema.safeParse(input);
142
+ export function safeParse(schema, input, options) {
143
+ return schema.safeParse(input, options);
144
144
  }
145
145
  // ---- Interchange functions ----
146
146
  import { exportSchema as _exportSchema } from "./interchange/exporter.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"coerce.d.ts","sourceRoot":"","sources":["../../src/parse/coerce.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAOlD,MAAM,MAAM,cAAc,GACtB;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GACjC;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAExC;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,OAAO,GACX,cAAc,CA4BhB;AAED,wBAAgB,aAAa,CAC3B,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,GACjB,cAAc,CA+FhB"}
1
+ {"version":3,"file":"coerce.d.ts","sourceRoot":"","sources":["../../src/parse/coerce.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAOlD,MAAM,MAAM,cAAc,GACtB;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GACjC;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAExC;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,OAAO,GACX,cAAc,CA4BhB;AAED,wBAAgB,aAAa,CAC3B,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,GACjB,cAAc,CAuGhB"}
@@ -47,8 +47,15 @@ export function applyCoercion(input, config, targetType) {
47
47
  value = value.toUpperCase();
48
48
  }
49
49
  }
50
- // Type coercion from string to target
51
- if (config.from === "string" && typeof value === "string") {
50
+ // Type coercion from string to target.
51
+ // The only portable coercion source is "string" (spec 5.1), so enabling
52
+ // coercion on a non-string target (e.g. `number().coerce()`) implies a
53
+ // string source even when `from` is omitted. Without this, a bare
54
+ // `.coerce()` on a numeric/bool schema would silently no-op and the raw
55
+ // string would fail validation with invalid_type.
56
+ const isTypeTarget = targetType !== "string" && targetType !== "unknown";
57
+ const fromString = config.from === "string" || (config.from === undefined && isTypeTarget);
58
+ if (fromString && typeof value === "string") {
52
59
  switch (targetType) {
53
60
  case "int":
54
61
  case "int8":
@@ -1 +1 @@
1
- {"version":3,"file":"coerce.js","sourceRoot":"","sources":["../../src/parse/coerce.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coerce.js","sourceRoot":"","sources":["../../src/parse/coerce.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import type { ParseResult } from "../types.js";
1
+ import type { ParseOptions, ParseResult } from "../types.js";
2
2
  import { BaseSchema } from "../schemas/base.js";
3
3
  /**
4
4
  * Parse input with the given schema. Throws ValidationError on failure.
5
5
  */
6
- export declare function parse<T>(schema: BaseSchema<unknown, T>, input: unknown): T;
6
+ export declare function parse<T>(schema: BaseSchema<unknown, T>, input: unknown, options?: ParseOptions): T;
7
7
  /**
8
8
  * Parse input with the given schema. Returns a result object.
9
9
  */
10
- export declare function safeParse<T>(schema: BaseSchema<unknown, T>, input: unknown): ParseResult<T>;
10
+ export declare function safeParse<T>(schema: BaseSchema<unknown, T>, input: unknown, options?: ParseOptions): ParseResult<T>;
11
11
  //# sourceMappingURL=parser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/parse/parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,GAAG,CAAC,CAE1E;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EACzB,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,EAC9B,KAAK,EAAE,OAAO,GACb,WAAW,CAAC,CAAC,CAAC,CAEhB"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/parse/parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EACrB,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,EAC9B,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE,YAAY,GACrB,CAAC,CAEH;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EACzB,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,EAC9B,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE,YAAY,GACrB,WAAW,CAAC,CAAC,CAAC,CAEhB"}
@@ -1,13 +1,13 @@
1
1
  /**
2
2
  * Parse input with the given schema. Throws ValidationError on failure.
3
3
  */
4
- export function parse(schema, input) {
5
- return schema.parse(input);
4
+ export function parse(schema, input, options) {
5
+ return schema.parse(input, options);
6
6
  }
7
7
  /**
8
8
  * Parse input with the given schema. Returns a result object.
9
9
  */
10
- export function safeParse(schema, input) {
11
- return schema.safeParse(input);
10
+ export function safeParse(schema, input, options) {
11
+ return schema.safeParse(input, options);
12
12
  }
13
13
  //# sourceMappingURL=parser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/parse/parser.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,UAAU,KAAK,CAAI,MAA8B,EAAE,KAAc;IACrE,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CACvB,MAA8B,EAC9B,KAAc;IAEd,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/parse/parser.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,UAAU,KAAK,CACnB,MAA8B,EAC9B,KAAc,EACd,OAAsB;IAEtB,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CACvB,MAA8B,EAC9B,KAAc,EACd,OAAsB;IAEtB,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { ParseResult, ParseContext, SchemaNode, AnyValiDocument, ExportMode, CoercionConfig, MetadataOptions, DescribeOptions } from "../types.js";
1
+ import type { ParseResult, ParseOptions, ParseContext, SchemaNode, AnyValiDocument, ExportMode, CoercionConfig, MetadataOptions, DescribeOptions } from "../types.js";
2
2
  /**
3
3
  * Maximum validation recursion depth. Bounds recursion through recursive
4
4
  * `$ref` schemas (and deeply nested data) so a malicious payload cannot
@@ -16,8 +16,8 @@ export declare abstract class BaseSchema<TInput = unknown, TOutput = TInput> {
16
16
  /** @internal */ _coercionConfig: CoercionConfig | undefined;
17
17
  /** @internal */ _isPortable: boolean;
18
18
  /** @internal */ _metadata: Record<string, unknown> | undefined;
19
- parse(input: unknown): TOutput;
20
- safeParse(input: unknown): ParseResult<TOutput>;
19
+ parse(input: unknown, options?: ParseOptions): TOutput;
20
+ safeParse(input: unknown, options?: ParseOptions): ParseResult<TOutput>;
21
21
  /** Internal: run the 5-step pipeline */
22
22
  _runPipeline(input: unknown, ctx: ParseContext): unknown;
23
23
  private _runPipelineInner;
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/schemas/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EAEX,YAAY,EACZ,UAAU,EACV,eAAe,EACf,UAAU,EACV,cAAc,EACd,eAAe,EACf,eAAe,EAChB,MAAM,aAAa,CAAC;AAQrB;;;;;GAKG;AACH,eAAO,MAAM,SAAS,MAAM,CAAC;AAO7B,uCAAuC;AACvC,eAAO,MAAM,MAAM,eAA+B,CAAC;AACnD,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC;AAiBnC,8BAAsB,UAAU,CAAC,MAAM,GAAG,OAAO,EAAE,OAAO,GAAG,MAAM;IACjE,gEAAgE;IAChE,SAAiB,OAAO,EAAE,OAAO,CAAC;IAClC,gBAAgB,CAAC,aAAa,EAAE,OAAO,GAAG,MAAM,CAAU;IAC1D,gBAAgB,CAAC,eAAe,EAAE,cAAc,GAAG,SAAS,CAAa;IACzE,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAQ;IAC7C,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAa;IAI5E,KAAK,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IAM9B,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;IA+B/C,wCAAwC;IACxC,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO;IAuBxD,OAAO,CAAC,iBAAiB;IAuDzB,sEAAsE;IACtE,kBAAkB,IAAI,MAAM;IAI5B,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO;IAE9D,QAAQ,CAAC,OAAO,IAAI,UAAU;IAK9B,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAM7B,MAAM,CAAC,OAAO,GAAE,cAAmB,GAAG,IAAI;IAM1C,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,IAAI;IAO3D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,IAAI;IAyBrE,MAAM,CAAC,IAAI,GAAE,UAAuB,GAAG,eAAe;IAkBtD,OAAO,CAAC,qBAAqB;IAqD7B,SAAS,CAAC,MAAM,IAAI,IAAI;IAMxB,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU;CAYpD"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/schemas/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EAEZ,YAAY,EACZ,UAAU,EACV,eAAe,EACf,UAAU,EACV,cAAc,EACd,eAAe,EACf,eAAe,EAChB,MAAM,aAAa,CAAC;AAQrB;;;;;GAKG;AACH,eAAO,MAAM,SAAS,MAAM,CAAC;AAO7B,uCAAuC;AACvC,eAAO,MAAM,MAAM,eAA+B,CAAC;AACnD,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC;AAiBnC,8BAAsB,UAAU,CAAC,MAAM,GAAG,OAAO,EAAE,OAAO,GAAG,MAAM;IACjE,gEAAgE;IAChE,SAAiB,OAAO,EAAE,OAAO,CAAC;IAClC,gBAAgB,CAAC,aAAa,EAAE,OAAO,GAAG,MAAM,CAAU;IAC1D,gBAAgB,CAAC,eAAe,EAAE,cAAc,GAAG,SAAS,CAAa;IACzE,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAQ;IAC7C,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAa;IAI5E,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO;IAMtD,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,WAAW,CAAC,OAAO,CAAC;IA+BvE,wCAAwC;IACxC,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO;IAuBxD,OAAO,CAAC,iBAAiB;IAuDzB,sEAAsE;IACtE,kBAAkB,IAAI,MAAM;IAI5B,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO;IAE9D,QAAQ,CAAC,OAAO,IAAI,UAAU;IAK9B,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAM7B,MAAM,CAAC,OAAO,GAAE,cAAmB,GAAG,IAAI;IAM1C,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,IAAI;IAO3D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,IAAI;IAyBrE,MAAM,CAAC,IAAI,GAAE,UAAuB,GAAG,eAAe;IAkBtD,OAAO,CAAC,qBAAqB;IAqD7B,SAAS,CAAC,MAAM,IAAI,IAAI;IAMxB,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU;CAYpD"}
@@ -38,14 +38,14 @@ export class BaseSchema {
38
38
  /** @internal */ _isPortable = true;
39
39
  /** @internal */ _metadata = undefined;
40
40
  // ---------- public API ----------
41
- parse(input) {
42
- const result = this.safeParse(input);
41
+ parse(input, options) {
42
+ const result = this.safeParse(input, options);
43
43
  if (result.success)
44
44
  return result.data;
45
45
  throw new ValidationError(result.issues);
46
46
  }
47
- safeParse(input) {
48
- const ctx = { path: [], issues: [] };
47
+ safeParse(input, options) {
48
+ const ctx = { path: [], issues: [], ...options };
49
49
  let output;
50
50
  try {
51
51
  output = this._runPipeline(input, ctx);
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/schemas/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/schemas/base.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../src/schemas/object.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAU,MAAM,WAAW,CAAC;AAG/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,8DAA8D;AAC9D,KAAK,QAAQ,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG,EAAE,CAAC;AAEjD,gGAAgG;AAChG,MAAM,MAAM,UAAU,CACpB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAC5C,QAAQ,CACV;KACG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,cAAc,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;CAChF,GAAG;KACD,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,cAAc,CAAC,GAAG,CAAC,GAC7C,CAAC,GACD,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;CAC7B,CACF,CAAC;AAOF,qBAAa,YAAY,CACvB,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,MAAM,CAC1D,MAAM,EACN,UAAU,CACX,CACD,SAAQ,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IAC/D,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,YAAY,CAAiB;IACrC,OAAO,CAAC,oBAAoB,CAAU;gBAGpC,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,cAAc,CAAA;KAAE;IAiB5C,WAAW,CAAC,IAAI,EAAE,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC;IAOvD,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,kBAAkB;IAI1B,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO;IA+GrD,OAAO,IAAI,UAAU;CAoBtB"}
1
+ {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../src/schemas/object.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAU,MAAM,WAAW,CAAC;AAG/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,8DAA8D;AAC9D,KAAK,QAAQ,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG,EAAE,CAAC;AAEjD,gGAAgG;AAChG,MAAM,MAAM,UAAU,CACpB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAC5C,QAAQ,CACV;KACG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,cAAc,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;CAChF,GAAG;KACD,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,cAAc,CAAC,GAAG,CAAC,GAC7C,CAAC,GACD,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;CAC7B,CACF,CAAC;AAOF,qBAAa,YAAY,CACvB,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,MAAM,CAC1D,MAAM,EACN,UAAU,CACX,CACD,SAAQ,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IAC/D,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,YAAY,CAAiB;IACrC,OAAO,CAAC,oBAAoB,CAAU;gBAGpC,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,cAAc,CAAA;KAAE;IAiB5C,WAAW,CAAC,IAAI,EAAE,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC;IAOvD,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,kBAAkB;IAI1B,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO;IA0HrD,OAAO,IAAI,UAAU;CAoBtB"}
@@ -25,7 +25,11 @@ export class ObjectSchema extends BaseSchema {
25
25
  clone._unknownKeysExplicit = true;
26
26
  return clone;
27
27
  }
28
- _effectiveUnknownKeys() {
28
+ _effectiveUnknownKeys(ctx) {
29
+ if (ctx.inheritedUnknownKeys !== undefined)
30
+ return ctx.inheritedUnknownKeys;
31
+ if (ctx.unknownKeys !== undefined)
32
+ return ctx.unknownKeys;
29
33
  return this._unknownKeysExplicit ? this._unknownKeys : "strip";
30
34
  }
31
35
  _exportUnknownKeys() {
@@ -64,6 +68,13 @@ export class ObjectSchema extends BaseSchema {
64
68
  inputKeys.add("__proto__");
65
69
  }
66
70
  // Validate declared properties
71
+ const unknownKeys = this._effectiveUnknownKeys(ctx);
72
+ const previousInheritedUnknownKeys = ctx.inheritedUnknownKeys;
73
+ const previousUnknownKeys = ctx.unknownKeys;
74
+ if (unknownKeys === "strip" || unknownKeys === "reject") {
75
+ ctx.inheritedUnknownKeys = unknownKeys;
76
+ }
77
+ ctx.unknownKeys = undefined;
67
78
  for (const [key, prop] of this._properties) {
68
79
  ctx.path.push(key);
69
80
  const hasKey = Object.prototype.hasOwnProperty.call(obj, key);
@@ -96,9 +107,11 @@ export class ObjectSchema extends BaseSchema {
96
107
  }
97
108
  ctx.path.pop();
98
109
  }
110
+ ctx.inheritedUnknownKeys = previousInheritedUnknownKeys;
111
+ ctx.unknownKeys = previousUnknownKeys;
99
112
  // Handle unknown keys
100
113
  for (const key of inputKeys) {
101
- switch (this._effectiveUnknownKeys()) {
114
+ switch (unknownKeys) {
102
115
  case "reject":
103
116
  ctx.issues.push({
104
117
  code: ISSUE_CODES.UNKNOWN_KEY,
@@ -1 +1 @@
1
- {"version":3,"file":"object.js","sourceRoot":"","sources":["../../src/schemas/object.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"object.js","sourceRoot":"","sources":["../../src/schemas/object.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -103,6 +103,9 @@ export type ParseResult<T> = {
103
103
  success: false;
104
104
  issues: ValidationIssue[];
105
105
  };
106
+ export interface ParseOptions {
107
+ unknownKeys?: UnknownKeyMode;
108
+ }
106
109
  export interface ValidationIssue {
107
110
  code: string;
108
111
  message: string;
@@ -123,6 +126,8 @@ export type UnknownKeyMode = "reject" | "strip" | "allow";
123
126
  export interface ParseContext {
124
127
  path: (string | number)[];
125
128
  issues: ValidationIssue[];
129
+ unknownKeys?: UnknownKeyMode;
130
+ inheritedUnknownKeys?: Exclude<UnknownKeyMode, "allow">;
126
131
  definitions?: Record<string, SchemaNode>;
127
132
  /** Tracks objects already being validated to detect circular references. */
128
133
  seen?: WeakSet<object>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "anyvali",
3
- "version": "0.3.4",
3
+ "version": "0.3.6",
4
4
  "description": "Native validation with portable schema interchange",
5
5
  "homepage": "https://anyvali.com",
6
6
  "repository": {
package/src/index.ts CHANGED
@@ -10,6 +10,7 @@ export type {
10
10
  CoercionConfig,
11
11
  StringFormat,
12
12
  ParseContext,
13
+ ParseOptions,
13
14
  MetadataOptions,
14
15
  DescribeOptions,
15
16
  } from "./types.js";
@@ -88,7 +89,7 @@ import { OptionalSchema } from "./schemas/optional.js";
88
89
  import { NullableSchema } from "./schemas/nullable.js";
89
90
  import { BaseSchema } from "./schemas/base.js";
90
91
 
91
- import type { UnknownKeyMode, ParseResult, AnyValiDocument, ExportMode } from "./types.js";
92
+ import type { UnknownKeyMode, ParseResult, ParseOptions, AnyValiDocument, ExportMode } from "./types.js";
92
93
 
93
94
  /** Create a string schema */
94
95
  export function string(): StringSchema {
@@ -254,16 +255,21 @@ export function nullable<T extends BaseSchema<any, any>>(
254
255
  // ---- Top-level parse functions ----
255
256
 
256
257
  /** Parse input using the given schema. Throws ValidationError on failure. */
257
- export function parse<T>(schema: BaseSchema<unknown, T>, input: unknown): T {
258
- return schema.parse(input);
258
+ export function parse<T>(
259
+ schema: BaseSchema<unknown, T>,
260
+ input: unknown,
261
+ options?: ParseOptions
262
+ ): T {
263
+ return schema.parse(input, options);
259
264
  }
260
265
 
261
266
  /** Parse input using the given schema. Returns a result object. */
262
267
  export function safeParse<T>(
263
268
  schema: BaseSchema<unknown, T>,
264
- input: unknown
269
+ input: unknown,
270
+ options?: ParseOptions
265
271
  ): ParseResult<T> {
266
- return schema.safeParse(input);
272
+ return schema.safeParse(input, options);
267
273
  }
268
274
 
269
275
  // ---- Interchange functions ----
@@ -66,8 +66,16 @@ export function applyCoercion(
66
66
  }
67
67
  }
68
68
 
69
- // Type coercion from string to target
70
- if (config.from === "string" && typeof value === "string") {
69
+ // Type coercion from string to target.
70
+ // The only portable coercion source is "string" (spec 5.1), so enabling
71
+ // coercion on a non-string target (e.g. `number().coerce()`) implies a
72
+ // string source even when `from` is omitted. Without this, a bare
73
+ // `.coerce()` on a numeric/bool schema would silently no-op and the raw
74
+ // string would fail validation with invalid_type.
75
+ const isTypeTarget = targetType !== "string" && targetType !== "unknown";
76
+ const fromString =
77
+ config.from === "string" || (config.from === undefined && isTypeTarget);
78
+ if (fromString && typeof value === "string") {
71
79
  switch (targetType) {
72
80
  case "int":
73
81
  case "int8":
@@ -1,11 +1,15 @@
1
- import type { ParseResult } from "../types.js";
1
+ import type { ParseOptions, ParseResult } from "../types.js";
2
2
  import { BaseSchema } from "../schemas/base.js";
3
3
 
4
4
  /**
5
5
  * Parse input with the given schema. Throws ValidationError on failure.
6
6
  */
7
- export function parse<T>(schema: BaseSchema<unknown, T>, input: unknown): T {
8
- return schema.parse(input);
7
+ export function parse<T>(
8
+ schema: BaseSchema<unknown, T>,
9
+ input: unknown,
10
+ options?: ParseOptions
11
+ ): T {
12
+ return schema.parse(input, options);
9
13
  }
10
14
 
11
15
  /**
@@ -13,7 +17,8 @@ export function parse<T>(schema: BaseSchema<unknown, T>, input: unknown): T {
13
17
  */
14
18
  export function safeParse<T>(
15
19
  schema: BaseSchema<unknown, T>,
16
- input: unknown
20
+ input: unknown,
21
+ options?: ParseOptions
17
22
  ): ParseResult<T> {
18
- return schema.safeParse(input);
23
+ return schema.safeParse(input, options);
19
24
  }
@@ -1,5 +1,6 @@
1
1
  import type {
2
2
  ParseResult,
3
+ ParseOptions,
3
4
  ValidationIssue,
4
5
  ParseContext,
5
6
  SchemaNode,
@@ -58,14 +59,14 @@ export abstract class BaseSchema<TInput = unknown, TOutput = TInput> {
58
59
 
59
60
  // ---------- public API ----------
60
61
 
61
- parse(input: unknown): TOutput {
62
- const result = this.safeParse(input);
62
+ parse(input: unknown, options?: ParseOptions): TOutput {
63
+ const result = this.safeParse(input, options);
63
64
  if (result.success) return result.data;
64
65
  throw new ValidationError(result.issues);
65
66
  }
66
67
 
67
- safeParse(input: unknown): ParseResult<TOutput> {
68
- const ctx: ParseContext = { path: [], issues: [] };
68
+ safeParse(input: unknown, options?: ParseOptions): ParseResult<TOutput> {
69
+ const ctx: ParseContext = { path: [], issues: [], ...options };
69
70
  let output: unknown;
70
71
  try {
71
72
  output = this._runPipeline(input, ctx);
@@ -61,7 +61,9 @@ export class ObjectSchema<
61
61
  return clone;
62
62
  }
63
63
 
64
- private _effectiveUnknownKeys(): UnknownKeyMode {
64
+ private _effectiveUnknownKeys(ctx: ParseContext): UnknownKeyMode {
65
+ if (ctx.inheritedUnknownKeys !== undefined) return ctx.inheritedUnknownKeys;
66
+ if (ctx.unknownKeys !== undefined) return ctx.unknownKeys;
65
67
  return this._unknownKeysExplicit ? this._unknownKeys : "strip";
66
68
  }
67
69
 
@@ -105,6 +107,14 @@ export class ObjectSchema<
105
107
  }
106
108
 
107
109
  // Validate declared properties
110
+ const unknownKeys = this._effectiveUnknownKeys(ctx);
111
+ const previousInheritedUnknownKeys = ctx.inheritedUnknownKeys;
112
+ const previousUnknownKeys = ctx.unknownKeys;
113
+ if (unknownKeys === "strip" || unknownKeys === "reject") {
114
+ ctx.inheritedUnknownKeys = unknownKeys;
115
+ }
116
+ ctx.unknownKeys = undefined;
117
+
108
118
  for (const [key, prop] of this._properties) {
109
119
  ctx.path.push(key);
110
120
  const hasKey = Object.prototype.hasOwnProperty.call(obj, key);
@@ -142,9 +152,12 @@ export class ObjectSchema<
142
152
  ctx.path.pop();
143
153
  }
144
154
 
155
+ ctx.inheritedUnknownKeys = previousInheritedUnknownKeys;
156
+ ctx.unknownKeys = previousUnknownKeys;
157
+
145
158
  // Handle unknown keys
146
159
  for (const key of inputKeys) {
147
- switch (this._effectiveUnknownKeys()) {
160
+ switch (unknownKeys) {
148
161
  case "reject":
149
162
  ctx.issues.push({
150
163
  code: ISSUE_CODES.UNKNOWN_KEY,
package/src/types.ts CHANGED
@@ -201,6 +201,10 @@ export type ParseResult<T> =
201
201
  | { success: true; data: T }
202
202
  | { success: false; issues: ValidationIssue[] };
203
203
 
204
+ export interface ParseOptions {
205
+ unknownKeys?: UnknownKeyMode;
206
+ }
207
+
204
208
  export interface ValidationIssue {
205
209
  code: string;
206
210
  message: string;
@@ -231,6 +235,8 @@ export type UnknownKeyMode = "reject" | "strip" | "allow";
231
235
  export interface ParseContext {
232
236
  path: (string | number)[];
233
237
  issues: ValidationIssue[];
238
+ unknownKeys?: UnknownKeyMode;
239
+ inheritedUnknownKeys?: Exclude<UnknownKeyMode, "allow">;
234
240
  definitions?: Record<string, SchemaNode>;
235
241
  /** Tracks objects already being validated to detect circular references. */
236
242
  seen?: WeakSet<object>;
@@ -115,4 +115,73 @@ describe("Defaults", () => {
115
115
  user: { name: "Bob", role: "guest" },
116
116
  });
117
117
  });
118
+
119
+ it("applies required object-field defaults across scalar types", () => {
120
+ const s = object({
121
+ host: string().minLength(1).default("0.0.0.0"),
122
+ port: int().min(1).default(3200),
123
+ timeoutMs: int().default(5000).min(1000),
124
+ enabled: bool().default(false),
125
+ });
126
+
127
+ expect(s.parse({})).toEqual({
128
+ host: "0.0.0.0",
129
+ port: 3200,
130
+ timeoutMs: 5000,
131
+ enabled: false,
132
+ });
133
+ });
134
+
135
+ it("applies defaults in optional inner and optional wrapper forms", () => {
136
+ const s = object({
137
+ innerDefault: optional(string().default("inner")),
138
+ wrapperDefault: optional(string()).default("wrapper"),
139
+ });
140
+
141
+ expect(s.parse({})).toEqual({
142
+ innerDefault: "inner",
143
+ wrapperDefault: "wrapper",
144
+ });
145
+ });
146
+
147
+ it("applies defaults in a plugin-style config object", () => {
148
+ const BetterPortalConfigSchema = object({
149
+ tenantId: string().minLength(1),
150
+ authressApiUrl: string().minLength(1),
151
+ authressApplicationId: string().minLength(1),
152
+ });
153
+ const PluginConfigSchema = object({
154
+ host: string().minLength(1).default("0.0.0.0"),
155
+ port: int().min(1).default(3200),
156
+ betterportal: BetterPortalConfigSchema,
157
+ dbLocation: string().minLength(1).default("data"),
158
+ redisUrl: string().minLength(1).default("redis://localhost:6379"),
159
+ gotenbergBaseUrl: string().minLength(1).default("http://localhost:3000"),
160
+ gotenbergTimeoutMs: int().default(5000).min(1000),
161
+ }, { unknownKeys: "strip" });
162
+
163
+ expect(PluginConfigSchema.parse({
164
+ port: 3211,
165
+ betterportal: {
166
+ tenantId: "tenant-lorem",
167
+ authressApiUrl: "https://auth.example.test",
168
+ authressApplicationId: "app_loremIpsum123",
169
+ },
170
+ redisUrl: "redis://10.1.1.4:6379",
171
+ gotenbergBaseUrl: "http://10.1.1.16:3000",
172
+ extra: true,
173
+ })).toEqual({
174
+ host: "0.0.0.0",
175
+ port: 3211,
176
+ betterportal: {
177
+ tenantId: "tenant-lorem",
178
+ authressApiUrl: "https://auth.example.test",
179
+ authressApplicationId: "app_loremIpsum123",
180
+ },
181
+ dbLocation: "data",
182
+ redisUrl: "redis://10.1.1.4:6379",
183
+ gotenbergBaseUrl: "http://10.1.1.16:3000",
184
+ gotenbergTimeoutMs: 5000,
185
+ });
186
+ });
118
187
  });
@@ -1,5 +1,5 @@
1
1
  import { describe, it, expect } from "vitest";
2
- import { number, float32, float64, int, int8, int16, int32, int64, uint8, uint16, uint32, uint64 } from "../../src/index.js";
2
+ import { number, float32, float64, int, int8, int16, int32, int64, uint8, uint16, uint32, uint64, object } from "../../src/index.js";
3
3
 
4
4
  describe("NumberSchema", () => {
5
5
  it("accepts valid numbers", () => {
@@ -61,6 +61,43 @@ describe("NumberSchema", () => {
61
61
  expect(result.success).toBe(false);
62
62
  if (!result.success) expect(result.issues[0].code).toBe("coercion_failed");
63
63
  });
64
+
65
+ // Bare `.coerce()` (no args) must imply string source on a numeric target.
66
+ // Regression: previously no-op'd, so a string input failed with invalid_type.
67
+ it("coerces string to number with no-arg coerce()", () => {
68
+ const s = number().coerce();
69
+ expect(s.parse("3.14")).toBe(3.14);
70
+ });
71
+
72
+ // Full string->number coercion matrix (no-arg form). ASCII decimal float
73
+ // incl. exponent, trimmed. No hex/Infinity/NaN/underscores.
74
+ describe("string->number matrix via no-arg coerce()", () => {
75
+ const s = number().coerce();
76
+
77
+ it.each([
78
+ ["3.14", 3.14],
79
+ ["-1.5e3", -1500],
80
+ [" 2 ", 2],
81
+ ["0", 0],
82
+ ])("accepts %j -> %j", (input, expected) => {
83
+ expect(s.parse(input as string)).toBe(expected);
84
+ });
85
+
86
+ it.each([
87
+ "0x10",
88
+ "Infinity",
89
+ "NaN",
90
+ "",
91
+ "1_000",
92
+ "abc",
93
+ ])("rejects %j with coercion_failed", (input) => {
94
+ const result = s.safeParse(input);
95
+ expect(result.success).toBe(false);
96
+ if (!result.success) {
97
+ expect(result.issues[0].code).toBe("coercion_failed");
98
+ }
99
+ });
100
+ });
64
101
  });
65
102
 
66
103
  describe("Float32Schema", () => {
@@ -102,6 +139,66 @@ describe("IntSchema", () => {
102
139
  const result = s.safeParse("3.14");
103
140
  expect(result.success).toBe(false);
104
141
  });
142
+
143
+ it("coerces string to int with no-arg coerce()", () => {
144
+ const s = int().coerce();
145
+ expect(s.parse("42")).toBe(42);
146
+ });
147
+
148
+ // Full string->int coercion matrix (no-arg form). ASCII `^-?\d+$`, trimmed.
149
+ describe("string->int matrix via no-arg coerce()", () => {
150
+ const s = int().coerce();
151
+
152
+ it.each([
153
+ ["42", 42],
154
+ [" 42 ", 42],
155
+ ["-7", -7],
156
+ ])("accepts %j -> %j", (input, expected) => {
157
+ expect(s.parse(input as string)).toBe(expected);
158
+ });
159
+
160
+ it.each([
161
+ "3.14",
162
+ "0x10",
163
+ "1_000",
164
+ "+5",
165
+ "Infinity",
166
+ "",
167
+ "abc",
168
+ ])("rejects %j with coercion_failed", (input) => {
169
+ const result = s.safeParse(input);
170
+ expect(result.success).toBe(false);
171
+ if (!result.success) {
172
+ expect(result.issues[0].code).toBe("coercion_failed");
173
+ }
174
+ });
175
+ });
176
+ });
177
+
178
+ // Reproduces the reported field-level coercion failure: an object whose
179
+ // numeric fields use bare `.coerce()` must coerce string inputs, not reject
180
+ // them with invalid_type.
181
+ describe("object with no-arg coerce() on numeric fields", () => {
182
+ it("coerces all string fields to numbers", () => {
183
+ const schema = object({
184
+ lumpSum: number().coerce().min(0),
185
+ monthlyContributions: number().coerce().min(0),
186
+ investmentTerm: number().coerce().min(1),
187
+ });
188
+ const result = schema.safeParse({
189
+ lumpSum: "1000000",
190
+ monthlyContributions: "1000",
191
+ investmentTerm: "20",
192
+ });
193
+ expect(result.success).toBe(true);
194
+ if (result.success) {
195
+ expect(result.data).toEqual({
196
+ lumpSum: 1000000,
197
+ monthlyContributions: 1000,
198
+ investmentTerm: 20,
199
+ });
200
+ }
201
+ });
105
202
  });
106
203
 
107
204
  describe("Int8Schema", () => {
@@ -1,5 +1,5 @@
1
1
  import { describe, it, expect } from "vitest";
2
- import { object, string, int, optional, bool, RefSchema } from "../../src/index.js";
2
+ import { object, string, int, optional, bool, RefSchema, parse } from "../../src/index.js";
3
3
 
4
4
  describe("ObjectSchema", () => {
5
5
  it("accepts valid objects", () => {
@@ -45,6 +45,65 @@ describe("ObjectSchema", () => {
45
45
  expect(result).toEqual({ name: "Alice", extra: true });
46
46
  });
47
47
 
48
+ it("parse-level strip overrides object-level allow recursively", () => {
49
+ const s = object({
50
+ user: object({ name: string() }).unknownKeys("allow"),
51
+ }).unknownKeys("allow");
52
+
53
+ expect(
54
+ s.parse(
55
+ { user: { name: "Alice", role: "admin" }, rootExtra: true },
56
+ { unknownKeys: "strip" }
57
+ )
58
+ ).toEqual({ user: { name: "Alice" } });
59
+ });
60
+
61
+ it("top-level parse unknownKeys overrides schema unknownKeys", () => {
62
+ const s = object({ name: string() }).unknownKeys("strip");
63
+
64
+ expect(() =>
65
+ parse(s, { name: "Alice", extra: true }, { unknownKeys: "reject" })
66
+ ).toThrow("unknown_key");
67
+ });
68
+
69
+ it("parent strip overrides nested allow", () => {
70
+ const s = object({
71
+ user: object({ name: string() }).unknownKeys("allow"),
72
+ }).unknownKeys("strip");
73
+
74
+ expect(s.parse({ user: { name: "Alice", role: "admin" } })).toEqual({
75
+ user: { name: "Alice" },
76
+ });
77
+ });
78
+
79
+ it("parent reject overrides nested allow", () => {
80
+ const s = object({
81
+ user: object({ name: string() }).unknownKeys("allow"),
82
+ }).unknownKeys("reject");
83
+
84
+ const result = s.safeParse({ user: { name: "Alice", role: "admin" } });
85
+
86
+ expect(result.success).toBe(false);
87
+ if (!result.success) {
88
+ expect(result.issues[0]).toEqual(
89
+ expect.objectContaining({
90
+ code: "unknown_key",
91
+ path: ["user", "role"],
92
+ })
93
+ );
94
+ }
95
+ });
96
+
97
+ it("parent allow leaves nested unknown key policy alone", () => {
98
+ const s = object({
99
+ user: object({ name: string() }).unknownKeys("strip"),
100
+ }).unknownKeys("allow");
101
+
102
+ expect(
103
+ s.parse({ user: { name: "Alice", role: "admin" }, rootExtra: true })
104
+ ).toEqual({ user: { name: "Alice" }, rootExtra: true });
105
+ });
106
+
48
107
  it("handles optional fields", () => {
49
108
  const s = object({
50
109
  name: string(),
@@ -35,6 +35,47 @@ describe("BoolSchema", () => {
35
35
  expect(result.success).toBe(false);
36
36
  if (!result.success) expect(result.issues[0].code).toBe("coercion_failed");
37
37
  });
38
+
39
+ it("coerces string to bool with no-arg coerce()", () => {
40
+ const s = bool().coerce();
41
+ expect(s.parse("true")).toBe(true);
42
+ expect(s.parse("false")).toBe(false);
43
+ });
44
+
45
+ // Full string->bool coercion matrix (no-arg form). Trim + case-insensitive.
46
+ // true <- "true"/"TRUE"/"1"; false <- "false"/"0". Nothing else.
47
+ describe("string->bool matrix via no-arg coerce()", () => {
48
+ const s = bool().coerce();
49
+
50
+ it.each([
51
+ ["true", true],
52
+ ["TRUE", true],
53
+ ["1", true],
54
+ [" true ", true],
55
+ ["false", false],
56
+ ["0", false],
57
+ [" FALSE ", false],
58
+ ])("accepts %j -> %j", (input, expected) => {
59
+ expect(s.parse(input as string)).toBe(expected);
60
+ });
61
+
62
+ it.each([
63
+ "yes",
64
+ "no",
65
+ "on",
66
+ "off",
67
+ "t",
68
+ "f",
69
+ "2",
70
+ "",
71
+ ])("rejects %j with coercion_failed", (input) => {
72
+ const result = s.safeParse(input);
73
+ expect(result.success).toBe(false);
74
+ if (!result.success) {
75
+ expect(result.issues[0].code).toBe("coercion_failed");
76
+ }
77
+ });
78
+ });
38
79
  });
39
80
 
40
81
  describe("NullSchema", () => {