From 72fd6855724c072fe8c7f5a9cc6a1560d002003c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=89=E5=92=B2=E6=99=BA=E5=AD=90=20Kevin=20Deng?= Date: Sat, 2 Mar 2024 17:31:42 +0800 Subject: [PATCH] feat: volar 2.x --- package.json | 6 +- pnpm-lock.yaml | 703 +++++++++++++++++++++++---------------- src/monaco/env.ts | 23 +- src/monaco/vue.worker.ts | 117 +++---- 4 files changed, 471 insertions(+), 378 deletions(-) diff --git a/package.json b/package.json index 08766aaa..7a520b17 100644 --- a/package.json +++ b/package.json @@ -81,11 +81,9 @@ "@types/node": "^20.12.12", "@typescript-eslint/eslint-plugin": "^7.10.0", "@vitejs/plugin-vue": "^5.0.4", - "@volar/cdn": "~1.11.1", - "@volar/monaco": "~1.11.1", - "@volar/typescript": "~1.11.1", + "@volar/monaco": "~2.2.5", "@vue/babel-plugin-jsx": "^1.2.2", - "@vue/language-service": "1.9.0-alpha.3", + "@vue/language-service": "~2.0.19", "assert": "^2.1.0", "bumpp": "^9.4.1", "codemirror": "^5.65.16", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3f9cfeca..e1346f56 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -16,7 +16,7 @@ importers: version: 7.24.6 '@rollup/plugin-replace': specifier: ^5.0.5 - version: 5.0.5(rollup@4.17.2) + version: 5.0.5(rollup@4.18.0) '@shikijs/monaco': specifier: ^1.6.0 version: 1.6.0 @@ -34,25 +34,19 @@ importers: version: 20.12.12 '@typescript-eslint/eslint-plugin': specifier: ^7.10.0 - version: 7.10.0(@typescript-eslint/parser@7.1.1(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0)(typescript@5.4.5) + version: 7.10.0(@typescript-eslint/parser@7.10.0(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0)(typescript@5.4.5) '@vitejs/plugin-vue': specifier: ^5.0.4 version: 5.0.4(vite@5.2.11(@types/node@20.12.12))(vue@3.4.27(typescript@5.4.5)) - '@volar/cdn': - specifier: ~1.11.1 - version: 1.11.1 '@volar/monaco': - specifier: ~1.11.1 - version: 1.11.1 - '@volar/typescript': - specifier: ~1.11.1 - version: 1.11.1 + specifier: ~2.2.5 + version: 2.2.5 '@vue/babel-plugin-jsx': specifier: ^1.2.2 version: 1.2.2(@babel/core@7.24.5) '@vue/language-service': - specifier: 1.9.0-alpha.3 - version: 1.9.0-alpha.3(typescript@5.4.5) + specifier: ~2.0.19 + version: 2.0.19(typescript@5.4.5) assert: specifier: ^2.1.0 version: 2.1.0 @@ -103,7 +97,7 @@ importers: version: 5.2.11(@types/node@20.12.12) vite-plugin-dts: specifier: ^3.9.1 - version: 3.9.1(@types/node@20.12.12)(rollup@4.17.2)(typescript@5.4.5)(vite@5.2.11(@types/node@20.12.12)) + version: 3.9.1(@types/node@20.12.12)(rollup@4.18.0)(typescript@5.4.5)(vite@5.2.11(@types/node@20.12.12)) vue: specifier: ^3.4.27 version: 3.4.27(typescript@5.4.5) @@ -211,11 +205,6 @@ packages: resolution: {integrity: sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==} engines: {node: '>=6.9.0'} - '@babel/parser@7.24.0': - resolution: {integrity: sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==} - engines: {node: '>=6.0.0'} - hasBin: true - '@babel/parser@7.24.5': resolution: {integrity: sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==} engines: {node: '>=6.0.0'} @@ -261,9 +250,21 @@ packages: '@emmetio/css-abbreviation@2.1.8': resolution: {integrity: sha512-s9yjhJ6saOO/uk1V74eifykk2CBYi01STTK3WlXWGOepyKa23ymJ053+DNQjpFcy1ingpaO7AxCcwLvHFY9tuw==} + '@emmetio/css-parser@0.4.0': + resolution: {integrity: sha512-z7wkxRSZgrQHXVzObGkXG+Vmj3uRlpM11oCZ9pbaz0nFejvCDmAiNDpY75+wgXOcffKpj4rzGtwGaZxfJKsJxw==} + + '@emmetio/html-matcher@1.3.0': + resolution: {integrity: sha512-NTbsvppE5eVyBMuyGfVu2CRrLvo7J4YHb6t9sBFLyY03WYhXET37qA4zOYUjBWFCRHO7pS1B9khERtY0f5JXPQ==} + '@emmetio/scanner@1.0.4': resolution: {integrity: sha512-IqRuJtQff7YHHBk4G8YZ45uB9BaAGcwQeVzgj/zj8/UdOhtQpEIupUhSk8dys6spFIWVZVeK20CzGEnqR5SbqA==} + '@emmetio/stream-reader-utils@0.1.0': + resolution: {integrity: sha512-ZsZ2I9Vzso3Ho/pjZFsmmZ++FWeEd/txqybHTm4OgaZzdS8V9V/YYWQwg5TC38Z7uLWUV1vavpLLbjJtKubR1A==} + + '@emmetio/stream-reader@2.2.0': + resolution: {integrity: sha512-fXVXEyFA5Yv3M3n8sUGT7+fvecGrZP4k6FnWWMSZVQf69kAq0LLpaBQLGcPR30m3zMmKYhECP4k/ZkzvhEW5kw==} + '@esbuild/aix-ppc64@0.20.2': resolution: {integrity: sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==} engines: {node: '>=12'} @@ -446,6 +447,9 @@ packages: '@johnsoncodehk/pug-beautify@0.2.2': resolution: {integrity: sha512-qqNS/YD0Nck5wtQLCPHAfGVgWbbGafxSPjNh0ekYPFSNNqnDH2kamnduzYly8IiADmeVx/MfAE1njMEjVeHTMA==} + '@johnsoncodehk/vscode-html-languageservice@5.2.0-34a5462': + resolution: {integrity: sha512-etqLfpSJ5zaw76KUNF603be6d6QsiQPmaHr9FKEp4zhLZJzWCCMH6Icak7MtLUFLZLMpL761mZNImi/joBo1ZA==} + '@jridgewell/gen-mapping@0.3.5': resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} engines: {node: '>=6.0.0'} @@ -520,81 +524,161 @@ packages: cpu: [arm] os: [android] + '@rollup/rollup-android-arm-eabi@4.18.0': + resolution: {integrity: sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==} + cpu: [arm] + os: [android] + '@rollup/rollup-android-arm64@4.17.2': resolution: {integrity: sha512-yeX/Usk7daNIVwkq2uGoq2BYJKZY1JfyLTaHO/jaiSwi/lsf8fTFoQW/n6IdAsx5tx+iotu2zCJwz8MxI6D/Bw==} cpu: [arm64] os: [android] + '@rollup/rollup-android-arm64@4.18.0': + resolution: {integrity: sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==} + cpu: [arm64] + os: [android] + '@rollup/rollup-darwin-arm64@4.17.2': resolution: {integrity: sha512-kcMLpE6uCwls023+kknm71ug7MZOrtXo+y5p/tsg6jltpDtgQY1Eq5sGfHcQfb+lfuKwhBmEURDga9N0ol4YPw==} cpu: [arm64] os: [darwin] + '@rollup/rollup-darwin-arm64@4.18.0': + resolution: {integrity: sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==} + cpu: [arm64] + os: [darwin] + '@rollup/rollup-darwin-x64@4.17.2': resolution: {integrity: sha512-AtKwD0VEx0zWkL0ZjixEkp5tbNLzX+FCqGG1SvOu993HnSz4qDI6S4kGzubrEJAljpVkhRSlg5bzpV//E6ysTQ==} cpu: [x64] os: [darwin] + '@rollup/rollup-darwin-x64@4.18.0': + resolution: {integrity: sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==} + cpu: [x64] + os: [darwin] + '@rollup/rollup-linux-arm-gnueabihf@4.17.2': resolution: {integrity: sha512-3reX2fUHqN7sffBNqmEyMQVj/CKhIHZd4y631duy0hZqI8Qoqf6lTtmAKvJFYa6bhU95B1D0WgzHkmTg33In0A==} cpu: [arm] os: [linux] + '@rollup/rollup-linux-arm-gnueabihf@4.18.0': + resolution: {integrity: sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==} + cpu: [arm] + os: [linux] + '@rollup/rollup-linux-arm-musleabihf@4.17.2': resolution: {integrity: sha512-uSqpsp91mheRgw96xtyAGP9FW5ChctTFEoXP0r5FAzj/3ZRv3Uxjtc7taRQSaQM/q85KEKjKsZuiZM3GyUivRg==} cpu: [arm] os: [linux] + '@rollup/rollup-linux-arm-musleabihf@4.18.0': + resolution: {integrity: sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==} + cpu: [arm] + os: [linux] + '@rollup/rollup-linux-arm64-gnu@4.17.2': resolution: {integrity: sha512-EMMPHkiCRtE8Wdk3Qhtciq6BndLtstqZIroHiiGzB3C5LDJmIZcSzVtLRbwuXuUft1Cnv+9fxuDtDxz3k3EW2A==} cpu: [arm64] os: [linux] + '@rollup/rollup-linux-arm64-gnu@4.18.0': + resolution: {integrity: sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==} + cpu: [arm64] + os: [linux] + '@rollup/rollup-linux-arm64-musl@4.17.2': resolution: {integrity: sha512-NMPylUUZ1i0z/xJUIx6VUhISZDRT+uTWpBcjdv0/zkp7b/bQDF+NfnfdzuTiB1G6HTodgoFa93hp0O1xl+/UbA==} cpu: [arm64] os: [linux] + '@rollup/rollup-linux-arm64-musl@4.18.0': + resolution: {integrity: sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==} + cpu: [arm64] + os: [linux] + '@rollup/rollup-linux-powerpc64le-gnu@4.17.2': resolution: {integrity: sha512-T19My13y8uYXPw/L/k0JYaX1fJKFT/PWdXiHr8mTbXWxjVF1t+8Xl31DgBBvEKclw+1b00Chg0hxE2O7bTG7GQ==} cpu: [ppc64] os: [linux] + '@rollup/rollup-linux-powerpc64le-gnu@4.18.0': + resolution: {integrity: sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==} + cpu: [ppc64] + os: [linux] + '@rollup/rollup-linux-riscv64-gnu@4.17.2': resolution: {integrity: sha512-BOaNfthf3X3fOWAB+IJ9kxTgPmMqPPH5f5k2DcCsRrBIbWnaJCgX2ll77dV1TdSy9SaXTR5iDXRL8n7AnoP5cg==} cpu: [riscv64] os: [linux] + '@rollup/rollup-linux-riscv64-gnu@4.18.0': + resolution: {integrity: sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==} + cpu: [riscv64] + os: [linux] + '@rollup/rollup-linux-s390x-gnu@4.17.2': resolution: {integrity: sha512-W0UP/x7bnn3xN2eYMql2T/+wpASLE5SjObXILTMPUBDB/Fg/FxC+gX4nvCfPBCbNhz51C+HcqQp2qQ4u25ok6g==} cpu: [s390x] os: [linux] + '@rollup/rollup-linux-s390x-gnu@4.18.0': + resolution: {integrity: sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==} + cpu: [s390x] + os: [linux] + '@rollup/rollup-linux-x64-gnu@4.17.2': resolution: {integrity: sha512-Hy7pLwByUOuyaFC6mAr7m+oMC+V7qyifzs/nW2OJfC8H4hbCzOX07Ov0VFk/zP3kBsELWNFi7rJtgbKYsav9QQ==} cpu: [x64] os: [linux] + '@rollup/rollup-linux-x64-gnu@4.18.0': + resolution: {integrity: sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==} + cpu: [x64] + os: [linux] + '@rollup/rollup-linux-x64-musl@4.17.2': resolution: {integrity: sha512-h1+yTWeYbRdAyJ/jMiVw0l6fOOm/0D1vNLui9iPuqgRGnXA0u21gAqOyB5iHjlM9MMfNOm9RHCQ7zLIzT0x11Q==} cpu: [x64] os: [linux] + '@rollup/rollup-linux-x64-musl@4.18.0': + resolution: {integrity: sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==} + cpu: [x64] + os: [linux] + '@rollup/rollup-win32-arm64-msvc@4.17.2': resolution: {integrity: sha512-tmdtXMfKAjy5+IQsVtDiCfqbynAQE/TQRpWdVataHmhMb9DCoJxp9vLcCBjEQWMiUYxO1QprH/HbY9ragCEFLA==} cpu: [arm64] os: [win32] + '@rollup/rollup-win32-arm64-msvc@4.18.0': + resolution: {integrity: sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==} + cpu: [arm64] + os: [win32] + '@rollup/rollup-win32-ia32-msvc@4.17.2': resolution: {integrity: sha512-7II/QCSTAHuE5vdZaQEwJq2ZACkBpQDOmQsE6D6XUbnBHW8IAhm4eTufL6msLJorzrHDFv3CF8oCA/hSIRuZeQ==} cpu: [ia32] os: [win32] + '@rollup/rollup-win32-ia32-msvc@4.18.0': + resolution: {integrity: sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==} + cpu: [ia32] + os: [win32] + '@rollup/rollup-win32-x64-msvc@4.17.2': resolution: {integrity: sha512-TGGO7v7qOq4CYmSBVEYpI1Y5xDuCEnbVC5Vth8mOsW0gDSzxNrVERPc790IGHsrT2dQSimgMr9Ub3Y1Jci5/8w==} cpu: [x64] os: [win32] + '@rollup/rollup-win32-x64-msvc@4.18.0': + resolution: {integrity: sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==} + cpu: [x64] + os: [win32] + '@rushstack/node-core-library@4.0.2': resolution: {integrity: sha512-hyES82QVpkfQMeBMteQUnrhASL/KHPhd7iJ8euduwNJG4mu2GSOKybf0rOEjOm1Wz7CwJEUm9y0yD7jg2C1bfg==} peerDependencies: @@ -673,9 +757,9 @@ packages: typescript: optional: true - '@typescript-eslint/parser@7.1.1': - resolution: {integrity: sha512-ZWUFyL0z04R1nAEgr9e79YtV5LbafdOtN7yapNbn1ansMyaegl2D4bL7vHoJ4HPSc4CaLwuCVas8CVuneKzplQ==} - engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/parser@7.10.0': + resolution: {integrity: sha512-2EjZMA0LUW5V5tGQiaa2Gys+nKdfrn2xiTIBLR4fxmPmVSvgPcKNW+AE/ln9k0A4zDUti0J/GZXMDupQoI+e1w==} + engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: eslint: ^8.56.0 typescript: '*' @@ -683,10 +767,6 @@ packages: typescript: optional: true - '@typescript-eslint/scope-manager@7.1.1': - resolution: {integrity: sha512-cirZpA8bJMRb4WZ+rO6+mnOJrGFDd38WoXCEI57+CYBqta8Yc8aJym2i7vyqLL1vVYljgw0X27axkUXz32T8TA==} - engines: {node: ^16.0.0 || >=18.0.0} - '@typescript-eslint/scope-manager@7.10.0': resolution: {integrity: sha512-7L01/K8W/VGl7noe2mgH0K7BE29Sq6KAbVmxurj8GGaPDZXPr8EEQ2seOeAS+mEV9DnzxBQB6ax6qQQ5C6P4xg==} engines: {node: ^18.18.0 || >=20.0.0} @@ -701,23 +781,10 @@ packages: typescript: optional: true - '@typescript-eslint/types@7.1.1': - resolution: {integrity: sha512-KhewzrlRMrgeKm1U9bh2z5aoL4s7K3tK5DwHDn8MHv0yQfWFz/0ZR6trrIHHa5CsF83j/GgHqzdbzCXJ3crx0Q==} - engines: {node: ^16.0.0 || >=18.0.0} - '@typescript-eslint/types@7.10.0': resolution: {integrity: sha512-7fNj+Ya35aNyhuqrA1E/VayQX9Elwr8NKZ4WueClR3KwJ7Xx9jcCdOrLW04h51de/+gNbyFMs+IDxh5xIwfbNg==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/typescript-estree@7.1.1': - resolution: {integrity: sha512-9ZOncVSfr+sMXVxxca2OJOPagRwT0u/UHikM2Rd6L/aB+kL/QAuTnsv6MeXtjzCJYb8PzrXarypSGIPx3Jemxw==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - '@typescript-eslint/typescript-estree@7.10.0': resolution: {integrity: sha512-LXFnQJjL9XIcxeVfqmNj60YhatpRLt6UhdlFwAkjNc6jSUlK8zQOl1oktAP8PlWFzPQC1jny/8Bai3/HPuvN5g==} engines: {node: ^18.18.0 || >=20.0.0} @@ -733,10 +800,6 @@ packages: peerDependencies: eslint: ^8.56.0 - '@typescript-eslint/visitor-keys@7.1.1': - resolution: {integrity: sha512-yTdHDQxY7cSoCcAtiBzVzxleJhkGB9NncSIyMYe2+OGON1ZsP9zOPws/Pqgopa65jvknOjlk/w7ulPlZ78PiLQ==} - engines: {node: ^16.0.0 || >=18.0.0} - '@typescript-eslint/visitor-keys@7.10.0': resolution: {integrity: sha512-9ntIVgsi6gg6FIq9xjEO4VQJvwOqA3jaBFQJ/6TK5AvEup2+cECI6Fh7QiBxmfMHXU0V0J4RyPeOU1VDNzl9cg==} engines: {node: ^18.18.0 || >=20.0.0} @@ -748,20 +811,23 @@ packages: vite: ^5.0.0 vue: ^3.2.25 - '@volar/cdn@1.11.1': - resolution: {integrity: sha512-iB2+ZQNHwR6fJpLm8rD8x5uWMFSA3B4237vj6E3QvFmcOXuAYEiHUGPtn3jeFBhxLqJMb/SvcooqZd5hd7e4Vg==} - '@volar/language-core@1.11.1': resolution: {integrity: sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==} '@volar/language-core@2.2.4': resolution: {integrity: sha512-7As47GndxGxsqqYnbreLrfB5NDUeQioPM2LJKUuB4/34c0NpEJ2byVl3c9KYdjIdiEstWZ9JLtLKNTaPWb5jtA==} - '@volar/language-service@1.11.1': - resolution: {integrity: sha512-dKo8z1UzQRPHnlXxwfONGrasS1wEWXMoLQiohZ8KgWqZALbekZCwdGImLZD4DeFGNjk3HTTdfeCzo3KjwohjEQ==} + '@volar/language-core@2.2.5': + resolution: {integrity: sha512-2htyAuxRrAgETmFeUhT4XLELk3LiEcqoW/B8YUXMF6BrGWLMwIR09MFaZYvrA2UhbdAeSyeQ726HaWSWkexUcQ==} + + '@volar/language-service@2.2.4': + resolution: {integrity: sha512-3OxJFADEsAZp1RoTS3SX2GY9SeVnB9mbd3N/Faz45IvnT2EFAyVJGPOyrz5bJDvKuCtjdoTNNWS1GX1bHGytrA==} - '@volar/monaco@1.11.1': - resolution: {integrity: sha512-abxU5R/H4pV06iE/y8b5g3x3b2EvmqXbBQdI+t+sqdTxU/HU09qpumc/J0Z/RKeMba+d55u/e/Ko8i98PcNi5Q==} + '@volar/language-service@2.2.5': + resolution: {integrity: sha512-a97e/0uCe+uSu23F4zvgvldqJtZe6jugQeEHWjTfhgOEO8+Be0t5CZNNVItQqmPyAsD8eElg0S/cP6uxvCmCSQ==} + + '@volar/monaco@2.2.5': + resolution: {integrity: sha512-A5ih6na+oQQZt6Rtej7D6Zcc8QWOEGFvejJGowSF7fBrskkRraFOmsH3F/Ik8bcUwJg45UMyqcUVZ4gUm54UDQ==} '@volar/source-map@1.11.1': resolution: {integrity: sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==} @@ -769,14 +835,20 @@ packages: '@volar/source-map@2.2.4': resolution: {integrity: sha512-m92FLpR9vB1YEZfiZ+bfgpLrToL/DNkOrorWVep3pffHrwwI4Tx2oIQN+sqHJfKkiT5N3J1owC+8crhAEinfjg==} + '@volar/source-map@2.2.5': + resolution: {integrity: sha512-wrOEIiZNf4E+PWB0AxyM4tfhkfldPsb3bxg8N6FHrxJH2ohar7aGu48e98bp3pR9HUA7P/pR9VrLmkTrgCCnWQ==} + '@volar/typescript@1.11.1': resolution: {integrity: sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==} '@volar/typescript@2.2.4': resolution: {integrity: sha512-uAQC53tgEbHO62G8NXMfmBrJAlP2QJ9WxVEEQqqK3I6VSy8frL5LbH3hAWODxiwMWixv74wJLWlKbWXOgdIoRQ==} - '@vscode/emmet-helper@2.9.2': - resolution: {integrity: sha512-MaGuyW+fa13q3aYsluKqclmh62Hgp0BpKIqS66fCxfOaBcVQ1OnMQxRRgQUYnCkxFISAQlkJ0qWWPyXjro1Qrg==} + '@volar/typescript@2.2.5': + resolution: {integrity: sha512-eSV/n75+ppfEVugMC/salZsI44nXDPAyL6+iTYCNLtiLHGJsnMv9GwiDMujrvAUj/aLQyqRJgYtXRoxop2clCw==} + + '@vscode/emmet-helper@2.9.3': + resolution: {integrity: sha512-rB39LHWWPQYYlYfpv9qCoZOVioPCftKXXqrsyqN1mTWZM6dTnONT63Db+03vgrBbHzJN45IrgS/AGxw9iiqfEw==} '@vscode/l10n@0.0.18': resolution: {integrity: sha512-KYSIHVmslkaCDyw013pphY+d7x1qV8IZupYfeIfzNA+nsaWHbn5uPuQRvdRFsa9zFzGeudPuoGoZ1Op4jrJXIQ==} @@ -797,15 +869,9 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@vue/compiler-core@3.4.21': - resolution: {integrity: sha512-MjXawxZf2SbZszLPYxaFCjxfibYrzr3eYbKxwpLR9EQN+oaziSu3qKVbwBERj1IFIB8OLUewxB5m/BFzi613og==} - '@vue/compiler-core@3.4.27': resolution: {integrity: sha512-E+RyqY24KnyDXsCuQrI+mlcdW3ALND6U7Gqa/+bVwbcpcR3BRRIckFoz7Qyd4TTlnugtwuI7YgjbvsLmxb+yvg==} - '@vue/compiler-dom@3.4.21': - resolution: {integrity: sha512-IZC6FKowtT1sl0CR5DpXSiEB5ayw75oT2bma1BEhV7RRR1+cfwLrxc2Z8Zq/RGFzJ8w5r9QtCOvTjQgdn0IKmA==} - '@vue/compiler-dom@3.4.27': resolution: {integrity: sha512-kUTvochG/oVgE1w5ViSr3KUBh9X7CWirebA3bezTbB5ZKBQZwR2Mwj9uoSKRMFcz4gSMzzLXBPD6KpCLb9nvWw==} @@ -823,14 +889,6 @@ packages: typescript: optional: true - '@vue/language-core@1.9.0-alpha.3': - resolution: {integrity: sha512-CtNlwQNP4qVdcwYFrMYsOBNrpkeWew6bpDYXODKTMVpmkDQY+8CFnThmVx21XYMuSdW1AOlVXOIY0zHKpLmZwg==} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - '@vue/language-core@2.0.19': resolution: {integrity: sha512-A9EGOnvb51jOvnCYoRLnMP+CcoPlbZVxI9gZXE/y2GksRWM6j/PrLEIC++pnosWTN08tFpJgxhSS//E9v/Sg+Q==} peerDependencies: @@ -839,8 +897,8 @@ packages: typescript: optional: true - '@vue/language-service@1.9.0-alpha.3': - resolution: {integrity: sha512-eS9vS/jqjK4zp6zclM2yiu6gxZgAw9znGbDErxzYPtPt/Ggh0UV15zvN4ebgGm4b2IYNItEqOJuNnRWJCScOJg==} + '@vue/language-service@2.0.19': + resolution: {integrity: sha512-/dYmd8B7OutCSpz01mUbmTm6emYyDilPYDhhCsY+EEEww1noHgGW/kJ8421ngsKlbXbDga/P3YVVGsLhN+p+2w==} '@vue/reactivity@3.4.27': resolution: {integrity: sha512-kK0g4NknW6JX2yySLpsm2jlunZJl2/RJGZ0H9ddHdfBVHcNzxmQ0sS0b09ipmBoQpY8JM2KmUw+a6sO8Zo+zIA==} @@ -856,12 +914,12 @@ packages: peerDependencies: vue: 3.4.27 - '@vue/shared@3.4.21': - resolution: {integrity: sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==} - '@vue/shared@3.4.27': resolution: {integrity: sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA==} + '@vue/typescript-plugin@2.0.19': + resolution: {integrity: sha512-Bigm8r8A+z9oY+QcVDAp9Kvan9w9pXfousmzwwnHH5T90w66Vy0/BvNe3D14d7vBCvWgQgFxpuKP67lIA5xySg==} + acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: @@ -950,10 +1008,6 @@ packages: brace-expansion@2.0.1: resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} - braces@3.0.2: - resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} - engines: {node: '>=8'} - braces@3.0.3: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} @@ -1203,8 +1257,8 @@ packages: electron-to-chromium@1.4.782: resolution: {integrity: sha512-JUfU61e8tr+i5Y1FKXcKs+Xe+rJ+CEqm4cgv1kMihPE2EvYHmYyVr3Im/+1+Z5B29Be2EEGCZCwAc6Tazdl1Yg==} - emmet@2.4.6: - resolution: {integrity: sha512-dJfbdY/hfeTyf/Ef7Y7ubLYzkBvPQ912wPaeVYpAxvFxkEBf/+hJu4H6vhAvFN6HlxqedlfVn2x1S44FfQ97pg==} + emmet@2.4.7: + resolution: {integrity: sha512-O5O5QNqtdlnQM2bmKHtJgyChcrFMgQuulI+WdiOw2NArzprUqqxUW6bgYtKvzKgrsYpuLWalOkdhNP+1jluhCA==} emoji-regex@10.3.0: resolution: {integrity: sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==} @@ -1328,10 +1382,6 @@ packages: resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} engines: {node: '>=16.0.0'} - fill-range@7.0.1: - resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} - engines: {node: '>=8'} - fill-range@7.1.1: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} @@ -1481,6 +1531,10 @@ packages: resolution: {integrity: sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA==} engines: {node: '>= 0.4'} + hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + he@1.2.0: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} hasBin: true @@ -1703,10 +1757,6 @@ packages: magic-string@0.30.10: resolution: {integrity: sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==} - magic-string@0.30.8: - resolution: {integrity: sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==} - engines: {node: '>=12'} - meow@13.2.0: resolution: {integrity: sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==} engines: {node: '>=18'} @@ -1718,8 +1768,8 @@ packages: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} - micromatch@4.0.5: - resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} + micromatch@4.0.6: + resolution: {integrity: sha512-Y4Ypn3oujJYxJcMacVgcs92wofTHxp9FzfDpQON4msDefoC0lb3ETvQLOdLcbhSwU1bz8HrL/1sygfBIHudrkQ==} engines: {node: '>=8.6'} micromatch@4.0.7: @@ -1778,6 +1828,12 @@ packages: monaco-editor-core@0.49.0: resolution: {integrity: sha512-MANZcpLnpcM5qceEMsdwndvyB9rlGu+Sd8mVLd6y4VpSZCQenpoUAYk0K+UAPtcnCOYhgIsR/ZS9PxzMnCFkYw==} + monaco-languageserver-types@0.3.3: + resolution: {integrity: sha512-4uJ6XaVwVamOQ1SXfBGusAqL4fTn7ZJzaybEinr2U5ZX7AKSjsbXWlu0X3Ah+hyefn+85+Ca7GZwbI87g55C8Q==} + + monaco-types@0.1.0: + resolution: {integrity: sha512-aWK7SN9hAqNYi0WosPoMjenMeXJjwCxDibOqWffyQ/qXdzB/86xshGQobRferfmNz7BSNQ8GB0MD0oby9/5fTQ==} + ms@2.1.2: resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} @@ -1916,6 +1972,10 @@ packages: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} + picomatch@4.0.2: + resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} + engines: {node: '>=12'} + pidtree@0.6.0: resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} engines: {node: '>=0.10'} @@ -2011,6 +2071,11 @@ packages: engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true + rollup@4.18.0: + resolution: {integrity: sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + run-parallel@1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} @@ -2028,8 +2093,13 @@ packages: engines: {node: '>=10'} hasBin: true - set-function-length@1.2.1: - resolution: {integrity: sha512-j4t6ccc+VsKwYHso+kElc5neZpjtq9EnRICFZtWyBsLojhmeF/ZBd/elqm22WJh/BziDe/SBiOeAt0m2mfLD0g==} + semver@7.6.2: + resolution: {integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==} + engines: {node: '>=10'} + hasBin: true + + set-function-length@1.2.2: + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} engines: {node: '>= 0.4'} shebang-command@2.0.0: @@ -2069,10 +2139,6 @@ packages: resolution: {integrity: sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg==} engines: {node: '>=18'} - source-map-js@1.0.2: - resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} - engines: {node: '>=0.10.0'} - source-map-js@1.2.0: resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} engines: {node: '>=0.10.0'} @@ -2306,74 +2372,70 @@ packages: terser: optional: true - volar-service-css@0.0.17: - resolution: {integrity: sha512-bEDJykygMzn2+a9ud6KwZZLli9eqarxApAXZuf2CqJJh6Trw1elmbBCo9SlPfqMrIhpFnwV0Sa+Xoc9x5WPeGw==} + volar-service-css@0.0.45: + resolution: {integrity: sha512-f+AlUI1+kESbcZSVaNJVAnK0c/9Da5StoxzPqA5/8VqUHJWNdubWNnwG5xpFVTfgh6pgTcey3UBhBfHytFaIOg==} peerDependencies: - '@volar/language-service': ~1.11.0 + '@volar/language-service': ~2.2.3 peerDependenciesMeta: '@volar/language-service': optional: true - volar-service-emmet@0.0.17: - resolution: {integrity: sha512-C6hVnuQL52MqaydkrblYUbzIo5ZmIGo1hR8wmpcCjs5uNcjqn8aPqZRfznhLiUSaPHpFC+zQxJwFcZI9/u2iKQ==} + volar-service-emmet@0.0.45: + resolution: {integrity: sha512-9nLXSDkR1vA/3fQkFEsSXAu3XovQxOpTkVG2jilQgfek/K1ZLkaA/WMhN/TtmPmQg4NxE9Ni6mA5udBQ5gVXIA==} peerDependencies: - '@volar/language-service': ~1.11.0 + '@volar/language-service': ~2.2.3 peerDependenciesMeta: '@volar/language-service': optional: true - volar-service-html@0.0.17: - resolution: {integrity: sha512-OGkP+ZTo13j/+enafGe+esXvda/W4eU78YNLbbHxtV3rnX4odVrewenLJmXiECg6wdQz/PG8rLijZqQnDUYkfw==} + volar-service-html@0.0.45: + resolution: {integrity: sha512-tLTJqfy1v5C4nmeAsfekFIKPl4r4qDMyL0L9MWywr/EApZzPCsbeUGxCqdzxSMC2q7PMCfX2i167txDo+J0LVA==} peerDependencies: - '@volar/language-service': ~1.11.0 + '@volar/language-service': ~2.2.3 peerDependenciesMeta: '@volar/language-service': optional: true - volar-service-json@0.0.17: - resolution: {integrity: sha512-28pXc5l5xSDtTDZ73zg0Jklr1KOsqL60wa8SXTJptK7e+PX8PF/cxQ/2FBHQOybdJsk+fn8jx8wF/ky8cuVHag==} + volar-service-json@0.0.45: + resolution: {integrity: sha512-jlIFVZObq4KM527z6Vfa90L/DRBo2PzLWg1TX8YWgymqVDRrjPGSjIoGo//JHyQJqSpAdCK+G85nPXfqv7jz3A==} peerDependencies: - '@volar/language-service': ~1.11.0 + '@volar/language-service': ~2.2.3 peerDependenciesMeta: '@volar/language-service': optional: true - volar-service-pug-beautify@0.0.17: - resolution: {integrity: sha512-r+18HvciIOFbwi9dNTok1r1oboFyPaRPW1F5K7Yw1Ypynt2PI6ocGjBJ0V+Z5oONTXq1wHA4vzlmmvz5vzVh9g==} + volar-service-pug-beautify@0.0.45: + resolution: {integrity: sha512-6vBkfbHwxDbmFhYIMNOwvbw12DnGCgGYtFdEo7G9APx22l/9I57AVGWQqaIKzfVuzsyUg6pa2CorYwVvJJbOfw==} peerDependencies: - '@volar/language-service': ~1.11.0 + '@volar/language-service': ~2.2.3 peerDependenciesMeta: '@volar/language-service': optional: true - volar-service-pug@0.0.17: - resolution: {integrity: sha512-p6oDgH+ufWyS6r6Jv5h76cWGtjLOG/vhd5NH4Sk0pMCdh8zANHJsKsxsrIOiYsK6J9uNU1H6qRRHGg95xj34eQ==} + volar-service-pug@0.0.45: + resolution: {integrity: sha512-Xr45hVTMzt6NI2xgA69+Evzmes6pePqR2X4wl6io76M70M3W+QDbvHH3u8+5QrvVvbQGY0HledQcT29bCWRADQ==} - volar-service-typescript-twoslash-queries@0.0.17: - resolution: {integrity: sha512-6FHXK5AWeFzCL6uGmEcbkZmQsaQ0m9IjbeLdgOIQ4KGvauqT2aA1BhdfDJu6vRAFIfXe7xjEJ85keIlHl72tSA==} + volar-service-typescript-twoslash-queries@0.0.45: + resolution: {integrity: sha512-KrPUUvKggZgV9mrDpstCzmf20irgv0ooMv+FGDzIIQUkya+d2+nSS8Mx2h9FvsYgLccUVw5jU3Rhwhd3pv/7qg==} peerDependencies: - '@volar/language-service': ~1.11.0 + '@volar/language-service': ~2.2.3 peerDependenciesMeta: '@volar/language-service': optional: true - volar-service-typescript@0.0.17: - resolution: {integrity: sha512-Krs8pOIo2yoBVoJ91hKT1czhWt9ek7EbuK3MxxgvDYdd4HYHOtHi1eOlb7bFnZMNgFcwsL48yQI9vbPm160s9A==} + volar-service-typescript@0.0.45: + resolution: {integrity: sha512-i/mMIIAMastJ2kgPo3qvX0Rrl7NyxhIYZ0ug/B4ambZcLPI1vzBgS2fmvyWX3jhBYHh8NmbAotFj+0Y9JtN47A==} peerDependencies: - '@volar/language-service': ~1.11.0 - '@volar/typescript': ~1.11.0 + '@volar/language-service': ~2.2.3 peerDependenciesMeta: '@volar/language-service': optional: true - vscode-css-languageservice@6.2.12: - resolution: {integrity: sha512-PS9r7HgNjqzRl3v91sXpCyZPc8UDotNo6gntFNtGCKPhGA9Frk7g/VjX1Mbv3F00pn56D+rxrFzR9ep4cawOgA==} + vscode-css-languageservice@6.2.14: + resolution: {integrity: sha512-5UPQ9Y1sUTnuMyaMBpO7LrBkqjhEJb5eAwdUlDp+Uez8lry+Tspnk3+3p2qWS4LlNsr4p3v9WkZxUf1ltgFpgw==} - vscode-html-languageservice@5.1.2: - resolution: {integrity: sha512-wkWfEx/IIR3s2P5yD4aTGHiOb8IAzFxgkSt1uSC3itJ4oDAm23yG7o0L29JljUdnXDDgLafPAvhv8A2I/8riHw==} - - vscode-json-languageservice@5.3.9: - resolution: {integrity: sha512-0IcymTw0ZYX5Zcx+7KLLwTRvg0FzXUVnM1hrUH+sPhqEX0fHGg2h5UUOSp1f8ydGS7/xxzlFI3TR01yaHs6Y0Q==} + vscode-json-languageservice@5.3.11: + resolution: {integrity: sha512-WYS72Ymria3dn8ZbjtBbt5K71m05wY1Q6hpXV5JxUT0q75Ts0ljLmnZJAVpx8DjPgYbFD+Z8KHpWh2laKLUCtQ==} vscode-jsonrpc@8.2.0: resolution: {integrity: sha512-C+r0eKJUIfiDIfwJhria30+TYWPtuHJXHtI7J0YlOmKAo7ogxP20T0zxB7HZQIFhIyvoBPwWskjxrvAtfjyZfA==} @@ -2556,7 +2618,7 @@ snapshots: '@babel/helper-module-imports': 7.24.3 '@babel/helper-simple-access': 7.24.5 '@babel/helper-split-export-declaration': 7.24.5 - '@babel/helper-validator-identifier': 7.24.5 + '@babel/helper-validator-identifier': 7.24.6 '@babel/helper-plugin-utils@7.24.5': {} @@ -2597,10 +2659,6 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.0.0 - '@babel/parser@7.24.0': - dependencies: - '@babel/types': 7.24.6 - '@babel/parser@7.24.5': dependencies: '@babel/types': 7.24.6 @@ -2655,8 +2713,21 @@ snapshots: dependencies: '@emmetio/scanner': 1.0.4 + '@emmetio/css-parser@0.4.0': + dependencies: + '@emmetio/stream-reader': 2.2.0 + '@emmetio/stream-reader-utils': 0.1.0 + + '@emmetio/html-matcher@1.3.0': + dependencies: + '@emmetio/scanner': 1.0.4 + '@emmetio/scanner@1.0.4': {} + '@emmetio/stream-reader-utils@0.1.0': {} + + '@emmetio/stream-reader@2.2.0': {} + '@esbuild/aix-ppc64@0.20.2': optional: true @@ -2776,6 +2847,13 @@ snapshots: '@johnsoncodehk/pug-beautify@0.2.2': {} + '@johnsoncodehk/vscode-html-languageservice@5.2.0-34a5462': + dependencies: + '@vscode/l10n': 0.0.18 + vscode-languageserver-textdocument: 1.0.11 + vscode-languageserver-types: 3.17.5 + vscode-uri: 3.0.8 + '@jridgewell/gen-mapping@0.3.5': dependencies: '@jridgewell/set-array': 1.2.1 @@ -2850,69 +2928,117 @@ snapshots: '@pkgjs/parseargs@0.11.0': optional: true - '@rollup/plugin-replace@5.0.5(rollup@4.17.2)': + '@rollup/plugin-replace@5.0.5(rollup@4.18.0)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.17.2) - magic-string: 0.30.8 + '@rollup/pluginutils': 5.1.0(rollup@4.18.0) + magic-string: 0.30.10 optionalDependencies: - rollup: 4.17.2 + rollup: 4.18.0 - '@rollup/pluginutils@5.1.0(rollup@4.17.2)': + '@rollup/pluginutils@5.1.0(rollup@4.18.0)': dependencies: '@types/estree': 1.0.5 estree-walker: 2.0.2 picomatch: 2.3.1 optionalDependencies: - rollup: 4.17.2 + rollup: 4.18.0 '@rollup/rollup-android-arm-eabi@4.17.2': optional: true + '@rollup/rollup-android-arm-eabi@4.18.0': + optional: true + '@rollup/rollup-android-arm64@4.17.2': optional: true + '@rollup/rollup-android-arm64@4.18.0': + optional: true + '@rollup/rollup-darwin-arm64@4.17.2': optional: true + '@rollup/rollup-darwin-arm64@4.18.0': + optional: true + '@rollup/rollup-darwin-x64@4.17.2': optional: true + '@rollup/rollup-darwin-x64@4.18.0': + optional: true + '@rollup/rollup-linux-arm-gnueabihf@4.17.2': optional: true + '@rollup/rollup-linux-arm-gnueabihf@4.18.0': + optional: true + '@rollup/rollup-linux-arm-musleabihf@4.17.2': optional: true + '@rollup/rollup-linux-arm-musleabihf@4.18.0': + optional: true + '@rollup/rollup-linux-arm64-gnu@4.17.2': optional: true + '@rollup/rollup-linux-arm64-gnu@4.18.0': + optional: true + '@rollup/rollup-linux-arm64-musl@4.17.2': optional: true + '@rollup/rollup-linux-arm64-musl@4.18.0': + optional: true + '@rollup/rollup-linux-powerpc64le-gnu@4.17.2': optional: true + '@rollup/rollup-linux-powerpc64le-gnu@4.18.0': + optional: true + '@rollup/rollup-linux-riscv64-gnu@4.17.2': optional: true + '@rollup/rollup-linux-riscv64-gnu@4.18.0': + optional: true + '@rollup/rollup-linux-s390x-gnu@4.17.2': optional: true + '@rollup/rollup-linux-s390x-gnu@4.18.0': + optional: true + '@rollup/rollup-linux-x64-gnu@4.17.2': optional: true + '@rollup/rollup-linux-x64-gnu@4.18.0': + optional: true + '@rollup/rollup-linux-x64-musl@4.17.2': optional: true + '@rollup/rollup-linux-x64-musl@4.18.0': + optional: true + '@rollup/rollup-win32-arm64-msvc@4.17.2': optional: true + '@rollup/rollup-win32-arm64-msvc@4.18.0': + optional: true + '@rollup/rollup-win32-ia32-msvc@4.17.2': optional: true + '@rollup/rollup-win32-ia32-msvc@4.18.0': + optional: true + '@rollup/rollup-win32-x64-msvc@4.17.2': optional: true + '@rollup/rollup-win32-x64-msvc@4.18.0': + optional: true + '@rushstack/node-core-library@4.0.2(@types/node@20.12.12)': dependencies: fs-extra: 7.0.1 @@ -2998,10 +3124,10 @@ snapshots: dependencies: '@types/estree': 1.0.5 - '@typescript-eslint/eslint-plugin@7.10.0(@typescript-eslint/parser@7.1.1(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0)(typescript@5.4.5)': + '@typescript-eslint/eslint-plugin@7.10.0(@typescript-eslint/parser@7.10.0(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0)(typescript@5.4.5)': dependencies: '@eslint-community/regexpp': 4.10.0 - '@typescript-eslint/parser': 7.1.1(eslint@9.3.0)(typescript@5.4.5) + '@typescript-eslint/parser': 7.10.0(eslint@9.3.0)(typescript@5.4.5) '@typescript-eslint/scope-manager': 7.10.0 '@typescript-eslint/type-utils': 7.10.0(eslint@9.3.0)(typescript@5.4.5) '@typescript-eslint/utils': 7.10.0(eslint@9.3.0)(typescript@5.4.5) @@ -3016,12 +3142,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@7.1.1(eslint@9.3.0)(typescript@5.4.5)': + '@typescript-eslint/parser@7.10.0(eslint@9.3.0)(typescript@5.4.5)': dependencies: - '@typescript-eslint/scope-manager': 7.1.1 - '@typescript-eslint/types': 7.1.1 - '@typescript-eslint/typescript-estree': 7.1.1(typescript@5.4.5) - '@typescript-eslint/visitor-keys': 7.1.1 + '@typescript-eslint/scope-manager': 7.10.0 + '@typescript-eslint/types': 7.10.0 + '@typescript-eslint/typescript-estree': 7.10.0(typescript@5.4.5) + '@typescript-eslint/visitor-keys': 7.10.0 debug: 4.3.4 eslint: 9.3.0 optionalDependencies: @@ -3029,11 +3155,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@7.1.1': - dependencies: - '@typescript-eslint/types': 7.1.1 - '@typescript-eslint/visitor-keys': 7.1.1 - '@typescript-eslint/scope-manager@7.10.0': dependencies: '@typescript-eslint/types': 7.10.0 @@ -3051,25 +3172,8 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/types@7.1.1': {} - '@typescript-eslint/types@7.10.0': {} - '@typescript-eslint/typescript-estree@7.1.1(typescript@5.4.5)': - dependencies: - '@typescript-eslint/types': 7.1.1 - '@typescript-eslint/visitor-keys': 7.1.1 - debug: 4.3.4 - globby: 11.1.0 - is-glob: 4.0.3 - minimatch: 9.0.3 - semver: 7.6.0 - ts-api-utils: 1.3.0(typescript@5.4.5) - optionalDependencies: - typescript: 5.4.5 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/typescript-estree@7.10.0(typescript@5.4.5)': dependencies: '@typescript-eslint/types': 7.10.0 @@ -3096,11 +3200,6 @@ snapshots: - supports-color - typescript - '@typescript-eslint/visitor-keys@7.1.1': - dependencies: - '@typescript-eslint/types': 7.1.1 - eslint-visitor-keys: 3.4.3 - '@typescript-eslint/visitor-keys@7.10.0': dependencies: '@typescript-eslint/types': 7.10.0 @@ -3111,10 +3210,6 @@ snapshots: vite: 5.2.11(@types/node@20.12.12) vue: 3.4.27(typescript@5.4.5) - '@volar/cdn@1.11.1': - dependencies: - '@volar/language-service': 1.11.1 - '@volar/language-core@1.11.1': dependencies: '@volar/source-map': 1.11.1 @@ -3123,17 +3218,30 @@ snapshots: dependencies: '@volar/source-map': 2.2.4 - '@volar/language-service@1.11.1': + '@volar/language-core@2.2.5': dependencies: - '@volar/language-core': 1.11.1 - '@volar/source-map': 1.11.1 + '@volar/source-map': 2.2.5 + + '@volar/language-service@2.2.4': + dependencies: + '@volar/language-core': 2.2.4 vscode-languageserver-protocol: 3.17.5 vscode-languageserver-textdocument: 1.0.11 vscode-uri: 3.0.8 - '@volar/monaco@1.11.1': + '@volar/language-service@2.2.5': dependencies: - '@volar/language-service': 1.11.1 + '@volar/language-core': 2.2.5 + vscode-languageserver-protocol: 3.17.5 + vscode-languageserver-textdocument: 1.0.11 + vscode-uri: 3.0.8 + + '@volar/monaco@2.2.5': + dependencies: + '@volar/language-service': 2.2.5 + '@volar/typescript': 2.2.5 + monaco-languageserver-types: 0.3.3 + monaco-types: 0.1.0 vscode-uri: 3.0.8 '@volar/source-map@1.11.1': @@ -3144,6 +3252,10 @@ snapshots: dependencies: muggle-string: 0.4.1 + '@volar/source-map@2.2.5': + dependencies: + muggle-string: 0.4.1 + '@volar/typescript@1.11.1': dependencies: '@volar/language-core': 1.11.1 @@ -3154,9 +3266,14 @@ snapshots: '@volar/language-core': 2.2.4 path-browserify: 1.0.1 - '@vscode/emmet-helper@2.9.2': + '@volar/typescript@2.2.5': dependencies: - emmet: 2.4.6 + '@volar/language-core': 2.2.5 + path-browserify: 1.0.1 + + '@vscode/emmet-helper@2.9.3': + dependencies: + emmet: 2.4.7 jsonc-parser: 2.3.1 vscode-languageserver-textdocument: 1.0.11 vscode-languageserver-types: 3.17.5 @@ -3193,14 +3310,6 @@ snapshots: '@babel/parser': 7.24.5 '@vue/compiler-sfc': 3.4.27 - '@vue/compiler-core@3.4.21': - dependencies: - '@babel/parser': 7.24.0 - '@vue/shared': 3.4.21 - entities: 4.5.0 - estree-walker: 2.0.2 - source-map-js: 1.0.2 - '@vue/compiler-core@3.4.27': dependencies: '@babel/parser': 7.24.5 @@ -3209,11 +3318,6 @@ snapshots: estree-walker: 2.0.2 source-map-js: 1.2.0 - '@vue/compiler-dom@3.4.21': - dependencies: - '@vue/compiler-core': 3.4.21 - '@vue/shared': 3.4.21 - '@vue/compiler-dom@3.4.27': dependencies: '@vue/compiler-core': 3.4.27 @@ -3240,24 +3344,10 @@ snapshots: dependencies: '@volar/language-core': 1.11.1 '@volar/source-map': 1.11.1 - '@vue/compiler-dom': 3.4.21 - '@vue/shared': 3.4.21 - computeds: 0.0.1 - minimatch: 9.0.3 - muggle-string: 0.3.1 - path-browserify: 1.0.1 - vue-template-compiler: 2.7.16 - optionalDependencies: - typescript: 5.4.5 - - '@vue/language-core@1.9.0-alpha.3(typescript@5.4.5)': - dependencies: - '@volar/language-core': 1.11.1 - '@volar/source-map': 1.11.1 - '@vue/compiler-dom': 3.4.21 - '@vue/shared': 3.4.21 + '@vue/compiler-dom': 3.4.27 + '@vue/shared': 3.4.27 computeds: 0.0.1 - minimatch: 9.0.3 + minimatch: 9.0.4 muggle-string: 0.3.1 path-browserify: 1.0.1 vue-template-compiler: 2.7.16 @@ -3267,35 +3357,37 @@ snapshots: '@vue/language-core@2.0.19(typescript@5.4.5)': dependencies: '@volar/language-core': 2.2.4 - '@vue/compiler-dom': 3.4.21 - '@vue/shared': 3.4.21 + '@vue/compiler-dom': 3.4.27 + '@vue/shared': 3.4.27 computeds: 0.0.1 - minimatch: 9.0.3 + minimatch: 9.0.4 path-browserify: 1.0.1 vue-template-compiler: 2.7.16 optionalDependencies: typescript: 5.4.5 - '@vue/language-service@1.9.0-alpha.3(typescript@5.4.5)': + '@vue/language-service@2.0.19(typescript@5.4.5)': dependencies: - '@volar/language-core': 1.11.1 - '@volar/language-service': 1.11.1 - '@volar/typescript': 1.11.1 - '@vue/compiler-dom': 3.4.21 - '@vue/language-core': 1.9.0-alpha.3(typescript@5.4.5) - '@vue/shared': 3.4.21 + '@volar/language-core': 2.2.4 + '@volar/language-service': 2.2.4 + '@volar/typescript': 2.2.4 + '@vue/compiler-dom': 3.4.27 + '@vue/language-core': 2.0.19(typescript@5.4.5) + '@vue/shared': 3.4.27 + '@vue/typescript-plugin': 2.0.19(typescript@5.4.5) computeds: 0.0.1 path-browserify: 1.0.1 - volar-service-css: 0.0.17(@volar/language-service@1.11.1) - volar-service-emmet: 0.0.17(@volar/language-service@1.11.1) - volar-service-html: 0.0.17(@volar/language-service@1.11.1) - volar-service-json: 0.0.17(@volar/language-service@1.11.1) - volar-service-pug: 0.0.17 - volar-service-pug-beautify: 0.0.17(@volar/language-service@1.11.1) - volar-service-typescript: 0.0.17(@volar/language-service@1.11.1)(@volar/typescript@1.11.1) - volar-service-typescript-twoslash-queries: 0.0.17(@volar/language-service@1.11.1) - vscode-html-languageservice: 5.1.2 + volar-service-css: 0.0.45(@volar/language-service@2.2.4) + volar-service-emmet: 0.0.45(@volar/language-service@2.2.4) + volar-service-html: 0.0.45(@volar/language-service@2.2.4) + volar-service-json: 0.0.45(@volar/language-service@2.2.4) + volar-service-pug: 0.0.45 + volar-service-pug-beautify: 0.0.45(@volar/language-service@2.2.4) + volar-service-typescript: 0.0.45(@volar/language-service@2.2.4) + volar-service-typescript-twoslash-queries: 0.0.45(@volar/language-service@2.2.4) + vscode-html-languageservice: '@johnsoncodehk/vscode-html-languageservice@5.2.0-34a5462' vscode-languageserver-textdocument: 1.0.11 + vscode-uri: 3.0.8 transitivePeerDependencies: - typescript @@ -3320,10 +3412,16 @@ snapshots: '@vue/shared': 3.4.27 vue: 3.4.27(typescript@5.4.5) - '@vue/shared@3.4.21': {} - '@vue/shared@3.4.27': {} + '@vue/typescript-plugin@2.0.19(typescript@5.4.5)': + dependencies: + '@volar/typescript': 2.2.4 + '@vue/language-core': 2.0.19(typescript@5.4.5) + '@vue/shared': 3.4.27 + transitivePeerDependencies: + - typescript + acorn-jsx@5.3.2(acorn@8.11.3): dependencies: acorn: 8.11.3 @@ -3403,10 +3501,6 @@ snapshots: dependencies: balanced-match: 1.0.2 - braces@3.0.2: - dependencies: - fill-range: 7.0.1 - braces@3.0.3: dependencies: fill-range: 7.1.1 @@ -3452,7 +3546,7 @@ snapshots: es-errors: 1.3.0 function-bind: 1.1.2 get-intrinsic: 1.2.4 - set-function-length: 1.2.1 + set-function-length: 1.2.2 call-me-maybe@1.0.2: {} @@ -3482,7 +3576,7 @@ snapshots: chokidar@3.6.0: dependencies: anymatch: 3.1.3 - braces: 3.0.2 + braces: 3.0.3 glob-parent: 5.1.2 is-binary-path: 2.1.0 is-glob: 4.0.3 @@ -3672,7 +3766,7 @@ snapshots: electron-to-chromium@1.4.782: {} - emmet@2.4.6: + emmet@2.4.7: dependencies: '@emmetio/abbreviation': 2.3.3 '@emmetio/css-abbreviation': 2.1.8 @@ -3838,7 +3932,7 @@ snapshots: '@nodelib/fs.walk': 1.2.8 glob-parent: 5.1.2 merge2: 1.4.1 - micromatch: 4.0.5 + micromatch: 4.0.6 fast-json-stable-stringify@2.1.0: {} @@ -3854,10 +3948,6 @@ snapshots: dependencies: flat-cache: 4.0.1 - fill-range@7.0.1: - dependencies: - to-regex-range: 5.0.1 - fill-range@7.1.1: dependencies: to-regex-range: 5.0.1 @@ -3912,7 +4002,7 @@ snapshots: function-bind: 1.1.2 has-proto: 1.0.3 has-symbols: 1.0.3 - hasown: 2.0.1 + hasown: 2.0.2 get-stream@8.0.1: {} @@ -4015,6 +4105,10 @@ snapshots: dependencies: function-bind: 1.1.2 + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + he@1.2.0: {} hosted-git-info@7.0.1: @@ -4211,20 +4305,16 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.4.15 - magic-string@0.30.8: - dependencies: - '@jridgewell/sourcemap-codec': 1.4.15 - meow@13.2.0: {} merge-stream@2.0.0: {} merge2@1.4.1: {} - micromatch@4.0.5: + micromatch@4.0.6: dependencies: - braces: 3.0.2 - picomatch: 2.3.1 + braces: 3.0.3 + picomatch: 4.0.2 micromatch@4.0.7: dependencies: @@ -4277,6 +4367,14 @@ snapshots: monaco-editor-core@0.49.0: {} + monaco-languageserver-types@0.3.3: + dependencies: + monaco-types: 0.1.0 + vscode-languageserver-protocol: 3.17.5 + vscode-uri: 3.0.8 + + monaco-types@0.1.0: {} + ms@2.1.2: {} muggle-string@0.3.1: {} @@ -4404,6 +4502,8 @@ snapshots: picomatch@2.3.1: {} + picomatch@4.0.2: {} + pidtree@0.6.0: {} pirates@4.0.6: {} @@ -4521,6 +4621,29 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.17.2 fsevents: 2.3.3 + rollup@4.18.0: + dependencies: + '@types/estree': 1.0.5 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.18.0 + '@rollup/rollup-android-arm64': 4.18.0 + '@rollup/rollup-darwin-arm64': 4.18.0 + '@rollup/rollup-darwin-x64': 4.18.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.18.0 + '@rollup/rollup-linux-arm-musleabihf': 4.18.0 + '@rollup/rollup-linux-arm64-gnu': 4.18.0 + '@rollup/rollup-linux-arm64-musl': 4.18.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.18.0 + '@rollup/rollup-linux-riscv64-gnu': 4.18.0 + '@rollup/rollup-linux-s390x-gnu': 4.18.0 + '@rollup/rollup-linux-x64-gnu': 4.18.0 + '@rollup/rollup-linux-x64-musl': 4.18.0 + '@rollup/rollup-win32-arm64-msvc': 4.18.0 + '@rollup/rollup-win32-ia32-msvc': 4.18.0 + '@rollup/rollup-win32-x64-msvc': 4.18.0 + fsevents: 2.3.3 + optional: true + run-parallel@1.2.0: dependencies: queue-microtask: 1.2.3 @@ -4535,7 +4658,9 @@ snapshots: dependencies: lru-cache: 6.0.0 - set-function-length@1.2.1: + semver@7.6.2: {} + + set-function-length@1.2.2: dependencies: define-data-property: 1.1.4 es-errors: 1.3.0 @@ -4574,8 +4699,6 @@ snapshots: ansi-styles: 6.2.1 is-fullwidth-code-point: 5.0.0 - source-map-js@1.0.2: {} - source-map-js@1.2.0: {} source-map@0.6.1: {} @@ -4707,7 +4830,7 @@ snapshots: typescript-auto-import-cache@0.3.2: dependencies: - semver: 7.6.0 + semver: 7.6.2 typescript@5.4.2: {} @@ -4751,14 +4874,14 @@ snapshots: validator@13.11.0: {} - vite-plugin-dts@3.9.1(@types/node@20.12.12)(rollup@4.17.2)(typescript@5.4.5)(vite@5.2.11(@types/node@20.12.12)): + vite-plugin-dts@3.9.1(@types/node@20.12.12)(rollup@4.18.0)(typescript@5.4.5)(vite@5.2.11(@types/node@20.12.12)): dependencies: '@microsoft/api-extractor': 7.43.0(@types/node@20.12.12) - '@rollup/pluginutils': 5.1.0(rollup@4.17.2) + '@rollup/pluginutils': 5.1.0(rollup@4.18.0) '@vue/language-core': 1.8.27(typescript@5.4.5) debug: 4.3.4 kolorist: 1.8.0 - magic-string: 0.30.8 + magic-string: 0.30.10 typescript: 5.4.5 vue-tsc: 1.8.27(typescript@5.4.5) optionalDependencies: @@ -4777,82 +4900,74 @@ snapshots: '@types/node': 20.12.12 fsevents: 2.3.3 - volar-service-css@0.0.17(@volar/language-service@1.11.1): + volar-service-css@0.0.45(@volar/language-service@2.2.4): dependencies: - vscode-css-languageservice: 6.2.12 + vscode-css-languageservice: 6.2.14 + vscode-languageserver-textdocument: 1.0.11 vscode-uri: 3.0.8 optionalDependencies: - '@volar/language-service': 1.11.1 + '@volar/language-service': 2.2.4 - volar-service-emmet@0.0.17(@volar/language-service@1.11.1): + volar-service-emmet@0.0.45(@volar/language-service@2.2.4): dependencies: - '@vscode/emmet-helper': 2.9.2 - volar-service-html: 0.0.17(@volar/language-service@1.11.1) + '@emmetio/css-parser': 0.4.0 + '@emmetio/html-matcher': 1.3.0 + '@vscode/emmet-helper': 2.9.3 optionalDependencies: - '@volar/language-service': 1.11.1 + '@volar/language-service': 2.2.4 - volar-service-html@0.0.17(@volar/language-service@1.11.1): + volar-service-html@0.0.45(@volar/language-service@2.2.4): dependencies: - vscode-html-languageservice: 5.1.2 + vscode-html-languageservice: '@johnsoncodehk/vscode-html-languageservice@5.2.0-34a5462' + vscode-languageserver-textdocument: 1.0.11 vscode-uri: 3.0.8 optionalDependencies: - '@volar/language-service': 1.11.1 + '@volar/language-service': 2.2.4 - volar-service-json@0.0.17(@volar/language-service@1.11.1): + volar-service-json@0.0.45(@volar/language-service@2.2.4): dependencies: - vscode-json-languageservice: 5.3.9 + vscode-json-languageservice: 5.3.11 vscode-uri: 3.0.8 optionalDependencies: - '@volar/language-service': 1.11.1 + '@volar/language-service': 2.2.4 - volar-service-pug-beautify@0.0.17(@volar/language-service@1.11.1): + volar-service-pug-beautify@0.0.45(@volar/language-service@2.2.4): dependencies: '@johnsoncodehk/pug-beautify': 0.2.2 optionalDependencies: - '@volar/language-service': 1.11.1 + '@volar/language-service': 2.2.4 - volar-service-pug@0.0.17: + volar-service-pug@0.0.45: dependencies: - '@volar/language-service': 1.11.1 - '@volar/source-map': 1.11.1 - muggle-string: 0.3.1 + '@volar/language-service': 2.2.4 pug-lexer: 5.0.1 pug-parser: 6.0.0 - volar-service-html: 0.0.17(@volar/language-service@1.11.1) - vscode-html-languageservice: 5.1.2 + volar-service-html: 0.0.45(@volar/language-service@2.2.4) + vscode-html-languageservice: '@johnsoncodehk/vscode-html-languageservice@5.2.0-34a5462' vscode-languageserver-textdocument: 1.0.11 - volar-service-typescript-twoslash-queries@0.0.17(@volar/language-service@1.11.1): + volar-service-typescript-twoslash-queries@0.0.45(@volar/language-service@2.2.4): optionalDependencies: - '@volar/language-service': 1.11.1 + '@volar/language-service': 2.2.4 - volar-service-typescript@0.0.17(@volar/language-service@1.11.1)(@volar/typescript@1.11.1): + volar-service-typescript@0.0.45(@volar/language-service@2.2.4): dependencies: - '@volar/typescript': 1.11.1 path-browserify: 1.0.1 - semver: 7.6.0 + semver: 7.6.2 typescript-auto-import-cache: 0.3.2 vscode-languageserver-textdocument: 1.0.11 vscode-nls: 5.2.0 - vscode-uri: 3.0.8 optionalDependencies: - '@volar/language-service': 1.11.1 - - vscode-css-languageservice@6.2.12: - dependencies: - '@vscode/l10n': 0.0.18 - vscode-languageserver-textdocument: 1.0.11 - vscode-languageserver-types: 3.17.5 - vscode-uri: 3.0.8 + '@volar/language-service': 2.2.4 - vscode-html-languageservice@5.1.2: + vscode-css-languageservice@6.2.14: dependencies: '@vscode/l10n': 0.0.18 vscode-languageserver-textdocument: 1.0.11 vscode-languageserver-types: 3.17.5 vscode-uri: 3.0.8 - vscode-json-languageservice@5.3.9: + vscode-json-languageservice@5.3.11: dependencies: '@vscode/l10n': 0.0.18 jsonc-parser: 3.2.1 diff --git a/src/monaco/env.ts b/src/monaco/env.ts index 08415ff4..6b90f1f0 100644 --- a/src/monaco/env.ts +++ b/src/monaco/env.ts @@ -1,4 +1,3 @@ -import { jsDelivrUriBase } from '@volar/cdn' import * as volar from '@volar/monaco' import { Uri, editor, languages } from 'monaco-editor-core' import editorWorker from 'monaco-editor-core/esm/vs/editor/editor.worker?worker' @@ -8,6 +7,7 @@ import { getOrCreateModel } from './utils' import type { CreateData } from './vue.worker' import vueWorker from './vue.worker?worker' import * as languageConfigs from './language-configs' +import type { LanguageService } from '@vue/language-service' let initted = false export function initMonaco(store: Store) { @@ -30,7 +30,8 @@ export function initMonaco(store: Store) { for (const model of editor.getModels()) { const uri = model.uri.toString() if (store.files[uri.substring('file:///'.length)]) continue - if (uri.startsWith(jsDelivrUriBase + '/')) continue + + if (uri.startsWith('file:///node_modules')) continue if (uri.startsWith('inmemory://')) continue model.dispose() @@ -40,12 +41,6 @@ export function initMonaco(store: Store) { initted = true } -export class WorkerHost { - onFetchCdnFile(uri: string, text: string) { - getOrCreateModel(Uri.parse(uri), undefined, text) - } -} - let disposeVue: undefined | (() => void) export async function reloadLanguageTools(store: Store) { disposeVue?.() @@ -76,10 +71,9 @@ export async function reloadLanguageTools(store: Store) { } } - const worker = editor.createWebWorker({ + const worker = editor.createWebWorker({ moduleId: 'vs/language/vue/vueWorker', label: 'vue', - host: new WorkerHost(), createData: { tsconfig: store.getTsConfig?.() || {}, dependencies, @@ -88,20 +82,21 @@ export async function reloadLanguageTools(store: Store) { const languageId = ['vue', 'javascript', 'typescript'] const getSyncUris = () => Object.keys(store.files).map((filename) => Uri.parse(`file:///${filename}`)) - const { dispose: disposeMarkers } = volar.editor.activateMarkers( + + const { dispose: disposeMarkers } = volar.activateMarkers( worker, languageId, 'vue', getSyncUris, editor, ) - const { dispose: disposeAutoInsertion } = volar.editor.activateAutoInsertion( + const { dispose: disposeAutoInsertion } = volar.activateAutoInsertion( worker, languageId, getSyncUris, editor, ) - const { dispose: disposeProvides } = await volar.languages.registerProvides( + const { dispose: disposeProvides } = await volar.registerProviders( worker, languageId, getSyncUris, @@ -159,7 +154,7 @@ export function loadMonacoEnv(store: Store) { // Support for go to definition editor.registerEditorOpener({ openCodeEditor(_, resource) { - if (resource.toString().startsWith(jsDelivrUriBase + '/')) { + if (resource.toString().startsWith('file:///node_modules')) { return true } diff --git a/src/monaco/vue.worker.ts b/src/monaco/vue.worker.ts index d0981612..8b941e06 100644 --- a/src/monaco/vue.worker.ts +++ b/src/monaco/vue.worker.ts @@ -2,17 +2,17 @@ import * as worker from 'monaco-editor-core/esm/vs/editor/editor.worker' import type * as monaco from 'monaco-editor-core' import { - createJsDelivrFs, - createJsDelivrUriResolver, - decorateServiceEnvironment, -} from '@volar/cdn' -import { type VueCompilerOptions, resolveConfig } from '@vue/language-service' -import { - createLanguageHost, - createLanguageService, - createServiceEnvironment, + type ServiceEnvironment, + activateAutomaticTypeAcquisition, + createTypeScriptWorkerService, } from '@volar/monaco/worker' -import type { WorkerHost, WorkerMessage } from './env' +import { + type VueCompilerOptions, + getVueLanguageServicePlugins, + createVueLanguagePlugin, + resolveVueCompilerOptions, +} from '@vue/language-service' +import type { WorkerMessage } from './env' export interface CreateData { tsconfig: { @@ -22,70 +22,66 @@ export interface CreateData { dependencies: Record } -let locale: string - let ts: typeof import('typescript') -let tsLocalized: any +let locale: string | undefined self.onmessage = async (msg: MessageEvent) => { if (msg.data?.event === 'init') { - if (msg.data.tsLocale) { - locale = msg.data.tsLocale - } - - ;[ts, tsLocalized] = await Promise.all([ - importTsFromCdn(msg.data.tsVersion), - locale && - fetchJson( - `https://cdn.jsdelivr.net/npm/typescript@${msg.data.tsVersion}/lib/${locale}/diagnosticMessages.generated.json`, - ), - ]) + locale = msg.data.tsLocale + ts = await importTsFromCdn(msg.data.tsVersion) self.postMessage('inited') return } worker.initialize( ( - ctx: monaco.worker.IWorkerContext, - { tsconfig, dependencies }: CreateData, + ctx: monaco.worker.IWorkerContext, + { + tsconfig, + // TODO + dependencies, + }: CreateData, ) => { + const uriToFileName = (uri: string) => uri.substring('file://'.length) + const env: ServiceEnvironment = { + workspaceFolder: 'file:///', + locale, + typescript: { + uriToFileName, + fileNameToUri: (fileName) => 'file://' + fileName, + }, + } + const { options: compilerOptions } = ts.convertCompilerOptionsFromJson( tsconfig?.compilerOptions || {}, '', ) - const env = createServiceEnvironment() - const host = createLanguageHost( - ctx.getMirrorModels, - env, - '/src', - compilerOptions, + const vueCompilerOptions = resolveVueCompilerOptions( + tsconfig.vueCompilerOptions || {}, ) - const jsDelivrFs = createJsDelivrFs(ctx.host.onFetchCdnFile) - const jsDelivrUriResolver = createJsDelivrUriResolver( - '/node_modules', - dependencies, - ) - - if (locale) { - env.locale = locale - } - if (tsLocalized) { - host.getLocalizedDiagnosticMessages = () => tsLocalized - } - - decorateServiceEnvironment(env, jsDelivrUriResolver, jsDelivrFs) - return createLanguageService( - { typescript: ts as any }, + activateAutomaticTypeAcquisition(env) + return createTypeScriptWorkerService({ + typescript: ts, + compilerOptions, + workerContext: ctx, env, - resolveConfig( - ts as any, - {}, - compilerOptions, - tsconfig.vueCompilerOptions || {}, + languagePlugins: [ + createVueLanguagePlugin( + ts, + env.typescript!.uriToFileName, + true, + () => '', // TODO getProjectVersion + () => ctx.getMirrorModels().map((model) => model.uri.toString()), + compilerOptions, + vueCompilerOptions, + ), + ], + servicePlugins: getVueLanguageServicePlugins( + ts, + () => vueCompilerOptions, ), - host, - ) + }) }, ) } @@ -99,14 +95,3 @@ async function importTsFromCdn(tsVersion: string) { globalThis.module = _module return ts as typeof import('typescript') } - -async function fetchJson(url: string) { - try { - const res = await fetch(url) - if (res.status === 200) { - return await res.json() - } - } catch { - // ignore - } -}