nice-ui
Version:
React design system, components, and utilities
24 lines (23 loc) • 1.03 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
const loadScript_1 = require("../../../utils/loadScript");
const loadCss_1 = require("thingies/lib/loadCss");
const tick_1 = require("thingies/lib/tick");
const Defer_1 = require("thingies/lib/Defer");
let cached = void 0;
const loadKatex = async () => {
if (!cached) {
cached = new Defer_1.Defer();
// Load Katex CSS in parallel.
(0, loadCss_1.loadCss)('https://cdn.jsdelivr.net/npm/katex@0.11.0/dist/katex.min.css');
// Load Katex JS.
const katex = (await (0, loadScript_1.loadGlobal)('katex', 'https://cdn.jsdelivr.net/npm/katex@0.11.0/dist/katex.min.js'));
// Load Katex Chemistry extension.
await (0, loadScript_1.loadScript)('https://cdn.jsdelivr.net/npm/katex@0.11.0/dist/contrib/mhchem.min.js');
// Wait for chemistry extension to be set-up.
await (0, tick_1.tick)(1);
cached.resolve(katex);
}
return cached.promise;
};
exports.default = loadKatex;
;