docs: add comprehensive Stripe billing guide
All checks were successful
Deploy to Production / Build and Deploy (push) Successful in 4s
All checks were successful
Deploy to Production / Build and Deploy (push) Successful in 4s
Covers architecture, configuration steps, user flows, API routes, webhooks, pricing, testing with Stripe CLI, production checklist, and troubleshooting.
This commit is contained in:
@@ -48,6 +48,7 @@ function fmtDate(date: Date | string, language: string): string {
|
||||
}
|
||||
|
||||
function VersionPreview({ entry, language }: { entry: NoteHistoryEntry; language: string }) {
|
||||
const { t } = useLanguage()
|
||||
const isMd = entry.type === 'markdown' || entry.isMarkdown
|
||||
const isCl = entry.type === 'checklist'
|
||||
const isRt = entry.type === 'richtext'
|
||||
@@ -56,15 +57,15 @@ function VersionPreview({ entry, language }: { entry: NoteHistoryEntry; language
|
||||
<div className="space-y-4">
|
||||
<div>
|
||||
<p className="text-[11px] font-semibold uppercase tracking-wider text-muted-foreground mb-1">
|
||||
{language === 'fr' ? 'Titre' : 'Title'}
|
||||
{t('noteHistory.title')}
|
||||
</p>
|
||||
<p className="text-sm text-foreground font-medium">
|
||||
{entry.title || (language === 'fr' ? 'Sans titre' : 'Untitled')}
|
||||
{entry.title || t('noteHistory.untitled')}
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<p className="text-[11px] font-semibold uppercase tracking-wider text-muted-foreground mb-1">
|
||||
{language === 'fr' ? 'Contenu' : 'Content'}
|
||||
{t('noteHistory.content')}
|
||||
</p>
|
||||
<div className="rounded-md border border-border/70 bg-muted/30 p-3 text-sm text-foreground overflow-auto max-h-[48vh]">
|
||||
{isCl && entry.checkItems ? (
|
||||
|
||||
Reference in New Issue
Block a user