veryfront 0.1.71 → 0.1.73
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/cli/commands/files/command-help.d.ts +3 -0
- package/esm/cli/commands/files/command-help.d.ts.map +1 -0
- package/esm/cli/commands/files/command-help.js +38 -0
- package/esm/cli/commands/files/command.d.ts +105 -0
- package/esm/cli/commands/files/command.d.ts.map +1 -0
- package/esm/cli/commands/files/command.js +250 -0
- package/esm/cli/commands/files/handler.d.ts +3 -0
- package/esm/cli/commands/files/handler.d.ts.map +1 -0
- package/esm/cli/commands/files/handler.js +4 -0
- package/esm/cli/commands/files/index.d.ts +4 -0
- package/esm/cli/commands/files/index.d.ts.map +1 -0
- package/esm/cli/commands/files/index.js +2 -0
- package/esm/cli/commands/knowledge/command-help.d.ts +3 -0
- package/esm/cli/commands/knowledge/command-help.d.ts.map +1 -0
- package/esm/cli/commands/knowledge/command-help.js +38 -0
- package/esm/cli/commands/knowledge/command.d.ts +122 -0
- package/esm/cli/commands/knowledge/command.d.ts.map +1 -0
- package/esm/cli/commands/knowledge/command.js +382 -0
- package/esm/cli/commands/knowledge/handler.d.ts +3 -0
- package/esm/cli/commands/knowledge/handler.d.ts.map +1 -0
- package/esm/cli/commands/knowledge/handler.js +4 -0
- package/esm/cli/commands/knowledge/index.d.ts +3 -0
- package/esm/cli/commands/knowledge/index.d.ts.map +1 -0
- package/esm/cli/commands/knowledge/index.js +2 -0
- package/esm/cli/commands/knowledge/parser-source.d.ts +2 -0
- package/esm/cli/commands/knowledge/parser-source.d.ts.map +1 -0
- package/esm/cli/commands/knowledge/parser-source.js +415 -0
- package/esm/cli/commands/uploads/command-help.d.ts +3 -0
- package/esm/cli/commands/uploads/command-help.d.ts.map +1 -0
- package/esm/cli/commands/uploads/command-help.js +43 -0
- package/esm/cli/commands/uploads/command.d.ts +140 -0
- package/esm/cli/commands/uploads/command.d.ts.map +1 -0
- package/esm/cli/commands/uploads/command.js +323 -0
- package/esm/cli/commands/uploads/handler.d.ts +3 -0
- package/esm/cli/commands/uploads/handler.d.ts.map +1 -0
- package/esm/cli/commands/uploads/handler.js +4 -0
- package/esm/cli/commands/uploads/index.d.ts +4 -0
- package/esm/cli/commands/uploads/index.d.ts.map +1 -0
- package/esm/cli/commands/uploads/index.js +2 -0
- package/esm/cli/help/command-definitions.d.ts.map +1 -1
- package/esm/cli/help/command-definitions.js +6 -0
- package/esm/cli/router.d.ts.map +1 -1
- package/esm/cli/router.js +6 -0
- package/esm/deno.js +1 -1
- package/esm/src/errors/error-registry.d.ts +2 -0
- package/esm/src/errors/error-registry.d.ts.map +1 -1
- package/esm/src/errors/error-registry.js +8 -0
- package/esm/src/errors/index.d.ts +1 -1
- package/esm/src/errors/index.d.ts.map +1 -1
- package/esm/src/errors/index.js +1 -1
- package/esm/src/html/html-shell-generator.d.ts.map +1 -1
- package/esm/src/html/html-shell-generator.js +6 -0
- package/esm/src/platform/compat/media-types.d.ts +5 -0
- package/esm/src/platform/compat/media-types.d.ts.map +1 -0
- package/esm/src/platform/compat/media-types.js +19 -0
- package/esm/src/platform/index.d.ts +1 -0
- package/esm/src/platform/index.d.ts.map +1 -1
- package/esm/src/platform/index.js +2 -0
- package/esm/src/rendering/orchestrator/pipeline.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/pipeline.js +116 -105
- package/esm/src/server/bootstrap.js +5 -1
- package/esm/src/server/dev-server/error-overlay/error-formatter.d.ts +4 -0
- package/esm/src/server/dev-server/error-overlay/error-formatter.d.ts.map +1 -1
- package/esm/src/server/dev-server/error-overlay/error-formatter.js +15 -0
- package/esm/src/server/dev-server/error-overlay/html-template.d.ts +1 -1
- package/esm/src/server/dev-server/error-overlay/html-template.d.ts.map +1 -1
- package/esm/src/server/dev-server/error-overlay/html-template.js +131 -8
- package/esm/src/server/dev-server/error-overlay/index.d.ts +1 -1
- package/esm/src/server/dev-server/error-overlay/index.d.ts.map +1 -1
- package/esm/src/server/dev-server/error-overlay/index.js +1 -1
- package/esm/src/server/dev-server/error-overlay/overlay-renderer.d.ts +1 -1
- package/esm/src/server/dev-server/error-overlay/overlay-renderer.d.ts.map +1 -1
- package/esm/src/server/dev-server/error-overlay/overlay-renderer.js +2 -2
- package/esm/src/server/dev-server/request-handler.d.ts.map +1 -1
- package/esm/src/server/dev-server/request-handler.js +6 -2
- package/esm/src/server/services/rendering/ssr.service.d.ts.map +1 -1
- package/esm/src/server/services/rendering/ssr.service.js +9 -2
- package/esm/src/server/utils/error-html.d.ts.map +1 -1
- package/esm/src/server/utils/error-html.js +26 -6
- package/package.json +2 -1
- package/src/cli/commands/files/command-help.ts +40 -0
- package/src/cli/commands/files/command.ts +328 -0
- package/src/cli/commands/files/handler.ts +6 -0
- package/src/cli/commands/files/index.ts +19 -0
- package/src/cli/commands/knowledge/command-help.ts +40 -0
- package/src/cli/commands/knowledge/command.ts +513 -0
- package/src/cli/commands/knowledge/handler.ts +6 -0
- package/src/cli/commands/knowledge/index.ts +2 -0
- package/src/cli/commands/knowledge/parser-source.ts +415 -0
- package/src/cli/commands/uploads/command-help.ts +45 -0
- package/src/cli/commands/uploads/command.ts +465 -0
- package/src/cli/commands/uploads/handler.ts +6 -0
- package/src/cli/commands/uploads/index.ts +23 -0
- package/src/cli/help/command-definitions.ts +6 -0
- package/src/cli/router.ts +6 -0
- package/src/deno.js +1 -1
- package/src/src/errors/error-registry.ts +9 -0
- package/src/src/errors/index.ts +1 -0
- package/src/src/html/html-shell-generator.ts +9 -0
- package/src/src/platform/compat/media-types.ts +23 -0
- package/src/src/platform/index.ts +3 -0
- package/src/src/rendering/orchestrator/pipeline.ts +186 -172
- package/src/src/server/bootstrap.ts +6 -1
- package/src/src/server/dev-server/error-overlay/error-formatter.ts +21 -0
- package/src/src/server/dev-server/error-overlay/html-template.ts +139 -8
- package/src/src/server/dev-server/error-overlay/index.ts +1 -0
- package/src/src/server/dev-server/error-overlay/overlay-renderer.ts +2 -1
- package/src/src/server/dev-server/request-handler.ts +6 -2
- package/src/src/server/services/rendering/ssr.service.ts +9 -2
- package/src/src/server/utils/error-html.ts +29 -6
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
startRenderSession,
|
|
16
16
|
} from "../../../transforms/mdx/esm-module-loader/module-fetcher/index.js";
|
|
17
17
|
import { getErrorCollector } from "../../../observability/error-collector.js";
|
|
18
|
-
import { ErrorOverlay } from "../../dev-server/error-overlay/index.js";
|
|
18
|
+
import { ErrorOverlay, parseErrorLocation } from "../../dev-server/error-overlay/index.js";
|
|
19
19
|
import { ErrorPages } from "../../utils/error-html.js";
|
|
20
20
|
import {
|
|
21
21
|
HTTP_INTERNAL_SERVER_ERROR,
|
|
@@ -240,9 +240,16 @@ export class SSRService {
|
|
|
240
240
|
slug,
|
|
241
241
|
});
|
|
242
242
|
|
|
243
|
+
const sourceFile = (errorObj as Error & { sourceFile?: string }).sourceFile;
|
|
244
|
+
const location = sourceFile ? parseErrorLocation(errorObj, sourceFile) : {};
|
|
243
245
|
return {
|
|
244
246
|
status: HTTP_INTERNAL_SERVER_ERROR,
|
|
245
|
-
html: ErrorOverlay.createHTML({
|
|
247
|
+
html: ErrorOverlay.createHTML({
|
|
248
|
+
error: errorObj,
|
|
249
|
+
type: "runtime",
|
|
250
|
+
...(sourceFile ? { file: sourceFile } : {}),
|
|
251
|
+
...location,
|
|
252
|
+
}, ctx.projectSlug),
|
|
246
253
|
isStreaming: false,
|
|
247
254
|
cacheStrategy: "no-cache",
|
|
248
255
|
error: errorObj,
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { escapeHTML } from "../../html/html-escape.js";
|
|
2
|
+
|
|
1
3
|
interface ErrorHtmlOptions {
|
|
2
4
|
statusCode: number;
|
|
3
5
|
title: string;
|
|
@@ -19,13 +21,18 @@ export function generateErrorHtml(options: ErrorHtmlOptions): string {
|
|
|
19
21
|
}
|
|
20
22
|
|
|
21
23
|
function generateStyledErrorHtml(statusCode: number, title: string, message: string): string {
|
|
24
|
+
const errorMessage = title === "Not Found" ? `Page not found: ${message}` : message;
|
|
25
|
+
|
|
26
|
+
// 4xx = warning (routing/config issue), 5xx = error (something broke)
|
|
27
|
+
const errorType = statusCode >= 500 ? "error" : "warning";
|
|
28
|
+
|
|
22
29
|
return `<!DOCTYPE html>
|
|
23
30
|
<html lang="en">
|
|
24
31
|
<head>
|
|
25
32
|
<meta charset="utf-8">
|
|
26
33
|
<meta name="viewport" content="width=device-width">
|
|
27
34
|
<link rel="icon" type="image/png" href="https://cdn.veryfront.com/images/veryfront-favicon.png">
|
|
28
|
-
<title>${statusCode} ${title} — Veryfront</title>
|
|
35
|
+
<title>${statusCode} ${escapeHTML(title)} — Veryfront</title>
|
|
29
36
|
<style>
|
|
30
37
|
:root {
|
|
31
38
|
--bg: #ffffff;
|
|
@@ -74,9 +81,25 @@ function generateStyledErrorHtml(statusCode: number, title: string, message: str
|
|
|
74
81
|
</head>
|
|
75
82
|
<body>
|
|
76
83
|
<div class="container">
|
|
77
|
-
<h1 class="title">${title}</h1>
|
|
78
|
-
<p class="message">${message}</p>
|
|
84
|
+
<h1 class="title">${escapeHTML(title)}</h1>
|
|
85
|
+
<p class="message">${escapeHTML(message)}</p>
|
|
79
86
|
</div>
|
|
87
|
+
<script>
|
|
88
|
+
if (window.parent !== window) {
|
|
89
|
+
try {
|
|
90
|
+
window.parent.postMessage({
|
|
91
|
+
action: 'appUpdated',
|
|
92
|
+
isInitialLoad: true,
|
|
93
|
+
hasError: true,
|
|
94
|
+
url: window.location.href,
|
|
95
|
+
errors: [{
|
|
96
|
+
type: '${errorType}',
|
|
97
|
+
message: ${JSON.stringify(errorMessage).replace(/</g, "\\u003c")}
|
|
98
|
+
}]
|
|
99
|
+
}, '*');
|
|
100
|
+
} catch (e) { /* postMessage may fail in cross-origin iframes */ }
|
|
101
|
+
}
|
|
102
|
+
</script>
|
|
80
103
|
</body>
|
|
81
104
|
</html>`;
|
|
82
105
|
}
|
|
@@ -94,11 +117,11 @@ function generateMinimalErrorHtml(
|
|
|
94
117
|
<head>
|
|
95
118
|
<meta charset="utf-8"/>
|
|
96
119
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
97
|
-
<title>${statusCode} ${title}</title>
|
|
120
|
+
<title>${statusCode} ${escapeHTML(title)}</title>
|
|
98
121
|
</head>
|
|
99
122
|
<body>
|
|
100
|
-
<h1>${statusCode} ${title}</h1>
|
|
101
|
-
<p>${fullMessage}</p>
|
|
123
|
+
<h1>${statusCode} ${escapeHTML(title)}</h1>
|
|
124
|
+
<p>${escapeHTML(fullMessage)}</p>
|
|
102
125
|
</body>
|
|
103
126
|
</html>`;
|
|
104
127
|
}
|