This code works great with small ones when saving small files. But it does not save large ones of about 5mb in size. Why does dropbox saver not save files larger than 5 MB when creating a link via reader.readAsDataURL(blob)
$(".LinguoKey_1w_DropboxExportProgressButton").click(async function () { const localStorageData = {}; for (let i = 0; i < localStorage.length; i++) { const key = localStorage.key(i); localStorageData[key] = localStorage.getItem(key); } const indexedDBData = {}; const dbs = await indexedDB.databases(); // Получаем список БД for (const {name, version} of dbs) { if (!name) continue; const dbDump = await exportIndexedDB(name); indexedDBData[name] = { version, ...dbDump }; } const result = { localStorage: localStorageData, indexedDB: indexedDBData }; const blob = new Blob([JSON.stringify(result, null, 2)], {type: "application/json"}); const blobUrl = await new Promise((resolve, reject) => { const reader = new FileReader() reader.readAsDataURL(blob) reader.onerror = function (error) { reject(error) } reader.onloadend = function () { resolve(reader.result) } }) const options = { files: [ { url: blobUrl, filename: "lingoukey_backup.json" } ], error(errorMessage) { alert(errorMessage.message) } } try { window.Dropbox.save(options) } catch (errorMessage) { console.error(errorMessage) alert(errorMessage.message) }})