Skip to content
This repository was archived by the owner on Dec 26, 2022. It is now read-only.
Prev Previous commit
Next Next commit
Rename to TaskInMyDay.ts
  • Loading branch information
Yadro committed Oct 12, 2021
commit 09303c4e197a6a9b277f9e1042a08e2c19b7f441
6 changes: 3 additions & 3 deletions src/base/TreeModelHelper.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { ITreeItem, ITreeItemWithParent } from '../types/ITreeItem';
import { TaskModelProxy } from '../modules/tasks/models/TaskModelProxy';
import { TaskInMyDay } from '../modules/tasks/models/TaskInMyDay';
import TaskModel from '../modules/tasks/models/TaskModel';
import TaskFactory from '../modules/tasks/TaskFactory';

Expand All @@ -18,7 +18,7 @@ const TreeModelHelper = {
},
copyItemsToTree(
sourceTree: TaskModel[],
destTree: TaskModelProxy[],
destTree: TaskInMyDay[],
keysToTask: string[]
) {
let keyIdx = 0;
Expand Down Expand Up @@ -64,7 +64,7 @@ const TreeModelHelper = {

copySubItemsToTree(
sourceTree: TaskModel[],
destTree: TaskModelProxy[],
destTree: TaskInMyDay[],
keysToTask: string[]
) {
if (!sourceTree) {
Expand Down
8 changes: 4 additions & 4 deletions src/modules/tasks/TaskFactory.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import AbstractFactory from '../../base/AbstractFactory';
import TasksByProject from './models/TasksByProject';
import TaskModel from './models/TaskModel';
import { TaskModelProxy, taskModelProxyHandler } from './models/TaskModelProxy';
import { TaskInMyDay, taskModelProxyHandler } from './models/TaskInMyDay';
import { DEFAULT_PROJECT_ID } from '../projects/models/ProjectModel';

export default class TaskFactory extends AbstractFactory {
Expand All @@ -16,9 +16,9 @@ export default class TaskFactory extends AbstractFactory {
return newData;
}

static createTaskModelProxy(taskModel: TaskModel): TaskModelProxy {
const target = new TaskModelProxy(taskModel, []);
static createTaskModelProxy(taskModel: TaskModel): TaskInMyDay {
const target = new TaskInMyDay(taskModel, []);

return new Proxy<TaskModelProxy>(target, taskModelProxyHandler);
return new Proxy<TaskInMyDay>(target, taskModelProxyHandler);
}
}
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
import TaskModel from './TaskModel';

export class TaskModelProxy extends TaskModel {
export class TaskInMyDay extends TaskModel {
origin: TaskModel | null = null;
children: TaskModelProxy[] = [];
children: TaskInMyDay[] = [];

constructor(originTaskModel: TaskModel, children: TaskModelProxy[]) {
constructor(originTaskModel: TaskModel, children: TaskInMyDay[]) {
super(originTaskModel);
this.origin = originTaskModel;
this.children = children;
}
}

export const taskModelProxyHandler: ProxyHandler<TaskModelProxy> = {
get(target: TaskModelProxy, prop: string | symbol): any {
return target?.[prop as keyof TaskModelProxy];
export const taskModelProxyHandler: ProxyHandler<TaskInMyDay> = {
get(target: TaskInMyDay, prop: string | symbol): any {
return target?.[prop as keyof TaskInMyDay];
},
set(target: TaskModelProxy, prop: string | symbol, value: any): boolean {
set(target: TaskInMyDay, prop: string | symbol, value: any): boolean {
if (prop === 'duration') {
console.error(
`TaskModel: Can't set prop '${prop.toString()}' in`,
Expand Down
4 changes: 2 additions & 2 deletions src/modules/tasks/models/TasksByProject.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import TaskModel from './TaskModel';
import { TaskModelProxy } from './TaskModelProxy';
import { TaskInMyDay } from './TaskInMyDay';

type Task = TaskModel | TaskModelProxy;
type Task = TaskModel | TaskInMyDay;
type TasksByProject = Record<string, Task[]>;

export default TasksByProject;