testplane 8.23.0 → 8.24.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.
Files changed (79) hide show
  1. package/build/package.json +1 -1
  2. package/build/src/browser/new-browser.d.ts +6 -5
  3. package/build/src/browser/new-browser.js +36 -25
  4. package/build/src/browser/new-browser.js.map +1 -1
  5. package/build/src/browser/types.d.ts +11 -5
  6. package/build/src/browser/types.js +9 -0
  7. package/build/src/browser/types.js.map +1 -1
  8. package/build/src/browser-installer/chrome/browser.d.ts +2 -0
  9. package/build/src/browser-installer/chrome/browser.js +23 -7
  10. package/build/src/browser-installer/chrome/browser.js.map +1 -1
  11. package/build/src/browser-installer/chrome/driver.js +6 -6
  12. package/build/src/browser-installer/chrome/driver.js.map +1 -1
  13. package/build/src/browser-installer/chrome/index.d.ts +2 -2
  14. package/build/src/browser-installer/chrome/index.js +2 -1
  15. package/build/src/browser-installer/chrome/index.js.map +1 -1
  16. package/build/src/browser-installer/chromium/browser.js +6 -5
  17. package/build/src/browser-installer/chromium/browser.js.map +1 -1
  18. package/build/src/browser-installer/chromium/driver.js +1 -1
  19. package/build/src/browser-installer/chromium/driver.js.map +1 -1
  20. package/build/src/browser-installer/constants.d.ts +4 -0
  21. package/build/src/browser-installer/constants.js +7 -1
  22. package/build/src/browser-installer/constants.js.map +1 -1
  23. package/build/src/browser-installer/edge/browser.d.ts +1 -0
  24. package/build/src/browser-installer/edge/browser.js +57 -0
  25. package/build/src/browser-installer/edge/browser.js.map +1 -0
  26. package/build/src/browser-installer/edge/driver.js +3 -3
  27. package/build/src/browser-installer/edge/driver.js.map +1 -1
  28. package/build/src/browser-installer/edge/index.d.ts +1 -0
  29. package/build/src/browser-installer/edge/index.js +3 -1
  30. package/build/src/browser-installer/edge/index.js.map +1 -1
  31. package/build/src/browser-installer/firefox/browser.d.ts +2 -0
  32. package/build/src/browser-installer/firefox/browser.js +24 -6
  33. package/build/src/browser-installer/firefox/browser.js.map +1 -1
  34. package/build/src/browser-installer/firefox/driver.js +3 -3
  35. package/build/src/browser-installer/firefox/driver.js.map +1 -1
  36. package/build/src/browser-installer/firefox/index.d.ts +2 -2
  37. package/build/src/browser-installer/firefox/index.js +2 -1
  38. package/build/src/browser-installer/firefox/index.js.map +1 -1
  39. package/build/src/browser-installer/index.d.ts +1 -1
  40. package/build/src/browser-installer/index.js +3 -3
  41. package/build/src/browser-installer/index.js.map +1 -1
  42. package/build/src/browser-installer/install.js +19 -16
  43. package/build/src/browser-installer/install.js.map +1 -1
  44. package/build/src/browser-installer/registry/index.d.ts +1 -1
  45. package/build/src/browser-installer/registry/index.js +26 -17
  46. package/build/src/browser-installer/registry/index.js.map +1 -1
  47. package/build/src/browser-installer/resolve-browser-version.d.ts +4 -0
  48. package/build/src/browser-installer/resolve-browser-version.js +41 -0
  49. package/build/src/browser-installer/resolve-browser-version.js.map +1 -0
  50. package/build/src/browser-installer/run.d.ts +1 -1
  51. package/build/src/browser-installer/run.js +7 -7
  52. package/build/src/browser-installer/run.js.map +1 -1
  53. package/build/src/browser-installer/safari/browser.d.ts +1 -0
  54. package/build/src/browser-installer/safari/browser.js +25 -0
  55. package/build/src/browser-installer/safari/browser.js.map +1 -0
  56. package/build/src/browser-installer/safari/index.d.ts +1 -0
  57. package/build/src/browser-installer/safari/index.js +3 -1
  58. package/build/src/browser-installer/safari/index.js.map +1 -1
  59. package/build/src/browser-installer/utils.d.ts +5 -12
  60. package/build/src/browser-installer/utils.js +3 -29
  61. package/build/src/browser-installer/utils.js.map +1 -1
  62. package/build/src/browser-pool/webdriver-pool.js +6 -7
  63. package/build/src/browser-pool/webdriver-pool.js.map +1 -1
  64. package/build/src/cli/commands/list-browsers/index.d.ts +2 -0
  65. package/build/src/cli/commands/list-browsers/index.js +74 -0
  66. package/build/src/cli/commands/list-browsers/index.js.map +1 -0
  67. package/build/src/cli/constants.d.ts +1 -0
  68. package/build/src/cli/constants.js +1 -0
  69. package/build/src/cli/constants.js.map +1 -1
  70. package/build/src/config/types.d.ts +1 -0
  71. package/build/src/constants/config.d.ts +13 -10
  72. package/build/src/constants/config.js +36 -11
  73. package/build/src/constants/config.js.map +1 -1
  74. package/build/src/index.d.ts +1 -1
  75. package/build/src/types/index.d.ts +4 -0
  76. package/build/src/utils/browser.d.ts +2 -0
  77. package/build/src/utils/browser.js +21 -1
  78. package/build/src/utils/browser.js.map +1 -1
  79. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "testplane",
3
- "version": "8.23.0",
3
+ "version": "8.24.0",
4
4
  "description": "Tests framework based on mocha and wdio",
5
5
  "main": "build/src/index.js",
6
6
  "files": [
@@ -3,11 +3,12 @@ import { RemoteOptions } from "webdriverio";
3
3
  import { Browser, BrowserOpts } from "./browser";
4
4
  import { Config } from "../config";
5
5
  import { BrowserConfig } from "../config/browser-config";
6
- export type CapabilityName = "goog:chromeOptions" | "moz:firefoxOptions" | "ms:edgeOptions";
7
- export type HeadlessBrowserOptions = Record<string, {
8
- capabilityName: CapabilityName;
6
+ import { type W3CBrowserName } from "./types";
7
+ export type VendorSpecificCapabilityName = "goog:chromeOptions" | "moz:firefoxOptions" | "ms:edgeOptions";
8
+ export type HeadlessBrowserOptions = Partial<Record<W3CBrowserName, {
9
+ capabilityName: VendorSpecificCapabilityName;
9
10
  getArgs: (headlessMode: BrowserConfig["headless"]) => string[];
10
- }>;
11
+ }>>;
11
12
  export declare class NewBrowser extends Browser {
12
13
  constructor(config: Config, opts: BrowserOpts);
13
14
  init(): Promise<NewBrowser>;
@@ -21,7 +22,7 @@ export declare class NewBrowser extends Browser {
21
22
  protected _addHeadlessCapability(headless: BrowserConfig["headless"], capabilities: WebdriverIO.Capabilities): WebdriverIO.Capabilities;
22
23
  protected _extendCapabilitiesByVersion(): WebdriverIO.Capabilities;
23
24
  protected _getLocalWebdriverGridUrl(): Promise<string>;
24
- protected _addExecutablePath(config: BrowserConfig, capabilities: WebdriverIO.Capabilities): Promise<WebdriverIO.Capabilities>;
25
+ protected _applyLocalBrowserCapabilities(config: BrowserConfig, capabilities: WebdriverIO.Capabilities): Promise<WebdriverIO.Capabilities>;
25
26
  protected _getGridHost(url: URI): string;
26
27
  protected _getQueryParams(query: string): Record<string, string>;
27
28
  }
@@ -35,31 +35,25 @@ const browser_1 = require("./browser");
35
35
  const signal_handler_1 = __importDefault(require("../signal-handler"));
36
36
  const history_1 = require("./history");
37
37
  const logger_1 = require("../utils/logger");
38
+ const browser_2 = require("../utils/browser");
38
39
  const runtime_config_1 = require("../config/runtime-config");
39
40
  const config_1 = require("../constants/config");
40
41
  const defaults_1 = require("../config/defaults");
42
+ const types_1 = require("./types");
41
43
  const DEFAULT_PORT = 4444;
42
44
  const headlessBrowserOptions = {
43
- chrome: {
45
+ [types_1.BrowserName.CHROME]: {
44
46
  capabilityName: "goog:chromeOptions",
45
47
  getArgs: (headlessMode) => {
46
48
  const headlessValue = (0, lodash_1.isBoolean)(headlessMode) ? "headless" : `headless=${headlessMode}`;
47
49
  return [headlessValue, "disable-gpu"];
48
50
  },
49
51
  },
50
- firefox: {
52
+ [types_1.BrowserName.FIREFOX]: {
51
53
  capabilityName: "moz:firefoxOptions",
52
54
  getArgs: () => ["-headless"],
53
55
  },
54
- msedge: {
55
- capabilityName: "ms:edgeOptions",
56
- getArgs: () => ["--headless"],
57
- },
58
- edge: {
59
- capabilityName: "ms:edgeOptions",
60
- getArgs: () => ["--headless"],
61
- },
62
- microsoftedge: {
56
+ [types_1.BrowserName.EDGE]: {
63
57
  capabilityName: "ms:edgeOptions",
64
58
  getArgs: () => ["--headless"],
65
59
  },
@@ -160,15 +154,18 @@ class NewBrowser extends browser_1.Browser {
160
154
  : config.desiredCapabilities;
161
155
  const capabilitiesWithAddedHeadless = this._addHeadlessCapability(config.headless, capabilitiesExtendedByVersion);
162
156
  return this._isLocalGridUrl()
163
- ? this._addExecutablePath(config, capabilitiesWithAddedHeadless)
157
+ ? this._applyLocalBrowserCapabilities(config, capabilitiesWithAddedHeadless)
164
158
  : Promise.resolve(capabilitiesWithAddedHeadless);
165
159
  }
166
160
  _addHeadlessCapability(headless, capabilities) {
167
161
  if (!headless) {
168
162
  return capabilities;
169
163
  }
170
- const browserNameLowerCase = capabilities.browserName?.toLocaleLowerCase();
171
- const capabilitySettings = headlessBrowserOptions[browserNameLowerCase];
164
+ const browserNameW3C = (0, browser_2.getNormalizedBrowserName)(capabilities.browserName);
165
+ if (!browserNameW3C) {
166
+ return capabilities;
167
+ }
168
+ const capabilitySettings = headlessBrowserOptions[browserNameW3C];
172
169
  if (!capabilitySettings) {
173
170
  (0, logger_1.warn)(`WARNING: Headless setting is not supported for ${capabilities.browserName} browserName`);
174
171
  return capabilities;
@@ -197,23 +194,37 @@ class NewBrowser extends browser_1.Browser {
197
194
  this._wdProcess = await this._wdPool.getWebdriver(this._config.desiredCapabilities?.browserName, this._config.desiredCapabilities?.browserVersion, { debug: this._config.system.debug });
198
195
  return this._wdProcess.gridUrl;
199
196
  }
200
- async _addExecutablePath(config, capabilities) {
201
- const { getNormalizedBrowserName, installBrowser } = await Promise.resolve().then(() => __importStar(require("../browser-installer")));
202
- const normalizedBrowserName = getNormalizedBrowserName(this._config.desiredCapabilities?.browserName);
203
- if (!normalizedBrowserName) {
197
+ async _applyLocalBrowserCapabilities(config, capabilities) {
198
+ const { installBrowser } = await Promise.resolve().then(() => __importStar(require("../browser-installer")));
199
+ const browserNameW3C = (0, browser_2.getNormalizedBrowserName)(config.desiredCapabilities?.browserName);
200
+ if (!browserNameW3C) {
204
201
  throw new Error([
205
- `Running auto local "${this._config.desiredCapabilities?.browserName}" is unsupported`,
202
+ `Running auto local "${config.desiredCapabilities?.browserName}" is unsupported`,
206
203
  `Supported browsers: "chrome", "firefox", "safari", "edge"`,
207
204
  ].join("\n"));
208
205
  }
209
- const executablePath = await installBrowser(normalizedBrowserName, this._config.desiredCapabilities?.browserVersion, { shouldInstallWebDriver: false, shouldInstallUbuntuPackages: true });
206
+ const executablePath = await installBrowser(browserNameW3C, config.desiredCapabilities?.browserVersion, {
207
+ shouldInstallWebDriver: false,
208
+ shouldInstallUbuntuPackages: true,
209
+ });
210
210
  if (executablePath) {
211
- const browserNameLowerCase = config.desiredCapabilities?.browserName?.toLowerCase();
212
- const { capabilityName } = headlessBrowserOptions[browserNameLowerCase];
213
- capabilities[capabilityName] ||= {};
214
- capabilities[capabilityName].binary ||= executablePath;
211
+ const capabilitySettings = headlessBrowserOptions[browserNameW3C];
212
+ if (!capabilitySettings) {
213
+ return capabilities;
214
+ }
215
+ capabilities[capabilitySettings.capabilityName] ||= {};
216
+ capabilities[capabilitySettings.capabilityName].binary ||= executablePath;
215
217
  }
216
- return capabilities;
218
+ const filteredCapabilities = Object.keys(capabilities)
219
+ .filter(capabilityName => {
220
+ const isW3CCapability = config_1.W3C_CAPABILITIES.includes(capabilityName);
221
+ const isVendorSpecificCapability = config_1.VENDOR_CAPABILITIES[browserNameW3C].includes(capabilityName);
222
+ return isW3CCapability || isVendorSpecificCapability;
223
+ })
224
+ .reduce((acc, capabilityName) => {
225
+ return (0, lodash_1.set)(acc, [capabilityName], capabilities[capabilityName]);
226
+ }, {});
227
+ return filteredCapabilities;
217
228
  }
218
229
  _getGridHost(url) {
219
230
  return new urijs_1.default({
@@ -1 +1 @@
1
- {"version":3,"file":"new-browser.js","sourceRoot":"","sources":["../../../src/browser/new-browser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"new-browser.js","sourceRoot":"","sources":["../../../src/browser/new-browser.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,21 @@
1
1
  /// <reference types="node" />
2
+ import { Browser as PuppeteerBrowser } from "@puppeteer/browsers";
2
3
  import type { EventEmitter } from "events";
3
4
  import type { AssertViewCommand, AssertViewElementCommand } from "./commands/types";
4
5
  import type { BrowserConfig } from "./../config/browser-config";
5
- import type { ExecutionThreadToolCtx } from "../types";
6
+ import type { ExecutionThreadCtx, ExecutionThreadToolCtx } from "../types";
6
7
  import { MoveCursorToCommand } from "./commands/moveCursorTo";
7
8
  import { OpenAndWaitCommand } from "./commands/openAndWait";
8
9
  import Callstack from "./history/callstack";
9
10
  import { Test, Hook } from "../test-reader/test-object";
11
+ export declare const BrowserName: {
12
+ readonly CHROME: PuppeteerBrowser.CHROME;
13
+ readonly CHROMIUM: PuppeteerBrowser.CHROMIUM;
14
+ readonly FIREFOX: PuppeteerBrowser.FIREFOX;
15
+ readonly SAFARI: "safari";
16
+ readonly EDGE: "MicrosoftEdge";
17
+ };
18
+ export type W3CBrowserName = Exclude<(typeof BrowserName)[keyof typeof BrowserName], PuppeteerBrowser.CHROMIUM>;
10
19
  export interface BrowserMeta {
11
20
  pid: number;
12
21
  browserVersion: string;
@@ -102,10 +111,7 @@ declare global {
102
111
  * @deprecated Use `testplaneCtx` instead
103
112
  */
104
113
  hermioneCtx: ExecutionThreadToolCtx;
105
- ctx: {
106
- browser: WebdriverIO.Browser;
107
- currentTest: Test;
108
- };
114
+ ctx: ExecutionThreadCtx;
109
115
  };
110
116
  openAndWait: OpenAndWaitCommand;
111
117
  switchToRepl: (this: WebdriverIO.Browser, ctx?: Record<string, unknown>) => Promise<void>;
@@ -1,3 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BrowserName = void 0;
4
+ const browsers_1 = require("@puppeteer/browsers");
5
+ exports.BrowserName = {
6
+ CHROME: browsers_1.Browser.CHROME,
7
+ CHROMIUM: browsers_1.Browser.CHROMIUM,
8
+ FIREFOX: browsers_1.Browser.FIREFOX,
9
+ SAFARI: "safari",
10
+ EDGE: "MicrosoftEdge",
11
+ };
3
12
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/browser/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/browser/types.ts"],"names":[],"mappings":";;;AAAA,kDAAkE;AAUrD,QAAA,WAAW,GAAG;IACvB,MAAM,EAAE,kBAAgB,CAAC,MAAM;IAC/B,QAAQ,EAAE,kBAAgB,CAAC,QAAQ;IACnC,OAAO,EAAE,kBAAgB,CAAC,OAAO;IACjC,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,eAAe;CACf,CAAC"}
@@ -1,5 +1,7 @@
1
+ import _ from "lodash";
1
2
  export declare const installChrome: (version: string, { force, needWebDriver, needUbuntuPackages }?: {
2
3
  force?: boolean | undefined;
3
4
  needWebDriver?: boolean | undefined;
4
5
  needUbuntuPackages?: boolean | undefined;
5
6
  }) => Promise<string>;
7
+ export declare const resolveLatestChromeVersion: ((force?: any) => Promise<string>) & _.MemoizedFunction;
@@ -26,7 +26,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.installChrome = void 0;
29
+ exports.resolveLatestChromeVersion = exports.installChrome = void 0;
30
+ const lodash_1 = __importDefault(require("lodash"));
30
31
  const browsers_1 = require("@puppeteer/browsers");
31
32
  const constants_1 = require("../constants");
32
33
  const utils_1 = require("../utils");
@@ -34,6 +35,7 @@ const registry_1 = __importDefault(require("../registry"));
34
35
  const utils_2 = require("../utils");
35
36
  const ubuntu_packages_1 = require("../ubuntu-packages");
36
37
  const driver_1 = require("./driver");
38
+ const types_1 = require("../../browser/types");
37
39
  const installChromeBrowser = async (version, { force = false } = {}) => {
38
40
  const milestone = (0, utils_1.getMilestone)(version);
39
41
  if (Number(milestone) < constants_1.MIN_CHROME_FOR_TESTING_VERSION) {
@@ -42,15 +44,15 @@ const installChromeBrowser = async (version, { force = false } = {}) => {
42
44
  return installChromium(version, { force });
43
45
  }
44
46
  const platform = (0, utils_1.getBrowserPlatform)();
45
- const existingLocallyBrowserVersion = registry_1.default.getMatchedBrowserVersion(utils_1.Browser.CHROME, platform, version);
47
+ const existingLocallyBrowserVersion = registry_1.default.getMatchedBrowserVersion(types_1.BrowserName.CHROME, platform, version);
46
48
  if (existingLocallyBrowserVersion && !force) {
47
49
  (0, utils_1.browserInstallerDebug)(`A locally installed chrome@${version} browser was found. Skipping the installation`);
48
- return registry_1.default.getBinaryPath(utils_1.Browser.CHROME, platform, existingLocallyBrowserVersion);
50
+ return registry_1.default.getBinaryPath(types_1.BrowserName.CHROME, platform, existingLocallyBrowserVersion);
49
51
  }
50
52
  const normalizedVersion = (0, utils_2.normalizeChromeVersion)(version);
51
- const buildId = await (0, browsers_1.resolveBuildId)(utils_1.Browser.CHROME, platform, normalizedVersion);
53
+ const buildId = await (0, browsers_1.resolveBuildId)(types_1.BrowserName.CHROME, platform, normalizedVersion);
52
54
  const cacheDir = (0, utils_1.getBrowsersDir)();
53
- const canBeInstalled = await (0, browsers_1.canDownload)({ browser: utils_1.Browser.CHROME, platform, buildId, cacheDir });
55
+ const canBeInstalled = await (0, browsers_1.canDownload)({ browser: types_1.BrowserName.CHROME, platform, buildId, cacheDir });
54
56
  if (!canBeInstalled) {
55
57
  throw new Error([
56
58
  `chrome@${version} can't be installed.`,
@@ -63,10 +65,10 @@ const installChromeBrowser = async (version, { force = false } = {}) => {
63
65
  buildId,
64
66
  cacheDir,
65
67
  downloadProgressCallback,
66
- browser: utils_1.Browser.CHROME,
68
+ browser: types_1.BrowserName.CHROME,
67
69
  unpack: true,
68
70
  }).then(result => result.executablePath);
69
- return registry_1.default.installBinary(utils_1.Browser.CHROME, platform, buildId, installFn);
71
+ return registry_1.default.installBinary(types_1.BrowserName.CHROME, platform, buildId, installFn);
70
72
  };
71
73
  const installChrome = async (version, { force = false, needWebDriver = false, needUbuntuPackages = false } = {}) => {
72
74
  const [browserPath] = await Promise.all([
@@ -77,4 +79,18 @@ const installChrome = async (version, { force = false, needWebDriver = false, ne
77
79
  return browserPath;
78
80
  };
79
81
  exports.installChrome = installChrome;
82
+ exports.resolveLatestChromeVersion = lodash_1.default.memoize(async (force = false) => {
83
+ if (!force) {
84
+ const platform = (0, utils_1.getBrowserPlatform)();
85
+ const existingLocallyBrowserVersion = registry_1.default.getMatchedBrowserVersion(types_1.BrowserName.CHROME, platform);
86
+ if (existingLocallyBrowserVersion) {
87
+ return existingLocallyBrowserVersion;
88
+ }
89
+ }
90
+ return (0, utils_1.retryFetch)(constants_1.CHROME_FOR_TESTING_LATEST_STABLE_API_URL)
91
+ .then(res => res.text())
92
+ .catch(() => {
93
+ throw new Error("Couldn't resolve latest chrome version");
94
+ });
95
+ });
80
96
  //# sourceMappingURL=browser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../../src/browser-installer/chrome/browser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../../src/browser-installer/chrome/browser.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAuB;AACvB,kDAA+F;AAC/F,4CAAwG;AACxG,oCAOkB;AAClB,2DAAmC;AACnC,oCAAkD;AAClD,wDAAsE;AACtE,qCAA+C;AAC/C,+CAAkD;AAElD,MAAM,oBAAoB,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE,KAAK,GAAG,KAAK,EAAE,GAAG,EAAE,EAAmB,EAAE;IAC5F,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,OAAO,CAAC,CAAC;IAExC,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,0CAA8B,EAAE,CAAC;QACrD,IAAA,6BAAqB,EAAC,2BAA2B,OAAO,+BAA+B,CAAC,CAAC;QAEzF,MAAM,EAAE,eAAe,EAAE,GAAG,wDAAa,aAAa,GAAC,CAAC;QAExD,OAAO,eAAe,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,0BAAkB,GAAE,CAAC;IACtC,MAAM,6BAA6B,GAAG,kBAAQ,CAAC,wBAAwB,CAAC,mBAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAE/G,IAAI,6BAA6B,IAAI,CAAC,KAAK,EAAE,CAAC;QAC1C,IAAA,6BAAqB,EAAC,8BAA8B,OAAO,+CAA+C,CAAC,CAAC;QAE5G,OAAO,kBAAQ,CAAC,aAAa,CAAC,mBAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,6BAA6B,CAAC,CAAC;IAC/F,CAAC;IAED,MAAM,iBAAiB,GAAG,IAAA,8BAAsB,EAAC,OAAO,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,MAAM,IAAA,yBAAc,EAAC,mBAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC;IAEtF,MAAM,QAAQ,GAAG,IAAA,sBAAc,GAAE,CAAC;IAClC,MAAM,cAAc,GAAG,MAAM,IAAA,sBAAW,EAAC,EAAE,OAAO,EAAE,mBAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEvG,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACX;YACI,UAAU,OAAO,sBAAsB;YACvC,yBAAyB,OAAO,2CAA2C;YAC3E,kCAAkC;SACrC,CAAC,IAAI,CAAC,IAAI,CAAC,CACf,CAAC;IACN,CAAC;IAED,MAAM,SAAS,GAAG,CAAC,wBAAkD,EAAmB,EAAE,CACtF,IAAA,kBAAgB,EAAC;QACb,QAAQ;QACR,OAAO;QACP,QAAQ;QACR,wBAAwB;QACxB,OAAO,EAAE,mBAAW,CAAC,MAAM;QAC3B,MAAM,EAAE,IAAI;KACf,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAE7C,OAAO,kBAAQ,CAAC,aAAa,CAAC,mBAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;AACpF,CAAC,CAAC;AAEK,MAAM,aAAa,GAAG,KAAK,EAC9B,OAAe,EACf,EAAE,KAAK,GAAG,KAAK,EAAE,aAAa,GAAG,KAAK,EAAE,kBAAkB,GAAG,KAAK,EAAE,GAAG,EAAE,EAC1D,EAAE;IACjB,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACpC,oBAAoB,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC;QACxC,aAAa,IAAI,IAAA,4BAAmB,EAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC;QACxD,kBAAkB,IAAI,IAAA,kDAAgC,GAAE;KAC3D,CAAC,CAAC;IAEH,OAAO,WAAW,CAAC;AACvB,CAAC,CAAC;AAXW,QAAA,aAAa,iBAWxB;AAEW,QAAA,0BAA0B,GAAG,gBAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,EAAmB,EAAE;IACzF,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,MAAM,QAAQ,GAAG,IAAA,0BAAkB,GAAE,CAAC;QACtC,MAAM,6BAA6B,GAAG,kBAAQ,CAAC,wBAAwB,CAAC,mBAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEtG,IAAI,6BAA6B,EAAE,CAAC;YAChC,OAAO,6BAA6B,CAAC;QACzC,CAAC;IACL,CAAC;IAED,OAAO,IAAA,kBAAU,EAAC,oDAAwC,CAAC;SACtD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;SACvB,KAAK,CAAC,GAAG,EAAE;QACR,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;AACX,CAAC,CAAC,CAAC"}
@@ -33,10 +33,10 @@ const utils_1 = require("../utils");
33
33
  const registry_1 = __importDefault(require("../registry"));
34
34
  const installChromeDriver = async (chromeVersion, { force = false } = {}) => {
35
35
  const platform = (0, utils_1.getBrowserPlatform)();
36
- const existingLocallyDriverVersion = registry_1.default.getMatchedDriverVersion(utils_1.Driver.CHROMEDRIVER, platform, chromeVersion);
36
+ const existingLocallyDriverVersion = registry_1.default.getMatchedDriverVersion(utils_1.DriverName.CHROMEDRIVER, platform, chromeVersion);
37
37
  if (existingLocallyDriverVersion && !force) {
38
38
  (0, utils_1.browserInstallerDebug)(`A locally installed chromedriver for chrome@${chromeVersion} was found. Skipping the installation`);
39
- return registry_1.default.getBinaryPath(utils_1.Driver.CHROMEDRIVER, platform, existingLocallyDriverVersion);
39
+ return registry_1.default.getBinaryPath(utils_1.DriverName.CHROMEDRIVER, platform, existingLocallyDriverVersion);
40
40
  }
41
41
  const milestone = (0, utils_1.getMilestone)(chromeVersion);
42
42
  if (Number(milestone) < constants_1.MIN_CHROMEDRIVER_FOR_TESTING_VERSION) {
@@ -44,9 +44,9 @@ const installChromeDriver = async (chromeVersion, { force = false } = {}) => {
44
44
  const { installChromeDriverManually } = await Promise.resolve().then(() => __importStar(require("../chromium")));
45
45
  return installChromeDriverManually(milestone);
46
46
  }
47
- const buildId = await (0, browsers_1.resolveBuildId)(utils_1.Driver.CHROMEDRIVER, platform, milestone);
47
+ const buildId = await (0, browsers_1.resolveBuildId)(utils_1.DriverName.CHROMEDRIVER, platform, milestone);
48
48
  const cacheDir = (0, utils_1.getChromeDriverDir)();
49
- const canBeInstalled = await (0, browsers_1.canDownload)({ browser: utils_1.Driver.CHROMEDRIVER, platform, buildId, cacheDir });
49
+ const canBeInstalled = await (0, browsers_1.canDownload)({ browser: utils_1.DriverName.CHROMEDRIVER, platform, buildId, cacheDir });
50
50
  if (!canBeInstalled) {
51
51
  throw new Error([
52
52
  `chromedriver@${buildId} can't be installed.`,
@@ -58,11 +58,11 @@ const installChromeDriver = async (chromeVersion, { force = false } = {}) => {
58
58
  platform,
59
59
  buildId,
60
60
  cacheDir: (0, utils_1.getChromeDriverDir)(),
61
- browser: utils_1.Driver.CHROMEDRIVER,
61
+ browser: utils_1.DriverName.CHROMEDRIVER,
62
62
  unpack: true,
63
63
  downloadProgressCallback,
64
64
  }).then(result => result.executablePath);
65
- return registry_1.default.installBinary(utils_1.Driver.CHROMEDRIVER, platform, buildId, installFn);
65
+ return registry_1.default.installBinary(utils_1.DriverName.CHROMEDRIVER, platform, buildId, installFn);
66
66
  };
67
67
  exports.installChromeDriver = installChromeDriver;
68
68
  //# sourceMappingURL=driver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../../../src/browser-installer/chrome/driver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA+F;AAC/F,4CAAoE;AACpE,oCAOkB;AAClB,2DAAmC;AAE5B,MAAM,mBAAmB,GAAG,KAAK,EAAE,aAAqB,EAAE,EAAE,KAAK,GAAG,KAAK,EAAE,GAAG,EAAE,EAAmB,EAAE;IACxG,MAAM,QAAQ,GAAG,IAAA,0BAAkB,GAAE,CAAC;IACtC,MAAM,4BAA4B,GAAG,kBAAQ,CAAC,uBAAuB,CAAC,cAAM,CAAC,YAAY,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;IAEpH,IAAI,4BAA4B,IAAI,CAAC,KAAK,EAAE,CAAC;QACzC,IAAA,6BAAqB,EACjB,+CAA+C,aAAa,uCAAuC,CACtG,CAAC;QAEF,OAAO,kBAAQ,CAAC,aAAa,CAAC,cAAM,CAAC,YAAY,EAAE,QAAQ,EAAE,4BAA4B,CAAC,CAAC;IAC/F,CAAC;IAED,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,aAAa,CAAC,CAAC;IAE9C,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,gDAAoC,EAAE,CAAC;QAC3D,IAAA,6BAAqB,EACjB,sCAAsC,aAAa,oDAAoD,CAC1G,CAAC;QAEF,MAAM,EAAE,2BAA2B,EAAE,GAAG,wDAAa,aAAa,GAAC,CAAC;QAEpE,OAAO,2BAA2B,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,IAAA,yBAAc,EAAC,cAAM,CAAC,YAAY,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAE/E,MAAM,QAAQ,GAAG,IAAA,0BAAkB,GAAE,CAAC;IACtC,MAAM,cAAc,GAAG,MAAM,IAAA,sBAAW,EAAC,EAAE,OAAO,EAAE,cAAM,CAAC,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IAExG,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACX;YACI,gBAAgB,OAAO,sBAAsB;YAC7C,uCAAuC,SAAS,cAAc;YAC9D,+CAA+C;SAClD,CAAC,IAAI,CAAC,IAAI,CAAC,CACf,CAAC;IACN,CAAC;IAED,MAAM,SAAS,GAAG,CAAC,wBAAkD,EAAmB,EAAE,CACtF,IAAA,kBAAgB,EAAC;QACb,QAAQ;QACR,OAAO;QACP,QAAQ,EAAE,IAAA,0BAAkB,GAAE;QAC9B,OAAO,EAAE,cAAM,CAAC,YAAY;QAC5B,MAAM,EAAE,IAAI;QACZ,wBAAwB;KAC3B,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAE7C,OAAO,kBAAQ,CAAC,aAAa,CAAC,cAAM,CAAC,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;AACrF,CAAC,CAAC;AAlDW,QAAA,mBAAmB,uBAkD9B"}
1
+ {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../../../src/browser-installer/chrome/driver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA+F;AAC/F,4CAAoE;AACpE,oCAOkB;AAClB,2DAAmC;AAE5B,MAAM,mBAAmB,GAAG,KAAK,EAAE,aAAqB,EAAE,EAAE,KAAK,GAAG,KAAK,EAAE,GAAG,EAAE,EAAmB,EAAE;IACxG,MAAM,QAAQ,GAAG,IAAA,0BAAkB,GAAE,CAAC;IACtC,MAAM,4BAA4B,GAAG,kBAAQ,CAAC,uBAAuB,CACjE,kBAAU,CAAC,YAAY,EACvB,QAAQ,EACR,aAAa,CAChB,CAAC;IAEF,IAAI,4BAA4B,IAAI,CAAC,KAAK,EAAE,CAAC;QACzC,IAAA,6BAAqB,EACjB,+CAA+C,aAAa,uCAAuC,CACtG,CAAC;QAEF,OAAO,kBAAQ,CAAC,aAAa,CAAC,kBAAU,CAAC,YAAY,EAAE,QAAQ,EAAE,4BAA4B,CAAC,CAAC;IACnG,CAAC;IAED,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,aAAa,CAAC,CAAC;IAE9C,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,gDAAoC,EAAE,CAAC;QAC3D,IAAA,6BAAqB,EACjB,sCAAsC,aAAa,oDAAoD,CAC1G,CAAC;QAEF,MAAM,EAAE,2BAA2B,EAAE,GAAG,wDAAa,aAAa,GAAC,CAAC;QAEpE,OAAO,2BAA2B,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,IAAA,yBAAc,EAAC,kBAAU,CAAC,YAAY,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAEnF,MAAM,QAAQ,GAAG,IAAA,0BAAkB,GAAE,CAAC;IACtC,MAAM,cAAc,GAAG,MAAM,IAAA,sBAAW,EAAC,EAAE,OAAO,EAAE,kBAAU,CAAC,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IAE5G,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACX;YACI,gBAAgB,OAAO,sBAAsB;YAC7C,uCAAuC,SAAS,cAAc;YAC9D,+CAA+C;SAClD,CAAC,IAAI,CAAC,IAAI,CAAC,CACf,CAAC;IACN,CAAC;IAED,MAAM,SAAS,GAAG,CAAC,wBAAkD,EAAmB,EAAE,CACtF,IAAA,kBAAgB,EAAC;QACb,QAAQ;QACR,OAAO;QACP,QAAQ,EAAE,IAAA,0BAAkB,GAAE;QAC9B,OAAO,EAAE,kBAAU,CAAC,YAAY;QAChC,MAAM,EAAE,IAAI;QACZ,wBAAwB;KAC3B,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAE7C,OAAO,kBAAQ,CAAC,aAAa,CAAC,kBAAU,CAAC,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;AACzF,CAAC,CAAC;AAtDW,QAAA,mBAAmB,uBAsD9B"}
@@ -2,9 +2,9 @@
2
2
  /// <reference types="node" />
3
3
  /// <reference types="node" />
4
4
  import { type ChildProcess } from "child_process";
5
- import { installChrome } from "./browser";
5
+ import { installChrome, resolveLatestChromeVersion } from "./browser";
6
6
  import { installChromeDriver } from "./driver";
7
- export { installChrome, installChromeDriver };
7
+ export { installChrome, resolveLatestChromeVersion, installChromeDriver };
8
8
  export declare const runChromeDriver: (chromeVersion: string, { debug }?: {
9
9
  debug?: boolean | undefined;
10
10
  }) => Promise<{
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.runChromeDriver = exports.installChromeDriver = exports.installChrome = void 0;
6
+ exports.runChromeDriver = exports.installChromeDriver = exports.resolveLatestChromeVersion = exports.installChrome = void 0;
7
7
  const child_process_1 = require("child_process");
8
8
  const get_port_1 = __importDefault(require("get-port"));
9
9
  const wait_port_1 = __importDefault(require("wait-port"));
@@ -12,6 +12,7 @@ const constants_1 = require("../constants");
12
12
  const utils_2 = require("../utils");
13
13
  const browser_1 = require("./browser");
14
14
  Object.defineProperty(exports, "installChrome", { enumerable: true, get: function () { return browser_1.installChrome; } });
15
+ Object.defineProperty(exports, "resolveLatestChromeVersion", { enumerable: true, get: function () { return browser_1.resolveLatestChromeVersion; } });
15
16
  const driver_1 = require("./driver");
16
17
  Object.defineProperty(exports, "installChromeDriver", { enumerable: true, get: function () { return driver_1.installChromeDriver; } });
17
18
  const ubuntu_packages_1 = require("../ubuntu-packages");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/browser-installer/chrome/index.ts"],"names":[],"mappings":";;;;;;AAAA,iDAAyD;AACzD,wDAA+B;AAC/B,0DAAiC;AACjC,kDAA4D;AAC5D,4CAAmD;AACnD,oCAAwC;AACxC,uCAA0C;AAIjC,8FAJA,uBAAa,OAIA;AAHtB,qCAA+C;AAGvB,oGAHf,4BAAmB,OAGe;AAF3C,wDAAkE;AAI3D,MAAM,eAAe,GAAG,KAAK,EAChC,aAAqB,EACrB,EAAE,KAAK,GAAG,KAAK,EAAE,GAAG,EAAE,EAC2C,EAAE;IACnE,MAAM,CAAC,gBAAgB,EAAE,UAAU,EAAE,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACtE,IAAA,4BAAmB,EAAC,aAAa,CAAC;QAClC,IAAA,kBAAO,GAAE;QACT,IAAA,0BAAQ,GAAE;aACL,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAA,oCAAkB,GAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aAC1D,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;KACpF,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,IAAA,qBAAK,EAAC,gBAAgB,EAAE,CAAC,UAAU,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE;QACrG,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,KAAK;QACf,GAAG,EAAE,eAAe;KACvB,CAAC,CAAC;IAEH,IAAI,KAAK,EAAE,CAAC;QACR,IAAA,0BAAkB,EAAC,YAAY,EAAE,iBAAiB,IAAA,oBAAY,EAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACvF,CAAC;IAED,MAAM,OAAO,GAAG,oBAAoB,UAAU,EAAE,CAAC;IAEjD,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;IAEhD,MAAM,IAAA,mBAAQ,EAAC,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,+BAAmB,EAAE,CAAC,CAAC;IAErF,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;AAChE,CAAC,CAAC;AA7BW,QAAA,eAAe,mBA6B1B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/browser-installer/chrome/index.ts"],"names":[],"mappings":";;;;;;AAAA,iDAAyD;AACzD,wDAA+B;AAC/B,0DAAiC;AACjC,kDAA4D;AAC5D,4CAAmD;AACnD,oCAAwC;AACxC,uCAAsE;AAI7D,8FAJA,uBAAa,OAIA;AAAE,2GAJA,oCAA0B,OAIA;AAHlD,qCAA+C;AAGK,oGAH3C,4BAAmB,OAG2C;AAFvE,wDAAkE;AAI3D,MAAM,eAAe,GAAG,KAAK,EAChC,aAAqB,EACrB,EAAE,KAAK,GAAG,KAAK,EAAE,GAAG,EAAE,EAC2C,EAAE;IACnE,MAAM,CAAC,gBAAgB,EAAE,UAAU,EAAE,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACtE,IAAA,4BAAmB,EAAC,aAAa,CAAC;QAClC,IAAA,kBAAO,GAAE;QACT,IAAA,0BAAQ,GAAE;aACL,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAA,oCAAkB,GAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aAC1D,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;KACpF,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,IAAA,qBAAK,EAAC,gBAAgB,EAAE,CAAC,UAAU,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE;QACrG,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,KAAK;QACf,GAAG,EAAE,eAAe;KACvB,CAAC,CAAC;IAEH,IAAI,KAAK,EAAE,CAAC;QACR,IAAA,0BAAkB,EAAC,YAAY,EAAE,iBAAiB,IAAA,oBAAY,EAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACvF,CAAC;IAED,MAAM,OAAO,GAAG,oBAAoB,UAAU,EAAE,CAAC;IAEjD,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;IAEhD,MAAM,IAAA,mBAAQ,EAAC,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,+BAAmB,EAAE,CAAC,CAAC;IAErF,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;AAChE,CAAC,CAAC;AA7BW,QAAA,eAAe,mBA6B1B"}
@@ -10,6 +10,7 @@ const utils_1 = require("../utils");
10
10
  const utils_2 = require("./utils");
11
11
  const utils_3 = require("../utils");
12
12
  const constants_1 = require("../constants");
13
+ const types_1 = require("../../browser/types");
13
14
  const installChromium = async (version, { force = false } = {}) => {
14
15
  const milestone = (0, utils_1.getMilestone)(version);
15
16
  if (Number(milestone) < constants_1.MIN_CHROMIUM_VERSION) {
@@ -19,14 +20,14 @@ const installChromium = async (version, { force = false } = {}) => {
19
20
  ].join("\n"));
20
21
  }
21
22
  const platform = (0, utils_3.getChromePlatform)(version);
22
- const existingLocallyBrowserVersion = registry_1.default.getMatchedBrowserVersion(utils_1.Browser.CHROMIUM, platform, version);
23
+ const existingLocallyBrowserVersion = registry_1.default.getMatchedBrowserVersion(types_1.BrowserName.CHROMIUM, platform, version);
23
24
  if (existingLocallyBrowserVersion && !force) {
24
25
  (0, utils_1.browserInstallerDebug)(`A locally installed chromium@${version} browser was found. Skipping the installation`);
25
- return registry_1.default.getBinaryPath(utils_1.Browser.CHROMIUM, platform, existingLocallyBrowserVersion);
26
+ return registry_1.default.getBinaryPath(types_1.BrowserName.CHROMIUM, platform, existingLocallyBrowserVersion);
26
27
  }
27
28
  const buildId = await (0, utils_2.getChromiumBuildId)(platform, milestone);
28
29
  const cacheDir = (0, utils_1.getBrowsersDir)();
29
- const canBeInstalled = await (0, browsers_1.canDownload)({ browser: utils_1.Browser.CHROMIUM, platform, buildId, cacheDir });
30
+ const canBeInstalled = await (0, browsers_1.canDownload)({ browser: types_1.BrowserName.CHROMIUM, platform, buildId, cacheDir });
30
31
  if (!canBeInstalled) {
31
32
  throw new Error([
32
33
  `chrome@${version} can't be installed.`,
@@ -40,10 +41,10 @@ const installChromium = async (version, { force = false } = {}) => {
40
41
  buildId,
41
42
  cacheDir,
42
43
  downloadProgressCallback,
43
- browser: utils_1.Browser.CHROMIUM,
44
+ browser: types_1.BrowserName.CHROMIUM,
44
45
  unpack: true,
45
46
  }).then(result => result.executablePath);
46
- return registry_1.default.installBinary(utils_1.Browser.CHROMIUM, platform, milestone, installFn);
47
+ return registry_1.default.installBinary(types_1.BrowserName.CHROMIUM, platform, milestone, installFn);
47
48
  };
48
49
  exports.installChromium = installChromium;
49
50
  //# sourceMappingURL=browser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../../src/browser-installer/chromium/browser.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA+E;AAC/E,2DAAmC;AACnC,oCAAuH;AACvH,mCAA6C;AAC7C,oCAA6C;AAC7C,4CAAoD;AAE7C,MAAM,eAAe,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE,KAAK,GAAG,KAAK,EAAE,GAAG,EAAE,EAAmB,EAAE;IAC9F,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,OAAO,CAAC,CAAC;IAExC,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,gCAAoB,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CACX;YACI,UAAU,OAAO,sBAAsB;YACvC,uEAAuE,gCAAoB,EAAE;SAChG,CAAC,IAAI,CAAC,IAAI,CAAC,CACf,CAAC;IACN,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,yBAAiB,EAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,6BAA6B,GAAG,kBAAQ,CAAC,wBAAwB,CAAC,eAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAE7G,IAAI,6BAA6B,IAAI,CAAC,KAAK,EAAE,CAAC;QAC1C,IAAA,6BAAqB,EAAC,gCAAgC,OAAO,+CAA+C,CAAC,CAAC;QAE9G,OAAO,kBAAQ,CAAC,aAAa,CAAC,eAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,6BAA6B,CAAC,CAAC;IAC7F,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,IAAA,0BAAkB,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,IAAA,sBAAc,GAAE,CAAC;IAClC,MAAM,cAAc,GAAG,MAAM,IAAA,sBAAW,EAAC,EAAE,OAAO,EAAE,eAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IAErG,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACX;YACI,UAAU,OAAO,sBAAsB;YACvC,yBAAyB,OAAO,2CAA2C;YAC3E,gCAAgC;SACnC,CAAC,IAAI,CAAC,IAAI,CAAC,CACf,CAAC;IACN,CAAC;IAED,IAAA,6BAAqB,EAAC,uBAAuB,OAAO,KAAK,SAAS,SAAS,QAAQ,EAAE,CAAC,CAAC;IAEvF,MAAM,SAAS,GAAG,CAAC,wBAAkD,EAAmB,EAAE,CACtF,IAAA,kBAAgB,EAAC;QACb,QAAQ;QACR,OAAO;QACP,QAAQ;QACR,wBAAwB;QACxB,OAAO,EAAE,eAAO,CAAC,QAAQ;QACzB,MAAM,EAAE,IAAI;KACf,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAE7C,OAAO,kBAAQ,CAAC,aAAa,CAAC,eAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AACpF,CAAC,CAAC;AAhDW,QAAA,eAAe,mBAgD1B"}
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../../src/browser-installer/chromium/browser.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA+E;AAC/E,2DAAmC;AACnC,oCAA8G;AAC9G,mCAA6C;AAC7C,oCAA6C;AAC7C,4CAAoD;AACpD,+CAAkD;AAE3C,MAAM,eAAe,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE,KAAK,GAAG,KAAK,EAAE,GAAG,EAAE,EAAmB,EAAE;IAC9F,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,OAAO,CAAC,CAAC;IAExC,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,gCAAoB,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CACX;YACI,UAAU,OAAO,sBAAsB;YACvC,uEAAuE,gCAAoB,EAAE;SAChG,CAAC,IAAI,CAAC,IAAI,CAAC,CACf,CAAC;IACN,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,yBAAiB,EAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,6BAA6B,GAAG,kBAAQ,CAAC,wBAAwB,CAAC,mBAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEjH,IAAI,6BAA6B,IAAI,CAAC,KAAK,EAAE,CAAC;QAC1C,IAAA,6BAAqB,EAAC,gCAAgC,OAAO,+CAA+C,CAAC,CAAC;QAE9G,OAAO,kBAAQ,CAAC,aAAa,CAAC,mBAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,6BAA6B,CAAC,CAAC;IACjG,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,IAAA,0BAAkB,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,IAAA,sBAAc,GAAE,CAAC;IAClC,MAAM,cAAc,GAAG,MAAM,IAAA,sBAAW,EAAC,EAAE,OAAO,EAAE,mBAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEzG,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACX;YACI,UAAU,OAAO,sBAAsB;YACvC,yBAAyB,OAAO,2CAA2C;YAC3E,gCAAgC;SACnC,CAAC,IAAI,CAAC,IAAI,CAAC,CACf,CAAC;IACN,CAAC;IAED,IAAA,6BAAqB,EAAC,uBAAuB,OAAO,KAAK,SAAS,SAAS,QAAQ,EAAE,CAAC,CAAC;IAEvF,MAAM,SAAS,GAAG,CAAC,wBAAkD,EAAmB,EAAE,CACtF,IAAA,kBAAgB,EAAC;QACb,QAAQ;QACR,OAAO;QACP,QAAQ;QACR,wBAAwB;QACxB,OAAO,EAAE,mBAAW,CAAC,QAAQ;QAC7B,MAAM,EAAE,IAAI;KACf,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAE7C,OAAO,kBAAQ,CAAC,aAAa,CAAC,mBAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AACxF,CAAC,CAAC;AAhDW,QAAA,eAAe,mBAgD1B"}
@@ -35,7 +35,7 @@ const installChromeDriverManually = async (milestone) => {
35
35
  fs_extra_1.default.remove(archivePath).then(lodash_1.noop, lodash_1.noop);
36
36
  return chromeDriverPath;
37
37
  };
38
- return registry_1.default.installBinary(utils_1.Driver.CHROMEDRIVER, platform, driverVersion, installFn);
38
+ return registry_1.default.installBinary(utils_1.DriverName.CHROMEDRIVER, platform, driverVersion, installFn);
39
39
  };
40
40
  exports.installChromeDriverManually = installChromeDriverManually;
41
41
  //# sourceMappingURL=driver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../../../src/browser-installer/chromium/driver.ts"],"names":[],"mappings":";;;;;;AAAA,wDAA0B;AAC1B,gDAAwB;AACxB,mCAA8B;AAC9B,4CAA8E;AAC9E,2DAAmC;AACnC,oCAQkB;AAClB,mCAAmF;AAEnF,MAAM,uCAAuC,GAAG,KAAK,EAAE,eAAgC,EAAmB,EAAE;IACxG,MAAM,MAAM,GAAG,OAAO,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAA,8BAAsB,EAAC,eAAe,CAAC,CAAC;IAE/G,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAU,EAAC,GAAG,oCAAwB,mBAAmB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAEhH,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAEK,MAAM,2BAA2B,GAAG,KAAK,EAAE,SAAiB,EAAmB,EAAE;IACpF,MAAM,QAAQ,GAAG,IAAA,0BAAkB,GAAE,CAAC;IAEtC,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,gCAAoB,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CACX;YACI,gBAAgB,SAAS,sBAAsB;YAC/C,sEAAsE,gCAAoB,EAAE;SAC/F,CAAC,IAAI,CAAC,IAAI,CAAC,CACf,CAAC;IACN,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,uCAAuC,CAAC,SAAS,CAAC,CAAC;IAE/E,MAAM,SAAS,GAAG,KAAK,IAAqB,EAAE;QAC1C,MAAM,UAAU,GAAG,IAAA,iCAAyB,EAAC,aAAa,CAAC,CAAC;QAC5D,MAAM,WAAW,GAAG,IAAA,qCAA6B,EAAC,aAAa,CAAC,CAAC;QACjE,MAAM,mBAAmB,GAAG,IAAA,4BAAoB,EAAC,aAAa,CAAC,CAAC;QAChE,MAAM,gBAAgB,GAAG,cAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC;QAExE,MAAM,IAAA,oBAAY,EAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QAC5C,MAAM,IAAA,iBAAS,EAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;QAElD,kBAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,aAAI,EAAE,aAAI,CAAC,CAAC;QAExC,OAAO,gBAAgB,CAAC;IAC5B,CAAC,CAAC;IAEF,OAAO,kBAAQ,CAAC,aAAa,CAAC,cAAM,CAAC,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;AAC3F,CAAC,CAAC;AA7BW,QAAA,2BAA2B,+BA6BtC"}
1
+ {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../../../src/browser-installer/chromium/driver.ts"],"names":[],"mappings":";;;;;;AAAA,wDAA0B;AAC1B,gDAAwB;AACxB,mCAA8B;AAC9B,4CAA8E;AAC9E,2DAAmC;AACnC,oCAQkB;AAClB,mCAAmF;AAEnF,MAAM,uCAAuC,GAAG,KAAK,EAAE,eAAgC,EAAmB,EAAE;IACxG,MAAM,MAAM,GAAG,OAAO,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAA,8BAAsB,EAAC,eAAe,CAAC,CAAC;IAE/G,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAU,EAAC,GAAG,oCAAwB,mBAAmB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAEhH,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAEK,MAAM,2BAA2B,GAAG,KAAK,EAAE,SAAiB,EAAmB,EAAE;IACpF,MAAM,QAAQ,GAAG,IAAA,0BAAkB,GAAE,CAAC;IAEtC,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,gCAAoB,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CACX;YACI,gBAAgB,SAAS,sBAAsB;YAC/C,sEAAsE,gCAAoB,EAAE;SAC/F,CAAC,IAAI,CAAC,IAAI,CAAC,CACf,CAAC;IACN,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,uCAAuC,CAAC,SAAS,CAAC,CAAC;IAE/E,MAAM,SAAS,GAAG,KAAK,IAAqB,EAAE;QAC1C,MAAM,UAAU,GAAG,IAAA,iCAAyB,EAAC,aAAa,CAAC,CAAC;QAC5D,MAAM,WAAW,GAAG,IAAA,qCAA6B,EAAC,aAAa,CAAC,CAAC;QACjE,MAAM,mBAAmB,GAAG,IAAA,4BAAoB,EAAC,aAAa,CAAC,CAAC;QAChE,MAAM,gBAAgB,GAAG,cAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC;QAExE,MAAM,IAAA,oBAAY,EAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QAC5C,MAAM,IAAA,iBAAS,EAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;QAElD,kBAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,aAAI,EAAE,aAAI,CAAC,CAAC;QAExC,OAAO,gBAAgB,CAAC;IAC5B,CAAC,CAAC;IAEF,OAAO,kBAAQ,CAAC,aAAa,CAAC,kBAAU,CAAC,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;AAC/F,CAAC,CAAC;AA7BW,QAAA,2BAA2B,+BA6BtC"}
@@ -1,5 +1,9 @@
1
1
  export declare const CHROMEDRIVER_STORAGE_API = "https://chromedriver.storage.googleapis.com";
2
+ export declare const CHROME_FOR_TESTING_MILESTONES_API_URL = "https://googlechromelabs.github.io/chrome-for-testing/latest-versions-per-milestone.json";
3
+ export declare const CHROME_FOR_TESTING_LATEST_STABLE_API_URL = "https://googlechromelabs.github.io/chrome-for-testing/LATEST_RELEASE_STABLE";
2
4
  export declare const GECKODRIVER_CARGO_TOML = "https://raw.githubusercontent.com/mozilla/geckodriver/release/Cargo.toml";
5
+ export declare const FIREFOX_VERSIONS_ALL_VERSIONS_API_URL = "https://product-details.mozilla.org/1.0/firefox.json";
6
+ export declare const FIREFOX_VERSIONS_LATEST_VERSIONS_API_URL = "https://product-details.mozilla.org/1.0/firefox_versions.json";
3
7
  export declare const MSEDGEDRIVER_API = "https://msedgedriver.azureedge.net";
4
8
  export declare const SAFARIDRIVER_PATH = "/usr/bin/safaridriver";
5
9
  export declare const MIN_CHROME_FOR_TESTING_VERSION = 113;
@@ -1,8 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MANDATORY_UBUNTU_PACKAGES_TO_BE_INSTALLED = exports.LINUX_RUNTIME_LIBRARIES_PATH_ENV_NAME = exports.LINUX_UBUNTU_RELEASE_ID = exports.DRIVER_WAIT_TIMEOUT = exports.MIN_EDGEDRIVER_VERSION = exports.MIN_FIREFOX_VERSION = exports.MIN_CHROMIUM_VERSION = exports.MIN_CHROMIUM_MAC_ARM_VERSION = exports.MIN_CHROMEDRIVER_MAC_ARM_NEW_ARCHIVE_NAME = exports.MIN_CHROMEDRIVER_FOR_TESTING_VERSION = exports.MIN_CHROME_FOR_TESTING_VERSION = exports.SAFARIDRIVER_PATH = exports.MSEDGEDRIVER_API = exports.GECKODRIVER_CARGO_TOML = exports.CHROMEDRIVER_STORAGE_API = void 0;
3
+ exports.MANDATORY_UBUNTU_PACKAGES_TO_BE_INSTALLED = exports.LINUX_RUNTIME_LIBRARIES_PATH_ENV_NAME = exports.LINUX_UBUNTU_RELEASE_ID = exports.DRIVER_WAIT_TIMEOUT = exports.MIN_EDGEDRIVER_VERSION = exports.MIN_FIREFOX_VERSION = exports.MIN_CHROMIUM_VERSION = exports.MIN_CHROMIUM_MAC_ARM_VERSION = exports.MIN_CHROMEDRIVER_MAC_ARM_NEW_ARCHIVE_NAME = exports.MIN_CHROMEDRIVER_FOR_TESTING_VERSION = exports.MIN_CHROME_FOR_TESTING_VERSION = exports.SAFARIDRIVER_PATH = exports.MSEDGEDRIVER_API = exports.FIREFOX_VERSIONS_LATEST_VERSIONS_API_URL = exports.FIREFOX_VERSIONS_ALL_VERSIONS_API_URL = exports.GECKODRIVER_CARGO_TOML = exports.CHROME_FOR_TESTING_LATEST_STABLE_API_URL = exports.CHROME_FOR_TESTING_MILESTONES_API_URL = exports.CHROMEDRIVER_STORAGE_API = void 0;
4
4
  exports.CHROMEDRIVER_STORAGE_API = "https://chromedriver.storage.googleapis.com";
5
+ const CHROME_FOR_TESTING_VERSIONS_API_URL = "https://googlechromelabs.github.io/chrome-for-testing";
6
+ exports.CHROME_FOR_TESTING_MILESTONES_API_URL = `${CHROME_FOR_TESTING_VERSIONS_API_URL}/latest-versions-per-milestone.json`;
7
+ exports.CHROME_FOR_TESTING_LATEST_STABLE_API_URL = `${CHROME_FOR_TESTING_VERSIONS_API_URL}/LATEST_RELEASE_STABLE`;
5
8
  exports.GECKODRIVER_CARGO_TOML = "https://raw.githubusercontent.com/mozilla/geckodriver/release/Cargo.toml";
9
+ const FIREFOX_VERSIONS_VERSIONS_API_URL = "https://product-details.mozilla.org/1.0";
10
+ exports.FIREFOX_VERSIONS_ALL_VERSIONS_API_URL = `${FIREFOX_VERSIONS_VERSIONS_API_URL}/firefox.json`;
11
+ exports.FIREFOX_VERSIONS_LATEST_VERSIONS_API_URL = `${FIREFOX_VERSIONS_VERSIONS_API_URL}/firefox_versions.json`;
6
12
  exports.MSEDGEDRIVER_API = "https://msedgedriver.azureedge.net";
7
13
  exports.SAFARIDRIVER_PATH = "/usr/bin/safaridriver";
8
14
  exports.MIN_CHROME_FOR_TESTING_VERSION = 113;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/browser-installer/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,wBAAwB,GAAG,6CAA6C,CAAC;AACzE,QAAA,sBAAsB,GAAG,0EAA0E,CAAC;AACpG,QAAA,gBAAgB,GAAG,oCAAoC,CAAC;AACxD,QAAA,iBAAiB,GAAG,uBAAuB,CAAC;AAC5C,QAAA,8BAA8B,GAAG,GAAG,CAAC;AACrC,QAAA,oCAAoC,GAAG,GAAG,CAAC;AAC3C,QAAA,yCAAyC,GAAG,GAAG,CAAC;AAChD,QAAA,4BAA4B,GAAG,EAAE,CAAC;AAClC,QAAA,oBAAoB,GAAG,EAAE,CAAC;AAC1B,QAAA,mBAAmB,GAAG,EAAE,CAAC;AACzB,QAAA,sBAAsB,GAAG,EAAE,CAAC;AAC5B,QAAA,mBAAmB,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,MAAM;AACvC,QAAA,uBAAuB,GAAG,QAAQ,CAAC;AACnC,QAAA,qCAAqC,GAAG,iBAAiB,CAAC;AAC1D,QAAA,yCAAyC,GAAG,CAAC,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/browser-installer/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,wBAAwB,GAAG,6CAA6C,CAAC;AAEtF,MAAM,mCAAmC,GAAG,uDAAuD,CAAC;AACvF,QAAA,qCAAqC,GAAG,GAAG,mCAAmC,qCAAqC,CAAC;AACpH,QAAA,wCAAwC,GAAG,GAAG,mCAAmC,wBAAwB,CAAC;AAE1G,QAAA,sBAAsB,GAAG,0EAA0E,CAAC;AAEjH,MAAM,iCAAiC,GAAG,yCAAyC,CAAC;AACvE,QAAA,qCAAqC,GAAG,GAAG,iCAAiC,eAAe,CAAC;AAC5F,QAAA,wCAAwC,GAAG,GAAG,iCAAiC,wBAAwB,CAAC;AAExG,QAAA,gBAAgB,GAAG,oCAAoC,CAAC;AAExD,QAAA,iBAAiB,GAAG,uBAAuB,CAAC;AAC5C,QAAA,8BAA8B,GAAG,GAAG,CAAC;AACrC,QAAA,oCAAoC,GAAG,GAAG,CAAC;AAC3C,QAAA,yCAAyC,GAAG,GAAG,CAAC;AAChD,QAAA,4BAA4B,GAAG,EAAE,CAAC;AAClC,QAAA,oBAAoB,GAAG,EAAE,CAAC;AAC1B,QAAA,mBAAmB,GAAG,EAAE,CAAC;AACzB,QAAA,sBAAsB,GAAG,EAAE,CAAC;AAC5B,QAAA,mBAAmB,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,MAAM;AACvC,QAAA,uBAAuB,GAAG,QAAQ,CAAC;AACnC,QAAA,qCAAqC,GAAG,iBAAiB,CAAC;AAC1D,QAAA,yCAAyC,GAAG,CAAC,YAAY,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export declare const resolveEdgeVersion: () => Promise<string>;
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.resolveEdgeVersion = void 0;
7
+ const lodash_1 = __importDefault(require("lodash"));
8
+ const child_process_1 = require("child_process");
9
+ const browsers_1 = require("@puppeteer/browsers");
10
+ const utils_1 = require("../utils");
11
+ const extractBrowserVersion = (cmd) => new Promise((resolve, reject) => {
12
+ (0, child_process_1.exec)(cmd, (err, stdout) => {
13
+ if (err) {
14
+ const errorMessage = "Couldn't retrive edge version. Looks like its not installed";
15
+ reject(new Error(errorMessage));
16
+ return;
17
+ }
18
+ const edgeVersionRegExp = /\d+\.\d+\.\d+\.\d+/;
19
+ const version = edgeVersionRegExp.exec(stdout);
20
+ if (version && version[0]) {
21
+ resolve(version[0]);
22
+ }
23
+ else {
24
+ const errorMessage = `Couldn't retrive edge version. Expected browser version, but got "${stdout}"`;
25
+ reject(new Error(errorMessage));
26
+ }
27
+ });
28
+ });
29
+ const resolveLinuxEdgeVersion = () => {
30
+ const getMsEdgeStableVersion = "which microsoft-edge-stable > /dev/null && microsoft-edge-stable --version";
31
+ const getMsEdgeVersion = "which microsoft-edge > /dev/null && microsoft-edge --version";
32
+ return extractBrowserVersion(`${getMsEdgeStableVersion} || ${getMsEdgeVersion}`);
33
+ };
34
+ const resolveWindowsEdgeVersion = () => {
35
+ const getMsEdgeVersion = 'reg query "HKEY_CURRENT_USER\\Software\\Microsoft\\Edge\\BLBeacon" /v version';
36
+ return extractBrowserVersion(getMsEdgeVersion);
37
+ };
38
+ const resolveMacEdgeVersion = () => {
39
+ const getMsEdgeVersion = "/Applications/Microsoft\\ Edge.app/Contents/MacOS/Microsoft\\ Edge --version";
40
+ return extractBrowserVersion(getMsEdgeVersion);
41
+ };
42
+ exports.resolveEdgeVersion = lodash_1.default.once(async () => {
43
+ const platform = (0, utils_1.getBrowserPlatform)();
44
+ switch (platform) {
45
+ case browsers_1.BrowserPlatform.LINUX:
46
+ return resolveLinuxEdgeVersion();
47
+ case browsers_1.BrowserPlatform.WIN32:
48
+ case browsers_1.BrowserPlatform.WIN64:
49
+ return resolveWindowsEdgeVersion();
50
+ case browsers_1.BrowserPlatform.MAC:
51
+ case browsers_1.BrowserPlatform.MAC_ARM:
52
+ return resolveMacEdgeVersion();
53
+ default:
54
+ throw new Error(`Unsupported platform: "${platform}"`);
55
+ }
56
+ });
57
+ //# sourceMappingURL=browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../../src/browser-installer/edge/browser.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAuB;AACvB,iDAAqC;AACrC,kDAAsD;AACtD,oCAA8C;AAE9C,MAAM,qBAAqB,GAAG,CAAC,GAAW,EAAmB,EAAE,CAC3D,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IACpC,IAAA,oBAAI,EAAC,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;QACtB,IAAI,GAAG,EAAE,CAAC;YACN,MAAM,YAAY,GAAG,6DAA6D,CAAC;YAEnF,MAAM,CAAC,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;YAEhC,OAAO;QACX,CAAC;QAED,MAAM,iBAAiB,GAAG,oBAAoB,CAAC;QAC/C,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE/C,IAAI,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;aAAM,CAAC;YACJ,MAAM,YAAY,GAAG,qEAAqE,MAAM,GAAG,CAAC;YAEpG,MAAM,CAAC,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;QACpC,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEP,MAAM,uBAAuB,GAAG,GAAoB,EAAE;IAClD,MAAM,sBAAsB,GAAG,4EAA4E,CAAC;IAC5G,MAAM,gBAAgB,GAAG,8DAA8D,CAAC;IAExF,OAAO,qBAAqB,CAAC,GAAG,sBAAsB,OAAO,gBAAgB,EAAE,CAAC,CAAC;AACrF,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,GAAoB,EAAE;IACpD,MAAM,gBAAgB,GAAG,+EAA+E,CAAC;IAEzG,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,GAAoB,EAAE;IAChD,MAAM,gBAAgB,GAAG,8EAA8E,CAAC;IAExG,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;AACnD,CAAC,CAAC;AAEW,QAAA,kBAAkB,GAAG,gBAAC,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;IAChD,MAAM,QAAQ,GAAG,IAAA,0BAAkB,GAAE,CAAC;IAEtC,QAAQ,QAAQ,EAAE,CAAC;QACf,KAAK,0BAAe,CAAC,KAAK;YACtB,OAAO,uBAAuB,EAAE,CAAC;QAErC,KAAK,0BAAe,CAAC,KAAK,CAAC;QAC3B,KAAK,0BAAe,CAAC,KAAK;YACtB,OAAO,yBAAyB,EAAE,CAAC;QAEvC,KAAK,0BAAe,CAAC,GAAG,CAAC;QACzB,KAAK,0BAAe,CAAC,OAAO;YACxB,OAAO,qBAAqB,EAAE,CAAC;QAEnC;YACI,MAAM,IAAI,KAAK,CAAC,0BAA0B,QAAQ,GAAG,CAAC,CAAC;IAC/D,CAAC;AACL,CAAC,CAAC,CAAC"}