import{r as l,j as o,S as d}from"./svn-lib-models-CnHFhceI.js";import{W as u,I as k}from"./svn-lib-shared-ui-CxUiY1I5.js";import{e as x,Q as y,u as I,a as j}from"./context-B0nlviwN.js";import{k as C}from"./svn-lib-hooks-EFgjTDqk.js";function b(s){const[a,r]=l.useState(!0),[t,e]=l.useState(!1),p=i=>new Promise(n=>{if(i){const c=document.createElement("img");c.onerror=()=>n(!1),c.onload=()=>n(!0),c.src=i}else n(!1)});return l.useEffect(()=>{p(s).then(i=>{e(!i),r(!1)})},[s]),{isLoading:a,isFallback:t}}function F({brand:s,car:a,showFallbackText:r,...t}){return o.jsx(h,{alt:a.model.name,fallbackImageClass:"aspect-16/9",brand:s,showFallbackText:r,...t})}function h({src:s,objectFit:a=u.CONTAIN,alt:r,fallbackImageClass:t,fadeIn:e=!1,onClick:p=()=>{},className:i,showFallbackText:n}){const c=l.useRef(null),w=o.jsx(k,{additionalClasses:t,showFallbackText:n}),{isLoading:g,isFallback:f}=b(s);return o.jsxs("div",{className:x("flex size-full select-none items-center justify-center",{"transition ease-in duration-500 opacity-0":e},{"opacity-1":!g},i),onClick:p,children:[!f&&o.jsx("img",{src:s,ref:c,alt:r,draggable:!1,className:y("m-auto block size-full",{"object-contain":a===u.CONTAIN},{"object-cover":a===u.COVER})}),f&&w]})}function T({car:s}){const{t:a}=I("r_detail-page",{keyPrefix:"model-designation"}),r=j(),{f:t}=C(r.frontendProperties.priceConfig),e=s.technicalData;return e.engineType===d.ELECTRICAL?o.jsx(m,{list:[e.combinedFuelGroupName,a("electric-power-kw",{kw:t(e.power.displayPowerKw,0)}),a("electric-power-hp",{hp:t(e.power.displayPowerHp,0)})]}):e.engineType===d.PLUGIN_HYBRID?o.jsx(m,{list:[e.combinedFuelGroupName,a("engine-capacity",{value:t(e.motorCapacityLiter,1)}),a("electric-power-kw",{kw:t(e.power.displayPowerKw,0)}),a("electric-power-hp",{hp:t(e.power.displayPowerHp,0)}),e.gearName]}):o.jsx(m,{list:[e.combinedFuelGroupName,a("engine-capacity",{value:t(e.motorCapacityLiter,1)}),a("power-kw",{kw:t(e.power.displayPowerKw,0)}),a("power-hp",{hp:t(e.power.displayPowerHp,0)}),e.gearName]})}function m({list:s}){return o.jsx(o.Fragment,{children:s.join(" / ")})}export{F as C,h as I,T as M,b as u};
