1import{_ as lt}from"./C-Ro3RP7.js";import{E as it,Q as rt,R as ct,a as V}from"./XgcMfeIl.js";import{E as dt}from"./D1Dr60nC.js";import{d as mt,h as ut,g as _t,E as d,r as v,G as pt,T as vt,m as ft,u as o,c as _,b as s,p as n,y as l,t as r,l as h,B as O,C as S,o as c,z as E,Z as z,F as yt,e as gt,S as ht,_ as kt}from"./Pk-UJaOG.js";import{E as bt}from"./Pa4TFIMK.js";import{E as Ct}from"./DLvxr_bl.js";import{E as wt,_ as Dt,a as xt,b as St}from"./BDohS1aF.js";import{v as Et}from"./CUXUsghA.js";import"./CH43pcht.js";import"./CIVQ0x5K.js";import{E as Tt}from"./DS3kDC1F.js";import"./ok_oUTjz.js";import"./BrsBXTbs.js";import{a as At}from"./Ca6qE0ej.js";import{_ as Lt,a as $t}from"./Cxg2Awwn.js";import{C as q}from"./DaTLHhK4.js";import{_ as Nt}from"./C8PCnunF.js";import{g as Bt,m as Rt}from"./CYozJ9Ky.js";import{b as It}from"./CZjgAYJq.js";import{u as Mt}from"./Dtnb_jXx.js";import{g as T}from"./THC1F2rH.js";import"./LFh1wOgw.js";import"./CwUY_F79.js";import"./BaD61CBk.js";import"./eK_EVCSi.js";import"./BUn7hdbE.js";import"./CG9OuPGv.js";import"./CFdX0pJp.js";import"./B7V1gGni.js";import"./CI-jejlq.js";import"./Cg-GpMWf.js";import"./Bp-oIo1P.js";/* empty css */import"./BEg8PgWS.js";import"./C8tpVpdT.js";const Ft={class:"community-detail community-detail--loading-soft","element-loading-background":"rgba(255, 255, 255, 0.28)"},Pt={class:"community-detail__container"},Vt={class:"breadcrumb"},Ot={class:"detail-panel"},zt={class:"post-main"},qt={class:"post-main__avatar-col"},Ht=["src"],Kt={class:"post-main__body"},Zt={class:"post-main__meta-row"},jt={class:"post-main__author"},Gt={class:"post-main__time"},Jt={class:"post-main__context-row"},Qt={class:"relation-link__text"},Wt={class:"dataset-hover-card__title"},Ut={key:0,class:"dataset-hover-card__tags"},Xt={class:"dataset-hover-card__tag-text"},Yt={class:"dataset-hover-card__desc"},te={key:1,class:"dataset-hover-card__source"},ee={class:"post-main__content"},ae={class:"post-main__footer"},oe={key:0,src:At,alt:"",class:"post-like-btn__icon"},se={key:1,src:Lt,alt:"",class:"post-like-btn__icon"},ne={class:"post-like-btn__count"},le={class:"el-dropdown-link"},ie=mt({__name:"[id]",setup(re){const H=ut(),K=_t(),{isAuthenticated:Z,requireLogin:j}=Mt(),m=d(()=>{const t=H.params.id;return Array.isArray(t)?t[0]:t}),b=v(!1),k=v(!1),A=v(0),L=v(0),u=v(!1),$=v(null),a=v({id:String(m.value),title:"",content:"",summary:"",labelValue:void 0,labelText:"",labelColor:"",authorName:"å¿åç¨æ·",authorAvatar:"",createdAt:"-",lastReplyAt:"-",likeCount:0,replyCount:0,viewCount:0,relatedDatasetId:void 0,relatedDatasetTitle:"",isLiked:!1,isOwn:!1,replies:void 0}),G=d(()=>(a.value.content||"").replace(/\s+/g," ").slice(0,120)),C=d(()=>a.value.relatedDatasetTitle||a.value.title),w=d(()=>a.value.relatedDataset),N=d(()=>(w.value?.topicList||[]).map(t=>String(t||"").trim()).filter(t=>t).slice(0,2)),J=d(()=>String(w.value?.description||"").trim()||"ææ æè¿°"),B=d(()=>String(w.value?.providerName||"").trim()),Q=d(()=>{const t=String(a.value.title||"").trim(),e=String(a.value.content||"").trim();return t?e?e.startsWith(t)?e:`${t} 2${e}
2`:t:e}),W=d(()=>{const t=a.value.createdAt;return t?String(t).replace(/(\d{2}:\d{2}):\d{2}(?=(?:\.\d+)?(?:Z|[+-]\d{2}:?\d{2})?$)/,"$1"):"-"}),U=Bt;function R(t,e){const i=String(t||"").replace("#","");if(i.length!==6)return`rgba(28, 111, 241, ${e})`;const p=parseInt(i.slice(0,2),16),f=parseInt(i.slice(2,4),16),y=parseInt(i.slice(4,6),16);return`rgba(${p}, ${f}, ${y}, ${e})`}function D(t){const e="#1C6FF1",i=[e,"#0EAD77","#ED6A04","#00A1C0","#B900CB","#CAA815"],p=String(t||"").trim();if(!p)return e;const f=p.split("").reduce((y,x)=>y+x.charCodeAt(0),0);return i[f%i.length]??e}function X(){const t=a.value.relatedDatasetId;t==null||t===""||window.open(It(t,C.value),"_blank","noopener,noreferrer")}pt(()=>({title:a.value.title?`${a.value.title} - 社åºè®¨è®º`:"社åºè®¨è®ºè¯¦æ ",meta:[{key:"description",name:"description",content:G.value||"社åºè®¨è®ºè¯¦æ "}]}));function I(){const t=q[1]||q[0];a.value={id:String(m.value),title:"å¦ä½ç³»ç»å¦ä¹ åç«¯æ¡æ¶å¹¶åæå®æï¼",content:`å¤§å®¶å¥½ï¼ææ¯ä¸åå端å¼åè ï¼ä»é¶å°è¿é¶å·²ç»æç»å¦ä¹ å¾ä¹ äºãå¨è¿æ®µæ¶é´éï¼æä»ä¸ä¸ªå®å ¨çæ°ææé¿ä¸ºä¸åé«çº§å端工ç¨å¸ï¼æé´ç§¯ç´¯äºä¸äºå¦ä¹ ç»éªï¼å¸æè½å¯¹å¤§å®¶æå¸®å©ã 3 4å¦ä¹ è·¯å¾å»ºè®®ï¼ 51. åºç¡é¶æ®µï¼HTMLãCSSãJavaScript 62. è¿é¶é¶æ®µï¼DOM æä½ãAjaxãES6+ 73. å·¥ç¨é¶æ®µï¼VueãReactãæå»ºå·¥å · 84. 项ç®é¶æ®µï¼ç»ä»¶åãæ§è½ä¼åã交äºè®¾è®¡`,summary:"å¦ä½ç³»ç»å¦ä¹ åç«¯æ¡æ¶å¹¶åæå®æï¼",labelValue:t?.value||"ç»éªå享",labelText:t?.label||"ç»éªå享",labelColor:t?.color||"#00a870",authorName:"ç¨æ·ä¸",authorAvatar:"",createdAt:"2025-01-02 13:45",lastReplyAt:"åå",likeCount:7,replyCount:18,viewCount:88,relatedDatasetId:void 0,relatedDatasetTitle:"",isLiked:!1,isOwn:!1,replies:void 0}}async function M(){b.value=!0;try{A.value+=1;const t=await T({url:"/api/dataset-comment/detail",opts:{dataset_comment_id:m.value,fetchKey:`dataset-comment-detail-${m.value}-${A.value}`,dedupe:"cancel"},method:"get"});t?.data?(a.value=Rt(t.data),u.value=!!a.value.isLiked):I()}catch{I()}finally{b.value=!1}}async function F(){if(!Z.value){j(()=>F());return}if(k.value)return;k.value=!0;const t=u.value;u.value=!u.value,a.value.likeCount=Math.max(0,Number(a.value.likeCount||0)+(u.value?1:-1));try{L.value+=1,await T({url:"/api/dataset-comment/like",opts:{dataset_comment_id:m.value,fetchKey:`dataset-comment-like-${m.value}-${L.value}`,dedupe:"cancel"},method:"post"})}catch{u.value=t,a.value.likeCount=Math.max(0,Number(a.value.likeCount||0)+(u.value?1:-1)),V.error("æä½å¤±è´¥ï¼è¯·ç¨åéè¯")}finally{k.value=!1}}async function Y(){try{await Tt.confirm("确认å é¤è¯¥è®¨è®ºå?","æç¤º",{confirmButtonText:"确认",cancelButtonText:"åæ¶",type:"warning"}),await T({url:"/api/dataset-comment/delete",opts:{dataset_comment_id:m.value},method:"post"}),V.success("å 餿å"),await K.push("/community")}catch{}}function tt(){$.value?.openCommunityRootComposer()}return vt(M),(t,e)=>{const i=lt,p=it,f=dt,y=ht,x=bt,P=Ct,et=xt,at=St,ot=wt,st=Dt,nt=Et;return ft((c(),_("div",Ft,[s("div",Pt,[s("div",Vt,[n(i,{to:"/"},{default:l(()=>[...e[1]||(e[1]=[E("é¦é¡µ",-1)])]),_:1}),e[3]||(e[3]=s("span",null,"/",-1)),n(i,{to:"/community"},{default:l(()=>[...e[2]||(e[2]=[E("社åºè®¨è®º",-1)])]),_:1}),e[4]||(e[4]=s("span",null,"/",-1)),e[5]||(e[5]=s("span",null,"讨论详æ ",-1))]),s("div",Ot,[s("article",zt,[s("div",qt,[s("img",{src:o(a).authorAvatar||o(Nt),alt:"",class:"post-main__avatar"},null,8,Ht)]),s("div",Kt,[s("div",Zt,[s("span",jt,r(o(a).authorName||"å¿åç¨æ·"),1),e[6]||(e[6]=s("span",{class:"post-main__meta-dot"},null,-1)),s("span",Gt,r(o(W)),1)]),s("div",Jt,[o(a).labelText?(c(),_("span",{key:0,class:"type",style:S(o(U)(o(a).labelColor))},"# "+r(o(a).labelText),5)):h("",!0),o(a).relatedDatasetId||o(a).relatedDatasetTitle?(c(),O(x,{key:1,placement:"bottom-start",width:430,trigger:"hover","show-after":120,offset:8,"show-arrow":!1,"popper-class":"community-detail-dataset-popper"},{reference:l(()=>[n(f,{class:"relation-link",underline:"never",disabled:!o(a).relatedDatasetId,onClick:z(X,["stop","prevent"])},{default:l(()=>[n(p,{class:"relation-prefix-icon",size:16},{default:l(()=>[n(o(rt))]),_:1}),s("span",Qt,r(o(C)),1)]),_:1},8,["disabled"])]),default:l(()=>[s("div",{class:"dataset-hover-card",onClick:e[0]||(e[0]=z(()=>{},["stop"]))},[s("div",Wt,r(o(C)),1),o(N).length?(c(),_("div",Ut,[(c(!0),_(yt,null,gt(o(N),g=>(c(),_("div",{key:g,class:"dataset-hover-card__tag",style:S({"--hover-color":R(D(g),.15)})},[s("div",{class:"dataset-hover-card__tag-color",style:S({backgroundColor:R(D(g),.15)})},[n(y,{name:"link",color:D(g)},null,8,["color"])],4),s("div",Xt,r(g),1)],4))),128))])):h("",!0),s("div",Yt,r(o(J)),1),o(B)?(c(),_("div",te,"æ¥æºç«ç¹ï¼"+r(o(B)),1)):h("",!0)])]),_:1})):h("",!0)]),s("div",ee,r(o(Q)),1),s("div",ae,[n(P,{class:"post-like-btn",link:"",type:"default",loading:o(k),"aria-label":"ç¹èµ",onClick:F},{default:l(()=>[o(u)?(c(),_("img",oe)):(c(),_("img",se)),s("span",ne,r(o(a).likeCount||0),1)]),_:1},8,["loading"]),n(P,{class:"post-reply-btn",link:"",type:"default","aria-label":"åå¤",onClick:tt},{default:l(()=>[...e[7]||(e[7]=[s("img",{src:$t,alt:"",class:"post-reply-btn__icon"},null,-1),s("span",{class:"post-reply-btn__text"},"åå¤",-1)])]),_:1}),o(a).isOwn?(c(),O(ot,{key:0,trigger:"click",class:"post-actions-dropdown"},{dropdown:l(()=>[n(at,null,{default:l(()=>[n(et,{onClick:Y},{default:l(()=>[...e[8]||(e[8]=[E("å é¤",-1)])]),_:1})]),_:1})]),default:l(()=>[s("span",le,[n(p,null,{default:l(()=>[n(o(ct))]),_:1})])]),_:1})):h("",!0)])])]),n(st,{ref_key:"commentSectionRef",ref:$,mode:"community","community-root-composer-initially-visible":!1,"target-id":o(m),"target-id-key":"dataset_comment_id","api-base":"/api/dataset-comment","comment-id-key":"dataset_comment_id",onRefreshDetail:M},null,8,["target-id"])])])])),[[nt,o(b)]])}}}),Ke=kt(ie,[["__scopeId","data-v-a6ced8cf"]]);export{Ke as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.