scrapex 1.0.0-beta.1 → 1.0.0-beta.2
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/embeddings/index.cjs +52 -0
- package/dist/embeddings/index.d.cts +3 -0
- package/dist/embeddings/index.d.mts +3 -0
- package/dist/embeddings/index.mjs +4 -0
- package/dist/embeddings-BjNTQSG9.cjs +1455 -0
- package/dist/embeddings-BjNTQSG9.cjs.map +1 -0
- package/dist/embeddings-Bsymy_jA.mjs +1215 -0
- package/dist/embeddings-Bsymy_jA.mjs.map +1 -0
- package/dist/enhancer-Cs_WyWtJ.cjs +219 -0
- package/dist/enhancer-Cs_WyWtJ.cjs.map +1 -0
- package/dist/enhancer-INx5NlgO.mjs +177 -0
- package/dist/enhancer-INx5NlgO.mjs.map +1 -0
- package/dist/{enhancer-j0xqKDJm.cjs → http-base-CHLf-Tco.cjs} +36 -199
- package/dist/http-base-CHLf-Tco.cjs.map +1 -0
- package/dist/{enhancer-ByjRD-t5.mjs → http-base-DM7YNo6X.mjs} +25 -176
- package/dist/http-base-DM7YNo6X.mjs.map +1 -0
- package/dist/{index-CDgcRnig.d.cts → index-Bvseqli-.d.cts} +1 -1
- package/dist/{index-CDgcRnig.d.cts.map → index-Bvseqli-.d.cts.map} +1 -1
- package/dist/{index-piS5wtki.d.mts → index-CIFjNySr.d.mts} +1 -1
- package/dist/{index-piS5wtki.d.mts.map → index-CIFjNySr.d.mts.map} +1 -1
- package/dist/index-D6qfjmZQ.d.mts +401 -0
- package/dist/index-D6qfjmZQ.d.mts.map +1 -0
- package/dist/index-RFSpP5g8.d.cts +401 -0
- package/dist/index-RFSpP5g8.d.cts.map +1 -0
- package/dist/index.cjs +39 -1074
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3 -260
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +3 -260
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +4 -1039
- package/dist/index.mjs.map +1 -1
- package/dist/llm/index.cjs +7 -6
- package/dist/llm/index.cjs.map +1 -1
- package/dist/llm/index.d.cts +1 -1
- package/dist/llm/index.d.mts +1 -1
- package/dist/llm/index.mjs +2 -1
- package/dist/llm/index.mjs.map +1 -1
- package/dist/parsers/index.d.cts +1 -1
- package/dist/parsers/index.d.mts +1 -1
- package/dist/parsers/index.mjs +1 -1
- package/dist/{parsers-CwkYnyWY.mjs → parsers-DsawHeo0.mjs} +1 -1
- package/dist/{parsers-CwkYnyWY.mjs.map → parsers-DsawHeo0.mjs.map} +1 -1
- package/dist/{types-CadAXrme.d.mts → types-BOcHQU9s.d.mts} +308 -151
- package/dist/types-BOcHQU9s.d.mts.map +1 -0
- package/dist/{types-DPEtPihB.d.cts → types-DutdBpqd.d.cts} +308 -151
- package/dist/types-DutdBpqd.d.cts.map +1 -0
- package/package.json +1 -1
- package/dist/enhancer-ByjRD-t5.mjs.map +0 -1
- package/dist/enhancer-j0xqKDJm.cjs.map +0 -1
- package/dist/types-CadAXrme.d.mts.map +0 -1
- package/dist/types-DPEtPihB.d.cts.map +0 -1
|
@@ -1,7 +1,155 @@
|
|
|
1
1
|
import { CheerioAPI } from "cheerio";
|
|
2
2
|
|
|
3
|
-
//#region src/
|
|
3
|
+
//#region src/core/types.d.ts
|
|
4
4
|
|
|
5
|
+
/**
|
|
6
|
+
* Content type classification for scraped URLs
|
|
7
|
+
*/
|
|
8
|
+
type ContentType = 'article' | 'repo' | 'docs' | 'package' | 'video' | 'tool' | 'product' | 'unknown';
|
|
9
|
+
/**
|
|
10
|
+
* Extracted link from content
|
|
11
|
+
*/
|
|
12
|
+
interface ExtractedLink {
|
|
13
|
+
url: string;
|
|
14
|
+
text: string;
|
|
15
|
+
isExternal: boolean;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Extracted entities from LLM enhancement
|
|
19
|
+
*/
|
|
20
|
+
interface ExtractedEntities {
|
|
21
|
+
people: string[];
|
|
22
|
+
organizations: string[];
|
|
23
|
+
technologies: string[];
|
|
24
|
+
locations: string[];
|
|
25
|
+
concepts: string[];
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Main result of metadata scraping - optimized for LLM consumption
|
|
29
|
+
*/
|
|
30
|
+
interface ScrapedData {
|
|
31
|
+
url: string;
|
|
32
|
+
canonicalUrl: string;
|
|
33
|
+
domain: string;
|
|
34
|
+
title: string;
|
|
35
|
+
description: string;
|
|
36
|
+
image?: string;
|
|
37
|
+
favicon?: string;
|
|
38
|
+
content: string;
|
|
39
|
+
textContent: string;
|
|
40
|
+
excerpt: string;
|
|
41
|
+
wordCount: number;
|
|
42
|
+
author?: string;
|
|
43
|
+
publishedAt?: string;
|
|
44
|
+
modifiedAt?: string;
|
|
45
|
+
siteName?: string;
|
|
46
|
+
language?: string;
|
|
47
|
+
contentType: ContentType;
|
|
48
|
+
keywords: string[];
|
|
49
|
+
jsonLd?: Record<string, unknown>[];
|
|
50
|
+
links?: ExtractedLink[];
|
|
51
|
+
summary?: string;
|
|
52
|
+
suggestedTags?: string[];
|
|
53
|
+
entities?: ExtractedEntities;
|
|
54
|
+
extracted?: Record<string, unknown>;
|
|
55
|
+
custom?: Record<string, unknown>;
|
|
56
|
+
embeddings?: EmbeddingResult;
|
|
57
|
+
scrapedAt: string;
|
|
58
|
+
scrapeTimeMs: number;
|
|
59
|
+
error?: string;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* LLM enhancement types
|
|
63
|
+
*/
|
|
64
|
+
type EnhancementType = 'summarize' | 'tags' | 'entities' | 'classify';
|
|
65
|
+
/**
|
|
66
|
+
* Schema for structured LLM extraction
|
|
67
|
+
*/
|
|
68
|
+
type ExtractionSchemaType = 'string' | 'number' | 'boolean' | 'string[]' | 'number[]' | `${string}?`;
|
|
69
|
+
type ExtractionSchema = Record<string, ExtractionSchemaType>;
|
|
70
|
+
/**
|
|
71
|
+
* Forward declaration for LLM provider (defined in llm/types.ts)
|
|
72
|
+
*/
|
|
73
|
+
interface LLMProvider {
|
|
74
|
+
readonly name: string;
|
|
75
|
+
complete(prompt: string, options?: CompletionOptions): Promise<string>;
|
|
76
|
+
completeJSON<T>(prompt: string, schema: unknown): Promise<T>;
|
|
77
|
+
}
|
|
78
|
+
interface CompletionOptions {
|
|
79
|
+
maxTokens?: number;
|
|
80
|
+
temperature?: number;
|
|
81
|
+
systemPrompt?: string;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Forward declaration for Fetcher (defined in fetchers/types.ts)
|
|
85
|
+
*/
|
|
86
|
+
interface Fetcher {
|
|
87
|
+
readonly name: string;
|
|
88
|
+
fetch(url: string, options: FetchOptions$1): Promise<FetchResult$1>;
|
|
89
|
+
}
|
|
90
|
+
interface FetchOptions$1 {
|
|
91
|
+
timeout?: number;
|
|
92
|
+
userAgent?: string;
|
|
93
|
+
headers?: Record<string, string>;
|
|
94
|
+
}
|
|
95
|
+
interface FetchResult$1 {
|
|
96
|
+
html: string;
|
|
97
|
+
finalUrl: string;
|
|
98
|
+
statusCode: number;
|
|
99
|
+
contentType: string;
|
|
100
|
+
headers?: Record<string, string>;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Forward declaration for Extractor (defined in extractors/types.ts)
|
|
104
|
+
*/
|
|
105
|
+
interface Extractor {
|
|
106
|
+
readonly name: string;
|
|
107
|
+
readonly priority?: number;
|
|
108
|
+
extract(context: ExtractionContext): Promise<Partial<ScrapedData>>;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Shared context passed to all extractors
|
|
112
|
+
*/
|
|
113
|
+
interface ExtractionContext {
|
|
114
|
+
url: string;
|
|
115
|
+
finalUrl: string;
|
|
116
|
+
html: string;
|
|
117
|
+
$: CheerioAPI;
|
|
118
|
+
getDocument(): Document;
|
|
119
|
+
results: Partial<ScrapedData>;
|
|
120
|
+
options: ScrapeOptions;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Options for scraping
|
|
124
|
+
*/
|
|
125
|
+
interface ScrapeOptions {
|
|
126
|
+
/** Timeout in milliseconds (default: 10000) */
|
|
127
|
+
timeout?: number;
|
|
128
|
+
/** User agent string */
|
|
129
|
+
userAgent?: string;
|
|
130
|
+
/** Whether to extract full content (default: true) */
|
|
131
|
+
extractContent?: boolean;
|
|
132
|
+
/** Maximum content length in characters (default: 50000) */
|
|
133
|
+
maxContentLength?: number;
|
|
134
|
+
/** Custom fetcher (for Puppeteer/Playwright) */
|
|
135
|
+
fetcher?: Fetcher;
|
|
136
|
+
/** Custom extractors to run */
|
|
137
|
+
extractors?: Extractor[];
|
|
138
|
+
/** If true, only run custom extractors (replace defaults) */
|
|
139
|
+
replaceDefaultExtractors?: boolean;
|
|
140
|
+
/** Check robots.txt before scraping (default: false) */
|
|
141
|
+
respectRobots?: boolean;
|
|
142
|
+
/** LLM provider for enhancements */
|
|
143
|
+
llm?: LLMProvider;
|
|
144
|
+
/** LLM enhancement types to run */
|
|
145
|
+
enhance?: EnhancementType[];
|
|
146
|
+
/** Schema for structured LLM extraction */
|
|
147
|
+
extract?: ExtractionSchema;
|
|
148
|
+
/** Embedding generation options */
|
|
149
|
+
embeddings?: EmbeddingOptions;
|
|
150
|
+
}
|
|
151
|
+
//#endregion
|
|
152
|
+
//#region src/common/resilience.d.ts
|
|
5
153
|
/**
|
|
6
154
|
* Shared resilience utilities for HTTP providers.
|
|
7
155
|
* Provides retry, circuit breaker, rate limiting, timeout, and concurrency control.
|
|
@@ -72,6 +220,140 @@ interface ResilienceState$1 {
|
|
|
72
220
|
execute<T>(fn: () => Promise<T>): Promise<T>;
|
|
73
221
|
};
|
|
74
222
|
}
|
|
223
|
+
/**
|
|
224
|
+
* Check if an error is retryable.
|
|
225
|
+
*/
|
|
226
|
+
declare function isRetryableError(error: unknown, retryableStatuses?: number[]): boolean;
|
|
227
|
+
/**
|
|
228
|
+
* Execute a function with retry logic.
|
|
229
|
+
*/
|
|
230
|
+
declare function withRetry<T>(fn: () => Promise<T>, config?: RetryConfig$1, onRetry?: (attempt: number, error: Error, delayMs: number) => void): Promise<{
|
|
231
|
+
result: T;
|
|
232
|
+
attempts: number;
|
|
233
|
+
}>;
|
|
234
|
+
/**
|
|
235
|
+
* Execute a function with timeout.
|
|
236
|
+
*/
|
|
237
|
+
declare function withTimeout<T>(fn: (signal: AbortSignal) => Promise<T>, timeoutMs: number): Promise<T>;
|
|
238
|
+
/**
|
|
239
|
+
* Create an AbortSignal that times out after specified milliseconds.
|
|
240
|
+
* If parentSignal is provided, this signal will abort when the parent aborts.
|
|
241
|
+
*/
|
|
242
|
+
declare function createTimeoutSignal(timeoutMs: number, parentSignal?: AbortSignal): AbortSignal;
|
|
243
|
+
/**
|
|
244
|
+
* Error thrown when circuit breaker is open.
|
|
245
|
+
*/
|
|
246
|
+
declare class CircuitOpenError extends Error {
|
|
247
|
+
readonly isCircuitOpen = true;
|
|
248
|
+
constructor(message: string);
|
|
249
|
+
}
|
|
250
|
+
/**
|
|
251
|
+
* Circuit breaker implementation.
|
|
252
|
+
* Prevents cascade failures by stopping requests when failure rate is high.
|
|
253
|
+
*/
|
|
254
|
+
declare class CircuitBreaker {
|
|
255
|
+
private state;
|
|
256
|
+
private readonly failureThreshold;
|
|
257
|
+
private readonly resetTimeoutMs;
|
|
258
|
+
constructor(config?: CircuitBreakerConfig$1);
|
|
259
|
+
/**
|
|
260
|
+
* Check if requests are blocked.
|
|
261
|
+
*/
|
|
262
|
+
isOpen(): boolean;
|
|
263
|
+
/**
|
|
264
|
+
* Get current circuit state.
|
|
265
|
+
*/
|
|
266
|
+
getState(): CircuitState$1;
|
|
267
|
+
/**
|
|
268
|
+
* Record a successful request.
|
|
269
|
+
*/
|
|
270
|
+
recordSuccess(): void;
|
|
271
|
+
/**
|
|
272
|
+
* Record a failed request.
|
|
273
|
+
*/
|
|
274
|
+
recordFailure(): void;
|
|
275
|
+
/**
|
|
276
|
+
* Execute a function with circuit breaker protection.
|
|
277
|
+
*/
|
|
278
|
+
execute<T>(fn: () => Promise<T>): Promise<T>;
|
|
279
|
+
/**
|
|
280
|
+
* Reset the circuit breaker.
|
|
281
|
+
*/
|
|
282
|
+
reset(): void;
|
|
283
|
+
/**
|
|
284
|
+
* Update state based on time (open -> half-open transition).
|
|
285
|
+
*/
|
|
286
|
+
private updateState;
|
|
287
|
+
}
|
|
288
|
+
/**
|
|
289
|
+
* Token bucket rate limiter.
|
|
290
|
+
*/
|
|
291
|
+
declare class RateLimiter {
|
|
292
|
+
private tokens;
|
|
293
|
+
private lastRefill;
|
|
294
|
+
private readonly maxTokens;
|
|
295
|
+
private readonly refillRate;
|
|
296
|
+
constructor(config: RateLimitConfig$1);
|
|
297
|
+
/**
|
|
298
|
+
* Check if a request is allowed without consuming tokens.
|
|
299
|
+
*/
|
|
300
|
+
canProceed(): boolean;
|
|
301
|
+
/**
|
|
302
|
+
* Attempt to acquire tokens for a request.
|
|
303
|
+
* Returns true if allowed, false if rate limited.
|
|
304
|
+
*/
|
|
305
|
+
tryAcquire(tokens?: number): boolean;
|
|
306
|
+
/**
|
|
307
|
+
* Wait until tokens are available, then acquire.
|
|
308
|
+
*/
|
|
309
|
+
acquire(tokens?: number): Promise<void>;
|
|
310
|
+
/**
|
|
311
|
+
* Get time until next token is available (in milliseconds).
|
|
312
|
+
*/
|
|
313
|
+
getWaitTime(): number;
|
|
314
|
+
/**
|
|
315
|
+
* Refill tokens based on elapsed time.
|
|
316
|
+
*/
|
|
317
|
+
private refill;
|
|
318
|
+
}
|
|
319
|
+
/**
|
|
320
|
+
* Semaphore for limiting concurrent operations.
|
|
321
|
+
*/
|
|
322
|
+
declare class Semaphore {
|
|
323
|
+
private permits;
|
|
324
|
+
private waiting;
|
|
325
|
+
constructor(permits: number);
|
|
326
|
+
/**
|
|
327
|
+
* Acquire a permit, waiting if necessary.
|
|
328
|
+
*/
|
|
329
|
+
acquire(): Promise<void>;
|
|
330
|
+
/**
|
|
331
|
+
* Release a permit.
|
|
332
|
+
*/
|
|
333
|
+
release(): void;
|
|
334
|
+
/**
|
|
335
|
+
* Execute function with semaphore protection.
|
|
336
|
+
*/
|
|
337
|
+
execute<T>(fn: () => Promise<T>): Promise<T>;
|
|
338
|
+
}
|
|
339
|
+
/**
|
|
340
|
+
* Execute a function with all resilience features.
|
|
341
|
+
*
|
|
342
|
+
* @param fn - The async function to execute with resilience
|
|
343
|
+
* @param config - Configuration for retry and timeout behavior
|
|
344
|
+
* @param state - Pre-instantiated resilience primitives for stateful features.
|
|
345
|
+
* Circuit breaker, rate limiter, and semaphore must be instantiated by the caller
|
|
346
|
+
* and passed via state to enable those features. This allows sharing state across
|
|
347
|
+
* multiple calls for proper circuit breaker tracking and rate limiting.
|
|
348
|
+
* The config parameter is only used for retry and timeout settings.
|
|
349
|
+
* @param callbacks - Optional callbacks for retry events
|
|
350
|
+
*/
|
|
351
|
+
declare function withResilience<T>(fn: (signal: AbortSignal) => Promise<T>, config?: ResilienceConfig$1, state?: ResilienceState$1, callbacks?: {
|
|
352
|
+
onRetry?: (attempt: number, error: Error, delayMs: number) => void;
|
|
353
|
+
}): Promise<{
|
|
354
|
+
result: T;
|
|
355
|
+
attempts: number;
|
|
356
|
+
}>;
|
|
75
357
|
//#endregion
|
|
76
358
|
//#region src/common/http-base.d.ts
|
|
77
359
|
/**
|
|
@@ -97,7 +379,7 @@ interface BaseHttpConfig<TError = unknown> {
|
|
|
97
379
|
/**
|
|
98
380
|
* Fetch request options for base provider.
|
|
99
381
|
*/
|
|
100
|
-
interface FetchOptions
|
|
382
|
+
interface FetchOptions {
|
|
101
383
|
method?: 'GET' | 'POST';
|
|
102
384
|
body?: unknown;
|
|
103
385
|
headers?: Record<string, string>;
|
|
@@ -106,7 +388,7 @@ interface FetchOptions$1 {
|
|
|
106
388
|
/**
|
|
107
389
|
* Result of a fetch request.
|
|
108
390
|
*/
|
|
109
|
-
interface FetchResult
|
|
391
|
+
interface FetchResult<T> {
|
|
110
392
|
data: T;
|
|
111
393
|
status: number;
|
|
112
394
|
headers: Headers;
|
|
@@ -137,7 +419,7 @@ declare abstract class BaseHttpProvider<TError = unknown> {
|
|
|
137
419
|
/**
|
|
138
420
|
* Make an HTTP request with security and resilience.
|
|
139
421
|
*/
|
|
140
|
-
protected fetch<T>(url: string, options?: FetchOptions
|
|
422
|
+
protected fetch<T>(url: string, options?: FetchOptions): Promise<FetchResult<T>>;
|
|
141
423
|
}
|
|
142
424
|
//#endregion
|
|
143
425
|
//#region src/embeddings/providers/http.d.ts
|
|
@@ -156,6 +438,20 @@ interface HttpEmbeddingConfig<TRequest = unknown, TResponse = unknown, TError =
|
|
|
156
438
|
*/
|
|
157
439
|
responseMapper?: (response: TResponse) => number[][];
|
|
158
440
|
}
|
|
441
|
+
/**
|
|
442
|
+
* HTTP-based embedding provider.
|
|
443
|
+
* Works with any REST API using native fetch.
|
|
444
|
+
*/
|
|
445
|
+
declare class HttpEmbeddingProvider<TRequest = unknown, TResponse = unknown, TError = unknown> extends BaseHttpProvider<TError> implements EmbeddingProvider {
|
|
446
|
+
readonly name = "http-embedding";
|
|
447
|
+
private readonly requestBuilder;
|
|
448
|
+
private readonly responseMapper;
|
|
449
|
+
constructor(config: HttpEmbeddingConfig<TRequest, TResponse, TError>);
|
|
450
|
+
/**
|
|
451
|
+
* Generate embeddings for one or more texts.
|
|
452
|
+
*/
|
|
453
|
+
embed(texts: string[], options: EmbedRequest): Promise<EmbedResponse>;
|
|
454
|
+
}
|
|
159
455
|
/**
|
|
160
456
|
* Create a generic HTTP embedding provider.
|
|
161
457
|
*/
|
|
@@ -521,154 +817,15 @@ interface TextChunk {
|
|
|
521
817
|
* Circuit breaker state.
|
|
522
818
|
*/
|
|
523
819
|
type CircuitState = 'closed' | 'open' | 'half-open';
|
|
524
|
-
//#endregion
|
|
525
|
-
//#region src/core/types.d.ts
|
|
526
|
-
/**
|
|
527
|
-
* Content type classification for scraped URLs
|
|
528
|
-
*/
|
|
529
|
-
type ContentType = 'article' | 'repo' | 'docs' | 'package' | 'video' | 'tool' | 'product' | 'unknown';
|
|
530
|
-
/**
|
|
531
|
-
* Extracted link from content
|
|
532
|
-
*/
|
|
533
|
-
interface ExtractedLink {
|
|
534
|
-
url: string;
|
|
535
|
-
text: string;
|
|
536
|
-
isExternal: boolean;
|
|
537
|
-
}
|
|
538
|
-
/**
|
|
539
|
-
* Extracted entities from LLM enhancement
|
|
540
|
-
*/
|
|
541
|
-
interface ExtractedEntities {
|
|
542
|
-
people: string[];
|
|
543
|
-
organizations: string[];
|
|
544
|
-
technologies: string[];
|
|
545
|
-
locations: string[];
|
|
546
|
-
concepts: string[];
|
|
547
|
-
}
|
|
548
|
-
/**
|
|
549
|
-
* Main result of metadata scraping - optimized for LLM consumption
|
|
550
|
-
*/
|
|
551
|
-
interface ScrapedData {
|
|
552
|
-
url: string;
|
|
553
|
-
canonicalUrl: string;
|
|
554
|
-
domain: string;
|
|
555
|
-
title: string;
|
|
556
|
-
description: string;
|
|
557
|
-
image?: string;
|
|
558
|
-
favicon?: string;
|
|
559
|
-
content: string;
|
|
560
|
-
textContent: string;
|
|
561
|
-
excerpt: string;
|
|
562
|
-
wordCount: number;
|
|
563
|
-
author?: string;
|
|
564
|
-
publishedAt?: string;
|
|
565
|
-
modifiedAt?: string;
|
|
566
|
-
siteName?: string;
|
|
567
|
-
language?: string;
|
|
568
|
-
contentType: ContentType;
|
|
569
|
-
keywords: string[];
|
|
570
|
-
jsonLd?: Record<string, unknown>[];
|
|
571
|
-
links?: ExtractedLink[];
|
|
572
|
-
summary?: string;
|
|
573
|
-
suggestedTags?: string[];
|
|
574
|
-
entities?: ExtractedEntities;
|
|
575
|
-
extracted?: Record<string, unknown>;
|
|
576
|
-
custom?: Record<string, unknown>;
|
|
577
|
-
embeddings?: EmbeddingResult;
|
|
578
|
-
scrapedAt: string;
|
|
579
|
-
scrapeTimeMs: number;
|
|
580
|
-
error?: string;
|
|
581
|
-
}
|
|
582
|
-
/**
|
|
583
|
-
* LLM enhancement types
|
|
584
|
-
*/
|
|
585
|
-
type EnhancementType = 'summarize' | 'tags' | 'entities' | 'classify';
|
|
586
|
-
/**
|
|
587
|
-
* Schema for structured LLM extraction
|
|
588
|
-
*/
|
|
589
|
-
type ExtractionSchemaType = 'string' | 'number' | 'boolean' | 'string[]' | 'number[]' | `${string}?`;
|
|
590
|
-
type ExtractionSchema = Record<string, ExtractionSchemaType>;
|
|
591
|
-
/**
|
|
592
|
-
* Forward declaration for LLM provider (defined in llm/types.ts)
|
|
593
|
-
*/
|
|
594
|
-
interface LLMProvider {
|
|
595
|
-
readonly name: string;
|
|
596
|
-
complete(prompt: string, options?: CompletionOptions): Promise<string>;
|
|
597
|
-
completeJSON<T>(prompt: string, schema: unknown): Promise<T>;
|
|
598
|
-
}
|
|
599
|
-
interface CompletionOptions {
|
|
600
|
-
maxTokens?: number;
|
|
601
|
-
temperature?: number;
|
|
602
|
-
systemPrompt?: string;
|
|
603
|
-
}
|
|
604
|
-
/**
|
|
605
|
-
* Forward declaration for Fetcher (defined in fetchers/types.ts)
|
|
606
|
-
*/
|
|
607
|
-
interface Fetcher {
|
|
608
|
-
readonly name: string;
|
|
609
|
-
fetch(url: string, options: FetchOptions): Promise<FetchResult>;
|
|
610
|
-
}
|
|
611
|
-
interface FetchOptions {
|
|
612
|
-
timeout?: number;
|
|
613
|
-
userAgent?: string;
|
|
614
|
-
headers?: Record<string, string>;
|
|
615
|
-
}
|
|
616
|
-
interface FetchResult {
|
|
617
|
-
html: string;
|
|
618
|
-
finalUrl: string;
|
|
619
|
-
statusCode: number;
|
|
620
|
-
contentType: string;
|
|
621
|
-
headers?: Record<string, string>;
|
|
622
|
-
}
|
|
623
|
-
/**
|
|
624
|
-
* Forward declaration for Extractor (defined in extractors/types.ts)
|
|
625
|
-
*/
|
|
626
|
-
interface Extractor {
|
|
627
|
-
readonly name: string;
|
|
628
|
-
readonly priority?: number;
|
|
629
|
-
extract(context: ExtractionContext): Promise<Partial<ScrapedData>>;
|
|
630
|
-
}
|
|
631
|
-
/**
|
|
632
|
-
* Shared context passed to all extractors
|
|
633
|
-
*/
|
|
634
|
-
interface ExtractionContext {
|
|
635
|
-
url: string;
|
|
636
|
-
finalUrl: string;
|
|
637
|
-
html: string;
|
|
638
|
-
$: CheerioAPI;
|
|
639
|
-
getDocument(): Document;
|
|
640
|
-
results: Partial<ScrapedData>;
|
|
641
|
-
options: ScrapeOptions;
|
|
642
|
-
}
|
|
643
820
|
/**
|
|
644
|
-
*
|
|
821
|
+
* Circuit breaker internal state tracking.
|
|
645
822
|
*/
|
|
646
|
-
interface
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
/** Whether to extract full content (default: true) */
|
|
652
|
-
extractContent?: boolean;
|
|
653
|
-
/** Maximum content length in characters (default: 50000) */
|
|
654
|
-
maxContentLength?: number;
|
|
655
|
-
/** Custom fetcher (for Puppeteer/Playwright) */
|
|
656
|
-
fetcher?: Fetcher;
|
|
657
|
-
/** Custom extractors to run */
|
|
658
|
-
extractors?: Extractor[];
|
|
659
|
-
/** If true, only run custom extractors (replace defaults) */
|
|
660
|
-
replaceDefaultExtractors?: boolean;
|
|
661
|
-
/** Check robots.txt before scraping (default: false) */
|
|
662
|
-
respectRobots?: boolean;
|
|
663
|
-
/** LLM provider for enhancements */
|
|
664
|
-
llm?: LLMProvider;
|
|
665
|
-
/** LLM enhancement types to run */
|
|
666
|
-
enhance?: EnhancementType[];
|
|
667
|
-
/** Schema for structured LLM extraction */
|
|
668
|
-
extract?: ExtractionSchema;
|
|
669
|
-
/** Embedding generation options */
|
|
670
|
-
embeddings?: EmbeddingOptions;
|
|
823
|
+
interface CircuitBreakerState {
|
|
824
|
+
state: CircuitState;
|
|
825
|
+
failures: number;
|
|
826
|
+
lastFailureTime?: number;
|
|
827
|
+
nextAttemptTime?: number;
|
|
671
828
|
}
|
|
672
829
|
//#endregion
|
|
673
|
-
export {
|
|
674
|
-
//# sourceMappingURL=types-
|
|
830
|
+
export { FetchResult$1 as $, HttpEmbeddingProvider as A, withResilience as B, RateLimitConfig as C, SafetyConfig as D, RetryConfig as E, CircuitOpenError as F, EnhancementType as G, withTimeout as H, RateLimiter as I, ExtractionContext as J, ExtractedEntities as K, Semaphore as L, BaseHttpConfig as M, BaseHttpProvider as N, TextChunk as O, CircuitBreaker as P, FetchOptions$1 as Q, createTimeoutSignal as R, PiiRedactionConfig as S, ResilienceState as T, CompletionOptions as U, withRetry as V, ContentType as W, ExtractionSchemaType as X, ExtractionSchema as Y, Extractor as Z, EmbeddingSkipped as _, EmbedRequest as a, EmbeddingSuccessSingle as b, EmbeddingCache as c, EmbeddingInputType as d, Fetcher as et, EmbeddingMetrics as f, EmbeddingResult as g, EmbeddingProviderConfig as h, CircuitState as i, createHttpEmbedding as j, HttpEmbeddingConfig as k, EmbeddingCacheConfig as l, EmbeddingProvider as m, CircuitBreakerConfig as n, ScrapeOptions as nt, EmbedResponse as o, EmbeddingOptions as p, ExtractedLink as q, CircuitBreakerState as r, ScrapedData as rt, EmbeddingAggregation as s, ChunkingConfig as t, LLMProvider as tt, EmbeddingInputConfig as u, EmbeddingSource as v, ResilienceConfig as w, OutputConfig as x, EmbeddingSuccessMultiple as y, isRetryableError as z };
|
|
831
|
+
//# sourceMappingURL=types-BOcHQU9s.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types-BOcHQU9s.d.mts","names":[],"sources":["../src/core/types.ts","../src/common/resilience.ts","../src/common/http-base.ts","../src/embeddings/providers/http.ts","../src/embeddings/types.ts"],"sourcesContent":[],"mappings":"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"}
|