diff --git a/.changeset/great-beans-check.md b/.changeset/great-beans-check.md new file mode 100644 index 0000000000..69e188bd0a --- /dev/null +++ b/.changeset/great-beans-check.md @@ -0,0 +1,5 @@ +--- +"astro": patch +--- + +Fixes error overlay display on URI malformed error diff --git a/packages/astro/src/core/errors/dev/vite.ts b/packages/astro/src/core/errors/dev/vite.ts index f2f149b3f5..1bd4481451 100644 --- a/packages/astro/src/core/errors/dev/vite.ts +++ b/packages/astro/src/core/errors/dev/vite.ts @@ -111,7 +111,7 @@ export interface AstroErrorPayload { hint?: string; docslink?: string; highlightedCode?: string; - loc: { + loc?: { file?: string; line?: number; column?: number; diff --git a/packages/astro/src/core/errors/overlay.ts b/packages/astro/src/core/errors/overlay.ts index 9a6e5481c8..1062680bd9 100644 --- a/packages/astro/src/core/errors/overlay.ts +++ b/packages/astro/src/core/errors/overlay.ts @@ -631,7 +631,7 @@ class ErrorOverlay extends HTMLElement { } const code = this.root.querySelector('#code'); - if (code && err.loc.file) { + if (code && err.loc?.file) { code.style.display = 'block'; const codeHeader = code.querySelector('#code header'); const codeContent = code.querySelector('#code-content'); @@ -670,7 +670,7 @@ class ErrorOverlay extends HTMLElement { } // Add an empty line below the error line so we can show a caret under the error - if (err.loc.column) { + if (err.loc?.column) { errorLine.insertAdjacentHTML( 'afterend', `\n