diff --git a/.gitignore b/.gitignore index 9a7f190..d209945 100644 --- a/.gitignore +++ b/.gitignore @@ -11,6 +11,7 @@ target-*/ *.pdb .vscode +/.idea # perf & flamegraph perf.data diff --git a/easytier-gui/package.json b/easytier-gui/package.json index 161c215..cde62d7 100644 --- a/easytier-gui/package.json +++ b/easytier-gui/package.json @@ -3,6 +3,7 @@ "type": "module", "version": "2.0.3", "private": true, + "packageManager": "pnpm@9.12.1+sha512.e5a7e52a4183a02d5931057f7a0dbff9d5e9ce3161e33fa68ae392125b79282a8a8a470a51dfc8a0ed86221442eb2fb57019b0990ed24fab519bf0e1bc5ccfc4", "scripts": { "dev": "vite", "build": "vue-tsc --noEmit && vite build", @@ -26,7 +27,7 @@ "primeicons": "^7.0.0", "primevue": "^4.1.0", "tauri-plugin-vpnservice-api": "link:..\\tauri-plugin-vpnservice", - "vue": "^3.5.11", + "vue": "=3.4.38", "vue-i18n": "^10.0.4", "vue-router": "^4.4.5" }, @@ -58,6 +59,5 @@ "vite-plugin-vue-layouts": "^0.11.0", "vue-i18n": "^10.0.0", "vue-tsc": "^2.1.6" - }, - "packageManager": "pnpm@9.12.1+sha512.e5a7e52a4183a02d5931057f7a0dbff9d5e9ce3161e33fa68ae392125b79282a8a8a470a51dfc8a0ed86221442eb2fb57019b0990ed24fab519bf0e1bc5ccfc4" + } } diff --git a/easytier-gui/pnpm-lock.yaml b/easytier-gui/pnpm-lock.yaml index abd64e2..0e6cc68 100644 --- a/easytier-gui/pnpm-lock.yaml +++ b/easytier-gui/pnpm-lock.yaml @@ -28,7 +28,7 @@ importers: version: 2.0.0-rc.1 '@vueuse/core': specifier: ^11.1.0 - version: 11.1.0(vue@3.5.11(typescript@5.6.3)) + version: 11.1.0(vue@3.4.38(typescript@5.6.3)) aura: specifier: link:@primevue\themes\aura version: link:@primevue/themes/aura @@ -37,7 +37,7 @@ importers: version: 1.5.1 pinia: specifier: ^2.2.4 - version: 2.2.4(typescript@5.6.3)(vue@3.5.11(typescript@5.6.3)) + version: 2.2.4(typescript@5.6.3)(vue@3.4.38(typescript@5.6.3)) primeflex: specifier: ^3.3.1 version: 3.3.1 @@ -46,26 +46,26 @@ importers: version: 7.0.0 primevue: specifier: ^4.1.0 - version: 4.1.0(vue@3.5.11(typescript@5.6.3)) + version: 4.1.0(vue@3.4.38(typescript@5.6.3)) tauri-plugin-vpnservice-api: specifier: link:..\tauri-plugin-vpnservice version: link:../tauri-plugin-vpnservice vue: - specifier: ^3.5.11 - version: 3.5.11(typescript@5.6.3) + specifier: '=3.4.38' + version: 3.4.38(typescript@5.6.3) vue-i18n: specifier: ^10.0.4 - version: 10.0.4(vue@3.5.11(typescript@5.6.3)) + version: 10.0.4(vue@3.4.38(typescript@5.6.3)) vue-router: specifier: ^4.4.5 - version: 4.4.5(vue@3.5.11(typescript@5.6.3)) + version: 4.4.5(vue@3.4.38(typescript@5.6.3)) devDependencies: '@antfu/eslint-config': specifier: ^3.7.3 version: 3.7.3(@typescript-eslint/utils@8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.3))(@vue/compiler-sfc@3.5.11)(eslint-plugin-format@0.1.2(eslint@9.12.0(jiti@1.21.6)))(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.3) '@intlify/unplugin-vue-i18n': specifier: ^5.2.0 - version: 5.2.0(@vue/compiler-dom@3.5.11)(eslint@9.12.0(jiti@1.21.6))(rollup@4.24.0)(typescript@5.6.3)(vue-i18n@10.0.4(vue@3.5.11(typescript@5.6.3)))(vue@3.5.11(typescript@5.6.3)) + version: 5.2.0(@vue/compiler-dom@3.5.11)(eslint@9.12.0(jiti@1.21.6))(rollup@4.24.0)(typescript@5.6.3)(vue-i18n@10.0.4(vue@3.4.38(typescript@5.6.3)))(vue@3.4.38(typescript@5.6.3)) '@primevue/auto-import-resolver': specifier: ^4.1.0 version: 4.1.0 @@ -83,10 +83,10 @@ importers: version: 10.0.0 '@vitejs/plugin-vue': specifier: ^5.1.4 - version: 5.1.4(vite@5.4.8(@types/node@22.7.5))(vue@3.5.11(typescript@5.6.3)) + version: 5.1.4(vite@5.4.8(@types/node@22.7.5))(vue@3.4.38(typescript@5.6.3)) '@vue-macros/volar': specifier: 0.30.3 - version: 0.30.3(rollup@4.24.0)(typescript@5.6.3)(vue-tsc@2.1.6(typescript@5.6.3))(vue@3.5.11(typescript@5.6.3)) + version: 0.30.3(rollup@4.24.0)(typescript@5.6.3)(vue-tsc@2.1.6(typescript@5.6.3))(vue@3.4.38(typescript@5.6.3)) autoprefixer: specifier: ^10.4.20 version: 10.4.20(postcss@8.4.47) @@ -110,19 +110,19 @@ importers: version: 5.6.3 unplugin-auto-import: specifier: ^0.18.3 - version: 0.18.3(@vueuse/core@11.1.0(vue@3.5.11(typescript@5.6.3)))(rollup@4.24.0) + version: 0.18.3(@vueuse/core@11.1.0(vue@3.4.38(typescript@5.6.3)))(rollup@4.24.0) unplugin-vue-components: specifier: ^0.27.4 - version: 0.27.4(@babel/parser@7.25.8)(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + version: 0.27.4(@babel/parser@7.25.8)(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) unplugin-vue-macros: specifier: ^2.12.3 - version: 2.12.3(@vueuse/core@11.1.0(vue@3.5.11(typescript@5.6.3)))(esbuild@0.23.1)(rollup@4.24.0)(typescript@5.6.3)(vite@5.4.8(@types/node@22.7.5))(vue-tsc@2.1.6(typescript@5.6.3))(vue@3.5.11(typescript@5.6.3)) + version: 2.12.3(@vueuse/core@11.1.0(vue@3.4.38(typescript@5.6.3)))(esbuild@0.23.1)(rollup@4.24.0)(typescript@5.6.3)(vite@5.4.8(@types/node@22.7.5))(vue-tsc@2.1.6(typescript@5.6.3))(vue@3.4.38(typescript@5.6.3)) unplugin-vue-markdown: specifier: ^0.26.2 version: 0.26.2(rollup@4.24.0)(vite@5.4.8(@types/node@22.7.5)) unplugin-vue-router: specifier: ^0.10.8 - version: 0.10.8(rollup@4.24.0)(vue-router@4.4.5(vue@3.5.11(typescript@5.6.3)))(vue@3.5.11(typescript@5.6.3)) + version: 0.10.8(rollup@4.24.0)(vue-router@4.4.5(vue@3.4.38(typescript@5.6.3)))(vue@3.4.38(typescript@5.6.3)) uuid: specifier: ^10.0.0 version: 10.0.0 @@ -131,10 +131,10 @@ importers: version: 5.4.8(@types/node@22.7.5) vite-plugin-vue-devtools: specifier: ^7.4.6 - version: 7.4.6(rollup@4.24.0)(vite@5.4.8(@types/node@22.7.5))(vue@3.5.11(typescript@5.6.3)) + version: 7.4.6(rollup@4.24.0)(vite@5.4.8(@types/node@22.7.5))(vue@3.4.38(typescript@5.6.3)) vite-plugin-vue-layouts: specifier: ^0.11.0 - version: 0.11.0(vite@5.4.8(@types/node@22.7.5))(vue-router@4.4.5(vue@3.5.11(typescript@5.6.3)))(vue@3.5.11(typescript@5.6.3)) + version: 0.11.0(vite@5.4.8(@types/node@22.7.5))(vue-router@4.4.5(vue@3.4.38(typescript@5.6.3)))(vue@3.4.38(typescript@5.6.3)) vue-tsc: specifier: ^2.1.6 version: 2.1.6(typescript@5.6.3) @@ -1380,15 +1380,27 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@vue/compiler-core@3.4.38': + resolution: {integrity: sha512-8IQOTCWnLFqfHzOGm9+P8OPSEDukgg3Huc92qSG49if/xI2SAwLHQO2qaPQbjCWPBcQoO1WYfXfTACUrWV3c5A==} + '@vue/compiler-core@3.5.11': resolution: {integrity: sha512-PwAdxs7/9Hc3ieBO12tXzmTD+Ln4qhT/56S+8DvrrZ4kLDn4Z/AMUr8tXJD0axiJBS0RKIoNaR0yMuQB9v9Udg==} + '@vue/compiler-dom@3.4.38': + resolution: {integrity: sha512-Osc/c7ABsHXTsETLgykcOwIxFktHfGSUDkb05V61rocEfsFDcjDLH/IHJSNJP+/Sv9KeN2Lx1V6McZzlSb9EhQ==} + '@vue/compiler-dom@3.5.11': resolution: {integrity: sha512-pyGf8zdbDDRkBrEzf8p7BQlMKNNF5Fk/Cf/fQ6PiUz9at4OaUfyXW0dGJTo2Vl1f5U9jSLCNf0EZJEogLXoeew==} + '@vue/compiler-sfc@3.4.38': + resolution: {integrity: sha512-s5QfZ+9PzPh3T5H4hsQDJtI8x7zdJaew/dCGgqZ2630XdzaZ3AD8xGZfBqpT8oaD/p2eedd+pL8tD5vvt5ZYJQ==} + '@vue/compiler-sfc@3.5.11': resolution: {integrity: sha512-gsbBtT4N9ANXXepprle+X9YLg2htQk1sqH/qGJ/EApl+dgpUBdTv3yP7YlR535uHZY3n6XaR0/bKo0BgwwDniw==} + '@vue/compiler-ssr@3.4.38': + resolution: {integrity: sha512-YXznKFQ8dxYpAz9zLuVvfcXhc31FSPFDcqr0kyujbOwNhlmaNvL2QfIy+RZeJgSn5Fk54CWoEUeW+NVBAogGaw==} + '@vue/compiler-ssr@3.5.11': resolution: {integrity: sha512-P4+GPjOuC2aFTk1Z4WANvEhyOykcvEd5bIj2KVNGKGfM745LaXGr++5njpdBTzVz5pZifdlR1kpYSJJpIlSePA==} @@ -1417,20 +1429,37 @@ packages: typescript: optional: true + '@vue/reactivity@3.4.38': + resolution: {integrity: sha512-4vl4wMMVniLsSYYeldAKzbk72+D3hUnkw9z8lDeJacTxAkXeDAP1uE9xr2+aKIN0ipOL8EG2GPouVTH6yF7Gnw==} + '@vue/reactivity@3.5.11': resolution: {integrity: sha512-Nqo5VZEn8MJWlCce8XoyVqHZbd5P2NH+yuAaFzuNSR96I+y1cnuUiq7xfSG+kyvLSiWmaHTKP1r3OZY4mMD50w==} + '@vue/runtime-core@3.4.38': + resolution: {integrity: sha512-21z3wA99EABtuf+O3IhdxP0iHgkBs1vuoCAsCKLVJPEjpVqvblwBnTj42vzHRlWDCyxu9ptDm7sI2ZMcWrQqlA==} + '@vue/runtime-core@3.5.11': resolution: {integrity: sha512-7PsxFGqwfDhfhh0OcDWBG1DaIQIVOLgkwA5q6MtkPiDFjp5gohVnJEahSktwSFLq7R5PtxDKy6WKURVN1UDbzA==} + '@vue/runtime-dom@3.4.38': + resolution: {integrity: sha512-afZzmUreU7vKwKsV17H1NDThEEmdYI+GCAK/KY1U957Ig2NATPVjCROv61R19fjZNzMmiU03n79OMnXyJVN0UA==} + '@vue/runtime-dom@3.5.11': resolution: {integrity: sha512-GNghjecT6IrGf0UhuYmpgaOlN7kxzQBhxWEn08c/SQDxv1yy4IXI1bn81JgEpQ4IXjRxWtPyI8x0/7TF5rPfYQ==} + '@vue/server-renderer@3.4.38': + resolution: {integrity: sha512-NggOTr82FbPEkkUvBm4fTGcwUY8UuTsnWC/L2YZBmvaQ4C4Jl/Ao4HHTB+l7WnFCt5M/dN3l0XLuyjzswGYVCA==} + peerDependencies: + vue: 3.4.38 + '@vue/server-renderer@3.5.11': resolution: {integrity: sha512-cVOwYBxR7Wb1B1FoxYvtjJD8X/9E5nlH4VSkJy2uMA1MzYNdzAAB//l8nrmN9py/4aP+3NjWukf9PZ3TeWULaA==} peerDependencies: vue: 3.5.11 + '@vue/shared@3.4.38': + resolution: {integrity: sha512-q0xCiLkuWWQLzVrecPb0RMsNWyxICOjPrcrwxTUEHb1fsnvni4dcuyG7RT/Ie7VPTvnjzIaWzRMUBsrqNj/hhw==} + '@vue/shared@3.5.11': resolution: {integrity: sha512-W8GgysJVnFo81FthhzurdRAWP/byq3q2qIw70e0JWblzVhjgOMiC2GyovXrZTFQJnFVryYaKGP3Tc9vYzYm6PQ==} @@ -3369,6 +3398,14 @@ packages: peerDependencies: typescript: '>=5.0.0' + vue@3.4.38: + resolution: {integrity: sha512-f0ZgN+mZ5KFgVv9wz0f4OgVKukoXtS3nwET4c2vLBGQR50aI8G0cqbFtLlX9Yiyg3LFGBitruPHt2PxwTduJEw==} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + vue@3.5.11: resolution: {integrity: sha512-/8Wurrd9J3lb72FTQS7gRMNQD4nztTtKPmuDuPuhqXmmpD6+skVjAeahNpVzsuky6Sy9gy7wn8UadqPtt9SQIg==} peerDependencies: @@ -3932,7 +3969,7 @@ snapshots: '@humanwhocodes/retry@0.3.1': {} - '@intlify/bundle-utils@9.0.0-beta.0(vue-i18n@10.0.4(vue@3.5.11(typescript@5.6.3)))': + '@intlify/bundle-utils@9.0.0-beta.0(vue-i18n@10.0.4(vue@3.4.38(typescript@5.6.3)))': dependencies: '@intlify/message-compiler': 10.0.0 '@intlify/shared': 10.0.0 @@ -3944,7 +3981,7 @@ snapshots: source-map-js: 1.2.1 yaml-eslint-parser: 1.2.3 optionalDependencies: - vue-i18n: 10.0.4(vue@3.5.11(typescript@5.6.3)) + vue-i18n: 10.0.4(vue@3.4.38(typescript@5.6.3)) '@intlify/core-base@10.0.4': dependencies: @@ -3965,12 +4002,12 @@ snapshots: '@intlify/shared@10.0.4': {} - '@intlify/unplugin-vue-i18n@5.2.0(@vue/compiler-dom@3.5.11)(eslint@9.12.0(jiti@1.21.6))(rollup@4.24.0)(typescript@5.6.3)(vue-i18n@10.0.4(vue@3.5.11(typescript@5.6.3)))(vue@3.5.11(typescript@5.6.3))': + '@intlify/unplugin-vue-i18n@5.2.0(@vue/compiler-dom@3.5.11)(eslint@9.12.0(jiti@1.21.6))(rollup@4.24.0)(typescript@5.6.3)(vue-i18n@10.0.4(vue@3.4.38(typescript@5.6.3)))(vue@3.4.38(typescript@5.6.3))': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0(jiti@1.21.6)) - '@intlify/bundle-utils': 9.0.0-beta.0(vue-i18n@10.0.4(vue@3.5.11(typescript@5.6.3))) + '@intlify/bundle-utils': 9.0.0-beta.0(vue-i18n@10.0.4(vue@3.4.38(typescript@5.6.3))) '@intlify/shared': 10.0.0 - '@intlify/vue-i18n-extensions': 7.0.0(@intlify/shared@10.0.0)(@vue/compiler-dom@3.5.11)(vue-i18n@10.0.4(vue@3.5.11(typescript@5.6.3)))(vue@3.5.11(typescript@5.6.3)) + '@intlify/vue-i18n-extensions': 7.0.0(@intlify/shared@10.0.0)(@vue/compiler-dom@3.5.11)(vue-i18n@10.0.4(vue@3.4.38(typescript@5.6.3)))(vue@3.4.38(typescript@5.6.3)) '@rollup/pluginutils': 5.1.2(rollup@4.24.0) '@typescript-eslint/scope-manager': 7.18.0 '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.6.3) @@ -3982,9 +4019,9 @@ snapshots: picocolors: 1.1.0 source-map-js: 1.2.1 unplugin: 1.14.1 - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) optionalDependencies: - vue-i18n: 10.0.4(vue@3.5.11(typescript@5.6.3)) + vue-i18n: 10.0.4(vue@3.4.38(typescript@5.6.3)) transitivePeerDependencies: - '@vue/compiler-dom' - eslint @@ -3993,14 +4030,14 @@ snapshots: - typescript - webpack-sources - '@intlify/vue-i18n-extensions@7.0.0(@intlify/shared@10.0.0)(@vue/compiler-dom@3.5.11)(vue-i18n@10.0.4(vue@3.5.11(typescript@5.6.3)))(vue@3.5.11(typescript@5.6.3))': + '@intlify/vue-i18n-extensions@7.0.0(@intlify/shared@10.0.0)(@vue/compiler-dom@3.5.11)(vue-i18n@10.0.4(vue@3.4.38(typescript@5.6.3)))(vue@3.4.38(typescript@5.6.3))': dependencies: '@babel/parser': 7.25.8 optionalDependencies: '@intlify/shared': 10.0.0 '@vue/compiler-dom': 3.5.11 - vue: 3.5.11(typescript@5.6.3) - vue-i18n: 10.0.4(vue@3.5.11(typescript@5.6.3)) + vue: 3.4.38(typescript@5.6.3) + vue-i18n: 10.0.4(vue@3.4.38(typescript@5.6.3)) '@isaacs/cliui@8.0.2': dependencies: @@ -4071,16 +4108,16 @@ snapshots: dependencies: '@primevue/metadata': 4.1.0 - '@primevue/core@4.1.0(vue@3.5.11(typescript@5.6.3))': + '@primevue/core@4.1.0(vue@3.4.38(typescript@5.6.3))': dependencies: '@primeuix/styled': 0.2.0 '@primeuix/utils': 0.2.0 - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) - '@primevue/icons@4.1.0(vue@3.5.11(typescript@5.6.3))': + '@primevue/icons@4.1.0(vue@3.4.38(typescript@5.6.3))': dependencies: '@primeuix/utils': 0.2.0 - '@primevue/core': 4.1.0(vue@3.5.11(typescript@5.6.3)) + '@primevue/core': 4.1.0(vue@3.4.38(typescript@5.6.3)) transitivePeerDependencies: - vue @@ -4368,10 +4405,10 @@ snapshots: '@typescript-eslint/types': 8.8.1 eslint-visitor-keys: 3.4.3 - '@vitejs/plugin-vue@5.1.4(vite@5.4.8(@types/node@22.7.5))(vue@3.5.11(typescript@5.6.3))': + '@vitejs/plugin-vue@5.1.4(vite@5.4.8(@types/node@22.7.5))(vue@3.4.38(typescript@5.6.3))': dependencies: vite: 5.4.8(@types/node@22.7.5) - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) '@vitest/eslint-plugin@1.1.7(@typescript-eslint/utils@8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.3))(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.3)': dependencies: @@ -4392,42 +4429,55 @@ snapshots: path-browserify: 1.0.1 vscode-uri: 3.0.8 - '@vue-macros/api@0.11.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/api@0.11.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: '@babel/types': 7.25.8 - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) resolve.exports: 2.0.2 transitivePeerDependencies: - rollup - vue - '@vue-macros/better-define@1.9.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/better-define@1.9.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/api': 0.11.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/api': 0.11.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) unplugin: 1.14.1 transitivePeerDependencies: - rollup - vue - webpack-sources - '@vue-macros/boolean-prop@0.5.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/boolean-prop@0.5.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) '@vue/compiler-core': 3.5.11 transitivePeerDependencies: - rollup - vue - '@vue-macros/chain-call@0.4.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/chain-call@0.4.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) unplugin: 1.14.1 transitivePeerDependencies: - rollup - vue - webpack-sources + '@vue-macros/common@1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': + dependencies: + '@babel/types': 7.25.8 + '@rollup/pluginutils': 5.1.2(rollup@4.24.0) + '@vue/compiler-sfc': 3.5.11 + ast-kit: 1.2.1 + local-pkg: 0.5.0 + magic-string-ast: 0.6.2 + optionalDependencies: + vue: 3.4.38(typescript@5.6.3) + transitivePeerDependencies: + - rollup + '@vue-macros/common@1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': dependencies: '@babel/types': 7.25.8 @@ -4441,9 +4491,9 @@ snapshots: transitivePeerDependencies: - rollup - '@vue-macros/config@0.4.2(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/config@0.4.2(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) make-synchronized: 0.2.9 unconfig: 0.5.5 transitivePeerDependencies: @@ -4451,71 +4501,71 @@ snapshots: - supports-color - vue - '@vue-macros/define-emit@0.4.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/define-emit@0.4.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/api': 0.11.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/api': 0.11.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) unplugin: 1.14.1 - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) transitivePeerDependencies: - rollup - webpack-sources - '@vue-macros/define-models@1.3.1(@vueuse/core@11.1.0(vue@3.5.11(typescript@5.6.3)))(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/define-models@1.3.1(@vueuse/core@11.1.0(vue@3.4.38(typescript@5.6.3)))(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) ast-walker-scope: 0.6.2 unplugin: 1.14.1 optionalDependencies: - '@vueuse/core': 11.1.0(vue@3.5.11(typescript@5.6.3)) + '@vueuse/core': 11.1.0(vue@3.4.38(typescript@5.6.3)) transitivePeerDependencies: - rollup - vue - webpack-sources - '@vue-macros/define-prop@0.5.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/define-prop@0.5.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/api': 0.11.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/api': 0.11.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) unplugin: 1.14.1 - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) transitivePeerDependencies: - rollup - webpack-sources - '@vue-macros/define-props-refs@1.3.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/define-props-refs@1.3.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) unplugin: 1.14.1 - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) transitivePeerDependencies: - rollup - webpack-sources - '@vue-macros/define-props@4.0.1(@vue-macros/reactivity-transform@1.1.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)))(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/define-props@4.0.1(@vue-macros/reactivity-transform@1.1.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)))(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/reactivity-transform': 1.1.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/reactivity-transform': 1.1.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) unplugin: 1.14.1 - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) transitivePeerDependencies: - rollup - webpack-sources - '@vue-macros/define-render@1.6.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/define-render@1.6.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) unplugin: 1.14.1 - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) transitivePeerDependencies: - rollup - webpack-sources - '@vue-macros/define-slots@1.2.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/define-slots@1.2.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) unplugin: 1.14.1 - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) transitivePeerDependencies: - rollup - webpack-sources @@ -4529,37 +4579,37 @@ snapshots: transitivePeerDependencies: - typescript - '@vue-macros/export-expose@0.3.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/export-expose@0.3.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) '@vue/compiler-sfc': 3.5.11 unplugin: 1.14.1 - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) transitivePeerDependencies: - rollup - webpack-sources - '@vue-macros/export-props@0.6.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/export-props@0.6.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) unplugin: 1.14.1 - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) transitivePeerDependencies: - rollup - webpack-sources - '@vue-macros/export-render@0.3.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/export-render@0.3.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) unplugin: 1.14.1 - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) transitivePeerDependencies: - rollup - webpack-sources - '@vue-macros/hoist-static@1.6.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/hoist-static@1.6.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) unplugin: 1.14.1 transitivePeerDependencies: - rollup @@ -4576,9 +4626,9 @@ snapshots: - typescript - webpack-sources - '@vue-macros/named-template@0.5.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/named-template@0.5.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) '@vue/compiler-dom': 3.5.11 unplugin: 1.14.1 transitivePeerDependencies: @@ -4586,31 +4636,31 @@ snapshots: - vue - webpack-sources - '@vue-macros/reactivity-transform@1.1.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/reactivity-transform@1.1.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: '@babel/parser': 7.25.8 - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) '@vue/compiler-core': 3.5.11 '@vue/shared': 3.5.11 magic-string: 0.30.12 unplugin: 1.14.1 - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) transitivePeerDependencies: - rollup - webpack-sources - '@vue-macros/script-lang@0.2.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/script-lang@0.2.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) unplugin: 1.14.1 - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) transitivePeerDependencies: - rollup - webpack-sources - '@vue-macros/setup-block@0.4.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/setup-block@0.4.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) '@vue/compiler-dom': 3.5.11 unplugin: 1.14.1 transitivePeerDependencies: @@ -4618,56 +4668,56 @@ snapshots: - vue - webpack-sources - '@vue-macros/setup-component@0.18.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/setup-component@0.18.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) unplugin: 1.14.1 transitivePeerDependencies: - rollup - vue - webpack-sources - '@vue-macros/setup-sfc@0.18.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/setup-sfc@0.18.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) unplugin: 1.14.1 transitivePeerDependencies: - rollup - vue - webpack-sources - '@vue-macros/short-bind@1.1.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/short-bind@1.1.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) '@vue/compiler-core': 3.5.11 transitivePeerDependencies: - rollup - vue - '@vue-macros/short-emits@1.6.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/short-emits@1.6.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) unplugin: 1.14.1 transitivePeerDependencies: - rollup - vue - webpack-sources - '@vue-macros/short-vmodel@1.5.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/short-vmodel@1.5.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) '@vue/compiler-core': 3.5.11 transitivePeerDependencies: - rollup - vue - '@vue-macros/volar@0.30.3(rollup@4.24.0)(typescript@5.6.3)(vue-tsc@2.1.6(typescript@5.6.3))(vue@3.5.11(typescript@5.6.3))': + '@vue-macros/volar@0.30.3(rollup@4.24.0)(typescript@5.6.3)(vue-tsc@2.1.6(typescript@5.6.3))(vue@3.4.38(typescript@5.6.3))': dependencies: - '@vue-macros/boolean-prop': 0.5.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/config': 0.4.2(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/short-bind': 1.1.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/short-vmodel': 1.5.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/boolean-prop': 0.5.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/config': 0.4.2(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/short-bind': 1.1.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/short-vmodel': 1.5.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) '@vue/language-core': 2.1.6(typescript@5.6.3) muggle-string: 0.4.1 optionalDependencies: @@ -4708,6 +4758,14 @@ snapshots: transitivePeerDependencies: - supports-color + '@vue/compiler-core@3.4.38': + dependencies: + '@babel/parser': 7.25.8 + '@vue/shared': 3.4.38 + entities: 4.5.0 + estree-walker: 2.0.2 + source-map-js: 1.2.1 + '@vue/compiler-core@3.5.11': dependencies: '@babel/parser': 7.25.8 @@ -4716,11 +4774,28 @@ snapshots: estree-walker: 2.0.2 source-map-js: 1.2.1 + '@vue/compiler-dom@3.4.38': + dependencies: + '@vue/compiler-core': 3.4.38 + '@vue/shared': 3.4.38 + '@vue/compiler-dom@3.5.11': dependencies: '@vue/compiler-core': 3.5.11 '@vue/shared': 3.5.11 + '@vue/compiler-sfc@3.4.38': + dependencies: + '@babel/parser': 7.25.8 + '@vue/compiler-core': 3.4.38 + '@vue/compiler-dom': 3.4.38 + '@vue/compiler-ssr': 3.4.38 + '@vue/shared': 3.4.38 + estree-walker: 2.0.2 + magic-string: 0.30.12 + postcss: 8.4.47 + source-map-js: 1.2.1 + '@vue/compiler-sfc@3.5.11': dependencies: '@babel/parser': 7.25.8 @@ -4733,6 +4808,11 @@ snapshots: postcss: 8.4.47 source-map-js: 1.2.1 + '@vue/compiler-ssr@3.4.38': + dependencies: + '@vue/compiler-dom': 3.4.38 + '@vue/shared': 3.4.38 + '@vue/compiler-ssr@3.5.11': dependencies: '@vue/compiler-dom': 3.5.11 @@ -4745,7 +4825,7 @@ snapshots: '@vue/devtools-api@6.6.4': {} - '@vue/devtools-core@7.4.6(vite@5.4.8(@types/node@22.7.5))(vue@3.5.11(typescript@5.6.3))': + '@vue/devtools-core@7.4.6(vite@5.4.8(@types/node@22.7.5))(vue@3.4.38(typescript@5.6.3))': dependencies: '@vue/devtools-kit': 7.4.6 '@vue/devtools-shared': 7.4.6 @@ -4753,7 +4833,7 @@ snapshots: nanoid: 3.3.7 pathe: 1.1.2 vite-hot-client: 0.2.3(vite@5.4.8(@types/node@22.7.5)) - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) transitivePeerDependencies: - vite @@ -4784,15 +4864,31 @@ snapshots: optionalDependencies: typescript: 5.6.3 + '@vue/reactivity@3.4.38': + dependencies: + '@vue/shared': 3.4.38 + '@vue/reactivity@3.5.11': dependencies: '@vue/shared': 3.5.11 + '@vue/runtime-core@3.4.38': + dependencies: + '@vue/reactivity': 3.4.38 + '@vue/shared': 3.4.38 + '@vue/runtime-core@3.5.11': dependencies: '@vue/reactivity': 3.5.11 '@vue/shared': 3.5.11 + '@vue/runtime-dom@3.4.38': + dependencies: + '@vue/reactivity': 3.4.38 + '@vue/runtime-core': 3.4.38 + '@vue/shared': 3.4.38 + csstype: 3.1.3 + '@vue/runtime-dom@3.5.11': dependencies: '@vue/reactivity': 3.5.11 @@ -4800,29 +4896,37 @@ snapshots: '@vue/shared': 3.5.11 csstype: 3.1.3 + '@vue/server-renderer@3.4.38(vue@3.4.38(typescript@5.6.3))': + dependencies: + '@vue/compiler-ssr': 3.4.38 + '@vue/shared': 3.4.38 + vue: 3.4.38(typescript@5.6.3) + '@vue/server-renderer@3.5.11(vue@3.5.11(typescript@5.6.3))': dependencies: '@vue/compiler-ssr': 3.5.11 '@vue/shared': 3.5.11 vue: 3.5.11(typescript@5.6.3) + '@vue/shared@3.4.38': {} + '@vue/shared@3.5.11': {} - '@vueuse/core@11.1.0(vue@3.5.11(typescript@5.6.3))': + '@vueuse/core@11.1.0(vue@3.4.38(typescript@5.6.3))': dependencies: '@types/web-bluetooth': 0.0.20 '@vueuse/metadata': 11.1.0 - '@vueuse/shared': 11.1.0(vue@3.5.11(typescript@5.6.3)) - vue-demi: 0.14.10(vue@3.5.11(typescript@5.6.3)) + '@vueuse/shared': 11.1.0(vue@3.4.38(typescript@5.6.3)) + vue-demi: 0.14.10(vue@3.4.38(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - vue '@vueuse/metadata@11.1.0': {} - '@vueuse/shared@11.1.0(vue@3.5.11(typescript@5.6.3))': + '@vueuse/shared@11.1.0(vue@3.4.38(typescript@5.6.3))': dependencies: - vue-demi: 0.14.10(vue@3.5.11(typescript@5.6.3)) + vue-demi: 0.14.10(vue@3.4.38(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - vue @@ -6322,11 +6426,11 @@ snapshots: pify@2.3.0: {} - pinia@2.2.4(typescript@5.6.3)(vue@3.5.11(typescript@5.6.3)): + pinia@2.2.4(typescript@5.6.3)(vue@3.4.38(typescript@5.6.3)): dependencies: '@vue/devtools-api': 6.6.4 - vue: 3.5.11(typescript@5.6.3) - vue-demi: 0.14.10(vue@3.5.11(typescript@5.6.3)) + vue: 3.4.38(typescript@5.6.3) + vue-demi: 0.14.10(vue@3.4.38(typescript@5.6.3)) optionalDependencies: typescript: 5.6.3 @@ -6389,12 +6493,12 @@ snapshots: primeicons@7.0.0: {} - primevue@4.1.0(vue@3.5.11(typescript@5.6.3)): + primevue@4.1.0(vue@3.4.38(typescript@5.6.3)): dependencies: '@primeuix/styled': 0.2.0 '@primeuix/utils': 0.2.0 - '@primevue/core': 4.1.0(vue@3.5.11(typescript@5.6.3)) - '@primevue/icons': 4.1.0(vue@3.5.11(typescript@5.6.3)) + '@primevue/core': 4.1.0(vue@3.4.38(typescript@5.6.3)) + '@primevue/icons': 4.1.0(vue@3.4.38(typescript@5.6.3)) transitivePeerDependencies: - vue @@ -6772,7 +6876,7 @@ snapshots: universalify@2.0.1: {} - unplugin-auto-import@0.18.3(@vueuse/core@11.1.0(vue@3.5.11(typescript@5.6.3)))(rollup@4.24.0): + unplugin-auto-import@0.18.3(@vueuse/core@11.1.0(vue@3.4.38(typescript@5.6.3)))(rollup@4.24.0): dependencies: '@antfu/utils': 0.7.10 '@rollup/pluginutils': 5.1.2(rollup@4.24.0) @@ -6783,7 +6887,7 @@ snapshots: unimport: 3.13.1(rollup@4.24.0) unplugin: 1.14.1 optionalDependencies: - '@vueuse/core': 11.1.0(vue@3.5.11(typescript@5.6.3)) + '@vueuse/core': 11.1.0(vue@3.4.38(typescript@5.6.3)) transitivePeerDependencies: - rollup - webpack-sources @@ -6799,7 +6903,7 @@ snapshots: transitivePeerDependencies: - webpack-sources - unplugin-vue-components@0.27.4(@babel/parser@7.25.8)(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)): + unplugin-vue-components@0.27.4(@babel/parser@7.25.8)(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)): dependencies: '@antfu/utils': 0.7.10 '@rollup/pluginutils': 5.1.2(rollup@4.24.0) @@ -6811,7 +6915,7 @@ snapshots: minimatch: 9.0.5 mlly: 1.7.2 unplugin: 1.14.1 - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) optionalDependencies: '@babel/parser': 7.25.8 transitivePeerDependencies: @@ -6819,9 +6923,9 @@ snapshots: - supports-color - webpack-sources - unplugin-vue-define-options@1.5.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)): + unplugin-vue-define-options@1.5.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)): dependencies: - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) ast-walker-scope: 0.6.2 unplugin: 1.14.1 transitivePeerDependencies: @@ -6829,40 +6933,40 @@ snapshots: - vue - webpack-sources - unplugin-vue-macros@2.12.3(@vueuse/core@11.1.0(vue@3.5.11(typescript@5.6.3)))(esbuild@0.23.1)(rollup@4.24.0)(typescript@5.6.3)(vite@5.4.8(@types/node@22.7.5))(vue-tsc@2.1.6(typescript@5.6.3))(vue@3.5.11(typescript@5.6.3)): + unplugin-vue-macros@2.12.3(@vueuse/core@11.1.0(vue@3.4.38(typescript@5.6.3)))(esbuild@0.23.1)(rollup@4.24.0)(typescript@5.6.3)(vite@5.4.8(@types/node@22.7.5))(vue-tsc@2.1.6(typescript@5.6.3))(vue@3.4.38(typescript@5.6.3)): dependencies: - '@vue-macros/better-define': 1.9.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/boolean-prop': 0.5.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/chain-call': 0.4.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/config': 0.4.2(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/define-emit': 0.4.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/define-models': 1.3.1(@vueuse/core@11.1.0(vue@3.5.11(typescript@5.6.3)))(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/define-prop': 0.5.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/define-props': 4.0.1(@vue-macros/reactivity-transform@1.1.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)))(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/define-props-refs': 1.3.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/define-render': 1.6.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/define-slots': 1.2.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/better-define': 1.9.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/boolean-prop': 0.5.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/chain-call': 0.4.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/config': 0.4.2(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/define-emit': 0.4.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/define-models': 1.3.1(@vueuse/core@11.1.0(vue@3.4.38(typescript@5.6.3)))(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/define-prop': 0.5.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/define-props': 4.0.1(@vue-macros/reactivity-transform@1.1.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)))(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/define-props-refs': 1.3.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/define-render': 1.6.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/define-slots': 1.2.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) '@vue-macros/devtools': 0.4.0(typescript@5.6.3)(vite@5.4.8(@types/node@22.7.5)) - '@vue-macros/export-expose': 0.3.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/export-props': 0.6.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/export-render': 0.3.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/hoist-static': 1.6.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/export-expose': 0.3.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/export-props': 0.6.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/export-render': 0.3.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/hoist-static': 1.6.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) '@vue-macros/jsx-directive': 0.9.1(rollup@4.24.0)(typescript@5.6.3) - '@vue-macros/named-template': 0.5.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/reactivity-transform': 1.1.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/script-lang': 0.2.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/setup-block': 0.4.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/setup-component': 0.18.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/setup-sfc': 0.18.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/short-bind': 1.1.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/short-emits': 1.6.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/short-vmodel': 1.5.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - '@vue-macros/volar': 0.30.3(rollup@4.24.0)(typescript@5.6.3)(vue-tsc@2.1.6(typescript@5.6.3))(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/named-template': 0.5.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/reactivity-transform': 1.1.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/script-lang': 0.2.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/setup-block': 0.4.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/setup-component': 0.18.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/setup-sfc': 0.18.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/short-bind': 1.1.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/short-emits': 1.6.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/short-vmodel': 1.5.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + '@vue-macros/volar': 0.30.3(rollup@4.24.0)(typescript@5.6.3)(vue-tsc@2.1.6(typescript@5.6.3))(vue@3.4.38(typescript@5.6.3)) unplugin: 1.14.1 unplugin-combine: 1.0.3(esbuild@0.23.1)(rollup@4.24.0)(vite@5.4.8(@types/node@22.7.5)) - unplugin-vue-define-options: 1.5.1(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) - vue: 3.5.11(typescript@5.6.3) + unplugin-vue-define-options: 1.5.1(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) + vue: 3.4.38(typescript@5.6.3) transitivePeerDependencies: - '@rspack/core' - '@vueuse/core' @@ -6890,11 +6994,11 @@ snapshots: - rollup - webpack-sources - unplugin-vue-router@0.10.8(rollup@4.24.0)(vue-router@4.4.5(vue@3.5.11(typescript@5.6.3)))(vue@3.5.11(typescript@5.6.3)): + unplugin-vue-router@0.10.8(rollup@4.24.0)(vue-router@4.4.5(vue@3.4.38(typescript@5.6.3)))(vue@3.4.38(typescript@5.6.3)): dependencies: '@babel/types': 7.25.8 '@rollup/pluginutils': 5.1.2(rollup@4.24.0) - '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.5.11(typescript@5.6.3)) + '@vue-macros/common': 1.14.0(rollup@4.24.0)(vue@3.4.38(typescript@5.6.3)) ast-walker-scope: 0.6.2 chokidar: 3.6.0 fast-glob: 3.3.2 @@ -6907,7 +7011,7 @@ snapshots: unplugin: 1.14.1 yaml: 2.5.1 optionalDependencies: - vue-router: 4.4.5(vue@3.5.11(typescript@5.6.3)) + vue-router: 4.4.5(vue@3.4.38(typescript@5.6.3)) transitivePeerDependencies: - rollup - vue @@ -6957,9 +7061,9 @@ snapshots: - rollup - supports-color - vite-plugin-vue-devtools@7.4.6(rollup@4.24.0)(vite@5.4.8(@types/node@22.7.5))(vue@3.5.11(typescript@5.6.3)): + vite-plugin-vue-devtools@7.4.6(rollup@4.24.0)(vite@5.4.8(@types/node@22.7.5))(vue@3.4.38(typescript@5.6.3)): dependencies: - '@vue/devtools-core': 7.4.6(vite@5.4.8(@types/node@22.7.5))(vue@3.5.11(typescript@5.6.3)) + '@vue/devtools-core': 7.4.6(vite@5.4.8(@types/node@22.7.5))(vue@3.4.38(typescript@5.6.3)) '@vue/devtools-kit': 7.4.6 '@vue/devtools-shared': 7.4.6 execa: 8.0.1 @@ -6988,13 +7092,13 @@ snapshots: transitivePeerDependencies: - supports-color - vite-plugin-vue-layouts@0.11.0(vite@5.4.8(@types/node@22.7.5))(vue-router@4.4.5(vue@3.5.11(typescript@5.6.3)))(vue@3.5.11(typescript@5.6.3)): + vite-plugin-vue-layouts@0.11.0(vite@5.4.8(@types/node@22.7.5))(vue-router@4.4.5(vue@3.4.38(typescript@5.6.3)))(vue@3.4.38(typescript@5.6.3)): dependencies: debug: 4.3.7 fast-glob: 3.3.2 vite: 5.4.8(@types/node@22.7.5) - vue: 3.5.11(typescript@5.6.3) - vue-router: 4.4.5(vue@3.5.11(typescript@5.6.3)) + vue: 3.4.38(typescript@5.6.3) + vue-router: 4.4.5(vue@3.4.38(typescript@5.6.3)) transitivePeerDependencies: - supports-color @@ -7009,9 +7113,9 @@ snapshots: vscode-uri@3.0.8: {} - vue-demi@0.14.10(vue@3.5.11(typescript@5.6.3)): + vue-demi@0.14.10(vue@3.4.38(typescript@5.6.3)): dependencies: - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) vue-eslint-parser@9.4.3(eslint@9.12.0(jiti@1.21.6)): dependencies: @@ -7026,17 +7130,17 @@ snapshots: transitivePeerDependencies: - supports-color - vue-i18n@10.0.4(vue@3.5.11(typescript@5.6.3)): + vue-i18n@10.0.4(vue@3.4.38(typescript@5.6.3)): dependencies: '@intlify/core-base': 10.0.4 '@intlify/shared': 10.0.4 '@vue/devtools-api': 6.6.4 - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) - vue-router@4.4.5(vue@3.5.11(typescript@5.6.3)): + vue-router@4.4.5(vue@3.4.38(typescript@5.6.3)): dependencies: '@vue/devtools-api': 6.6.4 - vue: 3.5.11(typescript@5.6.3) + vue: 3.4.38(typescript@5.6.3) vue-tsc@2.1.6(typescript@5.6.3): dependencies: @@ -7045,6 +7149,16 @@ snapshots: semver: 7.6.3 typescript: 5.6.3 + vue@3.4.38(typescript@5.6.3): + dependencies: + '@vue/compiler-dom': 3.4.38 + '@vue/compiler-sfc': 3.4.38 + '@vue/runtime-dom': 3.4.38 + '@vue/server-renderer': 3.4.38(vue@3.4.38(typescript@5.6.3)) + '@vue/shared': 3.4.38 + optionalDependencies: + typescript: 5.6.3 + vue@3.5.11(typescript@5.6.3): dependencies: '@vue/compiler-dom': 3.5.11 diff --git a/easytier/Cargo.toml b/easytier/Cargo.toml index 456aa42..96795bc 100644 --- a/easytier/Cargo.toml +++ b/easytier/Cargo.toml @@ -21,12 +21,10 @@ path = "src/easytier-core.rs" [[bin]] name = "easytier-cli" path = "src/easytier-cli.rs" -test = false [lib] name = "easytier" path = "src/lib.rs" -test = false [dependencies] git-version = "0.3.9" diff --git a/easytier/build.rs b/easytier/build.rs index 53179e5..499346d 100644 --- a/easytier/build.rs +++ b/easytier/build.rs @@ -147,7 +147,7 @@ fn main() -> Result<(), Box> { .type_attribute("peer_rpc.ForeignNetworkRouteInfoKey", "#[derive(Hash, Eq)]") .type_attribute("common.RpcDescriptor", "#[derive(Hash, Eq)]") .service_generator(Box::new(rpc_build::ServiceGenerator::new())) - .btree_map(&["."]) + .btree_map(["."]) .compile_protos(&proto_files, &["src/proto/"]) .unwrap(); diff --git a/easytier/src/easytier-cli.rs b/easytier/src/easytier-cli.rs index f68e1e5..7cfce53 100644 --- a/easytier/src/easytier-cli.rs +++ b/easytier/src/easytier-cli.rs @@ -1,33 +1,29 @@ -#![allow(dead_code)] - use std::{net::SocketAddr, sync::Mutex, time::Duration, vec}; use anyhow::{Context, Ok}; use clap::{command, Args, Parser, Subcommand}; -use common::{constants::EASYTIER_VERSION, stun::StunInfoCollectorTrait}; -use proto::{ - common::NatType, - peer_rpc::{GetGlobalPeerMapRequest, PeerCenterRpc, PeerCenterRpcClientFactory}, - rpc_impl::standalone::StandAloneClient, - rpc_types::controller::BaseController, -}; -use tokio::time::timeout; -use tunnel::tcp::TcpTunnelConnector; -use utils::{list_peer_route_pair, PeerRoutePair}; - -mod arch; -mod common; -mod proto; -mod tunnel; -mod utils; - -use crate::{ - common::stun::StunInfoCollector, - proto::cli::*, - utils::{cost_to_str, float_to_str}, -}; use humansize::format_size; use tabled::settings::Style; +use tokio::time::timeout; + +use easytier::{ + common::{constants::EASYTIER_VERSION, stun::StunInfoCollector, stun::StunInfoCollectorTrait}, + proto::{ + cli::{ + ConnectorManageRpc, ConnectorManageRpcClientFactory, DumpRouteRequest, + GetVpnPortalInfoRequest, ListConnectorRequest, ListForeignNetworkRequest, + ListGlobalForeignNetworkRequest, ListPeerRequest, ListPeerResponse, ListRouteRequest, + ListRouteResponse, NodeInfo, PeerManageRpc, PeerManageRpcClientFactory, + ShowNodeInfoRequest, VpnPortalRpc, VpnPortalRpcClientFactory, + }, + common::NatType, + peer_rpc::{GetGlobalPeerMapRequest, PeerCenterRpc, PeerCenterRpcClientFactory}, + rpc_impl::standalone::StandAloneClient, + rpc_types::controller::BaseController, + }, + tunnel::tcp::TcpTunnelConnector, + utils::{cost_to_str, float_to_str, list_peer_route_pair, PeerRoutePair}, +}; #[derive(Parser, Debug)] #[command(name = "easytier-cli", author, version = EASYTIER_VERSION, about, long_about = None)] @@ -230,7 +226,6 @@ impl CommandHandler { ipv4: p .route .ipv4_addr - .clone() .map(|ip| ip.to_string()) .unwrap_or_default(), hostname: p.route.hostname.clone(), @@ -239,7 +234,7 @@ impl CommandHandler { loss_rate: float_to_str(p.get_loss_rate().unwrap_or(0.0), 3), rx_bytes: format_size(p.get_rx_bytes().unwrap_or(0), humansize::DECIMAL), tx_bytes: format_size(p.get_tx_bytes().unwrap_or(0), humansize::DECIMAL), - tunnel_proto: p.get_conn_protos().unwrap_or(vec![]).join(",").to_string(), + tunnel_proto: p.get_conn_protos().unwrap_or_default().join(",").to_string(), nat_type: p.get_udp_nat_type(), id: p.route.peer_id.to_string(), version: if p.route.version.is_empty() { @@ -294,7 +289,7 @@ impl CommandHandler { println!( "{}", - tabled::Table::new(items).with(Style::modern()).to_string() + tabled::Table::new(items).with(Style::modern()) ); Ok(()) @@ -421,7 +416,6 @@ impl CommandHandler { ipv4: p .route .ipv4_addr - .clone() .map(|ip| ip.to_string()) .unwrap_or_default(), hostname: p.route.hostname.clone(), @@ -441,7 +435,6 @@ impl CommandHandler { ipv4: p .route .ipv4_addr - .clone() .map(|ip| ip.to_string()) .unwrap_or_default(), hostname: p.route.hostname.clone(), @@ -449,7 +442,6 @@ impl CommandHandler { next_hop_ipv4: next_hop_pair .route .ipv4_addr - .clone() .map(|ip| ip.to_string()) .unwrap_or_default(), next_hop_hostname: next_hop_pair.route.hostname.clone(), @@ -466,7 +458,7 @@ impl CommandHandler { println!( "{}", - tabled::Table::new(items).with(Style::modern()).to_string() + tabled::Table::new(items).with(Style::modern()) ); Ok(()) @@ -588,7 +580,6 @@ async fn main() -> Result<(), Error> { "{}", tabled::Table::new(table_rows) .with(Style::modern()) - .to_string() ); } SubCommand::VpnPortal => { @@ -643,7 +634,7 @@ async fn main() -> Result<(), Error> { builder.push_record(vec![format!("Listener {}", idx).as_str(), l]); } - println!("{}", builder.build().with(Style::modern()).to_string()); + println!("{}", builder.build().with(Style::modern())); } Some(NodeSubCommand::Config) => { println!("{}", node_info.config); diff --git a/easytier/src/easytier-core.rs b/easytier/src/easytier-core.rs index 3887b9a..ee53298 100644 --- a/easytier/src/easytier-core.rs +++ b/easytier/src/easytier-core.rs @@ -1,53 +1,33 @@ -#![allow(dead_code)] - -#[cfg(test)] -mod tests; +#[macro_use] +extern crate rust_i18n; use std::{ ffi::OsString, net::{Ipv4Addr, SocketAddr}, path::PathBuf }; -#[macro_use] -extern crate rust_i18n; - use anyhow::Context; use clap::Parser; - -mod arch; -mod common; -mod connector; -mod gateway; -mod instance; -mod launcher; -mod peer_center; -mod peers; -mod proto; -mod tunnel; -mod utils; -mod vpn_portal; - -use common::{ - config::{ConsoleLoggerConfig, FileLoggerConfig, NetworkIdentity, PeerConfig, VpnPortalConfig}, - constants::EASYTIER_VERSION, - global_ctx::EventBusSubscriber, - scoped_task::ScopedTask, -}; use tokio::net::TcpSocket; -use utils::setup_panic_handler; -use crate::{ +use easytier::{ common::{ - config::{ConfigLoader, TomlConfigLoader}, - global_ctx::GlobalCtxEvent, + config::{ + ConfigLoader, ConsoleLoggerConfig, FileLoggerConfig, NetworkIdentity, PeerConfig, + TomlConfigLoader, VpnPortalConfig, + }, + constants::EASYTIER_VERSION, + global_ctx::{EventBusSubscriber, GlobalCtxEvent}, + scoped_task::ScopedTask, }, - utils::init_logger, + launcher, proto, + utils::{init_logger, setup_panic_handler}, }; #[cfg(target_os = "windows")] windows_service::define_windows_service!(ffi_service_main, win_service_main); #[cfg(feature = "mimalloc")] -use mimalloc_rust::*; +use mimalloc_rust::GlobalMiMalloc; #[cfg(feature = "mimalloc")] #[global_allocator] @@ -511,7 +491,7 @@ impl From for TomlConfigLoader { f.enable_encryption = !cli.disable_encryption; f.enable_ipv6 = !cli.disable_ipv6; f.latency_first = cli.latency_first; - f.dev_name = cli.dev_name.unwrap_or(Default::default()); + f.dev_name = cli.dev_name.unwrap_or_default(); if let Some(mtu) = cli.mtu { f.mtu = mtu; } @@ -546,7 +526,7 @@ fn print_event(msg: String) { ); } -fn peer_conn_info_to_string(p: crate::proto::cli::PeerConnInfo) -> String { +fn peer_conn_info_to_string(p: proto::cli::PeerConnInfo) -> String { format!( "my_peer_id: {}, dst_peer_id: {}, tunnel_info: {:?}", p.my_peer_id, p.peer_id, p.tunnel diff --git a/easytier/src/lib.rs b/easytier/src/lib.rs index e1e0dac..f719d88 100644 --- a/easytier/src/lib.rs +++ b/easytier/src/lib.rs @@ -5,13 +5,16 @@ mod connector; mod gateway; mod instance; mod peer_center; -mod peers; mod vpn_portal; pub mod common; pub mod launcher; +pub mod peers; pub mod proto; pub mod tunnel; pub mod utils; +#[cfg(test)] +mod tests; + pub const VERSION: &str = common::constants::EASYTIER_VERSION; diff --git a/easytier/src/proto/mod.rs b/easytier/src/proto/mod.rs index a05e5e0..4610ba6 100644 --- a/easytier/src/proto/mod.rs +++ b/easytier/src/proto/mod.rs @@ -6,4 +6,5 @@ pub mod common; pub mod error; pub mod peer_rpc; +#[cfg(test)] pub mod tests; diff --git a/easytier/src/tests/mod.rs b/easytier/src/tests/mod.rs index cd6b26c..c51d61d 100644 --- a/easytier/src/tests/mod.rs +++ b/easytier/src/tests/mod.rs @@ -1,8 +1,9 @@ -use crate::common::PeerId; - #[cfg(target_os = "linux")] mod three_node; +use crate::common::PeerId; +use crate::peers::peer_manager::PeerManager; + pub fn get_guest_veth_name(net_ns: &str) -> &str { Box::leak(format!("veth_{}_g", net_ns).into_boxed_str()) } @@ -14,29 +15,29 @@ pub fn get_host_veth_name(net_ns: &str) -> &str { pub fn del_netns(name: &str) { // del veth host let _ = std::process::Command::new("ip") - .args(&["link", "del", get_host_veth_name(name)]) + .args(["link", "del", get_host_veth_name(name)]) .output(); let _ = std::process::Command::new("ip") - .args(&["netns", "del", name]) + .args(["netns", "del", name]) .output(); } pub fn create_netns(name: &str, ipv4: &str) { // create netns let _ = std::process::Command::new("ip") - .args(&["netns", "add", name]) + .args(["netns", "add", name]) .output() .unwrap(); // set lo up let _ = std::process::Command::new("ip") - .args(&["netns", "exec", name, "ip", "link", "set", "lo", "up"]) + .args(["netns", "exec", name, "ip", "link", "set", "lo", "up"]) .output() .unwrap(); let _ = std::process::Command::new("ip") - .args(&[ + .args([ "link", "add", get_host_veth_name(name), @@ -50,12 +51,12 @@ pub fn create_netns(name: &str, ipv4: &str) { .unwrap(); let _ = std::process::Command::new("ip") - .args(&["link", "set", get_guest_veth_name(name), "netns", name]) + .args(["link", "set", get_guest_veth_name(name), "netns", name]) .output() .unwrap(); let _ = std::process::Command::new("ip") - .args(&[ + .args([ "netns", "exec", name, @@ -69,12 +70,12 @@ pub fn create_netns(name: &str, ipv4: &str) { .unwrap(); let _ = std::process::Command::new("ip") - .args(&["link", "set", get_host_veth_name(name), "up"]) + .args(["link", "set", get_host_veth_name(name), "up"]) .output() .unwrap(); let _ = std::process::Command::new("ip") - .args(&[ + .args([ "netns", "exec", name, @@ -92,25 +93,25 @@ pub fn create_netns(name: &str, ipv4: &str) { pub fn prepare_bridge(name: &str) { // del bridge with brctl let _ = std::process::Command::new("brctl") - .args(&["delbr", name]) + .args(["delbr", name]) .output(); // create new br let _ = std::process::Command::new("brctl") - .args(&["addbr", name]) + .args(["addbr", name]) .output(); } pub fn add_ns_to_bridge(br_name: &str, ns_name: &str) { // use brctl to add ns to bridge let _ = std::process::Command::new("brctl") - .args(&["addif", br_name, get_host_veth_name(ns_name)]) + .args(["addif", br_name, get_host_veth_name(ns_name)]) .output() .unwrap(); // set bridge up let _ = std::process::Command::new("ip") - .args(&["link", "set", br_name, "up"]) + .args(["link", "set", br_name, "up"]) .output() .unwrap(); } @@ -143,7 +144,7 @@ fn check_route(ipv4: &str, dst_peer_id: PeerId, routes: Vec, + mgr: &std::sync::Arc, ipv4: &str, dst_peer_id: PeerId, proxy_cidr: &str, @@ -167,7 +168,7 @@ async fn wait_proxy_route_appear( fn set_link_status(net_ns: &str, up: bool) { let _ = std::process::Command::new("ip") - .args(&[ + .args([ "netns", "exec", net_ns, diff --git a/easytier/src/utils.rs b/easytier/src/utils.rs index 9aba0cf..31e3a56 100644 --- a/easytier/src/utils.rs +++ b/easytier/src/utils.rs @@ -194,6 +194,7 @@ pub fn init_logger( .rotation(tracing_appender::rolling::Rotation::DAILY) .max_log_files(5) .filename_prefix(file_config.file.unwrap_or("easytier".to_string())) + .filename_suffix("log") .build(file_config.dir.unwrap_or("./".to_string())) .with_context(|| "failed to initialize rolling file appender")?; file_layer = Some(