├── .gitignore
├── .npmrc
├── .prettierignore
├── .prettierrc
├── LICENSE
├── README.md
├── example.gif
├── package.json
├── playground
├── auto-imports.d.ts
├── components.d.ts
├── package.json
├── src
│ ├── App.vue
│ └── main.ts
└── vite.config.ts
├── pnpm-lock.yaml
├── pnpm-workspace.yaml
├── src
├── component.ts
└── index.ts
├── tsconfig.json
└── tsup.config.ts
/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist
12 | dist-ssr
13 | *.local
14 |
15 | # Editor directories and files
16 | .vscode/*
17 | !.vscode/extensions.json
18 | .idea
19 | .DS_Store
20 | *.suo
21 | *.ntvs*
22 | *.njsproj
23 | *.sln
24 | *.sw?
25 |
--------------------------------------------------------------------------------
/.npmrc:
--------------------------------------------------------------------------------
1 | auto-install-peers=true
2 | strict-peer-dependencies=false
3 |
--------------------------------------------------------------------------------
/.prettierignore:
--------------------------------------------------------------------------------
1 | __build__
2 | dist
3 | coverage
4 | auto-imports.d.ts
5 |
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "semi": false,
3 | "trailingComma": "es5",
4 | "singleQuote": true
5 | }
6 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2022 vue-terminal
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # syntax-highlight
2 |
3 | Syntax highlight component for [vue-termui](https://github.com/vue-terminal/vue-termui).
4 |
5 |
6 |
7 |
8 |

9 |
10 |
11 |
12 |
13 |
14 | ## Install
15 |
16 | ```shell
17 | npm install @vue-termui/syntax-highlight
18 | ```
19 |
20 | ## Usage
21 |
22 | ```html
23 |
29 |
30 |
31 |
32 |
33 |
34 |
35 | ```
36 |
37 | ## Props
38 |
39 | ### code
40 |
41 | - Type: `string`
42 |
43 | Source code to highlight.
44 |
45 | ### lang
46 |
47 | - Type: [Lang](https://github.com/shikijs/shiki/blob/main/docs/languages.md)
48 |
49 | ### theme
50 |
51 | - Type: [Theme](https://github.com/shikijs/shiki/blob/main/docs/themes.md)
52 |
53 | ## Credits
54 |
55 | Syntax Highlight is based on [Shiki](https://github.com/shikijs/shiki)
56 |
--------------------------------------------------------------------------------
/example.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vue-terminal/syntax-highlight/f487345c407fd21c13aee6fedf3eb129d3537ca8/example.gif
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@vue-termui/syntax-highlight",
3 | "version": "1.0.3",
4 | "description": "Syntax highlight component for vue-termui.",
5 | "type": "module",
6 | "module": "./dist/index.mjs",
7 | "types": "./dist/index.d.ts",
8 | "packageManager": "pnpm@7.12.2",
9 | "scripts": {
10 | "build": "tsup",
11 | "play:dev": "pnpm run --filter './playground' dev",
12 | "play:build": "pnpm run --filter './playground' build",
13 | "lint": "prettier --check .",
14 | "lint:fix": "prettier --write ."
15 | },
16 | "repository": {
17 | "type": "git",
18 | "url": "git+https://github.com/vue-terminal/syntax-highlight.git"
19 | },
20 | "exports": {
21 | ".": {
22 | "import": "./dist/index.mjs",
23 | "types": "./dist/index.d.ts"
24 | }
25 | },
26 | "files": [
27 | "dist/*.js",
28 | "dist/*.mjs",
29 | "dist/*.cjs",
30 | "dist/*.d.ts"
31 | ],
32 | "keywords": [
33 | "vue-termui",
34 | "code",
35 | "syntax",
36 | "component",
37 | "syntax-highlight",
38 | "vue"
39 | ],
40 | "author": "webfansplz",
41 | "license": "MIT",
42 | "bugs": {
43 | "url": "https://github.com/vue-terminal/syntax-highlight/issues"
44 | },
45 | "homepage": "https://github.com/vue-terminal/syntax-highlight#readme",
46 | "peerDependencies": {
47 | "@vue/runtime-core": "^3.2.41",
48 | "vue-termui": "^0.0.19"
49 | },
50 | "devDependencies": {
51 | "@types/node": "^18.11.9",
52 | "@vue/runtime-core": "^3.2.41",
53 | "chalk": "^5.2.0",
54 | "prettier": "^2.8.0",
55 | "tsup": "^6.5.0",
56 | "typescript": "^4.9.3",
57 | "vue": "^3.2.41",
58 | "vue-termui": "0.0.17"
59 | },
60 | "dependencies": {
61 | "shiki": "^0.11.1"
62 | }
63 | }
64 |
--------------------------------------------------------------------------------
/playground/auto-imports.d.ts:
--------------------------------------------------------------------------------
1 | // Generated by 'unplugin-auto-import'
2 | export {}
3 | declare global {
4 | const EffectScope: typeof import('vue-termui')['EffectScope']
5 | const MouseEventType: typeof import('vue-termui')['MouseEventType']
6 | const computed: typeof import('vue-termui')['computed']
7 | const createApp: typeof import('vue-termui')['createApp']
8 | const customRef: typeof import('vue-termui')['customRef']
9 | const defineAsyncComponent: typeof import('vue-termui')['defineAsyncComponent']
10 | const defineComponent: typeof import('vue-termui')['defineComponent']
11 | const effectScope: typeof import('vue-termui')['effectScope']
12 | const getCurrentInstance: typeof import('vue-termui')['getCurrentInstance']
13 | const getCurrentScope: typeof import('vue-termui')['getCurrentScope']
14 | const h: typeof import('vue-termui')['h']
15 | const inject: typeof import('vue-termui')['inject']
16 | const inputDataToString: typeof import('vue-termui')['inputDataToString']
17 | const isInputDataEvent: typeof import('vue-termui')['isInputDataEvent']
18 | const isKeyDataEvent: typeof import('vue-termui')['isKeyDataEvent']
19 | const isMouseDataEvent: typeof import('vue-termui')['isMouseDataEvent']
20 | const isReadonly: typeof import('vue-termui')['isReadonly']
21 | const isRef: typeof import('vue-termui')['isRef']
22 | const markRaw: typeof import('vue-termui')['markRaw']
23 | const nextTick: typeof import('vue-termui')['nextTick']
24 | const onActivated: typeof import('vue-termui')['onActivated']
25 | const onBeforeMount: typeof import('vue-termui')['onBeforeMount']
26 | const onBeforeUnmount: typeof import('vue-termui')['onBeforeUnmount']
27 | const onBeforeUpdate: typeof import('vue-termui')['onBeforeUpdate']
28 | const onDeactivated: typeof import('vue-termui')['onDeactivated']
29 | const onErrorCaptured: typeof import('vue-termui')['onErrorCaptured']
30 | const onInputData: typeof import('vue-termui')['onInputData']
31 | const onKeyData: typeof import('vue-termui')['onKeyData']
32 | const onMounted: typeof import('vue-termui')['onMounted']
33 | const onMouseData: typeof import('vue-termui')['onMouseData']
34 | const onRenderTracked: typeof import('vue-termui')['onRenderTracked']
35 | const onRenderTriggered: typeof import('vue-termui')['onRenderTriggered']
36 | const onScopeDispose: typeof import('vue-termui')['onScopeDispose']
37 | const onServerPrefetch: typeof import('vue-termui')['onServerPrefetch']
38 | const onUnmounted: typeof import('vue-termui')['onUnmounted']
39 | const onUpdated: typeof import('vue-termui')['onUpdated']
40 | const provide: typeof import('vue-termui')['provide']
41 | const reactive: typeof import('vue-termui')['reactive']
42 | const readonly: typeof import('vue-termui')['readonly']
43 | const ref: typeof import('vue-termui')['ref']
44 | const resolveComponent: typeof import('vue-termui')['resolveComponent']
45 | const shallowReactive: typeof import('vue-termui')['shallowReactive']
46 | const shallowReadonly: typeof import('vue-termui')['shallowReadonly']
47 | const shallowRef: typeof import('vue-termui')['shallowRef']
48 | const toRaw: typeof import('vue-termui')['toRaw']
49 | const toRef: typeof import('vue-termui')['toRef']
50 | const toRefs: typeof import('vue-termui')['toRefs']
51 | const triggerRef: typeof import('vue-termui')['triggerRef']
52 | const unref: typeof import('vue-termui')['unref']
53 | const useAttrs: typeof import('vue-termui')['useAttrs']
54 | const useInterval: typeof import('vue-termui')['useInterval']
55 | const useLog: typeof import('vue-termui')['useLog']
56 | const useRootNode: typeof import('vue-termui')['useRootNode']
57 | const useSlots: typeof import('vue-termui')['useSlots']
58 | const useTimeout: typeof import('vue-termui')['useTimeout']
59 | const watch: typeof import('vue-termui')['watch']
60 | const watchEffect: typeof import('vue-termui')['watchEffect']
61 | }
62 |
--------------------------------------------------------------------------------
/playground/components.d.ts:
--------------------------------------------------------------------------------
1 | // generated by unplugin-vue-components
2 | // We suggest you to commit this file into source control
3 | // Read more: https://github.com/vuejs/core/pull/3399
4 | import '@vue/runtime-core'
5 |
6 | export {}
7 |
8 | declare module '@vue/runtime-core' {
9 | export interface GlobalComponents {
10 | Box: typeof import('vue-termui')['TuiBox']
11 | Text: typeof import('vue-termui')['TuiText']
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/playground/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "playground",
3 | "private": true,
4 | "scripts": {
5 | "dev": "vtui dev",
6 | "build": "vtui build"
7 | },
8 | "devDependencies": {
9 | "@vitejs/plugin-vue": "^3.2.0",
10 | "@vue-termui/cli": "*",
11 | "@vue/compiler-sfc": "^3.2.41",
12 | "unplugin-auto-import": "^0.11.4",
13 | "unplugin-vue-components": "^0.22.9",
14 | "vite": "^3.2.2",
15 | "vite-plugin-vue-termui": "*",
16 | "@vue-termui/syntax-highlight": "workspace:*"
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/playground/src/App.vue:
--------------------------------------------------------------------------------
1 |
26 |
27 |
28 |
37 |
38 |
39 |
48 |
49 |
50 |
51 |
--------------------------------------------------------------------------------
/playground/src/main.ts:
--------------------------------------------------------------------------------
1 | import { createApp } from 'vue-termui'
2 | import App from './App.vue'
3 |
4 | createApp(App).mount()
5 |
--------------------------------------------------------------------------------
/playground/vite.config.ts:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'vite'
2 | import VueTermui from 'vite-plugin-vue-termui'
3 | import { resolve } from 'path'
4 |
5 | export default defineConfig({
6 | plugins: [VueTermui()],
7 | resolve: {
8 | alias: {
9 | '@vue-termui/syntax-highlight': resolve('../src/index.ts'),
10 | },
11 | },
12 | })
13 |
--------------------------------------------------------------------------------
/pnpm-lock.yaml:
--------------------------------------------------------------------------------
1 | lockfileVersion: 5.4
2 |
3 | importers:
4 |
5 | .:
6 | specifiers:
7 | '@types/node': ^18.11.9
8 | '@vue/runtime-core': ^3.2.41
9 | chalk: ^5.2.0
10 | prettier: ^2.8.0
11 | shiki: ^0.11.1
12 | tsup: ^6.5.0
13 | typescript: ^4.9.3
14 | vue: ^3.2.41
15 | vue-termui: 0.0.17
16 | dependencies:
17 | shiki: 0.11.1
18 | devDependencies:
19 | '@types/node': 18.11.9
20 | '@vue/runtime-core': 3.2.45
21 | chalk: 5.2.0
22 | prettier: 2.8.0
23 | tsup: 6.5.0_typescript@4.9.3
24 | typescript: 4.9.3
25 | vue: 3.2.45
26 | vue-termui: 0.0.17_@vue+runtime-core@3.2.45
27 |
28 | playground:
29 | specifiers:
30 | '@vitejs/plugin-vue': ^3.2.0
31 | '@vue-termui/cli': '*'
32 | '@vue-termui/syntax-highlight': workspace:*
33 | '@vue/compiler-sfc': ^3.2.41
34 | unplugin-auto-import: ^0.11.4
35 | unplugin-vue-components: ^0.22.9
36 | vite: ^3.2.2
37 | vite-plugin-vue-termui: '*'
38 | devDependencies:
39 | '@vitejs/plugin-vue': 3.2.0_vite@3.2.4+vue@3.2.45
40 | '@vue-termui/cli': 0.0.17_knlmom4ulbw2cqpi6mmbcyvp2i
41 | '@vue-termui/syntax-highlight': link:..
42 | '@vue/compiler-sfc': 3.2.45
43 | unplugin-auto-import: 0.11.5
44 | unplugin-vue-components: 0.22.11_vue@3.2.45
45 | vite: 3.2.4
46 | vite-plugin-vue-termui: 0.0.11_e2giwq5f6xgswi3b3jh2crkzwe
47 |
48 | packages:
49 |
50 | /@antfu/utils/0.7.0:
51 | resolution: {integrity: sha512-tH38JQEFLOdvZJC32ZbPTvWOQzxEtOQh5jOqBPDLw8sxBr0PFF+f2Csgwb7mRpD0QB1xu+PDoAifIPiCNneeNA==}
52 | dev: true
53 |
54 | /@babel/helper-string-parser/7.19.4:
55 | resolution: {integrity: sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==}
56 | engines: {node: '>=6.9.0'}
57 | dev: true
58 |
59 | /@babel/helper-validator-identifier/7.19.1:
60 | resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==}
61 | engines: {node: '>=6.9.0'}
62 | dev: true
63 |
64 | /@babel/parser/7.20.5:
65 | resolution: {integrity: sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA==}
66 | engines: {node: '>=6.0.0'}
67 | hasBin: true
68 | dependencies:
69 | '@babel/types': 7.20.5
70 | dev: true
71 |
72 | /@babel/types/7.20.5:
73 | resolution: {integrity: sha512-c9fst/h2/dcF7H+MJKZ2T0KjEQ8hY/BNnDk/H3XY8C4Aw/eWQXWn/lWntHF9ooUBnGmEvbfGrTgLWc+um0YDUg==}
74 | engines: {node: '>=6.9.0'}
75 | dependencies:
76 | '@babel/helper-string-parser': 7.19.4
77 | '@babel/helper-validator-identifier': 7.19.1
78 | to-fast-properties: 2.0.0
79 | dev: true
80 |
81 | /@esbuild/android-arm/0.15.16:
82 | resolution: {integrity: sha512-nyB6CH++2mSgx3GbnrJsZSxzne5K0HMyNIWafDHqYy7IwxFc4fd/CgHVZXr8Eh+Q3KbIAcAe3vGyqIPhGblvMQ==}
83 | engines: {node: '>=12'}
84 | cpu: [arm]
85 | os: [android]
86 | requiresBuild: true
87 | dev: true
88 | optional: true
89 |
90 | /@esbuild/linux-loong64/0.15.16:
91 | resolution: {integrity: sha512-SDLfP1uoB0HZ14CdVYgagllgrG7Mdxhkt4jDJOKl/MldKrkQ6vDJMZKl2+5XsEY/Lzz37fjgLQoJBGuAw/x8kQ==}
92 | engines: {node: '>=12'}
93 | cpu: [loong64]
94 | os: [linux]
95 | requiresBuild: true
96 | dev: true
97 | optional: true
98 |
99 | /@nodelib/fs.scandir/2.1.5:
100 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
101 | engines: {node: '>= 8'}
102 | dependencies:
103 | '@nodelib/fs.stat': 2.0.5
104 | run-parallel: 1.2.0
105 | dev: true
106 |
107 | /@nodelib/fs.stat/2.0.5:
108 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
109 | engines: {node: '>= 8'}
110 | dev: true
111 |
112 | /@nodelib/fs.walk/1.2.8:
113 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
114 | engines: {node: '>= 8'}
115 | dependencies:
116 | '@nodelib/fs.scandir': 2.1.5
117 | fastq: 1.13.0
118 | dev: true
119 |
120 | /@rollup/pluginutils/5.0.2:
121 | resolution: {integrity: sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==}
122 | engines: {node: '>=14.0.0'}
123 | peerDependencies:
124 | rollup: ^1.20.0||^2.0.0||^3.0.0
125 | peerDependenciesMeta:
126 | rollup:
127 | optional: true
128 | dependencies:
129 | '@types/estree': 1.0.0
130 | estree-walker: 2.0.2
131 | picomatch: 2.3.1
132 | dev: true
133 |
134 | /@types/estree/1.0.0:
135 | resolution: {integrity: sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==}
136 | dev: true
137 |
138 | /@types/node/18.11.9:
139 | resolution: {integrity: sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==}
140 | dev: true
141 |
142 | /@types/yoga-layout/1.9.2:
143 | resolution: {integrity: sha512-S9q47ByT2pPvD65IvrWp7qppVMpk9WGMbVq9wbWZOHg6tnXSD4vyhao6nOSBwwfDdV2p3Kx9evA9vI+XWTfDvw==}
144 | dev: true
145 |
146 | /@vitejs/plugin-vue/3.2.0_vite@3.2.4+vue@3.2.45:
147 | resolution: {integrity: sha512-E0tnaL4fr+qkdCNxJ+Xd0yM31UwMkQje76fsDVBBUCoGOUPexu2VDUYHL8P4CwV+zMvWw6nlRw19OnRKmYAJpw==}
148 | engines: {node: ^14.18.0 || >=16.0.0}
149 | peerDependencies:
150 | vite: ^3.0.0
151 | vue: ^3.2.25
152 | dependencies:
153 | vite: 3.2.4
154 | vue: 3.2.45
155 | dev: true
156 |
157 | /@vue-termui/cli/0.0.17_knlmom4ulbw2cqpi6mmbcyvp2i:
158 | resolution: {integrity: sha512-VkY7OVb/UVhHMP6exAwidnb+HgC1/PHdvXJxXrpTOparNI59sD6ByLv5F3MDcx6mCKbkMVAE5P1syTFF88vJNg==}
159 | engines: {node: '>=14.0.0'}
160 | hasBin: true
161 | peerDependencies:
162 | vite: ^3.1.3
163 | vite-plugin-vue-termui: '>=0.0.11'
164 | vue-termui: '>=0.0.14'
165 | dependencies:
166 | picocolors: 1.0.0
167 | vite: 3.2.4
168 | vite-node: 0.24.5
169 | vite-plugin-vue-termui: 0.0.11_e2giwq5f6xgswi3b3jh2crkzwe
170 | vue-termui: 0.0.17_@vue+runtime-core@3.2.45
171 | ws: 8.11.0
172 | transitivePeerDependencies:
173 | - '@types/node'
174 | - bufferutil
175 | - less
176 | - sass
177 | - stylus
178 | - sugarss
179 | - supports-color
180 | - terser
181 | - utf-8-validate
182 | dev: true
183 |
184 | /@vue/compiler-core/3.2.45:
185 | resolution: {integrity: sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A==}
186 | dependencies:
187 | '@babel/parser': 7.20.5
188 | '@vue/shared': 3.2.45
189 | estree-walker: 2.0.2
190 | source-map: 0.6.1
191 | dev: true
192 |
193 | /@vue/compiler-dom/3.2.45:
194 | resolution: {integrity: sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==}
195 | dependencies:
196 | '@vue/compiler-core': 3.2.45
197 | '@vue/shared': 3.2.45
198 | dev: true
199 |
200 | /@vue/compiler-sfc/3.2.45:
201 | resolution: {integrity: sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==}
202 | dependencies:
203 | '@babel/parser': 7.20.5
204 | '@vue/compiler-core': 3.2.45
205 | '@vue/compiler-dom': 3.2.45
206 | '@vue/compiler-ssr': 3.2.45
207 | '@vue/reactivity-transform': 3.2.45
208 | '@vue/shared': 3.2.45
209 | estree-walker: 2.0.2
210 | magic-string: 0.25.9
211 | postcss: 8.4.19
212 | source-map: 0.6.1
213 | dev: true
214 |
215 | /@vue/compiler-ssr/3.2.45:
216 | resolution: {integrity: sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==}
217 | dependencies:
218 | '@vue/compiler-dom': 3.2.45
219 | '@vue/shared': 3.2.45
220 | dev: true
221 |
222 | /@vue/reactivity-transform/3.2.45:
223 | resolution: {integrity: sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==}
224 | dependencies:
225 | '@babel/parser': 7.20.5
226 | '@vue/compiler-core': 3.2.45
227 | '@vue/shared': 3.2.45
228 | estree-walker: 2.0.2
229 | magic-string: 0.25.9
230 | dev: true
231 |
232 | /@vue/reactivity/3.2.45:
233 | resolution: {integrity: sha512-PRvhCcQcyEVohW0P8iQ7HDcIOXRjZfAsOds3N99X/Dzewy8TVhTCT4uXpAHfoKjVTJRA0O0K+6QNkDIZAxNi3A==}
234 | dependencies:
235 | '@vue/shared': 3.2.45
236 | dev: true
237 |
238 | /@vue/runtime-core/3.2.45:
239 | resolution: {integrity: sha512-gzJiTA3f74cgARptqzYswmoQx0fIA+gGYBfokYVhF8YSXjWTUA2SngRzZRku2HbGbjzB6LBYSbKGIaK8IW+s0A==}
240 | dependencies:
241 | '@vue/reactivity': 3.2.45
242 | '@vue/shared': 3.2.45
243 | dev: true
244 |
245 | /@vue/runtime-dom/3.2.45:
246 | resolution: {integrity: sha512-cy88YpfP5Ue2bDBbj75Cb4bIEZUMM/mAkDMfqDTpUYVgTf/kuQ2VQ8LebuZ8k6EudgH8pYhsGWHlY0lcxlvTwA==}
247 | dependencies:
248 | '@vue/runtime-core': 3.2.45
249 | '@vue/shared': 3.2.45
250 | csstype: 2.6.21
251 | dev: true
252 |
253 | /@vue/server-renderer/3.2.45_vue@3.2.45:
254 | resolution: {integrity: sha512-ebiMq7q24WBU1D6uhPK//2OTR1iRIyxjF5iVq/1a5I1SDMDyDu4Ts6fJaMnjrvD3MqnaiFkKQj+LKAgz5WIK3g==}
255 | peerDependencies:
256 | vue: 3.2.45
257 | dependencies:
258 | '@vue/compiler-ssr': 3.2.45
259 | '@vue/shared': 3.2.45
260 | vue: 3.2.45
261 | dev: true
262 |
263 | /@vue/shared/3.2.45:
264 | resolution: {integrity: sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==}
265 | dev: true
266 |
267 | /acorn/8.8.1:
268 | resolution: {integrity: sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==}
269 | engines: {node: '>=0.4.0'}
270 | hasBin: true
271 | dev: true
272 |
273 | /ansi-escapes/5.0.0:
274 | resolution: {integrity: sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==}
275 | engines: {node: '>=12'}
276 | dependencies:
277 | type-fest: 1.4.0
278 | dev: true
279 |
280 | /ansi-escapes/6.0.0:
281 | resolution: {integrity: sha512-IG23inYII3dWlU2EyiAiGj6Bwal5GzsgPMwjYGvc1HPE2dgbj4ZB5ToWBKSquKw74nB3TIuOwaI6/jSULzfgrw==}
282 | engines: {node: '>=14.16'}
283 | dependencies:
284 | type-fest: 3.3.0
285 | dev: true
286 |
287 | /ansi-regex/6.0.1:
288 | resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==}
289 | engines: {node: '>=12'}
290 | dev: true
291 |
292 | /ansi-styles/6.2.1:
293 | resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==}
294 | engines: {node: '>=12'}
295 | dev: true
296 |
297 | /any-promise/1.3.0:
298 | resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==}
299 | dev: true
300 |
301 | /anymatch/3.1.3:
302 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
303 | engines: {node: '>= 8'}
304 | dependencies:
305 | normalize-path: 3.0.0
306 | picomatch: 2.3.1
307 | dev: true
308 |
309 | /array-union/2.1.0:
310 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
311 | engines: {node: '>=8'}
312 | dev: true
313 |
314 | /balanced-match/1.0.2:
315 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
316 | dev: true
317 |
318 | /binary-extensions/2.2.0:
319 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==}
320 | engines: {node: '>=8'}
321 | dev: true
322 |
323 | /brace-expansion/1.1.11:
324 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
325 | dependencies:
326 | balanced-match: 1.0.2
327 | concat-map: 0.0.1
328 | dev: true
329 |
330 | /brace-expansion/2.0.1:
331 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
332 | dependencies:
333 | balanced-match: 1.0.2
334 | dev: true
335 |
336 | /braces/3.0.2:
337 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
338 | engines: {node: '>=8'}
339 | dependencies:
340 | fill-range: 7.0.1
341 | dev: true
342 |
343 | /bundle-require/3.1.2_esbuild@0.15.16:
344 | resolution: {integrity: sha512-Of6l6JBAxiyQ5axFxUM6dYeP/W7X2Sozeo/4EYB9sJhL+dqL7TKjg+shwxp6jlu/6ZSERfsYtIpSJ1/x3XkAEA==}
345 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
346 | peerDependencies:
347 | esbuild: '>=0.13'
348 | dependencies:
349 | esbuild: 0.15.16
350 | load-tsconfig: 0.2.3
351 | dev: true
352 |
353 | /cac/6.7.14:
354 | resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==}
355 | engines: {node: '>=8'}
356 | dev: true
357 |
358 | /chalk/5.2.0:
359 | resolution: {integrity: sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==}
360 | engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
361 | dev: true
362 |
363 | /chokidar/3.5.3:
364 | resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==}
365 | engines: {node: '>= 8.10.0'}
366 | dependencies:
367 | anymatch: 3.1.3
368 | braces: 3.0.2
369 | glob-parent: 5.1.2
370 | is-binary-path: 2.1.0
371 | is-glob: 4.0.3
372 | normalize-path: 3.0.0
373 | readdirp: 3.6.0
374 | optionalDependencies:
375 | fsevents: 2.3.2
376 | dev: true
377 |
378 | /cli-boxes/3.0.0:
379 | resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==}
380 | engines: {node: '>=10'}
381 | dev: true
382 |
383 | /cli-cursor/4.0.0:
384 | resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==}
385 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
386 | dependencies:
387 | restore-cursor: 4.0.0
388 | dev: true
389 |
390 | /cli-truncate/3.1.0:
391 | resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==}
392 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
393 | dependencies:
394 | slice-ansi: 5.0.0
395 | string-width: 5.1.2
396 | dev: true
397 |
398 | /commander/4.1.1:
399 | resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==}
400 | engines: {node: '>= 6'}
401 | dev: true
402 |
403 | /concat-map/0.0.1:
404 | resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=}
405 | dev: true
406 |
407 | /cross-spawn/7.0.3:
408 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
409 | engines: {node: '>= 8'}
410 | dependencies:
411 | path-key: 3.1.1
412 | shebang-command: 2.0.0
413 | which: 2.0.2
414 | dev: true
415 |
416 | /csstype/2.6.21:
417 | resolution: {integrity: sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==}
418 | dev: true
419 |
420 | /debug/4.3.4:
421 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
422 | engines: {node: '>=6.0'}
423 | peerDependencies:
424 | supports-color: '*'
425 | peerDependenciesMeta:
426 | supports-color:
427 | optional: true
428 | dependencies:
429 | ms: 2.1.2
430 | dev: true
431 |
432 | /dir-glob/3.0.1:
433 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
434 | engines: {node: '>=8'}
435 | dependencies:
436 | path-type: 4.0.0
437 | dev: true
438 |
439 | /eastasianwidth/0.2.0:
440 | resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
441 | dev: true
442 |
443 | /emoji-regex/9.2.2:
444 | resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
445 | dev: true
446 |
447 | /esbuild-android-64/0.15.16:
448 | resolution: {integrity: sha512-Vwkv/sT0zMSgPSVO3Jlt1pUbnZuOgtOQJkJkyyJFAlLe7BiT8e9ESzo0zQSx4c3wW4T6kGChmKDPMbWTgtliQA==}
449 | engines: {node: '>=12'}
450 | cpu: [x64]
451 | os: [android]
452 | requiresBuild: true
453 | dev: true
454 | optional: true
455 |
456 | /esbuild-android-arm64/0.15.16:
457 | resolution: {integrity: sha512-lqfKuofMExL5niNV3gnhMUYacSXfsvzTa/58sDlBET/hCOG99Zmeh+lz6kvdgvGOsImeo6J9SW21rFCogNPLxg==}
458 | engines: {node: '>=12'}
459 | cpu: [arm64]
460 | os: [android]
461 | requiresBuild: true
462 | dev: true
463 | optional: true
464 |
465 | /esbuild-darwin-64/0.15.16:
466 | resolution: {integrity: sha512-wo2VWk/n/9V2TmqUZ/KpzRjCEcr00n7yahEdmtzlrfQ3lfMCf3Wa+0sqHAbjk3C6CKkR3WKK/whkMq5Gj4Da9g==}
467 | engines: {node: '>=12'}
468 | cpu: [x64]
469 | os: [darwin]
470 | requiresBuild: true
471 | dev: true
472 | optional: true
473 |
474 | /esbuild-darwin-arm64/0.15.16:
475 | resolution: {integrity: sha512-fMXaUr5ou0M4WnewBKsspMtX++C1yIa3nJ5R2LSbLCfJT3uFdcRoU/NZjoM4kOMKyOD9Sa/2vlgN8G07K3SJnw==}
476 | engines: {node: '>=12'}
477 | cpu: [arm64]
478 | os: [darwin]
479 | requiresBuild: true
480 | dev: true
481 | optional: true
482 |
483 | /esbuild-freebsd-64/0.15.16:
484 | resolution: {integrity: sha512-UzIc0xlRx5x9kRuMr+E3+hlSOxa/aRqfuMfiYBXu2jJ8Mzej4lGL7+o6F5hzhLqWfWm1GWHNakIdlqg1ayaTNQ==}
485 | engines: {node: '>=12'}
486 | cpu: [x64]
487 | os: [freebsd]
488 | requiresBuild: true
489 | dev: true
490 | optional: true
491 |
492 | /esbuild-freebsd-arm64/0.15.16:
493 | resolution: {integrity: sha512-8xyiYuGc0DLZphFQIiYaLHlfoP+hAN9RHbE+Ibh8EUcDNHAqbQgUrQg7pE7Bo00rXmQ5Ap6KFgcR0b4ALZls1g==}
494 | engines: {node: '>=12'}
495 | cpu: [arm64]
496 | os: [freebsd]
497 | requiresBuild: true
498 | dev: true
499 | optional: true
500 |
501 | /esbuild-linux-32/0.15.16:
502 | resolution: {integrity: sha512-iGijUTV+0kIMyUVoynK0v+32Oi8yyp0xwMzX69GX+5+AniNy/C/AL1MjFTsozRp/3xQPl7jVux/PLe2ds10/2w==}
503 | engines: {node: '>=12'}
504 | cpu: [ia32]
505 | os: [linux]
506 | requiresBuild: true
507 | dev: true
508 | optional: true
509 |
510 | /esbuild-linux-64/0.15.16:
511 | resolution: {integrity: sha512-tuSOjXdLw7VzaUj89fIdAaQT7zFGbKBcz4YxbWrOiXkwscYgE7HtTxUavreBbnRkGxKwr9iT/gmeJWNm4djy/g==}
512 | engines: {node: '>=12'}
513 | cpu: [x64]
514 | os: [linux]
515 | requiresBuild: true
516 | dev: true
517 | optional: true
518 |
519 | /esbuild-linux-arm/0.15.16:
520 | resolution: {integrity: sha512-XKcrxCEXDTOuoRj5l12tJnkvuxXBMKwEC5j0JISw3ziLf0j4zIwXbKbTmUrKFWbo6ZgvNpa7Y5dnbsjVvH39bQ==}
521 | engines: {node: '>=12'}
522 | cpu: [arm]
523 | os: [linux]
524 | requiresBuild: true
525 | dev: true
526 | optional: true
527 |
528 | /esbuild-linux-arm64/0.15.16:
529 | resolution: {integrity: sha512-mPYksnfHnemNrvjrDhZyixL/AfbJN0Xn9S34ZOHYdh6/jJcNd8iTsv3JwJoEvTJqjMggjMhGUPJAdjnFBHoH8A==}
530 | engines: {node: '>=12'}
531 | cpu: [arm64]
532 | os: [linux]
533 | requiresBuild: true
534 | dev: true
535 | optional: true
536 |
537 | /esbuild-linux-mips64le/0.15.16:
538 | resolution: {integrity: sha512-kSJO2PXaxfm0pWY39+YX+QtpFqyyrcp0ZeI8QPTrcFVQoWEPiPVtOfTZeS3ZKedfH+Ga38c4DSzmKMQJocQv6A==}
539 | engines: {node: '>=12'}
540 | cpu: [mips64el]
541 | os: [linux]
542 | requiresBuild: true
543 | dev: true
544 | optional: true
545 |
546 | /esbuild-linux-ppc64le/0.15.16:
547 | resolution: {integrity: sha512-NimPikwkBY0yGABw6SlhKrtT35sU4O23xkhlrTT/O6lSxv3Pm5iSc6OYaqVAHWkLdVf31bF4UDVFO+D990WpAA==}
548 | engines: {node: '>=12'}
549 | cpu: [ppc64]
550 | os: [linux]
551 | requiresBuild: true
552 | dev: true
553 | optional: true
554 |
555 | /esbuild-linux-riscv64/0.15.16:
556 | resolution: {integrity: sha512-ty2YUHZlwFOwp7pR+J87M4CVrXJIf5ZZtU/umpxgVJBXvWjhziSLEQxvl30SYfUPq0nzeWKBGw5i/DieiHeKfw==}
557 | engines: {node: '>=12'}
558 | cpu: [riscv64]
559 | os: [linux]
560 | requiresBuild: true
561 | dev: true
562 | optional: true
563 |
564 | /esbuild-linux-s390x/0.15.16:
565 | resolution: {integrity: sha512-VkZaGssvPDQtx4fvVdZ9czezmyWyzpQhEbSNsHZZN0BHvxRLOYAQ7sjay8nMQwYswP6O2KlZluRMNPYefFRs+w==}
566 | engines: {node: '>=12'}
567 | cpu: [s390x]
568 | os: [linux]
569 | requiresBuild: true
570 | dev: true
571 | optional: true
572 |
573 | /esbuild-netbsd-64/0.15.16:
574 | resolution: {integrity: sha512-ElQ9rhdY51et6MJTWrCPbqOd/YuPowD7Cxx3ee8wlmXQQVW7UvQI6nSprJ9uVFQISqSF5e5EWpwWqXZsECLvXg==}
575 | engines: {node: '>=12'}
576 | cpu: [x64]
577 | os: [netbsd]
578 | requiresBuild: true
579 | dev: true
580 | optional: true
581 |
582 | /esbuild-openbsd-64/0.15.16:
583 | resolution: {integrity: sha512-KgxMHyxMCT+NdLQE1zVJEsLSt2QQBAvJfmUGDmgEq8Fvjrf6vSKB00dVHUEDKcJwMID6CdgCpvYNt999tIYhqA==}
584 | engines: {node: '>=12'}
585 | cpu: [x64]
586 | os: [openbsd]
587 | requiresBuild: true
588 | dev: true
589 | optional: true
590 |
591 | /esbuild-sunos-64/0.15.16:
592 | resolution: {integrity: sha512-exSAx8Phj7QylXHlMfIyEfNrmqnLxFqLxdQF6MBHPdHAjT7fsKaX6XIJn+aQEFiOcE4X8e7VvdMCJ+WDZxjSRQ==}
593 | engines: {node: '>=12'}
594 | cpu: [x64]
595 | os: [sunos]
596 | requiresBuild: true
597 | dev: true
598 | optional: true
599 |
600 | /esbuild-windows-32/0.15.16:
601 | resolution: {integrity: sha512-zQgWpY5pUCSTOwqKQ6/vOCJfRssTvxFuEkpB4f2VUGPBpdddZfdj8hbZuFRdZRPIVHvN7juGcpgCA/XCF37mAQ==}
602 | engines: {node: '>=12'}
603 | cpu: [ia32]
604 | os: [win32]
605 | requiresBuild: true
606 | dev: true
607 | optional: true
608 |
609 | /esbuild-windows-64/0.15.16:
610 | resolution: {integrity: sha512-HjW1hHRLSncnM3MBCP7iquatHVJq9l0S2xxsHHj4yzf4nm9TU4Z7k4NkeMlD/dHQ4jPlQQhwcMvwbJiOefSuZw==}
611 | engines: {node: '>=12'}
612 | cpu: [x64]
613 | os: [win32]
614 | requiresBuild: true
615 | dev: true
616 | optional: true
617 |
618 | /esbuild-windows-arm64/0.15.16:
619 | resolution: {integrity: sha512-oCcUKrJaMn04Vxy9Ekd8x23O8LoU01+4NOkQ2iBToKgnGj5eo1vU9i27NQZ9qC8NFZgnQQZg5oZWAejmbsppNA==}
620 | engines: {node: '>=12'}
621 | cpu: [arm64]
622 | os: [win32]
623 | requiresBuild: true
624 | dev: true
625 | optional: true
626 |
627 | /esbuild/0.15.16:
628 | resolution: {integrity: sha512-o6iS9zxdHrrojjlj6pNGC2NAg86ECZqIETswTM5KmJitq+R1YmahhWtMumeQp9lHqJaROGnsBi2RLawGnfo5ZQ==}
629 | engines: {node: '>=12'}
630 | hasBin: true
631 | requiresBuild: true
632 | optionalDependencies:
633 | '@esbuild/android-arm': 0.15.16
634 | '@esbuild/linux-loong64': 0.15.16
635 | esbuild-android-64: 0.15.16
636 | esbuild-android-arm64: 0.15.16
637 | esbuild-darwin-64: 0.15.16
638 | esbuild-darwin-arm64: 0.15.16
639 | esbuild-freebsd-64: 0.15.16
640 | esbuild-freebsd-arm64: 0.15.16
641 | esbuild-linux-32: 0.15.16
642 | esbuild-linux-64: 0.15.16
643 | esbuild-linux-arm: 0.15.16
644 | esbuild-linux-arm64: 0.15.16
645 | esbuild-linux-mips64le: 0.15.16
646 | esbuild-linux-ppc64le: 0.15.16
647 | esbuild-linux-riscv64: 0.15.16
648 | esbuild-linux-s390x: 0.15.16
649 | esbuild-netbsd-64: 0.15.16
650 | esbuild-openbsd-64: 0.15.16
651 | esbuild-sunos-64: 0.15.16
652 | esbuild-windows-32: 0.15.16
653 | esbuild-windows-64: 0.15.16
654 | esbuild-windows-arm64: 0.15.16
655 | dev: true
656 |
657 | /escape-string-regexp/5.0.0:
658 | resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
659 | engines: {node: '>=12'}
660 | dev: true
661 |
662 | /estree-walker/2.0.2:
663 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
664 | dev: true
665 |
666 | /execa/5.1.1:
667 | resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
668 | engines: {node: '>=10'}
669 | dependencies:
670 | cross-spawn: 7.0.3
671 | get-stream: 6.0.1
672 | human-signals: 2.1.0
673 | is-stream: 2.0.1
674 | merge-stream: 2.0.0
675 | npm-run-path: 4.0.1
676 | onetime: 5.1.2
677 | signal-exit: 3.0.7
678 | strip-final-newline: 2.0.0
679 | dev: true
680 |
681 | /fast-glob/3.2.12:
682 | resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==}
683 | engines: {node: '>=8.6.0'}
684 | dependencies:
685 | '@nodelib/fs.stat': 2.0.5
686 | '@nodelib/fs.walk': 1.2.8
687 | glob-parent: 5.1.2
688 | merge2: 1.4.1
689 | micromatch: 4.0.5
690 | dev: true
691 |
692 | /fastq/1.13.0:
693 | resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==}
694 | dependencies:
695 | reusify: 1.0.4
696 | dev: true
697 |
698 | /fill-range/7.0.1:
699 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
700 | engines: {node: '>=8'}
701 | dependencies:
702 | to-regex-range: 5.0.1
703 | dev: true
704 |
705 | /fs.realpath/1.0.0:
706 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
707 | dev: true
708 |
709 | /fsevents/2.3.2:
710 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
711 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
712 | os: [darwin]
713 | requiresBuild: true
714 | dev: true
715 | optional: true
716 |
717 | /function-bind/1.1.1:
718 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==}
719 | dev: true
720 |
721 | /get-stream/6.0.1:
722 | resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
723 | engines: {node: '>=10'}
724 | dev: true
725 |
726 | /glob-parent/5.1.2:
727 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
728 | engines: {node: '>= 6'}
729 | dependencies:
730 | is-glob: 4.0.3
731 | dev: true
732 |
733 | /glob/7.1.6:
734 | resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==}
735 | dependencies:
736 | fs.realpath: 1.0.0
737 | inflight: 1.0.6
738 | inherits: 2.0.4
739 | minimatch: 3.1.2
740 | once: 1.4.0
741 | path-is-absolute: 1.0.1
742 | dev: true
743 |
744 | /globby/11.1.0:
745 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
746 | engines: {node: '>=10'}
747 | dependencies:
748 | array-union: 2.1.0
749 | dir-glob: 3.0.1
750 | fast-glob: 3.2.12
751 | ignore: 5.2.1
752 | merge2: 1.4.1
753 | slash: 3.0.0
754 | dev: true
755 |
756 | /has-flag/4.0.0:
757 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
758 | engines: {node: '>=8'}
759 | dev: true
760 |
761 | /has/1.0.3:
762 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==}
763 | engines: {node: '>= 0.4.0'}
764 | dependencies:
765 | function-bind: 1.1.1
766 | dev: true
767 |
768 | /human-signals/2.1.0:
769 | resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
770 | engines: {node: '>=10.17.0'}
771 | dev: true
772 |
773 | /ignore/5.2.1:
774 | resolution: {integrity: sha512-d2qQLzTJ9WxQftPAuEQpSPmKqzxePjzVbpAVv62AQ64NTL+wR4JkrVqR/LqFsFEUsHDAiId52mJteHDFuDkElA==}
775 | engines: {node: '>= 4'}
776 | dev: true
777 |
778 | /indent-string/5.0.0:
779 | resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==}
780 | engines: {node: '>=12'}
781 | dev: true
782 |
783 | /inflight/1.0.6:
784 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
785 | dependencies:
786 | once: 1.4.0
787 | wrappy: 1.0.2
788 | dev: true
789 |
790 | /inherits/2.0.4:
791 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
792 | dev: true
793 |
794 | /is-binary-path/2.1.0:
795 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
796 | engines: {node: '>=8'}
797 | dependencies:
798 | binary-extensions: 2.2.0
799 | dev: true
800 |
801 | /is-core-module/2.11.0:
802 | resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==}
803 | dependencies:
804 | has: 1.0.3
805 | dev: true
806 |
807 | /is-extglob/2.1.1:
808 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
809 | engines: {node: '>=0.10.0'}
810 | dev: true
811 |
812 | /is-fullwidth-code-point/4.0.0:
813 | resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==}
814 | engines: {node: '>=12'}
815 | dev: true
816 |
817 | /is-glob/4.0.3:
818 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
819 | engines: {node: '>=0.10.0'}
820 | dependencies:
821 | is-extglob: 2.1.1
822 | dev: true
823 |
824 | /is-number/7.0.0:
825 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
826 | engines: {node: '>=0.12.0'}
827 | dev: true
828 |
829 | /is-stream/2.0.1:
830 | resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
831 | engines: {node: '>=8'}
832 | dev: true
833 |
834 | /isexe/2.0.0:
835 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
836 | dev: true
837 |
838 | /joycon/3.1.1:
839 | resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==}
840 | engines: {node: '>=10'}
841 | dev: true
842 |
843 | /jsonc-parser/3.2.0:
844 | resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==}
845 |
846 | /lilconfig/2.0.6:
847 | resolution: {integrity: sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==}
848 | engines: {node: '>=10'}
849 | dev: true
850 |
851 | /lines-and-columns/1.2.4:
852 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
853 | dev: true
854 |
855 | /load-tsconfig/0.2.3:
856 | resolution: {integrity: sha512-iyT2MXws+dc2Wi6o3grCFtGXpeMvHmJqS27sMPGtV2eUu4PeFnG+33I8BlFK1t1NWMjOpcx9bridn5yxLDX2gQ==}
857 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
858 | dev: true
859 |
860 | /local-pkg/0.4.2:
861 | resolution: {integrity: sha512-mlERgSPrbxU3BP4qBqAvvwlgW4MTg78iwJdGGnv7kibKjWcJksrG3t6LB5lXI93wXRDvG4NpUgJFmTG4T6rdrg==}
862 | engines: {node: '>=14'}
863 | dev: true
864 |
865 | /lodash.sortby/4.7.0:
866 | resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==}
867 | dev: true
868 |
869 | /magic-string/0.25.9:
870 | resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==}
871 | dependencies:
872 | sourcemap-codec: 1.4.8
873 | dev: true
874 |
875 | /magic-string/0.26.7:
876 | resolution: {integrity: sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow==}
877 | engines: {node: '>=12'}
878 | dependencies:
879 | sourcemap-codec: 1.4.8
880 | dev: true
881 |
882 | /merge-stream/2.0.0:
883 | resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
884 | dev: true
885 |
886 | /merge2/1.4.1:
887 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
888 | engines: {node: '>= 8'}
889 | dev: true
890 |
891 | /micromatch/4.0.5:
892 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
893 | engines: {node: '>=8.6'}
894 | dependencies:
895 | braces: 3.0.2
896 | picomatch: 2.3.1
897 | dev: true
898 |
899 | /mimic-fn/2.1.0:
900 | resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
901 | engines: {node: '>=6'}
902 | dev: true
903 |
904 | /minimatch/3.1.2:
905 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
906 | dependencies:
907 | brace-expansion: 1.1.11
908 | dev: true
909 |
910 | /minimatch/5.1.0:
911 | resolution: {integrity: sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==}
912 | engines: {node: '>=10'}
913 | dependencies:
914 | brace-expansion: 2.0.1
915 | dev: true
916 |
917 | /mlly/0.5.17:
918 | resolution: {integrity: sha512-Rn+ai4G+CQXptDFSRNnChEgNr+xAEauYhwRvpPl/UHStTlgkIftplgJRsA2OXPuoUn86K4XAjB26+x5CEvVb6A==}
919 | dependencies:
920 | acorn: 8.8.1
921 | pathe: 1.0.0
922 | pkg-types: 1.0.1
923 | ufo: 1.0.1
924 | dev: true
925 |
926 | /mlly/1.0.0:
927 | resolution: {integrity: sha512-QL108Hwt+u9bXdWgOI0dhzZfACovn5Aen4Xvc8Jasd9ouRH4NjnrXEiyP3nVvJo91zPlYjVRckta0Nt2zfoR6g==}
928 | dependencies:
929 | acorn: 8.8.1
930 | pathe: 1.0.0
931 | pkg-types: 1.0.1
932 | ufo: 1.0.1
933 | dev: true
934 |
935 | /ms/2.1.2:
936 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
937 | dev: true
938 |
939 | /mz/2.7.0:
940 | resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
941 | dependencies:
942 | any-promise: 1.3.0
943 | object-assign: 4.1.1
944 | thenify-all: 1.6.0
945 | dev: true
946 |
947 | /nanoid/3.3.4:
948 | resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==}
949 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
950 | hasBin: true
951 | dev: true
952 |
953 | /normalize-path/3.0.0:
954 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
955 | engines: {node: '>=0.10.0'}
956 | dev: true
957 |
958 | /npm-run-path/4.0.1:
959 | resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
960 | engines: {node: '>=8'}
961 | dependencies:
962 | path-key: 3.1.1
963 | dev: true
964 |
965 | /object-assign/4.1.1:
966 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
967 | engines: {node: '>=0.10.0'}
968 | dev: true
969 |
970 | /once/1.4.0:
971 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
972 | dependencies:
973 | wrappy: 1.0.2
974 | dev: true
975 |
976 | /onetime/5.1.2:
977 | resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
978 | engines: {node: '>=6'}
979 | dependencies:
980 | mimic-fn: 2.1.0
981 | dev: true
982 |
983 | /path-is-absolute/1.0.1:
984 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
985 | engines: {node: '>=0.10.0'}
986 | dev: true
987 |
988 | /path-key/3.1.1:
989 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
990 | engines: {node: '>=8'}
991 | dev: true
992 |
993 | /path-parse/1.0.7:
994 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
995 | dev: true
996 |
997 | /path-type/4.0.0:
998 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
999 | engines: {node: '>=8'}
1000 | dev: true
1001 |
1002 | /pathe/0.2.0:
1003 | resolution: {integrity: sha512-sTitTPYnn23esFR3RlqYBWn4c45WGeLcsKzQiUpXJAyfcWkolvlYpV8FLo7JishK946oQwMFUCHXQ9AjGPKExw==}
1004 | dev: true
1005 |
1006 | /pathe/1.0.0:
1007 | resolution: {integrity: sha512-nPdMG0Pd09HuSsr7QOKUXO2Jr9eqaDiZvDwdyIhNG5SHYujkQHYKDfGQkulBxvbDHz8oHLsTgKN86LSwYzSHAg==}
1008 | dev: true
1009 |
1010 | /picocolors/1.0.0:
1011 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
1012 | dev: true
1013 |
1014 | /picomatch/2.3.1:
1015 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
1016 | engines: {node: '>=8.6'}
1017 | dev: true
1018 |
1019 | /pirates/4.0.5:
1020 | resolution: {integrity: sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==}
1021 | engines: {node: '>= 6'}
1022 | dev: true
1023 |
1024 | /pkg-types/1.0.1:
1025 | resolution: {integrity: sha512-jHv9HB+Ho7dj6ItwppRDDl0iZRYBD0jsakHXtFgoLr+cHSF6xC+QL54sJmWxyGxOLYSHm0afhXhXcQDQqH9z8g==}
1026 | dependencies:
1027 | jsonc-parser: 3.2.0
1028 | mlly: 1.0.0
1029 | pathe: 1.0.0
1030 | dev: true
1031 |
1032 | /postcss-load-config/3.1.4:
1033 | resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==}
1034 | engines: {node: '>= 10'}
1035 | peerDependencies:
1036 | postcss: '>=8.0.9'
1037 | ts-node: '>=9.0.0'
1038 | peerDependenciesMeta:
1039 | postcss:
1040 | optional: true
1041 | ts-node:
1042 | optional: true
1043 | dependencies:
1044 | lilconfig: 2.0.6
1045 | yaml: 1.10.2
1046 | dev: true
1047 |
1048 | /postcss/8.4.19:
1049 | resolution: {integrity: sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==}
1050 | engines: {node: ^10 || ^12 || >=14}
1051 | dependencies:
1052 | nanoid: 3.3.4
1053 | picocolors: 1.0.0
1054 | source-map-js: 1.0.2
1055 | dev: true
1056 |
1057 | /prettier/2.8.0:
1058 | resolution: {integrity: sha512-9Lmg8hTFZKG0Asr/kW9Bp8tJjRVluO8EJQVfY2T7FMw9T5jy4I/Uvx0Rca/XWf50QQ1/SS48+6IJWnrb+2yemA==}
1059 | engines: {node: '>=10.13.0'}
1060 | hasBin: true
1061 | dev: true
1062 |
1063 | /punycode/2.1.1:
1064 | resolution: {integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==}
1065 | engines: {node: '>=6'}
1066 | dev: true
1067 |
1068 | /queue-microtask/1.2.3:
1069 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
1070 | dev: true
1071 |
1072 | /readdirp/3.6.0:
1073 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
1074 | engines: {node: '>=8.10.0'}
1075 | dependencies:
1076 | picomatch: 2.3.1
1077 | dev: true
1078 |
1079 | /resolve-from/5.0.0:
1080 | resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
1081 | engines: {node: '>=8'}
1082 | dev: true
1083 |
1084 | /resolve/1.22.1:
1085 | resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==}
1086 | hasBin: true
1087 | dependencies:
1088 | is-core-module: 2.11.0
1089 | path-parse: 1.0.7
1090 | supports-preserve-symlinks-flag: 1.0.0
1091 | dev: true
1092 |
1093 | /restore-cursor/4.0.0:
1094 | resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==}
1095 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
1096 | dependencies:
1097 | onetime: 5.1.2
1098 | signal-exit: 3.0.7
1099 | dev: true
1100 |
1101 | /reusify/1.0.4:
1102 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
1103 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
1104 | dev: true
1105 |
1106 | /rollup/2.79.1:
1107 | resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==}
1108 | engines: {node: '>=10.0.0'}
1109 | hasBin: true
1110 | optionalDependencies:
1111 | fsevents: 2.3.2
1112 | dev: true
1113 |
1114 | /rollup/3.5.0:
1115 | resolution: {integrity: sha512-TYu2L+TGhmNsXCtByont89u+ATQLcDy6A+++PwLXYunRtOm7XnaD+65s1pvewaOxMYR0eOkMXn9/i0saBxxpnQ==}
1116 | engines: {node: '>=14.18.0', npm: '>=8.0.0'}
1117 | hasBin: true
1118 | optionalDependencies:
1119 | fsevents: 2.3.2
1120 | dev: true
1121 |
1122 | /run-parallel/1.2.0:
1123 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
1124 | dependencies:
1125 | queue-microtask: 1.2.3
1126 | dev: true
1127 |
1128 | /scule/1.0.0:
1129 | resolution: {integrity: sha512-4AsO/FrViE/iDNEPaAQlb77tf0csuq27EsVpy6ett584EcRTp6pTDLoGWVxCD77y5iU5FauOvhsI4o1APwPoSQ==}
1130 | dev: true
1131 |
1132 | /shebang-command/2.0.0:
1133 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
1134 | engines: {node: '>=8'}
1135 | dependencies:
1136 | shebang-regex: 3.0.0
1137 | dev: true
1138 |
1139 | /shebang-regex/3.0.0:
1140 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
1141 | engines: {node: '>=8'}
1142 | dev: true
1143 |
1144 | /shiki/0.11.1:
1145 | resolution: {integrity: sha512-EugY9VASFuDqOexOgXR18ZV+TbFrQHeCpEYaXamO+SZlsnT/2LxuLBX25GGtIrwaEVFXUAbUQ601SWE2rMwWHA==}
1146 | dependencies:
1147 | jsonc-parser: 3.2.0
1148 | vscode-oniguruma: 1.7.0
1149 | vscode-textmate: 6.0.0
1150 | dev: false
1151 |
1152 | /signal-exit/3.0.7:
1153 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
1154 | dev: true
1155 |
1156 | /slash/3.0.0:
1157 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
1158 | engines: {node: '>=8'}
1159 | dev: true
1160 |
1161 | /slice-ansi/5.0.0:
1162 | resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==}
1163 | engines: {node: '>=12'}
1164 | dependencies:
1165 | ansi-styles: 6.2.1
1166 | is-fullwidth-code-point: 4.0.0
1167 | dev: true
1168 |
1169 | /source-map-js/1.0.2:
1170 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
1171 | engines: {node: '>=0.10.0'}
1172 | dev: true
1173 |
1174 | /source-map/0.6.1:
1175 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
1176 | engines: {node: '>=0.10.0'}
1177 | dev: true
1178 |
1179 | /source-map/0.8.0-beta.0:
1180 | resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==}
1181 | engines: {node: '>= 8'}
1182 | dependencies:
1183 | whatwg-url: 7.1.0
1184 | dev: true
1185 |
1186 | /sourcemap-codec/1.4.8:
1187 | resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==}
1188 | dev: true
1189 |
1190 | /string-width/5.1.2:
1191 | resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
1192 | engines: {node: '>=12'}
1193 | dependencies:
1194 | eastasianwidth: 0.2.0
1195 | emoji-regex: 9.2.2
1196 | strip-ansi: 7.0.1
1197 | dev: true
1198 |
1199 | /strip-ansi/7.0.1:
1200 | resolution: {integrity: sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==}
1201 | engines: {node: '>=12'}
1202 | dependencies:
1203 | ansi-regex: 6.0.1
1204 | dev: true
1205 |
1206 | /strip-final-newline/2.0.0:
1207 | resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
1208 | engines: {node: '>=6'}
1209 | dev: true
1210 |
1211 | /strip-literal/1.0.0:
1212 | resolution: {integrity: sha512-5o4LsH1lzBzO9UFH63AJ2ad2/S2AVx6NtjOcaz+VTT2h1RiRvbipW72z8M/lxEhcPHDBQwpDrnTF7sXy/7OwCQ==}
1213 | dependencies:
1214 | acorn: 8.8.1
1215 | dev: true
1216 |
1217 | /sucrase/3.29.0:
1218 | resolution: {integrity: sha512-bZPAuGA5SdFHuzqIhTAqt9fvNEo9rESqXIG3oiKdF8K4UmkQxC4KlNL3lVyAErXp+mPvUqZ5l13qx6TrDIGf3A==}
1219 | engines: {node: '>=8'}
1220 | hasBin: true
1221 | dependencies:
1222 | commander: 4.1.1
1223 | glob: 7.1.6
1224 | lines-and-columns: 1.2.4
1225 | mz: 2.7.0
1226 | pirates: 4.0.5
1227 | ts-interface-checker: 0.1.13
1228 | dev: true
1229 |
1230 | /supports-color/7.2.0:
1231 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
1232 | engines: {node: '>=8'}
1233 | dependencies:
1234 | has-flag: 4.0.0
1235 | dev: true
1236 |
1237 | /supports-hyperlinks/2.3.0:
1238 | resolution: {integrity: sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==}
1239 | engines: {node: '>=8'}
1240 | dependencies:
1241 | has-flag: 4.0.0
1242 | supports-color: 7.2.0
1243 | dev: true
1244 |
1245 | /supports-preserve-symlinks-flag/1.0.0:
1246 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
1247 | engines: {node: '>= 0.4'}
1248 | dev: true
1249 |
1250 | /terminal-link/3.0.0:
1251 | resolution: {integrity: sha512-flFL3m4wuixmf6IfhFJd1YPiLiMuxEc8uHRM1buzIeZPm22Au2pDqBJQgdo7n1WfPU1ONFGv7YDwpFBmHGF6lg==}
1252 | engines: {node: '>=12'}
1253 | dependencies:
1254 | ansi-escapes: 5.0.0
1255 | supports-hyperlinks: 2.3.0
1256 | dev: true
1257 |
1258 | /thenify-all/1.6.0:
1259 | resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==}
1260 | engines: {node: '>=0.8'}
1261 | dependencies:
1262 | thenify: 3.3.1
1263 | dev: true
1264 |
1265 | /thenify/3.3.1:
1266 | resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==}
1267 | dependencies:
1268 | any-promise: 1.3.0
1269 | dev: true
1270 |
1271 | /to-fast-properties/2.0.0:
1272 | resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
1273 | engines: {node: '>=4'}
1274 | dev: true
1275 |
1276 | /to-regex-range/5.0.1:
1277 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
1278 | engines: {node: '>=8.0'}
1279 | dependencies:
1280 | is-number: 7.0.0
1281 | dev: true
1282 |
1283 | /tr46/1.0.1:
1284 | resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==}
1285 | dependencies:
1286 | punycode: 2.1.1
1287 | dev: true
1288 |
1289 | /tree-kill/1.2.2:
1290 | resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==}
1291 | hasBin: true
1292 | dev: true
1293 |
1294 | /ts-interface-checker/0.1.13:
1295 | resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==}
1296 | dev: true
1297 |
1298 | /tsup/6.5.0_typescript@4.9.3:
1299 | resolution: {integrity: sha512-36u82r7rYqRHFkD15R20Cd4ercPkbYmuvRkz3Q1LCm5BsiFNUgpo36zbjVhCOgvjyxNBWNKHsaD5Rl8SykfzNA==}
1300 | engines: {node: '>=14'}
1301 | hasBin: true
1302 | peerDependencies:
1303 | '@swc/core': ^1
1304 | postcss: ^8.4.12
1305 | typescript: ^4.1.0
1306 | peerDependenciesMeta:
1307 | '@swc/core':
1308 | optional: true
1309 | postcss:
1310 | optional: true
1311 | typescript:
1312 | optional: true
1313 | dependencies:
1314 | bundle-require: 3.1.2_esbuild@0.15.16
1315 | cac: 6.7.14
1316 | chokidar: 3.5.3
1317 | debug: 4.3.4
1318 | esbuild: 0.15.16
1319 | execa: 5.1.1
1320 | globby: 11.1.0
1321 | joycon: 3.1.1
1322 | postcss-load-config: 3.1.4
1323 | resolve-from: 5.0.0
1324 | rollup: 3.5.0
1325 | source-map: 0.8.0-beta.0
1326 | sucrase: 3.29.0
1327 | tree-kill: 1.2.2
1328 | typescript: 4.9.3
1329 | transitivePeerDependencies:
1330 | - supports-color
1331 | - ts-node
1332 | dev: true
1333 |
1334 | /type-fest/1.4.0:
1335 | resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==}
1336 | engines: {node: '>=10'}
1337 | dev: true
1338 |
1339 | /type-fest/3.3.0:
1340 | resolution: {integrity: sha512-gezeeOIZyQLGW5uuCeEnXF1aXmtt2afKspXz3YqoOcZ3l/YMJq1pujvgT+cz/Nw1O/7q/kSav5fihJHsC/AOUg==}
1341 | engines: {node: '>=14.16'}
1342 | dev: true
1343 |
1344 | /typescript/4.9.3:
1345 | resolution: {integrity: sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA==}
1346 | engines: {node: '>=4.2.0'}
1347 | hasBin: true
1348 | dev: true
1349 |
1350 | /ufo/1.0.1:
1351 | resolution: {integrity: sha512-boAm74ubXHY7KJQZLlXrtMz52qFvpsbOxDcZOnw/Wf+LS4Mmyu7JxmzD4tDLtUQtmZECypJ0FrCz4QIe6dvKRA==}
1352 | dev: true
1353 |
1354 | /unimport/1.0.1:
1355 | resolution: {integrity: sha512-SEPKl3uyqUvi6c0MnyCmUF9H07CuC9j9p2p33F03LmegU0sxjpnjL0fLKAhh7BTfcKaJKj+1iOiAFtg7P3m5mQ==}
1356 | dependencies:
1357 | '@rollup/pluginutils': 5.0.2
1358 | escape-string-regexp: 5.0.0
1359 | fast-glob: 3.2.12
1360 | local-pkg: 0.4.2
1361 | magic-string: 0.26.7
1362 | mlly: 1.0.0
1363 | pathe: 1.0.0
1364 | pkg-types: 1.0.1
1365 | scule: 1.0.0
1366 | strip-literal: 1.0.0
1367 | unplugin: 1.0.0
1368 | transitivePeerDependencies:
1369 | - rollup
1370 | dev: true
1371 |
1372 | /unplugin-auto-import/0.11.5:
1373 | resolution: {integrity: sha512-nvbL2AQwLRR8wbHpJ6L1EBVNmjN045RSedTa4NtsGRkSQFXkI1iKHs4dTqJwcKZsnFrZOAKtLPiN1/oQTObLZw==}
1374 | engines: {node: '>=14'}
1375 | peerDependencies:
1376 | '@vueuse/core': '*'
1377 | peerDependenciesMeta:
1378 | '@vueuse/core':
1379 | optional: true
1380 | dependencies:
1381 | '@antfu/utils': 0.7.0
1382 | '@rollup/pluginutils': 5.0.2
1383 | local-pkg: 0.4.2
1384 | magic-string: 0.26.7
1385 | unimport: 1.0.1
1386 | unplugin: 1.0.0
1387 | transitivePeerDependencies:
1388 | - rollup
1389 | dev: true
1390 |
1391 | /unplugin-vue-components/0.22.11_vue@3.2.45:
1392 | resolution: {integrity: sha512-GTzqPl0Ek8fq8qMufjR6hvtnjnSwMpJ1Rg2Ez9AcKZVp1piWoU/Q4FDnI9wHVKX8eenYL0nqAF3ejYAk1TUfqQ==}
1393 | engines: {node: '>=14'}
1394 | peerDependencies:
1395 | '@babel/parser': ^7.15.8
1396 | vue: 2 || 3
1397 | peerDependenciesMeta:
1398 | '@babel/parser':
1399 | optional: true
1400 | dependencies:
1401 | '@antfu/utils': 0.7.0
1402 | '@rollup/pluginutils': 5.0.2
1403 | chokidar: 3.5.3
1404 | debug: 4.3.4
1405 | fast-glob: 3.2.12
1406 | local-pkg: 0.4.2
1407 | magic-string: 0.26.7
1408 | minimatch: 5.1.0
1409 | resolve: 1.22.1
1410 | unplugin: 1.0.0
1411 | vue: 3.2.45
1412 | transitivePeerDependencies:
1413 | - rollup
1414 | - supports-color
1415 | dev: true
1416 |
1417 | /unplugin/1.0.0:
1418 | resolution: {integrity: sha512-H5UnBUxfhTXBXGo2AwKsl0UaLSHzSNDZNehPQSgdhVfO/t+XAS1Yoj3vmLrrlBrS9ZwtH5tejbX/TCp5DcyCKg==}
1419 | dependencies:
1420 | acorn: 8.8.1
1421 | chokidar: 3.5.3
1422 | webpack-sources: 3.2.3
1423 | webpack-virtual-modules: 0.4.6
1424 | dev: true
1425 |
1426 | /vite-node/0.24.5:
1427 | resolution: {integrity: sha512-+xnJaYu1i+2eCsycRO2QF1vxne13b2nL6nF+O8EzdF/X+ohPujysjwij3ZbX3AZ+j8HWYzjlRlKPdlHVyaNzwQ==}
1428 | engines: {node: '>=v14.16.0'}
1429 | hasBin: true
1430 | dependencies:
1431 | debug: 4.3.4
1432 | mlly: 0.5.17
1433 | pathe: 0.2.0
1434 | vite: 3.2.4
1435 | transitivePeerDependencies:
1436 | - '@types/node'
1437 | - less
1438 | - sass
1439 | - stylus
1440 | - sugarss
1441 | - supports-color
1442 | - terser
1443 | dev: true
1444 |
1445 | /vite-plugin-vue-termui/0.0.11_e2giwq5f6xgswi3b3jh2crkzwe:
1446 | resolution: {integrity: sha512-Ty/FhfVaQfEQvlm5rBNEH/AXw8H+6/LiazxmqIkyfnKt3Ual7PlND/wJcLqpHFjkomQsxuTQee2pTFf6Ja3Yaw==}
1447 | peerDependencies:
1448 | '@vitejs/plugin-vue': ^3.0.3
1449 | unplugin-auto-import: ^0.11.2
1450 | unplugin-vue-components: ^0.22.4
1451 | vue: ^3.2.25
1452 | vue-termui: '>=0.0.14'
1453 | dependencies:
1454 | '@vitejs/plugin-vue': 3.2.0_vite@3.2.4+vue@3.2.45
1455 | unplugin-auto-import: 0.11.5
1456 | unplugin-vue-components: 0.22.11_vue@3.2.45
1457 | vue: 3.2.45
1458 | vue-termui: 0.0.17_@vue+runtime-core@3.2.45
1459 | dev: true
1460 |
1461 | /vite/3.2.4:
1462 | resolution: {integrity: sha512-Z2X6SRAffOUYTa+sLy3NQ7nlHFU100xwanq1WDwqaiFiCe+25zdxP1TfCS5ojPV2oDDcXudHIoPnI1Z/66B7Yw==}
1463 | engines: {node: ^14.18.0 || >=16.0.0}
1464 | hasBin: true
1465 | peerDependencies:
1466 | '@types/node': '>= 14'
1467 | less: '*'
1468 | sass: '*'
1469 | stylus: '*'
1470 | sugarss: '*'
1471 | terser: ^5.4.0
1472 | peerDependenciesMeta:
1473 | '@types/node':
1474 | optional: true
1475 | less:
1476 | optional: true
1477 | sass:
1478 | optional: true
1479 | stylus:
1480 | optional: true
1481 | sugarss:
1482 | optional: true
1483 | terser:
1484 | optional: true
1485 | dependencies:
1486 | esbuild: 0.15.16
1487 | postcss: 8.4.19
1488 | resolve: 1.22.1
1489 | rollup: 2.79.1
1490 | optionalDependencies:
1491 | fsevents: 2.3.2
1492 | dev: true
1493 |
1494 | /vscode-oniguruma/1.7.0:
1495 | resolution: {integrity: sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==}
1496 |
1497 | /vscode-textmate/6.0.0:
1498 | resolution: {integrity: sha512-gu73tuZfJgu+mvCSy4UZwd2JXykjK9zAZsfmDeut5dx/1a7FeTk0XwJsSuqQn+cuMCGVbIBfl+s53X4T19DnzQ==}
1499 |
1500 | /vue-termui/0.0.17_@vue+runtime-core@3.2.45:
1501 | resolution: {integrity: sha512-H2of0sxZQ1W2Aji41eUpo+E8wPXu2kMPJ5MmkHKsX2b5YriX8iqmSRwzykhY5AK9UFbZ+Q/FpyzA2IiaLgmxww==}
1502 | engines: {node: '>=14.0.0'}
1503 | peerDependencies:
1504 | '@vue/runtime-core': ^3.2.33
1505 | dependencies:
1506 | '@vue/runtime-core': 3.2.45
1507 | ansi-escapes: 6.0.0
1508 | chalk: 5.2.0
1509 | cli-boxes: 3.0.0
1510 | cli-cursor: 4.0.0
1511 | cli-truncate: 3.1.0
1512 | indent-string: 5.0.0
1513 | slice-ansi: 5.0.0
1514 | string-width: 5.1.2
1515 | terminal-link: 3.0.0
1516 | type-fest: 3.3.0
1517 | widest-line: 4.0.1
1518 | wrap-ansi: 8.0.1
1519 | ws: 8.11.0
1520 | yoga-layout-prebuilt: 1.10.0
1521 | transitivePeerDependencies:
1522 | - bufferutil
1523 | - utf-8-validate
1524 | dev: true
1525 |
1526 | /vue/3.2.45:
1527 | resolution: {integrity: sha512-9Nx/Mg2b2xWlXykmCwiTUCWHbWIj53bnkizBxKai1g61f2Xit700A1ljowpTIM11e3uipOeiPcSqnmBg6gyiaA==}
1528 | dependencies:
1529 | '@vue/compiler-dom': 3.2.45
1530 | '@vue/compiler-sfc': 3.2.45
1531 | '@vue/runtime-dom': 3.2.45
1532 | '@vue/server-renderer': 3.2.45_vue@3.2.45
1533 | '@vue/shared': 3.2.45
1534 | dev: true
1535 |
1536 | /webidl-conversions/4.0.2:
1537 | resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==}
1538 | dev: true
1539 |
1540 | /webpack-sources/3.2.3:
1541 | resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==}
1542 | engines: {node: '>=10.13.0'}
1543 | dev: true
1544 |
1545 | /webpack-virtual-modules/0.4.6:
1546 | resolution: {integrity: sha512-5tyDlKLqPfMqjT3Q9TAqf2YqjwmnUleZwzJi1A5qXnlBCdj2AtOJ6wAWdglTIDOPgOiOrXeBeFcsQ8+aGQ6QbA==}
1547 | dev: true
1548 |
1549 | /whatwg-url/7.1.0:
1550 | resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==}
1551 | dependencies:
1552 | lodash.sortby: 4.7.0
1553 | tr46: 1.0.1
1554 | webidl-conversions: 4.0.2
1555 | dev: true
1556 |
1557 | /which/2.0.2:
1558 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
1559 | engines: {node: '>= 8'}
1560 | hasBin: true
1561 | dependencies:
1562 | isexe: 2.0.0
1563 | dev: true
1564 |
1565 | /widest-line/4.0.1:
1566 | resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==}
1567 | engines: {node: '>=12'}
1568 | dependencies:
1569 | string-width: 5.1.2
1570 | dev: true
1571 |
1572 | /wrap-ansi/8.0.1:
1573 | resolution: {integrity: sha512-QFF+ufAqhoYHvoHdajT/Po7KoXVBPXS2bgjIam5isfWJPfIOnQZ50JtUiVvCv/sjgacf3yRrt2ZKUZ/V4itN4g==}
1574 | engines: {node: '>=12'}
1575 | dependencies:
1576 | ansi-styles: 6.2.1
1577 | string-width: 5.1.2
1578 | strip-ansi: 7.0.1
1579 | dev: true
1580 |
1581 | /wrappy/1.0.2:
1582 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
1583 | dev: true
1584 |
1585 | /ws/8.11.0:
1586 | resolution: {integrity: sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==}
1587 | engines: {node: '>=10.0.0'}
1588 | peerDependencies:
1589 | bufferutil: ^4.0.1
1590 | utf-8-validate: ^5.0.2
1591 | peerDependenciesMeta:
1592 | bufferutil:
1593 | optional: true
1594 | utf-8-validate:
1595 | optional: true
1596 | dev: true
1597 |
1598 | /yaml/1.10.2:
1599 | resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==}
1600 | engines: {node: '>= 6'}
1601 | dev: true
1602 |
1603 | /yoga-layout-prebuilt/1.10.0:
1604 | resolution: {integrity: sha512-YnOmtSbv4MTf7RGJMK0FvZ+KD8OEe/J5BNnR0GHhD8J/XcG/Qvxgszm0Un6FTHWW4uHlTgP0IztiXQnGyIR45g==}
1605 | engines: {node: '>=8'}
1606 | dependencies:
1607 | '@types/yoga-layout': 1.9.2
1608 | dev: true
1609 |
--------------------------------------------------------------------------------
/pnpm-workspace.yaml:
--------------------------------------------------------------------------------
1 | packages:
2 | - playground
3 |
--------------------------------------------------------------------------------
/src/component.ts:
--------------------------------------------------------------------------------
1 | import { TuiTextTransform } from 'vue-termui'
2 | import { defineComponent, h, PropType, ref, watch } from '@vue/runtime-core'
3 | import { getHighlighter, Highlighter, Lang, Theme } from 'shiki'
4 | import c from 'chalk'
5 |
6 | const shiki = ref()
7 | let shikiLoading: Promise | undefined
8 |
9 | export const SyntaxHighlight = defineComponent({
10 | props: {
11 | theme: {
12 | type: String as PropType,
13 | default: 'vitesse-dark',
14 | },
15 | code: {
16 | type: String,
17 | required: true,
18 | },
19 | lang: {
20 | type: String as PropType,
21 | required: true,
22 | },
23 | },
24 | setup(props, { slots }) {
25 | if (!shikiLoading && !shiki.value) {
26 | shikiLoading = getHighlighter({
27 | theme: props.theme,
28 | langs: [props.lang],
29 | }).then((hl) => {
30 | shiki.value = hl
31 | })
32 | }
33 |
34 | const isLoading = ref(true)
35 |
36 | watch(
37 | () => [shiki.value, props.theme, props.lang],
38 | () => {
39 | if (shiki.value) load(shiki.value)
40 | },
41 | { immediate: true }
42 | )
43 |
44 | function load(shiki: Highlighter) {
45 | isLoading.value = true
46 |
47 | Promise.all([
48 | shiki.loadTheme(props.theme),
49 | shiki.loadLanguage(props.lang),
50 | ])
51 | .catch()
52 | .finally(() => {
53 | isLoading.value = false
54 | })
55 | }
56 |
57 | return () =>
58 | h(
59 | TuiTextTransform,
60 | {
61 | transform: (text) => {
62 | if (isLoading.value) return text
63 |
64 | const tokens = shiki.value?.codeToThemedTokens(
65 | text,
66 | props.lang,
67 | props.theme
68 | )
69 | if (!tokens) return text
70 |
71 | const result = tokens
72 | .map((line) =>
73 | line
74 | .map((token) =>
75 | token.color
76 | ? c.hex(token.color)(token.content)
77 | : token.content
78 | )
79 | .join('')
80 | )
81 | .join('\n')
82 |
83 | return result
84 | },
85 | },
86 | () => slots.default?.() ?? props.code
87 | )
88 | },
89 | })
90 |
--------------------------------------------------------------------------------
/src/index.ts:
--------------------------------------------------------------------------------
1 | import { SyntaxHighlight } from './component'
2 |
3 | export default SyntaxHighlight
4 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "include": [
3 | "src",
4 | "src/**/*.ts",
5 | "playground/**/*.vue",
6 | "playground/**/*.ts",
7 | "*.d.ts"
8 | ],
9 | "compilerOptions": {
10 | "target": "esnext",
11 | "useDefineForClassFields": true,
12 | "module": "esnext",
13 | "moduleResolution": "node",
14 | "strict": true,
15 | "jsx": "preserve",
16 | "sourceMap": true,
17 | "resolveJsonModule": true,
18 | "esModuleInterop": true,
19 | "lib": ["esnext"]
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/tsup.config.ts:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'tsup'
2 |
3 | export default defineConfig({
4 | clean: true,
5 | target: 'node14',
6 | format: ['esm', 'cjs'],
7 | dts: true,
8 | esbuildOptions(options) {
9 | if (options.format === 'esm') options.outExtension = { '.js': '.mjs' }
10 | },
11 | entry: ['src/index.ts'],
12 | external: ['vue-termui', '@vue/runtime-core'],
13 | })
14 |
--------------------------------------------------------------------------------