diff --git a/frontend/package-lock.json b/frontend/package-lock.json
index 49f3289e..4f2bd398 100644
--- a/frontend/package-lock.json
+++ b/frontend/package-lock.json
@@ -27,7 +27,6 @@
"sass": "^1.98.0",
"svelte": "^5.54.1",
"svelte-check": "^4.4.5",
- "svelte-preprocess": "^6.0.3",
"tar": "^7.5.12",
"typescript": "^5.9.3",
"typescript-eslint": "^8.57.1",
@@ -6039,62 +6038,6 @@
"node": ">=10"
}
},
- "node_modules/svelte-preprocess": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/svelte-preprocess/-/svelte-preprocess-6.0.3.tgz",
- "integrity": "sha512-PLG2k05qHdhmRG7zR/dyo5qKvakhm8IJ+hD2eFRQmMLHp7X3eJnjeupUtvuRpbNiF31RjVw45W+abDwHEmP5OA==",
- "dev": true,
- "hasInstallScript": true,
- "license": "MIT",
- "engines": {
- "node": ">= 18.0.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.10.2",
- "coffeescript": "^2.5.1",
- "less": "^3.11.3 || ^4.0.0",
- "postcss": "^7 || ^8",
- "postcss-load-config": ">=3",
- "pug": "^3.0.0",
- "sass": "^1.26.8",
- "stylus": ">=0.55",
- "sugarss": "^2.0.0 || ^3.0.0 || ^4.0.0",
- "svelte": "^4.0.0 || ^5.0.0-next.100 || ^5.0.0",
- "typescript": "^5.0.0"
- },
- "peerDependenciesMeta": {
- "@babel/core": {
- "optional": true
- },
- "coffeescript": {
- "optional": true
- },
- "less": {
- "optional": true
- },
- "postcss": {
- "optional": true
- },
- "postcss-load-config": {
- "optional": true
- },
- "pug": {
- "optional": true
- },
- "sass": {
- "optional": true
- },
- "stylus": {
- "optional": true
- },
- "sugarss": {
- "optional": true
- },
- "typescript": {
- "optional": true
- }
- }
- },
"node_modules/synckit": {
"version": "0.11.12",
"resolved": "https://registry.npmjs.org/synckit/-/synckit-0.11.12.tgz",
diff --git a/frontend/package.json b/frontend/package.json
index 9450f8f3..32509575 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -48,7 +48,6 @@
"sass": "^1.98.0",
"svelte": "^5.54.1",
"svelte-check": "^4.4.5",
- "svelte-preprocess": "^6.0.3",
"tar": "^7.5.12",
"typescript": "^5.9.3",
"typescript-eslint": "^8.57.1",
diff --git a/frontend/src/components/Editor.svelte b/frontend/src/components/Editor.svelte
index 9592e34b..bc507dc9 100644
--- a/frontend/src/components/Editor.svelte
+++ b/frontend/src/components/Editor.svelte
@@ -75,7 +75,7 @@
-
+
diff --git a/frontend/src/components/layout/FloatingMenu.svelte b/frontend/src/components/layout/FloatingMenu.svelte
index 489013f1..a1198d78 100644
--- a/frontend/src/components/layout/FloatingMenu.svelte
+++ b/frontend/src/components/layout/FloatingMenu.svelte
@@ -500,7 +500,7 @@
{/if}
-
+
diff --git a/frontend/src/components/widgets/WidgetSection.svelte b/frontend/src/components/widgets/WidgetSection.svelte
index e998176a..20d713ed 100644
--- a/frontend/src/components/widgets/WidgetSection.svelte
+++ b/frontend/src/components/widgets/WidgetSection.svelte
@@ -68,7 +68,7 @@
{/if}
-
diff --git a/frontend/src/components/widgets/inputs/CheckboxInput.svelte b/frontend/src/components/widgets/inputs/CheckboxInput.svelte
index d078e957..3ddc7fc2 100644
--- a/frontend/src/components/widgets/inputs/CheckboxInput.svelte
+++ b/frontend/src/components/widgets/inputs/CheckboxInput.svelte
@@ -63,7 +63,7 @@
-
diff --git a/frontend/src/components/widgets/inputs/TextInput.svelte b/frontend/src/components/widgets/inputs/TextInput.svelte
index f5e2e3ef..a56a40ed 100644
--- a/frontend/src/components/widgets/inputs/TextInput.svelte
+++ b/frontend/src/components/widgets/inputs/TextInput.svelte
@@ -87,7 +87,7 @@
bind:this={self}
/>
-` block in Svelte components with `:global { ... }` to work around Svelte's unwanted scoped styles
+function svelteGlobalStyles(): PluginOption {
+ return {
+ name: "svelte-global-styles",
+ enforce: "pre",
+ transform(code, id) {
+ if (!id.endsWith(".svelte")) return;
+
+ return code.replace(/`);
+ },
+ };
+}
+
function staticAssets(): PluginOption {
const STATIC_ASSET_DIRS: { source: string; urlPrefix: string }[] = [
{ source: "../demo-artwork", urlPrefix: "/demo-artwork" },