main
dart 139 lines 4.74 KB
Raw
1 import 'package:flutter/material.dart';
2 import 'package:google_fonts/google_fonts.dart';
3
4 import 'colors.dart';
5
6 class AppTypography {
7 static const String fontFamily = 'Inter';
8 static const String codeFontFamily = 'FiraCode';
9
10 static TextTheme get darkTextTheme {
11 return GoogleFonts.interTextTheme(
12 const TextTheme(
13 displayLarge: TextStyle(color: AppColors.darkPrimaryText),
14 displayMedium: TextStyle(color: AppColors.darkPrimaryText),
15 displaySmall: TextStyle(color: AppColors.darkPrimaryText),
16 headlineLarge: TextStyle(color: AppColors.darkPrimaryText),
17 headlineMedium: TextStyle(color: AppColors.darkPrimaryText),
18 headlineSmall: TextStyle(color: AppColors.darkPrimaryText),
19 titleLarge: TextStyle(color: AppColors.darkPrimaryText),
20 titleMedium: TextStyle(color: AppColors.darkPrimaryText),
21 titleSmall: TextStyle(color: AppColors.darkPrimaryText),
22 bodyLarge: TextStyle(color: AppColors.darkPrimaryText),
23 bodyMedium: TextStyle(color: AppColors.darkPrimaryText),
24 bodySmall: TextStyle(color: AppColors.darkMutedText),
25 labelLarge: TextStyle(color: AppColors.darkPrimaryText),
26 labelMedium: TextStyle(color: AppColors.darkPrimaryText),
27 labelSmall: TextStyle(color: AppColors.darkMutedText),
28 ),
29 );
30 }
31
32 static TextTheme get lightTextTheme {
33 return GoogleFonts.interTextTheme(
34 const TextTheme(
35 displayLarge: TextStyle(color: AppColors.lightPrimaryText),
36 displayMedium: TextStyle(color: AppColors.lightPrimaryText),
37 displaySmall: TextStyle(color: AppColors.lightPrimaryText),
38 headlineLarge: TextStyle(color: AppColors.lightPrimaryText),
39 headlineMedium: TextStyle(color: AppColors.lightPrimaryText),
40 headlineSmall: TextStyle(color: AppColors.lightPrimaryText),
41 titleLarge: TextStyle(color: AppColors.lightPrimaryText),
42 titleMedium: TextStyle(color: AppColors.lightPrimaryText),
43 titleSmall: TextStyle(color: AppColors.lightPrimaryText),
44 bodyLarge: TextStyle(color: AppColors.lightPrimaryText),
45 bodyMedium: TextStyle(color: AppColors.lightPrimaryText),
46 bodySmall: TextStyle(color: AppColors.lightMutedText),
47 labelLarge: TextStyle(color: AppColors.lightPrimaryText),
48 labelMedium: TextStyle(color: AppColors.lightPrimaryText),
49 labelSmall: TextStyle(color: AppColors.lightMutedText),
50 ),
51 );
52 }
53
54 static TextTheme get claudeTextTheme {
55 return GoogleFonts.interTextTheme(
56 const TextTheme(
57 displayLarge: TextStyle(
58 color: AppColors.claudePrimaryText,
59 fontSize: 24,
60 fontWeight: FontWeight.w600,
61 height: 1.2,
62 ),
63 displayMedium: TextStyle(
64 color: AppColors.claudePrimaryText,
65 fontSize: 24,
66 fontWeight: FontWeight.w600,
67 height: 1.2,
68 ),
69 displaySmall: TextStyle(
70 color: AppColors.claudePrimaryText,
71 fontSize: 24,
72 fontWeight: FontWeight.w600,
73 height: 1.2,
74 ),
75 headlineLarge: TextStyle(
76 color: AppColors.claudePrimaryText,
77 fontSize: 24,
78 fontWeight: FontWeight.w600,
79 height: 1.2,
80 ),
81 headlineMedium: TextStyle(
82 color: AppColors.claudePrimaryText,
83 fontSize: 20,
84 fontWeight: FontWeight.w600,
85 height: 1.2,
86 ),
87 headlineSmall: TextStyle(
88 color: AppColors.claudePrimaryText,
89 fontSize: 18,
90 fontWeight: FontWeight.w600,
91 height: 1.2,
92 ),
93 titleLarge: TextStyle(
94 color: AppColors.claudePrimaryText,
95 fontSize: 17,
96 fontWeight: FontWeight.w500,
97 height: 1.2,
98 ),
99 ),
100 ).copyWith(
101 bodyLarge: GoogleFonts.inter(
102 color: AppColors.claudePrimaryText,
103 fontSize: 16,
104 fontWeight: FontWeight.w400,
105 height: 1.6,
106 ),
107 bodyMedium: GoogleFonts.inter(
108 color: AppColors.claudePrimaryText,
109 fontSize: 16,
110 fontWeight: FontWeight.w400,
111 height: 1.6,
112 ),
113 bodySmall: GoogleFonts.inter(
114 color: AppColors.claudeMutedText,
115 fontSize: 14,
116 fontWeight: FontWeight.w400,
117 height: 1.6,
118 ),
119 labelLarge: GoogleFonts.inter(
120 color: AppColors.claudePrimaryText,
121 fontSize: 14,
122 fontWeight: FontWeight.w500,
123 height: 1.4,
124 ),
125 labelMedium: GoogleFonts.inter(
126 color: AppColors.claudeMutedText,
127 fontSize: 12,
128 fontWeight: FontWeight.w500,
129 height: 1.4,
130 ),
131 labelSmall: GoogleFonts.inter(
132 color: AppColors.claudeMutedText,
133 fontSize: 10,
134 fontWeight: FontWeight.w500,
135 height: 1.6,
136 ),
137 );
138 }
139 }