@mikrojs/schema 0.0.0 → 0.19.0

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/core.d.ts ADDED
@@ -0,0 +1,163 @@
1
+ declare function err<E>(error: E): {
2
+ ok: false;
3
+ error: E;
4
+ };
5
+ export type SchemaError = {
6
+ name: 'ValidationFailed';
7
+ message: string;
8
+ path: string;
9
+ };
10
+ export declare const SchemaError: {
11
+ ValidationFailed: (message: string, path: string) => SchemaError;
12
+ };
13
+ type Primitive = string | number | boolean;
14
+ export type Format = 'url' | 'hostname' | 'ipv4' | 'mac' | 'email';
15
+ export type Unit = 'm' | 'kg' | 's' | 'A' | 'K' | 'cd' | 'mol' | 'Hz' | 'rad' | 'sr' | 'N' | 'Pa' | 'J' | 'W' | 'C' | 'V' | 'F' | 'Ohm' | 'S' | 'Wb' | 'T' | 'H' | 'Cel' | 'lm' | 'lx' | 'Bq' | 'Gy' | 'Sv' | 'kat' | 'm2' | 'm3' | 'm/s' | 'm/s2' | 'm3/s' | 'W/m2' | 'cd/m2' | 'bit' | 'bit/s' | 'lat' | 'lon' | 'pH' | 'dB' | 'dBW' | 'count' | '/' | '%RH' | '%EL' | 'EL' | '1/s' | 'S/m' | 'B' | 'VA' | 'VAs' | 'var' | 'vars' | 'J/m' | 'kg/m3' | 'deg' | 'NTU' | 'ms' | 'min' | 'h' | 'MHz' | 'kW' | 'kVA' | 'kvar' | 'Ah' | 'Wh' | 'kWh' | 'varh' | 'kvarh' | 'kVAh' | 'Wh/km' | 'KiB' | 'GB' | 'Mbit/s' | 'B/s' | 'MB/s' | 'mV' | 'mA' | 'dBm' | 'ug/m3' | 'mm/h' | 'm/h' | 'ppm' | '/100' | '/1000' | 'hPa' | 'mm' | 'cm' | 'km' | 'km/h' | 'ppb' | 'ppt' | 'VAh' | 'mg/l' | 'ug/l' | 'g/l' | 'us' | 'kHz' | 'GHz' | 'mW' | 'uA' | 'uV' | 'mAh' | 'MiB' | 'kB' | 'MB' | 'kbit/s' | 'KiB/s' | 'kohm' | 'Mohm' | 'kPa' | 'bar' | 'Bd';
16
+ interface Annotated {
17
+ readonly title?: string;
18
+ readonly description?: string;
19
+ }
20
+ export interface StringSchema extends Annotated {
21
+ readonly kind: 'string';
22
+ readonly default?: string;
23
+ readonly mask?: boolean;
24
+ readonly minLength?: number;
25
+ readonly maxLength?: number;
26
+ readonly format?: Format;
27
+ }
28
+ export interface NumberSchema extends Annotated {
29
+ readonly kind: 'number';
30
+ readonly default?: number;
31
+ readonly mask?: boolean;
32
+ readonly min?: number;
33
+ readonly max?: number;
34
+ readonly integer?: boolean;
35
+ readonly unit?: Unit;
36
+ }
37
+ export interface BooleanSchema extends Annotated {
38
+ readonly kind: 'boolean';
39
+ readonly default?: boolean;
40
+ }
41
+ export interface UnknownSchema {
42
+ readonly kind: 'unknown';
43
+ }
44
+ export interface LiteralSchema<T extends Primitive = Primitive> extends Annotated {
45
+ readonly kind: 'literal';
46
+ readonly value: T;
47
+ readonly default?: T;
48
+ }
49
+ export interface ArraySchema<S extends Schema = Schema> extends Annotated {
50
+ readonly kind: 'array';
51
+ readonly element: S;
52
+ readonly default?: unknown;
53
+ readonly minItems?: number;
54
+ readonly maxItems?: number;
55
+ }
56
+ export interface ObjectSchema<Shape extends Record<string, Schema> = Record<string, Schema>> extends Annotated {
57
+ readonly kind: 'object';
58
+ readonly shape: Shape;
59
+ }
60
+ export interface OptionalSchema<S extends Schema = Schema> {
61
+ readonly kind: 'optional';
62
+ readonly inner: S;
63
+ }
64
+ export interface TupleSchema<Elements extends readonly Schema[] = readonly Schema[]> extends Annotated {
65
+ readonly kind: 'tuple';
66
+ readonly elements: Elements;
67
+ readonly default?: unknown;
68
+ }
69
+ export interface UnionSchema<Members extends readonly Schema[] = readonly Schema[]> extends Annotated {
70
+ readonly kind: 'union';
71
+ readonly members: Members;
72
+ readonly default?: unknown;
73
+ }
74
+ export interface TaggedUnionSchema<Key extends string = string, Branches extends Record<string, ObjectSchema> = Record<string, ObjectSchema>> extends Annotated {
75
+ readonly kind: 'taggedUnion';
76
+ readonly key: Key;
77
+ readonly branches: Branches;
78
+ readonly default?: unknown;
79
+ }
80
+ export type Schema = StringSchema | NumberSchema | BooleanSchema | UnknownSchema | LiteralSchema | ArraySchema | ObjectSchema | OptionalSchema | TupleSchema | UnionSchema | TaggedUnionSchema;
81
+ type Simplify<T> = {
82
+ [K in keyof T]: T[K];
83
+ } & {};
84
+ export type Infer<S> = S extends StringSchema ? string : S extends NumberSchema ? number : S extends BooleanSchema ? boolean : S extends UnknownSchema ? unknown : S extends LiteralSchema<infer T> ? T : S extends ArraySchema<infer E> ? ArraySchema extends S ? [] : Infer<E>[] : S extends ObjectSchema<infer Shape> ? ObjectSchema extends S ? object : Simplify<InferObject<Shape>> : S extends TupleSchema<infer Elements> ? InferTuple<Elements> : S extends OptionalSchema<infer Inner> ? OptionalSchema extends S ? OptionalSchema : Infer<Inner> | undefined : S extends UnionSchema<infer Members> ? InferUnion<Members> : S extends TaggedUnionSchema<infer Key, infer Branches> ? InferTaggedUnion<Key, Branches> : never;
85
+ type InferObject<Shape> = {
86
+ [K in keyof Shape as Shape[K] extends OptionalSchema ? never : K]: Infer<Shape[K]>;
87
+ } & {
88
+ [K in keyof Shape as Shape[K] extends OptionalSchema ? K : never]?: Infer<Shape[K]>;
89
+ };
90
+ type InferTuple<Elements> = Elements extends readonly [infer Head, ...infer Tail] ? [Infer<Head>, ...InferTuple<Tail>] : [];
91
+ type InferUnion<Members> = Members extends readonly [infer Head, ...infer Tail] ? Infer<Head> | InferUnion<Tail> : never;
92
+ type InferTaggedUnion<Key extends string, Branches> = {
93
+ [Tag in keyof Branches & string]: {
94
+ [K in Key]: Tag;
95
+ } & Infer<Branches[Tag]>;
96
+ }[keyof Branches & string];
97
+ export type InferRead<S> = S extends ObjectSchema<infer Shape> ? ObjectSchema extends S ? object : Simplify<InferReadObject<Shape>> : Infer<S>;
98
+ type Filled<S> = S extends {
99
+ default: unknown;
100
+ } ? true : S extends OptionalSchema ? false : S extends ObjectSchema<infer Shape> ? ObjectSchema extends S ? false : AllFilled<Shape> : false;
101
+ type AllFilled<Shape> = false extends {
102
+ [K in keyof Shape]: Shape[K] extends OptionalSchema ? true : Filled<Shape[K]>;
103
+ }[keyof Shape] ? false : true;
104
+ type InferReadObject<Shape> = {
105
+ [K in keyof Shape as Filled<Shape[K]> extends true ? K : never]: InferRead<Shape[K]>;
106
+ } & {
107
+ [K in keyof Shape as Filled<Shape[K]> extends true ? never : K]?: InferRead<Shape[K]>;
108
+ };
109
+ export interface DisplayOptions {
110
+ readonly title?: string;
111
+ readonly description?: string;
112
+ }
113
+ export interface ScalarOptions<T> extends DisplayOptions {
114
+ readonly default?: T;
115
+ }
116
+ export interface DefaultOption<T> extends DisplayOptions {
117
+ readonly default?: T;
118
+ }
119
+ export interface MaskableOptions<T> extends ScalarOptions<T> {
120
+ readonly mask?: boolean;
121
+ }
122
+ export interface StringOptions<T> extends MaskableOptions<T> {
123
+ readonly minLength?: number;
124
+ readonly maxLength?: number;
125
+ readonly format?: Format;
126
+ }
127
+ export interface NumberOptions<T> extends MaskableOptions<T> {
128
+ readonly min?: number;
129
+ readonly max?: number;
130
+ readonly integer?: boolean;
131
+ readonly unit?: Unit;
132
+ }
133
+ export interface ArrayOptions<T> extends DefaultOption<T> {
134
+ readonly minItems?: number;
135
+ readonly maxItems?: number;
136
+ }
137
+ type Defaulted<S, D> = [D] extends [undefined] ? S : S & {
138
+ readonly default: unknown;
139
+ };
140
+ export declare function string<D extends string | undefined = undefined>(options?: StringOptions<D>): Defaulted<StringSchema, D>;
141
+ export declare function number<D extends number | undefined = undefined>(options?: NumberOptions<D>): Defaulted<NumberSchema, D>;
142
+ export declare function boolean<D extends boolean | undefined = undefined>(options?: ScalarOptions<D>): Defaulted<BooleanSchema, D>;
143
+ export declare function unknown(): UnknownSchema;
144
+ export declare function literal<T extends Primitive, D extends T | undefined = undefined>(value: T, options?: ScalarOptions<D>): Defaulted<LiteralSchema<T>, D>;
145
+ export declare function array<S extends Schema, D extends NoInfer<Infer<S>>[] | undefined = undefined>(element: S, options?: ArrayOptions<D>): Defaulted<ArraySchema<S>, D>;
146
+ export declare function object<Shape extends Record<string, Schema>>(shape: Shape, options?: DefaultOption<never>): ObjectSchema<Shape>;
147
+ export declare function tuple<Elements extends readonly Schema[], D extends NoInfer<Infer<TupleSchema<Elements>>> | undefined = undefined>(elements: [...Elements], options?: DefaultOption<D>): Defaulted<TupleSchema<Elements>, D>;
148
+ export declare function optional<S extends Schema>(inner: S): OptionalSchema<S>;
149
+ export declare function union<Members extends readonly Schema[], D extends NoInfer<Infer<UnionSchema<Members>>> | undefined = undefined>(members: [...Members], options?: DefaultOption<D>): Defaulted<UnionSchema<Members>, D>;
150
+ export interface EnumEntry<T extends Primitive> {
151
+ readonly value: T;
152
+ readonly title?: string;
153
+ readonly description?: string;
154
+ }
155
+ type EnumMembers<Entries extends readonly EnumEntry<Primitive>[]> = {
156
+ [K in keyof Entries]: LiteralSchema<Entries[K]['value']>;
157
+ };
158
+ export declare function enumOf<const Entries extends readonly EnumEntry<Primitive>[], D extends Entries[number]['value'] | undefined = undefined>(entries: Entries, options?: DefaultOption<D>): Defaulted<UnionSchema<EnumMembers<Entries>>, D>;
159
+ export declare function taggedUnion<Key extends string, Branches extends Record<string, ObjectSchema>, D extends NoInfer<Infer<TaggedUnionSchema<Key, Branches>>> | undefined = undefined>(key: Key, branches: Branches, options?: DefaultOption<D>): Defaulted<TaggedUnionSchema<Key, Branches>, D>;
160
+ export declare function applyDefaults(schema: Schema, value: unknown): unknown;
161
+ export declare function validate(schema: Schema, value: unknown, path: string): ReturnType<typeof err<SchemaError>> | null;
162
+ export {};
163
+ //# sourceMappingURL=core.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
package/dist/core.js ADDED
@@ -0,0 +1,353 @@
1
+ /* The schema DSL: types, constructors, the validator, and applyDefaults.
2
+ * Dependency-free and free of Node APIs, so a registry can import it anywhere
3
+ * it runs. This is the host implementation; a device runs the C++ port in
4
+ * @mikrojs/native's mik_schema.cpp, and mikro/schema is that port plus a
5
+ * Result-returning parse(). The two are held together by the conformance
6
+ * corpus (@mikrojs/native scripts/gen-schema-fixtures.js). */
7
+ function err(error) {
8
+ return { ok: false, error };
9
+ }
10
+ export const SchemaError = {
11
+ ValidationFailed: (message, path) => ({
12
+ name: 'ValidationFailed',
13
+ message,
14
+ path,
15
+ }),
16
+ };
17
+ /* Defaults below a wholesale unit never fill: applyDefaults replaces the unit
18
+ * whole, so only a unit-level default applies. Rejected where they are written
19
+ * rather than at the validation that later misses the field. The walk stops at
20
+ * a nested unit's own default, since that unit's constructor already cleared
21
+ * everything under it. */
22
+ function rejectInnerDefaults(node, path, unit, self) {
23
+ if (node.default !== undefined) {
24
+ throw new TypeError(`a default under ${unit} never applies; give ${self} itself a whole-value ` +
25
+ `default instead (found at ${path})`);
26
+ }
27
+ if (node.kind === 'object') {
28
+ const keys = Object.keys(node.shape);
29
+ for (let i = 0; i < keys.length; i++) {
30
+ rejectInnerDefaults(node.shape[keys[i]], `${path}.${keys[i]}`, unit, self);
31
+ }
32
+ }
33
+ else if (node.kind === 'optional') {
34
+ // optional() rejects an inner default itself, so this only reaches what it
35
+ // wraps without reporting the same node twice.
36
+ rejectInnerDefaults(node.inner, path, unit, self);
37
+ }
38
+ }
39
+ /* Copies the annotations onto the node and rejects a `default` whose *shape*
40
+ * the node would not accept, so an obviously wrong default fails where it is
41
+ * written. Annotations live on the node so a schema serializes to JSON as-is.
42
+ *
43
+ * Constraints are deliberately not checked here, because validate() below does
44
+ * not carry them: see its comment. A default that breaks its own bound is
45
+ * caught by parseConfigSchema in config.ts, which runs when the config is
46
+ * packed, moments after this. */
47
+ const ANNOTATION_KEYS = [
48
+ 'title',
49
+ 'description',
50
+ 'mask',
51
+ 'minLength',
52
+ 'maxLength',
53
+ 'min',
54
+ 'max',
55
+ 'integer',
56
+ 'minItems',
57
+ 'maxItems',
58
+ 'format',
59
+ 'unit',
60
+ ];
61
+ function annotate(node, options) {
62
+ if (options === undefined)
63
+ return node;
64
+ const out = node;
65
+ const src = options;
66
+ for (let i = 0; i < ANNOTATION_KEYS.length; i++) {
67
+ const key = ANNOTATION_KEYS[i];
68
+ if (src[key] !== undefined)
69
+ out[key] = src[key];
70
+ }
71
+ if (options.default !== undefined) {
72
+ out.default = options.default;
73
+ const result = validate(node, options.default, '');
74
+ if (result !== null) {
75
+ throw new TypeError(`schema default does not match the schema: ${result.error.message}`);
76
+ }
77
+ }
78
+ return node;
79
+ }
80
+ export function string(options) {
81
+ return annotate({ kind: 'string' }, options);
82
+ }
83
+ export function number(options) {
84
+ return annotate({ kind: 'number' }, options);
85
+ }
86
+ export function boolean(options) {
87
+ return annotate({ kind: 'boolean' }, options);
88
+ }
89
+ export function unknown() {
90
+ return { kind: 'unknown' };
91
+ }
92
+ export function literal(value, options) {
93
+ return annotate({ kind: 'literal', value }, options);
94
+ }
95
+ export function array(element, options) {
96
+ rejectInnerDefaults(element, '[]', 'an array', 'the array');
97
+ return annotate({ kind: 'array', element }, options);
98
+ }
99
+ export function object(shape, options) {
100
+ if (options?.default !== undefined) {
101
+ throw new TypeError("an object's defaults compose from its fields; declare defaults on the fields");
102
+ }
103
+ return annotate({ kind: 'object', shape }, options);
104
+ }
105
+ export function tuple(elements, options) {
106
+ for (let i = 0; i < elements.length; i++) {
107
+ rejectInnerDefaults(elements[i], `[${i}]`, 'a tuple', 'the tuple');
108
+ }
109
+ return annotate({ kind: 'tuple', elements }, options);
110
+ }
111
+ export function optional(inner) {
112
+ if (inner.default !== undefined) {
113
+ throw new TypeError('optional() cannot wrap a schema with a default');
114
+ }
115
+ return { kind: 'optional', inner };
116
+ }
117
+ export function union(members, options) {
118
+ for (let i = 0; i < members.length; i++) {
119
+ rejectInnerDefaults(members[i], `[${i}]`, 'a union', 'the union');
120
+ }
121
+ return annotate({ kind: 'union', members }, options);
122
+ }
123
+ export function enumOf(entries, options) {
124
+ const members = entries.map((entry) => literal(entry.value, { title: entry.title, description: entry.description }));
125
+ return annotate({ kind: 'union', members }, options);
126
+ }
127
+ export function taggedUnion(key, branches, options) {
128
+ const tags = Object.keys(branches);
129
+ for (let i = 0; i < tags.length; i++) {
130
+ rejectInnerDefaults(branches[tags[i]], `.${tags[i]}`, 'a taggedUnion', 'the union');
131
+ }
132
+ return annotate({ kind: 'taggedUnion', key, branches }, options);
133
+ }
134
+ // ── Defaults ────────────────────────────────────────────────────────
135
+ /* Builds the effective value: schema defaults with `value` layered over them.
136
+ * Objects are structure and always materialize (recursing per field, unknown
137
+ * keys dropped); every other node is replaced wholesale by a present value, so
138
+ * defaults inside array elements or union branches are form hints, not fills.
139
+ * The result is unvalidated — a missing required field stays missing for
140
+ * parse() to report. */
141
+ export function applyDefaults(schema, value) {
142
+ switch (schema.kind) {
143
+ case 'object': {
144
+ // A present non-object stays as-is so validation rejects it; replacing
145
+ // it with {} here would make `{mqtt: 42}` validate clean and never
146
+ // record a configError.
147
+ if (value !== undefined &&
148
+ (typeof value !== 'object' || value === null || Array.isArray(value))) {
149
+ return value;
150
+ }
151
+ const src = value === undefined ? {} : value;
152
+ const out = {};
153
+ const keys = Object.keys(schema.shape);
154
+ for (let i = 0; i < keys.length; i++) {
155
+ const key = keys[i];
156
+ const field = schema.shape[key];
157
+ // hasOwn, not indexing: a shape key like "constructor" must read as
158
+ // absent, not as the inherited prototype member.
159
+ const raw = Object.hasOwn(src, key) ? src[key] : undefined;
160
+ if (field.kind === 'optional') {
161
+ if (raw !== undefined)
162
+ out[key] = raw;
163
+ }
164
+ else {
165
+ const child = applyDefaults(field, raw);
166
+ if (child !== undefined)
167
+ out[key] = child;
168
+ }
169
+ }
170
+ return out;
171
+ }
172
+ case 'array':
173
+ if (value !== undefined)
174
+ return value;
175
+ return schema.default !== undefined ? schema.default : [];
176
+ case 'unknown':
177
+ case 'optional':
178
+ return value;
179
+ default:
180
+ return value !== undefined ? value : schema.default;
181
+ }
182
+ }
183
+ // ── Parse ───────────────────────────────────────────────────────────
184
+ function typeOf(value) {
185
+ if (value === null)
186
+ return 'null';
187
+ if (Array.isArray(value))
188
+ return 'array';
189
+ return typeof value;
190
+ }
191
+ /* Shape, plus the bounds a value has to satisfy: min, max, integer, minLength,
192
+ * maxLength, minItems, maxItems. `format` and `unit` are the exceptions and
193
+ * stay in config.ts — format needs regular expressions the device has no
194
+ * engine for, and unit is a display hint that constrains nothing.
195
+ *
196
+ * These used to be host-only, because carrying them here charged every app
197
+ * that imports mikro/schema about 4 KB of heap. That argument died when the
198
+ * device stopped running this file: mik_schema.cpp is what a device executes,
199
+ * and a bound there is a few comparisons. Keep the two in step — the corpus in
200
+ * scripts/gen-schema-fixtures.js is what says whether they are.
201
+ *
202
+ * One node is checked completely before the walk moves on, so a value that is
203
+ * both misshapen and out of bounds reports whichever comes first in schema
204
+ * order rather than every structural error ahead of every bound. */
205
+ export function validate(schema, value, path) {
206
+ const fault = walk(schema, value, path);
207
+ if (fault === null)
208
+ return null;
209
+ return err(SchemaError.ValidationFailed(fault.message, fault.path));
210
+ }
211
+ function shape(message, path) {
212
+ return { message, path, bound: false };
213
+ }
214
+ function bound(message, path) {
215
+ return { message, path, bound: true };
216
+ }
217
+ function walk(schema, value, path) {
218
+ switch (schema.kind) {
219
+ case 'string': {
220
+ if (typeof value !== 'string')
221
+ return shape(`expected string, got ${typeOf(value)}`, path);
222
+ const { minLength, maxLength } = schema;
223
+ if (minLength !== undefined && value.length < minLength)
224
+ return bound(`shorter than ${minLength} characters`, path);
225
+ if (maxLength !== undefined && value.length > maxLength)
226
+ return bound(`longer than ${maxLength} characters`, path);
227
+ return null;
228
+ }
229
+ case 'number': {
230
+ if (typeof value !== 'number' || Number.isNaN(value))
231
+ return shape(`expected number, got ${typeOf(value)}`, path);
232
+ const { min, max } = schema;
233
+ if (schema.integer === true && !Number.isInteger(value))
234
+ return bound(`expected a whole number, got ${value}`, path);
235
+ if (min !== undefined && value < min)
236
+ return bound(`below the minimum of ${min}`, path);
237
+ if (max !== undefined && value > max)
238
+ return bound(`above the maximum of ${max}`, path);
239
+ return null;
240
+ }
241
+ case 'boolean':
242
+ if (typeof value !== 'boolean')
243
+ return shape(`expected boolean, got ${typeOf(value)}`, path);
244
+ return null;
245
+ case 'unknown':
246
+ return null;
247
+ case 'literal':
248
+ if (value !== schema.value)
249
+ return shape(`expected ${JSON.stringify(schema.value)}, got ${JSON.stringify(value)}`, path);
250
+ return null;
251
+ case 'array': {
252
+ if (!Array.isArray(value))
253
+ return shape(`expected array, got ${typeOf(value)}`, path);
254
+ const { minItems, maxItems } = schema;
255
+ if (minItems !== undefined && value.length < minItems)
256
+ return bound(`fewer than ${minItems} items`, path);
257
+ if (maxItems !== undefined && value.length > maxItems)
258
+ return bound(`more than ${maxItems} items`, path);
259
+ for (let i = 0; i < value.length; i++) {
260
+ const result = walk(schema.element, value[i], `${path}[${i}]`);
261
+ if (result !== null)
262
+ return result;
263
+ }
264
+ return null;
265
+ }
266
+ case 'object': {
267
+ if (typeof value !== 'object' || value === null || Array.isArray(value))
268
+ return shape(`expected object, got ${typeOf(value)}`, path);
269
+ const obj = value;
270
+ const keys = Object.keys(schema.shape);
271
+ for (let i = 0; i < keys.length; i++) {
272
+ const key = keys[i];
273
+ const fieldSchema = schema.shape[key];
274
+ const fieldPath = `${path}.${key}`;
275
+ // hasOwn, like the taggedUnion dispatch: an inherited "constructor"
276
+ // must not stand in for a field.
277
+ if (fieldSchema.kind === 'optional') {
278
+ if (Object.hasOwn(obj, key)) {
279
+ const result = walk(fieldSchema, obj[key], fieldPath);
280
+ if (result !== null)
281
+ return result;
282
+ }
283
+ }
284
+ else {
285
+ if (!Object.hasOwn(obj, key))
286
+ return shape(`missing required field`, fieldPath);
287
+ const result = walk(fieldSchema, obj[key], fieldPath);
288
+ if (result !== null)
289
+ return result;
290
+ }
291
+ }
292
+ return null;
293
+ }
294
+ case 'tuple': {
295
+ if (!Array.isArray(value))
296
+ return shape(`expected array, got ${typeOf(value)}`, path);
297
+ if (value.length !== schema.elements.length)
298
+ return shape(`expected ${schema.elements.length} elements, got ${value.length}`, path);
299
+ for (let i = 0; i < schema.elements.length; i++) {
300
+ const result = walk(schema.elements[i], value[i], `${path}[${i}]`);
301
+ if (result !== null)
302
+ return result;
303
+ }
304
+ return null;
305
+ }
306
+ case 'optional': {
307
+ if (value === undefined)
308
+ return null;
309
+ return walk(schema.inner, value, path);
310
+ }
311
+ case 'union': {
312
+ /* A union accepts what ANY member accepts, bounds included: in
313
+ * union([number({max: 10}), number({min: 100})]), 150 matches the first
314
+ * member's shape, breaks its bound, and the second member exists for
315
+ * exactly that value.
316
+ *
317
+ * When nothing passes, a member that had the right shape and only broke
318
+ * a bound gives the better message: "above the maximum of 100" tells an
319
+ * operator what to do, and the generic line does not. A member of the
320
+ * wrong shape says nothing useful about a union of mixed shapes, so
321
+ * those fall through to the generic line. */
322
+ let outOfRange = null;
323
+ for (let i = 0; i < schema.members.length; i++) {
324
+ const result = walk(schema.members[i], value, path);
325
+ if (result === null)
326
+ return null;
327
+ if (result.bound)
328
+ outOfRange ??= result;
329
+ }
330
+ return outOfRange ?? shape(`value did not match any union member`, path);
331
+ }
332
+ case 'taggedUnion': {
333
+ if (typeof value !== 'object' || value === null || Array.isArray(value))
334
+ return shape(`expected object, got ${typeOf(value)}`, path);
335
+ const obj = value;
336
+ const tag = obj[schema.key];
337
+ if (tag === undefined)
338
+ return shape(`missing discriminator field`, `${path}.${schema.key}`);
339
+ if (typeof tag !== 'string' && typeof tag !== 'number' && typeof tag !== 'boolean')
340
+ return shape(`expected primitive discriminator, got ${typeOf(tag)}`, `${path}.${schema.key}`);
341
+ // hasOwn, not indexing: a tag like "constructor" must not resolve to
342
+ // an inherited property and validate against garbage.
343
+ const branch = Object.hasOwn(schema.branches, tag)
344
+ ? schema.branches[tag]
345
+ : undefined;
346
+ if (branch === undefined)
347
+ return shape(`unknown tag ${JSON.stringify(tag)}`, `${path}.${schema.key}`);
348
+ return walk(branch, value, path);
349
+ }
350
+ }
351
+ return shape(`unknown schema kind: ${schema.kind}`, path);
352
+ }
353
+ //# sourceMappingURL=core.js.map