From 18eb8dd1b20a721fd1ec082d1ac306bb1f9b6d6d Mon Sep 17 00:00:00 2001 From: Tomas Chmelevskij Date: Sun, 28 Apr 2024 19:51:41 +0200 Subject: [PATCH] Feat/web virtual mode (#3882) * feat: add virtual mode on web * feat: only show msp virtual version on virtual mode selection * feat: update port selection to update the options --- src/components/eventBus.js | 2 + src/components/init.js | 2 + .../port-picker/FirmwareVirtualOption.vue | 18 +-- src/components/port-picker/PortPicker.vue | 30 +++++ src/components/port-picker/PortsInput.vue | 116 +++++------------- src/index.html | 49 +------- src/js/ConfigStorage.js | 3 + src/js/msp.js | 3 +- src/js/port_handler.js | 17 ++- src/js/serial_backend.js | 35 +++--- src/js/serial_shim.js | 6 + 11 files changed, 116 insertions(+), 165 deletions(-) create mode 100644 src/components/eventBus.js create mode 100644 src/components/port-picker/PortPicker.vue create mode 100644 src/js/serial_shim.js diff --git a/src/components/eventBus.js b/src/components/eventBus.js new file mode 100644 index 00000000..4b729271 --- /dev/null +++ b/src/components/eventBus.js @@ -0,0 +1,2 @@ +import Vue from "vue"; +export const EventBus = new Vue(); diff --git a/src/components/init.js b/src/components/init.js index 79501b3e..d96e968e 100644 --- a/src/components/init.js +++ b/src/components/init.js @@ -14,6 +14,7 @@ import BatteryIcon from "./quad-status/BatteryIcon.vue"; import FC from '../js/fc.js'; import MSP from '../js/msp.js'; import PortUsage from '../js/port_usage.js'; +import PortPicker from './port-picker/PortPicker.vue'; import CONFIGURATOR from '../js/data_storage.js'; // Most of the global objects can go here at first. @@ -44,6 +45,7 @@ i18next.on('initialized', function() { BetaflightLogo, StatusBar, BatteryIcon, + PortPicker, }, data: betaflightModel, }); diff --git a/src/components/port-picker/FirmwareVirtualOption.vue b/src/components/port-picker/FirmwareVirtualOption.vue index b3f4703b..b3a11a4a 100644 --- a/src/components/port-picker/FirmwareVirtualOption.vue +++ b/src/components/port-picker/FirmwareVirtualOption.vue @@ -5,6 +5,7 @@ >
-
- -
-
- -
- -
+
', { value: "DFU", text: usbText, + /** + * @deprecated please avoid using `isDFU` and friends for new code. + */ data: {isDFU: true}, })); self.portPickerElement.append($('