{"version":3,"file":"ImageAltInjector.DWay8ray.mjs","names":[],"sources":["https:/framerusercontent.com/modules/ms8TyzMB6Z83wNYK9xTq/jZFNyHm1qQ8fcO1LKXI1/ImageAltInjector.js"],"sourcesContent":["// Sitewide Image Alt Text Injector\n// Scans the page for background-image elements and adds role=\"img\" + aria-label\n// Uses a built-in lookup table keyed by page path for easy maintenance\n// Drop this component on any page — it auto-detects the current path\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";// ============================================================\n// IMAGE ALT TEXT MAPPINGS — Edit this table to add/update pages\n// Keys are page paths, values are arrays of {url, alt} pairs\n// \"url\" is a unique fragment of the framerusercontent image URL\n// ============================================================\nconst PAGE_MAPPINGS={\"/\":[// Hero\n{url:\"iYiRiIyvKSps\",alt:\"Milemarker unified data platform hero — connecting wealth management systems into one dashboard\"},{url:\"uUR4f9xj7evG\",alt:\"Milemarker console showing real-time data aggregation across custodians and CRMs\"},// Product screenshots\n{url:\"BOWbXj15loxc\",alt:\"Milemarker Data Engine product screenshot showing automated data pipelines and integrations\"},{url:\"3fcBeU6ueHdk\",alt:\"Milemarker platform architecture diagram showing data flow from 130+ integrations\"},{url:\"Uel2fuvgMFfc\",alt:\"Milemarker workflow automation builder for wealth management operations\"},// Client logos\n{url:\"uPmO4OcoLJG3\",alt:\"Foundation Partners Group logo — Milemarker client\"},{url:\"rQMoBRgUacHh\",alt:\"Journey Strategic Wealth logo — Milemarker client\"},{url:\"zpTKTmXHC95W\",alt:\"Mutual of Omaha logo — Milemarker client\"},{url:\"La7gOKHDDGbr\",alt:\"Larson Financial Group logo — Milemarker client\"},{url:\"br9DRpMy87Ce\",alt:\"RFG Advisory logo — Milemarker client\"},{url:\"QZF6fpu6v0JB\",alt:\"SignatureFD logo — Milemarker client\"},{url:\"GcMRkt1KWyKU\",alt:\"Taiko logo — Milemarker client\"},{url:\"AMQh5PeIAcaw\",alt:\"Verdence Capital Advisors logo — Milemarker client\"}],\"/about\":[{url:\"yVwPwUyqnUtd\",alt:\"Milemarker about page hero — wealth management data infrastructure team\"},{url:\"NYMIirGajJAB\",alt:\"Milemarker team collaborating on wealth management technology\"},{url:\"ZQkPoGgMZJtP\",alt:\"Milemarker founding story — built by operators from inside the wealth management industry\"},{url:\"ej5cNww3jCRr\",alt:\"Milemarker team across Atlanta, Charleston, Cincinnati, Denver, Omaha, and Portland\"},// Client logos (same as homepage)\n{url:\"uPmO4OcoLJG3\",alt:\"Foundation Partners Group logo — Milemarker client\"},{url:\"rQMoBRgUacHh\",alt:\"Journey Strategic Wealth logo — Milemarker client\"},{url:\"zpTKTmXHC95W\",alt:\"Mutual of Omaha logo — Milemarker client\"},{url:\"La7gOKHDDGbr\",alt:\"Larson Financial Group logo — Milemarker client\"},{url:\"br9DRpMy87Ce\",alt:\"RFG Advisory logo — Milemarker client\"},{url:\"QZF6fpu6v0JB\",alt:\"SignatureFD logo — Milemarker client\"},{url:\"GcMRkt1KWyKU\",alt:\"Taiko logo — Milemarker client\"},{url:\"AMQh5PeIAcaw\",alt:\"Verdence Capital Advisors logo — Milemarker client\"}],\"/navigator\":[// Hero\n{url:\"iYiRiIyvKSps\",alt:\"Milemarker Navigator — AI that runs across all your wealth management data\"},{url:\"99BNxgy1wtwT\",alt:\"Milemarker Navigator AI interface showing natural language queries across CRM, custodian, and portfolio data\"},// Product screenshots\n{url:\"BOWbXj15loxc\",alt:\"Navigator connected to the Milemarker Data Engine — AI powered by 130+ integrated systems\"},{url:\"Nof4TuDNQ34y\",alt:\"Milemarker Navigator dashboard showing AI-generated insights across all firm data\"},{url:\"P3FsGTsqp9hX\",alt:\"Milemarker Navigator CTA — connect all your data to world-class AI\"}],\"/milemarker-data-engine\":[{url:\"iYiRiIyvKSps\",alt:\"Milemarker Data Engine — secure Snowflake-powered data warehouse for wealth management\"}],\"/milemarker-integrations\":[{url:\"iYiRiIyvKSps\",alt:\"Milemarker integrations — connect 130+ wealth management platforms including CRMs, custodians, and portfolio systems\"}],\"/pricing\":[{url:\"iYiRiIyvKSps\",alt:\"Milemarker pricing — wealth management data platform plans for RIAs, broker-dealers, TAMPs, and aggregators\"}]};// Global mappings applied on every page (logos, icons, etc. used in shared components)\nconst GLOBAL_MAPPINGS=[{url:\"lB2iPVFMgbPZ\",alt:\"Milemarker logo\"},{url:\"cRQADyg4Pwkt\",alt:\"Milemarker platform security — SOC 2 certified data infrastructure\"}];/**\n * Image Alt Injector\n * Adds role=\"img\" and aria-label to background-image elements for SEO and accessibility.\n * Auto-detects page path and applies the correct mappings from the built-in lookup table.\n * Edit PAGE_MAPPINGS in the source code to add or update alt text for any page.\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function ImageAltInjector(props){const{enabled=true}=props;if(RenderTarget.current()===RenderTarget.canvas){const path=typeof window!==\"undefined\"?window.location.pathname:\"/\";const count=(PAGE_MAPPINGS[path]?.length||0)+GLOBAL_MAPPINGS.length;return /*#__PURE__*/_jsx(\"div\",{style:{width:200,height:40,backgroundColor:enabled?\"rgba(34, 197, 94, 0.1)\":\"rgba(200, 200, 200, 0.1)\",border:`1px dashed ${enabled?\"rgb(34, 197, 94)\":\"rgb(200, 200, 200)\"}`,borderRadius:8,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",fontSize:11,color:enabled?\"rgb(34, 197, 94)\":\"rgb(150, 150, 150)\",fontFamily:\"system-ui, sans-serif\"},children:enabled?`Alt Injector (${count} mappings)`:\"Alt Injector (off)\"});}useEffect(()=>{if(!enabled)return;const injectAlts=()=>{const path=window.location.pathname;const pageMappings=PAGE_MAPPINGS[path]||[];const allMappings=[...pageMappings,...GLOBAL_MAPPINGS];if(!allMappings.length)return;let injected=0;const candidates=new Set;// Scan for elements with background images\ndocument.querySelectorAll(\"div, section, figure, span, a\").forEach(el=>{const htmlEl=el;const bg=window.getComputedStyle(htmlEl).backgroundImage;if(bg&&bg!==\"none\"&&bg.includes(\"url(\")){candidates.add(htmlEl);}});candidates.forEach(htmlEl=>{if(htmlEl.getAttribute(\"role\")===\"img\")return;const bg=window.getComputedStyle(htmlEl).backgroundImage;for(const mapping of allMappings){if(mapping.url&&bg.includes(mapping.url)){htmlEl.setAttribute(\"role\",\"img\");htmlEl.setAttribute(\"aria-label\",mapping.alt);injected++;return;}}});};// Run after page fully renders\nconst timer=setTimeout(injectAlts,500);return()=>clearTimeout(timer);},[enabled]);return null;}addPropertyControls(ImageAltInjector,{enabled:{type:ControlType.Boolean,title:\"Enabled\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ImageAltInjector\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ImageAltInjector.map"],"mappings":"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"}