PageSourceSearch

https://servis.net/assets/PriceIndex-Df4as7na.js

js servis.net collected 2026-10-09 22:04:12 UTC 2,778 bytes, 1 lines download raw bytes

1import{t as e}from"./link-BzNjvRVF.js";import{t}from"./jsx-runtime-DsKLSDJq.js";import{t as n}from"./trending-down-XGzlcMnW.js";import{Tt as r}from"./index-BAF8SXXG.js";import{i}from"./hooks-aUCemAe5.js";var a=t();function o(e){let t=new Map;for(let n of e){if(!n.categories)continue;let e=t.get(n.category_id)??[];e.push(n),t.set(n.category_id,e)}let n=[];return t.forEach(e=>{e.sort((e,t)=>e.week_start_date.localeCompare(t.week_start_date));let t=e[e.length-1],r=e.map(e=>Number(e.avg_price)),i=Math.min(...r),a=Math.max(...r)-i||1,o=100/(r.length-1||1),s=r.map((e,t)=>`${(t*o).toFixed(1)},${(28-(e-i)/a*24-2).toFixed(1)}`).join(` `),c=Number(t.change_pct)>=0?`up`:`down`;n.push({label:t.categories.name,price:`₺${Math.round(Number(t.avg_price))}`,delta:`%${Math.abs(Number(t.change_pct)).toFixed(1)}`,dir:c,points:s})}),n}function s(){let{data:t,isLoading:s}=i(),c=t?o(t):[];return(0,a.jsx)(`section`,{className:`py-12`,children:(0,a.jsx)(`div`,{className:`mx-auto max-w-[1220px] px-6`,children:(0,a.jsxs)(`div`,{className:`rounded-[22px] border border-line bg-paper p-6 shadow-[0_1px_2px_rgb(22_32_58_/_0.04),0_8px_24px_rgb(22_32_58_/_0.06)]`,children:[(0,a.jsxs)(`div`,{className:`flex flex-col sm:flex-row justify-between sm:items-center gap-3 mb-4`,children:[(0,a.jsxs)(`h2`,{className:`font-display text-base font-bold text-ink flex items-center gap-2`,children:[(0,a.jsx)(`span`,{className:`w-[7px] h-[7px] rounded-full bg-up`,style:{boxShadow:`0 0 0 3px var(--up-soft)`}}),`servis.net Fiyat Endeksi — Türkiye Ortalaması`]}),(0,a.jsx)(e,{to:`/raporlar/yillik-ariza-raporu-2026`,className:`text-[13.5px] font-semibold text-brand hover:text-brand-ink whitespace-nowrap`,children:`Tüm endeksi gör →`})]}),(0,a.jsxs)(`div`,{className:`grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4`,children:[s&&Array.from({length:4}).map((e,t)=>(0,a.jsx)(`div`,{className:`h-[130px] px-4 py-3 border-b border-line lg:border-b-0 lg:border-r animate-pulse bg-mist/40`},t)),c.map((e,t)=>(0,a.jsxs)(`div`,{className:`px-4 py-3 ${t<c.length-1?`lg:border-r lg:border-line`:``} border-b border-line lg:border-b-0 last:border-b-0`,children:[(0,a.jsx)(`div`,{className:`text-xs text-muted-ink font-semibold mb-1.5`,children:e.label}),(0,a.jsx)(`div`,{className:`font-num text-[18px] font-bold text-ink mb-1`,children:e.price}),(0,a.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-[11.5px] font-bold font-num ${e.dir===`up`?`text-down`:`text-up`}`,children:[e.dir===`up`?(0,a.jsx)(r,{className:`h-3 w-3`}):(0,a.jsx)(n,{className:`h-3 w-3`}),e.delta]}),(0,a.jsx)(`svg`,{viewBox:`0 0 100 28`,className:`w-full h-7 mt-2`,children:(0,a.jsx)(`polyline`,{points:e.points,fill:`none`,stroke:e.dir===`up`?`#E0494E`:`#15A24A`,strokeWidth:`2`})})]},e.label))]})]})})})}export{s as t};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.