in apps/chat/src/utils/app/zip-import-export.ts [78:106]
export async function importZippedHistory(zipFile: File) {
const zip = await JSZip.loadAsync(zipFile);
const chatsLib = {} as PreUnZipedHistory;
chatsLib.res = [];
const regExpConversationsFolder = /^conversations\/*/;
const regExpConversationsHistory = /\.json$/i;
const regExpResFolder = /^res\/*/;
const regExpRes = /\..+$/;
zip.forEach((relativePath, zipEntry) => {
if (
regExpConversationsFolder.test(relativePath) &&
regExpConversationsHistory.test(relativePath) &&
!zipEntry.dir
) {
chatsLib.history = zipEntry;
}
if (
regExpResFolder.test(relativePath) &&
regExpRes.test(relativePath) &&
!zipEntry.dir
) {
chatsLib.res.push({ relativePath, zipEntry });
}
});
chatsLib.zip = zip;
return chatsLib;
}