{"version":3,"file":"ImageBlock.CAgLM0_a.mjs","names":["_Fragment","__esmMin","l","p","c","init_jsx_runtime","init_framer_B1b760uK","addPropertyControls","ImageBlock","props","hasOverlay","overlayTitle","overlayText","bottom","overlayAlign","centered","aspect","radius","style","src","alt","grayscale","HEAD_FONT","BODY_FONT","init_ImageBlock","ControlType"],"sources":["https:/framerusercontent.com/modules/v172cTg9SAu2o6pzfEiw/WWZH4gsIe2lh1PqYB74R/ImageBlock.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";const HEAD_FONT=\"'Montserrat', 'Helvetica Neue', sans-serif\";const BODY_FONT=\"'Archivo', 'Helvetica Neue', sans-serif\";/**\n * Plain image block with a URL string prop, and an optional text lockup\n * layered over the photo.\n *\n * Exists because Frame backgroundImage writes are unreliable through the MCP\n * and ResponsiveImage pickers are invisible to it. A string src prop is\n * writable by everything and editable by the client in one field.\n *\n * The overlay is built in here rather than as absolutely-positioned canvas\n * layers because the MCP cannot set position reliably on nodes it creates,\n * and because keeping the scrim with the image is what guarantees the text\n * stays readable when the client swaps the photo for a brighter one.\n *\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n * @framerIntrinsicWidth 400\n * @framerIntrinsicHeight 500\n */export default function ImageBlock(props){const{src,alt,radius,aspect,grayscale,overlayTitle,overlayText,overlayAlign=\"bottom-left\",style}=props;const hasOverlay=Boolean(overlayTitle||overlayText);const bottom=overlayAlign.indexOf(\"bottom\")===0;const centered=overlayAlign.indexOf(\"center\")>=0;return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:\"100%\",aspectRatio:aspect||undefined,borderRadius:radius,overflow:\"hidden\",background:\"#1f2933\",...style},children:[src?/*#__PURE__*/_jsx(\"img\",{src:src,alt:alt||\"\",loading:\"lazy\",decoding:\"async\",style:{width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\",filter:grayscale?\"grayscale(100%)\":\"none\"}}):null,hasOverlay?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":true,style:{position:\"absolute\",inset:0,background:bottom?\"linear-gradient(180deg, rgba(0,0,0,0.05) 35%, rgba(0,0,0,0.72))\":\"linear-gradient(180deg, rgba(0,0,0,0.45), rgba(0,0,0,0.25))\"}}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",inset:0,display:\"flex\",flexDirection:\"column\",justifyContent:bottom?\"flex-end\":\"center\",alignItems:centered?\"center\":\"flex-start\",textAlign:centered?\"center\":\"left\",gap:10,padding:\"clamp(20px, 4vw, 48px)\",color:\"#ffffff\",textShadow:\"0 2px 18px rgba(0,0,0,0.45)\"},children:[overlayTitle?/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:HEAD_FONT,fontWeight:700,fontSize:\"clamp(24px, 3.6vw, 44px)\",lineHeight:1.08,letterSpacing:\"-0.02em\",maxWidth:720},children:overlayTitle}):null,overlayText?/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:BODY_FONT,fontWeight:500,fontSize:\"clamp(14px, 1.7vw, 19px)\",lineHeight:1.35,maxWidth:640},children:overlayText}):null]})]}):null]});}addPropertyControls(ImageBlock,{src:{type:ControlType.String,title:\"Image URL\",defaultValue:\"\"},alt:{type:ControlType.String,title:\"Alt Text\",defaultValue:\"\"},radius:{type:ControlType.Number,title:\"Radius\",defaultValue:20,min:0,max:60},aspect:{type:ControlType.Number,title:\"Aspect (w/h)\",defaultValue:.8,min:.3,max:3,step:.05,description:\"0.8 = portrait, 1.78 = 16:9, 0 = fill parent height\"},grayscale:{type:ControlType.Boolean,title:\"Black & White\",defaultValue:false},overlayTitle:{type:ControlType.String,title:\"Overlay Title\",defaultValue:\"\",description:\"Leave empty for a plain photo\"},overlayText:{type:ControlType.String,title:\"Overlay Text\",defaultValue:\"\"},overlayAlign:{type:ControlType.Enum,title:\"Overlay At\",options:[\"bottom-left\",\"bottom-center\",\"center\"],optionTitles:[\"Bottom left\",\"Bottom center\",\"Center\"],defaultValue:\"bottom-left\",hidden:p=>!p.overlayTitle&&!p.overlayText}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ImageBlock\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any\",\"framerSupportedLayoutWidth\":\"any\",\"framerIntrinsicWidth\":\"400\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"500\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ImageBlock.map"],"mappings":"A,qKAiBG,SAAwBQ,EAAW,EAAM,CAAC,GAAK,CAAC,MAAI,MAAI,SAAO,SAAO,YAAU,eAAa,cAAY,eAAa,cAAc,SAAOC,EAAYC,EAAW,GAAQC,GAAcC,GAAmBC,EAAOC,EAAa,QAAQ,QAAQ,IAAI,EAAQC,EAASD,EAAa,QAAQ,QAAQ,GAAG,EAAE,MAAoB,gBAAM,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,MAAM,OAAO,YAAYE,GAAQ,IAAA,GAAU,aAAaC,EAAO,SAAS,SAAS,WAAW,UAAU,GAAGC,CAAK,EAAE,SAAS,CAACC,EAAiB,gBAAK,MAAM,CAAK,MAAI,IAAIC,GAAK,GAAG,QAAQ,OAAO,SAAS,QAAQ,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,UAAU,QAAQ,QAAQ,QAAQ,OAAOC,EAAU,kBAAkB,MAAM,CAAC,CAAC,EAAE,KAAKX,EAAwB,gBAAMV,EAAU,CAAC,SAAS,CAAc,gBAAK,MAAM,CAAC,cAAc,GAAK,MAAM,CAAC,SAAS,WAAW,MAAM,EAAE,WAAWa,EAAO,kEAAkE,6DAA6D,CAAC,CAAC,EAAe,gBAAM,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,MAAM,EAAE,QAAQ,OAAO,cAAc,SAAS,eAAeA,EAAO,WAAW,SAAS,WAAWE,EAAS,SAAS,aAAa,UAAUA,EAAS,SAAS,OAAO,IAAI,GAAG,QAAQ,yBAAyB,MAAM,UAAU,WAAW,6BAA6B,EAAE,SAAS,CAACJ,EAA0B,gBAAK,OAAO,CAAC,MAAM,CAAC,WAAWW,EAAU,WAAW,IAAI,SAAS,2BAA2B,WAAW,KAAK,cAAc,UAAU,SAAS,GAAG,EAAE,SAASX,CAAY,CAAC,EAAE,KAAKC,EAAyB,gBAAK,OAAO,CAAC,MAAM,CAAC,WAAWW,EAAU,WAAW,IAAI,SAAS,2BAA2B,WAAW,KAAK,SAAS,GAAG,EAAE,SAASX,CAAW,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAE,C,8CAjBhgD,EAAU,6CAAmD,EAAU,0CAiB07CL,EAAoBC,EAAW,CAAC,IAAI,CAAC,KAAKiB,EAAY,OAAO,MAAM,YAAY,aAAa,EAAE,EAAE,IAAI,CAAC,KAAKA,EAAY,OAAO,MAAM,WAAW,aAAa,EAAE,EAAE,OAAO,CAAC,KAAKA,EAAY,OAAO,MAAM,SAAS,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,CAAC,KAAKA,EAAY,OAAO,MAAM,eAAe,aAAa,GAAG,IAAI,GAAG,IAAI,EAAE,KAAK,IAAI,YAAY,qDAAqD,EAAE,UAAU,CAAC,KAAKA,EAAY,QAAQ,MAAM,gBAAgB,aAAa,EAAK,EAAE,aAAa,CAAC,KAAKA,EAAY,OAAO,MAAM,gBAAgB,aAAa,GAAG,YAAY,+BAA+B,EAAE,YAAY,CAAC,KAAKA,EAAY,OAAO,MAAM,eAAe,aAAa,EAAE,EAAE,aAAa,CAAC,KAAKA,EAAY,KAAK,MAAM,aAAa,QAAQ,CAAC,cAAc,gBAAgB,QAAQ,EAAE,aAAa,CAAC,cAAc,gBAAgB,QAAQ,EAAE,aAAa,cAAc,OAAO,GAAG,CAACtB,EAAE,cAAc,CAACA,EAAE,WAAW,CAAC,CAAC,C"}