fix bug with creating tasks

This commit is contained in:
marlon-erler
2024-07-26 06:56:34 +02:00
parent 1afea509f3
commit 43363a4ed1
7 changed files with 70 additions and 7 deletions
+31 -3
View File
@@ -689,6 +689,11 @@
const paddedMonth = month.padStart(2, "0");
return `${paddedYear}-${paddedMonth}`;
};
static getISODateString = (year, month, date) => {
const monthString = _CalendarModel.getMonthString(year, month);
const paddedDate = date.padStart(2, "0");
return `${monthString}-${paddedDate}`;
};
};
// src/colors.ts
@@ -1582,7 +1587,7 @@
selectedTaskViewModel = new State(void 0);
taskViewModels = new MapState();
// methods
createTask = (boardId) => {
createTaskFromBoardId = (boardId) => {
const taskFileContent = this.boardsAndTasksModel.createTask(boardId);
const taskViewModel = new TaskViewModel(
this.coreViewModel,
@@ -1656,6 +1661,23 @@
selectedMonth = new State(0);
selectedDate = new State(0);
monthGrid = new State(void 0);
// methods
createEvent = () => {
const taskFileContent = this.boardsAndTasksModel.createTask("events");
taskFileContent.date = CalendarModel.getISODateString(
this.selectedYear.value.toString(),
this.selectedMonth.value.toString(),
this.selectedDate.value.toString()
);
const taskViewModel = new TaskViewModel(
this.coreViewModel,
this.boardsAndTasksModel,
this,
taskFileContent
);
this.selectTask(taskViewModel);
this.updateTaskIndices();
};
// view
getTaskMapState = (taskFileContent) => {
if (this.monthGrid.value == null) return null;
@@ -1997,6 +2019,9 @@
this.close();
};
// methods
createTask = () => {
this.createTaskFromBoardId(this.boardInfo.fileId);
};
handleDropWithinBoard = (category, status) => {
const draggedObject = this.coreViewModel.draggedObject.value;
if (draggedObject instanceof TaskViewModel == false) return;
@@ -2522,7 +2547,9 @@
yearInputPlaceholder: "2000",
monthInputPlaceholder: "01",
///
searchEventsHeadline: "Search Events"
searchEventsHeadline: "Search Events",
///
events: "Events"
}
}
};
@@ -2792,7 +2819,8 @@
"button",
{
class: "ghost",
"aria-label": translations.chatPage.task.createTaskButtonAudioLabel
"aria-label": translations.chatPage.task.createTaskButtonAudioLabel,
"on:click": calendarPageViewModel.createEvent
},
/* @__PURE__ */ createElement("span", { class: "icon" }, "add")
))), /* @__PURE__ */ createElement("div", { class: "content", "children:set": mainContent }))), /* @__PURE__ */ createElement(
+6
View File
@@ -112,6 +112,12 @@ export default class CalendarModel {
const paddedMonth: string = month.padStart(2, "0");
return `${paddedYear}-${paddedMonth}`;
};
static getISODateString = (year: string, month: string, date: string): string => {
const monthString: string = CalendarModel.getMonthString(year, month);
const paddedDate: string = date.padStart(2, "0");
return `${monthString}-${paddedDate}`;
};
}
export enum CalendarModelSubPaths {
+1
View File
@@ -129,6 +129,7 @@ export function CalendarPage(calendarPageViewModel: CalendarPageViewModel) {
aria-label={
translations.chatPage.task.createTaskButtonAudioLabel
}
on:click={calendarPageViewModel.createEvent}
>
<span class="icon">add</span>
</button>
+5 -1
View File
@@ -200,7 +200,11 @@ const englishTranslations = {
///
searchEventsHeadline: "Search Events"
searchEventsHeadline: "Search Events",
///
events: "Events",
},
},
};
+4 -1
View File
@@ -7,7 +7,6 @@ import BoardsAndTasksModel, {
import { Color } from "../../colors";
import CoreViewModel from "../Global/coreViewModel";
import { IndexManager } from "../../Model/Utility/utility";
import StorageModel from "../../Model/Global/storageModel";
import TaskContainingPageViewModel from "./taskContainingPageViewModel";
import TaskPageViewModel from "./taskPageViewModel";
@@ -69,6 +68,10 @@ export default class BoardViewModel extends TaskContainingPageViewModel {
};
// methods
createTask = (): void => {
this.createTaskFromBoardId(this.boardInfo.fileId);
}
handleDropWithinBoard = (category?: string, status?: string): void => {
const draggedObject: any = this.coreViewModel.draggedObject.value;
if (draggedObject instanceof TaskViewModel == false) return;
@@ -39,6 +39,27 @@ export default class CalendarPageViewModel extends TaskContainingPageViewModel {
monthGrid: React.State<MonthGrid<React.MapState<TaskViewModel>> | undefined> =
new React.State<any>(undefined);
// methods
createEvent = (): void => {
const taskFileContent: TaskFileContent =
this.boardsAndTasksModel.createTask("events");
taskFileContent.date = CalendarModel.getISODateString(
this.selectedYear.value.toString(),
this.selectedMonth.value.toString(),
this.selectedDate.value.toString()
);
const taskViewModel: TaskViewModel = new TaskViewModel(
this.coreViewModel,
this.boardsAndTasksModel,
this,
taskFileContent
);
this.selectTask(taskViewModel);
this.updateTaskIndices();
};
// view
getTaskMapState = (
taskFileContent: TaskFileContent
@@ -25,7 +25,7 @@ export default class TaskContainingPageViewModel {
taskViewModels: React.MapState<TaskViewModel> = new React.MapState();
// methods
createTask = (boardId: string): void => {
createTaskFromBoardId = (boardId: string): void => {
const taskFileContent: TaskFileContent =
this.boardsAndTasksModel.createTask(boardId);
const taskViewModel: TaskViewModel = new TaskViewModel(