You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,6 +8,8 @@ Changes are organized by date, with the most recent changes listed first.
8
8
9
9
### 🔧 EXTERNAL SERVICES CONTROL PANEL IMPROVEMENTS
10
10
11
+
- Replaced all `window.localStorage` references in `external-services.js` with `globalThis.localStorage` to satisfy the `prefer-globalThis` lint rule and improve cross-environment compatibility.
12
+
11
13
- Improved `handleSavePreferences` in `external-services.js` to distinguish between localStorage being unavailable/disabled versus storage being full: a separate availability pre-check now throws `'browser storage is unavailable or disabled'`, while quota-exceeded errors (`QuotaExceededError`, `NS_ERROR_DOM_QUOTA_REACHED`, error code 22/1014) now throw `'browser storage is full'`.
12
14
- Added request deduplication to `fetchServiceData` via a lazily-initialised `inFlightRequests` map: concurrent calls for the same uncached service key now share a single in-flight Promise rather than queuing separate fetch operations.
13
15
- Refactored `loadServicePreferences` to use flat, sequential try-catch blocks instead of nested ones, eliminating the outer catch that could mask the distinction between localStorage access failures and JSON parse failures.
0 commit comments