react-native-elearn-ui 0.1.0

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 (100) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +37 -0
  3. package/lib/module/components/Button.js +82 -0
  4. package/lib/module/components/Button.js.map +1 -0
  5. package/lib/module/components/Card.js +49 -0
  6. package/lib/module/components/Card.js.map +1 -0
  7. package/lib/module/components/CircularProgress.js +80 -0
  8. package/lib/module/components/CircularProgress.js.map +1 -0
  9. package/lib/module/components/Icon.js +268 -0
  10. package/lib/module/components/Icon.js.map +1 -0
  11. package/lib/module/components/ProgressBar.js +39 -0
  12. package/lib/module/components/ProgressBar.js.map +1 -0
  13. package/lib/module/components/Typography.js +102 -0
  14. package/lib/module/components/Typography.js.map +1 -0
  15. package/lib/module/components/index.js +10 -0
  16. package/lib/module/components/index.js.map +1 -0
  17. package/lib/module/context/ElearnConfigContext.js +76 -0
  18. package/lib/module/context/ElearnConfigContext.js.map +1 -0
  19. package/lib/module/context/ThemeContext.js +45 -0
  20. package/lib/module/context/ThemeContext.js.map +1 -0
  21. package/lib/module/index.js +13 -0
  22. package/lib/module/index.js.map +1 -0
  23. package/lib/module/multiply.js +6 -0
  24. package/lib/module/multiply.js.map +1 -0
  25. package/lib/module/package.json +1 -0
  26. package/lib/module/screens/HomeScreen.js +330 -0
  27. package/lib/module/screens/HomeScreen.js.map +1 -0
  28. package/lib/module/screens/QbankScreen.js +200 -0
  29. package/lib/module/screens/QbankScreen.js.map +1 -0
  30. package/lib/module/screens/QuestionScreen.js +383 -0
  31. package/lib/module/screens/QuestionScreen.js.map +1 -0
  32. package/lib/module/screens/QuizStartScreen.js +230 -0
  33. package/lib/module/screens/QuizStartScreen.js.map +1 -0
  34. package/lib/module/screens/ResultScreen.js +318 -0
  35. package/lib/module/screens/ResultScreen.js.map +1 -0
  36. package/lib/module/screens/TopicListScreen.js +222 -0
  37. package/lib/module/screens/TopicListScreen.js.map +1 -0
  38. package/lib/module/screens/index.js +9 -0
  39. package/lib/module/screens/index.js.map +1 -0
  40. package/lib/module/types/index.js +2 -0
  41. package/lib/module/types/index.js.map +1 -0
  42. package/lib/typescript/package.json +1 -0
  43. package/lib/typescript/src/components/Button.d.ts +14 -0
  44. package/lib/typescript/src/components/Button.d.ts.map +1 -0
  45. package/lib/typescript/src/components/Card.d.ts +12 -0
  46. package/lib/typescript/src/components/Card.d.ts.map +1 -0
  47. package/lib/typescript/src/components/CircularProgress.d.ts +15 -0
  48. package/lib/typescript/src/components/CircularProgress.d.ts.map +1 -0
  49. package/lib/typescript/src/components/Icon.d.ts +11 -0
  50. package/lib/typescript/src/components/Icon.d.ts.map +1 -0
  51. package/lib/typescript/src/components/ProgressBar.d.ts +11 -0
  52. package/lib/typescript/src/components/ProgressBar.d.ts.map +1 -0
  53. package/lib/typescript/src/components/Typography.d.ts +12 -0
  54. package/lib/typescript/src/components/Typography.d.ts.map +1 -0
  55. package/lib/typescript/src/components/index.d.ts +9 -0
  56. package/lib/typescript/src/components/index.d.ts.map +1 -0
  57. package/lib/typescript/src/context/ElearnConfigContext.d.ts +22 -0
  58. package/lib/typescript/src/context/ElearnConfigContext.d.ts.map +1 -0
  59. package/lib/typescript/src/context/ThemeContext.d.ts +11 -0
  60. package/lib/typescript/src/context/ThemeContext.d.ts.map +1 -0
  61. package/lib/typescript/src/index.d.ts +6 -0
  62. package/lib/typescript/src/index.d.ts.map +1 -0
  63. package/lib/typescript/src/multiply.d.ts +2 -0
  64. package/lib/typescript/src/multiply.d.ts.map +1 -0
  65. package/lib/typescript/src/screens/HomeScreen.d.ts +3 -0
  66. package/lib/typescript/src/screens/HomeScreen.d.ts.map +1 -0
  67. package/lib/typescript/src/screens/QbankScreen.d.ts +3 -0
  68. package/lib/typescript/src/screens/QbankScreen.d.ts.map +1 -0
  69. package/lib/typescript/src/screens/QuestionScreen.d.ts +11 -0
  70. package/lib/typescript/src/screens/QuestionScreen.d.ts.map +1 -0
  71. package/lib/typescript/src/screens/QuizStartScreen.d.ts +10 -0
  72. package/lib/typescript/src/screens/QuizStartScreen.d.ts.map +1 -0
  73. package/lib/typescript/src/screens/ResultScreen.d.ts +11 -0
  74. package/lib/typescript/src/screens/ResultScreen.d.ts.map +1 -0
  75. package/lib/typescript/src/screens/TopicListScreen.d.ts +9 -0
  76. package/lib/typescript/src/screens/TopicListScreen.d.ts.map +1 -0
  77. package/lib/typescript/src/screens/index.d.ts +7 -0
  78. package/lib/typescript/src/screens/index.d.ts.map +1 -0
  79. package/lib/typescript/src/types/index.d.ts +107 -0
  80. package/lib/typescript/src/types/index.d.ts.map +1 -0
  81. package/package.json +121 -0
  82. package/src/components/Button.tsx +101 -0
  83. package/src/components/Card.tsx +57 -0
  84. package/src/components/CircularProgress.tsx +93 -0
  85. package/src/components/Icon.tsx +338 -0
  86. package/src/components/ProgressBar.tsx +47 -0
  87. package/src/components/Typography.tsx +112 -0
  88. package/src/components/index.ts +8 -0
  89. package/src/context/ElearnConfigContext.tsx +90 -0
  90. package/src/context/ThemeContext.tsx +37 -0
  91. package/src/index.tsx +33 -0
  92. package/src/multiply.tsx +3 -0
  93. package/src/screens/HomeScreen.tsx +291 -0
  94. package/src/screens/QbankScreen.tsx +176 -0
  95. package/src/screens/QuestionScreen.tsx +402 -0
  96. package/src/screens/QuizStartScreen.tsx +215 -0
  97. package/src/screens/ResultScreen.tsx +303 -0
  98. package/src/screens/TopicListScreen.tsx +200 -0
  99. package/src/screens/index.ts +6 -0
  100. package/src/types/index.ts +122 -0
@@ -0,0 +1,230 @@
1
+ "use strict";
2
+
3
+ import React from 'react';
4
+ import { View, StyleSheet, TouchableOpacity, SafeAreaView, StatusBar } from 'react-native';
5
+ import { useElearnConfig } from "../context/ElearnConfigContext.js";
6
+ import { useTheme } from "../context/ThemeContext.js";
7
+ import { Typography, Card, Button, Icon } from "../components/index.js";
8
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
+ export const QuizStartScreen = ({
10
+ course,
11
+ topic,
12
+ onBack
13
+ }) => {
14
+ const {
15
+ callbacks,
16
+ getString
17
+ } = useElearnConfig();
18
+ const theme = useTheme();
19
+ const handleStart = () => {
20
+ if (callbacks.onStartQuiz && topic.questions) {
21
+ callbacks.onStartQuiz(topic.id, topic.questions, topic.title);
22
+ }
23
+ };
24
+ const infoItems = ['Immediate explanation display', 'Interactive choice evaluation', 'Self-paced learning structure', 'Detailed performance scorecard'];
25
+ return /*#__PURE__*/_jsxs(SafeAreaView, {
26
+ style: [styles.safeArea, {
27
+ backgroundColor: theme.background
28
+ }],
29
+ children: [/*#__PURE__*/_jsx(StatusBar, {
30
+ barStyle: "dark-content"
31
+ }), /*#__PURE__*/_jsxs(View, {
32
+ style: styles.header,
33
+ children: [/*#__PURE__*/_jsx(TouchableOpacity, {
34
+ onPress: onBack,
35
+ style: [styles.backButton, {
36
+ borderColor: theme.border
37
+ }],
38
+ children: /*#__PURE__*/_jsx(Icon, {
39
+ name: "arrow-left",
40
+ size: 20,
41
+ color: theme.textPrimary
42
+ })
43
+ }), /*#__PURE__*/_jsx(Typography, {
44
+ variant: "h3",
45
+ bold: true,
46
+ style: styles.headerTitle,
47
+ numberOfLines: 1,
48
+ children: course.title
49
+ }), /*#__PURE__*/_jsx(View, {
50
+ style: styles.headerRightPlaceholder
51
+ })]
52
+ }), /*#__PURE__*/_jsxs(View, {
53
+ style: styles.container,
54
+ children: [/*#__PURE__*/_jsxs(View, {
55
+ style: styles.content,
56
+ children: [/*#__PURE__*/_jsxs(Card, {
57
+ bordered: true,
58
+ style: styles.mainCard,
59
+ children: [/*#__PURE__*/_jsx(View, {
60
+ style: [styles.badge, {
61
+ backgroundColor: theme.secondary
62
+ }],
63
+ children: /*#__PURE__*/_jsx(Typography, {
64
+ variant: "caption",
65
+ color: theme.primary,
66
+ bold: true,
67
+ children: course.title.toUpperCase()
68
+ })
69
+ }), /*#__PURE__*/_jsx(Typography, {
70
+ variant: "h1",
71
+ bold: true,
72
+ style: styles.title,
73
+ children: topic.title
74
+ }), /*#__PURE__*/_jsx(Typography, {
75
+ variant: "body",
76
+ color: theme.textSecondary,
77
+ style: styles.desc,
78
+ children: "Practice questions to master this topic. Dynamic evaluation will track your correctness and accuracy instantly."
79
+ }), /*#__PURE__*/_jsxs(View, {
80
+ style: styles.questionsStatsRow,
81
+ children: [/*#__PURE__*/_jsx(Icon, {
82
+ name: "book-open",
83
+ size: 20,
84
+ color: theme.primary
85
+ }), /*#__PURE__*/_jsxs(Typography, {
86
+ variant: "body",
87
+ bold: true,
88
+ style: styles.statsText,
89
+ children: [topic.totalQuestions, " Questions Available"]
90
+ })]
91
+ })]
92
+ }), /*#__PURE__*/_jsxs(View, {
93
+ style: styles.infoSection,
94
+ children: [/*#__PURE__*/_jsx(Typography, {
95
+ variant: "h2",
96
+ bold: true,
97
+ style: styles.infoTitle,
98
+ children: getString('topicsAndItemsLabel')
99
+ }), /*#__PURE__*/_jsx(View, {
100
+ style: styles.guidelinesList,
101
+ children: infoItems.map((item, idx) => /*#__PURE__*/_jsxs(View, {
102
+ style: styles.infoItemRow,
103
+ children: [/*#__PURE__*/_jsx(View, {
104
+ style: styles.bulletContainer,
105
+ children: /*#__PURE__*/_jsx(Icon, {
106
+ name: "check-circle",
107
+ size: 18,
108
+ color: theme.primary
109
+ })
110
+ }), /*#__PURE__*/_jsx(Typography, {
111
+ variant: "body",
112
+ color: theme.textSecondary,
113
+ style: styles.infoItemText,
114
+ children: item
115
+ })]
116
+ }, idx))
117
+ })]
118
+ })]
119
+ }), /*#__PURE__*/_jsx(View, {
120
+ style: [styles.footer, {
121
+ backgroundColor: theme.cardBackground,
122
+ borderTopColor: theme.border
123
+ }],
124
+ children: /*#__PURE__*/_jsx(Button, {
125
+ title: getString('startQuizButton'),
126
+ onPress: handleStart,
127
+ variant: "primary",
128
+ style: styles.startButton,
129
+ disabled: !topic.questions || topic.questions.length === 0
130
+ })
131
+ })]
132
+ })]
133
+ });
134
+ };
135
+ const styles = StyleSheet.create({
136
+ safeArea: {
137
+ flex: 1
138
+ },
139
+ header: {
140
+ flexDirection: 'row',
141
+ justifyContent: 'space-between',
142
+ alignItems: 'center',
143
+ paddingHorizontal: 20,
144
+ paddingVertical: 12
145
+ },
146
+ backButton: {
147
+ width: 40,
148
+ height: 40,
149
+ borderRadius: 20,
150
+ borderWidth: 1,
151
+ justifyContent: 'center',
152
+ alignItems: 'center'
153
+ },
154
+ headerTitle: {
155
+ flex: 1,
156
+ textAlign: 'center',
157
+ marginHorizontal: 12
158
+ },
159
+ headerRightPlaceholder: {
160
+ width: 40
161
+ },
162
+ container: {
163
+ flex: 1,
164
+ justifyContent: 'space-between'
165
+ },
166
+ content: {
167
+ flex: 1,
168
+ paddingHorizontal: 20,
169
+ paddingTop: 12
170
+ },
171
+ mainCard: {
172
+ padding: 24,
173
+ borderRadius: 20
174
+ },
175
+ badge: {
176
+ alignSelf: 'flex-start',
177
+ paddingHorizontal: 10,
178
+ paddingVertical: 4,
179
+ borderRadius: 8,
180
+ marginBottom: 12
181
+ },
182
+ title: {
183
+ fontSize: 22,
184
+ lineHeight: 28,
185
+ marginBottom: 8
186
+ },
187
+ desc: {
188
+ lineHeight: 20,
189
+ marginBottom: 16
190
+ },
191
+ questionsStatsRow: {
192
+ flexDirection: 'row',
193
+ alignItems: 'center',
194
+ marginTop: 8
195
+ },
196
+ statsText: {
197
+ marginLeft: 8
198
+ },
199
+ infoSection: {
200
+ marginTop: 28
201
+ },
202
+ infoTitle: {
203
+ marginBottom: 16
204
+ },
205
+ guidelinesList: {
206
+ marginTop: 4
207
+ },
208
+ infoItemRow: {
209
+ flexDirection: 'row',
210
+ alignItems: 'flex-start',
211
+ marginBottom: 14
212
+ },
213
+ bulletContainer: {
214
+ marginTop: 1
215
+ },
216
+ infoItemText: {
217
+ marginLeft: 12,
218
+ flex: 1,
219
+ lineHeight: 18
220
+ },
221
+ footer: {
222
+ paddingHorizontal: 20,
223
+ paddingVertical: 16,
224
+ borderTopWidth: 1
225
+ },
226
+ startButton: {
227
+ width: '100%'
228
+ }
229
+ });
230
+ //# sourceMappingURL=QuizStartScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","View","StyleSheet","TouchableOpacity","SafeAreaView","StatusBar","useElearnConfig","useTheme","Typography","Card","Button","Icon","jsx","_jsx","jsxs","_jsxs","QuizStartScreen","course","topic","onBack","callbacks","getString","theme","handleStart","onStartQuiz","questions","id","title","infoItems","style","styles","safeArea","backgroundColor","background","children","barStyle","header","onPress","backButton","borderColor","border","name","size","color","textPrimary","variant","bold","headerTitle","numberOfLines","headerRightPlaceholder","container","content","bordered","mainCard","badge","secondary","primary","toUpperCase","textSecondary","desc","questionsStatsRow","statsText","totalQuestions","infoSection","infoTitle","guidelinesList","map","item","idx","infoItemRow","bulletContainer","infoItemText","footer","cardBackground","borderTopColor","startButton","disabled","length","create","flex","flexDirection","justifyContent","alignItems","paddingHorizontal","paddingVertical","width","height","borderRadius","borderWidth","textAlign","marginHorizontal","paddingTop","padding","alignSelf","marginBottom","fontSize","lineHeight","marginTop","marginLeft","borderTopWidth"],"sourceRoot":"../../../src","sources":["screens/QuizStartScreen.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,318 @@
1
+ "use strict";
2
+
3
+ import React from 'react';
4
+ import { View, ScrollView, StyleSheet, TouchableOpacity, SafeAreaView, StatusBar } from 'react-native';
5
+ import { useElearnConfig } from "../context/ElearnConfigContext.js";
6
+ import { useTheme } from "../context/ThemeContext.js";
7
+ import { Typography, Card, CircularProgress, Button, Icon } from "../components/index.js";
8
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
+ export const ResultScreen = ({
10
+ results,
11
+ questions,
12
+ onClose,
13
+ onReviewAnswers
14
+ }) => {
15
+ const {
16
+ getString
17
+ } = useElearnConfig();
18
+ const theme = useTheme();
19
+ const formatTime = totalSeconds => {
20
+ const mins = Math.floor(totalSeconds / 60);
21
+ const secs = totalSeconds % 60;
22
+ if (mins > 0) {
23
+ return `${mins}m ${secs}s`;
24
+ }
25
+ return `${secs}s`;
26
+ };
27
+ return /*#__PURE__*/_jsxs(SafeAreaView, {
28
+ style: [styles.safeArea, {
29
+ backgroundColor: theme.background
30
+ }],
31
+ children: [/*#__PURE__*/_jsx(StatusBar, {
32
+ barStyle: "dark-content"
33
+ }), /*#__PURE__*/_jsxs(View, {
34
+ style: styles.header,
35
+ children: [/*#__PURE__*/_jsx(View, {
36
+ style: styles.headerLeftPlaceholder
37
+ }), /*#__PURE__*/_jsx(Typography, {
38
+ variant: "h2",
39
+ bold: true,
40
+ children: getString('resultsTitle')
41
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
42
+ onPress: onClose,
43
+ style: styles.closeButton,
44
+ children: /*#__PURE__*/_jsx(Icon, {
45
+ name: "x-circle",
46
+ size: 24,
47
+ color: theme.textSecondary
48
+ })
49
+ })]
50
+ }), /*#__PURE__*/_jsxs(ScrollView, {
51
+ contentContainerStyle: styles.scrollContent,
52
+ showsVerticalScrollIndicator: false,
53
+ children: [/*#__PURE__*/_jsx(Card, {
54
+ bordered: true,
55
+ style: styles.summaryCard,
56
+ children: /*#__PURE__*/_jsxs(View, {
57
+ style: styles.summaryRow,
58
+ children: [/*#__PURE__*/_jsxs(View, {
59
+ style: styles.summaryLeft,
60
+ children: [/*#__PURE__*/_jsx(Typography, {
61
+ variant: "h1",
62
+ bold: true,
63
+ color: theme.textPrimary,
64
+ children: getString('scorecardTitle')
65
+ }), /*#__PURE__*/_jsx(Typography, {
66
+ variant: "body",
67
+ color: theme.textSecondary,
68
+ style: styles.summarySubtitle,
69
+ children: getString('resultsSubtitle')
70
+ }), /*#__PURE__*/_jsxs(View, {
71
+ style: styles.statsContainer,
72
+ children: [/*#__PURE__*/_jsxs(View, {
73
+ style: styles.statBox,
74
+ children: [/*#__PURE__*/_jsx(Typography, {
75
+ variant: "caption",
76
+ color: theme.textSecondary,
77
+ children: getString('correctAnswersCountLabel')
78
+ }), /*#__PURE__*/_jsxs(Typography, {
79
+ variant: "h2",
80
+ bold: true,
81
+ color: theme.success,
82
+ children: [results.correctCount, " / ", results.totalQuestions]
83
+ })]
84
+ }), /*#__PURE__*/_jsxs(View, {
85
+ style: styles.statBox,
86
+ children: [/*#__PURE__*/_jsx(Typography, {
87
+ variant: "caption",
88
+ color: theme.textSecondary,
89
+ children: getString('timeSpentLabel')
90
+ }), /*#__PURE__*/_jsx(Typography, {
91
+ variant: "h2",
92
+ bold: true,
93
+ color: theme.textPrimary,
94
+ children: formatTime(results.timeSpentSeconds)
95
+ })]
96
+ })]
97
+ })]
98
+ }), /*#__PURE__*/_jsxs(View, {
99
+ style: styles.summaryRight,
100
+ children: [/*#__PURE__*/_jsx(CircularProgress, {
101
+ progress: results.accuracy / 100,
102
+ size: 84,
103
+ strokeWidth: 8,
104
+ color: results.accuracy >= 60 ? theme.success : theme.warning,
105
+ backgroundColor: theme.secondary,
106
+ textStyle: {
107
+ fontSize: 16
108
+ }
109
+ }), /*#__PURE__*/_jsx(Typography, {
110
+ variant: "caption",
111
+ color: theme.textSecondary,
112
+ style: styles.accuracyText,
113
+ children: getString('accuracyLabel')
114
+ })]
115
+ })]
116
+ })
117
+ }), /*#__PURE__*/_jsx(View, {
118
+ style: styles.sectionHeader,
119
+ children: /*#__PURE__*/_jsx(Typography, {
120
+ variant: "h2",
121
+ bold: true,
122
+ children: "Questions Summary"
123
+ })
124
+ }), /*#__PURE__*/_jsx(View, {
125
+ style: styles.reviewList,
126
+ children: questions.map((question, idx) => {
127
+ const userAnswerIdx = results.userAnswers[question.id];
128
+ const isCorrect = userAnswerIdx === question.correctOptionIndex;
129
+ const optionPrefixes = ['A', 'B', 'C', 'D', 'E'];
130
+ return /*#__PURE__*/_jsxs(Card, {
131
+ bordered: true,
132
+ style: styles.reviewCard,
133
+ children: [/*#__PURE__*/_jsxs(View, {
134
+ style: styles.reviewCardHeader,
135
+ children: [/*#__PURE__*/_jsx(View, {
136
+ style: [styles.questionNumBadge, {
137
+ backgroundColor: theme.secondary
138
+ }],
139
+ children: /*#__PURE__*/_jsxs(Typography, {
140
+ variant: "caption",
141
+ bold: true,
142
+ color: theme.primary,
143
+ children: ["Q", idx + 1]
144
+ })
145
+ }), /*#__PURE__*/_jsxs(View, {
146
+ style: styles.statusBadge,
147
+ children: [/*#__PURE__*/_jsx(Icon, {
148
+ name: isCorrect ? 'check-circle' : 'x-circle',
149
+ size: 18,
150
+ color: isCorrect ? theme.success : theme.danger
151
+ }), /*#__PURE__*/_jsx(Typography, {
152
+ variant: "caption",
153
+ bold: true,
154
+ color: isCorrect ? theme.success : theme.danger,
155
+ style: styles.statusBadgeText,
156
+ children: isCorrect ? 'Correct' : 'Incorrect'
157
+ })]
158
+ })]
159
+ }), /*#__PURE__*/_jsx(Typography, {
160
+ variant: "body",
161
+ bold: true,
162
+ style: styles.reviewQuestionText,
163
+ children: question.text
164
+ }), /*#__PURE__*/_jsxs(View, {
165
+ style: styles.userSelectionContainer,
166
+ children: [/*#__PURE__*/_jsxs(Typography, {
167
+ variant: "caption",
168
+ color: theme.textSecondary,
169
+ children: ["Your answer:", ' ', /*#__PURE__*/_jsx(Typography, {
170
+ variant: "caption",
171
+ bold: true,
172
+ color: isCorrect ? theme.success : theme.danger,
173
+ children: userAnswerIdx !== undefined ? `Option ${optionPrefixes[userAnswerIdx] || userAnswerIdx + 1}` : 'Skipped'
174
+ })]
175
+ }), !isCorrect && /*#__PURE__*/_jsxs(Typography, {
176
+ variant: "caption",
177
+ color: theme.textSecondary,
178
+ style: styles.correctAnswerText,
179
+ children: ["Correct answer:", ' ', /*#__PURE__*/_jsxs(Typography, {
180
+ variant: "caption",
181
+ bold: true,
182
+ color: theme.success,
183
+ children: ["Option ", optionPrefixes[question.correctOptionIndex] || question.correctOptionIndex + 1]
184
+ })]
185
+ })]
186
+ })]
187
+ }, question.id);
188
+ })
189
+ })]
190
+ }), /*#__PURE__*/_jsxs(View, {
191
+ style: [styles.footer, {
192
+ backgroundColor: theme.cardBackground,
193
+ borderTopColor: theme.border
194
+ }],
195
+ children: [onReviewAnswers && /*#__PURE__*/_jsx(Button, {
196
+ title: getString('reviewAnswersButton'),
197
+ onPress: onReviewAnswers,
198
+ variant: "outline",
199
+ style: styles.reviewBtn
200
+ }), /*#__PURE__*/_jsx(Button, {
201
+ title: getString('goHomeButton'),
202
+ onPress: onClose,
203
+ variant: "primary",
204
+ style: styles.homeBtn
205
+ })]
206
+ })]
207
+ });
208
+ };
209
+ const styles = StyleSheet.create({
210
+ safeArea: {
211
+ flex: 1
212
+ },
213
+ header: {
214
+ flexDirection: 'row',
215
+ justifyContent: 'space-between',
216
+ alignItems: 'center',
217
+ paddingHorizontal: 20,
218
+ paddingVertical: 12
219
+ },
220
+ headerLeftPlaceholder: {
221
+ width: 40
222
+ },
223
+ closeButton: {
224
+ padding: 4
225
+ },
226
+ scrollContent: {
227
+ paddingHorizontal: 20,
228
+ paddingTop: 12,
229
+ paddingBottom: 40
230
+ },
231
+ summaryCard: {
232
+ padding: 20,
233
+ borderRadius: 20
234
+ },
235
+ summaryRow: {
236
+ flexDirection: 'row',
237
+ justifyContent: 'space-between',
238
+ alignItems: 'center'
239
+ },
240
+ summaryLeft: {
241
+ flex: 1,
242
+ paddingRight: 16
243
+ },
244
+ summarySubtitle: {
245
+ marginTop: 4,
246
+ marginBottom: 16
247
+ },
248
+ statsContainer: {
249
+ flexDirection: 'row'
250
+ },
251
+ statBox: {
252
+ marginRight: 24
253
+ },
254
+ summaryRight: {
255
+ alignItems: 'center',
256
+ justifyContent: 'center'
257
+ },
258
+ accuracyText: {
259
+ marginTop: 8,
260
+ fontWeight: '600'
261
+ },
262
+ sectionHeader: {
263
+ marginTop: 28,
264
+ marginBottom: 12
265
+ },
266
+ reviewList: {
267
+ marginTop: 4
268
+ },
269
+ reviewCard: {
270
+ padding: 16,
271
+ marginBottom: 12
272
+ },
273
+ reviewCardHeader: {
274
+ flexDirection: 'row',
275
+ justifyContent: 'space-between',
276
+ alignItems: 'center',
277
+ marginBottom: 10
278
+ },
279
+ questionNumBadge: {
280
+ paddingHorizontal: 8,
281
+ paddingVertical: 4,
282
+ borderRadius: 8
283
+ },
284
+ statusBadge: {
285
+ flexDirection: 'row',
286
+ alignItems: 'center'
287
+ },
288
+ statusBadgeText: {
289
+ marginLeft: 6
290
+ },
291
+ reviewQuestionText: {
292
+ lineHeight: 20,
293
+ marginBottom: 10
294
+ },
295
+ userSelectionContainer: {
296
+ backgroundColor: '#F8FAFC',
297
+ padding: 10,
298
+ borderRadius: 8
299
+ },
300
+ correctAnswerText: {
301
+ marginTop: 4
302
+ },
303
+ footer: {
304
+ paddingHorizontal: 20,
305
+ paddingVertical: 14,
306
+ borderTopWidth: 1,
307
+ flexDirection: 'row',
308
+ justifyContent: 'space-between'
309
+ },
310
+ reviewBtn: {
311
+ flex: 1,
312
+ marginRight: 12
313
+ },
314
+ homeBtn: {
315
+ flex: 1
316
+ }
317
+ });
318
+ //# sourceMappingURL=ResultScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","View","ScrollView","StyleSheet","TouchableOpacity","SafeAreaView","StatusBar","useElearnConfig","useTheme","Typography","Card","CircularProgress","Button","Icon","jsx","_jsx","jsxs","_jsxs","ResultScreen","results","questions","onClose","onReviewAnswers","getString","theme","formatTime","totalSeconds","mins","Math","floor","secs","style","styles","safeArea","backgroundColor","background","children","barStyle","header","headerLeftPlaceholder","variant","bold","onPress","closeButton","name","size","color","textSecondary","contentContainerStyle","scrollContent","showsVerticalScrollIndicator","bordered","summaryCard","summaryRow","summaryLeft","textPrimary","summarySubtitle","statsContainer","statBox","success","correctCount","totalQuestions","timeSpentSeconds","summaryRight","progress","accuracy","strokeWidth","warning","secondary","textStyle","fontSize","accuracyText","sectionHeader","reviewList","map","question","idx","userAnswerIdx","userAnswers","id","isCorrect","correctOptionIndex","optionPrefixes","reviewCard","reviewCardHeader","questionNumBadge","primary","statusBadge","danger","statusBadgeText","reviewQuestionText","text","userSelectionContainer","undefined","correctAnswerText","footer","cardBackground","borderTopColor","border","title","reviewBtn","homeBtn","create","flex","flexDirection","justifyContent","alignItems","paddingHorizontal","paddingVertical","width","padding","paddingTop","paddingBottom","borderRadius","paddingRight","marginTop","marginBottom","marginRight","fontWeight","marginLeft","lineHeight","borderTopWidth"],"sourceRoot":"../../../src","sources":["screens/ResultScreen.tsx"],"mappings":"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","ignoreList":[]}