research-notes/blog/src/components/notes/PromptsSection.tsx
jordan ec0b89206f
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
feat: add audio playback and enhanced note UI with sidebar navigation
- Add AudioSection component with media player and waveform visualization
- Add NoteContent component with inline link support and syntax highlighting
- Add NoteSidebar with collapsible sections for navigation
- Add SidebarContext for managing sidebar state
- Update note page layout to use new component architecture
- Add assets utility for GCS audio/video URL generation
- Update content library with audio/skill/prompt type support
- Add vision.md with editorial guidelines
- Update .gitignore with additional security patterns
- Add upload-asset.sh script for GCS asset management

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-08 11:08:25 -07:00

30 lines
760 B
TypeScript

"use client";
import { CopyableBlock } from "@/components/copyable";
import { SidebarItem } from "./SidebarItem";
import type { Prompt } from "@/lib/content";
interface PromptsSectionProps {
prompts: Prompt[];
}
export function PromptsSection({ prompts }: PromptsSectionProps) {
return (
<section className="mb-8">
<h2 className="text-sm font-medium text-muted-foreground mb-4">
Prompts Used
</h2>
<div className="space-y-4">
{prompts.map((prompt) => (
<SidebarItem key={prompt.id} id={`prompt-${prompt.id}`}>
<CopyableBlock
label={prompt.label}
content={prompt.content.trim()}
/>
</SidebarItem>
))}
</div>
</section>
);
}