spb/datacenterindex
Public
HTML 53.9%
TypeScript 44.5%
JavaScript 0.6%
SQL 0.5%
1import { listImplementations, listParsers, registerImplementation, registerParser } from "@dci/connectors";2import { newsArticleParser } from "./article-parser.js";3import { planningPdfParser } from "./planning-pdf-parser.js";4import { pressReleaseParser } from "./press-release-parser.js";5import { edgarFtsParser, edgarImplementation } from "./edgar.js";67export { OPERATORS, detectOperators, primaryOperator } from "./operators-lexicon.js";8export { CITIES, detectLocation } from "./locations-lexicon.js";9export { extractAnnouncement, qualifiesAsProject } from "./extract-project.js";1011/**12 * News / government / utility / filing connectors: parsers `news_article_v1`, `news_planning_pdf_v1`,13 * `news_press_release_v1`, `news_edgar_fts_v1` and the `news_edgar_fts` implementation. Idempotent.14 */15export function register(): void {16 const have = new Set(listParsers().map((p) => p.name));17 for (const p of [newsArticleParser, planningPdfParser, pressReleaseParser, edgarFtsParser]) if (!have.has(p.name)) registerParser(p);18 if (!listImplementations().includes("news_edgar_fts")) registerImplementation("news_edgar_fts", edgarImplementation);19}20