PageSourceSearch

https://vidpipe.ai/assets/newsletters._newsletterId-H5INtIUD.js

js vidpipe.ai collected 2026-10-05 13:16:31 UTC 7,222 bytes, 75 lines download raw bytes

1import{H as i,d,j as e,L as o}from"./index-BllDdWz7.js";import{A as s}from"./AdminLayout-BAVvS6fw.js";import{M as c}from"./index-Dc8cNkzF.js";import"./index-DUhPxtlJ.js";function f(){const{newsletterId:r}=i.useParams(),{data:n,isLoading:a}=d({queryKey:["admin","newsletter",r],queryFn:async()=>{const l=await fetch(`https://api.vidpipe.ai/api/admin/newsletters/${r}`,{credentials:"include"});if(!l.ok)throw new Error("Failed to fetch newsletter");return l.json()}});if(a)return e.jsx(s,{children:e.jsxs("div",{className:"text-center py-12",children:[e.jsx("div",{className:"inline-block h-8 w-8 animate-spin rounded-full border-4 border-solid border-cyan-600 border-r-transparent"}),e.jsx("p",{className:"mt-4 text-slate-600",children:"Loading newsletter..."})]})});if(!n?.newsletter)return e.jsx(s,{children:e.jsx("div",{className:"bg-red-50 border border-red-200 text-red-700 px-4 py-3 rounded",children:"Newsletter not found"})});const t=n.newsletter;return e.jsxs(s,{children:[e.jsx("div",{className:"mb-8",children:e.jsxs("div",{className:"flex items-start justify-between",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"text-2xl font-bold text-slate-900",children:t.title}),e.jsxs("div",{className:"flex items-center gap-4 mt-2",children:[e.jsxs(o,{to:"/admin/users/$userId",params:{userId:t.userId},className:"text-sm text-cyan-600 hover:text-cyan-700",children:["by ",t.user.name||t.user.email]}),e.jsx("span",{className:"text-sm text-slate-500",children:new Date(t.createdAt).toLocaleDateString()})]})]}),e.jsx("a",{href:`/newsletters/${t.id}`,target:"_blank",rel:"noopener noreferrer",className:"px-4 py-2 bg-cyan-600 text-white rounded-md hover:bg-cyan-700 font-medium text-sm",children:"View Public Page →"})]})}),e.jsxs("div",{className:"flex flex-row gap-8",children:[e.jsx("div",{className:"w-80 max-w-sm flex-shrink-0",children:e.jsxs("div",{className:"bg-white shadow-sm rounded-lg p-6 space-y-6",children:[e.jsxs("div",{children:[e.jsx("h3",{className:"text-sm font-semibold text-slate-900 mb-3",children:"Source Video"}),t.video.thumbnailUrl&&e.jsx("img",{src:t.video.thumbnailUrl,alt:t.video.title,className:"w-full rounded mb-2"}),e.jsx("p",{className:"text-sm text-slate-700 font-medium",children:t.video.title}),e.jsx("a",{href:t.video.url,target:"_blank",rel:"noopener noreferrer",className:"text-xs text-cyan-600 hover:text-cyan-700 mt-1 inline-block",children:"Watch Video →"})]}),e.jsxs("div",{children:[e.jsx("h3",{className:"text-sm font-semibold text-slate-900 mb-3",children:"Statistics"}),e.jsxs("dl",{className:"space-y-2",children:[e.jsxs("div",{children:[e.jsx("dt",{className:"text-xs text-slate-500",children:"Word Count"}),e.jsx("dd",{className:"text-sm font-medium text-slate-900",children:t.wordCount.toLocaleString()})]}),e.jsxs("div",{children:[e.jsx("dt",{className:"text-xs text-slate-500",children:"Style"}),e.jsx("dd",{className:"text-sm font-medium text-slate-900 capitalize",children:t.style})]}),e.jsxs("div",{children:[e.jsx("dt",{className:"text-xs text-slate-500",children:"Length"}),e.jsx("dd",{className:"text-sm font-medium text-slate-900 capitalize",children:t.length})]}),e.jsxs("div",{children:[e.jsx("dt",{className:"text-xs text-slate-500",children:"Source Type"}),e.jsx("dd",{className:"text-sm font-medium text-slate-900 capitalize",children:t.sourceType})]})]})]}),e.jsxs("div",{children:[e.jsx("h3",{className:"text-sm font-semibold text-slate-900 mb-3",children:"Email Details"}),e.jsxs("dl",{className:"space-y-2",children:[e.jsxs("div",{children:[e.jsx("dt",{className:"text-xs text-slate-500",children:"Subject Line"}),e.jsx("dd",{className:"text-sm text-slate-900",children:t.subjectLine})]}),e.jsxs("div",{children:[e.jsx("dt",{className:"text-xs text-slate-500",children:"Preview Text"}),e.jsx("dd",{className:"text-sm text-slate-900",children:t.previewText})]})]})]})]})}),e.jsx("div",{className:"flex-1 min-w-0",children:e.jsxs("div",{className:"bg-white shadow-sm rounded-lg p-8",children:[e.jsxs("div",{className:"mb-8 p-6 bg-slate-50 rounded-lg border-2 border-dashed border-slate-300",children:[e.jsx("div",{className:"text-xs text-slate-500 mb-2",children:"EMAIL PREVIEW"}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{children:[e.jsx("span",{className:"text-xs font-semibold text-slate-700",children:"Subject:"}),e.jsx("p",{className:"text-sm font-medium text-slate-900",children:t.subjectLine})]}),e.jsxs("div",{children:[e.jsx("span",{className:"text-xs font-semibold text-slate-700",children:"Preview:"}),e.jsx("p",{className:"text-sm text-slate-600",children:t.previewText})]})]})]}),e.jsx("div",{className:"newsletter-content w-full",children:e.jsx(c,{children:t.content})}),e.jsx("style",{children:`
2              .newsletter-content {
3                font-size: 1.125rem;
4                line-height: 1.75rem;
5                color: #374151;
6              }
7              .newsletter-content h1 {
8                font-size: 2.25rem;
9                font-weight: 800;
10                margin-top: 2rem;
11                margin-bottom: 1rem;
12                color: #111827;
13              }
14              .newsletter-content h2 {
15                font-size: 1.875rem;
16                font-weight: 700;
17                margin-top: 2rem;
18                margin-bottom: 1rem;
19                color: #111827;
20              }
21              .newsletter-content h3 {
22                font-size: 1.5rem;
23                font-weight: 600;
24                margin-top: 1.5rem;
25                margin-bottom: 0.75rem;
26                color: #111827;
27              }
28              .newsletter-content p {
29                margin-bottom: 1.25rem;
30              }
31              .newsletter-content ul, .newsletter-content ol {
32                margin-bottom: 1.25rem;
33                padding-left: 1.5rem;
34              }
35              .newsletter-content li {
36                margin-bottom: 0.5rem;
37              }
38              .newsletter-content a {
39                color: #9333ea;
40                text-decoration: underline;
41              }
42              .newsletter-content a:hover {
43                color: #7e22ce;
44              }
45              .newsletter-content strong {
46                font-weight: 600;
47              }
48              .newsletter-content code {
49                background-color: #f3f4f6;
50                color: #1f2937;
51                padding: 0.125rem 0.25rem;
52                border-radius: 0.25rem;
53                font-size: 0.875em;
54              }
55              .newsletter-content pre {
56                background-color: #1f2937;
57                color: #f9fafb;
58                padding: 1rem;
59                border-radius: 0.5rem;
60                overflow-x: auto;
61                margin-bottom: 1.25rem;
62              }
63              .newsletter-content pre code {
64                background-color: transparent;
65                color: #f9fafb;
66                padding: 0;
67              }
68              .newsletter-content blockquote {
69                border-left: 4px solid #0891b2;
70                padding-left: 1rem;
71                color: #6b7280;
72                font-style: italic;
73                margin-bottom: 1.25rem;
74              }
75            `})]})})]})]})}export{f as component};

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.