refactor: code quality cleanup — remove any types, add logger, rename Kine to Tabata

- Phase 0: Rename all Kine references to Tabata (types, files, imports, i18n, analytics events)
- Phase 1: Add test coverage for tabataProgramStore, workoutProgramStore, and color utils (47 tests)
- Phase 2: Remove all `any` types from production code with proper typed replacements
- Phase 3: Replace ~60 raw console.* calls with __DEV__-gated logger utility
- Phase 4: Verify .DS_Store housekeeping (already clean)

0 TypeScript errors, 583/583 tests passing.
This commit is contained in:
Millian Lamiaux
2026-04-17 18:56:24 +02:00
parent e0e02c4550
commit 791f432334
176 changed files with 16508 additions and 2305 deletions

View File

@@ -13,6 +13,7 @@ import { useTranslation } from 'react-i18next'
import { useHaptics } from '@/src/shared/hooks'
import { darkColors, BRAND } from '@/src/shared/theme'
import { SPACING } from '@/src/shared/constants/spacing'
import { TYPOGRAPHY, FONT_FAMILY } from '@/src/shared/constants/typography'
export default function PrivacyPolicyScreen() {
const { t } = useTranslation('screens')
@@ -144,7 +145,7 @@ const styles = StyleSheet.create({
paddingHorizontal: SPACING[4],
paddingVertical: SPACING[3],
borderBottomWidth: 1,
borderBottomColor: darkColors.border.glass,
borderBottomColor: darkColors.border.dim,
},
backButton: {
width: 44,
@@ -153,8 +154,7 @@ const styles = StyleSheet.create({
justifyContent: 'center',
},
headerTitle: {
fontSize: 17,
fontWeight: '600',
...TYPOGRAPHY.HEADLINE,
color: darkColors.text.primary,
},
scrollView: {
@@ -168,13 +168,13 @@ const styles = StyleSheet.create({
marginBottom: SPACING[6],
},
sectionTitle: {
fontSize: 20,
fontWeight: '700',
...TYPOGRAPHY.TITLE_3,
fontFamily: FONT_FAMILY.SANS_BOLD,
color: darkColors.text.primary,
marginBottom: SPACING[3],
},
paragraph: {
fontSize: 15,
...TYPOGRAPHY.BODY,
lineHeight: 22,
color: darkColors.text.secondary,
},
@@ -186,18 +186,18 @@ const styles = StyleSheet.create({
marginBottom: SPACING[2],
},
bullet: {
fontSize: 15,
...TYPOGRAPHY.BODY,
color: BRAND.PRIMARY,
marginRight: SPACING[2],
},
bulletText: {
flex: 1,
fontSize: 15,
...TYPOGRAPHY.BODY,
lineHeight: 22,
color: darkColors.text.secondary,
},
email: {
fontSize: 15,
...TYPOGRAPHY.BODY,
color: BRAND.PRIMARY,
marginTop: SPACING[2],
},