diff --git a/.changeset/dull-candles-perform.md b/.changeset/dull-candles-perform.md new file mode 100644 index 000000000..587247714 --- /dev/null +++ b/.changeset/dull-candles-perform.md @@ -0,0 +1,5 @@ +--- +'@astrojs/cloudflare': minor +--- + +Removes default override of image service for astro:assets. If you relied on this before, you need to add the option `imageService: 'passthrough'` to your adapter configuration. diff --git a/.changeset/grumpy-adults-retire.md b/.changeset/grumpy-adults-retire.md new file mode 100644 index 000000000..f11dc599b --- /dev/null +++ b/.changeset/grumpy-adults-retire.md @@ -0,0 +1,5 @@ +--- +'@astrojs/netlify': patch +--- + +Updates dependencies diff --git a/.changeset/shaggy-wasps-care.md b/.changeset/shaggy-wasps-care.md index 778c1d6e4..f7b8b7f33 100644 --- a/.changeset/shaggy-wasps-care.md +++ b/.changeset/shaggy-wasps-care.md @@ -2,4 +2,4 @@ '@astrojs/cloudflare': minor --- -Astro Assets Image Service +Adds support for external Cloudflare Image Resizing Service. See Cloudflare docs for more information about Pricing and Features: https://developers.cloudflare.com/images/image-resizing/ diff --git a/package.json b/package.json index fb25cfeac..572430896 100644 --- a/package.json +++ b/package.json @@ -46,13 +46,13 @@ } }, "devDependencies": { - "@astrojs/check": "^0.1.0", + "@astrojs/check": "^0.3.1", "@changesets/changelog-github": "^0.4.8", "@changesets/cli": "^2.26.2", "@types/node": "^18.17.8", "@typescript-eslint/eslint-plugin": "^6.4.1", "@typescript-eslint/parser": "^6.4.1", - "esbuild": "^0.19.2", + "esbuild": "^0.19.5", "eslint": "^8.47.0", "eslint-config-prettier": "^9.0.0", "eslint-plugin-no-only-tests": "^3.1.0", @@ -60,9 +60,9 @@ "only-allow": "^1.1.1", "organize-imports-cli": "^0.10.0", "prettier": "^3.0.3", - "prettier-plugin-astro": "^0.12.0", + "prettier-plugin-astro": "^0.12.1", "tiny-glob": "^0.2.9", "turbo": "^1.10.12", - "typescript": "~5.1.6" + "typescript": "^5.2.2" } } diff --git a/packages/cloudflare/package.json b/packages/cloudflare/package.json index 96983d36c..074112472 100644 --- a/packages/cloudflare/package.json +++ b/packages/cloudflare/package.json @@ -35,28 +35,28 @@ }, "dependencies": { "@astrojs/underscore-redirects": "^0.3.3", - "@cloudflare/workers-types": "^4.20230821.0", - "miniflare": "3.20231010.0", + "@cloudflare/workers-types": "^4.20231025.0", + "miniflare": "3.20231025.1", "@iarna/toml": "^2.2.5", "dotenv": "^16.3.1", - "esbuild": "^0.19.2", + "esbuild": "^0.19.5", "find-up": "^6.3.0", "tiny-glob": "^0.2.9", - "vite": "^4.4.9" + "vite": "^4.5.0" }, "peerDependencies": { - "astro": "workspace:^3.3.0" + "astro": "^3.4.3" }, "devDependencies": { "execa": "^8.0.1", "fast-glob": "^3.3.1", "@types/iarna__toml": "^2.0.2", "strip-ansi": "^7.1.0", - "astro": "^3.2.3", - "chai": "^4.3.7", + "astro": "^3.4.3", + "chai": "^4.3.10", "cheerio": "1.0.0-rc.12", "mocha": "^10.2.0", - "wrangler": "^3.11.0", + "wrangler": "^3.15.0", "@astrojs/test-utils": "workspace:*" }, "publishConfig": { diff --git a/packages/cloudflare/src/entrypoints/image-service.ts b/packages/cloudflare/src/entrypoints/image-service.ts index ea607ca7a..c8bee1062 100644 --- a/packages/cloudflare/src/entrypoints/image-service.ts +++ b/packages/cloudflare/src/entrypoints/image-service.ts @@ -1,371 +1,12 @@ -import type { - AstroConfig, - ExternalImageService, - ImageMetadata, - ImageTransform, - RemotePattern, -} from 'astro'; +import type { ExternalImageService } from 'astro'; -type SrcSetValue = { - transform: ImageTransform; - descriptor?: string; - attributes?: Record; -}; - -function isESMImportedImage(src: ImageMetadata | string): src is ImageMetadata { - return typeof src === 'object'; -} - -function isRemotePath(src: string) { - return /^(http|ftp|https|ws):?\/\//.test(src) || src.startsWith('data:'); -} - -function matchHostname(url: URL, hostname?: string, allowWildcard?: boolean) { - if (!hostname) { - return true; - } else if (!allowWildcard || !hostname.startsWith('*')) { - return hostname === url.hostname; - } else if (hostname.startsWith('**.')) { - const slicedHostname = hostname.slice(2); // ** length - return slicedHostname !== url.hostname && url.hostname.endsWith(slicedHostname); - } else if (hostname.startsWith('*.')) { - const slicedHostname = hostname.slice(1); // * length - const additionalSubdomains = url.hostname - .replace(slicedHostname, '') - .split('.') - .filter(Boolean); - return additionalSubdomains.length === 1; - } - - return false; -} -export function matchPort(url: URL, port?: string) { - return !port || port === url.port; -} - -export function matchProtocol(url: URL, protocol?: string) { - return !protocol || protocol === url.protocol.slice(0, -1); -} - -export function matchPathname(url: URL, pathname?: string, allowWildcard?: boolean) { - if (!pathname) { - return true; - } else if (!allowWildcard || !pathname.endsWith('*')) { - return pathname === url.pathname; - } else if (pathname.endsWith('/**')) { - const slicedPathname = pathname.slice(0, -2); // ** length - return slicedPathname !== url.pathname && url.pathname.startsWith(slicedPathname); - } else if (pathname.endsWith('/*')) { - const slicedPathname = pathname.slice(0, -1); // * length - const additionalPathChunks = url.pathname - .replace(slicedPathname, '') - .split('/') - .filter(Boolean); - return additionalPathChunks.length === 1; - } - - return false; -} - -function matchPattern(url: URL, remotePattern: RemotePattern) { - return ( - matchProtocol(url, remotePattern.protocol) && - matchHostname(url, remotePattern.hostname, true) && - matchPort(url, remotePattern.port) && - matchPathname(url, remotePattern.pathname, true) - ); -} - -function isRemoteAllowed( - src: string, - { - domains = [], - remotePatterns = [], - }: Partial> -): boolean { - if (!isRemotePath(src)) return false; - - const url = new URL(src); - return ( - domains.some((domain) => matchHostname(url, domain)) || - remotePatterns.some((remotePattern) => matchPattern(url, remotePattern)) - ); -} - -const VALID_SUPPORTED_FORMATS = [ - 'jpeg', - 'jpg', - 'png', - 'tiff', - 'webp', - 'gif', - 'svg', - 'avif', -] as const; - -const DEFAULT_OUTPUT_FORMAT = 'webp' as const; - -function isString(path: unknown): path is string { - return typeof path === 'string' || path instanceof String; -} - -function removeTrailingForwardSlash(path: string) { - return path.endsWith('/') ? path.slice(0, path.length - 1) : path; -} - -function removeLeadingForwardSlash(path: string) { - return path.startsWith('/') ? path.substring(1) : path; -} - -function trimSlashes(path: string) { - return path.replace(/^\/|\/$/g, ''); -} - -function joinPaths(...paths: (string | undefined)[]) { - return paths - .filter(isString) - .map((path, i) => { - if (i === 0) { - return removeTrailingForwardSlash(path); - } else if (i === paths.length - 1) { - return removeLeadingForwardSlash(path); - } else { - return trimSlashes(path); - } - }) - .join('/'); -} - -/** - * Returns the final dimensions of an image based on the user's options. - * - * For local images: - * - If the user specified both width and height, we'll use those. - * - If the user specified only one of them, we'll use the original image's aspect ratio to calculate the other. - * - If the user didn't specify either, we'll use the original image's dimensions. - * - * For remote images: - * - Widths and heights are always required, so we'll use the user's specified width and height. - */ -function getTargetDimensions(options: ImageTransform) { - let targetWidth = options.width; - let targetHeight = options.height; - if (isESMImportedImage(options.src)) { - const aspectRatio = options.src.width / options.src.height; - if (targetHeight && !targetWidth) { - // If we have a height but no width, use height to calculate the width - targetWidth = Math.round(targetHeight * aspectRatio); - } else if (targetWidth && !targetHeight) { - // If we have a width but no height, use width to calculate the height - targetHeight = Math.round(targetWidth / aspectRatio); - } else if (!targetWidth && !targetHeight) { - // If we have neither width or height, use the original image's dimensions - targetWidth = options.src.width; - targetHeight = options.src.height; - } - } - - // TypeScript doesn't know this, but because of previous hooks we always know that targetWidth and targetHeight are defined - return { - targetWidth: targetWidth!, - targetHeight: targetHeight!, - }; -} +import { baseService } from 'astro/assets'; +import { isESMImportedImage, isRemoteAllowed, joinPaths } from '../utils/assets.js'; const service: ExternalImageService = { - validateOptions: (options /*, imageConfig: AstroConfig['image']*/) => { - // add custom global CF image service options - // const serviceConfig = imageConfig.service.config; - - // need to add checks for limits - // https://developers.cloudflare.com/images/image-resizing/format-limitations/#format-limitations - - // `src` is missing or is `undefined`. - if (!options.src || (typeof options.src !== 'string' && typeof options.src !== 'object')) { - throw new Error('ExpectedImage'); - // throw new AstroError({ - // ...AstroErrorData.ExpectedImage, - // message: AstroErrorData.ExpectedImage.message( - // JSON.stringify(options.src), - // typeof options.src, - // JSON.stringify(options, (_, v) => (v === undefined ? null : v)) - // ), - // }); - } - - if (!isESMImportedImage(options.src)) { - // User passed an `/@fs/` path or a filesystem path instead of the full image. - if ( - options.src.startsWith('/@fs/') || - (!isRemotePath(options.src) && !options.src.startsWith('/')) - ) { - throw new Error('LocalImageUsedWrongly'); - // throw new AstroError({ - // ...AstroErrorData.LocalImageUsedWrongly, - // message: AstroErrorData.LocalImageUsedWrongly.message(options.src), - // }); - } - - // For remote images, width and height are explicitly required as we can't infer them from the file - let missingDimension: 'width' | 'height' | 'both' | undefined; - if (!options.width && !options.height) { - missingDimension = 'both'; - } else if (!options.width && options.height) { - missingDimension = 'width'; - } else if (options.width && !options.height) { - missingDimension = 'height'; - } - - if (missingDimension) { - throw new Error('MissingImageDimension'); - // throw new AstroError({ - // ...AstroErrorData.MissingImageDimension, - // message: AstroErrorData.MissingImageDimension.message(missingDimension, options.src), - // }); - } - } else { - if (!VALID_SUPPORTED_FORMATS.includes(options.src.format)) { - throw new Error('UnsupportedImageFormat'); - // throw new AstroError({ - // ...AstroErrorData.UnsupportedImageFormat, - // message: AstroErrorData.UnsupportedImageFormat.message( - // options.src.format, - // options.src.src, - // VALID_SUPPORTED_FORMATS - // ), - // }); - } - - if (options.widths && options.densities) { - throw new Error('IncompatibleDescriptorOptions'); - // throw new AstroError(AstroErrorData.IncompatibleDescriptorOptions); - } - - // We currently do not support processing SVGs, so whenever the input format is a SVG, force the output to also be one - if (options.src.format === 'svg') { - options.format = 'svg'; - } - - if ( - (options.src.format === 'svg' && options.format !== 'svg') || - (options.src.format !== 'svg' && options.format === 'svg') - ) { - throw new Error('UnsupportedImageConversion'); - // throw new AstroError(AstroErrorData.UnsupportedImageConversion); - } - } - - // If the user didn't specify a format, we'll default to `webp`. It offers the best ratio of compatibility / quality - // In the future, hopefully we can replace this with `avif`, alas, Edge. See https://caniuse.com/avif - if (!options.format) { - options.format = DEFAULT_OUTPUT_FORMAT; - } - - // Sometimes users will pass number generated from division, which can result in floating point numbers - if (options.width) options.width = Math.round(options.width); - if (options.height) options.height = Math.round(options.height); - - return options; - }, - getHTMLAttributes: (options) => { - const { targetWidth, targetHeight } = getTargetDimensions(options); - const { src, width, height, format, quality, densities, widths, formats, ...attributes } = - options; - - return { - ...attributes, - width: targetWidth, - height: targetHeight, - loading: attributes.loading ?? 'lazy', - decoding: attributes.decoding ?? 'async', - }; - }, - getSrcSet(options) { - const srcSet: SrcSetValue[] = []; - const { targetWidth } = getTargetDimensions(options); - const { widths, densities } = options; - const targetFormat = options.format ?? DEFAULT_OUTPUT_FORMAT; - - // NOTE: Depending on the cloudflare fit value, the image might never be enlarged - // For remote images, we don't know the original image's dimensions, so we cannot know the maximum width - // It is ultimately the user's responsibility to make sure they don't request images larger than the original - let imageWidth = options.width; - let maxWidth = Infinity; - - // However, if it's an imported image, we can use the original image's width as a maximum width - if (isESMImportedImage(options.src)) { - imageWidth = options.src.width; - maxWidth = imageWidth; - } - - // Since `widths` and `densities` ultimately control the width and height of the image, - // we don't want the dimensions the user specified, we'll create those ourselves. - const { - width: transformWidth, - height: transformHeight, - ...transformWithoutDimensions - } = options; - - // Collect widths to generate from specified densities or widths - const allWidths: { maxTargetWidth: number; descriptor: `${number}x` | `${number}w` }[] = []; - if (densities) { - // Densities can either be specified as numbers, or descriptors (ex: '1x'), we'll convert them all to numbers - const densityValues = densities.map((density) => { - if (typeof density === 'number') { - return density; - } else { - return parseFloat(density); - } - }); - - // Calculate the widths for each density, rounding to avoid floats. - const densityWidths = densityValues - .sort() - .map((density) => Math.round(targetWidth * density)); - - allWidths.push( - ...densityWidths.map((width, index) => ({ - maxTargetWidth: Math.min(width, maxWidth), - descriptor: `${densityValues[index]}x` as const, - })) - ); - } else if (widths) { - allWidths.push( - ...widths.map((width) => ({ - maxTargetWidth: Math.min(width, maxWidth), - descriptor: `${width}w` as const, - })) - ); - } - - // Caution: The logic below is a bit tricky, as we need to make sure we don't generate the same image multiple times - // When making changes, make sure to test with different combinations of local/remote images widths, densities, and dimensions etc. - for (const { maxTargetWidth, descriptor } of allWidths) { - const srcSetTransform: ImageTransform = { ...transformWithoutDimensions }; - - // Only set the width if it's different from the original image's width, to avoid generating the same image multiple times - if (maxTargetWidth !== imageWidth) { - srcSetTransform.width = maxTargetWidth; - } else { - // If the width is the same as the original image's width, and we have both dimensions, it probably means - // it's a remote image, so we'll use the user's specified dimensions to avoid recreating the original image unnecessarily - if (options.width && options.height) { - srcSetTransform.width = options.width; - srcSetTransform.height = options.height; - } - } - - srcSet.push({ - transform: srcSetTransform, - descriptor, - attributes: { - type: `image/${targetFormat}`, - }, - }); - } - - return srcSet; - }, + validateOptions: baseService.validateOptions, + getHTMLAttributes: baseService.getHTMLAttributes, + getSrcSet: baseService.getSrcSet, getURL: (options, imageConfig) => { const resizingParams = []; if (options.width) resizingParams.push(`width=${options.width}`); @@ -385,13 +26,15 @@ const service: ExternalImageService = { } const imageEndpoint = joinPaths( - //@ts-ignore + // FIXME: I have no idea why we get: + // Property 'env' does not exist on type 'ImportMeta'.ts(2339) + + // @ts-ignore import.meta.env.BASE_URL, '/cdn-cgi/image', resizingParams.join(','), imageSource ); - console.log(imageEndpoint); return imageEndpoint; }, diff --git a/packages/cloudflare/src/getAdapter.ts b/packages/cloudflare/src/getAdapter.ts index e8acb283a..0a4879557 100644 --- a/packages/cloudflare/src/getAdapter.ts +++ b/packages/cloudflare/src/getAdapter.ts @@ -13,8 +13,7 @@ export function getAdapter({ serverOutput: 'stable', assets: { supportKind: 'stable', - // FIXME: UNDO THIS BEFORE RELEASE - isSharpCompatible: true, + isSharpCompatible: false, isSquooshCompatible: false, }, }; diff --git a/packages/cloudflare/src/index.ts b/packages/cloudflare/src/index.ts index 29d056f4e..228ba0bd0 100644 --- a/packages/cloudflare/src/index.ts +++ b/packages/cloudflare/src/index.ts @@ -1,7 +1,6 @@ import type { AstroConfig, AstroIntegration, RouteData } from 'astro'; import { createRedirectsFromAstroRoutes } from '@astrojs/underscore-redirects'; -import { passthroughImageService, sharpImageService } from 'astro/config'; import { AstroError } from 'astro/errors'; import esbuild from 'esbuild'; import { Miniflare } from 'miniflare'; @@ -13,6 +12,7 @@ import glob from 'tiny-glob'; import { getAdapter } from './getAdapter.js'; import { deduplicatePatterns } from './utils/deduplicatePatterns.js'; import { getCFObject } from './utils/getCFObject.js'; +import { prepareImageConfig } from './utils/image-config.js'; import { getD1Bindings, getDOBindings, @@ -31,6 +31,7 @@ type CF_RUNTIME = { mode: 'off' } | { mode: 'remote' } | { mode: 'local'; persis type Options = { mode?: 'directory' | 'advanced'; functionPerRoute?: boolean; + imageService?: 'passthrough' | 'external'; /** Configure automatic `routes.json` generation */ routes?: { /** Strategy for generating `include` and `exclude` patterns @@ -106,16 +107,6 @@ export default function createIntegration(args?: Options): AstroIntegration { name: '@astrojs/cloudflare', hooks: { 'astro:config:setup': ({ command, config, updateConfig, logger }) => { - let imageConfigOverwrite = false; - if ( - config.image.service.entrypoint === 'astro/assets/services/sharp' || - config.image.service.entrypoint === 'astro/assets/services/squoosh' - ) { - logger.warn( - `The current configuration does not support image optimization. To allow your project to build with the original, unoptimized images, the image service has been automatically switched to the 'noop' option. See https://docs.astro.build/en/reference/configuration-reference/#imageservice` - ); - imageConfigOverwrite = true; - } updateConfig({ build: { client: new URL(`.${config.base}`, config.outDir), @@ -132,16 +123,7 @@ export default function createIntegration(args?: Options): AstroIntegration { }), ], }, - image: imageConfigOverwrite - ? { ...config.image, service: passthroughImageService() } - : { - service: - command === 'dev' - ? sharpImageService() - : { - entrypoint: '@astrojs/cloudflare/image-service', - }, - }, + image: prepareImageConfig(args?.imageService ?? 'DEFAULT', config.image, command, logger), }); }, 'astro:config:done': ({ setAdapter, config, logger }) => { diff --git a/packages/cloudflare/src/utils/assets.ts b/packages/cloudflare/src/utils/assets.ts new file mode 100644 index 000000000..68cfe7189 --- /dev/null +++ b/packages/cloudflare/src/utils/assets.ts @@ -0,0 +1,101 @@ +import type { AstroConfig, ImageMetadata, RemotePattern } from 'astro'; + +export function isESMImportedImage(src: ImageMetadata | string): src is ImageMetadata { + return typeof src === 'object'; +} +export function isRemotePath(src: string) { + return /^(http|ftp|https|ws):?\/\//.test(src) || src.startsWith('data:'); +} +export function matchHostname(url: URL, hostname?: string, allowWildcard?: boolean) { + if (!hostname) { + return true; + } else if (!allowWildcard || !hostname.startsWith('*')) { + return hostname === url.hostname; + } else if (hostname.startsWith('**.')) { + const slicedHostname = hostname.slice(2); // ** length + return slicedHostname !== url.hostname && url.hostname.endsWith(slicedHostname); + } else if (hostname.startsWith('*.')) { + const slicedHostname = hostname.slice(1); // * length + const additionalSubdomains = url.hostname + .replace(slicedHostname, '') + .split('.') + .filter(Boolean); + return additionalSubdomains.length === 1; + } + + return false; +} +export function matchPort(url: URL, port?: string) { + return !port || port === url.port; +} +export function matchProtocol(url: URL, protocol?: string) { + return !protocol || protocol === url.protocol.slice(0, -1); +} +export function matchPathname(url: URL, pathname?: string, allowWildcard?: boolean) { + if (!pathname) { + return true; + } else if (!allowWildcard || !pathname.endsWith('*')) { + return pathname === url.pathname; + } else if (pathname.endsWith('/**')) { + const slicedPathname = pathname.slice(0, -2); // ** length + return slicedPathname !== url.pathname && url.pathname.startsWith(slicedPathname); + } else if (pathname.endsWith('/*')) { + const slicedPathname = pathname.slice(0, -1); // * length + const additionalPathChunks = url.pathname + .replace(slicedPathname, '') + .split('/') + .filter(Boolean); + return additionalPathChunks.length === 1; + } + + return false; +} +export function matchPattern(url: URL, remotePattern: RemotePattern) { + return ( + matchProtocol(url, remotePattern.protocol) && + matchHostname(url, remotePattern.hostname, true) && + matchPort(url, remotePattern.port) && + matchPathname(url, remotePattern.pathname, true) + ); +} +export function isRemoteAllowed( + src: string, + { + domains = [], + remotePatterns = [], + }: Partial> +): boolean { + if (!isRemotePath(src)) return false; + + const url = new URL(src); + return ( + domains.some((domain) => matchHostname(url, domain)) || + remotePatterns.some((remotePattern) => matchPattern(url, remotePattern)) + ); +} +export function isString(path: unknown): path is string { + return typeof path === 'string' || path instanceof String; +} +export function removeTrailingForwardSlash(path: string) { + return path.endsWith('/') ? path.slice(0, path.length - 1) : path; +} +export function removeLeadingForwardSlash(path: string) { + return path.startsWith('/') ? path.substring(1) : path; +} +export function trimSlashes(path: string) { + return path.replace(/^\/|\/$/g, ''); +} +export function joinPaths(...paths: (string | undefined)[]) { + return paths + .filter(isString) + .map((path, i) => { + if (i === 0) { + return removeTrailingForwardSlash(path); + } else if (i === paths.length - 1) { + return removeLeadingForwardSlash(path); + } else { + return trimSlashes(path); + } + }) + .join('/'); +} diff --git a/packages/cloudflare/src/utils/image-config.ts b/packages/cloudflare/src/utils/image-config.ts new file mode 100644 index 000000000..7a3c8fa58 --- /dev/null +++ b/packages/cloudflare/src/utils/image-config.ts @@ -0,0 +1,37 @@ +import type { AstroIntegrationLogger } from 'astro'; +import { passthroughImageService, sharpImageService } from 'astro/config'; + +export function prepareImageConfig( + service: string, + // FIXME: type + config: any, + // FIXME: type + command: any, + logger: AstroIntegrationLogger +) { + switch (service) { + case 'passthrough': + return { ...config.image, service: passthroughImageService() }; + + case 'external': + return { + ...config.image, + service: + command === 'dev' + ? sharpImageService() + : { entrypoint: '@astrojs/cloudflare/image-service' }, + }; + + default: + if ( + config.service.entrypoint === 'astro/assets/services/sharp' || + config.service.entrypoint === 'astro/assets/services/squoosh' + ) { + logger.warn( + `The current configuration does not support image optimization. To allow your project to build with the original, unoptimized images, the image service has been automatically switched to the 'noop' option. See https://docs.astro.build/en/reference/configuration-reference/#imageservice` + ); + return { ...config.image, service: passthroughImageService() }; + } + return { ...config.image }; + } +} diff --git a/packages/cloudflare/test/astro-assets.test.js b/packages/cloudflare/test/astro-assets.test.js new file mode 100644 index 000000000..02f86d5b8 --- /dev/null +++ b/packages/cloudflare/test/astro-assets.test.js @@ -0,0 +1,18 @@ +import { loadFixture } from '@astrojs/test-utils'; +import { expect } from 'chai'; + +// Asset bundling +describe('Assets', () => { + let fixture; + + before(async () => { + fixture = await loadFixture({ + root: new URL('./fixtures/assets/', import.meta.url).toString(), + }); + await fixture.build(); + }); + + it('adds the correct image service', async () => { + expect(await fixture.readFile('/_worker.js')).to.include('cdn-cgi/image'); + }); +}); diff --git a/packages/cloudflare/test/dev-runtime.test.js b/packages/cloudflare/test/dev-runtime.test.js index f8d2c2d6d..5bca05033 100644 --- a/packages/cloudflare/test/dev-runtime.test.js +++ b/packages/cloudflare/test/dev-runtime.test.js @@ -4,7 +4,7 @@ import { fileURLToPath } from 'node:url'; import { astroCli } from './_test-utils.js'; const root = new URL('./fixtures/dev-runtime/', import.meta.url); -describe('Runtime Astro Dev', () => { +describe('DevRuntime', () => { let cli; before(async () => { cli = astroCli(fileURLToPath(root), 'dev', '--host', '127.0.0.1'); diff --git a/packages/cloudflare/test/fixtures/assets/astro.config.mjs b/packages/cloudflare/test/fixtures/assets/astro.config.mjs new file mode 100644 index 000000000..52089ab81 --- /dev/null +++ b/packages/cloudflare/test/fixtures/assets/astro.config.mjs @@ -0,0 +1,18 @@ +//@ts-check +import { defineConfig } from 'astro/config'; +import cloudflare from "@astrojs/cloudflare"; + +// https://astro.build/config +export default defineConfig({ + output: 'server', + adapter: cloudflare({ + imageService: 'external', + }), + vite: { + build: { + minify: false, + assetsInlineLimit: 0, + }, + }, +}); + diff --git a/packages/cloudflare/test/fixtures/assets/package.json b/packages/cloudflare/test/fixtures/assets/package.json new file mode 100644 index 000000000..c0bafd249 --- /dev/null +++ b/packages/cloudflare/test/fixtures/assets/package.json @@ -0,0 +1,9 @@ +{ + "name": "@test/astro-cloudflare-assets", + "version": "0.0.0", + "private": true, + "dependencies": { + "@astrojs/cloudflare": "workspace:*", + "astro": "^3.4.3" + } +} diff --git a/packages/cloudflare/test/fixtures/assets/src/env.d.ts b/packages/cloudflare/test/fixtures/assets/src/env.d.ts new file mode 100644 index 000000000..8c34fb45e --- /dev/null +++ b/packages/cloudflare/test/fixtures/assets/src/env.d.ts @@ -0,0 +1 @@ +/// \ No newline at end of file diff --git a/packages/cloudflare/test/fixtures/assets/src/images/penguin1.jpg b/packages/cloudflare/test/fixtures/assets/src/images/penguin1.jpg new file mode 100644 index 000000000..1a8986ac5 Binary files /dev/null and b/packages/cloudflare/test/fixtures/assets/src/images/penguin1.jpg differ diff --git a/packages/cloudflare/test/fixtures/assets/src/images/penguin2.jpg b/packages/cloudflare/test/fixtures/assets/src/images/penguin2.jpg new file mode 100644 index 000000000..7cde45593 Binary files /dev/null and b/packages/cloudflare/test/fixtures/assets/src/images/penguin2.jpg differ diff --git a/packages/cloudflare/test/fixtures/assets/src/images/twitter.png b/packages/cloudflare/test/fixtures/assets/src/images/twitter.png new file mode 100644 index 000000000..8ffef69d6 Binary files /dev/null and b/packages/cloudflare/test/fixtures/assets/src/images/twitter.png differ diff --git a/packages/cloudflare/test/fixtures/assets/src/images/twitter@2x.png b/packages/cloudflare/test/fixtures/assets/src/images/twitter@2x.png new file mode 100644 index 000000000..d08fdc0a6 Binary files /dev/null and b/packages/cloudflare/test/fixtures/assets/src/images/twitter@2x.png differ diff --git a/packages/cloudflare/test/fixtures/assets/src/images/twitter@3x.png b/packages/cloudflare/test/fixtures/assets/src/images/twitter@3x.png new file mode 100644 index 000000000..739aaa762 Binary files /dev/null and b/packages/cloudflare/test/fixtures/assets/src/images/twitter@3x.png differ diff --git a/packages/cloudflare/test/fixtures/assets/src/pages/index.astro b/packages/cloudflare/test/fixtures/assets/src/pages/index.astro new file mode 100644 index 000000000..8da7feb0c --- /dev/null +++ b/packages/cloudflare/test/fixtures/assets/src/pages/index.astro @@ -0,0 +1,26 @@ +--- +import p1Url from '../images/penguin1.jpg'; +import p2Url from '../images/penguin2.jpg?url'; +--- + +This Site + + +

Icons

+ + + + + + + + + + + + diff --git a/packages/cloudflare/test/fixtures/dev-runtime/package.json b/packages/cloudflare/test/fixtures/dev-runtime/package.json index 9fbfe89df..2c60f29ce 100644 --- a/packages/cloudflare/test/fixtures/dev-runtime/package.json +++ b/packages/cloudflare/test/fixtures/dev-runtime/package.json @@ -4,9 +4,9 @@ "private": true, "dependencies": { "@astrojs/cloudflare": "workspace:*", - "astro": "^3.2.3" + "astro": "^3.4.3" }, "devDependencies": { - "wrangler": "^3.13.1" + "wrangler": "^3.15.0" } } diff --git a/packages/cloudflare/test/fixtures/directory-mode/package.json b/packages/cloudflare/test/fixtures/directory-mode/package.json index e3d826df7..0fe8850d0 100644 --- a/packages/cloudflare/test/fixtures/directory-mode/package.json +++ b/packages/cloudflare/test/fixtures/directory-mode/package.json @@ -4,6 +4,6 @@ "private": true, "dependencies": { "@astrojs/cloudflare": "workspace:*", - "astro": "^3.2.3" + "astro": "^3.4.3" } } diff --git a/packages/cloudflare/test/fixtures/function-per-route/package.json b/packages/cloudflare/test/fixtures/function-per-route/package.json index 2c358cbcb..f26b71802 100644 --- a/packages/cloudflare/test/fixtures/function-per-route/package.json +++ b/packages/cloudflare/test/fixtures/function-per-route/package.json @@ -4,6 +4,6 @@ "private": true, "dependencies": { "@astrojs/cloudflare": "workspace:*", - "astro": "^3.2.3" + "astro": "^3.4.3" } } diff --git a/packages/cloudflare/test/fixtures/hybrid/package.json b/packages/cloudflare/test/fixtures/hybrid/package.json index c3a430c9e..80847c91a 100644 --- a/packages/cloudflare/test/fixtures/hybrid/package.json +++ b/packages/cloudflare/test/fixtures/hybrid/package.json @@ -4,6 +4,6 @@ "private": true, "dependencies": { "@astrojs/cloudflare": "workspace:*", - "astro": "^3.2.3" + "astro": "^3.4.3" } } diff --git a/packages/cloudflare/test/fixtures/no-output/package.json b/packages/cloudflare/test/fixtures/no-output/package.json index 473ea0ce3..6a6df08a8 100644 --- a/packages/cloudflare/test/fixtures/no-output/package.json +++ b/packages/cloudflare/test/fixtures/no-output/package.json @@ -4,6 +4,6 @@ "private": true, "dependencies": { "@astrojs/cloudflare": "workspace:*", - "astro": "^3.2.3" + "astro": "^3.4.3" } } diff --git a/packages/cloudflare/test/fixtures/prerender/package.json b/packages/cloudflare/test/fixtures/prerender/package.json index 8cfbe8ae4..8f14b4a86 100644 --- a/packages/cloudflare/test/fixtures/prerender/package.json +++ b/packages/cloudflare/test/fixtures/prerender/package.json @@ -4,6 +4,6 @@ "private": true, "dependencies": { "@astrojs/cloudflare": "workspace:*", - "astro": "^3.2.3" + "astro": "^3.4.3" } } diff --git a/packages/cloudflare/test/fixtures/routes-json/package.json b/packages/cloudflare/test/fixtures/routes-json/package.json index 528c18a4d..ee65e2b01 100644 --- a/packages/cloudflare/test/fixtures/routes-json/package.json +++ b/packages/cloudflare/test/fixtures/routes-json/package.json @@ -4,6 +4,6 @@ "private": true, "dependencies": { "@astrojs/cloudflare": "workspace:*", - "astro": "^3.2.3" + "astro": "^3.4.3" } } diff --git a/packages/cloudflare/test/fixtures/routes-json/src/dynamicOnly/env.d.ts b/packages/cloudflare/test/fixtures/routes-json/src/dynamicOnly/env.d.ts new file mode 100644 index 000000000..8c34fb45e --- /dev/null +++ b/packages/cloudflare/test/fixtures/routes-json/src/dynamicOnly/env.d.ts @@ -0,0 +1 @@ +/// \ No newline at end of file diff --git a/packages/cloudflare/test/fixtures/routes-json/src/mixed/env.d.ts b/packages/cloudflare/test/fixtures/routes-json/src/mixed/env.d.ts new file mode 100644 index 000000000..8c34fb45e --- /dev/null +++ b/packages/cloudflare/test/fixtures/routes-json/src/mixed/env.d.ts @@ -0,0 +1 @@ +/// \ No newline at end of file diff --git a/packages/cloudflare/test/fixtures/routes-json/src/staticOnly/env.d.ts b/packages/cloudflare/test/fixtures/routes-json/src/staticOnly/env.d.ts new file mode 100644 index 000000000..8c34fb45e --- /dev/null +++ b/packages/cloudflare/test/fixtures/routes-json/src/staticOnly/env.d.ts @@ -0,0 +1 @@ +/// \ No newline at end of file diff --git a/packages/cloudflare/test/fixtures/wasm-directory/package.json b/packages/cloudflare/test/fixtures/wasm-directory/package.json index 8306750ee..e7b818489 100644 --- a/packages/cloudflare/test/fixtures/wasm-directory/package.json +++ b/packages/cloudflare/test/fixtures/wasm-directory/package.json @@ -4,6 +4,6 @@ "private": true, "dependencies": { "@astrojs/cloudflare": "workspace:*", - "astro": "^3.2.3" + "astro": "^3.4.3" } } diff --git a/packages/cloudflare/test/fixtures/wasm-directory/src/env.d.ts b/packages/cloudflare/test/fixtures/wasm-directory/src/env.d.ts new file mode 100644 index 000000000..8c34fb45e --- /dev/null +++ b/packages/cloudflare/test/fixtures/wasm-directory/src/env.d.ts @@ -0,0 +1 @@ +/// \ No newline at end of file diff --git a/packages/cloudflare/test/fixtures/wasm-function-per-route/package.json b/packages/cloudflare/test/fixtures/wasm-function-per-route/package.json index bafa40cc5..2b49cf18b 100644 --- a/packages/cloudflare/test/fixtures/wasm-function-per-route/package.json +++ b/packages/cloudflare/test/fixtures/wasm-function-per-route/package.json @@ -4,6 +4,6 @@ "private": true, "dependencies": { "@astrojs/cloudflare": "workspace:*", - "astro": "^3.2.3" + "astro": "^3.4.3" } } diff --git a/packages/cloudflare/test/fixtures/wasm-function-per-route/src/env.d.ts b/packages/cloudflare/test/fixtures/wasm-function-per-route/src/env.d.ts new file mode 100644 index 000000000..8c34fb45e --- /dev/null +++ b/packages/cloudflare/test/fixtures/wasm-function-per-route/src/env.d.ts @@ -0,0 +1 @@ +/// \ No newline at end of file diff --git a/packages/cloudflare/test/fixtures/wasm/package.json b/packages/cloudflare/test/fixtures/wasm/package.json index 03bcc6e75..2945b117c 100644 --- a/packages/cloudflare/test/fixtures/wasm/package.json +++ b/packages/cloudflare/test/fixtures/wasm/package.json @@ -4,6 +4,6 @@ "private": true, "dependencies": { "@astrojs/cloudflare": "workspace:*", - "astro": "^3.2.3" + "astro": "^3.4.3" } } diff --git a/packages/cloudflare/test/fixtures/wasm/src/env.d.ts b/packages/cloudflare/test/fixtures/wasm/src/env.d.ts new file mode 100644 index 000000000..8c34fb45e --- /dev/null +++ b/packages/cloudflare/test/fixtures/wasm/src/env.d.ts @@ -0,0 +1 @@ +/// \ No newline at end of file diff --git a/packages/cloudflare/test/fixtures/with-solid-js/package.json b/packages/cloudflare/test/fixtures/with-solid-js/package.json index 5f9f339c2..2a20880cc 100644 --- a/packages/cloudflare/test/fixtures/with-solid-js/package.json +++ b/packages/cloudflare/test/fixtures/with-solid-js/package.json @@ -5,7 +5,7 @@ "dependencies": { "@astrojs/cloudflare": "workspace:*", "@astrojs/solid-js": "^3.0.2", - "astro": "^3.2.3", + "astro": "^3.4.3", "solid-js": "^1.7.11" } } diff --git a/packages/cloudflare/test/fixtures/wrangler-runtime/package.json b/packages/cloudflare/test/fixtures/wrangler-runtime/package.json index 3fb206e61..6a4c64b29 100644 --- a/packages/cloudflare/test/fixtures/wrangler-runtime/package.json +++ b/packages/cloudflare/test/fixtures/wrangler-runtime/package.json @@ -4,6 +4,6 @@ "private": true, "dependencies": { "@astrojs/cloudflare": "workspace:*", - "astro": "^3.2.3" + "astro": "^3.4.3" } } diff --git a/packages/netlify/package.json b/packages/netlify/package.json index 58f7d556e..da658caa7 100644 --- a/packages/netlify/package.json +++ b/packages/netlify/package.json @@ -38,17 +38,17 @@ "dependencies": { "@astrojs/underscore-redirects": "^0.3.3", "@netlify/functions": "^2.0.1", - "esbuild": "^0.19.2" + "esbuild": "^0.19.5" }, "peerDependencies": { - "astro": "^3.3.0" + "astro": "^3.4.3" }, "devDependencies": { "@netlify/edge-functions": "^2.0.0", "@netlify/edge-handler-types": "^0.34.1", "@types/node": "^18.17.8", - "astro": "^3.3.0", - "chai": "^4.3.7", + "astro": "^3.4.3", + "chai": "^4.3.10", "chai-jest-snapshot": "^2.0.0", "cheerio": "1.0.0-rc.12", "execa": "^8.0.1", @@ -56,7 +56,7 @@ "mocha": "^10.2.0", "strip-ansi": "^7.1.0", "typescript": "^5.2.2", - "vite": "^4.4.9", + "vite": "^4.5.0", "@astrojs/test-utils": "workspace:*" }, "astro": { diff --git a/packages/netlify/test/hosted/hosted-astro-project/package.json b/packages/netlify/test/hosted/hosted-astro-project/package.json index d298d1a1c..cbde82c2a 100644 --- a/packages/netlify/test/hosted/hosted-astro-project/package.json +++ b/packages/netlify/test/hosted/hosted-astro-project/package.json @@ -7,6 +7,6 @@ }, "dependencies": { "@astrojs/netlify": "workspace:*", - "astro": "^3.3.0" + "astro": "^3.4.3" } } diff --git a/packages/test-utils/package.json b/packages/test-utils/package.json index 6f5fb1245..d11785722 100644 --- a/packages/test-utils/package.json +++ b/packages/test-utils/package.json @@ -8,7 +8,7 @@ }, "keywords": [], "dependencies": { - "astro": "^3", + "astro": "^3.4.3", "execa": "^8", "fast-glob": "^3", "strip-ansi": "^7" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fe4ecf6b5..ebbb1de03 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,8 +9,8 @@ importers: .: devDependencies: '@astrojs/check': - specifier: ^0.1.0 - version: 0.1.0(prettier-plugin-astro@0.12.0)(prettier@3.0.3)(typescript@5.1.6) + specifier: ^0.3.1 + version: 0.3.1(prettier-plugin-astro@0.12.1)(prettier@3.0.3)(typescript@5.2.2) '@changesets/changelog-github': specifier: ^0.4.8 version: 0.4.8 @@ -22,13 +22,13 @@ importers: version: 18.17.8 '@typescript-eslint/eslint-plugin': specifier: ^6.4.1 - version: 6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@5.1.6) + version: 6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@5.2.2) '@typescript-eslint/parser': specifier: ^6.4.1 - version: 6.4.1(eslint@8.47.0)(typescript@5.1.6) + version: 6.4.1(eslint@8.47.0)(typescript@5.2.2) esbuild: - specifier: ^0.19.2 - version: 0.19.2 + specifier: ^0.19.5 + version: 0.19.5 eslint: specifier: ^8.47.0 version: 8.47.0 @@ -51,8 +51,8 @@ importers: specifier: ^3.0.3 version: 3.0.3 prettier-plugin-astro: - specifier: ^0.12.0 - version: 0.12.0 + specifier: ^0.12.1 + version: 0.12.1 tiny-glob: specifier: ^0.2.9 version: 0.2.9 @@ -60,8 +60,8 @@ importers: specifier: ^1.10.12 version: 1.10.12 typescript: - specifier: ~5.1.6 - version: 5.1.6 + specifier: ^5.2.2 + version: 5.2.2 packages/cloudflare: dependencies: @@ -69,8 +69,8 @@ importers: specifier: ^0.3.3 version: 0.3.3 '@cloudflare/workers-types': - specifier: ^4.20230821.0 - version: 4.20230821.0 + specifier: ^4.20231025.0 + version: 4.20231025.0 '@iarna/toml': specifier: ^2.2.5 version: 2.2.5 @@ -78,20 +78,20 @@ importers: specifier: ^16.3.1 version: 16.3.1 esbuild: - specifier: ^0.19.2 - version: 0.19.2 + specifier: ^0.19.5 + version: 0.19.5 find-up: specifier: ^6.3.0 version: 6.3.0 miniflare: - specifier: 3.20231010.0 - version: 3.20231010.0 + specifier: 3.20231025.1 + version: 3.20231025.1 tiny-glob: specifier: ^0.2.9 version: 0.2.9 vite: - specifier: ^4.4.9 - version: 4.4.9(@types/node@18.17.8) + specifier: ^4.5.0 + version: 4.5.0(@types/node@18.17.8) devDependencies: '@astrojs/test-utils': specifier: workspace:* @@ -100,11 +100,11 @@ importers: specifier: ^2.0.2 version: 2.0.2 astro: - specifier: ^3.2.3 - version: 3.3.0(@types/node@18.17.8)(typescript@5.1.6) + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) chai: - specifier: ^4.3.7 - version: 4.3.7 + specifier: ^4.3.10 + version: 4.3.10 cheerio: specifier: 1.0.0-rc.12 version: 1.0.0-rc.12 @@ -121,8 +121,17 @@ importers: specifier: ^7.1.0 version: 7.1.0 wrangler: - specifier: ^3.11.0 - version: 3.11.0 + specifier: ^3.15.0 + version: 3.15.0 + + packages/cloudflare/test/fixtures/assets: + dependencies: + '@astrojs/cloudflare': + specifier: workspace:* + version: link:../../.. + astro: + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) packages/cloudflare/test/fixtures/dev-runtime: dependencies: @@ -130,12 +139,12 @@ importers: specifier: workspace:* version: link:../../.. astro: - specifier: ^3.2.3 - version: 3.3.0(@types/node@18.17.8)(typescript@5.1.6) + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) devDependencies: wrangler: - specifier: ^3.13.1 - version: 3.13.1 + specifier: ^3.15.0 + version: 3.15.0 packages/cloudflare/test/fixtures/directory-mode: dependencies: @@ -143,8 +152,8 @@ importers: specifier: workspace:* version: link:../../.. astro: - specifier: ^3.2.3 - version: 3.3.0(@types/node@18.17.8)(typescript@5.1.6) + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) packages/cloudflare/test/fixtures/function-per-route: dependencies: @@ -152,8 +161,8 @@ importers: specifier: workspace:* version: link:../../.. astro: - specifier: ^3.2.3 - version: 3.3.0(@types/node@18.17.8)(typescript@5.1.6) + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) packages/cloudflare/test/fixtures/hybrid: dependencies: @@ -161,8 +170,8 @@ importers: specifier: workspace:* version: link:../../.. astro: - specifier: ^3.2.3 - version: 3.3.0(@types/node@18.17.8)(typescript@5.1.6) + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) packages/cloudflare/test/fixtures/no-output: dependencies: @@ -170,8 +179,8 @@ importers: specifier: workspace:* version: link:../../.. astro: - specifier: ^3.2.3 - version: 3.3.0(@types/node@18.17.8)(typescript@5.1.6) + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) packages/cloudflare/test/fixtures/prerender: dependencies: @@ -179,8 +188,8 @@ importers: specifier: workspace:* version: link:../../.. astro: - specifier: ^3.2.3 - version: 3.3.0(@types/node@18.17.8)(typescript@5.1.6) + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) packages/cloudflare/test/fixtures/routes-json: dependencies: @@ -188,8 +197,8 @@ importers: specifier: workspace:* version: link:../../.. astro: - specifier: ^3.2.3 - version: 3.3.0(@types/node@18.17.8)(typescript@5.1.6) + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) packages/cloudflare/test/fixtures/wasm: dependencies: @@ -197,8 +206,8 @@ importers: specifier: workspace:* version: link:../../.. astro: - specifier: ^3.2.3 - version: 3.3.0(@types/node@18.17.8)(typescript@5.1.6) + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) packages/cloudflare/test/fixtures/wasm-directory: dependencies: @@ -206,8 +215,8 @@ importers: specifier: workspace:* version: link:../../.. astro: - specifier: ^3.2.3 - version: 3.3.0(@types/node@18.17.8)(typescript@5.1.6) + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) packages/cloudflare/test/fixtures/wasm-function-per-route: dependencies: @@ -215,8 +224,8 @@ importers: specifier: workspace:* version: link:../../.. astro: - specifier: ^3.2.3 - version: 3.3.0(@types/node@18.17.8)(typescript@5.1.6) + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) packages/cloudflare/test/fixtures/with-solid-js: dependencies: @@ -227,8 +236,8 @@ importers: specifier: ^3.0.2 version: 3.0.2(solid-js@1.7.11) astro: - specifier: ^3.2.3 - version: 3.3.0(@types/node@18.17.8)(typescript@5.1.6) + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) solid-js: specifier: ^1.7.11 version: 1.7.11 @@ -239,8 +248,8 @@ importers: specifier: workspace:* version: link:../../.. astro: - specifier: ^3.2.3 - version: 3.3.0(@types/node@18.17.8)(typescript@5.1.6) + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) packages/netlify: dependencies: @@ -251,8 +260,8 @@ importers: specifier: ^2.0.1 version: 2.0.1 esbuild: - specifier: ^0.19.2 - version: 0.19.2 + specifier: ^0.19.5 + version: 0.19.5 devDependencies: '@astrojs/test-utils': specifier: workspace:* @@ -267,14 +276,14 @@ importers: specifier: ^18.17.8 version: 18.17.8 astro: - specifier: ^3.3.0 - version: 3.3.0(@types/node@18.17.8)(typescript@5.2.2) + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) chai: - specifier: ^4.3.7 - version: 4.3.7 + specifier: ^4.3.10 + version: 4.3.10 chai-jest-snapshot: specifier: ^2.0.0 - version: 2.0.0(chai@4.3.7) + version: 2.0.0(chai@4.3.10) cheerio: specifier: 1.0.0-rc.12 version: 1.0.0-rc.12 @@ -294,8 +303,8 @@ importers: specifier: ^5.2.2 version: 5.2.2 vite: - specifier: ^4.4.9 - version: 4.4.9(@types/node@18.17.8) + specifier: ^4.5.0 + version: 4.5.0(@types/node@18.17.8) packages/netlify/test/functions/fixtures/404: dependencies: @@ -369,14 +378,14 @@ importers: specifier: workspace:* version: link:../../.. astro: - specifier: ^3.3.0 - version: 3.3.0(@types/node@18.17.8)(typescript@5.1.6) + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) packages/test-utils: dependencies: astro: - specifier: ^3 - version: 3.3.0(@types/node@18.17.8)(typescript@5.1.6) + specifier: ^3.4.3 + version: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) execa: specifier: ^8 version: 8.0.1 @@ -393,8 +402,8 @@ importers: specifier: ^5.0.2 version: 5.0.2 esbuild: - specifier: ^0.19.2 - version: 0.19.2 + specifier: ^0.19.5 + version: 0.19.5 globby: specifier: ^13.2.2 version: 13.2.2 @@ -419,7 +428,7 @@ importers: version: 7.0.0 esbuild-plugin-copy: specifier: ^2.1.1 - version: 2.1.1(esbuild@0.19.2) + version: 2.1.1(esbuild@0.19.5) execa: specifier: ^8.0.1 version: 8.0.1 @@ -441,39 +450,35 @@ packages: '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.19 - /@astrojs/check@0.1.0(prettier-plugin-astro@0.12.0)(prettier@3.0.3)(typescript@5.1.6): - resolution: {integrity: sha512-tgjq+Vehgv0dwdsRlT4ai3QgT3etn8W5C4E4dvQ0Xe9ccwjKdMTWmpty5exfBtHLLAAOvwe5/OkYQsQ9OyKoVw==} + /@astrojs/check@0.3.1(prettier-plugin-astro@0.12.1)(prettier@3.0.3)(typescript@5.2.2): + resolution: {integrity: sha512-3LjEUvh7Z4v9NPokaqKMXQ0DwnSXfmtcyAuWVTjNt9yzjv54SxykobV5CTOB3TIko+Rqg59ejamJBxaJN6fvkw==} hasBin: true peerDependencies: typescript: ^5.0.0 dependencies: - '@astrojs/language-server': 2.3.3(prettier-plugin-astro@0.12.0)(prettier@3.0.3)(typescript@5.1.6) + '@astrojs/language-server': 2.5.2(prettier-plugin-astro@0.12.1)(prettier@3.0.3)(typescript@5.2.2) chokidar: 3.5.3 fast-glob: 3.3.1 kleur: 4.1.5 - typescript: 5.1.6 + typescript: 5.2.2 yargs: 17.7.2 transitivePeerDependencies: - prettier - prettier-plugin-astro dev: true - /@astrojs/compiler@1.5.7: - resolution: {integrity: sha512-dFU7GAMbpTUGPkRoCoMQrGFlTe3qIiQMSOxIXp/nB1Do4My9uogjEmBHdR5Cwr4i6rc5/1R3Od9v8kU/pkHXGQ==} - dev: true - /@astrojs/compiler@1.8.2: resolution: {integrity: sha512-o/ObKgtMzl8SlpIdzaxFnt7SATKPxu4oIP/1NL+HDJRzxfJcAkOTAb/ZKMRyULbz4q+1t2/DAebs2Z1QairkZw==} dev: true - /@astrojs/compiler@2.1.0: - resolution: {integrity: sha512-Mp+qrNhly+27bL/Zq8lGeUY+YrdoU0eDfIlAeGIPrzt0PnI/jGpvPUdCaugv4zbCrDkOUScFfcbeEiYumrdJnw==} + /@astrojs/compiler@2.2.2: + resolution: {integrity: sha512-nJaEgq0EP1mybaW1PvNnnp4RxVQnaLajUYnqrqxFbIdu1ELbH6OxNuAJWI+/q9TbMP6NG/eK6WRMhQsxX6qkUQ==} /@astrojs/internal-helpers@0.2.1: resolution: {integrity: sha512-06DD2ZnItMwUnH81LBLco3tWjcZ1lGU9rLCCBaeUCGYe9cI0wKyY2W3kDyoW1I6GmcWgt1fu+D1CTvz+FIKf8A==} - /@astrojs/language-server@2.3.3(prettier-plugin-astro@0.12.0)(prettier@3.0.3)(typescript@5.1.6): - resolution: {integrity: sha512-ObIjAdjKJFHsKCmaFHc6tbpomMkX1580UbxbgnCr6zEpIZuQobH/zlKwIaSDcmQOQtt8ICs921AYTM+kOg8p6w==} + /@astrojs/language-server@2.5.2(prettier-plugin-astro@0.12.1)(prettier@3.0.3)(typescript@5.2.2): + resolution: {integrity: sha512-O5SMzoQ65wSxA1KygreI9UJYmHpgt15bSYBxceHwqX7OCDM4Ek8mr6mZn45LGDtwM3dp1uup7kp8exfRPwIFbA==} hasBin: true peerDependencies: prettier: ^3.0.0 @@ -484,37 +489,37 @@ packages: prettier-plugin-astro: optional: true dependencies: - '@astrojs/compiler': 1.5.7 + '@astrojs/compiler': 2.2.2 '@jridgewell/sourcemap-codec': 1.4.15 - '@volar/kit': 1.10.1(typescript@5.1.6) - '@volar/language-core': 1.10.1 - '@volar/language-server': 1.10.1 - '@volar/language-service': 1.10.1 - '@volar/source-map': 1.10.1 - '@volar/typescript': 1.10.1 + '@volar/kit': 1.10.10(typescript@5.2.2) + '@volar/language-core': 1.10.10 + '@volar/language-server': 1.10.10 + '@volar/language-service': 1.10.10 + '@volar/source-map': 1.10.10 + '@volar/typescript': 1.10.10 fast-glob: 3.3.1 muggle-string: 0.3.1 prettier: 3.0.3 - prettier-plugin-astro: 0.12.0 - volar-service-css: 0.0.13(@volar/language-service@1.10.1) - volar-service-emmet: 0.0.13(@volar/language-service@1.10.1) - volar-service-html: 0.0.13(@volar/language-service@1.10.1) - volar-service-prettier: 0.0.13(@volar/language-service@1.10.1)(prettier@3.0.3) - volar-service-typescript: 0.0.13(@volar/language-service@1.10.1)(@volar/typescript@1.10.1) - volar-service-typescript-twoslash-queries: 0.0.13(@volar/language-service@1.10.1) + prettier-plugin-astro: 0.12.1 + volar-service-css: 0.0.16(@volar/language-service@1.10.10) + volar-service-emmet: 0.0.16(@volar/language-service@1.10.10) + volar-service-html: 0.0.16(@volar/language-service@1.10.10) + volar-service-prettier: 0.0.16(@volar/language-service@1.10.10)(prettier@3.0.3) + volar-service-typescript: 0.0.16(@volar/language-service@1.10.10)(@volar/typescript@1.10.10) + volar-service-typescript-twoslash-queries: 0.0.16(@volar/language-service@1.10.10) vscode-html-languageservice: 5.1.0 - vscode-uri: 3.0.7 + vscode-uri: 3.0.8 transitivePeerDependencies: - typescript dev: true - /@astrojs/markdown-remark@3.3.0(astro@3.3.0): + /@astrojs/markdown-remark@3.3.0(astro@3.4.3): resolution: {integrity: sha512-ezFzEiZygc/ASe2Eul9v1yrTbNGqSbR348UGNXQ4Dtkx8MYRwfiBfmPm6VnEdfIGkW+bi5qIUReKfc7mPVUkIg==} peerDependencies: astro: '*' dependencies: '@astrojs/prism': 3.0.0 - astro: 3.3.0(@types/node@18.17.8)(typescript@5.1.6) + astro: 3.4.3(@types/node@18.17.8)(typescript@5.2.2) github-slugger: 2.0.0 import-meta-resolve: 3.0.0 mdast-util-definitions: 6.0.0 @@ -550,8 +555,8 @@ packages: - vite dev: false - /@astrojs/telemetry@3.0.3: - resolution: {integrity: sha512-j19Cf5mfyLt9hxgJ9W/FMdAA5Lovfp7/CINNB/7V71GqvygnL7KXhRC3TzfB+PsVQcBtgWZzCXhUWRbmJ64Raw==} + /@astrojs/telemetry@3.0.4: + resolution: {integrity: sha512-A+0c7k/Xy293xx6odsYZuXiaHO0PL+bnDoXOc47sGDF5ffIKdKQGRPFl2NMlCF4L0NqN4Ynbgnaip+pPF0s7pQ==} engines: {node: '>=18.14.1'} dependencies: ci-info: 3.8.0 @@ -1120,93 +1125,48 @@ packages: mime: 3.0.0 dev: true - /@cloudflare/workerd-darwin-64@1.20231002.0: - resolution: {integrity: sha512-sgtjzVO/wtI/6S7O0bk4zQAv2xlvqOxB18AXzlit6uXgbYFGeQedRHjhKVMOacGmWEnM4C3ir/fxJGsc3Pyxng==} - engines: {node: '>=16'} - cpu: [x64] - os: [darwin] - requiresBuild: true - dev: true - optional: true - - /@cloudflare/workerd-darwin-64@1.20231010.0: - resolution: {integrity: sha512-LM9ePAh88EGoQkYisAfdLMEDzcaMinRer0mY11GOiN4A9ZU+6APRVvhh5JBRzI0F6Dkb8nHtrzhisioWCRaY1w==} + /@cloudflare/workerd-darwin-64@1.20231025.0: + resolution: {integrity: sha512-MYRYTbSl+tjGg6su7savlLIb8cOcKJfdGpA+WdtgqT2OF7O+89Lag0l1SA/iyVlUkT31Jc6OLHqvzsXgmg+niQ==} engines: {node: '>=16'} cpu: [x64] os: [darwin] requiresBuild: true optional: true - /@cloudflare/workerd-darwin-arm64@1.20231002.0: - resolution: {integrity: sha512-dv8nztYFaTYYgBpyy80vc4hdMYv9mhyNbvBsZywm8S7ivcIpzogi0UKkGU4E/G0lYK6W3WtwTBqwRe+pXJ1+Ww==} - engines: {node: '>=16'} - cpu: [arm64] - os: [darwin] - requiresBuild: true - dev: true - optional: true - - /@cloudflare/workerd-darwin-arm64@1.20231010.0: - resolution: {integrity: sha512-Vr7Z1O+vJRCnVeWaF0YSv0EMHiMRY7yYCxr7O509FzvJAXsZuXZ7DYC5TAD7a8HSeeqsxFTAbF9jg0y9A2wKVw==} + /@cloudflare/workerd-darwin-arm64@1.20231025.0: + resolution: {integrity: sha512-BszjtBDR84TVa6oWe74dePJSAukWlTmLw9zR4KeWuwZLJGV7RMm6AmwGStetjnwZrecZaaOFELfBCAHtsebV0Q==} engines: {node: '>=16'} cpu: [arm64] os: [darwin] requiresBuild: true optional: true - /@cloudflare/workerd-linux-64@1.20231002.0: - resolution: {integrity: sha512-UG8SlLcGzaQDSSw6FR4+Zf408925wkLOCAi8w5qEoFYu3g4Ef7ZenstesCOsyWL7qBDKx0/iwk6+a76W5IHI0Q==} - engines: {node: '>=16'} - cpu: [x64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@cloudflare/workerd-linux-64@1.20231010.0: - resolution: {integrity: sha512-l9oDVPVhPEOHr1JpcGnLSsIf1h8sZnvcIC2Tl1zt+3p/KGFyGqGyAZJMLUoMJ54Q07oRE1x3KAu+JcWWEvdxpg==} + /@cloudflare/workerd-linux-64@1.20231025.0: + resolution: {integrity: sha512-AT9dxgKXOa9xZxZ3k2a432axPJJ58KpoNWnPiPYGpuAuLoWnfcYwwh6mr9sZVcTdAdTAK9Xu9c81tp0YABanUw==} engines: {node: '>=16'} cpu: [x64] os: [linux] requiresBuild: true optional: true - /@cloudflare/workerd-linux-arm64@1.20231002.0: - resolution: {integrity: sha512-GPaa66ZSq1gK09r87c5CJbHIApcIU//LVHz3rnUxK0//00YCwUuGUUK1dn/ylg+fVqDQxIDmH+ABnobBanvcDA==} + /@cloudflare/workerd-linux-arm64@1.20231025.0: + resolution: {integrity: sha512-EIjex5o2k80YZWPix1btGybL/vNZ3o6vqKX9ptS0JcFkHV5aFX5/kcMwSBRjiIC+w04zVjmGQx3N1Vh3njuncg==} engines: {node: '>=16'} cpu: [arm64] os: [linux] requiresBuild: true - dev: true optional: true - /@cloudflare/workerd-linux-arm64@1.20231010.0: - resolution: {integrity: sha512-NBmYsJu+ns2W8WHcDnglfqLV5O3FP7lXpoTSTvpM64mhexmemdMlOJX5gpRuarTula3fA+GzEehinUojwM9/1g==} - engines: {node: '>=16'} - cpu: [arm64] - os: [linux] - requiresBuild: true - optional: true - - /@cloudflare/workerd-windows-64@1.20231002.0: - resolution: {integrity: sha512-ybIy+sCme0VO0RscndXvqWNBaRMUOc8vhi+1N2h/KDsKfNLsfEQph+XWecfKzJseUy1yE2rV1xei3BaNmaa6vg==} - engines: {node: '>=16'} - cpu: [x64] - os: [win32] - requiresBuild: true - dev: true - optional: true - - /@cloudflare/workerd-windows-64@1.20231010.0: - resolution: {integrity: sha512-jWiG71Rvuh4FYdEpOP1+BAygdguTlMYYy+v5d4ZOjxDkl+V8aR86EEtDQrv/QLUJFbpcoEX25SxXnN5UMKtjhQ==} + /@cloudflare/workerd-windows-64@1.20231025.0: + resolution: {integrity: sha512-7vtq0mO22A2v0OOsKXa760r9a84Gg8CK0gDu5uNWlj6hojmt011iz7jJt76I7oo/XrVwVlVfu69GnA3ljx6U8w==} engines: {node: '>=16'} cpu: [x64] os: [win32] requiresBuild: true optional: true - /@cloudflare/workers-types@4.20230821.0: - resolution: {integrity: sha512-lVQSyr5E4CEkQw7WIdsrMTj+kHjsm28mJ0B5AhNFByKR+16KTFsU/RW/nGLKHHW2jxT5lvYI+HjNQMzC9QR8Ng==} + /@cloudflare/workers-types@4.20231025.0: + resolution: {integrity: sha512-TkcZkntUTOcvJ4vgmwpNfLTclpMbmbClZCe62B25/VTukmyv91joRa4eKzSjzCZUXTbFHNmVdOpmGaaJU2U3+A==} dev: false /@deno/shim-deno-test@0.3.3: @@ -1271,8 +1231,8 @@ packages: requiresBuild: true optional: true - /@esbuild/android-arm64@0.19.2: - resolution: {integrity: sha512-lsB65vAbe90I/Qe10OjkmrdxSX4UJDjosDgb8sZUKcg3oefEuW2OT2Vozz8ef7wrJbMcmhvCC+hciF8jY/uAkw==} + /@esbuild/android-arm64@0.19.5: + resolution: {integrity: sha512-5d1OkoJxnYQfmC+Zd8NBFjkhyCNYwM4n9ODrycTFY6Jk1IGiZ+tjVJDDSwDt77nK+tfpGP4T50iMtVi4dEGzhQ==} engines: {node: '>=12'} cpu: [arm64] os: [android] @@ -1296,8 +1256,8 @@ packages: requiresBuild: true optional: true - /@esbuild/android-arm@0.19.2: - resolution: {integrity: sha512-tM8yLeYVe7pRyAu9VMi/Q7aunpLwD139EY1S99xbQkT4/q2qa6eA4ige/WJQYdJ8GBL1K33pPFhPfPdJ/WzT8Q==} + /@esbuild/android-arm@0.19.5: + resolution: {integrity: sha512-bhvbzWFF3CwMs5tbjf3ObfGqbl/17ict2/uwOSfr3wmxDE6VdS2GqY/FuzIPe0q0bdhj65zQsvqfArI9MY6+AA==} engines: {node: '>=12'} cpu: [arm] os: [android] @@ -1321,8 +1281,8 @@ packages: requiresBuild: true optional: true - /@esbuild/android-x64@0.19.2: - resolution: {integrity: sha512-qK/TpmHt2M/Hg82WXHRc/W/2SGo/l1thtDHZWqFq7oi24AjZ4O/CpPSu6ZuYKFkEgmZlFoa7CooAyYmuvnaG8w==} + /@esbuild/android-x64@0.19.5: + resolution: {integrity: sha512-9t+28jHGL7uBdkBjL90QFxe7DVA+KGqWlHCF8ChTKyaKO//VLuoBricQCgwhOjA1/qOczsw843Fy4cbs4H3DVA==} engines: {node: '>=12'} cpu: [x64] os: [android] @@ -1346,8 +1306,8 @@ packages: requiresBuild: true optional: true - /@esbuild/darwin-arm64@0.19.2: - resolution: {integrity: sha512-Ora8JokrvrzEPEpZO18ZYXkH4asCdc1DLdcVy8TGf5eWtPO1Ie4WroEJzwI52ZGtpODy3+m0a2yEX9l+KUn0tA==} + /@esbuild/darwin-arm64@0.19.5: + resolution: {integrity: sha512-mvXGcKqqIqyKoxq26qEDPHJuBYUA5KizJncKOAf9eJQez+L9O+KfvNFu6nl7SCZ/gFb2QPaRqqmG0doSWlgkqw==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] @@ -1371,8 +1331,8 @@ packages: requiresBuild: true optional: true - /@esbuild/darwin-x64@0.19.2: - resolution: {integrity: sha512-tP+B5UuIbbFMj2hQaUr6EALlHOIOmlLM2FK7jeFBobPy2ERdohI4Ka6ZFjZ1ZYsrHE/hZimGuU90jusRE0pwDw==} + /@esbuild/darwin-x64@0.19.5: + resolution: {integrity: sha512-Ly8cn6fGLNet19s0X4unjcniX24I0RqjPv+kurpXabZYSXGM4Pwpmf85WHJN3lAgB8GSth7s5A0r856S+4DyiA==} engines: {node: '>=12'} cpu: [x64] os: [darwin] @@ -1396,8 +1356,8 @@ packages: requiresBuild: true optional: true - /@esbuild/freebsd-arm64@0.19.2: - resolution: {integrity: sha512-YbPY2kc0acfzL1VPVK6EnAlig4f+l8xmq36OZkU0jzBVHcOTyQDhnKQaLzZudNJQyymd9OqQezeaBgkTGdTGeQ==} + /@esbuild/freebsd-arm64@0.19.5: + resolution: {integrity: sha512-GGDNnPWTmWE+DMchq1W8Sd0mUkL+APvJg3b11klSGUDvRXh70JqLAO56tubmq1s2cgpVCSKYywEiKBfju8JztQ==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] @@ -1421,8 +1381,8 @@ packages: requiresBuild: true optional: true - /@esbuild/freebsd-x64@0.19.2: - resolution: {integrity: sha512-nSO5uZT2clM6hosjWHAsS15hLrwCvIWx+b2e3lZ3MwbYSaXwvfO528OF+dLjas1g3bZonciivI8qKR/Hm7IWGw==} + /@esbuild/freebsd-x64@0.19.5: + resolution: {integrity: sha512-1CCwDHnSSoA0HNwdfoNY0jLfJpd7ygaLAp5EHFos3VWJCRX9DMwWODf96s9TSse39Br7oOTLryRVmBoFwXbuuQ==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] @@ -1446,8 +1406,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-arm64@0.19.2: - resolution: {integrity: sha512-ig2P7GeG//zWlU0AggA3pV1h5gdix0MA3wgB+NsnBXViwiGgY77fuN9Wr5uoCrs2YzaYfogXgsWZbm+HGr09xg==} + /@esbuild/linux-arm64@0.19.5: + resolution: {integrity: sha512-o3vYippBmSrjjQUCEEiTZ2l+4yC0pVJD/Dl57WfPwwlvFkrxoSO7rmBZFii6kQB3Wrn/6GwJUPLU5t52eq2meA==} engines: {node: '>=12'} cpu: [arm64] os: [linux] @@ -1471,8 +1431,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-arm@0.19.2: - resolution: {integrity: sha512-Odalh8hICg7SOD7XCj0YLpYCEc+6mkoq63UnExDCiRA2wXEmGlK5JVrW50vZR9Qz4qkvqnHcpH+OFEggO3PgTg==} + /@esbuild/linux-arm@0.19.5: + resolution: {integrity: sha512-lrWXLY/vJBzCPC51QN0HM71uWgIEpGSjSZZADQhq7DKhPcI6NH1IdzjfHkDQws2oNpJKpR13kv7/pFHBbDQDwQ==} engines: {node: '>=12'} cpu: [arm] os: [linux] @@ -1496,8 +1456,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-ia32@0.19.2: - resolution: {integrity: sha512-mLfp0ziRPOLSTek0Gd9T5B8AtzKAkoZE70fneiiyPlSnUKKI4lp+mGEnQXcQEHLJAcIYDPSyBvsUbKUG2ri/XQ==} + /@esbuild/linux-ia32@0.19.5: + resolution: {integrity: sha512-MkjHXS03AXAkNp1KKkhSKPOCYztRtK+KXDNkBa6P78F8Bw0ynknCSClO/ztGszILZtyO/lVKpa7MolbBZ6oJtQ==} engines: {node: '>=12'} cpu: [ia32] os: [linux] @@ -1521,8 +1481,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-loong64@0.19.2: - resolution: {integrity: sha512-hn28+JNDTxxCpnYjdDYVMNTR3SKavyLlCHHkufHV91fkewpIyQchS1d8wSbmXhs1fiYDpNww8KTFlJ1dHsxeSw==} + /@esbuild/linux-loong64@0.19.5: + resolution: {integrity: sha512-42GwZMm5oYOD/JHqHska3Jg0r+XFb/fdZRX+WjADm3nLWLcIsN27YKtqxzQmGNJgu0AyXg4HtcSK9HuOk3v1Dw==} engines: {node: '>=12'} cpu: [loong64] os: [linux] @@ -1546,8 +1506,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-mips64el@0.19.2: - resolution: {integrity: sha512-KbXaC0Sejt7vD2fEgPoIKb6nxkfYW9OmFUK9XQE4//PvGIxNIfPk1NmlHmMg6f25x57rpmEFrn1OotASYIAaTg==} + /@esbuild/linux-mips64el@0.19.5: + resolution: {integrity: sha512-kcjndCSMitUuPJobWCnwQ9lLjiLZUR3QLQmlgaBfMX23UEa7ZOrtufnRds+6WZtIS9HdTXqND4yH8NLoVVIkcg==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] @@ -1571,8 +1531,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-ppc64@0.19.2: - resolution: {integrity: sha512-dJ0kE8KTqbiHtA3Fc/zn7lCd7pqVr4JcT0JqOnbj4LLzYnp+7h8Qi4yjfq42ZlHfhOCM42rBh0EwHYLL6LEzcw==} + /@esbuild/linux-ppc64@0.19.5: + resolution: {integrity: sha512-yJAxJfHVm0ZbsiljbtFFP1BQKLc8kUF6+17tjQ78QjqjAQDnhULWiTA6u0FCDmYT1oOKS9PzZ2z0aBI+Mcyj7Q==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] @@ -1596,8 +1556,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-riscv64@0.19.2: - resolution: {integrity: sha512-7Z/jKNFufZ/bbu4INqqCN6DDlrmOTmdw6D0gH+6Y7auok2r02Ur661qPuXidPOJ+FSgbEeQnnAGgsVynfLuOEw==} + /@esbuild/linux-riscv64@0.19.5: + resolution: {integrity: sha512-5u8cIR/t3gaD6ad3wNt1MNRstAZO+aNyBxu2We8X31bA8XUNyamTVQwLDA1SLoPCUehNCymhBhK3Qim1433Zag==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] @@ -1621,8 +1581,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-s390x@0.19.2: - resolution: {integrity: sha512-U+RinR6aXXABFCcAY4gSlv4CL1oOVvSSCdseQmGO66H+XyuQGZIUdhG56SZaDJQcLmrSfRmx5XZOWyCJPRqS7g==} + /@esbuild/linux-s390x@0.19.5: + resolution: {integrity: sha512-Z6JrMyEw/EmZBD/OFEFpb+gao9xJ59ATsoTNlj39jVBbXqoZm4Xntu6wVmGPB/OATi1uk/DB+yeDPv2E8PqZGw==} engines: {node: '>=12'} cpu: [s390x] os: [linux] @@ -1646,8 +1606,8 @@ packages: requiresBuild: true optional: true - /@esbuild/linux-x64@0.19.2: - resolution: {integrity: sha512-oxzHTEv6VPm3XXNaHPyUTTte+3wGv7qVQtqaZCrgstI16gCuhNOtBXLEBkBREP57YTd68P0VgDgG73jSD8bwXQ==} + /@esbuild/linux-x64@0.19.5: + resolution: {integrity: sha512-psagl+2RlK1z8zWZOmVdImisMtrUxvwereIdyJTmtmHahJTKb64pAcqoPlx6CewPdvGvUKe2Jw+0Z/0qhSbG1A==} engines: {node: '>=12'} cpu: [x64] os: [linux] @@ -1671,8 +1631,8 @@ packages: requiresBuild: true optional: true - /@esbuild/netbsd-x64@0.19.2: - resolution: {integrity: sha512-WNa5zZk1XpTTwMDompZmvQLHszDDDN7lYjEHCUmAGB83Bgs20EMs7ICD+oKeT6xt4phV4NDdSi/8OfjPbSbZfQ==} + /@esbuild/netbsd-x64@0.19.5: + resolution: {integrity: sha512-kL2l+xScnAy/E/3119OggX8SrWyBEcqAh8aOY1gr4gPvw76la2GlD4Ymf832UCVbmuWeTf2adkZDK+h0Z/fB4g==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] @@ -1696,8 +1656,8 @@ packages: requiresBuild: true optional: true - /@esbuild/openbsd-x64@0.19.2: - resolution: {integrity: sha512-S6kI1aT3S++Dedb7vxIuUOb3oAxqxk2Rh5rOXOTYnzN8JzW1VzBd+IqPiSpgitu45042SYD3HCoEyhLKQcDFDw==} + /@esbuild/openbsd-x64@0.19.5: + resolution: {integrity: sha512-sPOfhtzFufQfTBgRnE1DIJjzsXukKSvZxloZbkJDG383q0awVAq600pc1nfqBcl0ice/WN9p4qLc39WhBShRTA==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] @@ -1721,8 +1681,8 @@ packages: requiresBuild: true optional: true - /@esbuild/sunos-x64@0.19.2: - resolution: {integrity: sha512-VXSSMsmb+Z8LbsQGcBMiM+fYObDNRm8p7tkUDMPG/g4fhFX5DEFmjxIEa3N8Zr96SjsJ1woAhF0DUnS3MF3ARw==} + /@esbuild/sunos-x64@0.19.5: + resolution: {integrity: sha512-dGZkBXaafuKLpDSjKcB0ax0FL36YXCvJNnztjKV+6CO82tTYVDSH2lifitJ29jxRMoUhgkg9a+VA/B03WK5lcg==} engines: {node: '>=12'} cpu: [x64] os: [sunos] @@ -1746,8 +1706,8 @@ packages: requiresBuild: true optional: true - /@esbuild/win32-arm64@0.19.2: - resolution: {integrity: sha512-5NayUlSAyb5PQYFAU9x3bHdsqB88RC3aM9lKDAz4X1mo/EchMIT1Q+pSeBXNgkfNmRecLXA0O8xP+x8V+g/LKg==} + /@esbuild/win32-arm64@0.19.5: + resolution: {integrity: sha512-dWVjD9y03ilhdRQ6Xig1NWNgfLtf2o/STKTS+eZuF90fI2BhbwD6WlaiCGKptlqXlURVB5AUOxUj09LuwKGDTg==} engines: {node: '>=12'} cpu: [arm64] os: [win32] @@ -1771,8 +1731,8 @@ packages: requiresBuild: true optional: true - /@esbuild/win32-ia32@0.19.2: - resolution: {integrity: sha512-47gL/ek1v36iN0wL9L4Q2MFdujR0poLZMJwhO2/N3gA89jgHp4MR8DKCmwYtGNksbfJb9JoTtbkoe6sDhg2QTA==} + /@esbuild/win32-ia32@0.19.5: + resolution: {integrity: sha512-4liggWIA4oDgUxqpZwrDhmEfAH4d0iljanDOK7AnVU89T6CzHon/ony8C5LeOdfgx60x5cnQJFZwEydVlYx4iw==} engines: {node: '>=12'} cpu: [ia32] os: [win32] @@ -1796,8 +1756,8 @@ packages: requiresBuild: true optional: true - /@esbuild/win32-x64@0.19.2: - resolution: {integrity: sha512-tcuhV7ncXBqbt/Ybf0IyrMcwVOAPDckMK9rXNHtF17UTK18OKLpg08glminN06pt2WCoALhXdLfSPbVvK/6fxw==} + /@esbuild/win32-x64@0.19.5: + resolution: {integrity: sha512-czTrygUsB/jlM8qEW5MD8bgYU2Xg14lo6kBDXW6HdxKjh8M5PzETGiSHaz9MtbXBYDloHNUAUW2tMiKW4KM9Mw==} engines: {node: '>=12'} cpu: [x64] os: [win32] @@ -2224,7 +2184,7 @@ packages: /@types/unist@3.0.0: resolution: {integrity: sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==} - /@typescript-eslint/eslint-plugin@6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@5.1.6): + /@typescript-eslint/eslint-plugin@6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@5.2.2): resolution: {integrity: sha512-3F5PtBzUW0dYlq77Lcqo13fv+58KDwUib3BddilE8ajPJT+faGgxmI9Sw+I8ZS22BYwoir9ZhNXcLi+S+I2bkw==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -2236,10 +2196,10 @@ packages: optional: true dependencies: '@eslint-community/regexpp': 4.8.1 - '@typescript-eslint/parser': 6.4.1(eslint@8.47.0)(typescript@5.1.6) + '@typescript-eslint/parser': 6.4.1(eslint@8.47.0)(typescript@5.2.2) '@typescript-eslint/scope-manager': 6.4.1 - '@typescript-eslint/type-utils': 6.4.1(eslint@8.47.0)(typescript@5.1.6) - '@typescript-eslint/utils': 6.4.1(eslint@8.47.0)(typescript@5.1.6) + '@typescript-eslint/type-utils': 6.4.1(eslint@8.47.0)(typescript@5.2.2) + '@typescript-eslint/utils': 6.4.1(eslint@8.47.0)(typescript@5.2.2) '@typescript-eslint/visitor-keys': 6.4.1 debug: 4.3.4(supports-color@8.1.1) eslint: 8.47.0 @@ -2247,13 +2207,13 @@ packages: ignore: 5.2.4 natural-compare: 1.4.0 semver: 7.5.4 - ts-api-utils: 1.0.3(typescript@5.1.6) - typescript: 5.1.6 + ts-api-utils: 1.0.3(typescript@5.2.2) + typescript: 5.2.2 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/parser@6.4.1(eslint@8.47.0)(typescript@5.1.6): + /@typescript-eslint/parser@6.4.1(eslint@8.47.0)(typescript@5.2.2): resolution: {integrity: sha512-610G6KHymg9V7EqOaNBMtD1GgpAmGROsmfHJPXNLCU9bfIuLrkdOygltK784F6Crboyd5tBFayPB7Sf0McrQwg==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -2265,11 +2225,11 @@ packages: dependencies: '@typescript-eslint/scope-manager': 6.4.1 '@typescript-eslint/types': 6.4.1 - '@typescript-eslint/typescript-estree': 6.4.1(typescript@5.1.6) + '@typescript-eslint/typescript-estree': 6.4.1(typescript@5.2.2) '@typescript-eslint/visitor-keys': 6.4.1 debug: 4.3.4(supports-color@8.1.1) eslint: 8.47.0 - typescript: 5.1.6 + typescript: 5.2.2 transitivePeerDependencies: - supports-color dev: true @@ -2282,7 +2242,7 @@ packages: '@typescript-eslint/visitor-keys': 6.4.1 dev: true - /@typescript-eslint/type-utils@6.4.1(eslint@8.47.0)(typescript@5.1.6): + /@typescript-eslint/type-utils@6.4.1(eslint@8.47.0)(typescript@5.2.2): resolution: {integrity: sha512-7ON8M8NXh73SGZ5XvIqWHjgX2f+vvaOarNliGhjrJnv1vdjG0LVIz+ToYfPirOoBi56jxAKLfsLm40+RvxVVXA==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -2292,12 +2252,12 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 6.4.1(typescript@5.1.6) - '@typescript-eslint/utils': 6.4.1(eslint@8.47.0)(typescript@5.1.6) + '@typescript-eslint/typescript-estree': 6.4.1(typescript@5.2.2) + '@typescript-eslint/utils': 6.4.1(eslint@8.47.0)(typescript@5.2.2) debug: 4.3.4(supports-color@8.1.1) eslint: 8.47.0 - ts-api-utils: 1.0.3(typescript@5.1.6) - typescript: 5.1.6 + ts-api-utils: 1.0.3(typescript@5.2.2) + typescript: 5.2.2 transitivePeerDependencies: - supports-color dev: true @@ -2307,7 +2267,7 @@ packages: engines: {node: ^16.0.0 || >=18.0.0} dev: true - /@typescript-eslint/typescript-estree@6.4.1(typescript@5.1.6): + /@typescript-eslint/typescript-estree@6.4.1(typescript@5.2.2): resolution: {integrity: sha512-xF6Y7SatVE/OyV93h1xGgfOkHr2iXuo8ip0gbfzaKeGGuKiAnzS+HtVhSPx8Www243bwlW8IF7X0/B62SzFftg==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -2322,13 +2282,13 @@ packages: globby: 11.1.0 is-glob: 4.0.3 semver: 7.5.4 - ts-api-utils: 1.0.3(typescript@5.1.6) - typescript: 5.1.6 + ts-api-utils: 1.0.3(typescript@5.2.2) + typescript: 5.2.2 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/utils@6.4.1(eslint@8.47.0)(typescript@5.1.6): + /@typescript-eslint/utils@6.4.1(eslint@8.47.0)(typescript@5.2.2): resolution: {integrity: sha512-F/6r2RieNeorU0zhqZNv89s9bDZSovv3bZQpUNOmmQK1L80/cV4KEu95YUJWi75u5PhboFoKUJBnZ4FQcoqhDw==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -2339,7 +2299,7 @@ packages: '@types/semver': 7.5.3 '@typescript-eslint/scope-manager': 6.4.1 '@typescript-eslint/types': 6.4.1 - '@typescript-eslint/typescript-estree': 6.4.1(typescript@5.1.6) + '@typescript-eslint/typescript-estree': 6.4.1(typescript@5.2.2) eslint: 8.47.0 semver: 7.5.4 transitivePeerDependencies: @@ -2358,59 +2318,60 @@ packages: /@ungap/structured-clone@1.2.0: resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - /@volar/kit@1.10.1(typescript@5.1.6): - resolution: {integrity: sha512-+aR3rvgER14VfjFflhD6k161uLdshpuK1tQUrnl8phpKtSGJDXHkTl/WkNk2xCEuE4goShS9nTvruTyrI9gGBw==} + /@volar/kit@1.10.10(typescript@5.2.2): + resolution: {integrity: sha512-V2SyUPCPUhueqH8j5t48LJ0QsjExGSXzTv/XOdkUHV7hJ/ekyRGFqKxcfBtMq/nK6Tgu2G1ba+6u0d7e6wKcQw==} peerDependencies: typescript: '*' dependencies: - '@volar/language-service': 1.10.1 + '@volar/language-service': 1.10.10 typesafe-path: 0.2.2 - typescript: 5.1.6 - vscode-languageserver-textdocument: 1.0.8 - vscode-uri: 3.0.7 + typescript: 5.2.2 + vscode-languageserver-textdocument: 1.0.11 + vscode-uri: 3.0.8 dev: true - /@volar/language-core@1.10.1: - resolution: {integrity: sha512-JnsM1mIPdfGPxmoOcK1c7HYAsL6YOv0TCJ4aW3AXPZN/Jb4R77epDyMZIVudSGjWMbvv/JfUa+rQ+dGKTmgwBA==} + /@volar/language-core@1.10.10: + resolution: {integrity: sha512-nsV1o3AZ5n5jaEAObrS3MWLBWaGwUj/vAsc15FVNIv+DbpizQRISg9wzygsHBr56ELRH8r4K75vkYNMtsSNNWw==} dependencies: - '@volar/source-map': 1.10.1 + '@volar/source-map': 1.10.10 dev: true - /@volar/language-server@1.10.1: - resolution: {integrity: sha512-UXgRMAPKoy4EZBcBT1SFp8YIb5AJqe7Is1/TnqRUq0LBBV2M7HpEeHHI8E4fy05Eg4TlSVRcrlZtiTrY9fRjJg==} + /@volar/language-server@1.10.10: + resolution: {integrity: sha512-F2PRBU+CRjT7L9qe8bjof/uz/LbAXVmgwNU2gOSX2y1bUl3E8DHmD0dB6pwIVublvkx+Ivg/0r3Z6oyxfPPruQ==} dependencies: - '@volar/language-core': 1.10.1 - '@volar/language-service': 1.10.1 - '@volar/typescript': 1.10.1 - '@vscode/l10n': 0.0.11 + '@volar/language-core': 1.10.10 + '@volar/language-service': 1.10.10 + '@volar/typescript': 1.10.10 + '@vscode/l10n': 0.0.16 + path-browserify: 1.0.1 request-light: 0.7.0 - typesafe-path: 0.2.2 - vscode-languageserver: 8.1.0 - vscode-languageserver-protocol: 3.17.4 - vscode-languageserver-textdocument: 1.0.8 - vscode-uri: 3.0.7 + vscode-languageserver: 9.0.1 + vscode-languageserver-protocol: 3.17.5 + vscode-languageserver-textdocument: 1.0.11 + vscode-uri: 3.0.8 dev: true - /@volar/language-service@1.10.1: - resolution: {integrity: sha512-9AfMd8DeBuiw5twyXCL4Dw/9dg7djs2GAMQ5YY6LlN4v6u5IwU+foM/un5F7yzE94v2cuI+NN9LtHeR87AXpRA==} + /@volar/language-service@1.10.10: + resolution: {integrity: sha512-P4fiPWDI6fLGO6BghlksCVHs1nr9gvWAMDyma3Bca4aowxXusxjUVTsnJq0EVorIN5uIr1Xel4B/tNdXt/IKyw==} dependencies: - '@volar/language-core': 1.10.1 - '@volar/source-map': 1.10.1 - vscode-languageserver-protocol: 3.17.4 - vscode-languageserver-textdocument: 1.0.8 - vscode-uri: 3.0.7 + '@volar/language-core': 1.10.10 + '@volar/source-map': 1.10.10 + vscode-languageserver-protocol: 3.17.5 + vscode-languageserver-textdocument: 1.0.11 + vscode-uri: 3.0.8 dev: true - /@volar/source-map@1.10.1: - resolution: {integrity: sha512-3/S6KQbqa7pGC8CxPrg69qHLpOvkiPHGJtWPkI/1AXCsktkJ6gIk/5z4hyuMp8Anvs6eS/Kvp/GZa3ut3votKA==} + /@volar/source-map@1.10.10: + resolution: {integrity: sha512-GVKjLnifV4voJ9F0vhP56p4+F3WGf+gXlRtjFZsv6v3WxBTWU3ZVeaRaEHJmWrcv5LXmoYYpk/SC25BKemPRkg==} dependencies: muggle-string: 0.3.1 dev: true - /@volar/typescript@1.10.1: - resolution: {integrity: sha512-+iiO9yUSRHIYjlteT+QcdRq8b44qH19/eiUZtjNtuh6D9ailYM7DVR0zO2sEgJlvCaunw/CF9Ov2KooQBpR4VQ==} + /@volar/typescript@1.10.10: + resolution: {integrity: sha512-4a2r5bdUub2m+mYVnLu2wt59fuoYWe7nf0uXtGHU8QQ5LDNfzAR0wK7NgDiQ9rcl2WT3fxT2AA9AylAwFtj50A==} dependencies: - '@volar/language-core': 1.10.1 + '@volar/language-core': 1.10.10 + path-browserify: 1.0.1 dev: true /@vscode/emmet-helper@2.9.2: @@ -2423,10 +2384,6 @@ packages: vscode-uri: 2.1.2 dev: true - /@vscode/l10n@0.0.11: - resolution: {integrity: sha512-ukOMWnCg1tCvT7WnDfsUKQOFDQGsyR5tNgRpwmqi+5/vzU3ghdDXzvIM4IOPdSb3OeSsBNvmSL8nxIVOqi2WXA==} - dev: true - /@vscode/l10n@0.0.16: resolution: {integrity: sha512-JT5CvrIYYCrmB+dCana8sUqJEcGB1ZDXNLMQ2+42bW995WmNoenijWMUdZfwmuQUTQcEVVIa2OecZzTYWUW9Cg==} dev: true @@ -2587,88 +2544,15 @@ packages: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} dev: true - /astro@3.3.0(@types/node@18.17.8)(typescript@5.1.6): - resolution: {integrity: sha512-O3MsXULamxQMy6sBgv07iVe5teJ41o+9tVScB/Yo2Io0XwvLXVhjVrjAxKpulBcKpU3/LyOpVfj/x63fcONbPA==} - engines: {node: '>=18.14.1', npm: '>=6.14.0'} - hasBin: true - dependencies: - '@astrojs/compiler': 2.1.0 - '@astrojs/internal-helpers': 0.2.1 - '@astrojs/markdown-remark': 3.3.0(astro@3.3.0) - '@astrojs/telemetry': 3.0.3 - '@babel/core': 7.23.0 - '@babel/generator': 7.23.0 - '@babel/parser': 7.23.0 - '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.23.0) - '@babel/traverse': 7.23.0 - '@babel/types': 7.23.0 - '@types/babel__core': 7.20.2 - acorn: 8.10.0 - boxen: 7.1.1 - chokidar: 3.5.3 - ci-info: 3.8.0 - clsx: 2.0.0 - common-ancestor-path: 1.0.1 - cookie: 0.5.0 - debug: 4.3.4(supports-color@8.1.1) - devalue: 4.3.2 - diff: 5.1.0 - es-module-lexer: 1.3.1 - esbuild: 0.19.2 - estree-walker: 3.0.3 - execa: 8.0.1 - fast-glob: 3.3.1 - github-slugger: 2.0.0 - gray-matter: 4.0.3 - html-escaper: 3.0.3 - http-cache-semantics: 4.1.1 - js-yaml: 4.1.0 - kleur: 4.1.5 - magic-string: 0.30.3 - mime: 3.0.0 - ora: 7.0.1 - p-limit: 4.0.0 - path-to-regexp: 6.2.1 - preferred-pm: 3.1.2 - probe-image-size: 7.2.3 - prompts: 2.4.2 - rehype: 12.0.1 - resolve: 1.22.6 - semver: 7.5.4 - server-destroy: 1.0.1 - shikiji: 0.6.10 - string-width: 6.1.0 - strip-ansi: 7.1.0 - tsconfck: 3.0.0-next.9(typescript@5.1.6) - unist-util-visit: 4.1.2 - vfile: 5.3.7 - vite: 4.4.9(@types/node@18.17.8) - vitefu: 0.2.4(vite@4.4.9) - which-pm: 2.1.1 - yargs-parser: 21.1.1 - zod: 3.21.1 - optionalDependencies: - sharp: 0.32.6 - transitivePeerDependencies: - - '@types/node' - - less - - lightningcss - - sass - - stylus - - sugarss - - supports-color - - terser - - typescript - - /astro@3.3.0(@types/node@18.17.8)(typescript@5.2.2): - resolution: {integrity: sha512-O3MsXULamxQMy6sBgv07iVe5teJ41o+9tVScB/Yo2Io0XwvLXVhjVrjAxKpulBcKpU3/LyOpVfj/x63fcONbPA==} + /astro@3.4.3(@types/node@18.17.8)(typescript@5.2.2): + resolution: {integrity: sha512-6zcONz2FjX6GaAy6Mysie4gT8rH5QCBXyPjkuYZKiPdV+sXmDpLm44J2MpQwA3mHb8YQ35L5O4nNg09d4luQ7g==} engines: {node: '>=18.14.1', npm: '>=6.14.0'} hasBin: true dependencies: - '@astrojs/compiler': 2.1.0 + '@astrojs/compiler': 2.2.2 '@astrojs/internal-helpers': 0.2.1 - '@astrojs/markdown-remark': 3.3.0(astro@3.3.0) - '@astrojs/telemetry': 3.0.3 + '@astrojs/markdown-remark': 3.3.0(astro@3.4.3) + '@astrojs/telemetry': 3.0.4 '@babel/core': 7.23.0 '@babel/generator': 7.23.0 '@babel/parser': 7.23.0 @@ -2684,10 +2568,11 @@ packages: common-ancestor-path: 1.0.1 cookie: 0.5.0 debug: 4.3.4(supports-color@8.1.1) + deterministic-object-hash: 1.3.1 devalue: 4.3.2 diff: 5.1.0 es-module-lexer: 1.3.1 - esbuild: 0.19.2 + esbuild: 0.19.5 estree-walker: 3.0.3 execa: 8.0.1 fast-glob: 3.3.1 @@ -2698,9 +2583,11 @@ packages: js-yaml: 4.1.0 kleur: 4.1.5 magic-string: 0.30.3 + mdast-util-to-hast: 12.3.0 mime: 3.0.0 ora: 7.0.1 p-limit: 4.0.0 + p-queue: 7.4.1 path-to-regexp: 6.2.1 preferred-pm: 3.1.2 probe-image-size: 7.2.3 @@ -2712,14 +2599,14 @@ packages: shikiji: 0.6.10 string-width: 6.1.0 strip-ansi: 7.1.0 - tsconfck: 3.0.0-next.9(typescript@5.2.2) + tsconfck: 3.0.0(typescript@5.2.2) unist-util-visit: 4.1.2 vfile: 5.3.7 - vite: 4.4.9(@types/node@18.17.8) - vitefu: 0.2.4(vite@4.4.9) + vite: 4.5.0(@types/node@18.17.8) + vitefu: 0.2.4(vite@4.5.0) which-pm: 2.1.1 yargs-parser: 21.1.1 - zod: 3.21.1 + zod: 3.22.4 optionalDependencies: sharp: 0.32.6 transitivePeerDependencies: @@ -2732,7 +2619,6 @@ packages: - supports-color - terser - typescript - dev: true /available-typed-arrays@1.0.5: resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} @@ -2978,24 +2864,24 @@ packages: /ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} - /chai-jest-snapshot@2.0.0(chai@4.3.7): + /chai-jest-snapshot@2.0.0(chai@4.3.10): resolution: {integrity: sha512-u8jZZjw/0G1t5A8wDfH6K7DAVfMg3g0dsw9wKQURNUyrZX96VojHNrFMmLirq1m0kOvC5icgL/Qh/fu1MZyvUw==} peerDependencies: chai: '>=1.9.0' dependencies: - chai: 4.3.7 + chai: 4.3.10 jest-snapshot: 21.2.1 lodash.values: 4.3.0 dev: true - /chai@4.3.7: - resolution: {integrity: sha512-HLnAzZ2iupm25PlN0xFreAlBA5zaBSv3og0DdeGA4Ar6h6rJ3A0rolRUKJhSF2V10GZKDgWF/VmAEsNWjCRB+A==} + /chai@4.3.10: + resolution: {integrity: sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g==} engines: {node: '>=4'} dependencies: assertion-error: 1.1.0 - check-error: 1.0.2 + check-error: 1.0.3 deep-eql: 4.1.3 - get-func-name: 2.0.0 + get-func-name: 2.0.2 loupe: 2.3.6 pathval: 1.1.1 type-detect: 4.0.8 @@ -3042,8 +2928,10 @@ packages: resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} dev: true - /check-error@1.0.2: - resolution: {integrity: sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==} + /check-error@1.0.3: + resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} + dependencies: + get-func-name: 2.0.2 dev: true /cheerio-select@2.1.0: @@ -3459,6 +3347,9 @@ packages: requiresBuild: true optional: true + /deterministic-object-hash@1.3.1: + resolution: {integrity: sha512-kQDIieBUreEgY+akq0N7o4FzZCr27dPG1xr3wq267vPwDlSXQ3UMcBXHqTGUBaM/5WDS1jwTYjxRhUzHeuiAvw==} + /devalue@4.3.2: resolution: {integrity: sha512-KqFl6pOgOW+Y6wJgu80rHpo2/3H07vr8ntR9rkkFIRETewbf5GaYYcakYfiKz89K+sLsuPkQIZaXDMjUObZwWg==} @@ -3667,14 +3558,14 @@ packages: is-symbol: 1.0.4 dev: true - /esbuild-plugin-copy@2.1.1(esbuild@0.19.2): + /esbuild-plugin-copy@2.1.1(esbuild@0.19.5): resolution: {integrity: sha512-Bk66jpevTcV8KMFzZI1P7MZKZ+uDcrZm2G2egZ2jNIvVnivDpodZI+/KnpL3Jnap0PBdIHU7HwFGB8r+vV5CVw==} peerDependencies: esbuild: '>= 0.14.0' dependencies: chalk: 4.1.2 chokidar: 3.5.3 - esbuild: 0.19.2 + esbuild: 0.19.5 fs-extra: 10.1.0 globby: 11.1.0 dev: true @@ -3738,34 +3629,34 @@ packages: '@esbuild/win32-ia32': 0.18.20 '@esbuild/win32-x64': 0.18.20 - /esbuild@0.19.2: - resolution: {integrity: sha512-G6hPax8UbFakEj3hWO0Vs52LQ8k3lnBhxZWomUJDxfz3rZTLqF5k/FCzuNdLx2RbpBiQQF9H9onlDDH1lZsnjg==} + /esbuild@0.19.5: + resolution: {integrity: sha512-bUxalY7b1g8vNhQKdB24QDmHeY4V4tw/s6Ak5z+jJX9laP5MoQseTOMemAr0gxssjNcH0MCViG8ONI2kksvfFQ==} engines: {node: '>=12'} hasBin: true requiresBuild: true optionalDependencies: - '@esbuild/android-arm': 0.19.2 - '@esbuild/android-arm64': 0.19.2 - '@esbuild/android-x64': 0.19.2 - '@esbuild/darwin-arm64': 0.19.2 - '@esbuild/darwin-x64': 0.19.2 - '@esbuild/freebsd-arm64': 0.19.2 - '@esbuild/freebsd-x64': 0.19.2 - '@esbuild/linux-arm': 0.19.2 - '@esbuild/linux-arm64': 0.19.2 - '@esbuild/linux-ia32': 0.19.2 - '@esbuild/linux-loong64': 0.19.2 - '@esbuild/linux-mips64el': 0.19.2 - '@esbuild/linux-ppc64': 0.19.2 - '@esbuild/linux-riscv64': 0.19.2 - '@esbuild/linux-s390x': 0.19.2 - '@esbuild/linux-x64': 0.19.2 - '@esbuild/netbsd-x64': 0.19.2 - '@esbuild/openbsd-x64': 0.19.2 - '@esbuild/sunos-x64': 0.19.2 - '@esbuild/win32-arm64': 0.19.2 - '@esbuild/win32-ia32': 0.19.2 - '@esbuild/win32-x64': 0.19.2 + '@esbuild/android-arm': 0.19.5 + '@esbuild/android-arm64': 0.19.5 + '@esbuild/android-x64': 0.19.5 + '@esbuild/darwin-arm64': 0.19.5 + '@esbuild/darwin-x64': 0.19.5 + '@esbuild/freebsd-arm64': 0.19.5 + '@esbuild/freebsd-x64': 0.19.5 + '@esbuild/linux-arm': 0.19.5 + '@esbuild/linux-arm64': 0.19.5 + '@esbuild/linux-ia32': 0.19.5 + '@esbuild/linux-loong64': 0.19.5 + '@esbuild/linux-mips64el': 0.19.5 + '@esbuild/linux-ppc64': 0.19.5 + '@esbuild/linux-riscv64': 0.19.5 + '@esbuild/linux-s390x': 0.19.5 + '@esbuild/linux-x64': 0.19.5 + '@esbuild/netbsd-x64': 0.19.5 + '@esbuild/openbsd-x64': 0.19.5 + '@esbuild/sunos-x64': 0.19.5 + '@esbuild/win32-arm64': 0.19.5 + '@esbuild/win32-ia32': 0.19.5 + '@esbuild/win32-x64': 0.19.5 /escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} @@ -3925,6 +3816,9 @@ packages: engines: {node: '>=0.10.0'} dev: true + /eventemitter3@5.0.1: + resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} + /execa@5.1.1: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} @@ -4182,6 +4076,10 @@ packages: resolution: {integrity: sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==} dev: true + /get-func-name@2.0.2: + resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} + dev: true + /get-intrinsic@1.2.1: resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} dependencies: @@ -5573,8 +5471,8 @@ packages: engines: {node: '>=4'} dev: true - /miniflare@3.20231002.1: - resolution: {integrity: sha512-4xJ8FezJkQqHzCm71lovb9L/wJ0VV/odMFf5CIxfLTunsx97kTIlZnhS6aHuvcbzdztbWp1RR71K/1qFUHdpdQ==} + /miniflare@3.20231025.0: + resolution: {integrity: sha512-pFcr2BRaGIQ26UfdDo8BMJ6kkd/Jo/FkQ/4K7UG/eORlDepsLrR/sTJddcSSIGl07MA+MGjhzopFTPpFskkS+g==} engines: {node: '>=16.13'} dependencies: acorn: 8.10.0 @@ -5585,18 +5483,18 @@ packages: source-map-support: 0.5.21 stoppable: 1.1.0 undici: 5.26.3 - workerd: 1.20231002.0 + workerd: 1.20231025.0 ws: 8.14.2 youch: 3.3.2 - zod: 3.21.1 + zod: 3.22.4 transitivePeerDependencies: - bufferutil - supports-color - utf-8-validate dev: true - /miniflare@3.20231010.0: - resolution: {integrity: sha512-VETY+/OhJ1RN+yrFpPUqBZysb2R8wXvyx3vzaRZS2qO1aGNKeGASa/vxCvNcBF+gt8UdbWMOalSXX8zY0IgWZA==} + /miniflare@3.20231025.1: + resolution: {integrity: sha512-zwvu/f6eivBBF2shuom5DibnZjGSxt6FiC8sZlj+CcqTRss1D2ZHYD09odhAZLY9DYXE0orBFkJKnIDx/QmYdQ==} engines: {node: '>=16.13'} dependencies: acorn: 8.10.0 @@ -5607,14 +5505,15 @@ packages: source-map-support: 0.5.21 stoppable: 1.1.0 undici: 5.26.3 - workerd: 1.20231010.0 + workerd: 1.20231025.0 ws: 8.14.2 youch: 3.3.2 - zod: 3.21.1 + zod: 3.22.4 transitivePeerDependencies: - bufferutil - supports-color - utf-8-validate + dev: false /minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} @@ -5995,6 +5894,17 @@ packages: aggregate-error: 4.0.1 dev: true + /p-queue@7.4.1: + resolution: {integrity: sha512-vRpMXmIkYF2/1hLBKisKeVYJZ8S2tZ0zEAmIJgdVKP2nq0nh4qCdf8bgw+ZgKrkh71AOCaqzwbJJk1WtdcF3VA==} + engines: {node: '>=12'} + dependencies: + eventemitter3: 5.0.1 + p-timeout: 5.1.0 + + /p-timeout@5.1.0: + resolution: {integrity: sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==} + engines: {node: '>=12'} + /p-try@2.2.0: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} @@ -6152,8 +6062,8 @@ packages: fast-diff: 1.3.0 dev: true - /prettier-plugin-astro@0.12.0: - resolution: {integrity: sha512-8E+9YQR6/5CPZJs8XsfBw579zrwZkc0Wb7x0fRVm/51JC8Iys4lBw4ecV8fHwpbQnzve86TUa4fJ08BJzqfWnA==} + /prettier-plugin-astro@0.12.1: + resolution: {integrity: sha512-1mlNIU/cV+25oB4z5wXzOz2fSDcawG3MsVUwgw2i8VSy7voLSENMSpR1juu3U5MAVUo3owuyax11QuylbpuqOQ==} engines: {node: ^14.15.0 || >=16.0.0} dependencies: '@astrojs/compiler': 1.8.2 @@ -6405,6 +6315,11 @@ packages: engines: {node: '>=8'} dev: true + /resolve.exports@2.0.2: + resolution: {integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==} + engines: {node: '>=10'} + dev: true + /resolve@1.22.6: resolution: {integrity: sha512-njhxM7mV12JfufShqGy3Rz8j11RPdLy4xi15UurGJeoHLfJpVXKdh3ueuOqbYUcDZnffr6X739JBo5LzyahEsw==} hasBin: true @@ -7089,13 +7004,13 @@ packages: /trough@2.1.0: resolution: {integrity: sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==} - /ts-api-utils@1.0.3(typescript@5.1.6): + /ts-api-utils@1.0.3(typescript@5.2.2): resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==} engines: {node: '>=16.13.0'} peerDependencies: typescript: '>=4.2.0' dependencies: - typescript: 5.1.6 + typescript: 5.2.2 dev: true /ts-morph@15.1.0: @@ -7105,20 +7020,8 @@ packages: code-block-writer: 11.0.3 dev: true - /tsconfck@3.0.0-next.9(typescript@5.1.6): - resolution: {integrity: sha512-bgVlu3qcRUZpm9Au1IHiPDkb8XU+72bRkXrBaJsiAjIlixtkbKLe4q1odrrqG0rVHvh0Q4R3adT/nh1FwzftXA==} - engines: {node: ^18 || >=20} - hasBin: true - peerDependencies: - typescript: ^5.0.0 - peerDependenciesMeta: - typescript: - optional: true - dependencies: - typescript: 5.1.6 - - /tsconfck@3.0.0-next.9(typescript@5.2.2): - resolution: {integrity: sha512-bgVlu3qcRUZpm9Au1IHiPDkb8XU+72bRkXrBaJsiAjIlixtkbKLe4q1odrrqG0rVHvh0Q4R3adT/nh1FwzftXA==} + /tsconfck@3.0.0(typescript@5.2.2): + resolution: {integrity: sha512-w3wnsIrJNi7avf4Zb0VjOoodoO0woEqGgZGQm+LHH9przdUI+XDKsWAXwxHA1DaRTjeuZNcregSzr7RaA8zG9A==} engines: {node: ^18 || >=20} hasBin: true peerDependencies: @@ -7128,7 +7031,6 @@ packages: optional: true dependencies: typescript: 5.2.2 - dev: true /tsconfig-resolver@3.0.1: resolution: {integrity: sha512-ZHqlstlQF449v8glscGRXzL6l2dZvASPCdXJRWG4gHEZlUVx2Jtmr+a2zeVG4LCsKhDXKRj5R3h0C/98UcVAQg==} @@ -7319,16 +7221,10 @@ packages: semver: 7.5.4 dev: true - /typescript@5.1.6: - resolution: {integrity: sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==} - engines: {node: '>=14.17'} - hasBin: true - /typescript@5.2.2: resolution: {integrity: sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==} engines: {node: '>=14.17'} hasBin: true - dev: true /unbox-primitive@1.0.2: resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} @@ -7548,13 +7444,13 @@ packages: merge-anything: 5.1.7 solid-js: 1.7.11 solid-refresh: 0.5.3(solid-js@1.7.11) - vitefu: 0.2.4(vite@4.4.9) + vitefu: 0.2.4(vite@4.5.0) transitivePeerDependencies: - supports-color dev: false - /vite@4.4.9(@types/node@18.17.8): - resolution: {integrity: sha512-2mbUn2LlUmNASWwSCNSJ/EG2HuSRTnVNaydp6vMCm5VIqJsjMfbIWtbH2kDuwUVW5mMUKKZvGPX/rqeqVvv1XA==} + /vite@4.5.0(@types/node@18.17.8): + resolution: {integrity: sha512-ulr8rNLA6rkyFAlVWw2q5YJ91v098AFQ2R0PRFwPzREXOUJQPtFUG0t+/ZikhaOCDqFoDhN6/v8Sq0o4araFAw==} engines: {node: ^14.18.0 || >=16.0.0} hasBin: true peerDependencies: @@ -7588,7 +7484,7 @@ packages: optionalDependencies: fsevents: 2.3.3 - /vitefu@0.2.4(vite@4.4.9): + /vitefu@0.2.4(vite@4.5.0): resolution: {integrity: sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==} peerDependencies: vite: ^3.0.0 || ^4.0.0 @@ -7596,49 +7492,49 @@ packages: vite: optional: true dependencies: - vite: 4.4.9(@types/node@18.17.8) + vite: 4.5.0(@types/node@18.17.8) - /volar-service-css@0.0.13(@volar/language-service@1.10.1): - resolution: {integrity: sha512-WAuo7oDYgTQ1cr45EqTGoPGtClj0f5PZDQARgQveXKu0CQgyXn8Bs7c4EjDR0fNLhiG3moBEs2uSUGxjSKghxw==} + /volar-service-css@0.0.16(@volar/language-service@1.10.10): + resolution: {integrity: sha512-gK/XD35t/P3SQrUuS8LMlCnE2ItIk+kXI6gPvBYl1NZ7O+tLH8rUWXA32YgpwNoITxYrm/G1seaq08zs4aiPvg==} peerDependencies: '@volar/language-service': ~1.10.0 peerDependenciesMeta: '@volar/language-service': optional: true dependencies: - '@volar/language-service': 1.10.1 - vscode-css-languageservice: 6.2.8 - vscode-uri: 3.0.7 + '@volar/language-service': 1.10.10 + vscode-css-languageservice: 6.2.10 + vscode-uri: 3.0.8 dev: true - /volar-service-emmet@0.0.13(@volar/language-service@1.10.1): - resolution: {integrity: sha512-y/U3up9b3YA8DL36h6KUGnBoH/TUmr1Iv9HWuSeWJKoA6LOt57AOIgzl7+/zY8d+0+C0jGqpV4CM8V5+TjptvQ==} + /volar-service-emmet@0.0.16(@volar/language-service@1.10.10): + resolution: {integrity: sha512-8sWWywzVJOD+PWDArOXDWbiRlM7+peydFhXJT71i4X1WPW32RyPxn6FypvciO+amqpfZP2rXfB9eibIJ+EofSQ==} peerDependencies: '@volar/language-service': ~1.10.0 peerDependenciesMeta: '@volar/language-service': optional: true dependencies: - '@volar/language-service': 1.10.1 + '@volar/language-service': 1.10.10 '@vscode/emmet-helper': 2.9.2 - volar-service-html: 0.0.13(@volar/language-service@1.10.1) + volar-service-html: 0.0.16(@volar/language-service@1.10.10) dev: true - /volar-service-html@0.0.13(@volar/language-service@1.10.1): - resolution: {integrity: sha512-Y4pfmNsIpkDTixJVdobRMDZm5Ax90magUCdYl6HUN0/RstxHb3ogEodTT1GtNmoek/YYTrxbWZYN/Yq49+9zdg==} + /volar-service-html@0.0.16(@volar/language-service@1.10.10): + resolution: {integrity: sha512-/oEXXgry++1CnTXQBUNf9B8MZfTlYZuJfZA7Zx9MN7WS4ZPxk3BFOdal/cXH6RNR2ruNEYr5QTW9rsqtoUscag==} peerDependencies: '@volar/language-service': ~1.10.0 peerDependenciesMeta: '@volar/language-service': optional: true dependencies: - '@volar/language-service': 1.10.1 + '@volar/language-service': 1.10.10 vscode-html-languageservice: 5.1.0 - vscode-uri: 3.0.7 + vscode-uri: 3.0.8 dev: true - /volar-service-prettier@0.0.13(@volar/language-service@1.10.1)(prettier@3.0.3): - resolution: {integrity: sha512-4V/v+oNXyoC4QRNCY6JDAD4BvVatuswyH8o7flgO/XHDRIG+WwGo8Avsbmq4TLktjBGFUa4Gb9aK9+RkznEEZQ==} + /volar-service-prettier@0.0.16(@volar/language-service@1.10.10)(prettier@3.0.3): + resolution: {integrity: sha512-Kj2ZdwJGEvfYbsHW8Sjrew/7EB4PgRoas4f8yAJzUUVxIC/kvhUwLDxQc8+N2IibomN76asJGWe+i6VZZvgIkw==} peerDependencies: '@volar/language-service': ~1.10.0 prettier: ^2.2 || ^3.0 @@ -7648,23 +7544,23 @@ packages: prettier: optional: true dependencies: - '@volar/language-service': 1.10.1 + '@volar/language-service': 1.10.10 prettier: 3.0.3 dev: true - /volar-service-typescript-twoslash-queries@0.0.13(@volar/language-service@1.10.1): - resolution: {integrity: sha512-KGk5ek2v7T8OSY9YdMmqGOT0KkoUQAe8RbPmoZibT9F3vgmmWVgaAoIlDZ1vwt7VfQeZvRmhvRJhqpCA80ZF8Q==} + /volar-service-typescript-twoslash-queries@0.0.16(@volar/language-service@1.10.10): + resolution: {integrity: sha512-0gPrkDTD2bMj2AnSNykOKhfmPnBFE2LS1lF3LWA7qu1ChRnJF0sodwCCbbeNYJ9+yth956ApoU1BVQ8UrMg+yw==} peerDependencies: '@volar/language-service': ~1.10.0 peerDependenciesMeta: '@volar/language-service': optional: true dependencies: - '@volar/language-service': 1.10.1 + '@volar/language-service': 1.10.10 dev: true - /volar-service-typescript@0.0.13(@volar/language-service@1.10.1)(@volar/typescript@1.10.1): - resolution: {integrity: sha512-fwpoA1L/bCXz5hl9W4EYJYNyorocfdfbLQ9lTM3rPVOzjRZVknEE8XP31RMPZhEg3sOxKh18+sLEL7j3bip8ew==} + /volar-service-typescript@0.0.16(@volar/language-service@1.10.10)(@volar/typescript@1.10.10): + resolution: {integrity: sha512-k/qFKM2oxs/3fhbr/vcBSHnCLZ1HN3Aeh+bGvV9Lc9qIhrNyCVsDFOUJN1Qp4dI72+Y+eFSIDCLHmFEZdsP2EA==} peerDependencies: '@volar/language-service': ~1.10.0 '@volar/typescript': ~1.10.0 @@ -7672,22 +7568,23 @@ packages: '@volar/language-service': optional: true dependencies: - '@volar/language-service': 1.10.1 - '@volar/typescript': 1.10.1 + '@volar/language-service': 1.10.10 + '@volar/typescript': 1.10.10 + path-browserify: 1.0.1 semver: 7.5.4 typescript-auto-import-cache: 0.3.0 - vscode-languageserver-textdocument: 1.0.8 + vscode-languageserver-textdocument: 1.0.11 vscode-nls: 5.2.0 - vscode-uri: 3.0.7 + vscode-uri: 3.0.8 dev: true - /vscode-css-languageservice@6.2.8: - resolution: {integrity: sha512-R3BuKXTkwgkxR3MDaLxZVp49YcIUuwCiO4U1mfuR/0OiKGEaKlaV4C1IRn4OjqqIiVrbFkIcA7H7A6B4HvDbWg==} + /vscode-css-languageservice@6.2.10: + resolution: {integrity: sha512-sYUZPku4mQ06AWGCbMyjv2tdR6juBW6hTbVPFwbJvNVzdtEfBioQOgkdXg7yMJNWnXkvWSU1FL2kb4Vxu5Cdyw==} dependencies: '@vscode/l10n': 0.0.16 - vscode-languageserver-textdocument: 1.0.8 - vscode-languageserver-types: 3.17.4 - vscode-uri: 3.0.7 + vscode-languageserver-textdocument: 1.0.11 + vscode-languageserver-types: 3.17.5 + vscode-uri: 3.0.8 dev: true /vscode-html-languageservice@5.1.0: @@ -7696,12 +7593,7 @@ packages: '@vscode/l10n': 0.0.16 vscode-languageserver-textdocument: 1.0.8 vscode-languageserver-types: 3.17.4 - vscode-uri: 3.0.7 - dev: true - - /vscode-jsonrpc@8.1.0: - resolution: {integrity: sha512-6TDy/abTQk+zDGYazgbIPc+4JoXdwC8NHU9Pbn4UJP1fehUyZmM4RHp5IthX7A6L5KS30PRui+j+tbbMMMafdw==} - engines: {node: '>=14.0.0'} + vscode-uri: 3.0.8 dev: true /vscode-jsonrpc@8.2.0: @@ -7709,37 +7601,34 @@ packages: engines: {node: '>=14.0.0'} dev: true - /vscode-languageserver-protocol@3.17.3: - resolution: {integrity: sha512-924/h0AqsMtA5yK22GgMtCYiMdCOtWTSGgUOkgEDX+wk2b0x4sAfLiO4NxBxqbiVtz7K7/1/RgVrVI0NClZwqA==} + /vscode-languageserver-protocol@3.17.5: + resolution: {integrity: sha512-mb1bvRJN8SVznADSGWM9u/b07H7Ecg0I3OgXDuLdn307rl/J3A9YD6/eYOssqhecL27hK1IPZAsaqh00i/Jljg==} dependencies: - vscode-jsonrpc: 8.1.0 - vscode-languageserver-types: 3.17.3 + vscode-jsonrpc: 8.2.0 + vscode-languageserver-types: 3.17.5 dev: true - /vscode-languageserver-protocol@3.17.4: - resolution: {integrity: sha512-IpaHLPft+UBWf4dOIH15YEgydTbXGz52EMU2h16SfFpYu/yOQt3pY14049mtpJu+4CBHn+hq7S67e7O0AwpRqQ==} - dependencies: - vscode-jsonrpc: 8.2.0 - vscode-languageserver-types: 3.17.4 + /vscode-languageserver-textdocument@1.0.11: + resolution: {integrity: sha512-X+8T3GoiwTVlJbicx/sIAF+yuJAqz8VvwJyoMVhwEMoEKE/fkDmrqUgDMyBECcM2A2frVZIUj5HI/ErRXCfOeA==} dev: true /vscode-languageserver-textdocument@1.0.8: resolution: {integrity: sha512-1bonkGqQs5/fxGT5UchTgjGVnfysL0O8v1AYMBjqTbWQTFn721zaPGDYFkOKtfDgFiSgXM3KwaG3FMGfW4Ed9Q==} dev: true - /vscode-languageserver-types@3.17.3: - resolution: {integrity: sha512-SYU4z1dL0PyIMd4Vj8YOqFvHu7Hz/enbWtpfnVbJHU4Nd1YNYx8u0ennumc6h48GQNeOLxmwySmnADouT/AuZA==} - dev: true - /vscode-languageserver-types@3.17.4: resolution: {integrity: sha512-9YXi5pA3XF2V+NUQg6g+lulNS0ncRCKASYdK3Cs7kiH9sVFXWq27prjkC/B8M/xJLRPPRSPCHVMuBTgRNFh2sQ==} dev: true - /vscode-languageserver@8.1.0: - resolution: {integrity: sha512-eUt8f1z2N2IEUDBsKaNapkz7jl5QpskN2Y0G01T/ItMxBxw1fJwvtySGB9QMecatne8jFIWJGWI61dWjyTLQsw==} + /vscode-languageserver-types@3.17.5: + resolution: {integrity: sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==} + dev: true + + /vscode-languageserver@9.0.1: + resolution: {integrity: sha512-woByF3PDpkHFUreUa7Hos7+pUWdeWMXRd26+ZX2A8cFx6v/JPTtd4/uN0/jB6XQHYaOlHbio03NTHCqrgG5n7g==} hasBin: true dependencies: - vscode-languageserver-protocol: 3.17.3 + vscode-languageserver-protocol: 3.17.5 dev: true /vscode-nls@5.2.0: @@ -7750,8 +7639,8 @@ packages: resolution: {integrity: sha512-8TEXQxlldWAuIODdukIb+TR5s+9Ds40eSJrw+1iDDA9IFORPjMELarNQE3myz5XIkWWpdprmJjm1/SxMlWOC8A==} dev: true - /vscode-uri@3.0.7: - resolution: {integrity: sha512-eOpPHogvorZRobNqJGhapa0JdwaxpjVvyBp0QIUMRMSf8ZAlqOdEquKuRmw9Qwu0qXtJIWqFtMkmvJjUZmMjVA==} + /vscode-uri@3.0.8: + resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==} dev: true /wcwidth@1.0.1: @@ -7849,64 +7738,25 @@ packages: dependencies: string-width: 5.1.2 - /workerd@1.20231002.0: - resolution: {integrity: sha512-NFuUQBj30ZguDoPZ6bL40hINiu8aP2Pvxr/3xAdhWOwVFLuObPOiSdQ8qm4JYZ7jovxWjWE4Z7VR2avjIzEksQ==} - engines: {node: '>=16'} - hasBin: true - requiresBuild: true - optionalDependencies: - '@cloudflare/workerd-darwin-64': 1.20231002.0 - '@cloudflare/workerd-darwin-arm64': 1.20231002.0 - '@cloudflare/workerd-linux-64': 1.20231002.0 - '@cloudflare/workerd-linux-arm64': 1.20231002.0 - '@cloudflare/workerd-windows-64': 1.20231002.0 - dev: true - - /workerd@1.20231010.0: - resolution: {integrity: sha512-ghxfBU8fBSBDa8fCBPfzWivYsWpewYftgy70N308C+acQ5AaKNM1QTdkQNm9YWeC5Jpl1YvBX04ojt7lCc3juw==} + /workerd@1.20231025.0: + resolution: {integrity: sha512-W1PFtpMFfvmm+ozBf+u70TE3Pviv7WA4qzDeejHDC4z+PFDq4+3KJCkgffaGBO86h+akWO0hSsc0uXL2zAqofQ==} engines: {node: '>=16'} hasBin: true requiresBuild: true optionalDependencies: - '@cloudflare/workerd-darwin-64': 1.20231010.0 - '@cloudflare/workerd-darwin-arm64': 1.20231010.0 - '@cloudflare/workerd-linux-64': 1.20231010.0 - '@cloudflare/workerd-linux-arm64': 1.20231010.0 - '@cloudflare/workerd-windows-64': 1.20231010.0 + '@cloudflare/workerd-darwin-64': 1.20231025.0 + '@cloudflare/workerd-darwin-arm64': 1.20231025.0 + '@cloudflare/workerd-linux-64': 1.20231025.0 + '@cloudflare/workerd-linux-arm64': 1.20231025.0 + '@cloudflare/workerd-windows-64': 1.20231025.0 /workerpool@6.2.1: resolution: {integrity: sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==} dev: true - /wrangler@3.11.0: - resolution: {integrity: sha512-glR3UPD1RJDokOIOUt56vPLacV7riWdfhPUCx5ZmZWVn0dDXB51ktj9DyK2VU8zHM+yj90OQhwHVdI77mGxWkw==} - engines: {node: '>=16.13.0'} - hasBin: true - dependencies: - '@cloudflare/kv-asset-handler': 0.2.0 - '@esbuild-plugins/node-globals-polyfill': 0.2.3(esbuild@0.17.19) - '@esbuild-plugins/node-modules-polyfill': 0.2.2(esbuild@0.17.19) - blake3-wasm: 2.1.5 - chokidar: 3.5.3 - esbuild: 0.17.19 - miniflare: 3.20231002.1 - nanoid: 3.3.6 - path-to-regexp: 6.2.1 - selfsigned: 2.1.1 - source-map: 0.6.1 - source-map-support: 0.5.21 - xxhash-wasm: 1.0.2 - optionalDependencies: - fsevents: 2.3.3 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - dev: true - - /wrangler@3.13.1: - resolution: {integrity: sha512-CY73h4lfPx/3CmkC/tPj66DRRZ9Y42sMcHys6B6tjCILUo950IeOvnsj759el3/ewFLY4kG4jCrrrikan6TE+Q==} - engines: {node: '>=16.13.0'} + /wrangler@3.15.0: + resolution: {integrity: sha512-kxzK62rD+LRrDeZZzw8cP6FBub71vJCbfAAb594XobXajgXYh3pFjv18Vm8YLxHzoGMhmAOJPA5b4DHq4HEUCw==} + engines: {node: '>=16.17.0'} hasBin: true dependencies: '@cloudflare/kv-asset-handler': 0.2.0 @@ -7915,9 +7765,10 @@ packages: blake3-wasm: 2.1.5 chokidar: 3.5.3 esbuild: 0.17.19 - miniflare: 3.20231010.0 + miniflare: 3.20231025.0 nanoid: 3.3.6 path-to-regexp: 6.2.1 + resolve.exports: 2.0.2 selfsigned: 2.1.1 source-map: 0.6.1 source-map-support: 0.5.21 @@ -8079,8 +7930,8 @@ packages: mustache: 4.2.0 stacktracey: 2.1.8 - /zod@3.21.1: - resolution: {integrity: sha512-+dTu2m6gmCbO9Ahm4ZBDapx2O6ZY9QSPXst2WXjcznPMwf2YNpn3RevLx4KkZp1OPW/ouFcoBtBzFz/LeY69oA==} + /zod@3.22.4: + resolution: {integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==} /zwitch@2.0.4: resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} diff --git a/scripts/package.json b/scripts/package.json index 8e89fb97c..7f46595e8 100644 --- a/scripts/package.json +++ b/scripts/package.json @@ -9,7 +9,7 @@ }, "dependencies": { "arg": "^5.0.2", - "esbuild": "^0.19.2", + "esbuild": "^0.19.5", "globby": "^13.2.2", "kleur": "^4.1.4", "p-limit": "^4.0.0",