react-native-elearn-ui 0.1.11 → 0.1.13
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/lib/module/index.js +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/screens/HomeScreen.js +672 -662
- package/lib/module/screens/HomeScreen.js.map +1 -1
- package/lib/module/screens/index.js +0 -8
- package/lib/module/screens/index.js.map +1 -1
- package/lib/typescript/src/index.d.ts +1 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/screens/HomeScreen.d.ts.map +1 -1
- package/lib/typescript/src/screens/index.d.ts +0 -8
- package/lib/typescript/src/screens/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/index.tsx +0 -8
- package/src/screens/HomeScreen.tsx +471 -534
- package/src/screens/index.ts +0 -8
- package/lib/module/screens/PearlChaptersScreen.js +0 -359
- package/lib/module/screens/PearlChaptersScreen.js.map +0 -1
- package/lib/module/screens/PearlReaderScreen.js +0 -313
- package/lib/module/screens/PearlReaderScreen.js.map +0 -1
- package/lib/module/screens/PearlsScreen.js +0 -153
- package/lib/module/screens/PearlsScreen.js.map +0 -1
- package/lib/module/screens/QbankScreen.js +0 -370
- package/lib/module/screens/QbankScreen.js.map +0 -1
- package/lib/module/screens/QuestionScreen.js +0 -437
- package/lib/module/screens/QuestionScreen.js.map +0 -1
- package/lib/module/screens/QuizStartScreen.js +0 -283
- package/lib/module/screens/QuizStartScreen.js.map +0 -1
- package/lib/module/screens/ResultScreen.js +0 -646
- package/lib/module/screens/ResultScreen.js.map +0 -1
- package/lib/module/screens/TopicListScreen.js +0 -420
- package/lib/module/screens/TopicListScreen.js.map +0 -1
- package/lib/module/screens/pearlsMockData.js +0 -77
- package/lib/module/screens/pearlsMockData.js.map +0 -1
- package/lib/typescript/src/screens/PearlChaptersScreen.d.ts +0 -13
- package/lib/typescript/src/screens/PearlChaptersScreen.d.ts.map +0 -1
- package/lib/typescript/src/screens/PearlReaderScreen.d.ts +0 -14
- package/lib/typescript/src/screens/PearlReaderScreen.d.ts.map +0 -1
- package/lib/typescript/src/screens/PearlsScreen.d.ts +0 -11
- package/lib/typescript/src/screens/PearlsScreen.d.ts.map +0 -1
- package/lib/typescript/src/screens/QbankScreen.d.ts +0 -10
- package/lib/typescript/src/screens/QbankScreen.d.ts.map +0 -1
- package/lib/typescript/src/screens/QuestionScreen.d.ts +0 -14
- package/lib/typescript/src/screens/QuestionScreen.d.ts.map +0 -1
- package/lib/typescript/src/screens/QuizStartScreen.d.ts +0 -14
- package/lib/typescript/src/screens/QuizStartScreen.d.ts.map +0 -1
- package/lib/typescript/src/screens/ResultScreen.d.ts +0 -13
- package/lib/typescript/src/screens/ResultScreen.d.ts.map +0 -1
- package/lib/typescript/src/screens/TopicListScreen.d.ts +0 -12
- package/lib/typescript/src/screens/TopicListScreen.d.ts.map +0 -1
- package/lib/typescript/src/screens/pearlsMockData.d.ts +0 -3
- package/lib/typescript/src/screens/pearlsMockData.d.ts.map +0 -1
- package/src/screens/PearlChaptersScreen.tsx +0 -330
- package/src/screens/PearlReaderScreen.tsx +0 -306
- package/src/screens/PearlsScreen.tsx +0 -147
- package/src/screens/QbankScreen.tsx +0 -327
- package/src/screens/QuestionScreen.tsx +0 -423
- package/src/screens/QuizStartScreen.tsx +0 -260
- package/src/screens/ResultScreen.tsx +0 -618
- package/src/screens/TopicListScreen.tsx +0 -388
- package/src/screens/pearlsMockData.ts +0 -70
|
@@ -1,420 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
import React, { useState } from 'react';
|
|
4
|
-
import { View, ScrollView, StyleSheet, TouchableOpacity, StatusBar } from 'react-native';
|
|
5
|
-
import { SafeAreaView } from 'react-native-safe-area-context';
|
|
6
|
-
import { useElearnConfig } from "../context/ElearnConfigContext.js";
|
|
7
|
-
import { useTheme } from "../context/ThemeContext.js";
|
|
8
|
-
import { Typography, Card, Icon } from "../components/index.js";
|
|
9
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
|
-
export const TopicListScreen = ({
|
|
11
|
-
course,
|
|
12
|
-
courseId,
|
|
13
|
-
onBack,
|
|
14
|
-
hideHeader = false,
|
|
15
|
-
onSelectTopic
|
|
16
|
-
}) => {
|
|
17
|
-
const {
|
|
18
|
-
config,
|
|
19
|
-
callbacks
|
|
20
|
-
} = useElearnConfig();
|
|
21
|
-
const theme = useTheme();
|
|
22
|
-
const activeCourse = course || config.courses?.find(c => c.id === courseId);
|
|
23
|
-
|
|
24
|
-
// Active filter tab
|
|
25
|
-
const [activeTab, setActiveTab] = useState('All');
|
|
26
|
-
const tabs = ['All', 'New', 'Completed', 'Paused', 'Not Started'];
|
|
27
|
-
if (!activeCourse) {
|
|
28
|
-
return /*#__PURE__*/_jsx(SafeAreaView, {
|
|
29
|
-
style: [styles.safeArea, {
|
|
30
|
-
backgroundColor: theme.background
|
|
31
|
-
}],
|
|
32
|
-
children: /*#__PURE__*/_jsxs(View, {
|
|
33
|
-
style: {
|
|
34
|
-
flex: 1,
|
|
35
|
-
justifyContent: 'center',
|
|
36
|
-
alignItems: 'center',
|
|
37
|
-
padding: 20
|
|
38
|
-
},
|
|
39
|
-
children: [/*#__PURE__*/_jsx(Typography, {
|
|
40
|
-
variant: "h2",
|
|
41
|
-
bold: true,
|
|
42
|
-
style: {
|
|
43
|
-
marginBottom: 12
|
|
44
|
-
},
|
|
45
|
-
children: "Course not found"
|
|
46
|
-
}), /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
47
|
-
onPress: onBack,
|
|
48
|
-
style: {
|
|
49
|
-
paddingHorizontal: 20,
|
|
50
|
-
paddingVertical: 10,
|
|
51
|
-
borderRadius: 8,
|
|
52
|
-
backgroundColor: theme.primary
|
|
53
|
-
},
|
|
54
|
-
children: /*#__PURE__*/_jsx(Typography, {
|
|
55
|
-
variant: "body",
|
|
56
|
-
bold: true,
|
|
57
|
-
color: "#FFFFFF",
|
|
58
|
-
children: "Go Back"
|
|
59
|
-
})
|
|
60
|
-
})]
|
|
61
|
-
})
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
// Group topics by category
|
|
66
|
-
const categoriesMap = {};
|
|
67
|
-
activeCourse.topics.forEach(topic => {
|
|
68
|
-
const cat = topic.category || 'GENERAL';
|
|
69
|
-
if (!categoriesMap[cat]) {
|
|
70
|
-
categoriesMap[cat] = [];
|
|
71
|
-
}
|
|
72
|
-
categoriesMap[cat].push(topic);
|
|
73
|
-
});
|
|
74
|
-
const categories = Object.keys(categoriesMap);
|
|
75
|
-
|
|
76
|
-
// Keep a global sequential counter for the timeline nodes
|
|
77
|
-
let globalIndex = 0;
|
|
78
|
-
return /*#__PURE__*/_jsxs(SafeAreaView, {
|
|
79
|
-
style: [styles.safeArea, {
|
|
80
|
-
backgroundColor: theme.background
|
|
81
|
-
}],
|
|
82
|
-
children: [/*#__PURE__*/_jsx(StatusBar, {
|
|
83
|
-
barStyle: "dark-content"
|
|
84
|
-
}), !hideHeader && /*#__PURE__*/_jsxs(View, {
|
|
85
|
-
style: styles.header,
|
|
86
|
-
children: [/*#__PURE__*/_jsx(TouchableOpacity, {
|
|
87
|
-
onPress: onBack,
|
|
88
|
-
style: styles.backButton,
|
|
89
|
-
children: /*#__PURE__*/_jsx(Icon, {
|
|
90
|
-
name: "arrow-left",
|
|
91
|
-
size: 20,
|
|
92
|
-
color: theme.textPrimary
|
|
93
|
-
})
|
|
94
|
-
}), /*#__PURE__*/_jsx(Typography, {
|
|
95
|
-
variant: "h2",
|
|
96
|
-
bold: true,
|
|
97
|
-
style: styles.headerTitle,
|
|
98
|
-
children: "QBank"
|
|
99
|
-
}), /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
100
|
-
style: styles.searchButton,
|
|
101
|
-
children: /*#__PURE__*/_jsx(Icon, {
|
|
102
|
-
name: "search",
|
|
103
|
-
size: 20,
|
|
104
|
-
color: theme.textPrimary
|
|
105
|
-
})
|
|
106
|
-
})]
|
|
107
|
-
}), /*#__PURE__*/_jsxs(ScrollView, {
|
|
108
|
-
contentContainerStyle: styles.scrollContent,
|
|
109
|
-
showsVerticalScrollIndicator: false,
|
|
110
|
-
children: [/*#__PURE__*/_jsxs(View, {
|
|
111
|
-
style: styles.subjectHeader,
|
|
112
|
-
children: [/*#__PURE__*/_jsx(Typography, {
|
|
113
|
-
variant: "h1",
|
|
114
|
-
bold: true,
|
|
115
|
-
color: theme.textPrimary,
|
|
116
|
-
style: styles.subjectTitle,
|
|
117
|
-
children: activeCourse.title
|
|
118
|
-
}), /*#__PURE__*/_jsxs(Typography, {
|
|
119
|
-
variant: "body",
|
|
120
|
-
color: theme.textSecondary,
|
|
121
|
-
children: [activeCourse.topics.length, " Modules"]
|
|
122
|
-
})]
|
|
123
|
-
}), /*#__PURE__*/_jsx(View, {
|
|
124
|
-
style: styles.tabsContainer,
|
|
125
|
-
children: /*#__PURE__*/_jsx(ScrollView, {
|
|
126
|
-
horizontal: true,
|
|
127
|
-
showsHorizontalScrollIndicator: false,
|
|
128
|
-
contentContainerStyle: styles.tabsScroll,
|
|
129
|
-
children: tabs.map(tab => {
|
|
130
|
-
const isActive = activeTab === tab;
|
|
131
|
-
return /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
132
|
-
onPress: () => setActiveTab(tab),
|
|
133
|
-
style: [styles.tabButton, isActive ? {
|
|
134
|
-
backgroundColor: theme.textPrimary
|
|
135
|
-
} : {
|
|
136
|
-
borderColor: theme.border,
|
|
137
|
-
borderWidth: 1
|
|
138
|
-
}],
|
|
139
|
-
children: /*#__PURE__*/_jsx(Typography, {
|
|
140
|
-
variant: "caption",
|
|
141
|
-
bold: true,
|
|
142
|
-
color: isActive ? '#FFFFFF' : theme.textSecondary,
|
|
143
|
-
children: tab
|
|
144
|
-
})
|
|
145
|
-
}, tab);
|
|
146
|
-
})
|
|
147
|
-
})
|
|
148
|
-
}), /*#__PURE__*/_jsx(View, {
|
|
149
|
-
style: styles.listContainer,
|
|
150
|
-
children: categories.map(category => {
|
|
151
|
-
const list = categoriesMap[category] || [];
|
|
152
|
-
return /*#__PURE__*/_jsxs(View, {
|
|
153
|
-
style: styles.categoryBlock,
|
|
154
|
-
children: [/*#__PURE__*/_jsx(Typography, {
|
|
155
|
-
variant: "caption",
|
|
156
|
-
bold: true,
|
|
157
|
-
color: theme.textSecondary,
|
|
158
|
-
style: styles.categoryTitle,
|
|
159
|
-
children: category.toUpperCase()
|
|
160
|
-
}), /*#__PURE__*/_jsx(View, {
|
|
161
|
-
style: styles.categoryItems,
|
|
162
|
-
children: list.map(topic => {
|
|
163
|
-
globalIndex++;
|
|
164
|
-
const currentIndex = globalIndex;
|
|
165
|
-
const isLastInCourse = currentIndex === activeCourse.topics.length;
|
|
166
|
-
return /*#__PURE__*/_jsxs(View, {
|
|
167
|
-
style: styles.timelineItemRow,
|
|
168
|
-
children: [/*#__PURE__*/_jsxs(View, {
|
|
169
|
-
style: styles.timelineLeftColumn,
|
|
170
|
-
children: [currentIndex > 1 && /*#__PURE__*/_jsx(View, {
|
|
171
|
-
style: [styles.timelineLine, {
|
|
172
|
-
height: '50%',
|
|
173
|
-
top: 0
|
|
174
|
-
}]
|
|
175
|
-
}), !isLastInCourse && /*#__PURE__*/_jsx(View, {
|
|
176
|
-
style: [styles.timelineLine, {
|
|
177
|
-
height: '100%',
|
|
178
|
-
top: 16
|
|
179
|
-
}]
|
|
180
|
-
}), /*#__PURE__*/_jsx(View, {
|
|
181
|
-
style: [styles.numberNode, {
|
|
182
|
-
backgroundColor: '#8C9BAB'
|
|
183
|
-
}],
|
|
184
|
-
children: /*#__PURE__*/_jsx(Typography, {
|
|
185
|
-
variant: "caption",
|
|
186
|
-
bold: true,
|
|
187
|
-
color: "#FFFFFF",
|
|
188
|
-
style: styles.nodeText,
|
|
189
|
-
children: currentIndex
|
|
190
|
-
})
|
|
191
|
-
})]
|
|
192
|
-
}), /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
193
|
-
activeOpacity: 0.8,
|
|
194
|
-
onPress: () => {
|
|
195
|
-
if (onSelectTopic) {
|
|
196
|
-
onSelectTopic(activeCourse, topic);
|
|
197
|
-
} else {
|
|
198
|
-
callbacks.onSelectTopic?.(activeCourse, topic);
|
|
199
|
-
}
|
|
200
|
-
},
|
|
201
|
-
style: styles.cardTouchable,
|
|
202
|
-
children: /*#__PURE__*/_jsx(Card, {
|
|
203
|
-
bordered: true,
|
|
204
|
-
style: styles.topicCard,
|
|
205
|
-
children: /*#__PURE__*/_jsxs(View, {
|
|
206
|
-
style: styles.cardMainRow,
|
|
207
|
-
children: [/*#__PURE__*/_jsxs(View, {
|
|
208
|
-
style: styles.cardInfoCol,
|
|
209
|
-
children: [/*#__PURE__*/_jsx(Typography, {
|
|
210
|
-
variant: "h3",
|
|
211
|
-
bold: true,
|
|
212
|
-
color: theme.textPrimary,
|
|
213
|
-
style: styles.cardTitle,
|
|
214
|
-
children: topic.title
|
|
215
|
-
}), /*#__PURE__*/_jsxs(View, {
|
|
216
|
-
style: styles.ratingRow,
|
|
217
|
-
children: [/*#__PURE__*/_jsx(Icon, {
|
|
218
|
-
name: "star",
|
|
219
|
-
size: 14,
|
|
220
|
-
color: "#EAB308"
|
|
221
|
-
}), /*#__PURE__*/_jsx(Typography, {
|
|
222
|
-
variant: "caption",
|
|
223
|
-
bold: true,
|
|
224
|
-
color: theme.textPrimary,
|
|
225
|
-
style: styles.ratingVal,
|
|
226
|
-
children: topic.rating || '4.5'
|
|
227
|
-
}), /*#__PURE__*/_jsx(View, {
|
|
228
|
-
style: styles.bulletSeparator
|
|
229
|
-
}), /*#__PURE__*/_jsxs(Typography, {
|
|
230
|
-
variant: "caption",
|
|
231
|
-
color: theme.textSecondary,
|
|
232
|
-
children: [topic.totalQuestions, " Questions"]
|
|
233
|
-
})]
|
|
234
|
-
})]
|
|
235
|
-
}), /*#__PURE__*/_jsx(View, {
|
|
236
|
-
style: styles.cardBadgeCol,
|
|
237
|
-
children: topic.isFree ? /*#__PURE__*/_jsx(View, {
|
|
238
|
-
style: [styles.freeBadge, {
|
|
239
|
-
borderColor: theme.primary
|
|
240
|
-
}],
|
|
241
|
-
children: /*#__PURE__*/_jsx(Typography, {
|
|
242
|
-
variant: "caption",
|
|
243
|
-
bold: true,
|
|
244
|
-
color: theme.primary,
|
|
245
|
-
style: styles.freeBadgeText,
|
|
246
|
-
children: "FREE"
|
|
247
|
-
})
|
|
248
|
-
}) : topic.isLocked ? /*#__PURE__*/_jsx(View, {
|
|
249
|
-
style: styles.lockContainer,
|
|
250
|
-
children: /*#__PURE__*/_jsx(Icon, {
|
|
251
|
-
name: "lock",
|
|
252
|
-
size: 14,
|
|
253
|
-
color: theme.textSecondary
|
|
254
|
-
})
|
|
255
|
-
}) : null
|
|
256
|
-
})]
|
|
257
|
-
})
|
|
258
|
-
})
|
|
259
|
-
})]
|
|
260
|
-
}, topic.id);
|
|
261
|
-
})
|
|
262
|
-
})]
|
|
263
|
-
}, category);
|
|
264
|
-
})
|
|
265
|
-
})]
|
|
266
|
-
})]
|
|
267
|
-
});
|
|
268
|
-
};
|
|
269
|
-
const styles = StyleSheet.create({
|
|
270
|
-
safeArea: {
|
|
271
|
-
flex: 1
|
|
272
|
-
},
|
|
273
|
-
header: {
|
|
274
|
-
flexDirection: 'row',
|
|
275
|
-
justifyContent: 'space-between',
|
|
276
|
-
alignItems: 'center',
|
|
277
|
-
paddingHorizontal: 16,
|
|
278
|
-
paddingVertical: 12
|
|
279
|
-
},
|
|
280
|
-
backButton: {
|
|
281
|
-
padding: 6
|
|
282
|
-
},
|
|
283
|
-
headerTitle: {
|
|
284
|
-
fontSize: 18,
|
|
285
|
-
fontWeight: '700'
|
|
286
|
-
},
|
|
287
|
-
searchButton: {
|
|
288
|
-
padding: 6
|
|
289
|
-
},
|
|
290
|
-
scrollContent: {
|
|
291
|
-
paddingHorizontal: 16,
|
|
292
|
-
paddingBottom: 32
|
|
293
|
-
},
|
|
294
|
-
subjectHeader: {
|
|
295
|
-
marginTop: 12,
|
|
296
|
-
marginBottom: 16
|
|
297
|
-
},
|
|
298
|
-
subjectTitle: {
|
|
299
|
-
fontSize: 22,
|
|
300
|
-
marginBottom: 2
|
|
301
|
-
},
|
|
302
|
-
tabsContainer: {
|
|
303
|
-
marginBottom: 16
|
|
304
|
-
},
|
|
305
|
-
tabsScroll: {
|
|
306
|
-
paddingVertical: 4
|
|
307
|
-
},
|
|
308
|
-
tabButton: {
|
|
309
|
-
paddingHorizontal: 16,
|
|
310
|
-
paddingVertical: 6,
|
|
311
|
-
borderRadius: 20,
|
|
312
|
-
marginRight: 10
|
|
313
|
-
},
|
|
314
|
-
listContainer: {
|
|
315
|
-
marginTop: 8
|
|
316
|
-
},
|
|
317
|
-
categoryBlock: {
|
|
318
|
-
marginBottom: 24
|
|
319
|
-
},
|
|
320
|
-
categoryTitle: {
|
|
321
|
-
fontSize: 11,
|
|
322
|
-
letterSpacing: 0.8,
|
|
323
|
-
marginBottom: 16
|
|
324
|
-
},
|
|
325
|
-
categoryItems: {
|
|
326
|
-
marginTop: 2
|
|
327
|
-
},
|
|
328
|
-
timelineItemRow: {
|
|
329
|
-
flexDirection: 'row',
|
|
330
|
-
alignItems: 'stretch',
|
|
331
|
-
marginBottom: 12,
|
|
332
|
-
minHeight: 80
|
|
333
|
-
},
|
|
334
|
-
timelineLeftColumn: {
|
|
335
|
-
width: 36,
|
|
336
|
-
alignItems: 'center',
|
|
337
|
-
justifyContent: 'flex-start',
|
|
338
|
-
paddingTop: 12,
|
|
339
|
-
position: 'relative'
|
|
340
|
-
},
|
|
341
|
-
timelineLine: {
|
|
342
|
-
position: 'absolute',
|
|
343
|
-
left: 17,
|
|
344
|
-
// center of the 36 width
|
|
345
|
-
width: 2,
|
|
346
|
-
backgroundColor: '#E2E8F0',
|
|
347
|
-
zIndex: -1
|
|
348
|
-
},
|
|
349
|
-
numberNode: {
|
|
350
|
-
width: 24,
|
|
351
|
-
height: 24,
|
|
352
|
-
borderRadius: 12,
|
|
353
|
-
justifyContent: 'center',
|
|
354
|
-
alignItems: 'center',
|
|
355
|
-
zIndex: 1
|
|
356
|
-
},
|
|
357
|
-
nodeText: {
|
|
358
|
-
fontSize: 11
|
|
359
|
-
},
|
|
360
|
-
cardTouchable: {
|
|
361
|
-
flex: 1
|
|
362
|
-
},
|
|
363
|
-
topicCard: {
|
|
364
|
-
padding: 12,
|
|
365
|
-
borderRadius: 12,
|
|
366
|
-
flex: 1
|
|
367
|
-
},
|
|
368
|
-
cardMainRow: {
|
|
369
|
-
flexDirection: 'row',
|
|
370
|
-
justifyContent: 'space-between',
|
|
371
|
-
alignItems: 'center',
|
|
372
|
-
flex: 1
|
|
373
|
-
},
|
|
374
|
-
cardInfoCol: {
|
|
375
|
-
flex: 1,
|
|
376
|
-
paddingRight: 8
|
|
377
|
-
},
|
|
378
|
-
cardTitle: {
|
|
379
|
-
fontSize: 14,
|
|
380
|
-
lineHeight: 18,
|
|
381
|
-
marginBottom: 6
|
|
382
|
-
},
|
|
383
|
-
ratingRow: {
|
|
384
|
-
flexDirection: 'row',
|
|
385
|
-
alignItems: 'center'
|
|
386
|
-
},
|
|
387
|
-
ratingVal: {
|
|
388
|
-
fontSize: 11,
|
|
389
|
-
marginLeft: 4
|
|
390
|
-
},
|
|
391
|
-
bulletSeparator: {
|
|
392
|
-
width: 3,
|
|
393
|
-
height: 3,
|
|
394
|
-
borderRadius: 1.5,
|
|
395
|
-
backgroundColor: '#94A3B8',
|
|
396
|
-
marginHorizontal: 6
|
|
397
|
-
},
|
|
398
|
-
cardBadgeCol: {
|
|
399
|
-
justifyContent: 'center',
|
|
400
|
-
alignItems: 'flex-end'
|
|
401
|
-
},
|
|
402
|
-
freeBadge: {
|
|
403
|
-
borderWidth: 1.5,
|
|
404
|
-
borderRadius: 6,
|
|
405
|
-
paddingHorizontal: 8,
|
|
406
|
-
paddingVertical: 3
|
|
407
|
-
},
|
|
408
|
-
freeBadgeText: {
|
|
409
|
-
fontSize: 9
|
|
410
|
-
},
|
|
411
|
-
lockContainer: {
|
|
412
|
-
width: 24,
|
|
413
|
-
height: 24,
|
|
414
|
-
borderRadius: 12,
|
|
415
|
-
backgroundColor: '#F1F5F9',
|
|
416
|
-
justifyContent: 'center',
|
|
417
|
-
alignItems: 'center'
|
|
418
|
-
}
|
|
419
|
-
});
|
|
420
|
-
//# sourceMappingURL=TopicListScreen.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","View","ScrollView","StyleSheet","TouchableOpacity","StatusBar","SafeAreaView","useElearnConfig","useTheme","Typography","Card","Icon","jsx","_jsx","jsxs","_jsxs","TopicListScreen","course","courseId","onBack","hideHeader","onSelectTopic","config","callbacks","theme","activeCourse","courses","find","c","id","activeTab","setActiveTab","tabs","style","styles","safeArea","backgroundColor","background","children","flex","justifyContent","alignItems","padding","variant","bold","marginBottom","onPress","paddingHorizontal","paddingVertical","borderRadius","primary","color","categoriesMap","topics","forEach","topic","cat","category","push","categories","Object","keys","globalIndex","barStyle","header","backButton","name","size","textPrimary","headerTitle","searchButton","contentContainerStyle","scrollContent","showsVerticalScrollIndicator","subjectHeader","subjectTitle","title","textSecondary","length","tabsContainer","horizontal","showsHorizontalScrollIndicator","tabsScroll","map","tab","isActive","tabButton","borderColor","border","borderWidth","listContainer","list","categoryBlock","categoryTitle","toUpperCase","categoryItems","currentIndex","isLastInCourse","timelineItemRow","timelineLeftColumn","timelineLine","height","top","numberNode","nodeText","activeOpacity","cardTouchable","bordered","topicCard","cardMainRow","cardInfoCol","cardTitle","ratingRow","ratingVal","rating","bulletSeparator","totalQuestions","cardBadgeCol","isFree","freeBadge","freeBadgeText","isLocked","lockContainer","create","flexDirection","fontSize","fontWeight","paddingBottom","marginTop","marginRight","letterSpacing","minHeight","width","paddingTop","position","left","zIndex","paddingRight","lineHeight","marginLeft","marginHorizontal"],"sourceRoot":"../../../src","sources":["screens/TopicListScreen.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
export const MOCK_PEARLS_TOPICS = [{
|
|
4
|
-
id: 'topic_head_neck',
|
|
5
|
-
title: 'Head and neck',
|
|
6
|
-
sections: {
|
|
7
|
-
'Head and Neck': [{
|
|
8
|
-
id: 'hn_c1',
|
|
9
|
-
number: 1,
|
|
10
|
-
title: 'Classify sino-nasal neoplasam. Discuss the newer entities',
|
|
11
|
-
isFree: true,
|
|
12
|
-
bullets: ['Benign Neoplasms: Benign sino-nasal tumors are generally slow-growing and less likely to invade surrounding structures. Common benign types include inverted papilloma, oncocytic Schneiderian papilloma, and fungiform papilloma, all of which originate from the Schneiderian mucosa. Inverted papilloma is notable for its local aggressiveness and high recurrence rate, sometimes exhibiting malignant transformation into squamous cell carcinoma.', 'Malignant Neoplasms: Malignant tumors of the sino-nasal tract are rare but clinically significant due to their aggressive behavior, late presentation, and complex anatomical constraints that limit surgical access. The most common malignant tumor is squamous cell carcinoma, often arising from dysplastic or papillomatous lesions.', 'Esthesioneuroblastoma: A notable entity originating from the olfactory epithelium and displaying variable degrees of malignancy. Additionally, melanoma, lymphoma, and undifferentiated carcinoma can also occur in the sino-nasal region, often presenting with nasal obstruction, epistaxis, and facial pain.']
|
|
13
|
-
}, {
|
|
14
|
-
id: 'hn_c2',
|
|
15
|
-
number: 2,
|
|
16
|
-
title: 'Histologic variants of ameloblastoma',
|
|
17
|
-
isLocked: true,
|
|
18
|
-
bullets: ['Ameloblastoma is a benign but locally aggressive odontogenic neoplasm.', 'Follicular and plexiform are the most common histologic patterns.', 'Unicystic variants have a better prognosis and lower recurrence rates.']
|
|
19
|
-
}, {
|
|
20
|
-
id: 'hn_c3',
|
|
21
|
-
number: 3,
|
|
22
|
-
title: 'Role of brush ctology in diagnosis of oral cancerous and precancerous lessions',
|
|
23
|
-
isLocked: true,
|
|
24
|
-
bullets: ['Oral brush cytology is a non-invasive screening aid.', 'High sensitivity for identifying cellular dysplasias.', 'Must be followed by scalpel biopsy for definitive diagnosis.']
|
|
25
|
-
}],
|
|
26
|
-
'Eye': [{
|
|
27
|
-
id: 'eye_c1',
|
|
28
|
-
number: 1,
|
|
29
|
-
title: 'Classify sino-nasal neoplasam. Discuss the newer entities',
|
|
30
|
-
isLocked: true,
|
|
31
|
-
bullets: []
|
|
32
|
-
}, {
|
|
33
|
-
id: 'eye_c2',
|
|
34
|
-
number: 2,
|
|
35
|
-
title: 'Histologic variants of ameloblastoma',
|
|
36
|
-
isLocked: true,
|
|
37
|
-
bullets: []
|
|
38
|
-
}]
|
|
39
|
-
}
|
|
40
|
-
}, {
|
|
41
|
-
id: 'topic_brain_spine',
|
|
42
|
-
title: 'Brain, Spine and Meninges',
|
|
43
|
-
sections: {}
|
|
44
|
-
}, {
|
|
45
|
-
id: 'topic_breast',
|
|
46
|
-
title: 'Breast Pathology',
|
|
47
|
-
sections: {}
|
|
48
|
-
}, {
|
|
49
|
-
id: 'topic_skin',
|
|
50
|
-
title: 'Skin and Connective Tissue',
|
|
51
|
-
sections: {}
|
|
52
|
-
}, {
|
|
53
|
-
id: 'topic_kidney',
|
|
54
|
-
title: 'Kidney & Urinary Tract',
|
|
55
|
-
sections: {}
|
|
56
|
-
}, {
|
|
57
|
-
id: 'topic_gastro',
|
|
58
|
-
title: 'Gastro-Intestinal System',
|
|
59
|
-
sections: {}
|
|
60
|
-
}, {
|
|
61
|
-
id: 'topic_endocrine',
|
|
62
|
-
title: 'Endocrine Pathology',
|
|
63
|
-
sections: {}
|
|
64
|
-
}, {
|
|
65
|
-
id: 'topic_general',
|
|
66
|
-
title: 'General Pathology',
|
|
67
|
-
sections: {}
|
|
68
|
-
}, {
|
|
69
|
-
id: 'topic_male_genital',
|
|
70
|
-
title: 'Male Genital System',
|
|
71
|
-
sections: {}
|
|
72
|
-
}, {
|
|
73
|
-
id: 'topic_thoracic',
|
|
74
|
-
title: 'Thoracic Pathology',
|
|
75
|
-
sections: {}
|
|
76
|
-
}];
|
|
77
|
-
//# sourceMappingURL=pearlsMockData.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["MOCK_PEARLS_TOPICS","id","title","sections","number","isFree","bullets","isLocked"],"sourceRoot":"../../../src","sources":["screens/pearlsMockData.ts"],"mappings":";;AAEA,OAAO,MAAMA,kBAAgC,GAAG,CAC9C;EACEC,EAAE,EAAE,iBAAiB;EACrBC,KAAK,EAAE,eAAe;EACtBC,QAAQ,EAAE;IACR,eAAe,EAAE,CACf;MACEF,EAAE,EAAE,OAAO;MACXG,MAAM,EAAE,CAAC;MACTF,KAAK,EAAE,2DAA2D;MAClEG,MAAM,EAAE,IAAI;MACZC,OAAO,EAAE,CACP,0bAA0b,EAC1b,2UAA2U,EAC3U,iTAAiT;IAErT,CAAC,EACD;MACEL,EAAE,EAAE,OAAO;MACXG,MAAM,EAAE,CAAC;MACTF,KAAK,EAAE,sCAAsC;MAC7CK,QAAQ,EAAE,IAAI;MACdD,OAAO,EAAE,CACP,wEAAwE,EACxE,mEAAmE,EACnE,wEAAwE;IAE5E,CAAC,EACD;MACEL,EAAE,EAAE,OAAO;MACXG,MAAM,EAAE,CAAC;MACTF,KAAK,EAAE,gFAAgF;MACvFK,QAAQ,EAAE,IAAI;MACdD,OAAO,EAAE,CACP,sDAAsD,EACtD,uDAAuD,EACvD,8DAA8D;IAElE,CAAC,CACF;IACD,KAAK,EAAE,CACL;MACEL,EAAE,EAAE,QAAQ;MACZG,MAAM,EAAE,CAAC;MACTF,KAAK,EAAE,2DAA2D;MAClEK,QAAQ,EAAE,IAAI;MACdD,OAAO,EAAE;IACX,CAAC,EACD;MACEL,EAAE,EAAE,QAAQ;MACZG,MAAM,EAAE,CAAC;MACTF,KAAK,EAAE,sCAAsC;MAC7CK,QAAQ,EAAE,IAAI;MACdD,OAAO,EAAE;IACX,CAAC;EAEL;AACF,CAAC,EACD;EAAEL,EAAE,EAAE,mBAAmB;EAAEC,KAAK,EAAE,2BAA2B;EAAEC,QAAQ,EAAE,CAAC;AAAE,CAAC,EAC7E;EAAEF,EAAE,EAAE,cAAc;EAAEC,KAAK,EAAE,kBAAkB;EAAEC,QAAQ,EAAE,CAAC;AAAE,CAAC,EAC/D;EAAEF,EAAE,EAAE,YAAY;EAAEC,KAAK,EAAE,4BAA4B;EAAEC,QAAQ,EAAE,CAAC;AAAE,CAAC,EACvE;EAAEF,EAAE,EAAE,cAAc;EAAEC,KAAK,EAAE,wBAAwB;EAAEC,QAAQ,EAAE,CAAC;AAAE,CAAC,EACrE;EAAEF,EAAE,EAAE,cAAc;EAAEC,KAAK,EAAE,0BAA0B;EAAEC,QAAQ,EAAE,CAAC;AAAE,CAAC,EACvE;EAAEF,EAAE,EAAE,iBAAiB;EAAEC,KAAK,EAAE,qBAAqB;EAAEC,QAAQ,EAAE,CAAC;AAAE,CAAC,EACrE;EAAEF,EAAE,EAAE,eAAe;EAAEC,KAAK,EAAE,mBAAmB;EAAEC,QAAQ,EAAE,CAAC;AAAE,CAAC,EACjE;EAAEF,EAAE,EAAE,oBAAoB;EAAEC,KAAK,EAAE,qBAAqB;EAAEC,QAAQ,EAAE,CAAC;AAAE,CAAC,EACxE;EAAEF,EAAE,EAAE,gBAAgB;EAAEC,KAAK,EAAE,oBAAoB;EAAEC,QAAQ,EAAE,CAAC;AAAE,CAAC,CACpE","ignoreList":[]}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import type { PearlTopic, PearlChapter } from '../types/index.js';
|
|
3
|
-
interface PearlChaptersScreenProps {
|
|
4
|
-
topic?: PearlTopic;
|
|
5
|
-
topicId?: string;
|
|
6
|
-
onBack: () => void;
|
|
7
|
-
hideHeader?: boolean;
|
|
8
|
-
onSelectChapter?: (topic: PearlTopic, chapter: PearlChapter) => void;
|
|
9
|
-
title?: string;
|
|
10
|
-
}
|
|
11
|
-
export declare const PearlChaptersScreen: React.FC<PearlChaptersScreenProps>;
|
|
12
|
-
export {};
|
|
13
|
-
//# sourceMappingURL=PearlChaptersScreen.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PearlChaptersScreen.d.ts","sourceRoot":"","sources":["../../../../src/screens/PearlChaptersScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAcxC,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,mBAAU,CAAC;AAIzD,UAAU,wBAAwB;IAChC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAmLlE,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import type { PearlTopic, PearlChapter } from '../types/index.js';
|
|
3
|
-
interface PearlReaderScreenProps {
|
|
4
|
-
topic?: PearlTopic;
|
|
5
|
-
topicId?: string;
|
|
6
|
-
chapter?: PearlChapter;
|
|
7
|
-
chapterId?: string;
|
|
8
|
-
onBack: () => void;
|
|
9
|
-
hideHeader?: boolean;
|
|
10
|
-
title?: string;
|
|
11
|
-
}
|
|
12
|
-
export declare const PearlReaderScreen: React.FC<PearlReaderScreenProps>;
|
|
13
|
-
export {};
|
|
14
|
-
//# sourceMappingURL=PearlReaderScreen.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PearlReaderScreen.d.ts","sourceRoot":"","sources":["../../../../src/screens/PearlReaderScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAYxC,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,mBAAU,CAAC;AAEzD,UAAU,sBAAsB;IAC9B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CA8K9D,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import type { PearlTopic } from '../types/index.js';
|
|
3
|
-
interface PearlsScreenProps {
|
|
4
|
-
onBack?: () => void;
|
|
5
|
-
hideHeader?: boolean;
|
|
6
|
-
onSelectTopic?: (topic: PearlTopic) => void;
|
|
7
|
-
title?: string;
|
|
8
|
-
}
|
|
9
|
-
export declare const PearlsScreen: React.FC<PearlsScreenProps>;
|
|
10
|
-
export {};
|
|
11
|
-
//# sourceMappingURL=PearlsScreen.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PearlsScreen.d.ts","sourceRoot":"","sources":["../../../../src/screens/PearlsScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAa1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAU,CAAC;AAE3C,UAAU,iBAAiB;IACzB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAqEpD,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import type { Course } from '../types/index.js';
|
|
3
|
-
interface QbankScreenProps {
|
|
4
|
-
hideHeader?: boolean;
|
|
5
|
-
onBack?: () => void;
|
|
6
|
-
onSelectCourse?: (course: Course) => void;
|
|
7
|
-
}
|
|
8
|
-
export declare const QbankScreen: React.FC<QbankScreenProps>;
|
|
9
|
-
export {};
|
|
10
|
-
//# sourceMappingURL=QbankScreen.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QbankScreen.d.ts","sourceRoot":"","sources":["../../../../src/screens/QbankScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAc1B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAU,CAAC;AAEvC,UAAU,gBAAgB;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3C;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAqLlD,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import type { Question, QuizResults } from '../types/index.js';
|
|
3
|
-
interface QuestionScreenProps {
|
|
4
|
-
quizId?: string;
|
|
5
|
-
questions?: Question[];
|
|
6
|
-
title?: string;
|
|
7
|
-
topicId?: string;
|
|
8
|
-
onClose: () => void;
|
|
9
|
-
onFinishQuiz?: (quizId: string, results: QuizResults) => void;
|
|
10
|
-
hideHeader?: boolean;
|
|
11
|
-
}
|
|
12
|
-
export declare const QuestionScreen: React.FC<QuestionScreenProps>;
|
|
13
|
-
export {};
|
|
14
|
-
//# sourceMappingURL=QuestionScreen.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QuestionScreen.d.ts","sourceRoot":"","sources":["../../../../src/screens/QuestionScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAUxC,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,mBAAU,CAAC;AAKtD,UAAU,mBAAmB;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IAC9D,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CA+PxD,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import type { Topic, Course, Question } from '../types/index.js';
|
|
3
|
-
interface QuizStartScreenProps {
|
|
4
|
-
course?: Course;
|
|
5
|
-
courseId?: string;
|
|
6
|
-
topic?: Topic;
|
|
7
|
-
topicId?: string;
|
|
8
|
-
onBack: () => void;
|
|
9
|
-
hideHeader?: boolean;
|
|
10
|
-
onStartQuiz?: (quizId: string, questions: Question[], title: string) => void;
|
|
11
|
-
}
|
|
12
|
-
export declare const QuizStartScreen: React.FC<QuizStartScreenProps>;
|
|
13
|
-
export {};
|
|
14
|
-
//# sourceMappingURL=QuizStartScreen.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
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,QAAQ,EAAE,MAAM,mBAAU,CAAC;AAKxD,UAAU,oBAAoB;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9E;AAED,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAyI1D,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import type { QuizResults, Question } from '../types/index.js';
|
|
3
|
-
interface ResultScreenProps {
|
|
4
|
-
results: QuizResults;
|
|
5
|
-
questions?: Question[];
|
|
6
|
-
topicId?: string;
|
|
7
|
-
onClose: () => void;
|
|
8
|
-
onReviewAnswers?: () => void;
|
|
9
|
-
hideHeader?: boolean;
|
|
10
|
-
}
|
|
11
|
-
export declare const ResultScreen: React.FC<ResultScreenProps>;
|
|
12
|
-
export {};
|
|
13
|
-
//# sourceMappingURL=ResultScreen.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ResultScreen.d.ts","sourceRoot":"","sources":["../../../../src/screens/ResultScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAUxC,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mBAAU,CAAC;AAKtD,UAAU,iBAAiB;IACzB,OAAO,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA2WpD,CAAC"}
|