{"version":3,"file":"StateSelect_3.BUQKhH3F.mjs","names":["useRef","useState","useState","useCallback"],"sources":["https:/framerusercontent.com/modules/sSsCNXxjBrOs2FM7Qu4i/hWs6Im7pBLLTnpOtwRiL/CoverageTracking.js","https:/framerusercontent.com/modules/NGKhzTVlBhEDxm3zWpzY/GbABHPgWsvnoQmfLpy5K/InsuranceCarrierSelect_1.js","https:/framerusercontent.com/modules/BsbiL8wdweFlsZha7N5P/pkQUgCKKYfYooMy1kgjv/StateSelect_3.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{forwardRef,useEffect,useRef}from\"react\";/**\n * withCoverageTracking — sends a Mixpanel event with the visitor's chosen state and\n * insurance carrier when they press \"Check my coverage\" in the homepage\n * Insurance Coverage Form.\n *\n * Apply to the \"Check my coverage\" button INSTANCE (Button UTM, node Z6SbldDiB), not to\n * the component itself. The component's own withUTMRedirect override keeps handling the\n * navigation; this override only listens.\n *\n * Values come from the select fields' own change events rather than from reading the\n * page: StateSelect and InsuranceCarrierSelect render native <select> elements named\n * \"state\" and \"insurance-carrier\", and StateSelect also publishes its value on\n * window.__mochiCoverageState.\n *\n * Only state and carrier are sent. Do not add anything that identifies the visitor.\n */const EVENT_NAME=\"Coverage Check Clicked\";const STATE_FIELD=\"state\";const CARRIER_FIELD=\"insurance-carrier\";const FIRST_NAME_FIELD=\"first-name\";const LAST_NAME_FIELD=\"last-name\";const picks={};function rememberPick(e){const el=e.target;if(!(el instanceof HTMLSelectElement))return;if(el.name!==STATE_FIELD&&el.name!==CARRIER_FIELD)return;const option=el.selectedOptions?.[0];picks[el.name]=el.value?{value:el.value,label:(option?.textContent||el.value).trim()}:undefined;}function currentState(){if(picks[STATE_FIELD])return picks[STATE_FIELD];const v=typeof window!==\"undefined\"?window.__mochiCoverageState:undefined;return typeof v===\"string\"&&v?{value:v,label:v}:undefined;}// allowPartial: the eligibility link lets visitors continue without both picks, so\n// it tracks every click; the homepage tracker still only counts complete checks.\n// Names are never sent, only whether they were filled in.\nfunction trackCoverageCheck(allowPartial=false,nameFlags){if(typeof window===\"undefined\")return;const state=currentState();const carrier=picks[CARRIER_FIELD];if(!allowPartial&&(!state||!carrier))return;const mixpanel=window.mixpanel;if(!mixpanel||typeof mixpanel.track!==\"function\")return;try{mixpanel.track(EVENT_NAME,{state:state?.value,state_name:state?.label,insurance_carrier:carrier?.value,insurance_carrier_name:carrier?.label,has_state:Boolean(state),has_carrier:Boolean(carrier),...nameFlags&&{has_first_name:nameFlags.hasFirstName,has_last_name:nameFlags.hasLastName},page_path:window.location.pathname},// The click navigates away immediately, so send via beacon so the\n// event survives the page unload.\n{transport:\"sendBeacon\",send_immediately:true});}catch(_error){// Tracking must never break the button.\n}}export function withCoverageTracking(Component){return /*#__PURE__*/forwardRef((props,ref)=>{useEffect(()=>{if(typeof document===\"undefined\")return;document.addEventListener(\"change\",rememberPick,true);return()=>document.removeEventListener(\"change\",rememberPick,true);},[]);// Framer does not forward a ref from a design-component instance to its\n// DOM node, so a native listener attached via ref never binds. Catch the\n// click with a layout-neutral wrapper instead: onClickCapture runs in the\n// capture phase, before withUTMRedirect's click handler starts navigating.\nreturn /*#__PURE__*/_jsx(\"div\",{style:{display:\"contents\"},onClickCapture:()=>trackCoverageCheck(),children:/*#__PURE__*/_jsx(Component,{ref:ref,...props})});});}/**\n * withCoverageEligibilityLink — fills the visitor's form answers into the\n * \"Check my coverage\" link, e.g.\n * https://app.joinmochi.com/eligibility?funnel=cwm_insurance&carrier={input}&state={input}\n * becomes ...&carrier=aetna&state=CA&first_name=Jane&last_name=Doe. Also sends the same\n * Mixpanel event as withCoverageTracking, since an instance can only have one override.\n *\n * Every field is optional. Whatever the visitor filled in is added and the rest of the\n * params are dropped, so the eligibility funnel prefills just those answers. With nothing\n * filled in the link is the bare funnel URL (...?funnel=cwm_insurance).\n *\n * Fields are read from the button's own form (the nearest ancestor holding a state\n * field), so a page with several coverage forms keeps each one separate.\n *\n * Apply to the \"Check my coverage\" button INSTANCE on /lp/covered-with-mochi. The\n * button's own withUTMRedirect still adds the UTMs to the link; this override takes\n * over the click so the visitor never lands on the unfilled {input} link.\n *\n * The carrier param is the InsuranceCarrierSelect option value (e.g. \"united_healthcare\",\n * \"aetna\", \"other\"); the state param is the two-letter code; first_name / last_name come\n * from NameInput fields when the form has them.\n */const CARRIER_PARAM=\"carrier\";const STATE_PARAM=\"state\";const FIRST_NAME_PARAM=\"first_name\";const LAST_NAME_PARAM=\"last_name\";const fieldSelector=name=>`input[name=\"${name}\"], select[name=\"${name}\"]`;// The nearest ancestor of the button that holds a state field, i.e. its form.\nfunction findFormScope(from){if(typeof document===\"undefined\")return null;let node=from?.parentElement??null;while(node){if(node.querySelector(fieldSelector(STATE_FIELD)))return node;node=node.parentElement;}return document;}function findField(scope,name){return scope?.querySelector(fieldSelector(name))??null;}// Read the live field so back-button restores and autofill (which skip change events)\n// are picked up. The remembered page-wide picks are only a fallback when this form has\n// no such field, so an empty field never borrows another form's answer.\nfunction fieldValue(scope,name){const field=findField(scope,name);if(field)return field.value.trim()||undefined;if(name===STATE_FIELD)return currentState()?.value;return picks[name]?.value;}function setOrDeleteParam(url,param,value){if(value)url.searchParams.set(param,value);else url.searchParams.delete(param);}function fillEligibilityHref(scope,href){try{const url=new URL(href,window.location.href);setOrDeleteParam(url,CARRIER_PARAM,fieldValue(scope,CARRIER_FIELD));setOrDeleteParam(url,STATE_PARAM,fieldValue(scope,STATE_FIELD));setOrDeleteParam(url,FIRST_NAME_PARAM,fieldValue(scope,FIRST_NAME_FIELD));setOrDeleteParam(url,LAST_NAME_PARAM,fieldValue(scope,LAST_NAME_FIELD));return url.toString();}catch(_error){return undefined;}}export function withCoverageEligibilityLink(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const wrapperRef=useRef(null);// Keep the DOM href filled so open-in-new-tab and copy-link carry the answers\n// too. Text inputs only fire \"change\" on blur, so also listen to \"input\".\nuseEffect(()=>{if(typeof document===\"undefined\")return;const onFieldEvent=e=>{rememberPick(e);const anchor=wrapperRef.current?.querySelector(\"a\");if(!anchor)return;const filled=fillEligibilityHref(findFormScope(wrapperRef.current),anchor.href);if(filled)anchor.setAttribute(\"href\",filled);};document.addEventListener(\"change\",onFieldEvent,true);document.addEventListener(\"input\",onFieldEvent,true);return()=>{document.removeEventListener(\"change\",onFieldEvent,true);document.removeEventListener(\"input\",onFieldEvent,true);};},[]);// Capture phase, so this runs before withUTMRedirect's click handler, which\n// would otherwise navigate to the link it built from the unfilled template.\nconst onClickCapture=e=>{const anchor=wrapperRef.current?.querySelector(\"a\");if(!anchor)return;const scope=findFormScope(wrapperRef.current);const filled=fillEligibilityHref(scope,anchor.href);if(!filled)return;e.stopPropagation();trackCoverageCheck(true,{hasFirstName:Boolean(fieldValue(scope,FIRST_NAME_FIELD)),hasLastName:Boolean(fieldValue(scope,LAST_NAME_FIELD))});anchor.setAttribute(\"href\",filled);const isModifiedClick=e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey;// Modified clicks keep the browser default (new tab) with the filled href.\nif(isModifiedClick)return;e.preventDefault();window.location.href=filled;};return /*#__PURE__*/_jsx(\"div\",{ref:wrapperRef,style:{display:\"contents\"},onClickCapture:onClickCapture,children:/*#__PURE__*/_jsx(Component,{ref:ref,...props})});});}\nexport const __FramerMetadata__ = {\"exports\":{\"withCoverageEligibilityLink\":{\"type\":\"reactHoc\",\"name\":\"withCoverageEligibilityLink\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withCoverageTracking\":{\"type\":\"reactHoc\",\"name\":\"withCoverageTracking\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CoverageTracking.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{startTransition,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";// Insurance carrier dropdown for the Insurance Coverage Form. Every state shows the\n// same carrier list, so this component no longer listens to the selected state.\n//\n// Renders a native <select name=\"insurance-carrier\"> so the CoverageTracking overrides\n// can read the pick from its change event. Option values are the `carrier` URL param\n// sent to the eligibility flow, so keep them stable.\nconst INSURANCE_CARRIERS=[{value:\"united_healthcare\",label:\"United Healthcare\"},{value:\"aetna\",label:\"Aetna\"},{value:\"anthem\",label:\"Anthem\"},{value:\"bcbs\",label:\"Blue Cross Blue Shield Companies\"},{value:\"cigna\",label:\"Cigna\"},{value:\"regence\",label:\"Regence\"},{value:\"highmark\",label:\"Highmark\"},{value:\"other\",label:\"My insurance isn't listed\"},{value:\"self_pay\",label:\"I want to pay myself\"}];/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight fixed\n */export default function InsuranceCarrierSelect(props){const{style,background,textColor,borderRadius,font,placeholder}=props;const[value,setValue]=useState(\"\");return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:\"100%\",height:\"100%\",boxSizing:\"border-box\",...style},children:[/*#__PURE__*/_jsxs(\"select\",{name:\"insurance-carrier\",value:value,onChange:e=>{const nextValue=e.target.value;startTransition(()=>setValue(nextValue));},\"aria-label\":\"Insurance carrier\",style:{width:\"100%\",height:\"100%\",backgroundColor:background,color:value?textColor:\"rgba(38, 38, 38, 0.55)\",border:\"none\",borderRadius,paddingLeft:16,paddingRight:40,paddingTop:0,paddingBottom:0,lineHeight:\"normal\",margin:0,outline:\"none\",boxSizing:\"border-box\",display:\"block\",...font,appearance:\"none\",WebkitAppearance:\"none\",MozAppearance:\"none\",cursor:\"pointer\"},children:[/*#__PURE__*/_jsx(\"option\",{value:\"\",disabled:true,children:placeholder}),INSURANCE_CARRIERS.map(carrier=>/*#__PURE__*/_jsx(\"option\",{value:carrier.value,style:{color:textColor},children:carrier.label},carrier.value))]}),/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":\"true\",style:{position:\"absolute\",right:16,top:\"50%\",transform:\"translateY(-50%)\",width:12,height:7,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",pointerEvents:\"none\"},children:/*#__PURE__*/_jsx(\"svg\",{width:\"12\",height:\"7\",viewBox:\"0 0 12 7\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M1 1L6 6L11 1\",stroke:textColor,strokeWidth:\"1.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})})})]});}addPropertyControls(InsuranceCarrierSelect,{background:{type:ControlType.Color,title:\"Background\",defaultValue:\"#FFFFFF\"},textColor:{type:ControlType.Color,title:\"Text\",defaultValue:\"#262626\"},borderRadius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"10px\"},font:{type:ControlType.Font,title:\"Font\",defaultValue:{fontSize:\"16px\",variant:\"Regular\",letterSpacing:\"0em\",lineHeight:\"1.2em\",textAlign:\"left\"},controls:\"extended\",defaultFontType:\"sans-serif\"},placeholder:{type:ControlType.String,title:\"Placeholder\",defaultValue:\"Insurance carrier\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"InsuranceCarrierSelect\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./InsuranceCarrierSelect_1.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{startTransition,useCallback,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";const allStates=[{value:\"AL\",label:\"Alabama\"},{value:\"AK\",label:\"Alaska\"},{value:\"AZ\",label:\"Arizona\"},{value:\"AR\",label:\"Arkansas\"},{value:\"CA\",label:\"California\"},{value:\"CO\",label:\"Colorado\"},{value:\"CT\",label:\"Connecticut\"},{value:\"DE\",label:\"Delaware\"},{value:\"DC\",label:\"District of Columbia\"},{value:\"FL\",label:\"Florida\"},{value:\"GA\",label:\"Georgia\"},{value:\"HI\",label:\"Hawaii\"},{value:\"ID\",label:\"Idaho\"},{value:\"IL\",label:\"Illinois\"},{value:\"IN\",label:\"Indiana\"},{value:\"IA\",label:\"Iowa\"},{value:\"KS\",label:\"Kansas\"},{value:\"KY\",label:\"Kentucky\"},{value:\"LA\",label:\"Louisiana\"},{value:\"ME\",label:\"Maine\"},{value:\"MD\",label:\"Maryland\"},{value:\"MA\",label:\"Massachusetts\"},{value:\"MI\",label:\"Michigan\"},{value:\"MN\",label:\"Minnesota\"},{value:\"MS\",label:\"Mississippi\"},{value:\"MO\",label:\"Missouri\"},{value:\"MT\",label:\"Montana\"},{value:\"NE\",label:\"Nebraska\"},{value:\"NV\",label:\"Nevada\"},{value:\"NH\",label:\"New Hampshire\"},{value:\"NJ\",label:\"New Jersey\"},{value:\"NM\",label:\"New Mexico\"},{value:\"NY\",label:\"New York\"},{value:\"NC\",label:\"North Carolina\"},{value:\"ND\",label:\"North Dakota\"},{value:\"OH\",label:\"Ohio\"},{value:\"OK\",label:\"Oklahoma\"},{value:\"OR\",label:\"Oregon\"},{value:\"PA\",label:\"Pennsylvania\"},{value:\"RI\",label:\"Rhode Island\"},{value:\"SC\",label:\"South Carolina\"},{value:\"SD\",label:\"South Dakota\"},{value:\"TN\",label:\"Tennessee\"},{value:\"TX\",label:\"Texas\"},{value:\"UT\",label:\"Utah\"},{value:\"VT\",label:\"Vermont\"},{value:\"VA\",label:\"Virginia\"},{value:\"WA\",label:\"Washington\"},{value:\"WV\",label:\"West Virginia\"},{value:\"WI\",label:\"Wisconsin\"},{value:\"WY\",label:\"Wyoming\"}];// ---------------------------------------------------------------------------\n// Shared coverage-state channel.\n//\n// InsuranceCarrierSelect is a separate Framer module, so rather than import\n// across code files both sides agree on a window key + CustomEvent. Keep this\n// block in sync with the identical block in InsuranceCarrierSelect.tsx.\n// ---------------------------------------------------------------------------\nconst STATE_CHANNEL=\"mochi:coverage-state\";function writeCoverageState(next){if(typeof window===\"undefined\")return;window.__mochiCoverageState=next;window.dispatchEvent(new CustomEvent(STATE_CHANNEL,{detail:next}));}// ---------------------------------------------------------------------------\n/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight fixed\n */export default function StateSelect(props){const{style,background,textColor,borderRadius,font,placeholder}=props;const[hasSelection,setHasSelection]=useState(false);const stateOptions=allStates;const currentTextColor=hasSelection?textColor:\"rgba(38, 38, 38, 0.55)\";const handleChange=useCallback(event=>{const nextValue=event.target.value;startTransition(()=>setHasSelection(nextValue!==\"\"));writeCoverageState(nextValue);},[]);return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:\"100%\",height:\"100%\",boxSizing:\"border-box\",...style},children:[/*#__PURE__*/_jsxs(\"select\",{name:\"state\",defaultValue:\"\",onChange:handleChange,\"aria-label\":\"State\",style:{width:\"100%\",height:\"100%\",backgroundColor:background,color:currentTextColor,border:\"none\",borderRadius,paddingLeft:16,paddingRight:40,paddingTop:0,paddingBottom:0,margin:0,outline:\"none\",boxSizing:\"border-box\",fontFamily:\"Manrope, sans-serif\",fontSize:font.fontSize,lineHeight:\"normal\",letterSpacing:font.letterSpacing,fontWeight:font.fontWeight,fontStyle:font.fontStyle,textAlign:font.textAlign,display:\"block\",appearance:\"none\",WebkitAppearance:\"none\",MozAppearance:\"none\",cursor:\"pointer\"},children:[/*#__PURE__*/_jsx(\"option\",{value:\"\",disabled:true,children:placeholder}),stateOptions.map(state=>/*#__PURE__*/_jsx(\"option\",{value:state.value,children:state.label},state.value))]}),/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":\"true\",style:{position:\"absolute\",right:16,top:\"50%\",transform:\"translateY(-50%)\",width:12,height:7,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",pointerEvents:\"none\"},children:/*#__PURE__*/_jsx(\"svg\",{width:\"12\",height:\"7\",viewBox:\"0 0 12 7\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M1 1L6 6L11 1\",stroke:textColor,strokeWidth:\"1.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})})})]});}addPropertyControls(StateSelect,{background:{type:ControlType.Color,title:\"Background\",defaultValue:\"#FFFFFF\"},textColor:{type:ControlType.Color,title:\"Text\",defaultValue:\"#262626\"},borderRadius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"10px\"},font:{type:ControlType.Font,title:\"Font\",defaultValue:{fontSize:\"16px\",variant:\"Regular\",letterSpacing:\"0em\",lineHeight:\"1.2em\",textAlign:\"left\"},controls:\"extended\",defaultFontType:\"sans-serif\"},placeholder:{type:ControlType.String,title:\"Placeholder\",defaultValue:\"State\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"StateSelect\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./StateSelect_3.map"],"mappings":"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"}