touchstudy-core 0.1.13 → 0.1.15

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 (42) hide show
  1. package/dist/assets/iconChatBubble.d.ts +3 -0
  2. package/dist/assets/iconChecked.d.ts +3 -0
  3. package/dist/assets/iconPersonActive.d.ts +3 -0
  4. package/dist/assets/iconPersonNoActive.d.ts +3 -0
  5. package/dist/assets/iconSendMessenger.d.ts +4 -0
  6. package/dist/components/Chats/ChatContainer.d.ts +0 -1
  7. package/dist/components/Chats/ChatHeader.d.ts +9 -6
  8. package/dist/components/Chats/ChatItem.d.ts +6 -21
  9. package/dist/components/Chats/ChatList.d.ts +1 -2
  10. package/dist/components/Chats/ChatRightItem.d.ts +1 -5
  11. package/dist/components/Chats/InputChat.d.ts +6 -3
  12. package/dist/components/Chats/apiClient/conversationService.d.ts +2 -0
  13. package/dist/components/Chats/configs/constants.d.ts +5 -0
  14. package/dist/components/Chats/configs/types.d.ts +79 -15
  15. package/dist/components/Chats/hooks/useChatContainer.d.ts +20 -25
  16. package/dist/components/Chats/hooks/useDialog.d.ts +6 -0
  17. package/dist/components/Chats/hooks/useMessageList.d.ts +3 -5
  18. package/dist/containers/Login/apiClient/index.d.ts +0 -1
  19. package/dist/containers/Login/views/Login.d.ts +3 -0
  20. package/dist/containers/Login/views/block/BlockLogin.d.ts +3 -0
  21. package/dist/index.css +349 -0
  22. package/dist/index.d.ts +12 -8
  23. package/dist/index.js +1652 -1225
  24. package/dist/index.js.map +1 -1
  25. package/dist/index.modern.js +1631 -1214
  26. package/dist/index.modern.js.map +1 -1
  27. package/dist/layouts/TheAcademyDropdown.d.ts +10 -0
  28. package/dist/redux/commons/action.d.ts +1 -0
  29. package/dist/services/academyService.d.ts +3 -0
  30. package/dist/services/accountService.d.ts +5 -0
  31. package/dist/utils/constants.d.ts +11 -7
  32. package/dist/utils/hooks/index.d.ts +3 -0
  33. package/dist/utils/hooks/useAutoAcademyDomain.d.ts +2 -0
  34. package/dist/utils/{useGoogleSignOut.d.ts → hooks/useGoogleSignOut.d.ts} +1 -1
  35. package/dist/utils/{useLanguage.d.ts → hooks/useLanguage.d.ts} +1 -1
  36. package/dist/utils/hooks/useLogin.d.ts +7 -0
  37. package/dist/utils/hooks/useSwitchAcademy.d.ts +10 -0
  38. package/dist/utils/types/academy.d.ts +6 -0
  39. package/dist/utils/types/login.d.ts +33 -0
  40. package/package.json +2 -1
  41. package/dist/components/Chats/hooks/useConversationList.d.ts +0 -20
  42. package/dist/components/Chats/hooks/useExamList.d.ts +0 -6
package/dist/index.css CHANGED
@@ -123,6 +123,215 @@
123
123
  background-color: #f1faff;
124
124
  color: #009ef7; }
125
125
 
126
+ ._3CMVp {
127
+ max-width: 268px;
128
+ border: 1px solid #EBEBFF !important;
129
+ border-radius: 6px !important;
130
+ display: flex !important;
131
+ justify-content: space-between !important; }
132
+
133
+ ._2ibYC {
134
+ width: 40px;
135
+ height: 40px;
136
+ border-radius: 50%;
137
+ margin-right: 12px;
138
+ display: flex;
139
+ justify-content: center;
140
+ align-items: center;
141
+ font-size: 20px;
142
+ font-weight: 600;
143
+ line-height: 1;
144
+ background-color: #5458D5;
145
+ color: #FFF; }
146
+ ._2ibYC img {
147
+ width: 100%;
148
+ height: 100%;
149
+ border-radius: 50%;
150
+ -o-object-fit: cover;
151
+ object-fit: cover; }
152
+
153
+ ._1JMRU {
154
+ max-width: 268px;
155
+ padding: 8px !important;
156
+ border: 1px solid #EBEBFF !important;
157
+ border-radius: 6px !important;
158
+ display: flex !important;
159
+ justify-content: space-between !important; }
160
+
161
+ ._N4FNf {
162
+ width: 34px;
163
+ height: 34px;
164
+ display: flex;
165
+ justify-content: center;
166
+ align-items: center; }
167
+ ._N4FNf svg {
168
+ fill: #5458D5; }
169
+
170
+ ._31Dr0 {
171
+ width: 100%;
172
+ top: calc(100% + 4px) !important;
173
+ left: unset !important;
174
+ right: 0 !important;
175
+ transform: none !important;
176
+ border-radius: 6px;
177
+ box-shadow: 0px 8px 15px #989898;
178
+ border: none;
179
+ padding: 0 8px; }
180
+ ._31Dr0:after {
181
+ display: none; }
182
+ ._31Dr0 ._ToOW_ {
183
+ background: transparent; }
184
+
185
+ ._3bjcz {
186
+ font-size: 14px;
187
+ line-height: 1; }
188
+ ._3bjcz:active {
189
+ background-color: transparent !important; }
190
+
191
+ ._31ZQk {
192
+ --bs-gutter-x: 0;
193
+ --bs-gutter-y: 0;
194
+ display: flex;
195
+ flex-wrap: wrap;
196
+ margin-top: calc(-1 * var(--bs-gutter-y));
197
+ margin-right: calc(-.5 * var(--bs-gutter-x));
198
+ margin-left: calc(-.5 * var(--bs-gutter-x)); }
199
+ ._31ZQk ._3yXyK {
200
+ flex: 0 0 calc((2/12)*100%);
201
+ max-width: calc((2/12)*100%);
202
+ padding-right: calc(var(--bs-gutter-x) * .5);
203
+ padding-left: calc(var(--bs-gutter-x) * .5);
204
+ margin-top: var(--bs-gutter-y); }
205
+ ._31ZQk ._1RsJQ {
206
+ flex: 0 0 25%;
207
+ max-width: 25%;
208
+ padding-right: calc(var(--bs-gutter-x) * .5);
209
+ padding-left: calc(var(--bs-gutter-x) * .5);
210
+ margin-top: var(--bs-gutter-y); }
211
+ ._31ZQk ._L42CP {
212
+ flex: 0 0 calc((5/12)*100%);
213
+ max-width: calc((5/12)*100%);
214
+ padding-right: calc(var(--bs-gutter-x) * .5);
215
+ padding-left: calc(var(--bs-gutter-x) * .5);
216
+ margin-top: var(--bs-gutter-y); }
217
+ ._31ZQk ._2u6eL {
218
+ flex: 0 0 calc((10/12)*100%);
219
+ max-width: calc((10/12)*100%);
220
+ padding-right: calc(var(--bs-gutter-x) * .5);
221
+ padding-left: calc(var(--bs-gutter-x) * .5);
222
+ margin-top: var(--bs-gutter-y); }
223
+
224
+ ._8x7OP {
225
+ --bs-gutter-x: 1.5rem;
226
+ --bs-gutter-y: 0;
227
+ display: flex;
228
+ flex-wrap: wrap;
229
+ margin-top: calc(-1 * var(--bs-gutter-y));
230
+ margin-right: calc(-.5 * var(--bs-gutter-x));
231
+ margin-left: calc(-.5 * var(--bs-gutter-x)); }
232
+ ._8x7OP ._1JmTh {
233
+ flex: 1 0;
234
+ width: 100%;
235
+ max-width: 100%;
236
+ padding-right: calc(var(--bs-gutter-x) * .5);
237
+ padding-left: calc(var(--bs-gutter-x) * .5);
238
+ margin-top: var(--bs-gutter-y); }
239
+ ._8x7OP ._1RsJQ {
240
+ flex: 0 0 25%;
241
+ max-width: 25%;
242
+ padding-right: calc(var(--bs-gutter-x) * .5);
243
+ padding-left: calc(var(--bs-gutter-x) * .5);
244
+ margin-top: var(--bs-gutter-y); }
245
+ ._8x7OP ._3HO1e {
246
+ flex: 0 0 calc((4/12)*100%);
247
+ max-width: calc((4/12)*100%);
248
+ padding-right: calc(var(--bs-gutter-x) * .5);
249
+ padding-left: calc(var(--bs-gutter-x) * .5);
250
+ margin-top: var(--bs-gutter-y); }
251
+ ._8x7OP ._L42CP {
252
+ flex: 0 0 calc((5/12)*100%);
253
+ max-width: calc((5/12)*100%);
254
+ padding-right: calc(var(--bs-gutter-x) * .5);
255
+ padding-left: calc(var(--bs-gutter-x) * .5);
256
+ margin-top: var(--bs-gutter-y); }
257
+ ._8x7OP ._Oy31M {
258
+ flex: 0 0 calc((8/12)*100%);
259
+ max-width: calc((8/12)*100%);
260
+ padding-right: calc(var(--bs-gutter-x) * .5);
261
+ padding-left: calc(var(--bs-gutter-x) * .5);
262
+ margin-top: var(--bs-gutter-y); }
263
+ ._8x7OP ._3aUKo {
264
+ flex: 0 0 calc((12/12)*100%);
265
+ max-width: calc((12/12)*100%);
266
+ padding-right: calc(var(--bs-gutter-x) * .5);
267
+ padding-left: calc(var(--bs-gutter-x) * .5);
268
+ margin-top: var(--bs-gutter-y); }
269
+
270
+ ._39LRs {
271
+ width: 100%;
272
+ padding-right: calc(1.5rem * 0.5);
273
+ padding-left: calc(1.5rem * 0.5);
274
+ margin-right: auto;
275
+ margin-left: auto; }
276
+ @media (min-width: 576px) {
277
+ ._39LRs {
278
+ max-width: 540px; } }
279
+ @media (min-width: 768px) {
280
+ ._39LRs {
281
+ max-width: 720px; } }
282
+ @media (min-width: 992px) {
283
+ ._39LRs {
284
+ max-width: 960px; } }
285
+ @media (min-width: 1200px) {
286
+ ._39LRs {
287
+ max-width: 1140px; } }
288
+ @media (min-width: 1400px) {
289
+ ._39LRs {
290
+ max-width: 1320px; } }
291
+
292
+ .__Ut-u {
293
+ margin-bottom: 0.5rem; }
294
+
295
+ ._2k4dX {
296
+ display: block;
297
+ width: 100%;
298
+ padding: 0.375rem 0.75rem;
299
+ font-size: 1rem;
300
+ font-weight: 400;
301
+ line-height: 1.5;
302
+ color: #212529;
303
+ -webkit-appearance: none;
304
+ -moz-appearance: none;
305
+ appearance: none;
306
+ background-color: #fff;
307
+ background-clip: padding-box;
308
+ border: 1px solid #dee2e6;
309
+ border-radius: 0.375rem;
310
+ transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; }
311
+
312
+ ._2PWdX {
313
+ display: inline-block;
314
+ padding: 0.375rem 0.75rem;
315
+ font-size: 1rem;
316
+ font-weight: 400;
317
+ line-height: 1.5;
318
+ color: #0d6efd;
319
+ text-align: center;
320
+ text-decoration: none;
321
+ vertical-align: middle;
322
+ cursor: pointer;
323
+ -webkit-user-select: none;
324
+ -moz-user-select: none;
325
+ user-select: none;
326
+ border: 1px solid #0d6efd;
327
+ border-radius: 0.375rem;
328
+ background-color: transparent;
329
+ transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out; }
330
+ ._2PWdX:hover {
331
+ color: #fff !important;
332
+ background-color: #0d6efd;
333
+ border-color: #0d6efd !important; }
334
+
126
335
  ._2oGcJ {
127
336
  width: 48px;
128
337
  height: 48px;
@@ -172,6 +381,146 @@
172
381
  -webkit-box-orient: vertical;
173
382
  line-height: 42px; }
174
383
 
384
+ ._38A9k {
385
+ padding: 20px 27px; }
386
+
387
+ ._Jt5t0 {
388
+ min-height: 49px;
389
+ padding: 16px 24px;
390
+ display: flex;
391
+ align-items: center;
392
+ justify-content: space-between;
393
+ gap: 4px;
394
+ color: #5458D5;
395
+ border-bottom: 1px solid #E4E7EC;
396
+ border-right: 1px solid #E4E7EC; }
397
+
398
+ ._14DKj {
399
+ min-height: 49px;
400
+ padding: 16px 24px;
401
+ display: flex;
402
+ align-items: center;
403
+ justify-content: space-between;
404
+ gap: 4px;
405
+ background-color: #5458D5;
406
+ color: #FFFFFF;
407
+ border-bottom: 1px solid #E4E7EC;
408
+ border-right: 1px solid #E4E7EC; }
409
+
410
+ ._qHGiR {
411
+ min-height: 49px;
412
+ padding: 16px 24px;
413
+ border-bottom: 1px solid #E4E7EC; }
414
+
415
+ ._2iY67 {
416
+ padding-left: 16px;
417
+ padding-right: 16px;
418
+ padding-bottom: 20px; }
419
+
420
+ ._2iY67 svg, ._3pCw0 svg {
421
+ left: 10px;
422
+ top: 50%;
423
+ transform: translateY(-50%);
424
+ z-index: 10; }
425
+
426
+ ._2iY67 input {
427
+ padding-left: 32px;
428
+ border: 1px solid var(--gray-500);
429
+ background-color: var(--bg-100) !important;
430
+ border-radius: 6px; }
431
+
432
+ ._zILbw {
433
+ background-color: #F9FAFB; }
434
+
435
+ ._38gsM {
436
+ display: inline-block !important; }
437
+
438
+ ._Lfzyw {
439
+ padding: 4px; }
440
+
441
+ ._1X73E {
442
+ padding: 8px 12px;
443
+ border: 1px solid #E4E7EC;
444
+ border-radius: 6px;
445
+ background-color: #FFFFFF; }
446
+
447
+ ._32V7T {
448
+ padding: 8px 12px;
449
+ background-color: #5458D5;
450
+ color: #FFFFFF;
451
+ border-radius: 6px; }
452
+
453
+ ._2Uul2 {
454
+ overflow-y: scroll; }
455
+ ._2Uul2::-webkit-scrollbar {
456
+ display: none; }
457
+
458
+ ._395lb {
459
+ padding: 8px 12px !important;
460
+ display: flex !important;
461
+ align-items: center !important;
462
+ color: #FFFFFF !important;
463
+ gap: 8px !important;
464
+ min-width: 108px !important;
465
+ border-radius: 6px !important; }
466
+
467
+ ._gDYwm {
468
+ padding: 12px 24px !important;
469
+ display: flex !important;
470
+ align-items: center !important;
471
+ color: #FFFFFF !important;
472
+ background-color: #5458D5 !important;
473
+ gap: 8px !important;
474
+ width: 100%;
475
+ border-radius: 6px !important; }
476
+
477
+ ._22TX5 {
478
+ padding: 12px;
479
+ border: 1px solid #97A1AF;
480
+ border-radius: 6px; }
481
+ ._22TX5 ::-moz-placeholder {
482
+ font-size: 13px;
483
+ line-height: 15.51px;
484
+ font-weight: 500;
485
+ color: #CED2DA; }
486
+ ._22TX5 ::placeholder {
487
+ font-size: 13px;
488
+ line-height: 15.51px;
489
+ font-weight: 500;
490
+ color: #CED2DA; }
491
+
492
+ ._1u-eg {
493
+ min-width: 120px !important;
494
+ padding: 12px !important;
495
+ border-radius: 6px !important;
496
+ background-color: transparent !important;
497
+ color: #5458D5; }
498
+
499
+ ._22r6_ {
500
+ min-width: 120px !important;
501
+ padding: 12px !important;
502
+ border-radius: 6px !important;
503
+ background-color: #5458D5 !important; }
504
+
505
+ ._jADIA {
506
+ font-weight: 600 !important;
507
+ font-size: 13px !important;
508
+ line-height: 15.51px !important;
509
+ color: #202B37 !important; }
510
+
511
+ ._WncPd {
512
+ width: 177px !important; }
513
+
514
+ ._2Uul2 {
515
+ overflow-y: scroll; }
516
+ ._2Uul2::-webkit-scrollbar {
517
+ display: none; }
518
+
519
+ ._3hz3H {
520
+ padding: 16px; }
521
+ ._3hz3H > div:last-child {
522
+ padding-bottom: 16px; }
523
+
175
524
  ._2uc_W {
176
525
  padding: 0.5rem 1.5rem;
177
526
  border-radius: 6px;
package/dist/index.d.ts CHANGED
@@ -1,23 +1,24 @@
1
1
  declare const historyCore: import("history").History<unknown>;
2
- import { setLoading, setAlert, setUser, setLanguage } from "./redux/commons/action";
3
- import { BASE_URL, ACCESS_TOKEN, PUSHER_CONFIG, EXAM_CHANNEL, EXAM_STUDENT_CHANNEL, DATE_MIN_VALUE, DATE_TIME_MIN_VALUE } from "./utils/constants";
2
+ import { setLoading, setAlert, setUser, setLanguage, setReFetchUserAcademies } from "./redux/commons/action";
3
+ import { BASE_URL, SUPER_ADMIN_BASE_URL, ACCESS_TOKEN, PUSHER_CONFIG, EXAM_CHANNEL, EXAM_STUDENT_CHANNEL, DATE_MIN_VALUE, DATE_TIME_MIN_VALUE, ACADEMY_DOMAIN, getAcademyDomain, AcademyHeaders } from "./utils/constants";
4
4
  import utcToLocalTime from "./utils/utcToLocalTime";
5
5
  import Login from "./containers/Login/views/Login";
6
6
  import store from "./store";
7
7
  import NotFound from "./components/Commons/NotFound";
8
8
  import Loading from "./components/Loading/Loading";
9
9
  import LayoutContext from "./layouts/LayoutContext";
10
- import { api } from "./configs/api";
10
+ import { api, apiUpload } from "./configs/api";
11
11
  import { ConfirmDialog } from "./components/Dialogs/ConfirmDialog";
12
12
  import CommonDialog from "./components/Dialogs/CommonDialog";
13
13
  import CommonAlert from "./components/Alerts/CommonAlert";
14
14
  import formatTime from "./utils/formatTime";
15
15
  import diffFromNow from "./utils/diffFromNow";
16
16
  import CustomPagination from "./components/Paginations/CustomPagination";
17
- import useGoogleSignOut from "./utils/useGoogleSignOut";
17
+ import useGoogleSignOut from "./utils/hooks/useGoogleSignOut";
18
18
  import { ExamEvent } from "./utils/types";
19
19
  import i18n from "./i18n";
20
20
  import TheLanguageDropdown from "./layouts/TheLanguageDropdown";
21
+ import TheAcademyDropdown from "./layouts/TheAcademyDropdown";
21
22
  import { useTranslation, I18nextProvider } from "react-i18next";
22
23
  import minutesToTimeSpan from "./utils/minutesToTimeSpan";
23
24
  import toISOString from "./utils/toISOString";
@@ -29,12 +30,11 @@ import { ChatItemType, IChatItemProps } from "./components/Chats/ChatItem";
29
30
  import { IChatHeaderProps } from "./components/Chats/ChatHeader";
30
31
  import { IInputChatProps } from "./components/Chats/InputChat";
31
32
  import useChatContainer from "./components/Chats/hooks/useChatContainer";
32
- import useConversationList from "./components/Chats/hooks/useConversationList";
33
- import { ConversationResponse, ExamResponse } from "./components/Chats/configs/types";
33
+ import { ConversationResponse } from "./components/Chats/configs/types";
34
34
  import usePusherConversation from "./components/Chats/hooks/usePusherConversation";
35
35
  import { ToastContainer, toast } from "react-toastify";
36
36
  import { Role } from "./containers/Login/configs/constants";
37
- import useLanguage from "./utils/useLanguage";
37
+ import useLanguage from "./utils/hooks/useLanguage";
38
38
  import { LANGUAGES } from "./configs/constants";
39
39
  import CustomCreatable from "./components/Selects/CustomCreatable";
40
40
  import moment from "moment";
@@ -42,4 +42,8 @@ import CustomAsyncSelect from "./components/Selects/CustomAsyncSelect";
42
42
  import ExamDetailView from "./containers/Exams/views/ExamDetailView";
43
43
  import { ExamDetailViewProps } from "./containers/Exams/configs/interfaces";
44
44
  import { Exam, Question, ArticleGroup } from "./containers/Exams/configs/types";
45
- export { diffFromNow, formatTime, utcToLocalTime, setLoading, BASE_URL, ACCESS_TOKEN, Login, store, historyCore, setAlert, setUser, Loading, NotFound, LayoutContext, api, ConfirmDialog, CommonDialog, CommonAlert, CustomPagination, useGoogleSignOut, PUSHER_CONFIG, ExamEvent, EXAM_CHANNEL, EXAM_STUDENT_CHANNEL, setLanguage, i18n, TheLanguageDropdown, useTranslation, I18nextProvider, DATE_MIN_VALUE, DATE_TIME_MIN_VALUE, minutesToTimeSpan, toISOString, canAccessRoute, CustomSelect, CustomAsyncSelect, getAccessToken, ChatContainer, IChatContainerProps, IChatItemProps, IChatHeaderProps, IInputChatProps, ChatItemType, useChatContainer, useConversationList, ConversationResponse, ExamResponse, usePusherConversation, ToastContainer, toast, Role, useLanguage, LANGUAGES, CustomCreatable, moment, ExamDetailView, ExamDetailViewProps, Exam, Question, ArticleGroup };
45
+ import { useAutoAcademyDomain, useLogin } from "./utils/hooks";
46
+ import { LoginAccessTokenRequest, LoginRequest } from "./utils/types/login";
47
+ import useSwitchAcademy from "./utils/hooks/useSwitchAcademy";
48
+ import * as ChatTypes from "./components/Chats/configs/types";
49
+ export { diffFromNow, formatTime, utcToLocalTime, setLoading, BASE_URL, SUPER_ADMIN_BASE_URL, ACCESS_TOKEN, Login, store, historyCore, setAlert, setUser, Loading, NotFound, LayoutContext, api, apiUpload, ConfirmDialog, CommonDialog, CommonAlert, CustomPagination, useGoogleSignOut, PUSHER_CONFIG, ExamEvent, EXAM_CHANNEL, EXAM_STUDENT_CHANNEL, setLanguage, i18n, TheLanguageDropdown, TheAcademyDropdown, useTranslation, I18nextProvider, DATE_MIN_VALUE, DATE_TIME_MIN_VALUE, ACADEMY_DOMAIN, minutesToTimeSpan, toISOString, canAccessRoute, CustomSelect, CustomAsyncSelect, getAccessToken, ChatContainer, IChatContainerProps, IChatItemProps, IChatHeaderProps, IInputChatProps, ChatItemType, useChatContainer, ConversationResponse, usePusherConversation, ToastContainer, toast, Role, useLanguage, useSwitchAcademy, LANGUAGES, CustomCreatable, moment, ExamDetailView, ExamDetailViewProps, Exam, Question, ArticleGroup, getAcademyDomain, useLogin, useAutoAcademyDomain, LoginAccessTokenRequest, LoginRequest, setReFetchUserAcademies, ChatTypes, AcademyHeaders };