@addonova/browser 0.0.0-stage → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +434 -2
- package/dist/adapters/chrome/index.d.ts +9 -0
- package/dist/adapters/chrome/index.d.ts.map +1 -0
- package/dist/adapters/chrome/index.js +12 -0
- package/dist/adapters/chrome/index.js.map +1 -0
- package/dist/adapters/chromium/index.d.ts +12 -0
- package/dist/adapters/chromium/index.d.ts.map +1 -0
- package/dist/adapters/chromium/index.js +12 -0
- package/dist/adapters/chromium/index.js.map +1 -0
- package/dist/adapters/edge/index.d.ts +11 -0
- package/dist/adapters/edge/index.d.ts.map +1 -0
- package/dist/adapters/edge/index.js +13 -0
- package/dist/adapters/edge/index.js.map +1 -0
- package/dist/adapters/firefox/index.d.ts +10 -0
- package/dist/adapters/firefox/index.d.ts.map +1 -0
- package/dist/adapters/firefox/index.js +12 -0
- package/dist/adapters/firefox/index.js.map +1 -0
- package/dist/adapters/shared/adapter.d.ts +13 -0
- package/dist/adapters/shared/adapter.d.ts.map +1 -0
- package/dist/adapters/shared/adapter.js +24 -0
- package/dist/adapters/shared/adapter.js.map +1 -0
- package/dist/adapters/shared/namespace.d.ts +4 -0
- package/dist/adapters/shared/namespace.d.ts.map +1 -0
- package/dist/adapters/shared/namespace.js +20 -0
- package/dist/adapters/shared/namespace.js.map +1 -0
- package/dist/adapters/types.d.ts +10 -0
- package/dist/adapters/types.d.ts.map +1 -0
- package/dist/adapters/types.js +2 -0
- package/dist/adapters/types.js.map +1 -0
- package/dist/api/action/index.d.ts +6 -0
- package/dist/api/action/index.d.ts.map +1 -0
- package/dist/api/action/index.js +56 -0
- package/dist/api/action/index.js.map +1 -0
- package/dist/api/alarms/index.d.ts +5 -0
- package/dist/api/alarms/index.d.ts.map +1 -0
- package/dist/api/alarms/index.js +34 -0
- package/dist/api/alarms/index.js.map +1 -0
- package/dist/api/bookmarks/index.d.ts +5 -0
- package/dist/api/bookmarks/index.d.ts.map +1 -0
- package/dist/api/bookmarks/index.js +39 -0
- package/dist/api/bookmarks/index.js.map +1 -0
- package/dist/api/browser.d.ts +3 -0
- package/dist/api/browser.d.ts.map +1 -0
- package/dist/api/browser.js +2 -0
- package/dist/api/browser.js.map +1 -0
- package/dist/api/commands/index.d.ts +5 -0
- package/dist/api/commands/index.d.ts.map +1 -0
- package/dist/api/commands/index.js +12 -0
- package/dist/api/commands/index.js.map +1 -0
- package/dist/api/context-menus/index.d.ts +5 -0
- package/dist/api/context-menus/index.d.ts.map +1 -0
- package/dist/api/context-menus/index.js +21 -0
- package/dist/api/context-menus/index.js.map +1 -0
- package/dist/api/cookies/index.d.ts +5 -0
- package/dist/api/cookies/index.d.ts.map +1 -0
- package/dist/api/cookies/index.js +21 -0
- package/dist/api/cookies/index.js.map +1 -0
- package/dist/api/downloads/index.d.ts +5 -0
- package/dist/api/downloads/index.d.ts.map +1 -0
- package/dist/api/downloads/index.js +20 -0
- package/dist/api/downloads/index.js.map +1 -0
- package/dist/api/helpers.d.ts +17 -0
- package/dist/api/helpers.d.ts.map +1 -0
- package/dist/api/helpers.js +100 -0
- package/dist/api/helpers.js.map +1 -0
- package/dist/api/i18n/index.d.ts +5 -0
- package/dist/api/i18n/index.d.ts.map +1 -0
- package/dist/api/i18n/index.js +17 -0
- package/dist/api/i18n/index.js.map +1 -0
- package/dist/api/lazy-adapter.d.ts +5 -0
- package/dist/api/lazy-adapter.d.ts.map +1 -0
- package/dist/api/lazy-adapter.js +37 -0
- package/dist/api/lazy-adapter.js.map +1 -0
- package/dist/api/notifications/index.d.ts +5 -0
- package/dist/api/notifications/index.d.ts.map +1 -0
- package/dist/api/notifications/index.js +27 -0
- package/dist/api/notifications/index.js.map +1 -0
- package/dist/api/permissions/index.d.ts +5 -0
- package/dist/api/permissions/index.d.ts.map +1 -0
- package/dist/api/permissions/index.js +24 -0
- package/dist/api/permissions/index.js.map +1 -0
- package/dist/api/runtime/index.d.ts +5 -0
- package/dist/api/runtime/index.d.ts.map +1 -0
- package/dist/api/runtime/index.js +38 -0
- package/dist/api/runtime/index.js.map +1 -0
- package/dist/api/scripting/index.d.ts +5 -0
- package/dist/api/scripting/index.d.ts.map +1 -0
- package/dist/api/scripting/index.js +15 -0
- package/dist/api/scripting/index.js.map +1 -0
- package/dist/api/sessions/index.d.ts +5 -0
- package/dist/api/sessions/index.d.ts.map +1 -0
- package/dist/api/sessions/index.js +19 -0
- package/dist/api/sessions/index.js.map +1 -0
- package/dist/api/singletons.d.ts +40 -0
- package/dist/api/singletons.d.ts.map +1 -0
- package/dist/api/singletons.js +60 -0
- package/dist/api/singletons.js.map +1 -0
- package/dist/api/storage/index.d.ts +6 -0
- package/dist/api/storage/index.d.ts.map +1 -0
- package/dist/api/storage/index.js +57 -0
- package/dist/api/storage/index.js.map +1 -0
- package/dist/api/tabs/index.d.ts +5 -0
- package/dist/api/tabs/index.d.ts.map +1 -0
- package/dist/api/tabs/index.js +49 -0
- package/dist/api/tabs/index.js.map +1 -0
- package/dist/api/web-navigation/index.d.ts +5 -0
- package/dist/api/web-navigation/index.d.ts.map +1 -0
- package/dist/api/web-navigation/index.js +30 -0
- package/dist/api/web-navigation/index.js.map +1 -0
- package/dist/api/web-request/index.d.ts +5 -0
- package/dist/api/web-request/index.d.ts.map +1 -0
- package/dist/api/web-request/index.js +27 -0
- package/dist/api/web-request/index.js.map +1 -0
- package/dist/api/windows/index.d.ts +5 -0
- package/dist/api/windows/index.d.ts.map +1 -0
- package/dist/api/windows/index.js +27 -0
- package/dist/api/windows/index.js.map +1 -0
- package/dist/browser/detect.d.ts +19 -0
- package/dist/browser/detect.d.ts.map +1 -0
- package/dist/browser/detect.js +89 -0
- package/dist/browser/detect.js.map +1 -0
- package/dist/browser/info.d.ts +17 -0
- package/dist/browser/info.d.ts.map +1 -0
- package/dist/browser/info.js +77 -0
- package/dist/browser/info.js.map +1 -0
- package/dist/browser/resolve.d.ts +9 -0
- package/dist/browser/resolve.d.ts.map +1 -0
- package/dist/browser/resolve.js +57 -0
- package/dist/browser/resolve.js.map +1 -0
- package/dist/browser/support.d.ts +8 -0
- package/dist/browser/support.d.ts.map +1 -0
- package/dist/browser/support.js +18 -0
- package/dist/browser/support.js.map +1 -0
- package/dist/build/target.d.ts +5 -0
- package/dist/build/target.d.ts.map +1 -0
- package/dist/build/target.js +21 -0
- package/dist/build/target.js.map +1 -0
- package/dist/entries/chrome.d.ts +49 -0
- package/dist/entries/chrome.d.ts.map +1 -0
- package/dist/entries/chrome.js +94 -0
- package/dist/entries/chrome.js.map +1 -0
- package/dist/entries/chromium.d.ts +49 -0
- package/dist/entries/chromium.d.ts.map +1 -0
- package/dist/entries/chromium.js +95 -0
- package/dist/entries/chromium.js.map +1 -0
- package/dist/entries/edge.d.ts +49 -0
- package/dist/entries/edge.d.ts.map +1 -0
- package/dist/entries/edge.js +94 -0
- package/dist/entries/edge.js.map +1 -0
- package/dist/entries/firefox.d.ts +49 -0
- package/dist/entries/firefox.d.ts.map +1 -0
- package/dist/entries/firefox.js +93 -0
- package/dist/entries/firefox.js.map +1 -0
- package/dist/entries/info.d.ts +5 -0
- package/dist/entries/info.d.ts.map +1 -0
- package/dist/entries/info.js +21 -0
- package/dist/entries/info.js.map +1 -0
- package/dist/entries/shared-exports.d.ts +10 -0
- package/dist/entries/shared-exports.d.ts.map +1 -0
- package/dist/entries/shared-exports.js +5 -0
- package/dist/entries/shared-exports.js.map +1 -0
- package/dist/entries/support.d.ts +6 -0
- package/dist/entries/support.d.ts.map +1 -0
- package/dist/entries/support.js +16 -0
- package/dist/entries/support.js.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -0
- package/dist/shared/capabilities.d.ts +25 -0
- package/dist/shared/capabilities.d.ts.map +1 -0
- package/dist/shared/capabilities.js +41 -0
- package/dist/shared/capabilities.js.map +1 -0
- package/dist/shared/errors.d.ts +18 -0
- package/dist/shared/errors.d.ts.map +1 -0
- package/dist/shared/errors.js +32 -0
- package/dist/shared/errors.js.map +1 -0
- package/dist/shared/events.d.ts +11 -0
- package/dist/shared/events.d.ts.map +1 -0
- package/dist/shared/events.js +19 -0
- package/dist/shared/events.js.map +1 -0
- package/dist/shared/objects.d.ts +4 -0
- package/dist/shared/objects.d.ts.map +1 -0
- package/dist/shared/objects.js +14 -0
- package/dist/shared/objects.js.map +1 -0
- package/dist/shared/promises.d.ts +11 -0
- package/dist/shared/promises.d.ts.map +1 -0
- package/dist/shared/promises.js +70 -0
- package/dist/shared/promises.js.map +1 -0
- package/dist/types/action.d.ts +35 -0
- package/dist/types/action.d.ts.map +1 -0
- package/dist/types/action.js +2 -0
- package/dist/types/action.js.map +1 -0
- package/dist/types/alarms.d.ts +21 -0
- package/dist/types/alarms.d.ts.map +1 -0
- package/dist/types/alarms.js +2 -0
- package/dist/types/alarms.js.map +1 -0
- package/dist/types/bookmarks.d.ts +57 -0
- package/dist/types/bookmarks.d.ts.map +1 -0
- package/dist/types/bookmarks.js +2 -0
- package/dist/types/bookmarks.js.map +1 -0
- package/dist/types/commands.d.ts +11 -0
- package/dist/types/commands.d.ts.map +1 -0
- package/dist/types/commands.js +2 -0
- package/dist/types/commands.js.map +1 -0
- package/dist/types/context-menus.d.ts +48 -0
- package/dist/types/context-menus.d.ts.map +1 -0
- package/dist/types/context-menus.js +2 -0
- package/dist/types/context-menus.js.map +1 -0
- package/dist/types/cookies.d.ts +54 -0
- package/dist/types/cookies.d.ts.map +1 -0
- package/dist/types/cookies.js +2 -0
- package/dist/types/cookies.js.map +1 -0
- package/dist/types/downloads.d.ts +43 -0
- package/dist/types/downloads.d.ts.map +1 -0
- package/dist/types/downloads.js +2 -0
- package/dist/types/downloads.js.map +1 -0
- package/dist/types/i18n.d.ts +14 -0
- package/dist/types/i18n.d.ts.map +1 -0
- package/dist/types/i18n.js +2 -0
- package/dist/types/i18n.js.map +1 -0
- package/dist/types/index.d.ts +19 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/notifications.d.ts +35 -0
- package/dist/types/notifications.d.ts.map +1 -0
- package/dist/types/notifications.js +2 -0
- package/dist/types/notifications.js.map +1 -0
- package/dist/types/permissions.d.ts +14 -0
- package/dist/types/permissions.d.ts.map +1 -0
- package/dist/types/permissions.js +2 -0
- package/dist/types/permissions.js.map +1 -0
- package/dist/types/runtime.d.ts +58 -0
- package/dist/types/runtime.d.ts.map +1 -0
- package/dist/types/runtime.js +2 -0
- package/dist/types/runtime.js.map +1 -0
- package/dist/types/scripting.d.ts +30 -0
- package/dist/types/scripting.d.ts.map +1 -0
- package/dist/types/scripting.js +2 -0
- package/dist/types/scripting.js.map +1 -0
- package/dist/types/sessions.d.ts +28 -0
- package/dist/types/sessions.d.ts.map +1 -0
- package/dist/types/sessions.js +2 -0
- package/dist/types/sessions.js.map +1 -0
- package/dist/types/storage.d.ts +28 -0
- package/dist/types/storage.d.ts.map +1 -0
- package/dist/types/storage.js +2 -0
- package/dist/types/storage.js.map +1 -0
- package/dist/types/tabs.d.ts +96 -0
- package/dist/types/tabs.d.ts.map +1 -0
- package/dist/types/tabs.js +2 -0
- package/dist/types/tabs.js.map +1 -0
- package/dist/types/web-navigation.d.ts +28 -0
- package/dist/types/web-navigation.d.ts.map +1 -0
- package/dist/types/web-navigation.js +2 -0
- package/dist/types/web-navigation.js.map +1 -0
- package/dist/types/web-request.d.ts +20 -0
- package/dist/types/web-request.d.ts.map +1 -0
- package/dist/types/web-request.js +2 -0
- package/dist/types/web-request.js.map +1 -0
- package/dist/types/windows.d.ts +52 -0
- package/dist/types/windows.d.ts.map +1 -0
- package/dist/types/windows.js +2 -0
- package/dist/types/windows.js.map +1 -0
- package/package.json +69 -4
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
export const BROWSER_TARGETS = [
|
|
2
|
+
'chrome',
|
|
3
|
+
'chromium',
|
|
4
|
+
'firefox',
|
|
5
|
+
'edge',
|
|
6
|
+
];
|
|
7
|
+
export function normalizeQuery(api) {
|
|
8
|
+
if (typeof api !== 'string') {
|
|
9
|
+
return api;
|
|
10
|
+
}
|
|
11
|
+
const separator = api.indexOf('.');
|
|
12
|
+
return separator === -1
|
|
13
|
+
? { namespace: api }
|
|
14
|
+
: {
|
|
15
|
+
namespace: api.slice(0, separator),
|
|
16
|
+
method: api.slice(separator + 1),
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
export function isBrowserTarget(value) {
|
|
20
|
+
return (typeof value === 'string' &&
|
|
21
|
+
BROWSER_TARGETS.includes(value));
|
|
22
|
+
}
|
|
23
|
+
export function isManifestVersion(value) {
|
|
24
|
+
return value === 2 || value === 3;
|
|
25
|
+
}
|
|
26
|
+
export function availableCapability(query) {
|
|
27
|
+
return {
|
|
28
|
+
namespace: query.namespace,
|
|
29
|
+
...(query.method === undefined ? {} : { method: query.method }),
|
|
30
|
+
available: true,
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
export function unavailableCapability(query, reason) {
|
|
34
|
+
return {
|
|
35
|
+
namespace: query.namespace,
|
|
36
|
+
...(query.method === undefined ? {} : { method: query.method }),
|
|
37
|
+
available: false,
|
|
38
|
+
reason,
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=capabilities.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../src/shared/capabilities.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,QAAQ;IACR,UAAU;IACV,SAAS;IACT,MAAM;CACE,CAAC;AAmBX,MAAM,UAAU,cAAc,CAC5B,GAA6B;IAE7B,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,GAAG,CAAC;IACb,CAAC;IAED,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEnC,OAAO,SAAS,KAAK,CAAC,CAAC;QACrB,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE;QACpB,CAAC,CAAC;YACE,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC;YAClC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;SACjC,CAAC;AACR,CAAC;AAcD,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACxB,eAAqC,CAAC,QAAQ,CAAC,KAAK,CAAC,CACvD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,OAAO,KAAK,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,KAAsB;IACxD,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;QAC/D,SAAS,EAAE,IAAI;KAChB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,KAAsB,EACtB,MAA6B;IAE7B,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;QAC/D,SAAS,EAAE,KAAK;QAChB,MAAM;KACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export type BrowserApiErrorCode = 'BROWSER_UNSUPPORTED_ENVIRONMENT' | 'BROWSER_UNSUPPORTED_API' | 'BROWSER_PERMISSION_DENIED' | 'BROWSER_API_FAILED' | 'BROWSER_INVALID_ARGUMENT';
|
|
2
|
+
export interface BrowserApiErrorOptions {
|
|
3
|
+
api?: string;
|
|
4
|
+
cause?: unknown;
|
|
5
|
+
}
|
|
6
|
+
export interface NormalizeBrowserApiErrorOptions {
|
|
7
|
+
code?: BrowserApiErrorCode;
|
|
8
|
+
api?: string;
|
|
9
|
+
}
|
|
10
|
+
export declare class BrowserApiError extends Error {
|
|
11
|
+
readonly code: BrowserApiErrorCode;
|
|
12
|
+
readonly api: string | undefined;
|
|
13
|
+
constructor(code: BrowserApiErrorCode, message: string, options?: BrowserApiErrorOptions);
|
|
14
|
+
}
|
|
15
|
+
export declare function isBrowserApiError(value: unknown): value is BrowserApiError;
|
|
16
|
+
export declare function isPermissionError(error: unknown): boolean;
|
|
17
|
+
export declare function normalizeBrowserApiError(error: unknown, options?: NormalizeBrowserApiErrorOptions): BrowserApiError;
|
|
18
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/shared/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,mBAAmB,GAC3B,iCAAiC,GACjC,yBAAyB,GACzB,2BAA2B,GAC3B,oBAAoB,GACpB,0BAA0B,CAAC;AAE/B,MAAM,WAAW,sBAAsB;IACrC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,+BAA+B;IAC9C,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IAEjC,YACE,IAAI,EAAE,mBAAmB,EACzB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,sBAA2B,EASrC;CACF;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAE1E;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAGzD;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,+BAAoC,GAC5C,eAAe,CAgBjB"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export class BrowserApiError extends Error {
|
|
2
|
+
code;
|
|
3
|
+
api;
|
|
4
|
+
constructor(code, message, options = {}) {
|
|
5
|
+
super(message, options.cause === undefined ? undefined : { cause: options.cause });
|
|
6
|
+
this.name = 'BrowserApiError';
|
|
7
|
+
this.code = code;
|
|
8
|
+
this.api = options.api;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
export function isBrowserApiError(value) {
|
|
12
|
+
return value instanceof BrowserApiError;
|
|
13
|
+
}
|
|
14
|
+
export function isPermissionError(error) {
|
|
15
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
16
|
+
return /permission|not allowed|denied|access/i.test(message);
|
|
17
|
+
}
|
|
18
|
+
export function normalizeBrowserApiError(error, options = {}) {
|
|
19
|
+
if (isBrowserApiError(error)) {
|
|
20
|
+
return error;
|
|
21
|
+
}
|
|
22
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
23
|
+
const code = options.code ??
|
|
24
|
+
(isPermissionError(error)
|
|
25
|
+
? 'BROWSER_PERMISSION_DENIED'
|
|
26
|
+
: 'BROWSER_API_FAILED');
|
|
27
|
+
return new BrowserApiError(code, message, {
|
|
28
|
+
...(options.api === undefined ? {} : { api: options.api }),
|
|
29
|
+
cause: error,
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/shared/errors.ts"],"names":[],"mappings":"AAiBA,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAC/B,IAAI,CAAsB;IAC1B,GAAG,CAAqB;IAEjC,YACE,IAAyB,EACzB,OAAe,EACf,OAAO,GAA2B,EAAE;QAEpC,KAAK,CACH,OAAO,EACP,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CACnE,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IACzB,CAAC;CACF;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,OAAO,KAAK,YAAY,eAAe,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvE,OAAO,uCAAuC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,KAAc,EACd,OAAO,GAAoC,EAAE;IAE7C,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvE,MAAM,IAAI,GACR,OAAO,CAAC,IAAI;QACZ,CAAC,iBAAiB,CAAC,KAAK,CAAC;YACvB,CAAC,CAAC,2BAA2B;YAC7B,CAAC,CAAC,oBAAoB,CAAC,CAAC;IAE5B,OAAO,IAAI,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE;QACxC,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;QAC1D,KAAK,EAAE,KAAK;KACb,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export type BrowserEventListener = (...args: never[]) => unknown;
|
|
2
|
+
export interface BrowserEvent<TListener extends BrowserEventListener = BrowserEventListener> {
|
|
3
|
+
addListener(listener: TListener): void;
|
|
4
|
+
removeListener(listener: TListener): void;
|
|
5
|
+
hasListener?(listener: TListener): boolean;
|
|
6
|
+
hasListeners?(): boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare function isBrowserEvent(value: unknown): value is BrowserEvent;
|
|
9
|
+
export declare function requireEvent<TEvent extends BrowserEvent>(event: TEvent | undefined | null, api: string): TEvent;
|
|
10
|
+
export declare function passthroughEvent<TEvent extends BrowserEvent>(event: TEvent): TEvent;
|
|
11
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/shared/events.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,oBAAoB,GAAG,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,CAAC;AAEjE,MAAM,WAAW,YAAY,CAC3B,SAAS,SAAS,oBAAoB,GAAG,oBAAoB;IAE7D,WAAW,CAAC,QAAQ,EAAE,SAAS,GAAG,IAAI,CAAC;IACvC,cAAc,CAAC,QAAQ,EAAE,SAAS,GAAG,IAAI,CAAC;IAC1C,WAAW,CAAC,CAAC,QAAQ,EAAE,SAAS,GAAG,OAAO,CAAC;IAC3C,YAAY,CAAC,IAAI,OAAO,CAAC;CAC1B;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,YAAY,CAMpE;AAED,wBAAgB,YAAY,CAAC,MAAM,SAAS,YAAY,EACtD,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,EAChC,GAAG,EAAE,MAAM,GACV,MAAM,CAUR;AAED,wBAAgB,gBAAgB,CAAC,MAAM,SAAS,YAAY,EAC1D,KAAK,EAAE,MAAM,GACZ,MAAM,CAER"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BrowserApiError } from './errors.js';
|
|
2
|
+
export function isBrowserEvent(value) {
|
|
3
|
+
return (isRecord(value) &&
|
|
4
|
+
typeof value.addListener === 'function' &&
|
|
5
|
+
typeof value.removeListener === 'function');
|
|
6
|
+
}
|
|
7
|
+
export function requireEvent(event, api) {
|
|
8
|
+
if (event === undefined || event === null || !isBrowserEvent(event)) {
|
|
9
|
+
throw new BrowserApiError('BROWSER_UNSUPPORTED_API', `The browser API "${api}" is not available in this environment.`, { api });
|
|
10
|
+
}
|
|
11
|
+
return event;
|
|
12
|
+
}
|
|
13
|
+
export function passthroughEvent(event) {
|
|
14
|
+
return event;
|
|
15
|
+
}
|
|
16
|
+
function isRecord(value) {
|
|
17
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/shared/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAa9C,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,OAAO,CACL,QAAQ,CAAC,KAAK,CAAC;QACf,OAAO,KAAK,CAAC,WAAW,KAAK,UAAU;QACvC,OAAO,KAAK,CAAC,cAAc,KAAK,UAAU,CAC3C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,KAAgC,EAChC,GAAW;IAEX,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QACpE,MAAM,IAAI,eAAe,CACvB,yBAAyB,EACzB,oBAAoB,GAAG,yCAAyC,EAChE,EAAE,GAAG,EAAE,CACR,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,KAAa;IAEb,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare function isRecord(value: unknown): value is Record<string, unknown>;
|
|
2
|
+
export declare function readProperty(scope: unknown, key: string): unknown;
|
|
3
|
+
export declare function readPath(scope: unknown, ...keys: readonly string[]): unknown;
|
|
4
|
+
//# sourceMappingURL=objects.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"objects.d.ts","sourceRoot":"","sources":["../../src/shared/objects.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzE;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAEjE;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAQ5E"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export function isRecord(value) {
|
|
2
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
3
|
+
}
|
|
4
|
+
export function readProperty(scope, key) {
|
|
5
|
+
return isRecord(scope) ? scope[key] : undefined;
|
|
6
|
+
}
|
|
7
|
+
export function readPath(scope, ...keys) {
|
|
8
|
+
let current = scope;
|
|
9
|
+
for (const key of keys) {
|
|
10
|
+
current = readProperty(current, key);
|
|
11
|
+
}
|
|
12
|
+
return current;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=objects.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"objects.js","sourceRoot":"","sources":["../../src/shared/objects.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,QAAQ,CAAC,KAAc;IACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAc,EAAE,GAAW;IACtD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAc,EAAE,GAAG,IAAuB;IACjE,IAAI,OAAO,GAAY,KAAK,CAAC;IAE7B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,OAAO,GAAG,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACvC,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export type Callback<Result> = (result: Result) => void;
|
|
2
|
+
export interface CallbackOptions {
|
|
3
|
+
scope?: unknown;
|
|
4
|
+
api?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function readLastError(scope: unknown): string | null;
|
|
7
|
+
export declare function callbackToPromise<TResult>(run: (callback: Callback<TResult>) => void, options?: CallbackOptions): Promise<TResult>;
|
|
8
|
+
export declare function promisifyMethod<Args extends unknown[], Result>(method: (...args: [...Args, Callback<Result>]) => void, options?: CallbackOptions): (...args: Args) => Promise<Result>;
|
|
9
|
+
export declare function isPromiseLike<T>(value: T | PromiseLike<T>): value is PromiseLike<T>;
|
|
10
|
+
export declare function resolveMaybePromise<T>(value: T | PromiseLike<T>): Promise<T>;
|
|
11
|
+
//# sourceMappingURL=promises.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"promises.d.ts","sourceRoot":"","sources":["../../src/shared/promises.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,QAAQ,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;AAExD,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAwB3D;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EACvC,GAAG,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,EAC1C,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,OAAO,CAAC,CA+ClB;AAED,wBAAgB,eAAe,CAAC,IAAI,SAAS,OAAO,EAAE,EAAE,MAAM,EAC5D,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,EACtD,OAAO,GAAE,eAAoB,GAC5B,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAKpC;AAED,wBAAgB,aAAa,CAAC,CAAC,EAC7B,KAAK,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GACxB,KAAK,IAAI,WAAW,CAAC,CAAC,CAAC,CAMzB;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EACnC,KAAK,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GACxB,OAAO,CAAC,CAAC,CAAC,CAEZ"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { BrowserApiError, isPermissionError, normalizeBrowserApiError, } from './errors.js';
|
|
2
|
+
export function readLastError(scope) {
|
|
3
|
+
if (!isRecord(scope)) {
|
|
4
|
+
return null;
|
|
5
|
+
}
|
|
6
|
+
const runtime = scope.runtime;
|
|
7
|
+
if (!isRecord(runtime)) {
|
|
8
|
+
return null;
|
|
9
|
+
}
|
|
10
|
+
const lastError = runtime.lastError;
|
|
11
|
+
if (!isRecord(lastError)) {
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
const message = lastError.message;
|
|
15
|
+
if (typeof message === 'string' && message !== '') {
|
|
16
|
+
return message;
|
|
17
|
+
}
|
|
18
|
+
return 'The browser extension API reported an unknown error.';
|
|
19
|
+
}
|
|
20
|
+
export function callbackToPromise(run, options = {}) {
|
|
21
|
+
return new Promise((resolve, reject) => {
|
|
22
|
+
let settled = false;
|
|
23
|
+
const rejectWith = (error) => {
|
|
24
|
+
reject(normalizeBrowserApiError(error, {
|
|
25
|
+
...(options.api === undefined ? {} : { api: options.api }),
|
|
26
|
+
}));
|
|
27
|
+
};
|
|
28
|
+
const settle = (result) => {
|
|
29
|
+
if (settled) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
settled = true;
|
|
33
|
+
const lastError = readLastError(options.scope);
|
|
34
|
+
if (lastError !== null) {
|
|
35
|
+
reject(new BrowserApiError(isPermissionError(lastError)
|
|
36
|
+
? 'BROWSER_PERMISSION_DENIED'
|
|
37
|
+
: 'BROWSER_API_FAILED', lastError, options.api === undefined ? {} : { api: options.api }));
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
resolve(result);
|
|
41
|
+
};
|
|
42
|
+
try {
|
|
43
|
+
run(settle);
|
|
44
|
+
}
|
|
45
|
+
catch (error) {
|
|
46
|
+
if (settled) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
settled = true;
|
|
50
|
+
rejectWith(error);
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
export function promisifyMethod(method, options = {}) {
|
|
55
|
+
return (...args) => callbackToPromise((callback) => {
|
|
56
|
+
method(...args, callback);
|
|
57
|
+
}, options);
|
|
58
|
+
}
|
|
59
|
+
export function isPromiseLike(value) {
|
|
60
|
+
return (typeof value === 'object' &&
|
|
61
|
+
value !== null &&
|
|
62
|
+
typeof value.then === 'function');
|
|
63
|
+
}
|
|
64
|
+
export function resolveMaybePromise(value) {
|
|
65
|
+
return Promise.resolve(value);
|
|
66
|
+
}
|
|
67
|
+
function isRecord(value) {
|
|
68
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=promises.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"promises.js","sourceRoot":"","sources":["../../src/shared/promises.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { BrowserEvent } from '../shared/events.ts';
|
|
2
|
+
import type { Tab } from './tabs.ts';
|
|
3
|
+
export type ActionArea = 'action' | 'browserAction' | 'pageAction';
|
|
4
|
+
export type ColorValue = string | readonly [number, number, number, number];
|
|
5
|
+
export type IconPath = string | Readonly<Record<string, string>>;
|
|
6
|
+
export type IconImageData = ImageData | Readonly<Record<number, ImageData>>;
|
|
7
|
+
export interface TabDetails {
|
|
8
|
+
readonly tabId?: number;
|
|
9
|
+
}
|
|
10
|
+
export interface SetBadgeTextDetails extends TabDetails {
|
|
11
|
+
readonly text: string;
|
|
12
|
+
}
|
|
13
|
+
export interface SetBadgeBackgroundColorDetails extends TabDetails {
|
|
14
|
+
readonly color: ColorValue;
|
|
15
|
+
}
|
|
16
|
+
export interface SetTitleDetails extends TabDetails {
|
|
17
|
+
readonly title: string;
|
|
18
|
+
}
|
|
19
|
+
export interface SetIconDetails extends TabDetails {
|
|
20
|
+
readonly path?: IconPath;
|
|
21
|
+
readonly imageData?: IconImageData;
|
|
22
|
+
}
|
|
23
|
+
export interface OpenPopupOptions {
|
|
24
|
+
readonly windowId?: number;
|
|
25
|
+
}
|
|
26
|
+
export interface ActionApi {
|
|
27
|
+
readonly area: ActionArea | null;
|
|
28
|
+
setBadgeText(details: SetBadgeTextDetails): Promise<void>;
|
|
29
|
+
setBadgeBackgroundColor(details: SetBadgeBackgroundColorDetails): Promise<void>;
|
|
30
|
+
setTitle(details: SetTitleDetails): Promise<void>;
|
|
31
|
+
setIcon(details: SetIconDetails): Promise<void>;
|
|
32
|
+
openPopup(options?: OpenPopupOptions): Promise<void>;
|
|
33
|
+
readonly onClicked: BrowserEvent<(tab: Tab) => void>;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=action.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../src/types/action.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAErC,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,eAAe,GAAG,YAAY,CAAC;AAEnE,MAAM,MAAM,UAAU,GAClB,MAAM,GACN,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAE9C,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAEjE,MAAM,MAAM,aAAa,GACrB,SAAS,GACT,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;AAExC,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,8BAA+B,SAAQ,UAAU;IAChE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;CAC5B;AAED,MAAM,WAAW,eAAgB,SAAQ,UAAU;IACjD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,aAAa,CAAC;CACpC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IACjC,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,uBAAuB,CACrB,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,SAAS,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,CAAC;CACtD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action.js","sourceRoot":"","sources":["../../src/types/action.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { BrowserEvent } from '../shared/events.ts';
|
|
2
|
+
export interface Alarm {
|
|
3
|
+
readonly name: string;
|
|
4
|
+
readonly scheduledTime: number;
|
|
5
|
+
readonly periodInMinutes?: number;
|
|
6
|
+
}
|
|
7
|
+
export interface AlarmCreateInfo {
|
|
8
|
+
readonly when?: number;
|
|
9
|
+
readonly delayInMinutes?: number;
|
|
10
|
+
readonly periodInMinutes?: number;
|
|
11
|
+
}
|
|
12
|
+
export interface AlarmsApi {
|
|
13
|
+
create(info: AlarmCreateInfo): Promise<void>;
|
|
14
|
+
create(name: string, info: AlarmCreateInfo): Promise<void>;
|
|
15
|
+
get(name?: string): Promise<Alarm | undefined>;
|
|
16
|
+
getAll(): Promise<Alarm[]>;
|
|
17
|
+
clear(name?: string): Promise<boolean>;
|
|
18
|
+
clearAll(): Promise<boolean>;
|
|
19
|
+
readonly onAlarm: BrowserEvent<(alarm: Alarm) => void>;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=alarms.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alarms.d.ts","sourceRoot":"","sources":["../../src/types/alarms.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC;IAC/C,MAAM,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACvC,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC;CACxD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alarms.js","sourceRoot":"","sources":["../../src/types/alarms.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { BrowserEvent } from '../shared/events.ts';
|
|
2
|
+
export interface BookmarkTreeNode {
|
|
3
|
+
readonly id: string;
|
|
4
|
+
readonly parentId?: string;
|
|
5
|
+
readonly index?: number;
|
|
6
|
+
readonly url?: string;
|
|
7
|
+
readonly title: string;
|
|
8
|
+
readonly dateAdded?: number;
|
|
9
|
+
readonly dateGroupModified?: number;
|
|
10
|
+
readonly children?: readonly BookmarkTreeNode[];
|
|
11
|
+
readonly unmodifiable?: string;
|
|
12
|
+
readonly [key: string]: unknown;
|
|
13
|
+
}
|
|
14
|
+
export interface BookmarkCreateDetails {
|
|
15
|
+
readonly parentId?: string;
|
|
16
|
+
readonly index?: number;
|
|
17
|
+
readonly title?: string;
|
|
18
|
+
readonly url?: string;
|
|
19
|
+
}
|
|
20
|
+
export interface BookmarkUpdateChanges {
|
|
21
|
+
readonly title?: string;
|
|
22
|
+
readonly url?: string;
|
|
23
|
+
}
|
|
24
|
+
export interface BookmarkSearchQuery {
|
|
25
|
+
readonly query?: string;
|
|
26
|
+
readonly url?: string;
|
|
27
|
+
readonly title?: string;
|
|
28
|
+
}
|
|
29
|
+
export interface BookmarkRemoveInfo {
|
|
30
|
+
readonly parentId: string;
|
|
31
|
+
readonly index: number;
|
|
32
|
+
readonly node: BookmarkTreeNode;
|
|
33
|
+
}
|
|
34
|
+
export interface BookmarkChangeInfo {
|
|
35
|
+
readonly title: string;
|
|
36
|
+
readonly url?: string;
|
|
37
|
+
}
|
|
38
|
+
export interface BookmarkMoveInfo {
|
|
39
|
+
readonly parentId: string;
|
|
40
|
+
readonly index: number;
|
|
41
|
+
readonly oldParentId: string;
|
|
42
|
+
readonly oldIndex: number;
|
|
43
|
+
}
|
|
44
|
+
export interface BookmarksApi {
|
|
45
|
+
getTree(): Promise<BookmarkTreeNode[]>;
|
|
46
|
+
search(query: string | BookmarkSearchQuery): Promise<BookmarkTreeNode[]>;
|
|
47
|
+
get(idOrIdList: string | readonly string[]): Promise<BookmarkTreeNode[]>;
|
|
48
|
+
create(details: BookmarkCreateDetails): Promise<BookmarkTreeNode>;
|
|
49
|
+
update(id: string, changes: BookmarkUpdateChanges): Promise<BookmarkTreeNode>;
|
|
50
|
+
remove(id: string): Promise<void>;
|
|
51
|
+
removeTree(id: string): Promise<void>;
|
|
52
|
+
readonly onCreated: BrowserEvent<(id: string, bookmark: BookmarkTreeNode) => void>;
|
|
53
|
+
readonly onRemoved: BrowserEvent<(id: string, removeInfo: BookmarkRemoveInfo) => void>;
|
|
54
|
+
readonly onChanged: BrowserEvent<(id: string, changeInfo: BookmarkChangeInfo) => void>;
|
|
55
|
+
readonly onMoved: BrowserEvent<(id: string, moveInfo: BookmarkMoveInfo) => void>;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=bookmarks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bookmarks.d.ts","sourceRoot":"","sources":["../../src/types/bookmarks.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bookmarks.js","sourceRoot":"","sources":["../../src/types/bookmarks.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { BrowserEvent } from '../shared/events.ts';
|
|
2
|
+
export interface Command {
|
|
3
|
+
readonly name?: string;
|
|
4
|
+
readonly description?: string;
|
|
5
|
+
readonly shortcut?: string;
|
|
6
|
+
}
|
|
7
|
+
export interface CommandsApi {
|
|
8
|
+
getAll(): Promise<Command[]>;
|
|
9
|
+
readonly onCommand: BrowserEvent<(command: string) => void>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/types/commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC;CAC7D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/types/commands.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { BrowserEvent } from '../shared/events.ts';
|
|
2
|
+
import type { Tab } from './tabs.ts';
|
|
3
|
+
export interface ContextMenuOnClickData {
|
|
4
|
+
readonly menuItemId: string | number;
|
|
5
|
+
readonly parentMenuItemId?: string | number;
|
|
6
|
+
readonly linkUrl?: string;
|
|
7
|
+
readonly srcUrl?: string;
|
|
8
|
+
readonly pageUrl?: string;
|
|
9
|
+
readonly frameId?: number;
|
|
10
|
+
readonly selectionText?: string;
|
|
11
|
+
readonly editable: boolean;
|
|
12
|
+
readonly wasChecked?: boolean;
|
|
13
|
+
readonly checked?: boolean;
|
|
14
|
+
readonly [key: string]: unknown;
|
|
15
|
+
}
|
|
16
|
+
export interface ContextMenuCreateProperties {
|
|
17
|
+
readonly id?: string;
|
|
18
|
+
readonly title?: string;
|
|
19
|
+
readonly type?: string;
|
|
20
|
+
readonly contexts?: readonly string[];
|
|
21
|
+
readonly parentId?: string | number;
|
|
22
|
+
readonly documentUrlPatterns?: readonly string[];
|
|
23
|
+
readonly targetUrlPatterns?: readonly string[];
|
|
24
|
+
readonly enabled?: boolean;
|
|
25
|
+
readonly visible?: boolean;
|
|
26
|
+
readonly checked?: boolean;
|
|
27
|
+
readonly [key: string]: unknown;
|
|
28
|
+
}
|
|
29
|
+
export interface ContextMenuUpdateProperties {
|
|
30
|
+
readonly title?: string;
|
|
31
|
+
readonly type?: string;
|
|
32
|
+
readonly contexts?: readonly string[];
|
|
33
|
+
readonly parentId?: string | number;
|
|
34
|
+
readonly documentUrlPatterns?: readonly string[];
|
|
35
|
+
readonly targetUrlPatterns?: readonly string[];
|
|
36
|
+
readonly enabled?: boolean;
|
|
37
|
+
readonly visible?: boolean;
|
|
38
|
+
readonly checked?: boolean;
|
|
39
|
+
readonly [key: string]: unknown;
|
|
40
|
+
}
|
|
41
|
+
export interface ContextMenusApi {
|
|
42
|
+
create(createProperties: ContextMenuCreateProperties): string | number;
|
|
43
|
+
update(id: string | number, updateProperties: ContextMenuUpdateProperties): Promise<void>;
|
|
44
|
+
remove(id: string | number): Promise<void>;
|
|
45
|
+
removeAll(): Promise<void>;
|
|
46
|
+
readonly onClicked: BrowserEvent<(info: ContextMenuOnClickData, tab?: Tab) => void>;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=context-menus.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-menus.d.ts","sourceRoot":"","sources":["../../src/types/context-menus.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-menus.js","sourceRoot":"","sources":["../../src/types/context-menus.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import type { BrowserEvent } from '../shared/events.ts';
|
|
2
|
+
export type CookieSameSite = 'no_restriction' | 'lax' | 'strict' | 'unspecified' | string;
|
|
3
|
+
export interface Cookie {
|
|
4
|
+
readonly name: string;
|
|
5
|
+
readonly value: string;
|
|
6
|
+
readonly domain: string;
|
|
7
|
+
readonly hostOnly: boolean;
|
|
8
|
+
readonly path: string;
|
|
9
|
+
readonly secure: boolean;
|
|
10
|
+
readonly httpOnly: boolean;
|
|
11
|
+
readonly session: boolean;
|
|
12
|
+
readonly sameSite: CookieSameSite;
|
|
13
|
+
readonly expirationDate?: number;
|
|
14
|
+
readonly storeId?: string;
|
|
15
|
+
readonly partitionKey?: Readonly<Record<string, unknown>>;
|
|
16
|
+
readonly [key: string]: unknown;
|
|
17
|
+
}
|
|
18
|
+
export interface CookieDetails {
|
|
19
|
+
readonly url: string;
|
|
20
|
+
readonly name?: string;
|
|
21
|
+
readonly storeId?: string;
|
|
22
|
+
readonly partitionKey?: Readonly<Record<string, unknown>>;
|
|
23
|
+
}
|
|
24
|
+
export interface CookieGetAllDetails {
|
|
25
|
+
readonly url?: string;
|
|
26
|
+
readonly domain?: string;
|
|
27
|
+
readonly name?: string;
|
|
28
|
+
readonly path?: string;
|
|
29
|
+
readonly secure?: boolean;
|
|
30
|
+
readonly session?: boolean;
|
|
31
|
+
readonly storeId?: string;
|
|
32
|
+
}
|
|
33
|
+
export interface CookieSetDetails extends CookieDetails {
|
|
34
|
+
readonly value: string;
|
|
35
|
+
readonly domain?: string;
|
|
36
|
+
readonly path?: string;
|
|
37
|
+
readonly secure?: boolean;
|
|
38
|
+
readonly httpOnly?: boolean;
|
|
39
|
+
readonly expirationDate?: number;
|
|
40
|
+
readonly sameSite?: CookieSameSite;
|
|
41
|
+
}
|
|
42
|
+
export interface CookieChangeInfo {
|
|
43
|
+
readonly removed: boolean;
|
|
44
|
+
readonly cookie: Cookie;
|
|
45
|
+
readonly cause: string;
|
|
46
|
+
}
|
|
47
|
+
export interface CookiesApi {
|
|
48
|
+
get(details: CookieDetails): Promise<Cookie | null>;
|
|
49
|
+
getAll(details: CookieGetAllDetails): Promise<Cookie[]>;
|
|
50
|
+
set(details: CookieSetDetails): Promise<Cookie | null>;
|
|
51
|
+
remove(details: CookieDetails): Promise<Cookie | null>;
|
|
52
|
+
readonly onChanged: BrowserEvent<(changeInfo: CookieChangeInfo) => void>;
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=cookies.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookies.d.ts","sourceRoot":"","sources":["../../src/types/cookies.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookies.js","sourceRoot":"","sources":["../../src/types/cookies.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { BrowserEvent } from '../shared/events.ts';
|
|
2
|
+
export interface DownloadHeader {
|
|
3
|
+
readonly name: string;
|
|
4
|
+
readonly value: string;
|
|
5
|
+
}
|
|
6
|
+
export interface DownloadOptions {
|
|
7
|
+
readonly url: string;
|
|
8
|
+
readonly filename?: string;
|
|
9
|
+
readonly conflictAction?: string;
|
|
10
|
+
readonly saveAs?: boolean;
|
|
11
|
+
readonly method?: string;
|
|
12
|
+
readonly headers?: readonly DownloadHeader[];
|
|
13
|
+
readonly body?: string;
|
|
14
|
+
readonly [key: string]: unknown;
|
|
15
|
+
}
|
|
16
|
+
export interface DownloadQuery {
|
|
17
|
+
readonly id?: number;
|
|
18
|
+
readonly url?: string;
|
|
19
|
+
readonly filename?: string;
|
|
20
|
+
readonly state?: string;
|
|
21
|
+
readonly limit?: number;
|
|
22
|
+
readonly orderBy?: readonly string[];
|
|
23
|
+
readonly [key: string]: unknown;
|
|
24
|
+
}
|
|
25
|
+
export interface DownloadItem {
|
|
26
|
+
readonly id: number;
|
|
27
|
+
readonly url: string;
|
|
28
|
+
readonly filename: string;
|
|
29
|
+
readonly state: string;
|
|
30
|
+
readonly bytesReceived?: number;
|
|
31
|
+
readonly totalBytes?: number;
|
|
32
|
+
readonly error?: string;
|
|
33
|
+
readonly mime?: string;
|
|
34
|
+
readonly startTime?: string;
|
|
35
|
+
readonly [key: string]: unknown;
|
|
36
|
+
}
|
|
37
|
+
export interface DownloadsApi {
|
|
38
|
+
download(options: DownloadOptions): Promise<number>;
|
|
39
|
+
cancel(downloadId: number): Promise<void>;
|
|
40
|
+
search(query?: DownloadQuery): Promise<DownloadItem[]>;
|
|
41
|
+
readonly onChanged: BrowserEvent<(item: DownloadItem, delta: Record<string, unknown>) => void>;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=downloads.d.ts.map
|