@jambudipa/spider 0.2.3 → 0.3.1
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.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +310 -332
- package/dist/index.js.map +1 -1
- package/dist/lib/Logging/SpiderLogger.service.d.ts.map +1 -1
- package/dist/lib/Middleware/SpiderMiddleware.d.ts +1 -1
- package/dist/lib/Middleware/SpiderMiddleware.d.ts.map +1 -1
- package/dist/lib/Resumability/backends/PostgresStorageBackend.d.ts.map +1 -1
- package/dist/lib/Resumability/types.d.ts +3 -3
- package/dist/lib/Scheduler/SpiderScheduler.service.d.ts +7 -7
- package/dist/lib/Scheduler/SpiderScheduler.service.d.ts.map +1 -1
- package/dist/lib/Scraper/Scraper.service.d.ts +1 -1
- package/dist/lib/Scraper/Scraper.service.d.ts.map +1 -1
- package/dist/lib/Spider/Spider.defaults.d.ts +24 -0
- package/dist/lib/Spider/Spider.defaults.d.ts.map +1 -0
- package/dist/lib/Spider/Spider.service.d.ts +0 -10
- package/dist/lib/Spider/Spider.service.d.ts.map +1 -1
- package/dist/lib/UrlDeduplicator/UrlDeduplicator.service.d.ts.map +1 -1
- package/dist/lib/WebScrapingEngine/WebScrapingEngine.service.d.ts +1 -2
- package/dist/lib/WebScrapingEngine/WebScrapingEngine.service.d.ts.map +1 -1
- package/dist/lib/api-facades.d.ts +1 -1
- package/dist/lib/api-facades.d.ts.map +1 -1
- package/dist/lib/errors/effect-errors.d.ts +167 -34
- package/dist/lib/errors/effect-errors.d.ts.map +1 -1
- package/dist/lib/utils/JsonUtils.d.ts.map +1 -1
- package/dist/lib/utils/UrlUtils.d.ts.map +1 -1
- package/dist/lib/utils/url-deduplication.d.ts.map +1 -1
- package/package.json +7 -10
- package/dist/browser/BrowserManager.d.ts +0 -63
- package/dist/browser/BrowserManager.d.ts.map +0 -1
- package/dist/browser/PlaywrightAdapter.d.ts +0 -166
- package/dist/browser/PlaywrightAdapter.d.ts.map +0 -1
- package/dist/examples/01-basic-crawl-working.d.ts +0 -13
- package/dist/examples/01-basic-crawl-working.d.ts.map +0 -1
- package/dist/examples/02-multiple-urls-working.d.ts +0 -13
- package/dist/examples/02-multiple-urls-working.d.ts.map +0 -1
- package/dist/examples/03-url-filtering.d.ts +0 -13
- package/dist/examples/03-url-filtering.d.ts.map +0 -1
- package/dist/examples/04-robots-compliance.d.ts +0 -14
- package/dist/examples/04-robots-compliance.d.ts.map +0 -1
- package/dist/examples/05-link-extraction-selectors.d.ts +0 -14
- package/dist/examples/05-link-extraction-selectors.d.ts.map +0 -1
- package/dist/examples/06-custom-middleware.d.ts +0 -18
- package/dist/examples/06-custom-middleware.d.ts.map +0 -1
- package/dist/examples/07-resumability-demo.d.ts +0 -14
- package/dist/examples/07-resumability-demo.d.ts.map +0 -1
- package/dist/examples/08-worker-monitoring.d.ts +0 -15
- package/dist/examples/08-worker-monitoring.d.ts.map +0 -1
- package/dist/examples/09-error-handling-recovery.d.ts +0 -15
- package/dist/examples/09-error-handling-recovery.d.ts.map +0 -1
- package/dist/lib/errors.d.ts +0 -172
- package/dist/lib/errors.d.ts.map +0 -1
- package/dist/lib/utils/url-deduplication.test.d.ts +0 -5
- package/dist/lib/utils/url-deduplication.test.d.ts.map +0 -1
- package/dist/test/infrastructure/EffectTestUtils.d.ts +0 -167
- package/dist/test/infrastructure/EffectTestUtils.d.ts.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"url-deduplication.test.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/url-deduplication.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -1,167 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Effect Test Utilities - Enhanced Version
|
|
3
|
-
* Comprehensive helper functions and test infrastructure for Effect-based testing
|
|
4
|
-
*/
|
|
5
|
-
import { Cause, Context, Duration, Effect, Exit, Layer, Option, TestClock } from 'effect';
|
|
6
|
-
declare const TestError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => Cause.YieldableError & {
|
|
7
|
-
readonly _tag: "TestError";
|
|
8
|
-
} & Readonly<A>;
|
|
9
|
-
declare class TestError extends TestError_base<{
|
|
10
|
-
readonly message: string;
|
|
11
|
-
}> {
|
|
12
|
-
}
|
|
13
|
-
declare const TimeoutError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => Cause.YieldableError & {
|
|
14
|
-
readonly _tag: "TimeoutError";
|
|
15
|
-
} & Readonly<A>;
|
|
16
|
-
declare class TimeoutError extends TimeoutError_base<{
|
|
17
|
-
readonly message: string;
|
|
18
|
-
}> {
|
|
19
|
-
}
|
|
20
|
-
declare const AssertionError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => Cause.YieldableError & {
|
|
21
|
-
readonly _tag: "AssertionError";
|
|
22
|
-
} & Readonly<A>;
|
|
23
|
-
declare class AssertionError extends AssertionError_base<{
|
|
24
|
-
readonly message: string;
|
|
25
|
-
}> {
|
|
26
|
-
}
|
|
27
|
-
declare const ConditionTimeoutError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => Cause.YieldableError & {
|
|
28
|
-
readonly _tag: "ConditionTimeoutError";
|
|
29
|
-
} & Readonly<A>;
|
|
30
|
-
declare class ConditionTimeoutError extends ConditionTimeoutError_base<{
|
|
31
|
-
readonly message: string;
|
|
32
|
-
}> {
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Run an Effect and return its result as a Promise
|
|
36
|
-
*/
|
|
37
|
-
export declare const runTest: <A, E>(effect: Effect.Effect<A, E>) => Promise<A>;
|
|
38
|
-
/**
|
|
39
|
-
* Run an Effect synchronously - intended for test setup only
|
|
40
|
-
*/
|
|
41
|
-
export declare const runTestSync: <A, E>(effect: Effect.Effect<A, E>) => A;
|
|
42
|
-
/**
|
|
43
|
-
* Run an Effect and get the Exit result
|
|
44
|
-
*/
|
|
45
|
-
export declare const runForExit: <A, E>(effect: Effect.Effect<A, E>) => Promise<Exit.Exit<A, E>>;
|
|
46
|
-
/**
|
|
47
|
-
* Assert that an Effect succeeds - returns Effect for composition
|
|
48
|
-
*/
|
|
49
|
-
export declare const expectSuccessEffect: <A, E>(effect: Effect.Effect<A, E>) => Effect.Effect<A, AssertionError | E>;
|
|
50
|
-
/**
|
|
51
|
-
* Assert that an Effect succeeds - Promise-based for test frameworks
|
|
52
|
-
*/
|
|
53
|
-
export declare const expectSuccess: <A, E>(effect: Effect.Effect<A, E>) => Promise<A>;
|
|
54
|
-
/**
|
|
55
|
-
* Helper to extract value from Option with timeout
|
|
56
|
-
*/
|
|
57
|
-
export declare const unwrapOption: <A>(option: Option.Option<A>) => Effect.Effect<A, TestError>;
|
|
58
|
-
/**
|
|
59
|
-
* Extract value from Effect<Option<A>> with timeout
|
|
60
|
-
*/
|
|
61
|
-
export declare const extractWithTimeout: <A, E>(effect: Effect.Effect<Option.Option<A>, E>, timeout?: Duration.Duration) => Effect.Effect<A, TestError | TimeoutError | E>;
|
|
62
|
-
/**
|
|
63
|
-
* Assert that an Effect fails - returns Effect for composition
|
|
64
|
-
*/
|
|
65
|
-
export declare const expectFailureEffect: <A, E>(effect: Effect.Effect<A, E>) => Effect.Effect<E, AssertionError>;
|
|
66
|
-
/**
|
|
67
|
-
* Assert that an Effect fails - Promise-based for test frameworks
|
|
68
|
-
*/
|
|
69
|
-
export declare const expectFailure: <A, E>(effect: Effect.Effect<A, E>) => Promise<E>;
|
|
70
|
-
/**
|
|
71
|
-
* Run Effect with test context
|
|
72
|
-
*/
|
|
73
|
-
export declare const runWithContext: <A, E, R>(effect: Effect.Effect<A, E, R>, context: Layer.Layer<R>) => Promise<A>;
|
|
74
|
-
/**
|
|
75
|
-
* Create a test layer
|
|
76
|
-
*/
|
|
77
|
-
export declare const createTestLayer: <ROut, E = never, RIn = never>(layer: Layer.Layer<ROut, E, RIn>) => Layer.Layer<ROut, E, RIn>;
|
|
78
|
-
/**
|
|
79
|
-
* Combine multiple test layers
|
|
80
|
-
*/
|
|
81
|
-
export declare const combineTestLayers: <R1, R2>(layer1: Layer.Layer<R1>, layer2: Layer.Layer<R2>) => Layer.Layer<R1 & R2>;
|
|
82
|
-
/**
|
|
83
|
-
* Wait for condition with timeout
|
|
84
|
-
*/
|
|
85
|
-
export declare const waitForCondition: (predicate: () => boolean, options?: {
|
|
86
|
-
timeout?: Duration.Duration;
|
|
87
|
-
interval?: Duration.Duration;
|
|
88
|
-
message?: string;
|
|
89
|
-
}) => Effect.Effect<void, ConditionTimeoutError>;
|
|
90
|
-
/**
|
|
91
|
-
* Create Effect assertion helper - Effect-based version
|
|
92
|
-
*/
|
|
93
|
-
export declare const expectEffectGen: <A, E>(effect: Effect.Effect<A, E>) => {
|
|
94
|
-
toSucceedWith: (expected: A) => Effect.Effect<void, AssertionError | E>;
|
|
95
|
-
toSucceed: () => Effect.Effect<A, AssertionError | E>;
|
|
96
|
-
toFail: () => Effect.Effect<E, AssertionError>;
|
|
97
|
-
toFailWith: (errorCheck: (error: E) => boolean) => Effect.Effect<void, AssertionError>;
|
|
98
|
-
};
|
|
99
|
-
/**
|
|
100
|
-
* Run Effect synchronously with test services - test boundary utility
|
|
101
|
-
*/
|
|
102
|
-
export declare const runSyncWithTestServices: <A, E>(effect: Effect.Effect<A, E>, _options?: {
|
|
103
|
-
seed?: number;
|
|
104
|
-
currentTime?: number;
|
|
105
|
-
}) => A;
|
|
106
|
-
/**
|
|
107
|
-
* Create a mock service layer with proper typing
|
|
108
|
-
*/
|
|
109
|
-
export declare const createMockServiceLayer: <S, I>(tag: Context.Tag<I, S>, implementation: S) => Layer.Layer<I>;
|
|
110
|
-
/**
|
|
111
|
-
* Test layer for common services
|
|
112
|
-
*/
|
|
113
|
-
export declare const commonTestLayers: {
|
|
114
|
-
clock: Layer.Layer<TestClock.TestClock, never, import("effect/TestAnnotations").TestAnnotations | import("effect/TestLive").TestLive>;
|
|
115
|
-
random: Layer.Layer<never, never, never>;
|
|
116
|
-
deterministic: Layer.Layer<TestClock.TestClock, never, import("effect/TestAnnotations").TestAnnotations | import("effect/TestLive").TestLive>;
|
|
117
|
-
};
|
|
118
|
-
/**
|
|
119
|
-
* Helper to test Effect retries
|
|
120
|
-
*/
|
|
121
|
-
export declare const testWithRetries: <A, E>(effect: Effect.Effect<A, E>, maxAttempts?: number) => Effect.Effect<{
|
|
122
|
-
result: Exit.Exit<A, E>;
|
|
123
|
-
attempts: number;
|
|
124
|
-
}>;
|
|
125
|
-
/**
|
|
126
|
-
* Test helper for timeout scenarios
|
|
127
|
-
*/
|
|
128
|
-
export declare const testTimeout: <A, E>(effect: Effect.Effect<A, E>, duration: Duration.Duration) => Effect.Effect<Option.Option<A>, E>;
|
|
129
|
-
/**
|
|
130
|
-
* Helper for testing concurrent operations
|
|
131
|
-
*/
|
|
132
|
-
export declare const testConcurrent: <A, E>(effects: Effect.Effect<A, E>[], options?: {
|
|
133
|
-
concurrency?: number;
|
|
134
|
-
}) => Effect.Effect<A[], E>;
|
|
135
|
-
/**
|
|
136
|
-
* Create a test environment with all common test services
|
|
137
|
-
*/
|
|
138
|
-
export declare const createTestEnvironment: () => {
|
|
139
|
-
provide: <A, E, R>(effect: Effect.Effect<A, E, R>, layer: Layer.Layer<R>) => Effect.Effect<A, E, Exclude<R, R>>;
|
|
140
|
-
cleanup: () => void;
|
|
141
|
-
addCleanup: (fn: () => void) => void;
|
|
142
|
-
};
|
|
143
|
-
/**
|
|
144
|
-
* Test data generators
|
|
145
|
-
*/
|
|
146
|
-
export declare const testData: {
|
|
147
|
-
randomString: (length?: number) => Effect.Effect<string>;
|
|
148
|
-
randomNumber: (min: number, max: number) => Effect.Effect<number>;
|
|
149
|
-
randomBoolean: () => Effect.Effect<boolean>;
|
|
150
|
-
};
|
|
151
|
-
/**
|
|
152
|
-
* Matcher for Effect errors
|
|
153
|
-
*/
|
|
154
|
-
export declare const errorMatchers: {
|
|
155
|
-
isTaggedError: (error: unknown, tag: string) => boolean;
|
|
156
|
-
hasMessage: (error: unknown, message: string | RegExp) => boolean;
|
|
157
|
-
hasProperty: <T>(error: unknown, property: string, value?: T) => boolean;
|
|
158
|
-
};
|
|
159
|
-
/**
|
|
160
|
-
* Test fixtures factory - Effect-based version
|
|
161
|
-
*/
|
|
162
|
-
export declare const createFixture: <T>(setup: () => Effect.Effect<T>, teardown?: (fixture: T) => Effect.Effect<void>) => {
|
|
163
|
-
use: <A, E>(test: (fixture: T) => Effect.Effect<A, E>) => Effect.Effect<A, E>;
|
|
164
|
-
usePromise: <A, E_1>(test: (fixture: T) => Effect.Effect<A, E_1>) => Promise<A>;
|
|
165
|
-
};
|
|
166
|
-
export {};
|
|
167
|
-
//# sourceMappingURL=EffectTestUtils.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EffectTestUtils.d.ts","sourceRoot":"","sources":["../../../src/test/infrastructure/EffectTestUtils.ts"],"names":[],"mappings":"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"}
|