diff --git a/webapp/src/App.vue b/webapp/src/App.vue
index 920c0017..53e841c4 100644
--- a/webapp/src/App.vue
+++ b/webapp/src/App.vue
@@ -26,6 +26,8 @@
import appContent from "./components/appContent.vue";
import loadingContent from "./components/loadingContent.vue";
import MouseTrap from "mousetrap";
+// vue3 migration
+import { markRaw } from "vue";
MouseTrap.prototype.stopCallback = function (e, element) {
// if the element has the class "mousetrap" then no need to stop
@@ -52,8 +54,8 @@ export default {
name: "App",
components: {
- appContent,
- loadingContent,
+ appContent: markRaw(appContent),
+ loadingContent: markRaw(loadingContent),
},
data: function () {
@@ -192,7 +194,7 @@ export default {
});
},
- beforeDestroy: function () {
+ beforeUnmount: function () {
// Disconnect the theme observer
if (this.themeObserver) {
this.themeObserver.disconnect();
diff --git a/webapp/src/components/appContent.vue b/webapp/src/components/appContent.vue
index 0d217ce6..877d3620 100644
--- a/webapp/src/components/appContent.vue
+++ b/webapp/src/components/appContent.vue
@@ -77,8 +77,8 @@
diff --git a/webapp/src/components/modalComponents/calibrationWizardComponents/csmSteps/runCsmStep.vue b/webapp/src/components/modalComponents/calibrationWizardComponents/csmSteps/runCsmStep.vue
index 25dcdee0..b699e0fb 100644
--- a/webapp/src/components/modalComponents/calibrationWizardComponents/csmSteps/runCsmStep.vue
+++ b/webapp/src/components/modalComponents/calibrationWizardComponents/csmSteps/runCsmStep.vue
@@ -18,13 +18,15 @@
diff --git a/webapp/src/components/tabContentComponents/aboutComponents/statusPane.vue b/webapp/src/components/tabContentComponents/aboutComponents/statusPane.vue
index 6b4e8c6f..67deceb7 100644
--- a/webapp/src/components/tabContentComponents/aboutComponents/statusPane.vue
+++ b/webapp/src/components/tabContentComponents/aboutComponents/statusPane.vue
@@ -57,10 +57,14 @@
diff --git a/webapp/src/components/tabContentComponents/backgroundDetectComponents/paneBackgroundDetect.vue b/webapp/src/components/tabContentComponents/backgroundDetectComponents/paneBackgroundDetect.vue
index 814ff9db..2546ad87 100644
--- a/webapp/src/components/tabContentComponents/backgroundDetectComponents/paneBackgroundDetect.vue
+++ b/webapp/src/components/tabContentComponents/backgroundDetectComponents/paneBackgroundDetect.vue
@@ -47,11 +47,13 @@
diff --git a/webapp/src/components/tabContentComponents/controlComponents/autofocusControl.vue b/webapp/src/components/tabContentComponents/controlComponents/autofocusControl.vue
index ef70d6c6..e22e6c35 100644
--- a/webapp/src/components/tabContentComponents/controlComponents/autofocusControl.vue
+++ b/webapp/src/components/tabContentComponents/controlComponents/autofocusControl.vue
@@ -18,12 +18,14 @@
diff --git a/webapp/src/components/tabContentComponents/loggingContent.vue b/webapp/src/components/tabContentComponents/loggingContent.vue
index 56bb19c6..46abef0c 100644
--- a/webapp/src/components/tabContentComponents/loggingContent.vue
+++ b/webapp/src/components/tabContentComponents/loggingContent.vue
@@ -83,13 +83,15 @@
import axios from "axios";
import Paginate from "vuejs-paginate";
import EndpointButton from "../labThingsComponents/endpointButton.vue";
+//vue3 migration
+import { markRaw } from "vue";
export default {
name: "LoggingContent",
components: {
- Paginate,
- EndpointButton,
+ Paginate: markRaw(Paginate),
+ EndpointButton: markRaw(EndpointButton),
},
data: function () {
diff --git a/webapp/src/components/tabContentComponents/scanListComponents/openSeadragonViewer.vue b/webapp/src/components/tabContentComponents/scanListComponents/openSeadragonViewer.vue
index 72cd1cea..4e410676 100644
--- a/webapp/src/components/tabContentComponents/scanListComponents/openSeadragonViewer.vue
+++ b/webapp/src/components/tabContentComponents/scanListComponents/openSeadragonViewer.vue
@@ -59,7 +59,7 @@ export default {
}
},
- beforeDestroy() {
+ beforeUnmount() {
// Remove global signal listener to perform a gallery refresh
this.osdViewer.destroy();
},
diff --git a/webapp/src/components/tabContentComponents/scanListComponents/scanCard.vue b/webapp/src/components/tabContentComponents/scanListComponents/scanCard.vue
index 46316ffc..d0fd46ac 100644
--- a/webapp/src/components/tabContentComponents/scanListComponents/scanCard.vue
+++ b/webapp/src/components/tabContentComponents/scanListComponents/scanCard.vue
@@ -82,11 +82,16 @@
import axios from "axios";
import actionButton from "../../labThingsComponents/actionButton.vue";
import EndpointButton from "../../labThingsComponents/endpointButton.vue";
+// vue3 migration
+import { markRaw } from "vue";
// Export main app
export default {
name: "ScanCard",
- components: { actionButton, EndpointButton },
+ components: {
+ actionButton: markRaw(actionButton),
+ EndpointButton: markRaw(EndpointButton)
+ },
props: {
scanData: {
diff --git a/webapp/src/components/tabContentComponents/scanListComponents/scanViewer.vue b/webapp/src/components/tabContentComponents/scanListComponents/scanViewer.vue
index 80e17bf3..b589c9fc 100644
--- a/webapp/src/components/tabContentComponents/scanListComponents/scanViewer.vue
+++ b/webapp/src/components/tabContentComponents/scanListComponents/scanViewer.vue
@@ -55,10 +55,14 @@
diff --git a/webapp/src/components/tabContentComponents/settingsComponents/CSMSettingsComponents/CSMCalibrationSettings.vue b/webapp/src/components/tabContentComponents/settingsComponents/CSMSettingsComponents/CSMCalibrationSettings.vue
index c3b38711..1366f3a5 100644
--- a/webapp/src/components/tabContentComponents/settingsComponents/CSMSettingsComponents/CSMCalibrationSettings.vue
+++ b/webapp/src/components/tabContentComponents/settingsComponents/CSMSettingsComponents/CSMCalibrationSettings.vue
@@ -57,14 +57,16 @@
diff --git a/webapp/src/components/tabContentComponents/settingsComponents/stageSettings.vue b/webapp/src/components/tabContentComponents/settingsComponents/stageSettings.vue
index ad5d8842..3350e5f1 100644
--- a/webapp/src/components/tabContentComponents/settingsComponents/stageSettings.vue
+++ b/webapp/src/components/tabContentComponents/settingsComponents/stageSettings.vue
@@ -29,12 +29,14 @@
diff --git a/webapp/src/main.js b/webapp/src/main.js
index b71491cb..1ef25231 100644
--- a/webapp/src/main.js
+++ b/webapp/src/main.js
@@ -27,9 +27,6 @@ const app = createApp(App);
// Use visibility observer
app.use(VueObserveVisibility);
-// Disable production tip for Vue
-app.config.productionTip = false;
-
// Use global mixins
app.mixin(queryMixin);
app.mixin(modalMixin);