fix: preserve dates for chat imports

Co-Authored-By: conql <49243542+conql@users.noreply.github.com>
This commit is contained in:
Timothy Jaeryang Baek
2025-07-02 14:21:36 +04:00
parent 3f800c069e
commit 2c6227e4b6
6 changed files with 70 additions and 21 deletions

View File

@@ -37,7 +37,9 @@ export const importChat = async (
chat: object,
meta: object | null,
pinned?: boolean,
folderId?: string | null
folderId?: string | null,
createdAt: number | null = null,
updatedAt: number | null = null
) => {
let error = null;
@@ -52,7 +54,9 @@ export const importChat = async (
chat: chat,
meta: meta ?? {},
pinned: pinned,
folder_id: folderId
folder_id: folderId,
created_at: createdAt ?? null,
updated_at: updatedAt ?? null
})
})
.then(async (res) => {

View File

@@ -55,10 +55,7 @@
import { generateChatCompletion } from '$lib/apis/ollama';
import {
addTagById,
createNewChat,
deleteTagById,
deleteTagsById,
getAllTags,
getChatById,
getChatList,

View File

@@ -6,11 +6,10 @@
import {
archiveAllChats,
createNewChat,
deleteAllChats,
getAllChats,
getAllUserChats,
getChatList
getChatList,
importChat
} from '$lib/apis/chats';
import { getImportOrigin, convertOpenAIChats } from '$lib/utils';
import { onMount, getContext } from 'svelte';
@@ -58,10 +57,18 @@
console.log(chat);
if (chat.chat) {
await createNewChat(localStorage.token, chat.chat);
await importChat(
localStorage.token,
chat.chat,
chat.meta ?? {},
false,
null,
chat?.created_at ?? null,
chat?.updated_at ?? null
);
} else {
await createNewChat(localStorage.token, chat);
}
// Legacy format
await importChat(localStorage.token, chat, {}, false, null);
}
currentChatPage.set(1);

View File

@@ -29,14 +29,10 @@
const i18n = getContext('i18n');
import {
deleteChatById,
getChatList,
getAllTags,
getChatListBySearchText,
createNewChat,
getPinnedChatList,
toggleChatPinnedStatusById,
getChatPinnedStatusById,
getChatById,
updateChatFolderIdById,
importChat
@@ -202,7 +198,15 @@
for (const item of items) {
console.log(item);
if (item.chat) {
await importChat(localStorage.token, item.chat, item?.meta ?? {}, pinned, folderId);
await importChat(
localStorage.token,
item.chat,
item?.meta ?? {},
pinned,
folderId,
item?.created_at ?? null,
item?.updated_at ?? null
);
}
}
@@ -735,7 +739,15 @@
return null;
});
if (!chat && item) {
chat = await importChat(localStorage.token, item.chat, item?.meta ?? {});
chat = await importChat(
localStorage.token,
item.chat,
item?.meta ?? {},
false,
null,
item?.created_at ?? null,
item?.updated_at ?? null
);
}
if (chat) {
@@ -793,7 +805,15 @@
return null;
});
if (!chat && item) {
chat = await importChat(localStorage.token, item.chat, item?.meta ?? {});
chat = await importChat(
localStorage.token,
item.chat,
item?.meta ?? {},
false,
null,
item?.created_at ?? null,
item?.updated_at ?? null
);
}
if (chat) {

View File

@@ -132,7 +132,18 @@
return null;
});
if (!chat && item) {
chat = await importChat(localStorage.token, item.chat, item?.meta ?? {});
chat = await importChat(
localStorage.token,
item.chat,
item?.meta ?? {},
false,
null,
item?.created_at ?? null,
item?.updated_at ?? null
).catch((error) => {
toast.error(`${error}`);
return null;
});
}
// Move the chat