PageSourceSearch

https://domain-discover-tool.lovable.app/assets/new-launches.index-CqNPv9X6.js

js domain-discover-tool.lovable.app collected 2026-10-03 03:22:28 UTC 3,376 bytes, 1 lines download raw bytes

1import{bb as n,j as e,H as o,L as i,D as d,h as l,F as c}from"./index-DUiXJ36l.js";import{u as m}from"./useSuspenseQuery-eAo7DuFF.js";import{R as x}from"./rocket-DP888OzH.js";import{C as u}from"./calendar-DSZdWxVD.js";function b(){const{data:t}=m(n),r=t?.items??[];return e.jsxs("div",{className:"min-h-screen bg-background",children:[e.jsx(o,{}),e.jsxs("main",{children:[e.jsx("section",{className:"border-b border-border bg-gradient-to-br from-primary/5 to-background",children:e.jsxs("div",{className:"container mx-auto px-4 py-10",children:[e.jsxs("div",{className:"inline-flex items-center gap-2 rounded-full bg-primary/10 px-3 py-1 text-xs font-semibold text-primary",children:[e.jsx(x,{className:"size-3.5"})," New Launch Hub"]}),e.jsx("h1",{className:"mt-3 text-3xl font-bold text-foreground",children:"New property launches in India"}),e.jsx("p",{className:"mt-2 max-w-2xl text-sm text-muted-foreground",children:"Browse pre-launch, under-construction and ready-to-move projects from RERA-registered builders. Compare possession dates, floor plans and starting prices."})]})}),e.jsxs("section",{className:"container mx-auto px-4 py-8",children:[e.jsx("h2",{className:"mb-5 text-xl font-bold text-foreground",children:"Projects from verified builders"}),r.length===0?e.jsx("div",{className:"rounded-xl border border-dashed border-border p-10 text-center text-sm text-muted-foreground",children:"No projects published yet. Check back soon."}):e.jsx("div",{className:"grid gap-5 sm:grid-cols-2 lg:grid-cols-3",children:r.map(s=>e.jsxs(i,{to:"/new-launches/$slug",params:{slug:s.slug},className:"group overflow-hidden rounded-2xl border border-border bg-card transition hover:border-primary hover:shadow-md",children:[e.jsx("div",{className:"aspect-[4/3] overflow-hidden bg-muted",children:s.cover_image_url?e.jsx("img",{src:s.cover_image_url,alt:s.name,className:"size-full object-cover transition group-hover:scale-105",loading:"lazy",decoding:"async"}):e.jsx("div",{className:"flex size-full items-center justify-center text-muted-foreground",children:e.jsx(d,{className:"size-10"})})}),e.jsxs("div",{className:"p-4",children:[e.jsx("div",{className:"flex items-center justify-between gap-2",children:e.jsx("h3",{className:"truncate font-semibold text-foreground",children:s.name})}),e.jsx("div",{className:"mt-1 text-xs text-muted-foreground",children:[s.localities?.name,s.cities?.name].filter(Boolean).join(", ")}),e.jsxs("div",{className:"mt-3 flex flex-wrap items-center gap-2 text-xs",children:[e.jsx("span",{className:"rounded-full bg-muted px-2 py-0.5 capitalize",children:String(s.status).replace(/_/g," ")}),s.possession_date&&e.jsxs("span",{className:"inline-flex items-center gap-1 rounded-full bg-muted px-2 py-0.5",children:[e.jsx(u,{className:"size-3"}),new Date(s.possession_date).toLocaleDateString("en-IN",{month:"short",year:"numeric"})]}),(s.configurations??[]).slice(0,3).map(a=>e.jsx("span",{className:"rounded-full bg-muted px-2 py-0.5",children:a},a))]}),s.starting_price&&e.jsxs("div",{className:"mt-3 text-base font-bold text-primary",children:[l(Number(s.starting_price))," ",e.jsx("span",{className:"text-xs font-normal text-muted-foreground",children:"onwards"})]}),s.builders?.name&&e.jsxs("div",{className:"mt-2 text-xs text-muted-foreground",children:["By ",s.builders.name]})]})]},s.id))})]})]}),e.jsx(c,{})]})}export{b as component};

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.