- **Motivations :** Assurer passage du lint strict et clarifier la logique paiements/publications. - **Root causes :** Fonctions trop longues, promesses non gérées et typages WebLN/Nostr incomplets. - **Correctifs :** Refactor PaymentModal (handlers void), extraction helpers articlePublisher, simplification polling sponsoring/zap, corrections curly et awaits. - **Evolutions :** Nouveau module articlePublisherHelpers pour présentation/aiguillage contenu privé. - **Page affectées :** components/PaymentModal.tsx, lib/articlePublisher.ts, lib/articlePublisherHelpers.ts, lib/paymentPolling.ts, lib/sponsoring.ts, lib/nostrZapVerification.ts et dépendances liées.
22 lines
694 B
TypeScript
22 lines
694 B
TypeScript
import Link from 'next/link'
|
|
import { ConnectButton } from '@/components/ConnectButton'
|
|
|
|
export function ProfileHeader() {
|
|
return (
|
|
<header className="bg-white shadow-sm">
|
|
<div className="max-w-4xl mx-auto px-4 py-4 flex justify-between items-center">
|
|
<h1 className="text-2xl font-bold text-gray-900">zapwall4Science</h1>
|
|
<div className="flex items-center gap-4">
|
|
<Link
|
|
href="/publish"
|
|
className="px-4 py-2 bg-blue-600 hover:bg-blue-700 text-white rounded-lg text-sm font-medium transition-colors"
|
|
>
|
|
Publish Article
|
|
</Link>
|
|
<ConnectButton />
|
|
</div>
|
|
</div>
|
|
</header>
|
|
)
|
|
}
|