PageSourceSearch

https://verifiedfundingcompanies.com/_assets/admin.blog-posts-BpV1QfJP.js

js verifiedfundingcompanies.com collected 2026-10-04 23:27:05 UTC 6,231 bytes, 1 lines download raw bytes

1import{r as m,j as e,w as P,bm as p,b6 as T,b4 as B,bn as D,b5 as M,aj as L,g as z,L as g,aS as F,aV as E}from"./vendor-D7J474Ie.js";import{a as n,S as V}from"./index-B_x9Ts2k.js";import{B as u}from"./Button-Dnk_C7aa.js";import{u as $}from"./useAdminBlogPosts-zHydKo3W.js";import{u as U}from"./useMutateBlogPosts-N53ql79K.js";import{I as W}from"./Input-COAVWVDD.js";import{S as b,a as k,b as N,c as f,e as _}from"./Select-DF_o9hga.js";import{a as H,B as K}from"./blogTypes-CizLBT5i.js";import"./index-Dwvcb9IQ.js";import"./index-C8xlIjba.js";const R="_container_4dtqb_1",G="_filters_4dtqb_7",J="_searchWrapper_4dtqb_25",O="_searchIcon_4dtqb_30",Q="_searchInput_4dtqb_39",X="_selectFilters_4dtqb_43",Y="_list_4dtqb_60",Z="_postItem_4dtqb_66",ee="_postImage_4dtqb_83",se="_postDetails_4dtqb_101",te="_postTitle_4dtqb_108",ae="_postMeta_4dtqb_118",ne="_status_4dtqb_131",le="_status_published_4dtqb_139",re="_status_draft_4dtqb_144",oe="_status_archived_4dtqb_149",ie="_category_4dtqb_154",ce="_postActions_4dtqb_163",de="_errorState_4dtqb_168",he="_emptyState_4dtqb_169",me="_skeletonImage_4dtqb_178",_e="_skeletonTitle_4dtqb_182",ue="_skeletonMeta_4dtqb_187",xe="_skeletonAction_4dtqb_191",t={container:R,filters:G,searchWrapper:J,searchIcon:O,searchInput:Q,selectFilters:X,list:Y,postItem:Z,postImage:ee,postDetails:se,postTitle:te,postMeta:ae,status:ne,status_published:le,status_draft:re,status_archived:oe,category:ie,postActions:ce,errorState:de,emptyState:he,skeletonImage:me,skeletonTitle:_e,skeletonMeta:ue,skeletonAction:xe};function je({onEdit:r}){const{data:a,isFetching:o,error:x}=$(),{mutate:v,isPending:S}=U(),[c,I]=m.useState(""),[d,y]=m.useState("all"),[h,C]=m.useState("all"),j=m.useMemo(()=>a?a.filter(s=>{const i=s.title.toLowerCase().includes(c.toLowerCase())||s.authorName&&s.authorName.toLowerCase().includes(c.toLowerCase()),q=d==="all"||s.status===d,w=h==="all"||s.category===h;return i&&q&&w}).sort((s,i)=>new Date(i.createdAt??0).getTime()-new Date(s.createdAt??0).getTime()):[],[a,c,d,h]),A=s=>{window.confirm("Are you sure you want to delete this post?")&&v({id:s})};return x?e.jsxs("div",{className:t.errorState,children:["Error loading posts: ",x.message]}):e.jsxs("div",{className:t.container,children:[e.jsxs("div",{className:t.filters,children:[e.jsxs("div",{className:t.searchWrapper,children:[e.jsx(P,{size:18,className:t.searchIcon}),e.jsx(W,{placeholder:"Search by title or author...",value:c,onChange:s=>I(s.target.value),className:t.searchInput})]}),e.jsxs("div",{className:t.selectFilters,children:[e.jsxs(b,{value:d,onValueChange:y,children:[e.jsxs(k,{children:[e.jsx(p,{size:14})," Status: ",e.jsx(N,{})]}),e.jsxs(f,{children:[e.jsx(_,{value:"all",children:"All Statuses"}),H.map(s=>e.jsx(_,{value:s,children:s.charAt(0).toUpperCase()+s.slice(1)},s))]})]}),e.jsxs(b,{value:h,onValueChange:C,children:[e.jsxs(k,{children:[e.jsx(p,{size:14})," Category: ",e.jsx(N,{})]}),e.jsxs(f,{children:[e.jsx(_,{value:"all",children:"All Categories"}),K.map(s=>e.jsx(_,{value:s,children:s.charAt(0).toUpperCase()+s.slice(1)},s))]})]})]})]}),e.jsx("div",{className:t.list,children:o?Array.from({length:5}).map((s,i)=>e.jsx(ge,{},i)):j.length>0?j.map(s=>e.jsxs("div",{className:t.postItem,children:[e.jsx("div",{className:t.postImage,children:s.featuredImageUrl?e.jsx("img",{src:s.featuredImageUrl,alt:s.title}):e.jsx(T,{size:24})}),e.jsxs("div",{className:t.postDetails,children:[e.jsx("h3",{className:t.postTitle,children:s.title}),e.jsxs("div",{className:t.postMeta,children:[e.jsxs("span",{children:["By ",s.authorName||"Unknown"]}),e.jsx("span",{children:"|"}),e.jsx("span",{children:s.publishedAt?new Date(s.publishedAt).toLocaleDateString():"Not Published"}),e.jsx("span",{children:"|"}),e.jsx("span",{className:`${t.status} ${pe(s.status||"draft",t)}`,children:s.status||"draft"}),e.jsx("span",{children:"|"}),e.jsx("span",{className:t.category,children:s.category})]})]}),e.jsxs("div",{className:t.postActions,children:[e.jsx(u,{variant:"ghost",size:"icon-sm",onClick:()=>r(s),"aria-label":"Edit Post",children:e.jsx(B,{size:16})}),e.jsx(u,{variant:"ghost",size:"icon-sm",asChild:!0,children:e.jsx("a",{href:`/blog/${s.slug}`,target:"_blank",rel:"noopener noreferrer","aria-label":"View Post",children:e.jsx(D,{size:16})})}),e.jsx(u,{variant:"ghost",size:"icon-sm",onClick:()=>A(s.id),disabled:S,"aria-label":"Delete Post",children:e.jsx(M,{size:16})})]})]},s.id)):e.jsx("div",{className:t.emptyState,children:"No blog posts found."})})]})}const pe=(r,a)=>{const o=`status_${r}`;return a[o]||""},ge=()=>e.jsxs("div",{className:t.postItem,children:[e.jsx("div",{className:t.postImage,children:e.jsx(n,{className:t.
1skeletonImage})}),e.jsxs("div",{className:t.postDetails,children:[e.jsx(n,{className:t.skeletonTitle}),e.jsx(n,{className:t.skeletonMeta})]}),e.jsxs("div",{className:t.postActions,children:[e.jsx(n,{className:t.skeletonAction}),e.jsx(n,{className:t.skeletonAction}),e.jsx(n,{className:t.skeletonAction})]})]}),be="_container_1waek_1",ke="_header_1waek_7",Ne="_backLink_1waek_11",fe="_headerContent_1waek_26",ve="_title_1waek_34",Se="_subtitle_1waek_42",l={container:be,header:ke,backLink:Ne,headerContent:fe,title:ve,subtitle:Se};function Me(){const r=L(),a=o=>{r(`/admin/blog-posts/${o.id}/edit`)};return e.jsxs(e.Fragment,{children:[e.jsxs(z,{children:[e.jsx("title",{children:"Manage Blog Posts - Admin"}),e.jsx("meta",{name:"description",content:"Create, edit, and manage blog posts for the Verified Trader Funding website."}),e.jsx("meta",{name:"robots",content:"noindex,nofollow"}),e.jsx("link",{rel:"canonical",href:V.generateCanonicalUrl("/admin/blog-posts")})]}),e.jsxs("div",{className:l.container,children:[e.jsxs("header",{className:l.header,children:[e.jsxs(g,{to:"/admin",className:l.backLink,children:[e.jsx(F,{size:20}),"Back to Dashboard"]}),e.jsxs("div",{className:l.headerContent,children:[e.jsxs("div",{children:[e.jsx("h1",{className:l.title,children:"Manage Blog Posts"}),e.jsx("p",{className:l.subtitle,children:"Create, edit, and manage your blog content."})]}),e.jsx(u,{asChild:!0,children:e.jsxs(g,{to:"/admin/blog-posts/new",children:[e.jsx(E,{size:16})," New Blog Post"]})})]})]}),e.jsx("main",{children:e.jsx(je,{onEdit:a})})]})]})}export{Me 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.