RelativeDateHeader.kt 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. package eu.kanade.presentation.components
  2. import androidx.compose.foundation.layout.padding
  3. import androidx.compose.material3.MaterialTheme
  4. import androidx.compose.material3.Text
  5. import androidx.compose.runtime.Composable
  6. import androidx.compose.runtime.remember
  7. import androidx.compose.ui.Modifier
  8. import androidx.compose.ui.platform.LocalContext
  9. import androidx.compose.ui.text.font.FontWeight
  10. import androidx.compose.ui.unit.dp
  11. import eu.kanade.presentation.util.horizontalPadding
  12. import eu.kanade.tachiyomi.util.lang.toRelativeString
  13. import java.text.DateFormat
  14. import java.util.Date
  15. @Composable
  16. fun RelativeDateHeader(
  17. modifier: Modifier = Modifier,
  18. date: Date,
  19. relativeTime: Int,
  20. dateFormat: DateFormat,
  21. ) {
  22. val context = LocalContext.current
  23. Text(
  24. modifier = modifier
  25. .padding(horizontal = horizontalPadding, vertical = 8.dp),
  26. text = remember {
  27. date.toRelativeString(
  28. context,
  29. relativeTime,
  30. dateFormat,
  31. )
  32. },
  33. style = MaterialTheme.typography.bodyMedium.copy(
  34. color = MaterialTheme.colorScheme.onSurfaceVariant,
  35. fontWeight = FontWeight.SemiBold,
  36. ),
  37. )
  38. }