-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbrowser-request.js
More file actions
51 lines (44 loc) · 1.56 KB
/
Copy pathbrowser-request.js
File metadata and controls
51 lines (44 loc) · 1.56 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
const fs = require('fs');
var chokidar = require('chokidar');
const config = require('./config');
const Instance = require('./instance');
let isSilent = false
if(!fs.existsSync(config.directories.browserRequests)){fs.writeFileSync(config.directories.browserRequests, "[]", {recursive: true})}
let watcher = chokidar.watch(config.directories.browserRequests, {persistent: true});
watcher.on('all', (e, p, s) =>
{
// Delete
if(e=='unlink')
{
}
// Add (or init)
if(e=='add' || e=="change")
{
let parsed = [];
try{parsed=JSON.parse(fs.readFileSync(config.directories.browserRequests))}
catch(err){fs.writeFileSync(config.directories.browserRequests, "[]")}
for(let r of JSON.parse(fs.readFileSync(config.directories.browserRequests)))
{
(async () =>
{
console.log("Browser request:",r.type)
switch(r.type)
{
case "ephemeral-instance":
{
Instance.ephemeralInstance(r.loader, r.version, r.mods);
break;
}
case "silent":
{
isSilent = true
break;
}
default: { console.warn("Unrecognized browser request:",r); break;}
}
})()
fs.writeFileSync(config.directories.browserRequests, "[]", {recursive: true});
}
}
})
module.exports = () => {return isSilent;}