Skip to content

Commit 884ca48

Browse files
committed
App is now an Desktop App
1 parent 0b0e901 commit 884ca48

File tree

16 files changed

+1434
-133
lines changed

16 files changed

+1434
-133
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,5 @@ node_modules
22
node_modules/**/*
33
dist
44
.vscode
5+
HomeSYS-darwin-x64
6+
.DS_Store

declarations.d.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
2+
declare module '*.png';
3+
declare module '*.svg';

main.js

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
const { app, BrowserWindow } = require('electron')
2+
function createWindow()
3+
{
4+
5+
const mainWindow = new BrowserWindow({
6+
width: 1200,
7+
height: 700,
8+
icon: __dirname + '/res/AppIcon.icns',
9+
title: 'HomeSYS',
10+
webPreferences: {
11+
nodeIntegration: true
12+
}
13+
})
14+
mainWindow.webContents.on('did-finish-load', () => {
15+
mainWindow.webContents.send('message', 'Hello second window!');
16+
});
17+
if (process.argv[ 2 ] === "--dev")
18+
{
19+
mainWindow.loadURL(`http://localhost:8080`);
20+
}
21+
else
22+
mainWindow.loadFile(`./dist/index.html`)
23+
24+
}
25+
app.name = 'HomeSYS';
26+
app.allowRendererProcessReuse = true;
27+
app.on('ready', createWindow)

package-lock.json

Lines changed: 1120 additions & 57 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,22 @@
11
{
22
"scripts": {
3-
"start": "webpack-dev-server",
4-
"build": "webpack"
3+
"start:only": "webpack-dev-server",
4+
"build:only": "webpack",
5+
"build": "electron-packager . HomeSYS --platform=darwin",
6+
"start": "electron . --dev",
7+
"start:test": "electron ."
58
},
69
"dependencies": {
710
"@lucsoft/webgen": "^1.7.7",
11+
"electron": "^8.2.0",
12+
"file-loader": "^6.0.0",
813
"html-webpack-plugin": "^3.2.0",
914
"ts-loader": "^6.2.1"
1015
},
16+
"main": "main.js",
1117
"devDependencies": {
1218
"css-loader": "^3.4.2",
19+
"electron-packager": "^14.2.1",
1320
"fork-ts-checker-webpack-plugin": "^4.0.5",
1421
"html-loader": "^0.5.5",
1522
"style-loader": "^1.1.3",
@@ -19,4 +26,4 @@
1926
"webpack-dev-server": "^3.10.3"
2027
},
2128
"private": true
22-
}
29+
}

res/AppIcon.icns

174 KB
Binary file not shown.

res/MCModpack.svg

Lines changed: 10 additions & 0 deletions
Loading

src/index.html

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="UTF-8">
5+
<title>HomeSYS</title>
6+
</head>
7+
<body>
8+
<article id="page">
9+
<script src="./app.js"></script>
10+
</article>
11+
</body>
12+
</html>

src/modules/app/index.ts

Lines changed: 41 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,59 @@
11
import { WebGen } from '@lucsoft/webgen';
2-
3-
import { DashboardModule } from '../dashboard';
42
import { LoginModule } from '../login';
5-
import { modules } from './modulelist';
63
import { HomeSYSModule } from './modules';
4+
//@ts-ignore
5+
import mcmodpack from '../../../res/MCModpack.svg';
76

87
export const web = new WebGen();
98

109
export let page: HTMLElement;
11-
export const getModule = (ModuleType: any) =>
12-
{
13-
return modules.find(x => x instanceof ModuleType);
14-
};
15-
web.ready = () =>
10+
let loadedModules: HomeSYSModule[] = [];
11+
12+
const runAction = (list: HomeSYSModule[], action: (module: HomeSYSModule) => void) => list.forEach(action);
13+
14+
web.ready = async () =>
1615
{
1716
page = document.getElementById('page');
1817
page.style.maxWidth = "48rem";
1918
page.style.left = "50%";
2019
page.style.transform = "translate(-50%, 0)";
2120
page.style.position = "relative";
2221
page.style.marginTop = "5rem";
23-
modules.forEach((x: HomeSYSModule) =>
24-
{
25-
x.onWebGenLoaded(page);
26-
})
22+
web.elements.add(page).pageTitle({ text: 'Select Start'}).next.cardButtons({
23+
small: true,
24+
columns: "1",
25+
list: [
26+
{
27+
id: 'mcmodpack',
28+
title: 'MCModpack',
29+
icon: mcmodpack,
30+
onClick: async () => {
31+
new (await import('../modpack')).ModpackTestingModule(web,page);
32+
}
33+
},
34+
{
35+
id: 'login',
36+
title: 'Dashboard',
37+
value: 'Disabled for now',
38+
onClick: async () => {
39+
return;
40+
// var login = new LoginModule(web,page);
41+
// new (await import('../dashboard')).DashboardModule(web,page);
42+
// login.startLogin();
43+
// login.onLogin = async () =>
44+
// {
45+
// localStorage.auth = JSON.stringify(login.data.profile.auth);
2746

28-
var login = getModule(LoginModule) as LoginModule;
29-
var dasboard = getModule(DashboardModule) as DashboardModule;
30-
login.startLogin();
31-
login.onLogin = () =>
32-
{
33-
localStorage.auth = JSON.stringify(login.data.profile.auth);
34-
dasboard.openDashboard(login.data);
35-
};
47+
// runAction(loadedModules, (x) => x.afterLogin(login.data));
48+
// console.log(login.data)
49+
50+
// };
51+
}
52+
},
53+
54+
]
55+
})
3656

3757
};
3858

39-
document.addEventListener("DOMContentLoaded", () => web.enable(web.supported.blur));
59+
document.addEventListener("DOMContentLoaded", () => web.enable(web.supported.dark));

src/modules/app/modulelist.ts

Lines changed: 0 additions & 7 deletions
This file was deleted.

0 commit comments

Comments
 (0)