Skip to content

Commit f2d9ae8

Browse files
authored
chore: prefer type imports (#5835)
1 parent 2f4c8e5 commit f2d9ae8

12 files changed

+36
-32
lines changed

.eslintrc.cjs

+5-1
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,11 @@ module.exports = defineConfig({
8989
'@typescript-eslint/no-inferrable-types': 'off',
9090
'@typescript-eslint/no-non-null-assertion': 'off', // maybe we should turn this on in a new PR
9191
'@typescript-eslint/no-unused-vars': 'off', // maybe we should turn this on in a new PR
92-
'@typescript-eslint/no-var-requires': 'off'
92+
'@typescript-eslint/no-var-requires': 'off',
93+
'@typescript-eslint/consistent-type-imports': [
94+
'error',
95+
{ prefer: 'type-imports' }
96+
]
9397
},
9498
overrides: [
9599
{

packages/plugin-vue-jsx/index.d.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import { Plugin } from 'vite'
2-
import { VueJSXPluginOptions } from '@vue/babel-plugin-jsx'
3-
import { FilterPattern } from '@rollup/pluginutils'
1+
import type { Plugin } from 'vite'
2+
import type { VueJSXPluginOptions } from '@vue/babel-plugin-jsx'
3+
import type { FilterPattern } from '@rollup/pluginutils'
44

55
declare interface FilterOptions {
66
include?: FilterPattern

packages/plugin-vue/src/compiler.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ declare module 'vue/compiler-sfc' {
55
}
66
}
77

8-
import * as _compiler from 'vue/compiler-sfc'
8+
import type * as _compiler from 'vue/compiler-sfc'
99

1010
export function resolveCompiler(root: string): typeof _compiler {
1111
// resolve from project root first, then fallback to peer dep (if any)

packages/plugin-vue/src/handleHotUpdate.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
import _debug from 'debug'
2-
import { SFCBlock, SFCDescriptor } from 'vue/compiler-sfc'
2+
import type { SFCBlock, SFCDescriptor } from 'vue/compiler-sfc'
33
import {
44
createDescriptor,
55
getDescriptor,
66
setPrevDescriptor
77
} from './utils/descriptorCache'
88
import { getResolvedScript, setResolvedScript } from './script'
9-
import { ModuleNode, HmrContext } from 'vite'
10-
import { ResolvedOptions } from '.'
9+
import type { ModuleNode, HmrContext } from 'vite'
10+
import type { ResolvedOptions } from '.'
1111

1212
const debug = _debug('vite:hmr')
1313

packages/plugin-vue/src/index.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
import fs from 'fs'
2-
import { Plugin, ViteDevServer } from 'vite'
2+
import type { Plugin, ViteDevServer } from 'vite'
33
import { createFilter } from '@rollup/pluginutils'
4-
import {
4+
import type {
55
SFCBlock,
66
SFCScriptCompileOptions,
77
SFCStyleCompileOptions,
88
SFCTemplateCompileOptions
99
} from 'vue/compiler-sfc'
10-
import * as _compiler from 'vue/compiler-sfc'
10+
import type * as _compiler from 'vue/compiler-sfc'
1111
import { resolveCompiler } from './compiler'
1212
import { parseVueRequest } from './utils/query'
1313
import { getDescriptor, getSrcDescriptor } from './utils/descriptorCache'

packages/plugin-vue/src/main.ts

+5-4
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,19 @@
11
import qs from 'querystring'
22
import path from 'path'
3-
import { SFCBlock, SFCDescriptor } from 'vue/compiler-sfc'
4-
import { ResolvedOptions } from '.'
3+
import type { SFCBlock, SFCDescriptor } from 'vue/compiler-sfc'
4+
import type { ResolvedOptions } from '.'
55
import {
66
createDescriptor,
77
getPrevDescriptor,
88
setSrcDescriptor
99
} from './utils/descriptorCache'
10-
import { PluginContext, SourceMap, TransformPluginContext } from 'rollup'
10+
import type { PluginContext, SourceMap, TransformPluginContext } from 'rollup'
1111
import { normalizePath } from '@rollup/pluginutils'
1212
import { resolveScript, isUseInlineTemplate } from './script'
1313
import { transformTemplateInMain } from './template'
1414
import { isOnlyTemplateChanged, isEqualBlock } from './handleHotUpdate'
15-
import { RawSourceMap, SourceMapConsumer, SourceMapGenerator } from 'source-map'
15+
import type { RawSourceMap } from 'source-map'
16+
import { SourceMapConsumer, SourceMapGenerator } from 'source-map'
1617
import { createRollupError } from './utils/error'
1718
import { transformWithEsbuild } from 'vite'
1819
import { EXPORT_HELPER_ID } from './helper'

packages/plugin-vue/src/script.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import { SFCDescriptor, SFCScriptBlock } from 'vue/compiler-sfc'
2-
import { ResolvedOptions } from '.'
1+
import type { SFCDescriptor, SFCScriptBlock } from 'vue/compiler-sfc'
2+
import type { ResolvedOptions } from '.'
33
import { resolveTemplateCompilerOptions } from './template'
44

55
// ssr and non ssr builds would output different script content

packages/plugin-vue/src/style.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import { SFCDescriptor } from 'vue/compiler-sfc'
2-
import { TransformPluginContext } from 'rollup'
3-
import { ResolvedOptions } from '.'
1+
import type { SFCDescriptor } from 'vue/compiler-sfc'
2+
import type { TransformPluginContext } from 'rollup'
3+
import type { ResolvedOptions } from '.'
44

55
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
66
export async function transformStyle(

packages/plugin-vue/src/template.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
import path from 'path'
22
import slash from 'slash'
3-
import {
3+
import type {
44
SFCDescriptor,
55
SFCTemplateCompileOptions,
66
SFCTemplateCompileResults,
77
CompilerOptions
88
} from 'vue/compiler-sfc'
9-
import { PluginContext, TransformPluginContext } from 'rollup'
10-
import { ResolvedOptions } from '.'
9+
import type { PluginContext, TransformPluginContext } from 'rollup'
10+
import type { ResolvedOptions } from '.'
1111
import { getResolvedScript } from './script'
1212
import { createRollupError } from './utils/error'
1313

packages/plugin-vue/src/utils/descriptorCache.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ import fs from 'fs'
22
import path from 'path'
33
import slash from 'slash'
44
import hash from 'hash-sum'
5-
import { CompilerError, SFCDescriptor } from 'vue/compiler-sfc'
6-
import { ResolvedOptions, VueQuery } from '..'
5+
import type { CompilerError, SFCDescriptor } from 'vue/compiler-sfc'
6+
import type { ResolvedOptions, VueQuery } from '..'
77

88
// compiler-sfc should be exported so it can be re-used
99
export interface SFCParseResult {

packages/plugin-vue/src/utils/error.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import { CompilerError } from 'vue/compiler-sfc'
2-
import { RollupError } from 'rollup'
1+
import type { CompilerError } from 'vue/compiler-sfc'
2+
import type { RollupError } from 'rollup'
33

44
export function createRollupError(
55
id: string,

scripts/jestPerTestSetup.ts

+4-5
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,17 @@ import fs from 'fs-extra'
22
import * as http from 'http'
33
import { resolve, dirname } from 'path'
44
import sirv from 'sirv'
5-
import {
6-
createServer,
7-
build,
5+
import type {
86
ViteDevServer,
97
UserConfig,
108
PluginOption,
119
ResolvedConfig,
1210
Logger
1311
} from 'vite'
14-
import { Page } from 'playwright-chromium'
12+
import { createServer, build } from 'vite'
13+
import type { Page } from 'playwright-chromium'
1514
// eslint-disable-next-line node/no-extraneous-import
16-
import { RollupError, RollupWatcher, RollupWatcherEvent } from 'rollup'
15+
import type { RollupError, RollupWatcher, RollupWatcherEvent } from 'rollup'
1716

1817
const isBuildTest = !!process.env.VITE_TEST_BUILD
1918

0 commit comments

Comments
 (0)