about summary refs log tree commit diff
path: root/src/state/models/shell.ts
diff options
context:
space:
mode:
authorPaul Frazee <pfrazee@gmail.com>2022-09-02 11:51:46 -0500
committerPaul Frazee <pfrazee@gmail.com>2022-09-02 11:51:46 -0500
commit6835caa7609259a64ba0aa2c9ddb34b7d5eb7793 (patch)
tree7b467ac75f59c39699e098b6dba55e3ab291b083 /src/state/models/shell.ts
parent8de3b066ebb7cd420051670b446d520adca6cb23 (diff)
downloadvoidsky-6835caa7609259a64ba0aa2c9ddb34b7d5eb7793.tar.zst
Add more robust modals controller
Diffstat (limited to 'src/state/models/shell.ts')
-rw-r--r--src/state/models/shell.ts28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/state/models/shell.ts b/src/state/models/shell.ts
new file mode 100644
index 000000000..6755393cd
--- /dev/null
+++ b/src/state/models/shell.ts
@@ -0,0 +1,28 @@
+import {makeAutoObservable} from 'mobx'
+
+export class LinkActionsModel {
+  name = 'link-actions'
+
+  constructor(public href: string, public title: string) {
+    makeAutoObservable(this)
+  }
+}
+
+export class ShellModel {
+  isModalActive = false
+  activeModal: LinkActionsModel | undefined
+
+  constructor() {
+    makeAutoObservable(this)
+  }
+
+  openModal(modal: LinkActionsModel) {
+    this.isModalActive = true
+    this.activeModal = modal
+  }
+
+  closeModal() {
+    this.isModalActive = false
+    this.activeModal = undefined
+  }
+}