31 lines
767 B
JavaScript
Executable File
31 lines
767 B
JavaScript
Executable File
exports.getOS = function() {
|
|
const opSys = process.platform;
|
|
switch(opSys) {
|
|
case 'darwin':
|
|
return 'osx'
|
|
case 'win32':
|
|
return 'windows'
|
|
case 'linux':
|
|
return 'linux'
|
|
default:
|
|
return opSys
|
|
}
|
|
}
|
|
|
|
exports.validateLibraryRules = function(rules) {
|
|
if(rules == null) {
|
|
return false
|
|
}
|
|
for(const rule of rules){
|
|
if(rule.action != null && rule.os != null){
|
|
const osName = rule.os.name
|
|
const osMoj = exports.getOS()
|
|
if(rule.action === 'allow'){
|
|
return osName === osMoj
|
|
} else if(rule.action === 'disallow'){
|
|
return osName !== osMoj
|
|
}
|
|
}
|
|
}
|
|
return true
|
|
} |