From 0fd99deca954385091b2528ae478d121efdcfa0e Mon Sep 17 00:00:00 2001 From: Corentin Thomasset Date: Sat, 15 Apr 2023 02:10:28 +0200 Subject: [PATCH] wip --- .eslintrc-auto-import.json | 4 - .gitignore | 2 + auto-imports.d.ts | 8 - components.d.ts | 34 -- package.json | 9 +- pnpm-lock.yaml | 425 ++++++++++++++++++++----- src/App.vue | 32 +- src/components/CollapsibleToolMenu.vue | 3 +- src/components/ColoredCard.vue | 4 +- src/components/SearchBar.vue | 1 - src/layouts/base.layout.vue | 1 - src/layouts/tool.layout.vue | 1 - src/main.ts | 35 +- src/pages/Home.page.vue | 34 +- src/plugins/plausible.plugin.ts | 2 +- src/router.ts | 67 ++-- src/tools/index.ts | 240 +++++++------- vite.config.ts | 25 +- 18 files changed, 602 insertions(+), 325 deletions(-) diff --git a/.eslintrc-auto-import.json b/.eslintrc-auto-import.json index 363273af..f5525717 100644 --- a/.eslintrc-auto-import.json +++ b/.eslintrc-auto-import.json @@ -136,7 +136,6 @@ "useDeviceOrientation": true, "useDevicePixelRatio": true, "useDevicesList": true, - "useDialog": true, "useDisplayMedia": true, "useDocumentVisibility": true, "useDraggable": true, @@ -169,7 +168,6 @@ "useKeyModifier": true, "useLastChanged": true, "useLink": true, - "useLoadingBar": true, "useLocalStorage": true, "useMagicKeys": true, "useManualRefHistory": true, @@ -177,7 +175,6 @@ "useMediaQuery": true, "useMemoize": true, "useMemory": true, - "useMessage": true, "useMounted": true, "useMouse": true, "useMouseInElement": true, @@ -185,7 +182,6 @@ "useMutationObserver": true, "useNavigatorLanguage": true, "useNetwork": true, - "useNotification": true, "useNow": true, "useObjectUrl": true, "useOffsetPagination": true, diff --git a/.gitignore b/.gitignore index 2cfe718a..0ed432ce 100644 --- a/.gitignore +++ b/.gitignore @@ -31,3 +31,5 @@ coverage /test-results/ /playwright-report/ /playwright/.cache/ + +.vite-ssg-temp \ No newline at end of file diff --git a/auto-imports.d.ts b/auto-imports.d.ts index 2850890b..241c38a2 100644 --- a/auto-imports.d.ts +++ b/auto-imports.d.ts @@ -133,7 +133,6 @@ declare global { const useDeviceOrientation: typeof import('@vueuse/core')['useDeviceOrientation'] const useDevicePixelRatio: typeof import('@vueuse/core')['useDevicePixelRatio'] const useDevicesList: typeof import('@vueuse/core')['useDevicesList'] - const useDialog: typeof import('naive-ui')['useDialog'] const useDisplayMedia: typeof import('@vueuse/core')['useDisplayMedia'] const useDocumentVisibility: typeof import('@vueuse/core')['useDocumentVisibility'] const useDraggable: typeof import('@vueuse/core')['useDraggable'] @@ -166,7 +165,6 @@ declare global { const useKeyModifier: typeof import('@vueuse/core')['useKeyModifier'] const useLastChanged: typeof import('@vueuse/core')['useLastChanged'] const useLink: typeof import('vue-router')['useLink'] - const useLoadingBar: typeof import('naive-ui')['useLoadingBar'] const useLocalStorage: typeof import('@vueuse/core')['useLocalStorage'] const useMagicKeys: typeof import('@vueuse/core')['useMagicKeys'] const useManualRefHistory: typeof import('@vueuse/core')['useManualRefHistory'] @@ -174,7 +172,6 @@ declare global { const useMediaQuery: typeof import('@vueuse/core')['useMediaQuery'] const useMemoize: typeof import('@vueuse/core')['useMemoize'] const useMemory: typeof import('@vueuse/core')['useMemory'] - const useMessage: typeof import('naive-ui')['useMessage'] const useMounted: typeof import('@vueuse/core')['useMounted'] const useMouse: typeof import('@vueuse/core')['useMouse'] const useMouseInElement: typeof import('@vueuse/core')['useMouseInElement'] @@ -182,7 +179,6 @@ declare global { const useMutationObserver: typeof import('@vueuse/core')['useMutationObserver'] const useNavigatorLanguage: typeof import('@vueuse/core')['useNavigatorLanguage'] const useNetwork: typeof import('@vueuse/core')['useNetwork'] - const useNotification: typeof import('naive-ui')['useNotification'] const useNow: typeof import('@vueuse/core')['useNow'] const useObjectUrl: typeof import('@vueuse/core')['useObjectUrl'] const useOffsetPagination: typeof import('@vueuse/core')['useOffsetPagination'] @@ -396,7 +392,6 @@ declare module 'vue' { readonly useDeviceOrientation: UnwrapRef readonly useDevicePixelRatio: UnwrapRef readonly useDevicesList: UnwrapRef - readonly useDialog: UnwrapRef readonly useDisplayMedia: UnwrapRef readonly useDocumentVisibility: UnwrapRef readonly useDraggable: UnwrapRef @@ -429,7 +424,6 @@ declare module 'vue' { readonly useKeyModifier: UnwrapRef readonly useLastChanged: UnwrapRef readonly useLink: UnwrapRef - readonly useLoadingBar: UnwrapRef readonly useLocalStorage: UnwrapRef readonly useMagicKeys: UnwrapRef readonly useManualRefHistory: UnwrapRef @@ -437,7 +431,6 @@ declare module 'vue' { readonly useMediaQuery: UnwrapRef readonly useMemoize: UnwrapRef readonly useMemory: UnwrapRef - readonly useMessage: UnwrapRef readonly useMounted: UnwrapRef readonly useMouse: UnwrapRef readonly useMouseInElement: UnwrapRef @@ -445,7 +438,6 @@ declare module 'vue' { readonly useMutationObserver: UnwrapRef readonly useNavigatorLanguage: UnwrapRef readonly useNetwork: UnwrapRef - readonly useNotification: UnwrapRef readonly useNow: UnwrapRef readonly useObjectUrl: UnwrapRef readonly useOffsetPagination: UnwrapRef diff --git a/components.d.ts b/components.d.ts index 8c75790d..6f36745f 100644 --- a/components.d.ts +++ b/components.d.ts @@ -16,53 +16,19 @@ declare module '@vue/runtime-core' { InputCopyable: typeof import('./src/components/InputCopyable.vue')['default'] MenuIconItem: typeof import('./src/components/MenuIconItem.vue')['default'] MenuLayout: typeof import('./src/components/MenuLayout.vue')['default'] - NAlert: typeof import('naive-ui')['NAlert'] - NAutoComplete: typeof import('naive-ui')['NAutoComplete'] NavbarButtons: typeof import('./src/components/NavbarButtons.vue')['default'] NButton: typeof import('naive-ui')['NButton'] NCard: typeof import('naive-ui')['NCard'] - NCheckbox: typeof import('naive-ui')['NCheckbox'] - NCode: typeof import('naive-ui')['NCode'] - NCollapseTransition: typeof import('naive-ui')['NCollapseTransition'] - NColorPicker: typeof import('naive-ui')['NColorPicker'] - NConfigProvider: typeof import('naive-ui')['NConfigProvider'] - NDatePicker: typeof import('naive-ui')['NDatePicker'] - NDivider: typeof import('naive-ui')['NDivider'] - NDynamicInput: typeof import('naive-ui')['NDynamicInput'] NEllipsis: typeof import('naive-ui')['NEllipsis'] - NForm: typeof import('naive-ui')['NForm'] - NFormItem: typeof import('naive-ui')['NFormItem'] NGi: typeof import('naive-ui')['NGi'] NGrid: typeof import('naive-ui')['NGrid'] NH1: typeof import('naive-ui')['NH1'] - NH2: typeof import('naive-ui')['NH2'] NH3: typeof import('naive-ui')['NH3'] - NH4: typeof import('naive-ui')['NH4'] NIcon: typeof import('naive-ui')['NIcon'] - NImage: typeof import('naive-ui')['NImage'] - NInput: typeof import('naive-ui')['NInput'] - NInputGroup: typeof import('naive-ui')['NInputGroup'] - NInputGroupLabel: typeof import('naive-ui')['NInputGroupLabel'] - NInputNumber: typeof import('naive-ui')['NInputNumber'] - NLayout: typeof import('naive-ui')['NLayout'] - NLayoutSider: typeof import('naive-ui')['NLayoutSider'] - NMenu: typeof import('naive-ui')['NMenu'] - NP: typeof import('naive-ui')['NP'] - NPageHeader: typeof import('naive-ui')['NPageHeader'] - NProgress: typeof import('naive-ui')['NProgress'] - NResult: typeof import('naive-ui')['NResult'] - NScrollbar: typeof import('naive-ui')['NScrollbar'] - NSelect: typeof import('naive-ui')['NSelect'] - NSlider: typeof import('naive-ui')['NSlider'] NSpace: typeof import('naive-ui')['NSpace'] - NStatistic: typeof import('naive-ui')['NStatistic'] - NSwitch: typeof import('naive-ui')['NSwitch'] - NTable: typeof import('naive-ui')['NTable'] NTag: typeof import('naive-ui')['NTag'] NText: typeof import('naive-ui')['NText'] NTooltip: typeof import('naive-ui')['NTooltip'] - NUpload: typeof import('naive-ui')['NUpload'] - NUploadDragger: typeof import('naive-ui')['NUploadDragger'] RouterLink: typeof import('vue-router')['RouterLink'] RouterView: typeof import('vue-router')['RouterView'] SearchBar: typeof import('./src/components/SearchBar.vue')['default'] diff --git a/package.json b/package.json index 068eb504..46902fe7 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ }, "scripts": { "dev": "vite", - "build": "vue-tsc --noEmit && vite build", + "build": "vue-tsc --noEmit && vite-ssg build", "preview": "vite preview --port 5050", "test": "npm run test:unit", "test:unit": "vitest --environment jsdom", @@ -43,7 +43,6 @@ "@vicons/material": "^0.12.0", "@vicons/tabler": "^0.12.0", "@vueuse/core": "^8.9.4", - "@vueuse/head": "^0.7.13", "@vueuse/router": "^9.13.0", "bcryptjs": "^2.4.3", "change-case": "^4.1.2", @@ -74,7 +73,6 @@ "ua-parser-js": "^1.0.35", "uuid": "^8.3.2", "vue": "^3.2.47", - "vue-router": "^4.1.6", "yaml": "^2.2.1" }, "devDependencies": { @@ -101,6 +99,7 @@ "@vue/eslint-config-typescript": "^10.0.0", "@vue/test-utils": "^2.3.2", "@vue/tsconfig": "^0.1.3", + "@vueuse/head": "^1.1.23", "c8": "^7.13.0", "consola": "^3.0.2", "eslint": "^8.38.0", @@ -112,15 +111,17 @@ "less": "^4.1.3", "prettier": "^2.8.7", "start-server-and-test": "^1.15.4", - "typescript": "~4.5.5", + "typescript": "~4.9.5", "unocss": "^0.50.8", "unplugin-auto-import": "^0.15.3", "unplugin-vue-components": "^0.24.1", "vite": "^4.2.1", "vite-plugin-md": "^0.21.5", "vite-plugin-pwa": "^0.14.7", + "vite-ssg": "^0.22.2", "vite-svg-loader": "^3.6.0", "vitest": "^0.30.1", + "vue-router": "^4.1.6", "vue-tsc": "^1.2.0", "workbox-window": "^6.5.4", "zx": "^7.2.1" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a85c6257..f4ff3861 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -28,9 +28,6 @@ dependencies: '@vueuse/core': specifier: ^8.9.4 version: 8.9.4(vue@3.2.47) - '@vueuse/head': - specifier: ^0.7.13 - version: 0.7.13(vue@3.2.47) '@vueuse/router': specifier: ^9.13.0 version: 9.13.0(vue-router@4.1.6)(vue@3.2.47) @@ -96,7 +93,7 @@ dependencies: version: 12.0.52 pinia: specifier: ^2.0.34 - version: 2.0.34(typescript@4.5.5)(vue@3.2.47) + version: 2.0.34(typescript@4.9.5)(vue@3.2.47) plausible-tracker: specifier: ^0.3.8 version: 0.3.8 @@ -121,9 +118,6 @@ dependencies: vue: specifier: ^3.2.47 version: 3.2.47 - vue-router: - specifier: ^4.1.6 - version: 4.1.6(vue@3.2.47) yaml: specifier: ^2.2.1 version: 2.2.1 @@ -176,10 +170,10 @@ devDependencies: version: 8.3.4 '@typescript-eslint/parser': specifier: ^5.58.0 - version: 5.58.0(eslint@8.38.0)(typescript@4.5.5) + version: 5.58.0(eslint@8.38.0)(typescript@4.9.5) '@unocss/eslint-config': specifier: ^0.50.8 - version: 0.50.8(eslint@8.38.0)(typescript@4.5.5) + version: 0.50.8(eslint@8.38.0)(typescript@4.9.5) '@vitejs/plugin-vue': specifier: ^4.1.0 version: 4.1.0(vite@4.2.1)(vue@3.2.47) @@ -191,13 +185,16 @@ devDependencies: version: 7.1.0(eslint@8.38.0)(prettier@2.8.7) '@vue/eslint-config-typescript': specifier: ^10.0.0 - version: 10.0.0(eslint-plugin-vue@8.7.1)(eslint@8.38.0)(typescript@4.5.5) + version: 10.0.0(eslint-plugin-vue@8.7.1)(eslint@8.38.0)(typescript@4.9.5) '@vue/test-utils': specifier: ^2.3.2 version: 2.3.2(vue@3.2.47) '@vue/tsconfig': specifier: ^0.1.3 version: 0.1.3(@types/node@16.18.23) + '@vueuse/head': + specifier: ^1.1.23 + version: 1.1.23(vue@3.2.47) c8: specifier: ^7.13.0 version: 7.13.0 @@ -232,8 +229,8 @@ devDependencies: specifier: ^1.15.4 version: 1.15.4 typescript: - specifier: ~4.5.5 - version: 4.5.5 + specifier: ~4.9.5 + version: 4.9.5 unocss: specifier: ^0.50.8 version: 0.50.8(postcss@8.4.21)(rollup@2.79.1)(vite@4.2.1) @@ -252,15 +249,21 @@ devDependencies: vite-plugin-pwa: specifier: ^0.14.7 version: 0.14.7(vite@4.2.1)(workbox-build@6.5.4)(workbox-window@6.5.4) + vite-ssg: + specifier: ^0.22.2 + version: 0.22.2(@vueuse/head@1.1.23)(vite@4.2.1)(vue-router@4.1.6)(vue@3.2.47) vite-svg-loader: specifier: ^3.6.0 version: 3.6.0 vitest: specifier: ^0.30.1 version: 0.30.1(jsdom@19.0.0)(less@4.1.3) + vue-router: + specifier: ^4.1.6 + version: 4.1.6(vue@3.2.47) vue-tsc: specifier: ^1.2.0 - version: 1.2.0(typescript@4.5.5) + version: 1.2.0(typescript@4.9.5) workbox-window: specifier: ^6.5.4 version: 6.5.4 @@ -2550,7 +2553,7 @@ packages: resolution: {integrity: sha512-113D3mDkZDjo+EeUEHCFy0qniNc1ZpecGiAU7WSo7YDoSzolZIQKpYFHrPpjkB2nuyahcKfrmLXeQlh7gqJYdw==} dev: true - /@typescript-eslint/eslint-plugin@5.58.0(@typescript-eslint/parser@5.58.0)(eslint@8.38.0)(typescript@4.5.5): + /@typescript-eslint/eslint-plugin@5.58.0(@typescript-eslint/parser@5.58.0)(eslint@8.38.0)(typescript@4.9.5): resolution: {integrity: sha512-vxHvLhH0qgBd3/tW6/VccptSfc8FxPQIkmNTVLWcCOVqSBvqpnKkBTYrhcGlXfSnd78azwe+PsjYFj0X34/njA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -2562,23 +2565,23 @@ packages: optional: true dependencies: '@eslint-community/regexpp': 4.5.0 - '@typescript-eslint/parser': 5.58.0(eslint@8.38.0)(typescript@4.5.5) + '@typescript-eslint/parser': 5.58.0(eslint@8.38.0)(typescript@4.9.5) '@typescript-eslint/scope-manager': 5.58.0 - '@typescript-eslint/type-utils': 5.58.0(eslint@8.38.0)(typescript@4.5.5) - '@typescript-eslint/utils': 5.58.0(eslint@8.38.0)(typescript@4.5.5) + '@typescript-eslint/type-utils': 5.58.0(eslint@8.38.0)(typescript@4.9.5) + '@typescript-eslint/utils': 5.58.0(eslint@8.38.0)(typescript@4.9.5) debug: 4.3.4 eslint: 8.38.0 grapheme-splitter: 1.0.4 ignore: 5.2.4 natural-compare-lite: 1.4.0 semver: 7.4.0 - tsutils: 3.21.0(typescript@4.5.5) - typescript: 4.5.5 + tsutils: 3.21.0(typescript@4.9.5) + typescript: 4.9.5 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/parser@5.58.0(eslint@8.38.0)(typescript@4.5.5): + /@typescript-eslint/parser@5.58.0(eslint@8.38.0)(typescript@4.9.5): resolution: {integrity: sha512-ixaM3gRtlfrKzP8N6lRhBbjTow1t6ztfBvQNGuRM8qH1bjFFXIJ35XY+FC0RRBKn3C6cT+7VW1y8tNm7DwPHDQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -2590,10 +2593,10 @@ packages: dependencies: '@typescript-eslint/scope-manager': 5.58.0 '@typescript-eslint/types': 5.58.0 - '@typescript-eslint/typescript-estree': 5.58.0(typescript@4.5.5) + '@typescript-eslint/typescript-estree': 5.58.0(typescript@4.9.5) debug: 4.3.4 eslint: 8.38.0 - typescript: 4.5.5 + typescript: 4.9.5 transitivePeerDependencies: - supports-color dev: true @@ -2606,7 +2609,7 @@ packages: '@typescript-eslint/visitor-keys': 5.58.0 dev: true - /@typescript-eslint/type-utils@5.58.0(eslint@8.38.0)(typescript@4.5.5): + /@typescript-eslint/type-utils@5.58.0(eslint@8.38.0)(typescript@4.9.5): resolution: {integrity: sha512-FF5vP/SKAFJ+LmR9PENql7fQVVgGDOS+dq3j+cKl9iW/9VuZC/8CFmzIP0DLKXfWKpRHawJiG70rVH+xZZbp8w==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -2616,12 +2619,12 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 5.58.0(typescript@4.5.5) - '@typescript-eslint/utils': 5.58.0(eslint@8.38.0)(typescript@4.5.5) + '@typescript-eslint/typescript-estree': 5.58.0(typescript@4.9.5) + '@typescript-eslint/utils': 5.58.0(eslint@8.38.0)(typescript@4.9.5) debug: 4.3.4 eslint: 8.38.0 - tsutils: 3.21.0(typescript@4.5.5) - typescript: 4.5.5 + tsutils: 3.21.0(typescript@4.9.5) + typescript: 4.9.5 transitivePeerDependencies: - supports-color dev: true @@ -2631,7 +2634,7 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/typescript-estree@5.58.0(typescript@4.5.5): + /@typescript-eslint/typescript-estree@5.58.0(typescript@4.9.5): resolution: {integrity: sha512-cRACvGTodA+UxnYM2uwA2KCwRL7VAzo45syNysqlMyNyjw0Z35Icc9ihPJZjIYuA5bXJYiJ2YGUB59BqlOZT1Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -2646,13 +2649,13 @@ packages: globby: 11.1.0 is-glob: 4.0.3 semver: 7.4.0 - tsutils: 3.21.0(typescript@4.5.5) - typescript: 4.5.5 + tsutils: 3.21.0(typescript@4.9.5) + typescript: 4.9.5 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/utils@5.58.0(eslint@8.38.0)(typescript@4.5.5): + /@typescript-eslint/utils@5.58.0(eslint@8.38.0)(typescript@4.9.5): resolution: {integrity: sha512-gAmLOTFXMXOC+zP1fsqm3VceKSBQJNzV385Ok3+yzlavNHZoedajjS4UyS21gabJYcobuigQPs/z71A9MdJFqQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -2663,7 +2666,7 @@ packages: '@types/semver': 7.3.13 '@typescript-eslint/scope-manager': 5.58.0 '@typescript-eslint/types': 5.58.0 - '@typescript-eslint/typescript-estree': 5.58.0(typescript@4.5.5) + '@typescript-eslint/typescript-estree': 5.58.0(typescript@4.9.5) eslint: 8.38.0 eslint-scope: 5.1.1 semver: 7.4.0 @@ -2680,6 +2683,45 @@ packages: eslint-visitor-keys: 3.4.0 dev: true + /@unhead/dom@1.1.25: + resolution: {integrity: sha512-kJ5jhJFNQCyNENSw+mtmzgulA0kqUuXS3SRPl1umpofc8PH8tblSzXwqStxTj9r6E4wxJbEuygT/aHFJVioizw==} + dependencies: + '@unhead/schema': 1.1.25 + '@unhead/shared': 1.1.25 + dev: true + + /@unhead/schema@1.1.25: + resolution: {integrity: sha512-ygmaxWgGTAq9CcB6zGY4+0HlGdQt/oMq+CM18tTnvOBY0Og/uPGt7roW8eH717GpTPibKRTpagSYzZYdL0tWeg==} + dependencies: + hookable: 5.5.3 + zhead: 2.0.4 + dev: true + + /@unhead/shared@1.1.25: + resolution: {integrity: sha512-KptKbk4py1MFYHYwDJ/0kPOs+95dYMrWIT1fCV9lGcVAwu20wIHh+WX18s+iEWhc66xkGRxgC/xsl4wJJFPE+w==} + dependencies: + '@unhead/schema': 1.1.25 + dev: true + + /@unhead/ssr@1.1.25: + resolution: {integrity: sha512-2S3tiajy6n3D1WY2pVkRLr74WGaHD08w0+nFaQGNy0LszPlkWUuAmYYqDCXdh03ijEl+Tjwqjn+E9w1e3QakuQ==} + dependencies: + '@unhead/schema': 1.1.25 + '@unhead/shared': 1.1.25 + dev: true + + /@unhead/vue@1.1.25(vue@3.2.47): + resolution: {integrity: sha512-ujincFHftg2N2i3G/gVkMyJ7CFzVyZ8SMb5cJCWZEnDBQGjgy3uvWT6EaM0d2jnaeXiYbB+iyY0O1o/H+XlpKQ==} + peerDependencies: + vue: '>=2.7 || >=3' + dependencies: + '@unhead/schema': 1.1.25 + '@unhead/shared': 1.1.25 + hookable: 5.5.3 + unhead: 1.1.25 + vue: 3.2.47 + dev: true + /@unocss/astro@0.50.8(rollup@2.79.1)(vite@4.2.1): resolution: {integrity: sha512-kphNlr0PWGzvkCgKx7RaZWQ45khieCCt9OffUnxbRRft+jodsVXIwzHn+bOhGtIKpEpZiOzxRzTYjfW/R6XnTw==} dependencies: @@ -2725,22 +2767,22 @@ packages: resolution: {integrity: sha512-rWmyeNE0Na8dJPDynLVar0X22qMHFNhO+/F2FZDpG4tubTavXJJo9uvhZr/D381kiWxt+XZ38y6EAD4UMdBqMA==} dev: true - /@unocss/eslint-config@0.50.8(eslint@8.38.0)(typescript@4.5.5): + /@unocss/eslint-config@0.50.8(eslint@8.38.0)(typescript@4.9.5): resolution: {integrity: sha512-dZyXT/LaIioHH1zpHXMo+LyvDNVJq2ZuqhB5x8O70qlhz9jqExiIkTRZyYu68r8SEgZFqjcEBsExTdeuO0Cs3g==} engines: {node: '>=14'} dependencies: - '@unocss/eslint-plugin': 0.50.8(eslint@8.38.0)(typescript@4.5.5) + '@unocss/eslint-plugin': 0.50.8(eslint@8.38.0)(typescript@4.9.5) transitivePeerDependencies: - eslint - supports-color - typescript dev: true - /@unocss/eslint-plugin@0.50.8(eslint@8.38.0)(typescript@4.5.5): + /@unocss/eslint-plugin@0.50.8(eslint@8.38.0)(typescript@4.9.5): resolution: {integrity: sha512-ks8qyPlGHAec96QA6WjTXkpUHs+sgwE5OA7To4MbKrpnKZXdkA7OvNKykkYi/pogV7GKlfQvbKUqELeTig53gQ==} engines: {node: '>=14'} dependencies: - '@typescript-eslint/utils': 5.58.0(eslint@8.38.0)(typescript@4.5.5) + '@typescript-eslint/utils': 5.58.0(eslint@8.38.0)(typescript@4.9.5) '@unocss/config': 0.50.8 '@unocss/core': 0.50.8 magic-string: 0.30.0 @@ -3056,7 +3098,6 @@ packages: /@vue/devtools-api@6.5.0: resolution: {integrity: sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q==} - dev: false /@vue/eslint-config-prettier@7.1.0(eslint@8.38.0)(prettier@2.8.7): resolution: {integrity: sha512-Pv/lVr0bAzSIHLd9iz0KnvAr4GKyCEl+h52bc4e5yWuDVtLgFwycF7nrbWTAQAS+FU6q1geVd07lc6EWfJiWKQ==} @@ -3070,7 +3111,7 @@ packages: prettier: 2.8.7 dev: true - /@vue/eslint-config-typescript@10.0.0(eslint-plugin-vue@8.7.1)(eslint@8.38.0)(typescript@4.5.5): + /@vue/eslint-config-typescript@10.0.0(eslint-plugin-vue@8.7.1)(eslint@8.38.0)(typescript@4.9.5): resolution: {integrity: sha512-F94cL8ug3FaYXlCfU5/wiGjk1qeadmoBpRGAOBq+qre3Smdupa59dd6ZJrsfRODpsMPyTG7330juMDsUvpZ3Rw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -3081,11 +3122,11 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/eslint-plugin': 5.58.0(@typescript-eslint/parser@5.58.0)(eslint@8.38.0)(typescript@4.5.5) - '@typescript-eslint/parser': 5.58.0(eslint@8.38.0)(typescript@4.5.5) + '@typescript-eslint/eslint-plugin': 5.58.0(@typescript-eslint/parser@5.58.0)(eslint@8.38.0)(typescript@4.9.5) + '@typescript-eslint/parser': 5.58.0(eslint@8.38.0)(typescript@4.9.5) eslint: 8.38.0 eslint-plugin-vue: 8.7.1(eslint@8.38.0) - typescript: 4.5.5 + typescript: 4.9.5 vue-eslint-parser: 8.3.0(eslint@8.38.0) transitivePeerDependencies: - supports-color @@ -3170,16 +3211,17 @@ packages: vue: 3.2.47 vue-demi: 0.14.0(vue@3.2.47) - /@vueuse/head@0.7.13(vue@3.2.47): - resolution: {integrity: sha512-VHSla/0uOAUii/mz+NWLFKMrMbz/lQoYxEcpS/ri7drepYjdB5QdbTnD2KdOX8EmQM/b07qpjKanr7erGrd3XA==} + /@vueuse/head@1.1.23(vue@3.2.47): + resolution: {integrity: sha512-bJiiQXrICvCI740jR2CLK+FhXyvMx2dIfyeF3FdOsYJn6OtexdBI2wchyuKNYmiAQ8cibAHxmDUytAFqIdIRJg==} peerDependencies: vue: '>=2.7 || >=3' dependencies: - '@zhead/schema-vue': 0.7.4(vue@3.2.47) + '@unhead/dom': 1.1.25 + '@unhead/schema': 1.1.25 + '@unhead/ssr': 1.1.25 + '@unhead/vue': 1.1.25(vue@3.2.47) vue: 3.2.47 - transitivePeerDependencies: - - '@vue/composition-api' - dev: false + dev: true /@vueuse/metadata@8.9.4: resolution: {integrity: sha512-IwSfzH80bnJMzqhaapqJl9JRIiyQU0zsRGEgnxN6jhq7992cPUJIRfV+JHRIZXjYqbwt07E1gTEp0R0zPJ1aqw==} @@ -3290,22 +3332,6 @@ packages: - terser dev: true - /@zhead/schema-vue@0.7.4(vue@3.2.47): - resolution: {integrity: sha512-Q7wPUly3ZWbPYQ5SEJBUuD6Mw3wiUfPMPquGfqsR2KF6sxQKRF8oaHnRLuu2uxpjuXjkzpBlZBPu1JgQX+Lf6Q==} - peerDependencies: - vue: '>=2.7 || >=3' - dependencies: - '@vueuse/shared': 9.13.0(vue@3.2.47) - '@zhead/schema': 0.7.4 - vue: 3.2.47 - transitivePeerDependencies: - - '@vue/composition-api' - dev: false - - /@zhead/schema@0.7.4: - resolution: {integrity: sha512-18gfgmZL8gM64JdcT11d1rYLnCaY2mOtbDDSAXtCySanPGpkA1r+w01LCssEI/OfLdoZPS/kYCIW09d1PmUFfQ==} - dev: false - /abab@2.0.6: resolution: {integrity: sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==} dev: true @@ -3321,6 +3347,13 @@ packages: acorn-walk: 7.2.0 dev: true + /acorn-globals@7.0.1: + resolution: {integrity: sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==} + dependencies: + acorn: 8.8.2 + acorn-walk: 8.2.0 + dev: true + /acorn-jsx@5.3.2(acorn@8.8.2): resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: @@ -3692,6 +3725,13 @@ packages: engines: {node: '>=12.20'} dev: true + /camel-case@3.0.0: + resolution: {integrity: sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==} + dependencies: + no-case: 2.3.2 + upper-case: 1.1.3 + dev: true + /camel-case@4.1.2: resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==} dependencies: @@ -3806,6 +3846,13 @@ packages: fsevents: 2.3.2 dev: true + /clean-css@4.2.4: + resolution: {integrity: sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==} + engines: {node: '>= 4.0'} + dependencies: + source-map: 0.6.1 + dev: true + /cliui@6.0.0: resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==} dependencies: @@ -3822,6 +3869,15 @@ packages: wrap-ansi: 7.0.0 dev: true + /cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + dev: true + /color-convert@1.9.3: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} dependencies: @@ -4055,6 +4111,13 @@ packages: cssom: 0.3.8 dev: true + /cssstyle@3.0.0: + resolution: {integrity: sha512-N4u2ABATi3Qplzf0hWbVCdjenim8F3ojEXpBDF5hBpjzW182MjNGLqfmQ0SkSPeQ+V86ZXgeH8aXj6kayd4jgg==} + engines: {node: '>=14'} + dependencies: + rrweb-cssom: 0.6.0 + dev: true + /csstype@2.6.21: resolution: {integrity: sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==} @@ -4084,6 +4147,15 @@ packages: whatwg-url: 11.0.0 dev: true + /data-urls@4.0.0: + resolution: {integrity: sha512-/mMTei/JXPqvFqQtfyTowxmJVwr2PVAeCcDxyFf6LhoOu/09TX2OX3kb2wzi4DMXcfj4OItwDOnhl5oziPnT6g==} + engines: {node: '>=14'} + dependencies: + abab: 2.0.6 + whatwg-mimetype: 3.0.0 + whatwg-url: 12.0.1 + dev: true + /date-fns-tz@1.3.8(date-fns@2.29.3): resolution: {integrity: sha512-qwNXUFtMHTTU6CFSFjoJ80W8Fzzp24LntbjFFBgL/faqds4e5mo9mftoRLgr3Vi1trISsg4awSpYVsOQCRnapQ==} peerDependencies: @@ -4304,6 +4376,11 @@ packages: resolution: {integrity: sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==} engines: {node: '>=0.12'} + /entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + engines: {node: '>=0.12'} + dev: true + /errno@0.1.8: resolution: {integrity: sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==} hasBin: true @@ -4506,7 +4583,7 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 5.58.0(eslint@8.38.0)(typescript@4.5.5) + '@typescript-eslint/parser': 5.58.0(eslint@8.38.0)(typescript@4.9.5) debug: 3.2.7 eslint: 8.38.0 eslint-import-resolver-node: 0.3.7 @@ -4525,7 +4602,7 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 5.58.0(eslint@8.38.0)(typescript@4.5.5) + '@typescript-eslint/parser': 5.58.0(eslint@8.38.0)(typescript@4.9.5) array-includes: 3.1.6 array.prototype.flat: 1.3.1 array.prototype.flatmap: 1.3.1 @@ -5201,6 +5278,10 @@ packages: engines: {node: '>=12.0.0'} dev: false + /hookable@5.5.3: + resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==} + dev: true + /html-encoding-sniffer@3.0.0: resolution: {integrity: sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==} engines: {node: '>=12'} @@ -5212,11 +5293,31 @@ packages: resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} dev: true + /html-minifier@4.0.0: + resolution: {integrity: sha512-aoGxanpFPLg7MkIl/DDFYtb0iWz7jMFGqFhvEDZga6/4QTjneiD8I/NXL1x5aaoCp7FSIT6h/OhykDdPsbtMig==} + engines: {node: '>=6'} + hasBin: true + dependencies: + camel-case: 3.0.0 + clean-css: 4.2.4 + commander: 2.20.3 + he: 1.2.0 + param-case: 2.1.1 + relateurl: 0.2.7 + uglify-js: 3.17.4 + dev: true + /html-tags@3.3.1: resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==} engines: {node: '>=8'} dev: true + /html5parser@2.0.2: + resolution: {integrity: sha512-L0y+IdTVxHsovmye8MBtFgBvWZnq1C9WnI/SmJszxoQjmUH1psX2uzDk21O5k5et6udxdGjwxkbmT9eVRoG05w==} + dependencies: + tslib: 2.5.0 + dev: true + /http-proxy-agent@4.0.1: resolution: {integrity: sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==} engines: {node: '>= 6'} @@ -5697,6 +5798,47 @@ packages: - utf-8-validate dev: true + /jsdom@21.1.1: + resolution: {integrity: sha512-Jjgdmw48RKcdAIQyUD1UdBh2ecH7VqwaXPN3ehoZN6MqgVbMn+lRm1aAT1AsdJRAJpwfa4IpwgzySn61h2qu3w==} + engines: {node: '>=14'} + peerDependencies: + canvas: ^2.5.0 + peerDependenciesMeta: + canvas: + optional: true + dependencies: + abab: 2.0.6 + acorn: 8.8.2 + acorn-globals: 7.0.1 + cssstyle: 3.0.0 + data-urls: 4.0.0 + decimal.js: 10.4.3 + domexception: 4.0.0 + escodegen: 2.0.0 + form-data: 4.0.0 + html-encoding-sniffer: 3.0.0 + http-proxy-agent: 5.0.0 + https-proxy-agent: 5.0.1 + is-potential-custom-element-name: 1.0.1 + nwsapi: 2.2.4 + parse5: 7.1.2 + rrweb-cssom: 0.6.0 + saxes: 6.0.0 + symbol-tree: 3.2.4 + tough-cookie: 4.1.2 + w3c-xmlserializer: 4.0.0 + webidl-conversions: 7.0.0 + whatwg-encoding: 2.0.0 + whatwg-mimetype: 3.0.0 + whatwg-url: 12.0.1 + ws: 8.13.0 + xml-name-validator: 4.0.0 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + dev: true + /jsesc@0.5.0: resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} hasBin: true @@ -5881,6 +6023,10 @@ packages: get-func-name: 2.0.0 dev: true + /lower-case@1.1.4: + resolution: {integrity: sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==} + dev: true + /lower-case@2.0.2: resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} dependencies: @@ -6172,6 +6318,12 @@ packages: engines: {node: '>= 0.4.0'} dev: false + /no-case@2.3.2: + resolution: {integrity: sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==} + dependencies: + lower-case: 1.1.4 + dev: true + /no-case@3.0.4: resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} dependencies: @@ -6403,6 +6555,12 @@ packages: engines: {node: '>=6'} dev: false + /param-case@2.1.1: + resolution: {integrity: sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==} + dependencies: + no-case: 2.3.2 + dev: true + /param-case@3.0.4: resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==} dependencies: @@ -6426,6 +6584,12 @@ packages: resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} dev: true + /parse5@7.1.2: + resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} + dependencies: + entities: 4.5.0 + dev: true + /pascal-case@3.1.2: resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} dependencies: @@ -6494,7 +6658,7 @@ packages: dev: true optional: true - /pinia@2.0.34(typescript@4.5.5)(vue@3.2.47): + /pinia@2.0.34(typescript@4.9.5)(vue@3.2.47): resolution: {integrity: sha512-cgOoGUiyqX0SSgX8XelK9+Ri4XA2/YyNtgjogwfzIx1g7iZTaZPxm7/bZYMCLU2qHRiHhxG7SuQO0eBacFNc2Q==} peerDependencies: '@vue/composition-api': ^1.4.0 @@ -6507,7 +6671,7 @@ packages: optional: true dependencies: '@vue/devtools-api': 6.5.0 - typescript: 4.5.5 + typescript: 4.9.5 vue: 3.2.47 vue-demi: 0.14.0(vue@3.2.47) dev: false @@ -6867,6 +7031,11 @@ packages: jsesc: 0.5.0 dev: true + /relateurl@0.2.7: + resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==} + engines: {node: '>= 0.10'} + dev: true + /require-directory@2.1.1: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} @@ -6943,6 +7112,10 @@ packages: resolution: {integrity: sha512-85aZYCxweiD5J8yTEbw+E6A27zSnLPNDL0WfPdw3YYodq7WjnTKo0q4dtyQ2gz23iPT8Q9CUyJtAaUNcTxRf5Q==} dev: false + /rrweb-cssom@0.6.0: + resolution: {integrity: sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==} + dev: true + /run-parallel@1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} dependencies: @@ -6982,6 +7155,13 @@ packages: xmlchars: 2.2.0 dev: true + /saxes@6.0.0: + resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} + engines: {node: '>=v12.22.7'} + dependencies: + xmlchars: 2.2.0 + dev: true + /scule@1.0.0: resolution: {integrity: sha512-4AsO/FrViE/iDNEPaAQlb77tf0csuq27EsVpy6ett584EcRTp6pTDLoGWVxCD77y5iU5FauOvhsI4o1APwPoSQ==} dev: true @@ -7477,6 +7657,13 @@ packages: punycode: 2.3.0 dev: true + /tr46@4.1.1: + resolution: {integrity: sha512-2lv/66T7e5yNyhAAC4NaKe5nVavzuGJQVVtRYLyQ2OI8tsJ61PMLlelehb0wi2Hx6+hT/OJUWZcw8MjlSRnxvw==} + engines: {node: '>=14'} + dependencies: + punycode: 2.3.0 + dev: true + /treemate@0.3.11: resolution: {integrity: sha512-M8RGFoKtZ8dF+iwJfAJTOH/SM4KluKOKRJpjCMhI8bG3qB74zrFoArKZ62ll0Fr3mqkMJiQOmWYkdYgDeITYQg==} dev: false @@ -7501,14 +7688,14 @@ packages: /tslib@2.5.0: resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} - /tsutils@3.21.0(typescript@4.5.5): + /tsutils@3.21.0(typescript@4.9.5): resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' dependencies: tslib: 1.14.1 - typescript: 4.5.5 + typescript: 4.9.5 dev: true /type-check@0.3.2: @@ -7558,8 +7745,8 @@ packages: engines: {node: '>= 10'} dev: false - /typescript@4.5.5: - resolution: {integrity: sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA==} + /typescript@4.9.5: + resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} engines: {node: '>=4.2.0'} hasBin: true @@ -7574,6 +7761,12 @@ packages: resolution: {integrity: sha512-MvlCc4GHrmZdAllBc0iUDowff36Q9Ndw/UzqmEKyrfSzokTd9ZCy1i+IIk5hrYKkjoYVQyNbrw7/F8XJ2rEwTg==} dev: true + /uglify-js@3.17.4: + resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==} + engines: {node: '>=0.8.0'} + hasBin: true + dev: true + /unbox-primitive@1.0.2: resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} dependencies: @@ -7595,6 +7788,15 @@ packages: resolution: {integrity: sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==} dev: false + /unhead@1.1.25: + resolution: {integrity: sha512-KtTBgtQjxICoOjA4dyxJfj5fYoYJeYFUt/J8ulaTzbvTsXM9K+ztYjI65nf2CPYYXRCRz/iEt8trqcsGlsB5TQ==} + dependencies: + '@unhead/dom': 1.1.25 + '@unhead/schema': 1.1.25 + '@unhead/shared': 1.1.25 + hookable: 5.5.3 + dev: true + /unicode-canonical-property-names-ecmascript@2.0.0: resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} engines: {node: '>=4'} @@ -7772,6 +7974,10 @@ packages: tslib: 2.5.0 dev: false + /upper-case@1.1.3: + resolution: {integrity: sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==} + dev: true + /upper-case@2.0.2: resolution: {integrity: sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg==} dependencies: @@ -7913,6 +8119,41 @@ packages: - supports-color dev: true + /vite-ssg@0.22.2(@vueuse/head@1.1.23)(vite@4.2.1)(vue-router@4.1.6)(vue@3.2.47): + resolution: {integrity: sha512-eSlp/WiT7dkpZ6TIkZuALUcOnCJlVfqj38OdpFVZHtHFcwCH9b95edu5Hgti5WnGrq33iVfGOK67zWpt9ClroA==} + engines: {node: '>=14.0.0'} + hasBin: true + peerDependencies: + '@vueuse/head': ^1.0.0 + critters: ^0.0.16 + vite: ^2.0.0 || ^3.0.0 || ^4.0.0 + vue: ^3.2.10 + vue-router: ^4.0.1 + peerDependenciesMeta: + critters: + optional: true + vue-router: + optional: true + dependencies: + '@unhead/dom': 1.1.25 + '@vueuse/head': 1.1.23(vue@3.2.47) + fs-extra: 11.1.1 + html-minifier: 4.0.0 + html5parser: 2.0.2 + jsdom: 21.1.1 + kolorist: 1.7.0 + prettier: 2.8.7 + vite: 4.2.1(@types/node@16.18.23)(less@4.1.3) + vue: 3.2.47 + vue-router: 4.1.6(vue@3.2.47) + yargs: 17.7.1 + transitivePeerDependencies: + - bufferutil + - canvas + - supports-color + - utf-8-validate + dev: true + /vite-svg-loader@3.6.0: resolution: {integrity: sha512-bZJffcgCREW57kNkgMhuNqeDznWXyQwJ3wKrRhHLMMzwDnP5jr3vXW3cqsmquRR7VTP5mLdKj1/zzPPooGUuPw==} dependencies: @@ -8117,7 +8358,6 @@ packages: dependencies: '@vue/devtools-api': 6.5.0 vue: 3.2.47 - dev: false /vue-template-compiler@2.7.14: resolution: {integrity: sha512-zyA5Y3ArvVG0NacJDkkzJuPQDF8RFeRlzV2vLeSnhSpieO6LK2OVbdLPi5MPPs09Ii+gMO8nY4S3iKQxBxDmWQ==} @@ -8126,7 +8366,7 @@ packages: he: 1.2.0 dev: true - /vue-tsc@1.2.0(typescript@4.5.5): + /vue-tsc@1.2.0(typescript@4.9.5): resolution: {integrity: sha512-rIlzqdrhyPYyLG9zxsVRa+JEseeS9s8F2BbVVVWRRsTZvJO2BbhLEb2HW3MY+DFma0378tnIqs+vfTzbcQtRFw==} hasBin: true peerDependencies: @@ -8134,7 +8374,7 @@ packages: dependencies: '@volar/vue-language-core': 1.2.0 '@volar/vue-typescript': 1.2.0 - typescript: 4.5.5 + typescript: 4.9.5 dev: true /vue@3.2.47: @@ -8179,6 +8419,13 @@ packages: xml-name-validator: 4.0.0 dev: true + /w3c-xmlserializer@4.0.0: + resolution: {integrity: sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==} + engines: {node: '>=14'} + dependencies: + xml-name-validator: 4.0.0 + dev: true + /wait-on@7.0.1(debug@4.3.4): resolution: {integrity: sha512-9AnJE9qTjRQOlTZIldAaf/da2eW0eSRSgcqq85mXQja/DW3MriHxkpODDSUEg+Gri/rKEcXUZHe+cevvYItaog==} engines: {node: '>=12.0.0'} @@ -8257,6 +8504,14 @@ packages: webidl-conversions: 7.0.0 dev: true + /whatwg-url@12.0.1: + resolution: {integrity: sha512-Ed/LrqB8EPlGxjS+TrsXcpUond1mhccS3pchLhzSgPCnTimUCKj3IZE75pAs5m6heB2U2TMerKFUXheyHY+VDQ==} + engines: {node: '>=14'} + dependencies: + tr46: 4.1.1 + webidl-conversions: 7.0.0 + dev: true + /whatwg-url@5.0.0: resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} dependencies: @@ -8562,6 +8817,11 @@ packages: engines: {node: '>=10'} dev: true + /yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + dev: true + /yargs@15.4.1: resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==} engines: {node: '>=8'} @@ -8592,6 +8852,19 @@ packages: yargs-parser: 20.2.9 dev: true + /yargs@17.7.1: + resolution: {integrity: sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==} + engines: {node: '>=12'} + dependencies: + cliui: 8.0.1 + escalade: 3.1.1 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 + dev: true + /yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} @@ -8602,6 +8875,10 @@ packages: engines: {node: '>=12.20'} dev: true + /zhead@2.0.4: + resolution: {integrity: sha512-V4R94t3ifk9AURym6OskbKcnowzgp5Z88tkoL/NF67vyryNxC62u6mx5F1Ux4oh4+YN7FFmKYEyWy6m5kfPH6g==} + dev: true + /zx@7.2.1: resolution: {integrity: sha512-TgKwppaMLMNAXHhlhbBh7rMoOSx3/9qqnkv8frmhVlSomEuWkDijh/BCmYntkoS7ZQyemApAUyEi24jIrrS+hA==} engines: {node: '>= 16.0.0'} diff --git a/src/App.vue b/src/App.vue index 98199afb..56bd7335 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,30 +1,30 @@