@absolutejs/absolute 0.19.0-beta.1073 → 0.19.0-beta.1075
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/dist/angular/components/core/streamingSlotRegistrar.js +1 -1
- package/dist/angular/components/core/streamingSlotRegistry.js +2 -2
- package/dist/angular/index.js +52 -7
- package/dist/angular/index.js.map +6 -5
- package/dist/angular/server.js +52 -7
- package/dist/angular/server.js.map +6 -5
- package/dist/build.js +45 -6
- package/dist/build.js.map +5 -4
- package/dist/cli/config/server.js +53 -7
- package/dist/index.js +54 -11
- package/dist/index.js.map +7 -6
- package/dist/react/index.js +55 -10
- package/dist/react/index.js.map +6 -5
- package/dist/react/server.js +53 -8
- package/dist/react/server.js.map +6 -5
- package/dist/src/core/pageResponseCache.d.ts +23 -0
- package/dist/src/react/pageHandler.d.ts +5 -0
- package/dist/src/svelte/pageHandler.d.ts +5 -0
- package/dist/src/vue/pageHandler.d.ts +5 -0
- package/dist/svelte/index.js +53 -8
- package/dist/svelte/index.js.map +6 -5
- package/dist/svelte/server.js +53 -8
- package/dist/svelte/server.js.map +6 -5
- package/dist/vue/index.js +55 -10
- package/dist/vue/index.js.map +6 -5
- package/dist/vue/server.js +53 -8
- package/dist/vue/server.js.map +6 -5
- package/package.json +5 -1
package/dist/build.js
CHANGED
|
@@ -24307,6 +24307,43 @@ var init_hmrCompiler = __esm(() => {
|
|
|
24307
24307
|
init_fastHmrCompiler();
|
|
24308
24308
|
});
|
|
24309
24309
|
|
|
24310
|
+
// src/core/pageResponseCache.ts
|
|
24311
|
+
import { createHash as createHash4 } from "crypto";
|
|
24312
|
+
var STREAMING_PAGE_HEADER = "x-absolute-stream", HTML_CONTENT_TYPE = "text/html", streamingPageHeaders = (extra) => {
|
|
24313
|
+
const headers = new Headers(extra);
|
|
24314
|
+
headers.set("content-type", HTML_CONTENT_TYPE);
|
|
24315
|
+
headers.set(STREAMING_PAGE_HEADER, "1");
|
|
24316
|
+
return headers;
|
|
24317
|
+
}, computeEtag = (html) => `W/"${createHash4("sha1").update(html).digest("base64url")}"`, withPageCacheHeaders = async (response, request, options) => {
|
|
24318
|
+
const contentType = response.headers.get("content-type") ?? "";
|
|
24319
|
+
if (!contentType.includes(HTML_CONTENT_TYPE))
|
|
24320
|
+
return response;
|
|
24321
|
+
const isStreaming = response.headers.get(STREAMING_PAGE_HEADER) === "1";
|
|
24322
|
+
if (isStreaming && !options?.bufferStreamForEtag || !response.body) {
|
|
24323
|
+
response.headers.delete(STREAMING_PAGE_HEADER);
|
|
24324
|
+
response.headers.set("cache-control", "no-cache");
|
|
24325
|
+
return response;
|
|
24326
|
+
}
|
|
24327
|
+
const html = await response.text();
|
|
24328
|
+
const etag = computeEtag(html);
|
|
24329
|
+
if (request?.headers.get("if-none-match") === etag) {
|
|
24330
|
+
return new Response(null, {
|
|
24331
|
+
headers: { "cache-control": "no-cache", etag },
|
|
24332
|
+
status: 304
|
|
24333
|
+
});
|
|
24334
|
+
}
|
|
24335
|
+
const headers = new Headers(response.headers);
|
|
24336
|
+
headers.delete(STREAMING_PAGE_HEADER);
|
|
24337
|
+
headers.set("cache-control", "no-cache");
|
|
24338
|
+
headers.set("etag", etag);
|
|
24339
|
+
return new Response(html, {
|
|
24340
|
+
headers,
|
|
24341
|
+
status: response.status,
|
|
24342
|
+
statusText: response.statusText
|
|
24343
|
+
});
|
|
24344
|
+
};
|
|
24345
|
+
var init_pageResponseCache = () => {};
|
|
24346
|
+
|
|
24310
24347
|
// src/utils/ssrErrorPage.ts
|
|
24311
24348
|
var exports_ssrErrorPage = {};
|
|
24312
24349
|
__export(exports_ssrErrorPage, {
|
|
@@ -24410,18 +24447,20 @@ var resolveRequestPathname = (request) => {
|
|
|
24410
24447
|
}
|
|
24411
24448
|
const innerHtml = bundle.renderToHTML(props ?? {});
|
|
24412
24449
|
const html = buildHtmlShell(resolvedHeadTag, innerHtml.replace(/^<div>|<\/div>$/g, ""), indexPath, props);
|
|
24413
|
-
return new Response(html, {
|
|
24450
|
+
return withPageCacheHeaders(new Response(html, {
|
|
24414
24451
|
headers: { "Content-Type": "text/html" }
|
|
24415
|
-
});
|
|
24452
|
+
}), input.request);
|
|
24416
24453
|
} catch (error) {
|
|
24417
24454
|
console.error("[SSR] Ember render error:", error);
|
|
24418
|
-
return new Response(ssrErrorPage("ember", error), {
|
|
24455
|
+
return withPageCacheHeaders(new Response(ssrErrorPage("ember", error), {
|
|
24419
24456
|
headers: { "Content-Type": "text/html" },
|
|
24420
24457
|
status: 500
|
|
24421
|
-
});
|
|
24458
|
+
}), input.request);
|
|
24422
24459
|
}
|
|
24423
24460
|
};
|
|
24424
|
-
var init_pageHandler = () => {
|
|
24461
|
+
var init_pageHandler = __esm(() => {
|
|
24462
|
+
init_pageResponseCache();
|
|
24463
|
+
});
|
|
24425
24464
|
|
|
24426
24465
|
// src/ember/index.ts
|
|
24427
24466
|
var exports_ember = {};
|
|
@@ -27683,5 +27722,5 @@ export {
|
|
|
27683
27722
|
build
|
|
27684
27723
|
};
|
|
27685
27724
|
|
|
27686
|
-
//# debugId=
|
|
27725
|
+
//# debugId=A4432A26575064A564756E2164756E21
|
|
27687
27726
|
//# sourceMappingURL=build.js.map
|