PageSourceSearch

https://ainm.ai/assets/PublicJobPage-CmxZeLbZ.js

js ainm.ai collected 2026-10-05 12:22:41 UTC 12,462 bytes, 1 lines download raw bytes

1import{j as e}from"./vendor-query-_WCqczoK.js";import{i as k,a as n}from"./vendor-react-Bj_8hxfy.js";import{g as y,bp as b,J as u,s as C,aL as S}from"./vendor-ui-DPQRepxn.js";function I(){var h;const{companyId:c,roleId:l}=k(),[s,f]=n.useState(null),[j,N]=n.useState(!1),[m,x]=n.useState(!1),[t,i]=n.useState({name:"",email:"",phone:"",cover_letter:"",ai_consent:!1}),[o,v]=n.useState(null);n.useEffect(()=>{if(!l)return;fetch(`/api/v1/hiring/public/${c||"11111111-1111-1111-1111-111111111111"}/jobs`).then(r=>r.json()).then(r=>{f((r.jobs||r||[]).find(g=>g.id===l)||null)}).catch(()=>{})},[c,l]);const w=async()=>{if(!t.name||!t.email||!t.phone||!t.ai_consent||!l)return;x(!0);const a=new FormData;a.append("candidate_name",t.name),a.append("candidate_email",t.email),a.append("candidate_phone",t.phone),a.append("ai_consent",t.ai_consent?"true":"false"),o&&a.append("cv_file",o);try{(await fetch(`/api/v1/hiring/public/${c||"11111111-1111-1111-1111-111111111111"}/jobs/${l}/apply`,{method:"POST",body:a})).ok?N(!0):alert("Submission failed. Please try again.")}catch{alert("Network error.")}finally{x(!1)}};if(j)return e.jsx("div",{className:"min-h-screen bg-white flex items-center justify-center p-4",children:e.jsxs("div",{className:"max-w-md w-full text-center py-16",children:[e.jsx("div",{className:"w-14 h-14 rounded-full bg-emerald-50 flex items-center justify-center mx-auto mb-5",children:e.jsx(y,{size:28,className:"text-emerald-500"})}),e.jsx("h2",{className:"text-xl font-bold text-gray-900 mb-2",children:"Application submitted"}),e.jsx("p",{className:"text-gray-500 text-sm mb-8",children:"Thank you for applying"+(s!=null&&s.title?` for ${s.title}`:"")+". We'll review your application and be in touch."}),e.jsxs("p",{className:"text-xs text-gray-300",children:["Powered by ",e.jsx("a",{href:"https://ainm.ai",className:"text-gray-400 hover:text-gray-600",children:"ainm"})]})]})});if(!s)return e.jsx("div",{className:"min-h-screen bg-white flex items-center justify-center",children:e.jsx("div",{className:"w-7 h-7 border-2 border-gray-200 border-t-gray-600 rounded-full animate-spin"})});const _=(s.company_name||"C").split(" ").map(a=>a[0]).join("").slice(0,2).toUpperCase(),p=Array.isArray(s.required_skills)?s.required_skills:[],d=s.pay_range_min||s.pay_range_max?`€${(s.pay_range_min||0).toLocaleString()} – €${(s.pay_range_max||0).toLocaleString()}`:null;return e.jsxs("div",{className:"min-h-screen bg-white pb-20 sm:pb-0",children:[e.jsx("header",{className:"border-b border-gray-100 sticky top-0 z-20 bg-white/95 backdrop-blur-sm",children:e.jsxs("div",{className:"max-w-5xl mx-auto px-4 sm:px-6 h-12 flex items-center justify-between",children:[e.jsx("a",{href:"https://ainm.ai",className:"text-gray-400 text-xs font-medium hover:text-gray-600 transition-colors",children:"Powered by ainm"}),e.jsx("a",{href:"#apply",className:"text-xs bg-emerald-600 text-white px-3.5 py-1.5 rounded-lg font-medium hover:bg-emerald-700 transition-colors",children:"Apply now"})]})}),e.jsx("div",{className:"border-b border-gray-100",children:e.jsxs("div",{className:"max-w-5xl mx-auto px-4 sm:px-6 py-10 sm:py-14",children:[e.jsxs("div",{className:"flex items-start gap-5 mb-5",children:[s.company_logo_url?e.jsx("img",{src:s.company_logo_url,alt:s.company_name,className:"w-16 h-16 sm:w-20 sm:h-20 rounded-2xl object-contain border border-gray-100 flex-shrink-0"}):e.jsx("div",{className:"w-16 h-16 sm:w-20 sm:h-20 rounded-2xl bg-gray-900 flex items-center justify-center flex-shrink-0",children:e.jsx("span",{className:"text-white font-bold text-xl",children:_})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("p",{className:"text-sm font-medium text-gray-500 mb-1",children:s.company_name}),e.jsx("h1",{className:"text-2xl sm:text-[2rem] font-bold text-gray-900 leading-tight",children:s.title})]})]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-x-4 gap-y-2 text-sm text-gray-500",children:[s.location&&e.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[e.jsx(b,{size:14,className:"text-gray-400"})," ",s.location]}),s.employment_type&&e.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[e.jsx(u,{size:14,className:"text-gray-400"})," ",s.employment_type.replace("_","-").replace(/\b\w/g,a=>a.toUpperCase())]}),s.work_type&&e.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[e.jsx(C,{size:14,className:"text-gray-400"})," ",s.work_type.charAt(0).toUpperCase()+s.work_type.slice(1)]})]}),d&&e.jsxs("div",{className:"mt-4",children:[e.jsxs("p",{className:"text-lg font-semibold text-gray-900",children:[d," ",e.jsx("span",{className:"text-sm font-normal text-gray-400",children:"per annum"})]}),e.jsx("p",{className:"text-[11px] text-gray-400 mt-0.5",children:"Salary disclosed in line with EU Pay Transparency Directive"})]})]})}),e.jsx("div",{className:"max-w-5xl mx-auto px-4 sm:px-6 py-10",children:e.jsxs("div",{className:"flex flex-col lg:flex-row gap-10",children:[e.jsxs("div",{className:"flex-1 min-w-0 space-y-10",children:[s.company_description&&e.jsxs("section",{children:[e.jsxs("h2",{className:"text-lg font-bold text-gray-900 mb-3",children:["About ",s.company_name]}),e.jsx("p",{className:"text-[15px] text-gray-600 leading-relaxed",children:s.company_description})]}),s.description&&e.jsxs("section",{children:[e.jsx("h2",{className:"text-lg font-bold text-gray-900 mb-3",children:"The Role"}),e.jsx("div",{className:"text-[15px] text-gray-600 leading-relaxed whitespace-pre-line",children:s.description})]}),p.length>0&&e.jsxs("section",{children:[e.jsx("h2",{className:"text-lg font-bold text-gray-900 mb-3",children:"What We're Looking For"}),e.jsx("div",{className:"flex flex-wrap gap-2",children:p.map(a=>e.jsx("span",{className:"text-sm px-3 py-1 bg-gray-50 border border-gray-200 text-gray-600 rounded-full",children:a},a))})]}),((h=s.jd_document)==null?void 0:h.original_filename)&&e.jsxs("a",{href:`/api/v1/hiring/public/${c||"11111111-1111-1111-1111-111111111111"}/jobs/${l}/jd`,target:"_blank",rel:"noreferrer",className:"inline-flex items-center gap-2 text-sm text-gray-500 hover:text-gray-700 transition-colors",children:[e.jsx(S,{size:14})," Download full job description"]}),e.jsxs("div",{className:"flex items-center gap-1.5 text-[11px] text-gray-400 pt-2 border-t border-gray-100",children:[e.jsx(y,{size:12,className:"text-gray-300"})," EU Pay Transparency compliant"]})]}),e.jsx("div",{className:"hidden lg:block w-72 flex-shrink-0",children:e.jsxs("div",{className:"sticky top-16 space-y-4",children:[e.jsxs("div",{className:"bg-white border border-gray-200 rounded-2xl p-5",children:[e.jsx("p",{className:"font-semibold text-gray-900 text-sm mb-0.5",children:s.title}),e.jsx("p",{className:"text-xs text-gray-500 mb-4",children:s.company_name}),e.jsx("a",{href:"#apply",className:"block w-full text-center bg-emerald-600 text-white rounded-xl py-2.5 text-sm font-semibold hover:bg-emerald-700 transition-colors",children:"Apply now"})]}),e.jsxs("div",{className:"bg-gray-50 border border-gray-200 rounded-2xl p-5 space-y-3",children:[e.jsx("p",{className:"text-xs font-semibold text-gray-500 uppercase tracking-wider",children:"Qu
1ick Facts"}),s.location&&e.jsxs("div",{className:"flex items-center gap-2 text-sm text-gray-600",children:[e.jsx(b,{size:14,className:"text-gray-400 flex-shrink-0"}),s.location]}),s.employment_type&&e.jsxs("div",{className:"flex items-center gap-2 text-sm text-gray-600",children:[e.jsx(u,{size:14,className:"text-gray-400 flex-shrink-0"}),s.employment_type.replace("_","-").replace(/\b\w/g,a=>a.toUpperCase())]}),d&&e.jsx("div",{className:"text-sm text-gray-800 font-medium",children:d})]})]})})]})}),e.jsx("div",{className:"border-t border-gray-100 bg-gray-50",children:e.jsx("div",{className:"max-w-2xl mx-auto px-4 sm:px-6 py-12",children:e.jsxs("div",{id:"apply",className:"scroll-mt-16",children:[e.jsxs("h2",{className:"text-xl font-bold text-gray-900 mb-1",children:["Apply for ",s.title]}),e.jsxs("p",{className:"text-sm text-gray-500 mb-8",children:["at ",s.company_name]}),e.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4 mb-4",children:[e.jsxs("div",{children:[e.jsx("label",{className:"text-sm font-medium text-gray-700 block mb-1.5",children:"Full Name *"}),e.jsx("input",{type:"text",value:t.name,onChange:a=>i({...t,name:a.target.value}),className:"w-full border border-gray-200 rounded-xl px-4 py-2.5 text-sm bg-white focus:ring-2 focus:ring-emerald-500 focus:border-emerald-500 outline-none transition",placeholder:"Jane Smith"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-sm font-medium text-gray-700 block mb-1.5",children:"Email *"}),e.jsx("input",{type:"email",value:t.email,onChange:a=>i({...t,email:a.target.value}),className:"w-full border border-gray-200 rounded-xl px-4 py-2.5 text-sm bg-white focus:ring-2 focus:ring-emerald-500 focus:border-emerald-500 outline-none transition",placeholder:"[email protected]"})]})]}),e.jsxs("div",{className:"mb-4",children:[e.jsx("label",{className:"text-sm font-medium text-gray-700 block mb-1.5",children:"Phone *"}),e.jsx("input",{type:"tel",value:t.phone,onChange:a=>i({...t,phone:a.target.value}),className:"w-full border border-gray-200 rounded-xl px-4 py-2.5 text-sm bg-white focus:ring-2 focus:ring-emerald-500 focus:border-emerald-500 outline-none transition",placeholder:"+353 87 123 4567"})]}),e.jsxs("div",{className:"mb-4",children:[e.jsx("label",{className:"text-sm font-medium text-gray-700 block mb-1.5",children:"CV / Resume"}),e.jsxs("label",{className:"block w-full border-2 border-dashed border-gray-200 rounded-xl p-5 text-center cursor-pointer hover:border-emerald-400 hover:bg-white transition-colors bg-white",children:[o?e.jsx("p",{className:"text-sm font-medium text-emerald-700",children:o.name}):e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"text-sm text-gray-600",children:"Click to upload your CV"}),e.jsx("p",{className:"text-xs text-gray-400 mt-1",children:"PDF, DOC, DOCX up to 10MB"})]}),e.jsx("input",{type:"file",accept:".pdf,.doc,.docx",className:"hidden",onChange:a=>{var r;return v(((r=a.target.files)==null?void 0:r[0])||null)}})]})]}),e.jsxs("div",{className:"mb-5",children:[e.jsxs("label",{className:"text-sm font-medium text-gray-700 block mb-1.5",children:["Cover Letter ",e.jsx("span",{className:"text-xs text-gray-400 font-normal",children:"(optional)"})]}),e.jsx("textarea",{value:t.cover_letter,onChange:a=>i({...t,cover_letter:a.target.value}),rows:4,className:"w-full border border-gray-200 rounded-xl px-4 py-2.5 text-sm bg-white focus:ring-2 focus:ring-emerald-500 focus:border-emerald-500 outline-none transition resize-none",placeholder:"Tell us why you're interested..."})]}),e.jsx("div",{className:"mb-6 bg-amber-50/50 border border-amber-200/60 rounded-xl p-4",children:e.jsxs("label",{className:"flex items-start gap-3 cursor-pointer",children:[e.jsx("input",{type:"checkbox",checked:t.ai_consent,onChange:a=>i({...t,ai_consent:a.target.checked}),className:"w-4 h-4 mt-0.5 accent-emerald-600 shrink-0 rounded"}),e.jsxs("div",{children:[e.jsx("span",{className:"text-sm font-medium text-gray-700",children:"AI Screening Consent *"}),e.jsx("p",{className:"text-xs text-gray-500 mt-1 leading-relaxed",children:"I understand I may be contacted by an AI screening agent on the phone number provided. The agent will identify as AI and I can decline at any time."})]})]})}),e.jsx("button",{onClick:w,disabled:!t.name||!t.email||!t.phone||!t.ai_consent||m,className:"w-full bg-emerald-600 text-white rounded-xl py-3.5 text-sm font-semibold hover:bg-emerald-700 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:m?"Submitting...":"Submit application"}),e.jsxs("p",{className:"text-xs text-gray-400 text-center mt-4",children:["Your data is processed under GDPR. ",e.jsx("a",{href:"https://ainm.ai/privacy",className:"hover:underline",children:"Privacy policy"})]})]})})}),e.jsx("footer",{className:"py-6 text-center",children:e.jsxs("p",{className:"text-[11px] text-gray-300",children:["Powered by ",e.jsx("a",{href:"https://ainm.ai",className:"text-gray-400 hover:text-gray-500",children:"ainm"})]})}),e.jsx("div",{className:"sm:hidden fixed bottom-0 left-0 right-0 bg-white/95 backdrop-blur-sm border-t border-gray-200 px-4 py-3 z-30",children:e.jsx("a",{href:"#apply",className:"block w-full text-center bg-emerald-600 text-white rounded-xl py-3 text-sm font-semibold",children:"Apply now"})})]})}export{I as default};

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.