import{a5 as N,e as ee,p as ue,D as ce,c as f,H as O,g as t,a as e,t as d,n as U,b as D,T as pe,w as A,v as m,h as Q,o as v,F as oe,s as _e,I as re,_ as te,f as ne,y as ve,q as ae,z as X,A as K,B as ge,C as ye,ao as be,x as we,G as le,ap as ke,r as de,L as Ce,ad as me,d as z}from"./cgAj8pMR.js";import"./CSlQYusP.js";import{_ as xe}from"./CUjN6N-j.js";import{s as Le}from"./BZUb1ISl.js";function Ls(a,k){return N({url:`/api/front/recruitment/job/detail/${a}`,method:"get",...k})}function $s(a){return N({url:"/api/front/recruitment/job/industries",method:"get",...a})}function js(a,k){return N({url:"/api/front/recruitment/job/list",method:"post",data:a,...k,headers:{secure:!0,...k?.headers}})}function Ss(a){return N({url:"/api/front/recruitment/job/locations",method:"get",...a})}function $e(a,k){return N({url:"/api/front/recruitment/sendEmailCode",method:"post",data:a,...k,headers:{secure:!0,...k?.headers}})}function je(a,k,h){return N({url:"/api/front/recruitment/submitResumeWithEmail",method:"post",params:a,data:k,...h})}const Se={class:"custom-select__input"},Ve={class:"custom-select__label"},Te={key:0,class:"custom-select__dropdown"},Re=["onClick"],Me={key:0,class:"custom-select__empty"},Ee=ee({__name:"CustomSelect",props:{modelValue:{default:null},options:{default:()=>[]},placeholder:{default:"请选择"},disabled:{type:Boolean,default:!1},size:{default:"md"},clearable:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(a,{emit:k}){const h=a,g=k,s=m(!1),S=m(),n=Q(()=>h.options.find(o=>o.value===h.modelValue)),$=Q(()=>n.value?.label??h.placeholder),y=Q(()=>h.modelValue!==null&&h.modelValue!==void 0&&h.modelValue!=="");function b(o){o.disabled||(g("update:modelValue",o.value),g("change",o.value),s.value=!1)}function C(o){o.stopPropagation(),g("update:modelValue",null),g("change",null)}function x(){h.disabled||(s.value=!s.value)}function l(o){S.value&&!S.value.contains(o.target)&&(s.value=!1)}return ue(()=>{document.addEventListener("click",l)}),ce(()=>{document.removeEventListener("click",l)}),(o,i)=>(v(),f("div",{ref_key:"selectRef",ref:S,class:O(["custom-select",[`custom-select--${a.size}`,{"custom-select--disabled":a.disabled},{"custom-select--open":t(s)},{"custom-select--has-value":t(y)}]]),onClick:x},[e("div",Se,[e("span",Ve,d(t($)),1),a.clearable&&t(y)?(v(),f("span",{key:0,class:"custom-select__clear",onClick:C},[...i[0]||(i[0]=[e("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none"},[e("path",{d:"M6 4.8L2.4 1.2L1.2 2.4L4.8 6L1.2 9.6L2.4 10.8L6 7.2L9.6 10.8L10.8 9.6L7.2 6L10.8 2.4L9.6 1.2L6 4.8Z",fill:"currentColor"})],-1)])])):U("",!0),i[1]||(i[1]=e("span",{class:"custom-select__arrow"},[e("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none"},[e("path",{d:"M2.4 4.2L6 7.8L9.6 4.2",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})])],-1))]),D(pe,{name:"dropdown"},{default:A(()=>[t(s)?(v(),f("div",Te,[(v(!0),f(oe,null,_e(a.options,w=>(v(),f("div",{key:w.value,class:O(["custom-select__option",{"custom-select__option--selected":w.value===a.modelValue,"custom-select__option--disabled":w.disabled}]),onClick:re(j=>b(w),["stop"])},d(w.label),11,Re))),128)),a.options.length===0?(v(),f("div",Me," 暂无选项 ")):U("",!0)])):U("",!0)]),_:1})],2))}}),fe=Object.assign(te(Ee,[["__scopeId","data-v-537fe064"]]),{__name:"CustomSelect"}),Fe={class:"job-filter"},Be={class:"job-filter__container"},Ie={class:"job-filter__grid"},De={class:"job-filter__input-wrapper"},Oe=["placeholder","disabled"],Ue=["disabled"],He=`<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
  <path d="M14.2125 13.3515625L10.1546875 9.29375C10.784375 8.4796875 11.125 7.484375 11.125 6.4375C11.125 5.184375 10.6359375 4.009375 9.7515625 3.1234375C8.8671875 2.2375 7.6890625 1.75 6.4375 1.75C5.1859375 1.75 4.0078125 2.2390625 3.1234375 3.1234375C2.2375 4.0078125 1.75 5.184375 1.75 6.4375C1.75 7.6890625 2.2390625 8.8671875 3.1234375 9.7515625C4.0078125 10.6375 5.184375 11.125 6.4375 11.125C7.484375 11.125 8.478125 10.784375 9.2921875 10.15625L13.35 14.2125C13.4 14.2625 13.48125 14.2625 13.53125 14.2125L14.2125 13.5328125C14.2625 13.4828125 14.2625 13.4015625 14.2125 13.3515625ZM8.9125 8.9125C8.25 9.5734375 7.371875 9.9375 6.4375 9.9375C5.503125 9.9375 4.625 9.5734375 3.9625 8.9125C3.3015625 8.25 2.9375 7.371875 2.9375 6.4375C2.9375 5.503125 3.3015625 4.6234375 3.9625 3.9625C4.625 3.3015625 5.503125 2.9375 6.4375 2.9375C7.371875 2.9375 8.2515625 3.3 8.9125 3.9625C9.5734375 4.625 9.9375 5.503125 9.9375 6.4375C9.9375 7.371875 9.5734375 8.2515625 8.9125 8.9125Z" fill="#999999" />
</svg>`,We=`<svg width="13" height="14" viewBox="0 0 13 14" fill="none" xmlns="http://www.w3.org/2000/svg">
  <path d="M11.3234375 2.959375C10.121875 1.4234375 8.253125 0.4375 6.1546875 0.4375C2.53125 0.4375 -0.4015625 3.3671875 -0.40626119 6.9921875C-0.4109375 10.6203125 2.528125 13.5625 6.1546875 13.5625C8.9875 13.5625 11.4015625 11.765625 12.3203125 9.2484375C12.34375 9.1828125 12.309375 9.109375 12.24375 9.0875L11.3578125 8.7828125C11.29375 8.7609375 11.2234375 8.79375 11.2 8.8578125C11.171875 8.9359375 11.140625 9.0140625 11.1078125 9.090625C10.8375 9.73125 10.45 10.30625 9.95625 10.8C9.4625 11.29375 8.8875 11.68125 8.2484375 11.953125C7.5875 12.2328125 6.8828125 12.375 6.1578125 12.375C5.43125 12.375 4.728125 12.2328125 4.0671875 11.953125C3.428125 11.6828125 2.853125 11.2953125 2.359375 10.8C1.865625 10.30625 1.478125 9.73125 1.2078125 9.090625C0.928125 8.428125 0.7859375 7.725 0.7859375 6.9984375C0.7859375 6.271875 0.928125 5.56875 1.2078125 4.90625C1.478125 4.265625 1.865625 3.690625 2.359375 3.196875C2.853125 2.703125 3.428125 2.315625 4.0671875 2.04375C4.728125 1.7640625 5.4328125 1.621875 6.1578125 1.621875C6.884375 1.621875 7.5875 1.7640625 8.2484375 2.04375C8.8875 2.3140625 9.4625 2.7015625 9.95625 3.196875C10.1109375 3.3515625 10.25625 3.515625 10.390625 3.6875L9.45 4.421875C9.3671875 4.4859375 9.3953125 4.6171875 9.496875 4.6421875L12.240625 5.3140625C12.31875 5.3328125 12.3953125 5.2734375 12.3953125 5.19375L12.4078125 2.3671875C12.40625 2.2640625 12.2859375 2.20625 12.2046875 2.2703125L11.3234375 2.959375Z" fill="currentColor" />
</svg>`,qe=ee({__name:"JobFilter",props:{workLocationOptions:{},industryOptions:{},modelValue:{},loading:{type:Boolean}},emits:["update:modelValue","filter"],setup(a,{emit:k}){const h=a,g=k,{t:s}=ne(),S=m(null),n=ve({workLocation:h.modelValue?.workLocation??"",industry:h.modelValue?.industry??"",keyword:h.modelValue?.keyword??""});ae(()=>h.modelValue,x=>{x&&(n.workLocation=x.workLocation??"",n.industry=x.industry??"",n.keyword=x.keyword??"")},{deep:!0}),ae(()=>h.loading,(x,l)=>{l===!0&&x===!1&&ye(()=>{S.value?.focus()})});function $(){g("update:modelValue",{...n}),g("filter",{...n})}function y(){n.workLocation="",n.industry="",n.keyword="",$()}function b(x){n.workLocation=x?String(x):"",$()}function C(x){n.industry=x?String(x):"",$()}return(x,l)=>{const o=fe;return v(),f("div",Fe,[e("div",Be,[e("div",Ie,[D(o,{"model-value":t(n).workLocation||null,placeholder:t(s)("careers_page.filter.work_location"),options:a.workLocationOptions,class:"job-filter__select",disabled:a.loading,"onUpdate:modelValue":b},null,8,["model-value","placeholder","options","disabled"]),D(o,{"model-value":t(n).industry||null,placeholder:t(s)("careers_page.filter.industry"),options:a.industryOptions,class:"job-filter__select",disabled:a.loading,"onUpdate:modelValue":C},null,8,["model-value","placeholder","options","disabled"]),e("div",De,[X(e("input",{ref_key:"inputRef",ref:S,"onUpdate:modelValue":l[0]||(l[0]=i=>t(n).keyword=i),type:"text",placeholder:t(s)("careers_page.filter.keyword_placeholder"),class:"job-filter__input",disabled:a.loading,onKeyup:ge($,["enter"])},null,40,Oe),[[K,t(n).keyword]]),e("span",{class:"job-filter__input-icon",onClick:$,innerHTML:He})]),e("button",{class:"job-filter__reset-btn",disabled:a.loading,onClick:y},[e("span",{innerHTML:We})],8,Ue)])])])}}}),Vs=Object.assign(te(qe,[["__scopeId","data-v-190c229c"]]),{__name:"RecruitmentJobFilter"}),Ne={class:"job-list"},Je={class:"job-list__container"},Pe={class:"job-list__header"},ze={class:"job-list__header-detail"},Ae={key:0,class:"job-list__loading"},Xe={class:"job-list__loading-text"},Ge={key:1,class:"job-list__empty"},Ye={class:"job-list__empty-text"},Ze={key:2},Ke=["onClick"],Qe={class:"job-list__position-name"},et={class:"job-list__company"},tt={class:"job-list__location"},st={class:"job-list__detail-btn-wrapper"},lt={class:"job-list__detail-btn"},ot={class:"job-list__expanded"},at={class:"job-list__expanded-header"},nt={class:"job-list__meta"},it={class:"job-list__apply-wrapper"},rt=["onClick"],dt={class:"job-list__apply-svg",width:"7.75rem",height:"3rem",viewBox:"0 0 124 48",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"},ut={id:"1",stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},ct={id:"6",transform:"translate(-1436, -1208)"},_t={id:"编组-19",transform:"translate(1436, 1208)"},mt={id:"编组-37",transform:"translate(24, 10)"},pt={id:"投递","font-family":"PingFangSC-Regular, PingFang SC","font-size":"20","font-weight":"normal",fill:"#E60012"},vt={x:"0",y:"21"},ft={class:"job-list__content"},ht={class:"job-list__section"},gt={class:"job-list__section-title"},yt=["innerHTML"],bt={class:"job-list__section-title"},wt=["innerHTML"],kt=ee({__name:"JobList",props:{jobs:{},loading:{type:Boolean},expandedId:{}},emits:["expand","apply"],setup(a,{emit:k}){const h=a,g=k,{t:s}=ne(),S={1:"无学历要求",2:"大专",3:"本科",4:"硕士",5:"博士"},n={1:"无经验要求",2:"1-3年",3:"3-5年",4:"5-7年",5:"7-10年",6:"10年以上"};function $(l){return!l&&l!==0?"无学历要求":String(l).split(",").map(i=>S[Number(i.trim())]||"").filter(Boolean).join("、")}function y(l){return l&&n[l]||""}function b(l){return h.expandedId===l.id}function C(l){g("expand",l)}function x(l){g("apply",l)}return(l,o)=>(v(),f("div",Ne,[e("div",Je,[e("div",Pe,[e("div",null,d(t(s)("careers_page.list.position")),1),e("div",null,d(t(s)("careers_page.list.company")),1),e("div",null,d(t(s)("careers_page.list.location")),1),e("div",ze,d(t(s)("careers_page.list.detail")),1)]),a.loading?(v(),f("div",Ae,[o[0]||(o[0]=e("div",{class:"job-list__loading-icon"},null,-1)),e("p",Xe,d(t(s)("common.loading")),1)])):a.jobs.length===0?(v(),f("div",Ge,[o[1]||(o[1]=e("svg",{class:"job-list__empty-icon",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.5"},[e("path",{d:"M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"}),e("polyline",{points:"9 22 9 12 15 12 15 22"})],-1)),e("p",Ye,d(t(s)("careers_page.list.no_data")),1)])):(v(),f("div",Ze,[(v(!0),f(oe,null,_e(a.jobs,i=>(v(),f("div",{key:i.id,class:"job-list__item"},[e("div",{class:O(["job-list__row",{"job-list__row--expanded":b(i)}]),onClick:w=>C(i)},[e("div",null,[e("span",Qe,d(i.positionName),1)]),e("div",et,d(i.company),1),e("div",tt,d(i.workLocation),1),e("div",st,[e("button",lt,[e("span",null,d(t(s)("careers_page.list.click_to_view")),1),(v(),f("svg",{width:"24",height:"24",viewBox:"0 0 24 24",class:O([{"job-list__arrow--rotated":b(i)},"job-list__arrow"]),fill:"none",xmlns:"http://www.w3.org/2000/svg"},[...o[2]||(o[2]=[e("circle",{cx:"12",cy:"12",r:"12",fill:"#E60012"},null,-1),e("path",{d:"M10.3126484 3L9.43374217 3C9.37397655 3 9.31772655 3.02929688 9.2825703 3.07734375L5.95327342 7.66640625L2.62397655 3.07734375C2.5888203 3.02929688 2.5325703 3 2.47280467 3L1.59389842 3C1.51772655 3 1.4731953 3.08671875 1.51772655 3.14882813L5.6497578 8.8453125C5.7997578 9.0515625 6.10678905 9.0515625 6.25561717 8.8453125L10.3876484 3.14882812C10.4333515 3.08671875 10.3888203 3 10.3126484 3Z",transform:"translate(6, 6)",fill:"#FFFFFF"},null,-1)])],2))])])],10,Ke),X(e("div",ot,[e("div",at,[e("div",null,[e("div",null,d(i.company),1),e("div",nt,[e("span",null,"招聘"+d(i.hireCount)+"人",1),o[3]||(o[3]=e("span",{class:"job-list__meta-divider"},"/",-1)),e("span",null,d($(i.education)),1),o[4]||(o[4]=e("span",{class:"job-list__meta-divider"},"/",-1)),e("span",null,d(y(i.experience)),1),o[5]||(o[5]=e("span",{class:"job-list__meta-divider"},"/",-1)),e("span",null,d(i.workLocation),1),o[6]||(o[6]=e("span",{class:"job-list__meta-divider"},"/",-1)),e("span",null,d(i.salaryRange||"薪资面议"),1)])]),e("div",it,[e("div",{class:"job-list__apply-btn",onClick:w=>x(i)},[(v(),f("svg",dt,[e("g",ut,[e("g",ct,[e("g",_t,[o[8]||(o[8]=e("rect",{id:"矩形",stroke:"#E60012",x:"0.5",y:"0.5",width:"123",height:"47",rx:"23.5"},null,-1)),e("g",mt,[e("text",pt,[e("tspan",vt,d(t(s)("careers_page.detail.apply")),1)]),o[7]||(o[7]=e("g",{id:"编组-36",transform:"translate(52, 2)"},[e("rect",{id:"矩形",x:"0",y:"0",width:"24",height:"24"}),e("path",{id:"路径-10",d:"M2,14 L19.064144,14 C19.2850579,14 19.464144,13.8209139 19.464144,13.6 C19.464144,13.4970193 19.4244266,13.3980062 19.3532599,13.3235728 L14.2633285,8 L14.2633285,8",stroke:"#E60012","stroke-width":"1.5","stroke-linecap":"round"})],-1))])])])])]))],8,rt)])]),e("div",ft,[e("div",ht,[e("div",gt,d(t(s)("careers_page.detail.requirements")),1),e("div",{class:"job-list__section-content",innerHTML:i.description},null,8,yt)]),e("div",null,[e("div",bt,d(t(s)("careers_page.detail.content")),1),e("div",{class:"job-list__section-content",innerHTML:i.jobContent},null,8,wt)])])],512),[[be,b(i)]])]))),128))]))])]))}}),Ts=Object.assign(te(kt,[["__scopeId","data-v-10c5162b"]]),{__name:"RecruitmentJobList"});function Ct(a,k){return N({url:"/api/front/captcha/check",method:"post",data:a,...k,headers:{secure:!0,...k?.headers}})}function xt(a){return N({url:"/api/front/captcha/get",method:"get",...a})}const Lt=["width","height"],$t={class:"slider-hint"},jt=ee({__name:"SliderVerify",props:{canvasWidth:{default:320},canvasHeight:{default:155},sliderHint:{default:"向右滑动"}},emits:["success","fail"],setup(a,{expose:k,emit:h}){const g=a,s=h,S=(u,c)=>u+c,n=u=>u*u,$=m(!1),y=m(!1),b=m(!1),C=m([]),x=m("0px"),l=m("0px"),o=m(!1),i=m(!0),w=m(0),j=m(""),F=m(""),E=m(0),H=m(0),L=m(),W=m(),G=m();async function Y(){i.value=!0;try{const c=(await xt()).data;c&&(F.value=c.nonceStr,L.value&&(L.value.src=c.blockSrc,L.value.style.top=`${c.blockY}px`),W.value&&(W.value.src=c.canvasSrc))}catch{}finally{i.value=!1}}function Z(u){i.value||y.value||(u.preventDefault(),E.value=u.clientX,H.value=u.clientY,o.value=!0,w.value=+new Date)}function J(u){if(!o.value)return;const c=u.clientX-E.value,R=u.clientY-H.value;if(c<0||c+40>=g.canvasWidth)return;l.value=`${c}px`;const se=(g.canvasWidth-40-20)/(g.canvasWidth-40)*c;L.value&&(L.value.style.left=`${se}px`),$.value=!0,x.value=`${c}px`,C.value.push(R)}function p(u){if(!o.value||(o.value=!1,u.clientX===E.value))return;i.value=!0,$.value=!1,w.value=+new Date-w.value;const c=Number.parseInt(L.value?.style.left||"0");w.value>1e4?I():r()?_(c):(b.value=!0,s("fail","请进行人工操作"),P())}function V(u){if(i.value||y.value)return;u.preventDefault();const c=u.touches[0];c&&(E.value=c.clientX,H.value=c.clientY,o.value=!0,w.value=+new Date)}function M(u){if(!o.value)return;const c=u.touches[0];if(!c)return;const R=c.clientX-E.value,se=c.clientY-H.value;if(R<0||R+40>=g.canvasWidth)return;l.value=`${R}px`;const ie=(g.canvasWidth-40-20)/(g.canvasWidth-40)*R;L.value&&(L.value.style.left=`${ie}px`),$.value=!0,x.value=`${R}px`,C.value.push(se)}function q(u){if(!o.value)return;o.value=!1;const c=u.changedTouches[0];if(!c||c.clientX===E.value)return;i.value=!0,$.value=!1,w.value=+new Date-w.value;const R=Number.parseInt(L.value?.style.left||"0");w.value>1e4?I():r()?_(R):(b.value=!0,s("fail","请进行人工操作"),P())}async function _(u){try{const c=await Ct({nonceStr:F.value,value:String(u)});if(c.code===200&&c.data){const R=c.data;B(),s("success",{nonceStr:F.value,value:u,captchaToken:R})}else I(c.message)}catch{I("验证失败，请重试")}}function r(){const u=C.value;if(u.length===0)return!0;const c=u.reduce(S)/u.length,R=u.map(ie=>ie-c),se=Math.sqrt(R.map(n).reduce(S)/u.length);return c!==se}function B(){i.value=!1,y.value=!0;const u=(w.value/1e3).toFixed(1);Number(u)<1?j.value=`验证成功，用时${u}秒`:Number(u)<2?j.value=`验证成功，用时${u}秒`:j.value=`验证成功，用时${u}秒`}function I(u){b.value=!0,s("fail",u),P()}function P(){setTimeout(()=>{b.value=!1},300),i.value=!0,$.value=!1,y.value=!1,C.value=[],L.value&&(L.value.style.left="0px"),x.value="0px",l.value="0px",Y()}function T(){document.addEventListener("mousemove",J),document.addEventListener("mouseup",p)}function he(){document.removeEventListener("mousemove",J),document.removeEventListener("mouseup",p)}return ue(()=>{Y(),T()}),ce(()=>{he()}),k({refresh:P,verifySuccessEvent:B,verifyFailEvent:I}),(u,c)=>{const R=ke;return v(),we(R,null,{default:A(()=>[e("div",{ref_key:"sliderRef",ref:G,class:"slide-verify",style:le({width:`${a.canvasWidth}px`}),onselectstart:"return false;"},[i.value?(v(),f("div",{key:0,class:"img-loading",style:le({height:`${a.canvasHeight}px`})},[...c[0]||(c[0]=[e("div",{class:"loading-content"},[e("div",{class:"loading-spinner"}),e("div",{class:"loading-text"}," 正在加载图片资源... ")],-1)])],4)):U("",!0),y.value?(v(),f("div",{key:1,class:"success-hint",style:le({height:`${a.canvasHeight}px`})},d(j.value),5)):U("",!0),e("div",{class:"refresh-icon",onClick:P}),e("img",{ref_key:"canvasRef",ref:W,class:"slide-canvas",width:a.canvasWidth,height:a.canvasHeight},null,8,Lt),e("img",{ref_key:"blockRef",ref:L,class:O(["slide-block",[{"verify-fail":b.value}]])},null,2),e("div",{class:O(["slider",{"verify-active":$.value,"verify-success":y.value,"verify-fail":b.value}])},[e("div",{class:"slider-box",style:le({width:x.value})},[e("div",{class:"slider-button",style:le({left:l.value}),onMousedown:Z,onTouchstart:V,onTouchmove:M,onTouchend:q},[...c[1]||(c[1]=[e("div",{class:"slider-button-icon"},[e("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",stroke:"currentColor","stroke-width":"1.5"},[e("path",{d:"M7.5 4L13.5 10L7.5 16","stroke-linecap":"round","stroke-linejoin":"round"})])],-1)])],36)],4),e("span",$t,d(a.sliderHint),1)],2)],4)]),_:1})}}}),St=Object.assign(te(jt,[["__scopeId","data-v-9689a40a"]]),{__name:"SliderVerify"}),Vt={class:"university-select__input-wrapper"},Tt=["placeholder","disabled"],Rt={key:0,class:"university-select__loading"},Mt={key:1,class:"university-select__empty"},Et={class:"university-select__list"},Ft=["onClick"],Bt={key:0,class:"university-select__footer"},It=ee({__name:"UniversitySelect",props:{modelValue:{default:""},placeholder:{default:""},disabled:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(a,{emit:k}){const{t:h}=ne(),g=a,s=Q(()=>g.placeholder||h("careers_page.university_select.placeholder")),S=k,n=m(),$=m(),y=m(!1),b=m(""),C=m([]),x=m([]),l=m(!1),o=m(-1),i=m(!1);async function w(){if(!i.value){l.value=!0;try{const p=await $fetch("/json/universities.json");p&&(x.value=p,i.value=!0)}catch{}finally{l.value=!1}}}ae(()=>g.modelValue,p=>{y.value||(b.value=p)},{immediate:!0});let j=null;function F(){const p=b.value.trim();if(!p){C.value=[];return}C.value=x.value.filter(V=>{if(V.name.includes(p)||V.code.includes(p))return!0;const M=V.name,q=p.split("");let _=0;for(let r=0;r<M.length;r++)if(M[r]===q[_]&&(_++,_===q.length))return!0;return!1})}function E(){o.value=-1,j&&clearTimeout(j),j=setTimeout(async()=>{b.value.trim()?(i.value||await w(),F(),y.value=!0):(C.value=[],y.value=!1)},300)}async function H(){g.disabled||(b.value.trim()&&C.value.length>0?y.value=!0:b.value.trim()&&(i.value||await w(),F(),y.value=!0))}function L(p){b.value=p.name,S("update:modelValue",p.name),y.value=!1}function W(){b.value="",S("update:modelValue",""),C.value=[],y.value=!1,$.value?.focus()}function G(p){}function Y(p){!y.value||C.value.length===0||(p.key==="ArrowDown"?(p.preventDefault(),o.value=Math.min(o.value+1,C.value.length-1),Z()):p.key==="ArrowUp"?(p.preventDefault(),o.value=Math.max(o.value-1,0),Z()):p.key==="Enter"&&o.value>=0?(p.preventDefault(),L(C.value[o.value])):p.key==="Escape"&&(y.value=!1))}function Z(){const p=n.value?.querySelector(".university-select__dropdown");if(!p)return;const V=p.querySelectorAll(".university-select__option");V[o.value]&&V[o.value].scrollIntoView({block:"nearest"})}function J(p){n.value&&!n.value.contains(p.target)&&(y.value=!1,b.value=g.modelValue)}return ue(()=>{document.addEventListener("click",J)}),ce(()=>{document.removeEventListener("click",J),j&&clearTimeout(j)}),(p,V)=>(v(),f("div",{ref_key:"selectRef",ref:n,class:O(["university-select",{"university-select--disabled":a.disabled,"university-select--open":t(y),"university-select--has-value":a.modelValue}])},[e("div",Vt,[X(e("input",{ref_key:"inputRef",ref:$,"onUpdate:modelValue":V[0]||(V[0]=M=>de(b)?b.value=M:null),type:"text",class:"university-select__input",placeholder:t(s),disabled:a.disabled,autocomplete:"off",onInput:E,onFocus:H,onKeydown:Y},null,40,Tt),[[K,t(b)]]),a.modelValue?(v(),f("span",{key:0,class:"university-select__clear",onClick:re(W,["stop"])},[...V[1]||(V[1]=[e("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none"},[e("path",{d:"M6 4.8L2.4 1.2L1.2 2.4L4.8 6L1.2 9.6L2.4 10.8L6 7.2L9.6 10.8L10.8 9.6L7.2 6L10.8 2.4L9.6 1.2L6 4.8Z",fill:"currentColor"})],-1)])])):U("",!0),e("span",{class:O(["university-select__arrow",{"university-select__arrow--open":t(y)}])},[...V[2]||(V[2]=[e("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none"},[e("path",{d:"M2.4 4.2L6 7.8L9.6 4.2",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})],-1)])],2)]),D(pe,{name:"dropdown"},{default:A(()=>[t(y)?(v(),f("div",{key:0,class:"university-select__dropdown",onScroll:G},[t(l)&&t(C).length===0?(v(),f("div",Rt,d(t(h)("careers_page.university_select.searching")),1)):!t(l)&&t(C).length===0&&t(b).trim()?(v(),f("div",Mt,d(t(h)("careers_page.university_select.no_results")),1)):(v(),f(oe,{key:2},[e("div",Et,[(v(!0),f(oe,null,_e(t(C),(M,q)=>(v(),f("div",{key:M.code,class:O(["university-select__option",{"university-select__option--selected":M.name===a.modelValue,"university-select__option--highlighted":q===t(o)}]),onClick:re(_=>L(M),["stop"])},d(M.name),11,Ft))),128))]),t(C).length>0?(v(),f("div",Bt,d(t(h)("careers_page.university_select.total_count",{count:t(C).length})),1)):U("",!0)],64))],32)):U("",!0)]),_:1})],2))}}),Dt=Object.assign(te(It,[["__scopeId","data-v-3e498bd8"]]),{__name:"RecruitmentUniversitySelect"}),Ot=Symbol("customToast");function Ut(){const a=()=>0;return{add:a,remove:()=>{},success:a,error:a,warning:a,info:a}}function Ht(){try{const g=Ce().$customToast;if(g)return g}catch{}const a=me(Ot);if(a)return a;const k=me("customToast");return k||Ut()}const Wt={key:0,class:"resume-modal__loading"},qt={class:"resume-modal__loading-text"},Nt={class:"resume-modal__form"},Jt={class:"resume-modal__row"},Pt={class:"resume-modal__field"},zt={class:"resume-modal__label"},At=["placeholder","disabled"],Xt={class:"resume-modal__field"},Gt={class:"resume-modal__label"},Yt=["placeholder","disabled"],Zt={class:"resume-modal__field"},Kt={class:"resume-modal__label"},Qt={class:"resume-modal__field"},es={class:"resume-modal__label"},ts={class:"resume-modal__field"},ss={class:"resume-modal__label"},ls={class:"resume-modal__input-group"},os=["placeholder","disabled"],as=["disabled"],ns={class:"resume-modal__field"},is={class:"resume-modal__label"},rs=["placeholder","disabled"],ds={class:"resume-modal__field"},us={class:"resume-modal__label"},cs={class:"resume-modal__upload"},_s={for:"resume-upload",class:"resume-modal__upload-label"},ms={key:0,class:"resume-modal__upload-text"},ps={key:1,class:"resume-modal__upload-text resume-modal__upload-text--success"},vs={class:"resume-modal__footer"},fs=["disabled"],hs=["disabled"],gs={class:"resume-modal__verify"},ys={class:"resume-modal__verify-tip"},bs=ee({__name:"ResumeSubmitModal",props:{show:{type:Boolean},job:{}},emits:["update:show","success"],setup(a,{emit:k}){const h=a,g=k,{t:s}=ne(),S=Q({get:()=>h.show,set:_=>g("update:show",_)}),n=Ht(),$=/^[\w.%+-]+@[\w.-]+\.[a-z]{2,}$/i,y=/^1[3-9]\d{9}$/,b=/^\+[1-9]\d{6,14}$/;function C(_){return $.test(_)}function x(_){return _.startsWith("+")?b.test(_):y.test(_)}const l=ve({name:"",phone:"",email:"",emailCode:"",school:"",education:null,resumeFile:null}),o=m(!1),i=m(!1),w=m(0),j=m(!1),F=m(null),E=m(""),H=Q(()=>[{label:s("careers_page.resume_modal.education_options.doctor"),value:"博士"},{label:s("careers_page.resume_modal.education_options.master"),value:"研究生"},{label:s("careers_page.resume_modal.education_options.bachelor"),value:"本科"},{label:s("careers_page.resume_modal.education_options.college"),value:"大专"},{label:s("careers_page.resume_modal.education_options.below_college"),value:"大专以下"}]);let L=null;function W(){g("update:show",!1),G()}function G(){l.name="",l.phone="",l.email="",l.emailCode="",l.school="",l.education=null,l.resumeFile=null,E.value="",j.value=!1,L&&(clearInterval(L),L=null),w.value=0}function Y(){if(!l.email){n.error("请输入邮箱");return}if(!C(l.email)){n.error("请输入正确的邮箱格式");return}j.value=!0}function Z(_){_.captchaToken?(E.value=_.captchaToken,p()):(n.error(s("careers_page.resume_modal.errors.slider_verify_failed")),j.value=!1,F.value?.refresh())}function J(_){n.error(_||s("careers_page.resume_modal.errors.slider_verify_failed_general"))}async function p(){i.value=!0;try{const _=await $e({email:l.email,token:E.value});_.code===200?(n.success(s("careers_page.resume_modal.errors.code_sent")),j.value=!1,w.value=60,L=Le(()=>{w.value--,w.value<=0&&(clearInterval(L),L=null)},1e3)):(n.error(_.message||s("careers_page.resume_modal.errors.send_code_failed")),F.value?.refresh())}catch{n.error(s("careers_page.resume_modal.errors.send_code_retry")),F.value?.refresh()}finally{i.value=!1}}function V(_){const B=_.target.files?.[0];if(B){if(!["application/pdf","application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document"].includes(B.type)){n.error(s("careers_page.resume_modal.errors.pdf_only"));return}if(B.size>10*1024*1024){n.error(s("careers_page.resume_modal.errors.file_too_large"));return}l.resumeFile=B}}async function M(){if(!l.name){n.error(s("careers_page.resume_modal.errors.enter_name"));return}if(!l.phone){n.error(s("careers_page.resume_modal.errors.enter_phone"));return}if(!x(l.phone)){n.error(s("careers_page.resume_modal.errors.invalid_phone"));return}if(!l.email){n.error(s("careers_page.resume_modal.errors.enter_email"));return}if(!C(l.email)){n.error(s("careers_page.resume_modal.errors.invalid_email"));return}if(!l.emailCode){n.error(s("careers_page.resume_modal.errors.enter_code"));return}if(!l.school){n.error(s("careers_page.resume_modal.errors.enter_school"));return}if(!l.education){n.error(s("careers_page.resume_modal.errors.select_education"));return}if(!l.resumeFile){n.error(s("careers_page.resume_modal.errors.upload_resume"));return}o.value=!0;try{const _=new FormData;_.append("file",l.resumeFile);const r=await je({name:l.name,phone:l.phone,email:l.email,emailCode:l.emailCode,school:l.school,education:l.education,jobId:h.job?.id},_,{headers:{"Content-Type":"multipart/form-data"}});r.code===200?(n.success(s("careers_page.resume_modal.errors.submit_success")),g("success"),W()):n.error(r.message||s("careers_page.resume_modal.errors.submit_failed"))}catch{n.error(s("careers_page.resume_modal.errors.submit_failed"))}finally{o.value=!1}}ae(()=>h.show,_=>{_||G()});function q(_){l.education=_?String(_):null}return(_,r)=>{const B=fe,I=xe,P=St;return v(),f(oe,null,[D(I,{modelValue:t(S),"onUpdate:modelValue":r[5]||(r[5]=T=>de(S)?S.value=T:null),title:a.job?t(s)("careers_page.resume_modal.title_with_position",{position:a.job.positionName}):t(s)("careers_page.resume_modal.title"),width:"35rem","close-on-overlay":!1},{footer:A(()=>[e("div",vs,[e("button",{class:"resume-modal__btn resume-modal__btn--ghost",disabled:t(o),onClick:W},d(t(s)("careers_page.resume_modal.cancel")),9,fs),e("button",{class:"resume-modal__btn resume-modal__btn--primary",disabled:t(o),onClick:M},d(t(o)?t(s)("careers_page.resume_modal.submitting"):t(s)("careers_page.resume_modal.submit")),9,hs)])]),default:A(()=>[t(o)?(v(),f("div",Wt,[r[7]||(r[7]=e("div",{class:"resume-modal__spinner"},null,-1)),e("span",qt,d(t(s)("careers_page.resume_modal.loading")),1)])):U("",!0),e("div",Nt,[e("div",Jt,[e("div",Pt,[e("label",zt,[z(d(t(s)("careers_page.resume_modal.fields.name"))+" ",1),r[8]||(r[8]=e("span",{class:"resume-modal__required"},"*",-1))]),X(e("input",{"onUpdate:modelValue":r[0]||(r[0]=T=>t(l).name=T),type:"text",class:"resume-modal__input",placeholder:t(s)("careers_page.resume_modal.placeholders.name"),disabled:t(o)},null,8,At),[[K,t(l).name]])]),e("div",Xt,[e("label",Gt,[z(d(t(s)("careers_page.resume_modal.fields.phone"))+" ",1),r[9]||(r[9]=e("span",{class:"resume-modal__required"},"*",-1))]),X(e("input",{"onUpdate:modelValue":r[1]||(r[1]=T=>t(l).phone=T),type:"tel",class:"resume-modal__input",placeholder:t(s)("careers_page.resume_modal.placeholders.phone"),disabled:t(o)},null,8,Yt),[[K,t(l).phone]])]),e("div",Zt,[e("label",Kt,[z(d(t(s)("careers_page.resume_modal.fields.school"))+" ",1),r[10]||(r[10]=e("span",{class:"resume-modal__required"},"*",-1))]),D(Dt,{modelValue:t(l).school,"onUpdate:modelValue":r[2]||(r[2]=T=>t(l).school=T),disabled:t(o)},null,8,["modelValue","disabled"])]),e("div",Qt,[e("label",es,[z(d(t(s)("careers_page.resume_modal.fields.education"))+" ",1),r[11]||(r[11]=e("span",{class:"resume-modal__required"},"*",-1))]),D(B,{"model-value":t(l).education,placeholder:t(s)("careers_page.resume_modal.select_education"),options:t(H),disabled:t(o),"onUpdate:modelValue":q},null,8,["model-value","placeholder","options","disabled"])])]),e("div",ts,[e("label",ss,[z(d(t(s)("careers_page.resume_modal.fields.email"))+" ",1),r[12]||(r[12]=e("span",{class:"resume-modal__required"},"*",-1))]),e("div",ls,[X(e("input",{"onUpdate:modelValue":r[3]||(r[3]=T=>t(l).email=T),type:"email",class:"resume-modal__input resume-modal__input--flex",placeholder:t(s)("careers_page.resume_modal.placeholders.email"),disabled:t(o)},null,8,os),[[K,t(l).email]]),e("button",{class:"resume-modal__code-btn",disabled:t(i)||t(w)>0||t(o),onClick:Y},d(t(w)>0?t(s)("careers_page.resume_modal.send_code_retry",{seconds:t(w)}):t(s)("careers_page.resume_modal.send_code")),9,as)])]),e("div",ns,[e("label",is,[z(d(t(s)("careers_page.resume_modal.fields.verification_code"))+" ",1),r[13]||(r[13]=e("span",{class:"resume-modal__required"},"*",-1))]),X(e("input",{"onUpdate:modelValue":r[4]||(r[4]=T=>t(l).emailCode=T),type:"text",class:"resume-modal__input",placeholder:t(s)("careers_page.resume_modal.placeholders.verification_code"),disabled:t(o)},null,8,rs),[[K,t(l).emailCode]])]),e("div",ds,[e("label",us,[z(d(t(s)("careers_page.resume_modal.fields.resume"))+" ",1),r[14]||(r[14]=e("span",{class:"resume-modal__required"},"*",-1))]),e("div",cs,[e("input",{id:"resume-upload",type:"file",accept:".pdf",class:"resume-modal__upload-input",onChange:V},null,32),e("label",_s,[r[15]||(r[15]=e("svg",{class:"resume-modal__upload-icon",width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.5"},[e("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}),e("polyline",{points:"14 2 14 8 20 8"}),e("line",{x1:"12",y1:"18",x2:"12",y2:"12"}),e("line",{x1:"9",y1:"15",x2:"15",y2:"15"})],-1)),t(l).resumeFile?(v(),f("span",ps,d(t(l).resumeFile.name),1)):(v(),f("span",ms,d(t(s)("careers_page.resume_modal.upload_resume")),1))])])])])]),_:1},8,["modelValue","title"]),D(I,{modelValue:t(j),"onUpdate:modelValue":r[6]||(r[6]=T=>de(j)?j.value=T:null),title:t(s)("careers_page.resume_modal.security_verify"),width:"25rem"},{footer:A(()=>[e("div",ys,d(t(s)("careers_page.resume_modal.verify_tip")),1)]),default:A(()=>[e("div",gs,[D(P,{ref_key:"sliderVerifyRef",ref:F,onSuccess:Z,onFail:J},null,512)])]),_:1},8,["modelValue","title"])],64)}}}),Rs=Object.assign(te(bs,[["__scopeId","data-v-47990469"]]),{__name:"RecruitmentResumeSubmitModal"});export{Vs as J,Rs as R,Ts as a,$s as b,js as c,Ls as d,Ss as f};
