// 발행 어댑터 라우터 — 환경변수 EINVOICE_PROVIDER 로 선택
//   manual = 자체 거래명세서 (기본)
//   nts    = 국세청 e-세로 직접 연동
//   popbill = (향후 추가)
import type { InvoiceProvider } from "./types";
import { manualProvider } from "./adapters/manual";
import { ntsEseroProvider } from "./adapters/nts-esero";

const PROVIDER_KEY = (process.env.EINVOICE_PROVIDER || "manual").toLowerCase();

export function getProvider(): InvoiceProvider {
  switch (PROVIDER_KEY) {
    case "nts":
    case "esero":
      return ntsEseroProvider;
    case "manual":
    default:
      return manualProvider;
  }
}

export const PROVIDER_NAME = PROVIDER_KEY;
export * from "./types";
