// Auteur : Simon-Pierre Boucher — contact@spboucher.ai /** Registre des connecteurs et fréquences de synchronisation. */ import { apchqConnector } from "./apchq"; import { ccqConnector } from "./ccq"; import { statcanConnector } from "./statcan"; import { bmrAdapter, canacAdapter, homeDepotAdapter, makeRetailConnector, patrickMorinAdapter, ronaAdapter } from "./retail"; import type { ConnectorKey, CostConnector } from "./types"; export const CONNECTORS: Record, CostConnector> = { apchq: apchqConnector, ccq: ccqConnector, statcan: statcanConnector, canac: makeRetailConnector(canacAdapter), bmr: makeRetailConnector(bmrAdapter), patrickmorin: makeRetailConnector(patrickMorinAdapter), rona: makeRetailConnector(ronaAdapter), homedepot: makeRetailConnector(homeDepotAdapter), }; export type RunnableKey = keyof typeof CONNECTORS; export const RUNNABLE_KEYS = Object.keys(CONNECTORS) as RunnableKey[]; /** Import manuel seulement (aucun run automatique). */ export const IMPORT_ONLY: ConnectorKey[] = ["altus", "rsmeans"]; export function isRunnable(k: string): k is RunnableKey { return k in CONNECTORS; }