add CoreViewModel for drag&drop

This commit is contained in:
marlon-erler
2024-07-25 16:02:49 +02:00
parent be6f609ea2
commit 0ed71600c6
13 changed files with 71 additions and 14 deletions
+5
View File
@@ -6,6 +6,7 @@ import BoardsAndTasksModel, {
} from "../../Model/Files/boardsAndTasksModel";
import { Color } from "../../colors";
import CoreViewModel from "../Global/coreViewModel";
import { IndexManager } from "../../Model/Utility/utility";
import StorageModel from "../../Model/Global/storageModel";
import TaskPageViewModel from "./taskPageViewModel";
@@ -79,6 +80,7 @@ export default class BoardViewModel {
this.boardInfo.fileId
);
const taskViewModel: TaskViewModel = new TaskViewModel(
this.coreViewModel,
this.boardModel,
this,
taskFileContent
@@ -110,6 +112,7 @@ export default class BoardViewModel {
// view
showTaskInList = (taskFileContent: TaskFileContent): void => {
const taskViewModel: TaskViewModel = new TaskViewModel(
this.coreViewModel,
this.boardModel,
this,
taskFileContent
@@ -195,6 +198,7 @@ export default class BoardViewModel {
if (taskFileContent == null) continue;
const taskViewModel: TaskViewModel = new TaskViewModel(
this.coreViewModel,
this.boardModel,
this,
taskFileContent
@@ -212,6 +216,7 @@ export default class BoardViewModel {
// init
constructor(
public coreViewModel: CoreViewModel,
storageModel: StorageModel,
boardModel: BoardsAndTasksModel,
taskPageViewModel: TaskPageViewModel,
+7 -2
View File
@@ -3,6 +3,7 @@ import * as React from "bloatless-react";
import { ChatMessage } from "../../Model/Chat/chatModel";
import ChatMessageViewModel from "../Chat/chatMessageViewModel";
import ChatViewModel from "../Chat/chatViewModel";
import CoreViewModel from "../Global/coreViewModel";
export default class MessagePageViewModel {
chatViewModel: ChatViewModel;
@@ -39,6 +40,7 @@ export default class MessagePageViewModel {
// view
showChatMessage = (chatMessage: ChatMessage): void => {
const chatMessageModel = new ChatMessageViewModel(
this.coreViewModel,
this,
chatMessage,
chatMessage.sender == this.chatViewModel.settingsViewModel.username.value
@@ -62,9 +64,12 @@ export default class MessagePageViewModel {
};
// init
constructor(chatViewModel: ChatViewModel) {
constructor(
public coreViewModel: CoreViewModel,
chatViewModel: ChatViewModel
) {
this.chatViewModel = chatViewModel;
this.cannotSendMessage = React.createProxyState(
[this.chatViewModel.settingsViewModel.username, this.composingMessage],
() =>
+5 -1
View File
@@ -2,6 +2,7 @@ import * as React from "bloatless-react";
import ChatViewModel from "../Chat/chatViewModel";
import { Color } from "../../colors";
import CoreViewModel from "../Global/coreViewModel";
export default class SettingsPageViewModel {
chatViewModel: ChatViewModel;
@@ -110,7 +111,10 @@ export default class SettingsPageViewModel {
};
// init
constructor(chatViewModel: ChatViewModel) {
constructor(
public coreViewModel: CoreViewModel,
chatViewModel: ChatViewModel
) {
this.chatViewModel = chatViewModel;
this.loadListRelevantData();
+3
View File
@@ -4,6 +4,7 @@ import BoardsAndTasksModel, { BoardInfoFileContent } from "../../Model/Files/boa
import BoardViewModel from "./boardViewModel";
import ChatViewModel from "../Chat/chatViewModel";
import CoreViewModel from "../Global/coreViewModel";
import { IndexManager } from "../../Model/Utility/utility";
import StorageModel from "../../Model/Global/storageModel";
@@ -73,6 +74,7 @@ export default class TaskPageViewModel {
// view
showBoardInList = (boardInfo: BoardInfoFileContent): void => {
const boardViewModel: BoardViewModel = new BoardViewModel(
this.coreViewModel,
this.storageModel,
this.boardModel,
this,
@@ -140,6 +142,7 @@ export default class TaskPageViewModel {
// init
constructor(
public coreViewModel: CoreViewModel,
storageModel: StorageModel,
boardModel: BoardsAndTasksModel,
chatViewModel: ChatViewModel
+2
View File
@@ -4,6 +4,7 @@ import BoardsAndTasksModel, { TaskFileContent } from "../../Model/Files/boardsAn
import { localeCompare, padZero } from "../../Model/Utility/utility";
import BoardViewModel from "./boardViewModel";
import CoreViewModel from "../Global/coreViewModel";
export default class TaskViewModel {
boardModel: BoardsAndTasksModel;
@@ -138,6 +139,7 @@ export default class TaskViewModel {
// init
constructor(
public coreViewModel: CoreViewModel,
boardModel: BoardsAndTasksModel,
boardViewModel: BoardViewModel,
taskFileContent: TaskFileContent