feat(devtools): add postList & open in editor

This commit is contained in:
YunYouJun 2024-02-13 03:30:32 +08:00
parent d2e4ca05a0
commit 719049b1c8
35 changed files with 370 additions and 254 deletions

View File

@ -39,6 +39,7 @@
"demo:yun": "pnpm -C demo/yun run dev",
"dev:lib": "pnpm -C packages/valaxy run dev",
"dev": "pnpm -r --filter=./packages/** --parallel run dev",
"devtools": "pnpm -C packages/devtools run dev",
"docs": "pnpm -C docs run dev",
"docs:dev": "pnpm -C docs run dev",
"docs:build": "pnpm -C docs run build",

View File

@ -0,0 +1,13 @@
# @valaxyjs/devtools
## Dev
```bash
# in packages/devtools
pnpm dev
```
```bash
# in root
pnpm devtools
```

View File

@ -22,6 +22,7 @@
"build:node": "unbuild",
"dev": "npm run stub && npm run dev:client",
"dev:client": "vite build src/client --watch",
"dev:src": "vite dev src/client",
"stub": "unbuild --stub",
"prepublishOnly": "npm run build",
"release": "bumpp && npm publish"
@ -32,8 +33,12 @@
"sirv": "^2.0.4"
},
"devDependencies": {
"@iconify-json/ri": "^1.1.19",
"@types/splitpanes": "^2.2.6",
"splitpanes": "^3.1.5",
"typescript": "^5.3.3",
"unbuild": "^2.0.0",
"unplugin-vue-router": "^0.7.0",
"vite": "^5.1.1"
}
}

View File

@ -1,20 +1,3 @@
<script setup lang="ts">
import { onMounted } from 'vue'
import { isStaticMode } from './utils'
onMounted(() => {
if (isStaticMode)
document.title = 'Vite Inspect (Production)'
})
</script>
<template>
<main grid="~ rows-[min-content_1fr]" size="h-screen w-screen" text="gray-700 dark:gray-200">
<Suspense>
<RouterView />
<template #fallback>
Loading...
</template>
</Suspense>
</main>
<RouterView />
</template>

View File

@ -0,0 +1,15 @@
<script lang="ts" setup>
defineProps<{
frontmatter?: object
}>()
</script>
<template>
<div>
<ul v-if="frontmatter">
<li v-for="(value, key) in frontmatter" :key="key">
<strong>{{ key }}</strong>: {{ value }}
</li>
</ul>
</div>
</template>

View File

@ -0,0 +1,51 @@
<script lang="ts" setup>
import { onMounted, ref } from 'vue'
import type { Router } from 'vue-router/auto'
import { getGlobalValaxyProperty, getWindowProperty, openInEditor } from '../utils'
import { frontmatter } from '../composables/app'
const activePath = ref('')
const __VUE_DEVTOOLS_ROUTER__ = getWindowProperty('__VUE_DEVTOOLS_ROUTER__') as Router
__VUE_DEVTOOLS_ROUTER__.beforeEach((to, _from, next) => {
activePath.value = to.path
frontmatter.value = getWindowProperty('$frontmatter')
next()
})
const postList = ref()
onMounted(() => {
postList.value = getGlobalValaxyProperty('postList').value
})
function onClickPost(post: any) {
__VUE_DEVTOOLS_ROUTER__.push(post.path)
}
function launchEditor() {
openInEditor({
file: getWindowProperty('$pageData').path,
})
}
</script>
<template>
<ul class="h-full" overflow="auto" pl="12" pr="4" py="4">
{{ activePath }}
<li v-for="post in postList" :key="post.path" class="list-decimal">
<div flex>
<span
class="inline-flex flex-grow cursor-pointer underline hover:text-blue-500"
:class="{ 'text-blue-500': activePath === post.path }"
@click="onClickPost(post)"
>
{{ post.title }}
</span>
<button class="ml-2 text-xs" @click="launchEditor()">
<div i-vscode-icons:file-type-vscode />
</button>
</div>
</li>
</ul>
</template>

View File

@ -0,0 +1,3 @@
import { ref } from 'vue'
export const frontmatter = ref<object>({})

View File

@ -9,7 +9,7 @@
</head>
<body data-vite-inspect-mode="DEV">
<div id="app"></div>
<div id="app" class="h-full"></div>
<script>
(function () {
const prefersDark = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches

View File

@ -1,16 +1,19 @@
// register vue composition api globally
import { createApp } from 'vue'
import { createRouter, createWebHashHistory } from 'vue-router'
import { routes } from 'vue-router/auto/routes'
import { createRouter, createWebHashHistory } from 'vue-router/auto'
import App from './App.vue'
import '@unocss/reset/tailwind.css'
import 'uno.css'
import './styles/index.css'
import 'splitpanes/dist/splitpanes.css'
const app = createApp(App)
const router = createRouter({
history: createWebHashHistory(),
routes,
})
app.use(router)
app.mount('#app')

View File

@ -0,0 +1,5 @@
<template>
<div>
About
</div>
</template>

View File

@ -0,0 +1,5 @@
<template>
<div>
Categories
</div>
</template>

View File

@ -1,5 +1,38 @@
<script lang="ts" setup>
import { Pane, Splitpanes } from 'splitpanes'
import { onMounted } from 'vue'
import { getWindowProperty, isStaticMode } from '../utils'
import type { BlogWindow } from '../types'
import { frontmatter } from '../composables/app'
onMounted(() => {
if (isStaticMode)
document.title = 'Valaxy DevTools (Production)'
const $frontmatter = getWindowProperty('$frontmatter') as BlogWindow['$frontmatter']
if ($frontmatter)
frontmatter.value = $frontmatter
})
</script>
<template>
<div>
Index
</div>
<main class="h-full" flex="~ col" text="gray-700 dark:gray-200">
<div class="w-full border-b shadow flex justify-end">
<a href="https://valaxy.site" target="_blank" class="bg-gray-100 inline-flex justify-center items-center w-8 h-8">
<div i-ri-book-line />
</a>
</div>
<div style="height: calc(100% - 32px)" overflow="auto">
<Splitpanes class="h-full">
<Pane>
<VDPostList />
</Pane>
<Pane>
<PageFrontmatter :frontmatter="frontmatter" />
</Pane>
</Splitpanes>
</div>
</main>
</template>

View File

@ -0,0 +1,5 @@
<template>
<div>
Tags
</div>
</template>

View File

@ -0,0 +1,4 @@
html,
body {
height: 100%;
}

View File

@ -39,6 +39,8 @@ import type {
declare module 'vue-router/auto/routes' {
export interface RouteNamedMap {
'/': RouteRecordInfo<'/', '/', Record<never, never>, Record<never, never>>,
'/about': RouteRecordInfo<'/about', '/about', Record<never, never>, Record<never, never>>,
}
}

View File

@ -0,0 +1,3 @@
export interface BlogWindow {
$frontmatter: any
}

View File

@ -0,0 +1,18 @@
// import from @vue/devtools-api not work
import { getAppWindow } from './get'
const target = getAppWindow()
export interface OpenInEditorOptions {
file?: string
line?: number
column?: number
}
export function openInEditor(options: OpenInEditorOptions = {}) {
const { file, line = 0, column = 0 } = options
if (file) {
const baseUrl = window.location.origin
target?.__VUE_INSPECTOR__.openInEditor(baseUrl, file, line, column)
}
}

View File

@ -0,0 +1,19 @@
export function getAppWindow() {
return window.parent.parent as unknown as {
__VUE_INSPECTOR__: {
openInEditor: (baseUrl: string, file: string, line: number, column: number) => void
}
}
}
/**
* window.parent.parent is the window object of the main app
*/
export function getWindowProperty(property: string) {
return (window.parent.parent as any)[property]
}
export function getGlobalValaxyProperty(property: string) {
const $valaxy = (window.parent.parent as any).$valaxy
return $valaxy[property]
}

View File

@ -1 +1,4 @@
export * from './api'
export * from './get'
export const isStaticMode = document.body.getAttribute('data-valaxy-devtools-mode') === 'BUILD'

View File

@ -1,9 +1,10 @@
import { join, resolve } from 'node:path'
import { defineConfig } from 'vite'
import Vue from '@vitejs/plugin-vue'
import Router from 'unplugin-vue-router/vite'
import Components from 'unplugin-vue-components/vite'
import VueRouter from 'unplugin-vue-router/vite'
import VueComponents from 'unplugin-vue-components/vite'
import Unocss from 'unocss/vite'
import { unoConfig } from '../../../../uno.config'
export default defineConfig({
base: './',
@ -48,22 +49,18 @@ export default defineConfig({
},
},
Vue({
script: {
defineModel: true,
},
}),
Router({
routesFolder: ['pages'],
VueRouter({
routesFolder: join(__dirname, 'pages'),
dts: join(__dirname, 'typed-routes.d.ts'),
}),
Components({
Vue({
include: [/\.vue$/, /\.md$/],
}),
VueComponents({
dirs: ['components'],
dts: join(__dirname, 'components.d.ts'),
}),
Unocss(),
Unocss(unoConfig),
],
optimizeDeps: {

View File

@ -1,3 +0,0 @@
import unoConfig from '../../uno.config'
export default unoConfig

View File

@ -3,3 +3,5 @@ components.d.ts
# unplugin-vue-router
typed-router.d.ts
.env.local

View File

@ -20,6 +20,7 @@ import '/@valaxyjs/styles'
import 'uno.css'
import setupMain from './setup/main'
import { initDevToolsClientLogic } from './utils/dev'
const valaxyConfig = initValaxyConfig()
@ -58,6 +59,9 @@ const routesWithLayout = setupLayouts(import.meta.env.DEV
: filterDraft(routes),
)
if (import.meta.env.DEV)
initDevToolsClientLogic()
// https://github.com/antfu/vite-ssg
export const createApp = ViteSSG(
App,

View File

@ -21,7 +21,7 @@ export async function addValaxyTabAndCommand() {
// iframe view
view: {
type: 'iframe',
src: 'https://valaxy.site',
src: '/__valaxy_devtools__/',
},
// category: 'pinned',
category: 'app',

View File

@ -63,6 +63,9 @@ function handleHMR(router: Router): void {
if (import.meta.hot) {
import.meta.hot.on('valaxy:pageData', (payload: PageDataPayload) => {
if (shouldHotReload(payload)) {
// @ts-expect-error $pageData
window.$pageData = payload.pageData
// console.log(payload.pageData.headers)
Object.assign(router.currentRoute.value.meta, payload.pageData)
}

View File

@ -26,12 +26,6 @@ export default function setupMain(ctx: ViteSSGContext, config: ComputedRef<Valax
installValaxy(ctx, config)
if (import.meta.env.DEV && ctx.isClient) {
import('../modules/devtools').then(({ install: installDevtools }) => {
installDevtools(ctx)
})
}
installSchema(ctx)
installPinia(ctx)
@ -42,5 +36,13 @@ export default function setupMain(ctx: ViteSSGContext, config: ComputedRef<Valax
dayjs.extend(utc)
dayjs.extend(timezone)
if (import.meta.env.DEV && ctx.isClient) {
import('../modules/devtools').then(({ install: installDevtools }) => {
setTimeout(() => {
installDevtools(ctx)
})
})
}
/* __injections__ */
}

View File

@ -2,6 +2,7 @@ import { computed, ref } from 'vue'
import { acceptHMRUpdate, defineStore } from 'pinia'
import { usePostList, useRouterStore } from '..'
import type { PageDataPayload } from '../../types'
import { setWindowValaxyProp } from '../utils/dev'
/**
* cache site global store
@ -57,6 +58,9 @@ export const useSiteStore = defineStore('site', () => {
})
}
if (import.meta.env.DEV)
setWindowValaxyProp('postList', postList)
return {
postList,
}

View File

@ -0,0 +1,13 @@
export function initDevToolsClientLogic() {
}
export function setWindowValaxyProp(property: string, value: any) {
if (!(window as any).$valaxy) {
;(window as any).$valaxy = {}
}
const $valaxy = ((window as any).$valaxy) as {
[key: string]: any
}
$valaxy[property] = value
}

View File

@ -31,7 +31,12 @@ export function createTransformMarkdown(options: ResolvedValaxyOptions) {
const isDev = options.mode === 'dev'
const imports = [
...dataCode,
isDev ? `window.$frontmatter = $frontmatter` : '',
isDev
? `
window.$pageData = data
window.$frontmatter = $frontmatter
`
: '',
]
code = code.replace(/(<script setup.*>)/g, `$1\n${imports.join('\n')}\n`)

View File

@ -25,7 +25,7 @@ function inferDescription(frontmatter: Record<string, any>) {
export async function generatePageData(code: string, id: string, options: ResolvedValaxyOptions) {
const { frontmatter = {} as Record<string, any> } = options.env
const relativePath = id
const relativePath = path.relative(options.userRoot, id)
const pageData: PageData = {
title: frontmatter.title || options.env.title || '',
@ -35,7 +35,7 @@ export async function generatePageData(code: string, id: string, options: Resolv
// not be used
headers: options.env.headers || [],
relativePath,
path: path.join(options.userRoot, relativePath),
path: id,
}
// if (includeLastUpdatedData)

View File

@ -23,9 +23,7 @@ export async function createServer(
// only enable when dev
vitePlugins.push(
(await import('vite-plugin-vue-devtools')).default(),
(await import('@valaxyjs/devtools')).default({
base: options.userRoot,
}),
(await import('@valaxyjs/devtools')).default(),
)
}

View File

@ -2,6 +2,7 @@ import 'vue-router'
// import './client/typed-router'
import type { Ref } from 'vue'
import type { Post } from './types'
import type { Header } from './node/plugins/markdown'
@ -12,6 +13,10 @@ declare module '@docsearch/js' {
}
declare interface Window {
$valaxy: {
postList: Ref<Post[]>
}
// algolia
instantsearch: any
algoliasearch: any

View File

@ -241,12 +241,27 @@ importers:
specifier: ^2.0.4
version: 2.0.4
devDependencies:
'@iconify-json/ri':
specifier: ^1.1.19
version: 1.1.19
'@types/splitpanes':
specifier: ^2.2.6
version: 2.2.6
'@vue/devtools-api':
specifier: ^7.0.14
version: 7.0.14
splitpanes:
specifier: ^3.1.5
version: 3.1.5
typescript:
specifier: ^5.3.3
version: 5.3.3
unbuild:
specifier: ^2.0.0
version: 2.0.0(typescript@5.3.3)
unplugin-vue-router:
specifier: ^0.7.0
version: 0.7.0(rollup@3.29.4)(vue-router@4.2.5)(vue@3.4.18)
vite:
specifier: ^5.1.1
version: 5.1.1(@types/node@20.11.17)(sass@1.70.0)
@ -508,7 +523,7 @@ importers:
version: 17.0.32
debug:
specifier: ^4.3.4
version: 4.3.4(supports-color@8.1.1)
version: 4.3.4(supports-color@5.5.0)
diacritics:
specifier: ^1.3.0
version: 1.3.0
@ -880,7 +895,7 @@ packages:
'@babel/traverse': 7.23.7
'@babel/types': 7.23.6
convert-source-map: 2.0.0
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
gensync: 1.0.0-beta.2
json5: 2.2.3
semver: 6.3.1
@ -902,7 +917,7 @@ packages:
'@babel/traverse': 7.23.9
'@babel/types': 7.23.9
convert-source-map: 2.0.0
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
gensync: 1.0.0-beta.2
json5: 2.2.3
semver: 6.3.1
@ -1137,7 +1152,7 @@ packages:
engines: {node: '>=6.0.0'}
hasBin: true
dependencies:
'@babel/types': 7.23.6
'@babel/types': 7.23.9
/@babel/plugin-proposal-decorators@7.23.7(@babel/core@7.23.7):
resolution: {integrity: sha512-b1s5JyeMvqj7d9m9KhJNHKc18gEJiSyVzVX3bwbiPalQBQpuvfPh6lA9F7Kk/dWH0TIiXRpB9yicwijY6buPng==}
@ -1306,7 +1321,7 @@ packages:
'@babel/helper-split-export-declaration': 7.22.6
'@babel/parser': 7.23.6
'@babel/types': 7.23.6
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
globals: 11.12.0
transitivePeerDependencies:
- supports-color
@ -1323,7 +1338,7 @@ packages:
'@babel/helper-split-export-declaration': 7.22.6
'@babel/parser': 7.23.9
'@babel/types': 7.23.9
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
globals: 11.12.0
transitivePeerDependencies:
- supports-color
@ -1344,7 +1359,6 @@ packages:
'@babel/helper-string-parser': 7.23.4
'@babel/helper-validator-identifier': 7.22.20
to-fast-properties: 2.0.0
dev: false
/@braintree/sanitize-url@6.0.4:
resolution: {integrity: sha512-s3jaWicZd0pkP0jf5ysyHUI/RE7MHos6qlToFcGWXVp+ykHOy77OUMrfbgJ9it2C5bow7OIQwYYaHjk9XlBQ2A==}
@ -1694,7 +1708,7 @@ packages:
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dependencies:
ajv: 6.12.6
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
espree: 9.6.1
globals: 13.24.0
ignore: 5.3.0
@ -1720,7 +1734,7 @@ packages:
engines: {node: '>=10.10.0'}
dependencies:
'@humanwhocodes/object-schema': 2.0.2
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
minimatch: 3.1.2
transitivePeerDependencies:
- supports-color
@ -1757,7 +1771,6 @@ packages:
resolution: {integrity: sha512-S9usTucQOY//J3LGIGZ+A6i8AYGCStDcLKjmWzI2UPnWJo+Xd5dESMQGkhOI5BlG3W4AtH6RmiXcpbPy3krmjQ==}
dependencies:
'@iconify/types': 2.0.0
dev: false
/@iconify-json/simple-icons@1.1.91:
resolution: {integrity: sha512-hFWxeQWjCh26nObKnEm+AMB5W+bh4pXtmT3PnecS7rP2Crh0AHi5QBHPtH+6L8R6xZtBk5I2TLoA0TRzCgrF8A==}
@ -1779,7 +1792,7 @@ packages:
'@antfu/install-pkg': 0.1.1
'@antfu/utils': 0.7.7
'@iconify/types': 2.0.0
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
kolorist: 1.8.0
local-pkg: 0.5.0
mlly: 1.5.0
@ -1865,7 +1878,7 @@ packages:
'@intlify/shared': 9.9.0
'@rollup/pluginutils': 5.1.0(rollup@3.29.4)
'@vue/compiler-sfc': 3.4.15
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
fast-glob: 3.3.2
js-yaml: 4.1.0
json5: 2.2.3
@ -2553,6 +2566,12 @@ packages:
resolution: {integrity: sha512-0vWLNK2D5MT9dg0iOo8GlKguPAU02QjmZitPEsXRuJXU/OGIOt9vT9Fc26wtYuavLxtO45v9PGleoL9Z0k1LHg==}
dev: true
/@types/splitpanes@2.2.6:
resolution: {integrity: sha512-3dV5sO1Ht74iER4jJU03mreL3f+Q2h47ZqXS6Sfbqc6hkCvsDrX1GA0NbYWRdNvZemPyTDzUoApWKeoGbALwkQ==}
dependencies:
vue: 2.7.16
dev: true
/@types/unist@2.0.10:
resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==}
@ -2598,7 +2617,7 @@ packages:
'@typescript-eslint/type-utils': 6.20.0(eslint@8.56.0)(typescript@5.3.3)
'@typescript-eslint/utils': 6.20.0(eslint@8.56.0)(typescript@5.3.3)
'@typescript-eslint/visitor-keys': 6.20.0
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
eslint: 8.56.0
graphemer: 1.4.0
ignore: 5.3.0
@ -2624,7 +2643,7 @@ packages:
'@typescript-eslint/types': 6.20.0
'@typescript-eslint/typescript-estree': 6.20.0(typescript@5.3.3)
'@typescript-eslint/visitor-keys': 6.20.0
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
eslint: 8.56.0
typescript: 5.3.3
transitivePeerDependencies:
@ -2659,7 +2678,7 @@ packages:
dependencies:
'@typescript-eslint/typescript-estree': 6.20.0(typescript@5.3.3)
'@typescript-eslint/utils': 6.20.0(eslint@8.56.0)(typescript@5.3.3)
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
eslint: 8.56.0
ts-api-utils: 1.0.3(typescript@5.3.3)
typescript: 5.3.3
@ -2688,7 +2707,7 @@ packages:
dependencies:
'@typescript-eslint/types': 6.19.0
'@typescript-eslint/visitor-keys': 6.19.0
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
globby: 11.1.0
is-glob: 4.0.3
minimatch: 9.0.3
@ -2710,7 +2729,7 @@ packages:
dependencies:
'@typescript-eslint/types': 6.20.0
'@typescript-eslint/visitor-keys': 6.20.0
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
globby: 11.1.0
is-glob: 4.0.3
minimatch: 9.0.3
@ -3051,7 +3070,7 @@ packages:
- rollup
dev: false
/@vitejs/plugin-vue@5.0.3(vite@5.1.1)(vue@3.4.16):
/@vitejs/plugin-vue@5.0.3(vite@5.1.1)(vue@3.4.18):
resolution: {integrity: sha512-b8S5dVS40rgHdDrw+DQi/xOM9ed+kSRZzfm1T74bMmBDCd8XO87NKlFYInzCtwvtWwXZvo1QxE2OSspTATWrbA==}
engines: {node: ^18.0.0 || >=20.0.0}
peerDependencies:
@ -3059,7 +3078,7 @@ packages:
vue: ^3.2.25
dependencies:
vite: 5.1.1(@types/node@20.11.17)(sass@1.70.0)
vue: 3.4.16(typescript@5.3.3)
vue: 3.4.18(typescript@5.3.3)
dev: true
/@vitejs/plugin-vue@5.0.4(vite@5.1.1)(vue@3.4.18):
@ -3149,7 +3168,6 @@ packages:
vue: 3.4.18(typescript@5.3.3)
transitivePeerDependencies:
- rollup
dev: false
/@vue/babel-helper-vue-transform-on@1.2.0:
resolution: {integrity: sha512-Zn6iRYAVvWl835GCcNsLUroy+jwNjH1yd83hvKNSgbiCkzeZwXvEFCC1u0lVKwoqL7z0IcrtY3dkBMuMxwB1fw==}
@ -3189,7 +3207,7 @@ packages:
'@babel/helper-module-imports': 7.22.15
'@babel/helper-plugin-utils': 7.22.5
'@babel/parser': 7.23.6
'@vue/compiler-sfc': 3.4.15
'@vue/compiler-sfc': 3.4.18
dev: false
/@vue/compiler-core@3.4.15:
@ -3201,16 +3219,6 @@ packages:
estree-walker: 2.0.2
source-map-js: 1.0.2
/@vue/compiler-core@3.4.16:
resolution: {integrity: sha512-HXgyy7gen4FNJS8Hz2q/NNBEdzD3QInhDTWaP2/mS0TlmV9CnjmXip7TZ0ROYiQM4FgXZCCJvh74yDikFkPpkQ==}
dependencies:
'@babel/parser': 7.23.9
'@vue/shared': 3.4.16
entities: 4.5.0
estree-walker: 2.0.2
source-map-js: 1.0.2
dev: true
/@vue/compiler-core@3.4.18:
resolution: {integrity: sha512-F7YK8lMK0iv6b9/Gdk15A67wM0KKZvxDxed0RR60C1z9tIJTKta+urs4j0RTN5XqHISzI3etN3mX0uHhjmoqjQ==}
dependencies:
@ -3226,19 +3234,22 @@ packages:
'@vue/compiler-core': 3.4.15
'@vue/shared': 3.4.15
/@vue/compiler-dom@3.4.16:
resolution: {integrity: sha512-lvs9ankPzLEuIC5aB72ntLUcwVGmgY7ASkXDRvo9+lUMWOOCqnAmM/64AZPeVAZ4EnjocCE40OUN+ZboNe4ygA==}
dependencies:
'@vue/compiler-core': 3.4.16
'@vue/shared': 3.4.16
dev: true
/@vue/compiler-dom@3.4.18:
resolution: {integrity: sha512-24Eb8lcMfInefvQ6YlEVS18w5Q66f4+uXWVA+yb7praKbyjHRNuKVWGuinfSSjM0ZIiPi++QWukhkgznBaqpEA==}
dependencies:
'@vue/compiler-core': 3.4.18
'@vue/shared': 3.4.18
/@vue/compiler-sfc@2.7.16:
resolution: {integrity: sha512-KWhJ9k5nXuNtygPU7+t1rX6baZeqOYLEforUPjgNDBnLicfHCoi48H87Q8XyLZOrNNsmhuwKqtpDQWjEFe6Ekg==}
dependencies:
'@babel/parser': 7.23.9
postcss: 8.4.35
source-map: 0.6.1
optionalDependencies:
prettier: 2.8.8
dev: true
/@vue/compiler-sfc@3.4.15:
resolution: {integrity: sha512-LCn5M6QpkpFsh3GQvs2mJUOAlBQcCco8D60Bcqmf3O3w5a+KWS5GvYbrrJBkgvL1BDnTp+e8q0lXCLgHhKguBA==}
dependencies:
@ -3251,21 +3262,6 @@ packages:
magic-string: 0.30.5
postcss: 8.4.33
source-map-js: 1.0.2
dev: false
/@vue/compiler-sfc@3.4.16:
resolution: {integrity: sha512-zVYC42Q/NmbB4nigGcQeIvsLpBlq6K9wJP5jTFCqfpXWnkodxfLFQHDu2GntZ7yKOgwAjxuvLwrPx+I6LPL2vg==}
dependencies:
'@babel/parser': 7.23.9
'@vue/compiler-core': 3.4.16
'@vue/compiler-dom': 3.4.16
'@vue/compiler-ssr': 3.4.16
'@vue/shared': 3.4.16
estree-walker: 2.0.2
magic-string: 0.30.7
postcss: 8.4.35
source-map-js: 1.0.2
dev: true
/@vue/compiler-sfc@3.4.18:
resolution: {integrity: sha512-rG5tqtnzwrVpMqAQ7FHtvHaV70G6LLfJIWLYZB/jZ9m/hrnZmIQh+H3ewnC5onwe/ibljm9+ZupxeElzqCkTAw==}
@ -3285,14 +3281,6 @@ packages:
dependencies:
'@vue/compiler-dom': 3.4.15
'@vue/shared': 3.4.15
dev: false
/@vue/compiler-ssr@3.4.16:
resolution: {integrity: sha512-1kNF+fHdEB+5aTcPZ0hh/gzi9Ezq5IBO4bl/hV4Dg4fub6t12W6VGlsERtvdUaEowL35M3pojv0hOvLaq0FbdQ==}
dependencies:
'@vue/compiler-dom': 3.4.16
'@vue/shared': 3.4.16
dev: true
/@vue/compiler-ssr@3.4.18:
resolution: {integrity: sha512-hSlv20oUhPxo2UYUacHgGaxtqP0tvFo6ixxxD6JlXIkwzwoZ9eKK6PFQN4hNK/R13JlNyldwWt/fqGBKgWJ6nQ==}
@ -3302,7 +3290,6 @@ packages:
/@vue/devtools-api@6.5.1:
resolution: {integrity: sha512-+KpckaAQyfbvshdDW5xQylLni1asvNSGme1JFs8I1+/H5pHEhqUKMEQD/qn3Nx5+/nycBq11qAEi8lk+LXI2dA==}
dev: false
/@vue/devtools-api@7.0.14:
resolution: {integrity: sha512-TluWR9qZ6aO11bwtYK8+fzXxBqLfsE0mWZz1q/EQBmO9k82Cm6deieLwNNXjNFJz7xutazoia5Qa+zTYkPPOfw==}
@ -3359,8 +3346,8 @@ packages:
dependencies:
'@volar/language-core': 1.11.1
'@volar/source-map': 1.11.1
'@vue/compiler-dom': 3.4.15
'@vue/shared': 3.4.15
'@vue/compiler-dom': 3.4.18
'@vue/shared': 3.4.18
computeds: 0.0.1
minimatch: 9.0.3
muggle-string: 0.3.1
@ -3369,39 +3356,16 @@ packages:
vue-template-compiler: 2.7.16
dev: true
/@vue/reactivity@3.4.16:
resolution: {integrity: sha512-XTWRMBG10PGs4MxDoUdBEhMacS5QBUAlGeb5AmQysTQ16tXxQ0lymgbSTmR2h79v5dJDFuULuLWUbwc0uj6zqQ==}
dependencies:
'@vue/shared': 3.4.16
dev: true
/@vue/reactivity@3.4.18:
resolution: {integrity: sha512-7uda2/I0jpLiRygprDo5Jxs2HJkOVXcOMlyVlY54yRLxoycBpwGJRwJT9EdGB4adnoqJDXVT2BilUAYwI7qvmg==}
dependencies:
'@vue/shared': 3.4.18
dev: false
/@vue/runtime-core@3.4.16:
resolution: {integrity: sha512-vgS25M79AOY2EsBWxBcy9yAou10x2WHJhGN0FM/Ii8yum0a+KBfg8ehzq/cuDqfOPrtVrDPW+QkH3WNJNakfRw==}
dependencies:
'@vue/reactivity': 3.4.16
'@vue/shared': 3.4.16
dev: true
/@vue/runtime-core@3.4.18:
resolution: {integrity: sha512-7mU9diCa+4e+8/wZ7Udw5pwTH10A11sZ1nldmHOUKJnzCwvZxfJqAtw31mIf4T5H2FsLCSBQT3xgioA9vIjyDQ==}
dependencies:
'@vue/reactivity': 3.4.18
'@vue/shared': 3.4.18
dev: false
/@vue/runtime-dom@3.4.16:
resolution: {integrity: sha512-X+knHfhefB8tX0rJG3d14U8p1CpeZ/qZxol9rN8ZAD9UalTInIsKXlBTd/xLC8GwO2aXVXxjaSIiTU5th5wj9Q==}
dependencies:
'@vue/runtime-core': 3.4.16
'@vue/shared': 3.4.16
csstype: 3.1.3
dev: true
/@vue/runtime-dom@3.4.18:
resolution: {integrity: sha512-2y1Mkzcw1niSfG7z3Qx+2ir9Gb4hdTkZe5p/I8x1aTIKQE0vY0tPAEUPhZm5tx6183gG3D/KwHG728UR0sIufA==}
@ -3409,17 +3373,6 @@ packages:
'@vue/runtime-core': 3.4.18
'@vue/shared': 3.4.18
csstype: 3.1.3
dev: false
/@vue/server-renderer@3.4.16(vue@3.4.16):
resolution: {integrity: sha512-e0PZDpk/eZgICYb0DTQ+OeBlgt0FYGo+2DEcUkZxw+pDgF1qL0aYaOqmPcSbL5KK0nizvuSd7k5HZOkSwSaC2g==}
peerDependencies:
vue: 3.4.16
dependencies:
'@vue/compiler-ssr': 3.4.16
'@vue/shared': 3.4.16
vue: 3.4.16(typescript@5.3.3)
dev: true
/@vue/server-renderer@3.4.18(vue@3.4.18):
resolution: {integrity: sha512-YJd1wa7mzUN3NRqLEsrwEYWyO+PUBSROIGlCc3J/cvn7Zu6CxhNLgXa8Z4zZ5ja5/nviYO79J1InoPeXgwBTZA==}
@ -3429,30 +3382,13 @@ packages:
'@vue/compiler-ssr': 3.4.18
'@vue/shared': 3.4.18
vue: 3.4.18(typescript@5.3.3)
dev: false
/@vue/shared@3.4.15:
resolution: {integrity: sha512-KzfPTxVaWfB+eGcGdbSf4CWdaXcGDqckoeXUh7SB3fZdEtzPCK2Vq9B/lRRL3yutax/LWITz+SwvgyOxz5V75g==}
/@vue/shared@3.4.16:
resolution: {integrity: sha512-HKCjeaxR+R95dCw1BDaytcHdlzZj9lxj7RlFnxWtcKq670t8oSeMsbPlkzkNc2V6IUzHaMtUxdBcdREAhb+7NA==}
dev: true
/@vue/shared@3.4.18:
resolution: {integrity: sha512-CxouGFxxaW5r1WbrSmWwck3No58rApXgRSBxrqgnY1K+jk20F6DrXJkHdH9n4HVT+/B6G2CAn213Uq3npWiy8Q==}
/@vueuse/core@10.7.2(vue@3.4.16):
resolution: {integrity: sha512-AOyAL2rK0By62Hm+iqQn6Rbu8bfmbgaIMXcE3TSr7BdQ42wnSFlwIdPjInO62onYsEMK/yDMU8C6oGfDAtZ2qQ==}
dependencies:
'@types/web-bluetooth': 0.0.20
'@vueuse/metadata': 10.7.2
'@vueuse/shared': 10.7.2(vue@3.4.16)
vue-demi: 0.14.6(vue@3.4.16)
transitivePeerDependencies:
- '@vue/composition-api'
- vue
dev: true
/@vueuse/core@10.7.2(vue@3.4.18):
resolution: {integrity: sha512-AOyAL2rK0By62Hm+iqQn6Rbu8bfmbgaIMXcE3TSr7BdQ42wnSFlwIdPjInO62onYsEMK/yDMU8C6oGfDAtZ2qQ==}
dependencies:
@ -3463,9 +3399,8 @@ packages:
transitivePeerDependencies:
- '@vue/composition-api'
- vue
dev: false
/@vueuse/integrations@10.7.2(focus-trap@7.5.4)(vue@3.4.16):
/@vueuse/integrations@10.7.2(focus-trap@7.5.4)(vue@3.4.18):
resolution: {integrity: sha512-+u3RLPFedjASs5EKPc69Ge49WNgqeMfSxFn+qrQTzblPXZg6+EFzhjarS5edj2qAf6xQ93f95TUxRwKStXj/sQ==}
peerDependencies:
async-validator: '*'
@ -3506,10 +3441,10 @@ packages:
universal-cookie:
optional: true
dependencies:
'@vueuse/core': 10.7.2(vue@3.4.16)
'@vueuse/shared': 10.7.2(vue@3.4.16)
'@vueuse/core': 10.7.2(vue@3.4.18)
'@vueuse/shared': 10.7.2(vue@3.4.18)
focus-trap: 7.5.4
vue-demi: 0.14.6(vue@3.4.16)
vue-demi: 0.14.6(vue@3.4.18)
transitivePeerDependencies:
- '@vue/composition-api'
- vue
@ -3570,15 +3505,6 @@ packages:
/@vueuse/metadata@10.7.2:
resolution: {integrity: sha512-kCWPb4J2KGrwLtn1eJwaJD742u1k5h6v/St5wFe8Quih90+k2a0JP8BS4Zp34XUuJqS2AxFYMb1wjUL8HfhWsQ==}
/@vueuse/shared@10.7.2(vue@3.4.16):
resolution: {integrity: sha512-qFbXoxS44pi2FkgFjPvF4h7c9oMDutpyBdcJdMYIMg9XyXli2meFMuaKn+UMgsClo//Th6+beeCgqweT/79BVA==}
dependencies:
vue-demi: 0.14.6(vue@3.4.16)
transitivePeerDependencies:
- '@vue/composition-api'
- vue
dev: true
/@vueuse/shared@10.7.2(vue@3.4.18):
resolution: {integrity: sha512-qFbXoxS44pi2FkgFjPvF4h7c9oMDutpyBdcJdMYIMg9XyXli2meFMuaKn+UMgsClo//Th6+beeCgqweT/79BVA==}
dependencies:
@ -3586,7 +3512,6 @@ packages:
transitivePeerDependencies:
- '@vue/composition-api'
- vue
dev: false
/@waline/client@2.15.8(typescript@5.3.3):
resolution: {integrity: sha512-EBL7RXJUJs742miTvOU0Vt8NEmeJ63EN5TtSsYZfzjUdvEtlv+JsBbS5uiz3C9v5qV7Hz+XDZdc8nc13mG9vNQ==}
@ -3634,7 +3559,7 @@ packages:
resolution: {integrity: sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==}
engines: {node: '>= 14'}
dependencies:
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
transitivePeerDependencies:
- supports-color
dev: false
@ -3821,7 +3746,6 @@ packages:
pathe: 1.1.2
transitivePeerDependencies:
- rollup
dev: false
/ast-kit@0.6.9(rollup@3.29.4):
resolution: {integrity: sha512-2XZi+wqlluYQcxJ1G8qE/U0IeO5CbxUyv1lnSdD7ByJtd5Z3+1063Q6IHbRaYkka1Kb6WgGqEkBrSMaBtbHuFQ==}
@ -3843,7 +3767,6 @@ packages:
pathe: 1.1.2
transitivePeerDependencies:
- rollup
dev: false
/ast-walker-scope@0.5.0(rollup@3.29.4):
resolution: {integrity: sha512-NsyHMxBh4dmdEHjBo1/TBZvCKxffmZxRYhmclfu0PP6Aftre47jOHYaYaNqJcV0bxihxFXhDkzLHUwHc0ocd0Q==}
@ -3853,7 +3776,6 @@ packages:
ast-kit: 0.9.5(rollup@3.29.4)
transitivePeerDependencies:
- rollup
dev: false
/astral-regex@2.0.0:
resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==}
@ -5081,7 +5003,6 @@ packages:
dependencies:
ms: 2.1.2
supports-color: 5.5.0
dev: true
/debug@4.3.4(supports-color@8.1.1):
resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
@ -5094,6 +5015,7 @@ packages:
dependencies:
ms: 2.1.2
supports-color: 8.1.1
dev: true
/decamelize@1.2.0:
resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==}
@ -5583,7 +5505,7 @@ packages:
peerDependencies:
eslint: ^7.2.0 || ^8
dependencies:
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
doctrine: 3.0.0
eslint: 8.56.0
eslint-import-resolver-node: 0.3.9
@ -5608,7 +5530,7 @@ packages:
'@es-joy/jsdoccomment': 0.41.0
are-docs-informative: 0.0.2
comment-parser: 1.4.1
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
escape-string-regexp: 4.0.0
eslint: 8.56.0
esquery: 1.5.0
@ -5706,7 +5628,7 @@ packages:
peerDependencies:
eslint: '>=6.0.0'
dependencies:
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
eslint: 8.56.0
eslint-compat-utils: 0.4.1(eslint@8.56.0)
lodash: 4.17.21
@ -5803,7 +5725,7 @@ packages:
peerDependencies:
eslint: '>=6.0.0'
dependencies:
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
eslint: 8.56.0
eslint-compat-utils: 0.4.1(eslint@8.56.0)
lodash: 4.17.21
@ -5856,7 +5778,7 @@ packages:
ajv: 6.12.6
chalk: 4.1.2
cross-spawn: 7.0.3
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
doctrine: 3.0.0
escape-string-regexp: 4.0.0
eslint-scope: 7.2.2
@ -6732,7 +6654,7 @@ packages:
engines: {node: '>= 14'}
dependencies:
agent-base: 7.1.0
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
transitivePeerDependencies:
- supports-color
dev: false
@ -6765,7 +6687,7 @@ packages:
engines: {node: '>= 14'}
dependencies:
agent-base: 7.1.0
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
transitivePeerDependencies:
- supports-color
dev: false
@ -7455,7 +7377,7 @@ packages:
dependencies:
chalk: 5.3.0
commander: 11.1.0
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
execa: 8.0.1
lilconfig: 3.0.0
listr2: 8.0.1
@ -7517,7 +7439,6 @@ packages:
/local-pkg@0.4.3:
resolution: {integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==}
engines: {node: '>=14'}
dev: false
/local-pkg@0.5.0:
resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==}
@ -7651,7 +7572,6 @@ packages:
engines: {node: '>=16.14.0'}
dependencies:
magic-string: 0.30.5
dev: false
/magic-string@0.30.5:
resolution: {integrity: sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==}
@ -8008,7 +7928,7 @@ packages:
/micromark@2.11.4:
resolution: {integrity: sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==}
dependencies:
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
parse-entities: 2.0.0
transitivePeerDependencies:
- supports-color
@ -8018,7 +7938,7 @@ packages:
resolution: {integrity: sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==}
dependencies:
'@types/debug': 4.1.12
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
decode-named-character-reference: 1.0.2
micromark-core-commonmark: 1.1.0
micromark-factory-space: 1.1.0
@ -9105,6 +9025,14 @@ packages:
engines: {node: '>= 0.8.0'}
dev: true
/prettier@2.8.8:
resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==}
engines: {node: '>=10.13.0'}
hasBin: true
requiresBuild: true
dev: true
optional: true
/prettier@3.2.4:
resolution: {integrity: sha512-FWu1oLHKCrtpO1ypU6J0SbK2d9Ckwysq6bHj/uaCP26DxrPpppCLQRGVuqAxSTvhF00AcvDRyYrLNW7ocBhFFQ==}
engines: {node: '>=14'}
@ -9811,7 +9739,7 @@ packages:
/spdy-transport@3.0.0:
resolution: {integrity: sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==}
dependencies:
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
detect-node: 2.1.0
hpack.js: 2.1.6
obuf: 1.1.2
@ -9825,7 +9753,7 @@ packages:
resolution: {integrity: sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==}
engines: {node: '>=6.0.0'}
dependencies:
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
handle-thing: 2.0.1
http-deceiver: 1.2.7
select-hose: 2.0.0
@ -9844,6 +9772,10 @@ packages:
through: 2.3.8
dev: true
/splitpanes@3.1.5:
resolution: {integrity: sha512-r3Mq2ITFQ5a2VXLOy4/Sb2Ptp7OfEO8YIbhVJqJXoFc9hc5nTXXkCvtVDjIGbvC0vdE7tse+xTM9BMjsszP6bw==}
dev: true
/sprintf-js@1.0.3:
resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
@ -10130,7 +10062,7 @@ packages:
cosmiconfig: 9.0.0(typescript@5.3.3)
css-functions-list: 3.2.1
css-tree: 2.3.1
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
fast-glob: 3.3.2
fastest-levenshtein: 1.0.16
file-entry-cache: 8.0.0
@ -10199,6 +10131,7 @@ packages:
engines: {node: '>=10'}
dependencies:
has-flag: 4.0.0
dev: true
/supports-hyperlinks@3.0.0:
resolution: {integrity: sha512-QBDPHyPQDRTy9ku4URNGY5Lah8PAaXs6tAAwp55sL5WCsSW7GIfdf6W5ixfziW+t7wh3GVvHyHHyQ1ESsoRvaA==}
@ -10417,7 +10350,7 @@ packages:
bundle-require: 4.0.2(esbuild@0.19.11)
cac: 6.7.14
chokidar: 3.5.3
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
esbuild: 0.19.11
execa: 5.1.1
globby: 11.1.0
@ -10728,7 +10661,7 @@ packages:
'@antfu/utils': 0.7.7
'@rollup/pluginutils': 5.1.0(rollup@3.29.4)
chokidar: 3.5.3
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
fast-glob: 3.3.2
local-pkg: 0.4.3
magic-string: 0.30.5
@ -10766,7 +10699,7 @@ packages:
vue-router:
optional: true
dependencies:
'@babel/types': 7.23.6
'@babel/types': 7.23.9
'@rollup/pluginutils': 5.1.0(rollup@3.29.4)
'@vue-macros/common': 1.10.1(rollup@3.29.4)(vue@3.4.18)
ast-walker-scope: 0.5.0(rollup@3.29.4)
@ -10783,7 +10716,6 @@ packages:
transitivePeerDependencies:
- rollup
- vue
dev: false
/unplugin@1.6.0:
resolution: {integrity: sha512-BfJEpWBu3aE/AyHx8VaNE/WgouoQxgH9baAiH82JjX8cqVyi3uJQstqwD5J+SZxIK326SZIhsSZlALXVBCknTQ==}
@ -10792,7 +10724,6 @@ packages:
chokidar: 3.5.3
webpack-sources: 3.2.3
webpack-virtual-modules: 0.6.1
dev: false
/untildify@4.0.0:
resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==}
@ -10924,7 +10855,7 @@ packages:
hasBin: true
dependencies:
cac: 6.7.14
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
pathe: 1.1.2
picocolors: 1.0.0
vite: 5.1.1(@types/node@20.11.17)(sass@1.70.0)
@ -10951,7 +10882,7 @@ packages:
dependencies:
'@antfu/utils': 0.7.7
'@rollup/pluginutils': 5.1.0(rollup@3.29.4)
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
error-stack-parser-es: 0.1.1
fs-extra: 11.2.0
open: 10.0.3
@ -10996,7 +10927,7 @@ packages:
'@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.23.7)
'@babel/plugin-transform-typescript': 7.23.6(@babel/core@7.23.7)
'@vue/babel-plugin-jsx': 1.2.0(@babel/core@7.23.7)
'@vue/compiler-dom': 3.4.15
'@vue/compiler-dom': 3.4.18
kolorist: 1.8.0
magic-string: 0.30.5
vite: 5.1.1(@types/node@20.11.17)(sass@1.70.0)
@ -11011,7 +10942,7 @@ packages:
vue: ^3.2.4
vue-router: ^4.0.11
dependencies:
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
fast-glob: 3.3.2
vite: 5.1.1(@types/node@20.11.17)(sass@1.70.0)
vue: 3.4.18(typescript@5.3.3)
@ -11112,17 +11043,17 @@ packages:
'@shikijs/core': 1.0.0
'@shikijs/transformers': 1.0.0
'@types/markdown-it': 13.0.7
'@vitejs/plugin-vue': 5.0.3(vite@5.1.1)(vue@3.4.16)
'@vitejs/plugin-vue': 5.0.3(vite@5.1.1)(vue@3.4.18)
'@vue/devtools-api': 7.0.14
'@vueuse/core': 10.7.2(vue@3.4.16)
'@vueuse/integrations': 10.7.2(focus-trap@7.5.4)(vue@3.4.16)
'@vueuse/core': 10.7.2(vue@3.4.18)
'@vueuse/integrations': 10.7.2(focus-trap@7.5.4)(vue@3.4.18)
focus-trap: 7.5.4
mark.js: 8.11.1
minisearch: 6.3.0
postcss: 8.4.35
shiki: 1.0.0
vite: 5.1.1(@types/node@20.11.17)(sass@1.70.0)
vue: 3.4.16(typescript@5.3.3)
vue: 3.4.18(typescript@5.3.3)
transitivePeerDependencies:
- '@algolia/client-search'
- '@types/node'
@ -11185,7 +11116,7 @@ packages:
acorn-walk: 8.3.2
cac: 6.7.14
chai: 4.4.1
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
execa: 8.0.1
local-pkg: 0.5.0
magic-string: 0.30.5
@ -11208,21 +11139,6 @@ packages:
- terser
dev: true
/vue-demi@0.14.6(vue@3.4.16):
resolution: {integrity: sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==}
engines: {node: '>=12'}
hasBin: true
requiresBuild: true
peerDependencies:
'@vue/composition-api': ^1.0.0-rc.1
vue: ^3.0.0-0 || ^2.6.0
peerDependenciesMeta:
'@vue/composition-api':
optional: true
dependencies:
vue: 3.4.16(typescript@5.3.3)
dev: true
/vue-demi@0.14.6(vue@3.4.18):
resolution: {integrity: sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==}
engines: {node: '>=12'}
@ -11236,7 +11152,6 @@ packages:
optional: true
dependencies:
vue: 3.4.18(typescript@5.3.3)
dev: false
/vue-eslint-parser@9.4.2(eslint@8.56.0):
resolution: {integrity: sha512-Ry9oiGmCAK91HrKMtCrKFWmSFWvYkpGglCeFAIqDdr9zdXmMMpJOmUJS7WWsW7fX81h6mwHmUZCQQ1E0PkSwYQ==}
@ -11244,7 +11159,7 @@ packages:
peerDependencies:
eslint: '>=6.0.0'
dependencies:
debug: 4.3.4(supports-color@8.1.1)
debug: 4.3.4(supports-color@5.5.0)
eslint: 8.56.0
eslint-scope: 7.2.2
eslint-visitor-keys: 3.4.3
@ -11275,7 +11190,6 @@ packages:
dependencies:
'@vue/devtools-api': 6.5.1
vue: 3.4.18(typescript@5.3.3)
dev: false
/vue-template-compiler@2.7.16:
resolution: {integrity: sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==}
@ -11296,20 +11210,12 @@ packages:
typescript: 5.3.3
dev: true
/vue@3.4.16(typescript@5.3.3):
resolution: {integrity: sha512-l5/KcZRp3GbsFXQGeCL9ll1JfRU285K/7l8mZM+dEO+CnE1j26MvfBKJi17iCRRwstl+Jz7KSLlzj9L79fB6WA==}
peerDependencies:
typescript: '*'
peerDependenciesMeta:
typescript:
optional: true
/vue@2.7.16:
resolution: {integrity: sha512-4gCtFXaAA3zYZdTp5s4Hl2sozuySsgz4jy1EnpBHNfpMa9dK1ZCG7viqBPCwXtmgc8nHqUsAu3G4gtmXkkY3Sw==}
deprecated: Vue 2 has reached EOL and is no longer actively maintained. See https://v2.vuejs.org/eol/ for more details.
dependencies:
'@vue/compiler-dom': 3.4.16
'@vue/compiler-sfc': 3.4.16
'@vue/runtime-dom': 3.4.16
'@vue/server-renderer': 3.4.16(vue@3.4.16)
'@vue/shared': 3.4.16
typescript: 5.3.3
'@vue/compiler-sfc': 2.7.16
csstype: 3.1.3
dev: true
/vue@3.4.18(typescript@5.3.3):
@ -11326,7 +11232,6 @@ packages:
'@vue/server-renderer': 3.4.18(vue@3.4.18)
'@vue/shared': 3.4.18
typescript: 5.3.3
dev: false
/w3c-xmlserializer@5.0.0:
resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==}
@ -11362,11 +11267,9 @@ packages:
/webpack-sources@3.2.3:
resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==}
engines: {node: '>=10.13.0'}
dev: false
/webpack-virtual-modules@0.6.1:
resolution: {integrity: sha512-poXpCylU7ExuvZK8z+On3kX+S8o/2dQ/SVYueKA0D4WEMXROXgY8Ez50/bQEUmvoSMMrWcrJqCHuhAbsiwg7Dg==}
dev: false
/webpod@0.0.2:
resolution: {integrity: sha512-cSwwQIeg8v4i3p4ajHhwgR7N6VyxAf+KYSSsY6Pd3aETE+xEU4vbitz7qQkB0I321xnhDdgtxuiSfk5r/FVtjg==}

View File

@ -37,6 +37,7 @@
"demo/yun/.valaxy/typed-router.d.ts",
"./*.ts",
"./test/*.ts",
"./packages/valaxy/shims.d.ts",
"./packages/**/*.ts",
"./packages/**/*.vue"
],

View File

@ -1,3 +1,14 @@
import { defineConfig } from 'unocss'
import type { UserConfig } from 'unocss'
import { defineConfig, presetAttributify, presetIcons, presetUno } from 'unocss'
export default defineConfig({})
export const unoConfig: UserConfig = {
presets: [
presetUno(),
presetAttributify(),
presetIcons({
scale: 1.2,
}),
],
}
export default defineConfig(unoConfig)