diff --git a/packages/core/package.json b/packages/core/package.json index e3d0933b20..63348a4cd0 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -147,7 +147,6 @@ "peerDependencies": { "@arethetypeswrong/core": "^0.18.1", "@types/node": "^20.19.0 || >=22.12.0", - "@typescript/native-preview": "*", "@vitejs/devtools": "^0.7.1 || ^0.8.0", "@volar/typescript": "~2.4.0", "@vue/language-core": "~3.2.0 || ~3.3.0", @@ -168,9 +167,6 @@ "yaml": "^2.4.2" }, "peerDependenciesMeta": { - "@typescript/native-preview": { - "optional": true - }, "@volar/typescript": { "optional": true }, @@ -241,6 +237,6 @@ "bundledVersions": { "vite": "8.3.5", "rolldown": "1.2.15", - "tsdown": "0.23.1" + "tsdown": "0.23.2" } } diff --git a/packages/prompts/src/box.ts b/packages/prompts/src/box.ts index 88a0781e17..5c162a6d92 100644 --- a/packages/prompts/src/box.ts +++ b/packages/prompts/src/box.ts @@ -64,7 +64,7 @@ function getPaddingForLine( const defaultFormatBorder = color.gray; -export const box = (message = '', title = '', opts?: BoxOptions) => { +export const box = (message = '', title = '', opts?: BoxOptions): void => { const output: Writable = opts?.output ?? process.stdout; const columns = getColumns(output); const borderWidth = 1; diff --git a/packages/prompts/src/common.ts b/packages/prompts/src/common.ts index d6918cfa0f..182920ed1d 100644 --- a/packages/prompts/src/common.ts +++ b/packages/prompts/src/common.ts @@ -14,7 +14,7 @@ export const wrapTextWithPrefix = ( output: Writable | undefined, text: string, prefix: string, - startPrefix = prefix, + startPrefix: string = prefix, ): string => { const width = Math.max( 1, @@ -58,8 +58,8 @@ export const optionText = ( .join('\n'); }; -export const SELECT_INSTRUCTIONS = ['↑/↓ navigate', 'Enter confirm']; -export const MULTISELECT_INSTRUCTIONS = ['↑/↓ navigate', 'Space select', 'Enter confirm']; +export const SELECT_INSTRUCTIONS: string[] = ['↑/↓ navigate', 'Enter confirm']; +export const MULTISELECT_INSTRUCTIONS: string[] = ['↑/↓ navigate', 'Space select', 'Enter confirm']; export const formatInstructionFooter = ( instructions: string[], hasGuide: boolean, @@ -71,47 +71,47 @@ export const formatInstructionFooter = ( hasGuide ? `${color.blue(S_BAR)} ` : ' ', ).split('\n'); -export const unicode = isUnicodeSupported(); +export const unicode: boolean = isUnicodeSupported(); export const isCI = (): boolean => process.env.CI === 'true'; export const isTTY = (output: Writable): boolean => { return (output as Writable & { isTTY?: boolean }).isTTY === true; }; -export const unicodeOr = (c: string, fallback: string) => (unicode ? c : fallback); -export const S_POINTER_ACTIVE = unicodeOr('›', '>'); +export const unicodeOr = (c: string, fallback: string): string => (unicode ? c : fallback); +export const S_POINTER_ACTIVE: string = unicodeOr('›', '>'); export const S_POINTER_INACTIVE = ' '; -export const S_STEP_ACTIVE = S_POINTER_ACTIVE; -export const S_STEP_CANCEL = unicodeOr('■', 'x'); -export const S_STEP_ERROR = unicodeOr('▲', 'x'); -export const S_STEP_SUBMIT = unicodeOr('◇', 'o'); - -export const S_BAR_START = unicodeOr('┌', 'T'); -export const S_BAR = unicodeOr('│', '|'); -export const S_BAR_END = unicodeOr('└', '—'); -export const S_BAR_START_RIGHT = unicodeOr('┐', 'T'); -export const S_BAR_END_RIGHT = unicodeOr('┘', '—'); - -export const S_RADIO_ACTIVE = S_POINTER_ACTIVE; -export const S_RADIO_INACTIVE = S_POINTER_INACTIVE; -export const S_CHECKBOX_ACTIVE = unicodeOr('◻', '[•]'); -export const S_CHECKBOX_SELECTED = unicodeOr('◼', '[+]'); -export const S_CHECKBOX_INACTIVE = unicodeOr('◻', '[ ]'); -export const S_PASSWORD_MASK = unicodeOr('▪', '•'); - -export const S_BAR_H = unicodeOr('─', '-'); -export const S_CORNER_TOP_RIGHT = unicodeOr('╮', '+'); -export const S_CONNECT_LEFT = unicodeOr('├', '+'); -export const S_CORNER_BOTTOM_RIGHT = unicodeOr('╯', '+'); -export const S_CORNER_BOTTOM_LEFT = unicodeOr('╰', '+'); -export const S_CORNER_TOP_LEFT = unicodeOr('╭', '+'); - -export const S_INFO = unicodeOr('●', '•'); -export const S_SUCCESS = unicodeOr('◆', '*'); -export const S_WARN = unicodeOr('▲', '!'); -export const S_ERROR = unicodeOr('■', 'x'); - -export const completeColor = (value: string) => color.gray(value); - -export const symbol = (state: State) => { +export const S_STEP_ACTIVE: string = S_POINTER_ACTIVE; +export const S_STEP_CANCEL: string = unicodeOr('■', 'x'); +export const S_STEP_ERROR: string = unicodeOr('▲', 'x'); +export const S_STEP_SUBMIT: string = unicodeOr('◇', 'o'); + +export const S_BAR_START: string = unicodeOr('┌', 'T'); +export const S_BAR: string = unicodeOr('│', '|'); +export const S_BAR_END: string = unicodeOr('└', '—'); +export const S_BAR_START_RIGHT: string = unicodeOr('┐', 'T'); +export const S_BAR_END_RIGHT: string = unicodeOr('┘', '—'); + +export const S_RADIO_ACTIVE: string = S_POINTER_ACTIVE; +export const S_RADIO_INACTIVE: string = S_POINTER_INACTIVE; +export const S_CHECKBOX_ACTIVE: string = unicodeOr('◻', '[•]'); +export const S_CHECKBOX_SELECTED: string = unicodeOr('◼', '[+]'); +export const S_CHECKBOX_INACTIVE: string = unicodeOr('◻', '[ ]'); +export const S_PASSWORD_MASK: string = unicodeOr('▪', '•'); + +export const S_BAR_H: string = unicodeOr('─', '-'); +export const S_CORNER_TOP_RIGHT: string = unicodeOr('╮', '+'); +export const S_CONNECT_LEFT: string = unicodeOr('├', '+'); +export const S_CORNER_BOTTOM_RIGHT: string = unicodeOr('╯', '+'); +export const S_CORNER_BOTTOM_LEFT: string = unicodeOr('╰', '+'); +export const S_CORNER_TOP_LEFT: string = unicodeOr('╭', '+'); + +export const S_INFO: string = unicodeOr('●', '•'); +export const S_SUCCESS: string = unicodeOr('◆', '*'); +export const S_WARN: string = unicodeOr('▲', '!'); +export const S_ERROR: string = unicodeOr('■', 'x'); + +export const completeColor = (value: string): string => color.gray(value); + +export const symbol = (state: State): string => { switch (state) { case 'initial': case 'active': @@ -129,7 +129,7 @@ export const symbol = (state: State) => { } }; -export const symbolBar = (state: State) => { +export const symbolBar = (state: State): string => { switch (state) { case 'initial': case 'active': diff --git a/packages/prompts/src/log.ts b/packages/prompts/src/log.ts index a9882613f6..3f6f2d1cbf 100644 --- a/packages/prompts/src/log.ts +++ b/packages/prompts/src/log.ts @@ -29,7 +29,7 @@ export const log = { spacing = 0, withGuide, }: LogMessageOptions = {}, - ) => { + ): void => { const parts: string[] = []; const hasGuide = getGuide({ withGuide }); const spacingString = !hasGuide ? '' : secondarySymbol; @@ -59,23 +59,23 @@ export const log = { } output.write(`${parts.join('\n')}\n`); }, - info: (message: string, opts?: LogMessageOptions) => { + info: (message: string, opts?: LogMessageOptions): void => { log.message(message, { ...opts, symbol: color.blue(S_INFO) }); }, - success: (message: string, opts?: LogMessageOptions) => { + success: (message: string, opts?: LogMessageOptions): void => { log.message(message, { ...opts, symbol: completeColor(S_SUCCESS) }); }, - step: (message: string, opts?: LogMessageOptions) => { + step: (message: string, opts?: LogMessageOptions): void => { log.message(message, { ...opts, symbol: completeColor(S_STEP_SUBMIT) }); }, - warn: (message: string, opts?: LogMessageOptions) => { + warn: (message: string, opts?: LogMessageOptions): void => { log.message(message, { ...opts, symbol: color.yellow(S_WARN) }); }, /** alias for `log.warn()`. */ - warning: (message: string, opts?: LogMessageOptions) => { + warning: (message: string, opts?: LogMessageOptions): void => { log.warn(message, opts); }, - error: (message: string, opts?: LogMessageOptions) => { + error: (message: string, opts?: LogMessageOptions): void => { log.message(message, { ...opts, symbol: color.red(S_ERROR) }); }, }; diff --git a/packages/prompts/src/messages.ts b/packages/prompts/src/messages.ts index 7a2e1a0708..79bcd8ceb1 100644 --- a/packages/prompts/src/messages.ts +++ b/packages/prompts/src/messages.ts @@ -4,19 +4,19 @@ import color from 'picocolors'; import { type CommonOptions, getGuide, S_BAR, S_BAR_START, S_BAR_END } from './common.js'; -export const cancel = (message = '', opts?: CommonOptions) => { +export const cancel = (message = '', opts?: CommonOptions): void => { const output: Writable = opts?.output ?? process.stdout; const prefix = getGuide(opts) ? `${color.gray(S_BAR_END)} ` : ''; output.write(`${prefix}${color.red(message)}\n\n`); }; -export const intro = (title = '', opts?: CommonOptions) => { +export const intro = (title = '', opts?: CommonOptions): void => { const output: Writable = opts?.output ?? process.stdout; const prefix = getGuide(opts) ? `${color.gray(S_BAR_START)} ` : ''; output.write(`${prefix}${title}\n\n`); }; -export const outro = (message = '', opts?: CommonOptions) => { +export const outro = (message = '', opts?: CommonOptions): void => { const output: Writable = opts?.output ?? process.stdout; const prefix = getGuide(opts) ? `${color.gray(S_BAR)}\n${color.gray(S_BAR_END)} ` : ''; output.write(`${prefix}${message}\n\n`); diff --git a/packages/prompts/src/note.ts b/packages/prompts/src/note.ts index db2e45b983..197c4a06e5 100644 --- a/packages/prompts/src/note.ts +++ b/packages/prompts/src/note.ts @@ -9,7 +9,7 @@ export interface NoteOptions extends CommonOptions { } /** A compact, enclosed note. Guide bars never replace its side borders. */ -export const note = (message = '', title = '', opts?: NoteOptions) => { +export const note = (message = '', title = '', opts?: NoteOptions): void => { const content = opts?.format ? message.split('\n').map(opts.format).join('\n') : message; box(`\n${content}\n`, title, { ...opts, width: 'auto', rounded: true, formatBorder: color.gray }); }; diff --git a/packages/prompts/src/stream.ts b/packages/prompts/src/stream.ts index 15dfa2da60..f4bc6e5471 100644 --- a/packages/prompts/src/stream.ts +++ b/packages/prompts/src/stream.ts @@ -16,7 +16,7 @@ export const stream = { message: async ( iterable: Iterable | AsyncIterable, { symbol = '' }: LogMessageOptions = {}, - ) => { + ): Promise => { process.stdout.write(symbol ? `${symbol} ` : ''); const initialWidth = symbol ? 2 : 0; let lineWidth = initialWidth; @@ -36,23 +36,23 @@ export const stream = { } process.stdout.write('\n'); }, - info: (iterable: Iterable | AsyncIterable) => { + info: (iterable: Iterable | AsyncIterable): Promise => { return stream.message(iterable, { symbol: color.blue(S_INFO) }); }, - success: (iterable: Iterable | AsyncIterable) => { + success: (iterable: Iterable | AsyncIterable): Promise => { return stream.message(iterable, { symbol: completeColor(S_SUCCESS) }); }, - step: (iterable: Iterable | AsyncIterable) => { + step: (iterable: Iterable | AsyncIterable): Promise => { return stream.message(iterable, { symbol: completeColor(S_STEP_SUBMIT) }); }, - warn: (iterable: Iterable | AsyncIterable) => { + warn: (iterable: Iterable | AsyncIterable): Promise => { return stream.message(iterable, { symbol: color.yellow(S_WARN) }); }, /** alias for `log.warn()`. */ - warning: (iterable: Iterable | AsyncIterable) => { + warning: (iterable: Iterable | AsyncIterable): Promise => { return stream.warn(iterable); }, - error: (iterable: Iterable | AsyncIterable) => { + error: (iterable: Iterable | AsyncIterable): Promise => { return stream.message(iterable, { symbol: color.red(S_ERROR) }); }, }; diff --git a/packages/prompts/src/task-log.ts b/packages/prompts/src/task-log.ts index 0d89b40a1c..dc112e792a 100644 --- a/packages/prompts/src/task-log.ts +++ b/packages/prompts/src/task-log.ts @@ -49,7 +49,18 @@ const stripDestructiveANSI = (input: string): string => { /** * Renders a log which clears on success and remains on failure */ -export const taskLog = (opts: TaskLogOptions) => { +export const taskLog = ( + opts: TaskLogOptions, +): { + message(msg: string, mopts?: TaskLogMessageOptions): void; + group(name: string): { + message(msg: string, mopts?: TaskLogMessageOptions): void; + error(message: string): void; + success(message: string): void; + }; + error(message: string, opts?: TaskLogCompletionOptions): void; + success(message: string, opts?: TaskLogCompletionOptions): void; +} => { const output: Writable = opts.output ?? process.stdout; const columns = getColumns(output); const secondarySymbol = color.gray(S_BAR); @@ -197,10 +208,14 @@ export const taskLog = (opts: TaskLogOptions) => { }; return { - message(msg: string, mopts?: TaskLogMessageOptions) { + message(msg: string, mopts?: TaskLogMessageOptions): void { message(buffers[0], msg, mopts); }, - group(name: string) { + group(name: string): { + message(msg: string, mopts?: TaskLogMessageOptions): void; + error(message: string): void; + success(message: string): void; + } { const buffer: BufferEntry = { header: name, value: '', @@ -208,16 +223,16 @@ export const taskLog = (opts: TaskLogOptions) => { }; buffers.push(buffer); return { - message(msg: string, mopts?: TaskLogMessageOptions) { + message(msg: string, mopts?: TaskLogMessageOptions): void { message(buffer, msg, mopts); }, - error(message: string) { + error(message: string): void { completeBuffer(buffer, { status: 'error', message, }); }, - success(message: string) { + success(message: string): void { completeBuffer(buffer, { status: 'success', message, diff --git a/packages/prompts/src/task.ts b/packages/prompts/src/task.ts index 6e5737a5a8..6c82cf3337 100644 --- a/packages/prompts/src/task.ts +++ b/packages/prompts/src/task.ts @@ -20,7 +20,7 @@ export type Task = { /** * Define a group of tasks to be executed */ -export const tasks = async (tasks: Task[], opts?: CommonOptions) => { +export const tasks = async (tasks: Task[], opts?: CommonOptions): Promise => { for (const task of tasks) { if (task.enabled === false) { continue; diff --git a/packages/prompts/tsdown.config.ts b/packages/prompts/tsdown.config.ts index 6231d8bd2d..a3bd1f963c 100644 --- a/packages/prompts/tsdown.config.ts +++ b/packages/prompts/tsdown.config.ts @@ -4,4 +4,10 @@ export default defineConfig({ deps: { onlyBundle: false, }, + dts: { + // The repo uses typescript@7 (native), which rolldown-plugin-dts's + // default `tsc` generator cannot load. Emit declarations with Oxc, + // matching packages/core/build.ts. + generator: 'oxc', + }, }); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7f42f95379..aff9bdf056 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -219,11 +219,11 @@ catalogs: specifier: ^16.0.0 version: 16.0.3 '@tsdown/css': - specifier: ^0.23.1 - version: 0.23.1 + specifier: ^0.23.2 + version: 0.23.2 '@tsdown/exe': - specifier: ^0.23.1 - version: 0.23.1 + specifier: ^0.23.2 + version: 0.23.2 '@types/babel__core': specifier: 7.20.5 version: 7.20.5 @@ -399,8 +399,8 @@ catalogs: specifier: ^0.2.15 version: 0.2.17 tsdown: - specifier: ^0.23.1 - version: 0.23.1 + specifier: ^0.23.2 + version: 0.23.2 typescript: specifier: ~7.0.2 version: 7.0.2 @@ -434,6 +434,7 @@ overrides: vite: workspace:@voidzero-dev/vite-plus-core@* vite-plus: workspace:vite-plus@* rolldown>typescript: ^6.0.0 + rolldown-plugin-dts@0.29.0-beta.2>typescript: ~6.0.3 '@volar/typescript>typescript@>=7': '-' '@volar/language-service>typescript@>=7': '-' @@ -607,7 +608,7 @@ importers: version: 0.2.17 tsdown: specifier: 'catalog:' - version: 0.23.1(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.1)(@tsdown/exe@0.23.1)(@typescript/native-preview@7.0.0-dev.20260707.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@7.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@7.0.2)) + version: 0.23.2(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.2)(@tsdown/exe@0.23.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@6.0.3)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@6.0.3)) validate-npm-package-name: specifier: 'catalog:' version: 8.0.0 @@ -710,10 +711,10 @@ importers: version: 1.0.0 '@tsdown/css': specifier: 'catalog:' - version: 0.23.1(jiti@2.7.0)(postcss-import@16.2.0(postcss@8.5.31))(postcss-modules@9.0.1(postcss@8.5.31))(postcss@8.5.31)(sass-embedded@1.105.2(source-map-js@1.2.2))(sass@1.105.2)(tsdown@0.23.1)(tsx@4.23.15)(yaml@2.9.1) + version: 0.23.2(jiti@2.7.0)(postcss-import@16.2.0(postcss@8.5.31))(postcss-modules@9.0.1(postcss@8.5.31))(postcss@8.5.31)(sass-embedded@1.105.2(source-map-js@1.2.2))(sass@1.105.2)(tsdown@0.23.2)(tsx@4.23.15)(yaml@2.9.1) '@tsdown/exe': specifier: 'catalog:' - version: 0.23.1(tsdown@0.23.1) + version: 0.23.2(tsdown@0.23.2) '@typescript/native-preview': specifier: 'catalog:' version: 7.0.0-dev.20260707.2 @@ -764,7 +765,7 @@ importers: version: 1.2.2 tsdown: specifier: 'catalog:' - version: 0.23.1(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.1)(@tsdown/exe@0.23.1)(@typescript/native-preview@7.0.0-dev.20260707.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@7.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@7.0.2)) + version: 0.23.2(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.2)(@tsdown/exe@0.23.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@7.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@7.0.2)) typescript: specifier: 'catalog:' version: 7.0.2 @@ -805,7 +806,7 @@ importers: version: 2.1.0 tsdown: specifier: 'catalog:' - version: 0.23.1(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.1)(@tsdown/exe@0.23.1)(@typescript/native-preview@7.0.0-dev.20260707.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@7.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@7.0.2)) + version: 0.23.2(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.2)(@tsdown/exe@0.23.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@7.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@7.0.2)) packages/tools: devDependencies: @@ -1147,7 +1148,7 @@ importers: version: 1.3.1 tsdown: specifier: ^0.23.1 - version: 0.23.1(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.1)(@tsdown/exe@0.23.1)(@typescript/native-preview@7.0.0-dev.20260707.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@7.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@7.0.2)) + version: 0.23.2(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.2)(@tsdown/exe@0.23.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@6.0.3)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@6.0.3)) unrun: specifier: ^0.3.1 version: 0.3.1 @@ -1202,7 +1203,7 @@ importers: version: 1.1.1 tsdown: specifier: ^0.23.1 - version: 0.23.1(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.1)(@tsdown/exe@0.23.1)(@typescript/native-preview@7.0.0-dev.20260707.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@7.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@7.0.2)) + version: 0.23.2(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.2)(@tsdown/exe@0.23.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@6.0.3)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@6.0.3)) unrun: specifier: ^0.3.1 version: 0.3.1 @@ -4318,8 +4319,8 @@ packages: '@tootallnate/quickjs-emscripten@0.23.0': resolution: {integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==} - '@tsdown/css@0.23.1': - resolution: {integrity: sha512-FLdllF5r22So3zwAuCRCLaxOCJqiN1SzihAncdoxHfe59Zj8nHDfaCBQBGYVDUJaHbr6fshSAcUXrgkJIr9dcA==} + '@tsdown/css@0.23.2': + resolution: {integrity: sha512-/g3suzAD7kRLpguMTjScPHfduefpQTc7YqLCJvMJ5cZ8s+viVgpLxsM12J97ym8aN7JY3yQsDZHifvA/fD+GPg==} engines: {node: ^22.18.0 || ^24.11.0 || >=26.0.0} peerDependencies: postcss: ^8.4.0 @@ -4327,7 +4328,7 @@ packages: postcss-modules: ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 sass: '*' sass-embedded: '*' - tsdown: 0.23.1 + tsdown: 0.23.2 peerDependenciesMeta: postcss: optional: true @@ -4340,11 +4341,11 @@ packages: sass-embedded: optional: true - '@tsdown/exe@0.23.1': - resolution: {integrity: sha512-CD/VDDxIaw7eBBprYgNRFPha0ghRrFVtBavh8eE8sKPQm+SmkLVtVlsL2Vr7th4AtB//gofWdYJTvQiWKZqzOg==} + '@tsdown/exe@0.23.2': + resolution: {integrity: sha512-7D9n8V1TEo0Os+T1RZT8omj3Xcyp7CuKnD3wyHpaE81Yb/uERtmJnCmc0AhQmjAOrXeCRT7h+r/Ht/lVLUg1kQ==} engines: {node: ^22.18.0 || ^24.11.0 || >=26.0.0} peerDependencies: - tsdown: 0.23.1 + tsdown: 0.23.2 '@tybys/wasm-util@0.10.3': resolution: {integrity: sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg==} @@ -7078,6 +7079,25 @@ packages: vue-tsc: optional: true + rolldown-plugin-dts@0.29.0-beta.2: + resolution: {integrity: sha512-0NT4q7HMRIpQv47+SfZB5IhEWJh0gp2rDEZPu2ry+LeJFb9tlMB08Sy+sl1+cqcCXnHpkd9dvBy3rZDCBF1JIg==} + 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: workspace:rolldown@* + typescript: ~6.0.3 + vue-tsc: ~3.2.0 || ~3.3.0 + peerDependenciesMeta: + '@volar/typescript': + optional: true + '@vue/language-core': + optional: true + typescript: + optional: true + vue-tsc: + optional: true + rollup-plugin-license@3.7.1: resolution: {integrity: sha512-FcGXUbAmPvRSLxjVdjp/r/MUtKBlttVQd+ApUyvKfREnsoAfAZA6Ic2fE1Tz4RL0f9XqEQU9UIRNUMdtQtliDw==} engines: {node: '>=14.0.0'} @@ -7585,14 +7605,14 @@ packages: peerDependencies: typescript: '>=4.0.0' - tsdown@0.23.1: - resolution: {integrity: sha512-MSC2WSOts3in95J334/VIS7KPfor3eCSvndJ6KdoVj9Aak9Kh1aNfz9ws5owhdukuTNSXRdfkPEzA/ihpDD6SA==} + tsdown@0.23.2: + resolution: {integrity: sha512-om1OoDykFlv07uM98WAX3ZNmu02FBmHqZYLW1hm+IMktb92r7VMNKgQ/G8dknECI1Q2huPrFJ+sggdYk8efsQg==} engines: {node: ^22.18.0 || ^24.11.0 || >=26.0.0} hasBin: true peerDependencies: '@arethetypeswrong/core': ^0.18.1 - '@tsdown/css': 0.23.1 - '@tsdown/exe': 0.23.1 + '@tsdown/css': 0.23.2 + '@tsdown/exe': 0.23.2 '@vitejs/devtools': '*' publint: ^0.3.8 tsx: '*' @@ -10685,12 +10705,29 @@ snapshots: '@tootallnate/quickjs-emscripten@0.23.0': {} - '@tsdown/css@0.23.1(jiti@2.7.0)(postcss-import@16.2.0(postcss@8.5.31))(postcss-modules@9.0.1(postcss@8.5.31))(postcss@8.5.31)(sass-embedded@1.105.2(source-map-js@1.2.2))(sass@1.105.2)(tsdown@0.23.1)(tsx@4.23.15)(yaml@2.9.1)': + '@tsdown/css@0.23.2(jiti@2.7.0)(postcss-import@16.2.0(postcss@8.5.31))(postcss-modules@9.0.1(postcss@8.5.31))(postcss@8.5.31)(sass-embedded@1.105.2(source-map-js@1.2.2))(sass@1.105.2)(tsdown@0.23.2)(tsx@4.23.15)': + dependencies: + lightningcss: 1.33.0 + postcss-load-config: 6.0.1(jiti@2.7.0)(postcss@8.5.31)(tsx@4.23.15)(yaml@2.9.1) + rolldown: link:rolldown/packages/rolldown + tsdown: 0.23.2(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.2)(@tsdown/exe@0.23.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@7.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@7.0.2)) + optionalDependencies: + postcss: 8.5.31 + postcss-import: 16.2.0(postcss@8.5.31) + postcss-modules: 9.0.1(postcss@8.5.31) + sass: 1.105.2 + sass-embedded: 1.105.2(source-map-js@1.2.2) + transitivePeerDependencies: + - jiti + - tsx + - yaml + + '@tsdown/css@0.23.2(jiti@2.7.0)(postcss-import@16.2.0(postcss@8.5.31))(postcss-modules@9.0.1(postcss@8.5.31))(postcss@8.5.31)(sass-embedded@1.105.2(source-map-js@1.2.2))(sass@1.105.2)(tsdown@0.23.2)(tsx@4.23.15)(yaml@2.9.1)': dependencies: lightningcss: 1.33.0 postcss-load-config: 6.0.1(jiti@2.7.0)(postcss@8.5.31)(tsx@4.23.15)(yaml@2.9.1) rolldown: link:rolldown/packages/rolldown - tsdown: 0.23.1(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.1)(@tsdown/exe@0.23.1)(@typescript/native-preview@7.0.0-dev.20260707.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@7.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@7.0.2)) + tsdown: 0.23.2(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.2)(@tsdown/exe@0.23.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@6.0.3)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@6.0.3)) optionalDependencies: postcss: 8.5.31 postcss-import: 16.2.0(postcss@8.5.31) @@ -10702,11 +10739,11 @@ snapshots: - tsx - yaml - '@tsdown/exe@0.23.1(tsdown@0.23.1)': + '@tsdown/exe@0.23.2(tsdown@0.23.2)': dependencies: obug: 3.0.0 tinyexec: 1.3.1 - tsdown: 0.23.1(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.1)(@tsdown/exe@0.23.1)(@typescript/native-preview@7.0.0-dev.20260707.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@7.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@7.0.2)) + tsdown: 0.23.2(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.2)(@tsdown/exe@0.23.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@6.0.3)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@6.0.3)) verkit: 0.5.0 '@tybys/wasm-util@0.10.3': @@ -13561,6 +13598,40 @@ snapshots: transitivePeerDependencies: - oxc-resolver + rolldown-plugin-dts@0.29.0-beta.2(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(rolldown@rolldown+packages+rolldown)(typescript@6.0.3)(vue-tsc@3.3.12(typescript@6.0.3)): + dependencies: + dts-resolver: 3.0.0(oxc-resolver@11.24.2) + get-tsconfig: 5.0.0-beta.6 + obug: 3.0.0 + rolldown: link:rolldown/packages/rolldown + yuku-ast: 0.19.0 + yuku-codegen: 0.19.0 + yuku-parser: 0.19.0 + optionalDependencies: + '@volar/typescript': 2.4.28 + '@vue/language-core': 3.3.12 + typescript: 6.0.3 + vue-tsc: 3.3.12(typescript@6.0.3) + transitivePeerDependencies: + - oxc-resolver + + rolldown-plugin-dts@0.29.0-beta.2(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(rolldown@rolldown+packages+rolldown)(typescript@7.0.2)(vue-tsc@3.3.12(typescript@7.0.2)): + dependencies: + dts-resolver: 3.0.0(oxc-resolver@11.24.2) + get-tsconfig: 5.0.0-beta.6 + obug: 3.0.0 + rolldown: link:rolldown/packages/rolldown + yuku-ast: 0.19.0 + yuku-codegen: 0.19.0 + yuku-parser: 0.19.0 + optionalDependencies: + '@volar/typescript': 2.4.28 + '@vue/language-core': 3.3.12 + typescript: 7.0.2 + vue-tsc: 3.3.12(typescript@7.0.2) + transitivePeerDependencies: + - oxc-resolver + rollup-plugin-license@3.7.1(picomatch@4.0.7)(rollup@4.63.1): dependencies: commenting: 1.1.0 @@ -14061,7 +14132,39 @@ snapshots: typescript: 7.0.2 optional: true - tsdown@0.23.1(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.1)(@tsdown/exe@0.23.1)(@typescript/native-preview@7.0.0-dev.20260707.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@7.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@7.0.2)): + tsdown@0.23.2(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.2)(@tsdown/exe@0.23.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@6.0.3)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@6.0.3)): + 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: link:rolldown/packages/rolldown + rolldown-plugin-dts: 0.29.0-beta.2(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(rolldown@rolldown+packages+rolldown)(typescript@6.0.3)(vue-tsc@3.3.12(typescript@6.0.3)) + tinyexec: 1.3.1 + tinyglobby: 0.2.17 + tree-kill: 1.2.2 + unconfig-core: 7.5.0 + verkit: 0.5.0 + optionalDependencies: + '@arethetypeswrong/core': 0.18.2 + '@tsdown/css': 0.23.2(jiti@2.7.0)(postcss-import@16.2.0(postcss@8.5.31))(postcss-modules@9.0.1(postcss@8.5.31))(postcss@8.5.31)(sass-embedded@1.105.2(source-map-js@1.2.2))(sass@1.105.2)(tsdown@0.23.2)(tsx@4.23.15)(yaml@2.9.1) + '@tsdown/exe': 0.23.2(tsdown@0.23.2) + '@vitejs/devtools': 0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core) + publint: 0.3.24 + tsx: 4.23.15 + typescript: 6.0.3 + unplugin-unused: 0.5.6 + unrun: 0.3.1 + transitivePeerDependencies: + - '@volar/typescript' + - '@vue/language-core' + - oxc-resolver + - vue-tsc + + tsdown@0.23.2(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.23.2)(@tsdown/exe@0.23.2)(@vitejs/devtools@0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core))(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(publint@0.3.24)(tsx@4.23.15)(typescript@7.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1)(vue-tsc@3.3.12(typescript@7.0.2)): dependencies: cac: 7.1.0 defu: 6.1.7 @@ -14071,7 +14174,7 @@ snapshots: obug: 3.0.0 picomatch: 4.0.7 rolldown: link:rolldown/packages/rolldown - rolldown-plugin-dts: 0.28.8(@typescript/native-preview@7.0.0-dev.20260707.2)(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(rolldown@rolldown+packages+rolldown)(typescript@7.0.2)(vue-tsc@3.3.12(typescript@7.0.2)) + rolldown-plugin-dts: 0.29.0-beta.2(@volar/typescript@2.4.28)(@vue/language-core@3.3.12)(oxc-resolver@11.24.2)(rolldown@rolldown+packages+rolldown)(typescript@7.0.2)(vue-tsc@3.3.12(typescript@7.0.2)) tinyexec: 1.3.1 tinyglobby: 0.2.17 tree-kill: 1.2.2 @@ -14079,8 +14182,8 @@ snapshots: verkit: 0.5.0 optionalDependencies: '@arethetypeswrong/core': 0.18.2 - '@tsdown/css': 0.23.1(jiti@2.7.0)(postcss-import@16.2.0(postcss@8.5.31))(postcss-modules@9.0.1(postcss@8.5.31))(postcss@8.5.31)(sass-embedded@1.105.2(source-map-js@1.2.2))(sass@1.105.2)(tsdown@0.23.1)(tsx@4.23.15)(yaml@2.9.1) - '@tsdown/exe': 0.23.1(tsdown@0.23.1) + '@tsdown/css': 0.23.2(jiti@2.7.0)(postcss-import@16.2.0(postcss@8.5.31))(postcss-modules@9.0.1(postcss@8.5.31))(postcss@8.5.31)(sass-embedded@1.105.2(source-map-js@1.2.2))(sass@1.105.2)(tsdown@0.23.2)(tsx@4.23.15)(yaml@2.9.1) + '@tsdown/exe': 0.23.2(tsdown@0.23.2) '@vitejs/devtools': 0.8.0(crossws@0.4.12(srvx@1.0.6))(srvx@1.0.6)(vite@packages+core) publint: 0.3.24 tsx: 4.23.15 @@ -14088,7 +14191,6 @@ snapshots: unplugin-unused: 0.5.6 unrun: 0.3.1 transitivePeerDependencies: - - '@typescript/native-preview' - '@volar/typescript' - '@vue/language-core' - oxc-resolver diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 777e6caf1a..ea6eff818f 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -30,8 +30,8 @@ catalog: '@rollup/plugin-commonjs': ^29.0.0 '@rollup/plugin-json': ^6.1.0 '@rollup/plugin-node-resolve': ^16.0.0 - '@tsdown/css': ^0.23.1 - '@tsdown/exe': ^0.23.1 + '@tsdown/css': ^0.23.2 + '@tsdown/exe': ^0.23.2 '@types/babel__core': 7.20.5 '@types/connect': ^3.4.38 '@types/cross-spawn': ^6.0.6 @@ -118,7 +118,7 @@ catalog: tinybench: ^6.0.0 tinyexec: ^1.0.1 tinyglobby: ^0.2.15 - tsdown: ^0.23.1 + tsdown: ^0.23.2 tsx: ^4.22.0 typescript: ~7.0.2 unified: ^11.0.5 @@ -207,6 +207,11 @@ overrides: vite: workspace:@voidzero-dev/vite-plus-core@* vite-plus: workspace:vite-plus@* rolldown>typescript: ^6.0.0 + # rolldown-plugin-dts 0.29 dropped the tsgo subprocess fallback; its tsc + # generator needs the classic TypeScript API, which typescript@7 (native) + # no longer provides. Give the plugin a classic TypeScript for dts emit, + # matching the rolldown>typescript and @volar/typescript pins. + 'rolldown-plugin-dts@0.29.0-beta.2>typescript': ~6.0.3 '@volar/typescript>typescript@>=7': '-' '@volar/language-service>typescript@>=7': '-' packageExtensions: @@ -251,3 +256,7 @@ peerDependencyRules: oxlint-tsgolint: '*' rolldown: '*' vite: '*' + # packages/core pins typescript@7 and drives the plugin's oxc generator, + # which never loads typescript, so the overridden ~6.0.3 peer (see + # overrides) is allowed to stay unmet there. + 'rolldown-plugin-dts@0.29.0-beta.2>typescript': 7.0.2