2022-07-12 02:55:03 +02:00
|
|
|
import * as mobx from "mobx";
|
2022-06-08 02:25:35 +02:00
|
|
|
import * as React from "react";
|
|
|
|
import {createRoot} from 'react-dom/client';
|
|
|
|
import {sprintf} from "sprintf-js";
|
|
|
|
import {Terminal} from 'xterm';
|
|
|
|
import {Main} from "./main";
|
2022-07-11 23:43:18 +02:00
|
|
|
import {GlobalModel} from "./model";
|
2022-06-17 06:14:26 +02:00
|
|
|
import {v4 as uuidv4} from "uuid";
|
2022-06-08 02:25:35 +02:00
|
|
|
|
2022-07-05 07:37:45 +02:00
|
|
|
// @ts-ignore
|
2023-01-17 18:59:31 +01:00
|
|
|
let VERSION = __PROMPT_VERSION__;
|
|
|
|
// @ts-ignore
|
|
|
|
let BUILD = __PROMPT_BUILD__;
|
2022-06-08 02:25:35 +02:00
|
|
|
|
2022-10-10 21:08:29 +02:00
|
|
|
let jbmFontNormal = new FontFace("JetBrains Mono", "url('static/fonts/jetbrains-mono-v13-latin-regular.woff2')", {style: "normal", weight: "400"});
|
|
|
|
let jbmFont200 = new FontFace("JetBrains Mono", "url('static/fonts/jetbrains-mono-v13-latin-200.woff2')", {style: "normal", weight: "200"});
|
|
|
|
let jbmFont700 = new FontFace("JetBrains Mono", "url('static/fonts/jetbrains-mono-v13-latin-700.woff2')", {style: "normal", weight: "700"});
|
2022-10-10 21:19:19 +02:00
|
|
|
let faFont = new FontFace("FontAwesome", "url(static/fonts/fontawesome-webfont-4.7.woff2)", {style: "normal", weight: "normal"});
|
2022-10-10 21:45:57 +02:00
|
|
|
let docFonts : any = document.fonts; // work around ts typing issue
|
|
|
|
docFonts.add(jbmFontNormal);
|
|
|
|
docFonts.add(jbmFont200);
|
|
|
|
docFonts.add(jbmFont700);
|
|
|
|
docFonts.add(faFont);
|
2022-10-10 21:08:29 +02:00
|
|
|
jbmFontNormal.load();
|
|
|
|
jbmFont200.load();
|
|
|
|
jbmFont700.load();
|
2022-10-10 21:19:19 +02:00
|
|
|
faFont.load();
|
2022-10-10 21:08:29 +02:00
|
|
|
|
2022-06-08 02:25:35 +02:00
|
|
|
document.addEventListener("DOMContentLoaded", () => {
|
2022-06-17 00:51:17 +02:00
|
|
|
let reactElem = React.createElement(Main, null, null);
|
2022-06-20 22:03:20 +02:00
|
|
|
let elem = document.getElementById("app");
|
2022-06-08 02:25:35 +02:00
|
|
|
let root = createRoot(elem);
|
2022-10-10 21:08:29 +02:00
|
|
|
let isFontLoaded = document.fonts.check("12px 'JetBrains Mono'");
|
|
|
|
if (isFontLoaded) {
|
2022-10-08 03:25:47 +02:00
|
|
|
root.render(reactElem);
|
2022-10-10 21:08:29 +02:00
|
|
|
}
|
|
|
|
else {
|
|
|
|
document.fonts.ready.then(() => {
|
|
|
|
root.render(reactElem);
|
|
|
|
});
|
|
|
|
}
|
2022-06-08 02:25:35 +02:00
|
|
|
});
|
|
|
|
|
2022-07-12 02:55:03 +02:00
|
|
|
(window as any).mobx = mobx;
|
2022-08-17 00:59:28 +02:00
|
|
|
(window as any).sprintf = sprintf;
|
2022-07-12 02:55:03 +02:00
|
|
|
|
2023-01-17 18:59:31 +01:00
|
|
|
console.log("PROMPT", VERSION, BUILD)
|