@xberg-io/crawlberg-wasm 1.7.1 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xberg-io/crawlberg-wasm",
3
- "version": "1.7.1",
3
+ "version": "1.8.0",
4
4
  "private": false,
5
5
  "description": "High-performance web crawling engine",
6
6
  "license": "MIT",
@@ -153,7 +153,7 @@ export class WasmBrowserConfig {
153
153
  free(): void;
154
154
  [Symbol.dispose](): void;
155
155
  static default(): WasmBrowserConfig;
156
- constructor(mode?: WasmBrowserMode | null, backend?: WasmBrowserBackend | null, timeout?: bigint | null, wait?: WasmBrowserWait | null, blockUrlPatterns?: string[] | null, captureNetworkEvents?: boolean | null, sessionAffinity?: boolean | null, endpoint?: string | null, waitSelector?: string | null, extraWait?: bigint | null, proxy?: WasmProxyConfig | null, evalScript?: string | null, robotsUserAgent?: string | null);
156
+ constructor(mode?: WasmBrowserMode | null, backend?: WasmBrowserBackend | null, timeout?: bigint | null, overallTimeout?: bigint | null, shutdownTimeout?: bigint | null, wait?: WasmBrowserWait | null, blockUrlPatterns?: string[] | null, captureNetworkEvents?: boolean | null, sessionAffinity?: boolean | null, endpoint?: string | null, waitSelector?: string | null, extraWait?: bigint | null, proxy?: WasmProxyConfig | null, evalScript?: string | null, robotsUserAgent?: string | null);
157
157
  get backend(): string;
158
158
  set backend(value: WasmBrowserBackend);
159
159
  blockUrlPatterns: string[];
@@ -166,11 +166,15 @@ export class WasmBrowserConfig {
166
166
  set extraWait(value: bigint | null | undefined);
167
167
  get mode(): string;
168
168
  set mode(value: WasmBrowserMode);
169
+ get overallTimeout(): bigint | undefined;
170
+ set overallTimeout(value: bigint | null | undefined);
169
171
  get proxy(): WasmProxyConfig | undefined;
170
172
  set proxy(value: WasmProxyConfig | null | undefined);
171
173
  get robotsUserAgent(): string | undefined;
172
174
  set robotsUserAgent(value: string | null | undefined);
173
175
  sessionAffinity: boolean;
176
+ get shutdownTimeout(): bigint | undefined;
177
+ set shutdownTimeout(value: bigint | null | undefined);
174
178
  get timeout(): bigint | undefined;
175
179
  set timeout(value: bigint | null | undefined);
176
180
  get waitSelector(): string | undefined;
@@ -251,8 +255,9 @@ export class WasmContentConfig {
251
255
  free(): void;
252
256
  [Symbol.dispose](): void;
253
257
  static default(): WasmContentConfig;
254
- constructor(outputFormat?: string | null, preprocessingPreset?: string | null, removeNavigation?: boolean | null, removeForms?: boolean | null, stripTags?: string[] | null, preserveTags?: string[] | null, excludeSelectors?: string[] | null, skipImages?: boolean | null, wrap?: boolean | null, wrapWidth?: number | null, includeDocumentStructure?: boolean | null, maxDepth?: number | null);
258
+ constructor(outputFormat?: string | null, preprocessingPreset?: string | null, removeNavigation?: boolean | null, removeForms?: boolean | null, stripTags?: string[] | null, preserveTags?: string[] | null, excludeSelectors?: string[] | null, skipImages?: boolean | null, wrap?: boolean | null, wrapWidth?: number | null, includeDocumentStructure?: boolean | null, extractMetadata?: boolean | null, maxDepth?: number | null);
255
259
  excludeSelectors: string[];
260
+ extractMetadata: boolean;
256
261
  includeDocumentStructure: boolean;
257
262
  get maxDepth(): number | undefined;
258
263
  set maxDepth(value: number | null | undefined);
@@ -297,9 +302,12 @@ export class WasmCrawlConfig {
297
302
  free(): void;
298
303
  [Symbol.dispose](): void;
299
304
  static default(): WasmCrawlConfig;
300
- constructor(crawlStrategy?: WasmCrawlStrategyKind | null, respectRobotsTxt?: boolean | null, softHttpErrors?: boolean | null, stayOnDomain?: boolean | null, allowSubdomains?: boolean | null, includePaths?: string[] | null, excludePaths?: string[] | null, customHeaders?: any | null, requestTimeout?: bigint | null, maxRedirects?: number | null, retryCount?: number | null, retryCodes?: Uint16Array | null, cookiesEnabled?: boolean | null, removeTags?: string[] | null, content?: WasmContentConfig | null, downloadAssets?: boolean | null, assetTypes?: WasmAssetCategory[] | null, browser?: WasmBrowserConfig | null, userAgents?: string[] | null, captureScreenshot?: boolean | null, followDocumentUrls?: boolean | null, downloadDocuments?: boolean | null, documentMimeTypes?: string[] | null, saveBrowserProfile?: boolean | null, ssrf?: WasmSsrfPolicy | null, maxDepth?: number | null, maxPages?: number | null, maxLinksPerPage?: number | null, maxConcurrent?: number | null, contentFilter?: WasmContentFilterKind | null, bm25Query?: string | null, bm25Threshold?: number | null, userAgent?: string | null, rateLimitMs?: bigint | null, auth?: any | null, maxBodySize?: number | null, mapLimit?: number | null, mapSearch?: string | null, maxAssetSize?: number | null, proxy?: WasmProxyConfig | null, documentUrlDepth?: number | null, documentMaxSize?: number | null, documentOutputDir?: string | null, documentContentEncoding?: WasmDocumentContentEncoding | null, warcOutput?: string | null, browserProfile?: string | null, ssrfDenyPrivateExplicit?: boolean | null);
305
+ constructor(crawlStrategy?: WasmCrawlStrategyKind | null, respectRobotsTxt?: boolean | null, softHttpErrors?: boolean | null, stayOnDomain?: boolean | null, allowSubdomains?: boolean | null, includePaths?: string[] | null, excludePaths?: string[] | null, pathPatternsMatchQuery?: boolean | null, dedupIncludeQuery?: boolean | null, stripTrackingParams?: boolean | null, trackingParams?: string[] | null, customHeaders?: any | null, requestTimeout?: bigint | null, maxRedirects?: number | null, retryCount?: number | null, retryCodes?: Uint16Array | null, retryInitialDelayMs?: bigint | null, retryMaxDelayMs?: bigint | null, rateLimitJitterRatio?: number | null, cookiesEnabled?: boolean | null, removeTags?: string[] | null, content?: WasmContentConfig | null, downloadAssets?: boolean | null, assetTypes?: WasmAssetCategory[] | null, browser?: WasmBrowserConfig | null, userAgents?: string[] | null, captureScreenshot?: boolean | null, followDocumentUrls?: boolean | null, downloadDocuments?: boolean | null, documentMimeTypes?: string[] | null, saveBrowserProfile?: boolean | null, ssrf?: WasmSsrfPolicy | null, maxDepth?: number | null, maxPages?: number | null, maxLinksPerPage?: number | null, maxConcurrent?: number | null, contentFilter?: WasmContentFilterKind | null, bm25Query?: string | null, bm25Threshold?: number | null, userAgent?: string | null, rateLimitMs?: bigint | null, auth?: any | null, maxBodySize?: number | null, mapLimit?: number | null, mapSearch?: string | null, maxAssetSize?: number | null, proxy?: WasmProxyConfig | null, documentUrlDepth?: number | null, documentMaxSize?: number | null, documentOutputDir?: string | null, documentContentEncoding?: WasmDocumentContentEncoding | null, warcOutput?: string | null, browserProfile?: string | null, ssrfDenyPrivateExplicit?: boolean | null);
301
306
  /**
302
307
  * Validate the configuration, returning an error if any values are invalid.
308
+ *
309
+ * Only the first violation encountered is reported, not every one, so fixing a rejected
310
+ * configuration can surface a further error on the next attempt.
303
311
  */
304
312
  validate(): void;
305
313
  allowSubdomains: boolean;
@@ -321,6 +329,7 @@ export class WasmCrawlConfig {
321
329
  get crawlStrategy(): string;
322
330
  set crawlStrategy(value: WasmCrawlStrategyKind);
323
331
  customHeaders: any;
332
+ dedupIncludeQuery: boolean;
324
333
  get documentContentEncoding(): string | undefined;
325
334
  set documentContentEncoding(value: WasmDocumentContentEncoding | null | undefined);
326
335
  get documentMaxSize(): number | undefined;
@@ -352,8 +361,10 @@ export class WasmCrawlConfig {
352
361
  get maxPages(): number | undefined;
353
362
  set maxPages(value: number | null | undefined);
354
363
  maxRedirects: number;
364
+ pathPatternsMatchQuery: boolean;
355
365
  get proxy(): WasmProxyConfig | undefined;
356
366
  set proxy(value: WasmProxyConfig | null | undefined);
367
+ rateLimitJitterRatio: number;
357
368
  get rateLimitMs(): bigint | undefined;
358
369
  set rateLimitMs(value: bigint | null | undefined);
359
370
  removeTags: string[];
@@ -362,12 +373,16 @@ export class WasmCrawlConfig {
362
373
  respectRobotsTxt: boolean;
363
374
  retryCodes: Uint16Array;
364
375
  retryCount: number;
376
+ retryInitialDelayMs: bigint;
377
+ retryMaxDelayMs: bigint;
365
378
  saveBrowserProfile: boolean;
366
379
  softHttpErrors: boolean;
367
380
  get ssrfDenyPrivateExplicit(): boolean | undefined;
368
381
  set ssrfDenyPrivateExplicit(value: boolean | null | undefined);
369
382
  ssrf: WasmSsrfPolicy;
370
383
  stayOnDomain: boolean;
384
+ stripTrackingParams: boolean;
385
+ trackingParams: string[];
371
386
  get userAgent(): string | undefined;
372
387
  set userAgent(value: string | null | undefined);
373
388
  userAgents: string[];
@@ -394,7 +409,7 @@ export class WasmCrawlPageResult {
394
409
  free(): void;
395
410
  [Symbol.dispose](): void;
396
411
  static default(): WasmCrawlPageResult;
397
- constructor(url?: string | null, normalizedUrl?: string | null, statusCode?: number | null, contentType?: string | null, html?: string | null, bodySize?: number | null, metadata?: WasmPageMetadata | null, links?: WasmLinkInfo[] | null, images?: WasmImageInfo[] | null, feeds?: WasmFeedInfo[] | null, jsonLd?: WasmJsonLdEntry[] | null, depth?: number | null, stayedOnDomain?: boolean | null, wasSkipped?: boolean | null, isPdf?: boolean | null, browserUsed?: boolean | null, detectedCharset?: string | null, markdown?: WasmMarkdownResult | null, extractedData?: any | null, extractionMeta?: WasmExtractionMeta | null, downloadedDocument?: WasmDownloadedDocument | null);
412
+ constructor(url?: string | null, normalizedUrl?: string | null, statusCode?: number | null, contentType?: string | null, html?: string | null, bodySize?: number | null, metadata?: WasmPageMetadata | null, links?: WasmLinkInfo[] | null, images?: WasmImageInfo[] | null, feeds?: WasmFeedInfo[] | null, jsonLd?: WasmJsonLdEntry[] | null, depth?: number | null, stayedOnDomain?: boolean | null, wasSkipped?: boolean | null, isPdf?: boolean | null, browserUsed?: boolean | null, finalUrl?: string | null, redirectCount?: number | null, noindexDetected?: boolean | null, nofollowDetected?: boolean | null, detectedCharset?: string | null, markdown?: WasmMarkdownResult | null, extractedData?: any | null, extractionMeta?: WasmExtractionMeta | null, downloadedDocument?: WasmDownloadedDocument | null);
398
413
  bodySize: number;
399
414
  browserUsed: boolean;
400
415
  contentType: string;
@@ -408,6 +423,7 @@ export class WasmCrawlPageResult {
408
423
  get extractionMeta(): WasmExtractionMeta | undefined;
409
424
  set extractionMeta(value: WasmExtractionMeta | null | undefined);
410
425
  feeds: WasmFeedInfo[];
426
+ finalUrl: string;
411
427
  html: string;
412
428
  images: WasmImageInfo[];
413
429
  isPdf: boolean;
@@ -416,7 +432,10 @@ export class WasmCrawlPageResult {
416
432
  get markdown(): WasmMarkdownResult | undefined;
417
433
  set markdown(value: WasmMarkdownResult | null | undefined);
418
434
  metadata: WasmPageMetadata;
435
+ nofollowDetected: boolean;
436
+ noindexDetected: boolean;
419
437
  normalizedUrl: string;
438
+ redirectCount: number;
420
439
  statusCode: number;
421
440
  stayedOnDomain: boolean;
422
441
  url: string;