1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
| import { types } from "mobx-state-tree";
|
| const IsReadyMixin = types
| .model({})
| .volatile(() => {
| return {
| _isReady: true,
| };
| })
| .views((self) => ({
| get isReady() {
| return self._isReady;
| },
| }))
| .actions((self) => {
| return {
| setReady(value) {
| self._isReady = value;
| },
| };
| });
|
| export default IsReadyMixin;
|
| export const IsReadyWithDepsMixin = IsReadyMixin.views((self) => ({
| get isReady() {
| return self._isReady && !self.regs?.filter((r) => !r.isReady).length;
| },
| }));
|
|