@browserless.io/browserless 2.24.0-beta-3 → 2.24.0-beta-5

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.
@@ -4387,7 +4387,7 @@
4387
4387
  // node_modules/puppeteer-core/lib/esm/puppeteer/generated/version.js
4388
4388
  init_dirname();
4389
4389
  init_buffer2();
4390
- var packageVersion = "23.9.0";
4390
+ var packageVersion = "23.10.0";
4391
4391
 
4392
4392
  // node_modules/puppeteer-core/lib/esm/puppeteer/util/assert.js
4393
4393
  init_dirname();
@@ -5244,6 +5244,39 @@
5244
5244
  return acc.concat(x);
5245
5245
  }, []);
5246
5246
  }
5247
+ /**
5248
+ * Returns all cookies in the default {@link BrowserContext}.
5249
+ *
5250
+ * @remarks
5251
+ *
5252
+ * Shortcut for
5253
+ * {@link BrowserContext.cookies | browser.defaultBrowserContext().cookies()}.
5254
+ */
5255
+ async cookies() {
5256
+ return await this.defaultBrowserContext().cookies();
5257
+ }
5258
+ /**
5259
+ * Sets cookies in the default {@link BrowserContext}.
5260
+ *
5261
+ * @remarks
5262
+ *
5263
+ * Shortcut for
5264
+ * {@link BrowserContext.setCookie | browser.defaultBrowserContext().setCookie()}.
5265
+ */
5266
+ async setCookie(...cookies) {
5267
+ return await this.defaultBrowserContext().setCookie(...cookies);
5268
+ }
5269
+ /**
5270
+ * Removes cookies from the default {@link BrowserContext}.
5271
+ *
5272
+ * @remarks
5273
+ *
5274
+ * Shortcut for
5275
+ * {@link BrowserContext.deleteCookie | browser.defaultBrowserContext().deleteCookie()}.
5276
+ */
5277
+ async deleteCookie(...cookies) {
5278
+ return await this.defaultBrowserContext().deleteCookie(...cookies);
5279
+ }
5247
5280
  /**
5248
5281
  * Whether Puppeteer is connected to this {@link Browser | browser}.
5249
5282
  *
@@ -5493,6 +5526,18 @@
5493
5526
  /* BrowserContextEvent.TargetChanged */
5494
5527
  ), from(this.targets())).pipe(filterAsync(predicate), raceWith(timeout(ms))));
5495
5528
  }
5529
+ /**
5530
+ * Removes cookie in the browser context
5531
+ * @param cookies - {@link Cookie | cookie} to remove
5532
+ */
5533
+ async deleteCookie(...cookies) {
5534
+ return await this.setCookie(...cookies.map((cookie) => {
5535
+ return {
5536
+ ...cookie,
5537
+ expires: 1
5538
+ };
5539
+ }));
5540
+ }
5496
5541
  /**
5497
5542
  * Whether this {@link BrowserContext | browser context} is closed.
5498
5543
  */
@@ -5515,7 +5560,51 @@
5515
5560
  }
5516
5561
  };
5517
5562
 
5518
- // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/BrowserContext.js
5563
+ // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/Page.js
5564
+ init_dirname();
5565
+ init_buffer2();
5566
+
5567
+ // node_modules/puppeteer-core/lib/esm/puppeteer/api/Page.js
5568
+ init_dirname();
5569
+ init_buffer2();
5570
+
5571
+ // node_modules/puppeteer-core/lib/esm/puppeteer/common/TimeoutSettings.js
5572
+ init_dirname();
5573
+ init_buffer2();
5574
+ var DEFAULT_TIMEOUT = 3e4;
5575
+ var TimeoutSettings = class {
5576
+ #defaultTimeout;
5577
+ #defaultNavigationTimeout;
5578
+ constructor() {
5579
+ this.#defaultTimeout = null;
5580
+ this.#defaultNavigationTimeout = null;
5581
+ }
5582
+ setDefaultTimeout(timeout2) {
5583
+ this.#defaultTimeout = timeout2;
5584
+ }
5585
+ setDefaultNavigationTimeout(timeout2) {
5586
+ this.#defaultNavigationTimeout = timeout2;
5587
+ }
5588
+ navigationTimeout() {
5589
+ if (this.#defaultNavigationTimeout !== null) {
5590
+ return this.#defaultNavigationTimeout;
5591
+ }
5592
+ if (this.#defaultTimeout !== null) {
5593
+ return this.#defaultTimeout;
5594
+ }
5595
+ return DEFAULT_TIMEOUT;
5596
+ }
5597
+ timeout() {
5598
+ if (this.#defaultTimeout !== null) {
5599
+ return this.#defaultTimeout;
5600
+ }
5601
+ return DEFAULT_TIMEOUT;
5602
+ }
5603
+ };
5604
+
5605
+ // node_modules/puppeteer-core/lib/esm/puppeteer/util/decorators.js
5606
+ init_dirname();
5607
+ init_buffer2();
5519
5608
  var __addDisposableResource = function(env, value, async2) {
5520
5609
  if (value !== null && value !== void 0) {
5521
5610
  if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
@@ -5574,405 +5663,107 @@
5574
5663
  var e = new Error(message);
5575
5664
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
5576
5665
  });
5577
- var CdpBrowserContext = class extends BrowserContext {
5578
- #connection;
5579
- #browser;
5580
- #id;
5581
- constructor(connection, browser, contextId) {
5582
- super();
5583
- this.#connection = connection;
5584
- this.#browser = browser;
5585
- this.#id = contextId;
5586
- }
5587
- get id() {
5588
- return this.#id;
5589
- }
5590
- targets() {
5591
- return this.#browser.targets().filter((target) => {
5592
- return target.browserContext() === this;
5593
- });
5594
- }
5595
- async pages() {
5596
- const pages = await Promise.all(this.targets().filter((target) => {
5597
- return target.type() === "page" || target.type() === "other" && this.#browser._getIsPageTargetCallback()?.(target);
5598
- }).map((target) => {
5599
- return target.page();
5600
- }));
5601
- return pages.filter((page) => {
5602
- return !!page;
5603
- });
5666
+ var instances = /* @__PURE__ */ new WeakSet();
5667
+ function moveable(Class, _) {
5668
+ let hasDispose = false;
5669
+ if (Class.prototype[disposeSymbol]) {
5670
+ const dispose = Class.prototype[disposeSymbol];
5671
+ Class.prototype[disposeSymbol] = function() {
5672
+ if (instances.has(this)) {
5673
+ instances.delete(this);
5674
+ return;
5675
+ }
5676
+ return dispose.call(this);
5677
+ };
5678
+ hasDispose = true;
5604
5679
  }
5605
- async overridePermissions(origin, permissions) {
5606
- const protocolPermissions = permissions.map((permission) => {
5607
- const protocolPermission = WEB_PERMISSION_TO_PROTOCOL_PERMISSION.get(permission);
5608
- if (!protocolPermission) {
5609
- throw new Error("Unknown permission: " + permission);
5680
+ if (Class.prototype[asyncDisposeSymbol]) {
5681
+ const asyncDispose = Class.prototype[asyncDisposeSymbol];
5682
+ Class.prototype[asyncDisposeSymbol] = function() {
5683
+ if (instances.has(this)) {
5684
+ instances.delete(this);
5685
+ return;
5610
5686
  }
5611
- return protocolPermission;
5612
- });
5613
- await this.#connection.send("Browser.grantPermissions", {
5614
- origin,
5615
- browserContextId: this.#id || void 0,
5616
- permissions: protocolPermissions
5617
- });
5687
+ return asyncDispose.call(this);
5688
+ };
5689
+ hasDispose = true;
5618
5690
  }
5619
- async clearPermissionOverrides() {
5620
- await this.#connection.send("Browser.resetPermissions", {
5621
- browserContextId: this.#id || void 0
5622
- });
5691
+ if (hasDispose) {
5692
+ Class.prototype.move = function() {
5693
+ instances.add(this);
5694
+ return this;
5695
+ };
5623
5696
  }
5624
- async newPage() {
5625
- const env_1 = { stack: [], error: void 0, hasError: false };
5626
- try {
5627
- const _guard = __addDisposableResource(env_1, await this.waitForScreenshotOperations(), false);
5628
- return await this.#browser._createPageInContext(this.#id);
5629
- } catch (e_1) {
5630
- env_1.error = e_1;
5631
- env_1.hasError = true;
5632
- } finally {
5633
- __disposeResources(env_1);
5697
+ return Class;
5698
+ }
5699
+ function throwIfDisposed(message = (value) => {
5700
+ return `Attempted to use disposed ${value.constructor.name}.`;
5701
+ }) {
5702
+ return (target, _) => {
5703
+ return function(...args) {
5704
+ if (this.disposed) {
5705
+ throw new Error(message(this));
5706
+ }
5707
+ return target.call(this, ...args);
5708
+ };
5709
+ };
5710
+ }
5711
+ function invokeAtMostOnceForArguments(target, _) {
5712
+ const cache = /* @__PURE__ */ new WeakMap();
5713
+ let cacheDepth = -1;
5714
+ return function(...args) {
5715
+ if (cacheDepth === -1) {
5716
+ cacheDepth = args.length;
5634
5717
  }
5635
- }
5636
- browser() {
5637
- return this.#browser;
5638
- }
5639
- async close() {
5640
- assert(this.#id, "Default BrowserContext cannot be closed!");
5641
- await this.#browser._disposeContext(this.#id);
5642
- }
5643
- async setDownloadBehavior(downloadBehavior) {
5644
- await this.#connection.send("Browser.setDownloadBehavior", {
5645
- behavior: downloadBehavior.policy,
5646
- downloadPath: downloadBehavior.downloadPath,
5647
- browserContextId: this.#id
5648
- });
5649
- }
5650
- };
5651
-
5652
- // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/ChromeTargetManager.js
5653
- init_dirname();
5654
- init_buffer2();
5655
-
5656
- // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/Target.js
5657
- init_dirname();
5658
- init_buffer2();
5718
+ if (cacheDepth !== args.length) {
5719
+ throw new Error("Memoized method was called with the wrong number of arguments");
5720
+ }
5721
+ let freshArguments = false;
5722
+ let cacheIterator = cache;
5723
+ for (const arg of args) {
5724
+ if (cacheIterator.has(arg)) {
5725
+ cacheIterator = cacheIterator.get(arg);
5726
+ } else {
5727
+ freshArguments = true;
5728
+ cacheIterator.set(arg, /* @__PURE__ */ new WeakMap());
5729
+ cacheIterator = cacheIterator.get(arg);
5730
+ }
5731
+ }
5732
+ if (!freshArguments) {
5733
+ return;
5734
+ }
5735
+ return target.call(this, ...args);
5736
+ };
5737
+ }
5738
+ function guarded(getKey = function() {
5739
+ return this;
5740
+ }) {
5741
+ return (target, _) => {
5742
+ const mutexes = /* @__PURE__ */ new WeakMap();
5743
+ return async function(...args) {
5744
+ const env_1 = { stack: [], error: void 0, hasError: false };
5745
+ try {
5746
+ const key = getKey.call(this);
5747
+ let mutex = mutexes.get(key);
5748
+ if (!mutex) {
5749
+ mutex = new Mutex();
5750
+ mutexes.set(key, mutex);
5751
+ }
5752
+ const _2 = __addDisposableResource(env_1, await mutex.acquire(), true);
5753
+ return await target.call(this, ...args);
5754
+ } catch (e_1) {
5755
+ env_1.error = e_1;
5756
+ env_1.hasError = true;
5757
+ } finally {
5758
+ const result_1 = __disposeResources(env_1);
5759
+ if (result_1)
5760
+ await result_1;
5761
+ }
5762
+ };
5763
+ };
5764
+ }
5659
5765
 
5660
- // node_modules/puppeteer-core/lib/esm/puppeteer/api/Target.js
5661
- init_dirname();
5662
- init_buffer2();
5663
- var TargetType;
5664
- (function(TargetType2) {
5665
- TargetType2["PAGE"] = "page";
5666
- TargetType2["BACKGROUND_PAGE"] = "background_page";
5667
- TargetType2["SERVICE_WORKER"] = "service_worker";
5668
- TargetType2["SHARED_WORKER"] = "shared_worker";
5669
- TargetType2["BROWSER"] = "browser";
5670
- TargetType2["WEBVIEW"] = "webview";
5671
- TargetType2["OTHER"] = "other";
5672
- TargetType2["TAB"] = "tab";
5673
- })(TargetType || (TargetType = {}));
5674
- var Target = class {
5675
- /**
5676
- * @internal
5677
- */
5678
- constructor() {
5679
- }
5680
- /**
5681
- * If the target is not of type `"service_worker"` or `"shared_worker"`, returns `null`.
5682
- */
5683
- async worker() {
5684
- return null;
5685
- }
5686
- /**
5687
- * If the target is not of type `"page"`, `"webview"` or `"background_page"`,
5688
- * returns `null`.
5689
- */
5690
- async page() {
5691
- return null;
5692
- }
5693
- };
5694
-
5695
- // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/CDPSession.js
5696
- init_dirname();
5697
- init_buffer2();
5698
-
5699
- // node_modules/puppeteer-core/lib/esm/puppeteer/common/CallbackRegistry.js
5700
- init_dirname();
5701
- init_buffer2();
5702
-
5703
- // node_modules/puppeteer-core/lib/esm/puppeteer/util/ErrorLike.js
5704
- init_dirname();
5705
- init_buffer2();
5706
- function isErrorLike(obj) {
5707
- return typeof obj === "object" && obj !== null && "name" in obj && "message" in obj;
5708
- }
5709
- function rewriteError(error, message, originalMessage) {
5710
- error.message = message;
5711
- error.originalMessage = originalMessage ?? error.originalMessage;
5712
- return error;
5713
- }
5714
- function createProtocolErrorMessage(object) {
5715
- let message = object.error.message;
5716
- if (object.error && typeof object.error === "object" && "data" in object.error) {
5717
- message += ` ${object.error.data}`;
5718
- }
5719
- return message;
5720
- }
5721
-
5722
- // node_modules/puppeteer-core/lib/esm/puppeteer/util/incremental-id-generator.js
5723
- init_dirname();
5724
- init_buffer2();
5725
- function createIncrementalIdGenerator() {
5726
- let id = 0;
5727
- return () => {
5728
- return ++id;
5729
- };
5730
- }
5731
-
5732
- // node_modules/puppeteer-core/lib/esm/puppeteer/common/CallbackRegistry.js
5733
- var CallbackRegistry = class {
5734
- #callbacks = /* @__PURE__ */ new Map();
5735
- #idGenerator = createIncrementalIdGenerator();
5736
- create(label, timeout2, request) {
5737
- const callback = new Callback(this.#idGenerator(), label, timeout2);
5738
- this.#callbacks.set(callback.id, callback);
5739
- try {
5740
- request(callback.id);
5741
- } catch (error) {
5742
- callback.promise.catch(debugError).finally(() => {
5743
- this.#callbacks.delete(callback.id);
5744
- });
5745
- callback.reject(error);
5746
- throw error;
5747
- }
5748
- return callback.promise.finally(() => {
5749
- this.#callbacks.delete(callback.id);
5750
- });
5751
- }
5752
- reject(id, message, originalMessage) {
5753
- const callback = this.#callbacks.get(id);
5754
- if (!callback) {
5755
- return;
5756
- }
5757
- this._reject(callback, message, originalMessage);
5758
- }
5759
- _reject(callback, errorMessage, originalMessage) {
5760
- let error;
5761
- let message;
5762
- if (errorMessage instanceof ProtocolError) {
5763
- error = errorMessage;
5764
- error.cause = callback.error;
5765
- message = errorMessage.message;
5766
- } else {
5767
- error = callback.error;
5768
- message = errorMessage;
5769
- }
5770
- callback.reject(rewriteError(error, `Protocol error (${callback.label}): ${message}`, originalMessage));
5771
- }
5772
- resolve(id, value) {
5773
- const callback = this.#callbacks.get(id);
5774
- if (!callback) {
5775
- return;
5776
- }
5777
- callback.resolve(value);
5778
- }
5779
- clear() {
5780
- for (const callback of this.#callbacks.values()) {
5781
- this._reject(callback, new TargetCloseError("Target closed"));
5782
- }
5783
- this.#callbacks.clear();
5784
- }
5785
- /**
5786
- * @internal
5787
- */
5788
- getPendingProtocolErrors() {
5789
- const result = [];
5790
- for (const callback of this.#callbacks.values()) {
5791
- result.push(new Error(`${callback.label} timed out. Trace: ${callback.error.stack}`));
5792
- }
5793
- return result;
5794
- }
5795
- };
5796
- var Callback = class {
5797
- #id;
5798
- #error = new ProtocolError();
5799
- #deferred = Deferred.create();
5800
- #timer;
5801
- #label;
5802
- constructor(id, label, timeout2) {
5803
- this.#id = id;
5804
- this.#label = label;
5805
- if (timeout2) {
5806
- this.#timer = setTimeout(() => {
5807
- this.#deferred.reject(rewriteError(this.#error, `${label} timed out. Increase the 'protocolTimeout' setting in launch/connect calls for a higher timeout if needed.`));
5808
- }, timeout2);
5809
- }
5810
- }
5811
- resolve(value) {
5812
- clearTimeout(this.#timer);
5813
- this.#deferred.resolve(value);
5814
- }
5815
- reject(error) {
5816
- clearTimeout(this.#timer);
5817
- this.#deferred.reject(error);
5818
- }
5819
- get id() {
5820
- return this.#id;
5821
- }
5822
- get promise() {
5823
- return this.#deferred.valueOrThrow();
5824
- }
5825
- get error() {
5826
- return this.#error;
5827
- }
5828
- get label() {
5829
- return this.#label;
5830
- }
5831
- };
5832
-
5833
- // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/CDPSession.js
5834
- var CdpCDPSession = class extends CDPSession {
5835
- #sessionId;
5836
- #targetType;
5837
- #callbacks = new CallbackRegistry();
5838
- #connection;
5839
- #parentSessionId;
5840
- #target;
5841
- /**
5842
- * @internal
5843
- */
5844
- constructor(connection, targetType, sessionId, parentSessionId) {
5845
- super();
5846
- this.#connection = connection;
5847
- this.#targetType = targetType;
5848
- this.#sessionId = sessionId;
5849
- this.#parentSessionId = parentSessionId;
5850
- }
5851
- /**
5852
- * Sets the {@link CdpTarget} associated with the session instance.
5853
- *
5854
- * @internal
5855
- */
5856
- _setTarget(target) {
5857
- this.#target = target;
5858
- }
5859
- /**
5860
- * Gets the {@link CdpTarget} associated with the session instance.
5861
- *
5862
- * @internal
5863
- */
5864
- _target() {
5865
- assert(this.#target, "Target must exist");
5866
- return this.#target;
5867
- }
5868
- connection() {
5869
- return this.#connection;
5870
- }
5871
- parentSession() {
5872
- if (!this.#parentSessionId) {
5873
- return this;
5874
- }
5875
- const parent = this.#connection?.session(this.#parentSessionId);
5876
- return parent ?? void 0;
5877
- }
5878
- send(method, params, options) {
5879
- if (!this.#connection) {
5880
- return Promise.reject(new TargetCloseError(`Protocol error (${method}): Session closed. Most likely the ${this.#targetType} has been closed.`));
5881
- }
5882
- return this.#connection._rawSend(this.#callbacks, method, params, this.#sessionId, options);
5883
- }
5884
- /**
5885
- * @internal
5886
- */
5887
- _onMessage(object) {
5888
- if (object.id) {
5889
- if (object.error) {
5890
- this.#callbacks.reject(object.id, createProtocolErrorMessage(object), object.error.message);
5891
- } else {
5892
- this.#callbacks.resolve(object.id, object.result);
5893
- }
5894
- } else {
5895
- assert(!object.id);
5896
- this.emit(object.method, object.params);
5897
- }
5898
- }
5899
- /**
5900
- * Detaches the cdpSession from the target. Once detached, the cdpSession object
5901
- * won't emit any events and can't be used to send messages.
5902
- */
5903
- async detach() {
5904
- if (!this.#connection) {
5905
- throw new Error(`Session already detached. Most likely the ${this.#targetType} has been closed.`);
5906
- }
5907
- await this.#connection.send("Target.detachFromTarget", {
5908
- sessionId: this.#sessionId
5909
- });
5910
- }
5911
- /**
5912
- * @internal
5913
- */
5914
- _onClosed() {
5915
- this.#callbacks.clear();
5916
- this.#connection = void 0;
5917
- this.emit(CDPSessionEvent.Disconnected, void 0);
5918
- }
5919
- /**
5920
- * Returns the session's id.
5921
- */
5922
- id() {
5923
- return this.#sessionId;
5924
- }
5925
- /**
5926
- * @internal
5927
- */
5928
- getPendingProtocolErrors() {
5929
- return this.#callbacks.getPendingProtocolErrors();
5930
- }
5931
- };
5932
-
5933
- // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/Page.js
5934
- init_dirname();
5935
- init_buffer2();
5936
-
5937
- // node_modules/puppeteer-core/lib/esm/puppeteer/api/Page.js
5938
- init_dirname();
5939
- init_buffer2();
5940
-
5941
- // node_modules/puppeteer-core/lib/esm/puppeteer/common/TimeoutSettings.js
5942
- init_dirname();
5943
- init_buffer2();
5944
- var DEFAULT_TIMEOUT = 3e4;
5945
- var TimeoutSettings = class {
5946
- #defaultTimeout;
5947
- #defaultNavigationTimeout;
5948
- constructor() {
5949
- this.#defaultTimeout = null;
5950
- this.#defaultNavigationTimeout = null;
5951
- }
5952
- setDefaultTimeout(timeout2) {
5953
- this.#defaultTimeout = timeout2;
5954
- }
5955
- setDefaultNavigationTimeout(timeout2) {
5956
- this.#defaultNavigationTimeout = timeout2;
5957
- }
5958
- navigationTimeout() {
5959
- if (this.#defaultNavigationTimeout !== null) {
5960
- return this.#defaultNavigationTimeout;
5961
- }
5962
- if (this.#defaultTimeout !== null) {
5963
- return this.#defaultTimeout;
5964
- }
5965
- return DEFAULT_TIMEOUT;
5966
- }
5967
- timeout() {
5968
- if (this.#defaultTimeout !== null) {
5969
- return this.#defaultTimeout;
5970
- }
5971
- return DEFAULT_TIMEOUT;
5972
- }
5973
- };
5974
-
5975
- // node_modules/puppeteer-core/lib/esm/puppeteer/util/decorators.js
5766
+ // node_modules/puppeteer-core/lib/esm/puppeteer/api/locators/locators.js
5976
5767
  init_dirname();
5977
5768
  init_buffer2();
5978
5769
  var __addDisposableResource2 = function(env, value, async2) {
@@ -6033,167 +5824,6 @@
6033
5824
  var e = new Error(message);
6034
5825
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
6035
5826
  });
6036
- var instances = /* @__PURE__ */ new WeakSet();
6037
- function moveable(Class, _) {
6038
- let hasDispose = false;
6039
- if (Class.prototype[disposeSymbol]) {
6040
- const dispose = Class.prototype[disposeSymbol];
6041
- Class.prototype[disposeSymbol] = function() {
6042
- if (instances.has(this)) {
6043
- instances.delete(this);
6044
- return;
6045
- }
6046
- return dispose.call(this);
6047
- };
6048
- hasDispose = true;
6049
- }
6050
- if (Class.prototype[asyncDisposeSymbol]) {
6051
- const asyncDispose = Class.prototype[asyncDisposeSymbol];
6052
- Class.prototype[asyncDisposeSymbol] = function() {
6053
- if (instances.has(this)) {
6054
- instances.delete(this);
6055
- return;
6056
- }
6057
- return asyncDispose.call(this);
6058
- };
6059
- hasDispose = true;
6060
- }
6061
- if (hasDispose) {
6062
- Class.prototype.move = function() {
6063
- instances.add(this);
6064
- return this;
6065
- };
6066
- }
6067
- return Class;
6068
- }
6069
- function throwIfDisposed(message = (value) => {
6070
- return `Attempted to use disposed ${value.constructor.name}.`;
6071
- }) {
6072
- return (target, _) => {
6073
- return function(...args) {
6074
- if (this.disposed) {
6075
- throw new Error(message(this));
6076
- }
6077
- return target.call(this, ...args);
6078
- };
6079
- };
6080
- }
6081
- function invokeAtMostOnceForArguments(target, _) {
6082
- const cache = /* @__PURE__ */ new WeakMap();
6083
- let cacheDepth = -1;
6084
- return function(...args) {
6085
- if (cacheDepth === -1) {
6086
- cacheDepth = args.length;
6087
- }
6088
- if (cacheDepth !== args.length) {
6089
- throw new Error("Memoized method was called with the wrong number of arguments");
6090
- }
6091
- let freshArguments = false;
6092
- let cacheIterator = cache;
6093
- for (const arg of args) {
6094
- if (cacheIterator.has(arg)) {
6095
- cacheIterator = cacheIterator.get(arg);
6096
- } else {
6097
- freshArguments = true;
6098
- cacheIterator.set(arg, /* @__PURE__ */ new WeakMap());
6099
- cacheIterator = cacheIterator.get(arg);
6100
- }
6101
- }
6102
- if (!freshArguments) {
6103
- return;
6104
- }
6105
- return target.call(this, ...args);
6106
- };
6107
- }
6108
- function guarded(getKey = function() {
6109
- return this;
6110
- }) {
6111
- return (target, _) => {
6112
- const mutexes = /* @__PURE__ */ new WeakMap();
6113
- return async function(...args) {
6114
- const env_1 = { stack: [], error: void 0, hasError: false };
6115
- try {
6116
- const key = getKey.call(this);
6117
- let mutex = mutexes.get(key);
6118
- if (!mutex) {
6119
- mutex = new Mutex();
6120
- mutexes.set(key, mutex);
6121
- }
6122
- const _2 = __addDisposableResource2(env_1, await mutex.acquire(), true);
6123
- return await target.call(this, ...args);
6124
- } catch (e_1) {
6125
- env_1.error = e_1;
6126
- env_1.hasError = true;
6127
- } finally {
6128
- const result_1 = __disposeResources2(env_1);
6129
- if (result_1)
6130
- await result_1;
6131
- }
6132
- };
6133
- };
6134
- }
6135
-
6136
- // node_modules/puppeteer-core/lib/esm/puppeteer/api/locators/locators.js
6137
- init_dirname();
6138
- init_buffer2();
6139
- var __addDisposableResource3 = function(env, value, async2) {
6140
- if (value !== null && value !== void 0) {
6141
- if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
6142
- var dispose, inner;
6143
- if (async2) {
6144
- if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
6145
- dispose = value[Symbol.asyncDispose];
6146
- }
6147
- if (dispose === void 0) {
6148
- if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
6149
- dispose = value[Symbol.dispose];
6150
- if (async2) inner = dispose;
6151
- }
6152
- if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
6153
- if (inner) dispose = function() {
6154
- try {
6155
- inner.call(this);
6156
- } catch (e) {
6157
- return Promise.reject(e);
6158
- }
6159
- };
6160
- env.stack.push({ value, dispose, async: async2 });
6161
- } else if (async2) {
6162
- env.stack.push({ async: true });
6163
- }
6164
- return value;
6165
- };
6166
- var __disposeResources3 = /* @__PURE__ */ function(SuppressedError2) {
6167
- return function(env) {
6168
- function fail(e) {
6169
- env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
6170
- env.hasError = true;
6171
- }
6172
- var r, s = 0;
6173
- function next() {
6174
- while (r = env.stack.pop()) {
6175
- try {
6176
- if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
6177
- if (r.dispose) {
6178
- var result = r.dispose.call(r.value);
6179
- if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
6180
- fail(e);
6181
- return next();
6182
- });
6183
- } else s |= 1;
6184
- } catch (e) {
6185
- fail(e);
6186
- }
6187
- }
6188
- if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
6189
- if (env.hasError) throw env.error;
6190
- }
6191
- return next();
6192
- };
6193
- }(typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) {
6194
- var e = new Error(message);
6195
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
6196
- });
6197
5827
  var LocatorEvent;
6198
5828
  (function(LocatorEvent2) {
6199
5829
  LocatorEvent2["Action"] = "action";
@@ -6552,13 +6182,13 @@
6552
6182
  async wait(options) {
6553
6183
  const env_1 = { stack: [], error: void 0, hasError: false };
6554
6184
  try {
6555
- const handle = __addDisposableResource3(env_1, await this.waitHandle(options), false);
6185
+ const handle = __addDisposableResource2(env_1, await this.waitHandle(options), false);
6556
6186
  return await handle.jsonValue();
6557
6187
  } catch (e_1) {
6558
6188
  env_1.error = e_1;
6559
6189
  env_1.hasError = true;
6560
6190
  } finally {
6561
- __disposeResources3(env_1);
6191
+ __disposeResources2(env_1);
6562
6192
  }
6563
6193
  }
6564
6194
  /**
@@ -6845,7 +6475,7 @@
6845
6475
  if (target) Object.defineProperty(target, contextIn.name, descriptor);
6846
6476
  done = true;
6847
6477
  };
6848
- var __addDisposableResource4 = function(env, value, async2) {
6478
+ var __addDisposableResource3 = function(env, value, async2) {
6849
6479
  if (value !== null && value !== void 0) {
6850
6480
  if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
6851
6481
  var dispose, inner;
@@ -6872,7 +6502,7 @@
6872
6502
  }
6873
6503
  return value;
6874
6504
  };
6875
- var __disposeResources4 = /* @__PURE__ */ function(SuppressedError2) {
6505
+ var __disposeResources3 = /* @__PURE__ */ function(SuppressedError2) {
6876
6506
  return function(env) {
6877
6507
  function fail(e) {
6878
6508
  env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
@@ -7744,7 +7374,7 @@
7744
7374
  const env_1 = { stack: [], error: void 0, hasError: false };
7745
7375
  try {
7746
7376
  const viewport = this.viewport();
7747
- const stack = __addDisposableResource4(env_1, new DisposableStack(), false);
7377
+ const stack = __addDisposableResource3(env_1, new DisposableStack(), false);
7748
7378
  if (viewport && viewport.deviceScaleFactor !== 0) {
7749
7379
  await this.setViewport({ ...viewport, deviceScaleFactor: 0 });
7750
7380
  stack.defer(() => {
@@ -7762,14 +7392,13 @@
7762
7392
  env_1.error = e_1;
7763
7393
  env_1.hasError = true;
7764
7394
  } finally {
7765
- __disposeResources4(env_1);
7395
+ __disposeResources3(env_1);
7766
7396
  }
7767
7397
  }
7768
7398
  async screenshot(userOptions = {}) {
7769
7399
  const env_2 = { stack: [], error: void 0, hasError: false };
7770
7400
  try {
7771
- const _guard = __addDisposableResource4(env_2, await this.browserContext().startScreenshot(), false);
7772
- await this.bringToFront();
7401
+ const _guard = __addDisposableResource3(env_2, await this.browserContext().startScreenshot(), false);
7773
7402
  const options = {
7774
7403
  ...userOptions,
7775
7404
  clip: userOptions.clip ? {
@@ -7809,7 +7438,7 @@
7809
7438
  }
7810
7439
  }
7811
7440
  setDefaultScreenshotOptions(options);
7812
- const stack = __addDisposableResource4(env_2, new AsyncDisposableStack(), true);
7441
+ const stack = __addDisposableResource3(env_2, new AsyncDisposableStack(), true);
7813
7442
  if (options.clip) {
7814
7443
  if (options.fullPage) {
7815
7444
  throw new Error("'clip' and 'fullPage' are mutually exclusive");
@@ -7849,7 +7478,7 @@
7849
7478
  env_2.error = e_2;
7850
7479
  env_2.hasError = true;
7851
7480
  } finally {
7852
- const result_1 = __disposeResources4(env_2);
7481
+ const result_1 = __disposeResources3(env_2);
7853
7482
  if (result_1)
7854
7483
  await result_1;
7855
7484
  }
@@ -8342,19 +7971,38 @@
8342
7971
  element.dispatchEvent(new Event("cancel", { bubbles: true }));
8343
7972
  });
8344
7973
  }
8345
- };
8346
-
8347
- // node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkManagerEvents.js
8348
- init_dirname();
8349
- init_buffer2();
8350
- var NetworkManagerEvent;
8351
- (function(NetworkManagerEvent2) {
8352
- NetworkManagerEvent2.Request = Symbol("NetworkManager.Request");
8353
- NetworkManagerEvent2.RequestServedFromCache = Symbol("NetworkManager.RequestServedFromCache");
8354
- NetworkManagerEvent2.Response = Symbol("NetworkManager.Response");
8355
- NetworkManagerEvent2.RequestFailed = Symbol("NetworkManager.RequestFailed");
8356
- NetworkManagerEvent2.RequestFinished = Symbol("NetworkManager.RequestFinished");
8357
- })(NetworkManagerEvent || (NetworkManagerEvent = {}));
7974
+ };
7975
+
7976
+ // node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkManagerEvents.js
7977
+ init_dirname();
7978
+ init_buffer2();
7979
+ var NetworkManagerEvent;
7980
+ (function(NetworkManagerEvent2) {
7981
+ NetworkManagerEvent2.Request = Symbol("NetworkManager.Request");
7982
+ NetworkManagerEvent2.RequestServedFromCache = Symbol("NetworkManager.RequestServedFromCache");
7983
+ NetworkManagerEvent2.Response = Symbol("NetworkManager.Response");
7984
+ NetworkManagerEvent2.RequestFailed = Symbol("NetworkManager.RequestFailed");
7985
+ NetworkManagerEvent2.RequestFinished = Symbol("NetworkManager.RequestFinished");
7986
+ })(NetworkManagerEvent || (NetworkManagerEvent = {}));
7987
+
7988
+ // node_modules/puppeteer-core/lib/esm/puppeteer/util/ErrorLike.js
7989
+ init_dirname();
7990
+ init_buffer2();
7991
+ function isErrorLike(obj) {
7992
+ return typeof obj === "object" && obj !== null && "name" in obj && "message" in obj;
7993
+ }
7994
+ function rewriteError(error, message, originalMessage) {
7995
+ error.message = message;
7996
+ error.originalMessage = originalMessage ?? error.originalMessage;
7997
+ return error;
7998
+ }
7999
+ function createProtocolErrorMessage(object) {
8000
+ let message = object.error.message;
8001
+ if (object.error && typeof object.error === "object" && "data" in object.error) {
8002
+ message += ` ${object.error.data}`;
8003
+ }
8004
+ return message;
8005
+ }
8358
8006
 
8359
8007
  // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/Binding.js
8360
8008
  init_dirname();
@@ -8402,7 +8050,7 @@
8402
8050
  if (target) Object.defineProperty(target, contextIn.name, descriptor);
8403
8051
  done = true;
8404
8052
  };
8405
- var __addDisposableResource5 = function(env, value, async2) {
8053
+ var __addDisposableResource4 = function(env, value, async2) {
8406
8054
  if (value !== null && value !== void 0) {
8407
8055
  if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
8408
8056
  var dispose, inner;
@@ -8429,7 +8077,7 @@
8429
8077
  }
8430
8078
  return value;
8431
8079
  };
8432
- var __disposeResources5 = /* @__PURE__ */ function(SuppressedError2) {
8080
+ var __disposeResources4 = /* @__PURE__ */ function(SuppressedError2) {
8433
8081
  return function(env) {
8434
8082
  function fail(e) {
8435
8083
  env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
@@ -8546,7 +8194,7 @@
8546
8194
  for (const [key, value] of Object.entries(propertyNames)) {
8547
8195
  const env_1 = { stack: [], error: void 0, hasError: false };
8548
8196
  try {
8549
- const handle = __addDisposableResource5(env_1, results[key], false);
8197
+ const handle = __addDisposableResource4(env_1, results[key], false);
8550
8198
  if (handle) {
8551
8199
  map2.set(value, handle.move());
8552
8200
  }
@@ -8554,7 +8202,7 @@
8554
8202
  env_1.error = e_1;
8555
8203
  env_1.hasError = true;
8556
8204
  } finally {
8557
- __disposeResources5(env_1);
8205
+ __disposeResources4(env_1);
8558
8206
  }
8559
8207
  }
8560
8208
  return map2;
@@ -8572,7 +8220,7 @@
8572
8220
  })();
8573
8221
 
8574
8222
  // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/Binding.js
8575
- var __addDisposableResource6 = function(env, value, async2) {
8223
+ var __addDisposableResource5 = function(env, value, async2) {
8576
8224
  if (value !== null && value !== void 0) {
8577
8225
  if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
8578
8226
  var dispose, inner;
@@ -8597,119 +8245,351 @@
8597
8245
  } else if (async2) {
8598
8246
  env.stack.push({ async: true });
8599
8247
  }
8600
- return value;
8248
+ return value;
8249
+ };
8250
+ var __disposeResources5 = /* @__PURE__ */ function(SuppressedError2) {
8251
+ return function(env) {
8252
+ function fail(e) {
8253
+ env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
8254
+ env.hasError = true;
8255
+ }
8256
+ var r, s = 0;
8257
+ function next() {
8258
+ while (r = env.stack.pop()) {
8259
+ try {
8260
+ if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
8261
+ if (r.dispose) {
8262
+ var result = r.dispose.call(r.value);
8263
+ if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
8264
+ fail(e);
8265
+ return next();
8266
+ });
8267
+ } else s |= 1;
8268
+ } catch (e) {
8269
+ fail(e);
8270
+ }
8271
+ }
8272
+ if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
8273
+ if (env.hasError) throw env.error;
8274
+ }
8275
+ return next();
8276
+ };
8277
+ }(typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) {
8278
+ var e = new Error(message);
8279
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
8280
+ });
8281
+ var Binding = class {
8282
+ #name;
8283
+ #fn;
8284
+ #initSource;
8285
+ constructor(name, fn, initSource) {
8286
+ this.#name = name;
8287
+ this.#fn = fn;
8288
+ this.#initSource = initSource;
8289
+ }
8290
+ get name() {
8291
+ return this.#name;
8292
+ }
8293
+ get initSource() {
8294
+ return this.#initSource;
8295
+ }
8296
+ /**
8297
+ * @param context - Context to run the binding in; the context should have
8298
+ * the binding added to it beforehand.
8299
+ * @param id - ID of the call. This should come from the CDP
8300
+ * `onBindingCalled` response.
8301
+ * @param args - Plain arguments from CDP.
8302
+ */
8303
+ async run(context2, id, args, isTrivial) {
8304
+ const stack = new DisposableStack();
8305
+ try {
8306
+ if (!isTrivial) {
8307
+ const env_1 = { stack: [], error: void 0, hasError: false };
8308
+ try {
8309
+ const handles = __addDisposableResource5(env_1, await context2.evaluateHandle((name, seq) => {
8310
+ return globalThis[name].args.get(seq);
8311
+ }, this.#name, id), false);
8312
+ const properties = await handles.getProperties();
8313
+ for (const [index, handle] of properties) {
8314
+ if (index in args) {
8315
+ switch (handle.remoteObject().subtype) {
8316
+ case "node":
8317
+ args[+index] = handle;
8318
+ break;
8319
+ default:
8320
+ stack.use(handle);
8321
+ }
8322
+ } else {
8323
+ stack.use(handle);
8324
+ }
8325
+ }
8326
+ } catch (e_1) {
8327
+ env_1.error = e_1;
8328
+ env_1.hasError = true;
8329
+ } finally {
8330
+ __disposeResources5(env_1);
8331
+ }
8332
+ }
8333
+ await context2.evaluate((name, seq, result) => {
8334
+ const callbacks = globalThis[name].callbacks;
8335
+ callbacks.get(seq).resolve(result);
8336
+ callbacks.delete(seq);
8337
+ }, this.#name, id, await this.#fn(...args));
8338
+ for (const arg of args) {
8339
+ if (arg instanceof JSHandle) {
8340
+ stack.use(arg);
8341
+ }
8342
+ }
8343
+ } catch (error) {
8344
+ if (isErrorLike(error)) {
8345
+ await context2.evaluate((name, seq, message, stack2) => {
8346
+ const error2 = new Error(message);
8347
+ error2.stack = stack2;
8348
+ const callbacks = globalThis[name].callbacks;
8349
+ callbacks.get(seq).reject(error2);
8350
+ callbacks.delete(seq);
8351
+ }, this.#name, id, error.message, error.stack).catch(debugError);
8352
+ } else {
8353
+ await context2.evaluate((name, seq, error2) => {
8354
+ const callbacks = globalThis[name].callbacks;
8355
+ callbacks.get(seq).reject(error2);
8356
+ callbacks.delete(seq);
8357
+ }, this.#name, id, error).catch(debugError);
8358
+ }
8359
+ }
8360
+ }
8361
+ };
8362
+
8363
+ // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/CDPSession.js
8364
+ init_dirname();
8365
+ init_buffer2();
8366
+
8367
+ // node_modules/puppeteer-core/lib/esm/puppeteer/common/CallbackRegistry.js
8368
+ init_dirname();
8369
+ init_buffer2();
8370
+
8371
+ // node_modules/puppeteer-core/lib/esm/puppeteer/util/incremental-id-generator.js
8372
+ init_dirname();
8373
+ init_buffer2();
8374
+ function createIncrementalIdGenerator() {
8375
+ let id = 0;
8376
+ return () => {
8377
+ return ++id;
8378
+ };
8379
+ }
8380
+
8381
+ // node_modules/puppeteer-core/lib/esm/puppeteer/common/CallbackRegistry.js
8382
+ var CallbackRegistry = class {
8383
+ #callbacks = /* @__PURE__ */ new Map();
8384
+ #idGenerator = createIncrementalIdGenerator();
8385
+ create(label, timeout2, request) {
8386
+ const callback = new Callback(this.#idGenerator(), label, timeout2);
8387
+ this.#callbacks.set(callback.id, callback);
8388
+ try {
8389
+ request(callback.id);
8390
+ } catch (error) {
8391
+ callback.promise.catch(debugError).finally(() => {
8392
+ this.#callbacks.delete(callback.id);
8393
+ });
8394
+ callback.reject(error);
8395
+ throw error;
8396
+ }
8397
+ return callback.promise.finally(() => {
8398
+ this.#callbacks.delete(callback.id);
8399
+ });
8400
+ }
8401
+ reject(id, message, originalMessage) {
8402
+ const callback = this.#callbacks.get(id);
8403
+ if (!callback) {
8404
+ return;
8405
+ }
8406
+ this._reject(callback, message, originalMessage);
8407
+ }
8408
+ rejectRaw(id, error) {
8409
+ const callback = this.#callbacks.get(id);
8410
+ if (!callback) {
8411
+ return;
8412
+ }
8413
+ callback.reject(error);
8414
+ }
8415
+ _reject(callback, errorMessage, originalMessage) {
8416
+ let error;
8417
+ let message;
8418
+ if (errorMessage instanceof ProtocolError) {
8419
+ error = errorMessage;
8420
+ error.cause = callback.error;
8421
+ message = errorMessage.message;
8422
+ } else {
8423
+ error = callback.error;
8424
+ message = errorMessage;
8425
+ }
8426
+ callback.reject(rewriteError(error, `Protocol error (${callback.label}): ${message}`, originalMessage));
8427
+ }
8428
+ resolve(id, value) {
8429
+ const callback = this.#callbacks.get(id);
8430
+ if (!callback) {
8431
+ return;
8432
+ }
8433
+ callback.resolve(value);
8434
+ }
8435
+ clear() {
8436
+ for (const callback of this.#callbacks.values()) {
8437
+ this._reject(callback, new TargetCloseError("Target closed"));
8438
+ }
8439
+ this.#callbacks.clear();
8440
+ }
8441
+ /**
8442
+ * @internal
8443
+ */
8444
+ getPendingProtocolErrors() {
8445
+ const result = [];
8446
+ for (const callback of this.#callbacks.values()) {
8447
+ result.push(new Error(`${callback.label} timed out. Trace: ${callback.error.stack}`));
8448
+ }
8449
+ return result;
8450
+ }
8451
+ };
8452
+ var Callback = class {
8453
+ #id;
8454
+ #error = new ProtocolError();
8455
+ #deferred = Deferred.create();
8456
+ #timer;
8457
+ #label;
8458
+ constructor(id, label, timeout2) {
8459
+ this.#id = id;
8460
+ this.#label = label;
8461
+ if (timeout2) {
8462
+ this.#timer = setTimeout(() => {
8463
+ this.#deferred.reject(rewriteError(this.#error, `${label} timed out. Increase the 'protocolTimeout' setting in launch/connect calls for a higher timeout if needed.`));
8464
+ }, timeout2);
8465
+ }
8466
+ }
8467
+ resolve(value) {
8468
+ clearTimeout(this.#timer);
8469
+ this.#deferred.resolve(value);
8470
+ }
8471
+ reject(error) {
8472
+ clearTimeout(this.#timer);
8473
+ this.#deferred.reject(error);
8474
+ }
8475
+ get id() {
8476
+ return this.#id;
8477
+ }
8478
+ get promise() {
8479
+ return this.#deferred.valueOrThrow();
8480
+ }
8481
+ get error() {
8482
+ return this.#error;
8483
+ }
8484
+ get label() {
8485
+ return this.#label;
8486
+ }
8601
8487
  };
8602
- var __disposeResources6 = /* @__PURE__ */ function(SuppressedError2) {
8603
- return function(env) {
8604
- function fail(e) {
8605
- env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
8606
- env.hasError = true;
8607
- }
8608
- var r, s = 0;
8609
- function next() {
8610
- while (r = env.stack.pop()) {
8611
- try {
8612
- if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
8613
- if (r.dispose) {
8614
- var result = r.dispose.call(r.value);
8615
- if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
8616
- fail(e);
8617
- return next();
8618
- });
8619
- } else s |= 1;
8620
- } catch (e) {
8621
- fail(e);
8622
- }
8623
- }
8624
- if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
8625
- if (env.hasError) throw env.error;
8626
- }
8627
- return next();
8628
- };
8629
- }(typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) {
8630
- var e = new Error(message);
8631
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
8632
- });
8633
- var Binding = class {
8634
- #name;
8635
- #fn;
8636
- #initSource;
8637
- constructor(name, fn, initSource) {
8638
- this.#name = name;
8639
- this.#fn = fn;
8640
- this.#initSource = initSource;
8488
+
8489
+ // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/CDPSession.js
8490
+ var CdpCDPSession = class extends CDPSession {
8491
+ #sessionId;
8492
+ #targetType;
8493
+ #callbacks = new CallbackRegistry();
8494
+ #connection;
8495
+ #parentSessionId;
8496
+ #target;
8497
+ #rawErrors = false;
8498
+ /**
8499
+ * @internal
8500
+ */
8501
+ constructor(connection, targetType, sessionId, parentSessionId, rawErrors) {
8502
+ super();
8503
+ this.#connection = connection;
8504
+ this.#targetType = targetType;
8505
+ this.#sessionId = sessionId;
8506
+ this.#parentSessionId = parentSessionId;
8507
+ this.#rawErrors = rawErrors;
8641
8508
  }
8642
- get name() {
8643
- return this.#name;
8509
+ /**
8510
+ * Sets the {@link CdpTarget} associated with the session instance.
8511
+ *
8512
+ * @internal
8513
+ */
8514
+ _setTarget(target) {
8515
+ this.#target = target;
8644
8516
  }
8645
- get initSource() {
8646
- return this.#initSource;
8517
+ /**
8518
+ * Gets the {@link CdpTarget} associated with the session instance.
8519
+ *
8520
+ * @internal
8521
+ */
8522
+ _target() {
8523
+ assert(this.#target, "Target must exist");
8524
+ return this.#target;
8525
+ }
8526
+ connection() {
8527
+ return this.#connection;
8528
+ }
8529
+ parentSession() {
8530
+ if (!this.#parentSessionId) {
8531
+ return this;
8532
+ }
8533
+ const parent = this.#connection?.session(this.#parentSessionId);
8534
+ return parent ?? void 0;
8535
+ }
8536
+ send(method, params, options) {
8537
+ if (!this.#connection) {
8538
+ return Promise.reject(new TargetCloseError(`Protocol error (${method}): Session closed. Most likely the ${this.#targetType} has been closed.`));
8539
+ }
8540
+ return this.#connection._rawSend(this.#callbacks, method, params, this.#sessionId, options);
8647
8541
  }
8648
8542
  /**
8649
- * @param context - Context to run the binding in; the context should have
8650
- * the binding added to it beforehand.
8651
- * @param id - ID of the call. This should come from the CDP
8652
- * `onBindingCalled` response.
8653
- * @param args - Plain arguments from CDP.
8543
+ * @internal
8654
8544
  */
8655
- async run(context2, id, args, isTrivial) {
8656
- const stack = new DisposableStack();
8657
- try {
8658
- if (!isTrivial) {
8659
- const env_1 = { stack: [], error: void 0, hasError: false };
8660
- try {
8661
- const handles = __addDisposableResource6(env_1, await context2.evaluateHandle((name, seq) => {
8662
- return globalThis[name].args.get(seq);
8663
- }, this.#name, id), false);
8664
- const properties = await handles.getProperties();
8665
- for (const [index, handle] of properties) {
8666
- if (index in args) {
8667
- switch (handle.remoteObject().subtype) {
8668
- case "node":
8669
- args[+index] = handle;
8670
- break;
8671
- default:
8672
- stack.use(handle);
8673
- }
8674
- } else {
8675
- stack.use(handle);
8676
- }
8677
- }
8678
- } catch (e_1) {
8679
- env_1.error = e_1;
8680
- env_1.hasError = true;
8681
- } finally {
8682
- __disposeResources6(env_1);
8683
- }
8684
- }
8685
- await context2.evaluate((name, seq, result) => {
8686
- const callbacks = globalThis[name].callbacks;
8687
- callbacks.get(seq).resolve(result);
8688
- callbacks.delete(seq);
8689
- }, this.#name, id, await this.#fn(...args));
8690
- for (const arg of args) {
8691
- if (arg instanceof JSHandle) {
8692
- stack.use(arg);
8545
+ _onMessage(object) {
8546
+ if (object.id) {
8547
+ if (object.error) {
8548
+ if (this.#rawErrors) {
8549
+ this.#callbacks.rejectRaw(object.id, object.error);
8550
+ } else {
8551
+ this.#callbacks.reject(object.id, createProtocolErrorMessage(object), object.error.message);
8693
8552
  }
8694
- }
8695
- } catch (error) {
8696
- if (isErrorLike(error)) {
8697
- await context2.evaluate((name, seq, message, stack2) => {
8698
- const error2 = new Error(message);
8699
- error2.stack = stack2;
8700
- const callbacks = globalThis[name].callbacks;
8701
- callbacks.get(seq).reject(error2);
8702
- callbacks.delete(seq);
8703
- }, this.#name, id, error.message, error.stack).catch(debugError);
8704
8553
  } else {
8705
- await context2.evaluate((name, seq, error2) => {
8706
- const callbacks = globalThis[name].callbacks;
8707
- callbacks.get(seq).reject(error2);
8708
- callbacks.delete(seq);
8709
- }, this.#name, id, error).catch(debugError);
8554
+ this.#callbacks.resolve(object.id, object.result);
8710
8555
  }
8556
+ } else {
8557
+ assert(!object.id);
8558
+ this.emit(object.method, object.params);
8711
8559
  }
8712
8560
  }
8561
+ /**
8562
+ * Detaches the cdpSession from the target. Once detached, the cdpSession object
8563
+ * won't emit any events and can't be used to send messages.
8564
+ */
8565
+ async detach() {
8566
+ if (!this.#connection) {
8567
+ throw new Error(`Session already detached. Most likely the ${this.#targetType} has been closed.`);
8568
+ }
8569
+ await this.#connection.send("Target.detachFromTarget", {
8570
+ sessionId: this.#sessionId
8571
+ });
8572
+ }
8573
+ /**
8574
+ * @internal
8575
+ */
8576
+ _onClosed() {
8577
+ this.#callbacks.clear();
8578
+ this.#connection = void 0;
8579
+ this.emit(CDPSessionEvent.Disconnected, void 0);
8580
+ }
8581
+ /**
8582
+ * Returns the session's id.
8583
+ */
8584
+ id() {
8585
+ return this.#sessionId;
8586
+ }
8587
+ /**
8588
+ * @internal
8589
+ */
8590
+ getPendingProtocolErrors() {
8591
+ return this.#callbacks.getPendingProtocolErrors();
8592
+ }
8713
8593
  };
8714
8594
 
8715
8595
  // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/Connection.js
@@ -8725,9 +8605,12 @@
8725
8605
  #sessions = /* @__PURE__ */ new Map();
8726
8606
  #closed = false;
8727
8607
  #manuallyAttached = /* @__PURE__ */ new Set();
8728
- #callbacks = new CallbackRegistry();
8729
- constructor(url, transport, delay = 0, timeout2) {
8608
+ #callbacks;
8609
+ #rawErrors = false;
8610
+ constructor(url, transport, delay = 0, timeout2, rawErrors = false) {
8730
8611
  super();
8612
+ this.#rawErrors = rawErrors;
8613
+ this.#callbacks = new CallbackRegistry();
8731
8614
  this.#url = url;
8732
8615
  this.#delay = delay;
8733
8616
  this.#timeout = timeout2 ?? 18e4;
@@ -8809,7 +8692,7 @@
8809
8692
  const object = JSON.parse(message);
8810
8693
  if (object.method === "Target.attachedToTarget") {
8811
8694
  const sessionId = object.params.sessionId;
8812
- const session = new CdpCDPSession(this, object.params.targetInfo.type, sessionId, object.sessionId);
8695
+ const session = new CdpCDPSession(this, object.params.targetInfo.type, sessionId, object.sessionId, this.#rawErrors);
8813
8696
  this.#sessions.set(sessionId, session);
8814
8697
  this.emit(CDPSessionEvent.SessionAttached, session);
8815
8698
  const parentSession = this.#sessions.get(object.sessionId);
@@ -8835,7 +8718,11 @@
8835
8718
  }
8836
8719
  } else if (object.id) {
8837
8720
  if (object.error) {
8838
- this.#callbacks.reject(object.id, createProtocolErrorMessage(object), object.error.message);
8721
+ if (this.#rawErrors) {
8722
+ this.#callbacks.rejectRaw(object.id, object.error);
8723
+ } else {
8724
+ this.#callbacks.reject(object.id, createProtocolErrorMessage(object), object.error.message);
8725
+ }
8839
8726
  } else {
8840
8727
  this.#callbacks.resolve(object.id, object.result);
8841
8728
  }
@@ -9939,7 +9826,7 @@
9939
9826
  // node_modules/puppeteer-core/lib/esm/puppeteer/common/HandleIterator.js
9940
9827
  init_dirname();
9941
9828
  init_buffer2();
9942
- var __addDisposableResource7 = function(env, value, async2) {
9829
+ var __addDisposableResource6 = function(env, value, async2) {
9943
9830
  if (value !== null && value !== void 0) {
9944
9831
  if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
9945
9832
  var dispose, inner;
@@ -9966,7 +9853,7 @@
9966
9853
  }
9967
9854
  return value;
9968
9855
  };
9969
- var __disposeResources7 = /* @__PURE__ */ function(SuppressedError2) {
9856
+ var __disposeResources6 = /* @__PURE__ */ function(SuppressedError2) {
9970
9857
  return function(env) {
9971
9858
  function fail(e) {
9972
9859
  env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
@@ -10001,7 +9888,7 @@
10001
9888
  async function* fastTransposeIteratorHandle(iterator2, size) {
10002
9889
  const env_1 = { stack: [], error: void 0, hasError: false };
10003
9890
  try {
10004
- const array = __addDisposableResource7(env_1, await iterator2.evaluateHandle(async (iterator3, size2) => {
9891
+ const array = __addDisposableResource6(env_1, await iterator2.evaluateHandle(async (iterator3, size2) => {
10005
9892
  const results = [];
10006
9893
  while (results.length < size2) {
10007
9894
  const result = await iterator3.next();
@@ -10014,18 +9901,18 @@
10014
9901
  }, size), false);
10015
9902
  const properties = await array.getProperties();
10016
9903
  const handles = properties.values();
10017
- const stack = __addDisposableResource7(env_1, new DisposableStack(), false);
9904
+ const stack = __addDisposableResource6(env_1, new DisposableStack(), false);
10018
9905
  stack.defer(() => {
10019
9906
  for (const handle_1 of handles) {
10020
9907
  const env_2 = { stack: [], error: void 0, hasError: false };
10021
9908
  try {
10022
- const handle = __addDisposableResource7(env_2, handle_1, false);
9909
+ const handle = __addDisposableResource6(env_2, handle_1, false);
10023
9910
  handle[disposeSymbol]();
10024
9911
  } catch (e_2) {
10025
9912
  env_2.error = e_2;
10026
9913
  env_2.hasError = true;
10027
9914
  } finally {
10028
- __disposeResources7(env_2);
9915
+ __disposeResources6(env_2);
10029
9916
  }
10030
9917
  }
10031
9918
  });
@@ -10035,7 +9922,7 @@
10035
9922
  env_1.error = e_1;
10036
9923
  env_1.hasError = true;
10037
9924
  } finally {
10038
- __disposeResources7(env_1);
9925
+ __disposeResources6(env_1);
10039
9926
  }
10040
9927
  }
10041
9928
  async function* transposeIteratorHandle(iterator2) {
@@ -10047,7 +9934,7 @@
10047
9934
  async function* transposeIterableHandle(handle) {
10048
9935
  const env_3 = { stack: [], error: void 0, hasError: false };
10049
9936
  try {
10050
- const generatorHandle = __addDisposableResource7(env_3, await handle.evaluateHandle((iterable) => {
9937
+ const generatorHandle = __addDisposableResource6(env_3, await handle.evaluateHandle((iterable) => {
10051
9938
  return async function* () {
10052
9939
  yield* iterable;
10053
9940
  }();
@@ -10057,7 +9944,7 @@
10057
9944
  env_3.error = e_3;
10058
9945
  env_3.hasError = true;
10059
9946
  } finally {
10060
- __disposeResources7(env_3);
9947
+ __disposeResources6(env_3);
10061
9948
  }
10062
9949
  }
10063
9950
 
@@ -10078,7 +9965,7 @@
10078
9965
  };
10079
9966
 
10080
9967
  // node_modules/puppeteer-core/lib/esm/puppeteer/common/QueryHandler.js
10081
- var __addDisposableResource8 = function(env, value, async2) {
9968
+ var __addDisposableResource7 = function(env, value, async2) {
10082
9969
  if (value !== null && value !== void 0) {
10083
9970
  if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
10084
9971
  var dispose, inner;
@@ -10105,7 +9992,7 @@
10105
9992
  }
10106
9993
  return value;
10107
9994
  };
10108
- var __disposeResources8 = /* @__PURE__ */ function(SuppressedError2) {
9995
+ var __disposeResources7 = /* @__PURE__ */ function(SuppressedError2) {
10109
9996
  return function(env) {
10110
9997
  function fail(e) {
10111
9998
  env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
@@ -10183,7 +10070,7 @@
10183
10070
  static async *queryAll(element, selector) {
10184
10071
  const env_1 = { stack: [], error: void 0, hasError: false };
10185
10072
  try {
10186
- const handle = __addDisposableResource8(env_1, await element.evaluateHandle(this._querySelectorAll, selector, LazyArg.create((context2) => {
10073
+ const handle = __addDisposableResource7(env_1, await element.evaluateHandle(this._querySelectorAll, selector, LazyArg.create((context2) => {
10187
10074
  return context2.puppeteerUtil;
10188
10075
  })), false);
10189
10076
  yield* transposeIterableHandle(handle);
@@ -10191,7 +10078,7 @@
10191
10078
  env_1.error = e_1;
10192
10079
  env_1.hasError = true;
10193
10080
  } finally {
10194
- __disposeResources8(env_1);
10081
+ __disposeResources7(env_1);
10195
10082
  }
10196
10083
  }
10197
10084
  /**
@@ -10202,7 +10089,7 @@
10202
10089
  static async queryOne(element, selector) {
10203
10090
  const env_2 = { stack: [], error: void 0, hasError: false };
10204
10091
  try {
10205
- const result = __addDisposableResource8(env_2, await element.evaluateHandle(this._querySelector, selector, LazyArg.create((context2) => {
10092
+ const result = __addDisposableResource7(env_2, await element.evaluateHandle(this._querySelector, selector, LazyArg.create((context2) => {
10206
10093
  return context2.puppeteerUtil;
10207
10094
  })), false);
10208
10095
  if (!(_isElementHandle in result)) {
@@ -10213,7 +10100,7 @@
10213
10100
  env_2.error = e_2;
10214
10101
  env_2.hasError = true;
10215
10102
  } finally {
10216
- __disposeResources8(env_2);
10103
+ __disposeResources7(env_2);
10217
10104
  }
10218
10105
  }
10219
10106
  /**
@@ -10227,7 +10114,7 @@
10227
10114
  const env_3 = { stack: [], error: void 0, hasError: false };
10228
10115
  try {
10229
10116
  let frame;
10230
- const element = __addDisposableResource8(env_3, await (async () => {
10117
+ const element = __addDisposableResource7(env_3, await (async () => {
10231
10118
  if (!(_isElementHandle in elementOrFrame)) {
10232
10119
  frame = elementOrFrame;
10233
10120
  return;
@@ -10241,7 +10128,7 @@
10241
10128
  const env_4 = { stack: [], error: void 0, hasError: false };
10242
10129
  try {
10243
10130
  signal?.throwIfAborted();
10244
- const handle = __addDisposableResource8(env_4, await frame.isolatedRealm().waitForFunction(async (PuppeteerUtil, query, selector2, root, visible2) => {
10131
+ const handle = __addDisposableResource7(env_4, await frame.isolatedRealm().waitForFunction(async (PuppeteerUtil, query, selector2, root, visible2) => {
10245
10132
  const querySelector = PuppeteerUtil.createFunction(query);
10246
10133
  const node = await querySelector(root ?? document, selector2, PuppeteerUtil);
10247
10134
  return PuppeteerUtil.checkVisibility(node, visible2);
@@ -10264,7 +10151,7 @@
10264
10151
  env_4.error = e_3;
10265
10152
  env_4.hasError = true;
10266
10153
  } finally {
10267
- __disposeResources8(env_4);
10154
+ __disposeResources7(env_4);
10268
10155
  }
10269
10156
  } catch (error) {
10270
10157
  if (!isErrorLike(error)) {
@@ -10280,7 +10167,7 @@
10280
10167
  env_3.error = e_4;
10281
10168
  env_3.hasError = true;
10282
10169
  } finally {
10283
- __disposeResources8(env_3);
10170
+ __disposeResources7(env_3);
10284
10171
  }
10285
10172
  }
10286
10173
  };
@@ -10673,32 +10560,22 @@
10673
10560
  }
10674
10561
  return tokens;
10675
10562
  }
10676
- function* flatten(node, parent) {
10677
- switch (node.type) {
10563
+ function stringify(listOrNode) {
10564
+ if (Array.isArray(listOrNode)) {
10565
+ return listOrNode.map((token) => token.content).join("");
10566
+ }
10567
+ switch (listOrNode.type) {
10678
10568
  case "list":
10679
- for (let child of node.list) {
10680
- yield* flatten(child, node);
10681
- }
10682
- break;
10569
+ return listOrNode.list.map(stringify).join(",");
10570
+ case "relative":
10571
+ return listOrNode.combinator + stringify(listOrNode.right);
10683
10572
  case "complex":
10684
- yield* flatten(node.left, node);
10685
- yield* flatten(node.right, node);
10686
- break;
10573
+ return stringify(listOrNode.left) + listOrNode.combinator + stringify(listOrNode.right);
10687
10574
  case "compound":
10688
- yield* node.list.map((token) => [token, node]);
10689
- break;
10575
+ return listOrNode.list.map(stringify).join("");
10690
10576
  default:
10691
- yield [node, parent];
10692
- }
10693
- }
10694
- function stringify(listOrNode) {
10695
- let tokens;
10696
- if (Array.isArray(listOrNode)) {
10697
- tokens = listOrNode;
10698
- } else {
10699
- tokens = [...flatten(listOrNode)].map(([token]) => token);
10577
+ return listOrNode.content;
10700
10578
  }
10701
- return tokens.map((token) => token.content).join("");
10702
10579
  }
10703
10580
 
10704
10581
  // node_modules/puppeteer-core/lib/esm/puppeteer/common/PSelectorParser.js
@@ -10915,7 +10792,7 @@
10915
10792
  if (target) Object.defineProperty(target, contextIn.name, descriptor);
10916
10793
  done = true;
10917
10794
  };
10918
- var __addDisposableResource9 = function(env, value, async2) {
10795
+ var __addDisposableResource8 = function(env, value, async2) {
10919
10796
  if (value !== null && value !== void 0) {
10920
10797
  if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
10921
10798
  var dispose, inner;
@@ -10942,7 +10819,7 @@
10942
10819
  }
10943
10820
  return value;
10944
10821
  };
10945
- var __disposeResources9 = /* @__PURE__ */ function(SuppressedError2) {
10822
+ var __disposeResources8 = /* @__PURE__ */ function(SuppressedError2) {
10946
10823
  return function(env) {
10947
10824
  function fail(e) {
10948
10825
  env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
@@ -11105,13 +10982,13 @@
11105
10982
  if (!parentFrame) {
11106
10983
  return null;
11107
10984
  }
11108
- const list = __addDisposableResource9(env_1, await parentFrame.isolatedRealm().evaluateHandle(() => {
10985
+ const list = __addDisposableResource8(env_1, await parentFrame.isolatedRealm().evaluateHandle(() => {
11109
10986
  return document.querySelectorAll("iframe,frame");
11110
10987
  }), false);
11111
10988
  for await (const iframe_1 of transposeIterableHandle(list)) {
11112
10989
  const env_2 = { stack: [], error: void 0, hasError: false };
11113
10990
  try {
11114
- const iframe = __addDisposableResource9(env_2, iframe_1, false);
10991
+ const iframe = __addDisposableResource8(env_2, iframe_1, false);
11115
10992
  const frame = await iframe.contentFrame();
11116
10993
  if (frame?._id === this._id) {
11117
10994
  return await parentFrame.mainRealm().adoptHandle(iframe);
@@ -11120,7 +10997,7 @@
11120
10997
  env_2.error = e_1;
11121
10998
  env_2.hasError = true;
11122
10999
  } finally {
11123
- __disposeResources9(env_2);
11000
+ __disposeResources8(env_2);
11124
11001
  }
11125
11002
  }
11126
11003
  return null;
@@ -11128,7 +11005,7 @@
11128
11005
  env_1.error = e_2;
11129
11006
  env_1.hasError = true;
11130
11007
  } finally {
11131
- __disposeResources9(env_1);
11008
+ __disposeResources8(env_1);
11132
11009
  }
11133
11010
  }
11134
11011
  /**
@@ -11532,7 +11409,7 @@
11532
11409
  async click(selector, options = {}) {
11533
11410
  const env_3 = { stack: [], error: void 0, hasError: false };
11534
11411
  try {
11535
- const handle = __addDisposableResource9(env_3, await this.$(selector), false);
11412
+ const handle = __addDisposableResource8(env_3, await this.$(selector), false);
11536
11413
  assert(handle, `No element found for selector: ${selector}`);
11537
11414
  await handle.click(options);
11538
11415
  await handle.dispose();
@@ -11540,7 +11417,7 @@
11540
11417
  env_3.error = e_3;
11541
11418
  env_3.hasError = true;
11542
11419
  } finally {
11543
- __disposeResources9(env_3);
11420
+ __disposeResources8(env_3);
11544
11421
  }
11545
11422
  }
11546
11423
  /**
@@ -11552,14 +11429,14 @@
11552
11429
  async focus(selector) {
11553
11430
  const env_4 = { stack: [], error: void 0, hasError: false };
11554
11431
  try {
11555
- const handle = __addDisposableResource9(env_4, await this.$(selector), false);
11432
+ const handle = __addDisposableResource8(env_4, await this.$(selector), false);
11556
11433
  assert(handle, `No element found for selector: ${selector}`);
11557
11434
  await handle.focus();
11558
11435
  } catch (e_4) {
11559
11436
  env_4.error = e_4;
11560
11437
  env_4.hasError = true;
11561
11438
  } finally {
11562
- __disposeResources9(env_4);
11439
+ __disposeResources8(env_4);
11563
11440
  }
11564
11441
  }
11565
11442
  /**
@@ -11572,14 +11449,14 @@
11572
11449
  async hover(selector) {
11573
11450
  const env_5 = { stack: [], error: void 0, hasError: false };
11574
11451
  try {
11575
- const handle = __addDisposableResource9(env_5, await this.$(selector), false);
11452
+ const handle = __addDisposableResource8(env_5, await this.$(selector), false);
11576
11453
  assert(handle, `No element found for selector: ${selector}`);
11577
11454
  await handle.hover();
11578
11455
  } catch (e_5) {
11579
11456
  env_5.error = e_5;
11580
11457
  env_5.hasError = true;
11581
11458
  } finally {
11582
- __disposeResources9(env_5);
11459
+ __disposeResources8(env_5);
11583
11460
  }
11584
11461
  }
11585
11462
  /**
@@ -11603,14 +11480,14 @@
11603
11480
  async select(selector, ...values) {
11604
11481
  const env_6 = { stack: [], error: void 0, hasError: false };
11605
11482
  try {
11606
- const handle = __addDisposableResource9(env_6, await this.$(selector), false);
11483
+ const handle = __addDisposableResource8(env_6, await this.$(selector), false);
11607
11484
  assert(handle, `No element found for selector: ${selector}`);
11608
11485
  return await handle.select(...values);
11609
11486
  } catch (e_6) {
11610
11487
  env_6.error = e_6;
11611
11488
  env_6.hasError = true;
11612
11489
  } finally {
11613
- __disposeResources9(env_6);
11490
+ __disposeResources8(env_6);
11614
11491
  }
11615
11492
  }
11616
11493
  /**
@@ -11622,14 +11499,14 @@
11622
11499
  async tap(selector) {
11623
11500
  const env_7 = { stack: [], error: void 0, hasError: false };
11624
11501
  try {
11625
- const handle = __addDisposableResource9(env_7, await this.$(selector), false);
11502
+ const handle = __addDisposableResource8(env_7, await this.$(selector), false);
11626
11503
  assert(handle, `No element found for selector: ${selector}`);
11627
11504
  await handle.tap();
11628
11505
  } catch (e_7) {
11629
11506
  env_7.error = e_7;
11630
11507
  env_7.hasError = true;
11631
11508
  } finally {
11632
- __disposeResources9(env_7);
11509
+ __disposeResources8(env_7);
11633
11510
  }
11634
11511
  }
11635
11512
  /**
@@ -11656,14 +11533,14 @@
11656
11533
  async type(selector, text, options) {
11657
11534
  const env_8 = { stack: [], error: void 0, hasError: false };
11658
11535
  try {
11659
- const handle = __addDisposableResource9(env_8, await this.$(selector), false);
11536
+ const handle = __addDisposableResource8(env_8, await this.$(selector), false);
11660
11537
  assert(handle, `No element found for selector: ${selector}`);
11661
11538
  await handle.type(text, options);
11662
11539
  } catch (e_8) {
11663
11540
  env_8.error = e_8;
11664
11541
  env_8.hasError = true;
11665
11542
  } finally {
11666
- __disposeResources9(env_8);
11543
+ __disposeResources8(env_8);
11667
11544
  }
11668
11545
  }
11669
11546
  /**
@@ -11941,7 +11818,7 @@
11941
11818
  if (target) Object.defineProperty(target, contextIn.name, descriptor);
11942
11819
  done = true;
11943
11820
  };
11944
- var __addDisposableResource10 = function(env, value, async2) {
11821
+ var __addDisposableResource9 = function(env, value, async2) {
11945
11822
  if (value !== null && value !== void 0) {
11946
11823
  if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
11947
11824
  var dispose, inner;
@@ -11968,7 +11845,7 @@
11968
11845
  }
11969
11846
  return value;
11970
11847
  };
11971
- var __disposeResources10 = /* @__PURE__ */ function(SuppressedError2) {
11848
+ var __disposeResources9 = /* @__PURE__ */ function(SuppressedError2) {
11972
11849
  return function(env) {
11973
11850
  function fail(e) {
11974
11851
  env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
@@ -12341,7 +12218,7 @@
12341
12218
  const env_1 = { stack: [], error: void 0, hasError: false };
12342
12219
  try {
12343
12220
  pageFunction = withSourcePuppeteerURLIfNone(this.$eval.name, pageFunction);
12344
- const elementHandle = __addDisposableResource10(env_1, await this.$(selector), false);
12221
+ const elementHandle = __addDisposableResource9(env_1, await this.$(selector), false);
12345
12222
  if (!elementHandle) {
12346
12223
  throw new Error(`Error: failed to find element matching selector "${selector}"`);
12347
12224
  }
@@ -12350,7 +12227,7 @@
12350
12227
  env_1.error = e_1;
12351
12228
  env_1.hasError = true;
12352
12229
  } finally {
12353
- __disposeResources10(env_1);
12230
+ __disposeResources9(env_1);
12354
12231
  }
12355
12232
  }
12356
12233
  /**
@@ -12405,7 +12282,7 @@
12405
12282
  try {
12406
12283
  pageFunction = withSourcePuppeteerURLIfNone(this.$$eval.name, pageFunction);
12407
12284
  const results = await this.$$(selector);
12408
- const elements = __addDisposableResource10(env_2, await this.evaluateHandle((_, ...elements2) => {
12285
+ const elements = __addDisposableResource9(env_2, await this.evaluateHandle((_, ...elements2) => {
12409
12286
  return elements2;
12410
12287
  }, ...results), false);
12411
12288
  const [result] = await Promise.all([
@@ -12419,7 +12296,7 @@
12419
12296
  env_2.error = e_2;
12420
12297
  env_2.hasError = true;
12421
12298
  } finally {
12422
- __disposeResources10(env_2);
12299
+ __disposeResources9(env_2);
12423
12300
  }
12424
12301
  }
12425
12302
  /**
@@ -12813,7 +12690,7 @@
12813
12690
  while (parentFrame = frame?.parentFrame()) {
12814
12691
  const env_3 = { stack: [], error: void 0, hasError: false };
12815
12692
  try {
12816
- const handle = __addDisposableResource10(env_3, await frame.frameElement(), false);
12693
+ const handle = __addDisposableResource9(env_3, await frame.frameElement(), false);
12817
12694
  if (!handle) {
12818
12695
  throw new Error("Unsupported frame type");
12819
12696
  }
@@ -12841,7 +12718,7 @@
12841
12718
  env_3.error = e_3;
12842
12719
  env_3.hasError = true;
12843
12720
  } finally {
12844
- __disposeResources10(env_3);
12721
+ __disposeResources9(env_3);
12845
12722
  }
12846
12723
  }
12847
12724
  const box = boxes.find((box2) => {
@@ -13003,7 +12880,7 @@
13003
12880
  while (parentFrame = frame?.parentFrame()) {
13004
12881
  const env_4 = { stack: [], error: void 0, hasError: false };
13005
12882
  try {
13006
- const handle = __addDisposableResource10(env_4, await frame.frameElement(), false);
12883
+ const handle = __addDisposableResource9(env_4, await frame.frameElement(), false);
13007
12884
  if (!handle) {
13008
12885
  throw new Error("Unsupported frame type");
13009
12886
  }
@@ -13028,7 +12905,7 @@
13028
12905
  env_4.error = e_4;
13029
12906
  env_4.hasError = true;
13030
12907
  } finally {
13031
- __disposeResources10(env_4);
12908
+ __disposeResources9(env_4);
13032
12909
  }
13033
12910
  }
13034
12911
  return point;
@@ -13107,7 +12984,7 @@
13107
12984
  try {
13108
12985
  await this.assertConnectedElement();
13109
12986
  const handle = await this.#asSVGElementHandle();
13110
- const target = __addDisposableResource10(env_5, handle && await handle.#getOwnerSVGElement(), false);
12987
+ const target = __addDisposableResource9(env_5, handle && await handle.#getOwnerSVGElement(), false);
13111
12988
  return await (target ?? this).evaluate(async (element, threshold) => {
13112
12989
  const visibleRatio = await new Promise((resolve) => {
13113
12990
  const observer = new IntersectionObserver((entries) => {
@@ -13122,7 +12999,7 @@
13122
12999
  env_5.error = e_5;
13123
13000
  env_5.hasError = true;
13124
13001
  } finally {
13125
- __disposeResources10(env_5);
13002
+ __disposeResources9(env_5);
13126
13003
  }
13127
13004
  }
13128
13005
  /**
@@ -13458,9 +13335,9 @@
13458
13335
  __esDecorate6(this, null, _autofill_decorators, { kind: "method", name: "autofill", static: false, private: false, access: { has: (obj) => "autofill" in obj, get: (obj) => obj.autofill }, metadata: _metadata }, null, _instanceExtraInitializers);
13459
13336
  if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
13460
13337
  }
13338
+ #backendNodeId = __runInitializers6(this, _instanceExtraInitializers);
13461
13339
  constructor(world, remoteObject) {
13462
13340
  super(new CdpJSHandle(world, remoteObject));
13463
- __runInitializers6(this, _instanceExtraInitializers);
13464
13341
  }
13465
13342
  get realm() {
13466
13343
  return this.handle.realm;
@@ -13563,11 +13440,21 @@
13563
13440
  return this.realm.adoptBackendNode(node.backendDOMNodeId);
13564
13441
  });
13565
13442
  }
13443
+ async backendNodeId() {
13444
+ if (this.#backendNodeId) {
13445
+ return this.#backendNodeId;
13446
+ }
13447
+ const { node } = await this.client.send("DOM.describeNode", {
13448
+ objectId: this.handle.id
13449
+ });
13450
+ this.#backendNodeId = node.backendNodeId;
13451
+ return this.#backendNodeId;
13452
+ }
13566
13453
  };
13567
13454
  })();
13568
13455
 
13569
13456
  // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/ExecutionContext.js
13570
- var __addDisposableResource11 = function(env, value, async2) {
13457
+ var __addDisposableResource10 = function(env, value, async2) {
13571
13458
  if (value !== null && value !== void 0) {
13572
13459
  if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
13573
13460
  var dispose, inner;
@@ -13594,7 +13481,7 @@
13594
13481
  }
13595
13482
  return value;
13596
13483
  };
13597
- var __disposeResources11 = /* @__PURE__ */ function(SuppressedError2) {
13484
+ var __disposeResources10 = /* @__PURE__ */ function(SuppressedError2) {
13598
13485
  return function(env) {
13599
13486
  function fail(e) {
13600
13487
  env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
@@ -13672,7 +13559,7 @@
13672
13559
  if (this.#bindings.has(binding.name)) {
13673
13560
  return;
13674
13561
  }
13675
- const _ = __addDisposableResource11(env_1, await this.#mutex.acquire(), false);
13562
+ const _ = __addDisposableResource10(env_1, await this.#mutex.acquire(), false);
13676
13563
  try {
13677
13564
  await this.#client.send("Runtime.addBinding", this.#name ? {
13678
13565
  name: CDP_BINDING_PREFIX + binding.name,
@@ -13698,7 +13585,7 @@
13698
13585
  env_1.error = e_1;
13699
13586
  env_1.hasError = true;
13700
13587
  } finally {
13701
- __disposeResources11(env_1);
13588
+ __disposeResources10(env_1);
13702
13589
  }
13703
13590
  }
13704
13591
  async #onBindingCalled(event) {
@@ -18032,10 +17919,45 @@ ${sourceUrlComment}
18032
17919
  }
18033
17920
  };
18034
17921
 
18035
- // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/WebWorker.js
18036
- init_dirname();
18037
- init_buffer2();
18038
-
17922
+ // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/WebWorker.js
17923
+ init_dirname();
17924
+ init_buffer2();
17925
+
17926
+ // node_modules/puppeteer-core/lib/esm/puppeteer/api/Target.js
17927
+ init_dirname();
17928
+ init_buffer2();
17929
+ var TargetType;
17930
+ (function(TargetType2) {
17931
+ TargetType2["PAGE"] = "page";
17932
+ TargetType2["BACKGROUND_PAGE"] = "background_page";
17933
+ TargetType2["SERVICE_WORKER"] = "service_worker";
17934
+ TargetType2["SHARED_WORKER"] = "shared_worker";
17935
+ TargetType2["BROWSER"] = "browser";
17936
+ TargetType2["WEBVIEW"] = "webview";
17937
+ TargetType2["OTHER"] = "other";
17938
+ TargetType2["TAB"] = "tab";
17939
+ })(TargetType || (TargetType = {}));
17940
+ var Target = class {
17941
+ /**
17942
+ * @internal
17943
+ */
17944
+ constructor() {
17945
+ }
17946
+ /**
17947
+ * If the target is not of type `"service_worker"` or `"shared_worker"`, returns `null`.
17948
+ */
17949
+ async worker() {
17950
+ return null;
17951
+ }
17952
+ /**
17953
+ * If the target is not of type `"page"`, `"webview"` or `"background_page"`,
17954
+ * returns `null`.
17955
+ */
17956
+ async page() {
17957
+ return null;
17958
+ }
17959
+ };
17960
+
18039
17961
  // node_modules/puppeteer-core/lib/esm/puppeteer/api/WebWorker.js
18040
17962
  init_dirname();
18041
17963
  init_buffer2();
@@ -18167,7 +18089,7 @@ ${sourceUrlComment}
18167
18089
  };
18168
18090
 
18169
18091
  // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/Page.js
18170
- var __addDisposableResource12 = function(env, value, async2) {
18092
+ var __addDisposableResource11 = function(env, value, async2) {
18171
18093
  if (value !== null && value !== void 0) {
18172
18094
  if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
18173
18095
  var dispose, inner;
@@ -18194,7 +18116,7 @@ ${sourceUrlComment}
18194
18116
  }
18195
18117
  return value;
18196
18118
  };
18197
- var __disposeResources12 = /* @__PURE__ */ function(SuppressedError2) {
18119
+ var __disposeResources11 = /* @__PURE__ */ function(SuppressedError2) {
18198
18120
  return function(env) {
18199
18121
  function fail(e) {
18200
18122
  env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
@@ -18436,7 +18358,7 @@ ${sourceUrlComment}
18436
18358
  }
18437
18359
  const frame = this.#frameManager.frame(event.frameId);
18438
18360
  assert(frame, "This should never happen.");
18439
- const handle = __addDisposableResource12(env_1, await frame.worlds[MAIN_WORLD].adoptBackendNode(event.backendNodeId), false);
18361
+ const handle = __addDisposableResource11(env_1, await frame.worlds[MAIN_WORLD].adoptBackendNode(event.backendNodeId), false);
18440
18362
  const fileChooser = new FileChooser(handle.move(), event);
18441
18363
  for (const promise of this.#fileChooserDeferreds) {
18442
18364
  promise.resolve(fileChooser);
@@ -18446,7 +18368,7 @@ ${sourceUrlComment}
18446
18368
  env_1.error = e_1;
18447
18369
  env_1.hasError = true;
18448
18370
  } finally {
18449
- __disposeResources12(env_1);
18371
+ __disposeResources11(env_1);
18450
18372
  }
18451
18373
  }
18452
18374
  _client() {
@@ -18602,9 +18524,7 @@ ${sourceUrlComment}
18602
18524
  for (const cookie of cookies) {
18603
18525
  const item = {
18604
18526
  ...cookie,
18605
- // TODO: a breaking change neeeded to change the partition key
18606
- // type in Puppeteer.
18607
- partitionKey: cookie.partitionKey ? { topLevelSite: cookie.partitionKey, hasCrossSiteAncestor: false } : void 0
18527
+ partitionKey: convertCookiesPartitionKeyFromPuppeteerToCdp(cookie.partitionKey)
18608
18528
  };
18609
18529
  if (!cookie.url && pageURL.startsWith("http")) {
18610
18530
  item.url = pageURL;
@@ -18640,12 +18560,7 @@ ${sourceUrlComment}
18640
18560
  cookies: items.map((cookieParam) => {
18641
18561
  return {
18642
18562
  ...cookieParam,
18643
- partitionKey: cookieParam.partitionKey ? {
18644
- // TODO: a breaking change neeeded to change the partition key
18645
- // type in Puppeteer.
18646
- topLevelSite: cookieParam.partitionKey,
18647
- hasCrossSiteAncestor: false
18648
- } : void 0
18563
+ partitionKey: convertCookiesPartitionKeyFromPuppeteerToCdp(cookieParam.partitionKey)
18649
18564
  };
18650
18565
  })
18651
18566
  });
@@ -18862,7 +18777,7 @@ ${sourceUrlComment}
18862
18777
  try {
18863
18778
  const { fromSurface, omitBackground, optimizeForSpeed, quality, clip: userClip, type, captureBeyondViewport } = options;
18864
18779
  const isFirefox = this.target()._targetManager() instanceof FirefoxTargetManager;
18865
- const stack = __addDisposableResource12(env_2, new AsyncDisposableStack(), true);
18780
+ const stack = __addDisposableResource11(env_2, new AsyncDisposableStack(), true);
18866
18781
  if (!isFirefox && omitBackground && (type === "png" || type === "webp")) {
18867
18782
  await this.#emulationManager.setTransparentBackgroundColor();
18868
18783
  stack.defer(async () => {
@@ -18890,7 +18805,7 @@ ${sourceUrlComment}
18890
18805
  env_2.error = e_2;
18891
18806
  env_2.hasError = true;
18892
18807
  } finally {
18893
- const result_1 = __disposeResources12(env_2);
18808
+ const result_1 = __disposeResources11(env_2);
18894
18809
  if (result_1)
18895
18810
  await result_1;
18896
18811
  }
@@ -18942,7 +18857,7 @@ ${sourceUrlComment}
18942
18857
  async close(options = { runBeforeUnload: void 0 }) {
18943
18858
  const env_3 = { stack: [], error: void 0, hasError: false };
18944
18859
  try {
18945
- const _guard = __addDisposableResource12(env_3, await this.browserContext().waitForScreenshotOperations(), false);
18860
+ const _guard = __addDisposableResource11(env_3, await this.browserContext().waitForScreenshotOperations(), false);
18946
18861
  const connection = this.#primaryTargetClient.connection();
18947
18862
  assert(connection, "Protocol error: Connection closed. Most likely the page has been closed.");
18948
18863
  const runBeforeUnload = !!options.runBeforeUnload;
@@ -18958,7 +18873,7 @@ ${sourceUrlComment}
18958
18873
  env_3.error = e_3;
18959
18874
  env_3.hasError = true;
18960
18875
  } finally {
18961
- __disposeResources12(env_3);
18876
+ __disposeResources11(env_3);
18962
18877
  }
18963
18878
  }
18964
18879
  isClosed() {
@@ -19019,8 +18934,188 @@ ${sourceUrlComment}
19019
18934
  height: Math.max(Math.min(clip.y + clip.height, viewport.y + viewport.height) - y, 0)
19020
18935
  };
19021
18936
  }
18937
+ function convertCookiesPartitionKeyFromPuppeteerToCdp(partitionKey) {
18938
+ if (partitionKey === void 0) {
18939
+ return void 0;
18940
+ }
18941
+ if (typeof partitionKey === "string") {
18942
+ return {
18943
+ topLevelSite: partitionKey,
18944
+ hasCrossSiteAncestor: false
18945
+ };
18946
+ }
18947
+ return {
18948
+ topLevelSite: partitionKey.sourceOrigin,
18949
+ hasCrossSiteAncestor: partitionKey.hasCrossSiteAncestor ?? false
18950
+ };
18951
+ }
18952
+
18953
+ // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/BrowserContext.js
18954
+ var __addDisposableResource12 = function(env, value, async2) {
18955
+ if (value !== null && value !== void 0) {
18956
+ if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
18957
+ var dispose, inner;
18958
+ if (async2) {
18959
+ if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
18960
+ dispose = value[Symbol.asyncDispose];
18961
+ }
18962
+ if (dispose === void 0) {
18963
+ if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
18964
+ dispose = value[Symbol.dispose];
18965
+ if (async2) inner = dispose;
18966
+ }
18967
+ if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
18968
+ if (inner) dispose = function() {
18969
+ try {
18970
+ inner.call(this);
18971
+ } catch (e) {
18972
+ return Promise.reject(e);
18973
+ }
18974
+ };
18975
+ env.stack.push({ value, dispose, async: async2 });
18976
+ } else if (async2) {
18977
+ env.stack.push({ async: true });
18978
+ }
18979
+ return value;
18980
+ };
18981
+ var __disposeResources12 = /* @__PURE__ */ function(SuppressedError2) {
18982
+ return function(env) {
18983
+ function fail(e) {
18984
+ env.error = env.hasError ? new SuppressedError2(e, env.error, "An error was suppressed during disposal.") : e;
18985
+ env.hasError = true;
18986
+ }
18987
+ var r, s = 0;
18988
+ function next() {
18989
+ while (r = env.stack.pop()) {
18990
+ try {
18991
+ if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
18992
+ if (r.dispose) {
18993
+ var result = r.dispose.call(r.value);
18994
+ if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
18995
+ fail(e);
18996
+ return next();
18997
+ });
18998
+ } else s |= 1;
18999
+ } catch (e) {
19000
+ fail(e);
19001
+ }
19002
+ }
19003
+ if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
19004
+ if (env.hasError) throw env.error;
19005
+ }
19006
+ return next();
19007
+ };
19008
+ }(typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) {
19009
+ var e = new Error(message);
19010
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
19011
+ });
19012
+ var CdpBrowserContext = class extends BrowserContext {
19013
+ #connection;
19014
+ #browser;
19015
+ #id;
19016
+ constructor(connection, browser, contextId) {
19017
+ super();
19018
+ this.#connection = connection;
19019
+ this.#browser = browser;
19020
+ this.#id = contextId;
19021
+ }
19022
+ get id() {
19023
+ return this.#id;
19024
+ }
19025
+ targets() {
19026
+ return this.#browser.targets().filter((target) => {
19027
+ return target.browserContext() === this;
19028
+ });
19029
+ }
19030
+ async pages() {
19031
+ const pages = await Promise.all(this.targets().filter((target) => {
19032
+ return target.type() === "page" || target.type() === "other" && this.#browser._getIsPageTargetCallback()?.(target);
19033
+ }).map((target) => {
19034
+ return target.page();
19035
+ }));
19036
+ return pages.filter((page) => {
19037
+ return !!page;
19038
+ });
19039
+ }
19040
+ async overridePermissions(origin, permissions) {
19041
+ const protocolPermissions = permissions.map((permission) => {
19042
+ const protocolPermission = WEB_PERMISSION_TO_PROTOCOL_PERMISSION.get(permission);
19043
+ if (!protocolPermission) {
19044
+ throw new Error("Unknown permission: " + permission);
19045
+ }
19046
+ return protocolPermission;
19047
+ });
19048
+ await this.#connection.send("Browser.grantPermissions", {
19049
+ origin,
19050
+ browserContextId: this.#id || void 0,
19051
+ permissions: protocolPermissions
19052
+ });
19053
+ }
19054
+ async clearPermissionOverrides() {
19055
+ await this.#connection.send("Browser.resetPermissions", {
19056
+ browserContextId: this.#id || void 0
19057
+ });
19058
+ }
19059
+ async newPage() {
19060
+ const env_1 = { stack: [], error: void 0, hasError: false };
19061
+ try {
19062
+ const _guard = __addDisposableResource12(env_1, await this.waitForScreenshotOperations(), false);
19063
+ return await this.#browser._createPageInContext(this.#id);
19064
+ } catch (e_1) {
19065
+ env_1.error = e_1;
19066
+ env_1.hasError = true;
19067
+ } finally {
19068
+ __disposeResources12(env_1);
19069
+ }
19070
+ }
19071
+ browser() {
19072
+ return this.#browser;
19073
+ }
19074
+ async close() {
19075
+ assert(this.#id, "Default BrowserContext cannot be closed!");
19076
+ await this.#browser._disposeContext(this.#id);
19077
+ }
19078
+ async cookies() {
19079
+ const { cookies } = await this.#connection.send("Storage.getCookies", {
19080
+ browserContextId: this.#id
19081
+ });
19082
+ return cookies.map((cookie) => {
19083
+ return {
19084
+ ...cookie,
19085
+ partitionKey: cookie.partitionKey ? {
19086
+ sourceOrigin: cookie.partitionKey.topLevelSite,
19087
+ hasCrossSiteAncestor: cookie.partitionKey.hasCrossSiteAncestor
19088
+ } : void 0
19089
+ };
19090
+ });
19091
+ }
19092
+ async setCookie(...cookies) {
19093
+ return await this.#connection.send("Storage.setCookies", {
19094
+ browserContextId: this.#id,
19095
+ cookies: cookies.map((cookie) => {
19096
+ return {
19097
+ ...cookie,
19098
+ partitionKey: convertCookiesPartitionKeyFromPuppeteerToCdp(cookie.partitionKey)
19099
+ };
19100
+ })
19101
+ });
19102
+ }
19103
+ async setDownloadBehavior(downloadBehavior) {
19104
+ await this.#connection.send("Browser.setDownloadBehavior", {
19105
+ behavior: downloadBehavior.policy,
19106
+ downloadPath: downloadBehavior.downloadPath,
19107
+ browserContextId: this.#id
19108
+ });
19109
+ }
19110
+ };
19111
+
19112
+ // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/ChromeTargetManager.js
19113
+ init_dirname();
19114
+ init_buffer2();
19022
19115
 
19023
19116
  // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/Target.js
19117
+ init_dirname();
19118
+ init_buffer2();
19024
19119
  var InitializationStatus;
19025
19120
  (function(InitializationStatus2) {
19026
19121
  InitializationStatus2["SUCCESS"] = "success";
@@ -19903,101 +19998,87 @@ puppeteer-core/lib/esm/puppeteer/api/BrowserContext.js:
19903
19998
  * SPDX-License-Identifier: Apache-2.0
19904
19999
  *)
19905
20000
 
19906
- puppeteer-core/lib/esm/puppeteer/cdp/BrowserContext.js:
20001
+ puppeteer-core/lib/esm/puppeteer/common/TimeoutSettings.js:
19907
20002
  (**
19908
20003
  * @license
19909
- * Copyright 2024 Google Inc.
20004
+ * Copyright 2019 Google Inc.
19910
20005
  * SPDX-License-Identifier: Apache-2.0
19911
20006
  *)
19912
20007
 
19913
- puppeteer-core/lib/esm/puppeteer/api/Target.js:
20008
+ puppeteer-core/lib/esm/puppeteer/util/decorators.js:
19914
20009
  (**
19915
20010
  * @license
19916
20011
  * Copyright 2023 Google Inc.
19917
20012
  * SPDX-License-Identifier: Apache-2.0
19918
20013
  *)
19919
20014
 
19920
- puppeteer-core/lib/esm/puppeteer/util/ErrorLike.js:
20015
+ puppeteer-core/lib/esm/puppeteer/api/Page.js:
19921
20016
  (**
19922
20017
  * @license
19923
- * Copyright 2022 Google Inc.
20018
+ * Copyright 2017 Google Inc.
19924
20019
  * SPDX-License-Identifier: Apache-2.0
19925
20020
  *)
19926
20021
 
19927
- puppeteer-core/lib/esm/puppeteer/util/incremental-id-generator.js:
20022
+ puppeteer-core/lib/esm/puppeteer/common/ConsoleMessage.js:
19928
20023
  (**
19929
20024
  * @license
19930
- * Copyright 2024 Google Inc.
20025
+ * Copyright 2020 Google Inc.
19931
20026
  * SPDX-License-Identifier: Apache-2.0
19932
20027
  *)
19933
20028
 
19934
- puppeteer-core/lib/esm/puppeteer/common/CallbackRegistry.js:
20029
+ puppeteer-core/lib/esm/puppeteer/common/FileChooser.js:
19935
20030
  (**
19936
20031
  * @license
19937
- * Copyright 2023 Google Inc.
20032
+ * Copyright 2020 Google Inc.
19938
20033
  * SPDX-License-Identifier: Apache-2.0
19939
20034
  *)
19940
20035
 
19941
- puppeteer-core/lib/esm/puppeteer/cdp/CDPSession.js:
20036
+ puppeteer-core/lib/esm/puppeteer/common/NetworkManagerEvents.js:
19942
20037
  (**
19943
20038
  * @license
19944
- * Copyright 2017 Google Inc.
20039
+ * Copyright 2022 Google Inc.
19945
20040
  * SPDX-License-Identifier: Apache-2.0
19946
20041
  *)
19947
20042
 
19948
- puppeteer-core/lib/esm/puppeteer/common/TimeoutSettings.js:
20043
+ puppeteer-core/lib/esm/puppeteer/util/ErrorLike.js:
19949
20044
  (**
19950
20045
  * @license
19951
- * Copyright 2019 Google Inc.
20046
+ * Copyright 2022 Google Inc.
19952
20047
  * SPDX-License-Identifier: Apache-2.0
19953
20048
  *)
19954
20049
 
19955
- puppeteer-core/lib/esm/puppeteer/util/decorators.js:
20050
+ puppeteer-core/lib/esm/puppeteer/api/JSHandle.js:
19956
20051
  (**
19957
20052
  * @license
19958
20053
  * Copyright 2023 Google Inc.
19959
20054
  * SPDX-License-Identifier: Apache-2.0
19960
20055
  *)
19961
20056
 
19962
- puppeteer-core/lib/esm/puppeteer/api/Page.js:
19963
- (**
19964
- * @license
19965
- * Copyright 2017 Google Inc.
19966
- * SPDX-License-Identifier: Apache-2.0
19967
- *)
19968
-
19969
- puppeteer-core/lib/esm/puppeteer/common/ConsoleMessage.js:
19970
- (**
19971
- * @license
19972
- * Copyright 2020 Google Inc.
19973
- * SPDX-License-Identifier: Apache-2.0
19974
- *)
19975
-
19976
- puppeteer-core/lib/esm/puppeteer/common/FileChooser.js:
20057
+ puppeteer-core/lib/esm/puppeteer/cdp/Binding.js:
19977
20058
  (**
19978
20059
  * @license
19979
- * Copyright 2020 Google Inc.
20060
+ * Copyright 2024 Google Inc.
19980
20061
  * SPDX-License-Identifier: Apache-2.0
19981
20062
  *)
19982
20063
 
19983
- puppeteer-core/lib/esm/puppeteer/common/NetworkManagerEvents.js:
20064
+ puppeteer-core/lib/esm/puppeteer/util/incremental-id-generator.js:
19984
20065
  (**
19985
20066
  * @license
19986
- * Copyright 2022 Google Inc.
20067
+ * Copyright 2024 Google Inc.
19987
20068
  * SPDX-License-Identifier: Apache-2.0
19988
20069
  *)
19989
20070
 
19990
- puppeteer-core/lib/esm/puppeteer/api/JSHandle.js:
20071
+ puppeteer-core/lib/esm/puppeteer/common/CallbackRegistry.js:
19991
20072
  (**
19992
20073
  * @license
19993
20074
  * Copyright 2023 Google Inc.
19994
20075
  * SPDX-License-Identifier: Apache-2.0
19995
20076
  *)
19996
20077
 
19997
- puppeteer-core/lib/esm/puppeteer/cdp/Binding.js:
20078
+ puppeteer-core/lib/esm/puppeteer/cdp/CDPSession.js:
19998
20079
  (**
19999
20080
  * @license
20000
- * Copyright 2024 Google Inc.
20081
+ * Copyright 2017 Google Inc.
20001
20082
  * SPDX-License-Identifier: Apache-2.0
20002
20083
  *)
20003
20084
 
@@ -20316,6 +20397,13 @@ puppeteer-core/lib/esm/puppeteer/cdp/Input.js:
20316
20397
  * SPDX-License-Identifier: Apache-2.0
20317
20398
  *)
20318
20399
 
20400
+ puppeteer-core/lib/esm/puppeteer/api/Target.js:
20401
+ (**
20402
+ * @license
20403
+ * Copyright 2023 Google Inc.
20404
+ * SPDX-License-Identifier: Apache-2.0
20405
+ *)
20406
+
20319
20407
  puppeteer-core/lib/esm/puppeteer/api/WebWorker.js:
20320
20408
  (**
20321
20409
  * @license
@@ -20330,6 +20418,13 @@ puppeteer-core/lib/esm/puppeteer/cdp/Page.js:
20330
20418
  * SPDX-License-Identifier: Apache-2.0
20331
20419
  *)
20332
20420
 
20421
+ puppeteer-core/lib/esm/puppeteer/cdp/BrowserContext.js:
20422
+ (**
20423
+ * @license
20424
+ * Copyright 2024 Google Inc.
20425
+ * SPDX-License-Identifier: Apache-2.0
20426
+ *)
20427
+
20333
20428
  puppeteer-core/lib/esm/puppeteer/cdp/Target.js:
20334
20429
  (**
20335
20430
  * @license