Remove JSON syntax highlighting

Refs GHSA-hp2x-vx2r-6vxg

Co-authored-by: Alex Garcia <15178711+asg017@users.noreply.github.com>
This commit is contained in:
Simon Willison 2026-09-03 14:35:53 -07:00
commit 435e55ff0a
5 changed files with 8 additions and 68 deletions

View file

@ -1,56 +0,0 @@
/*
https://github.com/luyilin/json-format-highlight
From https://unpkg.com/json-format-highlight@1.0.1/dist/json-format-highlight.js
MIT Licensed
*/
(function (global, factory) {
typeof exports === "object" && typeof module !== "undefined"
? (module.exports = factory())
: typeof define === "function" && define.amd
? define(factory)
: (global.jsonFormatHighlight = factory());
})(this, function () {
"use strict";
var defaultColors = {
keyColor: "dimgray",
numberColor: "lightskyblue",
stringColor: "lightcoral",
trueColor: "lightseagreen",
falseColor: "#f66578",
nullColor: "cornflowerblue",
};
function index(json, colorOptions) {
if (colorOptions === void 0) colorOptions = {};
if (!json) {
return;
}
if (typeof json !== "string") {
json = JSON.stringify(json, null, 2);
}
var colors = Object.assign({}, defaultColors, colorOptions);
json = json.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");
return json.replace(
/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+]?\d+)?)/g,
function (match) {
var color = colors.numberColor;
if (/^"/.test(match)) {
color = /:$/.test(match) ? colors.keyColor : colors.stringColor;
} else {
color = /true/.test(match)
? colors.trueColor
: /false/.test(match)
? colors.falseColor
: /null/.test(match)
? colors.nullColor
: color;
}
return '<span style="color: ' + color + '">' + match + "</span>";
},
);
}
return index;
});

View file

@ -3,7 +3,6 @@
{% block title %}API Explorer{% endblock %}
{% block extra_head %}
<script src="{{ static('json-format-highlight-1.0.1.js') }}"></script>
{% endblock %}
{% block content %}
@ -126,7 +125,7 @@ getForm.addEventListener("submit", (ev) => {
document.getElementById('response-status').textContent = response.status;
return response.json();
}).then((data) => {
output.querySelector('pre').innerHTML = jsonFormatHighlight(data);
output.querySelector('pre').textContent = JSON.stringify(data, null, 2);
errorList.style.display = 'none';
}).catch((error) => {
alert(error);
@ -174,7 +173,7 @@ postForm.addEventListener("submit", (ev) => {
} else {
errorList.style.display = 'none';
}
output.querySelector('pre').innerHTML = jsonFormatHighlight(data);
output.querySelector('pre').textContent = JSON.stringify(data, null, 2);
output.style.display = 'block';
}).catch(err => {
alert("Error: " + err);

View file

@ -3,7 +3,6 @@
{% block title %}Allowed Resources{% endblock %}
{% block extra_head %}
<script src="{{ static('json-format-highlight-1.0.1.js') }}"></script>
{% include "_permission_ui_styles.html" %}
{% include "_debug_common_functions.html" %}
{% endblock %}
@ -198,7 +197,7 @@ function displayResults(data) {
}
// Update raw JSON
document.getElementById('raw-json').innerHTML = jsonFormatHighlight(data);
document.getElementById('raw-json').textContent = JSON.stringify(data, null, 2);
}
function displayError(data) {
@ -208,7 +207,7 @@ function displayError(data) {
resultsContent.innerHTML = `<div class="error-message">Error: ${escapeHtml(data.error || 'Unknown error')}</div>`;
document.getElementById('raw-json').innerHTML = jsonFormatHighlight(data);
document.getElementById('raw-json').textContent = JSON.stringify(data, null, 2);
}
// Disable child input if parent is empty

View file

@ -3,7 +3,6 @@
{% block title %}Explain a permission decision{% endblock %}
{% block extra_head %}
<script src="{{ static('json-format-highlight-1.0.1.js') }}"></script>
{% include "_permission_ui_styles.html" %}
{% include "_debug_common_functions.html" %}
<style>
@ -238,7 +237,7 @@ function displayResult(data) {
displayRules(data.explanation);
displayRestrictions(data.explanation.restrictions);
displayRequirements(data.explanation.required_actions);
document.getElementById('raw-json').innerHTML = jsonFormatHighlight(data);
document.getElementById('raw-json').textContent = JSON.stringify(data, null, 2);
}
function displayRules(explanation) {
@ -298,7 +297,7 @@ function displayError(data) {
document.getElementById('matching-rules').innerHTML = '';
document.getElementById('restrictions-section').style.display = 'none';
document.getElementById('requirements-section').style.display = 'none';
document.getElementById('raw-json').innerHTML = jsonFormatHighlight(data);
document.getElementById('raw-json').textContent = JSON.stringify(data, null, 2);
}
form.addEventListener('submit', event => {

View file

@ -3,7 +3,6 @@
{% block title %}Permission Rules{% endblock %}
{% block extra_head %}
<script src="{{ static('json-format-highlight-1.0.1.js') }}"></script>
{% include "_permission_ui_styles.html" %}
{% include "_debug_common_functions.html" %}
{% endblock %}
@ -185,7 +184,7 @@ function displayResults(data) {
}
// Update raw JSON
document.getElementById('raw-json').innerHTML = jsonFormatHighlight(data);
document.getElementById('raw-json').textContent = JSON.stringify(data, null, 2);
}
function displayError(data) {
@ -195,7 +194,7 @@ function displayError(data) {
resultsContent.innerHTML = `<div class="error-message">Error: ${escapeHtml(data.error || 'Unknown error')}</div>`;
document.getElementById('raw-json').innerHTML = jsonFormatHighlight(data);
document.getElementById('raw-json').textContent = JSON.stringify(data, null, 2);
}
</script>