diff --git a/packages/tools/src/stringTools.ts b/packages/tools/src/stringTools.ts index f2eeacff9..7f2a47015 100644 --- a/packages/tools/src/stringTools.ts +++ b/packages/tools/src/stringTools.ts @@ -259,6 +259,28 @@ export function safeJsonParse(json, defaultValue?, logError = false) { } } +export function shouldOpenMultilineDialog(value) { + if (_isString(value)) { + if (value.includes('\n')) { + return true; + } + const parsed = safeJsonParse(value); + if (parsed && (_isPlainObject(parsed) || _isArray(parsed))) { + return true; + } + } + if (value?.$oid) { + return false; + } + if (value?.$date) { + return false; + } + if (_isPlainObject(value) || _isArray(value)) { + return true; + } + return false; +} + export function isJsonLikeLongString(value) { return _isString(value) && value.length > 100 && value.match(/^\s*\{.*\}\s*$|^\s*\[.*\]\s*$/); } diff --git a/packages/web/src/datagrid/DataGridCore.svelte b/packages/web/src/datagrid/DataGridCore.svelte index c8a637957..d3034d9dd 100644 --- a/packages/web/src/datagrid/DataGridCore.svelte +++ b/packages/web/src/datagrid/DataGridCore.svelte @@ -343,7 +343,13 @@ -