diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e9e90435..c4e2793f 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -42,7 +42,7 @@ jobs: run-tests: runs-on: ubuntu-latest name: Run tests - needs: [ build ] + needs: [build] steps: - uses: actions/checkout@v2 @@ -53,9 +53,9 @@ jobs: - name: Install dependencies run: npm ci env: - PUPPETEER_SKIP_CHROMIUM_DOWNLOAD: 'true' + PUPPETEER_SKIP_CHROMIUM_DOWNLOAD: "true" - name: Test code - uses: mujo-code/puppeteer-headful@master + uses: mymindstorm/puppeteer-headful@8f745c770f7f4c0f9f332d7c43a775f90e53779a with: args: npm test diff --git a/src/models/settings.ts b/src/models/settings.ts index ae793e76..f40cb2e1 100644 --- a/src/models/settings.ts +++ b/src/models/settings.ts @@ -153,7 +153,7 @@ export class UserSettings { ? StorageLocation.Local : storageLocation; const storageData: UserSettingsData = - (await chrome.storage[location].get("UserSettings")).UserSettings || {}; + (await chrome.storage[location].get("UserSettings"))?.UserSettings || {}; delete storageData[key]; UserSettings.items = storageData; @@ -163,7 +163,7 @@ export class UserSettings { private static async getStorageData(location: StorageLocation) { const storageData: UserSettingsData = - (await chrome.storage[location].get("UserSettings")).UserSettings || {}; + (await chrome.storage[location].get("UserSettings"))?.UserSettings || {}; return storageData; } diff --git a/src/store/Accounts.ts b/src/store/Accounts.ts index 22c00b1a..2a6bd0bf 100644 --- a/src/store/Accounts.ts +++ b/src/store/Accounts.ts @@ -480,8 +480,10 @@ export class Accounts implements Module { newStorageLocation === StorageLocation.Sync ) { const localData = await chrome.storage.local.get(); - delete localData.UserSettings; - await chrome.storage.sync.set(localData); + if (localData?.UserSettings) { + delete localData.UserSettings; + await chrome.storage.sync.set(localData); + } const syncData = await chrome.storage.sync.get(); // Double check if data was set