diff --git a/package.json b/package.json index 7ce04a9a..21402b1c 100644 --- a/package.json +++ b/package.json @@ -73,6 +73,7 @@ "@mdi/font": "7.4.47", "@sentry/vite-plugin": "^4.6.1", "@sentry/vue": "^10.32.1", + "@skipperndt/plugin-machine-uid": "^0.1.3", "@tauri-apps/api": "^2.9.1", "@tauri-apps/plugin-cli": "^2.4.1", "@tauri-apps/plugin-deep-link": "^2.4.5", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 65e1800d..114aa2d5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -17,6 +17,9 @@ importers: '@sentry/vue': specifier: ^10.32.1 version: 10.32.1(pinia@3.0.4(typescript@5.9.3)(vue@3.5.26(typescript@5.9.3)))(vue@3.5.26(typescript@5.9.3)) + '@skipperndt/plugin-machine-uid': + specifier: ^0.1.3 + version: 0.1.3 '@tauri-apps/api': specifier: ^2.9.1 version: 2.9.1 @@ -34,7 +37,7 @@ importers: version: 2.4.4 '@tauri-apps/plugin-http': specifier: github:tauri-apps/tauri-plugin-http - version: git+https://git@github.com:tauri-apps/tauri-plugin-http.git#42b0c7d65cbdf49159ad7fcba57ac7575f30a02c + version: https://codeload.github.com/tauri-apps/tauri-plugin-http/tar.gz/42b0c7d65cbdf49159ad7fcba57ac7575f30a02c '@tauri-apps/plugin-log': specifier: ^2.7.1 version: 2.7.1 @@ -1320,6 +1323,9 @@ packages: pinia: optional: true + '@skipperndt/plugin-machine-uid@0.1.3': + resolution: {integrity: sha512-7TTRo3fy0unrx/9XXf3zQf3B57y5Gq0jph0BUb2P1J4hpMXLRZCQDOJigy1IoztVUwML2UzOyLo/QNNUfANN/w==} + '@tauri-apps/api@2.9.1': resolution: {integrity: sha512-IGlhP6EivjXHepbBic618GOmiWe4URJiIeZFlB7x3czM0yDHHYviH1Xvoiv4FefdkQtn6v7TuwWCRfOGdnVUGw==} @@ -1406,8 +1412,8 @@ packages: '@tauri-apps/plugin-fs@2.4.4': resolution: {integrity: sha512-MTorXxIRmOnOPT1jZ3w96vjSuScER38ryXY88vl5F0uiKdnvTKKTtaEjTEo8uPbl4e3gnUtfsDVwC7h77GQLvQ==} - '@tauri-apps/plugin-http@git+https://git@github.com:tauri-apps/tauri-plugin-http.git#42b0c7d65cbdf49159ad7fcba57ac7575f30a02c': - resolution: {commit: 42b0c7d65cbdf49159ad7fcba57ac7575f30a02c, repo: git@github.com:tauri-apps/tauri-plugin-http.git, type: git} + '@tauri-apps/plugin-http@https://codeload.github.com/tauri-apps/tauri-plugin-http/tar.gz/42b0c7d65cbdf49159ad7fcba57ac7575f30a02c': + resolution: {tarball: https://codeload.github.com/tauri-apps/tauri-plugin-http/tar.gz/42b0c7d65cbdf49159ad7fcba57ac7575f30a02c} version: 2.5.4 '@tauri-apps/plugin-log@2.7.1': @@ -5353,6 +5359,10 @@ snapshots: optionalDependencies: pinia: 3.0.4(typescript@5.9.3)(vue@3.5.26(typescript@5.9.3)) + '@skipperndt/plugin-machine-uid@0.1.3': + dependencies: + '@tauri-apps/api': 2.9.1 + '@tauri-apps/api@2.9.1': {} '@tauri-apps/cli-darwin-arm64@2.9.6': @@ -5418,7 +5428,7 @@ snapshots: dependencies: '@tauri-apps/api': 2.9.1 - '@tauri-apps/plugin-http@git+https://git@github.com:tauri-apps/tauri-plugin-http.git#42b0c7d65cbdf49159ad7fcba57ac7575f30a02c': + '@tauri-apps/plugin-http@https://codeload.github.com/tauri-apps/tauri-plugin-http/tar.gz/42b0c7d65cbdf49159ad7fcba57ac7575f30a02c': dependencies: '@tauri-apps/api': 2.9.1 diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index f2d4c50f..95324c56 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -2,6 +2,12 @@ # It is not intended for manual editing. version = 4 +[[package]] +name = "Inflector" +version = "0.11.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3" + [[package]] name = "TeyvatGuide" version = "0.9.0" @@ -22,6 +28,7 @@ dependencies = [ "tauri-plugin-fs", "tauri-plugin-http", "tauri-plugin-log", + "tauri-plugin-machine-uid", "tauri-plugin-notification", "tauri-plugin-opener", "tauri-plugin-os", @@ -2583,7 +2590,7 @@ dependencies = [ "libc", "percent-encoding", "pin-project-lite", - "socket2 0.5.10", + "socket2 0.6.1", "system-configuration", "tokio", "tower-service", @@ -3162,6 +3169,17 @@ dependencies = [ "time", ] +[[package]] +name = "machine-uid" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d7217d573cdb141d6da43113b098172e057d39915d79c4bdedbc3aacd46bd96" +dependencies = [ + "libc", + "windows-registry 0.6.1", + "windows-sys 0.61.2", +] + [[package]] name = "markup5ever" version = "0.14.1" @@ -4427,7 +4445,7 @@ dependencies = [ "quinn-udp", "rustc-hash", "rustls", - "socket2 0.5.10", + "socket2 0.6.1", "thiserror 2.0.17", "tokio", "tracing", @@ -4464,7 +4482,7 @@ dependencies = [ "cfg_aliases", "libc", "once_cell", - "socket2 0.5.10", + "socket2 0.6.1", "tracing", "windows-sys 0.60.2", ] @@ -5606,6 +5624,50 @@ dependencies = [ "system-deps", ] +[[package]] +name = "specta" +version = "2.0.0-rc.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab7f01e9310a820edd31c80fde3cae445295adde21a3f9416517d7d65015b971" +dependencies = [ + "paste", + "specta-macros", + "thiserror 1.0.69", +] + +[[package]] +name = "specta-macros" +version = "2.0.0-rc.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0074b9e30ed84c6924eb63ad8d2fe71cdc82628525d84b1fcb1f2fd40676517" +dependencies = [ + "Inflector", + "proc-macro2", + "quote", + "syn 2.0.111", +] + +[[package]] +name = "specta-serde" +version = "0.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77216504061374659e7245eac53d30c7b3e5fe64b88da97c753e7184b0781e63" +dependencies = [ + "specta", + "thiserror 1.0.69", +] + +[[package]] +name = "specta-typescript" +version = "0.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3220a0c365e51e248ac98eab5a6a32f544ff6f961906f09d3ee10903a4f52b2d" +dependencies = [ + "specta", + "specta-serde", + "thiserror 1.0.69", +] + [[package]] name = "spin" version = "0.9.8" @@ -6071,6 +6133,7 @@ dependencies = [ "serde_json", "serde_repr", "serialize-to-javascript", + "specta", "swift-rs", "tauri-build", "tauri-macros", @@ -6283,6 +6346,21 @@ dependencies = [ "time", ] +[[package]] +name = "tauri-plugin-machine-uid" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff4dfe2508fdf5d167410bc653517ef09538c6eb2b2f3fb5066f409d3b45e2ec" +dependencies = [ + "machine-uid", + "serde", + "specta", + "tauri", + "tauri-plugin", + "tauri-specta", + "thiserror 2.0.17", +] + [[package]] name = "tauri-plugin-notification" version = "2.3.3" @@ -6432,6 +6510,21 @@ dependencies = [ "wry", ] +[[package]] +name = "tauri-specta" +version = "2.0.0-rc.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b23c0132dd3cf6064e5cd919b82b3f47780e9280e7b5910babfe139829b76655" +dependencies = [ + "heck 0.5.0", + "serde", + "serde_json", + "specta", + "specta-typescript", + "tauri", + "thiserror 2.0.17", +] + [[package]] name = "tauri-utils" version = "2.8.1" diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index bfbfeb5f..c6351685 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -30,6 +30,7 @@ serde = { version = "1.0.228", features = ["derive"] } serde_json = "1.0.147" tauri = { version = "2.9.5", features = ["tray-icon"] } tauri-utils = "2.8.1" +tauri-plugin-machine-uid = "0.1.3" url = "2.5.7" walkdir = "2.5.0" widestring = "1.2.1" diff --git a/src-tauri/src/lib.rs b/src-tauri/src/lib.rs index 853666b9..6ec51964 100644 --- a/src-tauri/src/lib.rs +++ b/src-tauri/src/lib.rs @@ -83,6 +83,7 @@ pub fn run() { .plugin(tauri_plugin_os::init()) .plugin(tauri_plugin_process::init()) .plugin(tauri_plugin_sql::Builder::default().build()) + .plugin(tauri_plugin_machine_uid::init()) .plugin(plugins::custom_log::build_log_plugin()) .setup(|_app| { // 创建系统托盘图标