summaryrefslogtreecommitdiff
path: root/docs/md/fsm.mmd
diff options
context:
space:
mode:
authorjwijenbergh <jeroenwijenbergh@protonmail.com>2024-12-13 13:46:12 +0100
committerjwijenbergh <jeroenwijenbergh@protonmail.com>2024-12-13 13:46:12 +0100
commitab50e998cb8ae245fb8ff40edc9d17879addc795 (patch)
tree533d436980a96ae2dd99680b1e7abd02c8c9e483 /docs/md/fsm.mmd
parent02a54aed212fb69dbacbbd8629ea1fe3b272cddf (diff)
Docs: Pre-build mermaid files without plugin
Diffstat (limited to 'docs/md/fsm.mmd')
-rw-r--r--docs/md/fsm.mmd67
1 files changed, 67 insertions, 0 deletions
diff --git a/docs/md/fsm.mmd b/docs/md/fsm.mmd
new file mode 100644
index 0000000..6f4ea24
--- /dev/null
+++ b/docs/md/fsm.mmd
@@ -0,0 +1,67 @@
+graph TD
+
+style Deregistered fill:cyan
+Deregistered(Deregistered) -->|Register| Main
+
+style Main fill:white
+Main(Main) -->|Deregister| Deregistered
+
+style Main fill:white
+Main(Main) -->|Add a server| AddingServer
+
+style Main fill:white
+Main(Main) -->|Get a VPN config| GettingConfig
+
+style Main fill:white
+Main(Main) -->|Already connected| Connected
+
+style AddingServer fill:white
+AddingServer(AddingServer) -->|Authorize| OAuthStarted
+
+style OAuthStarted fill:white
+OAuthStarted(OAuthStarted) -->|Authorized| Main
+
+style GettingConfig fill:white
+GettingConfig(GettingConfig) -->|Invalid location| AskLocation
+
+style GettingConfig fill:white
+GettingConfig(GettingConfig) -->|Invalid or no profile| AskProfile
+
+style GettingConfig fill:white
+GettingConfig(GettingConfig) -->|Successfully got a configuration| GotConfig
+
+style GettingConfig fill:white
+GettingConfig(GettingConfig) -->|Authorize| OAuthStarted
+
+style AskLocation fill:white
+AskLocation(AskLocation) -->|Location chosen| GettingConfig
+
+style AskProfile fill:white
+AskProfile(AskProfile) -->|Profile chosen| GettingConfig
+
+style GotConfig fill:white
+GotConfig(GotConfig) -->|Get a VPN config again| GettingConfig
+
+style GotConfig fill:white
+GotConfig(GotConfig) -->|VPN is connecting| Connecting
+
+style Connecting fill:white
+Connecting(Connecting) -->|VPN is connected| Connected
+
+style Connecting fill:white
+Connecting(Connecting) -->|Cancel connecting| Disconnecting
+
+style Connected fill:white
+Connected(Connected) -->|VPN is disconnecting| Disconnecting
+
+style Disconnecting fill:white
+Disconnecting(Disconnecting) -->|VPN is disconnected| Disconnected
+
+style Disconnecting fill:white
+Disconnecting(Disconnecting) -->|Cancel disconnecting| Connected
+
+style Disconnected fill:white
+Disconnected(Disconnected) -->|Connect again| GettingConfig
+
+style Disconnected fill:white
+Disconnected(Disconnected) -->|Renew| OAuthStarted