From 6f881293fcd67838f6f3f8063f536292431dd1f7 Mon Sep 17 00:00:00 2001 From: Fabian-Lars Date: Thu, 20 Feb 2025 11:47:37 +0100 Subject: [PATCH 01/80] fix(updater): Propagate request error (#2439) --- .changes/updater-request-error.md | 6 +++++ plugins/updater/src/updater.rs | 37 +++++++++++++++++-------------- 2 files changed, 26 insertions(+), 17 deletions(-) create mode 100644 .changes/updater-request-error.md diff --git a/.changes/updater-request-error.md b/.changes/updater-request-error.md new file mode 100644 index 00000000..a9f579f9 --- /dev/null +++ b/.changes/updater-request-error.md @@ -0,0 +1,6 @@ +--- +updater: patch +updater-js: patch +--- + +Fixed an issue that caused the plugin to emit a `ReleaseNotFound` error instead of a `Reqwest` error when the http request in `check()` failed. diff --git a/plugins/updater/src/updater.rs b/plugins/updater/src/updater.rs index f9209a00..a3e3cb3a 100644 --- a/plugins/updater/src/updater.rs +++ b/plugins/updater/src/updater.rs @@ -383,26 +383,29 @@ impl Updater { .send() .await; - if let Ok(res) = response { - if res.status().is_success() { - // no updates found! - if StatusCode::NO_CONTENT == res.status() { - return Ok(None); - }; - - raw_json = Some(res.json().await?); - match serde_json::from_value::(raw_json.clone().unwrap()) - .map_err(Into::into) - { - Ok(release) => { - last_error = None; - remote_release = Some(release); - // we found a relase, break the loop - break; + match response { + Ok(res) => { + if res.status().is_success() { + // no updates found! + if StatusCode::NO_CONTENT == res.status() { + return Ok(None); + }; + + raw_json = Some(res.json().await?); + match serde_json::from_value::(raw_json.clone().unwrap()) + .map_err(Into::into) + { + Ok(release) => { + last_error = None; + remote_release = Some(release); + // we found a relase, break the loop + break; + } + Err(err) => last_error = Some(err), } - Err(err) => last_error = Some(err), } } + Err(err) => last_error = Some(err.into()), } } From 3b37ce15082cbceb875fc118f1ca996d811aebff Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 22 Feb 2025 23:37:35 +0800 Subject: [PATCH 02/80] chore(deps): update dependency prettier to v3.5.2 (#2444) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index e69184c6..89960cca 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "eslint": "9.19.0", "eslint-config-prettier": "10.0.1", "eslint-plugin-security": "3.0.1", - "prettier": "3.5.1", + "prettier": "3.5.2", "rollup": "4.34.8", "tslib": "2.8.1", "typescript": "5.7.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1960220d..ce7f8a51 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -40,8 +40,8 @@ importers: specifier: 3.0.1 version: 3.0.1 prettier: - specifier: 3.5.1 - version: 3.5.1 + specifier: 3.5.2 + version: 3.5.2 rollup: specifier: 4.34.8 version: 4.34.8 @@ -1990,8 +1990,8 @@ packages: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} - prettier@3.5.1: - resolution: {integrity: sha512-hPpFQvHwL3Qv5AdRvBFMhnKo4tYxp0ReXiPn2bxkiohEX6mBeBwEpBSQTkD458RaaDKQMYSp4hX4UtfUTA5wDw==} + prettier@3.5.2: + resolution: {integrity: sha512-lc6npv5PH7hVqozBR7lkBNOGXV9vMwROAPlumdBkX0wTbbzPu/U1hk5yL8p2pt4Xoc+2mkT8t/sow2YrV/M5qg==} engines: {node: '>=14'} hasBin: true @@ -4079,7 +4079,7 @@ snapshots: prelude-ls@1.2.1: {} - prettier@3.5.1: {} + prettier@3.5.2: {} process-warning@4.0.0: {} From 4d38066ef961224e9498e59b2efa13d0530a0ac6 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 22 Feb 2025 17:37:09 +0100 Subject: [PATCH 03/80] chore(deps): update unocss monorepo to v66 (#2436) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- examples/api/package.json | 4 +- pnpm-lock.yaml | 440 ++++++++++++++++++-------------------- 2 files changed, 210 insertions(+), 234 deletions(-) diff --git a/examples/api/package.json b/examples/api/package.json index f86e2c6f..d07999ba 100644 --- a/examples/api/package.json +++ b/examples/api/package.json @@ -36,9 +36,9 @@ "@iconify-json/ph": "^1.2.1", "@sveltejs/vite-plugin-svelte": "^5.0.1", "@tauri-apps/cli": "2.2.7", - "@unocss/extractor-svelte": "^65.0.0", + "@unocss/extractor-svelte": "^66.0.0", "svelte": "^5.10.0", - "unocss": "^65.0.0", + "unocss": "^66.0.0", "vite": "^6.0.3" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ce7f8a51..55fc4c51 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -131,14 +131,14 @@ importers: specifier: 2.2.7 version: 2.2.7 '@unocss/extractor-svelte': - specifier: ^65.0.0 - version: 65.4.0 + specifier: ^66.0.0 + version: 66.0.0 svelte: specifier: ^5.10.0 version: 5.10.0 unocss: - specifier: ^65.0.0 - version: 65.4.0(postcss@8.5.1)(rollup@4.34.8)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) + specifier: ^66.0.0 + version: 66.0.0(postcss@8.5.1)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) vite: specifier: ^6.0.3 version: 6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2) @@ -364,11 +364,11 @@ packages: resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} engines: {node: '>=6.0.0'} - '@antfu/install-pkg@0.4.1': - resolution: {integrity: sha512-T7yB5QNG29afhWVkVq7XeIMBa5U/vs9mX69YqayXypPRmYzUmzwnYltplHmPtZ4HPCn+sQKeXW8I47wCbuBOjw==} + '@antfu/install-pkg@1.0.0': + resolution: {integrity: sha512-xvX6P/lo1B3ej0OsaErAjqgFYzYVcJpamjLAFLYh9vRJngBrMoUG7aVnrGTeqM7yxbyTD5p3F2+0/QUEh8Vzhw==} - '@antfu/utils@0.7.10': - resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==} + '@antfu/utils@8.1.1': + resolution: {integrity: sha512-Mex9nXf9vR6AhcXmMrlz/HVgYYZpVGJ6YlPgwl7UnaFpnshXs6EK/oa5Gpf3CzENMjkvEx2tQtntGnb7UtSTOQ==} '@babel/helper-string-parser@7.25.9': resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==} @@ -804,8 +804,8 @@ packages: '@iconify/types@2.0.0': resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==} - '@iconify/utils@2.2.1': - resolution: {integrity: sha512-0/7J7hk4PqXmxo5PDBDxmnecw5PxklZJfNjIVG9FM0mEfVrvfudS22rYWsqVk6gR3UJ/mSYS90X4R3znXnqfNA==} + '@iconify/utils@2.3.0': + resolution: {integrity: sha512-GmQ78prtwYW6EtzXRU1rY+KwOKfz32PD7iJh6Iyqw68GiKuoZ2A6pRtzWONz5VQJbp50mEjXh/7NkumtrAgRKA==} '@jridgewell/gen-mapping@0.3.5': resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} @@ -1129,86 +1129,89 @@ packages: resolution: {integrity: sha512-EwVHlp5l+2vp8CoqJm9KikPZgi3gbdZAtabKT9KPShGeOcJhsv4Zdo3oc8T8I0uKEmYoU4ItyxbptjF08enaxg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@unocss/astro@65.4.0': - resolution: {integrity: sha512-bLi+H181PJ17E0Br06VwK7yeZffv9X46JCA7pnBlA/g8sDBxB+CwPOFaHlUeqVvis0CEt8HOr/e9418pxqQJTQ==} + '@unocss/astro@66.0.0': + resolution: {integrity: sha512-GBhXT6JPqXjDXoJZTXhySk83NgOt0UigChqrUUdG4x7Z+DVYkDBION8vZUJjw0OdIaxNQ4euGWu4GDsMF6gQQg==} peerDependencies: vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0 peerDependenciesMeta: vite: optional: true - '@unocss/cli@65.4.0': - resolution: {integrity: sha512-g1k24tKs233V2F6EWDCGimke5SjSM59HacCUnc411NSUBqNmPojxPtRWn9vp6XRovQ9X6FdKsuMHmpMotWlTiQ==} + '@unocss/cli@66.0.0': + resolution: {integrity: sha512-KVQiskoOjVkLVpNaG6WpLa4grPplrZROYZJVIUYSTqZyZRFNSvjttHcsCwpoWUEUdEombPtVZl8FrXePjY5IiQ==} engines: {node: '>=14'} hasBin: true - '@unocss/config@65.4.0': - resolution: {integrity: sha512-7V3zuf+qWVxpy+1EkmyEBiU49fNiFfEUkh0n95IoLAhk9xyfz9a1dRBv20CQLte/OZ/NkD+fB+6J/w8ARn+tow==} + '@unocss/config@66.0.0': + resolution: {integrity: sha512-nFRGop/guBa4jLkrgXjaRDm5JPz4x3YpP10m5IQkHpHwlnHUVn1L9smyPl04ohYWhYn9ZcAHgR28Ih2jwta8hw==} engines: {node: '>=14'} - '@unocss/core@65.4.0': - resolution: {integrity: sha512-UZPvyqS7jj5gRzFeozXG9gOEsGwdbOrQnWjeKLFbfE1upZlG3cwrwIuEl9bqTWNVAtqbpQLyaRiC09YBre52oA==} + '@unocss/core@66.0.0': + resolution: {integrity: sha512-PdVbSMHNDDkr++9nkqzsZRAkaU84gxMTEgYbqI7dt2p1DXp/5tomVtmMsr2/whXGYKRiUc0xZ3p4Pzraz8TcXA==} - '@unocss/extractor-arbitrary-variants@65.4.0': - resolution: {integrity: sha512-uR9zqpu0dqtISuaKxFXgMgcJdPL5XqFsKQbttqkLRnWWv5soaP2Hh/THojZqiHPMctgrDP/2S113QvJkFY4j5w==} + '@unocss/extractor-arbitrary-variants@66.0.0': + resolution: {integrity: sha512-vlkOIOuwBfaFBJcN6o7+obXjigjOlzVFN/jT6pG1WXbQDTRZ021jeF3i9INdb9D/0cQHSeDvNgi1TJ5oUxfiow==} - '@unocss/extractor-svelte@65.4.0': - resolution: {integrity: sha512-hAFFP94dc17Ra6SGUeqVxYuyipLM7Y+1M9cNx+KYe1wO0aa6NSBXNOMiq5iUaMAGWhNqHwLWcNGRNTSxzVD5uQ==} + '@unocss/extractor-svelte@66.0.0': + resolution: {integrity: sha512-iUrdW6dVV08gOjs16+wjucvfy9VK7+KSWxiOVUmL4dB2jHsiaUG63AG+JgoEwEJu2UEatfEVblQvBXQFCl9/SA==} - '@unocss/inspector@65.4.0': - resolution: {integrity: sha512-ug72DHjfcerkn/RXeB9GC9GwTi/Dj1R/BlRqy4dJ61ij8OnOl4N/ghAMQCqri59YEYG8CPeL9aQuq66eYcjpPg==} + '@unocss/inspector@66.0.0': + resolution: {integrity: sha512-mkIxieVm0kMOKw+E4ABpIerihYMdjgq9A92RD5h2+W/ebpxTEw5lTTK1xcMLiAlmOrVYMQKjpgPeu3vQmDyGZQ==} - '@unocss/postcss@65.4.0': - resolution: {integrity: sha512-sg2k7B3T8B55QHNqNeOm61RmKE4m2355jxbMCAY1rx/CZCFUTUTI4pd+XY9ekbZjLe84YUlBs4bt62MOlJ58hg==} + '@unocss/postcss@66.0.0': + resolution: {integrity: sha512-6bi+ujzh8I1PJwtmHX71LH8z/H9+vPxeYD4XgFihyU1k4Y6MVhjr7giGjLX4yP27IP+NsVyotD22V7by/dBVEA==} engines: {node: '>=14'} peerDependencies: postcss: ^8.4.21 - '@unocss/preset-attributify@65.4.0': - resolution: {integrity: sha512-k7UMkCSgjq4yDHMMUxV2C6uj1i63L6iNyRUaYwLrwcRZArVRuamJFaSCWOkpxlYnmYtOdpf9I3WYRFJwDT1Yjw==} + '@unocss/preset-attributify@66.0.0': + resolution: {integrity: sha512-eYsOgmcDoiIgGAepIwRX+DKGYxc/wm0r4JnDuZdz29AB+A6oY/FGHS1BVt4rq9ny4B5PofP4p6Rty+vwD9rigw==} - '@unocss/preset-icons@65.4.0': - resolution: {integrity: sha512-F50biWPeLw2LtN17y/n75qaZAtpuOotyQPbK7PeihI5lr6Xg9eGWBuLc+AFIPNZZD0JDVMKEjDVOLqXHBnp0zA==} + '@unocss/preset-icons@66.0.0': + resolution: {integrity: sha512-6ObwTvEGuPBbKWRoMMiDioHtwwQTFI5oojFLJ32Y8tW6TdXvBLkO88d7qpgQxEjgVt4nJrqF1WEfR4niRgBm0Q==} - '@unocss/preset-mini@65.4.0': - resolution: {integrity: sha512-HKwok9pp+gI54RDX4/o6PWNVdCEDfVzT4MsNZO3WvGXhtMLInGrVl42IzkBp22ttkapIkIgXsqcYhBrZbmQrQA==} + '@unocss/preset-mini@66.0.0': + resolution: {integrity: sha512-d62eACnuKtR0dwCFOQXgvw5VLh5YSyK56xCzpHkh0j0GstgfDLfKTys0T/XVAAvdSvAy/8A8vhSNJ4PlIc9V2A==} - '@unocss/preset-tagify@65.4.0': - resolution: {integrity: sha512-spiEh+piBJOmnU7n/P9GLL0Bl4Ttfuew+ahRSJuUK5hgPVTadhSujSrzKvM6S7aonnBuJSscw3cJIybBXoxogQ==} + '@unocss/preset-tagify@66.0.0': + resolution: {integrity: sha512-GGYGyWxaevh0jN0NoATVO1Qe7DFXM3ykLxchlXmG6/zy963pZxItg/njrKnxE9la4seCdxpFH7wQBa68imwwdA==} - '@unocss/preset-typography@65.4.0': - resolution: {integrity: sha512-4WR1ht0TAkuOQwkxmPdP0DBXNAs6O2o8e13K5WHseKy5qoanFXO/0EzQ9w8OMlxvsCF2Bpl1KKlicJWAyiSFgA==} + '@unocss/preset-typography@66.0.0': + resolution: {integrity: sha512-apjckP5nPU5mtaHTCzz5u/dK9KJWwJ2kOFCVk0+a/KhUWmnqnzmjRYZlEuWxxr5QxTdCW+9cIoRDSA0lYZS5tg==} - '@unocss/preset-uno@65.4.0': - resolution: {integrity: sha512-M2VQ7Qt67f5Re2h5FeAbMgS91jk/YBKDZh2T3zNh6OiigQl5L3GKoEvLNq2JtzvCVCxSksQATAspTmbw2Vzi1w==} + '@unocss/preset-uno@66.0.0': + resolution: {integrity: sha512-qgoZ/hzTI32bQvcyjcwvv1X/dbPlmQNehzgjUaL7QFT0q0/CN/SRpysfzoQ8DLl2se9T+YCOS9POx3KrpIiYSQ==} - '@unocss/preset-web-fonts@65.4.0': - resolution: {integrity: sha512-6WA5lFmgYtZJqyYPVWsKZ7VmorbCLdTJV3JkgwCXLnXXVOs7xrbzYnNyoCTPP8p1rKyR1p/tynNP9Jvn1uYW7g==} + '@unocss/preset-web-fonts@66.0.0': + resolution: {integrity: sha512-9MzfDc6AJILN4Kq7Z91FfFbizBOYgw3lJd2UwqIs3PDYWG5iH5Zv5zhx6jelZVqEW5uWcIARYEEg2m4stZO1ZA==} - '@unocss/preset-wind@65.4.0': - resolution: {integrity: sha512-LnjEdxqffSoKg8nYJl8vwB1q8666afpYI1M33gExpSV85gyHssfrSEbqq6bYXufHGz5yMkIco+jDeYcXWv18ZA==} + '@unocss/preset-wind3@66.0.0': + resolution: {integrity: sha512-WAGRmpi1sb2skvYn9DBQUvhfqrJ+VmQmn5ZGsT2ewvsk7HFCvVLAMzZeKrrTQepeNBRhg6HzFDDi8yg6yB5c9g==} - '@unocss/reset@65.4.0': - resolution: {integrity: sha512-SHT5IKWbr1iZm1gswWJy+G0a/tnzIODZxjZGr64JStZn/uy7N9AVs5+Kmnlx2NyhW8VNApxTnAkl035jRejZPw==} + '@unocss/preset-wind@66.0.0': + resolution: {integrity: sha512-FtvGpHnGC7FiyKJavPnn5y9lsaoWRhXlujCqlT5Bw63kKhMNr0ogKySBpenUhJOhWhVM0OQXn2nZ3GZRxW2qpw==} - '@unocss/rule-utils@65.4.0': - resolution: {integrity: sha512-Fb2IKg/wQlIBDY3rzVpDxwZ3Ho1ihcbFGEzr17ZM/N5MTrdzAA3GiXA3yzOjOboc/UnqRr2Q5JG8aACLn0lAAw==} + '@unocss/reset@66.0.0': + resolution: {integrity: sha512-YLFz/5yT7mFJC8JSmIUA5+bS3CBCJbtztOw+8rWzjQr/BEVSGuihWUUpI2Df6VVxXIXxKanZR6mIl59yvf+GEA==} + + '@unocss/rule-utils@66.0.0': + resolution: {integrity: sha512-UJ51YHbwxYTGyj35ugsPlOT4gaa7tCbXdywZ3m5Nn0JgywwIqGmBFyiN9ZjHBHfJuDxmmPd6lxojoBscih/WMQ==} engines: {node: '>=14'} - '@unocss/transformer-attributify-jsx@65.4.0': - resolution: {integrity: sha512-c65TpsbxlsByxpX64wmJsybLQTdZaVSGUEW7sGC8I7w60vaJXpdOibvquNTvpEXfIWl3efgA1N6XDPaFtxO7KQ==} + '@unocss/transformer-attributify-jsx@66.0.0': + resolution: {integrity: sha512-jS7szFXXC6RjTv9wo0NACskf618w981bkbyQ5izRO7Ha47sNpHhHDpaltnG7SR9qV4cCtGalOw4onVMHsRKwRg==} - '@unocss/transformer-compile-class@65.4.0': - resolution: {integrity: sha512-0AygkbQI0kCquwB6CNNKvr2NOK8eOhArzKrO0imPcCqJNT2GdaHqVqajrM530ZM56KXjUV70hW3pskX6bkdhzg==} + '@unocss/transformer-compile-class@66.0.0': + resolution: {integrity: sha512-ytUIE0nAcHRMACuTXkHp8auZ483DXrOZw99jk3FJ+aFjpD/pVSFmX14AWJ7bqPFObxb4SLFs6KhQma30ESC22A==} - '@unocss/transformer-directives@65.4.0': - resolution: {integrity: sha512-vRhuGVCsByWSp6ok7a8dPGFwsFn+gyXKSVmLGWyMY4p+rKaRdYiDHOnWWXbHFEKwHuhTv+mxq7q1wZB3OUkR1A==} + '@unocss/transformer-directives@66.0.0': + resolution: {integrity: sha512-utcg7m2Foi7uHrU5WHadNuJ0a3qWG8tZNkQMi+m0DQpX6KWfuDtDn0zDZ1X+z5lmiB3WGSJERRrsvZbj1q50Mw==} - '@unocss/transformer-variant-group@65.4.0': - resolution: {integrity: sha512-VsQeMP1J/AU3Dp+qUhv9ATR54jLRGPHiNRXe/byFOU7VhJT/pn9qdtwFJQjpvkcc0ezkRoQSpuhuMCBsHRB/bg==} + '@unocss/transformer-variant-group@66.0.0': + resolution: {integrity: sha512-1BLjNWtAnR1JAcQGw0TS+nGrVoB9aznzvVZRoTx23dtRr3btvgKPHb8LrD48eD/p8Dtw9j3WfuxMDKXKegKDLg==} - '@unocss/vite@65.4.0': - resolution: {integrity: sha512-9k4dUDvEK9PwttmVXhNWkEO7mH0Gp9hSUJY2CX3q+u40xqT3jx7hG765yfWWI9d/VSvzuv6/SurUul3ORJYA3w==} + '@unocss/vite@66.0.0': + resolution: {integrity: sha512-IVcPX8xL+2edyXKt4tp9yu5A6gcbPVCsspfcL0XgziCr01kS+4qSoZ90F3IUs3hXc/AyO5eCpRtGFMPLpOjXQg==} peerDependencies: vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0 @@ -1335,12 +1338,6 @@ packages: buffer@6.0.3: resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} - bundle-require@5.0.0: - resolution: {integrity: sha512-GuziW3fSSmopcx4KRymQEJVbZUfqlCqcq7dvs6TYwKRZiegK/2buMxQTPs6MGlNv50wms1699qYO54R8XfRX4w==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - peerDependencies: - esbuild: '>=0.18' - cac@6.7.14: resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} engines: {node: '>=8'} @@ -1396,8 +1393,8 @@ packages: confbox@0.1.8: resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} - consola@3.3.3: - resolution: {integrity: sha512-Qil5KwghMzlqd51UXM0b6fyaGHtOC22scxrwrz4A2882LyUMwQjnvaedN1HAeXzphspQ6CpHkzMAWxBTUruDLg==} + consola@3.4.0: + resolution: {integrity: sha512-EiPU8G6dQG0GFHNR8ljnZFki/8a+cQwEQ+7wpxdChl02Q8HXlwEZWD5lqAF8vC2sEC3Tehr8hy7vErz88LHyUA==} engines: {node: ^14.18.0 || >=16.10.0} covector@0.12.3: @@ -1690,9 +1687,6 @@ packages: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} engines: {node: '>=6'} - importx@0.5.1: - resolution: {integrity: sha512-YrRaigAec1sC2CdIJjf/hCH1Wp9Ii8Cq5ROw4k5nJ19FVl2FcJUHZ5gGIb1vs8+JNYIyOJpc2fcufS2330bxDw==} - imurmurhash@0.1.4: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} engines: {node: '>=0.8.19'} @@ -1792,12 +1786,8 @@ packages: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} - load-tsconfig@0.2.5: - resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - local-pkg@0.5.1: - resolution: {integrity: sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==} + local-pkg@1.0.0: + resolution: {integrity: sha512-bbgPw/wmroJsil/GgL4qjDzs5YLTBMQ99weRsok1XCDccQeehbHA/I1oRvk2NPtr7KGZgT/Y5tPRnAtMqeG2Kg==} engines: {node: '>=14'} locate-character@3.0.0: @@ -1863,8 +1853,8 @@ packages: resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} engines: {node: '>=16 || 14 >=14.17'} - mlly@1.7.3: - resolution: {integrity: sha512-xUsx5n/mN0uQf4V548PKQ+YShA4/IW0KI1dZhrNrPCLG+xizETbHTkOa1f8/xut9JRPp8kQuMnz0oqwkTiLo/A==} + mlly@1.7.4: + resolution: {integrity: sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==} mocha@10.8.2: resolution: {integrity: sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==} @@ -1924,8 +1914,8 @@ packages: resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} engines: {node: '>=10'} - package-manager-detector@0.2.6: - resolution: {integrity: sha512-9vPH3qooBlYRJdmdYP00nvjZOulm40r5dhtal8st18ctf+6S1k7pi5yIHLvI4w5D70x0Y+xdVD9qITH0QO/A8A==} + package-manager-detector@0.2.9: + resolution: {integrity: sha512-+vYvA/Y31l8Zk8dwxHhL3JfTuHPm6tlxM2A3GeQyl7ovYnSp1+mzAxClxaOr0qO1TtPxbQxetI7v5XqKLJZk7Q==} parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} @@ -1949,8 +1939,8 @@ packages: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} - pathe@1.1.2: - resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} + pathe@2.0.3: + resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} perfect-debounce@1.0.0: resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==} @@ -1979,8 +1969,8 @@ packages: resolution: {integrity: sha512-xSEmD4pLnV54t0NOUN16yCl7RIB1c5UUOse5HSyEXtBp+FgFQyPeDutc+Q2ZO7/22vImV7VfEjH/1zV2QuqvYw==} hasBin: true - pkg-types@1.2.1: - resolution: {integrity: sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==} + pkg-types@1.3.1: + resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==} postcss@8.5.1: resolution: {integrity: sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==} @@ -2175,8 +2165,8 @@ packages: thread-stream@3.1.0: resolution: {integrity: sha512-OqyPZ9u96VohAyMfJykzmivOrY2wfMSf3C5TtFJVgN+Hm6aj+voFhlK+kZEIv2FBh1X6Xp3DlnCOfEQ3B2J86A==} - tinyexec@0.3.1: - resolution: {integrity: sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==} + tinyexec@0.3.2: + resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} tinyglobby@0.2.10: resolution: {integrity: sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew==} @@ -2233,8 +2223,8 @@ packages: ufo@1.5.4: resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} - unconfig@0.6.0: - resolution: {integrity: sha512-4C67J0nIF2QwSXty2kW3zZx1pMZ3iXabylvJWWgHybWVUcMf9pxwsngoQt0gC+AVstRywFqrRBp3qOXJayhpOw==} + unconfig@7.0.0: + resolution: {integrity: sha512-G5CJSoG6ZTxgzCJblEfgpdRK2tos9+UdD2WtecDUVfImzQ0hFjwpH5RVvGMhP4pRpC9ML7NrC4qBsBl0Ttj35A==} unified@9.2.2: resolution: {integrity: sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==} @@ -2242,11 +2232,11 @@ packages: unist-util-stringify-position@2.0.3: resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==} - unocss@65.4.0: - resolution: {integrity: sha512-1JO+9YHJ1n0xedOUWfgjJfQXentoxtMuXqR9+kB8I8A9N+PC73KX2YOMjvTia+NSrnSgnCmmnnsUWQqnJZR9fA==} + unocss@66.0.0: + resolution: {integrity: sha512-SHstiv1s7zGPSjzOsADzlwRhQM+6817+OqQE3Fv+N/nn2QLNx1bi3WXybFfz5tWkzBtyTZlwdPmeecsIs1yOCA==} engines: {node: '>=14'} peerDependencies: - '@unocss/webpack': 65.4.0 + '@unocss/webpack': 66.0.0 vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0 peerDependenciesMeta: '@unocss/webpack': @@ -2254,6 +2244,10 @@ packages: vite: optional: true + unplugin-utils@0.2.4: + resolution: {integrity: sha512-8U/MtpkPkkk3Atewj1+RcKIjb5WBimZ/WSLhhR3w6SsIj8XJuKTacSP8g+2JhfSGw0Cb125Y+2zA/IzJZDVbhA==} + engines: {node: '>=18.12.0'} + uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} @@ -2399,12 +2393,12 @@ snapshots: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - '@antfu/install-pkg@0.4.1': + '@antfu/install-pkg@1.0.0': dependencies: - package-manager-detector: 0.2.6 - tinyexec: 0.3.1 + package-manager-detector: 0.2.9 + tinyexec: 0.3.2 - '@antfu/utils@0.7.10': {} + '@antfu/utils@8.1.1': {} '@babel/helper-string-parser@7.25.9': {} @@ -2755,16 +2749,16 @@ snapshots: '@iconify/types@2.0.0': {} - '@iconify/utils@2.2.1': + '@iconify/utils@2.3.0': dependencies: - '@antfu/install-pkg': 0.4.1 - '@antfu/utils': 0.7.10 + '@antfu/install-pkg': 1.0.0 + '@antfu/utils': 8.1.1 '@iconify/types': 2.0.0 debug: 4.4.0(supports-color@8.1.1) globals: 15.14.0 kolorist: 1.8.0 - local-pkg: 0.5.1 - mlly: 1.7.3 + local-pkg: 1.0.0 + mlly: 1.7.4 transitivePeerDependencies: - supports-color @@ -3061,56 +3055,49 @@ snapshots: '@typescript-eslint/types': 8.24.1 eslint-visitor-keys: 4.2.0 - '@unocss/astro@65.4.0(rollup@4.34.8)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3))': + '@unocss/astro@66.0.0(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3))': dependencies: - '@unocss/core': 65.4.0 - '@unocss/reset': 65.4.0 - '@unocss/vite': 65.4.0(rollup@4.34.8)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) + '@unocss/core': 66.0.0 + '@unocss/reset': 66.0.0 + '@unocss/vite': 66.0.0(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) optionalDependencies: vite: 6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2) transitivePeerDependencies: - - rollup - - supports-color - vue - '@unocss/cli@65.4.0(rollup@4.34.8)': + '@unocss/cli@66.0.0': dependencies: '@ampproject/remapping': 2.3.0 - '@rollup/pluginutils': 5.1.4(rollup@4.34.8) - '@unocss/config': 65.4.0 - '@unocss/core': 65.4.0 - '@unocss/preset-uno': 65.4.0 + '@unocss/config': 66.0.0 + '@unocss/core': 66.0.0 + '@unocss/preset-uno': 66.0.0 cac: 6.7.14 chokidar: 3.6.0 colorette: 2.0.20 - consola: 3.3.3 + consola: 3.4.0 magic-string: 0.30.17 - pathe: 1.1.2 + pathe: 2.0.3 perfect-debounce: 1.0.0 tinyglobby: 0.2.10 - transitivePeerDependencies: - - rollup - - supports-color + unplugin-utils: 0.2.4 - '@unocss/config@65.4.0': + '@unocss/config@66.0.0': dependencies: - '@unocss/core': 65.4.0 - unconfig: 0.6.0 - transitivePeerDependencies: - - supports-color + '@unocss/core': 66.0.0 + unconfig: 7.0.0 - '@unocss/core@65.4.0': {} + '@unocss/core@66.0.0': {} - '@unocss/extractor-arbitrary-variants@65.4.0': + '@unocss/extractor-arbitrary-variants@66.0.0': dependencies: - '@unocss/core': 65.4.0 + '@unocss/core': 66.0.0 - '@unocss/extractor-svelte@65.4.0': {} + '@unocss/extractor-svelte@66.0.0': {} - '@unocss/inspector@65.4.0(vue@3.5.13(typescript@5.7.3))': + '@unocss/inspector@66.0.0(vue@3.5.13(typescript@5.7.3))': dependencies: - '@unocss/core': 65.4.0 - '@unocss/rule-utils': 65.4.0 + '@unocss/core': 66.0.0 + '@unocss/rule-utils': 66.0.0 colorette: 2.0.20 gzip-size: 6.0.0 sirv: 3.0.0 @@ -3118,101 +3105,101 @@ snapshots: transitivePeerDependencies: - vue - '@unocss/postcss@65.4.0(postcss@8.5.1)': + '@unocss/postcss@66.0.0(postcss@8.5.1)': dependencies: - '@unocss/config': 65.4.0 - '@unocss/core': 65.4.0 - '@unocss/rule-utils': 65.4.0 + '@unocss/config': 66.0.0 + '@unocss/core': 66.0.0 + '@unocss/rule-utils': 66.0.0 css-tree: 3.1.0 postcss: 8.5.1 tinyglobby: 0.2.10 - transitivePeerDependencies: - - supports-color - '@unocss/preset-attributify@65.4.0': + '@unocss/preset-attributify@66.0.0': dependencies: - '@unocss/core': 65.4.0 + '@unocss/core': 66.0.0 - '@unocss/preset-icons@65.4.0': + '@unocss/preset-icons@66.0.0': dependencies: - '@iconify/utils': 2.2.1 - '@unocss/core': 65.4.0 + '@iconify/utils': 2.3.0 + '@unocss/core': 66.0.0 ofetch: 1.4.1 transitivePeerDependencies: - supports-color - '@unocss/preset-mini@65.4.0': + '@unocss/preset-mini@66.0.0': dependencies: - '@unocss/core': 65.4.0 - '@unocss/extractor-arbitrary-variants': 65.4.0 - '@unocss/rule-utils': 65.4.0 + '@unocss/core': 66.0.0 + '@unocss/extractor-arbitrary-variants': 66.0.0 + '@unocss/rule-utils': 66.0.0 - '@unocss/preset-tagify@65.4.0': + '@unocss/preset-tagify@66.0.0': dependencies: - '@unocss/core': 65.4.0 + '@unocss/core': 66.0.0 - '@unocss/preset-typography@65.4.0': + '@unocss/preset-typography@66.0.0': dependencies: - '@unocss/core': 65.4.0 - '@unocss/preset-mini': 65.4.0 + '@unocss/core': 66.0.0 + '@unocss/preset-mini': 66.0.0 + '@unocss/rule-utils': 66.0.0 - '@unocss/preset-uno@65.4.0': + '@unocss/preset-uno@66.0.0': dependencies: - '@unocss/core': 65.4.0 - '@unocss/preset-mini': 65.4.0 - '@unocss/preset-wind': 65.4.0 - '@unocss/rule-utils': 65.4.0 + '@unocss/core': 66.0.0 + '@unocss/preset-wind3': 66.0.0 - '@unocss/preset-web-fonts@65.4.0': + '@unocss/preset-web-fonts@66.0.0': dependencies: - '@unocss/core': 65.4.0 + '@unocss/core': 66.0.0 ofetch: 1.4.1 - '@unocss/preset-wind@65.4.0': + '@unocss/preset-wind3@66.0.0': + dependencies: + '@unocss/core': 66.0.0 + '@unocss/preset-mini': 66.0.0 + '@unocss/rule-utils': 66.0.0 + + '@unocss/preset-wind@66.0.0': dependencies: - '@unocss/core': 65.4.0 - '@unocss/preset-mini': 65.4.0 - '@unocss/rule-utils': 65.4.0 + '@unocss/core': 66.0.0 + '@unocss/preset-wind3': 66.0.0 - '@unocss/reset@65.4.0': {} + '@unocss/reset@66.0.0': {} - '@unocss/rule-utils@65.4.0': + '@unocss/rule-utils@66.0.0': dependencies: - '@unocss/core': 65.4.0 + '@unocss/core': 66.0.0 magic-string: 0.30.17 - '@unocss/transformer-attributify-jsx@65.4.0': + '@unocss/transformer-attributify-jsx@66.0.0': dependencies: - '@unocss/core': 65.4.0 + '@unocss/core': 66.0.0 - '@unocss/transformer-compile-class@65.4.0': + '@unocss/transformer-compile-class@66.0.0': dependencies: - '@unocss/core': 65.4.0 + '@unocss/core': 66.0.0 - '@unocss/transformer-directives@65.4.0': + '@unocss/transformer-directives@66.0.0': dependencies: - '@unocss/core': 65.4.0 - '@unocss/rule-utils': 65.4.0 + '@unocss/core': 66.0.0 + '@unocss/rule-utils': 66.0.0 css-tree: 3.1.0 - '@unocss/transformer-variant-group@65.4.0': + '@unocss/transformer-variant-group@66.0.0': dependencies: - '@unocss/core': 65.4.0 + '@unocss/core': 66.0.0 - '@unocss/vite@65.4.0(rollup@4.34.8)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3))': + '@unocss/vite@66.0.0(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3))': dependencies: '@ampproject/remapping': 2.3.0 - '@rollup/pluginutils': 5.1.4(rollup@4.34.8) - '@unocss/config': 65.4.0 - '@unocss/core': 65.4.0 - '@unocss/inspector': 65.4.0(vue@3.5.13(typescript@5.7.3)) + '@unocss/config': 66.0.0 + '@unocss/core': 66.0.0 + '@unocss/inspector': 66.0.0(vue@3.5.13(typescript@5.7.3)) chokidar: 3.6.0 magic-string: 0.30.17 tinyglobby: 0.2.10 + unplugin-utils: 0.2.4 vite: 6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2) transitivePeerDependencies: - - rollup - - supports-color - vue '@vue/compiler-core@3.5.13': @@ -3347,11 +3334,6 @@ snapshots: base64-js: 1.5.1 ieee754: 1.2.1 - bundle-require@5.0.0(esbuild@0.24.2): - dependencies: - esbuild: 0.24.2 - load-tsconfig: 0.2.5 - cac@6.7.14: {} callsites@3.1.0: {} @@ -3407,7 +3389,7 @@ snapshots: confbox@0.1.8: {} - consola@3.3.3: {} + consola@3.4.0: {} covector@0.12.3(mocha@10.8.2): dependencies: @@ -3518,6 +3500,7 @@ snapshots: '@esbuild/win32-arm64': 0.23.1 '@esbuild/win32-ia32': 0.23.1 '@esbuild/win32-x64': 0.23.1 + optional: true esbuild@0.24.2: optionalDependencies: @@ -3706,6 +3689,7 @@ snapshots: get-tsconfig@4.8.1: dependencies: resolve-pkg-maps: 1.0.0 + optional: true glob-parent@5.1.2: dependencies: @@ -3759,17 +3743,6 @@ snapshots: parent-module: 1.0.1 resolve-from: 4.0.0 - importx@0.5.1: - dependencies: - bundle-require: 5.0.0(esbuild@0.24.2) - debug: 4.4.0(supports-color@8.1.1) - esbuild: 0.24.2 - jiti: 2.4.2 - pathe: 1.1.2 - tsx: 4.19.2 - transitivePeerDependencies: - - supports-color - imurmurhash@0.1.4: {} inflight@1.0.6: @@ -3847,12 +3820,10 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 - load-tsconfig@0.2.5: {} - - local-pkg@0.5.1: + local-pkg@1.0.0: dependencies: - mlly: 1.7.3 - pkg-types: 1.2.1 + mlly: 1.7.4 + pkg-types: 1.3.1 locate-character@3.0.0: {} @@ -3932,11 +3903,11 @@ snapshots: dependencies: brace-expansion: 2.0.1 - mlly@1.7.3: + mlly@1.7.4: dependencies: acorn: 8.14.0 - pathe: 1.1.2 - pkg-types: 1.2.1 + pathe: 2.0.3 + pkg-types: 1.3.1 ufo: 1.5.4 mocha@10.8.2: @@ -4007,7 +3978,7 @@ snapshots: dependencies: p-limit: 3.1.0 - package-manager-detector@0.2.6: {} + package-manager-detector@0.2.9: {} parent-module@1.0.1: dependencies: @@ -4030,7 +4001,7 @@ snapshots: path-type@4.0.0: {} - pathe@1.1.2: {} + pathe@2.0.3: {} perfect-debounce@1.0.0: {} @@ -4065,11 +4036,11 @@ snapshots: sonic-boom: 4.2.0 thread-stream: 3.1.0 - pkg-types@1.2.1: + pkg-types@1.3.1: dependencies: confbox: 0.1.8 - mlly: 1.7.3 - pathe: 1.1.2 + mlly: 1.7.4 + pathe: 2.0.3 postcss@8.5.1: dependencies: @@ -4132,7 +4103,8 @@ snapshots: resolve-from@4.0.0: {} - resolve-pkg-maps@1.0.0: {} + resolve-pkg-maps@1.0.0: + optional: true resolve@1.22.8: dependencies: @@ -4277,7 +4249,7 @@ snapshots: dependencies: real-require: 0.2.0 - tinyexec@0.3.1: {} + tinyexec@0.3.2: {} tinyglobby@0.2.10: dependencies: @@ -4306,6 +4278,7 @@ snapshots: get-tsconfig: 4.8.1 optionalDependencies: fsevents: 2.3.3 + optional: true type-check@0.4.0: dependencies: @@ -4327,13 +4300,11 @@ snapshots: ufo@1.5.4: {} - unconfig@0.6.0: + unconfig@7.0.0: dependencies: - '@antfu/utils': 0.7.10 + '@antfu/utils': 8.1.1 defu: 6.1.4 - importx: 0.5.1 - transitivePeerDependencies: - - supports-color + jiti: 2.4.2 unified@9.2.2: dependencies: @@ -4349,33 +4320,38 @@ snapshots: dependencies: '@types/unist': 2.0.11 - unocss@65.4.0(postcss@8.5.1)(rollup@4.34.8)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)): - dependencies: - '@unocss/astro': 65.4.0(rollup@4.34.8)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) - '@unocss/cli': 65.4.0(rollup@4.34.8) - '@unocss/core': 65.4.0 - '@unocss/postcss': 65.4.0(postcss@8.5.1) - '@unocss/preset-attributify': 65.4.0 - '@unocss/preset-icons': 65.4.0 - '@unocss/preset-mini': 65.4.0 - '@unocss/preset-tagify': 65.4.0 - '@unocss/preset-typography': 65.4.0 - '@unocss/preset-uno': 65.4.0 - '@unocss/preset-web-fonts': 65.4.0 - '@unocss/preset-wind': 65.4.0 - '@unocss/transformer-attributify-jsx': 65.4.0 - '@unocss/transformer-compile-class': 65.4.0 - '@unocss/transformer-directives': 65.4.0 - '@unocss/transformer-variant-group': 65.4.0 - '@unocss/vite': 65.4.0(rollup@4.34.8)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) + unocss@66.0.0(postcss@8.5.1)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)): + dependencies: + '@unocss/astro': 66.0.0(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) + '@unocss/cli': 66.0.0 + '@unocss/core': 66.0.0 + '@unocss/postcss': 66.0.0(postcss@8.5.1) + '@unocss/preset-attributify': 66.0.0 + '@unocss/preset-icons': 66.0.0 + '@unocss/preset-mini': 66.0.0 + '@unocss/preset-tagify': 66.0.0 + '@unocss/preset-typography': 66.0.0 + '@unocss/preset-uno': 66.0.0 + '@unocss/preset-web-fonts': 66.0.0 + '@unocss/preset-wind': 66.0.0 + '@unocss/preset-wind3': 66.0.0 + '@unocss/transformer-attributify-jsx': 66.0.0 + '@unocss/transformer-compile-class': 66.0.0 + '@unocss/transformer-directives': 66.0.0 + '@unocss/transformer-variant-group': 66.0.0 + '@unocss/vite': 66.0.0(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) optionalDependencies: vite: 6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2) transitivePeerDependencies: - postcss - - rollup - supports-color - vue + unplugin-utils@0.2.4: + dependencies: + pathe: 2.0.3 + picomatch: 4.0.2 + uri-js@4.4.1: dependencies: punycode: 2.3.1 From e0900f0451319956ef178d546c0d99e93e2c9065 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 22 Feb 2025 17:40:04 +0100 Subject: [PATCH 04/80] chore(deps): update eslint monorepo to v9.21.0 (#2402) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 4 +- pnpm-lock.yaml | 122 ++++++++++++++++++++++++------------------------- 2 files changed, 63 insertions(+), 63 deletions(-) diff --git a/package.json b/package.json index 89960cca..fa048d31 100644 --- a/package.json +++ b/package.json @@ -11,13 +11,13 @@ "example:api:dev": "pnpm run --filter \"api\" tauri dev" }, "devDependencies": { - "@eslint/js": "9.19.0", + "@eslint/js": "9.21.0", "@rollup/plugin-node-resolve": "16.0.0", "@rollup/plugin-terser": "0.4.4", "@rollup/plugin-typescript": "11.1.6", "@types/eslint__js": "8.42.3", "covector": "^0.12.3", - "eslint": "9.19.0", + "eslint": "9.21.0", "eslint-config-prettier": "10.0.1", "eslint-plugin-security": "3.0.1", "prettier": "3.5.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 55fc4c51..8aedb24a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -13,8 +13,8 @@ importers: .: devDependencies: '@eslint/js': - specifier: 9.19.0 - version: 9.19.0 + specifier: 9.21.0 + version: 9.21.0 '@rollup/plugin-node-resolve': specifier: 16.0.0 version: 16.0.0(rollup@4.34.8) @@ -31,11 +31,11 @@ importers: specifier: ^0.12.3 version: 0.12.3(mocha@10.8.2) eslint: - specifier: 9.19.0 - version: 9.19.0(jiti@2.4.2) + specifier: 9.21.0 + version: 9.21.0(jiti@2.4.2) eslint-config-prettier: specifier: 10.0.1 - version: 10.0.1(eslint@9.19.0(jiti@2.4.2)) + version: 10.0.1(eslint@9.21.0(jiti@2.4.2)) eslint-plugin-security: specifier: 3.0.1 version: 3.0.1 @@ -53,7 +53,7 @@ importers: version: 5.7.3 typescript-eslint: specifier: 8.24.1 - version: 8.24.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3) + version: 8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) examples/api: dependencies: @@ -751,28 +751,28 @@ packages: resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/config-array@0.19.0': - resolution: {integrity: sha512-zdHg2FPIFNKPdcHWtiNT+jEFCHYVplAXRDlQDyqy0zGx/q2parwh7brGJSiTxRk/TSMkbM//zt/f5CHgyTyaSQ==} + '@eslint/config-array@0.19.2': + resolution: {integrity: sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/core@0.10.0': - resolution: {integrity: sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==} + '@eslint/core@0.12.0': + resolution: {integrity: sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/eslintrc@3.2.0': - resolution: {integrity: sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==} + '@eslint/eslintrc@3.3.0': + resolution: {integrity: sha512-yaVPAiNAalnCZedKLdR21GOGILMLKPyqSLWaAjQFvYA2i/ciDi8ArYVr69Anohb6cH2Ukhqti4aFnYyPm8wdwQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/js@9.19.0': - resolution: {integrity: sha512-rbq9/g38qjfqFLOVPvwjIvFFdNziEC5S65jmjPw5r6A//QH+W91akh9irMwjDN8zKUTak6W9EsAv4m/7Wnw0UQ==} + '@eslint/js@9.21.0': + resolution: {integrity: sha512-BqStZ3HX8Yz6LvsF5ByXYrtigrV5AXADWLAGc7PH/1SxOb7/FIYYMszZZWiUou/GB9P2lXWk2SV4d+Z8h0nknw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/object-schema@2.1.4': - resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==} + '@eslint/object-schema@2.1.6': + resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/plugin-kit@0.2.5': - resolution: {integrity: sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==} + '@eslint/plugin-kit@0.2.7': + resolution: {integrity: sha512-JubJ5B2pJ4k4yGxaNLdbjrnk9d/iDz6/q8wOilpIowd6PJPgaxCuHBnBszq7Ce2TyMrywm5r4PnKm6V3iiZF+g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@humanfs/core@0.19.1': @@ -791,8 +791,8 @@ packages: resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} engines: {node: '>=18.18'} - '@humanwhocodes/retry@0.4.1': - resolution: {integrity: sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==} + '@humanwhocodes/retry@0.4.2': + resolution: {integrity: sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==} engines: {node: '>=18.18'} '@iconify-json/codicon@1.2.6': @@ -1506,8 +1506,8 @@ packages: resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@9.19.0: - resolution: {integrity: sha512-ug92j0LepKlbbEv6hD911THhoRHmbdXt2gX+VDABAW/Ir7D3nqKdv5Pf5vtlyY6HQMTEP2skXY43ueqTCWssEA==} + eslint@9.21.0: + resolution: {integrity: sha512-KjeihdFqTPhOMXTt7StsDxriV4n66ueuF/jfPNC3j/lduHwr/ijDwJMsF+wyMJethgiKi5wniIE243vi07d3pg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: @@ -2684,26 +2684,26 @@ snapshots: '@esbuild/win32-x64@0.24.2': optional: true - '@eslint-community/eslint-utils@4.4.1(eslint@9.19.0(jiti@2.4.2))': + '@eslint-community/eslint-utils@4.4.1(eslint@9.21.0(jiti@2.4.2))': dependencies: - eslint: 9.19.0(jiti@2.4.2) + eslint: 9.21.0(jiti@2.4.2) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.1': {} - '@eslint/config-array@0.19.0': + '@eslint/config-array@0.19.2': dependencies: - '@eslint/object-schema': 2.1.4 + '@eslint/object-schema': 2.1.6 debug: 4.4.0(supports-color@8.1.1) minimatch: 3.1.2 transitivePeerDependencies: - supports-color - '@eslint/core@0.10.0': + '@eslint/core@0.12.0': dependencies: '@types/json-schema': 7.0.15 - '@eslint/eslintrc@3.2.0': + '@eslint/eslintrc@3.3.0': dependencies: ajv: 6.12.6 debug: 4.4.0(supports-color@8.1.1) @@ -2717,13 +2717,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@9.19.0': {} + '@eslint/js@9.21.0': {} - '@eslint/object-schema@2.1.4': {} + '@eslint/object-schema@2.1.6': {} - '@eslint/plugin-kit@0.2.5': + '@eslint/plugin-kit@0.2.7': dependencies: - '@eslint/core': 0.10.0 + '@eslint/core': 0.12.0 levn: 0.4.1 '@humanfs/core@0.19.1': {} @@ -2737,7 +2737,7 @@ snapshots: '@humanwhocodes/retry@0.3.1': {} - '@humanwhocodes/retry@0.4.1': {} + '@humanwhocodes/retry@0.4.2': {} '@iconify-json/codicon@1.2.6': dependencies: @@ -2978,15 +2978,15 @@ snapshots: '@types/unist@2.0.11': {} - '@typescript-eslint/eslint-plugin@8.24.1(@typescript-eslint/parser@8.24.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)': + '@typescript-eslint/eslint-plugin@8.24.1(@typescript-eslint/parser@8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.24.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/parser': 8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) '@typescript-eslint/scope-manager': 8.24.1 - '@typescript-eslint/type-utils': 8.24.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3) - '@typescript-eslint/utils': 8.24.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/type-utils': 8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/utils': 8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) '@typescript-eslint/visitor-keys': 8.24.1 - eslint: 9.19.0(jiti@2.4.2) + eslint: 9.21.0(jiti@2.4.2) graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 @@ -2995,14 +2995,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.24.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)': + '@typescript-eslint/parser@8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3)': dependencies: '@typescript-eslint/scope-manager': 8.24.1 '@typescript-eslint/types': 8.24.1 '@typescript-eslint/typescript-estree': 8.24.1(typescript@5.7.3) '@typescript-eslint/visitor-keys': 8.24.1 debug: 4.4.0(supports-color@8.1.1) - eslint: 9.19.0(jiti@2.4.2) + eslint: 9.21.0(jiti@2.4.2) typescript: 5.7.3 transitivePeerDependencies: - supports-color @@ -3012,12 +3012,12 @@ snapshots: '@typescript-eslint/types': 8.24.1 '@typescript-eslint/visitor-keys': 8.24.1 - '@typescript-eslint/type-utils@8.24.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)': + '@typescript-eslint/type-utils@8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3)': dependencies: '@typescript-eslint/typescript-estree': 8.24.1(typescript@5.7.3) - '@typescript-eslint/utils': 8.24.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/utils': 8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) debug: 4.4.0(supports-color@8.1.1) - eslint: 9.19.0(jiti@2.4.2) + eslint: 9.21.0(jiti@2.4.2) ts-api-utils: 2.0.1(typescript@5.7.3) typescript: 5.7.3 transitivePeerDependencies: @@ -3039,13 +3039,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.24.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)': + '@typescript-eslint/utils@8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3)': dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@9.19.0(jiti@2.4.2)) + '@eslint-community/eslint-utils': 4.4.1(eslint@9.21.0(jiti@2.4.2)) '@typescript-eslint/scope-manager': 8.24.1 '@typescript-eslint/types': 8.24.1 '@typescript-eslint/typescript-estree': 8.24.1(typescript@5.7.3) - eslint: 9.19.0(jiti@2.4.2) + eslint: 9.21.0(jiti@2.4.2) typescript: 5.7.3 transitivePeerDependencies: - supports-color @@ -3534,9 +3534,9 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-config-prettier@10.0.1(eslint@9.19.0(jiti@2.4.2)): + eslint-config-prettier@10.0.1(eslint@9.21.0(jiti@2.4.2)): dependencies: - eslint: 9.19.0(jiti@2.4.2) + eslint: 9.21.0(jiti@2.4.2) eslint-plugin-security@3.0.1: dependencies: @@ -3551,18 +3551,18 @@ snapshots: eslint-visitor-keys@4.2.0: {} - eslint@9.19.0(jiti@2.4.2): + eslint@9.21.0(jiti@2.4.2): dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@9.19.0(jiti@2.4.2)) + '@eslint-community/eslint-utils': 4.4.1(eslint@9.21.0(jiti@2.4.2)) '@eslint-community/regexpp': 4.12.1 - '@eslint/config-array': 0.19.0 - '@eslint/core': 0.10.0 - '@eslint/eslintrc': 3.2.0 - '@eslint/js': 9.19.0 - '@eslint/plugin-kit': 0.2.5 + '@eslint/config-array': 0.19.2 + '@eslint/core': 0.12.0 + '@eslint/eslintrc': 3.3.0 + '@eslint/js': 9.21.0 + '@eslint/plugin-kit': 0.2.7 '@humanfs/node': 0.16.6 '@humanwhocodes/module-importer': 1.0.1 - '@humanwhocodes/retry': 0.4.1 + '@humanwhocodes/retry': 0.4.2 '@types/estree': 1.0.6 '@types/json-schema': 7.0.15 ajv: 6.12.6 @@ -4286,12 +4286,12 @@ snapshots: type-fest@0.7.1: {} - typescript-eslint@8.24.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3): + typescript-eslint@8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3): dependencies: - '@typescript-eslint/eslint-plugin': 8.24.1(@typescript-eslint/parser@8.24.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3) - '@typescript-eslint/parser': 8.24.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3) - '@typescript-eslint/utils': 8.24.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3) - eslint: 9.19.0(jiti@2.4.2) + '@typescript-eslint/eslint-plugin': 8.24.1(@typescript-eslint/parser@8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/parser': 8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/utils': 8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + eslint: 9.21.0(jiti@2.4.2) typescript: 5.7.3 transitivePeerDependencies: - supports-color From 3276d65801c225e851197575a66b243146a92073 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 22 Feb 2025 18:31:57 +0100 Subject: [PATCH 05/80] chore(deps): update rust crate windows-registry to 0.5 (#2446) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- Cargo.lock | 98 ++++++++---------------------------- plugins/deep-link/Cargo.toml | 2 +- 2 files changed, 21 insertions(+), 79 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0e1f2448..7e30f3dd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -6610,8 +6610,8 @@ dependencies = [ "thiserror 2.0.9", "tracing", "url", - "windows-registry 0.4.0", - "windows-result 0.3.0", + "windows-registry 0.5.0", + "windows-result 0.3.1", ] [[package]] @@ -8308,6 +8308,12 @@ dependencies = [ "syn 2.0.90", ] +[[package]] +name = "windows-link" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6dccfd733ce2b1753b03b6d3c65edf020262ea35e20ccdf3e288043e6dd620e3" + [[package]] name = "windows-registry" version = "0.2.0" @@ -8321,13 +8327,13 @@ dependencies = [ [[package]] name = "windows-registry" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4286ad90ddb45071efd1a66dfa43eb02dd0dfbae1545ad6cc3c51cf34d7e8ba3" +checksum = "6c44a98275e31bfd112bb06ba96c8ab13c03383a3753fdddd715406a1824c7e0" dependencies = [ - "windows-result 0.3.0", - "windows-strings 0.3.0", - "windows-targets 0.53.0", + "windows-link", + "windows-result 0.3.1", + "windows-strings 0.3.1", ] [[package]] @@ -8350,11 +8356,11 @@ dependencies = [ [[package]] name = "windows-result" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d08106ce80268c4067c0571ca55a9b4e9516518eaa1a1fe9b37ca403ae1d1a34" +checksum = "06374efe858fab7e4f881500e6e86ec8bc28f9462c47e5a9941a0142ad86b189" dependencies = [ - "windows-targets 0.53.0", + "windows-link", ] [[package]] @@ -8369,11 +8375,11 @@ dependencies = [ [[package]] name = "windows-strings" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b888f919960b42ea4e11c2f408fadb55f78a9f236d5eef084103c8ce52893491" +checksum = "87fa48cc5d406560701792be122a10132491cff9d0aeb23583cc2dcafc847319" dependencies = [ - "windows-targets 0.53.0", + "windows-link", ] [[package]] @@ -8451,29 +8457,13 @@ dependencies = [ "windows_aarch64_gnullvm 0.52.6", "windows_aarch64_msvc 0.52.6", "windows_i686_gnu 0.52.6", - "windows_i686_gnullvm 0.52.6", + "windows_i686_gnullvm", "windows_i686_msvc 0.52.6", "windows_x86_64_gnu 0.52.6", "windows_x86_64_gnullvm 0.52.6", "windows_x86_64_msvc 0.52.6", ] -[[package]] -name = "windows-targets" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1e4c7e8ceaaf9cb7d7507c974735728ab453b67ef8f18febdd7c11fe59dca8b" -dependencies = [ - "windows_aarch64_gnullvm 0.53.0", - "windows_aarch64_msvc 0.53.0", - "windows_i686_gnu 0.53.0", - "windows_i686_gnullvm 0.53.0", - "windows_i686_msvc 0.53.0", - "windows_x86_64_gnu 0.53.0", - "windows_x86_64_gnullvm 0.53.0", - "windows_x86_64_msvc 0.53.0", -] - [[package]] name = "windows-version" version = "0.1.1" @@ -8501,12 +8491,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" - [[package]] name = "windows_aarch64_msvc" version = "0.36.1" @@ -8531,12 +8515,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" -[[package]] -name = "windows_aarch64_msvc" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" - [[package]] name = "windows_i686_gnu" version = "0.36.1" @@ -8561,24 +8539,12 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" -[[package]] -name = "windows_i686_gnu" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" - [[package]] name = "windows_i686_gnullvm" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" -[[package]] -name = "windows_i686_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" - [[package]] name = "windows_i686_msvc" version = "0.36.1" @@ -8603,12 +8569,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" -[[package]] -name = "windows_i686_msvc" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" - [[package]] name = "windows_x86_64_gnu" version = "0.36.1" @@ -8633,12 +8593,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" -[[package]] -name = "windows_x86_64_gnu" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" - [[package]] name = "windows_x86_64_gnullvm" version = "0.42.2" @@ -8657,12 +8611,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" - [[package]] name = "windows_x86_64_msvc" version = "0.36.1" @@ -8687,12 +8635,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" -[[package]] -name = "windows_x86_64_msvc" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" - [[package]] name = "winnow" version = "0.5.40" diff --git a/plugins/deep-link/Cargo.toml b/plugins/deep-link/Cargo.toml index b43b1dfa..068cad08 100644 --- a/plugins/deep-link/Cargo.toml +++ b/plugins/deep-link/Cargo.toml @@ -38,7 +38,7 @@ url = { workspace = true } [target."cfg(windows)".dependencies] dunce = "1" -windows-registry = "0.4" +windows-registry = "0.5" windows-result = "0.3" [target."cfg(target_os = \"linux\")".dependencies] From 5b3a1aaf737782422ae4c332230a15ad965317d4 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 22 Feb 2025 22:35:05 +0100 Subject: [PATCH 06/80] chore(deps): update rust crate color-backtrace to 0.7 (#2409) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- plugins/notification/Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7e30f3dd..01791f8b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1073,9 +1073,9 @@ dependencies = [ [[package]] name = "color-backtrace" -version = "0.6.1" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "150fd80a270c0671379f388c8204deb6a746bb4eac8a6c03fe2460b2c0127ea0" +checksum = "2123a5984bd52ca861c66f66a9ab9883b27115c607f801f86c1bc2a84eb69f0f" dependencies = [ "backtrace", "termcolor", diff --git a/plugins/notification/Cargo.toml b/plugins/notification/Cargo.toml index eb684af3..edafe32e 100644 --- a/plugins/notification/Cargo.toml +++ b/plugins/notification/Cargo.toml @@ -46,7 +46,7 @@ windows-version = { version = "0.1", optional = true } notify-rust = "4.11" [dev-dependencies] -color-backtrace = "0.6" +color-backtrace = "0.7" ctor = "0.2" maplit = "1" From f6838d507f14981b6b7e0e745408360122c12bd6 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 22 Feb 2025 23:12:38 +0100 Subject: [PATCH 07/80] chore(deps): update dependency @types/eslint__js to v9 (v2) (#2447) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: FabianLars --- package.json | 1 - pnpm-lock.yaml | 18 ------------------ 2 files changed, 19 deletions(-) diff --git a/package.json b/package.json index fa048d31..469f4e44 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,6 @@ "@rollup/plugin-node-resolve": "16.0.0", "@rollup/plugin-terser": "0.4.4", "@rollup/plugin-typescript": "11.1.6", - "@types/eslint__js": "8.42.3", "covector": "^0.12.3", "eslint": "9.21.0", "eslint-config-prettier": "10.0.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8aedb24a..5e7540d3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -24,9 +24,6 @@ importers: '@rollup/plugin-typescript': specifier: 11.1.6 version: 11.1.6(rollup@4.34.8)(tslib@2.8.1)(typescript@5.7.3) - '@types/eslint__js': - specifier: 8.42.3 - version: 8.42.3 covector: specifier: ^0.12.3 version: 0.12.3(mocha@10.8.2) @@ -1061,12 +1058,6 @@ packages: engines: {node: '>= 10'} hasBin: true - '@types/eslint@9.6.1': - resolution: {integrity: sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==} - - '@types/eslint__js@8.42.3': - resolution: {integrity: sha512-alfG737uhmPdnvkrLdZLcEKJ/B8s9Y4hrZ+YAdzUeoArBlSUERA2E87ROfOaS4jd/C45fzOoZzidLc1IPwLqOw==} - '@types/estree@1.0.6': resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} @@ -2957,15 +2948,6 @@ snapshots: '@tauri-apps/cli-win32-ia32-msvc': 2.2.7 '@tauri-apps/cli-win32-x64-msvc': 2.2.7 - '@types/eslint@9.6.1': - dependencies: - '@types/estree': 1.0.6 - '@types/json-schema': 7.0.15 - - '@types/eslint__js@8.42.3': - dependencies: - '@types/eslint': 9.6.1 - '@types/estree@1.0.6': {} '@types/json-schema@7.0.15': {} From c10d5bfb54d340968730341fa89a30609c8c4925 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 23 Feb 2025 13:22:51 +0100 Subject: [PATCH 08/80] chore(deps): update rust crate infer to 0.19 (v2) (#2385) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: FabianLars --- Cargo.lock | 13 +++++++++++-- plugins/updater/Cargo.toml | 2 +- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 01791f8b..e3404511 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3069,6 +3069,15 @@ dependencies = [ "cfb", ] +[[package]] +name = "infer" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a588916bfdfd92e71cacef98a63d9b1f0d74d6599980d11894290e7ddefffcf7" +dependencies = [ + "cfb", +] + [[package]] name = "inotify" version = "0.11.0" @@ -6947,7 +6956,7 @@ dependencies = [ "flate2", "futures-util", "http", - "infer", + "infer 0.19.0", "minisign-verify", "osakit", "percent-encoding", @@ -7075,7 +7084,7 @@ dependencies = [ "glob", "html5ever", "http", - "infer", + "infer 0.16.0", "json-patch", "kuchikiki", "log", diff --git a/plugins/updater/Cargo.toml b/plugins/updater/Cargo.toml index b4a81b0a..cf9e709f 100644 --- a/plugins/updater/Cargo.toml +++ b/plugins/updater/Cargo.toml @@ -43,7 +43,7 @@ base64 = "0.22" semver = { version = "1", features = ["serde"] } futures-util = "0.3" tempfile = "3" -infer = "0.16" +infer = "0.19" percent-encoding = "2.3" [target."cfg(target_os = \"windows\")".dependencies] From 1ab5f1576333174095bc7dad4bef7a8576bb29ab Mon Sep 17 00:00:00 2001 From: Fabian-Lars Date: Sun, 23 Feb 2025 18:25:00 +0100 Subject: [PATCH 09/80] fix(single-instance): check if pointer is null (#2452) --- .changes/single-instance-nullpointer-deref.md | 5 +++++ plugins/process/permissions/schemas/schema.json | 2 +- plugins/single-instance/src/platform_impl/windows.rs | 5 +++++ 3 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 .changes/single-instance-nullpointer-deref.md diff --git a/.changes/single-instance-nullpointer-deref.md b/.changes/single-instance-nullpointer-deref.md new file mode 100644 index 00000000..7c3e7ea5 --- /dev/null +++ b/.changes/single-instance-nullpointer-deref.md @@ -0,0 +1,5 @@ +--- +single-instance: patch +--- + +Fixed an issue that caused `null pointer dereference occurred` errors on rust nightly. diff --git a/plugins/process/permissions/schemas/schema.json b/plugins/process/permissions/schemas/schema.json index 1243c7d3..95f67149 100644 --- a/plugins/process/permissions/schemas/schema.json +++ b/plugins/process/permissions/schemas/schema.json @@ -322,4 +322,4 @@ ] } } -} +} \ No newline at end of file diff --git a/plugins/single-instance/src/platform_impl/windows.rs b/plugins/single-instance/src/platform_impl/windows.rs index e99f405d..2f6992ee 100644 --- a/plugins/single-instance/src/platform_impl/windows.rs +++ b/plugins/single-instance/src/platform_impl/windows.rs @@ -118,6 +118,11 @@ unsafe extern "system" fn single_instance_window_proc( ) -> LRESULT { let data_ptr = GetWindowLongPtrW(hwnd, GWL_USERDATA) as *mut (AppHandle, Box>); + + if data_ptr.is_null() { + return DefWindowProcW(hwnd, msg, wparam, lparam); + } + let (app_handle, callback) = &mut *data_ptr; match msg { From 0af367f7d4f94624f1c13ffc282f62b930bd5316 Mon Sep 17 00:00:00 2001 From: Amr Bashir Date: Mon, 24 Feb 2025 17:10:30 +0200 Subject: [PATCH 10/80] refactor(single-instance): improve userdata ptr handling (#2453) * fix(single-instance): fix null pointer dereference panic on Windows * fmt --- .changes/single-instance-nullpointer-deref.md | 2 +- .../examples/vanilla/src-tauri/build.rs | 2 +- .../examples/vanilla/src-tauri/rustfmt.toml | 14 --- .../examples/vanilla/src-tauri/src/main.rs | 17 ++-- .../src/platform_impl/windows.rs | 92 ++++++++++++------- 5 files changed, 68 insertions(+), 59 deletions(-) delete mode 100644 plugins/single-instance/examples/vanilla/src-tauri/rustfmt.toml diff --git a/.changes/single-instance-nullpointer-deref.md b/.changes/single-instance-nullpointer-deref.md index 7c3e7ea5..e13a9828 100644 --- a/.changes/single-instance-nullpointer-deref.md +++ b/.changes/single-instance-nullpointer-deref.md @@ -2,4 +2,4 @@ single-instance: patch --- -Fixed an issue that caused `null pointer dereference occurred` errors on rust nightly. +Fixed `null pointer dereference` panic on rust nightly on Windows. diff --git a/plugins/single-instance/examples/vanilla/src-tauri/build.rs b/plugins/single-instance/examples/vanilla/src-tauri/build.rs index b055ec37..5ebf8d2f 100644 --- a/plugins/single-instance/examples/vanilla/src-tauri/build.rs +++ b/plugins/single-instance/examples/vanilla/src-tauri/build.rs @@ -3,5 +3,5 @@ // SPDX-License-Identifier: MIT fn main() { - tauri_build::build() + tauri_build::build() } diff --git a/plugins/single-instance/examples/vanilla/src-tauri/rustfmt.toml b/plugins/single-instance/examples/vanilla/src-tauri/rustfmt.toml deleted file mode 100644 index 550a0985..00000000 --- a/plugins/single-instance/examples/vanilla/src-tauri/rustfmt.toml +++ /dev/null @@ -1,14 +0,0 @@ -max_width = 100 -hard_tabs = false -tab_spaces = 2 -newline_style = "Auto" -use_small_heuristics = "Default" -reorder_imports = true -reorder_modules = true -remove_nested_parens = true -edition = "2021" -merge_derives = true -use_try_shorthand = false -use_field_init_shorthand = false -force_explicit_abi = true -imports_granularity = "Crate" diff --git a/plugins/single-instance/examples/vanilla/src-tauri/src/main.rs b/plugins/single-instance/examples/vanilla/src-tauri/src/main.rs index 49b1a5a6..e736c4f3 100644 --- a/plugins/single-instance/examples/vanilla/src-tauri/src/main.rs +++ b/plugins/single-instance/examples/vanilla/src-tauri/src/main.rs @@ -3,16 +3,15 @@ // SPDX-License-Identifier: MIT #![cfg_attr( - all(not(debug_assertions), target_os = "windows"), - windows_subsystem = "windows" + all(not(debug_assertions), target_os = "windows"), + windows_subsystem = "windows" )] fn main() { - tauri::Builder::default() - .plugin(tauri_plugin_cli::init()) - .plugin(tauri_plugin_single_instance::init(|app, argv, cwd| { - println!("{}, {argv:?}, {cwd}", app.package_info().name); - })) - .run(tauri::generate_context!()) - .expect("error while running tauri application"); + tauri::Builder::default() + .plugin(tauri_plugin_single_instance::init(|app, argv, cwd| { + println!("{}, {argv:?}, {cwd}", app.package_info().name); + })) + .run(tauri::generate_context!()) + .expect("error while running tauri application"); } diff --git a/plugins/single-instance/src/platform_impl/windows.rs b/plugins/single-instance/src/platform_impl/windows.rs index 2f6992ee..832d0803 100644 --- a/plugins/single-instance/src/platform_impl/windows.rs +++ b/plugins/single-instance/src/platform_impl/windows.rs @@ -20,18 +20,38 @@ use windows_sys::Win32::{ }, UI::WindowsAndMessaging::{ self as w32wm, CreateWindowExW, DefWindowProcW, DestroyWindow, FindWindowW, - RegisterClassExW, SendMessageW, GWL_STYLE, GWL_USERDATA, WINDOW_LONG_PTR_INDEX, - WM_COPYDATA, WM_DESTROY, WNDCLASSEXW, WS_EX_LAYERED, WS_EX_NOACTIVATE, WS_EX_TOOLWINDOW, - WS_EX_TRANSPARENT, WS_OVERLAPPED, WS_POPUP, WS_VISIBLE, + RegisterClassExW, SendMessageW, CREATESTRUCTW, GWLP_USERDATA, GWL_STYLE, + WINDOW_LONG_PTR_INDEX, WM_COPYDATA, WM_CREATE, WM_DESTROY, WNDCLASSEXW, WS_EX_LAYERED, + WS_EX_NOACTIVATE, WS_EX_TOOLWINDOW, WS_EX_TRANSPARENT, WS_OVERLAPPED, WS_POPUP, WS_VISIBLE, }, }; +const WMCOPYDATA_SINGLE_INSTANCE_DATA: usize = 1542; + struct MutexHandle(isize); + struct TargetWindowHandle(isize); -const WMCOPYDATA_SINGLE_INSTANCE_DATA: usize = 1542; +struct UserData { + app: AppHandle, + callback: Box>, +} + +impl UserData { + unsafe fn from_hwnd_raw(hwnd: HWND) -> *mut Self { + GetWindowLongPtrW(hwnd, GWLP_USERDATA) as *mut Self + } -pub fn init(f: Box>) -> TauriPlugin { + unsafe fn from_hwnd<'a>(hwnd: HWND) -> &'a mut Self { + &mut *Self::from_hwnd_raw(hwnd) + } + + fn run_callback(&mut self, args: Vec, cwd: String) { + (self.callback)(&self.app, args, cwd) + } +} + +pub fn init(callback: Box>) -> TauriPlugin { plugin::Builder::new("single-instance") .setup(|app, _api| { #[allow(unused_mut)] @@ -54,21 +74,22 @@ pub fn init(f: Box>) -> TauriPlugin { let hwnd = FindWindowW(class_name.as_ptr(), window_name.as_ptr()); if !hwnd.is_null() { - let data = format!( - "{}|{}\0", - std::env::current_dir() - .unwrap_or_default() - .to_str() - .unwrap_or_default(), - std::env::args().collect::>().join("|") - ); + let cwd = std::env::current_dir().unwrap_or_default(); + let cwd = cwd.to_str().unwrap_or_default(); + + let args = std::env::args().collect::>().join("|"); + + let data = format!("{cwd}|{args}\0",); + let bytes = data.as_bytes(); let cds = COPYDATASTRUCT { dwData: WMCOPYDATA_SINGLE_INSTANCE_DATA, cbData: bytes.len() as _, lpData: bytes.as_ptr() as _, }; + SendMessageW(hwnd, WM_COPYDATA, 0, &cds as *const _ as _); + app.cleanup_before_exit(); std::process::exit(0); } @@ -76,15 +97,12 @@ pub fn init(f: Box>) -> TauriPlugin { } else { app.manage(MutexHandle(hmutex as _)); - let hwnd = create_event_target_window::(&class_name, &window_name); - unsafe { - SetWindowLongPtrW( - hwnd, - GWL_USERDATA, - Box::into_raw(Box::new((app.clone(), f))) as _, - ) + let userdata = UserData { + app: app.clone(), + callback, }; - + let userdata = Box::into_raw(Box::new(userdata)); + let hwnd = create_event_target_window::(&class_name, &window_name, userdata); app.manage(TargetWindowHandle(hwnd as _)); } @@ -116,37 +134,43 @@ unsafe extern "system" fn single_instance_window_proc( wparam: WPARAM, lparam: LPARAM, ) -> LRESULT { - let data_ptr = GetWindowLongPtrW(hwnd, GWL_USERDATA) - as *mut (AppHandle, Box>); - - if data_ptr.is_null() { - return DefWindowProcW(hwnd, msg, wparam, lparam); - } - - let (app_handle, callback) = &mut *data_ptr; - match msg { + WM_CREATE => { + let create_struct = &*(lparam as *const CREATESTRUCTW); + let userdata = create_struct.lpCreateParams as *const UserData; + SetWindowLongPtrW(hwnd, GWLP_USERDATA, userdata as _); + 0 + } + WM_COPYDATA => { let cds_ptr = lparam as *const COPYDATASTRUCT; if (*cds_ptr).dwData == WMCOPYDATA_SINGLE_INSTANCE_DATA { + let userdata = UserData::::from_hwnd(hwnd); + let data = CStr::from_ptr((*cds_ptr).lpData as _).to_string_lossy(); let mut s = data.split('|'); let cwd = s.next().unwrap(); let args = s.map(|s| s.to_string()).collect(); - callback(app_handle, args, cwd.to_string()); + + userdata.run_callback(args, cwd.to_string()); } 1 } WM_DESTROY => { - let _ = Box::from_raw(data_ptr); + let userdata = UserData::::from_hwnd_raw(hwnd); + drop(Box::from_raw(userdata)); 0 } _ => DefWindowProcW(hwnd, msg, wparam, lparam), } } -fn create_event_target_window(class_name: &[u16], window_name: &[u16]) -> HWND { +fn create_event_target_window( + class_name: &[u16], + window_name: &[u16], + userdata: *const UserData, +) -> HWND { unsafe { let class = WNDCLASSEXW { cbSize: std::mem::size_of::() as u32, @@ -187,7 +211,7 @@ fn create_event_target_window(class_name: &[u16], window_name: &[u16 std::ptr::null_mut(), std::ptr::null_mut(), GetModuleHandleW(std::ptr::null()), - std::ptr::null(), + userdata as _, ); SetWindowLongPtrW( hwnd, From fbd4d28920755818f17de659fe5701058b2960db Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 24 Feb 2025 16:31:28 +0100 Subject: [PATCH 11/80] publish new versions (#2404) Co-authored-by: amrbashir --- .../log-timezone_strategy-loglevel-fix.md | 6 ----- .changes/single-instance-nullpointer-deref.md | 5 ---- .changes/updater-request-error.md | 6 ----- Cargo.lock | 8 +++--- examples/api/CHANGELOG.md | 7 +++++ examples/api/package.json | 4 +-- examples/api/src-tauri/CHANGELOG.md | 7 +++++ examples/api/src-tauri/Cargo.toml | 6 ++--- plugins/log/CHANGELOG.md | 4 +++ plugins/log/Cargo.toml | 2 +- plugins/log/package.json | 2 +- plugins/single-instance/CHANGELOG.md | 4 +++ plugins/single-instance/Cargo.toml | 2 +- plugins/updater/CHANGELOG.md | 4 +++ plugins/updater/Cargo.toml | 2 +- plugins/updater/package.json | 2 +- pnpm-lock.yaml | 26 ++++++++++--------- 17 files changed, 54 insertions(+), 43 deletions(-) delete mode 100644 .changes/log-timezone_strategy-loglevel-fix.md delete mode 100644 .changes/single-instance-nullpointer-deref.md delete mode 100644 .changes/updater-request-error.md diff --git a/.changes/log-timezone_strategy-loglevel-fix.md b/.changes/log-timezone_strategy-loglevel-fix.md deleted file mode 100644 index b3787e0d..00000000 --- a/.changes/log-timezone_strategy-loglevel-fix.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"log": patch -"log-js": patch ---- - -Fix timezone_strategy overwriting previously set LogLevels. diff --git a/.changes/single-instance-nullpointer-deref.md b/.changes/single-instance-nullpointer-deref.md deleted file mode 100644 index e13a9828..00000000 --- a/.changes/single-instance-nullpointer-deref.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -single-instance: patch ---- - -Fixed `null pointer dereference` panic on rust nightly on Windows. diff --git a/.changes/updater-request-error.md b/.changes/updater-request-error.md deleted file mode 100644 index a9f579f9..00000000 --- a/.changes/updater-request-error.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -updater: patch -updater-js: patch ---- - -Fixed an issue that caused the plugin to emit a `ReleaseNotFound` error instead of a `Reqwest` error when the http request in `check()` failed. diff --git a/Cargo.lock b/Cargo.lock index e3404511..dcff853f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -206,7 +206,7 @@ checksum = "4c95c10ba0b00a02636238b814946408b1322d5ac4760326e6fb8ec956d85775" [[package]] name = "api" -version = "2.0.17" +version = "2.0.18" dependencies = [ "log", "serde", @@ -6737,7 +6737,7 @@ dependencies = [ [[package]] name = "tauri-plugin-log" -version = "2.2.1" +version = "2.2.2" dependencies = [ "android_logger", "byte-unit", @@ -6882,7 +6882,7 @@ dependencies = [ [[package]] name = "tauri-plugin-single-instance" -version = "2.2.1" +version = "2.2.2" dependencies = [ "semver", "serde", @@ -6949,7 +6949,7 @@ dependencies = [ [[package]] name = "tauri-plugin-updater" -version = "2.5.0" +version = "2.5.1" dependencies = [ "base64 0.22.1", "dirs 6.0.0", diff --git a/examples/api/CHANGELOG.md b/examples/api/CHANGELOG.md index 6c65df1d..137ca0b6 100644 --- a/examples/api/CHANGELOG.md +++ b/examples/api/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## \[2.0.14] + +### Dependencies + +- Upgraded to `log-js@2.2.2` +- Upgraded to `updater-js@2.5.1` + ## \[2.0.13] ### Dependencies diff --git a/examples/api/package.json b/examples/api/package.json index d07999ba..caa92ca8 100644 --- a/examples/api/package.json +++ b/examples/api/package.json @@ -1,7 +1,7 @@ { "name": "api", "private": true, - "version": "2.0.13", + "version": "2.0.14", "type": "module", "scripts": { "dev": "vite --clearScreen false", @@ -28,7 +28,7 @@ "@tauri-apps/plugin-process": "^2.2.0", "@tauri-apps/plugin-shell": "^2.2.0", "@tauri-apps/plugin-store": "^2.2.0", - "@tauri-apps/plugin-updater": "^2.5.0", + "@tauri-apps/plugin-updater": "^2.5.1", "@zerodevx/svelte-json-view": "1.0.11" }, "devDependencies": { diff --git a/examples/api/src-tauri/CHANGELOG.md b/examples/api/src-tauri/CHANGELOG.md index dc3c417c..dd6e80af 100644 --- a/examples/api/src-tauri/CHANGELOG.md +++ b/examples/api/src-tauri/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## \[2.0.18] + +### Dependencies + +- Upgraded to `log@2.2.2` +- Upgraded to `updater@2.5.1` + ## \[2.0.17] ### Dependencies diff --git a/examples/api/src-tauri/Cargo.toml b/examples/api/src-tauri/Cargo.toml index e38c2e47..51e7f223 100644 --- a/examples/api/src-tauri/Cargo.toml +++ b/examples/api/src-tauri/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "api" publish = false -version = "2.0.17" +version = "2.0.18" description = "An example Tauri Application showcasing the api" edition = "2021" rust-version = { workspace = true } @@ -19,7 +19,7 @@ serde_json = { workspace = true } serde = { workspace = true } tiny_http = "0.12" log = { workspace = true } -tauri-plugin-log = { path = "../../../plugins/log", version = "2.2.1" } +tauri-plugin-log = { path = "../../../plugins/log", version = "2.2.2" } tauri-plugin-fs = { path = "../../../plugins/fs", version = "2.2.0", features = [ "watch", ] } @@ -53,7 +53,7 @@ features = [ [target."cfg(any(target_os = \"macos\", windows, target_os = \"linux\", target_os = \"dragonfly\", target_os = \"freebsd\", target_os = \"openbsd\", target_os = \"netbsd\"))".dependencies] tauri-plugin-cli = { path = "../../../plugins/cli", version = "2.2.0" } tauri-plugin-global-shortcut = { path = "../../../plugins/global-shortcut", version = "2.2.0" } -tauri-plugin-updater = { path = "../../../plugins/updater", version = "2.5.0" } +tauri-plugin-updater = { path = "../../../plugins/updater", version = "2.5.1" } tauri-plugin-window-state = { path = "../../../plugins/window-state", version = "2.2.0" } [target."cfg(any(target_os = \"android\", target_os = \"ios\"))".dependencies] diff --git a/plugins/log/CHANGELOG.md b/plugins/log/CHANGELOG.md index 6c7cbdfe..54fda54d 100644 --- a/plugins/log/CHANGELOG.md +++ b/plugins/log/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## \[2.2.2] + +- [`6b4c3917`](https://github.com/tauri-apps/plugins-workspace/commit/6b4c3917389f4bc489d03b48a837557ac0584175) ([#2401](https://github.com/tauri-apps/plugins-workspace/pull/2401) by [@Seishiin](https://github.com/tauri-apps/plugins-workspace/../../Seishiin)) Fix timezone_strategy overwriting previously set LogLevels. + ## \[2.2.1] - [`784a54a3`](https://github.com/tauri-apps/plugins-workspace/commit/784a54a39094dfbaaa8dd123eb083c04dc6c3bb2) ([#2344](https://github.com/tauri-apps/plugins-workspace/pull/2344) by [@madsmtm](https://github.com/tauri-apps/plugins-workspace/../../madsmtm)) Use `objc2` instead of `objc`. diff --git a/plugins/log/Cargo.toml b/plugins/log/Cargo.toml index 22f0b4e4..e1cec499 100644 --- a/plugins/log/Cargo.toml +++ b/plugins/log/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-log" -version = "2.2.1" +version = "2.2.2" description = "Configurable logging for your Tauri app." authors = { workspace = true } license = { workspace = true } diff --git a/plugins/log/package.json b/plugins/log/package.json index bcef5bf3..a71b8ea9 100644 --- a/plugins/log/package.json +++ b/plugins/log/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-log", - "version": "2.2.1", + "version": "2.2.2", "description": "Configurable logging for your Tauri app.", "license": "MIT OR Apache-2.0", "authors": [ diff --git a/plugins/single-instance/CHANGELOG.md b/plugins/single-instance/CHANGELOG.md index e0802b51..77de533a 100644 --- a/plugins/single-instance/CHANGELOG.md +++ b/plugins/single-instance/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## \[2.2.2] + +- [`1ab5f157`](https://github.com/tauri-apps/plugins-workspace/commit/1ab5f1576333174095bc7dad4bef7a8576bb29ab) ([#2452](https://github.com/tauri-apps/plugins-workspace/pull/2452) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Fixed `null pointer dereference` panic on rust nightly on Windows. + ## \[2.2.1] - [`da5c59e2`](https://github.com/tauri-apps/plugins-workspace/commit/da5c59e2fe879d177e3cfd52fcacce85440423cb) ([#2271](https://github.com/tauri-apps/plugins-workspace/pull/2271) by [@renovate](https://github.com/tauri-apps/plugins-workspace/../../renovate)) Updated `zbus` dependency to version 5. No API changes. diff --git a/plugins/single-instance/Cargo.toml b/plugins/single-instance/Cargo.toml index edcbdb77..574df414 100644 --- a/plugins/single-instance/Cargo.toml +++ b/plugins/single-instance/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-single-instance" -version = "2.2.1" +version = "2.2.2" description = "Ensure a single instance of your tauri app is running." authors = { workspace = true } license = { workspace = true } diff --git a/plugins/updater/CHANGELOG.md b/plugins/updater/CHANGELOG.md index e8c2d587..21f5260a 100644 --- a/plugins/updater/CHANGELOG.md +++ b/plugins/updater/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## \[2.5.1] + +- [`6f881293`](https://github.com/tauri-apps/plugins-workspace/commit/6f881293fcd67838f6f3f8063f536292431dd1f7) ([#2439](https://github.com/tauri-apps/plugins-workspace/pull/2439) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Fixed an issue that caused the plugin to emit a `ReleaseNotFound` error instead of a `Reqwest` error when the http request in `check()` failed. + ## \[2.5.0] - [`5369898d`](https://github.com/tauri-apps/plugins-workspace/commit/5369898db7a6098e3e2f43436100ea556d405628) ([#2067](https://github.com/tauri-apps/plugins-workspace/pull/2067) by [@jLynx](https://github.com/tauri-apps/plugins-workspace/../../jLynx)) Fix update installation on macOS when using an user without admin privileges. diff --git a/plugins/updater/Cargo.toml b/plugins/updater/Cargo.toml index cf9e709f..4d462f31 100644 --- a/plugins/updater/Cargo.toml +++ b/plugins/updater/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-updater" -version = "2.5.0" +version = "2.5.1" description = "In-app updates for Tauri applications." edition = { workspace = true } authors = { workspace = true } diff --git a/plugins/updater/package.json b/plugins/updater/package.json index a47faf25..12c85302 100644 --- a/plugins/updater/package.json +++ b/plugins/updater/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-updater", - "version": "2.5.0", + "version": "2.5.1", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5e7540d3..a7b04740 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -109,7 +109,7 @@ importers: specifier: ^2.2.0 version: link:../../plugins/store '@tauri-apps/plugin-updater': - specifier: ^2.5.0 + specifier: ^2.5.1 version: link:../../plugins/updater '@zerodevx/svelte-json-view': specifier: 1.0.11 @@ -2428,9 +2428,9 @@ snapshots: - encoding - mocha - '@covector/assemble@0.12.0': + '@covector/assemble@0.12.0(mocha@10.8.2)': dependencies: - '@covector/command': 0.8.0 + '@covector/command': 0.8.0(mocha@10.8.2) '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) js-yaml: 4.1.0 @@ -2441,9 +2441,10 @@ snapshots: unified: 9.2.2 transitivePeerDependencies: - encoding + - mocha - supports-color - '@covector/changelog@0.12.0': + '@covector/changelog@0.12.0(mocha@10.8.2)': dependencies: '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) @@ -2453,14 +2454,16 @@ snapshots: unified: 9.2.2 transitivePeerDependencies: - encoding + - mocha - supports-color - '@covector/command@0.8.0': + '@covector/command@0.8.0(mocha@10.8.2)': dependencies: - '@effection/process': 2.1.4 + '@effection/process': 2.1.4(mocha@10.8.2) effection: 2.0.8(mocha@10.8.2) transitivePeerDependencies: - encoding + - mocha '@covector/files@0.8.0': dependencies: @@ -2507,10 +2510,8 @@ snapshots: dependencies: effection: 2.0.8(mocha@10.8.2) mocha: 10.8.2 - transitivePeerDependencies: - - encoding - '@effection/process@2.1.4': + '@effection/process@2.1.4(mocha@10.8.2)': dependencies: cross-spawn: 7.0.6 ctrlc-windows: 2.1.0 @@ -2518,6 +2519,7 @@ snapshots: shellwords: 0.1.1 transitivePeerDependencies: - encoding + - mocha '@effection/stream@2.0.6': dependencies: @@ -3377,9 +3379,9 @@ snapshots: dependencies: '@clack/prompts': 0.7.0 '@covector/apply': 0.10.0(mocha@10.8.2) - '@covector/assemble': 0.12.0 - '@covector/changelog': 0.12.0 - '@covector/command': 0.8.0 + '@covector/assemble': 0.12.0(mocha@10.8.2) + '@covector/changelog': 0.12.0(mocha@10.8.2) + '@covector/command': 0.8.0(mocha@10.8.2) '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) globby: 11.1.0 From ddcfad46f9785e758451be06fa146078e7deecbb Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Feb 2025 11:31:58 +0800 Subject: [PATCH 12/80] chore(deps): update dependency typescript-eslint to v8.25.0 (#2459) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 126 ++++++++++++++++++++++++------------------------- 2 files changed, 63 insertions(+), 65 deletions(-) diff --git a/package.json b/package.json index 469f4e44..c0ae19e1 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "rollup": "4.34.8", "tslib": "2.8.1", "typescript": "5.7.3", - "typescript-eslint": "8.24.1" + "typescript-eslint": "8.25.0" }, "resolutions": { "semver": ">=7.5.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a7b04740..692f6d33 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -49,8 +49,8 @@ importers: specifier: 5.7.3 version: 5.7.3 typescript-eslint: - specifier: 8.24.1 - version: 8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + specifier: 8.25.0 + version: 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) examples/api: dependencies: @@ -1073,51 +1073,51 @@ packages: '@types/unist@2.0.11': resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} - '@typescript-eslint/eslint-plugin@8.24.1': - resolution: {integrity: sha512-ll1StnKtBigWIGqvYDVuDmXJHVH4zLVot1yQ4fJtLpL7qacwkxJc1T0bptqw+miBQ/QfUbhl1TcQ4accW5KUyA==} + '@typescript-eslint/eslint-plugin@8.25.0': + resolution: {integrity: sha512-VM7bpzAe7JO/BFf40pIT1lJqS/z1F8OaSsUB3rpFJucQA4cOSuH2RVVVkFULN+En0Djgr29/jb4EQnedUo95KA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/parser@8.24.1': - resolution: {integrity: sha512-Tqoa05bu+t5s8CTZFaGpCH2ub3QeT9YDkXbPd3uQ4SfsLoh1/vv2GEYAioPoxCWJJNsenXlC88tRjwoHNts1oQ==} + '@typescript-eslint/parser@8.25.0': + resolution: {integrity: sha512-4gbs64bnbSzu4FpgMiQ1A+D+urxkoJk/kqlDJ2W//5SygaEiAP2B4GoS7TEdxgwol2el03gckFV9lJ4QOMiiHg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/scope-manager@8.24.1': - resolution: {integrity: sha512-OdQr6BNBzwRjNEXMQyaGyZzgg7wzjYKfX2ZBV3E04hUCBDv3GQCHiz9RpqdUIiVrMgJGkXm3tcEh4vFSHreS2Q==} + '@typescript-eslint/scope-manager@8.25.0': + resolution: {integrity: sha512-6PPeiKIGbgStEyt4NNXa2ru5pMzQ8OYKO1hX1z53HMomrmiSB+R5FmChgQAP1ro8jMtNawz+TRQo/cSXrauTpg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@8.24.1': - resolution: {integrity: sha512-/Do9fmNgCsQ+K4rCz0STI7lYB4phTtEXqqCAs3gZW0pnK7lWNkvWd5iW545GSmApm4AzmQXmSqXPO565B4WVrw==} + '@typescript-eslint/type-utils@8.25.0': + resolution: {integrity: sha512-d77dHgHWnxmXOPJuDWO4FDWADmGQkN5+tt6SFRZz/RtCWl4pHgFl3+WdYCn16+3teG09DY6XtEpf3gGD0a186g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/types@8.24.1': - resolution: {integrity: sha512-9kqJ+2DkUXiuhoiYIUvIYjGcwle8pcPpdlfkemGvTObzgmYfJ5d0Qm6jwb4NBXP9W1I5tss0VIAnWFumz3mC5A==} + '@typescript-eslint/types@8.25.0': + resolution: {integrity: sha512-+vUe0Zb4tkNgznQwicsvLUJgZIRs6ITeWSCclX1q85pR1iOiaj+4uZJIUp//Z27QWu5Cseiw3O3AR8hVpax7Aw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.24.1': - resolution: {integrity: sha512-UPyy4MJ/0RE648DSKQe9g0VDSehPINiejjA6ElqnFaFIhI6ZEiZAkUI0D5MCk0bQcTf/LVqZStvQ6K4lPn/BRg==} + '@typescript-eslint/typescript-estree@8.25.0': + resolution: {integrity: sha512-ZPaiAKEZ6Blt/TPAx5Ot0EIB/yGtLI2EsGoY6F7XKklfMxYQyvtL+gT/UCqkMzO0BVFHLDlzvFqQzurYahxv9Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/utils@8.24.1': - resolution: {integrity: sha512-OOcg3PMMQx9EXspId5iktsI3eMaXVwlhC8BvNnX6B5w9a4dVgpkQZuU8Hy67TolKcl+iFWq0XX+jbDGN4xWxjQ==} + '@typescript-eslint/utils@8.25.0': + resolution: {integrity: sha512-syqRbrEv0J1wywiLsK60XzHnQe/kRViI3zwFALrNEgnntn1l24Ra2KvOAWwWbWZ1lBZxZljPDGOq967dsl6fkA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/visitor-keys@8.24.1': - resolution: {integrity: sha512-EwVHlp5l+2vp8CoqJm9KikPZgi3gbdZAtabKT9KPShGeOcJhsv4Zdo3oc8T8I0uKEmYoU4ItyxbptjF08enaxg==} + '@typescript-eslint/visitor-keys@8.25.0': + resolution: {integrity: sha512-kCYXKAum9CecGVHGij7muybDfTS2sD3t0L4bJsEZLkyrXUImiCTq1M3LG2SRtOhiHFwMR9wAFplpT6XHYjTkwQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@unocss/astro@66.0.0': @@ -2199,8 +2199,8 @@ packages: resolution: {integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==} engines: {node: '>=8'} - typescript-eslint@8.24.1: - resolution: {integrity: sha512-cw3rEdzDqBs70TIcb0Gdzbt6h11BSs2pS0yaq7hDWDBtCCSei1pPSUXE9qUdQ/Wm9NgFg8mKtMt1b8fTHIl1jA==} + typescript-eslint@8.25.0: + resolution: {integrity: sha512-TxRdQQLH4g7JkoFlYG3caW5v1S6kEkz8rqt80iQJZUYPq1zD1Ra7HfQBJJ88ABRaMvHAXnwRvRB4V+6sQ9xN5Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -2428,9 +2428,9 @@ snapshots: - encoding - mocha - '@covector/assemble@0.12.0(mocha@10.8.2)': + '@covector/assemble@0.12.0': dependencies: - '@covector/command': 0.8.0(mocha@10.8.2) + '@covector/command': 0.8.0 '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) js-yaml: 4.1.0 @@ -2441,10 +2441,9 @@ snapshots: unified: 9.2.2 transitivePeerDependencies: - encoding - - mocha - supports-color - '@covector/changelog@0.12.0(mocha@10.8.2)': + '@covector/changelog@0.12.0': dependencies: '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) @@ -2454,16 +2453,14 @@ snapshots: unified: 9.2.2 transitivePeerDependencies: - encoding - - mocha - supports-color - '@covector/command@0.8.0(mocha@10.8.2)': + '@covector/command@0.8.0': dependencies: - '@effection/process': 2.1.4(mocha@10.8.2) + '@effection/process': 2.1.4 effection: 2.0.8(mocha@10.8.2) transitivePeerDependencies: - encoding - - mocha '@covector/files@0.8.0': dependencies: @@ -2510,8 +2507,10 @@ snapshots: dependencies: effection: 2.0.8(mocha@10.8.2) mocha: 10.8.2 + transitivePeerDependencies: + - encoding - '@effection/process@2.1.4(mocha@10.8.2)': + '@effection/process@2.1.4': dependencies: cross-spawn: 7.0.6 ctrlc-windows: 2.1.0 @@ -2519,7 +2518,6 @@ snapshots: shellwords: 0.1.1 transitivePeerDependencies: - encoding - - mocha '@effection/stream@2.0.6': dependencies: @@ -2962,14 +2960,14 @@ snapshots: '@types/unist@2.0.11': {} - '@typescript-eslint/eslint-plugin@8.24.1(@typescript-eslint/parser@8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3)': + '@typescript-eslint/eslint-plugin@8.25.0(@typescript-eslint/parser@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) - '@typescript-eslint/scope-manager': 8.24.1 - '@typescript-eslint/type-utils': 8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) - '@typescript-eslint/utils': 8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) - '@typescript-eslint/visitor-keys': 8.24.1 + '@typescript-eslint/parser': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/scope-manager': 8.25.0 + '@typescript-eslint/type-utils': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/utils': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/visitor-keys': 8.25.0 eslint: 9.21.0(jiti@2.4.2) graphemer: 1.4.0 ignore: 5.3.2 @@ -2979,27 +2977,27 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3)': + '@typescript-eslint/parser@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3)': dependencies: - '@typescript-eslint/scope-manager': 8.24.1 - '@typescript-eslint/types': 8.24.1 - '@typescript-eslint/typescript-estree': 8.24.1(typescript@5.7.3) - '@typescript-eslint/visitor-keys': 8.24.1 + '@typescript-eslint/scope-manager': 8.25.0 + '@typescript-eslint/types': 8.25.0 + '@typescript-eslint/typescript-estree': 8.25.0(typescript@5.7.3) + '@typescript-eslint/visitor-keys': 8.25.0 debug: 4.4.0(supports-color@8.1.1) eslint: 9.21.0(jiti@2.4.2) typescript: 5.7.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@8.24.1': + '@typescript-eslint/scope-manager@8.25.0': dependencies: - '@typescript-eslint/types': 8.24.1 - '@typescript-eslint/visitor-keys': 8.24.1 + '@typescript-eslint/types': 8.25.0 + '@typescript-eslint/visitor-keys': 8.25.0 - '@typescript-eslint/type-utils@8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3)': + '@typescript-eslint/type-utils@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3)': dependencies: - '@typescript-eslint/typescript-estree': 8.24.1(typescript@5.7.3) - '@typescript-eslint/utils': 8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/typescript-estree': 8.25.0(typescript@5.7.3) + '@typescript-eslint/utils': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) debug: 4.4.0(supports-color@8.1.1) eslint: 9.21.0(jiti@2.4.2) ts-api-utils: 2.0.1(typescript@5.7.3) @@ -3007,12 +3005,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/types@8.24.1': {} + '@typescript-eslint/types@8.25.0': {} - '@typescript-eslint/typescript-estree@8.24.1(typescript@5.7.3)': + '@typescript-eslint/typescript-estree@8.25.0(typescript@5.7.3)': dependencies: - '@typescript-eslint/types': 8.24.1 - '@typescript-eslint/visitor-keys': 8.24.1 + '@typescript-eslint/types': 8.25.0 + '@typescript-eslint/visitor-keys': 8.25.0 debug: 4.4.0(supports-color@8.1.1) fast-glob: 3.3.2 is-glob: 4.0.3 @@ -3023,20 +3021,20 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3)': + '@typescript-eslint/utils@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3)': dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.21.0(jiti@2.4.2)) - '@typescript-eslint/scope-manager': 8.24.1 - '@typescript-eslint/types': 8.24.1 - '@typescript-eslint/typescript-estree': 8.24.1(typescript@5.7.3) + '@typescript-eslint/scope-manager': 8.25.0 + '@typescript-eslint/types': 8.25.0 + '@typescript-eslint/typescript-estree': 8.25.0(typescript@5.7.3) eslint: 9.21.0(jiti@2.4.2) typescript: 5.7.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/visitor-keys@8.24.1': + '@typescript-eslint/visitor-keys@8.25.0': dependencies: - '@typescript-eslint/types': 8.24.1 + '@typescript-eslint/types': 8.25.0 eslint-visitor-keys: 4.2.0 '@unocss/astro@66.0.0(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3))': @@ -3379,9 +3377,9 @@ snapshots: dependencies: '@clack/prompts': 0.7.0 '@covector/apply': 0.10.0(mocha@10.8.2) - '@covector/assemble': 0.12.0(mocha@10.8.2) - '@covector/changelog': 0.12.0(mocha@10.8.2) - '@covector/command': 0.8.0(mocha@10.8.2) + '@covector/assemble': 0.12.0 + '@covector/changelog': 0.12.0 + '@covector/command': 0.8.0 '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) globby: 11.1.0 @@ -4270,11 +4268,11 @@ snapshots: type-fest@0.7.1: {} - typescript-eslint@8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3): + typescript-eslint@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3): dependencies: - '@typescript-eslint/eslint-plugin': 8.24.1(@typescript-eslint/parser@8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) - '@typescript-eslint/parser': 8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) - '@typescript-eslint/utils': 8.24.1(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/eslint-plugin': 8.25.0(@typescript-eslint/parser@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/parser': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/utils': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) eslint: 9.21.0(jiti@2.4.2) typescript: 5.7.3 transitivePeerDependencies: From abca2ebc0d1aa72d544b21f9e24b30c44b169e1b Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 27 Feb 2025 09:19:05 +0800 Subject: [PATCH 13/80] chore(deps): update tauri monorepo to v2.3.0 (v2) (#2465) * chore(deps): update tauri monorepo to v2.3.0 * Regenerate window-state api-iife --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Tony --- examples/api/package.json | 4 +- plugins/deep-link/examples/app/package.json | 4 +- .../examples/vanilla/package.json | 2 +- .../examples/AppSettingsManager/package.json | 2 +- .../websocket/examples/tauri-app/package.json | 2 +- plugins/window-state/api-iife.js | 2 +- pnpm-lock.yaml | 174 +++++++++--------- 7 files changed, 95 insertions(+), 95 deletions(-) diff --git a/examples/api/package.json b/examples/api/package.json index caa92ca8..7111b9ed 100644 --- a/examples/api/package.json +++ b/examples/api/package.json @@ -10,7 +10,7 @@ "tauri": "tauri" }, "dependencies": { - "@tauri-apps/api": "2.2.0", + "@tauri-apps/api": "2.3.0", "@tauri-apps/plugin-barcode-scanner": "^2.2.0", "@tauri-apps/plugin-biometric": "^2.2.0", "@tauri-apps/plugin-cli": "^2.2.0", @@ -35,7 +35,7 @@ "@iconify-json/codicon": "^1.2.6", "@iconify-json/ph": "^1.2.1", "@sveltejs/vite-plugin-svelte": "^5.0.1", - "@tauri-apps/cli": "2.2.7", + "@tauri-apps/cli": "2.3.0", "@unocss/extractor-svelte": "^66.0.0", "svelte": "^5.10.0", "unocss": "^66.0.0", diff --git a/plugins/deep-link/examples/app/package.json b/plugins/deep-link/examples/app/package.json index 8cd45fa1..66c3518c 100644 --- a/plugins/deep-link/examples/app/package.json +++ b/plugins/deep-link/examples/app/package.json @@ -10,11 +10,11 @@ "tauri": "tauri" }, "dependencies": { - "@tauri-apps/api": "2.2.0", + "@tauri-apps/api": "2.3.0", "@tauri-apps/plugin-deep-link": "2.2.0" }, "devDependencies": { - "@tauri-apps/cli": "2.2.7", + "@tauri-apps/cli": "2.3.0", "typescript": "^5.2.2", "vite": "^6.0.0" } diff --git a/plugins/single-instance/examples/vanilla/package.json b/plugins/single-instance/examples/vanilla/package.json index 16342f03..e7d8e477 100644 --- a/plugins/single-instance/examples/vanilla/package.json +++ b/plugins/single-instance/examples/vanilla/package.json @@ -9,6 +9,6 @@ "author": "", "license": "MIT", "devDependencies": { - "@tauri-apps/cli": "2.2.7" + "@tauri-apps/cli": "2.3.0" } } diff --git a/plugins/store/examples/AppSettingsManager/package.json b/plugins/store/examples/AppSettingsManager/package.json index 1a009f15..9694ed6c 100644 --- a/plugins/store/examples/AppSettingsManager/package.json +++ b/plugins/store/examples/AppSettingsManager/package.json @@ -8,7 +8,7 @@ "tauri": "tauri" }, "devDependencies": { - "@tauri-apps/cli": "2.2.7", + "@tauri-apps/cli": "2.3.0", "vite": "^6.0.0", "typescript": "^5.4.7" } diff --git a/plugins/websocket/examples/tauri-app/package.json b/plugins/websocket/examples/tauri-app/package.json index d58d9b6c..a6181daa 100644 --- a/plugins/websocket/examples/tauri-app/package.json +++ b/plugins/websocket/examples/tauri-app/package.json @@ -9,7 +9,7 @@ "preview": "vite preview" }, "devDependencies": { - "@tauri-apps/cli": "2.2.7", + "@tauri-apps/cli": "2.3.0", "typescript": "^5.3.3", "vite": "^6.0.0" }, diff --git a/plugins/window-state/api-iife.js b/plugins/window-state/api-iife.js index da0bf905..d8f04c60 100644 --- a/plugins/window-state/api-iife.js +++ b/plugins/window-state/api-iife.js @@ -1 +1 @@ -if("__TAURI__"in window){var __TAURI_PLUGIN_WINDOW_STATE__=function(e){"use strict";var t;"function"==typeof SuppressedError&&SuppressedError;const i="__TAURI_TO_IPC_KEY__";function n(e,t=!1){return window.__TAURI_INTERNALS__.transformCallback(e,t)}async function a(e,t={},i){return window.__TAURI_INTERNALS__.invoke(e,t,i)}class l{get rid(){return function(e,t,i,n){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===i?n:"a"===i?n.call(e):n?n.value:t.get(e)}(this,t,"f")}constructor(e){t.set(this,void 0),function(e,t,i){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");t.set(e,i)}(this,t,e)}async close(){return a("plugin:resources|close",{rid:this.rid})}}t=new WeakMap;class s{constructor(...e){this.type="Logical",1===e.length?"Logical"in e[0]?(this.width=e[0].Logical.width,this.height=e[0].Logical.height):(this.width=e[0].width,this.height=e[0].height):(this.width=e[0],this.height=e[1])}toPhysical(e){return new r(this.width*e,this.height*e)}[i](){return{width:this.width,height:this.height}}toJSON(){return this[i]()}}class r{constructor(...e){this.type="Physical",1===e.length?"Physical"in e[0]?(this.width=e[0].Physical.width,this.height=e[0].Physical.height):(this.width=e[0].width,this.height=e[0].height):(this.width=e[0],this.height=e[1])}toLogical(e){return new s(this.width/e,this.height/e)}[i](){return{width:this.width,height:this.height}}toJSON(){return this[i]()}}class o{constructor(e){this.size=e}toLogical(e){return this.size instanceof s?this.size:this.size.toLogical(e)}toPhysical(e){return this.size instanceof r?this.size:this.size.toPhysical(e)}[i](){return{[`${this.size.type}`]:{width:this.size.width,height:this.size.height}}}toJSON(){return this[i]()}}class u{constructor(...e){this.type="Logical",1===e.length?"Logical"in e[0]?(this.x=e[0].Logical.x,this.y=e[0].Logical.y):(this.x=e[0].x,this.y=e[0].y):(this.x=e[0],this.y=e[1])}toPhysical(e){return new c(this.x*e,this.y*e)}[i](){return{x:this.x,y:this.y}}toJSON(){return this[i]()}}class c{constructor(...e){this.type="Physical",1===e.length?"Physical"in e[0]?(this.x=e[0].Physical.x,this.y=e[0].Physical.y):(this.x=e[0].x,this.y=e[0].y):(this.x=e[0],this.y=e[1])}toLogical(e){return new u(this.x/e,this.y/e)}[i](){return{x:this.x,y:this.y}}toJSON(){return this[i]()}}class h{constructor(e){this.position=e}toLogical(e){return this.position instanceof u?this.position:this.position.toLogical(e)}toPhysical(e){return this.position instanceof c?this.position:this.position.toPhysical(e)}[i](){return{[`${this.position.type}`]:{x:this.position.x,y:this.position.y}}}toJSON(){return this[i]()}}var d,w,b;async function g(e,t){await a("plugin:event|unlisten",{event:e,eventId:t})}async function y(e,t,i){var l;const s="string"==typeof(null==i?void 0:i.target)?{kind:"AnyLabel",label:i.target}:null!==(l=null==i?void 0:i.target)&&void 0!==l?l:{kind:"Any"};return a("plugin:event|listen",{event:e,target:s,handler:n(t)}).then((t=>async()=>g(e,t)))}!function(e){e.WINDOW_RESIZED="tauri://resize",e.WINDOW_MOVED="tauri://move",e.WINDOW_CLOSE_REQUESTED="tauri://close-requested",e.WINDOW_DESTROYED="tauri://destroyed",e.WINDOW_FOCUS="tauri://focus",e.WINDOW_BLUR="tauri://blur",e.WINDOW_SCALE_FACTOR_CHANGED="tauri://scale-change",e.WINDOW_THEME_CHANGED="tauri://theme-changed",e.WINDOW_CREATED="tauri://window-created",e.WEBVIEW_CREATED="tauri://webview-created",e.DRAG_ENTER="tauri://drag-enter",e.DRAG_OVER="tauri://drag-over",e.DRAG_DROP="tauri://drag-drop",e.DRAG_LEAVE="tauri://drag-leave"}(d||(d={}));class p extends l{constructor(e){super(e)}static async new(e,t,i){return a("plugin:image|new",{rgba:_(e),width:t,height:i}).then((e=>new p(e)))}static async fromBytes(e){return a("plugin:image|from_bytes",{bytes:_(e)}).then((e=>new p(e)))}static async fromPath(e){return a("plugin:image|from_path",{path:e}).then((e=>new p(e)))}async rgba(){return a("plugin:image|rgba",{rid:this.rid}).then((e=>new Uint8Array(e)))}async size(){return a("plugin:image|size",{rid:this.rid})}}function _(e){return null==e?null:"string"==typeof e?e:e instanceof p?e.rid:e}!function(e){e[e.Critical=1]="Critical",e[e.Informational=2]="Informational"}(w||(w={}));class v{constructor(e){this._preventDefault=!1,this.event=e.event,this.id=e.id}preventDefault(){this._preventDefault=!0}isPreventDefault(){return this._preventDefault}}function f(){return new D(window.__TAURI_INTERNALS__.metadata.currentWindow.label,{skip:!0})}async function m(){return a("plugin:window|get_all_windows").then((e=>e.map((e=>new D(e,{skip:!0})))))}!function(e){e.None="none",e.Normal="normal",e.Indeterminate="indeterminate",e.Paused="paused",e.Error="error"}(b||(b={}));const E=["tauri://created","tauri://error"];class D{constructor(e,t={}){var i;this.label=e,this.listeners=Object.create(null),(null==t?void 0:t.skip)||a("plugin:window|create",{options:{...t,parent:"string"==typeof t.parent?t.parent:null===(i=t.parent)||void 0===i?void 0:i.label,label:e}}).then((async()=>this.emit("tauri://created"))).catch((async e=>this.emit("tauri://error",e)))}static async getByLabel(e){var t;return null!==(t=(await m()).find((t=>t.label===e)))&&void 0!==t?t:null}static getCurrent(){return f()}static async getAll(){return m()}static async getFocusedWindow(){for(const e of await m())if(await e.isFocused())return e;return null}async listen(e,t){return this._handleTauriEvent(e,t)?()=>{const i=this.listeners[e];i.splice(i.indexOf(t),1)}:y(e,t,{target:{kind:"Window",label:this.label}})}async once(e,t){return this._handleTauriEvent(e,t)?()=>{const i=this.listeners[e];i.splice(i.indexOf(t),1)}:async function(e,t,i){return y(e,(i=>{g(e,i.id),t(i)}),i)}(e,t,{target:{kind:"Window",label:this.label}})}async emit(e,t){if(!E.includes(e))return async function(e,t){await a("plugin:event|emit",{event:e,payload:t})}(e,t);for(const i of this.listeners[e]||[])i({event:e,id:-1,payload:t})}async emitTo(e,t,i){if(!E.includes(t))return async function(e,t,i){const n="string"==typeof e?{kind:"AnyLabel",label:e}:e;await a("plugin:event|emit_to",{target:n,event:t,payload:i})}(e,t,i);for(const e of this.listeners[t]||[])e({event:t,id:-1,payload:i})}_handleTauriEvent(e,t){return!!E.includes(e)&&(e in this.listeners?this.listeners[e].push(t):this.listeners[e]=[t],!0)}async scaleFactor(){return a("plugin:window|scale_factor",{label:this.label})}async innerPosition(){return a("plugin:window|inner_position",{label:this.label}).then((e=>new c(e)))}async outerPosition(){return a("plugin:window|outer_position",{label:this.label}).then((e=>new c(e)))}async innerSize(){return a("plugin:window|inner_size",{label:this.label}).then((e=>new r(e)))}async outerSize(){return a("plugin:window|outer_size",{label:this.label}).then((e=>new r(e)))}async isFullscreen(){return a("plugin:window|is_fullscreen",{label:this.label})}async isMinimized(){return a("plugin:window|is_minimized",{label:this.label})}async isMaximized(){return a("plugin:window|is_maximized",{label:this.label})}async isFocused(){return a("plugin:window|is_focused",{label:this.label})}async isDecorated(){return a("plugin:window|is_decorated",{label:this.label})}async isResizable(){return a("plugin:window|is_resizable",{label:this.label})}async isMaximizable(){return a("plugin:window|is_maximizable",{label:this.label})}async isMinimizable(){return a("plugin:window|is_minimizable",{label:this.label})}async isClosable(){return a("plugin:window|is_closable",{label:this.label})}async isVisible(){return a("plugin:window|is_visible",{label:this.label})}async title(){return a("plugin:window|title",{label:this.label})}async theme(){return a("plugin:window|theme",{label:this.label})}async center(){return a("plugin:window|center",{label:this.label})}async requestUserAttention(e){let t=null;return e&&(t=e===w.Critical?{type:"Critical"}:{type:"Informational"}),a("plugin:window|request_user_attention",{label:this.label,value:t})}async setResizable(e){return a("plugin:window|set_resizable",{label:this.label,value:e})}async setEnabled(e){return a("plugin:window|set_enabled",{label:this.label,value:e})}async isEnabled(){return a("plugin:window|is_enabled",{label:this.label})}async setMaximizable(e){return a("plugin:window|set_maximizable",{label:this.label,value:e})}async setMinimizable(e){return a("plugin:window|set_minimizable",{label:this.label,value:e})}async setClosable(e){return a("plugin:window|set_closable",{label:this.label,value:e})}async setTitle(e){return a("plugin:window|set_title",{label:this.label,value:e})}async maximize(){return a("plugin:window|maximize",{label:this.label})}async unmaximize(){return a("plugin:window|unmaximize",{label:this.label})}async toggleMaximize(){return a("plugin:window|toggle_maximize",{label:this.label})}async minimize(){return a("plugin:window|minimize",{label:this.label})}async unminimize(){return a("plugin:window|unminimize",{label:this.label})}async show(){return a("plugin:window|show",{label:this.label})}async hide(){return a("plugin:window|hide",{label:this.label})}async close(){return a("plugin:window|close",{label:this.label})}async destroy(){return a("plugin:window|destroy",{label:this.label})}async setDecorations(e){return a("plugin:window|set_decorations",{label:this.label,value:e})}async setShadow(e){return a("plugin:window|set_shadow",{label:this.label,value:e})}async setEffects(e){return a("plugin:window|set_effects",{label:this.label,value:e})}async clearEffects(){return a("plugin:window|set_effects",{label:this.label,value:null})}async setAlwaysOnTop(e){return a("plugin:window|set_always_on_top",{label:this.label,value:e})}async setAlwaysOnBottom(e){return a("plugin:window|set_always_on_bottom",{label:this.label,value:e})}async setContentProtected(e){return a("plugin:window|set_content_protected",{label:this.label,value:e})}async setSize(e){return a("plugin:window|set_size",{label:this.label,value:e instanceof o?e:new o(e)})}async setMinSize(e){return a("plugin:window|set_min_size",{label:this.label,value:e instanceof o?e:e?new o(e):null})}async setMaxSize(e){return a("plugin:window|set_max_size",{label:this.label,value:e instanceof o?e:e?new o(e):null})}async setSizeConstraints(e){function t(e){return e?{Logical:e}:null}return a("plugin:window|set_size_constraints",{label:this.label,value:{minWidth:t(null==e?void 0:e.minWidth),minHeight:t(null==e?void 0:e.minHeight),maxWidth:t(null==e?void 0:e.maxWidth),maxHeight:t(null==e?void 0:e.maxHeight)}})}async setPosition(e){return a("plugin:window|set_position",{label:this.label,value:e instanceof h?e:new h(e)})}async setFullscreen(e){return a("plugin:window|set_fullscreen",{label:this.label,value:e})}async setFocus(){return a("plugin:window|set_focus",{label:this.label})}async setIcon(e){return a("plugin:window|set_icon",{label:this.label,value:_(e)})}async setSkipTaskbar(e){return a("plugin:window|set_skip_taskbar",{label:this.label,value:e})}async setCursorGrab(e){return a("plugin:window|set_cursor_grab",{label:this.label,value:e})}async setCursorVisible(e){return a("plugin:window|set_cursor_visible",{label:this.label,value:e})}async setCursorIcon(e){return a("plugin:window|set_cursor_icon",{label:this.label,value:e})}async setBackgroundColor(e){return a("plugin:window|set_background_color",{color:e})}async setCursorPosition(e){return a("plugin:window|set_cursor_position",{label:this.label,value:e instanceof h?e:new h(e)})}async setIgnoreCursorEvents(e){return a("plugin:window|set_ignore_cursor_events",{label:this.label,value:e})}async startDragging(){return a("plugin:window|start_dragging",{label:this.label})}async startResizeDragging(e){return a("plugin:window|start_resize_dragging",{label:this.label,value:e})}async setBadgeCount(e){return a("plugin:window|set_badge_count",{label:this.label,value:e})}async setBadgeLabel(e){return a("plugin:window|set_badge_label",{label:this.label,value:e})}async setOverlayIcon(e){return a("plugin:window|set_overlay_icon",{label:this.label,value:e?_(e):void 0})}async setProgressBar(e){return a("plugin:window|set_progress_bar",{label:this.label,value:e})}async setVisibleOnAllWorkspaces(e){return a("plugin:window|set_visible_on_all_workspaces",{label:this.label,value:e})}async setTitleBarStyle(e){return a("plugin:window|set_title_bar_style",{label:this.label,value:e})}async setTheme(e){return a("plugin:window|set_theme",{label:this.label,value:e})}async onResized(e){return this.listen(d.WINDOW_RESIZED,(t=>{t.payload=new r(t.payload),e(t)}))}async onMoved(e){return this.listen(d.WINDOW_MOVED,(t=>{t.payload=new c(t.payload),e(t)}))}async onCloseRequested(e){return this.listen(d.WINDOW_CLOSE_REQUESTED,(async t=>{const i=new v(t);await e(i),i.isPreventDefault()||await this.destroy()}))}async onDragDropEvent(e){const t=await this.listen(d.DRAG_ENTER,(t=>{e({...t,payload:{type:"enter",paths:t.payload.paths,position:new c(t.payload.position)}})})),i=await this.listen(d.DRAG_OVER,(t=>{e({...t,payload:{type:"over",position:new c(t.payload.position)}})})),n=await this.listen(d.DRAG_DROP,(t=>{e({...t,payload:{type:"drop",paths:t.payload.paths,position:new c(t.payload.position)}})})),a=await this.listen(d.DRAG_LEAVE,(t=>{e({...t,payload:{type:"leave"}})}));return()=>{t(),n(),i(),a()}}async onFocusChanged(e){const t=await this.listen(d.WINDOW_FOCUS,(t=>{e({...t,payload:!0})})),i=await this.listen(d.WINDOW_BLUR,(t=>{e({...t,payload:!1})}));return()=>{t(),i()}}async onScaleChanged(e){return this.listen(d.WINDOW_SCALE_FACTOR_CHANGED,e)}async onThemeChanged(e){return this.listen(d.WINDOW_THEME_CHANGED,e)}}var I,S,W;async function z(e,t){await a("plugin:window-state|restore_state",{label:e,flags:t})}return function(e){e.AppearanceBased="appearanceBased",e.Light="light",e.Dark="dark",e.MediumLight="mediumLight",e.UltraDark="ultraDark",e.Titlebar="titlebar",e.Selection="selection",e.Menu="menu",e.Popover="popover",e.Sidebar="sidebar",e.HeaderView="headerView",e.Sheet="sheet",e.WindowBackground="windowBackground",e.HudWindow="hudWindow",e.FullScreenUI="fullScreenUI",e.Tooltip="tooltip",e.ContentBackground="contentBackground",e.UnderWindowBackground="underWindowBackground",e.UnderPageBackground="underPageBackground",e.Mica="mica",e.Blur="blur",e.Acrylic="acrylic",e.Tabbed="tabbed",e.TabbedDark="tabbedDark",e.TabbedLight="tabbedLight"}(I||(I={})),function(e){e.FollowsWindowActiveState="followsWindowActiveState",e.Active="active",e.Inactive="inactive"}(S||(S={})),e.StateFlags=void 0,(W=e.StateFlags||(e.StateFlags={}))[W.SIZE=1]="SIZE",W[W.POSITION=2]="POSITION",W[W.MAXIMIZED=4]="MAXIMIZED",W[W.VISIBLE=8]="VISIBLE",W[W.DECORATIONS=16]="DECORATIONS",W[W.FULLSCREEN=32]="FULLSCREEN",W[W.ALL=63]="ALL",e.filename=async function(){return await a("plugin:window-state|filename")},e.restoreState=z,e.restoreStateCurrent=async function(e){await z(f().label,e)},e.saveWindowState=async function(e){await a("plugin:window-state|save_window_state",{flags:e})},e}({});Object.defineProperty(window.__TAURI__,"windowState",{value:__TAURI_PLUGIN_WINDOW_STATE__})} +if("__TAURI__"in window){var __TAURI_PLUGIN_WINDOW_STATE__=function(e){"use strict";var t;"function"==typeof SuppressedError&&SuppressedError;const i="__TAURI_TO_IPC_KEY__";function n(e,t=!1){return window.__TAURI_INTERNALS__.transformCallback(e,t)}async function a(e,t={},i){return window.__TAURI_INTERNALS__.invoke(e,t,i)}class s{get rid(){return function(e,t,i,n){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===i?n:"a"===i?n.call(e):n?n.value:t.get(e)}(this,t,"f")}constructor(e){t.set(this,void 0),function(e,t,i){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");t.set(e,i)}(this,t,e)}async close(){return a("plugin:resources|close",{rid:this.rid})}}t=new WeakMap;class l{constructor(...e){this.type="Logical",1===e.length?"Logical"in e[0]?(this.width=e[0].Logical.width,this.height=e[0].Logical.height):(this.width=e[0].width,this.height=e[0].height):(this.width=e[0],this.height=e[1])}toPhysical(e){return new r(this.width*e,this.height*e)}[i](){return{width:this.width,height:this.height}}toJSON(){return this[i]()}}class r{constructor(...e){this.type="Physical",1===e.length?"Physical"in e[0]?(this.width=e[0].Physical.width,this.height=e[0].Physical.height):(this.width=e[0].width,this.height=e[0].height):(this.width=e[0],this.height=e[1])}toLogical(e){return new l(this.width/e,this.height/e)}[i](){return{width:this.width,height:this.height}}toJSON(){return this[i]()}}class o{constructor(e){this.size=e}toLogical(e){return this.size instanceof l?this.size:this.size.toLogical(e)}toPhysical(e){return this.size instanceof r?this.size:this.size.toPhysical(e)}[i](){return{[`${this.size.type}`]:{width:this.size.width,height:this.size.height}}}toJSON(){return this[i]()}}class u{constructor(...e){this.type="Logical",1===e.length?"Logical"in e[0]?(this.x=e[0].Logical.x,this.y=e[0].Logical.y):(this.x=e[0].x,this.y=e[0].y):(this.x=e[0],this.y=e[1])}toPhysical(e){return new c(this.x*e,this.y*e)}[i](){return{x:this.x,y:this.y}}toJSON(){return this[i]()}}class c{constructor(...e){this.type="Physical",1===e.length?"Physical"in e[0]?(this.x=e[0].Physical.x,this.y=e[0].Physical.y):(this.x=e[0].x,this.y=e[0].y):(this.x=e[0],this.y=e[1])}toLogical(e){return new u(this.x/e,this.y/e)}[i](){return{x:this.x,y:this.y}}toJSON(){return this[i]()}}class h{constructor(e){this.position=e}toLogical(e){return this.position instanceof u?this.position:this.position.toLogical(e)}toPhysical(e){return this.position instanceof c?this.position:this.position.toPhysical(e)}[i](){return{[`${this.position.type}`]:{x:this.position.x,y:this.position.y}}}toJSON(){return this[i]()}}var d,w,b;async function g(e,t){await a("plugin:event|unlisten",{event:e,eventId:t})}async function y(e,t,i){var s;const l="string"==typeof(null==i?void 0:i.target)?{kind:"AnyLabel",label:i.target}:null!==(s=null==i?void 0:i.target)&&void 0!==s?s:{kind:"Any"};return a("plugin:event|listen",{event:e,target:l,handler:n(t)}).then((t=>async()=>g(e,t)))}!function(e){e.WINDOW_RESIZED="tauri://resize",e.WINDOW_MOVED="tauri://move",e.WINDOW_CLOSE_REQUESTED="tauri://close-requested",e.WINDOW_DESTROYED="tauri://destroyed",e.WINDOW_FOCUS="tauri://focus",e.WINDOW_BLUR="tauri://blur",e.WINDOW_SCALE_FACTOR_CHANGED="tauri://scale-change",e.WINDOW_THEME_CHANGED="tauri://theme-changed",e.WINDOW_CREATED="tauri://window-created",e.WEBVIEW_CREATED="tauri://webview-created",e.DRAG_ENTER="tauri://drag-enter",e.DRAG_OVER="tauri://drag-over",e.DRAG_DROP="tauri://drag-drop",e.DRAG_LEAVE="tauri://drag-leave"}(d||(d={}));class p extends s{constructor(e){super(e)}static async new(e,t,i){return a("plugin:image|new",{rgba:_(e),width:t,height:i}).then((e=>new p(e)))}static async fromBytes(e){return a("plugin:image|from_bytes",{bytes:_(e)}).then((e=>new p(e)))}static async fromPath(e){return a("plugin:image|from_path",{path:e}).then((e=>new p(e)))}async rgba(){return a("plugin:image|rgba",{rid:this.rid}).then((e=>new Uint8Array(e)))}async size(){return a("plugin:image|size",{rid:this.rid})}}function _(e){return null==e?null:"string"==typeof e?e:e instanceof p?e.rid:e}!function(e){e[e.Critical=1]="Critical",e[e.Informational=2]="Informational"}(w||(w={}));class v{constructor(e){this._preventDefault=!1,this.event=e.event,this.id=e.id}preventDefault(){this._preventDefault=!0}isPreventDefault(){return this._preventDefault}}function f(){return new D(window.__TAURI_INTERNALS__.metadata.currentWindow.label,{skip:!0})}async function m(){return a("plugin:window|get_all_windows").then((e=>e.map((e=>new D(e,{skip:!0})))))}!function(e){e.None="none",e.Normal="normal",e.Indeterminate="indeterminate",e.Paused="paused",e.Error="error"}(b||(b={}));const E=["tauri://created","tauri://error"];class D{constructor(e,t={}){var i;this.label=e,this.listeners=Object.create(null),(null==t?void 0:t.skip)||a("plugin:window|create",{options:{...t,parent:"string"==typeof t.parent?t.parent:null===(i=t.parent)||void 0===i?void 0:i.label,label:e}}).then((async()=>this.emit("tauri://created"))).catch((async e=>this.emit("tauri://error",e)))}static async getByLabel(e){var t;return null!==(t=(await m()).find((t=>t.label===e)))&&void 0!==t?t:null}static getCurrent(){return f()}static async getAll(){return m()}static async getFocusedWindow(){for(const e of await m())if(await e.isFocused())return e;return null}async listen(e,t){return this._handleTauriEvent(e,t)?()=>{const i=this.listeners[e];i.splice(i.indexOf(t),1)}:y(e,t,{target:{kind:"Window",label:this.label}})}async once(e,t){return this._handleTauriEvent(e,t)?()=>{const i=this.listeners[e];i.splice(i.indexOf(t),1)}:async function(e,t,i){return y(e,(i=>{g(e,i.id),t(i)}),i)}(e,t,{target:{kind:"Window",label:this.label}})}async emit(e,t){if(!E.includes(e))return async function(e,t){await a("plugin:event|emit",{event:e,payload:t})}(e,t);for(const i of this.listeners[e]||[])i({event:e,id:-1,payload:t})}async emitTo(e,t,i){if(!E.includes(t))return async function(e,t,i){const n="string"==typeof e?{kind:"AnyLabel",label:e}:e;await a("plugin:event|emit_to",{target:n,event:t,payload:i})}(e,t,i);for(const e of this.listeners[t]||[])e({event:t,id:-1,payload:i})}_handleTauriEvent(e,t){return!!E.includes(e)&&(e in this.listeners?this.listeners[e].push(t):this.listeners[e]=[t],!0)}async scaleFactor(){return a("plugin:window|scale_factor",{label:this.label})}async innerPosition(){return a("plugin:window|inner_position",{label:this.label}).then((e=>new c(e)))}async outerPosition(){return a("plugin:window|outer_position",{label:this.label}).then((e=>new c(e)))}async innerSize(){return a("plugin:window|inner_size",{label:this.label}).then((e=>new r(e)))}async outerSize(){return a("plugin:window|outer_size",{label:this.label}).then((e=>new r(e)))}async isFullscreen(){return a("plugin:window|is_fullscreen",{label:this.label})}async isMinimized(){return a("plugin:window|is_minimized",{label:this.label})}async isMaximized(){return a("plugin:window|is_maximized",{label:this.label})}async isFocused(){return a("plugin:window|is_focused",{label:this.label})}async isDecorated(){return a("plugin:window|is_decorated",{label:this.label})}async isResizable(){return a("plugin:window|is_resizable",{label:this.label})}async isMaximizable(){return a("plugin:window|is_maximizable",{label:this.label})}async isMinimizable(){return a("plugin:window|is_minimizable",{label:this.label})}async isClosable(){return a("plugin:window|is_closable",{label:this.label})}async isVisible(){return a("plugin:window|is_visible",{label:this.label})}async title(){return a("plugin:window|title",{label:this.label})}async theme(){return a("plugin:window|theme",{label:this.label})}async center(){return a("plugin:window|center",{label:this.label})}async requestUserAttention(e){let t=null;return e&&(t=e===w.Critical?{type:"Critical"}:{type:"Informational"}),a("plugin:window|request_user_attention",{label:this.label,value:t})}async setResizable(e){return a("plugin:window|set_resizable",{label:this.label,value:e})}async setEnabled(e){return a("plugin:window|set_enabled",{label:this.label,value:e})}async isEnabled(){return a("plugin:window|is_enabled",{label:this.label})}async setMaximizable(e){return a("plugin:window|set_maximizable",{label:this.label,value:e})}async setMinimizable(e){return a("plugin:window|set_minimizable",{label:this.label,value:e})}async setClosable(e){return a("plugin:window|set_closable",{label:this.label,value:e})}async setTitle(e){return a("plugin:window|set_title",{label:this.label,value:e})}async maximize(){return a("plugin:window|maximize",{label:this.label})}async unmaximize(){return a("plugin:window|unmaximize",{label:this.label})}async toggleMaximize(){return a("plugin:window|toggle_maximize",{label:this.label})}async minimize(){return a("plugin:window|minimize",{label:this.label})}async unminimize(){return a("plugin:window|unminimize",{label:this.label})}async show(){return a("plugin:window|show",{label:this.label})}async hide(){return a("plugin:window|hide",{label:this.label})}async close(){return a("plugin:window|close",{label:this.label})}async destroy(){return a("plugin:window|destroy",{label:this.label})}async setDecorations(e){return a("plugin:window|set_decorations",{label:this.label,value:e})}async setShadow(e){return a("plugin:window|set_shadow",{label:this.label,value:e})}async setEffects(e){return a("plugin:window|set_effects",{label:this.label,value:e})}async clearEffects(){return a("plugin:window|set_effects",{label:this.label,value:null})}async setAlwaysOnTop(e){return a("plugin:window|set_always_on_top",{label:this.label,value:e})}async setAlwaysOnBottom(e){return a("plugin:window|set_always_on_bottom",{label:this.label,value:e})}async setContentProtected(e){return a("plugin:window|set_content_protected",{label:this.label,value:e})}async setSize(e){return a("plugin:window|set_size",{label:this.label,value:e instanceof o?e:new o(e)})}async setMinSize(e){return a("plugin:window|set_min_size",{label:this.label,value:e instanceof o?e:e?new o(e):null})}async setMaxSize(e){return a("plugin:window|set_max_size",{label:this.label,value:e instanceof o?e:e?new o(e):null})}async setSizeConstraints(e){function t(e){return e?{Logical:e}:null}return a("plugin:window|set_size_constraints",{label:this.label,value:{minWidth:t(null==e?void 0:e.minWidth),minHeight:t(null==e?void 0:e.minHeight),maxWidth:t(null==e?void 0:e.maxWidth),maxHeight:t(null==e?void 0:e.maxHeight)}})}async setPosition(e){return a("plugin:window|set_position",{label:this.label,value:e instanceof h?e:new h(e)})}async setFullscreen(e){return a("plugin:window|set_fullscreen",{label:this.label,value:e})}async setFocus(){return a("plugin:window|set_focus",{label:this.label})}async setIcon(e){return a("plugin:window|set_icon",{label:this.label,value:_(e)})}async setSkipTaskbar(e){return a("plugin:window|set_skip_taskbar",{label:this.label,value:e})}async setCursorGrab(e){return a("plugin:window|set_cursor_grab",{label:this.label,value:e})}async setCursorVisible(e){return a("plugin:window|set_cursor_visible",{label:this.label,value:e})}async setCursorIcon(e){return a("plugin:window|set_cursor_icon",{label:this.label,value:e})}async setBackgroundColor(e){return a("plugin:window|set_background_color",{color:e})}async setCursorPosition(e){return a("plugin:window|set_cursor_position",{label:this.label,value:e instanceof h?e:new h(e)})}async setIgnoreCursorEvents(e){return a("plugin:window|set_ignore_cursor_events",{label:this.label,value:e})}async startDragging(){return a("plugin:window|start_dragging",{label:this.label})}async startResizeDragging(e){return a("plugin:window|start_resize_dragging",{label:this.label,value:e})}async setBadgeCount(e){return a("plugin:window|set_badge_count",{label:this.label,value:e})}async setBadgeLabel(e){return a("plugin:window|set_badge_label",{label:this.label,value:e})}async setOverlayIcon(e){return a("plugin:window|set_overlay_icon",{label:this.label,value:e?_(e):void 0})}async setProgressBar(e){return a("plugin:window|set_progress_bar",{label:this.label,value:e})}async setVisibleOnAllWorkspaces(e){return a("plugin:window|set_visible_on_all_workspaces",{label:this.label,value:e})}async setTitleBarStyle(e){return a("plugin:window|set_title_bar_style",{label:this.label,value:e})}async setTheme(e){return a("plugin:window|set_theme",{label:this.label,value:e})}async onResized(e){return this.listen(d.WINDOW_RESIZED,(t=>{t.payload=new r(t.payload),e(t)}))}async onMoved(e){return this.listen(d.WINDOW_MOVED,(t=>{t.payload=new c(t.payload),e(t)}))}async onCloseRequested(e){return this.listen(d.WINDOW_CLOSE_REQUESTED,(async t=>{const i=new v(t);await e(i),i.isPreventDefault()||await this.destroy()}))}async onDragDropEvent(e){const t=await this.listen(d.DRAG_ENTER,(t=>{e({...t,payload:{type:"enter",paths:t.payload.paths,position:new c(t.payload.position)}})})),i=await this.listen(d.DRAG_OVER,(t=>{e({...t,payload:{type:"over",position:new c(t.payload.position)}})})),n=await this.listen(d.DRAG_DROP,(t=>{e({...t,payload:{type:"drop",paths:t.payload.paths,position:new c(t.payload.position)}})})),a=await this.listen(d.DRAG_LEAVE,(t=>{e({...t,payload:{type:"leave"}})}));return()=>{t(),n(),i(),a()}}async onFocusChanged(e){const t=await this.listen(d.WINDOW_FOCUS,(t=>{e({...t,payload:!0})})),i=await this.listen(d.WINDOW_BLUR,(t=>{e({...t,payload:!1})}));return()=>{t(),i()}}async onScaleChanged(e){return this.listen(d.WINDOW_SCALE_FACTOR_CHANGED,e)}async onThemeChanged(e){return this.listen(d.WINDOW_THEME_CHANGED,e)}}var I,S,W,z;async function O(e,t){await a("plugin:window-state|restore_state",{label:e,flags:t})}return function(e){e.Disabled="disabled",e.Throttle="throttle",e.Suspend="suspend"}(I||(I={})),function(e){e.AppearanceBased="appearanceBased",e.Light="light",e.Dark="dark",e.MediumLight="mediumLight",e.UltraDark="ultraDark",e.Titlebar="titlebar",e.Selection="selection",e.Menu="menu",e.Popover="popover",e.Sidebar="sidebar",e.HeaderView="headerView",e.Sheet="sheet",e.WindowBackground="windowBackground",e.HudWindow="hudWindow",e.FullScreenUI="fullScreenUI",e.Tooltip="tooltip",e.ContentBackground="contentBackground",e.UnderWindowBackground="underWindowBackground",e.UnderPageBackground="underPageBackground",e.Mica="mica",e.Blur="blur",e.Acrylic="acrylic",e.Tabbed="tabbed",e.TabbedDark="tabbedDark",e.TabbedLight="tabbedLight"}(S||(S={})),function(e){e.FollowsWindowActiveState="followsWindowActiveState",e.Active="active",e.Inactive="inactive"}(W||(W={})),e.StateFlags=void 0,(z=e.StateFlags||(e.StateFlags={}))[z.SIZE=1]="SIZE",z[z.POSITION=2]="POSITION",z[z.MAXIMIZED=4]="MAXIMIZED",z[z.VISIBLE=8]="VISIBLE",z[z.DECORATIONS=16]="DECORATIONS",z[z.FULLSCREEN=32]="FULLSCREEN",z[z.ALL=63]="ALL",e.filename=async function(){return await a("plugin:window-state|filename")},e.restoreState=O,e.restoreStateCurrent=async function(e){await O(f().label,e)},e.saveWindowState=async function(e){await a("plugin:window-state|save_window_state",{flags:e})},e}({});Object.defineProperty(window.__TAURI__,"windowState",{value:__TAURI_PLUGIN_WINDOW_STATE__})} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 692f6d33..99a9c3f9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -55,8 +55,8 @@ importers: examples/api: dependencies: '@tauri-apps/api': - specifier: 2.2.0 - version: 2.2.0 + specifier: 2.3.0 + version: 2.3.0 '@tauri-apps/plugin-barcode-scanner': specifier: ^2.2.0 version: link:../../plugins/barcode-scanner @@ -125,8 +125,8 @@ importers: specifier: ^5.0.1 version: 5.0.1(svelte@5.10.0)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2)) '@tauri-apps/cli': - specifier: 2.2.7 - version: 2.2.7 + specifier: 2.3.0 + version: 2.3.0 '@unocss/extractor-svelte': specifier: ^66.0.0 version: 66.0.0 @@ -144,50 +144,50 @@ importers: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/barcode-scanner: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/biometric: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/cli: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/clipboard-manager: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/deep-link: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/deep-link/examples/app: dependencies: '@tauri-apps/api': - specifier: 2.2.0 - version: 2.2.0 + specifier: 2.3.0 + version: 2.3.0 '@tauri-apps/plugin-deep-link': specifier: 2.2.0 version: link:../.. devDependencies: '@tauri-apps/cli': - specifier: 2.2.7 - version: 2.2.7 + specifier: 2.3.0 + version: 2.3.0 typescript: specifier: ^5.2.2 version: 5.7.3 @@ -199,109 +199,109 @@ importers: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/fs: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/geolocation: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/global-shortcut: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/haptics: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/http: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/log: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/nfc: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/notification: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/opener: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/os: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/positioner: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/process: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/shell: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/single-instance/examples/vanilla: devDependencies: '@tauri-apps/cli': - specifier: 2.2.7 - version: 2.2.7 + specifier: 2.3.0 + version: 2.3.0 plugins/sql: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/store: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/store/examples/AppSettingsManager: devDependencies: '@tauri-apps/cli': - specifier: 2.2.7 - version: 2.2.7 + specifier: 2.3.0 + version: 2.3.0 typescript: specifier: ^5.4.7 version: 5.7.3 @@ -313,25 +313,25 @@ importers: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/updater: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/upload: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/websocket: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 plugins/websocket/examples/tauri-app: dependencies: @@ -340,8 +340,8 @@ importers: version: link:../.. devDependencies: '@tauri-apps/cli': - specifier: 2.2.7 - version: 2.2.7 + specifier: 2.3.0 + version: 2.3.0 typescript: specifier: ^5.3.3 version: 5.7.3 @@ -353,7 +353,7 @@ importers: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.2.0 + version: 2.3.0 packages: @@ -990,71 +990,71 @@ packages: svelte: ^5.0.0 vite: ^6.0.0 - '@tauri-apps/api@2.2.0': - resolution: {integrity: sha512-R8epOeZl1eJEl603aUMIGb4RXlhPjpgxbGVEaqY+0G5JG9vzV/clNlzTeqc+NLYXVqXcn8mb4c5b9pJIUDEyAg==} + '@tauri-apps/api@2.3.0': + resolution: {integrity: sha512-33Z+0lX2wgZbx1SPFfqvzI6su63hCBkbzv+5NexeYjIx7WA9htdOKoRR7Dh3dJyltqS5/J8vQFyybiRoaL0hlA==} - '@tauri-apps/cli-darwin-arm64@2.2.7': - resolution: {integrity: sha512-54kcpxZ3X1Rq+pPTzk3iIcjEVY4yv493uRx/80rLoAA95vAC0c//31Whz75UVddDjJfZvXlXZ3uSZ+bnCOnt0A==} + '@tauri-apps/cli-darwin-arm64@2.3.0': + resolution: {integrity: sha512-VUbFezxCxSdVq8BTFZKDoVqf7jb9i928kLQ2cqYAe5TBM2Cg5IgMtJupbKMXtCwD+pOVcs6DqcPbhcmgPEFp0w==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] - '@tauri-apps/cli-darwin-x64@2.2.7': - resolution: {integrity: sha512-Vgu2XtBWemLnarB+6LqQeLanDlRj7CeFN//H8bVVdjbNzxcSxsvbLYMBP8+3boa7eBnjDrqMImRySSgL6IrwTw==} + '@tauri-apps/cli-darwin-x64@2.3.0': + resolution: {integrity: sha512-PZBH25qsou45+l+SCHaB+x7KKn/9/kItGTyIjgE3E0J3hJKb/zKkolHFE97XlR99CVJVvp6lM3f9ZJ8tZ+GJfA==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] - '@tauri-apps/cli-linux-arm-gnueabihf@2.2.7': - resolution: {integrity: sha512-+Clha2iQAiK9zoY/KKW0KLHkR0k36O78YLx5Sl98tWkwI3OBZFg5H5WT1plH/4sbZIS2aLFN6dw58/JlY9Bu/g==} + '@tauri-apps/cli-linux-arm-gnueabihf@2.3.0': + resolution: {integrity: sha512-3udhBTCJTlmTBFagqp2dXII6ckDvXvdP00erEt5IUVuFwNOrRHgHh8BGkR81MgGXEjpSzwKiE0LrmXsjLJ8+pA==} engines: {node: '>= 10'} cpu: [arm] os: [linux] - '@tauri-apps/cli-linux-arm64-gnu@2.2.7': - resolution: {integrity: sha512-Z/Lp4SQe6BUEOays9BQAEum2pvZF4w9igyXijP+WbkOejZx4cDvarFJ5qXrqSLmBh7vxrdZcLwoLk9U//+yQrg==} + '@tauri-apps/cli-linux-arm64-gnu@2.3.0': + resolution: {integrity: sha512-FddbVf/0aLnbDUJvKWWdREku174VVJkR2MW8QJMZMlZxeW8spL6YEeZD4OaMEdVzy+H5Xlc/CLerI8MF3I/bug==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@tauri-apps/cli-linux-arm64-musl@2.2.7': - resolution: {integrity: sha512-+8HZ+txff/Y3YjAh80XcLXcX8kpGXVdr1P8AfjLHxHdS6QD4Md+acSxGTTNbplmHuBaSHJvuTvZf9tU1eDCTDg==} + '@tauri-apps/cli-linux-arm64-musl@2.3.0': + resolution: {integrity: sha512-PZbNAartalTMPWmFsx+a+XrFN0FULpibvVNPmyCNuCnv7ZGVIZa+GGfS9NYN0XE43Mhq2/qYmxoLTTeBMSDzxQ==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@tauri-apps/cli-linux-x64-gnu@2.2.7': - resolution: {integrity: sha512-ahlSnuCnUntblp9dG7/w5ZWZOdzRFi3zl0oScgt7GF4KNAOEa7duADsxPA4/FT2hLRa0SvpqtD4IYFvCxoVv3Q==} + '@tauri-apps/cli-linux-x64-gnu@2.3.0': + resolution: {integrity: sha512-vgsXG/ZHK6z43Vkjr3bnYcsu6mvvK4WUu+S9ohqQO8PsZqsbwThy5ibn9Nb5OEYiEuVQgXye6YHS+uZSI54hkw==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@tauri-apps/cli-linux-x64-musl@2.2.7': - resolution: {integrity: sha512-+qKAWnJRSX+pjjRbKAQgTdFY8ecdcu8UdJ69i7wn3ZcRn2nMMzOO2LOMOTQV42B7/Q64D1pIpmZj9yblTMvadA==} + '@tauri-apps/cli-linux-x64-musl@2.3.0': + resolution: {integrity: sha512-Ba/ILQ9JknrFYVdc0YKB9br6n+OJBi2Ospc0/J75IC/dTsbkcPkhSbbCY531hUxOqk+hQi08/ZeSq1al3Yhk9A==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@tauri-apps/cli-win32-arm64-msvc@2.2.7': - resolution: {integrity: sha512-aa86nRnrwT04u9D9fhf5JVssuAZlUCCc8AjqQjqODQjMd4BMA2+d4K9qBMpEG/1kVh95vZaNsLogjEaqSTTw4A==} + '@tauri-apps/cli-win32-arm64-msvc@2.3.0': + resolution: {integrity: sha512-i3hrzUzx8UJAfOBgufh2ArUh20SgPe44+VhVcMAsPk/R5M8tPL/Ke9Z40nUZRuOrJbY9rGhXmf+0v65nD5GnRw==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] - '@tauri-apps/cli-win32-ia32-msvc@2.2.7': - resolution: {integrity: sha512-EiJ5/25tLSQOSGvv+t6o3ZBfOTKB5S3vb+hHQuKbfmKdRF0XQu2YPdIi1CQw1DU97ZAE0Dq4frvnyYEKWgMzVQ==} + '@tauri-apps/cli-win32-ia32-msvc@2.3.0': + resolution: {integrity: sha512-UEi/QzCdNVYPH43A/GufiWOb34HZpju9f4WjTTcT6frZIPnNy82WTGgOxWfsj2OIkroF0T+kRGbwua+JGnrnUg==} engines: {node: '>= 10'} cpu: [ia32] os: [win32] - '@tauri-apps/cli-win32-x64-msvc@2.2.7': - resolution: {integrity: sha512-ZB8Kw90j8Ld+9tCWyD2fWCYfIrzbQohJ4DJSidNwbnehlZzP7wAz6Z3xjsvUdKtQ3ibtfoeTqVInzCCEpI+pWg==} + '@tauri-apps/cli-win32-x64-msvc@2.3.0': + resolution: {integrity: sha512-QsNeaG123T2L2QWaEIZ9d65jwNQ5Uf+BmV3x7vEajbQHd/XBDJDL0Q21veMWIOjmMQHdtmFLJP0wamCLTkXZXQ==} engines: {node: '>= 10'} cpu: [x64] os: [win32] - '@tauri-apps/cli@2.2.7': - resolution: {integrity: sha512-ZnsS2B4BplwXP37celanNANiIy8TCYhvg5RT09n72uR/o+navFZtGpFSqljV8fy1Y4ixIPds8FrGSXJCN2BerA==} + '@tauri-apps/cli@2.3.0': + resolution: {integrity: sha512-OU0+bwIz10DgQMZZJ20NdU+x+K8PYob4tzB7nYCV6BbKWrUYINdGHAXlunzMP+hi63SClPDyVf8CYxwgznIfbw==} engines: {node: '>= 10'} hasBin: true @@ -2903,50 +2903,50 @@ snapshots: transitivePeerDependencies: - supports-color - '@tauri-apps/api@2.2.0': {} + '@tauri-apps/api@2.3.0': {} - '@tauri-apps/cli-darwin-arm64@2.2.7': + '@tauri-apps/cli-darwin-arm64@2.3.0': optional: true - '@tauri-apps/cli-darwin-x64@2.2.7': + '@tauri-apps/cli-darwin-x64@2.3.0': optional: true - '@tauri-apps/cli-linux-arm-gnueabihf@2.2.7': + '@tauri-apps/cli-linux-arm-gnueabihf@2.3.0': optional: true - '@tauri-apps/cli-linux-arm64-gnu@2.2.7': + '@tauri-apps/cli-linux-arm64-gnu@2.3.0': optional: true - '@tauri-apps/cli-linux-arm64-musl@2.2.7': + '@tauri-apps/cli-linux-arm64-musl@2.3.0': optional: true - '@tauri-apps/cli-linux-x64-gnu@2.2.7': + '@tauri-apps/cli-linux-x64-gnu@2.3.0': optional: true - '@tauri-apps/cli-linux-x64-musl@2.2.7': + '@tauri-apps/cli-linux-x64-musl@2.3.0': optional: true - '@tauri-apps/cli-win32-arm64-msvc@2.2.7': + '@tauri-apps/cli-win32-arm64-msvc@2.3.0': optional: true - '@tauri-apps/cli-win32-ia32-msvc@2.2.7': + '@tauri-apps/cli-win32-ia32-msvc@2.3.0': optional: true - '@tauri-apps/cli-win32-x64-msvc@2.2.7': + '@tauri-apps/cli-win32-x64-msvc@2.3.0': optional: true - '@tauri-apps/cli@2.2.7': + '@tauri-apps/cli@2.3.0': optionalDependencies: - '@tauri-apps/cli-darwin-arm64': 2.2.7 - '@tauri-apps/cli-darwin-x64': 2.2.7 - '@tauri-apps/cli-linux-arm-gnueabihf': 2.2.7 - '@tauri-apps/cli-linux-arm64-gnu': 2.2.7 - '@tauri-apps/cli-linux-arm64-musl': 2.2.7 - '@tauri-apps/cli-linux-x64-gnu': 2.2.7 - '@tauri-apps/cli-linux-x64-musl': 2.2.7 - '@tauri-apps/cli-win32-arm64-msvc': 2.2.7 - '@tauri-apps/cli-win32-ia32-msvc': 2.2.7 - '@tauri-apps/cli-win32-x64-msvc': 2.2.7 + '@tauri-apps/cli-darwin-arm64': 2.3.0 + '@tauri-apps/cli-darwin-x64': 2.3.0 + '@tauri-apps/cli-linux-arm-gnueabihf': 2.3.0 + '@tauri-apps/cli-linux-arm64-gnu': 2.3.0 + '@tauri-apps/cli-linux-arm64-musl': 2.3.0 + '@tauri-apps/cli-linux-x64-gnu': 2.3.0 + '@tauri-apps/cli-linux-x64-musl': 2.3.0 + '@tauri-apps/cli-win32-arm64-msvc': 2.3.0 + '@tauri-apps/cli-win32-ia32-msvc': 2.3.0 + '@tauri-apps/cli-win32-x64-msvc': 2.3.0 '@types/estree@1.0.6': {} From 7527a3465a9bbb96f80541760872f7068a7c92da Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 27 Feb 2025 09:32:33 +0800 Subject: [PATCH 14/80] chore(deps): update dependency eslint-config-prettier to v10.0.2 (#2463) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index c0ae19e1..a5edfeda 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "@rollup/plugin-typescript": "11.1.6", "covector": "^0.12.3", "eslint": "9.21.0", - "eslint-config-prettier": "10.0.1", + "eslint-config-prettier": "10.0.2", "eslint-plugin-security": "3.0.1", "prettier": "3.5.2", "rollup": "4.34.8", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 99a9c3f9..8d63b301 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -31,8 +31,8 @@ importers: specifier: 9.21.0 version: 9.21.0(jiti@2.4.2) eslint-config-prettier: - specifier: 10.0.1 - version: 10.0.1(eslint@9.21.0(jiti@2.4.2)) + specifier: 10.0.2 + version: 10.0.2(eslint@9.21.0(jiti@2.4.2)) eslint-plugin-security: specifier: 3.0.1 version: 3.0.1 @@ -1475,8 +1475,8 @@ packages: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} - eslint-config-prettier@10.0.1: - resolution: {integrity: sha512-lZBts941cyJyeaooiKxAtzoPHTN+GbQTJFAIdQbRhA4/8whaAraEh47Whw/ZFfrjNSnlAxqfm9i0XVAEkULjCw==} + eslint-config-prettier@10.0.2: + resolution: {integrity: sha512-1105/17ZIMjmCOJOPNfVdbXafLCLj3hPmkmB7dLgt7XsQ/zkxSuDerE/xgO3RxoHysR1N1whmquY0lSn2O0VLg==} hasBin: true peerDependencies: eslint: '>=7.0.0' @@ -3516,7 +3516,7 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-config-prettier@10.0.1(eslint@9.21.0(jiti@2.4.2)): + eslint-config-prettier@10.0.2(eslint@9.21.0(jiti@2.4.2)): dependencies: eslint: 9.21.0(jiti@2.4.2) From 39c022eea26abf912865967c7774117610e4d0b9 Mon Sep 17 00:00:00 2001 From: Tony <68118705+Legend-Master@users.noreply.github.com> Date: Thu, 27 Feb 2025 11:24:53 +0800 Subject: [PATCH 15/80] chore(deps): update js dependencies (#2467) * chore(deps): update js dependencies * Bump pnpm version in github actions --- .github/workflows/audit-javascript.yml | 2 +- .github/workflows/check-generated-files.yml | 2 +- .../workflows/covector-version-or-publish.yml | 2 +- .github/workflows/fmt.yml | 2 +- .github/workflows/lint-javascript.yml | 2 +- .github/workflows/sync.yml | 2 +- examples/api/package.json | 12 +- package.json | 16 +- plugins/deep-link/examples/app/package.json | 4 +- .../examples/AppSettingsManager/package.json | 4 +- .../websocket/examples/tauri-app/package.json | 4 +- pnpm-lock.yaml | 865 +++++++----------- shared/rollup.config.js | 8 +- 13 files changed, 343 insertions(+), 582 deletions(-) diff --git a/.github/workflows/audit-javascript.yml b/.github/workflows/audit-javascript.yml index 702811c2..f1a3ec3f 100644 --- a/.github/workflows/audit-javascript.yml +++ b/.github/workflows/audit-javascript.yml @@ -46,7 +46,7 @@ jobs: node-version: 'lts/*' - uses: pnpm/action-setup@v4 with: - version: 9.x.x + version: 10.x.x run_install: true - name: audit run: pnpm audit diff --git a/.github/workflows/check-generated-files.yml b/.github/workflows/check-generated-files.yml index d91cc2da..6a513b23 100644 --- a/.github/workflows/check-generated-files.yml +++ b/.github/workflows/check-generated-files.yml @@ -167,7 +167,7 @@ jobs: node-version: 'lts/*' - uses: pnpm/action-setup@v4 with: - version: 9.x.x + version: 10.x.x run_install: true - name: build api diff --git a/.github/workflows/covector-version-or-publish.yml b/.github/workflows/covector-version-or-publish.yml index 22e945af..80668b3b 100644 --- a/.github/workflows/covector-version-or-publish.yml +++ b/.github/workflows/covector-version-or-publish.yml @@ -39,7 +39,7 @@ jobs: - uses: pnpm/action-setup@v4 with: - version: 9.x.x + version: 10.x.x run_install: true - name: cargo login diff --git a/.github/workflows/fmt.yml b/.github/workflows/fmt.yml index bd378799..087b7674 100644 --- a/.github/workflows/fmt.yml +++ b/.github/workflows/fmt.yml @@ -38,7 +38,7 @@ jobs: node-version: 'lts/*' - uses: pnpm/action-setup@v4 with: - version: 9.x.x + version: 10.x.x run_install: true - run: pnpm format:check diff --git a/.github/workflows/lint-javascript.yml b/.github/workflows/lint-javascript.yml index df6b17d9..4c9db35e 100644 --- a/.github/workflows/lint-javascript.yml +++ b/.github/workflows/lint-javascript.yml @@ -49,7 +49,7 @@ jobs: node-version: 'lts/*' - uses: pnpm/action-setup@v4 with: - version: 9.x.x + version: 10.x.x run_install: true - name: eslint run: pnpm lint diff --git a/.github/workflows/sync.yml b/.github/workflows/sync.yml index 3b8e70db..6764cf8a 100644 --- a/.github/workflows/sync.yml +++ b/.github/workflows/sync.yml @@ -38,7 +38,7 @@ jobs: - uses: pnpm/action-setup@v4 with: - version: 9.x.x + version: 10.x.x run_install: true - name: Build packages diff --git a/examples/api/package.json b/examples/api/package.json index 7111b9ed..399d4147 100644 --- a/examples/api/package.json +++ b/examples/api/package.json @@ -19,11 +19,11 @@ "@tauri-apps/plugin-fs": "^2.2.0", "@tauri-apps/plugin-geolocation": "^2.2.0", "@tauri-apps/plugin-global-shortcut": "^2.2.0", - "@tauri-apps/plugin-opener": "^2.2.5", "@tauri-apps/plugin-haptics": "^2.2.0", "@tauri-apps/plugin-http": "^2.3.0", "@tauri-apps/plugin-nfc": "^2.2.0", "@tauri-apps/plugin-notification": "^2.2.1", + "@tauri-apps/plugin-opener": "^2.2.5", "@tauri-apps/plugin-os": "^2.2.0", "@tauri-apps/plugin-process": "^2.2.0", "@tauri-apps/plugin-shell": "^2.2.0", @@ -32,13 +32,13 @@ "@zerodevx/svelte-json-view": "1.0.11" }, "devDependencies": { - "@iconify-json/codicon": "^1.2.6", - "@iconify-json/ph": "^1.2.1", - "@sveltejs/vite-plugin-svelte": "^5.0.1", + "@iconify-json/codicon": "^1.2.12", + "@iconify-json/ph": "^1.2.2", + "@sveltejs/vite-plugin-svelte": "^5.0.3", "@tauri-apps/cli": "2.3.0", "@unocss/extractor-svelte": "^66.0.0", - "svelte": "^5.10.0", + "svelte": "^5.20.4", "unocss": "^66.0.0", - "vite": "^6.0.3" + "vite": "^6.2.0" } } diff --git a/package.json b/package.json index a5edfeda..eceb9332 100644 --- a/package.json +++ b/package.json @@ -14,8 +14,8 @@ "@eslint/js": "9.21.0", "@rollup/plugin-node-resolve": "16.0.0", "@rollup/plugin-terser": "0.4.4", - "@rollup/plugin-typescript": "11.1.6", - "covector": "^0.12.3", + "@rollup/plugin-typescript": "12.1.2", + "covector": "^0.12.4", "eslint": "9.21.0", "eslint-config-prettier": "10.0.2", "eslint-plugin-security": "3.0.1", @@ -25,11 +25,15 @@ "typescript": "5.7.3", "typescript-eslint": "8.25.0" }, - "resolutions": { - "semver": ">=7.5.2", - "optionator": ">=0.9.3" + "pnpm": { + "overrides": { + "esbuild@<0.25.0": ">=0.25.0" + }, + "onlyBuiltDependencies": [ + "esbuild" + ] }, "engines": { - "pnpm": "^9.0.0" + "pnpm": "^10.0.0" } } diff --git a/plugins/deep-link/examples/app/package.json b/plugins/deep-link/examples/app/package.json index 66c3518c..104dd948 100644 --- a/plugins/deep-link/examples/app/package.json +++ b/plugins/deep-link/examples/app/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@tauri-apps/cli": "2.3.0", - "typescript": "^5.2.2", - "vite": "^6.0.0" + "typescript": "^5.7.3", + "vite": "^6.2.0" } } diff --git a/plugins/store/examples/AppSettingsManager/package.json b/plugins/store/examples/AppSettingsManager/package.json index 9694ed6c..02fa4568 100644 --- a/plugins/store/examples/AppSettingsManager/package.json +++ b/plugins/store/examples/AppSettingsManager/package.json @@ -9,7 +9,7 @@ }, "devDependencies": { "@tauri-apps/cli": "2.3.0", - "vite": "^6.0.0", - "typescript": "^5.4.7" + "typescript": "^5.7.3", + "vite": "^6.2.0" } } diff --git a/plugins/websocket/examples/tauri-app/package.json b/plugins/websocket/examples/tauri-app/package.json index a6181daa..b91d14f4 100644 --- a/plugins/websocket/examples/tauri-app/package.json +++ b/plugins/websocket/examples/tauri-app/package.json @@ -10,8 +10,8 @@ }, "devDependencies": { "@tauri-apps/cli": "2.3.0", - "typescript": "^5.3.3", - "vite": "^6.0.0" + "typescript": "^5.7.3", + "vite": "^6.2.0" }, "dependencies": { "tauri-plugin-websocket-api": "link:..\\.." diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8d63b301..5fbe79ca 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -5,8 +5,7 @@ settings: excludeLinksFromLockfile: false overrides: - semver: '>=7.5.2' - optionator: '>=0.9.3' + esbuild@<0.25.0: '>=0.25.0' importers: @@ -22,11 +21,11 @@ importers: specifier: 0.4.4 version: 0.4.4(rollup@4.34.8) '@rollup/plugin-typescript': - specifier: 11.1.6 - version: 11.1.6(rollup@4.34.8)(tslib@2.8.1)(typescript@5.7.3) + specifier: 12.1.2 + version: 12.1.2(rollup@4.34.8)(tslib@2.8.1)(typescript@5.7.3) covector: - specifier: ^0.12.3 - version: 0.12.3(mocha@10.8.2) + specifier: ^0.12.4 + version: 0.12.4(mocha@10.8.2) eslint: specifier: 9.21.0 version: 9.21.0(jiti@2.4.2) @@ -113,17 +112,17 @@ importers: version: link:../../plugins/updater '@zerodevx/svelte-json-view': specifier: 1.0.11 - version: 1.0.11(svelte@5.10.0) + version: 1.0.11(svelte@5.20.4) devDependencies: '@iconify-json/codicon': - specifier: ^1.2.6 - version: 1.2.6 + specifier: ^1.2.12 + version: 1.2.12 '@iconify-json/ph': - specifier: ^1.2.1 - version: 1.2.1 + specifier: ^1.2.2 + version: 1.2.2 '@sveltejs/vite-plugin-svelte': - specifier: ^5.0.1 - version: 5.0.1(svelte@5.10.0)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2)) + specifier: ^5.0.3 + version: 5.0.3(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) '@tauri-apps/cli': specifier: 2.3.0 version: 2.3.0 @@ -131,14 +130,14 @@ importers: specifier: ^66.0.0 version: 66.0.0 svelte: - specifier: ^5.10.0 - version: 5.10.0 + specifier: ^5.20.4 + version: 5.20.4 unocss: specifier: ^66.0.0 - version: 66.0.0(postcss@8.5.1)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) + version: 66.0.0(postcss@8.5.3)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) vite: - specifier: ^6.0.3 - version: 6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2) + specifier: ^6.2.0 + version: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) plugins/autostart: dependencies: @@ -189,11 +188,11 @@ importers: specifier: 2.3.0 version: 2.3.0 typescript: - specifier: ^5.2.2 + specifier: ^5.7.3 version: 5.7.3 vite: - specifier: ^6.0.0 - version: 6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2) + specifier: ^6.2.0 + version: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) plugins/dialog: dependencies: @@ -303,11 +302,11 @@ importers: specifier: 2.3.0 version: 2.3.0 typescript: - specifier: ^5.4.7 + specifier: ^5.7.3 version: 5.7.3 vite: - specifier: ^6.0.0 - version: 6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2) + specifier: ^6.2.0 + version: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) plugins/stronghold: dependencies: @@ -343,11 +342,11 @@ importers: specifier: 2.3.0 version: 2.3.0 typescript: - specifier: ^5.3.3 + specifier: ^5.7.3 version: 5.7.3 vite: - specifier: ^6.0.0 - version: 6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2) + specifier: ^6.2.0 + version: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) plugins/window-state: dependencies: @@ -375,13 +374,13 @@ packages: resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} engines: {node: '>=6.9.0'} - '@babel/parser@7.26.5': - resolution: {integrity: sha512-SRJ4jYmXRqV1/Xc+TIVG84WjHBXKlxO9sHQnA2Pf12QQEAp1LOh6kDzNHXcUnbH1QI0FDoPPVOt+vyUDucxpaw==} + '@babel/parser@7.26.9': + resolution: {integrity: sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/types@7.26.5': - resolution: {integrity: sha512-L6mZmwFDK6Cjh1nRCLXpa6no13ZIioJDz7mdkzHv399pThrTa/k0nUlNaenOeh2kWu/iaOQYElEpKPUswUa9Vg==} + '@babel/types@7.26.9': + resolution: {integrity: sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==} engines: {node: '>=6.9.0'} '@chainsafe/abort-controller@3.0.1': @@ -444,296 +443,152 @@ packages: '@effection/subscription@2.0.6': resolution: {integrity: sha512-znTi75JFyC1S0YjyTtFEWNRQbhk01UxOapWELlIkZOwjGIEjcx6+G8y6n9JpZ8OGKmJQ0GBlRMZozsR5gcQvBg==} - '@esbuild/aix-ppc64@0.23.1': - resolution: {integrity: sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==} + '@esbuild/aix-ppc64@0.25.0': + resolution: {integrity: sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ==} engines: {node: '>=18'} cpu: [ppc64] os: [aix] - '@esbuild/aix-ppc64@0.24.2': - resolution: {integrity: sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [aix] - - '@esbuild/android-arm64@0.23.1': - resolution: {integrity: sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==} - engines: {node: '>=18'} - cpu: [arm64] - os: [android] - - '@esbuild/android-arm64@0.24.2': - resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==} + '@esbuild/android-arm64@0.25.0': + resolution: {integrity: sha512-grvv8WncGjDSyUBjN9yHXNt+cq0snxXbDxy5pJtzMKGmmpPxeAmAhWxXI+01lU5rwZomDgD3kJwulEnhTRUd6g==} engines: {node: '>=18'} cpu: [arm64] os: [android] - '@esbuild/android-arm@0.23.1': - resolution: {integrity: sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==} - engines: {node: '>=18'} - cpu: [arm] - os: [android] - - '@esbuild/android-arm@0.24.2': - resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==} + '@esbuild/android-arm@0.25.0': + resolution: {integrity: sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g==} engines: {node: '>=18'} cpu: [arm] os: [android] - '@esbuild/android-x64@0.23.1': - resolution: {integrity: sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==} - engines: {node: '>=18'} - cpu: [x64] - os: [android] - - '@esbuild/android-x64@0.24.2': - resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==} + '@esbuild/android-x64@0.25.0': + resolution: {integrity: sha512-m/ix7SfKG5buCnxasr52+LI78SQ+wgdENi9CqyCXwjVR2X4Jkz+BpC3le3AoBPYTC9NHklwngVXvbJ9/Akhrfg==} engines: {node: '>=18'} cpu: [x64] os: [android] - '@esbuild/darwin-arm64@0.23.1': - resolution: {integrity: sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==} - engines: {node: '>=18'} - cpu: [arm64] - os: [darwin] - - '@esbuild/darwin-arm64@0.24.2': - resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==} + '@esbuild/darwin-arm64@0.25.0': + resolution: {integrity: sha512-mVwdUb5SRkPayVadIOI78K7aAnPamoeFR2bT5nszFUZ9P8UpK4ratOdYbZZXYSqPKMHfS1wdHCJk1P1EZpRdvw==} engines: {node: '>=18'} cpu: [arm64] os: [darwin] - '@esbuild/darwin-x64@0.23.1': - resolution: {integrity: sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==} + '@esbuild/darwin-x64@0.25.0': + resolution: {integrity: sha512-DgDaYsPWFTS4S3nWpFcMn/33ZZwAAeAFKNHNa1QN0rI4pUjgqf0f7ONmXf6d22tqTY+H9FNdgeaAa+YIFUn2Rg==} engines: {node: '>=18'} cpu: [x64] os: [darwin] - '@esbuild/darwin-x64@0.24.2': - resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==} - engines: {node: '>=18'} - cpu: [x64] - os: [darwin] - - '@esbuild/freebsd-arm64@0.23.1': - resolution: {integrity: sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==} - engines: {node: '>=18'} - cpu: [arm64] - os: [freebsd] - - '@esbuild/freebsd-arm64@0.24.2': - resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==} + '@esbuild/freebsd-arm64@0.25.0': + resolution: {integrity: sha512-VN4ocxy6dxefN1MepBx/iD1dH5K8qNtNe227I0mnTRjry8tj5MRk4zprLEdG8WPyAPb93/e4pSgi1SoHdgOa4w==} engines: {node: '>=18'} cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-x64@0.23.1': - resolution: {integrity: sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==} + '@esbuild/freebsd-x64@0.25.0': + resolution: {integrity: sha512-mrSgt7lCh07FY+hDD1TxiTyIHyttn6vnjesnPoVDNmDfOmggTLXRv8Id5fNZey1gl/V2dyVK1VXXqVsQIiAk+A==} engines: {node: '>=18'} cpu: [x64] os: [freebsd] - '@esbuild/freebsd-x64@0.24.2': - resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==} - engines: {node: '>=18'} - cpu: [x64] - os: [freebsd] - - '@esbuild/linux-arm64@0.23.1': - resolution: {integrity: sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==} + '@esbuild/linux-arm64@0.25.0': + resolution: {integrity: sha512-9QAQjTWNDM/Vk2bgBl17yWuZxZNQIF0OUUuPZRKoDtqF2k4EtYbpyiG5/Dk7nqeK6kIJWPYldkOcBqjXjrUlmg==} engines: {node: '>=18'} cpu: [arm64] os: [linux] - '@esbuild/linux-arm64@0.24.2': - resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==} - engines: {node: '>=18'} - cpu: [arm64] - os: [linux] - - '@esbuild/linux-arm@0.23.1': - resolution: {integrity: sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==} - engines: {node: '>=18'} - cpu: [arm] - os: [linux] - - '@esbuild/linux-arm@0.24.2': - resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==} + '@esbuild/linux-arm@0.25.0': + resolution: {integrity: sha512-vkB3IYj2IDo3g9xX7HqhPYxVkNQe8qTK55fraQyTzTX/fxaDtXiEnavv9geOsonh2Fd2RMB+i5cbhu2zMNWJwg==} engines: {node: '>=18'} cpu: [arm] os: [linux] - '@esbuild/linux-ia32@0.23.1': - resolution: {integrity: sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==} - engines: {node: '>=18'} - cpu: [ia32] - os: [linux] - - '@esbuild/linux-ia32@0.24.2': - resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==} + '@esbuild/linux-ia32@0.25.0': + resolution: {integrity: sha512-43ET5bHbphBegyeqLb7I1eYn2P/JYGNmzzdidq/w0T8E2SsYL1U6un2NFROFRg1JZLTzdCoRomg8Rvf9M6W6Gg==} engines: {node: '>=18'} cpu: [ia32] os: [linux] - '@esbuild/linux-loong64@0.23.1': - resolution: {integrity: sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==} + '@esbuild/linux-loong64@0.25.0': + resolution: {integrity: sha512-fC95c/xyNFueMhClxJmeRIj2yrSMdDfmqJnyOY4ZqsALkDrrKJfIg5NTMSzVBr5YW1jf+l7/cndBfP3MSDpoHw==} engines: {node: '>=18'} cpu: [loong64] os: [linux] - '@esbuild/linux-loong64@0.24.2': - resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==} - engines: {node: '>=18'} - cpu: [loong64] - os: [linux] - - '@esbuild/linux-mips64el@0.23.1': - resolution: {integrity: sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==} - engines: {node: '>=18'} - cpu: [mips64el] - os: [linux] - - '@esbuild/linux-mips64el@0.24.2': - resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==} + '@esbuild/linux-mips64el@0.25.0': + resolution: {integrity: sha512-nkAMFju7KDW73T1DdH7glcyIptm95a7Le8irTQNO/qtkoyypZAnjchQgooFUDQhNAy4iu08N79W4T4pMBwhPwQ==} engines: {node: '>=18'} cpu: [mips64el] os: [linux] - '@esbuild/linux-ppc64@0.23.1': - resolution: {integrity: sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [linux] - - '@esbuild/linux-ppc64@0.24.2': - resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==} + '@esbuild/linux-ppc64@0.25.0': + resolution: {integrity: sha512-NhyOejdhRGS8Iwv+KKR2zTq2PpysF9XqY+Zk77vQHqNbo/PwZCzB5/h7VGuREZm1fixhs4Q/qWRSi5zmAiO4Fw==} engines: {node: '>=18'} cpu: [ppc64] os: [linux] - '@esbuild/linux-riscv64@0.23.1': - resolution: {integrity: sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==} + '@esbuild/linux-riscv64@0.25.0': + resolution: {integrity: sha512-5S/rbP5OY+GHLC5qXp1y/Mx//e92L1YDqkiBbO9TQOvuFXM+iDqUNG5XopAnXoRH3FjIUDkeGcY1cgNvnXp/kA==} engines: {node: '>=18'} cpu: [riscv64] os: [linux] - '@esbuild/linux-riscv64@0.24.2': - resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==} - engines: {node: '>=18'} - cpu: [riscv64] - os: [linux] - - '@esbuild/linux-s390x@0.23.1': - resolution: {integrity: sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==} - engines: {node: '>=18'} - cpu: [s390x] - os: [linux] - - '@esbuild/linux-s390x@0.24.2': - resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==} + '@esbuild/linux-s390x@0.25.0': + resolution: {integrity: sha512-XM2BFsEBz0Fw37V0zU4CXfcfuACMrppsMFKdYY2WuTS3yi8O1nFOhil/xhKTmE1nPmVyvQJjJivgDT+xh8pXJA==} engines: {node: '>=18'} cpu: [s390x] os: [linux] - '@esbuild/linux-x64@0.23.1': - resolution: {integrity: sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==} + '@esbuild/linux-x64@0.25.0': + resolution: {integrity: sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw==} engines: {node: '>=18'} cpu: [x64] os: [linux] - '@esbuild/linux-x64@0.24.2': - resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==} - engines: {node: '>=18'} - cpu: [x64] - os: [linux] - - '@esbuild/netbsd-arm64@0.24.2': - resolution: {integrity: sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==} + '@esbuild/netbsd-arm64@0.25.0': + resolution: {integrity: sha512-RuG4PSMPFfrkH6UwCAqBzauBWTygTvb1nxWasEJooGSJ/NwRw7b2HOwyRTQIU97Hq37l3npXoZGYMy3b3xYvPw==} engines: {node: '>=18'} cpu: [arm64] os: [netbsd] - '@esbuild/netbsd-x64@0.23.1': - resolution: {integrity: sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==} + '@esbuild/netbsd-x64@0.25.0': + resolution: {integrity: sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA==} engines: {node: '>=18'} cpu: [x64] os: [netbsd] - '@esbuild/netbsd-x64@0.24.2': - resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==} - engines: {node: '>=18'} - cpu: [x64] - os: [netbsd] - - '@esbuild/openbsd-arm64@0.23.1': - resolution: {integrity: sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==} + '@esbuild/openbsd-arm64@0.25.0': + resolution: {integrity: sha512-21sUNbq2r84YE+SJDfaQRvdgznTD8Xc0oc3p3iW/a1EVWeNj/SdUCbm5U0itZPQYRuRTW20fPMWMpcrciH2EJw==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] - '@esbuild/openbsd-arm64@0.24.2': - resolution: {integrity: sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==} - engines: {node: '>=18'} - cpu: [arm64] - os: [openbsd] - - '@esbuild/openbsd-x64@0.23.1': - resolution: {integrity: sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==} + '@esbuild/openbsd-x64@0.25.0': + resolution: {integrity: sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg==} engines: {node: '>=18'} cpu: [x64] os: [openbsd] - '@esbuild/openbsd-x64@0.24.2': - resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==} - engines: {node: '>=18'} - cpu: [x64] - os: [openbsd] - - '@esbuild/sunos-x64@0.23.1': - resolution: {integrity: sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==} - engines: {node: '>=18'} - cpu: [x64] - os: [sunos] - - '@esbuild/sunos-x64@0.24.2': - resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==} + '@esbuild/sunos-x64@0.25.0': + resolution: {integrity: sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg==} engines: {node: '>=18'} cpu: [x64] os: [sunos] - '@esbuild/win32-arm64@0.23.1': - resolution: {integrity: sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==} - engines: {node: '>=18'} - cpu: [arm64] - os: [win32] - - '@esbuild/win32-arm64@0.24.2': - resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==} + '@esbuild/win32-arm64@0.25.0': + resolution: {integrity: sha512-ZUAc2YK6JW89xTbXvftxdnYy3m4iHIkDtK3CLce8wg8M2L+YZhIvO1DKpxrd0Yr59AeNNkTiic9YLf6FTtXWMw==} engines: {node: '>=18'} cpu: [arm64] os: [win32] - '@esbuild/win32-ia32@0.23.1': - resolution: {integrity: sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==} + '@esbuild/win32-ia32@0.25.0': + resolution: {integrity: sha512-eSNxISBu8XweVEWG31/JzjkIGbGIJN/TrRoiSVZwZ6pkC6VX4Im/WV2cz559/TXLcYbcrDN8JtKgd9DJVIo8GA==} engines: {node: '>=18'} cpu: [ia32] os: [win32] - '@esbuild/win32-ia32@0.24.2': - resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==} - engines: {node: '>=18'} - cpu: [ia32] - os: [win32] - - '@esbuild/win32-x64@0.23.1': - resolution: {integrity: sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==} - engines: {node: '>=18'} - cpu: [x64] - os: [win32] - - '@esbuild/win32-x64@0.24.2': - resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==} + '@esbuild/win32-x64@0.25.0': + resolution: {integrity: sha512-ZENoHJBxA20C2zFzh6AI4fT6RraMzjYw4xKWemRTRmRVtN9c5DcH9r/f2ihEkMjOW5eGgrwCslG/+Y/3bL+DHQ==} engines: {node: '>=18'} cpu: [x64] os: [win32] @@ -792,11 +647,11 @@ packages: resolution: {integrity: sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==} engines: {node: '>=18.18'} - '@iconify-json/codicon@1.2.6': - resolution: {integrity: sha512-F5lBgKRFLHfOVNM8I3ld+JCdmFPxf3V1p/PV7lNHgtvoblaQLLxGKs3AepIcnbkPcACafPbQ0OMorskSk41Ziw==} + '@iconify-json/codicon@1.2.12': + resolution: {integrity: sha512-PSqV6rx770+MAaIK+QGLbhvsKl33ParjREK++XhMyM1CGXcMEsJ6cXkeooyWhE8VSzxWKlk8ecGzJFTi13MwQA==} - '@iconify-json/ph@1.2.1': - resolution: {integrity: sha512-x0DNfwWrS18dbsBYOq3XGiZnGz4CgRyC+YSl/TZvMQiKhIUl1woWqUbMYqqfMNUBzjyk7ulvaRovpRsIlqIf8g==} + '@iconify-json/ph@1.2.2': + resolution: {integrity: sha512-PgkEZNtqa8hBGjHXQa4pMwZa93hmfu8FUSjs/nv4oUU6yLsgv+gh9nu28Kqi8Fz9CCVu4hj1MZs9/60J57IzFw==} '@iconify/types@2.0.0': resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==} @@ -804,8 +659,8 @@ packages: '@iconify/utils@2.3.0': resolution: {integrity: sha512-GmQ78prtwYW6EtzXRU1rY+KwOKfz32PD7iJh6Iyqw68GiKuoZ2A6pRtzWONz5VQJbp50mEjXh/7NkumtrAgRKA==} - '@jridgewell/gen-mapping@0.3.5': - resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} + '@jridgewell/gen-mapping@0.3.8': + resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} engines: {node: '>=6.0.0'} '@jridgewell/resolve-uri@3.1.2': @@ -858,8 +713,8 @@ packages: rollup: optional: true - '@rollup/plugin-typescript@11.1.6': - resolution: {integrity: sha512-R92yOmIACgYdJ7dJ97p4K69I8gg6IEHt8M7dUBxN3W6nrO8uUxX5ixl0yU/N3aZTi8WhPuICvOHXQvF6FaykAA==} + '@rollup/plugin-typescript@12.1.2': + resolution: {integrity: sha512-cdtSp154H5sv637uMr1a8OTWB0L1SWDSm1rDGiyfcGcvQ6cuTs4MDk2BVEBGysUWago4OJN4EQZqOTl/QY3Jgg==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^2.14.0||^3.0.0||^4.0.0 @@ -983,8 +838,8 @@ packages: svelte: ^5.0.0 vite: ^6.0.0 - '@sveltejs/vite-plugin-svelte@5.0.1': - resolution: {integrity: sha512-D5l5+STmywGoLST07T9mrqqFFU+xgv5fqyTWM+VbxTvQ6jujNn4h3lQNCvlwVYs4Erov8i0K5Rwr3LQtmBYmBw==} + '@sveltejs/vite-plugin-svelte@5.0.3': + resolution: {integrity: sha512-MCFS6CrQDu1yGwspm4qtli0e63vaPCehf6V7pIMP15AsWgMKrqDGCPFF/0kn4SP0ii4aySu4Pa62+fIRGFMjgw==} engines: {node: ^18.0.0 || ^20.0.0 || >=22} peerDependencies: svelte: ^5.0.0 @@ -1365,6 +1220,10 @@ packages: resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} engines: {node: '>=12'} + clsx@2.1.1: + resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} + engines: {node: '>=6'} + color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} engines: {node: '>=7.0.0'} @@ -1388,8 +1247,8 @@ packages: resolution: {integrity: sha512-EiPU8G6dQG0GFHNR8ljnZFki/8a+cQwEQ+7wpxdChl02Q8HXlwEZWD5lqAF8vC2sEC3Tehr8hy7vErz88LHyUA==} engines: {node: ^14.18.0 || >=16.10.0} - covector@0.12.3: - resolution: {integrity: sha512-9LNME5eb4/KMdWD2jyJ4XX6CvD45xsF9hmxTQWAoDSuDGKdyh98wzUupz4BrJ9iviR8R9pI3D6Mozv13UX0g+A==} + covector@0.12.4: + resolution: {integrity: sha512-qRK0Qg1FaRkB7dFDzzKiTn9H3EAMb83N5Hl6KVol2zpenmkKz8A7aa+7C49Z7LHtSgKkIWkqxIut8qcN6pRnag==} engines: {node: '>=18'} hasBin: true @@ -1407,8 +1266,8 @@ packages: csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} - ctrlc-windows@2.1.0: - resolution: {integrity: sha512-OrX5KI+K+2NMN91QIhYZdW7VDO2YsSdTZW494pA7Nvw/wBdU2hz+MGP006bR978zOTrG6Q8EIeJvLJmLqc6MsQ==} + ctrlc-windows@2.2.0: + resolution: {integrity: sha512-t9y568r+T8FUuBaqKK60YGFJdj3b3ktdJW9WXIT3CuBdQhAOYdSZu75jFUN0Ay4Yz5HHicVQqAYCwcnqhOn23g==} debug@4.4.0: resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} @@ -1457,13 +1316,8 @@ packages: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} - esbuild@0.23.1: - resolution: {integrity: sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==} - engines: {node: '>=18'} - hasBin: true - - esbuild@0.24.2: - resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==} + esbuild@0.25.0: + resolution: {integrity: sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw==} engines: {node: '>=18'} hasBin: true @@ -1507,8 +1361,8 @@ packages: jiti: optional: true - esm-env@1.2.1: - resolution: {integrity: sha512-U9JedYYjCnadUlXk7e1Kr+aENQhtUaoaV9+gZm1T8LC/YBAPJx3NSPIAurFOC0U5vrdSevnUJS2/wUVxGwPhng==} + esm-env@1.2.2: + resolution: {integrity: sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==} espree@10.3.0: resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} @@ -1518,8 +1372,8 @@ packages: resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} engines: {node: '>=0.10'} - esrap@1.2.3: - resolution: {integrity: sha512-ZlQmCCK+n7SGoqo7DnfKaP1sJZa49P01/dXzmjCASSo04p72w8EksT2NMK8CEX8DhKsfJXANioIw8VyHNsBfvQ==} + esrap@1.4.5: + resolution: {integrity: sha512-CjNMjkBWWZeHn+VX+gS8YvFwJ5+NDhg8aWZBSFJPR8qQduDNjbJodA2WcwCm7uQa5Rjqj+nZvVmceg1RbHFB9g==} esrecurse@4.3.0: resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} @@ -1550,8 +1404,8 @@ packages: fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - fast-glob@3.3.2: - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} + fast-glob@3.3.3: + resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} engines: {node: '>=8.6.0'} fast-json-stable-stringify@2.1.0: @@ -1564,14 +1418,14 @@ packages: resolution: {integrity: sha512-dwsoQlS7h9hMeYUq1W++23NDcBLV4KqONnITDV9DjfS3q1SgDGVrBdvvTLUotWtPSD7asWDV9/CmsZPy8Hf70A==} engines: {node: '>=6'} - fastq@1.17.1: - resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} + fastq@1.19.1: + resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} fault@1.0.4: resolution: {integrity: sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==} - fdir@6.4.2: - resolution: {integrity: sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ==} + fdir@6.4.3: + resolution: {integrity: sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==} peerDependencies: picomatch: ^3 || ^4 peerDependenciesMeta: @@ -1598,8 +1452,8 @@ packages: resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} hasBin: true - flatted@3.3.2: - resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} + flatted@3.3.3: + resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} format@0.2.2: resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==} @@ -1620,8 +1474,8 @@ packages: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} engines: {node: 6.* || 8.* || >= 10.*} - get-tsconfig@4.8.1: - resolution: {integrity: sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==} + get-tsconfig@4.10.0: + resolution: {integrity: sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==} glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} @@ -1640,8 +1494,8 @@ packages: resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} engines: {node: '>=18'} - globals@15.14.0: - resolution: {integrity: sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==} + globals@15.15.0: + resolution: {integrity: sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==} engines: {node: '>=18'} globby@11.1.0: @@ -1674,8 +1528,8 @@ packages: resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} engines: {node: '>= 4'} - import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} + import-fresh@3.3.1: + resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} engines: {node: '>=6'} imurmurhash@0.1.4: @@ -1703,8 +1557,8 @@ packages: resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} engines: {node: '>=4'} - is-core-module@2.15.1: - resolution: {integrity: sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==} + is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} engines: {node: '>= 0.4'} is-decimal@1.0.4: @@ -1852,8 +1706,8 @@ packages: engines: {node: '>= 14.0.0'} hasBin: true - mrmime@2.0.0: - resolution: {integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==} + mrmime@2.0.1: + resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==} engines: {node: '>=10'} ms@2.1.3: @@ -1867,8 +1721,8 @@ packages: natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - node-fetch-native@1.6.4: - resolution: {integrity: sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ==} + node-fetch-native@1.6.6: + resolution: {integrity: sha512-8Mc2HhqPdlIfedsuZoc3yioPuzp6b+L5jRCRY1QzuWZh2EGJVQrGppC6V6cF0bLdbW0+O2YpqCA25aF/1lvipQ==} node-fetch@2.6.7: resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==} @@ -1956,15 +1810,15 @@ packages: pino-std-serializers@7.0.0: resolution: {integrity: sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==} - pino@9.5.0: - resolution: {integrity: sha512-xSEmD4pLnV54t0NOUN16yCl7RIB1c5UUOse5HSyEXtBp+FgFQyPeDutc+Q2ZO7/22vImV7VfEjH/1zV2QuqvYw==} + pino@9.6.0: + resolution: {integrity: sha512-i85pKRCt4qMjZ1+L7sy2Ag4t1atFcdbEt76+7iRJn1g2BvsnRMGu9p8pivl9fs63M2kF/A0OacFZhTub+m/qMg==} hasBin: true pkg-types@1.3.1: resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==} - postcss@8.5.1: - resolution: {integrity: sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==} + postcss@8.5.3: + resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==} engines: {node: ^10 || ^12 || >=14} prelude-ls@1.2.1: @@ -1976,8 +1830,8 @@ packages: engines: {node: '>=14'} hasBin: true - process-warning@4.0.0: - resolution: {integrity: sha512-/MyYDxttz7DfGMMHiysAsFE4qF+pQYAA8ziO/3NcRVrQ5fSk+Mns4QZA/oRPFzvcqNoVJXQNWNAsdwBXLUkQKw==} + process-warning@4.0.1: + resolution: {integrity: sha512-3c2LzQ3rY9d0hc1emcsHhfT9Jwz0cChib/QN89oME2R451w5fy3f0afAhERFZAwrbDU43wk12d0ORBpDVME50Q==} process@0.11.10: resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} @@ -1996,8 +1850,8 @@ packages: randombytes@2.1.0: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} - readable-stream@4.5.2: - resolution: {integrity: sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==} + readable-stream@4.7.0: + resolution: {integrity: sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} readdirp@3.6.0: @@ -2036,12 +1890,13 @@ packages: resolve-pkg-maps@1.0.0: resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} - resolve@1.22.8: - resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} + resolve@1.22.10: + resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} + engines: {node: '>= 0.4'} hasBin: true - reusify@1.0.4: - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} + reusify@1.1.0: + resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} rollup@4.34.8: @@ -2062,8 +1917,8 @@ packages: resolution: {integrity: sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==} engines: {node: '>=10'} - semver@7.6.3: - resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} + semver@7.7.1: + resolution: {integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==} engines: {node: '>=10'} hasBin: true @@ -2081,8 +1936,8 @@ packages: shellwords@0.1.1: resolution: {integrity: sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==} - sirv@3.0.0: - resolution: {integrity: sha512-BPwJGUeDaDCHihkORDchNyyTvWFhcusy1XMmhEVTQTwGeybFbp8YEmB+njbPnth1FibULBSBVwCQni25XlCUDg==} + sirv@3.0.1: + resolution: {integrity: sha512-FoqMu0NCGBLCcAkS1qA+XJIQTR6/JHfQXl+uGteNCQ76T91DMUjPa9xfmeqMY3z80nLSg9yQmNjK0Px6RWsH/A==} engines: {node: '>=18'} sisteransi@1.0.5: @@ -2113,8 +1968,8 @@ packages: resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==} engines: {node: '>= 10.x'} - stacktrace-parser@0.1.10: - resolution: {integrity: sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==} + stacktrace-parser@0.1.11: + resolution: {integrity: sha512-WjlahMgHmCJpqzU8bIBy4qtsZdU9lRlcZE3Lvyej6t4tuOuv1vk57OW3MBrj6hXBFx/nNoC9MPMTcr5YA7NQbg==} engines: {node: '>=6'} string-width@4.2.3: @@ -2144,12 +1999,12 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} - svelte@5.10.0: - resolution: {integrity: sha512-jGJFpB9amHLLQZBbAuQ6csH7WlTvGx4cO4wSSNcgGcx9vDGMTCZzTREf6/wKhVUQDoK+GapgvLQPZHa3e9MOAA==} + svelte@5.20.4: + resolution: {integrity: sha512-2Mo/AfObaw9zuD0u1JJ7sOVzRCGcpETEyDkLbtkcctWpCMCIyT0iz83xD8JT29SR7O4SgswuPRIDYReYF/607A==} engines: {node: '>=18'} - terser@5.36.0: - resolution: {integrity: sha512-IYV9eNMuFAV4THUspIRXkLakHnV6XO7FEdtKjf/mDyrnqUg9LnlOn6/RwRvM9SZjR4GUq8Nk8zj67FzVARr74w==} + terser@5.39.0: + resolution: {integrity: sha512-LBAhFyLho16harJoWMg/nZsQYgTrg5jXOn2nCYjRUcZZEdE3qa2zb8QEDRUGVZBW4rlazf2fxkg8tztybTaqWw==} engines: {node: '>=10'} hasBin: true @@ -2159,8 +2014,8 @@ packages: tinyexec@0.3.2: resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} - tinyglobby@0.2.10: - resolution: {integrity: sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew==} + tinyglobby@0.2.12: + resolution: {integrity: sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==} engines: {node: '>=12.0.0'} to-regex-range@5.0.1: @@ -2248,8 +2103,8 @@ packages: vfile@4.2.1: resolution: {integrity: sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==} - vite@6.0.9: - resolution: {integrity: sha512-MSgUxHcaXLtnBPktkbUSoQUANApKYuxZ6DrbVENlIorbhL2dZydTLaZ01tjUoE3szeFzlFk9ANOKk0xurh4MKA==} + vite@6.2.0: + resolution: {integrity: sha512-7dPxoo+WsT/64rDcwoOjk76XHj+TqNTIvHKcuMQ1k4/SeHDaQt5GFAeLYzrimZrMpn/O6DtdI03WUjdxuPM0oQ==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true peerDependencies: @@ -2288,8 +2143,8 @@ packages: yaml: optional: true - vitefu@1.0.4: - resolution: {integrity: sha512-y6zEE3PQf6uu/Mt6DTJ9ih+kyJLr4XcSgHR2zUkM8SWDhuixEJxfJ6CZGMHh1Ec3vPLoEA0IHU5oWzVqw8ulow==} + vitefu@1.0.6: + resolution: {integrity: sha512-+Rex1GlappUyNN6UfwbVZne/9cYC4+R2XDk9xkNXBKMw6HQagdX9PgZ8V2v1WUSK1wfBLp7qbI1+XSNIlB1xmA==} peerDependencies: vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 peerDependenciesMeta: @@ -2371,8 +2226,8 @@ packages: peerDependencies: zod: ^3.18.0 - zod@3.23.8: - resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==} + zod@3.24.2: + resolution: {integrity: sha512-lY7CDW43ECgW9u1TcT3IoXHflywfVqDYze4waEz812jR/bZ8FHDsl7pFQoSZTz5N+2NqRXs8GBwnAwo3ZNxqhQ==} zwitch@1.0.5: resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==} @@ -2381,7 +2236,7 @@ snapshots: '@ampproject/remapping@2.3.0': dependencies: - '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.25 '@antfu/install-pkg@1.0.0': @@ -2395,11 +2250,11 @@ snapshots: '@babel/helper-validator-identifier@7.25.9': {} - '@babel/parser@7.26.5': + '@babel/parser@7.26.9': dependencies: - '@babel/types': 7.26.5 + '@babel/types': 7.26.9 - '@babel/types@7.26.5': + '@babel/types@7.26.9': dependencies: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 @@ -2423,7 +2278,7 @@ snapshots: dependencies: '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) - semver: 7.6.3 + semver: 7.7.1 transitivePeerDependencies: - encoding - mocha @@ -2467,9 +2322,9 @@ snapshots: '@covector/toml': 0.2.0 globby: 11.1.0 js-yaml: 4.1.0 - semver: 7.6.3 - zod: 3.23.8 - zod-validation-error: 1.5.0(zod@3.23.8) + semver: 7.7.1 + zod: 3.24.2 + zod-validation-error: 1.5.0(zod@3.24.2) '@covector/toml@0.2.0': {} @@ -2501,7 +2356,7 @@ snapshots: dependencies: '@effection/core': 2.2.3 chalk: 4.1.2 - stacktrace-parser: 0.1.10 + stacktrace-parser: 0.1.11 '@effection/mocha@2.0.8(mocha@10.8.2)': dependencies: @@ -2513,7 +2368,7 @@ snapshots: '@effection/process@2.1.4': dependencies: cross-spawn: 7.0.6 - ctrlc-windows: 2.1.0 + ctrlc-windows: 2.2.0 effection: 2.0.8(mocha@10.8.2) shellwords: 0.1.1 transitivePeerDependencies: @@ -2528,151 +2383,79 @@ snapshots: dependencies: '@effection/core': 2.2.3 - '@esbuild/aix-ppc64@0.23.1': - optional: true - - '@esbuild/aix-ppc64@0.24.2': - optional: true - - '@esbuild/android-arm64@0.23.1': - optional: true - - '@esbuild/android-arm64@0.24.2': + '@esbuild/aix-ppc64@0.25.0': optional: true - '@esbuild/android-arm@0.23.1': + '@esbuild/android-arm64@0.25.0': optional: true - '@esbuild/android-arm@0.24.2': + '@esbuild/android-arm@0.25.0': optional: true - '@esbuild/android-x64@0.23.1': + '@esbuild/android-x64@0.25.0': optional: true - '@esbuild/android-x64@0.24.2': + '@esbuild/darwin-arm64@0.25.0': optional: true - '@esbuild/darwin-arm64@0.23.1': + '@esbuild/darwin-x64@0.25.0': optional: true - '@esbuild/darwin-arm64@0.24.2': + '@esbuild/freebsd-arm64@0.25.0': optional: true - '@esbuild/darwin-x64@0.23.1': + '@esbuild/freebsd-x64@0.25.0': optional: true - '@esbuild/darwin-x64@0.24.2': + '@esbuild/linux-arm64@0.25.0': optional: true - '@esbuild/freebsd-arm64@0.23.1': + '@esbuild/linux-arm@0.25.0': optional: true - '@esbuild/freebsd-arm64@0.24.2': + '@esbuild/linux-ia32@0.25.0': optional: true - '@esbuild/freebsd-x64@0.23.1': + '@esbuild/linux-loong64@0.25.0': optional: true - '@esbuild/freebsd-x64@0.24.2': + '@esbuild/linux-mips64el@0.25.0': optional: true - '@esbuild/linux-arm64@0.23.1': + '@esbuild/linux-ppc64@0.25.0': optional: true - '@esbuild/linux-arm64@0.24.2': + '@esbuild/linux-riscv64@0.25.0': optional: true - '@esbuild/linux-arm@0.23.1': + '@esbuild/linux-s390x@0.25.0': optional: true - '@esbuild/linux-arm@0.24.2': + '@esbuild/linux-x64@0.25.0': optional: true - '@esbuild/linux-ia32@0.23.1': + '@esbuild/netbsd-arm64@0.25.0': optional: true - '@esbuild/linux-ia32@0.24.2': + '@esbuild/netbsd-x64@0.25.0': optional: true - '@esbuild/linux-loong64@0.23.1': + '@esbuild/openbsd-arm64@0.25.0': optional: true - '@esbuild/linux-loong64@0.24.2': + '@esbuild/openbsd-x64@0.25.0': optional: true - '@esbuild/linux-mips64el@0.23.1': + '@esbuild/sunos-x64@0.25.0': optional: true - '@esbuild/linux-mips64el@0.24.2': + '@esbuild/win32-arm64@0.25.0': optional: true - '@esbuild/linux-ppc64@0.23.1': + '@esbuild/win32-ia32@0.25.0': optional: true - '@esbuild/linux-ppc64@0.24.2': - optional: true - - '@esbuild/linux-riscv64@0.23.1': - optional: true - - '@esbuild/linux-riscv64@0.24.2': - optional: true - - '@esbuild/linux-s390x@0.23.1': - optional: true - - '@esbuild/linux-s390x@0.24.2': - optional: true - - '@esbuild/linux-x64@0.23.1': - optional: true - - '@esbuild/linux-x64@0.24.2': - optional: true - - '@esbuild/netbsd-arm64@0.24.2': - optional: true - - '@esbuild/netbsd-x64@0.23.1': - optional: true - - '@esbuild/netbsd-x64@0.24.2': - optional: true - - '@esbuild/openbsd-arm64@0.23.1': - optional: true - - '@esbuild/openbsd-arm64@0.24.2': - optional: true - - '@esbuild/openbsd-x64@0.23.1': - optional: true - - '@esbuild/openbsd-x64@0.24.2': - optional: true - - '@esbuild/sunos-x64@0.23.1': - optional: true - - '@esbuild/sunos-x64@0.24.2': - optional: true - - '@esbuild/win32-arm64@0.23.1': - optional: true - - '@esbuild/win32-arm64@0.24.2': - optional: true - - '@esbuild/win32-ia32@0.23.1': - optional: true - - '@esbuild/win32-ia32@0.24.2': - optional: true - - '@esbuild/win32-x64@0.23.1': - optional: true - - '@esbuild/win32-x64@0.24.2': + '@esbuild/win32-x64@0.25.0': optional: true '@eslint-community/eslint-utils@4.4.1(eslint@9.21.0(jiti@2.4.2))': @@ -2701,7 +2484,7 @@ snapshots: espree: 10.3.0 globals: 14.0.0 ignore: 5.3.2 - import-fresh: 3.3.0 + import-fresh: 3.3.1 js-yaml: 4.1.0 minimatch: 3.1.2 strip-json-comments: 3.1.1 @@ -2730,11 +2513,11 @@ snapshots: '@humanwhocodes/retry@0.4.2': {} - '@iconify-json/codicon@1.2.6': + '@iconify-json/codicon@1.2.12': dependencies: '@iconify/types': 2.0.0 - '@iconify-json/ph@1.2.1': + '@iconify-json/ph@1.2.2': dependencies: '@iconify/types': 2.0.0 @@ -2746,14 +2529,14 @@ snapshots: '@antfu/utils': 8.1.1 '@iconify/types': 2.0.0 debug: 4.4.0(supports-color@8.1.1) - globals: 15.14.0 + globals: 15.15.0 kolorist: 1.8.0 local-pkg: 1.0.0 mlly: 1.7.4 transitivePeerDependencies: - supports-color - '@jridgewell/gen-mapping@0.3.5': + '@jridgewell/gen-mapping@0.3.8': dependencies: '@jridgewell/set-array': 1.2.1 '@jridgewell/sourcemap-codec': 1.5.0 @@ -2765,7 +2548,7 @@ snapshots: '@jridgewell/source-map@0.3.6': dependencies: - '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.25 '@jridgewell/sourcemap-codec@1.5.0': {} @@ -2785,7 +2568,7 @@ snapshots: '@nodelib/fs.walk@1.2.8': dependencies: '@nodelib/fs.scandir': 2.1.5 - fastq: 1.17.1 + fastq: 1.19.1 '@polka/url@1.0.0-next.28': {} @@ -2795,7 +2578,7 @@ snapshots: '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 - resolve: 1.22.8 + resolve: 1.22.10 optionalDependencies: rollup: 4.34.8 @@ -2803,14 +2586,14 @@ snapshots: dependencies: serialize-javascript: 6.0.2 smob: 1.5.0 - terser: 5.36.0 + terser: 5.39.0 optionalDependencies: rollup: 4.34.8 - '@rollup/plugin-typescript@11.1.6(rollup@4.34.8)(tslib@2.8.1)(typescript@5.7.3)': + '@rollup/plugin-typescript@12.1.2(rollup@4.34.8)(tslib@2.8.1)(typescript@5.7.3)': dependencies: '@rollup/pluginutils': 5.1.4(rollup@4.34.8) - resolve: 1.22.8 + resolve: 1.22.10 typescript: 5.7.3 optionalDependencies: rollup: 4.34.8 @@ -2881,25 +2664,25 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.34.8': optional: true - '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.1(svelte@5.10.0)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2)))(svelte@5.10.0)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))': + '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)))(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))': dependencies: - '@sveltejs/vite-plugin-svelte': 5.0.1(svelte@5.10.0)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2)) + '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) debug: 4.4.0(supports-color@8.1.1) - svelte: 5.10.0 - vite: 6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2) + svelte: 5.20.4 + vite: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) transitivePeerDependencies: - supports-color - '@sveltejs/vite-plugin-svelte@5.0.1(svelte@5.10.0)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))': + '@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))': dependencies: - '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.0.1(svelte@5.10.0)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2)))(svelte@5.10.0)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2)) + '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)))(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) debug: 4.4.0(supports-color@8.1.1) deepmerge: 4.3.1 kleur: 4.1.5 magic-string: 0.30.17 - svelte: 5.10.0 - vite: 6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2) - vitefu: 1.0.4(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2)) + svelte: 5.20.4 + vite: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + vitefu: 1.0.6(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) transitivePeerDependencies: - supports-color @@ -3012,10 +2795,10 @@ snapshots: '@typescript-eslint/types': 8.25.0 '@typescript-eslint/visitor-keys': 8.25.0 debug: 4.4.0(supports-color@8.1.1) - fast-glob: 3.3.2 + fast-glob: 3.3.3 is-glob: 4.0.3 minimatch: 9.0.5 - semver: 7.6.3 + semver: 7.7.1 ts-api-utils: 2.0.1(typescript@5.7.3) typescript: 5.7.3 transitivePeerDependencies: @@ -3037,13 +2820,13 @@ snapshots: '@typescript-eslint/types': 8.25.0 eslint-visitor-keys: 4.2.0 - '@unocss/astro@66.0.0(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3))': + '@unocss/astro@66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3))': dependencies: '@unocss/core': 66.0.0 '@unocss/reset': 66.0.0 - '@unocss/vite': 66.0.0(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) + '@unocss/vite': 66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) optionalDependencies: - vite: 6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2) + vite: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) transitivePeerDependencies: - vue @@ -3060,7 +2843,7 @@ snapshots: magic-string: 0.30.17 pathe: 2.0.3 perfect-debounce: 1.0.0 - tinyglobby: 0.2.10 + tinyglobby: 0.2.12 unplugin-utils: 0.2.4 '@unocss/config@66.0.0': @@ -3082,19 +2865,19 @@ snapshots: '@unocss/rule-utils': 66.0.0 colorette: 2.0.20 gzip-size: 6.0.0 - sirv: 3.0.0 + sirv: 3.0.1 vue-flow-layout: 0.1.1(vue@3.5.13(typescript@5.7.3)) transitivePeerDependencies: - vue - '@unocss/postcss@66.0.0(postcss@8.5.1)': + '@unocss/postcss@66.0.0(postcss@8.5.3)': dependencies: '@unocss/config': 66.0.0 '@unocss/core': 66.0.0 '@unocss/rule-utils': 66.0.0 css-tree: 3.1.0 - postcss: 8.5.1 - tinyglobby: 0.2.10 + postcss: 8.5.3 + tinyglobby: 0.2.12 '@unocss/preset-attributify@66.0.0': dependencies: @@ -3170,7 +2953,7 @@ snapshots: dependencies: '@unocss/core': 66.0.0 - '@unocss/vite@66.0.0(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3))': + '@unocss/vite@66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3))': dependencies: '@ampproject/remapping': 2.3.0 '@unocss/config': 66.0.0 @@ -3178,15 +2961,15 @@ snapshots: '@unocss/inspector': 66.0.0(vue@3.5.13(typescript@5.7.3)) chokidar: 3.6.0 magic-string: 0.30.17 - tinyglobby: 0.2.10 + tinyglobby: 0.2.12 unplugin-utils: 0.2.4 - vite: 6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2) + vite: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) transitivePeerDependencies: - vue '@vue/compiler-core@3.5.13': dependencies: - '@babel/parser': 7.26.5 + '@babel/parser': 7.26.9 '@vue/shared': 3.5.13 entities: 4.5.0 estree-walker: 2.0.2 @@ -3199,14 +2982,14 @@ snapshots: '@vue/compiler-sfc@3.5.13': dependencies: - '@babel/parser': 7.26.5 + '@babel/parser': 7.26.9 '@vue/compiler-core': 3.5.13 '@vue/compiler-dom': 3.5.13 '@vue/compiler-ssr': 3.5.13 '@vue/shared': 3.5.13 estree-walker: 2.0.2 magic-string: 0.30.17 - postcss: 8.5.1 + postcss: 8.5.3 source-map-js: 1.2.1 '@vue/compiler-ssr@3.5.13': @@ -3238,9 +3021,9 @@ snapshots: '@vue/shared@3.5.13': {} - '@zerodevx/svelte-json-view@1.0.11(svelte@5.10.0)': + '@zerodevx/svelte-json-view@1.0.11(svelte@5.20.4)': dependencies: - svelte: 5.10.0 + svelte: 5.20.4 abort-controller@3.0.0: dependencies: @@ -3357,6 +3140,8 @@ snapshots: strip-ansi: 6.0.1 wrap-ansi: 7.0.0 + clsx@2.1.1: {} + color-convert@2.0.1: dependencies: color-name: 1.1.4 @@ -3373,7 +3158,7 @@ snapshots: consola@3.4.0: {} - covector@0.12.3(mocha@10.8.2): + covector@0.12.4(mocha@10.8.2): dependencies: '@clack/prompts': 0.7.0 '@covector/apply': 0.10.0(mocha@10.8.2) @@ -3385,7 +3170,7 @@ snapshots: globby: 11.1.0 js-yaml: 4.1.0 lodash: 4.17.21 - pino: 9.5.0 + pino: 9.6.0 pino-abstract-transport: 1.2.0 strip-ansi: 6.0.1 yargs: 17.7.2 @@ -3413,7 +3198,7 @@ snapshots: csstype@3.1.3: {} - ctrlc-windows@2.1.0: {} + ctrlc-windows@2.2.0: {} debug@4.4.0(supports-color@8.1.1): dependencies: @@ -3456,61 +3241,33 @@ snapshots: entities@4.5.0: {} - esbuild@0.23.1: + esbuild@0.25.0: optionalDependencies: - '@esbuild/aix-ppc64': 0.23.1 - '@esbuild/android-arm': 0.23.1 - '@esbuild/android-arm64': 0.23.1 - '@esbuild/android-x64': 0.23.1 - '@esbuild/darwin-arm64': 0.23.1 - '@esbuild/darwin-x64': 0.23.1 - '@esbuild/freebsd-arm64': 0.23.1 - '@esbuild/freebsd-x64': 0.23.1 - '@esbuild/linux-arm': 0.23.1 - '@esbuild/linux-arm64': 0.23.1 - '@esbuild/linux-ia32': 0.23.1 - '@esbuild/linux-loong64': 0.23.1 - '@esbuild/linux-mips64el': 0.23.1 - '@esbuild/linux-ppc64': 0.23.1 - '@esbuild/linux-riscv64': 0.23.1 - '@esbuild/linux-s390x': 0.23.1 - '@esbuild/linux-x64': 0.23.1 - '@esbuild/netbsd-x64': 0.23.1 - '@esbuild/openbsd-arm64': 0.23.1 - '@esbuild/openbsd-x64': 0.23.1 - '@esbuild/sunos-x64': 0.23.1 - '@esbuild/win32-arm64': 0.23.1 - '@esbuild/win32-ia32': 0.23.1 - '@esbuild/win32-x64': 0.23.1 - optional: true - - esbuild@0.24.2: - optionalDependencies: - '@esbuild/aix-ppc64': 0.24.2 - '@esbuild/android-arm': 0.24.2 - '@esbuild/android-arm64': 0.24.2 - '@esbuild/android-x64': 0.24.2 - '@esbuild/darwin-arm64': 0.24.2 - '@esbuild/darwin-x64': 0.24.2 - '@esbuild/freebsd-arm64': 0.24.2 - '@esbuild/freebsd-x64': 0.24.2 - '@esbuild/linux-arm': 0.24.2 - '@esbuild/linux-arm64': 0.24.2 - '@esbuild/linux-ia32': 0.24.2 - '@esbuild/linux-loong64': 0.24.2 - '@esbuild/linux-mips64el': 0.24.2 - '@esbuild/linux-ppc64': 0.24.2 - '@esbuild/linux-riscv64': 0.24.2 - '@esbuild/linux-s390x': 0.24.2 - '@esbuild/linux-x64': 0.24.2 - '@esbuild/netbsd-arm64': 0.24.2 - '@esbuild/netbsd-x64': 0.24.2 - '@esbuild/openbsd-arm64': 0.24.2 - '@esbuild/openbsd-x64': 0.24.2 - '@esbuild/sunos-x64': 0.24.2 - '@esbuild/win32-arm64': 0.24.2 - '@esbuild/win32-ia32': 0.24.2 - '@esbuild/win32-x64': 0.24.2 + '@esbuild/aix-ppc64': 0.25.0 + '@esbuild/android-arm': 0.25.0 + '@esbuild/android-arm64': 0.25.0 + '@esbuild/android-x64': 0.25.0 + '@esbuild/darwin-arm64': 0.25.0 + '@esbuild/darwin-x64': 0.25.0 + '@esbuild/freebsd-arm64': 0.25.0 + '@esbuild/freebsd-x64': 0.25.0 + '@esbuild/linux-arm': 0.25.0 + '@esbuild/linux-arm64': 0.25.0 + '@esbuild/linux-ia32': 0.25.0 + '@esbuild/linux-loong64': 0.25.0 + '@esbuild/linux-mips64el': 0.25.0 + '@esbuild/linux-ppc64': 0.25.0 + '@esbuild/linux-riscv64': 0.25.0 + '@esbuild/linux-s390x': 0.25.0 + '@esbuild/linux-x64': 0.25.0 + '@esbuild/netbsd-arm64': 0.25.0 + '@esbuild/netbsd-x64': 0.25.0 + '@esbuild/openbsd-arm64': 0.25.0 + '@esbuild/openbsd-x64': 0.25.0 + '@esbuild/sunos-x64': 0.25.0 + '@esbuild/win32-arm64': 0.25.0 + '@esbuild/win32-ia32': 0.25.0 + '@esbuild/win32-x64': 0.25.0 escalade@3.2.0: {} @@ -3574,7 +3331,7 @@ snapshots: transitivePeerDependencies: - supports-color - esm-env@1.2.1: {} + esm-env@1.2.2: {} espree@10.3.0: dependencies: @@ -3586,10 +3343,9 @@ snapshots: dependencies: estraverse: 5.3.0 - esrap@1.2.3: + esrap@1.4.5: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 - '@types/estree': 1.0.6 esrecurse@4.3.0: dependencies: @@ -3609,7 +3365,7 @@ snapshots: fast-deep-equal@3.1.3: {} - fast-glob@3.3.2: + fast-glob@3.3.3: dependencies: '@nodelib/fs.stat': 2.0.5 '@nodelib/fs.walk': 1.2.8 @@ -3623,15 +3379,15 @@ snapshots: fast-redact@3.5.0: {} - fastq@1.17.1: + fastq@1.19.1: dependencies: - reusify: 1.0.4 + reusify: 1.1.0 fault@1.0.4: dependencies: format: 0.2.2 - fdir@6.4.2(picomatch@4.0.2): + fdir@6.4.3(picomatch@4.0.2): optionalDependencies: picomatch: 4.0.2 @@ -3650,12 +3406,12 @@ snapshots: flat-cache@4.0.1: dependencies: - flatted: 3.3.2 + flatted: 3.3.3 keyv: 4.5.4 flat@5.0.2: {} - flatted@3.3.2: {} + flatted@3.3.3: {} format@0.2.2: {} @@ -3668,7 +3424,7 @@ snapshots: get-caller-file@2.0.5: {} - get-tsconfig@4.8.1: + get-tsconfig@4.10.0: dependencies: resolve-pkg-maps: 1.0.0 optional: true @@ -3691,13 +3447,13 @@ snapshots: globals@14.0.0: {} - globals@15.14.0: {} + globals@15.15.0: {} globby@11.1.0: dependencies: array-union: 2.1.0 dir-glob: 3.0.1 - fast-glob: 3.3.2 + fast-glob: 3.3.3 ignore: 5.3.2 merge2: 1.4.1 slash: 3.0.0 @@ -3720,7 +3476,7 @@ snapshots: ignore@5.3.2: {} - import-fresh@3.3.0: + import-fresh@3.3.1: dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 @@ -3747,7 +3503,7 @@ snapshots: is-buffer@2.0.5: {} - is-core-module@2.15.1: + is-core-module@2.16.1: dependencies: hasown: 2.0.2 @@ -3915,7 +3671,7 @@ snapshots: yargs-parser: 20.2.9 yargs-unparser: 2.0.0 - mrmime@2.0.0: {} + mrmime@2.0.1: {} ms@2.1.3: {} @@ -3923,7 +3679,7 @@ snapshots: natural-compare@1.4.0: {} - node-fetch-native@1.6.4: {} + node-fetch-native@1.6.6: {} node-fetch@2.6.7: dependencies: @@ -3934,7 +3690,7 @@ snapshots: ofetch@1.4.1: dependencies: destr: 2.0.3 - node-fetch-native: 1.6.4 + node-fetch-native: 1.6.6 ufo: 1.5.4 on-exit-leak-free@2.1.2: {} @@ -3995,7 +3751,7 @@ snapshots: pino-abstract-transport@1.2.0: dependencies: - readable-stream: 4.5.2 + readable-stream: 4.7.0 split2: 4.2.0 pino-abstract-transport@2.0.0: @@ -4004,14 +3760,14 @@ snapshots: pino-std-serializers@7.0.0: {} - pino@9.5.0: + pino@9.6.0: dependencies: atomic-sleep: 1.0.0 fast-redact: 3.5.0 on-exit-leak-free: 2.1.2 pino-abstract-transport: 2.0.0 pino-std-serializers: 7.0.0 - process-warning: 4.0.0 + process-warning: 4.0.1 quick-format-unescaped: 4.0.4 real-require: 0.2.0 safe-stable-stringify: 2.5.0 @@ -4024,7 +3780,7 @@ snapshots: mlly: 1.7.4 pathe: 2.0.3 - postcss@8.5.1: + postcss@8.5.3: dependencies: nanoid: 3.3.8 picocolors: 1.1.1 @@ -4034,7 +3790,7 @@ snapshots: prettier@3.5.2: {} - process-warning@4.0.0: {} + process-warning@4.0.1: {} process@0.11.10: {} @@ -4048,7 +3804,7 @@ snapshots: dependencies: safe-buffer: 5.2.1 - readable-stream@4.5.2: + readable-stream@4.7.0: dependencies: abort-controller: 3.0.0 buffer: 6.0.3 @@ -4088,13 +3844,13 @@ snapshots: resolve-pkg-maps@1.0.0: optional: true - resolve@1.22.8: + resolve@1.22.10: dependencies: - is-core-module: 2.15.1 + is-core-module: 2.16.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 - reusify@1.0.4: {} + reusify@1.1.0: {} rollup@4.34.8: dependencies: @@ -4133,7 +3889,7 @@ snapshots: safe-stable-stringify@2.5.0: {} - semver@7.6.3: {} + semver@7.7.1: {} serialize-javascript@6.0.2: dependencies: @@ -4147,10 +3903,10 @@ snapshots: shellwords@0.1.1: {} - sirv@3.0.0: + sirv@3.0.1: dependencies: '@polka/url': 1.0.0-next.28 - mrmime: 2.0.0 + mrmime: 2.0.1 totalist: 3.0.1 sisteransi@1.0.5: {} @@ -4174,7 +3930,7 @@ snapshots: split2@4.2.0: {} - stacktrace-parser@0.1.10: + stacktrace-parser@0.1.11: dependencies: type-fest: 0.7.1 @@ -4204,7 +3960,7 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} - svelte@5.10.0: + svelte@5.20.4: dependencies: '@ampproject/remapping': 2.3.0 '@jridgewell/sourcemap-codec': 1.5.0 @@ -4213,14 +3969,15 @@ snapshots: acorn-typescript: 1.4.13(acorn@8.14.0) aria-query: 5.3.2 axobject-query: 4.1.0 - esm-env: 1.2.1 - esrap: 1.2.3 + clsx: 2.1.1 + esm-env: 1.2.2 + esrap: 1.4.5 is-reference: 3.0.3 locate-character: 3.0.0 magic-string: 0.30.17 zimmerframe: 1.1.2 - terser@5.36.0: + terser@5.39.0: dependencies: '@jridgewell/source-map': 0.3.6 acorn: 8.14.0 @@ -4233,9 +3990,9 @@ snapshots: tinyexec@0.3.2: {} - tinyglobby@0.2.10: + tinyglobby@0.2.12: dependencies: - fdir: 6.4.2(picomatch@4.0.2) + fdir: 6.4.3(picomatch@4.0.2) picomatch: 4.0.2 to-regex-range@5.0.1: @@ -4256,8 +4013,8 @@ snapshots: tsx@4.19.2: dependencies: - esbuild: 0.23.1 - get-tsconfig: 4.8.1 + esbuild: 0.25.0 + get-tsconfig: 4.10.0 optionalDependencies: fsevents: 2.3.3 optional: true @@ -4302,12 +4059,12 @@ snapshots: dependencies: '@types/unist': 2.0.11 - unocss@66.0.0(postcss@8.5.1)(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)): + unocss@66.0.0(postcss@8.5.3)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)): dependencies: - '@unocss/astro': 66.0.0(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) + '@unocss/astro': 66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) '@unocss/cli': 66.0.0 '@unocss/core': 66.0.0 - '@unocss/postcss': 66.0.0(postcss@8.5.1) + '@unocss/postcss': 66.0.0(postcss@8.5.3) '@unocss/preset-attributify': 66.0.0 '@unocss/preset-icons': 66.0.0 '@unocss/preset-mini': 66.0.0 @@ -4321,9 +4078,9 @@ snapshots: '@unocss/transformer-compile-class': 66.0.0 '@unocss/transformer-directives': 66.0.0 '@unocss/transformer-variant-group': 66.0.0 - '@unocss/vite': 66.0.0(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) + '@unocss/vite': 66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) optionalDependencies: - vite: 6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2) + vite: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) transitivePeerDependencies: - postcss - supports-color @@ -4350,20 +4107,20 @@ snapshots: unist-util-stringify-position: 2.0.3 vfile-message: 2.0.4 - vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2): + vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2): dependencies: - esbuild: 0.24.2 - postcss: 8.5.1 + esbuild: 0.25.0 + postcss: 8.5.3 rollup: 4.34.8 optionalDependencies: fsevents: 2.3.3 jiti: 2.4.2 - terser: 5.36.0 + terser: 5.39.0 tsx: 4.19.2 - vitefu@1.0.4(vite@6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2)): + vitefu@1.0.6(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)): optionalDependencies: - vite: 6.0.9(jiti@2.4.2)(terser@5.36.0)(tsx@4.19.2) + vite: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) vue-flow-layout@0.1.1(vue@3.5.13(typescript@5.7.3)): dependencies: @@ -4439,10 +4196,10 @@ snapshots: zimmerframe@1.1.2: {} - zod-validation-error@1.5.0(zod@3.23.8): + zod-validation-error@1.5.0(zod@3.24.2): dependencies: - zod: 3.23.8 + zod: 3.24.2 - zod@3.23.8: {} + zod@3.24.2: {} zwitch@1.0.5: {} diff --git a/shared/rollup.config.js b/shared/rollup.config.js index 09bfb889..3afb1b89 100644 --- a/shared/rollup.config.js +++ b/shared/rollup.config.js @@ -2,9 +2,9 @@ // SPDX-License-Identifier: Apache-2.0 // SPDX-License-Identifier: MIT -import { readFileSync } from 'fs' -import { join } from 'path' -import { cwd } from 'process' +import { readFileSync } from 'node:fs' +import { dirname, join } from 'node:path' +import { cwd } from 'node:process' import { nodeResolve } from '@rollup/plugin-node-resolve' import typescript from '@rollup/plugin-typescript' import terser from '@rollup/plugin-terser' @@ -53,7 +53,7 @@ export function createConfig(options = {}) { plugins: [ typescript({ declaration: true, - declarationDir: `./${pkg.exports.import.split('/')[0]}` + declarationDir: dirname(pkg.exports.import) }) ], external: [ From 8b3cd9e827ce31c506eb1b70e18e55da809c601b Mon Sep 17 00:00:00 2001 From: Tony <68118705+Legend-Master@users.noreply.github.com> Date: Thu, 27 Feb 2025 17:18:15 +0800 Subject: [PATCH 16/80] chore(deps): update tauri to 2.3 (#2466) --- Cargo.lock | 79 +++++++++++++++++++----------------------------------- 1 file changed, 28 insertions(+), 51 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index dcff853f..d7cecf71 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -900,7 +900,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5fbd1fe9db3ebf71b89060adaf7b0504c2d6a425cf061313099547e382c2e472" dependencies = [ "serde", - "toml 0.8.19", + "toml", ] [[package]] @@ -1821,14 +1821,14 @@ dependencies = [ [[package]] name = "embed-resource" -version = "2.5.1" +version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b68b6f9f63a0b6a38bc447d4ce84e2b388f3ec95c99c641c8ff0dd3ef89a6379" +checksum = "4762ce03154ba57ebaeee60cc631901ceae4f18219cbb874e464347471594742" dependencies = [ "cc", "memchr", "rustc_version", - "toml 0.8.19", + "toml", "vswhom", "winreg 0.52.0", ] @@ -2862,9 +2862,9 @@ dependencies = [ [[package]] name = "ico" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3804960be0bb5e4edb1e1ad67afd321a9ecfd875c3e65c099468fd2717d7cae" +checksum = "cc50b891e4acf8fe0e71ef88ec43ad82ee07b3810ad09de10f1d01f072ed4b98" dependencies = [ "byteorder", "png", @@ -3060,15 +3060,6 @@ dependencies = [ "serde", ] -[[package]] -name = "infer" -version = "0.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc150e5ce2330295b8616ce0e3f53250e53af31759a9dbedad1621ba29151847" -dependencies = [ - "cfb", -] - [[package]] name = "infer" version = "0.19.0" @@ -6330,7 +6321,7 @@ dependencies = [ "cfg-expr", "heck 0.5.0", "pkg-config", - "toml 0.8.19", + "toml", "version-compare", ] @@ -6408,13 +6399,13 @@ checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" [[package]] name = "tauri" -version = "2.2.2" +version = "2.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2979ec5ec5a9310b15d1548db3b8de98d8f75abf2b5b00fec9cd5c0553ecc09c" +checksum = "58a998b6be84104ca05c7e9a21f2180ddec020c8b84ea59a8fc8530a2a19588d" dependencies = [ "anyhow", "bytes", - "dirs 5.0.1", + "dirs 6.0.0", "dunce", "embed_plist", "futures-util", @@ -6462,13 +6453,13 @@ dependencies = [ [[package]] name = "tauri-build" -version = "2.0.5" +version = "2.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e950124f6779c6cf98e3260c7a6c8488a74aa6350dd54c6950fdaa349bca2df" +checksum = "51a2e96f3c0baa0581656bb58e6fdd0f7c9c31eaf6721a0c08689d938fe85f2d" dependencies = [ "anyhow", "cargo_toml", - "dirs 5.0.1", + "dirs 6.0.0", "glob", "heck 0.5.0", "json-patch", @@ -6480,15 +6471,15 @@ dependencies = [ "tauri-codegen", "tauri-utils", "tauri-winres", - "toml 0.8.19", + "toml", "walkdir", ] [[package]] name = "tauri-codegen" -version = "2.0.4" +version = "2.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f77894f9ddb5cb6c04fcfe8c8869ebe0aded4dabf19917118d48be4a95599ab5" +checksum = "e357ec3daf8faad1029bc7109e7f5b308ceb63b6073d110d7388923a4cce5e55" dependencies = [ "base64 0.22.1", "brotli", @@ -6527,9 +6518,9 @@ dependencies = [ [[package]] name = "tauri-plugin" -version = "2.0.4" +version = "2.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5841b9a0200e954ef7457f8d327091424328891e267a97b641dc246cc54d0dec" +checksum = "0ad3021d8e60ec7672f51ecb67c5e1a514a4d7a9a5ffc9d85090739378047502" dependencies = [ "anyhow", "glob", @@ -6538,7 +6529,7 @@ dependencies = [ "serde", "serde_json", "tauri-utils", - "toml 0.8.19", + "toml", "walkdir", ] @@ -6657,7 +6648,7 @@ dependencies = [ "tauri-plugin", "tauri-utils", "thiserror 2.0.9", - "toml 0.8.19", + "toml", "url", "uuid", ] @@ -6956,7 +6947,7 @@ dependencies = [ "flate2", "futures-util", "http", - "infer 0.19.0", + "infer", "minisign-verify", "osakit", "percent-encoding", @@ -7071,9 +7062,9 @@ dependencies = [ [[package]] name = "tauri-utils" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96fb10e7cc97456b2d5b9c03e335b5de5da982039a303a20d10006885e4523a0" +checksum = "107a959dbd5ff53d89a98f6f2e3e987c611334141a43630caae1d80e79446dd6" dependencies = [ "aes-gcm", "brotli", @@ -7084,7 +7075,7 @@ dependencies = [ "glob", "html5ever", "http", - "infer 0.16.0", + "infer", "json-patch", "kuchikiki", "log", @@ -7102,7 +7093,7 @@ dependencies = [ "serialize-to-javascript", "swift-rs", "thiserror 2.0.9", - "toml 0.8.19", + "toml", "url", "urlpattern", "uuid", @@ -7111,12 +7102,12 @@ dependencies = [ [[package]] name = "tauri-winres" -version = "0.1.1" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5993dc129e544393574288923d1ec447c857f3f644187f4fbf7d9a875fbfc4fb" +checksum = "56eaa45f707bedf34d19312c26d350bc0f3c59a47e58e8adbeecdc850d2c13a0" dependencies = [ "embed-resource", - "toml 0.7.8", + "toml", ] [[package]] @@ -7405,18 +7396,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "toml" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257" -dependencies = [ - "serde", - "serde_spanned", - "toml_datetime", - "toml_edit 0.19.15", -] - [[package]] name = "toml" version = "0.8.19" @@ -7445,8 +7424,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ "indexmap 2.7.0", - "serde", - "serde_spanned", "toml_datetime", "winnow 0.5.40", ] From 71f95c9f05b29cf1be586849614c0b007757c15d Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 27 Feb 2025 11:45:55 +0100 Subject: [PATCH 17/80] chore(deps): update rust crate windows to 0.60 (v2) (#2445) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: FabianLars --- .changes/windows060.md | 6 + Cargo.lock | 519 ++++++++++++++++++----------------- plugins/deep-link/src/lib.rs | 9 +- plugins/fs/src/file_path.rs | 10 +- plugins/opener/Cargo.toml | 2 +- plugins/opener/src/lib.rs | 4 +- plugins/shell/src/lib.rs | 2 +- 7 files changed, 289 insertions(+), 263 deletions(-) create mode 100644 .changes/windows060.md diff --git a/.changes/windows060.md b/.changes/windows060.md new file mode 100644 index 00000000..522a3c7c --- /dev/null +++ b/.changes/windows060.md @@ -0,0 +1,6 @@ +--- +opener: patch +opener-js: patch +--- + +Updated `windows` crate to 0.60 to match Tauri 2.3.0. No user facing changes. diff --git a/Cargo.lock b/Cargo.lock index d7cecf71..31406b1c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -291,9 +291,9 @@ dependencies = [ "core-graphics 0.23.2", "image", "log", - "objc2", - "objc2-app-kit", - "objc2-foundation", + "objc2 0.5.2", + "objc2-app-kit 0.2.2", + "objc2-foundation 0.2.2", "parking_lot", "windows-sys 0.48.0", "x11rb", @@ -701,7 +701,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e58aa60e59d8dbfcc36138f5f18be5f24394d33b38b24f7fd0b1caa33095f22f" dependencies = [ "block-sys", - "objc2", + "objc2 0.5.2", ] [[package]] @@ -710,7 +710,16 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c132eebf10f5cad5289222520a4a058514204aed6d791f1cf4fe8088b82d15f" dependencies = [ - "objc2", + "objc2 0.5.2", +] + +[[package]] +name = "block2" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d59b4c170e16f0405a2e95aff44432a0d41aa97675f3d52623effe95792a037" +dependencies = [ + "objc2 0.6.0", ] [[package]] @@ -1041,36 +1050,6 @@ dependencies = [ "error-code", ] -[[package]] -name = "cocoa" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f79398230a6e2c08f5c9760610eb6924b52aa9e7950a619602baba59dcbbdbb2" -dependencies = [ - "bitflags 2.7.0", - "block", - "cocoa-foundation", - "core-foundation 0.10.0", - "core-graphics 0.24.0", - "foreign-types 0.5.0", - "libc", - "objc", -] - -[[package]] -name = "cocoa-foundation" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e14045fb83be07b5acf1c0884b2180461635b433455fa35d1cd6f17f1450679d" -dependencies = [ - "bitflags 2.7.0", - "block", - "core-foundation 0.10.0", - "core-graphics-types 0.2.0", - "libc", - "objc", -] - [[package]] name = "color-backtrace" version = "0.7.0" @@ -1564,15 +1543,6 @@ dependencies = [ "dirs-sys 0.3.7", ] -[[package]] -name = "dirs" -version = "5.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" -dependencies = [ - "dirs-sys 0.4.1", -] - [[package]] name = "dirs" version = "6.0.0" @@ -1603,18 +1573,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "dirs-sys" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" -dependencies = [ - "libc", - "option-ext", - "redox_users 0.4.6", - "windows-sys 0.48.0", -] - [[package]] name = "dirs-sys" version = "0.5.0" @@ -2509,8 +2467,8 @@ checksum = "b00d88f1be7bf4cd2e61623ce08e84be2dfa4eab458e5d632d3dab95f16c1f64" dependencies = [ "crossbeam-channel", "keyboard-types", - "objc2", - "objc2-app-kit", + "objc2 0.5.2", + "objc2-app-kit 0.2.2", "once_cell", "serde", "thiserror 1.0.69", @@ -2877,7 +2835,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3fb69199826926eb864697bddd27f73d9fddcffc004f5733131e15b465e30642" dependencies = [ "block2 0.4.0", - "objc2", + "objc2 0.5.2", ] [[package]] @@ -3675,21 +3633,22 @@ dependencies = [ [[package]] name = "muda" -version = "0.15.3" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdae9c00e61cc0579bcac625e8ad22104c60548a025bfc972dc83868a28e1484" +checksum = "89fed9ce3e5c01700e3a129d3d74619bbf468645b58274b420885107e496ecff" dependencies = [ "crossbeam-channel", "dpi", "gtk", "keyboard-types", - "objc2", - "objc2-app-kit", - "objc2-foundation", + "objc2 0.6.0", + "objc2-app-kit 0.3.0", + "objc2-core-foundation", + "objc2-foundation 0.3.0", "once_cell", "png", "serde", - "thiserror 1.0.69", + "thiserror 2.0.9", "windows-sys 0.59.0", ] @@ -3949,9 +3908,6 @@ name = "objc-sys" version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cdb91bdd390c7ce1a8607f35f3ca7151b65afc0ff5ff3b34fa350f7d7c7e4310" -dependencies = [ - "cc", -] [[package]] name = "objc2" @@ -3963,6 +3919,16 @@ dependencies = [ "objc2-encode", ] +[[package]] +name = "objc2" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3531f65190d9cff863b77a99857e74c314dd16bf56c538c4b57c7cbc3f3a6e59" +dependencies = [ + "objc2-encode", + "objc2-exception-helper", +] + [[package]] name = "objc2-app-kit" version = "0.2.2" @@ -3972,35 +3938,41 @@ dependencies = [ "bitflags 2.7.0", "block2 0.5.1", "libc", - "objc2", - "objc2-core-data", - "objc2-core-image", - "objc2-foundation", - "objc2-quartz-core", + "objc2 0.5.2", + "objc2-core-data 0.2.2", + "objc2-core-image 0.2.2", + "objc2-foundation 0.2.2", + "objc2-quartz-core 0.2.2", ] [[package]] -name = "objc2-cloud-kit" -version = "0.2.2" +name = "objc2-app-kit" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74dd3b56391c7a0596a295029734d3c1c5e7e510a4cb30245f8221ccea96b009" +checksum = "5906f93257178e2f7ae069efb89fbd6ee94f0592740b5f8a1512ca498814d0fb" dependencies = [ "bitflags 2.7.0", - "block2 0.5.1", - "objc2", - "objc2-core-location", - "objc2-foundation", + "block2 0.6.0", + "libc", + "objc2 0.6.0", + "objc2-cloud-kit", + "objc2-core-data 0.3.0", + "objc2-core-foundation", + "objc2-core-graphics", + "objc2-core-image 0.3.0", + "objc2-foundation 0.3.0", + "objc2-quartz-core 0.3.0", ] [[package]] -name = "objc2-contacts" -version = "0.2.2" +name = "objc2-cloud-kit" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5ff520e9c33812fd374d8deecef01d4a840e7b41862d849513de77e44aa4889" +checksum = "6c1948a9be5f469deadbd6bcb86ad7ff9e47b4f632380139722f7d9840c0d42c" dependencies = [ - "block2 0.5.1", - "objc2", - "objc2-foundation", + "bitflags 2.7.0", + "objc2 0.6.0", + "objc2-foundation 0.3.0", ] [[package]] @@ -4011,8 +3983,41 @@ checksum = "617fbf49e071c178c0b24c080767db52958f716d9eabdf0890523aeae54773ef" dependencies = [ "bitflags 2.7.0", "block2 0.5.1", - "objc2", - "objc2-foundation", + "objc2 0.5.2", + "objc2-foundation 0.2.2", +] + +[[package]] +name = "objc2-core-data" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f860f8e841f6d32f754836f51e6bc7777cd7e7053cf18528233f6811d3eceb4" +dependencies = [ + "bitflags 2.7.0", + "objc2 0.6.0", + "objc2-foundation 0.3.0", +] + +[[package]] +name = "objc2-core-foundation" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "daeaf60f25471d26948a1c2f840e3f7d86f4109e3af4e8e4b5cd70c39690d925" +dependencies = [ + "bitflags 2.7.0", + "objc2 0.6.0", +] + +[[package]] +name = "objc2-core-graphics" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dca602628b65356b6513290a21a6405b4d4027b8b250f0b98dddbb28b7de02" +dependencies = [ + "bitflags 2.7.0", + "objc2 0.6.0", + "objc2-core-foundation", + "objc2-io-surface", ] [[package]] @@ -4022,28 +4027,35 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "55260963a527c99f1819c4f8e3b47fe04f9650694ef348ffd2227e8196d34c80" dependencies = [ "block2 0.5.1", - "objc2", - "objc2-foundation", + "objc2 0.5.2", + "objc2-foundation 0.2.2", "objc2-metal", ] [[package]] -name = "objc2-core-location" -version = "0.2.2" +name = "objc2-core-image" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "000cfee34e683244f284252ee206a27953279d370e309649dc3ee317b37e5781" +checksum = "6ffa6bea72bf42c78b0b34e89c0bafac877d5f80bf91e159a5d96ea7f693ca56" dependencies = [ - "block2 0.5.1", - "objc2", - "objc2-contacts", - "objc2-foundation", + "objc2 0.6.0", + "objc2-foundation 0.3.0", ] [[package]] name = "objc2-encode" -version = "4.0.3" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7891e71393cd1f227313c9379a26a584ff3d7e6e7159e988851f0934c993f0f8" +checksum = "ef25abbcd74fb2609453eb695bd2f860d389e457f67dc17cafc8b8cbc89d0c33" + +[[package]] +name = "objc2-exception-helper" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7a1c5fbb72d7735b076bb47b578523aedc40f3c439bea6dfd595c089d79d98a" +dependencies = [ + "cc", +] [[package]] name = "objc2-foundation" @@ -4055,19 +4067,31 @@ dependencies = [ "block2 0.5.1", "dispatch", "libc", - "objc2", + "objc2 0.5.2", ] [[package]] -name = "objc2-link-presentation" -version = "0.2.2" +name = "objc2-foundation" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1a1ae721c5e35be65f01a03b6d2ac13a54cb4fa70d8a5da293d7b0020261398" +checksum = "3a21c6c9014b82c39515db5b396f91645182611c97d24637cf56ac01e5f8d998" dependencies = [ - "block2 0.5.1", - "objc2", - "objc2-app-kit", - "objc2-foundation", + "bitflags 2.7.0", + "block2 0.6.0", + "libc", + "objc2 0.6.0", + "objc2-core-foundation", +] + +[[package]] +name = "objc2-io-surface" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "161a8b87e32610086e1a7a9e9ec39f84459db7b3a0881c1f16ca5a2605581c19" +dependencies = [ + "bitflags 2.7.0", + "objc2 0.6.0", + "objc2-core-foundation", ] [[package]] @@ -4078,8 +4102,8 @@ checksum = "dd0cba1276f6023976a406a14ffa85e1fdd19df6b0f737b063b95f6c8c7aadd6" dependencies = [ "bitflags 2.7.0", "block2 0.5.1", - "objc2", - "objc2-foundation", + "objc2 0.5.2", + "objc2-foundation 0.2.2", ] [[package]] @@ -4089,9 +4113,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6788b04a18ea31e3dc3ab256b8546639e5bbae07c1a0dc4ea8615252bc6aee9a" dependencies = [ "bitflags 2.7.0", - "objc2", - "objc2-app-kit", - "objc2-foundation", + "objc2 0.5.2", + "objc2-app-kit 0.2.2", + "objc2-foundation 0.2.2", ] [[package]] @@ -4102,77 +4126,46 @@ checksum = "e42bee7bff906b14b167da2bac5efe6b6a07e6f7c0a21a7308d40c960242dc7a" dependencies = [ "bitflags 2.7.0", "block2 0.5.1", - "objc2", - "objc2-foundation", + "objc2 0.5.2", + "objc2-foundation 0.2.2", "objc2-metal", ] [[package]] -name = "objc2-symbols" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a684efe3dec1b305badae1a28f6555f6ddd3bb2c2267896782858d5a78404dc" -dependencies = [ - "objc2", - "objc2-foundation", -] - -[[package]] -name = "objc2-ui-kit" -version = "0.2.2" +name = "objc2-quartz-core" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8bb46798b20cd6b91cbd113524c490f1686f4c4e8f49502431415f3512e2b6f" +checksum = "6fb3794501bb1bee12f08dcad8c61f2a5875791ad1c6f47faa71a0f033f20071" dependencies = [ "bitflags 2.7.0", - "block2 0.5.1", - "objc2", - "objc2-cloud-kit", - "objc2-core-data", - "objc2-core-image", - "objc2-core-location", - "objc2-foundation", - "objc2-link-presentation", - "objc2-quartz-core", - "objc2-symbols", - "objc2-uniform-type-identifiers", - "objc2-user-notifications", + "objc2 0.6.0", + "objc2-foundation 0.3.0", ] [[package]] -name = "objc2-uniform-type-identifiers" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44fa5f9748dbfe1ca6c0b79ad20725a11eca7c2218bceb4b005cb1be26273bfe" -dependencies = [ - "block2 0.5.1", - "objc2", - "objc2-foundation", -] - -[[package]] -name = "objc2-user-notifications" -version = "0.2.2" +name = "objc2-ui-kit" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76cfcbf642358e8689af64cee815d139339f3ed8ad05103ed5eaf73db8d84cb3" +checksum = "777a571be14a42a3990d4ebedaeb8b54cd17377ec21b92e8200ac03797b3bee1" dependencies = [ "bitflags 2.7.0", - "block2 0.5.1", - "objc2", - "objc2-core-location", - "objc2-foundation", + "objc2 0.6.0", + "objc2-core-foundation", + "objc2-foundation 0.3.0", ] [[package]] name = "objc2-web-kit" -version = "0.2.2" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68bc69301064cebefc6c4c90ce9cba69225239e4b8ff99d445a2b5563797da65" +checksum = "b717127e4014b0f9f3e8bba3d3f2acec81f1bde01f656823036e823ed2c94dce" dependencies = [ "bitflags 2.7.0", - "block2 0.5.1", - "objc2", - "objc2-app-kit", - "objc2-foundation", + "block2 0.6.0", + "objc2 0.6.0", + "objc2-app-kit 0.3.0", + "objc2-core-foundation", + "objc2-foundation 0.3.0", ] [[package]] @@ -4324,7 +4317,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "35366a452fce3f8947eb2f33226a133aaf0cacedef2af67ade348d58be7f85d0" dependencies = [ "icrate", - "objc2-foundation", + "objc2-foundation 0.2.2", "objc2-osa-kit", "serde", "serde_json", @@ -5141,9 +5134,9 @@ dependencies = [ "gtk-sys", "js-sys", "log", - "objc2", - "objc2-app-kit", - "objc2-foundation", + "objc2 0.5.2", + "objc2-app-kit 0.2.2", + "objc2-foundation 0.2.2", "raw-window-handle", "wasm-bindgen", "wasm-bindgen-futures", @@ -5821,9 +5814,9 @@ dependencies = [ "foreign-types 0.5.0", "js-sys", "log", - "objc2", - "objc2-foundation", - "objc2-quartz-core", + "objc2 0.5.2", + "objc2-foundation 0.2.2", + "objc2-quartz-core 0.2.2", "raw-window-handle", "redox_syscall", "wasm-bindgen", @@ -6327,12 +6320,11 @@ dependencies = [ [[package]] name = "tao" -version = "0.31.1" +version = "0.32.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3731d04d4ac210cd5f344087733943b9bfb1a32654387dad4d1c70de21aee2c9" +checksum = "3d8f5e5fe19612f3dd187ac3928d48f5ad23d3edd9821806d05b0c3beb6537bd" dependencies = [ "bitflags 2.7.0", - "cocoa", "core-foundation 0.10.0", "core-graphics 0.24.0", "crossbeam-channel", @@ -6349,7 +6341,9 @@ dependencies = [ "ndk", "ndk-context", "ndk-sys", - "objc", + "objc2 0.6.0", + "objc2-app-kit 0.3.0", + "objc2-foundation 0.3.0", "once_cell", "parking_lot", "raw-window-handle", @@ -6357,8 +6351,8 @@ dependencies = [ "tao-macros", "unicode-segmentation", "url", - "windows 0.58.0", - "windows-core 0.58.0", + "windows 0.60.0", + "windows-core 0.60.1", "windows-version", "x11-dl", ] @@ -6399,9 +6393,9 @@ checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" [[package]] name = "tauri" -version = "2.2.5" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58a998b6be84104ca05c7e9a21f2180ddec020c8b84ea59a8fc8530a2a19588d" +checksum = "0f32eadd4a507f1b61e4fd1f792d0ed4184127a3241ff5bcb1848b9a574a58d6" dependencies = [ "anyhow", "bytes", @@ -6421,9 +6415,9 @@ dependencies = [ "log", "mime", "muda", - "objc2", - "objc2-app-kit", - "objc2-foundation", + "objc2 0.6.0", + "objc2-app-kit 0.3.0", + "objc2-foundation 0.3.0", "percent-encoding", "plist", "raw-window-handle", @@ -6448,7 +6442,7 @@ dependencies = [ "webkit2gtk", "webview2-com", "window-vibrancy", - "windows 0.58.0", + "windows 0.60.0", ] [[package]] @@ -6504,9 +6498,9 @@ dependencies = [ [[package]] name = "tauri-macros" -version = "2.0.4" +version = "2.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3240a5caed760a532e8f687be6f05b2c7d11a1d791fb53ccc08cfeb3e5308736" +checksum = "447ee4dd94690d77f1422f2b57e783c654ba75c535ad6f6e727887330804fff2" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -6734,8 +6728,8 @@ dependencies = [ "byte-unit", "fern", "log", - "objc2", - "objc2-foundation", + "objc2 0.5.2", + "objc2-foundation 0.2.2", "serde", "serde_json", "serde_repr", @@ -6787,8 +6781,8 @@ version = "2.2.5" dependencies = [ "dunce", "glob", - "objc2-app-kit", - "objc2-foundation", + "objc2-app-kit 0.2.2", + "objc2-foundation 0.2.2", "open", "schemars", "serde", @@ -6797,7 +6791,7 @@ dependencies = [ "tauri-plugin", "thiserror 2.0.9", "url", - "windows 0.58.0", + "windows 0.60.0", "zbus", ] @@ -7017,9 +7011,9 @@ dependencies = [ [[package]] name = "tauri-runtime" -version = "2.3.0" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2274ef891ccc0a8d318deffa9d70053f947664d12d58b9c0d1ae5e89237e01f7" +checksum = "e758a405ab39e25f4d1235c5f06fe563f44b01ee18bbe38ddec5356d4f581908" dependencies = [ "dpi", "gtk", @@ -7031,22 +7025,22 @@ dependencies = [ "tauri-utils", "thiserror 2.0.9", "url", - "windows 0.58.0", + "windows 0.60.0", ] [[package]] name = "tauri-runtime-wry" -version = "2.3.0" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3707b40711d3b9f6519150869e358ffbde7c57567fb9b5a8b51150606939b2a0" +checksum = "5ef46e0c9c30d3524990cb10556f82cde0aa2281e9600e7ed2f499842db8b080" dependencies = [ "gtk", "http", "jni", "log", - "objc2", - "objc2-app-kit", - "objc2-foundation", + "objc2 0.6.0", + "objc2-app-kit 0.3.0", + "objc2-foundation 0.3.0", "percent-encoding", "raw-window-handle", "softbuffer", @@ -7056,7 +7050,7 @@ dependencies = [ "url", "webkit2gtk", "webview2-com", - "windows 0.58.0", + "windows 0.60.0", "wry", ] @@ -7492,22 +7486,23 @@ dependencies = [ [[package]] name = "tray-icon" -version = "0.19.2" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d48a05076dd272615d03033bf04f480199f7d1b66a8ac64d75c625fc4a70c06b" +checksum = "d433764348e7084bad2c5ea22c96c71b61b17afe3a11645710f533bd72b6a2b5" dependencies = [ - "core-graphics 0.24.0", "crossbeam-channel", - "dirs 5.0.1", + "dirs 6.0.0", "libappindicator", "muda", - "objc2", - "objc2-app-kit", - "objc2-foundation", + "objc2 0.6.0", + "objc2-app-kit 0.3.0", + "objc2-core-foundation", + "objc2-core-graphics", + "objc2-foundation 0.3.0", "once_cell", "png", "serde", - "thiserror 1.0.69", + "thiserror 2.0.9", "windows-sys 0.59.0", ] @@ -8078,16 +8073,16 @@ dependencies = [ [[package]] name = "webview2-com" -version = "0.34.0" +version = "0.36.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "823e7ebcfaea51e78f72c87fc3b65a1e602c321f407a0b36dbb327d7bb7cd921" +checksum = "b0d606f600e5272b514dbb66539dd068211cc20155be8d3958201b4b5bd79ed3" dependencies = [ "webview2-com-macros", "webview2-com-sys", - "windows 0.58.0", - "windows-core 0.58.0", - "windows-implement 0.58.0", - "windows-interface 0.58.0", + "windows 0.60.0", + "windows-core 0.60.1", + "windows-implement 0.59.0", + "windows-interface 0.59.0", ] [[package]] @@ -8103,13 +8098,13 @@ dependencies = [ [[package]] name = "webview2-com-sys" -version = "0.34.0" +version = "0.36.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a82bce72db6e5ee83c68b5de1e2cd6ea195b9fbff91cb37df5884cbe3222df4" +checksum = "bfb27fccd3c27f68e9a6af1bcf48c2d82534b8675b83608a4d81446d095a17ac" dependencies = [ - "thiserror 1.0.69", - "windows 0.58.0", - "windows-core 0.58.0", + "thiserror 2.0.9", + "windows 0.60.0", + "windows-core 0.60.1", ] [[package]] @@ -8171,13 +8166,14 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "window-vibrancy" -version = "0.5.2" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ea403deff7b51fff19e261330f71608ff2cdef5721d72b64180bb95be7c4150" +checksum = "d9bec5a31f3f9362f2258fd0e9c9dd61a9ca432e7306cc78c444258f0dce9a9c" dependencies = [ - "objc2", - "objc2-app-kit", - "objc2-foundation", + "objc2 0.6.0", + "objc2-app-kit 0.3.0", + "objc2-core-foundation", + "objc2-foundation 0.3.0", "raw-window-handle", "windows-sys 0.59.0", "windows-version", @@ -8208,12 +8204,24 @@ dependencies = [ [[package]] name = "windows" -version = "0.58.0" +version = "0.60.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd04d41d93c4992d421894c18c8b43496aa748dd4c081bac0dc93eb0489272b6" +checksum = "ddf874e74c7a99773e62b1c671427abf01a425e77c3d3fb9fb1e4883ea934529" dependencies = [ - "windows-core 0.58.0", - "windows-targets 0.52.6", + "windows-collections", + "windows-core 0.60.1", + "windows-future", + "windows-link", + "windows-numerics", +] + +[[package]] +name = "windows-collections" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5467f79cc1ba3f52ebb2ed41dbb459b8e7db636cc3429458d9a852e15bc24dec" +dependencies = [ + "windows-core 0.60.1", ] [[package]] @@ -8239,15 +8247,25 @@ dependencies = [ [[package]] name = "windows-core" -version = "0.58.0" +version = "0.60.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ba6d44ec8c2591c134257ce647b7ea6b20335bf6379a27dac5f1641fcf59f99" +checksum = "ca21a92a9cae9bf4ccae5cf8368dce0837100ddf6e6d57936749e85f152f6247" dependencies = [ - "windows-implement 0.58.0", - "windows-interface 0.58.0", - "windows-result 0.2.0", - "windows-strings 0.1.0", - "windows-targets 0.52.6", + "windows-implement 0.59.0", + "windows-interface 0.59.0", + "windows-link", + "windows-result 0.3.1", + "windows-strings 0.3.1", +] + +[[package]] +name = "windows-future" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a787db4595e7eb80239b74ce8babfb1363d8e343ab072f2ffe901400c03349f0" +dependencies = [ + "windows-core 0.60.1", + "windows-link", ] [[package]] @@ -8263,9 +8281,9 @@ dependencies = [ [[package]] name = "windows-implement" -version = "0.58.0" +version = "0.59.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" +checksum = "83577b051e2f49a058c308f17f273b570a6a758386fc291b5f6a934dd84e48c1" dependencies = [ "proc-macro2", "quote", @@ -8285,9 +8303,9 @@ dependencies = [ [[package]] name = "windows-interface" -version = "0.58.0" +version = "0.59.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" +checksum = "cb26fd936d991781ea39e87c3a27285081e3c0da5ca0fcbc02d368cc6f52ff01" dependencies = [ "proc-macro2", "quote", @@ -8300,6 +8318,16 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6dccfd733ce2b1753b03b6d3c65edf020262ea35e20ccdf3e288043e6dd620e3" +[[package]] +name = "windows-numerics" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "005dea54e2f6499f2cee279b8f703b3cf3b5734a2d8d21867c8f44003182eeed" +dependencies = [ + "windows-core 0.60.1", + "windows-link", +] + [[package]] name = "windows-registry" version = "0.2.0" @@ -8672,12 +8700,12 @@ checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" [[package]] name = "wry" -version = "0.48.0" +version = "0.50.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e644bf458e27b11b0ecafc9e5633d1304fdae82baca1d42185669752fe6ca4f" +checksum = "2a5eabce267929af61619166232d5221aeec2d7af8712bc33cf54a78416ad711" dependencies = [ "base64 0.22.1", - "block2 0.5.1", + "block2 0.6.0", "cookie", "crossbeam-channel", "dpi", @@ -8691,9 +8719,10 @@ dependencies = [ "kuchikiki", "libc", "ndk", - "objc2", - "objc2-app-kit", - "objc2-foundation", + "objc2 0.6.0", + "objc2-app-kit 0.3.0", + "objc2-core-foundation", + "objc2-foundation 0.3.0", "objc2-ui-kit", "objc2-web-kit", "once_cell", @@ -8707,8 +8736,8 @@ dependencies = [ "webkit2gtk", "webkit2gtk-sys", "webview2-com", - "windows 0.58.0", - "windows-core 0.58.0", + "windows 0.60.0", + "windows-core 0.60.1", "windows-version", "x11-dl", ] diff --git a/plugins/deep-link/src/lib.rs b/plugins/deep-link/src/lib.rs index c259e6b2..f5565319 100644 --- a/plugins/deep-link/src/lib.rs +++ b/plugins/deep-link/src/lib.rs @@ -265,18 +265,15 @@ mod imp { .to_string(); let key_reg = CURRENT_USER.create(&key_base)?; - key_reg.set_string( - "", - &format!("URL:{} protocol", self.app.config().identifier), - )?; + key_reg.set_string("", format!("URL:{} protocol", self.app.config().identifier))?; key_reg.set_string("URL Protocol", "")?; let icon_reg = CURRENT_USER.create(format!("{key_base}\\DefaultIcon"))?; - icon_reg.set_string("", &format!("{exe},0"))?; + icon_reg.set_string("", format!("{exe},0"))?; let cmd_reg = CURRENT_USER.create(format!("{key_base}\\shell\\open\\command"))?; - cmd_reg.set_string("", &format!("\"{exe}\" \"%1\""))?; + cmd_reg.set_string("", format!("\"{exe}\" \"%1\""))?; Ok(()) } diff --git a/plugins/fs/src/file_path.rs b/plugins/fs/src/file_path.rs index 735fc105..6316a248 100644 --- a/plugins/fs/src/file_path.rs +++ b/plugins/fs/src/file_path.rs @@ -53,10 +53,7 @@ impl FilePath { #[inline] pub fn into_path(self) -> Result { match self { - Self::Url(url) => url - .to_file_path() - .map(PathBuf::from) - .map_err(|_| Error::InvalidPathUrl), + Self::Url(url) => url.to_file_path().map_err(|_| Error::InvalidPathUrl), Self::Path(p) => Ok(p), } } @@ -91,10 +88,7 @@ impl SafeFilePath { #[inline] pub fn into_path(self) -> Result { match self { - Self::Url(url) => url - .to_file_path() - .map(PathBuf::from) - .map_err(|_| Error::InvalidPathUrl), + Self::Url(url) => url.to_file_path().map_err(|_| Error::InvalidPathUrl), Self::Path(p) => Ok(p.as_ref().to_owned()), } } diff --git a/plugins/opener/Cargo.toml b/plugins/opener/Cargo.toml index 044d2796..9c5b53c8 100644 --- a/plugins/opener/Cargo.toml +++ b/plugins/opener/Cargo.toml @@ -40,7 +40,7 @@ glob = { workspace = true } dunce = { workspace = true } [target."cfg(windows)".dependencies.windows] -version = "0.58" +version = "0.60" features = [ "Win32_Foundation", "Win32_UI_Shell_Common", diff --git a/plugins/opener/src/lib.rs b/plugins/opener/src/lib.rs index 1cb78b86..9934b0fc 100644 --- a/plugins/opener/src/lib.rs +++ b/plugins/opener/src/lib.rs @@ -56,7 +56,7 @@ impl Opener { /// - **Android / iOS**: Always opens using default program. #[cfg(desktop)] pub fn open_url(&self, url: impl Into, with: Option>) -> Result<()> { - crate::open::open(url.into(), with.map(Into::into)).map_err(Into::into) + crate::open::open(url.into(), with.map(Into::into)) } /// Open a url with a default or specific program. @@ -108,7 +108,7 @@ impl Opener { path: impl Into, with: Option>, ) -> Result<()> { - crate::open::open(path.into(), with.map(Into::into)).map_err(Into::into) + crate::open::open(path.into(), with.map(Into::into)) } /// Open a path with a default or specific program. diff --git a/plugins/shell/src/lib.rs b/plugins/shell/src/lib.rs index 64cc6122..3dffc50b 100644 --- a/plugins/shell/src/lib.rs +++ b/plugins/shell/src/lib.rs @@ -75,7 +75,7 @@ impl Shell { #[deprecated(since = "2.1.0", note = "Use tauri-plugin-opener instead.")] #[allow(deprecated)] pub fn open(&self, path: impl Into, with: Option) -> Result<()> { - open::open(&self.open_scope, path.into(), with).map_err(Into::into) + open::open(&self.open_scope, path.into(), with) } /// Open a (url) path with a default or specific browser opening program. From 1a9846599b6a71faf330845847a30f6bf9735898 Mon Sep 17 00:00:00 2001 From: Fabian-Lars Date: Thu, 27 Feb 2025 15:24:18 +0100 Subject: [PATCH 18/80] chore(deps): Update objc2 to 0.6 (#2469) --- .changes/objc06.md | 8 ++++++ Cargo.lock | 28 +++++++++---------- plugins/log/Cargo.toml | 4 +-- plugins/opener/Cargo.toml | 4 +-- plugins/opener/src/reveal_item_in_dir.rs | 2 +- plugins/updater/src/updater.rs | 5 +++- .../updater/tests/app-updater/tests/update.rs | 2 -- .../tests/updater-migration/tests/update.rs | 4 --- 8 files changed, 31 insertions(+), 26 deletions(-) create mode 100644 .changes/objc06.md diff --git a/.changes/objc06.md b/.changes/objc06.md new file mode 100644 index 00000000..3d50c8e8 --- /dev/null +++ b/.changes/objc06.md @@ -0,0 +1,8 @@ +--- +log: patch +log-js: patch +opener: patch +opener-js: patch +--- + +Update `objc2` crate to 0.6. No user facing changes. diff --git a/Cargo.lock b/Cargo.lock index 31406b1c..2db92e08 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1866,7 +1866,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" dependencies = [ "libc", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -2461,17 +2461,17 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" [[package]] name = "global-hotkey" -version = "0.6.3" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b00d88f1be7bf4cd2e61623ce08e84be2dfa4eab458e5d632d3dab95f16c1f64" +checksum = "41fbb3a4e56c901ee66c190fdb3fa08344e6d09593cc6c61f8eb9add7144b271" dependencies = [ "crossbeam-channel", "keyboard-types", - "objc2 0.5.2", - "objc2-app-kit 0.2.2", + "objc2 0.6.0", + "objc2-app-kit 0.3.0", "once_cell", "serde", - "thiserror 1.0.69", + "thiserror 2.0.9", "windows-sys 0.59.0", "x11-dl", ] @@ -3378,7 +3378,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34" dependencies = [ "cfg-if", - "windows-targets 0.52.6", + "windows-targets 0.48.5", ] [[package]] @@ -4869,7 +4869,7 @@ dependencies = [ "once_cell", "socket2", "tracing", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -6728,8 +6728,8 @@ dependencies = [ "byte-unit", "fern", "log", - "objc2 0.5.2", - "objc2-foundation 0.2.2", + "objc2 0.6.0", + "objc2-foundation 0.3.0", "serde", "serde_json", "serde_repr", @@ -6781,8 +6781,8 @@ version = "2.2.5" dependencies = [ "dunce", "glob", - "objc2-app-kit 0.2.2", - "objc2-foundation 0.2.2", + "objc2-app-kit 0.3.0", + "objc2-foundation 0.3.0", "open", "schemars", "serde", @@ -7125,7 +7125,7 @@ dependencies = [ "fastrand", "once_cell", "rustix", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -8155,7 +8155,7 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.48.0", ] [[package]] diff --git a/plugins/log/Cargo.toml b/plugins/log/Cargo.toml index e1cec499..c7a7c90b 100644 --- a/plugins/log/Cargo.toml +++ b/plugins/log/Cargo.toml @@ -39,8 +39,8 @@ android_logger = "0.14" [target."cfg(target_os = \"ios\")".dependencies] swift-rs = "1" -objc2 = "0.5" -objc2-foundation = { version = "0.2", default-features = false, features = [ +objc2 = "0.6" +objc2-foundation = { version = "0.3", default-features = false, features = [ "std", "NSString", ] } diff --git a/plugins/opener/Cargo.toml b/plugins/opener/Cargo.toml index 9c5b53c8..06e487d1 100644 --- a/plugins/opener/Cargo.toml +++ b/plugins/opener/Cargo.toml @@ -54,12 +54,12 @@ zbus = { workspace = true } url = { workspace = true } [target."cfg(target_os = \"macos\")".dependencies.objc2-app-kit] -version = "0.2" +version = "0.3" default-features = false features = ["std", "NSWorkspace"] [target."cfg(target_os = \"macos\")".dependencies.objc2-foundation] -version = "0.2" +version = "0.3" default-features = false features = ["std", "NSURL", "NSArray", "NSString"] diff --git a/plugins/opener/src/reveal_item_in_dir.rs b/plugins/opener/src/reveal_item_in_dir.rs index 6d7b9268..6e3dfc2c 100644 --- a/plugins/opener/src/reveal_item_in_dir.rs +++ b/plugins/opener/src/reveal_item_in_dir.rs @@ -185,7 +185,7 @@ mod imp { let path = path.to_string_lossy(); let path = NSString::from_str(&path); let urls = vec![NSURL::fileURLWithPath(&path)]; - let urls = NSArray::from_vec(urls); + let urls = NSArray::from_retained_slice(&urls); let workspace = NSWorkspace::new(); workspace.activateFileViewerSelectingURLs(&urls); diff --git a/plugins/updater/src/updater.rs b/plugins/updater/src/updater.rs index a3e3cb3a..21acc732 100644 --- a/plugins/updater/src/updater.rs +++ b/plugins/updater/src/updater.rs @@ -4,7 +4,7 @@ use std::{ collections::HashMap, - ffi::{OsStr, OsString}, + ffi::OsString, io::Cursor, path::{Path, PathBuf}, str::FromStr, @@ -12,6 +12,9 @@ use std::{ time::Duration, }; +#[cfg(not(target_os = "macos"))] +use std::ffi::OsStr; + use base64::Engine; use futures_util::StreamExt; use http::HeaderName; diff --git a/plugins/updater/tests/app-updater/tests/update.rs b/plugins/updater/tests/app-updater/tests/update.rs index 230ab376..d308b317 100644 --- a/plugins/updater/tests/app-updater/tests/update.rs +++ b/plugins/updater/tests/app-updater/tests/update.rs @@ -63,8 +63,6 @@ fn build_app(cwd: &Path, config: &Config, bundle_updater: bool, target: BundleTa if bundle_updater { #[cfg(windows)] command.args(["--bundles", "msi", "nsis"]); - - command.args(["--bundles", "updater"]); } else { #[cfg(windows)] command.args(["--bundles", target.name()]); diff --git a/plugins/updater/tests/updater-migration/tests/update.rs b/plugins/updater/tests/updater-migration/tests/update.rs index 56cb2d30..813da3c6 100644 --- a/plugins/updater/tests/updater-migration/tests/update.rs +++ b/plugins/updater/tests/updater-migration/tests/update.rs @@ -67,8 +67,6 @@ mod v1 { if bundle_updater { #[cfg(windows)] command.args(["--bundles", "msi", "nsis"]); - - command.args(["--bundles", "updater"]); } else { #[cfg(windows)] command.args(["--bundles", target.name()]); @@ -173,8 +171,6 @@ mod v2 { if bundle_updater { #[cfg(windows)] command.args(["--bundles", "msi", "nsis"]); - - command.args(["--bundles", "updater"]); } else { #[cfg(windows)] command.args(["--bundles", target.name()]); From 393e956728632fb3859cd580e54ceea75446de2a Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 27 Feb 2025 23:57:29 +0100 Subject: [PATCH 19/80] publish new versions (#2468) Co-authored-by: FabianLars --- .changes/objc06.md | 8 -------- .changes/windows060.md | 6 ------ Cargo.lock | 6 +++--- examples/api/CHANGELOG.md | 7 +++++++ examples/api/package.json | 4 ++-- examples/api/src-tauri/CHANGELOG.md | 7 +++++++ examples/api/src-tauri/Cargo.toml | 6 +++--- plugins/log/CHANGELOG.md | 4 ++++ plugins/log/Cargo.toml | 2 +- plugins/log/package.json | 2 +- plugins/opener/CHANGELOG.md | 5 +++++ plugins/opener/Cargo.toml | 2 +- plugins/opener/package.json | 2 +- pnpm-lock.yaml | 2 +- 14 files changed, 36 insertions(+), 27 deletions(-) delete mode 100644 .changes/objc06.md delete mode 100644 .changes/windows060.md diff --git a/.changes/objc06.md b/.changes/objc06.md deleted file mode 100644 index 3d50c8e8..00000000 --- a/.changes/objc06.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -log: patch -log-js: patch -opener: patch -opener-js: patch ---- - -Update `objc2` crate to 0.6. No user facing changes. diff --git a/.changes/windows060.md b/.changes/windows060.md deleted file mode 100644 index 522a3c7c..00000000 --- a/.changes/windows060.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -opener: patch -opener-js: patch ---- - -Updated `windows` crate to 0.60 to match Tauri 2.3.0. No user facing changes. diff --git a/Cargo.lock b/Cargo.lock index 2db92e08..9967337a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -206,7 +206,7 @@ checksum = "4c95c10ba0b00a02636238b814946408b1322d5ac4760326e6fb8ec956d85775" [[package]] name = "api" -version = "2.0.18" +version = "2.0.19" dependencies = [ "log", "serde", @@ -6722,7 +6722,7 @@ dependencies = [ [[package]] name = "tauri-plugin-log" -version = "2.2.2" +version = "2.2.3" dependencies = [ "android_logger", "byte-unit", @@ -6777,7 +6777,7 @@ dependencies = [ [[package]] name = "tauri-plugin-opener" -version = "2.2.5" +version = "2.2.6" dependencies = [ "dunce", "glob", diff --git a/examples/api/CHANGELOG.md b/examples/api/CHANGELOG.md index 137ca0b6..0883eaed 100644 --- a/examples/api/CHANGELOG.md +++ b/examples/api/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## \[2.0.15] + +### Dependencies + +- Upgraded to `log-js@2.2.3` +- Upgraded to `opener-js@2.2.6` + ## \[2.0.14] ### Dependencies diff --git a/examples/api/package.json b/examples/api/package.json index 399d4147..470bce50 100644 --- a/examples/api/package.json +++ b/examples/api/package.json @@ -1,7 +1,7 @@ { "name": "api", "private": true, - "version": "2.0.14", + "version": "2.0.15", "type": "module", "scripts": { "dev": "vite --clearScreen false", @@ -23,7 +23,7 @@ "@tauri-apps/plugin-http": "^2.3.0", "@tauri-apps/plugin-nfc": "^2.2.0", "@tauri-apps/plugin-notification": "^2.2.1", - "@tauri-apps/plugin-opener": "^2.2.5", + "@tauri-apps/plugin-opener": "^2.2.6", "@tauri-apps/plugin-os": "^2.2.0", "@tauri-apps/plugin-process": "^2.2.0", "@tauri-apps/plugin-shell": "^2.2.0", diff --git a/examples/api/src-tauri/CHANGELOG.md b/examples/api/src-tauri/CHANGELOG.md index dd6e80af..69de94d2 100644 --- a/examples/api/src-tauri/CHANGELOG.md +++ b/examples/api/src-tauri/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## \[2.0.19] + +### Dependencies + +- Upgraded to `log@2.2.3` +- Upgraded to `opener@2.2.6` + ## \[2.0.18] ### Dependencies diff --git a/examples/api/src-tauri/Cargo.toml b/examples/api/src-tauri/Cargo.toml index 51e7f223..d76a899a 100644 --- a/examples/api/src-tauri/Cargo.toml +++ b/examples/api/src-tauri/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "api" publish = false -version = "2.0.18" +version = "2.0.19" description = "An example Tauri Application showcasing the api" edition = "2021" rust-version = { workspace = true } @@ -19,7 +19,7 @@ serde_json = { workspace = true } serde = { workspace = true } tiny_http = "0.12" log = { workspace = true } -tauri-plugin-log = { path = "../../../plugins/log", version = "2.2.2" } +tauri-plugin-log = { path = "../../../plugins/log", version = "2.2.3" } tauri-plugin-fs = { path = "../../../plugins/fs", version = "2.2.0", features = [ "watch", ] } @@ -33,7 +33,7 @@ tauri-plugin-notification = { path = "../../../plugins/notification", version = ] } tauri-plugin-os = { path = "../../../plugins/os", version = "2.2.0" } tauri-plugin-process = { path = "../../../plugins/process", version = "2.2.0" } -tauri-plugin-opener = { path = "../../../plugins/opener", version = "2.2.5" } +tauri-plugin-opener = { path = "../../../plugins/opener", version = "2.2.6" } tauri-plugin-shell = { path = "../../../plugins/shell", version = "2.2.0" } tauri-plugin-store = { path = "../../../plugins/store", version = "2.2.0" } diff --git a/plugins/log/CHANGELOG.md b/plugins/log/CHANGELOG.md index 54fda54d..d5eea4d2 100644 --- a/plugins/log/CHANGELOG.md +++ b/plugins/log/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## \[2.2.3] + +- [`1a984659`](https://github.com/tauri-apps/plugins-workspace/commit/1a9846599b6a71faf330845847a30f6bf9735898) ([#2469](https://github.com/tauri-apps/plugins-workspace/pull/2469) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Update `objc2` crate to 0.6. No user facing changes. + ## \[2.2.2] - [`6b4c3917`](https://github.com/tauri-apps/plugins-workspace/commit/6b4c3917389f4bc489d03b48a837557ac0584175) ([#2401](https://github.com/tauri-apps/plugins-workspace/pull/2401) by [@Seishiin](https://github.com/tauri-apps/plugins-workspace/../../Seishiin)) Fix timezone_strategy overwriting previously set LogLevels. diff --git a/plugins/log/Cargo.toml b/plugins/log/Cargo.toml index c7a7c90b..16324679 100644 --- a/plugins/log/Cargo.toml +++ b/plugins/log/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-log" -version = "2.2.2" +version = "2.2.3" description = "Configurable logging for your Tauri app." authors = { workspace = true } license = { workspace = true } diff --git a/plugins/log/package.json b/plugins/log/package.json index a71b8ea9..91fa4ab9 100644 --- a/plugins/log/package.json +++ b/plugins/log/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-log", - "version": "2.2.2", + "version": "2.2.3", "description": "Configurable logging for your Tauri app.", "license": "MIT OR Apache-2.0", "authors": [ diff --git a/plugins/opener/CHANGELOG.md b/plugins/opener/CHANGELOG.md index ff9a9cb5..67fa0a65 100644 --- a/plugins/opener/CHANGELOG.md +++ b/plugins/opener/CHANGELOG.md @@ -1,5 +1,10 @@ # Changelog +## \[2.2.6] + +- [`1a984659`](https://github.com/tauri-apps/plugins-workspace/commit/1a9846599b6a71faf330845847a30f6bf9735898) ([#2469](https://github.com/tauri-apps/plugins-workspace/pull/2469) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Update `objc2` crate to 0.6. No user facing changes. +- [`71f95c9f`](https://github.com/tauri-apps/plugins-workspace/commit/71f95c9f05b29cf1be586849614c0b007757c15d) ([#2445](https://github.com/tauri-apps/plugins-workspace/pull/2445) by [@renovate](https://github.com/tauri-apps/plugins-workspace/../../renovate)) Updated `windows` crate to 0.60 to match Tauri 2.3.0. No user facing changes. + ## \[2.2.5] - [`5b821181`](https://github.com/tauri-apps/plugins-workspace/commit/5b8211815825ddae2dcc0c00520e0cfdff002763) ([#2332](https://github.com/tauri-apps/plugins-workspace/pull/2332) by [@betamos](https://github.com/tauri-apps/plugins-workspace/../../betamos)) Fix broken JS commands `opener.openPath` and `opener.openUrl` on mobile. diff --git a/plugins/opener/Cargo.toml b/plugins/opener/Cargo.toml index 06e487d1..a8a847d1 100644 --- a/plugins/opener/Cargo.toml +++ b/plugins/opener/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-opener" -version = "2.2.5" +version = "2.2.6" description = "Open files and URLs using their default application." edition = { workspace = true } authors = { workspace = true } diff --git a/plugins/opener/package.json b/plugins/opener/package.json index a7a1b3d2..9d828d44 100644 --- a/plugins/opener/package.json +++ b/plugins/opener/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-opener", - "version": "2.2.5", + "version": "2.2.6", "description": "Open files and URLs using their default application.", "license": "MIT OR Apache-2.0", "authors": [ diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5fbe79ca..e693f23b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -93,7 +93,7 @@ importers: specifier: ^2.2.1 version: link:../../plugins/notification '@tauri-apps/plugin-opener': - specifier: ^2.2.5 + specifier: ^2.2.6 version: link:../../plugins/opener '@tauri-apps/plugin-os': specifier: ^2.2.0 From 45c78487141f5198c18087f9b7f63f3d5edc8e13 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 1 Mar 2025 11:56:59 +0100 Subject: [PATCH 20/80] chore(deps): update dependency @tauri-apps/cli to v2.3.1 (#2470) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- examples/api/package.json | 2 +- plugins/deep-link/examples/app/package.json | 2 +- .../examples/vanilla/package.json | 2 +- .../examples/AppSettingsManager/package.json | 2 +- .../websocket/examples/tauri-app/package.json | 2 +- pnpm-lock.yaml | 106 +++++++++--------- 6 files changed, 58 insertions(+), 58 deletions(-) diff --git a/examples/api/package.json b/examples/api/package.json index 470bce50..f5bd22db 100644 --- a/examples/api/package.json +++ b/examples/api/package.json @@ -35,7 +35,7 @@ "@iconify-json/codicon": "^1.2.12", "@iconify-json/ph": "^1.2.2", "@sveltejs/vite-plugin-svelte": "^5.0.3", - "@tauri-apps/cli": "2.3.0", + "@tauri-apps/cli": "2.3.1", "@unocss/extractor-svelte": "^66.0.0", "svelte": "^5.20.4", "unocss": "^66.0.0", diff --git a/plugins/deep-link/examples/app/package.json b/plugins/deep-link/examples/app/package.json index 104dd948..432e775f 100644 --- a/plugins/deep-link/examples/app/package.json +++ b/plugins/deep-link/examples/app/package.json @@ -14,7 +14,7 @@ "@tauri-apps/plugin-deep-link": "2.2.0" }, "devDependencies": { - "@tauri-apps/cli": "2.3.0", + "@tauri-apps/cli": "2.3.1", "typescript": "^5.7.3", "vite": "^6.2.0" } diff --git a/plugins/single-instance/examples/vanilla/package.json b/plugins/single-instance/examples/vanilla/package.json index e7d8e477..183cfa99 100644 --- a/plugins/single-instance/examples/vanilla/package.json +++ b/plugins/single-instance/examples/vanilla/package.json @@ -9,6 +9,6 @@ "author": "", "license": "MIT", "devDependencies": { - "@tauri-apps/cli": "2.3.0" + "@tauri-apps/cli": "2.3.1" } } diff --git a/plugins/store/examples/AppSettingsManager/package.json b/plugins/store/examples/AppSettingsManager/package.json index 02fa4568..0bf0d66a 100644 --- a/plugins/store/examples/AppSettingsManager/package.json +++ b/plugins/store/examples/AppSettingsManager/package.json @@ -8,7 +8,7 @@ "tauri": "tauri" }, "devDependencies": { - "@tauri-apps/cli": "2.3.0", + "@tauri-apps/cli": "2.3.1", "typescript": "^5.7.3", "vite": "^6.2.0" } diff --git a/plugins/websocket/examples/tauri-app/package.json b/plugins/websocket/examples/tauri-app/package.json index b91d14f4..a666dad0 100644 --- a/plugins/websocket/examples/tauri-app/package.json +++ b/plugins/websocket/examples/tauri-app/package.json @@ -9,7 +9,7 @@ "preview": "vite preview" }, "devDependencies": { - "@tauri-apps/cli": "2.3.0", + "@tauri-apps/cli": "2.3.1", "typescript": "^5.7.3", "vite": "^6.2.0" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e693f23b..3104d822 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -124,8 +124,8 @@ importers: specifier: ^5.0.3 version: 5.0.3(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) '@tauri-apps/cli': - specifier: 2.3.0 - version: 2.3.0 + specifier: 2.3.1 + version: 2.3.1 '@unocss/extractor-svelte': specifier: ^66.0.0 version: 66.0.0 @@ -185,8 +185,8 @@ importers: version: link:../.. devDependencies: '@tauri-apps/cli': - specifier: 2.3.0 - version: 2.3.0 + specifier: 2.3.1 + version: 2.3.1 typescript: specifier: ^5.7.3 version: 5.7.3 @@ -281,8 +281,8 @@ importers: plugins/single-instance/examples/vanilla: devDependencies: '@tauri-apps/cli': - specifier: 2.3.0 - version: 2.3.0 + specifier: 2.3.1 + version: 2.3.1 plugins/sql: dependencies: @@ -299,8 +299,8 @@ importers: plugins/store/examples/AppSettingsManager: devDependencies: '@tauri-apps/cli': - specifier: 2.3.0 - version: 2.3.0 + specifier: 2.3.1 + version: 2.3.1 typescript: specifier: ^5.7.3 version: 5.7.3 @@ -339,8 +339,8 @@ importers: version: link:../.. devDependencies: '@tauri-apps/cli': - specifier: 2.3.0 - version: 2.3.0 + specifier: 2.3.1 + version: 2.3.1 typescript: specifier: ^5.7.3 version: 5.7.3 @@ -848,68 +848,68 @@ packages: '@tauri-apps/api@2.3.0': resolution: {integrity: sha512-33Z+0lX2wgZbx1SPFfqvzI6su63hCBkbzv+5NexeYjIx7WA9htdOKoRR7Dh3dJyltqS5/J8vQFyybiRoaL0hlA==} - '@tauri-apps/cli-darwin-arm64@2.3.0': - resolution: {integrity: sha512-VUbFezxCxSdVq8BTFZKDoVqf7jb9i928kLQ2cqYAe5TBM2Cg5IgMtJupbKMXtCwD+pOVcs6DqcPbhcmgPEFp0w==} + '@tauri-apps/cli-darwin-arm64@2.3.1': + resolution: {integrity: sha512-TOhSdsXYt+f+asRU+Dl+Wufglj/7+CX9h8RO4hl5k7D6lR4L8yTtdhpS7btaclOMmjYC4piNfJE70GoxhOoYWw==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] - '@tauri-apps/cli-darwin-x64@2.3.0': - resolution: {integrity: sha512-PZBH25qsou45+l+SCHaB+x7KKn/9/kItGTyIjgE3E0J3hJKb/zKkolHFE97XlR99CVJVvp6lM3f9ZJ8tZ+GJfA==} + '@tauri-apps/cli-darwin-x64@2.3.1': + resolution: {integrity: sha512-LDwGg3AuBQ3aCeMAFaFwt0MSGOVFoXuXEe0z4QxQ7jZE5tdAOhKABaq4i569V5lShCgQZ6nLD/tmA5+GipvHnA==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] - '@tauri-apps/cli-linux-arm-gnueabihf@2.3.0': - resolution: {integrity: sha512-3udhBTCJTlmTBFagqp2dXII6ckDvXvdP00erEt5IUVuFwNOrRHgHh8BGkR81MgGXEjpSzwKiE0LrmXsjLJ8+pA==} + '@tauri-apps/cli-linux-arm-gnueabihf@2.3.1': + resolution: {integrity: sha512-hu3HpbbtJBvHXw5i54QHwLxOUoXWqhf7CL2YYSPOrWEEQo10NKddulP61L5gfr5z+bSSaitfLwqgTidgnaNJCA==} engines: {node: '>= 10'} cpu: [arm] os: [linux] - '@tauri-apps/cli-linux-arm64-gnu@2.3.0': - resolution: {integrity: sha512-FddbVf/0aLnbDUJvKWWdREku174VVJkR2MW8QJMZMlZxeW8spL6YEeZD4OaMEdVzy+H5Xlc/CLerI8MF3I/bug==} + '@tauri-apps/cli-linux-arm64-gnu@2.3.1': + resolution: {integrity: sha512-mEGgwkiGSKYXWHhGodo7zU9PCd2I/d6KkR+Wp1nzK+DxsCrEK6yJ5XxYLSQSDcKkM4dCxpVEPUiVMbDhmn08jg==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@tauri-apps/cli-linux-arm64-musl@2.3.0': - resolution: {integrity: sha512-PZbNAartalTMPWmFsx+a+XrFN0FULpibvVNPmyCNuCnv7ZGVIZa+GGfS9NYN0XE43Mhq2/qYmxoLTTeBMSDzxQ==} + '@tauri-apps/cli-linux-arm64-musl@2.3.1': + resolution: {integrity: sha512-tqQkafikGfnc7ISnGjSYkbpnzJKEyO8XSa0YOXTAL3J8R5Pss5ZIZY7G8kq1mwQSR/dPVR1ZLTVXgZGuysjP8w==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@tauri-apps/cli-linux-x64-gnu@2.3.0': - resolution: {integrity: sha512-vgsXG/ZHK6z43Vkjr3bnYcsu6mvvK4WUu+S9ohqQO8PsZqsbwThy5ibn9Nb5OEYiEuVQgXye6YHS+uZSI54hkw==} + '@tauri-apps/cli-linux-x64-gnu@2.3.1': + resolution: {integrity: sha512-I3puDJ2wGEauXlXbzIHn2etz78TaWs1cpN6zre02maHr6ZR7nf7euTCOGPhhfoMG0opA5mT/eLuYpVw648/VAA==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@tauri-apps/cli-linux-x64-musl@2.3.0': - resolution: {integrity: sha512-Ba/ILQ9JknrFYVdc0YKB9br6n+OJBi2Ospc0/J75IC/dTsbkcPkhSbbCY531hUxOqk+hQi08/ZeSq1al3Yhk9A==} + '@tauri-apps/cli-linux-x64-musl@2.3.1': + resolution: {integrity: sha512-rbWiCOBuQN7tPySkUyBs914uUikE3mEUOqV/IFospvKESw4UC3G1DL5+ybfXH7Orb8/in3JpJuVzYQjo+OSbBA==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@tauri-apps/cli-win32-arm64-msvc@2.3.0': - resolution: {integrity: sha512-i3hrzUzx8UJAfOBgufh2ArUh20SgPe44+VhVcMAsPk/R5M8tPL/Ke9Z40nUZRuOrJbY9rGhXmf+0v65nD5GnRw==} + '@tauri-apps/cli-win32-arm64-msvc@2.3.1': + resolution: {integrity: sha512-PdTmUzSeTHjJuBpCV7L+V29fPhPtToU+NZU46slHKSA1aT38MiFDXBZ/6P5Zudrt9QPMfIubqnJKbK8Ivvv7Ww==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] - '@tauri-apps/cli-win32-ia32-msvc@2.3.0': - resolution: {integrity: sha512-UEi/QzCdNVYPH43A/GufiWOb34HZpju9f4WjTTcT6frZIPnNy82WTGgOxWfsj2OIkroF0T+kRGbwua+JGnrnUg==} + '@tauri-apps/cli-win32-ia32-msvc@2.3.1': + resolution: {integrity: sha512-K/Xa97kspWT4UWj3t26lL2D3QsopTAxS7kWi5kObdqtAGn3qD52qBi24FH38TdvHYz4QlnLIb30TukviCgh4gw==} engines: {node: '>= 10'} cpu: [ia32] os: [win32] - '@tauri-apps/cli-win32-x64-msvc@2.3.0': - resolution: {integrity: sha512-QsNeaG123T2L2QWaEIZ9d65jwNQ5Uf+BmV3x7vEajbQHd/XBDJDL0Q21veMWIOjmMQHdtmFLJP0wamCLTkXZXQ==} + '@tauri-apps/cli-win32-x64-msvc@2.3.1': + resolution: {integrity: sha512-RgwzXbP8gAno3kQEsybMtgLp6D1Z1Nec2cftryYbPTJmoMJs6e4qgtxuTSbUz5SKnHe8rGgMiFSvEGoHvbG72Q==} engines: {node: '>= 10'} cpu: [x64] os: [win32] - '@tauri-apps/cli@2.3.0': - resolution: {integrity: sha512-OU0+bwIz10DgQMZZJ20NdU+x+K8PYob4tzB7nYCV6BbKWrUYINdGHAXlunzMP+hi63SClPDyVf8CYxwgznIfbw==} + '@tauri-apps/cli@2.3.1': + resolution: {integrity: sha512-xewcw/ZsCqgilTy2h7+pp2Baxoy7zLR2wXOV7SZLzkb6SshHVbm1BFAjn8iFATURRW85KLzl6wSGJ2dQHjVHqw==} engines: {node: '>= 10'} hasBin: true @@ -2688,48 +2688,48 @@ snapshots: '@tauri-apps/api@2.3.0': {} - '@tauri-apps/cli-darwin-arm64@2.3.0': + '@tauri-apps/cli-darwin-arm64@2.3.1': optional: true - '@tauri-apps/cli-darwin-x64@2.3.0': + '@tauri-apps/cli-darwin-x64@2.3.1': optional: true - '@tauri-apps/cli-linux-arm-gnueabihf@2.3.0': + '@tauri-apps/cli-linux-arm-gnueabihf@2.3.1': optional: true - '@tauri-apps/cli-linux-arm64-gnu@2.3.0': + '@tauri-apps/cli-linux-arm64-gnu@2.3.1': optional: true - '@tauri-apps/cli-linux-arm64-musl@2.3.0': + '@tauri-apps/cli-linux-arm64-musl@2.3.1': optional: true - '@tauri-apps/cli-linux-x64-gnu@2.3.0': + '@tauri-apps/cli-linux-x64-gnu@2.3.1': optional: true - '@tauri-apps/cli-linux-x64-musl@2.3.0': + '@tauri-apps/cli-linux-x64-musl@2.3.1': optional: true - '@tauri-apps/cli-win32-arm64-msvc@2.3.0': + '@tauri-apps/cli-win32-arm64-msvc@2.3.1': optional: true - '@tauri-apps/cli-win32-ia32-msvc@2.3.0': + '@tauri-apps/cli-win32-ia32-msvc@2.3.1': optional: true - '@tauri-apps/cli-win32-x64-msvc@2.3.0': + '@tauri-apps/cli-win32-x64-msvc@2.3.1': optional: true - '@tauri-apps/cli@2.3.0': + '@tauri-apps/cli@2.3.1': optionalDependencies: - '@tauri-apps/cli-darwin-arm64': 2.3.0 - '@tauri-apps/cli-darwin-x64': 2.3.0 - '@tauri-apps/cli-linux-arm-gnueabihf': 2.3.0 - '@tauri-apps/cli-linux-arm64-gnu': 2.3.0 - '@tauri-apps/cli-linux-arm64-musl': 2.3.0 - '@tauri-apps/cli-linux-x64-gnu': 2.3.0 - '@tauri-apps/cli-linux-x64-musl': 2.3.0 - '@tauri-apps/cli-win32-arm64-msvc': 2.3.0 - '@tauri-apps/cli-win32-ia32-msvc': 2.3.0 - '@tauri-apps/cli-win32-x64-msvc': 2.3.0 + '@tauri-apps/cli-darwin-arm64': 2.3.1 + '@tauri-apps/cli-darwin-x64': 2.3.1 + '@tauri-apps/cli-linux-arm-gnueabihf': 2.3.1 + '@tauri-apps/cli-linux-arm64-gnu': 2.3.1 + '@tauri-apps/cli-linux-arm64-musl': 2.3.1 + '@tauri-apps/cli-linux-x64-gnu': 2.3.1 + '@tauri-apps/cli-linux-x64-musl': 2.3.1 + '@tauri-apps/cli-win32-arm64-msvc': 2.3.1 + '@tauri-apps/cli-win32-ia32-msvc': 2.3.1 + '@tauri-apps/cli-win32-x64-msvc': 2.3.1 '@types/estree@1.0.6': {} From 54e78645078a02cb54a9948dce509b27ec680988 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 1 Mar 2025 19:03:25 +0800 Subject: [PATCH 21/80] chore(deps): update dependency typescript to v5.8.2 (#2472) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 112 ++++++++++++++++++++++++------------------------- 2 files changed, 57 insertions(+), 57 deletions(-) diff --git a/package.json b/package.json index eceb9332..ee8bc1b8 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "prettier": "3.5.2", "rollup": "4.34.8", "tslib": "2.8.1", - "typescript": "5.7.3", + "typescript": "5.8.2", "typescript-eslint": "8.25.0" }, "pnpm": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3104d822..716486f8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -22,7 +22,7 @@ importers: version: 0.4.4(rollup@4.34.8) '@rollup/plugin-typescript': specifier: 12.1.2 - version: 12.1.2(rollup@4.34.8)(tslib@2.8.1)(typescript@5.7.3) + version: 12.1.2(rollup@4.34.8)(tslib@2.8.1)(typescript@5.8.2) covector: specifier: ^0.12.4 version: 0.12.4(mocha@10.8.2) @@ -45,11 +45,11 @@ importers: specifier: 2.8.1 version: 2.8.1 typescript: - specifier: 5.7.3 - version: 5.7.3 + specifier: 5.8.2 + version: 5.8.2 typescript-eslint: specifier: 8.25.0 - version: 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + version: 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) examples/api: dependencies: @@ -134,7 +134,7 @@ importers: version: 5.20.4 unocss: specifier: ^66.0.0 - version: 66.0.0(postcss@8.5.3)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) + version: 66.0.0(postcss@8.5.3)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) vite: specifier: ^6.2.0 version: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) @@ -189,7 +189,7 @@ importers: version: 2.3.1 typescript: specifier: ^5.7.3 - version: 5.7.3 + version: 5.8.2 vite: specifier: ^6.2.0 version: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) @@ -303,7 +303,7 @@ importers: version: 2.3.1 typescript: specifier: ^5.7.3 - version: 5.7.3 + version: 5.8.2 vite: specifier: ^6.2.0 version: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) @@ -343,7 +343,7 @@ importers: version: 2.3.1 typescript: specifier: ^5.7.3 - version: 5.7.3 + version: 5.8.2 vite: specifier: ^6.2.0 version: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) @@ -2061,8 +2061,8 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' - typescript@5.7.3: - resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==} + typescript@5.8.2: + resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==} engines: {node: '>=14.17'} hasBin: true @@ -2590,11 +2590,11 @@ snapshots: optionalDependencies: rollup: 4.34.8 - '@rollup/plugin-typescript@12.1.2(rollup@4.34.8)(tslib@2.8.1)(typescript@5.7.3)': + '@rollup/plugin-typescript@12.1.2(rollup@4.34.8)(tslib@2.8.1)(typescript@5.8.2)': dependencies: '@rollup/pluginutils': 5.1.4(rollup@4.34.8) resolve: 1.22.10 - typescript: 5.7.3 + typescript: 5.8.2 optionalDependencies: rollup: 4.34.8 tslib: 2.8.1 @@ -2743,32 +2743,32 @@ snapshots: '@types/unist@2.0.11': {} - '@typescript-eslint/eslint-plugin@8.25.0(@typescript-eslint/parser@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3)': + '@typescript-eslint/eslint-plugin@8.25.0(@typescript-eslint/parser@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/parser': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) '@typescript-eslint/scope-manager': 8.25.0 - '@typescript-eslint/type-utils': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) - '@typescript-eslint/utils': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/type-utils': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) '@typescript-eslint/visitor-keys': 8.25.0 eslint: 9.21.0(jiti@2.4.2) graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 - ts-api-utils: 2.0.1(typescript@5.7.3) - typescript: 5.7.3 + ts-api-utils: 2.0.1(typescript@5.8.2) + typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3)': + '@typescript-eslint/parser@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@typescript-eslint/scope-manager': 8.25.0 '@typescript-eslint/types': 8.25.0 - '@typescript-eslint/typescript-estree': 8.25.0(typescript@5.7.3) + '@typescript-eslint/typescript-estree': 8.25.0(typescript@5.8.2) '@typescript-eslint/visitor-keys': 8.25.0 debug: 4.4.0(supports-color@8.1.1) eslint: 9.21.0(jiti@2.4.2) - typescript: 5.7.3 + typescript: 5.8.2 transitivePeerDependencies: - supports-color @@ -2777,20 +2777,20 @@ snapshots: '@typescript-eslint/types': 8.25.0 '@typescript-eslint/visitor-keys': 8.25.0 - '@typescript-eslint/type-utils@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3)': + '@typescript-eslint/type-utils@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: - '@typescript-eslint/typescript-estree': 8.25.0(typescript@5.7.3) - '@typescript-eslint/utils': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/typescript-estree': 8.25.0(typescript@5.8.2) + '@typescript-eslint/utils': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) debug: 4.4.0(supports-color@8.1.1) eslint: 9.21.0(jiti@2.4.2) - ts-api-utils: 2.0.1(typescript@5.7.3) - typescript: 5.7.3 + ts-api-utils: 2.0.1(typescript@5.8.2) + typescript: 5.8.2 transitivePeerDependencies: - supports-color '@typescript-eslint/types@8.25.0': {} - '@typescript-eslint/typescript-estree@8.25.0(typescript@5.7.3)': + '@typescript-eslint/typescript-estree@8.25.0(typescript@5.8.2)': dependencies: '@typescript-eslint/types': 8.25.0 '@typescript-eslint/visitor-keys': 8.25.0 @@ -2799,19 +2799,19 @@ snapshots: is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.7.1 - ts-api-utils: 2.0.1(typescript@5.7.3) - typescript: 5.7.3 + ts-api-utils: 2.0.1(typescript@5.8.2) + typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3)': + '@typescript-eslint/utils@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.21.0(jiti@2.4.2)) '@typescript-eslint/scope-manager': 8.25.0 '@typescript-eslint/types': 8.25.0 - '@typescript-eslint/typescript-estree': 8.25.0(typescript@5.7.3) + '@typescript-eslint/typescript-estree': 8.25.0(typescript@5.8.2) eslint: 9.21.0(jiti@2.4.2) - typescript: 5.7.3 + typescript: 5.8.2 transitivePeerDependencies: - supports-color @@ -2820,11 +2820,11 @@ snapshots: '@typescript-eslint/types': 8.25.0 eslint-visitor-keys: 4.2.0 - '@unocss/astro@66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3))': + '@unocss/astro@66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': dependencies: '@unocss/core': 66.0.0 '@unocss/reset': 66.0.0 - '@unocss/vite': 66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) + '@unocss/vite': 66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) optionalDependencies: vite: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) transitivePeerDependencies: @@ -2859,14 +2859,14 @@ snapshots: '@unocss/extractor-svelte@66.0.0': {} - '@unocss/inspector@66.0.0(vue@3.5.13(typescript@5.7.3))': + '@unocss/inspector@66.0.0(vue@3.5.13(typescript@5.8.2))': dependencies: '@unocss/core': 66.0.0 '@unocss/rule-utils': 66.0.0 colorette: 2.0.20 gzip-size: 6.0.0 sirv: 3.0.1 - vue-flow-layout: 0.1.1(vue@3.5.13(typescript@5.7.3)) + vue-flow-layout: 0.1.1(vue@3.5.13(typescript@5.8.2)) transitivePeerDependencies: - vue @@ -2953,12 +2953,12 @@ snapshots: dependencies: '@unocss/core': 66.0.0 - '@unocss/vite@66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3))': + '@unocss/vite@66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': dependencies: '@ampproject/remapping': 2.3.0 '@unocss/config': 66.0.0 '@unocss/core': 66.0.0 - '@unocss/inspector': 66.0.0(vue@3.5.13(typescript@5.7.3)) + '@unocss/inspector': 66.0.0(vue@3.5.13(typescript@5.8.2)) chokidar: 3.6.0 magic-string: 0.30.17 tinyglobby: 0.2.12 @@ -3013,11 +3013,11 @@ snapshots: '@vue/shared': 3.5.13 csstype: 3.1.3 - '@vue/server-renderer@3.5.13(vue@3.5.13(typescript@5.7.3))': + '@vue/server-renderer@3.5.13(vue@3.5.13(typescript@5.8.2))': dependencies: '@vue/compiler-ssr': 3.5.13 '@vue/shared': 3.5.13 - vue: 3.5.13(typescript@5.7.3) + vue: 3.5.13(typescript@5.8.2) '@vue/shared@3.5.13': {} @@ -4005,9 +4005,9 @@ snapshots: trough@1.0.5: {} - ts-api-utils@2.0.1(typescript@5.7.3): + ts-api-utils@2.0.1(typescript@5.8.2): dependencies: - typescript: 5.7.3 + typescript: 5.8.2 tslib@2.8.1: {} @@ -4025,17 +4025,17 @@ snapshots: type-fest@0.7.1: {} - typescript-eslint@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3): + typescript-eslint@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2): dependencies: - '@typescript-eslint/eslint-plugin': 8.25.0(@typescript-eslint/parser@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) - '@typescript-eslint/parser': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) - '@typescript-eslint/utils': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/eslint-plugin': 8.25.0(@typescript-eslint/parser@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/parser': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) eslint: 9.21.0(jiti@2.4.2) - typescript: 5.7.3 + typescript: 5.8.2 transitivePeerDependencies: - supports-color - typescript@5.7.3: {} + typescript@5.8.2: {} ufo@1.5.4: {} @@ -4059,9 +4059,9 @@ snapshots: dependencies: '@types/unist': 2.0.11 - unocss@66.0.0(postcss@8.5.3)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)): + unocss@66.0.0(postcss@8.5.3)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)): dependencies: - '@unocss/astro': 66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) + '@unocss/astro': 66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) '@unocss/cli': 66.0.0 '@unocss/core': 66.0.0 '@unocss/postcss': 66.0.0(postcss@8.5.3) @@ -4078,7 +4078,7 @@ snapshots: '@unocss/transformer-compile-class': 66.0.0 '@unocss/transformer-directives': 66.0.0 '@unocss/transformer-variant-group': 66.0.0 - '@unocss/vite': 66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.7.3)) + '@unocss/vite': 66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) optionalDependencies: vite: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) transitivePeerDependencies: @@ -4122,19 +4122,19 @@ snapshots: optionalDependencies: vite: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) - vue-flow-layout@0.1.1(vue@3.5.13(typescript@5.7.3)): + vue-flow-layout@0.1.1(vue@3.5.13(typescript@5.8.2)): dependencies: - vue: 3.5.13(typescript@5.7.3) + vue: 3.5.13(typescript@5.8.2) - vue@3.5.13(typescript@5.7.3): + vue@3.5.13(typescript@5.8.2): dependencies: '@vue/compiler-dom': 3.5.13 '@vue/compiler-sfc': 3.5.13 '@vue/runtime-dom': 3.5.13 - '@vue/server-renderer': 3.5.13(vue@3.5.13(typescript@5.7.3)) + '@vue/server-renderer': 3.5.13(vue@3.5.13(typescript@5.8.2)) '@vue/shared': 3.5.13 optionalDependencies: - typescript: 5.7.3 + typescript: 5.8.2 webidl-conversions@3.0.1: {} From 1dba334f0027816e15804e2bfe63099491aea8e4 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 1 Mar 2025 12:31:09 +0100 Subject: [PATCH 22/80] chore(deps): update dependency rollup to v4.34.9 (#2474) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 190 ++++++++++++++++++++++++------------------------- 2 files changed, 96 insertions(+), 96 deletions(-) diff --git a/package.json b/package.json index ee8bc1b8..7180d733 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "eslint-config-prettier": "10.0.2", "eslint-plugin-security": "3.0.1", "prettier": "3.5.2", - "rollup": "4.34.8", + "rollup": "4.34.9", "tslib": "2.8.1", "typescript": "5.8.2", "typescript-eslint": "8.25.0" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 716486f8..c7e5a71c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -16,13 +16,13 @@ importers: version: 9.21.0 '@rollup/plugin-node-resolve': specifier: 16.0.0 - version: 16.0.0(rollup@4.34.8) + version: 16.0.0(rollup@4.34.9) '@rollup/plugin-terser': specifier: 0.4.4 - version: 0.4.4(rollup@4.34.8) + version: 0.4.4(rollup@4.34.9) '@rollup/plugin-typescript': specifier: 12.1.2 - version: 12.1.2(rollup@4.34.8)(tslib@2.8.1)(typescript@5.8.2) + version: 12.1.2(rollup@4.34.9)(tslib@2.8.1)(typescript@5.8.2) covector: specifier: ^0.12.4 version: 0.12.4(mocha@10.8.2) @@ -39,8 +39,8 @@ importers: specifier: 3.5.2 version: 3.5.2 rollup: - specifier: 4.34.8 - version: 4.34.8 + specifier: 4.34.9 + version: 4.34.9 tslib: specifier: 2.8.1 version: 2.8.1 @@ -735,98 +735,98 @@ packages: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.34.8': - resolution: {integrity: sha512-q217OSE8DTp8AFHuNHXo0Y86e1wtlfVrXiAlwkIvGRQv9zbc6mE3sjIVfwI8sYUyNxwOg0j/Vm1RKM04JcWLJw==} + '@rollup/rollup-android-arm-eabi@4.34.9': + resolution: {integrity: sha512-qZdlImWXur0CFakn2BJ2znJOdqYZKiedEPEVNTBrpfPjc/YuTGcaYZcdmNFTkUj3DU0ZM/AElcM8Ybww3xVLzA==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.34.8': - resolution: {integrity: sha512-Gigjz7mNWaOL9wCggvoK3jEIUUbGul656opstjaUSGC3eT0BM7PofdAJaBfPFWWkXNVAXbaQtC99OCg4sJv70Q==} + '@rollup/rollup-android-arm64@4.34.9': + resolution: {integrity: sha512-4KW7P53h6HtJf5Y608T1ISKvNIYLWRKMvfnG0c44M6In4DQVU58HZFEVhWINDZKp7FZps98G3gxwC1sb0wXUUg==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.34.8': - resolution: {integrity: sha512-02rVdZ5tgdUNRxIUrFdcMBZQoaPMrxtwSb+/hOfBdqkatYHR3lZ2A2EGyHq2sGOd0Owk80oV3snlDASC24He3Q==} + '@rollup/rollup-darwin-arm64@4.34.9': + resolution: {integrity: sha512-0CY3/K54slrzLDjOA7TOjN1NuLKERBgk9nY5V34mhmuu673YNb+7ghaDUs6N0ujXR7fz5XaS5Aa6d2TNxZd0OQ==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.34.8': - resolution: {integrity: sha512-qIP/elwR/tq/dYRx3lgwK31jkZvMiD6qUtOycLhTzCvrjbZ3LjQnEM9rNhSGpbLXVJYQ3rq39A6Re0h9tU2ynw==} + '@rollup/rollup-darwin-x64@4.34.9': + resolution: {integrity: sha512-eOojSEAi/acnsJVYRxnMkPFqcxSMFfrw7r2iD9Q32SGkb/Q9FpUY1UlAu1DH9T7j++gZ0lHjnm4OyH2vCI7l7Q==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.34.8': - resolution: {integrity: sha512-IQNVXL9iY6NniYbTaOKdrlVP3XIqazBgJOVkddzJlqnCpRi/yAeSOa8PLcECFSQochzqApIOE1GHNu3pCz+BDA==} + '@rollup/rollup-freebsd-arm64@4.34.9': + resolution: {integrity: sha512-2lzjQPJbN5UnHm7bHIUKFMulGTQwdvOkouJDpPysJS+QFBGDJqcfh+CxxtG23Ik/9tEvnebQiylYoazFMAgrYw==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.34.8': - resolution: {integrity: sha512-TYXcHghgnCqYFiE3FT5QwXtOZqDj5GmaFNTNt3jNC+vh22dc/ukG2cG+pi75QO4kACohZzidsq7yKTKwq/Jq7Q==} + '@rollup/rollup-freebsd-x64@4.34.9': + resolution: {integrity: sha512-SLl0hi2Ah2H7xQYd6Qaiu01kFPzQ+hqvdYSoOtHYg/zCIFs6t8sV95kaoqjzjFwuYQLtOI0RZre/Ke0nPaQV+g==} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.34.8': - resolution: {integrity: sha512-A4iphFGNkWRd+5m3VIGuqHnG3MVnqKe7Al57u9mwgbyZ2/xF9Jio72MaY7xxh+Y87VAHmGQr73qoKL9HPbXj1g==} + '@rollup/rollup-linux-arm-gnueabihf@4.34.9': + resolution: {integrity: sha512-88I+D3TeKItrw+Y/2ud4Tw0+3CxQ2kLgu3QvrogZ0OfkmX/DEppehus7L3TS2Q4lpB+hYyxhkQiYPJ6Mf5/dPg==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.34.8': - resolution: {integrity: sha512-S0lqKLfTm5u+QTxlFiAnb2J/2dgQqRy/XvziPtDd1rKZFXHTyYLoVL58M/XFwDI01AQCDIevGLbQrMAtdyanpA==} + '@rollup/rollup-linux-arm-musleabihf@4.34.9': + resolution: {integrity: sha512-3qyfWljSFHi9zH0KgtEPG4cBXHDFhwD8kwg6xLfHQ0IWuH9crp005GfoUUh/6w9/FWGBwEHg3lxK1iHRN1MFlA==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.34.8': - resolution: {integrity: sha512-jpz9YOuPiSkL4G4pqKrus0pn9aYwpImGkosRKwNi+sJSkz+WU3anZe6hi73StLOQdfXYXC7hUfsQlTnjMd3s1A==} + '@rollup/rollup-linux-arm64-gnu@4.34.9': + resolution: {integrity: sha512-6TZjPHjKZUQKmVKMUowF3ewHxctrRR09eYyvT5eFv8w/fXarEra83A2mHTVJLA5xU91aCNOUnM+DWFMSbQ0Nxw==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.34.8': - resolution: {integrity: sha512-KdSfaROOUJXgTVxJNAZ3KwkRc5nggDk+06P6lgi1HLv1hskgvxHUKZ4xtwHkVYJ1Rep4GNo+uEfycCRRxht7+Q==} + '@rollup/rollup-linux-arm64-musl@4.34.9': + resolution: {integrity: sha512-LD2fytxZJZ6xzOKnMbIpgzFOuIKlxVOpiMAXawsAZ2mHBPEYOnLRK5TTEsID6z4eM23DuO88X0Tq1mErHMVq0A==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-loongarch64-gnu@4.34.8': - resolution: {integrity: sha512-NyF4gcxwkMFRjgXBM6g2lkT58OWztZvw5KkV2K0qqSnUEqCVcqdh2jN4gQrTn/YUpAcNKyFHfoOZEer9nwo6uQ==} + '@rollup/rollup-linux-loongarch64-gnu@4.34.9': + resolution: {integrity: sha512-dRAgTfDsn0TE0HI6cmo13hemKpVHOEyeciGtvlBTkpx/F65kTvShtY/EVyZEIfxFkV5JJTuQ9tP5HGBS0hfxIg==} cpu: [loong64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.34.8': - resolution: {integrity: sha512-LMJc999GkhGvktHU85zNTDImZVUCJ1z/MbAJTnviiWmmjyckP5aQsHtcujMjpNdMZPT2rQEDBlJfubhs3jsMfw==} + '@rollup/rollup-linux-powerpc64le-gnu@4.34.9': + resolution: {integrity: sha512-PHcNOAEhkoMSQtMf+rJofwisZqaU8iQ8EaSps58f5HYll9EAY5BSErCZ8qBDMVbq88h4UxaNPlbrKqfWP8RfJA==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.34.8': - resolution: {integrity: sha512-xAQCAHPj8nJq1PI3z8CIZzXuXCstquz7cIOL73HHdXiRcKk8Ywwqtx2wrIy23EcTn4aZ2fLJNBB8d0tQENPCmw==} + '@rollup/rollup-linux-riscv64-gnu@4.34.9': + resolution: {integrity: sha512-Z2i0Uy5G96KBYKjeQFKbbsB54xFOL5/y1P5wNBsbXB8yE+At3oh0DVMjQVzCJRJSfReiB2tX8T6HUFZ2k8iaKg==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.34.8': - resolution: {integrity: sha512-DdePVk1NDEuc3fOe3dPPTb+rjMtuFw89gw6gVWxQFAuEqqSdDKnrwzZHrUYdac7A7dXl9Q2Vflxpme15gUWQFA==} + '@rollup/rollup-linux-s390x-gnu@4.34.9': + resolution: {integrity: sha512-U+5SwTMoeYXoDzJX5dhDTxRltSrIax8KWwfaaYcynuJw8mT33W7oOgz0a+AaXtGuvhzTr2tVKh5UO8GVANTxyQ==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.34.8': - resolution: {integrity: sha512-8y7ED8gjxITUltTUEJLQdgpbPh1sUQ0kMTmufRF/Ns5tI9TNMNlhWtmPKKHCU0SilX+3MJkZ0zERYYGIVBYHIA==} + '@rollup/rollup-linux-x64-gnu@4.34.9': + resolution: {integrity: sha512-FwBHNSOjUTQLP4MG7y6rR6qbGw4MFeQnIBrMe161QGaQoBQLqSUEKlHIiVgF3g/mb3lxlxzJOpIBhaP+C+KP2A==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.34.8': - resolution: {integrity: sha512-SCXcP0ZpGFIe7Ge+McxY5zKxiEI5ra+GT3QRxL0pMMtxPfpyLAKleZODi1zdRHkz5/BhueUrYtYVgubqe9JBNQ==} + '@rollup/rollup-linux-x64-musl@4.34.9': + resolution: {integrity: sha512-cYRpV4650z2I3/s6+5/LONkjIz8MBeqrk+vPXV10ORBnshpn8S32bPqQ2Utv39jCiDcO2eJTuSlPXpnvmaIgRA==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.34.8': - resolution: {integrity: sha512-YHYsgzZgFJzTRbth4h7Or0m5O74Yda+hLin0irAIobkLQFRQd1qWmnoVfwmKm9TXIZVAD0nZ+GEb2ICicLyCnQ==} + '@rollup/rollup-win32-arm64-msvc@4.34.9': + resolution: {integrity: sha512-z4mQK9dAN6byRA/vsSgQiPeuO63wdiDxZ9yg9iyX2QTzKuQM7T4xlBoeUP/J8uiFkqxkcWndWi+W7bXdPbt27Q==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.34.8': - resolution: {integrity: sha512-r3NRQrXkHr4uWy5TOjTpTYojR9XmF0j/RYgKCef+Ag46FWUTltm5ziticv8LdNsDMehjJ543x/+TJAek/xBA2w==} + '@rollup/rollup-win32-ia32-msvc@4.34.9': + resolution: {integrity: sha512-KB48mPtaoHy1AwDNkAJfHXvHp24H0ryZog28spEs0V48l3H1fr4i37tiyHsgKZJnCmvxsbATdZGBpbmxTE3a9w==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.34.8': - resolution: {integrity: sha512-U0FaE5O1BCpZSeE6gBl3c5ObhePQSfk9vDRToMmTkbhCOgW4jqvtS5LGyQ76L1fH8sM0keRp4uDTsbjiUyjk0g==} + '@rollup/rollup-win32-x64-msvc@4.34.9': + resolution: {integrity: sha512-AyleYRPU7+rgkMWbEh71fQlrzRfeP6SyMnRf9XX4fCdDPAJumdSBqYEcWPMzVQ4ScAl7E4oFfK0GUVn77xSwbw==} cpu: [x64] os: [win32] @@ -1899,8 +1899,8 @@ packages: resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rollup@4.34.8: - resolution: {integrity: sha512-489gTVMzAYdiZHFVA/ig/iYFllCcWFHMvUHI1rpFmkoUtRlQxqh6/yiNqnYibjMZ2b/+FUQwldG+aLsEt6bglQ==} + rollup@4.34.9: + resolution: {integrity: sha512-nF5XYqWWp9hx/LrpC8sZvvvmq0TeTjQgaZHYmAgwysT9nh8sWnZhBnM8ZyVbbJFIQBLwHDNoMqsBZBbUo4U8sQ==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -2572,96 +2572,96 @@ snapshots: '@polka/url@1.0.0-next.28': {} - '@rollup/plugin-node-resolve@16.0.0(rollup@4.34.8)': + '@rollup/plugin-node-resolve@16.0.0(rollup@4.34.9)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.34.8) + '@rollup/pluginutils': 5.1.4(rollup@4.34.9) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 resolve: 1.22.10 optionalDependencies: - rollup: 4.34.8 + rollup: 4.34.9 - '@rollup/plugin-terser@0.4.4(rollup@4.34.8)': + '@rollup/plugin-terser@0.4.4(rollup@4.34.9)': dependencies: serialize-javascript: 6.0.2 smob: 1.5.0 terser: 5.39.0 optionalDependencies: - rollup: 4.34.8 + rollup: 4.34.9 - '@rollup/plugin-typescript@12.1.2(rollup@4.34.8)(tslib@2.8.1)(typescript@5.8.2)': + '@rollup/plugin-typescript@12.1.2(rollup@4.34.9)(tslib@2.8.1)(typescript@5.8.2)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.34.8) + '@rollup/pluginutils': 5.1.4(rollup@4.34.9) resolve: 1.22.10 typescript: 5.8.2 optionalDependencies: - rollup: 4.34.8 + rollup: 4.34.9 tslib: 2.8.1 - '@rollup/pluginutils@5.1.4(rollup@4.34.8)': + '@rollup/pluginutils@5.1.4(rollup@4.34.9)': dependencies: '@types/estree': 1.0.6 estree-walker: 2.0.2 picomatch: 4.0.2 optionalDependencies: - rollup: 4.34.8 + rollup: 4.34.9 - '@rollup/rollup-android-arm-eabi@4.34.8': + '@rollup/rollup-android-arm-eabi@4.34.9': optional: true - '@rollup/rollup-android-arm64@4.34.8': + '@rollup/rollup-android-arm64@4.34.9': optional: true - '@rollup/rollup-darwin-arm64@4.34.8': + '@rollup/rollup-darwin-arm64@4.34.9': optional: true - '@rollup/rollup-darwin-x64@4.34.8': + '@rollup/rollup-darwin-x64@4.34.9': optional: true - '@rollup/rollup-freebsd-arm64@4.34.8': + '@rollup/rollup-freebsd-arm64@4.34.9': optional: true - '@rollup/rollup-freebsd-x64@4.34.8': + '@rollup/rollup-freebsd-x64@4.34.9': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.34.8': + '@rollup/rollup-linux-arm-gnueabihf@4.34.9': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.34.8': + '@rollup/rollup-linux-arm-musleabihf@4.34.9': optional: true - '@rollup/rollup-linux-arm64-gnu@4.34.8': + '@rollup/rollup-linux-arm64-gnu@4.34.9': optional: true - '@rollup/rollup-linux-arm64-musl@4.34.8': + '@rollup/rollup-linux-arm64-musl@4.34.9': optional: true - '@rollup/rollup-linux-loongarch64-gnu@4.34.8': + '@rollup/rollup-linux-loongarch64-gnu@4.34.9': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.34.8': + '@rollup/rollup-linux-powerpc64le-gnu@4.34.9': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.34.8': + '@rollup/rollup-linux-riscv64-gnu@4.34.9': optional: true - '@rollup/rollup-linux-s390x-gnu@4.34.8': + '@rollup/rollup-linux-s390x-gnu@4.34.9': optional: true - '@rollup/rollup-linux-x64-gnu@4.34.8': + '@rollup/rollup-linux-x64-gnu@4.34.9': optional: true - '@rollup/rollup-linux-x64-musl@4.34.8': + '@rollup/rollup-linux-x64-musl@4.34.9': optional: true - '@rollup/rollup-win32-arm64-msvc@4.34.8': + '@rollup/rollup-win32-arm64-msvc@4.34.9': optional: true - '@rollup/rollup-win32-ia32-msvc@4.34.8': + '@rollup/rollup-win32-ia32-msvc@4.34.9': optional: true - '@rollup/rollup-win32-x64-msvc@4.34.8': + '@rollup/rollup-win32-x64-msvc@4.34.9': optional: true '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)))(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))': @@ -3852,29 +3852,29 @@ snapshots: reusify@1.1.0: {} - rollup@4.34.8: + rollup@4.34.9: dependencies: '@types/estree': 1.0.6 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.34.8 - '@rollup/rollup-android-arm64': 4.34.8 - '@rollup/rollup-darwin-arm64': 4.34.8 - '@rollup/rollup-darwin-x64': 4.34.8 - '@rollup/rollup-freebsd-arm64': 4.34.8 - '@rollup/rollup-freebsd-x64': 4.34.8 - '@rollup/rollup-linux-arm-gnueabihf': 4.34.8 - '@rollup/rollup-linux-arm-musleabihf': 4.34.8 - '@rollup/rollup-linux-arm64-gnu': 4.34.8 - '@rollup/rollup-linux-arm64-musl': 4.34.8 - '@rollup/rollup-linux-loongarch64-gnu': 4.34.8 - '@rollup/rollup-linux-powerpc64le-gnu': 4.34.8 - '@rollup/rollup-linux-riscv64-gnu': 4.34.8 - '@rollup/rollup-linux-s390x-gnu': 4.34.8 - '@rollup/rollup-linux-x64-gnu': 4.34.8 - '@rollup/rollup-linux-x64-musl': 4.34.8 - '@rollup/rollup-win32-arm64-msvc': 4.34.8 - '@rollup/rollup-win32-ia32-msvc': 4.34.8 - '@rollup/rollup-win32-x64-msvc': 4.34.8 + '@rollup/rollup-android-arm-eabi': 4.34.9 + '@rollup/rollup-android-arm64': 4.34.9 + '@rollup/rollup-darwin-arm64': 4.34.9 + '@rollup/rollup-darwin-x64': 4.34.9 + '@rollup/rollup-freebsd-arm64': 4.34.9 + '@rollup/rollup-freebsd-x64': 4.34.9 + '@rollup/rollup-linux-arm-gnueabihf': 4.34.9 + '@rollup/rollup-linux-arm-musleabihf': 4.34.9 + '@rollup/rollup-linux-arm64-gnu': 4.34.9 + '@rollup/rollup-linux-arm64-musl': 4.34.9 + '@rollup/rollup-linux-loongarch64-gnu': 4.34.9 + '@rollup/rollup-linux-powerpc64le-gnu': 4.34.9 + '@rollup/rollup-linux-riscv64-gnu': 4.34.9 + '@rollup/rollup-linux-s390x-gnu': 4.34.9 + '@rollup/rollup-linux-x64-gnu': 4.34.9 + '@rollup/rollup-linux-x64-musl': 4.34.9 + '@rollup/rollup-win32-arm64-msvc': 4.34.9 + '@rollup/rollup-win32-ia32-msvc': 4.34.9 + '@rollup/rollup-win32-x64-msvc': 4.34.9 fsevents: 2.3.3 run-parallel@1.2.0: @@ -4111,7 +4111,7 @@ snapshots: dependencies: esbuild: 0.25.0 postcss: 8.5.3 - rollup: 4.34.8 + rollup: 4.34.9 optionalDependencies: fsevents: 2.3.3 jiti: 2.4.2 From 1b86af8e2686d0da6f8dd9aabbcc8668100a38a3 Mon Sep 17 00:00:00 2001 From: FabianLars Date: Sat, 1 Mar 2025 14:27:53 +0100 Subject: [PATCH 23/80] chore(deps): Small lockfile update for deduplication purposes. --- Cargo.lock | 49 ++++++++++--------------------------------------- 1 file changed, 10 insertions(+), 39 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 9967337a..1154189d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -685,25 +685,6 @@ dependencies = [ "generic-array", ] -[[package]] -name = "block-sys" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae85a0696e7ea3b835a453750bf002770776609115e6d25c6d2ff28a8200f7e7" -dependencies = [ - "objc-sys", -] - -[[package]] -name = "block2" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e58aa60e59d8dbfcc36138f5f18be5f24394d33b38b24f7fd0b1caa33095f22f" -dependencies = [ - "block-sys", - "objc2 0.5.2", -] - [[package]] name = "block2" version = "0.5.1" @@ -2828,16 +2809,6 @@ dependencies = [ "png", ] -[[package]] -name = "icrate" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fb69199826926eb864697bddd27f73d9fddcffc004f5733131e15b465e30642" -dependencies = [ - "block2 0.4.0", - "objc2 0.5.2", -] - [[package]] name = "icu_collections" version = "1.5.0" @@ -4108,14 +4079,14 @@ dependencies = [ [[package]] name = "objc2-osa-kit" -version = "0.2.2" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6788b04a18ea31e3dc3ab256b8546639e5bbae07c1a0dc4ea8615252bc6aee9a" +checksum = "a1ac59da3ceebc4a82179b35dc550431ad9458f9cc326e053f49ba371ce76c5a" dependencies = [ "bitflags 2.7.0", - "objc2 0.5.2", - "objc2-app-kit 0.2.2", - "objc2-foundation 0.2.2", + "objc2 0.6.0", + "objc2-app-kit 0.3.0", + "objc2-foundation 0.3.0", ] [[package]] @@ -4312,16 +4283,16 @@ dependencies = [ [[package]] name = "osakit" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35366a452fce3f8947eb2f33226a133aaf0cacedef2af67ade348d58be7f85d0" +checksum = "732c71caeaa72c065bb69d7ea08717bd3f4863a4f451402fc9513e29dbd5261b" dependencies = [ - "icrate", - "objc2-foundation 0.2.2", + "objc2 0.6.0", + "objc2-foundation 0.3.0", "objc2-osa-kit", "serde", "serde_json", - "thiserror 1.0.69", + "thiserror 2.0.9", ] [[package]] From e90cd9fab13cd102f3fc7a5e52bf9755135ce192 Mon Sep 17 00:00:00 2001 From: FabianLars Date: Sat, 1 Mar 2025 14:55:23 +0100 Subject: [PATCH 24/80] ci: Use upstream create-pull-request version --- .github/workflows/covector-version-or-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/covector-version-or-publish.yml b/.github/workflows/covector-version-or-publish.yml index 80668b3b..34bd0178 100644 --- a/.github/workflows/covector-version-or-publish.yml +++ b/.github/workflows/covector-version-or-publish.yml @@ -75,7 +75,7 @@ jobs: - name: Create Pull Request With Versions Bumped id: cpr - uses: tauri-apps/create-pull-request@v3 + uses: peter-evans/create-pull-request@dd2324fc52d5d43c699a5636bcf19fceaa70c284 # 7.0.7 if: steps.covector.outputs.commandRan == 'version' with: title: 'Publish New Versions (${{ github.ref_name }})' From 024815018fbc63a37afc716796a454925aa7d25e Mon Sep 17 00:00:00 2001 From: Jim <8757851+3lpsy@users.noreply.github.com> Date: Sat, 1 Mar 2025 09:20:18 -0600 Subject: [PATCH 25/80] feat(log): Add `skip_logger` setting (#2377) --- .changes/skip-logger.md | 5 +++++ plugins/log/src/lib.rs | 45 +++++++++++++++++++++++++++++++---------- 2 files changed, 39 insertions(+), 11 deletions(-) create mode 100644 .changes/skip-logger.md diff --git a/.changes/skip-logger.md b/.changes/skip-logger.md new file mode 100644 index 00000000..d5066491 --- /dev/null +++ b/.changes/skip-logger.md @@ -0,0 +1,5 @@ +--- +'log': 'minor:feat' +'log-js': 'minor:feat' +--- +Add a `is_skip_logger` flag to the Log Plugin `Builder` struct, a `skip_logger()` method to the Builder, and logic to avoid acquiring (creating) a logger and attaching it to the global logger. Since acquire_logger is pub, a `LoggerNotInitialized` is added and returned if it's called when the `is_skip_looger` flag is set. Overall, this feature permits a user to avoid calling `attach_logger` which can only be called once in a program's lifetime and allows the user to control the logger returned from `logger()`. Additionally, it also will allow users to generate multiple Tauri Mock apps in test suites that run and parallel and have the `log` plugin attached (assuming they use `skip_logger()`). diff --git a/plugins/log/src/lib.rs b/plugins/log/src/lib.rs index 9f9a4adf..7cb4a526 100644 --- a/plugins/log/src/lib.rs +++ b/plugins/log/src/lib.rs @@ -58,6 +58,8 @@ pub enum Error { TimeFormat(#[from] time::error::Format), #[error(transparent)] InvalidFormatDescription(#[from] time::error::InvalidFormatDescription), + #[error("Internal logger disabled and cannot be acquired or attached")] + LoggerNotInitialized, } /// An enum representing the available verbosity levels of the logger. @@ -230,6 +232,7 @@ pub struct Builder { timezone_strategy: TimezoneStrategy, max_file_size: u128, targets: Vec, + is_skip_logger: bool, } impl Default for Builder { @@ -258,6 +261,7 @@ impl Default for Builder { timezone_strategy: DEFAULT_TIMEZONE_STRATEGY, max_file_size: DEFAULT_MAX_FILE_SIZE, targets: DEFAULT_LOG_TARGETS.into(), + is_skip_logger: false, } } } @@ -339,6 +343,22 @@ impl Builder { self } + /// Skip the creation and global registration of a logger + /// + /// If you wish to use your own global logger, you must call `skip_logger` so that the plugin does not attempt to set a second global logger. In this configuration, no logger will be created and the plugin's `log` command will rely on the result of `log::logger()`. You will be responsible for configuring the logger yourself and any included targets will be ignored. This can also be used with `tracing-log` or if running tests in parallel that require the plugin to be registered. + /// ```rust + /// static LOGGER: SimpleLogger = SimpleLogger; + /// + /// log::set_logger(&SimpleLogger)?; + /// log::set_max_level(LevelFilter::Info); + /// tauri_plugin_log::Builder::new() + /// .skip_logger(); + /// ``` + pub fn skip_logger(mut self) -> Self { + self.is_skip_logger = true; + self + } + /// Adds a collection of targets to the logger. /// /// ```rust @@ -481,6 +501,9 @@ impl Builder { self, app_handle: &AppHandle, ) -> Result<(TauriPlugin, log::LevelFilter, Box), Error> { + if self.is_skip_logger { + return Err(Error::LoggerNotInitialized); + } let plugin = Self::plugin_builder(); let (max_level, log) = Self::acquire_logger( app_handle, @@ -497,17 +520,17 @@ impl Builder { pub fn build(self) -> TauriPlugin { Self::plugin_builder() .setup(move |app_handle, _api| { - let (max_level, log) = Self::acquire_logger( - app_handle, - self.dispatch, - self.rotation_strategy, - self.timezone_strategy, - self.max_file_size, - self.targets, - )?; - - attach_logger(max_level, log)?; - + if !self.is_skip_logger { + let (max_level, log) = Self::acquire_logger( + app_handle, + self.dispatch, + self.rotation_strategy, + self.timezone_strategy, + self.max_file_size, + self.targets, + )?; + attach_logger(max_level, log)?; + } Ok(()) }) .build() From 561cf39f641eb45c798bfef2d1b736aecf2a1876 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 3 Mar 2025 10:06:03 +0800 Subject: [PATCH 26/80] chore(deps): update dependency prettier to v3.5.3 (#2480) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 7180d733..3af668f3 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ "eslint": "9.21.0", "eslint-config-prettier": "10.0.2", "eslint-plugin-security": "3.0.1", - "prettier": "3.5.2", + "prettier": "3.5.3", "rollup": "4.34.9", "tslib": "2.8.1", "typescript": "5.8.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c7e5a71c..b94dc4a1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -36,8 +36,8 @@ importers: specifier: 3.0.1 version: 3.0.1 prettier: - specifier: 3.5.2 - version: 3.5.2 + specifier: 3.5.3 + version: 3.5.3 rollup: specifier: 4.34.9 version: 4.34.9 @@ -1825,8 +1825,8 @@ packages: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} - prettier@3.5.2: - resolution: {integrity: sha512-lc6npv5PH7hVqozBR7lkBNOGXV9vMwROAPlumdBkX0wTbbzPu/U1hk5yL8p2pt4Xoc+2mkT8t/sow2YrV/M5qg==} + prettier@3.5.3: + resolution: {integrity: sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==} engines: {node: '>=14'} hasBin: true @@ -3788,7 +3788,7 @@ snapshots: prelude-ls@1.2.1: {} - prettier@3.5.2: {} + prettier@3.5.3: {} process-warning@4.0.1: {} From f7f5bbf2597a3ac06ea2d53e862afeef83e691ca Mon Sep 17 00:00:00 2001 From: Tony <68118705+Legend-Master@users.noreply.github.com> Date: Mon, 3 Mar 2025 10:39:43 +0800 Subject: [PATCH 27/80] Ignore vscode settings.json and tasks.json (#2482) --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 72e5a397..56b2e525 100644 --- a/.gitignore +++ b/.gitignore @@ -14,6 +14,8 @@ target/ # .vscode workspace settings file .vscode/settings.json +.vscode/launch.json +.vscode/tasks.json # npm, yarn and bun lock files package-lock.json From 02df0421d6d8a3f53fc5fb0a8594db20406f4146 Mon Sep 17 00:00:00 2001 From: Tony <68118705+Legend-Master@users.noreply.github.com> Date: Mon, 3 Mar 2025 16:08:29 +0800 Subject: [PATCH 28/80] chore(deps): update openssl in lock file (#2484) --- Cargo.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 1154189d..e580987a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4182,9 +4182,9 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.68" +version = "0.10.71" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6174bc48f102d208783c2c84bf931bb75927a617866870de8a4ea85597f871f5" +checksum = "5e14130c6a98cd258fdcb0fb6d744152343ff729cbfcb28c656a9d12b999fbcd" dependencies = [ "bitflags 2.7.0", "cfg-if", @@ -4223,9 +4223,9 @@ dependencies = [ [[package]] name = "openssl-sys" -version = "0.9.104" +version = "0.9.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741" +checksum = "8bb61ea9811cc39e3c2069f40b8b8e2e70d8569b361f879786cc7ed48b777cdd" dependencies = [ "cc", "libc", From 5c9cf52e75c39bc5efbb142d9c32d358413cec4a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 4 Mar 2025 10:26:23 +0100 Subject: [PATCH 29/80] chore(deps): update dependency typescript-eslint to v8.26.0 (#2488) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 114 ++++++++++++++++++++++++------------------------- 2 files changed, 58 insertions(+), 58 deletions(-) diff --git a/package.json b/package.json index 3af668f3..b8e482ee 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "rollup": "4.34.9", "tslib": "2.8.1", "typescript": "5.8.2", - "typescript-eslint": "8.25.0" + "typescript-eslint": "8.26.0" }, "pnpm": { "overrides": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b94dc4a1..f9f595d7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -48,8 +48,8 @@ importers: specifier: 5.8.2 version: 5.8.2 typescript-eslint: - specifier: 8.25.0 - version: 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) + specifier: 8.26.0 + version: 8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) examples/api: dependencies: @@ -928,51 +928,51 @@ packages: '@types/unist@2.0.11': resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} - '@typescript-eslint/eslint-plugin@8.25.0': - resolution: {integrity: sha512-VM7bpzAe7JO/BFf40pIT1lJqS/z1F8OaSsUB3rpFJucQA4cOSuH2RVVVkFULN+En0Djgr29/jb4EQnedUo95KA==} + '@typescript-eslint/eslint-plugin@8.26.0': + resolution: {integrity: sha512-cLr1J6pe56zjKYajK6SSSre6nl1Gj6xDp1TY0trpgPzjVbgDwd09v2Ws37LABxzkicmUjhEeg/fAUjPJJB1v5Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.8.0' + typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/parser@8.25.0': - resolution: {integrity: sha512-4gbs64bnbSzu4FpgMiQ1A+D+urxkoJk/kqlDJ2W//5SygaEiAP2B4GoS7TEdxgwol2el03gckFV9lJ4QOMiiHg==} + '@typescript-eslint/parser@8.26.0': + resolution: {integrity: sha512-mNtXP9LTVBy14ZF3o7JG69gRPBK/2QWtQd0j0oH26HcY/foyJJau6pNUez7QrM5UHnSvwlQcJXKsk0I99B9pOA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.8.0' + typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/scope-manager@8.25.0': - resolution: {integrity: sha512-6PPeiKIGbgStEyt4NNXa2ru5pMzQ8OYKO1hX1z53HMomrmiSB+R5FmChgQAP1ro8jMtNawz+TRQo/cSXrauTpg==} + '@typescript-eslint/scope-manager@8.26.0': + resolution: {integrity: sha512-E0ntLvsfPqnPwng8b8y4OGuzh/iIOm2z8U3S9zic2TeMLW61u5IH2Q1wu0oSTkfrSzwbDJIB/Lm8O3//8BWMPA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@8.25.0': - resolution: {integrity: sha512-d77dHgHWnxmXOPJuDWO4FDWADmGQkN5+tt6SFRZz/RtCWl4pHgFl3+WdYCn16+3teG09DY6XtEpf3gGD0a186g==} + '@typescript-eslint/type-utils@8.26.0': + resolution: {integrity: sha512-ruk0RNChLKz3zKGn2LwXuVoeBcUMh+jaqzN461uMMdxy5H9epZqIBtYj7UiPXRuOpaALXGbmRuZQhmwHhaS04Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.8.0' + typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/types@8.25.0': - resolution: {integrity: sha512-+vUe0Zb4tkNgznQwicsvLUJgZIRs6ITeWSCclX1q85pR1iOiaj+4uZJIUp//Z27QWu5Cseiw3O3AR8hVpax7Aw==} + '@typescript-eslint/types@8.26.0': + resolution: {integrity: sha512-89B1eP3tnpr9A8L6PZlSjBvnJhWXtYfZhECqlBl1D9Lme9mHO6iWlsprBtVenQvY1HMhax1mWOjhtL3fh/u+pA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.25.0': - resolution: {integrity: sha512-ZPaiAKEZ6Blt/TPAx5Ot0EIB/yGtLI2EsGoY6F7XKklfMxYQyvtL+gT/UCqkMzO0BVFHLDlzvFqQzurYahxv9Q==} + '@typescript-eslint/typescript-estree@8.26.0': + resolution: {integrity: sha512-tiJ1Hvy/V/oMVRTbEOIeemA2XoylimlDQ03CgPPNaHYZbpsc78Hmngnt+WXZfJX1pjQ711V7g0H7cSJThGYfPQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - typescript: '>=4.8.4 <5.8.0' + typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/utils@8.25.0': - resolution: {integrity: sha512-syqRbrEv0J1wywiLsK60XzHnQe/kRViI3zwFALrNEgnntn1l24Ra2KvOAWwWbWZ1lBZxZljPDGOq967dsl6fkA==} + '@typescript-eslint/utils@8.26.0': + resolution: {integrity: sha512-2L2tU3FVwhvU14LndnQCA2frYC8JnPDVKyQtWFPf8IYFMt/ykEN1bPolNhNbCVgOmdzTlWdusCTKA/9nKrf8Ig==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.8.0' + typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/visitor-keys@8.25.0': - resolution: {integrity: sha512-kCYXKAum9CecGVHGij7muybDfTS2sD3t0L4bJsEZLkyrXUImiCTq1M3LG2SRtOhiHFwMR9wAFplpT6XHYjTkwQ==} + '@typescript-eslint/visitor-keys@8.26.0': + resolution: {integrity: sha512-2z8JQJWAzPdDd51dRQ/oqIJxe99/hoLIqmf8RMCAJQtYDc535W/Jt2+RTP4bP0aKeBG1F65yjIZuczOXCmbWwg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@unocss/astro@66.0.0': @@ -2054,12 +2054,12 @@ packages: resolution: {integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==} engines: {node: '>=8'} - typescript-eslint@8.25.0: - resolution: {integrity: sha512-TxRdQQLH4g7JkoFlYG3caW5v1S6kEkz8rqt80iQJZUYPq1zD1Ra7HfQBJJ88ABRaMvHAXnwRvRB4V+6sQ9xN5Q==} + typescript-eslint@8.26.0: + resolution: {integrity: sha512-PtVz9nAnuNJuAVeUFvwztjuUgSnJInODAUx47VDwWPXzd5vismPOtPtt83tzNXyOjVQbPRp786D6WFW/M2koIA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.8.0' + typescript: '>=4.8.4 <5.9.0' typescript@5.8.2: resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==} @@ -2743,14 +2743,14 @@ snapshots: '@types/unist@2.0.11': {} - '@typescript-eslint/eslint-plugin@8.25.0(@typescript-eslint/parser@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/eslint-plugin@8.26.0(@typescript-eslint/parser@8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/scope-manager': 8.25.0 - '@typescript-eslint/type-utils': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/utils': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/visitor-keys': 8.25.0 + '@typescript-eslint/parser': 8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/scope-manager': 8.26.0 + '@typescript-eslint/type-utils': 8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/visitor-keys': 8.26.0 eslint: 9.21.0(jiti@2.4.2) graphemer: 1.4.0 ignore: 5.3.2 @@ -2760,27 +2760,27 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/parser@8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: - '@typescript-eslint/scope-manager': 8.25.0 - '@typescript-eslint/types': 8.25.0 - '@typescript-eslint/typescript-estree': 8.25.0(typescript@5.8.2) - '@typescript-eslint/visitor-keys': 8.25.0 + '@typescript-eslint/scope-manager': 8.26.0 + '@typescript-eslint/types': 8.26.0 + '@typescript-eslint/typescript-estree': 8.26.0(typescript@5.8.2) + '@typescript-eslint/visitor-keys': 8.26.0 debug: 4.4.0(supports-color@8.1.1) eslint: 9.21.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@8.25.0': + '@typescript-eslint/scope-manager@8.26.0': dependencies: - '@typescript-eslint/types': 8.25.0 - '@typescript-eslint/visitor-keys': 8.25.0 + '@typescript-eslint/types': 8.26.0 + '@typescript-eslint/visitor-keys': 8.26.0 - '@typescript-eslint/type-utils@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/type-utils@8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: - '@typescript-eslint/typescript-estree': 8.25.0(typescript@5.8.2) - '@typescript-eslint/utils': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/typescript-estree': 8.26.0(typescript@5.8.2) + '@typescript-eslint/utils': 8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) debug: 4.4.0(supports-color@8.1.1) eslint: 9.21.0(jiti@2.4.2) ts-api-utils: 2.0.1(typescript@5.8.2) @@ -2788,12 +2788,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/types@8.25.0': {} + '@typescript-eslint/types@8.26.0': {} - '@typescript-eslint/typescript-estree@8.25.0(typescript@5.8.2)': + '@typescript-eslint/typescript-estree@8.26.0(typescript@5.8.2)': dependencies: - '@typescript-eslint/types': 8.25.0 - '@typescript-eslint/visitor-keys': 8.25.0 + '@typescript-eslint/types': 8.26.0 + '@typescript-eslint/visitor-keys': 8.26.0 debug: 4.4.0(supports-color@8.1.1) fast-glob: 3.3.3 is-glob: 4.0.3 @@ -2804,20 +2804,20 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/utils@8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.21.0(jiti@2.4.2)) - '@typescript-eslint/scope-manager': 8.25.0 - '@typescript-eslint/types': 8.25.0 - '@typescript-eslint/typescript-estree': 8.25.0(typescript@5.8.2) + '@typescript-eslint/scope-manager': 8.26.0 + '@typescript-eslint/types': 8.26.0 + '@typescript-eslint/typescript-estree': 8.26.0(typescript@5.8.2) eslint: 9.21.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/visitor-keys@8.25.0': + '@typescript-eslint/visitor-keys@8.26.0': dependencies: - '@typescript-eslint/types': 8.25.0 + '@typescript-eslint/types': 8.26.0 eslint-visitor-keys: 4.2.0 '@unocss/astro@66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': @@ -4025,11 +4025,11 @@ snapshots: type-fest@0.7.1: {} - typescript-eslint@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2): + typescript-eslint@8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2): dependencies: - '@typescript-eslint/eslint-plugin': 8.25.0(@typescript-eslint/parser@8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/parser': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/utils': 8.25.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/eslint-plugin': 8.26.0(@typescript-eslint/parser@8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/parser': 8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) eslint: 9.21.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: From 3a750c7300a218b5b70480f8adfde24be99c5ce3 Mon Sep 17 00:00:00 2001 From: Khoshbin Ali Ahmed Date: Thu, 6 Mar 2025 23:28:28 +0300 Subject: [PATCH 30/80] docs(clipboard): Fixed typo from rbga to rgba (#2499) --- plugins/clipboard-manager/guest-js/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/clipboard-manager/guest-js/index.ts b/plugins/clipboard-manager/guest-js/index.ts index 19851fe0..a37bbfab 100644 --- a/plugins/clipboard-manager/guest-js/index.ts +++ b/plugins/clipboard-manager/guest-js/index.ts @@ -91,7 +91,7 @@ async function writeImage( * import { readImage } from '@tauri-apps/plugin-clipboard-manager'; * * const clipboardImage = await readImage(); - * const blob = new Blob([await clipboardImage.rbga()], { type: 'image' }) + * const blob = new Blob([await clipboardImage.rgba()], { type: 'image' }) * const url = URL.createObjectURL(blob) * ``` * @since 2.0.0 From d37bbdef8dc70e61e59f9fe0bb8b2a48999d0aa1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Four=C3=A9?= <63391793+SquitchYT@users.noreply.github.com> Date: Fri, 7 Mar 2025 19:53:14 +0100 Subject: [PATCH 31/80] fix(clipboard-manager): Wayland support (#2507) * fix(clipboard-manager): Wayland support * style(deps): merge dependencies declaration --- .changes/clipboard-manager-wayland-support.md | 6 + Cargo.lock | 114 +++++++++++++++++- plugins/clipboard-manager/Cargo.toml | 2 +- 3 files changed, 116 insertions(+), 6 deletions(-) create mode 100644 .changes/clipboard-manager-wayland-support.md diff --git a/.changes/clipboard-manager-wayland-support.md b/.changes/clipboard-manager-wayland-support.md new file mode 100644 index 00000000..0b36c87c --- /dev/null +++ b/.changes/clipboard-manager-wayland-support.md @@ -0,0 +1,6 @@ +--- +'clipboard-manager': 'patch:bug' +'clipboard-manager-js': 'patch:bug' +--- + +Fix clipboard-manager Wayland support. \ No newline at end of file diff --git a/Cargo.lock b/Cargo.lock index e580987a..146fdf44 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -296,6 +296,7 @@ dependencies = [ "objc2-foundation 0.2.2", "parking_lot", "windows-sys 0.48.0", + "wl-clipboard-rs", "x11rb", ] @@ -334,7 +335,7 @@ dependencies = [ "url", "wayland-backend", "wayland-client", - "wayland-protocols", + "wayland-protocols 0.32.5", "zbus", ] @@ -723,7 +724,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2506947f73ad44e344215ccd6403ac2ae18cd8e046e581a441bf8d199f257f03" dependencies = [ "borsh-derive", - "cfg_aliases", + "cfg_aliases 0.2.1", ] [[package]] @@ -935,6 +936,12 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +[[package]] +name = "cfg_aliases" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" + [[package]] name = "cfg_aliases" version = "0.2.1" @@ -1479,6 +1486,17 @@ dependencies = [ "serde", ] +[[package]] +name = "derive-new" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d150dea618e920167e5973d70ae6ece4385b7164e0d799fe7c122dd0a5d912ad" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "derive_arbitrary" version = "1.4.1" @@ -1960,6 +1978,12 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "fixedbitset" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" + [[package]] name = "flate2" version = "1.0.35" @@ -3688,6 +3712,18 @@ dependencies = [ "memoffset 0.6.5", ] +[[package]] +name = "nix" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4" +dependencies = [ + "bitflags 2.7.0", + "cfg-if", + "cfg_aliases 0.1.1", + "libc", +] + [[package]] name = "nix" version = "0.29.0" @@ -3696,7 +3732,7 @@ checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46" dependencies = [ "bitflags 2.7.0", "cfg-if", - "cfg_aliases", + "cfg_aliases 0.2.1", "libc", "memoffset 0.9.1", ] @@ -4386,6 +4422,16 @@ version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" +[[package]] +name = "petgraph" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" +dependencies = [ + "fixedbitset", + "indexmap 2.7.0", +] + [[package]] name = "phf" version = "0.8.0" @@ -4835,7 +4881,7 @@ version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7d5a626c6807713b15cac82a6acaccd6043c9a5408c24baae07611fec3f243da" dependencies = [ - "cfg_aliases", + "cfg_aliases 0.2.1", "libc", "once_cell", "socket2", @@ -5780,7 +5826,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "18051cdd562e792cad055119e0cdb2cfc137e44e3987532e0f9659a77931bb08" dependencies = [ "bytemuck", - "cfg_aliases", + "cfg_aliases 0.2.1", "core-graphics 0.24.0", "foreign-types 0.5.0", "js-sys", @@ -7477,6 +7523,19 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "tree_magic_mini" +version = "3.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aac5e8971f245c3389a5a76e648bfc80803ae066a1243a75db0064d7c1129d63" +dependencies = [ + "fnv", + "memchr", + "nom", + "once_cell", + "petgraph", +] + [[package]] name = "trim-in-place" version = "0.1.7" @@ -7921,6 +7980,18 @@ dependencies = [ "wayland-scanner", ] +[[package]] +name = "wayland-protocols" +version = "0.31.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f81f365b8b4a97f422ac0e8737c438024b5951734506b0e1d775c73030561f4" +dependencies = [ + "bitflags 2.7.0", + "wayland-backend", + "wayland-client", + "wayland-scanner", +] + [[package]] name = "wayland-protocols" version = "0.32.5" @@ -7933,6 +8004,19 @@ dependencies = [ "wayland-scanner", ] +[[package]] +name = "wayland-protocols-wlr" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad1f61b76b6c2d8742e10f9ba5c3737f6530b4c243132c2a2ccc8aa96fe25cd6" +dependencies = [ + "bitflags 2.7.0", + "wayland-backend", + "wayland-client", + "wayland-protocols 0.31.2", + "wayland-scanner", +] + [[package]] name = "wayland-scanner" version = "0.31.5" @@ -8657,6 +8741,26 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "wl-clipboard-rs" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12b41773911497b18ca8553c3daaf8ec9fe9819caf93d451d3055f69de028adb" +dependencies = [ + "derive-new", + "libc", + "log", + "nix 0.28.0", + "os_pipe", + "tempfile", + "thiserror 1.0.69", + "tree_magic_mini", + "wayland-backend", + "wayland-client", + "wayland-protocols 0.31.2", + "wayland-protocols-wlr", +] + [[package]] name = "write16" version = "1.0.0" diff --git a/plugins/clipboard-manager/Cargo.toml b/plugins/clipboard-manager/Cargo.toml index 5b486fcf..c5885822 100644 --- a/plugins/clipboard-manager/Cargo.toml +++ b/plugins/clipboard-manager/Cargo.toml @@ -36,4 +36,4 @@ thiserror = { workspace = true } tauri = { workspace = true, features = ["wry"] } [target."cfg(any(target_os = \"macos\", windows, target_os = \"linux\", target_os = \"dragonfly\", target_os = \"freebsd\", target_os = \"openbsd\", target_os = \"netbsd\"))".dependencies] -arboard = "3" +arboard = { version = "3", features = ["wayland-data-control"] } From cb38f54f4a4ef30995283cd82166c62da17bac44 Mon Sep 17 00:00:00 2001 From: Adriel Jansen Siahaya <166703058+adrieljss@users.noreply.github.com> Date: Sun, 9 Mar 2025 02:45:05 +0800 Subject: [PATCH 32/80] HTTP add stream support (#2479) * feat: add stream support * feat: add stream support * Revert "feat: add stream support" This reverts commit 5edea816802fa8637982db96505832abbc7c450f. * feat: add stream support * Discard changes to pnpm-lock.yaml * Discard changes to plugins/http/package.json * fix(stream): change IPC packet * fix: update stream message guest-js * fix: return early when aborted * fix: use InvokeResponseBody as packet * fix: remove serde_bytes * fix: remove reqwest response * fix: content conversion bug * fix: remove ReqwestResponses along with its implementations * formatting and update changelog * build api-iife.js --------- Co-authored-by: Fabian-Lars --- .changes/http-stream-support.md | 6 ++++ Cargo.lock | 10 +++--- plugins/http/api-iife.js | 2 +- plugins/http/guest-js/index.ts | 59 +++++++++++++++++++++------------ plugins/http/src/commands.rs | 38 ++++++++++----------- plugins/http/src/lib.rs | 3 +- 6 files changed, 67 insertions(+), 51 deletions(-) create mode 100644 .changes/http-stream-support.md diff --git a/.changes/http-stream-support.md b/.changes/http-stream-support.md new file mode 100644 index 00000000..d9e38a6b --- /dev/null +++ b/.changes/http-stream-support.md @@ -0,0 +1,6 @@ +--- +"http": minor +"http-js": minor +--- + +Add stream support for HTTP stream responses. diff --git a/Cargo.lock b/Cargo.lock index 146fdf44..4fde9953 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1865,7 +1865,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" dependencies = [ "libc", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -3373,7 +3373,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34" dependencies = [ "cfg-if", - "windows-targets 0.48.5", + "windows-targets 0.52.6", ] [[package]] @@ -4886,7 +4886,7 @@ dependencies = [ "once_cell", "socket2", "tracing", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -7142,7 +7142,7 @@ dependencies = [ "fastrand", "once_cell", "rustix", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -8210,7 +8210,7 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" dependencies = [ - "windows-sys 0.48.0", + "windows-sys 0.59.0", ] [[package]] diff --git a/plugins/http/api-iife.js b/plugins/http/api-iife.js index 76b498ad..bb2cb09b 100644 --- a/plugins/http/api-iife.js +++ b/plugins/http/api-iife.js @@ -1 +1 @@ -if("__TAURI__"in window){var __TAURI_PLUGIN_HTTP__=function(e){"use strict";async function t(e,t={},r){return window.__TAURI_INTERNALS__.invoke(e,t,r)}"function"==typeof SuppressedError&&SuppressedError;const r="Request canceled";return e.fetch=async function(e,n){const a=n?.signal;if(a?.aborted)throw new Error(r);const o=n?.maxRedirections,s=n?.connectTimeout,i=n?.proxy,d=n?.danger;n&&(delete n.maxRedirections,delete n.connectTimeout,delete n.proxy,delete n.danger);const c=n?.headers?n.headers instanceof Headers?n.headers:new Headers(n.headers):new Headers,u=new Request(e,n),f=await u.arrayBuffer(),_=0!==f.byteLength?Array.from(new Uint8Array(f)):null;for(const[e,t]of u.headers)c.get(e)||c.set(e,t);const h=(c instanceof Headers?Array.from(c.entries()):Array.isArray(c)?c:Object.entries(c)).map((([e,t])=>[e,"string"==typeof t?t:t.toString()]));if(a?.aborted)throw new Error(r);const l=await t("plugin:http|fetch",{clientConfig:{method:u.method,url:u.url,headers:h,data:_,maxRedirections:o,connectTimeout:s,proxy:i,danger:d}}),p=()=>t("plugin:http|fetch_cancel",{rid:l});if(a?.aborted)throw p(),new Error(r);a?.addEventListener("abort",(()=>{p()}));const{status:w,statusText:y,url:g,headers:T,rid:A}=await t("plugin:http|fetch_send",{rid:l}),R=await t("plugin:http|fetch_read_body",{rid:A}),b=new Response(R instanceof ArrayBuffer&&0!==R.byteLength?R:R instanceof Array&&R.length>0?new Uint8Array(R):null,{status:w,statusText:y});return Object.defineProperty(b,"url",{value:g}),Object.defineProperty(b,"headers",{value:new Headers(T)}),b},e}({});Object.defineProperty(window.__TAURI__,"http",{value:__TAURI_PLUGIN_HTTP__})} +if("__TAURI__"in window){var __TAURI_PLUGIN_HTTP__=function(e){"use strict";function t(e,t,r,n){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)}function r(e,t,r,n,s){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return t.set(e,r),r}var n,s,a;"function"==typeof SuppressedError&&SuppressedError;const i="__TAURI_TO_IPC_KEY__";class o{constructor(){this.__TAURI_CHANNEL_MARKER__=!0,n.set(this,(()=>{})),s.set(this,0),a.set(this,[]),this.id=function(e,t=!1){return window.__TAURI_INTERNALS__.transformCallback(e,t)}((({message:e,id:i})=>{if(i==t(this,s,"f"))for(t(this,n,"f").call(this,e),r(this,s,t(this,s,"f")+1);t(this,s,"f")in t(this,a,"f");){const e=t(this,a,"f")[t(this,s,"f")];t(this,n,"f").call(this,e),delete t(this,a,"f")[t(this,s,"f")],r(this,s,t(this,s,"f")+1)}else t(this,a,"f")[i]=e}))}set onmessage(e){r(this,n,e)}get onmessage(){return t(this,n,"f")}[(n=new WeakMap,s=new WeakMap,a=new WeakMap,i)](){return`__CHANNEL__:${this.id}`}toJSON(){return this[i]()}}async function c(e,t={},r){return window.__TAURI_INTERNALS__.invoke(e,t,r)}const d="Request canceled";return e.fetch=async function(e,t){const r=t?.signal;if(r?.aborted)throw new Error(d);const n=t?.maxRedirections,s=t?.connectTimeout,a=t?.proxy,i=t?.danger;t&&(delete t.maxRedirections,delete t.connectTimeout,delete t.proxy,delete t.danger);const f=t?.headers?t.headers instanceof Headers?t.headers:new Headers(t.headers):new Headers,h=new Request(e,t),_=await h.arrayBuffer(),u=0!==_.byteLength?Array.from(new Uint8Array(_)):null;for(const[e,t]of h.headers)f.get(e)||f.set(e,t);const l=(f instanceof Headers?Array.from(f.entries()):Array.isArray(f)?f:Object.entries(f)).map((([e,t])=>[e,"string"==typeof t?t:t.toString()]));if(r?.aborted)throw new Error(d);const w=new o,p=new ReadableStream({start:e=>{w.onmessage=t=>{if(r?.aborted)return e.error(d),void e.close();(t instanceof ArrayBuffer?0!=t.byteLength:0!=t.length)?e.enqueue(new Uint8Array(t)):e.close()}}}),m=await c("plugin:http|fetch",{clientConfig:{method:h.method,url:h.url,headers:l,data:u,maxRedirections:n,connectTimeout:s,proxy:a,danger:i},streamChannel:w}),y=()=>c("plugin:http|fetch_cancel",{rid:m});if(r?.aborted)throw y(),new Error(d);r?.addEventListener("abort",(()=>{y()}));const{status:T,statusText:g,url:A,headers:R}=await c("plugin:http|fetch_send",{rid:m}),b=new Response(p,{status:T,statusText:g});return Object.defineProperty(b,"url",{value:A}),Object.defineProperty(b,"headers",{value:new Headers(R)}),b},e}({});Object.defineProperty(window.__TAURI__,"http",{value:__TAURI_PLUGIN_HTTP__})} diff --git a/plugins/http/guest-js/index.ts b/plugins/http/guest-js/index.ts index bea18e44..2d86e9d8 100644 --- a/plugins/http/guest-js/index.ts +++ b/plugins/http/guest-js/index.ts @@ -26,7 +26,7 @@ * @module */ -import { invoke } from '@tauri-apps/api/core' +import { Channel, invoke } from '@tauri-apps/api/core' /** * Configuration of a proxy that a Client should pass requests to. @@ -186,6 +186,35 @@ export async function fetch( throw new Error(ERROR_REQUEST_CANCELLED) } + const streamChannel = new Channel() + + const readableStreamBody = new ReadableStream({ + start: (controller) => { + streamChannel.onmessage = (res: ArrayBuffer | number[]) => { + // close early if aborted + if (signal?.aborted) { + controller.error(ERROR_REQUEST_CANCELLED) + controller.close() + return + } + + // close when the signal to close (an empty chunk) + // is sent from the IPC. + if ( + res instanceof ArrayBuffer ? res.byteLength == 0 : res.length == 0 + ) { + controller.close() + return + } + + // the content conversion (like .text(), .json(), etc.) in Response + // must have Uint8Array as its content, else it will + // have untraceable error that's hard to debug. + controller.enqueue(new Uint8Array(res)) + } + } + }) + const rid = await invoke('plugin:http|fetch', { clientConfig: { method: req.method, @@ -196,7 +225,8 @@ export async function fetch( connectTimeout, proxy, danger - } + }, + streamChannel }) const abort = () => invoke('plugin:http|fetch_cancel', { rid }) @@ -223,30 +253,15 @@ export async function fetch( status, statusText, url, - headers: responseHeaders, - rid: responseRid + headers: responseHeaders } = await invoke('plugin:http|fetch_send', { rid }) - const body = await invoke( - 'plugin:http|fetch_read_body', - { - rid: responseRid - } - ) - - const res = new Response( - body instanceof ArrayBuffer && body.byteLength !== 0 - ? body - : body instanceof Array && body.length > 0 - ? new Uint8Array(body) - : null, - { - status, - statusText - } - ) + const res = new Response(readableStreamBody, { + status, + statusText + }) // url and headers are read only properties // but seems like we can set them like this diff --git a/plugins/http/src/commands.rs b/plugins/http/src/commands.rs index 3dc0297e..17e514e2 100644 --- a/plugins/http/src/commands.rs +++ b/plugins/http/src/commands.rs @@ -10,7 +10,7 @@ use serde::{Deserialize, Serialize}; use tauri::{ async_runtime::Mutex, command, - ipc::{CommandScope, GlobalScope}, + ipc::{Channel, CommandScope, GlobalScope}, Manager, ResourceId, ResourceTable, Runtime, State, Webview, }; use tokio::sync::oneshot::{channel, Receiver, Sender}; @@ -22,9 +22,6 @@ use crate::{ const HTTP_USER_AGENT: &str = concat!(env!("CARGO_PKG_NAME"), "/", env!("CARGO_PKG_VERSION"),); -struct ReqwestResponse(reqwest::Response); -impl tauri::Resource for ReqwestResponse {} - type CancelableResponseResult = Result; type CancelableResponseFuture = Pin + Send + Sync>>; @@ -181,6 +178,7 @@ pub async fn fetch( client_config: ClientConfig, command_scope: CommandScope, global_scope: GlobalScope, + stream_channel: Channel, ) -> crate::Result { let ClientConfig { method, @@ -314,7 +312,21 @@ pub async fn fetch( #[cfg(feature = "tracing")] tracing::trace!("{:?}", request); - let fut = async move { request.send().await.map_err(Into::into) }; + let fut = async move { + let mut res = request.send().await?; + + // send response through IPC channel + while let Some(chunk) = res.chunk().await? { + stream_channel.send(tauri::ipc::InvokeResponseBody::Raw(chunk.to_vec()))?; + } + + // send empty vector when done + stream_channel.send(tauri::ipc::InvokeResponseBody::Raw(Vec::new()))?; + + // return that response + Ok(res) + }; + let mut resources_table = webview.resources_table(); let rid = resources_table.add_request(Box::pin(fut)); @@ -398,9 +410,6 @@ pub async fn fetch_send( )); } - let mut resources_table = webview.resources_table(); - let rid = resources_table.add(ReqwestResponse(res)); - Ok(FetchResponse { status: status.as_u16(), status_text: status.canonical_reason().unwrap_or_default().to_string(), @@ -410,19 +419,6 @@ pub async fn fetch_send( }) } -#[tauri::command] -pub(crate) async fn fetch_read_body( - webview: Webview, - rid: ResourceId, -) -> crate::Result { - let res = { - let mut resources_table = webview.resources_table(); - resources_table.take::(rid)? - }; - let res = Arc::into_inner(res).unwrap().0; - Ok(tauri::ipc::Response::new(res.bytes().await?.to_vec())) -} - // forbidden headers per fetch spec https://fetch.spec.whatwg.org/#terminology-headers #[cfg(not(feature = "unsafe-headers"))] fn is_unsafe_header(header: &HeaderName) -> bool { diff --git a/plugins/http/src/lib.rs b/plugins/http/src/lib.rs index d775760c..4e11e561 100644 --- a/plugins/http/src/lib.rs +++ b/plugins/http/src/lib.rs @@ -36,8 +36,7 @@ pub fn init() -> TauriPlugin { .invoke_handler(tauri::generate_handler![ commands::fetch, commands::fetch_cancel, - commands::fetch_send, - commands::fetch_read_body, + commands::fetch_send ]) .build() } From ac60d589eca2bbc4aed040feb18da148e66ec171 Mon Sep 17 00:00:00 2001 From: Lucas Fernandes Nogueira Date: Sat, 8 Mar 2025 22:24:45 -0300 Subject: [PATCH 33/80] feat(updater): improve tracing and error logging (#2513) --- .changes/updater-logs.md | 6 ++++++ Cargo.lock | 1 + plugins/updater/Cargo.toml | 1 + plugins/updater/src/updater.rs | 35 +++++++++++++++++++++++++++++----- 4 files changed, 38 insertions(+), 5 deletions(-) create mode 100644 .changes/updater-logs.md diff --git a/.changes/updater-logs.md b/.changes/updater-logs.md new file mode 100644 index 00000000..35e8454a --- /dev/null +++ b/.changes/updater-logs.md @@ -0,0 +1,6 @@ +--- +"updater": patch +"updater-js": patch +--- + +Enhance error logging. diff --git a/Cargo.lock b/Cargo.lock index 4fde9953..4b24a009 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -6959,6 +6959,7 @@ dependencies = [ "futures-util", "http", "infer", + "log", "minisign-verify", "osakit", "percent-encoding", diff --git a/plugins/updater/Cargo.toml b/plugins/updater/Cargo.toml index 4d462f31..68c03c9b 100644 --- a/plugins/updater/Cargo.toml +++ b/plugins/updater/Cargo.toml @@ -30,6 +30,7 @@ tauri = { workspace = true } serde = { workspace = true } serde_json = { workspace = true } thiserror = { workspace = true } +log = { workspace = true } tokio = "1" reqwest = { version = "0.12", default-features = false, features = [ "json", diff --git a/plugins/updater/src/updater.rs b/plugins/updater/src/updater.rs index 21acc732..37472b7c 100644 --- a/plugins/updater/src/updater.rs +++ b/plugins/updater/src/updater.rs @@ -371,11 +371,14 @@ impl Updater { .replace("{{arch}}", self.arch) .parse()?; + log::debug!("checking for updates {url}"); + let mut request = ClientBuilder::new().user_agent(UPDATER_USER_AGENT); if let Some(timeout) = self.timeout { request = request.timeout(timeout); } if let Some(ref proxy) = self.proxy { + log::debug!("using proxy {proxy}"); let proxy = reqwest::Proxy::all(proxy.as_str())?; request = request.proxy(proxy); } @@ -391,24 +394,38 @@ impl Updater { if res.status().is_success() { // no updates found! if StatusCode::NO_CONTENT == res.status() { + log::debug!("update endpoint returned 204 No Content"); return Ok(None); }; - raw_json = Some(res.json().await?); - match serde_json::from_value::(raw_json.clone().unwrap()) + let update_response: serde_json::Value = res.json().await?; + log::debug!("update response: {update_response:?}"); + raw_json = Some(update_response.clone()); + match serde_json::from_value::(update_response) .map_err(Into::into) { Ok(release) => { + println!("parsed release response {release:?}"); last_error = None; remote_release = Some(release); - // we found a relase, break the loop + // we found a release, break the loop break; } - Err(err) => last_error = Some(err), + Err(err) => { + log::error!("failed to deserialize update response: {err}"); + last_error = Some(err) + } } + } else { + log::error!( + "update endpoint did not respond with a successful status code" + ); } } - Err(err) => last_error = Some(err.into()), + Err(err) => { + log::error!("failed to check for updates: {err}"); + last_error = Some(err.into()) + } } } @@ -670,6 +687,7 @@ impl Update { }; if let Some(on_before_exit) = self.on_before_exit.as_ref() { + log::debug!("running on_before_exit hook"); on_before_exit(); } @@ -838,6 +856,7 @@ impl Update { #[cfg(feature = "zip")] if infer::archive::is_gz(bytes) { + log::debug!("extracting AppImage"); // extract the buffer to the tmp_dir // we extract our signed archive into our final directory without any temp file let archive = Cursor::new(bytes); @@ -861,6 +880,7 @@ impl Update { return Err(Error::BinaryNotFoundInArchive); } + log::debug!("rewriting AppImage"); return match std::fs::write(&self.extract_path, bytes) .and_then(|_| std::fs::set_permissions(&self.extract_path, permissions)) { @@ -914,6 +934,7 @@ impl Update { fn install_deb(&self, bytes: &[u8]) -> Result<()> { // First verify the bytes are actually a .deb package if !infer::archive::is_deb(bytes) { + log::warn!("update is not a valid deb package"); return Err(Error::InvalidUpdaterFormat); } @@ -956,6 +977,7 @@ impl Update { .status() { if status.success() { + log::debug!("installed deb with pkexec"); return Ok(()); } } @@ -963,6 +985,7 @@ impl Update { // 2. Try zenity or kdialog for a graphical sudo experience if let Ok(password) = self.get_password_graphically() { if self.install_with_sudo(deb_path, &password)? { + log::debug!("installed deb with GUI sudo"); return Ok(()); } } @@ -975,6 +998,7 @@ impl Update { .status()?; if status.success() { + log::debug!("installed deb with sudo"); Ok(()) } else { Err(Error::DebInstallFailed) @@ -1098,6 +1122,7 @@ impl Update { }; if need_authorization { + log::debug!("app installation needs admin privileges"); // Use AppleScript to perform moves with admin privileges let apple_script = format!( "do shell script \"rm -rf '{src}' && mv -f '{new}' '{src}'\" with administrator privileges", From faefcc9fd8c61f709d491649e255a7fcac82c09a Mon Sep 17 00:00:00 2001 From: Guilherme Oenning Date: Sun, 9 Mar 2025 01:53:16 +0000 Subject: [PATCH 34/80] feat(updater): add `configure_client` to `UpdaterBuilder` (#2430) --- .changes/updater-add-on-before-request.md | 6 +++++ plugins/updater/src/updater.rs | 28 +++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 .changes/updater-add-on-before-request.md diff --git a/.changes/updater-add-on-before-request.md b/.changes/updater-add-on-before-request.md new file mode 100644 index 00000000..f086d35e --- /dev/null +++ b/.changes/updater-add-on-before-request.md @@ -0,0 +1,6 @@ +--- +"updater": minor +"updater-js": minor +--- + +Add `UpdaterBuilder::configure_client` method on Rust side, to configure the `reqwest` client used to check and download the update. \ No newline at end of file diff --git a/plugins/updater/src/updater.rs b/plugins/updater/src/updater.rs index 37472b7c..8a4fbb04 100644 --- a/plugins/updater/src/updater.rs +++ b/plugins/updater/src/updater.rs @@ -96,6 +96,7 @@ impl RemoteRelease { } pub type OnBeforeExit = Arc; +pub type OnBeforeRequest = Arc ClientBuilder + Send + Sync + 'static>; pub type VersionComparator = Arc bool + Send + Sync>; type MainThreadClosure = Box; type RunOnMainThread = @@ -117,6 +118,7 @@ pub struct UpdaterBuilder { installer_args: Vec, current_exe_args: Vec, on_before_exit: Option, + configure_client: Option, } impl UpdaterBuilder { @@ -143,6 +145,7 @@ impl UpdaterBuilder { timeout: None, proxy: None, on_before_exit: None, + configure_client: None, } } @@ -242,6 +245,19 @@ impl UpdaterBuilder { self } + /// Allows you to modify the `reqwest` client builder before the HTTP request is sent. + /// + /// Note that `reqwest` crate may be updated in minor releases of tauri-plugin-updater. + /// Therefore it's recommended to pin the plugin to at least a minor version when you're using `configure_client`. + /// + pub fn configure_client ClientBuilder + Send + Sync + 'static>( + mut self, + f: F, + ) -> Self { + self.configure_client.replace(Arc::new(f)); + self + } + pub fn build(self) -> Result { let endpoints = self .endpoints @@ -285,6 +301,7 @@ impl UpdaterBuilder { headers: self.headers, extract_path, on_before_exit: self.on_before_exit, + configure_client: self.configure_client, }) } } @@ -319,6 +336,7 @@ pub struct Updater { headers: HeaderMap, extract_path: PathBuf, on_before_exit: Option, + configure_client: Option, #[allow(unused)] installer_args: Vec, #[allow(unused)] @@ -382,6 +400,11 @@ impl Updater { let proxy = reqwest::Proxy::all(proxy.as_str())?; request = request.proxy(proxy); } + + if let Some(ref configure_client) = self.configure_client { + request = configure_client(request); + } + let response = request .build()? .get(url) @@ -463,6 +486,7 @@ impl Updater { headers: self.headers.clone(), installer_args: self.installer_args.clone(), current_exe_args: self.current_exe_args.clone(), + configure_client: self.configure_client.clone(), }) } else { None @@ -511,6 +535,7 @@ pub struct Update { installer_args: Vec, #[allow(unused)] current_exe_args: Vec, + configure_client: Option, } impl Resource for Update {} @@ -539,6 +564,9 @@ impl Update { let proxy = reqwest::Proxy::all(proxy.as_str())?; request = request.proxy(proxy); } + if let Some(ref configure_client) = self.configure_client { + request = configure_client(request); + } let response = request .build()? .get(self.download_url.clone()) From dbc5fe120a5beaa2c4e44ecbf8e4e73541e6d419 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 9 Mar 2025 10:33:15 +0800 Subject: [PATCH 35/80] chore(deps): update dependency eslint-config-prettier to v10.1.1 (#2503) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index b8e482ee..f055239e 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "@rollup/plugin-typescript": "12.1.2", "covector": "^0.12.4", "eslint": "9.21.0", - "eslint-config-prettier": "10.0.2", + "eslint-config-prettier": "10.1.1", "eslint-plugin-security": "3.0.1", "prettier": "3.5.3", "rollup": "4.34.9", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f9f595d7..33dc4b47 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -30,8 +30,8 @@ importers: specifier: 9.21.0 version: 9.21.0(jiti@2.4.2) eslint-config-prettier: - specifier: 10.0.2 - version: 10.0.2(eslint@9.21.0(jiti@2.4.2)) + specifier: 10.1.1 + version: 10.1.1(eslint@9.21.0(jiti@2.4.2)) eslint-plugin-security: specifier: 3.0.1 version: 3.0.1 @@ -1329,8 +1329,8 @@ packages: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} - eslint-config-prettier@10.0.2: - resolution: {integrity: sha512-1105/17ZIMjmCOJOPNfVdbXafLCLj3hPmkmB7dLgt7XsQ/zkxSuDerE/xgO3RxoHysR1N1whmquY0lSn2O0VLg==} + eslint-config-prettier@10.1.1: + resolution: {integrity: sha512-4EQQr6wXwS+ZJSzaR5ZCrYgLxqvUjdXctaEtBqHcbkW944B1NQyO4qpdHQbXBONfwxXdkAY81HH4+LUfrg+zPw==} hasBin: true peerDependencies: eslint: '>=7.0.0' @@ -3273,7 +3273,7 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-config-prettier@10.0.2(eslint@9.21.0(jiti@2.4.2)): + eslint-config-prettier@10.1.1(eslint@9.21.0(jiti@2.4.2)): dependencies: eslint: 9.21.0(jiti@2.4.2) From 77520a3587270b15d38042b37ad5d0d4d7f8a610 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 9 Mar 2025 10:33:37 +0800 Subject: [PATCH 36/80] chore(deps): update dependency rollup to v4.35.0 (#2511) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 190 ++++++++++++++++++++++++------------------------- 2 files changed, 96 insertions(+), 96 deletions(-) diff --git a/package.json b/package.json index f055239e..c9f73fbf 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "eslint-config-prettier": "10.1.1", "eslint-plugin-security": "3.0.1", "prettier": "3.5.3", - "rollup": "4.34.9", + "rollup": "4.35.0", "tslib": "2.8.1", "typescript": "5.8.2", "typescript-eslint": "8.26.0" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 33dc4b47..716db84e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -16,13 +16,13 @@ importers: version: 9.21.0 '@rollup/plugin-node-resolve': specifier: 16.0.0 - version: 16.0.0(rollup@4.34.9) + version: 16.0.0(rollup@4.35.0) '@rollup/plugin-terser': specifier: 0.4.4 - version: 0.4.4(rollup@4.34.9) + version: 0.4.4(rollup@4.35.0) '@rollup/plugin-typescript': specifier: 12.1.2 - version: 12.1.2(rollup@4.34.9)(tslib@2.8.1)(typescript@5.8.2) + version: 12.1.2(rollup@4.35.0)(tslib@2.8.1)(typescript@5.8.2) covector: specifier: ^0.12.4 version: 0.12.4(mocha@10.8.2) @@ -39,8 +39,8 @@ importers: specifier: 3.5.3 version: 3.5.3 rollup: - specifier: 4.34.9 - version: 4.34.9 + specifier: 4.35.0 + version: 4.35.0 tslib: specifier: 2.8.1 version: 2.8.1 @@ -735,98 +735,98 @@ packages: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.34.9': - resolution: {integrity: sha512-qZdlImWXur0CFakn2BJ2znJOdqYZKiedEPEVNTBrpfPjc/YuTGcaYZcdmNFTkUj3DU0ZM/AElcM8Ybww3xVLzA==} + '@rollup/rollup-android-arm-eabi@4.35.0': + resolution: {integrity: sha512-uYQ2WfPaqz5QtVgMxfN6NpLD+no0MYHDBywl7itPYd3K5TjjSghNKmX8ic9S8NU8w81NVhJv/XojcHptRly7qQ==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.34.9': - resolution: {integrity: sha512-4KW7P53h6HtJf5Y608T1ISKvNIYLWRKMvfnG0c44M6In4DQVU58HZFEVhWINDZKp7FZps98G3gxwC1sb0wXUUg==} + '@rollup/rollup-android-arm64@4.35.0': + resolution: {integrity: sha512-FtKddj9XZudurLhdJnBl9fl6BwCJ3ky8riCXjEw3/UIbjmIY58ppWwPEvU3fNu+W7FUsAsB1CdH+7EQE6CXAPA==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.34.9': - resolution: {integrity: sha512-0CY3/K54slrzLDjOA7TOjN1NuLKERBgk9nY5V34mhmuu673YNb+7ghaDUs6N0ujXR7fz5XaS5Aa6d2TNxZd0OQ==} + '@rollup/rollup-darwin-arm64@4.35.0': + resolution: {integrity: sha512-Uk+GjOJR6CY844/q6r5DR/6lkPFOw0hjfOIzVx22THJXMxktXG6CbejseJFznU8vHcEBLpiXKY3/6xc+cBm65Q==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.34.9': - resolution: {integrity: sha512-eOojSEAi/acnsJVYRxnMkPFqcxSMFfrw7r2iD9Q32SGkb/Q9FpUY1UlAu1DH9T7j++gZ0lHjnm4OyH2vCI7l7Q==} + '@rollup/rollup-darwin-x64@4.35.0': + resolution: {integrity: sha512-3IrHjfAS6Vkp+5bISNQnPogRAW5GAV1n+bNCrDwXmfMHbPl5EhTmWtfmwlJxFRUCBZ+tZ/OxDyU08aF6NI/N5Q==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.34.9': - resolution: {integrity: sha512-2lzjQPJbN5UnHm7bHIUKFMulGTQwdvOkouJDpPysJS+QFBGDJqcfh+CxxtG23Ik/9tEvnebQiylYoazFMAgrYw==} + '@rollup/rollup-freebsd-arm64@4.35.0': + resolution: {integrity: sha512-sxjoD/6F9cDLSELuLNnY0fOrM9WA0KrM0vWm57XhrIMf5FGiN8D0l7fn+bpUeBSU7dCgPV2oX4zHAsAXyHFGcQ==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.34.9': - resolution: {integrity: sha512-SLl0hi2Ah2H7xQYd6Qaiu01kFPzQ+hqvdYSoOtHYg/zCIFs6t8sV95kaoqjzjFwuYQLtOI0RZre/Ke0nPaQV+g==} + '@rollup/rollup-freebsd-x64@4.35.0': + resolution: {integrity: sha512-2mpHCeRuD1u/2kruUiHSsnjWtHjqVbzhBkNVQ1aVD63CcexKVcQGwJ2g5VphOd84GvxfSvnnlEyBtQCE5hxVVw==} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.34.9': - resolution: {integrity: sha512-88I+D3TeKItrw+Y/2ud4Tw0+3CxQ2kLgu3QvrogZ0OfkmX/DEppehus7L3TS2Q4lpB+hYyxhkQiYPJ6Mf5/dPg==} + '@rollup/rollup-linux-arm-gnueabihf@4.35.0': + resolution: {integrity: sha512-mrA0v3QMy6ZSvEuLs0dMxcO2LnaCONs1Z73GUDBHWbY8tFFocM6yl7YyMu7rz4zS81NDSqhrUuolyZXGi8TEqg==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.34.9': - resolution: {integrity: sha512-3qyfWljSFHi9zH0KgtEPG4cBXHDFhwD8kwg6xLfHQ0IWuH9crp005GfoUUh/6w9/FWGBwEHg3lxK1iHRN1MFlA==} + '@rollup/rollup-linux-arm-musleabihf@4.35.0': + resolution: {integrity: sha512-DnYhhzcvTAKNexIql8pFajr0PiDGrIsBYPRvCKlA5ixSS3uwo/CWNZxB09jhIapEIg945KOzcYEAGGSmTSpk7A==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.34.9': - resolution: {integrity: sha512-6TZjPHjKZUQKmVKMUowF3ewHxctrRR09eYyvT5eFv8w/fXarEra83A2mHTVJLA5xU91aCNOUnM+DWFMSbQ0Nxw==} + '@rollup/rollup-linux-arm64-gnu@4.35.0': + resolution: {integrity: sha512-uagpnH2M2g2b5iLsCTZ35CL1FgyuzzJQ8L9VtlJ+FckBXroTwNOaD0z0/UF+k5K3aNQjbm8LIVpxykUOQt1m/A==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.34.9': - resolution: {integrity: sha512-LD2fytxZJZ6xzOKnMbIpgzFOuIKlxVOpiMAXawsAZ2mHBPEYOnLRK5TTEsID6z4eM23DuO88X0Tq1mErHMVq0A==} + '@rollup/rollup-linux-arm64-musl@4.35.0': + resolution: {integrity: sha512-XQxVOCd6VJeHQA/7YcqyV0/88N6ysSVzRjJ9I9UA/xXpEsjvAgDTgH3wQYz5bmr7SPtVK2TsP2fQ2N9L4ukoUg==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-loongarch64-gnu@4.34.9': - resolution: {integrity: sha512-dRAgTfDsn0TE0HI6cmo13hemKpVHOEyeciGtvlBTkpx/F65kTvShtY/EVyZEIfxFkV5JJTuQ9tP5HGBS0hfxIg==} + '@rollup/rollup-linux-loongarch64-gnu@4.35.0': + resolution: {integrity: sha512-5pMT5PzfgwcXEwOaSrqVsz/LvjDZt+vQ8RT/70yhPU06PTuq8WaHhfT1LW+cdD7mW6i/J5/XIkX/1tCAkh1W6g==} cpu: [loong64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.34.9': - resolution: {integrity: sha512-PHcNOAEhkoMSQtMf+rJofwisZqaU8iQ8EaSps58f5HYll9EAY5BSErCZ8qBDMVbq88h4UxaNPlbrKqfWP8RfJA==} + '@rollup/rollup-linux-powerpc64le-gnu@4.35.0': + resolution: {integrity: sha512-c+zkcvbhbXF98f4CtEIP1EBA/lCic5xB0lToneZYvMeKu5Kamq3O8gqrxiYYLzlZH6E3Aq+TSW86E4ay8iD8EA==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.34.9': - resolution: {integrity: sha512-Z2i0Uy5G96KBYKjeQFKbbsB54xFOL5/y1P5wNBsbXB8yE+At3oh0DVMjQVzCJRJSfReiB2tX8T6HUFZ2k8iaKg==} + '@rollup/rollup-linux-riscv64-gnu@4.35.0': + resolution: {integrity: sha512-s91fuAHdOwH/Tad2tzTtPX7UZyytHIRR6V4+2IGlV0Cej5rkG0R61SX4l4y9sh0JBibMiploZx3oHKPnQBKe4g==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.34.9': - resolution: {integrity: sha512-U+5SwTMoeYXoDzJX5dhDTxRltSrIax8KWwfaaYcynuJw8mT33W7oOgz0a+AaXtGuvhzTr2tVKh5UO8GVANTxyQ==} + '@rollup/rollup-linux-s390x-gnu@4.35.0': + resolution: {integrity: sha512-hQRkPQPLYJZYGP+Hj4fR9dDBMIM7zrzJDWFEMPdTnTy95Ljnv0/4w/ixFw3pTBMEuuEuoqtBINYND4M7ujcuQw==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.34.9': - resolution: {integrity: sha512-FwBHNSOjUTQLP4MG7y6rR6qbGw4MFeQnIBrMe161QGaQoBQLqSUEKlHIiVgF3g/mb3lxlxzJOpIBhaP+C+KP2A==} + '@rollup/rollup-linux-x64-gnu@4.35.0': + resolution: {integrity: sha512-Pim1T8rXOri+0HmV4CdKSGrqcBWX0d1HoPnQ0uw0bdp1aP5SdQVNBy8LjYncvnLgu3fnnCt17xjWGd4cqh8/hA==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.34.9': - resolution: {integrity: sha512-cYRpV4650z2I3/s6+5/LONkjIz8MBeqrk+vPXV10ORBnshpn8S32bPqQ2Utv39jCiDcO2eJTuSlPXpnvmaIgRA==} + '@rollup/rollup-linux-x64-musl@4.35.0': + resolution: {integrity: sha512-QysqXzYiDvQWfUiTm8XmJNO2zm9yC9P/2Gkrwg2dH9cxotQzunBHYr6jk4SujCTqnfGxduOmQcI7c2ryuW8XVg==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.34.9': - resolution: {integrity: sha512-z4mQK9dAN6byRA/vsSgQiPeuO63wdiDxZ9yg9iyX2QTzKuQM7T4xlBoeUP/J8uiFkqxkcWndWi+W7bXdPbt27Q==} + '@rollup/rollup-win32-arm64-msvc@4.35.0': + resolution: {integrity: sha512-OUOlGqPkVJCdJETKOCEf1mw848ZyJ5w50/rZ/3IBQVdLfR5jk/6Sr5m3iO2tdPgwo0x7VcncYuOvMhBWZq8ayg==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.34.9': - resolution: {integrity: sha512-KB48mPtaoHy1AwDNkAJfHXvHp24H0ryZog28spEs0V48l3H1fr4i37tiyHsgKZJnCmvxsbATdZGBpbmxTE3a9w==} + '@rollup/rollup-win32-ia32-msvc@4.35.0': + resolution: {integrity: sha512-2/lsgejMrtwQe44glq7AFFHLfJBPafpsTa6JvP2NGef/ifOa4KBoglVf7AKN7EV9o32evBPRqfg96fEHzWo5kw==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.34.9': - resolution: {integrity: sha512-AyleYRPU7+rgkMWbEh71fQlrzRfeP6SyMnRf9XX4fCdDPAJumdSBqYEcWPMzVQ4ScAl7E4oFfK0GUVn77xSwbw==} + '@rollup/rollup-win32-x64-msvc@4.35.0': + resolution: {integrity: sha512-PIQeY5XDkrOysbQblSW7v3l1MDZzkTEzAfTPkj5VAu3FW8fS4ynyLg2sINp0fp3SjZ8xkRYpLqoKcYqAkhU1dw==} cpu: [x64] os: [win32] @@ -1899,8 +1899,8 @@ packages: resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rollup@4.34.9: - resolution: {integrity: sha512-nF5XYqWWp9hx/LrpC8sZvvvmq0TeTjQgaZHYmAgwysT9nh8sWnZhBnM8ZyVbbJFIQBLwHDNoMqsBZBbUo4U8sQ==} + rollup@4.35.0: + resolution: {integrity: sha512-kg6oI4g+vc41vePJyO6dHt/yl0Rz3Thv0kJeVQ3D1kS3E5XSuKbPc29G4IpT/Kv1KQwgHVcN+HtyS+HYLNSvQg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -2572,96 +2572,96 @@ snapshots: '@polka/url@1.0.0-next.28': {} - '@rollup/plugin-node-resolve@16.0.0(rollup@4.34.9)': + '@rollup/plugin-node-resolve@16.0.0(rollup@4.35.0)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.34.9) + '@rollup/pluginutils': 5.1.4(rollup@4.35.0) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 resolve: 1.22.10 optionalDependencies: - rollup: 4.34.9 + rollup: 4.35.0 - '@rollup/plugin-terser@0.4.4(rollup@4.34.9)': + '@rollup/plugin-terser@0.4.4(rollup@4.35.0)': dependencies: serialize-javascript: 6.0.2 smob: 1.5.0 terser: 5.39.0 optionalDependencies: - rollup: 4.34.9 + rollup: 4.35.0 - '@rollup/plugin-typescript@12.1.2(rollup@4.34.9)(tslib@2.8.1)(typescript@5.8.2)': + '@rollup/plugin-typescript@12.1.2(rollup@4.35.0)(tslib@2.8.1)(typescript@5.8.2)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.34.9) + '@rollup/pluginutils': 5.1.4(rollup@4.35.0) resolve: 1.22.10 typescript: 5.8.2 optionalDependencies: - rollup: 4.34.9 + rollup: 4.35.0 tslib: 2.8.1 - '@rollup/pluginutils@5.1.4(rollup@4.34.9)': + '@rollup/pluginutils@5.1.4(rollup@4.35.0)': dependencies: '@types/estree': 1.0.6 estree-walker: 2.0.2 picomatch: 4.0.2 optionalDependencies: - rollup: 4.34.9 + rollup: 4.35.0 - '@rollup/rollup-android-arm-eabi@4.34.9': + '@rollup/rollup-android-arm-eabi@4.35.0': optional: true - '@rollup/rollup-android-arm64@4.34.9': + '@rollup/rollup-android-arm64@4.35.0': optional: true - '@rollup/rollup-darwin-arm64@4.34.9': + '@rollup/rollup-darwin-arm64@4.35.0': optional: true - '@rollup/rollup-darwin-x64@4.34.9': + '@rollup/rollup-darwin-x64@4.35.0': optional: true - '@rollup/rollup-freebsd-arm64@4.34.9': + '@rollup/rollup-freebsd-arm64@4.35.0': optional: true - '@rollup/rollup-freebsd-x64@4.34.9': + '@rollup/rollup-freebsd-x64@4.35.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.34.9': + '@rollup/rollup-linux-arm-gnueabihf@4.35.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.34.9': + '@rollup/rollup-linux-arm-musleabihf@4.35.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.34.9': + '@rollup/rollup-linux-arm64-gnu@4.35.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.34.9': + '@rollup/rollup-linux-arm64-musl@4.35.0': optional: true - '@rollup/rollup-linux-loongarch64-gnu@4.34.9': + '@rollup/rollup-linux-loongarch64-gnu@4.35.0': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.34.9': + '@rollup/rollup-linux-powerpc64le-gnu@4.35.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.34.9': + '@rollup/rollup-linux-riscv64-gnu@4.35.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.34.9': + '@rollup/rollup-linux-s390x-gnu@4.35.0': optional: true - '@rollup/rollup-linux-x64-gnu@4.34.9': + '@rollup/rollup-linux-x64-gnu@4.35.0': optional: true - '@rollup/rollup-linux-x64-musl@4.34.9': + '@rollup/rollup-linux-x64-musl@4.35.0': optional: true - '@rollup/rollup-win32-arm64-msvc@4.34.9': + '@rollup/rollup-win32-arm64-msvc@4.35.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.34.9': + '@rollup/rollup-win32-ia32-msvc@4.35.0': optional: true - '@rollup/rollup-win32-x64-msvc@4.34.9': + '@rollup/rollup-win32-x64-msvc@4.35.0': optional: true '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)))(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))': @@ -3852,29 +3852,29 @@ snapshots: reusify@1.1.0: {} - rollup@4.34.9: + rollup@4.35.0: dependencies: '@types/estree': 1.0.6 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.34.9 - '@rollup/rollup-android-arm64': 4.34.9 - '@rollup/rollup-darwin-arm64': 4.34.9 - '@rollup/rollup-darwin-x64': 4.34.9 - '@rollup/rollup-freebsd-arm64': 4.34.9 - '@rollup/rollup-freebsd-x64': 4.34.9 - '@rollup/rollup-linux-arm-gnueabihf': 4.34.9 - '@rollup/rollup-linux-arm-musleabihf': 4.34.9 - '@rollup/rollup-linux-arm64-gnu': 4.34.9 - '@rollup/rollup-linux-arm64-musl': 4.34.9 - '@rollup/rollup-linux-loongarch64-gnu': 4.34.9 - '@rollup/rollup-linux-powerpc64le-gnu': 4.34.9 - '@rollup/rollup-linux-riscv64-gnu': 4.34.9 - '@rollup/rollup-linux-s390x-gnu': 4.34.9 - '@rollup/rollup-linux-x64-gnu': 4.34.9 - '@rollup/rollup-linux-x64-musl': 4.34.9 - '@rollup/rollup-win32-arm64-msvc': 4.34.9 - '@rollup/rollup-win32-ia32-msvc': 4.34.9 - '@rollup/rollup-win32-x64-msvc': 4.34.9 + '@rollup/rollup-android-arm-eabi': 4.35.0 + '@rollup/rollup-android-arm64': 4.35.0 + '@rollup/rollup-darwin-arm64': 4.35.0 + '@rollup/rollup-darwin-x64': 4.35.0 + '@rollup/rollup-freebsd-arm64': 4.35.0 + '@rollup/rollup-freebsd-x64': 4.35.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.35.0 + '@rollup/rollup-linux-arm-musleabihf': 4.35.0 + '@rollup/rollup-linux-arm64-gnu': 4.35.0 + '@rollup/rollup-linux-arm64-musl': 4.35.0 + '@rollup/rollup-linux-loongarch64-gnu': 4.35.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.35.0 + '@rollup/rollup-linux-riscv64-gnu': 4.35.0 + '@rollup/rollup-linux-s390x-gnu': 4.35.0 + '@rollup/rollup-linux-x64-gnu': 4.35.0 + '@rollup/rollup-linux-x64-musl': 4.35.0 + '@rollup/rollup-win32-arm64-msvc': 4.35.0 + '@rollup/rollup-win32-ia32-msvc': 4.35.0 + '@rollup/rollup-win32-x64-msvc': 4.35.0 fsevents: 2.3.3 run-parallel@1.2.0: @@ -4111,7 +4111,7 @@ snapshots: dependencies: esbuild: 0.25.0 postcss: 8.5.3 - rollup: 4.34.9 + rollup: 4.35.0 optionalDependencies: fsevents: 2.3.3 jiti: 2.4.2 From 22ba197b800ea302933a8b1459da48d475a63fd1 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 9 Mar 2025 10:42:49 +0800 Subject: [PATCH 37/80] chore(deps): update eslint monorepo to v9.22.0 (#2508) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 4 +-- pnpm-lock.yaml | 87 +++++++++++++++++++++++++++----------------------- 2 files changed, 49 insertions(+), 42 deletions(-) diff --git a/package.json b/package.json index c9f73fbf..2e13f154 100644 --- a/package.json +++ b/package.json @@ -11,12 +11,12 @@ "example:api:dev": "pnpm run --filter \"api\" tauri dev" }, "devDependencies": { - "@eslint/js": "9.21.0", + "@eslint/js": "9.22.0", "@rollup/plugin-node-resolve": "16.0.0", "@rollup/plugin-terser": "0.4.4", "@rollup/plugin-typescript": "12.1.2", "covector": "^0.12.4", - "eslint": "9.21.0", + "eslint": "9.22.0", "eslint-config-prettier": "10.1.1", "eslint-plugin-security": "3.0.1", "prettier": "3.5.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 716db84e..9ccf0475 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,8 +12,8 @@ importers: .: devDependencies: '@eslint/js': - specifier: 9.21.0 - version: 9.21.0 + specifier: 9.22.0 + version: 9.22.0 '@rollup/plugin-node-resolve': specifier: 16.0.0 version: 16.0.0(rollup@4.35.0) @@ -27,11 +27,11 @@ importers: specifier: ^0.12.4 version: 0.12.4(mocha@10.8.2) eslint: - specifier: 9.21.0 - version: 9.21.0(jiti@2.4.2) + specifier: 9.22.0 + version: 9.22.0(jiti@2.4.2) eslint-config-prettier: specifier: 10.1.1 - version: 10.1.1(eslint@9.21.0(jiti@2.4.2)) + version: 10.1.1(eslint@9.22.0(jiti@2.4.2)) eslint-plugin-security: specifier: 3.0.1 version: 3.0.1 @@ -49,7 +49,7 @@ importers: version: 5.8.2 typescript-eslint: specifier: 8.26.0 - version: 8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) + version: 8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) examples/api: dependencies: @@ -607,6 +607,10 @@ packages: resolution: {integrity: sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/config-helpers@0.1.0': + resolution: {integrity: sha512-kLrdPDJE1ckPo94kmPPf9Hfd0DU0Jw6oKYrhe+pwSC0iTUInmTa+w6fw8sGgcfkFJGNdWOUeOaDM4quW4a7OkA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/core@0.12.0': resolution: {integrity: sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -615,8 +619,8 @@ packages: resolution: {integrity: sha512-yaVPAiNAalnCZedKLdR21GOGILMLKPyqSLWaAjQFvYA2i/ciDi8ArYVr69Anohb6cH2Ukhqti4aFnYyPm8wdwQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/js@9.21.0': - resolution: {integrity: sha512-BqStZ3HX8Yz6LvsF5ByXYrtigrV5AXADWLAGc7PH/1SxOb7/FIYYMszZZWiUou/GB9P2lXWk2SV4d+Z8h0nknw==} + '@eslint/js@9.22.0': + resolution: {integrity: sha512-vLFajx9o8d1/oL2ZkpMYbkLv8nDB6yaIwFNt7nI4+I80U/z03SxmfOMsLbvWr3p7C+Wnoh//aOu2pQW8cS0HCQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/object-schema@2.1.6': @@ -1339,8 +1343,8 @@ packages: resolution: {integrity: sha512-XjVGBhtDZJfyuhIxnQ/WMm385RbX3DBu7H1J7HNNhmB2tnGxMeqVSnYv79oAj992ayvIBZghsymwkYFS6cGH4Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint-scope@8.2.0: - resolution: {integrity: sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==} + eslint-scope@8.3.0: + resolution: {integrity: sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} eslint-visitor-keys@3.4.3: @@ -1351,8 +1355,8 @@ packages: resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@9.21.0: - resolution: {integrity: sha512-KjeihdFqTPhOMXTt7StsDxriV4n66ueuF/jfPNC3j/lduHwr/ijDwJMsF+wyMJethgiKi5wniIE243vi07d3pg==} + eslint@9.22.0: + resolution: {integrity: sha512-9V/QURhsRN40xuHXWjV64yvrzMjcz7ZyNoF2jJFmy9j/SLk0u1OLSZgXi28MrXjymnjEGSR80WCdab3RGMDveQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: @@ -2458,9 +2462,9 @@ snapshots: '@esbuild/win32-x64@0.25.0': optional: true - '@eslint-community/eslint-utils@4.4.1(eslint@9.21.0(jiti@2.4.2))': + '@eslint-community/eslint-utils@4.4.1(eslint@9.22.0(jiti@2.4.2))': dependencies: - eslint: 9.21.0(jiti@2.4.2) + eslint: 9.22.0(jiti@2.4.2) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.1': {} @@ -2473,6 +2477,8 @@ snapshots: transitivePeerDependencies: - supports-color + '@eslint/config-helpers@0.1.0': {} + '@eslint/core@0.12.0': dependencies: '@types/json-schema': 7.0.15 @@ -2491,7 +2497,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@9.21.0': {} + '@eslint/js@9.22.0': {} '@eslint/object-schema@2.1.6': {} @@ -2743,15 +2749,15 @@ snapshots: '@types/unist@2.0.11': {} - '@typescript-eslint/eslint-plugin@8.26.0(@typescript-eslint/parser@8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/eslint-plugin@8.26.0(@typescript-eslint/parser@8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/parser': 8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) '@typescript-eslint/scope-manager': 8.26.0 - '@typescript-eslint/type-utils': 8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/utils': 8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/type-utils': 8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) '@typescript-eslint/visitor-keys': 8.26.0 - eslint: 9.21.0(jiti@2.4.2) + eslint: 9.22.0(jiti@2.4.2) graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 @@ -2760,14 +2766,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/parser@8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@typescript-eslint/scope-manager': 8.26.0 '@typescript-eslint/types': 8.26.0 '@typescript-eslint/typescript-estree': 8.26.0(typescript@5.8.2) '@typescript-eslint/visitor-keys': 8.26.0 debug: 4.4.0(supports-color@8.1.1) - eslint: 9.21.0(jiti@2.4.2) + eslint: 9.22.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color @@ -2777,12 +2783,12 @@ snapshots: '@typescript-eslint/types': 8.26.0 '@typescript-eslint/visitor-keys': 8.26.0 - '@typescript-eslint/type-utils@8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/type-utils@8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@typescript-eslint/typescript-estree': 8.26.0(typescript@5.8.2) - '@typescript-eslint/utils': 8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) debug: 4.4.0(supports-color@8.1.1) - eslint: 9.21.0(jiti@2.4.2) + eslint: 9.22.0(jiti@2.4.2) ts-api-utils: 2.0.1(typescript@5.8.2) typescript: 5.8.2 transitivePeerDependencies: @@ -2804,13 +2810,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/utils@8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@9.21.0(jiti@2.4.2)) + '@eslint-community/eslint-utils': 4.4.1(eslint@9.22.0(jiti@2.4.2)) '@typescript-eslint/scope-manager': 8.26.0 '@typescript-eslint/types': 8.26.0 '@typescript-eslint/typescript-estree': 8.26.0(typescript@5.8.2) - eslint: 9.21.0(jiti@2.4.2) + eslint: 9.22.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color @@ -3273,15 +3279,15 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-config-prettier@10.1.1(eslint@9.21.0(jiti@2.4.2)): + eslint-config-prettier@10.1.1(eslint@9.22.0(jiti@2.4.2)): dependencies: - eslint: 9.21.0(jiti@2.4.2) + eslint: 9.22.0(jiti@2.4.2) eslint-plugin-security@3.0.1: dependencies: safe-regex: 2.1.1 - eslint-scope@8.2.0: + eslint-scope@8.3.0: dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 @@ -3290,14 +3296,15 @@ snapshots: eslint-visitor-keys@4.2.0: {} - eslint@9.21.0(jiti@2.4.2): + eslint@9.22.0(jiti@2.4.2): dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@9.21.0(jiti@2.4.2)) + '@eslint-community/eslint-utils': 4.4.1(eslint@9.22.0(jiti@2.4.2)) '@eslint-community/regexpp': 4.12.1 '@eslint/config-array': 0.19.2 + '@eslint/config-helpers': 0.1.0 '@eslint/core': 0.12.0 '@eslint/eslintrc': 3.3.0 - '@eslint/js': 9.21.0 + '@eslint/js': 9.22.0 '@eslint/plugin-kit': 0.2.7 '@humanfs/node': 0.16.6 '@humanwhocodes/module-importer': 1.0.1 @@ -3309,7 +3316,7 @@ snapshots: cross-spawn: 7.0.6 debug: 4.4.0(supports-color@8.1.1) escape-string-regexp: 4.0.0 - eslint-scope: 8.2.0 + eslint-scope: 8.3.0 eslint-visitor-keys: 4.2.0 espree: 10.3.0 esquery: 1.6.0 @@ -4025,12 +4032,12 @@ snapshots: type-fest@0.7.1: {} - typescript-eslint@8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2): + typescript-eslint@8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2): dependencies: - '@typescript-eslint/eslint-plugin': 8.26.0(@typescript-eslint/parser@8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/parser': 8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/utils': 8.26.0(eslint@9.21.0(jiti@2.4.2))(typescript@5.8.2) - eslint: 9.21.0(jiti@2.4.2) + '@typescript-eslint/eslint-plugin': 8.26.0(@typescript-eslint/parser@8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/parser': 8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + eslint: 9.22.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color From e54cfcb2610b715e7ad279220e93fba1abbfe560 Mon Sep 17 00:00:00 2001 From: Tony <68118705+Legend-Master@users.noreply.github.com> Date: Mon, 10 Mar 2025 08:59:19 +0800 Subject: [PATCH 38/80] fix(updater): should be `log::debug` not `println` (#2514) --- plugins/updater/src/updater.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/updater/src/updater.rs b/plugins/updater/src/updater.rs index 8a4fbb04..65c91749 100644 --- a/plugins/updater/src/updater.rs +++ b/plugins/updater/src/updater.rs @@ -428,7 +428,7 @@ impl Updater { .map_err(Into::into) { Ok(release) => { - println!("parsed release response {release:?}"); + log::debug!("parsed release response {release:?}"); last_error = None; remote_release = Some(release); // we found a release, break the loop From a1b3fa27f11022c9b6622b4fab12d93239eb05de Mon Sep 17 00:00:00 2001 From: Fabian-Lars Date: Mon, 10 Mar 2025 13:57:17 +0100 Subject: [PATCH 39/80] fix: Re-export api structs (#2515) * fix: Re-export api structs * whoops --- .changes/export-api-structs.md | 12 ++++++++++++ plugins/geolocation/src/lib.rs | 4 ++-- plugins/haptics/src/lib.rs | 4 ++-- plugins/notification/src/desktop.rs | 2 ++ plugins/notification/src/lib.rs | 6 +++--- plugins/notification/src/mobile.rs | 2 ++ plugins/os/src/lib.rs | 2 +- shared/template/src/lib.rs | 4 ++-- 8 files changed, 26 insertions(+), 10 deletions(-) create mode 100644 .changes/export-api-structs.md diff --git a/.changes/export-api-structs.md b/.changes/export-api-structs.md new file mode 100644 index 00000000..64316fed --- /dev/null +++ b/.changes/export-api-structs.md @@ -0,0 +1,12 @@ +--- +geolocation: patch +geolocation-js: patch +haptics: patch +haptics-js: patch +notification: patch +notification-js: patch +os: patch +os-js: patch +--- + +Re-exported the `Geolocation`, `Haptics`, `Notification`, and `Os` structs so that they show up on docs.rs. diff --git a/plugins/geolocation/src/lib.rs b/plugins/geolocation/src/lib.rs index 55f50aa0..588f96e3 100644 --- a/plugins/geolocation/src/lib.rs +++ b/plugins/geolocation/src/lib.rs @@ -21,9 +21,9 @@ mod models; pub use error::{Error, Result}; #[cfg(desktop)] -use desktop::Geolocation; +pub use desktop::Geolocation; #[cfg(mobile)] -use mobile::Geolocation; +pub use mobile::Geolocation; /// Extensions to [`tauri::App`], [`tauri::AppHandle`], [`tauri::WebviewWindow`], [`tauri::Webview`] and [`tauri::Window`] to access the geolocation APIs. pub trait GeolocationExt { diff --git a/plugins/haptics/src/lib.rs b/plugins/haptics/src/lib.rs index f56e5212..31798743 100644 --- a/plugins/haptics/src/lib.rs +++ b/plugins/haptics/src/lib.rs @@ -21,9 +21,9 @@ mod models; pub use error::{Error, Result}; #[cfg(desktop)] -use desktop::Haptics; +pub use desktop::Haptics; #[cfg(mobile)] -use mobile::Haptics; +pub use mobile::Haptics; /// Extensions to [`tauri::App`], [`tauri::AppHandle`], [`tauri::WebviewWindow`], [`tauri::Webview`] and [`tauri::Window`] to access the haptics APIs. pub trait HapticsExt { diff --git a/plugins/notification/src/desktop.rs b/plugins/notification/src/desktop.rs index 092b8892..47279225 100644 --- a/plugins/notification/src/desktop.rs +++ b/plugins/notification/src/desktop.rs @@ -18,6 +18,8 @@ pub fn init( } /// Access to the notification APIs. +/// +/// You can get an instance of this type via [`NotificationExt`](crate::NotificationExt) pub struct Notification(AppHandle); impl crate::NotificationBuilder { diff --git a/plugins/notification/src/lib.rs b/plugins/notification/src/lib.rs index 5cc30319..9ca33d63 100644 --- a/plugins/notification/src/lib.rs +++ b/plugins/notification/src/lib.rs @@ -34,9 +34,9 @@ mod models; pub use error::{Error, Result}; #[cfg(desktop)] -use desktop::Notification; +pub use desktop::Notification; #[cfg(mobile)] -use mobile::Notification; +pub use mobile::Notification; /// The notification builder. #[derive(Debug)] @@ -120,7 +120,7 @@ impl NotificationBuilder { /// Identifier used to group multiple notifications. /// - /// https://developer.apple.com/documentation/usernotifications/unmutablenotificationcontent/1649872-threadidentifier + /// pub fn group(mut self, group: impl Into) -> Self { self.data.group.replace(group.into()); self diff --git a/plugins/notification/src/mobile.rs b/plugins/notification/src/mobile.rs index 9167dcc1..edfef728 100644 --- a/plugins/notification/src/mobile.rs +++ b/plugins/notification/src/mobile.rs @@ -40,6 +40,8 @@ impl crate::NotificationBuilder { } /// Access to the notification APIs. +/// +/// You can get an instance of this type via [`NotificationExt`](crate::NotificationExt) pub struct Notification(PluginHandle); impl Notification { diff --git a/plugins/os/src/lib.rs b/plugins/os/src/lib.rs index c041c8ea..50ab89ee 100644 --- a/plugins/os/src/lib.rs +++ b/plugins/os/src/lib.rs @@ -88,7 +88,7 @@ pub fn exe_extension() -> &'static str { std::env::consts::EXE_EXTENSION } -/// Returns the current operating system locale with the `BCP-47` language tag. If the locale couldn’t be obtained, `None` is returned instead. +/// Returns the current operating system locale with the `BCP-47` language tag. If the locale couldn't be obtained, `None` is returned instead. pub fn locale() -> Option { sys_locale::get_locale() } diff --git a/shared/template/src/lib.rs b/shared/template/src/lib.rs index e83735e0..5eb337bd 100644 --- a/shared/template/src/lib.rs +++ b/shared/template/src/lib.rs @@ -21,9 +21,9 @@ mod models; pub use error::{Error, Result}; #[cfg(desktop)] -use desktop::{{ plugin_name_pascal_case }}; +pub use desktop::{{ plugin_name_pascal_case }}; #[cfg(mobile)] -use mobile::{{ plugin_name_pascal_case }}; +pub use mobile::{{ plugin_name_pascal_case }}; /// Extensions to [`tauri::App`], [`tauri::AppHandle`], [`tauri::WebviewWindow`], [`tauri::Webview`] and [`tauri::Window`] to access the {{ plugin_name }} APIs. pub trait {{ plugin_name_pascal_case }}Ext { From b40a02c525516d24fb8cfb80a6a3449fc00edb89 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 10 Mar 2025 14:17:57 +0100 Subject: [PATCH 40/80] publish new versions (#2477) Co-authored-by: FabianLars <30730186+FabianLars@users.noreply.github.com> --- .changes/clipboard-manager-wayland-support.md | 6 ------ .changes/export-api-structs.md | 12 ----------- .changes/http-stream-support.md | 6 ------ .changes/skip-logger.md | 5 ----- .changes/updater-add-on-before-request.md | 6 ------ .changes/updater-logs.md | 6 ------ Cargo.lock | 18 ++++++++--------- examples/api/CHANGELOG.md | 11 ++++++++++ examples/api/package.json | 12 +++++------ examples/api/src-tauri/CHANGELOG.md | 13 ++++++++++++ examples/api/src-tauri/Cargo.toml | 18 ++++++++--------- plugins/clipboard-manager/CHANGELOG.md | 6 ++++++ plugins/clipboard-manager/Cargo.toml | 2 +- plugins/clipboard-manager/package.json | 2 +- plugins/geolocation/CHANGELOG.md | 4 ++++ plugins/geolocation/Cargo.toml | 2 +- plugins/geolocation/package.json | 2 +- plugins/haptics/CHANGELOG.md | 4 ++++ plugins/haptics/Cargo.toml | 2 +- plugins/haptics/package.json | 2 +- plugins/http/CHANGELOG.md | 4 ++++ plugins/http/Cargo.toml | 2 +- plugins/http/package.json | 2 +- plugins/log/CHANGELOG.md | 6 ++++++ plugins/log/Cargo.toml | 2 +- plugins/log/package.json | 2 +- plugins/notification/CHANGELOG.md | 4 ++++ plugins/notification/Cargo.toml | 2 +- plugins/notification/package.json | 2 +- plugins/os/CHANGELOG.md | 4 ++++ plugins/os/Cargo.toml | 2 +- plugins/os/package.json | 2 +- plugins/updater/CHANGELOG.md | 5 +++++ plugins/updater/Cargo.toml | 2 +- plugins/updater/package.json | 2 +- pnpm-lock.yaml | 20 +++++++++---------- 36 files changed, 111 insertions(+), 91 deletions(-) delete mode 100644 .changes/clipboard-manager-wayland-support.md delete mode 100644 .changes/export-api-structs.md delete mode 100644 .changes/http-stream-support.md delete mode 100644 .changes/skip-logger.md delete mode 100644 .changes/updater-add-on-before-request.md delete mode 100644 .changes/updater-logs.md diff --git a/.changes/clipboard-manager-wayland-support.md b/.changes/clipboard-manager-wayland-support.md deleted file mode 100644 index 0b36c87c..00000000 --- a/.changes/clipboard-manager-wayland-support.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'clipboard-manager': 'patch:bug' -'clipboard-manager-js': 'patch:bug' ---- - -Fix clipboard-manager Wayland support. \ No newline at end of file diff --git a/.changes/export-api-structs.md b/.changes/export-api-structs.md deleted file mode 100644 index 64316fed..00000000 --- a/.changes/export-api-structs.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -geolocation: patch -geolocation-js: patch -haptics: patch -haptics-js: patch -notification: patch -notification-js: patch -os: patch -os-js: patch ---- - -Re-exported the `Geolocation`, `Haptics`, `Notification`, and `Os` structs so that they show up on docs.rs. diff --git a/.changes/http-stream-support.md b/.changes/http-stream-support.md deleted file mode 100644 index d9e38a6b..00000000 --- a/.changes/http-stream-support.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"http": minor -"http-js": minor ---- - -Add stream support for HTTP stream responses. diff --git a/.changes/skip-logger.md b/.changes/skip-logger.md deleted file mode 100644 index d5066491..00000000 --- a/.changes/skip-logger.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'log': 'minor:feat' -'log-js': 'minor:feat' ---- -Add a `is_skip_logger` flag to the Log Plugin `Builder` struct, a `skip_logger()` method to the Builder, and logic to avoid acquiring (creating) a logger and attaching it to the global logger. Since acquire_logger is pub, a `LoggerNotInitialized` is added and returned if it's called when the `is_skip_looger` flag is set. Overall, this feature permits a user to avoid calling `attach_logger` which can only be called once in a program's lifetime and allows the user to control the logger returned from `logger()`. Additionally, it also will allow users to generate multiple Tauri Mock apps in test suites that run and parallel and have the `log` plugin attached (assuming they use `skip_logger()`). diff --git a/.changes/updater-add-on-before-request.md b/.changes/updater-add-on-before-request.md deleted file mode 100644 index f086d35e..00000000 --- a/.changes/updater-add-on-before-request.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"updater": minor -"updater-js": minor ---- - -Add `UpdaterBuilder::configure_client` method on Rust side, to configure the `reqwest` client used to check and download the update. \ No newline at end of file diff --git a/.changes/updater-logs.md b/.changes/updater-logs.md deleted file mode 100644 index 35e8454a..00000000 --- a/.changes/updater-logs.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"updater": patch -"updater-js": patch ---- - -Enhance error logging. diff --git a/Cargo.lock b/Cargo.lock index 4b24a009..ba278a9f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -206,7 +206,7 @@ checksum = "4c95c10ba0b00a02636238b814946408b1322d5ac4760326e6fb8ec956d85775" [[package]] name = "api" -version = "2.0.19" +version = "2.0.20" dependencies = [ "log", "serde", @@ -6596,7 +6596,7 @@ dependencies = [ [[package]] name = "tauri-plugin-clipboard-manager" -version = "2.2.1" +version = "2.2.2" dependencies = [ "arboard", "log", @@ -6666,7 +6666,7 @@ dependencies = [ [[package]] name = "tauri-plugin-geolocation" -version = "2.2.3" +version = "2.2.4" dependencies = [ "log", "serde", @@ -6692,7 +6692,7 @@ dependencies = [ [[package]] name = "tauri-plugin-haptics" -version = "2.2.3" +version = "2.2.4" dependencies = [ "log", "serde", @@ -6705,7 +6705,7 @@ dependencies = [ [[package]] name = "tauri-plugin-http" -version = "2.3.0" +version = "2.4.0" dependencies = [ "data-url", "http", @@ -6739,7 +6739,7 @@ dependencies = [ [[package]] name = "tauri-plugin-log" -version = "2.2.3" +version = "2.3.0" dependencies = [ "android_logger", "byte-unit", @@ -6772,7 +6772,7 @@ dependencies = [ [[package]] name = "tauri-plugin-notification" -version = "2.2.1" +version = "2.2.2" dependencies = [ "color-backtrace", "ctor", @@ -6814,7 +6814,7 @@ dependencies = [ [[package]] name = "tauri-plugin-os" -version = "2.2.0" +version = "2.2.1" dependencies = [ "gethostname 1.0.0", "log", @@ -6951,7 +6951,7 @@ dependencies = [ [[package]] name = "tauri-plugin-updater" -version = "2.5.1" +version = "2.6.0" dependencies = [ "base64 0.22.1", "dirs 6.0.0", diff --git a/examples/api/CHANGELOG.md b/examples/api/CHANGELOG.md index 0883eaed..414bdb9b 100644 --- a/examples/api/CHANGELOG.md +++ b/examples/api/CHANGELOG.md @@ -1,5 +1,16 @@ # Changelog +## \[2.0.16] + +### Dependencies + +- Upgraded to `clipboard-manager-js@2.2.2` +- Upgraded to `notification-js@2.2.2` +- Upgraded to `os-js@2.2.1` +- Upgraded to `http-js@2.4.0` +- Upgraded to `log-js@2.3.0` +- Upgraded to `updater-js@2.6.0` + ## \[2.0.15] ### Dependencies diff --git a/examples/api/package.json b/examples/api/package.json index f5bd22db..7604a76d 100644 --- a/examples/api/package.json +++ b/examples/api/package.json @@ -1,7 +1,7 @@ { "name": "api", "private": true, - "version": "2.0.15", + "version": "2.0.16", "type": "module", "scripts": { "dev": "vite --clearScreen false", @@ -14,21 +14,21 @@ "@tauri-apps/plugin-barcode-scanner": "^2.2.0", "@tauri-apps/plugin-biometric": "^2.2.0", "@tauri-apps/plugin-cli": "^2.2.0", - "@tauri-apps/plugin-clipboard-manager": "^2.2.1", + "@tauri-apps/plugin-clipboard-manager": "^2.2.2", "@tauri-apps/plugin-dialog": "^2.2.0", "@tauri-apps/plugin-fs": "^2.2.0", "@tauri-apps/plugin-geolocation": "^2.2.0", "@tauri-apps/plugin-global-shortcut": "^2.2.0", "@tauri-apps/plugin-haptics": "^2.2.0", - "@tauri-apps/plugin-http": "^2.3.0", + "@tauri-apps/plugin-http": "^2.4.0", "@tauri-apps/plugin-nfc": "^2.2.0", - "@tauri-apps/plugin-notification": "^2.2.1", + "@tauri-apps/plugin-notification": "^2.2.2", "@tauri-apps/plugin-opener": "^2.2.6", - "@tauri-apps/plugin-os": "^2.2.0", + "@tauri-apps/plugin-os": "^2.2.1", "@tauri-apps/plugin-process": "^2.2.0", "@tauri-apps/plugin-shell": "^2.2.0", "@tauri-apps/plugin-store": "^2.2.0", - "@tauri-apps/plugin-updater": "^2.5.1", + "@tauri-apps/plugin-updater": "^2.6.0", "@zerodevx/svelte-json-view": "1.0.11" }, "devDependencies": { diff --git a/examples/api/src-tauri/CHANGELOG.md b/examples/api/src-tauri/CHANGELOG.md index 69de94d2..91fadc32 100644 --- a/examples/api/src-tauri/CHANGELOG.md +++ b/examples/api/src-tauri/CHANGELOG.md @@ -1,5 +1,18 @@ # Changelog +## \[2.0.20] + +### Dependencies + +- Upgraded to `clipboard-manager@2.2.2` +- Upgraded to `geolocation@2.2.4` +- Upgraded to `haptics@2.2.4` +- Upgraded to `notification@2.2.2` +- Upgraded to `os@2.2.1` +- Upgraded to `http@2.4.0` +- Upgraded to `log@2.3.0` +- Upgraded to `updater@2.6.0` + ## \[2.0.19] ### Dependencies diff --git a/examples/api/src-tauri/Cargo.toml b/examples/api/src-tauri/Cargo.toml index d76a899a..d62a968f 100644 --- a/examples/api/src-tauri/Cargo.toml +++ b/examples/api/src-tauri/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "api" publish = false -version = "2.0.19" +version = "2.0.20" description = "An example Tauri Application showcasing the api" edition = "2021" rust-version = { workspace = true } @@ -19,19 +19,19 @@ serde_json = { workspace = true } serde = { workspace = true } tiny_http = "0.12" log = { workspace = true } -tauri-plugin-log = { path = "../../../plugins/log", version = "2.2.3" } +tauri-plugin-log = { path = "../../../plugins/log", version = "2.3.0" } tauri-plugin-fs = { path = "../../../plugins/fs", version = "2.2.0", features = [ "watch", ] } -tauri-plugin-clipboard-manager = { path = "../../../plugins/clipboard-manager", version = "2.2.1" } +tauri-plugin-clipboard-manager = { path = "../../../plugins/clipboard-manager", version = "2.2.2" } tauri-plugin-dialog = { path = "../../../plugins/dialog", version = "2.2.0" } tauri-plugin-http = { path = "../../../plugins/http", features = [ "multipart", -], version = "2.3.0" } -tauri-plugin-notification = { path = "../../../plugins/notification", version = "2.2.1", features = [ +], version = "2.4.0" } +tauri-plugin-notification = { path = "../../../plugins/notification", version = "2.2.2", features = [ "windows7-compat", ] } -tauri-plugin-os = { path = "../../../plugins/os", version = "2.2.0" } +tauri-plugin-os = { path = "../../../plugins/os", version = "2.2.1" } tauri-plugin-process = { path = "../../../plugins/process", version = "2.2.0" } tauri-plugin-opener = { path = "../../../plugins/opener", version = "2.2.6" } tauri-plugin-shell = { path = "../../../plugins/shell", version = "2.2.0" } @@ -53,15 +53,15 @@ features = [ [target."cfg(any(target_os = \"macos\", windows, target_os = \"linux\", target_os = \"dragonfly\", target_os = \"freebsd\", target_os = \"openbsd\", target_os = \"netbsd\"))".dependencies] tauri-plugin-cli = { path = "../../../plugins/cli", version = "2.2.0" } tauri-plugin-global-shortcut = { path = "../../../plugins/global-shortcut", version = "2.2.0" } -tauri-plugin-updater = { path = "../../../plugins/updater", version = "2.5.1" } +tauri-plugin-updater = { path = "../../../plugins/updater", version = "2.6.0" } tauri-plugin-window-state = { path = "../../../plugins/window-state", version = "2.2.0" } [target."cfg(any(target_os = \"android\", target_os = \"ios\"))".dependencies] tauri-plugin-barcode-scanner = { path = "../../../plugins/barcode-scanner/", version = "2.2.0" } tauri-plugin-nfc = { path = "../../../plugins/nfc", version = "2.2.0" } tauri-plugin-biometric = { path = "../../../plugins/biometric/", version = "2.2.0" } -tauri-plugin-geolocation = { path = "../../../plugins/geolocation/", version = "2.2.3" } -tauri-plugin-haptics = { path = "../../../plugins/haptics/", version = "2.2.3" } +tauri-plugin-geolocation = { path = "../../../plugins/geolocation/", version = "2.2.4" } +tauri-plugin-haptics = { path = "../../../plugins/haptics/", version = "2.2.4" } [features] prod = ["tauri/custom-protocol"] diff --git a/plugins/clipboard-manager/CHANGELOG.md b/plugins/clipboard-manager/CHANGELOG.md index 91cfc44d..895d8c71 100644 --- a/plugins/clipboard-manager/CHANGELOG.md +++ b/plugins/clipboard-manager/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## \[2.2.2] + +### bug + +- [`d37bbdef`](https://github.com/tauri-apps/plugins-workspace/commit/d37bbdef8dc70e61e59f9fe0bb8b2a48999d0aa1) ([#2507](https://github.com/tauri-apps/plugins-workspace/pull/2507) by [@SquitchYT](https://github.com/tauri-apps/plugins-workspace/../../SquitchYT)) Fix clipboard-manager Wayland support. + ## \[2.2.1] - [`ce11079f`](https://github.com/tauri-apps/plugins-workspace/commit/ce11079f19852fbefdecf0e4c7d947af3624fee0) ([#2280](https://github.com/tauri-apps/plugins-workspace/pull/2280) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Explicitly drop `arboard::Clipboard` on exit. Add recommendation to not use read methods on the mainthread. diff --git a/plugins/clipboard-manager/Cargo.toml b/plugins/clipboard-manager/Cargo.toml index c5885822..0c35e591 100644 --- a/plugins/clipboard-manager/Cargo.toml +++ b/plugins/clipboard-manager/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-clipboard-manager" -version = "2.2.1" +version = "2.2.2" description = "Read and write to the system clipboard." edition = { workspace = true } authors = { workspace = true } diff --git a/plugins/clipboard-manager/package.json b/plugins/clipboard-manager/package.json index ff1ba9e7..9b78843b 100644 --- a/plugins/clipboard-manager/package.json +++ b/plugins/clipboard-manager/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-clipboard-manager", - "version": "2.2.1", + "version": "2.2.2", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/plugins/geolocation/CHANGELOG.md b/plugins/geolocation/CHANGELOG.md index 26bd66b6..dbee2e7d 100644 --- a/plugins/geolocation/CHANGELOG.md +++ b/plugins/geolocation/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## \[2.2.4] + +- [`a1b3fa27`](https://github.com/tauri-apps/plugins-workspace/commit/a1b3fa27f11022c9b6622b4fab12d93239eb05de) ([#2515](https://github.com/tauri-apps/plugins-workspace/pull/2515) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Re-exported the `Geolocation`, `Haptics`, `Notification`, and `Os` structs so that they show up on docs.rs. + ## \[2.2.3] - [`406e6f48`](https://github.com/tauri-apps/plugins-workspace/commit/406e6f484cdc13d35c50fb949f7489ca9eeccc44) ([#2323](https://github.com/tauri-apps/plugins-workspace/pull/2323) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Fixed an issue that caused build failures when the `haptics` or `geolocation` plugin was used without their `specta` feature flag enabled. diff --git a/plugins/geolocation/Cargo.toml b/plugins/geolocation/Cargo.toml index 3fc3baaf..7d01b526 100644 --- a/plugins/geolocation/Cargo.toml +++ b/plugins/geolocation/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "tauri-plugin-geolocation" description = "Get and track the device's current position" -version = "2.2.3" +version = "2.2.4" edition = { workspace = true } authors = { workspace = true } license = { workspace = true } diff --git a/plugins/geolocation/package.json b/plugins/geolocation/package.json index c52b7e08..0e3b09cb 100644 --- a/plugins/geolocation/package.json +++ b/plugins/geolocation/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-geolocation", - "version": "2.2.3", + "version": "2.2.4", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/plugins/haptics/CHANGELOG.md b/plugins/haptics/CHANGELOG.md index 246fb18e..aa3fbbd8 100644 --- a/plugins/haptics/CHANGELOG.md +++ b/plugins/haptics/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## \[2.2.4] + +- [`a1b3fa27`](https://github.com/tauri-apps/plugins-workspace/commit/a1b3fa27f11022c9b6622b4fab12d93239eb05de) ([#2515](https://github.com/tauri-apps/plugins-workspace/pull/2515) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Re-exported the `Geolocation`, `Haptics`, `Notification`, and `Os` structs so that they show up on docs.rs. + ## \[2.2.3] - [`406e6f48`](https://github.com/tauri-apps/plugins-workspace/commit/406e6f484cdc13d35c50fb949f7489ca9eeccc44) ([#2323](https://github.com/tauri-apps/plugins-workspace/pull/2323) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Fixed an issue that caused build failures when the `haptics` or `geolocation` plugin was used without their `specta` feature flag enabled. diff --git a/plugins/haptics/Cargo.toml b/plugins/haptics/Cargo.toml index 4215130e..34c80bab 100644 --- a/plugins/haptics/Cargo.toml +++ b/plugins/haptics/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "tauri-plugin-haptics" description = "Haptic feedback and vibrations on Android and iOS" -version = "2.2.3" +version = "2.2.4" edition = { workspace = true } authors = { workspace = true } license = { workspace = true } diff --git a/plugins/haptics/package.json b/plugins/haptics/package.json index 1c70aae1..12c5b74b 100644 --- a/plugins/haptics/package.json +++ b/plugins/haptics/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-haptics", - "version": "2.2.3", + "version": "2.2.4", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/plugins/http/CHANGELOG.md b/plugins/http/CHANGELOG.md index e9611f4e..b5bac976 100644 --- a/plugins/http/CHANGELOG.md +++ b/plugins/http/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## \[2.4.0] + +- [`cb38f54f`](https://github.com/tauri-apps/plugins-workspace/commit/cb38f54f4a4ef30995283cd82166c62da17bac44) ([#2479](https://github.com/tauri-apps/plugins-workspace/pull/2479) by [@adrieljss](https://github.com/tauri-apps/plugins-workspace/../../adrieljss)) Add stream support for HTTP stream responses. + ## \[2.3.0] - [`10513649`](https://github.com/tauri-apps/plugins-workspace/commit/105136494c5a5bf4b1f1cc06cc71815412d17ec8) ([#2204](https://github.com/tauri-apps/plugins-workspace/pull/2204) by [@RickeyWard](https://github.com/tauri-apps/plugins-workspace/../../RickeyWard)) Add `dangerous-settings` feature flag and new JS `danger` option to disable tls hostname/certificate validation. diff --git a/plugins/http/Cargo.toml b/plugins/http/Cargo.toml index 9aa49e0e..76d94d5a 100644 --- a/plugins/http/Cargo.toml +++ b/plugins/http/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-http" -version = "2.3.0" +version = "2.4.0" description = "Access an HTTP client written in Rust." edition = { workspace = true } authors = { workspace = true } diff --git a/plugins/http/package.json b/plugins/http/package.json index 02ea80bf..3a53720c 100644 --- a/plugins/http/package.json +++ b/plugins/http/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-http", - "version": "2.3.0", + "version": "2.4.0", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/plugins/log/CHANGELOG.md b/plugins/log/CHANGELOG.md index d5eea4d2..674d60b7 100644 --- a/plugins/log/CHANGELOG.md +++ b/plugins/log/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## \[2.3.0] + +### feat + +- [`02481501`](https://github.com/tauri-apps/plugins-workspace/commit/024815018fbc63a37afc716796a454925aa7d25e) ([#2377](https://github.com/tauri-apps/plugins-workspace/pull/2377) by [@3lpsy](https://github.com/tauri-apps/plugins-workspace/../../3lpsy)) Add a `is_skip_logger` flag to the Log Plugin `Builder` struct, a `skip_logger()` method to the Builder, and logic to avoid acquiring (creating) a logger and attaching it to the global logger. Since acquire_logger is pub, a `LoggerNotInitialized` is added and returned if it's called when the `is_skip_looger` flag is set. Overall, this feature permits a user to avoid calling `attach_logger` which can only be called once in a program's lifetime and allows the user to control the logger returned from `logger()`. Additionally, it also will allow users to generate multiple Tauri Mock apps in test suites that run and parallel and have the `log` plugin attached (assuming they use `skip_logger()`). + ## \[2.2.3] - [`1a984659`](https://github.com/tauri-apps/plugins-workspace/commit/1a9846599b6a71faf330845847a30f6bf9735898) ([#2469](https://github.com/tauri-apps/plugins-workspace/pull/2469) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Update `objc2` crate to 0.6. No user facing changes. diff --git a/plugins/log/Cargo.toml b/plugins/log/Cargo.toml index 16324679..766087d8 100644 --- a/plugins/log/Cargo.toml +++ b/plugins/log/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-log" -version = "2.2.3" +version = "2.3.0" description = "Configurable logging for your Tauri app." authors = { workspace = true } license = { workspace = true } diff --git a/plugins/log/package.json b/plugins/log/package.json index 91fa4ab9..eadf2f2a 100644 --- a/plugins/log/package.json +++ b/plugins/log/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-log", - "version": "2.2.3", + "version": "2.3.0", "description": "Configurable logging for your Tauri app.", "license": "MIT OR Apache-2.0", "authors": [ diff --git a/plugins/notification/CHANGELOG.md b/plugins/notification/CHANGELOG.md index 89eca864..42efb6ab 100644 --- a/plugins/notification/CHANGELOG.md +++ b/plugins/notification/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## \[2.2.2] + +- [`a1b3fa27`](https://github.com/tauri-apps/plugins-workspace/commit/a1b3fa27f11022c9b6622b4fab12d93239eb05de) ([#2515](https://github.com/tauri-apps/plugins-workspace/pull/2515) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Re-exported the `Geolocation`, `Haptics`, `Notification`, and `Os` structs so that they show up on docs.rs. + ## \[2.2.1] - [`da5c59e2`](https://github.com/tauri-apps/plugins-workspace/commit/da5c59e2fe879d177e3cfd52fcacce85440423cb) ([#2271](https://github.com/tauri-apps/plugins-workspace/pull/2271) by [@renovate](https://github.com/tauri-apps/plugins-workspace/../../renovate)) Updated `zbus` dependency to version 5. No API changes. diff --git a/plugins/notification/Cargo.toml b/plugins/notification/Cargo.toml index edafe32e..bca17c09 100644 --- a/plugins/notification/Cargo.toml +++ b/plugins/notification/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-notification" -version = "2.2.1" +version = "2.2.2" description = "Send desktop and mobile notifications on your Tauri application." edition = { workspace = true } authors = { workspace = true } diff --git a/plugins/notification/package.json b/plugins/notification/package.json index 931af392..07c04d5c 100644 --- a/plugins/notification/package.json +++ b/plugins/notification/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-notification", - "version": "2.2.1", + "version": "2.2.2", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/plugins/os/CHANGELOG.md b/plugins/os/CHANGELOG.md index cc7fb604..415953e4 100644 --- a/plugins/os/CHANGELOG.md +++ b/plugins/os/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## \[2.2.1] + +- [`a1b3fa27`](https://github.com/tauri-apps/plugins-workspace/commit/a1b3fa27f11022c9b6622b4fab12d93239eb05de) ([#2515](https://github.com/tauri-apps/plugins-workspace/pull/2515) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Re-exported the `Geolocation`, `Haptics`, `Notification`, and `Os` structs so that they show up on docs.rs. + ## \[2.2.0] - [`3a79266b`](https://github.com/tauri-apps/plugins-workspace/commit/3a79266b8cf96a55b1ae6339d725567d45a44b1d) ([#2173](https://github.com/tauri-apps/plugins-workspace/pull/2173) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Bumped all plugins to `v2.2.0`. From now, the versions for the Rust and JavaScript packages of each plugin will be in sync with each other. diff --git a/plugins/os/Cargo.toml b/plugins/os/Cargo.toml index 7af6dad3..424b7581 100644 --- a/plugins/os/Cargo.toml +++ b/plugins/os/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-os" -version = "2.2.0" +version = "2.2.1" description = "Read information about the operating system." edition = { workspace = true } authors = { workspace = true } diff --git a/plugins/os/package.json b/plugins/os/package.json index 95ae0ca9..840f5352 100644 --- a/plugins/os/package.json +++ b/plugins/os/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-os", - "version": "2.2.0", + "version": "2.2.1", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/plugins/updater/CHANGELOG.md b/plugins/updater/CHANGELOG.md index 21f5260a..84b4eb84 100644 --- a/plugins/updater/CHANGELOG.md +++ b/plugins/updater/CHANGELOG.md @@ -1,5 +1,10 @@ # Changelog +## \[2.6.0] + +- [`faefcc9f`](https://github.com/tauri-apps/plugins-workspace/commit/faefcc9fd8c61f709d491649e255a7fcac82c09a) ([#2430](https://github.com/tauri-apps/plugins-workspace/pull/2430) by [@goenning](https://github.com/tauri-apps/plugins-workspace/../../goenning)) Add `UpdaterBuilder::configure_client` method on Rust side, to configure the `reqwest` client used to check and download the update. +- [`ac60d589`](https://github.com/tauri-apps/plugins-workspace/commit/ac60d589eca2bbc4aed040feb18da148e66ec171) ([#2513](https://github.com/tauri-apps/plugins-workspace/pull/2513) by [@lucasfernog](https://github.com/tauri-apps/plugins-workspace/../../lucasfernog)) Enhance error logging. + ## \[2.5.1] - [`6f881293`](https://github.com/tauri-apps/plugins-workspace/commit/6f881293fcd67838f6f3f8063f536292431dd1f7) ([#2439](https://github.com/tauri-apps/plugins-workspace/pull/2439) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Fixed an issue that caused the plugin to emit a `ReleaseNotFound` error instead of a `Reqwest` error when the http request in `check()` failed. diff --git a/plugins/updater/Cargo.toml b/plugins/updater/Cargo.toml index 68c03c9b..c8799f59 100644 --- a/plugins/updater/Cargo.toml +++ b/plugins/updater/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-updater" -version = "2.5.1" +version = "2.6.0" description = "In-app updates for Tauri applications." edition = { workspace = true } authors = { workspace = true } diff --git a/plugins/updater/package.json b/plugins/updater/package.json index 12c85302..25e23039 100644 --- a/plugins/updater/package.json +++ b/plugins/updater/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-updater", - "version": "2.5.1", + "version": "2.6.0", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9ccf0475..e542306a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -66,7 +66,7 @@ importers: specifier: ^2.2.0 version: link:../../plugins/cli '@tauri-apps/plugin-clipboard-manager': - specifier: ^2.2.1 + specifier: ^2.2.2 version: link:../../plugins/clipboard-manager '@tauri-apps/plugin-dialog': specifier: ^2.2.0 @@ -84,19 +84,19 @@ importers: specifier: ^2.2.0 version: link:../../plugins/haptics '@tauri-apps/plugin-http': - specifier: ^2.3.0 + specifier: ^2.4.0 version: link:../../plugins/http '@tauri-apps/plugin-nfc': specifier: ^2.2.0 version: link:../../plugins/nfc '@tauri-apps/plugin-notification': - specifier: ^2.2.1 + specifier: ^2.2.2 version: link:../../plugins/notification '@tauri-apps/plugin-opener': specifier: ^2.2.6 version: link:../../plugins/opener '@tauri-apps/plugin-os': - specifier: ^2.2.0 + specifier: ^2.2.1 version: link:../../plugins/os '@tauri-apps/plugin-process': specifier: ^2.2.0 @@ -108,7 +108,7 @@ importers: specifier: ^2.2.0 version: link:../../plugins/store '@tauri-apps/plugin-updater': - specifier: ^2.5.1 + specifier: ^2.6.0 version: link:../../plugins/updater '@zerodevx/svelte-json-view': specifier: 1.0.11 @@ -2278,14 +2278,13 @@ snapshots: picocolors: 1.1.1 sisteransi: 1.0.5 - '@covector/apply@0.10.0(mocha@10.8.2)': + '@covector/apply@0.10.0': dependencies: '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) semver: 7.7.1 transitivePeerDependencies: - encoding - - mocha '@covector/assemble@0.12.0': dependencies: @@ -2302,7 +2301,7 @@ snapshots: - encoding - supports-color - '@covector/changelog@0.12.0': + '@covector/changelog@0.12.0(mocha@10.8.2)': dependencies: '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) @@ -2312,6 +2311,7 @@ snapshots: unified: 9.2.2 transitivePeerDependencies: - encoding + - mocha - supports-color '@covector/command@0.8.0': @@ -3167,9 +3167,9 @@ snapshots: covector@0.12.4(mocha@10.8.2): dependencies: '@clack/prompts': 0.7.0 - '@covector/apply': 0.10.0(mocha@10.8.2) + '@covector/apply': 0.10.0 '@covector/assemble': 0.12.0 - '@covector/changelog': 0.12.0 + '@covector/changelog': 0.12.0(mocha@10.8.2) '@covector/command': 0.8.0 '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) From 8882dea3b9b366a40c4d7d2f14d7a7aeff9ce7e5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 10 Mar 2025 16:00:28 +0100 Subject: [PATCH 41/80] chore(deps): update rust crate android_logger to 0.15 (#2502) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- Cargo.lock | 8 ++++---- plugins/log/Cargo.toml | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ba278a9f..a8739621 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -125,15 +125,15 @@ checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" [[package]] name = "android_log-sys" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ecc8056bf6ab9892dcd53216c83d1597487d7dacac16c8df6b877d127df9937" +checksum = "84521a3cf562bc62942e294181d9eef17eb38ceb8c68677bc49f144e4c3d4f8d" [[package]] name = "android_logger" -version = "0.14.1" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05b07e8e73d720a1f2e4b6014766e6039fd2e96a4fa44e2a78d0e1fa2ff49826" +checksum = "f6f39be698127218cca460cb624878c9aa4e2b47dba3b277963d2bf00bad263b" dependencies = [ "android_log-sys", "env_filter", diff --git a/plugins/log/Cargo.toml b/plugins/log/Cargo.toml index 766087d8..0c6de1b3 100644 --- a/plugins/log/Cargo.toml +++ b/plugins/log/Cargo.toml @@ -35,7 +35,7 @@ time = { version = "0.3", features = ["formatting", "local-offset"] } fern = "0.7" [target."cfg(target_os = \"android\")".dependencies] -android_logger = "0.14" +android_logger = "0.15" [target."cfg(target_os = \"ios\")".dependencies] swift-rs = "1" From 95e8f909b103c5c8f7c52a756fb5501b77267779 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 10 Mar 2025 20:55:32 +0100 Subject: [PATCH 42/80] chore(deps): update dependency typescript-eslint to v8.26.1 (#2517) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 112 ++++++++++++++++++++++++------------------------- 2 files changed, 57 insertions(+), 57 deletions(-) diff --git a/package.json b/package.json index 2e13f154..d317eafe 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "rollup": "4.35.0", "tslib": "2.8.1", "typescript": "5.8.2", - "typescript-eslint": "8.26.0" + "typescript-eslint": "8.26.1" }, "pnpm": { "overrides": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e542306a..1b97d527 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -48,8 +48,8 @@ importers: specifier: 5.8.2 version: 5.8.2 typescript-eslint: - specifier: 8.26.0 - version: 8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + specifier: 8.26.1 + version: 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) examples/api: dependencies: @@ -932,51 +932,51 @@ packages: '@types/unist@2.0.11': resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} - '@typescript-eslint/eslint-plugin@8.26.0': - resolution: {integrity: sha512-cLr1J6pe56zjKYajK6SSSre6nl1Gj6xDp1TY0trpgPzjVbgDwd09v2Ws37LABxzkicmUjhEeg/fAUjPJJB1v5Q==} + '@typescript-eslint/eslint-plugin@8.26.1': + resolution: {integrity: sha512-2X3mwqsj9Bd3Ciz508ZUtoQQYpOhU/kWoUqIf49H8Z0+Vbh6UF/y0OEYp0Q0axOGzaBGs7QxRwq0knSQ8khQNA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/parser@8.26.0': - resolution: {integrity: sha512-mNtXP9LTVBy14ZF3o7JG69gRPBK/2QWtQd0j0oH26HcY/foyJJau6pNUez7QrM5UHnSvwlQcJXKsk0I99B9pOA==} + '@typescript-eslint/parser@8.26.1': + resolution: {integrity: sha512-w6HZUV4NWxqd8BdeFf81t07d7/YV9s7TCWrQQbG5uhuvGUAW+fq1usZ1Hmz9UPNLniFnD8GLSsDpjP0hm1S4lQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/scope-manager@8.26.0': - resolution: {integrity: sha512-E0ntLvsfPqnPwng8b8y4OGuzh/iIOm2z8U3S9zic2TeMLW61u5IH2Q1wu0oSTkfrSzwbDJIB/Lm8O3//8BWMPA==} + '@typescript-eslint/scope-manager@8.26.1': + resolution: {integrity: sha512-6EIvbE5cNER8sqBu6V7+KeMZIC1664d2Yjt+B9EWUXrsyWpxx4lEZrmvxgSKRC6gX+efDL/UY9OpPZ267io3mg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@8.26.0': - resolution: {integrity: sha512-ruk0RNChLKz3zKGn2LwXuVoeBcUMh+jaqzN461uMMdxy5H9epZqIBtYj7UiPXRuOpaALXGbmRuZQhmwHhaS04Q==} + '@typescript-eslint/type-utils@8.26.1': + resolution: {integrity: sha512-Kcj/TagJLwoY/5w9JGEFV0dclQdyqw9+VMndxOJKtoFSjfZhLXhYjzsQEeyza03rwHx2vFEGvrJWJBXKleRvZg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/types@8.26.0': - resolution: {integrity: sha512-89B1eP3tnpr9A8L6PZlSjBvnJhWXtYfZhECqlBl1D9Lme9mHO6iWlsprBtVenQvY1HMhax1mWOjhtL3fh/u+pA==} + '@typescript-eslint/types@8.26.1': + resolution: {integrity: sha512-n4THUQW27VmQMx+3P+B0Yptl7ydfceUj4ON/AQILAASwgYdZ/2dhfymRMh5egRUrvK5lSmaOm77Ry+lmXPOgBQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.26.0': - resolution: {integrity: sha512-tiJ1Hvy/V/oMVRTbEOIeemA2XoylimlDQ03CgPPNaHYZbpsc78Hmngnt+WXZfJX1pjQ711V7g0H7cSJThGYfPQ==} + '@typescript-eslint/typescript-estree@8.26.1': + resolution: {integrity: sha512-yUwPpUHDgdrv1QJ7YQal3cMVBGWfnuCdKbXw1yyjArax3353rEJP1ZA+4F8nOlQ3RfS2hUN/wze3nlY+ZOhvoA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/utils@8.26.0': - resolution: {integrity: sha512-2L2tU3FVwhvU14LndnQCA2frYC8JnPDVKyQtWFPf8IYFMt/ykEN1bPolNhNbCVgOmdzTlWdusCTKA/9nKrf8Ig==} + '@typescript-eslint/utils@8.26.1': + resolution: {integrity: sha512-V4Urxa/XtSUroUrnI7q6yUTD3hDtfJ2jzVfeT3VK0ciizfK2q/zGC0iDh1lFMUZR8cImRrep6/q0xd/1ZGPQpg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/visitor-keys@8.26.0': - resolution: {integrity: sha512-2z8JQJWAzPdDd51dRQ/oqIJxe99/hoLIqmf8RMCAJQtYDc535W/Jt2+RTP4bP0aKeBG1F65yjIZuczOXCmbWwg==} + '@typescript-eslint/visitor-keys@8.26.1': + resolution: {integrity: sha512-AjOC3zfnxd6S4Eiy3jwktJPclqhFHNyd8L6Gycf9WUPoKZpgM5PjkxY1X7uSy61xVpiJDhhk7XT2NVsN3ALTWg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@unocss/astro@66.0.0': @@ -2058,8 +2058,8 @@ packages: resolution: {integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==} engines: {node: '>=8'} - typescript-eslint@8.26.0: - resolution: {integrity: sha512-PtVz9nAnuNJuAVeUFvwztjuUgSnJInODAUx47VDwWPXzd5vismPOtPtt83tzNXyOjVQbPRp786D6WFW/M2koIA==} + typescript-eslint@8.26.1: + resolution: {integrity: sha512-t/oIs9mYyrwZGRpDv3g+3K6nZ5uhKEMt2oNmAPwaY4/ye0+EH4nXIPYNtkYFS6QHm+1DFg34DbglYBz5P9Xysg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -2278,13 +2278,14 @@ snapshots: picocolors: 1.1.1 sisteransi: 1.0.5 - '@covector/apply@0.10.0': + '@covector/apply@0.10.0(mocha@10.8.2)': dependencies: '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) semver: 7.7.1 transitivePeerDependencies: - encoding + - mocha '@covector/assemble@0.12.0': dependencies: @@ -2301,7 +2302,7 @@ snapshots: - encoding - supports-color - '@covector/changelog@0.12.0(mocha@10.8.2)': + '@covector/changelog@0.12.0': dependencies: '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) @@ -2311,7 +2312,6 @@ snapshots: unified: 9.2.2 transitivePeerDependencies: - encoding - - mocha - supports-color '@covector/command@0.8.0': @@ -2749,14 +2749,14 @@ snapshots: '@types/unist@2.0.11': {} - '@typescript-eslint/eslint-plugin@8.26.0(@typescript-eslint/parser@8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/eslint-plugin@8.26.1(@typescript-eslint/parser@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/scope-manager': 8.26.0 - '@typescript-eslint/type-utils': 8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/utils': 8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/visitor-keys': 8.26.0 + '@typescript-eslint/parser': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/scope-manager': 8.26.1 + '@typescript-eslint/type-utils': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/visitor-keys': 8.26.1 eslint: 9.22.0(jiti@2.4.2) graphemer: 1.4.0 ignore: 5.3.2 @@ -2766,27 +2766,27 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/parser@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: - '@typescript-eslint/scope-manager': 8.26.0 - '@typescript-eslint/types': 8.26.0 - '@typescript-eslint/typescript-estree': 8.26.0(typescript@5.8.2) - '@typescript-eslint/visitor-keys': 8.26.0 + '@typescript-eslint/scope-manager': 8.26.1 + '@typescript-eslint/types': 8.26.1 + '@typescript-eslint/typescript-estree': 8.26.1(typescript@5.8.2) + '@typescript-eslint/visitor-keys': 8.26.1 debug: 4.4.0(supports-color@8.1.1) eslint: 9.22.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@8.26.0': + '@typescript-eslint/scope-manager@8.26.1': dependencies: - '@typescript-eslint/types': 8.26.0 - '@typescript-eslint/visitor-keys': 8.26.0 + '@typescript-eslint/types': 8.26.1 + '@typescript-eslint/visitor-keys': 8.26.1 - '@typescript-eslint/type-utils@8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/type-utils@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: - '@typescript-eslint/typescript-estree': 8.26.0(typescript@5.8.2) - '@typescript-eslint/utils': 8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/typescript-estree': 8.26.1(typescript@5.8.2) + '@typescript-eslint/utils': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) debug: 4.4.0(supports-color@8.1.1) eslint: 9.22.0(jiti@2.4.2) ts-api-utils: 2.0.1(typescript@5.8.2) @@ -2794,12 +2794,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/types@8.26.0': {} + '@typescript-eslint/types@8.26.1': {} - '@typescript-eslint/typescript-estree@8.26.0(typescript@5.8.2)': + '@typescript-eslint/typescript-estree@8.26.1(typescript@5.8.2)': dependencies: - '@typescript-eslint/types': 8.26.0 - '@typescript-eslint/visitor-keys': 8.26.0 + '@typescript-eslint/types': 8.26.1 + '@typescript-eslint/visitor-keys': 8.26.1 debug: 4.4.0(supports-color@8.1.1) fast-glob: 3.3.3 is-glob: 4.0.3 @@ -2810,20 +2810,20 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/utils@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.22.0(jiti@2.4.2)) - '@typescript-eslint/scope-manager': 8.26.0 - '@typescript-eslint/types': 8.26.0 - '@typescript-eslint/typescript-estree': 8.26.0(typescript@5.8.2) + '@typescript-eslint/scope-manager': 8.26.1 + '@typescript-eslint/types': 8.26.1 + '@typescript-eslint/typescript-estree': 8.26.1(typescript@5.8.2) eslint: 9.22.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/visitor-keys@8.26.0': + '@typescript-eslint/visitor-keys@8.26.1': dependencies: - '@typescript-eslint/types': 8.26.0 + '@typescript-eslint/types': 8.26.1 eslint-visitor-keys: 4.2.0 '@unocss/astro@66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': @@ -3167,9 +3167,9 @@ snapshots: covector@0.12.4(mocha@10.8.2): dependencies: '@clack/prompts': 0.7.0 - '@covector/apply': 0.10.0 + '@covector/apply': 0.10.0(mocha@10.8.2) '@covector/assemble': 0.12.0 - '@covector/changelog': 0.12.0(mocha@10.8.2) + '@covector/changelog': 0.12.0 '@covector/command': 0.8.0 '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) @@ -4032,11 +4032,11 @@ snapshots: type-fest@0.7.1: {} - typescript-eslint@8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2): + typescript-eslint@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2): dependencies: - '@typescript-eslint/eslint-plugin': 8.26.0(@typescript-eslint/parser@8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/parser': 8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/utils': 8.26.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/eslint-plugin': 8.26.1(@typescript-eslint/parser@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/parser': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) eslint: 9.22.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: From 68eb74353bcf0e8633d20158860bb7a617d61fb3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 12 Mar 2025 16:34:42 +0800 Subject: [PATCH 43/80] chore(deps): update dependency @rollup/plugin-node-resolve to v16.0.1 (#2520) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index d317eafe..34889a0e 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ }, "devDependencies": { "@eslint/js": "9.22.0", - "@rollup/plugin-node-resolve": "16.0.0", + "@rollup/plugin-node-resolve": "16.0.1", "@rollup/plugin-terser": "0.4.4", "@rollup/plugin-typescript": "12.1.2", "covector": "^0.12.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1b97d527..88803d24 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -15,8 +15,8 @@ importers: specifier: 9.22.0 version: 9.22.0 '@rollup/plugin-node-resolve': - specifier: 16.0.0 - version: 16.0.0(rollup@4.35.0) + specifier: 16.0.1 + version: 16.0.1(rollup@4.35.0) '@rollup/plugin-terser': specifier: 0.4.4 version: 0.4.4(rollup@4.35.0) @@ -699,8 +699,8 @@ packages: '@polka/url@1.0.0-next.28': resolution: {integrity: sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw==} - '@rollup/plugin-node-resolve@16.0.0': - resolution: {integrity: sha512-0FPvAeVUT/zdWoO0jnb/V5BlBsUSNfkIOtFHzMO4H9MOklrmQFY6FduVHKucNb/aTFxvnGhj4MNj/T1oNdDfNg==} + '@rollup/plugin-node-resolve@16.0.1': + resolution: {integrity: sha512-tk5YCxJWIG81umIvNkSod2qK5KyQW19qcBF/B78n1bjtOON6gzKoVeSzAE8yHCZEDmqkHKkxplExA8KzdJLJpA==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^2.78.0||^3.0.0||^4.0.0 @@ -2578,7 +2578,7 @@ snapshots: '@polka/url@1.0.0-next.28': {} - '@rollup/plugin-node-resolve@16.0.0(rollup@4.35.0)': + '@rollup/plugin-node-resolve@16.0.1(rollup@4.35.0)': dependencies: '@rollup/pluginutils': 5.1.4(rollup@4.35.0) '@types/resolve': 1.20.2 From 1bb1ced53820127204aa7adf57510c1cbce55e12 Mon Sep 17 00:00:00 2001 From: Knobibrot Date: Wed, 12 Mar 2025 22:27:40 +0100 Subject: [PATCH 44/80] feat(log): enable TargetKind::LogDir on mobile (#2524) * enable log dir on iOS/Android * Create change-pr-2524.md --------- Co-authored-by: Fabian-Lars --- .changes/change-pr-2524.md | 6 ++++++ plugins/log/src/lib.rs | 14 ++++++-------- 2 files changed, 12 insertions(+), 8 deletions(-) create mode 100644 .changes/change-pr-2524.md diff --git a/.changes/change-pr-2524.md b/.changes/change-pr-2524.md new file mode 100644 index 00000000..a3358b93 --- /dev/null +++ b/.changes/change-pr-2524.md @@ -0,0 +1,6 @@ +--- +"log": patch +"log-js": patch +--- + +enable TargetKind::LogDir on mobile diff --git a/plugins/log/src/lib.rs b/plugins/log/src/lib.rs index 7cb4a526..9bf784c7 100644 --- a/plugins/log/src/lib.rs +++ b/plugins/log/src/lib.rs @@ -159,11 +159,12 @@ pub enum TargetKind { /// /// ### Platform-specific /// - /// |Platform | Value | Example | - /// | ------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------- | - /// | Linux | `$XDG_DATA_HOME/{bundleIdentifier}/logs` or `$HOME/.local/share/{bundleIdentifier}/logs` | `/home/alice/.local/share/com.tauri.dev/logs` | - /// | macOS | `{homeDir}/Library/Logs/{bundleIdentifier}` | `/Users/Alice/Library/Logs/com.tauri.dev` | - /// | Windows | `{FOLDERID_LocalAppData}/{bundleIdentifier}/logs` | `C:\Users\Alice\AppData\Local\com.tauri.dev\logs` | + /// |Platform | Value | Example | + /// | --------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------- | + /// | Linux | `$XDG_DATA_HOME/{bundleIdentifier}/logs` or `$HOME/.local/share/{bundleIdentifier}/logs` | `/home/alice/.local/share/com.tauri.dev/logs` | + /// | macOS/iOS | `{homeDir}/Library/Logs/{bundleIdentifier}` | `/Users/Alice/Library/Logs/com.tauri.dev` | + /// | Windows | `{FOLDERID_LocalAppData}/{bundleIdentifier}/logs` | `C:\Users\Alice\AppData\Local\com.tauri.dev\logs` | + /// | Android | `{ConfigDir}/logs` | `/data/data/com.tauri.dev/files/logs` | LogDir { file_name: Option }, /// Forward logs to the webview (via the `log://log` event). /// @@ -451,9 +452,6 @@ impl Builder { )?)? .into() } - #[cfg(mobile)] - TargetKind::LogDir { .. } => continue, - #[cfg(desktop)] TargetKind::LogDir { file_name } => { let path = app_handle.path().app_log_dir()?; if !path.exists() { From 1e9e496b0640d97d363085d8eb2608249017562e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 12 Mar 2025 22:29:34 +0100 Subject: [PATCH 45/80] publish new versions (#2526) Co-authored-by: FabianLars <30730186+FabianLars@users.noreply.github.com> --- .changes/change-pr-2524.md | 6 ------ Cargo.lock | 4 ++-- examples/api/CHANGELOG.md | 6 ++++++ examples/api/package.json | 2 +- examples/api/src-tauri/CHANGELOG.md | 6 ++++++ examples/api/src-tauri/Cargo.toml | 4 ++-- plugins/log/CHANGELOG.md | 4 ++++ plugins/log/Cargo.toml | 2 +- plugins/log/package.json | 2 +- 9 files changed, 23 insertions(+), 13 deletions(-) delete mode 100644 .changes/change-pr-2524.md diff --git a/.changes/change-pr-2524.md b/.changes/change-pr-2524.md deleted file mode 100644 index a3358b93..00000000 --- a/.changes/change-pr-2524.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"log": patch -"log-js": patch ---- - -enable TargetKind::LogDir on mobile diff --git a/Cargo.lock b/Cargo.lock index a8739621..643e8a5c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -206,7 +206,7 @@ checksum = "4c95c10ba0b00a02636238b814946408b1322d5ac4760326e6fb8ec956d85775" [[package]] name = "api" -version = "2.0.20" +version = "2.0.21" dependencies = [ "log", "serde", @@ -6739,7 +6739,7 @@ dependencies = [ [[package]] name = "tauri-plugin-log" -version = "2.3.0" +version = "2.3.1" dependencies = [ "android_logger", "byte-unit", diff --git a/examples/api/CHANGELOG.md b/examples/api/CHANGELOG.md index 414bdb9b..dc592f51 100644 --- a/examples/api/CHANGELOG.md +++ b/examples/api/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## \[2.0.17] + +### Dependencies + +- Upgraded to `log-js@2.3.1` + ## \[2.0.16] ### Dependencies diff --git a/examples/api/package.json b/examples/api/package.json index 7604a76d..e90a317f 100644 --- a/examples/api/package.json +++ b/examples/api/package.json @@ -1,7 +1,7 @@ { "name": "api", "private": true, - "version": "2.0.16", + "version": "2.0.17", "type": "module", "scripts": { "dev": "vite --clearScreen false", diff --git a/examples/api/src-tauri/CHANGELOG.md b/examples/api/src-tauri/CHANGELOG.md index 91fadc32..c8ab03b7 100644 --- a/examples/api/src-tauri/CHANGELOG.md +++ b/examples/api/src-tauri/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## \[2.0.21] + +### Dependencies + +- Upgraded to `log@2.3.1` + ## \[2.0.20] ### Dependencies diff --git a/examples/api/src-tauri/Cargo.toml b/examples/api/src-tauri/Cargo.toml index d62a968f..a0b2c8fe 100644 --- a/examples/api/src-tauri/Cargo.toml +++ b/examples/api/src-tauri/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "api" publish = false -version = "2.0.20" +version = "2.0.21" description = "An example Tauri Application showcasing the api" edition = "2021" rust-version = { workspace = true } @@ -19,7 +19,7 @@ serde_json = { workspace = true } serde = { workspace = true } tiny_http = "0.12" log = { workspace = true } -tauri-plugin-log = { path = "../../../plugins/log", version = "2.3.0" } +tauri-plugin-log = { path = "../../../plugins/log", version = "2.3.1" } tauri-plugin-fs = { path = "../../../plugins/fs", version = "2.2.0", features = [ "watch", ] } diff --git a/plugins/log/CHANGELOG.md b/plugins/log/CHANGELOG.md index 674d60b7..98869ea1 100644 --- a/plugins/log/CHANGELOG.md +++ b/plugins/log/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## \[2.3.1] + +- [`1bb1ced5`](https://github.com/tauri-apps/plugins-workspace/commit/1bb1ced53820127204aa7adf57510c1cbce55e12) ([#2524](https://github.com/tauri-apps/plugins-workspace/pull/2524) by [@elwerene](https://github.com/tauri-apps/plugins-workspace/../../elwerene)) enable TargetKind::LogDir on mobile + ## \[2.3.0] ### feat diff --git a/plugins/log/Cargo.toml b/plugins/log/Cargo.toml index 0c6de1b3..a3b8b290 100644 --- a/plugins/log/Cargo.toml +++ b/plugins/log/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-log" -version = "2.3.0" +version = "2.3.1" description = "Configurable logging for your Tauri app." authors = { workspace = true } license = { workspace = true } diff --git a/plugins/log/package.json b/plugins/log/package.json index eadf2f2a..290ab097 100644 --- a/plugins/log/package.json +++ b/plugins/log/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-log", - "version": "2.3.0", + "version": "2.3.1", "description": "Configurable logging for your Tauri app.", "license": "MIT OR Apache-2.0", "authors": [ From d3183aa99da7ca67e627394132ddeb3b85ccef06 Mon Sep 17 00:00:00 2001 From: Adriel Jansen Siahaya <166703058+adrieljss@users.noreply.github.com> Date: Sat, 15 Mar 2025 08:06:41 +0800 Subject: [PATCH 46/80] fix(http): return response early in JS before waiting for chunks on the rust side (#2522) --- .changes/http-stream-support.md | 6 +++ plugins/http/api-iife.js | 2 +- plugins/http/guest-js/index.ts | 72 ++++++++++++++++++--------------- plugins/http/src/commands.rs | 48 ++++++++++++++-------- plugins/http/src/lib.rs | 3 +- pnpm-lock.yaml | 2 +- 6 files changed, 81 insertions(+), 52 deletions(-) create mode 100644 .changes/http-stream-support.md diff --git a/.changes/http-stream-support.md b/.changes/http-stream-support.md new file mode 100644 index 00000000..8c33f646 --- /dev/null +++ b/.changes/http-stream-support.md @@ -0,0 +1,6 @@ +--- +"http": patch +"http-js": patch +--- + +Fix `fetch` blocking until the whole response is read even if it was a streaming response. diff --git a/plugins/http/api-iife.js b/plugins/http/api-iife.js index bb2cb09b..07653dee 100644 --- a/plugins/http/api-iife.js +++ b/plugins/http/api-iife.js @@ -1 +1 @@ -if("__TAURI__"in window){var __TAURI_PLUGIN_HTTP__=function(e){"use strict";function t(e,t,r,n){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)}function r(e,t,r,n,s){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return t.set(e,r),r}var n,s,a;"function"==typeof SuppressedError&&SuppressedError;const i="__TAURI_TO_IPC_KEY__";class o{constructor(){this.__TAURI_CHANNEL_MARKER__=!0,n.set(this,(()=>{})),s.set(this,0),a.set(this,[]),this.id=function(e,t=!1){return window.__TAURI_INTERNALS__.transformCallback(e,t)}((({message:e,id:i})=>{if(i==t(this,s,"f"))for(t(this,n,"f").call(this,e),r(this,s,t(this,s,"f")+1);t(this,s,"f")in t(this,a,"f");){const e=t(this,a,"f")[t(this,s,"f")];t(this,n,"f").call(this,e),delete t(this,a,"f")[t(this,s,"f")],r(this,s,t(this,s,"f")+1)}else t(this,a,"f")[i]=e}))}set onmessage(e){r(this,n,e)}get onmessage(){return t(this,n,"f")}[(n=new WeakMap,s=new WeakMap,a=new WeakMap,i)](){return`__CHANNEL__:${this.id}`}toJSON(){return this[i]()}}async function c(e,t={},r){return window.__TAURI_INTERNALS__.invoke(e,t,r)}const d="Request canceled";return e.fetch=async function(e,t){const r=t?.signal;if(r?.aborted)throw new Error(d);const n=t?.maxRedirections,s=t?.connectTimeout,a=t?.proxy,i=t?.danger;t&&(delete t.maxRedirections,delete t.connectTimeout,delete t.proxy,delete t.danger);const f=t?.headers?t.headers instanceof Headers?t.headers:new Headers(t.headers):new Headers,h=new Request(e,t),_=await h.arrayBuffer(),u=0!==_.byteLength?Array.from(new Uint8Array(_)):null;for(const[e,t]of h.headers)f.get(e)||f.set(e,t);const l=(f instanceof Headers?Array.from(f.entries()):Array.isArray(f)?f:Object.entries(f)).map((([e,t])=>[e,"string"==typeof t?t:t.toString()]));if(r?.aborted)throw new Error(d);const w=new o,p=new ReadableStream({start:e=>{w.onmessage=t=>{if(r?.aborted)return e.error(d),void e.close();(t instanceof ArrayBuffer?0!=t.byteLength:0!=t.length)?e.enqueue(new Uint8Array(t)):e.close()}}}),m=await c("plugin:http|fetch",{clientConfig:{method:h.method,url:h.url,headers:l,data:u,maxRedirections:n,connectTimeout:s,proxy:a,danger:i},streamChannel:w}),y=()=>c("plugin:http|fetch_cancel",{rid:m});if(r?.aborted)throw y(),new Error(d);r?.addEventListener("abort",(()=>{y()}));const{status:T,statusText:g,url:A,headers:R}=await c("plugin:http|fetch_send",{rid:m}),b=new Response(p,{status:T,statusText:g});return Object.defineProperty(b,"url",{value:A}),Object.defineProperty(b,"headers",{value:new Headers(R)}),b},e}({});Object.defineProperty(window.__TAURI__,"http",{value:__TAURI_PLUGIN_HTTP__})} +if("__TAURI__"in window){var __TAURI_PLUGIN_HTTP__=function(e){"use strict";function t(e,t,r,n){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)}function r(e,t,r,n,s){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return t.set(e,r),r}var n,s,a;"function"==typeof SuppressedError&&SuppressedError;const i="__TAURI_TO_IPC_KEY__";class o{constructor(){this.__TAURI_CHANNEL_MARKER__=!0,n.set(this,(()=>{})),s.set(this,0),a.set(this,[]),this.id=function(e,t=!1){return window.__TAURI_INTERNALS__.transformCallback(e,t)}((({message:e,id:i})=>{if(i==t(this,s,"f"))for(t(this,n,"f").call(this,e),r(this,s,t(this,s,"f")+1);t(this,s,"f")in t(this,a,"f");){const e=t(this,a,"f")[t(this,s,"f")];t(this,n,"f").call(this,e),delete t(this,a,"f")[t(this,s,"f")],r(this,s,t(this,s,"f")+1)}else t(this,a,"f")[i]=e}))}set onmessage(e){r(this,n,e)}get onmessage(){return t(this,n,"f")}[(n=new WeakMap,s=new WeakMap,a=new WeakMap,i)](){return`__CHANNEL__:${this.id}`}toJSON(){return this[i]()}}async function c(e,t={},r){return window.__TAURI_INTERNALS__.invoke(e,t,r)}const d="Request cancelled";return e.fetch=async function(e,t){const r=t?.signal;if(r?.aborted)throw new Error(d);const n=t?.maxRedirections,s=t?.connectTimeout,a=t?.proxy,i=t?.danger;t&&(delete t.maxRedirections,delete t.connectTimeout,delete t.proxy,delete t.danger);const h=t?.headers?t.headers instanceof Headers?t.headers:new Headers(t.headers):new Headers,f=new Request(e,t),_=await f.arrayBuffer(),u=0!==_.byteLength?Array.from(new Uint8Array(_)):null;for(const[e,t]of f.headers)h.get(e)||h.set(e,t);const l=(h instanceof Headers?Array.from(h.entries()):Array.isArray(h)?h:Object.entries(h)).map((([e,t])=>[e,"string"==typeof t?t:t.toString()]));if(r?.aborted)throw new Error(d);const w=await c("plugin:http|fetch",{clientConfig:{method:f.method,url:f.url,headers:l,data:u,maxRedirections:n,connectTimeout:s,proxy:a,danger:i}}),p=()=>c("plugin:http|fetch_cancel",{rid:w});if(r?.aborted)throw p(),new Error(d);r?.addEventListener("abort",(()=>{p()}));const{status:y,statusText:m,url:T,headers:g,rid:A}=await c("plugin:http|fetch_send",{rid:w}),R=new ReadableStream({start:e=>{const t=new o;t.onmessage=t=>{r?.aborted?e.error(d):(t instanceof ArrayBuffer?0!=t.byteLength:0!=t.length)?e.enqueue(new Uint8Array(t)):e.close()},c("plugin:http|fetch_read_body",{rid:A,streamChannel:t}).catch((t=>{e.error(t)}))}}),b=new Response(R,{status:y,statusText:m});return Object.defineProperty(b,"url",{value:T}),Object.defineProperty(b,"headers",{value:new Headers(g)}),b},e}({});Object.defineProperty(window.__TAURI__,"http",{value:__TAURI_PLUGIN_HTTP__})} diff --git a/plugins/http/guest-js/index.ts b/plugins/http/guest-js/index.ts index 2d86e9d8..4c33f072 100644 --- a/plugins/http/guest-js/index.ts +++ b/plugins/http/guest-js/index.ts @@ -106,7 +106,7 @@ export interface DangerousSettings { acceptInvalidHostnames?: boolean } -const ERROR_REQUEST_CANCELLED = 'Request canceled' +const ERROR_REQUEST_CANCELLED = 'Request cancelled' /** * Fetch a resource from the network. It returns a `Promise` that resolves to the @@ -186,35 +186,6 @@ export async function fetch( throw new Error(ERROR_REQUEST_CANCELLED) } - const streamChannel = new Channel() - - const readableStreamBody = new ReadableStream({ - start: (controller) => { - streamChannel.onmessage = (res: ArrayBuffer | number[]) => { - // close early if aborted - if (signal?.aborted) { - controller.error(ERROR_REQUEST_CANCELLED) - controller.close() - return - } - - // close when the signal to close (an empty chunk) - // is sent from the IPC. - if ( - res instanceof ArrayBuffer ? res.byteLength == 0 : res.length == 0 - ) { - controller.close() - return - } - - // the content conversion (like .text(), .json(), etc.) in Response - // must have Uint8Array as its content, else it will - // have untraceable error that's hard to debug. - controller.enqueue(new Uint8Array(res)) - } - } - }) - const rid = await invoke('plugin:http|fetch', { clientConfig: { method: req.method, @@ -225,8 +196,7 @@ export async function fetch( connectTimeout, proxy, danger - }, - streamChannel + } }) const abort = () => invoke('plugin:http|fetch_cancel', { rid }) @@ -253,11 +223,47 @@ export async function fetch( status, statusText, url, - headers: responseHeaders + headers: responseHeaders, + rid: responseRid } = await invoke('plugin:http|fetch_send', { rid }) + const readableStreamBody = new ReadableStream({ + start: (controller) => { + const streamChannel = new Channel() + streamChannel.onmessage = (res: ArrayBuffer | number[]) => { + // close early if aborted + if (signal?.aborted) { + controller.error(ERROR_REQUEST_CANCELLED) + return + } + + // close when the signal to close (an empty chunk) + // is sent from the IPC. + if ( + res instanceof ArrayBuffer ? res.byteLength == 0 : res.length == 0 + ) { + controller.close() + return + } + + // the content conversion (like .text(), .json(), etc.) in Response + // must have Uint8Array as its content, else it will + // have untraceable error that's hard to debug. + controller.enqueue(new Uint8Array(res)) + } + + // run a non-blocking body stream fetch + invoke('plugin:http|fetch_read_body', { + rid: responseRid, + streamChannel + }).catch((e) => { + controller.error(e) + }) + } + }) + const res = new Response(readableStreamBody, { status, statusText diff --git a/plugins/http/src/commands.rs b/plugins/http/src/commands.rs index 17e514e2..18953121 100644 --- a/plugins/http/src/commands.rs +++ b/plugins/http/src/commands.rs @@ -22,6 +22,9 @@ use crate::{ const HTTP_USER_AGENT: &str = concat!(env!("CARGO_PKG_NAME"), "/", env!("CARGO_PKG_VERSION"),); +struct ReqwestResponse(reqwest::Response); +impl tauri::Resource for ReqwestResponse {} + type CancelableResponseResult = Result; type CancelableResponseFuture = Pin + Send + Sync>>; @@ -178,7 +181,6 @@ pub async fn fetch( client_config: ClientConfig, command_scope: CommandScope, global_scope: GlobalScope, - stream_channel: Channel, ) -> crate::Result { let ClientConfig { method, @@ -312,20 +314,7 @@ pub async fn fetch( #[cfg(feature = "tracing")] tracing::trace!("{:?}", request); - let fut = async move { - let mut res = request.send().await?; - - // send response through IPC channel - while let Some(chunk) = res.chunk().await? { - stream_channel.send(tauri::ipc::InvokeResponseBody::Raw(chunk.to_vec()))?; - } - - // send empty vector when done - stream_channel.send(tauri::ipc::InvokeResponseBody::Raw(Vec::new()))?; - - // return that response - Ok(res) - }; + let fut = async move { request.send().await.map_err(Into::into) }; let mut resources_table = webview.resources_table(); let rid = resources_table.add_request(Box::pin(fut)); @@ -370,7 +359,7 @@ pub fn fetch_cancel(webview: Webview, rid: ResourceId) -> crate:: Ok(()) } -#[tauri::command] +#[command] pub async fn fetch_send( webview: Webview, rid: ResourceId, @@ -410,6 +399,9 @@ pub async fn fetch_send( )); } + let mut resources_table = webview.resources_table(); + let rid = resources_table.add(ReqwestResponse(res)); + Ok(FetchResponse { status: status.as_u16(), status_text: status.canonical_reason().unwrap_or_default().to_string(), @@ -419,6 +411,30 @@ pub async fn fetch_send( }) } +#[command] +pub async fn fetch_read_body( + webview: Webview, + rid: ResourceId, + stream_channel: Channel, +) -> crate::Result<()> { + let res = { + let mut resources_table = webview.resources_table(); + resources_table.take::(rid)? + }; + + let mut res = Arc::into_inner(res).unwrap().0; + + // send response through IPC channel + while let Some(chunk) = res.chunk().await? { + stream_channel.send(tauri::ipc::InvokeResponseBody::Raw(chunk.to_vec()))?; + } + + // send empty vector when done + stream_channel.send(tauri::ipc::InvokeResponseBody::Raw(Vec::new()))?; + + Ok(()) +} + // forbidden headers per fetch spec https://fetch.spec.whatwg.org/#terminology-headers #[cfg(not(feature = "unsafe-headers"))] fn is_unsafe_header(header: &HeaderName) -> bool { diff --git a/plugins/http/src/lib.rs b/plugins/http/src/lib.rs index 4e11e561..65829e09 100644 --- a/plugins/http/src/lib.rs +++ b/plugins/http/src/lib.rs @@ -36,7 +36,8 @@ pub fn init() -> TauriPlugin { .invoke_handler(tauri::generate_handler![ commands::fetch, commands::fetch_cancel, - commands::fetch_send + commands::fetch_send, + commands::fetch_read_body ]) .build() } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 88803d24..1e10af4f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4209,4 +4209,4 @@ snapshots: zod@3.24.2: {} - zwitch@1.0.5: {} + zwitch@1.0.5: {} \ No newline at end of file From 5347de8db9ee6092e7f6664a5a08d35b44480040 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 15 Mar 2025 02:08:18 +0200 Subject: [PATCH 47/80] publish new versions (#2534) Co-authored-by: amrbashir <48618675+amrbashir@users.noreply.github.com> --- .changes/http-stream-support.md | 6 ------ Cargo.lock | 4 ++-- examples/api/CHANGELOG.md | 6 ++++++ examples/api/package.json | 4 ++-- examples/api/src-tauri/CHANGELOG.md | 6 ++++++ examples/api/src-tauri/Cargo.toml | 4 ++-- plugins/http/CHANGELOG.md | 4 ++++ plugins/http/Cargo.toml | 2 +- plugins/http/package.json | 2 +- pnpm-lock.yaml | 4 ++-- 10 files changed, 26 insertions(+), 16 deletions(-) delete mode 100644 .changes/http-stream-support.md diff --git a/.changes/http-stream-support.md b/.changes/http-stream-support.md deleted file mode 100644 index 8c33f646..00000000 --- a/.changes/http-stream-support.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"http": patch -"http-js": patch ---- - -Fix `fetch` blocking until the whole response is read even if it was a streaming response. diff --git a/Cargo.lock b/Cargo.lock index 643e8a5c..77b0d2c7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -206,7 +206,7 @@ checksum = "4c95c10ba0b00a02636238b814946408b1322d5ac4760326e6fb8ec956d85775" [[package]] name = "api" -version = "2.0.21" +version = "2.0.22" dependencies = [ "log", "serde", @@ -6705,7 +6705,7 @@ dependencies = [ [[package]] name = "tauri-plugin-http" -version = "2.4.0" +version = "2.4.1" dependencies = [ "data-url", "http", diff --git a/examples/api/CHANGELOG.md b/examples/api/CHANGELOG.md index dc592f51..e09692f2 100644 --- a/examples/api/CHANGELOG.md +++ b/examples/api/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## \[2.0.18] + +### Dependencies + +- Upgraded to `http-js@2.4.1` + ## \[2.0.17] ### Dependencies diff --git a/examples/api/package.json b/examples/api/package.json index e90a317f..3e2c5237 100644 --- a/examples/api/package.json +++ b/examples/api/package.json @@ -1,7 +1,7 @@ { "name": "api", "private": true, - "version": "2.0.17", + "version": "2.0.18", "type": "module", "scripts": { "dev": "vite --clearScreen false", @@ -20,7 +20,7 @@ "@tauri-apps/plugin-geolocation": "^2.2.0", "@tauri-apps/plugin-global-shortcut": "^2.2.0", "@tauri-apps/plugin-haptics": "^2.2.0", - "@tauri-apps/plugin-http": "^2.4.0", + "@tauri-apps/plugin-http": "^2.4.1", "@tauri-apps/plugin-nfc": "^2.2.0", "@tauri-apps/plugin-notification": "^2.2.2", "@tauri-apps/plugin-opener": "^2.2.6", diff --git a/examples/api/src-tauri/CHANGELOG.md b/examples/api/src-tauri/CHANGELOG.md index c8ab03b7..e735a65c 100644 --- a/examples/api/src-tauri/CHANGELOG.md +++ b/examples/api/src-tauri/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## \[2.0.22] + +### Dependencies + +- Upgraded to `http@2.4.1` + ## \[2.0.21] ### Dependencies diff --git a/examples/api/src-tauri/Cargo.toml b/examples/api/src-tauri/Cargo.toml index a0b2c8fe..3cc99d89 100644 --- a/examples/api/src-tauri/Cargo.toml +++ b/examples/api/src-tauri/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "api" publish = false -version = "2.0.21" +version = "2.0.22" description = "An example Tauri Application showcasing the api" edition = "2021" rust-version = { workspace = true } @@ -27,7 +27,7 @@ tauri-plugin-clipboard-manager = { path = "../../../plugins/clipboard-manager", tauri-plugin-dialog = { path = "../../../plugins/dialog", version = "2.2.0" } tauri-plugin-http = { path = "../../../plugins/http", features = [ "multipart", -], version = "2.4.0" } +], version = "2.4.1" } tauri-plugin-notification = { path = "../../../plugins/notification", version = "2.2.2", features = [ "windows7-compat", ] } diff --git a/plugins/http/CHANGELOG.md b/plugins/http/CHANGELOG.md index b5bac976..628f4715 100644 --- a/plugins/http/CHANGELOG.md +++ b/plugins/http/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## \[2.4.1] + +- [`d3183aa9`](https://github.com/tauri-apps/plugins-workspace/commit/d3183aa99da7ca67e627394132ddeb3b85ccef06) ([#2522](https://github.com/tauri-apps/plugins-workspace/pull/2522) by [@adrieljss](https://github.com/tauri-apps/plugins-workspace/../../adrieljss)) Fix `fetch` blocking until the whole response is read even if it was a streaming response. + ## \[2.4.0] - [`cb38f54f`](https://github.com/tauri-apps/plugins-workspace/commit/cb38f54f4a4ef30995283cd82166c62da17bac44) ([#2479](https://github.com/tauri-apps/plugins-workspace/pull/2479) by [@adrieljss](https://github.com/tauri-apps/plugins-workspace/../../adrieljss)) Add stream support for HTTP stream responses. diff --git a/plugins/http/Cargo.toml b/plugins/http/Cargo.toml index 76d94d5a..707c334d 100644 --- a/plugins/http/Cargo.toml +++ b/plugins/http/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-http" -version = "2.4.0" +version = "2.4.1" description = "Access an HTTP client written in Rust." edition = { workspace = true } authors = { workspace = true } diff --git a/plugins/http/package.json b/plugins/http/package.json index 3a53720c..2c4ba838 100644 --- a/plugins/http/package.json +++ b/plugins/http/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-http", - "version": "2.4.0", + "version": "2.4.1", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1e10af4f..55eedd4e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -84,7 +84,7 @@ importers: specifier: ^2.2.0 version: link:../../plugins/haptics '@tauri-apps/plugin-http': - specifier: ^2.4.0 + specifier: ^2.4.1 version: link:../../plugins/http '@tauri-apps/plugin-nfc': specifier: ^2.2.0 @@ -4209,4 +4209,4 @@ snapshots: zod@3.24.2: {} - zwitch@1.0.5: {} \ No newline at end of file + zwitch@1.0.5: {} From a15eedf37854344f7ffbcb0d373d848563817011 Mon Sep 17 00:00:00 2001 From: Amr Bashir Date: Sun, 16 Mar 2025 21:45:45 +0200 Subject: [PATCH 48/80] fix(http): avoid closing stream multiple times (#2535) * fix(http): avoid closing stream multiple times closes #2533 * use different signal than empty vec --- .changes/http-controller-multiple-close.md | 7 ++++++ plugins/http/api-iife.js | 2 +- plugins/http/guest-js/index.ts | 25 ++++++++++------------ plugins/http/src/commands.rs | 9 +++++--- 4 files changed, 25 insertions(+), 18 deletions(-) create mode 100644 .changes/http-controller-multiple-close.md diff --git a/.changes/http-controller-multiple-close.md b/.changes/http-controller-multiple-close.md new file mode 100644 index 00000000..bec342b1 --- /dev/null +++ b/.changes/http-controller-multiple-close.md @@ -0,0 +1,7 @@ +--- +"http": "patch" +"http-js": "patch" +--- + +Fix `fetch` occasionally throwing an error due to trying to close the underline stream twice. + diff --git a/plugins/http/api-iife.js b/plugins/http/api-iife.js index 07653dee..ec016360 100644 --- a/plugins/http/api-iife.js +++ b/plugins/http/api-iife.js @@ -1 +1 @@ -if("__TAURI__"in window){var __TAURI_PLUGIN_HTTP__=function(e){"use strict";function t(e,t,r,n){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)}function r(e,t,r,n,s){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return t.set(e,r),r}var n,s,a;"function"==typeof SuppressedError&&SuppressedError;const i="__TAURI_TO_IPC_KEY__";class o{constructor(){this.__TAURI_CHANNEL_MARKER__=!0,n.set(this,(()=>{})),s.set(this,0),a.set(this,[]),this.id=function(e,t=!1){return window.__TAURI_INTERNALS__.transformCallback(e,t)}((({message:e,id:i})=>{if(i==t(this,s,"f"))for(t(this,n,"f").call(this,e),r(this,s,t(this,s,"f")+1);t(this,s,"f")in t(this,a,"f");){const e=t(this,a,"f")[t(this,s,"f")];t(this,n,"f").call(this,e),delete t(this,a,"f")[t(this,s,"f")],r(this,s,t(this,s,"f")+1)}else t(this,a,"f")[i]=e}))}set onmessage(e){r(this,n,e)}get onmessage(){return t(this,n,"f")}[(n=new WeakMap,s=new WeakMap,a=new WeakMap,i)](){return`__CHANNEL__:${this.id}`}toJSON(){return this[i]()}}async function c(e,t={},r){return window.__TAURI_INTERNALS__.invoke(e,t,r)}const d="Request cancelled";return e.fetch=async function(e,t){const r=t?.signal;if(r?.aborted)throw new Error(d);const n=t?.maxRedirections,s=t?.connectTimeout,a=t?.proxy,i=t?.danger;t&&(delete t.maxRedirections,delete t.connectTimeout,delete t.proxy,delete t.danger);const h=t?.headers?t.headers instanceof Headers?t.headers:new Headers(t.headers):new Headers,f=new Request(e,t),_=await f.arrayBuffer(),u=0!==_.byteLength?Array.from(new Uint8Array(_)):null;for(const[e,t]of f.headers)h.get(e)||h.set(e,t);const l=(h instanceof Headers?Array.from(h.entries()):Array.isArray(h)?h:Object.entries(h)).map((([e,t])=>[e,"string"==typeof t?t:t.toString()]));if(r?.aborted)throw new Error(d);const w=await c("plugin:http|fetch",{clientConfig:{method:f.method,url:f.url,headers:l,data:u,maxRedirections:n,connectTimeout:s,proxy:a,danger:i}}),p=()=>c("plugin:http|fetch_cancel",{rid:w});if(r?.aborted)throw p(),new Error(d);r?.addEventListener("abort",(()=>{p()}));const{status:y,statusText:m,url:T,headers:g,rid:A}=await c("plugin:http|fetch_send",{rid:w}),R=new ReadableStream({start:e=>{const t=new o;t.onmessage=t=>{r?.aborted?e.error(d):(t instanceof ArrayBuffer?0!=t.byteLength:0!=t.length)?e.enqueue(new Uint8Array(t)):e.close()},c("plugin:http|fetch_read_body",{rid:A,streamChannel:t}).catch((t=>{e.error(t)}))}}),b=new Response(R,{status:y,statusText:m});return Object.defineProperty(b,"url",{value:T}),Object.defineProperty(b,"headers",{value:new Headers(g)}),b},e}({});Object.defineProperty(window.__TAURI__,"http",{value:__TAURI_PLUGIN_HTTP__})} +if("__TAURI__"in window){var __TAURI_PLUGIN_HTTP__=function(e){"use strict";function t(e,t,r,n){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)}function r(e,t,r,n,s){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return t.set(e,r),r}var n,s,a;"function"==typeof SuppressedError&&SuppressedError;const i="__TAURI_TO_IPC_KEY__";class o{constructor(){this.__TAURI_CHANNEL_MARKER__=!0,n.set(this,(()=>{})),s.set(this,0),a.set(this,[]),this.id=function(e,t=!1){return window.__TAURI_INTERNALS__.transformCallback(e,t)}((({message:e,id:i})=>{if(i==t(this,s,"f"))for(t(this,n,"f").call(this,e),r(this,s,t(this,s,"f")+1);t(this,s,"f")in t(this,a,"f");){const e=t(this,a,"f")[t(this,s,"f")];t(this,n,"f").call(this,e),delete t(this,a,"f")[t(this,s,"f")],r(this,s,t(this,s,"f")+1)}else t(this,a,"f")[i]=e}))}set onmessage(e){r(this,n,e)}get onmessage(){return t(this,n,"f")}[(n=new WeakMap,s=new WeakMap,a=new WeakMap,i)](){return`__CHANNEL__:${this.id}`}toJSON(){return this[i]()}}async function c(e,t={},r){return window.__TAURI_INTERNALS__.invoke(e,t,r)}const d="Request cancelled";return e.fetch=async function(e,t){const r=t?.signal;if(r?.aborted)throw new Error(d);const n=t?.maxRedirections,s=t?.connectTimeout,a=t?.proxy,i=t?.danger;t&&(delete t.maxRedirections,delete t.connectTimeout,delete t.proxy,delete t.danger);const h=t?.headers?t.headers instanceof Headers?t.headers:new Headers(t.headers):new Headers,f=new Request(e,t),_=await f.arrayBuffer(),u=0!==_.byteLength?Array.from(new Uint8Array(_)):null;for(const[e,t]of f.headers)h.get(e)||h.set(e,t);const l=(h instanceof Headers?Array.from(h.entries()):Array.isArray(h)?h:Object.entries(h)).map((([e,t])=>[e,"string"==typeof t?t:t.toString()]));if(r?.aborted)throw new Error(d);const w=await c("plugin:http|fetch",{clientConfig:{method:f.method,url:f.url,headers:l,data:u,maxRedirections:n,connectTimeout:s,proxy:a,danger:i}}),p=()=>c("plugin:http|fetch_cancel",{rid:w});if(r?.aborted)throw p(),new Error(d);r?.addEventListener("abort",(()=>{p()}));const{status:y,statusText:m,url:T,headers:g,rid:b}=await c("plugin:http|fetch_send",{rid:w}),A=new ReadableStream({start:e=>{const t=new o;t.onmessage=t=>{if(r?.aborted)return void e.error(d);const n=new Uint8Array(t),s=n[n.byteLength-1],a=n.slice(0,n.byteLength-1);1!=s?e.enqueue(a):e.close()},c("plugin:http|fetch_read_body",{rid:b,streamChannel:t}).catch((t=>{e.error(t)}))}}),R=new Response(A,{status:y,statusText:m});return Object.defineProperty(R,"url",{value:T}),Object.defineProperty(R,"headers",{value:new Headers(g)}),R},e}({});Object.defineProperty(window.__TAURI__,"http",{value:__TAURI_PLUGIN_HTTP__})} diff --git a/plugins/http/guest-js/index.ts b/plugins/http/guest-js/index.ts index 4c33f072..62f4916c 100644 --- a/plugins/http/guest-js/index.ts +++ b/plugins/http/guest-js/index.ts @@ -239,19 +239,17 @@ export async function fetch( return } - // close when the signal to close (an empty chunk) - // is sent from the IPC. - if ( - res instanceof ArrayBuffer ? res.byteLength == 0 : res.length == 0 - ) { + const resUint8 = new Uint8Array(res) + const lastByte = resUint8[resUint8.byteLength - 1] + const actualRes = resUint8.slice(0, resUint8.byteLength - 1) + + // close when the signal to close (last byte is 1) is sent from the IPC. + if (lastByte == 1) { controller.close() return } - // the content conversion (like .text(), .json(), etc.) in Response - // must have Uint8Array as its content, else it will - // have untraceable error that's hard to debug. - controller.enqueue(new Uint8Array(res)) + controller.enqueue(actualRes) } // run a non-blocking body stream fetch @@ -269,12 +267,11 @@ export async function fetch( statusText }) - // url and headers are read only properties - // but seems like we can set them like this + // Set `Response` properties that are ignored by the + // constructor, like url and some headers // - // we define theme like this, because using `Response` - // constructor, it removes url and some headers - // like `set-cookie` headers + // Since url and headers are read only properties + // this is the only way to set them. Object.defineProperty(res, 'url', { value: url }) Object.defineProperty(res, 'headers', { value: new Headers(responseHeaders) diff --git a/plugins/http/src/commands.rs b/plugins/http/src/commands.rs index 18953121..bb47444e 100644 --- a/plugins/http/src/commands.rs +++ b/plugins/http/src/commands.rs @@ -426,11 +426,14 @@ pub async fn fetch_read_body( // send response through IPC channel while let Some(chunk) = res.chunk().await? { - stream_channel.send(tauri::ipc::InvokeResponseBody::Raw(chunk.to_vec()))?; + let mut chunk = chunk.to_vec(); + // append 0 to indicate we are not done yet + chunk.push(0); + stream_channel.send(tauri::ipc::InvokeResponseBody::Raw(chunk))?; } - // send empty vector when done - stream_channel.send(tauri::ipc::InvokeResponseBody::Raw(Vec::new()))?; + // send 1 to indicate we are done + stream_channel.send(tauri::ipc::InvokeResponseBody::Raw(vec![1]))?; Ok(()) } From 12c4537b8e4fed29b415ff817434b664c0596dac Mon Sep 17 00:00:00 2001 From: Lucas Fernandes Nogueira Date: Sun, 16 Mar 2025 21:42:37 -0300 Subject: [PATCH 49/80] feat(updater): add support to riscv64 architecture (#2541) Tauri now supports it, so the updater should check the riscv64 arch and replace the {{arch}} and {{target}} variables properly. ref https://github.com/tauri-apps/tauri/pull/12602/ --- .changes/updater-riscv64.md | 6 ++++++ plugins/updater/src/updater.rs | 2 ++ 2 files changed, 8 insertions(+) create mode 100644 .changes/updater-riscv64.md diff --git a/.changes/updater-riscv64.md b/.changes/updater-riscv64.md new file mode 100644 index 00000000..76d7d00d --- /dev/null +++ b/.changes/updater-riscv64.md @@ -0,0 +1,6 @@ +--- +"updater": patch +"updater-js": patch +--- + +Add support to the `riscv64` architecture. diff --git a/plugins/updater/src/updater.rs b/plugins/updater/src/updater.rs index 65c91749..1ae2cfe9 100644 --- a/plugins/updater/src/updater.rs +++ b/plugins/updater/src/updater.rs @@ -1223,6 +1223,8 @@ pub(crate) fn get_updater_arch() -> Option<&'static str> { Some("armv7") } else if cfg!(target_arch = "aarch64") { Some("aarch64") + } else if cfg!(target_arch = "riscv64") { + Some("riscv64") } else { None } From 4bbcdbd5561fc674cfc1d13f147276c8626c1a9c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 16 Mar 2025 21:51:48 -0300 Subject: [PATCH 50/80] publish new versions (#2542) --- .changes/http-controller-multiple-close.md | 7 ------- .changes/updater-riscv64.md | 6 ------ Cargo.lock | 6 +++--- examples/api/CHANGELOG.md | 7 +++++++ examples/api/package.json | 6 +++--- examples/api/src-tauri/CHANGELOG.md | 7 +++++++ examples/api/src-tauri/Cargo.toml | 6 +++--- plugins/http/CHANGELOG.md | 4 ++++ plugins/http/Cargo.toml | 2 +- plugins/http/package.json | 2 +- plugins/updater/CHANGELOG.md | 4 ++++ plugins/updater/Cargo.toml | 2 +- plugins/updater/package.json | 2 +- pnpm-lock.yaml | 4 ++-- 14 files changed, 37 insertions(+), 28 deletions(-) delete mode 100644 .changes/http-controller-multiple-close.md delete mode 100644 .changes/updater-riscv64.md diff --git a/.changes/http-controller-multiple-close.md b/.changes/http-controller-multiple-close.md deleted file mode 100644 index bec342b1..00000000 --- a/.changes/http-controller-multiple-close.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"http": "patch" -"http-js": "patch" ---- - -Fix `fetch` occasionally throwing an error due to trying to close the underline stream twice. - diff --git a/.changes/updater-riscv64.md b/.changes/updater-riscv64.md deleted file mode 100644 index 76d7d00d..00000000 --- a/.changes/updater-riscv64.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"updater": patch -"updater-js": patch ---- - -Add support to the `riscv64` architecture. diff --git a/Cargo.lock b/Cargo.lock index 77b0d2c7..605d15fc 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -206,7 +206,7 @@ checksum = "4c95c10ba0b00a02636238b814946408b1322d5ac4760326e6fb8ec956d85775" [[package]] name = "api" -version = "2.0.22" +version = "2.0.23" dependencies = [ "log", "serde", @@ -6705,7 +6705,7 @@ dependencies = [ [[package]] name = "tauri-plugin-http" -version = "2.4.1" +version = "2.4.2" dependencies = [ "data-url", "http", @@ -6951,7 +6951,7 @@ dependencies = [ [[package]] name = "tauri-plugin-updater" -version = "2.6.0" +version = "2.6.1" dependencies = [ "base64 0.22.1", "dirs 6.0.0", diff --git a/examples/api/CHANGELOG.md b/examples/api/CHANGELOG.md index e09692f2..3797e923 100644 --- a/examples/api/CHANGELOG.md +++ b/examples/api/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## \[2.0.19] + +### Dependencies + +- Upgraded to `http-js@2.4.2` +- Upgraded to `updater-js@2.6.1` + ## \[2.0.18] ### Dependencies diff --git a/examples/api/package.json b/examples/api/package.json index 3e2c5237..b04e3a40 100644 --- a/examples/api/package.json +++ b/examples/api/package.json @@ -1,7 +1,7 @@ { "name": "api", "private": true, - "version": "2.0.18", + "version": "2.0.19", "type": "module", "scripts": { "dev": "vite --clearScreen false", @@ -20,7 +20,7 @@ "@tauri-apps/plugin-geolocation": "^2.2.0", "@tauri-apps/plugin-global-shortcut": "^2.2.0", "@tauri-apps/plugin-haptics": "^2.2.0", - "@tauri-apps/plugin-http": "^2.4.1", + "@tauri-apps/plugin-http": "^2.4.2", "@tauri-apps/plugin-nfc": "^2.2.0", "@tauri-apps/plugin-notification": "^2.2.2", "@tauri-apps/plugin-opener": "^2.2.6", @@ -28,7 +28,7 @@ "@tauri-apps/plugin-process": "^2.2.0", "@tauri-apps/plugin-shell": "^2.2.0", "@tauri-apps/plugin-store": "^2.2.0", - "@tauri-apps/plugin-updater": "^2.6.0", + "@tauri-apps/plugin-updater": "^2.6.1", "@zerodevx/svelte-json-view": "1.0.11" }, "devDependencies": { diff --git a/examples/api/src-tauri/CHANGELOG.md b/examples/api/src-tauri/CHANGELOG.md index e735a65c..970732d4 100644 --- a/examples/api/src-tauri/CHANGELOG.md +++ b/examples/api/src-tauri/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## \[2.0.23] + +### Dependencies + +- Upgraded to `http@2.4.2` +- Upgraded to `updater@2.6.1` + ## \[2.0.22] ### Dependencies diff --git a/examples/api/src-tauri/Cargo.toml b/examples/api/src-tauri/Cargo.toml index 3cc99d89..eeee7794 100644 --- a/examples/api/src-tauri/Cargo.toml +++ b/examples/api/src-tauri/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "api" publish = false -version = "2.0.22" +version = "2.0.23" description = "An example Tauri Application showcasing the api" edition = "2021" rust-version = { workspace = true } @@ -27,7 +27,7 @@ tauri-plugin-clipboard-manager = { path = "../../../plugins/clipboard-manager", tauri-plugin-dialog = { path = "../../../plugins/dialog", version = "2.2.0" } tauri-plugin-http = { path = "../../../plugins/http", features = [ "multipart", -], version = "2.4.1" } +], version = "2.4.2" } tauri-plugin-notification = { path = "../../../plugins/notification", version = "2.2.2", features = [ "windows7-compat", ] } @@ -53,7 +53,7 @@ features = [ [target."cfg(any(target_os = \"macos\", windows, target_os = \"linux\", target_os = \"dragonfly\", target_os = \"freebsd\", target_os = \"openbsd\", target_os = \"netbsd\"))".dependencies] tauri-plugin-cli = { path = "../../../plugins/cli", version = "2.2.0" } tauri-plugin-global-shortcut = { path = "../../../plugins/global-shortcut", version = "2.2.0" } -tauri-plugin-updater = { path = "../../../plugins/updater", version = "2.6.0" } +tauri-plugin-updater = { path = "../../../plugins/updater", version = "2.6.1" } tauri-plugin-window-state = { path = "../../../plugins/window-state", version = "2.2.0" } [target."cfg(any(target_os = \"android\", target_os = \"ios\"))".dependencies] diff --git a/plugins/http/CHANGELOG.md b/plugins/http/CHANGELOG.md index 628f4715..22e7a07c 100644 --- a/plugins/http/CHANGELOG.md +++ b/plugins/http/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## \[2.4.2] + +- [`a15eedf3`](https://github.com/tauri-apps/plugins-workspace/commit/a15eedf37854344f7ffbcb0d373d848563817011) ([#2535](https://github.com/tauri-apps/plugins-workspace/pull/2535) by [@amrbashir](https://github.com/tauri-apps/plugins-workspace/../../amrbashir)) Fix `fetch` occasionally throwing an error due to trying to close the underline stream twice. + ## \[2.4.1] - [`d3183aa9`](https://github.com/tauri-apps/plugins-workspace/commit/d3183aa99da7ca67e627394132ddeb3b85ccef06) ([#2522](https://github.com/tauri-apps/plugins-workspace/pull/2522) by [@adrieljss](https://github.com/tauri-apps/plugins-workspace/../../adrieljss)) Fix `fetch` blocking until the whole response is read even if it was a streaming response. diff --git a/plugins/http/Cargo.toml b/plugins/http/Cargo.toml index 707c334d..b9676e34 100644 --- a/plugins/http/Cargo.toml +++ b/plugins/http/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-http" -version = "2.4.1" +version = "2.4.2" description = "Access an HTTP client written in Rust." edition = { workspace = true } authors = { workspace = true } diff --git a/plugins/http/package.json b/plugins/http/package.json index 2c4ba838..3cd87295 100644 --- a/plugins/http/package.json +++ b/plugins/http/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-http", - "version": "2.4.1", + "version": "2.4.2", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/plugins/updater/CHANGELOG.md b/plugins/updater/CHANGELOG.md index 84b4eb84..c196b04a 100644 --- a/plugins/updater/CHANGELOG.md +++ b/plugins/updater/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## \[2.6.1] + +- [`12c4537b`](https://github.com/tauri-apps/plugins-workspace/commit/12c4537b8e4fed29b415ff817434b664c0596dac) ([#2541](https://github.com/tauri-apps/plugins-workspace/pull/2541) by [@lucasfernog](https://github.com/tauri-apps/plugins-workspace/../../lucasfernog)) Add support to the `riscv64` architecture. + ## \[2.6.0] - [`faefcc9f`](https://github.com/tauri-apps/plugins-workspace/commit/faefcc9fd8c61f709d491649e255a7fcac82c09a) ([#2430](https://github.com/tauri-apps/plugins-workspace/pull/2430) by [@goenning](https://github.com/tauri-apps/plugins-workspace/../../goenning)) Add `UpdaterBuilder::configure_client` method on Rust side, to configure the `reqwest` client used to check and download the update. diff --git a/plugins/updater/Cargo.toml b/plugins/updater/Cargo.toml index c8799f59..322c4728 100644 --- a/plugins/updater/Cargo.toml +++ b/plugins/updater/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-updater" -version = "2.6.0" +version = "2.6.1" description = "In-app updates for Tauri applications." edition = { workspace = true } authors = { workspace = true } diff --git a/plugins/updater/package.json b/plugins/updater/package.json index 25e23039..a5147145 100644 --- a/plugins/updater/package.json +++ b/plugins/updater/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-updater", - "version": "2.6.0", + "version": "2.6.1", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 55eedd4e..61aa2a84 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -84,7 +84,7 @@ importers: specifier: ^2.2.0 version: link:../../plugins/haptics '@tauri-apps/plugin-http': - specifier: ^2.4.1 + specifier: ^2.4.2 version: link:../../plugins/http '@tauri-apps/plugin-nfc': specifier: ^2.2.0 @@ -108,7 +108,7 @@ importers: specifier: ^2.2.0 version: link:../../plugins/store '@tauri-apps/plugin-updater': - specifier: ^2.6.0 + specifier: ^2.6.1 version: link:../../plugins/updater '@zerodevx/svelte-json-view': specifier: 1.0.11 From 9ebbfb2e3ccef8e0f277a0c02fe6b399b41feeb6 Mon Sep 17 00:00:00 2001 From: Amr Bashir Date: Mon, 17 Mar 2025 12:26:42 +0200 Subject: [PATCH 51/80] feat(http): persist cookies on disk (#1978) * enhance(http): persist cookies on disk closes tauri-apps/tauri#11518 * clippy * inline reqwest_cookie_store to fix clippy * clippy * Update .changes/persist-cookies.md * Update plugins/http/src/reqwest_cookie_store.rs * update example * fallback to empty store if failed to load * fix example * persist cookies immediately * clone * lint * .cookies filename * prevent race condition --------- Co-authored-by: Lucas Nogueira --- .changes/persist-cookies.md | 7 ++ Cargo.lock | 3 + examples/api/src-tauri/Cargo.toml | 2 + examples/api/src-tauri/src/lib.rs | 21 +++- plugins/http/Cargo.toml | 4 +- plugins/http/src/lib.rs | 51 ++++++++- plugins/http/src/reqwest_cookie_store.rs | 133 +++++++++++++++++++++++ 7 files changed, 217 insertions(+), 4 deletions(-) create mode 100644 .changes/persist-cookies.md create mode 100644 plugins/http/src/reqwest_cookie_store.rs diff --git a/.changes/persist-cookies.md b/.changes/persist-cookies.md new file mode 100644 index 00000000..7160fb7b --- /dev/null +++ b/.changes/persist-cookies.md @@ -0,0 +1,7 @@ +--- +"http": "patch" +"http-js": "patch" +--- + +Persist cookies to disk and load it on next app start. + diff --git a/Cargo.lock b/Cargo.lock index 605d15fc..51dab43b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -233,6 +233,7 @@ dependencies = [ "tauri-plugin-store", "tauri-plugin-updater", "tauri-plugin-window-state", + "time", "tiny_http", ] @@ -6707,6 +6708,8 @@ dependencies = [ name = "tauri-plugin-http" version = "2.4.2" dependencies = [ + "bytes", + "cookie_store", "data-url", "http", "regex", diff --git a/examples/api/src-tauri/Cargo.toml b/examples/api/src-tauri/Cargo.toml index eeee7794..acd0f87e 100644 --- a/examples/api/src-tauri/Cargo.toml +++ b/examples/api/src-tauri/Cargo.toml @@ -18,6 +18,7 @@ tauri-build = { workspace = true, features = ["codegen", "isolation"] } serde_json = { workspace = true } serde = { workspace = true } tiny_http = "0.12" +time = "0.3" log = { workspace = true } tauri-plugin-log = { path = "../../../plugins/log", version = "2.3.1" } tauri-plugin-fs = { path = "../../../plugins/fs", version = "2.2.0", features = [ @@ -27,6 +28,7 @@ tauri-plugin-clipboard-manager = { path = "../../../plugins/clipboard-manager", tauri-plugin-dialog = { path = "../../../plugins/dialog", version = "2.2.0" } tauri-plugin-http = { path = "../../../plugins/http", features = [ "multipart", + "cookies", ], version = "2.4.2" } tauri-plugin-notification = { path = "../../../plugins/notification", version = "2.2.2", features = [ "windows7-compat", diff --git a/examples/api/src-tauri/src/lib.rs b/examples/api/src-tauri/src/lib.rs index dc133799..a19992b0 100644 --- a/examples/api/src-tauri/src/lib.rs +++ b/examples/api/src-tauri/src/lib.rs @@ -102,9 +102,28 @@ pub fn run() { if let Ok(mut request) = server.recv() { let mut body = Vec::new(); let _ = request.as_reader().read_to_end(&mut body); + let mut headers = request.headers().to_vec(); + + if !headers.iter().any(|header| header.field == tiny_http::HeaderField::from_bytes(b"Cookie").unwrap()) { + let expires = time::OffsetDateTime::now_utc() + time::Duration::days(1); + // RFC 1123 format + let format = time::macros::format_description!( + "[weekday repr:short], [day] [month repr:short] [year] [hour]:[minute]:[second] GMT" + ); + let expires_str = expires.format(format).unwrap(); + headers.push( + tiny_http::Header::from_bytes( + &b"Set-Cookie"[..], + format!("session-token=test-value; Secure; Path=/; Expires={expires_str}") + .as_bytes(), + ) + .unwrap(), + ); + } + let response = tiny_http::Response::new( tiny_http::StatusCode(200), - request.headers().to_vec(), + headers, std::io::Cursor::new(body), request.body_length(), None, diff --git a/plugins/http/Cargo.toml b/plugins/http/Cargo.toml index b9676e34..d3a78a23 100644 --- a/plugins/http/Cargo.toml +++ b/plugins/http/Cargo.toml @@ -41,6 +41,8 @@ http = "1" reqwest = { version = "0.12", default-features = false } url = { workspace = true } data-url = "0.3" +cookie_store = { version = "0.21.1", optional = true, features = ["serde"] } +bytes = { version = "1.9", optional = true } tracing = { workspace = true, optional = true } [features] @@ -62,7 +64,7 @@ rustls-tls-manual-roots = ["reqwest/rustls-tls-manual-roots"] rustls-tls-webpki-roots = ["reqwest/rustls-tls-webpki-roots"] rustls-tls-native-roots = ["reqwest/rustls-tls-native-roots"] blocking = ["reqwest/blocking"] -cookies = ["reqwest/cookies"] +cookies = ["reqwest/cookies", "dep:cookie_store", "dep:bytes"] gzip = ["reqwest/gzip"] brotli = ["reqwest/brotli"] deflate = ["reqwest/deflate"] diff --git a/plugins/http/src/lib.rs b/plugins/http/src/lib.rs index 65829e09..5acc2b47 100644 --- a/plugins/http/src/lib.rs +++ b/plugins/http/src/lib.rs @@ -14,25 +14,72 @@ pub use error::{Error, Result}; mod commands; mod error; +#[cfg(feature = "cookies")] +mod reqwest_cookie_store; mod scope; +#[cfg(feature = "cookies")] +const COOKIES_FILENAME: &str = ".cookies"; + pub(crate) struct Http { #[cfg(feature = "cookies")] - cookies_jar: std::sync::Arc, + cookies_jar: std::sync::Arc, } pub fn init() -> TauriPlugin { Builder::::new("http") .setup(|app, _| { + #[cfg(feature = "cookies")] + let cookies_jar = { + use crate::reqwest_cookie_store::*; + use std::fs::File; + use std::io::BufReader; + + let cache_dir = app.path().app_cache_dir()?; + std::fs::create_dir_all(&cache_dir)?; + + let path = cache_dir.join(COOKIES_FILENAME); + let file = File::options() + .create(true) + .append(true) + .read(true) + .open(&path)?; + + let reader = BufReader::new(file); + CookieStoreMutex::load(path.clone(), reader).unwrap_or_else(|_e| { + #[cfg(feature = "tracing")] + tracing::warn!( + "failed to load cookie store: {_e}, falling back to empty store" + ); + CookieStoreMutex::new(path, Default::default()) + }) + }; + let state = Http { #[cfg(feature = "cookies")] - cookies_jar: std::sync::Arc::new(reqwest::cookie::Jar::default()), + cookies_jar: std::sync::Arc::new(cookies_jar), }; app.manage(state); Ok(()) }) + .on_event(|app, event| { + #[cfg(feature = "cookies")] + if let tauri::RunEvent::Exit = event { + let state = app.state::(); + + match state.cookies_jar.request_save() { + Ok(rx) => { + let _ = rx.recv(); + } + Err(_e) => { + #[cfg(feature = "tracing")] + tracing::error!("failed to save cookie jar: {_e}"); + } + } + } + }) .invoke_handler(tauri::generate_handler![ commands::fetch, commands::fetch_cancel, diff --git a/plugins/http/src/reqwest_cookie_store.rs b/plugins/http/src/reqwest_cookie_store.rs new file mode 100644 index 00000000..6a7c0186 --- /dev/null +++ b/plugins/http/src/reqwest_cookie_store.rs @@ -0,0 +1,133 @@ +// Copyright 2019-2023 Tauri Programme within The Commons Conservancy +// SPDX-License-Identifier: Apache-2.0 +// SPDX-License-Identifier: MIT + +// taken from https://github.com/pfernie/reqwest_cookie_store/blob/2ec4afabcd55e24d3afe3f0626ee6dc97bed938d/src/lib.rs + +use std::{ + path::PathBuf, + sync::{mpsc::Receiver, Mutex}, +}; + +use cookie_store::{CookieStore, RawCookie, RawCookieParseError}; +use reqwest::header::HeaderValue; + +fn set_cookies( + cookie_store: &mut CookieStore, + cookie_headers: &mut dyn Iterator, + url: &url::Url, +) { + let cookies = cookie_headers.filter_map(|val| { + std::str::from_utf8(val.as_bytes()) + .map_err(RawCookieParseError::from) + .and_then(RawCookie::parse) + .map(|c| c.into_owned()) + .ok() + }); + cookie_store.store_response_cookies(cookies, url); +} + +fn cookies(cookie_store: &CookieStore, url: &url::Url) -> Option { + let s = cookie_store + .get_request_values(url) + .map(|(name, value)| format!("{}={}", name, value)) + .collect::>() + .join("; "); + + if s.is_empty() { + return None; + } + + HeaderValue::from_maybe_shared(bytes::Bytes::from(s)).ok() +} + +/// A [`cookie_store::CookieStore`] wrapped internally by a [`std::sync::Mutex`], suitable for use in +/// async/concurrent contexts. +#[derive(Debug)] +pub struct CookieStoreMutex { + pub path: PathBuf, + store: Mutex, + save_task: Mutex>, +} + +impl CookieStoreMutex { + /// Create a new [`CookieStoreMutex`] from an existing [`cookie_store::CookieStore`]. + pub fn new(path: PathBuf, cookie_store: CookieStore) -> CookieStoreMutex { + CookieStoreMutex { + path, + store: Mutex::new(cookie_store), + save_task: Default::default(), + } + } + + pub fn load( + path: PathBuf, + reader: R, + ) -> cookie_store::Result { + cookie_store::serde::load(reader, |c| serde_json::from_str(c)) + .map(|store| CookieStoreMutex::new(path, store)) + } + + fn cookies_to_str(&self) -> Result { + let mut cookies = Vec::new(); + for cookie in self + .store + .lock() + .expect("poisoned cookie jar mutex") + .iter_unexpired() + { + if cookie.is_persistent() { + cookies.push(cookie.clone()); + } + } + serde_json::to_string(&cookies) + } + + pub fn request_save(&self) -> cookie_store::Result> { + let cookie_str = self.cookies_to_str()?; + let path = self.path.clone(); + let (tx, rx) = std::sync::mpsc::channel(); + let task = tauri::async_runtime::spawn(async move { + match tokio::fs::write(&path, &cookie_str).await { + Ok(()) => { + let _ = tx.send(()); + } + Err(_e) => { + #[cfg(feature = "tracing")] + tracing::error!("failed to save cookie jar: {_e}"); + } + } + }); + self.save_task + .lock() + .unwrap() + .replace(CancellableTask(task)); + Ok(rx) + } +} + +impl reqwest::cookie::CookieStore for CookieStoreMutex { + fn set_cookies(&self, cookie_headers: &mut dyn Iterator, url: &url::Url) { + set_cookies(&mut self.store.lock().unwrap(), cookie_headers, url); + + // try to persist cookies immediately asynchronously + if let Err(_e) = self.request_save() { + #[cfg(feature = "tracing")] + tracing::error!("failed to save cookie jar: {_e}"); + } + } + + fn cookies(&self, url: &url::Url) -> Option { + let store = self.store.lock().unwrap(); + cookies(&store, url) + } +} + +#[derive(Debug)] +struct CancellableTask(tauri::async_runtime::JoinHandle<()>); + +impl Drop for CancellableTask { + fn drop(&mut self) { + self.0.abort(); + } +} From 8c540d54a10527f71d429940afe0c4e8f87278a9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 17 Mar 2025 19:35:52 +0800 Subject: [PATCH 52/80] chore(deps): update dependency rollup to v4.36.0 (#2543) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 190 ++++++++++++++++++++++++------------------------- 2 files changed, 96 insertions(+), 96 deletions(-) diff --git a/package.json b/package.json index 34889a0e..8eb15ae9 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "eslint-config-prettier": "10.1.1", "eslint-plugin-security": "3.0.1", "prettier": "3.5.3", - "rollup": "4.35.0", + "rollup": "4.36.0", "tslib": "2.8.1", "typescript": "5.8.2", "typescript-eslint": "8.26.1" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 61aa2a84..333fd8ed 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -16,13 +16,13 @@ importers: version: 9.22.0 '@rollup/plugin-node-resolve': specifier: 16.0.1 - version: 16.0.1(rollup@4.35.0) + version: 16.0.1(rollup@4.36.0) '@rollup/plugin-terser': specifier: 0.4.4 - version: 0.4.4(rollup@4.35.0) + version: 0.4.4(rollup@4.36.0) '@rollup/plugin-typescript': specifier: 12.1.2 - version: 12.1.2(rollup@4.35.0)(tslib@2.8.1)(typescript@5.8.2) + version: 12.1.2(rollup@4.36.0)(tslib@2.8.1)(typescript@5.8.2) covector: specifier: ^0.12.4 version: 0.12.4(mocha@10.8.2) @@ -39,8 +39,8 @@ importers: specifier: 3.5.3 version: 3.5.3 rollup: - specifier: 4.35.0 - version: 4.35.0 + specifier: 4.36.0 + version: 4.36.0 tslib: specifier: 2.8.1 version: 2.8.1 @@ -739,98 +739,98 @@ packages: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.35.0': - resolution: {integrity: sha512-uYQ2WfPaqz5QtVgMxfN6NpLD+no0MYHDBywl7itPYd3K5TjjSghNKmX8ic9S8NU8w81NVhJv/XojcHptRly7qQ==} + '@rollup/rollup-android-arm-eabi@4.36.0': + resolution: {integrity: sha512-jgrXjjcEwN6XpZXL0HUeOVGfjXhPyxAbbhD0BlXUB+abTOpbPiN5Wb3kOT7yb+uEtATNYF5x5gIfwutmuBA26w==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.35.0': - resolution: {integrity: sha512-FtKddj9XZudurLhdJnBl9fl6BwCJ3ky8riCXjEw3/UIbjmIY58ppWwPEvU3fNu+W7FUsAsB1CdH+7EQE6CXAPA==} + '@rollup/rollup-android-arm64@4.36.0': + resolution: {integrity: sha512-NyfuLvdPdNUfUNeYKUwPwKsE5SXa2J6bCt2LdB/N+AxShnkpiczi3tcLJrm5mA+eqpy0HmaIY9F6XCa32N5yzg==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.35.0': - resolution: {integrity: sha512-Uk+GjOJR6CY844/q6r5DR/6lkPFOw0hjfOIzVx22THJXMxktXG6CbejseJFznU8vHcEBLpiXKY3/6xc+cBm65Q==} + '@rollup/rollup-darwin-arm64@4.36.0': + resolution: {integrity: sha512-JQ1Jk5G4bGrD4pWJQzWsD8I1n1mgPXq33+/vP4sk8j/z/C2siRuxZtaUA7yMTf71TCZTZl/4e1bfzwUmFb3+rw==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.35.0': - resolution: {integrity: sha512-3IrHjfAS6Vkp+5bISNQnPogRAW5GAV1n+bNCrDwXmfMHbPl5EhTmWtfmwlJxFRUCBZ+tZ/OxDyU08aF6NI/N5Q==} + '@rollup/rollup-darwin-x64@4.36.0': + resolution: {integrity: sha512-6c6wMZa1lrtiRsbDziCmjE53YbTkxMYhhnWnSW8R/yqsM7a6mSJ3uAVT0t8Y/DGt7gxUWYuFM4bwWk9XCJrFKA==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.35.0': - resolution: {integrity: sha512-sxjoD/6F9cDLSELuLNnY0fOrM9WA0KrM0vWm57XhrIMf5FGiN8D0l7fn+bpUeBSU7dCgPV2oX4zHAsAXyHFGcQ==} + '@rollup/rollup-freebsd-arm64@4.36.0': + resolution: {integrity: sha512-KXVsijKeJXOl8QzXTsA+sHVDsFOmMCdBRgFmBb+mfEb/7geR7+C8ypAml4fquUt14ZyVXaw2o1FWhqAfOvA4sg==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.35.0': - resolution: {integrity: sha512-2mpHCeRuD1u/2kruUiHSsnjWtHjqVbzhBkNVQ1aVD63CcexKVcQGwJ2g5VphOd84GvxfSvnnlEyBtQCE5hxVVw==} + '@rollup/rollup-freebsd-x64@4.36.0': + resolution: {integrity: sha512-dVeWq1ebbvByI+ndz4IJcD4a09RJgRYmLccwlQ8bPd4olz3Y213uf1iwvc7ZaxNn2ab7bjc08PrtBgMu6nb4pQ==} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.35.0': - resolution: {integrity: sha512-mrA0v3QMy6ZSvEuLs0dMxcO2LnaCONs1Z73GUDBHWbY8tFFocM6yl7YyMu7rz4zS81NDSqhrUuolyZXGi8TEqg==} + '@rollup/rollup-linux-arm-gnueabihf@4.36.0': + resolution: {integrity: sha512-bvXVU42mOVcF4le6XSjscdXjqx8okv4n5vmwgzcmtvFdifQ5U4dXFYaCB87namDRKlUL9ybVtLQ9ztnawaSzvg==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.35.0': - resolution: {integrity: sha512-DnYhhzcvTAKNexIql8pFajr0PiDGrIsBYPRvCKlA5ixSS3uwo/CWNZxB09jhIapEIg945KOzcYEAGGSmTSpk7A==} + '@rollup/rollup-linux-arm-musleabihf@4.36.0': + resolution: {integrity: sha512-JFIQrDJYrxOnyDQGYkqnNBtjDwTgbasdbUiQvcU8JmGDfValfH1lNpng+4FWlhaVIR4KPkeddYjsVVbmJYvDcg==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.35.0': - resolution: {integrity: sha512-uagpnH2M2g2b5iLsCTZ35CL1FgyuzzJQ8L9VtlJ+FckBXroTwNOaD0z0/UF+k5K3aNQjbm8LIVpxykUOQt1m/A==} + '@rollup/rollup-linux-arm64-gnu@4.36.0': + resolution: {integrity: sha512-KqjYVh3oM1bj//5X7k79PSCZ6CvaVzb7Qs7VMWS+SlWB5M8p3FqufLP9VNp4CazJ0CsPDLwVD9r3vX7Ci4J56A==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.35.0': - resolution: {integrity: sha512-XQxVOCd6VJeHQA/7YcqyV0/88N6ysSVzRjJ9I9UA/xXpEsjvAgDTgH3wQYz5bmr7SPtVK2TsP2fQ2N9L4ukoUg==} + '@rollup/rollup-linux-arm64-musl@4.36.0': + resolution: {integrity: sha512-QiGnhScND+mAAtfHqeT+cB1S9yFnNQ/EwCg5yE3MzoaZZnIV0RV9O5alJAoJKX/sBONVKeZdMfO8QSaWEygMhw==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-loongarch64-gnu@4.35.0': - resolution: {integrity: sha512-5pMT5PzfgwcXEwOaSrqVsz/LvjDZt+vQ8RT/70yhPU06PTuq8WaHhfT1LW+cdD7mW6i/J5/XIkX/1tCAkh1W6g==} + '@rollup/rollup-linux-loongarch64-gnu@4.36.0': + resolution: {integrity: sha512-1ZPyEDWF8phd4FQtTzMh8FQwqzvIjLsl6/84gzUxnMNFBtExBtpL51H67mV9xipuxl1AEAerRBgBwFNpkw8+Lg==} cpu: [loong64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.35.0': - resolution: {integrity: sha512-c+zkcvbhbXF98f4CtEIP1EBA/lCic5xB0lToneZYvMeKu5Kamq3O8gqrxiYYLzlZH6E3Aq+TSW86E4ay8iD8EA==} + '@rollup/rollup-linux-powerpc64le-gnu@4.36.0': + resolution: {integrity: sha512-VMPMEIUpPFKpPI9GZMhJrtu8rxnp6mJR3ZzQPykq4xc2GmdHj3Q4cA+7avMyegXy4n1v+Qynr9fR88BmyO74tg==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.35.0': - resolution: {integrity: sha512-s91fuAHdOwH/Tad2tzTtPX7UZyytHIRR6V4+2IGlV0Cej5rkG0R61SX4l4y9sh0JBibMiploZx3oHKPnQBKe4g==} + '@rollup/rollup-linux-riscv64-gnu@4.36.0': + resolution: {integrity: sha512-ttE6ayb/kHwNRJGYLpuAvB7SMtOeQnVXEIpMtAvx3kepFQeowVED0n1K9nAdraHUPJ5hydEMxBpIR7o4nrm8uA==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.35.0': - resolution: {integrity: sha512-hQRkPQPLYJZYGP+Hj4fR9dDBMIM7zrzJDWFEMPdTnTy95Ljnv0/4w/ixFw3pTBMEuuEuoqtBINYND4M7ujcuQw==} + '@rollup/rollup-linux-s390x-gnu@4.36.0': + resolution: {integrity: sha512-4a5gf2jpS0AIe7uBjxDeUMNcFmaRTbNv7NxI5xOCs4lhzsVyGR/0qBXduPnoWf6dGC365saTiwag8hP1imTgag==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.35.0': - resolution: {integrity: sha512-Pim1T8rXOri+0HmV4CdKSGrqcBWX0d1HoPnQ0uw0bdp1aP5SdQVNBy8LjYncvnLgu3fnnCt17xjWGd4cqh8/hA==} + '@rollup/rollup-linux-x64-gnu@4.36.0': + resolution: {integrity: sha512-5KtoW8UWmwFKQ96aQL3LlRXX16IMwyzMq/jSSVIIyAANiE1doaQsx/KRyhAvpHlPjPiSU/AYX/8m+lQ9VToxFQ==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.35.0': - resolution: {integrity: sha512-QysqXzYiDvQWfUiTm8XmJNO2zm9yC9P/2Gkrwg2dH9cxotQzunBHYr6jk4SujCTqnfGxduOmQcI7c2ryuW8XVg==} + '@rollup/rollup-linux-x64-musl@4.36.0': + resolution: {integrity: sha512-sycrYZPrv2ag4OCvaN5js+f01eoZ2U+RmT5as8vhxiFz+kxwlHrsxOwKPSA8WyS+Wc6Epid9QeI/IkQ9NkgYyQ==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.35.0': - resolution: {integrity: sha512-OUOlGqPkVJCdJETKOCEf1mw848ZyJ5w50/rZ/3IBQVdLfR5jk/6Sr5m3iO2tdPgwo0x7VcncYuOvMhBWZq8ayg==} + '@rollup/rollup-win32-arm64-msvc@4.36.0': + resolution: {integrity: sha512-qbqt4N7tokFwwSVlWDsjfoHgviS3n/vZ8LK0h1uLG9TYIRuUTJC88E1xb3LM2iqZ/WTqNQjYrtmtGmrmmawB6A==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.35.0': - resolution: {integrity: sha512-2/lsgejMrtwQe44glq7AFFHLfJBPafpsTa6JvP2NGef/ifOa4KBoglVf7AKN7EV9o32evBPRqfg96fEHzWo5kw==} + '@rollup/rollup-win32-ia32-msvc@4.36.0': + resolution: {integrity: sha512-t+RY0JuRamIocMuQcfwYSOkmdX9dtkr1PbhKW42AMvaDQa+jOdpUYysroTF/nuPpAaQMWp7ye+ndlmmthieJrQ==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.35.0': - resolution: {integrity: sha512-PIQeY5XDkrOysbQblSW7v3l1MDZzkTEzAfTPkj5VAu3FW8fS4ynyLg2sINp0fp3SjZ8xkRYpLqoKcYqAkhU1dw==} + '@rollup/rollup-win32-x64-msvc@4.36.0': + resolution: {integrity: sha512-aRXd7tRZkWLqGbChgcMMDEHjOKudo1kChb1Jt1IfR8cY/KIpgNviLeJy5FUb9IpSuQj8dU2fAYNMPW/hLKOSTw==} cpu: [x64] os: [win32] @@ -1903,8 +1903,8 @@ packages: resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rollup@4.35.0: - resolution: {integrity: sha512-kg6oI4g+vc41vePJyO6dHt/yl0Rz3Thv0kJeVQ3D1kS3E5XSuKbPc29G4IpT/Kv1KQwgHVcN+HtyS+HYLNSvQg==} + rollup@4.36.0: + resolution: {integrity: sha512-zwATAXNQxUcd40zgtQG0ZafcRK4g004WtEl7kbuhTWPvf07PsfohXl39jVUvPF7jvNAIkKPQ2XrsDlWuxBd++Q==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -2578,96 +2578,96 @@ snapshots: '@polka/url@1.0.0-next.28': {} - '@rollup/plugin-node-resolve@16.0.1(rollup@4.35.0)': + '@rollup/plugin-node-resolve@16.0.1(rollup@4.36.0)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.35.0) + '@rollup/pluginutils': 5.1.4(rollup@4.36.0) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 resolve: 1.22.10 optionalDependencies: - rollup: 4.35.0 + rollup: 4.36.0 - '@rollup/plugin-terser@0.4.4(rollup@4.35.0)': + '@rollup/plugin-terser@0.4.4(rollup@4.36.0)': dependencies: serialize-javascript: 6.0.2 smob: 1.5.0 terser: 5.39.0 optionalDependencies: - rollup: 4.35.0 + rollup: 4.36.0 - '@rollup/plugin-typescript@12.1.2(rollup@4.35.0)(tslib@2.8.1)(typescript@5.8.2)': + '@rollup/plugin-typescript@12.1.2(rollup@4.36.0)(tslib@2.8.1)(typescript@5.8.2)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.35.0) + '@rollup/pluginutils': 5.1.4(rollup@4.36.0) resolve: 1.22.10 typescript: 5.8.2 optionalDependencies: - rollup: 4.35.0 + rollup: 4.36.0 tslib: 2.8.1 - '@rollup/pluginutils@5.1.4(rollup@4.35.0)': + '@rollup/pluginutils@5.1.4(rollup@4.36.0)': dependencies: '@types/estree': 1.0.6 estree-walker: 2.0.2 picomatch: 4.0.2 optionalDependencies: - rollup: 4.35.0 + rollup: 4.36.0 - '@rollup/rollup-android-arm-eabi@4.35.0': + '@rollup/rollup-android-arm-eabi@4.36.0': optional: true - '@rollup/rollup-android-arm64@4.35.0': + '@rollup/rollup-android-arm64@4.36.0': optional: true - '@rollup/rollup-darwin-arm64@4.35.0': + '@rollup/rollup-darwin-arm64@4.36.0': optional: true - '@rollup/rollup-darwin-x64@4.35.0': + '@rollup/rollup-darwin-x64@4.36.0': optional: true - '@rollup/rollup-freebsd-arm64@4.35.0': + '@rollup/rollup-freebsd-arm64@4.36.0': optional: true - '@rollup/rollup-freebsd-x64@4.35.0': + '@rollup/rollup-freebsd-x64@4.36.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.35.0': + '@rollup/rollup-linux-arm-gnueabihf@4.36.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.35.0': + '@rollup/rollup-linux-arm-musleabihf@4.36.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.35.0': + '@rollup/rollup-linux-arm64-gnu@4.36.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.35.0': + '@rollup/rollup-linux-arm64-musl@4.36.0': optional: true - '@rollup/rollup-linux-loongarch64-gnu@4.35.0': + '@rollup/rollup-linux-loongarch64-gnu@4.36.0': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.35.0': + '@rollup/rollup-linux-powerpc64le-gnu@4.36.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.35.0': + '@rollup/rollup-linux-riscv64-gnu@4.36.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.35.0': + '@rollup/rollup-linux-s390x-gnu@4.36.0': optional: true - '@rollup/rollup-linux-x64-gnu@4.35.0': + '@rollup/rollup-linux-x64-gnu@4.36.0': optional: true - '@rollup/rollup-linux-x64-musl@4.35.0': + '@rollup/rollup-linux-x64-musl@4.36.0': optional: true - '@rollup/rollup-win32-arm64-msvc@4.35.0': + '@rollup/rollup-win32-arm64-msvc@4.36.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.35.0': + '@rollup/rollup-win32-ia32-msvc@4.36.0': optional: true - '@rollup/rollup-win32-x64-msvc@4.35.0': + '@rollup/rollup-win32-x64-msvc@4.36.0': optional: true '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)))(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))': @@ -3859,29 +3859,29 @@ snapshots: reusify@1.1.0: {} - rollup@4.35.0: + rollup@4.36.0: dependencies: '@types/estree': 1.0.6 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.35.0 - '@rollup/rollup-android-arm64': 4.35.0 - '@rollup/rollup-darwin-arm64': 4.35.0 - '@rollup/rollup-darwin-x64': 4.35.0 - '@rollup/rollup-freebsd-arm64': 4.35.0 - '@rollup/rollup-freebsd-x64': 4.35.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.35.0 - '@rollup/rollup-linux-arm-musleabihf': 4.35.0 - '@rollup/rollup-linux-arm64-gnu': 4.35.0 - '@rollup/rollup-linux-arm64-musl': 4.35.0 - '@rollup/rollup-linux-loongarch64-gnu': 4.35.0 - '@rollup/rollup-linux-powerpc64le-gnu': 4.35.0 - '@rollup/rollup-linux-riscv64-gnu': 4.35.0 - '@rollup/rollup-linux-s390x-gnu': 4.35.0 - '@rollup/rollup-linux-x64-gnu': 4.35.0 - '@rollup/rollup-linux-x64-musl': 4.35.0 - '@rollup/rollup-win32-arm64-msvc': 4.35.0 - '@rollup/rollup-win32-ia32-msvc': 4.35.0 - '@rollup/rollup-win32-x64-msvc': 4.35.0 + '@rollup/rollup-android-arm-eabi': 4.36.0 + '@rollup/rollup-android-arm64': 4.36.0 + '@rollup/rollup-darwin-arm64': 4.36.0 + '@rollup/rollup-darwin-x64': 4.36.0 + '@rollup/rollup-freebsd-arm64': 4.36.0 + '@rollup/rollup-freebsd-x64': 4.36.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.36.0 + '@rollup/rollup-linux-arm-musleabihf': 4.36.0 + '@rollup/rollup-linux-arm64-gnu': 4.36.0 + '@rollup/rollup-linux-arm64-musl': 4.36.0 + '@rollup/rollup-linux-loongarch64-gnu': 4.36.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.36.0 + '@rollup/rollup-linux-riscv64-gnu': 4.36.0 + '@rollup/rollup-linux-s390x-gnu': 4.36.0 + '@rollup/rollup-linux-x64-gnu': 4.36.0 + '@rollup/rollup-linux-x64-musl': 4.36.0 + '@rollup/rollup-win32-arm64-msvc': 4.36.0 + '@rollup/rollup-win32-ia32-msvc': 4.36.0 + '@rollup/rollup-win32-x64-msvc': 4.36.0 fsevents: 2.3.3 run-parallel@1.2.0: @@ -4118,7 +4118,7 @@ snapshots: dependencies: esbuild: 0.25.0 postcss: 8.5.3 - rollup: 4.35.0 + rollup: 4.36.0 optionalDependencies: fsevents: 2.3.3 jiti: 2.4.2 From c245f123ea944b5c103a0661adcdcab6f10efbf9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 18 Mar 2025 11:36:35 +0800 Subject: [PATCH 53/80] chore(deps): update rust crate zip to v2.3.0 [security] (#2547) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 51dab43b..249f95b0 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -9075,9 +9075,9 @@ dependencies = [ [[package]] name = "zip" -version = "2.2.1" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99d52293fc86ea7cf13971b3bb81eb21683636e7ae24c729cdaf1b7c4157a352" +checksum = "84e9a772a54b54236b9b744aaaf8d7be01b4d6e99725523cb82cb32d1c81b1d7" dependencies = [ "arbitrary", "crc32fast", From 38deef43dca9d5a09a38ed2da45b0f86c6afa1c5 Mon Sep 17 00:00:00 2001 From: Tony <68118705+Legend-Master@users.noreply.github.com> Date: Tue, 18 Mar 2025 20:18:43 +0800 Subject: [PATCH 54/80] fix(deep-link): local machine registry handling (#2483) * fix(deep-link): local machine registry handling * typo * Wrong version bump * return false if registry open fails --------- Co-authored-by: Lucas Fernandes Nogueira --- .../deep-link-is-registered-local-machine.md | 6 +++++ .../deep-link-unregister-local-machine.md | 6 +++++ plugins/deep-link/src/lib.rs | 26 +++++++++++++------ 3 files changed, 30 insertions(+), 8 deletions(-) create mode 100644 .changes/deep-link-is-registered-local-machine.md create mode 100644 .changes/deep-link-unregister-local-machine.md diff --git a/.changes/deep-link-is-registered-local-machine.md b/.changes/deep-link-is-registered-local-machine.md new file mode 100644 index 00000000..7243dd5e --- /dev/null +++ b/.changes/deep-link-is-registered-local-machine.md @@ -0,0 +1,6 @@ +--- +'deep-link': 'patch:bug' +'deep-link-js': 'patch:bug' +--- + +Fix `is_registered` not being able to pickup deep link registered in `HKEY_LOCAL_MACHINE` on Windows diff --git a/.changes/deep-link-unregister-local-machine.md b/.changes/deep-link-unregister-local-machine.md new file mode 100644 index 00000000..bc0b0860 --- /dev/null +++ b/.changes/deep-link-unregister-local-machine.md @@ -0,0 +1,6 @@ +--- +'deep-link': 'patch:bug' +'deep-link-js': 'patch:bug' +--- + +Fix `unregister` not being able to remove deep link registered in `HKEY_LOCAL_MACHINE` on Windows diff --git a/plugins/deep-link/src/lib.rs b/plugins/deep-link/src/lib.rs index f5565319..30584df5 100644 --- a/plugins/deep-link/src/lib.rs +++ b/plugins/deep-link/src/lib.rs @@ -172,7 +172,7 @@ mod imp { use tauri::Manager; use tauri::{AppHandle, Runtime}; #[cfg(windows)] - use windows_registry::CURRENT_USER; + use windows_registry::{CLASSES_ROOT, CURRENT_USER, LOCAL_MACHINE}; /// Access to the deep-link APIs. pub struct DeepLink { @@ -258,7 +258,8 @@ mod imp { pub fn register>(&self, _protocol: S) -> crate::Result<()> { #[cfg(windows)] { - let key_base = format!("Software\\Classes\\{}", _protocol.as_ref()); + let protocol = _protocol.as_ref(); + let key_base = format!("Software\\Classes\\{protocol}"); let exe = dunce::simplified(&tauri::utils::platform::current_exe()?) .display() @@ -348,13 +349,21 @@ mod imp { /// /// ## Platform-specific: /// + /// - **Windows**: Requires admin rights if the protocol is registered on local machine + /// (this can happen when registered from the NSIS installer when the install mode is set to both or per machine) /// - **Linux**: Can only unregister the scheme if it was initially registered with [`register`](`Self::register`). May not work on older distros. /// - **macOS / Android / iOS**: Unsupported, will return [`Error::UnsupportedPlatform`](`crate::Error::UnsupportedPlatform`). pub fn unregister>(&self, _protocol: S) -> crate::Result<()> { #[cfg(windows)] { - CURRENT_USER.remove_tree(format!("Software\\Classes\\{}", _protocol.as_ref()))?; - + let protocol = _protocol.as_ref(); + let path = format!("Software\\Classes\\{protocol}"); + if LOCAL_MACHINE.open(&path).is_ok() { + LOCAL_MACHINE.remove_tree(&path)?; + } + if CURRENT_USER.open(&path).is_ok() { + CURRENT_USER.remove_tree(&path)?; + } Ok(()) } @@ -398,10 +407,11 @@ mod imp { pub fn is_registered>(&self, _protocol: S) -> crate::Result { #[cfg(windows)] { - let cmd_reg = CURRENT_USER.open(format!( - "Software\\Classes\\{}\\shell\\open\\command", - _protocol.as_ref() - ))?; + let protocol = _protocol.as_ref(); + let Ok(cmd_reg) = CLASSES_ROOT.open(format!("{protocol}\\shell\\open\\command")) + else { + return Ok(false); + }; let registered_cmd = cmd_reg.get_string("")?; From 43f0f95da6d0232e5d9e7e7290749d27733bea84 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 20 Mar 2025 14:18:34 +0800 Subject: [PATCH 55/80] chore(deps): update dependency typescript-eslint to v8.27.0 (#2551) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 102 ++++++++++++++++++++++++------------------------- 2 files changed, 52 insertions(+), 52 deletions(-) diff --git a/package.json b/package.json index 8eb15ae9..f2312e44 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "rollup": "4.36.0", "tslib": "2.8.1", "typescript": "5.8.2", - "typescript-eslint": "8.26.1" + "typescript-eslint": "8.27.0" }, "pnpm": { "overrides": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 333fd8ed..a6e36ece 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -48,8 +48,8 @@ importers: specifier: 5.8.2 version: 5.8.2 typescript-eslint: - specifier: 8.26.1 - version: 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + specifier: 8.27.0 + version: 8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) examples/api: dependencies: @@ -932,51 +932,51 @@ packages: '@types/unist@2.0.11': resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} - '@typescript-eslint/eslint-plugin@8.26.1': - resolution: {integrity: sha512-2X3mwqsj9Bd3Ciz508ZUtoQQYpOhU/kWoUqIf49H8Z0+Vbh6UF/y0OEYp0Q0axOGzaBGs7QxRwq0knSQ8khQNA==} + '@typescript-eslint/eslint-plugin@8.27.0': + resolution: {integrity: sha512-4henw4zkePi5p252c8ncBLzLce52SEUz2Ebj8faDnuUXz2UuHEONYcJ+G0oaCF+bYCWVZtrGzq3FD7YXetmnSA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/parser@8.26.1': - resolution: {integrity: sha512-w6HZUV4NWxqd8BdeFf81t07d7/YV9s7TCWrQQbG5uhuvGUAW+fq1usZ1Hmz9UPNLniFnD8GLSsDpjP0hm1S4lQ==} + '@typescript-eslint/parser@8.27.0': + resolution: {integrity: sha512-XGwIabPallYipmcOk45DpsBSgLC64A0yvdAkrwEzwZ2viqGqRUJ8eEYoPz0CWnutgAFbNMPdsGGvzjSmcWVlEA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/scope-manager@8.26.1': - resolution: {integrity: sha512-6EIvbE5cNER8sqBu6V7+KeMZIC1664d2Yjt+B9EWUXrsyWpxx4lEZrmvxgSKRC6gX+efDL/UY9OpPZ267io3mg==} + '@typescript-eslint/scope-manager@8.27.0': + resolution: {integrity: sha512-8oI9GwPMQmBryaaxG1tOZdxXVeMDte6NyJA4i7/TWa4fBwgnAXYlIQP+uYOeqAaLJ2JRxlG9CAyL+C+YE9Xknw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@8.26.1': - resolution: {integrity: sha512-Kcj/TagJLwoY/5w9JGEFV0dclQdyqw9+VMndxOJKtoFSjfZhLXhYjzsQEeyza03rwHx2vFEGvrJWJBXKleRvZg==} + '@typescript-eslint/type-utils@8.27.0': + resolution: {integrity: sha512-wVArTVcz1oJOIEJxui/nRhV0TXzD/zMSOYi/ggCfNq78EIszddXcJb7r4RCp/oBrjt8n9A0BSxRMKxHftpDxDA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/types@8.26.1': - resolution: {integrity: sha512-n4THUQW27VmQMx+3P+B0Yptl7ydfceUj4ON/AQILAASwgYdZ/2dhfymRMh5egRUrvK5lSmaOm77Ry+lmXPOgBQ==} + '@typescript-eslint/types@8.27.0': + resolution: {integrity: sha512-/6cp9yL72yUHAYq9g6DsAU+vVfvQmd1a8KyA81uvfDE21O2DwQ/qxlM4AR8TSdAu+kJLBDrEHKC5/W2/nxsY0A==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.26.1': - resolution: {integrity: sha512-yUwPpUHDgdrv1QJ7YQal3cMVBGWfnuCdKbXw1yyjArax3353rEJP1ZA+4F8nOlQ3RfS2hUN/wze3nlY+ZOhvoA==} + '@typescript-eslint/typescript-estree@8.27.0': + resolution: {integrity: sha512-BnKq8cqPVoMw71O38a1tEb6iebEgGA80icSxW7g+kndx0o6ot6696HjG7NdgfuAVmVEtwXUr3L8R9ZuVjoQL6A==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/utils@8.26.1': - resolution: {integrity: sha512-V4Urxa/XtSUroUrnI7q6yUTD3hDtfJ2jzVfeT3VK0ciizfK2q/zGC0iDh1lFMUZR8cImRrep6/q0xd/1ZGPQpg==} + '@typescript-eslint/utils@8.27.0': + resolution: {integrity: sha512-njkodcwH1yvmo31YWgRHNb/x1Xhhq4/m81PhtvmRngD8iHPehxffz1SNCO+kwaePhATC+kOa/ggmvPoPza5i0Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/visitor-keys@8.26.1': - resolution: {integrity: sha512-AjOC3zfnxd6S4Eiy3jwktJPclqhFHNyd8L6Gycf9WUPoKZpgM5PjkxY1X7uSy61xVpiJDhhk7XT2NVsN3ALTWg==} + '@typescript-eslint/visitor-keys@8.27.0': + resolution: {integrity: sha512-WsXQwMkILJvffP6z4U3FYJPlbf/j07HIxmDjZpbNvBJkMfvwXj5ACRkkHwBDvLBbDbtX5TdU64/rcvKJ/vuInQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@unocss/astro@66.0.0': @@ -2058,8 +2058,8 @@ packages: resolution: {integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==} engines: {node: '>=8'} - typescript-eslint@8.26.1: - resolution: {integrity: sha512-t/oIs9mYyrwZGRpDv3g+3K6nZ5uhKEMt2oNmAPwaY4/ye0+EH4nXIPYNtkYFS6QHm+1DFg34DbglYBz5P9Xysg==} + typescript-eslint@8.27.0: + resolution: {integrity: sha512-ZZ/8+Y0rRUMuW1gJaPtLWe4ryHbsPLzzibk5Sq+IFa2aOH1Vo0gPr1fbA6pOnzBke7zC2Da4w8AyCgxKXo3lqA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -2749,14 +2749,14 @@ snapshots: '@types/unist@2.0.11': {} - '@typescript-eslint/eslint-plugin@8.26.1(@typescript-eslint/parser@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/eslint-plugin@8.27.0(@typescript-eslint/parser@8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/scope-manager': 8.26.1 - '@typescript-eslint/type-utils': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/utils': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/visitor-keys': 8.26.1 + '@typescript-eslint/parser': 8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/scope-manager': 8.27.0 + '@typescript-eslint/type-utils': 8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/visitor-keys': 8.27.0 eslint: 9.22.0(jiti@2.4.2) graphemer: 1.4.0 ignore: 5.3.2 @@ -2766,27 +2766,27 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/parser@8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: - '@typescript-eslint/scope-manager': 8.26.1 - '@typescript-eslint/types': 8.26.1 - '@typescript-eslint/typescript-estree': 8.26.1(typescript@5.8.2) - '@typescript-eslint/visitor-keys': 8.26.1 + '@typescript-eslint/scope-manager': 8.27.0 + '@typescript-eslint/types': 8.27.0 + '@typescript-eslint/typescript-estree': 8.27.0(typescript@5.8.2) + '@typescript-eslint/visitor-keys': 8.27.0 debug: 4.4.0(supports-color@8.1.1) eslint: 9.22.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@8.26.1': + '@typescript-eslint/scope-manager@8.27.0': dependencies: - '@typescript-eslint/types': 8.26.1 - '@typescript-eslint/visitor-keys': 8.26.1 + '@typescript-eslint/types': 8.27.0 + '@typescript-eslint/visitor-keys': 8.27.0 - '@typescript-eslint/type-utils@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/type-utils@8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: - '@typescript-eslint/typescript-estree': 8.26.1(typescript@5.8.2) - '@typescript-eslint/utils': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/typescript-estree': 8.27.0(typescript@5.8.2) + '@typescript-eslint/utils': 8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) debug: 4.4.0(supports-color@8.1.1) eslint: 9.22.0(jiti@2.4.2) ts-api-utils: 2.0.1(typescript@5.8.2) @@ -2794,12 +2794,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/types@8.26.1': {} + '@typescript-eslint/types@8.27.0': {} - '@typescript-eslint/typescript-estree@8.26.1(typescript@5.8.2)': + '@typescript-eslint/typescript-estree@8.27.0(typescript@5.8.2)': dependencies: - '@typescript-eslint/types': 8.26.1 - '@typescript-eslint/visitor-keys': 8.26.1 + '@typescript-eslint/types': 8.27.0 + '@typescript-eslint/visitor-keys': 8.27.0 debug: 4.4.0(supports-color@8.1.1) fast-glob: 3.3.3 is-glob: 4.0.3 @@ -2810,20 +2810,20 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/utils@8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.22.0(jiti@2.4.2)) - '@typescript-eslint/scope-manager': 8.26.1 - '@typescript-eslint/types': 8.26.1 - '@typescript-eslint/typescript-estree': 8.26.1(typescript@5.8.2) + '@typescript-eslint/scope-manager': 8.27.0 + '@typescript-eslint/types': 8.27.0 + '@typescript-eslint/typescript-estree': 8.27.0(typescript@5.8.2) eslint: 9.22.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/visitor-keys@8.26.1': + '@typescript-eslint/visitor-keys@8.27.0': dependencies: - '@typescript-eslint/types': 8.26.1 + '@typescript-eslint/types': 8.27.0 eslint-visitor-keys: 4.2.0 '@unocss/astro@66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': @@ -4032,11 +4032,11 @@ snapshots: type-fest@0.7.1: {} - typescript-eslint@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2): + typescript-eslint@8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2): dependencies: - '@typescript-eslint/eslint-plugin': 8.26.1(@typescript-eslint/parser@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/parser': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/utils': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/eslint-plugin': 8.27.0(@typescript-eslint/parser@8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/parser': 8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) eslint: 9.22.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: From a9cbefc9109d5efeabc7601e14166248ebc4611f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 21 Mar 2025 11:16:29 +0800 Subject: [PATCH 56/80] chore(deps): update tauri monorepo to v2.4.0 (v2) (#2555) * chore(deps): update tauri monorepo to v2.4.0 * Bump tauri rust crates in lock file * Re-generate window-state api-iife.js --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Tony --- Cargo.lock | 47 ++--- examples/api/package.json | 4 +- plugins/deep-link/examples/app/package.json | 4 +- .../examples/vanilla/package.json | 2 +- .../examples/AppSettingsManager/package.json | 2 +- .../websocket/examples/tauri-app/package.json | 2 +- plugins/window-state/api-iife.js | 2 +- pnpm-lock.yaml | 184 +++++++++--------- 8 files changed, 130 insertions(+), 117 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 249f95b0..7bf1f826 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -887,9 +887,9 @@ dependencies = [ [[package]] name = "cargo_toml" -version = "0.21.0" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fbd1fe9db3ebf71b89060adaf7b0504c2d6a425cf061313099547e382c2e472" +checksum = "02260d489095346e5cafd04dea8e8cb54d1d74fcd759022a9b72986ebe9a1257" dependencies = [ "serde", "toml", @@ -6338,9 +6338,9 @@ dependencies = [ [[package]] name = "tao" -version = "0.32.3" +version = "0.32.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d8f5e5fe19612f3dd187ac3928d48f5ad23d3edd9821806d05b0c3beb6537bd" +checksum = "63c8b1020610b9138dd7b1e06cf259ae91aa05c30f3bd0d6b42a03997b92dec1" dependencies = [ "bitflags 2.7.0", "core-foundation 0.10.0", @@ -6411,9 +6411,9 @@ checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" [[package]] name = "tauri" -version = "2.3.0" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f32eadd4a507f1b61e4fd1f792d0ed4184127a3241ff5bcb1848b9a574a58d6" +checksum = "511dd38065a5d3b36c33cdba4362b99a40a5103bebcd4aebb930717e7c8ba292" dependencies = [ "anyhow", "bytes", @@ -6465,9 +6465,9 @@ dependencies = [ [[package]] name = "tauri-build" -version = "2.0.6" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51a2e96f3c0baa0581656bb58e6fdd0f7c9c31eaf6721a0c08689d938fe85f2d" +checksum = "7ffa8732a66f90903f5a585215f3cf1e87988d0359bc88c18a502efe7572c1de" dependencies = [ "anyhow", "cargo_toml", @@ -6489,9 +6489,9 @@ dependencies = [ [[package]] name = "tauri-codegen" -version = "2.0.5" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e357ec3daf8faad1029bc7109e7f5b308ceb63b6073d110d7388923a4cce5e55" +checksum = "c266a247f14d63f40c6282c2653a8bac5cc3d482ca562a003a88513653ea817a" dependencies = [ "base64 0.22.1", "brotli", @@ -6516,9 +6516,9 @@ dependencies = [ [[package]] name = "tauri-macros" -version = "2.0.5" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "447ee4dd94690d77f1422f2b57e783c654ba75c535ad6f6e727887330804fff2" +checksum = "f47a1cf94b3bd6c4dc37dce1a43fc96120ff29a91757f0ab3cf713c7ad846e7c" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -6530,9 +6530,9 @@ dependencies = [ [[package]] name = "tauri-plugin" -version = "2.0.5" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ad3021d8e60ec7672f51ecb67c5e1a514a4d7a9a5ffc9d85090739378047502" +checksum = "9972871fcbddf16618f70412d965d4d845cd4b76d03fff168709961ef71e5cdf" dependencies = [ "anyhow", "glob", @@ -7032,10 +7032,11 @@ dependencies = [ [[package]] name = "tauri-runtime" -version = "2.4.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e758a405ab39e25f4d1235c5f06fe563f44b01ee18bbe38ddec5356d4f581908" +checksum = "9e9c7bce5153f1ca7bc45eba37349b31ba50e975e28edc8b5766c5ec02b0b63a" dependencies = [ + "cookie", "dpi", "gtk", "http", @@ -7051,9 +7052,9 @@ dependencies = [ [[package]] name = "tauri-runtime-wry" -version = "2.4.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ef46e0c9c30d3524990cb10556f82cde0aa2281e9600e7ed2f499842db8b080" +checksum = "087188020fd6facb8578fe9b38e81fa0fe5fb85744c73da51a299f94a530a1e3" dependencies = [ "gtk", "http", @@ -7062,6 +7063,7 @@ dependencies = [ "objc2 0.6.0", "objc2-app-kit 0.3.0", "objc2-foundation 0.3.0", + "once_cell", "percent-encoding", "raw-window-handle", "softbuffer", @@ -7077,11 +7079,12 @@ dependencies = [ [[package]] name = "tauri-utils" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "107a959dbd5ff53d89a98f6f2e3e987c611334141a43630caae1d80e79446dd6" +checksum = "82dcced4014e59af9790cc22f5d271df3be09ecd6728ec68861642553c8d01b7" dependencies = [ "aes-gcm", + "anyhow", "brotli", "cargo_metadata", "ctor", @@ -8779,9 +8782,9 @@ checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" [[package]] name = "wry" -version = "0.50.1" +version = "0.50.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a5eabce267929af61619166232d5221aeec2d7af8712bc33cf54a78416ad711" +checksum = "b19b78efae8b853c6c817e8752fc1dbf9cab8a8ffe9c30f399bd750ccf0f0730" dependencies = [ "base64 0.22.1", "block2 0.6.0", diff --git a/examples/api/package.json b/examples/api/package.json index b04e3a40..58a6f02b 100644 --- a/examples/api/package.json +++ b/examples/api/package.json @@ -10,7 +10,7 @@ "tauri": "tauri" }, "dependencies": { - "@tauri-apps/api": "2.3.0", + "@tauri-apps/api": "2.4.0", "@tauri-apps/plugin-barcode-scanner": "^2.2.0", "@tauri-apps/plugin-biometric": "^2.2.0", "@tauri-apps/plugin-cli": "^2.2.0", @@ -35,7 +35,7 @@ "@iconify-json/codicon": "^1.2.12", "@iconify-json/ph": "^1.2.2", "@sveltejs/vite-plugin-svelte": "^5.0.3", - "@tauri-apps/cli": "2.3.1", + "@tauri-apps/cli": "2.4.0", "@unocss/extractor-svelte": "^66.0.0", "svelte": "^5.20.4", "unocss": "^66.0.0", diff --git a/plugins/deep-link/examples/app/package.json b/plugins/deep-link/examples/app/package.json index 432e775f..ad3adffc 100644 --- a/plugins/deep-link/examples/app/package.json +++ b/plugins/deep-link/examples/app/package.json @@ -10,11 +10,11 @@ "tauri": "tauri" }, "dependencies": { - "@tauri-apps/api": "2.3.0", + "@tauri-apps/api": "2.4.0", "@tauri-apps/plugin-deep-link": "2.2.0" }, "devDependencies": { - "@tauri-apps/cli": "2.3.1", + "@tauri-apps/cli": "2.4.0", "typescript": "^5.7.3", "vite": "^6.2.0" } diff --git a/plugins/single-instance/examples/vanilla/package.json b/plugins/single-instance/examples/vanilla/package.json index 183cfa99..2f174b21 100644 --- a/plugins/single-instance/examples/vanilla/package.json +++ b/plugins/single-instance/examples/vanilla/package.json @@ -9,6 +9,6 @@ "author": "", "license": "MIT", "devDependencies": { - "@tauri-apps/cli": "2.3.1" + "@tauri-apps/cli": "2.4.0" } } diff --git a/plugins/store/examples/AppSettingsManager/package.json b/plugins/store/examples/AppSettingsManager/package.json index 0bf0d66a..bc07f8c5 100644 --- a/plugins/store/examples/AppSettingsManager/package.json +++ b/plugins/store/examples/AppSettingsManager/package.json @@ -8,7 +8,7 @@ "tauri": "tauri" }, "devDependencies": { - "@tauri-apps/cli": "2.3.1", + "@tauri-apps/cli": "2.4.0", "typescript": "^5.7.3", "vite": "^6.2.0" } diff --git a/plugins/websocket/examples/tauri-app/package.json b/plugins/websocket/examples/tauri-app/package.json index a666dad0..00e38cd2 100644 --- a/plugins/websocket/examples/tauri-app/package.json +++ b/plugins/websocket/examples/tauri-app/package.json @@ -9,7 +9,7 @@ "preview": "vite preview" }, "devDependencies": { - "@tauri-apps/cli": "2.3.1", + "@tauri-apps/cli": "2.4.0", "typescript": "^5.7.3", "vite": "^6.2.0" }, diff --git a/plugins/window-state/api-iife.js b/plugins/window-state/api-iife.js index d8f04c60..e0082b5c 100644 --- a/plugins/window-state/api-iife.js +++ b/plugins/window-state/api-iife.js @@ -1 +1 @@ -if("__TAURI__"in window){var __TAURI_PLUGIN_WINDOW_STATE__=function(e){"use strict";var t;"function"==typeof SuppressedError&&SuppressedError;const i="__TAURI_TO_IPC_KEY__";function n(e,t=!1){return window.__TAURI_INTERNALS__.transformCallback(e,t)}async function a(e,t={},i){return window.__TAURI_INTERNALS__.invoke(e,t,i)}class s{get rid(){return function(e,t,i,n){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===i?n:"a"===i?n.call(e):n?n.value:t.get(e)}(this,t,"f")}constructor(e){t.set(this,void 0),function(e,t,i){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");t.set(e,i)}(this,t,e)}async close(){return a("plugin:resources|close",{rid:this.rid})}}t=new WeakMap;class l{constructor(...e){this.type="Logical",1===e.length?"Logical"in e[0]?(this.width=e[0].Logical.width,this.height=e[0].Logical.height):(this.width=e[0].width,this.height=e[0].height):(this.width=e[0],this.height=e[1])}toPhysical(e){return new r(this.width*e,this.height*e)}[i](){return{width:this.width,height:this.height}}toJSON(){return this[i]()}}class r{constructor(...e){this.type="Physical",1===e.length?"Physical"in e[0]?(this.width=e[0].Physical.width,this.height=e[0].Physical.height):(this.width=e[0].width,this.height=e[0].height):(this.width=e[0],this.height=e[1])}toLogical(e){return new l(this.width/e,this.height/e)}[i](){return{width:this.width,height:this.height}}toJSON(){return this[i]()}}class o{constructor(e){this.size=e}toLogical(e){return this.size instanceof l?this.size:this.size.toLogical(e)}toPhysical(e){return this.size instanceof r?this.size:this.size.toPhysical(e)}[i](){return{[`${this.size.type}`]:{width:this.size.width,height:this.size.height}}}toJSON(){return this[i]()}}class u{constructor(...e){this.type="Logical",1===e.length?"Logical"in e[0]?(this.x=e[0].Logical.x,this.y=e[0].Logical.y):(this.x=e[0].x,this.y=e[0].y):(this.x=e[0],this.y=e[1])}toPhysical(e){return new c(this.x*e,this.y*e)}[i](){return{x:this.x,y:this.y}}toJSON(){return this[i]()}}class c{constructor(...e){this.type="Physical",1===e.length?"Physical"in e[0]?(this.x=e[0].Physical.x,this.y=e[0].Physical.y):(this.x=e[0].x,this.y=e[0].y):(this.x=e[0],this.y=e[1])}toLogical(e){return new u(this.x/e,this.y/e)}[i](){return{x:this.x,y:this.y}}toJSON(){return this[i]()}}class h{constructor(e){this.position=e}toLogical(e){return this.position instanceof u?this.position:this.position.toLogical(e)}toPhysical(e){return this.position instanceof c?this.position:this.position.toPhysical(e)}[i](){return{[`${this.position.type}`]:{x:this.position.x,y:this.position.y}}}toJSON(){return this[i]()}}var d,w,b;async function g(e,t){await a("plugin:event|unlisten",{event:e,eventId:t})}async function y(e,t,i){var s;const l="string"==typeof(null==i?void 0:i.target)?{kind:"AnyLabel",label:i.target}:null!==(s=null==i?void 0:i.target)&&void 0!==s?s:{kind:"Any"};return a("plugin:event|listen",{event:e,target:l,handler:n(t)}).then((t=>async()=>g(e,t)))}!function(e){e.WINDOW_RESIZED="tauri://resize",e.WINDOW_MOVED="tauri://move",e.WINDOW_CLOSE_REQUESTED="tauri://close-requested",e.WINDOW_DESTROYED="tauri://destroyed",e.WINDOW_FOCUS="tauri://focus",e.WINDOW_BLUR="tauri://blur",e.WINDOW_SCALE_FACTOR_CHANGED="tauri://scale-change",e.WINDOW_THEME_CHANGED="tauri://theme-changed",e.WINDOW_CREATED="tauri://window-created",e.WEBVIEW_CREATED="tauri://webview-created",e.DRAG_ENTER="tauri://drag-enter",e.DRAG_OVER="tauri://drag-over",e.DRAG_DROP="tauri://drag-drop",e.DRAG_LEAVE="tauri://drag-leave"}(d||(d={}));class p extends s{constructor(e){super(e)}static async new(e,t,i){return a("plugin:image|new",{rgba:_(e),width:t,height:i}).then((e=>new p(e)))}static async fromBytes(e){return a("plugin:image|from_bytes",{bytes:_(e)}).then((e=>new p(e)))}static async fromPath(e){return a("plugin:image|from_path",{path:e}).then((e=>new p(e)))}async rgba(){return a("plugin:image|rgba",{rid:this.rid}).then((e=>new Uint8Array(e)))}async size(){return a("plugin:image|size",{rid:this.rid})}}function _(e){return null==e?null:"string"==typeof e?e:e instanceof p?e.rid:e}!function(e){e[e.Critical=1]="Critical",e[e.Informational=2]="Informational"}(w||(w={}));class v{constructor(e){this._preventDefault=!1,this.event=e.event,this.id=e.id}preventDefault(){this._preventDefault=!0}isPreventDefault(){return this._preventDefault}}function f(){return new D(window.__TAURI_INTERNALS__.metadata.currentWindow.label,{skip:!0})}async function m(){return a("plugin:window|get_all_windows").then((e=>e.map((e=>new D(e,{skip:!0})))))}!function(e){e.None="none",e.Normal="normal",e.Indeterminate="indeterminate",e.Paused="paused",e.Error="error"}(b||(b={}));const E=["tauri://created","tauri://error"];class D{constructor(e,t={}){var i;this.label=e,this.listeners=Object.create(null),(null==t?void 0:t.skip)||a("plugin:window|create",{options:{...t,parent:"string"==typeof t.parent?t.parent:null===(i=t.parent)||void 0===i?void 0:i.label,label:e}}).then((async()=>this.emit("tauri://created"))).catch((async e=>this.emit("tauri://error",e)))}static async getByLabel(e){var t;return null!==(t=(await m()).find((t=>t.label===e)))&&void 0!==t?t:null}static getCurrent(){return f()}static async getAll(){return m()}static async getFocusedWindow(){for(const e of await m())if(await e.isFocused())return e;return null}async listen(e,t){return this._handleTauriEvent(e,t)?()=>{const i=this.listeners[e];i.splice(i.indexOf(t),1)}:y(e,t,{target:{kind:"Window",label:this.label}})}async once(e,t){return this._handleTauriEvent(e,t)?()=>{const i=this.listeners[e];i.splice(i.indexOf(t),1)}:async function(e,t,i){return y(e,(i=>{g(e,i.id),t(i)}),i)}(e,t,{target:{kind:"Window",label:this.label}})}async emit(e,t){if(!E.includes(e))return async function(e,t){await a("plugin:event|emit",{event:e,payload:t})}(e,t);for(const i of this.listeners[e]||[])i({event:e,id:-1,payload:t})}async emitTo(e,t,i){if(!E.includes(t))return async function(e,t,i){const n="string"==typeof e?{kind:"AnyLabel",label:e}:e;await a("plugin:event|emit_to",{target:n,event:t,payload:i})}(e,t,i);for(const e of this.listeners[t]||[])e({event:t,id:-1,payload:i})}_handleTauriEvent(e,t){return!!E.includes(e)&&(e in this.listeners?this.listeners[e].push(t):this.listeners[e]=[t],!0)}async scaleFactor(){return a("plugin:window|scale_factor",{label:this.label})}async innerPosition(){return a("plugin:window|inner_position",{label:this.label}).then((e=>new c(e)))}async outerPosition(){return a("plugin:window|outer_position",{label:this.label}).then((e=>new c(e)))}async innerSize(){return a("plugin:window|inner_size",{label:this.label}).then((e=>new r(e)))}async outerSize(){return a("plugin:window|outer_size",{label:this.label}).then((e=>new r(e)))}async isFullscreen(){return a("plugin:window|is_fullscreen",{label:this.label})}async isMinimized(){return a("plugin:window|is_minimized",{label:this.label})}async isMaximized(){return a("plugin:window|is_maximized",{label:this.label})}async isFocused(){return a("plugin:window|is_focused",{label:this.label})}async isDecorated(){return a("plugin:window|is_decorated",{label:this.label})}async isResizable(){return a("plugin:window|is_resizable",{label:this.label})}async isMaximizable(){return a("plugin:window|is_maximizable",{label:this.label})}async isMinimizable(){return a("plugin:window|is_minimizable",{label:this.label})}async isClosable(){return a("plugin:window|is_closable",{label:this.label})}async isVisible(){return a("plugin:window|is_visible",{label:this.label})}async title(){return a("plugin:window|title",{label:this.label})}async theme(){return a("plugin:window|theme",{label:this.label})}async center(){return a("plugin:window|center",{label:this.label})}async requestUserAttention(e){let t=null;return e&&(t=e===w.Critical?{type:"Critical"}:{type:"Informational"}),a("plugin:window|request_user_attention",{label:this.label,value:t})}async setResizable(e){return a("plugin:window|set_resizable",{label:this.label,value:e})}async setEnabled(e){return a("plugin:window|set_enabled",{label:this.label,value:e})}async isEnabled(){return a("plugin:window|is_enabled",{label:this.label})}async setMaximizable(e){return a("plugin:window|set_maximizable",{label:this.label,value:e})}async setMinimizable(e){return a("plugin:window|set_minimizable",{label:this.label,value:e})}async setClosable(e){return a("plugin:window|set_closable",{label:this.label,value:e})}async setTitle(e){return a("plugin:window|set_title",{label:this.label,value:e})}async maximize(){return a("plugin:window|maximize",{label:this.label})}async unmaximize(){return a("plugin:window|unmaximize",{label:this.label})}async toggleMaximize(){return a("plugin:window|toggle_maximize",{label:this.label})}async minimize(){return a("plugin:window|minimize",{label:this.label})}async unminimize(){return a("plugin:window|unminimize",{label:this.label})}async show(){return a("plugin:window|show",{label:this.label})}async hide(){return a("plugin:window|hide",{label:this.label})}async close(){return a("plugin:window|close",{label:this.label})}async destroy(){return a("plugin:window|destroy",{label:this.label})}async setDecorations(e){return a("plugin:window|set_decorations",{label:this.label,value:e})}async setShadow(e){return a("plugin:window|set_shadow",{label:this.label,value:e})}async setEffects(e){return a("plugin:window|set_effects",{label:this.label,value:e})}async clearEffects(){return a("plugin:window|set_effects",{label:this.label,value:null})}async setAlwaysOnTop(e){return a("plugin:window|set_always_on_top",{label:this.label,value:e})}async setAlwaysOnBottom(e){return a("plugin:window|set_always_on_bottom",{label:this.label,value:e})}async setContentProtected(e){return a("plugin:window|set_content_protected",{label:this.label,value:e})}async setSize(e){return a("plugin:window|set_size",{label:this.label,value:e instanceof o?e:new o(e)})}async setMinSize(e){return a("plugin:window|set_min_size",{label:this.label,value:e instanceof o?e:e?new o(e):null})}async setMaxSize(e){return a("plugin:window|set_max_size",{label:this.label,value:e instanceof o?e:e?new o(e):null})}async setSizeConstraints(e){function t(e){return e?{Logical:e}:null}return a("plugin:window|set_size_constraints",{label:this.label,value:{minWidth:t(null==e?void 0:e.minWidth),minHeight:t(null==e?void 0:e.minHeight),maxWidth:t(null==e?void 0:e.maxWidth),maxHeight:t(null==e?void 0:e.maxHeight)}})}async setPosition(e){return a("plugin:window|set_position",{label:this.label,value:e instanceof h?e:new h(e)})}async setFullscreen(e){return a("plugin:window|set_fullscreen",{label:this.label,value:e})}async setFocus(){return a("plugin:window|set_focus",{label:this.label})}async setIcon(e){return a("plugin:window|set_icon",{label:this.label,value:_(e)})}async setSkipTaskbar(e){return a("plugin:window|set_skip_taskbar",{label:this.label,value:e})}async setCursorGrab(e){return a("plugin:window|set_cursor_grab",{label:this.label,value:e})}async setCursorVisible(e){return a("plugin:window|set_cursor_visible",{label:this.label,value:e})}async setCursorIcon(e){return a("plugin:window|set_cursor_icon",{label:this.label,value:e})}async setBackgroundColor(e){return a("plugin:window|set_background_color",{color:e})}async setCursorPosition(e){return a("plugin:window|set_cursor_position",{label:this.label,value:e instanceof h?e:new h(e)})}async setIgnoreCursorEvents(e){return a("plugin:window|set_ignore_cursor_events",{label:this.label,value:e})}async startDragging(){return a("plugin:window|start_dragging",{label:this.label})}async startResizeDragging(e){return a("plugin:window|start_resize_dragging",{label:this.label,value:e})}async setBadgeCount(e){return a("plugin:window|set_badge_count",{label:this.label,value:e})}async setBadgeLabel(e){return a("plugin:window|set_badge_label",{label:this.label,value:e})}async setOverlayIcon(e){return a("plugin:window|set_overlay_icon",{label:this.label,value:e?_(e):void 0})}async setProgressBar(e){return a("plugin:window|set_progress_bar",{label:this.label,value:e})}async setVisibleOnAllWorkspaces(e){return a("plugin:window|set_visible_on_all_workspaces",{label:this.label,value:e})}async setTitleBarStyle(e){return a("plugin:window|set_title_bar_style",{label:this.label,value:e})}async setTheme(e){return a("plugin:window|set_theme",{label:this.label,value:e})}async onResized(e){return this.listen(d.WINDOW_RESIZED,(t=>{t.payload=new r(t.payload),e(t)}))}async onMoved(e){return this.listen(d.WINDOW_MOVED,(t=>{t.payload=new c(t.payload),e(t)}))}async onCloseRequested(e){return this.listen(d.WINDOW_CLOSE_REQUESTED,(async t=>{const i=new v(t);await e(i),i.isPreventDefault()||await this.destroy()}))}async onDragDropEvent(e){const t=await this.listen(d.DRAG_ENTER,(t=>{e({...t,payload:{type:"enter",paths:t.payload.paths,position:new c(t.payload.position)}})})),i=await this.listen(d.DRAG_OVER,(t=>{e({...t,payload:{type:"over",position:new c(t.payload.position)}})})),n=await this.listen(d.DRAG_DROP,(t=>{e({...t,payload:{type:"drop",paths:t.payload.paths,position:new c(t.payload.position)}})})),a=await this.listen(d.DRAG_LEAVE,(t=>{e({...t,payload:{type:"leave"}})}));return()=>{t(),n(),i(),a()}}async onFocusChanged(e){const t=await this.listen(d.WINDOW_FOCUS,(t=>{e({...t,payload:!0})})),i=await this.listen(d.WINDOW_BLUR,(t=>{e({...t,payload:!1})}));return()=>{t(),i()}}async onScaleChanged(e){return this.listen(d.WINDOW_SCALE_FACTOR_CHANGED,e)}async onThemeChanged(e){return this.listen(d.WINDOW_THEME_CHANGED,e)}}var I,S,W,z;async function O(e,t){await a("plugin:window-state|restore_state",{label:e,flags:t})}return function(e){e.Disabled="disabled",e.Throttle="throttle",e.Suspend="suspend"}(I||(I={})),function(e){e.AppearanceBased="appearanceBased",e.Light="light",e.Dark="dark",e.MediumLight="mediumLight",e.UltraDark="ultraDark",e.Titlebar="titlebar",e.Selection="selection",e.Menu="menu",e.Popover="popover",e.Sidebar="sidebar",e.HeaderView="headerView",e.Sheet="sheet",e.WindowBackground="windowBackground",e.HudWindow="hudWindow",e.FullScreenUI="fullScreenUI",e.Tooltip="tooltip",e.ContentBackground="contentBackground",e.UnderWindowBackground="underWindowBackground",e.UnderPageBackground="underPageBackground",e.Mica="mica",e.Blur="blur",e.Acrylic="acrylic",e.Tabbed="tabbed",e.TabbedDark="tabbedDark",e.TabbedLight="tabbedLight"}(S||(S={})),function(e){e.FollowsWindowActiveState="followsWindowActiveState",e.Active="active",e.Inactive="inactive"}(W||(W={})),e.StateFlags=void 0,(z=e.StateFlags||(e.StateFlags={}))[z.SIZE=1]="SIZE",z[z.POSITION=2]="POSITION",z[z.MAXIMIZED=4]="MAXIMIZED",z[z.VISIBLE=8]="VISIBLE",z[z.DECORATIONS=16]="DECORATIONS",z[z.FULLSCREEN=32]="FULLSCREEN",z[z.ALL=63]="ALL",e.filename=async function(){return await a("plugin:window-state|filename")},e.restoreState=O,e.restoreStateCurrent=async function(e){await O(f().label,e)},e.saveWindowState=async function(e){await a("plugin:window-state|save_window_state",{flags:e})},e}({});Object.defineProperty(window.__TAURI__,"windowState",{value:__TAURI_PLUGIN_WINDOW_STATE__})} +if("__TAURI__"in window){var __TAURI_PLUGIN_WINDOW_STATE__=function(e){"use strict";var t;"function"==typeof SuppressedError&&SuppressedError;const i="__TAURI_TO_IPC_KEY__";function n(e,t=!1){return window.__TAURI_INTERNALS__.transformCallback(e,t)}async function a(e,t={},i){return window.__TAURI_INTERNALS__.invoke(e,t,i)}class l{get rid(){return function(e,t,i,n){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===i?n:"a"===i?n.call(e):n?n.value:t.get(e)}(this,t,"f")}constructor(e){t.set(this,void 0),function(e,t,i){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");t.set(e,i)}(this,t,e)}async close(){return a("plugin:resources|close",{rid:this.rid})}}t=new WeakMap;class s{constructor(...e){this.type="Logical",1===e.length?"Logical"in e[0]?(this.width=e[0].Logical.width,this.height=e[0].Logical.height):(this.width=e[0].width,this.height=e[0].height):(this.width=e[0],this.height=e[1])}toPhysical(e){return new r(this.width*e,this.height*e)}[i](){return{width:this.width,height:this.height}}toJSON(){return this[i]()}}class r{constructor(...e){this.type="Physical",1===e.length?"Physical"in e[0]?(this.width=e[0].Physical.width,this.height=e[0].Physical.height):(this.width=e[0].width,this.height=e[0].height):(this.width=e[0],this.height=e[1])}toLogical(e){return new s(this.width/e,this.height/e)}[i](){return{width:this.width,height:this.height}}toJSON(){return this[i]()}}class o{constructor(e){this.size=e}toLogical(e){return this.size instanceof s?this.size:this.size.toLogical(e)}toPhysical(e){return this.size instanceof r?this.size:this.size.toPhysical(e)}[i](){return{[`${this.size.type}`]:{width:this.size.width,height:this.size.height}}}toJSON(){return this[i]()}}class u{constructor(...e){this.type="Logical",1===e.length?"Logical"in e[0]?(this.x=e[0].Logical.x,this.y=e[0].Logical.y):(this.x=e[0].x,this.y=e[0].y):(this.x=e[0],this.y=e[1])}toPhysical(e){return new c(this.x*e,this.y*e)}[i](){return{x:this.x,y:this.y}}toJSON(){return this[i]()}}class c{constructor(...e){this.type="Physical",1===e.length?"Physical"in e[0]?(this.x=e[0].Physical.x,this.y=e[0].Physical.y):(this.x=e[0].x,this.y=e[0].y):(this.x=e[0],this.y=e[1])}toLogical(e){return new u(this.x/e,this.y/e)}[i](){return{x:this.x,y:this.y}}toJSON(){return this[i]()}}class h{constructor(e){this.position=e}toLogical(e){return this.position instanceof u?this.position:this.position.toLogical(e)}toPhysical(e){return this.position instanceof c?this.position:this.position.toPhysical(e)}[i](){return{[`${this.position.type}`]:{x:this.position.x,y:this.position.y}}}toJSON(){return this[i]()}}var d,w,b;async function g(e,t){await a("plugin:event|unlisten",{event:e,eventId:t})}async function y(e,t,i){var l;const s="string"==typeof(null==i?void 0:i.target)?{kind:"AnyLabel",label:i.target}:null!==(l=null==i?void 0:i.target)&&void 0!==l?l:{kind:"Any"};return a("plugin:event|listen",{event:e,target:s,handler:n(t)}).then((t=>async()=>g(e,t)))}!function(e){e.WINDOW_RESIZED="tauri://resize",e.WINDOW_MOVED="tauri://move",e.WINDOW_CLOSE_REQUESTED="tauri://close-requested",e.WINDOW_DESTROYED="tauri://destroyed",e.WINDOW_FOCUS="tauri://focus",e.WINDOW_BLUR="tauri://blur",e.WINDOW_SCALE_FACTOR_CHANGED="tauri://scale-change",e.WINDOW_THEME_CHANGED="tauri://theme-changed",e.WINDOW_CREATED="tauri://window-created",e.WEBVIEW_CREATED="tauri://webview-created",e.DRAG_ENTER="tauri://drag-enter",e.DRAG_OVER="tauri://drag-over",e.DRAG_DROP="tauri://drag-drop",e.DRAG_LEAVE="tauri://drag-leave"}(d||(d={}));class p extends l{constructor(e){super(e)}static async new(e,t,i){return a("plugin:image|new",{rgba:_(e),width:t,height:i}).then((e=>new p(e)))}static async fromBytes(e){return a("plugin:image|from_bytes",{bytes:_(e)}).then((e=>new p(e)))}static async fromPath(e){return a("plugin:image|from_path",{path:e}).then((e=>new p(e)))}async rgba(){return a("plugin:image|rgba",{rid:this.rid}).then((e=>new Uint8Array(e)))}async size(){return a("plugin:image|size",{rid:this.rid})}}function _(e){return null==e?null:"string"==typeof e?e:e instanceof p?e.rid:e}!function(e){e[e.Critical=1]="Critical",e[e.Informational=2]="Informational"}(w||(w={}));class v{constructor(e){this._preventDefault=!1,this.event=e.event,this.id=e.id}preventDefault(){this._preventDefault=!0}isPreventDefault(){return this._preventDefault}}function f(){return new D(window.__TAURI_INTERNALS__.metadata.currentWindow.label,{skip:!0})}async function m(){return a("plugin:window|get_all_windows").then((e=>e.map((e=>new D(e,{skip:!0})))))}!function(e){e.None="none",e.Normal="normal",e.Indeterminate="indeterminate",e.Paused="paused",e.Error="error"}(b||(b={}));const E=["tauri://created","tauri://error"];class D{constructor(e,t={}){var i;this.label=e,this.listeners=Object.create(null),(null==t?void 0:t.skip)||a("plugin:window|create",{options:{...t,parent:"string"==typeof t.parent?t.parent:null===(i=t.parent)||void 0===i?void 0:i.label,label:e}}).then((async()=>this.emit("tauri://created"))).catch((async e=>this.emit("tauri://error",e)))}static async getByLabel(e){var t;return null!==(t=(await m()).find((t=>t.label===e)))&&void 0!==t?t:null}static getCurrent(){return f()}static async getAll(){return m()}static async getFocusedWindow(){for(const e of await m())if(await e.isFocused())return e;return null}async listen(e,t){return this._handleTauriEvent(e,t)?()=>{const i=this.listeners[e];i.splice(i.indexOf(t),1)}:y(e,t,{target:{kind:"Window",label:this.label}})}async once(e,t){return this._handleTauriEvent(e,t)?()=>{const i=this.listeners[e];i.splice(i.indexOf(t),1)}:async function(e,t,i){return y(e,(i=>{g(e,i.id),t(i)}),i)}(e,t,{target:{kind:"Window",label:this.label}})}async emit(e,t){if(!E.includes(e))return async function(e,t){await a("plugin:event|emit",{event:e,payload:t})}(e,t);for(const i of this.listeners[e]||[])i({event:e,id:-1,payload:t})}async emitTo(e,t,i){if(!E.includes(t))return async function(e,t,i){const n="string"==typeof e?{kind:"AnyLabel",label:e}:e;await a("plugin:event|emit_to",{target:n,event:t,payload:i})}(e,t,i);for(const e of this.listeners[t]||[])e({event:t,id:-1,payload:i})}_handleTauriEvent(e,t){return!!E.includes(e)&&(e in this.listeners?this.listeners[e].push(t):this.listeners[e]=[t],!0)}async scaleFactor(){return a("plugin:window|scale_factor",{label:this.label})}async innerPosition(){return a("plugin:window|inner_position",{label:this.label}).then((e=>new c(e)))}async outerPosition(){return a("plugin:window|outer_position",{label:this.label}).then((e=>new c(e)))}async innerSize(){return a("plugin:window|inner_size",{label:this.label}).then((e=>new r(e)))}async outerSize(){return a("plugin:window|outer_size",{label:this.label}).then((e=>new r(e)))}async isFullscreen(){return a("plugin:window|is_fullscreen",{label:this.label})}async isMinimized(){return a("plugin:window|is_minimized",{label:this.label})}async isMaximized(){return a("plugin:window|is_maximized",{label:this.label})}async isFocused(){return a("plugin:window|is_focused",{label:this.label})}async isDecorated(){return a("plugin:window|is_decorated",{label:this.label})}async isResizable(){return a("plugin:window|is_resizable",{label:this.label})}async isMaximizable(){return a("plugin:window|is_maximizable",{label:this.label})}async isMinimizable(){return a("plugin:window|is_minimizable",{label:this.label})}async isClosable(){return a("plugin:window|is_closable",{label:this.label})}async isVisible(){return a("plugin:window|is_visible",{label:this.label})}async title(){return a("plugin:window|title",{label:this.label})}async theme(){return a("plugin:window|theme",{label:this.label})}async isAlwaysOnTop(){return a("plugin:window|is_always_on_top",{label:this.label})}async center(){return a("plugin:window|center",{label:this.label})}async requestUserAttention(e){let t=null;return e&&(t=e===w.Critical?{type:"Critical"}:{type:"Informational"}),a("plugin:window|request_user_attention",{label:this.label,value:t})}async setResizable(e){return a("plugin:window|set_resizable",{label:this.label,value:e})}async setEnabled(e){return a("plugin:window|set_enabled",{label:this.label,value:e})}async isEnabled(){return a("plugin:window|is_enabled",{label:this.label})}async setMaximizable(e){return a("plugin:window|set_maximizable",{label:this.label,value:e})}async setMinimizable(e){return a("plugin:window|set_minimizable",{label:this.label,value:e})}async setClosable(e){return a("plugin:window|set_closable",{label:this.label,value:e})}async setTitle(e){return a("plugin:window|set_title",{label:this.label,value:e})}async maximize(){return a("plugin:window|maximize",{label:this.label})}async unmaximize(){return a("plugin:window|unmaximize",{label:this.label})}async toggleMaximize(){return a("plugin:window|toggle_maximize",{label:this.label})}async minimize(){return a("plugin:window|minimize",{label:this.label})}async unminimize(){return a("plugin:window|unminimize",{label:this.label})}async show(){return a("plugin:window|show",{label:this.label})}async hide(){return a("plugin:window|hide",{label:this.label})}async close(){return a("plugin:window|close",{label:this.label})}async destroy(){return a("plugin:window|destroy",{label:this.label})}async setDecorations(e){return a("plugin:window|set_decorations",{label:this.label,value:e})}async setShadow(e){return a("plugin:window|set_shadow",{label:this.label,value:e})}async setEffects(e){return a("plugin:window|set_effects",{label:this.label,value:e})}async clearEffects(){return a("plugin:window|set_effects",{label:this.label,value:null})}async setAlwaysOnTop(e){return a("plugin:window|set_always_on_top",{label:this.label,value:e})}async setAlwaysOnBottom(e){return a("plugin:window|set_always_on_bottom",{label:this.label,value:e})}async setContentProtected(e){return a("plugin:window|set_content_protected",{label:this.label,value:e})}async setSize(e){return a("plugin:window|set_size",{label:this.label,value:e instanceof o?e:new o(e)})}async setMinSize(e){return a("plugin:window|set_min_size",{label:this.label,value:e instanceof o?e:e?new o(e):null})}async setMaxSize(e){return a("plugin:window|set_max_size",{label:this.label,value:e instanceof o?e:e?new o(e):null})}async setSizeConstraints(e){function t(e){return e?{Logical:e}:null}return a("plugin:window|set_size_constraints",{label:this.label,value:{minWidth:t(null==e?void 0:e.minWidth),minHeight:t(null==e?void 0:e.minHeight),maxWidth:t(null==e?void 0:e.maxWidth),maxHeight:t(null==e?void 0:e.maxHeight)}})}async setPosition(e){return a("plugin:window|set_position",{label:this.label,value:e instanceof h?e:new h(e)})}async setFullscreen(e){return a("plugin:window|set_fullscreen",{label:this.label,value:e})}async setFocus(){return a("plugin:window|set_focus",{label:this.label})}async setIcon(e){return a("plugin:window|set_icon",{label:this.label,value:_(e)})}async setSkipTaskbar(e){return a("plugin:window|set_skip_taskbar",{label:this.label,value:e})}async setCursorGrab(e){return a("plugin:window|set_cursor_grab",{label:this.label,value:e})}async setCursorVisible(e){return a("plugin:window|set_cursor_visible",{label:this.label,value:e})}async setCursorIcon(e){return a("plugin:window|set_cursor_icon",{label:this.label,value:e})}async setBackgroundColor(e){return a("plugin:window|set_background_color",{color:e})}async setCursorPosition(e){return a("plugin:window|set_cursor_position",{label:this.label,value:e instanceof h?e:new h(e)})}async setIgnoreCursorEvents(e){return a("plugin:window|set_ignore_cursor_events",{label:this.label,value:e})}async startDragging(){return a("plugin:window|start_dragging",{label:this.label})}async startResizeDragging(e){return a("plugin:window|start_resize_dragging",{label:this.label,value:e})}async setBadgeCount(e){return a("plugin:window|set_badge_count",{label:this.label,value:e})}async setBadgeLabel(e){return a("plugin:window|set_badge_label",{label:this.label,value:e})}async setOverlayIcon(e){return a("plugin:window|set_overlay_icon",{label:this.label,value:e?_(e):void 0})}async setProgressBar(e){return a("plugin:window|set_progress_bar",{label:this.label,value:e})}async setVisibleOnAllWorkspaces(e){return a("plugin:window|set_visible_on_all_workspaces",{label:this.label,value:e})}async setTitleBarStyle(e){return a("plugin:window|set_title_bar_style",{label:this.label,value:e})}async setTheme(e){return a("plugin:window|set_theme",{label:this.label,value:e})}async onResized(e){return this.listen(d.WINDOW_RESIZED,(t=>{t.payload=new r(t.payload),e(t)}))}async onMoved(e){return this.listen(d.WINDOW_MOVED,(t=>{t.payload=new c(t.payload),e(t)}))}async onCloseRequested(e){return this.listen(d.WINDOW_CLOSE_REQUESTED,(async t=>{const i=new v(t);await e(i),i.isPreventDefault()||await this.destroy()}))}async onDragDropEvent(e){const t=await this.listen(d.DRAG_ENTER,(t=>{e({...t,payload:{type:"enter",paths:t.payload.paths,position:new c(t.payload.position)}})})),i=await this.listen(d.DRAG_OVER,(t=>{e({...t,payload:{type:"over",position:new c(t.payload.position)}})})),n=await this.listen(d.DRAG_DROP,(t=>{e({...t,payload:{type:"drop",paths:t.payload.paths,position:new c(t.payload.position)}})})),a=await this.listen(d.DRAG_LEAVE,(t=>{e({...t,payload:{type:"leave"}})}));return()=>{t(),n(),i(),a()}}async onFocusChanged(e){const t=await this.listen(d.WINDOW_FOCUS,(t=>{e({...t,payload:!0})})),i=await this.listen(d.WINDOW_BLUR,(t=>{e({...t,payload:!1})}));return()=>{t(),i()}}async onScaleChanged(e){return this.listen(d.WINDOW_SCALE_FACTOR_CHANGED,e)}async onThemeChanged(e){return this.listen(d.WINDOW_THEME_CHANGED,e)}}var I,S,W,O;async function z(e,t){await a("plugin:window-state|restore_state",{label:e,flags:t})}return function(e){e.Disabled="disabled",e.Throttle="throttle",e.Suspend="suspend"}(I||(I={})),function(e){e.AppearanceBased="appearanceBased",e.Light="light",e.Dark="dark",e.MediumLight="mediumLight",e.UltraDark="ultraDark",e.Titlebar="titlebar",e.Selection="selection",e.Menu="menu",e.Popover="popover",e.Sidebar="sidebar",e.HeaderView="headerView",e.Sheet="sheet",e.WindowBackground="windowBackground",e.HudWindow="hudWindow",e.FullScreenUI="fullScreenUI",e.Tooltip="tooltip",e.ContentBackground="contentBackground",e.UnderWindowBackground="underWindowBackground",e.UnderPageBackground="underPageBackground",e.Mica="mica",e.Blur="blur",e.Acrylic="acrylic",e.Tabbed="tabbed",e.TabbedDark="tabbedDark",e.TabbedLight="tabbedLight"}(S||(S={})),function(e){e.FollowsWindowActiveState="followsWindowActiveState",e.Active="active",e.Inactive="inactive"}(W||(W={})),e.StateFlags=void 0,(O=e.StateFlags||(e.StateFlags={}))[O.SIZE=1]="SIZE",O[O.POSITION=2]="POSITION",O[O.MAXIMIZED=4]="MAXIMIZED",O[O.VISIBLE=8]="VISIBLE",O[O.DECORATIONS=16]="DECORATIONS",O[O.FULLSCREEN=32]="FULLSCREEN",O[O.ALL=63]="ALL",e.filename=async function(){return await a("plugin:window-state|filename")},e.restoreState=z,e.restoreStateCurrent=async function(e){await z(f().label,e)},e.saveWindowState=async function(e){await a("plugin:window-state|save_window_state",{flags:e})},e}({});Object.defineProperty(window.__TAURI__,"windowState",{value:__TAURI_PLUGIN_WINDOW_STATE__})} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a6e36ece..7606d4dd 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -54,8 +54,8 @@ importers: examples/api: dependencies: '@tauri-apps/api': - specifier: 2.3.0 - version: 2.3.0 + specifier: 2.4.0 + version: 2.4.0 '@tauri-apps/plugin-barcode-scanner': specifier: ^2.2.0 version: link:../../plugins/barcode-scanner @@ -124,8 +124,8 @@ importers: specifier: ^5.0.3 version: 5.0.3(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) '@tauri-apps/cli': - specifier: 2.3.1 - version: 2.3.1 + specifier: 2.4.0 + version: 2.4.0 '@unocss/extractor-svelte': specifier: ^66.0.0 version: 66.0.0 @@ -143,50 +143,50 @@ importers: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/barcode-scanner: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/biometric: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/cli: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/clipboard-manager: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/deep-link: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/deep-link/examples/app: dependencies: '@tauri-apps/api': - specifier: 2.3.0 - version: 2.3.0 + specifier: 2.4.0 + version: 2.4.0 '@tauri-apps/plugin-deep-link': specifier: 2.2.0 version: link:../.. devDependencies: '@tauri-apps/cli': - specifier: 2.3.1 - version: 2.3.1 + specifier: 2.4.0 + version: 2.4.0 typescript: specifier: ^5.7.3 version: 5.8.2 @@ -198,109 +198,109 @@ importers: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/fs: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/geolocation: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/global-shortcut: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/haptics: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/http: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/log: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/nfc: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/notification: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/opener: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/os: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/positioner: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/process: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/shell: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/single-instance/examples/vanilla: devDependencies: '@tauri-apps/cli': - specifier: 2.3.1 - version: 2.3.1 + specifier: 2.4.0 + version: 2.4.0 plugins/sql: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/store: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/store/examples/AppSettingsManager: devDependencies: '@tauri-apps/cli': - specifier: 2.3.1 - version: 2.3.1 + specifier: 2.4.0 + version: 2.4.0 typescript: specifier: ^5.7.3 version: 5.8.2 @@ -312,25 +312,25 @@ importers: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/updater: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/upload: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/websocket: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 plugins/websocket/examples/tauri-app: dependencies: @@ -339,8 +339,8 @@ importers: version: link:../.. devDependencies: '@tauri-apps/cli': - specifier: 2.3.1 - version: 2.3.1 + specifier: 2.4.0 + version: 2.4.0 typescript: specifier: ^5.7.3 version: 5.8.2 @@ -352,7 +352,7 @@ importers: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.3.0 + version: 2.4.0 packages: @@ -849,71 +849,77 @@ packages: svelte: ^5.0.0 vite: ^6.0.0 - '@tauri-apps/api@2.3.0': - resolution: {integrity: sha512-33Z+0lX2wgZbx1SPFfqvzI6su63hCBkbzv+5NexeYjIx7WA9htdOKoRR7Dh3dJyltqS5/J8vQFyybiRoaL0hlA==} + '@tauri-apps/api@2.4.0': + resolution: {integrity: sha512-F1zXTsmwcCp+ocg6fbzD/YL0OHeSG1eynCag1UNlX2tD5+dlXy7eRbTu9cAcscPjcR7Nix7by2wiv/+VfWUieg==} - '@tauri-apps/cli-darwin-arm64@2.3.1': - resolution: {integrity: sha512-TOhSdsXYt+f+asRU+Dl+Wufglj/7+CX9h8RO4hl5k7D6lR4L8yTtdhpS7btaclOMmjYC4piNfJE70GoxhOoYWw==} + '@tauri-apps/cli-darwin-arm64@2.4.0': + resolution: {integrity: sha512-MVzYrahJBgDyzUJ2gNEU8H+0oCVEucN115+CVorFnidHcJ6DtDRMCaKLkpjOZNfJyag1WQ25fu7imvZSe0mz/g==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] - '@tauri-apps/cli-darwin-x64@2.3.1': - resolution: {integrity: sha512-LDwGg3AuBQ3aCeMAFaFwt0MSGOVFoXuXEe0z4QxQ7jZE5tdAOhKABaq4i569V5lShCgQZ6nLD/tmA5+GipvHnA==} + '@tauri-apps/cli-darwin-x64@2.4.0': + resolution: {integrity: sha512-/4IdbWv6IWSuBn0WVe5JkiSIP1gZhXCZRcumSsYq3ZmOlq4BqXeXT36Oig5mlDnS/2/UpNS94kd8gOA1DNdIeQ==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] - '@tauri-apps/cli-linux-arm-gnueabihf@2.3.1': - resolution: {integrity: sha512-hu3HpbbtJBvHXw5i54QHwLxOUoXWqhf7CL2YYSPOrWEEQo10NKddulP61L5gfr5z+bSSaitfLwqgTidgnaNJCA==} + '@tauri-apps/cli-linux-arm-gnueabihf@2.4.0': + resolution: {integrity: sha512-rOjlk3Vd6R847LXds4pOAFKUL5NVdSWlaiQvr4H9WDUwIWWoxnj7SQfpryTtElDb2wV7a0BNaOCXCpyFEAXjkw==} engines: {node: '>= 10'} cpu: [arm] os: [linux] - '@tauri-apps/cli-linux-arm64-gnu@2.3.1': - resolution: {integrity: sha512-mEGgwkiGSKYXWHhGodo7zU9PCd2I/d6KkR+Wp1nzK+DxsCrEK6yJ5XxYLSQSDcKkM4dCxpVEPUiVMbDhmn08jg==} + '@tauri-apps/cli-linux-arm64-gnu@2.4.0': + resolution: {integrity: sha512-X/uCwao6R/weWT2y4f3JKJMeUsujo9H4nBMAv9RZhRsz93n9Amw9ETavAOP11pyhl57YkasvKTCRQN6FwsaoXg==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@tauri-apps/cli-linux-arm64-musl@2.3.1': - resolution: {integrity: sha512-tqQkafikGfnc7ISnGjSYkbpnzJKEyO8XSa0YOXTAL3J8R5Pss5ZIZY7G8kq1mwQSR/dPVR1ZLTVXgZGuysjP8w==} + '@tauri-apps/cli-linux-arm64-musl@2.4.0': + resolution: {integrity: sha512-GhvQtrTjadW3eLSmfrSfybSqgJMZzUXC+0WqDzFovLug3a1a1go0m9QK9YGvYLkyEpTY5zRxLtwv+tbZXN4tZw==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@tauri-apps/cli-linux-x64-gnu@2.3.1': - resolution: {integrity: sha512-I3puDJ2wGEauXlXbzIHn2etz78TaWs1cpN6zre02maHr6ZR7nf7euTCOGPhhfoMG0opA5mT/eLuYpVw648/VAA==} + '@tauri-apps/cli-linux-riscv64-gnu@2.4.0': + resolution: {integrity: sha512-NgeNihQ9uHS/ibMWLge5VA/BgsS/g8VPSVtCp8DSPyub3bBuCy79A8V+bzNKlMOiDVrqK4vQ//FS9kSxoJOtXw==} + engines: {node: '>= 10'} + cpu: [riscv64] + os: [linux] + + '@tauri-apps/cli-linux-x64-gnu@2.4.0': + resolution: {integrity: sha512-ebRmV2HLIVms1KlNNueQCp3OrXBv6cimU3mYEh5NbZ8dH88f2sF46dFCyPq8Qr/Zti4qPEaAArVG7RYFjfECPw==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@tauri-apps/cli-linux-x64-musl@2.3.1': - resolution: {integrity: sha512-rbWiCOBuQN7tPySkUyBs914uUikE3mEUOqV/IFospvKESw4UC3G1DL5+ybfXH7Orb8/in3JpJuVzYQjo+OSbBA==} + '@tauri-apps/cli-linux-x64-musl@2.4.0': + resolution: {integrity: sha512-FOp2cBFyq5LnUr3he95Z99PQm3nCSJv2GZNeH7UqmUpeHwdcYuhBERU7C+8VDJJPR98Q5fkcoV00Pc4nw0v5KQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@tauri-apps/cli-win32-arm64-msvc@2.3.1': - resolution: {integrity: sha512-PdTmUzSeTHjJuBpCV7L+V29fPhPtToU+NZU46slHKSA1aT38MiFDXBZ/6P5Zudrt9QPMfIubqnJKbK8Ivvv7Ww==} + '@tauri-apps/cli-win32-arm64-msvc@2.4.0': + resolution: {integrity: sha512-SVf1wDagYsaFM+mpUYKmjNveKodcUSGPEM27WmMW4Enh6aXGzTJi4IYOE3GEFOJF1BpRNscslwE1Rd064kfpcg==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] - '@tauri-apps/cli-win32-ia32-msvc@2.3.1': - resolution: {integrity: sha512-K/Xa97kspWT4UWj3t26lL2D3QsopTAxS7kWi5kObdqtAGn3qD52qBi24FH38TdvHYz4QlnLIb30TukviCgh4gw==} + '@tauri-apps/cli-win32-ia32-msvc@2.4.0': + resolution: {integrity: sha512-j+fOFVeSSejk9hrUePY7bJuaYr+80xr+ftjXzxCj0CS0d2oSbq+lT8/zS514WemJk9e9yxUus+2ke/Ng17wkkQ==} engines: {node: '>= 10'} cpu: [ia32] os: [win32] - '@tauri-apps/cli-win32-x64-msvc@2.3.1': - resolution: {integrity: sha512-RgwzXbP8gAno3kQEsybMtgLp6D1Z1Nec2cftryYbPTJmoMJs6e4qgtxuTSbUz5SKnHe8rGgMiFSvEGoHvbG72Q==} + '@tauri-apps/cli-win32-x64-msvc@2.4.0': + resolution: {integrity: sha512-nv84b3a8eI5Y7ksTLBKjjvtr9NOlAGGGo7OJbjKT+xZLdiPOZ0nJ2cT+4IdfnNAZ33pKJugAfuj1fBvQKeTy0w==} engines: {node: '>= 10'} cpu: [x64] os: [win32] - '@tauri-apps/cli@2.3.1': - resolution: {integrity: sha512-xewcw/ZsCqgilTy2h7+pp2Baxoy7zLR2wXOV7SZLzkb6SshHVbm1BFAjn8iFATURRW85KLzl6wSGJ2dQHjVHqw==} + '@tauri-apps/cli@2.4.0': + resolution: {integrity: sha512-Esg7s20tuSULd2YF3lmtMa1vF7yr5eh/TlBHXjEyrC+XSD9aBxHVoXb6oz7oKybDY9Jf9OiBa0bf2PbybcmOLA==} engines: {node: '>= 10'} hasBin: true @@ -2692,50 +2698,54 @@ snapshots: transitivePeerDependencies: - supports-color - '@tauri-apps/api@2.3.0': {} + '@tauri-apps/api@2.4.0': {} + + '@tauri-apps/cli-darwin-arm64@2.4.0': + optional: true - '@tauri-apps/cli-darwin-arm64@2.3.1': + '@tauri-apps/cli-darwin-x64@2.4.0': optional: true - '@tauri-apps/cli-darwin-x64@2.3.1': + '@tauri-apps/cli-linux-arm-gnueabihf@2.4.0': optional: true - '@tauri-apps/cli-linux-arm-gnueabihf@2.3.1': + '@tauri-apps/cli-linux-arm64-gnu@2.4.0': optional: true - '@tauri-apps/cli-linux-arm64-gnu@2.3.1': + '@tauri-apps/cli-linux-arm64-musl@2.4.0': optional: true - '@tauri-apps/cli-linux-arm64-musl@2.3.1': + '@tauri-apps/cli-linux-riscv64-gnu@2.4.0': optional: true - '@tauri-apps/cli-linux-x64-gnu@2.3.1': + '@tauri-apps/cli-linux-x64-gnu@2.4.0': optional: true - '@tauri-apps/cli-linux-x64-musl@2.3.1': + '@tauri-apps/cli-linux-x64-musl@2.4.0': optional: true - '@tauri-apps/cli-win32-arm64-msvc@2.3.1': + '@tauri-apps/cli-win32-arm64-msvc@2.4.0': optional: true - '@tauri-apps/cli-win32-ia32-msvc@2.3.1': + '@tauri-apps/cli-win32-ia32-msvc@2.4.0': optional: true - '@tauri-apps/cli-win32-x64-msvc@2.3.1': + '@tauri-apps/cli-win32-x64-msvc@2.4.0': optional: true - '@tauri-apps/cli@2.3.1': + '@tauri-apps/cli@2.4.0': optionalDependencies: - '@tauri-apps/cli-darwin-arm64': 2.3.1 - '@tauri-apps/cli-darwin-x64': 2.3.1 - '@tauri-apps/cli-linux-arm-gnueabihf': 2.3.1 - '@tauri-apps/cli-linux-arm64-gnu': 2.3.1 - '@tauri-apps/cli-linux-arm64-musl': 2.3.1 - '@tauri-apps/cli-linux-x64-gnu': 2.3.1 - '@tauri-apps/cli-linux-x64-musl': 2.3.1 - '@tauri-apps/cli-win32-arm64-msvc': 2.3.1 - '@tauri-apps/cli-win32-ia32-msvc': 2.3.1 - '@tauri-apps/cli-win32-x64-msvc': 2.3.1 + '@tauri-apps/cli-darwin-arm64': 2.4.0 + '@tauri-apps/cli-darwin-x64': 2.4.0 + '@tauri-apps/cli-linux-arm-gnueabihf': 2.4.0 + '@tauri-apps/cli-linux-arm64-gnu': 2.4.0 + '@tauri-apps/cli-linux-arm64-musl': 2.4.0 + '@tauri-apps/cli-linux-riscv64-gnu': 2.4.0 + '@tauri-apps/cli-linux-x64-gnu': 2.4.0 + '@tauri-apps/cli-linux-x64-musl': 2.4.0 + '@tauri-apps/cli-win32-arm64-msvc': 2.4.0 + '@tauri-apps/cli-win32-ia32-msvc': 2.4.0 + '@tauri-apps/cli-win32-x64-msvc': 2.4.0 '@types/estree@1.0.6': {} From 831c35ff3940e841fe4418bb4cb104038b03304b Mon Sep 17 00:00:00 2001 From: Tim Ramage Date: Fri, 21 Mar 2025 07:19:50 +0000 Subject: [PATCH 57/80] fix(fs): convert async iterator syntax to manual read (#2550) --- .changes/readable-stream-support.md | 6 ++++++ plugins/fs/api-iife.js | 2 +- plugins/fs/guest-js/index.ts | 14 +++++++++++--- 3 files changed, 18 insertions(+), 4 deletions(-) create mode 100644 .changes/readable-stream-support.md diff --git a/.changes/readable-stream-support.md b/.changes/readable-stream-support.md new file mode 100644 index 00000000..ae72e134 --- /dev/null +++ b/.changes/readable-stream-support.md @@ -0,0 +1,6 @@ +--- +"fs": "patch:bug" +"fs-js": "patch:bug" +--- + +Fix `writeFile` ReadableStream handling due to missing async iterator support on macOS platform diff --git a/plugins/fs/api-iife.js b/plugins/fs/api-iife.js index 8c164cd4..269935a7 100644 --- a/plugins/fs/api-iife.js +++ b/plugins/fs/api-iife.js @@ -1 +1 @@ -if("__TAURI__"in window){var __TAURI_PLUGIN_FS__=function(t){"use strict";function e(t,e,n,i){if("function"==typeof e||!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===n?i:"a"===n?i.call(t):i?i.value:e.get(t)}function n(t,e,n,i,o){if("function"==typeof e||!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return e.set(t,n),n}var i,o,r,a;"function"==typeof SuppressedError&&SuppressedError;const s="__TAURI_TO_IPC_KEY__";class f{constructor(){this.__TAURI_CHANNEL_MARKER__=!0,i.set(this,(()=>{})),o.set(this,0),r.set(this,[]),this.id=function(t,e=!1){return window.__TAURI_INTERNALS__.transformCallback(t,e)}((({message:t,id:a})=>{if(a==e(this,o,"f"))for(e(this,i,"f").call(this,t),n(this,o,e(this,o,"f")+1);e(this,o,"f")in e(this,r,"f");){const t=e(this,r,"f")[e(this,o,"f")];e(this,i,"f").call(this,t),delete e(this,r,"f")[e(this,o,"f")],n(this,o,e(this,o,"f")+1)}else e(this,r,"f")[a]=t}))}set onmessage(t){n(this,i,t)}get onmessage(){return e(this,i,"f")}[(i=new WeakMap,o=new WeakMap,r=new WeakMap,s)](){return`__CHANNEL__:${this.id}`}toJSON(){return this[s]()}}async function c(t,e={},n){return window.__TAURI_INTERNALS__.invoke(t,e,n)}class l{get rid(){return e(this,a,"f")}constructor(t){a.set(this,void 0),n(this,a,t)}async close(){return c("plugin:resources|close",{rid:this.rid})}}var u,p;function w(t){return{isFile:t.isFile,isDirectory:t.isDirectory,isSymlink:t.isSymlink,size:t.size,mtime:null!==t.mtime?new Date(t.mtime):null,atime:null!==t.atime?new Date(t.atime):null,birthtime:null!==t.birthtime?new Date(t.birthtime):null,readonly:t.readonly,fileAttributes:t.fileAttributes,dev:t.dev,ino:t.ino,mode:t.mode,nlink:t.nlink,uid:t.uid,gid:t.gid,rdev:t.rdev,blksize:t.blksize,blocks:t.blocks}}a=new WeakMap,t.BaseDirectory=void 0,(u=t.BaseDirectory||(t.BaseDirectory={}))[u.Audio=1]="Audio",u[u.Cache=2]="Cache",u[u.Config=3]="Config",u[u.Data=4]="Data",u[u.LocalData=5]="LocalData",u[u.Document=6]="Document",u[u.Download=7]="Download",u[u.Picture=8]="Picture",u[u.Public=9]="Public",u[u.Video=10]="Video",u[u.Resource=11]="Resource",u[u.Temp=12]="Temp",u[u.AppConfig=13]="AppConfig",u[u.AppData=14]="AppData",u[u.AppLocalData=15]="AppLocalData",u[u.AppCache=16]="AppCache",u[u.AppLog=17]="AppLog",u[u.Desktop=18]="Desktop",u[u.Executable=19]="Executable",u[u.Font=20]="Font",u[u.Home=21]="Home",u[u.Runtime=22]="Runtime",u[u.Template=23]="Template",t.SeekMode=void 0,(p=t.SeekMode||(t.SeekMode={}))[p.Start=0]="Start",p[p.Current=1]="Current",p[p.End=2]="End";class h extends l{async read(t){if(0===t.byteLength)return 0;const e=await c("plugin:fs|read",{rid:this.rid,len:t.byteLength}),n=function(t){const e=new Uint8ClampedArray(t),n=e.byteLength;let i=0;for(let t=0;tt instanceof URL?t.toString():t)),options:i,onEvent:r});return()=>{y(a)}},t.watchImmediate=async function(t,e,n){const i={recursive:!1,...n,delayMs:null},o=Array.isArray(t)?t:[t];for(const t of o)if(t instanceof URL&&"file:"!==t.protocol)throw new TypeError("Must be a file URL.");const r=new f;r.onmessage=e;const a=await c("plugin:fs|watch",{paths:o.map((t=>t instanceof URL?t.toString():t)),options:i,onEvent:r});return()=>{y(a)}},t.writeFile=async function(t,e,n){if(t instanceof URL&&"file:"!==t.protocol)throw new TypeError("Must be a file URL.");if(e instanceof ReadableStream){const i=await d(t,n);for await(const t of e)await i.write(t);await i.close()}else await c("plugin:fs|write_file",e,{headers:{path:encodeURIComponent(t instanceof URL?t.toString():t),options:JSON.stringify(n)}})},t.writeTextFile=async function(t,e,n){if(t instanceof URL&&"file:"!==t.protocol)throw new TypeError("Must be a file URL.");const i=new TextEncoder;await c("plugin:fs|write_text_file",i.encode(e),{headers:{path:encodeURIComponent(t instanceof URL?t.toString():t),options:JSON.stringify(n)}})},t}({});Object.defineProperty(window.__TAURI__,"fs",{value:__TAURI_PLUGIN_FS__})} +if("__TAURI__"in window){var __TAURI_PLUGIN_FS__=function(t){"use strict";function e(t,e,n,i){if("function"==typeof e||!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===n?i:"a"===n?i.call(t):i?i.value:e.get(t)}function n(t,e,n,i,o){if("function"==typeof e||!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return e.set(t,n),n}var i,o,r,a;"function"==typeof SuppressedError&&SuppressedError;const s="__TAURI_TO_IPC_KEY__";class f{constructor(){this.__TAURI_CHANNEL_MARKER__=!0,i.set(this,(()=>{})),o.set(this,0),r.set(this,[]),this.id=function(t,e=!1){return window.__TAURI_INTERNALS__.transformCallback(t,e)}((({message:t,id:a})=>{if(a==e(this,o,"f"))for(e(this,i,"f").call(this,t),n(this,o,e(this,o,"f")+1);e(this,o,"f")in e(this,r,"f");){const t=e(this,r,"f")[e(this,o,"f")];e(this,i,"f").call(this,t),delete e(this,r,"f")[e(this,o,"f")],n(this,o,e(this,o,"f")+1)}else e(this,r,"f")[a]=t}))}set onmessage(t){n(this,i,t)}get onmessage(){return e(this,i,"f")}[(i=new WeakMap,o=new WeakMap,r=new WeakMap,s)](){return`__CHANNEL__:${this.id}`}toJSON(){return this[s]()}}async function c(t,e={},n){return window.__TAURI_INTERNALS__.invoke(t,e,n)}class l{get rid(){return e(this,a,"f")}constructor(t){a.set(this,void 0),n(this,a,t)}async close(){return c("plugin:resources|close",{rid:this.rid})}}var u,p;function w(t){return{isFile:t.isFile,isDirectory:t.isDirectory,isSymlink:t.isSymlink,size:t.size,mtime:null!==t.mtime?new Date(t.mtime):null,atime:null!==t.atime?new Date(t.atime):null,birthtime:null!==t.birthtime?new Date(t.birthtime):null,readonly:t.readonly,fileAttributes:t.fileAttributes,dev:t.dev,ino:t.ino,mode:t.mode,nlink:t.nlink,uid:t.uid,gid:t.gid,rdev:t.rdev,blksize:t.blksize,blocks:t.blocks}}a=new WeakMap,t.BaseDirectory=void 0,(u=t.BaseDirectory||(t.BaseDirectory={}))[u.Audio=1]="Audio",u[u.Cache=2]="Cache",u[u.Config=3]="Config",u[u.Data=4]="Data",u[u.LocalData=5]="LocalData",u[u.Document=6]="Document",u[u.Download=7]="Download",u[u.Picture=8]="Picture",u[u.Public=9]="Public",u[u.Video=10]="Video",u[u.Resource=11]="Resource",u[u.Temp=12]="Temp",u[u.AppConfig=13]="AppConfig",u[u.AppData=14]="AppData",u[u.AppLocalData=15]="AppLocalData",u[u.AppCache=16]="AppCache",u[u.AppLog=17]="AppLog",u[u.Desktop=18]="Desktop",u[u.Executable=19]="Executable",u[u.Font=20]="Font",u[u.Home=21]="Home",u[u.Runtime=22]="Runtime",u[u.Template=23]="Template",t.SeekMode=void 0,(p=t.SeekMode||(t.SeekMode={}))[p.Start=0]="Start",p[p.Current=1]="Current",p[p.End=2]="End";class h extends l{async read(t){if(0===t.byteLength)return 0;const e=await c("plugin:fs|read",{rid:this.rid,len:t.byteLength}),n=function(t){const e=new Uint8ClampedArray(t),n=e.byteLength;let i=0;for(let t=0;tt instanceof URL?t.toString():t)),options:i,onEvent:r});return()=>{y(a)}},t.watchImmediate=async function(t,e,n){const i={recursive:!1,...n,delayMs:null},o=Array.isArray(t)?t:[t];for(const t of o)if(t instanceof URL&&"file:"!==t.protocol)throw new TypeError("Must be a file URL.");const r=new f;r.onmessage=e;const a=await c("plugin:fs|watch",{paths:o.map((t=>t instanceof URL?t.toString():t)),options:i,onEvent:r});return()=>{y(a)}},t.writeFile=async function(t,e,n){if(t instanceof URL&&"file:"!==t.protocol)throw new TypeError("Must be a file URL.");if(e instanceof ReadableStream){const i=await d(t,n),o=e.getReader();try{for(;;){const{done:t,value:e}=await o.read();if(t)break;await i.write(e)}}finally{o.releaseLock(),await i.close()}}else await c("plugin:fs|write_file",e,{headers:{path:encodeURIComponent(t instanceof URL?t.toString():t),options:JSON.stringify(n)}})},t.writeTextFile=async function(t,e,n){if(t instanceof URL&&"file:"!==t.protocol)throw new TypeError("Must be a file URL.");const i=new TextEncoder;await c("plugin:fs|write_text_file",i.encode(e),{headers:{path:encodeURIComponent(t instanceof URL?t.toString():t),options:JSON.stringify(n)}})},t}({});Object.defineProperty(window.__TAURI__,"fs",{value:__TAURI_PLUGIN_FS__})} diff --git a/plugins/fs/guest-js/index.ts b/plugins/fs/guest-js/index.ts index e0438d58..f19cbc80 100644 --- a/plugins/fs/guest-js/index.ts +++ b/plugins/fs/guest-js/index.ts @@ -1075,10 +1075,18 @@ async function writeFile( if (data instanceof ReadableStream) { const file = await open(path, options) - for await (const chunk of data) { - await file.write(chunk) + const reader = data.getReader() + + try { + while (true) { + const { done, value } = await reader.read() + if (done) break + await file.write(value) + } + } finally { + reader.releaseLock() + await file.close() } - await file.close() } else { await invoke('plugin:fs|write_file', data, { headers: { From 37c0477afe926d326573f1827045875ce8bf8187 Mon Sep 17 00:00:00 2001 From: Teddy Byron Date: Fri, 21 Mar 2025 21:26:57 -0400 Subject: [PATCH 58/80] feat(http): add zstd support (#2561) --- .changes/change-pr-2561.md | 6 ++++++ Cargo.lock | 41 ++++++++++++++++++++++++++++++++++++++ plugins/http/Cargo.toml | 1 + 3 files changed, 48 insertions(+) create mode 100644 .changes/change-pr-2561.md diff --git a/.changes/change-pr-2561.md b/.changes/change-pr-2561.md new file mode 100644 index 00000000..26d566b1 --- /dev/null +++ b/.changes/change-pr-2561.md @@ -0,0 +1,6 @@ +--- +http: patch +http-js: patch +--- + +Add `zstd` cargo feature flag to enable `reqwest/zstd` flag. diff --git a/Cargo.lock b/Cargo.lock index 7bf1f826..32fa0404 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -386,6 +386,8 @@ dependencies = [ "memchr", "pin-project-lite", "tokio", + "zstd", + "zstd-safe", ] [[package]] @@ -901,6 +903,8 @@ version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f34d93e62b03caf570cccc334cbc6c2fceca82f39211051345108adcba3eebdc" dependencies = [ + "jobserver", + "libc", "shlex", ] @@ -3199,6 +3203,15 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" +[[package]] +name = "jobserver" +version = "0.1.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0" +dependencies = [ + "libc", +] + [[package]] name = "jpeg-decoder" version = "0.3.1" @@ -9107,6 +9120,34 @@ dependencies = [ "simd-adler32", ] +[[package]] +name = "zstd" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e91ee311a569c327171651566e07972200e76fcfe2242a4fa446149a3881c08a" +dependencies = [ + "zstd-safe", +] + +[[package]] +name = "zstd-safe" +version = "7.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f49c4d5f0abb602a93fb8736af2a4f4dd9512e36f7f570d66e65ff867ed3b9d" +dependencies = [ + "zstd-sys", +] + +[[package]] +name = "zstd-sys" +version = "2.0.15+zstd.1.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb81183ddd97d0c74cedf1d50d85c8d08c1b8b68ee863bdee9e706eedba1a237" +dependencies = [ + "cc", + "pkg-config", +] + [[package]] name = "zvariant" version = "5.2.0" diff --git a/plugins/http/Cargo.toml b/plugins/http/Cargo.toml index d3a78a23..0d482206 100644 --- a/plugins/http/Cargo.toml +++ b/plugins/http/Cargo.toml @@ -68,6 +68,7 @@ cookies = ["reqwest/cookies", "dep:cookie_store", "dep:bytes"] gzip = ["reqwest/gzip"] brotli = ["reqwest/brotli"] deflate = ["reqwest/deflate"] +zstd = ["reqwest/zstd"] trust-dns = ["reqwest/trust-dns"] socks = ["reqwest/socks"] http2 = ["reqwest/http2"] From 35c1cd9aa597a5770ba3b942ec8c0f300979e529 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 22 Mar 2025 10:34:32 +0800 Subject: [PATCH 59/80] chore(deps): update eslint monorepo to v9.23.0 (#2559) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 4 +-- pnpm-lock.yaml | 88 +++++++++++++++++++++++++------------------------- 2 files changed, 46 insertions(+), 46 deletions(-) diff --git a/package.json b/package.json index f2312e44..2509b94a 100644 --- a/package.json +++ b/package.json @@ -11,12 +11,12 @@ "example:api:dev": "pnpm run --filter \"api\" tauri dev" }, "devDependencies": { - "@eslint/js": "9.22.0", + "@eslint/js": "9.23.0", "@rollup/plugin-node-resolve": "16.0.1", "@rollup/plugin-terser": "0.4.4", "@rollup/plugin-typescript": "12.1.2", "covector": "^0.12.4", - "eslint": "9.22.0", + "eslint": "9.23.0", "eslint-config-prettier": "10.1.1", "eslint-plugin-security": "3.0.1", "prettier": "3.5.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7606d4dd..d55de63e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,8 +12,8 @@ importers: .: devDependencies: '@eslint/js': - specifier: 9.22.0 - version: 9.22.0 + specifier: 9.23.0 + version: 9.23.0 '@rollup/plugin-node-resolve': specifier: 16.0.1 version: 16.0.1(rollup@4.36.0) @@ -27,11 +27,11 @@ importers: specifier: ^0.12.4 version: 0.12.4(mocha@10.8.2) eslint: - specifier: 9.22.0 - version: 9.22.0(jiti@2.4.2) + specifier: 9.23.0 + version: 9.23.0(jiti@2.4.2) eslint-config-prettier: specifier: 10.1.1 - version: 10.1.1(eslint@9.22.0(jiti@2.4.2)) + version: 10.1.1(eslint@9.23.0(jiti@2.4.2)) eslint-plugin-security: specifier: 3.0.1 version: 3.0.1 @@ -49,7 +49,7 @@ importers: version: 5.8.2 typescript-eslint: specifier: 8.27.0 - version: 8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + version: 8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) examples/api: dependencies: @@ -607,20 +607,20 @@ packages: resolution: {integrity: sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/config-helpers@0.1.0': - resolution: {integrity: sha512-kLrdPDJE1ckPo94kmPPf9Hfd0DU0Jw6oKYrhe+pwSC0iTUInmTa+w6fw8sGgcfkFJGNdWOUeOaDM4quW4a7OkA==} + '@eslint/config-helpers@0.2.0': + resolution: {integrity: sha512-yJLLmLexii32mGrhW29qvU3QBVTu0GUmEf/J4XsBtVhp4JkIUFN/BjWqTF63yRvGApIDpZm5fa97LtYtINmfeQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/core@0.12.0': resolution: {integrity: sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/eslintrc@3.3.0': - resolution: {integrity: sha512-yaVPAiNAalnCZedKLdR21GOGILMLKPyqSLWaAjQFvYA2i/ciDi8ArYVr69Anohb6cH2Ukhqti4aFnYyPm8wdwQ==} + '@eslint/eslintrc@3.3.1': + resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/js@9.22.0': - resolution: {integrity: sha512-vLFajx9o8d1/oL2ZkpMYbkLv8nDB6yaIwFNt7nI4+I80U/z03SxmfOMsLbvWr3p7C+Wnoh//aOu2pQW8cS0HCQ==} + '@eslint/js@9.23.0': + resolution: {integrity: sha512-35MJ8vCPU0ZMxo7zfev2pypqTwWTofFZO6m4KAtdoFhRpLJUpHTZZ+KB3C7Hb1d7bULYwO4lJXGCi5Se+8OMbw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/object-schema@2.1.6': @@ -1361,8 +1361,8 @@ packages: resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@9.22.0: - resolution: {integrity: sha512-9V/QURhsRN40xuHXWjV64yvrzMjcz7ZyNoF2jJFmy9j/SLk0u1OLSZgXi28MrXjymnjEGSR80WCdab3RGMDveQ==} + eslint@9.23.0: + resolution: {integrity: sha512-jV7AbNoFPAY1EkFYpLq5bslU9NLNO8xnEeQXwErNibVryjk67wHVmddTBilc5srIttJDBrB0eMHKZBFbSIABCw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: @@ -2468,9 +2468,9 @@ snapshots: '@esbuild/win32-x64@0.25.0': optional: true - '@eslint-community/eslint-utils@4.4.1(eslint@9.22.0(jiti@2.4.2))': + '@eslint-community/eslint-utils@4.4.1(eslint@9.23.0(jiti@2.4.2))': dependencies: - eslint: 9.22.0(jiti@2.4.2) + eslint: 9.23.0(jiti@2.4.2) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.1': {} @@ -2483,13 +2483,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/config-helpers@0.1.0': {} + '@eslint/config-helpers@0.2.0': {} '@eslint/core@0.12.0': dependencies: '@types/json-schema': 7.0.15 - '@eslint/eslintrc@3.3.0': + '@eslint/eslintrc@3.3.1': dependencies: ajv: 6.12.6 debug: 4.4.0(supports-color@8.1.1) @@ -2503,7 +2503,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@9.22.0': {} + '@eslint/js@9.23.0': {} '@eslint/object-schema@2.1.6': {} @@ -2759,15 +2759,15 @@ snapshots: '@types/unist@2.0.11': {} - '@typescript-eslint/eslint-plugin@8.27.0(@typescript-eslint/parser@8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/eslint-plugin@8.27.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/parser': 8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) '@typescript-eslint/scope-manager': 8.27.0 - '@typescript-eslint/type-utils': 8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/utils': 8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/type-utils': 8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) '@typescript-eslint/visitor-keys': 8.27.0 - eslint: 9.22.0(jiti@2.4.2) + eslint: 9.23.0(jiti@2.4.2) graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 @@ -2776,14 +2776,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/parser@8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@typescript-eslint/scope-manager': 8.27.0 '@typescript-eslint/types': 8.27.0 '@typescript-eslint/typescript-estree': 8.27.0(typescript@5.8.2) '@typescript-eslint/visitor-keys': 8.27.0 debug: 4.4.0(supports-color@8.1.1) - eslint: 9.22.0(jiti@2.4.2) + eslint: 9.23.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color @@ -2793,12 +2793,12 @@ snapshots: '@typescript-eslint/types': 8.27.0 '@typescript-eslint/visitor-keys': 8.27.0 - '@typescript-eslint/type-utils@8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/type-utils@8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@typescript-eslint/typescript-estree': 8.27.0(typescript@5.8.2) - '@typescript-eslint/utils': 8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) debug: 4.4.0(supports-color@8.1.1) - eslint: 9.22.0(jiti@2.4.2) + eslint: 9.23.0(jiti@2.4.2) ts-api-utils: 2.0.1(typescript@5.8.2) typescript: 5.8.2 transitivePeerDependencies: @@ -2820,13 +2820,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/utils@8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@9.22.0(jiti@2.4.2)) + '@eslint-community/eslint-utils': 4.4.1(eslint@9.23.0(jiti@2.4.2)) '@typescript-eslint/scope-manager': 8.27.0 '@typescript-eslint/types': 8.27.0 '@typescript-eslint/typescript-estree': 8.27.0(typescript@5.8.2) - eslint: 9.22.0(jiti@2.4.2) + eslint: 9.23.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color @@ -3289,9 +3289,9 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-config-prettier@10.1.1(eslint@9.22.0(jiti@2.4.2)): + eslint-config-prettier@10.1.1(eslint@9.23.0(jiti@2.4.2)): dependencies: - eslint: 9.22.0(jiti@2.4.2) + eslint: 9.23.0(jiti@2.4.2) eslint-plugin-security@3.0.1: dependencies: @@ -3306,15 +3306,15 @@ snapshots: eslint-visitor-keys@4.2.0: {} - eslint@9.22.0(jiti@2.4.2): + eslint@9.23.0(jiti@2.4.2): dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@9.22.0(jiti@2.4.2)) + '@eslint-community/eslint-utils': 4.4.1(eslint@9.23.0(jiti@2.4.2)) '@eslint-community/regexpp': 4.12.1 '@eslint/config-array': 0.19.2 - '@eslint/config-helpers': 0.1.0 + '@eslint/config-helpers': 0.2.0 '@eslint/core': 0.12.0 - '@eslint/eslintrc': 3.3.0 - '@eslint/js': 9.22.0 + '@eslint/eslintrc': 3.3.1 + '@eslint/js': 9.23.0 '@eslint/plugin-kit': 0.2.7 '@humanfs/node': 0.16.6 '@humanwhocodes/module-importer': 1.0.1 @@ -4042,12 +4042,12 @@ snapshots: type-fest@0.7.1: {} - typescript-eslint@8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2): + typescript-eslint@8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2): dependencies: - '@typescript-eslint/eslint-plugin': 8.27.0(@typescript-eslint/parser@8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/parser': 8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/utils': 8.27.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) - eslint: 9.22.0(jiti@2.4.2) + '@typescript-eslint/eslint-plugin': 8.27.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/parser': 8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + eslint: 9.23.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color From 174b31b8b1c194e55b7dd83cc90189ea29634a62 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 24 Mar 2025 09:44:35 +0800 Subject: [PATCH 60/80] chore(deps): update dependency rollup to v4.37.0 (#2565) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 199 ++++++++++++++++++++++++++----------------------- 2 files changed, 105 insertions(+), 96 deletions(-) diff --git a/package.json b/package.json index 2509b94a..c39221e6 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "eslint-config-prettier": "10.1.1", "eslint-plugin-security": "3.0.1", "prettier": "3.5.3", - "rollup": "4.36.0", + "rollup": "4.37.0", "tslib": "2.8.1", "typescript": "5.8.2", "typescript-eslint": "8.27.0" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d55de63e..2c29304a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -16,13 +16,13 @@ importers: version: 9.23.0 '@rollup/plugin-node-resolve': specifier: 16.0.1 - version: 16.0.1(rollup@4.36.0) + version: 16.0.1(rollup@4.37.0) '@rollup/plugin-terser': specifier: 0.4.4 - version: 0.4.4(rollup@4.36.0) + version: 0.4.4(rollup@4.37.0) '@rollup/plugin-typescript': specifier: 12.1.2 - version: 12.1.2(rollup@4.36.0)(tslib@2.8.1)(typescript@5.8.2) + version: 12.1.2(rollup@4.37.0)(tslib@2.8.1)(typescript@5.8.2) covector: specifier: ^0.12.4 version: 0.12.4(mocha@10.8.2) @@ -39,8 +39,8 @@ importers: specifier: 3.5.3 version: 3.5.3 rollup: - specifier: 4.36.0 - version: 4.36.0 + specifier: 4.37.0 + version: 4.37.0 tslib: specifier: 2.8.1 version: 2.8.1 @@ -739,98 +739,103 @@ packages: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.36.0': - resolution: {integrity: sha512-jgrXjjcEwN6XpZXL0HUeOVGfjXhPyxAbbhD0BlXUB+abTOpbPiN5Wb3kOT7yb+uEtATNYF5x5gIfwutmuBA26w==} + '@rollup/rollup-android-arm-eabi@4.37.0': + resolution: {integrity: sha512-l7StVw6WAa8l3vA1ov80jyetOAEo1FtHvZDbzXDO/02Sq/QVvqlHkYoFwDJPIMj0GKiistsBudfx5tGFnwYWDQ==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.36.0': - resolution: {integrity: sha512-NyfuLvdPdNUfUNeYKUwPwKsE5SXa2J6bCt2LdB/N+AxShnkpiczi3tcLJrm5mA+eqpy0HmaIY9F6XCa32N5yzg==} + '@rollup/rollup-android-arm64@4.37.0': + resolution: {integrity: sha512-6U3SlVyMxezt8Y+/iEBcbp945uZjJwjZimu76xoG7tO1av9VO691z8PkhzQ85ith2I8R2RddEPeSfcbyPfD4hA==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.36.0': - resolution: {integrity: sha512-JQ1Jk5G4bGrD4pWJQzWsD8I1n1mgPXq33+/vP4sk8j/z/C2siRuxZtaUA7yMTf71TCZTZl/4e1bfzwUmFb3+rw==} + '@rollup/rollup-darwin-arm64@4.37.0': + resolution: {integrity: sha512-+iTQ5YHuGmPt10NTzEyMPbayiNTcOZDWsbxZYR1ZnmLnZxG17ivrPSWFO9j6GalY0+gV3Jtwrrs12DBscxnlYA==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.36.0': - resolution: {integrity: sha512-6c6wMZa1lrtiRsbDziCmjE53YbTkxMYhhnWnSW8R/yqsM7a6mSJ3uAVT0t8Y/DGt7gxUWYuFM4bwWk9XCJrFKA==} + '@rollup/rollup-darwin-x64@4.37.0': + resolution: {integrity: sha512-m8W2UbxLDcmRKVjgl5J/k4B8d7qX2EcJve3Sut7YGrQoPtCIQGPH5AMzuFvYRWZi0FVS0zEY4c8uttPfX6bwYQ==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.36.0': - resolution: {integrity: sha512-KXVsijKeJXOl8QzXTsA+sHVDsFOmMCdBRgFmBb+mfEb/7geR7+C8ypAml4fquUt14ZyVXaw2o1FWhqAfOvA4sg==} + '@rollup/rollup-freebsd-arm64@4.37.0': + resolution: {integrity: sha512-FOMXGmH15OmtQWEt174v9P1JqqhlgYge/bUjIbiVD1nI1NeJ30HYT9SJlZMqdo1uQFyt9cz748F1BHghWaDnVA==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.36.0': - resolution: {integrity: sha512-dVeWq1ebbvByI+ndz4IJcD4a09RJgRYmLccwlQ8bPd4olz3Y213uf1iwvc7ZaxNn2ab7bjc08PrtBgMu6nb4pQ==} + '@rollup/rollup-freebsd-x64@4.37.0': + resolution: {integrity: sha512-SZMxNttjPKvV14Hjck5t70xS3l63sbVwl98g3FlVVx2YIDmfUIy29jQrsw06ewEYQ8lQSuY9mpAPlmgRD2iSsA==} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.36.0': - resolution: {integrity: sha512-bvXVU42mOVcF4le6XSjscdXjqx8okv4n5vmwgzcmtvFdifQ5U4dXFYaCB87namDRKlUL9ybVtLQ9ztnawaSzvg==} + '@rollup/rollup-linux-arm-gnueabihf@4.37.0': + resolution: {integrity: sha512-hhAALKJPidCwZcj+g+iN+38SIOkhK2a9bqtJR+EtyxrKKSt1ynCBeqrQy31z0oWU6thRZzdx53hVgEbRkuI19w==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.36.0': - resolution: {integrity: sha512-JFIQrDJYrxOnyDQGYkqnNBtjDwTgbasdbUiQvcU8JmGDfValfH1lNpng+4FWlhaVIR4KPkeddYjsVVbmJYvDcg==} + '@rollup/rollup-linux-arm-musleabihf@4.37.0': + resolution: {integrity: sha512-jUb/kmn/Gd8epbHKEqkRAxq5c2EwRt0DqhSGWjPFxLeFvldFdHQs/n8lQ9x85oAeVb6bHcS8irhTJX2FCOd8Ag==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.36.0': - resolution: {integrity: sha512-KqjYVh3oM1bj//5X7k79PSCZ6CvaVzb7Qs7VMWS+SlWB5M8p3FqufLP9VNp4CazJ0CsPDLwVD9r3vX7Ci4J56A==} + '@rollup/rollup-linux-arm64-gnu@4.37.0': + resolution: {integrity: sha512-oNrJxcQT9IcbcmKlkF+Yz2tmOxZgG9D9GRq+1OE6XCQwCVwxixYAa38Z8qqPzQvzt1FCfmrHX03E0pWoXm1DqA==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.36.0': - resolution: {integrity: sha512-QiGnhScND+mAAtfHqeT+cB1S9yFnNQ/EwCg5yE3MzoaZZnIV0RV9O5alJAoJKX/sBONVKeZdMfO8QSaWEygMhw==} + '@rollup/rollup-linux-arm64-musl@4.37.0': + resolution: {integrity: sha512-pfxLBMls+28Ey2enpX3JvjEjaJMBX5XlPCZNGxj4kdJyHduPBXtxYeb8alo0a7bqOoWZW2uKynhHxF/MWoHaGQ==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-loongarch64-gnu@4.36.0': - resolution: {integrity: sha512-1ZPyEDWF8phd4FQtTzMh8FQwqzvIjLsl6/84gzUxnMNFBtExBtpL51H67mV9xipuxl1AEAerRBgBwFNpkw8+Lg==} + '@rollup/rollup-linux-loongarch64-gnu@4.37.0': + resolution: {integrity: sha512-yCE0NnutTC/7IGUq/PUHmoeZbIwq3KRh02e9SfFh7Vmc1Z7atuJRYWhRME5fKgT8aS20mwi1RyChA23qSyRGpA==} cpu: [loong64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.36.0': - resolution: {integrity: sha512-VMPMEIUpPFKpPI9GZMhJrtu8rxnp6mJR3ZzQPykq4xc2GmdHj3Q4cA+7avMyegXy4n1v+Qynr9fR88BmyO74tg==} + '@rollup/rollup-linux-powerpc64le-gnu@4.37.0': + resolution: {integrity: sha512-NxcICptHk06E2Lh3a4Pu+2PEdZ6ahNHuK7o6Np9zcWkrBMuv21j10SQDJW3C9Yf/A/P7cutWoC/DptNLVsZ0VQ==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.36.0': - resolution: {integrity: sha512-ttE6ayb/kHwNRJGYLpuAvB7SMtOeQnVXEIpMtAvx3kepFQeowVED0n1K9nAdraHUPJ5hydEMxBpIR7o4nrm8uA==} + '@rollup/rollup-linux-riscv64-gnu@4.37.0': + resolution: {integrity: sha512-PpWwHMPCVpFZLTfLq7EWJWvrmEuLdGn1GMYcm5MV7PaRgwCEYJAwiN94uBuZev0/J/hFIIJCsYw4nLmXA9J7Pw==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.36.0': - resolution: {integrity: sha512-4a5gf2jpS0AIe7uBjxDeUMNcFmaRTbNv7NxI5xOCs4lhzsVyGR/0qBXduPnoWf6dGC365saTiwag8hP1imTgag==} + '@rollup/rollup-linux-riscv64-musl@4.37.0': + resolution: {integrity: sha512-DTNwl6a3CfhGTAOYZ4KtYbdS8b+275LSLqJVJIrPa5/JuIufWWZ/QFvkxp52gpmguN95eujrM68ZG+zVxa8zHA==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-s390x-gnu@4.37.0': + resolution: {integrity: sha512-hZDDU5fgWvDdHFuExN1gBOhCuzo/8TMpidfOR+1cPZJflcEzXdCy1LjnklQdW8/Et9sryOPJAKAQRw8Jq7Tg+A==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.36.0': - resolution: {integrity: sha512-5KtoW8UWmwFKQ96aQL3LlRXX16IMwyzMq/jSSVIIyAANiE1doaQsx/KRyhAvpHlPjPiSU/AYX/8m+lQ9VToxFQ==} + '@rollup/rollup-linux-x64-gnu@4.37.0': + resolution: {integrity: sha512-pKivGpgJM5g8dwj0ywBwe/HeVAUSuVVJhUTa/URXjxvoyTT/AxsLTAbkHkDHG7qQxLoW2s3apEIl26uUe08LVQ==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.36.0': - resolution: {integrity: sha512-sycrYZPrv2ag4OCvaN5js+f01eoZ2U+RmT5as8vhxiFz+kxwlHrsxOwKPSA8WyS+Wc6Epid9QeI/IkQ9NkgYyQ==} + '@rollup/rollup-linux-x64-musl@4.37.0': + resolution: {integrity: sha512-E2lPrLKE8sQbY/2bEkVTGDEk4/49UYRVWgj90MY8yPjpnGBQ+Xi1Qnr7b7UIWw1NOggdFQFOLZ8+5CzCiz143w==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.36.0': - resolution: {integrity: sha512-qbqt4N7tokFwwSVlWDsjfoHgviS3n/vZ8LK0h1uLG9TYIRuUTJC88E1xb3LM2iqZ/WTqNQjYrtmtGmrmmawB6A==} + '@rollup/rollup-win32-arm64-msvc@4.37.0': + resolution: {integrity: sha512-Jm7biMazjNzTU4PrQtr7VS8ibeys9Pn29/1bm4ph7CP2kf21950LgN+BaE2mJ1QujnvOc6p54eWWiVvn05SOBg==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.36.0': - resolution: {integrity: sha512-t+RY0JuRamIocMuQcfwYSOkmdX9dtkr1PbhKW42AMvaDQa+jOdpUYysroTF/nuPpAaQMWp7ye+ndlmmthieJrQ==} + '@rollup/rollup-win32-ia32-msvc@4.37.0': + resolution: {integrity: sha512-e3/1SFm1OjefWICB2Ucstg2dxYDkDTZGDYgwufcbsxTHyqQps1UQf33dFEChBNmeSsTOyrjw2JJq0zbG5GF6RA==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.36.0': - resolution: {integrity: sha512-aRXd7tRZkWLqGbChgcMMDEHjOKudo1kChb1Jt1IfR8cY/KIpgNviLeJy5FUb9IpSuQj8dU2fAYNMPW/hLKOSTw==} + '@rollup/rollup-win32-x64-msvc@4.37.0': + resolution: {integrity: sha512-LWbXUBwn/bcLx2sSsqy7pK5o+Nr+VCoRoAohfJ5C/aBio9nfJmGQqHAhU6pwxV/RmyTk5AqdySma7uwWGlmeuA==} cpu: [x64] os: [win32] @@ -1909,8 +1914,8 @@ packages: resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rollup@4.36.0: - resolution: {integrity: sha512-zwATAXNQxUcd40zgtQG0ZafcRK4g004WtEl7kbuhTWPvf07PsfohXl39jVUvPF7jvNAIkKPQ2XrsDlWuxBd++Q==} + rollup@4.37.0: + resolution: {integrity: sha512-iAtQy/L4QFU+rTJ1YUjXqJOJzuwEghqWzCEYD2FEghT7Gsy1VdABntrO4CLopA5IkflTyqNiLNwPcOJ3S7UKLg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -2584,96 +2589,99 @@ snapshots: '@polka/url@1.0.0-next.28': {} - '@rollup/plugin-node-resolve@16.0.1(rollup@4.36.0)': + '@rollup/plugin-node-resolve@16.0.1(rollup@4.37.0)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.36.0) + '@rollup/pluginutils': 5.1.4(rollup@4.37.0) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 resolve: 1.22.10 optionalDependencies: - rollup: 4.36.0 + rollup: 4.37.0 - '@rollup/plugin-terser@0.4.4(rollup@4.36.0)': + '@rollup/plugin-terser@0.4.4(rollup@4.37.0)': dependencies: serialize-javascript: 6.0.2 smob: 1.5.0 terser: 5.39.0 optionalDependencies: - rollup: 4.36.0 + rollup: 4.37.0 - '@rollup/plugin-typescript@12.1.2(rollup@4.36.0)(tslib@2.8.1)(typescript@5.8.2)': + '@rollup/plugin-typescript@12.1.2(rollup@4.37.0)(tslib@2.8.1)(typescript@5.8.2)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.36.0) + '@rollup/pluginutils': 5.1.4(rollup@4.37.0) resolve: 1.22.10 typescript: 5.8.2 optionalDependencies: - rollup: 4.36.0 + rollup: 4.37.0 tslib: 2.8.1 - '@rollup/pluginutils@5.1.4(rollup@4.36.0)': + '@rollup/pluginutils@5.1.4(rollup@4.37.0)': dependencies: '@types/estree': 1.0.6 estree-walker: 2.0.2 picomatch: 4.0.2 optionalDependencies: - rollup: 4.36.0 + rollup: 4.37.0 + + '@rollup/rollup-android-arm-eabi@4.37.0': + optional: true - '@rollup/rollup-android-arm-eabi@4.36.0': + '@rollup/rollup-android-arm64@4.37.0': optional: true - '@rollup/rollup-android-arm64@4.36.0': + '@rollup/rollup-darwin-arm64@4.37.0': optional: true - '@rollup/rollup-darwin-arm64@4.36.0': + '@rollup/rollup-darwin-x64@4.37.0': optional: true - '@rollup/rollup-darwin-x64@4.36.0': + '@rollup/rollup-freebsd-arm64@4.37.0': optional: true - '@rollup/rollup-freebsd-arm64@4.36.0': + '@rollup/rollup-freebsd-x64@4.37.0': optional: true - '@rollup/rollup-freebsd-x64@4.36.0': + '@rollup/rollup-linux-arm-gnueabihf@4.37.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.36.0': + '@rollup/rollup-linux-arm-musleabihf@4.37.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.36.0': + '@rollup/rollup-linux-arm64-gnu@4.37.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.36.0': + '@rollup/rollup-linux-arm64-musl@4.37.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.36.0': + '@rollup/rollup-linux-loongarch64-gnu@4.37.0': optional: true - '@rollup/rollup-linux-loongarch64-gnu@4.36.0': + '@rollup/rollup-linux-powerpc64le-gnu@4.37.0': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.36.0': + '@rollup/rollup-linux-riscv64-gnu@4.37.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.36.0': + '@rollup/rollup-linux-riscv64-musl@4.37.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.36.0': + '@rollup/rollup-linux-s390x-gnu@4.37.0': optional: true - '@rollup/rollup-linux-x64-gnu@4.36.0': + '@rollup/rollup-linux-x64-gnu@4.37.0': optional: true - '@rollup/rollup-linux-x64-musl@4.36.0': + '@rollup/rollup-linux-x64-musl@4.37.0': optional: true - '@rollup/rollup-win32-arm64-msvc@4.36.0': + '@rollup/rollup-win32-arm64-msvc@4.37.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.36.0': + '@rollup/rollup-win32-ia32-msvc@4.37.0': optional: true - '@rollup/rollup-win32-x64-msvc@4.36.0': + '@rollup/rollup-win32-x64-msvc@4.37.0': optional: true '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)))(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))': @@ -3869,29 +3877,30 @@ snapshots: reusify@1.1.0: {} - rollup@4.36.0: + rollup@4.37.0: dependencies: '@types/estree': 1.0.6 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.36.0 - '@rollup/rollup-android-arm64': 4.36.0 - '@rollup/rollup-darwin-arm64': 4.36.0 - '@rollup/rollup-darwin-x64': 4.36.0 - '@rollup/rollup-freebsd-arm64': 4.36.0 - '@rollup/rollup-freebsd-x64': 4.36.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.36.0 - '@rollup/rollup-linux-arm-musleabihf': 4.36.0 - '@rollup/rollup-linux-arm64-gnu': 4.36.0 - '@rollup/rollup-linux-arm64-musl': 4.36.0 - '@rollup/rollup-linux-loongarch64-gnu': 4.36.0 - '@rollup/rollup-linux-powerpc64le-gnu': 4.36.0 - '@rollup/rollup-linux-riscv64-gnu': 4.36.0 - '@rollup/rollup-linux-s390x-gnu': 4.36.0 - '@rollup/rollup-linux-x64-gnu': 4.36.0 - '@rollup/rollup-linux-x64-musl': 4.36.0 - '@rollup/rollup-win32-arm64-msvc': 4.36.0 - '@rollup/rollup-win32-ia32-msvc': 4.36.0 - '@rollup/rollup-win32-x64-msvc': 4.36.0 + '@rollup/rollup-android-arm-eabi': 4.37.0 + '@rollup/rollup-android-arm64': 4.37.0 + '@rollup/rollup-darwin-arm64': 4.37.0 + '@rollup/rollup-darwin-x64': 4.37.0 + '@rollup/rollup-freebsd-arm64': 4.37.0 + '@rollup/rollup-freebsd-x64': 4.37.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.37.0 + '@rollup/rollup-linux-arm-musleabihf': 4.37.0 + '@rollup/rollup-linux-arm64-gnu': 4.37.0 + '@rollup/rollup-linux-arm64-musl': 4.37.0 + '@rollup/rollup-linux-loongarch64-gnu': 4.37.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.37.0 + '@rollup/rollup-linux-riscv64-gnu': 4.37.0 + '@rollup/rollup-linux-riscv64-musl': 4.37.0 + '@rollup/rollup-linux-s390x-gnu': 4.37.0 + '@rollup/rollup-linux-x64-gnu': 4.37.0 + '@rollup/rollup-linux-x64-musl': 4.37.0 + '@rollup/rollup-win32-arm64-msvc': 4.37.0 + '@rollup/rollup-win32-ia32-msvc': 4.37.0 + '@rollup/rollup-win32-x64-msvc': 4.37.0 fsevents: 2.3.3 run-parallel@1.2.0: @@ -4128,7 +4137,7 @@ snapshots: dependencies: esbuild: 0.25.0 postcss: 8.5.3 - rollup: 4.36.0 + rollup: 4.37.0 optionalDependencies: fsevents: 2.3.3 jiti: 2.4.2 From 286e3c6252001f84b55009aeb32112d652cb6433 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Mar 2025 10:04:19 +0800 Subject: [PATCH 61/80] chore(deps): update dependency typescript-eslint to v8.28.0 (#2567) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 102 ++++++++++++++++++++++++------------------------- 2 files changed, 52 insertions(+), 52 deletions(-) diff --git a/package.json b/package.json index c39221e6..3e38ab2f 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "rollup": "4.37.0", "tslib": "2.8.1", "typescript": "5.8.2", - "typescript-eslint": "8.27.0" + "typescript-eslint": "8.28.0" }, "pnpm": { "overrides": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2c29304a..1a5dd746 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -48,8 +48,8 @@ importers: specifier: 5.8.2 version: 5.8.2 typescript-eslint: - specifier: 8.27.0 - version: 8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + specifier: 8.28.0 + version: 8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) examples/api: dependencies: @@ -943,51 +943,51 @@ packages: '@types/unist@2.0.11': resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} - '@typescript-eslint/eslint-plugin@8.27.0': - resolution: {integrity: sha512-4henw4zkePi5p252c8ncBLzLce52SEUz2Ebj8faDnuUXz2UuHEONYcJ+G0oaCF+bYCWVZtrGzq3FD7YXetmnSA==} + '@typescript-eslint/eslint-plugin@8.28.0': + resolution: {integrity: sha512-lvFK3TCGAHsItNdWZ/1FkvpzCxTHUVuFrdnOGLMa0GGCFIbCgQWVk3CzCGdA7kM3qGVc+dfW9tr0Z/sHnGDFyg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/parser@8.27.0': - resolution: {integrity: sha512-XGwIabPallYipmcOk45DpsBSgLC64A0yvdAkrwEzwZ2viqGqRUJ8eEYoPz0CWnutgAFbNMPdsGGvzjSmcWVlEA==} + '@typescript-eslint/parser@8.28.0': + resolution: {integrity: sha512-LPcw1yHD3ToaDEoljFEfQ9j2xShY367h7FZ1sq5NJT9I3yj4LHer1Xd1yRSOdYy9BpsrxU7R+eoDokChYM53lQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/scope-manager@8.27.0': - resolution: {integrity: sha512-8oI9GwPMQmBryaaxG1tOZdxXVeMDte6NyJA4i7/TWa4fBwgnAXYlIQP+uYOeqAaLJ2JRxlG9CAyL+C+YE9Xknw==} + '@typescript-eslint/scope-manager@8.28.0': + resolution: {integrity: sha512-u2oITX3BJwzWCapoZ/pXw6BCOl8rJP4Ij/3wPoGvY8XwvXflOzd1kLrDUUUAIEdJSFh+ASwdTHqtan9xSg8buw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@8.27.0': - resolution: {integrity: sha512-wVArTVcz1oJOIEJxui/nRhV0TXzD/zMSOYi/ggCfNq78EIszddXcJb7r4RCp/oBrjt8n9A0BSxRMKxHftpDxDA==} + '@typescript-eslint/type-utils@8.28.0': + resolution: {integrity: sha512-oRoXu2v0Rsy/VoOGhtWrOKDiIehvI+YNrDk5Oqj40Mwm0Yt01FC/Q7nFqg088d3yAsR1ZcZFVfPCTTFCe/KPwg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/types@8.27.0': - resolution: {integrity: sha512-/6cp9yL72yUHAYq9g6DsAU+vVfvQmd1a8KyA81uvfDE21O2DwQ/qxlM4AR8TSdAu+kJLBDrEHKC5/W2/nxsY0A==} + '@typescript-eslint/types@8.28.0': + resolution: {integrity: sha512-bn4WS1bkKEjx7HqiwG2JNB3YJdC1q6Ue7GyGlwPHyt0TnVq6TtD/hiOdTZt71sq0s7UzqBFXD8t8o2e63tXgwA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.27.0': - resolution: {integrity: sha512-BnKq8cqPVoMw71O38a1tEb6iebEgGA80icSxW7g+kndx0o6ot6696HjG7NdgfuAVmVEtwXUr3L8R9ZuVjoQL6A==} + '@typescript-eslint/typescript-estree@8.28.0': + resolution: {integrity: sha512-H74nHEeBGeklctAVUvmDkxB1mk+PAZ9FiOMPFncdqeRBXxk1lWSYraHw8V12b7aa6Sg9HOBNbGdSHobBPuQSuA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/utils@8.27.0': - resolution: {integrity: sha512-njkodcwH1yvmo31YWgRHNb/x1Xhhq4/m81PhtvmRngD8iHPehxffz1SNCO+kwaePhATC+kOa/ggmvPoPza5i0Q==} + '@typescript-eslint/utils@8.28.0': + resolution: {integrity: sha512-OELa9hbTYciYITqgurT1u/SzpQVtDLmQMFzy/N8pQE+tefOyCWT79jHsav294aTqV1q1u+VzqDGbuujvRYaeSQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/visitor-keys@8.27.0': - resolution: {integrity: sha512-WsXQwMkILJvffP6z4U3FYJPlbf/j07HIxmDjZpbNvBJkMfvwXj5ACRkkHwBDvLBbDbtX5TdU64/rcvKJ/vuInQ==} + '@typescript-eslint/visitor-keys@8.28.0': + resolution: {integrity: sha512-hbn8SZ8w4u2pRwgQ1GlUrPKE+t2XvcCW5tTRF7j6SMYIuYG37XuzIW44JCZPa36evi0Oy2SnM664BlIaAuQcvg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@unocss/astro@66.0.0': @@ -2069,8 +2069,8 @@ packages: resolution: {integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==} engines: {node: '>=8'} - typescript-eslint@8.27.0: - resolution: {integrity: sha512-ZZ/8+Y0rRUMuW1gJaPtLWe4ryHbsPLzzibk5Sq+IFa2aOH1Vo0gPr1fbA6pOnzBke7zC2Da4w8AyCgxKXo3lqA==} + typescript-eslint@8.28.0: + resolution: {integrity: sha512-jfZtxJoHm59bvoCMYCe2BM0/baMswRhMmYhy+w6VfcyHrjxZ0OJe0tGasydCpIpA+A/WIJhTyZfb3EtwNC/kHQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -2767,14 +2767,14 @@ snapshots: '@types/unist@2.0.11': {} - '@typescript-eslint/eslint-plugin@8.27.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/eslint-plugin@8.28.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/scope-manager': 8.27.0 - '@typescript-eslint/type-utils': 8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/utils': 8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/visitor-keys': 8.27.0 + '@typescript-eslint/parser': 8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/scope-manager': 8.28.0 + '@typescript-eslint/type-utils': 8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/visitor-keys': 8.28.0 eslint: 9.23.0(jiti@2.4.2) graphemer: 1.4.0 ignore: 5.3.2 @@ -2784,27 +2784,27 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/parser@8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: - '@typescript-eslint/scope-manager': 8.27.0 - '@typescript-eslint/types': 8.27.0 - '@typescript-eslint/typescript-estree': 8.27.0(typescript@5.8.2) - '@typescript-eslint/visitor-keys': 8.27.0 + '@typescript-eslint/scope-manager': 8.28.0 + '@typescript-eslint/types': 8.28.0 + '@typescript-eslint/typescript-estree': 8.28.0(typescript@5.8.2) + '@typescript-eslint/visitor-keys': 8.28.0 debug: 4.4.0(supports-color@8.1.1) eslint: 9.23.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@8.27.0': + '@typescript-eslint/scope-manager@8.28.0': dependencies: - '@typescript-eslint/types': 8.27.0 - '@typescript-eslint/visitor-keys': 8.27.0 + '@typescript-eslint/types': 8.28.0 + '@typescript-eslint/visitor-keys': 8.28.0 - '@typescript-eslint/type-utils@8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/type-utils@8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: - '@typescript-eslint/typescript-estree': 8.27.0(typescript@5.8.2) - '@typescript-eslint/utils': 8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/typescript-estree': 8.28.0(typescript@5.8.2) + '@typescript-eslint/utils': 8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) debug: 4.4.0(supports-color@8.1.1) eslint: 9.23.0(jiti@2.4.2) ts-api-utils: 2.0.1(typescript@5.8.2) @@ -2812,12 +2812,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/types@8.27.0': {} + '@typescript-eslint/types@8.28.0': {} - '@typescript-eslint/typescript-estree@8.27.0(typescript@5.8.2)': + '@typescript-eslint/typescript-estree@8.28.0(typescript@5.8.2)': dependencies: - '@typescript-eslint/types': 8.27.0 - '@typescript-eslint/visitor-keys': 8.27.0 + '@typescript-eslint/types': 8.28.0 + '@typescript-eslint/visitor-keys': 8.28.0 debug: 4.4.0(supports-color@8.1.1) fast-glob: 3.3.3 is-glob: 4.0.3 @@ -2828,20 +2828,20 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/utils@8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.23.0(jiti@2.4.2)) - '@typescript-eslint/scope-manager': 8.27.0 - '@typescript-eslint/types': 8.27.0 - '@typescript-eslint/typescript-estree': 8.27.0(typescript@5.8.2) + '@typescript-eslint/scope-manager': 8.28.0 + '@typescript-eslint/types': 8.28.0 + '@typescript-eslint/typescript-estree': 8.28.0(typescript@5.8.2) eslint: 9.23.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/visitor-keys@8.27.0': + '@typescript-eslint/visitor-keys@8.28.0': dependencies: - '@typescript-eslint/types': 8.27.0 + '@typescript-eslint/types': 8.28.0 eslint-visitor-keys: 4.2.0 '@unocss/astro@66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': @@ -4051,11 +4051,11 @@ snapshots: type-fest@0.7.1: {} - typescript-eslint@8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2): + typescript-eslint@8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2): dependencies: - '@typescript-eslint/eslint-plugin': 8.27.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/parser': 8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/utils': 8.27.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/eslint-plugin': 8.28.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/parser': 8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) eslint: 9.23.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: From 8ecb418a1a35d7f234dc5d833746ac2d8e062aec Mon Sep 17 00:00:00 2001 From: Tony <68118705+Legend-Master@users.noreply.github.com> Date: Tue, 25 Mar 2025 22:57:40 +0800 Subject: [PATCH 62/80] feat(auto-start): introduce a builder (#2569) * feat(auto-start): introduce a builder * Update examples * Fix missing end --- in change file * Fix missing self. * Update .changes/autostart-builder.md Co-authored-by: Amr Bashir --------- Co-authored-by: Amr Bashir --- .changes/autostart-builder.md | 6 + plugins/autostart/README.md | 4 +- .../autostart/permissions/schemas/schema.json | 4 +- plugins/autostart/src/lib.rs | 178 +++++++++++++----- .../permissions/schemas/schema.json | 4 +- .../biometric/permissions/schemas/schema.json | 4 +- plugins/cli/permissions/schemas/schema.json | 4 +- .../permissions/schemas/schema.json | 4 +- .../deep-link/permissions/schemas/schema.json | 4 +- .../dialog/permissions/schemas/schema.json | 4 +- plugins/fs/permissions/schemas/schema.json | 4 +- .../permissions/schemas/schema.json | 4 +- .../permissions/schemas/schema.json | 4 +- .../haptics/permissions/schemas/schema.json | 4 +- plugins/http/permissions/schemas/schema.json | 4 +- plugins/log/permissions/schemas/schema.json | 4 +- plugins/nfc/permissions/schemas/schema.json | 4 +- .../permissions/schemas/schema.json | 4 +- .../opener/permissions/schemas/schema.json | 4 +- plugins/os/permissions/schemas/schema.json | 4 +- .../permissions/schemas/schema.json | 4 +- .../process/permissions/schemas/schema.json | 4 +- plugins/shell/permissions/schemas/schema.json | 4 +- plugins/sql/permissions/schemas/schema.json | 4 +- plugins/store/permissions/schemas/schema.json | 4 +- .../permissions/schemas/schema.json | 4 +- .../updater/permissions/schemas/schema.json | 4 +- .../upload/permissions/schemas/schema.json | 4 +- .../websocket/permissions/schemas/schema.json | 4 +- .../permissions/schemas/schema.json | 4 +- 30 files changed, 188 insertions(+), 108 deletions(-) create mode 100644 .changes/autostart-builder.md diff --git a/.changes/autostart-builder.md b/.changes/autostart-builder.md new file mode 100644 index 00000000..2ba57749 --- /dev/null +++ b/.changes/autostart-builder.md @@ -0,0 +1,6 @@ +--- +autostart: minor +autostart-js: minor +--- + +Add a `Builder` for more flexible settings diff --git a/plugins/autostart/README.md b/plugins/autostart/README.md index 76d68f73..bae2802a 100644 --- a/plugins/autostart/README.md +++ b/plugins/autostart/README.md @@ -57,11 +57,9 @@ First you need to register the core plugin with Tauri: `src-tauri/src/lib.rs` ```rust -use tauri_plugin_autostart::MacosLauncher; - fn main() { tauri::Builder::default() - .plugin(tauri_plugin_autostart::init(MacosLauncher::LaunchAgent, Some(vec!["--flag1", "--flag2"]) /* arbitrary number of args to pass to your app */)) + .plugin(tauri_plugin_autostart::Builder::new().args((["--flag1", "--flag2"])).build())) .run(tauri::generate_context!()) .expect("error while running tauri application"); } diff --git a/plugins/autostart/permissions/schemas/schema.json b/plugins/autostart/permissions/schemas/schema.json index 59c81f52..defb923c 100644 --- a/plugins/autostart/permissions/schemas/schema.json +++ b/plugins/autostart/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/autostart/src/lib.rs b/plugins/autostart/src/lib.rs index 5550bfa1..83cac89c 100644 --- a/plugins/autostart/src/lib.rs +++ b/plugins/autostart/src/lib.rs @@ -14,7 +14,7 @@ use auto_launch::{AutoLaunch, AutoLaunchBuilder}; use serde::{ser::Serializer, Serialize}; use tauri::{ command, - plugin::{Builder, TauriPlugin}, + plugin::{Builder as PluginBuilder, TauriPlugin}, Manager, Runtime, State, }; @@ -22,8 +22,9 @@ use std::env::current_exe; type Result = std::result::Result; -#[derive(Debug, Copy, Clone)] +#[derive(Debug, Default, Copy, Clone)] pub enum MacosLauncher { + #[default] LaunchAgent, AppleScript, } @@ -71,10 +72,12 @@ impl AutoLaunchManager { } pub trait ManagerExt { + /// TODO: Rename these to `autostart` or `auto_start` in v3 fn autolaunch(&self) -> State<'_, AutoLaunchManager>; } impl> ManagerExt for T { + /// TODO: Rename these to `autostart` or `auto_start` in v3 fn autolaunch(&self) -> State<'_, AutoLaunchManager> { self.state::() } @@ -95,59 +98,132 @@ async fn is_enabled(manager: State<'_, AutoLaunchManager>) -> Result { manager.is_enabled() } +#[derive(Default)] +pub struct Builder { + #[cfg(target_os = "macos")] + macos_launcher: MacosLauncher, + args: Vec, +} + +impl Builder { + /// Create a new auto start builder with default settings + pub fn new() -> Self { + Self::default() + } + + /// Adds an argument to pass to your app on startup. + /// + /// ## Examples + /// + /// ```no_run + /// Builder::new() + /// .arg("--from-autostart") + /// .arg("--hey") + /// .build(); + /// ``` + pub fn arg>(mut self, arg: S) -> Self { + self.args.push(arg.into()); + self + } + + /// Adds multiple arguments to pass to your app on startup. + /// + /// ## Examples + /// + /// ```no_run + /// Builder::new() + /// .args(["--from-autostart", "--hey"]) + /// .build(); + /// ``` + pub fn args(mut self, args: I) -> Self + where + I: IntoIterator, + S: Into, + { + for arg in args { + self = self.arg(arg); + } + self + } + + /// Sets whether to use launch agent or apple script to be used to enable auto start, + /// the builder's default is [`MacosLauncher::LaunchAgent`] + #[cfg(target_os = "macos")] + pub fn macos_launcher(mut self, macos_launcher: MacosLauncher) -> Self { + self.macos_launcher = macos_launcher; + self + } + + pub fn build(self) -> TauriPlugin { + PluginBuilder::new("autostart") + .invoke_handler(tauri::generate_handler![enable, disable, is_enabled]) + .setup(move |app, _api| { + let mut builder = AutoLaunchBuilder::new(); + builder.set_app_name(&app.package_info().name); + builder.set_args(&self.args); + + let current_exe = current_exe()?; + + #[cfg(windows)] + builder.set_app_path(¤t_exe.display().to_string()); + + #[cfg(target_os = "macos")] + { + builder.set_use_launch_agent(matches!( + self.macos_launcher, + MacosLauncher::LaunchAgent + )); + // on macOS, current_exe gives path to /Applications/Example.app/MacOS/Example + // but this results in seeing a Unix Executable in macOS login items + // It must be: /Applications/Example.app + // If it didn't find exactly a single occurance of .app, it will default to + // exe path to not break it. + let exe_path = current_exe.canonicalize()?.display().to_string(); + let parts: Vec<&str> = exe_path.split(".app/").collect(); + let app_path = if parts.len() == 2 + && matches!(self.macos_launcher, MacosLauncher::AppleScript) + { + format!("{}.app", parts.first().unwrap()) + } else { + exe_path + }; + builder.set_app_path(&app_path); + } + + #[cfg(target_os = "linux")] + if let Some(appimage) = app + .env() + .appimage + .and_then(|p| p.to_str().map(|s| s.to_string())) + { + builder.set_app_path(&appimage); + } else { + builder.set_app_path(¤t_exe.display().to_string()); + } + + app.manage(AutoLaunchManager( + builder.build().map_err(|e| e.to_string())?, + )); + Ok(()) + }) + .build() + } +} + /// Initializes the plugin. /// /// `args` - are passed to your app on startup. pub fn init( - macos_launcher: MacosLauncher, + #[allow(unused)] macos_launcher: MacosLauncher, args: Option>, ) -> TauriPlugin { - Builder::new("autostart") - .invoke_handler(tauri::generate_handler![enable, disable, is_enabled]) - .setup(move |app, _api| { - let mut builder = AutoLaunchBuilder::new(); - builder.set_app_name(&app.package_info().name); - if let Some(args) = args { - builder.set_args(&args); - } - builder.set_use_launch_agent(matches!(macos_launcher, MacosLauncher::LaunchAgent)); - - let current_exe = current_exe()?; - - #[cfg(windows)] - builder.set_app_path(¤t_exe.display().to_string()); - #[cfg(target_os = "macos")] - { - // on macOS, current_exe gives path to /Applications/Example.app/MacOS/Example - // but this results in seeing a Unix Executable in macOS login items - // It must be: /Applications/Example.app - // If it didn't find exactly a single occurance of .app, it will default to - // exe path to not break it. - let exe_path = current_exe.canonicalize()?.display().to_string(); - let parts: Vec<&str> = exe_path.split(".app/").collect(); - let app_path = - if parts.len() == 2 && matches!(macos_launcher, MacosLauncher::AppleScript) { - format!("{}.app", parts.first().unwrap()) - } else { - exe_path - }; - builder.set_app_path(&app_path); - } - #[cfg(target_os = "linux")] - if let Some(appimage) = app - .env() - .appimage - .and_then(|p| p.to_str().map(|s| s.to_string())) - { - builder.set_app_path(&appimage); - } else { - builder.set_app_path(¤t_exe.display().to_string()); - } - - app.manage(AutoLaunchManager( - builder.build().map_err(|e| e.to_string())?, - )); - Ok(()) - }) - .build() + let mut builder = Builder::new(); + if let Some(args) = args { + builder = builder.args(args) + } + #[cfg(target_os = "macos")] + { + builder = builder.macos_launcher(macos_launcher); + } + builder.build() } diff --git a/plugins/barcode-scanner/permissions/schemas/schema.json b/plugins/barcode-scanner/permissions/schemas/schema.json index f41214b4..dc2ab019 100644 --- a/plugins/barcode-scanner/permissions/schemas/schema.json +++ b/plugins/barcode-scanner/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/biometric/permissions/schemas/schema.json b/plugins/biometric/permissions/schemas/schema.json index cc4d04d5..891877b6 100644 --- a/plugins/biometric/permissions/schemas/schema.json +++ b/plugins/biometric/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/cli/permissions/schemas/schema.json b/plugins/cli/permissions/schemas/schema.json index b376890e..fb1ec637 100644 --- a/plugins/cli/permissions/schemas/schema.json +++ b/plugins/cli/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/clipboard-manager/permissions/schemas/schema.json b/plugins/clipboard-manager/permissions/schemas/schema.json index c2763492..7e23e9a3 100644 --- a/plugins/clipboard-manager/permissions/schemas/schema.json +++ b/plugins/clipboard-manager/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/deep-link/permissions/schemas/schema.json b/plugins/deep-link/permissions/schemas/schema.json index 7d887dc2..1c96c7d5 100644 --- a/plugins/deep-link/permissions/schemas/schema.json +++ b/plugins/deep-link/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/dialog/permissions/schemas/schema.json b/plugins/dialog/permissions/schemas/schema.json index ed8c0733..4fa8bdf3 100644 --- a/plugins/dialog/permissions/schemas/schema.json +++ b/plugins/dialog/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/fs/permissions/schemas/schema.json b/plugins/fs/permissions/schemas/schema.json index 2c13d5c6..e8706b04 100644 --- a/plugins/fs/permissions/schemas/schema.json +++ b/plugins/fs/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/geolocation/permissions/schemas/schema.json b/plugins/geolocation/permissions/schemas/schema.json index 4474ec6b..fe0129bb 100644 --- a/plugins/geolocation/permissions/schemas/schema.json +++ b/plugins/geolocation/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/global-shortcut/permissions/schemas/schema.json b/plugins/global-shortcut/permissions/schemas/schema.json index 66b92b07..6270e7f3 100644 --- a/plugins/global-shortcut/permissions/schemas/schema.json +++ b/plugins/global-shortcut/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/haptics/permissions/schemas/schema.json b/plugins/haptics/permissions/schemas/schema.json index 763e0a72..889da78f 100644 --- a/plugins/haptics/permissions/schemas/schema.json +++ b/plugins/haptics/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/http/permissions/schemas/schema.json b/plugins/http/permissions/schemas/schema.json index 794ee204..9b6ce6dd 100644 --- a/plugins/http/permissions/schemas/schema.json +++ b/plugins/http/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/log/permissions/schemas/schema.json b/plugins/log/permissions/schemas/schema.json index 78d88826..547d1fd8 100644 --- a/plugins/log/permissions/schemas/schema.json +++ b/plugins/log/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/nfc/permissions/schemas/schema.json b/plugins/nfc/permissions/schemas/schema.json index 5fe3743c..69b4eb23 100644 --- a/plugins/nfc/permissions/schemas/schema.json +++ b/plugins/nfc/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/notification/permissions/schemas/schema.json b/plugins/notification/permissions/schemas/schema.json index 433f367f..4c50cde6 100644 --- a/plugins/notification/permissions/schemas/schema.json +++ b/plugins/notification/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/opener/permissions/schemas/schema.json b/plugins/opener/permissions/schemas/schema.json index b958ac63..4f289a93 100644 --- a/plugins/opener/permissions/schemas/schema.json +++ b/plugins/opener/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/os/permissions/schemas/schema.json b/plugins/os/permissions/schemas/schema.json index ad053532..ad3317c7 100644 --- a/plugins/os/permissions/schemas/schema.json +++ b/plugins/os/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/positioner/permissions/schemas/schema.json b/plugins/positioner/permissions/schemas/schema.json index ccf55156..4b1d9221 100644 --- a/plugins/positioner/permissions/schemas/schema.json +++ b/plugins/positioner/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/process/permissions/schemas/schema.json b/plugins/process/permissions/schemas/schema.json index 95f67149..1818871e 100644 --- a/plugins/process/permissions/schemas/schema.json +++ b/plugins/process/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/shell/permissions/schemas/schema.json b/plugins/shell/permissions/schemas/schema.json index e70c3926..ff343467 100644 --- a/plugins/shell/permissions/schemas/schema.json +++ b/plugins/shell/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/sql/permissions/schemas/schema.json b/plugins/sql/permissions/schemas/schema.json index e3add537..241cf33c 100644 --- a/plugins/sql/permissions/schemas/schema.json +++ b/plugins/sql/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/store/permissions/schemas/schema.json b/plugins/store/permissions/schemas/schema.json index 4237bc62..d3cfc815 100644 --- a/plugins/store/permissions/schemas/schema.json +++ b/plugins/store/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/stronghold/permissions/schemas/schema.json b/plugins/stronghold/permissions/schemas/schema.json index 5657e9bb..c7781f1f 100644 --- a/plugins/stronghold/permissions/schemas/schema.json +++ b/plugins/stronghold/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/updater/permissions/schemas/schema.json b/plugins/updater/permissions/schemas/schema.json index 2df800da..8264f3e1 100644 --- a/plugins/updater/permissions/schemas/schema.json +++ b/plugins/updater/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/upload/permissions/schemas/schema.json b/plugins/upload/permissions/schemas/schema.json index abe3a09f..1d8d9c4a 100644 --- a/plugins/upload/permissions/schemas/schema.json +++ b/plugins/upload/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/websocket/permissions/schemas/schema.json b/plugins/websocket/permissions/schemas/schema.json index 9f574650..989d0159 100644 --- a/plugins/websocket/permissions/schemas/schema.json +++ b/plugins/websocket/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" diff --git a/plugins/window-state/permissions/schemas/schema.json b/plugins/window-state/permissions/schemas/schema.json index 67888bc6..b94c2573 100644 --- a/plugins/window-state/permissions/schemas/schema.json +++ b/plugins/window-state/permissions/schemas/schema.json @@ -49,7 +49,7 @@ "minimum": 1.0 }, "description": { - "description": "Human-readable description of what the permission does. Tauri convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" @@ -111,7 +111,7 @@ "type": "string" }, "description": { - "description": "Human-readable description of what the permission does. Tauri internal convention is to use

headings in markdown content for Tauri documentation generation purposes.", + "description": "Human-readable description of what the permission does. Tauri internal convention is to use `

` headings in markdown content for Tauri documentation generation purposes.", "type": [ "string", "null" From 517a29a1a112658f63ab55ef540f5b9e58ee6d3f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 25 Mar 2025 23:19:24 +0800 Subject: [PATCH 63/80] chore(deps): update dependency vite to v6.2.3 [security] (#2570) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 290 ++++++++++++++++++++++++------------------------- 1 file changed, 145 insertions(+), 145 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1a5dd746..55b73217 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -122,7 +122,7 @@ importers: version: 1.2.2 '@sveltejs/vite-plugin-svelte': specifier: ^5.0.3 - version: 5.0.3(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) + version: 5.0.3(svelte@5.20.4)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) '@tauri-apps/cli': specifier: 2.4.0 version: 2.4.0 @@ -134,10 +134,10 @@ importers: version: 5.20.4 unocss: specifier: ^66.0.0 - version: 66.0.0(postcss@8.5.3)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) + version: 66.0.0(postcss@8.5.3)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) vite: specifier: ^6.2.0 - version: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + version: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) plugins/autostart: dependencies: @@ -192,7 +192,7 @@ importers: version: 5.8.2 vite: specifier: ^6.2.0 - version: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + version: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) plugins/dialog: dependencies: @@ -306,7 +306,7 @@ importers: version: 5.8.2 vite: specifier: ^6.2.0 - version: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + version: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) plugins/stronghold: dependencies: @@ -346,7 +346,7 @@ importers: version: 5.8.2 vite: specifier: ^6.2.0 - version: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + version: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) plugins/window-state: dependencies: @@ -374,13 +374,13 @@ packages: resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} engines: {node: '>=6.9.0'} - '@babel/parser@7.26.9': - resolution: {integrity: sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A==} + '@babel/parser@7.27.0': + resolution: {integrity: sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/types@7.26.9': - resolution: {integrity: sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==} + '@babel/types@7.27.0': + resolution: {integrity: sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==} engines: {node: '>=6.9.0'} '@chainsafe/abort-controller@3.0.1': @@ -443,152 +443,152 @@ packages: '@effection/subscription@2.0.6': resolution: {integrity: sha512-znTi75JFyC1S0YjyTtFEWNRQbhk01UxOapWELlIkZOwjGIEjcx6+G8y6n9JpZ8OGKmJQ0GBlRMZozsR5gcQvBg==} - '@esbuild/aix-ppc64@0.25.0': - resolution: {integrity: sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ==} + '@esbuild/aix-ppc64@0.25.1': + resolution: {integrity: sha512-kfYGy8IdzTGy+z0vFGvExZtxkFlA4zAxgKEahG9KE1ScBjpQnFsNOX8KTU5ojNru5ed5CVoJYXFtoxaq5nFbjQ==} engines: {node: '>=18'} cpu: [ppc64] os: [aix] - '@esbuild/android-arm64@0.25.0': - resolution: {integrity: sha512-grvv8WncGjDSyUBjN9yHXNt+cq0snxXbDxy5pJtzMKGmmpPxeAmAhWxXI+01lU5rwZomDgD3kJwulEnhTRUd6g==} + '@esbuild/android-arm64@0.25.1': + resolution: {integrity: sha512-50tM0zCJW5kGqgG7fQ7IHvQOcAn9TKiVRuQ/lN0xR+T2lzEFvAi1ZcS8DiksFcEpf1t/GYOeOfCAgDHFpkiSmA==} engines: {node: '>=18'} cpu: [arm64] os: [android] - '@esbuild/android-arm@0.25.0': - resolution: {integrity: sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g==} + '@esbuild/android-arm@0.25.1': + resolution: {integrity: sha512-dp+MshLYux6j/JjdqVLnMglQlFu+MuVeNrmT5nk6q07wNhCdSnB7QZj+7G8VMUGh1q+vj2Bq8kRsuyA00I/k+Q==} engines: {node: '>=18'} cpu: [arm] os: [android] - '@esbuild/android-x64@0.25.0': - resolution: {integrity: sha512-m/ix7SfKG5buCnxasr52+LI78SQ+wgdENi9CqyCXwjVR2X4Jkz+BpC3le3AoBPYTC9NHklwngVXvbJ9/Akhrfg==} + '@esbuild/android-x64@0.25.1': + resolution: {integrity: sha512-GCj6WfUtNldqUzYkN/ITtlhwQqGWu9S45vUXs7EIYf+7rCiiqH9bCloatO9VhxsL0Pji+PF4Lz2XXCES+Q8hDw==} engines: {node: '>=18'} cpu: [x64] os: [android] - '@esbuild/darwin-arm64@0.25.0': - resolution: {integrity: sha512-mVwdUb5SRkPayVadIOI78K7aAnPamoeFR2bT5nszFUZ9P8UpK4ratOdYbZZXYSqPKMHfS1wdHCJk1P1EZpRdvw==} + '@esbuild/darwin-arm64@0.25.1': + resolution: {integrity: sha512-5hEZKPf+nQjYoSr/elb62U19/l1mZDdqidGfmFutVUjjUZrOazAtwK+Kr+3y0C/oeJfLlxo9fXb1w7L+P7E4FQ==} engines: {node: '>=18'} cpu: [arm64] os: [darwin] - '@esbuild/darwin-x64@0.25.0': - resolution: {integrity: sha512-DgDaYsPWFTS4S3nWpFcMn/33ZZwAAeAFKNHNa1QN0rI4pUjgqf0f7ONmXf6d22tqTY+H9FNdgeaAa+YIFUn2Rg==} + '@esbuild/darwin-x64@0.25.1': + resolution: {integrity: sha512-hxVnwL2Dqs3fM1IWq8Iezh0cX7ZGdVhbTfnOy5uURtao5OIVCEyj9xIzemDi7sRvKsuSdtCAhMKarxqtlyVyfA==} engines: {node: '>=18'} cpu: [x64] os: [darwin] - '@esbuild/freebsd-arm64@0.25.0': - resolution: {integrity: sha512-VN4ocxy6dxefN1MepBx/iD1dH5K8qNtNe227I0mnTRjry8tj5MRk4zprLEdG8WPyAPb93/e4pSgi1SoHdgOa4w==} + '@esbuild/freebsd-arm64@0.25.1': + resolution: {integrity: sha512-1MrCZs0fZa2g8E+FUo2ipw6jw5qqQiH+tERoS5fAfKnRx6NXH31tXBKI3VpmLijLH6yriMZsxJtaXUyFt/8Y4A==} engines: {node: '>=18'} cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-x64@0.25.0': - resolution: {integrity: sha512-mrSgt7lCh07FY+hDD1TxiTyIHyttn6vnjesnPoVDNmDfOmggTLXRv8Id5fNZey1gl/V2dyVK1VXXqVsQIiAk+A==} + '@esbuild/freebsd-x64@0.25.1': + resolution: {integrity: sha512-0IZWLiTyz7nm0xuIs0q1Y3QWJC52R8aSXxe40VUxm6BB1RNmkODtW6LHvWRrGiICulcX7ZvyH6h5fqdLu4gkww==} engines: {node: '>=18'} cpu: [x64] os: [freebsd] - '@esbuild/linux-arm64@0.25.0': - resolution: {integrity: sha512-9QAQjTWNDM/Vk2bgBl17yWuZxZNQIF0OUUuPZRKoDtqF2k4EtYbpyiG5/Dk7nqeK6kIJWPYldkOcBqjXjrUlmg==} + '@esbuild/linux-arm64@0.25.1': + resolution: {integrity: sha512-jaN3dHi0/DDPelk0nLcXRm1q7DNJpjXy7yWaWvbfkPvI+7XNSc/lDOnCLN7gzsyzgu6qSAmgSvP9oXAhP973uQ==} engines: {node: '>=18'} cpu: [arm64] os: [linux] - '@esbuild/linux-arm@0.25.0': - resolution: {integrity: sha512-vkB3IYj2IDo3g9xX7HqhPYxVkNQe8qTK55fraQyTzTX/fxaDtXiEnavv9geOsonh2Fd2RMB+i5cbhu2zMNWJwg==} + '@esbuild/linux-arm@0.25.1': + resolution: {integrity: sha512-NdKOhS4u7JhDKw9G3cY6sWqFcnLITn6SqivVArbzIaf3cemShqfLGHYMx8Xlm/lBit3/5d7kXvriTUGa5YViuQ==} engines: {node: '>=18'} cpu: [arm] os: [linux] - '@esbuild/linux-ia32@0.25.0': - resolution: {integrity: sha512-43ET5bHbphBegyeqLb7I1eYn2P/JYGNmzzdidq/w0T8E2SsYL1U6un2NFROFRg1JZLTzdCoRomg8Rvf9M6W6Gg==} + '@esbuild/linux-ia32@0.25.1': + resolution: {integrity: sha512-OJykPaF4v8JidKNGz8c/q1lBO44sQNUQtq1KktJXdBLn1hPod5rE/Hko5ugKKZd+D2+o1a9MFGUEIUwO2YfgkQ==} engines: {node: '>=18'} cpu: [ia32] os: [linux] - '@esbuild/linux-loong64@0.25.0': - resolution: {integrity: sha512-fC95c/xyNFueMhClxJmeRIj2yrSMdDfmqJnyOY4ZqsALkDrrKJfIg5NTMSzVBr5YW1jf+l7/cndBfP3MSDpoHw==} + '@esbuild/linux-loong64@0.25.1': + resolution: {integrity: sha512-nGfornQj4dzcq5Vp835oM/o21UMlXzn79KobKlcs3Wz9smwiifknLy4xDCLUU0BWp7b/houtdrgUz7nOGnfIYg==} engines: {node: '>=18'} cpu: [loong64] os: [linux] - '@esbuild/linux-mips64el@0.25.0': - resolution: {integrity: sha512-nkAMFju7KDW73T1DdH7glcyIptm95a7Le8irTQNO/qtkoyypZAnjchQgooFUDQhNAy4iu08N79W4T4pMBwhPwQ==} + '@esbuild/linux-mips64el@0.25.1': + resolution: {integrity: sha512-1osBbPEFYwIE5IVB/0g2X6i1qInZa1aIoj1TdL4AaAb55xIIgbg8Doq6a5BzYWgr+tEcDzYH67XVnTmUzL+nXg==} engines: {node: '>=18'} cpu: [mips64el] os: [linux] - '@esbuild/linux-ppc64@0.25.0': - resolution: {integrity: sha512-NhyOejdhRGS8Iwv+KKR2zTq2PpysF9XqY+Zk77vQHqNbo/PwZCzB5/h7VGuREZm1fixhs4Q/qWRSi5zmAiO4Fw==} + '@esbuild/linux-ppc64@0.25.1': + resolution: {integrity: sha512-/6VBJOwUf3TdTvJZ82qF3tbLuWsscd7/1w+D9LH0W/SqUgM5/JJD0lrJ1fVIfZsqB6RFmLCe0Xz3fmZc3WtyVg==} engines: {node: '>=18'} cpu: [ppc64] os: [linux] - '@esbuild/linux-riscv64@0.25.0': - resolution: {integrity: sha512-5S/rbP5OY+GHLC5qXp1y/Mx//e92L1YDqkiBbO9TQOvuFXM+iDqUNG5XopAnXoRH3FjIUDkeGcY1cgNvnXp/kA==} + '@esbuild/linux-riscv64@0.25.1': + resolution: {integrity: sha512-nSut/Mx5gnilhcq2yIMLMe3Wl4FK5wx/o0QuuCLMtmJn+WeWYoEGDN1ipcN72g1WHsnIbxGXd4i/MF0gTcuAjQ==} engines: {node: '>=18'} cpu: [riscv64] os: [linux] - '@esbuild/linux-s390x@0.25.0': - resolution: {integrity: sha512-XM2BFsEBz0Fw37V0zU4CXfcfuACMrppsMFKdYY2WuTS3yi8O1nFOhil/xhKTmE1nPmVyvQJjJivgDT+xh8pXJA==} + '@esbuild/linux-s390x@0.25.1': + resolution: {integrity: sha512-cEECeLlJNfT8kZHqLarDBQso9a27o2Zd2AQ8USAEoGtejOrCYHNtKP8XQhMDJMtthdF4GBmjR2au3x1udADQQQ==} engines: {node: '>=18'} cpu: [s390x] os: [linux] - '@esbuild/linux-x64@0.25.0': - resolution: {integrity: sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw==} + '@esbuild/linux-x64@0.25.1': + resolution: {integrity: sha512-xbfUhu/gnvSEg+EGovRc+kjBAkrvtk38RlerAzQxvMzlB4fXpCFCeUAYzJvrnhFtdeyVCDANSjJvOvGYoeKzFA==} engines: {node: '>=18'} cpu: [x64] os: [linux] - '@esbuild/netbsd-arm64@0.25.0': - resolution: {integrity: sha512-RuG4PSMPFfrkH6UwCAqBzauBWTygTvb1nxWasEJooGSJ/NwRw7b2HOwyRTQIU97Hq37l3npXoZGYMy3b3xYvPw==} + '@esbuild/netbsd-arm64@0.25.1': + resolution: {integrity: sha512-O96poM2XGhLtpTh+s4+nP7YCCAfb4tJNRVZHfIE7dgmax+yMP2WgMd2OecBuaATHKTHsLWHQeuaxMRnCsH8+5g==} engines: {node: '>=18'} cpu: [arm64] os: [netbsd] - '@esbuild/netbsd-x64@0.25.0': - resolution: {integrity: sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA==} + '@esbuild/netbsd-x64@0.25.1': + resolution: {integrity: sha512-X53z6uXip6KFXBQ+Krbx25XHV/NCbzryM6ehOAeAil7X7oa4XIq+394PWGnwaSQ2WRA0KI6PUO6hTO5zeF5ijA==} engines: {node: '>=18'} cpu: [x64] os: [netbsd] - '@esbuild/openbsd-arm64@0.25.0': - resolution: {integrity: sha512-21sUNbq2r84YE+SJDfaQRvdgznTD8Xc0oc3p3iW/a1EVWeNj/SdUCbm5U0itZPQYRuRTW20fPMWMpcrciH2EJw==} + '@esbuild/openbsd-arm64@0.25.1': + resolution: {integrity: sha512-Na9T3szbXezdzM/Kfs3GcRQNjHzM6GzFBeU1/6IV/npKP5ORtp9zbQjvkDJ47s6BCgaAZnnnu/cY1x342+MvZg==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] - '@esbuild/openbsd-x64@0.25.0': - resolution: {integrity: sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg==} + '@esbuild/openbsd-x64@0.25.1': + resolution: {integrity: sha512-T3H78X2h1tszfRSf+txbt5aOp/e7TAz3ptVKu9Oyir3IAOFPGV6O9c2naym5TOriy1l0nNf6a4X5UXRZSGX/dw==} engines: {node: '>=18'} cpu: [x64] os: [openbsd] - '@esbuild/sunos-x64@0.25.0': - resolution: {integrity: sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg==} + '@esbuild/sunos-x64@0.25.1': + resolution: {integrity: sha512-2H3RUvcmULO7dIE5EWJH8eubZAI4xw54H1ilJnRNZdeo8dTADEZ21w6J22XBkXqGJbe0+wnNJtw3UXRoLJnFEg==} engines: {node: '>=18'} cpu: [x64] os: [sunos] - '@esbuild/win32-arm64@0.25.0': - resolution: {integrity: sha512-ZUAc2YK6JW89xTbXvftxdnYy3m4iHIkDtK3CLce8wg8M2L+YZhIvO1DKpxrd0Yr59AeNNkTiic9YLf6FTtXWMw==} + '@esbuild/win32-arm64@0.25.1': + resolution: {integrity: sha512-GE7XvrdOzrb+yVKB9KsRMq+7a2U/K5Cf/8grVFRAGJmfADr/e/ODQ134RK2/eeHqYV5eQRFxb1hY7Nr15fv1NQ==} engines: {node: '>=18'} cpu: [arm64] os: [win32] - '@esbuild/win32-ia32@0.25.0': - resolution: {integrity: sha512-eSNxISBu8XweVEWG31/JzjkIGbGIJN/TrRoiSVZwZ6pkC6VX4Im/WV2cz559/TXLcYbcrDN8JtKgd9DJVIo8GA==} + '@esbuild/win32-ia32@0.25.1': + resolution: {integrity: sha512-uOxSJCIcavSiT6UnBhBzE8wy3n0hOkJsBOzy7HDAuTDE++1DJMRRVCPGisULScHL+a/ZwdXPpXD3IyFKjA7K8A==} engines: {node: '>=18'} cpu: [ia32] os: [win32] - '@esbuild/win32-x64@0.25.0': - resolution: {integrity: sha512-ZENoHJBxA20C2zFzh6AI4fT6RraMzjYw4xKWemRTRmRVtN9c5DcH9r/f2ihEkMjOW5eGgrwCslG/+Y/3bL+DHQ==} + '@esbuild/win32-x64@0.25.1': + resolution: {integrity: sha512-Y1EQdcfwMSeQN/ujR5VayLOJ1BHaK+ssyk0AEzPjC+t1lITgsnccPqFjb6V+LsTp/9Iov4ysfjxLaGJ9RPtkVg==} engines: {node: '>=18'} cpu: [x64] os: [win32] @@ -1331,8 +1331,8 @@ packages: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} - esbuild@0.25.0: - resolution: {integrity: sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw==} + esbuild@0.25.1: + resolution: {integrity: sha512-BGO5LtrGC7vxnqucAe/rmvKdJllfGaYWdyABvyMoXQlfYMb2bbRuReWR5tEGE//4LcNJj9XrkovTqNYRFZHAMQ==} engines: {node: '>=18'} hasBin: true @@ -1728,8 +1728,8 @@ packages: ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - nanoid@3.3.8: - resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} + nanoid@3.3.11: + resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true @@ -2118,8 +2118,8 @@ packages: vfile@4.2.1: resolution: {integrity: sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==} - vite@6.2.0: - resolution: {integrity: sha512-7dPxoo+WsT/64rDcwoOjk76XHj+TqNTIvHKcuMQ1k4/SeHDaQt5GFAeLYzrimZrMpn/O6DtdI03WUjdxuPM0oQ==} + vite@6.2.3: + resolution: {integrity: sha512-IzwM54g4y9JA/xAeBPNaDXiBF8Jsgl3VBQ2YQ/wOY6fyW3xMdSoltIV3Bo59DErdqdE6RxUfv8W69DvUorE4Eg==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true peerDependencies: @@ -2265,11 +2265,11 @@ snapshots: '@babel/helper-validator-identifier@7.25.9': {} - '@babel/parser@7.26.9': + '@babel/parser@7.27.0': dependencies: - '@babel/types': 7.26.9 + '@babel/types': 7.27.0 - '@babel/types@7.26.9': + '@babel/types@7.27.0': dependencies: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 @@ -2398,79 +2398,79 @@ snapshots: dependencies: '@effection/core': 2.2.3 - '@esbuild/aix-ppc64@0.25.0': + '@esbuild/aix-ppc64@0.25.1': optional: true - '@esbuild/android-arm64@0.25.0': + '@esbuild/android-arm64@0.25.1': optional: true - '@esbuild/android-arm@0.25.0': + '@esbuild/android-arm@0.25.1': optional: true - '@esbuild/android-x64@0.25.0': + '@esbuild/android-x64@0.25.1': optional: true - '@esbuild/darwin-arm64@0.25.0': + '@esbuild/darwin-arm64@0.25.1': optional: true - '@esbuild/darwin-x64@0.25.0': + '@esbuild/darwin-x64@0.25.1': optional: true - '@esbuild/freebsd-arm64@0.25.0': + '@esbuild/freebsd-arm64@0.25.1': optional: true - '@esbuild/freebsd-x64@0.25.0': + '@esbuild/freebsd-x64@0.25.1': optional: true - '@esbuild/linux-arm64@0.25.0': + '@esbuild/linux-arm64@0.25.1': optional: true - '@esbuild/linux-arm@0.25.0': + '@esbuild/linux-arm@0.25.1': optional: true - '@esbuild/linux-ia32@0.25.0': + '@esbuild/linux-ia32@0.25.1': optional: true - '@esbuild/linux-loong64@0.25.0': + '@esbuild/linux-loong64@0.25.1': optional: true - '@esbuild/linux-mips64el@0.25.0': + '@esbuild/linux-mips64el@0.25.1': optional: true - '@esbuild/linux-ppc64@0.25.0': + '@esbuild/linux-ppc64@0.25.1': optional: true - '@esbuild/linux-riscv64@0.25.0': + '@esbuild/linux-riscv64@0.25.1': optional: true - '@esbuild/linux-s390x@0.25.0': + '@esbuild/linux-s390x@0.25.1': optional: true - '@esbuild/linux-x64@0.25.0': + '@esbuild/linux-x64@0.25.1': optional: true - '@esbuild/netbsd-arm64@0.25.0': + '@esbuild/netbsd-arm64@0.25.1': optional: true - '@esbuild/netbsd-x64@0.25.0': + '@esbuild/netbsd-x64@0.25.1': optional: true - '@esbuild/openbsd-arm64@0.25.0': + '@esbuild/openbsd-arm64@0.25.1': optional: true - '@esbuild/openbsd-x64@0.25.0': + '@esbuild/openbsd-x64@0.25.1': optional: true - '@esbuild/sunos-x64@0.25.0': + '@esbuild/sunos-x64@0.25.1': optional: true - '@esbuild/win32-arm64@0.25.0': + '@esbuild/win32-arm64@0.25.1': optional: true - '@esbuild/win32-ia32@0.25.0': + '@esbuild/win32-ia32@0.25.1': optional: true - '@esbuild/win32-x64@0.25.0': + '@esbuild/win32-x64@0.25.1': optional: true '@eslint-community/eslint-utils@4.4.1(eslint@9.23.0(jiti@2.4.2))': @@ -2684,25 +2684,25 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.37.0': optional: true - '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)))(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))': + '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)))(svelte@5.20.4)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))': dependencies: - '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) + '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.4)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) debug: 4.4.0(supports-color@8.1.1) svelte: 5.20.4 - vite: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + vite: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) transitivePeerDependencies: - supports-color - '@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))': + '@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))': dependencies: - '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)))(svelte@5.20.4)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) + '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)))(svelte@5.20.4)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) debug: 4.4.0(supports-color@8.1.1) deepmerge: 4.3.1 kleur: 4.1.5 magic-string: 0.30.17 svelte: 5.20.4 - vite: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) - vitefu: 1.0.6(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) + vite: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + vitefu: 1.0.6(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) transitivePeerDependencies: - supports-color @@ -2844,13 +2844,13 @@ snapshots: '@typescript-eslint/types': 8.28.0 eslint-visitor-keys: 4.2.0 - '@unocss/astro@66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': + '@unocss/astro@66.0.0(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': dependencies: '@unocss/core': 66.0.0 '@unocss/reset': 66.0.0 - '@unocss/vite': 66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) + '@unocss/vite': 66.0.0(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) optionalDependencies: - vite: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + vite: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) transitivePeerDependencies: - vue @@ -2977,7 +2977,7 @@ snapshots: dependencies: '@unocss/core': 66.0.0 - '@unocss/vite@66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': + '@unocss/vite@66.0.0(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': dependencies: '@ampproject/remapping': 2.3.0 '@unocss/config': 66.0.0 @@ -2987,13 +2987,13 @@ snapshots: magic-string: 0.30.17 tinyglobby: 0.2.12 unplugin-utils: 0.2.4 - vite: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + vite: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) transitivePeerDependencies: - vue '@vue/compiler-core@3.5.13': dependencies: - '@babel/parser': 7.26.9 + '@babel/parser': 7.27.0 '@vue/shared': 3.5.13 entities: 4.5.0 estree-walker: 2.0.2 @@ -3006,7 +3006,7 @@ snapshots: '@vue/compiler-sfc@3.5.13': dependencies: - '@babel/parser': 7.26.9 + '@babel/parser': 7.27.0 '@vue/compiler-core': 3.5.13 '@vue/compiler-dom': 3.5.13 '@vue/compiler-ssr': 3.5.13 @@ -3265,33 +3265,33 @@ snapshots: entities@4.5.0: {} - esbuild@0.25.0: + esbuild@0.25.1: optionalDependencies: - '@esbuild/aix-ppc64': 0.25.0 - '@esbuild/android-arm': 0.25.0 - '@esbuild/android-arm64': 0.25.0 - '@esbuild/android-x64': 0.25.0 - '@esbuild/darwin-arm64': 0.25.0 - '@esbuild/darwin-x64': 0.25.0 - '@esbuild/freebsd-arm64': 0.25.0 - '@esbuild/freebsd-x64': 0.25.0 - '@esbuild/linux-arm': 0.25.0 - '@esbuild/linux-arm64': 0.25.0 - '@esbuild/linux-ia32': 0.25.0 - '@esbuild/linux-loong64': 0.25.0 - '@esbuild/linux-mips64el': 0.25.0 - '@esbuild/linux-ppc64': 0.25.0 - '@esbuild/linux-riscv64': 0.25.0 - '@esbuild/linux-s390x': 0.25.0 - '@esbuild/linux-x64': 0.25.0 - '@esbuild/netbsd-arm64': 0.25.0 - '@esbuild/netbsd-x64': 0.25.0 - '@esbuild/openbsd-arm64': 0.25.0 - '@esbuild/openbsd-x64': 0.25.0 - '@esbuild/sunos-x64': 0.25.0 - '@esbuild/win32-arm64': 0.25.0 - '@esbuild/win32-ia32': 0.25.0 - '@esbuild/win32-x64': 0.25.0 + '@esbuild/aix-ppc64': 0.25.1 + '@esbuild/android-arm': 0.25.1 + '@esbuild/android-arm64': 0.25.1 + '@esbuild/android-x64': 0.25.1 + '@esbuild/darwin-arm64': 0.25.1 + '@esbuild/darwin-x64': 0.25.1 + '@esbuild/freebsd-arm64': 0.25.1 + '@esbuild/freebsd-x64': 0.25.1 + '@esbuild/linux-arm': 0.25.1 + '@esbuild/linux-arm64': 0.25.1 + '@esbuild/linux-ia32': 0.25.1 + '@esbuild/linux-loong64': 0.25.1 + '@esbuild/linux-mips64el': 0.25.1 + '@esbuild/linux-ppc64': 0.25.1 + '@esbuild/linux-riscv64': 0.25.1 + '@esbuild/linux-s390x': 0.25.1 + '@esbuild/linux-x64': 0.25.1 + '@esbuild/netbsd-arm64': 0.25.1 + '@esbuild/netbsd-x64': 0.25.1 + '@esbuild/openbsd-arm64': 0.25.1 + '@esbuild/openbsd-x64': 0.25.1 + '@esbuild/sunos-x64': 0.25.1 + '@esbuild/win32-arm64': 0.25.1 + '@esbuild/win32-ia32': 0.25.1 + '@esbuild/win32-x64': 0.25.1 escalade@3.2.0: {} @@ -3700,7 +3700,7 @@ snapshots: ms@2.1.3: {} - nanoid@3.3.8: {} + nanoid@3.3.11: {} natural-compare@1.4.0: {} @@ -3807,7 +3807,7 @@ snapshots: postcss@8.5.3: dependencies: - nanoid: 3.3.8 + nanoid: 3.3.11 picocolors: 1.1.1 source-map-js: 1.2.1 @@ -4039,7 +4039,7 @@ snapshots: tsx@4.19.2: dependencies: - esbuild: 0.25.0 + esbuild: 0.25.1 get-tsconfig: 4.10.0 optionalDependencies: fsevents: 2.3.3 @@ -4085,9 +4085,9 @@ snapshots: dependencies: '@types/unist': 2.0.11 - unocss@66.0.0(postcss@8.5.3)(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)): + unocss@66.0.0(postcss@8.5.3)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)): dependencies: - '@unocss/astro': 66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) + '@unocss/astro': 66.0.0(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) '@unocss/cli': 66.0.0 '@unocss/core': 66.0.0 '@unocss/postcss': 66.0.0(postcss@8.5.3) @@ -4104,9 +4104,9 @@ snapshots: '@unocss/transformer-compile-class': 66.0.0 '@unocss/transformer-directives': 66.0.0 '@unocss/transformer-variant-group': 66.0.0 - '@unocss/vite': 66.0.0(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) + '@unocss/vite': 66.0.0(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) optionalDependencies: - vite: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + vite: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) transitivePeerDependencies: - postcss - supports-color @@ -4133,9 +4133,9 @@ snapshots: unist-util-stringify-position: 2.0.3 vfile-message: 2.0.4 - vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2): + vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2): dependencies: - esbuild: 0.25.0 + esbuild: 0.25.1 postcss: 8.5.3 rollup: 4.37.0 optionalDependencies: @@ -4144,9 +4144,9 @@ snapshots: terser: 5.39.0 tsx: 4.19.2 - vitefu@1.0.6(vite@6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)): + vitefu@1.0.6(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)): optionalDependencies: - vite: 6.2.0(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + vite: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) vue-flow-layout@0.1.1(vue@3.5.13(typescript@5.8.2)): dependencies: From 0bc5d5887420ba1eb718254490b7995c771c0447 Mon Sep 17 00:00:00 2001 From: Tony <68118705+Legend-Master@users.noreply.github.com> Date: Fri, 28 Mar 2025 18:53:49 +0800 Subject: [PATCH 64/80] fix(updater): download reuses check's timeout (#2572) * fix(updater): download inherit timeout from check * Add change file --- .changes/updater-download-inherit-check-timeout.md | 6 ++++++ plugins/updater/README.md | 2 +- plugins/updater/guest-js/index.ts | 5 ++++- plugins/updater/src/commands.rs | 2 ++ plugins/updater/src/lib.rs | 5 ++--- plugins/updater/src/updater.rs | 13 +++++-------- 6 files changed, 20 insertions(+), 13 deletions(-) create mode 100644 .changes/updater-download-inherit-check-timeout.md diff --git a/.changes/updater-download-inherit-check-timeout.md b/.changes/updater-download-inherit-check-timeout.md new file mode 100644 index 00000000..ceca443d --- /dev/null +++ b/.changes/updater-download-inherit-check-timeout.md @@ -0,0 +1,6 @@ +--- +"updater": "patch:bug" +"updater-js": "patch:bug" +--- + +Fix `timeout` passed to `check` gets re-used by `download` and `downloadAndinstall` diff --git a/plugins/updater/README.md b/plugins/updater/README.md index f1d91b1c..79fea467 100644 --- a/plugins/updater/README.md +++ b/plugins/updater/README.md @@ -76,7 +76,7 @@ Afterwards all the plugin's APIs are available through the JavaScript guest bind import { check } from '@tauri-apps/plugin-updater' import { relaunch } from '@tauri-apps/plugin-process' const update = await check() -if (update?.available) { +if (update) { await update.downloadAndInstall() await relaunch() } diff --git a/plugins/updater/guest-js/index.ts b/plugins/updater/guest-js/index.ts index dfaaff24..07625eea 100644 --- a/plugins/updater/guest-js/index.ts +++ b/plugins/updater/guest-js/index.ts @@ -133,7 +133,10 @@ async function check(options?: CheckOptions): Promise { return await invoke('plugin:updater|check', { ...options - }).then((meta) => (meta.available ? new Update(meta) : null)) + }).then((meta) => + // TODO: Handle this in the rust side + meta.available ? new Update(meta) : null + ) } export type { CheckOptions, DownloadOptions, DownloadEvent } diff --git a/plugins/updater/src/commands.rs b/plugins/updater/src/commands.rs index eed3cd77..55d504bb 100644 --- a/plugins/updater/src/commands.rs +++ b/plugins/updater/src/commands.rs @@ -40,6 +40,8 @@ pub(crate) struct Metadata { struct DownloadedBytes(pub Vec); impl Resource for DownloadedBytes {} +// TODO: Align this with the result of `updater.check` to Result> +// and remove `available` instead of handling this in the js side #[tauri::command] pub(crate) async fn check( webview: Webview, diff --git a/plugins/updater/src/lib.rs b/plugins/updater/src/lib.rs index 75b014bc..fb059e43 100644 --- a/plugins/updater/src/lib.rs +++ b/plugins/updater/src/lib.rs @@ -153,8 +153,7 @@ impl Builder { I: IntoIterator, S: Into, { - let args = args.into_iter().map(|a| a.into()).collect::>(); - self.installer_args.extend_from_slice(&args); + self.installer_args.extend(args.into_iter().map(Into::into)); self } @@ -214,7 +213,7 @@ impl Builder { config.pubkey = pubkey; } if let Some(windows) = &mut config.windows { - windows.installer_args.extend_from_slice(&installer_args); + windows.installer_args.extend(installer_args); } app.manage(UpdaterState { target, diff --git a/plugins/updater/src/updater.rs b/plugins/updater/src/updater.rs index 1ae2cfe9..b59272e4 100644 --- a/plugins/updater/src/updater.rs +++ b/plugins/updater/src/updater.rs @@ -124,8 +124,7 @@ pub struct UpdaterBuilder { impl UpdaterBuilder { pub(crate) fn new(app: &AppHandle, config: crate::Config) -> Self { let app_ = app.clone(); - let run_on_main_thread = - move |f: Box| app_.run_on_main_thread(f); + let run_on_main_thread = move |f| app_.run_on_main_thread(f); Self { run_on_main_thread: Box::new(run_on_main_thread), installer_args: config @@ -230,8 +229,7 @@ impl UpdaterBuilder { I: IntoIterator, S: Into, { - let args = args.into_iter().map(|a| a.into()).collect::>(); - self.installer_args.extend_from_slice(&args); + self.installer_args.extend(args.into_iter().map(Into::into)); self } @@ -312,8 +310,7 @@ impl UpdaterBuilder { I: IntoIterator, S: Into, { - let args = args.into_iter().map(|a| a.into()).collect::>(); - self.current_exe_args.extend_from_slice(&args); + self.installer_args.extend(args.into_iter().map(Into::into)); self } } @@ -478,10 +475,10 @@ impl Updater { version: release.version.to_string(), date: release.pub_date, download_url: release.download_url(&self.json_target)?.to_owned(), - body: release.notes.clone(), signature: release.signature(&self.json_target)?.to_owned(), + body: release.notes, raw_json: raw_json.unwrap(), - timeout: self.timeout, + timeout: None, proxy: self.proxy.clone(), headers: self.headers.clone(), installer_args: self.installer_args.clone(), From 2d731f80224f74faf1b7170b25e04f5da1da49c8 Mon Sep 17 00:00:00 2001 From: Tony <68118705+Legend-Master@users.noreply.github.com> Date: Sat, 29 Mar 2025 08:36:50 +0800 Subject: [PATCH 65/80] fix(updater): format `Update.date` to RFC 3339 (#2573) * fix(updater): format `Update.date` to RFC 3339 * Messed up on argument in #2572 * Format * Update example * Avoid extra to_string * Deprecate `Update.available` --- .changes/updater-date-format.md | 6 +++++ examples/api/src/views/Updater.svelte | 10 +++++--- plugins/updater/api-iife.js | 2 +- plugins/updater/guest-js/index.ts | 13 +++++----- plugins/updater/src/commands.rs | 37 ++++++++++++++++----------- plugins/updater/src/error.rs | 2 ++ plugins/updater/src/updater.rs | 3 ++- 7 files changed, 46 insertions(+), 27 deletions(-) create mode 100644 .changes/updater-date-format.md diff --git a/.changes/updater-date-format.md b/.changes/updater-date-format.md new file mode 100644 index 00000000..c7da69e7 --- /dev/null +++ b/.changes/updater-date-format.md @@ -0,0 +1,6 @@ +--- +"updater": "minor:bug" +"updater-js": "minor:bug" +--- + +Fix JS API `Update.date` not formatted to RFC 3339 diff --git a/examples/api/src/views/Updater.svelte b/examples/api/src/views/Updater.svelte index 2fa5e436..26d074a6 100644 --- a/examples/api/src/views/Updater.svelte +++ b/examples/api/src/views/Updater.svelte @@ -12,10 +12,14 @@ isChecking = true try { const update = await check() - onMessage(`Should update: ${update.available}`) - onMessage(update) + if (update) { + onMessage(`Should update: ${update.available}`) + onMessage(update) - newUpdate = update + newUpdate = update + } else { + onMessage('No update available') + } } catch (e) { onMessage(e) } finally { diff --git a/plugins/updater/api-iife.js b/plugins/updater/api-iife.js index 31c81b27..d5403449 100644 --- a/plugins/updater/api-iife.js +++ b/plugins/updater/api-iife.js @@ -1 +1 @@ -if("__TAURI__"in window){var __TAURI_PLUGIN_UPDATER__=function(e){"use strict";function t(e,t,s,n){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===s?n:"a"===s?n.call(e):n?n.value:t.get(e)}function s(e,t,s,n,i){if("function"==typeof t||!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return t.set(e,s),s}var n,i,a,r;"function"==typeof SuppressedError&&SuppressedError;const o="__TAURI_TO_IPC_KEY__";class d{constructor(){this.__TAURI_CHANNEL_MARKER__=!0,n.set(this,(()=>{})),i.set(this,0),a.set(this,[]),this.id=function(e,t=!1){return window.__TAURI_INTERNALS__.transformCallback(e,t)}((({message:e,id:r})=>{if(r==t(this,i,"f"))for(t(this,n,"f").call(this,e),s(this,i,t(this,i,"f")+1);t(this,i,"f")in t(this,a,"f");){const e=t(this,a,"f")[t(this,i,"f")];t(this,n,"f").call(this,e),delete t(this,a,"f")[t(this,i,"f")],s(this,i,t(this,i,"f")+1)}else t(this,a,"f")[r]=e}))}set onmessage(e){s(this,n,e)}get onmessage(){return t(this,n,"f")}[(n=new WeakMap,i=new WeakMap,a=new WeakMap,o)](){return`__CHANNEL__:${this.id}`}toJSON(){return this[o]()}}async function l(e,t={},s){return window.__TAURI_INTERNALS__.invoke(e,t,s)}class h{get rid(){return t(this,r,"f")}constructor(e){r.set(this,void 0),s(this,r,e)}async close(){return l("plugin:resources|close",{rid:this.rid})}}r=new WeakMap;class c extends h{constructor(e){super(e.rid),this.available=e.available,this.currentVersion=e.currentVersion,this.version=e.version,this.date=e.date,this.body=e.body,this.rawJson=e.rawJson}async download(e,t){const s=new d;e&&(s.onmessage=e);const n=await l("plugin:updater|download",{onEvent:s,rid:this.rid,...t});this.downloadedBytes=new h(n)}async install(){if(!this.downloadedBytes)throw new Error("Update.install called before Update.download");await l("plugin:updater|install",{updateRid:this.rid,bytesRid:this.downloadedBytes.rid}),this.downloadedBytes=void 0}async downloadAndInstall(e,t){const s=new d;e&&(s.onmessage=e),await l("plugin:updater|download_and_install",{onEvent:s,rid:this.rid,...t})}async close(){await(this.downloadedBytes?.close()),await super.close()}}return e.Update=c,e.check=async function(e){return e?.headers&&(e.headers=Array.from(new Headers(e.headers).entries())),await l("plugin:updater|check",{...e}).then((e=>e.available?new c(e):null))},e}({});Object.defineProperty(window.__TAURI__,"updater",{value:__TAURI_PLUGIN_UPDATER__})} +if("__TAURI__"in window){var __TAURI_PLUGIN_UPDATER__=function(t){"use strict";function e(t,e,s,n){if("function"==typeof e||!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===s?n:"a"===s?n.call(t):n?n.value:e.get(t)}function s(t,e,s,n,i){if("function"==typeof e||!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return e.set(t,s),s}var n,i,r,a;"function"==typeof SuppressedError&&SuppressedError;const o="__TAURI_TO_IPC_KEY__";class d{constructor(){this.__TAURI_CHANNEL_MARKER__=!0,n.set(this,(()=>{})),i.set(this,0),r.set(this,[]),this.id=function(t,e=!1){return window.__TAURI_INTERNALS__.transformCallback(t,e)}((({message:t,id:a})=>{if(a==e(this,i,"f"))for(e(this,n,"f").call(this,t),s(this,i,e(this,i,"f")+1);e(this,i,"f")in e(this,r,"f");){const t=e(this,r,"f")[e(this,i,"f")];e(this,n,"f").call(this,t),delete e(this,r,"f")[e(this,i,"f")],s(this,i,e(this,i,"f")+1)}else e(this,r,"f")[a]=t}))}set onmessage(t){s(this,n,t)}get onmessage(){return e(this,n,"f")}[(n=new WeakMap,i=new WeakMap,r=new WeakMap,o)](){return`__CHANNEL__:${this.id}`}toJSON(){return this[o]()}}async function c(t,e={},s){return window.__TAURI_INTERNALS__.invoke(t,e,s)}class h{get rid(){return e(this,a,"f")}constructor(t){a.set(this,void 0),s(this,a,t)}async close(){return c("plugin:resources|close",{rid:this.rid})}}a=new WeakMap;class l extends h{constructor(t){super(t.rid),this.available=!0,this.currentVersion=t.currentVersion,this.version=t.version,this.date=t.date,this.body=t.body,this.rawJson=t.rawJson}async download(t,e){const s=new d;t&&(s.onmessage=t);const n=await c("plugin:updater|download",{onEvent:s,rid:this.rid,...e});this.downloadedBytes=new h(n)}async install(){if(!this.downloadedBytes)throw new Error("Update.install called before Update.download");await c("plugin:updater|install",{updateRid:this.rid,bytesRid:this.downloadedBytes.rid}),this.downloadedBytes=void 0}async downloadAndInstall(t,e){const s=new d;t&&(s.onmessage=t),await c("plugin:updater|download_and_install",{onEvent:s,rid:this.rid,...e})}async close(){await(this.downloadedBytes?.close()),await super.close()}}return t.Update=l,t.check=async function(t){t?.headers&&(t.headers=Array.from(new Headers(t.headers).entries()));const e=await c("plugin:updater|check",{...t});return e?new l(e):null},t}({});Object.defineProperty(window.__TAURI__,"updater",{value:__TAURI_PLUGIN_UPDATER__})} diff --git a/plugins/updater/guest-js/index.ts b/plugins/updater/guest-js/index.ts index 07625eea..87f7929a 100644 --- a/plugins/updater/guest-js/index.ts +++ b/plugins/updater/guest-js/index.ts @@ -38,7 +38,6 @@ interface DownloadOptions { interface UpdateMetadata { rid: number - available: boolean currentVersion: string version: string date?: string @@ -53,6 +52,8 @@ type DownloadEvent = | { event: 'Finished' } class Update extends Resource { + // TODO: remove this field in v3 + /** @deprecated This is always true, check if the return value is `null` instead when using {@linkcode check} */ available: boolean currentVersion: string version: string @@ -63,7 +64,7 @@ class Update extends Resource { constructor(metadata: UpdateMetadata) { super(metadata.rid) - this.available = metadata.available + this.available = true this.currentVersion = metadata.currentVersion this.version = metadata.version this.date = metadata.date @@ -131,12 +132,10 @@ async function check(options?: CheckOptions): Promise { options.headers = Array.from(new Headers(options.headers).entries()) } - return await invoke('plugin:updater|check', { + const metadata = await invoke('plugin:updater|check', { ...options - }).then((meta) => - // TODO: Handle this in the rust side - meta.available ? new Update(meta) : null - ) + }) + return metadata ? new Update(metadata) : null } export type { CheckOptions, DownloadOptions, DownloadEvent } diff --git a/plugins/updater/src/commands.rs b/plugins/updater/src/commands.rs index 55d504bb..ae84294f 100644 --- a/plugins/updater/src/commands.rs +++ b/plugins/updater/src/commands.rs @@ -28,8 +28,7 @@ pub enum DownloadEvent { #[derive(Serialize, Default)] #[serde(rename_all = "camelCase")] pub(crate) struct Metadata { - rid: Option, - available: bool, + rid: ResourceId, current_version: String, version: String, date: Option, @@ -40,8 +39,6 @@ pub(crate) struct Metadata { struct DownloadedBytes(pub Vec); impl Resource for DownloadedBytes {} -// TODO: Align this with the result of `updater.check` to Result> -// and remove `available` instead of handling this in the js side #[tauri::command] pub(crate) async fn check( webview: Webview, @@ -49,7 +46,7 @@ pub(crate) async fn check( timeout: Option, proxy: Option, target: Option, -) -> Result { +) -> Result> { let mut builder = webview.updater_builder(); if let Some(headers) = headers { for (k, v) in headers { @@ -69,18 +66,28 @@ pub(crate) async fn check( let updater = builder.build()?; let update = updater.check().await?; - let mut metadata = Metadata::default(); + if let Some(update) = update { - metadata.available = true; - metadata.current_version.clone_from(&update.current_version); - metadata.version.clone_from(&update.version); - metadata.date = update.date.map(|d| d.to_string()); - metadata.body.clone_from(&update.body); - metadata.raw_json.clone_from(&update.raw_json); - metadata.rid = Some(webview.resources_table().add(update)); + let formatted_date = if let Some(date) = update.date { + let formatted_date = date + .format(&time::format_description::well_known::Rfc3339) + .map_err(|_| crate::Error::FormatDate)?; + Some(formatted_date) + } else { + None + }; + let metadata = Metadata { + current_version: update.current_version.clone(), + version: update.version.clone(), + date: formatted_date, + body: update.body.clone(), + raw_json: update.raw_json.clone(), + rid: webview.resources_table().add(update), + }; + Ok(Some(metadata)) + } else { + Ok(None) } - - Ok(metadata) } #[tauri::command] diff --git a/plugins/updater/src/error.rs b/plugins/updater/src/error.rs index d6d9b0ce..b82e7d55 100644 --- a/plugins/updater/src/error.rs +++ b/plugins/updater/src/error.rs @@ -77,6 +77,8 @@ pub enum Error { InvalidHeaderValue(#[from] http::header::InvalidHeaderValue), #[error(transparent)] InvalidHeaderName(#[from] http::header::InvalidHeaderName), + #[error("Failed to format date")] + FormatDate, /// The configured updater endpoint must use a secure protocol like `https` #[error("The configured updater endpoint must use a secure protocol like `https`.")] InsecureTransportProtocol, diff --git a/plugins/updater/src/updater.rs b/plugins/updater/src/updater.rs index b59272e4..ebd5523c 100644 --- a/plugins/updater/src/updater.rs +++ b/plugins/updater/src/updater.rs @@ -310,7 +310,8 @@ impl UpdaterBuilder { I: IntoIterator, S: Into, { - self.installer_args.extend(args.into_iter().map(Into::into)); + self.current_exe_args + .extend(args.into_iter().map(Into::into)); self } } From 6fa388d0b23ce74ca850c66497fc356f87132cea Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 29 Mar 2025 15:16:09 +0800 Subject: [PATCH 66/80] chore(deps): update dependency rollup to v4.38.0 (#2577) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 214 ++++++++++++++++++++++++------------------------- 2 files changed, 108 insertions(+), 108 deletions(-) diff --git a/package.json b/package.json index 3e38ab2f..7d299762 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "eslint-config-prettier": "10.1.1", "eslint-plugin-security": "3.0.1", "prettier": "3.5.3", - "rollup": "4.37.0", + "rollup": "4.38.0", "tslib": "2.8.1", "typescript": "5.8.2", "typescript-eslint": "8.28.0" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 55b73217..5de6c5df 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -16,13 +16,13 @@ importers: version: 9.23.0 '@rollup/plugin-node-resolve': specifier: 16.0.1 - version: 16.0.1(rollup@4.37.0) + version: 16.0.1(rollup@4.38.0) '@rollup/plugin-terser': specifier: 0.4.4 - version: 0.4.4(rollup@4.37.0) + version: 0.4.4(rollup@4.38.0) '@rollup/plugin-typescript': specifier: 12.1.2 - version: 12.1.2(rollup@4.37.0)(tslib@2.8.1)(typescript@5.8.2) + version: 12.1.2(rollup@4.38.0)(tslib@2.8.1)(typescript@5.8.2) covector: specifier: ^0.12.4 version: 0.12.4(mocha@10.8.2) @@ -39,8 +39,8 @@ importers: specifier: 3.5.3 version: 3.5.3 rollup: - specifier: 4.37.0 - version: 4.37.0 + specifier: 4.38.0 + version: 4.38.0 tslib: specifier: 2.8.1 version: 2.8.1 @@ -739,103 +739,103 @@ packages: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.37.0': - resolution: {integrity: sha512-l7StVw6WAa8l3vA1ov80jyetOAEo1FtHvZDbzXDO/02Sq/QVvqlHkYoFwDJPIMj0GKiistsBudfx5tGFnwYWDQ==} + '@rollup/rollup-android-arm-eabi@4.38.0': + resolution: {integrity: sha512-ldomqc4/jDZu/xpYU+aRxo3V4mGCV9HeTgUBANI3oIQMOL+SsxB+S2lxMpkFp5UamSS3XuTMQVbsS24R4J4Qjg==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.37.0': - resolution: {integrity: sha512-6U3SlVyMxezt8Y+/iEBcbp945uZjJwjZimu76xoG7tO1av9VO691z8PkhzQ85ith2I8R2RddEPeSfcbyPfD4hA==} + '@rollup/rollup-android-arm64@4.38.0': + resolution: {integrity: sha512-VUsgcy4GhhT7rokwzYQP+aV9XnSLkkhlEJ0St8pbasuWO/vwphhZQxYEKUP3ayeCYLhk6gEtacRpYP/cj3GjyQ==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.37.0': - resolution: {integrity: sha512-+iTQ5YHuGmPt10NTzEyMPbayiNTcOZDWsbxZYR1ZnmLnZxG17ivrPSWFO9j6GalY0+gV3Jtwrrs12DBscxnlYA==} + '@rollup/rollup-darwin-arm64@4.38.0': + resolution: {integrity: sha512-buA17AYXlW9Rn091sWMq1xGUvWQFOH4N1rqUxGJtEQzhChxWjldGCCup7r/wUnaI6Au8sKXpoh0xg58a7cgcpg==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.37.0': - resolution: {integrity: sha512-m8W2UbxLDcmRKVjgl5J/k4B8d7qX2EcJve3Sut7YGrQoPtCIQGPH5AMzuFvYRWZi0FVS0zEY4c8uttPfX6bwYQ==} + '@rollup/rollup-darwin-x64@4.38.0': + resolution: {integrity: sha512-Mgcmc78AjunP1SKXl624vVBOF2bzwNWFPMP4fpOu05vS0amnLcX8gHIge7q/lDAHy3T2HeR0TqrriZDQS2Woeg==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.37.0': - resolution: {integrity: sha512-FOMXGmH15OmtQWEt174v9P1JqqhlgYge/bUjIbiVD1nI1NeJ30HYT9SJlZMqdo1uQFyt9cz748F1BHghWaDnVA==} + '@rollup/rollup-freebsd-arm64@4.38.0': + resolution: {integrity: sha512-zzJACgjLbQTsscxWqvrEQAEh28hqhebpRz5q/uUd1T7VTwUNZ4VIXQt5hE7ncs0GrF+s7d3S4on4TiXUY8KoQA==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.37.0': - resolution: {integrity: sha512-SZMxNttjPKvV14Hjck5t70xS3l63sbVwl98g3FlVVx2YIDmfUIy29jQrsw06ewEYQ8lQSuY9mpAPlmgRD2iSsA==} + '@rollup/rollup-freebsd-x64@4.38.0': + resolution: {integrity: sha512-hCY/KAeYMCyDpEE4pTETam0XZS4/5GXzlLgpi5f0IaPExw9kuB+PDTOTLuPtM10TlRG0U9OSmXJ+Wq9J39LvAg==} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.37.0': - resolution: {integrity: sha512-hhAALKJPidCwZcj+g+iN+38SIOkhK2a9bqtJR+EtyxrKKSt1ynCBeqrQy31z0oWU6thRZzdx53hVgEbRkuI19w==} + '@rollup/rollup-linux-arm-gnueabihf@4.38.0': + resolution: {integrity: sha512-mimPH43mHl4JdOTD7bUMFhBdrg6f9HzMTOEnzRmXbOZqjijCw8LA5z8uL6LCjxSa67H2xiLFvvO67PT05PRKGg==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.37.0': - resolution: {integrity: sha512-jUb/kmn/Gd8epbHKEqkRAxq5c2EwRt0DqhSGWjPFxLeFvldFdHQs/n8lQ9x85oAeVb6bHcS8irhTJX2FCOd8Ag==} + '@rollup/rollup-linux-arm-musleabihf@4.38.0': + resolution: {integrity: sha512-tPiJtiOoNuIH8XGG8sWoMMkAMm98PUwlriOFCCbZGc9WCax+GLeVRhmaxjJtz6WxrPKACgrwoZ5ia/uapq3ZVg==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.37.0': - resolution: {integrity: sha512-oNrJxcQT9IcbcmKlkF+Yz2tmOxZgG9D9GRq+1OE6XCQwCVwxixYAa38Z8qqPzQvzt1FCfmrHX03E0pWoXm1DqA==} + '@rollup/rollup-linux-arm64-gnu@4.38.0': + resolution: {integrity: sha512-wZco59rIVuB0tjQS0CSHTTUcEde+pXQWugZVxWaQFdQQ1VYub/sTrNdY76D1MKdN2NB48JDuGABP6o6fqos8mA==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.37.0': - resolution: {integrity: sha512-pfxLBMls+28Ey2enpX3JvjEjaJMBX5XlPCZNGxj4kdJyHduPBXtxYeb8alo0a7bqOoWZW2uKynhHxF/MWoHaGQ==} + '@rollup/rollup-linux-arm64-musl@4.38.0': + resolution: {integrity: sha512-fQgqwKmW0REM4LomQ+87PP8w8xvU9LZfeLBKybeli+0yHT7VKILINzFEuggvnV9M3x1Ed4gUBmGUzCo/ikmFbQ==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-loongarch64-gnu@4.37.0': - resolution: {integrity: sha512-yCE0NnutTC/7IGUq/PUHmoeZbIwq3KRh02e9SfFh7Vmc1Z7atuJRYWhRME5fKgT8aS20mwi1RyChA23qSyRGpA==} + '@rollup/rollup-linux-loongarch64-gnu@4.38.0': + resolution: {integrity: sha512-hz5oqQLXTB3SbXpfkKHKXLdIp02/w3M+ajp8p4yWOWwQRtHWiEOCKtc9U+YXahrwdk+3qHdFMDWR5k+4dIlddg==} cpu: [loong64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.37.0': - resolution: {integrity: sha512-NxcICptHk06E2Lh3a4Pu+2PEdZ6ahNHuK7o6Np9zcWkrBMuv21j10SQDJW3C9Yf/A/P7cutWoC/DptNLVsZ0VQ==} + '@rollup/rollup-linux-powerpc64le-gnu@4.38.0': + resolution: {integrity: sha512-NXqygK/dTSibQ+0pzxsL3r4Xl8oPqVoWbZV9niqOnIHV/J92fe65pOir0xjkUZDRSPyFRvu+4YOpJF9BZHQImw==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.37.0': - resolution: {integrity: sha512-PpWwHMPCVpFZLTfLq7EWJWvrmEuLdGn1GMYcm5MV7PaRgwCEYJAwiN94uBuZev0/J/hFIIJCsYw4nLmXA9J7Pw==} + '@rollup/rollup-linux-riscv64-gnu@4.38.0': + resolution: {integrity: sha512-GEAIabR1uFyvf/jW/5jfu8gjM06/4kZ1W+j1nWTSSB3w6moZEBm7iBtzwQ3a1Pxos2F7Gz+58aVEnZHU295QTg==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-riscv64-musl@4.37.0': - resolution: {integrity: sha512-DTNwl6a3CfhGTAOYZ4KtYbdS8b+275LSLqJVJIrPa5/JuIufWWZ/QFvkxp52gpmguN95eujrM68ZG+zVxa8zHA==} + '@rollup/rollup-linux-riscv64-musl@4.38.0': + resolution: {integrity: sha512-9EYTX+Gus2EGPbfs+fh7l95wVADtSQyYw4DfSBcYdUEAmP2lqSZY0Y17yX/3m5VKGGJ4UmIH5LHLkMJft3bYoA==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.37.0': - resolution: {integrity: sha512-hZDDU5fgWvDdHFuExN1gBOhCuzo/8TMpidfOR+1cPZJflcEzXdCy1LjnklQdW8/Et9sryOPJAKAQRw8Jq7Tg+A==} + '@rollup/rollup-linux-s390x-gnu@4.38.0': + resolution: {integrity: sha512-Mpp6+Z5VhB9VDk7RwZXoG2qMdERm3Jw07RNlXHE0bOnEeX+l7Fy4bg+NxfyN15ruuY3/7Vrbpm75J9QHFqj5+Q==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.37.0': - resolution: {integrity: sha512-pKivGpgJM5g8dwj0ywBwe/HeVAUSuVVJhUTa/URXjxvoyTT/AxsLTAbkHkDHG7qQxLoW2s3apEIl26uUe08LVQ==} + '@rollup/rollup-linux-x64-gnu@4.38.0': + resolution: {integrity: sha512-vPvNgFlZRAgO7rwncMeE0+8c4Hmc+qixnp00/Uv3ht2x7KYrJ6ERVd3/R0nUtlE6/hu7/HiiNHJ/rP6knRFt1w==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.37.0': - resolution: {integrity: sha512-E2lPrLKE8sQbY/2bEkVTGDEk4/49UYRVWgj90MY8yPjpnGBQ+Xi1Qnr7b7UIWw1NOggdFQFOLZ8+5CzCiz143w==} + '@rollup/rollup-linux-x64-musl@4.38.0': + resolution: {integrity: sha512-q5Zv+goWvQUGCaL7fU8NuTw8aydIL/C9abAVGCzRReuj5h30TPx4LumBtAidrVOtXnlB+RZkBtExMsfqkMfb8g==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.37.0': - resolution: {integrity: sha512-Jm7biMazjNzTU4PrQtr7VS8ibeys9Pn29/1bm4ph7CP2kf21950LgN+BaE2mJ1QujnvOc6p54eWWiVvn05SOBg==} + '@rollup/rollup-win32-arm64-msvc@4.38.0': + resolution: {integrity: sha512-u/Jbm1BU89Vftqyqbmxdq14nBaQjQX1HhmsdBWqSdGClNaKwhjsg5TpW+5Ibs1mb8Es9wJiMdl86BcmtUVXNZg==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.37.0': - resolution: {integrity: sha512-e3/1SFm1OjefWICB2Ucstg2dxYDkDTZGDYgwufcbsxTHyqQps1UQf33dFEChBNmeSsTOyrjw2JJq0zbG5GF6RA==} + '@rollup/rollup-win32-ia32-msvc@4.38.0': + resolution: {integrity: sha512-mqu4PzTrlpNHHbu5qleGvXJoGgHpChBlrBx/mEhTPpnAL1ZAYFlvHD7rLK839LLKQzqEQMFJfGrrOHItN4ZQqA==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.37.0': - resolution: {integrity: sha512-LWbXUBwn/bcLx2sSsqy7pK5o+Nr+VCoRoAohfJ5C/aBio9nfJmGQqHAhU6pwxV/RmyTk5AqdySma7uwWGlmeuA==} + '@rollup/rollup-win32-x64-msvc@4.38.0': + resolution: {integrity: sha512-jjqy3uWlecfB98Psxb5cD6Fny9Fupv9LrDSPTQZUROqjvZmcCqNu4UMl7qqhlUUGpwiAkotj6GYu4SZdcr/nLw==} cpu: [x64] os: [win32] @@ -928,8 +928,8 @@ packages: engines: {node: '>= 10'} hasBin: true - '@types/estree@1.0.6': - resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} + '@types/estree@1.0.7': + resolution: {integrity: sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==} '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} @@ -1914,8 +1914,8 @@ packages: resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rollup@4.37.0: - resolution: {integrity: sha512-iAtQy/L4QFU+rTJ1YUjXqJOJzuwEghqWzCEYD2FEghT7Gsy1VdABntrO4CLopA5IkflTyqNiLNwPcOJ3S7UKLg==} + rollup@4.38.0: + resolution: {integrity: sha512-5SsIRtJy9bf1ErAOiFMFzl64Ex9X5V7bnJ+WlFMb+zmP459OSWCEG7b0ERZ+PEU7xPt4OG3RHbrp1LJlXxYTrw==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -2589,99 +2589,99 @@ snapshots: '@polka/url@1.0.0-next.28': {} - '@rollup/plugin-node-resolve@16.0.1(rollup@4.37.0)': + '@rollup/plugin-node-resolve@16.0.1(rollup@4.38.0)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.37.0) + '@rollup/pluginutils': 5.1.4(rollup@4.38.0) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 resolve: 1.22.10 optionalDependencies: - rollup: 4.37.0 + rollup: 4.38.0 - '@rollup/plugin-terser@0.4.4(rollup@4.37.0)': + '@rollup/plugin-terser@0.4.4(rollup@4.38.0)': dependencies: serialize-javascript: 6.0.2 smob: 1.5.0 terser: 5.39.0 optionalDependencies: - rollup: 4.37.0 + rollup: 4.38.0 - '@rollup/plugin-typescript@12.1.2(rollup@4.37.0)(tslib@2.8.1)(typescript@5.8.2)': + '@rollup/plugin-typescript@12.1.2(rollup@4.38.0)(tslib@2.8.1)(typescript@5.8.2)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.37.0) + '@rollup/pluginutils': 5.1.4(rollup@4.38.0) resolve: 1.22.10 typescript: 5.8.2 optionalDependencies: - rollup: 4.37.0 + rollup: 4.38.0 tslib: 2.8.1 - '@rollup/pluginutils@5.1.4(rollup@4.37.0)': + '@rollup/pluginutils@5.1.4(rollup@4.38.0)': dependencies: - '@types/estree': 1.0.6 + '@types/estree': 1.0.7 estree-walker: 2.0.2 picomatch: 4.0.2 optionalDependencies: - rollup: 4.37.0 + rollup: 4.38.0 - '@rollup/rollup-android-arm-eabi@4.37.0': + '@rollup/rollup-android-arm-eabi@4.38.0': optional: true - '@rollup/rollup-android-arm64@4.37.0': + '@rollup/rollup-android-arm64@4.38.0': optional: true - '@rollup/rollup-darwin-arm64@4.37.0': + '@rollup/rollup-darwin-arm64@4.38.0': optional: true - '@rollup/rollup-darwin-x64@4.37.0': + '@rollup/rollup-darwin-x64@4.38.0': optional: true - '@rollup/rollup-freebsd-arm64@4.37.0': + '@rollup/rollup-freebsd-arm64@4.38.0': optional: true - '@rollup/rollup-freebsd-x64@4.37.0': + '@rollup/rollup-freebsd-x64@4.38.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.37.0': + '@rollup/rollup-linux-arm-gnueabihf@4.38.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.37.0': + '@rollup/rollup-linux-arm-musleabihf@4.38.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.37.0': + '@rollup/rollup-linux-arm64-gnu@4.38.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.37.0': + '@rollup/rollup-linux-arm64-musl@4.38.0': optional: true - '@rollup/rollup-linux-loongarch64-gnu@4.37.0': + '@rollup/rollup-linux-loongarch64-gnu@4.38.0': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.37.0': + '@rollup/rollup-linux-powerpc64le-gnu@4.38.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.37.0': + '@rollup/rollup-linux-riscv64-gnu@4.38.0': optional: true - '@rollup/rollup-linux-riscv64-musl@4.37.0': + '@rollup/rollup-linux-riscv64-musl@4.38.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.37.0': + '@rollup/rollup-linux-s390x-gnu@4.38.0': optional: true - '@rollup/rollup-linux-x64-gnu@4.37.0': + '@rollup/rollup-linux-x64-gnu@4.38.0': optional: true - '@rollup/rollup-linux-x64-musl@4.37.0': + '@rollup/rollup-linux-x64-musl@4.38.0': optional: true - '@rollup/rollup-win32-arm64-msvc@4.37.0': + '@rollup/rollup-win32-arm64-msvc@4.38.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.37.0': + '@rollup/rollup-win32-ia32-msvc@4.38.0': optional: true - '@rollup/rollup-win32-x64-msvc@4.37.0': + '@rollup/rollup-win32-x64-msvc@4.38.0': optional: true '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)))(svelte@5.20.4)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))': @@ -2755,7 +2755,7 @@ snapshots: '@tauri-apps/cli-win32-ia32-msvc': 2.4.0 '@tauri-apps/cli-win32-x64-msvc': 2.4.0 - '@types/estree@1.0.6': {} + '@types/estree@1.0.7': {} '@types/json-schema@7.0.15': {} @@ -3327,7 +3327,7 @@ snapshots: '@humanfs/node': 0.16.6 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.4.2 - '@types/estree': 1.0.6 + '@types/estree': 1.0.7 '@types/json-schema': 7.0.15 ajv: 6.12.6 chalk: 4.1.2 @@ -3552,7 +3552,7 @@ snapshots: is-reference@3.0.3: dependencies: - '@types/estree': 1.0.6 + '@types/estree': 1.0.7 is-unicode-supported@0.1.0: {} @@ -3877,30 +3877,30 @@ snapshots: reusify@1.1.0: {} - rollup@4.37.0: + rollup@4.38.0: dependencies: - '@types/estree': 1.0.6 + '@types/estree': 1.0.7 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.37.0 - '@rollup/rollup-android-arm64': 4.37.0 - '@rollup/rollup-darwin-arm64': 4.37.0 - '@rollup/rollup-darwin-x64': 4.37.0 - '@rollup/rollup-freebsd-arm64': 4.37.0 - '@rollup/rollup-freebsd-x64': 4.37.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.37.0 - '@rollup/rollup-linux-arm-musleabihf': 4.37.0 - '@rollup/rollup-linux-arm64-gnu': 4.37.0 - '@rollup/rollup-linux-arm64-musl': 4.37.0 - '@rollup/rollup-linux-loongarch64-gnu': 4.37.0 - '@rollup/rollup-linux-powerpc64le-gnu': 4.37.0 - '@rollup/rollup-linux-riscv64-gnu': 4.37.0 - '@rollup/rollup-linux-riscv64-musl': 4.37.0 - '@rollup/rollup-linux-s390x-gnu': 4.37.0 - '@rollup/rollup-linux-x64-gnu': 4.37.0 - '@rollup/rollup-linux-x64-musl': 4.37.0 - '@rollup/rollup-win32-arm64-msvc': 4.37.0 - '@rollup/rollup-win32-ia32-msvc': 4.37.0 - '@rollup/rollup-win32-x64-msvc': 4.37.0 + '@rollup/rollup-android-arm-eabi': 4.38.0 + '@rollup/rollup-android-arm64': 4.38.0 + '@rollup/rollup-darwin-arm64': 4.38.0 + '@rollup/rollup-darwin-x64': 4.38.0 + '@rollup/rollup-freebsd-arm64': 4.38.0 + '@rollup/rollup-freebsd-x64': 4.38.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.38.0 + '@rollup/rollup-linux-arm-musleabihf': 4.38.0 + '@rollup/rollup-linux-arm64-gnu': 4.38.0 + '@rollup/rollup-linux-arm64-musl': 4.38.0 + '@rollup/rollup-linux-loongarch64-gnu': 4.38.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.38.0 + '@rollup/rollup-linux-riscv64-gnu': 4.38.0 + '@rollup/rollup-linux-riscv64-musl': 4.38.0 + '@rollup/rollup-linux-s390x-gnu': 4.38.0 + '@rollup/rollup-linux-x64-gnu': 4.38.0 + '@rollup/rollup-linux-x64-musl': 4.38.0 + '@rollup/rollup-win32-arm64-msvc': 4.38.0 + '@rollup/rollup-win32-ia32-msvc': 4.38.0 + '@rollup/rollup-win32-x64-msvc': 4.38.0 fsevents: 2.3.3 run-parallel@1.2.0: @@ -3990,7 +3990,7 @@ snapshots: dependencies: '@ampproject/remapping': 2.3.0 '@jridgewell/sourcemap-codec': 1.5.0 - '@types/estree': 1.0.6 + '@types/estree': 1.0.7 acorn: 8.14.0 acorn-typescript: 1.4.13(acorn@8.14.0) aria-query: 5.3.2 @@ -4137,7 +4137,7 @@ snapshots: dependencies: esbuild: 0.25.1 postcss: 8.5.3 - rollup: 4.37.0 + rollup: 4.38.0 optionalDependencies: fsevents: 2.3.3 jiti: 2.4.2 From a77b1353e9a640dc99e9d5fd52a0d30b337063ea Mon Sep 17 00:00:00 2001 From: Tony <68118705+Legend-Master@users.noreply.github.com> Date: Sun, 30 Mar 2025 00:31:54 +0800 Subject: [PATCH 67/80] refactor(window-state): simply some code (#2578) --- plugins/window-state/src/lib.rs | 92 ++++++++++++++++----------------- 1 file changed, 44 insertions(+), 48 deletions(-) diff --git a/plugins/window-state/src/lib.rs b/plugins/window-state/src/lib.rs index 1f4abdd6..a5cf5847 100644 --- a/plugins/window-state/src/lib.rs +++ b/plugins/window-state/src/lib.rs @@ -14,13 +14,14 @@ use bitflags::bitflags; use serde::{Deserialize, Serialize}; use tauri::{ plugin::{Builder as PluginBuilder, TauriPlugin}, - Manager, Monitor, PhysicalPosition, PhysicalSize, RunEvent, Runtime, WebviewWindow, Window, - WindowEvent, + AppHandle, Manager, Monitor, PhysicalPosition, PhysicalSize, RunEvent, Runtime, WebviewWindow, + Window, WindowEvent, }; use std::{ collections::{HashMap, HashSet}, - fs::{create_dir_all, File}, + fs::create_dir_all, + io::BufReader, sync::{Arc, Mutex}, }; @@ -106,6 +107,7 @@ impl Default for WindowState { struct WindowStateCache(Arc>>); /// Used to prevent deadlocks from resize and position event listeners setting the cached state on restoring states struct RestoringWindowState(Mutex<()>); + pub trait AppHandleExt { /// Saves all open windows state to disk fn save_window_state(&self, flags: StateFlags) -> Result<()>; @@ -115,33 +117,31 @@ pub trait AppHandleExt { impl AppHandleExt for tauri::AppHandle { fn save_window_state(&self, flags: StateFlags) -> Result<()> { - if let Ok(app_dir) = self.path().app_config_dir() { - let plugin_state = self.state::(); - let state_path = app_dir.join(&plugin_state.filename); - let windows = self.webview_windows(); - let cache = self.state::(); - let mut state = cache.0.lock().unwrap(); - - for (label, s) in state.iter_mut() { - let window = match &plugin_state.map_label { - Some(map) => windows - .iter() - .find_map(|(l, window)| (map(l) == label).then_some(window)), - None => windows.get(label), - }; - - if let Some(window) = window { - window.update_state(s, flags)?; - } + let app_dir = self.path().app_config_dir()?; + let plugin_state = self.state::(); + let state_path = app_dir.join(&plugin_state.filename); + let windows = self.webview_windows(); + let cache = self.state::(); + let mut state = cache.0.lock().unwrap(); + + for (label, s) in state.iter_mut() { + let window = if let Some(map) = &plugin_state.map_label { + windows + .iter() + .find_map(|(l, window)| (map(l) == label).then_some(window)) + } else { + windows.get(label) + }; + + if let Some(window) = window { + window.update_state(s, flags)?; } - - create_dir_all(&app_dir) - .map_err(Error::Io) - .and_then(|_| File::create(state_path).map_err(Into::into)) - .and_then(|mut f| serde_json::to_writer_pretty(&mut f, &*state).map_err(Into::into)) - } else { - Ok(()) } + + create_dir_all(app_dir)?; + std::fs::write(state_path, serde_json::to_vec_pretty(&*state)?)?; + + Ok(()) } fn filename(&self) -> String { @@ -159,6 +159,7 @@ impl WindowExt for WebviewWindow { self.as_ref().window().restore_state(flags) } } + impl WindowExt for Window { fn restore_state(&self, flags: StateFlags) -> tauri::Result<()> { let plugin_state = self.app_handle().state::(); @@ -352,7 +353,7 @@ impl Builder { self } - /// Sets a filter callback to exclude specific windows from being tracked. + /// Sets a filter callback to exclude specific windows from being tracked. /// Return `true` to save the state, or `false` to skip and not save it. pub fn with_filter(mut self, filter_callback: F) -> Self where @@ -391,25 +392,8 @@ impl Builder { cmd::filename ]) .setup(|app, _api| { - let cache: Arc>> = - if let Ok(app_dir) = app.path().app_config_dir() { - let state_path = app_dir.join(&filename); - if state_path.exists() { - Arc::new(Mutex::new( - std::fs::read(state_path) - .map_err(Error::from) - .and_then(|state| { - serde_json::from_slice(&state).map_err(Into::into) - }) - .unwrap_or_default(), - )) - } else { - Default::default() - } - } else { - Default::default() - }; - app.manage(WindowStateCache(cache)); + let cache = load_saved_window_states(app, &filename).unwrap_or_default(); + app.manage(WindowStateCache(Arc::new(Mutex::new(cache)))); app.manage(RestoringWindowState(Mutex::new(()))); app.manage(PluginState { filename, @@ -522,6 +506,18 @@ impl Builder { } } +fn load_saved_window_states( + app: &AppHandle, + filename: &String, +) -> Result> { + let app_dir = app.path().app_config_dir()?; + let state_path = app_dir.join(filename); + let file = std::fs::File::open(state_path)?; + let reader = BufReader::new(file); + let states = serde_json::from_reader(reader)?; + Ok(states) +} + trait MonitorExt { fn intersects(&self, position: PhysicalPosition, size: PhysicalSize) -> bool; } From a35fea501560a3d126aad09b59600d9f1a731a9e Mon Sep 17 00:00:00 2001 From: Tony <68118705+Legend-Master@users.noreply.github.com> Date: Mon, 31 Mar 2025 22:34:57 +0800 Subject: [PATCH 68/80] fix(window-state): window size jump on multi monitor setup (#2583) * fix: window size jump on multi monitor setup * Add change file --- .changes/multi-monitor-window-state.md | 6 ++++++ plugins/window-state/src/lib.rs | 14 +++++++------- 2 files changed, 13 insertions(+), 7 deletions(-) create mode 100644 .changes/multi-monitor-window-state.md diff --git a/.changes/multi-monitor-window-state.md b/.changes/multi-monitor-window-state.md new file mode 100644 index 00000000..f3807da9 --- /dev/null +++ b/.changes/multi-monitor-window-state.md @@ -0,0 +1,6 @@ +--- +window-state: patch +window-state-js: patch +--- + +Fix window size gets bigger/smaller on secondary monitor with a different scaling than the primary one diff --git a/plugins/window-state/src/lib.rs b/plugins/window-state/src/lib.rs index a5cf5847..50345b64 100644 --- a/plugins/window-state/src/lib.rs +++ b/plugins/window-state/src/lib.rs @@ -184,13 +184,6 @@ impl WindowExt for Window { self.set_decorations(state.decorated)?; } - if flags.contains(StateFlags::SIZE) { - self.set_size(PhysicalSize { - width: state.width, - height: state.height, - })?; - } - if flags.contains(StateFlags::POSITION) { let position = (state.x, state.y).into(); let size = (state.width, state.height).into(); @@ -214,6 +207,13 @@ impl WindowExt for Window { } } + if flags.contains(StateFlags::SIZE) { + self.set_size(PhysicalSize { + width: state.width, + height: state.height, + })?; + } + if flags.contains(StateFlags::MAXIMIZED) && state.maximized { self.maximize()?; } From d78930cdd44ac8d127db65d419e938bac213ad25 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 1 Apr 2025 08:58:34 +0800 Subject: [PATCH 69/80] chore(deps): update dependency typescript-eslint to v8.29.0 (#2586) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 102 ++++++++++++++++++++++++------------------------- 2 files changed, 52 insertions(+), 52 deletions(-) diff --git a/package.json b/package.json index 7d299762..fd6e8775 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "rollup": "4.38.0", "tslib": "2.8.1", "typescript": "5.8.2", - "typescript-eslint": "8.28.0" + "typescript-eslint": "8.29.0" }, "pnpm": { "overrides": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5de6c5df..0dd1f572 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -48,8 +48,8 @@ importers: specifier: 5.8.2 version: 5.8.2 typescript-eslint: - specifier: 8.28.0 - version: 8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + specifier: 8.29.0 + version: 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) examples/api: dependencies: @@ -943,51 +943,51 @@ packages: '@types/unist@2.0.11': resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} - '@typescript-eslint/eslint-plugin@8.28.0': - resolution: {integrity: sha512-lvFK3TCGAHsItNdWZ/1FkvpzCxTHUVuFrdnOGLMa0GGCFIbCgQWVk3CzCGdA7kM3qGVc+dfW9tr0Z/sHnGDFyg==} + '@typescript-eslint/eslint-plugin@8.29.0': + resolution: {integrity: sha512-PAIpk/U7NIS6H7TEtN45SPGLQaHNgB7wSjsQV/8+KYokAb2T/gloOA/Bee2yd4/yKVhPKe5LlaUGhAZk5zmSaQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/parser@8.28.0': - resolution: {integrity: sha512-LPcw1yHD3ToaDEoljFEfQ9j2xShY367h7FZ1sq5NJT9I3yj4LHer1Xd1yRSOdYy9BpsrxU7R+eoDokChYM53lQ==} + '@typescript-eslint/parser@8.29.0': + resolution: {integrity: sha512-8C0+jlNJOwQso2GapCVWWfW/rzaq7Lbme+vGUFKE31djwNncIpgXD7Cd4weEsDdkoZDjH0lwwr3QDQFuyrMg9g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/scope-manager@8.28.0': - resolution: {integrity: sha512-u2oITX3BJwzWCapoZ/pXw6BCOl8rJP4Ij/3wPoGvY8XwvXflOzd1kLrDUUUAIEdJSFh+ASwdTHqtan9xSg8buw==} + '@typescript-eslint/scope-manager@8.29.0': + resolution: {integrity: sha512-aO1PVsq7Gm+tcghabUpzEnVSFMCU4/nYIgC2GOatJcllvWfnhrgW0ZEbnTxm36QsikmCN1K/6ZgM7fok2I7xNw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@8.28.0': - resolution: {integrity: sha512-oRoXu2v0Rsy/VoOGhtWrOKDiIehvI+YNrDk5Oqj40Mwm0Yt01FC/Q7nFqg088d3yAsR1ZcZFVfPCTTFCe/KPwg==} + '@typescript-eslint/type-utils@8.29.0': + resolution: {integrity: sha512-ahaWQ42JAOx+NKEf5++WC/ua17q5l+j1GFrbbpVKzFL/tKVc0aYY8rVSYUpUvt2hUP1YBr7mwXzx+E/DfUWI9Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/types@8.28.0': - resolution: {integrity: sha512-bn4WS1bkKEjx7HqiwG2JNB3YJdC1q6Ue7GyGlwPHyt0TnVq6TtD/hiOdTZt71sq0s7UzqBFXD8t8o2e63tXgwA==} + '@typescript-eslint/types@8.29.0': + resolution: {integrity: sha512-wcJL/+cOXV+RE3gjCyl/V2G877+2faqvlgtso/ZRbTCnZazh0gXhe+7gbAnfubzN2bNsBtZjDvlh7ero8uIbzg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.28.0': - resolution: {integrity: sha512-H74nHEeBGeklctAVUvmDkxB1mk+PAZ9FiOMPFncdqeRBXxk1lWSYraHw8V12b7aa6Sg9HOBNbGdSHobBPuQSuA==} + '@typescript-eslint/typescript-estree@8.29.0': + resolution: {integrity: sha512-yOfen3jE9ISZR/hHpU/bmNvTtBW1NjRbkSFdZOksL1N+ybPEE7UVGMwqvS6CP022Rp00Sb0tdiIkhSCe6NI8ow==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/utils@8.28.0': - resolution: {integrity: sha512-OELa9hbTYciYITqgurT1u/SzpQVtDLmQMFzy/N8pQE+tefOyCWT79jHsav294aTqV1q1u+VzqDGbuujvRYaeSQ==} + '@typescript-eslint/utils@8.29.0': + resolution: {integrity: sha512-gX/A0Mz9Bskm8avSWFcK0gP7cZpbY4AIo6B0hWYFCaIsz750oaiWR4Jr2CI+PQhfW1CpcQr9OlfPS+kMFegjXA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/visitor-keys@8.28.0': - resolution: {integrity: sha512-hbn8SZ8w4u2pRwgQ1GlUrPKE+t2XvcCW5tTRF7j6SMYIuYG37XuzIW44JCZPa36evi0Oy2SnM664BlIaAuQcvg==} + '@typescript-eslint/visitor-keys@8.29.0': + resolution: {integrity: sha512-Sne/pVz8ryR03NFK21VpN88dZ2FdQXOlq3VIklbrTYEt8yXtRFr9tvUhqvCeKjqYk5FSim37sHbooT6vzBTZcg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@unocss/astro@66.0.0': @@ -2069,8 +2069,8 @@ packages: resolution: {integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==} engines: {node: '>=8'} - typescript-eslint@8.28.0: - resolution: {integrity: sha512-jfZtxJoHm59bvoCMYCe2BM0/baMswRhMmYhy+w6VfcyHrjxZ0OJe0tGasydCpIpA+A/WIJhTyZfb3EtwNC/kHQ==} + typescript-eslint@8.29.0: + resolution: {integrity: sha512-ep9rVd9B4kQsZ7ZnWCVxUE/xDLUUUsRzE0poAeNu+4CkFErLfuvPt/qtm2EpnSyfvsR0S6QzDFSrPCFBwf64fg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -2767,14 +2767,14 @@ snapshots: '@types/unist@2.0.11': {} - '@typescript-eslint/eslint-plugin@8.28.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/eslint-plugin@8.29.0(@typescript-eslint/parser@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/scope-manager': 8.28.0 - '@typescript-eslint/type-utils': 8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/utils': 8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/visitor-keys': 8.28.0 + '@typescript-eslint/parser': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/scope-manager': 8.29.0 + '@typescript-eslint/type-utils': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/visitor-keys': 8.29.0 eslint: 9.23.0(jiti@2.4.2) graphemer: 1.4.0 ignore: 5.3.2 @@ -2784,27 +2784,27 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/parser@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: - '@typescript-eslint/scope-manager': 8.28.0 - '@typescript-eslint/types': 8.28.0 - '@typescript-eslint/typescript-estree': 8.28.0(typescript@5.8.2) - '@typescript-eslint/visitor-keys': 8.28.0 + '@typescript-eslint/scope-manager': 8.29.0 + '@typescript-eslint/types': 8.29.0 + '@typescript-eslint/typescript-estree': 8.29.0(typescript@5.8.2) + '@typescript-eslint/visitor-keys': 8.29.0 debug: 4.4.0(supports-color@8.1.1) eslint: 9.23.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@8.28.0': + '@typescript-eslint/scope-manager@8.29.0': dependencies: - '@typescript-eslint/types': 8.28.0 - '@typescript-eslint/visitor-keys': 8.28.0 + '@typescript-eslint/types': 8.29.0 + '@typescript-eslint/visitor-keys': 8.29.0 - '@typescript-eslint/type-utils@8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/type-utils@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: - '@typescript-eslint/typescript-estree': 8.28.0(typescript@5.8.2) - '@typescript-eslint/utils': 8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/typescript-estree': 8.29.0(typescript@5.8.2) + '@typescript-eslint/utils': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) debug: 4.4.0(supports-color@8.1.1) eslint: 9.23.0(jiti@2.4.2) ts-api-utils: 2.0.1(typescript@5.8.2) @@ -2812,12 +2812,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/types@8.28.0': {} + '@typescript-eslint/types@8.29.0': {} - '@typescript-eslint/typescript-estree@8.28.0(typescript@5.8.2)': + '@typescript-eslint/typescript-estree@8.29.0(typescript@5.8.2)': dependencies: - '@typescript-eslint/types': 8.28.0 - '@typescript-eslint/visitor-keys': 8.28.0 + '@typescript-eslint/types': 8.29.0 + '@typescript-eslint/visitor-keys': 8.29.0 debug: 4.4.0(supports-color@8.1.1) fast-glob: 3.3.3 is-glob: 4.0.3 @@ -2828,20 +2828,20 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/utils@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.23.0(jiti@2.4.2)) - '@typescript-eslint/scope-manager': 8.28.0 - '@typescript-eslint/types': 8.28.0 - '@typescript-eslint/typescript-estree': 8.28.0(typescript@5.8.2) + '@typescript-eslint/scope-manager': 8.29.0 + '@typescript-eslint/types': 8.29.0 + '@typescript-eslint/typescript-estree': 8.29.0(typescript@5.8.2) eslint: 9.23.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/visitor-keys@8.28.0': + '@typescript-eslint/visitor-keys@8.29.0': dependencies: - '@typescript-eslint/types': 8.28.0 + '@typescript-eslint/types': 8.29.0 eslint-visitor-keys: 4.2.0 '@unocss/astro@66.0.0(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': @@ -4051,11 +4051,11 @@ snapshots: type-fest@0.7.1: {} - typescript-eslint@8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2): + typescript-eslint@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2): dependencies: - '@typescript-eslint/eslint-plugin': 8.28.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/parser': 8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/utils': 8.28.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/eslint-plugin': 8.29.0(@typescript-eslint/parser@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/parser': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/utils': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) eslint: 9.23.0(jiti@2.4.2) typescript: 5.8.2 transitivePeerDependencies: From 02e886b21a9567af9d2dc6f8bf9baaebcbaf006d Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 1 Apr 2025 08:58:54 +0800 Subject: [PATCH 70/80] chore(deps): update dependency vite to v6.2.4 [security] (#2585) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 264 ++++++++++++++++++++++++------------------------- 1 file changed, 132 insertions(+), 132 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0dd1f572..f59c9726 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -122,7 +122,7 @@ importers: version: 1.2.2 '@sveltejs/vite-plugin-svelte': specifier: ^5.0.3 - version: 5.0.3(svelte@5.20.4)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) + version: 5.0.3(svelte@5.20.4)(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) '@tauri-apps/cli': specifier: 2.4.0 version: 2.4.0 @@ -134,10 +134,10 @@ importers: version: 5.20.4 unocss: specifier: ^66.0.0 - version: 66.0.0(postcss@8.5.3)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) + version: 66.0.0(postcss@8.5.3)(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) vite: specifier: ^6.2.0 - version: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + version: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) plugins/autostart: dependencies: @@ -192,7 +192,7 @@ importers: version: 5.8.2 vite: specifier: ^6.2.0 - version: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + version: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) plugins/dialog: dependencies: @@ -306,7 +306,7 @@ importers: version: 5.8.2 vite: specifier: ^6.2.0 - version: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + version: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) plugins/stronghold: dependencies: @@ -346,7 +346,7 @@ importers: version: 5.8.2 vite: specifier: ^6.2.0 - version: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + version: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) plugins/window-state: dependencies: @@ -443,152 +443,152 @@ packages: '@effection/subscription@2.0.6': resolution: {integrity: sha512-znTi75JFyC1S0YjyTtFEWNRQbhk01UxOapWELlIkZOwjGIEjcx6+G8y6n9JpZ8OGKmJQ0GBlRMZozsR5gcQvBg==} - '@esbuild/aix-ppc64@0.25.1': - resolution: {integrity: sha512-kfYGy8IdzTGy+z0vFGvExZtxkFlA4zAxgKEahG9KE1ScBjpQnFsNOX8KTU5ojNru5ed5CVoJYXFtoxaq5nFbjQ==} + '@esbuild/aix-ppc64@0.25.2': + resolution: {integrity: sha512-wCIboOL2yXZym2cgm6mlA742s9QeJ8DjGVaL39dLN4rRwrOgOyYSnOaFPhKZGLb2ngj4EyfAFjsNJwPXZvseag==} engines: {node: '>=18'} cpu: [ppc64] os: [aix] - '@esbuild/android-arm64@0.25.1': - resolution: {integrity: sha512-50tM0zCJW5kGqgG7fQ7IHvQOcAn9TKiVRuQ/lN0xR+T2lzEFvAi1ZcS8DiksFcEpf1t/GYOeOfCAgDHFpkiSmA==} + '@esbuild/android-arm64@0.25.2': + resolution: {integrity: sha512-5ZAX5xOmTligeBaeNEPnPaeEuah53Id2tX4c2CVP3JaROTH+j4fnfHCkr1PjXMd78hMst+TlkfKcW/DlTq0i4w==} engines: {node: '>=18'} cpu: [arm64] os: [android] - '@esbuild/android-arm@0.25.1': - resolution: {integrity: sha512-dp+MshLYux6j/JjdqVLnMglQlFu+MuVeNrmT5nk6q07wNhCdSnB7QZj+7G8VMUGh1q+vj2Bq8kRsuyA00I/k+Q==} + '@esbuild/android-arm@0.25.2': + resolution: {integrity: sha512-NQhH7jFstVY5x8CKbcfa166GoV0EFkaPkCKBQkdPJFvo5u+nGXLEH/ooniLb3QI8Fk58YAx7nsPLozUWfCBOJA==} engines: {node: '>=18'} cpu: [arm] os: [android] - '@esbuild/android-x64@0.25.1': - resolution: {integrity: sha512-GCj6WfUtNldqUzYkN/ITtlhwQqGWu9S45vUXs7EIYf+7rCiiqH9bCloatO9VhxsL0Pji+PF4Lz2XXCES+Q8hDw==} + '@esbuild/android-x64@0.25.2': + resolution: {integrity: sha512-Ffcx+nnma8Sge4jzddPHCZVRvIfQ0kMsUsCMcJRHkGJ1cDmhe4SsrYIjLUKn1xpHZybmOqCWwB0zQvsjdEHtkg==} engines: {node: '>=18'} cpu: [x64] os: [android] - '@esbuild/darwin-arm64@0.25.1': - resolution: {integrity: sha512-5hEZKPf+nQjYoSr/elb62U19/l1mZDdqidGfmFutVUjjUZrOazAtwK+Kr+3y0C/oeJfLlxo9fXb1w7L+P7E4FQ==} + '@esbuild/darwin-arm64@0.25.2': + resolution: {integrity: sha512-MpM6LUVTXAzOvN4KbjzU/q5smzryuoNjlriAIx+06RpecwCkL9JpenNzpKd2YMzLJFOdPqBpuub6eVRP5IgiSA==} engines: {node: '>=18'} cpu: [arm64] os: [darwin] - '@esbuild/darwin-x64@0.25.1': - resolution: {integrity: sha512-hxVnwL2Dqs3fM1IWq8Iezh0cX7ZGdVhbTfnOy5uURtao5OIVCEyj9xIzemDi7sRvKsuSdtCAhMKarxqtlyVyfA==} + '@esbuild/darwin-x64@0.25.2': + resolution: {integrity: sha512-5eRPrTX7wFyuWe8FqEFPG2cU0+butQQVNcT4sVipqjLYQjjh8a8+vUTfgBKM88ObB85ahsnTwF7PSIt6PG+QkA==} engines: {node: '>=18'} cpu: [x64] os: [darwin] - '@esbuild/freebsd-arm64@0.25.1': - resolution: {integrity: sha512-1MrCZs0fZa2g8E+FUo2ipw6jw5qqQiH+tERoS5fAfKnRx6NXH31tXBKI3VpmLijLH6yriMZsxJtaXUyFt/8Y4A==} + '@esbuild/freebsd-arm64@0.25.2': + resolution: {integrity: sha512-mLwm4vXKiQ2UTSX4+ImyiPdiHjiZhIaE9QvC7sw0tZ6HoNMjYAqQpGyui5VRIi5sGd+uWq940gdCbY3VLvsO1w==} engines: {node: '>=18'} cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-x64@0.25.1': - resolution: {integrity: sha512-0IZWLiTyz7nm0xuIs0q1Y3QWJC52R8aSXxe40VUxm6BB1RNmkODtW6LHvWRrGiICulcX7ZvyH6h5fqdLu4gkww==} + '@esbuild/freebsd-x64@0.25.2': + resolution: {integrity: sha512-6qyyn6TjayJSwGpm8J9QYYGQcRgc90nmfdUb0O7pp1s4lTY+9D0H9O02v5JqGApUyiHOtkz6+1hZNvNtEhbwRQ==} engines: {node: '>=18'} cpu: [x64] os: [freebsd] - '@esbuild/linux-arm64@0.25.1': - resolution: {integrity: sha512-jaN3dHi0/DDPelk0nLcXRm1q7DNJpjXy7yWaWvbfkPvI+7XNSc/lDOnCLN7gzsyzgu6qSAmgSvP9oXAhP973uQ==} + '@esbuild/linux-arm64@0.25.2': + resolution: {integrity: sha512-gq/sjLsOyMT19I8obBISvhoYiZIAaGF8JpeXu1u8yPv8BE5HlWYobmlsfijFIZ9hIVGYkbdFhEqC0NvM4kNO0g==} engines: {node: '>=18'} cpu: [arm64] os: [linux] - '@esbuild/linux-arm@0.25.1': - resolution: {integrity: sha512-NdKOhS4u7JhDKw9G3cY6sWqFcnLITn6SqivVArbzIaf3cemShqfLGHYMx8Xlm/lBit3/5d7kXvriTUGa5YViuQ==} + '@esbuild/linux-arm@0.25.2': + resolution: {integrity: sha512-UHBRgJcmjJv5oeQF8EpTRZs/1knq6loLxTsjc3nxO9eXAPDLcWW55flrMVc97qFPbmZP31ta1AZVUKQzKTzb0g==} engines: {node: '>=18'} cpu: [arm] os: [linux] - '@esbuild/linux-ia32@0.25.1': - resolution: {integrity: sha512-OJykPaF4v8JidKNGz8c/q1lBO44sQNUQtq1KktJXdBLn1hPod5rE/Hko5ugKKZd+D2+o1a9MFGUEIUwO2YfgkQ==} + '@esbuild/linux-ia32@0.25.2': + resolution: {integrity: sha512-bBYCv9obgW2cBP+2ZWfjYTU+f5cxRoGGQ5SeDbYdFCAZpYWrfjjfYwvUpP8MlKbP0nwZ5gyOU/0aUzZ5HWPuvQ==} engines: {node: '>=18'} cpu: [ia32] os: [linux] - '@esbuild/linux-loong64@0.25.1': - resolution: {integrity: sha512-nGfornQj4dzcq5Vp835oM/o21UMlXzn79KobKlcs3Wz9smwiifknLy4xDCLUU0BWp7b/houtdrgUz7nOGnfIYg==} + '@esbuild/linux-loong64@0.25.2': + resolution: {integrity: sha512-SHNGiKtvnU2dBlM5D8CXRFdd+6etgZ9dXfaPCeJtz+37PIUlixvlIhI23L5khKXs3DIzAn9V8v+qb1TRKrgT5w==} engines: {node: '>=18'} cpu: [loong64] os: [linux] - '@esbuild/linux-mips64el@0.25.1': - resolution: {integrity: sha512-1osBbPEFYwIE5IVB/0g2X6i1qInZa1aIoj1TdL4AaAb55xIIgbg8Doq6a5BzYWgr+tEcDzYH67XVnTmUzL+nXg==} + '@esbuild/linux-mips64el@0.25.2': + resolution: {integrity: sha512-hDDRlzE6rPeoj+5fsADqdUZl1OzqDYow4TB4Y/3PlKBD0ph1e6uPHzIQcv2Z65u2K0kpeByIyAjCmjn1hJgG0Q==} engines: {node: '>=18'} cpu: [mips64el] os: [linux] - '@esbuild/linux-ppc64@0.25.1': - resolution: {integrity: sha512-/6VBJOwUf3TdTvJZ82qF3tbLuWsscd7/1w+D9LH0W/SqUgM5/JJD0lrJ1fVIfZsqB6RFmLCe0Xz3fmZc3WtyVg==} + '@esbuild/linux-ppc64@0.25.2': + resolution: {integrity: sha512-tsHu2RRSWzipmUi9UBDEzc0nLc4HtpZEI5Ba+Omms5456x5WaNuiG3u7xh5AO6sipnJ9r4cRWQB2tUjPyIkc6g==} engines: {node: '>=18'} cpu: [ppc64] os: [linux] - '@esbuild/linux-riscv64@0.25.1': - resolution: {integrity: sha512-nSut/Mx5gnilhcq2yIMLMe3Wl4FK5wx/o0QuuCLMtmJn+WeWYoEGDN1ipcN72g1WHsnIbxGXd4i/MF0gTcuAjQ==} + '@esbuild/linux-riscv64@0.25.2': + resolution: {integrity: sha512-k4LtpgV7NJQOml/10uPU0s4SAXGnowi5qBSjaLWMojNCUICNu7TshqHLAEbkBdAszL5TabfvQ48kK84hyFzjnw==} engines: {node: '>=18'} cpu: [riscv64] os: [linux] - '@esbuild/linux-s390x@0.25.1': - resolution: {integrity: sha512-cEECeLlJNfT8kZHqLarDBQso9a27o2Zd2AQ8USAEoGtejOrCYHNtKP8XQhMDJMtthdF4GBmjR2au3x1udADQQQ==} + '@esbuild/linux-s390x@0.25.2': + resolution: {integrity: sha512-GRa4IshOdvKY7M/rDpRR3gkiTNp34M0eLTaC1a08gNrh4u488aPhuZOCpkF6+2wl3zAN7L7XIpOFBhnaE3/Q8Q==} engines: {node: '>=18'} cpu: [s390x] os: [linux] - '@esbuild/linux-x64@0.25.1': - resolution: {integrity: sha512-xbfUhu/gnvSEg+EGovRc+kjBAkrvtk38RlerAzQxvMzlB4fXpCFCeUAYzJvrnhFtdeyVCDANSjJvOvGYoeKzFA==} + '@esbuild/linux-x64@0.25.2': + resolution: {integrity: sha512-QInHERlqpTTZ4FRB0fROQWXcYRD64lAoiegezDunLpalZMjcUcld3YzZmVJ2H/Cp0wJRZ8Xtjtj0cEHhYc/uUg==} engines: {node: '>=18'} cpu: [x64] os: [linux] - '@esbuild/netbsd-arm64@0.25.1': - resolution: {integrity: sha512-O96poM2XGhLtpTh+s4+nP7YCCAfb4tJNRVZHfIE7dgmax+yMP2WgMd2OecBuaATHKTHsLWHQeuaxMRnCsH8+5g==} + '@esbuild/netbsd-arm64@0.25.2': + resolution: {integrity: sha512-talAIBoY5M8vHc6EeI2WW9d/CkiO9MQJ0IOWX8hrLhxGbro/vBXJvaQXefW2cP0z0nQVTdQ/eNyGFV1GSKrxfw==} engines: {node: '>=18'} cpu: [arm64] os: [netbsd] - '@esbuild/netbsd-x64@0.25.1': - resolution: {integrity: sha512-X53z6uXip6KFXBQ+Krbx25XHV/NCbzryM6ehOAeAil7X7oa4XIq+394PWGnwaSQ2WRA0KI6PUO6hTO5zeF5ijA==} + '@esbuild/netbsd-x64@0.25.2': + resolution: {integrity: sha512-voZT9Z+tpOxrvfKFyfDYPc4DO4rk06qamv1a/fkuzHpiVBMOhpjK+vBmWM8J1eiB3OLSMFYNaOaBNLXGChf5tg==} engines: {node: '>=18'} cpu: [x64] os: [netbsd] - '@esbuild/openbsd-arm64@0.25.1': - resolution: {integrity: sha512-Na9T3szbXezdzM/Kfs3GcRQNjHzM6GzFBeU1/6IV/npKP5ORtp9zbQjvkDJ47s6BCgaAZnnnu/cY1x342+MvZg==} + '@esbuild/openbsd-arm64@0.25.2': + resolution: {integrity: sha512-dcXYOC6NXOqcykeDlwId9kB6OkPUxOEqU+rkrYVqJbK2hagWOMrsTGsMr8+rW02M+d5Op5NNlgMmjzecaRf7Tg==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] - '@esbuild/openbsd-x64@0.25.1': - resolution: {integrity: sha512-T3H78X2h1tszfRSf+txbt5aOp/e7TAz3ptVKu9Oyir3IAOFPGV6O9c2naym5TOriy1l0nNf6a4X5UXRZSGX/dw==} + '@esbuild/openbsd-x64@0.25.2': + resolution: {integrity: sha512-t/TkWwahkH0Tsgoq1Ju7QfgGhArkGLkF1uYz8nQS/PPFlXbP5YgRpqQR3ARRiC2iXoLTWFxc6DJMSK10dVXluw==} engines: {node: '>=18'} cpu: [x64] os: [openbsd] - '@esbuild/sunos-x64@0.25.1': - resolution: {integrity: sha512-2H3RUvcmULO7dIE5EWJH8eubZAI4xw54H1ilJnRNZdeo8dTADEZ21w6J22XBkXqGJbe0+wnNJtw3UXRoLJnFEg==} + '@esbuild/sunos-x64@0.25.2': + resolution: {integrity: sha512-cfZH1co2+imVdWCjd+D1gf9NjkchVhhdpgb1q5y6Hcv9TP6Zi9ZG/beI3ig8TvwT9lH9dlxLq5MQBBgwuj4xvA==} engines: {node: '>=18'} cpu: [x64] os: [sunos] - '@esbuild/win32-arm64@0.25.1': - resolution: {integrity: sha512-GE7XvrdOzrb+yVKB9KsRMq+7a2U/K5Cf/8grVFRAGJmfADr/e/ODQ134RK2/eeHqYV5eQRFxb1hY7Nr15fv1NQ==} + '@esbuild/win32-arm64@0.25.2': + resolution: {integrity: sha512-7Loyjh+D/Nx/sOTzV8vfbB3GJuHdOQyrOryFdZvPHLf42Tk9ivBU5Aedi7iyX+x6rbn2Mh68T4qq1SDqJBQO5Q==} engines: {node: '>=18'} cpu: [arm64] os: [win32] - '@esbuild/win32-ia32@0.25.1': - resolution: {integrity: sha512-uOxSJCIcavSiT6UnBhBzE8wy3n0hOkJsBOzy7HDAuTDE++1DJMRRVCPGisULScHL+a/ZwdXPpXD3IyFKjA7K8A==} + '@esbuild/win32-ia32@0.25.2': + resolution: {integrity: sha512-WRJgsz9un0nqZJ4MfhabxaD9Ft8KioqU3JMinOTvobbX6MOSUigSBlogP8QB3uxpJDsFS6yN+3FDBdqE5lg9kg==} engines: {node: '>=18'} cpu: [ia32] os: [win32] - '@esbuild/win32-x64@0.25.1': - resolution: {integrity: sha512-Y1EQdcfwMSeQN/ujR5VayLOJ1BHaK+ssyk0AEzPjC+t1lITgsnccPqFjb6V+LsTp/9Iov4ysfjxLaGJ9RPtkVg==} + '@esbuild/win32-x64@0.25.2': + resolution: {integrity: sha512-kM3HKb16VIXZyIeVrM1ygYmZBKybX8N4p754bw390wGO3Tf2j4L2/WYL+4suWujpgf6GBYs3jv7TyUivdd05JA==} engines: {node: '>=18'} cpu: [x64] os: [win32] @@ -1331,8 +1331,8 @@ packages: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} - esbuild@0.25.1: - resolution: {integrity: sha512-BGO5LtrGC7vxnqucAe/rmvKdJllfGaYWdyABvyMoXQlfYMb2bbRuReWR5tEGE//4LcNJj9XrkovTqNYRFZHAMQ==} + esbuild@0.25.2: + resolution: {integrity: sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ==} engines: {node: '>=18'} hasBin: true @@ -2118,8 +2118,8 @@ packages: vfile@4.2.1: resolution: {integrity: sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==} - vite@6.2.3: - resolution: {integrity: sha512-IzwM54g4y9JA/xAeBPNaDXiBF8Jsgl3VBQ2YQ/wOY6fyW3xMdSoltIV3Bo59DErdqdE6RxUfv8W69DvUorE4Eg==} + vite@6.2.4: + resolution: {integrity: sha512-veHMSew8CcRzhL5o8ONjy8gkfmFJAd5Ac16oxBUjlwgX3Gq2Wqr+qNC3TjPIpy7TPV/KporLga5GT9HqdrCizw==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true peerDependencies: @@ -2398,79 +2398,79 @@ snapshots: dependencies: '@effection/core': 2.2.3 - '@esbuild/aix-ppc64@0.25.1': + '@esbuild/aix-ppc64@0.25.2': optional: true - '@esbuild/android-arm64@0.25.1': + '@esbuild/android-arm64@0.25.2': optional: true - '@esbuild/android-arm@0.25.1': + '@esbuild/android-arm@0.25.2': optional: true - '@esbuild/android-x64@0.25.1': + '@esbuild/android-x64@0.25.2': optional: true - '@esbuild/darwin-arm64@0.25.1': + '@esbuild/darwin-arm64@0.25.2': optional: true - '@esbuild/darwin-x64@0.25.1': + '@esbuild/darwin-x64@0.25.2': optional: true - '@esbuild/freebsd-arm64@0.25.1': + '@esbuild/freebsd-arm64@0.25.2': optional: true - '@esbuild/freebsd-x64@0.25.1': + '@esbuild/freebsd-x64@0.25.2': optional: true - '@esbuild/linux-arm64@0.25.1': + '@esbuild/linux-arm64@0.25.2': optional: true - '@esbuild/linux-arm@0.25.1': + '@esbuild/linux-arm@0.25.2': optional: true - '@esbuild/linux-ia32@0.25.1': + '@esbuild/linux-ia32@0.25.2': optional: true - '@esbuild/linux-loong64@0.25.1': + '@esbuild/linux-loong64@0.25.2': optional: true - '@esbuild/linux-mips64el@0.25.1': + '@esbuild/linux-mips64el@0.25.2': optional: true - '@esbuild/linux-ppc64@0.25.1': + '@esbuild/linux-ppc64@0.25.2': optional: true - '@esbuild/linux-riscv64@0.25.1': + '@esbuild/linux-riscv64@0.25.2': optional: true - '@esbuild/linux-s390x@0.25.1': + '@esbuild/linux-s390x@0.25.2': optional: true - '@esbuild/linux-x64@0.25.1': + '@esbuild/linux-x64@0.25.2': optional: true - '@esbuild/netbsd-arm64@0.25.1': + '@esbuild/netbsd-arm64@0.25.2': optional: true - '@esbuild/netbsd-x64@0.25.1': + '@esbuild/netbsd-x64@0.25.2': optional: true - '@esbuild/openbsd-arm64@0.25.1': + '@esbuild/openbsd-arm64@0.25.2': optional: true - '@esbuild/openbsd-x64@0.25.1': + '@esbuild/openbsd-x64@0.25.2': optional: true - '@esbuild/sunos-x64@0.25.1': + '@esbuild/sunos-x64@0.25.2': optional: true - '@esbuild/win32-arm64@0.25.1': + '@esbuild/win32-arm64@0.25.2': optional: true - '@esbuild/win32-ia32@0.25.1': + '@esbuild/win32-ia32@0.25.2': optional: true - '@esbuild/win32-x64@0.25.1': + '@esbuild/win32-x64@0.25.2': optional: true '@eslint-community/eslint-utils@4.4.1(eslint@9.23.0(jiti@2.4.2))': @@ -2684,25 +2684,25 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.38.0': optional: true - '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)))(svelte@5.20.4)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))': + '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)))(svelte@5.20.4)(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))': dependencies: - '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.4)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) + '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.4)(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) debug: 4.4.0(supports-color@8.1.1) svelte: 5.20.4 - vite: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + vite: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) transitivePeerDependencies: - supports-color - '@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))': + '@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))': dependencies: - '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)))(svelte@5.20.4)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) + '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)))(svelte@5.20.4)(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) debug: 4.4.0(supports-color@8.1.1) deepmerge: 4.3.1 kleur: 4.1.5 magic-string: 0.30.17 svelte: 5.20.4 - vite: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) - vitefu: 1.0.6(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) + vite: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + vitefu: 1.0.6(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) transitivePeerDependencies: - supports-color @@ -2844,13 +2844,13 @@ snapshots: '@typescript-eslint/types': 8.29.0 eslint-visitor-keys: 4.2.0 - '@unocss/astro@66.0.0(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': + '@unocss/astro@66.0.0(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': dependencies: '@unocss/core': 66.0.0 '@unocss/reset': 66.0.0 - '@unocss/vite': 66.0.0(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) + '@unocss/vite': 66.0.0(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) optionalDependencies: - vite: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + vite: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) transitivePeerDependencies: - vue @@ -2977,7 +2977,7 @@ snapshots: dependencies: '@unocss/core': 66.0.0 - '@unocss/vite@66.0.0(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': + '@unocss/vite@66.0.0(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': dependencies: '@ampproject/remapping': 2.3.0 '@unocss/config': 66.0.0 @@ -2987,7 +2987,7 @@ snapshots: magic-string: 0.30.17 tinyglobby: 0.2.12 unplugin-utils: 0.2.4 - vite: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + vite: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) transitivePeerDependencies: - vue @@ -3265,33 +3265,33 @@ snapshots: entities@4.5.0: {} - esbuild@0.25.1: + esbuild@0.25.2: optionalDependencies: - '@esbuild/aix-ppc64': 0.25.1 - '@esbuild/android-arm': 0.25.1 - '@esbuild/android-arm64': 0.25.1 - '@esbuild/android-x64': 0.25.1 - '@esbuild/darwin-arm64': 0.25.1 - '@esbuild/darwin-x64': 0.25.1 - '@esbuild/freebsd-arm64': 0.25.1 - '@esbuild/freebsd-x64': 0.25.1 - '@esbuild/linux-arm': 0.25.1 - '@esbuild/linux-arm64': 0.25.1 - '@esbuild/linux-ia32': 0.25.1 - '@esbuild/linux-loong64': 0.25.1 - '@esbuild/linux-mips64el': 0.25.1 - '@esbuild/linux-ppc64': 0.25.1 - '@esbuild/linux-riscv64': 0.25.1 - '@esbuild/linux-s390x': 0.25.1 - '@esbuild/linux-x64': 0.25.1 - '@esbuild/netbsd-arm64': 0.25.1 - '@esbuild/netbsd-x64': 0.25.1 - '@esbuild/openbsd-arm64': 0.25.1 - '@esbuild/openbsd-x64': 0.25.1 - '@esbuild/sunos-x64': 0.25.1 - '@esbuild/win32-arm64': 0.25.1 - '@esbuild/win32-ia32': 0.25.1 - '@esbuild/win32-x64': 0.25.1 + '@esbuild/aix-ppc64': 0.25.2 + '@esbuild/android-arm': 0.25.2 + '@esbuild/android-arm64': 0.25.2 + '@esbuild/android-x64': 0.25.2 + '@esbuild/darwin-arm64': 0.25.2 + '@esbuild/darwin-x64': 0.25.2 + '@esbuild/freebsd-arm64': 0.25.2 + '@esbuild/freebsd-x64': 0.25.2 + '@esbuild/linux-arm': 0.25.2 + '@esbuild/linux-arm64': 0.25.2 + '@esbuild/linux-ia32': 0.25.2 + '@esbuild/linux-loong64': 0.25.2 + '@esbuild/linux-mips64el': 0.25.2 + '@esbuild/linux-ppc64': 0.25.2 + '@esbuild/linux-riscv64': 0.25.2 + '@esbuild/linux-s390x': 0.25.2 + '@esbuild/linux-x64': 0.25.2 + '@esbuild/netbsd-arm64': 0.25.2 + '@esbuild/netbsd-x64': 0.25.2 + '@esbuild/openbsd-arm64': 0.25.2 + '@esbuild/openbsd-x64': 0.25.2 + '@esbuild/sunos-x64': 0.25.2 + '@esbuild/win32-arm64': 0.25.2 + '@esbuild/win32-ia32': 0.25.2 + '@esbuild/win32-x64': 0.25.2 escalade@3.2.0: {} @@ -4039,7 +4039,7 @@ snapshots: tsx@4.19.2: dependencies: - esbuild: 0.25.1 + esbuild: 0.25.2 get-tsconfig: 4.10.0 optionalDependencies: fsevents: 2.3.3 @@ -4085,9 +4085,9 @@ snapshots: dependencies: '@types/unist': 2.0.11 - unocss@66.0.0(postcss@8.5.3)(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)): + unocss@66.0.0(postcss@8.5.3)(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)): dependencies: - '@unocss/astro': 66.0.0(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) + '@unocss/astro': 66.0.0(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) '@unocss/cli': 66.0.0 '@unocss/core': 66.0.0 '@unocss/postcss': 66.0.0(postcss@8.5.3) @@ -4104,9 +4104,9 @@ snapshots: '@unocss/transformer-compile-class': 66.0.0 '@unocss/transformer-directives': 66.0.0 '@unocss/transformer-variant-group': 66.0.0 - '@unocss/vite': 66.0.0(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) + '@unocss/vite': 66.0.0(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) optionalDependencies: - vite: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + vite: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) transitivePeerDependencies: - postcss - supports-color @@ -4133,9 +4133,9 @@ snapshots: unist-util-stringify-position: 2.0.3 vfile-message: 2.0.4 - vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2): + vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2): dependencies: - esbuild: 0.25.1 + esbuild: 0.25.2 postcss: 8.5.3 rollup: 4.38.0 optionalDependencies: @@ -4144,9 +4144,9 @@ snapshots: terser: 5.39.0 tsx: 4.19.2 - vitefu@1.0.6(vite@6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)): + vitefu@1.0.6(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)): optionalDependencies: - vite: 6.2.3(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) + vite: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) vue-flow-layout@0.1.1(vue@3.5.13(typescript@5.8.2)): dependencies: From d2aef2fddbdfad6526935c55ac10a94171a4f5f5 Mon Sep 17 00:00:00 2001 From: Tony <68118705+Legend-Master@users.noreply.github.com> Date: Tue, 1 Apr 2025 22:17:23 +0800 Subject: [PATCH 71/80] chore(process): use `request_restart` (#2581) --- .changes/request-restart.md | 6 ++++++ plugins/process/src/commands.rs | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 .changes/request-restart.md diff --git a/.changes/request-restart.md b/.changes/request-restart.md new file mode 100644 index 00000000..4d88e6ed --- /dev/null +++ b/.changes/request-restart.md @@ -0,0 +1,6 @@ +--- +process: patch +process-js: patch +--- + +Migrate restart to use tauri's new `AppHandle::request_restart` method diff --git a/plugins/process/src/commands.rs b/plugins/process/src/commands.rs index 2c27a3d2..3777294a 100644 --- a/plugins/process/src/commands.rs +++ b/plugins/process/src/commands.rs @@ -11,5 +11,5 @@ pub fn exit(app: AppHandle, code: i32) { #[tauri::command] pub fn restart(app: AppHandle) { - app.restart() + app.request_restart() } From 4dd5c5143641be5af3cab7c1014b236ec597c166 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 2 Apr 2025 09:37:19 +0800 Subject: [PATCH 72/80] chore(deps): update tauri monorepo to v2.4.1 (v2) (#2589) * chore(deps): update tauri monorepo to v2.4.1 * Update tauri and regenerate command ref and schema --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Tony --- Cargo.lock | 32 +- examples/api/package.json | 4 +- .../permissions/autogenerated/reference.md | 2 + .../autostart/permissions/schemas/schema.json | 23 +- .../permissions/autogenerated/reference.md | 2 + .../permissions/schemas/schema.json | 41 +- .../permissions/autogenerated/reference.md | 2 + .../biometric/permissions/schemas/schema.json | 17 +- .../permissions/autogenerated/reference.md | 2 + plugins/cli/permissions/schemas/schema.json | 11 +- .../permissions/autogenerated/reference.md | 2 + .../permissions/schemas/schema.json | 39 +- plugins/deep-link/examples/app/package.json | 4 +- .../permissions/autogenerated/reference.md | 2 + .../deep-link/permissions/schemas/schema.json | 29 +- .../permissions/autogenerated/reference.md | 2 + .../dialog/permissions/schemas/schema.json | 35 +- .../fs/permissions/autogenerated/reference.md | 2 +- plugins/fs/permissions/default.toml | 2 - plugins/fs/permissions/schemas/schema.json | 1168 ++++++++++------- .../permissions/schemas/schema.json | 36 +- .../permissions/autogenerated/reference.md | 2 + .../permissions/schemas/schema.json | 33 +- .../haptics/permissions/schemas/schema.json | 24 +- .../permissions/autogenerated/reference.md | 2 + plugins/http/permissions/schemas/schema.json | 29 +- .../permissions/autogenerated/reference.md | 2 + plugins/log/permissions/schemas/schema.json | 11 +- .../permissions/autogenerated/reference.md | 2 + plugins/nfc/permissions/schemas/schema.json | 23 +- .../permissions/autogenerated/reference.md | 2 + .../permissions/schemas/schema.json | 101 +- .../permissions/autogenerated/reference.md | 2 + .../opener/permissions/schemas/schema.json | 26 +- .../os/permissions/autogenerated/reference.md | 2 + plugins/os/permissions/schemas/schema.json | 53 +- .../permissions/autogenerated/reference.md | 2 + .../permissions/schemas/schema.json | 23 +- .../permissions/autogenerated/reference.md | 2 + .../process/permissions/schemas/schema.json | 17 +- .../permissions/autogenerated/reference.md | 2 + plugins/shell/permissions/schemas/schema.json | 35 +- .../examples/vanilla/package.json | 2 +- .../permissions/autogenerated/reference.md | 2 + plugins/sql/permissions/schemas/schema.json | 29 +- .../examples/AppSettingsManager/package.json | 2 +- .../permissions/autogenerated/reference.md | 2 + plugins/store/permissions/schemas/schema.json | 89 +- .../permissions/autogenerated/reference.md | 2 + .../permissions/schemas/schema.json | 71 +- .../permissions/autogenerated/reference.md | 2 + .../updater/permissions/schemas/schema.json | 29 +- .../permissions/autogenerated/reference.md | 2 + .../upload/permissions/schemas/schema.json | 17 +- .../websocket/examples/tauri-app/package.json | 2 +- .../permissions/autogenerated/reference.md | 2 + .../websocket/permissions/schemas/schema.json | 17 +- .../permissions/autogenerated/reference.md | 2 + .../permissions/schemas/schema.json | 23 +- pnpm-lock.yaml | 182 +-- 60 files changed, 1471 insertions(+), 858 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 32fa0404..f6947223 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -6424,9 +6424,9 @@ checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" [[package]] name = "tauri" -version = "2.4.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "511dd38065a5d3b36c33cdba4362b99a40a5103bebcd4aebb930717e7c8ba292" +checksum = "4d08db1ff9e011e04014e737ec022610d756c0eae0b3b3a9037bccaf3003173a" dependencies = [ "anyhow", "bytes", @@ -6478,9 +6478,9 @@ dependencies = [ [[package]] name = "tauri-build" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ffa8732a66f90903f5a585215f3cf1e87988d0359bc88c18a502efe7572c1de" +checksum = "0fd20e4661c2cce65343319e6e8da256958f5af958cafc47c0d0af66a55dcd17" dependencies = [ "anyhow", "cargo_toml", @@ -6502,9 +6502,9 @@ dependencies = [ [[package]] name = "tauri-codegen" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c266a247f14d63f40c6282c2653a8bac5cc3d482ca562a003a88513653ea817a" +checksum = "458258b19032450ccf975840116ecf013e539eadbb74420bd890e8c56ab2b1a4" dependencies = [ "base64 0.22.1", "brotli", @@ -6529,9 +6529,9 @@ dependencies = [ [[package]] name = "tauri-macros" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f47a1cf94b3bd6c4dc37dce1a43fc96120ff29a91757f0ab3cf713c7ad846e7c" +checksum = "d402813d3b9c773a0fa58697c457c771f10e735498fdcb7b343264d18e5a601f" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -6543,9 +6543,9 @@ dependencies = [ [[package]] name = "tauri-plugin" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9972871fcbddf16618f70412d965d4d845cd4b76d03fff168709961ef71e5cdf" +checksum = "a4190775d6ff73fe66d9af44c012739a2659720efd9c0e1e56a918678038699d" dependencies = [ "anyhow", "glob", @@ -7045,9 +7045,9 @@ dependencies = [ [[package]] name = "tauri-runtime" -version = "2.5.0" +version = "2.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e9c7bce5153f1ca7bc45eba37349b31ba50e975e28edc8b5766c5ec02b0b63a" +checksum = "00ada7ac2f9276f09b8c3afffd3215fd5d9bff23c22df8a7c70e7ef67cacd532" dependencies = [ "cookie", "dpi", @@ -7065,9 +7065,9 @@ dependencies = [ [[package]] name = "tauri-runtime-wry" -version = "2.5.0" +version = "2.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "087188020fd6facb8578fe9b38e81fa0fe5fb85744c73da51a299f94a530a1e3" +checksum = "cf2e5842c57e154af43a20a49c7efee0ce2578c20b4c2bdf266852b422d2e421" dependencies = [ "gtk", "http", @@ -7092,9 +7092,9 @@ dependencies = [ [[package]] name = "tauri-utils" -version = "2.3.0" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82dcced4014e59af9790cc22f5d271df3be09ecd6728ec68861642553c8d01b7" +checksum = "1f037e66c7638cc0a2213f61566932b9a06882b8346486579c90e4b019bac447" dependencies = [ "aes-gcm", "anyhow", diff --git a/examples/api/package.json b/examples/api/package.json index 58a6f02b..1696c7fd 100644 --- a/examples/api/package.json +++ b/examples/api/package.json @@ -10,7 +10,7 @@ "tauri": "tauri" }, "dependencies": { - "@tauri-apps/api": "2.4.0", + "@tauri-apps/api": "2.4.1", "@tauri-apps/plugin-barcode-scanner": "^2.2.0", "@tauri-apps/plugin-biometric": "^2.2.0", "@tauri-apps/plugin-cli": "^2.2.0", @@ -35,7 +35,7 @@ "@iconify-json/codicon": "^1.2.12", "@iconify-json/ph": "^1.2.2", "@sveltejs/vite-plugin-svelte": "^5.0.3", - "@tauri-apps/cli": "2.4.0", + "@tauri-apps/cli": "2.4.1", "@unocss/extractor-svelte": "^66.0.0", "svelte": "^5.20.4", "unocss": "^66.0.0", diff --git a/plugins/autostart/permissions/autogenerated/reference.md b/plugins/autostart/permissions/autogenerated/reference.md index 6e40fdb7..6adb2be4 100644 --- a/plugins/autostart/permissions/autogenerated/reference.md +++ b/plugins/autostart/permissions/autogenerated/reference.md @@ -11,6 +11,8 @@ disable the automatic start on boot. +#### This default permission set includes the following: + - `allow-enable` - `allow-disable` - `allow-is-enabled` diff --git a/plugins/autostart/permissions/schemas/schema.json b/plugins/autostart/permissions/schemas/schema.json index defb923c..af681221 100644 --- a/plugins/autostart/permissions/schemas/schema.json +++ b/plugins/autostart/permissions/schemas/schema.json @@ -297,37 +297,44 @@ { "description": "Enables the disable command without any pre-configured scope.", "type": "string", - "const": "allow-disable" + "const": "allow-disable", + "markdownDescription": "Enables the disable command without any pre-configured scope." }, { "description": "Denies the disable command without any pre-configured scope.", "type": "string", - "const": "deny-disable" + "const": "deny-disable", + "markdownDescription": "Denies the disable command without any pre-configured scope." }, { "description": "Enables the enable command without any pre-configured scope.", "type": "string", - "const": "allow-enable" + "const": "allow-enable", + "markdownDescription": "Enables the enable command without any pre-configured scope." }, { "description": "Denies the enable command without any pre-configured scope.", "type": "string", - "const": "deny-enable" + "const": "deny-enable", + "markdownDescription": "Denies the enable command without any pre-configured scope." }, { "description": "Enables the is_enabled command without any pre-configured scope.", "type": "string", - "const": "allow-is-enabled" + "const": "allow-is-enabled", + "markdownDescription": "Enables the is_enabled command without any pre-configured scope." }, { "description": "Denies the is_enabled command without any pre-configured scope.", "type": "string", - "const": "deny-is-enabled" + "const": "deny-is-enabled", + "markdownDescription": "Denies the is_enabled command without any pre-configured scope." }, { - "description": "This permission set configures if your\napplication can enable or disable auto\nstarting the application on boot.\n\n#### Granted Permissions\n\nIt allows all to check, enable and\ndisable the automatic start on boot.\n\n", + "description": "This permission set configures if your\napplication can enable or disable auto\nstarting the application on boot.\n\n#### Granted Permissions\n\nIt allows all to check, enable and\ndisable the automatic start on boot.\n\n\n#### This default permission set includes:\n\n- `allow-enable`\n- `allow-disable`\n- `allow-is-enabled`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This permission set configures if your\napplication can enable or disable auto\nstarting the application on boot.\n\n#### Granted Permissions\n\nIt allows all to check, enable and\ndisable the automatic start on boot.\n\n\n#### This default permission set includes:\n\n- `allow-enable`\n- `allow-disable`\n- `allow-is-enabled`" } ] } diff --git a/plugins/barcode-scanner/permissions/autogenerated/reference.md b/plugins/barcode-scanner/permissions/autogenerated/reference.md index 50cbcf99..9cc9f3c6 100644 --- a/plugins/barcode-scanner/permissions/autogenerated/reference.md +++ b/plugins/barcode-scanner/permissions/autogenerated/reference.md @@ -9,6 +9,8 @@ It allows all barcode related features. +#### This default permission set includes the following: + - `allow-cancel` - `allow-check-permissions` - `allow-open-app-settings` diff --git a/plugins/barcode-scanner/permissions/schemas/schema.json b/plugins/barcode-scanner/permissions/schemas/schema.json index dc2ab019..69fb0d5d 100644 --- a/plugins/barcode-scanner/permissions/schemas/schema.json +++ b/plugins/barcode-scanner/permissions/schemas/schema.json @@ -297,67 +297,80 @@ { "description": "Enables the cancel command without any pre-configured scope.", "type": "string", - "const": "allow-cancel" + "const": "allow-cancel", + "markdownDescription": "Enables the cancel command without any pre-configured scope." }, { "description": "Denies the cancel command without any pre-configured scope.", "type": "string", - "const": "deny-cancel" + "const": "deny-cancel", + "markdownDescription": "Denies the cancel command without any pre-configured scope." }, { "description": "Enables the check_permissions command without any pre-configured scope.", "type": "string", - "const": "allow-check-permissions" + "const": "allow-check-permissions", + "markdownDescription": "Enables the check_permissions command without any pre-configured scope." }, { "description": "Denies the check_permissions command without any pre-configured scope.", "type": "string", - "const": "deny-check-permissions" + "const": "deny-check-permissions", + "markdownDescription": "Denies the check_permissions command without any pre-configured scope." }, { "description": "Enables the open_app_settings command without any pre-configured scope.", "type": "string", - "const": "allow-open-app-settings" + "const": "allow-open-app-settings", + "markdownDescription": "Enables the open_app_settings command without any pre-configured scope." }, { "description": "Denies the open_app_settings command without any pre-configured scope.", "type": "string", - "const": "deny-open-app-settings" + "const": "deny-open-app-settings", + "markdownDescription": "Denies the open_app_settings command without any pre-configured scope." }, { "description": "Enables the request_permissions command without any pre-configured scope.", "type": "string", - "const": "allow-request-permissions" + "const": "allow-request-permissions", + "markdownDescription": "Enables the request_permissions command without any pre-configured scope." }, { "description": "Denies the request_permissions command without any pre-configured scope.", "type": "string", - "const": "deny-request-permissions" + "const": "deny-request-permissions", + "markdownDescription": "Denies the request_permissions command without any pre-configured scope." }, { "description": "Enables the scan command without any pre-configured scope.", "type": "string", - "const": "allow-scan" + "const": "allow-scan", + "markdownDescription": "Enables the scan command without any pre-configured scope." }, { "description": "Denies the scan command without any pre-configured scope.", "type": "string", - "const": "deny-scan" + "const": "deny-scan", + "markdownDescription": "Denies the scan command without any pre-configured scope." }, { "description": "Enables the vibrate command without any pre-configured scope.", "type": "string", - "const": "allow-vibrate" + "const": "allow-vibrate", + "markdownDescription": "Enables the vibrate command without any pre-configured scope." }, { "description": "Denies the vibrate command without any pre-configured scope.", "type": "string", - "const": "deny-vibrate" + "const": "deny-vibrate", + "markdownDescription": "Denies the vibrate command without any pre-configured scope." }, { - "description": "This permission set configures which\nbarcode scanning features are by default exposed.\n\n#### Granted Permissions\n\nIt allows all barcode related features.\n\n", + "description": "This permission set configures which\nbarcode scanning features are by default exposed.\n\n#### Granted Permissions\n\nIt allows all barcode related features.\n\n\n#### This default permission set includes:\n\n- `allow-cancel`\n- `allow-check-permissions`\n- `allow-open-app-settings`\n- `allow-request-permissions`\n- `allow-scan`\n- `allow-vibrate`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This permission set configures which\nbarcode scanning features are by default exposed.\n\n#### Granted Permissions\n\nIt allows all barcode related features.\n\n\n#### This default permission set includes:\n\n- `allow-cancel`\n- `allow-check-permissions`\n- `allow-open-app-settings`\n- `allow-request-permissions`\n- `allow-scan`\n- `allow-vibrate`" } ] } diff --git a/plugins/biometric/permissions/autogenerated/reference.md b/plugins/biometric/permissions/autogenerated/reference.md index 37a9fa07..8f085093 100644 --- a/plugins/biometric/permissions/autogenerated/reference.md +++ b/plugins/biometric/permissions/autogenerated/reference.md @@ -9,6 +9,8 @@ It allows acccess to all biometric commands. +#### This default permission set includes the following: + - `allow-authenticate` - `allow-status` diff --git a/plugins/biometric/permissions/schemas/schema.json b/plugins/biometric/permissions/schemas/schema.json index 891877b6..416759b5 100644 --- a/plugins/biometric/permissions/schemas/schema.json +++ b/plugins/biometric/permissions/schemas/schema.json @@ -297,27 +297,32 @@ { "description": "Enables the authenticate command without any pre-configured scope.", "type": "string", - "const": "allow-authenticate" + "const": "allow-authenticate", + "markdownDescription": "Enables the authenticate command without any pre-configured scope." }, { "description": "Denies the authenticate command without any pre-configured scope.", "type": "string", - "const": "deny-authenticate" + "const": "deny-authenticate", + "markdownDescription": "Denies the authenticate command without any pre-configured scope." }, { "description": "Enables the status command without any pre-configured scope.", "type": "string", - "const": "allow-status" + "const": "allow-status", + "markdownDescription": "Enables the status command without any pre-configured scope." }, { "description": "Denies the status command without any pre-configured scope.", "type": "string", - "const": "deny-status" + "const": "deny-status", + "markdownDescription": "Denies the status command without any pre-configured scope." }, { - "description": "This permission set configures which\nbiometric features are by default exposed.\n\n#### Granted Permissions\n\nIt allows acccess to all biometric commands.\n\n", + "description": "This permission set configures which\nbiometric features are by default exposed.\n\n#### Granted Permissions\n\nIt allows acccess to all biometric commands.\n\n\n#### This default permission set includes:\n\n- `allow-authenticate`\n- `allow-status`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This permission set configures which\nbiometric features are by default exposed.\n\n#### Granted Permissions\n\nIt allows acccess to all biometric commands.\n\n\n#### This default permission set includes:\n\n- `allow-authenticate`\n- `allow-status`" } ] } diff --git a/plugins/cli/permissions/autogenerated/reference.md b/plugins/cli/permissions/autogenerated/reference.md index a920b749..cfa83f0a 100644 --- a/plugins/cli/permissions/autogenerated/reference.md +++ b/plugins/cli/permissions/autogenerated/reference.md @@ -2,6 +2,8 @@ Allows reading the CLI matches +#### This default permission set includes the following: + - `allow-cli-matches` ## Permission Table diff --git a/plugins/cli/permissions/schemas/schema.json b/plugins/cli/permissions/schemas/schema.json index fb1ec637..45941514 100644 --- a/plugins/cli/permissions/schemas/schema.json +++ b/plugins/cli/permissions/schemas/schema.json @@ -297,17 +297,20 @@ { "description": "Enables the cli_matches command without any pre-configured scope.", "type": "string", - "const": "allow-cli-matches" + "const": "allow-cli-matches", + "markdownDescription": "Enables the cli_matches command without any pre-configured scope." }, { "description": "Denies the cli_matches command without any pre-configured scope.", "type": "string", - "const": "deny-cli-matches" + "const": "deny-cli-matches", + "markdownDescription": "Denies the cli_matches command without any pre-configured scope." }, { - "description": "Allows reading the CLI matches", + "description": "Allows reading the CLI matches\n#### This default permission set includes:\n\n- `allow-cli-matches`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "Allows reading the CLI matches\n#### This default permission set includes:\n\n- `allow-cli-matches`" } ] } diff --git a/plugins/clipboard-manager/permissions/autogenerated/reference.md b/plugins/clipboard-manager/permissions/autogenerated/reference.md index 6b8bf14f..f8bed009 100644 --- a/plugins/clipboard-manager/permissions/autogenerated/reference.md +++ b/plugins/clipboard-manager/permissions/autogenerated/reference.md @@ -7,6 +7,8 @@ application specific if read and/or write access is needed. Clipboard interaction needs to be explicitly enabled. +#### This default permission set includes the following: + ## Permission Table diff --git a/plugins/clipboard-manager/permissions/schemas/schema.json b/plugins/clipboard-manager/permissions/schemas/schema.json index 7e23e9a3..891c6f0d 100644 --- a/plugins/clipboard-manager/permissions/schemas/schema.json +++ b/plugins/clipboard-manager/permissions/schemas/schema.json @@ -297,67 +297,80 @@ { "description": "Enables the clear command without any pre-configured scope.", "type": "string", - "const": "allow-clear" + "const": "allow-clear", + "markdownDescription": "Enables the clear command without any pre-configured scope." }, { "description": "Denies the clear command without any pre-configured scope.", "type": "string", - "const": "deny-clear" + "const": "deny-clear", + "markdownDescription": "Denies the clear command without any pre-configured scope." }, { "description": "Enables the read_image command without any pre-configured scope.", "type": "string", - "const": "allow-read-image" + "const": "allow-read-image", + "markdownDescription": "Enables the read_image command without any pre-configured scope." }, { "description": "Denies the read_image command without any pre-configured scope.", "type": "string", - "const": "deny-read-image" + "const": "deny-read-image", + "markdownDescription": "Denies the read_image command without any pre-configured scope." }, { "description": "Enables the read_text command without any pre-configured scope.", "type": "string", - "const": "allow-read-text" + "const": "allow-read-text", + "markdownDescription": "Enables the read_text command without any pre-configured scope." }, { "description": "Denies the read_text command without any pre-configured scope.", "type": "string", - "const": "deny-read-text" + "const": "deny-read-text", + "markdownDescription": "Denies the read_text command without any pre-configured scope." }, { "description": "Enables the write_html command without any pre-configured scope.", "type": "string", - "const": "allow-write-html" + "const": "allow-write-html", + "markdownDescription": "Enables the write_html command without any pre-configured scope." }, { "description": "Denies the write_html command without any pre-configured scope.", "type": "string", - "const": "deny-write-html" + "const": "deny-write-html", + "markdownDescription": "Denies the write_html command without any pre-configured scope." }, { "description": "Enables the write_image command without any pre-configured scope.", "type": "string", - "const": "allow-write-image" + "const": "allow-write-image", + "markdownDescription": "Enables the write_image command without any pre-configured scope." }, { "description": "Denies the write_image command without any pre-configured scope.", "type": "string", - "const": "deny-write-image" + "const": "deny-write-image", + "markdownDescription": "Denies the write_image command without any pre-configured scope." }, { "description": "Enables the write_text command without any pre-configured scope.", "type": "string", - "const": "allow-write-text" + "const": "allow-write-text", + "markdownDescription": "Enables the write_text command without any pre-configured scope." }, { "description": "Denies the write_text command without any pre-configured scope.", "type": "string", - "const": "deny-write-text" + "const": "deny-write-text", + "markdownDescription": "Denies the write_text command without any pre-configured scope." }, { "description": "No features are enabled by default, as we believe\nthe clipboard can be inherently dangerous and it is \napplication specific if read and/or write access is needed.\n\nClipboard interaction needs to be explicitly enabled.\n", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "No features are enabled by default, as we believe\nthe clipboard can be inherently dangerous and it is \napplication specific if read and/or write access is needed.\n\nClipboard interaction needs to be explicitly enabled.\n" } ] } diff --git a/plugins/deep-link/examples/app/package.json b/plugins/deep-link/examples/app/package.json index ad3adffc..e4dd76d8 100644 --- a/plugins/deep-link/examples/app/package.json +++ b/plugins/deep-link/examples/app/package.json @@ -10,11 +10,11 @@ "tauri": "tauri" }, "dependencies": { - "@tauri-apps/api": "2.4.0", + "@tauri-apps/api": "2.4.1", "@tauri-apps/plugin-deep-link": "2.2.0" }, "devDependencies": { - "@tauri-apps/cli": "2.4.0", + "@tauri-apps/cli": "2.4.1", "typescript": "^5.7.3", "vite": "^6.2.0" } diff --git a/plugins/deep-link/permissions/autogenerated/reference.md b/plugins/deep-link/permissions/autogenerated/reference.md index 3b84f1c5..a8ef1874 100644 --- a/plugins/deep-link/permissions/autogenerated/reference.md +++ b/plugins/deep-link/permissions/autogenerated/reference.md @@ -2,6 +2,8 @@ Allows reading the opened deep link via the get_current command +#### This default permission set includes the following: + - `allow-get-current` ## Permission Table diff --git a/plugins/deep-link/permissions/schemas/schema.json b/plugins/deep-link/permissions/schemas/schema.json index 1c96c7d5..c9fc2ceb 100644 --- a/plugins/deep-link/permissions/schemas/schema.json +++ b/plugins/deep-link/permissions/schemas/schema.json @@ -297,47 +297,56 @@ { "description": "Enables the get_current command without any pre-configured scope.", "type": "string", - "const": "allow-get-current" + "const": "allow-get-current", + "markdownDescription": "Enables the get_current command without any pre-configured scope." }, { "description": "Denies the get_current command without any pre-configured scope.", "type": "string", - "const": "deny-get-current" + "const": "deny-get-current", + "markdownDescription": "Denies the get_current command without any pre-configured scope." }, { "description": "Enables the is_registered command without any pre-configured scope.", "type": "string", - "const": "allow-is-registered" + "const": "allow-is-registered", + "markdownDescription": "Enables the is_registered command without any pre-configured scope." }, { "description": "Denies the is_registered command without any pre-configured scope.", "type": "string", - "const": "deny-is-registered" + "const": "deny-is-registered", + "markdownDescription": "Denies the is_registered command without any pre-configured scope." }, { "description": "Enables the register command without any pre-configured scope.", "type": "string", - "const": "allow-register" + "const": "allow-register", + "markdownDescription": "Enables the register command without any pre-configured scope." }, { "description": "Denies the register command without any pre-configured scope.", "type": "string", - "const": "deny-register" + "const": "deny-register", + "markdownDescription": "Denies the register command without any pre-configured scope." }, { "description": "Enables the unregister command without any pre-configured scope.", "type": "string", - "const": "allow-unregister" + "const": "allow-unregister", + "markdownDescription": "Enables the unregister command without any pre-configured scope." }, { "description": "Denies the unregister command without any pre-configured scope.", "type": "string", - "const": "deny-unregister" + "const": "deny-unregister", + "markdownDescription": "Denies the unregister command without any pre-configured scope." }, { - "description": "Allows reading the opened deep link via the get_current command", + "description": "Allows reading the opened deep link via the get_current command\n#### This default permission set includes:\n\n- `allow-get-current`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "Allows reading the opened deep link via the get_current command\n#### This default permission set includes:\n\n- `allow-get-current`" } ] } diff --git a/plugins/dialog/permissions/autogenerated/reference.md b/plugins/dialog/permissions/autogenerated/reference.md index d93595d1..246c7733 100644 --- a/plugins/dialog/permissions/autogenerated/reference.md +++ b/plugins/dialog/permissions/autogenerated/reference.md @@ -10,6 +10,8 @@ All dialog types are enabled. +#### This default permission set includes the following: + - `allow-ask` - `allow-confirm` - `allow-message` diff --git a/plugins/dialog/permissions/schemas/schema.json b/plugins/dialog/permissions/schemas/schema.json index 4fa8bdf3..b47417ec 100644 --- a/plugins/dialog/permissions/schemas/schema.json +++ b/plugins/dialog/permissions/schemas/schema.json @@ -297,57 +297,68 @@ { "description": "Enables the ask command without any pre-configured scope.", "type": "string", - "const": "allow-ask" + "const": "allow-ask", + "markdownDescription": "Enables the ask command without any pre-configured scope." }, { "description": "Denies the ask command without any pre-configured scope.", "type": "string", - "const": "deny-ask" + "const": "deny-ask", + "markdownDescription": "Denies the ask command without any pre-configured scope." }, { "description": "Enables the confirm command without any pre-configured scope.", "type": "string", - "const": "allow-confirm" + "const": "allow-confirm", + "markdownDescription": "Enables the confirm command without any pre-configured scope." }, { "description": "Denies the confirm command without any pre-configured scope.", "type": "string", - "const": "deny-confirm" + "const": "deny-confirm", + "markdownDescription": "Denies the confirm command without any pre-configured scope." }, { "description": "Enables the message command without any pre-configured scope.", "type": "string", - "const": "allow-message" + "const": "allow-message", + "markdownDescription": "Enables the message command without any pre-configured scope." }, { "description": "Denies the message command without any pre-configured scope.", "type": "string", - "const": "deny-message" + "const": "deny-message", + "markdownDescription": "Denies the message command without any pre-configured scope." }, { "description": "Enables the open command without any pre-configured scope.", "type": "string", - "const": "allow-open" + "const": "allow-open", + "markdownDescription": "Enables the open command without any pre-configured scope." }, { "description": "Denies the open command without any pre-configured scope.", "type": "string", - "const": "deny-open" + "const": "deny-open", + "markdownDescription": "Denies the open command without any pre-configured scope." }, { "description": "Enables the save command without any pre-configured scope.", "type": "string", - "const": "allow-save" + "const": "allow-save", + "markdownDescription": "Enables the save command without any pre-configured scope." }, { "description": "Denies the save command without any pre-configured scope.", "type": "string", - "const": "deny-save" + "const": "deny-save", + "markdownDescription": "Denies the save command without any pre-configured scope." }, { - "description": "This permission set configures the types of dialogs\navailable from the dialog plugin.\n\n#### Granted Permissions\n\nAll dialog types are enabled.\n\n\n", + "description": "This permission set configures the types of dialogs\navailable from the dialog plugin.\n\n#### Granted Permissions\n\nAll dialog types are enabled.\n\n\n\n#### This default permission set includes:\n\n- `allow-ask`\n- `allow-confirm`\n- `allow-message`\n- `allow-save`\n- `allow-open`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This permission set configures the types of dialogs\navailable from the dialog plugin.\n\n#### Granted Permissions\n\nAll dialog types are enabled.\n\n\n\n#### This default permission set includes:\n\n- `allow-ask`\n- `allow-confirm`\n- `allow-message`\n- `allow-save`\n- `allow-open`" } ] } diff --git a/plugins/fs/permissions/autogenerated/reference.md b/plugins/fs/permissions/autogenerated/reference.md index 3cec32ed..35ef551f 100644 --- a/plugins/fs/permissions/autogenerated/reference.md +++ b/plugins/fs/permissions/autogenerated/reference.md @@ -24,8 +24,8 @@ This default permission set prevents access to critical components of the Tauri application by default. On Windows the webview data folder access is denied. -#### Included permissions within this default permission set: +#### This default permission set includes the following: - `create-app-specific-dirs` - `read-app-specific-dirs-recursive` diff --git a/plugins/fs/permissions/default.toml b/plugins/fs/permissions/default.toml index 4cc7bd51..78836df7 100644 --- a/plugins/fs/permissions/default.toml +++ b/plugins/fs/permissions/default.toml @@ -25,8 +25,6 @@ the `mkdir` command. This default permission set prevents access to critical components of the Tauri application by default. On Windows the webview data folder access is denied. - -#### Included permissions within this default permission set: """ permissions = [ "create-app-specific-dirs", diff --git a/plugins/fs/permissions/schemas/schema.json b/plugins/fs/permissions/schemas/schema.json index e8706b04..54c6798b 100644 --- a/plugins/fs/permissions/schemas/schema.json +++ b/plugins/fs/permissions/schemas/schema.json @@ -295,1444 +295,1732 @@ "type": "string", "oneOf": [ { - "description": "This allows full recursive read access to the complete application folders, files and subdirectories.", + "description": "This allows full recursive read access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app-recursive`", "type": "string", - "const": "allow-app-read-recursive" + "const": "allow-app-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app-recursive`" }, { - "description": "This allows full recursive write access to the complete application folders, files and subdirectories.", + "description": "This allows full recursive write access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app-recursive`", "type": "string", - "const": "allow-app-write-recursive" + "const": "allow-app-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app-recursive`" }, { - "description": "This allows non-recursive read access to the application folders.", + "description": "This allows non-recursive read access to the application folders.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app`", "type": "string", - "const": "allow-app-read" + "const": "allow-app-read", + "markdownDescription": "This allows non-recursive read access to the application folders.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app`" }, { - "description": "This allows non-recursive write access to the application folders.", + "description": "This allows non-recursive write access to the application folders.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app`", "type": "string", - "const": "allow-app-write" + "const": "allow-app-write", + "markdownDescription": "This allows non-recursive write access to the application folders.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app`" }, { - "description": "This allows full recursive read access to metadata of the application folders, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-recursive`", "type": "string", - "const": "allow-app-meta-recursive" + "const": "allow-app-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the application folders, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-index`", "type": "string", - "const": "allow-app-meta" + "const": "allow-app-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-index`" }, { "description": "This scope permits recursive access to the complete application folders, including sub directories and files.", "type": "string", - "const": "scope-app-recursive" + "const": "scope-app-recursive", + "markdownDescription": "This scope permits recursive access to the complete application folders, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the application folders.", "type": "string", - "const": "scope-app" + "const": "scope-app", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the application folders." }, { "description": "This scope permits to list all files and folders in the application directories.", "type": "string", - "const": "scope-app-index" + "const": "scope-app-index", + "markdownDescription": "This scope permits to list all files and folders in the application directories." }, { - "description": "This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache-recursive`", "type": "string", - "const": "allow-appcache-read-recursive" + "const": "allow-appcache-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache-recursive`" }, { - "description": "This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache-recursive`", "type": "string", - "const": "allow-appcache-write-recursive" + "const": "allow-appcache-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache-recursive`" }, { - "description": "This allows non-recursive read access to the `$APPCACHE` folder.", + "description": "This allows non-recursive read access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache`", "type": "string", - "const": "allow-appcache-read" + "const": "allow-appcache-read", + "markdownDescription": "This allows non-recursive read access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache`" }, { - "description": "This allows non-recursive write access to the `$APPCACHE` folder.", + "description": "This allows non-recursive write access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache`", "type": "string", - "const": "allow-appcache-write" + "const": "allow-appcache-write", + "markdownDescription": "This allows non-recursive write access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache`" }, { - "description": "This allows full recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-recursive`", "type": "string", - "const": "allow-appcache-meta-recursive" + "const": "allow-appcache-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-index`", "type": "string", - "const": "allow-appcache-meta" + "const": "allow-appcache-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-index`" }, { "description": "This scope permits recursive access to the complete `$APPCACHE` folder, including sub directories and files.", "type": "string", - "const": "scope-appcache-recursive" + "const": "scope-appcache-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPCACHE` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$APPCACHE` folder.", "type": "string", - "const": "scope-appcache" + "const": "scope-appcache", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPCACHE` folder." }, { "description": "This scope permits to list all files and folders in the `$APPCACHE`folder.", "type": "string", - "const": "scope-appcache-index" + "const": "scope-appcache-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPCACHE`folder." }, { - "description": "This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig-recursive`", "type": "string", - "const": "allow-appconfig-read-recursive" + "const": "allow-appconfig-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig-recursive`" }, { - "description": "This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig-recursive`", "type": "string", - "const": "allow-appconfig-write-recursive" + "const": "allow-appconfig-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig-recursive`" }, { - "description": "This allows non-recursive read access to the `$APPCONFIG` folder.", + "description": "This allows non-recursive read access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig`", "type": "string", - "const": "allow-appconfig-read" + "const": "allow-appconfig-read", + "markdownDescription": "This allows non-recursive read access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig`" }, { - "description": "This allows non-recursive write access to the `$APPCONFIG` folder.", + "description": "This allows non-recursive write access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig`", "type": "string", - "const": "allow-appconfig-write" + "const": "allow-appconfig-write", + "markdownDescription": "This allows non-recursive write access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig`" }, { - "description": "This allows full recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-recursive`", "type": "string", - "const": "allow-appconfig-meta-recursive" + "const": "allow-appconfig-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-index`", "type": "string", - "const": "allow-appconfig-meta" + "const": "allow-appconfig-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-index`" }, { "description": "This scope permits recursive access to the complete `$APPCONFIG` folder, including sub directories and files.", "type": "string", - "const": "scope-appconfig-recursive" + "const": "scope-appconfig-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPCONFIG` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$APPCONFIG` folder.", "type": "string", - "const": "scope-appconfig" + "const": "scope-appconfig", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPCONFIG` folder." }, { "description": "This scope permits to list all files and folders in the `$APPCONFIG`folder.", "type": "string", - "const": "scope-appconfig-index" + "const": "scope-appconfig-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPCONFIG`folder." }, { - "description": "This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata-recursive`", "type": "string", - "const": "allow-appdata-read-recursive" + "const": "allow-appdata-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata-recursive`" }, { - "description": "This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata-recursive`", "type": "string", - "const": "allow-appdata-write-recursive" + "const": "allow-appdata-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata-recursive`" }, { - "description": "This allows non-recursive read access to the `$APPDATA` folder.", + "description": "This allows non-recursive read access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata`", "type": "string", - "const": "allow-appdata-read" + "const": "allow-appdata-read", + "markdownDescription": "This allows non-recursive read access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata`" }, { - "description": "This allows non-recursive write access to the `$APPDATA` folder.", + "description": "This allows non-recursive write access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata`", "type": "string", - "const": "allow-appdata-write" + "const": "allow-appdata-write", + "markdownDescription": "This allows non-recursive write access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata`" }, { - "description": "This allows full recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-recursive`", "type": "string", - "const": "allow-appdata-meta-recursive" + "const": "allow-appdata-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-index`", "type": "string", - "const": "allow-appdata-meta" + "const": "allow-appdata-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-index`" }, { "description": "This scope permits recursive access to the complete `$APPDATA` folder, including sub directories and files.", "type": "string", - "const": "scope-appdata-recursive" + "const": "scope-appdata-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPDATA` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$APPDATA` folder.", "type": "string", - "const": "scope-appdata" + "const": "scope-appdata", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPDATA` folder." }, { "description": "This scope permits to list all files and folders in the `$APPDATA`folder.", "type": "string", - "const": "scope-appdata-index" + "const": "scope-appdata-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPDATA`folder." }, { - "description": "This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata-recursive`", "type": "string", - "const": "allow-applocaldata-read-recursive" + "const": "allow-applocaldata-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata-recursive`" }, { - "description": "This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata-recursive`", "type": "string", - "const": "allow-applocaldata-write-recursive" + "const": "allow-applocaldata-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata-recursive`" }, { - "description": "This allows non-recursive read access to the `$APPLOCALDATA` folder.", + "description": "This allows non-recursive read access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata`", "type": "string", - "const": "allow-applocaldata-read" + "const": "allow-applocaldata-read", + "markdownDescription": "This allows non-recursive read access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata`" }, { - "description": "This allows non-recursive write access to the `$APPLOCALDATA` folder.", + "description": "This allows non-recursive write access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata`", "type": "string", - "const": "allow-applocaldata-write" + "const": "allow-applocaldata-write", + "markdownDescription": "This allows non-recursive write access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata`" }, { - "description": "This allows full recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-recursive`", "type": "string", - "const": "allow-applocaldata-meta-recursive" + "const": "allow-applocaldata-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-index`", "type": "string", - "const": "allow-applocaldata-meta" + "const": "allow-applocaldata-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-index`" }, { "description": "This scope permits recursive access to the complete `$APPLOCALDATA` folder, including sub directories and files.", "type": "string", - "const": "scope-applocaldata-recursive" + "const": "scope-applocaldata-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPLOCALDATA` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA` folder.", "type": "string", - "const": "scope-applocaldata" + "const": "scope-applocaldata", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA` folder." }, { "description": "This scope permits to list all files and folders in the `$APPLOCALDATA`folder.", "type": "string", - "const": "scope-applocaldata-index" + "const": "scope-applocaldata-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPLOCALDATA`folder." }, { - "description": "This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog-recursive`", "type": "string", - "const": "allow-applog-read-recursive" + "const": "allow-applog-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog-recursive`" }, { - "description": "This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog-recursive`", "type": "string", - "const": "allow-applog-write-recursive" + "const": "allow-applog-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog-recursive`" }, { - "description": "This allows non-recursive read access to the `$APPLOG` folder.", + "description": "This allows non-recursive read access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog`", "type": "string", - "const": "allow-applog-read" + "const": "allow-applog-read", + "markdownDescription": "This allows non-recursive read access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog`" }, { - "description": "This allows non-recursive write access to the `$APPLOG` folder.", + "description": "This allows non-recursive write access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog`", "type": "string", - "const": "allow-applog-write" + "const": "allow-applog-write", + "markdownDescription": "This allows non-recursive write access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog`" }, { - "description": "This allows full recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-recursive`", "type": "string", - "const": "allow-applog-meta-recursive" + "const": "allow-applog-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-index`", "type": "string", - "const": "allow-applog-meta" + "const": "allow-applog-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-index`" }, { "description": "This scope permits recursive access to the complete `$APPLOG` folder, including sub directories and files.", "type": "string", - "const": "scope-applog-recursive" + "const": "scope-applog-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPLOG` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$APPLOG` folder.", "type": "string", - "const": "scope-applog" + "const": "scope-applog", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPLOG` folder." }, { "description": "This scope permits to list all files and folders in the `$APPLOG`folder.", "type": "string", - "const": "scope-applog-index" + "const": "scope-applog-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPLOG`folder." }, { - "description": "This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio-recursive`", "type": "string", - "const": "allow-audio-read-recursive" + "const": "allow-audio-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio-recursive`" }, { - "description": "This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio-recursive`", "type": "string", - "const": "allow-audio-write-recursive" + "const": "allow-audio-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio-recursive`" }, { - "description": "This allows non-recursive read access to the `$AUDIO` folder.", + "description": "This allows non-recursive read access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio`", "type": "string", - "const": "allow-audio-read" + "const": "allow-audio-read", + "markdownDescription": "This allows non-recursive read access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio`" }, { - "description": "This allows non-recursive write access to the `$AUDIO` folder.", + "description": "This allows non-recursive write access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio`", "type": "string", - "const": "allow-audio-write" + "const": "allow-audio-write", + "markdownDescription": "This allows non-recursive write access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio`" }, { - "description": "This allows full recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-recursive`", "type": "string", - "const": "allow-audio-meta-recursive" + "const": "allow-audio-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-index`", "type": "string", - "const": "allow-audio-meta" + "const": "allow-audio-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-index`" }, { "description": "This scope permits recursive access to the complete `$AUDIO` folder, including sub directories and files.", "type": "string", - "const": "scope-audio-recursive" + "const": "scope-audio-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$AUDIO` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$AUDIO` folder.", "type": "string", - "const": "scope-audio" + "const": "scope-audio", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$AUDIO` folder." }, { "description": "This scope permits to list all files and folders in the `$AUDIO`folder.", "type": "string", - "const": "scope-audio-index" + "const": "scope-audio-index", + "markdownDescription": "This scope permits to list all files and folders in the `$AUDIO`folder." }, { - "description": "This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache-recursive`", "type": "string", - "const": "allow-cache-read-recursive" + "const": "allow-cache-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache-recursive`" }, { - "description": "This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache-recursive`", "type": "string", - "const": "allow-cache-write-recursive" + "const": "allow-cache-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache-recursive`" }, { - "description": "This allows non-recursive read access to the `$CACHE` folder.", + "description": "This allows non-recursive read access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache`", "type": "string", - "const": "allow-cache-read" + "const": "allow-cache-read", + "markdownDescription": "This allows non-recursive read access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache`" }, { - "description": "This allows non-recursive write access to the `$CACHE` folder.", + "description": "This allows non-recursive write access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache`", "type": "string", - "const": "allow-cache-write" + "const": "allow-cache-write", + "markdownDescription": "This allows non-recursive write access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache`" }, { - "description": "This allows full recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-recursive`", "type": "string", - "const": "allow-cache-meta-recursive" + "const": "allow-cache-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-index`", "type": "string", - "const": "allow-cache-meta" + "const": "allow-cache-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-index`" }, { "description": "This scope permits recursive access to the complete `$CACHE` folder, including sub directories and files.", "type": "string", - "const": "scope-cache-recursive" + "const": "scope-cache-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$CACHE` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$CACHE` folder.", "type": "string", - "const": "scope-cache" + "const": "scope-cache", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$CACHE` folder." }, { "description": "This scope permits to list all files and folders in the `$CACHE`folder.", "type": "string", - "const": "scope-cache-index" + "const": "scope-cache-index", + "markdownDescription": "This scope permits to list all files and folders in the `$CACHE`folder." }, { - "description": "This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config-recursive`", "type": "string", - "const": "allow-config-read-recursive" + "const": "allow-config-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config-recursive`" }, { - "description": "This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config-recursive`", "type": "string", - "const": "allow-config-write-recursive" + "const": "allow-config-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config-recursive`" }, { - "description": "This allows non-recursive read access to the `$CONFIG` folder.", + "description": "This allows non-recursive read access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config`", "type": "string", - "const": "allow-config-read" + "const": "allow-config-read", + "markdownDescription": "This allows non-recursive read access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config`" }, { - "description": "This allows non-recursive write access to the `$CONFIG` folder.", + "description": "This allows non-recursive write access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config`", "type": "string", - "const": "allow-config-write" + "const": "allow-config-write", + "markdownDescription": "This allows non-recursive write access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config`" }, { - "description": "This allows full recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-recursive`", "type": "string", - "const": "allow-config-meta-recursive" + "const": "allow-config-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-index`", "type": "string", - "const": "allow-config-meta" + "const": "allow-config-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-index`" }, { "description": "This scope permits recursive access to the complete `$CONFIG` folder, including sub directories and files.", "type": "string", - "const": "scope-config-recursive" + "const": "scope-config-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$CONFIG` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$CONFIG` folder.", "type": "string", - "const": "scope-config" + "const": "scope-config", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$CONFIG` folder." }, { "description": "This scope permits to list all files and folders in the `$CONFIG`folder.", "type": "string", - "const": "scope-config-index" + "const": "scope-config-index", + "markdownDescription": "This scope permits to list all files and folders in the `$CONFIG`folder." }, { - "description": "This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data-recursive`", "type": "string", - "const": "allow-data-read-recursive" + "const": "allow-data-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data-recursive`" }, { - "description": "This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data-recursive`", "type": "string", - "const": "allow-data-write-recursive" + "const": "allow-data-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data-recursive`" }, { - "description": "This allows non-recursive read access to the `$DATA` folder.", + "description": "This allows non-recursive read access to the `$DATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data`", "type": "string", - "const": "allow-data-read" + "const": "allow-data-read", + "markdownDescription": "This allows non-recursive read access to the `$DATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data`" }, { - "description": "This allows non-recursive write access to the `$DATA` folder.", + "description": "This allows non-recursive write access to the `$DATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data`", "type": "string", - "const": "allow-data-write" + "const": "allow-data-write", + "markdownDescription": "This allows non-recursive write access to the `$DATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data`" }, { - "description": "This allows full recursive read access to metadata of the `$DATA` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-recursive`", "type": "string", - "const": "allow-data-meta-recursive" + "const": "allow-data-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$DATA` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-index`", "type": "string", - "const": "allow-data-meta" + "const": "allow-data-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-index`" }, { "description": "This scope permits recursive access to the complete `$DATA` folder, including sub directories and files.", "type": "string", - "const": "scope-data-recursive" + "const": "scope-data-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DATA` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$DATA` folder.", "type": "string", - "const": "scope-data" + "const": "scope-data", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DATA` folder." }, { "description": "This scope permits to list all files and folders in the `$DATA`folder.", "type": "string", - "const": "scope-data-index" + "const": "scope-data-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DATA`folder." }, { - "description": "This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop-recursive`", "type": "string", - "const": "allow-desktop-read-recursive" + "const": "allow-desktop-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop-recursive`" }, { - "description": "This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop-recursive`", "type": "string", - "const": "allow-desktop-write-recursive" + "const": "allow-desktop-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop-recursive`" }, { - "description": "This allows non-recursive read access to the `$DESKTOP` folder.", + "description": "This allows non-recursive read access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop`", "type": "string", - "const": "allow-desktop-read" + "const": "allow-desktop-read", + "markdownDescription": "This allows non-recursive read access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop`" }, { - "description": "This allows non-recursive write access to the `$DESKTOP` folder.", + "description": "This allows non-recursive write access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop`", "type": "string", - "const": "allow-desktop-write" + "const": "allow-desktop-write", + "markdownDescription": "This allows non-recursive write access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop`" }, { - "description": "This allows full recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-recursive`", "type": "string", - "const": "allow-desktop-meta-recursive" + "const": "allow-desktop-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-index`", "type": "string", - "const": "allow-desktop-meta" + "const": "allow-desktop-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-index`" }, { "description": "This scope permits recursive access to the complete `$DESKTOP` folder, including sub directories and files.", "type": "string", - "const": "scope-desktop-recursive" + "const": "scope-desktop-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DESKTOP` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$DESKTOP` folder.", "type": "string", - "const": "scope-desktop" + "const": "scope-desktop", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DESKTOP` folder." }, { "description": "This scope permits to list all files and folders in the `$DESKTOP`folder.", "type": "string", - "const": "scope-desktop-index" + "const": "scope-desktop-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DESKTOP`folder." }, { - "description": "This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document-recursive`", "type": "string", - "const": "allow-document-read-recursive" + "const": "allow-document-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document-recursive`" }, { - "description": "This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document-recursive`", "type": "string", - "const": "allow-document-write-recursive" + "const": "allow-document-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document-recursive`" }, { - "description": "This allows non-recursive read access to the `$DOCUMENT` folder.", + "description": "This allows non-recursive read access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document`", "type": "string", - "const": "allow-document-read" + "const": "allow-document-read", + "markdownDescription": "This allows non-recursive read access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document`" }, { - "description": "This allows non-recursive write access to the `$DOCUMENT` folder.", + "description": "This allows non-recursive write access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document`", "type": "string", - "const": "allow-document-write" + "const": "allow-document-write", + "markdownDescription": "This allows non-recursive write access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document`" }, { - "description": "This allows full recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-recursive`", "type": "string", - "const": "allow-document-meta-recursive" + "const": "allow-document-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-index`", "type": "string", - "const": "allow-document-meta" + "const": "allow-document-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-index`" }, { "description": "This scope permits recursive access to the complete `$DOCUMENT` folder, including sub directories and files.", "type": "string", - "const": "scope-document-recursive" + "const": "scope-document-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DOCUMENT` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$DOCUMENT` folder.", "type": "string", - "const": "scope-document" + "const": "scope-document", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DOCUMENT` folder." }, { "description": "This scope permits to list all files and folders in the `$DOCUMENT`folder.", "type": "string", - "const": "scope-document-index" + "const": "scope-document-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DOCUMENT`folder." }, { - "description": "This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download-recursive`", "type": "string", - "const": "allow-download-read-recursive" + "const": "allow-download-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download-recursive`" }, { - "description": "This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download-recursive`", "type": "string", - "const": "allow-download-write-recursive" + "const": "allow-download-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download-recursive`" }, { - "description": "This allows non-recursive read access to the `$DOWNLOAD` folder.", + "description": "This allows non-recursive read access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download`", "type": "string", - "const": "allow-download-read" + "const": "allow-download-read", + "markdownDescription": "This allows non-recursive read access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download`" }, { - "description": "This allows non-recursive write access to the `$DOWNLOAD` folder.", + "description": "This allows non-recursive write access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download`", "type": "string", - "const": "allow-download-write" + "const": "allow-download-write", + "markdownDescription": "This allows non-recursive write access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download`" }, { - "description": "This allows full recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-recursive`", "type": "string", - "const": "allow-download-meta-recursive" + "const": "allow-download-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-index`", "type": "string", - "const": "allow-download-meta" + "const": "allow-download-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-index`" }, { "description": "This scope permits recursive access to the complete `$DOWNLOAD` folder, including sub directories and files.", "type": "string", - "const": "scope-download-recursive" + "const": "scope-download-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DOWNLOAD` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$DOWNLOAD` folder.", "type": "string", - "const": "scope-download" + "const": "scope-download", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DOWNLOAD` folder." }, { "description": "This scope permits to list all files and folders in the `$DOWNLOAD`folder.", "type": "string", - "const": "scope-download-index" + "const": "scope-download-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DOWNLOAD`folder." }, { - "description": "This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe-recursive`", "type": "string", - "const": "allow-exe-read-recursive" + "const": "allow-exe-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe-recursive`" }, { - "description": "This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe-recursive`", "type": "string", - "const": "allow-exe-write-recursive" + "const": "allow-exe-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe-recursive`" }, { - "description": "This allows non-recursive read access to the `$EXE` folder.", + "description": "This allows non-recursive read access to the `$EXE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe`", "type": "string", - "const": "allow-exe-read" + "const": "allow-exe-read", + "markdownDescription": "This allows non-recursive read access to the `$EXE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe`" }, { - "description": "This allows non-recursive write access to the `$EXE` folder.", + "description": "This allows non-recursive write access to the `$EXE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe`", "type": "string", - "const": "allow-exe-write" + "const": "allow-exe-write", + "markdownDescription": "This allows non-recursive write access to the `$EXE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe`" }, { - "description": "This allows full recursive read access to metadata of the `$EXE` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-recursive`", "type": "string", - "const": "allow-exe-meta-recursive" + "const": "allow-exe-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$EXE` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-index`", "type": "string", - "const": "allow-exe-meta" + "const": "allow-exe-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-index`" }, { "description": "This scope permits recursive access to the complete `$EXE` folder, including sub directories and files.", "type": "string", - "const": "scope-exe-recursive" + "const": "scope-exe-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$EXE` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$EXE` folder.", "type": "string", - "const": "scope-exe" + "const": "scope-exe", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$EXE` folder." }, { "description": "This scope permits to list all files and folders in the `$EXE`folder.", "type": "string", - "const": "scope-exe-index" + "const": "scope-exe-index", + "markdownDescription": "This scope permits to list all files and folders in the `$EXE`folder." }, { - "description": "This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font-recursive`", "type": "string", - "const": "allow-font-read-recursive" + "const": "allow-font-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font-recursive`" }, { - "description": "This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font-recursive`", "type": "string", - "const": "allow-font-write-recursive" + "const": "allow-font-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font-recursive`" }, { - "description": "This allows non-recursive read access to the `$FONT` folder.", + "description": "This allows non-recursive read access to the `$FONT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font`", "type": "string", - "const": "allow-font-read" + "const": "allow-font-read", + "markdownDescription": "This allows non-recursive read access to the `$FONT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font`" }, { - "description": "This allows non-recursive write access to the `$FONT` folder.", + "description": "This allows non-recursive write access to the `$FONT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font`", "type": "string", - "const": "allow-font-write" + "const": "allow-font-write", + "markdownDescription": "This allows non-recursive write access to the `$FONT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font`" }, { - "description": "This allows full recursive read access to metadata of the `$FONT` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-recursive`", "type": "string", - "const": "allow-font-meta-recursive" + "const": "allow-font-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$FONT` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-index`", "type": "string", - "const": "allow-font-meta" + "const": "allow-font-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-index`" }, { "description": "This scope permits recursive access to the complete `$FONT` folder, including sub directories and files.", "type": "string", - "const": "scope-font-recursive" + "const": "scope-font-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$FONT` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$FONT` folder.", "type": "string", - "const": "scope-font" + "const": "scope-font", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$FONT` folder." }, { "description": "This scope permits to list all files and folders in the `$FONT`folder.", "type": "string", - "const": "scope-font-index" + "const": "scope-font-index", + "markdownDescription": "This scope permits to list all files and folders in the `$FONT`folder." }, { - "description": "This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home-recursive`", "type": "string", - "const": "allow-home-read-recursive" + "const": "allow-home-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home-recursive`" }, { - "description": "This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home-recursive`", "type": "string", - "const": "allow-home-write-recursive" + "const": "allow-home-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home-recursive`" }, { - "description": "This allows non-recursive read access to the `$HOME` folder.", + "description": "This allows non-recursive read access to the `$HOME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home`", "type": "string", - "const": "allow-home-read" + "const": "allow-home-read", + "markdownDescription": "This allows non-recursive read access to the `$HOME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home`" }, { - "description": "This allows non-recursive write access to the `$HOME` folder.", + "description": "This allows non-recursive write access to the `$HOME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home`", "type": "string", - "const": "allow-home-write" + "const": "allow-home-write", + "markdownDescription": "This allows non-recursive write access to the `$HOME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home`" }, { - "description": "This allows full recursive read access to metadata of the `$HOME` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-recursive`", "type": "string", - "const": "allow-home-meta-recursive" + "const": "allow-home-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$HOME` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-index`", "type": "string", - "const": "allow-home-meta" + "const": "allow-home-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-index`" }, { "description": "This scope permits recursive access to the complete `$HOME` folder, including sub directories and files.", "type": "string", - "const": "scope-home-recursive" + "const": "scope-home-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$HOME` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$HOME` folder.", "type": "string", - "const": "scope-home" + "const": "scope-home", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$HOME` folder." }, { "description": "This scope permits to list all files and folders in the `$HOME`folder.", "type": "string", - "const": "scope-home-index" + "const": "scope-home-index", + "markdownDescription": "This scope permits to list all files and folders in the `$HOME`folder." }, { - "description": "This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata-recursive`", "type": "string", - "const": "allow-localdata-read-recursive" + "const": "allow-localdata-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata-recursive`" }, { - "description": "This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata-recursive`", "type": "string", - "const": "allow-localdata-write-recursive" + "const": "allow-localdata-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata-recursive`" }, { - "description": "This allows non-recursive read access to the `$LOCALDATA` folder.", + "description": "This allows non-recursive read access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata`", "type": "string", - "const": "allow-localdata-read" + "const": "allow-localdata-read", + "markdownDescription": "This allows non-recursive read access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata`" }, { - "description": "This allows non-recursive write access to the `$LOCALDATA` folder.", + "description": "This allows non-recursive write access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata`", "type": "string", - "const": "allow-localdata-write" + "const": "allow-localdata-write", + "markdownDescription": "This allows non-recursive write access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata`" }, { - "description": "This allows full recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-recursive`", "type": "string", - "const": "allow-localdata-meta-recursive" + "const": "allow-localdata-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-index`", "type": "string", - "const": "allow-localdata-meta" + "const": "allow-localdata-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-index`" }, { "description": "This scope permits recursive access to the complete `$LOCALDATA` folder, including sub directories and files.", "type": "string", - "const": "scope-localdata-recursive" + "const": "scope-localdata-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$LOCALDATA` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$LOCALDATA` folder.", "type": "string", - "const": "scope-localdata" + "const": "scope-localdata", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$LOCALDATA` folder." }, { "description": "This scope permits to list all files and folders in the `$LOCALDATA`folder.", "type": "string", - "const": "scope-localdata-index" + "const": "scope-localdata-index", + "markdownDescription": "This scope permits to list all files and folders in the `$LOCALDATA`folder." }, { - "description": "This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log-recursive`", "type": "string", - "const": "allow-log-read-recursive" + "const": "allow-log-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log-recursive`" }, { - "description": "This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log-recursive`", "type": "string", - "const": "allow-log-write-recursive" + "const": "allow-log-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log-recursive`" }, { - "description": "This allows non-recursive read access to the `$LOG` folder.", + "description": "This allows non-recursive read access to the `$LOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log`", "type": "string", - "const": "allow-log-read" + "const": "allow-log-read", + "markdownDescription": "This allows non-recursive read access to the `$LOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log`" }, { - "description": "This allows non-recursive write access to the `$LOG` folder.", + "description": "This allows non-recursive write access to the `$LOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log`", "type": "string", - "const": "allow-log-write" + "const": "allow-log-write", + "markdownDescription": "This allows non-recursive write access to the `$LOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log`" }, { - "description": "This allows full recursive read access to metadata of the `$LOG` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-recursive`", "type": "string", - "const": "allow-log-meta-recursive" + "const": "allow-log-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$LOG` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-index`", "type": "string", - "const": "allow-log-meta" + "const": "allow-log-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-index`" }, { "description": "This scope permits recursive access to the complete `$LOG` folder, including sub directories and files.", "type": "string", - "const": "scope-log-recursive" + "const": "scope-log-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$LOG` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$LOG` folder.", "type": "string", - "const": "scope-log" + "const": "scope-log", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$LOG` folder." }, { "description": "This scope permits to list all files and folders in the `$LOG`folder.", "type": "string", - "const": "scope-log-index" + "const": "scope-log-index", + "markdownDescription": "This scope permits to list all files and folders in the `$LOG`folder." }, { - "description": "This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture-recursive`", "type": "string", - "const": "allow-picture-read-recursive" + "const": "allow-picture-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture-recursive`" }, { - "description": "This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture-recursive`", "type": "string", - "const": "allow-picture-write-recursive" + "const": "allow-picture-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture-recursive`" }, { - "description": "This allows non-recursive read access to the `$PICTURE` folder.", + "description": "This allows non-recursive read access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture`", "type": "string", - "const": "allow-picture-read" + "const": "allow-picture-read", + "markdownDescription": "This allows non-recursive read access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture`" }, { - "description": "This allows non-recursive write access to the `$PICTURE` folder.", + "description": "This allows non-recursive write access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture`", "type": "string", - "const": "allow-picture-write" + "const": "allow-picture-write", + "markdownDescription": "This allows non-recursive write access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture`" }, { - "description": "This allows full recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-recursive`", "type": "string", - "const": "allow-picture-meta-recursive" + "const": "allow-picture-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-index`", "type": "string", - "const": "allow-picture-meta" + "const": "allow-picture-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-index`" }, { "description": "This scope permits recursive access to the complete `$PICTURE` folder, including sub directories and files.", "type": "string", - "const": "scope-picture-recursive" + "const": "scope-picture-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$PICTURE` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$PICTURE` folder.", "type": "string", - "const": "scope-picture" + "const": "scope-picture", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$PICTURE` folder." }, { "description": "This scope permits to list all files and folders in the `$PICTURE`folder.", "type": "string", - "const": "scope-picture-index" + "const": "scope-picture-index", + "markdownDescription": "This scope permits to list all files and folders in the `$PICTURE`folder." }, { - "description": "This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public-recursive`", "type": "string", - "const": "allow-public-read-recursive" + "const": "allow-public-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public-recursive`" }, { - "description": "This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public-recursive`", "type": "string", - "const": "allow-public-write-recursive" + "const": "allow-public-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public-recursive`" }, { - "description": "This allows non-recursive read access to the `$PUBLIC` folder.", + "description": "This allows non-recursive read access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public`", "type": "string", - "const": "allow-public-read" + "const": "allow-public-read", + "markdownDescription": "This allows non-recursive read access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public`" }, { - "description": "This allows non-recursive write access to the `$PUBLIC` folder.", + "description": "This allows non-recursive write access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public`", "type": "string", - "const": "allow-public-write" + "const": "allow-public-write", + "markdownDescription": "This allows non-recursive write access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public`" }, { - "description": "This allows full recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-recursive`", "type": "string", - "const": "allow-public-meta-recursive" + "const": "allow-public-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-index`", "type": "string", - "const": "allow-public-meta" + "const": "allow-public-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-index`" }, { "description": "This scope permits recursive access to the complete `$PUBLIC` folder, including sub directories and files.", "type": "string", - "const": "scope-public-recursive" + "const": "scope-public-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$PUBLIC` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$PUBLIC` folder.", "type": "string", - "const": "scope-public" + "const": "scope-public", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$PUBLIC` folder." }, { "description": "This scope permits to list all files and folders in the `$PUBLIC`folder.", "type": "string", - "const": "scope-public-index" + "const": "scope-public-index", + "markdownDescription": "This scope permits to list all files and folders in the `$PUBLIC`folder." }, { - "description": "This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource-recursive`", "type": "string", - "const": "allow-resource-read-recursive" + "const": "allow-resource-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource-recursive`" }, { - "description": "This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource-recursive`", "type": "string", - "const": "allow-resource-write-recursive" + "const": "allow-resource-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource-recursive`" }, { - "description": "This allows non-recursive read access to the `$RESOURCE` folder.", + "description": "This allows non-recursive read access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource`", "type": "string", - "const": "allow-resource-read" + "const": "allow-resource-read", + "markdownDescription": "This allows non-recursive read access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource`" }, { - "description": "This allows non-recursive write access to the `$RESOURCE` folder.", + "description": "This allows non-recursive write access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource`", "type": "string", - "const": "allow-resource-write" + "const": "allow-resource-write", + "markdownDescription": "This allows non-recursive write access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource`" }, { - "description": "This allows full recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-recursive`", "type": "string", - "const": "allow-resource-meta-recursive" + "const": "allow-resource-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-index`", "type": "string", - "const": "allow-resource-meta" + "const": "allow-resource-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-index`" }, { "description": "This scope permits recursive access to the complete `$RESOURCE` folder, including sub directories and files.", "type": "string", - "const": "scope-resource-recursive" + "const": "scope-resource-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$RESOURCE` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$RESOURCE` folder.", "type": "string", - "const": "scope-resource" + "const": "scope-resource", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$RESOURCE` folder." }, { "description": "This scope permits to list all files and folders in the `$RESOURCE`folder.", "type": "string", - "const": "scope-resource-index" + "const": "scope-resource-index", + "markdownDescription": "This scope permits to list all files and folders in the `$RESOURCE`folder." }, { - "description": "This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime-recursive`", "type": "string", - "const": "allow-runtime-read-recursive" + "const": "allow-runtime-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime-recursive`" }, { - "description": "This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime-recursive`", "type": "string", - "const": "allow-runtime-write-recursive" + "const": "allow-runtime-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime-recursive`" }, { - "description": "This allows non-recursive read access to the `$RUNTIME` folder.", + "description": "This allows non-recursive read access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime`", "type": "string", - "const": "allow-runtime-read" + "const": "allow-runtime-read", + "markdownDescription": "This allows non-recursive read access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime`" }, { - "description": "This allows non-recursive write access to the `$RUNTIME` folder.", + "description": "This allows non-recursive write access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime`", "type": "string", - "const": "allow-runtime-write" + "const": "allow-runtime-write", + "markdownDescription": "This allows non-recursive write access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime`" }, { - "description": "This allows full recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-recursive`", "type": "string", - "const": "allow-runtime-meta-recursive" + "const": "allow-runtime-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-index`", "type": "string", - "const": "allow-runtime-meta" + "const": "allow-runtime-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-index`" }, { "description": "This scope permits recursive access to the complete `$RUNTIME` folder, including sub directories and files.", "type": "string", - "const": "scope-runtime-recursive" + "const": "scope-runtime-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$RUNTIME` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$RUNTIME` folder.", "type": "string", - "const": "scope-runtime" + "const": "scope-runtime", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$RUNTIME` folder." }, { "description": "This scope permits to list all files and folders in the `$RUNTIME`folder.", "type": "string", - "const": "scope-runtime-index" + "const": "scope-runtime-index", + "markdownDescription": "This scope permits to list all files and folders in the `$RUNTIME`folder." }, { - "description": "This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp-recursive`", "type": "string", - "const": "allow-temp-read-recursive" + "const": "allow-temp-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp-recursive`" }, { - "description": "This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp-recursive`", "type": "string", - "const": "allow-temp-write-recursive" + "const": "allow-temp-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp-recursive`" }, { - "description": "This allows non-recursive read access to the `$TEMP` folder.", + "description": "This allows non-recursive read access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp`", "type": "string", - "const": "allow-temp-read" + "const": "allow-temp-read", + "markdownDescription": "This allows non-recursive read access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp`" }, { - "description": "This allows non-recursive write access to the `$TEMP` folder.", + "description": "This allows non-recursive write access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp`", "type": "string", - "const": "allow-temp-write" + "const": "allow-temp-write", + "markdownDescription": "This allows non-recursive write access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp`" }, { - "description": "This allows full recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-recursive`", "type": "string", - "const": "allow-temp-meta-recursive" + "const": "allow-temp-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-index`", "type": "string", - "const": "allow-temp-meta" + "const": "allow-temp-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-index`" }, { "description": "This scope permits recursive access to the complete `$TEMP` folder, including sub directories and files.", "type": "string", - "const": "scope-temp-recursive" + "const": "scope-temp-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$TEMP` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$TEMP` folder.", "type": "string", - "const": "scope-temp" + "const": "scope-temp", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$TEMP` folder." }, { "description": "This scope permits to list all files and folders in the `$TEMP`folder.", "type": "string", - "const": "scope-temp-index" + "const": "scope-temp-index", + "markdownDescription": "This scope permits to list all files and folders in the `$TEMP`folder." }, { - "description": "This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template-recursive`", "type": "string", - "const": "allow-template-read-recursive" + "const": "allow-template-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template-recursive`" }, { - "description": "This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template-recursive`", "type": "string", - "const": "allow-template-write-recursive" + "const": "allow-template-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template-recursive`" }, { - "description": "This allows non-recursive read access to the `$TEMPLATE` folder.", + "description": "This allows non-recursive read access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template`", "type": "string", - "const": "allow-template-read" + "const": "allow-template-read", + "markdownDescription": "This allows non-recursive read access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template`" }, { - "description": "This allows non-recursive write access to the `$TEMPLATE` folder.", + "description": "This allows non-recursive write access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template`", "type": "string", - "const": "allow-template-write" + "const": "allow-template-write", + "markdownDescription": "This allows non-recursive write access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template`" }, { - "description": "This allows full recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-recursive`", "type": "string", - "const": "allow-template-meta-recursive" + "const": "allow-template-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-index`", "type": "string", - "const": "allow-template-meta" + "const": "allow-template-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-index`" }, { "description": "This scope permits recursive access to the complete `$TEMPLATE` folder, including sub directories and files.", "type": "string", - "const": "scope-template-recursive" + "const": "scope-template-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$TEMPLATE` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$TEMPLATE` folder.", "type": "string", - "const": "scope-template" + "const": "scope-template", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$TEMPLATE` folder." }, { "description": "This scope permits to list all files and folders in the `$TEMPLATE`folder.", "type": "string", - "const": "scope-template-index" + "const": "scope-template-index", + "markdownDescription": "This scope permits to list all files and folders in the `$TEMPLATE`folder." }, { - "description": "This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.", + "description": "This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video-recursive`", "type": "string", - "const": "allow-video-read-recursive" + "const": "allow-video-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video-recursive`" }, { - "description": "This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.", + "description": "This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video-recursive`", "type": "string", - "const": "allow-video-write-recursive" + "const": "allow-video-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video-recursive`" }, { - "description": "This allows non-recursive read access to the `$VIDEO` folder.", + "description": "This allows non-recursive read access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video`", "type": "string", - "const": "allow-video-read" + "const": "allow-video-read", + "markdownDescription": "This allows non-recursive read access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video`" }, { - "description": "This allows non-recursive write access to the `$VIDEO` folder.", + "description": "This allows non-recursive write access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video`", "type": "string", - "const": "allow-video-write" + "const": "allow-video-write", + "markdownDescription": "This allows non-recursive write access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video`" }, { - "description": "This allows full recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.", + "description": "This allows full recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-recursive`", "type": "string", - "const": "allow-video-meta-recursive" + "const": "allow-video-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-recursive`" }, { - "description": "This allows non-recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-index`", "type": "string", - "const": "allow-video-meta" + "const": "allow-video-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-index`" }, { "description": "This scope permits recursive access to the complete `$VIDEO` folder, including sub directories and files.", "type": "string", - "const": "scope-video-recursive" + "const": "scope-video-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$VIDEO` folder, including sub directories and files." }, { "description": "This scope permits access to all files and list content of top level directories in the `$VIDEO` folder.", "type": "string", - "const": "scope-video" + "const": "scope-video", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$VIDEO` folder." }, { "description": "This scope permits to list all files and folders in the `$VIDEO`folder.", "type": "string", - "const": "scope-video-index" + "const": "scope-video-index", + "markdownDescription": "This scope permits to list all files and folders in the `$VIDEO`folder." }, { "description": "Enables the copy_file command without any pre-configured scope.", "type": "string", - "const": "allow-copy-file" + "const": "allow-copy-file", + "markdownDescription": "Enables the copy_file command without any pre-configured scope." }, { "description": "Denies the copy_file command without any pre-configured scope.", "type": "string", - "const": "deny-copy-file" + "const": "deny-copy-file", + "markdownDescription": "Denies the copy_file command without any pre-configured scope." }, { "description": "Enables the create command without any pre-configured scope.", "type": "string", - "const": "allow-create" + "const": "allow-create", + "markdownDescription": "Enables the create command without any pre-configured scope." }, { "description": "Denies the create command without any pre-configured scope.", "type": "string", - "const": "deny-create" + "const": "deny-create", + "markdownDescription": "Denies the create command without any pre-configured scope." }, { "description": "Enables the exists command without any pre-configured scope.", "type": "string", - "const": "allow-exists" + "const": "allow-exists", + "markdownDescription": "Enables the exists command without any pre-configured scope." }, { "description": "Denies the exists command without any pre-configured scope.", "type": "string", - "const": "deny-exists" + "const": "deny-exists", + "markdownDescription": "Denies the exists command without any pre-configured scope." }, { "description": "Enables the fstat command without any pre-configured scope.", "type": "string", - "const": "allow-fstat" + "const": "allow-fstat", + "markdownDescription": "Enables the fstat command without any pre-configured scope." }, { "description": "Denies the fstat command without any pre-configured scope.", "type": "string", - "const": "deny-fstat" + "const": "deny-fstat", + "markdownDescription": "Denies the fstat command without any pre-configured scope." }, { "description": "Enables the ftruncate command without any pre-configured scope.", "type": "string", - "const": "allow-ftruncate" + "const": "allow-ftruncate", + "markdownDescription": "Enables the ftruncate command without any pre-configured scope." }, { "description": "Denies the ftruncate command without any pre-configured scope.", "type": "string", - "const": "deny-ftruncate" + "const": "deny-ftruncate", + "markdownDescription": "Denies the ftruncate command without any pre-configured scope." }, { "description": "Enables the lstat command without any pre-configured scope.", "type": "string", - "const": "allow-lstat" + "const": "allow-lstat", + "markdownDescription": "Enables the lstat command without any pre-configured scope." }, { "description": "Denies the lstat command without any pre-configured scope.", "type": "string", - "const": "deny-lstat" + "const": "deny-lstat", + "markdownDescription": "Denies the lstat command without any pre-configured scope." }, { "description": "Enables the mkdir command without any pre-configured scope.", "type": "string", - "const": "allow-mkdir" + "const": "allow-mkdir", + "markdownDescription": "Enables the mkdir command without any pre-configured scope." }, { "description": "Denies the mkdir command without any pre-configured scope.", "type": "string", - "const": "deny-mkdir" + "const": "deny-mkdir", + "markdownDescription": "Denies the mkdir command without any pre-configured scope." }, { "description": "Enables the open command without any pre-configured scope.", "type": "string", - "const": "allow-open" + "const": "allow-open", + "markdownDescription": "Enables the open command without any pre-configured scope." }, { "description": "Denies the open command without any pre-configured scope.", "type": "string", - "const": "deny-open" + "const": "deny-open", + "markdownDescription": "Denies the open command without any pre-configured scope." }, { "description": "Enables the read command without any pre-configured scope.", "type": "string", - "const": "allow-read" + "const": "allow-read", + "markdownDescription": "Enables the read command without any pre-configured scope." }, { "description": "Denies the read command without any pre-configured scope.", "type": "string", - "const": "deny-read" + "const": "deny-read", + "markdownDescription": "Denies the read command without any pre-configured scope." }, { "description": "Enables the read_dir command without any pre-configured scope.", "type": "string", - "const": "allow-read-dir" + "const": "allow-read-dir", + "markdownDescription": "Enables the read_dir command without any pre-configured scope." }, { "description": "Denies the read_dir command without any pre-configured scope.", "type": "string", - "const": "deny-read-dir" + "const": "deny-read-dir", + "markdownDescription": "Denies the read_dir command without any pre-configured scope." }, { "description": "Enables the read_file command without any pre-configured scope.", "type": "string", - "const": "allow-read-file" + "const": "allow-read-file", + "markdownDescription": "Enables the read_file command without any pre-configured scope." }, { "description": "Denies the read_file command without any pre-configured scope.", "type": "string", - "const": "deny-read-file" + "const": "deny-read-file", + "markdownDescription": "Denies the read_file command without any pre-configured scope." }, { "description": "Enables the read_text_file command without any pre-configured scope.", "type": "string", - "const": "allow-read-text-file" + "const": "allow-read-text-file", + "markdownDescription": "Enables the read_text_file command without any pre-configured scope." }, { "description": "Denies the read_text_file command without any pre-configured scope.", "type": "string", - "const": "deny-read-text-file" + "const": "deny-read-text-file", + "markdownDescription": "Denies the read_text_file command without any pre-configured scope." }, { "description": "Enables the read_text_file_lines command without any pre-configured scope.", "type": "string", - "const": "allow-read-text-file-lines" + "const": "allow-read-text-file-lines", + "markdownDescription": "Enables the read_text_file_lines command without any pre-configured scope." }, { "description": "Denies the read_text_file_lines command without any pre-configured scope.", "type": "string", - "const": "deny-read-text-file-lines" + "const": "deny-read-text-file-lines", + "markdownDescription": "Denies the read_text_file_lines command without any pre-configured scope." }, { "description": "Enables the read_text_file_lines_next command without any pre-configured scope.", "type": "string", - "const": "allow-read-text-file-lines-next" + "const": "allow-read-text-file-lines-next", + "markdownDescription": "Enables the read_text_file_lines_next command without any pre-configured scope." }, { "description": "Denies the read_text_file_lines_next command without any pre-configured scope.", "type": "string", - "const": "deny-read-text-file-lines-next" + "const": "deny-read-text-file-lines-next", + "markdownDescription": "Denies the read_text_file_lines_next command without any pre-configured scope." }, { "description": "Enables the remove command without any pre-configured scope.", "type": "string", - "const": "allow-remove" + "const": "allow-remove", + "markdownDescription": "Enables the remove command without any pre-configured scope." }, { "description": "Denies the remove command without any pre-configured scope.", "type": "string", - "const": "deny-remove" + "const": "deny-remove", + "markdownDescription": "Denies the remove command without any pre-configured scope." }, { "description": "Enables the rename command without any pre-configured scope.", "type": "string", - "const": "allow-rename" + "const": "allow-rename", + "markdownDescription": "Enables the rename command without any pre-configured scope." }, { "description": "Denies the rename command without any pre-configured scope.", "type": "string", - "const": "deny-rename" + "const": "deny-rename", + "markdownDescription": "Denies the rename command without any pre-configured scope." }, { "description": "Enables the seek command without any pre-configured scope.", "type": "string", - "const": "allow-seek" + "const": "allow-seek", + "markdownDescription": "Enables the seek command without any pre-configured scope." }, { "description": "Denies the seek command without any pre-configured scope.", "type": "string", - "const": "deny-seek" + "const": "deny-seek", + "markdownDescription": "Denies the seek command without any pre-configured scope." }, { "description": "Enables the size command without any pre-configured scope.", "type": "string", - "const": "allow-size" + "const": "allow-size", + "markdownDescription": "Enables the size command without any pre-configured scope." }, { "description": "Denies the size command without any pre-configured scope.", "type": "string", - "const": "deny-size" + "const": "deny-size", + "markdownDescription": "Denies the size command without any pre-configured scope." }, { "description": "Enables the stat command without any pre-configured scope.", "type": "string", - "const": "allow-stat" + "const": "allow-stat", + "markdownDescription": "Enables the stat command without any pre-configured scope." }, { "description": "Denies the stat command without any pre-configured scope.", "type": "string", - "const": "deny-stat" + "const": "deny-stat", + "markdownDescription": "Denies the stat command without any pre-configured scope." }, { "description": "Enables the truncate command without any pre-configured scope.", "type": "string", - "const": "allow-truncate" + "const": "allow-truncate", + "markdownDescription": "Enables the truncate command without any pre-configured scope." }, { "description": "Denies the truncate command without any pre-configured scope.", "type": "string", - "const": "deny-truncate" + "const": "deny-truncate", + "markdownDescription": "Denies the truncate command without any pre-configured scope." }, { "description": "Enables the unwatch command without any pre-configured scope.", "type": "string", - "const": "allow-unwatch" + "const": "allow-unwatch", + "markdownDescription": "Enables the unwatch command without any pre-configured scope." }, { "description": "Denies the unwatch command without any pre-configured scope.", "type": "string", - "const": "deny-unwatch" + "const": "deny-unwatch", + "markdownDescription": "Denies the unwatch command without any pre-configured scope." }, { "description": "Enables the watch command without any pre-configured scope.", "type": "string", - "const": "allow-watch" + "const": "allow-watch", + "markdownDescription": "Enables the watch command without any pre-configured scope." }, { "description": "Denies the watch command without any pre-configured scope.", "type": "string", - "const": "deny-watch" + "const": "deny-watch", + "markdownDescription": "Denies the watch command without any pre-configured scope." }, { "description": "Enables the write command without any pre-configured scope.", "type": "string", - "const": "allow-write" + "const": "allow-write", + "markdownDescription": "Enables the write command without any pre-configured scope." }, { "description": "Denies the write command without any pre-configured scope.", "type": "string", - "const": "deny-write" + "const": "deny-write", + "markdownDescription": "Denies the write command without any pre-configured scope." }, { "description": "Enables the write_file command without any pre-configured scope.", "type": "string", - "const": "allow-write-file" + "const": "allow-write-file", + "markdownDescription": "Enables the write_file command without any pre-configured scope." }, { "description": "Denies the write_file command without any pre-configured scope.", "type": "string", - "const": "deny-write-file" + "const": "deny-write-file", + "markdownDescription": "Denies the write_file command without any pre-configured scope." }, { "description": "Enables the write_text_file command without any pre-configured scope.", "type": "string", - "const": "allow-write-text-file" + "const": "allow-write-text-file", + "markdownDescription": "Enables the write_text_file command without any pre-configured scope." }, { "description": "Denies the write_text_file command without any pre-configured scope.", "type": "string", - "const": "deny-write-text-file" + "const": "deny-write-text-file", + "markdownDescription": "Denies the write_text_file command without any pre-configured scope." }, { "description": "This permissions allows to create the application specific directories.\n", "type": "string", - "const": "create-app-specific-dirs" + "const": "create-app-specific-dirs", + "markdownDescription": "This permissions allows to create the application specific directories.\n" }, { - "description": "This set of permissions describes the what kind of\nfile system access the `fs` plugin has enabled or denied by default.\n\n#### Granted Permissions\n\nThis default permission set enables read access to the\napplication specific directories (AppConfig, AppData, AppLocalData, AppCache,\nAppLog) and all files and sub directories created in it.\nThe location of these directories depends on the operating system,\nwhere the application is run.\n\nIn general these directories need to be manually created\nby the application at runtime, before accessing files or folders\nin it is possible.\n\nTherefore, it is also allowed to create all of these folders via\nthe `mkdir` command.\n\n#### Denied Permissions\n\nThis default permission set prevents access to critical components\nof the Tauri application by default.\nOn Windows the webview data folder access is denied.\n\n#### Included permissions within this default permission set:\n", + "description": "This set of permissions describes the what kind of\nfile system access the `fs` plugin has enabled or denied by default.\n\n#### Granted Permissions\n\nThis default permission set enables read access to the\napplication specific directories (AppConfig, AppData, AppLocalData, AppCache,\nAppLog) and all files and sub directories created in it.\nThe location of these directories depends on the operating system,\nwhere the application is run.\n\nIn general these directories need to be manually created\nby the application at runtime, before accessing files or folders\nin it is possible.\n\nTherefore, it is also allowed to create all of these folders via\nthe `mkdir` command.\n\n#### Denied Permissions\n\nThis default permission set prevents access to critical components\nof the Tauri application by default.\nOn Windows the webview data folder access is denied.\n\n#### This default permission set includes:\n\n- `create-app-specific-dirs`\n- `read-app-specific-dirs-recursive`\n- `deny-default`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This set of permissions describes the what kind of\nfile system access the `fs` plugin has enabled or denied by default.\n\n#### Granted Permissions\n\nThis default permission set enables read access to the\napplication specific directories (AppConfig, AppData, AppLocalData, AppCache,\nAppLog) and all files and sub directories created in it.\nThe location of these directories depends on the operating system,\nwhere the application is run.\n\nIn general these directories need to be manually created\nby the application at runtime, before accessing files or folders\nin it is possible.\n\nTherefore, it is also allowed to create all of these folders via\nthe `mkdir` command.\n\n#### Denied Permissions\n\nThis default permission set prevents access to critical components\nof the Tauri application by default.\nOn Windows the webview data folder access is denied.\n\n#### This default permission set includes:\n\n- `create-app-specific-dirs`\n- `read-app-specific-dirs-recursive`\n- `deny-default`" }, { - "description": "This denies access to dangerous Tauri relevant files and folders by default.", + "description": "This denies access to dangerous Tauri relevant files and folders by default.\n#### This permission set includes:\n\n- `deny-webview-data-linux`\n- `deny-webview-data-windows`", "type": "string", - "const": "deny-default" + "const": "deny-default", + "markdownDescription": "This denies access to dangerous Tauri relevant files and folders by default.\n#### This permission set includes:\n\n- `deny-webview-data-linux`\n- `deny-webview-data-windows`" }, { "description": "This denies read access to the\n`$APPLOCALDATA` folder on linux as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", "type": "string", - "const": "deny-webview-data-linux" + "const": "deny-webview-data-linux", + "markdownDescription": "This denies read access to the\n`$APPLOCALDATA` folder on linux as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered." }, { "description": "This denies read access to the\n`$APPLOCALDATA/EBWebView` folder on windows as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", "type": "string", - "const": "deny-webview-data-windows" + "const": "deny-webview-data-windows", + "markdownDescription": "This denies read access to the\n`$APPLOCALDATA/EBWebView` folder on windows as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered." }, { "description": "This enables all read related commands without any pre-configured accessible paths.", "type": "string", - "const": "read-all" + "const": "read-all", + "markdownDescription": "This enables all read related commands without any pre-configured accessible paths." }, { "description": "This permission allows recursive read functionality on the application\nspecific base directories. \n", "type": "string", - "const": "read-app-specific-dirs-recursive" + "const": "read-app-specific-dirs-recursive", + "markdownDescription": "This permission allows recursive read functionality on the application\nspecific base directories. \n" }, { "description": "This enables directory read and file metadata related commands without any pre-configured accessible paths.", "type": "string", - "const": "read-dirs" + "const": "read-dirs", + "markdownDescription": "This enables directory read and file metadata related commands without any pre-configured accessible paths." }, { "description": "This enables file read related commands without any pre-configured accessible paths.", "type": "string", - "const": "read-files" + "const": "read-files", + "markdownDescription": "This enables file read related commands without any pre-configured accessible paths." }, { "description": "This enables all index or metadata related commands without any pre-configured accessible paths.", "type": "string", - "const": "read-meta" + "const": "read-meta", + "markdownDescription": "This enables all index or metadata related commands without any pre-configured accessible paths." }, { "description": "An empty permission you can use to modify the global scope.", "type": "string", - "const": "scope" + "const": "scope", + "markdownDescription": "An empty permission you can use to modify the global scope." }, { "description": "This enables all write related commands without any pre-configured accessible paths.", "type": "string", - "const": "write-all" + "const": "write-all", + "markdownDescription": "This enables all write related commands without any pre-configured accessible paths." }, { "description": "This enables all file write related commands without any pre-configured accessible paths.", "type": "string", - "const": "write-files" + "const": "write-files", + "markdownDescription": "This enables all file write related commands without any pre-configured accessible paths." } ] } diff --git a/plugins/geolocation/permissions/schemas/schema.json b/plugins/geolocation/permissions/schemas/schema.json index fe0129bb..237b445d 100644 --- a/plugins/geolocation/permissions/schemas/schema.json +++ b/plugins/geolocation/permissions/schemas/schema.json @@ -297,62 +297,74 @@ { "description": "Enables the check_permissions command without any pre-configured scope.", "type": "string", - "const": "allow-check-permissions" + "const": "allow-check-permissions", + "markdownDescription": "Enables the check_permissions command without any pre-configured scope." }, { "description": "Denies the check_permissions command without any pre-configured scope.", "type": "string", - "const": "deny-check-permissions" + "const": "deny-check-permissions", + "markdownDescription": "Denies the check_permissions command without any pre-configured scope." }, { "description": "Enables the clear_permissions command without any pre-configured scope.", "type": "string", - "const": "allow-clear-permissions" + "const": "allow-clear-permissions", + "markdownDescription": "Enables the clear_permissions command without any pre-configured scope." }, { "description": "Denies the clear_permissions command without any pre-configured scope.", "type": "string", - "const": "deny-clear-permissions" + "const": "deny-clear-permissions", + "markdownDescription": "Denies the clear_permissions command without any pre-configured scope." }, { "description": "Enables the clear_watch command without any pre-configured scope.", "type": "string", - "const": "allow-clear-watch" + "const": "allow-clear-watch", + "markdownDescription": "Enables the clear_watch command without any pre-configured scope." }, { "description": "Denies the clear_watch command without any pre-configured scope.", "type": "string", - "const": "deny-clear-watch" + "const": "deny-clear-watch", + "markdownDescription": "Denies the clear_watch command without any pre-configured scope." }, { "description": "Enables the get_current_position command without any pre-configured scope.", "type": "string", - "const": "allow-get-current-position" + "const": "allow-get-current-position", + "markdownDescription": "Enables the get_current_position command without any pre-configured scope." }, { "description": "Denies the get_current_position command without any pre-configured scope.", "type": "string", - "const": "deny-get-current-position" + "const": "deny-get-current-position", + "markdownDescription": "Denies the get_current_position command without any pre-configured scope." }, { "description": "Enables the request_permissions command without any pre-configured scope.", "type": "string", - "const": "allow-request-permissions" + "const": "allow-request-permissions", + "markdownDescription": "Enables the request_permissions command without any pre-configured scope." }, { "description": "Denies the request_permissions command without any pre-configured scope.", "type": "string", - "const": "deny-request-permissions" + "const": "deny-request-permissions", + "markdownDescription": "Denies the request_permissions command without any pre-configured scope." }, { "description": "Enables the watch_position command without any pre-configured scope.", "type": "string", - "const": "allow-watch-position" + "const": "allow-watch-position", + "markdownDescription": "Enables the watch_position command without any pre-configured scope." }, { "description": "Denies the watch_position command without any pre-configured scope.", "type": "string", - "const": "deny-watch-position" + "const": "deny-watch-position", + "markdownDescription": "Denies the watch_position command without any pre-configured scope." } ] } diff --git a/plugins/global-shortcut/permissions/autogenerated/reference.md b/plugins/global-shortcut/permissions/autogenerated/reference.md index f8571c04..dedb1aef 100644 --- a/plugins/global-shortcut/permissions/autogenerated/reference.md +++ b/plugins/global-shortcut/permissions/autogenerated/reference.md @@ -6,6 +6,8 @@ application specific if specific shortcuts should be registered or unregistered. +#### This default permission set includes the following: + ## Permission Table diff --git a/plugins/global-shortcut/permissions/schemas/schema.json b/plugins/global-shortcut/permissions/schemas/schema.json index 6270e7f3..1224869c 100644 --- a/plugins/global-shortcut/permissions/schemas/schema.json +++ b/plugins/global-shortcut/permissions/schemas/schema.json @@ -297,57 +297,68 @@ { "description": "Enables the is_registered command without any pre-configured scope.", "type": "string", - "const": "allow-is-registered" + "const": "allow-is-registered", + "markdownDescription": "Enables the is_registered command without any pre-configured scope." }, { "description": "Denies the is_registered command without any pre-configured scope.", "type": "string", - "const": "deny-is-registered" + "const": "deny-is-registered", + "markdownDescription": "Denies the is_registered command without any pre-configured scope." }, { "description": "Enables the register command without any pre-configured scope.", "type": "string", - "const": "allow-register" + "const": "allow-register", + "markdownDescription": "Enables the register command without any pre-configured scope." }, { "description": "Denies the register command without any pre-configured scope.", "type": "string", - "const": "deny-register" + "const": "deny-register", + "markdownDescription": "Denies the register command without any pre-configured scope." }, { "description": "Enables the register_all command without any pre-configured scope.", "type": "string", - "const": "allow-register-all" + "const": "allow-register-all", + "markdownDescription": "Enables the register_all command without any pre-configured scope." }, { "description": "Denies the register_all command without any pre-configured scope.", "type": "string", - "const": "deny-register-all" + "const": "deny-register-all", + "markdownDescription": "Denies the register_all command without any pre-configured scope." }, { "description": "Enables the unregister command without any pre-configured scope.", "type": "string", - "const": "allow-unregister" + "const": "allow-unregister", + "markdownDescription": "Enables the unregister command without any pre-configured scope." }, { "description": "Denies the unregister command without any pre-configured scope.", "type": "string", - "const": "deny-unregister" + "const": "deny-unregister", + "markdownDescription": "Denies the unregister command without any pre-configured scope." }, { "description": "Enables the unregister_all command without any pre-configured scope.", "type": "string", - "const": "allow-unregister-all" + "const": "allow-unregister-all", + "markdownDescription": "Enables the unregister_all command without any pre-configured scope." }, { "description": "Denies the unregister_all command without any pre-configured scope.", "type": "string", - "const": "deny-unregister-all" + "const": "deny-unregister-all", + "markdownDescription": "Denies the unregister_all command without any pre-configured scope." }, { "description": "No features are enabled by default, as we believe\nthe shortcuts can be inherently dangerous and it is\napplication specific if specific shortcuts should be\nregistered or unregistered.\n", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "No features are enabled by default, as we believe\nthe shortcuts can be inherently dangerous and it is\napplication specific if specific shortcuts should be\nregistered or unregistered.\n" } ] } diff --git a/plugins/haptics/permissions/schemas/schema.json b/plugins/haptics/permissions/schemas/schema.json index 889da78f..ed217dc4 100644 --- a/plugins/haptics/permissions/schemas/schema.json +++ b/plugins/haptics/permissions/schemas/schema.json @@ -297,42 +297,50 @@ { "description": "Enables the impact_feedback command without any pre-configured scope.", "type": "string", - "const": "allow-impact-feedback" + "const": "allow-impact-feedback", + "markdownDescription": "Enables the impact_feedback command without any pre-configured scope." }, { "description": "Denies the impact_feedback command without any pre-configured scope.", "type": "string", - "const": "deny-impact-feedback" + "const": "deny-impact-feedback", + "markdownDescription": "Denies the impact_feedback command without any pre-configured scope." }, { "description": "Enables the notification_feedback command without any pre-configured scope.", "type": "string", - "const": "allow-notification-feedback" + "const": "allow-notification-feedback", + "markdownDescription": "Enables the notification_feedback command without any pre-configured scope." }, { "description": "Denies the notification_feedback command without any pre-configured scope.", "type": "string", - "const": "deny-notification-feedback" + "const": "deny-notification-feedback", + "markdownDescription": "Denies the notification_feedback command without any pre-configured scope." }, { "description": "Enables the selection_feedback command without any pre-configured scope.", "type": "string", - "const": "allow-selection-feedback" + "const": "allow-selection-feedback", + "markdownDescription": "Enables the selection_feedback command without any pre-configured scope." }, { "description": "Denies the selection_feedback command without any pre-configured scope.", "type": "string", - "const": "deny-selection-feedback" + "const": "deny-selection-feedback", + "markdownDescription": "Denies the selection_feedback command without any pre-configured scope." }, { "description": "Enables the vibrate command without any pre-configured scope.", "type": "string", - "const": "allow-vibrate" + "const": "allow-vibrate", + "markdownDescription": "Enables the vibrate command without any pre-configured scope." }, { "description": "Denies the vibrate command without any pre-configured scope.", "type": "string", - "const": "deny-vibrate" + "const": "deny-vibrate", + "markdownDescription": "Denies the vibrate command without any pre-configured scope." } ] } diff --git a/plugins/http/permissions/autogenerated/reference.md b/plugins/http/permissions/autogenerated/reference.md index 4126f0b9..a155fd62 100644 --- a/plugins/http/permissions/autogenerated/reference.md +++ b/plugins/http/permissions/autogenerated/reference.md @@ -13,6 +13,8 @@ All fetch operations are enabled. +#### This default permission set includes the following: + - `allow-fetch` - `allow-fetch-cancel` - `allow-fetch-read-body` diff --git a/plugins/http/permissions/schemas/schema.json b/plugins/http/permissions/schemas/schema.json index 9b6ce6dd..ea774399 100644 --- a/plugins/http/permissions/schemas/schema.json +++ b/plugins/http/permissions/schemas/schema.json @@ -297,47 +297,56 @@ { "description": "Enables the fetch command without any pre-configured scope.", "type": "string", - "const": "allow-fetch" + "const": "allow-fetch", + "markdownDescription": "Enables the fetch command without any pre-configured scope." }, { "description": "Denies the fetch command without any pre-configured scope.", "type": "string", - "const": "deny-fetch" + "const": "deny-fetch", + "markdownDescription": "Denies the fetch command without any pre-configured scope." }, { "description": "Enables the fetch_cancel command without any pre-configured scope.", "type": "string", - "const": "allow-fetch-cancel" + "const": "allow-fetch-cancel", + "markdownDescription": "Enables the fetch_cancel command without any pre-configured scope." }, { "description": "Denies the fetch_cancel command without any pre-configured scope.", "type": "string", - "const": "deny-fetch-cancel" + "const": "deny-fetch-cancel", + "markdownDescription": "Denies the fetch_cancel command without any pre-configured scope." }, { "description": "Enables the fetch_read_body command without any pre-configured scope.", "type": "string", - "const": "allow-fetch-read-body" + "const": "allow-fetch-read-body", + "markdownDescription": "Enables the fetch_read_body command without any pre-configured scope." }, { "description": "Denies the fetch_read_body command without any pre-configured scope.", "type": "string", - "const": "deny-fetch-read-body" + "const": "deny-fetch-read-body", + "markdownDescription": "Denies the fetch_read_body command without any pre-configured scope." }, { "description": "Enables the fetch_send command without any pre-configured scope.", "type": "string", - "const": "allow-fetch-send" + "const": "allow-fetch-send", + "markdownDescription": "Enables the fetch_send command without any pre-configured scope." }, { "description": "Denies the fetch_send command without any pre-configured scope.", "type": "string", - "const": "deny-fetch-send" + "const": "deny-fetch-send", + "markdownDescription": "Denies the fetch_send command without any pre-configured scope." }, { - "description": "This permission set configures what kind of\nfetch operations are available from the http plugin.\n\nThis enables all fetch operations but does not\nallow explicitly any origins to be fetched. This needs to\nbe manually configured before usage.\n\n#### Granted Permissions\n\nAll fetch operations are enabled.\n\n", + "description": "This permission set configures what kind of\nfetch operations are available from the http plugin.\n\nThis enables all fetch operations but does not\nallow explicitly any origins to be fetched. This needs to\nbe manually configured before usage.\n\n#### Granted Permissions\n\nAll fetch operations are enabled.\n\n\n#### This default permission set includes:\n\n- `allow-fetch`\n- `allow-fetch-cancel`\n- `allow-fetch-read-body`\n- `allow-fetch-send`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This permission set configures what kind of\nfetch operations are available from the http plugin.\n\nThis enables all fetch operations but does not\nallow explicitly any origins to be fetched. This needs to\nbe manually configured before usage.\n\n#### Granted Permissions\n\nAll fetch operations are enabled.\n\n\n#### This default permission set includes:\n\n- `allow-fetch`\n- `allow-fetch-cancel`\n- `allow-fetch-read-body`\n- `allow-fetch-send`" } ] } diff --git a/plugins/log/permissions/autogenerated/reference.md b/plugins/log/permissions/autogenerated/reference.md index d59aefa0..57d6c9f3 100644 --- a/plugins/log/permissions/autogenerated/reference.md +++ b/plugins/log/permissions/autogenerated/reference.md @@ -2,6 +2,8 @@ Allows the log command +#### This default permission set includes the following: + - `allow-log` ## Permission Table diff --git a/plugins/log/permissions/schemas/schema.json b/plugins/log/permissions/schemas/schema.json index 547d1fd8..cfee7e75 100644 --- a/plugins/log/permissions/schemas/schema.json +++ b/plugins/log/permissions/schemas/schema.json @@ -297,17 +297,20 @@ { "description": "Enables the log command without any pre-configured scope.", "type": "string", - "const": "allow-log" + "const": "allow-log", + "markdownDescription": "Enables the log command without any pre-configured scope." }, { "description": "Denies the log command without any pre-configured scope.", "type": "string", - "const": "deny-log" + "const": "deny-log", + "markdownDescription": "Denies the log command without any pre-configured scope." }, { - "description": "Allows the log command", + "description": "Allows the log command\n#### This default permission set includes:\n\n- `allow-log`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "Allows the log command\n#### This default permission set includes:\n\n- `allow-log`" } ] } diff --git a/plugins/nfc/permissions/autogenerated/reference.md b/plugins/nfc/permissions/autogenerated/reference.md index bf425832..6148cf2c 100644 --- a/plugins/nfc/permissions/autogenerated/reference.md +++ b/plugins/nfc/permissions/autogenerated/reference.md @@ -11,6 +11,8 @@ Writing to tags needs to be manually enabled. +#### This default permission set includes the following: + - `allow-is-available` - `allow-scan` diff --git a/plugins/nfc/permissions/schemas/schema.json b/plugins/nfc/permissions/schemas/schema.json index 69b4eb23..8a018e26 100644 --- a/plugins/nfc/permissions/schemas/schema.json +++ b/plugins/nfc/permissions/schemas/schema.json @@ -297,37 +297,44 @@ { "description": "Enables the is_available command without any pre-configured scope.", "type": "string", - "const": "allow-is-available" + "const": "allow-is-available", + "markdownDescription": "Enables the is_available command without any pre-configured scope." }, { "description": "Denies the is_available command without any pre-configured scope.", "type": "string", - "const": "deny-is-available" + "const": "deny-is-available", + "markdownDescription": "Denies the is_available command without any pre-configured scope." }, { "description": "Enables the scan command without any pre-configured scope.", "type": "string", - "const": "allow-scan" + "const": "allow-scan", + "markdownDescription": "Enables the scan command without any pre-configured scope." }, { "description": "Denies the scan command without any pre-configured scope.", "type": "string", - "const": "deny-scan" + "const": "deny-scan", + "markdownDescription": "Denies the scan command without any pre-configured scope." }, { "description": "Enables the write command without any pre-configured scope.", "type": "string", - "const": "allow-write" + "const": "allow-write", + "markdownDescription": "Enables the write command without any pre-configured scope." }, { "description": "Denies the write command without any pre-configured scope.", "type": "string", - "const": "deny-write" + "const": "deny-write", + "markdownDescription": "Denies the write command without any pre-configured scope." }, { - "description": "This permission set configures what kind of\noperations are available from the nfc plugin.\n\n#### Granted Permissions\n\nChecking if the NFC functionality is available\nand scanning nearby tags is allowed.\nWriting to tags needs to be manually enabled.\n\n", + "description": "This permission set configures what kind of\noperations are available from the nfc plugin.\n\n#### Granted Permissions\n\nChecking if the NFC functionality is available\nand scanning nearby tags is allowed.\nWriting to tags needs to be manually enabled.\n\n\n#### This default permission set includes:\n\n- `allow-is-available`\n- `allow-scan`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This permission set configures what kind of\noperations are available from the nfc plugin.\n\n#### Granted Permissions\n\nChecking if the NFC functionality is available\nand scanning nearby tags is allowed.\nWriting to tags needs to be manually enabled.\n\n\n#### This default permission set includes:\n\n- `allow-is-available`\n- `allow-scan`" } ] } diff --git a/plugins/notification/permissions/autogenerated/reference.md b/plugins/notification/permissions/autogenerated/reference.md index b6130d60..7186a421 100644 --- a/plugins/notification/permissions/autogenerated/reference.md +++ b/plugins/notification/permissions/autogenerated/reference.md @@ -9,6 +9,8 @@ It allows all notification related features. +#### This default permission set includes the following: + - `allow-is-permission-granted` - `allow-request-permission` - `allow-notify` diff --git a/plugins/notification/permissions/schemas/schema.json b/plugins/notification/permissions/schemas/schema.json index 4c50cde6..26703a8a 100644 --- a/plugins/notification/permissions/schemas/schema.json +++ b/plugins/notification/permissions/schemas/schema.json @@ -297,167 +297,200 @@ { "description": "Enables the batch command without any pre-configured scope.", "type": "string", - "const": "allow-batch" + "const": "allow-batch", + "markdownDescription": "Enables the batch command without any pre-configured scope." }, { "description": "Denies the batch command without any pre-configured scope.", "type": "string", - "const": "deny-batch" + "const": "deny-batch", + "markdownDescription": "Denies the batch command without any pre-configured scope." }, { "description": "Enables the cancel command without any pre-configured scope.", "type": "string", - "const": "allow-cancel" + "const": "allow-cancel", + "markdownDescription": "Enables the cancel command without any pre-configured scope." }, { "description": "Denies the cancel command without any pre-configured scope.", "type": "string", - "const": "deny-cancel" + "const": "deny-cancel", + "markdownDescription": "Denies the cancel command without any pre-configured scope." }, { "description": "Enables the check_permissions command without any pre-configured scope.", "type": "string", - "const": "allow-check-permissions" + "const": "allow-check-permissions", + "markdownDescription": "Enables the check_permissions command without any pre-configured scope." }, { "description": "Denies the check_permissions command without any pre-configured scope.", "type": "string", - "const": "deny-check-permissions" + "const": "deny-check-permissions", + "markdownDescription": "Denies the check_permissions command without any pre-configured scope." }, { "description": "Enables the create_channel command without any pre-configured scope.", "type": "string", - "const": "allow-create-channel" + "const": "allow-create-channel", + "markdownDescription": "Enables the create_channel command without any pre-configured scope." }, { "description": "Denies the create_channel command without any pre-configured scope.", "type": "string", - "const": "deny-create-channel" + "const": "deny-create-channel", + "markdownDescription": "Denies the create_channel command without any pre-configured scope." }, { "description": "Enables the delete_channel command without any pre-configured scope.", "type": "string", - "const": "allow-delete-channel" + "const": "allow-delete-channel", + "markdownDescription": "Enables the delete_channel command without any pre-configured scope." }, { "description": "Denies the delete_channel command without any pre-configured scope.", "type": "string", - "const": "deny-delete-channel" + "const": "deny-delete-channel", + "markdownDescription": "Denies the delete_channel command without any pre-configured scope." }, { "description": "Enables the get_active command without any pre-configured scope.", "type": "string", - "const": "allow-get-active" + "const": "allow-get-active", + "markdownDescription": "Enables the get_active command without any pre-configured scope." }, { "description": "Denies the get_active command without any pre-configured scope.", "type": "string", - "const": "deny-get-active" + "const": "deny-get-active", + "markdownDescription": "Denies the get_active command without any pre-configured scope." }, { "description": "Enables the get_pending command without any pre-configured scope.", "type": "string", - "const": "allow-get-pending" + "const": "allow-get-pending", + "markdownDescription": "Enables the get_pending command without any pre-configured scope." }, { "description": "Denies the get_pending command without any pre-configured scope.", "type": "string", - "const": "deny-get-pending" + "const": "deny-get-pending", + "markdownDescription": "Denies the get_pending command without any pre-configured scope." }, { "description": "Enables the is_permission_granted command without any pre-configured scope.", "type": "string", - "const": "allow-is-permission-granted" + "const": "allow-is-permission-granted", + "markdownDescription": "Enables the is_permission_granted command without any pre-configured scope." }, { "description": "Denies the is_permission_granted command without any pre-configured scope.", "type": "string", - "const": "deny-is-permission-granted" + "const": "deny-is-permission-granted", + "markdownDescription": "Denies the is_permission_granted command without any pre-configured scope." }, { "description": "Enables the list_channels command without any pre-configured scope.", "type": "string", - "const": "allow-list-channels" + "const": "allow-list-channels", + "markdownDescription": "Enables the list_channels command without any pre-configured scope." }, { "description": "Denies the list_channels command without any pre-configured scope.", "type": "string", - "const": "deny-list-channels" + "const": "deny-list-channels", + "markdownDescription": "Denies the list_channels command without any pre-configured scope." }, { "description": "Enables the notify command without any pre-configured scope.", "type": "string", - "const": "allow-notify" + "const": "allow-notify", + "markdownDescription": "Enables the notify command without any pre-configured scope." }, { "description": "Denies the notify command without any pre-configured scope.", "type": "string", - "const": "deny-notify" + "const": "deny-notify", + "markdownDescription": "Denies the notify command without any pre-configured scope." }, { "description": "Enables the permission_state command without any pre-configured scope.", "type": "string", - "const": "allow-permission-state" + "const": "allow-permission-state", + "markdownDescription": "Enables the permission_state command without any pre-configured scope." }, { "description": "Denies the permission_state command without any pre-configured scope.", "type": "string", - "const": "deny-permission-state" + "const": "deny-permission-state", + "markdownDescription": "Denies the permission_state command without any pre-configured scope." }, { "description": "Enables the register_action_types command without any pre-configured scope.", "type": "string", - "const": "allow-register-action-types" + "const": "allow-register-action-types", + "markdownDescription": "Enables the register_action_types command without any pre-configured scope." }, { "description": "Denies the register_action_types command without any pre-configured scope.", "type": "string", - "const": "deny-register-action-types" + "const": "deny-register-action-types", + "markdownDescription": "Denies the register_action_types command without any pre-configured scope." }, { "description": "Enables the register_listener command without any pre-configured scope.", "type": "string", - "const": "allow-register-listener" + "const": "allow-register-listener", + "markdownDescription": "Enables the register_listener command without any pre-configured scope." }, { "description": "Denies the register_listener command without any pre-configured scope.", "type": "string", - "const": "deny-register-listener" + "const": "deny-register-listener", + "markdownDescription": "Denies the register_listener command without any pre-configured scope." }, { "description": "Enables the remove_active command without any pre-configured scope.", "type": "string", - "const": "allow-remove-active" + "const": "allow-remove-active", + "markdownDescription": "Enables the remove_active command without any pre-configured scope." }, { "description": "Denies the remove_active command without any pre-configured scope.", "type": "string", - "const": "deny-remove-active" + "const": "deny-remove-active", + "markdownDescription": "Denies the remove_active command without any pre-configured scope." }, { "description": "Enables the request_permission command without any pre-configured scope.", "type": "string", - "const": "allow-request-permission" + "const": "allow-request-permission", + "markdownDescription": "Enables the request_permission command without any pre-configured scope." }, { "description": "Denies the request_permission command without any pre-configured scope.", "type": "string", - "const": "deny-request-permission" + "const": "deny-request-permission", + "markdownDescription": "Denies the request_permission command without any pre-configured scope." }, { "description": "Enables the show command without any pre-configured scope.", "type": "string", - "const": "allow-show" + "const": "allow-show", + "markdownDescription": "Enables the show command without any pre-configured scope." }, { "description": "Denies the show command without any pre-configured scope.", "type": "string", - "const": "deny-show" + "const": "deny-show", + "markdownDescription": "Denies the show command without any pre-configured scope." }, { - "description": "This permission set configures which\nnotification features are by default exposed.\n\n#### Granted Permissions\n\nIt allows all notification related features.\n\n", + "description": "This permission set configures which\nnotification features are by default exposed.\n\n#### Granted Permissions\n\nIt allows all notification related features.\n\n\n#### This default permission set includes:\n\n- `allow-is-permission-granted`\n- `allow-request-permission`\n- `allow-notify`\n- `allow-register-action-types`\n- `allow-register-listener`\n- `allow-cancel`\n- `allow-get-pending`\n- `allow-remove-active`\n- `allow-get-active`\n- `allow-check-permissions`\n- `allow-show`\n- `allow-batch`\n- `allow-list-channels`\n- `allow-delete-channel`\n- `allow-create-channel`\n- `allow-permission-state`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This permission set configures which\nnotification features are by default exposed.\n\n#### Granted Permissions\n\nIt allows all notification related features.\n\n\n#### This default permission set includes:\n\n- `allow-is-permission-granted`\n- `allow-request-permission`\n- `allow-notify`\n- `allow-register-action-types`\n- `allow-register-listener`\n- `allow-cancel`\n- `allow-get-pending`\n- `allow-remove-active`\n- `allow-get-active`\n- `allow-check-permissions`\n- `allow-show`\n- `allow-batch`\n- `allow-list-channels`\n- `allow-delete-channel`\n- `allow-create-channel`\n- `allow-permission-state`" } ] } diff --git a/plugins/opener/permissions/autogenerated/reference.md b/plugins/opener/permissions/autogenerated/reference.md index 66c232c6..6ad6ba1f 100644 --- a/plugins/opener/permissions/autogenerated/reference.md +++ b/plugins/opener/permissions/autogenerated/reference.md @@ -3,6 +3,8 @@ This permission set allows opening `mailto:`, `tel:`, `https://` and `http://` urls using their default application as well as reveal file in directories using default file explorer +#### This default permission set includes the following: + - `allow-open-url` - `allow-reveal-item-in-dir` - `allow-default-urls` diff --git a/plugins/opener/permissions/schemas/schema.json b/plugins/opener/permissions/schemas/schema.json index 4f289a93..78c80ba3 100644 --- a/plugins/opener/permissions/schemas/schema.json +++ b/plugins/opener/permissions/schemas/schema.json @@ -297,42 +297,50 @@ { "description": "This enables opening `mailto:`, `tel:`, `https://` and `http://` urls using their default application.", "type": "string", - "const": "allow-default-urls" + "const": "allow-default-urls", + "markdownDescription": "This enables opening `mailto:`, `tel:`, `https://` and `http://` urls using their default application." }, { "description": "Enables the open_path command without any pre-configured scope.", "type": "string", - "const": "allow-open-path" + "const": "allow-open-path", + "markdownDescription": "Enables the open_path command without any pre-configured scope." }, { "description": "Denies the open_path command without any pre-configured scope.", "type": "string", - "const": "deny-open-path" + "const": "deny-open-path", + "markdownDescription": "Denies the open_path command without any pre-configured scope." }, { "description": "Enables the open_url command without any pre-configured scope.", "type": "string", - "const": "allow-open-url" + "const": "allow-open-url", + "markdownDescription": "Enables the open_url command without any pre-configured scope." }, { "description": "Denies the open_url command without any pre-configured scope.", "type": "string", - "const": "deny-open-url" + "const": "deny-open-url", + "markdownDescription": "Denies the open_url command without any pre-configured scope." }, { "description": "Enables the reveal_item_in_dir command without any pre-configured scope.", "type": "string", - "const": "allow-reveal-item-in-dir" + "const": "allow-reveal-item-in-dir", + "markdownDescription": "Enables the reveal_item_in_dir command without any pre-configured scope." }, { "description": "Denies the reveal_item_in_dir command without any pre-configured scope.", "type": "string", - "const": "deny-reveal-item-in-dir" + "const": "deny-reveal-item-in-dir", + "markdownDescription": "Denies the reveal_item_in_dir command without any pre-configured scope." }, { - "description": "This permission set allows opening `mailto:`, `tel:`, `https://` and `http://` urls using their default application\nas well as reveal file in directories using default file explorer", + "description": "This permission set allows opening `mailto:`, `tel:`, `https://` and `http://` urls using their default application\nas well as reveal file in directories using default file explorer\n#### This default permission set includes:\n\n- `allow-open-url`\n- `allow-reveal-item-in-dir`\n- `allow-default-urls`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This permission set allows opening `mailto:`, `tel:`, `https://` and `http://` urls using their default application\nas well as reveal file in directories using default file explorer\n#### This default permission set includes:\n\n- `allow-open-url`\n- `allow-reveal-item-in-dir`\n- `allow-default-urls`" } ] } diff --git a/plugins/os/permissions/autogenerated/reference.md b/plugins/os/permissions/autogenerated/reference.md index 88fcd6fa..9ed7385e 100644 --- a/plugins/os/permissions/autogenerated/reference.md +++ b/plugins/os/permissions/autogenerated/reference.md @@ -10,6 +10,8 @@ All information except the host name are available. +#### This default permission set includes the following: + - `allow-arch` - `allow-exe-extension` - `allow-family` diff --git a/plugins/os/permissions/schemas/schema.json b/plugins/os/permissions/schemas/schema.json index ad3317c7..36680b44 100644 --- a/plugins/os/permissions/schemas/schema.json +++ b/plugins/os/permissions/schemas/schema.json @@ -297,87 +297,104 @@ { "description": "Enables the arch command without any pre-configured scope.", "type": "string", - "const": "allow-arch" + "const": "allow-arch", + "markdownDescription": "Enables the arch command without any pre-configured scope." }, { "description": "Denies the arch command without any pre-configured scope.", "type": "string", - "const": "deny-arch" + "const": "deny-arch", + "markdownDescription": "Denies the arch command without any pre-configured scope." }, { "description": "Enables the exe_extension command without any pre-configured scope.", "type": "string", - "const": "allow-exe-extension" + "const": "allow-exe-extension", + "markdownDescription": "Enables the exe_extension command without any pre-configured scope." }, { "description": "Denies the exe_extension command without any pre-configured scope.", "type": "string", - "const": "deny-exe-extension" + "const": "deny-exe-extension", + "markdownDescription": "Denies the exe_extension command without any pre-configured scope." }, { "description": "Enables the family command without any pre-configured scope.", "type": "string", - "const": "allow-family" + "const": "allow-family", + "markdownDescription": "Enables the family command without any pre-configured scope." }, { "description": "Denies the family command without any pre-configured scope.", "type": "string", - "const": "deny-family" + "const": "deny-family", + "markdownDescription": "Denies the family command without any pre-configured scope." }, { "description": "Enables the hostname command without any pre-configured scope.", "type": "string", - "const": "allow-hostname" + "const": "allow-hostname", + "markdownDescription": "Enables the hostname command without any pre-configured scope." }, { "description": "Denies the hostname command without any pre-configured scope.", "type": "string", - "const": "deny-hostname" + "const": "deny-hostname", + "markdownDescription": "Denies the hostname command without any pre-configured scope." }, { "description": "Enables the locale command without any pre-configured scope.", "type": "string", - "const": "allow-locale" + "const": "allow-locale", + "markdownDescription": "Enables the locale command without any pre-configured scope." }, { "description": "Denies the locale command without any pre-configured scope.", "type": "string", - "const": "deny-locale" + "const": "deny-locale", + "markdownDescription": "Denies the locale command without any pre-configured scope." }, { "description": "Enables the os_type command without any pre-configured scope.", "type": "string", - "const": "allow-os-type" + "const": "allow-os-type", + "markdownDescription": "Enables the os_type command without any pre-configured scope." }, { "description": "Denies the os_type command without any pre-configured scope.", "type": "string", - "const": "deny-os-type" + "const": "deny-os-type", + "markdownDescription": "Denies the os_type command without any pre-configured scope." }, { "description": "Enables the platform command without any pre-configured scope.", "type": "string", - "const": "allow-platform" + "const": "allow-platform", + "markdownDescription": "Enables the platform command without any pre-configured scope." }, { "description": "Denies the platform command without any pre-configured scope.", "type": "string", - "const": "deny-platform" + "const": "deny-platform", + "markdownDescription": "Denies the platform command without any pre-configured scope." }, { "description": "Enables the version command without any pre-configured scope.", "type": "string", - "const": "allow-version" + "const": "allow-version", + "markdownDescription": "Enables the version command without any pre-configured scope." }, { "description": "Denies the version command without any pre-configured scope.", "type": "string", - "const": "deny-version" + "const": "deny-version", + "markdownDescription": "Denies the version command without any pre-configured scope." }, { - "description": "This permission set configures which\noperating system information are available\nto gather from the frontend.\n\n#### Granted Permissions\n\nAll information except the host name are available.\n\n", + "description": "This permission set configures which\noperating system information are available\nto gather from the frontend.\n\n#### Granted Permissions\n\nAll information except the host name are available.\n\n\n#### This default permission set includes:\n\n- `allow-arch`\n- `allow-exe-extension`\n- `allow-family`\n- `allow-locale`\n- `allow-os-type`\n- `allow-platform`\n- `allow-version`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This permission set configures which\noperating system information are available\nto gather from the frontend.\n\n#### Granted Permissions\n\nAll information except the host name are available.\n\n\n#### This default permission set includes:\n\n- `allow-arch`\n- `allow-exe-extension`\n- `allow-family`\n- `allow-locale`\n- `allow-os-type`\n- `allow-platform`\n- `allow-version`" } ] } diff --git a/plugins/positioner/permissions/autogenerated/reference.md b/plugins/positioner/permissions/autogenerated/reference.md index 72182c02..f6e09133 100644 --- a/plugins/positioner/permissions/autogenerated/reference.md +++ b/plugins/positioner/permissions/autogenerated/reference.md @@ -2,6 +2,8 @@ Allows the moveWindow and handleIconState APIs +#### This default permission set includes the following: + - `allow-move-window` - `allow-move-window-constrained` - `allow-set-tray-icon-state` diff --git a/plugins/positioner/permissions/schemas/schema.json b/plugins/positioner/permissions/schemas/schema.json index 4b1d9221..b0fc760a 100644 --- a/plugins/positioner/permissions/schemas/schema.json +++ b/plugins/positioner/permissions/schemas/schema.json @@ -297,37 +297,44 @@ { "description": "Enables the move_window command without any pre-configured scope.", "type": "string", - "const": "allow-move-window" + "const": "allow-move-window", + "markdownDescription": "Enables the move_window command without any pre-configured scope." }, { "description": "Denies the move_window command without any pre-configured scope.", "type": "string", - "const": "deny-move-window" + "const": "deny-move-window", + "markdownDescription": "Denies the move_window command without any pre-configured scope." }, { "description": "Enables the move_window_constrained command without any pre-configured scope.", "type": "string", - "const": "allow-move-window-constrained" + "const": "allow-move-window-constrained", + "markdownDescription": "Enables the move_window_constrained command without any pre-configured scope." }, { "description": "Denies the move_window_constrained command without any pre-configured scope.", "type": "string", - "const": "deny-move-window-constrained" + "const": "deny-move-window-constrained", + "markdownDescription": "Denies the move_window_constrained command without any pre-configured scope." }, { "description": "Enables the set_tray_icon_state command without any pre-configured scope.", "type": "string", - "const": "allow-set-tray-icon-state" + "const": "allow-set-tray-icon-state", + "markdownDescription": "Enables the set_tray_icon_state command without any pre-configured scope." }, { "description": "Denies the set_tray_icon_state command without any pre-configured scope.", "type": "string", - "const": "deny-set-tray-icon-state" + "const": "deny-set-tray-icon-state", + "markdownDescription": "Denies the set_tray_icon_state command without any pre-configured scope." }, { - "description": "Allows the moveWindow and handleIconState APIs", + "description": "Allows the moveWindow and handleIconState APIs\n#### This default permission set includes:\n\n- `allow-move-window`\n- `allow-move-window-constrained`\n- `allow-set-tray-icon-state`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "Allows the moveWindow and handleIconState APIs\n#### This default permission set includes:\n\n- `allow-move-window`\n- `allow-move-window-constrained`\n- `allow-set-tray-icon-state`" } ] } diff --git a/plugins/process/permissions/autogenerated/reference.md b/plugins/process/permissions/autogenerated/reference.md index 46137369..6cb15b5f 100644 --- a/plugins/process/permissions/autogenerated/reference.md +++ b/plugins/process/permissions/autogenerated/reference.md @@ -9,6 +9,8 @@ This enables to quit via `allow-exit` and restart via `allow-restart` the application. +#### This default permission set includes the following: + - `allow-exit` - `allow-restart` diff --git a/plugins/process/permissions/schemas/schema.json b/plugins/process/permissions/schemas/schema.json index 1818871e..9d68fc63 100644 --- a/plugins/process/permissions/schemas/schema.json +++ b/plugins/process/permissions/schemas/schema.json @@ -297,27 +297,32 @@ { "description": "Enables the exit command without any pre-configured scope.", "type": "string", - "const": "allow-exit" + "const": "allow-exit", + "markdownDescription": "Enables the exit command without any pre-configured scope." }, { "description": "Denies the exit command without any pre-configured scope.", "type": "string", - "const": "deny-exit" + "const": "deny-exit", + "markdownDescription": "Denies the exit command without any pre-configured scope." }, { "description": "Enables the restart command without any pre-configured scope.", "type": "string", - "const": "allow-restart" + "const": "allow-restart", + "markdownDescription": "Enables the restart command without any pre-configured scope." }, { "description": "Denies the restart command without any pre-configured scope.", "type": "string", - "const": "deny-restart" + "const": "deny-restart", + "markdownDescription": "Denies the restart command without any pre-configured scope." }, { - "description": "This permission set configures which\nprocess features are by default exposed.\n\n#### Granted Permissions\n\nThis enables to quit via `allow-exit` and restart via `allow-restart`\nthe application.\n", + "description": "This permission set configures which\nprocess features are by default exposed.\n\n#### Granted Permissions\n\nThis enables to quit via `allow-exit` and restart via `allow-restart`\nthe application.\n\n#### This default permission set includes:\n\n- `allow-exit`\n- `allow-restart`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This permission set configures which\nprocess features are by default exposed.\n\n#### Granted Permissions\n\nThis enables to quit via `allow-exit` and restart via `allow-restart`\nthe application.\n\n#### This default permission set includes:\n\n- `allow-exit`\n- `allow-restart`" } ] } diff --git a/plugins/shell/permissions/autogenerated/reference.md b/plugins/shell/permissions/autogenerated/reference.md index d88bf2d5..602814f2 100644 --- a/plugins/shell/permissions/autogenerated/reference.md +++ b/plugins/shell/permissions/autogenerated/reference.md @@ -10,6 +10,8 @@ scope pre-configured. It will allow opening `http(s)://`, `tel:` and `mailto:` links. +#### This default permission set includes the following: + - `allow-open` ## Permission Table diff --git a/plugins/shell/permissions/schemas/schema.json b/plugins/shell/permissions/schemas/schema.json index ff343467..b729595f 100644 --- a/plugins/shell/permissions/schemas/schema.json +++ b/plugins/shell/permissions/schemas/schema.json @@ -297,57 +297,68 @@ { "description": "Enables the execute command without any pre-configured scope.", "type": "string", - "const": "allow-execute" + "const": "allow-execute", + "markdownDescription": "Enables the execute command without any pre-configured scope." }, { "description": "Denies the execute command without any pre-configured scope.", "type": "string", - "const": "deny-execute" + "const": "deny-execute", + "markdownDescription": "Denies the execute command without any pre-configured scope." }, { "description": "Enables the kill command without any pre-configured scope.", "type": "string", - "const": "allow-kill" + "const": "allow-kill", + "markdownDescription": "Enables the kill command without any pre-configured scope." }, { "description": "Denies the kill command without any pre-configured scope.", "type": "string", - "const": "deny-kill" + "const": "deny-kill", + "markdownDescription": "Denies the kill command without any pre-configured scope." }, { "description": "Enables the open command without any pre-configured scope.", "type": "string", - "const": "allow-open" + "const": "allow-open", + "markdownDescription": "Enables the open command without any pre-configured scope." }, { "description": "Denies the open command without any pre-configured scope.", "type": "string", - "const": "deny-open" + "const": "deny-open", + "markdownDescription": "Denies the open command without any pre-configured scope." }, { "description": "Enables the spawn command without any pre-configured scope.", "type": "string", - "const": "allow-spawn" + "const": "allow-spawn", + "markdownDescription": "Enables the spawn command without any pre-configured scope." }, { "description": "Denies the spawn command without any pre-configured scope.", "type": "string", - "const": "deny-spawn" + "const": "deny-spawn", + "markdownDescription": "Denies the spawn command without any pre-configured scope." }, { "description": "Enables the stdin_write command without any pre-configured scope.", "type": "string", - "const": "allow-stdin-write" + "const": "allow-stdin-write", + "markdownDescription": "Enables the stdin_write command without any pre-configured scope." }, { "description": "Denies the stdin_write command without any pre-configured scope.", "type": "string", - "const": "deny-stdin-write" + "const": "deny-stdin-write", + "markdownDescription": "Denies the stdin_write command without any pre-configured scope." }, { - "description": "This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality without any specific\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n", + "description": "This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality without any specific\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n\n#### This default permission set includes:\n\n- `allow-open`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality without any specific\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n\n#### This default permission set includes:\n\n- `allow-open`" } ] } diff --git a/plugins/single-instance/examples/vanilla/package.json b/plugins/single-instance/examples/vanilla/package.json index 2f174b21..4d34a124 100644 --- a/plugins/single-instance/examples/vanilla/package.json +++ b/plugins/single-instance/examples/vanilla/package.json @@ -9,6 +9,6 @@ "author": "", "license": "MIT", "devDependencies": { - "@tauri-apps/cli": "2.4.0" + "@tauri-apps/cli": "2.4.1" } } diff --git a/plugins/sql/permissions/autogenerated/reference.md b/plugins/sql/permissions/autogenerated/reference.md index 2a70f7b3..e09044c4 100644 --- a/plugins/sql/permissions/autogenerated/reference.md +++ b/plugins/sql/permissions/autogenerated/reference.md @@ -12,6 +12,8 @@ Also allows to load or close a connection. +#### This default permission set includes the following: + - `allow-close` - `allow-load` - `allow-select` diff --git a/plugins/sql/permissions/schemas/schema.json b/plugins/sql/permissions/schemas/schema.json index 241cf33c..488a953c 100644 --- a/plugins/sql/permissions/schemas/schema.json +++ b/plugins/sql/permissions/schemas/schema.json @@ -297,47 +297,56 @@ { "description": "Enables the close command without any pre-configured scope.", "type": "string", - "const": "allow-close" + "const": "allow-close", + "markdownDescription": "Enables the close command without any pre-configured scope." }, { "description": "Denies the close command without any pre-configured scope.", "type": "string", - "const": "deny-close" + "const": "deny-close", + "markdownDescription": "Denies the close command without any pre-configured scope." }, { "description": "Enables the execute command without any pre-configured scope.", "type": "string", - "const": "allow-execute" + "const": "allow-execute", + "markdownDescription": "Enables the execute command without any pre-configured scope." }, { "description": "Denies the execute command without any pre-configured scope.", "type": "string", - "const": "deny-execute" + "const": "deny-execute", + "markdownDescription": "Denies the execute command without any pre-configured scope." }, { "description": "Enables the load command without any pre-configured scope.", "type": "string", - "const": "allow-load" + "const": "allow-load", + "markdownDescription": "Enables the load command without any pre-configured scope." }, { "description": "Denies the load command without any pre-configured scope.", "type": "string", - "const": "deny-load" + "const": "deny-load", + "markdownDescription": "Denies the load command without any pre-configured scope." }, { "description": "Enables the select command without any pre-configured scope.", "type": "string", - "const": "allow-select" + "const": "allow-select", + "markdownDescription": "Enables the select command without any pre-configured scope." }, { "description": "Denies the select command without any pre-configured scope.", "type": "string", - "const": "deny-select" + "const": "deny-select", + "markdownDescription": "Denies the select command without any pre-configured scope." }, { - "description": "### Default Permissions\n\nThis permission set configures what kind of\ndatabase operations are available from the sql plugin.\n\n### Granted Permissions\n\nAll reading related operations are enabled.\nAlso allows to load or close a connection.\n\n", + "description": "### Default Permissions\n\nThis permission set configures what kind of\ndatabase operations are available from the sql plugin.\n\n### Granted Permissions\n\nAll reading related operations are enabled.\nAlso allows to load or close a connection.\n\n\n#### This default permission set includes:\n\n- `allow-close`\n- `allow-load`\n- `allow-select`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "### Default Permissions\n\nThis permission set configures what kind of\ndatabase operations are available from the sql plugin.\n\n### Granted Permissions\n\nAll reading related operations are enabled.\nAlso allows to load or close a connection.\n\n\n#### This default permission set includes:\n\n- `allow-close`\n- `allow-load`\n- `allow-select`" } ] } diff --git a/plugins/store/examples/AppSettingsManager/package.json b/plugins/store/examples/AppSettingsManager/package.json index bc07f8c5..dd6ad0ab 100644 --- a/plugins/store/examples/AppSettingsManager/package.json +++ b/plugins/store/examples/AppSettingsManager/package.json @@ -8,7 +8,7 @@ "tauri": "tauri" }, "devDependencies": { - "@tauri-apps/cli": "2.4.0", + "@tauri-apps/cli": "2.4.1", "typescript": "^5.7.3", "vite": "^6.2.0" } diff --git a/plugins/store/permissions/autogenerated/reference.md b/plugins/store/permissions/autogenerated/reference.md index 5640415d..7b7d1016 100644 --- a/plugins/store/permissions/autogenerated/reference.md +++ b/plugins/store/permissions/autogenerated/reference.md @@ -9,6 +9,8 @@ All operations are enabled by default. +#### This default permission set includes the following: + - `allow-load` - `allow-get-store` - `allow-set` diff --git a/plugins/store/permissions/schemas/schema.json b/plugins/store/permissions/schemas/schema.json index d3cfc815..af475189 100644 --- a/plugins/store/permissions/schemas/schema.json +++ b/plugins/store/permissions/schemas/schema.json @@ -297,147 +297,176 @@ { "description": "Enables the clear command without any pre-configured scope.", "type": "string", - "const": "allow-clear" + "const": "allow-clear", + "markdownDescription": "Enables the clear command without any pre-configured scope." }, { "description": "Denies the clear command without any pre-configured scope.", "type": "string", - "const": "deny-clear" + "const": "deny-clear", + "markdownDescription": "Denies the clear command without any pre-configured scope." }, { "description": "Enables the delete command without any pre-configured scope.", "type": "string", - "const": "allow-delete" + "const": "allow-delete", + "markdownDescription": "Enables the delete command without any pre-configured scope." }, { "description": "Denies the delete command without any pre-configured scope.", "type": "string", - "const": "deny-delete" + "const": "deny-delete", + "markdownDescription": "Denies the delete command without any pre-configured scope." }, { "description": "Enables the entries command without any pre-configured scope.", "type": "string", - "const": "allow-entries" + "const": "allow-entries", + "markdownDescription": "Enables the entries command without any pre-configured scope." }, { "description": "Denies the entries command without any pre-configured scope.", "type": "string", - "const": "deny-entries" + "const": "deny-entries", + "markdownDescription": "Denies the entries command without any pre-configured scope." }, { "description": "Enables the get command without any pre-configured scope.", "type": "string", - "const": "allow-get" + "const": "allow-get", + "markdownDescription": "Enables the get command without any pre-configured scope." }, { "description": "Denies the get command without any pre-configured scope.", "type": "string", - "const": "deny-get" + "const": "deny-get", + "markdownDescription": "Denies the get command without any pre-configured scope." }, { "description": "Enables the get_store command without any pre-configured scope.", "type": "string", - "const": "allow-get-store" + "const": "allow-get-store", + "markdownDescription": "Enables the get_store command without any pre-configured scope." }, { "description": "Denies the get_store command without any pre-configured scope.", "type": "string", - "const": "deny-get-store" + "const": "deny-get-store", + "markdownDescription": "Denies the get_store command without any pre-configured scope." }, { "description": "Enables the has command without any pre-configured scope.", "type": "string", - "const": "allow-has" + "const": "allow-has", + "markdownDescription": "Enables the has command without any pre-configured scope." }, { "description": "Denies the has command without any pre-configured scope.", "type": "string", - "const": "deny-has" + "const": "deny-has", + "markdownDescription": "Denies the has command without any pre-configured scope." }, { "description": "Enables the keys command without any pre-configured scope.", "type": "string", - "const": "allow-keys" + "const": "allow-keys", + "markdownDescription": "Enables the keys command without any pre-configured scope." }, { "description": "Denies the keys command without any pre-configured scope.", "type": "string", - "const": "deny-keys" + "const": "deny-keys", + "markdownDescription": "Denies the keys command without any pre-configured scope." }, { "description": "Enables the length command without any pre-configured scope.", "type": "string", - "const": "allow-length" + "const": "allow-length", + "markdownDescription": "Enables the length command without any pre-configured scope." }, { "description": "Denies the length command without any pre-configured scope.", "type": "string", - "const": "deny-length" + "const": "deny-length", + "markdownDescription": "Denies the length command without any pre-configured scope." }, { "description": "Enables the load command without any pre-configured scope.", "type": "string", - "const": "allow-load" + "const": "allow-load", + "markdownDescription": "Enables the load command without any pre-configured scope." }, { "description": "Denies the load command without any pre-configured scope.", "type": "string", - "const": "deny-load" + "const": "deny-load", + "markdownDescription": "Denies the load command without any pre-configured scope." }, { "description": "Enables the reload command without any pre-configured scope.", "type": "string", - "const": "allow-reload" + "const": "allow-reload", + "markdownDescription": "Enables the reload command without any pre-configured scope." }, { "description": "Denies the reload command without any pre-configured scope.", "type": "string", - "const": "deny-reload" + "const": "deny-reload", + "markdownDescription": "Denies the reload command without any pre-configured scope." }, { "description": "Enables the reset command without any pre-configured scope.", "type": "string", - "const": "allow-reset" + "const": "allow-reset", + "markdownDescription": "Enables the reset command without any pre-configured scope." }, { "description": "Denies the reset command without any pre-configured scope.", "type": "string", - "const": "deny-reset" + "const": "deny-reset", + "markdownDescription": "Denies the reset command without any pre-configured scope." }, { "description": "Enables the save command without any pre-configured scope.", "type": "string", - "const": "allow-save" + "const": "allow-save", + "markdownDescription": "Enables the save command without any pre-configured scope." }, { "description": "Denies the save command without any pre-configured scope.", "type": "string", - "const": "deny-save" + "const": "deny-save", + "markdownDescription": "Denies the save command without any pre-configured scope." }, { "description": "Enables the set command without any pre-configured scope.", "type": "string", - "const": "allow-set" + "const": "allow-set", + "markdownDescription": "Enables the set command without any pre-configured scope." }, { "description": "Denies the set command without any pre-configured scope.", "type": "string", - "const": "deny-set" + "const": "deny-set", + "markdownDescription": "Denies the set command without any pre-configured scope." }, { "description": "Enables the values command without any pre-configured scope.", "type": "string", - "const": "allow-values" + "const": "allow-values", + "markdownDescription": "Enables the values command without any pre-configured scope." }, { "description": "Denies the values command without any pre-configured scope.", "type": "string", - "const": "deny-values" + "const": "deny-values", + "markdownDescription": "Denies the values command without any pre-configured scope." }, { - "description": "This permission set configures what kind of\noperations are available from the store plugin.\n\n#### Granted Permissions\n\nAll operations are enabled by default.\n\n", + "description": "This permission set configures what kind of\noperations are available from the store plugin.\n\n#### Granted Permissions\n\nAll operations are enabled by default.\n\n\n#### This default permission set includes:\n\n- `allow-load`\n- `allow-get-store`\n- `allow-set`\n- `allow-get`\n- `allow-has`\n- `allow-delete`\n- `allow-clear`\n- `allow-reset`\n- `allow-keys`\n- `allow-values`\n- `allow-entries`\n- `allow-length`\n- `allow-reload`\n- `allow-save`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This permission set configures what kind of\noperations are available from the store plugin.\n\n#### Granted Permissions\n\nAll operations are enabled by default.\n\n\n#### This default permission set includes:\n\n- `allow-load`\n- `allow-get-store`\n- `allow-set`\n- `allow-get`\n- `allow-has`\n- `allow-delete`\n- `allow-clear`\n- `allow-reset`\n- `allow-keys`\n- `allow-values`\n- `allow-entries`\n- `allow-length`\n- `allow-reload`\n- `allow-save`" } ] } diff --git a/plugins/stronghold/permissions/autogenerated/reference.md b/plugins/stronghold/permissions/autogenerated/reference.md index c07dc283..c00e56c3 100644 --- a/plugins/stronghold/permissions/autogenerated/reference.md +++ b/plugins/stronghold/permissions/autogenerated/reference.md @@ -9,6 +9,8 @@ All non-destructive operations are enabled by default. +#### This default permission set includes the following: + - `allow-create-client` - `allow-get-store-record` - `allow-initialize` diff --git a/plugins/stronghold/permissions/schemas/schema.json b/plugins/stronghold/permissions/schemas/schema.json index c7781f1f..6af87c6a 100644 --- a/plugins/stronghold/permissions/schemas/schema.json +++ b/plugins/stronghold/permissions/schemas/schema.json @@ -297,117 +297,140 @@ { "description": "Enables the create_client command without any pre-configured scope.", "type": "string", - "const": "allow-create-client" + "const": "allow-create-client", + "markdownDescription": "Enables the create_client command without any pre-configured scope." }, { "description": "Denies the create_client command without any pre-configured scope.", "type": "string", - "const": "deny-create-client" + "const": "deny-create-client", + "markdownDescription": "Denies the create_client command without any pre-configured scope." }, { "description": "Enables the destroy command without any pre-configured scope.", "type": "string", - "const": "allow-destroy" + "const": "allow-destroy", + "markdownDescription": "Enables the destroy command without any pre-configured scope." }, { "description": "Denies the destroy command without any pre-configured scope.", "type": "string", - "const": "deny-destroy" + "const": "deny-destroy", + "markdownDescription": "Denies the destroy command without any pre-configured scope." }, { "description": "Enables the execute_procedure command without any pre-configured scope.", "type": "string", - "const": "allow-execute-procedure" + "const": "allow-execute-procedure", + "markdownDescription": "Enables the execute_procedure command without any pre-configured scope." }, { "description": "Denies the execute_procedure command without any pre-configured scope.", "type": "string", - "const": "deny-execute-procedure" + "const": "deny-execute-procedure", + "markdownDescription": "Denies the execute_procedure command without any pre-configured scope." }, { "description": "Enables the get_store_record command without any pre-configured scope.", "type": "string", - "const": "allow-get-store-record" + "const": "allow-get-store-record", + "markdownDescription": "Enables the get_store_record command without any pre-configured scope." }, { "description": "Denies the get_store_record command without any pre-configured scope.", "type": "string", - "const": "deny-get-store-record" + "const": "deny-get-store-record", + "markdownDescription": "Denies the get_store_record command without any pre-configured scope." }, { "description": "Enables the initialize command without any pre-configured scope.", "type": "string", - "const": "allow-initialize" + "const": "allow-initialize", + "markdownDescription": "Enables the initialize command without any pre-configured scope." }, { "description": "Denies the initialize command without any pre-configured scope.", "type": "string", - "const": "deny-initialize" + "const": "deny-initialize", + "markdownDescription": "Denies the initialize command without any pre-configured scope." }, { "description": "Enables the load_client command without any pre-configured scope.", "type": "string", - "const": "allow-load-client" + "const": "allow-load-client", + "markdownDescription": "Enables the load_client command without any pre-configured scope." }, { "description": "Denies the load_client command without any pre-configured scope.", "type": "string", - "const": "deny-load-client" + "const": "deny-load-client", + "markdownDescription": "Denies the load_client command without any pre-configured scope." }, { "description": "Enables the remove_secret command without any pre-configured scope.", "type": "string", - "const": "allow-remove-secret" + "const": "allow-remove-secret", + "markdownDescription": "Enables the remove_secret command without any pre-configured scope." }, { "description": "Denies the remove_secret command without any pre-configured scope.", "type": "string", - "const": "deny-remove-secret" + "const": "deny-remove-secret", + "markdownDescription": "Denies the remove_secret command without any pre-configured scope." }, { "description": "Enables the remove_store_record command without any pre-configured scope.", "type": "string", - "const": "allow-remove-store-record" + "const": "allow-remove-store-record", + "markdownDescription": "Enables the remove_store_record command without any pre-configured scope." }, { "description": "Denies the remove_store_record command without any pre-configured scope.", "type": "string", - "const": "deny-remove-store-record" + "const": "deny-remove-store-record", + "markdownDescription": "Denies the remove_store_record command without any pre-configured scope." }, { "description": "Enables the save command without any pre-configured scope.", "type": "string", - "const": "allow-save" + "const": "allow-save", + "markdownDescription": "Enables the save command without any pre-configured scope." }, { "description": "Denies the save command without any pre-configured scope.", "type": "string", - "const": "deny-save" + "const": "deny-save", + "markdownDescription": "Denies the save command without any pre-configured scope." }, { "description": "Enables the save_secret command without any pre-configured scope.", "type": "string", - "const": "allow-save-secret" + "const": "allow-save-secret", + "markdownDescription": "Enables the save_secret command without any pre-configured scope." }, { "description": "Denies the save_secret command without any pre-configured scope.", "type": "string", - "const": "deny-save-secret" + "const": "deny-save-secret", + "markdownDescription": "Denies the save_secret command without any pre-configured scope." }, { "description": "Enables the save_store_record command without any pre-configured scope.", "type": "string", - "const": "allow-save-store-record" + "const": "allow-save-store-record", + "markdownDescription": "Enables the save_store_record command without any pre-configured scope." }, { "description": "Denies the save_store_record command without any pre-configured scope.", "type": "string", - "const": "deny-save-store-record" + "const": "deny-save-store-record", + "markdownDescription": "Denies the save_store_record command without any pre-configured scope." }, { - "description": "This permission set configures what kind of\noperations are available from the stronghold plugin.\n\n#### Granted Permissions\n\nAll non-destructive operations are enabled by default.\n\n", + "description": "This permission set configures what kind of\noperations are available from the stronghold plugin.\n\n#### Granted Permissions\n\nAll non-destructive operations are enabled by default.\n\n\n#### This default permission set includes:\n\n- `allow-create-client`\n- `allow-get-store-record`\n- `allow-initialize`\n- `allow-execute-procedure`\n- `allow-load-client`\n- `allow-save-secret`\n- `allow-save-store-record`\n- `allow-save`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This permission set configures what kind of\noperations are available from the stronghold plugin.\n\n#### Granted Permissions\n\nAll non-destructive operations are enabled by default.\n\n\n#### This default permission set includes:\n\n- `allow-create-client`\n- `allow-get-store-record`\n- `allow-initialize`\n- `allow-execute-procedure`\n- `allow-load-client`\n- `allow-save-secret`\n- `allow-save-store-record`\n- `allow-save`" } ] } diff --git a/plugins/updater/permissions/autogenerated/reference.md b/plugins/updater/permissions/autogenerated/reference.md index 06241af8..74588fef 100644 --- a/plugins/updater/permissions/autogenerated/reference.md +++ b/plugins/updater/permissions/autogenerated/reference.md @@ -10,6 +10,8 @@ is enabled. +#### This default permission set includes the following: + - `allow-check` - `allow-download` - `allow-install` diff --git a/plugins/updater/permissions/schemas/schema.json b/plugins/updater/permissions/schemas/schema.json index 8264f3e1..7f295916 100644 --- a/plugins/updater/permissions/schemas/schema.json +++ b/plugins/updater/permissions/schemas/schema.json @@ -297,47 +297,56 @@ { "description": "Enables the check command without any pre-configured scope.", "type": "string", - "const": "allow-check" + "const": "allow-check", + "markdownDescription": "Enables the check command without any pre-configured scope." }, { "description": "Denies the check command without any pre-configured scope.", "type": "string", - "const": "deny-check" + "const": "deny-check", + "markdownDescription": "Denies the check command without any pre-configured scope." }, { "description": "Enables the download command without any pre-configured scope.", "type": "string", - "const": "allow-download" + "const": "allow-download", + "markdownDescription": "Enables the download command without any pre-configured scope." }, { "description": "Denies the download command without any pre-configured scope.", "type": "string", - "const": "deny-download" + "const": "deny-download", + "markdownDescription": "Denies the download command without any pre-configured scope." }, { "description": "Enables the download_and_install command without any pre-configured scope.", "type": "string", - "const": "allow-download-and-install" + "const": "allow-download-and-install", + "markdownDescription": "Enables the download_and_install command without any pre-configured scope." }, { "description": "Denies the download_and_install command without any pre-configured scope.", "type": "string", - "const": "deny-download-and-install" + "const": "deny-download-and-install", + "markdownDescription": "Denies the download_and_install command without any pre-configured scope." }, { "description": "Enables the install command without any pre-configured scope.", "type": "string", - "const": "allow-install" + "const": "allow-install", + "markdownDescription": "Enables the install command without any pre-configured scope." }, { "description": "Denies the install command without any pre-configured scope.", "type": "string", - "const": "deny-install" + "const": "deny-install", + "markdownDescription": "Denies the install command without any pre-configured scope." }, { - "description": "This permission set configures which kind of\nupdater functions are exposed to the frontend.\n\n#### Granted Permissions\n\nThe full workflow from checking for updates to installing them\nis enabled.\n\n", + "description": "This permission set configures which kind of\nupdater functions are exposed to the frontend.\n\n#### Granted Permissions\n\nThe full workflow from checking for updates to installing them\nis enabled.\n\n\n#### This default permission set includes:\n\n- `allow-check`\n- `allow-download`\n- `allow-install`\n- `allow-download-and-install`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This permission set configures which kind of\nupdater functions are exposed to the frontend.\n\n#### Granted Permissions\n\nThe full workflow from checking for updates to installing them\nis enabled.\n\n\n#### This default permission set includes:\n\n- `allow-check`\n- `allow-download`\n- `allow-install`\n- `allow-download-and-install`" } ] } diff --git a/plugins/upload/permissions/autogenerated/reference.md b/plugins/upload/permissions/autogenerated/reference.md index 19dbe32f..698399b8 100644 --- a/plugins/upload/permissions/autogenerated/reference.md +++ b/plugins/upload/permissions/autogenerated/reference.md @@ -9,6 +9,8 @@ All operations are enabled by default. +#### This default permission set includes the following: + - `allow-upload` - `allow-download` diff --git a/plugins/upload/permissions/schemas/schema.json b/plugins/upload/permissions/schemas/schema.json index 1d8d9c4a..8b524649 100644 --- a/plugins/upload/permissions/schemas/schema.json +++ b/plugins/upload/permissions/schemas/schema.json @@ -297,27 +297,32 @@ { "description": "Enables the download command without any pre-configured scope.", "type": "string", - "const": "allow-download" + "const": "allow-download", + "markdownDescription": "Enables the download command without any pre-configured scope." }, { "description": "Denies the download command without any pre-configured scope.", "type": "string", - "const": "deny-download" + "const": "deny-download", + "markdownDescription": "Denies the download command without any pre-configured scope." }, { "description": "Enables the upload command without any pre-configured scope.", "type": "string", - "const": "allow-upload" + "const": "allow-upload", + "markdownDescription": "Enables the upload command without any pre-configured scope." }, { "description": "Denies the upload command without any pre-configured scope.", "type": "string", - "const": "deny-upload" + "const": "deny-upload", + "markdownDescription": "Denies the upload command without any pre-configured scope." }, { - "description": "This permission set configures what kind of\noperations are available from the upload plugin.\n\n#### Granted Permissions\n\nAll operations are enabled by default.\n\n", + "description": "This permission set configures what kind of\noperations are available from the upload plugin.\n\n#### Granted Permissions\n\nAll operations are enabled by default.\n\n\n#### This default permission set includes:\n\n- `allow-upload`\n- `allow-download`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This permission set configures what kind of\noperations are available from the upload plugin.\n\n#### Granted Permissions\n\nAll operations are enabled by default.\n\n\n#### This default permission set includes:\n\n- `allow-upload`\n- `allow-download`" } ] } diff --git a/plugins/websocket/examples/tauri-app/package.json b/plugins/websocket/examples/tauri-app/package.json index 00e38cd2..d43bc8b7 100644 --- a/plugins/websocket/examples/tauri-app/package.json +++ b/plugins/websocket/examples/tauri-app/package.json @@ -9,7 +9,7 @@ "preview": "vite preview" }, "devDependencies": { - "@tauri-apps/cli": "2.4.0", + "@tauri-apps/cli": "2.4.1", "typescript": "^5.7.3", "vite": "^6.2.0" }, diff --git a/plugins/websocket/permissions/autogenerated/reference.md b/plugins/websocket/permissions/autogenerated/reference.md index 640c05a8..e86cedcb 100644 --- a/plugins/websocket/permissions/autogenerated/reference.md +++ b/plugins/websocket/permissions/autogenerated/reference.md @@ -2,6 +2,8 @@ Allows connecting and sending data to a WebSocket server +#### This default permission set includes the following: + - `allow-connect` - `allow-send` diff --git a/plugins/websocket/permissions/schemas/schema.json b/plugins/websocket/permissions/schemas/schema.json index 989d0159..e0c9a4af 100644 --- a/plugins/websocket/permissions/schemas/schema.json +++ b/plugins/websocket/permissions/schemas/schema.json @@ -297,27 +297,32 @@ { "description": "Enables the connect command without any pre-configured scope.", "type": "string", - "const": "allow-connect" + "const": "allow-connect", + "markdownDescription": "Enables the connect command without any pre-configured scope." }, { "description": "Denies the connect command without any pre-configured scope.", "type": "string", - "const": "deny-connect" + "const": "deny-connect", + "markdownDescription": "Denies the connect command without any pre-configured scope." }, { "description": "Enables the send command without any pre-configured scope.", "type": "string", - "const": "allow-send" + "const": "allow-send", + "markdownDescription": "Enables the send command without any pre-configured scope." }, { "description": "Denies the send command without any pre-configured scope.", "type": "string", - "const": "deny-send" + "const": "deny-send", + "markdownDescription": "Denies the send command without any pre-configured scope." }, { - "description": "Allows connecting and sending data to a WebSocket server", + "description": "Allows connecting and sending data to a WebSocket server\n#### This default permission set includes:\n\n- `allow-connect`\n- `allow-send`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "Allows connecting and sending data to a WebSocket server\n#### This default permission set includes:\n\n- `allow-connect`\n- `allow-send`" } ] } diff --git a/plugins/window-state/permissions/autogenerated/reference.md b/plugins/window-state/permissions/autogenerated/reference.md index 53d51ca6..64cd7d88 100644 --- a/plugins/window-state/permissions/autogenerated/reference.md +++ b/plugins/window-state/permissions/autogenerated/reference.md @@ -9,6 +9,8 @@ All operations are enabled by default. +#### This default permission set includes the following: + - `allow-filename` - `allow-restore-state` - `allow-save-window-state` diff --git a/plugins/window-state/permissions/schemas/schema.json b/plugins/window-state/permissions/schemas/schema.json index b94c2573..d9cbe0f0 100644 --- a/plugins/window-state/permissions/schemas/schema.json +++ b/plugins/window-state/permissions/schemas/schema.json @@ -297,37 +297,44 @@ { "description": "Enables the filename command without any pre-configured scope.", "type": "string", - "const": "allow-filename" + "const": "allow-filename", + "markdownDescription": "Enables the filename command without any pre-configured scope." }, { "description": "Denies the filename command without any pre-configured scope.", "type": "string", - "const": "deny-filename" + "const": "deny-filename", + "markdownDescription": "Denies the filename command without any pre-configured scope." }, { "description": "Enables the restore_state command without any pre-configured scope.", "type": "string", - "const": "allow-restore-state" + "const": "allow-restore-state", + "markdownDescription": "Enables the restore_state command without any pre-configured scope." }, { "description": "Denies the restore_state command without any pre-configured scope.", "type": "string", - "const": "deny-restore-state" + "const": "deny-restore-state", + "markdownDescription": "Denies the restore_state command without any pre-configured scope." }, { "description": "Enables the save_window_state command without any pre-configured scope.", "type": "string", - "const": "allow-save-window-state" + "const": "allow-save-window-state", + "markdownDescription": "Enables the save_window_state command without any pre-configured scope." }, { "description": "Denies the save_window_state command without any pre-configured scope.", "type": "string", - "const": "deny-save-window-state" + "const": "deny-save-window-state", + "markdownDescription": "Denies the save_window_state command without any pre-configured scope." }, { - "description": "This permission set configures what kind of\noperations are available from the window state plugin.\n\n#### Granted Permissions\n\nAll operations are enabled by default.\n\n", + "description": "This permission set configures what kind of\noperations are available from the window state plugin.\n\n#### Granted Permissions\n\nAll operations are enabled by default.\n\n\n#### This default permission set includes:\n\n- `allow-filename`\n- `allow-restore-state`\n- `allow-save-window-state`", "type": "string", - "const": "default" + "const": "default", + "markdownDescription": "This permission set configures what kind of\noperations are available from the window state plugin.\n\n#### Granted Permissions\n\nAll operations are enabled by default.\n\n\n#### This default permission set includes:\n\n- `allow-filename`\n- `allow-restore-state`\n- `allow-save-window-state`" } ] } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f59c9726..81802c52 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -54,8 +54,8 @@ importers: examples/api: dependencies: '@tauri-apps/api': - specifier: 2.4.0 - version: 2.4.0 + specifier: 2.4.1 + version: 2.4.1 '@tauri-apps/plugin-barcode-scanner': specifier: ^2.2.0 version: link:../../plugins/barcode-scanner @@ -124,8 +124,8 @@ importers: specifier: ^5.0.3 version: 5.0.3(svelte@5.20.4)(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)) '@tauri-apps/cli': - specifier: 2.4.0 - version: 2.4.0 + specifier: 2.4.1 + version: 2.4.1 '@unocss/extractor-svelte': specifier: ^66.0.0 version: 66.0.0 @@ -143,50 +143,50 @@ importers: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/barcode-scanner: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/biometric: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/cli: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/clipboard-manager: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/deep-link: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/deep-link/examples/app: dependencies: '@tauri-apps/api': - specifier: 2.4.0 - version: 2.4.0 + specifier: 2.4.1 + version: 2.4.1 '@tauri-apps/plugin-deep-link': specifier: 2.2.0 version: link:../.. devDependencies: '@tauri-apps/cli': - specifier: 2.4.0 - version: 2.4.0 + specifier: 2.4.1 + version: 2.4.1 typescript: specifier: ^5.7.3 version: 5.8.2 @@ -198,109 +198,109 @@ importers: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/fs: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/geolocation: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/global-shortcut: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/haptics: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/http: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/log: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/nfc: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/notification: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/opener: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/os: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/positioner: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/process: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/shell: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/single-instance/examples/vanilla: devDependencies: '@tauri-apps/cli': - specifier: 2.4.0 - version: 2.4.0 + specifier: 2.4.1 + version: 2.4.1 plugins/sql: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/store: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/store/examples/AppSettingsManager: devDependencies: '@tauri-apps/cli': - specifier: 2.4.0 - version: 2.4.0 + specifier: 2.4.1 + version: 2.4.1 typescript: specifier: ^5.7.3 version: 5.8.2 @@ -312,25 +312,25 @@ importers: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/updater: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/upload: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/websocket: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 plugins/websocket/examples/tauri-app: dependencies: @@ -339,8 +339,8 @@ importers: version: link:../.. devDependencies: '@tauri-apps/cli': - specifier: 2.4.0 - version: 2.4.0 + specifier: 2.4.1 + version: 2.4.1 typescript: specifier: ^5.7.3 version: 5.8.2 @@ -352,7 +352,7 @@ importers: dependencies: '@tauri-apps/api': specifier: ^2.0.0 - version: 2.4.0 + version: 2.4.1 packages: @@ -854,77 +854,77 @@ packages: svelte: ^5.0.0 vite: ^6.0.0 - '@tauri-apps/api@2.4.0': - resolution: {integrity: sha512-F1zXTsmwcCp+ocg6fbzD/YL0OHeSG1eynCag1UNlX2tD5+dlXy7eRbTu9cAcscPjcR7Nix7by2wiv/+VfWUieg==} + '@tauri-apps/api@2.4.1': + resolution: {integrity: sha512-5sYwZCSJb6PBGbBL4kt7CnE5HHbBqwH+ovmOW6ZVju3nX4E3JX6tt2kRklFEH7xMOIwR0btRkZktuLhKvyEQYg==} - '@tauri-apps/cli-darwin-arm64@2.4.0': - resolution: {integrity: sha512-MVzYrahJBgDyzUJ2gNEU8H+0oCVEucN115+CVorFnidHcJ6DtDRMCaKLkpjOZNfJyag1WQ25fu7imvZSe0mz/g==} + '@tauri-apps/cli-darwin-arm64@2.4.1': + resolution: {integrity: sha512-QME7s8XQwy3LWClTVlIlwXVSLKkeJ/z88pr917Mtn9spYOjnBfsgHAgGdmpWD3NfJxjg7CtLbhH49DxoFL+hLg==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] - '@tauri-apps/cli-darwin-x64@2.4.0': - resolution: {integrity: sha512-/4IdbWv6IWSuBn0WVe5JkiSIP1gZhXCZRcumSsYq3ZmOlq4BqXeXT36Oig5mlDnS/2/UpNS94kd8gOA1DNdIeQ==} + '@tauri-apps/cli-darwin-x64@2.4.1': + resolution: {integrity: sha512-/r89IcW6Ya1sEsFUEH7wLNruDTj7WmDWKGpPy7gATFtQr5JEY4heernqE82isjTUimnHZD8SCr0jA3NceI4ybw==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] - '@tauri-apps/cli-linux-arm-gnueabihf@2.4.0': - resolution: {integrity: sha512-rOjlk3Vd6R847LXds4pOAFKUL5NVdSWlaiQvr4H9WDUwIWWoxnj7SQfpryTtElDb2wV7a0BNaOCXCpyFEAXjkw==} + '@tauri-apps/cli-linux-arm-gnueabihf@2.4.1': + resolution: {integrity: sha512-9tDijkRB+CchAGjXxYdY9l/XzFpLp1yihUtGXJz9eh+3qIoRI043n3e+6xmU8ZURr7XPnu+R4sCmXs6HD+NCEQ==} engines: {node: '>= 10'} cpu: [arm] os: [linux] - '@tauri-apps/cli-linux-arm64-gnu@2.4.0': - resolution: {integrity: sha512-X/uCwao6R/weWT2y4f3JKJMeUsujo9H4nBMAv9RZhRsz93n9Amw9ETavAOP11pyhl57YkasvKTCRQN6FwsaoXg==} + '@tauri-apps/cli-linux-arm64-gnu@2.4.1': + resolution: {integrity: sha512-pnFGDEXBAzS4iDYAVxTRhAzNu3K2XPGflYyBc0czfHDBXopqRgMyj5Q9Wj7HAwv6cM8BqzXINxnb2ZJFGmbSgA==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@tauri-apps/cli-linux-arm64-musl@2.4.0': - resolution: {integrity: sha512-GhvQtrTjadW3eLSmfrSfybSqgJMZzUXC+0WqDzFovLug3a1a1go0m9QK9YGvYLkyEpTY5zRxLtwv+tbZXN4tZw==} + '@tauri-apps/cli-linux-arm64-musl@2.4.1': + resolution: {integrity: sha512-Hp0zXgeZNKmT+eoJSCxSBUm2QndNuRxR55tmIeNm3vbyUMJN/49uW7nurZ5fBPsacN4Pzwlx1dIMK+Gnr9A69w==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@tauri-apps/cli-linux-riscv64-gnu@2.4.0': - resolution: {integrity: sha512-NgeNihQ9uHS/ibMWLge5VA/BgsS/g8VPSVtCp8DSPyub3bBuCy79A8V+bzNKlMOiDVrqK4vQ//FS9kSxoJOtXw==} + '@tauri-apps/cli-linux-riscv64-gnu@2.4.1': + resolution: {integrity: sha512-3T3bo2E4fdYRvzcXheWUeQOVB+LunEEi92iPRgOyuSVexVE4cmHYl+MPJF+EUV28Et0hIVTsHibmDO0/04lAFg==} engines: {node: '>= 10'} cpu: [riscv64] os: [linux] - '@tauri-apps/cli-linux-x64-gnu@2.4.0': - resolution: {integrity: sha512-ebRmV2HLIVms1KlNNueQCp3OrXBv6cimU3mYEh5NbZ8dH88f2sF46dFCyPq8Qr/Zti4qPEaAArVG7RYFjfECPw==} + '@tauri-apps/cli-linux-x64-gnu@2.4.1': + resolution: {integrity: sha512-kLN0FdNONO+2i+OpU9+mm6oTGufRC00e197TtwjpC0N6K2K8130w7Q3FeODIM2CMyg0ov3tH+QWqKW7GNhHFzg==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@tauri-apps/cli-linux-x64-musl@2.4.0': - resolution: {integrity: sha512-FOp2cBFyq5LnUr3he95Z99PQm3nCSJv2GZNeH7UqmUpeHwdcYuhBERU7C+8VDJJPR98Q5fkcoV00Pc4nw0v5KQ==} + '@tauri-apps/cli-linux-x64-musl@2.4.1': + resolution: {integrity: sha512-a8exvA5Ub9eg66a6hsMQKJIkf63QAf9OdiuFKOsEnKZkNN2x0NLgfvEcqdw88VY0UMs9dBoZ1AGbWMeYnLrLwQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@tauri-apps/cli-win32-arm64-msvc@2.4.0': - resolution: {integrity: sha512-SVf1wDagYsaFM+mpUYKmjNveKodcUSGPEM27WmMW4Enh6aXGzTJi4IYOE3GEFOJF1BpRNscslwE1Rd064kfpcg==} + '@tauri-apps/cli-win32-arm64-msvc@2.4.1': + resolution: {integrity: sha512-4JFrslsMCJQG1c573T9uqQSAbF3j/tMKkMWzsIssv8jvPiP++OG61A2/F+y9te9/Q/O95cKhDK63kaiO5xQaeg==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] - '@tauri-apps/cli-win32-ia32-msvc@2.4.0': - resolution: {integrity: sha512-j+fOFVeSSejk9hrUePY7bJuaYr+80xr+ftjXzxCj0CS0d2oSbq+lT8/zS514WemJk9e9yxUus+2ke/Ng17wkkQ==} + '@tauri-apps/cli-win32-ia32-msvc@2.4.1': + resolution: {integrity: sha512-9eXfFORehYSCRwxg2KodfmX/mhr50CI7wyBYGbPLePCjr5z0jK/9IyW6r0tC+ZVjwpX48dkk7hKiUgI25jHjzA==} engines: {node: '>= 10'} cpu: [ia32] os: [win32] - '@tauri-apps/cli-win32-x64-msvc@2.4.0': - resolution: {integrity: sha512-nv84b3a8eI5Y7ksTLBKjjvtr9NOlAGGGo7OJbjKT+xZLdiPOZ0nJ2cT+4IdfnNAZ33pKJugAfuj1fBvQKeTy0w==} + '@tauri-apps/cli-win32-x64-msvc@2.4.1': + resolution: {integrity: sha512-60a4Ov7Jrwqz2hzDltlS7301dhSAmM9dxo+IRBD3xz7yobKrgaHXYpWvnRomYItHcDd51VaKc9292H8/eE/gsw==} engines: {node: '>= 10'} cpu: [x64] os: [win32] - '@tauri-apps/cli@2.4.0': - resolution: {integrity: sha512-Esg7s20tuSULd2YF3lmtMa1vF7yr5eh/TlBHXjEyrC+XSD9aBxHVoXb6oz7oKybDY9Jf9OiBa0bf2PbybcmOLA==} + '@tauri-apps/cli@2.4.1': + resolution: {integrity: sha512-9Ta81jx9+57FhtU/mPIckDcOBtPTUdKM75t4+aA0X84b8Sclb0jy1xA8NplmcRzp2fsfIHNngU2NiRxsW5+yOQ==} engines: {node: '>= 10'} hasBin: true @@ -2706,54 +2706,54 @@ snapshots: transitivePeerDependencies: - supports-color - '@tauri-apps/api@2.4.0': {} + '@tauri-apps/api@2.4.1': {} - '@tauri-apps/cli-darwin-arm64@2.4.0': + '@tauri-apps/cli-darwin-arm64@2.4.1': optional: true - '@tauri-apps/cli-darwin-x64@2.4.0': + '@tauri-apps/cli-darwin-x64@2.4.1': optional: true - '@tauri-apps/cli-linux-arm-gnueabihf@2.4.0': + '@tauri-apps/cli-linux-arm-gnueabihf@2.4.1': optional: true - '@tauri-apps/cli-linux-arm64-gnu@2.4.0': + '@tauri-apps/cli-linux-arm64-gnu@2.4.1': optional: true - '@tauri-apps/cli-linux-arm64-musl@2.4.0': + '@tauri-apps/cli-linux-arm64-musl@2.4.1': optional: true - '@tauri-apps/cli-linux-riscv64-gnu@2.4.0': + '@tauri-apps/cli-linux-riscv64-gnu@2.4.1': optional: true - '@tauri-apps/cli-linux-x64-gnu@2.4.0': + '@tauri-apps/cli-linux-x64-gnu@2.4.1': optional: true - '@tauri-apps/cli-linux-x64-musl@2.4.0': + '@tauri-apps/cli-linux-x64-musl@2.4.1': optional: true - '@tauri-apps/cli-win32-arm64-msvc@2.4.0': + '@tauri-apps/cli-win32-arm64-msvc@2.4.1': optional: true - '@tauri-apps/cli-win32-ia32-msvc@2.4.0': + '@tauri-apps/cli-win32-ia32-msvc@2.4.1': optional: true - '@tauri-apps/cli-win32-x64-msvc@2.4.0': + '@tauri-apps/cli-win32-x64-msvc@2.4.1': optional: true - '@tauri-apps/cli@2.4.0': + '@tauri-apps/cli@2.4.1': optionalDependencies: - '@tauri-apps/cli-darwin-arm64': 2.4.0 - '@tauri-apps/cli-darwin-x64': 2.4.0 - '@tauri-apps/cli-linux-arm-gnueabihf': 2.4.0 - '@tauri-apps/cli-linux-arm64-gnu': 2.4.0 - '@tauri-apps/cli-linux-arm64-musl': 2.4.0 - '@tauri-apps/cli-linux-riscv64-gnu': 2.4.0 - '@tauri-apps/cli-linux-x64-gnu': 2.4.0 - '@tauri-apps/cli-linux-x64-musl': 2.4.0 - '@tauri-apps/cli-win32-arm64-msvc': 2.4.0 - '@tauri-apps/cli-win32-ia32-msvc': 2.4.0 - '@tauri-apps/cli-win32-x64-msvc': 2.4.0 + '@tauri-apps/cli-darwin-arm64': 2.4.1 + '@tauri-apps/cli-darwin-x64': 2.4.1 + '@tauri-apps/cli-linux-arm-gnueabihf': 2.4.1 + '@tauri-apps/cli-linux-arm64-gnu': 2.4.1 + '@tauri-apps/cli-linux-arm64-musl': 2.4.1 + '@tauri-apps/cli-linux-riscv64-gnu': 2.4.1 + '@tauri-apps/cli-linux-x64-gnu': 2.4.1 + '@tauri-apps/cli-linux-x64-musl': 2.4.1 + '@tauri-apps/cli-win32-arm64-msvc': 2.4.1 + '@tauri-apps/cli-win32-ia32-msvc': 2.4.1 + '@tauri-apps/cli-win32-x64-msvc': 2.4.1 '@types/estree@1.0.7': {} From 9cf0390a52497e273db1a1b613a0e26827aa327c Mon Sep 17 00:00:00 2001 From: Tillmann <28728469+tweidinger@users.noreply.github.com> Date: Wed, 2 Apr 2025 12:24:25 +0900 Subject: [PATCH 73/80] Merge commit from fork * fix(shell): properly validate open scope * change empty regex to an impossible match --------- Co-authored-by: Lucas Nogueira Co-authored-by: Chip Reed --- .changes/fix-shell-open-scope.md | 7 +++++++ examples/api/src-tauri/capabilities/base.json | 2 +- package.json | 3 ++- .../permissions/autogenerated/reference.md | 2 +- plugins/shell/permissions/default.toml | 2 +- plugins/shell/permissions/schemas/schema.json | 2 +- plugins/shell/src/commands.rs | 2 +- plugins/shell/src/config.rs | 5 ++++- plugins/shell/src/lib.rs | 5 +++-- plugins/shell/src/open.rs | 18 ++++++++++++++++-- plugins/shell/src/scope.rs | 7 +++++++ 11 files changed, 44 insertions(+), 11 deletions(-) create mode 100644 .changes/fix-shell-open-scope.md diff --git a/.changes/fix-shell-open-scope.md b/.changes/fix-shell-open-scope.md new file mode 100644 index 00000000..1b0a1bb8 --- /dev/null +++ b/.changes/fix-shell-open-scope.md @@ -0,0 +1,7 @@ +--- +"shell": patch:bug +"shell-js": patch:bug +--- + +Apply the default open validation regex `^((mailto:\w+)|(tel:\w+)|(https?://\w+)).+` when the open configuration is not set, preventing unchecked input from being used in this scenario (previously the plugin would skip validation when it should disable all calls). This keeps backwards compatibility while still fixing this vulnerability. +The scope is no longer validated for Rust calls via `ShellExt::shell()` so if you need to block JavaScript from calling the API you can simply set `tauri.conf.json > plugins > shell > open` to `false`. diff --git a/examples/api/src-tauri/capabilities/base.json b/examples/api/src-tauri/capabilities/base.json index 92532e7d..b8f805a3 100644 --- a/examples/api/src-tauri/capabilities/base.json +++ b/examples/api/src-tauri/capabilities/base.json @@ -53,7 +53,7 @@ } ] }, - "shell:allow-open", + "shell:default", "shell:allow-kill", "shell:allow-stdin-write", "process:allow-exit", diff --git a/package.json b/package.json index fd6e8775..b8b8cf16 100644 --- a/package.json +++ b/package.json @@ -35,5 +35,6 @@ }, "engines": { "pnpm": "^10.0.0" - } + }, + "packageManager": "pnpm@10.6.3+sha512.bb45e34d50a9a76e858a95837301bfb6bd6d35aea2c5d52094fa497a467c43f5c440103ce2511e9e0a2f89c3d6071baac3358fc68ac6fb75e2ceb3d2736065e6" } diff --git a/plugins/shell/permissions/autogenerated/reference.md b/plugins/shell/permissions/autogenerated/reference.md index 602814f2..d2b86f8a 100644 --- a/plugins/shell/permissions/autogenerated/reference.md +++ b/plugins/shell/permissions/autogenerated/reference.md @@ -5,7 +5,7 @@ shell functionality is exposed by default. #### Granted Permissions -It allows to use the `open` functionality without any specific +It allows to use the `open` functionality with a reasonable scope pre-configured. It will allow opening `http(s)://`, `tel:` and `mailto:` links. diff --git a/plugins/shell/permissions/default.toml b/plugins/shell/permissions/default.toml index 4569b052..dba2ea20 100644 --- a/plugins/shell/permissions/default.toml +++ b/plugins/shell/permissions/default.toml @@ -7,7 +7,7 @@ shell functionality is exposed by default. #### Granted Permissions -It allows to use the `open` functionality without any specific +It allows to use the `open` functionality with a reasonable scope pre-configured. It will allow opening `http(s)://`, `tel:` and `mailto:` links. """ diff --git a/plugins/shell/permissions/schemas/schema.json b/plugins/shell/permissions/schemas/schema.json index b729595f..f8127c57 100644 --- a/plugins/shell/permissions/schemas/schema.json +++ b/plugins/shell/permissions/schemas/schema.json @@ -355,7 +355,7 @@ "markdownDescription": "Denies the stdin_write command without any pre-configured scope." }, { - "description": "This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality without any specific\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n\n#### This default permission set includes:\n\n- `allow-open`", + "description": "This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality with a reasonable\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n", "type": "string", "const": "default", "markdownDescription": "This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality without any specific\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n\n#### This default permission set includes:\n\n- `allow-open`" diff --git a/plugins/shell/src/commands.rs b/plugins/shell/src/commands.rs index 5bee6b92..5275e9b9 100644 --- a/plugins/shell/src/commands.rs +++ b/plugins/shell/src/commands.rs @@ -311,5 +311,5 @@ pub async fn open( path: String, with: Option, ) -> crate::Result<()> { - shell.open(path, with) + crate::open::open(Some(&shell.open_scope), path, with) } diff --git a/plugins/shell/src/config.rs b/plugins/shell/src/config.rs index cad267a2..69a92ee1 100644 --- a/plugins/shell/src/config.rs +++ b/plugins/shell/src/config.rs @@ -18,6 +18,9 @@ pub struct Config { #[serde(untagged, deny_unknown_fields)] #[non_exhaustive] pub enum ShellAllowlistOpen { + /// Shell open API allowlist is not defined by the user. + /// In this case we add the default validation regex (same as [`Self::Flag(true)`]). + Unset, /// If the shell open API should be enabled. /// /// If enabled, the default validation regex (`^((mailto:\w+)|(tel:\w+)|(https?://\w+)).+`) is used. @@ -35,6 +38,6 @@ pub enum ShellAllowlistOpen { impl Default for ShellAllowlistOpen { fn default() -> Self { - Self::Flag(false) + Self::Unset } } diff --git a/plugins/shell/src/lib.rs b/plugins/shell/src/lib.rs index 3dffc50b..c9503731 100644 --- a/plugins/shell/src/lib.rs +++ b/plugins/shell/src/lib.rs @@ -75,7 +75,7 @@ impl Shell { #[deprecated(since = "2.1.0", note = "Use tauri-plugin-opener instead.")] #[allow(deprecated)] pub fn open(&self, path: impl Into, with: Option) -> Result<()> { - open::open(&self.open_scope, path.into(), with) + open::open(None, path.into(), with) } /// Open a (url) path with a default or specific browser opening program. @@ -147,7 +147,8 @@ pub fn init() -> TauriPlugin> { fn open_scope(open: &config::ShellAllowlistOpen) -> scope::OpenScope { let shell_scope_open = match open { config::ShellAllowlistOpen::Flag(false) => None, - config::ShellAllowlistOpen::Flag(true) => { + // we want to add a basic regex validation even if the config is not set + config::ShellAllowlistOpen::Unset | config::ShellAllowlistOpen::Flag(true) => { Some(Regex::new(r"^((mailto:\w+)|(tel:\w+)|(https?://\w+)).+").unwrap()) } config::ShellAllowlistOpen::Validate(validator) => { diff --git a/plugins/shell/src/open.rs b/plugins/shell/src/open.rs index fe224704..6958a832 100644 --- a/plugins/shell/src/open.rs +++ b/plugins/shell/src/open.rs @@ -119,6 +119,20 @@ impl Program { /// }); /// ``` #[deprecated(since = "2.1.0", note = "Use tauri-plugin-opener instead.")] -pub fn open>(scope: &OpenScope, path: P, with: Option) -> crate::Result<()> { - scope.open(path.as_ref(), with).map_err(Into::into) +pub fn open>( + scope: Option<&OpenScope>, + path: P, + with: Option, +) -> crate::Result<()> { + // validate scope if we have any (JS calls) + if let Some(scope) = scope { + scope.open(path.as_ref(), with).map_err(Into::into) + } else { + // when running directly from Rust code we don't need to validate the path + match with.map(Program::name) { + Some(program) => ::open::with_detached(path.as_ref(), program), + None => ::open::that_detached(path.as_ref()), + } + .map_err(Into::into) + } } diff --git a/plugins/shell/src/scope.rs b/plugins/shell/src/scope.rs index d46bfa20..3a450afa 100644 --- a/plugins/shell/src/scope.rs +++ b/plugins/shell/src/scope.rs @@ -142,6 +142,7 @@ impl ScopeAllowedArg { /// Scope for the open command pub struct OpenScope { /// The validation regex that `shell > open` paths must match against. + /// When set to `None`, no values are accepted. pub open: Option, } @@ -212,6 +213,12 @@ impl OpenScope { validation: regex.as_str().into(), }); } + } else { + log::warn!("open() command called but the plugin configuration denies calls from JavaScript; set `tauri.conf.json > plugins > shell > open` to true or a validation regex string"); + return Err(Error::Validation { + index: 0, + validation: "tauri^".to_string(), // purposefully impossible regex + }); } // The prevention of argument escaping is handled by the usage of std::process::Command::arg by From beab018b21b2aed05572a5f208194a7e7e9dd3a6 Mon Sep 17 00:00:00 2001 From: Lucas Nogueira Date: Wed, 2 Apr 2025 00:27:37 -0300 Subject: [PATCH 74/80] fix: remove packageManager field from package.json --- package.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/package.json b/package.json index b8b8cf16..fd6e8775 100644 --- a/package.json +++ b/package.json @@ -35,6 +35,5 @@ }, "engines": { "pnpm": "^10.0.0" - }, - "packageManager": "pnpm@10.6.3+sha512.bb45e34d50a9a76e858a95837301bfb6bd6d35aea2c5d52094fa497a467c43f5c440103ce2511e9e0a2f89c3d6071baac3358fc68ac6fb75e2ceb3d2736065e6" + } } From 8b39aefb1b036d251350ae144b7975b170d8735b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 2 Apr 2025 00:31:52 -0300 Subject: [PATCH 75/80] publish new versions (#2545) Co-authored-by: lucasfernog <20051258+lucasfernog@users.noreply.github.com> --- .changes/autostart-builder.md | 6 --- .changes/change-pr-2561.md | 6 --- .../deep-link-is-registered-local-machine.md | 6 --- .../deep-link-unregister-local-machine.md | 6 --- .changes/fix-shell-open-scope.md | 7 ---- .changes/multi-monitor-window-state.md | 6 --- .changes/persist-cookies.md | 7 ---- .changes/readable-stream-support.md | 6 --- .changes/request-restart.md | 6 --- .changes/updater-date-format.md | 6 --- .../updater-download-inherit-check-timeout.md | 6 --- Cargo.lock | 24 ++++++------ examples/api/CHANGELOG.md | 11 ++++++ examples/api/package.json | 14 +++---- examples/api/src-tauri/CHANGELOG.md | 11 ++++++ examples/api/src-tauri/Cargo.toml | 14 +++---- plugins/autostart/CHANGELOG.md | 4 ++ plugins/autostart/Cargo.toml | 2 +- plugins/autostart/package.json | 2 +- plugins/deep-link/CHANGELOG.md | 7 ++++ plugins/deep-link/Cargo.toml | 2 +- plugins/deep-link/examples/app/CHANGELOG.md | 6 +++ plugins/deep-link/examples/app/package.json | 4 +- plugins/deep-link/package.json | 2 +- plugins/dialog/CHANGELOG.md | 6 +++ plugins/dialog/Cargo.toml | 4 +- plugins/dialog/package.json | 2 +- plugins/fs/CHANGELOG.md | 6 +++ plugins/fs/Cargo.toml | 2 +- plugins/fs/package.json | 2 +- plugins/http/CHANGELOG.md | 9 +++++ plugins/http/Cargo.toml | 4 +- plugins/http/package.json | 2 +- plugins/persisted-scope/CHANGELOG.md | 6 +++ plugins/persisted-scope/Cargo.toml | 4 +- plugins/process/CHANGELOG.md | 4 ++ plugins/process/Cargo.toml | 2 +- plugins/process/package.json | 2 +- plugins/shell/CHANGELOG.md | 7 ++++ plugins/shell/Cargo.toml | 2 +- plugins/shell/package.json | 2 +- plugins/single-instance/CHANGELOG.md | 6 +++ plugins/single-instance/Cargo.toml | 4 +- plugins/updater/CHANGELOG.md | 7 ++++ plugins/updater/Cargo.toml | 2 +- plugins/updater/package.json | 2 +- plugins/window-state/CHANGELOG.md | 4 ++ plugins/window-state/Cargo.toml | 2 +- plugins/window-state/package.json | 2 +- pnpm-lock.yaml | 38 ++++++++++--------- 50 files changed, 166 insertions(+), 138 deletions(-) delete mode 100644 .changes/autostart-builder.md delete mode 100644 .changes/change-pr-2561.md delete mode 100644 .changes/deep-link-is-registered-local-machine.md delete mode 100644 .changes/deep-link-unregister-local-machine.md delete mode 100644 .changes/fix-shell-open-scope.md delete mode 100644 .changes/multi-monitor-window-state.md delete mode 100644 .changes/persist-cookies.md delete mode 100644 .changes/readable-stream-support.md delete mode 100644 .changes/request-restart.md delete mode 100644 .changes/updater-date-format.md delete mode 100644 .changes/updater-download-inherit-check-timeout.md diff --git a/.changes/autostart-builder.md b/.changes/autostart-builder.md deleted file mode 100644 index 2ba57749..00000000 --- a/.changes/autostart-builder.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -autostart: minor -autostart-js: minor ---- - -Add a `Builder` for more flexible settings diff --git a/.changes/change-pr-2561.md b/.changes/change-pr-2561.md deleted file mode 100644 index 26d566b1..00000000 --- a/.changes/change-pr-2561.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -http: patch -http-js: patch ---- - -Add `zstd` cargo feature flag to enable `reqwest/zstd` flag. diff --git a/.changes/deep-link-is-registered-local-machine.md b/.changes/deep-link-is-registered-local-machine.md deleted file mode 100644 index 7243dd5e..00000000 --- a/.changes/deep-link-is-registered-local-machine.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'deep-link': 'patch:bug' -'deep-link-js': 'patch:bug' ---- - -Fix `is_registered` not being able to pickup deep link registered in `HKEY_LOCAL_MACHINE` on Windows diff --git a/.changes/deep-link-unregister-local-machine.md b/.changes/deep-link-unregister-local-machine.md deleted file mode 100644 index bc0b0860..00000000 --- a/.changes/deep-link-unregister-local-machine.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'deep-link': 'patch:bug' -'deep-link-js': 'patch:bug' ---- - -Fix `unregister` not being able to remove deep link registered in `HKEY_LOCAL_MACHINE` on Windows diff --git a/.changes/fix-shell-open-scope.md b/.changes/fix-shell-open-scope.md deleted file mode 100644 index 1b0a1bb8..00000000 --- a/.changes/fix-shell-open-scope.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"shell": patch:bug -"shell-js": patch:bug ---- - -Apply the default open validation regex `^((mailto:\w+)|(tel:\w+)|(https?://\w+)).+` when the open configuration is not set, preventing unchecked input from being used in this scenario (previously the plugin would skip validation when it should disable all calls). This keeps backwards compatibility while still fixing this vulnerability. -The scope is no longer validated for Rust calls via `ShellExt::shell()` so if you need to block JavaScript from calling the API you can simply set `tauri.conf.json > plugins > shell > open` to `false`. diff --git a/.changes/multi-monitor-window-state.md b/.changes/multi-monitor-window-state.md deleted file mode 100644 index f3807da9..00000000 --- a/.changes/multi-monitor-window-state.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -window-state: patch -window-state-js: patch ---- - -Fix window size gets bigger/smaller on secondary monitor with a different scaling than the primary one diff --git a/.changes/persist-cookies.md b/.changes/persist-cookies.md deleted file mode 100644 index 7160fb7b..00000000 --- a/.changes/persist-cookies.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"http": "patch" -"http-js": "patch" ---- - -Persist cookies to disk and load it on next app start. - diff --git a/.changes/readable-stream-support.md b/.changes/readable-stream-support.md deleted file mode 100644 index ae72e134..00000000 --- a/.changes/readable-stream-support.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"fs": "patch:bug" -"fs-js": "patch:bug" ---- - -Fix `writeFile` ReadableStream handling due to missing async iterator support on macOS platform diff --git a/.changes/request-restart.md b/.changes/request-restart.md deleted file mode 100644 index 4d88e6ed..00000000 --- a/.changes/request-restart.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -process: patch -process-js: patch ---- - -Migrate restart to use tauri's new `AppHandle::request_restart` method diff --git a/.changes/updater-date-format.md b/.changes/updater-date-format.md deleted file mode 100644 index c7da69e7..00000000 --- a/.changes/updater-date-format.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"updater": "minor:bug" -"updater-js": "minor:bug" ---- - -Fix JS API `Update.date` not formatted to RFC 3339 diff --git a/.changes/updater-download-inherit-check-timeout.md b/.changes/updater-download-inherit-check-timeout.md deleted file mode 100644 index ceca443d..00000000 --- a/.changes/updater-download-inherit-check-timeout.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"updater": "patch:bug" -"updater-js": "patch:bug" ---- - -Fix `timeout` passed to `check` gets re-used by `download` and `downloadAndinstall` diff --git a/Cargo.lock b/Cargo.lock index f6947223..16254d7d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -206,7 +206,7 @@ checksum = "4c95c10ba0b00a02636238b814946408b1322d5ac4760326e6fb8ec956d85775" [[package]] name = "api" -version = "2.0.23" +version = "2.0.24" dependencies = [ "log", "serde", @@ -6560,7 +6560,7 @@ dependencies = [ [[package]] name = "tauri-plugin-autostart" -version = "2.2.0" +version = "2.3.0" dependencies = [ "auto-launch", "serde", @@ -6623,7 +6623,7 @@ dependencies = [ [[package]] name = "tauri-plugin-deep-link" -version = "2.2.0" +version = "2.2.1" dependencies = [ "dunce", "rust-ini", @@ -6641,7 +6641,7 @@ dependencies = [ [[package]] name = "tauri-plugin-dialog" -version = "2.2.0" +version = "2.2.1" dependencies = [ "log", "raw-window-handle", @@ -6657,7 +6657,7 @@ dependencies = [ [[package]] name = "tauri-plugin-fs" -version = "2.2.0" +version = "2.2.1" dependencies = [ "anyhow", "dunce", @@ -6719,7 +6719,7 @@ dependencies = [ [[package]] name = "tauri-plugin-http" -version = "2.4.2" +version = "2.4.3" dependencies = [ "bytes", "cookie_store", @@ -6846,7 +6846,7 @@ dependencies = [ [[package]] name = "tauri-plugin-persisted-scope" -version = "2.2.0" +version = "2.2.1" dependencies = [ "aho-corasick", "bincode", @@ -6873,7 +6873,7 @@ dependencies = [ [[package]] name = "tauri-plugin-process" -version = "2.2.0" +version = "2.2.1" dependencies = [ "tauri", "tauri-plugin", @@ -6881,7 +6881,7 @@ dependencies = [ [[package]] name = "tauri-plugin-shell" -version = "2.2.0" +version = "2.2.1" dependencies = [ "encoding_rs", "log", @@ -6900,7 +6900,7 @@ dependencies = [ [[package]] name = "tauri-plugin-single-instance" -version = "2.2.2" +version = "2.2.3" dependencies = [ "semver", "serde", @@ -6967,7 +6967,7 @@ dependencies = [ [[package]] name = "tauri-plugin-updater" -version = "2.6.1" +version = "2.7.0" dependencies = [ "base64 0.22.1", "dirs 6.0.0", @@ -7032,7 +7032,7 @@ dependencies = [ [[package]] name = "tauri-plugin-window-state" -version = "2.2.1" +version = "2.2.2" dependencies = [ "bitflags 2.7.0", "log", diff --git a/examples/api/CHANGELOG.md b/examples/api/CHANGELOG.md index 3797e923..3da6506a 100644 --- a/examples/api/CHANGELOG.md +++ b/examples/api/CHANGELOG.md @@ -1,5 +1,16 @@ # Changelog +## \[2.0.20] + +### Dependencies + +- Upgraded to `http-js@2.4.3` +- Upgraded to `shell-js@2.2.1` +- Upgraded to `fs-js@2.2.1` +- Upgraded to `process-js@2.2.1` +- Upgraded to `updater-js@2.7.0` +- Upgraded to `dialog-js@2.2.1` + ## \[2.0.19] ### Dependencies diff --git a/examples/api/package.json b/examples/api/package.json index 1696c7fd..921cce0f 100644 --- a/examples/api/package.json +++ b/examples/api/package.json @@ -1,7 +1,7 @@ { "name": "api", "private": true, - "version": "2.0.19", + "version": "2.0.20", "type": "module", "scripts": { "dev": "vite --clearScreen false", @@ -15,20 +15,20 @@ "@tauri-apps/plugin-biometric": "^2.2.0", "@tauri-apps/plugin-cli": "^2.2.0", "@tauri-apps/plugin-clipboard-manager": "^2.2.2", - "@tauri-apps/plugin-dialog": "^2.2.0", - "@tauri-apps/plugin-fs": "^2.2.0", + "@tauri-apps/plugin-dialog": "^2.2.1", + "@tauri-apps/plugin-fs": "^2.2.1", "@tauri-apps/plugin-geolocation": "^2.2.0", "@tauri-apps/plugin-global-shortcut": "^2.2.0", "@tauri-apps/plugin-haptics": "^2.2.0", - "@tauri-apps/plugin-http": "^2.4.2", + "@tauri-apps/plugin-http": "^2.4.3", "@tauri-apps/plugin-nfc": "^2.2.0", "@tauri-apps/plugin-notification": "^2.2.2", "@tauri-apps/plugin-opener": "^2.2.6", "@tauri-apps/plugin-os": "^2.2.1", - "@tauri-apps/plugin-process": "^2.2.0", - "@tauri-apps/plugin-shell": "^2.2.0", + "@tauri-apps/plugin-process": "^2.2.1", + "@tauri-apps/plugin-shell": "^2.2.1", "@tauri-apps/plugin-store": "^2.2.0", - "@tauri-apps/plugin-updater": "^2.6.1", + "@tauri-apps/plugin-updater": "^2.7.0", "@zerodevx/svelte-json-view": "1.0.11" }, "devDependencies": { diff --git a/examples/api/src-tauri/CHANGELOG.md b/examples/api/src-tauri/CHANGELOG.md index 970732d4..2de4211f 100644 --- a/examples/api/src-tauri/CHANGELOG.md +++ b/examples/api/src-tauri/CHANGELOG.md @@ -1,5 +1,16 @@ # Changelog +## \[2.0.24] + +### Dependencies + +- Upgraded to `http@2.4.3` +- Upgraded to `shell@2.2.1` +- Upgraded to `fs@2.2.1` +- Upgraded to `process@2.2.1` +- Upgraded to `updater@2.7.0` +- Upgraded to `dialog@2.2.1` + ## \[2.0.23] ### Dependencies diff --git a/examples/api/src-tauri/Cargo.toml b/examples/api/src-tauri/Cargo.toml index acd0f87e..cbc84c85 100644 --- a/examples/api/src-tauri/Cargo.toml +++ b/examples/api/src-tauri/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "api" publish = false -version = "2.0.23" +version = "2.0.24" description = "An example Tauri Application showcasing the api" edition = "2021" rust-version = { workspace = true } @@ -21,22 +21,22 @@ tiny_http = "0.12" time = "0.3" log = { workspace = true } tauri-plugin-log = { path = "../../../plugins/log", version = "2.3.1" } -tauri-plugin-fs = { path = "../../../plugins/fs", version = "2.2.0", features = [ +tauri-plugin-fs = { path = "../../../plugins/fs", version = "2.2.1", features = [ "watch", ] } tauri-plugin-clipboard-manager = { path = "../../../plugins/clipboard-manager", version = "2.2.2" } -tauri-plugin-dialog = { path = "../../../plugins/dialog", version = "2.2.0" } +tauri-plugin-dialog = { path = "../../../plugins/dialog", version = "2.2.1" } tauri-plugin-http = { path = "../../../plugins/http", features = [ "multipart", "cookies", -], version = "2.4.2" } +], version = "2.4.3" } tauri-plugin-notification = { path = "../../../plugins/notification", version = "2.2.2", features = [ "windows7-compat", ] } tauri-plugin-os = { path = "../../../plugins/os", version = "2.2.1" } -tauri-plugin-process = { path = "../../../plugins/process", version = "2.2.0" } +tauri-plugin-process = { path = "../../../plugins/process", version = "2.2.1" } tauri-plugin-opener = { path = "../../../plugins/opener", version = "2.2.6" } -tauri-plugin-shell = { path = "../../../plugins/shell", version = "2.2.0" } +tauri-plugin-shell = { path = "../../../plugins/shell", version = "2.2.1" } tauri-plugin-store = { path = "../../../plugins/store", version = "2.2.0" } [dependencies.tauri] @@ -55,7 +55,7 @@ features = [ [target."cfg(any(target_os = \"macos\", windows, target_os = \"linux\", target_os = \"dragonfly\", target_os = \"freebsd\", target_os = \"openbsd\", target_os = \"netbsd\"))".dependencies] tauri-plugin-cli = { path = "../../../plugins/cli", version = "2.2.0" } tauri-plugin-global-shortcut = { path = "../../../plugins/global-shortcut", version = "2.2.0" } -tauri-plugin-updater = { path = "../../../plugins/updater", version = "2.6.1" } +tauri-plugin-updater = { path = "../../../plugins/updater", version = "2.7.0" } tauri-plugin-window-state = { path = "../../../plugins/window-state", version = "2.2.0" } [target."cfg(any(target_os = \"android\", target_os = \"ios\"))".dependencies] diff --git a/plugins/autostart/CHANGELOG.md b/plugins/autostart/CHANGELOG.md index 85b3d5c1..2a2f31e5 100644 --- a/plugins/autostart/CHANGELOG.md +++ b/plugins/autostart/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## \[2.3.0] + +- [`8ecb418a`](https://github.com/tauri-apps/plugins-workspace/commit/8ecb418a1a35d7f234dc5d833746ac2d8e062aec) ([#2569](https://github.com/tauri-apps/plugins-workspace/pull/2569)) Add a `Builder` for more flexible settings + ## \[2.2.0] - [`3a79266b`](https://github.com/tauri-apps/plugins-workspace/commit/3a79266b8cf96a55b1ae6339d725567d45a44b1d) ([#2173](https://github.com/tauri-apps/plugins-workspace/pull/2173) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Bumped all plugins to `v2.2.0`. From now, the versions for the Rust and JavaScript packages of each plugin will be in sync with each other. diff --git a/plugins/autostart/Cargo.toml b/plugins/autostart/Cargo.toml index d0a80ddf..9a30eff9 100644 --- a/plugins/autostart/Cargo.toml +++ b/plugins/autostart/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-autostart" -version = "2.2.0" +version = "2.3.0" description = "Automatically launch your application at startup." authors = { workspace = true } license = { workspace = true } diff --git a/plugins/autostart/package.json b/plugins/autostart/package.json index 876d9295..c2840616 100644 --- a/plugins/autostart/package.json +++ b/plugins/autostart/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-autostart", - "version": "2.2.0", + "version": "2.3.0", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/plugins/deep-link/CHANGELOG.md b/plugins/deep-link/CHANGELOG.md index 4c3c9b9a..325970da 100644 --- a/plugins/deep-link/CHANGELOG.md +++ b/plugins/deep-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## \[2.2.1] + +### bug + +- [`38deef43`](https://github.com/tauri-apps/plugins-workspace/commit/38deef43dca9d5a09a38ed2da45b0f86c6afa1c5) ([#2483](https://github.com/tauri-apps/plugins-workspace/pull/2483)) Fix `is_registered` not being able to pickup deep link registered in `HKEY_LOCAL_MACHINE` on Windows +- [`38deef43`](https://github.com/tauri-apps/plugins-workspace/commit/38deef43dca9d5a09a38ed2da45b0f86c6afa1c5) ([#2483](https://github.com/tauri-apps/plugins-workspace/pull/2483)) Fix `unregister` not being able to remove deep link registered in `HKEY_LOCAL_MACHINE` on Windows + ## \[2.2.0] - [`3a79266b`](https://github.com/tauri-apps/plugins-workspace/commit/3a79266b8cf96a55b1ae6339d725567d45a44b1d) ([#2173](https://github.com/tauri-apps/plugins-workspace/pull/2173) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Bumped all plugins to `v2.2.0`. From now, the versions for the Rust and JavaScript packages of each plugin will be in sync with each other. diff --git a/plugins/deep-link/Cargo.toml b/plugins/deep-link/Cargo.toml index 068cad08..8b3d069d 100644 --- a/plugins/deep-link/Cargo.toml +++ b/plugins/deep-link/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-deep-link" -version = "2.2.0" +version = "2.2.1" description = "Set your Tauri application as the default handler for an URL" authors = { workspace = true } license = { workspace = true } diff --git a/plugins/deep-link/examples/app/CHANGELOG.md b/plugins/deep-link/examples/app/CHANGELOG.md index 5e89d0f4..06e931d0 100644 --- a/plugins/deep-link/examples/app/CHANGELOG.md +++ b/plugins/deep-link/examples/app/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## \[2.2.1] + +### Dependencies + +- Upgraded to `deep-link-js@2.2.1` + ## \[2.2.0] ### Dependencies diff --git a/plugins/deep-link/examples/app/package.json b/plugins/deep-link/examples/app/package.json index e4dd76d8..53fb7075 100644 --- a/plugins/deep-link/examples/app/package.json +++ b/plugins/deep-link/examples/app/package.json @@ -1,7 +1,7 @@ { "name": "deep-link-example", "private": true, - "version": "2.2.0", + "version": "2.2.1", "type": "module", "scripts": { "dev": "vite", @@ -11,7 +11,7 @@ }, "dependencies": { "@tauri-apps/api": "2.4.1", - "@tauri-apps/plugin-deep-link": "2.2.0" + "@tauri-apps/plugin-deep-link": "2.2.1" }, "devDependencies": { "@tauri-apps/cli": "2.4.1", diff --git a/plugins/deep-link/package.json b/plugins/deep-link/package.json index 0b05dd86..15eff738 100644 --- a/plugins/deep-link/package.json +++ b/plugins/deep-link/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-deep-link", - "version": "2.2.0", + "version": "2.2.1", "description": "Set your Tauri application as the default handler for an URL", "license": "MIT OR Apache-2.0", "authors": [ diff --git a/plugins/dialog/CHANGELOG.md b/plugins/dialog/CHANGELOG.md index 07989c79..3ef0db82 100644 --- a/plugins/dialog/CHANGELOG.md +++ b/plugins/dialog/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## \[2.2.1] + +### Dependencies + +- Upgraded to `fs-js@2.2.1` + ## \[2.2.0] - [`3a79266b`](https://github.com/tauri-apps/plugins-workspace/commit/3a79266b8cf96a55b1ae6339d725567d45a44b1d) ([#2173](https://github.com/tauri-apps/plugins-workspace/pull/2173) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Bumped all plugins to `v2.2.0`. From now, the versions for the Rust and JavaScript packages of each plugin will be in sync with each other. diff --git a/plugins/dialog/Cargo.toml b/plugins/dialog/Cargo.toml index 3ca0df2d..0ee6841d 100644 --- a/plugins/dialog/Cargo.toml +++ b/plugins/dialog/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-dialog" -version = "2.2.0" +version = "2.2.1" description = "Native system dialogs for opening and saving files along with message dialogs on your Tauri application." edition = { workspace = true } authors = { workspace = true } @@ -34,7 +34,7 @@ tauri = { workspace = true } log = { workspace = true } thiserror = { workspace = true } url = { workspace = true } -tauri-plugin-fs = { path = "../fs", version = "2.2.0" } +tauri-plugin-fs = { path = "../fs", version = "2.2.1" } [target.'cfg(target_os = "ios")'.dependencies] tauri = { workspace = true, features = ["wry"] } diff --git a/plugins/dialog/package.json b/plugins/dialog/package.json index 52fef579..31ecdc3e 100644 --- a/plugins/dialog/package.json +++ b/plugins/dialog/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-dialog", - "version": "2.2.0", + "version": "2.2.1", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/plugins/fs/CHANGELOG.md b/plugins/fs/CHANGELOG.md index 533714ad..a8b72fc7 100644 --- a/plugins/fs/CHANGELOG.md +++ b/plugins/fs/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## \[2.2.1] + +### bug + +- [`831c35ff`](https://github.com/tauri-apps/plugins-workspace/commit/831c35ff3940e841fe4418bb4cb104038b03304b) ([#2550](https://github.com/tauri-apps/plugins-workspace/pull/2550)) Fix `writeFile` ReadableStream handling due to missing async iterator support on macOS platform + ## \[2.2.0] - [`3a79266b`](https://github.com/tauri-apps/plugins-workspace/commit/3a79266b8cf96a55b1ae6339d725567d45a44b1d) ([#2173](https://github.com/tauri-apps/plugins-workspace/pull/2173) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Bumped all plugins to `v2.2.0`. From now, the versions for the Rust and JavaScript packages of each plugin will be in sync with each other. diff --git a/plugins/fs/Cargo.toml b/plugins/fs/Cargo.toml index 5768da73..4015d76d 100644 --- a/plugins/fs/Cargo.toml +++ b/plugins/fs/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-fs" -version = "2.2.0" +version = "2.2.1" description = "Access the file system." authors = { workspace = true } license = { workspace = true } diff --git a/plugins/fs/package.json b/plugins/fs/package.json index 09efc93d..47d9fe34 100644 --- a/plugins/fs/package.json +++ b/plugins/fs/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-fs", - "version": "2.2.0", + "version": "2.2.1", "description": "Access the file system.", "license": "MIT OR Apache-2.0", "authors": [ diff --git a/plugins/http/CHANGELOG.md b/plugins/http/CHANGELOG.md index 22e7a07c..4e1fb76b 100644 --- a/plugins/http/CHANGELOG.md +++ b/plugins/http/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +## \[2.4.3] + +- [`37c0477a`](https://github.com/tauri-apps/plugins-workspace/commit/37c0477afe926d326573f1827045875ce8bf8187) ([#2561](https://github.com/tauri-apps/plugins-workspace/pull/2561)) Add `zstd` cargo feature flag to enable `reqwest/zstd` flag. +- [`9ebbfb2e`](https://github.com/tauri-apps/plugins-workspace/commit/9ebbfb2e3ccef8e0f277a0c02fe6b399b41feeb6) ([#1978](https://github.com/tauri-apps/plugins-workspace/pull/1978)) Persist cookies to disk and load it on next app start. + +### Dependencies + +- Upgraded to `fs-js@2.2.1` + ## \[2.4.2] - [`a15eedf3`](https://github.com/tauri-apps/plugins-workspace/commit/a15eedf37854344f7ffbcb0d373d848563817011) ([#2535](https://github.com/tauri-apps/plugins-workspace/pull/2535) by [@amrbashir](https://github.com/tauri-apps/plugins-workspace/../../amrbashir)) Fix `fetch` occasionally throwing an error due to trying to close the underline stream twice. diff --git a/plugins/http/Cargo.toml b/plugins/http/Cargo.toml index 0d482206..353f72a3 100644 --- a/plugins/http/Cargo.toml +++ b/plugins/http/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-http" -version = "2.4.2" +version = "2.4.3" description = "Access an HTTP client written in Rust." edition = { workspace = true } authors = { workspace = true } @@ -34,7 +34,7 @@ serde_json = { workspace = true } tauri = { workspace = true } thiserror = { workspace = true } tokio = { version = "1", features = ["sync", "macros"] } -tauri-plugin-fs = { path = "../fs", version = "2.2.0" } +tauri-plugin-fs = { path = "../fs", version = "2.2.1" } urlpattern = "0.3" regex = "1" http = "1" diff --git a/plugins/http/package.json b/plugins/http/package.json index 3cd87295..7439c461 100644 --- a/plugins/http/package.json +++ b/plugins/http/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-http", - "version": "2.4.2", + "version": "2.4.3", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/plugins/persisted-scope/CHANGELOG.md b/plugins/persisted-scope/CHANGELOG.md index 937db6c4..244b6d0f 100644 --- a/plugins/persisted-scope/CHANGELOG.md +++ b/plugins/persisted-scope/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## \[2.2.1] + +### Dependencies + +- Upgraded to `fs@2.2.1` + ## \[2.2.0] - [`3a79266b`](https://github.com/tauri-apps/plugins-workspace/commit/3a79266b8cf96a55b1ae6339d725567d45a44b1d) ([#2173](https://github.com/tauri-apps/plugins-workspace/pull/2173) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Bumped all plugins to `v2.2.0`. From now, the versions for the Rust and JavaScript packages of each plugin will be in sync with each other. diff --git a/plugins/persisted-scope/Cargo.toml b/plugins/persisted-scope/Cargo.toml index 38585d38..7927774d 100644 --- a/plugins/persisted-scope/Cargo.toml +++ b/plugins/persisted-scope/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-persisted-scope" -version = "2.2.0" +version = "2.2.1" description = "Save filesystem and asset scopes and restore them when the app is reopened." authors = { workspace = true } license = { workspace = true } @@ -27,7 +27,7 @@ log = { workspace = true } thiserror = { workspace = true } aho-corasick = "1" bincode = "1" -tauri-plugin-fs = { path = "../fs", version = "2.2.0" } +tauri-plugin-fs = { path = "../fs", version = "2.2.1" } [features] protocol-asset = ["tauri/protocol-asset"] diff --git a/plugins/process/CHANGELOG.md b/plugins/process/CHANGELOG.md index 7bcdab70..12cb7136 100644 --- a/plugins/process/CHANGELOG.md +++ b/plugins/process/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## \[2.2.1] + +- [`d2aef2fd`](https://github.com/tauri-apps/plugins-workspace/commit/d2aef2fddbdfad6526935c55ac10a94171a4f5f5) ([#2581](https://github.com/tauri-apps/plugins-workspace/pull/2581)) Migrate restart to use tauri's new `AppHandle::request_restart` method + ## \[2.2.0] - [`3a79266b`](https://github.com/tauri-apps/plugins-workspace/commit/3a79266b8cf96a55b1ae6339d725567d45a44b1d) ([#2173](https://github.com/tauri-apps/plugins-workspace/pull/2173) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Bumped all plugins to `v2.2.0`. From now, the versions for the Rust and JavaScript packages of each plugin will be in sync with each other. diff --git a/plugins/process/Cargo.toml b/plugins/process/Cargo.toml index 4577844f..8ccf62c5 100644 --- a/plugins/process/Cargo.toml +++ b/plugins/process/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-process" -version = "2.2.0" +version = "2.2.1" description = "Access the current process of your Tauri application." edition = { workspace = true } authors = { workspace = true } diff --git a/plugins/process/package.json b/plugins/process/package.json index 0eda3235..fdb2ad49 100644 --- a/plugins/process/package.json +++ b/plugins/process/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-process", - "version": "2.2.0", + "version": "2.2.1", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/plugins/shell/CHANGELOG.md b/plugins/shell/CHANGELOG.md index cbeec3b4..9af199bf 100644 --- a/plugins/shell/CHANGELOG.md +++ b/plugins/shell/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## \[2.2.1] + +### bug + +- [`9cf0390a`](https://github.com/tauri-apps/plugins-workspace/commit/9cf0390a52497e273db1a1b613a0e26827aa327c) Apply the default open validation regex `^((mailto:\w+)|(tel:\w+)|(https?://\w+)).+` when the open configuration is not set, preventing unchecked input from being used in this scenario (previously the plugin would skip validation when it should disable all calls). This keeps backwards compatibility while still fixing this vulnerability. + The scope is no longer validated for Rust calls via `ShellExt::shell()` so if you need to block JavaScript from calling the API you can simply set `tauri.conf.json > plugins > shell > open` to `false`. + ## \[2.2.0] - [`3a79266b`](https://github.com/tauri-apps/plugins-workspace/commit/3a79266b8cf96a55b1ae6339d725567d45a44b1d) ([#2173](https://github.com/tauri-apps/plugins-workspace/pull/2173) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Bumped all plugins to `v2.2.0`. From now, the versions for the Rust and JavaScript packages of each plugin will be in sync with each other. diff --git a/plugins/shell/Cargo.toml b/plugins/shell/Cargo.toml index 14b98d45..f3f1248c 100644 --- a/plugins/shell/Cargo.toml +++ b/plugins/shell/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-shell" -version = "2.2.0" +version = "2.2.1" description = "Access the system shell. Allows you to spawn child processes and manage files and URLs using their default application." edition = { workspace = true } authors = { workspace = true } diff --git a/plugins/shell/package.json b/plugins/shell/package.json index 126e5b6f..e42394c8 100644 --- a/plugins/shell/package.json +++ b/plugins/shell/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-shell", - "version": "2.2.0", + "version": "2.2.1", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/plugins/single-instance/CHANGELOG.md b/plugins/single-instance/CHANGELOG.md index 77de533a..54969994 100644 --- a/plugins/single-instance/CHANGELOG.md +++ b/plugins/single-instance/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## \[2.2.3] + +### Dependencies + +- Upgraded to `deep-link@2.2.1` + ## \[2.2.2] - [`1ab5f157`](https://github.com/tauri-apps/plugins-workspace/commit/1ab5f1576333174095bc7dad4bef7a8576bb29ab) ([#2452](https://github.com/tauri-apps/plugins-workspace/pull/2452) by [@FabianLars](https://github.com/tauri-apps/plugins-workspace/../../FabianLars)) Fixed `null pointer dereference` panic on rust nightly on Windows. diff --git a/plugins/single-instance/Cargo.toml b/plugins/single-instance/Cargo.toml index 574df414..eb019767 100644 --- a/plugins/single-instance/Cargo.toml +++ b/plugins/single-instance/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-single-instance" -version = "2.2.2" +version = "2.2.3" description = "Ensure a single instance of your tauri app is running." authors = { workspace = true } license = { workspace = true } @@ -26,7 +26,7 @@ serde_json = { workspace = true } tauri = { workspace = true } tracing = { workspace = true } thiserror = { workspace = true } -tauri-plugin-deep-link = { path = "../deep-link", version = "2.2.0", optional = true } +tauri-plugin-deep-link = { path = "../deep-link", version = "2.2.1", optional = true } semver = { version = "1", optional = true } [target."cfg(target_os = \"windows\")".dependencies.windows-sys] diff --git a/plugins/updater/CHANGELOG.md b/plugins/updater/CHANGELOG.md index c196b04a..0c10166b 100644 --- a/plugins/updater/CHANGELOG.md +++ b/plugins/updater/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## \[2.7.0] + +### bug + +- [`2d731f80`](https://github.com/tauri-apps/plugins-workspace/commit/2d731f80224f74faf1b7170b25e04f5da1da49c8) ([#2573](https://github.com/tauri-apps/plugins-workspace/pull/2573)) Fix JS API `Update.date` not formatted to RFC 3339 +- [`0bc5d588`](https://github.com/tauri-apps/plugins-workspace/commit/0bc5d5887420ba1eb718254490b7995c771c0447) ([#2572](https://github.com/tauri-apps/plugins-workspace/pull/2572)) Fix `timeout` passed to `check` gets re-used by `download` and `downloadAndinstall` + ## \[2.6.1] - [`12c4537b`](https://github.com/tauri-apps/plugins-workspace/commit/12c4537b8e4fed29b415ff817434b664c0596dac) ([#2541](https://github.com/tauri-apps/plugins-workspace/pull/2541) by [@lucasfernog](https://github.com/tauri-apps/plugins-workspace/../../lucasfernog)) Add support to the `riscv64` architecture. diff --git a/plugins/updater/Cargo.toml b/plugins/updater/Cargo.toml index 322c4728..768dcfea 100644 --- a/plugins/updater/Cargo.toml +++ b/plugins/updater/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-updater" -version = "2.6.1" +version = "2.7.0" description = "In-app updates for Tauri applications." edition = { workspace = true } authors = { workspace = true } diff --git a/plugins/updater/package.json b/plugins/updater/package.json index a5147145..a466ac53 100644 --- a/plugins/updater/package.json +++ b/plugins/updater/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-updater", - "version": "2.6.1", + "version": "2.7.0", "license": "MIT OR Apache-2.0", "authors": [ "Tauri Programme within The Commons Conservancy" diff --git a/plugins/window-state/CHANGELOG.md b/plugins/window-state/CHANGELOG.md index 6f79c648..cfd02a55 100644 --- a/plugins/window-state/CHANGELOG.md +++ b/plugins/window-state/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## \[2.2.2] + +- [`a35fea50`](https://github.com/tauri-apps/plugins-workspace/commit/a35fea501560a3d126aad09b59600d9f1a731a9e) ([#2583](https://github.com/tauri-apps/plugins-workspace/pull/2583)) Fix window size gets bigger/smaller on secondary monitor with a different scaling than the primary one + ## \[2.2.1] - [`0ec895c3`](https://github.com/tauri-apps/plugins-workspace/commit/0ec895c378d4700cf8d7a002c6d9829f3c015b9f) ([#2330](https://github.com/tauri-apps/plugins-workspace/pull/2330) by [@thewh1teagle](https://github.com/tauri-apps/plugins-workspace/../../thewh1teagle)) Add `Builder::with_filter` callback to exclude specific windows from saving their state. This allows for more flexibility by enabling dynamic exclusion of windows based on custom logic. diff --git a/plugins/window-state/Cargo.toml b/plugins/window-state/Cargo.toml index f1376178..180808b8 100644 --- a/plugins/window-state/Cargo.toml +++ b/plugins/window-state/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tauri-plugin-window-state" -version = "2.2.1" +version = "2.2.2" description = "Save window positions and sizes and restore them when the app is reopened." authors = { workspace = true } license = { workspace = true } diff --git a/plugins/window-state/package.json b/plugins/window-state/package.json index c065d959..fd0eccd1 100644 --- a/plugins/window-state/package.json +++ b/plugins/window-state/package.json @@ -1,6 +1,6 @@ { "name": "@tauri-apps/plugin-window-state", - "version": "2.2.1", + "version": "2.2.2", "description": "Save window positions and sizes and restore them when the app is reopened.", "license": "MIT OR Apache-2.0", "authors": [ diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 81802c52..13b08113 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -69,10 +69,10 @@ importers: specifier: ^2.2.2 version: link:../../plugins/clipboard-manager '@tauri-apps/plugin-dialog': - specifier: ^2.2.0 + specifier: ^2.2.1 version: link:../../plugins/dialog '@tauri-apps/plugin-fs': - specifier: ^2.2.0 + specifier: ^2.2.1 version: link:../../plugins/fs '@tauri-apps/plugin-geolocation': specifier: ^2.2.0 @@ -84,7 +84,7 @@ importers: specifier: ^2.2.0 version: link:../../plugins/haptics '@tauri-apps/plugin-http': - specifier: ^2.4.2 + specifier: ^2.4.3 version: link:../../plugins/http '@tauri-apps/plugin-nfc': specifier: ^2.2.0 @@ -99,16 +99,16 @@ importers: specifier: ^2.2.1 version: link:../../plugins/os '@tauri-apps/plugin-process': - specifier: ^2.2.0 + specifier: ^2.2.1 version: link:../../plugins/process '@tauri-apps/plugin-shell': - specifier: ^2.2.0 + specifier: ^2.2.1 version: link:../../plugins/shell '@tauri-apps/plugin-store': specifier: ^2.2.0 version: link:../../plugins/store '@tauri-apps/plugin-updater': - specifier: ^2.6.1 + specifier: ^2.7.0 version: link:../../plugins/updater '@zerodevx/svelte-json-view': specifier: 1.0.11 @@ -181,7 +181,7 @@ importers: specifier: 2.4.1 version: 2.4.1 '@tauri-apps/plugin-deep-link': - specifier: 2.2.0 + specifier: 2.2.1 version: link:../.. devDependencies: '@tauri-apps/cli': @@ -2298,9 +2298,9 @@ snapshots: - encoding - mocha - '@covector/assemble@0.12.0': + '@covector/assemble@0.12.0(mocha@10.8.2)': dependencies: - '@covector/command': 0.8.0 + '@covector/command': 0.8.0(mocha@10.8.2) '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) js-yaml: 4.1.0 @@ -2311,9 +2311,10 @@ snapshots: unified: 9.2.2 transitivePeerDependencies: - encoding + - mocha - supports-color - '@covector/changelog@0.12.0': + '@covector/changelog@0.12.0(mocha@10.8.2)': dependencies: '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) @@ -2323,14 +2324,16 @@ snapshots: unified: 9.2.2 transitivePeerDependencies: - encoding + - mocha - supports-color - '@covector/command@0.8.0': + '@covector/command@0.8.0(mocha@10.8.2)': dependencies: - '@effection/process': 2.1.4 + '@effection/process': 2.1.4(mocha@10.8.2) effection: 2.0.8(mocha@10.8.2) transitivePeerDependencies: - encoding + - mocha '@covector/files@0.8.0': dependencies: @@ -2377,10 +2380,8 @@ snapshots: dependencies: effection: 2.0.8(mocha@10.8.2) mocha: 10.8.2 - transitivePeerDependencies: - - encoding - '@effection/process@2.1.4': + '@effection/process@2.1.4(mocha@10.8.2)': dependencies: cross-spawn: 7.0.6 ctrlc-windows: 2.2.0 @@ -2388,6 +2389,7 @@ snapshots: shellwords: 0.1.1 transitivePeerDependencies: - encoding + - mocha '@effection/stream@2.0.6': dependencies: @@ -3186,9 +3188,9 @@ snapshots: dependencies: '@clack/prompts': 0.7.0 '@covector/apply': 0.10.0(mocha@10.8.2) - '@covector/assemble': 0.12.0 - '@covector/changelog': 0.12.0 - '@covector/command': 0.8.0 + '@covector/assemble': 0.12.0(mocha@10.8.2) + '@covector/changelog': 0.12.0(mocha@10.8.2) + '@covector/command': 0.8.0(mocha@10.8.2) '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) globby: 11.1.0 From efe3f88acd9ab3578abea1dd4743ae50b8898da1 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 2 Apr 2025 17:18:15 +0800 Subject: [PATCH 76/80] chore(deps): update dependency rollup to v4.39.0 (#2590) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 222 ++++++++++++++++++++++++------------------------- 2 files changed, 111 insertions(+), 113 deletions(-) diff --git a/package.json b/package.json index fd6e8775..b3ec7baa 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "eslint-config-prettier": "10.1.1", "eslint-plugin-security": "3.0.1", "prettier": "3.5.3", - "rollup": "4.38.0", + "rollup": "4.39.0", "tslib": "2.8.1", "typescript": "5.8.2", "typescript-eslint": "8.29.0" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 13b08113..a1ae9bee 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -16,13 +16,13 @@ importers: version: 9.23.0 '@rollup/plugin-node-resolve': specifier: 16.0.1 - version: 16.0.1(rollup@4.38.0) + version: 16.0.1(rollup@4.39.0) '@rollup/plugin-terser': specifier: 0.4.4 - version: 0.4.4(rollup@4.38.0) + version: 0.4.4(rollup@4.39.0) '@rollup/plugin-typescript': specifier: 12.1.2 - version: 12.1.2(rollup@4.38.0)(tslib@2.8.1)(typescript@5.8.2) + version: 12.1.2(rollup@4.39.0)(tslib@2.8.1)(typescript@5.8.2) covector: specifier: ^0.12.4 version: 0.12.4(mocha@10.8.2) @@ -39,8 +39,8 @@ importers: specifier: 3.5.3 version: 3.5.3 rollup: - specifier: 4.38.0 - version: 4.38.0 + specifier: 4.39.0 + version: 4.39.0 tslib: specifier: 2.8.1 version: 2.8.1 @@ -739,103 +739,103 @@ packages: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.38.0': - resolution: {integrity: sha512-ldomqc4/jDZu/xpYU+aRxo3V4mGCV9HeTgUBANI3oIQMOL+SsxB+S2lxMpkFp5UamSS3XuTMQVbsS24R4J4Qjg==} + '@rollup/rollup-android-arm-eabi@4.39.0': + resolution: {integrity: sha512-lGVys55Qb00Wvh8DMAocp5kIcaNzEFTmGhfFd88LfaogYTRKrdxgtlO5H6S49v2Nd8R2C6wLOal0qv6/kCkOwA==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.38.0': - resolution: {integrity: sha512-VUsgcy4GhhT7rokwzYQP+aV9XnSLkkhlEJ0St8pbasuWO/vwphhZQxYEKUP3ayeCYLhk6gEtacRpYP/cj3GjyQ==} + '@rollup/rollup-android-arm64@4.39.0': + resolution: {integrity: sha512-It9+M1zE31KWfqh/0cJLrrsCPiF72PoJjIChLX+rEcujVRCb4NLQ5QzFkzIZW8Kn8FTbvGQBY5TkKBau3S8cCQ==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.38.0': - resolution: {integrity: sha512-buA17AYXlW9Rn091sWMq1xGUvWQFOH4N1rqUxGJtEQzhChxWjldGCCup7r/wUnaI6Au8sKXpoh0xg58a7cgcpg==} + '@rollup/rollup-darwin-arm64@4.39.0': + resolution: {integrity: sha512-lXQnhpFDOKDXiGxsU9/l8UEGGM65comrQuZ+lDcGUx+9YQ9dKpF3rSEGepyeR5AHZ0b5RgiligsBhWZfSSQh8Q==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.38.0': - resolution: {integrity: sha512-Mgcmc78AjunP1SKXl624vVBOF2bzwNWFPMP4fpOu05vS0amnLcX8gHIge7q/lDAHy3T2HeR0TqrriZDQS2Woeg==} + '@rollup/rollup-darwin-x64@4.39.0': + resolution: {integrity: sha512-mKXpNZLvtEbgu6WCkNij7CGycdw9cJi2k9v0noMb++Vab12GZjFgUXD69ilAbBh034Zwn95c2PNSz9xM7KYEAQ==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.38.0': - resolution: {integrity: sha512-zzJACgjLbQTsscxWqvrEQAEh28hqhebpRz5q/uUd1T7VTwUNZ4VIXQt5hE7ncs0GrF+s7d3S4on4TiXUY8KoQA==} + '@rollup/rollup-freebsd-arm64@4.39.0': + resolution: {integrity: sha512-jivRRlh2Lod/KvDZx2zUR+I4iBfHcu2V/BA2vasUtdtTN2Uk3jfcZczLa81ESHZHPHy4ih3T/W5rPFZ/hX7RtQ==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.38.0': - resolution: {integrity: sha512-hCY/KAeYMCyDpEE4pTETam0XZS4/5GXzlLgpi5f0IaPExw9kuB+PDTOTLuPtM10TlRG0U9OSmXJ+Wq9J39LvAg==} + '@rollup/rollup-freebsd-x64@4.39.0': + resolution: {integrity: sha512-8RXIWvYIRK9nO+bhVz8DwLBepcptw633gv/QT4015CpJ0Ht8punmoHU/DuEd3iw9Hr8UwUV+t+VNNuZIWYeY7Q==} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.38.0': - resolution: {integrity: sha512-mimPH43mHl4JdOTD7bUMFhBdrg6f9HzMTOEnzRmXbOZqjijCw8LA5z8uL6LCjxSa67H2xiLFvvO67PT05PRKGg==} + '@rollup/rollup-linux-arm-gnueabihf@4.39.0': + resolution: {integrity: sha512-mz5POx5Zu58f2xAG5RaRRhp3IZDK7zXGk5sdEDj4o96HeaXhlUwmLFzNlc4hCQi5sGdR12VDgEUqVSHer0lI9g==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.38.0': - resolution: {integrity: sha512-tPiJtiOoNuIH8XGG8sWoMMkAMm98PUwlriOFCCbZGc9WCax+GLeVRhmaxjJtz6WxrPKACgrwoZ5ia/uapq3ZVg==} + '@rollup/rollup-linux-arm-musleabihf@4.39.0': + resolution: {integrity: sha512-+YDwhM6gUAyakl0CD+bMFpdmwIoRDzZYaTWV3SDRBGkMU/VpIBYXXEvkEcTagw/7VVkL2vA29zU4UVy1mP0/Yw==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.38.0': - resolution: {integrity: sha512-wZco59rIVuB0tjQS0CSHTTUcEde+pXQWugZVxWaQFdQQ1VYub/sTrNdY76D1MKdN2NB48JDuGABP6o6fqos8mA==} + '@rollup/rollup-linux-arm64-gnu@4.39.0': + resolution: {integrity: sha512-EKf7iF7aK36eEChvlgxGnk7pdJfzfQbNvGV/+l98iiMwU23MwvmV0Ty3pJ0p5WQfm3JRHOytSIqD9LB7Bq7xdQ==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.38.0': - resolution: {integrity: sha512-fQgqwKmW0REM4LomQ+87PP8w8xvU9LZfeLBKybeli+0yHT7VKILINzFEuggvnV9M3x1Ed4gUBmGUzCo/ikmFbQ==} + '@rollup/rollup-linux-arm64-musl@4.39.0': + resolution: {integrity: sha512-vYanR6MtqC7Z2SNr8gzVnzUul09Wi1kZqJaek3KcIlI/wq5Xtq4ZPIZ0Mr/st/sv/NnaPwy/D4yXg5x0B3aUUA==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-loongarch64-gnu@4.38.0': - resolution: {integrity: sha512-hz5oqQLXTB3SbXpfkKHKXLdIp02/w3M+ajp8p4yWOWwQRtHWiEOCKtc9U+YXahrwdk+3qHdFMDWR5k+4dIlddg==} + '@rollup/rollup-linux-loongarch64-gnu@4.39.0': + resolution: {integrity: sha512-NMRUT40+h0FBa5fb+cpxtZoGAggRem16ocVKIv5gDB5uLDgBIwrIsXlGqYbLwW8YyO3WVTk1FkFDjMETYlDqiw==} cpu: [loong64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.38.0': - resolution: {integrity: sha512-NXqygK/dTSibQ+0pzxsL3r4Xl8oPqVoWbZV9niqOnIHV/J92fe65pOir0xjkUZDRSPyFRvu+4YOpJF9BZHQImw==} + '@rollup/rollup-linux-powerpc64le-gnu@4.39.0': + resolution: {integrity: sha512-0pCNnmxgduJ3YRt+D+kJ6Ai/r+TaePu9ZLENl+ZDV/CdVczXl95CbIiwwswu4L+K7uOIGf6tMo2vm8uadRaICQ==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.38.0': - resolution: {integrity: sha512-GEAIabR1uFyvf/jW/5jfu8gjM06/4kZ1W+j1nWTSSB3w6moZEBm7iBtzwQ3a1Pxos2F7Gz+58aVEnZHU295QTg==} + '@rollup/rollup-linux-riscv64-gnu@4.39.0': + resolution: {integrity: sha512-t7j5Zhr7S4bBtksT73bO6c3Qa2AV/HqiGlj9+KB3gNF5upcVkx+HLgxTm8DK4OkzsOYqbdqbLKwvGMhylJCPhQ==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-riscv64-musl@4.38.0': - resolution: {integrity: sha512-9EYTX+Gus2EGPbfs+fh7l95wVADtSQyYw4DfSBcYdUEAmP2lqSZY0Y17yX/3m5VKGGJ4UmIH5LHLkMJft3bYoA==} + '@rollup/rollup-linux-riscv64-musl@4.39.0': + resolution: {integrity: sha512-m6cwI86IvQ7M93MQ2RF5SP8tUjD39Y7rjb1qjHgYh28uAPVU8+k/xYWvxRO3/tBN2pZkSMa5RjnPuUIbrwVxeA==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.38.0': - resolution: {integrity: sha512-Mpp6+Z5VhB9VDk7RwZXoG2qMdERm3Jw07RNlXHE0bOnEeX+l7Fy4bg+NxfyN15ruuY3/7Vrbpm75J9QHFqj5+Q==} + '@rollup/rollup-linux-s390x-gnu@4.39.0': + resolution: {integrity: sha512-iRDJd2ebMunnk2rsSBYlsptCyuINvxUfGwOUldjv5M4tpa93K8tFMeYGpNk2+Nxl+OBJnBzy2/JCscGeO507kA==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.38.0': - resolution: {integrity: sha512-vPvNgFlZRAgO7rwncMeE0+8c4Hmc+qixnp00/Uv3ht2x7KYrJ6ERVd3/R0nUtlE6/hu7/HiiNHJ/rP6knRFt1w==} + '@rollup/rollup-linux-x64-gnu@4.39.0': + resolution: {integrity: sha512-t9jqYw27R6Lx0XKfEFe5vUeEJ5pF3SGIM6gTfONSMb7DuG6z6wfj2yjcoZxHg129veTqU7+wOhY6GX8wmf90dA==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.38.0': - resolution: {integrity: sha512-q5Zv+goWvQUGCaL7fU8NuTw8aydIL/C9abAVGCzRReuj5h30TPx4LumBtAidrVOtXnlB+RZkBtExMsfqkMfb8g==} + '@rollup/rollup-linux-x64-musl@4.39.0': + resolution: {integrity: sha512-ThFdkrFDP55AIsIZDKSBWEt/JcWlCzydbZHinZ0F/r1h83qbGeenCt/G/wG2O0reuENDD2tawfAj2s8VK7Bugg==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.38.0': - resolution: {integrity: sha512-u/Jbm1BU89Vftqyqbmxdq14nBaQjQX1HhmsdBWqSdGClNaKwhjsg5TpW+5Ibs1mb8Es9wJiMdl86BcmtUVXNZg==} + '@rollup/rollup-win32-arm64-msvc@4.39.0': + resolution: {integrity: sha512-jDrLm6yUtbOg2TYB3sBF3acUnAwsIksEYjLeHL+TJv9jg+TmTwdyjnDex27jqEMakNKf3RwwPahDIt7QXCSqRQ==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.38.0': - resolution: {integrity: sha512-mqu4PzTrlpNHHbu5qleGvXJoGgHpChBlrBx/mEhTPpnAL1ZAYFlvHD7rLK839LLKQzqEQMFJfGrrOHItN4ZQqA==} + '@rollup/rollup-win32-ia32-msvc@4.39.0': + resolution: {integrity: sha512-6w9uMuza+LbLCVoNKL5FSLE7yvYkq9laSd09bwS0tMjkwXrmib/4KmoJcrKhLWHvw19mwU+33ndC69T7weNNjQ==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.38.0': - resolution: {integrity: sha512-jjqy3uWlecfB98Psxb5cD6Fny9Fupv9LrDSPTQZUROqjvZmcCqNu4UMl7qqhlUUGpwiAkotj6GYu4SZdcr/nLw==} + '@rollup/rollup-win32-x64-msvc@4.39.0': + resolution: {integrity: sha512-yAkUOkIKZlK5dl7u6dg897doBgLXmUHhIINM2c+sND3DZwnrdQkkSiDh7N75Ll4mM4dxSkYfXqU9fW3lLkMFug==} cpu: [x64] os: [win32] @@ -1914,8 +1914,8 @@ packages: resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rollup@4.38.0: - resolution: {integrity: sha512-5SsIRtJy9bf1ErAOiFMFzl64Ex9X5V7bnJ+WlFMb+zmP459OSWCEG7b0ERZ+PEU7xPt4OG3RHbrp1LJlXxYTrw==} + rollup@4.39.0: + resolution: {integrity: sha512-thI8kNc02yNvnmJp8dr3fNWJ9tCONDhp6TV35X6HkKGGs9E6q7YWCHbe5vKiTa7TAiNcFEmXKj3X/pG2b3ci0g==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -2298,9 +2298,9 @@ snapshots: - encoding - mocha - '@covector/assemble@0.12.0(mocha@10.8.2)': + '@covector/assemble@0.12.0': dependencies: - '@covector/command': 0.8.0(mocha@10.8.2) + '@covector/command': 0.8.0 '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) js-yaml: 4.1.0 @@ -2311,10 +2311,9 @@ snapshots: unified: 9.2.2 transitivePeerDependencies: - encoding - - mocha - supports-color - '@covector/changelog@0.12.0(mocha@10.8.2)': + '@covector/changelog@0.12.0': dependencies: '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) @@ -2324,16 +2323,14 @@ snapshots: unified: 9.2.2 transitivePeerDependencies: - encoding - - mocha - supports-color - '@covector/command@0.8.0(mocha@10.8.2)': + '@covector/command@0.8.0': dependencies: - '@effection/process': 2.1.4(mocha@10.8.2) + '@effection/process': 2.1.4 effection: 2.0.8(mocha@10.8.2) transitivePeerDependencies: - encoding - - mocha '@covector/files@0.8.0': dependencies: @@ -2380,8 +2377,10 @@ snapshots: dependencies: effection: 2.0.8(mocha@10.8.2) mocha: 10.8.2 + transitivePeerDependencies: + - encoding - '@effection/process@2.1.4(mocha@10.8.2)': + '@effection/process@2.1.4': dependencies: cross-spawn: 7.0.6 ctrlc-windows: 2.2.0 @@ -2389,7 +2388,6 @@ snapshots: shellwords: 0.1.1 transitivePeerDependencies: - encoding - - mocha '@effection/stream@2.0.6': dependencies: @@ -2591,99 +2589,99 @@ snapshots: '@polka/url@1.0.0-next.28': {} - '@rollup/plugin-node-resolve@16.0.1(rollup@4.38.0)': + '@rollup/plugin-node-resolve@16.0.1(rollup@4.39.0)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.38.0) + '@rollup/pluginutils': 5.1.4(rollup@4.39.0) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 resolve: 1.22.10 optionalDependencies: - rollup: 4.38.0 + rollup: 4.39.0 - '@rollup/plugin-terser@0.4.4(rollup@4.38.0)': + '@rollup/plugin-terser@0.4.4(rollup@4.39.0)': dependencies: serialize-javascript: 6.0.2 smob: 1.5.0 terser: 5.39.0 optionalDependencies: - rollup: 4.38.0 + rollup: 4.39.0 - '@rollup/plugin-typescript@12.1.2(rollup@4.38.0)(tslib@2.8.1)(typescript@5.8.2)': + '@rollup/plugin-typescript@12.1.2(rollup@4.39.0)(tslib@2.8.1)(typescript@5.8.2)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.38.0) + '@rollup/pluginutils': 5.1.4(rollup@4.39.0) resolve: 1.22.10 typescript: 5.8.2 optionalDependencies: - rollup: 4.38.0 + rollup: 4.39.0 tslib: 2.8.1 - '@rollup/pluginutils@5.1.4(rollup@4.38.0)': + '@rollup/pluginutils@5.1.4(rollup@4.39.0)': dependencies: '@types/estree': 1.0.7 estree-walker: 2.0.2 picomatch: 4.0.2 optionalDependencies: - rollup: 4.38.0 + rollup: 4.39.0 - '@rollup/rollup-android-arm-eabi@4.38.0': + '@rollup/rollup-android-arm-eabi@4.39.0': optional: true - '@rollup/rollup-android-arm64@4.38.0': + '@rollup/rollup-android-arm64@4.39.0': optional: true - '@rollup/rollup-darwin-arm64@4.38.0': + '@rollup/rollup-darwin-arm64@4.39.0': optional: true - '@rollup/rollup-darwin-x64@4.38.0': + '@rollup/rollup-darwin-x64@4.39.0': optional: true - '@rollup/rollup-freebsd-arm64@4.38.0': + '@rollup/rollup-freebsd-arm64@4.39.0': optional: true - '@rollup/rollup-freebsd-x64@4.38.0': + '@rollup/rollup-freebsd-x64@4.39.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.38.0': + '@rollup/rollup-linux-arm-gnueabihf@4.39.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.38.0': + '@rollup/rollup-linux-arm-musleabihf@4.39.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.38.0': + '@rollup/rollup-linux-arm64-gnu@4.39.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.38.0': + '@rollup/rollup-linux-arm64-musl@4.39.0': optional: true - '@rollup/rollup-linux-loongarch64-gnu@4.38.0': + '@rollup/rollup-linux-loongarch64-gnu@4.39.0': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.38.0': + '@rollup/rollup-linux-powerpc64le-gnu@4.39.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.38.0': + '@rollup/rollup-linux-riscv64-gnu@4.39.0': optional: true - '@rollup/rollup-linux-riscv64-musl@4.38.0': + '@rollup/rollup-linux-riscv64-musl@4.39.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.38.0': + '@rollup/rollup-linux-s390x-gnu@4.39.0': optional: true - '@rollup/rollup-linux-x64-gnu@4.38.0': + '@rollup/rollup-linux-x64-gnu@4.39.0': optional: true - '@rollup/rollup-linux-x64-musl@4.38.0': + '@rollup/rollup-linux-x64-musl@4.39.0': optional: true - '@rollup/rollup-win32-arm64-msvc@4.38.0': + '@rollup/rollup-win32-arm64-msvc@4.39.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.38.0': + '@rollup/rollup-win32-ia32-msvc@4.39.0': optional: true - '@rollup/rollup-win32-x64-msvc@4.38.0': + '@rollup/rollup-win32-x64-msvc@4.39.0': optional: true '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.4)(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2)))(svelte@5.20.4)(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))': @@ -3188,9 +3186,9 @@ snapshots: dependencies: '@clack/prompts': 0.7.0 '@covector/apply': 0.10.0(mocha@10.8.2) - '@covector/assemble': 0.12.0(mocha@10.8.2) - '@covector/changelog': 0.12.0(mocha@10.8.2) - '@covector/command': 0.8.0(mocha@10.8.2) + '@covector/assemble': 0.12.0 + '@covector/changelog': 0.12.0 + '@covector/command': 0.8.0 '@covector/files': 0.8.0 effection: 2.0.8(mocha@10.8.2) globby: 11.1.0 @@ -3879,30 +3877,30 @@ snapshots: reusify@1.1.0: {} - rollup@4.38.0: + rollup@4.39.0: dependencies: '@types/estree': 1.0.7 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.38.0 - '@rollup/rollup-android-arm64': 4.38.0 - '@rollup/rollup-darwin-arm64': 4.38.0 - '@rollup/rollup-darwin-x64': 4.38.0 - '@rollup/rollup-freebsd-arm64': 4.38.0 - '@rollup/rollup-freebsd-x64': 4.38.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.38.0 - '@rollup/rollup-linux-arm-musleabihf': 4.38.0 - '@rollup/rollup-linux-arm64-gnu': 4.38.0 - '@rollup/rollup-linux-arm64-musl': 4.38.0 - '@rollup/rollup-linux-loongarch64-gnu': 4.38.0 - '@rollup/rollup-linux-powerpc64le-gnu': 4.38.0 - '@rollup/rollup-linux-riscv64-gnu': 4.38.0 - '@rollup/rollup-linux-riscv64-musl': 4.38.0 - '@rollup/rollup-linux-s390x-gnu': 4.38.0 - '@rollup/rollup-linux-x64-gnu': 4.38.0 - '@rollup/rollup-linux-x64-musl': 4.38.0 - '@rollup/rollup-win32-arm64-msvc': 4.38.0 - '@rollup/rollup-win32-ia32-msvc': 4.38.0 - '@rollup/rollup-win32-x64-msvc': 4.38.0 + '@rollup/rollup-android-arm-eabi': 4.39.0 + '@rollup/rollup-android-arm64': 4.39.0 + '@rollup/rollup-darwin-arm64': 4.39.0 + '@rollup/rollup-darwin-x64': 4.39.0 + '@rollup/rollup-freebsd-arm64': 4.39.0 + '@rollup/rollup-freebsd-x64': 4.39.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.39.0 + '@rollup/rollup-linux-arm-musleabihf': 4.39.0 + '@rollup/rollup-linux-arm64-gnu': 4.39.0 + '@rollup/rollup-linux-arm64-musl': 4.39.0 + '@rollup/rollup-linux-loongarch64-gnu': 4.39.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.39.0 + '@rollup/rollup-linux-riscv64-gnu': 4.39.0 + '@rollup/rollup-linux-riscv64-musl': 4.39.0 + '@rollup/rollup-linux-s390x-gnu': 4.39.0 + '@rollup/rollup-linux-x64-gnu': 4.39.0 + '@rollup/rollup-linux-x64-musl': 4.39.0 + '@rollup/rollup-win32-arm64-msvc': 4.39.0 + '@rollup/rollup-win32-ia32-msvc': 4.39.0 + '@rollup/rollup-win32-x64-msvc': 4.39.0 fsevents: 2.3.3 run-parallel@1.2.0: @@ -4139,7 +4137,7 @@ snapshots: dependencies: esbuild: 0.25.2 postcss: 8.5.3 - rollup: 4.38.0 + rollup: 4.39.0 optionalDependencies: fsevents: 2.3.3 jiti: 2.4.2 From 20770a96ae645d9fc03f88afa6edd73336e1c2e8 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 5 Apr 2025 10:05:19 +0800 Subject: [PATCH 77/80] chore(deps): update dependency typescript to v5.8.3 (#2597) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 112 ++++++++++++++++++++++++------------------------- 2 files changed, 57 insertions(+), 57 deletions(-) diff --git a/package.json b/package.json index b3ec7baa..f27bf2e7 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "prettier": "3.5.3", "rollup": "4.39.0", "tslib": "2.8.1", - "typescript": "5.8.2", + "typescript": "5.8.3", "typescript-eslint": "8.29.0" }, "pnpm": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a1ae9bee..50fc6335 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -22,7 +22,7 @@ importers: version: 0.4.4(rollup@4.39.0) '@rollup/plugin-typescript': specifier: 12.1.2 - version: 12.1.2(rollup@4.39.0)(tslib@2.8.1)(typescript@5.8.2) + version: 12.1.2(rollup@4.39.0)(tslib@2.8.1)(typescript@5.8.3) covector: specifier: ^0.12.4 version: 0.12.4(mocha@10.8.2) @@ -45,11 +45,11 @@ importers: specifier: 2.8.1 version: 2.8.1 typescript: - specifier: 5.8.2 - version: 5.8.2 + specifier: 5.8.3 + version: 5.8.3 typescript-eslint: specifier: 8.29.0 - version: 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + version: 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3) examples/api: dependencies: @@ -134,7 +134,7 @@ importers: version: 5.20.4 unocss: specifier: ^66.0.0 - version: 66.0.0(postcss@8.5.3)(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) + version: 66.0.0(postcss@8.5.3)(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.3)) vite: specifier: ^6.2.0 version: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) @@ -189,7 +189,7 @@ importers: version: 2.4.1 typescript: specifier: ^5.7.3 - version: 5.8.2 + version: 5.8.3 vite: specifier: ^6.2.0 version: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) @@ -303,7 +303,7 @@ importers: version: 2.4.1 typescript: specifier: ^5.7.3 - version: 5.8.2 + version: 5.8.3 vite: specifier: ^6.2.0 version: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) @@ -343,7 +343,7 @@ importers: version: 2.4.1 typescript: specifier: ^5.7.3 - version: 5.8.2 + version: 5.8.3 vite: specifier: ^6.2.0 version: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) @@ -2076,8 +2076,8 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - typescript@5.8.2: - resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==} + typescript@5.8.3: + resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} engines: {node: '>=14.17'} hasBin: true @@ -2607,11 +2607,11 @@ snapshots: optionalDependencies: rollup: 4.39.0 - '@rollup/plugin-typescript@12.1.2(rollup@4.39.0)(tslib@2.8.1)(typescript@5.8.2)': + '@rollup/plugin-typescript@12.1.2(rollup@4.39.0)(tslib@2.8.1)(typescript@5.8.3)': dependencies: '@rollup/pluginutils': 5.1.4(rollup@4.39.0) resolve: 1.22.10 - typescript: 5.8.2 + typescript: 5.8.3 optionalDependencies: rollup: 4.39.0 tslib: 2.8.1 @@ -2767,32 +2767,32 @@ snapshots: '@types/unist@2.0.11': {} - '@typescript-eslint/eslint-plugin@8.29.0(@typescript-eslint/parser@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/eslint-plugin@8.29.0(@typescript-eslint/parser@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/parser': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3) '@typescript-eslint/scope-manager': 8.29.0 - '@typescript-eslint/type-utils': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/utils': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/type-utils': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/utils': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3) '@typescript-eslint/visitor-keys': 8.29.0 eslint: 9.23.0(jiti@2.4.2) graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 - ts-api-utils: 2.0.1(typescript@5.8.2) - typescript: 5.8.2 + ts-api-utils: 2.0.1(typescript@5.8.3) + typescript: 5.8.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/parser@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: '@typescript-eslint/scope-manager': 8.29.0 '@typescript-eslint/types': 8.29.0 - '@typescript-eslint/typescript-estree': 8.29.0(typescript@5.8.2) + '@typescript-eslint/typescript-estree': 8.29.0(typescript@5.8.3) '@typescript-eslint/visitor-keys': 8.29.0 debug: 4.4.0(supports-color@8.1.1) eslint: 9.23.0(jiti@2.4.2) - typescript: 5.8.2 + typescript: 5.8.3 transitivePeerDependencies: - supports-color @@ -2801,20 +2801,20 @@ snapshots: '@typescript-eslint/types': 8.29.0 '@typescript-eslint/visitor-keys': 8.29.0 - '@typescript-eslint/type-utils@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/type-utils@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: - '@typescript-eslint/typescript-estree': 8.29.0(typescript@5.8.2) - '@typescript-eslint/utils': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/typescript-estree': 8.29.0(typescript@5.8.3) + '@typescript-eslint/utils': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3) debug: 4.4.0(supports-color@8.1.1) eslint: 9.23.0(jiti@2.4.2) - ts-api-utils: 2.0.1(typescript@5.8.2) - typescript: 5.8.2 + ts-api-utils: 2.0.1(typescript@5.8.3) + typescript: 5.8.3 transitivePeerDependencies: - supports-color '@typescript-eslint/types@8.29.0': {} - '@typescript-eslint/typescript-estree@8.29.0(typescript@5.8.2)': + '@typescript-eslint/typescript-estree@8.29.0(typescript@5.8.3)': dependencies: '@typescript-eslint/types': 8.29.0 '@typescript-eslint/visitor-keys': 8.29.0 @@ -2823,19 +2823,19 @@ snapshots: is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.7.1 - ts-api-utils: 2.0.1(typescript@5.8.2) - typescript: 5.8.2 + ts-api-utils: 2.0.1(typescript@5.8.3) + typescript: 5.8.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)': + '@typescript-eslint/utils@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.23.0(jiti@2.4.2)) '@typescript-eslint/scope-manager': 8.29.0 '@typescript-eslint/types': 8.29.0 - '@typescript-eslint/typescript-estree': 8.29.0(typescript@5.8.2) + '@typescript-eslint/typescript-estree': 8.29.0(typescript@5.8.3) eslint: 9.23.0(jiti@2.4.2) - typescript: 5.8.2 + typescript: 5.8.3 transitivePeerDependencies: - supports-color @@ -2844,11 +2844,11 @@ snapshots: '@typescript-eslint/types': 8.29.0 eslint-visitor-keys: 4.2.0 - '@unocss/astro@66.0.0(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': + '@unocss/astro@66.0.0(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.3))': dependencies: '@unocss/core': 66.0.0 '@unocss/reset': 66.0.0 - '@unocss/vite': 66.0.0(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) + '@unocss/vite': 66.0.0(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.3)) optionalDependencies: vite: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) transitivePeerDependencies: @@ -2883,14 +2883,14 @@ snapshots: '@unocss/extractor-svelte@66.0.0': {} - '@unocss/inspector@66.0.0(vue@3.5.13(typescript@5.8.2))': + '@unocss/inspector@66.0.0(vue@3.5.13(typescript@5.8.3))': dependencies: '@unocss/core': 66.0.0 '@unocss/rule-utils': 66.0.0 colorette: 2.0.20 gzip-size: 6.0.0 sirv: 3.0.1 - vue-flow-layout: 0.1.1(vue@3.5.13(typescript@5.8.2)) + vue-flow-layout: 0.1.1(vue@3.5.13(typescript@5.8.3)) transitivePeerDependencies: - vue @@ -2977,12 +2977,12 @@ snapshots: dependencies: '@unocss/core': 66.0.0 - '@unocss/vite@66.0.0(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2))': + '@unocss/vite@66.0.0(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.3))': dependencies: '@ampproject/remapping': 2.3.0 '@unocss/config': 66.0.0 '@unocss/core': 66.0.0 - '@unocss/inspector': 66.0.0(vue@3.5.13(typescript@5.8.2)) + '@unocss/inspector': 66.0.0(vue@3.5.13(typescript@5.8.3)) chokidar: 3.6.0 magic-string: 0.30.17 tinyglobby: 0.2.12 @@ -3037,11 +3037,11 @@ snapshots: '@vue/shared': 3.5.13 csstype: 3.1.3 - '@vue/server-renderer@3.5.13(vue@3.5.13(typescript@5.8.2))': + '@vue/server-renderer@3.5.13(vue@3.5.13(typescript@5.8.3))': dependencies: '@vue/compiler-ssr': 3.5.13 '@vue/shared': 3.5.13 - vue: 3.5.13(typescript@5.8.2) + vue: 3.5.13(typescript@5.8.3) '@vue/shared@3.5.13': {} @@ -4031,9 +4031,9 @@ snapshots: trough@1.0.5: {} - ts-api-utils@2.0.1(typescript@5.8.2): + ts-api-utils@2.0.1(typescript@5.8.3): dependencies: - typescript: 5.8.2 + typescript: 5.8.3 tslib@2.8.1: {} @@ -4051,17 +4051,17 @@ snapshots: type-fest@0.7.1: {} - typescript-eslint@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2): + typescript-eslint@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3): dependencies: - '@typescript-eslint/eslint-plugin': 8.29.0(@typescript-eslint/parser@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/parser': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) - '@typescript-eslint/utils': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2) + '@typescript-eslint/eslint-plugin': 8.29.0(@typescript-eslint/parser@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/parser': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/utils': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3) eslint: 9.23.0(jiti@2.4.2) - typescript: 5.8.2 + typescript: 5.8.3 transitivePeerDependencies: - supports-color - typescript@5.8.2: {} + typescript@5.8.3: {} ufo@1.5.4: {} @@ -4085,9 +4085,9 @@ snapshots: dependencies: '@types/unist': 2.0.11 - unocss@66.0.0(postcss@8.5.3)(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)): + unocss@66.0.0(postcss@8.5.3)(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.3)): dependencies: - '@unocss/astro': 66.0.0(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) + '@unocss/astro': 66.0.0(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.3)) '@unocss/cli': 66.0.0 '@unocss/core': 66.0.0 '@unocss/postcss': 66.0.0(postcss@8.5.3) @@ -4104,7 +4104,7 @@ snapshots: '@unocss/transformer-compile-class': 66.0.0 '@unocss/transformer-directives': 66.0.0 '@unocss/transformer-variant-group': 66.0.0 - '@unocss/vite': 66.0.0(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.2)) + '@unocss/vite': 66.0.0(vite@6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2))(vue@3.5.13(typescript@5.8.3)) optionalDependencies: vite: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) transitivePeerDependencies: @@ -4148,19 +4148,19 @@ snapshots: optionalDependencies: vite: 6.2.4(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.2) - vue-flow-layout@0.1.1(vue@3.5.13(typescript@5.8.2)): + vue-flow-layout@0.1.1(vue@3.5.13(typescript@5.8.3)): dependencies: - vue: 3.5.13(typescript@5.8.2) + vue: 3.5.13(typescript@5.8.3) - vue@3.5.13(typescript@5.8.2): + vue@3.5.13(typescript@5.8.3): dependencies: '@vue/compiler-dom': 3.5.13 '@vue/compiler-sfc': 3.5.13 '@vue/runtime-dom': 3.5.13 - '@vue/server-renderer': 3.5.13(vue@3.5.13(typescript@5.8.2)) + '@vue/server-renderer': 3.5.13(vue@3.5.13(typescript@5.8.3)) '@vue/shared': 3.5.13 optionalDependencies: - typescript: 5.8.2 + typescript: 5.8.3 webidl-conversions@3.0.1: {} From 996975ce52626390bab44601cad90abd18ecde2f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 5 Apr 2025 10:06:48 +0800 Subject: [PATCH 78/80] chore(deps): bump openssl (#2595) Bumps [openssl](https://github.com/sfackler/rust-openssl) from 0.10.70 to 0.10.72. - [Release notes](https://github.com/sfackler/rust-openssl/releases) - [Commits](https://github.com/sfackler/rust-openssl/compare/openssl-v0.10.70...openssl-v0.10.72) --- updated-dependencies: - dependency-name: openssl dependency-version: 0.10.72 dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../updater/tests/updater-migration/v1-app/Cargo.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/plugins/updater/tests/updater-migration/v1-app/Cargo.lock b/plugins/updater/tests/updater-migration/v1-app/Cargo.lock index a645c196..80683ee4 100644 --- a/plugins/updater/tests/updater-migration/v1-app/Cargo.lock +++ b/plugins/updater/tests/updater-migration/v1-app/Cargo.lock @@ -1,6 +1,6 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -version = 3 +version = 4 [[package]] name = "addr2line" @@ -1822,9 +1822,9 @@ checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" [[package]] name = "openssl" -version = "0.10.70" +version = "0.10.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61cfb4e166a8bb8c9b55c500bc2308550148ece889be90f609377e58140f42c6" +checksum = "fedfea7d58a1f73118430a55da6a286e7b044961736ce96a16a17068ea25e5da" dependencies = [ "bitflags 2.6.0", "cfg-if", @@ -1854,9 +1854,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "openssl-sys" -version = "0.9.105" +version = "0.9.107" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b22d5b84be05a8d6947c7cb71f7c849aa0f112acd4bf51c2a7c1c988ac0a9dc" +checksum = "8288979acd84749c744a9014b4382d42b8f7b2592847b5afb2ed29e5d16ede07" dependencies = [ "cc", "libc", From c2fd60ab3feb1c29e197a954f4b0f8dc69dc46d3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 5 Apr 2025 10:25:56 +0800 Subject: [PATCH 79/80] chore(deps): update eslint monorepo to v9.24.0 (#2596) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 4 +-- pnpm-lock.yaml | 80 +++++++++++++++++++++++++------------------------- 2 files changed, 42 insertions(+), 42 deletions(-) diff --git a/package.json b/package.json index f27bf2e7..ad1f812b 100644 --- a/package.json +++ b/package.json @@ -11,12 +11,12 @@ "example:api:dev": "pnpm run --filter \"api\" tauri dev" }, "devDependencies": { - "@eslint/js": "9.23.0", + "@eslint/js": "9.24.0", "@rollup/plugin-node-resolve": "16.0.1", "@rollup/plugin-terser": "0.4.4", "@rollup/plugin-typescript": "12.1.2", "covector": "^0.12.4", - "eslint": "9.23.0", + "eslint": "9.24.0", "eslint-config-prettier": "10.1.1", "eslint-plugin-security": "3.0.1", "prettier": "3.5.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 50fc6335..2a70a7a0 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,8 +12,8 @@ importers: .: devDependencies: '@eslint/js': - specifier: 9.23.0 - version: 9.23.0 + specifier: 9.24.0 + version: 9.24.0 '@rollup/plugin-node-resolve': specifier: 16.0.1 version: 16.0.1(rollup@4.39.0) @@ -27,11 +27,11 @@ importers: specifier: ^0.12.4 version: 0.12.4(mocha@10.8.2) eslint: - specifier: 9.23.0 - version: 9.23.0(jiti@2.4.2) + specifier: 9.24.0 + version: 9.24.0(jiti@2.4.2) eslint-config-prettier: specifier: 10.1.1 - version: 10.1.1(eslint@9.23.0(jiti@2.4.2)) + version: 10.1.1(eslint@9.24.0(jiti@2.4.2)) eslint-plugin-security: specifier: 3.0.1 version: 3.0.1 @@ -49,7 +49,7 @@ importers: version: 5.8.3 typescript-eslint: specifier: 8.29.0 - version: 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3) + version: 8.29.0(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3) examples/api: dependencies: @@ -603,8 +603,8 @@ packages: resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/config-array@0.19.2': - resolution: {integrity: sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==} + '@eslint/config-array@0.20.0': + resolution: {integrity: sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/config-helpers@0.2.0': @@ -619,8 +619,8 @@ packages: resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/js@9.23.0': - resolution: {integrity: sha512-35MJ8vCPU0ZMxo7zfev2pypqTwWTofFZO6m4KAtdoFhRpLJUpHTZZ+KB3C7Hb1d7bULYwO4lJXGCi5Se+8OMbw==} + '@eslint/js@9.24.0': + resolution: {integrity: sha512-uIY/y3z0uvOGX8cp1C2fiC4+ZmBhp6yZWkojtHL1YEMnRt1Y63HB9TM17proGEmeG7HeUY+UP36F0aknKYTpYA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/object-schema@2.1.6': @@ -1366,8 +1366,8 @@ packages: resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@9.23.0: - resolution: {integrity: sha512-jV7AbNoFPAY1EkFYpLq5bslU9NLNO8xnEeQXwErNibVryjk67wHVmddTBilc5srIttJDBrB0eMHKZBFbSIABCw==} + eslint@9.24.0: + resolution: {integrity: sha512-eh/jxIEJyZrvbWRe4XuVclLPDYSYYYgLy5zXGGxD6j8zjSAxFEzI2fL/8xNq6O2yKqVt+eF2YhV+hxjV6UKXwQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: @@ -2473,14 +2473,14 @@ snapshots: '@esbuild/win32-x64@0.25.2': optional: true - '@eslint-community/eslint-utils@4.4.1(eslint@9.23.0(jiti@2.4.2))': + '@eslint-community/eslint-utils@4.4.1(eslint@9.24.0(jiti@2.4.2))': dependencies: - eslint: 9.23.0(jiti@2.4.2) + eslint: 9.24.0(jiti@2.4.2) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.1': {} - '@eslint/config-array@0.19.2': + '@eslint/config-array@0.20.0': dependencies: '@eslint/object-schema': 2.1.6 debug: 4.4.0(supports-color@8.1.1) @@ -2508,7 +2508,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@9.23.0': {} + '@eslint/js@9.24.0': {} '@eslint/object-schema@2.1.6': {} @@ -2767,15 +2767,15 @@ snapshots: '@types/unist@2.0.11': {} - '@typescript-eslint/eslint-plugin@8.29.0(@typescript-eslint/parser@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3)': + '@typescript-eslint/eslint-plugin@8.29.0(@typescript-eslint/parser@8.29.0(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/parser': 8.29.0(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3) '@typescript-eslint/scope-manager': 8.29.0 - '@typescript-eslint/type-utils': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3) - '@typescript-eslint/utils': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/type-utils': 8.29.0(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/utils': 8.29.0(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3) '@typescript-eslint/visitor-keys': 8.29.0 - eslint: 9.23.0(jiti@2.4.2) + eslint: 9.24.0(jiti@2.4.2) graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 @@ -2784,14 +2784,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3)': + '@typescript-eslint/parser@8.29.0(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: '@typescript-eslint/scope-manager': 8.29.0 '@typescript-eslint/types': 8.29.0 '@typescript-eslint/typescript-estree': 8.29.0(typescript@5.8.3) '@typescript-eslint/visitor-keys': 8.29.0 debug: 4.4.0(supports-color@8.1.1) - eslint: 9.23.0(jiti@2.4.2) + eslint: 9.24.0(jiti@2.4.2) typescript: 5.8.3 transitivePeerDependencies: - supports-color @@ -2801,12 +2801,12 @@ snapshots: '@typescript-eslint/types': 8.29.0 '@typescript-eslint/visitor-keys': 8.29.0 - '@typescript-eslint/type-utils@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3)': + '@typescript-eslint/type-utils@8.29.0(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: '@typescript-eslint/typescript-estree': 8.29.0(typescript@5.8.3) - '@typescript-eslint/utils': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/utils': 8.29.0(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3) debug: 4.4.0(supports-color@8.1.1) - eslint: 9.23.0(jiti@2.4.2) + eslint: 9.24.0(jiti@2.4.2) ts-api-utils: 2.0.1(typescript@5.8.3) typescript: 5.8.3 transitivePeerDependencies: @@ -2828,13 +2828,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3)': + '@typescript-eslint/utils@8.29.0(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@9.23.0(jiti@2.4.2)) + '@eslint-community/eslint-utils': 4.4.1(eslint@9.24.0(jiti@2.4.2)) '@typescript-eslint/scope-manager': 8.29.0 '@typescript-eslint/types': 8.29.0 '@typescript-eslint/typescript-estree': 8.29.0(typescript@5.8.3) - eslint: 9.23.0(jiti@2.4.2) + eslint: 9.24.0(jiti@2.4.2) typescript: 5.8.3 transitivePeerDependencies: - supports-color @@ -3297,9 +3297,9 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-config-prettier@10.1.1(eslint@9.23.0(jiti@2.4.2)): + eslint-config-prettier@10.1.1(eslint@9.24.0(jiti@2.4.2)): dependencies: - eslint: 9.23.0(jiti@2.4.2) + eslint: 9.24.0(jiti@2.4.2) eslint-plugin-security@3.0.1: dependencies: @@ -3314,15 +3314,15 @@ snapshots: eslint-visitor-keys@4.2.0: {} - eslint@9.23.0(jiti@2.4.2): + eslint@9.24.0(jiti@2.4.2): dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@9.23.0(jiti@2.4.2)) + '@eslint-community/eslint-utils': 4.4.1(eslint@9.24.0(jiti@2.4.2)) '@eslint-community/regexpp': 4.12.1 - '@eslint/config-array': 0.19.2 + '@eslint/config-array': 0.20.0 '@eslint/config-helpers': 0.2.0 '@eslint/core': 0.12.0 '@eslint/eslintrc': 3.3.1 - '@eslint/js': 9.23.0 + '@eslint/js': 9.24.0 '@eslint/plugin-kit': 0.2.7 '@humanfs/node': 0.16.6 '@humanwhocodes/module-importer': 1.0.1 @@ -4051,12 +4051,12 @@ snapshots: type-fest@0.7.1: {} - typescript-eslint@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3): + typescript-eslint@8.29.0(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3): dependencies: - '@typescript-eslint/eslint-plugin': 8.29.0(@typescript-eslint/parser@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3) - '@typescript-eslint/parser': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3) - '@typescript-eslint/utils': 8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.3) - eslint: 9.23.0(jiti@2.4.2) + '@typescript-eslint/eslint-plugin': 8.29.0(@typescript-eslint/parser@8.29.0(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/parser': 8.29.0(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/utils': 8.29.0(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3) + eslint: 9.24.0(jiti@2.4.2) typescript: 5.8.3 transitivePeerDependencies: - supports-color From d1609913beeb9bc4715a3406aa137a766a074414 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?East=20Monster=20=F0=9F=8D=89?= <89259667+EastMonster@users.noreply.github.com> Date: Sat, 5 Apr 2025 10:39:58 +0800 Subject: [PATCH 80/80] docs: acces -> access typo (#2599) --- plugins/fs/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/fs/Cargo.toml b/plugins/fs/Cargo.toml index 4015d76d..2335af72 100644 --- a/plugins/fs/Cargo.toml +++ b/plugins/fs/Cargo.toml @@ -14,7 +14,7 @@ rustc-args = ["--cfg", "docsrs"] rustdoc-args = ["--cfg", "docsrs"] [package.metadata.platforms.support] -windows = { level = "full", notes = "Apps installed via MSI or NSIS in `perMachine` and `both` mode require admin permissions for write acces in `$RESOURCES` folder" } +windows = { level = "full", notes = "Apps installed via MSI or NSIS in `perMachine` and `both` mode require admin permissions for write access in `$RESOURCES` folder" } linux = { level = "full", notes = "No write access to `$RESOURCES` folder" } macos = { level = "full", notes = "No write access to `$RESOURCES` folder" } android = { level = "partial", notes = "Access is restricted to Application folder by default" }