@@ -89,6 +89,7 @@ void writeFilterSensitiveLogForArray(TypeScriptWriter writer, MemberShape arrayM
89
89
}
90
90
);
91
91
} else {
92
+ // ToDo: Call this function only for StructureShape|ListShape|SetShape|MapShape
92
93
// Function is inside another function, so just return item in else case
93
94
writer .write ("item => item" );
94
95
}
@@ -98,18 +99,23 @@ void writeFilterSensitiveLogForArray(TypeScriptWriter writer, MemberShape arrayM
98
99
* Recursively writes filterSensitiveLog for MapShape
99
100
*/
100
101
void writeFilterSensitiveLogForMap (TypeScriptWriter writer , MemberShape mapMember ) {
101
- Shape memberShape = model .expectShape (mapMember .getTarget ());
102
- if (memberShape instanceof StructureShape ) {
103
- // Call filterSensitiveLog on Structure in reducer
104
- writer .openBlock ("(acc: any, [key, value]: [string, ${T}]) => {" , "}, {}" ,
105
- symbolProvider .toSymbol (mapMember ),
106
- () -> {
102
+ // Reducer is common to all shapes
103
+ writer .openBlock ("(acc: any, [key, value]: [string, ${T}]) => {" , "}, {}" ,
104
+ symbolProvider .toSymbol (mapMember ),
105
+ () -> {
106
+ Shape memberShape = model .expectShape (mapMember .getTarget ());
107
+ if (memberShape instanceof StructureShape ) {
108
+ // Call filterSensitiveLog on Structure
107
109
writer .write ("acc[key] = ${T}.filterSensitiveLog(value);" ,
108
110
symbolProvider .toSymbol (mapMember ));
109
- writer .write ("return acc;" );
111
+ } else {
112
+ // ToDo: Call this function only for StructureShape|ListShape|SetShape|MapShape
113
+ // populate value in in acc[key]
114
+ writer .write ("acc[key] = value;" );
110
115
}
111
- );
112
- }
116
+ writer .write ("return acc;" );
117
+ }
118
+ );
113
119
}
114
120
115
121
void writeFilterSensitiveLog (TypeScriptWriter writer , Shape shape ) {
0 commit comments