mirror of
https://github.com/gotson/komga.git
synced 2026-03-23 13:46:21 +01:00
update for vitest 4
This commit is contained in:
parent
126e64b85a
commit
e3d33db154
6 changed files with 362 additions and 84 deletions
4
next-ui/dir2json.d.ts
vendored
4
next-ui/dir2json.d.ts
vendored
|
|
@ -4,9 +4,7 @@
|
|||
// noinspection JSUnusedGlobalSymbols
|
||||
// Auto generated by vite-plugin-dir2json
|
||||
declare module "*i18n?dir2json&ext=.json&1" {
|
||||
const json: {
|
||||
"en": string;
|
||||
};
|
||||
const json: {};
|
||||
export default json;
|
||||
}
|
||||
|
||||
|
|
|
|||
73
next-ui/package-lock.json
generated
73
next-ui/package-lock.json
generated
|
|
@ -39,7 +39,7 @@
|
|||
"@types/node": "^24.10.1",
|
||||
"@unocss/preset-icons": "^66.5.6",
|
||||
"@vitejs/plugin-vue": "^6.0.1",
|
||||
"@vitest/browser": "^4.0.8",
|
||||
"@vitest/browser-playwright": "^4.0.8",
|
||||
"@vitest/coverage-v8": "^4.0.8",
|
||||
"@vue/eslint-config-prettier": "^10.2.0",
|
||||
"@vue/eslint-config-typescript": "^14.6.0",
|
||||
|
|
@ -3816,6 +3816,77 @@
|
|||
"vitest": "4.0.8"
|
||||
}
|
||||
},
|
||||
"node_modules/@vitest/browser-playwright": {
|
||||
"version": "4.0.8",
|
||||
"resolved": "https://registry.npmjs.org/@vitest/browser-playwright/-/browser-playwright-4.0.8.tgz",
|
||||
"integrity": "sha512-MUi0msIAPXcA2YAuVMcssrSYP/yylxLt347xyTC6+ODl0c4XQFs0d2AN3Pc3iTa0pxIGmogflUV6eogXpPbJeA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@vitest/browser": "4.0.8",
|
||||
"@vitest/mocker": "4.0.8",
|
||||
"tinyrainbow": "^3.0.3"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://opencollective.com/vitest"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"playwright": "*",
|
||||
"vitest": "4.0.8"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"playwright": {
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/@vitest/browser-playwright/node_modules/@vitest/mocker": {
|
||||
"version": "4.0.8",
|
||||
"resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.0.8.tgz",
|
||||
"integrity": "sha512-9FRM3MZCedXH3+pIh+ME5Up2NBBHDq0wqwhOKkN4VnvCiKbVxddqH9mSGPZeawjd12pCOGnl+lo/ZGHt0/dQSg==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@vitest/spy": "4.0.8",
|
||||
"estree-walker": "^3.0.3",
|
||||
"magic-string": "^0.30.21"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://opencollective.com/vitest"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"msw": "^2.4.9",
|
||||
"vite": "^6.0.0 || ^7.0.0-0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"msw": {
|
||||
"optional": true
|
||||
},
|
||||
"vite": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/@vitest/browser-playwright/node_modules/@vitest/spy": {
|
||||
"version": "4.0.8",
|
||||
"resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-4.0.8.tgz",
|
||||
"integrity": "sha512-nvGVqUunyCgZH7kmo+Ord4WgZ7lN0sOULYXUOYuHr55dvg9YvMz3izfB189Pgp28w0vWFbEEfNc/c3VTrqrXeA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"url": "https://opencollective.com/vitest"
|
||||
}
|
||||
},
|
||||
"node_modules/@vitest/browser-playwright/node_modules/tinyrainbow": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-3.0.3.tgz",
|
||||
"integrity": "sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@vitest/browser/node_modules/@vitest/mocker": {
|
||||
"version": "4.0.8",
|
||||
"resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.0.8.tgz",
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@
|
|||
"@types/node": "^24.10.1",
|
||||
"@unocss/preset-icons": "^66.5.6",
|
||||
"@vitejs/plugin-vue": "^6.0.1",
|
||||
"@vitest/browser": "^4.0.8",
|
||||
"@vitest/browser-playwright": "^4.0.8",
|
||||
"@vitest/coverage-v8": "^4.0.8",
|
||||
"@vue/eslint-config-prettier": "^10.2.0",
|
||||
"@vue/eslint-config-typescript": "^14.6.0",
|
||||
|
|
|
|||
5
next-ui/src/components.d.ts
vendored
5
next-ui/src/components.d.ts
vendored
|
|
@ -1,8 +1,11 @@
|
|||
/* eslint-disable */
|
||||
// @ts-nocheck
|
||||
// biome-ignore lint: disable
|
||||
// oxlint-disable
|
||||
// ------
|
||||
// Generated by unplugin-vue-components
|
||||
// Read more: https://github.com/vuejs/core/pull/3399
|
||||
// biome-ignore lint: disable
|
||||
|
||||
export {}
|
||||
|
||||
/* prettier-ignore */
|
||||
|
|
|
|||
359
next-ui/src/typed-router.d.ts
vendored
359
next-ui/src/typed-router.d.ts
vendored
|
|
@ -1,10 +1,15 @@
|
|||
/* eslint-disable */
|
||||
/* prettier-ignore */
|
||||
// @ts-nocheck
|
||||
// noinspection ES6UnusedImports
|
||||
// Generated by unplugin-vue-router. ‼️ DO NOT MODIFY THIS FILE ‼️
|
||||
// It's recommended to commit this file.
|
||||
// Make sure to add this file to your tsconfig.json file as an "includes" or "files" entry.
|
||||
|
||||
declare module 'vue-router/auto-resolver' {
|
||||
export type ParamParserCustom = never
|
||||
}
|
||||
|
||||
declare module 'vue-router/auto-routes' {
|
||||
import type {
|
||||
RouteRecordInfo,
|
||||
|
|
@ -18,36 +23,186 @@ declare module 'vue-router/auto-routes' {
|
|||
* Route name map generated by unplugin-vue-router
|
||||
*/
|
||||
export interface RouteNamedMap {
|
||||
'/': RouteRecordInfo<'/', '/', Record<never, never>, Record<never, never>>,
|
||||
'/[...path]': RouteRecordInfo<'/[...path]', '/:path(.*)', { path: ParamValue<true> }, { path: ParamValue<false> }>,
|
||||
'/account/activity': RouteRecordInfo<'/account/activity', '/account/activity', Record<never, never>, Record<never, never>>,
|
||||
'/account/api-keys': RouteRecordInfo<'/account/api-keys', '/account/api-keys', Record<never, never>, Record<never, never>>,
|
||||
'/account/details': RouteRecordInfo<'/account/details', '/account/details', Record<never, never>, Record<never, never>>,
|
||||
'/account/ui': RouteRecordInfo<'/account/ui', '/account/ui', Record<never, never>, Record<never, never>>,
|
||||
'/claim': RouteRecordInfo<'/claim', '/claim', Record<never, never>, Record<never, never>>,
|
||||
'/error': RouteRecordInfo<'/error', '/error', Record<never, never>, Record<never, never>>,
|
||||
'/history': RouteRecordInfo<'/history', '/history', Record<never, never>, Record<never, never>>,
|
||||
'/import/books': RouteRecordInfo<'/import/books', '/import/books', Record<never, never>, Record<never, never>>,
|
||||
'/import/readlist': RouteRecordInfo<'/import/readlist', '/import/readlist', Record<never, never>, Record<never, never>>,
|
||||
'/login': RouteRecordInfo<'/login', '/login', Record<never, never>, Record<never, never>>,
|
||||
'/media/analysis': RouteRecordInfo<'/media/analysis', '/media/analysis', Record<never, never>, Record<never, never>>,
|
||||
'/media/duplicate-files': RouteRecordInfo<'/media/duplicate-files', '/media/duplicate-files', Record<never, never>, Record<never, never>>,
|
||||
'/media/duplicate-pages/known': RouteRecordInfo<'/media/duplicate-pages/known', '/media/duplicate-pages/known', Record<never, never>, Record<never, never>>,
|
||||
'/media/duplicate-pages/unknown': RouteRecordInfo<'/media/duplicate-pages/unknown', '/media/duplicate-pages/unknown', Record<never, never>, Record<never, never>>,
|
||||
'/media/missing-posters': RouteRecordInfo<'/media/missing-posters', '/media/missing-posters', Record<never, never>, Record<never, never>>,
|
||||
'/server/activity': RouteRecordInfo<'/server/activity', '/server/activity', Record<never, never>, Record<never, never>>,
|
||||
'/server/announcements': RouteRecordInfo<'/server/announcements', '/server/announcements', Record<never, never>, Record<never, never>>,
|
||||
'/server/metrics': RouteRecordInfo<'/server/metrics', '/server/metrics', Record<never, never>, Record<never, never>>,
|
||||
'/server/settings': RouteRecordInfo<'/server/settings', '/server/settings', Record<never, never>, Record<never, never>>,
|
||||
'/server/ui': RouteRecordInfo<'/server/ui', '/server/ui', Record<never, never>, Record<never, never>>,
|
||||
'/server/updates': RouteRecordInfo<'/server/updates', '/server/updates', Record<never, never>, Record<never, never>>,
|
||||
'/server/users': RouteRecordInfo<'/server/users', '/server/users', Record<never, never>, Record<never, never>>,
|
||||
'/startup': RouteRecordInfo<'/startup', '/startup', Record<never, never>, Record<never, never>>,
|
||||
'/': RouteRecordInfo<
|
||||
'/',
|
||||
'/',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/[...path]': RouteRecordInfo<
|
||||
'/[...path]',
|
||||
'/:path(.*)',
|
||||
{ path: ParamValue<true> },
|
||||
{ path: ParamValue<false> },
|
||||
| never
|
||||
>,
|
||||
'/account/activity': RouteRecordInfo<
|
||||
'/account/activity',
|
||||
'/account/activity',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/account/api-keys': RouteRecordInfo<
|
||||
'/account/api-keys',
|
||||
'/account/api-keys',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/account/details': RouteRecordInfo<
|
||||
'/account/details',
|
||||
'/account/details',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/account/ui': RouteRecordInfo<
|
||||
'/account/ui',
|
||||
'/account/ui',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/claim': RouteRecordInfo<
|
||||
'/claim',
|
||||
'/claim',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/error': RouteRecordInfo<
|
||||
'/error',
|
||||
'/error',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/history': RouteRecordInfo<
|
||||
'/history',
|
||||
'/history',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/import/books': RouteRecordInfo<
|
||||
'/import/books',
|
||||
'/import/books',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/import/readlist': RouteRecordInfo<
|
||||
'/import/readlist',
|
||||
'/import/readlist',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/login': RouteRecordInfo<
|
||||
'/login',
|
||||
'/login',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/media/analysis': RouteRecordInfo<
|
||||
'/media/analysis',
|
||||
'/media/analysis',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/media/duplicate-files': RouteRecordInfo<
|
||||
'/media/duplicate-files',
|
||||
'/media/duplicate-files',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/media/duplicate-pages/known': RouteRecordInfo<
|
||||
'/media/duplicate-pages/known',
|
||||
'/media/duplicate-pages/known',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/media/duplicate-pages/unknown': RouteRecordInfo<
|
||||
'/media/duplicate-pages/unknown',
|
||||
'/media/duplicate-pages/unknown',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/media/missing-posters': RouteRecordInfo<
|
||||
'/media/missing-posters',
|
||||
'/media/missing-posters',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/server/activity': RouteRecordInfo<
|
||||
'/server/activity',
|
||||
'/server/activity',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/server/announcements': RouteRecordInfo<
|
||||
'/server/announcements',
|
||||
'/server/announcements',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/server/metrics': RouteRecordInfo<
|
||||
'/server/metrics',
|
||||
'/server/metrics',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/server/settings': RouteRecordInfo<
|
||||
'/server/settings',
|
||||
'/server/settings',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/server/ui': RouteRecordInfo<
|
||||
'/server/ui',
|
||||
'/server/ui',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/server/updates': RouteRecordInfo<
|
||||
'/server/updates',
|
||||
'/server/updates',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/server/users': RouteRecordInfo<
|
||||
'/server/users',
|
||||
'/server/users',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
'/startup': RouteRecordInfo<
|
||||
'/startup',
|
||||
'/startup',
|
||||
Record<never, never>,
|
||||
Record<never, never>,
|
||||
| never
|
||||
>,
|
||||
}
|
||||
|
||||
/**
|
||||
* Route file to route info map by unplugin-vue-router.
|
||||
* Used by the volar plugin to automatically type useRoute()
|
||||
* Used by the \`sfc-typed-router\` Volar plugin to automatically type \`useRoute()\`.
|
||||
*
|
||||
* Each key is a file path relative to the project root with 2 properties:
|
||||
* - routes: union of route names of the possible routes when in this page (passed to useRoute<...>())
|
||||
|
|
@ -57,110 +212,160 @@ declare module 'vue-router/auto-routes' {
|
|||
*/
|
||||
export interface _RouteFileInfoMap {
|
||||
'src/pages/index.vue': {
|
||||
routes: '/'
|
||||
views: never
|
||||
routes:
|
||||
| '/'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/[...path].vue': {
|
||||
routes: '/[...path]'
|
||||
views: never
|
||||
routes:
|
||||
| '/[...path]'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/account/activity.vue': {
|
||||
routes: '/account/activity'
|
||||
views: never
|
||||
routes:
|
||||
| '/account/activity'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/account/api-keys.vue': {
|
||||
routes: '/account/api-keys'
|
||||
views: never
|
||||
routes:
|
||||
| '/account/api-keys'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/account/details.vue': {
|
||||
routes: '/account/details'
|
||||
views: never
|
||||
routes:
|
||||
| '/account/details'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/account/ui.vue': {
|
||||
routes: '/account/ui'
|
||||
views: never
|
||||
routes:
|
||||
| '/account/ui'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/claim.vue': {
|
||||
routes: '/claim'
|
||||
views: never
|
||||
routes:
|
||||
| '/claim'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/error.vue': {
|
||||
routes: '/error'
|
||||
views: never
|
||||
routes:
|
||||
| '/error'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/history.vue': {
|
||||
routes: '/history'
|
||||
views: never
|
||||
routes:
|
||||
| '/history'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/import/books.vue': {
|
||||
routes: '/import/books'
|
||||
views: never
|
||||
routes:
|
||||
| '/import/books'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/import/readlist.vue': {
|
||||
routes: '/import/readlist'
|
||||
views: never
|
||||
routes:
|
||||
| '/import/readlist'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/login.vue': {
|
||||
routes: '/login'
|
||||
views: never
|
||||
routes:
|
||||
| '/login'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/media/analysis.vue': {
|
||||
routes: '/media/analysis'
|
||||
views: never
|
||||
routes:
|
||||
| '/media/analysis'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/media/duplicate-files.vue': {
|
||||
routes: '/media/duplicate-files'
|
||||
views: never
|
||||
routes:
|
||||
| '/media/duplicate-files'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/media/duplicate-pages/known.vue': {
|
||||
routes: '/media/duplicate-pages/known'
|
||||
views: never
|
||||
routes:
|
||||
| '/media/duplicate-pages/known'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/media/duplicate-pages/unknown.vue': {
|
||||
routes: '/media/duplicate-pages/unknown'
|
||||
views: never
|
||||
routes:
|
||||
| '/media/duplicate-pages/unknown'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/media/missing-posters.vue': {
|
||||
routes: '/media/missing-posters'
|
||||
views: never
|
||||
routes:
|
||||
| '/media/missing-posters'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/server/activity.vue': {
|
||||
routes: '/server/activity'
|
||||
views: never
|
||||
routes:
|
||||
| '/server/activity'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/server/announcements.vue': {
|
||||
routes: '/server/announcements'
|
||||
views: never
|
||||
routes:
|
||||
| '/server/announcements'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/server/metrics.vue': {
|
||||
routes: '/server/metrics'
|
||||
views: never
|
||||
routes:
|
||||
| '/server/metrics'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/server/settings.vue': {
|
||||
routes: '/server/settings'
|
||||
views: never
|
||||
routes:
|
||||
| '/server/settings'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/server/ui.vue': {
|
||||
routes: '/server/ui'
|
||||
views: never
|
||||
routes:
|
||||
| '/server/ui'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/server/updates.vue': {
|
||||
routes: '/server/updates'
|
||||
views: never
|
||||
routes:
|
||||
| '/server/updates'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/server/users.vue': {
|
||||
routes: '/server/users'
|
||||
views: never
|
||||
routes:
|
||||
| '/server/users'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
'src/pages/startup.vue': {
|
||||
routes: '/startup'
|
||||
views: never
|
||||
routes:
|
||||
| '/startup'
|
||||
views:
|
||||
| never
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Get a union of possible route names in a certain route component file.
|
||||
* Used by the volar plugin to automatically type useRoute()
|
||||
* Used by the \`sfc-typed-router\` Volar plugin to automatically type \`useRoute()\`.
|
||||
*
|
||||
* @internal
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ import { defineConfig } from 'vite'
|
|||
import { fileURLToPath, URL } from 'node:url'
|
||||
import { storybookTest } from '@storybook/addon-vitest/vitest-plugin'
|
||||
import * as path from 'path'
|
||||
import { playwright } from '@vitest/browser-playwright'
|
||||
|
||||
const dirname =
|
||||
typeof __dirname !== 'undefined' ? __dirname : path.dirname(fileURLToPath(import.meta.url))
|
||||
|
|
@ -119,7 +120,7 @@ export default defineConfig(({ mode }) => ({
|
|||
browser: {
|
||||
enabled: true,
|
||||
headless: true,
|
||||
provider: 'playwright',
|
||||
provider: playwright(),
|
||||
instances: [{ browser: 'chromium' }],
|
||||
},
|
||||
setupFiles: ['.storybook/vitest.setup.ts'],
|
||||
|
|
|
|||
Loading…
Reference in a new issue