diff --git a/client/package-lock.json b/client/package-lock.json index 15f75acaa..11ab0c768 100644 --- a/client/package-lock.json +++ b/client/package-lock.json @@ -3471,6 +3471,11 @@ "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==" }, + "bignumber.js": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.1.tgz", + "integrity": "sha512-IdZR9mh6ahOBv/hYGiXyVuyCetmGJhtYkqLBpTStdhEGjegpPlUawydyaF3pbIOFynJTpllEs+NP+CS9jKFLjA==" + }, "binary-extensions": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", @@ -8764,6 +8769,14 @@ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" }, + "json-bigint": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz", + "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==", + "requires": { + "bignumber.js": "^9.0.0" + } + }, "json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", diff --git a/client/package.json b/client/package.json index 0d2be5b2c..4f44bb920 100644 --- a/client/package.json +++ b/client/package.json @@ -17,6 +17,7 @@ "css-loader": "^3.4.1", "font-awesome": "^4.7.0", "joi-validation": "^2.0.0", + "json-bigint": "^1.0.0", "lodash": "^4.17.21", "moment": "^2.24.0", "node-sass": "^4.14.1", diff --git a/client/src/containers/Topic/Topic/TopicData/TopicData.jsx b/client/src/containers/Topic/Topic/TopicData/TopicData.jsx index f128724fe..96491b6f2 100644 --- a/client/src/containers/Topic/Topic/TopicData/TopicData.jsx +++ b/client/src/containers/Topic/Topic/TopicData/TopicData.jsx @@ -29,6 +29,7 @@ import Root from '../../../../components/Root'; import {capitalizeTxt, getClusterUIOptions} from '../../../../utils/functions'; import Select from '../../../../components/Form/Select'; import TimeAgo from 'react-timeago' +import JSONbig from 'json-bigint'; class TopicData extends Root { state = { @@ -846,8 +847,8 @@ class TopicData extends Root { extraRowContent: (obj, index) => { let value = obj.value; try { - let json = JSON.parse(obj.value); - value = JSON.stringify(json, null, 2); + let json = JSONbig.parse(obj.value); + value = JSONbig.stringify(json, null, 2); // eslint-disable-next-line no-empty } catch (e) {}