Compare commits

..

13 Commits

Author SHA1 Message Date
github-actions[bot] 815a7073bc Publish New Versions (v2) (#1116)
Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
2024-04-02 18:57:12 -03:00
Lucas Fernandes Nogueira 772f2bc349 chore: bump tauri to 2.0.0-beta.14 (#1136)
* chore: bump tauri

* pin tauri, change file
2024-04-02 18:31:15 -03:00
thewh1teagle c013fa52cd refactor(window-state)!: use json instead of bincode (#1078)
* feat(window-state): add option to use json

* feat(window-state): change state file from bincode to serdejson

* change file

* fmt
2024-03-29 02:41:42 +02:00
Tony 57d01bf82e chore(updater): clean up dependencies (#1084)
* Clean up updater dependencies

* Zip is in the dependencies already
2024-03-28 04:41:34 +02:00
Vitor Ayres 7be37b1909 v2: fix import path in plugin upload readme (#1122) 2024-03-28 03:03:32 +02:00
Wito dabac0eedf feat(single-instance): add MacOs unix domain socket impl (#1035)
* feat(single-instance): add macos implementation

* chore(single-instance): test MacOs by adding CLI to example

* feat(single-instance): simplify macOS implementation

* chore(single-instance): address remarks
2024-03-28 00:34:33 +01:00
venkr a2339195aa fix(autostart): Fix LaunchAgent macOS autostart (#1118)
* Fix LaunchAgent macOS autostart

* Add .changes
2024-03-26 19:01:57 +01:00
Tahmin Ahmed 4cd81126fd fix(dialog): open function return mismatch (#1056)
* Implemented conversion of URI to a file path

* Added relevant .changes file
2024-03-26 17:00:25 +02:00
Alixxx-please fc3667db6a "recusrive" typo fix (#1103)
* Update app.toml

* Update appcache.toml

* Update appconfig.toml

* Update appdata.toml

* Update applocaldata.toml

* Update applog.toml

* Update audio.toml

* Update cache.toml

* Update config.toml

* Update data.toml

* Update desktop.toml

* Update document.toml

* Update download.toml

* Update exe.toml

* Update font.toml

* Update home.toml

* Update localdata.toml

* Update log.toml

* Update picture.toml

* Update public.toml

* Update resource.toml

* Update runtime.toml

* Update temp.toml

* Update template.toml

* Update video.toml

* actually update build script :)

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2024-03-26 11:37:13 -03:00
Amr Bashir f39d362add feat(fs): enhance scope config to accept string as well (#1053)
* feat(fs): enhance scope config to accept string as well

* clippy

* Update protocol.rs

* regression resolving path variables

* add change file

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2024-03-26 11:37:03 -03:00
Lucas Nogueira fe4ad4dd5c Revert "add change file"
This reverts commit 9c2fb9306e.
2024-03-26 11:27:38 -03:00
Lucas Nogueira 9c2fb9306e add change file 2024-03-26 11:26:38 -03:00
Fabian-Lars bb836b2440 ci: Rename covector working branch to ci/release-v2 2024-03-21 15:32:10 +01:00
73 changed files with 1119 additions and 560 deletions
+5
View File
@@ -0,0 +1,5 @@
---
"dialog": "patch"
---
Fixed an issue where dialogs on android would return the Content URI instead of the file path
+5
View File
@@ -0,0 +1,5 @@
---
"fs": patch
---
Enhance the scope type to also allow a plain string representing the path to allow or deny.
+5
View File
@@ -0,0 +1,5 @@
---
"autostart": patch
---
Fix LaunchAgent-based autostart for macOS.
+7 -1
View File
@@ -8,8 +8,11 @@
".changes/dialog-can-create-directories.md",
".changes/dialog-linux-freeze.md",
".changes/dialog-main-thread.md",
".changes/dialog-path-return-mismatch.md",
".changes/enhance-fs-scope-type.md",
".changes/enhance-http-scope.md",
".changes/file-autogen-fix.md",
".changes/fix-autolaunch-macos.md",
".changes/fix-fs-watcher-basedir.md",
".changes/fix-http-scope-url-match.md",
".changes/fix-shutdown-timing.md",
@@ -26,8 +29,11 @@
".changes/public-with-store.md",
".changes/shell-fix-schema-command-property-name.md",
".changes/shell-shellexcute.md",
".changes/single-instance.macos.md",
".changes/tauri-beta-14.md",
".changes/tauri-beta-4.md",
".changes/tauri-beta-8.md",
".changes/tauri-beta-9.md"
".changes/tauri-beta-9.md",
".changes/window-state-json.md"
]
}
+5
View File
@@ -0,0 +1,5 @@
---
"single-instance": patch
---
Added implementation for MacOS.
+5
View File
@@ -0,0 +1,5 @@
---
"fs": patch
---
Update for tauri 2.0.0-beta.14.
+5
View File
@@ -0,0 +1,5 @@
---
"window-state": patch
---
**Breaking change**: Changed the format of the state file from bincode to json. Also changed the filename to from `.window-state` to `.window-state.json`.
@@ -71,5 +71,5 @@ jobs:
title: "Publish New Versions (v2)"
commit-message: "publish new versions"
labels: "version updates"
branch: "release-v2"
branch: "ci/release-v2"
body: ${{ steps.covector.outputs.change }}
Generated
+260 -238
View File
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -10,9 +10,9 @@ resolver = "2"
[workspace.dependencies]
serde = { version = "1", features = ["derive"] }
log = "0.4"
tauri = "2.0.0-beta.12"
tauri-build = "2.0.0-beta.10"
tauri-plugin = "2.0.0-beta.10"
tauri = "2.0.0-beta.14"
tauri-build = "2.0.0-beta.11"
tauri-plugin = "2.0.0-beta.11"
serde_json = "1"
thiserror = "1"
url = "2"
+8
View File
@@ -1,5 +1,13 @@
# Changelog
## \[2.0.0-beta.4]
### Dependencies
- Upgraded to `dialog@2.0.0-beta.4`
- Upgraded to `fs@2.0.0-beta.4`
- Upgraded to `http@2.0.0-beta.4`
## \[2.0.0-beta.3]
### Dependencies
+4 -4
View File
@@ -1,7 +1,7 @@
[package]
name = "api"
publish = false
version = "2.0.0-beta.3"
version = "2.0.0-beta.4"
description = "An example Tauri Application showcasing the api"
edition = "2021"
rust-version = { workspace = true }
@@ -20,10 +20,10 @@ serde = { workspace = true }
tiny_http = "0.11"
log = { workspace = true }
tauri-plugin-log = { path = "../../../plugins/log", version = "2.0.0-beta.3" }
tauri-plugin-fs = { path = "../../../plugins/fs", version = "2.0.0-beta.3", features = [ "watch" ] }
tauri-plugin-fs = { path = "../../../plugins/fs", version = "2.0.0-beta.4", features = [ "watch" ] }
tauri-plugin-clipboard-manager = { path = "../../../plugins/clipboard-manager", version = "2.1.0-beta.0" }
tauri-plugin-dialog = { path = "../../../plugins/dialog", version = "2.0.0-beta.3" }
tauri-plugin-http = { path = "../../../plugins/http", features = [ "multipart" ], version = "2.0.0-beta.3" }
tauri-plugin-dialog = { path = "../../../plugins/dialog", version = "2.0.0-beta.4" }
tauri-plugin-http = { path = "../../../plugins/http", features = [ "multipart" ], version = "2.0.0-beta.4" }
tauri-plugin-notification = { path = "../../../plugins/notification", version = "2.0.0-beta.3", features = [ "windows7-compat" ] }
tauri-plugin-os = { path = "../../../plugins/os", version = "2.0.0-beta.3" }
tauri-plugin-process = { path = "../../../plugins/process", version = "2.0.0-beta.3" }
@@ -8,6 +8,7 @@
{
"identifier": "http:default",
"allow": [
"https://tauri.app",
{
"url": "http://localhost:3003"
}
@@ -72,11 +73,7 @@
"path": "$APPDATA/db/**"
}
],
"deny": [
{
"path": "$APPDATA/db/*.stronghold"
}
]
"deny": ["$APPDATA/db/*.stronghold"]
}
]
}
@@ -184,7 +184,7 @@
]
},
{
"description": "fs:allow-app-write-recursive -> This allows full recusrive write access to the complete `$APP` folder, files and subdirectories.",
"description": "fs:allow-app-write-recursive -> This allows full recursive write access to the complete `$APP` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-app-write-recursive"
@@ -226,7 +226,7 @@
]
},
{
"description": "fs:allow-appcache-write-recursive -> This allows full recusrive write access to the complete `$APPCACHE` folder, files and subdirectories.",
"description": "fs:allow-appcache-write-recursive -> This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-appcache-write-recursive"
@@ -268,7 +268,7 @@
]
},
{
"description": "fs:allow-appconfig-write-recursive -> This allows full recusrive write access to the complete `$APPCONFIG` folder, files and subdirectories.",
"description": "fs:allow-appconfig-write-recursive -> This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-appconfig-write-recursive"
@@ -310,7 +310,7 @@
]
},
{
"description": "fs:allow-appdata-write-recursive -> This allows full recusrive write access to the complete `$APPDATA` folder, files and subdirectories.",
"description": "fs:allow-appdata-write-recursive -> This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-appdata-write-recursive"
@@ -352,7 +352,7 @@
]
},
{
"description": "fs:allow-applocaldata-write-recursive -> This allows full recusrive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.",
"description": "fs:allow-applocaldata-write-recursive -> This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-applocaldata-write-recursive"
@@ -394,7 +394,7 @@
]
},
{
"description": "fs:allow-applog-write-recursive -> This allows full recusrive write access to the complete `$APPLOG` folder, files and subdirectories.",
"description": "fs:allow-applog-write-recursive -> This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-applog-write-recursive"
@@ -436,7 +436,7 @@
]
},
{
"description": "fs:allow-audio-write-recursive -> This allows full recusrive write access to the complete `$AUDIO` folder, files and subdirectories.",
"description": "fs:allow-audio-write-recursive -> This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-audio-write-recursive"
@@ -478,7 +478,7 @@
]
},
{
"description": "fs:allow-cache-write-recursive -> This allows full recusrive write access to the complete `$CACHE` folder, files and subdirectories.",
"description": "fs:allow-cache-write-recursive -> This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-cache-write-recursive"
@@ -520,7 +520,7 @@
]
},
{
"description": "fs:allow-config-write-recursive -> This allows full recusrive write access to the complete `$CONFIG` folder, files and subdirectories.",
"description": "fs:allow-config-write-recursive -> This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-config-write-recursive"
@@ -562,7 +562,7 @@
]
},
{
"description": "fs:allow-data-write-recursive -> This allows full recusrive write access to the complete `$DATA` folder, files and subdirectories.",
"description": "fs:allow-data-write-recursive -> This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-data-write-recursive"
@@ -604,7 +604,7 @@
]
},
{
"description": "fs:allow-desktop-write-recursive -> This allows full recusrive write access to the complete `$DESKTOP` folder, files and subdirectories.",
"description": "fs:allow-desktop-write-recursive -> This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-desktop-write-recursive"
@@ -646,7 +646,7 @@
]
},
{
"description": "fs:allow-document-write-recursive -> This allows full recusrive write access to the complete `$DOCUMENT` folder, files and subdirectories.",
"description": "fs:allow-document-write-recursive -> This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-document-write-recursive"
@@ -688,7 +688,7 @@
]
},
{
"description": "fs:allow-download-write-recursive -> This allows full recusrive write access to the complete `$DOWNLOAD` folder, files and subdirectories.",
"description": "fs:allow-download-write-recursive -> This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-download-write-recursive"
@@ -730,7 +730,7 @@
]
},
{
"description": "fs:allow-exe-write-recursive -> This allows full recusrive write access to the complete `$EXE` folder, files and subdirectories.",
"description": "fs:allow-exe-write-recursive -> This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-exe-write-recursive"
@@ -772,7 +772,7 @@
]
},
{
"description": "fs:allow-font-write-recursive -> This allows full recusrive write access to the complete `$FONT` folder, files and subdirectories.",
"description": "fs:allow-font-write-recursive -> This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-font-write-recursive"
@@ -814,7 +814,7 @@
]
},
{
"description": "fs:allow-home-write-recursive -> This allows full recusrive write access to the complete `$HOME` folder, files and subdirectories.",
"description": "fs:allow-home-write-recursive -> This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-home-write-recursive"
@@ -856,7 +856,7 @@
]
},
{
"description": "fs:allow-localdata-write-recursive -> This allows full recusrive write access to the complete `$LOCALDATA` folder, files and subdirectories.",
"description": "fs:allow-localdata-write-recursive -> This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-localdata-write-recursive"
@@ -898,7 +898,7 @@
]
},
{
"description": "fs:allow-log-write-recursive -> This allows full recusrive write access to the complete `$LOG` folder, files and subdirectories.",
"description": "fs:allow-log-write-recursive -> This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-log-write-recursive"
@@ -940,7 +940,7 @@
]
},
{
"description": "fs:allow-picture-write-recursive -> This allows full recusrive write access to the complete `$PICTURE` folder, files and subdirectories.",
"description": "fs:allow-picture-write-recursive -> This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-picture-write-recursive"
@@ -982,7 +982,7 @@
]
},
{
"description": "fs:allow-public-write-recursive -> This allows full recusrive write access to the complete `$PUBLIC` folder, files and subdirectories.",
"description": "fs:allow-public-write-recursive -> This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-public-write-recursive"
@@ -1024,7 +1024,7 @@
]
},
{
"description": "fs:allow-resource-write-recursive -> This allows full recusrive write access to the complete `$RESOURCE` folder, files and subdirectories.",
"description": "fs:allow-resource-write-recursive -> This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-resource-write-recursive"
@@ -1066,7 +1066,7 @@
]
},
{
"description": "fs:allow-runtime-write-recursive -> This allows full recusrive write access to the complete `$RUNTIME` folder, files and subdirectories.",
"description": "fs:allow-runtime-write-recursive -> This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-runtime-write-recursive"
@@ -1108,7 +1108,7 @@
]
},
{
"description": "fs:allow-temp-write-recursive -> This allows full recusrive write access to the complete `$TEMP` folder, files and subdirectories.",
"description": "fs:allow-temp-write-recursive -> This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-temp-write-recursive"
@@ -1150,7 +1150,7 @@
]
},
{
"description": "fs:allow-template-write-recursive -> This allows full recusrive write access to the complete `$TEMPLATE` folder, files and subdirectories.",
"description": "fs:allow-template-write-recursive -> This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-template-write-recursive"
@@ -1192,7 +1192,7 @@
]
},
{
"description": "fs:allow-video-write-recursive -> This allows full recusrive write access to the complete `$VIDEO` folder, files and subdirectories.",
"description": "fs:allow-video-write-recursive -> This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-video-write-recursive"
@@ -2133,30 +2133,50 @@
},
"allow": {
"items": {
"title": "Entry",
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"title": "FsScopeEntry",
"description": "FS scope entry.",
"anyOf": [
{
"description": "FS scope path.",
"type": "string"
},
{
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"description": "FS scope path.",
"type": "string"
}
}
}
}
]
}
},
"deny": {
"items": {
"title": "Entry",
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"title": "FsScopeEntry",
"description": "FS scope entry.",
"anyOf": [
{
"description": "FS scope path.",
"type": "string"
},
{
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"description": "FS scope path.",
"type": "string"
}
}
}
}
]
}
}
}
@@ -2236,8 +2256,8 @@
},
"allow": {
"items": {
"title": "ScopeEntry",
"description": "HTTP scope entry object definition.",
"title": "HttpScopeEntry",
"description": "HTTP scope entry.",
"anyOf": [
{
"description": "A URL that can be accessed by the webview when using the HTTP APIs. Wildcards can be used following the URL pattern standard.\n\nSee [the URL Pattern spec](https://urlpattern.spec.whatwg.org/) for more information.\n\nExamples:\n\n- \"https://*\" : allows all HTTPS origin on port 443\n\n- \"https://*:*\" : allows all HTTPS origin on any port\n\n- \"https://*.github.com/tauri-apps/tauri\": allows any subdomain of \"github.com\" with the \"tauri-apps/api\" path\n\n- \"https://myapi.service.com/users/*\": allows access to any URLs that begins with \"https://myapi.service.com/users/\"",
@@ -2260,8 +2280,8 @@
},
"deny": {
"items": {
"title": "ScopeEntry",
"description": "HTTP scope entry object definition.",
"title": "HttpScopeEntry",
"description": "HTTP scope entry.",
"anyOf": [
{
"description": "A URL that can be accessed by the webview when using the HTTP APIs. Wildcards can be used following the URL pattern standard.\n\nSee [the URL Pattern spec](https://urlpattern.spec.whatwg.org/) for more information.\n\nExamples:\n\n- \"https://*\" : allows all HTTPS origin on port 443\n\n- \"https://*:*\" : allows all HTTPS origin on any port\n\n- \"https://*.github.com/tauri-apps/tauri\": allows any subdomain of \"github.com\" with the \"tauri-apps/api\" path\n\n- \"https://myapi.service.com/users/*\": allows access to any URLs that begins with \"https://myapi.service.com/users/\"",
@@ -2797,7 +2817,7 @@
]
},
{
"description": "fs:allow-app-write-recursive -> This allows full recusrive write access to the complete `$APP` folder, files and subdirectories.",
"description": "fs:allow-app-write-recursive -> This allows full recursive write access to the complete `$APP` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-app-write-recursive"
@@ -2839,7 +2859,7 @@
]
},
{
"description": "fs:allow-appcache-write-recursive -> This allows full recusrive write access to the complete `$APPCACHE` folder, files and subdirectories.",
"description": "fs:allow-appcache-write-recursive -> This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-appcache-write-recursive"
@@ -2881,7 +2901,7 @@
]
},
{
"description": "fs:allow-appconfig-write-recursive -> This allows full recusrive write access to the complete `$APPCONFIG` folder, files and subdirectories.",
"description": "fs:allow-appconfig-write-recursive -> This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-appconfig-write-recursive"
@@ -2923,7 +2943,7 @@
]
},
{
"description": "fs:allow-appdata-write-recursive -> This allows full recusrive write access to the complete `$APPDATA` folder, files and subdirectories.",
"description": "fs:allow-appdata-write-recursive -> This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-appdata-write-recursive"
@@ -2965,7 +2985,7 @@
]
},
{
"description": "fs:allow-applocaldata-write-recursive -> This allows full recusrive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.",
"description": "fs:allow-applocaldata-write-recursive -> This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-applocaldata-write-recursive"
@@ -3007,7 +3027,7 @@
]
},
{
"description": "fs:allow-applog-write-recursive -> This allows full recusrive write access to the complete `$APPLOG` folder, files and subdirectories.",
"description": "fs:allow-applog-write-recursive -> This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-applog-write-recursive"
@@ -3049,7 +3069,7 @@
]
},
{
"description": "fs:allow-audio-write-recursive -> This allows full recusrive write access to the complete `$AUDIO` folder, files and subdirectories.",
"description": "fs:allow-audio-write-recursive -> This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-audio-write-recursive"
@@ -3091,7 +3111,7 @@
]
},
{
"description": "fs:allow-cache-write-recursive -> This allows full recusrive write access to the complete `$CACHE` folder, files and subdirectories.",
"description": "fs:allow-cache-write-recursive -> This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-cache-write-recursive"
@@ -3133,7 +3153,7 @@
]
},
{
"description": "fs:allow-config-write-recursive -> This allows full recusrive write access to the complete `$CONFIG` folder, files and subdirectories.",
"description": "fs:allow-config-write-recursive -> This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-config-write-recursive"
@@ -3175,7 +3195,7 @@
]
},
{
"description": "fs:allow-data-write-recursive -> This allows full recusrive write access to the complete `$DATA` folder, files and subdirectories.",
"description": "fs:allow-data-write-recursive -> This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-data-write-recursive"
@@ -3217,7 +3237,7 @@
]
},
{
"description": "fs:allow-desktop-write-recursive -> This allows full recusrive write access to the complete `$DESKTOP` folder, files and subdirectories.",
"description": "fs:allow-desktop-write-recursive -> This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-desktop-write-recursive"
@@ -3259,7 +3279,7 @@
]
},
{
"description": "fs:allow-document-write-recursive -> This allows full recusrive write access to the complete `$DOCUMENT` folder, files and subdirectories.",
"description": "fs:allow-document-write-recursive -> This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-document-write-recursive"
@@ -3301,7 +3321,7 @@
]
},
{
"description": "fs:allow-download-write-recursive -> This allows full recusrive write access to the complete `$DOWNLOAD` folder, files and subdirectories.",
"description": "fs:allow-download-write-recursive -> This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-download-write-recursive"
@@ -3343,7 +3363,7 @@
]
},
{
"description": "fs:allow-exe-write-recursive -> This allows full recusrive write access to the complete `$EXE` folder, files and subdirectories.",
"description": "fs:allow-exe-write-recursive -> This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-exe-write-recursive"
@@ -3385,7 +3405,7 @@
]
},
{
"description": "fs:allow-font-write-recursive -> This allows full recusrive write access to the complete `$FONT` folder, files and subdirectories.",
"description": "fs:allow-font-write-recursive -> This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-font-write-recursive"
@@ -3427,7 +3447,7 @@
]
},
{
"description": "fs:allow-home-write-recursive -> This allows full recusrive write access to the complete `$HOME` folder, files and subdirectories.",
"description": "fs:allow-home-write-recursive -> This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-home-write-recursive"
@@ -3469,7 +3489,7 @@
]
},
{
"description": "fs:allow-localdata-write-recursive -> This allows full recusrive write access to the complete `$LOCALDATA` folder, files and subdirectories.",
"description": "fs:allow-localdata-write-recursive -> This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-localdata-write-recursive"
@@ -3511,7 +3531,7 @@
]
},
{
"description": "fs:allow-log-write-recursive -> This allows full recusrive write access to the complete `$LOG` folder, files and subdirectories.",
"description": "fs:allow-log-write-recursive -> This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-log-write-recursive"
@@ -3553,7 +3573,7 @@
]
},
{
"description": "fs:allow-picture-write-recursive -> This allows full recusrive write access to the complete `$PICTURE` folder, files and subdirectories.",
"description": "fs:allow-picture-write-recursive -> This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-picture-write-recursive"
@@ -3595,7 +3615,7 @@
]
},
{
"description": "fs:allow-public-write-recursive -> This allows full recusrive write access to the complete `$PUBLIC` folder, files and subdirectories.",
"description": "fs:allow-public-write-recursive -> This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-public-write-recursive"
@@ -3637,7 +3657,7 @@
]
},
{
"description": "fs:allow-resource-write-recursive -> This allows full recusrive write access to the complete `$RESOURCE` folder, files and subdirectories.",
"description": "fs:allow-resource-write-recursive -> This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-resource-write-recursive"
@@ -3679,7 +3699,7 @@
]
},
{
"description": "fs:allow-runtime-write-recursive -> This allows full recusrive write access to the complete `$RUNTIME` folder, files and subdirectories.",
"description": "fs:allow-runtime-write-recursive -> This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-runtime-write-recursive"
@@ -3721,7 +3741,7 @@
]
},
{
"description": "fs:allow-temp-write-recursive -> This allows full recusrive write access to the complete `$TEMP` folder, files and subdirectories.",
"description": "fs:allow-temp-write-recursive -> This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-temp-write-recursive"
@@ -3763,7 +3783,7 @@
]
},
{
"description": "fs:allow-template-write-recursive -> This allows full recusrive write access to the complete `$TEMPLATE` folder, files and subdirectories.",
"description": "fs:allow-template-write-recursive -> This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-template-write-recursive"
@@ -3805,7 +3825,7 @@
]
},
{
"description": "fs:allow-video-write-recursive -> This allows full recusrive write access to the complete `$VIDEO` folder, files and subdirectories.",
"description": "fs:allow-video-write-recursive -> This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-video-write-recursive"
@@ -184,7 +184,7 @@
]
},
{
"description": "fs:allow-app-write-recursive -> This allows full recusrive write access to the complete `$APP` folder, files and subdirectories.",
"description": "fs:allow-app-write-recursive -> This allows full recursive write access to the complete `$APP` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-app-write-recursive"
@@ -226,7 +226,7 @@
]
},
{
"description": "fs:allow-appcache-write-recursive -> This allows full recusrive write access to the complete `$APPCACHE` folder, files and subdirectories.",
"description": "fs:allow-appcache-write-recursive -> This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-appcache-write-recursive"
@@ -268,7 +268,7 @@
]
},
{
"description": "fs:allow-appconfig-write-recursive -> This allows full recusrive write access to the complete `$APPCONFIG` folder, files and subdirectories.",
"description": "fs:allow-appconfig-write-recursive -> This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-appconfig-write-recursive"
@@ -310,7 +310,7 @@
]
},
{
"description": "fs:allow-appdata-write-recursive -> This allows full recusrive write access to the complete `$APPDATA` folder, files and subdirectories.",
"description": "fs:allow-appdata-write-recursive -> This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-appdata-write-recursive"
@@ -352,7 +352,7 @@
]
},
{
"description": "fs:allow-applocaldata-write-recursive -> This allows full recusrive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.",
"description": "fs:allow-applocaldata-write-recursive -> This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-applocaldata-write-recursive"
@@ -394,7 +394,7 @@
]
},
{
"description": "fs:allow-applog-write-recursive -> This allows full recusrive write access to the complete `$APPLOG` folder, files and subdirectories.",
"description": "fs:allow-applog-write-recursive -> This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-applog-write-recursive"
@@ -436,7 +436,7 @@
]
},
{
"description": "fs:allow-audio-write-recursive -> This allows full recusrive write access to the complete `$AUDIO` folder, files and subdirectories.",
"description": "fs:allow-audio-write-recursive -> This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-audio-write-recursive"
@@ -478,7 +478,7 @@
]
},
{
"description": "fs:allow-cache-write-recursive -> This allows full recusrive write access to the complete `$CACHE` folder, files and subdirectories.",
"description": "fs:allow-cache-write-recursive -> This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-cache-write-recursive"
@@ -520,7 +520,7 @@
]
},
{
"description": "fs:allow-config-write-recursive -> This allows full recusrive write access to the complete `$CONFIG` folder, files and subdirectories.",
"description": "fs:allow-config-write-recursive -> This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-config-write-recursive"
@@ -562,7 +562,7 @@
]
},
{
"description": "fs:allow-data-write-recursive -> This allows full recusrive write access to the complete `$DATA` folder, files and subdirectories.",
"description": "fs:allow-data-write-recursive -> This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-data-write-recursive"
@@ -604,7 +604,7 @@
]
},
{
"description": "fs:allow-desktop-write-recursive -> This allows full recusrive write access to the complete `$DESKTOP` folder, files and subdirectories.",
"description": "fs:allow-desktop-write-recursive -> This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-desktop-write-recursive"
@@ -646,7 +646,7 @@
]
},
{
"description": "fs:allow-document-write-recursive -> This allows full recusrive write access to the complete `$DOCUMENT` folder, files and subdirectories.",
"description": "fs:allow-document-write-recursive -> This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-document-write-recursive"
@@ -688,7 +688,7 @@
]
},
{
"description": "fs:allow-download-write-recursive -> This allows full recusrive write access to the complete `$DOWNLOAD` folder, files and subdirectories.",
"description": "fs:allow-download-write-recursive -> This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-download-write-recursive"
@@ -730,7 +730,7 @@
]
},
{
"description": "fs:allow-exe-write-recursive -> This allows full recusrive write access to the complete `$EXE` folder, files and subdirectories.",
"description": "fs:allow-exe-write-recursive -> This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-exe-write-recursive"
@@ -772,7 +772,7 @@
]
},
{
"description": "fs:allow-font-write-recursive -> This allows full recusrive write access to the complete `$FONT` folder, files and subdirectories.",
"description": "fs:allow-font-write-recursive -> This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-font-write-recursive"
@@ -814,7 +814,7 @@
]
},
{
"description": "fs:allow-home-write-recursive -> This allows full recusrive write access to the complete `$HOME` folder, files and subdirectories.",
"description": "fs:allow-home-write-recursive -> This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-home-write-recursive"
@@ -856,7 +856,7 @@
]
},
{
"description": "fs:allow-localdata-write-recursive -> This allows full recusrive write access to the complete `$LOCALDATA` folder, files and subdirectories.",
"description": "fs:allow-localdata-write-recursive -> This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-localdata-write-recursive"
@@ -898,7 +898,7 @@
]
},
{
"description": "fs:allow-log-write-recursive -> This allows full recusrive write access to the complete `$LOG` folder, files and subdirectories.",
"description": "fs:allow-log-write-recursive -> This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-log-write-recursive"
@@ -940,7 +940,7 @@
]
},
{
"description": "fs:allow-picture-write-recursive -> This allows full recusrive write access to the complete `$PICTURE` folder, files and subdirectories.",
"description": "fs:allow-picture-write-recursive -> This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-picture-write-recursive"
@@ -982,7 +982,7 @@
]
},
{
"description": "fs:allow-public-write-recursive -> This allows full recusrive write access to the complete `$PUBLIC` folder, files and subdirectories.",
"description": "fs:allow-public-write-recursive -> This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-public-write-recursive"
@@ -1024,7 +1024,7 @@
]
},
{
"description": "fs:allow-resource-write-recursive -> This allows full recusrive write access to the complete `$RESOURCE` folder, files and subdirectories.",
"description": "fs:allow-resource-write-recursive -> This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-resource-write-recursive"
@@ -1066,7 +1066,7 @@
]
},
{
"description": "fs:allow-runtime-write-recursive -> This allows full recusrive write access to the complete `$RUNTIME` folder, files and subdirectories.",
"description": "fs:allow-runtime-write-recursive -> This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-runtime-write-recursive"
@@ -1108,7 +1108,7 @@
]
},
{
"description": "fs:allow-temp-write-recursive -> This allows full recusrive write access to the complete `$TEMP` folder, files and subdirectories.",
"description": "fs:allow-temp-write-recursive -> This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-temp-write-recursive"
@@ -1150,7 +1150,7 @@
]
},
{
"description": "fs:allow-template-write-recursive -> This allows full recusrive write access to the complete `$TEMPLATE` folder, files and subdirectories.",
"description": "fs:allow-template-write-recursive -> This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-template-write-recursive"
@@ -1192,7 +1192,7 @@
]
},
{
"description": "fs:allow-video-write-recursive -> This allows full recusrive write access to the complete `$VIDEO` folder, files and subdirectories.",
"description": "fs:allow-video-write-recursive -> This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-video-write-recursive"
@@ -2133,30 +2133,50 @@
},
"allow": {
"items": {
"title": "Entry",
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"title": "FsScopeEntry",
"description": "FS scope entry.",
"anyOf": [
{
"description": "FS scope path.",
"type": "string"
},
{
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"description": "FS scope path.",
"type": "string"
}
}
}
}
]
}
},
"deny": {
"items": {
"title": "Entry",
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"title": "FsScopeEntry",
"description": "FS scope entry.",
"anyOf": [
{
"description": "FS scope path.",
"type": "string"
},
{
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"description": "FS scope path.",
"type": "string"
}
}
}
}
]
}
}
}
@@ -2236,8 +2256,8 @@
},
"allow": {
"items": {
"title": "ScopeEntry",
"description": "HTTP scope entry object definition.",
"title": "HttpScopeEntry",
"description": "HTTP scope entry.",
"anyOf": [
{
"description": "A URL that can be accessed by the webview when using the HTTP APIs. Wildcards can be used following the URL pattern standard.\n\nSee [the URL Pattern spec](https://urlpattern.spec.whatwg.org/) for more information.\n\nExamples:\n\n- \"https://*\" : allows all HTTPS origin on port 443\n\n- \"https://*:*\" : allows all HTTPS origin on any port\n\n- \"https://*.github.com/tauri-apps/tauri\": allows any subdomain of \"github.com\" with the \"tauri-apps/api\" path\n\n- \"https://myapi.service.com/users/*\": allows access to any URLs that begins with \"https://myapi.service.com/users/\"",
@@ -2260,8 +2280,8 @@
},
"deny": {
"items": {
"title": "ScopeEntry",
"description": "HTTP scope entry object definition.",
"title": "HttpScopeEntry",
"description": "HTTP scope entry.",
"anyOf": [
{
"description": "A URL that can be accessed by the webview when using the HTTP APIs. Wildcards can be used following the URL pattern standard.\n\nSee [the URL Pattern spec](https://urlpattern.spec.whatwg.org/) for more information.\n\nExamples:\n\n- \"https://*\" : allows all HTTPS origin on port 443\n\n- \"https://*:*\" : allows all HTTPS origin on any port\n\n- \"https://*.github.com/tauri-apps/tauri\": allows any subdomain of \"github.com\" with the \"tauri-apps/api\" path\n\n- \"https://myapi.service.com/users/*\": allows access to any URLs that begins with \"https://myapi.service.com/users/\"",
@@ -2900,7 +2920,7 @@
]
},
{
"description": "fs:allow-app-write-recursive -> This allows full recusrive write access to the complete `$APP` folder, files and subdirectories.",
"description": "fs:allow-app-write-recursive -> This allows full recursive write access to the complete `$APP` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-app-write-recursive"
@@ -2942,7 +2962,7 @@
]
},
{
"description": "fs:allow-appcache-write-recursive -> This allows full recusrive write access to the complete `$APPCACHE` folder, files and subdirectories.",
"description": "fs:allow-appcache-write-recursive -> This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-appcache-write-recursive"
@@ -2984,7 +3004,7 @@
]
},
{
"description": "fs:allow-appconfig-write-recursive -> This allows full recusrive write access to the complete `$APPCONFIG` folder, files and subdirectories.",
"description": "fs:allow-appconfig-write-recursive -> This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-appconfig-write-recursive"
@@ -3026,7 +3046,7 @@
]
},
{
"description": "fs:allow-appdata-write-recursive -> This allows full recusrive write access to the complete `$APPDATA` folder, files and subdirectories.",
"description": "fs:allow-appdata-write-recursive -> This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-appdata-write-recursive"
@@ -3068,7 +3088,7 @@
]
},
{
"description": "fs:allow-applocaldata-write-recursive -> This allows full recusrive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.",
"description": "fs:allow-applocaldata-write-recursive -> This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-applocaldata-write-recursive"
@@ -3110,7 +3130,7 @@
]
},
{
"description": "fs:allow-applog-write-recursive -> This allows full recusrive write access to the complete `$APPLOG` folder, files and subdirectories.",
"description": "fs:allow-applog-write-recursive -> This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-applog-write-recursive"
@@ -3152,7 +3172,7 @@
]
},
{
"description": "fs:allow-audio-write-recursive -> This allows full recusrive write access to the complete `$AUDIO` folder, files and subdirectories.",
"description": "fs:allow-audio-write-recursive -> This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-audio-write-recursive"
@@ -3194,7 +3214,7 @@
]
},
{
"description": "fs:allow-cache-write-recursive -> This allows full recusrive write access to the complete `$CACHE` folder, files and subdirectories.",
"description": "fs:allow-cache-write-recursive -> This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-cache-write-recursive"
@@ -3236,7 +3256,7 @@
]
},
{
"description": "fs:allow-config-write-recursive -> This allows full recusrive write access to the complete `$CONFIG` folder, files and subdirectories.",
"description": "fs:allow-config-write-recursive -> This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-config-write-recursive"
@@ -3278,7 +3298,7 @@
]
},
{
"description": "fs:allow-data-write-recursive -> This allows full recusrive write access to the complete `$DATA` folder, files and subdirectories.",
"description": "fs:allow-data-write-recursive -> This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-data-write-recursive"
@@ -3320,7 +3340,7 @@
]
},
{
"description": "fs:allow-desktop-write-recursive -> This allows full recusrive write access to the complete `$DESKTOP` folder, files and subdirectories.",
"description": "fs:allow-desktop-write-recursive -> This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-desktop-write-recursive"
@@ -3362,7 +3382,7 @@
]
},
{
"description": "fs:allow-document-write-recursive -> This allows full recusrive write access to the complete `$DOCUMENT` folder, files and subdirectories.",
"description": "fs:allow-document-write-recursive -> This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-document-write-recursive"
@@ -3404,7 +3424,7 @@
]
},
{
"description": "fs:allow-download-write-recursive -> This allows full recusrive write access to the complete `$DOWNLOAD` folder, files and subdirectories.",
"description": "fs:allow-download-write-recursive -> This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-download-write-recursive"
@@ -3446,7 +3466,7 @@
]
},
{
"description": "fs:allow-exe-write-recursive -> This allows full recusrive write access to the complete `$EXE` folder, files and subdirectories.",
"description": "fs:allow-exe-write-recursive -> This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-exe-write-recursive"
@@ -3488,7 +3508,7 @@
]
},
{
"description": "fs:allow-font-write-recursive -> This allows full recusrive write access to the complete `$FONT` folder, files and subdirectories.",
"description": "fs:allow-font-write-recursive -> This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-font-write-recursive"
@@ -3530,7 +3550,7 @@
]
},
{
"description": "fs:allow-home-write-recursive -> This allows full recusrive write access to the complete `$HOME` folder, files and subdirectories.",
"description": "fs:allow-home-write-recursive -> This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-home-write-recursive"
@@ -3572,7 +3592,7 @@
]
},
{
"description": "fs:allow-localdata-write-recursive -> This allows full recusrive write access to the complete `$LOCALDATA` folder, files and subdirectories.",
"description": "fs:allow-localdata-write-recursive -> This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-localdata-write-recursive"
@@ -3614,7 +3634,7 @@
]
},
{
"description": "fs:allow-log-write-recursive -> This allows full recusrive write access to the complete `$LOG` folder, files and subdirectories.",
"description": "fs:allow-log-write-recursive -> This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-log-write-recursive"
@@ -3656,7 +3676,7 @@
]
},
{
"description": "fs:allow-picture-write-recursive -> This allows full recusrive write access to the complete `$PICTURE` folder, files and subdirectories.",
"description": "fs:allow-picture-write-recursive -> This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-picture-write-recursive"
@@ -3698,7 +3718,7 @@
]
},
{
"description": "fs:allow-public-write-recursive -> This allows full recusrive write access to the complete `$PUBLIC` folder, files and subdirectories.",
"description": "fs:allow-public-write-recursive -> This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-public-write-recursive"
@@ -3740,7 +3760,7 @@
]
},
{
"description": "fs:allow-resource-write-recursive -> This allows full recusrive write access to the complete `$RESOURCE` folder, files and subdirectories.",
"description": "fs:allow-resource-write-recursive -> This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-resource-write-recursive"
@@ -3782,7 +3802,7 @@
]
},
{
"description": "fs:allow-runtime-write-recursive -> This allows full recusrive write access to the complete `$RUNTIME` folder, files and subdirectories.",
"description": "fs:allow-runtime-write-recursive -> This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-runtime-write-recursive"
@@ -3824,7 +3844,7 @@
]
},
{
"description": "fs:allow-temp-write-recursive -> This allows full recusrive write access to the complete `$TEMP` folder, files and subdirectories.",
"description": "fs:allow-temp-write-recursive -> This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-temp-write-recursive"
@@ -3866,7 +3886,7 @@
]
},
{
"description": "fs:allow-template-write-recursive -> This allows full recusrive write access to the complete `$TEMPLATE` folder, files and subdirectories.",
"description": "fs:allow-template-write-recursive -> This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-template-write-recursive"
@@ -3908,7 +3928,7 @@
]
},
{
"description": "fs:allow-video-write-recursive -> This allows full recusrive write access to the complete `$VIDEO` folder, files and subdirectories.",
"description": "fs:allow-video-write-recursive -> This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.",
"type": "string",
"enum": [
"fs:allow-video-write-recursive"
+1 -1
View File
@@ -36,7 +36,7 @@
});
}
getCurrentWebview().onFileDropEvent((event) => {
getCurrentWebview().onDragDropEvent((event) => {
onMessage(`File drop: ${JSON.stringify(event.payload)}`);
});
+4
View File
@@ -1,5 +1,9 @@
# Changelog
## \[2.0.0-beta.4]
- [`a233919`](https://github.com/tauri-apps/plugins-workspace/commit/a2339195aa940bff86d76375fd05087595bf06ce)([#1118](https://github.com/tauri-apps/plugins-workspace/pull/1118)) Fix LaunchAgent-based autostart for macOS.
## \[2.0.0-beta.3]
- [`a04ea2f`](https://github.com/tauri-apps/plugins-workspace/commit/a04ea2f38294d5a3987578283badc8eec87a7752)([#1071](https://github.com/tauri-apps/plugins-workspace/pull/1071)) The global API script is now only added to the binary when the `withGlobalTauri` config is true.
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "tauri-plugin-autostart"
version = "2.0.0-beta.3"
version = "2.0.0-beta.4"
description = "Automatically launch your application at startup."
authors = { workspace = true }
license = { workspace = true }
+6 -5
View File
@@ -129,11 +129,12 @@ pub fn init<R: Runtime>(
// 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 {
format!("{}.app", parts.first().unwrap())
} else {
exe_path
};
let app_path =
if parts.len() == 2 && matches!(macos_launcher, MacosLauncher::AppleScript) {
format!("{}.app", parts.first().unwrap())
} else {
exe_path
};
info!("auto_start path {}", &app_path);
builder.set_app_path(&app_path);
}
+8
View File
@@ -1,5 +1,13 @@
# Changelog
## \[2.0.0-beta.4]
- [`4cd8112`](https://github.com/tauri-apps/plugins-workspace/commit/4cd81126fdf25e1847546f8fdbd924aa4bfeabb5)([#1056](https://github.com/tauri-apps/plugins-workspace/pull/1056)) Fixed an issue where dialogs on android would return the Content URI instead of the file path
### Dependencies
- Upgraded to `fs@2.0.0-beta.4`
## \[2.0.0-beta.3]
- [`35ea595`](https://github.com/tauri-apps/plugins-workspace/commit/35ea5956d060f0bdafd140f2541c607bb811805b)([#1073](https://github.com/tauri-apps/plugins-workspace/pull/1073)) Fixed an issue where the dialog apis panicked when they were called with no application windows open.
+2 -2
View File
@@ -1,6 +1,6 @@
[package]
name = "tauri-plugin-dialog"
version = "2.0.0-beta.3"
version = "2.0.0-beta.4"
description = "Native system dialogs for opening and saving files along with message dialogs on your Tauri application."
edition = { workspace = true }
authors = { workspace = true }
@@ -22,7 +22,7 @@ serde_json = { workspace = true }
tauri = { workspace = true }
log = { workspace = true }
thiserror = { workspace = true }
tauri-plugin-fs = { path = "../fs", version = "2.0.0-beta.3" }
tauri-plugin-fs = { path = "../fs", version = "2.0.0-beta.4" }
[target."cfg(any(target_os = \"linux\", target_os = \"dragonfly\", target_os = \"freebsd\", target_os = \"openbsd\", target_os = \"netbsd\"))".dependencies]
glib = "0.16"
@@ -141,7 +141,7 @@ class DialogPlugin(private val activity: Activity): Plugin(activity) {
fileResult.put("modifiedAt", modifiedAt)
}
fileResult.put("name", FilePickerUtils.getNameFromUri(activity, uri))
fileResult.put("path", FilePickerUtils.getPathFromUri(uri))
fileResult.put("path", FilePickerUtils.getPathFromUri(activity, uri))
fileResult.put("size", FilePickerUtils.getSizeFromUri(activity, uri))
filesResultList.add(fileResult)
}
@@ -4,10 +4,15 @@
package app.tauri.dialog
import android.content.ContentUris
import android.database.Cursor
import android.provider.MediaStore
import android.content.Context
import android.graphics.BitmapFactory
import android.media.MediaMetadataRetriever
import android.net.Uri
import android.os.Environment
import android.provider.DocumentsContract
import android.provider.OpenableColumns
import android.util.Base64
@@ -21,8 +26,40 @@ class FilePickerUtils {
class FileResolution(var height: Int, var width: Int)
companion object {
fun getPathFromUri(uri: Uri): String {
return uri.toString()
fun getPathFromUri(context: Context, uri: Uri): String? {
if (DocumentsContract.isDocumentUri(context, uri)) {
if (isExternalStorageDocument(uri)) {
val docId = DocumentsContract.getDocumentId(uri)
val split = docId.split(":")
return if ("primary".equals(split[0], ignoreCase = true)) {
"${Environment.getExternalStorageDirectory()}/${split[1]}"
} else {
null
}
} else if (isDownloadsDocument(uri)) {
val id = DocumentsContract.getDocumentId(uri)
val contentUri = ContentUris.withAppendedId(
Uri.parse("content://downloads/public_downloads"), java.lang.Long.valueOf(id))
return getDataColumn(context, contentUri, null, null)
} else if (isMediaDocument(uri)) {
val docId = DocumentsContract.getDocumentId(uri)
val split = docId.split(":")
val contentUri: Uri? = when (split[0]) {
"image" -> MediaStore.Images.Media.EXTERNAL_CONTENT_URI
"video" -> MediaStore.Video.Media.EXTERNAL_CONTENT_URI
"audio" -> MediaStore.Audio.Media.EXTERNAL_CONTENT_URI
else -> null
}
val selection = "_id=?"
val selectionArgs = arrayOf(split[1])
return getDataColumn(context, contentUri, selection, selectionArgs)
}
} else if ("content".equals(uri.scheme, ignoreCase = true)) {
return getDataColumn(context, uri, null, null)
} else if ("file".equals(uri.scheme, ignoreCase = true)) {
return uri.path
}
return null
}
fun getNameFromUri(context: Context, uri: Uri): String? {
@@ -36,7 +73,7 @@ class FilePickerUtils {
displayName = cursor.getString(columnIdx)
cursor.close()
}
if (displayName == null || displayName.isEmpty()) {
if (displayName.isNullOrEmpty()) {
displayName = uri.lastPathSegment
}
return displayName
@@ -162,4 +199,32 @@ class FilePickerUtils {
return os.toByteArray()
}
}
}
}
private fun getDataColumn(context: Context, uri: Uri?, selection: String?, selectionArgs: Array<String>?): String? {
var cursor: Cursor? = null
val column = "_data"
val projection = arrayOf(column)
try {
cursor = context.contentResolver.query(uri!!, projection, selection, selectionArgs, null)
if (cursor != null && cursor.moveToFirst()) {
val columnIndex = cursor.getColumnIndexOrThrow(column)
return cursor.getString(columnIndex)
}
} finally {
cursor?.close()
}
return null
}
private fun isExternalStorageDocument(uri: Uri): Boolean {
return "com.android.externalstorage.documents" == uri.authority
}
private fun isDownloadsDocument(uri: Uri): Boolean {
return "com.android.providers.downloads.documents" == uri.authority
}
private fun isMediaDocument(uri: Uri): Boolean {
return "com.android.providers.media.documents" == uri.authority
}
+5
View File
@@ -1,5 +1,10 @@
# Changelog
## \[2.0.0-beta.4]
- [`9c2fb93`](https://github.com/tauri-apps/plugins-workspace/commit/9c2fb9306ecd3936a2aef56b3c012899036db098) Enhance the scope type to also allow a plain string representing the path to allow or deny.
- [`772f2bc`](https://github.com/tauri-apps/plugins-workspace/commit/772f2bc3495a4f83f1c3e538cbac6d29cbd7d5ef)([#1136](https://github.com/tauri-apps/plugins-workspace/pull/1136)) Update for tauri 2.0.0-beta.14.
## \[2.0.0-beta.3]
- [`cb96aa0`](https://github.com/tauri-apps/plugins-workspace/commit/cb96aa06277f7b864952827ec9fb1e74c8a1f761)([#1082](https://github.com/tauri-apps/plugins-workspace/pull/1082)) Fixes `watch` and `watchImmediate` which previously ignored the `baseDir` parameter.
+2 -2
View File
@@ -1,6 +1,6 @@
[package]
name = "tauri-plugin-fs"
version = "2.0.0-beta.3"
version = "2.0.0-beta.4"
description = "Access the file system."
authors = { workspace = true }
license = { workspace = true }
@@ -15,11 +15,11 @@ rustdoc-args = [ "--cfg", "docsrs" ]
[build-dependencies]
tauri-plugin = { workspace = true, features = [ "build" ] }
schemars = { workspace = true }
serde = { workspace = true }
[dependencies]
serde = { workspace = true }
serde_json = { workspace = true }
schemars = { workspace = true }
serde_repr = "0.1"
tauri = { workspace = true }
thiserror = { workspace = true }
+29 -3
View File
@@ -2,12 +2,38 @@
// SPDX-License-Identifier: Apache-2.0
// SPDX-License-Identifier: MIT
use std::{fs::create_dir_all, path::Path};
use std::{
fs::create_dir_all,
path::{Path, PathBuf},
};
#[path = "src/scope.rs"]
#[allow(dead_code)]
mod scope;
/// FS scope entry.
#[derive(schemars::JsonSchema)]
#[serde(untagged)]
#[allow(unused)]
enum FsScopeEntry {
/// FS scope path.
Value(PathBuf),
Object {
/// FS scope path.
path: PathBuf,
},
}
// Ensure scope entry is kept up to date
impl From<FsScopeEntry> for scope::EntryRaw {
fn from(value: FsScopeEntry) -> Self {
match value {
FsScopeEntry::Value(path) => scope::EntryRaw::Value(path),
FsScopeEntry::Object { path } => scope::EntryRaw::Object { path },
}
}
}
const BASE_DIR_VARS: &[&str] = &[
"AUDIO",
"CACHE",
@@ -115,7 +141,7 @@ permissions = [
[[set]]
identifier = "allow-{lower}-write-recursive"
description = "This allows full recusrive write access to the complete `${upper}` folder, files and subdirectories."
description = "This allows full recursive write access to the complete `${upper}` folder, files and subdirectories."
permissions = [
"write-all",
"scope-{lower}-recursive"
@@ -163,6 +189,6 @@ permissions = [
tauri_plugin::Builder::new(COMMANDS)
.global_api_script_path("./api-iife.js")
.global_scope_schema(schemars::schema_for!(scope::Entry))
.global_scope_schema(schemars::schema_for!(FsScopeEntry))
.build();
}
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-app-write-recursive"
description = "This allows full recusrive write access to the complete `$APP` folder, files and subdirectories."
description = "This allows full recursive write access to the complete `$APP` folder, files and subdirectories."
permissions = [
"write-all",
"scope-app-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-appcache-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-appcache-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-appconfig-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-appconfig-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-appdata-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-appdata-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-applocaldata-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-applocaldata-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-applog-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-applog-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-audio-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-audio-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-cache-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-cache-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-config-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-config-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-data-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-data-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-desktop-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-desktop-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-document-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-document-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-download-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-download-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-exe-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-exe-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-font-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-font-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-home-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-home-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-localdata-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-localdata-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-log-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-log-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-picture-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-picture-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-public-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-public-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-resource-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-resource-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-runtime-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-runtime-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-temp-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-temp-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-template-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-template-recursive"
@@ -39,7 +39,7 @@ permissions = [
[[set]]
identifier = "allow-video-write-recursive"
description = "This allows full recusrive 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."
permissions = [
"write-all",
"scope-video-recursive"
@@ -1,7 +1,7 @@
| Permission | Description |
|------|-----|
|`allow-app-read-recursive`|This allows full recursive read access to the complete `$APP` folder, files and subdirectories.|
|`allow-app-write-recursive`|This allows full recusrive write access to the complete `$APP` folder, files and subdirectories.|
|`allow-app-write-recursive`|This allows full recursive write access to the complete `$APP` folder, files and subdirectories.|
|`allow-app-read`|This allows non-recursive read access to the `$APP` folder.|
|`allow-app-write`|This allows non-recursive write access to the `$APP` folder.|
|`allow-app-meta-recursive`|This allows read access to metadata of the `$APP` folder, including file listing and statistics.|
@@ -10,7 +10,7 @@
|`scope-app`|This scope permits access to all files and list content of top level directories in the `$APP`folder.|
|`scope-app-index`|This scope permits to list all files and folders in the `$APP`folder.|
|`allow-appcache-read-recursive`|This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.|
|`allow-appcache-write-recursive`|This allows full recusrive write access to the complete `$APPCACHE` folder, files and subdirectories.|
|`allow-appcache-write-recursive`|This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.|
|`allow-appcache-read`|This allows non-recursive read access to the `$APPCACHE` folder.|
|`allow-appcache-write`|This allows non-recursive write access to the `$APPCACHE` folder.|
|`allow-appcache-meta-recursive`|This allows read access to metadata of the `$APPCACHE` folder, including file listing and statistics.|
@@ -19,7 +19,7 @@
|`scope-appcache`|This scope permits access to all files and list content of top level directories in the `$APPCACHE`folder.|
|`scope-appcache-index`|This scope permits to list all files and folders in the `$APPCACHE`folder.|
|`allow-appconfig-read-recursive`|This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.|
|`allow-appconfig-write-recursive`|This allows full recusrive write access to the complete `$APPCONFIG` folder, files and subdirectories.|
|`allow-appconfig-write-recursive`|This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.|
|`allow-appconfig-read`|This allows non-recursive read access to the `$APPCONFIG` folder.|
|`allow-appconfig-write`|This allows non-recursive write access to the `$APPCONFIG` folder.|
|`allow-appconfig-meta-recursive`|This allows read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.|
@@ -28,7 +28,7 @@
|`scope-appconfig`|This scope permits access to all files and list content of top level directories in the `$APPCONFIG`folder.|
|`scope-appconfig-index`|This scope permits to list all files and folders in the `$APPCONFIG`folder.|
|`allow-appdata-read-recursive`|This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.|
|`allow-appdata-write-recursive`|This allows full recusrive write access to the complete `$APPDATA` folder, files and subdirectories.|
|`allow-appdata-write-recursive`|This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.|
|`allow-appdata-read`|This allows non-recursive read access to the `$APPDATA` folder.|
|`allow-appdata-write`|This allows non-recursive write access to the `$APPDATA` folder.|
|`allow-appdata-meta-recursive`|This allows read access to metadata of the `$APPDATA` folder, including file listing and statistics.|
@@ -37,7 +37,7 @@
|`scope-appdata`|This scope permits access to all files and list content of top level directories in the `$APPDATA`folder.|
|`scope-appdata-index`|This scope permits to list all files and folders in the `$APPDATA`folder.|
|`allow-applocaldata-read-recursive`|This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.|
|`allow-applocaldata-write-recursive`|This allows full recusrive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.|
|`allow-applocaldata-write-recursive`|This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.|
|`allow-applocaldata-read`|This allows non-recursive read access to the `$APPLOCALDATA` folder.|
|`allow-applocaldata-write`|This allows non-recursive write access to the `$APPLOCALDATA` folder.|
|`allow-applocaldata-meta-recursive`|This allows read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.|
@@ -46,7 +46,7 @@
|`scope-applocaldata`|This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA`folder.|
|`scope-applocaldata-index`|This scope permits to list all files and folders in the `$APPLOCALDATA`folder.|
|`allow-applog-read-recursive`|This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.|
|`allow-applog-write-recursive`|This allows full recusrive write access to the complete `$APPLOG` folder, files and subdirectories.|
|`allow-applog-write-recursive`|This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.|
|`allow-applog-read`|This allows non-recursive read access to the `$APPLOG` folder.|
|`allow-applog-write`|This allows non-recursive write access to the `$APPLOG` folder.|
|`allow-applog-meta-recursive`|This allows read access to metadata of the `$APPLOG` folder, including file listing and statistics.|
@@ -55,7 +55,7 @@
|`scope-applog`|This scope permits access to all files and list content of top level directories in the `$APPLOG`folder.|
|`scope-applog-index`|This scope permits to list all files and folders in the `$APPLOG`folder.|
|`allow-audio-read-recursive`|This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.|
|`allow-audio-write-recursive`|This allows full recusrive write access to the complete `$AUDIO` folder, files and subdirectories.|
|`allow-audio-write-recursive`|This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.|
|`allow-audio-read`|This allows non-recursive read access to the `$AUDIO` folder.|
|`allow-audio-write`|This allows non-recursive write access to the `$AUDIO` folder.|
|`allow-audio-meta-recursive`|This allows read access to metadata of the `$AUDIO` folder, including file listing and statistics.|
@@ -64,7 +64,7 @@
|`scope-audio`|This scope permits access to all files and list content of top level directories in the `$AUDIO`folder.|
|`scope-audio-index`|This scope permits to list all files and folders in the `$AUDIO`folder.|
|`allow-cache-read-recursive`|This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.|
|`allow-cache-write-recursive`|This allows full recusrive write access to the complete `$CACHE` folder, files and subdirectories.|
|`allow-cache-write-recursive`|This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.|
|`allow-cache-read`|This allows non-recursive read access to the `$CACHE` folder.|
|`allow-cache-write`|This allows non-recursive write access to the `$CACHE` folder.|
|`allow-cache-meta-recursive`|This allows read access to metadata of the `$CACHE` folder, including file listing and statistics.|
@@ -73,7 +73,7 @@
|`scope-cache`|This scope permits access to all files and list content of top level directories in the `$CACHE`folder.|
|`scope-cache-index`|This scope permits to list all files and folders in the `$CACHE`folder.|
|`allow-config-read-recursive`|This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.|
|`allow-config-write-recursive`|This allows full recusrive write access to the complete `$CONFIG` folder, files and subdirectories.|
|`allow-config-write-recursive`|This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.|
|`allow-config-read`|This allows non-recursive read access to the `$CONFIG` folder.|
|`allow-config-write`|This allows non-recursive write access to the `$CONFIG` folder.|
|`allow-config-meta-recursive`|This allows read access to metadata of the `$CONFIG` folder, including file listing and statistics.|
@@ -82,7 +82,7 @@
|`scope-config`|This scope permits access to all files and list content of top level directories in the `$CONFIG`folder.|
|`scope-config-index`|This scope permits to list all files and folders in the `$CONFIG`folder.|
|`allow-data-read-recursive`|This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.|
|`allow-data-write-recursive`|This allows full recusrive write access to the complete `$DATA` folder, files and subdirectories.|
|`allow-data-write-recursive`|This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.|
|`allow-data-read`|This allows non-recursive read access to the `$DATA` folder.|
|`allow-data-write`|This allows non-recursive write access to the `$DATA` folder.|
|`allow-data-meta-recursive`|This allows read access to metadata of the `$DATA` folder, including file listing and statistics.|
@@ -91,7 +91,7 @@
|`scope-data`|This scope permits access to all files and list content of top level directories in the `$DATA`folder.|
|`scope-data-index`|This scope permits to list all files and folders in the `$DATA`folder.|
|`allow-desktop-read-recursive`|This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.|
|`allow-desktop-write-recursive`|This allows full recusrive write access to the complete `$DESKTOP` folder, files and subdirectories.|
|`allow-desktop-write-recursive`|This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.|
|`allow-desktop-read`|This allows non-recursive read access to the `$DESKTOP` folder.|
|`allow-desktop-write`|This allows non-recursive write access to the `$DESKTOP` folder.|
|`allow-desktop-meta-recursive`|This allows read access to metadata of the `$DESKTOP` folder, including file listing and statistics.|
@@ -100,7 +100,7 @@
|`scope-desktop`|This scope permits access to all files and list content of top level directories in the `$DESKTOP`folder.|
|`scope-desktop-index`|This scope permits to list all files and folders in the `$DESKTOP`folder.|
|`allow-document-read-recursive`|This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.|
|`allow-document-write-recursive`|This allows full recusrive write access to the complete `$DOCUMENT` folder, files and subdirectories.|
|`allow-document-write-recursive`|This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.|
|`allow-document-read`|This allows non-recursive read access to the `$DOCUMENT` folder.|
|`allow-document-write`|This allows non-recursive write access to the `$DOCUMENT` folder.|
|`allow-document-meta-recursive`|This allows read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.|
@@ -109,7 +109,7 @@
|`scope-document`|This scope permits access to all files and list content of top level directories in the `$DOCUMENT`folder.|
|`scope-document-index`|This scope permits to list all files and folders in the `$DOCUMENT`folder.|
|`allow-download-read-recursive`|This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.|
|`allow-download-write-recursive`|This allows full recusrive write access to the complete `$DOWNLOAD` folder, files and subdirectories.|
|`allow-download-write-recursive`|This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.|
|`allow-download-read`|This allows non-recursive read access to the `$DOWNLOAD` folder.|
|`allow-download-write`|This allows non-recursive write access to the `$DOWNLOAD` folder.|
|`allow-download-meta-recursive`|This allows read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.|
@@ -118,7 +118,7 @@
|`scope-download`|This scope permits access to all files and list content of top level directories in the `$DOWNLOAD`folder.|
|`scope-download-index`|This scope permits to list all files and folders in the `$DOWNLOAD`folder.|
|`allow-exe-read-recursive`|This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.|
|`allow-exe-write-recursive`|This allows full recusrive write access to the complete `$EXE` folder, files and subdirectories.|
|`allow-exe-write-recursive`|This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.|
|`allow-exe-read`|This allows non-recursive read access to the `$EXE` folder.|
|`allow-exe-write`|This allows non-recursive write access to the `$EXE` folder.|
|`allow-exe-meta-recursive`|This allows read access to metadata of the `$EXE` folder, including file listing and statistics.|
@@ -127,7 +127,7 @@
|`scope-exe`|This scope permits access to all files and list content of top level directories in the `$EXE`folder.|
|`scope-exe-index`|This scope permits to list all files and folders in the `$EXE`folder.|
|`allow-font-read-recursive`|This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.|
|`allow-font-write-recursive`|This allows full recusrive write access to the complete `$FONT` folder, files and subdirectories.|
|`allow-font-write-recursive`|This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.|
|`allow-font-read`|This allows non-recursive read access to the `$FONT` folder.|
|`allow-font-write`|This allows non-recursive write access to the `$FONT` folder.|
|`allow-font-meta-recursive`|This allows read access to metadata of the `$FONT` folder, including file listing and statistics.|
@@ -136,7 +136,7 @@
|`scope-font`|This scope permits access to all files and list content of top level directories in the `$FONT`folder.|
|`scope-font-index`|This scope permits to list all files and folders in the `$FONT`folder.|
|`allow-home-read-recursive`|This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.|
|`allow-home-write-recursive`|This allows full recusrive write access to the complete `$HOME` folder, files and subdirectories.|
|`allow-home-write-recursive`|This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.|
|`allow-home-read`|This allows non-recursive read access to the `$HOME` folder.|
|`allow-home-write`|This allows non-recursive write access to the `$HOME` folder.|
|`allow-home-meta-recursive`|This allows read access to metadata of the `$HOME` folder, including file listing and statistics.|
@@ -145,7 +145,7 @@
|`scope-home`|This scope permits access to all files and list content of top level directories in the `$HOME`folder.|
|`scope-home-index`|This scope permits to list all files and folders in the `$HOME`folder.|
|`allow-localdata-read-recursive`|This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.|
|`allow-localdata-write-recursive`|This allows full recusrive write access to the complete `$LOCALDATA` folder, files and subdirectories.|
|`allow-localdata-write-recursive`|This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.|
|`allow-localdata-read`|This allows non-recursive read access to the `$LOCALDATA` folder.|
|`allow-localdata-write`|This allows non-recursive write access to the `$LOCALDATA` folder.|
|`allow-localdata-meta-recursive`|This allows read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.|
@@ -154,7 +154,7 @@
|`scope-localdata`|This scope permits access to all files and list content of top level directories in the `$LOCALDATA`folder.|
|`scope-localdata-index`|This scope permits to list all files and folders in the `$LOCALDATA`folder.|
|`allow-log-read-recursive`|This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.|
|`allow-log-write-recursive`|This allows full recusrive write access to the complete `$LOG` folder, files and subdirectories.|
|`allow-log-write-recursive`|This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.|
|`allow-log-read`|This allows non-recursive read access to the `$LOG` folder.|
|`allow-log-write`|This allows non-recursive write access to the `$LOG` folder.|
|`allow-log-meta-recursive`|This allows read access to metadata of the `$LOG` folder, including file listing and statistics.|
@@ -163,7 +163,7 @@
|`scope-log`|This scope permits access to all files and list content of top level directories in the `$LOG`folder.|
|`scope-log-index`|This scope permits to list all files and folders in the `$LOG`folder.|
|`allow-picture-read-recursive`|This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.|
|`allow-picture-write-recursive`|This allows full recusrive write access to the complete `$PICTURE` folder, files and subdirectories.|
|`allow-picture-write-recursive`|This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.|
|`allow-picture-read`|This allows non-recursive read access to the `$PICTURE` folder.|
|`allow-picture-write`|This allows non-recursive write access to the `$PICTURE` folder.|
|`allow-picture-meta-recursive`|This allows read access to metadata of the `$PICTURE` folder, including file listing and statistics.|
@@ -172,7 +172,7 @@
|`scope-picture`|This scope permits access to all files and list content of top level directories in the `$PICTURE`folder.|
|`scope-picture-index`|This scope permits to list all files and folders in the `$PICTURE`folder.|
|`allow-public-read-recursive`|This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.|
|`allow-public-write-recursive`|This allows full recusrive write access to the complete `$PUBLIC` folder, files and subdirectories.|
|`allow-public-write-recursive`|This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.|
|`allow-public-read`|This allows non-recursive read access to the `$PUBLIC` folder.|
|`allow-public-write`|This allows non-recursive write access to the `$PUBLIC` folder.|
|`allow-public-meta-recursive`|This allows read access to metadata of the `$PUBLIC` folder, including file listing and statistics.|
@@ -181,7 +181,7 @@
|`scope-public`|This scope permits access to all files and list content of top level directories in the `$PUBLIC`folder.|
|`scope-public-index`|This scope permits to list all files and folders in the `$PUBLIC`folder.|
|`allow-resource-read-recursive`|This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.|
|`allow-resource-write-recursive`|This allows full recusrive write access to the complete `$RESOURCE` folder, files and subdirectories.|
|`allow-resource-write-recursive`|This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.|
|`allow-resource-read`|This allows non-recursive read access to the `$RESOURCE` folder.|
|`allow-resource-write`|This allows non-recursive write access to the `$RESOURCE` folder.|
|`allow-resource-meta-recursive`|This allows read access to metadata of the `$RESOURCE` folder, including file listing and statistics.|
@@ -190,7 +190,7 @@
|`scope-resource`|This scope permits access to all files and list content of top level directories in the `$RESOURCE`folder.|
|`scope-resource-index`|This scope permits to list all files and folders in the `$RESOURCE`folder.|
|`allow-runtime-read-recursive`|This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.|
|`allow-runtime-write-recursive`|This allows full recusrive write access to the complete `$RUNTIME` folder, files and subdirectories.|
|`allow-runtime-write-recursive`|This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.|
|`allow-runtime-read`|This allows non-recursive read access to the `$RUNTIME` folder.|
|`allow-runtime-write`|This allows non-recursive write access to the `$RUNTIME` folder.|
|`allow-runtime-meta-recursive`|This allows read access to metadata of the `$RUNTIME` folder, including file listing and statistics.|
@@ -199,7 +199,7 @@
|`scope-runtime`|This scope permits access to all files and list content of top level directories in the `$RUNTIME`folder.|
|`scope-runtime-index`|This scope permits to list all files and folders in the `$RUNTIME`folder.|
|`allow-temp-read-recursive`|This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.|
|`allow-temp-write-recursive`|This allows full recusrive write access to the complete `$TEMP` folder, files and subdirectories.|
|`allow-temp-write-recursive`|This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.|
|`allow-temp-read`|This allows non-recursive read access to the `$TEMP` folder.|
|`allow-temp-write`|This allows non-recursive write access to the `$TEMP` folder.|
|`allow-temp-meta-recursive`|This allows read access to metadata of the `$TEMP` folder, including file listing and statistics.|
@@ -208,7 +208,7 @@
|`scope-temp`|This scope permits access to all files and list content of top level directories in the `$TEMP`folder.|
|`scope-temp-index`|This scope permits to list all files and folders in the `$TEMP`folder.|
|`allow-template-read-recursive`|This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.|
|`allow-template-write-recursive`|This allows full recusrive write access to the complete `$TEMPLATE` folder, files and subdirectories.|
|`allow-template-write-recursive`|This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.|
|`allow-template-read`|This allows non-recursive read access to the `$TEMPLATE` folder.|
|`allow-template-write`|This allows non-recursive write access to the `$TEMPLATE` folder.|
|`allow-template-meta-recursive`|This allows read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.|
@@ -217,7 +217,7 @@
|`scope-template`|This scope permits access to all files and list content of top level directories in the `$TEMPLATE`folder.|
|`scope-template-index`|This scope permits to list all files and folders in the `$TEMPLATE`folder.|
|`allow-video-read-recursive`|This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.|
|`allow-video-write-recursive`|This allows full recusrive write access to the complete `$VIDEO` folder, files and subdirectories.|
|`allow-video-write-recursive`|This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.|
|`allow-video-read`|This allows non-recursive read access to the `$VIDEO` folder.|
|`allow-video-write`|This allows non-recursive write access to the `$VIDEO` folder.|
|`allow-video-meta-recursive`|This allows read access to metadata of the `$VIDEO` folder, including file listing and statistics.|
+25 -25
View File
@@ -302,7 +302,7 @@
]
},
{
"description": "allow-app-write-recursive -> This allows full recusrive write access to the complete `$APP` folder, files and subdirectories.",
"description": "allow-app-write-recursive -> This allows full recursive write access to the complete `$APP` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-app-write-recursive"
@@ -365,7 +365,7 @@
]
},
{
"description": "allow-appcache-write-recursive -> This allows full recusrive write access to the complete `$APPCACHE` folder, files and subdirectories.",
"description": "allow-appcache-write-recursive -> This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-appcache-write-recursive"
@@ -428,7 +428,7 @@
]
},
{
"description": "allow-appconfig-write-recursive -> This allows full recusrive write access to the complete `$APPCONFIG` folder, files and subdirectories.",
"description": "allow-appconfig-write-recursive -> This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-appconfig-write-recursive"
@@ -491,7 +491,7 @@
]
},
{
"description": "allow-appdata-write-recursive -> This allows full recusrive write access to the complete `$APPDATA` folder, files and subdirectories.",
"description": "allow-appdata-write-recursive -> This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-appdata-write-recursive"
@@ -554,7 +554,7 @@
]
},
{
"description": "allow-applocaldata-write-recursive -> This allows full recusrive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.",
"description": "allow-applocaldata-write-recursive -> This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-applocaldata-write-recursive"
@@ -617,7 +617,7 @@
]
},
{
"description": "allow-applog-write-recursive -> This allows full recusrive write access to the complete `$APPLOG` folder, files and subdirectories.",
"description": "allow-applog-write-recursive -> This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-applog-write-recursive"
@@ -680,7 +680,7 @@
]
},
{
"description": "allow-audio-write-recursive -> This allows full recusrive write access to the complete `$AUDIO` folder, files and subdirectories.",
"description": "allow-audio-write-recursive -> This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-audio-write-recursive"
@@ -743,7 +743,7 @@
]
},
{
"description": "allow-cache-write-recursive -> This allows full recusrive write access to the complete `$CACHE` folder, files and subdirectories.",
"description": "allow-cache-write-recursive -> This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-cache-write-recursive"
@@ -806,7 +806,7 @@
]
},
{
"description": "allow-config-write-recursive -> This allows full recusrive write access to the complete `$CONFIG` folder, files and subdirectories.",
"description": "allow-config-write-recursive -> This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-config-write-recursive"
@@ -869,7 +869,7 @@
]
},
{
"description": "allow-data-write-recursive -> This allows full recusrive write access to the complete `$DATA` folder, files and subdirectories.",
"description": "allow-data-write-recursive -> This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-data-write-recursive"
@@ -932,7 +932,7 @@
]
},
{
"description": "allow-desktop-write-recursive -> This allows full recusrive write access to the complete `$DESKTOP` folder, files and subdirectories.",
"description": "allow-desktop-write-recursive -> This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-desktop-write-recursive"
@@ -995,7 +995,7 @@
]
},
{
"description": "allow-document-write-recursive -> This allows full recusrive write access to the complete `$DOCUMENT` folder, files and subdirectories.",
"description": "allow-document-write-recursive -> This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-document-write-recursive"
@@ -1058,7 +1058,7 @@
]
},
{
"description": "allow-download-write-recursive -> This allows full recusrive write access to the complete `$DOWNLOAD` folder, files and subdirectories.",
"description": "allow-download-write-recursive -> This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-download-write-recursive"
@@ -1121,7 +1121,7 @@
]
},
{
"description": "allow-exe-write-recursive -> This allows full recusrive write access to the complete `$EXE` folder, files and subdirectories.",
"description": "allow-exe-write-recursive -> This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-exe-write-recursive"
@@ -1184,7 +1184,7 @@
]
},
{
"description": "allow-font-write-recursive -> This allows full recusrive write access to the complete `$FONT` folder, files and subdirectories.",
"description": "allow-font-write-recursive -> This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-font-write-recursive"
@@ -1247,7 +1247,7 @@
]
},
{
"description": "allow-home-write-recursive -> This allows full recusrive write access to the complete `$HOME` folder, files and subdirectories.",
"description": "allow-home-write-recursive -> This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-home-write-recursive"
@@ -1310,7 +1310,7 @@
]
},
{
"description": "allow-localdata-write-recursive -> This allows full recusrive write access to the complete `$LOCALDATA` folder, files and subdirectories.",
"description": "allow-localdata-write-recursive -> This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-localdata-write-recursive"
@@ -1373,7 +1373,7 @@
]
},
{
"description": "allow-log-write-recursive -> This allows full recusrive write access to the complete `$LOG` folder, files and subdirectories.",
"description": "allow-log-write-recursive -> This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-log-write-recursive"
@@ -1436,7 +1436,7 @@
]
},
{
"description": "allow-picture-write-recursive -> This allows full recusrive write access to the complete `$PICTURE` folder, files and subdirectories.",
"description": "allow-picture-write-recursive -> This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-picture-write-recursive"
@@ -1499,7 +1499,7 @@
]
},
{
"description": "allow-public-write-recursive -> This allows full recusrive write access to the complete `$PUBLIC` folder, files and subdirectories.",
"description": "allow-public-write-recursive -> This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-public-write-recursive"
@@ -1562,7 +1562,7 @@
]
},
{
"description": "allow-resource-write-recursive -> This allows full recusrive write access to the complete `$RESOURCE` folder, files and subdirectories.",
"description": "allow-resource-write-recursive -> This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-resource-write-recursive"
@@ -1625,7 +1625,7 @@
]
},
{
"description": "allow-runtime-write-recursive -> This allows full recusrive write access to the complete `$RUNTIME` folder, files and subdirectories.",
"description": "allow-runtime-write-recursive -> This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-runtime-write-recursive"
@@ -1688,7 +1688,7 @@
]
},
{
"description": "allow-temp-write-recursive -> This allows full recusrive write access to the complete `$TEMP` folder, files and subdirectories.",
"description": "allow-temp-write-recursive -> This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-temp-write-recursive"
@@ -1751,7 +1751,7 @@
]
},
{
"description": "allow-template-write-recursive -> This allows full recusrive write access to the complete `$TEMPLATE` folder, files and subdirectories.",
"description": "allow-template-write-recursive -> This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-template-write-recursive"
@@ -1814,7 +1814,7 @@
]
},
{
"description": "allow-video-write-recursive -> This allows full recusrive write access to the complete `$VIDEO` folder, files and subdirectories.",
"description": "allow-video-write-recursive -> This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.",
"type": "string",
"enum": [
"allow-video-write-recursive"
+24 -24
View File
@@ -11,14 +11,11 @@
html_favicon_url = "https://github.com/tauri-apps/tauri/raw/dev/app-icon.png"
)]
use std::path::PathBuf;
use serde::Deserialize;
use tauri::{
ipc::ScopeObject,
plugin::{Builder as PluginBuilder, TauriPlugin},
utils::acl::Value,
AppHandle, FileDropEvent, Manager, RunEvent, Runtime, WindowEvent,
AppHandle, DragDropEvent, Manager, RunEvent, Runtime, WindowEvent,
};
mod commands;
@@ -33,6 +30,28 @@ pub use scope::{Event as ScopeEvent, Scope};
type Result<T> = std::result::Result<T, Error>;
// implement ScopeObject here instead of in the scope module because it is also used on the build script
// and we don't want to add tauri as a build dependency
impl ScopeObject for scope::Entry {
type Error = Error;
fn deserialize<R: Runtime>(
app: &AppHandle<R>,
raw: Value,
) -> std::result::Result<Self, Self::Error> {
let entry = serde_json::from_value(raw.into()).map(|raw| {
let path = match raw {
scope::EntryRaw::Value(path) => path,
scope::EntryRaw::Object { path } => path,
};
Self { path }
})?;
Ok(Self {
path: app.path().parse(entry.path)?,
})
}
}
pub trait FsExt<R: Runtime> {
fn fs_scope(&self) -> &Scope;
fn try_fs_scope(&self) -> Option<&Scope>;
@@ -48,25 +67,6 @@ impl<R: Runtime, T: Manager<R>> FsExt<R> for T {
}
}
impl ScopeObject for scope::Entry {
type Error = Error;
fn deserialize<R: Runtime>(
app: &AppHandle<R>,
raw: Value,
) -> std::result::Result<Self, Self::Error> {
#[derive(Deserialize)]
struct EntryRaw {
path: PathBuf,
}
let entry = serde_json::from_value::<EntryRaw>(raw.into())?;
Ok(Self {
path: app.path().parse(entry.path)?,
})
}
}
pub fn init<R: Runtime>() -> TauriPlugin<R, Option<config::Config>> {
PluginBuilder::<R, Option<config::Config>>::new("fs")
.invoke_handler(tauri::generate_handler![
@@ -110,7 +110,7 @@ pub fn init<R: Runtime>() -> TauriPlugin<R, Option<config::Config>> {
.on_event(|app, event| {
if let RunEvent::WindowEvent {
label: _,
event: WindowEvent::FileDrop(FileDropEvent::Dropped { paths, position: _ }),
event: WindowEvent::DragDrop(DragDropEvent::Dropped { paths, position: _ }),
..
} = event
{
+11 -1
View File
@@ -11,7 +11,17 @@ use std::{
},
};
#[derive(Debug, schemars::JsonSchema)]
use serde::Deserialize;
#[doc(hidden)]
#[derive(Deserialize)]
#[serde(untagged)]
pub enum EntryRaw {
Value(PathBuf),
Object { path: PathBuf },
}
#[derive(Debug)]
pub struct Entry {
pub path: PathBuf,
}
+6
View File
@@ -1,5 +1,11 @@
# Changelog
## \[2.0.0-beta.4]
### Dependencies
- Upgraded to `fs@2.0.0-beta.4`
## \[2.0.0-beta.3]
- [`c873e4d`](https://github.com/tauri-apps/plugins-workspace/commit/c873e4d6c74e759742f7c9a88e35cff10a75122a)([#1059](https://github.com/tauri-apps/plugins-workspace/pull/1059)) Fixes scope not allowing subpaths, query parameters and hash when those values are empty.
+2 -2
View File
@@ -1,6 +1,6 @@
[package]
name = "tauri-plugin-http"
version = "2.0.0-beta.3"
version = "2.0.0-beta.4"
description = "Access an HTTP client written in Rust."
edition = { workspace = true }
authors = { workspace = true }
@@ -25,7 +25,7 @@ serde = { workspace = true }
serde_json = { workspace = true }
tauri = { workspace = true }
thiserror = { workspace = true }
tauri-plugin-fs = { path = "../fs", version = "2.0.0-beta.3" }
tauri-plugin-fs = { path = "../fs", version = "2.0.0-beta.4" }
urlpattern = "0.2"
regex = "1"
http = "0.2"
+9 -10
View File
@@ -8,11 +8,11 @@ mod scope;
const COMMANDS: &[&str] = &["fetch", "fetch_cancel", "fetch_send", "fetch_read_body"];
/// HTTP scope entry object definition.
#[allow(unused)]
/// HTTP scope entry.
#[derive(schemars::JsonSchema)]
#[serde(untagged)]
enum ScopeEntry {
#[allow(unused)]
enum HttpScopeEntry {
/// A URL that can be accessed by the webview when using the HTTP APIs.
/// Wildcards can be used following the URL pattern standard.
///
@@ -28,7 +28,6 @@ enum ScopeEntry {
///
/// - "https://myapi.service.com/users/*": allows access to any URLs that begins with "https://myapi.service.com/users/"
Value(String),
Object {
/// A URL that can be accessed by the webview when using the HTTP APIs.
/// Wildcards can be used following the URL pattern standard.
@@ -48,12 +47,12 @@ enum ScopeEntry {
},
}
// ensure scope entry is up to date
impl From<ScopeEntry> for scope::Entry {
fn from(value: ScopeEntry) -> Self {
// Ensure scope entry is kept up to date
impl From<HttpScopeEntry> for scope::Entry {
fn from(value: HttpScopeEntry) -> Self {
let url = match value {
ScopeEntry::Value(url) => url,
ScopeEntry::Object { url } => url,
HttpScopeEntry::Value(url) => url,
HttpScopeEntry::Object { url } => url,
};
scope::Entry {
@@ -69,6 +68,6 @@ impl From<ScopeEntry> for scope::Entry {
fn main() {
tauri_plugin::Builder::new(COMMANDS)
.global_api_script_path("./api-iife.js")
.global_scope_schema(schemars::schema_for!(ScopeEntry))
.global_scope_schema(schemars::schema_for!(HttpScopeEntry))
.build();
}
+6
View File
@@ -1,5 +1,11 @@
# Changelog
## \[2.0.0-beta.4]
### Dependencies
- Upgraded to `fs@2.0.0-beta.4`
## \[2.0.0-beta.3]
- [`a04ea2f`](https://github.com/tauri-apps/plugins-workspace/commit/a04ea2f38294d5a3987578283badc8eec87a7752)([#1071](https://github.com/tauri-apps/plugins-workspace/pull/1071)) The global API script is now only added to the binary when the `withGlobalTauri` config is true.
+2 -2
View File
@@ -1,6 +1,6 @@
[package]
name = "tauri-plugin-persisted-scope"
version = "2.0.0-beta.3"
version = "2.0.0-beta.4"
description = "Save filesystem and asset scopes and restore them when the app is reopened."
authors = { workspace = true }
license = { workspace = true }
@@ -19,7 +19,7 @@ log = { workspace = true }
thiserror = { workspace = true }
aho-corasick = "1"
bincode = "1"
tauri-plugin-fs = { path = "../fs", version = "2.0.0-beta.3" }
tauri-plugin-fs = { path = "../fs", version = "2.0.0-beta.4" }
[features]
protocol-asset = [ "tauri/protocol-asset" ]
+4
View File
@@ -1,5 +1,9 @@
# Changelog
## \[2.0.0-beta.5]
- [`dabac0e`](https://github.com/tauri-apps/plugins-workspace/commit/dabac0eedfd6e6d192c6c5a214e708b3c0223f6f)([#1035](https://github.com/tauri-apps/plugins-workspace/pull/1035)) Added implementation for MacOS.
## \[2.0.0-beta.4]
- [`a04ea2f`](https://github.com/tauri-apps/plugins-workspace/commit/a04ea2f38294d5a3987578283badc8eec87a7752)([#1071](https://github.com/tauri-apps/plugins-workspace/pull/1071)) The global API script is now only added to the binary when the `withGlobalTauri` config is true.
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "tauri-plugin-single-instance"
version = "2.0.0-beta.4"
version = "2.0.0-beta.5"
description = "Ensure a single instance of your tauri app is running."
authors = { workspace = true }
license = { workspace = true }
+204
View File
@@ -0,0 +1,204 @@
{
"name": "app",
"version": "1.0.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "app",
"version": "1.0.0",
"license": "MIT",
"devDependencies": {
"@tauri-apps/cli": "2.0.0-beta.3"
}
},
"node_modules/@tauri-apps/cli": {
"version": "2.0.0-beta.3",
"resolved": "https://registry.npmjs.org/@tauri-apps/cli/-/cli-2.0.0-beta.3.tgz",
"integrity": "sha512-xLAL2DNNUJWqHBKvanc3V9bG9kkwtFwc40X/DrfgEKnkajEm79wqnkaT8LUnmbe0WZ8bzBRO1fLIgKlOH6GiCA==",
"dev": true,
"bin": {
"tauri": "tauri.js"
},
"engines": {
"node": ">= 10"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/tauri"
},
"optionalDependencies": {
"@tauri-apps/cli-darwin-arm64": "2.0.0-beta.3",
"@tauri-apps/cli-darwin-x64": "2.0.0-beta.3",
"@tauri-apps/cli-linux-arm-gnueabihf": "2.0.0-beta.3",
"@tauri-apps/cli-linux-arm64-gnu": "2.0.0-beta.3",
"@tauri-apps/cli-linux-arm64-musl": "2.0.0-beta.3",
"@tauri-apps/cli-linux-x64-gnu": "2.0.0-beta.3",
"@tauri-apps/cli-linux-x64-musl": "2.0.0-beta.3",
"@tauri-apps/cli-win32-arm64-msvc": "2.0.0-beta.3",
"@tauri-apps/cli-win32-ia32-msvc": "2.0.0-beta.3",
"@tauri-apps/cli-win32-x64-msvc": "2.0.0-beta.3"
}
},
"node_modules/@tauri-apps/cli-darwin-arm64": {
"version": "2.0.0-beta.3",
"resolved": "https://registry.npmjs.org/@tauri-apps/cli-darwin-arm64/-/cli-darwin-arm64-2.0.0-beta.3.tgz",
"integrity": "sha512-gHcn3jI/4MDXDIlK/4Zz0ftTosgN3OimWlKxEz777QrA1hldrQweYIhdZXkqE9KgoE+u6w80vWIcr0InHAf7Iw==",
"cpu": [
"arm64"
],
"dev": true,
"optional": true,
"os": [
"darwin"
],
"engines": {
"node": ">= 10"
}
},
"node_modules/@tauri-apps/cli-darwin-x64": {
"version": "2.0.0-beta.3",
"resolved": "https://registry.npmjs.org/@tauri-apps/cli-darwin-x64/-/cli-darwin-x64-2.0.0-beta.3.tgz",
"integrity": "sha512-kRCaukT2IAGMmNuAOUBhdZRlKujTy2lSsdNKmgGEMnzQLKJwWO9Gpq1NmPY7ZVqyXK/X8QnGHuasDEQsSO6B4w==",
"cpu": [
"x64"
],
"dev": true,
"optional": true,
"os": [
"darwin"
],
"engines": {
"node": ">= 10"
}
},
"node_modules/@tauri-apps/cli-linux-arm-gnueabihf": {
"version": "2.0.0-beta.3",
"resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-arm-gnueabihf/-/cli-linux-arm-gnueabihf-2.0.0-beta.3.tgz",
"integrity": "sha512-cpNZOQDotNSdjoZT16s1JtZvnkM0wgLwU39AhKhRCco4KEH3/8G1ngKF9JKalWUN8zDTcuCigEAr37gEv4mLAA==",
"cpu": [
"arm"
],
"dev": true,
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">= 10"
}
},
"node_modules/@tauri-apps/cli-linux-arm64-gnu": {
"version": "2.0.0-beta.3",
"resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-arm64-gnu/-/cli-linux-arm64-gnu-2.0.0-beta.3.tgz",
"integrity": "sha512-8q86V6P9bkeoFcnvSsnvOwmKY6ijIN4ueRVXCj5cVpsw392VF9vud1Nq7/l+QDgn9OWbZNNVDl30iyoSuaykBA==",
"cpu": [
"arm64"
],
"dev": true,
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">= 10"
}
},
"node_modules/@tauri-apps/cli-linux-arm64-musl": {
"version": "2.0.0-beta.3",
"resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.0.0-beta.3.tgz",
"integrity": "sha512-L7fokh4aqyV6yDPoeKwFN3Yt0pCAuZMWeP5tOeSBiom1pU7ppKH+4KHeTekNEIecZG+Ah250DkVCdmWS+aRFTA==",
"cpu": [
"arm64"
],
"dev": true,
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">= 10"
}
},
"node_modules/@tauri-apps/cli-linux-x64-gnu": {
"version": "2.0.0-beta.3",
"resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-x64-gnu/-/cli-linux-x64-gnu-2.0.0-beta.3.tgz",
"integrity": "sha512-/crp3K6PathqicVWPj8Kh1120NNVV7nagJ7oZW9OFch7nBS1tmDnSB5k5LgA4yYu+lDKNUREnATMWHL6i0gNeg==",
"cpu": [
"x64"
],
"dev": true,
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">= 10"
}
},
"node_modules/@tauri-apps/cli-linux-x64-musl": {
"version": "2.0.0-beta.3",
"resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-x64-musl/-/cli-linux-x64-musl-2.0.0-beta.3.tgz",
"integrity": "sha512-jX1ZT0UQwdBGbpCwlpv2bsLDO7KFMeDJQ/ZZVMfWyjuYrGBG5zhJ2NXwTMkHVnxfvE6BVmnybWcykeSqTATeOw==",
"cpu": [
"x64"
],
"dev": true,
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">= 10"
}
},
"node_modules/@tauri-apps/cli-win32-arm64-msvc": {
"version": "2.0.0-beta.3",
"resolved": "https://registry.npmjs.org/@tauri-apps/cli-win32-arm64-msvc/-/cli-win32-arm64-msvc-2.0.0-beta.3.tgz",
"integrity": "sha512-UCEZNKocENLX3HYKid4FEbrCMjCX9e58klBIvJKxT8HTjvpgFYDoKccswDNfszLhmineKMlkUvm7j7U0sMh8MQ==",
"cpu": [
"arm64"
],
"dev": true,
"optional": true,
"os": [
"win32"
],
"engines": {
"node": ">= 10"
}
},
"node_modules/@tauri-apps/cli-win32-ia32-msvc": {
"version": "2.0.0-beta.3",
"resolved": "https://registry.npmjs.org/@tauri-apps/cli-win32-ia32-msvc/-/cli-win32-ia32-msvc-2.0.0-beta.3.tgz",
"integrity": "sha512-O8syGXDHyKN/cv1ktD76dTcbkQ1nNEPhnT1Z+r0GKxNsw4/MyIVglzEcou3aPq0/1MQ0PEGVyG1x0JMaPw7oHQ==",
"cpu": [
"ia32"
],
"dev": true,
"optional": true,
"os": [
"win32"
],
"engines": {
"node": ">= 10"
}
},
"node_modules/@tauri-apps/cli-win32-x64-msvc": {
"version": "2.0.0-beta.3",
"resolved": "https://registry.npmjs.org/@tauri-apps/cli-win32-x64-msvc/-/cli-win32-x64-msvc-2.0.0-beta.3.tgz",
"integrity": "sha512-YDdF3XWaptjKtKz33sZhC+uNAZwp6QtAmZSRCQQlC1W7uJwLD00/3QF4vO/c6Qm+BGFsazVh1+YmBF1p0kV0rg==",
"cpu": [
"x64"
],
"dev": true,
"optional": true,
"os": [
"win32"
],
"engines": {
"node": ">= 10"
}
}
}
}
@@ -4,7 +4,7 @@
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
"tauri": "tauri"
},
"author": "",
"license": "MIT",
@@ -12,6 +12,7 @@ serde_json = { workspace = true }
serde = { workspace = true }
tauri = { workspace = true }
tauri-plugin-single-instance = { path = "../../../" }
tauri-plugin-cli = { path = "../../../../cli" }
[build-dependencies]
tauri-build = { workspace = true }
@@ -9,6 +9,7 @@
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);
}))
@@ -29,5 +29,17 @@
"icons/icon.icns",
"icons/icon.ico"
]
},
"plugins": {
"cli": {
"description": "Testing single-instance on MacOS",
"args": [
{
"name": "somearg",
"index": 1,
"takesValue": true
}
]
}
}
}
@@ -4,13 +4,119 @@
#![cfg(target_os = "macos")]
use std::{
io::{BufWriter, Error, ErrorKind, Read, Write},
os::unix::net::{UnixListener, UnixStream},
path::PathBuf,
};
use crate::SingleInstanceCallback;
use tauri::{
plugin::{self, TauriPlugin},
Manager, Runtime,
AppHandle, Config, Manager, RunEvent, Runtime,
};
pub fn init<R: Runtime>(_f: Box<SingleInstanceCallback<R>>) -> TauriPlugin<R> {
plugin::Builder::new("single-instance").build()
pub fn init<R: Runtime>(cb: Box<SingleInstanceCallback<R>>) -> TauriPlugin<R> {
plugin::Builder::new("single-instance")
.setup(|app, _api| {
let socket = socket_path(app.config());
// Notify the singleton which may or may not exist.
match notify_singleton(&socket) {
Ok(_) => {
std::process::exit(0);
}
Err(e) => {
match e.kind() {
ErrorKind::NotFound | ErrorKind::ConnectionRefused => {
// This process claims itself as singleton as likely none exists
socket_cleanup(&socket);
listen_for_other_instances(&socket, app.clone(), cb);
}
_ => {
log::debug!(
"single_instance failed to notify - launching normally: {}",
e
);
}
}
}
}
Ok(())
})
.on_event(|app, event| {
if let RunEvent::Exit = event {
destroy(app);
}
})
.build()
}
pub fn destroy<R: Runtime, M: Manager<R>>(_manager: &M) {}
pub fn destroy<R: Runtime, M: Manager<R>>(manager: &M) {
let socket = socket_path(manager.config());
socket_cleanup(&socket);
}
fn socket_path(config: &Config) -> PathBuf {
let identifier = config.identifier.replace(['.', '-'].as_ref(), "_");
// Use /tmp as socket path must be shorter than 100 chars.
PathBuf::from(format!("/tmp/{}_si.sock", identifier))
}
fn socket_cleanup(socket: &PathBuf) {
let _ = std::fs::remove_file(socket);
}
fn notify_singleton(socket: &PathBuf) -> Result<(), Error> {
let stream = UnixStream::connect(&socket)?;
let mut bf = BufWriter::new(&stream);
let args_joined = std::env::args().collect::<Vec<String>>().join("\0");
bf.write_all(args_joined.as_bytes())?;
bf.flush()?;
drop(bf);
Ok(())
}
fn listen_for_other_instances<A: Runtime>(
socket: &PathBuf,
app: AppHandle<A>,
mut cb: Box<SingleInstanceCallback<A>>,
) {
match UnixListener::bind(&socket) {
Ok(listener) => {
let cwd = std::env::current_dir()
.unwrap_or_default()
.to_str()
.unwrap_or_default()
.to_string();
tauri::async_runtime::spawn(async move {
for stream in listener.incoming() {
match stream {
Ok(mut stream) => {
let mut s = String::new();
match stream.read_to_string(&mut s) {
Ok(_) => {
let args: Vec<String> =
s.split('\0').map(String::from).collect();
cb(&app.clone().app_handle(), args, cwd.clone());
}
Err(e) => log::debug!("single_instance failed to be notified: {e}"),
}
}
Err(err) => {
log::debug!("single_instance failed to be notified: {}", err);
continue;
}
}
}
});
}
Err(err) => {
log::error!(
"single_instance failed to listen to other processes - launching normally: {}",
err
);
}
}
}
+2 -4
View File
@@ -28,18 +28,16 @@ dirs-next = "2"
minisign-verify = "0.2"
time = { version = "0.3", features = [ "parsing", "formatting" ] }
base64 = "0.21"
percent-encoding = "2"
semver = { version = "1", features = [ "serde" ] }
futures-util = "0.3"
tempfile = "3"
zip = "0.6"
tar = "0.4"
[target."cfg(target_os = \"windows\")".dependencies]
zip = { version = "0.6", default-features = false }
windows-sys = { version = "0.52.0", features = [ "Win32_Foundation", "Win32_UI_WindowsAndMessaging" ] }
windows-sys = { version = "0.52.0", features = ["Win32_Foundation", "Win32_UI_WindowsAndMessaging"] }
[target."cfg(any(target_os = \"macos\", target_os = \"linux\"))".dependencies]
tar = "0.4"
flate2 = "1.0.27"
[dev-dependencies]
+1 -1
View File
@@ -72,7 +72,7 @@ upload(
```
```javascript
import { download } from "tauri-plugin-upload-api";
import { download } from "@tauri-apps/plugin-upload";
download(
"https://example.com/file-download-link",
+4
View File
@@ -1,5 +1,9 @@
# Changelog
## \[2.0.0-beta.4]
- [`c013fa5`](https://github.com/tauri-apps/plugins-workspace/commit/c013fa52cd66885cf457a64e75373cb2066bc849)([#1078](https://github.com/tauri-apps/plugins-workspace/pull/1078)) **Breaking change**: Changed the format of the state file from bincode to json. Also changed the filename to from `.window-state` to `.window-state.json`.
## \[2.0.0-beta.3]
- [`a04ea2f`](https://github.com/tauri-apps/plugins-workspace/commit/a04ea2f38294d5a3987578283badc8eec87a7752)([#1071](https://github.com/tauri-apps/plugins-workspace/pull/1071)) The global API script is now only added to the binary when the `withGlobalTauri` config is true.
+1 -2
View File
@@ -1,6 +1,6 @@
[package]
name = "tauri-plugin-window-state"
version = "2.0.0-beta.3"
version = "2.0.0-beta.4"
description = "Save window positions and sizes and restore them when the app is reopened."
authors = { workspace = true }
license = { workspace = true }
@@ -21,5 +21,4 @@ serde_json = { workspace = true }
tauri = { workspace = true }
log = { workspace = true }
thiserror = { workspace = true }
bincode = "1.3"
bitflags = "2"
+19 -22
View File
@@ -23,13 +23,12 @@ use tauri::{
use std::{
collections::{HashMap, HashSet},
fs::{create_dir_all, File},
io::Write,
sync::{Arc, Mutex},
};
mod cmd;
pub const STATE_FILENAME: &str = ".window-state";
pub const STATE_FILENAME: &str = ".window-state.json";
#[derive(Debug, thiserror::Error)]
pub enum Error {
@@ -38,7 +37,7 @@ pub enum Error {
#[error(transparent)]
Tauri(#[from] tauri::Error),
#[error(transparent)]
Bincode(#[from] Box<bincode::ErrorKind>),
SerdeJson(#[from] serde_json::Error),
}
pub type Result<T> = std::result::Result<T, Error>;
@@ -116,10 +115,7 @@ impl<R: Runtime> AppHandleExt for tauri::AppHandle<R> {
create_dir_all(&app_dir)
.map_err(Error::Io)
.and_then(|_| File::create(state_path).map_err(Into::into))
.and_then(|mut f| {
f.write_all(&bincode::serialize(&*state).map_err(Error::Bincode)?)
.map_err(Into::into)
})
.and_then(|mut f| serde_json::to_writer_pretty(&mut f, &*state).map_err(Into::into))
} else {
Ok(())
}
@@ -324,23 +320,24 @@ impl Builder {
cmd::restore_state
])
.setup(|app, _api| {
let cache: Arc<Mutex<HashMap<String, WindowState>>> = if let Ok(app_dir) =
app.path().app_config_dir()
{
let state_path = app_dir.join(STATE_FILENAME);
if state_path.exists() {
Arc::new(Mutex::new(
std::fs::read(state_path)
.map_err(Error::from)
.and_then(|state| bincode::deserialize(&state).map_err(Into::into))
.unwrap_or_default(),
))
let cache: Arc<Mutex<HashMap<String, WindowState>>> =
if let Ok(app_dir) = app.path().app_config_dir() {
let state_path = app_dir.join(STATE_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()
}
} else {
Default::default()
};
};
app.manage(WindowStateCache(cache));
Ok(())
})