SPB Git forge

spb/rareindex

Public
54commits 1branches 0releases
7.1 MBsize
maindefault branch
10 days agolast push
TypeScript 61.9% HTML 37.2% SQL 0.7%
1.4 KB · 29 lines typescript
Raw Blame History
1/**2 * Capture/smoke helper for the g6 connectors: load connectors/domains.json plus ONLY this group's3 * domains.d fragment through `setDomains()`. Parallel contributors may leave a temporarily invalid4 * fragment in domains.d; this keeps our live captures runnable without touching their files.5 * (Production uses the normal loader, which validates every fragment.)6 */7import { readFileSync } from 'node:fs';8import path from 'node:path';9import { fileURLToPath } from 'node:url';10import { setDomains } from '@rareindex/connectors';1112const here = path.dirname(fileURLToPath(import.meta.url));13const root = path.resolve(here, '../../..');1415export function useGroupDomains(): void {16  const base = JSON.parse(readFileSync(path.join(root, 'connectors/domains.json'), 'utf8')) as { version?: string; defaults?: Record<string, unknown>; domains?: Record<string, unknown> };17  const frag = JSON.parse(readFileSync(path.join(root, 'connectors/domains.d/g6-comics-toys-games.json'), 'utf8')) as { domains?: Record<string, unknown> };18  setDomains({ version: base.version ?? '1.0', defaults: (base.defaults ?? {}) as never, domains: { ...(base.domains ?? {}), ...(frag.domains ?? {}) } as never });19}2021/** Loads repo-root .env (FIRECRAWL_API_KEY / SCRAPFLY_API_KEY) when present. */22export function loadEnv(): void {23  try {24    process.loadEnvFile?.(path.join(root, '.env'));25  } catch {26    /* no .env — fine for api-only connectors */27  }28}29