summaryrefslogtreecommitdiffstats
path: root/devtools/client/jsonview/json-viewer.js
diff options
context:
space:
mode:
authorMoonchild <moonchild@palemoon.org>2019-08-03 20:56:36 +0000
committerGitHub <noreply@github.com>2019-08-03 20:56:36 +0000
commit5a957202b70a0b11078b0cffa8967b63baff5661 (patch)
treed832e15e71ac8a3f3badcf009e7c1cfe4e98e96f /devtools/client/jsonview/json-viewer.js
parent3170ee7692ef30ee67f26219b19b2b4115c01a56 (diff)
parent3aeef88170dc6071f99d2351955ad4ee92bc83d1 (diff)
downloadUXP-5a957202b70a0b11078b0cffa8967b63baff5661.tar
UXP-5a957202b70a0b11078b0cffa8967b63baff5661.tar.gz
UXP-5a957202b70a0b11078b0cffa8967b63baff5661.tar.lz
UXP-5a957202b70a0b11078b0cffa8967b63baff5661.tar.xz
UXP-5a957202b70a0b11078b0cffa8967b63baff5661.zip
Merge pull request #1201 from kn-yami/issue1138
Refactor JSON Viewer
Diffstat (limited to 'devtools/client/jsonview/json-viewer.js')
-rw-r--r--devtools/client/jsonview/json-viewer.js26
1 files changed, 13 insertions, 13 deletions
diff --git a/devtools/client/jsonview/json-viewer.js b/devtools/client/jsonview/json-viewer.js
index d96081da2..38cb6d7ec 100644
--- a/devtools/client/jsonview/json-viewer.js
+++ b/devtools/client/jsonview/json-viewer.js
@@ -12,28 +12,28 @@ define(function (require, exports, module) {
const { MainTabbedArea } = createFactories(require("./components/main-tabbed-area"));
const json = document.getElementById("json");
- const headers = document.getElementById("headers");
-
- let jsonData;
-
- try {
- jsonData = JSON.parse(json.textContent);
- } catch (err) {
- jsonData = err + "";
- }
// Application state object.
let input = {
jsonText: json.textContent,
jsonPretty: null,
- json: jsonData,
- headers: JSON.parse(headers.textContent),
+ headers: window.headers,
tabActive: 0,
prettified: false
};
+ // Remove BOM, if present.
+ if (input.jsonText.startsWith("\ufeff")) {
+ input.jsonText = input.jsonText.slice(1);
+ }
+
+ try {
+ input.json = JSON.parse(input.jsonText);
+ } catch (err) {
+ input.json = err;
+ }
+
json.remove();
- headers.remove();
/**
* Application actions/commands. This list implements all commands
@@ -61,7 +61,7 @@ define(function (require, exports, module) {
theApp.setState({jsonText: input.jsonText});
} else {
if (!input.jsonPretty) {
- input.jsonPretty = JSON.stringify(jsonData, null, " ");
+ input.jsonPretty = JSON.stringify(input.json, null, " ");
}
theApp.setState({jsonText: input.jsonPretty});
}