@@ -25,18 +25,18 @@ class DpathFlattenFields(RecordTransformation):
2525 parameters : InitVar [Mapping [str , Any ]]
2626 delete_origin_value : bool = False
2727 replace_record : bool = False
28- key_transformation : Union [InterpolatedString , str ] = None
28+ key_transformation : Union [InterpolatedString , str , None ] = None
2929
3030 def __post_init__ (self , parameters : Mapping [str , Any ]) -> None :
31+ self ._parameters = parameters
3132 self ._field_path = [
32- InterpolatedString .create (path , parameters = parameters ) for path in self .field_path
33+ InterpolatedString .create (path , parameters = self . _parameters ) for path in self .field_path
3334 ]
3435 for path_index in range (len (self .field_path )):
3536 if isinstance (self .field_path [path_index ], str ):
3637 self ._field_path [path_index ] = InterpolatedString .create (
37- self .field_path [path_index ], parameters = parameters
38+ self .field_path [path_index ], parameters = self . _parameters
3839 )
39- self .parameters = parameters
4040
4141 def transform (
4242 self ,
@@ -53,11 +53,12 @@ def transform(
5353 extracted = dpath .get (record , path , default = [])
5454
5555 if isinstance (extracted , dict ):
56-
5756 if self .key_transformation :
5857 updated_extracted = {}
5958 for key , value in extracted .items ():
60- updated_key = InterpolatedString .create (self .key_transformation , parameters = self .parameters ).eval (key = key , config = self .config )
59+ updated_key = InterpolatedString .create (
60+ self .key_transformation , parameters = self ._parameters
61+ ).eval (key = key , config = self .config )
6162 updated_extracted [updated_key ] = value
6263 extracted = updated_extracted
6364
0 commit comments