@usa-open-data-connectors/usa-sources 0.1.1 → 0.1.3

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.
Files changed (52) hide show
  1. package/dist/btsTransportationStats.d.ts +87 -0
  2. package/dist/btsTransportationStats.d.ts.map +1 -0
  3. package/dist/btsTransportationStats.js +132 -0
  4. package/dist/btsTransportationStats.js.map +1 -0
  5. package/dist/cdcSocrataCatalogue.d.ts +87 -0
  6. package/dist/cdcSocrataCatalogue.d.ts.map +1 -0
  7. package/dist/cdcSocrataCatalogue.js +132 -0
  8. package/dist/cdcSocrataCatalogue.js.map +1 -0
  9. package/dist/clinicalTrialsStudies.d.ts +92 -0
  10. package/dist/clinicalTrialsStudies.d.ts.map +1 -0
  11. package/dist/clinicalTrialsStudies.js +149 -0
  12. package/dist/clinicalTrialsStudies.js.map +1 -0
  13. package/dist/epaEnvirofactsFacilities.d.ts +94 -0
  14. package/dist/epaEnvirofactsFacilities.d.ts.map +1 -0
  15. package/dist/epaEnvirofactsFacilities.js +142 -0
  16. package/dist/epaEnvirofactsFacilities.js.map +1 -0
  17. package/dist/fdicBankDirectory.d.ts +78 -0
  18. package/dist/fdicBankDirectory.d.ts.map +1 -0
  19. package/dist/fdicBankDirectory.js +124 -0
  20. package/dist/fdicBankDirectory.js.map +1 -0
  21. package/dist/healthdataSocrataCatalogue.d.ts +87 -0
  22. package/dist/healthdataSocrataCatalogue.d.ts.map +1 -0
  23. package/dist/healthdataSocrataCatalogue.js +132 -0
  24. package/dist/healthdataSocrataCatalogue.js.map +1 -0
  25. package/dist/index.d.ts +44 -0
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +22 -0
  28. package/dist/index.js.map +1 -1
  29. package/dist/ncbiPubmedSearch.d.ts +71 -0
  30. package/dist/ncbiPubmedSearch.d.ts.map +1 -0
  31. package/dist/ncbiPubmedSearch.js +128 -0
  32. package/dist/ncbiPubmedSearch.js.map +1 -0
  33. package/dist/nwsPointForecast.d.ts +99 -0
  34. package/dist/nwsPointForecast.d.ts.map +1 -0
  35. package/dist/nwsPointForecast.js +146 -0
  36. package/dist/nwsPointForecast.js.map +1 -0
  37. package/dist/registry.d.ts.map +1 -1
  38. package/dist/registry.js +22 -0
  39. package/dist/registry.js.map +1 -1
  40. package/dist/secEdgarFilings.d.ts +103 -0
  41. package/dist/secEdgarFilings.d.ts.map +1 -0
  42. package/dist/secEdgarFilings.js +214 -0
  43. package/dist/secEdgarFilings.js.map +1 -0
  44. package/dist/treasuryDebtToPenny.d.ts +90 -0
  45. package/dist/treasuryDebtToPenny.d.ts.map +1 -0
  46. package/dist/treasuryDebtToPenny.js +170 -0
  47. package/dist/treasuryDebtToPenny.js.map +1 -0
  48. package/dist/usaspendingAgencies.d.ts +78 -0
  49. package/dist/usaspendingAgencies.d.ts.map +1 -0
  50. package/dist/usaspendingAgencies.js +121 -0
  51. package/dist/usaspendingAgencies.js.map +1 -0
  52. package/package.json +10 -2
@@ -0,0 +1,87 @@
1
+ import type { UsDataAdapter } from './types.js';
2
+ /** Adapter id for the healthdata-socrata-catalogue source. */
3
+ export declare const HEALTHDATA_SOCRATA_CATALOGUE_SOURCE_ID = "healthdata-socrata-catalogue";
4
+ /** One catalogue entry from the Socrata discovery API. */
5
+ export interface HealthdataSocrataCatalogueEntry {
6
+ /** Four-by-four Socrata dataset id, e.g. "ahfs-x44r". */
7
+ id: string;
8
+ /** Human-readable title of the dataset, chart, story, or file. */
9
+ name: string;
10
+ /** What the entry is: "dataset", "chart", "story", "file", or "href". */
11
+ assetType: string;
12
+ /** Publishing office the entry belongs to, or null when the catalogue lists none. */
13
+ category: string | null;
14
+ /** How the entry is rendered, e.g. "tabular", "href", or "story". */
15
+ viewType: string;
16
+ /** When the entry was created, in seconds since the Unix epoch. */
17
+ createdAtEpochSeconds: number;
18
+ /** When the entry was last modified, in seconds since the Unix epoch. */
19
+ viewLastModifiedEpochSeconds: number;
20
+ /** How many times the entry has been viewed. */
21
+ viewCount: number;
22
+ /** How many times the entry has been downloaded. */
23
+ downloadCount: number;
24
+ }
25
+ /** One category and how many catalogue entries carry it. */
26
+ export interface HealthdataSocrataCategoryCount {
27
+ category: string;
28
+ entryCount: number;
29
+ }
30
+ /** One page of the catalogue, folded for a story. */
31
+ export interface HealthdataSocrataCatalogue {
32
+ /** One entry per catalogue item in the page. */
33
+ entries: HealthdataSocrataCatalogueEntry[];
34
+ entryCount: number;
35
+ /** Entries whose asset type is "dataset". */
36
+ datasetCount: number;
37
+ /** Entry with the latest creation time. Ties go to the earlier list entry. */
38
+ newestEntry: HealthdataSocrataCatalogueEntry;
39
+ /**
40
+ * Categories in the page, most entries first, ties broken by name. An entry
41
+ * the catalogue lists without a category is counted under "Uncategorised".
42
+ */
43
+ categories: HealthdataSocrataCategoryCount[];
44
+ }
45
+ /** Base URL for the HealthData.gov Socrata catalogue. */
46
+ export declare const HEALTHDATA_SOCRATA_CATALOGUE_API_BASE = "https://healthdata.gov/api/views.json";
47
+ /** How many catalogue entries one request reads. */
48
+ export declare const HEALTHDATA_SOCRATA_CATALOGUE_LIMIT = 10;
49
+ /**
50
+ * Builds the request URL for one page of the catalogue.
51
+ *
52
+ * The endpoint is keyless. The service answers the whole catalogue by default,
53
+ * so the adapter asks for a short page.
54
+ *
55
+ * @param options - an optional entry cap
56
+ * @returns the full request URL
57
+ */
58
+ export declare function buildHealthdataSocrataCatalogueUrl(options?: {
59
+ limit?: number;
60
+ }): string;
61
+ /**
62
+ * Parses one page of the catalogue into the entries and the category counts.
63
+ *
64
+ * An entry without an id, a name, or a creation time is a changed shape and
65
+ * stops the parse. An empty page also stops the parse, because a catalogue
66
+ * with no entries is not a usable answer.
67
+ *
68
+ * @param payload - the JSON body from the Socrata discovery API
69
+ * @returns the entries in the page, the counts, and the newest entry
70
+ */
71
+ export declare function parseHealthdataSocrataCataloguePayload(payload: unknown): HealthdataSocrataCatalogue;
72
+ /**
73
+ * Reads one page of the HealthData.gov catalogue.
74
+ *
75
+ * One keyless request covers the page and reports what the catalogue holds,
76
+ * without reading any dataset's rows.
77
+ *
78
+ * @param options - an optional entry cap and fetch stub
79
+ * @returns the entries in the page, the counts, and the newest entry
80
+ */
81
+ export declare function fetchHealthdataSocrataCatalogue(options?: {
82
+ limit?: number;
83
+ fetchImpl?: typeof globalThis.fetch;
84
+ }): Promise<HealthdataSocrataCatalogue>;
85
+ /** HealthData.gov Socrata catalogue of datasets, charts, and stories, keyless. */
86
+ export declare const healthdataSocrataCatalogueAdapter: UsDataAdapter<HealthdataSocrataCatalogue>;
87
+ //# sourceMappingURL=healthdataSocrataCatalogue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"healthdataSocrataCatalogue.d.ts","sourceRoot":"","sources":["../src/healthdataSocrataCatalogue.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,8DAA8D;AAC9D,eAAO,MAAM,sCAAsC,iCAAiC,CAAC;AAErF,0DAA0D;AAC1D,MAAM,WAAW,+BAA+B;IAC9C,yDAAyD;IACzD,EAAE,EAAE,MAAM,CAAC;IACX,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAC;IACb,yEAAyE;IACzE,SAAS,EAAE,MAAM,CAAC;IAClB,qFAAqF;IACrF,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,qEAAqE;IACrE,QAAQ,EAAE,MAAM,CAAC;IACjB,mEAAmE;IACnE,qBAAqB,EAAE,MAAM,CAAC;IAC9B,yEAAyE;IACzE,4BAA4B,EAAE,MAAM,CAAC;IACrC,gDAAgD;IAChD,SAAS,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,4DAA4D;AAC5D,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qDAAqD;AACrD,MAAM,WAAW,0BAA0B;IACzC,gDAAgD;IAChD,OAAO,EAAE,+BAA+B,EAAE,CAAC;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,YAAY,EAAE,MAAM,CAAC;IACrB,8EAA8E;IAC9E,WAAW,EAAE,+BAA+B,CAAC;IAC7C;;;OAGG;IACH,UAAU,EAAE,8BAA8B,EAAE,CAAC;CAC9C;AAED,yDAAyD;AACzD,eAAO,MAAM,qCAAqC,0CAA0C,CAAC;AAE7F,oDAAoD;AACpD,eAAO,MAAM,kCAAkC,KAAK,CAAC;AAyDrD;;;;;;;;GAQG;AACH,wBAAgB,kCAAkC,CAAC,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAKvF;AAED;;;;;;;;;GASG;AACH,wBAAgB,sCAAsC,CACpD,OAAO,EAAE,OAAO,GACf,0BAA0B,CAuC5B;AAED;;;;;;;;GAQG;AACH,wBAAsB,+BAA+B,CAAC,OAAO,CAAC,EAAE;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;CACrC,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAatC;AAED,kFAAkF;AAClF,eAAO,MAAM,iCAAiC,EAAE,aAAa,CAAC,0BAA0B,CAevF,CAAC"}
@@ -0,0 +1,132 @@
1
+ import { z } from 'zod';
2
+ import { UsSourceApiError, UsSourceParseError } from './errors.js';
3
+ import { readFixtureJson } from './fixtures.js';
4
+ /** Adapter id for the healthdata-socrata-catalogue source. */
5
+ export const HEALTHDATA_SOCRATA_CATALOGUE_SOURCE_ID = 'healthdata-socrata-catalogue';
6
+ /** Base URL for the HealthData.gov Socrata catalogue. */
7
+ export const HEALTHDATA_SOCRATA_CATALOGUE_API_BASE = 'https://healthdata.gov/api/views.json';
8
+ /** How many catalogue entries one request reads. */
9
+ export const HEALTHDATA_SOCRATA_CATALOGUE_LIMIT = 10;
10
+ /** Committed snapshot, so a build works when the HealthData.gov host is unreachable. */
11
+ const HEALTHDATA_SOCRATA_CATALOGUE_FIXTURE_FILENAME = 'healthdata-socrata-catalogue-2026-10-05.json';
12
+ /** Category bucket the adapter uses for an entry the catalogue lists without one. */
13
+ const HEALTHDATA_SOCRATA_UNCATEGORISED = 'Uncategorised';
14
+ // The discovery API sends a bare JSON array. A value the catalogue does not
15
+ // carry arrives as null, and every count arrives as a number.
16
+ const HEALTHDATA_SOCRATA_CATALOGUE_ENTRY_SCHEMA = z.object({
17
+ id: z.string().optional(),
18
+ name: z.string().optional(),
19
+ assetType: z.string().optional(),
20
+ category: z.string().nullable().optional(),
21
+ viewType: z.string().optional(),
22
+ createdAt: z.number().optional(),
23
+ viewLastModified: z.number().optional(),
24
+ viewCount: z.number().optional(),
25
+ downloadCount: z.number().optional(),
26
+ });
27
+ const HEALTHDATA_SOCRATA_CATALOGUE_PAYLOAD_SCHEMA = z.array(HEALTHDATA_SOCRATA_CATALOGUE_ENTRY_SCHEMA);
28
+ /** Counts entries per category, most entries first, ties by name. */
29
+ function countHealthdataSocrataCategories(entries) {
30
+ const counts = new Map();
31
+ for (const entry of entries) {
32
+ const category = entry.category ?? HEALTHDATA_SOCRATA_UNCATEGORISED;
33
+ counts.set(category, (counts.get(category) ?? 0) + 1);
34
+ }
35
+ return [...counts.entries()]
36
+ .sort(([leftCategory, leftCount], [rightCategory, rightCount]) => leftCount === rightCount ? leftCategory.localeCompare(rightCategory) : rightCount - leftCount)
37
+ .map(([category, entryCount]) => ({ category, entryCount }));
38
+ }
39
+ /** Picks the entry with the latest creation time, ties to the earlier entry. */
40
+ function newestHealthdataSocrataEntry(entries) {
41
+ const first = entries[0];
42
+ if (first === undefined) {
43
+ throw new UsSourceParseError(HEALTHDATA_SOCRATA_CATALOGUE_SOURCE_ID, 'No entries to summarise');
44
+ }
45
+ return entries.reduce((best, entry) => (entry.createdAtEpochSeconds > best.createdAtEpochSeconds ? entry : best), first);
46
+ }
47
+ /**
48
+ * Builds the request URL for one page of the catalogue.
49
+ *
50
+ * The endpoint is keyless. The service answers the whole catalogue by default,
51
+ * so the adapter asks for a short page.
52
+ *
53
+ * @param options - an optional entry cap
54
+ * @returns the full request URL
55
+ */
56
+ export function buildHealthdataSocrataCatalogueUrl(options) {
57
+ const params = new URLSearchParams({
58
+ limit: String(options?.limit ?? HEALTHDATA_SOCRATA_CATALOGUE_LIMIT),
59
+ });
60
+ return `https://healthdata.gov/api/views.json?${params.toString()}`;
61
+ }
62
+ /**
63
+ * Parses one page of the catalogue into the entries and the category counts.
64
+ *
65
+ * An entry without an id, a name, or a creation time is a changed shape and
66
+ * stops the parse. An empty page also stops the parse, because a catalogue
67
+ * with no entries is not a usable answer.
68
+ *
69
+ * @param payload - the JSON body from the Socrata discovery API
70
+ * @returns the entries in the page, the counts, and the newest entry
71
+ */
72
+ export function parseHealthdataSocrataCataloguePayload(payload) {
73
+ const parsed = HEALTHDATA_SOCRATA_CATALOGUE_PAYLOAD_SCHEMA.safeParse(payload);
74
+ if (!parsed.success) {
75
+ throw new UsSourceParseError(HEALTHDATA_SOCRATA_CATALOGUE_SOURCE_ID, parsed.error.message);
76
+ }
77
+ if (parsed.data.length === 0) {
78
+ throw new UsSourceParseError(HEALTHDATA_SOCRATA_CATALOGUE_SOURCE_ID, 'The response carried no entries');
79
+ }
80
+ const entries = parsed.data.map((row) => {
81
+ if (row.id === undefined || row.name === undefined || row.createdAt === undefined) {
82
+ throw new UsSourceParseError(HEALTHDATA_SOCRATA_CATALOGUE_SOURCE_ID, 'A catalogue entry arrived without its id, name, or creation time');
83
+ }
84
+ return {
85
+ id: row.id,
86
+ name: row.name,
87
+ assetType: row.assetType ?? '',
88
+ category: row.category ?? null,
89
+ viewType: row.viewType ?? '',
90
+ createdAtEpochSeconds: row.createdAt,
91
+ viewLastModifiedEpochSeconds: row.viewLastModified ?? row.createdAt,
92
+ viewCount: row.viewCount ?? 0,
93
+ downloadCount: row.downloadCount ?? 0,
94
+ };
95
+ });
96
+ return {
97
+ entries,
98
+ entryCount: entries.length,
99
+ datasetCount: entries.filter((entry) => entry.assetType === 'dataset').length,
100
+ newestEntry: newestHealthdataSocrataEntry(entries),
101
+ categories: countHealthdataSocrataCategories(entries),
102
+ };
103
+ }
104
+ /**
105
+ * Reads one page of the HealthData.gov catalogue.
106
+ *
107
+ * One keyless request covers the page and reports what the catalogue holds,
108
+ * without reading any dataset's rows.
109
+ *
110
+ * @param options - an optional entry cap and fetch stub
111
+ * @returns the entries in the page, the counts, and the newest entry
112
+ */
113
+ export async function fetchHealthdataSocrataCatalogue(options) {
114
+ const fetchImpl = options?.fetchImpl ?? globalThis.fetch;
115
+ const url = buildHealthdataSocrataCatalogueUrl(options?.limit === undefined ? {} : { limit: options.limit });
116
+ const response = await fetchImpl(url);
117
+ if (!response.ok) {
118
+ throw new UsSourceApiError(HEALTHDATA_SOCRATA_CATALOGUE_SOURCE_ID, `HTTP ${response.status} reading the catalogue`);
119
+ }
120
+ return parseHealthdataSocrataCataloguePayload(await response.json());
121
+ }
122
+ /** HealthData.gov Socrata catalogue of datasets, charts, and stories, keyless. */
123
+ export const healthdataSocrataCatalogueAdapter = {
124
+ id: HEALTHDATA_SOCRATA_CATALOGUE_SOURCE_ID,
125
+ name: 'HealthData.gov catalogue',
126
+ auth: 'none',
127
+ description: 'The HealthData.gov Socrata catalogue, one row per published dataset, chart, or story, with its category, view count, and download count.',
128
+ fetchLive: async (options) => fetchHealthdataSocrataCatalogue(options?.fetchImpl === undefined ? {} : { fetchImpl: options.fetchImpl }),
129
+ parse: (payload) => parseHealthdataSocrataCataloguePayload(payload),
130
+ loadFixture: () => parseHealthdataSocrataCataloguePayload(readFixtureJson(HEALTHDATA_SOCRATA_CATALOGUE_FIXTURE_FILENAME)),
131
+ };
132
+ //# sourceMappingURL=healthdataSocrataCatalogue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"healthdataSocrataCatalogue.js","sourceRoot":"","sources":["../src/healthdataSocrataCatalogue.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -46,6 +46,50 @@ export type { CpscManufacturerCountryCount, CpscProductRecall, CpscProductRecall
46
46
  export { buildCfpComplaintAggregationUrl, buildCfpComplaintCountUrl, buildCfpComplaintDayUrl, buildCfpConsumerComplaintSeries, CFPB_COMPLAINT_FIRST_YEAR, CFPB_COMPLAINT_SEARCH_API_BASE, CFPB_NEWEST_DATE_PROBE_DAYS, CFPB_TOP_LIST_LIMIT, cfpbConsumerComplaintsAdapter, fetchCfpConsumerComplaints, findNewestCfpComplaintDate, parseCfpComplaintAggregations, parseCfpComplaintSnapshot, parseCfpComplaintTotal, } from './cfpbConsumerComplaints.js';
47
47
  /** CFPB complaint types. */
48
48
  export type { CfpComplaintCompanyCount, CfpComplaintProductCount, CfpComplaintYearCount, CfpConsumerComplaintSeries, } from './cfpbConsumerComplaints.js';
49
+ /** Treasury debt to the penny, daily public debt outstanding (keyless). */
50
+ export { buildTreasuryDebtToPennyPage, buildTreasuryDebtToPennyUrl, fetchTreasuryDebtToPenny, parseTreasuryDebtToPennyPayload, treasuryDebtToPennyAdapter, TREASURY_DEBT_TO_PENNY_API_BASE, TREASURY_DEBT_TO_PENNY_PATH, TREASURY_DEBT_TO_PENNY_ROW_LIMIT, TREASURY_DEBT_TO_PENNY_SOURCE_ID, } from './treasuryDebtToPenny.js';
51
+ /** Treasury debt to the penny types. */
52
+ export type { TreasuryDebtToPennyDay, TreasuryDebtToPennyPage } from './treasuryDebtToPenny.js';
53
+ /** SEC EDGAR issuer submissions and recent filings (keyless). */
54
+ export { buildSecEdgarSubmissionsUrl, fetchSecEdgarFilings, parseSecEdgarFilingsPayload, secEdgarFilingsAdapter, SEC_EDGAR_APPLE_CIK, SEC_EDGAR_FILINGS_SOURCE_ID, SEC_EDGAR_SUBMISSIONS_API_BASE, SEC_EDGAR_USER_AGENT, } from './secEdgarFilings.js';
55
+ /** SEC EDGAR filings types. */
56
+ export type { SecEdgarCompanyFilings, SecEdgarFiling, SecEdgarFormCount, } from './secEdgarFilings.js';
57
+ /** FDIC bank directory (keyless). */
58
+ export { buildFdicBankDirectoryUrl, FDIC_BANK_API_BASE, FDIC_BANK_DIRECTORY_SOURCE_ID, FDIC_BANK_FIELDS, FDIC_BANK_ROW_LIMIT, fdicBankDirectoryAdapter, fetchFdicBankDirectory, parseFdicBankDirectoryPayload, } from './fdicBankDirectory.js';
59
+ /** FDIC bank directory types. */
60
+ export type { FdicBank, FdicBankDirectory, FdicBankStateCount } from './fdicBankDirectory.js';
61
+ /** ClinicalTrials.gov registered studies (keyless). */
62
+ export { buildClinicalTrialsStudiesUrl, CLINICALTRIALS_STUDIES_API_BASE, CLINICALTRIALS_STUDIES_PAGE_SIZE, CLINICALTRIALS_STUDIES_SOURCE_ID, clinicalTrialsStudiesAdapter, fetchClinicalTrialsStudies, parseClinicalTrialsStudiesPayload, } from './clinicalTrialsStudies.js';
63
+ /** ClinicalTrials.gov study types. */
64
+ export type { ClinicalTrialStatusCount, ClinicalTrialStudy, ClinicalTrialStudyPage, } from './clinicalTrialsStudies.js';
65
+ /** National Weather Service point forecast grid (keyless). */
66
+ export { buildNwsPointUrl, fetchNwsPointForecast, NWS_API_BASE, NWS_DEFAULT_LATITUDE, NWS_DEFAULT_LONGITUDE, NWS_POINT_FORECAST_PATH, NWS_POINT_FORECAST_SOURCE_ID, NWS_USER_AGENT, nwsPointForecastAdapter, parseNwsPointForecastPayload, } from './nwsPointForecast.js';
67
+ /** National Weather Service point forecast types. */
68
+ export type { NwsForecastPoint } from './nwsPointForecast.js';
69
+ /** USAspending top-tier federal agencies (keyless). */
70
+ export { fetchUsaSpendingAgencies, parseUsaSpendingAgenciesPayload, usaspendingAgenciesAdapter, USASPENDING_AGENCIES_SOURCE_ID, USASPENDING_API_BASE, USASPENDING_TOP_TIER_AGENCIES_PATH, } from './usaspendingAgencies.js';
71
+ /** USAspending agency types. */
72
+ export type { UsaSpendingAgency, UsaSpendingAgencyDirectory } from './usaspendingAgencies.js';
73
+ /** EPA Envirofacts Toxics Release Inventory facilities (keyless). */
74
+ export { buildEpaEnvirofactsFacilitiesUrl, EPA_ENVIROFACTS_API_BASE, EPA_ENVIROFACTS_FACILITIES_SOURCE_ID, EPA_ENVIROFACTS_ROW_WINDOW, EPA_ENVIROFACTS_STATE_ABBR, EPA_ENVIROFACTS_STATE_COLUMN, EPA_ENVIROFACTS_TABLE, epaEnvirofactsFacilitiesAdapter, fetchEpaEnvirofactsFacilities, parseEpaEnvirofactsFacilitiesPayload, } from './epaEnvirofactsFacilities.js';
75
+ /** EPA Envirofacts facility types. */
76
+ export type { EpaEnvirofactsFacility, EpaEnvirofactsFacilityPage, EpaEnvirofactsCountyCount, } from './epaEnvirofactsFacilities.js';
77
+ /** NCBI PubMed literature search (keyless). */
78
+ export { buildNcbiPubmedSearchUrl, fetchNcbiPubmedSearch, NCBI_EUTILS_API_BASE, NCBI_PUBMED_DEFAULT_RETMAX, NCBI_PUBMED_DEFAULT_TERM, NCBI_PUBMED_ESEARCH_PATH, NCBI_PUBMED_SEARCH_SOURCE_ID, ncbiPubmedSearchAdapter, parseNcbiPubmedSearchPayload, } from './ncbiPubmedSearch.js';
79
+ /** NCBI PubMed search types. */
80
+ export type { NcbiPubmedSearchResult, NcbiPubmedTranslation } from './ncbiPubmedSearch.js';
81
+ /** CDC Socrata catalogue of public health datasets (keyless). */
82
+ export { buildCdcSocrataCatalogueUrl, CDC_SOCRATA_CATALOGUE_API_BASE, CDC_SOCRATA_CATALOGUE_LIMIT, CDC_SOCRATA_CATALOGUE_SOURCE_ID, cdcSocrataCatalogueAdapter, fetchCdcSocrataCatalogue, parseCdcSocrataCataloguePayload, } from './cdcSocrataCatalogue.js';
83
+ /** CDC Socrata catalogue types. */
84
+ export type { CdcSocrataCatalogue, CdcSocrataCatalogueEntry, CdcSocrataCategoryCount, } from './cdcSocrataCatalogue.js';
85
+ /** HealthData.gov Socrata catalogue of health datasets (keyless). */
86
+ export { buildHealthdataSocrataCatalogueUrl, fetchHealthdataSocrataCatalogue, HEALTHDATA_SOCRATA_CATALOGUE_API_BASE, HEALTHDATA_SOCRATA_CATALOGUE_LIMIT, HEALTHDATA_SOCRATA_CATALOGUE_SOURCE_ID, healthdataSocrataCatalogueAdapter, parseHealthdataSocrataCataloguePayload, } from './healthdataSocrataCatalogue.js';
87
+ /** HealthData.gov Socrata catalogue types. */
88
+ export type { HealthdataSocrataCatalogue, HealthdataSocrataCatalogueEntry, HealthdataSocrataCategoryCount, } from './healthdataSocrataCatalogue.js';
89
+ /** Bureau of Transportation Statistics catalogue (keyless). */
90
+ export { buildBtsTransportationStatsUrl, BTS_TRANSPORTATION_STATS_API_BASE, BTS_TRANSPORTATION_STATS_LIMIT, BTS_TRANSPORTATION_STATS_SOURCE_ID, btsTransportationStatsAdapter, fetchBtsTransportationStats, parseBtsTransportationStatsPayload, } from './btsTransportationStats.js';
91
+ /** Bureau of Transportation Statistics catalogue types. */
92
+ export type { BtsCatalogueCategoryCount, BtsCatalogueEntry, BtsTransportationCatalogue, } from './btsTransportationStats.js';
49
93
  /** Shared adapter contract types. */
50
94
  export type { UsDataAdapter, UsFetchOptions, UsSourceAuth, UsSourceProbe } from './types.js';
51
95
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAClF,wDAAwD;AACxD,OAAO,EACL,YAAY,EACZ,yBAAyB,EACzB,sBAAsB,EACtB,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC;AACxB,wBAAwB;AACxB,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChE,2CAA2C;AAC3C,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,0BAA0B,EAC1B,wBAAwB,EACxB,kBAAkB,EAClB,yBAAyB,EACzB,wBAAwB,EACxB,4BAA4B,EAC5B,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,6BAA6B;AAC7B,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAC9B,qDAAqD;AACrD,OAAO,EACL,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC3B,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC7B,qBAAqB,EACrB,4BAA4B,EAC5B,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAC/B,uCAAuC;AACvC,YAAY,EACV,wBAAwB,EACxB,uBAAuB,EACvB,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,uBAAuB,CAAC;AAC/B,oEAAoE;AACpE,OAAO,EACL,gCAAgC,EAChC,6BAA6B,EAC7B,0BAA0B,EAC1B,yBAAyB,EACzB,qCAAqC,EACrC,6BAA6B,EAC7B,4BAA4B,EAC5B,sBAAsB,EACtB,4BAA4B,EAC5B,6BAA6B,GAC9B,MAAM,4BAA4B,CAAC;AACpC,mCAAmC;AACnC,YAAY,EACV,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AACpC,oEAAoE;AACpE,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,mCAAmC,EACnC,uBAAuB,EACvB,yBAAyB,EACzB,mBAAmB,EACnB,6BAA6B,EAC7B,oBAAoB,EACpB,yBAAyB,EACzB,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,mBAAmB,CAAC;AAC3B,mCAAmC;AACnC,YAAY,EACV,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,sDAAsD;AACtD,OAAO,EACL,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,2EAA2E;AAC3E,OAAO,EACL,kCAAkC,EAClC,+BAA+B,EAC/B,6BAA6B,EAC7B,mCAAmC,EACnC,8BAA8B,EAC9B,qCAAqC,EACrC,+BAA+B,EAC/B,oCAAoC,EACpC,+CAA+C,EAC/C,wCAAwC,EACxC,6BAA6B,GAC9B,MAAM,8BAA8B,CAAC;AACtC,oCAAoC;AACpC,YAAY,EACV,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,8BAA8B,CAAC;AACtC,4CAA4C;AAC5C,OAAO,EACL,6BAA6B,EAC7B,uBAAuB,EACvB,+BAA+B,EAC/B,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,EAC1B,uBAAuB,EACvB,uBAAuB,EACvB,2BAA2B,GAC5B,MAAM,+BAA+B,CAAC;AACvC,8BAA8B;AAC9B,YAAY,EACV,eAAe,EACf,wBAAwB,EACxB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,+BAA+B,CAAC;AACvC,kDAAkD;AAClD,OAAO,EACL,8BAA8B,EAC9B,6BAA6B,EAC7B,8BAA8B,EAC9B,uBAAuB,EACvB,yBAAyB,EACzB,sBAAsB,EACtB,kCAAkC,EAClC,iBAAiB,EACjB,6BAA6B,EAC7B,qBAAqB,EACrB,yBAAyB,EACzB,6BAA6B,EAC7B,sBAAsB,EACtB,8BAA8B,EAC9B,wBAAwB,EACxB,4BAA4B,EAC5B,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AACjC,iCAAiC;AACjC,YAAY,EACV,yBAAyB,EACzB,wBAAwB,EACxB,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AACjC,wDAAwD;AACxD,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,EAC1B,uBAAuB,EACvB,8BAA8B,EAC9B,6BAA6B,EAC7B,qCAAqC,EACrC,uCAAuC,EACvC,+BAA+B,EAC/B,qCAAqC,EACrC,8BAA8B,EAC9B,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,kCAAkC;AAClC,YAAY,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAChG,+CAA+C;AAC/C,OAAO,EACL,4BAA4B,EAC5B,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,EACvB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AACjC,iCAAiC;AACjC,YAAY,EACV,4BAA4B,EAC5B,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,yBAAyB,CAAC;AACjC,kDAAkD;AAClD,OAAO,EACL,+BAA+B,EAC/B,yBAAyB,EACzB,uBAAuB,EACvB,+BAA+B,EAC/B,yBAAyB,EACzB,8BAA8B,EAC9B,2BAA2B,EAC3B,mBAAmB,EACnB,6BAA6B,EAC7B,0BAA0B,EAC1B,0BAA0B,EAC1B,6BAA6B,EAC7B,yBAAyB,EACzB,sBAAsB,GACvB,MAAM,6BAA6B,CAAC;AACrC,4BAA4B;AAC5B,YAAY,EACV,wBAAwB,EACxB,wBAAwB,EACxB,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,6BAA6B,CAAC;AACrC,2EAA2E;AAC3E,OAAO,EACL,4BAA4B,EAC5B,2BAA2B,EAC3B,wBAAwB,EACxB,+BAA+B,EAC/B,0BAA0B,EAC1B,+BAA+B,EAC/B,2BAA2B,EAC3B,gCAAgC,EAChC,gCAAgC,GACjC,MAAM,0BAA0B,CAAC;AAClC,wCAAwC;AACxC,YAAY,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAChG,iEAAiE;AACjE,OAAO,EACL,2BAA2B,EAC3B,oBAAoB,EACpB,2BAA2B,EAC3B,sBAAsB,EACtB,mBAAmB,EACnB,2BAA2B,EAC3B,8BAA8B,EAC9B,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,+BAA+B;AAC/B,YAAY,EACV,sBAAsB,EACtB,cAAc,EACd,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAC9B,qCAAqC;AACrC,OAAO,EACL,yBAAyB,EACzB,kBAAkB,EAClB,6BAA6B,EAC7B,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EACtB,6BAA6B,GAC9B,MAAM,wBAAwB,CAAC;AAChC,iCAAiC;AACjC,YAAY,EAAE,QAAQ,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC9F,uDAAuD;AACvD,OAAO,EACL,6BAA6B,EAC7B,+BAA+B,EAC/B,gCAAgC,EAChC,gCAAgC,EAChC,4BAA4B,EAC5B,0BAA0B,EAC1B,iCAAiC,GAClC,MAAM,4BAA4B,CAAC;AACpC,sCAAsC;AACtC,YAAY,EACV,wBAAwB,EACxB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,4BAA4B,CAAC;AACpC,8DAA8D;AAC9D,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,4BAA4B,EAC5B,cAAc,EACd,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,uBAAuB,CAAC;AAC/B,qDAAqD;AACrD,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,uDAAuD;AACvD,OAAO,EACL,wBAAwB,EACxB,+BAA+B,EAC/B,0BAA0B,EAC1B,8BAA8B,EAC9B,oBAAoB,EACpB,kCAAkC,GACnC,MAAM,0BAA0B,CAAC;AAClC,gCAAgC;AAChC,YAAY,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAC9F,qEAAqE;AACrE,OAAO,EACL,gCAAgC,EAChC,wBAAwB,EACxB,oCAAoC,EACpC,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,EAC5B,qBAAqB,EACrB,+BAA+B,EAC/B,6BAA6B,EAC7B,oCAAoC,GACrC,MAAM,+BAA+B,CAAC;AACvC,sCAAsC;AACtC,YAAY,EACV,sBAAsB,EACtB,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,+BAA+B,CAAC;AACvC,+CAA+C;AAC/C,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,EACpB,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EACxB,4BAA4B,EAC5B,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,uBAAuB,CAAC;AAC/B,gCAAgC;AAChC,YAAY,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC3F,iEAAiE;AACjE,OAAO,EACL,2BAA2B,EAC3B,8BAA8B,EAC9B,2BAA2B,EAC3B,+BAA+B,EAC/B,0BAA0B,EAC1B,wBAAwB,EACxB,+BAA+B,GAChC,MAAM,0BAA0B,CAAC;AAClC,mCAAmC;AACnC,YAAY,EACV,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAClC,qEAAqE;AACrE,OAAO,EACL,kCAAkC,EAClC,+BAA+B,EAC/B,qCAAqC,EACrC,kCAAkC,EAClC,sCAAsC,EACtC,iCAAiC,EACjC,sCAAsC,GACvC,MAAM,iCAAiC,CAAC;AACzC,8CAA8C;AAC9C,YAAY,EACV,0BAA0B,EAC1B,+BAA+B,EAC/B,8BAA8B,GAC/B,MAAM,iCAAiC,CAAC;AACzC,+DAA+D;AAC/D,OAAO,EACL,8BAA8B,EAC9B,iCAAiC,EACjC,8BAA8B,EAC9B,kCAAkC,EAClC,6BAA6B,EAC7B,2BAA2B,EAC3B,kCAAkC,GACnC,MAAM,6BAA6B,CAAC;AACrC,2DAA2D;AAC3D,YAAY,EACV,yBAAyB,EACzB,iBAAiB,EACjB,0BAA0B,GAC3B,MAAM,6BAA6B,CAAC;AAErC,qCAAqC;AACrC,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -24,4 +24,26 @@ export { buildUsgsPeakStreamflowSeries, buildUsgsPeakStreamflowUrl, fetchUsgsPea
24
24
  export { buildCpscProductRecallSeries, buildCpscRecallUrl, CPSC_ERROR_RECALL_ID, CPSC_RECALL_API_BASE, CPSC_RECALL_FIRST_YEAR, cpscProductRecallsAdapter, fetchCpscProductRecalls, parseCpscRecallPayload, parseCpscRecallSnapshot, } from './cpscProductRecalls.js';
25
25
  /** CFPB Consumer Complaint Database (keyless). */
26
26
  export { buildCfpComplaintAggregationUrl, buildCfpComplaintCountUrl, buildCfpComplaintDayUrl, buildCfpConsumerComplaintSeries, CFPB_COMPLAINT_FIRST_YEAR, CFPB_COMPLAINT_SEARCH_API_BASE, CFPB_NEWEST_DATE_PROBE_DAYS, CFPB_TOP_LIST_LIMIT, cfpbConsumerComplaintsAdapter, fetchCfpConsumerComplaints, findNewestCfpComplaintDate, parseCfpComplaintAggregations, parseCfpComplaintSnapshot, parseCfpComplaintTotal, } from './cfpbConsumerComplaints.js';
27
+ /** Treasury debt to the penny, daily public debt outstanding (keyless). */
28
+ export { buildTreasuryDebtToPennyPage, buildTreasuryDebtToPennyUrl, fetchTreasuryDebtToPenny, parseTreasuryDebtToPennyPayload, treasuryDebtToPennyAdapter, TREASURY_DEBT_TO_PENNY_API_BASE, TREASURY_DEBT_TO_PENNY_PATH, TREASURY_DEBT_TO_PENNY_ROW_LIMIT, TREASURY_DEBT_TO_PENNY_SOURCE_ID, } from './treasuryDebtToPenny.js';
29
+ /** SEC EDGAR issuer submissions and recent filings (keyless). */
30
+ export { buildSecEdgarSubmissionsUrl, fetchSecEdgarFilings, parseSecEdgarFilingsPayload, secEdgarFilingsAdapter, SEC_EDGAR_APPLE_CIK, SEC_EDGAR_FILINGS_SOURCE_ID, SEC_EDGAR_SUBMISSIONS_API_BASE, SEC_EDGAR_USER_AGENT, } from './secEdgarFilings.js';
31
+ /** FDIC bank directory (keyless). */
32
+ export { buildFdicBankDirectoryUrl, FDIC_BANK_API_BASE, FDIC_BANK_DIRECTORY_SOURCE_ID, FDIC_BANK_FIELDS, FDIC_BANK_ROW_LIMIT, fdicBankDirectoryAdapter, fetchFdicBankDirectory, parseFdicBankDirectoryPayload, } from './fdicBankDirectory.js';
33
+ /** ClinicalTrials.gov registered studies (keyless). */
34
+ export { buildClinicalTrialsStudiesUrl, CLINICALTRIALS_STUDIES_API_BASE, CLINICALTRIALS_STUDIES_PAGE_SIZE, CLINICALTRIALS_STUDIES_SOURCE_ID, clinicalTrialsStudiesAdapter, fetchClinicalTrialsStudies, parseClinicalTrialsStudiesPayload, } from './clinicalTrialsStudies.js';
35
+ /** National Weather Service point forecast grid (keyless). */
36
+ export { buildNwsPointUrl, fetchNwsPointForecast, NWS_API_BASE, NWS_DEFAULT_LATITUDE, NWS_DEFAULT_LONGITUDE, NWS_POINT_FORECAST_PATH, NWS_POINT_FORECAST_SOURCE_ID, NWS_USER_AGENT, nwsPointForecastAdapter, parseNwsPointForecastPayload, } from './nwsPointForecast.js';
37
+ /** USAspending top-tier federal agencies (keyless). */
38
+ export { fetchUsaSpendingAgencies, parseUsaSpendingAgenciesPayload, usaspendingAgenciesAdapter, USASPENDING_AGENCIES_SOURCE_ID, USASPENDING_API_BASE, USASPENDING_TOP_TIER_AGENCIES_PATH, } from './usaspendingAgencies.js';
39
+ /** EPA Envirofacts Toxics Release Inventory facilities (keyless). */
40
+ export { buildEpaEnvirofactsFacilitiesUrl, EPA_ENVIROFACTS_API_BASE, EPA_ENVIROFACTS_FACILITIES_SOURCE_ID, EPA_ENVIROFACTS_ROW_WINDOW, EPA_ENVIROFACTS_STATE_ABBR, EPA_ENVIROFACTS_STATE_COLUMN, EPA_ENVIROFACTS_TABLE, epaEnvirofactsFacilitiesAdapter, fetchEpaEnvirofactsFacilities, parseEpaEnvirofactsFacilitiesPayload, } from './epaEnvirofactsFacilities.js';
41
+ /** NCBI PubMed literature search (keyless). */
42
+ export { buildNcbiPubmedSearchUrl, fetchNcbiPubmedSearch, NCBI_EUTILS_API_BASE, NCBI_PUBMED_DEFAULT_RETMAX, NCBI_PUBMED_DEFAULT_TERM, NCBI_PUBMED_ESEARCH_PATH, NCBI_PUBMED_SEARCH_SOURCE_ID, ncbiPubmedSearchAdapter, parseNcbiPubmedSearchPayload, } from './ncbiPubmedSearch.js';
43
+ /** CDC Socrata catalogue of public health datasets (keyless). */
44
+ export { buildCdcSocrataCatalogueUrl, CDC_SOCRATA_CATALOGUE_API_BASE, CDC_SOCRATA_CATALOGUE_LIMIT, CDC_SOCRATA_CATALOGUE_SOURCE_ID, cdcSocrataCatalogueAdapter, fetchCdcSocrataCatalogue, parseCdcSocrataCataloguePayload, } from './cdcSocrataCatalogue.js';
45
+ /** HealthData.gov Socrata catalogue of health datasets (keyless). */
46
+ export { buildHealthdataSocrataCatalogueUrl, fetchHealthdataSocrataCatalogue, HEALTHDATA_SOCRATA_CATALOGUE_API_BASE, HEALTHDATA_SOCRATA_CATALOGUE_LIMIT, HEALTHDATA_SOCRATA_CATALOGUE_SOURCE_ID, healthdataSocrataCatalogueAdapter, parseHealthdataSocrataCataloguePayload, } from './healthdataSocrataCatalogue.js';
47
+ /** Bureau of Transportation Statistics catalogue (keyless). */
48
+ export { buildBtsTransportationStatsUrl, BTS_TRANSPORTATION_STATS_API_BASE, BTS_TRANSPORTATION_STATS_LIMIT, BTS_TRANSPORTATION_STATS_SOURCE_ID, btsTransportationStatsAdapter, fetchBtsTransportationStats, parseBtsTransportationStatsPayload, } from './btsTransportationStats.js';
27
49
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ import type { UsDataAdapter } from './types.js';
2
+ /** Adapter id for the NCBI PubMed search source. */
3
+ export declare const NCBI_PUBMED_SEARCH_SOURCE_ID = "ncbi-pubmed-search";
4
+ /** One query's translation and the PubMed ids it matched. */
5
+ export interface NcbiPubmedSearchResult {
6
+ /** How many records in PubMed match the query. */
7
+ totalCount: number;
8
+ /** How many ids this response returned. */
9
+ returnedCount: number;
10
+ /** PubMed ids of the matching records, in the order NCBI ranked them. */
11
+ pmids: string[];
12
+ /** Plain-text translation of the query, e.g. how "asthma" expands to MeSH terms. */
13
+ queryTranslation: string;
14
+ /** The query translation broken into field mappings, empty when none are sent. */
15
+ translationSet: NcbiPubmedTranslation[];
16
+ }
17
+ /** One `from` to `to` mapping in NCBI's query translation. */
18
+ export interface NcbiPubmedTranslation {
19
+ from: string;
20
+ to: string;
21
+ }
22
+ /** Base URL for the NCBI Entrez Utilities API. */
23
+ export declare const NCBI_EUTILS_API_BASE = "https://eutils.ncbi.nlm.nih.gov/entrez/eutils";
24
+ /** Path of the PubMed search endpoint. */
25
+ export declare const NCBI_PUBMED_ESEARCH_PATH = "/esearch.fcgi";
26
+ /** Search term the committed fixture was captured with. */
27
+ export declare const NCBI_PUBMED_DEFAULT_TERM = "asthma";
28
+ /** Number of ids one request asks for. */
29
+ export declare const NCBI_PUBMED_DEFAULT_RETMAX = 10;
30
+ /**
31
+ * Builds the request URL for one PubMed search.
32
+ *
33
+ * The endpoint is keyless. The default term is the one the committed fixture
34
+ * was captured with, and the default cap of ten ids keeps the response small.
35
+ *
36
+ * @param options - an optional search term and id cap
37
+ * @returns the full request URL
38
+ */
39
+ export declare function buildNcbiPubmedSearchUrl(options?: {
40
+ term?: string;
41
+ retmax?: number;
42
+ }): string;
43
+ /**
44
+ * Parses one search response into the count, the ids, and the translation.
45
+ *
46
+ * A response that carries an error key is an API error, even though NCBI
47
+ * answers it with HTTP 200. A count that does not read as a number, or a
48
+ * response without a result block, is a changed shape and stops the parse.
49
+ *
50
+ * @param payload - the JSON body from the NCBI Entrez Utilities API
51
+ * @returns the match count, the PubMed ids, and the query translation
52
+ */
53
+ export declare function parseNcbiPubmedSearchPayload(payload: unknown): NcbiPubmedSearchResult;
54
+ /**
55
+ * Runs one PubMed search through the NCBI Entrez Utilities API.
56
+ *
57
+ * One keyless request returns the match count, a page of PubMed ids, and how
58
+ * NCBI translated the query. The response is small, so the adapter asks for
59
+ * ten ids by default.
60
+ *
61
+ * @param options - an optional search term, id cap, and fetch stub
62
+ * @returns the match count, the PubMed ids, and the query translation
63
+ */
64
+ export declare function fetchNcbiPubmedSearch(options?: {
65
+ term?: string;
66
+ retmax?: number;
67
+ fetchImpl?: typeof globalThis.fetch;
68
+ }): Promise<NcbiPubmedSearchResult>;
69
+ /** NCBI PubMed literature search, one query per request, keyless. */
70
+ export declare const ncbiPubmedSearchAdapter: UsDataAdapter<NcbiPubmedSearchResult>;
71
+ //# sourceMappingURL=ncbiPubmedSearch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ncbiPubmedSearch.d.ts","sourceRoot":"","sources":["../src/ncbiPubmedSearch.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,oDAAoD;AACpD,eAAO,MAAM,4BAA4B,uBAAuB,CAAC;AAEjE,6DAA6D;AAC7D,MAAM,WAAW,sBAAsB;IACrC,kDAAkD;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,2CAA2C;IAC3C,aAAa,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,oFAAoF;IACpF,gBAAgB,EAAE,MAAM,CAAC;IACzB,kFAAkF;IAClF,cAAc,EAAE,qBAAqB,EAAE,CAAC;CACzC;AAED,8DAA8D;AAC9D,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,kDAAkD;AAClD,eAAO,MAAM,oBAAoB,kDAAkD,CAAC;AAEpF,0CAA0C;AAC1C,eAAO,MAAM,wBAAwB,kBAAkB,CAAC;AAExD,2DAA2D;AAC3D,eAAO,MAAM,wBAAwB,WAAW,CAAC;AAEjD,0CAA0C;AAC1C,eAAO,MAAM,0BAA0B,KAAK,CAAC;AA6B7C;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAQ7F;AAED;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,OAAO,GAAG,sBAAsB,CAqCrF;AAED;;;;;;;;;GASG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,CAAC,EAAE;IACpD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;CACrC,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAclC;AAED,qEAAqE;AACrE,eAAO,MAAM,uBAAuB,EAAE,aAAa,CAAC,sBAAsB,CAUzE,CAAC"}
@@ -0,0 +1,128 @@
1
+ import { z } from 'zod';
2
+ import { UsSourceApiError, UsSourceParseError } from './errors.js';
3
+ import { readFixtureJson } from './fixtures.js';
4
+ /** Adapter id for the NCBI PubMed search source. */
5
+ export const NCBI_PUBMED_SEARCH_SOURCE_ID = 'ncbi-pubmed-search';
6
+ /** Base URL for the NCBI Entrez Utilities API. */
7
+ export const NCBI_EUTILS_API_BASE = 'https://eutils.ncbi.nlm.nih.gov/entrez/eutils';
8
+ /** Path of the PubMed search endpoint. */
9
+ export const NCBI_PUBMED_ESEARCH_PATH = '/esearch.fcgi';
10
+ /** Search term the committed fixture was captured with. */
11
+ export const NCBI_PUBMED_DEFAULT_TERM = 'asthma';
12
+ /** Number of ids one request asks for. */
13
+ export const NCBI_PUBMED_DEFAULT_RETMAX = 10;
14
+ /** Committed snapshot, so a build works when the NCBI host is unreachable. */
15
+ const NCBI_PUBMED_FIXTURE_FILENAME = 'ncbi-pubmed-search-2026-10-05.json';
16
+ // NCBI sends every count as a string and leaves a field out when it does not
17
+ // apply. A rejected query answers 200 with an esearchresult that carries an
18
+ // error key rather than an HTTP error.
19
+ const NCBI_PUBMED_TRANSLATION_SCHEMA = z.object({
20
+ from: z.string().optional(),
21
+ to: z.string().optional(),
22
+ });
23
+ const NCBI_PUBMED_PAYLOAD_SCHEMA = z.object({
24
+ header: z.object({ type: z.string().optional(), version: z.string().optional() }).optional(),
25
+ esearchresult: z
26
+ .object({
27
+ count: z.string().optional(),
28
+ retmax: z.string().optional(),
29
+ retstart: z.string().optional(),
30
+ idlist: z.array(z.string()).optional(),
31
+ querytranslation: z.string().optional(),
32
+ translationset: z.array(NCBI_PUBMED_TRANSLATION_SCHEMA).optional(),
33
+ error: z.string().optional(),
34
+ warninglist: z.object({ phrasesignored: z.array(z.string()).optional() }).optional(),
35
+ })
36
+ .optional(),
37
+ });
38
+ /**
39
+ * Builds the request URL for one PubMed search.
40
+ *
41
+ * The endpoint is keyless. The default term is the one the committed fixture
42
+ * was captured with, and the default cap of ten ids keeps the response small.
43
+ *
44
+ * @param options - an optional search term and id cap
45
+ * @returns the full request URL
46
+ */
47
+ export function buildNcbiPubmedSearchUrl(options) {
48
+ const params = new URLSearchParams({
49
+ db: 'pubmed',
50
+ term: options?.term ?? NCBI_PUBMED_DEFAULT_TERM,
51
+ retmode: 'json',
52
+ retmax: String(options?.retmax ?? NCBI_PUBMED_DEFAULT_RETMAX),
53
+ });
54
+ return `${NCBI_EUTILS_API_BASE}${NCBI_PUBMED_ESEARCH_PATH}?${params.toString()}`;
55
+ }
56
+ /**
57
+ * Parses one search response into the count, the ids, and the translation.
58
+ *
59
+ * A response that carries an error key is an API error, even though NCBI
60
+ * answers it with HTTP 200. A count that does not read as a number, or a
61
+ * response without a result block, is a changed shape and stops the parse.
62
+ *
63
+ * @param payload - the JSON body from the NCBI Entrez Utilities API
64
+ * @returns the match count, the PubMed ids, and the query translation
65
+ */
66
+ export function parseNcbiPubmedSearchPayload(payload) {
67
+ const parsed = NCBI_PUBMED_PAYLOAD_SCHEMA.safeParse(payload);
68
+ if (!parsed.success) {
69
+ throw new UsSourceParseError(NCBI_PUBMED_SEARCH_SOURCE_ID, parsed.error.message);
70
+ }
71
+ const result = parsed.data.esearchresult;
72
+ if (result === undefined) {
73
+ throw new UsSourceParseError(NCBI_PUBMED_SEARCH_SOURCE_ID, 'The response carried no result block');
74
+ }
75
+ if (result.error !== undefined) {
76
+ throw new UsSourceApiError(NCBI_PUBMED_SEARCH_SOURCE_ID, result.error);
77
+ }
78
+ const totalCount = Number(result.count);
79
+ if (result.count === undefined || !Number.isFinite(totalCount)) {
80
+ throw new UsSourceParseError(NCBI_PUBMED_SEARCH_SOURCE_ID, `Unreadable match count: ${result.count ?? 'missing'}`);
81
+ }
82
+ const pmids = result.idlist ?? [];
83
+ return {
84
+ totalCount,
85
+ returnedCount: pmids.length,
86
+ pmids,
87
+ queryTranslation: result.querytranslation ?? '',
88
+ translationSet: (result.translationset ?? []).flatMap((translation) => {
89
+ if (translation.from === undefined || translation.to === undefined) {
90
+ return [];
91
+ }
92
+ return [{ from: translation.from, to: translation.to }];
93
+ }),
94
+ };
95
+ }
96
+ /**
97
+ * Runs one PubMed search through the NCBI Entrez Utilities API.
98
+ *
99
+ * One keyless request returns the match count, a page of PubMed ids, and how
100
+ * NCBI translated the query. The response is small, so the adapter asks for
101
+ * ten ids by default.
102
+ *
103
+ * @param options - an optional search term, id cap, and fetch stub
104
+ * @returns the match count, the PubMed ids, and the query translation
105
+ */
106
+ export async function fetchNcbiPubmedSearch(options) {
107
+ const fetchImpl = options?.fetchImpl ?? globalThis.fetch;
108
+ const url = buildNcbiPubmedSearchUrl({
109
+ ...(options?.term === undefined ? {} : { term: options.term }),
110
+ ...(options?.retmax === undefined ? {} : { retmax: options.retmax }),
111
+ });
112
+ const response = await fetchImpl(url);
113
+ if (!response.ok) {
114
+ throw new UsSourceApiError(NCBI_PUBMED_SEARCH_SOURCE_ID, `HTTP ${response.status} reading the PubMed search`);
115
+ }
116
+ return parseNcbiPubmedSearchPayload(await response.json());
117
+ }
118
+ /** NCBI PubMed literature search, one query per request, keyless. */
119
+ export const ncbiPubmedSearchAdapter = {
120
+ id: NCBI_PUBMED_SEARCH_SOURCE_ID,
121
+ name: 'NCBI PubMed search',
122
+ auth: 'none',
123
+ description: 'PubMed literature searches through the NCBI Entrez Utilities API, with the match count, a page of PubMed ids, and how NCBI translated the query.',
124
+ fetchLive: async (options) => fetchNcbiPubmedSearch(options?.fetchImpl === undefined ? {} : { fetchImpl: options.fetchImpl }),
125
+ parse: (payload) => parseNcbiPubmedSearchPayload(payload),
126
+ loadFixture: () => parseNcbiPubmedSearchPayload(readFixtureJson(NCBI_PUBMED_FIXTURE_FILENAME)),
127
+ };
128
+ //# sourceMappingURL=ncbiPubmedSearch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ncbiPubmedSearch.js","sourceRoot":"","sources":["../src/ncbiPubmedSearch.ts"],"names":[],"mappings":"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"}