newscatcher-catchall-sdk 1.1.2 → 1.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/README.md +305 -284
- package/dist/cjs/BaseClient.js +2 -2
- package/dist/cjs/Client.d.ts +12 -0
- package/dist/cjs/Client.js +67 -0
- package/dist/cjs/api/resources/jobs/client/Client.d.ts +2 -1
- package/dist/cjs/api/resources/jobs/client/Client.js +2 -1
- package/dist/cjs/api/resources/jobs/client/requests/SubmitRequestDto.d.ts +22 -1
- package/dist/cjs/api/resources/jobs/client/requests/SubmitRequestDto.js +14 -0
- package/dist/cjs/api/resources/jobs/client/requests/index.d.ts +1 -1
- package/dist/cjs/api/resources/jobs/client/requests/index.js +3 -0
- package/dist/cjs/api/resources/meta/client/Client.d.ts +15 -3
- package/dist/cjs/api/resources/meta/client/Client.js +49 -1
- package/dist/cjs/api/types/GetPlanLimitsResponseDto.d.ts +5 -0
- package/dist/cjs/api/types/GetPlanLimitsResponseDto.js +3 -0
- package/dist/cjs/api/types/MonitorListItemDto.d.ts +4 -2
- package/dist/cjs/api/types/PlanFeature.d.ts +12 -0
- package/dist/cjs/api/types/PlanFeature.js +3 -0
- package/dist/cjs/api/types/PullJobResponseDto.d.ts +12 -8
- package/dist/cjs/api/types/PullJobResponseDto.js +9 -0
- package/dist/cjs/api/types/UserJob.d.ts +12 -0
- package/dist/cjs/api/types/UserJob.js +9 -0
- package/dist/cjs/api/types/index.d.ts +2 -0
- package/dist/cjs/api/types/index.js +2 -0
- package/dist/cjs/core/fetcher/BinaryResponse.d.ts +1 -1
- package/dist/cjs/core/fetcher/index.d.ts +2 -0
- package/dist/cjs/core/fetcher/index.js +3 -1
- package/dist/cjs/core/fetcher/makePassthroughRequest.d.ts +49 -0
- package/dist/cjs/core/fetcher/makePassthroughRequest.js +135 -0
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/BaseClient.mjs +2 -2
- package/dist/esm/Client.d.mts +12 -0
- package/dist/esm/Client.mjs +34 -0
- package/dist/esm/api/resources/jobs/client/Client.d.mts +2 -1
- package/dist/esm/api/resources/jobs/client/Client.mjs +2 -1
- package/dist/esm/api/resources/jobs/client/requests/SubmitRequestDto.d.mts +22 -1
- package/dist/esm/api/resources/jobs/client/requests/SubmitRequestDto.mjs +13 -1
- package/dist/esm/api/resources/jobs/client/requests/index.d.mts +1 -1
- package/dist/esm/api/resources/jobs/client/requests/index.mjs +1 -1
- package/dist/esm/api/resources/meta/client/Client.d.mts +15 -3
- package/dist/esm/api/resources/meta/client/Client.mjs +50 -2
- package/dist/esm/api/types/GetPlanLimitsResponseDto.d.mts +5 -0
- package/dist/esm/api/types/GetPlanLimitsResponseDto.mjs +2 -0
- package/dist/esm/api/types/MonitorListItemDto.d.mts +4 -2
- package/dist/esm/api/types/PlanFeature.d.mts +12 -0
- package/dist/esm/api/types/PlanFeature.mjs +2 -0
- package/dist/esm/api/types/PullJobResponseDto.d.mts +12 -8
- package/dist/esm/api/types/PullJobResponseDto.mjs +8 -1
- package/dist/esm/api/types/UserJob.d.mts +12 -0
- package/dist/esm/api/types/UserJob.mjs +8 -1
- package/dist/esm/api/types/index.d.mts +2 -0
- package/dist/esm/api/types/index.mjs +2 -0
- package/dist/esm/core/fetcher/BinaryResponse.d.mts +1 -1
- package/dist/esm/core/fetcher/index.d.mts +2 -0
- package/dist/esm/core/fetcher/index.mjs +1 -0
- package/dist/esm/core/fetcher/makePassthroughRequest.d.mts +49 -0
- package/dist/esm/core/fetcher/makePassthroughRequest.mjs +132 -0
- package/dist/esm/version.d.mts +1 -1
- package/dist/esm/version.mjs +1 -1
- package/package.json +1 -1
- package/reference.md +57 -1
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { type LogConfig, type Logger } from "../logging/logger.mjs";
|
|
2
|
+
import { Supplier } from "./Supplier.mjs";
|
|
3
|
+
export declare namespace PassthroughRequest {
|
|
4
|
+
/**
|
|
5
|
+
* Per-request options that can override the SDK client defaults.
|
|
6
|
+
*/
|
|
7
|
+
interface RequestOptions {
|
|
8
|
+
/** Override the default timeout for this request (in seconds). */
|
|
9
|
+
timeoutInSeconds?: number;
|
|
10
|
+
/** Override the default number of retries for this request. */
|
|
11
|
+
maxRetries?: number;
|
|
12
|
+
/** Additional headers to include in this request. */
|
|
13
|
+
headers?: Record<string, string>;
|
|
14
|
+
/** Abort signal for this request. */
|
|
15
|
+
abortSignal?: AbortSignal;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* SDK client configuration used by the passthrough fetch method.
|
|
19
|
+
*/
|
|
20
|
+
interface ClientOptions {
|
|
21
|
+
/** The base URL or environment for the client. */
|
|
22
|
+
environment?: Supplier<string>;
|
|
23
|
+
/** Override the base URL. */
|
|
24
|
+
baseUrl?: Supplier<string>;
|
|
25
|
+
/** Default headers to include in requests. */
|
|
26
|
+
headers?: Record<string, unknown>;
|
|
27
|
+
/** Default maximum time to wait for a response in seconds. */
|
|
28
|
+
timeoutInSeconds?: number;
|
|
29
|
+
/** Default number of times to retry the request. Defaults to 2. */
|
|
30
|
+
maxRetries?: number;
|
|
31
|
+
/** A custom fetch function. */
|
|
32
|
+
fetch?: typeof fetch;
|
|
33
|
+
/** Logging configuration. */
|
|
34
|
+
logging?: LogConfig | Logger;
|
|
35
|
+
/** A function that returns auth headers. */
|
|
36
|
+
getAuthHeaders?: () => Promise<Record<string, string>>;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Makes a passthrough HTTP request using the SDK's configuration (auth, retry, logging, etc.)
|
|
41
|
+
* while mimicking the standard `fetch` API.
|
|
42
|
+
*
|
|
43
|
+
* @param input - The URL, path, or Request object. If a relative path, it will be resolved against the configured base URL.
|
|
44
|
+
* @param init - Standard RequestInit options (method, headers, body, signal, etc.)
|
|
45
|
+
* @param clientOptions - SDK client options (auth, default headers, logging, etc.)
|
|
46
|
+
* @param requestOptions - Per-request overrides (timeout, retries, extra headers, abort signal).
|
|
47
|
+
* @returns A standard Response object.
|
|
48
|
+
*/
|
|
49
|
+
export declare function makePassthroughRequest(input: Request | string | URL, init: RequestInit | undefined, clientOptions: PassthroughRequest.ClientOptions, requestOptions?: PassthroughRequest.RequestOptions): Promise<Response>;
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { createLogger } from "../logging/logger.mjs";
|
|
11
|
+
import { join } from "../url/join.mjs";
|
|
12
|
+
import { EndpointSupplier } from "./EndpointSupplier.mjs";
|
|
13
|
+
import { getFetchFn } from "./getFetchFn.mjs";
|
|
14
|
+
import { makeRequest } from "./makeRequest.mjs";
|
|
15
|
+
import { requestWithRetries } from "./requestWithRetries.mjs";
|
|
16
|
+
import { Supplier } from "./Supplier.mjs";
|
|
17
|
+
/**
|
|
18
|
+
* Makes a passthrough HTTP request using the SDK's configuration (auth, retry, logging, etc.)
|
|
19
|
+
* while mimicking the standard `fetch` API.
|
|
20
|
+
*
|
|
21
|
+
* @param input - The URL, path, or Request object. If a relative path, it will be resolved against the configured base URL.
|
|
22
|
+
* @param init - Standard RequestInit options (method, headers, body, signal, etc.)
|
|
23
|
+
* @param clientOptions - SDK client options (auth, default headers, logging, etc.)
|
|
24
|
+
* @param requestOptions - Per-request overrides (timeout, retries, extra headers, abort signal).
|
|
25
|
+
* @returns A standard Response object.
|
|
26
|
+
*/
|
|
27
|
+
export function makePassthroughRequest(input, init, clientOptions, requestOptions) {
|
|
28
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
30
|
+
const logger = createLogger(clientOptions.logging);
|
|
31
|
+
// Extract URL and default init properties from Request object if provided
|
|
32
|
+
let url;
|
|
33
|
+
let effectiveInit = init;
|
|
34
|
+
if (input instanceof Request) {
|
|
35
|
+
url = input.url;
|
|
36
|
+
// If no explicit init provided, extract properties from the Request object
|
|
37
|
+
if (init == null) {
|
|
38
|
+
effectiveInit = {
|
|
39
|
+
method: input.method,
|
|
40
|
+
headers: Object.fromEntries(input.headers.entries()),
|
|
41
|
+
body: input.body,
|
|
42
|
+
signal: input.signal,
|
|
43
|
+
credentials: input.credentials,
|
|
44
|
+
cache: input.cache,
|
|
45
|
+
redirect: input.redirect,
|
|
46
|
+
referrer: input.referrer,
|
|
47
|
+
integrity: input.integrity,
|
|
48
|
+
mode: input.mode,
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
url = input instanceof URL ? input.toString() : input;
|
|
54
|
+
}
|
|
55
|
+
// Resolve the base URL
|
|
56
|
+
const baseUrl = (_a = (clientOptions.baseUrl != null ? yield Supplier.get(clientOptions.baseUrl) : undefined)) !== null && _a !== void 0 ? _a : (clientOptions.environment != null ? yield Supplier.get(clientOptions.environment) : undefined);
|
|
57
|
+
// Determine the full URL
|
|
58
|
+
let fullUrl;
|
|
59
|
+
if (url.startsWith("http://") || url.startsWith("https://")) {
|
|
60
|
+
fullUrl = url;
|
|
61
|
+
}
|
|
62
|
+
else if (baseUrl != null) {
|
|
63
|
+
fullUrl = join(baseUrl, url);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
fullUrl = url;
|
|
67
|
+
}
|
|
68
|
+
// Merge headers: SDK default headers -> auth headers -> user-provided headers
|
|
69
|
+
const mergedHeaders = {};
|
|
70
|
+
// Apply SDK default headers (resolve suppliers)
|
|
71
|
+
if (clientOptions.headers != null) {
|
|
72
|
+
for (const [key, value] of Object.entries(clientOptions.headers)) {
|
|
73
|
+
const resolved = yield EndpointSupplier.get(value, { endpointMetadata: {} });
|
|
74
|
+
if (resolved != null) {
|
|
75
|
+
mergedHeaders[key.toLowerCase()] = `${resolved}`;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
// Apply auth headers
|
|
80
|
+
if (clientOptions.getAuthHeaders != null) {
|
|
81
|
+
const authHeaders = yield clientOptions.getAuthHeaders();
|
|
82
|
+
for (const [key, value] of Object.entries(authHeaders)) {
|
|
83
|
+
mergedHeaders[key.toLowerCase()] = value;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
// Apply user-provided headers from init
|
|
87
|
+
if ((effectiveInit === null || effectiveInit === void 0 ? void 0 : effectiveInit.headers) != null) {
|
|
88
|
+
const initHeaders = effectiveInit.headers instanceof Headers
|
|
89
|
+
? Object.fromEntries(effectiveInit.headers.entries())
|
|
90
|
+
: Array.isArray(effectiveInit.headers)
|
|
91
|
+
? Object.fromEntries(effectiveInit.headers)
|
|
92
|
+
: effectiveInit.headers;
|
|
93
|
+
for (const [key, value] of Object.entries(initHeaders)) {
|
|
94
|
+
if (value != null) {
|
|
95
|
+
mergedHeaders[key.toLowerCase()] = value;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
// Apply per-request option headers (highest priority)
|
|
100
|
+
if ((requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers) != null) {
|
|
101
|
+
for (const [key, value] of Object.entries(requestOptions.headers)) {
|
|
102
|
+
mergedHeaders[key.toLowerCase()] = value;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
const method = (_b = effectiveInit === null || effectiveInit === void 0 ? void 0 : effectiveInit.method) !== null && _b !== void 0 ? _b : "GET";
|
|
106
|
+
const body = effectiveInit === null || effectiveInit === void 0 ? void 0 : effectiveInit.body;
|
|
107
|
+
const timeoutInSeconds = (_c = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) !== null && _c !== void 0 ? _c : clientOptions.timeoutInSeconds;
|
|
108
|
+
const timeoutMs = timeoutInSeconds != null ? timeoutInSeconds * 1000 : undefined;
|
|
109
|
+
const maxRetries = (_d = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries) !== null && _d !== void 0 ? _d : clientOptions.maxRetries;
|
|
110
|
+
const abortSignal = (_f = (_e = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal) !== null && _e !== void 0 ? _e : effectiveInit === null || effectiveInit === void 0 ? void 0 : effectiveInit.signal) !== null && _f !== void 0 ? _f : undefined;
|
|
111
|
+
const fetchFn = (_g = clientOptions.fetch) !== null && _g !== void 0 ? _g : (yield getFetchFn());
|
|
112
|
+
if (logger.isDebug()) {
|
|
113
|
+
logger.debug("Making passthrough HTTP request", {
|
|
114
|
+
method,
|
|
115
|
+
url: fullUrl,
|
|
116
|
+
hasBody: body != null,
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
const response = yield requestWithRetries(() => __awaiter(this, void 0, void 0, function* () {
|
|
120
|
+
return makeRequest(fetchFn, fullUrl, method, mergedHeaders, body !== null && body !== void 0 ? body : undefined, timeoutMs, abortSignal, (effectiveInit === null || effectiveInit === void 0 ? void 0 : effectiveInit.credentials) === "include", undefined, // duplex
|
|
121
|
+
false);
|
|
122
|
+
}), maxRetries);
|
|
123
|
+
if (logger.isDebug()) {
|
|
124
|
+
logger.debug("Passthrough HTTP request completed", {
|
|
125
|
+
method,
|
|
126
|
+
url: fullUrl,
|
|
127
|
+
statusCode: response.status,
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
return response;
|
|
131
|
+
});
|
|
132
|
+
}
|
package/dist/esm/version.d.mts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const SDK_VERSION = "1.1
|
|
1
|
+
export declare const SDK_VERSION = "1.3.1";
|
package/dist/esm/version.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const SDK_VERSION = "1.1
|
|
1
|
+
export const SDK_VERSION = "1.3.1";
|
package/package.json
CHANGED
package/reference.md
CHANGED
|
@@ -98,7 +98,8 @@ await client.jobs.createJob({
|
|
|
98
98
|
context: "Focus on funding amount and company name",
|
|
99
99
|
limit: 10,
|
|
100
100
|
start_date: "2026-02-18T00:00:00Z",
|
|
101
|
-
end_date: "2026-02-23T00:00:00Z"
|
|
101
|
+
end_date: "2026-02-23T00:00:00Z",
|
|
102
|
+
mode: "base"
|
|
102
103
|
});
|
|
103
104
|
|
|
104
105
|
```
|
|
@@ -977,3 +978,58 @@ await client.meta.getVersion();
|
|
|
977
978
|
</dl>
|
|
978
979
|
</details>
|
|
979
980
|
|
|
981
|
+
<details><summary><code>client.meta.<a href="/src/api/resources/meta/client/Client.ts">getPlanLimits</a>() -> CatchAllApi.GetPlanLimitsResponseDto</code></summary>
|
|
982
|
+
<dl>
|
|
983
|
+
<dd>
|
|
984
|
+
|
|
985
|
+
#### 📝 Description
|
|
986
|
+
|
|
987
|
+
<dl>
|
|
988
|
+
<dd>
|
|
989
|
+
|
|
990
|
+
<dl>
|
|
991
|
+
<dd>
|
|
992
|
+
|
|
993
|
+
Returns plan features and current usage for the authenticated organization.
|
|
994
|
+
</dd>
|
|
995
|
+
</dl>
|
|
996
|
+
</dd>
|
|
997
|
+
</dl>
|
|
998
|
+
|
|
999
|
+
#### 🔌 Usage
|
|
1000
|
+
|
|
1001
|
+
<dl>
|
|
1002
|
+
<dd>
|
|
1003
|
+
|
|
1004
|
+
<dl>
|
|
1005
|
+
<dd>
|
|
1006
|
+
|
|
1007
|
+
```typescript
|
|
1008
|
+
await client.meta.getPlanLimits();
|
|
1009
|
+
|
|
1010
|
+
```
|
|
1011
|
+
</dd>
|
|
1012
|
+
</dl>
|
|
1013
|
+
</dd>
|
|
1014
|
+
</dl>
|
|
1015
|
+
|
|
1016
|
+
#### ⚙️ Parameters
|
|
1017
|
+
|
|
1018
|
+
<dl>
|
|
1019
|
+
<dd>
|
|
1020
|
+
|
|
1021
|
+
<dl>
|
|
1022
|
+
<dd>
|
|
1023
|
+
|
|
1024
|
+
**requestOptions:** `MetaClient.RequestOptions`
|
|
1025
|
+
|
|
1026
|
+
</dd>
|
|
1027
|
+
</dl>
|
|
1028
|
+
</dd>
|
|
1029
|
+
</dl>
|
|
1030
|
+
|
|
1031
|
+
|
|
1032
|
+
</dd>
|
|
1033
|
+
</dl>
|
|
1034
|
+
</details>
|
|
1035
|
+
|