diff --git a/app/gui2/e2e/main.ts b/app/gui2/e2e/main.ts
index 2ad001b64f7..c3fa5c8f7e1 100644
--- a/app/gui2/e2e/main.ts
+++ b/app/gui2/e2e/main.ts
@@ -4,8 +4,8 @@ import { createApp, ref } from 'vue'
import '../src/assets/base.css'
import { provideGuiConfig } from '../src/providers/guiConfig'
import { provideVisualizationConfig } from '../src/providers/visualizationConfig'
+import { Vec2 } from '../src/util/data/vec2'
import { MockTransport, MockWebSocket } from '../src/util/net'
-import { Vec2 } from '../src/util/vec2'
import MockApp from './MockApp.vue'
import { mockDataHandler, mockLSHandler } from './mockEngine'
diff --git a/app/gui2/scripts/generateIconMetadata.js b/app/gui2/scripts/generateIconMetadata.js
index fd6a7f2d338..07b9a5794ae 100644
--- a/app/gui2/scripts/generateIconMetadata.js
+++ b/app/gui2/scripts/generateIconMetadata.js
@@ -13,8 +13,18 @@ await fs.writeFile(
`\
// Generated by \`scripts/generateIcons.js\`.
// Please run \`npm run generate\` to regenerate this file whenever \`icons.svg\` is changed.
+import iconNames from '@/util/iconList.json'
+
export type Icon =
${iconNames?.map((name) => ` | '${name}'`).join('\n')}
+
+export { iconNames }
+
+const iconNamesSet = new Set(iconNames)
+
+export function isIconName(value: string): value is Icon {
+ return iconNamesSet.has(value)
+}
`,
)
console.info('Done.')
diff --git a/app/gui2/src/components/CodeEditor.vue b/app/gui2/src/components/CodeEditor.vue
index f1da0217132..3d35218148c 100644
--- a/app/gui2/src/components/CodeEditor.vue
+++ b/app/gui2/src/components/CodeEditor.vue
@@ -1,16 +1,16 @@
diff --git a/app/gui2/src/components/TopBar.vue b/app/gui2/src/components/TopBar.vue
index 5eeaa1fee53..87f5efa0bfb 100644
--- a/app/gui2/src/components/TopBar.vue
+++ b/app/gui2/src/components/TopBar.vue
@@ -53,4 +53,3 @@ const barStyle = computed(() => {
left: 9px;
}
-@/providers/guiConfig
diff --git a/app/gui2/src/components/VisualizationContainer.vue b/app/gui2/src/components/VisualizationContainer.vue
index 53a2fa5bf8f..084b7b83b4a 100644
--- a/app/gui2/src/components/VisualizationContainer.vue
+++ b/app/gui2/src/components/VisualizationContainer.vue
@@ -1,8 +1,8 @@