@absolutejs/absolute 0.19.0-beta.1040 → 0.19.0-beta.1042

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/index.js CHANGED
@@ -27942,6 +27942,64 @@ var init_imageOptimizer = __esm(() => {
27942
27942
  avifInProgress = new Set;
27943
27943
  });
27944
27944
 
27945
+ // src/dev/requestInspector.ts
27946
+ var exports_requestInspector = {};
27947
+ __export(exports_requestInspector, {
27948
+ requestInspector: () => requestInspector
27949
+ });
27950
+ import { Elysia as Elysia5 } from "elysia";
27951
+ var RING_MAX = 200, DEFAULT_STATUS = 200, ASSET_EXTENSION, requestLog = () => {
27952
+ globalThis.__absoluteRequestLog ??= [];
27953
+ return globalThis.__absoluteRequestLog;
27954
+ }, classify = (path) => {
27955
+ if (path.startsWith("/@") || path.includes("/__hmr"))
27956
+ return "hmr";
27957
+ if (path.startsWith("/api"))
27958
+ return "api";
27959
+ if (ASSET_EXTENSION.test(path) || path.startsWith("/assets/"))
27960
+ return "asset";
27961
+ return "page";
27962
+ }, pathOf = (url) => {
27963
+ try {
27964
+ return new URL(url).pathname;
27965
+ } catch {
27966
+ return url;
27967
+ }
27968
+ }, byteSize = (header, value) => {
27969
+ if (typeof header === "string" && Number.isFinite(Number(header))) {
27970
+ return Number(header);
27971
+ }
27972
+ if (typeof value === "string")
27973
+ return Buffer.byteLength(value);
27974
+ return null;
27975
+ }, starts, requestInspector;
27976
+ var init_requestInspector = __esm(() => {
27977
+ ASSET_EXTENSION = /\.(?:avif|css|gif|ico|jpe?g|js|json|map|mjs|otf|png|svg|ttf|txt|wasm|webp|woff2?)$/i;
27978
+ starts = new WeakMap;
27979
+ requestInspector = new Elysia5({
27980
+ name: "absolute-request-inspector"
27981
+ }).get("/__absolute/requests", () => requestLog()).onRequest(({ request }) => {
27982
+ starts.set(request, performance.now());
27983
+ }).onAfterResponse(({ request, set, responseValue }) => {
27984
+ const path = pathOf(request.url);
27985
+ if (path.startsWith("/__absolute"))
27986
+ return;
27987
+ const start = starts.get(request);
27988
+ const log2 = requestLog();
27989
+ log2.push({
27990
+ at: Date.now(),
27991
+ durationMs: start === undefined ? 0 : performance.now() - start,
27992
+ kind: classify(path),
27993
+ method: request.method,
27994
+ path,
27995
+ size: byteSize(set.headers["content-length"], responseValue),
27996
+ status: typeof set.status === "number" ? set.status : DEFAULT_STATUS
27997
+ });
27998
+ if (log2.length > RING_MAX)
27999
+ log2.shift();
28000
+ }).as("global");
28001
+ });
28002
+
27945
28003
  // src/core/prerender.ts
27946
28004
  var exports_prerender = {};
27947
28005
  __export(exports_prerender, {
@@ -28819,7 +28877,7 @@ var handleHTMXPageRequest = async (pagePath) => {
28819
28877
  init_loadConfig();
28820
28878
  import { existsSync as existsSync37, readdirSync as readdirSync8, readFileSync as readFileSync31 } from "fs";
28821
28879
  import { basename as basename16, join as join46, relative as relative18, resolve as resolve45 } from "path";
28822
- import { Elysia as Elysia5 } from "elysia";
28880
+ import { Elysia as Elysia6 } from "elysia";
28823
28881
 
28824
28882
  // src/core/loadIslandRegistry.ts
28825
28883
  init_islandEntries();
@@ -29303,7 +29361,8 @@ var prepareDev = async (config, buildDir) => {
29303
29361
  recordStep("load runtime metadata", stepStartedAt);
29304
29362
  stepStartedAt = performance.now();
29305
29363
  const { imageOptimizer: imageOptimizer2 } = await Promise.resolve().then(() => (init_imageOptimizer(), exports_imageOptimizer));
29306
- const absolutejs = new Elysia5({ name: "absolutejs-runtime" }).use(devtoolsJson2(buildDir, {
29364
+ const { requestInspector: requestInspector2 } = await Promise.resolve().then(() => (init_requestInspector(), exports_requestInspector));
29365
+ const absolutejs = new Elysia6({ name: "absolutejs-runtime" }).use(requestInspector2).use(devtoolsJson2(buildDir, {
29307
29366
  normalizeForWindowsContainer: config.dev?.devtools?.normalizeForWindowsContainer,
29308
29367
  projectRoot: config.dev?.devtools?.projectRoot,
29309
29368
  uuid: config.dev?.devtools?.uuid,
@@ -29342,7 +29401,7 @@ var loadPrerenderMap = (prerenderDir) => {
29342
29401
  }
29343
29402
  return map;
29344
29403
  };
29345
- var createNotFoundPlugin = () => new Elysia5({ name: "absolutejs-not-found" }).onError({ as: "global" }, async ({ code }) => {
29404
+ var createNotFoundPlugin = () => new Elysia6({ name: "absolutejs-not-found" }).onError({ as: "global" }, async ({ code }) => {
29346
29405
  if (code !== "NOT_FOUND")
29347
29406
  return;
29348
29407
  const response = await renderFirstNotFound();
@@ -29350,7 +29409,7 @@ var createNotFoundPlugin = () => new Elysia5({ name: "absolutejs-not-found" }).o
29350
29409
  return response;
29351
29410
  return;
29352
29411
  });
29353
- var createBuildErrorRecoveryPlugin = () => new Elysia5({ name: "absolutejs-build-error-recovery" }).onError({ as: "global" }, async ({ error }) => {
29412
+ var createBuildErrorRecoveryPlugin = () => new Elysia6({ name: "absolutejs-build-error-recovery" }).onError({ as: "global" }, async ({ error }) => {
29354
29413
  const message = error instanceof Error ? error.message : String(error);
29355
29414
  const assetMatch = /^Asset "(.+)" not found in manifest\.$/.exec(message);
29356
29415
  if (!assetMatch)
@@ -29413,7 +29472,7 @@ var prepare = async (configOrPath) => {
29413
29472
  staticLimit: MAX_STATIC_ROUTE_COUNT
29414
29473
  });
29415
29474
  const generatedAssetsRoot = join46(buildDir, ".absolutejs");
29416
- const generatedAssetsPlugin = new Elysia5({
29475
+ const generatedAssetsPlugin = new Elysia6({
29417
29476
  name: "absolutejs-generated-assets"
29418
29477
  }).get("/.absolutejs/*", async ({ params, set }) => {
29419
29478
  const requestedPath = resolve45(generatedAssetsRoot, params["*"]);
@@ -29439,7 +29498,7 @@ var prepare = async (configOrPath) => {
29439
29498
  const revalidateMs = config.static?.revalidate ? config.static.revalidate * MS_PER_SECOND2 : 0;
29440
29499
  const port = Number(process.env.PORT) || DEFAULT_PORT2;
29441
29500
  const rerendering = new Set;
29442
- const prerenderPlugin = new Elysia5({
29501
+ const prerenderPlugin = new Elysia6({
29443
29502
  name: "prerendered-pages"
29444
29503
  }).onRequest(({ request }) => {
29445
29504
  const url = new URL(request.url);
@@ -29462,14 +29521,14 @@ var prepare = async (configOrPath) => {
29462
29521
  });
29463
29522
  stepStartedAt = performance.now();
29464
29523
  const { imageOptimizer: imageOptimizer3 } = await Promise.resolve().then(() => (init_imageOptimizer(), exports_imageOptimizer));
29465
- const absolutejs2 = new Elysia5({ name: "absolutejs-runtime" }).use(imageOptimizer3(config.images, buildDir)).use(prerenderPlugin).use(staticFiles).use(generatedAssetsPlugin).use(createNotFoundPlugin());
29524
+ const absolutejs2 = new Elysia6({ name: "absolutejs-runtime" }).use(imageOptimizer3(config.images, buildDir)).use(prerenderPlugin).use(staticFiles).use(generatedAssetsPlugin).use(createNotFoundPlugin());
29466
29525
  recordStep("assemble production runtime", stepStartedAt);
29467
29526
  logStartupTimingBlock("AbsoluteJS prepare timing", startupSteps);
29468
29527
  return { absolutejs: absolutejs2, manifest };
29469
29528
  }
29470
29529
  stepStartedAt = performance.now();
29471
29530
  const { imageOptimizer: imageOptimizer2 } = await Promise.resolve().then(() => (init_imageOptimizer(), exports_imageOptimizer));
29472
- const absolutejs = new Elysia5({ name: "absolutejs-runtime" }).use(imageOptimizer2(config.images, buildDir)).use(staticFiles).use(generatedAssetsPlugin).use(createNotFoundPlugin());
29531
+ const absolutejs = new Elysia6({ name: "absolutejs-runtime" }).use(imageOptimizer2(config.images, buildDir)).use(staticFiles).use(generatedAssetsPlugin).use(createNotFoundPlugin());
29473
29532
  recordStep("assemble production runtime", stepStartedAt);
29474
29533
  logStartupTimingBlock("AbsoluteJS prepare timing", startupSteps);
29475
29534
  return { absolutejs, manifest };
@@ -36298,5 +36357,5 @@ export {
36298
36357
  ANGULAR_INIT_TIMEOUT_MS
36299
36358
  };
36300
36359
 
36301
- //# debugId=DFB768A1CB46714364756E2164756E21
36360
+ //# debugId=0F7EEFC14519814664756E2164756E21
36302
36361
  //# sourceMappingURL=index.js.map