diff --git a/apps/svelte.dev/package.json b/apps/svelte.dev/package.json
index c158effcd5..5b50ce832b 100644
--- a/apps/svelte.dev/package.json
+++ b/apps/svelte.dev/package.json
@@ -72,7 +72,7 @@
"prettier-plugin-svelte": "^3.2.4",
"satori": "^0.10.13",
"satori-html": "^0.3.2",
- "svelte": "5.3.0",
+ "svelte": "5.14.0",
"svelte-check": "^4.1.1",
"svelte-preprocess": "^6.0.3",
"tiny-glob": "^0.2.9",
diff --git a/packages/editor/package.json b/packages/editor/package.json
index b617d2b847..d11f0e97da 100644
--- a/packages/editor/package.json
+++ b/packages/editor/package.json
@@ -55,7 +55,7 @@
"prettier": "^3.1.1",
"prettier-plugin-svelte": "^3.1.2",
"publint": "^0.2.12",
- "svelte": "^5.1.11",
+ "svelte": "^5.14.0",
"svelte-check": "^4.1.1",
"typescript": "^5.0.0",
"vite": "^5.0.11"
diff --git a/packages/repl/package.json b/packages/repl/package.json
index dced93bc06..bdedeb44b2 100644
--- a/packages/repl/package.json
+++ b/packages/repl/package.json
@@ -85,7 +85,7 @@
"esrap": "^1.2.2",
"marked": "^14.1.2",
"resolve.exports": "^2.0.2",
- "svelte": "5.1.11",
+ "svelte": "5.14.0",
"tarparser": "^0.0.4",
"zimmerframe": "^1.1.2"
}
diff --git a/packages/repl/src/lib/Output/ReplProxy.ts b/packages/repl/src/lib/Output/ReplProxy.ts
index 0523345aef..19c7700171 100644
--- a/packages/repl/src/lib/Output/ReplProxy.ts
+++ b/packages/repl/src/lib/Output/ReplProxy.ts
@@ -24,6 +24,14 @@ export default class ReplProxy {
case 'unhandledrejection':
return this.handlers.on_unhandled_rejection(event.data);
case 'console':
+ if (event.data.command === 'info' && event.data.args[0]?.type === '__error') {
+ const data = event.data.args[0];
+ const e = new Error(data.message);
+ e.name = data.name;
+ e.stack = data.stack;
+ event.data.args[0] = e;
+ }
+
return this.handlers.on_console(event.data);
}
};
diff --git a/packages/repl/src/lib/Output/console/ConsoleLine.svelte b/packages/repl/src/lib/Output/console/ConsoleLine.svelte
index b188d262f4..07273506a0 100644
--- a/packages/repl/src/lib/Output/console/ConsoleLine.svelte
+++ b/packages/repl/src/lib/Output/console/ConsoleLine.svelte
@@ -150,7 +150,11 @@
{#if !part.formatted}
{' '}
{/if}{#if part.type === 'value'}
-
{part.value.name + '\n' + part.value.stack.replace(/^\n+/, '')}+ {:else} +