PageSourceSearch

https://www.wedopr.com/assets/HostJoinPage-Bl1I8Mq6.js

js wedopr.com collected 2026-10-07 18:51:34 UTC 9,606 bytes, 1 lines download raw bytes

1import{r as a,j as e,L as C}from"./react-core-DGbc2Y4Q.js";import{H as D,F}from"./render-app-BKEtI_Gz.js";import{B as P}from"./Breadcrumb-Op2r53bp.js";import{S as A}from"./seo-injector-DcbDJuz9.js";import{H,a as n,b as I,c as L,d as R}from"./applications-DvuAiYgL.js";import{A as W,J as q,v as B,aN as J,j as M}from"./icons-vendor-C1hvyZgf.js";import"./index-CzV5y2Z9.js";import"./feedback-vendor-lUOMG4xM.js";import"./radix-vendor-BG8iXauy.js";import"./utils-vendor-DPhhqT8T.js";const c={invalid_name:"請填寫姓名或藝名(80 字以內)。",invalid_email:"請填寫正確的 Email。",invalid_phone:"電話格式過長。",invalid_message:"補充說明請在 1,000 字以內。",invalid_categories:"請至少選擇一種擅長類型。",invalid_videos:"影片連結需以 https:// 開頭,最多 3 支。",consent_required:"請勾選同意聲明。",resume_required:"請上傳履歷 PDF。",resume_too_large:"履歷檔案請在 10MB 以內。",resume_not_pdf:"履歷需為 PDF 檔。",captcha_failed:"人機驗證未通過,請重新驗證後再送出。",rate_limited:"送出次數過多,請 10 分鐘後再試。"};function ee(){const[x,y]=a.useState([]),[r,b]=a.useState(null),[g,v]=a.useState(!1),[u,j]=a.useState(!1),[N,l]=a.useState(""),[T,k]=a.useState(!1),[o,w]=a.useState(null),[p,f]=a.useState(""),m=a.useRef(null),h=a.useRef(null);a.useEffect(()=>{fetch("/api/host-applications",{cache:"no-store"}).then(t=>t.ok?t.json():null).then(t=>w((t==null?void 0:t.turnstileSiteKey)||null)).catch(()=>w(null))},[]),a.useEffect(()=>{if(!o||!m.current)return;const t=()=>{!window.turnstile||!m.current||h.current||(h.current=window.turnstile.render(m.current,{sitekey:o,language:"zh-tw",callback:f,"expired-callback":()=>f("")}))};if(window.turnstile)t();else{const s=document.createElement("script");s.src="https://challenges.cloudflare.com/turnstile/v0/api.js?render=explicit",s.async=!0,s.onload=t,document.head.appendChild(s)}},[o]);const E=t=>y(s=>s.includes(t)?s.filter(i=>i!==t):[...s,t]),S=t=>{if(l(""),!t)return b(null);if(t.type&&t.type!=="application/pdf")return l(c.resume_not_pdf);if(t.size>R)return l(c.resume_too_large);b(t)},O=async t=>{if(t.preventDefault(),l(""),!x.length)return l(c.invalid_categories);if(!r)return l(c.resume_required);if(!g)return l(c.consent_required);if(o&&!p)return l("請先完成人機驗證。");const s=new FormData(t.currentTarget);s.delete("categories"),x.forEach(i=>s.append("categories",i)),s.set("resume",r),s.set("consent","yes"),p&&s.set("cf-turnstile-response",p),j(!0);try{const i=await fetch("/api/host-applications",{method:"POST",body:s});if(i.ok){k(!0),window.scrollTo({top:0});return}const _=await i.json().catch(()=>({}));l(c[_.error]||"暫時無法送出,請稍後再試。"),_.error==="captcha_failed"&&window.turnstile&&(window.turnstile.reset(h.current||void 0),f(""))}catch{l("暫時無法送出,請稍後再試。")}finally{j(!1)}},d="mt-1.5 w-full rounded-lg border border-[#d9d4ca] bg-white px-3.5 py-2.5 text-[15px] outline-none focus:border-[#1f2a24] focus:ring-2 focus:ring-[#1f2a24]/10";return e.jsxs("div",{className:"flex min-h-screen flex-col bg-[#fbfaf7] text-[#1f2a24]",children:[e.jsx(A,{title:n.title,socialTitle:n.socialTitle,socialDescription:n.socialDescription,description:n.description,image:n.image,imageWidth:n.imageWidth,imageHeight:n.imageHeight,imageAlt:n.imageAlt,url:`https://www.wedopr.com${H}`}),e.jsx(D,{}),e.jsxs("section",{className:"relative min-h-[440px] overflow-hidden bg-[#17231f] md:min-h-[500px]",children:[e.jsx("img",{src:n.hero,alt:n.heroAlt,width:"1376",height:"768",loading:"eager",decoding:"sync",className:"absolute inset-0 h-full w-full object-cover"}),e.jsx("div",{className:"absolute inset-0 bg-linear-to-t from-[#17231f] via-[#17231f]/65 to-[#17231f]/15"}),e.jsxs("div",{className:"relative z-10 container mx-auto flex min-h-[440px] max-w-6xl flex-col justify-end px-6 pb-12 md:min-h-[500px] md:pb-16",children:[e.jsxs("div",{className:"mb-5 flex items-center gap-3",children:[e.jsx("div",{className:"h-px w-8 bg-[#d9b66f]"}),e.jsx("span",{className:"text-xs font-semibold uppercase tracking-[0.22em] text-[#d9b66f]",children:"Join WEDO Hosts"})]}),e.jsx("h1",{className:"mb-5 text-4xl font-bold leading-[1.1] tracking-tight text-white md:text-6xl",children:"加入 WEDO 主持人"}),e.jsx("p",{className:"max-w-2xl text-base leading-relaxed text-slate-200 md:text-xl",children:"記者會、典禮、尾牙、展覽與品牌活動,上傳你的履歷 PDF 與主持影片,WEDO 擇優上線主持人專區,並在活動提案中推薦你。"}),e.jsx("div",{className:"mt-7 flex flex-col gap-3 sm:flex-row",children:e.jsxs("a",{href:"#apply",className:"inline-flex items-center justify-center rounded-full bg-[#d9b66f] px-6 py-3 text-sm font-bold text-[#17231f] transition-colors hover:bg-[#e5c986]",children:["投遞履歷 ",e.jsx(W,{className:"ml-2 h-4 w-4"})]})})]})]}),e.jsxs("main",{id:"apply",className:"container mx-auto w-full max-w-2xl flex-1 scroll-mt-20 px-5 pb-16 pt-8 md:pb-20",children:[e.jsx(P,{items:[{label:"首頁",href:"/"},{label:"加入 WEDO 主持人"}]}),T?e.jsxs("section",{className:"mt-6 rounded-2xl bg-white p-8 text-center shadow-sm ring-1 ring-black/5",children:[e.jsx(q,{className:"mx-auto h-12 w-12 text-[#2f6b4f]","aria-hidden":"true"}),e.jsx("h2",{className:"mt-4 text-2xl font-black",children:"已收到你的履歷"}),e.jsx("p",{className:"mt-3 text-[#5f6a61]",children:"謝謝你!WEDO 會審閱你的資料,選定上線主持人專區時,我們會以 Email 與你聯繫。"}
1),e.jsx(C,{to:"/",className:"mt-8 inline-block rounded-full bg-[#1f2a24] px-6 py-2.5 text-sm font-bold text-white",children:"回到 WEDO 首頁"})]}):e.jsxs(e.Fragment,{children:[e.jsx("h2",{className:"mt-6 text-2xl font-black md:text-3xl",children:"投遞主持人履歷"}),e.jsx("p",{className:"mt-3 text-[#5f6a61]",children:"填寫基本資料、選擇擅長類型並上傳履歷 PDF,約 3 分鐘完成。"}),e.jsxs("form",{onSubmit:O,className:"mt-8 space-y-6 rounded-2xl bg-white p-6 shadow-sm ring-1 ring-black/5 md:p-8",noValidate:!0,children:[e.jsxs("div",{className:"grid gap-5 md:grid-cols-2",children:[e.jsxs("label",{className:"block text-sm font-bold",children:["姓名/藝名 ",e.jsx("span",{className:"text-[#b3261e]",children:"*"}),e.jsx("input",{name:"name",required:!0,maxLength:80,autoComplete:"name",className:d})]}),e.jsxs("label",{className:"block text-sm font-bold",children:["Email ",e.jsx("span",{className:"text-[#b3261e]",children:"*"}),e.jsx("input",{name:"email",type:"email",required:!0,maxLength:254,autoComplete:"email",className:d})]}),e.jsxs("label",{className:"block text-sm font-bold md:col-span-2",children:["手機(選填)",e.jsx("input",{name:"phone",type:"tel",maxLength:40,autoComplete:"tel",className:d})]})]}),e.jsxs("fieldset",{children:[e.jsxs("legend",{className:"text-sm font-bold",children:["擅長類型 ",e.jsx("span",{className:"text-[#b3261e]",children:"*"}),e.jsx("span",{className:"ml-2 font-normal text-[#5f6a61]",children:"可複選"})]}),e.jsx("div",{className:"mt-3 flex flex-wrap gap-2",children:I.map(t=>{const s=x.includes(t);return e.jsx("button",{type:"button","aria-pressed":s,onClick:()=>E(t),className:`rounded-full border px-4 py-1.5 text-sm transition ${s?"border-[#1f2a24] bg-[#1f2a24] text-white":"border-[#d9d4ca] bg-white hover:border-[#1f2a24]"}`,children:t},t)})})]}),e.jsxs("fieldset",{children:[e.jsx("legend",{className:"text-sm font-bold",children:"主持影片連結(選填,最多 3 支)"}),[0,1,2].map(t=>e.jsx("input",{name:"videos",type:"url",inputMode:"url",maxLength:300,placeholder:"https://youtu.be/…",className:d},t))]}),e.jsxs("div",{children:[e.jsxs("span",{className:"text-sm font-bold",children:["履歷 PDF ",e.jsx("span",{className:"text-[#b3261e]",children:"*"}),e.jsx("span",{className:"ml-2 font-normal text-[#5f6a61]",children:"10MB 以內"})]}),e.jsxs("label",{className:"mt-2 flex cursor-pointer items-center gap-3 rounded-xl border-2 border-dashed border-[#d9d4ca] bg-[#fbfaf7] px-4 py-5 hover:border-[#1f2a24]",children:[r?e.jsx(B,{className:"h-6 w-6 shrink-0","aria-hidden":"true"}):e.jsx(J,{className:"h-6 w-6 shrink-0","aria-hidden":"true"}),e.jsx("span",{className:"min-w-0 text-sm",children:r?e.jsxs(e.Fragment,{children:[e.jsx("b",{className:"block truncate",children:r.name}),e.jsxs("span",{className:"text-[#5f6a61]",children:[(r.size/1024/1024).toFixed(1)," MB|點此更換"]})]}):"點此選擇 PDF 檔"}),e.jsx("input",{type:"file",accept:"application/pdf,.pdf",className:"sr-only",onChange:t=>{var s;return S(((s=t.target.files)==null?void 0:s[0])||null)}})]})]}),e.jsxs("label",{className:"block text-sm font-bold",children:["補充說明(選填)",e.jsx("textarea",{name:"message",rows:4,maxLength:1e3,className:d,placeholder:"例如:可主持語言、常駐地區、代表活動"})]}),e.jsxs("label",{className:"flex items-start gap-3 rounded-xl bg-[#f4f1ea] p-4 text-sm leading-relaxed",children:[e.jsx("input",{type:"checkbox",checked:g,onChange:t=>v(t.target.checked),className:"mt-1 h-4 w-4 shrink-0"}),e.jsx("span",{children:L})]}),o?e.jsx("div",{ref:m}):null,N?e.jsx("p",{role:"alert",className:"rounded-lg bg-[#fdecea] px-4 py-3 text-sm text-[#8a1c14]",children:N}):null,e.jsxs("button",{type:"submit",disabled:u,className:"flex w-full items-center justify-center gap-2 rounded-full bg-[#1f2a24] px-6 py-3.5 font-bold text-white disabled:opacity-60",children:[u?e.jsx(M,{className:"h-5 w-5 animate-spin","aria-hidden":"true"}):null,u?"上傳中…":"送出履歷"]})]})]})]}),e.jsx(F,{})]})}export{ee 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.