Delete utils.js

This commit is contained in:
jmcooper
2019-09-06 17:14:46 -06:00
committed by GitHub
parent 87058bcecc
commit 73832967e3

View File

@@ -1,94 +0,0 @@
'use strict';
let domActionBuffer = [];
let flushTimeout;
window.display = function () {
if (!flushTimeout) flushTimeout = setTimeout(flushDomQueue, 100);
domActionBuffer.push({ action: 'display', arguments: arguments });
};
window.clearDisplay = function () {
if (!flushTimeout) flushTimeout = setTimeout(flushDomQueue, 100);
domActionBuffer.push({ action: 'clearDisplay' });
};
function doClearDisplay() {
let outputTag = document.getElementById('output');
while (outputTag.firstChild) {
outputTag.removeChild(outputTag.firstChild);
}
}
function doDisplay() {
for (var i = 0; i < arguments.length; i++) {
if (typeof arguments[i] === 'object') displayObject(arguments[i]);
else displayValue(arguments[i], true);
}
}
function flushDomQueue() {
flushTimeout = null;
if (domActionBuffer.length === 0) return;
const domActions = [...domActionBuffer];
domActionBuffer = [];
for (let domAction of domActions) {
switch (domAction.action) {
case 'display':
doDisplay(...domAction.arguments);
break;
case 'clearDisplay':
doClearDisplay();
break;
}
}
}
function displayValue(value, addMargin, addPadding) {
let outputTag = document.getElementById('output');
let div = document.createElement('div');
div.innerHTML = value;
if (addMargin) div.style.marginBottom = '30px';
if (addPadding) div.style.paddingLeft = '30px';
outputTag.appendChild(div);
}
function displayObject(object) {
if (object == null) return displayValue('null');
displayValue(getTypeName(object) + ' {');
for (var propertyName in object) {
if (propertyName != 'constructor') {
displayValue(propertyName + ': ' + object[propertyName], false, true);
}
}
displayValue('}', true);
}
function getTypeName(object) {
var funcNameRegex = /function (.{1,})\(/;
var results = funcNameRegex.exec(object.constructor.toString());
return results && results.length > 1 ? results[1] : '';
}
let reloadJS = () => {
let oldScriptTag = document.getElementById('script');
let newScriptTag = document.createElement('script');
newScriptTag.id = 'script';
newScriptTag.src = 'demo.js';
newScriptTag.textContent = '//script';
var body = document.getElementsByTagName('body')[0];
oldScriptTag.remove();
clearDisplay();
body.appendChild(newScriptTag);
};
setInterval(reloadJS, 1000);