Files
windows95/src/renderer/app.tsx
Felix Rieseberg 00943ae4da Update all dependencies
React 19, Electron 41, TypeScript 6, electron-forge 7.8, plus everything
else to latest. Migrated to React 19 createRoot API, updated for Electron 41
session/window type changes, and adjusted tsconfig for TS 6 deprecations.
Regenerated @electron/packager patch for 18.4.4.
2026-04-10 20:34:28 -07:00

43 lines
912 B
TypeScript

export interface Win95Window extends Window {
emulator: any;
win95: {
app: App;
};
}
declare let window: Win95Window;
/**
* The top-level class controlling the whole app. This is *not* a React component,
* but it does eventually render all components.
*
* @class App
*/
export class App {
/**
* Initial setup call, loading Monaco and kicking off the React
* render process.
*/
public async setup(): Promise<void> {
const React = await import("react");
const { createRoot } = await import("react-dom/client");
const { Emulator } = await import("./emulator");
const className = `${process.platform}`;
const app = (
<div className={className}>
<Emulator />
</div>
);
const root = createRoot(document.getElementById("app")!);
root.render(app);
}
}
window.win95 = window.win95 || {
app: new App(),
};
window.win95.app.setup();