These will likely fail until #176 is merged, however after that this should fix reporting of Maps/Sets/TypedArrays.
I have made them report as {"Map": {"k":"v",...}} which is maybe not ideal. Additionally there's now a JSON encode/decode roundtrip in the diff report in order to be able to reuse the code in createReplacer without writing/pulling in a recursive object visitor algo, again this is maybe not ideal.
The only other low-effort way I could think of for this though would be to serialize directly as e.g. {"k":"v"}, and sets/arrays as ["a","b",...], i.e. make them indistinguishable from plain objects and arrays. That would likely still have the JSON round tripping in it as well.
These will likely fail until #176 is merged, however after that this should fix reporting of Maps/Sets/TypedArrays. I have made them report as
{"Map": {"k":"v",...}}
which is maybe not ideal. Additionally there's now a JSON encode/decode roundtrip in the diff report in order to be able to reuse the code increateReplacer
without writing/pulling in a recursive object visitor algo, again this is maybe not ideal.The only other low-effort way I could think of for this though would be to serialize directly as e.g.
{"k":"v"}
, and sets/arrays as["a","b",...]
, i.e. make them indistinguishable from plain objects and arrays. That would likely still have the JSON round tripping in it as well.