From 3a2569b24ec7303368ad650fd3c614822e1bd597 Mon Sep 17 00:00:00 2001 From: marlon-erler Date: Tue, 22 Sep 2026 20:11:40 +0200 Subject: [PATCH] clean file content handling --- src/Model/Chat/.chatModel.ts.swp | Bin 0 -> 28672 bytes src/Model/Files/.fileModel.ts.swp | Bin 0 -> 20480 bytes src/Model/Files/fileModel.ts | 165 ++++++++++++++------------ src/View/keystrokes.ts | 2 +- src/ViewModel/Global/coreViewModel.ts | 2 + src/ViewModel/Pages/boardViewModel.ts | 1 + 6 files changed, 90 insertions(+), 80 deletions(-) create mode 100644 src/Model/Chat/.chatModel.ts.swp create mode 100644 src/Model/Files/.fileModel.ts.swp diff --git a/src/Model/Chat/.chatModel.ts.swp b/src/Model/Chat/.chatModel.ts.swp new file mode 100644 index 0000000000000000000000000000000000000000..da4d6d14c288c62e2cbbad71b2a4811df2c3bf6a GIT binary patch literal 28672 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 literal 0 HcmV?d00001 diff --git a/src/Model/Files/.fileModel.ts.swp b/src/Model/Files/.fileModel.ts.swp new file mode 100644 index 0000000000000000000000000000000000000000..a475fd96d72c3d37d337b0d34e0a11460d582a6a GIT binary patch literal 20480 zcmeI3ZHyIH8OINxg?d$^|Yt}OS`+E~5IZi2v)TizY^D^go?sRg)L}MraP;~>t=O)Hl=g&Rx&0B9_2V%yieEhSB zPta{T!E`rTsPv~$VJ(Wgp)=*xCbsO{(x`3jw%buH3Y)c^UDpe0qkiB;wHE#r$JIDm zMEgaNLV-eo1r+GTt@R&V#omAC9b&4#r@WT0e#hPgZYnMp3KR+y3KR+y3KR+y3KR+y z3KRa2gy1+rS!dGk9$kV?PIH!DHaFU^}=641-(2r5hOg1vm{J0iOrQ z!Cr7Pcqdp5F0N$k0yqZ(-~ks5fLE_)>=p1bI1ioxUjT=}5V#R62iJjrmKb{$oB>|~ zTftiJ#tO#%0iFXt0jI%9Z~}}127bGovEP6nf^UF_z+SKed;qKfZ$L}Z^E)5{0XPWu zgO%V}=>0hO444HyFbYfJDn_a1xvVW8huj&q(0B1YQK^ zz(e2@;BK%1)WEAq>TrBQ&vCn*V2)3DF}-lHx!Z}oPRxh-#&PZ)#@}wltqU8YIP^PH zBO?`g|FI!ajjSr}g&j^WY^YiqZnQ6bSPi_+R6Nbs^E(d6I|u4qR>_a@UdQ!Xe#dk9 z@CZL*Do$6S%kMidC`uR)A}{co@eU{UBHNV)YUA@-8&CUDRlSEIUo#2(D6UYG_d4

MmMvoVlr9!;r3mQhm;SJ!9c*mppRAbiZKJdfSt z^rREn#%J0`w@|~2ZYu0~i456>4~2g02{%-?lLUjRSN)dnx$1mIOxf{v5iJAk(--IL zs!@d*7JiFYyu;8GYHJRY3#Q|hCbEY6chJPI~_Mj3@sgFrP3t4I5@|p{EN~Bd2Q;wI>mMBrKCoQW6Cc94PMw>eBxDy?Wq?dj6cI2|7 zR87|$awQGM3>m)Fx78^ld?BYA91 z5pvpI8xo(bu|)S-qkWIp@`fjUp5Aj9aB-?X0CeNRQ%17qT;Emm5~TIvi&HDYGUa-mv~EWy<(y02Ol z3yfUcEx#JBdXiH`iPuz4o0M5==%VNs^N@t2(k=bmquS_`YDpJLWTwl>)3eX_^qz(q z6&^FHH{U}sx~$tA>_$Ri?SNc*jJIZpThDzxxD$giZY|Wdes&LvAt=^~vEC$EP!$J* zyiG61?sD3ml0DM|c}E{pP>wviuB=YtDosk`@uH-fe6Rmo9p4c)()y*iM6jMXpE?GtQivDL* z2M)M)IkkT}A}(VZ&5&7g#Wh~%to?QV;p_uJI%#e*kHb1AGlk)5`(w&PUQF8``9P`j zG5fHuI`!xk)u5!M#t`!k&ve6>WB2X!f|xf0Cz88gzpOPT8jy<~eC!|B^1xHqm*p zH}1C)ra0{x?FvOzTRU+$CzpTYhp{|oz-Y~CIU@`v8JB18GQRbCzKctYcBiyE>&?{p zz0W$-gVd4L~- z2SFFy54MBl;Ma)r&wv0N1b2h?ftvsWml5Cp1^fa09=rga29JTyfi9Q=_ki2MQm_R4 z6tVwz!K2_fcn}-~v!DlB;5M)n{2Q_VYv2O-9-th-!{C0f39JG)fTiG1$Orrp{1W^K zJPE!Iz6wr(6X46>I0(RfU>mp-tO1lucpY2@e+TEmDR2zz2OGf(W&FHa|2S=0|9o z5bF3>hlZ?Vwx802aqK6Ob7?o^mIzrAa}RCeEQj(7BoUO{`RPowwOt#;9=31O1cTL1 z)`wtW%V~OcByVN3Wve6PANc^+kSr3L-OUbC)UFdE{3$op-_TrMq~r}9sSFp444M5;6$Fh$#`&^<*#%qCah|)v1)c z);UTH%A2k*QqW5xWr_{IsGkOlPz7NS0$~hHYxp$Wirqe9w2~ZRDHC+aj?AdKY~Pez zmA)kV;);s-5E@!-ZX6$x`NWbMdhn2%OU8?w9@tvPepA(H-H#r~j)IDuf26PS-!_r2 zI;9)YY znG+Yl$_|EWPBZ}-aU#0`AldWM2x3vCdxl`H(+251Y6*=y3kQw!L zKAt4@`cq0+$Vq9+Oy<;08A|grm`=@#9HBKns`LKTWhXl${LVvON%L~rGUGD!%bUKz zl80*2g_B%f_UEijN-vRte$T_~QmIr31l^>7x?JbgtB+@4(qww65{)RfmguO;A?>10hk6g zPyz1+?*3cssZrl)�$3F?q0*d#WU_Dp{ zE>qkNo(E5Xlb{LqgMEPPZo>XDC_aS(g#v{Fg#v{Fg#v{Fg#y?aa#XWk0@A;9@&37a)n;xJwhm%pwaK1h|*T30Oy)XqMwb=wYHJpbip?TL;kli(r2e)VOeYtm{393-i+Ojk zFUf_Z%pzY}ls9HxjkE1iBNmn8`8O H`a|qL$5$FX literal 0 HcmV?d00001 diff --git a/src/Model/Files/fileModel.ts b/src/Model/Files/fileModel.ts index f73997b2..4c52f54d 100644 --- a/src/Model/Files/fileModel.ts +++ b/src/Model/Files/fileModel.ts @@ -70,143 +70,150 @@ export default class FileModel { const didStore: boolean = this.storeFileContent(fileContent); if (didStore == false) return; - this.boardsAndTasksModel.handleFileContent(fileContent); - this.chatModel.handleReaction(fileContent); + switch (fileContent.type) { + case "board-info": + case "task": + this.boardsAndTasksModel.handleFileContent(fileContent); + break; + case "reaction": + this.chatModel.handleReaction(fileContent); + break; + } }; // methods readonly addFileContentAndSend = ( - fileContent: FileContent, + fileContent: FileContent, ): void => { - this.handleFileContent(fileContent); - this.chatModel.sendMessage("", undefined, fileContent); + this.handleFileContent(fileContent); + this.chatModel.sendMessage("", undefined, fileContent); }; // storage readonly storeFileContent = (fileContent: FileContent): boolean => { - const fileContentPath: string[] = this.getFileContentPath( - fileContent.fileId, - fileContent.fileContentId, - ); + const fileContentPath: string[] = this.getFileContentPath( + fileContent.fileId, + fileContent.fileContentId, + ); - // check if fileContent already exists - const existingFileContent: string | null = - this.storageModel.read(fileContentPath); - if (existingFileContent != null) return false; + // check if fileContent already exists + const existingFileContent: string | null = + this.storageModel.read(fileContentPath); + if (existingFileContent != null) return false; - const stringifiedContent: string = stringify(fileContent); - this.storageModel.write(fileContentPath, stringifiedContent); - return true; + const stringifiedContent: string = stringify(fileContent); + this.storageModel.write(fileContentPath, stringifiedContent); + return true; }; readonly listFileIds = (): string[] => { - return this.storageModel.list(this.basePath); + return this.storageModel.list(this.basePath); }; readonly listFileContentIds = (fileId: string): string[] => { - const filePath: string[] = this.getFilePath(fileId); - return this.storageModel.list(filePath); + const filePath: string[] = this.getFilePath(fileId); + return this.storageModel.list(filePath); }; readonly selectLatestFileContentId = ( - fileContentIds: string[], + fileContentIds: string[], ): string | undefined => { - return fileContentIds[fileContentIds.length - 1]; + return fileContentIds[fileContentIds.length - 1]; }; readonly getFileContent = >( - fileId: string, - fileContentName: string, - reference: T, + fileId: string, + fileContentName: string, + reference: T, ): T | null => { - const filePath: string[] = this.getFileContentPath( - fileId, - fileContentName, - ); - const fileContentOrNull: T | null = this.storageModel.readStringifiable( - filePath, - reference, - ); - return fileContentOrNull; + const filePath: string[] = this.getFileContentPath( + fileId, + fileContentName, + ); + const fileContentOrNull: T | null = this.storageModel.readStringifiable( + filePath, + reference, + ); + return fileContentOrNull; }; readonly getLatestFileContent = >( - fileId: string, - reference: T, + fileId: string, + reference: T, ): T | null => { - const fileContentsIds: string[] = this.listFileContentIds(fileId); - const latestFileContentId: string | undefined = - this.selectLatestFileContentId(fileContentsIds); - if (latestFileContentId == undefined) return null; + const fileContentsIds: string[] = this.listFileContentIds(fileId); + const latestFileContentId: string | undefined = + this.selectLatestFileContentId(fileContentsIds); + if (latestFileContentId == undefined) return null; - const fileContent: T | null = this.getFileContent( - fileId, - latestFileContentId, - reference, - ); - return fileContent; + const fileContent: T | null = this.getFileContent( + fileId, + latestFileContentId, + reference, + ); + return fileContent; }; // init constructor( - storageModel: StorageModel, - settingsModel: SettingsModel, - chatModel: ChatModel, + storageModel: StorageModel, + settingsModel: SettingsModel, + chatModel: ChatModel, ) { - this.chatModel = chatModel; - this.settingsModel = settingsModel; - this.storageModel = storageModel; + this.chatModel = chatModel; + this.settingsModel = settingsModel; + this.storageModel = storageModel; - this.boardsAndTasksModel = new BoardsAndTasksModel( - this.storageModel, - this.settingsModel, - chatModel, - this, - ); + this.boardsAndTasksModel = new BoardsAndTasksModel( + this.storageModel, + this.settingsModel, + chatModel, + this, + ); } // utility static generateFileContentId = (creationDate: string): string => { - return creationDate + v4(); + return creationDate + v4(); }; static createFileContent = ( - fileId: string, - type: T, + fileId: string, + type: T, ): FileContent => { - const creationDate: string = createTimestamp(); - const fileContentId: string = - FileModel.generateFileContentId(creationDate); + const creationDate: string = createTimestamp(); + const fileContentId: string = + FileModel.generateFileContentId(creationDate); - return { - dataVersion: DATA_VERSION, + return { + dataVersion: DATA_VERSION, - fileId, - fileContentId, - creationDate, - type, - }; + fileId, + fileContentId, + creationDate, + type, + }; }; } // paths export enum FileModelSubPath { Data = "data", - Model = "model", - ModelView = "view", - ModelTask = "tasks", - ModelCalendar = "calendar", + Model = "model", + ModelView = "view", + ModelTask = "tasks", + ModelCalendar = "calendar", } // types export interface FileContent extends ValidObject, StringEntryObject { - readonly fileId: string; - readonly fileContentId: string; - readonly creationDate: string; + readonly fileId: string; + readonly fileContentId: string; + readonly creationDate: string; - readonly type: T; -} + readonly type: T; + } // references export const FileContentReference: FileContent = { diff --git a/src/View/keystrokes.ts b/src/View/keystrokes.ts index 1a8b1529..f3014aff 100644 --- a/src/View/keystrokes.ts +++ b/src/View/keystrokes.ts @@ -6,5 +6,5 @@ export enum CommonKeys { CloseOrCancel = "backspace", Apply = "enter", Settings = ",", - Create = ";", + Create = "a", } diff --git a/src/ViewModel/Global/coreViewModel.ts b/src/ViewModel/Global/coreViewModel.ts index 2f1d2f5d..6f2c35a6 100644 --- a/src/ViewModel/Global/coreViewModel.ts +++ b/src/ViewModel/Global/coreViewModel.ts @@ -49,7 +49,9 @@ export default class CoreViewModel { }; handleKeyDown = (e: KeyboardEvent): void => { + if (!(e instanceof KeyboardEvent)) return console.trace("NOT A KEY EVENT"); if (CoreViewModel.checkIsKeystroke(e) == false) return; + console.log(e.key); e.preventDefault(); const contexts: Context[] = this.contexts; while (contexts.length > 0) { diff --git a/src/ViewModel/Pages/boardViewModel.ts b/src/ViewModel/Pages/boardViewModel.ts index 0c9c7b66..805adf0c 100644 --- a/src/ViewModel/Pages/boardViewModel.ts +++ b/src/ViewModel/Pages/boardViewModel.ts @@ -154,6 +154,7 @@ export default class BoardViewModel extends TaskContainingPageViewModel { this, taskFileContent, ); + console.log("STILL HERE", taskFileContent.fileId); this.taskViewModels.set(taskFileContent.fileId, taskViewModel); };