@crawlee/browser-pool 3.13.6-beta.0 → 4.0.0-beta.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 (72) hide show
  1. package/abstract-classes/browser-controller.d.ts +4 -4
  2. package/abstract-classes/browser-controller.d.ts.map +1 -1
  3. package/abstract-classes/browser-controller.js +43 -117
  4. package/abstract-classes/browser-controller.js.map +1 -1
  5. package/abstract-classes/browser-plugin.d.ts +5 -16
  6. package/abstract-classes/browser-plugin.d.ts.map +1 -1
  7. package/abstract-classes/browser-plugin.js +19 -71
  8. package/abstract-classes/browser-plugin.js.map +1 -1
  9. package/anonymize-proxy.js +4 -8
  10. package/anonymize-proxy.js.map +1 -1
  11. package/browser-pool.d.ts +6 -6
  12. package/browser-pool.d.ts.map +1 -1
  13. package/browser-pool.js +77 -209
  14. package/browser-pool.js.map +1 -1
  15. package/container-proxy-server.js +3 -6
  16. package/container-proxy-server.js.map +1 -1
  17. package/events.js +4 -7
  18. package/events.js.map +1 -1
  19. package/fingerprinting/hooks.d.ts +3 -3
  20. package/fingerprinting/hooks.d.ts.map +1 -1
  21. package/fingerprinting/hooks.js +13 -18
  22. package/fingerprinting/hooks.js.map +1 -1
  23. package/fingerprinting/types.js +6 -9
  24. package/fingerprinting/types.js.map +1 -1
  25. package/fingerprinting/utils.d.ts +2 -2
  26. package/fingerprinting/utils.d.ts.map +1 -1
  27. package/fingerprinting/utils.js +9 -13
  28. package/fingerprinting/utils.js.map +1 -1
  29. package/index.d.ts +13 -13
  30. package/index.d.ts.map +1 -1
  31. package/index.js +11 -26
  32. package/index.js.map +1 -1
  33. package/launch-context.d.ts +2 -9
  34. package/launch-context.d.ts.map +1 -1
  35. package/launch-context.js +12 -73
  36. package/launch-context.js.map +1 -1
  37. package/logger.js +2 -6
  38. package/logger.js.map +1 -1
  39. package/package.json +19 -25
  40. package/playwright/playwright-browser.js +6 -30
  41. package/playwright/playwright-browser.js.map +1 -1
  42. package/playwright/playwright-controller.d.ts +2 -2
  43. package/playwright/playwright-controller.d.ts.map +1 -1
  44. package/playwright/playwright-controller.js +9 -75
  45. package/playwright/playwright-controller.js.map +1 -1
  46. package/playwright/playwright-plugin.d.ts +6 -6
  47. package/playwright/playwright-plugin.d.ts.map +1 -1
  48. package/playwright/playwright-plugin.js +19 -106
  49. package/playwright/playwright-plugin.js.map +1 -1
  50. package/proxy-server.js +3 -6
  51. package/proxy-server.js.map +1 -1
  52. package/puppeteer/puppeteer-controller.d.ts +1 -1
  53. package/puppeteer/puppeteer-controller.d.ts.map +1 -1
  54. package/puppeteer/puppeteer-controller.js +13 -17
  55. package/puppeteer/puppeteer-controller.js.map +1 -1
  56. package/puppeteer/puppeteer-plugin.d.ts +5 -5
  57. package/puppeteer/puppeteer-plugin.d.ts.map +1 -1
  58. package/puppeteer/puppeteer-plugin.js +16 -23
  59. package/puppeteer/puppeteer-plugin.js.map +1 -1
  60. package/tsconfig.build.tsbuildinfo +1 -1
  61. package/utils.d.ts +3 -3
  62. package/utils.d.ts.map +1 -1
  63. package/utils.js +1 -4
  64. package/utils.js.map +1 -1
  65. package/index.mjs +0 -19
  66. package/playwright/load-firefox-addon.d.ts +0 -2
  67. package/playwright/load-firefox-addon.d.ts.map +0 -1
  68. package/playwright/load-firefox-addon.js +0 -86
  69. package/playwright/load-firefox-addon.js.map +0 -1
  70. package/tab-as-a-container/background.js +0 -433
  71. package/tab-as-a-container/content.js +0 -611
  72. package/tab-as-a-container/manifest.json +0 -21
@@ -1,12 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PlaywrightController = void 0;
4
- const timeout_1 = require("@apify/timeout");
5
- const browser_controller_1 = require("../abstract-classes/browser-controller");
6
- const anonymize_proxy_1 = require("../anonymize-proxy");
7
- const tabIds = new WeakMap();
8
- const keyFromTabId = (tabId) => `.${tabId}.`;
9
- class PlaywrightController extends browser_controller_1.BrowserController {
1
+ import { tryCancel } from '@apify/timeout';
2
+ import { BrowserController } from '../abstract-classes/browser-controller.js';
3
+ import { anonymizeProxySugar } from '../anonymize-proxy.js';
4
+ export class PlaywrightController extends BrowserController {
10
5
  normalizeProxyOptions(proxyUrl, pageOptions) {
11
6
  if (!proxyUrl) {
12
7
  return {};
@@ -24,14 +19,12 @@ class PlaywrightController extends browser_controller_1.BrowserController {
24
19
  };
25
20
  }
26
21
  async _newPage(contextOptions) {
27
- if (contextOptions !== undefined &&
28
- !this.launchContext.useIncognitoPages &&
29
- !this.launchContext.experimentalContainers) {
30
- throw new Error('A new page can be created with provided context only when using incognito pages or experimental containers.');
22
+ if (contextOptions !== undefined && !this.launchContext.useIncognitoPages) {
23
+ throw new Error('A new page can be created with provided context only when using incognito pages.');
31
24
  }
32
25
  let close = async () => { };
33
26
  if (this.launchContext.useIncognitoPages && contextOptions?.proxy) {
34
- const [anonymizedProxyUrl, closeProxy] = await (0, anonymize_proxy_1.anonymizeProxySugar)(contextOptions.proxy.server, contextOptions.proxy.username, contextOptions.proxy.password);
27
+ const [anonymizedProxyUrl, closeProxy] = await anonymizeProxySugar(contextOptions.proxy.server, contextOptions.proxy.username, contextOptions.proxy.password);
35
28
  if (anonymizedProxyUrl) {
36
29
  contextOptions.proxy = {
37
30
  server: anonymizedProxyUrl,
@@ -46,40 +39,7 @@ class PlaywrightController extends browser_controller_1.BrowserController {
46
39
  this.activePages--;
47
40
  await close();
48
41
  });
49
- if (this.launchContext.experimentalContainers) {
50
- await page.goto('data:text/plain,tabid');
51
- await page.waitForNavigation();
52
- const { tabid, proxyip } = JSON.parse(decodeURIComponent(page.url().slice('about:blank#'.length)));
53
- if (contextOptions?.proxy) {
54
- const url = new URL(contextOptions.proxy.server);
55
- url.username = contextOptions.proxy.username ?? '';
56
- url.password = contextOptions.proxy.password ?? '';
57
- this.browserPlugin._containerProxyServer.ipToProxy.set(proxyip, url.href);
58
- }
59
- if (this.browserPlugin.library.name() === 'firefox') {
60
- // Playwright does not support creating new CDP sessions with Firefox
61
- }
62
- else {
63
- const session = await page.context().newCDPSession(page);
64
- await session.send('Network.enable');
65
- session.on('Network.responseReceived', (responseReceived) => {
66
- const logOnly = ['Document', 'XHR', 'Fetch', 'EventSource', 'WebSocket', 'Other'];
67
- if (!logOnly.includes(responseReceived.type)) {
68
- return;
69
- }
70
- const { response } = responseReceived;
71
- if (response.fromDiskCache || response.fromPrefetchCache || response.fromServiceWorker) {
72
- return;
73
- }
74
- const { remoteIPAddress } = response;
75
- if (remoteIPAddress && remoteIPAddress !== proxyip) {
76
- console.warn(`Request to ${response.url} was through ${remoteIPAddress} instead of ${proxyip}`);
77
- }
78
- });
79
- }
80
- tabIds.set(page, tabid);
81
- }
82
- (0, timeout_1.tryCancel)();
42
+ tryCancel();
83
43
  return page;
84
44
  }
85
45
  catch (error) {
@@ -96,37 +56,11 @@ class PlaywrightController extends browser_controller_1.BrowserController {
96
56
  }
97
57
  async _getCookies(page) {
98
58
  const context = page.context();
99
- const cookies = await context.cookies();
100
- if (this.launchContext.experimentalContainers) {
101
- const tabId = tabIds.get(page);
102
- if (tabId === undefined) {
103
- throw new Error('Failed to find tabId for page');
104
- }
105
- const key = keyFromTabId(tabId);
106
- return cookies
107
- .filter((cookie) => cookie.name.startsWith(key))
108
- .map((cookie) => ({
109
- ...cookie,
110
- name: cookie.name.slice(key.length),
111
- }));
112
- }
113
- return cookies;
59
+ return context.cookies();
114
60
  }
115
61
  async _setCookies(page, cookies) {
116
62
  const context = page.context();
117
- if (this.launchContext.experimentalContainers) {
118
- const tabId = tabIds.get(page);
119
- if (tabId === undefined) {
120
- throw new Error('Failed to find tabId for page');
121
- }
122
- const key = keyFromTabId(tabId);
123
- cookies = cookies.map((cookie) => ({
124
- ...cookie,
125
- name: `${key}${cookie.name}`,
126
- }));
127
- }
128
63
  return context.addCookies(cookies);
129
64
  }
130
65
  }
131
- exports.PlaywrightController = PlaywrightController;
132
66
  //# sourceMappingURL=playwright-controller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"playwright-controller.js","sourceRoot":"","sources":["../../src/playwright/playwright-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"playwright-controller.js","sourceRoot":"","sources":["../../src/playwright/playwright-controller.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAG5D,MAAM,OAAO,oBAAqB,SAAQ,iBAIzC;IACG,qBAAqB,CAAC,QAA4B,EAAE,WAAgB;QAChE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;QACd,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC9B,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAElD,OAAO;YACH,KAAK,EAAE;gBACH,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,QAAQ;gBACR,QAAQ;gBACR,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM;aACrC;SACJ,CAAC;IACN,CAAC;IAES,KAAK,CAAC,QAAQ,CAAC,cAAsD;QAC3E,IAAI,cAAc,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC;YACxE,MAAM,IAAI,KAAK,CAAC,kFAAkF,CAAC,CAAC;QACxG,CAAC;QAED,IAAI,KAAK,GAAG,KAAK,IAAI,EAAE,GAAE,CAAC,CAAC;QAE3B,IAAI,IAAI,CAAC,aAAa,CAAC,iBAAiB,IAAI,cAAc,EAAE,KAAK,EAAE,CAAC;YAChE,MAAM,CAAC,kBAAkB,EAAE,UAAU,CAAC,GAAG,MAAM,mBAAmB,CAC9D,cAAc,CAAC,KAAK,CAAC,MAAM,EAC3B,cAAc,CAAC,KAAK,CAAC,QAAQ,EAC7B,cAAc,CAAC,KAAK,CAAC,QAAQ,CAChC,CAAC;YAEF,IAAI,kBAAkB,EAAE,CAAC;gBACrB,cAAc,CAAC,KAAK,GAAG;oBACnB,MAAM,EAAE,kBAAkB;oBAC1B,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC,MAAM;iBACtC,CAAC;YACN,CAAC;YAED,KAAK,GAAG,UAAU,CAAC;QACvB,CAAC;QAED,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YAExD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;gBAC1B,IAAI,CAAC,WAAW,EAAE,CAAC;gBAEnB,MAAM,KAAK,EAAE,CAAC;YAClB,CAAC,CAAC,CAAC;YAEH,SAAS,EAAE,CAAC;YAEZ,OAAO,IAAI,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,KAAK,EAAE,CAAC;YAEd,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;IAES,KAAK,CAAC,MAAM;QAClB,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IAC/B,CAAC;IAES,KAAK,CAAC,KAAK;QACjB,wDAAwD;QACxD,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,uFAAuF;IACvH,CAAC;IAES,KAAK,CAAC,WAAW,CAAC,IAAU;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC/B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAES,KAAK,CAAC,WAAW,CAAC,IAAU,EAAE,OAAiB;QACrD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC/B,OAAO,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;CACJ"}
@@ -1,16 +1,16 @@
1
1
  // @ts-ignore optional peer dependency or compatibility with es2022
2
2
  import type { Browser as PlaywrightBrowser, BrowserType } from 'playwright';
3
- import type { BrowserController } from '../abstract-classes/browser-controller';
4
- import { BrowserPlugin } from '../abstract-classes/browser-plugin';
5
- import { createProxyServerForContainers } from '../container-proxy-server';
6
- import type { LaunchContext } from '../launch-context';
7
- import type { SafeParameters } from '../utils';
3
+ import { BrowserPlugin } from '../abstract-classes/browser-plugin.js';
4
+ import type { createProxyServerForContainers } from '../container-proxy-server.js';
5
+ import type { LaunchContext } from '../launch-context.js';
6
+ import type { SafeParameters } from '../utils.js';
7
+ import { PlaywrightController } from './playwright-controller.js';
8
8
  export declare class PlaywrightPlugin extends BrowserPlugin<BrowserType, SafeParameters<BrowserType['launch']>[0], PlaywrightBrowser> {
9
9
  private _browserVersion?;
10
10
  _containerProxyServer?: Awaited<ReturnType<typeof createProxyServerForContainers>>;
11
11
  protected _launch(launchContext: LaunchContext<BrowserType>): Promise<PlaywrightBrowser>;
12
12
  private _throwOnFailedLaunch;
13
- protected _createController(): BrowserController<BrowserType, SafeParameters<BrowserType['launch']>[0], PlaywrightBrowser>;
13
+ createController(): PlaywrightController;
14
14
  protected _addProxyToLaunchOptions(launchContext: LaunchContext<BrowserType>): Promise<void>;
15
15
  protected _isChromiumBasedBrowser(): boolean;
16
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"playwright-plugin.d.ts","sourceRoot":"","sources":["../../src/playwright/playwright-plugin.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,IAAI,iBAAiB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAEnE,OAAO,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAqB/C,qBAAa,gBAAiB,SAAQ,aAAa,CAC/C,WAAW,EACX,cAAc,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EACxC,iBAAiB,CACpB;IACG,OAAO,CAAC,eAAe,CAAC,CAAS;IACjC,qBAAqB,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC,CAAC;cAEnE,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAqJ9F,OAAO,CAAC,oBAAoB;IAS5B,SAAS,CAAC,iBAAiB,IAAI,iBAAiB,CAC5C,WAAW,EACX,cAAc,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EACxC,iBAAiB,CACpB;cAIe,wBAAwB,CAAC,aAAa,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBlG,SAAS,CAAC,uBAAuB,IAAI,OAAO;CAI/C"}
1
+ {"version":3,"file":"playwright-plugin.d.ts","sourceRoot":"","sources":["../../src/playwright/playwright-plugin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,IAAI,iBAAiB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE5E,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAEtE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AACnF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAElE,qBAAa,gBAAiB,SAAQ,aAAa,CAC/C,WAAW,EACX,cAAc,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EACxC,iBAAiB,CACpB;IACG,OAAO,CAAC,eAAe,CAAC,CAAS;IACjC,qBAAqB,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC,CAAC;cAEnE,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAgF9F,OAAO,CAAC,oBAAoB;IASnB,gBAAgB,IAAI,oBAAoB;cAIjC,wBAAwB,CAAC,aAAa,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBlG,SAAS,CAAC,uBAAuB,IAAI,OAAO;CAI/C"}
@@ -1,63 +1,26 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PlaywrightPlugin = void 0;
4
- const tslib_1 = require("tslib");
5
- const node_fs_1 = tslib_1.__importDefault(require("node:fs"));
6
- const node_net_1 = tslib_1.__importDefault(require("node:net"));
7
- const node_os_1 = tslib_1.__importDefault(require("node:os"));
8
- const node_path_1 = tslib_1.__importDefault(require("node:path"));
9
- const browser_plugin_1 = require("../abstract-classes/browser-plugin");
10
- const anonymize_proxy_1 = require("../anonymize-proxy");
11
- const container_proxy_server_1 = require("../container-proxy-server");
12
- const logger_1 = require("../logger");
13
- const proxy_server_1 = require("../proxy-server");
14
- const load_firefox_addon_1 = require("./load-firefox-addon");
15
- const playwright_browser_1 = require("./playwright-browser");
16
- const playwright_controller_1 = require("./playwright-controller");
17
- const getFreePort = async () => {
18
- return new Promise((resolve, reject) => {
19
- const server = node_net_1.default
20
- .createServer()
21
- .once('error', reject)
22
- .listen(() => {
23
- resolve(server.address().port);
24
- server.close();
25
- });
26
- });
27
- };
28
- // __dirname = browser-pool/dist/playwright
29
- // taacPath = browser-pool/dist/tab-as-a-container
30
- const taacPath = node_path_1.default.join(__dirname, '..', 'tab-as-a-container');
31
- class PlaywrightPlugin extends browser_plugin_1.BrowserPlugin {
32
- constructor() {
33
- super(...arguments);
34
- Object.defineProperty(this, "_browserVersion", {
35
- enumerable: true,
36
- configurable: true,
37
- writable: true,
38
- value: void 0
39
- });
40
- Object.defineProperty(this, "_containerProxyServer", {
41
- enumerable: true,
42
- configurable: true,
43
- writable: true,
44
- value: void 0
45
- });
46
- }
1
+ import fs from 'node:fs';
2
+ import { BrowserPlugin } from '../abstract-classes/browser-plugin.js';
3
+ import { anonymizeProxySugar } from '../anonymize-proxy.js';
4
+ import { log } from '../logger.js';
5
+ import { getLocalProxyAddress } from '../proxy-server.js';
6
+ import { PlaywrightBrowser as PlaywrightBrowserWithPersistentContext } from './playwright-browser.js';
7
+ import { PlaywrightController } from './playwright-controller.js';
8
+ export class PlaywrightPlugin extends BrowserPlugin {
9
+ _browserVersion;
10
+ _containerProxyServer;
47
11
  async _launch(launchContext) {
48
- const { launchOptions, useIncognitoPages, proxyUrl } = launchContext;
49
- let { userDataDir } = launchContext;
12
+ const { launchOptions, useIncognitoPages, userDataDir, proxyUrl } = launchContext;
50
13
  let browser;
51
14
  // Required for the `proxy` context option to work.
52
15
  launchOptions.proxy = {
53
- server: await (0, proxy_server_1.getLocalProxyAddress)(),
16
+ server: await getLocalProxyAddress(),
54
17
  ...launchOptions.proxy,
55
18
  };
56
19
  // WebKit does not support --no-sandbox
57
20
  if (this.library.name() === 'webkit') {
58
21
  launchOptions.args = launchOptions.args?.filter((arg) => arg !== '--no-sandbox');
59
22
  }
60
- const [anonymizedProxyUrl, close] = await (0, anonymize_proxy_1.anonymizeProxySugar)(proxyUrl);
23
+ const [anonymizedProxyUrl, close] = await anonymizeProxySugar(proxyUrl);
61
24
  if (anonymizedProxyUrl) {
62
25
  launchOptions.proxy = {
63
26
  server: anonymizedProxyUrl,
@@ -76,33 +39,6 @@ class PlaywrightPlugin extends browser_plugin_1.BrowserPlugin {
76
39
  }
77
40
  }
78
41
  else {
79
- const experimentalContainers = launchContext.experimentalContainers && this.library.name() !== 'webkit';
80
- let firefoxPort;
81
- if (experimentalContainers) {
82
- launchOptions.args = [...(launchOptions.args ?? [])];
83
- // Use native headless mode so we can load an extension
84
- if (launchOptions.headless && this.library.name() === 'chromium') {
85
- launchOptions.args.push('--headless=chrome');
86
- }
87
- if (this.library.name() === 'chromium') {
88
- launchOptions.args.push(`--disable-extensions-except=${taacPath}`, `--load-extension=${taacPath}`);
89
- }
90
- else if (this.library.name() === 'firefox') {
91
- firefoxPort = await getFreePort();
92
- launchOptions.args.push(`--start-debugger-server=${firefoxPort}`);
93
- const prefs = {
94
- 'devtools.debugger.remote-enabled': true,
95
- 'devtools.debugger.prompt-connection': false,
96
- };
97
- const prefsRaw = Object.entries(prefs)
98
- .map(([name, value]) => `user_pref(${JSON.stringify(name)}, ${JSON.stringify(value)});`)
99
- .join('\n');
100
- if (userDataDir === '') {
101
- userDataDir = node_fs_1.default.mkdtempSync(node_path_1.default.join(node_os_1.default.tmpdir(), 'apify-playwright-firefox-taac-'));
102
- }
103
- node_fs_1.default.writeFileSync(node_path_1.default.join(userDataDir, 'user.js'), prefsRaw);
104
- }
105
- }
106
42
  const browserContext = await this.library
107
43
  .launchPersistentContext(userDataDir, launchOptions)
108
44
  .catch((error) => {
@@ -110,34 +46,12 @@ class PlaywrightPlugin extends browser_plugin_1.BrowserPlugin {
110
46
  });
111
47
  browserContext.once('close', () => {
112
48
  if (userDataDir.includes('apify-playwright-firefox-taac-')) {
113
- node_fs_1.default.rmSync(userDataDir, {
49
+ fs.rmSync(userDataDir, {
114
50
  recursive: true,
115
51
  force: true,
116
52
  });
117
53
  }
118
54
  });
119
- if (experimentalContainers) {
120
- if (this.library.name() === 'firefox') {
121
- const loaded = await (0, load_firefox_addon_1.loadFirefoxAddon)(firefoxPort, '127.0.0.1', taacPath);
122
- if (!loaded) {
123
- await browserContext.close();
124
- throw new Error('Failed to load Firefox experimental containers addon');
125
- }
126
- }
127
- // Wait for the extension to load.
128
- const checker = await browserContext.newPage();
129
- await checker.goto('data:text/plain,tabid');
130
- await checker.waitForNavigation();
131
- await checker.close();
132
- this._containerProxyServer = await (0, container_proxy_server_1.createProxyServerForContainers)();
133
- const page = await browserContext.newPage();
134
- await page.goto(`data:text/plain,proxy#{"port":${this._containerProxyServer.port}}`);
135
- await page.waitForNavigation();
136
- await page.close();
137
- browserContext.on('close', async () => {
138
- await this._containerProxyServer.close(true);
139
- });
140
- }
141
55
  if (anonymizedProxyUrl) {
142
56
  browserContext.on('close', async () => {
143
57
  await close();
@@ -148,10 +62,10 @@ class PlaywrightPlugin extends browser_plugin_1.BrowserPlugin {
148
62
  const inactiveBrowser = await this.library.launch(launchOptions);
149
63
  this._browserVersion = inactiveBrowser.version();
150
64
  inactiveBrowser.close().catch((error) => {
151
- logger_1.log.exception(error, 'Failed to close browser.');
65
+ log.exception(error, 'Failed to close browser.');
152
66
  });
153
67
  }
154
- browser = new playwright_browser_1.PlaywrightBrowser({
68
+ browser = new PlaywrightBrowserWithPersistentContext({
155
69
  browserContext,
156
70
  version: this._browserVersion,
157
71
  });
@@ -166,11 +80,11 @@ class PlaywrightPlugin extends browser_plugin_1.BrowserPlugin {
166
80
  _throwOnFailedLaunch(launchContext, cause) {
167
81
  this._throwAugmentedLaunchError(cause, launchContext.launchOptions?.executablePath, '`apify/actor-node-playwright-*` (with a correct browser name)', 'Try installing the required dependencies by running `npx playwright install --with-deps` (https://playwright.dev/docs/browsers).');
168
82
  }
169
- _createController() {
170
- return new playwright_controller_1.PlaywrightController(this);
83
+ createController() {
84
+ return new PlaywrightController(this);
171
85
  }
172
86
  async _addProxyToLaunchOptions(launchContext) {
173
- launchContext.launchOptions ?? (launchContext.launchOptions = {});
87
+ launchContext.launchOptions ??= {};
174
88
  const { launchOptions, proxyUrl } = launchContext;
175
89
  if (proxyUrl) {
176
90
  const url = new URL(proxyUrl);
@@ -186,5 +100,4 @@ class PlaywrightPlugin extends browser_plugin_1.BrowserPlugin {
186
100
  return name === 'chromium';
187
101
  }
188
102
  }
189
- exports.PlaywrightPlugin = PlaywrightPlugin;
190
103
  //# sourceMappingURL=playwright-plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"playwright-plugin.js","sourceRoot":"","sources":["../../src/playwright/playwright-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"playwright-plugin.js","sourceRoot":"","sources":["../../src/playwright/playwright-plugin.ts"],"names":[],"mappings":"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"}
package/proxy-server.js CHANGED
@@ -1,15 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getLocalProxyAddress = getLocalProxyAddress;
4
- const proxy_chain_1 = require("proxy-chain");
5
- const server = new proxy_chain_1.Server({
1
+ import { Server as ProxyChainServer } from 'proxy-chain';
2
+ const server = new ProxyChainServer({
6
3
  port: 0,
7
4
  });
8
5
  server.server.unref();
9
6
  const listenPromise = server.listen();
10
7
  listenPromise.catch(() => { });
11
8
  // https://github.com/microsoft/playwright/blob/2e4722d460b5142267e0e506ca7ea9a259556b5f/packages/playwright-core/src/server/browserContext.ts#L423-L427
12
- async function getLocalProxyAddress() {
9
+ export async function getLocalProxyAddress() {
13
10
  await listenPromise;
14
11
  return `http://127.0.0.1:${server.port}`;
15
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"proxy-server.js","sourceRoot":"","sources":["../src/proxy-server.ts"],"names":[],"mappings":";;AAYA,oDAGC;AAfD,6CAAyD;AAEzD,MAAM,MAAM,GAAG,IAAI,oBAAgB,CAAC;IAChC,IAAI,EAAE,CAAC;CACV,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;AAEtB,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;AACtC,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;AAE9B,wJAAwJ;AACjJ,KAAK,UAAU,oBAAoB;IACtC,MAAM,aAAa,CAAC;IACpB,OAAO,oBAAoB,MAAM,CAAC,IAAI,EAAE,CAAC;AAC7C,CAAC"}
1
+ {"version":3,"file":"proxy-server.js","sourceRoot":"","sources":["../src/proxy-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEzD,MAAM,MAAM,GAAG,IAAI,gBAAgB,CAAC;IAChC,IAAI,EAAE,CAAC;CACV,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;AAEtB,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;AACtC,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;AAE9B,wJAAwJ;AACxJ,MAAM,CAAC,KAAK,UAAU,oBAAoB;IACtC,MAAM,aAAa,CAAC;IACpB,OAAO,oBAAoB,MAAM,CAAC,IAAI,EAAE,CAAC;AAC7C,CAAC"}
@@ -3,7 +3,7 @@ import type { Cookie } from '@crawlee/types';
3
3
  import type Puppeteer from 'puppeteer';
4
4
  // @ts-ignore optional peer dependency or compatibility with es2022
5
5
  import type * as PuppeteerTypes from 'puppeteer';
6
- import { BrowserController } from '../abstract-classes/browser-controller';
6
+ import { BrowserController } from '../abstract-classes/browser-controller.js';
7
7
  export interface PuppeteerNewPageOptions extends PuppeteerTypes.BrowserContextOptions {
8
8
  proxyUsername?: string;
9
9
  proxyPassword?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"puppeteer-controller.d.ts","sourceRoot":"","sources":["../../src/puppeteer/puppeteer-controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,SAAS,MAAM,WAAW,CAAC;AACvC,OAAO,KAAK,KAAK,cAAc,MAAM,WAAW,CAAC;AAIjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAI3E,MAAM,WAAW,uBAAwB,SAAQ,cAAc,CAAC,qBAAqB;IACjF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B;AAID,qBAAa,mBAAoB,SAAQ,iBAAiB,CACtD,OAAO,SAAS,EAChB,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,OAAO,EACtB,uBAAuB,CAC1B;IACG,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,WAAW,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;cAiB9E,QAAQ,CAAC,cAAc,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC;cA4EhF,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;cAIvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;cAuBtB,WAAW,CAAC,IAAI,EAAE,cAAc,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;cAIzD,WAAW,CAAC,IAAI,EAAE,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAG3F"}
1
+ {"version":3,"file":"puppeteer-controller.d.ts","sourceRoot":"","sources":["../../src/puppeteer/puppeteer-controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,SAAS,MAAM,WAAW,CAAC;AACvC,OAAO,KAAK,KAAK,cAAc,MAAM,WAAW,CAAC;AAIjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAI9E,MAAM,WAAW,uBAAwB,SAAQ,cAAc,CAAC,qBAAqB;IACjF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B;AAID,qBAAa,mBAAoB,SAAQ,iBAAiB,CACtD,OAAO,SAAS,EAChB,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,OAAO,EACtB,uBAAuB,CAC1B;IACG,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,WAAW,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;cAiB9E,QAAQ,CAAC,cAAc,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC;cA0EhF,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;cAIvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;cAuBtB,WAAW,CAAC,IAAI,EAAE,cAAc,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;cAIzD,WAAW,CAAC,IAAI,EAAE,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAG3F"}
@@ -1,12 +1,9 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PuppeteerController = void 0;
4
- const timeout_1 = require("@apify/timeout");
5
- const browser_controller_1 = require("../abstract-classes/browser-controller");
6
- const anonymize_proxy_1 = require("../anonymize-proxy");
7
- const logger_1 = require("../logger");
1
+ import { tryCancel } from '@apify/timeout';
2
+ import { BrowserController } from '../abstract-classes/browser-controller.js';
3
+ import { anonymizeProxySugar } from '../anonymize-proxy.js';
4
+ import { log } from '../logger.js';
8
5
  const PROCESS_KILL_TIMEOUT_MILLIS = 5000;
9
- class PuppeteerController extends browser_controller_1.BrowserController {
6
+ export class PuppeteerController extends BrowserController {
10
7
  normalizeProxyOptions(proxyUrl, pageOptions) {
11
8
  if (!proxyUrl) {
12
9
  return {};
@@ -24,11 +21,11 @@ class PuppeteerController extends browser_controller_1.BrowserController {
24
21
  async _newPage(contextOptions) {
25
22
  if (contextOptions !== undefined) {
26
23
  if (!this.launchContext.useIncognitoPages) {
27
- throw new Error('A new page can be created with provided context only when using incognito pages or experimental containers.');
24
+ throw new Error('A new page can be created with provided context only when using incognito pages.');
28
25
  }
29
26
  let close = async () => { };
30
27
  if (contextOptions.proxyServer) {
31
- const [anonymizedProxyUrl, closeProxy] = await (0, anonymize_proxy_1.anonymizeProxySugar)(contextOptions.proxyServer, contextOptions.proxyUsername, contextOptions.proxyPassword);
28
+ const [anonymizedProxyUrl, closeProxy] = await anonymizeProxySugar(contextOptions.proxyServer, contextOptions.proxyUsername, contextOptions.proxyPassword);
32
29
  if (anonymizedProxyUrl) {
33
30
  contextOptions.proxyServer = anonymizedProxyUrl;
34
31
  delete contextOptions.proxyUsername;
@@ -42,9 +39,9 @@ class PuppeteerController extends browser_controller_1.BrowserController {
42
39
  const oldPuppeteerVersion = !CdpBrowser || 'createIncognitoBrowserContext' in CdpBrowser.prototype;
43
40
  const method = oldPuppeteerVersion ? 'createIncognitoBrowserContext' : 'createBrowserContext';
44
41
  const context = (await this.browser[method](contextOptions));
45
- (0, timeout_1.tryCancel)();
42
+ tryCancel();
46
43
  const page = await context.newPage();
47
- (0, timeout_1.tryCancel)();
44
+ tryCancel();
48
45
  /*
49
46
  // DO NOT USE YET! DOING SO DISABLES CACHE WHICH IS 50% PERFORMANCE HIT!
50
47
  if (contextOptions.proxyUsername || contextOptions.proxyPassword) {
@@ -61,7 +58,7 @@ class PuppeteerController extends browser_controller_1.BrowserController {
61
58
  await context.close();
62
59
  }
63
60
  catch (error) {
64
- logger_1.log.exception(error, 'Failed to close context.');
61
+ log.exception(error, 'Failed to close context.');
65
62
  }
66
63
  finally {
67
64
  await close();
@@ -75,7 +72,7 @@ class PuppeteerController extends browser_controller_1.BrowserController {
75
72
  }
76
73
  }
77
74
  const page = await this.browser.newPage();
78
- (0, timeout_1.tryCancel)();
75
+ tryCancel();
79
76
  page.once('close', () => {
80
77
  this.activePages--;
81
78
  });
@@ -87,7 +84,7 @@ class PuppeteerController extends browser_controller_1.BrowserController {
87
84
  async _kill() {
88
85
  const browserProcess = this.browser.process();
89
86
  if (!browserProcess) {
90
- logger_1.log.debug('Browser was connected using the `puppeteer.connect` method no browser to kill.');
87
+ log.debug('Browser was connected using the `puppeteer.connect` method no browser to kill.');
91
88
  return;
92
89
  }
93
90
  const timeout = setTimeout(() => {
@@ -101,7 +98,7 @@ class PuppeteerController extends browser_controller_1.BrowserController {
101
98
  clearTimeout(timeout);
102
99
  }
103
100
  catch (error) {
104
- logger_1.log.debug('Browser was already killed.', { error });
101
+ log.debug('Browser was already killed.', { error });
105
102
  }
106
103
  }
107
104
  async _getCookies(page) {
@@ -111,5 +108,4 @@ class PuppeteerController extends browser_controller_1.BrowserController {
111
108
  return page.setCookie(...cookies);
112
109
  }
113
110
  }
114
- exports.PuppeteerController = PuppeteerController;
115
111
  //# sourceMappingURL=puppeteer-controller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"puppeteer-controller.js","sourceRoot":"","sources":["../../src/puppeteer/puppeteer-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"puppeteer-controller.js","sourceRoot":"","sources":["../../src/puppeteer/puppeteer-controller.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAOnC,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAEzC,MAAM,OAAO,mBAAoB,SAAQ,iBAKxC;IACG,qBAAqB,CAAC,QAA4B,EAAE,WAAgB;QAChE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;QACd,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC9B,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAElD,OAAO;YACH,WAAW,EAAE,GAAG,CAAC,MAAM;YACvB,aAAa,EAAE,QAAQ;YACvB,aAAa,EAAE,QAAQ;YACvB,eAAe,EAAE,WAAW,EAAE,eAAe;SAChD,CAAC;IACN,CAAC;IAES,KAAK,CAAC,QAAQ,CAAC,cAAwC;QAC7D,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC;gBACxC,MAAM,IAAI,KAAK,CAAC,kFAAkF,CAAC,CAAC;YACxG,CAAC;YAED,IAAI,KAAK,GAAG,KAAK,IAAI,EAAE,GAAE,CAAC,CAAC;YAC3B,IAAI,cAAc,CAAC,WAAW,EAAE,CAAC;gBAC7B,MAAM,CAAC,kBAAkB,EAAE,UAAU,CAAC,GAAG,MAAM,mBAAmB,CAC9D,cAAc,CAAC,WAAW,EAC1B,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,aAAa,CAC/B,CAAC;gBAEF,IAAI,kBAAkB,EAAE,CAAC;oBACrB,cAAc,CAAC,WAAW,GAAG,kBAAkB,CAAC;oBAChD,OAAO,cAAc,CAAC,aAAa,CAAC;oBACpC,OAAO,cAAc,CAAC,aAAa,CAAC;gBACxC,CAAC;gBAED,KAAK,GAAG,UAAU,CAAC;YACvB,CAAC;YAED,IAAI,CAAC;gBACD,6CAA6C;gBAC7C,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;gBACjD,MAAM,mBAAmB,GAAG,CAAC,UAAU,IAAI,+BAA+B,IAAI,UAAU,CAAC,SAAS,CAAC;gBACnG,MAAM,MAAM,GAAG,mBAAmB,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,sBAAsB,CAAC;gBAC9F,MAAM,OAAO,GAAG,CAAC,MAAO,IAAI,CAAC,OAAe,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAkC,CAAC;gBACvG,SAAS,EAAE,CAAC;gBACZ,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrC,SAAS,EAAE,CAAC;gBAEZ;;;;;;;;;kBASE;gBAEF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;oBAC1B,IAAI,CAAC,WAAW,EAAE,CAAC;oBAEnB,IAAI,CAAC;wBACD,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;oBAC1B,CAAC;oBAAC,OAAO,KAAU,EAAE,CAAC;wBAClB,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,0BAA0B,CAAC,CAAC;oBACrD,CAAC;4BAAS,CAAC;wBACP,MAAM,KAAK,EAAE,CAAC;oBAClB,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,OAAO,IAAI,CAAC;YAChB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,MAAM,KAAK,EAAE,CAAC;gBAEd,MAAM,KAAK,CAAC;YAChB,CAAC;QACL,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1C,SAAS,EAAE,CAAC;QAEZ,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;YACpB,IAAI,CAAC,WAAW,EAAE,CAAC;QACvB,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IAChB,CAAC;IAES,KAAK,CAAC,MAAM;QAClB,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IAC/B,CAAC;IAES,KAAK,CAAC,KAAK;QACjB,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QAE9C,IAAI,CAAC,cAAc,EAAE,CAAC;YAClB,GAAG,CAAC,KAAK,CAAC,gFAAgF,CAAC,CAAC;YAC5F,OAAO;QACX,CAAC;QAED,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,uDAAuD;YACvD,0EAA0E;YAC1E,6DAA6D;YAC7D,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC,EAAE,2BAA2B,CAAC,CAAC;QAEhC,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC3B,YAAY,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,CAAC,6BAA6B,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACxD,CAAC;IACL,CAAC;IAES,KAAK,CAAC,WAAW,CAAC,IAAyB;QACjD,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IAES,KAAK,CAAC,WAAW,CAAC,IAAyB,EAAE,OAAiB;QACpE,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,CAAC;IACtC,CAAC;CACJ"}
@@ -2,13 +2,13 @@
2
2
  import type Puppeteer from 'puppeteer';
3
3
  // @ts-ignore optional peer dependency or compatibility with es2022
4
4
  import type * as PuppeteerTypes from 'puppeteer';
5
- import type { BrowserController } from '../abstract-classes/browser-controller';
6
- import { BrowserPlugin } from '../abstract-classes/browser-plugin';
7
- import type { LaunchContext } from '../launch-context';
8
- import type { PuppeteerNewPageOptions } from './puppeteer-controller';
5
+ import { BrowserPlugin } from '../abstract-classes/browser-plugin.js';
6
+ import type { LaunchContext } from '../launch-context.js';
7
+ import type { PuppeteerNewPageOptions } from './puppeteer-controller.js';
8
+ import { PuppeteerController } from './puppeteer-controller.js';
9
9
  export declare class PuppeteerPlugin extends BrowserPlugin<typeof Puppeteer, PuppeteerTypes.LaunchOptions, PuppeteerTypes.Browser, PuppeteerNewPageOptions> {
10
10
  protected _launch(launchContext: LaunchContext<typeof Puppeteer, PuppeteerTypes.LaunchOptions, PuppeteerTypes.Browser, PuppeteerNewPageOptions>): Promise<PuppeteerTypes.Browser>;
11
- protected _createController(): BrowserController<typeof Puppeteer, PuppeteerTypes.LaunchOptions, PuppeteerTypes.Browser, PuppeteerNewPageOptions>;
11
+ createController(): PuppeteerController;
12
12
  protected _addProxyToLaunchOptions(_launchContext: LaunchContext<typeof Puppeteer, PuppeteerTypes.LaunchOptions, PuppeteerTypes.Browser, PuppeteerNewPageOptions>): Promise<void>;
13
13
  protected _isChromiumBasedBrowser(_launchContext: LaunchContext<typeof Puppeteer, PuppeteerTypes.LaunchOptions, PuppeteerTypes.Browser, PuppeteerNewPageOptions>): boolean;
14
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"puppeteer-plugin.d.ts","sourceRoot":"","sources":["../../src/puppeteer/puppeteer-plugin.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,SAAS,MAAM,WAAW,CAAC;AACvC,OAAO,KAAK,KAAK,cAAc,MAAM,WAAW,CAAC;AAEjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAEnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAKtE,qBAAa,eAAgB,SAAQ,aAAa,CAC9C,OAAO,SAAS,EAChB,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,OAAO,EACtB,uBAAuB,CAC1B;cACmB,OAAO,CACnB,aAAa,EAAE,aAAa,CACxB,OAAO,SAAS,EAChB,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,OAAO,EACtB,uBAAuB,CAC1B,GACF,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC;IAgKlC,SAAS,CAAC,iBAAiB,IAAI,iBAAiB,CAC5C,OAAO,SAAS,EAChB,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,OAAO,EACtB,uBAAuB,CAC1B;cAIe,wBAAwB,CACpC,cAAc,EAAE,aAAa,CACzB,OAAO,SAAS,EAChB,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,OAAO,EACtB,uBAAuB,CAC1B,GACF,OAAO,CAAC,IAAI,CAAC;IA4BhB,SAAS,CAAC,uBAAuB,CAC7B,cAAc,EAAE,aAAa,CACzB,OAAO,SAAS,EAChB,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,OAAO,EACtB,uBAAuB,CAC1B,GACF,OAAO;CAGb"}
1
+ {"version":3,"file":"puppeteer-plugin.d.ts","sourceRoot":"","sources":["../../src/puppeteer/puppeteer-plugin.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,SAAS,MAAM,WAAW,CAAC;AACvC,OAAO,KAAK,KAAK,cAAc,MAAM,WAAW,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAEtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAIhE,qBAAa,eAAgB,SAAQ,aAAa,CAC9C,OAAO,SAAS,EAChB,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,OAAO,EACtB,uBAAuB,CAC1B;cACmB,OAAO,CACnB,aAAa,EAAE,aAAa,CACxB,OAAO,SAAS,EAChB,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,OAAO,EACtB,uBAAuB,CAC1B,GACF,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC;IA4JzB,gBAAgB,IAAI,mBAAmB;cAIhC,wBAAwB,CACpC,cAAc,EAAE,aAAa,CACzB,OAAO,SAAS,EAChB,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,OAAO,EACtB,uBAAuB,CAC1B,GACF,OAAO,CAAC,IAAI,CAAC;IA4BhB,SAAS,CAAC,uBAAuB,CAC7B,cAAc,EAAE,aAAa,CACzB,OAAO,SAAS,EAChB,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,OAAO,EACtB,uBAAuB,CAC1B,GACF,OAAO;CAGb"}