refactor: upgrade vue and vue-tsc

This commit is contained in:
mutoe 2022-06-08 22:20:44 +08:00
parent 838cd87b29
commit 00e9ef0f15
No known key found for this signature in database
GPG Key ID: 7197231B847AE2EE
31 changed files with 148 additions and 199 deletions

View File

@ -8,11 +8,13 @@
"extraFileExtensions": [".vue", ".d.ts"] "extraFileExtensions": [".vue", ".d.ts"]
}, },
"extends": [ "extends": [
"standard-with-typescript",
"plugin:@typescript-eslint/eslint-recommended", "plugin:@typescript-eslint/eslint-recommended",
"plugin:@typescript-eslint/recommended", "plugin:@typescript-eslint/recommended",
"plugin:vue/vue3-recommended" "plugin:vue/vue3-recommended"
], ],
"env": {
"vue/setup-compiler-macros": true
},
"rules": { "rules": {
"no-undef": "off", "no-undef": "off",
"no-unused-vars": "off", "no-unused-vars": "off",

32
.gitignore vendored
View File

@ -1,12 +1,28 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
node_modules node_modules
.DS_Store .DS_Store
dist dist
*.local dist-ssr
.idea
*.iml
cypress/videos
cypress/screenshots
coverage coverage
.vscode *.local
yarn-error.log
.husky /cypress/videos/
/cypress/screenshots/
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

View File

@ -31,11 +31,11 @@
"@typescript-eslint/parser": "^5.5.0", "@typescript-eslint/parser": "^5.5.0",
"@vitejs/plugin-vue": "^2.3.3", "@vitejs/plugin-vue": "^2.3.3",
"@vue/compiler-sfc": "^3.2.37", "@vue/compiler-sfc": "^3.2.37",
"@vue/tsconfig": "^0.1.3",
"babel-jest": "^28.1.1", "babel-jest": "^28.1.1",
"concurrently": "^7.2.1", "concurrently": "^7.2.1",
"cypress": "^10.0.3", "cypress": "^10.0.3",
"eslint": "^8.17.0", "eslint": "^8.17.0",
"eslint-config-standard-with-typescript": "^21.0.1",
"eslint-plugin-cypress": "^2.12.1", "eslint-plugin-cypress": "^2.12.1",
"eslint-plugin-import": "^2.25.3", "eslint-plugin-import": "^2.25.3",
"eslint-plugin-node": "^11.1.0", "eslint-plugin-node": "^11.1.0",
@ -47,9 +47,9 @@
"lint-staged": "^13.0.0", "lint-staged": "^13.0.0",
"rollup-plugin-analyzer": "^4.0.0", "rollup-plugin-analyzer": "^4.0.0",
"ts-jest": "^28.0.4", "ts-jest": "^28.0.4",
"typescript": "^4.7.3", "typescript": "~4.7.2",
"vite": "^2.9.10", "vite": "^2.9.10",
"vue-tsc": "^0.37.2", "vue-tsc": "^0.37.3",
"vue3-jest": "^27.0.0-alpha.2" "vue3-jest": "^27.0.0-alpha.2"
}, },
"husky": { "husky": {

View File

@ -1,20 +1,19 @@
<template> <template>
<router-link <RouterLink
:aria-label="props.name" :aria-label="props.name"
:to="props" :to="props"
> >
<slot /> <slot />
</router-link> </RouterLink>
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import type { AppRouteNames } from 'src/router' import type { AppRouteNames } from 'src/router'
import type { RouteParams } from 'vue-router' import type { RouteParams } from 'vue-router'
import { RouterLink } from 'vue-router'
interface Props { interface Props {
name: AppRouteNames, name: AppRouteNames,
params?: RouteParams params?: Partial<RouteParams>,
} }
const props = withDefaults(defineProps<Props>(), { const props = withDefaults(defineProps<Props>(), {

View File

@ -1,5 +1,5 @@
import { fireEvent, render } from '@testing-library/vue' import { fireEvent, render } from '@testing-library/vue'
import { GlobalMountOptions } from '@vue/test-utils/dist/types' import type { GlobalMountOptions } from '@vue/test-utils/dist/types'
import registerGlobalComponents from 'src/plugins/global-components' import registerGlobalComponents from 'src/plugins/global-components'
import { router } from 'src/router' import { router } from 'src/router'
import { deleteArticle } from 'src/services/article/deleteArticle' import { deleteArticle } from 'src/services/article/deleteArticle'

View File

@ -1,5 +1,5 @@
import { waitFor } from '@testing-library/vue' import { waitFor } from '@testing-library/vue'
import { GlobalMountOptions } from '@vue/test-utils/dist/types' import type { GlobalMountOptions } from '@vue/test-utils/dist/types'
import ArticlesList from 'src/components/ArticlesList.vue' import ArticlesList from 'src/components/ArticlesList.vue'
import registerGlobalComponents from 'src/plugins/global-components' import registerGlobalComponents from 'src/plugins/global-components'
import { router } from 'src/router' import { router } from 'src/router'

View File

@ -1,5 +1,5 @@
import { render } from '@testing-library/vue' import { render } from '@testing-library/vue'
import { GlobalMountOptions } from '@vue/test-utils/dist/types' import type { GlobalMountOptions } from '@vue/test-utils/dist/types'
import ArticlesListNavigation from 'src/components/ArticlesListNavigation.vue' import ArticlesListNavigation from 'src/components/ArticlesListNavigation.vue'
import registerGlobalComponents from 'src/plugins/global-components' import registerGlobalComponents from 'src/plugins/global-components'
import { router } from 'src/router' import { router } from 'src/router'

View File

@ -7,7 +7,8 @@ import {
getProfileArticles, getProfileArticles,
} from 'src/services/article/getArticles' } from 'src/services/article/getArticles'
import createAsyncProcess from 'src/utils/create-async-process' import createAsyncProcess from 'src/utils/create-async-process'
import { computed, ComputedRef, ref, watch } from 'vue' import type { ComputedRef } from 'vue'
import { computed, ref, watch } from 'vue'
import { useRoute } from 'vue-router' import { useRoute } from 'vue-router'
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type

View File

@ -3,7 +3,7 @@ import { deleteFavoriteArticle, postFavoriteArticle } from 'src/services/article
import type { AuthorizationError } from 'src/types/error' import type { AuthorizationError } from 'src/types/error'
import createAsyncProcess from 'src/utils/create-async-process' import createAsyncProcess from 'src/utils/create-async-process'
import type { Either } from 'src/utils/either' import type { Either } from 'src/utils/either'
import { ComputedRef } from 'vue' import type { ComputedRef } from 'vue'
interface useFavoriteArticleProps { interface useFavoriteArticleProps {
isFavorited: ComputedRef<boolean> isFavorited: ComputedRef<boolean>

View File

@ -1,5 +1,6 @@
import { getProfile } from 'src/services/profile/getProfile' import { getProfile } from 'src/services/profile/getProfile'
import { ComputedRef, ref, watch } from 'vue' import { ref, watch } from 'vue'
import type { ComputedRef } from 'vue'
interface UseProfileProps { interface UseProfileProps {
username: ComputedRef<string> username: ComputedRef<string>

View File

@ -62,7 +62,8 @@
<script setup lang="ts"> <script setup lang="ts">
import { routerPush } from 'src/router' import { routerPush } from 'src/router'
import { postLogin, PostLoginErrors, PostLoginForm } from 'src/services/auth/postLogin' import type { PostLoginErrors, PostLoginForm} from 'src/services/auth/postLogin'
import {postLogin } from 'src/services/auth/postLogin'
import { updateUser } from 'src/store/user' import { updateUser } from 'src/store/user'
import { reactive, ref } from 'vue' import { reactive, ref } from 'vue'

View File

@ -69,7 +69,8 @@
<script setup lang="ts"> <script setup lang="ts">
import { routerPush } from 'src/router' import { routerPush } from 'src/router'
import { postRegister, PostRegisterErrors, PostRegisterForm } from 'src/services/auth/postRegister' import type { PostRegisterErrors, PostRegisterForm } from 'src/services/auth/postRegister'
import { postRegister } from 'src/services/auth/postRegister'
import { updateUser } from 'src/store/user' import { updateUser } from 'src/store/user'
import { reactive, ref } from 'vue' import { reactive, ref } from 'vue'

View File

@ -75,7 +75,8 @@
<script setup lang="ts"> <script setup lang="ts">
import { routerPush } from 'src/router' import { routerPush } from 'src/router'
import { putProfile, PutProfileForm } from 'src/services/profile/putProfile' import type { PutProfileForm } from 'src/services/profile/putProfile'
import { putProfile } from 'src/services/profile/putProfile'
import { checkAuthorization, updateUser, user } from 'src/store/user' import { checkAuthorization, updateUser, user } from 'src/store/user'
import { computed, onMounted, reactive } from 'vue' import { computed, onMounted, reactive } from 'vue'

View File

@ -1,4 +1,5 @@
import { createRouter, createWebHashHistory, RouteParams } from 'vue-router' import { createRouter, createWebHashHistory } from 'vue-router'
import type {RouteParams} from 'vue-router'
import Home from './pages/Home.vue' import Home from './pages/Home.vue'
import { isAuthorized } from './store/user' import { isAuthorized } from './store/user'

View File

@ -1,5 +1,6 @@
import type { AuthorizationError } from 'src/types/error' import type { AuthorizationError } from 'src/types/error'
import { Either, fail, success } from 'src/utils/either' import type { Either } from 'src/utils/either'
import { fail, success } from 'src/utils/either'
import { mapAuthorizationResponse } from 'src/utils/map-checkable-response' import { mapAuthorizationResponse } from 'src/utils/map-checkable-response'
import { request } from '../index' import { request } from '../index'

View File

@ -1,5 +1,6 @@
import type { ValidationError } from 'src/types/error' import type { ValidationError } from 'src/types/error'
import { Either, fail, success } from 'src/utils/either' import type { Either } from 'src/utils/either'
import { fail, success } from 'src/utils/either'
import { mapValidationResponse } from 'src/utils/map-checkable-response' import { mapValidationResponse } from 'src/utils/map-checkable-response'
import { request } from '../index' import { request } from '../index'

View File

@ -1,5 +1,6 @@
import type { ValidationError } from 'src/types/error' import type { ValidationError } from 'src/types/error'
import { Either, fail, success } from 'src/utils/either' import type { Either } from 'src/utils/either'
import { fail, success } from 'src/utils/either'
import { mapValidationResponse } from 'src/utils/map-checkable-response' import { mapValidationResponse } from 'src/utils/map-checkable-response'
import { request } from '../index' import { request } from '../index'

View File

@ -1,5 +1,6 @@
import type { AuthorizationError } from 'src/types/error' import type { AuthorizationError } from 'src/types/error'
import { Either, fail, success } from 'src/utils/either' import type { Either } from 'src/utils/either'
import { fail, success } from 'src/utils/either'
import { mapAuthorizationResponse } from 'src/utils/map-checkable-response' import { mapAuthorizationResponse } from 'src/utils/map-checkable-response'
import { request } from '../index' import { request } from '../index'

13
src/shimes-vue.d.ts vendored
View File

@ -1,13 +0,0 @@
declare module '*.vue' {
import { defineComponent } from 'vue'
const Component: ReturnType<typeof defineComponent>
export default Component
}
interface ImportMeta {
env: {
BASE_URL: string
VITE_API_HOST: string
}
}

9
src/types/global-component.d.ts vendored Normal file
View File

@ -0,0 +1,9 @@
import AppLink from 'src/components/AppLink.vue'
declare module '@vue/runtime-core' {
export interface GlobalComponents {
RouterLink: typeof import('vue-router')['RouterLink']
RouterView: typeof import('vue-router')['RouterView']
AppLink: typeof AppLink
}
}

11
src/types/global.d.ts vendored
View File

@ -1 +1,12 @@
// eslint-disable-next-line @typescript-eslint/triple-slash-reference
/// <reference types="vite/client" />
// noinspection JSFileReferences
declare module 'insane'; declare module 'insane';
interface ImportMeta {
env: {
BASE_URL: string
VITE_API_HOST: string
}
}

View File

@ -1,4 +1,5 @@
import { Ref, ref } from 'vue' import type { Ref } from 'vue'
import { ref } from 'vue'
// eslint-disable-next-line @typescript-eslint/no-explicit-any // eslint-disable-next-line @typescript-eslint/no-explicit-any
interface CreateAsyncProcessReturn<T extends (...args: any[]) => any> { interface CreateAsyncProcessReturn<T extends (...args: any[]) => any> {

View File

@ -1,6 +1,7 @@
import wrapTests from 'src/utils/test/wrap-tests' import wrapTests from 'src/utils/test/wrap-tests'
import { ValidationError, AuthorizationError, NetworkError } from 'src/types/error' import { ValidationError, AuthorizationError, NetworkError } from 'src/types/error'
import { Either, fail, isEither, success } from './either' import type { Either } from './either'
import { fail, isEither, success } from './either'
import { mapAuthorizationResponse, mapValidationResponse } from './map-checkable-response' import { mapAuthorizationResponse, mapValidationResponse } from './map-checkable-response'
const createCheckableResponse = (response: Partial<Response>): Either<NetworkError, Partial<Response>> => response.ok === true const createCheckableResponse = (response: Partial<Response>): Either<NetworkError, Partial<Response>> => response.ok === true

View File

@ -1,6 +1,7 @@
import { AuthorizationError, NetworkError, ValidationError } from '../types/error' import { AuthorizationError, NetworkError, ValidationError } from '../types/error'
import { Either, fail, success } from './either' import { fail, success } from './either'
import type {Either} from './either'
export const mapAuthorizationResponse = <T>(result: Either<NetworkError, T>): Either<AuthorizationError, T> => { export const mapAuthorizationResponse = <T>(result: Either<NetworkError, T>): Either<AuthorizationError, T> => {
if (result.isOk()) { if (result.isOk()) {

View File

@ -1,5 +1,7 @@
import FetchRequest, { FetchRequestOptions } from 'src/utils/request' import type {FetchRequestOptions} from 'src/utils/request'
import { Either, fail, isEither, success } from 'src/utils/either' import FetchRequest from 'src/utils/request'
import { fail, isEither, success } from 'src/utils/either'
import type {Either} from 'src/utils/either'
import params2query from 'src/utils/params-to-query' import params2query from 'src/utils/params-to-query'
import mockFetch from 'src/utils/test/mock-fetch' import mockFetch from 'src/utils/test/mock-fetch'

View File

@ -1,5 +1,6 @@
import { NetworkError } from 'src/types/error' import { NetworkError } from 'src/types/error'
import { Either, fail, success } from './either' import type { Either } from './either'
import { fail, success } from './either'
import params2query from './params-to-query' import params2query from './params-to-query'
export interface FetchRequestOptions { export interface FetchRequestOptions {

View File

@ -11,7 +11,8 @@
import { mount, flushPromises, VueWrapper } from '@vue/test-utils' import { mount, flushPromises, VueWrapper } from '@vue/test-utils'
import { h, defineComponent, Suspense } from 'vue' import { h, defineComponent, Suspense } from 'vue'
import { getQueriesForElement, prettyDOM, RenderOptions, RenderResult } from '@testing-library/vue' import type { RenderOptions, RenderResult } from '@testing-library/vue'
import { getQueriesForElement, prettyDOM } from '@testing-library/vue'
const mountedWrappers = new Set<VueWrapper<any>>() const mountedWrappers = new Set<VueWrapper<any>>()

8
tsconfig.config.json Normal file
View File

@ -0,0 +1,8 @@
{
"extends": "@vue/tsconfig/tsconfig.node.json",
"include": ["vite.config.*", "vitest.config.*", "cypress.config.*"],
"compilerOptions": {
"composite": true,
"types": ["node"]
}
}

View File

@ -1,21 +1,12 @@
{ {
"extends": "@vue/tsconfig/tsconfig.web.json",
"include": ["src/**/*", "src/**/*.vue"],
"compilerOptions": { "compilerOptions": {
"target": "ESNext",
"module": "ESNext",
"jsx": "preserve",
"noEmit": true,
"isolatedModules": true,
"strict": true,
"moduleResolution": "node",
"baseUrl": ".", "baseUrl": ".",
"allowSyntheticDefaultImports": true,
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true,
"noUnusedLocals": true,
}, },
"include": [ "references": [
"src", {
"vite.config.js" "path": "./tsconfig.config.json"
}
] ]
} }

View File

@ -1,12 +1,13 @@
import vue from '@vitejs/plugin-vue' import vue from '@vitejs/plugin-vue'
import { resolve } from 'path' import { fileURLToPath, URL } from 'url'
import { defineConfig } from 'vite' import { defineConfig } from 'vite'
import analyzer from 'rollup-plugin-analyzer' import analyzer from 'rollup-plugin-analyzer'
// https://vitejs.dev/config/
export default defineConfig({ export default defineConfig({
resolve: { resolve: {
alias: { alias: {
src: resolve(__dirname, 'src'), src: fileURLToPath(new URL('./src', import.meta.url))
}, },
}, },
plugins: [ plugins: [

172
yarn.lock
View File

@ -1029,16 +1029,6 @@
semver "^7.3.5" semver "^7.3.5"
tsutils "^3.21.0" tsutils "^3.21.0"
"@typescript-eslint/parser@^4.0.0":
version "4.33.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.33.0.tgz#dfe797570d9694e560528d18eecad86c8c744899"
integrity sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA==
dependencies:
"@typescript-eslint/scope-manager" "4.33.0"
"@typescript-eslint/types" "4.33.0"
"@typescript-eslint/typescript-estree" "4.33.0"
debug "^4.3.1"
"@typescript-eslint/parser@^5.5.0": "@typescript-eslint/parser@^5.5.0":
version "5.11.0" version "5.11.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.11.0.tgz#b4fcaf65513f9b34bdcbffdda055724a5efb7e04" resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.11.0.tgz#b4fcaf65513f9b34bdcbffdda055724a5efb7e04"
@ -1049,14 +1039,6 @@
"@typescript-eslint/typescript-estree" "5.11.0" "@typescript-eslint/typescript-estree" "5.11.0"
debug "^4.3.2" debug "^4.3.2"
"@typescript-eslint/scope-manager@4.33.0":
version "4.33.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz#d38e49280d983e8772e29121cf8c6e9221f280a3"
integrity sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ==
dependencies:
"@typescript-eslint/types" "4.33.0"
"@typescript-eslint/visitor-keys" "4.33.0"
"@typescript-eslint/scope-manager@5.11.0": "@typescript-eslint/scope-manager@5.11.0":
version "5.11.0" version "5.11.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.11.0.tgz#f5aef83ff253f457ecbee5f46f762298f0101e4b" resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.11.0.tgz#f5aef83ff253f457ecbee5f46f762298f0101e4b"
@ -1074,29 +1056,11 @@
debug "^4.3.2" debug "^4.3.2"
tsutils "^3.21.0" tsutils "^3.21.0"
"@typescript-eslint/types@4.33.0":
version "4.33.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.33.0.tgz#a1e59036a3b53ae8430ceebf2a919dc7f9af6d72"
integrity sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==
"@typescript-eslint/types@5.11.0": "@typescript-eslint/types@5.11.0":
version "5.11.0" version "5.11.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.11.0.tgz#ba345818a2540fdf2755c804dc2158517ab61188" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.11.0.tgz#ba345818a2540fdf2755c804dc2158517ab61188"
integrity sha512-cxgBFGSRCoBEhvSVLkKw39+kMzUKHlJGVwwMbPcTZX3qEhuXhrjwaZXWMxVfxDgyMm+b5Q5b29Llo2yow8Y7xQ== integrity sha512-cxgBFGSRCoBEhvSVLkKw39+kMzUKHlJGVwwMbPcTZX3qEhuXhrjwaZXWMxVfxDgyMm+b5Q5b29Llo2yow8Y7xQ==
"@typescript-eslint/typescript-estree@4.33.0":
version "4.33.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz#0dfb51c2908f68c5c08d82aefeaf166a17c24609"
integrity sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==
dependencies:
"@typescript-eslint/types" "4.33.0"
"@typescript-eslint/visitor-keys" "4.33.0"
debug "^4.3.1"
globby "^11.0.3"
is-glob "^4.0.1"
semver "^7.3.5"
tsutils "^3.21.0"
"@typescript-eslint/typescript-estree@5.11.0": "@typescript-eslint/typescript-estree@5.11.0":
version "5.11.0" version "5.11.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.11.0.tgz#53f9e09b88368191e52020af77c312a4777ffa43" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.11.0.tgz#53f9e09b88368191e52020af77c312a4777ffa43"
@ -1122,14 +1086,6 @@
eslint-scope "^5.1.1" eslint-scope "^5.1.1"
eslint-utils "^3.0.0" eslint-utils "^3.0.0"
"@typescript-eslint/visitor-keys@4.33.0":
version "4.33.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz#2a22f77a41604289b7a186586e9ec48ca92ef1dd"
integrity sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg==
dependencies:
"@typescript-eslint/types" "4.33.0"
eslint-visitor-keys "^2.0.0"
"@typescript-eslint/visitor-keys@5.11.0": "@typescript-eslint/visitor-keys@5.11.0":
version "5.11.0" version "5.11.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.11.0.tgz#888542381f1a2ac745b06d110c83c0b261487ebb" resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.11.0.tgz#888542381f1a2ac745b06d110c83c0b261487ebb"
@ -1143,49 +1099,47 @@
resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-2.3.3.tgz#fbf80cc039b82ac21a1acb0f0478de8f61fbf600" resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-2.3.3.tgz#fbf80cc039b82ac21a1acb0f0478de8f61fbf600"
integrity sha512-SmQLDyhz+6lGJhPELsBdzXGc+AcaT8stgkbiTFGpXPe8Tl1tJaBw1A6pxDqDuRsVkD8uscrkx3hA7QDOoKYtyw== integrity sha512-SmQLDyhz+6lGJhPELsBdzXGc+AcaT8stgkbiTFGpXPe8Tl1tJaBw1A6pxDqDuRsVkD8uscrkx3hA7QDOoKYtyw==
"@volar/code-gen@0.37.2": "@volar/code-gen@0.37.3":
version "0.37.2" version "0.37.3"
resolved "https://registry.yarnpkg.com/@volar/code-gen/-/code-gen-0.37.2.tgz#781c56cede72da26b8658f77b0f686d2bb09e8e9" resolved "https://registry.yarnpkg.com/@volar/code-gen/-/code-gen-0.37.3.tgz#d76c0a112a7fcba90436f7ab0f2149fae02d66b8"
integrity sha512-rAmbDj1XSyTwKO83mbiCfcNZPCKKeGBnk8PdDKHeSg7+QgimhUADIzyZV7ejdEfwLXOgxyfKVSy6eiFUc7LFLw== integrity sha512-+XXfbkjVoDPxECkAOtRmHKnKnSWMOeThqlVSm9XwIVSdyiBN8Gi4xDUWmPH/WxK+D8bGLCm4Vkjk3rge+KOVaQ==
dependencies: dependencies:
"@volar/source-map" "0.37.2" "@volar/source-map" "0.37.3"
"@volar/source-map@0.37.2": "@volar/source-map@0.37.3":
version "0.37.2" version "0.37.3"
resolved "https://registry.yarnpkg.com/@volar/source-map/-/source-map-0.37.2.tgz#920562bd66e7ada1b5f564284071936baad14578" resolved "https://registry.yarnpkg.com/@volar/source-map/-/source-map-0.37.3.tgz#15c6fa6642c001aff0468a007f9be263e23acb78"
integrity sha512-ImitrytQWNrH4G98eI7g3Du7n0PwgKpzSUwMRp99AIjj3Snet90vNDNYpW6mUiOR7StZFr4Kk21n7zIXcRLxpA== integrity sha512-vedJWjcjKY2u8EnYMQyDjab2+S1tzUqvzJAY3PqVeN7nwJMyP5X2C/OMB2qZqJPxM0EYIR5ExVaJyVxWNkCgYA==
"@volar/typescript-faster@0.37.2": "@volar/typescript-faster@0.37.3":
version "0.37.2" version "0.37.3"
resolved "https://registry.yarnpkg.com/@volar/typescript-faster/-/typescript-faster-0.37.2.tgz#eb05f0e409b244d431aa7a8a4927fd99a2466a16" resolved "https://registry.yarnpkg.com/@volar/typescript-faster/-/typescript-faster-0.37.3.tgz#b234ea6ff4c134988fcb308d3cb5dc99a9376aca"
integrity sha512-/bvkH9iYnp2bh5xp4+jQ/qRx4I9/2YRRRHR5V251DLCPEJKjTyPFQxsOK6Ibl4h7PKrZLTWqU3Nv8hqLfmDX/w== integrity sha512-WlEv38Uga/VnstM2cdCedaH8eZsO/DwDr5GDNoJk+lLcpCHbmWgccajUaiLhXfgqBZld0hxQwlgwIqOsKrSgig==
dependencies: dependencies:
semver "^7.3.7" semver "^7.3.7"
"@volar/vue-code-gen@0.37.2": "@volar/vue-code-gen@0.37.3":
version "0.37.2" version "0.37.3"
resolved "https://registry.yarnpkg.com/@volar/vue-code-gen/-/vue-code-gen-0.37.2.tgz#7fee3e045289ed3ce93391107db2ab18cd0ac58e" resolved "https://registry.yarnpkg.com/@volar/vue-code-gen/-/vue-code-gen-0.37.3.tgz#e872dbf2080aed215d34b58cc41bfb8288b2ddda"
integrity sha512-p7rkmk8OyHQj+TjbFndd5cZzHLaivSgoI1/QHqqcRcWmrkGZJj9E4KrKMD9UBwK0ZipRHkcqZJXTHd+seDyvzw== integrity sha512-+V+XUItSKve98W7m+WM1iUHyEe5JixTmILsMqZNJ/Ob0UFci2YD3tCTlMC9/o/CdKlxBCgUerQZ61q/YLWKgkg==
dependencies: dependencies:
"@volar/code-gen" "0.37.2" "@volar/code-gen" "0.37.3"
"@volar/source-map" "0.37.2" "@volar/source-map" "0.37.3"
"@vue/compiler-core" "^3.2.37" "@vue/compiler-core" "^3.2.37"
"@vue/compiler-dom" "^3.2.37" "@vue/compiler-dom" "^3.2.37"
"@vue/shared" "^3.2.37" "@vue/shared" "^3.2.37"
"@volar/vue-typescript@0.37.2": "@volar/vue-typescript@0.37.3":
version "0.37.2" version "0.37.3"
resolved "https://registry.yarnpkg.com/@volar/vue-typescript/-/vue-typescript-0.37.2.tgz#c4f09471ebee3caedf675bb4832140622c87a4f0" resolved "https://registry.yarnpkg.com/@volar/vue-typescript/-/vue-typescript-0.37.3.tgz#b84ebee5604c1d41aa7c89cd71451a4b48438afe"
integrity sha512-wtKAwVgcno6kH3rbwdhjOCb5+q6F0LTbypwV2Vuk760I2ps1BZbiVwqoVV4PJ9pcd+B/z0VJ21K/R4+AyPTkZQ== integrity sha512-klMYVD4a3M+PhjNfreOFjgdGWTFSOM7fIJ5yebrwt8UD9HV2Bhfz0YNTYBL6SkGDTRCgeNPdGTgh1RbIWjsQJA==
dependencies: dependencies:
"@volar/code-gen" "0.37.2" "@volar/code-gen" "0.37.3"
"@volar/source-map" "0.37.2" "@volar/source-map" "0.37.3"
"@volar/typescript-faster" "0.37.2" "@volar/typescript-faster" "0.37.3"
"@volar/vue-code-gen" "0.37.2" "@volar/vue-code-gen" "0.37.3"
"@vue/compiler-sfc" "^3.2.37" "@vue/compiler-sfc" "^3.2.37"
"@vue/reactivity" "^3.2.37" "@vue/reactivity" "^3.2.37"
markdown-it "^13.0.1"
markdown-it-ast "^0.0.1"
"@vue/compiler-core@3.2.37", "@vue/compiler-core@^3.2.37": "@vue/compiler-core@3.2.37", "@vue/compiler-core@^3.2.37":
version "3.2.37" version "3.2.37"
@ -1287,6 +1241,11 @@
resolved "https://registry.yarnpkg.com/@vue/test-utils/-/test-utils-2.0.0-rc.18.tgz#ff22b252424fe72e5462cbb3a8e7405cef11ffb6" resolved "https://registry.yarnpkg.com/@vue/test-utils/-/test-utils-2.0.0-rc.18.tgz#ff22b252424fe72e5462cbb3a8e7405cef11ffb6"
integrity sha512-aifolXjVdsogjaLmDoZ0FU8vN+R67aWmg9OuVeED4w5Ij5GFQLrlhM19uhWe/r5xXUL4fXMk3pX5wW6FJP1NcQ== integrity sha512-aifolXjVdsogjaLmDoZ0FU8vN+R67aWmg9OuVeED4w5Ij5GFQLrlhM19uhWe/r5xXUL4fXMk3pX5wW6FJP1NcQ==
"@vue/tsconfig@^0.1.3":
version "0.1.3"
resolved "https://registry.yarnpkg.com/@vue/tsconfig/-/tsconfig-0.1.3.tgz#4a61dbd29783d01ddab504276dcf0c2b6988654f"
integrity sha512-kQVsh8yyWPvHpb8gIc9l/HIDiiVUy1amynLNpCy8p+FoCiZXCo6fQos5/097MmnNZc9AtseDsCrfkhqCrJ8Olg==
abab@^2.0.3, abab@^2.0.5: abab@^2.0.3, abab@^2.0.5:
version "2.0.5" version "2.0.5"
resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a"
@ -2053,7 +2012,7 @@ dayjs@^1.10.4:
resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.10.7.tgz#2cf5f91add28116748440866a0a1d26f3a6ce468" resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.10.7.tgz#2cf5f91add28116748440866a0a1d26f3a6ce468"
integrity sha512-P6twpd70BcPK34K26uJ1KT3wlhpuOAPoMwJzpsIWUxHZ7wpmbdZL/hQqBDfz7hGurYSa5PhzdhDHtt319hL3ig== integrity sha512-P6twpd70BcPK34K26uJ1KT3wlhpuOAPoMwJzpsIWUxHZ7wpmbdZL/hQqBDfz7hGurYSa5PhzdhDHtt319hL3ig==
debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2: debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.2:
version "4.3.3" version "4.3.3"
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664"
integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q== integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==
@ -2218,11 +2177,6 @@ enquirer@^2.3.6:
dependencies: dependencies:
ansi-colors "^4.1.1" ansi-colors "^4.1.1"
entities@~3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/entities/-/entities-3.0.1.tgz#2b887ca62585e96db3903482d336c1006c3001d4"
integrity sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==
error-ex@^1.3.1: error-ex@^1.3.1:
version "1.3.2" version "1.3.2"
resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
@ -2423,19 +2377,6 @@ escodegen@^2.0.0:
optionalDependencies: optionalDependencies:
source-map "~0.6.1" source-map "~0.6.1"
eslint-config-standard-with-typescript@^21.0.1:
version "21.0.1"
resolved "https://registry.yarnpkg.com/eslint-config-standard-with-typescript/-/eslint-config-standard-with-typescript-21.0.1.tgz#f4c8bb883d8dfd634005239a54c3c222746e3c64"
integrity sha512-FeiMHljEJ346Y0I/HpAymNKdrgKEpHpcg/D93FvPHWfCzbT4QyUJba/0FwntZeGLXfUiWDSeKmdJD597d9wwiw==
dependencies:
"@typescript-eslint/parser" "^4.0.0"
eslint-config-standard "^16.0.0"
eslint-config-standard@^16.0.0:
version "16.0.3"
resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz#6c8761e544e96c531ff92642eeb87842b8488516"
integrity sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg==
eslint-import-resolver-node@^0.3.6: eslint-import-resolver-node@^0.3.6:
version "0.3.6" version "0.3.6"
resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz#4048b958395da89668252001dbd9eca6b83bacbd" resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz#4048b958395da89668252001dbd9eca6b83bacbd"
@ -3042,7 +2983,7 @@ globals@^13.15.0:
dependencies: dependencies:
type-fest "^0.20.2" type-fest "^0.20.2"
globby@^11.0.3, globby@^11.0.4: globby@^11.0.4:
version "11.1.0" version "11.1.0"
resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b"
integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==
@ -4009,13 +3950,6 @@ lines-and-columns@^1.1.6:
resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632"
integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==
linkify-it@^4.0.1:
version "4.0.1"
resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-4.0.1.tgz#01f1d5e508190d06669982ba31a7d9f56a5751ec"
integrity sha512-C7bfi1UZmoj8+PQx22XyeXCuBlokoyWQL5pWSP+EI6nzRylyThouddufc2c1NDIcP9k5agmN9fLpA7VNJfIiqw==
dependencies:
uc.micro "^1.0.1"
lint-staged@^13.0.0: lint-staged@^13.0.0:
version "13.0.0" version "13.0.0"
resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-13.0.0.tgz#ce3526a844e6328814a3261fbfedc610a18856fa" resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-13.0.0.tgz#ce3526a844e6328814a3261fbfedc610a18856fa"
@ -4161,32 +4095,11 @@ makeerror@1.0.12:
dependencies: dependencies:
tmpl "1.0.5" tmpl "1.0.5"
markdown-it-ast@^0.0.1:
version "0.0.1"
resolved "https://registry.yarnpkg.com/markdown-it-ast/-/markdown-it-ast-0.0.1.tgz#8e8473837ab3b32fd1c23653ae6d47663f977538"
integrity sha512-+ON/l08iMq47OfXnqBOZtLOWjusuN1aXErJLBmNRmpJn2b0qJ1i27ngiOgqImdhtFJ20YMdXxziGMAAkTCPBSQ==
markdown-it@^13.0.1:
version "13.0.1"
resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-13.0.1.tgz#c6ecc431cacf1a5da531423fc6a42807814af430"
integrity sha512-lTlxriVoy2criHP0JKRhO2VDG9c2ypWCsT237eDiLqi09rmbKoUetyGHq2uOIRoRS//kfoJckS0eUzzkDR+k2Q==
dependencies:
argparse "^2.0.1"
entities "~3.0.1"
linkify-it "^4.0.1"
mdurl "^1.0.1"
uc.micro "^1.0.5"
marked@^4.0.16: marked@^4.0.16:
version "4.0.16" version "4.0.16"
resolved "https://registry.yarnpkg.com/marked/-/marked-4.0.16.tgz#9ec18fc1a723032eb28666100344d9428cf7a264" resolved "https://registry.yarnpkg.com/marked/-/marked-4.0.16.tgz#9ec18fc1a723032eb28666100344d9428cf7a264"
integrity sha512-wahonIQ5Jnyatt2fn8KqF/nIqZM8mh3oRu2+l5EANGMhu6RFjiSG52QNE2eWzFMI94HqYSgN184NurgNG6CztA== integrity sha512-wahonIQ5Jnyatt2fn8KqF/nIqZM8mh3oRu2+l5EANGMhu6RFjiSG52QNE2eWzFMI94HqYSgN184NurgNG6CztA==
mdurl@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e"
integrity sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==
merge-stream@^2.0.0: merge-stream@^2.0.0:
version "2.0.0" version "2.0.0"
resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
@ -5354,16 +5267,11 @@ type-fest@^0.21.3:
resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37"
integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==
typescript@^4.7.3: typescript@~4.7.2:
version "4.7.3" version "4.7.3"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.7.3.tgz#8364b502d5257b540f9de4c40be84c98e23a129d" resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.7.3.tgz#8364b502d5257b540f9de4c40be84c98e23a129d"
integrity sha512-WOkT3XYvrpXx4vMMqlD+8R8R37fZkjyLGlxavMc4iB8lrl8L0DeTcHbYgw/v0N/z9wAFsgBhcsF0ruoySS22mA== integrity sha512-WOkT3XYvrpXx4vMMqlD+8R8R37fZkjyLGlxavMc4iB8lrl8L0DeTcHbYgw/v0N/z9wAFsgBhcsF0ruoySS22mA==
uc.micro@^1.0.1, uc.micro@^1.0.5:
version "1.0.6"
resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.6.tgz#9c411a802a409a91fc6cf74081baba34b24499ac"
integrity sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==
unbox-primitive@^1.0.1: unbox-primitive@^1.0.1:
version "1.0.1" version "1.0.1"
resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471"
@ -5461,12 +5369,12 @@ vue-router@^4.0.15:
dependencies: dependencies:
"@vue/devtools-api" "^6.0.0" "@vue/devtools-api" "^6.0.0"
vue-tsc@^0.37.2: vue-tsc@^0.37.3:
version "0.37.2" version "0.37.3"
resolved "https://registry.yarnpkg.com/vue-tsc/-/vue-tsc-0.37.2.tgz#9b01ee08f3e6e500a123bb7894a3de66af59620c" resolved "https://registry.yarnpkg.com/vue-tsc/-/vue-tsc-0.37.3.tgz#1a7858fd810c498876bb6e315c40cae9c1aca6bc"
integrity sha512-NlVJUVA+EhEdMIxG7fTCV8nrdURRgBAwThtjGjwVNvMexmcEPBJnUQUjMaTSSqiTLl8Em/UrxOH/cPMVnHhsVg== integrity sha512-MB8aU+9z722Q1tD/pg8ZKnkOSZI1yAlPYCA7R42B86XCUJ/w7fQtlI8Ojcgznz7IH3SxIkOVIw+S6TfddOa9gg==
dependencies: dependencies:
"@volar/vue-typescript" "0.37.2" "@volar/vue-typescript" "0.37.3"
vue3-jest@^27.0.0-alpha.2: vue3-jest@^27.0.0-alpha.2:
version "27.0.0-alpha.2" version "27.0.0-alpha.2"