From 3559c5c29778e74a2a8adeb91599d94fe768742b Mon Sep 17 00:00:00 2001 From: Ivan Ortega Alba <ivanortegaalba@gmail.com> Date: Wed, 17 Jul 2024 13:00:01 +0200 Subject: [PATCH] Revert "Frontend: Use safe stringifier in parseBody" (#90522) Revert "Frontend: Use safe stringifier in parseBody (#90047)" This reverts commit 434f3869820c7820b41dfd13351017a31409eff3. --- packages/grafana-data/src/index.ts | 2 +- packages/grafana-data/src/utils/object.ts | 19 ------------------- public/app/core/utils/fetch.ts | 4 ++-- 3 files changed, 3 insertions(+), 22 deletions(-) diff --git a/packages/grafana-data/src/index.ts b/packages/grafana-data/src/index.ts index 09c7d2af88d..c45b86fe1ba 100644 --- a/packages/grafana-data/src/index.ts +++ b/packages/grafana-data/src/index.ts @@ -246,7 +246,7 @@ export { } from './utils/csv'; export { parseLabels, findCommonLabels, findUniqueLabels, matchAllLabels, formatLabels } from './utils/labels'; export { roundDecimals, guessDecimals } from './utils/numbers'; -export { objRemoveUndefined, isEmptyObject, safeStringifyValue } from './utils/object'; +export { objRemoveUndefined, isEmptyObject } from './utils/object'; export { classicColors } from './utils/namedColorsPalette'; export { getSeriesTimeStep, hasMsResolution } from './utils/series'; export { BinaryOperationID, type BinaryOperation, binaryOperators } from './utils/binaryOperators'; diff --git a/packages/grafana-data/src/utils/object.ts b/packages/grafana-data/src/utils/object.ts index 50d3ff25507..0f40f8e636a 100644 --- a/packages/grafana-data/src/utils/object.ts +++ b/packages/grafana-data/src/utils/object.ts @@ -10,22 +10,3 @@ export const isEmptyObject = (value: unknown): value is Record<string, never> => { return typeof value === 'object' && value !== null && Object.keys(value).length === 0; }; - -/** Stringifies an object that may contain circular references */ -export function safeStringifyValue(value: unknown) { - const getCircularReplacer = () => { - const seen = new WeakSet(); - return (_: string, value: object | null) => { - if (typeof value === 'object' && value !== null) { - if (seen.has(value)) { - return; - } - seen.add(value); - } - - return value; - }; - }; - - return JSON.stringify(value, getCircularReplacer()); -} diff --git a/public/app/core/utils/fetch.ts b/public/app/core/utils/fetch.ts index 8b4031123b7..49253f74a31 100644 --- a/public/app/core/utils/fetch.ts +++ b/public/app/core/utils/fetch.ts @@ -1,6 +1,6 @@ import { omitBy } from 'lodash'; -import { deprecationWarning, safeStringifyValue } from '@grafana/data'; +import { deprecationWarning } from '@grafana/data'; import { BackendSrvRequest } from '@grafana/runtime'; export const parseInitFromOptions = (options: BackendSrvRequest): RequestInit => { @@ -93,7 +93,7 @@ export const parseBody = (options: BackendSrvRequest, isAppJson: boolean) => { return options.data; } - return isAppJson ? safeStringifyValue(options.data) : new URLSearchParams(options.data); + return isAppJson ? JSON.stringify(options.data) : new URLSearchParams(options.data); }; export async function parseResponseBody<T>(