diff --git a/.vscode/settings.json b/.vscode/settings.json
index 19154c29..d65d79e3 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -22,13 +22,13 @@
"editor.formatOnSave": true,
},
"rust-analyzer.rustfmt.extraArgs": [
- "--config", // Remove when rustfmt
- "match_block_trailing_comma=true", // 2.0 is released
- "--config", // Remove when `control_brace_style` becomes stable
- "control_brace_style=ClosingNextLine" // https://github.com/rust-lang/rustfmt/issues/3377
+ "--config",
+ "match_block_trailing_comma=true", // Remove when rustfmt2.0 is released https://github.com/rust-lang/rustfmt/issues/3380
+ "--config",
+ "control_brace_style=ClosingNextLine" // Remove when `control_brace_style` becomes stable https://github.com/rust-lang/rustfmt/issues/3377
],
"rust-analyzer.diagnostics.disabled": [
- "missing-unsafe" // Remove when rust-analyzer bug fixes unsafe code on WASM JavaScript https://github.com/rust-analyzer/rust-analyzer/issues/5412
+ "missing-unsafe" // Remove when rust-analyzer bug fixes unsafe code on WASM JavaScript https://github.com/rust-analyzer/rust-analyzer/issues/5412
],
"vetur.format.options.useTabs": true,
"eslint.format.enable": true,
diff --git a/.vscode/vuecomp.code-snippets b/.vscode/vuecomp.code-snippets
new file mode 100644
index 00000000..0eb1fd69
--- /dev/null
+++ b/.vscode/vuecomp.code-snippets
@@ -0,0 +1,35 @@
+{
+ // Place your Graphite workspace snippets here. Each snippet is defined under a snippet name and has a scope, prefix, body and
+ // description. Add comma separated ids of the languages where the snippet is applicable in the scope field. If scope
+ // is left empty or omitted, the snippet gets applied to all languages. The prefix is what is
+ // used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
+ // $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders.
+ // Placeholders with the same ids are connected.
+ "Vue Component Template": {
+ "prefix": "vuecomp",
+ "body": [
+ "",
+ "\t<${1:div}>",
+ "\t\t$0",
+ "\t${1:div}>",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ],
+ "description": "Template for a new Vue component file"
+ }
+}
\ No newline at end of file
diff --git a/web-frontend/src/App.vue b/web-frontend/src/App.vue
index 10416d48..1152f82a 100644
--- a/web-frontend/src/App.vue
+++ b/web-frontend/src/App.vue
@@ -2,18 +2,6 @@
-
-
+
+
diff --git a/web-frontend/src/components/footer/FooterBar.vue b/web-frontend/src/components/footer/FooterBar.vue
index 656042ef..c8db9784 100644
--- a/web-frontend/src/components/footer/FooterBar.vue
+++ b/web-frontend/src/components/footer/FooterBar.vue
@@ -48,7 +48,6 @@ import { defineComponent } from "vue";
import InputHint from "./InputHint.vue";
export default defineComponent({
- name: "FooterBar",
components: {
InputHint,
},
diff --git a/web-frontend/src/components/footer/InputHint.vue b/web-frontend/src/components/footer/InputHint.vue
index cb957ad2..54aeb82d 100644
--- a/web-frontend/src/components/footer/InputHint.vue
+++ b/web-frontend/src/components/footer/InputHint.vue
@@ -70,7 +70,6 @@ export enum MouseInputInteraction {
}
export default defineComponent({
- name: "InputHint",
props: {
inputKeys: { type: Array, default: () => [] },
inputMouse: { type: String },
diff --git a/web-frontend/src/components/header/FileMenu.vue b/web-frontend/src/components/header/FileMenu.vue
index aa3b88ab..d96db567 100644
--- a/web-frontend/src/components/header/FileMenu.vue
+++ b/web-frontend/src/components/header/FileMenu.vue
@@ -50,7 +50,5 @@
diff --git a/web-frontend/src/components/header/HeaderBar.vue b/web-frontend/src/components/header/HeaderBar.vue
index 92bf06d8..2b7a04d3 100644
--- a/web-frontend/src/components/header/HeaderBar.vue
+++ b/web-frontend/src/components/header/HeaderBar.vue
@@ -36,7 +36,6 @@ import WindowTitle from "./WindowTitle.vue";
import WindowButtons from "./WindowButtons.vue";
export default defineComponent({
- name: "HeaderBar",
components: {
FileMenu,
WindowTitle,
diff --git a/web-frontend/src/components/header/WindowButtons.vue b/web-frontend/src/components/header/WindowButtons.vue
index 5908f68f..b226b7b2 100644
--- a/web-frontend/src/components/header/WindowButtons.vue
+++ b/web-frontend/src/components/header/WindowButtons.vue
@@ -49,7 +49,6 @@
import { defineComponent } from "vue";
export default defineComponent({
- name: "WindowButtons",
props: {
maximized: { type: Boolean, default: false },
},
diff --git a/web-frontend/src/components/header/WindowTitle.vue b/web-frontend/src/components/header/WindowTitle.vue
index 1f1069fd..f75bc075 100644
--- a/web-frontend/src/components/header/WindowTitle.vue
+++ b/web-frontend/src/components/header/WindowTitle.vue
@@ -16,7 +16,5 @@
diff --git a/web-frontend/src/components/layout/LayoutCol.vue b/web-frontend/src/components/layout/LayoutCol.vue
index 1881c58d..6d8dd731 100644
--- a/web-frontend/src/components/layout/LayoutCol.vue
+++ b/web-frontend/src/components/layout/LayoutCol.vue
@@ -15,7 +15,5 @@
diff --git a/web-frontend/src/components/layout/LayoutRow.vue b/web-frontend/src/components/layout/LayoutRow.vue
index d0742b6b..b05243e9 100644
--- a/web-frontend/src/components/layout/LayoutRow.vue
+++ b/web-frontend/src/components/layout/LayoutRow.vue
@@ -15,7 +15,5 @@
diff --git a/web-frontend/src/components/panel-system/DockablePanel.vue b/web-frontend/src/components/panel-system/DockablePanel.vue
index 10bc2ba6..9216f213 100644
--- a/web-frontend/src/components/panel-system/DockablePanel.vue
+++ b/web-frontend/src/components/panel-system/DockablePanel.vue
@@ -134,7 +134,6 @@
import { defineComponent } from "vue";
export default defineComponent({
- name: "DockablePanel",
props: {
tabConstantWidths: { type: Boolean, default: false },
tabCloseButtons: { type: Boolean, default: false },
diff --git a/web-frontend/src/components/panel-system/PanelArea.vue b/web-frontend/src/components/panel-system/PanelArea.vue
index bdecf4d7..cd77cb72 100644
--- a/web-frontend/src/components/panel-system/PanelArea.vue
+++ b/web-frontend/src/components/panel-system/PanelArea.vue
@@ -45,7 +45,6 @@ import LayoutCol from "../layout/LayoutCol.vue";
import DockablePanel from "./DockablePanel.vue";
export default defineComponent({
- name: "PanelArea",
components: {
LayoutRow,
LayoutCol,
diff --git a/web-frontend/src/components/window/MainWindow.vue b/web-frontend/src/components/window/MainWindow.vue
index 41c89671..760b2fca 100644
--- a/web-frontend/src/components/window/MainWindow.vue
+++ b/web-frontend/src/components/window/MainWindow.vue
@@ -42,7 +42,6 @@ import PanelArea from "../panel-system/PanelArea.vue";
import FooterBar from "../footer/FooterBar.vue";
export default defineComponent({
- name: "MainWindow",
components: {
LayoutRow,
LayoutCol,