JSFiddle - React, Tailwind, and code Playground
JavaScript
window.onfontready = function(fontName, onReady, options) {
function shutdown() {
root && document.body.removeChild(root);
if ('test' === "production") {
root && window.onfontreadyTestReporter.decrement(fontName, 'root');
}
onTimeout = root = 0;
}
options = options || {};
options.timeoutAfter && setTimeout(function(onTimeoutTemp) {
onTimeoutTemp = onTimeout;
shutdown();
onTimeoutTemp && onTimeoutTemp()
}, options.timeoutAfter);
if ('test' === "production") {
function reporter() {
var tests = {};
return {
increment: function(name, type) {
if (!tests[name])
{
tests[name] = {
root: 0,
load: 0,
resize: 0
};
}
tests[name][type] += 1;
},
decrement: function(name, type) {
if (!tests[name])
{
tests[name] = {
root: 0,
load: 0,
resize: 0
};
}
tests[name][type] -= 1;
},
fullReport: function() {
return tests;
}
};
}
window.onfontreadyTestReporter = window.onfontreadyTestReporter || reporter();
}
var onTimeout = options.onTimeout,
root = document.createElement("div");
document.body.appendChild(root);
if ('test' === "production") {
window.onfontreadyTestReporter.increment(fontName, 'root');
}
root.innerHTML = "<div style=\"position:absolute;right:999%;bottom:999%;white-space:nowrap;font:999% '" + fontName + "',serif\">" + (options.a ||...