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,102 @@
1
+ "use strict";
2
+
3
+ import React from 'react';
4
+ import { Text } from 'react-native';
5
+ import { useTheme } from "../context/ThemeContext.js";
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ export const Typography = ({
8
+ variant = 'body',
9
+ color,
10
+ align = 'auto',
11
+ bold = false,
12
+ medium = false,
13
+ style,
14
+ children,
15
+ ...props
16
+ }) => {
17
+ const theme = useTheme();
18
+ const getStyleForVariant = () => {
19
+ switch (variant) {
20
+ case 'h1':
21
+ return {
22
+ fontSize: 24,
23
+ lineHeight: 32,
24
+ fontWeight: '700',
25
+ fontFamily: theme.fontBold
26
+ };
27
+ case 'h2':
28
+ return {
29
+ fontSize: 18,
30
+ lineHeight: 24,
31
+ fontWeight: '600',
32
+ fontFamily: theme.fontMedium
33
+ };
34
+ case 'h3':
35
+ return {
36
+ fontSize: 16,
37
+ lineHeight: 22,
38
+ fontWeight: '600',
39
+ fontFamily: theme.fontMedium
40
+ };
41
+ case 'body':
42
+ return {
43
+ fontSize: 14,
44
+ lineHeight: 20,
45
+ fontWeight: '400',
46
+ fontFamily: theme.fontRegular
47
+ };
48
+ case 'bodyLight':
49
+ return {
50
+ fontSize: 14,
51
+ lineHeight: 20,
52
+ fontWeight: '300',
53
+ fontFamily: theme.fontRegular
54
+ };
55
+ case 'caption':
56
+ return {
57
+ fontSize: 12,
58
+ lineHeight: 16,
59
+ fontWeight: '400',
60
+ fontFamily: theme.fontRegular
61
+ };
62
+ case 'button':
63
+ return {
64
+ fontSize: 15,
65
+ lineHeight: 20,
66
+ fontWeight: '600',
67
+ fontFamily: theme.fontMedium
68
+ };
69
+ case 'label':
70
+ return {
71
+ fontSize: 13,
72
+ lineHeight: 18,
73
+ fontWeight: '500',
74
+ fontFamily: theme.fontMedium
75
+ };
76
+ default:
77
+ return {};
78
+ }
79
+ };
80
+ const defaultColor = () => {
81
+ if (variant === 'caption' || variant === 'bodyLight') {
82
+ return theme.textSecondary;
83
+ }
84
+ return theme.textPrimary;
85
+ };
86
+ const textStyle = [getStyleForVariant(), {
87
+ color: color || defaultColor(),
88
+ textAlign: align
89
+ }, bold && {
90
+ fontWeight: '700',
91
+ fontFamily: theme.fontBold
92
+ }, medium && {
93
+ fontWeight: '500',
94
+ fontFamily: theme.fontMedium
95
+ }, style];
96
+ return /*#__PURE__*/_jsx(Text, {
97
+ style: textStyle,
98
+ ...props,
99
+ children: children
100
+ });
101
+ };
102
+ //# sourceMappingURL=Typography.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Text","useTheme","jsx","_jsx","Typography","variant","color","align","bold","medium","style","children","props","theme","getStyleForVariant","fontSize","lineHeight","fontWeight","fontFamily","fontBold","fontMedium","fontRegular","defaultColor","textSecondary","textPrimary","textStyle","textAlign"],"sourceRoot":"../../../src","sources":["components/Typography.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ export { Typography } from "./Typography.js";
4
+ export { Button } from "./Button.js";
5
+ export { Card } from "./Card.js";
6
+ export { ProgressBar } from "./ProgressBar.js";
7
+ export { CircularProgress } from "./CircularProgress.js";
8
+ export { Icon } from "./Icon.js";
9
+ export { DEFAULT_THEME, useTheme, ThemeProvider } from "../context/ThemeContext.js";
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Typography","Button","Card","ProgressBar","CircularProgress","Icon","DEFAULT_THEME","useTheme","ThemeProvider"],"sourceRoot":"../../../src","sources":["components/index.ts"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,iBAAc;AACzC,SAASC,MAAM,QAAQ,aAAU;AACjC,SAASC,IAAI,QAAQ,WAAQ;AAC7B,SAASC,WAAW,QAAQ,kBAAe;AAC3C,SAASC,gBAAgB,QAAQ,uBAAoB;AACrD,SAASC,IAAI,QAAQ,WAAQ;AAE7B,SAASC,aAAa,EAAEC,QAAQ,EAAEC,aAAa,QAAQ,4BAAyB","ignoreList":[]}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+
3
+ import React, { createContext, useContext, useMemo } from 'react';
4
+ import { ThemeProvider } from "./ThemeContext.js";
5
+ import { jsx as _jsx } from "react/jsx-runtime";
6
+ export const DEFAULT_STRINGS = {
7
+ homeHeaderTitle: "Ready to learn?",
8
+ homeHeaderSubtitle: "Practice daily & improve scores",
9
+ dailyQuizTitle: "One step learnings - Daily quiz",
10
+ dailyQuizSubtitle: "Attempt daily prep check!",
11
+ dailyQuizProgressLabel: "Track Progress",
12
+ trackQuickLabel: "Track Quick",
13
+ subjectsTitle: "Subjects",
14
+ popularTopicsTitle: "Popular Topics",
15
+ qbankTitle: "Qbank",
16
+ qbankSubtitle: "All subjects folder & question bank",
17
+ topicsLabel: "Topics",
18
+ questionsCountLabel: "Questions",
19
+ startQuizButton: "Start QBank",
20
+ topicsAndItemsLabel: "Topics and items",
21
+ infoTitle: "Info",
22
+ questionLabel: "Question",
23
+ explanationLabel: "Explanation",
24
+ nextButtonLabel: "Next",
25
+ submitButtonLabel: "Submit",
26
+ correctAnswerLabel: "Correct Answer",
27
+ incorrectAnswerLabel: "Incorrect Answer",
28
+ resultsTitle: "QBank Analysis",
29
+ resultsSubtitle: "Here is your QBank performance summary!",
30
+ accuracyLabel: "Accuracy",
31
+ timeSpentLabel: "Time Spent",
32
+ correctAnswersCountLabel: "Correct Answers",
33
+ reviewAnswersButton: "Review Answers",
34
+ goHomeButton: "Back to Dashboard",
35
+ scorecardTitle: "Quiz Analysis"
36
+ };
37
+ const ConfigContext = /*#__PURE__*/createContext(null);
38
+ export const ElearnConfigProvider = ({
39
+ config = {},
40
+ callbacks = {},
41
+ children
42
+ }) => {
43
+ const mergedStrings = useMemo(() => {
44
+ return {
45
+ ...DEFAULT_STRINGS,
46
+ ...config.strings
47
+ };
48
+ }, [config.strings]);
49
+ const value = useMemo(() => {
50
+ return {
51
+ config,
52
+ callbacks,
53
+ getString: key => mergedStrings[key] || DEFAULT_STRINGS[key] || '',
54
+ getCourses: () => config.courses || [],
55
+ getDailyQuiz: () => config.dailyQuiz
56
+ };
57
+ }, [config, callbacks, mergedStrings]);
58
+ return /*#__PURE__*/_jsx(ConfigContext.Provider, {
59
+ value: value,
60
+ children: /*#__PURE__*/_jsx(ThemeProvider, {
61
+ theme: config.theme,
62
+ children: children
63
+ })
64
+ });
65
+ };
66
+ export const useElearnConfig = () => {
67
+ const context = useContext(ConfigContext);
68
+ if (!context) {
69
+ throw new Error('useElearnConfig must be used within an ElearnConfigProvider');
70
+ }
71
+ return context;
72
+ };
73
+ export { ThemeProvider };
74
+ export { useTheme } from "./ThemeContext.js";
75
+ export { DEFAULT_THEME } from "./ThemeContext.js";
76
+ //# sourceMappingURL=ElearnConfigContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","createContext","useContext","useMemo","ThemeProvider","jsx","_jsx","DEFAULT_STRINGS","homeHeaderTitle","homeHeaderSubtitle","dailyQuizTitle","dailyQuizSubtitle","dailyQuizProgressLabel","trackQuickLabel","subjectsTitle","popularTopicsTitle","qbankTitle","qbankSubtitle","topicsLabel","questionsCountLabel","startQuizButton","topicsAndItemsLabel","infoTitle","questionLabel","explanationLabel","nextButtonLabel","submitButtonLabel","correctAnswerLabel","incorrectAnswerLabel","resultsTitle","resultsSubtitle","accuracyLabel","timeSpentLabel","correctAnswersCountLabel","reviewAnswersButton","goHomeButton","scorecardTitle","ConfigContext","ElearnConfigProvider","config","callbacks","children","mergedStrings","strings","value","getString","key","getCourses","courses","getDailyQuiz","dailyQuiz","Provider","theme","useElearnConfig","context","Error","useTheme","DEFAULT_THEME"],"sourceRoot":"../../../src","sources":["context/ElearnConfigContext.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,aAAa,EAAEC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAEjE,SAASC,aAAa,QAAQ,mBAAgB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE/C,OAAO,MAAMC,eAAwC,GAAG;EACtDC,eAAe,EAAE,iBAAiB;EAClCC,kBAAkB,EAAE,iCAAiC;EACrDC,cAAc,EAAE,iCAAiC;EACjDC,iBAAiB,EAAE,2BAA2B;EAC9CC,sBAAsB,EAAE,gBAAgB;EACxCC,eAAe,EAAE,aAAa;EAC9BC,aAAa,EAAE,UAAU;EACzBC,kBAAkB,EAAE,gBAAgB;EACpCC,UAAU,EAAE,OAAO;EACnBC,aAAa,EAAE,qCAAqC;EACpDC,WAAW,EAAE,QAAQ;EACrBC,mBAAmB,EAAE,WAAW;EAChCC,eAAe,EAAE,aAAa;EAC9BC,mBAAmB,EAAE,kBAAkB;EACvCC,SAAS,EAAE,MAAM;EACjBC,aAAa,EAAE,UAAU;EACzBC,gBAAgB,EAAE,aAAa;EAC/BC,eAAe,EAAE,MAAM;EACvBC,iBAAiB,EAAE,QAAQ;EAC3BC,kBAAkB,EAAE,gBAAgB;EACpCC,oBAAoB,EAAE,kBAAkB;EACxCC,YAAY,EAAE,gBAAgB;EAC9BC,eAAe,EAAE,yCAAyC;EAC1DC,aAAa,EAAE,UAAU;EACzBC,cAAc,EAAE,YAAY;EAC5BC,wBAAwB,EAAE,iBAAiB;EAC3CC,mBAAmB,EAAE,gBAAgB;EACrCC,YAAY,EAAE,mBAAmB;EACjCC,cAAc,EAAE;AAClB,CAAC;AAUD,MAAMC,aAAa,gBAAGpC,aAAa,CAA4B,IAAI,CAAC;AAQpE,OAAO,MAAMqC,oBAAyD,GAAGA,CAAC;EACxEC,MAAM,GAAG,CAAC,CAAC;EACXC,SAAS,GAAG,CAAC,CAAC;EACdC;AACF,CAAC,KAAK;EACJ,MAAMC,aAAa,GAAGvC,OAAO,CAAC,MAAM;IAClC,OAAO;MAAE,GAAGI,eAAe;MAAE,GAAGgC,MAAM,CAACI;IAAQ,CAAC;EAClD,CAAC,EAAE,CAACJ,MAAM,CAACI,OAAO,CAAC,CAAC;EAEpB,MAAMC,KAAK,GAAGzC,OAAO,CAAqB,MAAM;IAC9C,OAAO;MACLoC,MAAM;MACNC,SAAS;MACTK,SAAS,EAAGC,GAAG,IAAKJ,aAAa,CAACI,GAAG,CAAC,IAAIvC,eAAe,CAACuC,GAAG,CAAC,IAAI,EAAE;MACpEC,UAAU,EAAEA,CAAA,KAAMR,MAAM,CAACS,OAAO,IAAI,EAAE;MACtCC,YAAY,EAAEA,CAAA,KAAMV,MAAM,CAACW;IAC7B,CAAC;EACH,CAAC,EAAE,CAACX,MAAM,EAAEC,SAAS,EAAEE,aAAa,CAAC,CAAC;EAEtC,oBACEpC,IAAA,CAAC+B,aAAa,CAACc,QAAQ;IAACP,KAAK,EAAEA,KAAM;IAAAH,QAAA,eACnCnC,IAAA,CAACF,aAAa;MAACgD,KAAK,EAAEb,MAAM,CAACa,KAAM;MAAAX,QAAA,EAChCA;IAAQ,CACI;EAAC,CACM,CAAC;AAE7B,CAAC;AAED,OAAO,MAAMY,eAAe,GAAGA,CAAA,KAAM;EACnC,MAAMC,OAAO,GAAGpD,UAAU,CAACmC,aAAa,CAAC;EACzC,IAAI,CAACiB,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,6DAA6D,CAAC;EAChF;EACA,OAAOD,OAAO;AAChB,CAAC;AACD,SAASlD,aAAa;AACtB,SAASoD,QAAQ,QAAQ,mBAAgB;AACzC,SAASC,aAAa,QAAQ,mBAAgB","ignoreList":[]}
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ import React, { createContext, useContext, useMemo } from 'react';
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ export const DEFAULT_THEME = {
6
+ primary: '#007A87',
7
+ // Dark Teal
8
+ secondary: '#E6F4F5',
9
+ // Soft Teal Accent
10
+ success: '#10B981',
11
+ // Emerald Green for correct answers
12
+ danger: '#EF4444',
13
+ // Red for incorrect answers
14
+ warning: '#F59E0B',
15
+ // Amber
16
+ background: '#F8FAFC',
17
+ // Sleek slate grey-white background
18
+ cardBackground: '#FFFFFF',
19
+ // Pure White
20
+ textPrimary: '#1E293B',
21
+ // Slate 800
22
+ textSecondary: '#64748B',
23
+ // Slate 500
24
+ textInverse: '#FFFFFF',
25
+ // White
26
+ border: '#E2E8F0' // Slate 200
27
+ };
28
+ const ThemeContext = /*#__PURE__*/createContext(DEFAULT_THEME);
29
+ export const ThemeProvider = ({
30
+ theme,
31
+ children
32
+ }) => {
33
+ const mergedTheme = useMemo(() => {
34
+ return {
35
+ ...DEFAULT_THEME,
36
+ ...theme
37
+ };
38
+ }, [theme]);
39
+ return /*#__PURE__*/_jsx(ThemeContext.Provider, {
40
+ value: mergedTheme,
41
+ children: children
42
+ });
43
+ };
44
+ export const useTheme = () => useContext(ThemeContext);
45
+ //# sourceMappingURL=ThemeContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","createContext","useContext","useMemo","jsx","_jsx","DEFAULT_THEME","primary","secondary","success","danger","warning","background","cardBackground","textPrimary","textSecondary","textInverse","border","ThemeContext","ThemeProvider","theme","children","mergedTheme","Provider","value","useTheme"],"sourceRoot":"../../../src","sources":["context/ThemeContext.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,aAAa,EAAEC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAGlE,OAAO,MAAMC,aAA0B,GAAG;EACxCC,OAAO,EAAE,SAAS;EAAE;EACpBC,SAAS,EAAE,SAAS;EAAE;EACtBC,OAAO,EAAE,SAAS;EAAE;EACpBC,MAAM,EAAE,SAAS;EAAE;EACnBC,OAAO,EAAE,SAAS;EAAE;EACpBC,UAAU,EAAE,SAAS;EAAE;EACvBC,cAAc,EAAE,SAAS;EAAE;EAC3BC,WAAW,EAAE,SAAS;EAAE;EACxBC,aAAa,EAAE,SAAS;EAAE;EAC1BC,WAAW,EAAE,SAAS;EAAE;EACxBC,MAAM,EAAE,SAAS,CAAE;AACrB,CAAC;AAED,MAAMC,YAAY,gBAAGjB,aAAa,CAAcK,aAAa,CAAC;AAO9D,OAAO,MAAMa,aAA2C,GAAGA,CAAC;EAAEC,KAAK;EAAEC;AAAS,CAAC,KAAK;EAClF,MAAMC,WAAW,GAAGnB,OAAO,CAAC,MAAM;IAChC,OAAO;MAAE,GAAGG,aAAa;MAAE,GAAGc;IAAM,CAAC;EACvC,CAAC,EAAE,CAACA,KAAK,CAAC,CAAC;EAEX,oBACEf,IAAA,CAACa,YAAY,CAACK,QAAQ;IAACC,KAAK,EAAEF,WAAY;IAAAD,QAAA,EACvCA;EAAQ,CACY,CAAC;AAE5B,CAAC;AAED,OAAO,MAAMI,QAAQ,GAAGA,CAAA,KAAMvB,UAAU,CAACgB,YAAY,CAAC","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ // Types export
4
+ export * from "./types/index.js";
5
+
6
+ // Contexts & Providers
7
+ export { ElearnConfigProvider, useElearnConfig, ThemeProvider, useTheme, DEFAULT_THEME, DEFAULT_STRINGS } from "./context/ElearnConfigContext.js";
8
+
9
+ // Atomic Components
10
+ export { Typography, Button, Card, ProgressBar, CircularProgress, Icon } from "./components/index.js";
11
+ // Screens
12
+ export { HomeScreen, QbankScreen, TopicListScreen, QuizStartScreen, QuestionScreen, ResultScreen } from "./screens/index.js";
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ElearnConfigProvider","useElearnConfig","ThemeProvider","useTheme","DEFAULT_THEME","DEFAULT_STRINGS","Typography","Button","Card","ProgressBar","CircularProgress","Icon","HomeScreen","QbankScreen","TopicListScreen","QuizStartScreen","QuestionScreen","ResultScreen"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA;AACA,cAAc,kBAAS;;AAEvB;AACA,SACEA,oBAAoB,EACpBC,eAAe,EACfC,aAAa,EACbC,QAAQ,EACRC,aAAa,EACbC,eAAe,QACV,kCAA+B;;AAEtC;AACA,SACEC,UAAU,EACVC,MAAM,EACNC,IAAI,EACJC,WAAW,EACXC,gBAAgB,EAChBC,IAAI,QACC,uBAAc;AAGrB;AACA,SACEC,UAAU,EACVC,WAAW,EACXC,eAAe,EACfC,eAAe,EACfC,cAAc,EACdC,YAAY,QACP,oBAAW","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ export function multiply(a, b) {
4
+ return a * b;
5
+ }
6
+ //# sourceMappingURL=multiply.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["multiply","a","b"],"sourceRoot":"../../src","sources":["multiply.tsx"],"mappings":";;AAAA,OAAO,SAASA,QAAQA,CAACC,CAAS,EAAEC,CAAS,EAAU;EACrD,OAAOD,CAAC,GAAGC,CAAC;AACd","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"type":"module"}
@@ -0,0 +1,330 @@
1
+ "use strict";
2
+
3
+ import React from 'react';
4
+ import { View, ScrollView, StyleSheet, TouchableOpacity, SafeAreaView, StatusBar, Image } from 'react-native';
5
+ import { useElearnConfig } from "../context/ElearnConfigContext.js";
6
+ import { useTheme } from "../context/ThemeContext.js";
7
+ import { Typography, Card, CircularProgress, Icon } from "../components/index.js";
8
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
+ export const HomeScreen = () => {
10
+ const {
11
+ config,
12
+ callbacks,
13
+ getString
14
+ } = useElearnConfig();
15
+ const theme = useTheme();
16
+ const dailyQuiz = config.dailyQuiz;
17
+ const courses = config.courses || [];
18
+ const handleDailyQuizPress = () => {
19
+ if (dailyQuiz && callbacks.onStartQuiz) {
20
+ callbacks.onStartQuiz(dailyQuiz.id, dailyQuiz.questions, dailyQuiz.title);
21
+ }
22
+ };
23
+ return /*#__PURE__*/_jsxs(SafeAreaView, {
24
+ style: [styles.safeArea, {
25
+ backgroundColor: theme.background
26
+ }],
27
+ children: [/*#__PURE__*/_jsx(StatusBar, {
28
+ barStyle: "dark-content"
29
+ }), /*#__PURE__*/_jsxs(View, {
30
+ style: styles.header,
31
+ children: [/*#__PURE__*/_jsxs(View, {
32
+ style: styles.headerLeft,
33
+ children: [/*#__PURE__*/_jsx(TouchableOpacity, {
34
+ style: styles.avatarContainer,
35
+ children: /*#__PURE__*/_jsx(View, {
36
+ style: [styles.avatarPlaceholder, {
37
+ backgroundColor: theme.secondary
38
+ }],
39
+ children: /*#__PURE__*/_jsx(Icon, {
40
+ name: "user",
41
+ size: 20,
42
+ color: theme.primary
43
+ })
44
+ })
45
+ }), /*#__PURE__*/_jsxs(View, {
46
+ children: [/*#__PURE__*/_jsx(Typography, {
47
+ variant: "bodyLight",
48
+ color: theme.textSecondary,
49
+ children: getString('homeHeaderTitle')
50
+ }), /*#__PURE__*/_jsx(Typography, {
51
+ variant: "h2",
52
+ bold: true,
53
+ children: "Dr. Kimberly"
54
+ })]
55
+ })]
56
+ }), /*#__PURE__*/_jsxs(TouchableOpacity, {
57
+ style: [styles.iconButton, {
58
+ borderColor: theme.border
59
+ }],
60
+ children: [/*#__PURE__*/_jsx(Icon, {
61
+ name: "bell",
62
+ size: 20,
63
+ color: theme.textPrimary
64
+ }), /*#__PURE__*/_jsx(View, {
65
+ style: [styles.badge, {
66
+ backgroundColor: theme.danger
67
+ }]
68
+ })]
69
+ })]
70
+ }), /*#__PURE__*/_jsxs(ScrollView, {
71
+ contentContainerStyle: styles.scrollContent,
72
+ showsVerticalScrollIndicator: false,
73
+ children: [dailyQuiz && /*#__PURE__*/_jsx(TouchableOpacity, {
74
+ activeOpacity: 0.9,
75
+ onPress: handleDailyQuizPress,
76
+ children: /*#__PURE__*/_jsx(Card, {
77
+ style: [styles.dailyQuizCard, {
78
+ backgroundColor: '#0284C7'
79
+ }],
80
+ children: /*#__PURE__*/_jsxs(View, {
81
+ style: styles.dailyQuizRow,
82
+ children: [/*#__PURE__*/_jsxs(View, {
83
+ style: styles.dailyQuizLeft,
84
+ children: [/*#__PURE__*/_jsx(Typography, {
85
+ variant: "h3",
86
+ color: "#FFFFFF",
87
+ bold: true,
88
+ children: getString('dailyQuizTitle')
89
+ }), /*#__PURE__*/_jsx(Typography, {
90
+ variant: "caption",
91
+ color: "#E0F2FE",
92
+ style: styles.dailyQuizDesc,
93
+ children: getString('dailyQuizSubtitle')
94
+ }), /*#__PURE__*/_jsx(View, {
95
+ style: styles.trackQuickBadge,
96
+ children: /*#__PURE__*/_jsx(Typography, {
97
+ variant: "caption",
98
+ color: "#0284C7",
99
+ bold: true,
100
+ children: getString('trackQuickLabel')
101
+ })
102
+ })]
103
+ }), /*#__PURE__*/_jsx(View, {
104
+ style: styles.dailyQuizRight,
105
+ children: /*#__PURE__*/_jsx(CircularProgress, {
106
+ progress: dailyQuiz.progressPercentage / 100,
107
+ size: 68,
108
+ strokeWidth: 6,
109
+ color: "#FFFFFF",
110
+ backgroundColor: "rgba(255, 255, 255, 0.25)",
111
+ textStyle: {
112
+ color: '#FFFFFF',
113
+ fontSize: 13
114
+ }
115
+ })
116
+ })]
117
+ })
118
+ })
119
+ }), /*#__PURE__*/_jsx(View, {
120
+ style: styles.sectionHeader,
121
+ children: /*#__PURE__*/_jsx(Typography, {
122
+ variant: "h2",
123
+ bold: true,
124
+ children: getString('subjectsTitle')
125
+ })
126
+ }), /*#__PURE__*/_jsx(ScrollView, {
127
+ horizontal: true,
128
+ showsHorizontalScrollIndicator: false,
129
+ contentContainerStyle: styles.subjectsContainer,
130
+ children: courses.map(course => {
131
+ let iconName = 'flask';
132
+ if (course.title.toLowerCase().includes('physic')) iconName = 'atom';
133
+ if (course.title.toLowerCase().includes('biolog')) iconName = 'dna';
134
+ if (course.title.toLowerCase().includes('anatom')) iconName = 'book-open';
135
+ return /*#__PURE__*/_jsxs(TouchableOpacity, {
136
+ style: [styles.subjectTab, {
137
+ backgroundColor: theme.cardBackground,
138
+ borderColor: theme.border
139
+ }],
140
+ onPress: () => callbacks.onSelectCourse?.(course),
141
+ children: [/*#__PURE__*/_jsx(View, {
142
+ style: [styles.subjectIconWrap, {
143
+ backgroundColor: theme.secondary
144
+ }],
145
+ children: /*#__PURE__*/_jsx(Icon, {
146
+ name: iconName,
147
+ size: 20,
148
+ color: theme.primary
149
+ })
150
+ }), /*#__PURE__*/_jsx(Typography, {
151
+ variant: "label",
152
+ bold: true,
153
+ style: styles.subjectText,
154
+ children: course.title
155
+ })]
156
+ }, course.id);
157
+ })
158
+ }), /*#__PURE__*/_jsx(View, {
159
+ style: styles.sectionHeader,
160
+ children: /*#__PURE__*/_jsx(Typography, {
161
+ variant: "h2",
162
+ bold: true,
163
+ children: getString('popularTopicsTitle')
164
+ })
165
+ }), /*#__PURE__*/_jsxs(Card, {
166
+ bordered: true,
167
+ style: styles.infoCard,
168
+ children: [/*#__PURE__*/_jsx(Image, {
169
+ source: {
170
+ uri: 'https://images.unsplash.com/photo-1576086213369-97a306d36557?q=80&w=600&auto=format&fit=crop'
171
+ },
172
+ style: styles.infoCardImage,
173
+ resizeMode: "cover"
174
+ }), /*#__PURE__*/_jsxs(View, {
175
+ style: styles.infoCardContent,
176
+ children: [/*#__PURE__*/_jsxs(View, {
177
+ style: styles.infoCardHeader,
178
+ children: [/*#__PURE__*/_jsx(Typography, {
179
+ variant: "caption",
180
+ color: theme.primary,
181
+ bold: true,
182
+ children: "HISTOLOGY"
183
+ }), /*#__PURE__*/_jsx(Typography, {
184
+ variant: "caption",
185
+ color: theme.textSecondary,
186
+ children: "12 min read"
187
+ })]
188
+ }), /*#__PURE__*/_jsx(Typography, {
189
+ variant: "h3",
190
+ bold: true,
191
+ style: styles.infoCardTitle,
192
+ children: "Tissue structures under microscope examination"
193
+ }), /*#__PURE__*/_jsx(Typography, {
194
+ variant: "body",
195
+ color: theme.textSecondary,
196
+ numberOfLines: 2,
197
+ children: "Learn the identification of epithelial tissues, connective tissues, and muscle structures for medical examination prep."
198
+ })]
199
+ })]
200
+ })]
201
+ })]
202
+ });
203
+ };
204
+ const styles = StyleSheet.create({
205
+ safeArea: {
206
+ flex: 1
207
+ },
208
+ header: {
209
+ flexDirection: 'row',
210
+ justifyContent: 'space-between',
211
+ alignItems: 'center',
212
+ paddingHorizontal: 20,
213
+ paddingVertical: 16
214
+ },
215
+ headerLeft: {
216
+ flexDirection: 'row',
217
+ alignItems: 'center'
218
+ },
219
+ avatarContainer: {
220
+ marginRight: 12
221
+ },
222
+ avatarPlaceholder: {
223
+ width: 40,
224
+ height: 40,
225
+ borderRadius: 20,
226
+ justifyContent: 'center',
227
+ alignItems: 'center'
228
+ },
229
+ iconButton: {
230
+ width: 40,
231
+ height: 40,
232
+ borderRadius: 20,
233
+ borderWidth: 1,
234
+ justifyContent: 'center',
235
+ alignItems: 'center',
236
+ position: 'relative'
237
+ },
238
+ badge: {
239
+ position: 'absolute',
240
+ top: 10,
241
+ right: 10,
242
+ width: 8,
243
+ height: 8,
244
+ borderRadius: 4
245
+ },
246
+ scrollContent: {
247
+ paddingHorizontal: 20,
248
+ paddingBottom: 24
249
+ },
250
+ dailyQuizCard: {
251
+ marginVertical: 12,
252
+ padding: 20,
253
+ borderRadius: 20
254
+ },
255
+ dailyQuizRow: {
256
+ flexDirection: 'row',
257
+ justifyContent: 'space-between',
258
+ alignItems: 'center'
259
+ },
260
+ dailyQuizLeft: {
261
+ flex: 1,
262
+ paddingRight: 16
263
+ },
264
+ dailyQuizDesc: {
265
+ marginTop: 6,
266
+ opacity: 0.9
267
+ },
268
+ trackQuickBadge: {
269
+ backgroundColor: '#FFFFFF',
270
+ paddingHorizontal: 12,
271
+ paddingVertical: 6,
272
+ borderRadius: 16,
273
+ alignSelf: 'flex-start',
274
+ marginTop: 14
275
+ },
276
+ dailyQuizRight: {
277
+ justifyContent: 'center',
278
+ alignItems: 'center'
279
+ },
280
+ sectionHeader: {
281
+ marginTop: 20,
282
+ marginBottom: 12
283
+ },
284
+ subjectsContainer: {
285
+ paddingVertical: 4
286
+ },
287
+ subjectTab: {
288
+ flexDirection: 'row',
289
+ alignItems: 'center',
290
+ paddingHorizontal: 16,
291
+ paddingVertical: 10,
292
+ borderRadius: 20,
293
+ borderWidth: 1,
294
+ marginRight: 12
295
+ },
296
+ subjectIconWrap: {
297
+ width: 32,
298
+ height: 32,
299
+ borderRadius: 16,
300
+ justifyContent: 'center',
301
+ alignItems: 'center',
302
+ marginRight: 8
303
+ },
304
+ subjectText: {
305
+ fontSize: 14
306
+ },
307
+ infoCard: {
308
+ padding: 0,
309
+ overflow: 'hidden',
310
+ marginTop: 8
311
+ },
312
+ infoCardImage: {
313
+ width: '100%',
314
+ height: 160
315
+ },
316
+ infoCardContent: {
317
+ padding: 16
318
+ },
319
+ infoCardHeader: {
320
+ flexDirection: 'row',
321
+ justifyContent: 'space-between',
322
+ alignItems: 'center',
323
+ marginBottom: 6
324
+ },
325
+ infoCardTitle: {
326
+ marginBottom: 8,
327
+ lineHeight: 22
328
+ }
329
+ });
330
+ //# sourceMappingURL=HomeScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","View","ScrollView","StyleSheet","TouchableOpacity","SafeAreaView","StatusBar","Image","useElearnConfig","useTheme","Typography","Card","CircularProgress","Icon","jsx","_jsx","jsxs","_jsxs","HomeScreen","config","callbacks","getString","theme","dailyQuiz","courses","handleDailyQuizPress","onStartQuiz","id","questions","title","style","styles","safeArea","backgroundColor","background","children","barStyle","header","headerLeft","avatarContainer","avatarPlaceholder","secondary","name","size","color","primary","variant","textSecondary","bold","iconButton","borderColor","border","textPrimary","badge","danger","contentContainerStyle","scrollContent","showsVerticalScrollIndicator","activeOpacity","onPress","dailyQuizCard","dailyQuizRow","dailyQuizLeft","dailyQuizDesc","trackQuickBadge","dailyQuizRight","progress","progressPercentage","strokeWidth","textStyle","fontSize","sectionHeader","horizontal","showsHorizontalScrollIndicator","subjectsContainer","map","course","iconName","toLowerCase","includes","subjectTab","cardBackground","onSelectCourse","subjectIconWrap","subjectText","bordered","infoCard","source","uri","infoCardImage","resizeMode","infoCardContent","infoCardHeader","infoCardTitle","numberOfLines","create","flex","flexDirection","justifyContent","alignItems","paddingHorizontal","paddingVertical","marginRight","width","height","borderRadius","borderWidth","position","top","right","paddingBottom","marginVertical","padding","paddingRight","marginTop","opacity","alignSelf","marginBottom","overflow","lineHeight"],"sourceRoot":"../../../src","sources":["screens/HomeScreen.tsx"],"mappings":"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","ignoreList":[]}