feat: flip card transition

This commit is contained in:
2026-03-15 20:19:00 +01:00
parent 202462bad7
commit a8bd579043
5 changed files with 83 additions and 9 deletions

View File

@@ -0,0 +1,35 @@
/**
* Flipping card container: Logos on the front, Flux on the back.
* Uses CSS 3D transform for a performant flip animation when switching via the menubar.
*/
import React from 'react'
import { useLocation, useParams } from 'react-router-dom'
import { LogosPage } from './logos/LogosPage'
import { FluxRoute } from './flux/FluxRoute'
export function FlippingCardView() {
const { pathname } = useLocation()
const { recollectionId } = useParams<{ recollectionId: string }>()
const isFlux = pathname.endsWith('/flux')
return (
<div
className="recollection-flip-container"
style={{ perspective: '1200px' }}
>
<div
className="recollection-flip-card"
data-flipped={isFlux}
aria-hidden={false}
>
<div className="recollection-flip-face recollection-flip-face-front">
<LogosPage />
</div>
<div className="recollection-flip-face recollection-flip-face-back">
{recollectionId && <FluxRoute />}
</div>
</div>
</div>
)
}