diff --git a/.github/workflows/codspeed.yaml b/.github/workflows/codspeed.yaml index de63dc42..bcb818c6 100644 --- a/.github/workflows/codspeed.yaml +++ b/.github/workflows/codspeed.yaml @@ -23,7 +23,7 @@ jobs: - run: pnpm i - - uses: CodSpeedHQ/action@v4 + - uses: CodSpeedHQ/action@v5 with: mode: simulation run: pnpm run bench diff --git a/benches/__shared__/client-server.fetch.ts b/benches/__shared__/client-server.fetch.ts index 7603366a..79f35fb3 100644 --- a/benches/__shared__/client-server.fetch.ts +++ b/benches/__shared__/client-server.fetch.ts @@ -6,7 +6,7 @@ import { toStandardLazyResponse, } from '@standard-server/fetch' -import type { ClientServer } from './client-server.ts' +import type { ClientServer } from './client-server' export function createFetchClientServer(): ClientServer { const clientServer: ClientServer = { diff --git a/benches/__shared__/client-server.node.ts b/benches/__shared__/client-server.node.ts index 6472a77f..ce55f2c4 100644 --- a/benches/__shared__/client-server.node.ts +++ b/benches/__shared__/client-server.node.ts @@ -4,7 +4,7 @@ import type { AddressInfo } from 'node:net' import { toFetchBody, toFetchHeaders, toStandardLazyResponse } from '@standard-server/fetch' import { sendStandardResponse, toStandardLazyRequest } from '@standard-server/node' -import type { ClientServer } from './client-server.ts' +import type { ClientServer } from './client-server' export function createNodeClientServer(): ClientServer { const clientServer: ClientServer = { diff --git a/benches/__shared__/client-server.peer.ts b/benches/__shared__/client-server.peer.ts index c7dd0f9d..a2af78cf 100644 --- a/benches/__shared__/client-server.peer.ts +++ b/benches/__shared__/client-server.peer.ts @@ -7,7 +7,7 @@ import { ServerPeer, } from '@standard-server/peer' -import type { ClientServer } from './client-server.ts' +import type { ClientServer } from './client-server' export function createPeerClientServer(): ClientServer { const clientServer: ClientServer = { diff --git a/benches/e2e.bench.ts b/benches/e2e.bench.ts index 1a589fe8..82f897a4 100644 --- a/benches/e2e.bench.ts +++ b/benches/e2e.bench.ts @@ -1,9 +1,9 @@ import { bench, describe } from 'vitest' -import { createFetchClientServer } from './__shared__/client-server.fetch.ts' -import { createNodeClientServer } from './__shared__/client-server.node.ts' -import { createPeerClientServer } from './__shared__/client-server.peer.ts' -import { echoHandler, roundTrip } from './__shared__/client-server.ts' +import { echoHandler, roundTrip } from './__shared__/client-server' +import { createFetchClientServer } from './__shared__/client-server.fetch' +import { createNodeClientServer } from './__shared__/client-server.node' +import { createPeerClientServer } from './__shared__/client-server.peer' import { asAsyncIteratorObject, asReadableStream, @@ -13,7 +13,7 @@ import { FORM_10KB, JSON_10KB, USP_10KB, -} from './__shared__/payloads.ts' +} from './__shared__/payloads' const adapters = [ ['node-adapter', createNodeClientServer], diff --git a/package.json b/package.json index 63c68da5..34a09289 100644 --- a/package.json +++ b/package.json @@ -35,13 +35,14 @@ "express4": "npm:express@^4.22.3", "fastify": "^5.12.5", "h3": "2.0.2", - "oxfmt": "^0.76.0", - "oxlint": "^1.91.0", - "oxlint-tsgolint": "^7.0.2005", + "oxfmt": "^0.77.0", + "oxlint": "^1.92.0", + "oxlint-tsgolint": "^7.0.2006", "pkg-pr-new": "^0.0.91", "selfsigned": "^5.5.0", "sherif": "^1.13.0", "srvx": "^1.0.5", + "tsdown": "^0.23.7", "typescript": "^7.0.2", "vitest": "^4.1.10", "ws": "^8.22.0" diff --git a/packages/aws-lambda/package.json b/packages/aws-lambda/package.json index ac13f4e9..a2432f3b 100644 --- a/packages/aws-lambda/package.json +++ b/packages/aws-lambda/package.json @@ -46,7 +46,7 @@ } }, "scripts": { - "prepack": "tsc" + "prepack": "tsdown" }, "dependencies": { "@standard-server/core": "workspace:*", diff --git a/packages/aws-lambda/src/body.test.ts b/packages/aws-lambda/src/body.test.ts index 55d1a206..cc5ba846 100644 --- a/packages/aws-lambda/src/body.test.ts +++ b/packages/aws-lambda/src/body.test.ts @@ -2,8 +2,8 @@ import { Buffer } from 'node:buffer' import type { AsyncIteratorClass } from '@standard-server/shared' -import { toStandardBody } from './body.ts' -import type { AnyAPIGatewayProxyEvent, APIGatewayProxyEvent } from './types.ts' +import { toStandardBody } from './body' +import type { AnyAPIGatewayProxyEvent, APIGatewayProxyEvent } from './types' function event(override: Partial): APIGatewayProxyEvent { return { diff --git a/packages/aws-lambda/src/body.ts b/packages/aws-lambda/src/body.ts index 0055aad9..4d59f318 100644 --- a/packages/aws-lambda/src/body.ts +++ b/packages/aws-lambda/src/body.ts @@ -9,8 +9,8 @@ import { import { toAsyncIteratorObject } from '@standard-server/fetch' import { parseEmptyableJSON } from '@standard-server/shared' -import { toStandardHeaders } from './headers.ts' -import type { AnyAPIGatewayProxyEvent } from './types.ts' +import { toStandardHeaders } from './headers' +import type { AnyAPIGatewayProxyEvent } from './types' export interface ToStandardBodyOptions { /** diff --git a/packages/aws-lambda/src/headers.test.ts b/packages/aws-lambda/src/headers.test.ts index 582c4f8c..ea637356 100644 --- a/packages/aws-lambda/src/headers.test.ts +++ b/packages/aws-lambda/src/headers.test.ts @@ -1,4 +1,4 @@ -import { toLambdaHeaders, toStandardHeaders } from './headers.ts' +import { toLambdaHeaders, toStandardHeaders } from './headers' describe('toStandardHeaders (v2)', () => { it('lowercases keys and restores the cookie header', () => { diff --git a/packages/aws-lambda/src/headers.ts b/packages/aws-lambda/src/headers.ts index 8284ca24..c812f019 100644 --- a/packages/aws-lambda/src/headers.ts +++ b/packages/aws-lambda/src/headers.ts @@ -1,7 +1,7 @@ import type { StandardHeaders } from '@standard-server/core' import { toArray } from '@standard-server/shared' -import type { AnyAPIGatewayProxyEvent } from './types.ts' +import type { AnyAPIGatewayProxyEvent } from './types' /** * Convert API Gateway proxy event headers to standard headers. diff --git a/packages/aws-lambda/src/index.test.ts b/packages/aws-lambda/src/index.test.ts index cb0182e3..5a2086e8 100644 --- a/packages/aws-lambda/src/index.test.ts +++ b/packages/aws-lambda/src/index.test.ts @@ -1,4 +1,4 @@ -import * as index from './index.ts' +import * as index from './index' it('export something', () => { expect(Object.keys(index).length).toBeGreaterThan(0) diff --git a/packages/aws-lambda/src/index.ts b/packages/aws-lambda/src/index.ts index 4ab0d9a5..edd37a89 100644 --- a/packages/aws-lambda/src/index.ts +++ b/packages/aws-lambda/src/index.ts @@ -1,6 +1,6 @@ -export * from './body.ts' -export * from './headers.ts' -export * from './request.ts' -export * from './response.ts' -export * from './types.ts' -export * from './url.ts' +export * from './body' +export * from './headers' +export * from './request' +export * from './response' +export * from './types' +export * from './url' diff --git a/packages/aws-lambda/src/request.test.ts b/packages/aws-lambda/src/request.test.ts index 8fdf4b7c..b423dc9e 100644 --- a/packages/aws-lambda/src/request.test.ts +++ b/packages/aws-lambda/src/request.test.ts @@ -2,11 +2,11 @@ import Stream from 'node:stream' import * as StandardServerNode from '@standard-server/node' -import * as Body from './body.ts' -import * as Headers from './headers.ts' -import { toStandardLazyRequest } from './request.ts' -import type { APIGatewayProxyEvent, APIGatewayProxyEventV2, HttpResponseStream } from './types.ts' -import * as Url from './url.ts' +import * as Body from './body' +import * as Headers from './headers' +import { toStandardLazyRequest } from './request' +import type { APIGatewayProxyEvent, APIGatewayProxyEventV2, HttpResponseStream } from './types' +import * as Url from './url' const toStandardBodySpy = vi.spyOn(Body, 'toStandardBody') const toStandardHeadersSpy = vi.spyOn(Headers, 'toStandardHeaders') diff --git a/packages/aws-lambda/src/request.ts b/packages/aws-lambda/src/request.ts index 7d05f117..1bef11f1 100644 --- a/packages/aws-lambda/src/request.ts +++ b/packages/aws-lambda/src/request.ts @@ -1,10 +1,10 @@ import type { StandardLazyRequest } from '@standard-server/core' import { toAbortSignal } from '@standard-server/node' -import { toStandardBody } from './body.ts' -import { toStandardHeaders } from './headers.ts' -import type { AnyAPIGatewayProxyEvent, HttpResponseStream } from './types.ts' -import { toStandardUrl } from './url.ts' +import { toStandardBody } from './body' +import { toStandardHeaders } from './headers' +import type { AnyAPIGatewayProxyEvent, HttpResponseStream } from './types' +import { toStandardUrl } from './url' /** * Convert an API Gateway proxy event to a standard lazy request. diff --git a/packages/aws-lambda/src/response.test.ts b/packages/aws-lambda/src/response.test.ts index 4b11b2b7..db414691 100644 --- a/packages/aws-lambda/src/response.test.ts +++ b/packages/aws-lambda/src/response.test.ts @@ -4,8 +4,8 @@ import Stream from 'node:stream' import type { StandardResponse } from '@standard-server/core' import * as StandardServerNode from '@standard-server/node' -import { sendStandardResponse } from './response.ts' -import type { HttpResponseStream } from './types.ts' +import { sendStandardResponse } from './response' +import type { HttpResponseStream } from './types' const toNodeHttpBodySpy = vi.spyOn(StandardServerNode, 'toNodeHttpBody') diff --git a/packages/aws-lambda/src/response.ts b/packages/aws-lambda/src/response.ts index 78f8cd1b..83fcb0ee 100644 --- a/packages/aws-lambda/src/response.ts +++ b/packages/aws-lambda/src/response.ts @@ -8,8 +8,8 @@ import { toNodeHttpBody, } from '@standard-server/node' -import { toLambdaHeaders } from './headers.ts' -import type { AwsLambdaGlobal, HttpResponseStream } from './types.ts' +import { toLambdaHeaders } from './headers' +import type { AwsLambdaGlobal, HttpResponseStream } from './types' /** * Injected by the Lambda runtime when response streaming is enabled. diff --git a/packages/aws-lambda/src/types.test-d.ts b/packages/aws-lambda/src/types.test-d.ts index 259d7e77..09d8d605 100644 --- a/packages/aws-lambda/src/types.test-d.ts +++ b/packages/aws-lambda/src/types.test-d.ts @@ -5,7 +5,7 @@ import type { APIGatewayProxyEvent, APIGatewayProxyEventV2, HttpResponseStream, -} from './types.ts' +} from './types' it('APIGatewayProxyEvent', () => { expectTypeOf().toExtend() diff --git a/packages/aws-lambda/src/url.test.ts b/packages/aws-lambda/src/url.test.ts index 833c1413..344934d6 100644 --- a/packages/aws-lambda/src/url.test.ts +++ b/packages/aws-lambda/src/url.test.ts @@ -1,4 +1,4 @@ -import { toStandardUrl } from './url.ts' +import { toStandardUrl } from './url' describe('toStandardUrl (v2)', () => { it('works without query string', () => { diff --git a/packages/aws-lambda/src/url.ts b/packages/aws-lambda/src/url.ts index 39b78a92..0bf6f54b 100644 --- a/packages/aws-lambda/src/url.ts +++ b/packages/aws-lambda/src/url.ts @@ -1,7 +1,7 @@ import type { StandardUrl } from '@standard-server/core' import { safeEncodeURIComponent } from '@standard-server/shared' -import type { AnyAPIGatewayProxyEvent } from './types.ts' +import type { AnyAPIGatewayProxyEvent } from './types' const UNENCODED_PATH_CHAR_RE = /[\0-\x20"#<>?^`{}\x7F-\u{10FFFF}]/gu diff --git a/packages/core/package.json b/packages/core/package.json index f57bef52..bba01aca 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -47,7 +47,7 @@ } }, "scripts": { - "prepack": "tsc" + "prepack": "tsdown" }, "dependencies": { "@standard-server/shared": "workspace:*" diff --git a/packages/core/src/event-stream/decoder.test.ts b/packages/core/src/event-stream/decoder.test.ts index 30dfcab2..15d3ae36 100644 --- a/packages/core/src/event-stream/decoder.test.ts +++ b/packages/core/src/event-stream/decoder.test.ts @@ -1,9 +1,5 @@ -import { - decodeEventStreamMessage, - EventStreamDecoder, - EventStreamDecoderStream, -} from './decoder.ts' -import type { EventStreamMessage } from './types.ts' +import { decodeEventStreamMessage, EventStreamDecoder, EventStreamDecoderStream } from './decoder' +import type { EventStreamMessage } from './types' function feedAll(chunks: string[]): EventStreamMessage[] { const events: EventStreamMessage[] = [] @@ -457,7 +453,7 @@ describe('eventStreamDecoderStream', () => { vi.resetModules() }) - const module = await import('./decoder.ts') + const module = await import('./decoder') expect(module.EventStreamDecoderStream).toBeDefined() expect(module.decodeEventStreamMessage('data: hello\n\n')).toEqual({ diff --git a/packages/core/src/event-stream/decoder.ts b/packages/core/src/event-stream/decoder.ts index 363acdad..e372d9fe 100644 --- a/packages/core/src/event-stream/decoder.ts +++ b/packages/core/src/event-stream/decoder.ts @@ -1,6 +1,6 @@ -import { isEventStreamMessageId, isEventStreamMessageRetry } from './encoder.ts' -import { EventStreamDecoderError } from './error.ts' -import type { EventStreamMessage } from './types.ts' +import { isEventStreamMessageId, isEventStreamMessageRetry } from './encoder' +import { EventStreamDecoderError } from './error' +import type { EventStreamMessage } from './types' // A line ending is CR, LF or CRLF. const LINE_ENDING_REGEX = /\r\n?|\n/ diff --git a/packages/core/src/event-stream/encoder.test.ts b/packages/core/src/event-stream/encoder.test.ts index 876172cd..78011591 100644 --- a/packages/core/src/event-stream/encoder.test.ts +++ b/packages/core/src/event-stream/encoder.test.ts @@ -1,4 +1,4 @@ -import { decodeEventStreamMessage } from './decoder.ts' +import { decodeEventStreamMessage } from './decoder' import { assertEventStreamMessageComment, assertEventStreamMessageId, @@ -10,8 +10,8 @@ import { isEventStreamMessageComment, isEventStreamMessageId, isEventStreamMessageRetry, -} from './encoder.ts' -import type { EventStreamMessage } from './types.ts' +} from './encoder' +import type { EventStreamMessage } from './types' describe('predicates', () => { it('accept valid values', () => { diff --git a/packages/core/src/event-stream/encoder.ts b/packages/core/src/event-stream/encoder.ts index fe920661..ee1f4414 100644 --- a/packages/core/src/event-stream/encoder.ts +++ b/packages/core/src/event-stream/encoder.ts @@ -1,5 +1,5 @@ -import { EventStreamEncoderError } from './error.ts' -import type { EventStreamMessage } from './types.ts' +import { EventStreamEncoderError } from './error' +import type { EventStreamMessage } from './types' const EVENT_STREAM_LINE_ENDING_REGEX = /\r\n|[\n\r]/ const EVENT_STREAM_LINE_ENDING_GLOBAL_REGEX = /\r\n|[\n\r]/g diff --git a/packages/core/src/event-stream/error.test.ts b/packages/core/src/event-stream/error.test.ts index 43fa7933..b68af261 100644 --- a/packages/core/src/event-stream/error.test.ts +++ b/packages/core/src/event-stream/error.test.ts @@ -1,4 +1,4 @@ -import { EventStreamErrorEvent } from './error.ts' +import { EventStreamErrorEvent } from './error' it('errorEvent', () => { const errorEvent = new EventStreamErrorEvent('data', { cause: 'cause' }) diff --git a/packages/core/src/event-stream/index.ts b/packages/core/src/event-stream/index.ts index 4224be0d..5ebd0768 100644 --- a/packages/core/src/event-stream/index.ts +++ b/packages/core/src/event-stream/index.ts @@ -1,5 +1,5 @@ -export * from './decoder.ts' -export * from './encoder.ts' -export * from './error.ts' -export * from './meta.ts' -export * from './types.ts' +export * from './decoder' +export * from './encoder' +export * from './error' +export * from './meta' +export * from './types' diff --git a/packages/core/src/event-stream/meta.test.ts b/packages/core/src/event-stream/meta.test.ts index c9ac2a99..0b51e318 100644 --- a/packages/core/src/event-stream/meta.test.ts +++ b/packages/core/src/event-stream/meta.test.ts @@ -1,4 +1,4 @@ -import { getEventMeta, unwrapEvent, withEventMeta } from './meta.ts' +import { getEventMeta, unwrapEvent, withEventMeta } from './meta' it('get/withEventMeta', () => { const data = { value: 123, meta: undefined } diff --git a/packages/core/src/event-stream/meta.ts b/packages/core/src/event-stream/meta.ts index 2231807c..1a9941b9 100644 --- a/packages/core/src/event-stream/meta.ts +++ b/packages/core/src/event-stream/meta.ts @@ -4,8 +4,8 @@ import { assertEventStreamMessageComment, assertEventStreamMessageId, assertEventStreamMessageRetry, -} from './encoder.ts' -import type { EventMeta } from './types.ts' +} from './encoder' +import type { EventMeta } from './types' const EVENT_META_SYMBOL = Symbol.for('STANDARD_SERVER_EVENT_META') const EVENT_SOURCE_SYMBOL = Symbol.for('STANDARD_SERVER_EVENT_SOURCE') diff --git a/packages/core/src/index.test.ts b/packages/core/src/index.test.ts index cb0182e3..5a2086e8 100644 --- a/packages/core/src/index.test.ts +++ b/packages/core/src/index.test.ts @@ -1,4 +1,4 @@ -import * as index from './index.ts' +import * as index from './index' it('export something', () => { expect(Object.keys(index).length).toBeGreaterThan(0) diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index 020a465e..ce7f5c8d 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -1,4 +1,4 @@ -export * from './event-stream/index.ts' -export * from './types.ts' -export * from './utils.ts' -export * from './validators.ts' +export * from './event-stream/index' +export * from './types' +export * from './utils' +export * from './validators' diff --git a/packages/core/src/utils.test.ts b/packages/core/src/utils.test.ts index 8dff34ae..99a590c0 100644 --- a/packages/core/src/utils.test.ts +++ b/packages/core/src/utils.test.ts @@ -9,7 +9,7 @@ import { mergeStandardHeaders, parseStandardUrl, resolveStandardBodyHint, -} from './utils.ts' +} from './utils' beforeEach(() => { vi.clearAllMocks() diff --git a/packages/core/src/utils.ts b/packages/core/src/utils.ts index 33eeea7f..73aefdf2 100644 --- a/packages/core/src/utils.ts +++ b/packages/core/src/utils.ts @@ -5,7 +5,7 @@ import { toArray, } from '@standard-server/shared' -import type { StandardBody, StandardBodyHint, StandardHeaders, StandardUrl } from './types.ts' +import type { StandardBody, StandardBodyHint, StandardHeaders, StandardUrl } from './types' const FALLBACK_FILENAME_UNSAFE_CHAR_REGEX = /[^\x20-\x7E]|[;=]/g const QUOTED_STRING_SPECIAL_CHAR_REGEX = /[\\"]/g diff --git a/packages/core/src/validators.test.ts b/packages/core/src/validators.test.ts index 09deff37..f983d3bc 100644 --- a/packages/core/src/validators.test.ts +++ b/packages/core/src/validators.test.ts @@ -5,7 +5,7 @@ import { isStandardResponse, isStandardStatus, isStandardUrl, -} from './validators.ts' +} from './validators' describe('isStandardMethod', () => { it('accepts standard & custom HTTP verbs', () => { diff --git a/packages/core/src/validators.ts b/packages/core/src/validators.ts index 1fd9a110..a68d63f6 100644 --- a/packages/core/src/validators.ts +++ b/packages/core/src/validators.ts @@ -6,7 +6,7 @@ import type { StandardRequest, StandardResponse, StandardUrl, -} from './types.ts' +} from './types' export function isStandardMethod(maybe: unknown): maybe is StandardMethod { return typeof maybe === 'string' diff --git a/packages/fastify/package.json b/packages/fastify/package.json index 3a29540e..e6ba49e8 100644 --- a/packages/fastify/package.json +++ b/packages/fastify/package.json @@ -44,7 +44,7 @@ } }, "scripts": { - "prepack": "tsc" + "prepack": "tsdown" }, "dependencies": { "@standard-server/core": "workspace:*", diff --git a/packages/fastify/src/index.test.ts b/packages/fastify/src/index.test.ts index cb0182e3..5a2086e8 100644 --- a/packages/fastify/src/index.test.ts +++ b/packages/fastify/src/index.test.ts @@ -1,4 +1,4 @@ -import * as index from './index.ts' +import * as index from './index' it('export something', () => { expect(Object.keys(index).length).toBeGreaterThan(0) diff --git a/packages/fastify/src/index.ts b/packages/fastify/src/index.ts index 10541367..47b63ba4 100644 --- a/packages/fastify/src/index.ts +++ b/packages/fastify/src/index.ts @@ -1,3 +1,3 @@ -export * from './request.ts' -export * from './response.ts' -export * from './types.ts' +export * from './request' +export * from './response' +export * from './types' diff --git a/packages/fastify/src/request.test.ts b/packages/fastify/src/request.test.ts index d3034c55..c7048dbb 100644 --- a/packages/fastify/src/request.test.ts +++ b/packages/fastify/src/request.test.ts @@ -3,7 +3,7 @@ import * as StandardServerNode from '@standard-server/node' import Fastify from 'fastify' import request from 'supertest' -import { toStandardLazyRequest } from './request.ts' +import { toStandardLazyRequest } from './request' const toStandardBodySpy = vi.spyOn(StandardServerNode, 'toStandardBody') const toStandardMethodSpy = vi.spyOn(StandardServerNode, 'toStandardMethod') diff --git a/packages/fastify/src/request.ts b/packages/fastify/src/request.ts index 5c6c7fe2..dc10e147 100644 --- a/packages/fastify/src/request.ts +++ b/packages/fastify/src/request.ts @@ -6,7 +6,7 @@ import { toStandardUrl, } from '@standard-server/node' -import type { AnyFastifyReply, AnyFastifyRequest } from './types.ts' +import type { AnyFastifyReply, AnyFastifyRequest } from './types' export function toStandardLazyRequest( req: AnyFastifyRequest, diff --git a/packages/fastify/src/response.test.ts b/packages/fastify/src/response.test.ts index 019940da..66340386 100644 --- a/packages/fastify/src/response.test.ts +++ b/packages/fastify/src/response.test.ts @@ -7,7 +7,7 @@ import * as StandardServerNode from '@standard-server/node' import Fastify from 'fastify' import request from 'supertest' -import { sendStandardResponse } from './response.ts' +import { sendStandardResponse } from './response' const toNodeHttpBodySpy = vi.spyOn(StandardServerNode, 'toNodeHttpBody') diff --git a/packages/fastify/src/response.ts b/packages/fastify/src/response.ts index c784ecc5..4d2cb980 100644 --- a/packages/fastify/src/response.ts +++ b/packages/fastify/src/response.ts @@ -8,7 +8,7 @@ import { toNodeHttpBody, } from '@standard-server/node' -import type { AnyFastifyReply } from './types.ts' +import type { AnyFastifyReply } from './types' export interface SendStandardResponseOptions extends ToNodeHttpBodyOptions {} diff --git a/packages/fastify/src/types.test-d.ts b/packages/fastify/src/types.test-d.ts index 087dfa34..3577b81b 100644 --- a/packages/fastify/src/types.test-d.ts +++ b/packages/fastify/src/types.test-d.ts @@ -2,7 +2,7 @@ import type { StandardHeaders } from '@standard-server/core' import type { NodeHttpRequest, NodeHttpResponse } from '@standard-server/node' import Fastify from 'fastify' -import type { AnyFastifyReply, AnyFastifyRequest } from './types.ts' +import type { AnyFastifyReply, AnyFastifyRequest } from './types' /** * Passing a concrete fastify request/reply here only compiles if the widened diff --git a/packages/fastify/tests/http2.test.ts b/packages/fastify/tests/http2.test.ts index 14a0a6d0..25c3383c 100644 --- a/packages/fastify/tests/http2.test.ts +++ b/packages/fastify/tests/http2.test.ts @@ -3,7 +3,7 @@ import type { AddressInfo } from 'node:net' import Fastify from 'fastify' -import { sendStandardResponse, toStandardLazyRequest } from '../src/index.ts' +import { sendStandardResponse, toStandardLazyRequest } from '../src/index' /** * `@standard-server/node` supports both node http and http2, so the fastify adapter diff --git a/packages/fetch/package.json b/packages/fetch/package.json index 25f81701..ef43669f 100644 --- a/packages/fetch/package.json +++ b/packages/fetch/package.json @@ -48,7 +48,7 @@ } }, "scripts": { - "prepack": "tsc" + "prepack": "tsdown" }, "dependencies": { "@standard-server/core": "workspace:*", diff --git a/packages/fetch/src/body.test.ts b/packages/fetch/src/body.test.ts index e7e8cfd9..22981266 100644 --- a/packages/fetch/src/body.test.ts +++ b/packages/fetch/src/body.test.ts @@ -2,9 +2,9 @@ import type { StandardBody, StandardBodyHint } from '@standard-server/core' import * as StandardServerModule from '@standard-server/core' import { isAsyncIteratorObject } from '@standard-server/shared' -import { toFetchBody, toStandardBody } from './body.ts' -import * as EventStreamModule from './event-stream.ts' -import { toFetchHeaders } from './headers.ts' +import { toFetchBody, toStandardBody } from './body' +import * as EventStreamModule from './event-stream' +import { toFetchHeaders } from './headers' const generateContentDispositionSpy = vi.spyOn(StandardServerModule, 'generateContentDisposition') const getFilenameFromContentDispositionSpy = vi.spyOn( diff --git a/packages/fetch/src/body.ts b/packages/fetch/src/body.ts index ff1b70aa..92f5c424 100644 --- a/packages/fetch/src/body.ts +++ b/packages/fetch/src/body.ts @@ -7,8 +7,8 @@ import { } from '@standard-server/core' import { isAsyncIteratorObject, parseEmptyableJSON, stringifyJSON } from '@standard-server/shared' -import type { ToEventStreamOptions } from './event-stream.ts' -import { toAsyncIteratorObject, toEventStream } from './event-stream.ts' +import type { ToEventStreamOptions } from './event-stream' +import { toAsyncIteratorObject, toEventStream } from './event-stream' export interface ToStandardBodyOptions { /** diff --git a/packages/fetch/src/event-stream.test.ts b/packages/fetch/src/event-stream.test.ts index 6701ca0c..9c9a2a1b 100644 --- a/packages/fetch/src/event-stream.test.ts +++ b/packages/fetch/src/event-stream.test.ts @@ -6,7 +6,7 @@ import { } from '@standard-server/core' import { isAsyncIteratorObject, sleep } from '@standard-server/shared' -import { toAsyncIteratorObject, toEventStream } from './event-stream.ts' +import { toAsyncIteratorObject, toEventStream } from './event-stream' beforeEach(() => { vi.clearAllMocks() diff --git a/packages/fetch/src/headers.test.ts b/packages/fetch/src/headers.test.ts index dd27498d..5073d104 100644 --- a/packages/fetch/src/headers.test.ts +++ b/packages/fetch/src/headers.test.ts @@ -1,6 +1,6 @@ import type { StandardHeaders } from '@standard-server/core' -import { toFetchHeaders, toStandardHeaders } from './headers.ts' +import { toFetchHeaders, toStandardHeaders } from './headers' it('toStandardHeaders', () => { const headers = new Headers() diff --git a/packages/fetch/src/index.test.ts b/packages/fetch/src/index.test.ts index cb0182e3..5a2086e8 100644 --- a/packages/fetch/src/index.test.ts +++ b/packages/fetch/src/index.test.ts @@ -1,4 +1,4 @@ -import * as index from './index.ts' +import * as index from './index' it('export something', () => { expect(Object.keys(index).length).toBeGreaterThan(0) diff --git a/packages/fetch/src/index.ts b/packages/fetch/src/index.ts index 7a47fd4c..372e73b5 100644 --- a/packages/fetch/src/index.ts +++ b/packages/fetch/src/index.ts @@ -1,6 +1,6 @@ -export * from './body.ts' -export * from './event-stream.ts' -export * from './headers.ts' -export * from './request.ts' -export * from './response.ts' -export * from './url.ts' +export * from './body' +export * from './event-stream' +export * from './headers' +export * from './request' +export * from './response' +export * from './url' diff --git a/packages/fetch/src/request.test.ts b/packages/fetch/src/request.test.ts index 4c135669..d7ff1f59 100644 --- a/packages/fetch/src/request.test.ts +++ b/packages/fetch/src/request.test.ts @@ -1,7 +1,7 @@ -import * as Body from './body.ts' -import * as Headers from './headers.ts' -import { toStandardLazyRequest } from './request.ts' -import * as Url from './url.ts' +import * as Body from './body' +import * as Headers from './headers' +import { toStandardLazyRequest } from './request' +import * as Url from './url' const toStandardBodySpy = vi.spyOn(Body, 'toStandardBody') const toFetchBodySpy = vi.spyOn(Body, 'toFetchBody') diff --git a/packages/fetch/src/request.ts b/packages/fetch/src/request.ts index 20089f2e..adc6ce57 100644 --- a/packages/fetch/src/request.ts +++ b/packages/fetch/src/request.ts @@ -1,8 +1,8 @@ import type { StandardLazyRequest } from '@standard-server/core' -import { toStandardBody } from './body.ts' -import { toStandardHeaders } from './headers.ts' -import { toStandardUrl } from './url.ts' +import { toStandardBody } from './body' +import { toStandardHeaders } from './headers' +import { toStandardUrl } from './url' /** * Convert a fetch request to a standard request. diff --git a/packages/fetch/src/response.test.ts b/packages/fetch/src/response.test.ts index 6f7a893c..6b831f46 100644 --- a/packages/fetch/src/response.test.ts +++ b/packages/fetch/src/response.test.ts @@ -1,9 +1,9 @@ import type { StandardResponse } from '@standard-server/core' import { AsyncIteratorClass } from '@standard-server/shared' -import * as Body from './body.ts' -import * as Headers from './headers.ts' -import { toFetchResponse, toStandardLazyResponse } from './response.ts' +import * as Body from './body' +import * as Headers from './headers' +import { toFetchResponse, toStandardLazyResponse } from './response' const toFetchBodySpy = vi.spyOn(Body, 'toFetchBody') const toStandardBodySpy = vi.spyOn(Body, 'toStandardBody') diff --git a/packages/fetch/src/response.ts b/packages/fetch/src/response.ts index b7b094ad..adf17523 100644 --- a/packages/fetch/src/response.ts +++ b/packages/fetch/src/response.ts @@ -1,8 +1,8 @@ import type { StandardLazyResponse, StandardResponse } from '@standard-server/core' -import type { ToFetchBodyOptions } from './body.ts' -import { toFetchBody, toStandardBody } from './body.ts' -import { toFetchHeaders, toStandardHeaders } from './headers.ts' +import type { ToFetchBodyOptions } from './body' +import { toFetchBody, toStandardBody } from './body' +import { toFetchHeaders, toStandardHeaders } from './headers' export interface ToFetchResponseOptions extends ToFetchBodyOptions {} diff --git a/packages/fetch/src/url.test.ts b/packages/fetch/src/url.test.ts index 9549c635..a675f8ef 100644 --- a/packages/fetch/src/url.test.ts +++ b/packages/fetch/src/url.test.ts @@ -1,4 +1,4 @@ -import { toStandardUrl } from './url.ts' +import { toStandardUrl } from './url' it('toStandardUrl', () => { expect(toStandardUrl(new URL('http://localhost:3000/'))).toBe('/') diff --git a/packages/node/package.json b/packages/node/package.json index cb86b89c..b1a3caec 100644 --- a/packages/node/package.json +++ b/packages/node/package.json @@ -46,7 +46,7 @@ } }, "scripts": { - "prepack": "tsc" + "prepack": "tsdown" }, "dependencies": { "@standard-server/core": "workspace:*", diff --git a/packages/node/src/body.test.ts b/packages/node/src/body.test.ts index 93fbaa84..5510fe31 100644 --- a/packages/node/src/body.test.ts +++ b/packages/node/src/body.test.ts @@ -10,10 +10,10 @@ import { toFetchHeaders } from '@standard-server/fetch' import { isAsyncIteratorObject } from '@standard-server/shared' import request from 'supertest' -import { toNodeHttpBody, toStandardBody } from './body.ts' -import * as EventStreamModule from './event-stream.ts' -import type { NodeHttpRequest } from './types.ts' -import * as UtilsModule from './utils.ts' +import { toNodeHttpBody, toStandardBody } from './body' +import * as EventStreamModule from './event-stream' +import type { NodeHttpRequest } from './types' +import * as UtilsModule from './utils' const toEventStreamSpy = vi.spyOn(EventStreamModule, 'toEventStream') const toWebReadableStreamSpy = vi.spyOn(UtilsModule, 'toWebReadableStream') diff --git a/packages/node/src/body.ts b/packages/node/src/body.ts index c1d2ba0e..f58ff00d 100644 --- a/packages/node/src/body.ts +++ b/packages/node/src/body.ts @@ -9,10 +9,10 @@ import { } from '@standard-server/core' import { isAsyncIteratorObject, parseEmptyableJSON, stringifyJSON } from '@standard-server/shared' -import type { ToEventStreamOptions } from './event-stream.ts' -import { toAsyncIteratorObject, toEventStream } from './event-stream.ts' -import type { NodeHttpRequest } from './types.ts' -import { readableChunkToBytes, toWebReadableStream } from './utils.ts' +import type { ToEventStreamOptions } from './event-stream' +import { toAsyncIteratorObject, toEventStream } from './event-stream' +import type { NodeHttpRequest } from './types' +import { readableChunkToBytes, toWebReadableStream } from './utils' export interface ToStandardBodyOptions { /** diff --git a/packages/node/src/event-stream.test.ts b/packages/node/src/event-stream.test.ts index 170b7c9f..2a576c6a 100644 --- a/packages/node/src/event-stream.test.ts +++ b/packages/node/src/event-stream.test.ts @@ -3,8 +3,8 @@ import { Readable } from 'node:stream' import * as FetchAdapter from '@standard-server/fetch' import { isAsyncIteratorObject } from '@standard-server/shared' -import { toAsyncIteratorObject, toEventStream } from './event-stream.ts' -import * as UtilsModule from './utils.ts' +import { toAsyncIteratorObject, toEventStream } from './event-stream' +import * as UtilsModule from './utils' const toAsyncIteratorObjectFetch = vi.spyOn(FetchAdapter, 'toAsyncIteratorObject') const toEventStreamFetch = vi.spyOn(FetchAdapter, 'toEventStream') diff --git a/packages/node/src/event-stream.ts b/packages/node/src/event-stream.ts index 50a402da..e21631ea 100644 --- a/packages/node/src/event-stream.ts +++ b/packages/node/src/event-stream.ts @@ -7,7 +7,7 @@ import { } from '@standard-server/fetch' import type { AsyncIteratorClass } from '@standard-server/shared' -import { toWebReadableStream } from './utils.ts' +import { toWebReadableStream } from './utils' export function toAsyncIteratorObject(stream: Readable): AsyncIteratorClass { return toAsyncIteratorObjectFetch(toWebReadableStream(stream)) diff --git a/packages/node/src/index.test.ts b/packages/node/src/index.test.ts index cb0182e3..5a2086e8 100644 --- a/packages/node/src/index.test.ts +++ b/packages/node/src/index.test.ts @@ -1,4 +1,4 @@ -import * as index from './index.ts' +import * as index from './index' it('export something', () => { expect(Object.keys(index).length).toBeGreaterThan(0) diff --git a/packages/node/src/index.ts b/packages/node/src/index.ts index 4e2ddbc3..0ab03144 100644 --- a/packages/node/src/index.ts +++ b/packages/node/src/index.ts @@ -1,9 +1,9 @@ -export * from './body.ts' -export * from './event-stream.ts' -export * from './method.ts' -export * from './request.ts' -export * from './response.ts' -export * from './signal.ts' -export * from './types.ts' -export * from './url.ts' -export * from './utils.ts' +export * from './body' +export * from './event-stream' +export * from './method' +export * from './request' +export * from './response' +export * from './signal' +export * from './types' +export * from './url' +export * from './utils' diff --git a/packages/node/src/method.test.ts b/packages/node/src/method.test.ts index 1df7bcde..066be945 100644 --- a/packages/node/src/method.test.ts +++ b/packages/node/src/method.test.ts @@ -1,4 +1,4 @@ -import { toStandardMethod } from './method.ts' +import { toStandardMethod } from './method' it('toStandardMethod', () => { expect(toStandardMethod('GET')).toEqual('GET') diff --git a/packages/node/src/request.test.ts b/packages/node/src/request.test.ts index 167667a7..8f409eb6 100644 --- a/packages/node/src/request.test.ts +++ b/packages/node/src/request.test.ts @@ -3,9 +3,9 @@ import type { IncomingMessage, ServerResponse } from 'node:http' import type { StandardLazyRequest } from '@standard-server/core' import request from 'supertest' -import * as Body from './body.ts' -import { toStandardLazyRequest } from './request.ts' -import * as Signal from './signal.ts' +import * as Body from './body' +import { toStandardLazyRequest } from './request' +import * as Signal from './signal' const toStandardBodySpy = vi.spyOn(Body, 'toStandardBody') const toAbortSignalSpy = vi.spyOn(Signal, 'toAbortSignal') diff --git a/packages/node/src/request.ts b/packages/node/src/request.ts index ddc011a4..648d0ca5 100644 --- a/packages/node/src/request.ts +++ b/packages/node/src/request.ts @@ -1,10 +1,10 @@ import type { StandardLazyRequest } from '@standard-server/core' -import { toStandardBody } from './body.ts' -import { toStandardMethod } from './method.ts' -import { toAbortSignal } from './signal.ts' -import type { NodeHttpRequest, NodeHttpResponse } from './types.ts' -import { toStandardUrl } from './url.ts' +import { toStandardBody } from './body' +import { toStandardMethod } from './method' +import { toAbortSignal } from './signal' +import type { NodeHttpRequest, NodeHttpResponse } from './types' +import { toStandardUrl } from './url' export function toStandardLazyRequest( req: NodeHttpRequest, diff --git a/packages/node/src/response.test.ts b/packages/node/src/response.test.ts index a45e029b..67118fc3 100644 --- a/packages/node/src/response.test.ts +++ b/packages/node/src/response.test.ts @@ -10,8 +10,8 @@ import type { StandardResponse } from '@standard-server/core' import { promiseWithResolvers } from '@standard-server/shared' import request from 'supertest' -import * as Body from './body.ts' -import { sendStandardResponse } from './response.ts' +import * as Body from './body' +import { sendStandardResponse } from './response' const toNodeHttpBodySpy = vi.spyOn(Body, 'toNodeHttpBody') diff --git a/packages/node/src/response.ts b/packages/node/src/response.ts index a5087f37..80f505e4 100644 --- a/packages/node/src/response.ts +++ b/packages/node/src/response.ts @@ -1,14 +1,14 @@ import type { StandardResponse } from '@standard-server/core' -import type { ToNodeHttpBodyOptions } from './body.ts' -import { toNodeHttpBody } from './body.ts' -import type { NodeHttpResponse } from './types.ts' +import type { ToNodeHttpBodyOptions } from './body' +import { toNodeHttpBody } from './body' +import type { NodeHttpResponse } from './types' import { canWriteNodeHttpResponse, destroyNodeHttpBody, getNodeHttpResponseError, isNodeHttpResponseDisconnectError, -} from './utils.ts' +} from './utils' export interface SendStandardResponseOptions extends ToNodeHttpBodyOptions {} diff --git a/packages/node/src/signal.test.ts b/packages/node/src/signal.test.ts index eff50bd3..e765eab9 100644 --- a/packages/node/src/signal.test.ts +++ b/packages/node/src/signal.test.ts @@ -3,7 +3,7 @@ import Stream from 'node:stream' import { AbortError } from '@standard-server/shared' -import { toAbortSignal } from './signal.ts' +import { toAbortSignal } from './signal' describe('toAbortSignal', async () => { it('on success', async () => { diff --git a/packages/node/src/signal.ts b/packages/node/src/signal.ts index d55744e5..9fbbb736 100644 --- a/packages/node/src/signal.ts +++ b/packages/node/src/signal.ts @@ -2,8 +2,8 @@ import type Stream from 'node:stream' import { AbortError } from '@standard-server/shared' -import type { NodeHttpResponse } from './types.ts' -import { getNodeHttpResponseError } from './utils.ts' +import type { NodeHttpResponse } from './types' +import { getNodeHttpResponseError } from './utils' export function toAbortSignal(res: Stream.Writable | NodeHttpResponse): AbortSignal { const controller = new AbortController() diff --git a/packages/node/src/url.test.ts b/packages/node/src/url.test.ts index 8e23484e..c4917210 100644 --- a/packages/node/src/url.test.ts +++ b/packages/node/src/url.test.ts @@ -2,7 +2,7 @@ import http from 'node:http' import type { AddressInfo } from 'node:net' import net from 'node:net' -import { toStandardUrl } from './url.ts' +import { toStandardUrl } from './url' describe('toStandardUrl', () => { it('origin-form', () => { diff --git a/packages/node/src/url.ts b/packages/node/src/url.ts index 6230fe9e..83c0e974 100644 --- a/packages/node/src/url.ts +++ b/packages/node/src/url.ts @@ -1,7 +1,7 @@ import type { StandardUrl } from '@standard-server/core' import { toStandardUrl as toStandardUrlFetch } from '@standard-server/fetch' -import type { NodeHttpRequest } from './types.ts' +import type { NodeHttpRequest } from './types' export function toStandardUrl(req: Pick): StandardUrl { // prefer originalUrl over url, especially useful in express.js middleware diff --git a/packages/node/src/utils.test.ts b/packages/node/src/utils.test.ts index be270924..78749741 100644 --- a/packages/node/src/utils.test.ts +++ b/packages/node/src/utils.test.ts @@ -15,7 +15,7 @@ import { getNodeHttpResponseError, isNodeHttpResponseDisconnectError, toWebReadableStream, -} from './utils.ts' +} from './utils' describe('canWriteNodeHttpResponse', () => { it('on http1 response aborted by client', async ({ onTestFinished }) => { diff --git a/packages/node/src/utils.ts b/packages/node/src/utils.ts index 19e3c70b..816930c1 100644 --- a/packages/node/src/utils.ts +++ b/packages/node/src/utils.ts @@ -4,7 +4,7 @@ import { Http2ServerRequest } from 'node:http2' import type { Readable } from 'node:stream' import type Stream from 'node:stream' -import type { NodeHttpResponse } from './types.ts' +import type { NodeHttpResponse } from './types' /** * A cancel-safe alternative to `Readable.toWeb`. diff --git a/packages/peer/package.json b/packages/peer/package.json index 1c9dccf0..adc78707 100644 --- a/packages/peer/package.json +++ b/packages/peer/package.json @@ -45,7 +45,7 @@ } }, "scripts": { - "prepack": "tsc" + "prepack": "tsdown" }, "dependencies": { "@standard-server/core": "workspace:*", diff --git a/packages/peer/src/body.test.ts b/packages/peer/src/body.test.ts index e8c73e88..d0cb6de2 100644 --- a/packages/peer/src/body.test.ts +++ b/packages/peer/src/body.test.ts @@ -2,8 +2,8 @@ import type { StandardBody, StandardBodyHint, StandardHeaders } from '@standard- import { generateContentDisposition } from '@standard-server/core' import { AsyncIteratorClass, isAsyncIteratorObject, Queue } from '@standard-server/shared' -import { encodeAtomicStandardBody, toStandardBody } from './body.ts' -import type { PeerRequestMessage } from './types.ts' +import { encodeAtomicStandardBody, toStandardBody } from './body' +import type { PeerRequestMessage } from './types' describe('toStandardBody', () => { afterEach(() => { diff --git a/packages/peer/src/body.ts b/packages/peer/src/body.ts index 3c47dd36..a348c9b2 100644 --- a/packages/peer/src/body.ts +++ b/packages/peer/src/body.ts @@ -7,14 +7,14 @@ import { import type { AsyncCleanupFn } from '@standard-server/shared' import { isAsyncIteratorObject, Queue } from '@standard-server/shared' -import { toAsyncIteratorObject } from './event-stream.ts' -import { toOctetStream } from './octet-stream.ts' +import { toAsyncIteratorObject } from './event-stream' +import { toOctetStream } from './octet-stream' import type { PeerEventStreamMessage, PeerOctetStreamMessage, PeerRequestMessage, PeerResponseMessage, -} from './types.ts' +} from './types' export interface ToStandardBodyResult { resolveBody: () => Promise diff --git a/packages/peer/src/client.test.ts b/packages/peer/src/client.test.ts index 6e711a00..86ac3ea9 100644 --- a/packages/peer/src/client.test.ts +++ b/packages/peer/src/client.test.ts @@ -8,8 +8,8 @@ import { sleep, } from '@standard-server/shared' -import * as Body from './body.ts' -import { ClientPeer } from './client.ts' +import * as Body from './body' +import { ClientPeer } from './client' import type { ClientPeerSendMessage, PeerCancelMessage, @@ -18,7 +18,7 @@ import type { PeerRequestMessage, PeerResponseMessage, PeerStreamCancelMessage, -} from './types.ts' +} from './types' const toStandardBodySpy = vi.spyOn(Body, 'toStandardBody') diff --git a/packages/peer/src/client.ts b/packages/peer/src/client.ts index 9bd52bd0..8f7ae2be 100644 --- a/packages/peer/src/client.ts +++ b/packages/peer/src/client.ts @@ -9,15 +9,15 @@ import { throwIfAborted, } from '@standard-server/shared' -import { encodeAtomicStandardBody, toStandardBody } from './body.ts' -import { EventStreamTransmitter } from './event-stream.ts' -import { OctetStreamTransmitter } from './octet-stream.ts' +import { encodeAtomicStandardBody, toStandardBody } from './body' +import { EventStreamTransmitter } from './event-stream' +import { OctetStreamTransmitter } from './octet-stream' import type { ClientPeerSendMessage, PeerEventStreamMessage, PeerOctetStreamMessage, ServerPeerSendMessage, -} from './types.ts' +} from './types' interface ClientPeerRequestStateInternal { resolve?: ((response: StandardLazyResponse) => void) | undefined diff --git a/packages/peer/src/codec.test.ts b/packages/peer/src/codec.test.ts index 7e8db670..bad6302b 100644 --- a/packages/peer/src/codec.test.ts +++ b/packages/peer/src/codec.test.ts @@ -1,5 +1,5 @@ -import { decodePeerMessage, encodePeerMessage } from './codec.ts' -import type { PeerMessage } from './types.ts' +import { decodePeerMessage, encodePeerMessage } from './codec' +import type { PeerMessage } from './types' describe('codec', () => { it('handles simple message (JSON only)', async () => { diff --git a/packages/peer/src/codec.ts b/packages/peer/src/codec.ts index 7cd4bf01..91005e90 100644 --- a/packages/peer/src/codec.ts +++ b/packages/peer/src/codec.ts @@ -1,7 +1,7 @@ import { stringifyJSON } from '@standard-server/shared' -import type { PeerMessage } from './types.ts' -import { isPeerMessage } from './validators.ts' +import type { PeerMessage } from './types' +import { isPeerMessage } from './validators' /** * Single-byte delimiter separating the JSON payload from trailing binary data. diff --git a/packages/peer/src/event-stream.test.ts b/packages/peer/src/event-stream.test.ts index 4059dc9f..803772f0 100644 --- a/packages/peer/src/event-stream.test.ts +++ b/packages/peer/src/event-stream.test.ts @@ -1,8 +1,8 @@ import { EventStreamErrorEvent, unwrapEvent, withEventMeta } from '@standard-server/core' import { AsyncIteratorClass, Queue, sleep } from '@standard-server/shared' -import { EventStreamTransmitter, toAsyncIteratorObject } from './event-stream.ts' -import type { PeerEventStreamMessage } from './types.ts' +import { EventStreamTransmitter, toAsyncIteratorObject } from './event-stream' +import type { PeerEventStreamMessage } from './types' describe('toAsyncIteratorObject', () => { it('yields message events', async () => { diff --git a/packages/peer/src/event-stream.ts b/packages/peer/src/event-stream.ts index bf807964..42a4647f 100644 --- a/packages/peer/src/event-stream.ts +++ b/packages/peer/src/event-stream.ts @@ -2,7 +2,7 @@ import { EventStreamErrorEvent, unwrapEvent, withEventMeta } from '@standard-ser import type { AsyncCleanupFn, Queue } from '@standard-server/shared' import { AsyncIteratorClass, isNonPrimitive } from '@standard-server/shared' -import type { PeerEventStreamMessage } from './types.ts' +import type { PeerEventStreamMessage } from './types' export function toAsyncIteratorObject( queue: Queue, diff --git a/packages/peer/src/hibernation.test.ts b/packages/peer/src/hibernation.test.ts index 5a3a2162..7f7c6711 100644 --- a/packages/peer/src/hibernation.test.ts +++ b/packages/peer/src/hibernation.test.ts @@ -1,6 +1,6 @@ import { isAsyncIteratorObject } from '@standard-server/shared' -import { HibernationAsyncIteratorClass } from './hibernation.ts' +import { HibernationAsyncIteratorClass } from './hibernation' describe('hibernationAsyncIteratorClass', () => { it('is async iterator object', () => { diff --git a/packages/peer/src/index.test.ts b/packages/peer/src/index.test.ts index cb0182e3..5a2086e8 100644 --- a/packages/peer/src/index.test.ts +++ b/packages/peer/src/index.test.ts @@ -1,4 +1,4 @@ -import * as index from './index.ts' +import * as index from './index' it('export something', () => { expect(Object.keys(index).length).toBeGreaterThan(0) diff --git a/packages/peer/src/index.ts b/packages/peer/src/index.ts index 3020c123..304016c3 100644 --- a/packages/peer/src/index.ts +++ b/packages/peer/src/index.ts @@ -1,7 +1,7 @@ -export * from './client.ts' -export * from './codec.ts' -export * from './event-stream.ts' -export * from './hibernation.ts' -export * from './server.ts' -export * from './types.ts' -export * from './validators.ts' +export * from './client' +export * from './codec' +export * from './event-stream' +export * from './hibernation' +export * from './server' +export * from './types' +export * from './validators' diff --git a/packages/peer/src/octet-stream.test.ts b/packages/peer/src/octet-stream.test.ts index 601c8469..f6f60a3c 100644 --- a/packages/peer/src/octet-stream.test.ts +++ b/packages/peer/src/octet-stream.test.ts @@ -2,8 +2,8 @@ import { Buffer } from 'node:buffer' import { Queue, sleep } from '@standard-server/shared' -import { OctetStreamTransmitter, toOctetStream } from './octet-stream.ts' -import type { PeerOctetStreamMessage } from './types.ts' +import { OctetStreamTransmitter, toOctetStream } from './octet-stream' +import type { PeerOctetStreamMessage } from './types' describe('toOctetStream', () => { it('enqueues binary chunks and closes', async () => { diff --git a/packages/peer/src/octet-stream.ts b/packages/peer/src/octet-stream.ts index eea29fb5..2fe38a93 100644 --- a/packages/peer/src/octet-stream.ts +++ b/packages/peer/src/octet-stream.ts @@ -1,6 +1,6 @@ import type { AsyncCleanupFn, Queue } from '@standard-server/shared' -import type { PeerOctetStreamMessage } from './types.ts' +import type { PeerOctetStreamMessage } from './types' export function toOctetStream( queue: Queue, diff --git a/packages/peer/src/server.test.ts b/packages/peer/src/server.test.ts index 7c617909..03dc4e57 100644 --- a/packages/peer/src/server.test.ts +++ b/packages/peer/src/server.test.ts @@ -8,8 +8,8 @@ import { sleep, } from '@standard-server/shared' -import { HibernationAsyncIteratorClass } from './hibernation.ts' -import { ServerPeer } from './server.ts' +import { HibernationAsyncIteratorClass } from './hibernation' +import { ServerPeer } from './server' import type { PeerCancelMessage, PeerEventStreamMessage, @@ -18,7 +18,7 @@ import type { PeerResponseMessage, PeerStreamCancelMessage, ServerPeerSendMessage, -} from './types.ts' +} from './types' function makeRequestMessage( overrides: Partial = {}, diff --git a/packages/peer/src/server.ts b/packages/peer/src/server.ts index 6fa92464..837cbb30 100644 --- a/packages/peer/src/server.ts +++ b/packages/peer/src/server.ts @@ -3,17 +3,17 @@ import { cancelStandardBody } from '@standard-server/core' import type { Queue } from '@standard-server/shared' import { AbortError, hasAnyDefinedValue, isAsyncIteratorObject } from '@standard-server/shared' -import { encodeAtomicStandardBody, toStandardBody } from './body.ts' -import { EventStreamTransmitter } from './event-stream.ts' -import { HibernationAsyncIteratorClass } from './hibernation.ts' -import { OctetStreamTransmitter } from './octet-stream.ts' +import { encodeAtomicStandardBody, toStandardBody } from './body' +import { EventStreamTransmitter } from './event-stream' +import { HibernationAsyncIteratorClass } from './hibernation' +import { OctetStreamTransmitter } from './octet-stream' import type { ClientPeerSendMessage, PeerEventStreamMessage, PeerOctetStreamMessage, PeerResponseMessage, ServerPeerSendMessage, -} from './types.ts' +} from './types' interface ServerPeerRequestStateInternal { controller?: AbortController | undefined diff --git a/packages/peer/src/validators.test.ts b/packages/peer/src/validators.test.ts index 4b405791..ce37a332 100644 --- a/packages/peer/src/validators.test.ts +++ b/packages/peer/src/validators.test.ts @@ -1,4 +1,4 @@ -import type { PeerMessage } from './types.ts' +import type { PeerMessage } from './types' import { isClientPeerSendMessage, isPeerCancelMessage, @@ -9,7 +9,7 @@ import { isPeerResponseMessage, isPeerStreamCancelMessage, isServerPeerSendMessage, -} from './validators.ts' +} from './validators' function base(overrides?: Partial): PeerMessage { return { id: 'abc', kind: 'request', ...overrides } diff --git a/packages/peer/src/validators.ts b/packages/peer/src/validators.ts index 75479810..397f3661 100644 --- a/packages/peer/src/validators.ts +++ b/packages/peer/src/validators.ts @@ -19,7 +19,7 @@ import type { PeerResponseMessage, PeerStreamCancelMessage, ServerPeerSendMessage, -} from './types.ts' +} from './types' export function isPeerMessage(maybe: unknown): maybe is PeerMessage { if (!isNonPrimitive(maybe)) { diff --git a/packages/peer/tests/peer.test.ts b/packages/peer/tests/peer.test.ts index 390c9f31..ec42acf7 100644 --- a/packages/peer/tests/peer.test.ts +++ b/packages/peer/tests/peer.test.ts @@ -9,14 +9,14 @@ import { } from '@standard-server/core' import { promiseWithResolvers, sleep } from '@standard-server/shared' -import type { ClientPeer, ServerPeer } from '../src/index.ts' +import type { ClientPeer, ServerPeer } from '../src/index' import { ClientPeer as ClientPeerClass, decodePeerMessage, encodePeerMessage, ServerPeer as ServerPeerClass, -} from '../src/index.ts' -import type { ClientPeerSendMessage, ServerPeerSendMessage } from '../src/types.ts' +} from '../src/index' +import type { ClientPeerSendMessage, ServerPeerSendMessage } from '../src/types' /** * Wires a ClientPeer and a ServerPeer together through the real codec, diff --git a/packages/shared/package.json b/packages/shared/package.json index 8599a5c2..2ca09a47 100644 --- a/packages/shared/package.json +++ b/packages/shared/package.json @@ -39,6 +39,6 @@ } }, "scripts": { - "prepack": "tsc" + "prepack": "tsdown" } } diff --git a/packages/shared/src/array.test-d.ts b/packages/shared/src/array.test-d.ts index 09fa1ab5..aa9bf6a1 100644 --- a/packages/shared/src/array.test-d.ts +++ b/packages/shared/src/array.test-d.ts @@ -1,4 +1,4 @@ -import { toArray } from './array.ts' +import { toArray } from './array' it('toArray', () => { expectTypeOf(toArray(undefined)).toEqualTypeOf() diff --git a/packages/shared/src/array.test.ts b/packages/shared/src/array.test.ts index f6a60991..3b0e0e21 100644 --- a/packages/shared/src/array.test.ts +++ b/packages/shared/src/array.test.ts @@ -1,4 +1,4 @@ -import { toArray } from './array.ts' +import { toArray } from './array' it('toArray', () => { expect(toArray(undefined)).toEqual([]) diff --git a/packages/shared/src/error.test.ts b/packages/shared/src/error.test.ts index a566f1bb..70db3f07 100644 --- a/packages/shared/src/error.test.ts +++ b/packages/shared/src/error.test.ts @@ -1,4 +1,4 @@ -import { AbortError } from './error.ts' +import { AbortError } from './error' it('abortError', () => { const error = new AbortError('Operation aborted', { diff --git a/packages/shared/src/function.test.ts b/packages/shared/src/function.test.ts index ec67460d..bf85b5ae 100644 --- a/packages/shared/src/function.test.ts +++ b/packages/shared/src/function.test.ts @@ -1,4 +1,4 @@ -import { sequential } from './function.ts' +import { sequential } from './function' describe('sequential', () => { it('should call the function sequentially', async () => { diff --git a/packages/shared/src/id.test.ts b/packages/shared/src/id.test.ts index af1b1393..ea4bda1b 100644 --- a/packages/shared/src/id.test.ts +++ b/packages/shared/src/id.test.ts @@ -1,4 +1,4 @@ -import { SequentialIdGenerator } from './id.ts' +import { SequentialIdGenerator } from './id' describe('sequentialIdGenerator', () => { it('unique and increase', () => { diff --git a/packages/shared/src/index.test.ts b/packages/shared/src/index.test.ts index cb0182e3..5a2086e8 100644 --- a/packages/shared/src/index.test.ts +++ b/packages/shared/src/index.test.ts @@ -1,4 +1,4 @@ -import * as index from './index.ts' +import * as index from './index' it('export something', () => { expect(Object.keys(index).length).toBeGreaterThan(0) diff --git a/packages/shared/src/index.ts b/packages/shared/src/index.ts index 22142638..e7d1f23b 100644 --- a/packages/shared/src/index.ts +++ b/packages/shared/src/index.ts @@ -1,14 +1,14 @@ -export * from './array.ts' -export * from './error.ts' -export * from './function.ts' -export * from './id.ts' -export * from './iterator.ts' -export * from './json.ts' -export * from './object.ts' -export * from './promise.ts' -export * from './proxy.ts' -export * from './queue.ts' -export { throwIfAborted } from './signal.ts' -export * from './time.ts' -export * from './types.ts' -export * from './uri.ts' +export * from './array' +export * from './error' +export * from './function' +export * from './id' +export * from './iterator' +export * from './json' +export * from './object' +export * from './promise' +export * from './proxy' +export * from './queue' +export { throwIfAborted } from './signal' +export * from './time' +export * from './types' +export * from './uri' diff --git a/packages/shared/src/iterator.test.ts b/packages/shared/src/iterator.test.ts index ec254e45..7a2ea80a 100644 --- a/packages/shared/src/iterator.test.ts +++ b/packages/shared/src/iterator.test.ts @@ -1,5 +1,5 @@ -import { AsyncIteratorClass, isAsyncIteratorObject } from './iterator.ts' -import { promiseWithResolvers } from './promise.ts' +import { AsyncIteratorClass, isAsyncIteratorObject } from './iterator' +import { promiseWithResolvers } from './promise' beforeEach(() => { vi.clearAllMocks() @@ -39,7 +39,7 @@ it('uses Symbol.for("Symbol.asyncDispose") when Symbol.asyncDispose is not nativ }), ) vi.resetModules() - const { AsyncIteratorClass } = await import('./iterator.ts') + const { AsyncIteratorClass } = await import('./iterator') vi.unstubAllGlobals() const cleanup = vi.fn() diff --git a/packages/shared/src/iterator.ts b/packages/shared/src/iterator.ts index f2401516..b4f51c71 100644 --- a/packages/shared/src/iterator.ts +++ b/packages/shared/src/iterator.ts @@ -1,5 +1,5 @@ -import { sequential } from './function.ts' -import type { AsyncCleanupFn } from './types.ts' +import { sequential } from './function' +import type { AsyncCleanupFn } from './types' export function isAsyncIteratorObject(maybe: unknown): maybe is AsyncIteratorObject { if (!maybe || typeof maybe !== 'object') { @@ -24,6 +24,16 @@ const asyncDisposeSymbol: typeof Symbol extends { asyncDispose: infer T } ? T : typeof fallbackAsyncDisposeSymbol = (Symbol as any).asyncDispose ?? fallbackAsyncDisposeSymbol +// Declared here and defined after the class, because isolated declarations can't +// infer a class member named by `asyncDisposeSymbol`, whose type is conditional. +// oxlint-disable-next-line typescript/no-unsafe-declaration-merging, no-unused-vars +export interface AsyncIteratorClass { + /** + * Uses the native Symbol.asyncDispose, or Symbol.for('Symbol.asyncDispose') on runtimes without it + */ + [asyncDisposeSymbol](): Promise +} + export class AsyncIteratorClass implements AsyncIteratorObject, AsyncGenerator { @@ -97,18 +107,15 @@ export class AsyncIteratorClass throw error } - /** - * Uses the native Symbol.asyncDispose, or Symbol.for('Symbol.asyncDispose') on runtimes without it - */ - async [asyncDisposeSymbol](): Promise { - this.isDone = true - if (!this.isExecuteComplete) { - this.isExecuteComplete = true - await this.cleanup({ kind: 'cancelled' }) - } - } - [Symbol.asyncIterator](): this { return this } } + +Object.defineProperty(AsyncIteratorClass.prototype, asyncDisposeSymbol, { + async value(this: AsyncIteratorClass): Promise { + await this.return() + }, + writable: true, + configurable: true, +}) diff --git a/packages/shared/src/json.test-d.ts b/packages/shared/src/json.test-d.ts index ae0b125a..56c52dac 100644 --- a/packages/shared/src/json.test-d.ts +++ b/packages/shared/src/json.test-d.ts @@ -1,4 +1,4 @@ -import { stringifyJSON } from './json.ts' +import { stringifyJSON } from './json' it('stringifyJSON', () => { expectTypeOf(stringifyJSON(undefined)).toEqualTypeOf() diff --git a/packages/shared/src/json.test.ts b/packages/shared/src/json.test.ts index da1156b7..1db61423 100644 --- a/packages/shared/src/json.test.ts +++ b/packages/shared/src/json.test.ts @@ -1,4 +1,4 @@ -import { parseEmptyableJSON, stringifyJSON } from './json.ts' +import { parseEmptyableJSON, stringifyJSON } from './json' it('parseEmptyableJSON', () => { expect(parseEmptyableJSON(undefined)).toBeUndefined() diff --git a/packages/shared/src/object.test.ts b/packages/shared/src/object.test.ts index 08a8cca1..b9740c95 100644 --- a/packages/shared/src/object.test.ts +++ b/packages/shared/src/object.test.ts @@ -1,4 +1,4 @@ -import { hasAnyDefinedValue, isNonPrimitive } from './object.ts' +import { hasAnyDefinedValue, isNonPrimitive } from './object' it('hasAnyDefinedValue', () => { expect(hasAnyDefinedValue({})).toBe(false) diff --git a/packages/shared/src/promise.test.ts b/packages/shared/src/promise.test.ts index 3f66be1f..e648e4cf 100644 --- a/packages/shared/src/promise.test.ts +++ b/packages/shared/src/promise.test.ts @@ -1,4 +1,4 @@ -import { promiseWithResolvers } from './promise.ts' +import { promiseWithResolvers } from './promise' describe('promiseWithResolvers', () => { it('resolves the promise', async () => { diff --git a/packages/shared/src/proxy.test.ts b/packages/shared/src/proxy.test.ts index a96d5840..4f60c613 100644 --- a/packages/shared/src/proxy.test.ts +++ b/packages/shared/src/proxy.test.ts @@ -1,6 +1,6 @@ import { describe, expect, it } from 'vitest' -import { getOrBind } from './proxy.ts' +import { getOrBind } from './proxy' describe('getOrBind', () => { it('returns non-function values directly', () => { diff --git a/packages/shared/src/queue.test.ts b/packages/shared/src/queue.test.ts index 217bd5d2..efabcf4a 100644 --- a/packages/shared/src/queue.test.ts +++ b/packages/shared/src/queue.test.ts @@ -1,5 +1,5 @@ -import { AbortError } from './error.ts' -import { Queue } from './queue.ts' +import { AbortError } from './error' +import { Queue } from './queue' describe('queue', () => { it('returns buffered items in order', async () => { diff --git a/packages/shared/src/queue.ts b/packages/shared/src/queue.ts index 21cfe0ec..5114fe63 100644 --- a/packages/shared/src/queue.ts +++ b/packages/shared/src/queue.ts @@ -1,4 +1,4 @@ -import { AbortError } from './error.ts' +import { AbortError } from './error' const COMPACT_THRESHOLD = 1024 diff --git a/packages/shared/src/signal.test.ts b/packages/shared/src/signal.test.ts index b56d880b..bf61c2d1 100644 --- a/packages/shared/src/signal.test.ts +++ b/packages/shared/src/signal.test.ts @@ -1,6 +1,6 @@ import { describe, expect, it, vi } from 'vitest' -import { anyAbortSignal, throwIfAborted } from './signal.ts' +import { anyAbortSignal, throwIfAborted } from './signal' /** * Helper to temporarily disable AbortSignal.any to force fallback implementation. diff --git a/packages/shared/src/time.test.ts b/packages/shared/src/time.test.ts index 42a11c79..07a6e57e 100644 --- a/packages/shared/src/time.test.ts +++ b/packages/shared/src/time.test.ts @@ -1,4 +1,4 @@ -import { sleep } from './time.ts' +import { sleep } from './time' describe('sleep', () => { it('sleep resolves after the given duration', async () => { diff --git a/packages/shared/src/time.ts b/packages/shared/src/time.ts index 4fe4e2b6..449c1805 100644 --- a/packages/shared/src/time.ts +++ b/packages/shared/src/time.ts @@ -1,4 +1,4 @@ -import { throwIfAborted } from './signal.ts' +import { throwIfAborted } from './signal' export interface SleepOptions { signal?: AbortSignal | undefined diff --git a/packages/shared/src/uri.test.ts b/packages/shared/src/uri.test.ts index 74532086..a3cc4b5e 100644 --- a/packages/shared/src/uri.test.ts +++ b/packages/shared/src/uri.test.ts @@ -1,4 +1,4 @@ -import { safeDecodeURIComponent, safeEncodeURIComponent } from './uri.ts' +import { safeDecodeURIComponent, safeEncodeURIComponent } from './uri' describe('safeEncodeURIComponent', () => { it('encodes like encodeURIComponent for well-formed input', () => { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6fa18777..7fe50e43 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -227,14 +227,14 @@ importers: specifier: 2.0.2 version: 2.0.2 oxfmt: - specifier: ^0.76.0 - version: 0.76.0 + specifier: ^0.77.0 + version: 0.77.0 oxlint: - specifier: ^1.91.0 - version: 1.91.0(oxlint-tsgolint@7.0.2005) + specifier: ^1.92.0 + version: 1.92.0(oxlint-tsgolint@7.0.2006) oxlint-tsgolint: - specifier: ^7.0.2005 - version: 7.0.2005 + specifier: ^7.0.2006 + version: 7.0.2006 pkg-pr-new: specifier: ^0.0.91 version: 0.0.91 @@ -247,6 +247,9 @@ importers: srvx: specifier: ^1.0.5 version: 1.0.5 + tsdown: + specifier: ^0.23.7 + version: 0.23.7(tsx@4.23.15)(typescript@7.0.2) typescript: specifier: ^7.0.2 version: 7.0.2 @@ -442,6 +445,15 @@ packages: vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 vitest: ^3.2 || ^4 + '@emnapi/core@2.0.0-beta.2': + resolution: {integrity: sha512-MzCVoWtcg4Pm2B3je5mMvYMvj3MmBKw+fU7vbsJc9/iT8ip6/eYIHo/Dsm/mr+wsHB6SEyJDuxB09Yy6r/8+4A==} + + '@emnapi/runtime@2.0.0-beta.2': + resolution: {integrity: sha512-JcrSPzPvZuNZvJqPTF9Fw25LbOJ8avzFVlaf2grmH4Cku0oGP47tRgqPZadcfj3YoZMHkFVnCYFbQM8I+i5QEw==} + + '@emnapi/wasi-threads@2.2.0': + resolution: {integrity: sha512-JP7OYH38Q7+pyTAe14raZHLQIK7BDKbdwji+Xi3pcd/6QkJYQH3SX4wu6EplGrGJWRepoNzedfm0G3B9Z4e9Rw==} + '@esbuild/aix-ppc64@0.28.2': resolution: {integrity: sha512-XExcO+dvLKvVtNTibSTBej1NCAbaGhWn9Ww1ZPx80qsahhPFe/8jgWP0IchNe0F3HwkU7n8ejhH8bjonqht8mQ==} engines: {node: '>=18'} @@ -642,6 +654,13 @@ packages: os: [linux] libc: [glibc] + '@napi-rs/wasm-runtime@1.2.6': + resolution: {integrity: sha512-mRyDmEw9/fCDXCGfL1sbgIw/GUK0PVxRW4YwgPN61F3LQ+fSyoBFarJVzgGyhF6kRzEQZ0FejDqm4WLXSeqQmw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=23.5.0} + peerDependencies: + '@emnapi/core': ^1.7.1 || 2.0.0-beta.2 + '@emnapi/runtime': ^1.7.1 || 2.0.0-beta.2 + '@noble/hashes@1.4.0': resolution: {integrity: sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==} engines: {node: '>= 16'} @@ -650,276 +669,279 @@ packages: resolution: {integrity: sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==} engines: {node: ^14.21.3 || >=16} - '@oxfmt/binding-android-arm-eabi@0.76.0': - resolution: {integrity: sha512-z8x4kittQLPsrJWmfoIJyYqs2gNwceGShoUqAJdFRPw3K4kkkKCFHh3Cr4NFRvZb7DPfDS3+JfBjSm3OIyQaJQ==} + '@oxc-project/types@0.157.0': + resolution: {integrity: sha512-95iTox1qdt6WGWce3xwNOVayByOfLaYAq+qGPpub6NWbBh9sv0GG3+zyfh9ZBCO/jVu5A0EWI+qQI7g6fevjxg==} + + '@oxfmt/binding-android-arm-eabi@0.77.0': + resolution: {integrity: sha512-zmPiuOvkuu0csMx4U3gdMunIFWNcWulzikFMdAPBzLazVAA3LhdHzv9yzgUgAckv/zje5vz4XJcseNQKdSsWMw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [android] - '@oxfmt/binding-android-arm64@0.76.0': - resolution: {integrity: sha512-Zj9fEQhQSKGj8ZTB+X4q4ho4545xWf7qsvJpwREWnBz5BATEFYtStKRgiwYOZvxQ7ORlBEgSj7pmDzuljfV1mQ==} + '@oxfmt/binding-android-arm64@0.77.0': + resolution: {integrity: sha512-shXOIK9sj3bvt4H6K47qFWNKaYBwEhzj97iUwoLGyyRDrXt1OdAAuCiupCinG1i7ETL81knjEKeB+JmhOOfPew==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [android] - '@oxfmt/binding-darwin-arm64@0.76.0': - resolution: {integrity: sha512-jZy8GpUXaWpic5JPMAvLmaBz95Sx0naZl6hptBPLOMiYmZYiME7jAt6pv8o/tjQqPNWKb+7jKzZhrYx6UqM5MQ==} + '@oxfmt/binding-darwin-arm64@0.77.0': + resolution: {integrity: sha512-lrTX0I54buv9CW2leEWchWLdfcrblZ5Rj8uAilKzBEyWif8CTN6zBHdFc12K1b6U2cnlvOFBd1LxdLdqLKX2EA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [darwin] - '@oxfmt/binding-darwin-x64@0.76.0': - resolution: {integrity: sha512-U59+a9lVpoRp9enRhTE9GssL3qB1k09CYagRzTfs3dfknopMYV0x0xHZv7Pls3SNMqHlyHR+ufmY76CYafQoLw==} + '@oxfmt/binding-darwin-x64@0.77.0': + resolution: {integrity: sha512-SD44K3x/Im8EsOtdHxjVmTBi0cafAaunRpCeq+w91tkD2keqYagR8oAvxkJHUK+KPg5NQk7JZqQnzGHnVEBrDw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [darwin] - '@oxfmt/binding-freebsd-x64@0.76.0': - resolution: {integrity: sha512-J1R3YJHPdQJ2RQvzMdTVDWyizhihGiRGGAeEZxtGp629j5pcT5ypSLSiBflopD7o7tmiMD+xlNfhIVmjcHKMVQ==} + '@oxfmt/binding-freebsd-x64@0.77.0': + resolution: {integrity: sha512-N+gUflsCx3FAVkxi5sxGlL5LwO+7pv5NexHJufBqPyl3BcPv1rXpfwqhL/Vj+XfshfoxMFTBbzrbJgGVaPVkAw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [freebsd] - '@oxfmt/binding-linux-arm-gnueabihf@0.76.0': - resolution: {integrity: sha512-x9qTg6zHoqeyzmFVlIjSb9WlhZdoXaayMTeQeDeUEfKA484AgPJz7f9chLjDMONA6wUUX0FJxnVHsYgX5Zv0+g==} + '@oxfmt/binding-linux-arm-gnueabihf@0.77.0': + resolution: {integrity: sha512-DXGwP8818IUZ4cxcfugg9PXqnI6fVCWIqgCgBoUKdl/QhJF4Po+lucJBrnrX/b5BNKwVMc3xSrvbI9rl8+RrBA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] - '@oxfmt/binding-linux-arm-musleabihf@0.76.0': - resolution: {integrity: sha512-303gbamm7NDllTtkeaX+8F5Da+KcSBr64mqELQEFg9XgnjfLX3YBCHUcOfgIlVTSybesy43eoeKai8oGr0P6UA==} + '@oxfmt/binding-linux-arm-musleabihf@0.77.0': + resolution: {integrity: sha512-HUiJTgdV10PkCW41nHqVYYlW8Uc+39YBOoluZLfJE2MBPKVTNElhL+vpdSEuVaCGhGkzOGR6XyxM37gu31L1Qw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] - '@oxfmt/binding-linux-arm64-gnu@0.76.0': - resolution: {integrity: sha512-j3UAXzCJoWX9bZLaICj6DfwkI/2fzja9RpiCIbIN+2CQAcKoY+5SH5pQUcECvn32mQm17NSPE9YqTAwYx1seZg==} + '@oxfmt/binding-linux-arm64-gnu@0.77.0': + resolution: {integrity: sha512-+w3V07y6yy8FdACnGtzgDsG/CHgA0Y/W2/bzZuPYgvBAa23Lap/nmvyNQmCiGKkSaChTPlY7QpIShGGAC7IGEQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] libc: [glibc] - '@oxfmt/binding-linux-arm64-musl@0.76.0': - resolution: {integrity: sha512-qFZqWVkEzuxWMtUkCtHxsnohXHnUMBQr/ZIxF0KmlCSt8de/bc1lbpVgpqjb3QxCADQHG/O1s3JcowcBF2sqdw==} + '@oxfmt/binding-linux-arm64-musl@0.77.0': + resolution: {integrity: sha512-FASxWQAuLW4WXFViDa77ybd3Y1lbkBx5DTtL4OGl+pL64/ymtydTFvJM0xz/0vnCirNzPUDAI6TiTBDGsFbEVg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] libc: [musl] - '@oxfmt/binding-linux-ppc64-gnu@0.76.0': - resolution: {integrity: sha512-ROiAid0UH2GN5lMMX2JTgKlOKx1rN+6a1WxIuBsU3j5A3MuB9U5XkREMW76XBbAImnH45mfOCFcSIwb+drcVYg==} + '@oxfmt/binding-linux-ppc64-gnu@0.77.0': + resolution: {integrity: sha512-WRdlgZahG35zCieq7Po7QU8mBgkFAIdEpgS5p3vVZrHt0FXTbFgzqC7xeBCceh9gpFGgr4VWblULNnU8gdw0DA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ppc64] os: [linux] libc: [glibc] - '@oxfmt/binding-linux-riscv64-gnu@0.76.0': - resolution: {integrity: sha512-Oyd/9ObdM2RYkZ7yzF/GyvVdbNgJcRG8BFVwnAVo3ooqzaem4E2p5eTIGB09FecQD+Q5HQEANOTEnIZTO6rBAQ==} + '@oxfmt/binding-linux-riscv64-gnu@0.77.0': + resolution: {integrity: sha512-CVzNO94x/UzQe/INVUu9qt5X1MjLEooqwc/5VcQ88eyLXiEIIsjubpPQgwEMKwfWtAA5hnpFL2GF74zSdCg07Q==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] libc: [glibc] - '@oxfmt/binding-linux-riscv64-musl@0.76.0': - resolution: {integrity: sha512-86DOpmPDR5UzHSOB8y5HlOpYAIBtMx+6L72IyousNx54q1Kz61aykB4ScovFYivZUak+7Ww6tPBUjarluzYKLw==} + '@oxfmt/binding-linux-riscv64-musl@0.77.0': + resolution: {integrity: sha512-NrCcVheqL0kRUi9gptqjkQhxSFayotM+zycC3lSOSrsf5SroZq49u66ShyuZkHCCzKPHB0AT0pL/s+ET9R3qQQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] libc: [musl] - '@oxfmt/binding-linux-s390x-gnu@0.76.0': - resolution: {integrity: sha512-u6omjjFooKfnHLBI+3UtBVInAeuEhoM/RAIw/OiFop2QQgOan5zDfqPR6guMaylt68L60kV+by07Ibp87KDjrw==} + '@oxfmt/binding-linux-s390x-gnu@0.77.0': + resolution: {integrity: sha512-LWDQ9T/Bo/kt/q223j9fYLiNTkUYyuMkk7ZrIsIAV7l19MmuKxgd/1tZ8xhoUuVIdsyET7sJrQ6X/vRG6V+bZQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [s390x] os: [linux] libc: [glibc] - '@oxfmt/binding-linux-x64-gnu@0.76.0': - resolution: {integrity: sha512-L0/hW1MdMrgsvuLGp9YEQOYOGj5xPHa8wVRtybdd5av03PV4qSpAq3pyfC7sn7UCA8ynRhMRTAa9Kr9nV4LGZg==} + '@oxfmt/binding-linux-x64-gnu@0.77.0': + resolution: {integrity: sha512-5JbOT3ucC/2kROUjyyOW06FjXO8trPjYb+kE7E7cLxmpGAnw0jjeU4Tjg4C8H9JR1MZ2oH4fXE1NqLNZ89ISnw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] libc: [glibc] - '@oxfmt/binding-linux-x64-musl@0.76.0': - resolution: {integrity: sha512-JNk/7HaPDJjy5kih3vq6b71Qif3tHx1ZFACGBzeHeNzyKaIpar4eFGya89GR398K2rwX0eEVmEq1npBPlEkkmg==} + '@oxfmt/binding-linux-x64-musl@0.77.0': + resolution: {integrity: sha512-/q9p495bmmKtxqWlIrNiJ15hoddgk/jPvJwMW6Nh796UgVRMTCKD7yI+AAL7/7xWlC3+2ls5l1RPywuV4lOdlw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] libc: [musl] - '@oxfmt/binding-openharmony-arm64@0.76.0': - resolution: {integrity: sha512-MDLrOQPXDuPKvPUCvpP3hC6kO72dsYxfpYiR08Nf5DiM75M0d8+D26JwT4uHDf0bcflvlGHcd58Hn2HpxkHUUQ==} + '@oxfmt/binding-openharmony-arm64@0.77.0': + resolution: {integrity: sha512-tmN3OEI38xXr48UeAkQMAX1jMHszVHv4I9lzh44DKrMlIFxEU0aBYl3Zs7PzRBuJOLR7h77m6bUlCh0E06MVXw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [openharmony] - '@oxfmt/binding-win32-arm64-msvc@0.76.0': - resolution: {integrity: sha512-2CcICDrQKqMAOFuzmts/8Ov5iKb+DW/QrW4MFsl2bnRg86uoiUvtqUkHqNSY19Shegc8pBHiXMSEHDjIg94o0A==} + '@oxfmt/binding-win32-arm64-msvc@0.77.0': + resolution: {integrity: sha512-v//nJMk72xRT+/9QB9mJWEPV3/5XncMvxtYQAYbAsv5VcxLlRcbj2n2srQSERglVcTft4jI3MK30ceCoRcDTJg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [win32] - '@oxfmt/binding-win32-ia32-msvc@0.76.0': - resolution: {integrity: sha512-NjZLJg+tQpMWVSyeWBBKCpib7H/uLq84ZzxCvY5eqHzSaItuzCECGA9MBiZwmW8fnkBIfppg49Ib//LSCGAp8Q==} + '@oxfmt/binding-win32-ia32-msvc@0.77.0': + resolution: {integrity: sha512-D3SMXWBkVogzAlzd3RfMaFuHOTdPpRDFT+jVbtXszWwck9PCK4hYoRoncjuAjWZuWzRFND3/Mk91qFvJyoJbLA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ia32] os: [win32] - '@oxfmt/binding-win32-x64-msvc@0.76.0': - resolution: {integrity: sha512-0vCMaX/qloc7uaKBDRh+62SBW8EqmhS7c8/al+PxD594ao4lyEWdcoEmVoBgnCNVW07GDpg+9uPV7x6ta9mljw==} + '@oxfmt/binding-win32-x64-msvc@0.77.0': + resolution: {integrity: sha512-2vyyODjP1Sb830rTVgfFqZoIUYF8uYdGx9S/Usih+Av6gQ9QyxXzwEGXS7poxfsxxQftZW1IbcFlhvQkeDRekQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [win32] - '@oxlint-tsgolint/darwin-arm64@7.0.2005': - resolution: {integrity: sha512-VqDZxcZVjlonNLuuvraVNgDQt+1ndwa4yJo8OqsK4HYh/61ba9IlMStCVfi/aaIqRoDhNbAKC8gdcTrXqnb+Ug==} + '@oxlint-tsgolint/darwin-arm64@7.0.2006': + resolution: {integrity: sha512-uc0MEHXZUDW23Zmo5X28eSNeSnP17jKnh9GiehpVZqhfy99ks8spyXT5Llar3tjDN7ppnQN0Qd9FK6WNkdD+fQ==} cpu: [arm64] os: [darwin] - '@oxlint-tsgolint/darwin-x64@7.0.2005': - resolution: {integrity: sha512-4kUfLRNYoVpv0Tm3jPYrvxyfOc/LmdvFC3pKZ4tL6K7lA7K/VS81SAtmxRzbYXYSyb3SBWhwsuX+df4neqzxxA==} + '@oxlint-tsgolint/darwin-x64@7.0.2006': + resolution: {integrity: sha512-+x1/pa3S3VMC9cif8XKTOCQUuqRT+wu1Ix+FK5svXa2xbXCuE7+4S0SfmuSnK/mk9AI5+xBxZFhILxmCPUZ1hA==} cpu: [x64] os: [darwin] - '@oxlint-tsgolint/linux-arm64@7.0.2005': - resolution: {integrity: sha512-rhUNcPsBlKvhXtrbhbBUidtRBRdJ8fbEHN9H5Q5N59gby18ruGuDA7KUxl7oRnUzp797uykYQhkBDm+0KpfK/Q==} + '@oxlint-tsgolint/linux-arm64@7.0.2006': + resolution: {integrity: sha512-90v7HX8m54kHXn5DpjNEN18Fb7xwJMREe/wji3USyAf9pTMv7a3qZ3cPoLViIcIzxPLmkcYZIs1j1H3Z2gbVLA==} cpu: [arm64] os: [linux] - '@oxlint-tsgolint/linux-x64@7.0.2005': - resolution: {integrity: sha512-tKs9yinDQZOHygM0e8EJnjTU3mzJtdfkOZP6Udu82iLMePUSHOhTJ9zzU/mSd1hQxURI4LTRRiFhfzC+PzwdNA==} + '@oxlint-tsgolint/linux-x64@7.0.2006': + resolution: {integrity: sha512-/k0wsEqHiA5dWBJYuld3Vecv6bIhKCasxpho/aFkvh870Qox33MuTkKUGWIVm/njAxw7W4pu1a/Xfa3jwuKuPQ==} cpu: [x64] os: [linux] - '@oxlint-tsgolint/win32-arm64@7.0.2005': - resolution: {integrity: sha512-VYPnu1gjfbSv+ROhuyNfMs382D4zQU2ZRc8Uc3nuEZo1k2kf+1KfTrg4hrlWh73h9GI+dUWyo+DYCQzUBlPwcQ==} + '@oxlint-tsgolint/win32-arm64@7.0.2006': + resolution: {integrity: sha512-CQT5sqcLZLNZSWLzUUEjQmp74UX8h1agp3ZJ8pfRktHbx6gfBa8a7CjrnRrZ9VXlwnXVkpw7m5KBO6y+S5MQRA==} cpu: [arm64] os: [win32] - '@oxlint-tsgolint/win32-x64@7.0.2005': - resolution: {integrity: sha512-ekU89cTGy9fpQzuvxIsFHrnoP8XoFjGIRgPEW6eqgY2NYjGy9pwpjF79o04WXRMJFKRrcaVqkZXUUBdLsqpQDw==} + '@oxlint-tsgolint/win32-x64@7.0.2006': + resolution: {integrity: sha512-VZsGowXcp3vQNkjoGeVCOTf4aGrRpRk6bBJWhefnJVPr6z+dX+LKqqHfwaqnFvg66Q2iJpXqklRW38YO21ee+Q==} cpu: [x64] os: [win32] - '@oxlint/binding-android-arm-eabi@1.91.0': - resolution: {integrity: sha512-eOqJUUS1MCqIoUUxMIkuwaqIdKaHr1SXYA0CQI95UUrF8jwQylQH33bBmnqhZfvWXKlRB2Ylx/+Sbk/ctEqzZQ==} + '@oxlint/binding-android-arm-eabi@1.92.0': + resolution: {integrity: sha512-k3Sd4ixQfiOrybv1gT+AMI81HSdtAFsiCFx+xXxWdFkmKW2HNrSiOfwn20o5nl/ggwbzU1oNLDeU/fRPinTVZQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [android] - '@oxlint/binding-android-arm64@1.91.0': - resolution: {integrity: sha512-vIJU4lRxK0EhbBt+iR3rkq3pio4I+V5Gshwjei3plNjN+CIq0WxWHzYVI06J9KN8Ar3hyNSFtzJAjVRLZOYpjg==} + '@oxlint/binding-android-arm64@1.92.0': + resolution: {integrity: sha512-OZzgEuiTSG11QkBWdXEguiLOT6lL09KtfcC/BmvUQWBAjU5eVyBxIAsmWAXv8L85/eT6RE0GBEWTEFBAbYE74g==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [android] - '@oxlint/binding-darwin-arm64@1.91.0': - resolution: {integrity: sha512-tLy76MurwAOpQt5QVMkJUgexBSWhB7qdvAYb14bc0xntZS6f55aKicbZoxZ/QlmAbnrdlXeD5+IjwY8EZ9RWTg==} + '@oxlint/binding-darwin-arm64@1.92.0': + resolution: {integrity: sha512-We6XS7tIqxgUoany6uyGjj7mNsh/mwf4Gt9gUzhxG65NKo2Ow9s6tDfrVuI0FVg8n3YmpW5PBx80qFxiLwAfsA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [darwin] - '@oxlint/binding-darwin-x64@1.91.0': - resolution: {integrity: sha512-zPeMmjAqm5vXxbTp/JqYuc9gGSbUuEaeCAkFHB4TCRLTlfJGD//Fkx03YvZHCHZJ7ideLiiLcae+3f2I27qnaA==} + '@oxlint/binding-darwin-x64@1.92.0': + resolution: {integrity: sha512-jKJWijmi6AxAZcXXWA6R/NLVZHxoRTbIMnV8znsHzeiVfuEefYcyR8SJGfbBPmkG+kveLFRcBGw0fBrjLqtGmQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [darwin] - '@oxlint/binding-freebsd-x64@1.91.0': - resolution: {integrity: sha512-psOR9+xGMXn0hj4KY5M2kjSQ1n0TCMdYbPOraoV0iQyl7mw2oBBYGUM2+ma40m1YLVrktTBOta4FjrmcOHDhrg==} + '@oxlint/binding-freebsd-x64@1.92.0': + resolution: {integrity: sha512-wkw01wvJPM8/4jh+MV3cp11859VuBc94N2q5uOzcBgdGIRAqMCg1O0W/+xsZ1fsInvuUcv2Xo4nd1nzcKhi9kg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [freebsd] - '@oxlint/binding-linux-arm-gnueabihf@1.91.0': - resolution: {integrity: sha512-1PNA1j4ETxawvxfz6ueDxWgQgWkXPbv44DWZmC7LR07GqojGFDOwWbosOT6/AYiJr7zMXEhn2dPWMkyFFOFpUQ==} + '@oxlint/binding-linux-arm-gnueabihf@1.92.0': + resolution: {integrity: sha512-Elm6nW308MzmR8knvk0tPqQ4XE+PGKztjXv7kVZTRLkhBQZRXHUQoBLc4E30fiIuF6gkZO5f3EpJtQc4Ok/fXw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] - '@oxlint/binding-linux-arm-musleabihf@1.91.0': - resolution: {integrity: sha512-jcNePVpca37lTbHmiPMnVbPAAW0rH9kAoDjsDv6vESEX9pzazIR1q5SyYuc1rQzdjHtc2VVCDN9jDh6tHcOHyA==} + '@oxlint/binding-linux-arm-musleabihf@1.92.0': + resolution: {integrity: sha512-oylpBAoeogddjhTlSPsXrzGq/aeJsvaULz/hYXvWtGn/Wt8LPLC7gFhucCicbRnzEKsShrZxIA0KyHmtFNnijQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] - '@oxlint/binding-linux-arm64-gnu@1.91.0': - resolution: {integrity: sha512-TJi78UX6R+9qZ23ZKtzN6adfW83bjY0NXsCRMBRH6H7IizaMXmZbdRAtjedMkx77bT46YQH0csawsY9lwha8MA==} + '@oxlint/binding-linux-arm64-gnu@1.92.0': + resolution: {integrity: sha512-/EWOI0wwY+74UGvC93TldpoNP8moIcidVUPbUSoX16/SEdF7ah209yxSQia4+9JdCRWYA3+yQMofXMgWKk/16Q==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] libc: [glibc] - '@oxlint/binding-linux-arm64-musl@1.91.0': - resolution: {integrity: sha512-OowlLroUTzKq5OBvbu6iegch8SJ2DivXFCukzPWURwvcJhMj7/P0CUGH5qrDlxT1Kh48dcxqYqrvE8qK6xTLKQ==} + '@oxlint/binding-linux-arm64-musl@1.92.0': + resolution: {integrity: sha512-9Se7Zuazr104yc2PaluriJW2rqvtaN6FSi9MSjQgZGeYb6LKvEcJ586tpjek0l7hNQNoir8MID7OENPH6juN1w==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] libc: [musl] - '@oxlint/binding-linux-ppc64-gnu@1.91.0': - resolution: {integrity: sha512-QF/5Ge8yGpWg5s4awMNHfVKh1WOmk591Qg082i6CHenXYBa+W1E5RwWZXaKUOw4Ko7CCjqg3TfBc0AzhnqblYg==} + '@oxlint/binding-linux-ppc64-gnu@1.92.0': + resolution: {integrity: sha512-88IAchs204I/xxAbAo3NRyz1m/29tn8jUAPvc4tK4FzrT2PLwZertd93ANF6231vwbAhYiD5gl0cX8Po5xsjWQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ppc64] os: [linux] libc: [glibc] - '@oxlint/binding-linux-riscv64-gnu@1.91.0': - resolution: {integrity: sha512-dXlsKlNhzJQX1nageGKnvWe1D7uTng249hQM80CG/YPZ8F/VZHbxVLhImgurdWBOmu86XOemValLjrW6QIOM/Q==} + '@oxlint/binding-linux-riscv64-gnu@1.92.0': + resolution: {integrity: sha512-KtFdVdkfvBGcsrmnbjYJ9/XTDABnaniiwnptAcAm0pkaR2zhZ3sr/Xy+N1Xbz1Yq5Jegu7SoeNv9caTP0b5OTA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] libc: [glibc] - '@oxlint/binding-linux-riscv64-musl@1.91.0': - resolution: {integrity: sha512-tznkj5VrWNRUfymkaLcJetgMLbP9suL5ob/m7j0Fdbnm5u3Li/Ezo/YcBixiuwdL1sg0oGpyTe86It0J6T+Lxg==} + '@oxlint/binding-linux-riscv64-musl@1.92.0': + resolution: {integrity: sha512-V43CO5FPgHtwHup4H5+dIdwzZX2FhREQGsSBZx8V1UyFEAul0Q13qviKqZfSMM6G41CGtCekVpJGGOxW5v1y8Q==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] libc: [musl] - '@oxlint/binding-linux-s390x-gnu@1.91.0': - resolution: {integrity: sha512-sNvfLiUYQkVsLNUgIW24AEYTHSd2zZ1vAxXssPdjuQHTtCpRvQihYri6d5z5FY7w/QrcnB5+g9E+/sqmZq8tfA==} + '@oxlint/binding-linux-s390x-gnu@1.92.0': + resolution: {integrity: sha512-WooxeACzGH5q34olo7JgAk7XbVkTUNfwhR/TzmhwVs/y1p2R7ZWJo14hiyxiGcoYZR1iBnbBFHectADqb/KSog==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [s390x] os: [linux] libc: [glibc] - '@oxlint/binding-linux-x64-gnu@1.91.0': - resolution: {integrity: sha512-eA25ETvimhUZ89y5BcunNY7yv7qwG2I7V7dFQAU+mIEqZ57gBCXdIERl0yXOEt43zjsw0yK2gRKTc+twF706wQ==} + '@oxlint/binding-linux-x64-gnu@1.92.0': + resolution: {integrity: sha512-lW2pLF1oFvNN780YUCtDyoUm8oFzZGJNcOFe9RtLMX5v5+FcWfAQvHUMMPF8H8kJB0HAi3dFmWDWLa5VPuY9mw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] libc: [glibc] - '@oxlint/binding-linux-x64-musl@1.91.0': - resolution: {integrity: sha512-4hZ4Z9K+OkcTpAHDoUTMg/8MModbM0aocrl9KnGzp9h5iKqjrXraEUZorYoVCT7xoK93CAHXgTndxRBrOjH/fA==} + '@oxlint/binding-linux-x64-musl@1.92.0': + resolution: {integrity: sha512-2BJAAB/eqPn7iD7mFVfs+1ZVUogAYOMCTaUgjAvbtNGg2ppCDE7gcv/9VSO6GCDybdFUqlcyeyjn9hRpl1ZHog==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] libc: [musl] - '@oxlint/binding-openharmony-arm64@1.91.0': - resolution: {integrity: sha512-gtqn4b0kLpGe46Qh7NHiR86wZpd+TLaesO106s7V3RG33r63VB94LW5qPKEDJX64osh3xfjnPFn1M0484bC7wQ==} + '@oxlint/binding-openharmony-arm64@1.92.0': + resolution: {integrity: sha512-iLtjNqqa/2IV5qu/3rrkpVd42Ia3yeCn4fSZoEr+m5FoGHtZvAV6J6YuU3lewg5Rg5ORGvwhdgN+7gNzwkl7tA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [openharmony] - '@oxlint/binding-win32-arm64-msvc@1.91.0': - resolution: {integrity: sha512-KQItBdsyHN28U3z/bEek6h9pvG3Uqv564QYO8K1bE/V7YRZgpHlRnfNKVPHkk4sfYKyPzEjCgW80QkImOLvJog==} + '@oxlint/binding-win32-arm64-msvc@1.92.0': + resolution: {integrity: sha512-ryxiR3ZqB0OJzydMu+bVC3R7ZtoU7X1rI8sEgTBCCvQvgVwoCwqSFlfmhgiZ+9wZ4IdTsFeu9tdiF9KtRCbSHQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [win32] - '@oxlint/binding-win32-ia32-msvc@1.91.0': - resolution: {integrity: sha512-XFKqbbsQVmTgw+CyBKuzSZtAa45viom1naFfulKmkTFdDyDaBQaBqEz5J61TI8iwBynU+F8q7qPD+9mplZRhEg==} + '@oxlint/binding-win32-ia32-msvc@1.92.0': + resolution: {integrity: sha512-DaE9OChj4nsdEST32BP7saGu8WtjOinTy/eS88dZ0TvTfDV26ebRDhsI1rL9OKXfO+DgehzhAQMqdPr2jgfcFw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ia32] os: [win32] - '@oxlint/binding-win32-x64-msvc@1.91.0': - resolution: {integrity: sha512-DmpK0PthG66Bcz5Y4JqNbzXltzyLQtg3ofYpd25+ejm7kQYUM78VL1uIP/ZFct2781mwUyBX37LatFPCTVp35A==} + '@oxlint/binding-win32-x64-msvc@1.92.0': + resolution: {integrity: sha512-0AyhqX0ciFuEnHIL+B4PIMMX3s/IpGHNEbbUqwsNhSrzWUSlEOPw/q7qFnRsEJfiKedcqVfUE/aXYuSMtpiFyw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [win32] @@ -983,6 +1005,110 @@ packages: '@remix-run/node-fetch-server@1.0.0': resolution: {integrity: sha512-M/zI70dmLQdIae+mG95XecvoI3uw0o/ZwflsMAFtaQA/MceznyKaT8aSPvvGVK6yRufzQrY++Ohwei7EhyY3qw==} + '@rolldown/binding-android-arm-eabi@1.3.0': + resolution: {integrity: sha512-zjq+pUSE36RJG9nJXqrRfMCOxekzVhlaYMtFELHaOcRH4UqTnkWhbTbEixKEawsb0ZTVMRbn8RLYcuU4DYk8qg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm] + os: [android] + + '@rolldown/binding-android-arm64@1.3.0': + resolution: {integrity: sha512-HdnCiSmMGgEILGVLU1o4dcOblLGj8sMnqEFrDY/S7KRti1nTQHAqGGs2AniPspbK90AFS3pM23K/R0J3hPQXYQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [android] + + '@rolldown/binding-darwin-arm64@1.3.0': + resolution: {integrity: sha512-TkQ2JGC8/9UxoCeH5dSJj1gxuFhzw200QTJJd2YNPRXznSSM4XvpKV2Cs+RM2BcM8sa6xa4rmXNuiJ64+1993g==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [darwin] + + '@rolldown/binding-darwin-x64@1.3.0': + resolution: {integrity: sha512-Gr+iZW50RJZo4BPUazaDh/Azx7W0Rl04sy2MkXD+H4RkxzUX5hIrjaVw1BK+XHsccKExQAmCy6DhvRLlUzaYUg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [darwin] + + '@rolldown/binding-freebsd-x64@1.3.0': + resolution: {integrity: sha512-RwAtx8peSqUoBf8pxE0L62xKXBNnA3BtdFV+07t13t0TQoASCtV9tnU67aKKMRZSiD06SU07chB5B8fWFdW3gQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [freebsd] + + '@rolldown/binding-linux-arm-gnueabihf@1.3.0': + resolution: {integrity: sha512-ow8fq6kYaIx75D0EVT5GeF4DcawcEYYXJ2CvEaOzyygW1jtVDQU/9o5YYidctHBRDUgPzGaTNB6n/VMTmd1ymw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm] + os: [linux] + + '@rolldown/binding-linux-arm64-gnu@1.3.0': + resolution: {integrity: sha512-PLOWuiz+rdqSgiLgN7bxvy6DjXLj8gnJxzRS243LNnLi96VeyB7VFsC3eblcKv3Xwd3jQqJfbCWRhLijTIZyvQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@rolldown/binding-linux-arm64-musl@1.3.0': + resolution: {integrity: sha512-CQ/k85cc342j5SnZ/gT9p132NXZRGTgLRhfItdYqUg+jpvL5HYFve0GB+zQDCYGwDjtDWIoqKSOitkmZMZc/tw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@rolldown/binding-linux-ppc64-gnu@1.3.0': + resolution: {integrity: sha512-wk+ZG7xDP2px3cQRFoNoNp52/w1O5hTTtciHxuastreMOp8isYUTCpcG/rEYnSQBI+nycN+B9d9pBGua+qvV7w==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [ppc64] + os: [linux] + libc: [glibc] + + '@rolldown/binding-linux-s390x-gnu@1.3.0': + resolution: {integrity: sha512-sEgyZt72Rj7V5q6OZ7A4U2I5v4EMGEv3Fp5QmoncmKbUMTrGmpyH7MwENfERGbfUYjxdBmktw4JJLys5I1aQNQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [s390x] + os: [linux] + libc: [glibc] + + '@rolldown/binding-linux-x64-gnu@1.3.0': + resolution: {integrity: sha512-PvL0BoBUwVugK1pFd+zyVk1L9F6ucmQ7oF2dpy8zKPHNlbW2zrU9Jst3fWYfG7z3owjxqhwAvi5G4o0AikrJMw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@rolldown/binding-linux-x64-musl@1.3.0': + resolution: {integrity: sha512-5N4DdzAmLtnyuh027H6ViC99BeoA4T0RwKS6qUrl6zY70AKRsNDrnEZeWnqrKmDRFxXmv8zf9yhF2DxN/SfyGQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + libc: [musl] + + '@rolldown/binding-openharmony-arm64@1.3.0': + resolution: {integrity: sha512-Tz+2b+yF5eVRGX3DWebn2JIvZkNYI1gkafI+nF2fau2zeQDOpBAS8w1PxHi4ke//NIOE6+2DNYyq1veIjzAXqQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [openharmony] + + '@rolldown/binding-wasm32-wasi@1.3.0': + resolution: {integrity: sha512-ntK6OFor3nQtS1TenZP5wX59oPpkKEmour3AipGHB32u+Z8QXxjVdG+7vNSvgerRWIj6vjg4XpKu42slb0vlXQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=23.5.0} + cpu: [wasm32] + + '@rolldown/binding-win32-arm64-msvc@1.3.0': + resolution: {integrity: sha512-ldH38lBlOpS+b4fbSG9euQjhYXLE18PIz5hyvf6gvFfyVLodRE/Tsu4jV8UmPqjjce6lotmUUwscxPuer4lczQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [win32] + + '@rolldown/binding-win32-x64-msvc@1.3.0': + resolution: {integrity: sha512-HglhUzUPuXNTGFt5ZwJalSEvavhFSl+nxpQM9urkzkt+2oGI1ZSwgyytk9aGw15/0kk1TCHPc57nv3DdiG8/yQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [win32] + + '@rolldown/pluginutils@1.0.1': + resolution: {integrity: sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw==} + '@rollup/rollup-android-arm-eabi@4.63.1': resolution: {integrity: sha512-UZ8sUxPTiHWYX9QNdJedb1kDZSpS1t/VPWBWGSgqHNi9w3Cu6IXvu2mzbhiTiPvtrqgTQJ+zqiAq2iPIPilpaQ==} cpu: [arm] @@ -1124,6 +1250,9 @@ packages: '@standard-schema/spec@1.1.0': resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} + '@tybys/wasm-util@0.10.4': + resolution: {integrity: sha512-W3c4gRigFS0T/Ma4qIYF3GDAc5AQdHb1yL5znJT1Zv1YaD9Kitx656wBjvr19qbiosmZT8lWDM5BEMynUqX65A==} + '@types/aws-lambda@8.10.164': resolution: {integrity: sha512-XOnrazWcOd6yWPnR7DxqCBPPYciDjHq+NN8LPwwqBCJNXLyPJgKo47fZpJ113+oyAn9Zti0Cf6H4k6yPcE3WFg==} @@ -1357,6 +1486,36 @@ packages: '@vitest/utils@4.1.11': resolution: {integrity: sha512-zTCVGpyFsGWBhllOyKlTw/vnr6D9qxsfSDyfbyZmTyjHw5N/VuvzHpHoQjm2ZJzn4RJgx5w4r7V0er69CmLgPQ==} + '@yuku-toolchain/darwin-arm64@0.27.0': + resolution: {integrity: sha512-A3v83rNyHWlnJeeMBsWggZ+RZDP2BEMHIiMk+j23LqtVch24MXwg8veflkQgZ2GtCtZOxcG+NkztnsSUS4rWEQ==} + cpu: [arm64] + os: [darwin] + + '@yuku-toolchain/darwin-x64@0.27.0': + resolution: {integrity: sha512-u+fcqQw0uRj5irtO5f0xu5nGazYRxfBVBNIuhiONWX6Mh2izRONSNXhCwFDaYRqHunublzw2l2aQMB0n5n1t0Q==} + cpu: [x64] + os: [darwin] + + '@yuku-toolchain/linux-arm64@0.27.0': + resolution: {integrity: sha512-IPB+9LSC/sf8Sa8DtqapUgU4uTL/U94Vr5mgUsfRx59u8/4BT38cze+e5b96AlQynsdtuF4tgC0FW0TmJ2B75g==} + cpu: [arm64] + os: [linux] + + '@yuku-toolchain/linux-x64@0.27.0': + resolution: {integrity: sha512-fe1kN04JPBODrkRZOuI06jIqKyzcyn0ykx+tpiERDwqAh9ALWOtkgfhFjVaOQSu+guhakzY/89xjQdmfY7EJ7w==} + cpu: [x64] + os: [linux] + + '@yuku-toolchain/win32-arm64@0.27.0': + resolution: {integrity: sha512-NZmiFTF7ee45Fhnsa0BGMCpElJGg8iGYt4N3UoKj/n1vNmACcgY6NI4najNr9Jc1ulIVVvtPbo934RMlZQakrA==} + cpu: [arm64] + os: [win32] + + '@yuku-toolchain/win32-x64@0.27.0': + resolution: {integrity: sha512-7LSviI8HtHga0g7G2oT7C/SP2IoLmrg8LYPeWZkp4ljFtaWKJoTRF0Iv0cVt0dR4rehoN/+TjN4r8SoArCKvlg==} + cpu: [x64] + os: [win32] + abstract-logging@2.0.1: resolution: {integrity: sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==} @@ -1480,6 +1639,10 @@ packages: resolution: {integrity: sha512-tixWYgm5ZoOD+3g6UTea91eow5z6AAHaho3g0V9CNSNb45gM8SmflpAc+GRd1InC4AqN/07Unrgp56Y94N9hJQ==} engines: {node: '>=20.19.0'} + cac@7.1.0: + resolution: {integrity: sha512-LMDU/U2yA4IPIY8KT0NsNPWEYZvAMkbgyspxJ6btJaYV+WMDOHAZCmB0lsTObiHaRS1V/ztKAl7+TSkTqXyeoA==} + engines: {node: '>=20.19.0'} + call-bind-apply-helpers@1.0.2: resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} engines: {node: '>= 0.4'} @@ -1645,6 +1808,15 @@ packages: resolution: {integrity: sha512-nI4U3TottKAcAD9LLud4Cb7b2QztQMUEfHbvhTH09bqXTxnSie8WnjPALV/WMCrJZ6UV/qHJ6L03OqO3LcdYZw==} engines: {node: '>=12'} + dts-resolver@3.0.0: + resolution: {integrity: sha512-1T1f+z+4tl9XD+m+0HBgWoL/nm0bOIffyWaUuUSBlFg/86IWvfx+wjNaO/ybU0AJzG9/Mi5hBUgGV6zCmWEN7Q==} + engines: {node: ^22.18.0 || >=24.0.0} + peerDependencies: + oxc-resolver: '>=11.0.0' + peerDependenciesMeta: + oxc-resolver: + optional: true + dunder-proto@1.0.1: resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} engines: {node: '>= 0.4'} @@ -1652,6 +1824,10 @@ packages: ee-first@1.1.1: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} + empathic@2.1.0: + resolution: {integrity: sha512-AnfC1ATldl49/cvZdLPDjBfrRNwbDO05aibiOtzQu3qtlbJtomNLhF30HEtn/7iBz50dlMECqATo3fG0LrdEgw==} + engines: {node: '>=14'} + encodeurl@2.0.0: resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==} engines: {node: '>= 0.8'} @@ -1813,6 +1989,10 @@ packages: resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} engines: {node: '>= 0.4'} + get-tsconfig@5.0.0-beta.6: + resolution: {integrity: sha512-X6fBC0pmImC70gvX2zm56go9hx0MyoGVdG0tUCkg/D+Xnh5TJsOZ7iDbOdI3PvmtrDxnu1YdDufpK2QJX1Meqw==} + engines: {node: '>=20.20.0'} + giget@1.2.5: resolution: {integrity: sha512-r1ekGw/Bgpi3HLV3h1MRBIlSAdHoIMklpaQ3OQLFcRw9PwAj2rqigvIbg+dBUI51OxVI2jsEtDywDBjSiuf7Ug==} hasBin: true @@ -1862,6 +2042,9 @@ packages: resolution: {integrity: sha512-O6+/eCYRkzzzy0rPWwKLiGBR1nFuUPZynnwjxN1MBA62NNqbT0wQEzQyK2gSO5yDIDB336sXQleAhOHrzlYyKw==} engines: {node: '>=16.9.0'} + hookable@6.1.2: + resolution: {integrity: sha512-+abwxtiEA52GCVIsQqut3S/uKTbUwYIp4Pe/vv+6py5XiXBCqMZHg6pA6Y5qhgLSEys0/cYuPbO0z1QFj5ZCmg==} + html-escaper@2.0.2: resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} @@ -1881,6 +2064,10 @@ packages: resolution: {integrity: sha512-IKXpvIzjnC9XTAUbVBcMfGS0EPaIXtW6v+zr+RRp+hqULEpo0owZax6wyRwPOJbWbzjYspQwusTsfVr0ifh4uQ==} engines: {node: '>=0.10.0'} + import-without-cache@0.4.1: + resolution: {integrity: sha512-vXoV9PjKHEednCUu01e98TkImxy67e3BJXbTIOmIq4Hyzw3IAwYRcuPkfeTzJzwyyts4kjuA73x+pWJLc4f86A==} + engines: {node: ^22.18.0 || >=24.0.0} + inherits@2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} @@ -2090,6 +2277,10 @@ packages: resolution: {integrity: sha512-4a+OsYv9UktOJKE+l1A4OufDgdRF9PifWj+tJnHURo/P+WOxpG4GzUFL9qCalmWauao6ogiG+QvnCovwPoyAWA==} engines: {node: '>=12.20.0'} + obug@3.0.0: + resolution: {integrity: sha512-5vvB5+W7ePv+p3uqxi+RcW1XAzLW0/hxt3/4X4Lc4qHudzOhmBiBwOY6DRob4WnanAEGvNcLjF+KNOufrUoEQw==} + engines: {node: '>=12.20.0'} + ofetch@1.5.1: resolution: {integrity: sha512-2W4oUZlVaqAPAil6FUg/difl6YhqhUR7x2eZY4bQCko22UXg3hptq9KLQdqFClV+Wu85UX7hNtdGTngi/1BxcA==} @@ -2114,8 +2305,8 @@ packages: resolution: {integrity: sha512-YgBpdJHPyQ2UE5x+hlSXcnejzAvD0b22U2OuAP+8OnlJT+PjWPxtgmGqKKc+RgTM63U9gN0YzrYc71R2WT/hTA==} engines: {node: '>=18'} - oxfmt@0.76.0: - resolution: {integrity: sha512-Yo9RIn9lRWTm/U8obHbXUWc39lCpEFXlEggFoPx01zS18OCFi7mAwMmL05+p1AunuJgSkONffWyBHJzpMMCRuQ==} + oxfmt@0.77.0: + resolution: {integrity: sha512-3bPDJwLZf4i6dOaQS+6GOI/YUFTHNif7qw4nknbZyzdB0uws57tD8jA/GLGC9J7kjyf6d/eVWm73b43VeMUqGw==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true peerDependencies: @@ -2130,12 +2321,12 @@ packages: vite-plus: optional: true - oxlint-tsgolint@7.0.2005: - resolution: {integrity: sha512-6ccPGu4u4J9bwYPHXBFPee3RZrX3BboRdU7k14zRDDB1lvN3O7J/vPRFdaEfa1+CWx4xnQQOp4ctoaF66oO0uw==} + oxlint-tsgolint@7.0.2006: + resolution: {integrity: sha512-5B3UtH71kycPHUC1kFEIffivEAs49SUmkJuHZOZnTY0NPj4legp0bcsCQucuLVNCoJzDucS68P2C4WIhP+LypQ==} hasBin: true - oxlint@1.91.0: - resolution: {integrity: sha512-vjy/cBZcEFcYh3dbxUoQK+bjc+QaY3ZWo86aJkZ5YAwp/HyiqP7dTdNgbvcIVJafhAH5sZbTqBp4sZcicEZngA==} + oxlint@1.92.0: + resolution: {integrity: sha512-y9iRiRwVjVFqzKNXZJ9bT/GYRdf+F9Gy+a1Yju2Aq3xqqa4FJYXHI8VrxlpzxKDvkYRohvJX42m/eH+qkQPOFw==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true peerDependencies: @@ -2298,6 +2489,9 @@ packages: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} engines: {node: '>=0.10.0'} + resolve-pkg-maps@1.0.0: + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + ret@0.5.0: resolution: {integrity: sha512-I1XxrZSQ+oErkRR4jYbAyEEu2I0avBvvMM5JN+6EBprOGRCs63ENqZ3vjavq8fBw2+62G5LF5XelKwuJpcvcxw==} engines: {node: '>=10'} @@ -2309,6 +2503,33 @@ packages: rfdc@1.4.1: resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} + rolldown-plugin-dts@0.30.0: + resolution: {integrity: sha512-5FNezfYv5alHvrYw5Xoj4RNqbZ9F+/1jETFSohhYfRiama8tUN4mcVURmBqbZQba45t5hRdW7aSOnV6WYIj0MA==} + engines: {node: ^22.18.0 || ^24.11.0 || >=26.0.0} + peerDependencies: + '@volar/typescript': ~2.4.0 + '@vue/language-core': ~3.2.0 || ~3.3.0 + rolldown: ^1.2.0 + tsrs: '*' + typescript: ^5.0.0 || ^6.0.0 || ~7.0.0 || ~7.1.0-0 + vue-tsc: ~3.2.0 || ~3.3.0 + peerDependenciesMeta: + '@volar/typescript': + optional: true + '@vue/language-core': + optional: true + tsrs: + optional: true + typescript: + optional: true + vue-tsc: + optional: true + + rolldown@1.3.0: + resolution: {integrity: sha512-7j1jdVlzWzbRat9EDMsB/QmyMcc6hOO0vbcma8LGjBTmKlpS5Hem+5fpntc/HoRV5tLrG+Qo6I1ZHV/ZuL5S8g==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + rollup@4.63.1: resolution: {integrity: sha512-3Df9jsstwhccuEfmAMi9l8XUh/GOkVObmFTU7CCVBysEbcOZLl84jCtaAZMcPiMz2EGKsATzQcU+Xr3n/wU6cg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} @@ -2516,6 +2737,9 @@ packages: resolution: {integrity: sha512-jBrmx4lYmaC9k/mgPbylxs7kBUxHtD8256up+HjLaDFfXScKJQyil+SWXSvhAtT7XHo+yTVlpB81PGmHP8oLSQ==} engines: {node: ^20.0.0 || >=22.0.0} + tinyps@0.5.2: + resolution: {integrity: sha512-sYhvdbpuo2rGE7u/jPUMiZz4H2LCaOodUtRD9ot4DLNFQbr884g9zozoJnxLI+1r4hXqWkmdHUl8Yig2Rllxxw==} + tinyrainbow@3.1.1: resolution: {integrity: sha512-yau8yJdTt989Mm0Bd/236QnzEiPf2xLLTqUZRUJOo/3CB078LSwzei343DgtJVmfJKJE3TMINY1u42SQsP6mXw==} engines: {node: '>=14.0.0'} @@ -2532,6 +2756,40 @@ packages: resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} engines: {node: '>=0.6'} + tsdown@0.23.7: + resolution: {integrity: sha512-w9nmWyEimfqQ7/HpVeKTldAeBvWGXiaWyNP7xaxSrr0GhKxsngEyTWqk1nOruRqvqRSkdpMMkpV2BcoWfLB4Uw==} + engines: {node: ^22.18.0 || ^24.11.0 || >=26.0.0} + hasBin: true + peerDependencies: + '@arethetypeswrong/core': ^0.18.1 + '@tsdown/css': 0.23.7 + '@tsdown/exe': 0.23.7 + '@vitejs/devtools': '*' + publint: ^0.3.8 + tsx: '*' + typescript: ^5.0.0 || ^6.0.0 || ^7.0.0 + unplugin-unused: '>=0.5.0' + unrun: '*' + peerDependenciesMeta: + '@arethetypeswrong/core': + optional: true + '@tsdown/css': + optional: true + '@tsdown/exe': + optional: true + '@vitejs/devtools': + optional: true + publint: + optional: true + tsx: + optional: true + typescript: + optional: true + unplugin-unused: + optional: true + unrun: + optional: true + tslib@1.14.1: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} @@ -2588,6 +2846,10 @@ packages: resolution: {integrity: sha512-sXMwN6DMHeouPfCxkxWkKAmxphWKEenHYY5H1nIBzU3PmDsmJp6kBXJdshjVdpMZuWCmL9SH7KFRx29AylpP6g==} engines: {node: '>=18.12.0'} + verkit@0.5.0: + resolution: {integrity: sha512-u4J1hr6Y+C/hit34GwL3eIcUf3wngT8TlYUjK7tk0jxydKLAq3sYvifjdTDA6U3KCKRcQCQDGf/srjxfZF3l7g==} + engines: {node: '>=18.12.0'} + vite@7.3.6: resolution: {integrity: sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg==} engines: {node: ^20.19.0 || >=22.12.0} @@ -2705,6 +2967,15 @@ packages: resolution: {integrity: sha512-4LCcse/U2MHZ63HAJVE+v71o7yOdIe4cZ70Wpf8D/IyjDKYQLV5GD46B+hSTjJsvV5PztjvHoU580EftxjDZFQ==} engines: {node: '>=12.20'} + yuku@0.27.0: + resolution: {integrity: sha512-YmSD4xYlESRi8egxzC4guegQdMhAcz1G9NUsMNrTABAIV9dQxoBzDC7ZyAG/dSG18o1Oxt4xDok2irvPy9FSJQ==} + engines: {node: '>=16.4.0'} + peerDependencies: + '@yuku-toolchain/wasm': 0.27.0 + peerDependenciesMeta: + '@yuku-toolchain/wasm': + optional: true + snapshots: '@babel/helper-string-parser@7.29.7': {} @@ -2743,6 +3014,22 @@ snapshots: - debug - supports-color + '@emnapi/core@2.0.0-beta.2': + dependencies: + '@emnapi/wasi-threads': 2.2.0 + tslib: 2.8.1 + optional: true + + '@emnapi/runtime@2.0.0-beta.2': + dependencies: + tslib: 2.8.1 + optional: true + + '@emnapi/wasi-threads@2.2.0': + dependencies: + tslib: 2.8.1 + optional: true + '@esbuild/aix-ppc64@0.28.2': optional: true @@ -2865,140 +3152,149 @@ snapshots: '@napi-rs/lzma-linux-x64-gnu@1.5.1': optional: true + '@napi-rs/wasm-runtime@1.2.6(@emnapi/core@2.0.0-beta.2)(@emnapi/runtime@2.0.0-beta.2)': + dependencies: + '@emnapi/core': 2.0.0-beta.2 + '@emnapi/runtime': 2.0.0-beta.2 + '@tybys/wasm-util': 0.10.4 + optional: true + '@noble/hashes@1.4.0': {} '@noble/hashes@1.8.0': {} - '@oxfmt/binding-android-arm-eabi@0.76.0': + '@oxc-project/types@0.157.0': {} + + '@oxfmt/binding-android-arm-eabi@0.77.0': optional: true - '@oxfmt/binding-android-arm64@0.76.0': + '@oxfmt/binding-android-arm64@0.77.0': optional: true - '@oxfmt/binding-darwin-arm64@0.76.0': + '@oxfmt/binding-darwin-arm64@0.77.0': optional: true - '@oxfmt/binding-darwin-x64@0.76.0': + '@oxfmt/binding-darwin-x64@0.77.0': optional: true - '@oxfmt/binding-freebsd-x64@0.76.0': + '@oxfmt/binding-freebsd-x64@0.77.0': optional: true - '@oxfmt/binding-linux-arm-gnueabihf@0.76.0': + '@oxfmt/binding-linux-arm-gnueabihf@0.77.0': optional: true - '@oxfmt/binding-linux-arm-musleabihf@0.76.0': + '@oxfmt/binding-linux-arm-musleabihf@0.77.0': optional: true - '@oxfmt/binding-linux-arm64-gnu@0.76.0': + '@oxfmt/binding-linux-arm64-gnu@0.77.0': optional: true - '@oxfmt/binding-linux-arm64-musl@0.76.0': + '@oxfmt/binding-linux-arm64-musl@0.77.0': optional: true - '@oxfmt/binding-linux-ppc64-gnu@0.76.0': + '@oxfmt/binding-linux-ppc64-gnu@0.77.0': optional: true - '@oxfmt/binding-linux-riscv64-gnu@0.76.0': + '@oxfmt/binding-linux-riscv64-gnu@0.77.0': optional: true - '@oxfmt/binding-linux-riscv64-musl@0.76.0': + '@oxfmt/binding-linux-riscv64-musl@0.77.0': optional: true - '@oxfmt/binding-linux-s390x-gnu@0.76.0': + '@oxfmt/binding-linux-s390x-gnu@0.77.0': optional: true - '@oxfmt/binding-linux-x64-gnu@0.76.0': + '@oxfmt/binding-linux-x64-gnu@0.77.0': optional: true - '@oxfmt/binding-linux-x64-musl@0.76.0': + '@oxfmt/binding-linux-x64-musl@0.77.0': optional: true - '@oxfmt/binding-openharmony-arm64@0.76.0': + '@oxfmt/binding-openharmony-arm64@0.77.0': optional: true - '@oxfmt/binding-win32-arm64-msvc@0.76.0': + '@oxfmt/binding-win32-arm64-msvc@0.77.0': optional: true - '@oxfmt/binding-win32-ia32-msvc@0.76.0': + '@oxfmt/binding-win32-ia32-msvc@0.77.0': optional: true - '@oxfmt/binding-win32-x64-msvc@0.76.0': + '@oxfmt/binding-win32-x64-msvc@0.77.0': optional: true - '@oxlint-tsgolint/darwin-arm64@7.0.2005': + '@oxlint-tsgolint/darwin-arm64@7.0.2006': optional: true - '@oxlint-tsgolint/darwin-x64@7.0.2005': + '@oxlint-tsgolint/darwin-x64@7.0.2006': optional: true - '@oxlint-tsgolint/linux-arm64@7.0.2005': + '@oxlint-tsgolint/linux-arm64@7.0.2006': optional: true - '@oxlint-tsgolint/linux-x64@7.0.2005': + '@oxlint-tsgolint/linux-x64@7.0.2006': optional: true - '@oxlint-tsgolint/win32-arm64@7.0.2005': + '@oxlint-tsgolint/win32-arm64@7.0.2006': optional: true - '@oxlint-tsgolint/win32-x64@7.0.2005': + '@oxlint-tsgolint/win32-x64@7.0.2006': optional: true - '@oxlint/binding-android-arm-eabi@1.91.0': + '@oxlint/binding-android-arm-eabi@1.92.0': optional: true - '@oxlint/binding-android-arm64@1.91.0': + '@oxlint/binding-android-arm64@1.92.0': optional: true - '@oxlint/binding-darwin-arm64@1.91.0': + '@oxlint/binding-darwin-arm64@1.92.0': optional: true - '@oxlint/binding-darwin-x64@1.91.0': + '@oxlint/binding-darwin-x64@1.92.0': optional: true - '@oxlint/binding-freebsd-x64@1.91.0': + '@oxlint/binding-freebsd-x64@1.92.0': optional: true - '@oxlint/binding-linux-arm-gnueabihf@1.91.0': + '@oxlint/binding-linux-arm-gnueabihf@1.92.0': optional: true - '@oxlint/binding-linux-arm-musleabihf@1.91.0': + '@oxlint/binding-linux-arm-musleabihf@1.92.0': optional: true - '@oxlint/binding-linux-arm64-gnu@1.91.0': + '@oxlint/binding-linux-arm64-gnu@1.92.0': optional: true - '@oxlint/binding-linux-arm64-musl@1.91.0': + '@oxlint/binding-linux-arm64-musl@1.92.0': optional: true - '@oxlint/binding-linux-ppc64-gnu@1.91.0': + '@oxlint/binding-linux-ppc64-gnu@1.92.0': optional: true - '@oxlint/binding-linux-riscv64-gnu@1.91.0': + '@oxlint/binding-linux-riscv64-gnu@1.92.0': optional: true - '@oxlint/binding-linux-riscv64-musl@1.91.0': + '@oxlint/binding-linux-riscv64-musl@1.92.0': optional: true - '@oxlint/binding-linux-s390x-gnu@1.91.0': + '@oxlint/binding-linux-s390x-gnu@1.92.0': optional: true - '@oxlint/binding-linux-x64-gnu@1.91.0': + '@oxlint/binding-linux-x64-gnu@1.92.0': optional: true - '@oxlint/binding-linux-x64-musl@1.91.0': + '@oxlint/binding-linux-x64-musl@1.92.0': optional: true - '@oxlint/binding-openharmony-arm64@1.91.0': + '@oxlint/binding-openharmony-arm64@1.92.0': optional: true - '@oxlint/binding-win32-arm64-msvc@1.91.0': + '@oxlint/binding-win32-arm64-msvc@1.92.0': optional: true - '@oxlint/binding-win32-ia32-msvc@1.91.0': + '@oxlint/binding-win32-ia32-msvc@1.92.0': optional: true - '@oxlint/binding-win32-x64-msvc@1.91.0': + '@oxlint/binding-win32-x64-msvc@1.92.0': optional: true '@paralleldrive/cuid2@2.3.1': @@ -3107,6 +3403,60 @@ snapshots: '@remix-run/node-fetch-server@1.0.0': {} + '@rolldown/binding-android-arm-eabi@1.3.0': + optional: true + + '@rolldown/binding-android-arm64@1.3.0': + optional: true + + '@rolldown/binding-darwin-arm64@1.3.0': + optional: true + + '@rolldown/binding-darwin-x64@1.3.0': + optional: true + + '@rolldown/binding-freebsd-x64@1.3.0': + optional: true + + '@rolldown/binding-linux-arm-gnueabihf@1.3.0': + optional: true + + '@rolldown/binding-linux-arm64-gnu@1.3.0': + optional: true + + '@rolldown/binding-linux-arm64-musl@1.3.0': + optional: true + + '@rolldown/binding-linux-ppc64-gnu@1.3.0': + optional: true + + '@rolldown/binding-linux-s390x-gnu@1.3.0': + optional: true + + '@rolldown/binding-linux-x64-gnu@1.3.0': + optional: true + + '@rolldown/binding-linux-x64-musl@1.3.0': + optional: true + + '@rolldown/binding-openharmony-arm64@1.3.0': + optional: true + + '@rolldown/binding-wasm32-wasi@1.3.0': + dependencies: + '@emnapi/core': 2.0.0-beta.2 + '@emnapi/runtime': 2.0.0-beta.2 + '@napi-rs/wasm-runtime': 1.2.6(@emnapi/core@2.0.0-beta.2)(@emnapi/runtime@2.0.0-beta.2) + optional: true + + '@rolldown/binding-win32-arm64-msvc@1.3.0': + optional: true + + '@rolldown/binding-win32-x64-msvc@1.3.0': + optional: true + + '@rolldown/pluginutils@1.0.1': {} + '@rollup/rollup-android-arm-eabi@4.63.1': optional: true @@ -3184,6 +3534,11 @@ snapshots: '@standard-schema/spec@1.1.0': {} + '@tybys/wasm-util@0.10.4': + dependencies: + tslib: 2.8.1 + optional: true + '@types/aws-lambda@8.10.164': {} '@types/body-parser@1.19.6': @@ -3402,6 +3757,24 @@ snapshots: convert-source-map: 2.0.0 tinyrainbow: 3.1.1 + '@yuku-toolchain/darwin-arm64@0.27.0': + optional: true + + '@yuku-toolchain/darwin-x64@0.27.0': + optional: true + + '@yuku-toolchain/linux-arm64@0.27.0': + optional: true + + '@yuku-toolchain/linux-x64@0.27.0': + optional: true + + '@yuku-toolchain/win32-arm64@0.27.0': + optional: true + + '@yuku-toolchain/win32-x64@0.27.0': + optional: true + abstract-logging@2.0.1: {} accepts@1.3.8: @@ -3572,6 +3945,8 @@ snapshots: cac@7.0.0: {} + cac@7.1.0: {} + call-bind-apply-helpers@1.0.2: dependencies: es-errors: 1.3.0 @@ -3723,6 +4098,8 @@ snapshots: dotenv@17.4.2: {} + dts-resolver@3.0.0: {} + dunder-proto@1.0.1: dependencies: call-bind-apply-helpers: 1.0.2 @@ -3731,6 +4108,8 @@ snapshots: ee-first@1.1.1: {} + empathic@2.1.0: {} + encodeurl@2.0.0: {} es-define-property@1.0.1: {} @@ -4000,6 +4379,10 @@ snapshots: dunder-proto: 1.0.1 es-object-atoms: 1.1.2 + get-tsconfig@5.0.0-beta.6: + dependencies: + resolve-pkg-maps: 1.0.0 + giget@1.2.5: dependencies: citty: 0.1.6 @@ -4037,6 +4420,8 @@ snapshots: hono@4.13.5: {} + hookable@6.1.2: {} + html-escaper@2.0.2: {} http-errors@2.0.1: @@ -4062,6 +4447,8 @@ snapshots: dependencies: safer-buffer: 2.1.2 + import-without-cache@0.4.1: {} + inherits@2.0.4: {} ipaddr.js@1.9.1: {} @@ -4224,6 +4611,8 @@ snapshots: obug@2.1.4: {} + obug@3.0.0: {} + ofetch@1.5.1: dependencies: destr: 2.0.5 @@ -4251,61 +4640,61 @@ snapshots: is-inside-container: 1.0.0 wsl-utils: 0.1.0 - oxfmt@0.76.0: + oxfmt@0.77.0: dependencies: tinypool: 2.2.0 optionalDependencies: - '@oxfmt/binding-android-arm-eabi': 0.76.0 - '@oxfmt/binding-android-arm64': 0.76.0 - '@oxfmt/binding-darwin-arm64': 0.76.0 - '@oxfmt/binding-darwin-x64': 0.76.0 - '@oxfmt/binding-freebsd-x64': 0.76.0 - '@oxfmt/binding-linux-arm-gnueabihf': 0.76.0 - '@oxfmt/binding-linux-arm-musleabihf': 0.76.0 - '@oxfmt/binding-linux-arm64-gnu': 0.76.0 - '@oxfmt/binding-linux-arm64-musl': 0.76.0 - '@oxfmt/binding-linux-ppc64-gnu': 0.76.0 - '@oxfmt/binding-linux-riscv64-gnu': 0.76.0 - '@oxfmt/binding-linux-riscv64-musl': 0.76.0 - '@oxfmt/binding-linux-s390x-gnu': 0.76.0 - '@oxfmt/binding-linux-x64-gnu': 0.76.0 - '@oxfmt/binding-linux-x64-musl': 0.76.0 - '@oxfmt/binding-openharmony-arm64': 0.76.0 - '@oxfmt/binding-win32-arm64-msvc': 0.76.0 - '@oxfmt/binding-win32-ia32-msvc': 0.76.0 - '@oxfmt/binding-win32-x64-msvc': 0.76.0 - - oxlint-tsgolint@7.0.2005: + '@oxfmt/binding-android-arm-eabi': 0.77.0 + '@oxfmt/binding-android-arm64': 0.77.0 + '@oxfmt/binding-darwin-arm64': 0.77.0 + '@oxfmt/binding-darwin-x64': 0.77.0 + '@oxfmt/binding-freebsd-x64': 0.77.0 + '@oxfmt/binding-linux-arm-gnueabihf': 0.77.0 + '@oxfmt/binding-linux-arm-musleabihf': 0.77.0 + '@oxfmt/binding-linux-arm64-gnu': 0.77.0 + '@oxfmt/binding-linux-arm64-musl': 0.77.0 + '@oxfmt/binding-linux-ppc64-gnu': 0.77.0 + '@oxfmt/binding-linux-riscv64-gnu': 0.77.0 + '@oxfmt/binding-linux-riscv64-musl': 0.77.0 + '@oxfmt/binding-linux-s390x-gnu': 0.77.0 + '@oxfmt/binding-linux-x64-gnu': 0.77.0 + '@oxfmt/binding-linux-x64-musl': 0.77.0 + '@oxfmt/binding-openharmony-arm64': 0.77.0 + '@oxfmt/binding-win32-arm64-msvc': 0.77.0 + '@oxfmt/binding-win32-ia32-msvc': 0.77.0 + '@oxfmt/binding-win32-x64-msvc': 0.77.0 + + oxlint-tsgolint@7.0.2006: optionalDependencies: - '@oxlint-tsgolint/darwin-arm64': 7.0.2005 - '@oxlint-tsgolint/darwin-x64': 7.0.2005 - '@oxlint-tsgolint/linux-arm64': 7.0.2005 - '@oxlint-tsgolint/linux-x64': 7.0.2005 - '@oxlint-tsgolint/win32-arm64': 7.0.2005 - '@oxlint-tsgolint/win32-x64': 7.0.2005 - - oxlint@1.91.0(oxlint-tsgolint@7.0.2005): + '@oxlint-tsgolint/darwin-arm64': 7.0.2006 + '@oxlint-tsgolint/darwin-x64': 7.0.2006 + '@oxlint-tsgolint/linux-arm64': 7.0.2006 + '@oxlint-tsgolint/linux-x64': 7.0.2006 + '@oxlint-tsgolint/win32-arm64': 7.0.2006 + '@oxlint-tsgolint/win32-x64': 7.0.2006 + + oxlint@1.92.0(oxlint-tsgolint@7.0.2006): optionalDependencies: - '@oxlint/binding-android-arm-eabi': 1.91.0 - '@oxlint/binding-android-arm64': 1.91.0 - '@oxlint/binding-darwin-arm64': 1.91.0 - '@oxlint/binding-darwin-x64': 1.91.0 - '@oxlint/binding-freebsd-x64': 1.91.0 - '@oxlint/binding-linux-arm-gnueabihf': 1.91.0 - '@oxlint/binding-linux-arm-musleabihf': 1.91.0 - '@oxlint/binding-linux-arm64-gnu': 1.91.0 - '@oxlint/binding-linux-arm64-musl': 1.91.0 - '@oxlint/binding-linux-ppc64-gnu': 1.91.0 - '@oxlint/binding-linux-riscv64-gnu': 1.91.0 - '@oxlint/binding-linux-riscv64-musl': 1.91.0 - '@oxlint/binding-linux-s390x-gnu': 1.91.0 - '@oxlint/binding-linux-x64-gnu': 1.91.0 - '@oxlint/binding-linux-x64-musl': 1.91.0 - '@oxlint/binding-openharmony-arm64': 1.91.0 - '@oxlint/binding-win32-arm64-msvc': 1.91.0 - '@oxlint/binding-win32-ia32-msvc': 1.91.0 - '@oxlint/binding-win32-x64-msvc': 1.91.0 - oxlint-tsgolint: 7.0.2005 + '@oxlint/binding-android-arm-eabi': 1.92.0 + '@oxlint/binding-android-arm64': 1.92.0 + '@oxlint/binding-darwin-arm64': 1.92.0 + '@oxlint/binding-darwin-x64': 1.92.0 + '@oxlint/binding-freebsd-x64': 1.92.0 + '@oxlint/binding-linux-arm-gnueabihf': 1.92.0 + '@oxlint/binding-linux-arm-musleabihf': 1.92.0 + '@oxlint/binding-linux-arm64-gnu': 1.92.0 + '@oxlint/binding-linux-arm64-musl': 1.92.0 + '@oxlint/binding-linux-ppc64-gnu': 1.92.0 + '@oxlint/binding-linux-riscv64-gnu': 1.92.0 + '@oxlint/binding-linux-riscv64-musl': 1.92.0 + '@oxlint/binding-linux-s390x-gnu': 1.92.0 + '@oxlint/binding-linux-x64-gnu': 1.92.0 + '@oxlint/binding-linux-x64-musl': 1.92.0 + '@oxlint/binding-openharmony-arm64': 1.92.0 + '@oxlint/binding-win32-arm64-msvc': 1.92.0 + '@oxlint/binding-win32-ia32-msvc': 1.92.0 + '@oxlint/binding-win32-x64-msvc': 1.92.0 + oxlint-tsgolint: 7.0.2006 p-limit@4.0.0: dependencies: @@ -4456,12 +4845,49 @@ snapshots: require-from-string@2.0.2: {} + resolve-pkg-maps@1.0.0: {} + ret@0.5.0: {} reusify@1.1.0: {} rfdc@1.4.1: {} + rolldown-plugin-dts@0.30.0(rolldown@1.3.0)(typescript@7.0.2): + dependencies: + dts-resolver: 3.0.0 + get-tsconfig: 5.0.0-beta.6 + obug: 3.0.0 + rolldown: 1.3.0 + yuku: 0.27.0 + optionalDependencies: + typescript: 7.0.2 + transitivePeerDependencies: + - '@yuku-toolchain/wasm' + - oxc-resolver + + rolldown@1.3.0: + dependencies: + '@oxc-project/types': 0.157.0 + '@rolldown/pluginutils': 1.0.1 + optionalDependencies: + '@rolldown/binding-android-arm-eabi': 1.3.0 + '@rolldown/binding-android-arm64': 1.3.0 + '@rolldown/binding-darwin-arm64': 1.3.0 + '@rolldown/binding-darwin-x64': 1.3.0 + '@rolldown/binding-freebsd-x64': 1.3.0 + '@rolldown/binding-linux-arm-gnueabihf': 1.3.0 + '@rolldown/binding-linux-arm64-gnu': 1.3.0 + '@rolldown/binding-linux-arm64-musl': 1.3.0 + '@rolldown/binding-linux-ppc64-gnu': 1.3.0 + '@rolldown/binding-linux-s390x-gnu': 1.3.0 + '@rolldown/binding-linux-x64-gnu': 1.3.0 + '@rolldown/binding-linux-x64-musl': 1.3.0 + '@rolldown/binding-openharmony-arm64': 1.3.0 + '@rolldown/binding-wasm32-wasi': 1.3.0 + '@rolldown/binding-win32-arm64-msvc': 1.3.0 + '@rolldown/binding-win32-x64-msvc': 1.3.0 + rollup@4.63.1: dependencies: '@types/estree': 1.0.9 @@ -4722,6 +5148,8 @@ snapshots: tinypool@2.2.0: {} + tinyps@0.5.2: {} + tinyrainbow@3.1.1: {} to-regex-range@5.0.1: @@ -4732,6 +5160,33 @@ snapshots: toidentifier@1.0.1: {} + tsdown@0.23.7(tsx@4.23.15)(typescript@7.0.2): + dependencies: + cac: 7.1.0 + defu: 6.1.7 + empathic: 2.1.0 + hookable: 6.1.2 + import-without-cache: 0.4.1 + obug: 3.0.0 + picomatch: 4.0.7 + rolldown: 1.3.0 + rolldown-plugin-dts: 0.30.0(rolldown@1.3.0)(typescript@7.0.2) + tinyexec: 1.3.1 + tinyglobby: 0.2.17 + tinyps: 0.5.2 + unconfig-core: 7.5.0 + verkit: 0.5.0 + optionalDependencies: + tsx: 4.23.15 + typescript: 7.0.2 + transitivePeerDependencies: + - '@volar/typescript' + - '@vue/language-core' + - '@yuku-toolchain/wasm' + - oxc-resolver + - tsrs + - vue-tsc + tslib@1.14.1: {} tslib@2.8.1: {} @@ -4805,6 +5260,8 @@ snapshots: verkit@0.4.0: {} + verkit@0.5.0: {} + vite@7.3.6(@types/node@26.6.4)(jiti@2.7.0)(tsx@4.23.15)(yaml@2.9.0): dependencies: esbuild: 0.28.2 @@ -4866,3 +5323,12 @@ snapshots: yaml@2.9.0: {} yocto-queue@1.2.2: {} + + yuku@0.27.0: + optionalDependencies: + '@yuku-toolchain/darwin-arm64': 0.27.0 + '@yuku-toolchain/darwin-x64': 0.27.0 + '@yuku-toolchain/linux-arm64': 0.27.0 + '@yuku-toolchain/linux-x64': 0.27.0 + '@yuku-toolchain/win32-arm64': 0.27.0 + '@yuku-toolchain/win32-x64': 0.27.0 diff --git a/tests/bun/tests/client-server.bun-fetch.ts b/tests/bun/tests/client-server.bun-fetch.ts index e8aefd1f..c41f48aa 100644 --- a/tests/bun/tests/client-server.bun-fetch.ts +++ b/tests/bun/tests/client-server.bun-fetch.ts @@ -6,8 +6,8 @@ import { toStandardLazyResponse, } from '@standard-server/fetch' -import type { ClientServerHandler, ClientServerTest } from './client-server.ts' -import { NOT_FOUND_HANDLER } from './client-server.ts' +import type { ClientServerHandler, ClientServerTest } from './client-server' +import { NOT_FOUND_HANDLER } from './client-server' export function createBunFetchClientServerTest(): ClientServerTest { let handler: ClientServerHandler = NOT_FOUND_HANDLER diff --git a/tests/bun/tests/client-server.bun-ws.ts b/tests/bun/tests/client-server.bun-ws.ts index 37c6f504..e0d3cf7d 100644 --- a/tests/bun/tests/client-server.bun-ws.ts +++ b/tests/bun/tests/client-server.bun-ws.ts @@ -7,8 +7,8 @@ import { ServerPeer, } from '@standard-server/peer' -import type { ClientServerHandler, ClientServerTest } from './client-server.ts' -import { NOT_FOUND_HANDLER, toEncodedPeerMessage } from './client-server.ts' +import type { ClientServerHandler, ClientServerTest } from './client-server' +import { NOT_FOUND_HANDLER, toEncodedPeerMessage } from './client-server' export function createBunWsClientServerTest(): ClientServerTest { let handler: ClientServerHandler = NOT_FOUND_HANDLER diff --git a/tests/bun/tests/data-transfer.test.ts b/tests/bun/tests/data-transfer.test.ts index b91285ad..d8b79a32 100644 --- a/tests/bun/tests/data-transfer.test.ts +++ b/tests/bun/tests/data-transfer.test.ts @@ -4,9 +4,9 @@ import type { StandardHeaders } from '@standard-server/core' import { EventStreamErrorEvent, unwrapEvent, withEventMeta } from '@standard-server/core' import { isAsyncIteratorObject, sleep } from '@standard-server/shared' -import { createBunFetchClientServerTest } from './client-server.bun-fetch.ts' -import { createBunWsClientServerTest } from './client-server.bun-ws.ts' -import { NOT_FOUND_HANDLER } from './client-server.ts' +import { NOT_FOUND_HANDLER } from './client-server' +import { createBunFetchClientServerTest } from './client-server.bun-fetch' +import { createBunWsClientServerTest } from './client-server.bun-ws' /** * Streaming tests produce a chunk every `CHUNK_DELAY` ms and assert each chunk diff --git a/tests/bun/tests/signal-and-cancel.test.ts b/tests/bun/tests/signal-and-cancel.test.ts index caf90f52..060f524d 100644 --- a/tests/bun/tests/signal-and-cancel.test.ts +++ b/tests/bun/tests/signal-and-cancel.test.ts @@ -2,9 +2,9 @@ import { afterAll, beforeEach, describe, expect, it } from 'bun:test' import { AsyncIteratorClass, isAsyncIteratorObject, sleep } from '@standard-server/shared' -import { createBunFetchClientServerTest } from './client-server.bun-fetch.ts' -import { createBunWsClientServerTest } from './client-server.bun-ws.ts' -import { NOT_FOUND_HANDLER, waitFor } from './client-server.ts' +import { NOT_FOUND_HANDLER, waitFor } from './client-server' +import { createBunFetchClientServerTest } from './client-server.bun-fetch' +import { createBunWsClientServerTest } from './client-server.bun-ws' const ADAPTERS = [ ['bun-fetch', createBunFetchClientServerTest], diff --git a/tests/client-server.expressjs.ts b/tests/client-server.expressjs.ts index ded501c1..da6a62c2 100644 --- a/tests/client-server.expressjs.ts +++ b/tests/client-server.expressjs.ts @@ -5,7 +5,7 @@ import { sendStandardResponse, toStandardLazyRequest } from '@standard-server/no import express from 'express' import express4 from 'express4' -import type { ClientServerTest } from './client-server.ts' +import type { ClientServerTest } from './client-server' export interface ExpressjsClientServerTestOptions { /** diff --git a/tests/client-server.fastify.ts b/tests/client-server.fastify.ts index 8695e206..137cc1dc 100644 --- a/tests/client-server.fastify.ts +++ b/tests/client-server.fastify.ts @@ -2,7 +2,7 @@ import { sendStandardResponse, toStandardLazyRequest } from '@standard-server/fa import { toFetchBody, toFetchHeaders, toStandardLazyResponse } from '@standard-server/fetch' import Fastify from 'fastify' -import type { ClientServerTest } from './client-server.ts' +import type { ClientServerTest } from './client-server' export function createFastifyClientServerTest(): ClientServerTest { const handler: ClientServerTest['handler'] = vi.fn(async () => { diff --git a/tests/client-server.h3-node-handler.ts b/tests/client-server.h3-node-handler.ts index e1ec8cdb..ad8df7a3 100644 --- a/tests/client-server.h3-node-handler.ts +++ b/tests/client-server.h3-node-handler.ts @@ -2,7 +2,7 @@ import { toFetchBody, toFetchHeaders, toStandardLazyResponse } from '@standard-s import { sendStandardResponse, toStandardLazyRequest } from '@standard-server/node' import { fromNodeHandler, H3, serve } from 'h3' -import type { ClientServerTest } from './client-server.ts' +import type { ClientServerTest } from './client-server' export function createH3NodeHandlerClientServerTest(): ClientServerTest { const handler: ClientServerTest['handler'] = vi.fn(async () => { diff --git a/tests/client-server.h3-web-handler.ts b/tests/client-server.h3-web-handler.ts index e2d15b9b..7f26e63b 100644 --- a/tests/client-server.h3-web-handler.ts +++ b/tests/client-server.h3-web-handler.ts @@ -7,7 +7,7 @@ import { } from '@standard-server/fetch' import { fromWebHandler, H3, serve } from 'h3' -import type { ClientServerTest } from './client-server.ts' +import type { ClientServerTest } from './client-server' export function createH3WebHandlerClientServerTest(): ClientServerTest { const handler: ClientServerTest['handler'] = vi.fn(async () => { diff --git a/tests/client-server.hono-fetch.ts b/tests/client-server.hono-fetch.ts index 7eb2d2b9..e760f089 100644 --- a/tests/client-server.hono-fetch.ts +++ b/tests/client-server.hono-fetch.ts @@ -9,7 +9,7 @@ import { toStandardLazyResponse, } from '@standard-server/fetch' -import type { ClientServerTest } from './client-server.ts' +import type { ClientServerTest } from './client-server' export function createHonoFetchClientServerTest(): ClientServerTest { const handler: ClientServerTest['handler'] = vi.fn(async () => { diff --git a/tests/client-server.inprogress-fetch.ts b/tests/client-server.inprogress-fetch.ts index ff0c688e..1a449841 100644 --- a/tests/client-server.inprogress-fetch.ts +++ b/tests/client-server.inprogress-fetch.ts @@ -6,7 +6,7 @@ import { toStandardLazyResponse, } from '@standard-server/fetch' -import type { ClientServerTest } from './client-server.ts' +import type { ClientServerTest } from './client-server' export function createInprogressFetchClientServerTest(): ClientServerTest { const handler: ClientServerTest['handler'] = vi.fn(async () => { diff --git a/tests/client-server.inprogress.ts b/tests/client-server.inprogress.ts index 310a03ce..344a33d3 100644 --- a/tests/client-server.inprogress.ts +++ b/tests/client-server.inprogress.ts @@ -1,4 +1,4 @@ -import type { ClientServerTest } from './client-server.ts' +import type { ClientServerTest } from './client-server' export function createInprogressClientServerTest(): ClientServerTest { const handler: ClientServerTest['handler'] = vi.fn(async () => { diff --git a/tests/client-server.message-port.ts b/tests/client-server.message-port.ts index cfd1387b..77eb3a57 100644 --- a/tests/client-server.message-port.ts +++ b/tests/client-server.message-port.ts @@ -6,15 +6,15 @@ import { ServerPeer, } from '@standard-server/peer' -import type { PeerClientServerTestOptions } from './client-server.peer.ts' +import type { ClientServerTest } from './client-server' +import type { PeerClientServerTestOptions } from './client-server.peer' import { expectPeerRequestsCleanedUpAfterEach, peerPrefix, randomEncodePeerMessage, toFetchStreamedStandardRequest, wrapFetchStreamedServerHandler, -} from './client-server.peer.ts' -import type { ClientServerTest } from './client-server.ts' +} from './client-server.peer' export function createMessagePortClientServerTest( options: PeerClientServerTestOptions = {}, diff --git a/tests/client-server.node-fetch-server.ts b/tests/client-server.node-fetch-server.ts index bc65a78c..63e4ce22 100644 --- a/tests/client-server.node-fetch-server.ts +++ b/tests/client-server.node-fetch-server.ts @@ -10,7 +10,7 @@ import { toStandardLazyResponse, } from '@standard-server/fetch' -import type { ClientServerTest } from './client-server.ts' +import type { ClientServerTest } from './client-server' export function createNodeFetchServerClientServerTest(): ClientServerTest { const handler: ClientServerTest['handler'] = vi.fn(async () => { diff --git a/tests/client-server.node-http.ts b/tests/client-server.node-http.ts index 54b40aea..adcac8bb 100644 --- a/tests/client-server.node-http.ts +++ b/tests/client-server.node-http.ts @@ -4,7 +4,7 @@ import type { AddressInfo } from 'node:net' import { toFetchBody, toFetchHeaders, toStandardLazyResponse } from '@standard-server/fetch' import { sendStandardResponse, toStandardLazyRequest } from '@standard-server/node' -import type { ClientServerTest } from './client-server.ts' +import type { ClientServerTest } from './client-server' export function createNodeHttpClientServerTest(): ClientServerTest { const handler: ClientServerTest['handler'] = vi.fn(async () => { diff --git a/tests/client-server.node-http2.ts b/tests/client-server.node-http2.ts index 47a2fa7d..13f10ff1 100644 --- a/tests/client-server.node-http2.ts +++ b/tests/client-server.node-http2.ts @@ -7,8 +7,8 @@ import { toFetchBody, toFetchHeaders, toStandardLazyResponse } from '@standard-s import { sendStandardResponse, toStandardLazyRequest } from '@standard-server/node' import { throwIfAborted } from '@standard-server/shared' -import type { ClientServerTest } from './client-server.ts' -import { generateTlsCert } from './tls.ts' +import type { ClientServerTest } from './client-server' +import { generateTlsCert } from './tls' export interface NodeHttp2ClientServerTestOptions { /** Serve over TLS (https) with a self-signed localhost certificate. */ diff --git a/tests/client-server.node-https.ts b/tests/client-server.node-https.ts index d0161ab1..4e309577 100644 --- a/tests/client-server.node-https.ts +++ b/tests/client-server.node-https.ts @@ -7,8 +7,8 @@ import { toFetchBody, toFetchHeaders, toStandardLazyResponse } from '@standard-s import { sendStandardResponse, toStandardLazyRequest } from '@standard-server/node' import { throwIfAborted } from '@standard-server/shared' -import type { ClientServerTest } from './client-server.ts' -import { generateTlsCert } from './tls.ts' +import type { ClientServerTest } from './client-server' +import { generateTlsCert } from './tls' export function createNodeHttpsClientServerTest(): ClientServerTest { const handler: ClientServerTest['handler'] = vi.fn(async () => { diff --git a/tests/client-server.node-srvx.ts b/tests/client-server.node-srvx.ts index 6b739b7c..0652c247 100644 --- a/tests/client-server.node-srvx.ts +++ b/tests/client-server.node-srvx.ts @@ -7,7 +7,7 @@ import { } from '@standard-server/fetch' import { serve } from 'srvx/node' -import type { ClientServerTest } from './client-server.ts' +import type { ClientServerTest } from './client-server' export function createNodeSrvxClientServerTest(): ClientServerTest { const handler: ClientServerTest['handler'] = vi.fn(async () => { diff --git a/tests/client-server.node-ws.ts b/tests/client-server.node-ws.ts index 06e41e80..48a459e7 100644 --- a/tests/client-server.node-ws.ts +++ b/tests/client-server.node-ws.ts @@ -7,7 +7,8 @@ import { } from '@standard-server/peer' import { WebSocket, WebSocketServer } from 'ws' -import type { PeerClientServerTestOptions } from './client-server.peer.ts' +import type { ClientServerTest } from './client-server' +import type { PeerClientServerTestOptions } from './client-server.peer' import { expectPeerRequestsCleanedUpAfterEach, peerPrefix, @@ -15,8 +16,7 @@ import { toFetchStreamedStandardRequest, wrapFetchStreamedServerHandler, wsMessageDataToEncoded, -} from './client-server.peer.ts' -import type { ClientServerTest } from './client-server.ts' +} from './client-server.peer' export function createNodeWsClientServerTest( options: PeerClientServerTestOptions = {}, diff --git a/tests/client-server.peer.ts b/tests/client-server.peer.ts index 471ba44e..55ecbcf4 100644 --- a/tests/client-server.peer.ts +++ b/tests/client-server.peer.ts @@ -5,7 +5,7 @@ import { toFetchBody, toFetchHeaders, toStandardBody } from '@standard-server/fe import type { ClientPeer, PeerMessage, ServerPeer } from '@standard-server/peer' import { encodePeerMessage } from '@standard-server/peer' -import type { ClientServerTest } from './client-server.ts' +import type { ClientServerTest } from './client-server' export const peerPrefix = '__PREFIX__' diff --git a/tests/data-transfer.test.ts b/tests/data-transfer.test.ts index 5fc63263..bd9d3a62 100644 --- a/tests/data-transfer.test.ts +++ b/tests/data-transfer.test.ts @@ -2,19 +2,19 @@ import { EventStreamErrorEvent, unwrapEvent, withEventMeta } from '@standard-ser import { toFetchHeaders } from '@standard-server/fetch' import { isAsyncIteratorObject, sleep } from '@standard-server/shared' -import { createExpressjsClientServerTest } from './client-server.expressjs.ts' -import { createFastifyClientServerTest } from './client-server.fastify.ts' -import { createH3WebHandlerClientServerTest } from './client-server.h3-web-handler.ts' -import { createHonoFetchClientServerTest } from './client-server.hono-fetch.ts' -import { createInprogressFetchClientServerTest } from './client-server.inprogress-fetch.ts' -import { createInprogressClientServerTest } from './client-server.inprogress.ts' -import { createMessagePortClientServerTest } from './client-server.message-port.ts' -import { createNodeHttpClientServerTest } from './client-server.node-http.ts' -import { createNodeHttp2ClientServerTest } from './client-server.node-http2.ts' -import { createNodeHttpsClientServerTest } from './client-server.node-https.ts' -import { createNodeSrvxClientServerTest } from './client-server.node-srvx.ts' -import { createNodeWsClientServerTest } from './client-server.node-ws.ts' -import { expectPeerMessages } from './client-server.ts' +import { expectPeerMessages } from './client-server' +import { createExpressjsClientServerTest } from './client-server.expressjs' +import { createFastifyClientServerTest } from './client-server.fastify' +import { createH3WebHandlerClientServerTest } from './client-server.h3-web-handler' +import { createHonoFetchClientServerTest } from './client-server.hono-fetch' +import { createInprogressClientServerTest } from './client-server.inprogress' +import { createInprogressFetchClientServerTest } from './client-server.inprogress-fetch' +import { createMessagePortClientServerTest } from './client-server.message-port' +import { createNodeHttpClientServerTest } from './client-server.node-http' +import { createNodeHttp2ClientServerTest } from './client-server.node-http2' +import { createNodeHttpsClientServerTest } from './client-server.node-https' +import { createNodeSrvxClientServerTest } from './client-server.node-srvx' +import { createNodeWsClientServerTest } from './client-server.node-ws' /** * Streaming tests produce a chunk every `CHUNK_DELAY` ms and assert each chunk diff --git a/tests/signal-and-cancel.test.ts b/tests/signal-and-cancel.test.ts index 451f98fa..1f144f7c 100644 --- a/tests/signal-and-cancel.test.ts +++ b/tests/signal-and-cancel.test.ts @@ -1,14 +1,14 @@ import { AsyncIteratorClass, isAsyncIteratorObject, sleep } from '@standard-server/shared' -import { createExpressjsClientServerTest } from './client-server.expressjs.ts' -import { createFastifyClientServerTest } from './client-server.fastify.ts' -import { createHonoFetchClientServerTest } from './client-server.hono-fetch.ts' -import { createMessagePortClientServerTest } from './client-server.message-port.ts' -import { createNodeHttpClientServerTest } from './client-server.node-http.ts' -import { createNodeHttp2ClientServerTest } from './client-server.node-http2.ts' -import { createNodeHttpsClientServerTest } from './client-server.node-https.ts' -import { createNodeWsClientServerTest } from './client-server.node-ws.ts' -import { expectPeerMessages } from './client-server.ts' +import { expectPeerMessages } from './client-server' +import { createExpressjsClientServerTest } from './client-server.expressjs' +import { createFastifyClientServerTest } from './client-server.fastify' +import { createHonoFetchClientServerTest } from './client-server.hono-fetch' +import { createMessagePortClientServerTest } from './client-server.message-port' +import { createNodeHttpClientServerTest } from './client-server.node-http' +import { createNodeHttp2ClientServerTest } from './client-server.node-http2' +import { createNodeHttpsClientServerTest } from './client-server.node-https' +import { createNodeWsClientServerTest } from './client-server.node-ws' beforeEach(() => { vi.clearAllMocks() diff --git a/tsconfig.json b/tsconfig.json index 0b38b141..149efb24 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -3,9 +3,9 @@ "compilerOptions": { "target": "ES2022", "lib": ["ES2023"], - "module": "nodenext", + "module": "preserve", + "moduleResolution": "bundler", - "rewriteRelativeImportExtensions": true, "types": ["node", "vitest/globals"], "noImplicitOverride": true, diff --git a/tsconfig.lib.json b/tsconfig.lib.json index 456df90a..686d4b24 100644 --- a/tsconfig.lib.json +++ b/tsconfig.lib.json @@ -3,11 +3,7 @@ "extends": "./tsconfig.json", "compilerOptions": { "lib": ["ES2022", "DOM", "DOM.Iterable"], - "types": [], - "declaration": true, - "noEmit": false, - "rootDir": "${configDir}/src", - "outDir": "${configDir}/dist" + "types": [] }, "include": ["${configDir}/src"], "exclude": ["${configDir}/src/**/*.test.ts", "${configDir}/src/**/*.test-d.ts"] diff --git a/tsdown.config.ts b/tsdown.config.ts new file mode 100644 index 00000000..e8c14652 --- /dev/null +++ b/tsdown.config.ts @@ -0,0 +1,21 @@ +import { readFileSync } from 'node:fs' + +import { defineConfig } from 'tsdown' + +const pkg = JSON.parse(readFileSync('package.json', 'utf8')) as { + exports: Record + dependencies?: Record + peerDependencies?: Record +} + +export default defineConfig({ + entry: Object.values(pkg.exports).filter((path) => path.startsWith('./src/')), + unbundle: true, + deps: { + neverBundle: true, + onlyImport: [...Object.keys({ ...pkg.dependencies, ...pkg.peerDependencies }), /^node:/], + }, + platform: 'neutral', + target: 'es2022', + dts: { generator: 'oxc' }, +})