Skip to content

Commit 61efbc1

Browse files
committed
Revision 0.30.0
1 parent 5a093bf commit 61efbc1

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

examples/transform/transform.ts

+7-3
Original file line numberDiff line numberDiff line change
@@ -133,9 +133,13 @@ function TNumber(schema: Types.TNumber, references: Types.TSchema[], value: any,
133133
return Apply(schema, value, mode)
134134
}
135135
function TObject(schema: Types.TObject, references: Types.TSchema[], value: any, mode: ValueTransformMode) {
136-
return Object.keys(schema.properties).reduce((acc, key) => {
137-
return value[key] !== undefined ? { ...acc, [key]: Visit(schema.properties[key], references, value[key], mode) } : { ...acc }
138-
}, value)
136+
const transformed = Apply(schema, value, mode)
137+
const properties = Object.keys(transformed).reduce((acc, key) => {
138+
return key in schema.properties
139+
? { ...acc, [key]: Visit(schema.properties[key], references, transformed[key], mode) }
140+
: { ...acc, [key]: transformed[key] }
141+
}, {})
142+
return { ...properties }
139143
}
140144
function TPromise(schema: Types.TSchema, references: Types.TSchema[], value: any, mode: ValueTransformMode) {
141145
return Apply(schema, value, mode)

readme.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ License MIT
110110
- [Types](#typesystem-types)
111111
- [Formats](#typesystem-formats)
112112
- [Policies](#typesystem-policies)
113-
- [Transform](#Transform)
113+
- [Transform](#transform)
114114
- [Ecosystem](#ecosystem)
115115
- [Benchmark](#benchmark)
116116
- [Compile](#benchmark-compile)

0 commit comments

Comments
 (0)