import { defineStore } from 'pinia'; import { api } from 'src/boot/axios'; import { message, ptpUser, responseModel } from 'src/models'; import Keycloak, { KeycloakInitOptions, KeycloakLoginOptions } from 'keycloak-js'; export const useMessageStore = defineStore('messageStore', { state: () => ({ messages: [[]] as [message[]], }), actions: { async sendMessage(chatId : number, senderId : string, content : string) { await api.post("/messages/"+chatId+"/"+senderId+"/"+content).then((result) => { this.loadMessagesByChatID(chatId); }); }, loadMessagesByChatID(chatID : number) { this.getAllMessagesByChatID(chatID).then((messages) => { this.messages[chatID] = messages; }); }, async getAllMessagesByChatID(chatID : number) { return (await api.get("/messages/chat/"+chatID)).data; }, }, });