From 60c63c5f67b5dff5fc2553d6b7d4a890c8048832 Mon Sep 17 00:00:00 2001 From: nabeel Date: Sat, 1 Jun 2024 14:50:12 +1000 Subject: [PATCH] wip:1 --- package-lock.json | 13 ++++++++--- package.json | 1 + src/main/index.js | 6 +++++ src/renderer/src/App.vue | 25 +++++++++++++-------- src/renderer/src/components/COMselect.vue | 27 +++++++++++------------ 5 files changed, 46 insertions(+), 26 deletions(-) diff --git a/package-lock.json b/package-lock.json index ab797f0..0e784f5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,6 +11,7 @@ "dependencies": { "@electron-toolkit/preload": "^3.0.0", "@electron-toolkit/utils": "^3.0.0", + "get-installed-apps": "^1.1.0", "serialport": "^12.0.0" }, "devDependencies": { @@ -4254,6 +4255,14 @@ "node": "6.* || 8.* || >= 10.*" } }, + "node_modules/get-installed-apps": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-installed-apps/-/get-installed-apps-1.1.0.tgz", + "integrity": "sha512-Utei9W3ZiNvT6F3e4/DczVejm+Gbw2/Pbtp9N5jrPf59zfuD9zwfl/BI7EgFl2JDAftz4fYTj4NK21HsrfF3vw==", + "dependencies": { + "iconv-lite": "^0.6.3" + } + }, "node_modules/get-intrinsic": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", @@ -4595,7 +4604,6 @@ "version": "0.6.3", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" }, @@ -5799,8 +5807,7 @@ "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/sanitize-filename": { "version": "1.6.3", diff --git a/package.json b/package.json index b2d3fb2..3684828 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ "dependencies": { "@electron-toolkit/preload": "^3.0.0", "@electron-toolkit/utils": "^3.0.0", + "get-installed-apps": "^1.1.0", "serialport": "^12.0.0" }, "devDependencies": { diff --git a/src/main/index.js b/src/main/index.js index 95eaf38..85ede86 100644 --- a/src/main/index.js +++ b/src/main/index.js @@ -3,6 +3,7 @@ import { join } from 'path' import { electronApp, optimizer, is } from '@electron-toolkit/utils' import icon from '../../resources/icon.png?asset' import fs from 'node:fs/promises' +import {getInstalledApps} from 'get-installed-apps' import { SerialPort } from 'serialport' import * as logTimestamp from 'log-timestamp' @@ -21,6 +22,10 @@ async function getSerialPorts() { return await SerialPort.list() } +async function getApps() { + return await getInstalledApps() +} + function createWindow() { // Create the browser window. const mainWindow = new BrowserWindow({ @@ -75,6 +80,7 @@ app.whenReady().then(() => { ipcMain.on('ping', () => console.log('pong')) ipcMain.handle('loadConfigurationYML', loadConfigurationYAML) ipcMain.handle('getSerialPorts', getSerialPorts) + ipcMain.handle('getInstalledApps', getApps) developmentConsole() createWindow() diff --git a/src/renderer/src/App.vue b/src/renderer/src/App.vue index 2538b31..41a6f8c 100644 --- a/src/renderer/src/App.vue +++ b/src/renderer/src/App.vue @@ -1,6 +1,4 @@ @@ -43,9 +47,12 @@ onMounted(() => { --> - - - + +
+ + + +
{{ configuration }}