Skip to content

Commit b9c7811

Browse files
committed
fix(browser): access chrome through window for browser without global
1 parent d5da030 commit b9c7811

File tree

3 files changed

+8
-8
lines changed

3 files changed

+8
-8
lines changed

src/utils/browser/browser-i18n.utils.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export const i18nTranslate = (value: string | BrowserI18nInput, ...modules: stri
1818
key = path ? `${path}__${value.key}` : value.key;
1919
substitution = value?.substitutions;
2020
}
21-
return chrome?.i18n.getMessage?.(key, substitution) || key;
21+
return window?.chrome?.i18n.getMessage?.(key, substitution) || key;
2222
};
2323

2424
/**

src/utils/browser/browser-storage.utils.ts

+4-4
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,17 @@ import type { RecursiveRecord } from '~/utils/typescript.utils';
33
/**
44
* @see [chrome.storage.sync](https://developer.chrome.com/docs/extensions/reference/storage/#type-SyncStorageArea)
55
*/
6-
export const syncStorage: chrome.storage.SyncStorageArea = chrome?.storage?.sync;
6+
export const syncStorage: chrome.storage.SyncStorageArea = window?.chrome?.storage?.sync;
77

88
/**
99
* @see [chrome.storage.local](https://developer.chrome.com/docs/extensions/reference/storage/#type-LocalStorageArea)
1010
*/
11-
export const localStorage: chrome.storage.LocalStorageArea = chrome?.storage?.local;
11+
export const localStorage: chrome.storage.LocalStorageArea = window?.chrome?.storage?.local;
1212

1313
/**
1414
* @see [chrome.storage.session](https://developer.chrome.com/docs/extensions/reference/storage/#type-StorageArea)
1515
*/
16-
export const sessionStorage: chrome.storage.StorageArea = chrome?.storage?.session;
16+
export const sessionStorage: chrome.storage.StorageArea = window?.chrome?.storage?.session;
1717

1818
const filterObject = (object: Record<string, unknown>, regex: string) =>
1919
Object.fromEntries(Object.entries(object).filter(([key]) => new RegExp(regex).test(key)));
@@ -24,7 +24,7 @@ const filterObject = (object: Record<string, unknown>, regex: string) =>
2424
* @param name The name of the storage area.
2525
*/
2626
export const storageWrapper = (area: chrome.storage.StorageArea, name: string) => {
27-
if (!chrome?.storage) {
27+
if (!window?.chrome?.storage) {
2828
console.warn('Storage API is not available, using local storage instead.');
2929

3030
const storage = {

src/utils/browser/browser.utils.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,16 @@ const openTab = (options: chrome.tabs.CreateProperties) => window.open(options.u
1010
/**
1111
* @see [chrome.tabs.create](https://developer.chrome.com/docs/extensions/reference/tabs/#method-create)
1212
*/
13-
export const createTab = (options: chrome.tabs.CreateProperties) => (chrome?.tabs?.create ?? openTab)(options);
13+
export const createTab = (options: chrome.tabs.CreateProperties) => (window?.chrome?.tabs?.create ?? openTab)(options);
1414

1515
/**
1616
* The ID of the current extension.
1717
* @see [chrome.runtime.id](https://developer.chrome.com/docs/extensions/reference/runtime/#property-id)
1818
*/
19-
export const chromeRuntimeId = chrome?.runtime?.id;
19+
export const chromeRuntimeId = window?.chrome?.runtime?.id;
2020

2121
/**
2222
* The i18n API for the current browser.
2323
* @see [chrome.i18n](https://developer.chrome.com/docs/extensions/reference/i18n/)
2424
*/
25-
export const chromeI18n = chrome?.i18n;
25+
export const chromeI18n = window?.chrome?.i18n;

0 commit comments

Comments
 (0)