feat(clipboard): support readImage & writeImage (#845)

* feat(clipboard): support `read_image` & `write_image`

* fix plugin name

* platform specific bahavior

* remove unnecessary BufWriter

* improvement

* update example

* update example

* format

* header, fix change file

* use image from tauri

* fix ci

* update tauri, fix read

* image crate only on desktop [skip ci]

* Update plugins/authenticator/src/u2f_crate/protocol.rs [skip ci]

Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>

* Update plugins/authenticator/src/u2f_crate/protocol.rs [skip ci]

Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>

* update deps, address code review

* fix mobile [skip ci]

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
This commit is contained in:
阿良仔
2024-03-19 09:35:37 -03:00
committed by GitHub
co-authored by Amr Bashir Lucas Nogueira Lucas Nogueira
parent 7b9fa6607b
commit 9dec9605ed
91 changed files with 1331 additions and 795 deletions
@@ -0,0 +1,13 @@
# Automatically generated - DO NOT EDIT!
"$schema" = "../../schemas/schema.json"
[[permission]]
identifier = "allow-clear"
description = "Enables the clear command without any pre-configured scope."
commands.allow = ["clear"]
[[permission]]
identifier = "deny-clear"
description = "Denies the clear command without any pre-configured scope."
commands.deny = ["clear"]
@@ -1,13 +0,0 @@
# Automatically generated - DO NOT EDIT!
"$schema" = "../../schemas/schema.json"
[[permission]]
identifier = "allow-read"
description = "Enables the read command without any pre-configured scope."
commands.allow = ["read"]
[[permission]]
identifier = "deny-read"
description = "Denies the read command without any pre-configured scope."
commands.deny = ["read"]
@@ -0,0 +1,13 @@
# Automatically generated - DO NOT EDIT!
"$schema" = "../../schemas/schema.json"
[[permission]]
identifier = "allow-read-image"
description = "Enables the read_image command without any pre-configured scope."
commands.allow = ["read_image"]
[[permission]]
identifier = "deny-read-image"
description = "Denies the read_image command without any pre-configured scope."
commands.deny = ["read_image"]
@@ -0,0 +1,13 @@
# Automatically generated - DO NOT EDIT!
"$schema" = "../../schemas/schema.json"
[[permission]]
identifier = "allow-read-text"
description = "Enables the read_text command without any pre-configured scope."
commands.allow = ["read_text"]
[[permission]]
identifier = "deny-read-text"
description = "Denies the read_text command without any pre-configured scope."
commands.deny = ["read_text"]
@@ -1,13 +0,0 @@
# Automatically generated - DO NOT EDIT!
"$schema" = "../../schemas/schema.json"
[[permission]]
identifier = "allow-write"
description = "Enables the write command without any pre-configured scope."
commands.allow = ["write"]
[[permission]]
identifier = "deny-write"
description = "Denies the write command without any pre-configured scope."
commands.deny = ["write"]
@@ -0,0 +1,13 @@
# Automatically generated - DO NOT EDIT!
"$schema" = "../../schemas/schema.json"
[[permission]]
identifier = "allow-write-html"
description = "Enables the write_html command without any pre-configured scope."
commands.allow = ["write_html"]
[[permission]]
identifier = "deny-write-html"
description = "Denies the write_html command without any pre-configured scope."
commands.deny = ["write_html"]
@@ -0,0 +1,13 @@
# Automatically generated - DO NOT EDIT!
"$schema" = "../../schemas/schema.json"
[[permission]]
identifier = "allow-write-image"
description = "Enables the write_image command without any pre-configured scope."
commands.allow = ["write_image"]
[[permission]]
identifier = "deny-write-image"
description = "Denies the write_image command without any pre-configured scope."
commands.deny = ["write_image"]
@@ -0,0 +1,13 @@
# Automatically generated - DO NOT EDIT!
"$schema" = "../../schemas/schema.json"
[[permission]]
identifier = "allow-write-text"
description = "Enables the write_text command without any pre-configured scope."
commands.allow = ["write_text"]
[[permission]]
identifier = "deny-write-text"
description = "Denies the write_text command without any pre-configured scope."
commands.deny = ["write_text"]
@@ -1,6 +1,14 @@
| Permission | Description |
|------|-----|
|`allow-read`|Enables the read command without any pre-configured scope.|
|`deny-read`|Denies the read command without any pre-configured scope.|
|`allow-write`|Enables the write command without any pre-configured scope.|
|`deny-write`|Denies the write command without any pre-configured scope.|
|`allow-clear`|Enables the clear command without any pre-configured scope.|
|`deny-clear`|Denies the clear command without any pre-configured scope.|
|`allow-read-image`|Enables the read_image command without any pre-configured scope.|
|`deny-read-image`|Denies the read_image command without any pre-configured scope.|
|`allow-read-text`|Enables the read_text command without any pre-configured scope.|
|`deny-read-text`|Denies the read_text command without any pre-configured scope.|
|`allow-write-html`|Enables the write_html command without any pre-configured scope.|
|`deny-write-html`|Denies the write_html command without any pre-configured scope.|
|`allow-write-image`|Enables the write_image command without any pre-configured scope.|
|`deny-write-image`|Denies the write_image command without any pre-configured scope.|
|`allow-write-text`|Enables the write_text command without any pre-configured scope.|
|`deny-write-text`|Denies the write_text command without any pre-configured scope.|
@@ -139,14 +139,10 @@
},
"platforms": {
"description": "Target platforms this permission applies. By default all platforms are affected by this permission.",
"default": [
"linux",
"macOS",
"windows",
"android",
"iOS"
"type": [
"array",
"null"
],
"type": "array",
"items": {
"$ref": "#/definitions/Target"
}
@@ -299,31 +295,87 @@
"type": "string",
"oneOf": [
{
"description": "allow-read -> Enables the read command without any pre-configured scope.",
"description": "allow-clear -> Enables the clear command without any pre-configured scope.",
"type": "string",
"enum": [
"allow-read"
"allow-clear"
]
},
{
"description": "deny-read -> Denies the read command without any pre-configured scope.",
"description": "deny-clear -> Denies the clear command without any pre-configured scope.",
"type": "string",
"enum": [
"deny-read"
"deny-clear"
]
},
{
"description": "allow-write -> Enables the write command without any pre-configured scope.",
"description": "allow-read-image -> Enables the read_image command without any pre-configured scope.",
"type": "string",
"enum": [
"allow-write"
"allow-read-image"
]
},
{
"description": "deny-write -> Denies the write command without any pre-configured scope.",
"description": "deny-read-image -> Denies the read_image command without any pre-configured scope.",
"type": "string",
"enum": [
"deny-write"
"deny-read-image"
]
},
{
"description": "allow-read-text -> Enables the read_text command without any pre-configured scope.",
"type": "string",
"enum": [
"allow-read-text"
]
},
{
"description": "deny-read-text -> Denies the read_text command without any pre-configured scope.",
"type": "string",
"enum": [
"deny-read-text"
]
},
{
"description": "allow-write-html -> Enables the write_html command without any pre-configured scope.",
"type": "string",
"enum": [
"allow-write-html"
]
},
{
"description": "deny-write-html -> Denies the write_html command without any pre-configured scope.",
"type": "string",
"enum": [
"deny-write-html"
]
},
{
"description": "allow-write-image -> Enables the write_image command without any pre-configured scope.",
"type": "string",
"enum": [
"allow-write-image"
]
},
{
"description": "deny-write-image -> Denies the write_image command without any pre-configured scope.",
"type": "string",
"enum": [
"deny-write-image"
]
},
{
"description": "allow-write-text -> Enables the write_text command without any pre-configured scope.",
"type": "string",
"enum": [
"allow-write-text"
]
},
{
"description": "deny-write-text -> Denies the write_text command without any pre-configured scope.",
"type": "string",
"enum": [
"deny-write-text"
]
}
]