-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpreload.js
38 lines (33 loc) · 1.17 KB
/
preload.js
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
const { contextBridge, ipcRenderer } = require('electron')
const fs = require('fs')
var tests = "one"
window.addEventListener('DOMContentLoaded', () => {
const replaceText = (selector, text) => {
const element = document.getElementById(selector)
if (element) element.innerText = text
}
for (const dependency of ['chrome', 'node', 'electron']) {
replaceText(`${dependency}-version`, process.versions[dependency])
}
})
contextBridge.exposeInMainWorld("testAPI", {
'saveCharacterData': (playerName, playerData, overwrite = "wx") => {
var file = fs.writeFile(`saves/${playerName}.json`, JSON.stringify(playerData, null, 2), {flag: overwrite}, (err) => {
if (err) {
console.log("error writing to file: " + err)
}
else { //RACE CONDITIONS
ipcRenderer.send('loadCharacter', `${playerName}.json`)
}
})
},
'loadCharacter': (character) => {
ipcRenderer.send('loadCharacter', character)
},
'getSaves': () => {
return ipcRenderer.invoke('getSaves')
},
'readCharacter': () => { //for loaded character
return ipcRenderer.invoke('readCharacter')
},
})