Added systray2

This commit is contained in:
Thomas Cole 2022-04-29 12:30:40 -04:00
parent 451af8155d
commit 68c8f7af11
4 changed files with 53 additions and 1 deletions

View File

@ -1,4 +1,5 @@
require('dotenv').config();
require('./lib/Systray.js')
const sd = require('./lib/Deck');
const web = require('./webserver/WebServer');
const cm = require('./lib/ConfigManager');

View File

@ -5,4 +5,7 @@ module.exports = {
CONFIG_CHANGED: "config_changed",
GET_CONFIG: "get_config",
GET_ACTIVE_DECK: "get_deck",
OPEN_CONFIG: "open_config",
ABOUT: "about",
QUIT: "quit"
}

View File

@ -0,0 +1,47 @@
const SysTray = require('systray2');
const os = require('os');
const EVENTS = require('./Events');
const systray = new SysTray.default({
menu: {
icon: "iVBORw0KGgoAAAANSUhEUgAAAGgAAABoCAYAAAAdHLWhAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ1IDc5LjE2MzQ5OSwgMjAxOC8wOC8xMy0xNjo0MDoyMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MzZGNTM1NzRDQkUyMTFFOUE0MjJFRkQ5MEI4RUU1ODIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MzZGNTM1NzVDQkUyMTFFOUE0MjJFRkQ5MEI4RUU1ODIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDozNkY1MzU3MkNCRTIxMUU5QTQyMkVGRDkwQjhFRTU4MiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDozNkY1MzU3M0NCRTIxMUU5QTQyMkVGRDkwQjhFRTU4MiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PhgJW5wAAAW7SURBVHja7F2Nces2DIa9QLRBOYLeBGE3cCcIN6g3eOwETyOoE9SdoOoE9Zug6gbKBKl0ge7p5cWOSIIkIBF3PN/lYlnkB+ADwL8DyBE9NoVN49/qsT2s+O7z2K5jG/Czx88r904fGL/bCYGYQHiM+Dt/j61btCI3pBqbGdtlbC+Z2mRhLSpHkYXrajOCcg+sBl3qLsUgB7wIaN2C93YBTC8EmF0BpQUD8x5Q9VaAUdihlw22BoMbsXJGsn3ZcBskRn1btppbrY1hTTES1RO+7ENkJXheVAK6O7nVzBWPCRTzP+w/2wqFjehGLvh8HaCpc5nIRrTwASNVdkKdbPZIwrHD2tniqbnScirRUCacl4yka4gtq90SOC2jsgpl+amVDg4nYN5KTWRRrURwroKy8RNBFSQpSCFTAgMmsNKkwqCFPUjtTqzmHj+FRHxRQ3DDLdMWyr9RUoc64IXOsE3x9SYDtbJWASRpYNviy0sdB03ZOjihrp/Es5wKOKvk7DlOKodr2xs4IZ4myNVZ8JtlpBYlKAK8pFJolZv4EJRZK3shlukTgvc+CuhqrtSh463p8g74r6ypPZJZG9t6qAZNr+S9FngvKjzHVHBX66HgHQXuleMBNY8rP3UxrEgldm0URUiu/OQzluTWEzowFra98tNSjmflSG7XDB2QNglIOqauJQvNFCBu/OTax5qC1K6ZXl4iP7laUUNBaEYIQFz4yToqVZB7GxK/eA90y6HaTG5POY6vCqkhNYkBmktIFIs3lvzEsU53U4FISCwyQMvvUKwE7SHtIkkDnnuOdKh/TAzQ20KqlA1ZlW8QYyHfdIIvQMvCpCR+uvikAS78o5kBBML46Yzj7ZRIu3QMmAIknZ/uSq4JuRgASeWnd+Xo6LLYn22DMm+i+gSvR72EyLQz759c+dPR8f97kCVXVMBf4HV7Yog8Yf9tsaA4kdNEyr/B695WX5n23X5OyU9HD9chWSwC9Xvgc34a2x8p+Ono4TKkiyh+cnVxWxIR/HSEIjH4SReAePPTX8hPqgDEm5/+hcADlwpA8fnpV3R75wIQb3764sNPRygn3bLmJ1cLqncMUhZ+cgVI6i5thckkRUKZnJ+mH8u5W9tCvGmO6p3nU0/IWaCbf9KhADWCADIfDNw0IFQFT+r5px/4aUsTdhrcdrh1hNxKuT7iO37qQf6UtwrUYgp+moVqfcTluCA+Fw3lJDPPTH14CnjOE+Y9VPlTTZA/XV20mOOyKwN0K3lM5Agy6Ewfl0ChZwAQpa+3idIH7fHOlU+gkHPpL2W05Lw2jUAMOG7vWSaqfzr+UI5ySx/IM5N8HdvPCyJPKS5h/SUE3dTbT6h23OU8Fk2FeinXBxhBAHG4BMOln/09s9rSFsjVVeMEqUDwFkhXN8d5E3HPLF+zQBSESd+Gn2vnHKX1fDimrmFsKBdpomSTslST03o+HE/lobUVUUd8yvaUxc7ckdvq6NjVihpCd7D2t3vgf/OVa+XAxkKeeufdvVIOR555T86xPVGbydW9zbx7kHNG3FLBoh7o52tFXURt1CBDfI/ETBYCN7Bv8TlU9hSiDT4hsNkpOG0Or1MONl8nBvwSa5VLM8rVAAmXsZXLNehLVeQBVbmehs6zxEhJgky5XPAUb8kAmdaUK9ISuvxyyaD/zK4IE5dmTRqEXdNJBRL3+poCoRfdUoPEDagaNnBVdAyQymXrTKO7WxXeBuJXsU/47gPx+9stZdVrIr8LPl8H5FMVft8SW0q0hfiHiBr5EFkZnuHbCpjuDiBzpPiYQEG/IjjsD51SETWUaxNZKTlH8O3c2gD8F6/s1poa2E59kWyBIofWwYYP9TCCgepgRwcgGuIEtwAT0fW1wJP8G5CxDi9ZychA2FQGBSgtp6jswBiwE1pXHTHJnJPdDhWDXYJ5EGRhGt2NWvBBvbJiMQMx4OcVAxX2Gf//AgwAVVBGwOPLD74AAAAASUVORK5CYII=",
title: "",
tooltip: "Tips",
items: [
{
title: "Open Configurator",
enabled: true,
checked: false,
},
SysTray.default.separator,
{
title: "About YASD",
enabled: true,
},
{
title: "Quit",
enabled: true,
checked: false,
},
]
},
debug: false,
copyDir: true,
})
systray.onClick(action => {
switch(action.seq_id){
case 0:
eventBus.emit(EVENTS.OPEN_CONFIG)
break;
case 2:
eventBus.emit(EVENTS.ABOUT)
break;
case 3:
eventBus.emit(EVENTS.QUIT)
break;
default:
console.log("SYSTRAY HAS NOTHING TO DO WITH THIS")
}
})

View File

@ -13,7 +13,8 @@
"open": "^8.4.0",
"dotenv": "16.0.0",
"@nut-tree/nut-js": "2.0.1",
"sharp": "0.30.4"
"sharp": "0.30.4",
"systray2": "2.1.4"
},
"devDependencies": {
"nodemon": "^2.0.15"