diff options
author | Paul Frazee <pfrazee@gmail.com> | 2022-09-02 11:51:46 -0500 |
---|---|---|
committer | Paul Frazee <pfrazee@gmail.com> | 2022-09-02 11:51:46 -0500 |
commit | 6835caa7609259a64ba0aa2c9ddb34b7d5eb7793 (patch) | |
tree | 7b467ac75f59c39699e098b6dba55e3ab291b083 /src/state/models/shell.ts | |
parent | 8de3b066ebb7cd420051670b446d520adca6cb23 (diff) | |
download | voidsky-6835caa7609259a64ba0aa2c9ddb34b7d5eb7793.tar.zst |
Add more robust modals controller
Diffstat (limited to 'src/state/models/shell.ts')
-rw-r--r-- | src/state/models/shell.ts | 28 |
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 + } +} |