Sheets via neuer KeyboardAwareSheet-Composable (in Modal pattern, auto-grow mit Tastatur, paddingBottom-Lift): EditMail, AddDomain, CreateRoom, ConnectMail. GameOverScreen behält Spring-Slide-In, nutzt RN Keyboard.addListener für Lift. - KeyboardAwareSheet.tsx — universal modal with sheet-grow + keyboard-padding - react-native-keyboard-controller installiert + KeyboardProvider in Root - Snake: time + ScoreProgressBar + useSnakeSounds (haptic, audio TODO) - Tetris: title weg, Buttons zentriert, kein Pressable mit style-fn - DPad-Buttons 60→48, more bg, no scale - useMe: pub-sub listener pattern für app-weite avatar/nickname-Updates - dm.tsx: resolveAvatar wrap (iron.png-Warning) - Mail-error-humanizer + locales Recovery-Doc-Update in docs/internal/RECOVERY_LOG_2026-05-10.md Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
53 lines
3.2 KiB
XML
53 lines
3.2 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 56">
|
|
<defs>
|
|
<radialGradient id="rb-glow" cx="50%" cy="50%" r="50%">
|
|
<stop offset="0%" stop-color="#ffcc44" stop-opacity="1"/>
|
|
<stop offset="25%" stop-color="#ff9900" stop-opacity="0.85"/>
|
|
<stop offset="55%" stop-color="#ff6600" stop-opacity="0.45"/>
|
|
<stop offset="100%" stop-color="#ff3300" stop-opacity="0"/>
|
|
</radialGradient>
|
|
<linearGradient id="rb-metal" x1="0%" y1="0%" x2="0%" y2="100%">
|
|
<stop offset="0%" stop-color="#c8d8ea"/>
|
|
<stop offset="30%" stop-color="#8898aa"/>
|
|
<stop offset="60%" stop-color="#566070"/>
|
|
<stop offset="100%" stop-color="#a0b4c4"/>
|
|
</linearGradient>
|
|
<linearGradient id="rb-shine" x1="0%" y1="0%" x2="0%" y2="100%">
|
|
<stop offset="0%" stop-color="rgba(220,240,255,0.55)"/>
|
|
<stop offset="100%" stop-color="rgba(220,240,255,0)"/>
|
|
</linearGradient>
|
|
</defs>
|
|
<circle cx="70" cy="28" r="26" fill="url(#rb-glow)" opacity="0.95"/>
|
|
<g stroke="#ffcc44" stroke-linecap="round">
|
|
<line x1="70" y1="2" x2="70" y2="54" stroke-width="1.6"/>
|
|
<line x1="44" y1="28" x2="96" y2="28" stroke-width="1.6"/>
|
|
<line x1="51" y1="9" x2="89" y2="47" stroke-width="1.2"/>
|
|
<line x1="89" y1="9" x2="51" y2="47" stroke-width="1.2"/>
|
|
<line x1="58" y1="4" x2="56" y2="1" stroke-width="0.9" opacity="0.7"/>
|
|
<line x1="82" y1="4" x2="84" y2="1" stroke-width="0.9" opacity="0.7"/>
|
|
<line x1="94" y1="16" x2="97" y2="14" stroke-width="0.9" opacity="0.7"/>
|
|
<line x1="94" y1="40" x2="97" y2="42" stroke-width="0.9" opacity="0.7"/>
|
|
<line x1="82" y1="52" x2="84" y2="55" stroke-width="0.9" opacity="0.7"/>
|
|
<line x1="58" y1="52" x2="56" y2="55" stroke-width="0.9" opacity="0.7"/>
|
|
<line x1="46" y1="40" x2="43" y2="42" stroke-width="0.9" opacity="0.7"/>
|
|
<line x1="46" y1="16" x2="43" y2="14" stroke-width="0.9" opacity="0.7"/>
|
|
</g>
|
|
<circle cx="61" cy="4" r="1.4" fill="#ffcc44" opacity="0.85"/>
|
|
<circle cx="79" cy="4" r="1.1" fill="#ffcc44" opacity="0.75"/>
|
|
<circle cx="96" cy="10" r="1.0" fill="#ffcc44" opacity="0.70"/>
|
|
<circle cx="98" cy="45" r="1.3" fill="#ffcc44" opacity="0.75"/>
|
|
<circle cx="62" cy="51" r="1.5" fill="#ffcc44" opacity="0.80"/>
|
|
<circle cx="44" cy="42" r="1.0" fill="#ffcc44" opacity="0.65"/>
|
|
<ellipse cx="24" cy="28" rx="16" ry="10.5" fill="none" stroke="url(#rb-metal)" stroke-width="6"/>
|
|
<ellipse cx="24" cy="24" rx="11" ry="4.5" fill="none" stroke="url(#rb-shine)" stroke-width="3"/>
|
|
<ellipse cx="46" cy="28" rx="16" ry="10.5" fill="none" stroke="url(#rb-metal)" stroke-width="6"/>
|
|
<ellipse cx="46" cy="24" rx="11" ry="4.5" fill="none" stroke="url(#rb-shine)" stroke-width="3"/>
|
|
<ellipse cx="94" cy="28" rx="16" ry="10.5" fill="none" stroke="url(#rb-metal)" stroke-width="6"/>
|
|
<ellipse cx="94" cy="24" rx="11" ry="4.5" fill="none" stroke="url(#rb-shine)" stroke-width="3"/>
|
|
<ellipse cx="116" cy="28" rx="16" ry="10.5" fill="none" stroke="url(#rb-metal)" stroke-width="6"/>
|
|
<ellipse cx="116" cy="24" rx="11" ry="4.5" fill="none" stroke="url(#rb-shine)" stroke-width="3"/>
|
|
<circle cx="70" cy="28" r="5" fill="#ffaa00"/>
|
|
<circle cx="70" cy="28" r="2.8" fill="#ffdd88"/>
|
|
<circle cx="70" cy="28" r="1.2" fill="#fffbe0"/>
|
|
</svg>
|