1import{i as s,h as e,r as a,j as t,L as r}from"./vendor-react-DejgYtBM.js";import{u as i,Y as l,A as n,s as o}from"./index-BeIIFw6E.js";import{l as m,E as c,I as d,b as x,m as j,f as p}from"./vendor-semi-D8d7bTtM.js";import{A as g,r as h}from"./articleUtils-CS9XG6di.js";import{J as u,A as f,E as y}from"./vendor-icons-EJvJ5X-w.js";import"./vendor-motion-Chfy_MiU.js";import"./marked.esm-B28mcIGu.js";import"./purify.es-Bm-lHtoJ.js";import"./vendor-highlight-CaHTjBxz.js";const{Title:b}=p,v=()=>{const{t:p}=i(),{id:v}=s(),w=e(),N=w.state?.fromFocus?`/news/focus/${v}`:"/news",[k,A]=a.useState(null),[E,z]=a.useState(!0);return a.useEffect(()=>{const s=new AbortController;let e=!1;return(async()=>{z(!0),A(null);try{const a=await n.get(`/api/news/${v}`,{signal:s.signal});if(e)return;const{success:t,data:r,message:i}=a.data;t?A(r):(o(i||p("å è½½æç« 详æ
失败")),A(null))}catch(a){if(e||"CanceledError"===a.name||"AbortError"===a.name)return;o(a.message||p("å è½½æç« 详æ
失败")),A(null)}finally{e||z(!1)}})(),()=>{e=!0,s.abort()}},[v]),t.jsx("div",{className:"px-4 py-8",children:t.jsxs("div",{className:"w-full max-w-5xl mx-auto",children:[t.jsxs(r,{to:N,className:"inline-flex items-center gap-1.5 text-sm text-gray-500 hover:text-blue-600 dark:text-gray-400 dark:hover:text-blue-400 mb-6 transition-colors",children:[t.jsx(u,{size:16}),p("è¿åæç« èµè®¯")]}),E?t.jsx("div",{className:"flex justify-center items-center py-20",children:t.jsx(m,{size:"large"})}):k?t.jsx(j,{className:"!rounded-2xl !shadow-lg !border-0",bodyStyle:{padding:0},children:t.jsxs("div",{className:"p-6 lg:p-8",children:[t.jsx(b,{heading:3,className:"!mb-4",children:k.title}),t.jsxs("div",{className:"flex flex-wrap items-center gap-4 mb-6 pb-4 border-b border-gray-100 dark:border-gray-700",children:[t.jsxs("span",{className:"flex items-center gap-1.5 text-sm text-gray-400",children:[t.jsx(f,{size:14}),l(k.created_at)]}),t.jsxs("span",{className:"flex items-center gap-1.5 text-sm text-gray-400",children:[t.jsx(y,{size:14}),k.views," ",p("次æµè§")]})]}),t.jsx("div",{className:g,dangerouslySetInnerHTML:{__html:h(k.content)}})]})}):t.jsx(c,{image:t.jsx(x,{style:{width:200,height:200}}),darkModeImage:t.jsx(d,{style:{width:200,height:200}}),title:p("æç« ä¸å卿已䏿¶"),description:p("è¿åæç« èµè®¯"),className:"py-20"})]})})};export{v 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.