PageSourceSearch

https://tada.global/assets/careers-CYWkLfMO.js

js tada.global collected 2026-10-01 13:03:11 UTC 3,819 bytes, 1 lines download raw bytes

1import{a as o,j as t}from"./vendor-animation-DTPlXSoL.js";import{u}from"./useQuery-B_cQIJJI.js";import{L as h}from"./index-9p81SGta.js";import{B as c}from"./badge-C6Qv3tQY.js";import{careers as f}from"./index-k9Ck7QID.js";import{B as d}from"./briefcase-BcBGGHwq.js";import{B as g}from"./building-2-B1ZrKa-E.js";import{M as y}from"./map-pin-D-JiObNU.js";import{C as N}from"./clock-DjDxMuw_.js";import"./vendor-react-_LCK3pSB.js";import"./vendor-charts-DP8Vi2ZD.js";function A(){const[s]=o.useState(""),[a]=o.useState("all"),[r]=o.useState("all"),[l]=o.useState("all"),[i]=o.useState("all"),{data:m=[],isLoading:x}=u({queryKey:["/api/public/careers",s,a,r,l,i],queryFn:async()=>{const e=new URLSearchParams;s&&e.set("search",s),a&&a!=="all"&&e.set("department",a),r&&r!=="all"&&e.set("location",r),l&&l!=="all"&&e.set("workplaceType",l),i&&i!=="all"&&e.set("employmentType",i);const n=await fetch(`/api/public/careers?${e.toString()}`);return n.ok?n.json():[]},retry:!1}),p=m.length>0?m:f.filter(e=>!(s&&!e.title.toLowerCase().includes(s.toLowerCase())&&!e.shortDescription.toLowerCase().includes(s.toLowerCase())||a!=="all"&&e.department!==a||r!=="all"&&e.location!==r||l!=="all"&&e.workplaceType!==l||i!=="all"&&e.employmentType!==i)).map((e,n)=>({id:n+1,title:e.title,slug:e.slug,department:e.department,location:e.location,workplaceType:e.workplaceType,employmentType:e.employmentType,shortDescription:e.shortDescription}));return t.jsxs("div",{className:"pt-20",children:[t.jsx("section",{className:"py-20 lg:py-28 bg-gradient-to-b from-slate-900 to-slate-800 text-white",children:t.jsxs("div",{className:"container mx-auto px-6 text-center",children:[t.jsxs("div",{className:"inline-flex items-center gap-2 px-3 py-1 rounded-full bg-white/10 text-white/80 text-xs font-bold uppercase tracking-wider mb-6",children:[t.jsx(d,{className:"w-3 h-3"}),"Join Us"]}),t.jsx("h1",{className:"text-4xl lg:text-6xl font-bold font-display mb-6",children:"Careers at TADA"}),t.jsx("p",{className:"text-xl text-white/70 max-w-2xl mx-auto",children:"Join our mission to build fairer mobility for everyone."})]})}),t.jsx("section",{className:"py-16 bg-background",children:t.jsx("div",{className:"container mx-auto px-6",children:x?t.jsx("div",{className:"text-center py-20 text-muted-foreground",children:"Loading positions..."}):p.length===0?t.jsxs("div",{className:"text-center py-20",children:[t.jsx(d,{className:"w-12 h-12 text-muted-foreground mx-auto mb-4"}),t.jsx("h3",{className:"text-xl font-semibold mb-2",children:"No open positions matching your criteria"}),t.jsx("p",{className:"text-muted-foreground",children:"Try adjusting your filters or check back later."})]}):t.jsx("div",{className:"grid gap-4",children:p.map(e=>t.jsx(h,{href:`/careers/${e.slug}`,children:t.jsx("div",{className:"group p-6 bg-slate-50 dark:bg-slate-900/50 rounded-2xl border border-border hover:shadow-lg hover:border-primary/30 transition-all duration-300 cursor-pointer",children:t.jsx("div",{className:"flex flex-col md:flex-row md:items-center justify-between gap-4",children:t.jsxs("div",{className:"flex-1",children:[t.jsx("h3",{className:"text-lg font-bold mb-2 group-hover:text-primary transition-colors",children:e.title}),t.jsx("p",{className:"text-sm text-muted-foreground line-clamp-2 mb-3",children:e.shortDescription}),t.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[t.jsxs(c,{variant:"default",className:"gap-1",children:[t.jsx(g,{className:"w-3 h-3"}),e.department]}),t.jsxs(c,{variant:"secondary",className:"gap-1",children:[t.jsx(y,{className:"w-3 h-3"}),e.location]}),t.jsx(c,{variant:"outline",className:"gap-1",children:e.workplaceType}),t.jsxs(c,{variant:"outline",className:"gap-1",children:[t.jsx(N,{className:"w-3 h-3"}),e.employmentType]})]})]})})})},e.slug))})})})]})}export{A as CareersPage};

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.