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>
31 lines
1.2 KiB
TypeScript
31 lines
1.2 KiB
TypeScript
/**
|
||
* LanguageIcon — custom SVG für Sprache-Setting (statt Ionicons language-outline).
|
||
*
|
||
* SVG-Source: User-provided (24×24 viewBox, currentColor stroke).
|
||
* Pattern: A-glyph + speech-bubble + Aa-letters → Translation/Language-Picker affordance.
|
||
*/
|
||
import { Svg, G, Path } from 'react-native-svg';
|
||
|
||
type Props = {
|
||
size?: number;
|
||
color?: string;
|
||
};
|
||
|
||
export function LanguageIcon({ size = 24, color = 'currentColor' }: Props) {
|
||
return (
|
||
<Svg width={size} height={size} viewBox="0 0 24 24" fill="none">
|
||
<G stroke={color} strokeLinecap="round" strokeWidth={2}>
|
||
<Path
|
||
strokeLinejoin="round"
|
||
d="M14 19c3.771 0 5.657 0 6.828-1.172S22 14.771 22 11s0-5.657-1.172-6.828S17.771 3 14 3h-4C6.229 3 4.343 3 3.172 4.172S2 7.229 2 11s0 5.657 1.172 6.828c.653.654 1.528.943 2.828 1.07"
|
||
/>
|
||
<Path d="M14 19c-1.236 0-2.598.5-3.841 1.145c-1.998 1.037-2.997 1.556-3.489 1.225s-.399-1.355-.212-3.404L6.5 17.5" />
|
||
<Path
|
||
strokeLinejoin="round"
|
||
d="m5.5 13.5l1-2m0 0l1.106-2.211a1 1 0 0 1 1.788 0L10.5 11.5m-4 0h4m0 0l1 2m1-6h1.982V9c0 .5-.496 1.5-1.487 1.5m3.964-3v2m0 0v4m0-4H18.5"
|
||
/>
|
||
</G>
|
||
</Svg>
|
||
);
|
||
}
|