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.
- package/LICENSE +20 -0
- package/README.md +37 -0
- package/lib/module/components/Button.js +82 -0
- package/lib/module/components/Button.js.map +1 -0
- package/lib/module/components/Card.js +49 -0
- package/lib/module/components/Card.js.map +1 -0
- package/lib/module/components/CircularProgress.js +80 -0
- package/lib/module/components/CircularProgress.js.map +1 -0
- package/lib/module/components/Icon.js +268 -0
- package/lib/module/components/Icon.js.map +1 -0
- package/lib/module/components/ProgressBar.js +39 -0
- package/lib/module/components/ProgressBar.js.map +1 -0
- package/lib/module/components/Typography.js +102 -0
- package/lib/module/components/Typography.js.map +1 -0
- package/lib/module/components/index.js +10 -0
- package/lib/module/components/index.js.map +1 -0
- package/lib/module/context/ElearnConfigContext.js +76 -0
- package/lib/module/context/ElearnConfigContext.js.map +1 -0
- package/lib/module/context/ThemeContext.js +45 -0
- package/lib/module/context/ThemeContext.js.map +1 -0
- package/lib/module/index.js +13 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/multiply.js +6 -0
- package/lib/module/multiply.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/screens/HomeScreen.js +330 -0
- package/lib/module/screens/HomeScreen.js.map +1 -0
- package/lib/module/screens/QbankScreen.js +200 -0
- package/lib/module/screens/QbankScreen.js.map +1 -0
- package/lib/module/screens/QuestionScreen.js +383 -0
- package/lib/module/screens/QuestionScreen.js.map +1 -0
- package/lib/module/screens/QuizStartScreen.js +230 -0
- package/lib/module/screens/QuizStartScreen.js.map +1 -0
- package/lib/module/screens/ResultScreen.js +318 -0
- package/lib/module/screens/ResultScreen.js.map +1 -0
- package/lib/module/screens/TopicListScreen.js +222 -0
- package/lib/module/screens/TopicListScreen.js.map +1 -0
- package/lib/module/screens/index.js +9 -0
- package/lib/module/screens/index.js.map +1 -0
- package/lib/module/types/index.js +2 -0
- package/lib/module/types/index.js.map +1 -0
- package/lib/typescript/package.json +1 -0
- package/lib/typescript/src/components/Button.d.ts +14 -0
- package/lib/typescript/src/components/Button.d.ts.map +1 -0
- package/lib/typescript/src/components/Card.d.ts +12 -0
- package/lib/typescript/src/components/Card.d.ts.map +1 -0
- package/lib/typescript/src/components/CircularProgress.d.ts +15 -0
- package/lib/typescript/src/components/CircularProgress.d.ts.map +1 -0
- package/lib/typescript/src/components/Icon.d.ts +11 -0
- package/lib/typescript/src/components/Icon.d.ts.map +1 -0
- package/lib/typescript/src/components/ProgressBar.d.ts +11 -0
- package/lib/typescript/src/components/ProgressBar.d.ts.map +1 -0
- package/lib/typescript/src/components/Typography.d.ts +12 -0
- package/lib/typescript/src/components/Typography.d.ts.map +1 -0
- package/lib/typescript/src/components/index.d.ts +9 -0
- package/lib/typescript/src/components/index.d.ts.map +1 -0
- package/lib/typescript/src/context/ElearnConfigContext.d.ts +22 -0
- package/lib/typescript/src/context/ElearnConfigContext.d.ts.map +1 -0
- package/lib/typescript/src/context/ThemeContext.d.ts +11 -0
- package/lib/typescript/src/context/ThemeContext.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +6 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/lib/typescript/src/multiply.d.ts +2 -0
- package/lib/typescript/src/multiply.d.ts.map +1 -0
- package/lib/typescript/src/screens/HomeScreen.d.ts +3 -0
- package/lib/typescript/src/screens/HomeScreen.d.ts.map +1 -0
- package/lib/typescript/src/screens/QbankScreen.d.ts +3 -0
- package/lib/typescript/src/screens/QbankScreen.d.ts.map +1 -0
- package/lib/typescript/src/screens/QuestionScreen.d.ts +11 -0
- package/lib/typescript/src/screens/QuestionScreen.d.ts.map +1 -0
- package/lib/typescript/src/screens/QuizStartScreen.d.ts +10 -0
- package/lib/typescript/src/screens/QuizStartScreen.d.ts.map +1 -0
- package/lib/typescript/src/screens/ResultScreen.d.ts +11 -0
- package/lib/typescript/src/screens/ResultScreen.d.ts.map +1 -0
- package/lib/typescript/src/screens/TopicListScreen.d.ts +9 -0
- package/lib/typescript/src/screens/TopicListScreen.d.ts.map +1 -0
- package/lib/typescript/src/screens/index.d.ts +7 -0
- package/lib/typescript/src/screens/index.d.ts.map +1 -0
- package/lib/typescript/src/types/index.d.ts +107 -0
- package/lib/typescript/src/types/index.d.ts.map +1 -0
- package/package.json +121 -0
- package/src/components/Button.tsx +101 -0
- package/src/components/Card.tsx +57 -0
- package/src/components/CircularProgress.tsx +93 -0
- package/src/components/Icon.tsx +338 -0
- package/src/components/ProgressBar.tsx +47 -0
- package/src/components/Typography.tsx +112 -0
- package/src/components/index.ts +8 -0
- package/src/context/ElearnConfigContext.tsx +90 -0
- package/src/context/ThemeContext.tsx +37 -0
- package/src/index.tsx +33 -0
- package/src/multiply.tsx +3 -0
- package/src/screens/HomeScreen.tsx +291 -0
- package/src/screens/QbankScreen.tsx +176 -0
- package/src/screens/QuestionScreen.tsx +402 -0
- package/src/screens/QuizStartScreen.tsx +215 -0
- package/src/screens/ResultScreen.tsx +303 -0
- package/src/screens/TopicListScreen.tsx +200 -0
- package/src/screens/index.ts +6 -0
- package/src/types/index.ts +122 -0
|
@@ -0,0 +1,222 @@
|
|
|
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, ProgressBar, Icon } from "../components/index.js";
|
|
8
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
|
+
export const TopicListScreen = ({
|
|
10
|
+
course,
|
|
11
|
+
onBack
|
|
12
|
+
}) => {
|
|
13
|
+
const {
|
|
14
|
+
callbacks,
|
|
15
|
+
getString
|
|
16
|
+
} = useElearnConfig();
|
|
17
|
+
const theme = useTheme();
|
|
18
|
+
return /*#__PURE__*/_jsxs(SafeAreaView, {
|
|
19
|
+
style: [styles.safeArea, {
|
|
20
|
+
backgroundColor: theme.background
|
|
21
|
+
}],
|
|
22
|
+
children: [/*#__PURE__*/_jsx(StatusBar, {
|
|
23
|
+
barStyle: "dark-content"
|
|
24
|
+
}), /*#__PURE__*/_jsxs(View, {
|
|
25
|
+
style: styles.header,
|
|
26
|
+
children: [/*#__PURE__*/_jsx(TouchableOpacity, {
|
|
27
|
+
onPress: onBack,
|
|
28
|
+
style: [styles.backButton, {
|
|
29
|
+
borderColor: theme.border
|
|
30
|
+
}],
|
|
31
|
+
children: /*#__PURE__*/_jsx(Icon, {
|
|
32
|
+
name: "arrow-left",
|
|
33
|
+
size: 20,
|
|
34
|
+
color: theme.textPrimary
|
|
35
|
+
})
|
|
36
|
+
}), /*#__PURE__*/_jsx(Typography, {
|
|
37
|
+
variant: "h3",
|
|
38
|
+
bold: true,
|
|
39
|
+
style: styles.headerTitle,
|
|
40
|
+
numberOfLines: 1,
|
|
41
|
+
children: course.title
|
|
42
|
+
}), /*#__PURE__*/_jsx(View, {
|
|
43
|
+
style: styles.headerRightPlaceholder
|
|
44
|
+
})]
|
|
45
|
+
}), /*#__PURE__*/_jsxs(ScrollView, {
|
|
46
|
+
contentContainerStyle: styles.scrollContent,
|
|
47
|
+
showsVerticalScrollIndicator: false,
|
|
48
|
+
children: [/*#__PURE__*/_jsxs(Card, {
|
|
49
|
+
style: [styles.summaryCard, {
|
|
50
|
+
backgroundColor: theme.primary
|
|
51
|
+
}],
|
|
52
|
+
children: [/*#__PURE__*/_jsx(Typography, {
|
|
53
|
+
variant: "h2",
|
|
54
|
+
bold: true,
|
|
55
|
+
color: "#FFFFFF",
|
|
56
|
+
children: course.title
|
|
57
|
+
}), course.description && /*#__PURE__*/_jsx(Typography, {
|
|
58
|
+
variant: "caption",
|
|
59
|
+
color: "rgba(255, 255, 255, 0.8)",
|
|
60
|
+
style: styles.summaryDesc,
|
|
61
|
+
children: course.description
|
|
62
|
+
}), /*#__PURE__*/_jsxs(View, {
|
|
63
|
+
style: styles.progressSummaryContainer,
|
|
64
|
+
children: [/*#__PURE__*/_jsxs(View, {
|
|
65
|
+
style: styles.progressSummaryText,
|
|
66
|
+
children: [/*#__PURE__*/_jsx(Typography, {
|
|
67
|
+
variant: "caption",
|
|
68
|
+
color: "#FFFFFF",
|
|
69
|
+
children: "Overall Subject Progress"
|
|
70
|
+
}), /*#__PURE__*/_jsxs(Typography, {
|
|
71
|
+
variant: "label",
|
|
72
|
+
bold: true,
|
|
73
|
+
color: "#FFFFFF",
|
|
74
|
+
children: [course.completedQuestions, "/", course.totalQuestions, " Questions answered"]
|
|
75
|
+
})]
|
|
76
|
+
}), /*#__PURE__*/_jsxs(Typography, {
|
|
77
|
+
variant: "h2",
|
|
78
|
+
bold: true,
|
|
79
|
+
color: "#FFFFFF",
|
|
80
|
+
children: [Math.round(course.progress * 100), "%"]
|
|
81
|
+
})]
|
|
82
|
+
}), /*#__PURE__*/_jsx(ProgressBar, {
|
|
83
|
+
progress: course.progress,
|
|
84
|
+
color: "#FFFFFF",
|
|
85
|
+
style: styles.summaryProgressBar
|
|
86
|
+
})]
|
|
87
|
+
}), /*#__PURE__*/_jsx(View, {
|
|
88
|
+
style: styles.sectionHeader,
|
|
89
|
+
children: /*#__PURE__*/_jsxs(Typography, {
|
|
90
|
+
variant: "h2",
|
|
91
|
+
bold: true,
|
|
92
|
+
color: theme.textPrimary,
|
|
93
|
+
children: [getString('topicsLabel'), " (", course.topics.length, ")"]
|
|
94
|
+
})
|
|
95
|
+
}), /*#__PURE__*/_jsx(View, {
|
|
96
|
+
style: styles.topicsList,
|
|
97
|
+
children: course.topics.map(topic => {
|
|
98
|
+
const pct = Math.round(topic.progress * 100);
|
|
99
|
+
return /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
100
|
+
activeOpacity: 0.8,
|
|
101
|
+
onPress: () => callbacks.onSelectTopic?.(course, topic),
|
|
102
|
+
children: /*#__PURE__*/_jsxs(Card, {
|
|
103
|
+
bordered: true,
|
|
104
|
+
style: styles.topicCard,
|
|
105
|
+
children: [/*#__PURE__*/_jsxs(View, {
|
|
106
|
+
style: styles.topicCardHeader,
|
|
107
|
+
children: [/*#__PURE__*/_jsxs(View, {
|
|
108
|
+
style: styles.topicTitleSection,
|
|
109
|
+
children: [/*#__PURE__*/_jsx(Typography, {
|
|
110
|
+
variant: "h3",
|
|
111
|
+
bold: true,
|
|
112
|
+
color: theme.textPrimary,
|
|
113
|
+
children: topic.title
|
|
114
|
+
}), /*#__PURE__*/_jsxs(Typography, {
|
|
115
|
+
variant: "caption",
|
|
116
|
+
color: theme.textSecondary,
|
|
117
|
+
children: [topic.completedQuestions, "/", topic.totalQuestions, " ", getString('questionsCountLabel')]
|
|
118
|
+
})]
|
|
119
|
+
}), /*#__PURE__*/_jsx(View, {
|
|
120
|
+
style: styles.pctBadge,
|
|
121
|
+
children: /*#__PURE__*/_jsxs(Typography, {
|
|
122
|
+
variant: "caption",
|
|
123
|
+
bold: true,
|
|
124
|
+
color: theme.primary,
|
|
125
|
+
children: [pct, "%"]
|
|
126
|
+
})
|
|
127
|
+
})]
|
|
128
|
+
}), /*#__PURE__*/_jsx(ProgressBar, {
|
|
129
|
+
progress: topic.progress,
|
|
130
|
+
style: styles.topicProgressBar
|
|
131
|
+
})]
|
|
132
|
+
})
|
|
133
|
+
}, topic.id);
|
|
134
|
+
})
|
|
135
|
+
})]
|
|
136
|
+
})]
|
|
137
|
+
});
|
|
138
|
+
};
|
|
139
|
+
const styles = StyleSheet.create({
|
|
140
|
+
safeArea: {
|
|
141
|
+
flex: 1
|
|
142
|
+
},
|
|
143
|
+
header: {
|
|
144
|
+
flexDirection: 'row',
|
|
145
|
+
justifyContent: 'space-between',
|
|
146
|
+
alignItems: 'center',
|
|
147
|
+
paddingHorizontal: 20,
|
|
148
|
+
paddingVertical: 12
|
|
149
|
+
},
|
|
150
|
+
backButton: {
|
|
151
|
+
width: 40,
|
|
152
|
+
height: 40,
|
|
153
|
+
borderRadius: 20,
|
|
154
|
+
borderWidth: 1,
|
|
155
|
+
justifyContent: 'center',
|
|
156
|
+
alignItems: 'center'
|
|
157
|
+
},
|
|
158
|
+
headerTitle: {
|
|
159
|
+
flex: 1,
|
|
160
|
+
textAlign: 'center',
|
|
161
|
+
marginHorizontal: 12
|
|
162
|
+
},
|
|
163
|
+
headerRightPlaceholder: {
|
|
164
|
+
width: 40
|
|
165
|
+
},
|
|
166
|
+
scrollContent: {
|
|
167
|
+
paddingHorizontal: 20,
|
|
168
|
+
paddingBottom: 24
|
|
169
|
+
},
|
|
170
|
+
summaryCard: {
|
|
171
|
+
padding: 20,
|
|
172
|
+
borderRadius: 20,
|
|
173
|
+
marginTop: 12
|
|
174
|
+
},
|
|
175
|
+
summaryDesc: {
|
|
176
|
+
marginTop: 6
|
|
177
|
+
},
|
|
178
|
+
progressSummaryContainer: {
|
|
179
|
+
flexDirection: 'row',
|
|
180
|
+
justifyContent: 'space-between',
|
|
181
|
+
alignItems: 'flex-end',
|
|
182
|
+
marginTop: 20,
|
|
183
|
+
marginBottom: 8
|
|
184
|
+
},
|
|
185
|
+
progressSummaryText: {
|
|
186
|
+
flex: 1
|
|
187
|
+
},
|
|
188
|
+
summaryProgressBar: {
|
|
189
|
+
backgroundColor: 'rgba(255, 255, 255, 0.25)'
|
|
190
|
+
},
|
|
191
|
+
sectionHeader: {
|
|
192
|
+
marginTop: 24,
|
|
193
|
+
marginBottom: 12
|
|
194
|
+
},
|
|
195
|
+
topicsList: {
|
|
196
|
+
marginTop: 4
|
|
197
|
+
},
|
|
198
|
+
topicCard: {
|
|
199
|
+
padding: 16,
|
|
200
|
+
marginBottom: 12
|
|
201
|
+
},
|
|
202
|
+
topicCardHeader: {
|
|
203
|
+
flexDirection: 'row',
|
|
204
|
+
justifyContent: 'space-between',
|
|
205
|
+
alignItems: 'center',
|
|
206
|
+
marginBottom: 12
|
|
207
|
+
},
|
|
208
|
+
topicTitleSection: {
|
|
209
|
+
flex: 1,
|
|
210
|
+
paddingRight: 12
|
|
211
|
+
},
|
|
212
|
+
pctBadge: {
|
|
213
|
+
paddingHorizontal: 8,
|
|
214
|
+
paddingVertical: 4,
|
|
215
|
+
borderRadius: 8,
|
|
216
|
+
backgroundColor: 'rgba(0, 122, 135, 0.1)' // Dynamic overlay of primary color
|
|
217
|
+
},
|
|
218
|
+
topicProgressBar: {
|
|
219
|
+
height: 6
|
|
220
|
+
}
|
|
221
|
+
});
|
|
222
|
+
//# sourceMappingURL=TopicListScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","View","ScrollView","StyleSheet","TouchableOpacity","SafeAreaView","StatusBar","useElearnConfig","useTheme","Typography","Card","ProgressBar","Icon","jsx","_jsx","jsxs","_jsxs","TopicListScreen","course","onBack","callbacks","getString","theme","style","styles","safeArea","backgroundColor","background","children","barStyle","header","onPress","backButton","borderColor","border","name","size","color","textPrimary","variant","bold","headerTitle","numberOfLines","title","headerRightPlaceholder","contentContainerStyle","scrollContent","showsVerticalScrollIndicator","summaryCard","primary","description","summaryDesc","progressSummaryContainer","progressSummaryText","completedQuestions","totalQuestions","Math","round","progress","summaryProgressBar","sectionHeader","topics","length","topicsList","map","topic","pct","activeOpacity","onSelectTopic","bordered","topicCard","topicCardHeader","topicTitleSection","textSecondary","pctBadge","topicProgressBar","id","create","flex","flexDirection","justifyContent","alignItems","paddingHorizontal","paddingVertical","width","height","borderRadius","borderWidth","textAlign","marginHorizontal","paddingBottom","padding","marginTop","marginBottom","paddingRight"],"sourceRoot":"../../../src","sources":["screens/TopicListScreen.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export { HomeScreen } from "./HomeScreen.js";
|
|
4
|
+
export { QbankScreen } from "./QbankScreen.js";
|
|
5
|
+
export { TopicListScreen } from "./TopicListScreen.js";
|
|
6
|
+
export { QuizStartScreen } from "./QuizStartScreen.js";
|
|
7
|
+
export { QuestionScreen } from "./QuestionScreen.js";
|
|
8
|
+
export { ResultScreen } from "./ResultScreen.js";
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["HomeScreen","QbankScreen","TopicListScreen","QuizStartScreen","QuestionScreen","ResultScreen"],"sourceRoot":"../../../src","sources":["screens/index.ts"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,iBAAc;AACzC,SAASC,WAAW,QAAQ,kBAAe;AAC3C,SAASC,eAAe,QAAQ,sBAAmB;AACnD,SAASC,eAAe,QAAQ,sBAAmB;AACnD,SAASC,cAAc,QAAQ,qBAAkB;AACjD,SAASC,YAAY,QAAQ,mBAAgB","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["types/index.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"module"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { StyleProp, ViewStyle, TextStyle } from 'react-native';
|
|
3
|
+
interface ButtonProps {
|
|
4
|
+
onPress: () => void;
|
|
5
|
+
title: string;
|
|
6
|
+
variant?: 'primary' | 'secondary' | 'outline';
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
loading?: boolean;
|
|
9
|
+
style?: StyleProp<ViewStyle>;
|
|
10
|
+
textStyle?: StyleProp<TextStyle>;
|
|
11
|
+
}
|
|
12
|
+
export declare const Button: React.FC<ButtonProps>;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=Button.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/components/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAIpE,UAAU,WAAW;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAClC;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAsExC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { StyleProp, ViewStyle } from 'react-native';
|
|
3
|
+
interface CardProps {
|
|
4
|
+
children: React.ReactNode;
|
|
5
|
+
style?: StyleProp<ViewStyle>;
|
|
6
|
+
onPress?: () => void;
|
|
7
|
+
bordered?: boolean;
|
|
8
|
+
elevation?: number;
|
|
9
|
+
}
|
|
10
|
+
export declare const Card: React.FC<CardProps>;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=Card.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../../src/components/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzD,UAAU,SAAS;IACjB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAmCpC,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { StyleProp, TextStyle, ViewStyle } from 'react-native';
|
|
3
|
+
interface CircularProgressProps {
|
|
4
|
+
progress: number;
|
|
5
|
+
size?: number;
|
|
6
|
+
strokeWidth?: number;
|
|
7
|
+
color?: string;
|
|
8
|
+
backgroundColor?: string;
|
|
9
|
+
showText?: boolean;
|
|
10
|
+
textStyle?: StyleProp<TextStyle>;
|
|
11
|
+
style?: StyleProp<ViewStyle>;
|
|
12
|
+
}
|
|
13
|
+
export declare const CircularProgress: React.FC<CircularProgressProps>;
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=CircularProgress.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CircularProgress.d.ts","sourceRoot":"","sources":["../../../../src/components/CircularProgress.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAKpE,UAAU,qBAAqB;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CA0D5D,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export type IconName = 'bell' | 'user' | 'chevron-right' | 'chevron-left' | 'arrow-left' | 'book-open' | 'check-circle' | 'x-circle' | 'clock' | 'award' | 'search' | 'flask' | 'atom' | 'dna' | 'folder' | 'info' | 'play' | 'star';
|
|
3
|
+
interface IconProps {
|
|
4
|
+
name: IconName;
|
|
5
|
+
size?: number;
|
|
6
|
+
color?: string;
|
|
7
|
+
strokeWidth?: number;
|
|
8
|
+
}
|
|
9
|
+
export declare const Icon: React.FC<IconProps>;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=Icon.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../../../../src/components/Icon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,MAAM,MAAM,QAAQ,GAChB,MAAM,GACN,MAAM,GACN,eAAe,GACf,cAAc,GACd,YAAY,GACZ,WAAW,GACX,cAAc,GACd,UAAU,GACV,OAAO,GACP,OAAO,GACP,QAAQ,GACR,OAAO,GACP,MAAM,GACN,KAAK,GACL,QAAQ,GACR,MAAM,GACN,MAAM,GACN,MAAM,CAAC;AAEX,UAAU,SAAS;IACjB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAkTpC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { StyleProp, ViewStyle } from 'react-native';
|
|
3
|
+
interface ProgressBarProps {
|
|
4
|
+
progress: number;
|
|
5
|
+
color?: string;
|
|
6
|
+
height?: number;
|
|
7
|
+
style?: StyleProp<ViewStyle>;
|
|
8
|
+
}
|
|
9
|
+
export declare const ProgressBar: React.FC<ProgressBarProps>;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=ProgressBar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProgressBar.d.ts","sourceRoot":"","sources":["../../../../src/components/ProgressBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzD,UAAU,gBAAgB;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAuBlD,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { TextProps } from 'react-native';
|
|
3
|
+
interface TypographyProps extends TextProps {
|
|
4
|
+
variant?: 'h1' | 'h2' | 'h3' | 'body' | 'bodyLight' | 'caption' | 'button' | 'label';
|
|
5
|
+
color?: string;
|
|
6
|
+
align?: 'auto' | 'left' | 'right' | 'center' | 'justify';
|
|
7
|
+
bold?: boolean;
|
|
8
|
+
medium?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export declare const Typography: React.FC<TypographyProps>;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=Typography.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Typography.d.ts","sourceRoot":"","sources":["../../../../src/components/Typography.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,UAAU,eAAgB,SAAQ,SAAS;IACzC,OAAO,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;IACrF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;IACzD,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAkGhD,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { Typography } from './Typography.js';
|
|
2
|
+
export { Button } from './Button.js';
|
|
3
|
+
export { Card } from './Card.js';
|
|
4
|
+
export { ProgressBar } from './ProgressBar.js';
|
|
5
|
+
export { CircularProgress } from './CircularProgress.js';
|
|
6
|
+
export { Icon } from './Icon.js';
|
|
7
|
+
export type { IconName } from './Icon.js';
|
|
8
|
+
export { DEFAULT_THEME, useTheme, ThemeProvider } from '../context/ThemeContext.js';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAc,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAU,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAQ,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAe,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAoB,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAQ,CAAC;AAC9B,YAAY,EAAE,QAAQ,EAAE,MAAM,WAAQ,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,4BAAyB,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { ElearnConfig, ElearnCallbacks, StringsConfig, Course, DailyQuizConfig } from '../types/index.js';
|
|
3
|
+
import { ThemeProvider } from './ThemeContext.js';
|
|
4
|
+
export declare const DEFAULT_STRINGS: Required<StringsConfig>;
|
|
5
|
+
interface ConfigContextValue {
|
|
6
|
+
config: ElearnConfig;
|
|
7
|
+
callbacks: ElearnCallbacks;
|
|
8
|
+
getString: (key: keyof StringsConfig) => string;
|
|
9
|
+
getCourses: () => Course[];
|
|
10
|
+
getDailyQuiz: () => DailyQuizConfig | undefined;
|
|
11
|
+
}
|
|
12
|
+
interface ElearnConfigProviderProps {
|
|
13
|
+
config?: ElearnConfig;
|
|
14
|
+
callbacks?: ElearnCallbacks;
|
|
15
|
+
children: React.ReactNode;
|
|
16
|
+
}
|
|
17
|
+
export declare const ElearnConfigProvider: React.FC<ElearnConfigProviderProps>;
|
|
18
|
+
export declare const useElearnConfig: () => ConfigContextValue;
|
|
19
|
+
export { ThemeProvider };
|
|
20
|
+
export { useTheme } from './ThemeContext.js';
|
|
21
|
+
export { DEFAULT_THEME } from './ThemeContext.js';
|
|
22
|
+
//# sourceMappingURL=ElearnConfigContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ElearnConfigContext.d.ts","sourceRoot":"","sources":["../../../../src/context/ElearnConfigContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6C,MAAM,OAAO,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,mBAAU,CAAC;AACtG,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAgB,CAAC;AAE/C,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,aAAa,CA8BnD,CAAC;AAEF,UAAU,kBAAkB;IAC1B,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,eAAe,CAAC;IAC3B,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,aAAa,KAAK,MAAM,CAAC;IAChD,UAAU,EAAE,MAAM,MAAM,EAAE,CAAC;IAC3B,YAAY,EAAE,MAAM,eAAe,GAAG,SAAS,CAAC;CACjD;AAID,UAAU,yBAAyB;IACjC,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CA0BpE,CAAC;AAEF,eAAO,MAAM,eAAe,0BAM3B,CAAC;AACF,OAAO,EAAE,aAAa,EAAE,CAAC;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAgB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAgB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { ThemeConfig } from '../types/index.js';
|
|
3
|
+
export declare const DEFAULT_THEME: ThemeConfig;
|
|
4
|
+
interface ThemeProviderProps {
|
|
5
|
+
theme?: Partial<ThemeConfig>;
|
|
6
|
+
children: React.ReactNode;
|
|
7
|
+
}
|
|
8
|
+
export declare const ThemeProvider: React.FC<ThemeProviderProps>;
|
|
9
|
+
export declare const useTheme: () => ThemeConfig;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=ThemeContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ThemeContext.d.ts","sourceRoot":"","sources":["../../../../src/context/ThemeContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6C,MAAM,OAAO,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAU,CAAC;AAE5C,eAAO,MAAM,aAAa,EAAE,WAY3B,CAAC;AAIF,UAAU,kBAAkB;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAUtD,CAAC;AAEF,eAAO,MAAM,QAAQ,mBAAiC,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from './types/index.js';
|
|
2
|
+
export { ElearnConfigProvider, useElearnConfig, ThemeProvider, useTheme, DEFAULT_THEME, DEFAULT_STRINGS, } from './context/ElearnConfigContext.js';
|
|
3
|
+
export { Typography, Button, Card, ProgressBar, CircularProgress, Icon, } from './components/index.js';
|
|
4
|
+
export type { IconName } from './components/index.js';
|
|
5
|
+
export { HomeScreen, QbankScreen, TopicListScreen, QuizStartScreen, QuestionScreen, ResultScreen, } from './screens/index.js';
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AACA,cAAc,kBAAS,CAAC;AAGxB,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,aAAa,EACb,QAAQ,EACR,aAAa,EACb,eAAe,GAChB,MAAM,kCAA+B,CAAC;AAGvC,OAAO,EACL,UAAU,EACV,MAAM,EACN,IAAI,EACJ,WAAW,EACX,gBAAgB,EAChB,IAAI,GACL,MAAM,uBAAc,CAAC;AACtB,YAAY,EAAE,QAAQ,EAAE,MAAM,uBAAc,CAAC;AAG7C,OAAO,EACL,UAAU,EACV,WAAW,EACX,eAAe,EACf,eAAe,EACf,cAAc,EACd,YAAY,GACb,MAAM,oBAAW,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multiply.d.ts","sourceRoot":"","sources":["../../../src/multiply.tsx"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAErD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HomeScreen.d.ts","sourceRoot":"","sources":["../../../../src/screens/HomeScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAc1B,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAqJ9B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QbankScreen.d.ts","sourceRoot":"","sources":["../../../../src/screens/QbankScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAa1B,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAqF/B,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { Question } from '../types/index.js';
|
|
3
|
+
interface QuestionScreenProps {
|
|
4
|
+
quizId: string;
|
|
5
|
+
questions: Question[];
|
|
6
|
+
title: string;
|
|
7
|
+
onClose: () => void;
|
|
8
|
+
}
|
|
9
|
+
export declare const QuestionScreen: React.FC<QuestionScreenProps>;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=QuestionScreen.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QuestionScreen.d.ts","sourceRoot":"","sources":["../../../../src/screens/QuestionScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAUnD,OAAO,KAAK,EAAE,QAAQ,EAAe,MAAM,mBAAU,CAAC;AAKtD,UAAU,mBAAmB;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAqQxD,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { Topic, Course } from '../types/index.js';
|
|
3
|
+
interface QuizStartScreenProps {
|
|
4
|
+
course: Course;
|
|
5
|
+
topic: Topic;
|
|
6
|
+
onBack: () => void;
|
|
7
|
+
}
|
|
8
|
+
export declare const QuizStartScreen: React.FC<QuizStartScreenProps>;
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=QuizStartScreen.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QuizStartScreen.d.ts","sourceRoot":"","sources":["../../../../src/screens/QuizStartScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAU,CAAC;AAK9C,UAAU,oBAAoB;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAmG1D,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { QuizResults, Question } from '../types/index.js';
|
|
3
|
+
interface ResultScreenProps {
|
|
4
|
+
results: QuizResults;
|
|
5
|
+
questions: Question[];
|
|
6
|
+
onClose: () => void;
|
|
7
|
+
onReviewAnswers?: () => void;
|
|
8
|
+
}
|
|
9
|
+
export declare const ResultScreen: React.FC<ResultScreenProps>;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=ResultScreen.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResultScreen.d.ts","sourceRoot":"","sources":["../../../../src/screens/ResultScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mBAAU,CAAC;AAKtD,UAAU,iBAAiB;IACzB,OAAO,EAAE,WAAW,CAAC;IACrB,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;CAC9B;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA2KpD,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { Course } from '../types/index.js';
|
|
3
|
+
interface TopicListScreenProps {
|
|
4
|
+
course: Course;
|
|
5
|
+
onBack: () => void;
|
|
6
|
+
}
|
|
7
|
+
export declare const TopicListScreen: React.FC<TopicListScreenProps>;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=TopicListScreen.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TopicListScreen.d.ts","sourceRoot":"","sources":["../../../../src/screens/TopicListScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAU,CAAC;AAKvC,UAAU,oBAAoB;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAgG1D,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { HomeScreen } from './HomeScreen.js';
|
|
2
|
+
export { QbankScreen } from './QbankScreen.js';
|
|
3
|
+
export { TopicListScreen } from './TopicListScreen.js';
|
|
4
|
+
export { QuizStartScreen } from './QuizStartScreen.js';
|
|
5
|
+
export { QuestionScreen } from './QuestionScreen.js';
|
|
6
|
+
export { ResultScreen } from './ResultScreen.js';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/screens/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAe,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAmB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAgB,CAAC"}
|