@letsscrapedata/controller 0.0.15 → 0.0.17

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.
package/dist/index.cjs CHANGED
@@ -17190,19 +17190,19 @@ var LsdBrowserController = class _LsdBrowserController {
17190
17190
  maxBrowserContextsPerBrowser = 10,
17191
17191
  maxPagesPerBrowserContext = 20,
17192
17192
  maxPageFreeSeconds = 900,
17193
+ proxy = null,
17193
17194
  timeout = 3e4,
17194
17195
  args = [],
17195
17196
  executablePath = "",
17196
- headless = false,
17197
+ headless = true,
17197
17198
  minBrowserContexts = 1,
17198
17199
  // incognito
17199
- proxy = null,
17200
17200
  proxyPerBrowserContext = false,
17201
17201
  userDataDir = "",
17202
17202
  userAgent = ""
17203
17203
  } = options ? options : {};
17204
17204
  const incognito = typeof options?.incognito === "boolean" ? options.incognito : browserControllerType === "puppeteer" ? false : true;
17205
- const actOptions = { closeFreePagesIntervalSeconds, maxBrowserContextsPerBrowser, maxPagesPerBrowserContext, maxPageFreeSeconds, timeout, args, executablePath, headless, incognito, proxy, proxyPerBrowserContext, userDataDir, userAgent };
17205
+ const actOptions = { closeFreePagesIntervalSeconds, maxBrowserContextsPerBrowser, maxPagesPerBrowserContext, maxPageFreeSeconds, proxy, timeout, args, executablePath, headless, minBrowserContexts, incognito, proxyPerBrowserContext, userDataDir, userAgent };
17206
17206
  let idx = args.findIndex((arg) => arg.toLowerCase().startsWith("--incoginto"));
17207
17207
  if (idx >= 0) {
17208
17208
  (0, import_utils15.logwarn)(`Please use options.incognito instead when launching new browser.`);
@@ -17275,19 +17275,32 @@ var LsdBrowserController = class _LsdBrowserController {
17275
17275
  throw new Error(`Invalid browserControllerType: ${browserControllerType} in launch`);
17276
17276
  }
17277
17277
  for (let i = lsdBrowser.browserContexts().length; i < minBrowserContexts; i++) {
17278
- lsdBrowser.newBrowserContext();
17278
+ await lsdBrowser.newBrowserContext();
17279
17279
  }
17280
17280
  return lsdBrowser;
17281
17281
  }
17282
17282
  async connect(browserControllerType, browserType, options) {
17283
- const { browserUrl } = options;
17283
+ let {
17284
+ closeFreePagesIntervalSeconds = 300,
17285
+ maxBrowserContextsPerBrowser = 10,
17286
+ maxPagesPerBrowserContext = 20,
17287
+ maxPageFreeSeconds = 900,
17288
+ proxy = null,
17289
+ timeout = 3e4,
17290
+ browserUrl,
17291
+ executablePath = "",
17292
+ headless = false,
17293
+ incognito = false,
17294
+ userAgent = ""
17295
+ } = options;
17284
17296
  if (typeof browserUrl !== "string" || !browserUrl.toLowerCase().startsWith("http://")) {
17285
17297
  throw new Error(`Invalid browserUrl ${browserUrl} in connect`);
17286
17298
  }
17299
+ const actOptions = { closeFreePagesIntervalSeconds, maxBrowserContextsPerBrowser, maxPagesPerBrowserContext, maxPageFreeSeconds, proxy, timeout, browserUrl, executablePath, headless, incognito, userAgent };
17287
17300
  if (browserControllerType === "playwright") {
17288
17301
  const playwrightBrowserType = this.#playwrightBrowserType(browserType, true);
17289
17302
  const browser = await playwrightBrowserType.connectOverCDP(browserUrl);
17290
- const lsdBrowser = new PlaywrightBrowser(browser, browserType, "connect", options, this.#nextBrowserIdx++);
17303
+ const lsdBrowser = new PlaywrightBrowser(browser, browserType, "connect", actOptions, this.#nextBrowserIdx++);
17291
17304
  return lsdBrowser;
17292
17305
  } else if (browserControllerType === "puppeteer") {
17293
17306
  this.#puppeteerProduct(browserType);
package/dist/index.d.cts CHANGED
@@ -42,7 +42,7 @@ type BrowserControllerOptions = {
42
42
  declare const defaultProxy: Proxy;
43
43
  interface BrowserOptions {
44
44
  /**
45
- * Interval between closing free pages (seconds) if more than 0
45
+ * Interval between closing free pages (seconds) if greater than 0
46
46
  * @default 300
47
47
  */
48
48
  closeFreePagesIntervalSeconds?: number;
package/dist/index.d.ts CHANGED
@@ -42,7 +42,7 @@ type BrowserControllerOptions = {
42
42
  declare const defaultProxy: Proxy;
43
43
  interface BrowserOptions {
44
44
  /**
45
- * Interval between closing free pages (seconds) if more than 0
45
+ * Interval between closing free pages (seconds) if greater than 0
46
46
  * @default 300
47
47
  */
48
48
  closeFreePagesIntervalSeconds?: number;
package/dist/index.js CHANGED
@@ -17170,19 +17170,19 @@ var LsdBrowserController = class _LsdBrowserController {
17170
17170
  maxBrowserContextsPerBrowser = 10,
17171
17171
  maxPagesPerBrowserContext = 20,
17172
17172
  maxPageFreeSeconds = 900,
17173
+ proxy = null,
17173
17174
  timeout = 3e4,
17174
17175
  args = [],
17175
17176
  executablePath = "",
17176
- headless = false,
17177
+ headless = true,
17177
17178
  minBrowserContexts = 1,
17178
17179
  // incognito
17179
- proxy = null,
17180
17180
  proxyPerBrowserContext = false,
17181
17181
  userDataDir = "",
17182
17182
  userAgent = ""
17183
17183
  } = options ? options : {};
17184
17184
  const incognito = typeof options?.incognito === "boolean" ? options.incognito : browserControllerType === "puppeteer" ? false : true;
17185
- const actOptions = { closeFreePagesIntervalSeconds, maxBrowserContextsPerBrowser, maxPagesPerBrowserContext, maxPageFreeSeconds, timeout, args, executablePath, headless, incognito, proxy, proxyPerBrowserContext, userDataDir, userAgent };
17185
+ const actOptions = { closeFreePagesIntervalSeconds, maxBrowserContextsPerBrowser, maxPagesPerBrowserContext, maxPageFreeSeconds, proxy, timeout, args, executablePath, headless, minBrowserContexts, incognito, proxyPerBrowserContext, userDataDir, userAgent };
17186
17186
  let idx = args.findIndex((arg) => arg.toLowerCase().startsWith("--incoginto"));
17187
17187
  if (idx >= 0) {
17188
17188
  logwarn6(`Please use options.incognito instead when launching new browser.`);
@@ -17255,19 +17255,32 @@ var LsdBrowserController = class _LsdBrowserController {
17255
17255
  throw new Error(`Invalid browserControllerType: ${browserControllerType} in launch`);
17256
17256
  }
17257
17257
  for (let i = lsdBrowser.browserContexts().length; i < minBrowserContexts; i++) {
17258
- lsdBrowser.newBrowserContext();
17258
+ await lsdBrowser.newBrowserContext();
17259
17259
  }
17260
17260
  return lsdBrowser;
17261
17261
  }
17262
17262
  async connect(browserControllerType, browserType, options) {
17263
- const { browserUrl } = options;
17263
+ let {
17264
+ closeFreePagesIntervalSeconds = 300,
17265
+ maxBrowserContextsPerBrowser = 10,
17266
+ maxPagesPerBrowserContext = 20,
17267
+ maxPageFreeSeconds = 900,
17268
+ proxy = null,
17269
+ timeout = 3e4,
17270
+ browserUrl,
17271
+ executablePath = "",
17272
+ headless = false,
17273
+ incognito = false,
17274
+ userAgent = ""
17275
+ } = options;
17264
17276
  if (typeof browserUrl !== "string" || !browserUrl.toLowerCase().startsWith("http://")) {
17265
17277
  throw new Error(`Invalid browserUrl ${browserUrl} in connect`);
17266
17278
  }
17279
+ const actOptions = { closeFreePagesIntervalSeconds, maxBrowserContextsPerBrowser, maxPagesPerBrowserContext, maxPageFreeSeconds, proxy, timeout, browserUrl, executablePath, headless, incognito, userAgent };
17267
17280
  if (browserControllerType === "playwright") {
17268
17281
  const playwrightBrowserType = this.#playwrightBrowserType(browserType, true);
17269
17282
  const browser = await playwrightBrowserType.connectOverCDP(browserUrl);
17270
- const lsdBrowser = new PlaywrightBrowser(browser, browserType, "connect", options, this.#nextBrowserIdx++);
17283
+ const lsdBrowser = new PlaywrightBrowser(browser, browserType, "connect", actOptions, this.#nextBrowserIdx++);
17271
17284
  return lsdBrowser;
17272
17285
  } else if (browserControllerType === "puppeteer") {
17273
17286
  this.#puppeteerProduct(browserType);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@letsscrapedata/controller",
3
- "version": "0.0.15",
3
+ "version": "0.0.17",
4
4
  "description": "Unified browser / HTML controller interfaces that support playwright, puppeteer and cheerio",
5
5
  "type": "module",
6
6
  "main": "./dist/index.mjs",