{"version":3,"file":"EXLABProjectImage.CNPPORPQ.mjs","names":["useState","useRef","__esmMin","init_npm_react_18_3_1","init_npm_react_dom_18_3_1","_e","p","ce","de","addPropertyControls","init_framer_CaDWdxiz","useLocaleInfo","ControlType","EXLABProjectImage","photo","image","fallbackImageUrl","photoNote","fullGmCover","eager","expandable","english","activeLocale","open","setOpen","dialog","trigger","spaceType","cleanBrandPrefix","result","value","brand","client","prefix","suppliedAlt","cleanTitle","title","fabricationOnly","scopeLabel","base","brandPrefix","alt","cardAlt","element","close","picture","fit","position","style","event","init_EXLABProjectImage","init_jsx_runtime"],"sources":["https:/framerusercontent.com/modules/0RLJZtGb5weVQpeXIoiA/zJmF9uHfZbapBjHTNjQ1/EXLABProjectImage.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useRef,useState}from\"react\";import{createPortal}from\"react-dom\";import{addPropertyControls,ControlType,useLocaleInfo}from\"framer\";/**\r\n * @framerSupportedLayoutWidth any-prefer-fixed\r\n * @framerSupportedLayoutHeight any-prefer-fixed\r\n * @framerIntrinsicWidth 600\r\n * @framerIntrinsicHeight 400\r\n */export default function EXLABProjectImage({cardAlt=false,client=\"\",image,fallbackImageUrl=\"\",fit=\"cover\",title=\"\",spaceType=\"\",position=\"center\",sizes=\"(max-width: 809px) 100vw, 50vw\",eager=false,expandable=false,style}){const photo=typeof image===\"string\"?{src:image,srcSet:undefined,alt:undefined}:image?{...image,src:image.src||image.url}:fallbackImageUrl?{src:fallbackImageUrl,srcSet:undefined,alt:undefined}:undefined;const photoNotes={\"EYzYstaeY643cK4IwgE3yWpjxA.webp\":{ko:\"상부의 대형 브랜드 사인과 하부의 제품 전시를 한 화면에서 읽을 수 있도록 구성한 AWE 전시 공간입니다. 사인 아래에 이어지는 가전\\xb7IT 제품의 배치와 전시 높이를 함께 살펴보세요.\",en:\"The AWE space combines a large overhead brand sign with product displays below. Notice how appliance and IT displays sit beneath the sign at different presentation heights.\"},\"1ZAWrJIoMOKTZBdr8xHteMsjoA.png\":{ko:\"게임 속 농장 지도를 대형 전시 보드로 옮기고, 앞쪽 테이블과 캐릭터 등신대를 함께 배치한 트릭컬 부산 현장입니다. 평면 그래픽\\xb7입체 캐릭터\\xb7참여 공간을 연결한 구성을 확인할 수 있습니다.\",en:\"At Trickcal Busan, a large farm-map display is paired with a front table and character standees, bringing flat graphics, character cutouts and a participation area together.\"},\"LUR4SA3zUFIDuS33LJhMCloVMs.png\":{ko:\"나무 조형물과 바오패밀리 캐릭터, 대나무와 구형 조명을 함께 연출한 실내 체험 공간입니다. 방문자가 촬영할 수 있는 캐릭터 장면과 주변 브랜드 체험 요소가 한 공간에 배치되어 있습니다.\",en:\"Tree sculptures, Bao Family characters, bamboo and globe lighting form an indoor experience setting. Character scenes for photographs sit alongside the surrounding brand-experience elements.\"}};const photoNote=photoNotes[(photo?.src||\"\").split(\"?\")[0].split(\"/\").pop()||\"\"];const fullGmCover=eager&&!expandable&&Boolean(photo?.src?.includes(\"zDoIYEhiSi75wg1RvLuvNJClaZ8\"));const{activeLocale}=useLocaleInfo();const english=activeLocale?.code?.toLowerCase().startsWith(\"en\");const[open,setOpen]=useState(false);const dialog=useRef(null);const trigger=useRef(null);const englishTypes={\"전시 부스\":\"exhibition booth\",\"브랜드 체험 공간\":\"brand experience space\",팝업스토어:\"pop-up space\",\"팬 페스티벌\":\"fan festival\",\"미디어 쇼케이스\":\"media showcase\"};const localType=english?englishTypes[spaceType]||spaceType:spaceType;const cleanBrandPrefix=value=>{let result=value.trim();const brand=client.trim();if(!brand)return result;const prefix=brand+\" \";while(result.toLowerCase().startsWith((prefix+brand).toLowerCase()))result=result.slice(prefix.length).trim();return result;};const suppliedAlt=cleanBrandPrefix(photo?.alt||\"\");const cleanTitle=cleanBrandPrefix(title);const fabricationOnly=/AWE|MEGAZOO|메가주|몽.?하우스|HealingMe|Healing Me/i.test(cleanTitle+\" \"+suppliedAlt);const scopeLabel=fabricationOnly?english?\"fabrication & installation\":\"제작\\xb7시공\":english?\"design, engineering & installation\":\"디자인\\xb7설계\\xb7시공\";const base=cleanTitle||suppliedAlt;const brand=client.trim();const brandPrefix=brand&&base.toLowerCase().startsWith(brand.toLowerCase())?\"\":brand;const alt=cleanBrandPrefix(cardAlt&&cleanTitle?`${cleanTitle} ${scopeLabel}`:suppliedAlt.includes(\" - EXLAB\")||suppliedAlt.includes(\" - 익스랩 EXLAB\")?suppliedAlt:[brandPrefix,base,fabricationOnly?english?\"fabrication and installation - EXLAB\":\"제작 및 시공 - 익스랩 EXLAB\":english?\"spatial design, engineering and installation - EXLAB\":\"공간 디자인\\xb7설계\\xb7시공 - 익스랩 EXLAB\"].filter(Boolean).join(\" \"));useEffect(()=>{if(!open)return;const element=dialog.current;if(element&&!element.open)element.showModal();return()=>{if(element?.open)element.close();};},[open]);const close=()=>{setOpen(false);trigger.current?.focus();};const picture=/*#__PURE__*/_jsx(\"img\",{src:photo?.src,srcSet:photo?.srcSet,sizes:sizes,alt:alt,loading:eager?\"eager\":\"lazy\",decoding:\"async\",draggable:false,style:{display:\"block\",width:\"100%\",height:\"100%\",objectFit:fit,objectPosition:position,borderRadius:\"inherit\"}});return /*#__PURE__*/_jsxs(\"div\",{\"data-exlab-full-cover\":fullGmCover?\"gm\":undefined,style:{...style,position:\"relative\",width:\"100%\",height:\"100%\",overflow:\"hidden\",borderRadius:\"inherit\"},children:[fullGmCover&&/*#__PURE__*/_jsx(\"style\",{children:`[data-framer-name=\"Hero\"]:has([data-exlab-full-cover=\"gm\"]){height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:16/9!important;}`}),expandable?/*#__PURE__*/_jsxs(\"button\",{ref:trigger,type:\"button\",\"aria-haspopup\":\"dialog\",\"aria-label\":(english?\"Enlarge photo: \":\"사진 확대: \")+alt,onClick:()=>setOpen(true),style:{display:\"block\",width:\"100%\",height:\"100%\",padding:0,border:0,background:\"none\",borderRadius:\"inherit\",cursor:\"zoom-in\"},children:[picture,photoNote&&/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",top:12,right:12,padding:\"6px 10px\",background:\"rgba(0,0,0,.75)\",color:\"#fff\",fontSize:12,fontFamily:\"Pretendard, sans-serif\",borderRadius:4,pointerEvents:\"none\"},children:fabricationOnly?english?\"Project notes ↗\":\"현장 포인트 ↗\":english?\"Design notes ↗\":\"설계 포인트 ↗\"})]}):picture,open&&typeof document!==\"undefined\"&&/*#__PURE__*/createPortal(/*#__PURE__*/_jsxs(\"dialog\",{ref:dialog,\"aria-label\":(english?\"Project photo: \":\"프로젝트 사진: \")+title,onKeyDownCapture:event=>{if(event.key===\"Escape\"){event.preventDefault();event.stopPropagation();close();}},onCancel:event=>{event.preventDefault();close();},onClose:()=>setOpen(false),onClick:event=>{if(event.target===event.currentTarget)close();},style:{position:\"fixed\",inset:0,width:\"100vw\",height:\"100dvh\",maxWidth:\"none\",maxHeight:\"none\",margin:0,padding:0,border:0,background:\"rgba(0,0,0,.96)\",color:\"#fff\",overflow:\"hidden\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",width:\"100%\",height:\"100%\",boxSizing:\"border-box\",padding:\"72px 24px 60px\"},onClick:event=>{if(event.target===event.currentTarget)close();},children:/*#__PURE__*/_jsx(\"img\",{src:photo?.src,srcSet:photo?.srcSet,sizes:\"100vw\",alt:alt,style:{display:\"block\",maxWidth:\"100%\",maxHeight:\"100%\",objectFit:\"contain\"}})}),/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:close,autoFocus:true,\"aria-label\":english?\"Close photo\":\"사진 닫기\",style:{position:\"absolute\",top:16,right:16,width:44,height:44,border:\"1px solid #777\",borderRadius:22,background:\"#151515\",color:\"#fff\",fontSize:28,lineHeight:\"40px\",cursor:\"pointer\"},children:\"\\xd7\"}),/*#__PURE__*/_jsx(\"p\",{style:{position:\"absolute\",bottom:16,left:24,right:24,margin:0,fontFamily:\"Pretendard, sans-serif\",fontSize:14,lineHeight:1.5,textAlign:\"center\"},children:photoNote?english?photoNote.en:photoNote.ko:title})]}),document.body)]});}addPropertyControls(EXLABProjectImage,{cardAlt:{type:ControlType.Boolean,title:\"Use card title alt\",defaultValue:false},client:{type:ControlType.String,title:\"Client\",defaultValue:\"\"},fallbackImageUrl:{type:ControlType.String,title:\"Fallback image URL\",defaultValue:\"\"},fit:{type:ControlType.Enum,title:\"Fit\",options:[\"cover\",\"contain\"],defaultValue:\"cover\"},image:{type:ControlType.ResponsiveImage,title:\"Image\"},title:{type:ControlType.String,title:\"Alt from title\",defaultValue:\"\"},spaceType:{type:ControlType.String,title:\"Space type\",defaultValue:\"\"},position:{type:ControlType.String,title:\"Position\",defaultValue:\"center\"},sizes:{type:ControlType.String,title:\"Image sizes\",defaultValue:\"(max-width: 809px) 100vw, 50vw\"},eager:{type:ControlType.Boolean,title:\"Load immediately\",defaultValue:false},expandable:{type:ControlType.Boolean,title:\"Photo lightbox\",defaultValue:false}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"EXLABProjectImage\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"600\",\"framerIntrinsicHeight\":\"400\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./EXLABProjectImage.map"],"mappings":"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"}