diff --git a/src/Explorer.js b/src/Explorer.js index 5f98cff..b6313c9 100644 --- a/src/Explorer.js +++ b/src/Explorer.js @@ -49,6 +49,7 @@ const DefaultRenderer = ({ // path, subEntries, subEntryPages, + type, // depth, expanded, toggle, @@ -62,7 +63,10 @@ const DefaultRenderer = ({ <> {expanded ? ( subEntryPages.length === 1 ? ( @@ -100,7 +104,7 @@ const DefaultRenderer = ({ ) : ( <> - {JSON.stringify(value)} + {JSON.stringify(value, Object.getOwnPropertyNames(Object(value)))} )} @@ -149,6 +153,18 @@ export default function Explorer({ value: d, }) ) + } else if ( + value !== null && + typeof value === 'object' && + typeof value[Symbol.iterator] === 'function' + ) { + type = 'Iterable' + subEntries = Array.from(value, (val, i) => + makeProperty({ + label: i, + value: val, + }) + ) } else if (typeof value === 'object' && value !== null) { type = 'object' subEntries = Object.entries(value).map(([label, value]) =>