astro 2.0.18 → 2.1.0

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 (140) hide show
  1. package/README.md +3 -3
  2. package/client-base.d.ts +27 -0
  3. package/client-image.d.ts +48 -0
  4. package/components/Image.astro +28 -0
  5. package/dist/@types/astro.d.ts +101 -1
  6. package/dist/assets/consts.d.ts +4 -0
  7. package/dist/assets/consts.js +20 -0
  8. package/dist/assets/image-endpoint.d.ts +5 -0
  9. package/dist/assets/image-endpoint.js +50 -0
  10. package/dist/assets/index.d.ts +4 -0
  11. package/dist/assets/index.js +10 -0
  12. package/dist/assets/internal.d.ts +36 -0
  13. package/dist/assets/internal.js +70 -0
  14. package/dist/assets/services/service.d.ts +71 -0
  15. package/dist/assets/services/service.js +88 -0
  16. package/dist/assets/services/sharp.d.ts +3 -0
  17. package/dist/assets/services/sharp.js +57 -0
  18. package/dist/assets/services/squoosh.d.ts +3 -0
  19. package/dist/assets/services/squoosh.js +56 -0
  20. package/dist/assets/services/vendor/squoosh/avif/avif_enc.d.js +11 -0
  21. package/dist/assets/services/vendor/squoosh/avif/avif_node_dec.d.ts +2 -0
  22. package/dist/assets/services/vendor/squoosh/avif/avif_node_dec.js +1628 -0
  23. package/dist/assets/services/vendor/squoosh/avif/avif_node_dec.wasm +0 -0
  24. package/dist/assets/services/vendor/squoosh/avif/avif_node_enc.d.ts +2 -0
  25. package/dist/assets/services/vendor/squoosh/avif/avif_node_enc.js +1850 -0
  26. package/dist/assets/services/vendor/squoosh/avif/avif_node_enc.wasm +0 -0
  27. package/dist/assets/services/vendor/squoosh/codecs.d.ts +158 -0
  28. package/dist/assets/services/vendor/squoosh/codecs.js +284 -0
  29. package/dist/assets/services/vendor/squoosh/copy-wasm.d.ts +1 -0
  30. package/dist/assets/services/vendor/squoosh/copy-wasm.js +24 -0
  31. package/dist/assets/services/vendor/squoosh/emscripten-types.d.js +0 -0
  32. package/dist/assets/services/vendor/squoosh/emscripten-utils.d.ts +9 -0
  33. package/dist/assets/services/vendor/squoosh/emscripten-utils.js +33 -0
  34. package/dist/assets/services/vendor/squoosh/image-pool.d.ts +4 -0
  35. package/dist/assets/services/vendor/squoosh/image-pool.js +94 -0
  36. package/dist/assets/services/vendor/squoosh/image.d.ts +14 -0
  37. package/dist/assets/services/vendor/squoosh/image.js +27 -0
  38. package/dist/assets/services/vendor/squoosh/image_data.d.ts +9 -0
  39. package/dist/assets/services/vendor/squoosh/image_data.js +22 -0
  40. package/dist/assets/services/vendor/squoosh/impl.d.ts +22 -0
  41. package/dist/assets/services/vendor/squoosh/impl.js +110 -0
  42. package/dist/assets/services/vendor/squoosh/mozjpeg/mozjpeg_enc.d.js +11 -0
  43. package/dist/assets/services/vendor/squoosh/mozjpeg/mozjpeg_node_dec.d.ts +2 -0
  44. package/dist/assets/services/vendor/squoosh/mozjpeg/mozjpeg_node_dec.js +1631 -0
  45. package/dist/assets/services/vendor/squoosh/mozjpeg/mozjpeg_node_dec.wasm +0 -0
  46. package/dist/assets/services/vendor/squoosh/mozjpeg/mozjpeg_node_enc.d.ts +2 -0
  47. package/dist/assets/services/vendor/squoosh/mozjpeg/mozjpeg_node_enc.js +1737 -0
  48. package/dist/assets/services/vendor/squoosh/mozjpeg/mozjpeg_node_enc.wasm +0 -0
  49. package/dist/assets/services/vendor/squoosh/png/squoosh_oxipng.d.ts +10 -0
  50. package/dist/assets/services/vendor/squoosh/png/squoosh_oxipng.js +89 -0
  51. package/dist/assets/services/vendor/squoosh/png/squoosh_oxipng_bg.wasm +0 -0
  52. package/dist/assets/services/vendor/squoosh/png/squoosh_png.d.ts +15 -0
  53. package/dist/assets/services/vendor/squoosh/png/squoosh_png.js +138 -0
  54. package/dist/assets/services/vendor/squoosh/png/squoosh_png_bg.wasm +0 -0
  55. package/dist/assets/services/vendor/squoosh/resize/squoosh_resize.d.ts +15 -0
  56. package/dist/assets/services/vendor/squoosh/resize/squoosh_resize.js +95 -0
  57. package/dist/assets/services/vendor/squoosh/resize/squoosh_resize_bg.wasm +0 -0
  58. package/dist/assets/services/vendor/squoosh/rotate/rotate.wasm +0 -0
  59. package/dist/assets/services/vendor/squoosh/utils/execOnce.d.ts +1 -0
  60. package/dist/assets/services/vendor/squoosh/utils/execOnce.js +14 -0
  61. package/dist/assets/services/vendor/squoosh/utils/workerPool.d.ts +22 -0
  62. package/dist/assets/services/vendor/squoosh/utils/workerPool.js +95 -0
  63. package/dist/assets/services/vendor/squoosh/webp/webp_enc.d.js +4 -0
  64. package/dist/assets/services/vendor/squoosh/webp/webp_node_dec.d.ts +2 -0
  65. package/dist/assets/services/vendor/squoosh/webp/webp_node_dec.js +1473 -0
  66. package/dist/assets/services/vendor/squoosh/webp/webp_node_dec.wasm +0 -0
  67. package/dist/assets/services/vendor/squoosh/webp/webp_node_enc.d.ts +2 -0
  68. package/dist/assets/services/vendor/squoosh/webp/webp_node_enc.js +1640 -0
  69. package/dist/assets/services/vendor/squoosh/webp/webp_node_enc.wasm +0 -0
  70. package/dist/assets/types.d.ts +119 -0
  71. package/dist/assets/types.js +0 -0
  72. package/dist/assets/utils/etag.d.ts +12 -0
  73. package/dist/assets/utils/etag.js +28 -0
  74. package/dist/assets/utils/metadata.d.ts +6 -0
  75. package/dist/assets/utils/metadata.js +30 -0
  76. package/dist/assets/utils/queryParams.d.ts +2 -0
  77. package/dist/assets/utils/queryParams.js +16 -0
  78. package/dist/assets/utils/transformToPath.d.ts +2 -0
  79. package/dist/assets/utils/transformToPath.js +17 -0
  80. package/dist/assets/vite-plugin-assets.d.ts +5 -0
  81. package/dist/assets/vite-plugin-assets.js +187 -0
  82. package/dist/cli/check/index.d.ts +81 -2
  83. package/dist/cli/check/index.js +190 -44
  84. package/dist/cli/index.js +39 -16
  85. package/dist/cli/telemetry.js +1 -1
  86. package/dist/content/consts.d.ts +0 -1
  87. package/dist/content/consts.js +1 -3
  88. package/dist/content/internal.d.ts +7 -0
  89. package/dist/content/internal.js +27 -5
  90. package/dist/content/template/virtual-mod.d.mts +1 -0
  91. package/dist/content/types-generator.js +25 -10
  92. package/dist/content/utils.d.ts +16 -13
  93. package/dist/content/utils.js +29 -6
  94. package/dist/content/vite-plugin-content-assets.d.ts +3 -1
  95. package/dist/content/vite-plugin-content-assets.js +10 -6
  96. package/dist/content/vite-plugin-content-imports.js +54 -27
  97. package/dist/content/vite-plugin-content-virtual-mod.js +7 -4
  98. package/dist/core/app/index.js +104 -134
  99. package/dist/core/build/generate.js +30 -5
  100. package/dist/core/build/index.d.ts +2 -0
  101. package/dist/core/build/index.js +16 -0
  102. package/dist/core/build/plugins/plugin-ssr.js +3 -5
  103. package/dist/core/config/config.js +2 -1
  104. package/dist/core/config/schema.d.ts +64 -8
  105. package/dist/core/config/schema.js +17 -3
  106. package/dist/core/config/settings.js +3 -1
  107. package/dist/core/constants.js +1 -1
  108. package/dist/core/cookies/cookies.js +36 -68
  109. package/dist/core/create-vite.js +5 -1
  110. package/dist/core/dev/dev.d.ts +2 -2
  111. package/dist/core/dev/dev.js +24 -4
  112. package/dist/core/errors/dev/vite.js +6 -1
  113. package/dist/core/errors/errors-data.d.ts +17 -1
  114. package/dist/core/errors/errors-data.js +16 -0
  115. package/dist/core/messages.js +2 -2
  116. package/dist/core/path.d.ts +1 -0
  117. package/dist/core/path.js +4 -0
  118. package/dist/core/preview/index.d.ts +3 -1
  119. package/dist/core/preview/index.js +16 -1
  120. package/dist/core/render/dev/environment.js +1 -5
  121. package/dist/core/render/environment.js +1 -2
  122. package/dist/core/render/result.js +13 -35
  123. package/dist/core/sync/index.d.ts +18 -5
  124. package/dist/core/sync/index.js +13 -1
  125. package/dist/integrations/index.js +12 -1
  126. package/dist/runtime/server/render/component.js +1 -1
  127. package/dist/runtime/server/response.js +11 -30
  128. package/dist/vite-plugin-astro-postprocess/index.js +1 -1
  129. package/dist/vite-plugin-astro-server/plugin.js +1 -1
  130. package/dist/vite-plugin-env/index.js +4 -4
  131. package/dist/vite-plugin-inject-env-ts/index.js +17 -2
  132. package/dist/vite-plugin-markdown/content-entry-type.d.ts +7 -0
  133. package/dist/vite-plugin-markdown/content-entry-type.js +39 -0
  134. package/dist/vite-plugin-markdown/index.js +70 -4
  135. package/dist/vite-plugin-ssr-manifest/index.d.ts +2 -0
  136. package/dist/vite-plugin-ssr-manifest/index.js +25 -0
  137. package/package.json +26 -8
  138. package/src/content/template/types.d.ts +18 -9
  139. package/src/content/template/virtual-mod.mjs +6 -0
  140. package/tsconfigs/base.json +6 -1
@@ -0,0 +1,22 @@
1
+ /// <reference types="node" />
2
+ import ImageData from './image_data.js';
3
+ export declare function decodeBuffer(_buffer: Buffer | Uint8Array): Promise<ImageData>;
4
+ export declare function rotate(image: ImageData, numRotations: number): Promise<ImageData>;
5
+ type ResizeOpts = {
6
+ image: ImageData;
7
+ } & {
8
+ width?: number;
9
+ height?: number;
10
+ };
11
+ export declare function resize({ image, width, height }: ResizeOpts): Promise<ImageData>;
12
+ export declare function encodeJpeg(image: ImageData, opts: {
13
+ quality?: number;
14
+ }): Promise<Uint8Array>;
15
+ export declare function encodeWebp(image: ImageData, opts: {
16
+ quality?: number;
17
+ }): Promise<Uint8Array>;
18
+ export declare function encodeAvif(image: ImageData, opts: {
19
+ quality?: number;
20
+ }): Promise<Uint8Array>;
21
+ export declare function encodePng(image: ImageData): Promise<Uint8Array>;
22
+ export {};
@@ -0,0 +1,110 @@
1
+ import { codecs as supportedFormats, preprocessors } from "./codecs.js";
2
+ import ImageData from "./image_data.js";
3
+ const DELAY_MS = 1e3;
4
+ let _promise;
5
+ function delayOnce(ms) {
6
+ if (!_promise) {
7
+ _promise = new Promise((resolve) => {
8
+ setTimeout(resolve, ms);
9
+ });
10
+ }
11
+ return _promise;
12
+ }
13
+ function maybeDelay() {
14
+ const isAppleM1 = process.arch === "arm64" && process.platform === "darwin";
15
+ if (isAppleM1) {
16
+ return delayOnce(DELAY_MS);
17
+ }
18
+ return Promise.resolve();
19
+ }
20
+ async function decodeBuffer(_buffer) {
21
+ var _a;
22
+ const buffer = Buffer.from(_buffer);
23
+ const firstChunk = buffer.slice(0, 16);
24
+ const firstChunkString = Array.from(firstChunk).map((v) => String.fromCodePoint(v)).join("");
25
+ if (firstChunkString.includes("GIF")) {
26
+ throw Error(`GIF images are not supported, please install the @astrojs/image/sharp plugin`);
27
+ }
28
+ const key = (_a = Object.entries(supportedFormats).find(
29
+ ([, { detectors }]) => detectors.some((detector) => detector.exec(firstChunkString))
30
+ )) == null ? void 0 : _a[0];
31
+ if (!key) {
32
+ throw Error(`Buffer has an unsupported format`);
33
+ }
34
+ const encoder = supportedFormats[key];
35
+ const mod = await encoder.dec();
36
+ const rgba = mod.decode(new Uint8Array(buffer));
37
+ return rgba;
38
+ }
39
+ async function rotate(image, numRotations) {
40
+ image = ImageData.from(image);
41
+ const m = await preprocessors["rotate"].instantiate();
42
+ return await m(image.data, image.width, image.height, { numRotations });
43
+ }
44
+ async function resize({ image, width, height }) {
45
+ image = ImageData.from(image);
46
+ const p = preprocessors["resize"];
47
+ const m = await p.instantiate();
48
+ await maybeDelay();
49
+ return await m(image.data, image.width, image.height, {
50
+ ...p.defaultOptions,
51
+ width,
52
+ height
53
+ });
54
+ }
55
+ async function encodeJpeg(image, opts) {
56
+ image = ImageData.from(image);
57
+ const e = supportedFormats["mozjpeg"];
58
+ const m = await e.enc();
59
+ await maybeDelay();
60
+ const quality = opts.quality || e.defaultEncoderOptions.quality;
61
+ const r = await m.encode(image.data, image.width, image.height, {
62
+ ...e.defaultEncoderOptions,
63
+ quality
64
+ });
65
+ return r;
66
+ }
67
+ async function encodeWebp(image, opts) {
68
+ image = ImageData.from(image);
69
+ const e = supportedFormats["webp"];
70
+ const m = await e.enc();
71
+ await maybeDelay();
72
+ const quality = opts.quality || e.defaultEncoderOptions.quality;
73
+ const r = await m.encode(image.data, image.width, image.height, {
74
+ ...e.defaultEncoderOptions,
75
+ quality
76
+ });
77
+ return r;
78
+ }
79
+ async function encodeAvif(image, opts) {
80
+ image = ImageData.from(image);
81
+ const e = supportedFormats["avif"];
82
+ const m = await e.enc();
83
+ await maybeDelay();
84
+ const val = e.autoOptimize.min;
85
+ const quality = opts.quality || 75;
86
+ const r = await m.encode(image.data, image.width, image.height, {
87
+ ...e.defaultEncoderOptions,
88
+ cqLevel: quality === 0 ? val : Math.round(val - quality / 100 * val)
89
+ });
90
+ return r;
91
+ }
92
+ async function encodePng(image) {
93
+ image = ImageData.from(image);
94
+ const e = supportedFormats["oxipng"];
95
+ const m = await e.enc();
96
+ await maybeDelay();
97
+ const r = await m.encode(image.data, image.width, image.height, {
98
+ ...e.defaultEncoderOptions
99
+ });
100
+ return r;
101
+ }
102
+ export {
103
+ decodeBuffer,
104
+ encodeAvif,
105
+ encodeJpeg,
106
+ encodePng,
107
+ encodeWebp,
108
+ resize,
109
+ rotate
110
+ };
@@ -0,0 +1,11 @@
1
+ var MozJpegColorSpace = /* @__PURE__ */ ((MozJpegColorSpace2) => {
2
+ MozJpegColorSpace2[MozJpegColorSpace2["GRAYSCALE"] = 1] = "GRAYSCALE";
3
+ MozJpegColorSpace2[MozJpegColorSpace2["RGB"] = 2] = "RGB";
4
+ MozJpegColorSpace2[MozJpegColorSpace2["YCbCr"] = 3] = "YCbCr";
5
+ return MozJpegColorSpace2;
6
+ })(MozJpegColorSpace || {});
7
+ var mozjpeg_enc_d_default = moduleFactory;
8
+ export {
9
+ MozJpegColorSpace,
10
+ mozjpeg_enc_d_default as default
11
+ };
@@ -0,0 +1,2 @@
1
+ declare var Module: (Module: any) => any;
2
+ export default Module;