chrome-headless-shell.js 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  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.compareVersions = exports.resolveBuildId = exports.relativeExecutablePath = exports.resolveDownloadPath = exports.resolveDownloadUrl = void 0;
  7. /**
  8. * @license
  9. * Copyright 2023 Google Inc.
  10. * SPDX-License-Identifier: Apache-2.0
  11. */
  12. const path_1 = __importDefault(require("path"));
  13. const types_js_1 = require("./types.js");
  14. function folder(platform) {
  15. switch (platform) {
  16. case types_js_1.BrowserPlatform.LINUX:
  17. return 'linux64';
  18. case types_js_1.BrowserPlatform.MAC_ARM:
  19. return 'mac-arm64';
  20. case types_js_1.BrowserPlatform.MAC:
  21. return 'mac-x64';
  22. case types_js_1.BrowserPlatform.WIN32:
  23. return 'win32';
  24. case types_js_1.BrowserPlatform.WIN64:
  25. return 'win64';
  26. }
  27. }
  28. function resolveDownloadUrl(platform, buildId, baseUrl = 'https://storage.googleapis.com/chrome-for-testing-public') {
  29. return `${baseUrl}/${resolveDownloadPath(platform, buildId).join('/')}`;
  30. }
  31. exports.resolveDownloadUrl = resolveDownloadUrl;
  32. function resolveDownloadPath(platform, buildId) {
  33. return [
  34. buildId,
  35. folder(platform),
  36. `chrome-headless-shell-${folder(platform)}.zip`,
  37. ];
  38. }
  39. exports.resolveDownloadPath = resolveDownloadPath;
  40. function relativeExecutablePath(platform, _buildId) {
  41. switch (platform) {
  42. case types_js_1.BrowserPlatform.MAC:
  43. case types_js_1.BrowserPlatform.MAC_ARM:
  44. return path_1.default.join('chrome-headless-shell-' + folder(platform), 'chrome-headless-shell');
  45. case types_js_1.BrowserPlatform.LINUX:
  46. return path_1.default.join('chrome-headless-shell-linux64', 'chrome-headless-shell');
  47. case types_js_1.BrowserPlatform.WIN32:
  48. case types_js_1.BrowserPlatform.WIN64:
  49. return path_1.default.join('chrome-headless-shell-' + folder(platform), 'chrome-headless-shell.exe');
  50. }
  51. }
  52. exports.relativeExecutablePath = relativeExecutablePath;
  53. var chrome_js_1 = require("./chrome.js");
  54. Object.defineProperty(exports, "resolveBuildId", { enumerable: true, get: function () { return chrome_js_1.resolveBuildId; } });
  55. Object.defineProperty(exports, "compareVersions", { enumerable: true, get: function () { return chrome_js_1.compareVersions; } });
  56. //# sourceMappingURL=chrome-headless-shell.js.map