forked from cerebral/overmind
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.js
More file actions
96 lines (90 loc) · 2.33 KB
/
main.js
File metadata and controls
96 lines (90 loc) · 2.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
const electron = require('electron')
const app = electron.app
const appVersion = app.getVersion()
const BrowserWindow = electron.BrowserWindow
const path = require('path')
const DevtoolBackend = require('overmind-devtools-client/DevtoolBackend')
const storage = require('electron-json-storage')
process.env.ELECTRON_DISABLE_SECURITY_WARNINGS = 'true'
function createWindow() {
const mainWindow = new BrowserWindow({
icon: path.resolve('icons', 'icon.png'),
height: 768,
width: 768,
minHeight: 500,
minWidth: 500,
})
DevtoolBackend.create({
port: 1040,
onRelaunch() {
app.relaunch()
app.quit()
},
storage,
})
mainWindow.on('closed', () => app.quit())
if (process.env.NODE_ENV === 'production') {
mainWindow.loadFile(
path.join(
__dirname,
'..',
'node_modules',
'overmind-devtools-client',
'dist',
'index.html'
)
)
} else {
mainWindow.webContents.openDevTools()
mainWindow.loadURL('http://localhost:8080')
}
electron.Menu.setApplicationMenu(
electron.Menu.buildFromTemplate([
{
label: 'Application',
submenu: [
{ label: 'Overmind Devtools v' + appVersion },
{ type: 'separator' },
{
label: 'Debug',
click() {
mainWindow.openDevTools()
},
},
{
label: 'Learn More',
click() {
require('electron').shell.openExternal('https://overmindjs.org')
},
},
{
label: 'License',
click() {
require('electron').shell.openExternal(
'https://github.com/cerebral/overmind/blob/master/LICENSE'
)
},
},
{ type: 'separator' },
{ role: 'quit' },
],
},
{
label: 'Edit',
submenu: [
{ role: 'undo' },
{ role: 'redo' },
{ type: 'separator' },
{ role: 'cut' },
{ role: 'copy' },
{ role: 'paste' },
{ role: 'selectall' },
],
},
])
)
}
// This method will be called when Electron has finished
// initialization and is ready to create browser windows.
// Some APIs can only be used after this event occurs.
app.on('ready', createWindow)