base working button with saved state

This commit is contained in:
2026-03-18 19:59:07 +07:00
parent f3b51cf50c
commit 8144d64f58
33 changed files with 1085 additions and 193 deletions
@@ -0,0 +1,13 @@
# Automatically generated - DO NOT EDIT!
"$schema" = "../../schemas/schema.json"
[[permission]]
identifier = "allow-check-actual-vpn-status"
description = "Enables the check_actual_vpn_status command without any pre-configured scope."
commands.allow = ["check_actual_vpn_status"]
[[permission]]
identifier = "deny-check-actual-vpn-status"
description = "Denies the check_actual_vpn_status command without any pre-configured scope."
commands.deny = ["check_actual_vpn_status"]
@@ -0,0 +1,13 @@
# Automatically generated - DO NOT EDIT!
"$schema" = "../../schemas/schema.json"
[[permission]]
identifier = "allow-registerListener"
description = "Enables the registerListener command without any pre-configured scope."
commands.allow = ["registerListener"]
[[permission]]
identifier = "deny-registerListener"
description = "Denies the registerListener command without any pre-configured scope."
commands.deny = ["registerListener"]
@@ -1,13 +0,0 @@
# Automatically generated - DO NOT EDIT!
"$schema" = "../../schemas/schema.json"
[[permission]]
identifier = "allow-start-tunnel"
description = "Enables the start_tunnel command without any pre-configured scope."
commands.allow = ["start_tunnel"]
[[permission]]
identifier = "deny-start-tunnel"
description = "Denies the start_tunnel command without any pre-configured scope."
commands.deny = ["start_tunnel"]
@@ -0,0 +1,13 @@
# Automatically generated - DO NOT EDIT!
"$schema" = "../../schemas/schema.json"
[[permission]]
identifier = "allow-start-vpn"
description = "Enables the start_vpn command without any pre-configured scope."
commands.allow = ["start_vpn"]
[[permission]]
identifier = "deny-start-vpn"
description = "Denies the start_vpn command without any pre-configured scope."
commands.deny = ["start_vpn"]
@@ -1,13 +0,0 @@
# Automatically generated - DO NOT EDIT!
"$schema" = "../../schemas/schema.json"
[[permission]]
identifier = "allow-stop-tunnel"
description = "Enables the stop_tunnel command without any pre-configured scope."
commands.allow = ["stop_tunnel"]
[[permission]]
identifier = "deny-stop-tunnel"
description = "Denies the stop_tunnel command without any pre-configured scope."
commands.deny = ["stop_tunnel"]
@@ -0,0 +1,13 @@
# Automatically generated - DO NOT EDIT!
"$schema" = "../../schemas/schema.json"
[[permission]]
identifier = "allow-stop-vpn"
description = "Enables the stop_vpn command without any pre-configured scope."
commands.allow = ["stop_vpn"]
[[permission]]
identifier = "deny-stop-vpn"
description = "Denies the stop_vpn command without any pre-configured scope."
commands.deny = ["stop_vpn"]
@@ -0,0 +1,13 @@
# Automatically generated - DO NOT EDIT!
"$schema" = "../../schemas/schema.json"
[[permission]]
identifier = "allow-unregisterListener"
description = "Enables the unregisterListener command without any pre-configured scope."
commands.allow = ["unregisterListener"]
[[permission]]
identifier = "deny-unregisterListener"
description = "Denies the unregisterListener command without any pre-configured scope."
commands.deny = ["unregisterListener"]
@@ -10,12 +10,12 @@
<tr>
<td>
`vpn:allow-start-tunnel`
`vpn:allow-check-actual-vpn-status`
</td>
<td>
Enables the start_tunnel command without any pre-configured scope.
Enables the check_actual_vpn_status command without any pre-configured scope.
</td>
</tr>
@@ -23,12 +23,12 @@ Enables the start_tunnel command without any pre-configured scope.
<tr>
<td>
`vpn:deny-start-tunnel`
`vpn:deny-check-actual-vpn-status`
</td>
<td>
Denies the start_tunnel command without any pre-configured scope.
Denies the check_actual_vpn_status command without any pre-configured scope.
</td>
</tr>
@@ -36,12 +36,12 @@ Denies the start_tunnel command without any pre-configured scope.
<tr>
<td>
`vpn:allow-stop-tunnel`
`vpn:allow-registerListener`
</td>
<td>
Enables the stop_tunnel command without any pre-configured scope.
Enables the registerListener command without any pre-configured scope.
</td>
</tr>
@@ -49,12 +49,90 @@ Enables the stop_tunnel command without any pre-configured scope.
<tr>
<td>
`vpn:deny-stop-tunnel`
`vpn:deny-registerListener`
</td>
<td>
Denies the stop_tunnel command without any pre-configured scope.
Denies the registerListener command without any pre-configured scope.
</td>
</tr>
<tr>
<td>
`vpn:allow-start-vpn`
</td>
<td>
Enables the start_vpn command without any pre-configured scope.
</td>
</tr>
<tr>
<td>
`vpn:deny-start-vpn`
</td>
<td>
Denies the start_vpn command without any pre-configured scope.
</td>
</tr>
<tr>
<td>
`vpn:allow-stop-vpn`
</td>
<td>
Enables the stop_vpn command without any pre-configured scope.
</td>
</tr>
<tr>
<td>
`vpn:deny-stop-vpn`
</td>
<td>
Denies the stop_vpn command without any pre-configured scope.
</td>
</tr>
<tr>
<td>
`vpn:allow-unregisterListener`
</td>
<td>
Enables the unregisterListener command without any pre-configured scope.
</td>
</tr>
<tr>
<td>
`vpn:deny-unregisterListener`
</td>
<td>
Denies the unregisterListener command without any pre-configured scope.
</td>
</tr>
@@ -3,4 +3,7 @@ identifier = "allow-vpn-control"
description = "Allows Vpn Control"
[permission.commands]
allow = ["start_vpn", "stop_vpn"]
allow = ["start_vpn", "stop_vpn", "check_actual_vpn_status", "registerListener", "unregisterListener"]
[permission.events]
allow = ["status-change"]
@@ -295,28 +295,64 @@
"type": "string",
"oneOf": [
{
"description": "Enables the start_tunnel command without any pre-configured scope.",
"description": "Enables the check_actual_vpn_status command without any pre-configured scope.",
"type": "string",
"const": "allow-start-tunnel",
"markdownDescription": "Enables the start_tunnel command without any pre-configured scope."
"const": "allow-check-actual-vpn-status",
"markdownDescription": "Enables the check_actual_vpn_status command without any pre-configured scope."
},
{
"description": "Denies the start_tunnel command without any pre-configured scope.",
"description": "Denies the check_actual_vpn_status command without any pre-configured scope.",
"type": "string",
"const": "deny-start-tunnel",
"markdownDescription": "Denies the start_tunnel command without any pre-configured scope."
"const": "deny-check-actual-vpn-status",
"markdownDescription": "Denies the check_actual_vpn_status command without any pre-configured scope."
},
{
"description": "Enables the stop_tunnel command without any pre-configured scope.",
"description": "Enables the registerListener command without any pre-configured scope.",
"type": "string",
"const": "allow-stop-tunnel",
"markdownDescription": "Enables the stop_tunnel command without any pre-configured scope."
"const": "allow-registerListener",
"markdownDescription": "Enables the registerListener command without any pre-configured scope."
},
{
"description": "Denies the stop_tunnel command without any pre-configured scope.",
"description": "Denies the registerListener command without any pre-configured scope.",
"type": "string",
"const": "deny-stop-tunnel",
"markdownDescription": "Denies the stop_tunnel command without any pre-configured scope."
"const": "deny-registerListener",
"markdownDescription": "Denies the registerListener command without any pre-configured scope."
},
{
"description": "Enables the start_vpn command without any pre-configured scope.",
"type": "string",
"const": "allow-start-vpn",
"markdownDescription": "Enables the start_vpn command without any pre-configured scope."
},
{
"description": "Denies the start_vpn command without any pre-configured scope.",
"type": "string",
"const": "deny-start-vpn",
"markdownDescription": "Denies the start_vpn command without any pre-configured scope."
},
{
"description": "Enables the stop_vpn command without any pre-configured scope.",
"type": "string",
"const": "allow-stop-vpn",
"markdownDescription": "Enables the stop_vpn command without any pre-configured scope."
},
{
"description": "Denies the stop_vpn command without any pre-configured scope.",
"type": "string",
"const": "deny-stop-vpn",
"markdownDescription": "Denies the stop_vpn command without any pre-configured scope."
},
{
"description": "Enables the unregisterListener command without any pre-configured scope.",
"type": "string",
"const": "allow-unregisterListener",
"markdownDescription": "Enables the unregisterListener command without any pre-configured scope."
},
{
"description": "Denies the unregisterListener command without any pre-configured scope.",
"type": "string",
"const": "deny-unregisterListener",
"markdownDescription": "Denies the unregisterListener command without any pre-configured scope."
},
{
"description": "Allows Vpn Control",