diff --git a/apps/Backend/src/ai/internal-chat-workflow.ts b/apps/Backend/src/ai/internal-chat-workflow.ts index 1d854c6a..ca58b6f4 100644 --- a/apps/Backend/src/ai/internal-chat-workflow.ts +++ b/apps/Backend/src/ai/internal-chat-workflow.ts @@ -87,6 +87,7 @@ export function siteKeyToAutoCheck(siteKey: string, dob?: string | Date | null): case "TUFTS_SCO": return "tufts-sco"; case "UNITED_SCO": return "united-sco"; case "UNITED_UCARD": return "united-ucard"; + case "BCBS_MA": return "bcbs-ma"; default: { // MassHealth: patients under 21 use the CMSP button if (dob) { diff --git a/apps/Frontend/src/components/layout/chatbot.tsx b/apps/Frontend/src/components/layout/chatbot.tsx index 73bc8441..d863d0e7 100644 --- a/apps/Frontend/src/components/layout/chatbot.tsx +++ b/apps/Frontend/src/components/layout/chatbot.tsx @@ -141,6 +141,7 @@ const INSURANCE_TYPE_OPTIONS: { value: string; label: string }[] = [ { value: "united-ucard", label: "United Ucard" }, { value: "tufts-sco", label: "Tufts SCO" }, { value: "cca", label: "CCA" }, + { value: "bcbs-ma", label: "BCBS MA" }, ]; function getAutoCheck(_dobISO: string): "mh" { diff --git a/apps/Frontend/src/pages/insurance-status-page.tsx b/apps/Frontend/src/pages/insurance-status-page.tsx old mode 100755 new mode 100644 index dac28933..6642133e --- a/apps/Frontend/src/pages/insurance-status-page.tsx +++ b/apps/Frontend/src/pages/insurance-status-page.tsx @@ -174,7 +174,7 @@ export default function InsuranceStatusPage() { const [cmspAccumulatorPdfId, setCmspAccumulatorPdfId] = useState(null); const [cmspAccumulatorFilename, setCmspAccumulatorFilename] = useState(null); - const pendingAutoCheck = useRef<"mh" | "mh-history" | "cmsp" | "ddma" | "delta-ins" | "united-sco" | "united-ucard" | "tufts-sco" | "cca" | null>(null); + const pendingAutoCheck = useRef<"mh" | "mh-history" | "cmsp" | "ddma" | "delta-ins" | "united-sco" | "united-ucard" | "tufts-sco" | "cca" | "bcbs-ma" | null>(null); const [triggerTarget, setTriggerTarget] = useState(null); const pendingScrollTo = useRef(null); const [prefillTick, setPrefillTick] = useState(0); @@ -915,7 +915,7 @@ export default function InsuranceStatusPage() { const autoCheck = params.get("autoCheck") as typeof pendingAutoCheck.current; const scrollTo = params.get("scrollTo"); - const knownAutoChecks = ["mh", "mh-history", "cmsp", "ddma", "delta-ins", "united-sco", "united-ucard", "tufts-sco", "cca"] as const; + const knownAutoChecks = ["mh", "mh-history", "cmsp", "ddma", "delta-ins", "united-sco", "united-ucard", "tufts-sco", "cca", "bcbs-ma"] as const; if (autoCheck && (knownAutoChecks as readonly string[]).includes(autoCheck)) { pendingAutoCheck.current = autoCheck; } else if (scrollTo) { @@ -1120,6 +1120,8 @@ export default function InsuranceStatusPage() { firstName={firstName} lastName={lastName} isFormIncomplete={isFormIncomplete} + autoTrigger={triggerTarget === "bcbs-ma"} + onAutoTriggered={() => setTriggerTarget(null)} onPdfReady={async (pdfId, fallbackFilename) => { await queryClient.invalidateQueries({ queryKey: QK_PATIENTS_BASE }); void tryAppointmentFromChatbot();