adnbn 0.0.31 → 0.0.32

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.
Files changed (64) hide show
  1. package/dist/background-DhVyBB-c.d.mts +15 -0
  2. package/dist/background-IrDrSFsc.d.ts +15 -0
  3. package/dist/browser/index.cjs +2 -10
  4. package/dist/browser/index.cjs.map +1 -1
  5. package/dist/browser/index.d.mts +6 -2
  6. package/dist/browser/index.d.ts +6 -2
  7. package/dist/browser/index.js +2 -6
  8. package/dist/browser/index.js.map +1 -1
  9. package/dist/cli/index.cjs +755 -255
  10. package/dist/cli/index.cjs.map +1 -1
  11. package/dist/command-BtrNjWoj.d.mts +28 -0
  12. package/dist/command-DpGwXqYZ.d.ts +28 -0
  13. package/dist/content-B3yizzBe.d.mts +109 -0
  14. package/dist/content-D0N9Xhbj.d.ts +109 -0
  15. package/dist/entry/background/index.cjs +44 -0
  16. package/dist/entry/background/index.cjs.map +1 -0
  17. package/dist/entry/background/index.d.mts +9 -0
  18. package/dist/entry/background/index.d.ts +9 -0
  19. package/dist/entry/background/index.js +38 -0
  20. package/dist/entry/background/index.js.map +1 -0
  21. package/dist/entry/command/index.cjs +105 -0
  22. package/dist/entry/command/index.cjs.map +1 -0
  23. package/dist/entry/command/index.d.mts +11 -0
  24. package/dist/entry/command/index.d.ts +11 -0
  25. package/dist/entry/command/index.js +98 -0
  26. package/dist/entry/command/index.js.map +1 -0
  27. package/dist/entry/content/index.cjs +44 -0
  28. package/dist/entry/content/index.cjs.map +1 -0
  29. package/dist/entry/content/index.d.mts +11 -0
  30. package/dist/entry/content/index.d.ts +11 -0
  31. package/dist/entry/content/index.js +40 -0
  32. package/dist/entry/content/index.js.map +1 -0
  33. package/dist/entry/content/react.cjs +370 -0
  34. package/dist/entry/content/react.cjs.map +1 -0
  35. package/dist/entry/content/react.d.mts +8 -0
  36. package/dist/entry/content/react.d.ts +8 -0
  37. package/dist/entry/content/react.js +364 -0
  38. package/dist/entry/content/react.js.map +1 -0
  39. package/dist/entry/content/vanilla.cjs +356 -0
  40. package/dist/entry/content/vanilla.cjs.map +1 -0
  41. package/dist/entry/content/vanilla.d.mts +8 -0
  42. package/dist/entry/content/vanilla.d.ts +8 -0
  43. package/dist/entry/content/vanilla.js +350 -0
  44. package/dist/entry/content/vanilla.js.map +1 -0
  45. package/dist/{command-ZfDymEyz.d.mts → helpers-DoeKmDTB.d.mts} +9 -22
  46. package/dist/{command-ZfDymEyz.d.ts → helpers-DoeKmDTB.d.ts} +9 -22
  47. package/dist/index.cjs +66 -0
  48. package/dist/index.cjs.map +1 -1
  49. package/dist/index.d.mts +22 -12
  50. package/dist/index.d.ts +22 -12
  51. package/dist/index.js +61 -1
  52. package/dist/index.js.map +1 -1
  53. package/dist/manifest-9HUsrGx4.d.mts +83 -0
  54. package/dist/manifest-Cl31WHRW.d.ts +83 -0
  55. package/package.json +39 -8
  56. package/types/client.d.ts +261 -0
  57. package/dist/client/index.cjs +0 -58
  58. package/dist/client/index.cjs.map +0 -1
  59. package/dist/client/index.d.mts +0 -6
  60. package/dist/client/index.d.ts +0 -6
  61. package/dist/client/index.js +0 -56
  62. package/dist/client/index.js.map +0 -1
  63. package/dist/manifest-4vEG2PA3.d.mts +0 -140
  64. package/dist/manifest-D52-CONc.d.ts +0 -140
@@ -0,0 +1,15 @@
1
+ import { E as EntrypointOptions, A as Awaiter, a as EntrypointFile, b as EntrypointBuilder } from './helpers-DoeKmDTB.mjs';
2
+
3
+ interface BackgroundConfig {
4
+ persistent?: boolean;
5
+ }
6
+ type BackgroundOptions = BackgroundConfig & EntrypointOptions;
7
+ type BackgroundEntrypointOptions = BackgroundOptions;
8
+ type BackgroundMainHandler = (options: BackgroundOptions) => Awaiter<void>;
9
+ interface BackgroundDefinition extends BackgroundEntrypointOptions {
10
+ main?: BackgroundMainHandler;
11
+ }
12
+ type BackgroundEntrypointMap = Map<EntrypointFile, BackgroundDefinition>;
13
+ type BackgroundBuilder = EntrypointBuilder;
14
+
15
+ export type { BackgroundConfig as B, BackgroundDefinition as a, BackgroundMainHandler as b, BackgroundOptions as c, BackgroundEntrypointOptions as d, BackgroundEntrypointMap as e, BackgroundBuilder as f };
@@ -0,0 +1,15 @@
1
+ import { E as EntrypointOptions, A as Awaiter, a as EntrypointFile, b as EntrypointBuilder } from './helpers-DoeKmDTB.js';
2
+
3
+ interface BackgroundConfig {
4
+ persistent?: boolean;
5
+ }
6
+ type BackgroundOptions = BackgroundConfig & EntrypointOptions;
7
+ type BackgroundEntrypointOptions = BackgroundOptions;
8
+ type BackgroundMainHandler = (options: BackgroundOptions) => Awaiter<void>;
9
+ interface BackgroundDefinition extends BackgroundEntrypointOptions {
10
+ main?: BackgroundMainHandler;
11
+ }
12
+ type BackgroundEntrypointMap = Map<EntrypointFile, BackgroundDefinition>;
13
+ type BackgroundBuilder = EntrypointBuilder;
14
+
15
+ export type { BackgroundConfig as B, BackgroundDefinition as a, BackgroundMainHandler as b, BackgroundOptions as c, BackgroundEntrypointOptions as d, BackgroundEntrypointMap as e, BackgroundBuilder as f };
@@ -1,13 +1,5 @@
1
1
  'use strict';
2
2
 
3
- var _isUndefined = require('lodash/isUndefined');
4
-
5
- function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
6
-
7
- var _isUndefined__default = /*#__PURE__*/_interopDefault(_isUndefined);
8
-
9
- // src/browser/runtime.ts
10
-
11
3
  // src/core/env.ts
12
4
  var getEnv = (key, defaults) => {
13
5
  const env = process.env;
@@ -44,9 +36,9 @@ var isBackground = () => {
44
36
  return false;
45
37
  }
46
38
  if (manifest.manifest_version === 3) {
47
- return _isUndefined__default.default(window);
39
+ return window === void 0;
48
40
  }
49
- return !_isUndefined__default.default(window) && backgroundPaths.includes(location.pathname);
41
+ return window !== void 0 && backgroundPaths.includes(location.pathname);
50
42
  };
51
43
  var throwRuntimeError = () => {
52
44
  const error = runtime.lastError;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/env.ts","../../src/browser/env.ts","../../src/browser/runtime.ts","../../src/browser/action.ts","../../src/browser/command.ts"],"names":["browser","_isUndefined"],"mappings":"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","file":"index.cjs","sourcesContent":["import {Browser} from \"@typing/browser\";\nimport {ManifestVersion} from \"@typing/manifest\";\n\nexport const getEnv: {\n <T extends string>(key: string): T | undefined;\n <T extends string, D>(key: string, defaults: D): T | D;\n} = (key: string, defaults?: string) => {\n const env = process.env;\n\n return (env[key] ?? defaults) as any;\n};\n\nexport const getBrowser = (): Browser => {\n const browser = getEnv<Browser>('BROWSER');\n\n if (browser === undefined) {\n throw new Error('Browser is not defined');\n }\n\n return browser;\n}\n\nexport const getManifestVersion = (): ManifestVersion => {\n const manifestVersion = getEnv('MANIFEST_VERSION', '3');\n\n return parseInt(manifestVersion) as ManifestVersion;\n}","import {Browser} from \"@typing/browser\";\nimport {getEnv} from \"@core/env\";\n\nexport const browser = (): typeof chrome => {\n return chrome;\n}\n\nexport const getBrowser = (): Browser => {\n return getEnv('BROWSER', Browser.Chrome);\n}\n\nexport const isBrowser = (browser: Browser): boolean => {\n return getBrowser() === browser;\n}","import _isUndefined from \"lodash/isUndefined\";\n\nimport {browser} from \"./env\";\nimport {ManifestVersion} from \"@typing/manifest\";\n\ntype Manifest = chrome.runtime.Manifest;\n\nconst runtime = browser().runtime;\n\nconst backgroundPaths = [\n '/_generated_background_page.html',\n];\n\nexport const getUrl = (path: string) => runtime.getURL(path);\n\nexport const getManifest = (): Manifest => runtime.getManifest();\n\nexport const getManifestVersion = (): ManifestVersion => getManifest().manifest_version;\n\nexport const isManifestVersion3 = (): boolean => getManifestVersion() === 3;\n\nexport const getId = (): string => runtime.id;\n\nexport const isBackground = (): boolean => {\n if (!getId()) {\n return false;\n }\n\n const manifest = getManifest();\n\n if (!manifest.background) {\n return false;\n }\n\n if (manifest.manifest_version === 3) {\n return _isUndefined(window);\n }\n\n return !_isUndefined(window) && backgroundPaths.includes(location.pathname);\n}\n\nexport const throwRuntimeError = (): void => {\n const error = runtime.lastError;\n\n if (error) {\n throw new Error(error.message);\n }\n}","import {getManifest, isManifestVersion3, throwRuntimeError} from \"./runtime\";\nimport {browser} from \"./env\";\n\ntype BadgeBackgroundColorDetails = chrome.browserAction.BadgeBackgroundColorDetails;\ntype BadgeTextDetails = chrome.action.BadgeTextDetails;\ntype BrowserAction = typeof chrome.action;\n\nconst getAction = () => isManifestVersion3() ? browser().action : browser().browserAction;\n\nexport const setActionBadgeText = (tabId: number, text: string | number) => new Promise<void>((resolve, reject) => {\n const details: BadgeTextDetails = {text: text.toString(), tabId};\n\n getAction().setBadgeText(details, () => {\n try {\n throwRuntimeError();\n\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n});\n\nexport const clearActionBadgeText = (tabId: number): Promise<void> => setActionBadgeText(tabId, '');\n\nexport const setActionBadgeBgColor = (tabId: number, color: BadgeBackgroundColorDetails['color']) => new Promise<void>((resolve, reject) => {\n const details: BadgeBackgroundColorDetails = {color, tabId};\n\n getAction().setBadgeBackgroundColor(details, () => {\n try {\n throwRuntimeError();\n\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n});\n\nexport const setActionBadgeTextColor = async (\n tabId: number,\n color: BadgeBackgroundColorDetails['color']\n): Promise<void> => {\n if (!isManifestVersion3()) {\n return;\n }\n\n const action = getAction() as BrowserAction;\n\n await action.setBadgeTextColor({color, tabId});\n};\n\nexport const setActionIcon = (\n tabId: number,\n icon: string | Record<string, string>\n): Promise<void> => new Promise<void>((resolve, reject) => {\n getAction().setIcon({tabId, path: icon}, () => {\n try {\n throwRuntimeError();\n\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n});\n\nexport const getActionDefaultPopup = (): string => {\n const manifest = getManifest();\n\n return isManifestVersion3() ? manifest.action.default_popup : manifest.browser_action.default_popup;\n}\n\nexport const onActionClicked = (callback: Parameters<typeof chrome.action.onClicked.addListener>[0]): () => void => {\n getAction().onClicked.addListener(callback);\n\n return () => getAction().onClicked.removeListener(callback);\n}","import {browser} from \"./env\";\n\nconst commands = browser().commands;\n\nexport const onCommand = (callback: Parameters<typeof chrome.commands.onCommand.addListener>[0]): () => void => {\n commands.onCommand.addListener(callback);\n\n return () => commands.onCommand.removeListener(callback);\n}"]}
1
+ {"version":3,"sources":["../../src/core/env.ts","../../src/browser/env.ts","../../src/browser/runtime.ts","../../src/browser/action.ts","../../src/browser/command.ts"],"names":["browser"],"mappings":"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","file":"index.cjs","sourcesContent":["import {Browser} from \"@typing/browser\";\nimport {ManifestVersion} from \"@typing/manifest\";\n\nexport const getEnv: {\n <T extends string>(key: string): T | undefined;\n <T extends string, D>(key: string, defaults: D): T | D;\n} = (key: string, defaults?: string) => {\n const env = process.env;\n\n return (env[key] ?? defaults) as any;\n};\n\nexport const getApp = (): string => {\n const app = getEnv('APP');\n\n if (app === undefined) {\n throw new Error('App is not defined');\n }\n\n return app;\n};\n\nexport const getBrowser = (): Browser => {\n const browser = getEnv<Browser>('BROWSER');\n\n if (browser === undefined) {\n throw new Error('Browser is not defined');\n }\n\n return browser;\n}\n\nexport const getManifestVersion = (): ManifestVersion => {\n const manifestVersion = getEnv('MANIFEST_VERSION', '3');\n\n return parseInt(manifestVersion) as ManifestVersion;\n}","import {Browser} from \"@typing/browser\";\nimport {getEnv} from \"@core/env\";\n\nexport const browser = (): typeof chrome => {\n return chrome;\n}\n\nexport const getBrowser = (): Browser => {\n return getEnv('BROWSER', Browser.Chrome);\n}\n\nexport const isBrowser = (browser: Browser): boolean => {\n return getBrowser() === browser;\n}","import {browser} from \"./env\";\nimport {ManifestVersion} from \"@typing/manifest\";\n\ntype Manifest = chrome.runtime.Manifest;\n\nconst runtime = browser().runtime;\n\nconst backgroundPaths = [\n '/_generated_background_page.html',\n];\n\nexport const getUrl = (path: string) => runtime.getURL(path);\n\nexport const getManifest = (): Manifest => runtime.getManifest();\n\nexport const getManifestVersion = (): ManifestVersion => getManifest().manifest_version;\n\nexport const isManifestVersion3 = (): boolean => getManifestVersion() === 3;\n\nexport const getId = (): string => runtime.id;\n\nexport const isBackground = (): boolean => {\n if (!getId()) {\n return false;\n }\n\n const manifest = getManifest();\n\n if (!manifest.background) {\n return false;\n }\n\n if (manifest.manifest_version === 3) {\n return window === undefined;\n }\n\n return window !== undefined && backgroundPaths.includes(location.pathname);\n}\n\nexport const throwRuntimeError = (): void => {\n const error = runtime.lastError;\n\n if (error) {\n throw new Error(error.message);\n }\n}","import {getManifest, isManifestVersion3, throwRuntimeError} from \"./runtime\";\nimport {browser} from \"./env\";\n\ntype BadgeBackgroundColorDetails = chrome.browserAction.BadgeBackgroundColorDetails;\ntype BadgeTextDetails = chrome.action.BadgeTextDetails;\ntype BrowserAction = typeof chrome.action;\n\nconst getAction = () => isManifestVersion3() ? browser().action : browser().browserAction;\n\nexport const setActionBadgeText = (tabId: number, text: string | number) => new Promise<void>((resolve, reject) => {\n const details: BadgeTextDetails = {text: text.toString(), tabId};\n\n getAction().setBadgeText(details, () => {\n try {\n throwRuntimeError();\n\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n});\n\nexport const clearActionBadgeText = (tabId: number): Promise<void> => setActionBadgeText(tabId, '');\n\nexport const setActionBadgeBgColor = (tabId: number, color: BadgeBackgroundColorDetails['color']) => new Promise<void>((resolve, reject) => {\n const details: BadgeBackgroundColorDetails = {color, tabId};\n\n getAction().setBadgeBackgroundColor(details, () => {\n try {\n throwRuntimeError();\n\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n});\n\nexport const setActionBadgeTextColor = async (\n tabId: number,\n color: BadgeBackgroundColorDetails['color']\n): Promise<void> => {\n if (!isManifestVersion3()) {\n return;\n }\n\n const action = getAction() as BrowserAction;\n\n await action.setBadgeTextColor({color, tabId});\n};\n\nexport const setActionIcon = (\n tabId: number,\n icon: string | Record<string, string>\n): Promise<void> => new Promise<void>((resolve, reject) => {\n getAction().setIcon({tabId, path: icon}, () => {\n try {\n throwRuntimeError();\n\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n});\n\nexport const getActionDefaultPopup = (): string => {\n const manifest = getManifest();\n\n return isManifestVersion3() ? manifest.action.default_popup : manifest.browser_action.default_popup;\n}\n\nexport const onActionClicked = (callback: Parameters<typeof chrome.action.onClicked.addListener>[0]): () => void => {\n getAction().onClicked.addListener(callback);\n\n return () => getAction().onClicked.removeListener(callback);\n}","import {browser} from \"./env\";\n\nconst commands = browser().commands;\n\nexport const onCommand = (callback: Parameters<typeof chrome.commands.onCommand.addListener>[0]): () => void => {\n commands.onCommand.addListener(callback);\n\n return () => commands.onCommand.removeListener(callback);\n}"]}
@@ -1,6 +1,10 @@
1
- import { B as Browser } from '../command-ZfDymEyz.mjs';
2
- import { a as ManifestVersion } from '../manifest-4vEG2PA3.mjs';
1
+ import { B as Browser } from '../helpers-DoeKmDTB.mjs';
2
+ import { M as ManifestVersion } from '../manifest-9HUsrGx4.mjs';
3
+ import '../content-B3yizzBe.mjs';
4
+ import 'react';
3
5
  import 'utility-types';
6
+ import '../background-DhVyBB-c.mjs';
7
+ import '../command-BtrNjWoj.mjs';
4
8
 
5
9
  type BadgeBackgroundColorDetails = chrome.browserAction.BadgeBackgroundColorDetails;
6
10
  declare const setActionBadgeText: (tabId: number, text: string | number) => Promise<void>;
@@ -1,6 +1,10 @@
1
- import { B as Browser } from '../command-ZfDymEyz.js';
2
- import { a as ManifestVersion } from '../manifest-D52-CONc.js';
1
+ import { B as Browser } from '../helpers-DoeKmDTB.js';
2
+ import { M as ManifestVersion } from '../manifest-Cl31WHRW.js';
3
+ import '../content-D0N9Xhbj.js';
4
+ import 'react';
3
5
  import 'utility-types';
6
+ import '../background-IrDrSFsc.js';
7
+ import '../command-DpGwXqYZ.js';
4
8
 
5
9
  type BadgeBackgroundColorDetails = chrome.browserAction.BadgeBackgroundColorDetails;
6
10
  declare const setActionBadgeText: (tabId: number, text: string | number) => Promise<void>;
@@ -1,7 +1,3 @@
1
- import _isUndefined from 'lodash/isUndefined';
2
-
3
- // src/browser/runtime.ts
4
-
5
1
  // src/core/env.ts
6
2
  var getEnv = (key, defaults) => {
7
3
  const env = process.env;
@@ -38,9 +34,9 @@ var isBackground = () => {
38
34
  return false;
39
35
  }
40
36
  if (manifest.manifest_version === 3) {
41
- return _isUndefined(window);
37
+ return window === void 0;
42
38
  }
43
- return !_isUndefined(window) && backgroundPaths.includes(location.pathname);
39
+ return window !== void 0 && backgroundPaths.includes(location.pathname);
44
40
  };
45
41
  var throwRuntimeError = () => {
46
42
  const error = runtime.lastError;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/env.ts","../../src/browser/env.ts","../../src/browser/runtime.ts","../../src/browser/action.ts","../../src/browser/command.ts"],"names":["browser"],"mappings":"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","file":"index.js","sourcesContent":["import {Browser} from \"@typing/browser\";\nimport {ManifestVersion} from \"@typing/manifest\";\n\nexport const getEnv: {\n <T extends string>(key: string): T | undefined;\n <T extends string, D>(key: string, defaults: D): T | D;\n} = (key: string, defaults?: string) => {\n const env = process.env;\n\n return (env[key] ?? defaults) as any;\n};\n\nexport const getBrowser = (): Browser => {\n const browser = getEnv<Browser>('BROWSER');\n\n if (browser === undefined) {\n throw new Error('Browser is not defined');\n }\n\n return browser;\n}\n\nexport const getManifestVersion = (): ManifestVersion => {\n const manifestVersion = getEnv('MANIFEST_VERSION', '3');\n\n return parseInt(manifestVersion) as ManifestVersion;\n}","import {Browser} from \"@typing/browser\";\nimport {getEnv} from \"@core/env\";\n\nexport const browser = (): typeof chrome => {\n return chrome;\n}\n\nexport const getBrowser = (): Browser => {\n return getEnv('BROWSER', Browser.Chrome);\n}\n\nexport const isBrowser = (browser: Browser): boolean => {\n return getBrowser() === browser;\n}","import _isUndefined from \"lodash/isUndefined\";\n\nimport {browser} from \"./env\";\nimport {ManifestVersion} from \"@typing/manifest\";\n\ntype Manifest = chrome.runtime.Manifest;\n\nconst runtime = browser().runtime;\n\nconst backgroundPaths = [\n '/_generated_background_page.html',\n];\n\nexport const getUrl = (path: string) => runtime.getURL(path);\n\nexport const getManifest = (): Manifest => runtime.getManifest();\n\nexport const getManifestVersion = (): ManifestVersion => getManifest().manifest_version;\n\nexport const isManifestVersion3 = (): boolean => getManifestVersion() === 3;\n\nexport const getId = (): string => runtime.id;\n\nexport const isBackground = (): boolean => {\n if (!getId()) {\n return false;\n }\n\n const manifest = getManifest();\n\n if (!manifest.background) {\n return false;\n }\n\n if (manifest.manifest_version === 3) {\n return _isUndefined(window);\n }\n\n return !_isUndefined(window) && backgroundPaths.includes(location.pathname);\n}\n\nexport const throwRuntimeError = (): void => {\n const error = runtime.lastError;\n\n if (error) {\n throw new Error(error.message);\n }\n}","import {getManifest, isManifestVersion3, throwRuntimeError} from \"./runtime\";\nimport {browser} from \"./env\";\n\ntype BadgeBackgroundColorDetails = chrome.browserAction.BadgeBackgroundColorDetails;\ntype BadgeTextDetails = chrome.action.BadgeTextDetails;\ntype BrowserAction = typeof chrome.action;\n\nconst getAction = () => isManifestVersion3() ? browser().action : browser().browserAction;\n\nexport const setActionBadgeText = (tabId: number, text: string | number) => new Promise<void>((resolve, reject) => {\n const details: BadgeTextDetails = {text: text.toString(), tabId};\n\n getAction().setBadgeText(details, () => {\n try {\n throwRuntimeError();\n\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n});\n\nexport const clearActionBadgeText = (tabId: number): Promise<void> => setActionBadgeText(tabId, '');\n\nexport const setActionBadgeBgColor = (tabId: number, color: BadgeBackgroundColorDetails['color']) => new Promise<void>((resolve, reject) => {\n const details: BadgeBackgroundColorDetails = {color, tabId};\n\n getAction().setBadgeBackgroundColor(details, () => {\n try {\n throwRuntimeError();\n\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n});\n\nexport const setActionBadgeTextColor = async (\n tabId: number,\n color: BadgeBackgroundColorDetails['color']\n): Promise<void> => {\n if (!isManifestVersion3()) {\n return;\n }\n\n const action = getAction() as BrowserAction;\n\n await action.setBadgeTextColor({color, tabId});\n};\n\nexport const setActionIcon = (\n tabId: number,\n icon: string | Record<string, string>\n): Promise<void> => new Promise<void>((resolve, reject) => {\n getAction().setIcon({tabId, path: icon}, () => {\n try {\n throwRuntimeError();\n\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n});\n\nexport const getActionDefaultPopup = (): string => {\n const manifest = getManifest();\n\n return isManifestVersion3() ? manifest.action.default_popup : manifest.browser_action.default_popup;\n}\n\nexport const onActionClicked = (callback: Parameters<typeof chrome.action.onClicked.addListener>[0]): () => void => {\n getAction().onClicked.addListener(callback);\n\n return () => getAction().onClicked.removeListener(callback);\n}","import {browser} from \"./env\";\n\nconst commands = browser().commands;\n\nexport const onCommand = (callback: Parameters<typeof chrome.commands.onCommand.addListener>[0]): () => void => {\n commands.onCommand.addListener(callback);\n\n return () => commands.onCommand.removeListener(callback);\n}"]}
1
+ {"version":3,"sources":["../../src/core/env.ts","../../src/browser/env.ts","../../src/browser/runtime.ts","../../src/browser/action.ts","../../src/browser/command.ts"],"names":["browser"],"mappings":"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","file":"index.js","sourcesContent":["import {Browser} from \"@typing/browser\";\nimport {ManifestVersion} from \"@typing/manifest\";\n\nexport const getEnv: {\n <T extends string>(key: string): T | undefined;\n <T extends string, D>(key: string, defaults: D): T | D;\n} = (key: string, defaults?: string) => {\n const env = process.env;\n\n return (env[key] ?? defaults) as any;\n};\n\nexport const getApp = (): string => {\n const app = getEnv('APP');\n\n if (app === undefined) {\n throw new Error('App is not defined');\n }\n\n return app;\n};\n\nexport const getBrowser = (): Browser => {\n const browser = getEnv<Browser>('BROWSER');\n\n if (browser === undefined) {\n throw new Error('Browser is not defined');\n }\n\n return browser;\n}\n\nexport const getManifestVersion = (): ManifestVersion => {\n const manifestVersion = getEnv('MANIFEST_VERSION', '3');\n\n return parseInt(manifestVersion) as ManifestVersion;\n}","import {Browser} from \"@typing/browser\";\nimport {getEnv} from \"@core/env\";\n\nexport const browser = (): typeof chrome => {\n return chrome;\n}\n\nexport const getBrowser = (): Browser => {\n return getEnv('BROWSER', Browser.Chrome);\n}\n\nexport const isBrowser = (browser: Browser): boolean => {\n return getBrowser() === browser;\n}","import {browser} from \"./env\";\nimport {ManifestVersion} from \"@typing/manifest\";\n\ntype Manifest = chrome.runtime.Manifest;\n\nconst runtime = browser().runtime;\n\nconst backgroundPaths = [\n '/_generated_background_page.html',\n];\n\nexport const getUrl = (path: string) => runtime.getURL(path);\n\nexport const getManifest = (): Manifest => runtime.getManifest();\n\nexport const getManifestVersion = (): ManifestVersion => getManifest().manifest_version;\n\nexport const isManifestVersion3 = (): boolean => getManifestVersion() === 3;\n\nexport const getId = (): string => runtime.id;\n\nexport const isBackground = (): boolean => {\n if (!getId()) {\n return false;\n }\n\n const manifest = getManifest();\n\n if (!manifest.background) {\n return false;\n }\n\n if (manifest.manifest_version === 3) {\n return window === undefined;\n }\n\n return window !== undefined && backgroundPaths.includes(location.pathname);\n}\n\nexport const throwRuntimeError = (): void => {\n const error = runtime.lastError;\n\n if (error) {\n throw new Error(error.message);\n }\n}","import {getManifest, isManifestVersion3, throwRuntimeError} from \"./runtime\";\nimport {browser} from \"./env\";\n\ntype BadgeBackgroundColorDetails = chrome.browserAction.BadgeBackgroundColorDetails;\ntype BadgeTextDetails = chrome.action.BadgeTextDetails;\ntype BrowserAction = typeof chrome.action;\n\nconst getAction = () => isManifestVersion3() ? browser().action : browser().browserAction;\n\nexport const setActionBadgeText = (tabId: number, text: string | number) => new Promise<void>((resolve, reject) => {\n const details: BadgeTextDetails = {text: text.toString(), tabId};\n\n getAction().setBadgeText(details, () => {\n try {\n throwRuntimeError();\n\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n});\n\nexport const clearActionBadgeText = (tabId: number): Promise<void> => setActionBadgeText(tabId, '');\n\nexport const setActionBadgeBgColor = (tabId: number, color: BadgeBackgroundColorDetails['color']) => new Promise<void>((resolve, reject) => {\n const details: BadgeBackgroundColorDetails = {color, tabId};\n\n getAction().setBadgeBackgroundColor(details, () => {\n try {\n throwRuntimeError();\n\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n});\n\nexport const setActionBadgeTextColor = async (\n tabId: number,\n color: BadgeBackgroundColorDetails['color']\n): Promise<void> => {\n if (!isManifestVersion3()) {\n return;\n }\n\n const action = getAction() as BrowserAction;\n\n await action.setBadgeTextColor({color, tabId});\n};\n\nexport const setActionIcon = (\n tabId: number,\n icon: string | Record<string, string>\n): Promise<void> => new Promise<void>((resolve, reject) => {\n getAction().setIcon({tabId, path: icon}, () => {\n try {\n throwRuntimeError();\n\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n});\n\nexport const getActionDefaultPopup = (): string => {\n const manifest = getManifest();\n\n return isManifestVersion3() ? manifest.action.default_popup : manifest.browser_action.default_popup;\n}\n\nexport const onActionClicked = (callback: Parameters<typeof chrome.action.onClicked.addListener>[0]): () => void => {\n getAction().onClicked.addListener(callback);\n\n return () => getAction().onClicked.removeListener(callback);\n}","import {browser} from \"./env\";\n\nconst commands = browser().commands;\n\nexport const onCommand = (callback: Parameters<typeof chrome.commands.onCommand.addListener>[0]): () => void => {\n commands.onCommand.addListener(callback);\n\n return () => commands.onCommand.removeListener(callback);\n}"]}