web-next: panel HISTORIALES en /account (debajo de Opciones de personaje)
Tercer panel plegable «HISTORIALES» (id account-history) con 4 herramientas: Historial de PD y PV, transacciones, sanciones y seguridad (points-history/ trans-history/ban-history/security-history; iconos pointsh/dnth/banh/securityh). Arranca CERRADO como los otros dos (el usuario lo abre al click). Prop defaultOpen añadido a Panel (no usado aquí). Claves i18n en Account (es/en). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -33,17 +33,24 @@ export function AccountTools({ isAdmin }: { isAdmin: boolean }) {
|
||||
{ href: '/transfer', icon: 'tranfer-char-icon', label: t('svcTransfer'), desc: t('svcTransferDesc') },
|
||||
{ href: '/battlepay', icon: 'store-icon', label: t('svcStore'), desc: t('svcStoreDesc') },
|
||||
]
|
||||
const historyTools: Tool[] = [
|
||||
{ href: '/points-history', icon: 'pointsh-icon', label: t('svcPointsHistory'), desc: t('svcPointsHistoryDesc') },
|
||||
{ href: '/trans-history', icon: 'dnth-icon', label: t('svcTransHistory'), desc: t('svcTransHistoryDesc') },
|
||||
{ href: '/ban-history', icon: 'banh-icon', label: t('svcBanHistory'), desc: t('svcBanHistoryDesc') },
|
||||
{ href: '/security-history', icon: 'securityh-icon', label: t('svcSecurityHistory'), desc: t('svcSecurityHistoryDesc') },
|
||||
]
|
||||
|
||||
return (
|
||||
<div className="body-box-content-account">
|
||||
<Panel id="account-settings" arrow="fa-arrow-down-account" title={t('accountOptions')} tools={accountTools} />
|
||||
<Panel id="character-settings" arrow="fa-arrow-down-character" title={t('characterOptions')} tools={characterTools} />
|
||||
<Panel id="account-history" arrow="fa-arrow-down-history" title={t('historyOptions')} tools={historyTools} />
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
function Panel({ id, arrow, title, tools }: { id: string; arrow: string; title: string; tools: Tool[] }) {
|
||||
const [open, setOpen] = useState(false)
|
||||
function Panel({ id, arrow, title, tools, defaultOpen = false }: { id: string; arrow: string; title: string; tools: Tool[]; defaultOpen?: boolean }) {
|
||||
const [open, setOpen] = useState(defaultOpen)
|
||||
const rows: Tool[][] = []
|
||||
for (let i = 0; i < tools.length; i += 2) rows.push(tools.slice(i, i + 2))
|
||||
|
||||
|
||||
@@ -116,7 +116,16 @@
|
||||
"recruited": "Recruited account",
|
||||
"recruitedFriends": "Recruited friends",
|
||||
"yes": "Yes",
|
||||
"no": "No"
|
||||
"no": "No",
|
||||
"historyOptions": "HISTORIES",
|
||||
"svcPointsHistory": "PD & VP history",
|
||||
"svcPointsHistoryDesc": "Check where you've spent your PD and VP",
|
||||
"svcTransHistory": "Transaction history",
|
||||
"svcTransHistoryDesc": "Check the operations you've made",
|
||||
"svcBanHistory": "Ban history",
|
||||
"svcBanHistoryDesc": "Check your account's sanctions",
|
||||
"svcSecurityHistory": "Security history",
|
||||
"svcSecurityHistoryDesc": "Check your account's security"
|
||||
},
|
||||
"SelectAccount": {
|
||||
"title": "Select your game account",
|
||||
|
||||
@@ -116,7 +116,16 @@
|
||||
"recruited": "Cuenta reclutada",
|
||||
"recruitedFriends": "Amigos reclutados",
|
||||
"yes": "Sí",
|
||||
"no": "No"
|
||||
"no": "No",
|
||||
"historyOptions": "HISTORIALES",
|
||||
"svcPointsHistory": "Historial de PD y PV",
|
||||
"svcPointsHistoryDesc": "Revisa en qué has usado tus PD y PV",
|
||||
"svcTransHistory": "Historial de transacciones",
|
||||
"svcTransHistoryDesc": "Revisa los trámites que has realizado",
|
||||
"svcBanHistory": "Historial de sanciones",
|
||||
"svcBanHistoryDesc": "Revisa las sanciones de tu cuenta",
|
||||
"svcSecurityHistory": "Historial de seguridad",
|
||||
"svcSecurityHistoryDesc": "Revisa la seguridad de tu cuenta"
|
||||
},
|
||||
"SelectAccount": {
|
||||
"title": "Selecciona tu cuenta de juego",
|
||||
|
||||
Reference in New Issue
Block a user