diff --git a/client/src/components/tables/cells/ObjCell.tsx b/client/src/components/tables/cells/ObjCell.tsx index ed34c2b2f..c0d192668 100644 --- a/client/src/components/tables/cells/ObjCell.tsx +++ b/client/src/components/tables/cells/ObjCell.tsx @@ -4,13 +4,8 @@ import React from "react"; export default function ObjCell({ data }: { data: unknown }) { return ( - {/* this kinda sucks. have we got a better way to do this? */} {FlattenValue(data) .filter((e) => e.value !== null) - .filter( - // hack to hide some annoying itg properties - (e) => e.keychain[0] !== "npsPerMeasure" && e.keychain[0] !== "notesPerMeasure" - ) .map((e) => ( <> {StringifyKeyChain(e.keychain)}: {JSON.stringify(e.value)} diff --git a/client/src/util/misc.ts b/client/src/util/misc.ts index 14b6de902..d068e9bfd 100644 --- a/client/src/util/misc.ts +++ b/client/src/util/misc.ts @@ -384,6 +384,11 @@ export function FlattenValue( keychain: string[] = [] ): Array<{ keychain: string[]; value: unknown }> { if (Array.isArray(value)) { + // probably not a tuple, don't make this thing super long. + if (value.length > 5) { + return [{ keychain, value: value.join(", ") }]; + } + return value.flatMap((e, i) => FlattenValue(e, [...keychain, i.toString()])); } else if (typeof value === "object" && value !== null) { return FlattenRecord(value as Record, keychain);