Final fix for Dictionnary serialization
This commit is contained in:
parent
147c02bdfd
commit
846f41829b
7 changed files with 55 additions and 14 deletions
|
@ -77,18 +77,32 @@ export function GetCircularReplacer(): (key: any, value: object | Map<string, an
|
|||
};
|
||||
}
|
||||
|
||||
export function GetCircularReplacerKeepDataStructure(): (key: any, value: object | Map<string, any> | null) => object | null | undefined {
|
||||
export function GetCircularReplacerToDotnet(): (key: any, value: object | Map<string, any> | null) => object | null | undefined {
|
||||
return (key: any, value: object | null) => {
|
||||
if (key === 'parent') {
|
||||
return;
|
||||
}
|
||||
|
||||
if (key === 'containers') {
|
||||
return Object.fromEntries(value as Map<string, any>);
|
||||
return [...(value as Map<string, any>).entries()].map((keyPair: [string, any]) => {
|
||||
return {
|
||||
Key: keyPair[0],
|
||||
Value: keyPair[1]
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
if (key === 'symbols') {
|
||||
return Object.fromEntries((value as Map<string, any>));
|
||||
return [...(value as Map<string, any>).entries()].map((keyPair: [string, any]) => {
|
||||
return {
|
||||
Key: keyPair[0],
|
||||
Value: keyPair[1]
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
if (key === 'linkedContainers') {
|
||||
return Array.from(value as Set<string>);
|
||||
}
|
||||
|
||||
return value;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue