Skip to content

Commit 96b1683

Browse files
renovate[bot]renovate-botclarkdo
authored
chore(deps): update devdependency eslint to v8 (#472)
Co-authored-by: Renovate Bot <[email protected]> Co-authored-by: Xin Du (Clark) <[email protected]>
1 parent cf49512 commit 96b1683

File tree

7 files changed

+485
-310
lines changed

7 files changed

+485
-310
lines changed

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,11 @@
4242
"@nuxt/types": "^2.15.8",
4343
"@nuxt/typescript-build": "^2.1.0",
4444
"@nuxt/typescript-runtime": "^2.1.0",
45-
"@nuxtjs/eslint-config-typescript": "^6.0.1",
45+
"@nuxtjs/eslint-config-typescript": "^7.0.2",
4646
"@types/jest": "^27.0.3",
4747
"@types/sass": "^1.43.1",
4848
"codecov": "^3.8.2",
49-
"eslint": "^7.32.0",
49+
"eslint": "^8.3.0",
5050
"husky": "^7.0.0",
5151
"jest": "^27.3.1",
5252
"nuxt": "^2.15.8",

src/build.ts

Lines changed: 24 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,30 @@
11
import path from 'path'
22
import fs from 'fs'
3-
import { ModuleThis } from '@nuxt/types/config/module'
3+
import { Module } from '@nuxt/types/config/module'
44
import { Options } from './options'
55

6-
export default function setupBuild (this: ModuleThis, options: Options) {
6+
const setupBuild: Module<Options> = function (
7+
options
8+
) {
79
if (!options.treeShake) {
810
this.options.css!.push('vuetify/dist/vuetify.css')
911
}
1012

1113
// Enable tree-shaking with VuetifyLoader (https://github.com/vuetifyjs/vuetify-loader)
1214
if (options.treeShake) {
13-
const VuetifyLoaderPlugin = this.nuxt.resolver.requireModule('vuetify-loader/lib/plugin')
14-
15-
;(this.options.build!.transpile! as string[]).push('vuetify/lib')
15+
const VuetifyLoaderPlugin = this.nuxt.resolver.requireModule(
16+
'vuetify-loader/lib/plugin'
17+
);
18+
(this.options.build!.transpile! as string[]).push('vuetify/lib')
1619

1720
this.extendBuild((config) => {
18-
config.plugins!.push(new VuetifyLoaderPlugin(typeof options.treeShake === 'object' ? options.treeShake.loaderOptions : {}))
21+
config.plugins!.push(
22+
new VuetifyLoaderPlugin(
23+
typeof options.treeShake === 'object'
24+
? options.treeShake.loaderOptions
25+
: {}
26+
)
27+
)
1928
})
2029
}
2130

@@ -27,14 +36,18 @@ export default function setupBuild (this: ModuleThis, options: Options) {
2736
delete vuetifyOptions.preset
2837
delete vuetifyOptions.treeShake
2938

30-
let optionsPath: string | null = this.nuxt.resolver.resolveAlias(options.optionsPath ||
31-
path.join(this.options.dir!.app || 'app', 'vuetify', 'options.js'))
39+
let optionsPath: string | null = this.nuxt.resolver.resolveAlias(
40+
options.optionsPath ||
41+
path.join(this.options.dir!.app || 'app', 'vuetify', 'options.js')
42+
)
3243

3344
optionsPath = fs.existsSync(optionsPath!) ? optionsPath : null
3445

3546
// Register options template
3647
this.addTemplate({
37-
fileName: `vuetify/options.${optionsPath && optionsPath.endsWith('ts') ? 'ts' : 'js'}`,
48+
fileName: `vuetify/options.${
49+
optionsPath && optionsPath.endsWith('ts') ? 'ts' : 'js'
50+
}`,
3851
src: optionsPath || path.resolve(__dirname, '../templates', 'options.js'),
3952
options: vuetifyOptions
4053
})
@@ -50,3 +63,5 @@ export default function setupBuild (this: ModuleThis, options: Options) {
5063
}
5164
})
5265
}
66+
67+
export default setupBuild

src/font.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { ModuleThis } from '@nuxt/types/config/module'
1+
import { Module } from '@nuxt/types/config/module'
22

33
import type { SassOptionsV10 } from './sass'
44

@@ -7,7 +7,7 @@ export interface FontOptions {
77
size?: number
88
}
99

10-
export default function setupFont (this: ModuleThis, options: FontOptions) {
10+
const setupFont: Module<FontOptions> = function (options) {
1111
const family = `${options.family}:100,300,400,500,700,900&display=swap`
1212

1313
/* istanbul ignore else */
@@ -38,3 +38,5 @@ export default function setupFont (this: ModuleThis, options: FontOptions) {
3838
sass.additionalData = [`$font-size-root: ${options.size}px`, sass.additionalData].join('\n')
3939
}
4040
}
41+
42+
export default setupFont

src/icons.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { ModuleThis } from '@nuxt/types/config/module'
1+
import { Module } from '@nuxt/types/config/module'
22

33
const presetsCDN = {
44
mdi: 'https://cdn.jsdelivr.net/npm/@mdi/font@latest/css/materialdesignicons.min.css',
@@ -9,7 +9,7 @@ const presetsCDN = {
99

1010
export type IconPreset = keyof typeof presetsCDN
1111

12-
export default function setupIcons (this: ModuleThis, preset: IconPreset) {
12+
const setupIcons : Module<IconPreset> = function (preset) {
1313
// istanbul ignore else
1414
if (presetsCDN[preset] && typeof this.options.head === 'object') {
1515
this.options.head!.link!.push({
@@ -19,3 +19,5 @@ export default function setupIcons (this: ModuleThis, preset: IconPreset) {
1919
})
2020
}
2121
}
22+
23+
export default setupIcons

src/options.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import merge from 'deepmerge'
22

33
import { SFCDescriptor } from 'vue-template-compiler'
44
import { UserVuetifyPreset } from 'vuetify/types/services/presets'
5-
import { ModuleThis } from '@nuxt/types/config/module'
5+
import { NuxtOptions } from '@nuxt/types/config'
66

77
import { FontOptions } from './font'
88
import { IconPreset } from './icons'
@@ -46,7 +46,7 @@ export const defaults = {
4646
treeShake: process.env.NODE_ENV === 'production'
4747
}
4848

49-
export default function initOptions (this: ModuleThis, moduleOptions?: Options): Required<Options> {
49+
export default function initOptions (this: { options: NuxtOptions }, moduleOptions?: Options): Required<Options> {
5050
const options = merge.all([
5151
defaults,
5252
this.options.vuetify || {},

src/sass.ts

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,21 @@
1-
import { NuxtOptionsLoaders } from '@nuxt/types/config/build'
2-
import { ModuleThis } from '@nuxt/types/config/module'
1+
import { NuxtOptionsBuild } from '@nuxt/types/config/build'
2+
import { Module } from '@nuxt/types/config/module'
33
import dartSass from 'sass'
44
import { Options as SassOptions } from 'sass-loader'
55
import { Options } from './options'
66

7-
export type SassOptionsV10 = SassOptions & { additionalData?: string, indentedSyntax?: boolean }
7+
export type SassOptionsV10 = SassOptions & {
8+
additionalData?: string;
9+
indentedSyntax?: boolean;
10+
};
811

9-
export default function setupSass (this: ModuleThis, customVariables: Options['customVariables']) {
10-
const { sass, scss } : { sass: SassOptionsV10, scss: SassOptionsV10} = this.options.build!.loaders as Required<Pick<NuxtOptionsLoaders, 'sass' | 'scss'>>
12+
const setupSass: Module<Options['customVariables']> = function (
13+
customVariables
14+
) {
15+
const { sass, scss }: { sass: SassOptionsV10; scss: SassOptionsV10 } = this
16+
.options.build!.loaders as Required<
17+
Pick<NonNullable<NuxtOptionsBuild['loaders']>, 'sass' | 'scss'>
18+
>
1119

1220
// Use Dart Sass
1321
sass.implementation = scss.implementation = dartSass
@@ -22,9 +30,15 @@ export default function setupSass (this: ModuleThis, customVariables: Options['c
2230

2331
// Custom variables
2432
if (customVariables && customVariables.length > 0) {
25-
const sassImports = customVariables.map(path => `@import '${path}'`).join('\n')
33+
const sassImports = customVariables
34+
.map(path => `@import '${path}'`)
35+
.join('\n')
2636
sass.additionalData = [sass.additionalData, sassImports].join('\n')
27-
const scssImports = customVariables.map(path => `@import '${path}';`).join('\n')
37+
const scssImports = customVariables
38+
.map(path => `@import '${path}';`)
39+
.join('\n')
2840
scss.additionalData = [scss.additionalData, scssImports].join('\n')
2941
}
3042
}
43+
44+
export default setupSass

0 commit comments

Comments
 (0)