12345678910111213141516171819202122232425262728293031323334353637 |
- import { ref, unref } from 'vue';
- export const useChat = () => {
- const chatDataSource = ref([]);
- const createChat = chat => {
- chatDataSource.value = [chat];
- }
- const addChat = chat => {
- chatDataSource.value.push(chat);
- }
- const updateChat = chat => {
- const length = unref(chatDataSource).length;
- const index = length ? length - 1 : length;
- chatDataSource.value[index] = chat;
- }
- const clearChat = () => {
- chatDataSource.value = [];
- }
- const updateById = params => {
- const i = chatDataSource.value.findIndex(({ id }) => id === params.id);
- chatDataSource.value[i] = { ...chatDataSource.value[i], ...params};
- }
- return {
- chatDataSource,
- createChat,
- addChat,
- updateChat,
- clearChat,
- updateById
- }
- }
|