PageSourceSearch

https://zhenchengoffer.com/assets/ProjectBoardPanel-D_Zbtu5i.js

js zhenchengoffer.com collected 2026-10-02 01:54:24 UTC 140,180 bytes, 1,107 lines download raw bytes

1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/workbench-shared-DT5eicUP.js","assets/react-BGHvZxdX.js","assets/ProjectBoardReadingView-XH0fVlBB.js","assets/WorkbenchApp-CJyShsB2.js","assets/index-hkmirror2.js","assets/index-ufWW_WUE.css","assets/WorkbenchApp-CN-Y3-JI.css","assets/reset-BDNOyzxu.css","assets/companyLibraryCatalog-WLapjGOZ.js","assets/aShareCompanyBranding-C9JHwhEU.js","assets/platformLogos-ClErIF11.js","assets/industryChainSamples-C10bjeVs.js","assets/opportunityEmployerPlaceholderCovers-B2a8NgQp.js","assets/opportunityLibraryApi-BZ0ZJQUD.js","assets/mobileModalHost-zPZ6YgSa.js","assets/opportunityLibraryApi-BV--1KZq.css","assets/AShareCompanyBrandMark-Cq1TSmkK.js","assets/index-DSi_yZ-h.js","assets/demoQuickResumeGrowthOpsJd-DtHfRQUE.js","assets/demoQuickResumeShowcase-PfBsrRkM.js","assets/quickResumeDemoExtract-7RLnH5kA.js","assets/archiveBulkSelect-zQhVzkGD.js","assets/demoQuickResumeShowcaseMeta-CCYMF3ds.js","assets/demoQuickPortfolioShowcase-B4vKbS-A.js","assets/websiteLayout-0PfeSYth.js","assets/glacierThemeColors-C4T_pxim.js","assets/portfolioLinkResolver-kjWU4NEk.js","assets/portfolioAssetThumbnail-BTlvYhce.js","assets/index-Blo1azGd.js","assets/index-BQbAbEPf.js","assets/jdPrepResumePdfPreview-C_yANH_h.js","assets/ResumeA4Content-C04H0eb2.js","assets/resumeExperienceSections-DttCzG6j.js","assets/ResumeEmbeddedHit-SahfrUXp.js","assets/resumeEmbeddedHits-0XSFbwNE.js","assets/ResumeTemplate-dxufR599.js","assets/zcAgentApi-CzpYZxMn.js","assets/EmailConfigModal-vHPo8i3G.js","assets/ProfileVersionConfigDrawer-CZzOgQLF.js","assets/PersonalArchiveLibraryModule-BzH_2v1t.js","assets/ProfileMgmtEntryCard-DExbxrne.js","assets/profileMgmtMonoTheme-1lR1c8qN.js","assets/ProfileArchiveTabBody-BccEwdJc.js","assets/profileMgmtMono-NCKEK7uD.css","assets/ProfileMgmtSectionTabsBar-whwNNjQC.js","assets/jdBoardTheme-DFysMQIA.js","assets/syncPoolChannelsIntoHubPrefs-7gexdmjp.js","assets/channelHubNavIds-C4F5HE8y.js","assets/ChannelCredentialVaultGuideBody-CPPUosp8.js","assets/zcAgentFeature-CvTd6BaG.css","assets/channelNavCarrier-D4SbQqNa.js","assets/discoveryChannelUtils-CfkIjWg2.js","assets/evaluationSsgpPack-Cg7hqy4B.js","assets/buildAbcdReferenceBindings-Bkdh7LWF.js","assets/quickResumeDecisionDimensionMeta-CqRCwY33.js","assets/quickResumeDecisionDimensionWeights-CJtVf-7e.js","assets/abcdPrepCatalog-CAneVTDN.js","assets/buildAbcdReferenceBindings-D71UeX0o.css","assets/abcdReportActionLabels-DrSEGddl.js","assets/prepCardBridge-CCCxSI5Z.js","assets/reportTableTheme-BoPvo3oZ.js","assets/reportTableTheme-Drcy-mU4.css","assets/evaluationSsgpPack-BeZy1_cn.css","assets/prepFeature-BrzolKX5.css","assets/promptSwitchToAccountMode-BfdWY4Z3.js","assets/PortfolioGlacierModal-CDt-rUUG.js","assets/websitePortfolioContent-Ow03Kc7l.js","assets/assetPrepCardApi-Dk0MfgP2.js","assets/RichTextEditor-slhb2TYT.js","assets/index-CCjgVym0.js","assets/channelLangBadge-M838eGrn.js","assets/ProjectBoardReadingView-BA-73NHw.css","assets/careerOpportunityFeature-CYY81Ir5.css","assets/PortfolioAssetStackPreview-ClI24nJ7.js","assets/PortfolioAssetPreviewHost-Bib33M3q.js","assets/PrepPortfolioMindmapPreview-CP3m4HR9.js","assets/PrepPortfolioMindmapPreview-DqLDtADk.css","assets/portfolioAssetVisuals-S6aIEk8m.js","assets/portfolioChatGenerate-DRnEdugi.js","assets/collectionBoardExport-DMuS_owI.js"])))=>i.map(i=>d[i]);
2import{T as Ga,R as Ya,b as qa,b4 as Qa,b3 as ua,aD as Xa,j as qe,b2 as Za,aq as eo,s as x,S as We,de as to,bg as qt,i as Q,ao,M as Xe,_ as ze,gA as Me,ab as gt,q as U,a4 as oo,a5 as no,a2 as Qt,gB as so,fz as io,I as ro,ck as lo,a as Xt,gb as co,gc as po,gC as fo,bj as Zt,ac as Nt,ad as Qe,bT as bo,gt as mo,gu as ho,m as mt,bU as uo,l as ga,gn as Ot,gD as Dt,gE as go,bF as xa,gF as xo,gG as yo,gH as wo,gI as jo,gJ as ya,gK as vo,gL as ko,bY as _o,Y as wa,bN as So,bS as Co,bR as Po,bO as Io,dQ as To,g as ja,c as Ro,bn as Lo,gM as Ao,gN as zo,fM as Ae,fN as Eo,cg as No,D as Oo,B as rt,cq as ea,a0 as At,fO as Do,bk as Bt,gO as ta,bd as Bo,Z as $o,U as Ce,an as aa,bf as oa,al as Fo,f1 as Mo,av as Wo,fP as Ho,af as Jo,gP as Ko,gQ as Uo,gR as Vo,gS as Go,gT as na,fQ as sa,gr as Yo,f_ as ia,gU as qo,gV as Qo}
2from"./workbench-shared-DT5eicUP.js";import{r as n,j as e,R as Xo}from"./react-BGHvZxdX.js";import"./portfolioLinkResolver-kjWU4NEk.js";import{p as Zo,f as $t,m as en}from"./index-DSi_yZ-h.js";import{C as tn,j as an,k as on,m as nn,n as sn,o as rn,h as ln,e as va,P as dn,J as cn,f as pn}from"./ProjectBoardReadingView-XH0fVlBB.js";import{N as fn,E as bn,P as mn,a as hn,C as un,L as gn}from"./PersonalInfo-EMLYxMya.js";import{SkillSection as xn}from"./SkillsPage-CXxKAR1X.js";import{CompanyProjectSectionsSplit as yn}from"./ExperienceChannels-DRH0RbKi.js";import{EducationSection as wn}from"./EducationPage-BIEsDhvO.js";import{SelfIntroPanel as jn}from"./SelfIntroPage-DyFevDKC.js";import{JobIntentPanel as vn}from"./JobIntentPage-DtVXqFrs.js";import{JobStatusPanel as kn}from"./JobStatusPanel-9CHgIk1n.js";import{IntendedCityPanel as _n}from"./IntendedCityPanel-CF2eNEe-.js";import{IntendedJobTypePanel as Sn}from"./IntendedJobTypePanel-BMQFOfqy.js";import"./ProfileArchiveReportContext-CErZwouw.js";import"./archiveBulkSelect-zQhVzkGD.js";import"./index-CCjgVym0.js";import"./quickResumeDecisionReport-C38JHf_j.js";import{S as Cn}from"./StableModuleTabBar-CCm_iC66.js";import{w as Pn}from"./workbenchBlue-D5oyejUh.js";import{t as In,v as Tn,x as Rn,q as Ln}from"./WorkbenchApp-CJyShsB2.js";import{loadAssemblyPreviewSnapshot as An}from"./loadAssemblyPreviewSnapshot-DbY_BZPV.js";import{ResumeMiniThumb as zn}from"./ResumeLibraryPage-XT37F_qb.js";import{a as En}from"./PdfViewer-wu90SOis.js";import Nn from"./ResumeA4Content-C04H0eb2.js";import"./ResumeTemplate-BaSYJdAB.js";import{P as On,p as Dn}from"./PortfolioAssetPreviewHost-Bib33M3q.js";import Bn from"./PortfolioBindingPreviewHost-FIo31Apn.js";import{C as $n}from"./CertolandOfficialTemplate-Baskfdz9.js";import{T as xt,a as Fn,c as lt,b as Mn,D as Wn,d as Hn,C as Jn}from"./collectionBoardExport-DMuS_owI.js";import{n as Kn}from"./websitePortfolioContent-Ow03Kc7l.js";import{o as Un,a as Vn}from"./PortfolioAssetStackPreview-ClI24nJ7.js";import{P as Gn}from"./PortfolioSelectedVersionPreviewGrid-DESPPQ7I.js";import Yn from"./MascotEagle-DaR3bjA1.js";import{g as qn}from"./jdBoardTheme-DFysMQIA.js";import{c as Qn}from"./glacierThemeColors-C4T_pxim.js";import{h as Ye}from"./discoveryChannelUtils-CfkIjWg2.js";import{isDemoOnlyBrowseMode as Xn,promptSwitchToAccountMode as Zn,guardDemoOnlyAction as dt}from"./promptSwitchToAccountMode-BfdWY4Z3.js";import{a as ka,k as ht,D as ut,L as es}from"./index-hkmirror2.js";import{F as ts,d as as}from"./evaluationSsgpPack-Cg7hqy4B.js";import{f as os,c as ns,h as ss,j as is,g as rs,J as ra}from"./syncPoolChannelsIntoHubPrefs-7gexdmjp.js";/* empty css                        */const{Text:Pi}=Ga,ls="#007AFF",la="asset-package-tabs-shell-css-v2";let da="";function ds(a,p){if(typeof document>"u")return;const c=`${a}|${p?1:0}`;let i=document.getElementById(la);i&&da===c||(document.getElementById("asset-package-tabs-shell-css")?.remove(),i||(i=document.createElement("style"),i.id=la,document.head.appendChild(i)),da=c,i.textContent=`
3                .asset-package-tabs-shell .sub-tabs > .ant-tabs-nav::before {
4                    display: none !important;
5                }
6                .asset-package-tabs-shell .sub-tabs > .ant-tabs-nav {
7                    position: static !important;
8                    top: auto !important;
9                    z-index: auto !important;
10                    margin: 0 0 20px 0 !important;
11                    padding: 0 0 10px 0 !important;
12                    display: flex !important;
13                    justify-content: center !important;
14                    background: #ffffff !important;
15                    backdrop-filter: none !important;
16                    -webkit-backdrop-filter: none !important;
17                    border-bottom: 1px solid rgba(0,0,0,0.04) !important;
18                    box-shadow: none !important;
19                }
20                .asset-package-tabs-shell--split .sub-tabs > .ant-tabs-nav {
21                    margin: 0 0 12px 0 !important;
22                    padding: 0 0 10px 0 !important;
23                    border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
24                }
25                .asset-package-tabs-shell .sub-tabs > .ant-tabs-nav .ant-tabs-nav-wrap {
26                    flex: 1 1 auto !important;
27                    width: 100% !important;
28                    min-width: 0 !important;
29                    overflow: visible !important;
30                    background: transparent !important;
31                    border-radius: 0 !important;
32                    padding: 0 !important;
33                    justify-content: stretch !important;
34                }
35                .asset-package-tabs-shell .sub-tabs > .ant-tabs-nav .ant-tabs-nav-list {
36                    display: flex !important;
37                    width: 100% !important;
38                    justify-content: stretch !important;
39                }
40                .asset-package-tabs-shell .sub-tabs > .ant-tabs-nav .ant-tabs-tab {
41                    flex: 1 1 0 !important;
42                    justify-content: center !important;
43                    padding: 8px 4px !important;
44                    font-size: 15px !important;
45                    font-weight: 600 !important;
46                    color: #64748b !important;
47                    margin: 0 !important;
48                    text-align: center !important;
49                    border-radius: 0 !important;
50                    border: none !important;
51                    background: transparent !important;
52                    transition: none !important;
53                    border-bottom: 2px solid transparent !important;
54                }
55                .asset-package-tabs-shell .sub-tabs > .ant-tabs-nav .ant-tabs-tab .ant-tabs-tab-btn {
56                    width: 100% !important;
57                    text-align: center !important;
58                    font-size: 15px !important;
59                    font-weight: 600 !important;
60                }
61                .asset-package-tabs-shell .sub-tabs > .ant-tabs-nav .ant-tabs-tab.ant-tabs-tab-active {
62                    color: ${a} !important;
63                    border-bottom: 2px solid ${a} !important;
64                    background: transparent !important;
65                    box-shadow: none !important;
66                }
67                .asset-package-tabs-shell .sub-tabs > .ant-tabs-nav .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {
68                    color: ${a} !important;
69                    font-weight: 700 !important;
70                }
71                .asset-package-tabs-shell .sub-tabs > .ant-tabs-nav .ant-tabs-tab:hover,
72                .asset-package-tabs-shell .sub-tabs > .ant-tabs-nav .ant-tabs-tab:hover .ant-tabs-tab-btn {
73                    color: #1d1d1f !important;
74                }
75                .asset-package-tabs-shell .sub-tabs > .ant-tabs-nav .ant-tabs-ink-bar {
76                    display: none !important;
77                }
78            `)}function ca({bodiesRef:a,tabKey:p,revision:c}){const i=a.current[p],l=typeof i=="function"?i():i??null;return e.jsx("div",{className:"asset-tab-body","data-tab":p,children:l})}function _a({items:a,activeKey:p,onChange:c,accentColor:i=ls,containerStyle:l,tabsStyle:f,tabBarStyle:m,splitLayout:j=!1,destroyInactiveTabPane:E=!0,activeOnlyBodies:y=!0,contentRevision:w=0,compactTabs:u=!1}){typeof window<"u"&&window.localStorage.getItem("debug/assembly-flicker")==="1"&&console.info("[FLICKER] AssetPackageTabs render",{activeKey:p,contentRevision:String(w).slice(0,80),itemKeys:a.map(C=>C.key).join("|")});const T=`asset-package-tabs-shell${j?" asset-package-tabs-shell--split":""}`,[v,S]=n.useState(p||a[0]?.key||"profile");n.useEffect(()=>{p!=null&&S(p)}
78,[p]);const d=p??v;n.useEffect(()=>{ds(i,j)},[i,j]);const _=a.map(C=>C.key).join("|"),R=n.useRef({}),V=n.useRef({});a.forEach(C=>{R.current[C.key]=C.children,V.current[C.key]=C.label});const W=n.useMemo(()=>_.split("|").filter(Boolean),[_]);return e.jsxs("div",{className:T,style:l,children:[e.jsx(Cn,{className:"sub-tabs asset-package-stable-tabs",activeKey:d,onChange:C=>{p==null&&S(C),c?.(C)},items:W.map(C=>({key:C,label:V.current[C]})),accentColor:i,compact:u,style:{marginBottom:u?8:20,...m}}),e.jsx("div",{className:"asset-package-stable-tab-body",style:f,children:y?d?e.jsx(ca,{bodiesRef:R,tabKey:d,revision:w}):null:W.map(C=>e.jsx("div",{style:{display:d===C?"block":"none"},children:e.jsx(ca,{bodiesRef:R,tabKey:C,revision:w})},C))})]})}function cs(a,p){if(a.activeKey!==p.activeKey||a.contentRevision!==p.contentRevision||a.accentColor!==p.accentColor||a.splitLayout!==p.splitLayout||a.destroyInactiveTabPane!==p.destroyInactiveTabPane||a.activeOnlyBodies!==p.activeOnlyBodies||a.compactTabs!==p.compactTabs)return!1;const c=a.items.map(l=>l.key).join("|"),i=p.items.map(l=>l.key).join("|");return c===i}const Ii=Xo.memo(_a,cs);function ps({workbenchBlue:a,previewTab:p,onPreviewTabChange:c,previewSnapshot:i,profileNames:l,profileEmails:f,profilePhones:m,profilePhotos:j,profileCities:E,profileLinks:y,profileDetail:w}){return e.jsxs("div",{className:"preview-readonly-container",style:{height:"calc(100vh - 120px)",overflowY:"auto",paddingRight:4},children:[e.jsx("style",{children:`
79                .preview-readonly-container .ant-tabs-nav {
80                    pointer-events: auto !important;
81                }
82                .preview-readonly-container .ant-tabs-content-holder,
83                .preview-readonly-container .ant-tabs-content {
84                    pointer-events: none !important;
85                }
86            `}),e.jsx(_a,{accentColor:a.main,activeKey:p,onChange:c,items:[{key:"profile",label:"个人信息",children:()=>e.jsxs("div",{style:{paddingTop:0},children:[e.jsx(fn,{isQuickResumeMode:!0,accentColor:a.main,prefetchedData:l,disableFetch:!0,selectedRowKeys:i.selectedNameIds,onSelectionChange:()=>{},quickResumeProps:{label:"姓名信息",enLabel:"NAME SETTINGS",icon:e.jsx(Ya,{style:{fontSize:18,color:a.main}}),mapToCard:u=>({versionName:{formal:"正式中文名",nickname:"昵称",english:"英文简历名"}[u.nameType]||u.nameType||"未知",content:u.name})}}),e.jsx(bn,{isQuickResumeMode:!0,accentColor:a.main,prefetchedData:f,disableFetch:!0,selectedRowKeys:i.selectedEmailIds,onSelectionChange:()=>{},quickResumeProps:{label:"邮箱设置",enLabel:"EMAIL SETTINGS",icon:e.jsx(qa,{style:{fontSize:18,color:a.main}}),mapToCard:u=>({versionName:u.purpose||"未知类型",content:u.email})}}),e.jsx(mn,{isQuickResumeMode:!0,accentColor:a.main,prefetchedData:m,disableFetch:!0,selectedRowKeys:i.selectedPhoneIds,onSelectionChange:()=>{},quickResumeProps:{label:"手机号码",enLabel:"PHONE SETTINGS",icon:e.jsx(Qa,{style:{fontSize:18,color:a.main}}),mapToCard:u=>({versionName:u.phoneType||"未知类型",content:u.phone})}}),e.jsx(hn,{isQuickResumeMode:!0,accentColor:a.main,prefetchedData:j,disableFetch:!0,selectedRowKeys:i.selectedPhotoId!=null?[i.selectedPhotoId]:[],onSelectionChange:()=>{},quickResumeProps:{label:"照片",enLabel:"PHOTO SETTINGS",icon:e.jsx(ua,{style:{fontSize:18,color:a.main}}),mapToCard:u=>({versionName:u.photoType||"类型",content:u.originalName||"已上传照片"})}}),e.jsx(un,{isQuickResumeMode:!0,accentColor:a.main,prefetchedData:E,disableFetch:!0,selectedRowKeys:i.selectedCityIds,onSelectionChange:()=>{},quickResumeProps:{label:"国家/城市",enLabel:"LOCATION SETTINGS",icon:e.jsx(Xa,{style:{fontSize:18,color:a.main}}),mapToCard:u=>({versionName:u.cityType||"城市",content:u.city})}}),e.jsx(gn,{isQuickResumeMode:!0,accentColor:a.main,prefetchedData:y,disableFetch:!0,selectedRowKeys:i.selectedLinkIds,onSelectionChange:()=>{},quickResumeProps:{label:"社交链接",enLabel:"SOCIAL LINKS",icon:e.jsx(qe,{style:{fontSize:18,color:a.main}}),mapToCard:u=>({versionName:u.platform?u.platform.charAt(0).toUpperCase()+u.platform.slice(1):"链接",content:u.url})}}),(()=>{const u=i?.cards?.filter(v=>v.id.startsWith("profile:detail:")&&(v.selectedForResume||v.selectedForProfile))?.map(v=>v.id)||[];if(u.length===0)return null;const T=[];return w&&(w.birthDate&&u.includes("profile:detail:age")&&T.push({id:"profile:detail:age",label:"出生日期",val:w.birthDate}),w.gender&&u.includes("profile:detail:gender")&&T.push({id:"profile:detail:gender",label:"性别",val:w.gender}),w.startWorkYear&&u.includes("profile:detail:startWorkYear")&&T.push({id:"profile:detail:startWorkYear",label:"工作年限",val:`${new Date().getFullYear()-parseInt(w.startWorkYear,10)}年经验`}
86),w.politicalStatus&&u.includes("profile:detail:politicalStatus")&&T.push({id:"profile:detail:politicalStatus",label:"政治面貌",val:w.politicalStatus}),w.degree&&u.includes("profile:detail:degree")&&T.push({id:"profile:detail:degree",label:"最高学历",val:w.degree}),w.nationality&&u.includes("profile:detail:nationality")&&T.push({id:"profile:detail:nationality",label:"国籍",val:w.nationality})),T.length===0?null:e.jsxs("div",{style:{marginTop:24,borderTop:"1px solid rgba(0,0,0,0.06)",paddingTop:24},children:[e.jsx("div",{style:{marginBottom:16},children:e.jsx("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx("div",{style:{width:36,height:36,borderRadius:10,background:a.iconBg,display:"flex",alignItems:"center",justifyContent:"center"},children:e.jsx(Za,{style:{fontSize:18,color:a.main}})}),e.jsx("div",{children:e.jsx("div",{style:{fontSize:15,fontWeight:600,color:"#1d1d1f",lineHeight:1.2},children:"基本要素配置"})})]})})}),e.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(220px, 1fr))",gap:12},children:T.map(v=>e.jsx("div",{style:{...a.detailCardSelected,borderRadius:12,padding:"10px 14px",display:"flex",alignItems:"center",minWidth:0,boxSizing:"border-box"},children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,flex:1,minWidth:0},children:[e.jsx(eo,{style:{color:a.main,fontSize:16,flexShrink:0}}),e.jsxs("div",{style:{flex:1,minWidth:0},children:[e.jsx("div",{style:{fontSize:10,color:"#86868b",marginBottom:2},children:v.label}),e.jsx("div",{style:{fontSize:13,fontWeight:600,color:"#1d1d1f",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:v.val})]})]})},v.id))})]})})()]})},{key:"skills",label:"知识技能",children:()=>e.jsx("div",{style:{paddingTop:0},children:e.jsx(xn,{isQuickResumeMode:!0,stackSubTabs:!0,accentColor:a.main,selectedSkillIds:i.selectedSkillIds,onSelectionChange:()=>{}})})},{key:"exp",label:"工作经验",children:()=>e.jsx("div",{style:{paddingTop:0},children:e.jsx(yn,{isQuickResumeMode:!0,accentColor:a.main,selectedWorkIds:i.selectedExpIds,onSelectionChange:()=>{}})})},{key:"edu",label:"教育经历",children:()=>e.jsx("div",{style:{paddingTop:0},children:e.jsx(wn,{isQuickResumeMode:!0,accentColor:a.text||a.main,selectedEduIds:i.selectedEduIds,onSelectionChange:()=>{}})})},{key:"intro",label:"自我介绍",children:()=>e.jsx("div",{style:{paddingTop:0},children:e.jsx(jn,{label:"自我介绍",subLabel:"浓缩个人核心亮点,用于简历开头简述、网申履历的自我评价",isQuickResumeMode:!0,selectedRowKeys:i.selectedSelfIntroIds,onSelectionChange:()=>{},accentColor:a.main})})},{key:"intent",label:"求职意向",children:()=>e.jsx("div",{style:{paddingTop:0},children:e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16},children:[e.jsx(vn,{isQuickResumeMode:!0,selectedRowKeys:i.selectedJobIntentIds,onSelectionChange:()=>{},accentColor:a.main}),e.jsx(kn,{isQuickResumeMode:!0,selectedRowKeys:i.selectedJobStatusIds,onSelectionChange:()=>{},accentColor:a.main}),e.jsx(_n,{isQuickResumeMode:!0,selectedRowKeys:i.selectedIntendedCityIds,onSelectionChange:()=>{},accentColor:a.main}),e.jsx(Sn,{isQuickResumeMode:!0,selectedRowKeys:i.selectedIntendedJobTypeIds,onSelectionChange:()=>{},accentColor:a.main})]})})}]})]})}function fs({preview:a}){const[p,c]=n.useState("profile"),[i,l]=n.useState(!1),[f,m]=n.useState(null),[j,E]=n.useState([]),[y,w]=n.useState([]),[u,T]=n.useState([]),[v,S]=n.useState([]),[d,_]=n.useState([]),[R,V]=n.useState([]),[W,C]=n.useState(null);return n.useEffect(()=>{In()},[]),n.useEffect(()=>{let ae=!1;return(async()=>{const $=Tn();if($?.profileNames){E($.profileNames),w($.profileEmails||[]),T($.profilePhones||[]),S($.profilePhotos||[]),_($.profileCities||[]),V($.profileLinks||[]),C($.profileDetail??null);return}const X=await Rn();ae||(E(X.profileNames),w(X.profileEmails),T(X.profilePhones),S(X.profilePhotos),_(X.profileCities),V(X.profileLinks),C(X.profileDetail))})(),()=>{ae=!0}},[]),n.useEffect(()=>{if(!a){m(null),c("profile");return}let ae=!1;return l(!0),c("profile"),An(a.id,a.dataType,a.name).then(ie=>{if(!ae){if(!ie){x.error("加载匹配档案失败"),m(null);return}m(ie)}}).catch(()=>{ae||(x.error("加载档案数据出错"),m(null))}).finally(()=>{ae||l(!1)}),()=>{ae=!0}},[a]),i?e.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"300px"},children:e.jsx(We,{size:"large",tip:"正在加载档案数据..."})}):!a||!f?null:e.jsx(ps,{workbenchBlue:Pn,previewTab:p,onPreviewTabChange:c,previewSnapsh
86ot:f,profileNames:j,profileEmails:y,profilePhones:u,profilePhotos:v,profileCities:d,profileLinks:R,profileDetail:W})}function bs(a){if(!a?.layoutConfig)return{};try{return typeof a.layoutConfig=="string"?JSON.parse(a.layoutConfig):a.layoutConfig}catch{return{}}}function ms(a){return{margin:"0 auto",background:"#ffffff",backgroundColor:"#ffffff",boxShadow:"0 8px 24px rgba(0, 0, 0, 0.04), 0 0 0 1px rgba(0, 0, 0, 0.02)",...to(a)}}function hs(a){return a.locale?a.locale:a.resumeType?.includes("英文")?"en":"zh"}function us({record:a,maxHeight:p="min(640px, 58vh)",fitWidth:c=!0,scale:i=.48,expandFull:l=!1}){const f=bs(a),m=hs(a),j=!!a.resumeData,E=!!(a.generatedHtml&&a.generatedHtml.length>50),y=a.filePath?.toLowerCase().endsWith(".pdf");return j||E?e.jsx("div",{className:"saved-resume-preview",style:{...l?{}:{maxHeight:p,minHeight:c?360:120},overflow:l?"visible":"auto",background:"#f5f5f7",borderRadius:10,border:"1px solid rgba(0, 0, 0, 0.06)"},children:e.jsx("div",{className:"resume-preview-wrapper",style:{padding:c?"16px 12px 32px":"12px 8px 20px",overflow:l?"visible":"auto",display:"flex",justifyContent:"center",alignItems:"flex-start"},children:e.jsx("div",{className:"resume-a4",style:{...ms(f),...c?{width:"100%",maxWidth:"100%",transform:"none"}:{transform:`scale(${i})`,transformOrigin:"top center"},transition:c?void 0:"transform 0.2s ease"},children:j?e.jsx(Nn,{data:a.resumeData,layoutConfig:f,locale:m}):e.jsx("div",{dangerouslySetInnerHTML:{__html:a.generatedHtml||""}})})})}):y&&a.filePath?e.jsx("div",{style:{...l?{}:{height:p,minHeight:c?360:void 0},borderRadius:10,overflow:l?"visible":"hidden",border:"1px solid rgba(0, 0, 0, 0.06)",background:"#f5f5f7"},children:e.jsx(En,{url:a.filePath})}):e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",gap:16,padding:20,minHeight:200,background:"#fafafa",borderRadius:10,border:"1px dashed rgba(0,0,0,0.08)"},children:[e.jsx(zn,{record:a,thumbHeight:88}),e.jsx("div",{style:{fontSize:12,color:"#86868b"},children:"该格式暂不支持内嵌预览,请使用下载或全屏预览"})]})}function gs({assemblyPreview:a,onCloseAssembly:p,resumePreview:c,onCloseResume:i,showcasePreview:l,onCloseShowcase:f}
86){const m=l?Zo(l):null,j=String(l?.title||"网站预览"),E=l?.showcaseType==="platform_link"?String(l?.filePath||""):"";return e.jsxs(e.Fragment,{children:[e.jsx(On,{}),e.jsx(Bn,{}),e.jsx(qt,{title:e.jsxs("span",{children:["档案版本详情",a?.name?e.jsx(Q,{style:{marginLeft:8},color:"blue",children:a.name}):null]}),open:!!a,onClose:p,width:800,destroyOnClose:!0,children:a?e.jsx(fs,{preview:a}):null}),e.jsx(qt,{title:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(ao,{style:{color:"#1d1d1f"}}),e.jsx("span",{children:c?.resumeName?`预览: ${c.resumeName}`:"简历预览"})]}),placement:"right",open:!!c,onClose:i,width:"50vw",styles:{body:{padding:0,background:"#f5f5f7",height:"100%"}},destroyOnClose:!0,children:c?e.jsx("div",{style:{height:"100%",overflow:"hidden"},children:e.jsx(us,{record:c,fitWidth:!0,expandFull:!0})}):null}),e.jsx(Xe,{open:!!l,onCancel:f,footer:null,width:"min(1100px, 96vw)",destroyOnClose:!0,title:j,styles:{body:{padding:0,height:"78vh",overflow:"hidden",background:m?.theme==="dark"?"#0a0a0a":"#f5f5f7"}},children:l?m?.data?e.jsx("div",{style:{height:"78vh",overflow:"auto"},children:e.jsx($n,{data:m.data,theme:m.theme,layoutConfig:m.layoutConfig})}):E?e.jsx("iframe",{title:j,src:E,style:{width:"100%",height:"78vh",border:"none"}}):e.jsx("div",{style:{padding:48,textAlign:"center",color:"#86868b"},children:"暂无预览数据"}):null})]})}async function xs(a){const{apiClient:p}=await ze(async()=>{const{apiClient:f}=await import("./workbench-shared-DT5eicUP.js").then(m=>m.lI);return{apiClient:f}},__vite__mapDeps([0,1])),i=await(await p("/api/resume-library")).json();return(Array.isArray(i)?i:[]).find(f=>f.resumeName===a)??null}async function ys(a){const{apiClient:p}=await ze(async()=>{const{apiClient:v}=await import("./workbench-shared-DT5eicUP.js").then(S=>S.lI);return{apiClient:v}},__vite__mapDeps([0,1])),{resolveShowcaseLinkPath:c}=await ze(async()=>{const{resolveShowcaseLinkPath:v}=await import("./ProjectBoardReadingView-XH0fVlBB.js").then(S=>S.B);return{resolveShowcaseLinkPath:v}},__vite__mapDeps([2,1,0,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72])),{mergeDemoWebsiteShowcaseLibrary:i}=await ze(async()=>{const{mergeDemoWebsiteShowcaseLibrary:v}=await import("./index-DSi_yZ-h.js").then(S=>S.E);return{mergeDemoWebsiteShowcaseLibrary:v}},__vite__mapDeps([17,0,1,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35])),{normalizeShowcaseTitleKey:l,parseShowcaseDisplayName:f,parseShowcaseLinkKey:m}=await ze(async()=>{const{normalizeShowcaseTitleKey:v,parseShowcaseDisplayName:S,parseShowcaseLinkKey:d}=await import("./ProjectBoardReadingView-XH0fVlBB.js").then(_=>_.F);return{normalizeShowcaseTitleKey:v,parseShowcaseDisplayName:S,parseShowcaseLinkKey:d}},__vite__mapDeps([2,1,0,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72])),E=await(await p("/api/showcase")).json(),y=i(Array.isArray(E)?E:[]),w=m(a);if(w.startsWith("id:")){const v=Number(w.slice(3));if(Number.isFinite(v)){const S=y.find(d=>d.id===v);if(S)return S}}const u=c(a);if(u){const v=u.replace(/^\/s\//,""),S=y.find(d=>d.shortId===v);if(S)return S}const T=l(f(a));if(T){const v=y.find(S=>{const d=l(S.title||"");return d?d===T||d.includes(T)||T.includes(d):!1});if(v)return v}return u.startsWith("http://")||u.startsWith("https://")?{title:f(a)||"外链网站",showcaseType:"platform_link",filePath:u}:null}async function ws(a){const{openPortfolioBindingPreview:p}=await ze(async()=>{const{openPortfolioBindingPreview:c}=await import("./PortfolioAssetStackPreview-ClI24nJ7.js").then(i=>i.p);return{openPortfolioBindingPreview:c}},__vite__mapDeps([73,1,66,26,74,0,75,76,77,78,27,28,29]));p(a)}const Sa=({record:a,onAssign:p,children:c})=>{const[i,l]=n.useState(!1),[f,m]=n.useState([]),[j,E]=n.useState(!1),[y,w]=n.useState(""),u=async()=>{E(!0);try{let _=await(await U("/api/resume-library")).json();Array.isArray(_)||(_=[]),_=_.filter(V=>V.resumeType==="profile_version");const R=[{id:"m1",resumeName:"林示例 - 默认基础档案",generatedHtml:"AI产品经理 / 智能体架构",completion:90,resumeSource:"default"},{id:"m2",resumeName:"林示例 - LLM 微调与 Prompt 特化版",generatedHtml:"AI应用产品经理",completion:100,resumeSource:"online"},{id:"m3",resumeName:"林示例 - ToB 敏捷交付与管理版",generatedHtml:"高级产品经理 / PMO",completion:85,resumeSource:"online"}];m([..._,...R])}catch{m([{id:"m1",resumeName:"林示例 - 默认基础档案",generatedHtml:"AI产品经理 / 智能体架构",completion:90,resumeSource:"default"},{id:"m2",resumeName:"林示例 - LLM 微调与 Prompt 特化版",generatedHtml:"AI应用产品经理",completion:100,resumeSource:"online"},{id:"m3",resumeName:"林示例 - ToB 敏捷交付与管理版",generatedHtml:"高级产品经理 / PMO",completion:85,resumeSource:"online"}])}finally{E(!1)}};n.useEffect(()=>{i&&u()},[i]);const T=f.filter(d=>(d.resumeName||"").toLowerCase().includes(y.toLowerCase())||(d.generatedHtml||"").toLowerCase().includes(y.toLowerCase())),v=async d=>{try{await p(a.id,d),l(!1)}catch{}},S=e.jsx("div",{style:{width:280,padding:0},children:e.jsx("div",{style:{maxHeight:200,overflowY:"auto",padding:"4px 0"},children:j?e.jsx("div",{style:{textAlign:"center",padding:20},children:e.jsx(We,{size:"small"})}):T.length>0?e.jsx(Me,{dataSource:T.slice(0,5),renderItem:d=>e.jsx(Me.Item,{style:{padding:"8px 16px",cursor:"pointer",borderBottom:"none",transition:"background 0.2s"},className:"library-popover-item",onClick:()=>v(d),children:e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:8,width:"100%"},children:[e.jsx("span",{style:{fontSize:13,color:"#1d1d1f",fontWeight:500,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:d.resumeName||"未命名版"}),d.generatedHtml&&e.jsx(Q,{style:{margin:0,fontSize:11,borderRadius:4,border:"none",background:"rgba(0,0,0,0.04)",color:"#86868b",flexShrink:0},children:d.generatedHtml})]})})}):e.jsx("div",{style:{padding:20,textAlign:"center",color:"#bfbfbf",fontSize:12},children:"未找到相关版本"})})});return e.jsx(gt,{content:S,trigger:"click",placement:"bottomLeft",open:i,onOpenChange:d=>{l(d),d&&w("")},overlayInnerStyle:{padding:0,borderRadius:12,overflow:"hidden",boxShadow:"0 8px 24px rgba(0,0,0,0.12)"},children:c?e.jsx("div",{onClick:d=>d.stopPropagation(),style:{cursor:"pointer",display:"inline-flex",alignItems:"center",maxWidth:"100%"},children:c}):e.jsx("span",{onClick:d=>d.stopPropagation(),children:e.jsx(xt,{label:"分配档案"})})})},Ca=({record:a,onAssign:p,children:c})=>{const[i,l]=n.useState(!1),[f,m]=n.useState([]),[j,E]=n.useState(!1),[y,w]=n.useState(""),u=async()=>{E(!0);try{let _=await(await U("/api/resume-library")).json();Array.isArray(_)||(_=[]),_=_.filter(R=>R.isTemplate!==!1&&R.resumeType!=="profile_version"),m(_)}catch{m([])}finally{E(!1)}};n.useEffect(()=>{i&&u()},[i]);const T=f.filter(d=>(d.resumeName||"").toLowerCase().includes(y.toLowerCase())||(d.targetJob||"").toLowerCase().includes(y.toLowerCase())),v=async d=>{try{await p(a.id,d),l(!1)}catch{}},S=e.jsx("div",{style:{width:280,padding:0},children:e.jsx("div",{style:{maxHeight:200,overflowY:"auto",padding:"4px 0"},children:j?e.jsx("div",{style:{textAlign:"center",padding:20},children:e.jsx(We,{size:"small"})}):T.length>0?e.jsx(Me,{dataSource:T.slice(0,5),renderItem:d=>e.jsx(Me.Item,{style:{padding:"8px 16px",cursor:"pointer",borderBottom:"none",transition:"background 0.2s"},className:"library-popover-item",onClick:()=>v(d),children:e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:8,width:"100%"},children:[e.jsx("span",{style:{fontSize:13,color:"#1d1d1f",fontWeight:500,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:d.resumeName||"未命名"}),d.targetJob&&e.jsx(Q,{style:{margin:0,fontSize:11,borderRadius:4,border:"none",background:"rgba(0,0,0,0.04)",color:"#86868b",flexShrink:0},children:d.targetJob})]})})}):e.jsx("div",{style:{padding:20,textAlign:"center",color:"#bfbfbf",fontSize:12},children:"未找到相关简历"})})});return e.jsx(gt,{content:S,trigger:"click",placement:"bottomLeft",open:i,onOpenChange:d=>{l(d),d&&w("")},overlayInnerStyle:{padding:0,borderRadius:12,overflow:"hidden",boxShadow:"0 8px 24px rgba(0,0,0,0.12)"},children:c?e.jsx("div",{onClick:d=>d.stopPropagation(),style:{cursor:"pointer",display:"inline-flex",alignItems:"center",maxWidth:"100%"},children:c}):e.jsx("span",{onClick:d=>d.stopPropagation(),children:e.jsx(xt,{label:"分配简历"})})})},Pa=({record:a,onAssign:p,children:c})=>{const[i,l]=n.useState(!1),[f,m]=n.useState([]),[j,E]=n.useState(!1),[y,w]=n.useState(""),u=async()=>{E(!0);try{let _=await(await U("/api/showcase")).json();Array.isArray(_)||(_=[]),m(en(_))}catch{m([])}finally{E(!1)}};n.useEffect(()=>{i&&u()},[i]);const T=f.filter(d=>(d.title||d.websiteName||"").toLowerCase().includes(y.toLowerCase())||(d.targetJob||d.description||"").toLowerCase().includes(y.toLowerCase())),v=async d=>{try{await p(a.id,d),l(!1)}catch{}},S=e.jsx("div",{style:{width:280,padding:0},children:e.jsx("div",{style:{maxHeight:200,overflowY:"auto",padding:"4px 0"},children:j?e.jsx("div",{style:{textAlign:"center",padding:20},children:e.jsx(We,{size:"small"})}):T.length>0?e.jsx(Me,{dataSource:T.slice(0,5),renderItem:d=>e.jsx(Me.Item,{style:{padding:"8px 16px",cursor:"pointer",borderBottom:"none",transition:"background 0.2s"},className:"library-popover-item",onClick:()=>v(d),children:e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:8,width:"100%"},children:[e.jsx("span",{style:{fontSize:13,color:"#1d1d1f",fontWeight:500,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:d.title||d.websiteName||"未命名"}),e.jsx(Q,{style:{margin:0,fontSize:11,borderRadius:4,border:"none",background:"rgba(0,0,0,0.04)",color:"#86868b",flexShrink:0},children:d.showcaseType==="website"?"系统生成":d.generateType||"第三方生成"})]})})}):e.jsx("div",{style:{padding:20,textAlign:"center",color:"#bfbfbf",fontSize:12},children:"未找到相关动态网站"})})});return e.jsx(gt,{content:S,trigger:"click",placement:"bottomLeft",open:i,onOpenChange:d=>{l(d),d&&w("")},overlayInnerStyle:{padding:0,borderRadius:12,overflow:"hidden",boxShadow:"0 8px 24px rgba(0,0,0,0.12)"},children:c?e.jsx("div",{onClick:d=>d.stopPropagation(),style:{cursor:"pointer",display:"inline-flex",alignItems:"center",maxWidth:"100%"},children:c}):e.jsx("span",{onClick:d=>d.stopPropagation(),children:e.jsx(xt,{label:"分配网站"})})})},Ia=({record:a,onAssign:p,children:c})=>{const[i,l]=n.useState(!1),[f,m]=n.useState("versions"),[j,E]=n.useState([]),[y,w]=n.useState([]),[u,T]=n.useState(!1),[v,S]=n.useState(""),[d,_]=n.useState("all"),[R,V]=n.useState([]),[W,C]=n.useState([]),[ae,ie]=n.useState(!1),$=n.useCallback(async()=>{T(!0);try{const[b,N]=await Promise.all([U("/api/portfolio-projects"),U("/api/media-assets")]),J=await b.json(),B=await N.json(),Oe=Array.isArray(J)?J:[],He=Array.isArray(B)?B:[];E($t(oo(Oe)).map(Kn)),w($t(no(He)))}catch{E([]),w([])}finally{T(!1)}},[]);n.useEffect(()=>{if(!i)return;const b=Qt(a.portfolioLink);V(b.versionIds),C(b.assetIds),S(""),_("all"),m("versions"),$()},[i,a.portfolioLink,$]);const X=j.filter(b=>{const N=v.trim().toLowerCase();return N?(b.title||"").toLowerCase().includes(N)||(b.category||"").toLowerCase().includes(N):!0}),ee=n.useMemo(()=>{const b=new Set;
86return y.forEach(N=>{N.assetType&&b.add(String(N.assetType))}),Array.from(b)},[y]),re=y.filter(b=>{if(d!=="all"&&String(b.assetType)!==d)return!1;const N=v.trim().toLowerCase();return N?(b.title||"").toLowerCase().includes(N):!0}),Ee=n.useMemo(()=>j.filter(b=>R.includes(b.id)),[j,R]),Ne=n.useMemo(()=>y.filter(b=>W.includes(b.id)),[y,W]),ve=(b,N)=>{V(J=>N?Array.from(new Set([...J,b])):J.filter(B=>B!==b))},Ze=(b,N)=>{C(J=>N?Array.from(new Set([...J,b])):J.filter(B=>B!==b))},te=async()=>{if(!R.length&&!W.length){x.warning("请至少勾选一个作品集版本或素材");return}const b=j.filter(B=>R.includes(B.id)).map(B=>({id:B.id,title:B.title,shareId:B.shareId})),N=y.filter(B=>W.includes(B.id)).map(B=>({id:B.id,title:B.title})),J=co(po({versions:b,assets:N}));ie(!0);try{await p(a.id,{portfolioLink:J}),l(!1)}catch{}finally{ie(!1)}},ce=so(a.portfolioLink),oe=Qt(a.portfolioLink),me=[...oe.versionIds.map(b=>({key:`v-${b}`,kind:"version",label:oe.versionLabels?.[String(b)]||`版本 #${b}`})),...oe.assetIds.map(b=>({key:`a-${b}`,kind:"asset",label:oe.assetLabels?.[String(b)]||`素材 #${b}`}))];return!me.length&&oe.label&&me.push({key:"label",kind:"version",label:oe.label}),e.jsxs(e.Fragment,{children:[ce?c?e.jsx("div",{onClick:b=>b.stopPropagation(),style:{cursor:"pointer",display:"inline-flex",alignItems:"center",maxWidth:"100%"},children:c}):e.jsx(Fn,{items:me,onEdit:()=>l(!0)}):e.jsx("span",{onClick:b=>{b.stopPropagation(),l(!0)},children:e.jsx(xt,{label:"分配作品集"})}),e.jsxs(Xe,{title:"分配作品集/素材",open:i,onCancel:()=>l(!1),onOk:te,okText:"确认绑定",confirmLoading:ae,width:640,destroyOnClose:!0,styles:{body:{maxHeight:"min(78vh, 720px)",overflowY:"auto"}},children:[e.jsx("div",{style:{marginBottom:12,fontSize:12,color:"#86868b",lineHeight:1.5},children:"从资产库勾选作品集版本与素材,绑定到当前 JD。网站定制页将只读展示此处绑定结果。"}),e.jsxs("div",{className:"assign-portfolio-tab-switch",role:"tablist","aria-label":"作品集筛选类型",children:[e.jsxs("button",{type:"button",role:"tab","aria-selected":f==="versions",className:`assign-portfolio-tab-switch__btn${f==="versions"?" is-active":""}`,onClick:()=>m("versions"),children:[e.jsx(io,{className:"assign-portfolio-tab-switch__icon"}),e.jsx("span",{children:"作品集版本"}),e.jsx("span",{className:"assign-portfolio-tab-switch__count",children:R.length})]}),e.jsxs("button",{type:"button",role:"tab","aria-selected":f==="assets",className:`assign-portfolio-tab-switch__btn${f==="assets"?" is-active":""}`,onClick:()=>m("assets"),children:[e.jsx(ua,{className:"assign-portfolio-tab-switch__icon"}),e.jsx("span",{children:"素材库"}),e.jsx("span",{className:"assign-portfolio-tab-switch__count",children:W.length})]})]}),e.jsx(ro.Search,{allowClear:!0,placeholder:f==="versions"?"筛选作品集版本名称 / 岗位":"筛选素材名称",value:v,onChange:b=>S(b.target.value),style:{marginBottom:10}}),f==="assets"&&e.jsx(lo,{size:"small",value:d,onChange:_,style:{width:"100%",marginBottom:10},options:[{value:"all",label:"全部类型"},...ee.map(b=>({value:b,label:b}))]}),e.jsx("div",{style:{maxHeight:320,overflowY:"auto",border:"1px solid #f0f0f0",borderRadius:8},children:u?e.jsx("div",{style:{textAlign:"center",padding:32},children:e.jsx(We,{size:"small"})}):f==="versions"?X.length?X.map(b=>e.jsxs("label",{style:{display:"flex",gap:10,padding:"10px 12px",borderBottom:"1px solid #f5f5f5",cursor:"pointer",alignItems:"flex-start"},children:[e.jsx(Xt,{checked:R.includes(b.id),onChange:N=>ve(b.id,N.target.checked)}),e.jsxs("span",{style:{minWidth:0},children:[e.jsx("span",{style:{display:"block",fontSize:13,fontWeight:600,color:"#1d1d1f"},children:b.title||"未命名"}),e.jsxs("span",{style:{display:"block",fontSize:11,color:"#86868b",marginTop:2},children:[b.category&&b.category!=="general"?b.category:"通用"," · ",b.assets?.length||0," 项素材"]})]})]},b.id)):e.jsx("div",{style:{padding:24,textAlign:"center",color:"#bfbfbf",fontSize:12},children:"未找到相关作品集版本"}):re.length?re.map(b=>e.jsxs("label",{style:{display:"flex",gap:10,padding:"10px 12px",borderBottom:"1px solid #f5f5f5",cursor:"pointer",alignItems:"flex-start"},children:[e.jsx(Xt,{checked:W.includes(b.id),onChange:N=>Ze(b.id,N.target.checked)}),e.jsxs("span",{style:{minWidth:0},children:[e.jsx("span",{style:{display:"block",fontSize:13,fontWeight:600,color:"#1d1d1f"},children:b.title||"未命名素材"}),e.jsx("span",{style:{display:"block",fontSize:11,color:"#86868b",marginTop:2},children:b.assetType||"素材"})]})]},b.id)):e.jsx("div",{style:{padding:24,textAlign:"center",color:"#bfbfbf",fontSize:12},children:"未找到相关素材"})}),e.jsx(Gn,{projects:Ee,variant:"plain",onProjectClick:b=>Un(b)}),e.jsx(Vn,{assets:Ne,variant:"plain",onAssetClick:b=>Dn(b)})]})]})};function js({children:a,className:p,style:c}
86){return e.jsx("div",{className:["zc-ms-empty-tip",p].filter(Boolean).join(" "),style:c,children:a})}const vs={manual:"系统单次采集",auto:"系统定时采集",url_paste:"人工粘贴录入",plugin:"插件采集",extension:"插件采集",插件采集JD:"插件采集"},ks={assess:{kind:"assess"},deliver:{kind:"deliver"},prep:{kind:"prep"},decide:{kind:"decide"}};function ct({value:a,goLabel:p,onGo:c}){return e.jsxs("div",{className:"flow-field-value-row",children:[e.jsx("div",{className:"flow-field-value-row__main",children:a}),e.jsx("button",{type:"button",className:"flow-field-go-btn",onClick:i=>{i.preventDefault(),i.stopPropagation(),c()},children:p})]})}function pt(){return e.jsx("span",{className:"flow-assign-card__edit",role:"button",tabIndex:0,"aria-label":"编辑绑定",children:e.jsx(wa,{})})}function ft({label:a,icon:p,operateLabel:c,onOperate:i,bindTrigger:l,value:f}){return e.jsxs("div",{className:"flow-assign-card",children:[e.jsxs("div",{className:"flow-assign-card__head",children:[e.jsxs("div",{className:"flow-assign-card__label",children:[p," ",a]}),l]}),e.jsxs("div",{className:"flow-assign-card__body",children:[e.jsx("div",{className:"flow-assign-card__value",children:f}),e.jsx("button",{type:"button",className:"flow-assign-card__operate",onClick:m=>{m.preventDefault(),m.stopPropagation(),i()},children:c})]})]})}const _s=a=>zo(a).stage,bt=12,Ss=6,pa="calc(100vh - 300px - 28px)",fa=12,Cs=14,Ps=14,ba="project-board-flow-view-css-v14";function Is(){if(typeof document>"u"||(document.getElementById("project-board-flow-view-css-v1")?.remove(),document.getElementById("project-board-flow-view-css-v2")?.remove(),document.getElementById("project-board-flow-view-css-v3")?.remove(),document.getElementById("project-board-flow-view-css-v4")?.remove(),document.getElementById("project-board-flow-view-css-v5")?.remove(),document.getElementById("project-board-flow-view-css-v6")?.remove(),document.getElementById("project-board-flow-view-css-v7")?.remove(),document.getElementById("project-board-flow-view-css-v8")?.remove(),document.getElementById("project-board-flow-view-css-v9")?.remove(),document.getElementById("project-board-flow-view-css-v10")?.remove(),document.getElementById("project-board-flow-view-css-v11")?.remove(),document.getElementById("project-board-flow-view-css-v12")?.remove(),document.getElementById("project-board-flow-view-css-v13")?.remove(),document.getElementById(ba)))return;const a=document.createElement("style");a.id=ba,a.textContent=`
87                .flow-card-content::-webkit-scrollbar { width: 4px; }
88                .flow-card-content::-webkit-scrollbar-track { background: transparent; }
89                .flow-card-content::-webkit-scrollbar-thumb { background-color: rgba(0,0,0,0.08); border-radius: 10px; }
90                .flow-card-content:hover::-webkit-scrollbar-thumb { background-color: rgba(0,0,0,0.15); }
91                .glacier-card-editable:hover .glacier-card-edit-btn { opacity: 1 !important; }
92                .glacier-card-edit-btn:hover { background: rgba(0,0,0,0.08) !important; color: #1d1d1f !important; }
93                .glacier-field-grid {
94                    display: grid;
95                    grid-template-columns: repeat(2, minmax(0, 1fr));
96                    gap: 10px;
97                }
98                .glacier-field-card {
99                    min-width: 0;
100                    border-radius: 14px;
101                    padding: 12px 14px;
102                    background: #fff;
103                    border: 1px solid #eef2f7;
104                    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
105                    display: flex;
106                    flex-direction: column;
107                    gap: 8px;
108                    position: relative;
109                    transition: border-color 0.15s ease, box-shadow 0.15s ease;
110                }
111                .glacier-field-card:hover {
112                    border-color: rgba(100, 116, 139, 0.28);
113                    box-shadow: 0 4px 14px -10px rgba(15, 23, 42, 0.35);
114                }
115                .glacier-field-card.is-full { grid-column: 1 / -1; }
116                .glacier-field-card.is-highlighted {
117                    background: var(--glacier-highlight-bg, #fff);
118                }
119                .glacier-field-card__label {
120                    display: inline-flex;
121                    align-items: center;
122                    gap: 6px;
123                    font-size: 11px;
124                    font-weight: 650;
125                    color: #94a3b8;
126                    letter-spacing: 0.01em;
127                    padding-right: 28px;
128                }
129                .glacier-field-card__icon {
130                    width: 18px;
131                    height: 18px;
132                    border-radius: 6px;
133                    display: grid;
134                    place-items: center;
135                    font-size: 11px;
136                    flex-shrink: 0;
137                    color: #64748b;
138                    background: #f1f5f9;
139                }
140                .glacier-field-card__value {
141                    font-size: 13px;
142                    font-weight: 600;
143                    color: #0f172a;
144                    line-height: 1.45;
145                    word-break: break-word;
146                    white-space: pre-wrap;
147                }
148                .glacier-field-card__value a {
149                    color: #2563eb;
150                    text-decoration: none;
151                    font-weight: 600;
152                }
153                .glacier-field-card__value a:hover { text-decoration: underline; }
154                .flow-field-value-row {
155                    display: flex;
156                    align-items: center;
157                    justify-content: space-between;
158                    gap: 10px;
159                    min-width: 0;
160                }
161                .flow-field-value-row__main {
162                    min-width: 0;
163                    flex: 1 1 auto;
164                }
165                .flow-field-go-btn,
166                .flow-assign-card__operate {
167                    flex: 0 0 auto;
168                    border: none;
169                    background: var(--flow-theme, #007AFF);
170                    color: #fff;
171                    padding: 5px 12px;
172                    margin: 0;
173                    font-size: 13px;
174                    font-weight: 650;
175                    border-radius: 8px;
176                    cursor: pointer;
177                    line-height: 1.2;
178                    box-shadow: 0 1px 2px color-mix(in srgb, var(--flow-theme, #007AFF) 28%, transparent);
179                }
180                .flow-field-go-btn:hover,
181                .flow-assign-card__operate:hover {
182                    color: #fff;
183                    filter: brightness(0.92);
184                    text-decoration: none;
185                }
186                .flow-assign-grid {
187                    display: grid;
188                    grid-template-columns: repeat(2, minmax(0, 1fr));
189                    gap: 10px;
190                }
191                .flow-assign-card {
192                    min-width: 0;
193                    border-radius: 14px;
194                    padding: 12px 14px;
195                    background: #fff;
196                    border: 1px solid #eef2f7;
197                    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
198                    display: flex;
199                    flex-direction: column;
200                    gap: 10px;
201                }
202                .flow-assign-card__head {
203                    display: flex;
204                    align-items: center;
205                    justify-content: space-between;
206                    gap: 8px;
207                }
208                .flow-assign-card__label {
209                    display: inline-flex;
210                    align-items: center;
211                    gap: 6px;
212                    font-size: 12px;
213                    font-weight: 650;
214                    color: #64748b;
215                }
216                .flow-assign-card__edit {
217                    display: grid;
218                    place-items: center;
219                    width: 22px;
220                    height: 22px;
221                    font-size: 12px;
222                    color: #94a3b8;
223                    border-radius: 6px;
224                    line-height: 1;
225                    cursor: pointer;
226                }
227                .flow-assign-card__edit:hover {
228                    color: #64748b;
229                    background: rgba(148, 163, 184, 0.12);
230                }
231                .flow-assign-card__body {
232                    display: flex;
233                    align-items: center;
234                    justify-content: space-between;
235                    gap: 10px;
236                    min-width: 0;
237                }
238                .flow-assign-card__value {
239                    min-width: 0;
240                    flex: 1 1 auto;
241                    font-size: 13px;
242                    font-weight: 600;
243                    color: #0f172a;
244                    line-height: 1.45;
245                }
246                .flow-assign-card__empty {
247                    color: #94a3b8;
248                    font-weight: 500;
249                }
250                @media (max-width: 720px) {
251                    .glacier-field-grid,
252                    .flow-assign-grid { grid-template-columns: 1fr; }
253                }
254                .project-board-flow-grid {
255                    display: grid;
256                    grid-template-columns: repeat(2, minmax(0, 1fr));
257                    gap: 12px;
258                    align-items: start;
259                }
260                .project-board-flow-grid--fixed {
261                    height: var(--flow-section-grid-h);
262                    min-height: var(--flow-section-grid-h);
263                    grid-template-rows: repeat(${Ss}, minmax(0, 1fr));
264                    align-items: stretch;
265                }
266                .project-board-flow-grid--fixed .flow-jd-card--collapsed {
267                    height: 100%;
268                    min-height: 0;
269                }
270                .project-board-flow-grid--fixed .flow-jd-card-header {
271                    min-height: 0;
272                    height: 100%;
273                }
274                .flow-jd-card--collapsed {
275                    display: flex;
276                    flex-direction: column;
277                    min-height: 88px;
278                }
279                .flow-jd-card--collapsed .flow-jd-card-header {
280                    flex: 1;
281                }
282                .flow-card-content {
283                    font-size: ${fa}px;
284                }
285                .flow-card-content .ant-tag {
286                    font-size: ${fa}px;
287                }
288                .flow-jd-card-header {
289                    display: flex;
290                    align-items: center;
291                    gap: 10px;
292                    padding: 20px 16px 22px;
293                    position: relative;
294                    cursor: pointer;
295                    min-height: var(--flow-card-min-h, 88px);
296                    box-sizing: border-box;
297                    flex-shrink: 0;
298                }
299                /* 默认圆形(单选观感);多选加 .is-multi → 方形 */
300                .flow-jd-card__select {
301                    width: 18px;
302                    height: 18px;
303                    border-radius: 50%;
304                    border: 1.5px solid #d1d5db;
305                    display: inline-flex;
306                    align-items: center;
307                    justify-content: center;
308                    flex-shrink: 0;
309                    background: #fff;
310                    transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
311                    color: #fff;
312                    font-size: 10px;
313                    line-height: 1;
314                    cursor: pointer;
315                    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
316                }
317                .flow-jd-card__select.is-multi {
318                    border-radius: 5px;
319                }
320                .flow-jd-card__select:hover {
321                    border-color: rgba(0, 0, 0, 0.35);
322                }
323                .flow-jd-card__select.is-checked {
324                    background: var(--jd-theme, #0071e3);
325                    border-color: var(--jd-theme, #0071e3);
326                    box-shadow: none;
327                }
328                .flow-jd-card.is-checked {
329                    border: 1px solid color-mix(in srgb, var(--jd-theme, #0071e3) 42%, transparent) !important;
330                    box-shadow:
331                        0 0 0 2px color-mix(in srgb, var(--jd-theme, #0071e3) 14%, transparent),
332                        0 3px 14px color-mix(in srgb, var(--jd-theme, #0071e3) 12%, transparent) !important;
333                }
334                .flow-jd-card__select.is-multi:not(.is-checked) {
335                    border-color: rgba(60, 60, 67, 0.4);
336                    background: #fff;
337                }
338                .flow-jd-card__title {
339                    font-size: 14px;
340                    font-weight: 600;
341                    color: #1d1d1f;
342                    line-height: 1.3;
343                    overflow: hidden;
344                    text-overflow: ellipsis;
345                    white-space: nowrap;
346                }
347                .flow-jd-card__company {
348                    font-size: 12px;
349                    font-weight: 500;
350                    color: #86868b;
351                    overflow: hidden;
352                    text-overflow: ellipsis;
353                    white-space: nowrap;
354                }
355                .flow-jd-card__meta-tag {
356                    padding: 2px 6px;
357                    border-radius: 4px;
358                    font-size: 11px;
359                    font-weight: 600;
360                    white-space: nowrap;
361                }
362                .flow-jd-card__drawer-handle {
363                    position: absolute;
364                    bottom: 0;
365                    left: 50%;
366                    transform: translateX(-50%);
367                    background: #1d1d1f;
368                    padding: 2px 32px;
369                    border-radius: 12px 12px 0 0;
370                    display: flex;
371                    align-items: center;
372                    justify-content: center;
373                    transition: all 0.3s;
374                    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.15);
375                    z-index: 2;
376                    cursor: pointer;
377                }
378                /* 手机端:取消桌面 6 行固定网格(否则 12 张卡挤进一屏并叠层) */
379                .zc-mobile-shell .project-board-flow-grid--fixed,
380                .mobile-app-shell .project-board-flow-grid--fixed {
381                    height: auto !important;
382                    min-height: 0 !important;
383                    grid-template-rows: none !important;
384                    align-items: start !important;
385                }
386                .zc-mobile-shell .project-board-flow-grid--fixed .flow-jd-card--collapsed,
387                .mobile-app-shell .project-board-flow-grid--fixed .flow-jd-card--collapsed {
388                    height: auto !important;
389                    min-height: 88px;
390                }
391                .zc-mobile-shell .project-board-flow-grid--fixed .flow-jd-card-header,
392                .mobile-app-shell .project-board-flow-grid--fixed .flow-jd-card-header {
393                    height: auto !important;
394                }
395                /* 手机端卡片比例对齐批次采集展开卡(图2):字号/内边距接近桌面,不压成阅读列表行 */
396                .zc-mobile-shell .flow-jd-card--collapsed,
397                .mobile-app-shell .flow-jd-card--collapsed {
398                    min-height: 88px;
399                    border-radius: 14px;
400                }
401                .zc-mobile-shell .flow-jd-card-header,
402                .mobile-app-shell .flow-jd-card-header {
403                    padding: 16px 14px 22px;
404                    gap: 10px;
405                    min-height: 88px;
406                }
407                .zc-mobile-shell .flow-jd-card__select,
408                .mobile-app-shell .flow-jd-card__select {
409                    width: 18px;
410                    height: 18px;
411                    border-radius: 50%;
412                    font-size: 10px;
413                }
414                .zc-mobile-shell .flow-jd-card__title,
415                .mobile-app-shell .flow-jd-card__title {
416                    font-size: 14px;
417                    font-weight: 600;
418                    line-height: 1.3;
419                }
420                .zc-mobile-shell .flow-jd-card__company,
421                .mobile-app-shell .flow-jd-card__company {
422                    font-size: 12px;
423                    line-height: 1.35;
424                }
425                .zc-mobile-shell .flow-jd-card__meta-tag,
426                .mobile-app-shell .flow-jd-card__meta-tag {
427                    font-size: 11px;
428                    padding: 2px 6px;
429                    line-height: 1.3;
430                }
431                .zc-mobile-shell .flow-jd-card__drawer-handle,
432                .mobile-app-shell .flow-jd-card__drawer-handle {
433                    padding: 2px 28px;
434                    border-radius: 12px 12px 0 0;
435                }
436                .zc-mobile-shell .flow-jd-card__drawer-handle .anticon,
437                .mobile-app-shell .flow-jd-card__drawer-handle .anticon {
438                    font-size: 13px;
439                }
440                .zc-mobile-shell .flow-jd-card__action-btn,
441                .mobile-app-shell .flow-jd-card__action-btn {
442                    height: 26px !important;
443                    padding: 0 8px !important;
444                    font-size: 12px !important;
445                }
446                /* 展开区:侧栏约 28% 宽 + 字段卡接近批次采集图2 */
447                .zc-mobile-shell .flow-jd-card__expand,
448                .mobile-app-shell .flow-jd-card__expand {
449                    height: 480px !important;
450                }
451                .zc-mobile-shell .flow-jd-card__side-tabs,
452                .mobile-app-shell .flow-jd-card__side-tabs {
453                    width: 104px !important;
454                    padding: 12px 8px !important;
455                    gap: 4px !important;
456                }
457                .zc-mobile-shell .flow-jd-card__side-tab,
458                .mobile-app-shell .flow-jd-card__side-tab {
459                    padding: 8px 8px !important;
460                    border-radius: 12px !important;
461                    gap: 6px !important;
462                }
463                .zc-mobile-shell .flow-jd-card__side-tab-num,
464                .mobile-app-shell .flow-jd-card__side-tab-num {
465                    font-size: 12px !important;
466                }
467                .zc-mobile-shell .flow-jd-card__side-tab-label,
468                .mobile-app-shell .flow-jd-card__side-tab-label {
469                    font-size: 12px !important;
470                }
471                .zc-mobile-shell .flow-jd-card__expand .flow-card-content,
472                .mobile-app-shell .flow-jd-card__expand .flow-card-content {
473                    padding: 12px 10px !important;
474                    font-size: 12px !important;
475                }
476                .zc-mobile-shell .flow-jd-card__expand .flow-card-content .ant-tag,
477                .mobile-app-shell .flow-jd-card__expand .flow-card-content .ant-tag {
478                    font-size: 12px !important;
479                    padding: 0 8px !important;
480                    line-height: 22px !important;
481                    border-radius: 8px !important;
482                }
483                .zc-mobile-shell .flow-jd-card__expand .glacier-field-grid,
484                .mobile-app-shell .flow-jd-card__expand .glacier-field-grid,
485                .zc-mobile-shell .flow-jd-card__expand .flow-assign-grid,
486                .mobile-app-shell .flow-jd-card__expand .flow-assign-grid {
487                    gap: 8px !important;
488                }
489                .zc-mobile-shell .flow-jd-card__expand .glacier-field-card,
490                .mobile-app-shell .flow-jd-card__expand .glacier-field-card {
491                    padding: 12px 12px !important;
492                    border-radius: 12px !important;
493                    gap: 8px !important;
494                }
495                .zc-mobile-shell .flow-jd-card__expand .glacier-field-card__label,
496                .mobile-app-shell .flow-jd-card__expand .glacier-field-card__label {
497                    font-size: 11px !important;
498                    gap: 6px !important;
499                    padding-right: 26px !important;
500                }
501                .zc-mobile-shell .flow-jd-card__expand .glacier-field-card__icon,
502                .mobile-app-shell .flow-jd-card__expand .glacier-field-card__icon {
503                    width: 16px !important;
504                    height: 16px !important;
505                    border-radius: 6px !important;
506                    font-size: 11px !important;
507                }
508                .zc-mobile-shell .flow-jd-card__expand .glacier-field-card__value,
509                .mobile-app-shell .flow-jd-card__expand .glacier-field-card__value {
510                    font-size: 13px !important;
511                    line-height: 1.45 !important;
512                }
513                .zc-mobile-shell .flow-jd-card__expand .flow-field-go-btn,
514                .mobile-app-shell .flow-jd-card__expand .flow-field-go-btn,
515                .zc-mobile-shell .flow-jd-card__expand .flow-assign-card__operate,
516                .mobile-app-shell .flow-jd-card__expand .flow-assign-card__operate {
517                    padding: 5px 12px !important;
518                    font-size: 12px !important;
519                    border-radius: 8px !important;
520                }
521                .zc-mobile-shell .flow-jd-card__expand .flow-assign-card,
522                .mobile-app-shell .flow-jd-card__expand .flow-assign-card {
523                    padding: 12px 12px !important;
524                    border-radius: 12px !important;
525                    gap: 8px !important;
526                }
527                .zc-mobile-shell .flow-jd-card__expand .flow-assign-card__label,
528                .mobile-app-shell .flow-jd-card__expand .flow-assign-card__label {
529                    font-size: 12px !important;
530                }
531                .zc-mobile-shell .flow-jd-card__expand .glacier-card-edit-btn,
532                .mobile-app-shell .flow-jd-card__expand .glacier-card-edit-btn {
533                    width: 22px !important;
534                    height: 22px !important;
535                    top: 8px !important;
536                    right: 8px !important;
537                    font-size: 12px !important;
538                }
539                /* 采集池/批次采集:折叠卡头对齐阅读列表密度 */
540                .zc-mobile-shell .flow-jd-card--collection.flow-jd-card--collapsed,
541                .mobile-app-shell .flow-jd-card--collection.flow-jd-card--collapsed {
542                    min-height: 0;
543                    border-radius: 12px;
544                }
545                .zc-mobile-shell .flow-jd-card--collection .flow-jd-card-header,
546                .mobile-app-shell .flow-jd-card--collection .flow-jd-card-header {
547                    padding: 8px 10px 16px;
548                    gap: 8px;
549                    min-height: 0;
550                    align-items: flex-start;
551                }
552                .zc-mobile-shell .flow-jd-card--collection .flow-jd-card__title,
553                .mobile-app-shell .flow-jd-card--collection .flow-jd-card__title {
554                    font-size: 12px;
555                    font-weight: 650;
556                    line-height: 1.35;
557                    white-space: normal;
558                    display: -webkit-box;
559                    -webkit-line-clamp: 2;
560                    -webkit-box-orient: vertical;
561                }
562                .zc-mobile-shell .flow-jd-card--collection .flow-jd-card__company,
563                .mobile-app-shell .flow-jd-card--collection .flow-jd-card__company {
564                    font-size: 11px;
565                    line-height: 1.35;
566                }
567                .zc-mobile-shell .flow-jd-card--collection .flow-jd-card__meta-tag,
568                .mobile-app-shell .flow-jd-card--collection .flow-jd-card__meta-tag {
569                    font-size: 9px;
570                    padding: 1px 6px;
571                    line-height: 1.3;
572                }
573                .zc-mobile-shell .flow-jd-card--collection .flow-jd-card__action-btn,
574                .mobile-app-shell .flow-jd-card--collection .flow-jd-card__action-btn {
575                    height: 22px !important;
576                    padding: 0 6px !important;
577                    font-size: 10px !important;
578                }
579                .zc-mobile-shell .flow-jd-card--collection .flow-jd-card__drawer-handle,
580                .mobile-app-shell .flow-jd-card--collection .flow-jd-card__drawer-handle {
581                    padding: 1px 20px;
582                    border-radius: 10px 10px 0 0;
583                }
584                .zc-mobile-shell .project-board-flow-grid,
585                .mobile-app-shell .project-board-flow-grid {
586                    gap: 8px !important;
587                }
588                .project-board-flow-layout {
589                    display: flex;
590                    gap: 24px;
591                    align-items: stretch;
592                    margin: 0 -8px;
593                    width: calc(100% + 16px);
594                }
595                .project-board-flow-sidebar {
596                    width: 240px;
597                    flex-shrink: 0;
598                    position: sticky;
599                    top: 16px;
600                    align-self: flex-start;
601                    height: fit-content;
602                    max-height: calc(100vh - 32px);
603                    display: flex;
604                    flex-direction: column;
605                }
606                .project-board-flow-sidebar.is-fill {
607                    align-self: flex-start;
608                    height: auto;
609                    min-height: 0;
610                    max-height: none;
611                }
612                .flow-sidebar-filters {
613                    flex: 1;
614                    min-height: 0;
615                    display: flex;
616                    flex-direction: column;
617                }
618                .flow-sidebar-filters-viewport {
619                    height: 500px;
620                    max-height: 500px;
621                    flex-shrink: 0;
622                }
623                .flow-sidebar-filters-viewport.is-scrollable {
624                    flex: 0 1 auto;
625                    height: auto;
626                    min-height: 0;
627                    max-height: min(420px, calc(100vh - 380px));
628                    overflow-y: auto;
629                    overflow-x: hidden;
630                    padding-right: 4px;
631                }
632                .flow-sidebar-filters-viewport.is-scrollable::-webkit-scrollbar { width: 4px; }
633                .flow-sidebar-filters-viewport.is-scrollable::-webkit-scrollbar-track { background: transparent; }
634                .flow-sidebar-filters-viewport.is-scrollable::-webkit-scrollbar-thumb { background-color: rgba(0,0,0,0.08); border-radius: 10px; }
635                .flow-sidebar-filters-viewport.is-scrollable:hover::-webkit-scrollbar-thumb { background-color: rgba(0,0,0,0.15); }
636                .flow-sidebar-filters-viewport:not(.is-scrollable) {
637                    overflow: hidden;
638                }
639                .flow-pipeline-step--placeholder {
640                    pointer-events: none;
641                }
642                .project-board-flow-main {
643                    flex: 1;
644                    min-width: 0;
645                }
646                .project-board-flow-layout.is-stage-mode {
647                    align-items: flex-start;
648                }
649                .project-board-flow-sidebar.is-stage-dir {
650                    width: 240px;
651                    align-self: flex-start;
652                    min-height: 0;
653                    max-height: none;
654                    padding: 0 10px 12px 0;
655                    border-right: 1px solid rgba(0, 0, 0, 0.06);
656                    box-sizing: border-box;
657                }
658                .project-board-flow-main .flow-main-section-header {
659                    margin-top: 0;
660                    margin-bottom: 12px;
661                    min-height: 32px;
662                    display: flex;
663                    align-items: center;
664                    gap: 10px;
665                    font-size: 15px;
666                    font-weight: 600;
667                    color: #1d1d1f;
668                }
669                .project-board-flow-sidebar.is-stage-dir .flow-sidebar-filters {
670                    flex: 0 0 auto;
671                    min-height: 0;
672                    overflow: visible;
673                    padding-right: 0;
674                }
675                /* 与分栏一致:1100 会与双栏侧栏展开后的主区宽度共振频闪,仅真移动端改列布局 */
676                @media (max-width: 768px) {
677                    .project-board-flow-layout { flex-direction: column; }
678                    .project-board-flow-sidebar {
679                        width: 100%;
680                        position: static;
681                    }
682                    .project-board-flow-sidebar.is-stage-dir {
683                        width: 100%;
684                        border-right: none;
685                        border-bottom: 1px solid rgba(0, 0, 0, 0.06);
686                        padding: 0 0 12px;
687                        min-height: 0;
688                        max-height: none;
689                    }
690                    .project-board-flow-grid { grid-template-columns: 1fr; }
691                }
692            `,document.head.appendChild(a)}function Ts(){return n.useEffect(()=>{Is()},[]),null}function Rs(a){return a.fetchResult?.split(" @ ")[0]||a.jdRaw?.jobTitle||a.fetchResult||"未命名岗位"}function Ls(a){return a?{state:"idle",message:"当前筛选条件下暂无 JD,试试调整上方筛选或清除条件"}:{state:"searching",message:"还没有意向 JD,先去「全网 JD 采集」导入岗位吧"}}function As({highlightColumn:a,data:p,sourceTotalCount:c,channelLookup:i,selectedRowKeys:l,onRowClick:f,onToggleSelect:m,onAssignAssembly:j=async()=>{},onAssignResume:E=async()=>{},onAssignPortfolio:y=async()=>{},onAssignShowcase:w=async()=>{},onRequestCustomize:u,onOpenAssembly:T,onOpenResume:v,onPreviewAssembly:S,onPreviewResume:d,onPreviewPortfolio:_,onPreviewShowcase:R,onStage2Customize:V,onEditApp:W,onCheckHrReply:C,onUpdateApp:ae,onVisibleItemIdsChange:ie,enableMultiSelect:$=!1,onAppUpdated:X,variant:ee="project",themeColor:re,isPendingImport:Ee,isDemoId:Ne,importingId:ve=null,onImport:Ze,onUnimport:te,onDeleteJd:ce}){const oe=ka(),[me,b]=n.useState({}),[N,J]=n.useState({}),[B,Oe]=n.useState(1),[He,et]=n.useState(!1),[Ie,Je]=n.useState(null),[Te,tt]=n.useState(null),ke=(s,P)=>{if(P.kind==="prep"&&s.id<=0){x.info("请先导入岗位后再打开备考");return}Je(s),tt(P),et(!0)},De=(s,P)=>{ke(s,ks[P])},xe=(s,P)=>{if(ht(P)){oe(ut);return}if(P==="prep"){ke(s,{kind:"prep"});return}ke(s,{kind:"customize",tab:P==="info"||P==="resume"||P==="portfolio"?P:"info"})},pe=n.useMemo(()=>p.map(s=>{const P=_s(s);return{...s,_stageNum:P,_stage:fo[P-1]?.key||"意向JD评估"}}),[p]);n.useEffect(()=>{Oe(1),b({})},[p]),n.useEffect(()=>{ie&&ie(new Set(pe.map(s=>s.id)))},[pe,ie]);const Be=n.useMemo(()=>{const s=qn(a);if(!re)return s;const P=Qn(re),G=P.bgEnd?`linear-gradient(145deg, #ffffff 0%, ${P.bgEnd} 100%)`:P.cardSelectedWash;return{...s,brandColor:re,brandColorEnd:re,brandLight:P.brandLight||Ye(re,.12),...a?{}:{selectedBgGradient:G,selectedBgSolid:P.bgEnd||Ye(re,.08)}}},[a,re]),Ke=n.useMemo(()=>{const s=(B-1)*bt;return pe.slice(s,s+bt)},[pe,B]),wt=!Ke.some(s=>me[s.id])&&Ke.length>0,at=(s,P)=>{P.stopPropagation(),b(G=>{const F=!G[s];return F&&!N[s]&&pe.find(Z=>Z.id===s)&&J(Z=>({...Z,[s]:1})),{...G,[s]:F}})},ye=(s,P,G)=>{G.stopPropagation(),J(F=>({...F,[s]:P}))};return e.jsxs(e.Fragment,{children:[e.jsxs("div",{style:{background:"transparent",padding:"8px 0 16px",fontFamily:'-apple-system, BlinkMacSystemFont, "SF Pro Display", sans-serif',"--flow-theme":Be.brandColor||"#007AFF","--jd-theme":Be.brandColor||"#007AFF"},children:["            ",e.jsx(Ts,{}),e.jsx("div",{className:"project-board-flow-main",style:{width:"100%"},children:e.jsxs("div",{style:{padding:"0 0"},children:[pe.length===0&&(()=>{const s=Ls((c??p.length)>0);return e.jsxs(js,{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",padding:"48px 24px",minHeight:pa,boxSizing:"border-box"},children:[e.jsx(Yn,{state:s.state,size:140,showBubble:!1}),e.jsx("div",{className:"zc-ms-empty-tip__text",style:{marginTop:20,fontSize:14,color:"#86868b",textAlign:"center",whiteSpace:"nowrap"},children:s.message})]})})(),pe.length>0&&e.jsxs("div",{style:{marginBottom:20},children:[e.jsx("div",{className:`project-board-flow-grid${wt?" project-board-flow-grid--fixed":""}`,style:{"--flow-section-grid-h":pa},children:Ke.map(s=>{const P=!!me[s.id],G=ee==="collection"&&typeof s.jdRawId=="number"?s.jdRawId:s.id,F=l.includes(G),he=N[s.id]||1,Z=he===3?2:he<=1?1:he;i[s.channelName||""];const{selectedBgGradient:Ue,selectedBgSolid:jt,brandColor:Re}=Be,vt=a?["sourceUrl","companyName","fetchResult"].includes(a)?1:["assemblyInfoLink","resumeFileLink","portfolioLink","showcaseLink","relevanceTag"].includes(a)?2:["deliveryStatus","applyStatus","applyType","applyLink","replyStatus"].includes(a)?4:["interviewPrepStatus","interviewMaterialLink"].includes(a)?5:["interviewResult","interviewCompleted"].includes(a)?6:["offerInfo","offerDecisionBoard","offerStatus","offerEvaluated"].includes(a)?7:0:0,Y=!a||Z===vt,q=(g,L,K=6,le=null,_e="#64748b",ne=!1,ue)=>{const Le=F&&Y&&(!a||a===ue),ot=K>=12;return e.jsxs("div",{className:`glacier-card-editable glacier-field-card${ot?" is-full":""}${Le?" is-highlighted":""}`,style:{"--glacier-accent":_e,"--glacier-highlight-bg":Le?Ue:void 0},children:[ue&&W&&e.jsx("div",{className:"glacier-card-edit-btn",onClick:Ve=>{Ve.stopPropagation(),W(s,ue)},style:{position:"absolute",top:8,right:8,width:24,height:24,borderRadius:6,display:"flex",alignItems:"center",justifyContent:"center",cursor:"pointer",transition:"all 0.2s",opacity:0,background:"rgba(0,0,0,0.04)",color:"#86868b",fontSize:12},children:e.jsx(wa,{})}),e.jsxs("div",{className:"glacier-field-card__label",children:[le?e.jsx("span",{className:"glacier-field-card__icon",children:le}):null,e.jsx("span",{children:g})]}),e.jsx("div",{className:"glacier-field-card__value",children:ne?e.jsx(Q,{style:{background:"#f1f5f9",border:"none",color:"#475569",fontWeight:600,margin:0,fontSize:12,borderRadius:8},children:L}):L})]})},we=Rs(s);return e.jsxs("div",{className:[P?ee==="collection"?"flow-jd-card--collection":void 0:`flow-jd-card--collapsed${ee==="collection"?" flow-jd-card--collection":""}
692`,F?"is-checked":"","flow-jd-card"].filter(Boolean).join(" "),style:{background:"#fff",borderRadius:14,border:F?`1px solid ${Ye(Re,.42)}`:"1px solid rgba(0,0,0,0.04)",boxShadow:F?`0 0 0 2px ${Ye(Re,.14)}, 0 3px 14px ${Ye(Re,.12)}`:"0 1px 4px rgba(0,0,0,0.04)",overflow:"hidden",transition:"all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1)",cursor:"default"},children:[e.jsxs("div",{className:"flow-jd-card-header",onClick:g=>{g.stopPropagation(),f(s)},style:{cursor:"pointer"},children:[$?e.jsx("div",{className:`flow-jd-card__select is-multi${F?" is-checked":""}`,role:"checkbox","aria-checked":F,"aria-label":F?"取消勾选":"勾选",onClick:g=>{g.stopPropagation(),m?.(G,!F)},children:e.jsx(Zt,{"aria-hidden":!0,style:{opacity:F?1:0}})}):e.jsx("div",{className:`flow-jd-card__select${F?" is-checked":""}`,role:"radio","aria-checked":F,"aria-label":F?"当前选中":"选中",children:e.jsx(Zt,{"aria-hidden":!0,style:{opacity:F?1:0}})}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:2,minWidth:0,flex:1},children:[e.jsx("span",{className:"flow-jd-card__title",children:we}),e.jsx("span",{className:"flow-jd-card__company",children:s.companyName||"未知公司"})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",gap:6,flexShrink:0,maxWidth:ee==="collection"?"48%":void 0},children:[e.jsxs("div",{style:{display:"flex",gap:4,alignItems:"center",flexShrink:0,flexWrap:"wrap",justifyContent:"flex-end"},children:[s._stageNum===4&&(s.applyStatus==="pending"||!s.applyStatus)&&e.jsx("span",{className:"flow-jd-card__meta-tag",style:{background:"#fffbeb",color:"#d97706",border:"1px solid #fef3c7"},children:"待投递"}),e.jsx("span",{className:"flow-jd-card__meta-tag",style:{background:"#f2f2f7",color:"#86868b"},children:vs[s.fetchMethod||""]||s.fetchMethod||"—"}),e.jsx("span",{className:"flow-jd-card__meta-tag",style:{background:"#F3F4F6",color:"#4B5563",maxWidth:80,overflow:"hidden",textOverflow:"ellipsis"},children:s.channelName||"—"})]}),ee==="collection"?(()=>{const g=typeof s.jdRawId=="number"?s.jdRawId:s.id,L=!!(ee==="collection"&&Xn()||Ne?.(g)||Ne?.(s.id)||s.isDemo),K=ve===g||ve===s.id;return e.jsx("div",{style:{display:"inline-flex",alignItems:"center",gap:2},onClick:le=>le.stopPropagation(),children:ce?e.jsx(Nt,{title:"确定删除这条采集记录?",okText:"删除",cancelText:"取消",okButtonProps:{danger:!0},disabled:K||L,onConfirm:()=>{if(L){Zn("示例采集结果不可删除。请切换到「仅账号」隐藏示例,或使用真实采集数据再操作。");return}!ce||K||ce(g)},children:e.jsxs("button",{type:"button",className:"flow-jd-card__action-btn",disabled:K||L,style:{display:"inline-flex",alignItems:"center",gap:4,height:26,padding:"0 8px",border:0,borderRadius:6,background:"transparent",color:"#ff3b30",fontSize:12,fontWeight:600,cursor:K||L?"default":"pointer"},children:[e.jsx(Qe,{}),e.jsx("span",{children:"删除"})]})}):null})})():null]}),e.jsx("div",{className:"flow-jd-card__drawer-handle",onClick:g=>at(s.id,g),children:e.jsx(bo,{style:{fontSize:14,color:"#ffffff",transform:P?"rotate(180deg)":"none",transition:"0.3s"}})})]}),P&&e.jsxs("div",{className:"flow-jd-card__expand",style:{display:"flex",height:520,borderTop:"1px solid #e5e5ea",background:"#fff",minWidth:0},onClick:g=>g.stopPropagation(),children:[e.jsx("div",{className:"flow-jd-card__side-tabs",style:{width:148,flexShrink:0,background:"#fff",padding:"16px 10px",display:"flex",flexDirection:"column",gap:6,borderRight:"1px solid rgba(0,0,0,0.04)"},children:[{num:1,label:"原文",icon:"0"},{num:2,label:"匹配",icon:"1"},{num:4,label:"投递",icon:"2"},{num:5,label:"备考",icon:"3"},{num:6,label:"面试",icon:"4"},{num:7,label:"决策",icon:"5"}].map(g=>{const L=Z===g.num;return e.jsxs("div",{className:"flow-jd-card__side-tab",onClick:K=>ye(s.id,g.num===3?2:g.num,K),style:{padding:"10px 12px",borderRadius:14,cursor:"pointer",transition:"all 0.3s cubic-bezier(0.25, 1, 0.5, 1)",background:L?Ue:"transparent",boxShadow:L?"0 4px 12px rgba(75, 85, 99, 0.04)":"none",border:L?"1px solid rgba(255, 255, 255, 1)":"1px solid transparent",display:"flex",alignItems:"center",gap:8},children:[e.jsx("div",{className:"flow-jd-card__side-tab-num",style:{color:"#1d1d1f",fontSize:Ps,fontWeight:600,lineHeight:1.3,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:g.icon}),e.jsx("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",minWidth:0},children:e.jsx("span",{className:"flow-jd-card__side-tab-label",style:{fontSize:Cs,fontWeight:600,color:"#1d1d1f",lineHeight:1.3},children:g.label})})]},g.num)})}),e.jsx("div",{className:"flow-card-content",style:{flex:1,padding:"20px 16px",cursor:"default",overflowY:"auto",minWidth:0,"--flow-theme":Re||"#007AFF"},children:e.jsxs("div",{style:{animation:"fadeIn 0.4s ease-out"},children:[Z===1&&e.jsx(tn,{app:s,jobTitle:s.fetchResult||void 0,className:"collection-original-detail--flow",onEditField:W?g=>W(s,g):void 0}),Z===2&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"glacier-field-grid",children:q("相关度",e.jsx(ct,{goLabel:"去评估",onGo:()=>De(s,"assess"),value:e.jsx(Q,{color:ho[s.relevanceTag||""]||"default",style:{margin:0,borderRadius:8,padding:"2px 8px",fontWeight:600},children:mo[s.relevanceTag||""]||s.relevanceTag||"未评估"})}),6,e.jsx(So,{}),"#a855f7",!1,"relevanceTag")}),e.jsxs("div",{className:"flow-assign-grid",style:{marginTop:12},"aria-label":"投递材料定制",children:[e.jsx("div",{style:{gridColumn:"1 / -1",fontSize:12,fontWeight:650,color:"#64748b",marginBottom:2},children:"投递材料定制"}),e.jsx(ft,{label:"求职档案",icon:e.jsx(mt,{}),operateLabel:"定制档案",onOperate:()=>xe(s,"info"),bindTrigger:e.jsx(Sa,{record:s,onAssign:j,children:e.jsx(pt,{})}),value:s.assemblyInfoLink?e.jsx(lt,{label:an(s.assemblyInfoLink)||"已完成",onPreview:S?g
692=>S(s,s.assemblyInfoLink||"",g):void 0}):e.jsx("span",{className:"flow-assign-card__empty",children:"未分配"})}),e.jsx(ft,{label:"简历",icon:e.jsx(uo,{}),operateLabel:"定制简历",onOperate:()=>xe(s,"resume"),bindTrigger:e.jsx(Ca,{record:s,onAssign:E,children:e.jsx(pt,{})}),value:s.resumeFileLink?e.jsx(lt,{label:on(s.resumeFileLink)||"已生成",onPreview:d?g=>d(s,s.resumeFileLink||"",g):void 0}):e.jsx("span",{className:"flow-assign-card__empty",children:"未分配"})}),e.jsx(ft,{label:"作品集",icon:e.jsx(ga,{}),operateLabel:"定制作品集",onOperate:()=>xe(s,"portfolio"),bindTrigger:e.jsx(Ia,{record:s,onAssign:y,children:e.jsx(pt,{})}),value:(()=>{const g=nn(s.portfolioLink);return g.length?e.jsx(lt,{label:sn(s.portfolioLink),extraCount:g.length-1,onPreview:_?L=>_(s,s.portfolioLink||"",L):void 0,title:g.map(L=>L.kind==="asset"?`素材 · ${L.label}`:L.label).join(`
693`)}):e.jsx("span",{className:"flow-assign-card__empty",children:"未分配"})})()}),e.jsx(ft,{label:"动态网站",icon:e.jsx(qe,{}),operateLabel:"定制网站",onOperate:()=>xe(s,"website"),bindTrigger:e.jsx(Pa,{record:s,onAssign:w,children:e.jsx(pt,{})}),value:s.showcaseLink?e.jsx(lt,{label:rn(s.showcaseLink)||"已关联",onPreview:R?g=>R(s,s.showcaseLink||"",g):void 0}):e.jsx("span",{className:"flow-assign-card__empty",children:"未分配"})})]})]}),Z===4&&e.jsxs("div",{className:"glacier-field-grid",children:[q("类型",e.jsx(ln,{applyType:Ot(s)}),6,e.jsx(Co,{}),"#ec4899",!1,"stage3"),q("链接",s.applyLink?s.applyLink.startsWith("http")?e.jsxs("a",{href:s.applyLink,target:"_blank",rel:"noreferrer",children:[e.jsx(qe,{})," 打开"]}):s.applyLink:"—",6,e.jsx(qe,{}),"#64748b",!1,"stage3"),q("投递状态",(()=>{const g=Dt(s.applyStatus),L=go[g];return e.jsx(ct,{goLabel:"去投递",onGo:()=>De(s,"deliver"),value:e.jsx(Q,{color:L.color,style:{margin:0,borderRadius:8,padding:"2px 8px",fontWeight:600},children:L.label})})})(),6,e.jsx(Po,{}),"#f59e0b",!1,"stage3"),q("投递时间",s.appliedAt?xa(s.appliedAt).format("YYYY-MM-DD HH:mm"):"—",6,e.jsx(Io,{}),"#6366f1",!1,"stage3"),q("投递结果",(()=>{const g=Ot(s),L=s.applyLink||"",K=s.replyStatus,le=Dt(s.applyStatus)==="applied";let _e=e.jsx("span",{style:{color:"#9ca3af"},children:"—"});if(K==="获面邀/笔面")_e=e.jsx(Q,{color:"volcano",style:{margin:0,borderRadius:8,padding:"2px 8px"},children:"获面邀/笔面"});else if(K==="未通过初筛")_e=e.jsx(Q,{color:"default",style:{margin:0,borderRadius:8,padding:"2px 8px"},children:"未通过初筛"});else if(le&&xo(K)){const ne=yo(s.appliedAt),ue=wo(s.appliedAt);_e=ne==="d7"?e.jsx(Q,{color:"default",style:{margin:0,borderRadius:8,padding:"2px 8px"},children:ue}):ne==="d3"?e.jsx(Q,{color:"orange",style:{margin:0,borderRadius:8,padding:"2px 8px"},children:ue}):e.jsx(Q,{color:"gold",style:{margin:0,borderRadius:8,padding:"2px 8px"},children:ue})}return e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:6,alignItems:"flex-start"},children:[e.jsxs("div",{style:{display:"flex",gap:10,flexWrap:"wrap",alignItems:"center"},children:[L?e.jsxs("a",{href:L.startsWith("http")?L:void 0,onClick:ne=>{ne.stopPropagation(),!L.startsWith("http")&&(L.includes("@")?(ne.preventDefault(),window.open(`mailto:${L}`)):(ne.preventDefault(),x.info("当前链接无法直接打开")))},target:"_blank",rel:"noreferrer",children:[e.jsx(qe,{})," 打开链接"]}):e.jsx("span",{style:{color:"#9ca3af"},children:"无链接"}),jo(g)&&C&&e.jsx("a",{onClick:ne=>{ne.stopPropagation(),C(s)},style:{color:"#6366f1",cursor:"pointer"},children:"查邮箱"})]}),_e]})})(),6,e.jsx(To,{}),"#0ea5e9",!1,"stage3"),q("备注",s.deliveryNote||"—",12,e.jsx(mt,{}),"#64748b",!1,"stage3")]}),Z===5&&e.jsx("div",{className:"glacier-field-grid",children:q("备考状态",e.jsx(ct,{goLabel:"去备考",onGo:()=>De(s,"prep"),value:ya(s)?e.jsx(Q,{style:{margin:0,borderRadius:8,padding:"2px 8px",background:"rgba(85, 198, 138, 0.12)",color:"#55C68A",border:"1px solid rgba(85, 198, 138, 0.25)",fontWeight:600},children:"已备考"}):e.jsx(Q,{color:"default",style:{margin:0,borderRadius:8,padding:"2px 8px"},children:"未备考"})}),12,e.jsx(mt,{}),"#55C68A",!1,"interviewPrepStatus")}),Z===6&&e.jsxs("div",{className:"glacier-field-grid",children:[q("面试进度",(()=>{const g=vo(s.interviewCompleted),L=g==="已通过"?"blue":g==="未通过"||g==="未面试"?"default":"processing";return e.jsx(Q,{color:L,style:{margin:0,borderRadius:8,padding:"2px 8px",fontWeight:g==="已通过"?600:void 0},children:g})})(),6,e.jsx(ja,{}),"#64748b",!1,"interviewCompleted"),q("备注",s.interviewResult||"—",12,e.jsx(Ro,{}),"#64748b",!1,"interviewResult")]}),Z===7&&e.jsxs("div",{className:"glacier-field-grid",children:[q("决策结果",(()=>{const g=ko(s),L=g==="已接受"?void 0:g==="已拒绝"||g==="已失效"?"red":g==="未决策"?"default":"processing",K=g==="已接受"?{margin:0,borderRadius:8,padding:"2px 8px",background:"rgba(85, 198, 138, 0.12)",color:"#55C68A",border:"1px solid rgba(85, 198, 138, 0.25)",fontWeight:600}:{margin:0,borderRadius:8,padding:"2px 8px",fontWeight:g==="已拒绝"||g==="已失效"?600:void 0};return e.jsx(ct,{goLabel:"去评估",onGo:()=>De(s,"decide"),value:e.jsx(Q,{color:L,style:K,children:g})})})(),12,e.jsx(Lo,{}),"#55C68A",!1,"offerStatus"),q("备注",s.notes||"—",12,e.jsx(Ao,{}),"#64748b",!1,"notes")]})]})})]})]},s.id)})}),pe.length>bt&&e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginTop:12},children:e.jsx(_o,{size:"small",current:B,pageSize:bt,total:pe.length,showSizeChanger:!1,showTotal:(s,P)=>`${P[0]}-${P[1]} / 共 ${s}
693 条`,onChange:s=>{Oe(s),b({})}})})]})]})})]}),e.jsx(va,{open:He,app:Ie,mode:Te,onClose:()=>{et(!1),tt(null)},onAppUpdated:s=>{X?.(s),ae?.(),Ie?.id===s.id&&Je(s)}})]})}function zs(a){const p=a.fetchResult||"",c=p.indexOf(" @ "),i=c>=0?p.slice(0,c):p,l=a.channelName||a.jdRaw?.sourcePlatform;return{id:a.id,jobTitle:i,companyName:a.companyName,location:a.location,salaryRange:a.salaryRange,sourcePlatform:l,sourceUrl:a.sourceUrl,fetchMethod:a.fetchMethod,relevanceTag:a.relevanceTag,status:"imported",fetchedAt:a.fetchedAt||a.createdAt,publishedAt:a.publishedAt,applyMethodType:a.applyType,applyLink:a.applyLink,rawContent:a.fetchResultDetail,channel:l?{displayName:l,channelName:l}:null}}function Es(a){const p=n.useMemo(()=>a.apps.map(f=>zs(f)),[a.apps]),c=n.useMemo(()=>{const f=new Map;for(const m of a.apps)f.set(m.id,m);return f},[a.apps]),i=n.useCallback(f=>c.get(f.id),[c]);return{columns:n.useMemo(()=>Mn({themeColor:a.themeColor,channelFallbacks:a.channelFallbacks||{},getLinkedApp:i,onOpenAssess:f=>{const m=c.get(f.id);if(m){if(a.onOpenAssess){a.onOpenAssess(m);return}a.onOpenOperate(m,{kind:"assess"})}},onOpenOperate:(f,m)=>{const j=c.get(f.id);j&&a.onOpenOperate(j,m)},onOpenReport:(f,m)=>{const j=c.get(f.id);j&&a.onOpenReport(j,m)},onOpenEdit:f=>{const m=c.get(f.id);m&&a.onOpenEdit(m)},onImport:()=>{},onUnimport:()=>{},onDelete:a.onDelete,isDemoRecord:f=>f<0,importingId:null,onAssignAssembly:a.onAssignAssembly,onAssignResume:a.onAssignResume,onAssignPortfolio:a.onAssignPortfolio,onAssignShowcase:a.onAssignShowcase,onAssignPrep:a.onAssignPrep,onPatchWorkflow:a.onPatchWorkflow,onCustomize:a.onCustomize,groupExpanded:a.groupExpanded,onToggleGroup:a.onToggleGroup,actionVariant:"project"}),[a,c,i]),boardTableRows:p,appByRowId:c}}function Ft(a){const p=new Set,c=[];for(const i of a){const l=Number(i);Number.isNaN(l)||p.has(l)||(p.add(l),c.push(l))}return c}function Ns(a,p){if(a.length!==p.length)return!1;const c=[...a].sort((l,f)=>l-f),i=[...p].sort((l,f)=>l-f);return c.every((l,f)=>l===i[f])}function Os(a,p){const c=new Map(a.map(i=>[i.id,Bt(i)]));return p.map(i=>c.get(i)).filter(i=>!!i)}function Fe(a,p,c,i){let l=Ft(p);i&&i.size>0&&(l=l.filter(j=>i.has(j)));const f=Os(a,l),m=f.map(j=>j.id);return c?.(m,f),m}const je=(a,p={})=>
693{if(!(typeof window>"u"))try{if(!(window.localStorage.getItem("hcpProbe")!=="off"))return;const i=window.__HCP_PROBE_LOGS||=[],l={at:new Date().toISOString(),label:a,...p};i.push(l),i.length>300&&i.shift(),console.info(`[HCP-PROBE] ${a}`,p),window.__HCP_DUMP=()=>console.table((window.__HCP_PROBE_LOGS||[]).slice(-80))}catch{}},Ds=(a,p)=>{const c=n.useRef({start:0,count:0,lastWarnAt:0});if(typeof window<"u"&&window.localStorage.getItem("hcpProbe")!=="off"){const i=performance.now(),l=c.current;(!l.start||i-l.start>2e3)&&(l.start=i,l.count=0),l.count+=1,(l.count===1||l.count===10||l.count===30||l.count%50===0)&&je(`${a}:render`,{renderCountIn2s:l.count,...p}),l.count>80&&i-l.lastWarnAt>500&&(l.lastWarnAt=i,console.error(`[HCP-PROBE] ${a} render loop suspected`,{renderCountIn2s:l.count,...p}))}},be="/api/job-applications";let zt=!1,ma=0,ha="",Pe=null;const Et="eagle-job-board-data",Bs=n.forwardRef(function({highlightColumn:p,onSelect:c,selectedApp:i,onOpenAssembly:l,onOpenResume:f,onRequestCustomize:m,initialAppId:j,description:E,enableSelection:y,onSelectionChange:w,maxSelectionCount:u,disableColumnEllipsis:T=!1,defaultSelectFirst:v=!1,selectionStorageKey:S="certo_delivery_selected_keys",persistSelection:d=!0,selectionPruneToFlowVisible:_=!1,controlledSelectedRowKeys:R,hideFlowView:V=!1,defaultBoardView:W="reading",initialFilters:C,readingDefaultFocusTab:ae},ie){const $=ka(),{theme:X}=Ln(),[ee,re]=n.useState(()=>V&&W==="flow"?"reading":W),[Ee,Ne]=n.useState(()=>({...Ae,...C??{},jobTitles:[...C?.jobTitles??Ae.jobTitles],companies:[...C?.companies??Ae.companies],locations:[...C?.locations??Ae.locations],salaries:[...C?.salaries??Ae.salaries],applyMethods:[...C?.applyMethods??Ae.applyMethods],progressStatuses:[...C?.progressStatuses??Ae.progressStatuses]})),[ve,Ze]=n.useState(()=>({...Eo})),[te,ce]=n.useState(()=>Pe??[]),[oe,me]=n.useState(!1),[b,N]=n.useState(null),[J,B]=n.useState({}),[Oe,He]=n.useState(()=>({...Wn})),[et,Ie]=n.useState(!1),[Je,Te]=n.useState(null),[tt,ke]=n.useState(null),[De,xe]=n.useState(),[pe,Be]=n.useState(null),[Ke,yt]=n.useState(null),[wt,at]=n.useState(null),[ye,s]=n.useState(()=>new Set),P=n.useRef(ye);P.current=ye;const G=n.useRef(c);G.current=c;const F=n.useCallback(t=>{s(o=>{if(o.size===t.size){let r=!0;if(t.forEach(h=>{o.has(h)||(r=!1)}),r)return o}return t})},[]),he=()=>_&&P.current.size>0?P.current:void 0,Z=n.useCallback((t,o,r)=>{if(r.stopPropagation(),!o?.startsWith("assembly-info:"))return;const h=o.split(":"),k=h[1];if(!k)return;const z=h.length>2?h.slice(2).join(":"):"未命名版",I=new CustomEvent("eagle-preview-assembly",{detail:{id:k,name:z,isLibrary:h.length>2},cancelable:!0});!window.dispatchEvent(I)||Be({id:k,name:z,dataType:h.length>2?"library":"assembly"})},[]),Ue=n.useCallback(async(t,o,r)=>{if(r.stopPropagation(),!o?.startsWith("resume-lib:"))return;const h=o.substring(11);if(!h)return;const k=new CustomEvent("eagle-preview-resume",{detail:{name:h},cancelable:!0});if(!window.dispatchEvent(k))return;const I=await xs(h);I?yt(I):x.info("未找到匹配的简历版本")},[]),jt=n.useCallback(async(t,o,r)=>{r.stopPropagation(),o&&await ws(o)},[]),Re=n.useCallback(async(t,o,r)=>{if(r.stopPropagation(),!o)return;const h=await ys(o);h?at(h):x.info("未找到匹配的动态网站")},[]),vt="__skipped__",[Y,q]=n.useState(null),[we,g]=n.useState({}),[L,K]=n.useState(!1),[le,_e]=n.useState(null),[ne,ue]=n.useState(null),Le=(t,o)=>{if(!dt("当前为仅示例模式,采集池岗位仅供浏览。请切换到「仅账号」模式后再编辑。"))return;let r=t.fetchResultDetail||"";r&&!r.includes("<p>")&&!r.includes("<br")&&(r=r.split(`
694`).filter(h=>h.trim()).map(h=>`<p>${h}</p>`).join("")),q(t),o&&ue(o),g({fetchMethod:t.fetchMethod||"",channelType:t.channelType||"",channelName:t.channelName||"",channelDescription:J[t.channelName||""]?.channelDescription||"",channelTag:(J[t.channelName||""]?.channelTag||[]).join(", "),channelLink:J[t.channelName||""]?.channelLink||"",sourceUrl:t.sourceUrl||"",relevanceTag:t.relevanceTag||"",companyName:t.companyName||"",location:t.location||"",salaryRange:t.salaryRange||"",publishedAt:t.publishedAt||"",fetchResult:t.fetchResult||"",applyType:sa(t.applyType)||"",applyLink:t.applyLink||"",fetchResultDetail
694:r,analysisSnapshot:t.analysisSnapshot||"",assemblyInfoLink:t.assemblyInfoLink||"",resumeFileLink:t.resumeFileLink||"",portfolioLink:t.portfolioLink||"",showcaseLink:t.showcaseLink||"",applyStatus:Dt(t.applyStatus),replyStatus:(()=>{if(!na(t.applyStatus))return"";const h=(t.replyStatus||"").trim();return h==="获面邀/笔面"||h==="未通过初筛"?h:!h||h==="-"?"":"未回复"})(),appliedAt:t.appliedAt||"",deliveryNote:t.deliveryNote||"",interviewMaterialLink:t.interviewMaterialLink||"",interviewResult:t.interviewResult||"",interviewPrepStatus:ya(t)?"prepared":t.interviewPrepStatus||"unprepared",prepNote:t.prepNote||"",interviewCompleted:Go(t.interviewCompleted),offerInfo:t.offerInfo||"",offerDecisionBoard:t.offerDecisionBoard||"",...Uo(Vo(t)),notes:t.notes||""})},ot=()=>{Le({id:0,userId:0,fetchMethod:"url_paste",applyStatus:"pending",applyType:"other",createdAt:"",updatedAt:""},"companyName")},Ve=!!(Y&&Y.id<=0),Ta=n.useCallback(t=>{const o=Ot(t),r=t.applyLink||"",h=z=>{if(!z)return r||"";const I=z.toLowerCase();return I.includes("@gmail.com")?"https://mail.google.com":I.includes("@qq.com")?"https://mail.qq.com":I.includes("@163.com")?"https://mail.163.com":I.includes("@126.com")?"https://mail.126.com":I.includes("@outlook.com")||I.includes("@hotmail.com")?"https://outlook.live.com":r||""};if(o==="email"||o==="workday"||o==="web"){const z=Xe.info({title:"追踪 HR 邮件回复",width:500,icon:null,closable:!0,maskClosable:!0,content:e.jsxs("div",{style:{padding:"24px 0",textAlign:"center",color:"#666"},children:[e.jsx(We,{size:"small",style:{marginRight:8}}),"正在同步检索您的绑定邮箱,寻找最新 HR 痕迹..."]}),footer:null});No(`/api/hr-reply/check/${t.id}`).then(I=>{if(I?.found){const O=h(I.mailbox);z.update({title:`📬 收到邮件回复 (${I.mailbox})`,width:560,icon:e.jsx(ja,{style:{color:"#52c41a"}}),content:e.jsxs("div",{style:{fontSize:13,lineHeight:1.8,marginTop:12},children:[e.jsxs("p",{children:[e.jsx("strong",{children:"发件人:"}),I.from]}),e.jsxs("p",{children:[e.jsx("strong",{children:"主题:"}),I.subject]}),e.jsxs("p",{children:[e.jsx("strong",{children:"时间:"}),I.date]}),e.jsx(Oo,{style:{margin:"8px 0"}}),e.jsx("div",{style:{maxHeight:250,overflowY:"auto",whiteSpace:"pre-wrap",color:"#333",background:"#f5f5f5",padding:12,borderRadius:6},children:I.snippet}),e.jsx("div",{style:{marginTop:16,textAlign:"right"},children:e.jsx(rt,{type:"primary",onClick:()=>O?window.open(O,"_blank"):x.info("无法识别特殊邮箱来源,请手动登录"),children:"前往邮箱原文查看"})})]})})}else z.update({title:"暂无邮件追踪结果",icon:e.jsx(ea,{style:{color:"#faad14"}}),content:e.jsxs("div",{style:{marginTop:12,color:"#555"},children:[e.jsx("p",{children:I?.message||"已扫描各收件箱,暂未发现匹配该职位的HR回复。"}),e.jsx("div",{style:{marginTop:24,textAlign:"right"},children:r&&e.jsx(rt,{onClick:()=>window.open(r,"_blank"),children:"手动前往系统/官网核查"})})]})})}).catch(()=>{z.update({title:"邮箱查询失败",icon:e.jsx(ea,{style:{color:"#ff4d4f"}}),content:e.jsxs("div",{style:{marginTop:12},children:["服务暂不可用,请确认网络连接或邮箱授权密码是否过期。",e.jsx("div",{style:{marginTop:16,textAlign:"right"},children:r&&e.jsx(rt,{onClick:()=>window.open(r,"_blank"),children:"手动前往原始链接"})})]})})});return}if(o==="telegram"){r?window.open(r,"_blank"):x.info("未找到 Telegram 对话链接,请手动查看");return}const k={linkedin:"https://www.linkedin.com/messaging/",boss_zhipin:"https://www.zhipin.com/web/geek/chat",zhilian:"https://rd6.zhaopin.com/s/net/t/hrmessage",liepin:"https://lpt.liepin.com/im/imresumelist",glassdoor:"https://www.glassdoor.com/member/inbox"};if(o&&k[o]){window.open(k[o],"_blank");return}r?window.open(r,"_blank"):x.info("未找到可用的投递链接,请手动核对并自行联系HR")},[]),Ra=async()=>{if(!dt("当前为仅示例模式,采集池岗位仅供浏览。请切换到「仅账号」模式后再保存。")||!Y)return;const t=Y.id<=0,o=(we.companyName||"").trim(),r=(we.fetchResult||"").trim(),h=(we.fetchResultDetail||"").replace(/<[^>]+>/g,"").trim();if(!o){x.error("请填写公司");return}if(!r){x.error("请填写岗位名称");return}if(!h){x.error("请填写职位要求详情");return}const k=we.applyType||"other";if(k!=="other"){const z=(we.applyLink||"").trim();if(!z&&k!=="telegram"){x.error("该投递方式必须提供投递链接");return}const I=Yo(z),O=it=>it==="web"||it==="other_web";if(!(I===k||O(I||"")&&O(k))){if(O(k)&&I&&!O(I)){x.error(`输入的链接匹配到【${ia[I]?.label||I}】,请直接指定该投递方式`);return}else if(!O(k)&&I!==k){x.error(`输入的链接未能匹配【${ia[k]?.label||k}】的特征,请核对`);return}else if(O(k)&&!I){x.error("网页投递方式必须输入正确的外网链接 (http:// 或 https://)");return}}}K(!0);try{const{channelLink:z,channelDescription:I,channelTag:O,fetchedAt:Va,...it}=we,H={...it};for(const de of Object.keys(H))H[de]===vt&&(H[de]="");for(const de of["publishedAt","appliedAt"])(H[de]===""||H[de]===void 0)&&(H[de]=null);if(na(H.applyStatus)||(H.replyStatus=""),!t&&qo(Y.id)&&(H.interviewPrepStatus="prepared"),Qo(H.offerInfo)&&(H.offerEvaluated="yes"),H.offerEvaluated!=="yes"&&(H.offerStatus=""),delete H.offerDecisionBoard,t){H.fetchMethod="url_paste",H.applyStatus||(H.applyStatus="pending");const de=await U(be,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(H)});if(!de.ok){const Lt=await de.text();throw new Error(Lt||"创建失败")}x.success("已手动录入岗位")}else{const de=await U(`${be}/${Y.id}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(H)});if(!de.ok){const Lt=await de.text();throw new Error(Lt||"保存失败")}x.success("修改已保存")}q(null),M()}catch(z){console.error("编辑保存失败:",z),x.error("保存失败: "+(z?.message||"未知错误"))}K(!1)},[La,Mt]=n.useState(At),se=n.useMemo(()=>$t(te),[te,La]),Ge=n.useMemo(()=>Do(se,Ee,ve),[se,Ee,ve]),D=i!==void 0?i:b;Ds("ProjectBoardPanel",{selectedAppId:D?.id,dataCount:Ge.length,controlled:i!==void 0,disableColumnEllipsis:T});const kt=n.useRef(!1),Aa=n.useRef(ha),$e=n.useCallback((t,o)=>{const r=t.map(k=>`${k.id}:${k.updatedAt||""}:${k.assemblyInfoLink||""}:${k.resumeFileLink||""}`).join("|");Pe=t,ha=r,Aa.current=r;let h=!1;return ce(k=>k.length===t.length&&k.every((z,I)=>{const O=t[I];return z.id===O?.id&&(z.updatedAt||"")===(O?.updatedAt||"")&&(z.assemblyInfoLink||"")===(O?.assemblyInfoLink||"")&&(z.resumeFileLink||"")===(O?.resumeFileLink||"")})?k:(h=!0,t)),h&&!o?.silent&&typeof window<"u"&&window.dispatchEvent(new CustomEvent(Et,{detail:{sig:r}})),r},[]),M=n.useCallback(async t=>{const o=!!t?.soft,r=!!t?.force;if(!r&&(kt.current||zt)){Pe&&$e(Pe,{silent:!0}),je("ProjectBoardPanel:fetchData:skipInFlight");return}if(!r&&o&&Date.now()-ma<2e3){Pe&&$e(Pe,{silent:!0}),je("ProjectBoardPanel:fetchData:skipSoftThrottle");return}kt.current=!0,zt=!0,ma=Date.now(),je("ProjectBoardPanel:fetchData:start",{soft:o,force:r}),o||me(!0);try{const h=await U(be);
694if(!h.ok){je("ProjectBoardPanel:fetchData:notOk",{status:h.status});return}const k=await h.json(),z=Array.isArray(k)?k.map(O=>Bt(O)):[],I=$e(z);je("ProjectBoardPanel:fetchData:done",{count:z.length,sigLen:I.length})}finally{kt.current=!1,zt=!1,me(o?h=>h&&!1:!1)}},[$e]);n.useEffect(()=>{M({soft:!1})},[M]),n.useEffect(()=>{const t=()=>{Pe&&$e(Pe,{silent:!0})};return window.addEventListener(Et,t),()=>window.removeEventListener(Et,t)},[$e]),n.useEffect(()=>{const t=()=>{Mt(At()),M({soft:!1,force:!0})};return window.addEventListener(ta,t),()=>window.removeEventListener(ta,t)},[M]),n.useEffect(()=>{const t=o=>{const r=Ko(o);Mt(At()),r!=="demo-visibility"&&M({soft:!0})};return window.addEventListener("eagle-asset-refresh",t),()=>{window.removeEventListener("eagle-asset-refresh",t)}},[M]),n.useEffect(()=>{const t=()=>{M({soft:!0})};return window.addEventListener("eagle-assembly-saved",t),window.addEventListener("eagle-portfolio-saved",t),window.addEventListener("eagle-resume-saved",t),window.addEventListener("eagle-showcase-saved",t),()=>{window.removeEventListener("eagle-assembly-saved",t),window.removeEventListener("eagle-portfolio-saved",t),window.removeEventListener("eagle-resume-saved",t),window.removeEventListener("eagle-showcase-saved",t)}},[M]),n.useEffect(()=>{if(y||!D?.id||oe)return;const t=se.find(O=>O.id===D.id);if(!t){if(se.length===0)return;i!==void 0?G.current?.(null):(N(null),fe([]));return}je("ProjectBoardPanel:selectedRowKeysSync",{selectedAppId:D.id,foundId:t.id});const o=O=>O==null||O===""?"":String(O),r=t.resumeFileLink??D.resumeFileLink,h=t.assemblyInfoLink??D.assemblyInfoLink,k=t.portfolioPlan??D.portfolioPlan,z=t.portfolioLink??D.portfolioLink;i!==void 0&&Number(D.id)>=0&&(o(r)!==o(D.resumeFileLink)||o(h)!==o(D.assemblyInfoLink)||o(k)!==o(D.portfolioPlan)||o(z)!==o(D.portfolioLink))&&G.current?.({...D,resumeFileLink:r,assemblyInfoLink:h,portfolioPlan:k,portfolioLink:z}),fe(O=>O.length===1&&O[0]===t.id?O:[t.id])},[se,D?.id,D?.resumeFileLink,D?.assemblyInfoLink,D?.portfolioPlan,D?.portfolioLink,i!==void 0,y,oe]),n.useEffect(()=>{(async()=>{try{const o=await(await U("/api/hc-jd-fetch/channel-summary")).json(),r={};for(const h of["platform","telegram","twitter","wechat"])(o[h]?.channels||[]).forEach(z=>{r[z.channelName]=z});B(r)}catch{}})()},[]),n.useImperativeHandle(ie,()=>({refresh:M,clearSelection:()=>{fe([]),Fe(te,[],w,he())}}),[M,w,te]);const _t=async(t,o)=>{try{const r=!!o?.__clear||!o?.id;(await U(`${be}/${t}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({assemblyInfoLink:r?"":`assembly-info:${o.id}:${o.resumeName||"未命名版"}`})})).ok?(x.success(r?"已清除绑定":"已应用配置"),M(),window.dispatchEvent(new CustomEvent("eagle-assembly-saved"))):x.error("应用失败")}catch{x.error("应用失败")}},St=async(t,o)=>{try{const r=!!o?.__clear||!o?.resumeName;(await U(`${be}/${t}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({resumeFileLink:r?"":`resume-lib:${o.resumeName||"未命名"}`})})).ok?(x.success(r?"已清除绑定":"已应用简历"),M()):x.error("应用失败")}catch{x.error("应用失败")}},Ct=async(t,o)=>{try{(await U(`${be}/${t}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({portfolioLink:o.portfolioLink||""})})).ok?(x.success("已绑定作品集"),M()):x.error("绑定失败")}catch{x.error("绑定失败")}},Pt=async(t,o)=>{try{if(o?.__clear){(await U(`${be}/${t}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({showcaseLink:""})})).ok?(x.success("已清除绑定"),M()):x.error("应用失败");return}const r=o.showcaseType==="website"&&o.shortId?pn(o.shortId):o.id!=null?`id:${o.id}`:o.filePath||o.shortId||"";(await U(`${be}/${t}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({showcaseLink:`showcase-share:${r}|${o.title||"未命名"}`})})).ok?(x.success("已应用动态网站"),M()):x.error("应用失败")}catch{x.error("应用失败")}},za=async(t,o)=>{const{writePrepBankLink:r}=await ze(async()=>{const{writePrepBankLink:h}=await import("./collectionBoardExport-DMuS_owI.js").then(k=>k.p);return{writePrepBankLink:h}},__vite__mapDeps([79,1,2,0,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72]));r(t,o),x.success(o?"已选题库":"已清除绑定"),M()},Ea=async(t,o)=>{if(!t?.id||t.id<=0){x.info("示例数据请切换账号后操作");return}try{const r={...o};
694if(r.applyType&&(r.applyType=sa(r.applyType)||"other"),!(await U(`${be}/${t.id}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)})).ok)throw new Error("更新失败");x.success("已更新"),M()}catch{x.error("更新失败")}},Na=n.useCallback((t,o)=>{if(ht(o)){$(ut);return}const r=o;typeof m=="function"?m(t,r):r==="info"&&l?l(t):r==="resume"&&f?f(t):$(`/assembly/jd-custom?appId=${t.id}&tab=${r}`)},[$,l,f,m]),[Oa,Wt]=n.useState(!1),[Ht,Jt]=n.useState(null),[Da,Kt]=n.useState(null),ge=n.useCallback((t,o)=>{if(o.kind==="prep"&&t.id<=0){x.info("请先创建岗位后再打开备考");return}Jt(t),Kt(o),Wt(!0)},[]),It=n.useCallback((t,o)=>{if(ht(o)){$(ut);return}if(o==="prep"){ge(t,{kind:"prep"});return}ge(t,{kind:"customize",tab:o==="info"||o==="resume"||o==="portfolio"?o:"info"})},[$,ge]),Ba=n.useCallback((t,o)=>{if(t.id<=0){x.info("请先创建岗位后再打开操作台");return}if(o==="prep"){ge(t,{kind:"prep"});return}It(t,o)},[It,ge]),$a=n.useCallback(t=>{if(t.id<=0){x.info("请先创建岗位后再打开操作台");return}ge(t,{kind:"deliver"})},[ge]),Fa=n.useCallback(t=>{if(t.id<=0){x.info("请先创建岗位后再打开操作台");return}ge(t,{kind:"decide"})},[ge]),Ma=n.useCallback((t,o)=>{g(r=>({...r,[t]:o})),x.success(o?"已从资产库选入,保存后生效":"已清除绑定")},[]),Wa=ra,[A,fe]=n.useState(()=>{if(Array.isArray(R)&&R.length>0)return R;if(!y&&i?.id!=null)return[i.id];if(!y&&j!=null)return[j];if(!y||!d)return[];try{const t=localStorage.getItem(S);return t?JSON.parse(t):[]}catch{return[]}});n.useEffect(()=>{y&&d&&localStorage.setItem(S,JSON.stringify(A))},[A,y,S,d]),n.useEffect(()=>{Array.isArray(R)&&fe(t=>Ns(t,R)?t:R)},[R]),n.useEffect(()=>{if(!(Array.isArray(R)&&R.length>0)&&se.length>0&&!D){let t;j&&(t=se.find(o=>o.id===j)),!t&&v&&(t=se[0]),t&&(i!==void 0||N(t),G.current?.(t),fe([t.id]),y&&Fe(se,[t.id],w,he()))}},[se,j,v,D?.id,i!==void 0,y,w]),n.useEffect(()=>{y||fe(t=>{const o=D?[D.id]:[];return t.length===o.length&&t.every((r,h)=>r===o[h])?t:o})},[D?.id,y]),n.useEffect(()=>{Array.isArray(R)||y&&te.length>0&&A.length>0&&Fe(te,A,w,he())},[te,y,_,ye,R]),n.useEffect(()=>{Array.isArray(R)||!y||!_||ye.size===0||fe(t=>{const o=t.filter(r=>ye.has(r));return o.length===t.length?t:(Fe(te,o,w,ye),o)})},[ye,y,_,te,w]);const Ha=async t=>{if(!dt("当前为仅示例模式,示例岗位不可删除。请切换到「仅账号」模式后再操作。"))return;(await U(`${be}/${t}`,{method:"DELETE"})).ok?(x.success("已删除"),M()):x.error("删除失败")},Ut=async()=>{if(!dt("当前为仅示例模式,示例岗位不可删除。请切换到「仅账号」模式后再操作。")||!A.length)return;(await U(be,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({ids:A})})).ok?(x.success("批量删除成功"),fe([]),M()):x.error("删除失败")},Ja=n.useCallback((t,o)=>{Te(t),ke(o),xe(void 0),Ie(!0)},[]),Vt=n.useCallback(t=>{const o=as();Te(t),ke(o.reportId),xe(o.initialScrollOutlineNodeKey),Ie(!0)},[]),{columns:Ka,boardTableRows:nt,appByRowId:Tt}=Es({apps:Ge,themeColor:Wa,groupExpanded:Oe,onToggleGroup:t=>He(o=>({...o,[t]:!o[t]})),onOpenEdit:Le,onDelete:t=>{Ha(t)},onOpenOperate:ge,onOpenAssess:Vt,onOpenReport:Ja,onAssignAssembly:_t,onAssignResume:St,onAssignPortfolio:Ct,onAssignShowcase:Pt,onAssignPrep:za,onPatchWorkflow:Ea,onCustomize:It}),Gt=n.useCallback(()=>{const t=A.length>0?nt.filter(h=>A.includes(h.id)):nt;if(t.length===0){x.warning("暂无可下载的采集记录");return}const o=xa().format("YYYYMMDD-HHmmss"),r=A.length>0?"选中":"当前列表";Hn({rows:t,getLinkedApp:h=>Tt.get(h.id),filename:`采集池-${r}-${o}.csv`}),x.success(`已下载 ${t.length} 条(全部展开列)`)},[A,nt,Tt]),Rt=t=>{const o=Bt(t);if(y){je("ProjectBoardPanel:rowClickFocus",{recordId:t.id,recordJdRawId:t.jdRawId,enableSelection:!0}
694),i!==void 0||N(o),c?.(o);return}const r=D?.id===o.id,h=r?null:o;je("ProjectBoardPanel:rowClick",{recordId:t.id,recordJdRawId:t.jdRawId,isCurrentlySelected:r,nextId:h?.id}),i!==void 0||N(h),c?.(h),fe(k=>k.includes(t.id)?[]:[t.id])},Yt=(t,o)=>{const r=o?Ft([...A,t]):A.filter(h=>h!==t);if(typeof u=="number"&&r.length>u){x.warning(`一次最多支持勾选 ${u} 个 JD`);return}fe(Fe(te,r,w,he()))},Ua=n.useMemo(()=>os({},X),[X]),st=ra,Se=ns(st);return e.jsxs("div",{className:`project-board-panel batch-mac-glass fetch-result-panel ${is}`,style:{...Ua,...ss},children:[e.jsxs("div",{className:"fetch-result-panel__head",style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:16,minWidth:0},children:[e.jsxs("div",{className:"fetch-result-panel__title-row",style:{display:"flex",alignItems:"center",gap:12,minWidth:0},children:[e.jsx("div",{className:"fetch-result-panel__icon",style:rs(st),children:e.jsx(Bo,{})}),e.jsxs("div",{className:"fetch-result-panel__title",style:{display:"flex",alignItems:"center",gap:6,fontSize:16,fontWeight:600,color:"#1d1d1f",lineHeight:1.2,minWidth:0},children:[e.jsx("span",{children:"采集池"}),e.jsx(gt,{trigger:"click",placement:"bottomLeft",title:"采集池说明",content:e.jsx("div",{style:{maxWidth:360,fontSize:13,lineHeight:1.65,color:"#4a4a4c"},children:E||e.jsxs(e.Fragment,{children:["岗位来自",e.jsx(es,{to:"/hc/discovery",style:{color:"#4B5563"},children:"多渠道JD采集"}),"与 Agent 找岗。入池即跟进,可在本表完成匹配、投递到 Offer 全流程。"]})}),children:e.jsx(rt,{type:"text",size:"small",icon:e.jsx($o,{}),"aria-label":"采集池说明",style:{width:22,height:22,minWidth:22,padding:0,color:"#86868b"}})})]}),e.jsxs("div",{className:"fetch-result-panel__title-tools fetch-result-panel__title-tools--mobile",children:[e.jsx(Ce,{title:"手动录入岗位",children:e.jsx("button",{type:"button",className:"project-board-panel__toolbar-btn fetch-result-panel__tool-btn","aria-label":"手动录入岗位",onClick:ot,style:Se,children:e.jsx(aa,{})})}),A.length>0?e.jsx(Nt,{title:`确定删除选中的 ${A.length} 项记录吗?`,onConfirm:Ut,okButtonProps:{danger:!0},children:e.jsx(Ce,{title:`批量删除 (${A.length})`,children:e.jsx("button",{type:"button",className:"project-board-panel__toolbar-btn fetch-result-panel__tool-btn","aria-label":`批量删除 ${A.length} 项`,style:Se,children:e.jsx(Qe,{})})})}):e.jsx(Ce,{title:"批量删除",children:e.jsx("button",{type:"button",className:"project-board-panel__toolbar-btn fetch-result-panel__tool-btn","aria-label":"批量删除",style:Se,onClick:()=>x.warning("请先勾选要删除的记录"),children:e.jsx(Qe,{})})}),e.jsx(Ce,{title:A.length>0?`下载选中全部展开列 (${A.length})`:"下载当前列表全部展开列",children:e.jsx("button",{type:"button",className:"project-board-panel__toolbar-btn fetch-result-panel__tool-btn","aria-label":A.length>0?`下载选中 ${A.length} 项全部展开列`:"下载当前列表全部展开列",onClick:Gt,style:Se,children:e.jsx(oa,{})})})]})]}),e.jsxs("div",{className:"fetch-result-panel__head-actions",style:{display:"flex",alignItems:"center",gap:8,flexShrink:0},children:[e.jsx(Fo,{className:"profile-mgmt-view-seg profile-mgmt-view-seg--toolbar",value:ee==="flow"&&V?"reading":ee,onChange:t=>re(t),options:[{value:"table",icon:e.jsx("span",{title:"表格视图",children:e.jsx(Mo,{})})},{value:"reading",icon:e.jsx("span",{title:"阅读视图",children:e.jsx(Wo,{})})},...V?[]:[{value:"flow",icon:e.jsx("span",{title:"卡片视图",children:e.jsx(ga,{})})}]]}),e.jsxs("div",{className:"fetch-result-panel__title-tools fetch-result-panel__title-tools--desktop",children:[e.jsx(Ce,{title:"手动录入岗位",children:e.jsx("button",{type:"button",className:"project-board-panel__toolbar-btn fetch-result-panel__tool-btn","aria-label":"手动录入岗位",onClick:ot,style:Se,children:e.jsx(aa,{})})}),A.length>0?e.jsx(Nt,{title:`确定删除选中的 ${A.length} 项记录吗?`,onConfirm:Ut,okButtonProps:{danger:!0},children:e.jsx(Ce,{title:`批量删除 (${A.length})`,children:e.jsx("button",{type:"button",className:"project-board-panel__toolbar-btn fetch-result-panel__tool-btn","aria-label":`批量删除 ${A.length} 项`,style:Se,children:e.jsx(Qe,{})})})}):e.jsx(Ce,{title:"批量删除",children:e.jsx("button",{type:"button",className:"project-board-panel__toolbar-btn fetch-result-panel__tool-btn","aria-label":"批量删除",style:Se,onClick:()=>x.warning("请先勾选要删除的记录"),children:e.jsx(Qe,{})})}),e.jsx(Ce,{title:A.length>0?`下载选中全部展开列 (${A.length})`:"下载当前列表全部展开列",children:e.jsx("button",{type:"button",className:"project-board-panel__toolbar-btn fetch-result-panel__tool-btn","aria-label":A.length>0?`下载选中 ${A.length} 项全部展开列`:"下载当前列表全部展开列",onClick:Gt,style:Se,children:e.jsx(oa,{})})})]})]})]}),e.jsx("div",{className:"fetch-result-panel__filter-bar",children:e.jsx(Ho,{data:se,filters:Ee,sort:ve,resultCount:Ge.length,totalCount:se.length,onFiltersChange:Ne,onSortChange:Ze})}),ee==="table"&&e.jsx("div",{style:{padding:"0px"},children:e.jsx(Jo,{columns:Ka,dataSource:nt,rowKey:"id",loading:oe,scroll:{x:"max-content"},size:"small",pagination:{defaultPageSize:10,showSizeChanger:!0,showTotal:t=>`共 ${t} 条`,position:["bottomRight"],locale:{items_per_page:"条/页"},style:{paddingRight:24,margin:"24px 0 0"}},className:"apple-style-table apple-borderless-table jd-project-board-table",rowClassName:()=>"apple-table-row",rowSelection:y?{selectedRowKeys:A,onChange:t=>{const o=Ft(t);if(typeof u=="number"&&o.length>u){x.warning(`一次最多支持勾选 ${u} 个 JD`);return}fe(Fe(te,o,w,he()))},fixed:"left",columnWidth:48}:void 0,onRow:t=>({onClick:()=>{const o=Tt.get(t.id);o&&Rt(o)},className:"clickable-row apple-table-row",style:{cursor:"pointer",background:A.includes(t.id)?"rgba(0, 0, 0, 0.015)":void 0}})})}),ee==="reading"&&e.jsx(dn,{data:Ge,loading:oe,selectedRowKeys:A,enableMultiSelect:y,onRowClick:Rt,onToggleSelect:Yt,onAssignAssembly:_t,onAssignResume:St,onAssignPortfolio:Ct,onAssignShowcase:Pt,onRequestCustomize:m,onAppUpdated:t=>{ce(o=>o.map(r=>r.id===t.id?{...r,...t}:r)),i?.id===t.id&&c?.(t)},onPreviewAssembly:Z,onPreviewResume:Ue,onPreviewPortfolio:jt,onPreviewShowcase:Re,onEditApp:(t,o)=>
694Le(t,o),themeColor:st,defaultFocusTab:ae}),ee==="flow"&&!V&&e.jsx(As,{highlightColumn:p,themeColor:st,data:Ge,sourceTotalCount:se.length,channelLookup:J,selectedRowKeys:A,onRowClick:Rt,enableMultiSelect:y,onToggleSelect:Yt,onAssignAssembly:_t,onAssignResume:St,onAssignPortfolio:Ct,onAssignShowcase:Pt,onRequestCustomize:(t,o)=>{if(ht(o)){$(ut);return}typeof m=="function"?m(t,o):l?l(t):$(`/assembly/jd-custom?appId=${t.id}&tab=${o}`)},onOpenAssembly:t=>l&&l(t),onOpenResume:t=>f&&f(t),onPreviewAssembly:Z,onPreviewResume:Ue,onPreviewPortfolio:jt,onPreviewShowcase:Re,onStage2Customize:Na,onEditApp:(t,o)=>Le(t,o),onCheckHrReply:Ta,onVisibleItemIdsChange:_?F:void 0,onAppUpdated:t=>{ce(o=>o.map(r=>r.id===t.id?{...r,...t}:r)),i?.id===t.id&&c?.(t)}}),e.jsx(Xe,{title:Ve?"新建采集 JD(手动录入)":Y?`编辑属性:${Y.fetchResult||Y.companyName||"未命名"}`:"编辑属性",open:!!Y,onOk:Ra,onCancel:()=>q(null),confirmLoading:L,okText:Ve?"创建":"保存",cancelText:"取消",width:820,children:Y&&e.jsx("div",{ref:t=>{t&&ne&&setTimeout(()=>{const o=t.querySelector(`[data-field-id="${ne}"]`);o&&(o.scrollIntoView({behavior:"smooth",block:"center"}),o.style.transition="background 0.3s",o.style.background="#fffbe6",setTimeout(()=>{o.style.background=""},2e3)),ue(null)},150)},style:{paddingTop:4},children:e.jsx(Jn,{variant:"jobApplication",values:we,onChange:t=>g(o=>({...o,...t})),resetKey:Y.id,assessApp:Y,onOpenAssessReport:(t,o,r)=>{Te(t),ke(o),xe(r),Ie(!0)},onAssess:Vt,customizeApp:Ve?null:Y,onCustomize:Ba,onDeliver:$a,onDecide:Fa,onBindCustomizeLink:Ma})})}),e.jsx(Xe,{title:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx("div",{style:{width:28,height:28,borderRadius:8,background:"rgba(0,0,0,0.04)",display:"flex",alignItems:"center",justifyContent:"center"},children:e.jsx(mt,{style:{color:"#1d1d1f",fontSize:14}})}),e.jsx("span",{style:{fontSize:16,fontWeight:600,letterSpacing:"-0.02em",color:"#1d1d1f"},children:le?`${le.fetchResult} — 职位要求详情`:"职位要求详情"})]}),open:!!le,onCancel:()=>_e(null),footer:null,width:700,styles:{body:{padding:"24px 32px",background:"#fcfcfc",borderRadius:"0 0 12px 12px"}},style:{borderRadius:12,overflow:"hidden",paddingBottom:0},children:le&&e.jsx("div",{style:{background:"#fff",padding:"24px 32px",borderRadius:16,boxShadow:"0 2px 12px rgba(0,0,0,0.03)",fontSize:14,lineHeight:1.8,color:"#1d1d1f",wordBreak:"break-all",maxHeight:"65vh",overflowY:"auto"},children:e.jsx(cn,{html:le.fetchResultDetail})})}),e.jsx("style",{children:`
695                /* 已处理行样式(灰色透明) */
696                .row-processed td { color: #999 !important; }
697                .row-processed .ant-tag { opacity: 0.6; }
698
699                /* Apple iOS 表格容器 - 完全透明无边框 */
700                .apple-borderless-table .ant-table {
701                    background: transparent !important;
702                    border-spacing: 0 !important;
703                    border-collapse: collapse !important;
704                }
705                .apple-borderless-table .ant-table-container,
706                .apple-borderless-table .ant-table-content,
707                .apple-borderless-table .ant-table-wrapper {
708                    background: transparent !important;
709                    border: none !important;
710                    border-radius: 12px !important;
711                }
712                .apple-borderless-table .ant-table-header {
713                    margin-bottom: 0 !important;
714                    border: none !important;
715                }
716                .apple-borderless-table .ant-table-body {
717                    margin-top: 0 !important;
718                    border: none !important;
719                    overflow-x: auto !important;
720                }
721                .apple-borderless-table .ant-table-content {
722                    overflow-x: auto !important;
723                }
724                .apple-borderless-table .ant-table-header table,
725                .apple-borderless-table .ant-table-body table {
726                    border-collapse: collapse !important;
727                    width: max-content !important;
728                    min-width: 100% !important;
729                }
730                .apple-borderless-table .ant-table-sticky-scroll {
731                    height: 12px !important;
732                    opacity: 1 !important;
733                    background: rgba(0, 0, 0, 0.04) !important;
734                    border-top: 1px solid rgba(0, 0, 0, 0.06) !important;
735                    z-index: 8 !important;
736                }
737                .apple-borderless-table .ant-table-sticky-scroll-bar {
738                    height: 8px !important;
739                    background: rgba(0, 0, 0, 0.35) !important;
740                    border-radius: 4px !important;
741                    opacity: 1 !important;
742                }
743                .apple-borderless-table .ant-table-cell::before,
744                .apple-borderless-table .ant-table-cell::after,
745                .apple-borderless-table .ant-table-container::before,
746                .apple-borderless-table .ant-table-container::after {
747                    display: none !important;
748                    box-shadow: none !important;
749                }
750
751                /* 表头文字规范 · 对齐阅读列表岗位标题 .opp-job-title__en */
752                .apple-borderless-table .ant-table-thead > tr > th {
753                    background: transparent !important;
754                    font-size: 15px !important;
755                    font-weight: 650 !important;
756                    letter-spacing: -0.022em !important;
757                    line-height: 1.35 !important;
758                    color: #1d1d1f !important;
759                    border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
760                    border-right: none !important;
761                    padding: 10px 12px !important;
762                    text-align: center !important;
763                    white-space: nowrap !important;
764                    vertical-align: middle !important;
765                }
766                .apple-borderless-table .ant-table-thead > tr:first-child > th {
767                    border-top: 1px solid rgba(0, 0, 0, 0.06) !important;
768                }
769                .apple-borderless-table .ant-table-thead > tr > th,
770                .apple-borderless-table .ant-table-thead > tr > th span,
771                .apple-borderless-table .ant-table-thead > tr > th .ant-table-column-title,
772                .apple-borderless-table .jd-table-group-collapse-title {
773                    font-size: 15px !important;
774                    font-weight: 650 !important;
775                    letter-spacing: -0.022em !important;
776                    line-height: 1.35 !important;
777                    color: #1d1d1f !important;
778                }
779
780                /* 单元格字体规范 · 对齐图2蓝框列值 */
781                .apple-borderless-table .ant-table-tbody > tr > td {
782                    background: transparent !important;
783                    font-size: 12px !important;
784                    font-weight: 500 !important;
785                    letter-spacing: 0 !important;
786                    line-height: 1.35 !important;
787                    color: #1d1d1f !important;
788                    border-bottom: 1px solid rgba(0, 0, 0, 0.04) !important;
789                    border-right: none !important;
790                    padding: 10px 12px !important;
791                    text-align: center !important;
792                    vertical-align: middle !important;
793                    transition: background-color 0.2s ease !important;
794                }
795                .apple-borderless-table .ant-table-tbody > tr > td,
796                .apple-borderless-table .ant-table-tbody > tr > td span,
797                .apple-borderless-table .ant-table-tbody > tr > td a {
798                    font-size: 12px !important;
799                    font-weight: 500 !important;
800                    letter-spacing: 0 !important;
801                    line-height: 1.35 !important;
802                }
803                /* 表格筛选框 / 下方操作钮:与筛选条同字号 */
804                .apple-borderless-table .ant-table-tbody > tr > td .jd-table-lib-select__control .ant-select-selector,
805                .apple-borderless-table .ant-table-tbody > tr > td .jd-table-lib-select__control .ant-select-selection-item,
806                .apple-borderless-table .ant-table-tbody > tr > td .jd-table-lib-select__control .ant-select-selection-placeholder,
807                .apple-borderless-table .ant-table-tbody > tr > td .jd-table-go-btn {
808                    font-size: 12px !important;
809                    font-weight: 500 !important;
810                    letter-spacing: 0 !important;
811                    color: #1d1d1f !important;
812                }
813                .apple-borderless-table .ant-table-tbody > tr > td .jd-table-lib-select__control .ant-select-arrow,
814                .apple-borderless-table .ant-table-tbody > tr > td .jd-table-lib-select__control .ant-select-arrow .anticon {
815                    color: #c7c7cc !important;
816                    font-size: 10px !important;
817                }
818                .apple-borderless-table .ant-table-tbody > tr > td .jd-table-lib-select__control .ant-select-selection-item,
819                .apple-borderless-table .ant-table-tbody > tr > td .jd-table-lib-select__control .ant-select-selection-placeholder {
820                    text-align: center !important;
821                    justify-content: center !important;
822                    background: transparent !important;
823                    border: none !important;
824                    margin: 0 !important;
825                }
826
827                /* 文本列:左对齐 + 单行省略 */
828                .apple-borderless-table .ant-table-tbody > tr > td.jd-col-text {
829                    text-align: left !important;
830                }
831                .apple-borderless-table .ant-table-thead > tr > th.jd-col-text {
832                    text-align: left !important;
833                }
834                .jd-table-cell-text {
835                    display: block;
836                    min-width: 0;
837                    max-width: 100%;
838                    overflow: hidden;
839                    text-overflow: ellipsis;
840                    white-space: nowrap;
841                    color: #1d1d1f;
842                    font-size: 15px;
843                    font-weight: 650;
844                    letter-spacing: -0.022em;
845                    line-height: 1.35;
846                    text-align: left;
847                }
848                .jd-table-cell-text.is-muted {
849                    color: #aeaeb2;
850                    font-weight: 650;
851                }
852                .jd-table-cell-stack {
853                    display: flex;
854                    flex-direction: column;
855                    align-items: center;
856                    justify-content: center;
857                    gap: 0;
858                    min-width: 0;
859                    width: 100%;
860                }
861                .jd-table-dual-line {
862                    display: flex;
863                    flex-direction: column;
864                    align-items: flex-start;
865                    gap: 2px;
866                    font-size: 15px;
867                    font-weight: 650;
868                    letter-spacing: -0.022em;
869                    line-height: 1.35;
870                    color: #86868b;
871                    white-space: nowrap;
872                }
873                .jd-table-dual-line b {
874                    color: #1d1d1f;
875                    font-weight: 650;
876                }
877                .apple-borderless-table .ant-table-tbody > tr > td .ant-tag {
878                    margin: 0 !important;
879                    max-width: 100%;
880                    overflow: hidden;
881                    text-overflow: ellipsis;
882                    vertical-align: middle;
883                    font-size: 12px !important;
884                    font-weight: 500 !important;
885                    letter-spacing: 0 !important;
886                    line-height: 1.35 !important;
887                }
888
889                /* 表格悬浮背景反馈 */
890                .apple-borderless-table .ant-table-tbody > tr.apple-table-row:hover > td {
891                    background: rgba(0, 0, 0, 0.02) !important;
892                }
893
894                /* 过滤掉表头右侧残留阴影线 */
895                .apple-borderless-table .ant-table-cell-fix-left-last::after,
896                .apple-borderless-table .ant-table-cell-fix-start-last::after,
897                .apple-borderless-table .ant-table-cell-fix-right-first::after,
898                .apple-borderless-table .ant-table-cell-fix-end-first::after {
899                    display: none !important;
900                    box-shadow: none !important;
901                }
902
903                /* ===== 多选列(fix-left):透明,和普通列一致 ===== */
904                .apple-borderless-table .ant-table-cell.ant-table-cell-fix-left,
905                .apple-borderless-table .ant-table-cell.ant-table-cell-fix-start {
906                    background: transparent !important;
907                    backdrop-filter: none !important;
908                    -webkit-backdrop-filter: none !important;
909                }
910                .apple-borderless-table .ant-table-thead > tr > th.ant-table-cell-fix-left,
911                .apple-borderless-table .ant-table-thead > tr > th.ant-table-cell-fix-start {
912                    background: transparent !important;
913                    backdrop-filter: none !important;
914                    -webkit-backdrop-filter: none !important;
915                }
916                /* ===== 操作列(fix-right):实色背景遮住横向滚动时的底层文字 ===== */
917                .apple-borderless-table .ant-table-cell.ant-table-cell-fix-right,
918                .apple-borderless-table .ant-table-cell.ant-table-cell-fix-end {
919                    background: #ffffff !important;
920                    backdrop-filter: none !important;
921                    -webkit-backdrop-filter: none !important;
922                }
923                .apple-borderless-table .ant-table-thead > tr > th.ant-table-cell-fix-right,
924                .apple-borderless-table .ant-table-thead > tr > th.ant-table-cell-fix-end {
925                    background: #ffffff !important;
926                    backdrop-filter: none !important;
927                    -webkit-backdrop-filter: none !important;
928                }
929
930                /* hover - 多选列 */
931                .apple-borderless-table .ant-table-tbody > tr:hover > td.ant-table-cell-fix-left,
932                .apple-borderless-table .ant-table-tbody > tr:hover > td.ant-table-cell-fix-start {
933                    background: rgba(0, 0, 0, 0.02) !important;
934                }
935                /* hover - 操作列 */
936                .apple-borderless-table .ant-table-tbody > tr:hover > td.ant-table-cell-fix-right,
937                .apple-borderless-table .ant-table-tbody > tr:hover > td.ant-table-cell-fix-end {
938                    background: #f5f5f7 !important;
939                }
940
941                /* 表格内「去评估 / 定制简历」等:固定上值下钮,行高稳定;按钮与上方筛选框同宽 */
942                .jd-table-value-with-op {
943                    display: flex;
944                    flex-direction: column;
945                    align-items: stretch;
946                    justify-content: center;
947                    gap: 6px;
948                    flex-wrap: nowrap;
949                    min-width: 0;
950                    width: 100%;
951                }
952                .jd-table-value-with-op__main {
953                    min-width: 0;
954                    width: 100%;
955                    max-width: 100%;
956                    display: flex;
957                    justify-content: center;
958                    align-items: center;
959                    text-align: center;
960                }
961                .jd-table-value-with-op__main .jd-table-lib-select {
962                    width: 100%;
963                    min-width: 0;
964                }
965                .jd-table-value-with-op__main .ant-tag,
966                .jd-table-value-with-op__main .jd-table-asset-pill,
967                .jd-table-value-with-op__main .jd-table-assign-btn {
968                    max-width: 100%;
969                }
970                .jd-table-value-with-op .jd-table-go-btn {
971                    width: 100%;
972                    height: 32px;
973                    min-height: 32px;
974                    max-height: 32px;
975                    box-sizing: border-box;
976                    display: inline-flex;
977                    align-items: center;
978                    justify-content: center;
979                    text-align: center;
980                    padding: 0 10px;
981                }
982                .jd-table-go-btn {
983                    flex: 0 0 auto;
984                    border: 1px solid #e5e5ea;
985                    background: #ffffff;
986                    color: #1d1d1f;
987                    padding: 0 10px;
988                    margin: 0;
989                    height: 32px;
990                    min-height: 32px;
991                    font-size: 12px;
992                    font-weight: 500;
993                    letter-spacing: 0;
994                    border-radius: 8px;
995                    cursor: pointer;
996                    line-height: 1.35;
997                    white-space: nowrap;
998                    box-shadow: none;
999                    display: inline-flex;
1000                    align-items: center;
1001                    justify-content: center;
1002                    text-align: center;
1003                }
1004                .jd-table-go-btn:hover {
1005                    color: #1d1d1f;
1006                    background: #f5f5f7;
1007                    border-color: rgba(0, 0, 0, 0.22);
1008                    filter: none;
1009                }
1010
1011                /* ===== 分页器强制修改 ===== */
1012                .ant-pagination-item-active {
1013                    background: #1d1d1f !important;
1014                    border-color: #1d1d1f !important;
1015                }
1016                .ant-pagination-item-active a {
1017                    color: #fff !important;
1018                }
1019
1020                /* 分组列分界线(border-right 模式) */
1021                .apple-borderless-table .ant-table-thead > tr > th.column-divider,
1022                .apple-borderless-table .ant-table-tbody > tr > td.column-divider {
1023                    border-right: 1px solid rgba(0, 0, 0, 0.06) !important;
1024                }
1025
1026                /* ===== 黑夜模式:盖掉上方浅色表格规则 ===== */
1027                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .ant-table-thead > tr > th,
1028                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .jd-table-group-collapse-title {
1029                    color: rgba(255, 255, 255, 0.87) !important;
1030                    font-size: 15px !important;
1031                    font-weight: 650 !important;
1032                    letter-spacing: -0.022em !important;
1033                    line-height: 1.35 !important;
1034                    border-top-color: rgba(255, 255, 255, 0.1) !important;
1035                    border-bottom-color: rgba(255, 255, 255, 0.1) !important;
1036                }
1037                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .ant-table-tbody > tr > td {
1038                    color: rgba(255, 255, 255, 0.87) !important;
1039                    font-size: 12px !important;
1040                    font-weight: 500 !important;
1041                    letter-spacing: 0 !important;
1042                    line-height: 1.35 !important;
1043                    border-bottom-color: rgba(255, 255, 255, 0.06) !important;
1044                }
1045                html[data-zc-theme="dark"] .project-board-panel .jd-table-cell-text {
1046                    color: #ffffff !important;
1047                }
1048                html[data-zc-theme="dark"] .project-board-panel .jd-table-cell-text.is-muted {
1049                    color: rgba(255, 255, 255, 0.55) !important;
1050                }
1051                html[data-zc-theme="dark"] .project-board-panel .jd-table-dual-line {
1052                    color: rgba(255, 255, 255, 0.55) !important;
1053                }
1054                html[data-zc-theme="dark"] .project-board-panel .jd-table-dual-line b {
1055                    color: #ffffff !important;
1056                }
1057                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .ant-table-tbody > tr.apple-table-row:hover > td {
1058                    background: rgba(255, 255, 255, 0.04) !important;
1059                }
1060                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .ant-table-cell.ant-table-cell-fix-right,
1061                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .ant-table-cell.ant-table-cell-fix-end {
1062                    background: var(--zc-dark-bg, #121214) !important;
1063                    backdrop-filter: none !important;
1064                    -webkit-backdrop-filter: none !important;
1065                }
1066                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .ant-table-thead > tr > th.ant-table-cell-fix-right,
1067                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .ant-table-thead > tr > th.ant-table-cell-fix-end {
1068                    background: var(--zc-dark-bg, #121214) !important;
1069                    backdrop-filter: none !important;
1070                    -webkit-backdrop-filter: none !important;
1071                }
1072                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .ant-table-tbody > tr:hover > td.ant-table-cell-fix-right,
1073                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .ant-table-tbody > tr:hover > td.ant-table-cell-fix-end {
1074                    background: var(--zc-dark-bg, #121214) !important;
1075                }
1076                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .ant-table-tbody > tr:hover > td.ant-table-cell-fix-left,
1077                html[data-zc-theme="dark"] .project-board-panel .apple-bord
1077erless-table .ant-table-tbody > tr:hover > td.ant-table-cell-fix-start {
1078                    background: rgba(255, 255, 255, 0.04) !important;
1079                }
1080                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .ant-table-thead > tr > th.column-divider,
1081                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .ant-table-tbody > tr > td.column-divider {
1082                    border-right-color: rgba(255, 255, 255, 0.08) !important;
1083                }
1084                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .col-group-action .ant-btn-link,
1085                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .col-group-action .ant-btn-link.ant-btn-dangerous,
1086                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .col-group-action .ant-btn-link .anticon {
1087                    background: transparent !important;
1088                    border-color: transparent !important;
1089                    box-shadow: none !important;
1090                    color: #ffffff !important;
1091                }
1092                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .col-group-action .ant-btn-link:hover,
1093                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .col-group-action .ant-btn-link.ant-btn-dangerous:hover,
1094                html[data-zc-theme="dark"] .project-board-panel .apple-borderless-table .col-group-action .ant-btn-link:hover .anticon {
1095                    background: rgba(255, 255, 255, 0.1) !important;
1096                    border-color: transparent !important;
1097                    color: #ffffff !important;
1098                }
1099                html[data-zc-theme="dark"] .project-board-panel .ant-pagination-item-active {
1100                    background: #ffffff !important;
1101                    border-color: #ffffff !important;
1102                }
1103                html[data-zc-theme="dark"] .project-board-panel .ant-pagination-item-active a {
1104                    color: #1d1d1f !important;
1105                }
1106
1107             `}),e.jsx(gs,{assemblyPreview:pe,onCloseAssembly:()=>Be(null),resumePreview:Ke,onCloseResume:()=>yt(null),showcasePreview:wt,onCloseShowcase:()=>at(null)}),e.jsx(va,{open:Oa,app:Ht,mode:Da,onClose:()=>{Wt(!1),Kt(null)},onAppUpdated:t=>{ce(o=>o.map(r=>r.id===t.id?{...r,...t}:r)),i?.id===t.id&&c?.(t),Ht?.id===t.id&&Jt(t)}}),e.jsx(ts,{open:et,app:Je,reportId:tt,initialScrollOutlineNodeKey:De,onClose:()=>{Ie(!1),Te(null),ke(null),xe(void 0)},onUpdateApp:t=>{ce(o=>o.map(r=>r.id===t.id?{...r,...t}:r)),i?.id===t.id&&c?.(t),Je?.id===t.id&&Te(t)}})]})}),Ti=Object.freeze(Object.defineProperty({__proto__:null,AssignAssemblyWrapper:Sa,AssignPortfolioWrapper:Ia,AssignResumeWrapper:Ca,AssignShowcaseWrapper:Pa,default:Bs},Symbol.toStringTag,{value:"Module"}));export{Ii as A,Bs as P,us as S,_a as a,Ti as b};

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.