Skip to content

Commit 9aea20f

Browse files
authored
refactor: use internal devtools config (#21609)
1 parent f1a47b3 commit 9aea20f

5 files changed

Lines changed: 52 additions & 43 deletions

File tree

packages/vite/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@
9696
"@rollup/pluginutils": "^5.3.0",
9797
"@types/escape-html": "^1.0.4",
9898
"@types/pnpapi": "^0.0.5",
99-
"@vitejs/devtools": "^0.0.0-alpha.29",
99+
"@vitejs/devtools": "^0.0.0-alpha.31",
100100
"artichokie": "^0.4.2",
101101
"baseline-browser-mapping": "^2.9.19",
102102
"cac": "^6.7.14",
@@ -143,7 +143,7 @@
143143
},
144144
"peerDependencies": {
145145
"@types/node": "^20.19.0 || >=22.12.0",
146-
"@vitejs/devtools": "^0.0.0-alpha.24",
146+
"@vitejs/devtools": "^0.0.0-alpha.31",
147147
"esbuild": "^0.27.0",
148148
"jiti": ">=1.21.0",
149149
"less": "^4.0.0",

packages/vite/rolldown.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,12 +81,12 @@ const nodeConfig = defineConfig({
8181
'fsevents',
8282
/^rolldown\//,
8383
/^tsx\//,
84+
/^@vitejs\/devtools\//,
8485
/^#/,
8586
'sugarss', // postcss-import -> sugarss
8687
'supports-color',
8788
'utf-8-validate', // ws
8889
'bufferutil', // ws
89-
'@vitejs/devtools/cli-commands',
9090
...Object.keys(pkg.dependencies),
9191
...Object.keys(pkg.peerDependencies),
9292
],

packages/vite/src/node/config.ts

Lines changed: 26 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,10 @@ import {
1515
type RolldownOptions,
1616
rolldown,
1717
} from 'rolldown'
18-
import type { StartOptions } from '@vitejs/devtools/cli-commands'
18+
import type {
19+
DevToolsConfig,
20+
ResolvedDevToolsConfig,
21+
} from '@vitejs/devtools/config'
1922
import type { Alias, AliasOptions } from '#dep-types/alias'
2023
import type { AnymatchFn } from '../types/anymatch'
2124
import { withTrailingSlash } from '../shared/utils'
@@ -620,15 +623,6 @@ export interface ResolvedWorkerOptions {
620623
rolldownOptions: RolldownOptions
621624
}
622625

623-
export interface DevToolsConfig extends Partial<StartOptions> {
624-
enabled: boolean
625-
}
626-
627-
export interface ResolvedDevToolsConfig {
628-
config: Omit<DevToolsConfig, 'enabled'> & { host: string }
629-
enabled: boolean
630-
}
631-
632626
export interface InlineConfig extends UserConfig {
633627
configFile?: string | false
634628
/** @experimental */
@@ -748,18 +742,32 @@ export interface ResolvedConfig extends Readonly<
748742
export async function resolveDevToolsConfig(
749743
config: DevToolsConfig | boolean | undefined,
750744
host: string | boolean | undefined,
745+
logger: Logger,
751746
): Promise<ResolvedDevToolsConfig> {
747+
const isEnabled = config === true || !!(config && config.enabled)
752748
const resolvedHostname = await resolveHostname(host)
753749
const fallbackHostname = resolvedHostname.host ?? 'localhost'
754-
755-
return {
756-
enabled: config === true || !!(config && config.enabled),
750+
const fallbackConfig = {
757751
config: {
758-
...(isObject(config) ? config : {}),
759-
host: isObject(config)
760-
? (config?.host ?? fallbackHostname)
761-
: fallbackHostname,
752+
host: fallbackHostname,
762753
},
754+
enabled: false,
755+
}
756+
if (!isEnabled) {
757+
return fallbackConfig
758+
}
759+
760+
try {
761+
const { normalizeDevToolsConfig } = await import('@vitejs/devtools/config')
762+
return normalizeDevToolsConfig(config, fallbackHostname)
763+
} catch (e) {
764+
logger.error(
765+
colors.red(
766+
`Failed to load Vite DevTools config: ${e.message || e.stack}`,
767+
),
768+
{ error: e },
769+
)
770+
return fallbackConfig
763771
}
764772
}
765773

@@ -1863,6 +1871,7 @@ export async function resolveConfig(
18631871
const resolvedDevToolsConfig = await resolveDevToolsConfig(
18641872
config.devtools,
18651873
server.host,
1874+
logger,
18661875
)
18671876

18681877
resolved = {

playground/devtools/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,6 @@
1414
},
1515
"devDependencies": {
1616
"vite": "workspace:*",
17-
"@vitejs/devtools": "^0.0.0-alpha.29"
17+
"@vitejs/devtools": "^0.0.0-alpha.31"
1818
}
1919
}

pnpm-lock.yaml

Lines changed: 22 additions & 22 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)