touchstudy-core 0.1.145 → 0.1.147

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 (128) hide show
  1. package/dist/alert-circle-fill~CSSkoNUz.svg +3 -0
  2. package/dist/assets/AlertCircleFill.d.ts +3 -0
  3. package/dist/assets/CalendarFill.d.ts +3 -0
  4. package/dist/assets/CheckCircleFill.d.ts +3 -0
  5. package/dist/assets/CheckedCircleFill.d.ts +3 -0
  6. package/dist/assets/ClockFill.d.ts +3 -0
  7. package/dist/assets/CloseCircleFill.d.ts +3 -0
  8. package/dist/assets/IconPerson.d.ts +3 -0
  9. package/dist/calendar_fill~zEgxFwDs.svg +4 -0
  10. package/dist/check-circle_fill~bbGHfKpz.svg +3 -0
  11. package/dist/checked-circle_fill~KLGxfRpW.svg +3 -0
  12. package/dist/clock_fill~mcRclYYO.svg +3 -0
  13. package/dist/close-circle_fill~PRVaHJUQ.svg +3 -0
  14. package/dist/components/Inputs/SearchInput.d.ts +3 -0
  15. package/dist/components/List/configs/interfaces.d.ts +1 -1
  16. package/dist/components/List/partials/VirtualListItem.d.ts +1 -1
  17. package/dist/components/Selects/CustomSelect.d.ts +1 -1
  18. package/dist/components/Tables/VirtualTableRowItem.d.ts +6 -5
  19. package/dist/components/Tables/VirtualTableView.d.ts +1 -1
  20. package/dist/components/Tables/configs/interfaces.d.ts +12 -4
  21. package/dist/containers/Classes/components/StudentList.d.ts +1 -0
  22. package/dist/containers/ExamResult/apiClients/index.d.ts +5 -5
  23. package/dist/containers/ExamResult/hooks/useExamResult.d.ts +6 -6
  24. package/dist/containers/ExamResult/hooks/useExamResultNote.d.ts +3 -3
  25. package/dist/containers/Login/hooks/useLoginPhoneNumber.d.ts +4 -0
  26. package/dist/containers/Notes/components/NoteItem.d.ts +2 -0
  27. package/dist/containers/Notes/configs/enums.d.ts +4 -0
  28. package/dist/containers/Notes/configs/interfaces.d.ts +2 -0
  29. package/dist/containers/Notes/configs/types.d.ts +2 -2
  30. package/dist/containers/Notes/styles/styles.d.ts +2 -0
  31. package/dist/containers/PreparedExam/apiClients/textbookService.d.ts +1 -1
  32. package/dist/containers/PreparedExam/components/dialogs/ChapterProblemSolvingResultsDialog.d.ts +2 -1
  33. package/dist/containers/PreparedExam/components/dialogs/TextbookDrawer.d.ts +7 -2
  34. package/dist/containers/PreparedExam/components/dialogs/TextbookInfoDrawer.d.ts +3 -2
  35. package/dist/containers/PreparedExam/configs/types.d.ts +6 -0
  36. package/dist/containers/PreparedExam/hooks/useTextbookDrawer.d.ts +3 -1
  37. package/dist/containers/PreparedTextbook/apiClients/textbookService.d.ts +1 -1
  38. package/dist/containers/PreparedTextbook/components/AcademySelector.d.ts +1 -1
  39. package/dist/containers/PreparedTextbook/components/ArticleBlock.d.ts +1 -0
  40. package/dist/containers/PreparedTextbook/components/ChapterBlock.d.ts +1 -0
  41. package/dist/containers/PreparedTextbook/components/ChapterBlockBody.d.ts +1 -0
  42. package/dist/containers/PreparedTextbook/components/CourseSelector.d.ts +1 -1
  43. package/dist/containers/PreparedTextbook/components/OwnerSelector.d.ts +3 -2
  44. package/dist/containers/PreparedTextbook/components/PreparedTextbookForm.d.ts +5 -0
  45. package/dist/containers/PreparedTextbook/components/QuestionBlock.d.ts +1 -1
  46. package/dist/containers/PreparedTextbook/components/QuestionGroupBlock.d.ts +1 -1
  47. package/dist/containers/PreparedTextbook/components/QuestionGroupBlockBody.d.ts +2 -0
  48. package/dist/containers/PreparedTextbook/components/TextbookContentsTab.d.ts +1 -0
  49. package/dist/containers/PreparedTextbook/components/TextbookInfoTab.d.ts +3 -1
  50. package/dist/containers/PreparedTextbook/components/TextbookOwnersTab.d.ts +2 -1
  51. package/dist/containers/PreparedTextbook/configs/constants.d.ts +2 -0
  52. package/dist/containers/PreparedTextbook/configs/enums.d.ts +5 -0
  53. package/dist/containers/PreparedTextbook/configs/functions.d.ts +23 -4
  54. package/dist/containers/PreparedTextbook/configs/interfaces.d.ts +2 -0
  55. package/dist/containers/PreparedTextbook/configs/types.d.ts +9 -3
  56. package/dist/containers/PreparedTextbook/hooks/useSelect.d.ts +8 -10
  57. package/dist/containers/PreparedTextbook/hooks/useTextbookManagement.d.ts +8 -1
  58. package/dist/containers/StudentInfoDrawer/apiClients/courseService.d.ts +3 -0
  59. package/dist/containers/StudentInfoDrawer/apiClients/examSessionService.d.ts +1 -0
  60. package/dist/containers/StudentInfoDrawer/apiClients/noteService.d.ts +6 -0
  61. package/dist/containers/StudentInfoDrawer/apiClients/textbookService.d.ts +1 -0
  62. package/dist/containers/StudentInfoDrawer/apiClients/userService.d.ts +1 -0
  63. package/dist/containers/StudentInfoDrawer/components/Attendance/AttendanceCourseTable.d.ts +15 -0
  64. package/dist/containers/StudentInfoDrawer/components/Attendance/CourseAttendanceItem.d.ts +10 -0
  65. package/dist/containers/StudentInfoDrawer/components/Attendance/CourseAttendanceList.d.ts +4 -0
  66. package/dist/containers/StudentInfoDrawer/components/Attendance/DrawerAttendanceTab.d.ts +4 -0
  67. package/dist/containers/StudentInfoDrawer/components/Attendance/LessonTooltip.d.ts +8 -0
  68. package/dist/containers/StudentInfoDrawer/components/AttendanceCourseTable.d.ts +15 -0
  69. package/dist/containers/StudentInfoDrawer/components/CourseAttendanceItem.d.ts +10 -0
  70. package/dist/containers/StudentInfoDrawer/components/CourseAttendanceList.d.ts +4 -0
  71. package/dist/containers/StudentInfoDrawer/components/CustomTooltip.d.ts +2 -0
  72. package/dist/containers/StudentInfoDrawer/components/DrawerAttendanceTab.d.ts +4 -0
  73. package/dist/containers/StudentInfoDrawer/components/DrawerExamResultTab.d.ts +9 -0
  74. package/dist/containers/StudentInfoDrawer/components/DrawerHeader.d.ts +9 -0
  75. package/dist/containers/StudentInfoDrawer/components/DrawerInfoTab.d.ts +9 -0
  76. package/dist/containers/StudentInfoDrawer/components/DrawerNoteTab.d.ts +8 -0
  77. package/dist/containers/StudentInfoDrawer/components/DrawerTabContent.d.ts +8 -0
  78. package/dist/containers/StudentInfoDrawer/components/DrawerTabHeader.d.ts +8 -0
  79. package/dist/containers/StudentInfoDrawer/components/DrawerTextbookResultTab.d.ts +7 -0
  80. package/dist/containers/StudentInfoDrawer/components/Exam/DrawerExamResultTab.d.ts +9 -0
  81. package/dist/containers/StudentInfoDrawer/components/Exam/ExamResultDrawer.d.ts +13 -0
  82. package/dist/containers/StudentInfoDrawer/components/Exam/ExamResultItem.d.ts +10 -0
  83. package/dist/containers/StudentInfoDrawer/components/Exam/ExanResultList.d.ts +4 -0
  84. package/dist/containers/StudentInfoDrawer/components/ExamResultDrawer.d.ts +13 -0
  85. package/dist/containers/StudentInfoDrawer/components/ExamResultItem.d.ts +10 -0
  86. package/dist/containers/StudentInfoDrawer/components/ExanResultList.d.ts +4 -0
  87. package/dist/containers/StudentInfoDrawer/components/LessonTooltip.d.ts +8 -0
  88. package/dist/containers/StudentInfoDrawer/components/Note/DrawerNoteTab.d.ts +8 -0
  89. package/dist/containers/StudentInfoDrawer/components/Note/NoteDrawer.d.ts +14 -0
  90. package/dist/containers/StudentInfoDrawer/components/NoteDrawer.d.ts +13 -0
  91. package/dist/containers/StudentInfoDrawer/components/Textbook/DrawerTextbookResultTab.d.ts +7 -0
  92. package/dist/containers/StudentInfoDrawer/components/Textbook/TextbookResultItem.d.ts +10 -0
  93. package/dist/containers/StudentInfoDrawer/components/Textbook/TextbookResultList.d.ts +4 -0
  94. package/dist/containers/StudentInfoDrawer/components/TextbookResultItem.d.ts +10 -0
  95. package/dist/containers/StudentInfoDrawer/components/TextbookResultList.d.ts +4 -0
  96. package/dist/containers/StudentInfoDrawer/configs/constants.d.ts +6 -0
  97. package/dist/containers/StudentInfoDrawer/configs/enums.d.ts +12 -0
  98. package/dist/containers/StudentInfoDrawer/configs/fns.d.ts +26 -0
  99. package/dist/containers/StudentInfoDrawer/configs/interfaces.d.ts +44 -0
  100. package/dist/containers/StudentInfoDrawer/configs/types.d.ts +101 -0
  101. package/dist/containers/StudentInfoDrawer/hooks/useDrawerAttendanceTab.d.ts +8 -0
  102. package/dist/containers/StudentInfoDrawer/hooks/useDrawerNoteTab.d.ts +28 -0
  103. package/dist/containers/StudentInfoDrawer/hooks/useStudentInfoDrawer.d.ts +15 -0
  104. package/dist/containers/StudentInfoDrawer/index.d.ts +2 -0
  105. package/dist/containers/StudentInfoDrawer/styles/styles.d.ts +2 -0
  106. package/dist/containers/StudentInfoDrawer/views/StudentInfoDrawer.d.ts +4 -0
  107. package/dist/containers/Textbooks/configs/types.d.ts +2 -0
  108. package/dist/containers/Textbooks/hooks/useTextbookList.d.ts +5 -2
  109. package/dist/containers/Textbooks/hooks/useTextbookShare.d.ts +0 -2
  110. package/dist/containers/Users/components/UserRow.d.ts +14 -0
  111. package/dist/containers/Users/hooks/useUserList.d.ts +3 -0
  112. package/dist/containers/Users/views/UserList.d.ts +1 -0
  113. package/dist/containers/index.d.ts +1 -0
  114. package/dist/iconPerson~bfprHOKm.svg +4 -0
  115. package/dist/index.css +334 -334
  116. package/dist/index.js +22870 -19378
  117. package/dist/index.js.map +1 -1
  118. package/dist/index.modern.js +22885 -19402
  119. package/dist/index.modern.js.map +1 -1
  120. package/dist/utils/constants.d.ts +2 -10
  121. package/dist/utils/enums/index.d.ts +3 -1
  122. package/dist/utils/functions/formatPhoneNumber.d.ts +2 -0
  123. package/dist/utils/functions/includePathname.d.ts +1 -0
  124. package/dist/utils/functions/index.d.ts +3 -2
  125. package/dist/utils/hooks/useVirtualList.d.ts +20 -0
  126. package/dist/utils/index.d.ts +1 -0
  127. package/dist/utils/types/note.d.ts +4 -1
  128. package/package.json +2 -2
@@ -1,4 +1,5 @@
1
- import { TextbookDetailResponse } from "./types";
1
+ import { QuestionGroupRequest, TextbookDetailResponse } from "./types";
2
+ import { QuestionAnswerType } from "../../../utils";
2
3
  export declare const reduceToMathArticles: (textbook: any, isMath?: number | undefined) => any;
3
4
  export declare const resetAllCategoriesAndQuestionTypesBySubject: (textbook: any, subject?: any) => any;
4
5
  export declare const convertResponseToRequest: (selectedTextbook?: TextbookDetailResponse | undefined) => import("./types").TextbookRequest | {
@@ -14,7 +15,19 @@ export declare const convertResponseToRequest: (selectedTextbook?: TextbookDetai
14
15
  publisher: string;
15
16
  isbn: string;
16
17
  coverImage: string;
17
- textbookOwners: import("./types").TextbookOwner[];
18
+ textbookOwners: {
19
+ academy: {
20
+ label: any;
21
+ value: any;
22
+ } | null;
23
+ course: {
24
+ label: any;
25
+ value: any;
26
+ } | null;
27
+ email: string;
28
+ academyId: number;
29
+ courseId: number;
30
+ }[];
18
31
  isPublic: boolean;
19
32
  isShared: boolean;
20
33
  isPrepared: boolean;
@@ -27,6 +40,8 @@ export declare const convertResponseToRequest: (selectedTextbook?: TextbookDetai
27
40
  questionGroups: {
28
41
  id: number;
29
42
  chapterId: number;
43
+ pageFrom: number | undefined;
44
+ pageTo: number | undefined;
30
45
  questions: {
31
46
  questionTypeId: any;
32
47
  questionType: {
@@ -39,7 +54,7 @@ export declare const convertResponseToRequest: (selectedTextbook?: TextbookDetai
39
54
  score: number;
40
55
  questionOrder: number;
41
56
  textualAnswer: string;
42
- questionAnswerType: import("../../..").QuestionAnswerType;
57
+ questionAnswerType: QuestionAnswerType;
43
58
  questionTypeName?: string | undefined;
44
59
  }[];
45
60
  articles: {
@@ -65,6 +80,8 @@ export declare const convertResponseToRequest: (selectedTextbook?: TextbookDetai
65
80
  questionGroups: {
66
81
  id: number;
67
82
  chapterId: number;
83
+ pageFrom: number | undefined;
84
+ pageTo: number | undefined;
68
85
  questions: {
69
86
  questionTypeId: any;
70
87
  questionType: {
@@ -77,7 +94,7 @@ export declare const convertResponseToRequest: (selectedTextbook?: TextbookDetai
77
94
  score: number;
78
95
  questionOrder: number;
79
96
  textualAnswer: string;
80
- questionAnswerType: import("../../..").QuestionAnswerType;
97
+ questionAnswerType: QuestionAnswerType;
81
98
  questionTypeName?: string | undefined;
82
99
  }[];
83
100
  articles: {
@@ -99,3 +116,5 @@ export declare const convertResponseToRequest: (selectedTextbook?: TextbookDetai
99
116
  }[];
100
117
  }[];
101
118
  };
119
+ export declare const handleKeyDown: (e: any) => void;
120
+ export declare const isSequentialQuestionGroups: (questionGroups: QuestionGroupRequest[]) => boolean;
@@ -1,6 +1,8 @@
1
1
  import { ReactElement } from "react";
2
+ import { Role } from "../../../utils";
2
3
  export interface PreparedTextbookDetailProps {
3
4
  textbookId?: string;
4
5
  onBackToList: () => void;
5
6
  notFoundView: ReactElement;
7
+ role: Role;
6
8
  }
@@ -60,6 +60,8 @@ export declare type ChapterRequest = {
60
60
  };
61
61
  export declare type QuestionGroupRequest = {
62
62
  id?: number;
63
+ pageFrom?: number;
64
+ pageTo?: number;
63
65
  answerCount: number;
64
66
  questionCount: number;
65
67
  questions: QuestionRequest[];
@@ -102,21 +104,23 @@ export declare type TextbookDetailResponse = {
102
104
  textbookOwners: TextbookOwner[];
103
105
  isPrepared?: boolean;
104
106
  type: number;
107
+ createdBy?: any;
108
+ isCreatedByAdmin?: boolean;
105
109
  };
106
110
  export declare type Academy = {
107
111
  id: number;
108
112
  name: string;
109
- courses: Course[];
110
113
  };
111
114
  export declare type Course = {
112
- id: 1;
115
+ id: number;
113
116
  name: string;
114
- teacherEmails: string[];
115
117
  };
116
118
  export declare type TextbookOwner = {
117
119
  email: string;
118
120
  academyId: number;
119
121
  courseId: number;
122
+ academy: any;
123
+ course: any;
120
124
  };
121
125
  export declare type TextbookResponse = {
122
126
  id: number;
@@ -143,6 +147,8 @@ export declare type ArticleResponse = {
143
147
  };
144
148
  export declare type QuestionGroupResponse = {
145
149
  id: number;
150
+ pageFrom?: number;
151
+ pageTo?: number;
146
152
  chapterId?: number;
147
153
  questions: Question[];
148
154
  articles: ArticleResponse[];
@@ -1,18 +1,16 @@
1
1
  declare type Props = {
2
- academyId?: number;
3
- handleChangeEmail: any;
2
+ email: string;
4
3
  };
5
- declare const useSelect: ({ academyId, handleChangeEmail }: Props) => {
4
+ declare const useSelect: ({ email }: Props) => {
6
5
  t: any;
7
- loadData: any;
8
6
  isLoading: boolean;
9
- academyOptions: {
10
- label: string;
11
- value: number;
7
+ academies: {
8
+ label: any;
9
+ value: any;
12
10
  }[];
13
- courseOptions: {
11
+ courses: {
14
12
  label: string;
15
- value: 1;
16
- }[] | undefined;
13
+ value: any;
14
+ }[];
17
15
  };
18
16
  export default useSelect;
@@ -1,16 +1,23 @@
1
1
  import { ChapterResponse, TextbookRequest, TextbookDetailResponse } from "../configs/types";
2
+ import { Role } from "../../../utils";
2
3
  import { FormikHelpers } from "formik";
3
4
  declare type Props = {
5
+ role: Role;
4
6
  textbookId?: string;
5
7
  onNavigateList: () => void;
6
8
  };
7
- declare const useTextbookManagement: ({ textbookId, onNavigateList }: Props) => {
9
+ declare const useTextbookManagement: ({ textbookId, role, onNavigateList }: Props) => {
8
10
  t: any;
11
+ isAdminSite: boolean;
12
+ disabledTextbookOwners: boolean;
13
+ isReadonly: boolean;
14
+ isEditable: any;
9
15
  isAdmin: any;
10
16
  theme: import("@mui/material").Theme;
11
17
  history: History;
12
18
  coverImage: string | undefined;
13
19
  isSuperAdmin: boolean;
20
+ isSuperAdminUser: any;
14
21
  openDialog: boolean;
15
22
  handleSubmit: (values: TextbookRequest, _formikHelpers: FormikHelpers<TextbookRequest>) => Promise<void>;
16
23
  selectedTextbook: TextbookDetailResponse | undefined;
@@ -0,0 +1,3 @@
1
+ import { BaseSearchQuery } from "../../../utils";
2
+ export declare const getAttendanceByStudentIdApi: (studentId: number, query: BaseSearchQuery<string>) => Promise<import("axios").AxiosResponse<any, any>>;
3
+ export declare const getCheckInLessonsApi: (lessonId: number, studentId: number) => Promise<import("axios").AxiosResponse<any, any>>;
@@ -0,0 +1 @@
1
+ export declare const getExamSessionListApi: (query: any) => Promise<import("axios").AxiosResponse<any, any>>;
@@ -0,0 +1,6 @@
1
+ import { NoteRequest } from "../../../utils";
2
+ import { NoteSearchQuery } from "../../Notes";
3
+ export declare const getNotesApi: (query: NoteSearchQuery) => Promise<import("axios").AxiosResponse<any, any>>;
4
+ export declare const createNoteApi: (note: NoteRequest) => Promise<import("axios").AxiosResponse<any, any>>;
5
+ export declare const updateNoteApi: (id: number, content: string) => Promise<import("axios").AxiosResponse<any, any>>;
6
+ export declare const deleteNoteApi: (id: number) => Promise<import("axios").AxiosResponse<any, any>>;
@@ -0,0 +1 @@
1
+ export declare const getTextbookListApi: (query: any) => Promise<import("axios").AxiosResponse<any, any>>;
@@ -0,0 +1 @@
1
+ export declare const getUserByIdApi: (id: number) => Promise<import("axios").AxiosResponse<any, any>>;
@@ -0,0 +1,15 @@
1
+ import { FC } from "react";
2
+ import { LessonAttendance, LessonResponse } from "../../configs/types";
3
+ interface AttendanceCourseTableProps {
4
+ data: LessonAttendance[];
5
+ containerProps?: any;
6
+ listHeight?: number;
7
+ listWidth?: number;
8
+ mainTeacherName: string;
9
+ courseName: string;
10
+ courseId: number;
11
+ studentId: number;
12
+ onCheckInLesson: (lesson: LessonResponse, studentId: number) => void;
13
+ }
14
+ declare const AttendanceCourseTable: FC<AttendanceCourseTableProps>;
15
+ export default AttendanceCourseTable;
@@ -0,0 +1,10 @@
1
+ import { FC } from "react";
2
+ import { CourseAttendanceResponse, LessonResponse } from "../../configs/types";
3
+ interface Props {
4
+ studentId: number;
5
+ data: CourseAttendanceResponse;
6
+ onCheckInLesson: (lesson: LessonResponse, studentId: number) => void;
7
+ onLoad?: () => void;
8
+ }
9
+ declare const CourseAttendanceItem: FC<Props>;
10
+ export default CourseAttendanceItem;
@@ -0,0 +1,4 @@
1
+ import { FC } from "react";
2
+ import { CourseAttendanceListProps } from "../../configs/interfaces";
3
+ declare const CourseAttendanceList: FC<CourseAttendanceListProps>;
4
+ export default CourseAttendanceList;
@@ -0,0 +1,4 @@
1
+ import { FC } from "react";
2
+ import { TabContentProps } from "../../configs/interfaces";
3
+ declare const DrawerAttendanceTab: FC<TabContentProps>;
4
+ export default DrawerAttendanceTab;
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ import { Attendance, LessonResponse } from "../../configs/types";
3
+ declare type Props = {
4
+ lesson: LessonResponse;
5
+ lessonAttendance?: Attendance;
6
+ };
7
+ declare const LessonTooltip: ({ lesson, lessonAttendance }: Props) => React.JSX.Element;
8
+ export default LessonTooltip;
@@ -0,0 +1,15 @@
1
+ import { FC } from "react";
2
+ import { LessonAttendance, LessonResponse } from "../configs/types";
3
+ interface AttendanceCourseTableProps {
4
+ data: LessonAttendance[];
5
+ containerProps?: any;
6
+ listHeight?: number;
7
+ listWidth?: number;
8
+ mainTeacherName: string;
9
+ courseName: string;
10
+ courseId: number;
11
+ studentId: number;
12
+ onCheckInLesson: (lesson: LessonResponse, studentId: number) => void;
13
+ }
14
+ declare const AttendanceCourseTable: FC<AttendanceCourseTableProps>;
15
+ export default AttendanceCourseTable;
@@ -0,0 +1,10 @@
1
+ import { FC } from "react";
2
+ import { CourseAttendanceResponse, LessonResponse } from "../configs/types";
3
+ interface Props {
4
+ studentId: number;
5
+ data: CourseAttendanceResponse;
6
+ onCheckInLesson: (lesson: LessonResponse, studentId: number) => void;
7
+ onLoad?: () => void;
8
+ }
9
+ declare const CourseAttendanceItem: FC<Props>;
10
+ export default CourseAttendanceItem;
@@ -0,0 +1,4 @@
1
+ import { FC } from "react";
2
+ import { CourseAttendanceListProps } from "../configs/interfaces";
3
+ declare const CourseAttendanceList: FC<CourseAttendanceListProps>;
4
+ export default CourseAttendanceList;
@@ -0,0 +1,2 @@
1
+ declare const CustomTooltip: any;
2
+ export default CustomTooltip;
@@ -0,0 +1,4 @@
1
+ import { FC } from "react";
2
+ import { TabContentProps } from "../configs/interfaces";
3
+ declare const DrawerAttendanceTab: FC<TabContentProps>;
4
+ export default DrawerAttendanceTab;
@@ -0,0 +1,9 @@
1
+ import { FC } from "react";
2
+ import { TabContentProps } from "../configs/interfaces";
3
+ import { StudentInfo } from "../configs/types";
4
+ interface Props extends TabContentProps {
5
+ history: any;
6
+ student?: StudentInfo;
7
+ }
8
+ declare const DrawerExamResultTab: FC<Props>;
9
+ export default DrawerExamResultTab;
@@ -0,0 +1,9 @@
1
+ import { FC } from "react";
2
+ import { StudentInfo } from "../configs/types";
3
+ interface Props {
4
+ isLoading: boolean;
5
+ student?: StudentInfo;
6
+ onClose?: () => void;
7
+ }
8
+ declare const DrawerHeader: FC<Props>;
9
+ export default DrawerHeader;
@@ -0,0 +1,9 @@
1
+ import { FC } from "react";
2
+ import { TabContentProps } from "../configs/interfaces";
3
+ import { StudentInfo } from "../configs/types";
4
+ interface Props extends TabContentProps {
5
+ isLoading: boolean;
6
+ data?: StudentInfo;
7
+ }
8
+ declare const DrawerInfoTab: FC<Props>;
9
+ export default DrawerInfoTab;
@@ -0,0 +1,8 @@
1
+ import { FC } from "react";
2
+ import { TabContentProps } from "../configs/interfaces";
3
+ import { StudentInfo } from "../configs/types";
4
+ interface Props extends TabContentProps {
5
+ student?: StudentInfo;
6
+ }
7
+ declare const DrawerNoteTab: FC<Props>;
8
+ export default DrawerNoteTab;
@@ -0,0 +1,8 @@
1
+ import { FC, PropsWithChildren } from "react";
2
+ import { DrawerTab } from "../configs/enums";
3
+ interface Props extends PropsWithChildren {
4
+ value: DrawerTab;
5
+ isSelected: boolean;
6
+ }
7
+ declare const DrawerTabContent: FC<Props>;
8
+ export default DrawerTabContent;
@@ -0,0 +1,8 @@
1
+ import { FC, SyntheticEvent } from "react";
2
+ import { DrawerTab } from "../configs/enums";
3
+ interface Props {
4
+ selectedTab: DrawerTab;
5
+ onChangeTab: (e: SyntheticEvent, newValue: DrawerTab) => void;
6
+ }
7
+ declare const DrawerTabHeader: FC<Props>;
8
+ export default DrawerTabHeader;
@@ -0,0 +1,7 @@
1
+ import { FC } from "react";
2
+ import { TabContentProps } from "../configs/interfaces";
3
+ interface Props extends TabContentProps {
4
+ history: any;
5
+ }
6
+ declare const DrawerTextbookResultTab: FC<Props>;
7
+ export default DrawerTextbookResultTab;
@@ -0,0 +1,9 @@
1
+ import { FC } from "react";
2
+ import { TabContentProps } from "../../configs/interfaces";
3
+ import { StudentInfo } from "../../configs/types";
4
+ interface Props extends TabContentProps {
5
+ history: any;
6
+ student?: StudentInfo;
7
+ }
8
+ declare const DrawerExamResultTab: FC<Props>;
9
+ export default DrawerExamResultTab;
@@ -0,0 +1,13 @@
1
+ import { FC } from "react";
2
+ import { ExamSessionResponse, StudentInfo } from "../../configs/types";
3
+ interface Props {
4
+ open?: boolean;
5
+ student?: StudentInfo;
6
+ anchor?: "left" | "top" | "right" | "bottom";
7
+ onClose?: () => void;
8
+ width?: number | string;
9
+ data?: ExamSessionResponse;
10
+ history: any;
11
+ }
12
+ declare const ExamResultDrawer: FC<Props>;
13
+ export default ExamResultDrawer;
@@ -0,0 +1,10 @@
1
+ import { ExamSessionResponse } from "../../configs/types";
2
+ import { FC } from "react";
3
+ interface Props {
4
+ studentId: number;
5
+ data: ExamSessionResponse;
6
+ onItemClick: (data: ExamSessionResponse) => void;
7
+ onLoad?: () => void;
8
+ }
9
+ declare const ExamResultItem: FC<Props>;
10
+ export default ExamResultItem;
@@ -0,0 +1,4 @@
1
+ import { FC } from "react";
2
+ import { ExamResultListProps } from "../../configs/interfaces";
3
+ declare const ExanResultList: FC<ExamResultListProps>;
4
+ export default ExanResultList;
@@ -0,0 +1,13 @@
1
+ import { FC } from "react";
2
+ import { ExamSessionResponse, StudentInfo } from "../configs/types";
3
+ interface Props {
4
+ open?: boolean;
5
+ student?: StudentInfo;
6
+ anchor?: "left" | "top" | "right" | "bottom";
7
+ onClose?: () => void;
8
+ width?: number | string;
9
+ data?: ExamSessionResponse;
10
+ history: any;
11
+ }
12
+ declare const ExamResultDrawer: FC<Props>;
13
+ export default ExamResultDrawer;
@@ -0,0 +1,10 @@
1
+ import { ExamSessionResponse } from "../configs/types";
2
+ import { FC } from "react";
3
+ interface Props {
4
+ studentId: number;
5
+ data: ExamSessionResponse;
6
+ onItemClick: (data: ExamSessionResponse) => void;
7
+ onLoad?: () => void;
8
+ }
9
+ declare const ExamResultItem: FC<Props>;
10
+ export default ExamResultItem;
@@ -0,0 +1,4 @@
1
+ import { FC } from "react";
2
+ import { ExamResultListProps } from "../configs/interfaces";
3
+ declare const ExanResultList: FC<ExamResultListProps>;
4
+ export default ExanResultList;
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ import { Attendance, LessonResponse } from "../configs/types";
3
+ declare type Props = {
4
+ lesson: LessonResponse;
5
+ lessonAttendance?: Attendance;
6
+ };
7
+ declare const LessonTooltip: ({ lesson, lessonAttendance }: Props) => React.JSX.Element;
8
+ export default LessonTooltip;
@@ -0,0 +1,8 @@
1
+ import { FC } from "react";
2
+ import { TabContentProps } from "../../configs/interfaces";
3
+ import { StudentInfo } from "../../configs/types";
4
+ export interface DrawerNoteTabProps extends TabContentProps {
5
+ student?: StudentInfo;
6
+ }
7
+ declare const DrawerNoteTab: FC<DrawerNoteTabProps>;
8
+ export default DrawerNoteTab;
@@ -0,0 +1,14 @@
1
+ import { FC } from "react";
2
+ import { NoteResponse } from "../../../../utils";
3
+ import { StudentInfo } from "../../configs/types";
4
+ interface Props {
5
+ open: boolean;
6
+ onClose: () => void;
7
+ student?: StudentInfo;
8
+ data?: NoteResponse;
9
+ anchor?: "left" | "top" | "right" | "bottom";
10
+ width?: number | string;
11
+ showStudentInfo?: boolean;
12
+ }
13
+ declare const NoteDrawer: FC<Props>;
14
+ export default NoteDrawer;
@@ -0,0 +1,13 @@
1
+ import { FC } from "react";
2
+ import { NoteResponse } from "../../../utils";
3
+ import { StudentInfo } from "../configs/types";
4
+ interface Props {
5
+ open: boolean;
6
+ onClose: () => void;
7
+ student?: StudentInfo;
8
+ data?: NoteResponse;
9
+ anchor?: "left" | "top" | "right" | "bottom";
10
+ width?: number | string;
11
+ }
12
+ declare const NoteDrawer: FC<Props>;
13
+ export default NoteDrawer;
@@ -0,0 +1,7 @@
1
+ import { FC } from "react";
2
+ import { TabContentProps } from "../../configs/interfaces";
3
+ interface Props extends TabContentProps {
4
+ history: any;
5
+ }
6
+ declare const DrawerTextbookResultTab: FC<Props>;
7
+ export default DrawerTextbookResultTab;
@@ -0,0 +1,10 @@
1
+ import { FC } from "react";
2
+ import { TextbookResponse } from "../../configs/types";
3
+ interface Props {
4
+ studentId: number;
5
+ data: TextbookResponse;
6
+ onItemClick: (data: TextbookResponse) => void;
7
+ onLoad?: () => void;
8
+ }
9
+ declare const TextbookResultItem: FC<Props>;
10
+ export default TextbookResultItem;
@@ -0,0 +1,4 @@
1
+ import { FC } from "react";
2
+ import { TextbookListProps } from "../../configs/interfaces";
3
+ declare const TextbookResultList: FC<TextbookListProps>;
4
+ export default TextbookResultList;
@@ -0,0 +1,10 @@
1
+ import { FC } from "react";
2
+ import { TextbookResponse } from "../configs/types";
3
+ interface Props {
4
+ studentId: number;
5
+ data: TextbookResponse;
6
+ onItemClick: (data: TextbookResponse) => void;
7
+ onLoad?: () => void;
8
+ }
9
+ declare const TextbookResultItem: FC<Props>;
10
+ export default TextbookResultItem;
@@ -0,0 +1,4 @@
1
+ import { FC } from "react";
2
+ import { TextbookListProps } from "../configs/interfaces";
3
+ declare const TextbookResultList: FC<TextbookListProps>;
4
+ export default TextbookResultList;
@@ -0,0 +1,6 @@
1
+ import { BaseSearchQuery } from "../../../utils";
2
+ import { ExamSessionQuery, TextbookQuery } from "./types";
3
+ export declare const ATTENDANCE_COURSE_DEFAULT_FILTER: BaseSearchQuery<string>;
4
+ export declare const EXAM_SESSION_DEFAULT_FILTER: ExamSessionQuery;
5
+ export declare const TEXTBOOK_DEFAULT_FILTER: TextbookQuery;
6
+ export declare const FormatDate = "YYYY-MM-DD HH:mm:ss";
@@ -0,0 +1,12 @@
1
+ export declare enum DrawerTab {
2
+ Attendance = 0,
3
+ Note = 1,
4
+ Info = 2,
5
+ Exam = 3,
6
+ Textbook = 4
7
+ }
8
+ export declare enum StudentAttendanceStatus {
9
+ Attended = 0,
10
+ Absent = 1,
11
+ Late = 2
12
+ }
@@ -0,0 +1,26 @@
1
+ export declare const formatGrade: (grade: number, t: any, language?: string | undefined) => string;
2
+ export declare const formatLessonOrder: (index: number, t: any, language?: string | undefined) => string;
3
+ export declare const formatTime: (t: any, timeInMilliseconds: number) => any;
4
+ export declare const a11yProps: (index: number) => {
5
+ id: string;
6
+ "aria-controls": string;
7
+ sx: {
8
+ position: string;
9
+ fontSize: string;
10
+ fontWeight: number;
11
+ padding: string;
12
+ color: string;
13
+ mx: string;
14
+ "&::after": {
15
+ content: string;
16
+ position: string;
17
+ bottom: number;
18
+ left: number;
19
+ width: string;
20
+ height: string;
21
+ backgroundColor: string;
22
+ };
23
+ };
24
+ };
25
+ export declare const subtractTime: (time1: string, time2: string, t: any) => string;
26
+ export declare const formatTimeHHmm: (time: string) => string;
@@ -0,0 +1,44 @@
1
+ import { BoxProps } from "@mui/material";
2
+ import { DrawerTab } from "./enums";
3
+ import { CourseAttendanceResponse, ExamSessionResponse, LessonResponse, TextbookResponse } from "./types";
4
+ export interface StudentInfoDrawerProps {
5
+ studentId?: number;
6
+ open: boolean;
7
+ inert?: boolean;
8
+ anchor?: "left" | "top" | "right" | "bottom";
9
+ onClose?: () => void;
10
+ width?: number | string;
11
+ history: any;
12
+ }
13
+ export interface TabContentProps {
14
+ studentId: number;
15
+ selectedTab: DrawerTab;
16
+ value: DrawerTab;
17
+ }
18
+ export interface CourseAttendanceListProps {
19
+ studentId: number;
20
+ data: CourseAttendanceResponse[];
21
+ containerProps?: BoxProps;
22
+ isLoading: boolean;
23
+ listHeight?: number;
24
+ onLoadMore: () => void;
25
+ onCheckInLesson: (lesson: LessonResponse, studentId: number) => void;
26
+ }
27
+ export interface ExamResultListProps {
28
+ studentId: number;
29
+ data: ExamSessionResponse[];
30
+ containerProps?: BoxProps;
31
+ isLoading: boolean;
32
+ listHeight?: number;
33
+ onLoadMore: () => void;
34
+ onItemClick: (data: ExamSessionResponse) => void;
35
+ }
36
+ export interface TextbookListProps {
37
+ studentId: number;
38
+ data: TextbookResponse[];
39
+ containerProps?: BoxProps;
40
+ isLoading: boolean;
41
+ listHeight?: number;
42
+ onLoadMore: () => void;
43
+ onItemClick: (data: TextbookResponse) => void;
44
+ }