summaryrefslogtreecommitdiff
path: root/packages/anastasis-webui/src/index.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/anastasis-webui/src/index.ts')
-rw-r--r--packages/anastasis-webui/src/index.ts25
1 files changed, 24 insertions, 1 deletions
diff --git a/packages/anastasis-webui/src/index.ts b/packages/anastasis-webui/src/index.ts
index e04c44a31..d7b2164ab 100644
--- a/packages/anastasis-webui/src/index.ts
+++ b/packages/anastasis-webui/src/index.ts
@@ -13,7 +13,30 @@
You should have received a copy of the GNU Affero General Public License along with
GNU Anastasis; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
*/
+import { setupI18n } from "@gnu-taler/taler-util";
+import { h, render } from "preact";
import App from "./components/app.js";
import "./scss/main.scss";
-export default App;
+function main(): void {
+ try {
+ const container = document.getElementById("container");
+ if (!container) {
+ throw Error("container not found, can't mount page contents");
+ }
+ render(h(App, {}), container);
+ } catch (e) {
+ console.error("got error", e);
+ if (e instanceof Error) {
+ document.body.innerText = `Fatal error: "${e.message}". Please report this bug at https://bugs.gnunet.org/.`;
+ }
+ }
+}
+
+// setupI18n("en", strings);
+
+if (document.readyState === "loading") {
+ document.addEventListener("DOMContentLoaded", main);
+} else {
+ main();
+}