feat: add Recapt analytics, remove push-notifications extension, UI fixes
- Integrate Recapt session tracking with user identity in dashboard layout - Remove push-notifications extension from settings, panel registry, and toggle list - Fix journal entry preview overflow on narrow viewports - Update transaction manual booking button label - Clarify invoice email error message to reference env vars Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.6
parent
325c930839
commit
497ef876bb
@@ -0,0 +1,45 @@
|
||||
'use client'
|
||||
|
||||
import { useEffect } from 'react'
|
||||
|
||||
declare global {
|
||||
interface Window {
|
||||
Recapt?: {
|
||||
session: {
|
||||
setIdentity: (identity: {
|
||||
uid: string
|
||||
email?: string
|
||||
nickname?: string
|
||||
fullName?: string
|
||||
}) => void
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export function RecaptIdentify({
|
||||
userId,
|
||||
email,
|
||||
displayName,
|
||||
}: {
|
||||
userId: string
|
||||
email?: string
|
||||
displayName?: string
|
||||
}) {
|
||||
useEffect(() => {
|
||||
const interval = setInterval(() => {
|
||||
if (window.Recapt) {
|
||||
window.Recapt.session.setIdentity({
|
||||
uid: userId,
|
||||
email: email,
|
||||
fullName: displayName,
|
||||
})
|
||||
clearInterval(interval)
|
||||
}
|
||||
}, 500)
|
||||
|
||||
return () => clearInterval(interval)
|
||||
}, [userId, email, displayName])
|
||||
|
||||
return null
|
||||
}
|
||||
@@ -98,11 +98,11 @@ export default function JournalEntryPreview({
|
||||
if (lines.length === 0) return null
|
||||
|
||||
return (
|
||||
<div className="rounded-lg border bg-muted/30 px-3 py-2.5">
|
||||
<div className="rounded-lg border bg-muted/30 px-3 py-2.5 overflow-hidden">
|
||||
<p className="text-xs font-medium text-muted-foreground mb-1.5">Verifikation</p>
|
||||
<div className="space-y-0.5 font-mono text-xs">
|
||||
<div className="space-y-0.5 font-mono text-xs min-w-0">
|
||||
{lines.map((line, i) => (
|
||||
<div key={i} className="flex items-baseline gap-2">
|
||||
<div key={i} className="flex items-baseline gap-2 min-w-0">
|
||||
<span className={`w-12 text-right flex-shrink-0 ${line.side === 'debet' ? 'text-foreground' : 'text-muted-foreground'}`}>
|
||||
{line.side === 'debet' ? 'Debet' : 'Kredit'}
|
||||
</span>
|
||||
|
||||
Reference in New Issue
Block a user