feat: Integrate Firebase Cloud Messaging for push notifications; add service to handle token and message reception
This commit is contained in:
@@ -6,33 +6,73 @@ import androidx.compose.ui.text.font.FontFamily
|
||||
import androidx.compose.ui.text.font.FontWeight
|
||||
import androidx.compose.ui.unit.sp
|
||||
|
||||
/**
|
||||
* Telegram-inspired typography system
|
||||
* Based on Telegram Android typography with system default font (Roboto)
|
||||
*/
|
||||
val Typography = Typography(
|
||||
// Основной текст сообщений (как в Telegram: 16sp)
|
||||
bodyLarge = TextStyle(
|
||||
fontFamily = FontFamily.Default,
|
||||
fontWeight = FontWeight.Normal,
|
||||
fontSize = 16.sp,
|
||||
lineHeight = 24.sp,
|
||||
letterSpacing = 0.5.sp
|
||||
),
|
||||
titleLarge = TextStyle(
|
||||
fontFamily = FontFamily.Default,
|
||||
fontWeight = FontWeight.Bold,
|
||||
fontSize = 28.sp,
|
||||
lineHeight = 34.sp,
|
||||
lineHeight = 22.4.sp, // 1.4x
|
||||
letterSpacing = 0.sp
|
||||
),
|
||||
// Имя/заголовок в диалогах (17sp как в Telegram)
|
||||
titleLarge = TextStyle(
|
||||
fontFamily = FontFamily.Default,
|
||||
fontWeight = FontWeight.Medium,
|
||||
fontSize = 17.sp,
|
||||
lineHeight = 23.8.sp, // 1.4x
|
||||
letterSpacing = 0.sp
|
||||
),
|
||||
// Заголовок большой (20sp)
|
||||
headlineLarge = TextStyle(
|
||||
fontFamily = FontFamily.Default,
|
||||
fontWeight = FontWeight.Bold,
|
||||
fontSize = 20.sp,
|
||||
lineHeight = 28.sp,
|
||||
letterSpacing = 0.sp
|
||||
),
|
||||
// Основной текст UI (16sp)
|
||||
bodyMedium = TextStyle(
|
||||
fontFamily = FontFamily.Default,
|
||||
fontWeight = FontWeight.Normal,
|
||||
fontSize = 14.sp,
|
||||
lineHeight = 20.sp,
|
||||
letterSpacing = 0.25.sp
|
||||
fontSize = 16.sp,
|
||||
lineHeight = 22.4.sp, // 1.4x
|
||||
letterSpacing = 0.sp
|
||||
),
|
||||
// Мелкий текст: время, статусы (13sp)
|
||||
bodySmall = TextStyle(
|
||||
fontFamily = FontFamily.Default,
|
||||
fontWeight = FontWeight.Normal,
|
||||
fontSize = 13.sp,
|
||||
lineHeight = 18.2.sp, // 1.4x
|
||||
letterSpacing = 0.sp
|
||||
),
|
||||
// Лейбл для кнопок (14sp)
|
||||
labelLarge = TextStyle(
|
||||
fontFamily = FontFamily.Default,
|
||||
fontWeight = FontWeight.SemiBold,
|
||||
fontSize = 16.sp,
|
||||
lineHeight = 24.sp,
|
||||
fontWeight = FontWeight.Medium,
|
||||
fontSize = 14.sp,
|
||||
lineHeight = 20.sp,
|
||||
letterSpacing = 0.sp
|
||||
),
|
||||
// Средний лейбл (14sp)
|
||||
labelMedium = TextStyle(
|
||||
fontFamily = FontFamily.Default,
|
||||
fontWeight = FontWeight.Normal,
|
||||
fontSize = 14.sp,
|
||||
lineHeight = 19.6.sp, // 1.4x
|
||||
letterSpacing = 0.sp
|
||||
),
|
||||
// Мелкий лейбл (13sp)
|
||||
labelSmall = TextStyle(
|
||||
fontFamily = FontFamily.Default,
|
||||
fontWeight = FontWeight.Normal,
|
||||
fontSize = 13.sp,
|
||||
lineHeight = 18.2.sp, // 1.4x
|
||||
letterSpacing = 0.sp
|
||||
)
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user