+3
-3
@@ -225,6 +225,6 @@ // src/messages.ts | ||
| optional, | ||
| value | ||
| value: schemaValue | ||
| }) => { | ||
| return (currentValue, { path }) => { | ||
| const valueKeys = Object.keys(value); | ||
| const valueKeys = Object.keys(schemaValue); | ||
| const currentValueKeys = Object.keys(currentValue); | ||
@@ -235,3 +235,3 @@ if (currentValueKeys.length > valueKeys.length) { | ||
| for (const key in currentValue) { | ||
| if (!(key in value) && !optional.includes(key)) { | ||
| if (!(key in schemaValue) && !optional.includes(key)) { | ||
| return messages.object.no_property({ path: key }); | ||
@@ -238,0 +238,0 @@ } |
@@ -14,3 +14,3 @@ import { Infer, Schema } from '../schema/schema.ts'; | ||
| number(): NumberDesy; | ||
| object<TValue extends ObjectDesyValue>(shape: TValue): ObjectDesy<TValue, { [K in keyof TValue]: Infer<TValue[K]>; }>; | ||
| object<TValue extends ObjectDesyValue>(shape: TValue): ObjectDesy<TValue, { [K in keyof TValue as undefined extends Infer<TValue[K]> ? never : K]: Infer<TValue[K]>; } & { [K_1 in keyof TValue as undefined extends Infer<TValue[K_1]> ? K_1 : never]?: Infer<TValue[K_1]> | undefined; }>; | ||
| boolean(): BooleanDesy<boolean>; | ||
@@ -17,0 +17,0 @@ string(): StringDesy<string>; |
@@ -5,3 +5,5 @@ import { Schema, type Infer } from '../schema/schema.ts'; | ||
| type PreparedTypes<TValue extends ObjectDesyValue> = { | ||
| [K in keyof TValue]: Infer<TValue[K]>; | ||
| [K in keyof TValue as undefined extends Infer<TValue[K]> ? never : K]: Infer<TValue[K]>; | ||
| } & { | ||
| [K in keyof TValue as undefined extends Infer<TValue[K]> ? K : never]?: Infer<TValue[K]>; | ||
| }; | ||
@@ -8,0 +10,0 @@ type PartialBy<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>; |
+1
-1
| { | ||
| "name": "desy", | ||
| "version": "0.0.17", | ||
| "version": "0.0.18", | ||
| "type": "module", | ||
@@ -5,0 +5,0 @@ "types": "./dist/types/desy.d.ts", |
34169
1.01%910
0.22%