- Add multi-language support for registration and user menu components

- Refactor `TextEditor` to include book-closing functionality with updated toolbar buttons
- Replace `generateHTML` with a lightweight custom TipTap-to-HTML renderer
- Update and lock `esbuild` and related dependencies to latest versions
This commit is contained in:
natreex
2025-12-23 23:24:17 -05:00
parent 1f2513d565
commit 0366a2d444
10 changed files with 728 additions and 537 deletions

View File

@@ -3,7 +3,8 @@
import { useState } from 'react';
import { useTranslations } from 'next-intl';
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
import { faLock, faWifi, faEye, faEyeSlash } from '@fortawesome/free-solid-svg-icons';
import { faLock, faWifi, faEye, faEyeSlash, faSignOutAlt } from '@fortawesome/free-solid-svg-icons';
import System from '@/lib/models/System';
interface OfflinePinVerifyProps {
onSuccess: (userId: string) => void;
@@ -59,6 +60,12 @@ export default function OfflinePinVerify({ onSuccess, onCancel }: OfflinePinVeri
}
};
const handleLogout = async () => {
System.removeCookie("token");
await window.electron.removeToken();
window.electron.logout();
};
return (
<div className="fixed inset-0 z-50 flex items-center justify-center bg-background">
<div className="bg-tertiary rounded-2xl p-6 max-w-md w-full mx-4 shadow-2xl">
@@ -118,6 +125,14 @@ export default function OfflinePinVerify({ onSuccess, onCancel }: OfflinePinVeri
{/* Actions */}
<div className="flex gap-3">
<button
onClick={handleLogout}
className="flex-1 px-4 py-2 text-error hover:bg-error/10 rounded-lg transition-all flex items-center justify-center gap-2"
disabled={isLoading}
>
<FontAwesomeIcon icon={faSignOutAlt} className="w-4 h-4" />
<span className="text-sm font-medium">{t('userMenu.logout')}</span>
</button>
{onCancel && (
<button
onClick={onCancel}