astro 5.8.2 → 5.9.1

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 (73) hide show
  1. package/dist/actions/runtime/utils.d.ts +1 -1
  2. package/dist/assets/fonts/config.d.ts +21 -21
  3. package/dist/container/index.js +2 -1
  4. package/dist/content/content-layer.js +14 -3
  5. package/dist/content/loaders/types.d.ts +3 -0
  6. package/dist/content/utils.d.ts +26 -10
  7. package/dist/content/utils.js +1 -0
  8. package/dist/core/app/index.js +9 -3
  9. package/dist/core/app/types.d.ts +12 -1
  10. package/dist/core/base-pipeline.js +3 -3
  11. package/dist/core/build/generate.d.ts +1 -1
  12. package/dist/core/build/generate.js +38 -4
  13. package/dist/core/build/internal.d.ts +1 -0
  14. package/dist/core/build/internal.js +2 -1
  15. package/dist/core/build/plugins/index.js +1 -1
  16. package/dist/core/build/plugins/plugin-internals.d.ts +2 -1
  17. package/dist/core/build/plugins/plugin-internals.js +7 -4
  18. package/dist/core/build/plugins/plugin-manifest.js +37 -3
  19. package/dist/core/config/merge.js +1 -6
  20. package/dist/core/config/schemas/base.d.ts +435 -331
  21. package/dist/core/config/schemas/base.js +20 -2
  22. package/dist/core/config/schemas/index.d.ts +1 -1
  23. package/dist/core/config/schemas/index.js +4 -1
  24. package/dist/core/config/schemas/relative.d.ts +681 -552
  25. package/dist/core/constants.js +1 -1
  26. package/dist/core/csp/common.d.ts +16 -0
  27. package/dist/core/csp/common.js +116 -0
  28. package/dist/core/csp/config.d.ts +16 -0
  29. package/dist/core/csp/config.js +52 -0
  30. package/dist/core/dev/dev.js +1 -1
  31. package/dist/core/encryption.d.ts +8 -0
  32. package/dist/core/encryption.js +7 -0
  33. package/dist/core/errors/errors-data.d.ts +12 -0
  34. package/dist/core/errors/errors-data.js +6 -0
  35. package/dist/core/messages.js +2 -2
  36. package/dist/core/middleware/index.js +10 -0
  37. package/dist/core/render-context.d.ts +1 -0
  38. package/dist/core/render-context.js +77 -5
  39. package/dist/core/util.d.ts +1 -0
  40. package/dist/core/util.js +6 -1
  41. package/dist/env/schema.d.ts +34 -34
  42. package/dist/integrations/features-validation.js +36 -30
  43. package/dist/integrations/hooks.d.ts +3 -2
  44. package/dist/runtime/server/astro-island-styles.d.ts +1 -0
  45. package/dist/runtime/server/astro-island-styles.js +4 -0
  46. package/dist/runtime/server/index.d.ts +1 -0
  47. package/dist/runtime/server/render/astro/factory.d.ts +3 -2
  48. package/dist/runtime/server/render/astro/factory.js +6 -1
  49. package/dist/runtime/server/render/astro/head-and-content.d.ts +7 -0
  50. package/dist/runtime/server/render/astro/head-and-content.js +6 -0
  51. package/dist/runtime/server/render/astro/render.d.ts +1 -0
  52. package/dist/runtime/server/render/astro/render.js +2 -1
  53. package/dist/runtime/server/render/common.d.ts +1 -1
  54. package/dist/runtime/server/render/common.js +5 -3
  55. package/dist/runtime/server/render/component.js +8 -2
  56. package/dist/runtime/server/render/csp.d.ts +2 -0
  57. package/dist/runtime/server/render/csp.js +35 -0
  58. package/dist/runtime/server/render/head.js +14 -0
  59. package/dist/runtime/server/render/page.d.ts +1 -1
  60. package/dist/runtime/server/render/page.js +1 -1
  61. package/dist/runtime/server/render/server-islands.d.ts +14 -3
  62. package/dist/runtime/server/render/server-islands.js +100 -69
  63. package/dist/runtime/server/scripts.d.ts +1 -1
  64. package/dist/runtime/server/scripts.js +2 -5
  65. package/dist/runtime/server/transition.d.ts +1 -1
  66. package/dist/runtime/server/transition.js +7 -2
  67. package/dist/types/public/config.d.ts +240 -7
  68. package/dist/types/public/context.d.ts +51 -0
  69. package/dist/types/public/integrations.d.ts +9 -0
  70. package/dist/types/public/internal.d.ts +24 -2
  71. package/dist/vite-plugin-astro-server/css.js +3 -3
  72. package/dist/vite-plugin-astro-server/plugin.js +26 -4
  73. package/package.json +3 -3
@@ -3,6 +3,7 @@ import { bundledThemes } from "shiki";
3
3
  import { z } from "zod";
4
4
  import { localFontFamilySchema, remoteFontFamilySchema } from "../../../assets/fonts/config.js";
5
5
  import { EnvSchema } from "../../../env/schema.js";
6
+ import { allowedDirectivesSchema, cspAlgorithmSchema, cspHashSchema } from "../../csp/config.js";
6
7
  const ASTRO_CONFIG_DEFAULTS = {
7
8
  root: ".",
8
9
  srcDir: "./src",
@@ -56,7 +57,8 @@ const ASTRO_CONFIG_DEFAULTS = {
56
57
  contentIntellisense: false,
57
58
  responsiveImages: false,
58
59
  headingIdCompat: false,
59
- preserveScriptOrder: false
60
+ preserveScriptOrder: false,
61
+ csp: false
60
62
  }
61
63
  };
62
64
  const highlighterTypesSchema = z.union([z.literal("shiki"), z.literal("prism")]).default(syntaxHighlightDefaults.type);
@@ -265,7 +267,23 @@ const AstroConfigSchema = z.object({
265
267
  responsiveImages: z.boolean().optional().default(ASTRO_CONFIG_DEFAULTS.experimental.responsiveImages),
266
268
  headingIdCompat: z.boolean().optional().default(ASTRO_CONFIG_DEFAULTS.experimental.headingIdCompat),
267
269
  preserveScriptOrder: z.boolean().optional().default(ASTRO_CONFIG_DEFAULTS.experimental.preserveScriptOrder),
268
- fonts: z.array(z.union([localFontFamilySchema, remoteFontFamilySchema])).optional()
270
+ fonts: z.array(z.union([localFontFamilySchema, remoteFontFamilySchema])).optional(),
271
+ csp: z.union([
272
+ z.boolean().optional().default(ASTRO_CONFIG_DEFAULTS.experimental.csp),
273
+ z.object({
274
+ algorithm: cspAlgorithmSchema,
275
+ directives: z.array(allowedDirectivesSchema).optional(),
276
+ styleDirective: z.object({
277
+ resources: z.array(z.string()).optional(),
278
+ hashes: z.array(cspHashSchema).optional()
279
+ }).optional(),
280
+ scriptDirective: z.object({
281
+ resources: z.array(z.string()).optional(),
282
+ hashes: z.array(cspHashSchema).optional(),
283
+ strictDynamic: z.boolean().optional()
284
+ }).optional()
285
+ })
286
+ ]).optional().default(ASTRO_CONFIG_DEFAULTS.experimental.csp)
269
287
  }).strict(
270
288
  `Invalid or outdated experimental feature.
271
289
  Check for incorrect spelling or outdated Astro version.
@@ -1,3 +1,3 @@
1
- export { AstroConfigSchema, ASTRO_CONFIG_DEFAULTS, type AstroConfigType } from './base.js';
1
+ export { AstroConfigSchema, ASTRO_CONFIG_DEFAULTS, type AstroConfigType, } from './base.js';
2
2
  export { createRelativeSchema } from './relative.js';
3
3
  export { AstroConfigRefinedSchema } from './refined.js';
@@ -1,4 +1,7 @@
1
- import { AstroConfigSchema, ASTRO_CONFIG_DEFAULTS } from "./base.js";
1
+ import {
2
+ AstroConfigSchema,
3
+ ASTRO_CONFIG_DEFAULTS
4
+ } from "./base.js";
2
5
  import { createRelativeSchema } from "./relative.js";
3
6
  import { AstroConfigRefinedSchema } from "./refined.js";
4
7
  export {