touchstudy-core 0.1.51 → 0.1.53
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/dist/containers/Academies/apiClients/academyService.d.ts +2 -0
- package/dist/containers/Academies/components/AcademyCard.d.ts +9 -0
- package/dist/containers/Academies/configs/types.d.ts +6 -0
- package/dist/containers/Academies/hooks/useAcademyList.d.ts +7 -0
- package/dist/containers/Academies/views/AcademyList.d.ts +12 -0
- package/dist/containers/ExamResult/hooks/useExamResult.d.ts +1 -1
- package/dist/containers/ExamResult/views/ExamResultV2.d.ts +1 -1
- package/dist/containers/Login/hooks/useLogin.d.ts +1 -1
- package/dist/containers/Login/hooks/useLoginWithPassword.d.ts +2 -2
- package/dist/containers/Login/views/LoginWithPassword.d.ts +2 -2
- package/dist/index.d.ts +2 -1
- package/dist/index.js +253 -71
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +254 -73
- package/dist/index.modern.js.map +1 -1
- package/dist/layouts/Header.d.ts +1 -1
- package/dist/layouts/LayoutContext.d.ts +0 -1
- package/dist/layouts/TheAcademyDropdown.d.ts +1 -1
- package/dist/utils/hooks/useAutoAcademyDomain.d.ts +1 -1
- package/dist/utils/hooks/useGoogleSignOut.d.ts +0 -1
- package/dist/utils/hooks/useLogin.d.ts +1 -1
- package/dist/utils/hooks/useSwitchAcademy.d.ts +1 -1
- package/dist/utils/pusherTo.d.ts +1 -0
- package/dist/utils/types.d.ts +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
@@ -44,6 +44,10 @@ var TextField = _interopDefault(require('@mui/material/TextField'));
|
|
44
44
|
var Paper = _interopDefault(require('@mui/material/Paper'));
|
45
45
|
var Grid = _interopDefault(require('@mui/material/Grid'));
|
46
46
|
var reactRouterDom = require('react-router-dom');
|
47
|
+
var Card = _interopDefault(require('@mui/material/Card'));
|
48
|
+
var CardActions = _interopDefault(require('@mui/material/CardActions'));
|
49
|
+
var CardContent = _interopDefault(require('@mui/material/CardContent'));
|
50
|
+
var CardMedia = _interopDefault(require('@mui/material/CardMedia'));
|
47
51
|
|
48
52
|
var setLoading = toolkit.createAction("common/setLoading");
|
49
53
|
var setAlert = toolkit.createAction("common/setAlert");
|
@@ -483,14 +487,16 @@ var useGoogleSignOut = function useGoogleSignOut(props) {
|
|
483
487
|
};
|
484
488
|
};
|
485
489
|
|
490
|
+
var pushTo = function pushTo(history, data) {
|
491
|
+
if (history.push) history.push(data);else history(data);
|
492
|
+
};
|
493
|
+
|
486
494
|
var ERROR_MESSAGE = "request_login_fail";
|
487
|
-
var useLogin = function useLogin(
|
495
|
+
var useLogin = function useLogin(history, homeAcademyUrl, homeUrl, registerUrl) {
|
488
496
|
var dispatch = reactRedux.useDispatch();
|
489
497
|
var _useTranslation = reactI18next.useTranslation(),
|
490
498
|
t = _useTranslation.t;
|
491
|
-
var _useGoogleSignOut = useGoogleSignOut({
|
492
|
-
onNavigate: onNavigate
|
493
|
-
}),
|
499
|
+
var _useGoogleSignOut = useGoogleSignOut({}),
|
494
500
|
handleSignOut = _useGoogleSignOut.handleSignOut;
|
495
501
|
var searchParams = new URLSearchParams(window.location.search);
|
496
502
|
var paramDomain = searchParams.get('domain');
|
@@ -586,9 +592,7 @@ var useLogin = function useLogin(onNavigate, homeAcademyUrl, homeUrl, registerUr
|
|
586
592
|
!data.academyDomain && localStorage.removeItem(ACADEMY_DOMAIN);
|
587
593
|
!!data.academyDomain && localStorage.setItem(ACADEMY_DOMAIN, data.academyDomain);
|
588
594
|
dispatch(setUser(_extends({}, data)));
|
589
|
-
if (redirectUrl)
|
590
|
-
onNavigate(redirectUrl);
|
591
|
-
}
|
595
|
+
if (redirectUrl) pushTo(history, redirectUrl);
|
592
596
|
};
|
593
597
|
return {
|
594
598
|
handleLoginGoogle: handleLoginGoogle,
|
@@ -821,6 +825,8 @@ var LANGUAGES = [{
|
|
821
825
|
}];
|
822
826
|
|
823
827
|
var useLanguage = function useLanguage() {
|
828
|
+
var searchParams = new URLSearchParams(window.location.search);
|
829
|
+
var langParam = searchParams.get("lang");
|
824
830
|
var defaultLanguage = !!localStorage.getItem("language") ? localStorage.getItem("language") : navigator.language || LANGUAGES[DEFAULT_LANGUAGE_INDEX].code;
|
825
831
|
var dispatch = reactRedux.useDispatch();
|
826
832
|
var _useTranslation = reactI18next.useTranslation(),
|
@@ -844,12 +850,23 @@ var useLanguage = function useLanguage() {
|
|
844
850
|
i18n.changeLanguage(language.code);
|
845
851
|
moment.locale(language.momentLangCode);
|
846
852
|
localStorage.setItem("language", language.code);
|
847
|
-
setItemLanguage(language.code);
|
848
853
|
dispatch(setLanguage(language.code));
|
854
|
+
searchParams.set("lang", language.code);
|
849
855
|
};
|
856
|
+
var handleChangeLangParam = React.useCallback(function () {
|
857
|
+
if (!langParam) return;
|
858
|
+
var languageItem = LANGUAGES.find(function (i) {
|
859
|
+
return i.code === langParam.toLowerCase();
|
860
|
+
});
|
861
|
+
if (!languageItem) languageItem = LANGUAGES[DEFAULT_LANGUAGE_INDEX];
|
862
|
+
setItemLanguage(languageItem.code);
|
863
|
+
}, [searchParams.toString(), language]);
|
850
864
|
React.useEffect(function () {
|
851
865
|
changeLanguageApp(language);
|
852
866
|
}, [language]);
|
867
|
+
React.useEffect(function () {
|
868
|
+
handleChangeLangParam();
|
869
|
+
}, [langParam]);
|
853
870
|
var currentLanguage = React.useMemo(function () {
|
854
871
|
var currentLang = LANGUAGES.find(function (i) {
|
855
872
|
return i.code === language;
|
@@ -873,7 +890,7 @@ var schema = yup.object({
|
|
873
890
|
});
|
874
891
|
var BlockLogin = function BlockLogin(_ref) {
|
875
892
|
var defaultInfo = _ref.defaultInfo,
|
876
|
-
|
893
|
+
history = _ref.history,
|
877
894
|
_ref$role = _ref.role,
|
878
895
|
role = _ref$role === void 0 ? exports.Role.Student : _ref$role,
|
879
896
|
homeAcademyUrl = _ref.homeAcademyUrl,
|
@@ -883,7 +900,7 @@ var BlockLogin = function BlockLogin(_ref) {
|
|
883
900
|
currentLanguage = _useLanguage.currentLanguage;
|
884
901
|
var _useTranslation = reactI18next.useTranslation(),
|
885
902
|
t = _useTranslation.t;
|
886
|
-
var _useLogin = useLogin(
|
903
|
+
var _useLogin = useLogin(history, homeAcademyUrl, homeUrl, registerUrl),
|
887
904
|
handleLoginGoogle = _useLogin.handleLoginGoogle;
|
888
905
|
var onSuccessGoogle = function onSuccessGoogle(res) {
|
889
906
|
try {
|
@@ -911,7 +928,7 @@ var BlockLogin = function BlockLogin(_ref) {
|
|
911
928
|
};
|
912
929
|
var onFailureGoogle = function onFailureGoogle(err) {
|
913
930
|
console.log("error: login google", err);
|
914
|
-
|
931
|
+
pushTo(history, "/login");
|
915
932
|
};
|
916
933
|
return React__default.createElement(material.Paper, {
|
917
934
|
elevation: 3,
|
@@ -971,7 +988,7 @@ var defaultInfo = {
|
|
971
988
|
captcha: "",
|
972
989
|
rememberMe: false
|
973
990
|
};
|
974
|
-
var useLogin$1 = function useLogin(
|
991
|
+
var useLogin$1 = function useLogin(history) {
|
975
992
|
var _useState = React.useState(false),
|
976
993
|
openLogin = _useState[0],
|
977
994
|
setOpenLogin = _useState[1];
|
@@ -988,14 +1005,14 @@ var useLogin$1 = function useLogin(onNavigate) {
|
|
988
1005
|
var start = function start() {
|
989
1006
|
gapiScript.gapi.client.init({
|
990
1007
|
clientId: GOOGLE_CLIENT_ID,
|
991
|
-
scope:
|
1008
|
+
scope: "email"
|
992
1009
|
});
|
993
1010
|
};
|
994
|
-
!!gapiScript.gapi && gapiScript.gapi.load(
|
1011
|
+
!!gapiScript.gapi && gapiScript.gapi.load("client:auth2", start);
|
995
1012
|
}, [gapiScript.gapi]);
|
996
1013
|
React.useEffect(function () {
|
997
1014
|
var token = getAccessToken$1();
|
998
|
-
if (!!token)
|
1015
|
+
if (!!token) pushTo(history, "/");
|
999
1016
|
}, []);
|
1000
1017
|
return {
|
1001
1018
|
defaultInfo: defaultInfo,
|
@@ -1008,11 +1025,11 @@ var useLogin$1 = function useLogin(onNavigate) {
|
|
1008
1025
|
};
|
1009
1026
|
};
|
1010
1027
|
|
1011
|
-
var _excluded = ["
|
1028
|
+
var _excluded = ["history"];
|
1012
1029
|
var Login = function Login(_ref) {
|
1013
|
-
var
|
1030
|
+
var history = _ref.history,
|
1014
1031
|
rest = _objectWithoutPropertiesLoose(_ref, _excluded);
|
1015
|
-
var _useLogin = useLogin$1(
|
1032
|
+
var _useLogin = useLogin$1(history),
|
1016
1033
|
defaultInfo = _useLogin.defaultInfo;
|
1017
1034
|
return React__default.createElement("div", {
|
1018
1035
|
className: styles["login"] + " font-family-lato"
|
@@ -1026,7 +1043,7 @@ var Login = function Login(_ref) {
|
|
1026
1043
|
className: "d-flex justify-content-center h-100 align-items-center"
|
1027
1044
|
}, React__default.createElement(BlockLogin, Object.assign({
|
1028
1045
|
defaultInfo: defaultInfo,
|
1029
|
-
|
1046
|
+
history: history
|
1030
1047
|
}, rest)))));
|
1031
1048
|
};
|
1032
1049
|
|
@@ -1351,11 +1368,8 @@ var LayoutContext = function LayoutContext(_ref) {
|
|
1351
1368
|
var children = _ref.children,
|
1352
1369
|
role = _ref.role,
|
1353
1370
|
_ref$pusherRegisterUr = _ref.pusherRegisterUrls,
|
1354
|
-
pusherRegisterUrls = _ref$pusherRegisterUr === void 0 ? [] : _ref$pusherRegisterUr
|
1355
|
-
|
1356
|
-
var _useGoogleSignOut = useGoogleSignOut({
|
1357
|
-
onNavigate: onNavigate
|
1358
|
-
}),
|
1371
|
+
pusherRegisterUrls = _ref$pusherRegisterUr === void 0 ? [] : _ref$pusherRegisterUr;
|
1372
|
+
var _useGoogleSignOut = useGoogleSignOut({}),
|
1359
1373
|
handleSignOut = _useGoogleSignOut.handleSignOut;
|
1360
1374
|
var _useTranslation = reactI18next.useTranslation(),
|
1361
1375
|
t = _useTranslation.t;
|
@@ -3625,12 +3639,12 @@ var TheLanguageDropdown = function TheLanguageDropdown() {
|
|
3625
3639
|
})));
|
3626
3640
|
};
|
3627
3641
|
|
3628
|
-
var useSwitchAcademy = function useSwitchAcademy(role,
|
3642
|
+
var useSwitchAcademy = function useSwitchAcademy(role, history, homeAcademyUrl, homeUrl) {
|
3629
3643
|
if (role === void 0) {
|
3630
3644
|
role = exports.Role.Student;
|
3631
3645
|
}
|
3632
3646
|
var dispatch = reactRedux.useDispatch();
|
3633
|
-
var _useLogin = useLogin(
|
3647
|
+
var _useLogin = useLogin(history, homeAcademyUrl, homeUrl),
|
3634
3648
|
handleLoginAccessToken = _useLogin.handleLoginAccessToken;
|
3635
3649
|
var _useState = React.useState(false),
|
3636
3650
|
dropdownOpen = _useState[0],
|
@@ -3752,11 +3766,11 @@ var MenuItemCustom = material.styled(MenuItem)(function () {
|
|
3752
3766
|
var TheAcademyDropdown = function TheAcademyDropdown(_ref) {
|
3753
3767
|
var _user$roles, _selectedAcademy$name, _selectedAcademy$name2;
|
3754
3768
|
var role = _ref.role,
|
3755
|
-
|
3769
|
+
history = _ref.history,
|
3756
3770
|
homeAcademyUrl = _ref.homeAcademyUrl,
|
3757
3771
|
homeUrl = _ref.homeUrl,
|
3758
3772
|
hideAcademyName = _ref.hideAcademyName;
|
3759
|
-
var _useSwitchAcademy = useSwitchAcademy(role,
|
3773
|
+
var _useSwitchAcademy = useSwitchAcademy(role, history, homeAcademyUrl, homeUrl),
|
3760
3774
|
academyList = _useSwitchAcademy.academyList,
|
3761
3775
|
handleSwitchAcademy = _useSwitchAcademy.handleSwitchAcademy,
|
3762
3776
|
selectedAcademy = _useSwitchAcademy.selectedAcademy;
|
@@ -8561,60 +8575,79 @@ var TextbookViewDetail = function TextbookViewDetail(props) {
|
|
8561
8575
|
}));
|
8562
8576
|
};
|
8563
8577
|
|
8564
|
-
var useAutoAcademyDomain = function useAutoAcademyDomain(logout, history, superUrls, homeUrl, homeAcademyUrl) {
|
8578
|
+
var useAutoAcademyDomain = function useAutoAcademyDomain(logout, history, superUrls, homeUrl, homeAcademyUrl, isAuthPage) {
|
8579
|
+
if (isAuthPage === void 0) {
|
8580
|
+
isAuthPage = true;
|
8581
|
+
}
|
8565
8582
|
var searchParams = new URLSearchParams(window.location.search);
|
8566
8583
|
var user = reactRedux.useSelector(function (state) {
|
8567
8584
|
var _state$common;
|
8568
8585
|
return state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : _state$common.user;
|
8569
8586
|
});
|
8587
|
+
var language = reactRedux.useSelector(function (state) {
|
8588
|
+
var _state$common2;
|
8589
|
+
return state === null || state === void 0 ? void 0 : (_state$common2 = state.common) === null || _state$common2 === void 0 ? void 0 : _state$common2.language;
|
8590
|
+
});
|
8570
8591
|
var initialAcademySearchParam = function initialAcademySearchParam() {
|
8571
8592
|
var paramAcademyDomain = searchParams.get("domain");
|
8593
|
+
var paramLang = searchParams.get("lang");
|
8572
8594
|
var domain = getAcademyDomain();
|
8573
8595
|
var pathname = window.location.pathname.toLowerCase();
|
8574
|
-
|
8575
|
-
|
8596
|
+
var isUpdateSearchParam = false;
|
8597
|
+
if ((!paramLang || paramLang.toLowerCase() !== language) && language) {
|
8598
|
+
searchParams.set("lang", language);
|
8599
|
+
isUpdateSearchParam = true;
|
8600
|
+
}
|
8601
|
+
if (!!user !== isAuthPage) return;
|
8602
|
+
var academyDomain = user === null || user === void 0 ? void 0 : user.academyDomain;
|
8576
8603
|
if (!academyDomain) {
|
8577
8604
|
if (!superUrls.some(function (i) {
|
8578
8605
|
return pathname.startsWith(i);
|
8579
8606
|
})) {
|
8580
|
-
|
8607
|
+
!paramAcademyDomain && domain && searchParams.set("domain", domain);
|
8608
|
+
pushTo(history, {
|
8581
8609
|
pathname: homeUrl,
|
8582
|
-
search:
|
8610
|
+
search: searchParams.toString()
|
8583
8611
|
});
|
8612
|
+
return;
|
8584
8613
|
}
|
8585
|
-
if (
|
8586
|
-
searchParams
|
8587
|
-
pushTo({
|
8588
|
-
|
8589
|
-
|
8590
|
-
|
8614
|
+
if (paramAcademyDomain) {
|
8615
|
+
searchParams["delete"]("domain");
|
8616
|
+
pushTo(history, _extends({}, window.location, {
|
8617
|
+
search: searchParams.toString()
|
8618
|
+
}));
|
8619
|
+
return;
|
8591
8620
|
}
|
8592
8621
|
} else {
|
8593
8622
|
if (superUrls.some(function (i) {
|
8594
8623
|
return pathname.startsWith(i);
|
8595
8624
|
})) {
|
8596
|
-
|
8625
|
+
searchParams["delete"]("domain");
|
8626
|
+
pushTo(history, {
|
8597
8627
|
pathname: homeAcademyUrl,
|
8598
|
-
search:
|
8628
|
+
search: searchParams.toString()
|
8599
8629
|
});
|
8630
|
+
return;
|
8600
8631
|
}
|
8601
8632
|
if (paramAcademyDomain && academyDomain.trim().toLocaleLowerCase() != (paramAcademyDomain === null || paramAcademyDomain === void 0 ? void 0 : paramAcademyDomain.trim().toLocaleLowerCase())) {
|
8602
8633
|
logout();
|
8634
|
+
return;
|
8603
8635
|
}
|
8604
|
-
if (!paramAcademyDomain
|
8605
|
-
searchParams.
|
8606
|
-
pushTo(_extends({}, window.location, {
|
8636
|
+
if (!paramAcademyDomain) {
|
8637
|
+
!paramAcademyDomain && searchParams.set("domain", academyDomain);
|
8638
|
+
pushTo(history, _extends({}, window.location, {
|
8607
8639
|
search: searchParams.toString()
|
8608
8640
|
}));
|
8641
|
+
return;
|
8609
8642
|
}
|
8610
8643
|
}
|
8611
|
-
|
8612
|
-
|
8613
|
-
|
8644
|
+
if (isUpdateSearchParam) pushTo(history, _extends({}, window.location, {
|
8645
|
+
search: searchParams.toString()
|
8646
|
+
}));
|
8614
8647
|
};
|
8615
8648
|
React.useEffect(function () {
|
8616
8649
|
initialAcademySearchParam();
|
8617
|
-
}, [window.location.pathname, user === null || user === void 0 ? void 0 : user.academyDomain]);
|
8650
|
+
}, [window.location.pathname, window.location.search, user === null || user === void 0 ? void 0 : user.academyDomain, language]);
|
8618
8651
|
};
|
8619
8652
|
|
8620
8653
|
var DEFAULT_PAGING_RESPONSE = {
|
@@ -9920,7 +9953,7 @@ var defaultSeries = function defaultSeries(t) {
|
|
9920
9953
|
}];
|
9921
9954
|
};
|
9922
9955
|
|
9923
|
-
var useExamResult = function useExamResult(searchParam,
|
9956
|
+
var useExamResult = function useExamResult(searchParam, history, examSessionId, studentId, code, handleChangeTab, selectedTab) {
|
9924
9957
|
var _allSeries$dataChartI;
|
9925
9958
|
if (examSessionId === void 0) {
|
9926
9959
|
examSessionId = 0;
|
@@ -10075,7 +10108,7 @@ var useExamResult = function useExamResult(searchParam, navigate, examSessionId,
|
|
10075
10108
|
}
|
10076
10109
|
};
|
10077
10110
|
var handleExit = function handleExit() {
|
10078
|
-
|
10111
|
+
pushTo(history, "/student/my-story/live-main");
|
10079
10112
|
};
|
10080
10113
|
var totalTime = React.useMemo(function () {
|
10081
10114
|
var _resultData$questions;
|
@@ -12856,14 +12889,14 @@ var useTab = function useTab() {
|
|
12856
12889
|
|
12857
12890
|
var ExamResultV2 = function ExamResultV2(_ref) {
|
12858
12891
|
var searchParams = _ref.searchParams,
|
12859
|
-
|
12892
|
+
history = _ref.history,
|
12860
12893
|
examSessionId = _ref.examSessionId,
|
12861
12894
|
studentId = _ref.studentId,
|
12862
12895
|
code = _ref.code;
|
12863
12896
|
var _useTab = useTab(),
|
12864
12897
|
selected = _useTab.selected,
|
12865
12898
|
handleChangeTab = _useTab.handleChangeTab;
|
12866
|
-
var _useExamResult = useExamResult(searchParams,
|
12899
|
+
var _useExamResult = useExamResult(searchParams, history, examSessionId, studentId, code, handleChangeTab, selected),
|
12867
12900
|
examTime = _useExamResult.examTime,
|
12868
12901
|
series = _useExamResult.series,
|
12869
12902
|
allSeries = _useExamResult.allSeries,
|
@@ -13371,7 +13404,7 @@ var signInSuperAdminApi = function signInSuperAdminApi(_ref2) {
|
|
13371
13404
|
};
|
13372
13405
|
|
13373
13406
|
var useLogin$2 = function useLogin(_ref) {
|
13374
|
-
var
|
13407
|
+
var history = _ref.history,
|
13375
13408
|
_ref$role = _ref.role,
|
13376
13409
|
role = _ref$role === void 0 ? exports.Role.Student : _ref$role,
|
13377
13410
|
homeAcademyUrl = _ref.homeAcademyUrl,
|
@@ -13391,7 +13424,7 @@ var useLogin$2 = function useLogin(_ref) {
|
|
13391
13424
|
var academyDomain = paramDomain || getAcademyDomain();
|
13392
13425
|
var handleClearAcademyDomain = function handleClearAcademyDomain() {
|
13393
13426
|
localStorage.removeItem(ACADEMY_DOMAIN);
|
13394
|
-
|
13427
|
+
pushTo(history, "/login-with-account");
|
13395
13428
|
};
|
13396
13429
|
var handleValidateForm = function handleValidateForm(_ref2) {
|
13397
13430
|
var email = _ref2.email,
|
@@ -13456,13 +13489,11 @@ var useLogin$2 = function useLogin(_ref) {
|
|
13456
13489
|
!data.academyDomain && localStorage.removeItem(ACADEMY_DOMAIN);
|
13457
13490
|
!!data.academyDomain && localStorage.setItem(ACADEMY_DOMAIN, data.academyDomain);
|
13458
13491
|
dispatch(setUser(_extends({}, data)));
|
13459
|
-
if (redirectUrl)
|
13460
|
-
onNavigate(redirectUrl);
|
13461
|
-
}
|
13492
|
+
if (redirectUrl) pushTo(history, redirectUrl);
|
13462
13493
|
};
|
13463
13494
|
React.useEffect(function () {
|
13464
13495
|
var token = getAccessToken$1();
|
13465
|
-
if (!!token)
|
13496
|
+
if (!!token) pushTo(history, "/");
|
13466
13497
|
}, []);
|
13467
13498
|
return {
|
13468
13499
|
handleSubmit: handleSubmit,
|
@@ -13474,7 +13505,7 @@ var useLogin$2 = function useLogin(_ref) {
|
|
13474
13505
|
};
|
13475
13506
|
|
13476
13507
|
function SignIn(_ref) {
|
13477
|
-
var
|
13508
|
+
var history = _ref.history,
|
13478
13509
|
role = _ref.role,
|
13479
13510
|
homeAcademyUrl = _ref.homeAcademyUrl,
|
13480
13511
|
homeUrl = _ref.homeUrl,
|
@@ -13483,7 +13514,7 @@ function SignIn(_ref) {
|
|
13483
13514
|
var _useTranslation = reactI18next.useTranslation(),
|
13484
13515
|
t = _useTranslation.t;
|
13485
13516
|
var _useLoginWithPassword = useLogin$2({
|
13486
|
-
|
13517
|
+
history: history,
|
13487
13518
|
role: role,
|
13488
13519
|
homeAcademyUrl: homeAcademyUrl,
|
13489
13520
|
homeUrl: homeUrl,
|
@@ -13588,7 +13619,7 @@ var studentFullLogoEn = function studentFullLogoEn(_ref) {
|
|
13588
13619
|
fill: "none",
|
13589
13620
|
xmlns: "http://www.w3.org/2000/svg"
|
13590
13621
|
}, React__default.createElement("g", {
|
13591
|
-
|
13622
|
+
clipPath: "url(#clip0_3233_11779)"
|
13592
13623
|
}, React__default.createElement("path", {
|
13593
13624
|
d: "M9.24216 15.5417C9.24216 16.4045 9.73435 16.87 11.5816 17.5104C16.6013 19.2835 16.972 20.9321 16.972 24.4278V26.0764C16.972 29.5721 13.9684 30.8263 10.4489 30.8263C6.92944 30.8263 4 29.5721 4 26.0764V23.1973H9.29256V25.2165C9.29256 25.9785 9.83516 26.3729 10.5468 26.3729C11.2584 26.3729 11.8039 25.9785 11.8039 25.2165V24.6028C11.8039 21.9698 11.4096 21.7237 7.51948 20.173C4.69085 19.0374 4.07413 17.1902 4.07413 15.7136V13.3505C4.07413 9.85772 6.97985 8.60352 10.4964 8.60352C14.0129 8.60352 16.9216 9.85772 16.9216 13.3535V15.3964H11.7535V14.1896C11.7535 13.4513 11.2376 13.057 10.523 13.057C9.76103 13.057 9.24216 13.3535 9.24216 14.1392V15.5417Z",
|
13594
13625
|
fill: "#2BBA84"
|
@@ -13650,7 +13681,7 @@ var studentFullLogoKo = function studentFullLogoKo(_ref) {
|
|
13650
13681
|
fill: "none",
|
13651
13682
|
xmlns: "http://www.w3.org/2000/svg"
|
13652
13683
|
}, React__default.createElement("g", {
|
13653
|
-
|
13684
|
+
clipPath: "url(#clip0_3233_7642)"
|
13654
13685
|
}, React__default.createElement("path", {
|
13655
13686
|
d: "M0 24.4625H20.5166V30.0272H0V24.4625ZM0.282173 21.434L5.84688 6.177H12.0777L11.4116 7.97175H16.7729C18.8498 7.97175 19.8505 9.0217 19.8505 11.0494V21.4373H13.6952V13.2805H9.48888L6.53919 21.4373H0.282173V21.434Z",
|
13656
13687
|
fill: "#2BBA84"
|
@@ -13703,7 +13734,7 @@ var teacherFullLogoKo = function teacherFullLogoKo(_ref) {
|
|
13703
13734
|
fill: "none",
|
13704
13735
|
xmlns: "http://www.w3.org/2000/svg"
|
13705
13736
|
}, React__default.createElement("g", {
|
13706
|
-
|
13737
|
+
clipPath: "url(#clip0_3233_7868)"
|
13707
13738
|
}, React__default.createElement("path", {
|
13708
13739
|
d: "M0 38.9726H20.5175V44.5391H0V38.9726ZM0.284008 35.9458L5.85056 20.6865H12.0825L11.4171 22.4798H16.7767C18.8541 22.4798 19.8521 23.5307 19.8521 25.5552V35.9418H13.6973V27.7867H9.48991L6.54029 35.9418H0.284008V35.9458Z",
|
13709
13740
|
fill: "#2BBA84"
|
@@ -13868,32 +13899,32 @@ var singleLogo = function singleLogo(_ref) {
|
|
13868
13899
|
}, React__default.createElement("defs", null, React__default.createElement("clipPath", {
|
13869
13900
|
id: "1"
|
13870
13901
|
}, React__default.createElement("path", {
|
13871
|
-
|
13902
|
+
clipRule: "evenodd",
|
13872
13903
|
d: "M0 0L207 0L207 418L0 418z"
|
13873
13904
|
}))), React__default.createElement("g", {
|
13874
13905
|
transform: "matrix(0.119617224 0 0 0.119617224 0.119617224 -0)"
|
13875
13906
|
}, React__default.createElement("g", {
|
13876
|
-
|
13907
|
+
clipPath: "url(#1)"
|
13877
13908
|
}, React__default.createElement("path", {
|
13878
13909
|
d: "M9.66724 418C 136.043 342.286 179.498 275.873 207.032 138.127L207.032 138.127L207.032 344.635C 207.032 385.143 171.107 418 126.791 418L126.791 418L9.66724 418z",
|
13879
13910
|
stroke: "none",
|
13880
13911
|
fill: "#2BBA84",
|
13881
|
-
|
13912
|
+
fillRule: "nonzero"
|
13882
13913
|
}), React__default.createElement("path", {
|
13883
13914
|
d: "M101.171 163.206L19.845 83.1111L19.845 188.064L101.171 286.159C 148.167 225.175 177.424 148.413 182.497 80.5714L182.497 80.5714L101.171 163.175L101.171 163.206z",
|
13884
13915
|
stroke: "none",
|
13885
13916
|
fill: "#2BBA84",
|
13886
|
-
|
13917
|
+
fillRule: "nonzero"
|
13887
13918
|
}), React__default.createElement("path", {
|
13888
13919
|
d: "M101.171 0L54.1428 68.0317L101.171 112.952L148.167 65.4921L101.171 0z",
|
13889
13920
|
stroke: "none",
|
13890
13921
|
fill: "#2BBA84",
|
13891
|
-
|
13922
|
+
fillRule: "nonzero"
|
13892
13923
|
}), React__default.createElement("path", {
|
13893
13924
|
d: "M0 222.762L80.6879 319.587C 80.6879 319.587 65.2458 342.54 0 376.952L0 376.952L0 222.762z",
|
13894
13925
|
stroke: "none",
|
13895
13926
|
fill: "#2BBA84",
|
13896
|
-
|
13927
|
+
fillRule: "nonzero"
|
13897
13928
|
}))));
|
13898
13929
|
};
|
13899
13930
|
|
@@ -13903,7 +13934,7 @@ var Header = function Header(_ref) {
|
|
13903
13934
|
homeRoute = _ref.homeRoute,
|
13904
13935
|
headerTabs = _ref.headerTabs,
|
13905
13936
|
role = _ref.role,
|
13906
|
-
|
13937
|
+
history = _ref.history,
|
13907
13938
|
onSignOut = _ref.onSignOut;
|
13908
13939
|
var _useTranslation = reactI18next.useTranslation(),
|
13909
13940
|
t = _useTranslation.t;
|
@@ -13989,7 +14020,7 @@ var Header = function Header(_ref) {
|
|
13989
14020
|
homeAcademyUrl: academyListRoute.path,
|
13990
14021
|
homeUrl: homeRoute.path,
|
13991
14022
|
role: role,
|
13992
|
-
|
14023
|
+
history: history,
|
13993
14024
|
hideAcademyName: !isLargerThanXL && headerTabs.length > 6
|
13994
14025
|
})), React__default.createElement("div", {
|
13995
14026
|
className: "me-2"
|
@@ -14007,6 +14038,156 @@ var Header = function Header(_ref) {
|
|
14007
14038
|
}))));
|
14008
14039
|
};
|
14009
14040
|
|
14041
|
+
var ACADEMY_URL$1 = BASE_URL + "/api/academy";
|
14042
|
+
var getAcademyList$1 = function getAcademyList() {
|
14043
|
+
return api.get("" + ACADEMY_URL$1);
|
14044
|
+
};
|
14045
|
+
var switchAcademy$1 = function switchAcademy(academyId) {
|
14046
|
+
return api.post(ACADEMY_URL$1 + "/switch-academy?academyId=" + academyId);
|
14047
|
+
};
|
14048
|
+
|
14049
|
+
var useAcademyList = function useAcademyList(history, role, homeAcademyUrl, homeUrl, registerUrl) {
|
14050
|
+
var dispatch = reactRedux.useDispatch();
|
14051
|
+
var _useLogin = useLogin(history, homeAcademyUrl, homeUrl, registerUrl),
|
14052
|
+
handleLoginAccessToken = _useLogin.handleLoginAccessToken;
|
14053
|
+
var _useState = React.useState([]),
|
14054
|
+
academyList = _useState[0],
|
14055
|
+
setAcademyList = _useState[1];
|
14056
|
+
var email = reactRedux.useSelector(function (state) {
|
14057
|
+
var _state$common, _state$common$user;
|
14058
|
+
return state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : (_state$common$user = _state$common.user) === null || _state$common$user === void 0 ? void 0 : _state$common$user.email;
|
14059
|
+
});
|
14060
|
+
var getAcademies = function getAcademies() {
|
14061
|
+
try {
|
14062
|
+
var _temp2 = function _temp2() {
|
14063
|
+
dispatch(setLoading(false));
|
14064
|
+
};
|
14065
|
+
dispatch(setLoading(true));
|
14066
|
+
var _temp = _catch(function () {
|
14067
|
+
return Promise.resolve(getAcademyList$1()).then(function (res) {
|
14068
|
+
setAcademyList(res.data.items || []);
|
14069
|
+
});
|
14070
|
+
}, function (error) {
|
14071
|
+
var _error$response, _error$response$data;
|
14072
|
+
reactToastify.toast.error((error === null || error === void 0 ? void 0 : (_error$response = error.response) === null || _error$response === void 0 ? void 0 : (_error$response$data = _error$response.data) === null || _error$response$data === void 0 ? void 0 : _error$response$data.tile) || "Get user academies failed");
|
14073
|
+
});
|
14074
|
+
return Promise.resolve(_temp && _temp.then ? _temp.then(_temp2) : _temp2(_temp));
|
14075
|
+
} catch (e) {
|
14076
|
+
return Promise.reject(e);
|
14077
|
+
}
|
14078
|
+
};
|
14079
|
+
var handleSwitchAcademy = function handleSwitchAcademy(id, domain) {
|
14080
|
+
try {
|
14081
|
+
var _temp4 = function _temp4() {
|
14082
|
+
dispatch(setLoading(false));
|
14083
|
+
};
|
14084
|
+
dispatch(setLoading(true));
|
14085
|
+
var _temp3 = _catch(function () {
|
14086
|
+
return Promise.resolve(switchAcademy$1(id)).then(function (res) {
|
14087
|
+
var data = res.data;
|
14088
|
+
var requestBody = {
|
14089
|
+
accessToken: data.accessToken,
|
14090
|
+
email: email,
|
14091
|
+
academyId: id,
|
14092
|
+
role: role
|
14093
|
+
};
|
14094
|
+
localStorage.setItem(ACADEMY_DOMAIN, domain);
|
14095
|
+
return Promise.resolve(handleLoginAccessToken(requestBody, false)).then(function () {});
|
14096
|
+
});
|
14097
|
+
}, function (error) {
|
14098
|
+
var _error$response2, _error$response2$data;
|
14099
|
+
reactToastify.toast.error((error === null || error === void 0 ? void 0 : (_error$response2 = error.response) === null || _error$response2 === void 0 ? void 0 : (_error$response2$data = _error$response2.data) === null || _error$response2$data === void 0 ? void 0 : _error$response2$data.tile) || "Failed");
|
14100
|
+
});
|
14101
|
+
return Promise.resolve(_temp3 && _temp3.then ? _temp3.then(_temp4) : _temp4(_temp3));
|
14102
|
+
} catch (e) {
|
14103
|
+
return Promise.reject(e);
|
14104
|
+
}
|
14105
|
+
};
|
14106
|
+
React.useEffect(function () {
|
14107
|
+
getAcademies();
|
14108
|
+
}, []);
|
14109
|
+
return {
|
14110
|
+
academyList: academyList,
|
14111
|
+
handleSwitchAcademy: handleSwitchAcademy
|
14112
|
+
};
|
14113
|
+
};
|
14114
|
+
|
14115
|
+
var AcademyCard = function AcademyCard(_ref) {
|
14116
|
+
var theme = _ref.theme,
|
14117
|
+
academy = _ref.academy,
|
14118
|
+
onSwitch = _ref.onSwitch;
|
14119
|
+
var _useTranslation = reactI18next.useTranslation(),
|
14120
|
+
t = _useTranslation.t;
|
14121
|
+
var handleSwitchAcademy = function handleSwitchAcademy() {
|
14122
|
+
onSwitch(academy.id, academy.domain);
|
14123
|
+
};
|
14124
|
+
return React.createElement(Card, null, React.createElement(CardMedia, {
|
14125
|
+
sx: {
|
14126
|
+
width: "100%",
|
14127
|
+
aspectRatio: 4 / 3
|
14128
|
+
},
|
14129
|
+
image: academy.image || "/images/default.jpg",
|
14130
|
+
title: academy.name
|
14131
|
+
}), React.createElement(CardContent, null, React.createElement(Typography, {
|
14132
|
+
variant: "h6",
|
14133
|
+
component: "div"
|
14134
|
+
}, academy.name)), React.createElement(CardActions, null, React.createElement(Button, {
|
14135
|
+
sx: {
|
14136
|
+
bgColor: theme.palette.main_theme.dark
|
14137
|
+
},
|
14138
|
+
size: "medium",
|
14139
|
+
variant: "contained",
|
14140
|
+
onClick: handleSwitchAcademy
|
14141
|
+
}, t("switch"))));
|
14142
|
+
};
|
14143
|
+
|
14144
|
+
var AcademyList = function AcademyList(_ref) {
|
14145
|
+
var theme = _ref.theme,
|
14146
|
+
history = _ref.history,
|
14147
|
+
role = _ref.role,
|
14148
|
+
homeAcademyUrl = _ref.homeAcademyUrl,
|
14149
|
+
homeUrl = _ref.homeUrl,
|
14150
|
+
registerUrl = _ref.registerUrl;
|
14151
|
+
var _useTranslation = reactI18next.useTranslation(),
|
14152
|
+
t = _useTranslation.t;
|
14153
|
+
useAutoAcademyDomain(function () {}, history, [], "", window.location.pathname, true);
|
14154
|
+
var _useAcademyList = useAcademyList(history, role, homeAcademyUrl, homeUrl, registerUrl),
|
14155
|
+
academyList = _useAcademyList.academyList,
|
14156
|
+
handleSwitchAcademy = _useAcademyList.handleSwitchAcademy;
|
14157
|
+
return React__default.createElement("div", {
|
14158
|
+
className: "py-3 px-4"
|
14159
|
+
}, React__default.createElement(Grid, {
|
14160
|
+
container: true,
|
14161
|
+
spacing: 3
|
14162
|
+
}, React__default.createElement(Grid, {
|
14163
|
+
item: true,
|
14164
|
+
xs: 12
|
14165
|
+
}, React__default.createElement(Typography, {
|
14166
|
+
fontSize: 24,
|
14167
|
+
fontWeight: 600
|
14168
|
+
}, t("academy_list"))), React__default.createElement(Grid, {
|
14169
|
+
item: true,
|
14170
|
+
xs: 12
|
14171
|
+
}, React__default.createElement(Grid, {
|
14172
|
+
container: true,
|
14173
|
+
spacing: 2
|
14174
|
+
}, academyList.map(function (i) {
|
14175
|
+
return React__default.createElement(Grid, {
|
14176
|
+
item: true,
|
14177
|
+
xs: 6,
|
14178
|
+
lg: 3,
|
14179
|
+
key: i.id
|
14180
|
+
}, React__default.createElement(AcademyCard, {
|
14181
|
+
theme: theme,
|
14182
|
+
academy: i,
|
14183
|
+
onSwitch: handleSwitchAcademy
|
14184
|
+
}));
|
14185
|
+
}), !academyList.length && React__default.createElement(Grid, {
|
14186
|
+
item: true,
|
14187
|
+
xs: 3
|
14188
|
+
}, React__default.createElement("span", null, t("no_academy_available"), "."))))));
|
14189
|
+
};
|
14190
|
+
|
14010
14191
|
exports.moment = moment;
|
14011
14192
|
Object.defineProperty(exports, 'I18nextProvider', {
|
14012
14193
|
enumerable: true,
|
@@ -14035,6 +14216,7 @@ Object.defineProperty(exports, 'toast', {
|
|
14035
14216
|
exports.ACADEMY_DOMAIN = ACADEMY_DOMAIN;
|
14036
14217
|
exports.ACCESS_TOKEN = ACCESS_TOKEN;
|
14037
14218
|
exports.AcademyHeaders = AcademyHeaders;
|
14219
|
+
exports.AcademyList = AcademyList;
|
14038
14220
|
exports.AnswerCountSelector = AnswerCountSelector;
|
14039
14221
|
exports.ArticleCategorySelector = ArticleCategorySelector;
|
14040
14222
|
exports.ArticleGroupView = ArticleGroupView;
|