react-native-elearn-ui 0.1.12 → 0.1.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/lib/module/index.js +1 -1
  2. package/lib/module/index.js.map +1 -1
  3. package/lib/module/screens/HomeScreen.js +665 -650
  4. package/lib/module/screens/HomeScreen.js.map +1 -1
  5. package/lib/module/screens/index.js +0 -8
  6. package/lib/module/screens/index.js.map +1 -1
  7. package/lib/typescript/src/index.d.ts +1 -1
  8. package/lib/typescript/src/index.d.ts.map +1 -1
  9. package/lib/typescript/src/screens/HomeScreen.d.ts.map +1 -1
  10. package/lib/typescript/src/screens/index.d.ts +0 -8
  11. package/lib/typescript/src/screens/index.d.ts.map +1 -1
  12. package/package.json +1 -1
  13. package/src/index.tsx +0 -8
  14. package/src/screens/HomeScreen.tsx +461 -522
  15. package/src/screens/index.ts +0 -8
  16. package/lib/module/screens/PearlChaptersScreen.js +0 -359
  17. package/lib/module/screens/PearlChaptersScreen.js.map +0 -1
  18. package/lib/module/screens/PearlReaderScreen.js +0 -313
  19. package/lib/module/screens/PearlReaderScreen.js.map +0 -1
  20. package/lib/module/screens/PearlsScreen.js +0 -153
  21. package/lib/module/screens/PearlsScreen.js.map +0 -1
  22. package/lib/module/screens/QbankScreen.js +0 -370
  23. package/lib/module/screens/QbankScreen.js.map +0 -1
  24. package/lib/module/screens/QuestionScreen.js +0 -437
  25. package/lib/module/screens/QuestionScreen.js.map +0 -1
  26. package/lib/module/screens/QuizStartScreen.js +0 -283
  27. package/lib/module/screens/QuizStartScreen.js.map +0 -1
  28. package/lib/module/screens/ResultScreen.js +0 -646
  29. package/lib/module/screens/ResultScreen.js.map +0 -1
  30. package/lib/module/screens/TopicListScreen.js +0 -420
  31. package/lib/module/screens/TopicListScreen.js.map +0 -1
  32. package/lib/module/screens/pearlsMockData.js +0 -77
  33. package/lib/module/screens/pearlsMockData.js.map +0 -1
  34. package/lib/typescript/src/screens/PearlChaptersScreen.d.ts +0 -13
  35. package/lib/typescript/src/screens/PearlChaptersScreen.d.ts.map +0 -1
  36. package/lib/typescript/src/screens/PearlReaderScreen.d.ts +0 -14
  37. package/lib/typescript/src/screens/PearlReaderScreen.d.ts.map +0 -1
  38. package/lib/typescript/src/screens/PearlsScreen.d.ts +0 -11
  39. package/lib/typescript/src/screens/PearlsScreen.d.ts.map +0 -1
  40. package/lib/typescript/src/screens/QbankScreen.d.ts +0 -10
  41. package/lib/typescript/src/screens/QbankScreen.d.ts.map +0 -1
  42. package/lib/typescript/src/screens/QuestionScreen.d.ts +0 -14
  43. package/lib/typescript/src/screens/QuestionScreen.d.ts.map +0 -1
  44. package/lib/typescript/src/screens/QuizStartScreen.d.ts +0 -14
  45. package/lib/typescript/src/screens/QuizStartScreen.d.ts.map +0 -1
  46. package/lib/typescript/src/screens/ResultScreen.d.ts +0 -13
  47. package/lib/typescript/src/screens/ResultScreen.d.ts.map +0 -1
  48. package/lib/typescript/src/screens/TopicListScreen.d.ts +0 -12
  49. package/lib/typescript/src/screens/TopicListScreen.d.ts.map +0 -1
  50. package/lib/typescript/src/screens/pearlsMockData.d.ts +0 -3
  51. package/lib/typescript/src/screens/pearlsMockData.d.ts.map +0 -1
  52. package/src/screens/PearlChaptersScreen.tsx +0 -330
  53. package/src/screens/PearlReaderScreen.tsx +0 -306
  54. package/src/screens/PearlsScreen.tsx +0 -147
  55. package/src/screens/QbankScreen.tsx +0 -327
  56. package/src/screens/QuestionScreen.tsx +0 -423
  57. package/src/screens/QuizStartScreen.tsx +0 -260
  58. package/src/screens/ResultScreen.tsx +0 -618
  59. package/src/screens/TopicListScreen.tsx +0 -388
  60. package/src/screens/pearlsMockData.ts +0 -70
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
 
3
3
  import React, { useState } from 'react';
4
- import { View, ScrollView, StyleSheet, TouchableOpacity, StatusBar, Image, Dimensions } from 'react-native';
4
+ import { View, ScrollView, StyleSheet, TouchableOpacity, StatusBar, Image, useWindowDimensions } from 'react-native';
5
5
  import { SafeAreaView } from 'react-native-safe-area-context';
6
6
  import { useTheme } from "../context/ThemeContext.js";
7
- import { Typography, Card, ProgressBar, Icon } from "../components/index.js";
7
+ import { Typography, Icon } from "../components/index.js";
8
8
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
9
  export const HomeScreen = ({
10
10
  params,
@@ -21,29 +21,19 @@ export const HomeScreen = ({
21
21
  onPressMcqViewDetails
22
22
  }) => {
23
23
  const theme = useTheme();
24
- const [selectedTeaserOption, setSelectedTeaserOption] = useState(null);
25
- const [activeBannerIndex, setActiveBannerIndex] = useState(0);
26
- const handleBannerScroll = event => {
27
- const scrollOffset = event.nativeEvent.contentOffset.x;
28
- const slideWidth = event.nativeEvent.layoutMeasurement.width;
29
- if (slideWidth > 0) {
30
- const index = Math.round(scrollOffset / slideWidth);
31
- setActiveBannerIndex(index);
32
- }
33
- };
34
- const bannerWidth = Dimensions.get('window').width - 32;
24
+ const {
25
+ width
26
+ } = useWindowDimensions();
27
+ const isTablet = width > 768;
28
+ const contentMaxWidth = isTablet ? 768 : '100%';
29
+ const alignSelfCenter = isTablet ? 'center' : 'auto';
30
+ const [selectedTeaserOption, setSelectedTeaserOption] = useState(0);
35
31
  const headerData = params?.header || {
36
32
  appName: 'Residency',
37
33
  subName: 'Pathology',
38
34
  notificationCount: 2,
39
35
  avatarUrl: 'https://images.unsplash.com/photo-1559839734-2b71ea197ec2?q=80&w=200&auto=format&fit=crop'
40
36
  };
41
- const bannersData = params?.banner || [{
42
- title: 'Test Your Knowledge – Daily',
43
- subtitle: 'Smart Learning for Future Doctors',
44
- imageUrl: 'https://images.unsplash.com/photo-1576091160550-2173dba999ef?q=80&w=400&auto=format&fit=crop',
45
- gradientColors: ['#15803D', '#166534']
46
- }];
47
37
  const headersConfig = params?.sectionHeaders || {};
48
38
  const getHeaderConfig = (key, defaultTitle) => {
49
39
  const section = headersConfig[key];
@@ -53,14 +43,14 @@ export const HomeScreen = ({
53
43
  };
54
44
  };
55
45
  const quickLinksHeader = getHeaderConfig('quickLinks', 'QUICK LINKS');
56
- const dailyMcqHeader = getHeaderConfig('dailyMcq', 'BRAIN TEASERS OF THE DAY');
46
+ const dailyMcqHeader = getHeaderConfig('dailyMcq', 'MCQ OF THE DAY');
57
47
  const getStartedHeader = getHeaderConfig('getStarted', 'GET STARTED');
58
48
  const continueLearningHeader = getHeaderConfig('continueLearning', 'CONTINUE LEARNING');
59
49
  const progressData = params?.progress || {
60
- percentage: 25,
61
- text: 'Modules Completed of 829',
62
- totalModules: 829,
63
- buttonText: 'Track Qbank'
50
+ percentage: 56,
51
+ text: 'Modules Completed pf 800',
52
+ totalModules: 800,
53
+ buttonText: 'Track Progress'
64
54
  };
65
55
  const actionsData = params?.actions || {
66
56
  pearlsLabel: 'Pearls',
@@ -68,30 +58,29 @@ export const HomeScreen = ({
68
58
  };
69
59
  const quickLinksData = params?.quickLinks || [{
70
60
  id: 'bookmarks',
71
- label: 'Bookmarks',
61
+ label: 'Book\nmarks',
72
62
  icon: 'bookmark',
73
- color: '#3B82F6'
63
+ color: '#10B981'
74
64
  }, {
75
65
  id: 'custom_module',
76
- label: 'Custom Module',
66
+ label: 'Custom\nModule',
77
67
  icon: 'file-text',
78
- color: '#10B981'
68
+ color: '#3B82F6'
79
69
  }, {
80
70
  id: 'videos_saved',
81
- label: 'Videos Saved',
71
+ label: 'Videos\nSaved',
82
72
  icon: 'download',
83
- color: '#EF4444'
73
+ color: '#8B5CF6'
84
74
  }, {
85
75
  id: 'qbank',
86
- label: 'QBank',
87
- icon: 'book-open',
88
- color: '#8B5CF6'
76
+ label: 'QBank\nTracker',
77
+ icon: 'calendar',
78
+ color: '#F43F5E'
89
79
  }];
90
80
  const dailyMcqData = params?.dailyMcq || {
91
81
  id: 'teaser_1',
92
- imageUrl: 'https://images.unsplash.com/photo-1576086213369-97a306d36557?q=80&w=500&auto=format&fit=crop',
93
- question: 'Discuss the causes, radiological features, and management of a solitary pulmonary nodule.',
94
- options: ['A. Used for Hepatitis B', 'B. Used for chickenpox prophylaxis', 'C. Obtained from random donors', 'D. They are hyperimmune human immunoglobulins'],
82
+ question: 'Discuss the causes, radiological features, and visiond of a solitary pulmonary nodule.',
83
+ options: ['A. Used tor Heoatitls B', 'B. Used tor Heoatitls B', 'C. Used tor Heoatitls B', 'D. Used tor Heoatitls B'],
95
84
  correctIndex: 0
96
85
  };
97
86
  const getStartedData = params?.getStarted || {
@@ -100,488 +89,520 @@ export const HomeScreen = ({
100
89
  avatarUrl: 'https://images.unsplash.com/photo-1622253692010-333f2da6031d?q=80&w=200&auto=format&fit=crop'
101
90
  };
102
91
  const continueLearningData = params?.continueLearning || [{
103
- id: 'subj_anatomy',
104
- title: 'Anatomy',
105
- progressPercentage: 20,
106
- completedModules: 2,
107
- totalModules: 63,
108
- icon: 'atom'
109
- }, {
110
92
  id: 'subj_biochem',
111
93
  title: 'Biochemistry',
112
- progressPercentage: 60,
113
- completedModules: 45,
114
- totalModules: 53,
94
+ progressPercentage: 34,
95
+ completedModules: 17,
96
+ totalModules: 63,
115
97
  icon: 'dna'
98
+ }, {
99
+ id: 'subj_pharmacology',
100
+ title: 'Pharmacology',
101
+ progressPercentage: 86,
102
+ completedModules: 56,
103
+ totalModules: 63,
104
+ icon: 'flask'
116
105
  }, {
117
106
  id: 'subj_physio',
118
107
  title: 'Physiology',
119
- progressPercentage: 88,
120
- completedModules: 59,
108
+ progressPercentage: 52,
109
+ completedModules: 31,
121
110
  totalModules: 63,
122
- icon: 'flask'
111
+ icon: 'activity'
123
112
  }];
124
113
  const referralData = params?.referralBanner || {
125
- text: 'Invite a friend to RXDX, learn together, grow together.',
114
+ text: 'Invite a friend to PROMPT PREP, learn together, grow together.',
126
115
  buttonText: 'Share App'
127
116
  };
128
117
  return /*#__PURE__*/_jsxs(SafeAreaView, {
129
118
  style: [styles.safeArea, {
130
- backgroundColor: theme.background
119
+ backgroundColor: '#F8FAFC'
131
120
  }],
132
121
  children: [/*#__PURE__*/_jsx(StatusBar, {
133
122
  barStyle: "dark-content"
134
- }), !hideHeader && /*#__PURE__*/_jsxs(View, {
135
- style: [styles.header, {
136
- borderBottomColor: theme.border
137
- }],
138
- children: [/*#__PURE__*/_jsxs(TouchableOpacity, {
139
- style: styles.headerDropdown,
140
- children: [/*#__PURE__*/_jsx(View, {
141
- style: [styles.appLogo, {
142
- backgroundColor: theme.primary
143
- }],
144
- children: /*#__PURE__*/_jsx(Typography, {
145
- variant: "label",
146
- bold: true,
147
- color: "#FFFFFF",
148
- children: "R"
149
- })
150
- }), /*#__PURE__*/_jsxs(View, {
151
- children: [/*#__PURE__*/_jsxs(View, {
152
- style: styles.appNameRow,
153
- children: [/*#__PURE__*/_jsx(Typography, {
154
- variant: "h2",
155
- bold: true,
156
- color: theme.textPrimary,
157
- children: headerData.appName
158
- }), /*#__PURE__*/_jsx(View, {
159
- style: styles.chevronWrap,
160
- children: /*#__PURE__*/_jsx(Icon, {
161
- name: "chevron-left",
162
- size: 12,
163
- color: theme.textSecondary
164
- })
165
- })]
166
- }), /*#__PURE__*/_jsx(Typography, {
167
- variant: "caption",
168
- color: theme.textSecondary,
169
- style: styles.appSubName,
170
- children: headerData.subName
171
- })]
172
- })]
173
- }), /*#__PURE__*/_jsxs(View, {
174
- style: styles.headerRight,
123
+ }), !hideHeader && /*#__PURE__*/_jsx(View, {
124
+ style: styles.header,
125
+ children: /*#__PURE__*/_jsxs(View, {
126
+ style: [styles.headerInner, {
127
+ maxWidth: contentMaxWidth,
128
+ alignSelf: alignSelfCenter
129
+ }],
175
130
  children: [/*#__PURE__*/_jsxs(TouchableOpacity, {
176
- onPress: onPressNotification,
177
- style: [styles.iconBtn, {
178
- borderColor: theme.border
179
- }],
180
- children: [/*#__PURE__*/_jsx(Icon, {
181
- name: "bell",
182
- size: 20,
183
- color: theme.textPrimary
184
- }), headerData.notificationCount && headerData.notificationCount > 0 ? /*#__PURE__*/_jsx(View, {
185
- style: [styles.badge, {
186
- backgroundColor: theme.danger
187
- }],
188
- children: /*#__PURE__*/_jsx(Typography, {
189
- variant: "caption",
190
- style: styles.badgeText,
191
- color: "#FFFFFF",
192
- children: headerData.notificationCount
131
+ style: styles.headerDropdown,
132
+ children: [/*#__PURE__*/_jsx(View, {
133
+ style: styles.appLogo,
134
+ children: /*#__PURE__*/_jsx(Icon, {
135
+ name: "check-square",
136
+ size: 20,
137
+ color: "#FFFFFF"
193
138
  })
194
- }) : null]
195
- }), /*#__PURE__*/_jsx(TouchableOpacity, {
196
- onPress: onPressAvatar,
197
- style: styles.profileContainer,
198
- children: /*#__PURE__*/_jsx(Image, {
199
- source: {
200
- uri: headerData.avatarUrl
201
- },
202
- style: styles.profileAvatar
203
- })
204
- })]
205
- })]
206
- }), /*#__PURE__*/_jsxs(ScrollView, {
207
- contentContainerStyle: styles.scrollContent,
208
- showsVerticalScrollIndicator: false,
209
- children: [/*#__PURE__*/_jsxs(View, {
210
- style: styles.bannerCarouselContainer,
211
- children: [/*#__PURE__*/_jsx(ScrollView, {
212
- horizontal: true,
213
- pagingEnabled: true,
214
- showsHorizontalScrollIndicator: false,
215
- onScroll: handleBannerScroll,
216
- scrollEventThrottle: 16,
217
- contentContainerStyle: styles.bannerScrollViewContent,
218
- children: bannersData.map((banner, index) => {
219
- const colors = banner.gradientColors || ['#15803D', '#166534'];
220
- const bannerBg = colors[0] || '#15803D';
221
- return /*#__PURE__*/_jsx(TouchableOpacity, {
222
- activeOpacity: 0.9,
223
- style: {
224
- width: bannerWidth
225
- },
226
- children: /*#__PURE__*/_jsxs(View, {
227
- style: [styles.promoBanner, {
228
- backgroundColor: bannerBg,
229
- width: '100%'
230
- }],
231
- children: [/*#__PURE__*/_jsxs(View, {
232
- style: styles.promoTextColumn,
233
- children: [/*#__PURE__*/_jsx(Typography, {
234
- variant: "h2",
235
- bold: true,
236
- color: "#FFFFFF",
237
- style: styles.promoTitle,
238
- children: banner.title
239
- }), /*#__PURE__*/_jsx(Typography, {
240
- variant: "caption",
241
- color: "#D1FAE5",
242
- style: styles.promoSubtitle,
243
- children: banner.subtitle
244
- })]
245
- }), banner.imageUrl && /*#__PURE__*/_jsx(Image, {
246
- source: {
247
- uri: banner.imageUrl
248
- },
249
- style: styles.promoBannerImage,
250
- resizeMode: "cover"
251
- })]
252
- })
253
- }, index);
254
- })
255
- }), bannersData.length > 1 && /*#__PURE__*/_jsx(View, {
256
- style: styles.dotsContainer,
257
- children: bannersData.map((_, index) => /*#__PURE__*/_jsx(View, {
258
- style: [styles.dot, {
259
- backgroundColor: activeBannerIndex === index ? theme.primary : theme.border,
260
- width: activeBannerIndex === index ? 16 : 6
261
- }]
262
- }, index))
263
- })]
264
- }), /*#__PURE__*/_jsxs(Card, {
265
- bordered: true,
266
- style: styles.qbankProgressCard,
267
- children: [/*#__PURE__*/_jsxs(View, {
268
- style: styles.qbankProgressRow,
269
- children: [/*#__PURE__*/_jsxs(View, {
270
- style: styles.qbankProgressTextContainer,
271
- children: [/*#__PURE__*/_jsxs(Typography, {
272
- variant: "h1",
273
- bold: true,
274
- color: theme.textPrimary,
275
- style: styles.percentageText,
276
- children: [progressData.percentage, "%"]
139
+ }), /*#__PURE__*/_jsxs(View, {
140
+ children: [/*#__PURE__*/_jsxs(View, {
141
+ style: styles.appNameRow,
142
+ children: [/*#__PURE__*/_jsx(Typography, {
143
+ variant: "h2",
144
+ color: theme.textPrimary,
145
+ style: {
146
+ fontSize: 20,
147
+ fontWeight: '800'
148
+ },
149
+ children: headerData.appName
150
+ }), /*#__PURE__*/_jsx(View, {
151
+ style: styles.chevronWrap,
152
+ children: /*#__PURE__*/_jsx(Icon, {
153
+ name: "chevron-left",
154
+ size: 12,
155
+ color: theme.textSecondary
156
+ })
157
+ })]
277
158
  }), /*#__PURE__*/_jsx(Typography, {
278
159
  variant: "caption",
279
160
  color: theme.textSecondary,
280
- children: progressData.text
161
+ style: styles.appSubName,
162
+ children: headerData.subName
281
163
  })]
282
- }), /*#__PURE__*/_jsx(TouchableOpacity, {
283
- onPress: onPressTrackQbank,
284
- children: /*#__PURE__*/_jsx(Typography, {
285
- variant: "h3",
286
- bold: true,
287
- color: theme.primary,
288
- children: progressData.buttonText
289
- })
290
164
  })]
291
- }), /*#__PURE__*/_jsx(ProgressBar, {
292
- progress: progressData.percentage / 100,
293
- color: "#F97316",
294
- height: 8,
295
- style: styles.qbankProgressBar
296
- })]
297
- }), /*#__PURE__*/_jsxs(View, {
298
- style: styles.actionsContainer,
299
- children: [/*#__PURE__*/_jsxs(TouchableOpacity, {
300
- activeOpacity: 0.9,
301
- onPress: onPressPearls,
302
- style: [styles.actionPill, {
303
- backgroundColor: '#5F85E5'
304
- }],
305
- children: [/*#__PURE__*/_jsx(View, {
306
- style: styles.actionPillIconContainer,
165
+ }), /*#__PURE__*/_jsxs(View, {
166
+ style: styles.headerRight,
167
+ children: [/*#__PURE__*/_jsx(TouchableOpacity, {
168
+ style: styles.headerIconBtn,
307
169
  children: /*#__PURE__*/_jsx(Icon, {
308
- name: "diamond",
309
- size: 18,
310
- color: "#5F85E5"
170
+ name: "search",
171
+ size: 22,
172
+ color: theme.textPrimary
311
173
  })
312
- }), /*#__PURE__*/_jsx(Typography, {
313
- variant: "h3",
314
- bold: true,
315
- color: "#FFFFFF",
316
- style: styles.actionPillText,
317
- children: actionsData.pearlsLabel
318
- })]
319
- }), /*#__PURE__*/_jsxs(TouchableOpacity, {
320
- activeOpacity: 0.9,
321
- onPress: onPressUpdates,
322
- style: [styles.actionPill, {
323
- backgroundColor: '#1A7B60'
324
- }],
325
- children: [/*#__PURE__*/_jsx(View, {
326
- style: styles.actionPillIconContainer,
327
- children: /*#__PURE__*/_jsx(Icon, {
328
- name: "megaphone",
329
- size: 18,
330
- color: "#1A7B60"
174
+ }), /*#__PURE__*/_jsxs(TouchableOpacity, {
175
+ onPress: onPressNotification,
176
+ style: styles.headerIconBtn,
177
+ children: [/*#__PURE__*/_jsx(Icon, {
178
+ name: "bell",
179
+ size: 22,
180
+ color: theme.textPrimary
181
+ }), /*#__PURE__*/_jsx(View, {
182
+ style: styles.badge,
183
+ children: /*#__PURE__*/_jsx(Typography, {
184
+ variant: "caption",
185
+ style: styles.badgeText,
186
+ color: "#FFFFFF",
187
+ children: headerData.notificationCount
188
+ })
189
+ })]
190
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
191
+ onPress: onPressAvatar,
192
+ style: styles.profileContainer,
193
+ children: /*#__PURE__*/_jsx(Image, {
194
+ source: {
195
+ uri: headerData.avatarUrl
196
+ },
197
+ style: styles.profileAvatar
331
198
  })
332
- }), /*#__PURE__*/_jsx(Typography, {
333
- variant: "h3",
334
- bold: true,
335
- color: "#FFFFFF",
336
- style: styles.actionPillText,
337
- children: actionsData.updatesLabel
338
199
  })]
339
200
  })]
340
- }), quickLinksHeader.show && /*#__PURE__*/_jsx(View, {
341
- style: styles.sectionHeader,
342
- children: /*#__PURE__*/_jsx(Typography, {
343
- variant: "caption",
344
- bold: true,
345
- color: theme.textSecondary,
346
- style: styles.sectionTitle,
347
- children: quickLinksHeader.title
348
- })
349
- }), /*#__PURE__*/_jsx(ScrollView, {
350
- horizontal: true,
351
- showsHorizontalScrollIndicator: false,
352
- contentContainerStyle: styles.quickLinksScroll,
353
- children: quickLinksData.map(link => /*#__PURE__*/_jsxs(TouchableOpacity, {
354
- style: styles.quickLinkItem,
355
- onPress: () => {
356
- link.onPress?.();
357
- onPressQuickLink?.(link.id);
358
- },
359
- children: [/*#__PURE__*/_jsx(View, {
360
- style: [styles.quickLinkCircle, {
361
- backgroundColor: `${link.color}15`
362
- }],
363
- children: /*#__PURE__*/_jsx(Icon, {
364
- name: link.icon,
365
- size: 20,
366
- color: link.color
201
+ })
202
+ }), /*#__PURE__*/_jsx(ScrollView, {
203
+ contentContainerStyle: {
204
+ flexGrow: 1
205
+ },
206
+ showsVerticalScrollIndicator: false,
207
+ children: /*#__PURE__*/_jsxs(View, {
208
+ style: [styles.scrollContent, {
209
+ maxWidth: contentMaxWidth,
210
+ alignSelf: alignSelfCenter,
211
+ width: '100%'
212
+ }],
213
+ children: [/*#__PURE__*/_jsxs(View, {
214
+ style: styles.progressContainer,
215
+ children: [/*#__PURE__*/_jsxs(View, {
216
+ style: styles.progressRow,
217
+ children: [/*#__PURE__*/_jsxs(View, {
218
+ style: styles.progressTextContainer,
219
+ children: [/*#__PURE__*/_jsxs(Typography, {
220
+ variant: "h1",
221
+ bold: true,
222
+ color: "#10B981",
223
+ style: styles.percentageTextLarge,
224
+ children: [progressData.percentage, "%"]
225
+ }), /*#__PURE__*/_jsx(Typography, {
226
+ variant: "caption",
227
+ color: theme.textPrimary,
228
+ style: styles.modulesCompletedText,
229
+ children: progressData.text
230
+ })]
231
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
232
+ onPress: onPressTrackQbank,
233
+ style: styles.trackProgressBtn,
234
+ children: /*#__PURE__*/_jsx(Typography, {
235
+ variant: "caption",
236
+ bold: true,
237
+ color: "#FFFFFF",
238
+ children: progressData.buttonText
239
+ })
240
+ })]
241
+ }), /*#__PURE__*/_jsx(View, {
242
+ style: styles.progressBarBg,
243
+ children: /*#__PURE__*/_jsx(View, {
244
+ style: [styles.progressBarFill, {
245
+ width: `${progressData.percentage}%`
246
+ }]
367
247
  })
368
- }), /*#__PURE__*/_jsx(Typography, {
369
- variant: "caption",
370
- color: theme.textPrimary,
371
- bold: true,
372
- style: styles.quickLinkLabel,
373
- children: link.label
374
248
  })]
375
- }, link.id))
376
- }), dailyMcqHeader.show && /*#__PURE__*/_jsx(View, {
377
- style: styles.sectionHeader,
378
- children: /*#__PURE__*/_jsx(Typography, {
379
- variant: "caption",
380
- bold: true,
381
- color: theme.textSecondary,
382
- style: styles.sectionTitle,
383
- children: dailyMcqHeader.title
384
- })
385
- }), /*#__PURE__*/_jsxs(Card, {
386
- bordered: true,
387
- style: styles.mcqCard,
388
- children: [dailyMcqData.imageUrl && /*#__PURE__*/_jsx(Image, {
389
- source: {
390
- uri: dailyMcqData.imageUrl
391
- },
392
- style: styles.mcqImage
393
- }), /*#__PURE__*/_jsx(Typography, {
394
- variant: "body",
395
- color: theme.textPrimary,
396
- style: styles.mcqQuestion,
397
- children: dailyMcqData.question
398
- }), /*#__PURE__*/_jsx(View, {
399
- style: styles.mcqOptionsList,
400
- children: dailyMcqData.options.map((option, idx) => {
401
- const isSelected = selectedTeaserOption === idx;
402
- const isCorrectAnswer = idx === dailyMcqData.correctIndex;
403
- const isTeaserAnswered = selectedTeaserOption !== null;
404
- let circleBorder = theme.border;
405
- let circleFill = 'transparent';
406
- let rowBg = 'transparent';
407
- if (isTeaserAnswered) {
408
- if (isCorrectAnswer) {
409
- circleBorder = theme.success;
410
- circleFill = theme.success;
411
- rowBg = 'rgba(16, 185, 129, 0.04)';
412
- } else if (isSelected) {
413
- circleBorder = theme.danger;
414
- circleFill = theme.danger;
415
- rowBg = 'rgba(239, 68, 68, 0.04)';
416
- }
417
- } else if (isSelected) {
418
- circleBorder = theme.primary;
419
- circleFill = theme.primary;
420
- }
421
- return /*#__PURE__*/_jsxs(TouchableOpacity, {
422
- activeOpacity: 0.8,
423
- disabled: isTeaserAnswered,
424
- style: [styles.mcqOptionRow, {
425
- backgroundColor: rowBg
426
- }],
427
- onPress: () => setSelectedTeaserOption(idx),
249
+ }), /*#__PURE__*/_jsxs(View, {
250
+ style: styles.actionsContainer,
251
+ children: [/*#__PURE__*/_jsx(TouchableOpacity, {
252
+ activeOpacity: 0.9,
253
+ onPress: onPressPearls,
254
+ style: [styles.actionPill, {
255
+ backgroundColor: '#8B5CF6',
256
+ marginRight: 8
257
+ }],
258
+ children: /*#__PURE__*/_jsxs(View, {
259
+ style: styles.actionPillContent,
428
260
  children: [/*#__PURE__*/_jsx(View, {
429
- style: [styles.mcqRadioOuter, {
430
- borderColor: circleBorder
431
- }],
432
- children: isSelected || isTeaserAnswered && isCorrectAnswer ? /*#__PURE__*/_jsx(View, {
433
- style: [styles.mcqRadioInner, {
434
- backgroundColor: circleFill
435
- }]
436
- }) : null
261
+ style: styles.actionPillIconLeft,
262
+ children: /*#__PURE__*/_jsx(Icon, {
263
+ name: "diamond",
264
+ size: 18,
265
+ color: "#FFFFFF"
266
+ })
437
267
  }), /*#__PURE__*/_jsx(Typography, {
438
268
  variant: "body",
439
- color: theme.textPrimary,
440
- style: styles.mcqOptionText,
441
- children: option
269
+ bold: true,
270
+ color: "#FFFFFF",
271
+ style: styles.actionPillTextCentered,
272
+ children: actionsData.pearlsLabel
273
+ }), /*#__PURE__*/_jsxs(View, {
274
+ style: styles.chevronsRight,
275
+ children: [/*#__PURE__*/_jsx(Icon, {
276
+ name: "chevron-right",
277
+ size: 16,
278
+ color: "rgba(255,255,255,0.4)"
279
+ }), /*#__PURE__*/_jsx(View, {
280
+ style: {
281
+ marginLeft: -8
282
+ },
283
+ children: /*#__PURE__*/_jsx(Icon, {
284
+ name: "chevron-right",
285
+ size: 16,
286
+ color: "rgba(255,255,255,0.8)"
287
+ })
288
+ })]
442
289
  })]
443
- }, idx);
290
+ })
291
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
292
+ activeOpacity: 0.9,
293
+ onPress: onPressUpdates,
294
+ style: [styles.actionPill, {
295
+ backgroundColor: '#60A5FA',
296
+ marginLeft: 8
297
+ }],
298
+ children: /*#__PURE__*/_jsxs(View, {
299
+ style: styles.actionPillContent,
300
+ children: [/*#__PURE__*/_jsx(View, {
301
+ style: styles.actionPillIconLeft,
302
+ children: /*#__PURE__*/_jsx(Icon, {
303
+ name: "megaphone",
304
+ size: 18,
305
+ color: "#FFFFFF"
306
+ })
307
+ }), /*#__PURE__*/_jsx(Typography, {
308
+ variant: "body",
309
+ bold: true,
310
+ color: "#FFFFFF",
311
+ style: styles.actionPillTextCentered,
312
+ children: actionsData.updatesLabel
313
+ }), /*#__PURE__*/_jsxs(View, {
314
+ style: styles.chevronsRight,
315
+ children: [/*#__PURE__*/_jsx(Icon, {
316
+ name: "chevron-right",
317
+ size: 16,
318
+ color: "rgba(255,255,255,0.4)"
319
+ }), /*#__PURE__*/_jsx(View, {
320
+ style: {
321
+ marginLeft: -8
322
+ },
323
+ children: /*#__PURE__*/_jsx(Icon, {
324
+ name: "chevron-right",
325
+ size: 16,
326
+ color: "rgba(255,255,255,0.8)"
327
+ })
328
+ })]
329
+ })]
330
+ })
331
+ })]
332
+ }), quickLinksHeader.show && /*#__PURE__*/_jsx(View, {
333
+ style: styles.sectionHeader,
334
+ children: /*#__PURE__*/_jsx(Typography, {
335
+ variant: "caption",
336
+ color: theme.textSecondary,
337
+ style: styles.sectionTitle,
338
+ children: quickLinksHeader.title
444
339
  })
445
- }), /*#__PURE__*/_jsx(TouchableOpacity, {
446
- onPress: onPressMcqViewDetails,
447
- style: styles.mcqViewDetailsBtn,
340
+ }), /*#__PURE__*/_jsx(View, {
341
+ style: styles.quickLinksContainer,
342
+ children: quickLinksData.map(link => {
343
+ let bgCol = '#E5E7EB';
344
+ if (link.id === 'bookmarks') bgCol = '#D1FAE5';
345
+ if (link.id === 'custom_module') bgCol = '#DBEAFE';
346
+ if (link.id === 'videos_saved') bgCol = '#E0E7FF';
347
+ if (link.id === 'qbank') bgCol = '#FCE7F3';
348
+ return /*#__PURE__*/_jsx(TouchableOpacity, {
349
+ style: styles.quickLinkBoxItem,
350
+ onPress: () => {
351
+ link.onPress?.();
352
+ onPressQuickLink?.(link.id);
353
+ },
354
+ children: /*#__PURE__*/_jsxs(View, {
355
+ style: [styles.quickLinkRect, {
356
+ backgroundColor: bgCol
357
+ }],
358
+ children: [/*#__PURE__*/_jsx(Icon, {
359
+ name: link.icon,
360
+ size: 24,
361
+ color: link.color
362
+ }), /*#__PURE__*/_jsx(Typography, {
363
+ variant: "caption",
364
+ color: theme.textPrimary,
365
+ style: styles.quickLinkLabelTwoLines,
366
+ children: link.label
367
+ })]
368
+ })
369
+ }, link.id);
370
+ })
371
+ }), dailyMcqHeader.show && /*#__PURE__*/_jsx(View, {
372
+ style: styles.sectionHeaderCentered,
448
373
  children: /*#__PURE__*/_jsx(Typography, {
449
- variant: "h3",
450
- color: theme.primary,
374
+ variant: "caption",
451
375
  bold: true,
452
- children: "View Details"
376
+ color: theme.textSecondary,
377
+ style: styles.sectionTitle,
378
+ children: dailyMcqHeader.title
453
379
  })
454
- })]
455
- }), getStartedHeader.show && /*#__PURE__*/_jsx(View, {
456
- style: styles.sectionHeader,
457
- children: /*#__PURE__*/_jsx(Typography, {
458
- variant: "caption",
459
- bold: true,
460
- color: theme.textSecondary,
461
- style: styles.sectionTitle,
462
- children: getStartedHeader.title
463
- })
464
- }), /*#__PURE__*/_jsx(Card, {
465
- bordered: true,
466
- onPress: onPressGetStarted,
467
- style: styles.getStartedCard,
468
- children: /*#__PURE__*/_jsxs(View, {
469
- style: styles.getStartedRow,
470
- children: [/*#__PURE__*/_jsx(Image, {
471
- source: {
472
- uri: getStartedData.avatarUrl
473
- },
474
- style: styles.doctorAvatar
475
- }), /*#__PURE__*/_jsxs(View, {
476
- style: styles.getStartedInfo,
477
- children: [/*#__PURE__*/_jsx(Typography, {
478
- variant: "h3",
380
+ }), /*#__PURE__*/_jsxs(View, {
381
+ style: styles.mcqContainer,
382
+ children: [/*#__PURE__*/_jsx(Typography, {
383
+ variant: "body",
384
+ color: theme.textPrimary,
385
+ style: styles.mcqQuestion,
386
+ children: dailyMcqData.question
387
+ }), /*#__PURE__*/_jsx(View, {
388
+ style: styles.mcqOptionsList,
389
+ children: dailyMcqData.options.map((option, idx) => {
390
+ const isSelected = selectedTeaserOption === idx;
391
+ let rowBg = '#FFFFFF';
392
+ let rowBorder = '#E2E8F0';
393
+ let textColor = theme.textSecondary;
394
+ if (isSelected) {
395
+ rowBg = '#ECFDF5';
396
+ rowBorder = '#10B981';
397
+ textColor = '#10B981';
398
+ }
399
+ return /*#__PURE__*/_jsxs(TouchableOpacity, {
400
+ activeOpacity: 0.8,
401
+ style: [styles.mcqOptionBox, {
402
+ backgroundColor: rowBg,
403
+ borderColor: rowBorder
404
+ }],
405
+ onPress: () => setSelectedTeaserOption(idx),
406
+ children: [/*#__PURE__*/_jsx(View, {
407
+ style: [styles.mcqCheckCircle, {
408
+ borderColor: isSelected ? '#10B981' : '#CBD5E1',
409
+ backgroundColor: isSelected ? '#10B981' : 'transparent'
410
+ }],
411
+ children: isSelected && /*#__PURE__*/_jsx(Icon, {
412
+ name: "check-circle",
413
+ size: 12,
414
+ color: "#FFFFFF"
415
+ })
416
+ }), /*#__PURE__*/_jsx(Typography, {
417
+ variant: "body",
418
+ color: textColor,
419
+ style: styles.mcqOptionTextStr,
420
+ children: option
421
+ })]
422
+ }, idx);
423
+ })
424
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
425
+ onPress: onPressMcqViewDetails,
426
+ style: styles.mcqViewDetailsBtn,
427
+ children: /*#__PURE__*/_jsx(Typography, {
428
+ variant: "body",
429
+ color: "#10B981",
479
430
  bold: true,
480
- color: theme.textPrimary,
481
- children: getStartedData.title
482
- }), /*#__PURE__*/_jsx(Typography, {
483
- variant: "caption",
484
- color: theme.textSecondary,
485
- children: getStartedData.subtitle
486
- })]
487
- }), /*#__PURE__*/_jsx(Icon, {
488
- name: "chevron-right",
489
- size: 16,
490
- color: theme.textSecondary
431
+ children: "View Details"
432
+ })
491
433
  })]
492
- })
493
- }), continueLearningHeader.show && /*#__PURE__*/_jsx(View, {
494
- style: styles.sectionHeader,
495
- children: /*#__PURE__*/_jsx(Typography, {
496
- variant: "caption",
497
- bold: true,
498
- color: theme.textSecondary,
499
- style: styles.sectionTitle,
500
- children: continueLearningHeader.title
501
- })
502
- }), /*#__PURE__*/_jsx(View, {
503
- style: styles.continueLearningList,
504
- children: continueLearningData.map(item => /*#__PURE__*/_jsx(TouchableOpacity, {
434
+ }), getStartedHeader.show && /*#__PURE__*/_jsx(View, {
435
+ style: styles.sectionHeader,
436
+ children: /*#__PURE__*/_jsx(Typography, {
437
+ variant: "caption",
438
+ color: theme.textSecondary,
439
+ style: styles.sectionTitle,
440
+ children: getStartedHeader.title
441
+ })
442
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
443
+ onPress: onPressGetStarted,
505
444
  activeOpacity: 0.8,
506
- onPress: () => onPressContinueLearning?.(item.id),
507
- children: /*#__PURE__*/_jsx(Card, {
508
- bordered: true,
509
- style: styles.continueLearningCard,
445
+ children: /*#__PURE__*/_jsx(View, {
446
+ style: styles.getStartedCardMockup,
510
447
  children: /*#__PURE__*/_jsxs(View, {
511
- style: styles.continueLearningRow,
512
- children: [/*#__PURE__*/_jsx(View, {
513
- style: [styles.subjectIconBox, {
514
- backgroundColor: theme.secondary
515
- }],
516
- children: /*#__PURE__*/_jsx(Icon, {
517
- name: item.icon,
518
- size: 20,
519
- color: theme.primary
520
- })
521
- }), /*#__PURE__*/_jsxs(View, {
522
- style: styles.continueLearningInfo,
523
- children: [/*#__PURE__*/_jsx(View, {
524
- style: styles.continueLearningTextRow,
525
- children: /*#__PURE__*/_jsx(Typography, {
526
- variant: "h3",
527
- bold: true,
528
- color: theme.textPrimary,
529
- children: item.title
448
+ style: styles.getStartedRow,
449
+ children: [/*#__PURE__*/_jsxs(View, {
450
+ style: styles.getStartedIconBox,
451
+ children: [/*#__PURE__*/_jsx(Image, {
452
+ source: {
453
+ uri: 'https://cdn-icons-png.flaticon.com/512/3004/3004116.png'
454
+ },
455
+ style: styles.anatomyIcon
456
+ }), /*#__PURE__*/_jsx(View, {
457
+ style: styles.playIconBadge,
458
+ children: /*#__PURE__*/_jsx(Icon, {
459
+ name: "play",
460
+ size: 14,
461
+ color: "#F59E0B"
530
462
  })
531
- }), /*#__PURE__*/_jsx(ProgressBar, {
532
- progress: item.progressPercentage / 100,
533
- color: "#0891B2",
534
- height: 6,
535
- style: styles.continueProgressBar
536
- }), /*#__PURE__*/_jsxs(View, {
537
- style: styles.continueStatsRow,
538
- children: [/*#__PURE__*/_jsxs(Typography, {
539
- variant: "caption",
540
- color: theme.textSecondary,
541
- children: [item.completedModules, " / ", item.totalModules, " Modules"]
542
- }), /*#__PURE__*/_jsxs(Typography, {
543
- variant: "caption",
544
- bold: true,
545
- color: theme.textPrimary,
546
- children: [item.progressPercentage, "%"]
547
- })]
548
463
  })]
464
+ }), /*#__PURE__*/_jsxs(View, {
465
+ style: styles.getStartedInfo,
466
+ children: [/*#__PURE__*/_jsx(Typography, {
467
+ variant: "body",
468
+ bold: true,
469
+ color: theme.textPrimary,
470
+ children: getStartedData.title
471
+ }), /*#__PURE__*/_jsx(Typography, {
472
+ variant: "caption",
473
+ color: theme.textSecondary,
474
+ children: getStartedData.subtitle
475
+ })]
476
+ }), /*#__PURE__*/_jsx(Icon, {
477
+ name: "chevron-right",
478
+ size: 20,
479
+ color: theme.textSecondary
549
480
  })]
550
481
  })
551
482
  })
552
- }, item.id))
553
- }), /*#__PURE__*/_jsx(Card, {
554
- style: styles.referralCard,
555
- children: /*#__PURE__*/_jsxs(View, {
556
- style: styles.referralRow,
557
- children: [/*#__PURE__*/_jsxs(View, {
558
- style: styles.referralLeft,
483
+ }), continueLearningHeader.show && /*#__PURE__*/_jsx(View, {
484
+ style: styles.sectionHeader,
485
+ children: /*#__PURE__*/_jsx(Typography, {
486
+ variant: "caption",
487
+ color: theme.textSecondary,
488
+ style: styles.sectionTitle,
489
+ children: continueLearningHeader.title
490
+ })
491
+ }), /*#__PURE__*/_jsx(View, {
492
+ style: styles.continueLearningList,
493
+ children: continueLearningData.map(item => {
494
+ let iconUrl = '';
495
+ let iconBg = '#F3E8FF';
496
+ let barColor = '#A855F7';
497
+ if (item.id === 'subj_biochem') {
498
+ iconUrl = 'https://cdn-icons-png.flaticon.com/512/2026/2026117.png';
499
+ iconBg = '#F3E8FF';
500
+ barColor = '#A855F7';
501
+ }
502
+ if (item.id === 'subj_pharmacology') {
503
+ iconUrl = 'https://cdn-icons-png.flaticon.com/512/3004/3004104.png';
504
+ iconBg = '#FFEDD5';
505
+ barColor = '#10B981';
506
+ }
507
+ if (item.id === 'subj_physio') {
508
+ iconUrl = 'https://cdn-icons-png.flaticon.com/512/3004/3004140.png';
509
+ iconBg = '#FEE2E2';
510
+ barColor = '#10B981';
511
+ }
512
+ return /*#__PURE__*/_jsx(TouchableOpacity, {
513
+ activeOpacity: 0.8,
514
+ onPress: () => onPressContinueLearning?.(item.id),
515
+ children: /*#__PURE__*/_jsx(View, {
516
+ style: styles.continueCardMockup,
517
+ children: /*#__PURE__*/_jsxs(View, {
518
+ style: styles.continueLearningRow,
519
+ children: [/*#__PURE__*/_jsx(View, {
520
+ style: [styles.continueIconBox, {
521
+ backgroundColor: iconBg
522
+ }],
523
+ children: iconUrl ? /*#__PURE__*/_jsx(Image, {
524
+ source: {
525
+ uri: iconUrl
526
+ },
527
+ style: {
528
+ width: 24,
529
+ height: 24
530
+ }
531
+ }) : /*#__PURE__*/_jsx(Icon, {
532
+ name: item.icon,
533
+ size: 20,
534
+ color: theme.primary
535
+ })
536
+ }), /*#__PURE__*/_jsxs(View, {
537
+ style: styles.continueLearningInfo,
538
+ children: [/*#__PURE__*/_jsx(Typography, {
539
+ variant: "body",
540
+ bold: true,
541
+ color: theme.textPrimary,
542
+ style: {
543
+ marginBottom: 6
544
+ },
545
+ children: item.title
546
+ }), /*#__PURE__*/_jsx(View, {
547
+ style: styles.progressBarBgMockup,
548
+ children: /*#__PURE__*/_jsx(View, {
549
+ style: [styles.progressBarFillMockup, {
550
+ width: `${item.progressPercentage}%`,
551
+ backgroundColor: barColor
552
+ }]
553
+ })
554
+ }), /*#__PURE__*/_jsxs(View, {
555
+ style: styles.continueStatsRow,
556
+ children: [/*#__PURE__*/_jsxs(Typography, {
557
+ variant: "caption",
558
+ color: theme.textSecondary,
559
+ children: [item.completedModules, "/", item.totalModules, " Modules"]
560
+ }), /*#__PURE__*/_jsxs(Typography, {
561
+ variant: "caption",
562
+ color: theme.textSecondary,
563
+ children: [item.progressPercentage, "%"]
564
+ })]
565
+ })]
566
+ })]
567
+ })
568
+ })
569
+ }, item.id);
570
+ })
571
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
572
+ onPress: onPressShareApp,
573
+ activeOpacity: 0.9,
574
+ style: {
575
+ marginTop: 8
576
+ },
577
+ children: /*#__PURE__*/_jsxs(View, {
578
+ style: styles.referralBannerMockup,
559
579
  children: [/*#__PURE__*/_jsx(View, {
560
- style: styles.referralIconContainer,
580
+ style: styles.referralIconCircle,
561
581
  children: /*#__PURE__*/_jsx(Icon, {
562
582
  name: "share",
563
- size: 16,
583
+ size: 18,
564
584
  color: "#FFFFFF"
565
585
  })
566
- }), /*#__PURE__*/_jsx(Typography, {
567
- variant: "body",
568
- bold: true,
569
- color: "#1E293B",
570
- style: styles.referralText,
571
- children: referralData.text
586
+ }), /*#__PURE__*/_jsx(View, {
587
+ style: styles.referralTextCol,
588
+ children: /*#__PURE__*/_jsx(Typography, {
589
+ variant: "body",
590
+ bold: true,
591
+ color: "#1E293B",
592
+ children: referralData.text
593
+ })
594
+ }), /*#__PURE__*/_jsx(View, {
595
+ style: styles.shareAppBtnWhite,
596
+ children: /*#__PURE__*/_jsx(Typography, {
597
+ variant: "caption",
598
+ bold: true,
599
+ color: "#1E293B",
600
+ children: referralData.buttonText
601
+ })
572
602
  })]
573
- }), /*#__PURE__*/_jsx(TouchableOpacity, {
574
- onPress: onPressShareApp,
575
- style: styles.referralButton,
576
- children: /*#__PURE__*/_jsx(Typography, {
577
- variant: "caption",
578
- bold: true,
579
- color: "#1E293B",
580
- children: referralData.buttonText
581
- })
582
- })]
583
- })
584
- })]
603
+ })
604
+ })]
605
+ })
585
606
  })]
586
607
  });
587
608
  };
@@ -590,25 +611,30 @@ const styles = StyleSheet.create({
590
611
  flex: 1
591
612
  },
592
613
  header: {
614
+ backgroundColor: '#FFFFFF',
615
+ borderBottomWidth: 1,
616
+ borderBottomColor: '#F1F5F9'
617
+ },
618
+ headerInner: {
593
619
  flexDirection: 'row',
594
620
  justifyContent: 'space-between',
595
621
  alignItems: 'center',
596
622
  paddingHorizontal: 16,
597
- paddingVertical: 10,
598
- backgroundColor: '#FFFFFF',
599
- borderBottomWidth: 1
623
+ paddingVertical: 8,
624
+ width: '100%'
600
625
  },
601
626
  headerDropdown: {
602
627
  flexDirection: 'row',
603
628
  alignItems: 'center'
604
629
  },
605
630
  appLogo: {
606
- width: 32,
607
- height: 32,
631
+ width: 36,
632
+ height: 36,
608
633
  borderRadius: 8,
634
+ backgroundColor: '#0F172A',
609
635
  justifyContent: 'center',
610
636
  alignItems: 'center',
611
- marginRight: 10
637
+ marginRight: 8
612
638
  },
613
639
  appNameRow: {
614
640
  flexDirection: 'row',
@@ -628,35 +654,39 @@ const styles = StyleSheet.create({
628
654
  flexDirection: 'row',
629
655
  alignItems: 'center'
630
656
  },
631
- iconBtn: {
657
+ headerIconBtn: {
632
658
  width: 36,
633
659
  height: 36,
634
- borderRadius: 18,
635
- borderWidth: 1,
636
660
  justifyContent: 'center',
637
661
  alignItems: 'center',
638
662
  position: 'relative',
639
- marginRight: 10
663
+ marginRight: 6
640
664
  },
641
665
  badge: {
642
666
  position: 'absolute',
643
- top: -4,
644
- right: -4,
645
- width: 16,
667
+ top: -2,
668
+ right: 2,
669
+ minWidth: 16,
646
670
  height: 16,
647
671
  borderRadius: 8,
672
+ backgroundColor: '#EF4444',
648
673
  justifyContent: 'center',
649
- alignItems: 'center'
674
+ alignItems: 'center',
675
+ borderWidth: 1.5,
676
+ borderColor: '#FFFFFF',
677
+ paddingHorizontal: 2
650
678
  },
651
679
  badgeText: {
652
680
  fontSize: 9,
653
- fontWeight: '700'
681
+ fontWeight: 'bold',
682
+ lineHeight: 11
654
683
  },
655
684
  profileContainer: {
656
- width: 36,
657
- height: 36,
658
- borderRadius: 18,
659
- overflow: 'hidden'
685
+ width: 32,
686
+ height: 32,
687
+ borderRadius: 16,
688
+ overflow: 'hidden',
689
+ marginLeft: 6
660
690
  },
661
691
  profileAvatar: {
662
692
  width: '100%',
@@ -664,157 +694,154 @@ const styles = StyleSheet.create({
664
694
  },
665
695
  scrollContent: {
666
696
  paddingHorizontal: 16,
667
- paddingBottom: 32
668
- },
669
- promoBanner: {
670
- flexDirection: 'row',
671
- borderRadius: 20,
672
- padding: 16,
673
- justifyContent: 'space-between',
674
- overflow: 'hidden',
675
- height: 120
697
+ paddingVertical: 12,
698
+ paddingBottom: 40
676
699
  },
677
- promoTextColumn: {
678
- flex: 1.2,
679
- justifyContent: 'center'
680
- },
681
- promoTitle: {
682
- fontSize: 18,
683
- lineHeight: 22,
684
- marginBottom: 6
685
- },
686
- promoSubtitle: {
687
- fontSize: 11,
688
- opacity: 0.9
689
- },
690
- promoBannerImage: {
691
- flex: 0.8,
692
- height: '100%',
693
- width: '100%',
694
- alignSelf: 'flex-end',
695
- borderRadius: 10
696
- },
697
- qbankProgressCard: {
698
- padding: 16,
699
- marginTop: 8,
700
- marginBottom: 4,
701
- borderRadius: 16
700
+ progressContainer: {
701
+ backgroundColor: '#E8F5E9',
702
+ padding: 12,
703
+ borderRadius: 12,
704
+ marginBottom: 16
702
705
  },
703
- qbankProgressRow: {
706
+ progressRow: {
704
707
  flexDirection: 'row',
705
708
  justifyContent: 'space-between',
706
709
  alignItems: 'center',
707
710
  marginBottom: 12
708
711
  },
709
- qbankProgressTextContainer: {
712
+ progressTextContainer: {
710
713
  flex: 1
711
714
  },
712
- percentageText: {
713
- fontSize: 24,
714
- lineHeight: 28
715
+ percentageTextLarge: {
716
+ fontSize: 32,
717
+ lineHeight: 38
715
718
  },
716
- qbankProgressBar: {
717
- marginTop: 4
719
+ modulesCompletedText: {
720
+ fontSize: 10,
721
+ opacity: 0.8
722
+ },
723
+ trackProgressBtn: {
724
+ backgroundColor: '#059669',
725
+ paddingHorizontal: 12,
726
+ paddingVertical: 8,
727
+ borderRadius: 8
728
+ },
729
+ progressBarBg: {
730
+ height: 10,
731
+ backgroundColor: '#FFFFFF',
732
+ borderRadius: 5,
733
+ overflow: 'hidden',
734
+ width: '100%'
735
+ },
736
+ progressBarFill: {
737
+ height: '100%',
738
+ backgroundColor: '#059669',
739
+ borderRadius: 5
718
740
  },
719
741
  actionsContainer: {
720
742
  flexDirection: 'row',
721
743
  justifyContent: 'space-between',
722
- marginTop: 8
744
+ marginBottom: 16
723
745
  },
724
746
  actionPill: {
725
747
  flex: 1,
748
+ padding: 12,
749
+ borderRadius: 12
750
+ },
751
+ actionPillContent: {
726
752
  flexDirection: 'row',
727
753
  alignItems: 'center',
728
- padding: 14,
729
- borderRadius: 14,
730
- marginHorizontal: 4
754
+ width: '100%'
731
755
  },
732
- actionPillIconContainer: {
756
+ actionPillIconLeft: {
733
757
  width: 28,
734
758
  height: 28,
735
759
  borderRadius: 14,
736
- backgroundColor: '#FFFFFF',
760
+ backgroundColor: 'rgba(255,255,255,0.25)',
737
761
  justifyContent: 'center',
738
- alignItems: 'center',
739
- marginRight: 10
762
+ alignItems: 'center'
740
763
  },
741
- actionPillText: {
742
- fontSize: 15
764
+ actionPillTextCentered: {
765
+ flex: 1,
766
+ textAlign: 'center',
767
+ fontSize: 16
768
+ },
769
+ chevronsRight: {
770
+ flexDirection: 'row'
743
771
  },
744
772
  sectionHeader: {
745
- marginTop: 12,
746
- marginBottom: 4
773
+ marginTop: 8,
774
+ marginBottom: 12
775
+ },
776
+ sectionHeaderCentered: {
777
+ marginTop: 8,
778
+ marginBottom: 12,
779
+ alignItems: 'center'
747
780
  },
748
781
  sectionTitle: {
749
782
  fontSize: 12,
750
783
  letterSpacing: 0.8
751
784
  },
752
- quickLinksScroll: {
753
- paddingVertical: 4
785
+ quickLinksContainer: {
786
+ flexDirection: 'row',
787
+ justifyContent: 'space-between',
788
+ marginBottom: 16
754
789
  },
755
- quickLinkItem: {
790
+ quickLinkBoxItem: {
756
791
  alignItems: 'center',
757
- marginRight: 20,
758
- width: 72
792
+ flex: 1
759
793
  },
760
- quickLinkCircle: {
761
- width: 48,
762
- height: 48,
763
- borderRadius: 24,
794
+ quickLinkRect: {
795
+ width: '90%',
796
+ aspectRatio: 0.8,
797
+ borderRadius: 16,
764
798
  justifyContent: 'center',
765
799
  alignItems: 'center',
766
- marginBottom: 6
800
+ padding: 8
767
801
  },
768
- quickLinkLabel: {
802
+ quickLinkLabelTwoLines: {
769
803
  textAlign: 'center',
770
- fontSize: 11
771
- },
772
- mcqCard: {
773
- padding: 16,
774
- borderRadius: 16,
775
- overflow: 'hidden',
776
- marginTop: 4,
777
- marginBottom: 4
804
+ fontSize: 11,
805
+ lineHeight: 14,
806
+ marginTop: 8
778
807
  },
779
- mcqImage: {
780
- width: '100%',
781
- height: 140,
808
+ mcqContainer: {
809
+ backgroundColor: '#FFFFFF',
810
+ padding: 12,
782
811
  borderRadius: 12,
783
- marginBottom: 12
812
+ marginBottom: 16,
813
+ borderWidth: 1,
814
+ borderColor: '#E2E8F0'
784
815
  },
785
816
  mcqQuestion: {
786
- fontSize: 14,
787
- lineHeight: 20,
817
+ fontSize: 13,
818
+ lineHeight: 18,
788
819
  fontWeight: '500',
789
820
  marginBottom: 12
790
821
  },
791
822
  mcqOptionsList: {
792
823
  marginBottom: 8
793
824
  },
794
- mcqOptionRow: {
825
+ mcqOptionBox: {
795
826
  flexDirection: 'row',
796
827
  alignItems: 'center',
797
828
  paddingVertical: 10,
798
- paddingHorizontal: 8,
829
+ paddingHorizontal: 10,
799
830
  borderRadius: 8,
800
- marginBottom: 6
831
+ borderWidth: 1,
832
+ marginBottom: 8
801
833
  },
802
- mcqRadioOuter: {
803
- width: 18,
804
- height: 18,
805
- borderRadius: 9,
806
- borderWidth: 1.5,
834
+ mcqCheckCircle: {
835
+ width: 20,
836
+ height: 20,
837
+ borderRadius: 10,
838
+ borderWidth: 1,
807
839
  justifyContent: 'center',
808
840
  alignItems: 'center',
809
- marginRight: 10
810
- },
811
- mcqRadioInner: {
812
- width: 10,
813
- height: 10,
814
- borderRadius: 5
841
+ marginRight: 12
815
842
  },
816
- mcqOptionText: {
817
- fontSize: 13,
843
+ mcqOptionTextStr: {
844
+ fontSize: 14,
818
845
  flex: 1
819
846
  },
820
847
  mcqViewDetailsBtn: {
@@ -822,23 +849,41 @@ const styles = StyleSheet.create({
822
849
  borderTopWidth: 1,
823
850
  borderTopColor: '#E2E8F0',
824
851
  paddingTop: 12,
825
- marginTop: 8
852
+ marginTop: 4
826
853
  },
827
- getStartedCard: {
854
+ getStartedCardMockup: {
855
+ backgroundColor: '#FFFFFF',
828
856
  padding: 12,
829
- borderRadius: 16,
830
- marginTop: 4,
831
- marginBottom: 4
857
+ borderRadius: 12,
858
+ marginBottom: 16,
859
+ borderWidth: 1,
860
+ borderColor: '#E2E8F0'
832
861
  },
833
862
  getStartedRow: {
834
863
  flexDirection: 'row',
835
864
  alignItems: 'center'
836
865
  },
837
- doctorAvatar: {
838
- width: 44,
839
- height: 44,
840
- borderRadius: 22,
841
- marginRight: 12
866
+ getStartedIconBox: {
867
+ width: 42,
868
+ height: 42,
869
+ borderRadius: 10,
870
+ backgroundColor: '#FFF7ED',
871
+ justifyContent: 'center',
872
+ alignItems: 'center',
873
+ marginRight: 12,
874
+ position: 'relative'
875
+ },
876
+ anatomyIcon: {
877
+ width: 24,
878
+ height: 24
879
+ },
880
+ playIconBadge: {
881
+ position: 'absolute',
882
+ bottom: -6,
883
+ right: -6,
884
+ backgroundColor: '#FFFFFF',
885
+ borderRadius: 10,
886
+ padding: 2
842
887
  },
843
888
  getStartedInfo: {
844
889
  flex: 1
@@ -846,16 +891,19 @@ const styles = StyleSheet.create({
846
891
  continueLearningList: {
847
892
  marginTop: 4
848
893
  },
849
- continueLearningCard: {
894
+ continueCardMockup: {
895
+ backgroundColor: '#FFFFFF',
850
896
  padding: 12,
851
- marginBottom: 6,
852
- borderRadius: 16
897
+ marginBottom: 10,
898
+ borderRadius: 12,
899
+ borderWidth: 1,
900
+ borderColor: '#E2E8F0'
853
901
  },
854
902
  continueLearningRow: {
855
903
  flexDirection: 'row',
856
904
  alignItems: 'center'
857
905
  },
858
- subjectIconBox: {
906
+ continueIconBox: {
859
907
  width: 40,
860
908
  height: 40,
861
909
  borderRadius: 10,
@@ -866,81 +914,48 @@ const styles = StyleSheet.create({
866
914
  continueLearningInfo: {
867
915
  flex: 1
868
916
  },
869
- continueLearningTextRow: {
870
- flexDirection: 'row',
871
- justifyContent: 'space-between',
872
- alignItems: 'center',
873
- marginBottom: 6
917
+ progressBarBgMockup: {
918
+ height: 6,
919
+ backgroundColor: '#F1F5F9',
920
+ borderRadius: 3,
921
+ marginBottom: 8,
922
+ width: '100%',
923
+ overflow: 'hidden'
874
924
  },
875
- continueProgressBar: {
876
- height: 4,
877
- marginBottom: 6
925
+ progressBarFillMockup: {
926
+ height: '100%',
927
+ borderRadius: 3
878
928
  },
879
929
  continueStatsRow: {
880
930
  flexDirection: 'row',
881
931
  justifyContent: 'space-between',
882
932
  alignItems: 'center'
883
933
  },
884
- referralCard: {
885
- marginTop: 8,
886
- padding: 14,
887
- borderRadius: 16,
888
- backgroundColor: '#FDE047' // RxDx Amber
889
- },
890
- referralRow: {
891
- flexDirection: 'row',
892
- justifyContent: 'space-between',
893
- alignItems: 'center'
894
- },
895
- referralLeft: {
934
+ referralBannerMockup: {
896
935
  flexDirection: 'row',
897
936
  alignItems: 'center',
898
- flex: 1,
899
- paddingRight: 12
937
+ backgroundColor: '#FCD34D',
938
+ padding: 12,
939
+ borderRadius: 12
900
940
  },
901
- referralIconContainer: {
902
- width: 28,
903
- height: 28,
904
- borderRadius: 14,
905
- backgroundColor: '#EA580C',
906
- // Orange sharing accent
941
+ referralIconCircle: {
942
+ width: 32,
943
+ height: 32,
944
+ borderRadius: 16,
945
+ backgroundColor: '#F59E0B',
907
946
  justifyContent: 'center',
908
947
  alignItems: 'center',
909
948
  marginRight: 10
910
949
  },
911
- referralText: {
912
- fontSize: 12,
913
- lineHeight: 16,
914
- flex: 1
950
+ referralTextCol: {
951
+ flex: 1,
952
+ paddingRight: 12
915
953
  },
916
- referralButton: {
954
+ shareAppBtnWhite: {
917
955
  backgroundColor: '#FFFFFF',
918
956
  paddingHorizontal: 12,
919
- paddingVertical: 6,
920
- borderRadius: 12,
921
- shadowColor: '#000000',
922
- shadowOffset: {
923
- width: 0,
924
- height: 1
925
- },
926
- shadowOpacity: 0.1,
927
- shadowRadius: 1,
928
- elevation: 1
929
- },
930
- bannerCarouselContainer: {
931
- marginTop: 12
932
- },
933
- bannerScrollViewContent: {},
934
- dotsContainer: {
935
- flexDirection: 'row',
936
- justifyContent: 'center',
937
- alignItems: 'center',
938
- marginTop: 8
939
- },
940
- dot: {
941
- height: 6,
942
- borderRadius: 3,
943
- marginHorizontal: 3
957
+ paddingVertical: 8,
958
+ borderRadius: 8
944
959
  }
945
960
  });
946
961
  //# sourceMappingURL=HomeScreen.js.map