@cyanheads/pubmed-mcp-server 2.5.0 → 2.5.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/CLAUDE.md +1 -1
- package/README.md +5 -2
- package/dist/config/server-config.d.ts +1 -0
- package/dist/config/server-config.d.ts.map +1 -1
- package/dist/config/server-config.js +8 -1
- package/dist/config/server-config.js.map +1 -1
- package/dist/mcp-server/resources/definitions/database-info.resource.d.ts.map +1 -1
- package/dist/mcp-server/resources/definitions/database-info.resource.js +1 -1
- package/dist/mcp-server/resources/definitions/database-info.resource.js.map +1 -1
- package/dist/mcp-server/tools/definitions/convert-ids.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/convert-ids.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/fetch-articles.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/fetch-articles.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/fetch-fulltext.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/fetch-fulltext.tool.js +9 -4
- package/dist/mcp-server/tools/definitions/fetch-fulltext.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/find-related.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/find-related.tool.js +2 -2
- package/dist/mcp-server/tools/definitions/find-related.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/format-citations.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/format-citations.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/lookup-citation.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/lookup-citation.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/lookup-mesh.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/lookup-mesh.tool.js +4 -3
- package/dist/mcp-server/tools/definitions/lookup-mesh.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/search-articles.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/search-articles.tool.js +2 -2
- package/dist/mcp-server/tools/definitions/search-articles.tool.js.map +1 -1
- package/dist/services/ncbi/api-client.d.ts +1 -1
- package/dist/services/ncbi/api-client.d.ts.map +1 -1
- package/dist/services/ncbi/api-client.js +12 -9
- package/dist/services/ncbi/api-client.js.map +1 -1
- package/dist/services/ncbi/ncbi-service.d.ts +27 -14
- package/dist/services/ncbi/ncbi-service.d.ts.map +1 -1
- package/dist/services/ncbi/ncbi-service.js +102 -23
- package/dist/services/ncbi/ncbi-service.js.map +1 -1
- package/dist/services/ncbi/types.d.ts +14 -0
- package/dist/services/ncbi/types.d.ts.map +1 -1
- package/package.json +2 -2
- package/server.json +9 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-articles.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-articles.tool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"search-articles.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-articles.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,7 +26,7 @@ export declare class NcbiApiClient {
|
|
|
26
26
|
* error status codes — fetchWithTimeout throws before the body can be read.
|
|
27
27
|
* Injects tool and email params but not api_key (eutils-specific).
|
|
28
28
|
*/
|
|
29
|
-
makeExternalRequest(url: string, params: NcbiRequestParams): Promise<string>;
|
|
29
|
+
makeExternalRequest(url: string, params: NcbiRequestParams, externalSignal?: AbortSignal): Promise<string>;
|
|
30
30
|
private buildParams;
|
|
31
31
|
private shouldPost;
|
|
32
32
|
private getRequest;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../../src/services/ncbi/api-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAwB,KAAK,kBAAkB,EAAE,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAKnG,MAAM,WAAW,mBAAmB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,qBAAa,aAAa;IACZ,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,mBAAmB;IAElD,WAAW,CACf,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,iBAAiB,EACzB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,MAAM,CAAC;IAyClB;;;;;OAKG;IACG,mBAAmB,
|
|
1
|
+
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../../src/services/ncbi/api-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAwB,KAAK,kBAAkB,EAAE,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAKnG,MAAM,WAAW,mBAAmB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,qBAAa,aAAa;IACZ,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,mBAAmB;IAElD,WAAW,CACf,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,iBAAiB,EACzB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,MAAM,CAAC;IAyClB;;;;;OAKG;IACG,mBAAmB,CACvB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,iBAAiB,EACzB,cAAc,CAAC,EAAE,WAAW,GAC3B,OAAO,CAAC,MAAM,CAAC;IAiDlB,OAAO,CAAC,WAAW;IAiBnB,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,WAAW;CAcpB"}
|
|
@@ -29,8 +29,8 @@ export class NcbiApiClient {
|
|
|
29
29
|
endpoint,
|
|
30
30
|
});
|
|
31
31
|
const response = usePost
|
|
32
|
-
? await this.postRequest(url, finalParams)
|
|
33
|
-
: await this.getRequest(url, finalParams);
|
|
32
|
+
? await this.postRequest(url, finalParams, options?.signal)
|
|
33
|
+
: await this.getRequest(url, finalParams, options?.signal);
|
|
34
34
|
if (!response.ok) {
|
|
35
35
|
let code;
|
|
36
36
|
if (response.status === 429) {
|
|
@@ -64,7 +64,7 @@ export class NcbiApiClient {
|
|
|
64
64
|
* error status codes — fetchWithTimeout throws before the body can be read.
|
|
65
65
|
* Injects tool and email params but not api_key (eutils-specific).
|
|
66
66
|
*/
|
|
67
|
-
async makeExternalRequest(url, params) {
|
|
67
|
+
async makeExternalRequest(url, params, externalSignal) {
|
|
68
68
|
const finalParams = {
|
|
69
69
|
tool: this.config.toolIdentifier,
|
|
70
70
|
...(this.config.adminEmail && { email: this.config.adminEmail }),
|
|
@@ -75,11 +75,13 @@ export class NcbiApiClient {
|
|
|
75
75
|
}
|
|
76
76
|
const qs = new URLSearchParams(finalParams).toString();
|
|
77
77
|
const fullUrl = qs ? `${url}?${qs}` : url;
|
|
78
|
+
const timeoutSignal = AbortSignal.timeout(this.config.timeoutMs);
|
|
79
|
+
const signal = externalSignal
|
|
80
|
+
? AbortSignal.any([timeoutSignal, externalSignal])
|
|
81
|
+
: timeoutSignal;
|
|
78
82
|
try {
|
|
79
83
|
logger.debug(`NCBI external request: GET ${fullUrl}`, { url });
|
|
80
|
-
const response = await fetch(fullUrl, {
|
|
81
|
-
signal: AbortSignal.timeout(this.config.timeoutMs),
|
|
82
|
-
});
|
|
84
|
+
const response = await fetch(fullUrl, { signal });
|
|
83
85
|
const body = await response.text();
|
|
84
86
|
if (!response.ok) {
|
|
85
87
|
let code;
|
|
@@ -126,19 +128,20 @@ export class NcbiApiClient {
|
|
|
126
128
|
const queryString = new URLSearchParams(params).toString();
|
|
127
129
|
return queryString.length > POST_THRESHOLD;
|
|
128
130
|
}
|
|
129
|
-
getRequest(url, params) {
|
|
131
|
+
getRequest(url, params, signal) {
|
|
130
132
|
const qs = new URLSearchParams(params).toString();
|
|
131
133
|
const fullUrl = qs ? `${url}?${qs}` : url;
|
|
132
134
|
const ctx = requestContextService.createRequestContext({ operation: 'NcbiGet', url: fullUrl });
|
|
133
|
-
return fetchWithTimeout(fullUrl, this.config.timeoutMs, ctx);
|
|
135
|
+
return fetchWithTimeout(fullUrl, this.config.timeoutMs, ctx, signal ? { signal } : undefined);
|
|
134
136
|
}
|
|
135
|
-
postRequest(url, params) {
|
|
137
|
+
postRequest(url, params, signal) {
|
|
136
138
|
const body = new URLSearchParams(params).toString();
|
|
137
139
|
const ctx = requestContextService.createRequestContext({ operation: 'NcbiPost', url });
|
|
138
140
|
return fetchWithTimeout(url, this.config.timeoutMs, ctx, {
|
|
139
141
|
method: 'POST',
|
|
140
142
|
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
|
|
141
143
|
body,
|
|
144
|
+
...(signal && { signal }),
|
|
142
145
|
});
|
|
143
146
|
}
|
|
144
147
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../../src/services/ncbi/api-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAE/F,OAAO,EAAE,oBAAoB,EAAmD,MAAM,YAAY,CAAC;AAEnG,kFAAkF;AAClF,MAAM,cAAc,GAAG,IAAI,CAAC;AAS5B;;;;GAIG;AACH,MAAM,OAAO,aAAa;IACK;IAA7B,YAA6B,MAA2B;QAA3B,WAAM,GAAN,MAAM,CAAqB;IAAG,CAAC;IAE5D,KAAK,CAAC,WAAW,CACf,QAAgB,EAChB,MAAyB,EACzB,OAA4B;QAE5B,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;QACrD,MAAM,GAAG,GAAG,GAAG,oBAAoB,IAAI,QAAQ,GAAG,MAAM,EAAE,CAAC;QAE3D,IAAI,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,sBAAsB,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,EAAE,EAAE;gBACpE,QAAQ;aACA,CAAC,CAAC;YAEZ,MAAM,QAAQ,GAAG,OAAO;gBACtB,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../../src/services/ncbi/api-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
import { NcbiApiClient } from './api-client.js';
|
|
8
8
|
import { NcbiRequestQueue } from './request-queue.js';
|
|
9
9
|
import { NcbiResponseHandler } from './response-handler.js';
|
|
10
|
-
import { type ECitMatchCitation, type ECitMatchResult, type ESearchResult, type ESpellResult, type ESummaryResult, type IdConvertRecord, type NcbiRequestOptions, type NcbiRequestParams, type XmlPubmedArticleSet } from './types.js';
|
|
10
|
+
import { type ECitMatchCitation, type ECitMatchResult, type ESearchResult, type ESpellResult, type ESummaryResult, type IdConvertRecord, type NcbiCallOptions, type NcbiRequestOptions, type NcbiRequestParams, type XmlPubmedArticleSet } from './types.js';
|
|
11
11
|
/**
|
|
12
12
|
* Facade over NCBI's E-utility suite. Each public method corresponds to a
|
|
13
13
|
* single E-utility endpoint.
|
|
@@ -17,40 +17,53 @@ export declare class NcbiService {
|
|
|
17
17
|
private readonly queue;
|
|
18
18
|
private readonly responseHandler;
|
|
19
19
|
private readonly maxRetries;
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
private readonly totalDeadlineMs;
|
|
21
|
+
constructor(apiClient: NcbiApiClient, queue: NcbiRequestQueue, responseHandler: NcbiResponseHandler, maxRetries: number, totalDeadlineMs: number);
|
|
22
|
+
eSearch(params: NcbiRequestParams, options?: NcbiCallOptions): Promise<ESearchResult>;
|
|
23
|
+
eSummary(params: NcbiRequestParams, options?: NcbiCallOptions): Promise<ESummaryResult>;
|
|
23
24
|
eFetch<T = {
|
|
24
25
|
PubmedArticleSet?: XmlPubmedArticleSet;
|
|
25
26
|
}>(params: NcbiRequestParams, options?: NcbiRequestOptions): Promise<T>;
|
|
26
|
-
eLink<T = Record<string, unknown>>(params: NcbiRequestParams): Promise<T>;
|
|
27
|
-
eSpell(params: NcbiRequestParams): Promise<ESpellResult>;
|
|
28
|
-
eInfo(params: NcbiRequestParams): Promise<unknown>;
|
|
27
|
+
eLink<T = Record<string, unknown>>(params: NcbiRequestParams, options?: NcbiCallOptions): Promise<T>;
|
|
28
|
+
eSpell(params: NcbiRequestParams, options?: NcbiCallOptions): Promise<ESpellResult>;
|
|
29
|
+
eInfo(params: NcbiRequestParams, options?: NcbiCallOptions): Promise<unknown>;
|
|
29
30
|
/**
|
|
30
31
|
* Look up PMIDs from partial citation strings via NCBI ECitMatch.
|
|
31
32
|
* Each citation can include journal, year, volume, first page, and author name.
|
|
32
33
|
*/
|
|
33
|
-
eCitMatch(citations: ECitMatchCitation[]): Promise<ECitMatchResult[]>;
|
|
34
|
+
eCitMatch(citations: ECitMatchCitation[], options?: NcbiCallOptions): Promise<ECitMatchResult[]>;
|
|
34
35
|
/**
|
|
35
36
|
* Convert between article identifiers (DOI, PMID, PMCID) using the PMC ID Converter API.
|
|
36
37
|
* Accepts up to 200 IDs in a single request. Only works for articles in PMC.
|
|
37
38
|
*/
|
|
38
|
-
idConvert(ids: string[], idtype?: string): Promise<IdConvertRecord[]>;
|
|
39
|
+
idConvert(ids: string[], idtype?: string, options?: NcbiCallOptions): Promise<IdConvertRecord[]>;
|
|
39
40
|
/** Error codes that are transient and worth retrying with backoff. */
|
|
40
41
|
private static readonly RETRYABLE_CODES;
|
|
41
42
|
/** Maximum backoff delay per retry (prevents exponential explosion at high retry counts). */
|
|
42
43
|
private static readonly MAX_BACKOFF_MS;
|
|
44
|
+
/**
|
|
45
|
+
* Wraps a task with a service-level deadline. Returns a combined AbortSignal
|
|
46
|
+
* (internal deadline OR'd with the caller's `ctx.signal`, if any) that the
|
|
47
|
+
* task must forward to both the HTTP call and any backoff sleep so cancellation
|
|
48
|
+
* interrupts the full retry chain — not just the next attempt.
|
|
49
|
+
*/
|
|
50
|
+
private runWithDeadline;
|
|
43
51
|
/**
|
|
44
52
|
* Retry wrapper for transient NCBI errors (ServiceUnavailable, Timeout, RateLimited).
|
|
45
53
|
* Non-transient McpErrors and unexpected plain Errors fail immediately.
|
|
46
|
-
* Uses capped exponential backoff with jitter.
|
|
54
|
+
* Uses capped exponential backoff with jitter. Backoff sleep is abortable via
|
|
55
|
+
* `signal`, so deadline expiration or caller cancel short-circuits the chain.
|
|
47
56
|
*/
|
|
48
57
|
private withRetry;
|
|
49
58
|
/**
|
|
50
|
-
* Enqueues a request with retry logic that covers
|
|
51
|
-
* (network errors, timeouts) and XML-level errors
|
|
52
|
-
* with an error structure in the response body, e.g.
|
|
53
|
-
* surfaced as C++ exception traces).
|
|
59
|
+
* Enqueues a request with a service-level deadline and retry logic that covers
|
|
60
|
+
* both HTTP-level failures (network errors, timeouts) and XML-level errors
|
|
61
|
+
* (NCBI returning 200 OK with an error structure in the response body, e.g.
|
|
62
|
+
* connection resets surfaced as C++ exception traces).
|
|
63
|
+
*
|
|
64
|
+
* The combined deadline+caller signal is threaded into both the HTTP fetch
|
|
65
|
+
* (cancels wedged requests) and the backoff sleep (cancels pending retries),
|
|
66
|
+
* bounding the total time to `totalDeadlineMs` regardless of retry count.
|
|
54
67
|
*/
|
|
55
68
|
private performRequest;
|
|
56
69
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ncbi-service.d.ts","sourceRoot":"","sources":["../../../src/services/ncbi/ncbi-service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,eAAe,EAEpB,KAAK,aAAa,EAElB,KAAK,YAAY,EAEjB,KAAK,cAAc,EACnB,KAAK,eAAe,EAGpB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACzB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"ncbi-service.d.ts","sourceRoot":"","sources":["../../../src/services/ncbi/ncbi-service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,eAAe,EAEpB,KAAK,aAAa,EAElB,KAAK,YAAY,EAEjB,KAAK,cAAc,EACnB,KAAK,eAAe,EAGpB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACzB,MAAM,YAAY,CAAC;AA8BpB;;;GAGG;AACH,qBAAa,WAAW;IAEpB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAJf,SAAS,EAAE,aAAa,EACxB,KAAK,EAAE,gBAAgB,EACvB,eAAe,EAAE,mBAAmB,EACpC,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM;IAGpC,OAAO,CAAC,MAAM,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,aAAa,CAAC;IAoBrF,QAAQ,CAAC,MAAM,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAS7F,MAAM,CAAC,CAAC,GAAG;QAAE,gBAAgB,CAAC,EAAE,mBAAmB,CAAA;KAAE,EACnD,MAAM,EAAE,iBAAiB,EACzB,OAAO,GAAE,kBAAuC,GAC/C,OAAO,CAAC,CAAC,CAAC;IAMb,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,MAAM,EAAE,iBAAiB,EACzB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,CAAC,CAAC;IAOP,MAAM,CAAC,MAAM,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,YAAY,CAAC;IAuBzF,KAAK,CAAC,MAAM,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC;IAO7E;;;OAGG;IACG,SAAS,CACb,SAAS,EAAE,iBAAiB,EAAE,EAC9B,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,eAAe,EAAE,CAAC;IA8C7B;;;OAGG;IACG,SAAS,CACb,GAAG,EAAE,MAAM,EAAE,EACb,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,eAAe,EAAE,CAAC;IAoC7B,sEAAsE;IACtE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAIpC;IAEH,6FAA6F;IAC7F,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAU;IAEhD;;;;;OAKG;YACW,eAAe;IA4B7B;;;;;OAKG;YACW,SAAS;IA+CvB;;;;;;;;;OASG;IACH,OAAO,CAAC,cAAc;CA0BvB;AAMD,qEAAqE;AACrE,wBAAgB,eAAe,IAAI,IAAI,CAuBtC;AAED,mEAAmE;AACnE,wBAAgB,cAAc,IAAI,WAAW,CAG5C"}
|
|
@@ -11,6 +11,34 @@ import { NcbiApiClient } from './api-client.js';
|
|
|
11
11
|
import { NcbiRequestQueue } from './request-queue.js';
|
|
12
12
|
import { NcbiResponseHandler } from './response-handler.js';
|
|
13
13
|
import { NCBI_PMC_IDCONV_URL, } from './types.js';
|
|
14
|
+
/** Sentinel reason used when the service-level deadline expires. */
|
|
15
|
+
class NcbiDeadlineExceeded extends Error {
|
|
16
|
+
constructor(deadlineMs) {
|
|
17
|
+
super(`NCBI request deadline (${deadlineMs}ms) exceeded`);
|
|
18
|
+
this.name = 'NcbiDeadlineExceeded';
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Sleep that resolves after `ms`, or rejects immediately if `signal` aborts.
|
|
23
|
+
* Cleans up both timer and listener when either side wins.
|
|
24
|
+
*/
|
|
25
|
+
function abortableSleep(ms, signal) {
|
|
26
|
+
if (!signal)
|
|
27
|
+
return new Promise((r) => setTimeout(r, ms));
|
|
28
|
+
if (signal.aborted)
|
|
29
|
+
return Promise.reject(signal.reason);
|
|
30
|
+
return new Promise((resolve, reject) => {
|
|
31
|
+
const onAbort = () => {
|
|
32
|
+
clearTimeout(timer);
|
|
33
|
+
reject(signal.reason);
|
|
34
|
+
};
|
|
35
|
+
const timer = setTimeout(() => {
|
|
36
|
+
signal.removeEventListener('abort', onAbort);
|
|
37
|
+
resolve();
|
|
38
|
+
}, ms);
|
|
39
|
+
signal.addEventListener('abort', onAbort, { once: true });
|
|
40
|
+
});
|
|
41
|
+
}
|
|
14
42
|
/**
|
|
15
43
|
* Facade over NCBI's E-utility suite. Each public method corresponds to a
|
|
16
44
|
* single E-utility endpoint.
|
|
@@ -20,15 +48,18 @@ export class NcbiService {
|
|
|
20
48
|
queue;
|
|
21
49
|
responseHandler;
|
|
22
50
|
maxRetries;
|
|
23
|
-
|
|
51
|
+
totalDeadlineMs;
|
|
52
|
+
constructor(apiClient, queue, responseHandler, maxRetries, totalDeadlineMs) {
|
|
24
53
|
this.apiClient = apiClient;
|
|
25
54
|
this.queue = queue;
|
|
26
55
|
this.responseHandler = responseHandler;
|
|
27
56
|
this.maxRetries = maxRetries;
|
|
57
|
+
this.totalDeadlineMs = totalDeadlineMs;
|
|
28
58
|
}
|
|
29
|
-
async eSearch(params) {
|
|
59
|
+
async eSearch(params, options) {
|
|
30
60
|
const response = await this.performRequest('esearch', params, {
|
|
31
61
|
retmode: 'xml',
|
|
62
|
+
...(options?.signal && { signal: options.signal }),
|
|
32
63
|
});
|
|
33
64
|
const esResult = response.eSearchResult;
|
|
34
65
|
return {
|
|
@@ -43,10 +74,11 @@ export class NcbiService {
|
|
|
43
74
|
...(esResult.WarningList !== undefined && { warningList: esResult.WarningList }),
|
|
44
75
|
};
|
|
45
76
|
}
|
|
46
|
-
async eSummary(params) {
|
|
77
|
+
async eSummary(params, options) {
|
|
47
78
|
const retmode = params.version === '2.0' && params.retmode === 'json' ? 'json' : 'xml';
|
|
48
79
|
const response = await this.performRequest('esummary', params, {
|
|
49
80
|
retmode,
|
|
81
|
+
...(options?.signal && { signal: options.signal }),
|
|
50
82
|
});
|
|
51
83
|
return response.eSummaryResult;
|
|
52
84
|
}
|
|
@@ -54,12 +86,16 @@ export class NcbiService {
|
|
|
54
86
|
const usePost = options.usePost || (typeof params.id === 'string' && params.id.split(',').length > 200);
|
|
55
87
|
return this.performRequest('efetch', params, { ...options, usePost });
|
|
56
88
|
}
|
|
57
|
-
eLink(params) {
|
|
58
|
-
return this.performRequest('elink', params, {
|
|
89
|
+
eLink(params, options) {
|
|
90
|
+
return this.performRequest('elink', params, {
|
|
91
|
+
retmode: 'xml',
|
|
92
|
+
...(options?.signal && { signal: options.signal }),
|
|
93
|
+
});
|
|
59
94
|
}
|
|
60
|
-
async eSpell(params) {
|
|
95
|
+
async eSpell(params, options) {
|
|
61
96
|
const response = await this.performRequest('espell', params, {
|
|
62
97
|
retmode: 'xml',
|
|
98
|
+
...(options?.signal && { signal: options.signal }),
|
|
63
99
|
});
|
|
64
100
|
const spellResult = response.eSpellResult;
|
|
65
101
|
const original = spellResult.Query ?? params.term ?? '';
|
|
@@ -75,18 +111,21 @@ export class NcbiService {
|
|
|
75
111
|
hasSuggestion: corrected.length > 0 && corrected !== original,
|
|
76
112
|
};
|
|
77
113
|
}
|
|
78
|
-
eInfo(params) {
|
|
79
|
-
return this.performRequest('einfo', params, {
|
|
114
|
+
eInfo(params, options) {
|
|
115
|
+
return this.performRequest('einfo', params, {
|
|
116
|
+
retmode: 'xml',
|
|
117
|
+
...(options?.signal && { signal: options.signal }),
|
|
118
|
+
});
|
|
80
119
|
}
|
|
81
120
|
/**
|
|
82
121
|
* Look up PMIDs from partial citation strings via NCBI ECitMatch.
|
|
83
122
|
* Each citation can include journal, year, volume, first page, and author name.
|
|
84
123
|
*/
|
|
85
|
-
async eCitMatch(citations) {
|
|
124
|
+
async eCitMatch(citations, options) {
|
|
86
125
|
const bdata = citations
|
|
87
126
|
.map((c) => `${c.journal ?? ''}|${c.year ?? ''}|${c.volume ?? ''}|${c.firstPage ?? ''}|${c.authorName ?? ''}|${c.key}|`)
|
|
88
127
|
.join('\r');
|
|
89
|
-
const text = await this.performRequest('ecitmatch.cgi', { db: 'pubmed', retmode: 'xml', bdata }, { retmode: 'text' });
|
|
128
|
+
const text = await this.performRequest('ecitmatch.cgi', { db: 'pubmed', retmode: 'xml', bdata }, { retmode: 'text', ...(options?.signal && { signal: options.signal }) });
|
|
90
129
|
return text
|
|
91
130
|
.split(/[\r\n]+/)
|
|
92
131
|
.filter((line) => line.trim().length > 0)
|
|
@@ -119,13 +158,13 @@ export class NcbiService {
|
|
|
119
158
|
* Convert between article identifiers (DOI, PMID, PMCID) using the PMC ID Converter API.
|
|
120
159
|
* Accepts up to 200 IDs in a single request. Only works for articles in PMC.
|
|
121
160
|
*/
|
|
122
|
-
async idConvert(ids, idtype) {
|
|
161
|
+
async idConvert(ids, idtype, options) {
|
|
123
162
|
const params = {
|
|
124
163
|
ids: ids.join(','),
|
|
125
164
|
format: 'json',
|
|
126
165
|
...(idtype && { idtype }),
|
|
127
166
|
};
|
|
128
|
-
const text = await this.queue.enqueue(() => this.withRetry(() => this.apiClient.makeExternalRequest(NCBI_PMC_IDCONV_URL, params), 'idconv'), 'idconv', params);
|
|
167
|
+
const text = await this.queue.enqueue(() => this.runWithDeadline((signal) => this.withRetry(() => this.apiClient.makeExternalRequest(NCBI_PMC_IDCONV_URL, params, signal), 'idconv', signal), options?.signal), 'idconv', params);
|
|
129
168
|
let parsed;
|
|
130
169
|
try {
|
|
131
170
|
parsed = JSON.parse(text);
|
|
@@ -143,17 +182,49 @@ export class NcbiService {
|
|
|
143
182
|
]);
|
|
144
183
|
/** Maximum backoff delay per retry (prevents exponential explosion at high retry counts). */
|
|
145
184
|
static MAX_BACKOFF_MS = 30_000;
|
|
185
|
+
/**
|
|
186
|
+
* Wraps a task with a service-level deadline. Returns a combined AbortSignal
|
|
187
|
+
* (internal deadline OR'd with the caller's `ctx.signal`, if any) that the
|
|
188
|
+
* task must forward to both the HTTP call and any backoff sleep so cancellation
|
|
189
|
+
* interrupts the full retry chain — not just the next attempt.
|
|
190
|
+
*/
|
|
191
|
+
async runWithDeadline(task, callerSignal) {
|
|
192
|
+
const deadlineController = new AbortController();
|
|
193
|
+
const deadlineTimer = setTimeout(() => deadlineController.abort(new NcbiDeadlineExceeded(this.totalDeadlineMs)), this.totalDeadlineMs);
|
|
194
|
+
const signal = callerSignal
|
|
195
|
+
? AbortSignal.any([deadlineController.signal, callerSignal])
|
|
196
|
+
: deadlineController.signal;
|
|
197
|
+
try {
|
|
198
|
+
return await task(signal);
|
|
199
|
+
}
|
|
200
|
+
catch (error) {
|
|
201
|
+
if (error instanceof NcbiDeadlineExceeded) {
|
|
202
|
+
throw new McpError(JsonRpcErrorCode.Timeout, error.message, {
|
|
203
|
+
deadlineMs: this.totalDeadlineMs,
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
throw error;
|
|
207
|
+
}
|
|
208
|
+
finally {
|
|
209
|
+
clearTimeout(deadlineTimer);
|
|
210
|
+
}
|
|
211
|
+
}
|
|
146
212
|
/**
|
|
147
213
|
* Retry wrapper for transient NCBI errors (ServiceUnavailable, Timeout, RateLimited).
|
|
148
214
|
* Non-transient McpErrors and unexpected plain Errors fail immediately.
|
|
149
|
-
* Uses capped exponential backoff with jitter.
|
|
215
|
+
* Uses capped exponential backoff with jitter. Backoff sleep is abortable via
|
|
216
|
+
* `signal`, so deadline expiration or caller cancel short-circuits the chain.
|
|
150
217
|
*/
|
|
151
|
-
async withRetry(execute, label) {
|
|
218
|
+
async withRetry(execute, label, signal) {
|
|
152
219
|
for (let attempt = 0; attempt <= this.maxRetries; attempt++) {
|
|
220
|
+
if (signal?.aborted)
|
|
221
|
+
throw signal.reason;
|
|
153
222
|
try {
|
|
154
223
|
return await execute();
|
|
155
224
|
}
|
|
156
225
|
catch (error) {
|
|
226
|
+
if (signal?.aborted)
|
|
227
|
+
throw signal.reason;
|
|
157
228
|
if (!(error instanceof McpError)) {
|
|
158
229
|
throw error;
|
|
159
230
|
}
|
|
@@ -165,7 +236,7 @@ export class NcbiService {
|
|
|
165
236
|
const jitter = baseDelay * (0.75 + 0.5 * Math.random()); // ±25%
|
|
166
237
|
const retryDelay = Math.round(jitter);
|
|
167
238
|
logger.warning(`NCBI request to ${label} failed. Retrying (${attempt + 1}/${this.maxRetries}) in ${retryDelay}ms.`, { endpoint: label, attempt: attempt + 1, retryDelay });
|
|
168
|
-
await
|
|
239
|
+
await abortableSleep(retryDelay, signal);
|
|
169
240
|
continue;
|
|
170
241
|
}
|
|
171
242
|
const attempts = this.maxRetries + 1;
|
|
@@ -181,16 +252,23 @@ export class NcbiService {
|
|
|
181
252
|
});
|
|
182
253
|
}
|
|
183
254
|
/**
|
|
184
|
-
* Enqueues a request with retry logic that covers
|
|
185
|
-
* (network errors, timeouts) and XML-level errors
|
|
186
|
-
* with an error structure in the response body, e.g.
|
|
187
|
-
* surfaced as C++ exception traces).
|
|
255
|
+
* Enqueues a request with a service-level deadline and retry logic that covers
|
|
256
|
+
* both HTTP-level failures (network errors, timeouts) and XML-level errors
|
|
257
|
+
* (NCBI returning 200 OK with an error structure in the response body, e.g.
|
|
258
|
+
* connection resets surfaced as C++ exception traces).
|
|
259
|
+
*
|
|
260
|
+
* The combined deadline+caller signal is threaded into both the HTTP fetch
|
|
261
|
+
* (cancels wedged requests) and the backoff sleep (cancels pending retries),
|
|
262
|
+
* bounding the total time to `totalDeadlineMs` regardless of retry count.
|
|
188
263
|
*/
|
|
189
264
|
performRequest(endpoint, params, options) {
|
|
190
|
-
return this.queue.enqueue(() => this.withRetry(async () => {
|
|
191
|
-
const text = await this.apiClient.makeRequest(endpoint, params,
|
|
265
|
+
return this.queue.enqueue(() => this.runWithDeadline((signal) => this.withRetry(async () => {
|
|
266
|
+
const text = await this.apiClient.makeRequest(endpoint, params, {
|
|
267
|
+
...options,
|
|
268
|
+
signal,
|
|
269
|
+
});
|
|
192
270
|
return this.responseHandler.parseAndHandleResponse(text, endpoint, options);
|
|
193
|
-
}, endpoint), endpoint, params);
|
|
271
|
+
}, endpoint, signal), options?.signal), endpoint, params);
|
|
194
272
|
}
|
|
195
273
|
}
|
|
196
274
|
// ─── Init / Accessor ────────────────────────────────────────────────────────
|
|
@@ -206,11 +284,12 @@ export function initNcbiService() {
|
|
|
206
284
|
});
|
|
207
285
|
const queue = new NcbiRequestQueue(config.requestDelayMs);
|
|
208
286
|
const responseHandler = new NcbiResponseHandler();
|
|
209
|
-
_service = new NcbiService(apiClient, queue, responseHandler, config.maxRetries);
|
|
287
|
+
_service = new NcbiService(apiClient, queue, responseHandler, config.maxRetries, config.totalDeadlineMs);
|
|
210
288
|
logger.info('NCBI service initialized.', {
|
|
211
289
|
toolIdentifier: config.toolIdentifier,
|
|
212
290
|
hasApiKey: !!config.apiKey,
|
|
213
291
|
requestDelayMs: config.requestDelayMs,
|
|
292
|
+
totalDeadlineMs: config.totalDeadlineMs,
|
|
214
293
|
});
|
|
215
294
|
}
|
|
216
295
|
/** Get the initialized NCBI service. Throws if not initialized. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ncbi-service.js","sourceRoot":"","sources":["../../../src/services/ncbi/ncbi-service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAWL,mBAAmB,GAIpB,MAAM,YAAY,CAAC;AAEpB;;;GAGG;AACH,MAAM,OAAO,WAAW;IAEH;IACA;IACA;IACA;IAJnB,YACmB,SAAwB,EACxB,KAAuB,EACvB,eAAoC,EACpC,UAAkB;QAHlB,cAAS,GAAT,SAAS,CAAe;QACxB,UAAK,GAAL,KAAK,CAAkB;QACvB,oBAAe,GAAf,eAAe,CAAqB;QACpC,eAAU,GAAV,UAAU,CAAQ;IAClC,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,MAAyB;QACrC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAA2B,SAAS,EAAE,MAAM,EAAE;YACtF,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC;QACxC,OAAO;YACL,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC;YACxC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC;YAC1C,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC;YAC9C,GAAG,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACvE,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;YACjE,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;YAC/C,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;YAC3C,GAAG,CAAC,QAAQ,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC;YAC1E,GAAG,CAAC,QAAQ,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,CAAC;SACjF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,MAAyB;QACtC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,KAAK,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QACvF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAA4B,UAAU,EAAE,MAAM,EAAE;YACxF,OAAO;SACR,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,cAAc,CAAC;IACjC,CAAC;IAED,MAAM,CACJ,MAAyB,EACzB,UAA8B,EAAE,OAAO,EAAE,KAAK,EAAE;QAEhD,MAAM,OAAO,GACX,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,IAAI,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;QAC1F,OAAO,IAAI,CAAC,cAAc,CAAI,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAA8B,MAAyB;QAC1D,OAAO,IAAI,CAAC,cAAc,CAAI,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAyB;QACpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAA0B,QAAQ,EAAE,MAAM,EAAE;YACpF,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,QAAQ,CAAC,YAAY,CAAC;QAC1C,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,IAAK,MAAM,CAAC,IAAe,IAAI,EAAE,CAAC;QACpE,MAAM,SAAS,GAAG,WAAW,CAAC,cAAc,IAAI,EAAE,CAAC;QAEnD,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE;YACpC,QAAQ;YACR,SAAS;YACT,aAAa,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,KAAK,QAAQ;SACrD,CAAC,CAAC;QAEZ,OAAO;YACL,QAAQ;YACR,SAAS,EAAE,SAAS,IAAI,QAAQ;YAChC,aAAa,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,KAAK,QAAQ;SAC9D,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAyB;QAC7B,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IAClE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAC,SAA8B;QAC5C,MAAM,KAAK,GAAG,SAAS;aACpB,GAAG,CACF,CAAC,CAAC,EAAE,EAAE,CACJ,GAAG,CAAC,CAAC,OAAO,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,IAAI,EAAE,IAAI,CAAC,CAAC,SAAS,IAAI,EAAE,IAAI,CAAC,CAAC,UAAU,IAAI,EAAE,IAAI,CAAC,CAAC,GAAG,GAAG,CAC9G;aACA,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CACpC,eAAe,EACf,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EACvC,EAAE,OAAO,EAAE,MAAM,EAAE,CACpB,CAAC;QAEF,OAAO,IAAI;aACR,KAAK,CAAC,SAAS,CAAC;aAChB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;aACxC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACZ,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC9B,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YACnC,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YAE1C,IAAI,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC7B,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,SAAkB,EAAE,CAAC;YAC9E,CAAC;YAED,IAAI,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;gBACvC,OAAO;oBACL,GAAG;oBACH,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,WAAoB;oBAC5B,MAAM,EAAE,UAAU;iBACnB,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,GAAG;gBACH,OAAO,EAAE,KAAK;gBACd,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,WAAoB;gBAC5B,GAAG,CAAC,UAAU,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;aAC1C,CAAC;QACJ,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAC,GAAa,EAAE,MAAe;QAC5C,MAAM,MAAM,GAAsB;YAChC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;YAClB,MAAM,EAAE,MAAM;YACd,GAAG,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,CAAC;SAC1B,CAAC;QAEF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CACnC,GAAG,EAAE,CACH,IAAI,CAAC,SAAS,CACZ,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,MAAM,CAAC,EACrE,QAAQ,CACT,EACH,QAAQ,EACR,MAAM,CACP,CAAC;QAEF,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,QAAQ,CAChB,gBAAgB,CAAC,kBAAkB,EACnC,6CAA6C,EAC7C,EAAE,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAC5C,CAAC;QACJ,CAAC;QAED,OAAQ,MAA4B,CAAC,OAAO,IAAI,EAAE,CAAC;IACrD,CAAC;IAED,sEAAsE;IAC9D,MAAM,CAAU,eAAe,GAAG,IAAI,GAAG,CAAC;QAChD,gBAAgB,CAAC,kBAAkB;QACnC,gBAAgB,CAAC,OAAO;QACxB,gBAAgB,CAAC,WAAW;KAC7B,CAAC,CAAC;IAEH,6FAA6F;IACrF,MAAM,CAAU,cAAc,GAAG,MAAM,CAAC;IAEhD;;;;OAIG;IACK,KAAK,CAAC,SAAS,CAAI,OAAyB,EAAE,KAAa;QACjE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;YAC5D,IAAI,CAAC;gBACH,OAAO,MAAM,OAAO,EAAE,CAAC;YACzB,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,IAAI,CAAC,CAAC,KAAK,YAAY,QAAQ,CAAC,EAAE,CAAC;oBACjC,MAAM,KAAK,CAAC;gBACd,CAAC;gBAED,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;oBACjD,MAAM,KAAK,CAAC;gBACd,CAAC;gBAED,IAAI,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;oBAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,OAAO,EAAE,WAAW,CAAC,cAAc,CAAC,CAAC;oBAC5E,MAAM,MAAM,GAAG,SAAS,GAAG,CAAC,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO;oBAChE,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBACtC,MAAM,CAAC,OAAO,CACZ,mBAAmB,KAAK,sBAAsB,OAAO,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,QAAQ,UAAU,KAAK,EACnG,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAG,CAAC,EAAE,UAAU,EAAW,CAC/D,CAAC;oBACF,MAAM,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;oBAC1D,SAAS;gBACX,CAAC;gBAED,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACrC,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,MAAM,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,GAAG,kBAAkB,QAAQ,YAAY,EAAE;oBAC3E,QAAQ,EAAE,KAAK;oBACf,QAAQ;iBACT,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,MAAM,IAAI,QAAQ,CAAC,gBAAgB,CAAC,aAAa,EAAE,mCAAmC,EAAE;YACtF,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACK,cAAc,CACpB,QAAgB,EAChB,MAAyB,EACzB,OAA4B;QAE5B,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CACvB,GAAG,EAAE,CACH,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE;YACxB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YACzE,OAAO,IAAI,CAAC,eAAe,CAAC,sBAAsB,CAAI,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QACjF,CAAC,EAAE,QAAQ,CAAC,EACd,QAAQ,EACR,MAAM,CACP,CAAC;IACJ,CAAC;;AAGH,+EAA+E;AAE/E,IAAI,QAAiC,CAAC;AAEtC,qEAAqE;AACrE,MAAM,UAAU,eAAe;IAC7B,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,SAAS,GAAG,IAAI,aAAa,CAAC;QAClC,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QAC/C,GAAG,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;KAC5D,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC1D,MAAM,eAAe,GAAG,IAAI,mBAAmB,EAAE,CAAC;IAClD,QAAQ,GAAG,IAAI,WAAW,CAAC,SAAS,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IACjF,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;QACvC,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;QAC1B,cAAc,EAAE,MAAM,CAAC,cAAc;KAC7B,CAAC,CAAC;AACd,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,cAAc;IAC5B,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IAC9F,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
1
|
+
{"version":3,"file":"ncbi-service.js","sourceRoot":"","sources":["../../../src/services/ncbi/ncbi-service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAWL,mBAAmB,GAKpB,MAAM,YAAY,CAAC;AAEpB,oEAAoE;AACpE,MAAM,oBAAqB,SAAQ,KAAK;IACtC,YAAY,UAAkB;QAC5B,KAAK,CAAC,0BAA0B,UAAU,cAAc,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACrC,CAAC;CACF;AAED;;;GAGG;AACH,SAAS,cAAc,CAAC,EAAU,EAAE,MAAoB;IACtD,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC1D,IAAI,MAAM,CAAC,OAAO;QAAE,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACzD,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACxB,CAAC,CAAC;QACF,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7C,OAAO,EAAE,CAAC;QACZ,CAAC,EAAE,EAAE,CAAC,CAAC;QACP,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,WAAW;IAEH;IACA;IACA;IACA;IACA;IALnB,YACmB,SAAwB,EACxB,KAAuB,EACvB,eAAoC,EACpC,UAAkB,EAClB,eAAuB;QAJvB,cAAS,GAAT,SAAS,CAAe;QACxB,UAAK,GAAL,KAAK,CAAkB;QACvB,oBAAe,GAAf,eAAe,CAAqB;QACpC,eAAU,GAAV,UAAU,CAAQ;QAClB,oBAAe,GAAf,eAAe,CAAQ;IACvC,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,MAAyB,EAAE,OAAyB;QAChE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAA2B,SAAS,EAAE,MAAM,EAAE;YACtF,OAAO,EAAE,KAAK;YACd,GAAG,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;SACnD,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC;QACxC,OAAO;YACL,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC;YACxC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC;YAC1C,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC;YAC9C,GAAG,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACvE,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;YACjE,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;YAC/C,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;YAC3C,GAAG,CAAC,QAAQ,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC;YAC1E,GAAG,CAAC,QAAQ,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,CAAC;SACjF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,MAAyB,EAAE,OAAyB;QACjE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,KAAK,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QACvF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAA4B,UAAU,EAAE,MAAM,EAAE;YACxF,OAAO;YACP,GAAG,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;SACnD,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,cAAc,CAAC;IACjC,CAAC;IAED,MAAM,CACJ,MAAyB,EACzB,UAA8B,EAAE,OAAO,EAAE,KAAK,EAAE;QAEhD,MAAM,OAAO,GACX,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,IAAI,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;QAC1F,OAAO,IAAI,CAAC,cAAc,CAAI,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CACH,MAAyB,EACzB,OAAyB;QAEzB,OAAO,IAAI,CAAC,cAAc,CAAI,OAAO,EAAE,MAAM,EAAE;YAC7C,OAAO,EAAE,KAAK;YACd,GAAG,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;SACnD,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAyB,EAAE,OAAyB;QAC/D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAA0B,QAAQ,EAAE,MAAM,EAAE;YACpF,OAAO,EAAE,KAAK;YACd,GAAG,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;SACnD,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,QAAQ,CAAC,YAAY,CAAC;QAC1C,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,IAAK,MAAM,CAAC,IAAe,IAAI,EAAE,CAAC;QACpE,MAAM,SAAS,GAAG,WAAW,CAAC,cAAc,IAAI,EAAE,CAAC;QAEnD,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE;YACpC,QAAQ;YACR,SAAS;YACT,aAAa,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,KAAK,QAAQ;SACrD,CAAC,CAAC;QAEZ,OAAO;YACL,QAAQ;YACR,SAAS,EAAE,SAAS,IAAI,QAAQ;YAChC,aAAa,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,KAAK,QAAQ;SAC9D,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAyB,EAAE,OAAyB;QACxD,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE;YAC1C,OAAO,EAAE,KAAK;YACd,GAAG,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;SACnD,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS,CACb,SAA8B,EAC9B,OAAyB;QAEzB,MAAM,KAAK,GAAG,SAAS;aACpB,GAAG,CACF,CAAC,CAAC,EAAE,EAAE,CACJ,GAAG,CAAC,CAAC,OAAO,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,IAAI,EAAE,IAAI,CAAC,CAAC,SAAS,IAAI,EAAE,IAAI,CAAC,CAAC,UAAU,IAAI,EAAE,IAAI,CAAC,CAAC,GAAG,GAAG,CAC9G;aACA,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CACpC,eAAe,EACf,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EACvC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,CACxE,CAAC;QAEF,OAAO,IAAI;aACR,KAAK,CAAC,SAAS,CAAC;aAChB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;aACxC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACZ,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC9B,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YACnC,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YAE1C,IAAI,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC7B,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,SAAkB,EAAE,CAAC;YAC9E,CAAC;YAED,IAAI,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;gBACvC,OAAO;oBACL,GAAG;oBACH,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,WAAoB;oBAC5B,MAAM,EAAE,UAAU;iBACnB,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,GAAG;gBACH,OAAO,EAAE,KAAK;gBACd,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,WAAoB;gBAC5B,GAAG,CAAC,UAAU,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;aAC1C,CAAC;QACJ,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS,CACb,GAAa,EACb,MAAe,EACf,OAAyB;QAEzB,MAAM,MAAM,GAAsB;YAChC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;YAClB,MAAM,EAAE,MAAM;YACd,GAAG,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,CAAC;SAC1B,CAAC;QAEF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CACnC,GAAG,EAAE,CACH,IAAI,CAAC,eAAe,CAClB,CAAC,MAAM,EAAE,EAAE,CACT,IAAI,CAAC,SAAS,CACZ,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,MAAM,EAAE,MAAM,CAAC,EAC7E,QAAQ,EACR,MAAM,CACP,EACH,OAAO,EAAE,MAAM,CAChB,EACH,QAAQ,EACR,MAAM,CACP,CAAC;QAEF,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,QAAQ,CAChB,gBAAgB,CAAC,kBAAkB,EACnC,6CAA6C,EAC7C,EAAE,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAC5C,CAAC;QACJ,CAAC;QAED,OAAQ,MAA4B,CAAC,OAAO,IAAI,EAAE,CAAC;IACrD,CAAC;IAED,sEAAsE;IAC9D,MAAM,CAAU,eAAe,GAAG,IAAI,GAAG,CAAC;QAChD,gBAAgB,CAAC,kBAAkB;QACnC,gBAAgB,CAAC,OAAO;QACxB,gBAAgB,CAAC,WAAW;KAC7B,CAAC,CAAC;IAEH,6FAA6F;IACrF,MAAM,CAAU,cAAc,GAAG,MAAM,CAAC;IAEhD;;;;;OAKG;IACK,KAAK,CAAC,eAAe,CAC3B,IAAyC,EACzC,YAA0B;QAE1B,MAAM,kBAAkB,GAAG,IAAI,eAAe,EAAE,CAAC;QACjD,MAAM,aAAa,GAAG,UAAU,CAC9B,GAAG,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,oBAAoB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,EAC9E,IAAI,CAAC,eAAe,CACrB,CAAC;QAEF,MAAM,MAAM,GAAG,YAAY;YACzB,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;YAC5D,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC;QAE9B,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,IAAI,KAAK,YAAY,oBAAoB,EAAE,CAAC;gBAC1C,MAAM,IAAI,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE;oBAC1D,UAAU,EAAE,IAAI,CAAC,eAAe;iBACjC,CAAC,CAAC;YACL,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,aAAa,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,SAAS,CACrB,OAAyB,EACzB,KAAa,EACb,MAAoB;QAEpB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;YAC5D,IAAI,MAAM,EAAE,OAAO;gBAAE,MAAM,MAAM,CAAC,MAAM,CAAC;YAEzC,IAAI,CAAC;gBACH,OAAO,MAAM,OAAO,EAAE,CAAC;YACzB,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,IAAI,MAAM,EAAE,OAAO;oBAAE,MAAM,MAAM,CAAC,MAAM,CAAC;gBAEzC,IAAI,CAAC,CAAC,KAAK,YAAY,QAAQ,CAAC,EAAE,CAAC;oBACjC,MAAM,KAAK,CAAC;gBACd,CAAC;gBAED,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;oBACjD,MAAM,KAAK,CAAC;gBACd,CAAC;gBAED,IAAI,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;oBAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,OAAO,EAAE,WAAW,CAAC,cAAc,CAAC,CAAC;oBAC5E,MAAM,MAAM,GAAG,SAAS,GAAG,CAAC,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO;oBAChE,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBACtC,MAAM,CAAC,OAAO,CACZ,mBAAmB,KAAK,sBAAsB,OAAO,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,QAAQ,UAAU,KAAK,EACnG,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAG,CAAC,EAAE,UAAU,EAAW,CAC/D,CAAC;oBACF,MAAM,cAAc,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;oBACzC,SAAS;gBACX,CAAC;gBAED,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACrC,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,MAAM,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,GAAG,kBAAkB,QAAQ,YAAY,EAAE;oBAC3E,QAAQ,EAAE,KAAK;oBACf,QAAQ;iBACT,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,MAAM,IAAI,QAAQ,CAAC,gBAAgB,CAAC,aAAa,EAAE,mCAAmC,EAAE;YACtF,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;OASG;IACK,cAAc,CACpB,QAAgB,EAChB,MAAyB,EACzB,OAA4B;QAE5B,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CACvB,GAAG,EAAE,CACH,IAAI,CAAC,eAAe,CAClB,CAAC,MAAM,EAAE,EAAE,CACT,IAAI,CAAC,SAAS,CACZ,KAAK,IAAI,EAAE;YACT,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE;gBAC9D,GAAG,OAAO;gBACV,MAAM;aACP,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,eAAe,CAAC,sBAAsB,CAAI,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QACjF,CAAC,EACD,QAAQ,EACR,MAAM,CACP,EACH,OAAO,EAAE,MAAM,CAChB,EACH,QAAQ,EACR,MAAM,CACP,CAAC;IACJ,CAAC;;AAGH,+EAA+E;AAE/E,IAAI,QAAiC,CAAC;AAEtC,qEAAqE;AACrE,MAAM,UAAU,eAAe;IAC7B,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,SAAS,GAAG,IAAI,aAAa,CAAC;QAClC,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QAC/C,GAAG,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;KAC5D,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC1D,MAAM,eAAe,GAAG,IAAI,mBAAmB,EAAE,CAAC;IAClD,QAAQ,GAAG,IAAI,WAAW,CACxB,SAAS,EACT,KAAK,EACL,eAAe,EACf,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,eAAe,CACvB,CAAC;IACF,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;QACvC,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;QAC1B,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,eAAe,EAAE,MAAM,CAAC,eAAe;KAC/B,CAAC,CAAC;AACd,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,cAAc;IAC5B,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IAC9F,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -26,6 +26,12 @@ export interface NcbiRequestOptions {
|
|
|
26
26
|
rettype?: string;
|
|
27
27
|
/** When true and retmode is 'xml', return the raw XML string after error checking. */
|
|
28
28
|
returnRawXml?: boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Combined abort signal — internal service-level deadline OR'd with the
|
|
31
|
+
* caller's `ctx.signal`. Cancels the in-flight fetch and short-circuits
|
|
32
|
+
* backoff sleeps.
|
|
33
|
+
*/
|
|
34
|
+
signal?: AbortSignal;
|
|
29
35
|
/**
|
|
30
36
|
* Parse XML in `preserveOrder: true` mode (returns `JatsNodeList`). Required
|
|
31
37
|
* for JATS mixed-content responses (PMC full-text) where inline element order
|
|
@@ -35,6 +41,14 @@ export interface NcbiRequestOptions {
|
|
|
35
41
|
/** Force HTTP POST (for large payloads). */
|
|
36
42
|
usePost?: boolean;
|
|
37
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* Runtime options accepted by public NCBI service methods.
|
|
46
|
+
* Lets callers thread `ctx.signal` (from tool handlers) through the retry layer.
|
|
47
|
+
*/
|
|
48
|
+
export interface NcbiCallOptions {
|
|
49
|
+
/** Caller-provided abort signal; combined with the service's internal deadline. */
|
|
50
|
+
signal?: AbortSignal;
|
|
51
|
+
}
|
|
38
52
|
/**
|
|
39
53
|
* Options for the parseFullArticle convenience function.
|
|
40
54
|
*/
|