1- import { action , makeObservable , observable } from 'mobx' ;
1+ import { makeAutoObservable } from 'mobx' ;
22
33import TaskService from './TaskService' ;
44import TaskModel from '../../models/TaskModel' ;
55import TasksByProject from '../../models/TasksByProject' ;
6- import AbstractTreeModelStore from '../../base/AbstractTreeModelStore ' ;
6+ import TreeModelStoreHelper from '../../base/TreeModelStoreHelper ' ;
77
8- export default class TaskStore extends AbstractTreeModelStore < TaskModel > {
8+ export default class TaskStore {
99 tasks : TasksByProject = { } ;
1010 activeTask : TaskModel | undefined ;
1111 private tasksService = new TaskService ( ) ;
1212
1313 constructor ( ) {
14- super ( ) ;
15- makeObservable ( this , {
16- tasks : observable ,
17- activeTask : observable ,
18- set : action ,
19- getTasks : action ,
20- getTaskByKey : action ,
21- getTaskByDate : action ,
22- add : action ,
23- startTimer : action ,
24- endTimer : action ,
25- restore : action ,
26- getCheckedKeys : action ,
27- checkTasks : action ,
28- } ) ;
14+ makeAutoObservable ( this ) ;
2915 }
3016
3117 set ( projectId : string , tasks : TaskModel [ ] ) {
@@ -43,7 +29,7 @@ export default class TaskStore extends AbstractTreeModelStore<TaskModel> {
4329 }
4430
4531 for ( const tasks of Object . values ( this . tasks ) ) {
46- const found = this . getItemRecursive ( tasks , condition ) ;
32+ const found = TreeModelStoreHelper . getItemRecursive ( tasks , condition ) ;
4733 if ( found ) {
4834 return found ;
4935 }
@@ -59,7 +45,7 @@ export default class TaskStore extends AbstractTreeModelStore<TaskModel> {
5945 }
6046
6147 for ( const tasks of Object . values ( this . tasks ) ) {
62- this . getItemsRecursive ( tasks , condition , result ) ;
48+ TreeModelStoreHelper . getItemsRecursive ( tasks , condition , result ) ;
6349 }
6450 return result ;
6551 }
@@ -98,9 +84,14 @@ export default class TaskStore extends AbstractTreeModelStore<TaskModel> {
9884 function condition ( task : TaskModel ) : boolean {
9985 return task . checked ;
10086 }
87+
10188 if ( Array . isArray ( this . tasks [ projectId ] ) ) {
10289 const found : TaskModel [ ] = [ ] ;
103- this . getItemsRecursive ( this . tasks [ projectId ] , condition , found ) ;
90+ TreeModelStoreHelper . getItemsRecursive (
91+ this . tasks [ projectId ] ,
92+ condition ,
93+ found
94+ ) ;
10495 return found . map ( ( f ) => f . key ) ;
10596 }
10697 return [ ] ;
@@ -129,7 +120,7 @@ export default class TaskStore extends AbstractTreeModelStore<TaskModel> {
129120 return task . active ;
130121 }
131122
132- return this . getItemRecursive ( tasks , condition ) ;
123+ return TreeModelStoreHelper . getItemRecursive ( tasks , condition ) ;
133124 }
134125
135126 private checkTasksRecursive ( tasks : TaskModel [ ] , taskIds : string [ ] ) {
0 commit comments