astro 5.7.3 → 5.7.5

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.
Files changed (132) hide show
  1. package/dist/actions/runtime/virtual/server.js +9 -7
  2. package/dist/assets/fonts/config.d.ts +0 -16
  3. package/dist/assets/fonts/config.js +1 -2
  4. package/dist/assets/fonts/load.js +53 -26
  5. package/dist/assets/fonts/metrics.d.ts +1 -1
  6. package/dist/assets/fonts/metrics.js +1 -1
  7. package/dist/assets/fonts/providers/index.d.ts +1 -1
  8. package/dist/assets/fonts/providers/index.js +3 -2
  9. package/dist/assets/fonts/providers/local.d.ts +4 -1
  10. package/dist/assets/fonts/providers/local.js +7 -1
  11. package/dist/assets/fonts/utils.d.ts +3 -2
  12. package/dist/assets/fonts/utils.js +28 -19
  13. package/dist/assets/fonts/vite-plugin-fonts.js +11 -8
  14. package/dist/assets/services/service.d.ts +1 -1
  15. package/dist/assets/utils/etag.d.ts +0 -11
  16. package/dist/assets/utils/etag.js +1 -2
  17. package/dist/assets/utils/vendor/image-size/lookup.d.ts +0 -2
  18. package/dist/assets/utils/vendor/image-size/lookup.js +0 -10
  19. package/dist/cli/add/index.d.ts +0 -9
  20. package/dist/cli/add/index.js +1 -2
  21. package/dist/cli/info/index.d.ts +0 -1
  22. package/dist/cli/info/index.js +0 -1
  23. package/dist/cli/preferences/index.d.ts +0 -2
  24. package/dist/container/index.js +1 -6
  25. package/dist/content/content-layer.d.ts +2 -7
  26. package/dist/content/content-layer.js +4 -6
  27. package/dist/content/index.d.ts +1 -2
  28. package/dist/content/index.js +1 -5
  29. package/dist/content/loaders/file.d.ts +2 -1
  30. package/dist/content/loaders/glob.d.ts +3 -2
  31. package/dist/content/utils.d.ts +1 -12
  32. package/dist/content/utils.js +0 -13
  33. package/dist/content/vite-plugin-content-virtual-mod.d.ts +0 -16
  34. package/dist/content/vite-plugin-content-virtual-mod.js +1 -3
  35. package/dist/core/app/index.js +3 -4
  36. package/dist/core/app/pipeline.d.ts +2 -3
  37. package/dist/core/app/pipeline.js +1 -3
  38. package/dist/core/app/types.d.ts +3 -2
  39. package/dist/core/build/consts.d.ts +0 -1
  40. package/dist/core/build/consts.js +1 -3
  41. package/dist/core/build/index.d.ts +2 -1
  42. package/dist/core/build/page-data.d.ts +3 -2
  43. package/dist/core/build/plugin.d.ts +1 -1
  44. package/dist/core/build/plugins/plugin-analyzer.d.ts +0 -2
  45. package/dist/core/build/plugins/plugin-analyzer.js +1 -2
  46. package/dist/core/build/plugins/plugin-chunks.d.ts +0 -2
  47. package/dist/core/build/plugins/plugin-chunks.js +1 -2
  48. package/dist/core/build/plugins/plugin-component-entry.d.ts +0 -8
  49. package/dist/core/build/plugins/plugin-component-entry.js +1 -3
  50. package/dist/core/build/plugins/plugin-internals.d.ts +0 -2
  51. package/dist/core/build/plugins/plugin-internals.js +1 -2
  52. package/dist/core/build/plugins/plugin-renderers.d.ts +0 -2
  53. package/dist/core/build/plugins/plugin-renderers.js +1 -2
  54. package/dist/core/build/plugins/plugin-scripts.d.ts +0 -5
  55. package/dist/core/build/plugins/plugin-scripts.js +1 -2
  56. package/dist/core/build/plugins/plugin-ssr.d.ts +0 -1
  57. package/dist/core/build/plugins/plugin-ssr.js +0 -1
  58. package/dist/core/build/plugins/util.d.ts +0 -9
  59. package/dist/core/build/plugins/util.js +0 -2
  60. package/dist/core/build/types.d.ts +1 -1
  61. package/dist/core/config/config.d.ts +0 -1
  62. package/dist/core/config/config.js +0 -1
  63. package/dist/core/config/index.d.ts +1 -2
  64. package/dist/core/config/index.js +0 -2
  65. package/dist/core/config/schemas/base.d.ts +6 -4
  66. package/dist/core/config/schemas/relative.d.ts +6 -6
  67. package/dist/core/config/timer.d.ts +0 -5
  68. package/dist/core/config/tsconfig.d.ts +1 -1
  69. package/dist/core/constants.d.ts +0 -4
  70. package/dist/core/constants.js +1 -3
  71. package/dist/core/cookies/index.d.ts +1 -1
  72. package/dist/core/cookies/index.js +2 -4
  73. package/dist/core/cookies/response.d.ts +0 -1
  74. package/dist/core/cookies/response.js +1 -5
  75. package/dist/core/dev/container.d.ts +2 -1
  76. package/dist/core/dev/dev.js +1 -1
  77. package/dist/core/dev/index.d.ts +1 -1
  78. package/dist/core/dev/index.js +1 -2
  79. package/dist/core/dev/restart.d.ts +1 -1
  80. package/dist/core/encryption.d.ts +0 -8
  81. package/dist/core/encryption.js +1 -7
  82. package/dist/core/errors/index.d.ts +1 -2
  83. package/dist/core/errors/index.js +0 -2
  84. package/dist/core/logger/core.d.ts +3 -9
  85. package/dist/core/logger/core.js +1 -5
  86. package/dist/core/messages.d.ts +0 -1
  87. package/dist/core/messages.js +2 -11
  88. package/dist/core/middleware/sequence.js +3 -0
  89. package/dist/core/preview/static-preview-server.d.ts +2 -1
  90. package/dist/core/redirects/index.d.ts +0 -1
  91. package/dist/core/redirects/index.js +0 -2
  92. package/dist/core/render/index.d.ts +0 -17
  93. package/dist/core/render/ssr-element.d.ts +0 -2
  94. package/dist/core/render/ssr-element.js +0 -2
  95. package/dist/core/render-context.js +4 -0
  96. package/dist/core/request.d.ts +1 -1
  97. package/dist/core/routing/3xx.d.ts +2 -1
  98. package/dist/core/routing/astro-designed-error-pages.d.ts +0 -1
  99. package/dist/core/routing/astro-designed-error-pages.js +1 -16
  100. package/dist/core/routing/index.d.ts +2 -3
  101. package/dist/core/routing/index.js +3 -8
  102. package/dist/core/routing/manifest/create.d.ts +2 -3
  103. package/dist/core/routing/manifest/create.js +0 -1
  104. package/dist/core/routing/request.d.ts +0 -1
  105. package/dist/core/routing/request.js +1 -2
  106. package/dist/core/routing/rewrite.d.ts +3 -2
  107. package/dist/core/server-islands/vite-plugin-server-islands.d.ts +0 -1
  108. package/dist/core/server-islands/vite-plugin-server-islands.js +0 -1
  109. package/dist/core/sync/index.d.ts +2 -1
  110. package/dist/core/util.d.ts +0 -1
  111. package/dist/core/util.js +0 -1
  112. package/dist/events/session.d.ts +1 -1
  113. package/dist/integrations/features-validation.d.ts +1 -3
  114. package/dist/integrations/features-validation.js +0 -2
  115. package/dist/preferences/index.d.ts +4 -4
  116. package/dist/type-utils.d.ts +0 -4
  117. package/dist/types/public/config.d.ts +19 -0
  118. package/dist/types/typed-emitter.d.ts +2 -1
  119. package/dist/vite-plugin-astro/hmr.d.ts +2 -1
  120. package/dist/vite-plugin-astro/query.d.ts +3 -2
  121. package/dist/vite-plugin-astro/types.d.ts +2 -1
  122. package/dist/vite-plugin-astro-server/controller.d.ts +2 -2
  123. package/dist/vite-plugin-astro-server/plugin.d.ts +2 -1
  124. package/dist/vite-plugin-astro-server/response.d.ts +0 -1
  125. package/dist/vite-plugin-astro-server/response.js +0 -12
  126. package/dist/vite-plugin-astro-server/route.d.ts +1 -1
  127. package/dist/vite-plugin-astro-server/server-state.d.ts +3 -3
  128. package/dist/vite-plugin-astro-server/server-state.js +0 -4
  129. package/dist/vite-plugin-load-fallback/index.d.ts +1 -1
  130. package/dist/vite-plugin-scanner/index.d.ts +2 -1
  131. package/package.json +4 -10
  132. package/templates/env.mjs +1 -0
@@ -3,9 +3,9 @@ import { type Preferences, type PublicPreferences } from './defaults.js';
3
3
  type DotKeys<T> = T extends object ? {
4
4
  [K in keyof T]: `${Exclude<K, symbol>}${DotKeys<T[K]> extends never ? '' : `.${DotKeys<T[K]>}`}`;
5
5
  }[keyof T] : never;
6
- export type GetDotKey<T extends Record<string | number, any>, K extends string> = K extends `${infer U}.${infer Rest}` ? GetDotKey<T[U], Rest> : T[K];
7
- export type PreferenceLocation = 'global' | 'project';
8
- export interface PreferenceOptions {
6
+ type GetDotKey<T extends Record<string | number, any>, K extends string> = K extends `${infer U}.${infer Rest}` ? GetDotKey<T[U], Rest> : T[K];
7
+ type PreferenceLocation = 'global' | 'project';
8
+ interface PreferenceOptions {
9
9
  location?: PreferenceLocation;
10
10
  /**
11
11
  * If `true`, the server will be reloaded after setting the preference.
@@ -19,7 +19,7 @@ type DeepPartial<T> = T extends object ? {
19
19
  [P in keyof T]?: DeepPartial<T[P]>;
20
20
  } : T;
21
21
  export type PreferenceKey = DotKeys<Preferences>;
22
- export interface PreferenceList extends Record<PreferenceLocation, DeepPartial<PublicPreferences>> {
22
+ interface PreferenceList extends Record<PreferenceLocation, DeepPartial<PublicPreferences>> {
23
23
  fromAstroConfig: DeepPartial<Preferences>;
24
24
  defaults: PublicPreferences;
25
25
  }
@@ -10,10 +10,6 @@ export type OmitIndexSignature<ObjectType> = {
10
10
  export type OmitPreservingIndexSignature<T, K extends PropertyKey> = {
11
11
  [P in keyof T as Exclude<P, K>]: T[P];
12
12
  };
13
- export type Kebab<T extends string, A extends string = ''> = T extends `${infer F}${infer R}` ? Kebab<R, `${A}${F extends Lowercase<F> ? '' : '-'}${Lowercase<F>}`> : A;
14
- export type KebabKeys<T> = {
15
- [K in keyof T as K extends string ? Kebab<K> : K]: T[K];
16
- };
17
13
  export type ValueOf<T> = T[keyof T];
18
14
  export type MapValue<T> = T extends Map<any, infer V> ? V : never;
19
15
  export type DeepPartial<T> = {
@@ -837,6 +837,25 @@ export interface ViteUserConfig extends OriginalViteUserConfig {
837
837
  * }
838
838
  * ```
839
839
  */
840
+ /**
841
+ * @docs
842
+ * @name server.allowedHosts
843
+ * @type {string[] | true}
844
+ * @default `[]`
845
+ * @version 5.4.0
846
+ * @description
847
+ *
848
+ * A list of hostnames that Astro is allowed to respond to. When the value is set to `true`, any
849
+ * hostname is allowed.
850
+ *
851
+ * ```js
852
+ * {
853
+ * server: {
854
+ * allowedHosts: ['staging.example.com', 'qa.example.com']
855
+ * }
856
+ * }
857
+ * ```
858
+ */
840
859
  /**
841
860
  * @docs
842
861
  * @name server.open
@@ -3,7 +3,7 @@
3
3
  * Copyright (c) 2018 Andy Wermke
4
4
  * https://github.com/andywer/typed-emitter/blob/9a139b6fa0ec6b0db6141b5b756b784e4f7ef4e4/LICENSE
5
5
  */
6
- export type EventMap = {
6
+ type EventMap = {
7
7
  [key: string]: (...args: any[]) => void;
8
8
  };
9
9
  /**
@@ -39,3 +39,4 @@ export interface TypedEventEmitter<Events extends EventMap> {
39
39
  getMaxListeners(): number;
40
40
  setMaxListeners(maxListeners: number): this;
41
41
  }
42
+ export {};
@@ -1,9 +1,10 @@
1
1
  import type { HmrContext } from 'vite';
2
2
  import type { Logger } from '../core/logger/core.js';
3
3
  import type { CompileMetadata } from './types.js';
4
- export interface HandleHotUpdateOptions {
4
+ interface HandleHotUpdateOptions {
5
5
  logger: Logger;
6
6
  astroFileToCompileMetadata: Map<string, CompileMetadata>;
7
7
  }
8
8
  export declare function handleHotUpdate(ctx: HmrContext, { logger, astroFileToCompileMetadata }: HandleHotUpdateOptions): Promise<import("vite").ModuleNode[] | undefined>;
9
9
  export declare function isStyleOnlyChanged(oldCode: string, newCode: string): boolean;
10
+ export {};
@@ -1,4 +1,4 @@
1
- export interface AstroQuery {
1
+ interface AstroQuery {
2
2
  astro?: boolean;
3
3
  src?: boolean;
4
4
  type?: 'script' | 'template' | 'style' | 'custom';
@@ -6,8 +6,9 @@ export interface AstroQuery {
6
6
  lang?: string;
7
7
  raw?: boolean;
8
8
  }
9
- export interface ParsedRequestResult {
9
+ interface ParsedRequestResult {
10
10
  filename: string;
11
11
  query: AstroQuery;
12
12
  }
13
13
  export declare function parseAstroRequest(id: string): ParsedRequestResult;
14
+ export {};
@@ -1,7 +1,7 @@
1
1
  import type { HoistedScript, TransformResult } from '@astrojs/compiler';
2
2
  import type { CompileCssResult } from '../core/compile/types.js';
3
3
  import type { PropagationHint } from '../types/public/internal.js';
4
- export interface PageOptions {
4
+ interface PageOptions {
5
5
  prerender?: boolean;
6
6
  }
7
7
  export interface PluginMetadata {
@@ -43,3 +43,4 @@ export interface CompileMetadata {
43
43
  /** For Astro scripts virtual module */
44
44
  scripts: HoistedScript[];
45
45
  }
46
+ export {};
@@ -6,13 +6,13 @@ export interface DevServerController {
6
6
  onFileChange: LoaderEvents['file-change'];
7
7
  onHMRError: LoaderEvents['hmr-error'];
8
8
  }
9
- export type CreateControllerParams = {
9
+ type CreateControllerParams = {
10
10
  loader: ModuleLoader;
11
11
  } | {
12
12
  reload: ReloadFn;
13
13
  };
14
14
  export declare function createController(params: CreateControllerParams): DevServerController;
15
- export interface RunWithErrorHandlingParams {
15
+ interface RunWithErrorHandlingParams {
16
16
  controller: DevServerController;
17
17
  pathname: string;
18
18
  run: () => Promise<any>;
@@ -3,7 +3,7 @@ import type * as vite from 'vite';
3
3
  import type { SSRManifest } from '../core/app/types.js';
4
4
  import type { Logger } from '../core/logger/core.js';
5
5
  import type { AstroSettings, RoutesList } from '../types/astro.js';
6
- export interface AstroPluginOptions {
6
+ interface AstroPluginOptions {
7
7
  settings: AstroSettings;
8
8
  logger: Logger;
9
9
  fs: typeof fs;
@@ -18,3 +18,4 @@ export default function createVitePluginAstroServer({ settings, logger, fs: fsMo
18
18
  * @param settings
19
19
  */
20
20
  export declare function createDevelopmentManifest(settings: AstroSettings): SSRManifest;
21
+ export {};
@@ -1,7 +1,6 @@
1
1
  import type http from 'node:http';
2
2
  import type { ErrorWithMetadata } from '../core/errors/index.js';
3
3
  import type { ModuleLoader } from '../core/module-loader/index.js';
4
- export declare function handle404Response(origin: string, req: http.IncomingMessage, res: http.ServerResponse): Promise<void>;
5
4
  export declare function handle500Response(loader: ModuleLoader, res: http.ServerResponse, err: ErrorWithMetadata): Promise<void>;
6
5
  export declare function writeHtmlResponse(res: http.ServerResponse, statusCode: number, html: string): void;
7
6
  export declare function writeRedirectResponse(res: http.ServerResponse, statusCode: number, location: string): void;
@@ -3,17 +3,6 @@ import { Readable } from "node:stream";
3
3
  import { getSetCookiesFromResponse } from "../core/cookies/index.js";
4
4
  import { getViteErrorPayload } from "../core/errors/dev/index.js";
5
5
  import { redirectTemplate } from "../core/routing/3xx.js";
6
- import notFoundTemplate from "../template/4xx.js";
7
- async function handle404Response(origin, req, res) {
8
- const pathname = decodeURI(new URL(origin + req.url).pathname);
9
- const html = notFoundTemplate({
10
- statusCode: 404,
11
- title: "Not found",
12
- tabTitle: "404: Not Found",
13
- pathname
14
- });
15
- writeHtmlResponse(res, 404, html);
16
- }
17
6
  async function handle500Response(loader, res, err) {
18
7
  res.on(
19
8
  "close",
@@ -99,7 +88,6 @@ async function writeSSRResult(webRequest, webResponse, res) {
99
88
  return writeWebResponse(res, webResponse);
100
89
  }
101
90
  export {
102
- handle404Response,
103
91
  handle500Response,
104
92
  writeHtmlResponse,
105
93
  writeRedirectResponse,
@@ -3,7 +3,7 @@ import type { ComponentInstance, RoutesList } from '../types/astro.js';
3
3
  import type { RouteData } from '../types/public/internal.js';
4
4
  import type { DevPipeline } from './pipeline.js';
5
5
  type AsyncReturnType<T extends (...args: any) => Promise<any>> = T extends (...args: any) => Promise<infer R> ? R : any;
6
- export interface MatchedRoute {
6
+ interface MatchedRoute {
7
7
  route: RouteData;
8
8
  filePath: URL;
9
9
  resolvedPathname: string;
@@ -1,5 +1,5 @@
1
- export type ErrorState = 'fresh' | 'error';
2
- export interface RouteState {
1
+ type ErrorState = 'fresh' | 'error';
2
+ interface RouteState {
3
3
  state: ErrorState;
4
4
  error?: Error;
5
5
  }
@@ -9,7 +9,7 @@ export interface ServerState {
9
9
  error?: Error;
10
10
  }
11
11
  export declare function createServerState(): ServerState;
12
- export declare function hasAnyFailureState(serverState: ServerState): boolean;
13
12
  export declare function setRouteError(serverState: ServerState, pathname: string, error: Error): void;
14
13
  export declare function setServerError(serverState: ServerState, error: Error): void;
15
14
  export declare function clearRouteError(serverState: ServerState, pathname: string): void;
15
+ export {};
@@ -4,9 +4,6 @@ function createServerState() {
4
4
  state: "fresh"
5
5
  };
6
6
  }
7
- function hasAnyFailureState(serverState) {
8
- return serverState.state !== "fresh";
9
- }
10
7
  function setRouteError(serverState, pathname, error) {
11
8
  if (serverState.routes.has(pathname)) {
12
9
  const routeState = serverState.routes.get(pathname);
@@ -36,7 +33,6 @@ function clearRouteError(serverState, pathname) {
36
33
  export {
37
34
  clearRouteError,
38
35
  createServerState,
39
- hasAnyFailureState,
40
36
  setRouteError,
41
37
  setServerError
42
38
  };
@@ -1,7 +1,7 @@
1
1
  import nodeFs from 'node:fs';
2
2
  import type * as vite from 'vite';
3
3
  type NodeFileSystemModule = typeof nodeFs;
4
- export interface LoadFallbackPluginParams {
4
+ interface LoadFallbackPluginParams {
5
5
  fs?: NodeFileSystemModule;
6
6
  root: URL;
7
7
  }
@@ -1,9 +1,10 @@
1
1
  import type { Plugin as VitePlugin } from 'vite';
2
2
  import type { Logger } from '../core/logger/core.js';
3
3
  import type { AstroSettings, RoutesList } from '../types/astro.js';
4
- export interface AstroPluginScannerOptions {
4
+ interface AstroPluginScannerOptions {
5
5
  settings: AstroSettings;
6
6
  logger: Logger;
7
7
  routesList: RoutesList;
8
8
  }
9
9
  export default function astroScannerPlugin({ settings, logger, routesList, }: AstroPluginScannerOptions): VitePlugin;
10
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "astro",
3
- "version": "5.7.3",
3
+ "version": "5.7.5",
4
4
  "description": "Astro is a modern site builder with web best practices, performance, and DX front-of-mind.",
5
5
  "type": "module",
6
6
  "author": "withastro",
@@ -47,10 +47,7 @@
47
47
  "./compiler-runtime": "./dist/runtime/compiler/index.js",
48
48
  "./runtime/*": "./dist/runtime/*",
49
49
  "./config": "./dist/config/entrypoint.js",
50
- "./container": {
51
- "types": "./dist/container/index.d.ts",
52
- "default": "./dist/container/index.js"
53
- },
50
+ "./container": "./dist/container/index.js",
54
51
  "./app": "./dist/core/app/index.js",
55
52
  "./app/node": "./dist/core/app/node.js",
56
53
  "./client/*": "./dist/runtime/client/*",
@@ -76,10 +73,7 @@
76
73
  "default": "./zod.mjs"
77
74
  },
78
75
  "./errors": "./dist/core/errors/userError.js",
79
- "./middleware": {
80
- "types": "./dist/core/middleware/index.d.ts",
81
- "default": "./dist/core/middleware/index.js"
82
- },
76
+ "./middleware": "./dist/core/middleware/index.js",
83
77
  "./virtual-modules/*": "./dist/virtual-modules/*"
84
78
  },
85
79
  "bin": {
@@ -162,7 +156,7 @@
162
156
  "zod-to-ts": "^1.2.0",
163
157
  "@astrojs/internal-helpers": "0.6.1",
164
158
  "@astrojs/markdown-remark": "6.3.1",
165
- "@astrojs/telemetry": "3.2.0"
159
+ "@astrojs/telemetry": "3.2.1"
166
160
  },
167
161
  "optionalDependencies": {
168
162
  "sharp": "^0.33.3"
package/templates/env.mjs CHANGED
@@ -1,3 +1,4 @@
1
+ /* eslint-disable @typescript-eslint/no-unused-vars */
1
2
  // @ts-check
2
3
  import { schema } from 'virtual:astro:env/internal';
3
4
  import {