ui_migration fix(deps): --Preliminary-- Define reactivity, with markRaw function wrapper for components.
This commit is contained in:
parent
fc96ae94f8
commit
6e14bf1dd0
40 changed files with 191 additions and 96 deletions
|
|
@ -26,6 +26,8 @@
|
||||||
import appContent from "./components/appContent.vue";
|
import appContent from "./components/appContent.vue";
|
||||||
import loadingContent from "./components/loadingContent.vue";
|
import loadingContent from "./components/loadingContent.vue";
|
||||||
import MouseTrap from "mousetrap";
|
import MouseTrap from "mousetrap";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
MouseTrap.prototype.stopCallback = function (e, element) {
|
MouseTrap.prototype.stopCallback = function (e, element) {
|
||||||
// if the element has the class "mousetrap" then no need to stop
|
// if the element has the class "mousetrap" then no need to stop
|
||||||
|
|
@ -52,8 +54,8 @@ export default {
|
||||||
name: "App",
|
name: "App",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
appContent,
|
appContent: markRaw(appContent),
|
||||||
loadingContent,
|
loadingContent: markRaw(loadingContent),
|
||||||
},
|
},
|
||||||
|
|
||||||
data: function () {
|
data: function () {
|
||||||
|
|
@ -192,7 +194,7 @@ export default {
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
beforeDestroy: function () {
|
beforeUnmount: function () {
|
||||||
// Disconnect the theme observer
|
// Disconnect the theme observer
|
||||||
if (this.themeObserver) {
|
if (this.themeObserver) {
|
||||||
this.themeObserver.disconnect();
|
this.themeObserver.disconnect();
|
||||||
|
|
|
||||||
|
|
@ -77,8 +77,8 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
// Import generic components
|
// Import generic components
|
||||||
import tabIcon from "./genericComponents/tabIcon";
|
import tabIcon from "./genericComponents/tabIcon.vue";
|
||||||
import tabContent from "./genericComponents/tabContent";
|
import tabContent from "./genericComponents/tabContent.vue";
|
||||||
|
|
||||||
// Import new content components
|
// Import new content components
|
||||||
import aboutContent from "./tabContentComponents/aboutContent.vue";
|
import aboutContent from "./tabContentComponents/aboutContent.vue";
|
||||||
|
|
@ -90,6 +90,8 @@ import scanListContent from "./tabContentComponents/scanListContent.vue";
|
||||||
import settingsContent from "./tabContentComponents/settingsContent.vue";
|
import settingsContent from "./tabContentComponents/settingsContent.vue";
|
||||||
import slideScanContent from "./tabContentComponents/slideScanContent.vue";
|
import slideScanContent from "./tabContentComponents/slideScanContent.vue";
|
||||||
import viewContent from "./tabContentComponents/viewContent.vue";
|
import viewContent from "./tabContentComponents/viewContent.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { shallowRef, markRaw, ref } from 'vue'
|
||||||
|
|
||||||
// Import modal components for device initialisation
|
// Import modal components for device initialisation
|
||||||
import calibrationWizard from "./modalComponents/calibrationWizard.vue";
|
import calibrationWizard from "./modalComponents/calibrationWizard.vue";
|
||||||
|
|
@ -99,9 +101,9 @@ export default {
|
||||||
name: "AppContent",
|
name: "AppContent",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
tabIcon,
|
tabIcon: markRaw(tabIcon),
|
||||||
tabContent,
|
tabContent: markRaw(tabContent),
|
||||||
calibrationWizard,
|
calibrationWizard: markRaw(calibrationWizard),
|
||||||
},
|
},
|
||||||
data: function () {
|
data: function () {
|
||||||
return {
|
return {
|
||||||
|
|
@ -111,26 +113,26 @@ export default {
|
||||||
id: "settings",
|
id: "settings",
|
||||||
title: "Settings",
|
title: "Settings",
|
||||||
icon: "settings",
|
icon: "settings",
|
||||||
component: settingsContent,
|
component: markRaw(settingsContent),
|
||||||
class: "uk-margin-auto-top",
|
class: "uk-margin-auto-top",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "logging",
|
id: "logging",
|
||||||
title: "Logging",
|
title: "Logging",
|
||||||
icon: "assignment_late",
|
icon: "assignment_late",
|
||||||
component: loggingContent,
|
component: markRaw(loggingContent),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "about",
|
id: "about",
|
||||||
title: "About",
|
title: "About",
|
||||||
icon: "info",
|
icon: "info",
|
||||||
component: aboutContent,
|
component: markRaw(aboutContent),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "power",
|
id: "power",
|
||||||
title: "Power",
|
title: "Power",
|
||||||
icon: "power_settings_new",
|
icon: "power_settings_new",
|
||||||
component: powerContent,
|
component: markRaw(powerContent),
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
coreTopTabs: [
|
coreTopTabs: [
|
||||||
|
|
@ -138,21 +140,21 @@ export default {
|
||||||
id: "view",
|
id: "view",
|
||||||
title: "View",
|
title: "View",
|
||||||
icon: "visibility",
|
icon: "visibility",
|
||||||
component: viewContent,
|
component: markRaw(viewContent),
|
||||||
requiredThings: [],
|
requiredThings: [],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "control",
|
id: "control",
|
||||||
title: "Control",
|
title: "Control",
|
||||||
icon: "gamepad",
|
icon: "gamepad",
|
||||||
component: controlContent,
|
component: markRaw(controlContent),
|
||||||
requiredThings: [],
|
requiredThings: [],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "background-detect",
|
id: "background-detect",
|
||||||
title: "Background Detect",
|
title: "Background Detect",
|
||||||
icon: "background_replace",
|
icon: "background_replace",
|
||||||
component: backgroundDetectContent,
|
component: markRaw(backgroundDetectContent),
|
||||||
// While stage isn't needed; automatic background detect has little function
|
// While stage isn't needed; automatic background detect has little function
|
||||||
// for a manual microscope.
|
// for a manual microscope.
|
||||||
requiredThings: ["stage"],
|
requiredThings: ["stage"],
|
||||||
|
|
@ -161,14 +163,14 @@ export default {
|
||||||
id: "slide-scan",
|
id: "slide-scan",
|
||||||
title: "Slide Scan",
|
title: "Slide Scan",
|
||||||
icon: "settings_overscan",
|
icon: "settings_overscan",
|
||||||
component: slideScanContent,
|
component: markRaw(slideScanContent),
|
||||||
requiredThings: ["smart_scan"],
|
requiredThings: ["smart_scan"],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "scan-list",
|
id: "scan-list",
|
||||||
title: "Scan List",
|
title: "Scan List",
|
||||||
icon: "photo_library",
|
icon: "photo_library",
|
||||||
component: scanListContent,
|
component: markRaw(scanListContent),
|
||||||
requiredThings: ["smart_scan"],
|
requiredThings: ["smart_scan"],
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
|
|
||||||
|
|
@ -28,10 +28,14 @@
|
||||||
<script>
|
<script>
|
||||||
import ActionProgressBar from "./actionProgressBar.vue";
|
import ActionProgressBar from "./actionProgressBar.vue";
|
||||||
import ActionStatusModal from "./actionStatusModal.vue";
|
import ActionStatusModal from "./actionStatusModal.vue";
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "ActionButton",
|
name: "ActionButton",
|
||||||
components: { ActionProgressBar, ActionStatusModal },
|
components: {
|
||||||
|
ActionProgressBar: markRaw(ActionProgressBar),
|
||||||
|
ActionStatusModal: markRaw(ActionStatusModal)
|
||||||
|
},
|
||||||
|
|
||||||
props: {
|
props: {
|
||||||
action: {
|
action: {
|
||||||
|
|
@ -161,7 +165,7 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
beforeDestroy() {
|
beforeUnmount() {
|
||||||
if (this.submitOnEvent) {
|
if (this.submitOnEvent) {
|
||||||
this.$root.$off(this.submitOnEvent);
|
this.$root.$off(this.submitOnEvent);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -28,11 +28,15 @@
|
||||||
import UIkit from "uikit";
|
import UIkit from "uikit";
|
||||||
import ActionProgressBar from "./actionProgressBar.vue";
|
import ActionProgressBar from "./actionProgressBar.vue";
|
||||||
import ActionLogDisplay from "./actionLogDisplay.vue";
|
import ActionLogDisplay from "./actionLogDisplay.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "ActionStatusModal",
|
name: "ActionStatusModal",
|
||||||
components: { ActionProgressBar, ActionLogDisplay },
|
components: {
|
||||||
|
ActionProgressBar: markRaw(ActionProgressBar),
|
||||||
|
ActionLogDisplay: markRaw(ActionLogDisplay)
|
||||||
|
},
|
||||||
props: {
|
props: {
|
||||||
title: {
|
title: {
|
||||||
type: String,
|
type: String,
|
||||||
|
|
|
||||||
|
|
@ -100,12 +100,14 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import syncPropertyButton from "./syncPropertyButton.vue";
|
import syncPropertyButton from "./syncPropertyButton.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "InputFromSchema",
|
name: "InputFromSchema",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
syncPropertyButton,
|
syncPropertyButton: markRaw(syncPropertyButton),
|
||||||
},
|
},
|
||||||
|
|
||||||
props: {
|
props: {
|
||||||
|
|
|
||||||
|
|
@ -13,12 +13,14 @@
|
||||||
<script>
|
<script>
|
||||||
import { formatValue } from "@/js_utils/formatter.mjs";
|
import { formatValue } from "@/js_utils/formatter.mjs";
|
||||||
import InputFromSchema from "./inputFromSchema.vue";
|
import InputFromSchema from "./inputFromSchema.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "PropertyControl",
|
name: "PropertyControl",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
InputFromSchema,
|
InputFromSchema: markRaw(InputFromSchema),
|
||||||
},
|
},
|
||||||
|
|
||||||
props: {
|
props: {
|
||||||
|
|
|
||||||
|
|
@ -17,13 +17,15 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import ActionButton from "./actionButton.vue";
|
import ActionButton from "./actionButton.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
// Export main app
|
// Export main app
|
||||||
export default {
|
export default {
|
||||||
name: "ServerSpecifiedActionButton",
|
name: "ServerSpecifiedActionButton",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
ActionButton,
|
ActionButton: markRaw(ActionButton),
|
||||||
},
|
},
|
||||||
|
|
||||||
props: {
|
props: {
|
||||||
|
|
|
||||||
|
|
@ -11,13 +11,15 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import PropertyControl from "./propertyControl.vue";
|
import PropertyControl from "./propertyControl.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
// Export main app
|
// Export main app
|
||||||
export default {
|
export default {
|
||||||
name: "ServerSpecifiedPropertyControl",
|
name: "ServerSpecifiedPropertyControl",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
PropertyControl,
|
PropertyControl: markRaw(PropertyControl),
|
||||||
},
|
},
|
||||||
|
|
||||||
props: {
|
props: {
|
||||||
|
|
|
||||||
|
|
@ -14,12 +14,16 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import devTools from "./tabContentComponents/aboutComponents/devTools.vue";
|
import devTools from "./tabContentComponents/aboutComponents/devTools.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
// Export main app
|
// Export main app
|
||||||
export default {
|
export default {
|
||||||
name: "LoadingContent",
|
name: "LoadingContent",
|
||||||
|
|
||||||
components: { devTools },
|
components: {
|
||||||
|
devTools: markRaw(devTools)
|
||||||
|
},
|
||||||
|
|
||||||
data: function () {
|
data: function () {
|
||||||
return {};
|
return {};
|
||||||
|
|
|
||||||
|
|
@ -19,13 +19,15 @@
|
||||||
<script>
|
<script>
|
||||||
import stepTemplateWithStream from "../stepTemplateWithStream.vue";
|
import stepTemplateWithStream from "../stepTemplateWithStream.vue";
|
||||||
import cameraCalibrationSettings from "../../../tabContentComponents/settingsComponents/cameraSettingsComponents/cameraCalibrationSettings.vue";
|
import cameraCalibrationSettings from "../../../tabContentComponents/settingsComponents/cameraSettingsComponents/cameraCalibrationSettings.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "CameraMainCalibrationStep",
|
name: "CameraMainCalibrationStep",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
stepTemplateWithStream,
|
stepTemplateWithStream: markRaw(stepTemplateWithStream),
|
||||||
cameraCalibrationSettings,
|
cameraCalibrationSettings: markRaw(cameraCalibrationSettings),
|
||||||
},
|
},
|
||||||
|
|
||||||
computed: {
|
computed: {
|
||||||
|
|
|
||||||
|
|
@ -14,10 +14,13 @@
|
||||||
import calibrationWizardTask from "./calibrationWizardTask.vue";
|
import calibrationWizardTask from "./calibrationWizardTask.vue";
|
||||||
import camCalibrationExplanation from "./cameraCalibrationSteps/camCalibrationExplanation.vue";
|
import camCalibrationExplanation from "./cameraCalibrationSteps/camCalibrationExplanation.vue";
|
||||||
import cameraMainCalibrationStep from "./cameraCalibrationSteps/cameraMainCalibrationStep.vue";
|
import cameraMainCalibrationStep from "./cameraCalibrationSteps/cameraMainCalibrationStep.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "CameraCalibrationTask",
|
name: "CameraCalibrationTask",
|
||||||
components: { calibrationWizardTask },
|
components: {
|
||||||
|
calibrationWizardTask: markRaw(calibrationWizardTask) },
|
||||||
props: {
|
props: {
|
||||||
// Standard calibrationWizardTask props below:
|
// Standard calibrationWizardTask props below:
|
||||||
first: Boolean,
|
first: Boolean,
|
||||||
|
|
@ -30,7 +33,7 @@ export default {
|
||||||
|
|
||||||
data: function () {
|
data: function () {
|
||||||
return {
|
return {
|
||||||
steps: [{ component: camCalibrationExplanation }, { component: cameraMainCalibrationStep }],
|
steps: [{ component: markRaw(camCalibrationExplanation) }, { component: markRaw(cameraMainCalibrationStep)}],
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -15,10 +15,14 @@ import calibrationWizardTask from "./calibrationWizardTask.vue";
|
||||||
import csmExplanation from "./csmSteps/csmExplanation.vue";
|
import csmExplanation from "./csmSteps/csmExplanation.vue";
|
||||||
import focusStep from "./csmSteps/focusStep.vue";
|
import focusStep from "./csmSteps/focusStep.vue";
|
||||||
import runCsmStep from "./csmSteps/runCsmStep.vue";
|
import runCsmStep from "./csmSteps/runCsmStep.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "CameraCalibrationTask",
|
name: "CameraCalibrationTask",
|
||||||
components: { calibrationWizardTask },
|
components: {
|
||||||
|
calibrationWizardTask: markRaw(calibrationWizardTask)
|
||||||
|
},
|
||||||
props: {
|
props: {
|
||||||
// Standard calibrationWizardTask props below:
|
// Standard calibrationWizardTask props below:
|
||||||
first: Boolean,
|
first: Boolean,
|
||||||
|
|
@ -31,7 +35,7 @@ export default {
|
||||||
|
|
||||||
data: function () {
|
data: function () {
|
||||||
return {
|
return {
|
||||||
steps: [{ component: csmExplanation }, { component: focusStep }, { component: runCsmStep }],
|
steps: [{ component: markRaw(csmExplanation) }, { component: markRaw(focusStep) }, { component: markRaw(runCsmStep) }],
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -30,12 +30,15 @@
|
||||||
<script>
|
<script>
|
||||||
import stepTemplateWithStream from "../stepTemplateWithStream.vue";
|
import stepTemplateWithStream from "../stepTemplateWithStream.vue";
|
||||||
import ActionButton from "../../../labThingsComponents/actionButton.vue";
|
import ActionButton from "../../../labThingsComponents/actionButton.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "CameraMainCalibrationStep",
|
name: "CameraMainCalibrationStep",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
stepTemplateWithStream,
|
stepTemplateWithStream: markRaw(stepTemplateWithStream),
|
||||||
ActionButton,
|
ActionButton: markRaw(ActionButton),
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -18,13 +18,15 @@
|
||||||
<script>
|
<script>
|
||||||
import stepTemplateWithStream from "../stepTemplateWithStream.vue";
|
import stepTemplateWithStream from "../stepTemplateWithStream.vue";
|
||||||
import CSMCalibrationSettings from "../../../tabContentComponents/settingsComponents/CSMSettingsComponents/CSMCalibrationSettings.vue";
|
import CSMCalibrationSettings from "../../../tabContentComponents/settingsComponents/CSMSettingsComponents/CSMCalibrationSettings.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "CameraMainCalibrationStep",
|
name: "CameraMainCalibrationStep",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
stepTemplateWithStream,
|
stepTemplateWithStream: markRaw(stepTemplateWithStream),
|
||||||
CSMCalibrationSettings,
|
CSMCalibrationSettings: markRaw(CSMCalibrationSettings),
|
||||||
},
|
},
|
||||||
|
|
||||||
mounted() {
|
mounted() {
|
||||||
|
|
|
||||||
|
|
@ -24,10 +24,14 @@ supplied by the wizard.
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import calibrationWizardTask from "./calibrationWizardTask.vue";
|
import calibrationWizardTask from "./calibrationWizardTask.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "SingleStepTask",
|
name: "SingleStepTask",
|
||||||
components: { calibrationWizardTask },
|
components: {
|
||||||
|
calibrationWizardTask: markRaw(calibrationWizardTask)
|
||||||
|
},
|
||||||
props: {
|
props: {
|
||||||
// This must be sent
|
// This must be sent
|
||||||
stepComponent: {
|
stepComponent: {
|
||||||
|
|
@ -54,7 +58,7 @@ export default {
|
||||||
|
|
||||||
data: function () {
|
data: function () {
|
||||||
return {
|
return {
|
||||||
steps: [{ component: this.stepComponent, props: this.stepProps }],
|
steps: [{ component: markRaw(this.stepComponent), props: this.stepProps }],
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -8,12 +8,14 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import miniStreamDisplay from "../../genericComponents/miniStreamDisplay.vue";
|
import miniStreamDisplay from "../../genericComponents/miniStreamDisplay.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "StepTemplateWithStream",
|
name: "StepTemplateWithStream",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
miniStreamDisplay,
|
miniStreamDisplay: markRaw(miniStreamDisplay),
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -57,10 +57,14 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import ActionButton from "../../labThingsComponents/actionButton.vue";
|
import ActionButton from "../../labThingsComponents/actionButton.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "StatusPane",
|
name: "StatusPane",
|
||||||
components: { ActionButton },
|
components: {
|
||||||
|
ActionButton: markRaw(ActionButton)
|
||||||
|
},
|
||||||
|
|
||||||
data: function () {
|
data: function () {
|
||||||
return {
|
return {
|
||||||
|
|
|
||||||
|
|
@ -24,13 +24,15 @@
|
||||||
<script>
|
<script>
|
||||||
import devTools from "./aboutComponents/devTools.vue";
|
import devTools from "./aboutComponents/devTools.vue";
|
||||||
import statusPane from "./aboutComponents/statusPane.vue";
|
import statusPane from "./aboutComponents/statusPane.vue";
|
||||||
|
//vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "AboutContent",
|
name: "AboutContent",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
devTools,
|
devTools: markRaw(devTools),
|
||||||
statusPane,
|
statusPane: markRaw(statusPane),
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -47,11 +47,13 @@
|
||||||
<script>
|
<script>
|
||||||
import ActionButton from "../../labThingsComponents/actionButton.vue";
|
import ActionButton from "../../labThingsComponents/actionButton.vue";
|
||||||
import ServerSpecifiedPropertyControl from "../../labThingsComponents/serverSpecifiedPropertyControl.vue";
|
import ServerSpecifiedPropertyControl from "../../labThingsComponents/serverSpecifiedPropertyControl.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
ActionButton,
|
ActionButton: markRaw(ActionButton),
|
||||||
ServerSpecifiedPropertyControl,
|
ServerSpecifiedPropertyControl: markRaw(ServerSpecifiedPropertyControl),
|
||||||
},
|
},
|
||||||
|
|
||||||
data() {
|
data() {
|
||||||
|
|
|
||||||
|
|
@ -13,13 +13,15 @@
|
||||||
<script>
|
<script>
|
||||||
import paneBackgroundDetect from "./backgroundDetectComponents/paneBackgroundDetect";
|
import paneBackgroundDetect from "./backgroundDetectComponents/paneBackgroundDetect";
|
||||||
import streamDisplay from "./streamContent.vue";
|
import streamDisplay from "./streamContent.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "BackgroundDetectContent",
|
name: "BackgroundDetectContent",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
paneBackgroundDetect,
|
paneBackgroundDetect: markRaw(paneBackgroundDetect),
|
||||||
streamDisplay,
|
streamDisplay: markRaw(streamDisplay),
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -18,12 +18,14 @@
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import ActionButton from "../../labThingsComponents/actionButton.vue";
|
import ActionButton from "../../labThingsComponents/actionButton.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "AutofocusControl",
|
name: "AutofocusControl",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
ActionButton,
|
ActionButton: markRaw(ActionButton),
|
||||||
},
|
},
|
||||||
|
|
||||||
data: function () {
|
data: function () {
|
||||||
|
|
|
||||||
|
|
@ -34,14 +34,16 @@ import axios from "axios";
|
||||||
import ActionButton from "../../labThingsComponents/actionButton.vue";
|
import ActionButton from "../../labThingsComponents/actionButton.vue";
|
||||||
import positionControl from "./positionControl.vue";
|
import positionControl from "./positionControl.vue";
|
||||||
import autofocusControl from "./autofocusControl.vue";
|
import autofocusControl from "./autofocusControl.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "PaneControl",
|
name: "PaneControl",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
ActionButton,
|
ActionButton: markRaw(ActionButton),
|
||||||
positionControl,
|
positionControl: markRaw(positionControl),
|
||||||
autofocusControl,
|
autofocusControl: markRaw(autofocusControl),
|
||||||
},
|
},
|
||||||
|
|
||||||
computed: {
|
computed: {
|
||||||
|
|
|
||||||
|
|
@ -61,13 +61,16 @@ and zero position buttons. It also includes the d-pad.
|
||||||
import ActionButton from "../../labThingsComponents/actionButton.vue";
|
import ActionButton from "../../labThingsComponents/actionButton.vue";
|
||||||
import syncPropertyButton from "../../labThingsComponents/syncPropertyButton.vue";
|
import syncPropertyButton from "../../labThingsComponents/syncPropertyButton.vue";
|
||||||
import stageControlButtons from "./stageControlButtons.vue";
|
import stageControlButtons from "./stageControlButtons.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "PaneControl",
|
name: "PaneControl",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
ActionButton,
|
ActionButton: markRaw(ActionButton),
|
||||||
syncPropertyButton,
|
syncPropertyButton: markRaw(syncPropertyButton),
|
||||||
stageControlButtons,
|
stageControlButtons: markRaw(stageControlButtons),
|
||||||
},
|
},
|
||||||
|
|
||||||
data: function () {
|
data: function () {
|
||||||
|
|
@ -105,7 +108,7 @@ export default {
|
||||||
await this.updatePosition();
|
await this.updatePosition();
|
||||||
},
|
},
|
||||||
|
|
||||||
beforeDestroy() {
|
beforeUnmount() {
|
||||||
// Remove global signal listener to perform a move action
|
// Remove global signal listener to perform a move action
|
||||||
this.$root.$off("globalMoveEvent");
|
this.$root.$off("globalMoveEvent");
|
||||||
this.$root.$off("globalMoveInImageCoordinatesEvent");
|
this.$root.$off("globalMoveInImageCoordinatesEvent");
|
||||||
|
|
|
||||||
|
|
@ -11,15 +11,17 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import paneControl from "./controlComponents/paneControl";
|
import paneControl from "./controlComponents/paneControl.vue";
|
||||||
import streamDisplay from "./streamContent.vue";
|
import streamDisplay from "./streamContent.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "ControlContent",
|
name: "ControlContent",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
paneControl,
|
paneControl: markRaw(paneControl),
|
||||||
streamDisplay,
|
streamDisplay: markRaw(streamDisplay) ,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -83,13 +83,15 @@
|
||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import Paginate from "vuejs-paginate";
|
import Paginate from "vuejs-paginate";
|
||||||
import EndpointButton from "../labThingsComponents/endpointButton.vue";
|
import EndpointButton from "../labThingsComponents/endpointButton.vue";
|
||||||
|
//vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "LoggingContent",
|
name: "LoggingContent",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
Paginate,
|
Paginate: markRaw(Paginate),
|
||||||
EndpointButton,
|
EndpointButton: markRaw(EndpointButton),
|
||||||
},
|
},
|
||||||
|
|
||||||
data: function () {
|
data: function () {
|
||||||
|
|
|
||||||
|
|
@ -59,7 +59,7 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
beforeDestroy() {
|
beforeUnmount() {
|
||||||
// Remove global signal listener to perform a gallery refresh
|
// Remove global signal listener to perform a gallery refresh
|
||||||
this.osdViewer.destroy();
|
this.osdViewer.destroy();
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -82,11 +82,16 @@
|
||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import actionButton from "../../labThingsComponents/actionButton.vue";
|
import actionButton from "../../labThingsComponents/actionButton.vue";
|
||||||
import EndpointButton from "../../labThingsComponents/endpointButton.vue";
|
import EndpointButton from "../../labThingsComponents/endpointButton.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
// Export main app
|
// Export main app
|
||||||
export default {
|
export default {
|
||||||
name: "ScanCard",
|
name: "ScanCard",
|
||||||
components: { actionButton, EndpointButton },
|
components: {
|
||||||
|
actionButton: markRaw(actionButton),
|
||||||
|
EndpointButton: markRaw(EndpointButton)
|
||||||
|
},
|
||||||
|
|
||||||
props: {
|
props: {
|
||||||
scanData: {
|
scanData: {
|
||||||
|
|
|
||||||
|
|
@ -55,10 +55,14 @@
|
||||||
<script>
|
<script>
|
||||||
import UIkit from "uikit";
|
import UIkit from "uikit";
|
||||||
import OpenSeadragonViewer from "./openSeadragonViewer.vue";
|
import OpenSeadragonViewer from "./openSeadragonViewer.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "ScanViewerModal",
|
name: "ScanViewerModal",
|
||||||
components: { OpenSeadragonViewer },
|
components: {
|
||||||
|
OpenSeadragonViewer: markRaw(OpenSeadragonViewer)
|
||||||
|
},
|
||||||
props: {
|
props: {
|
||||||
selectedScan: {
|
selectedScan: {
|
||||||
type: Object,
|
type: Object,
|
||||||
|
|
|
||||||
|
|
@ -100,11 +100,17 @@ import axios from "axios";
|
||||||
import actionButton from "../labThingsComponents/actionButton.vue";
|
import actionButton from "../labThingsComponents/actionButton.vue";
|
||||||
import scanCard from "./scanListComponents/scanCard.vue";
|
import scanCard from "./scanListComponents/scanCard.vue";
|
||||||
import ScanViewerModal from "./scanListComponents/scanViewer.vue";
|
import ScanViewerModal from "./scanListComponents/scanViewer.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
// Export main app
|
// Export main app
|
||||||
export default {
|
export default {
|
||||||
name: "ScanListContent",
|
name: "ScanListContent",
|
||||||
components: { actionButton, scanCard, ScanViewerModal },
|
components: {
|
||||||
|
actionButton: markRaw(actionButton),
|
||||||
|
scanCard: markRaw(scanCard),
|
||||||
|
ScanViewerModal: markRaw(ScanViewerModal)
|
||||||
|
},
|
||||||
|
|
||||||
data: function () {
|
data: function () {
|
||||||
return {
|
return {
|
||||||
|
|
@ -171,7 +177,7 @@ export default {
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
|
||||||
beforeDestroy() {
|
beforeUnmount() {
|
||||||
// Remove global signal listener to perform a gallery refresh
|
// Remove global signal listener to perform a gallery refresh
|
||||||
this.$root.$off("globalUpdateScans");
|
this.$root.$off("globalUpdateScans");
|
||||||
// Then we call that function here to unwatch
|
// Then we call that function here to unwatch
|
||||||
|
|
|
||||||
|
|
@ -17,14 +17,16 @@
|
||||||
<script>
|
<script>
|
||||||
import CSMCalibrationSettings from "./CSMSettingsComponents/CSMCalibrationSettings.vue";
|
import CSMCalibrationSettings from "./CSMSettingsComponents/CSMCalibrationSettings.vue";
|
||||||
import miniStreamDisplay from "../../genericComponents/miniStreamDisplay.vue";
|
import miniStreamDisplay from "../../genericComponents/miniStreamDisplay.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
// Export main app
|
// Export main app
|
||||||
export default {
|
export default {
|
||||||
name: "CSMSettings",
|
name: "CSMSettings",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
CSMCalibrationSettings,
|
CSMCalibrationSettings: markRaw(CSMCalibrationSettings),
|
||||||
miniStreamDisplay,
|
miniStreamDisplay: markRaw(miniStreamDisplay),
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -57,14 +57,16 @@
|
||||||
<script>
|
<script>
|
||||||
import ActionButton from "@/components/labThingsComponents/actionButton.vue";
|
import ActionButton from "@/components/labThingsComponents/actionButton.vue";
|
||||||
import matrixDisplay from "@/components/ui/matrixDisplay.vue";
|
import matrixDisplay from "@/components/ui/matrixDisplay.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
// Export main app
|
// Export main app
|
||||||
export default {
|
export default {
|
||||||
name: "CSMCalibrationSettings",
|
name: "CSMCalibrationSettings",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
ActionButton,
|
ActionButton: markRaw(ActionButton),
|
||||||
matrixDisplay,
|
matrixDisplay: markRaw(matrixDisplay),
|
||||||
},
|
},
|
||||||
|
|
||||||
props: {
|
props: {
|
||||||
|
|
|
||||||
|
|
@ -25,15 +25,17 @@
|
||||||
import cameraCalibrationSettings from "./cameraSettingsComponents/cameraCalibrationSettings.vue";
|
import cameraCalibrationSettings from "./cameraSettingsComponents/cameraCalibrationSettings.vue";
|
||||||
import miniStreamDisplay from "../../genericComponents/miniStreamDisplay.vue";
|
import miniStreamDisplay from "../../genericComponents/miniStreamDisplay.vue";
|
||||||
import ServerSpecifiedPropertyControl from "../../labThingsComponents/serverSpecifiedPropertyControl.vue";
|
import ServerSpecifiedPropertyControl from "../../labThingsComponents/serverSpecifiedPropertyControl.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
// Export main app
|
// Export main app
|
||||||
export default {
|
export default {
|
||||||
name: "CameraSettings",
|
name: "CameraSettings",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
cameraCalibrationSettings,
|
cameraCalibrationSettings: markRaw(cameraCalibrationSettings),
|
||||||
miniStreamDisplay,
|
miniStreamDisplay: markRaw(miniStreamDisplay),
|
||||||
ServerSpecifiedPropertyControl,
|
ServerSpecifiedPropertyControl: markRaw(ServerSpecifiedPropertyControl),
|
||||||
},
|
},
|
||||||
|
|
||||||
data() {
|
data() {
|
||||||
|
|
|
||||||
|
|
@ -22,13 +22,15 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import ServerSpecifiedActionButton from "../../../labThingsComponents/serverSpecifiedActionButton.vue";
|
import ServerSpecifiedActionButton from "../../../labThingsComponents/serverSpecifiedActionButton.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
// Export main app
|
// Export main app
|
||||||
export default {
|
export default {
|
||||||
name: "CameraCalibrationSettings",
|
name: "CameraCalibrationSettings",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
ServerSpecifiedActionButton,
|
ServerSpecifiedActionButton: markRaw(ServerSpecifiedActionButton),
|
||||||
},
|
},
|
||||||
|
|
||||||
props: {
|
props: {
|
||||||
|
|
|
||||||
|
|
@ -8,14 +8,15 @@
|
||||||
<script>
|
<script>
|
||||||
import appSettings from "./displaySetttingsComponents/appSettings.vue";
|
import appSettings from "./displaySetttingsComponents/appSettings.vue";
|
||||||
import streamSettings from "./displaySetttingsComponents/streamSettings.vue";
|
import streamSettings from "./displaySetttingsComponents/streamSettings.vue";
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
// Export main app
|
// Export main app
|
||||||
export default {
|
export default {
|
||||||
name: "DisplaySettings",
|
name: "DisplaySettings",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
streamSettings,
|
streamSettings: markRaw(streamSettings),
|
||||||
appSettings,
|
appSettings: markRaw(appSettings),
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -29,12 +29,14 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import ActionButton from "../../labThingsComponents/actionButton.vue";
|
import ActionButton from "../../labThingsComponents/actionButton.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "StageSettings",
|
name: "StageSettings",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
ActionButton,
|
ActionButton: markRaw(ActionButton),
|
||||||
},
|
},
|
||||||
|
|
||||||
data: function () {
|
data: function () {
|
||||||
|
|
|
||||||
|
|
@ -65,17 +65,20 @@ import cameraSettings from "./settingsComponents/cameraSettings.vue";
|
||||||
import CSMSettings from "./settingsComponents/CSMSettings.vue";
|
import CSMSettings from "./settingsComponents/CSMSettings.vue";
|
||||||
import stageSettings from "./settingsComponents/stageSettings.vue";
|
import stageSettings from "./settingsComponents/stageSettings.vue";
|
||||||
// Import generic components
|
// Import generic components
|
||||||
import tabIcon from "../genericComponents/tabIcon";
|
import tabIcon from "../genericComponents/tabIcon.vue";
|
||||||
import tabContent from "../genericComponents/tabContent";
|
import tabContent from "../genericComponents/tabContent.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
|
|
||||||
// Export main app
|
// Export main app
|
||||||
export default {
|
export default {
|
||||||
name: "SettingsContent",
|
name: "SettingsContent",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
tabIcon,
|
tabIcon: markRaw(tabIcon),
|
||||||
tabContent,
|
tabContent: markRaw(tabContent),
|
||||||
calibrationWizard,
|
calibrationWizard: markRaw(calibrationWizard),
|
||||||
},
|
},
|
||||||
|
|
||||||
data: function () {
|
data: function () {
|
||||||
|
|
@ -87,14 +90,14 @@ export default {
|
||||||
id: "display",
|
id: "display",
|
||||||
title: "Display",
|
title: "Display",
|
||||||
requireConnection: false,
|
requireConnection: false,
|
||||||
component: displaySettings,
|
component: markRaw(displaySettings),
|
||||||
requiredThings: [],
|
requiredThings: [],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "stage-control",
|
id: "stage-control",
|
||||||
title: "Stage Control Preferences",
|
title: "Stage Control Preferences",
|
||||||
requireConnection: false,
|
requireConnection: false,
|
||||||
component: stageControlSettings,
|
component: markRaw(stageControlSettings),
|
||||||
requiredThings: ["stage"],
|
requiredThings: ["stage"],
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
|
@ -103,21 +106,21 @@ export default {
|
||||||
id: "camera",
|
id: "camera",
|
||||||
title: "Camera",
|
title: "Camera",
|
||||||
requireConnection: true,
|
requireConnection: true,
|
||||||
component: cameraSettings,
|
component: markRaw(cameraSettings),
|
||||||
requiredThings: [],
|
requiredThings: [],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "stage",
|
id: "stage",
|
||||||
title: "Stage",
|
title: "Stage",
|
||||||
requireConnection: true,
|
requireConnection: true,
|
||||||
component: stageSettings,
|
component: markRaw(stageSettings),
|
||||||
requiredThings: ["stage"],
|
requiredThings: ["stage"],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "mapping",
|
id: "mapping",
|
||||||
title: "Camera to Stage Mapping",
|
title: "Camera to Stage Mapping",
|
||||||
requireConnection: true,
|
requireConnection: true,
|
||||||
component: CSMSettings,
|
component: markRaw(CSMSettings),
|
||||||
requiredThings: ["camera_stage_mapping"],
|
requiredThings: ["camera_stage_mapping"],
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
|
|
||||||
|
|
@ -153,17 +153,19 @@ import actionLogDisplay from "../labThingsComponents/actionLogDisplay.vue";
|
||||||
import actionProgressBar from "../labThingsComponents/actionProgressBar.vue";
|
import actionProgressBar from "../labThingsComponents/actionProgressBar.vue";
|
||||||
import MiniStreamDisplay from "../genericComponents/miniStreamDisplay.vue";
|
import MiniStreamDisplay from "../genericComponents/miniStreamDisplay.vue";
|
||||||
import ActionButton from "../labThingsComponents/actionButton.vue";
|
import ActionButton from "../labThingsComponents/actionButton.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "SlideScanContent",
|
name: "SlideScanContent",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
streamDisplay,
|
streamDisplay: markRaw(streamDisplay),
|
||||||
propertyControl,
|
propertyControl: markRaw(propertyControl),
|
||||||
actionLogDisplay,
|
actionLogDisplay: markRaw(actionLogDisplay),
|
||||||
actionProgressBar,
|
actionProgressBar: markRaw(actionProgressBar),
|
||||||
MiniStreamDisplay,
|
MiniStreamDisplay: markRaw(MiniStreamDisplay),
|
||||||
ActionButton,
|
ActionButton: markRaw(ActionButton),
|
||||||
},
|
},
|
||||||
|
|
||||||
data() {
|
data() {
|
||||||
|
|
|
||||||
|
|
@ -81,7 +81,7 @@ export default {
|
||||||
// Do nothing: preview stream now runs all the time
|
// Do nothing: preview stream now runs all the time
|
||||||
},
|
},
|
||||||
|
|
||||||
beforeDestroy: function () {
|
beforeUnmount: function () {
|
||||||
// Remove global signal listener to change the GPU preview state
|
// Remove global signal listener to change the GPU preview state
|
||||||
this.$root.$off("globalTogglePreview");
|
this.$root.$off("globalTogglePreview");
|
||||||
// Remove global signal listener to flash the stream element
|
// Remove global signal listener to flash the stream element
|
||||||
|
|
|
||||||
|
|
@ -9,12 +9,14 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import streamDisplay from "./streamContent.vue";
|
import streamDisplay from "./streamContent.vue";
|
||||||
|
// vue3 migration
|
||||||
|
import { markRaw } from "vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "ViewContent",
|
name: "ViewContent",
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
streamDisplay,
|
streamDisplay: markRaw(streamDisplay),
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -27,9 +27,6 @@ const app = createApp(App);
|
||||||
// Use visibility observer
|
// Use visibility observer
|
||||||
app.use(VueObserveVisibility);
|
app.use(VueObserveVisibility);
|
||||||
|
|
||||||
// Disable production tip for Vue
|
|
||||||
app.config.productionTip = false;
|
|
||||||
|
|
||||||
// Use global mixins
|
// Use global mixins
|
||||||
app.mixin(queryMixin);
|
app.mixin(queryMixin);
|
||||||
app.mixin(modalMixin);
|
app.mixin(modalMixin);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue