mario-core 2.9.29-beta → 2.9.30-admin

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/index.d.ts CHANGED
@@ -45,6 +45,7 @@ import useGalleryList from "./containers/Gallery/hooks/useGalleryList";
45
45
  import QuitPrompt from "./components/Others/QuitPrompt";
46
46
  import AcademicClassSelector from "./components/Selectors/AcademicClassSelector";
47
47
  import SchoolList from "./containers/DistrictSchools/views/SchoolList";
48
+ import { INIT_AMPLITUDE_KEY } from "./utils/constants";
48
49
  import store from "./store";
49
50
  import { api, apiUpload } from "./services/api";
50
51
  import editorConfig from "./configs/editorConfig";
@@ -104,4 +105,4 @@ import { setEnableIEP, setConversationOneToOne } from "./redux/commons/action";
104
105
  import useFilters from "./hooks/useFilters";
105
106
  import amplitude from "amplitude-js";
106
107
  declare const amplitudeClient: amplitude.AmplitudeClient;
107
- export { Login, Dashboard, TheLayout, TheContent, NotFound, EmailTemplateList, EmailTemplateDetail, FaqList, SkillList, UserList, UserDetail, Loading, NotificationModal, CommonHeader, CommonModal, AddButton, DeleteButtonIcon, EditButtonIcon, LinkEditButton, ToggleButton, EmptyDataAlert, CreatableSelector, CustomPagination, SearchBox, FileInput, QuitPrompt, QuestionTypeSelector, QuestionCategorySelector, SuggestionCategorySelector, ErrorHandler, DetailActionButtons, RequiredLabel, StarRatingSelector, ReactNotification, NotificationList, CustomSelector, UploadFileButton, SearchBoxContainer, CustomTab, CommonAlert, GalleryList, MediaList, useGalleryList, AcademicClassSelector, SchoolList, store, showMenuBar, showFontSize, setLoading, setModal, setAlert, setClassList, setConferenceRubricList, setSuggestionList, setStrategyList, setSubjectList, setLearningSupportCategoryList, setQuestionList, setUserList, setStudentList, setBadgeList, setGoalExampleList, setSemesterList, setFeedbackList, setAssessmentList, setQuestionByCategory, setSelectQuestion, setMoveItemQuestion, setReflectionList, setReflectionResultList, setEditItemQuesion, setResetQuestionList, setMailCategory, setUser, setAssignmentList, setAssistantList, setSessionTemplateList, setTutorialScreenList, setSessionTemplateGeneralClassList, setCustomAlertList, setCertificateList, closeTab, addTab, editTab, clearTab, changeNote, changeTags, answerQuestion, setSessionPlayer, setStartTime, setTurnOffPassWhenChangeMode, reset, setImproveMyClass, setSchoolBlankDayList, setEnableIEP, setConversationOneToOne, api, apiUpload, uploadFile, systemStudentBadge, systemCertificateUpload, BASE_URL, DEFAULT_FILTER, LICENSE_AGGRID, TINY_MCE_API_KEY, QUESTION_TYPES, QUESTION_TYPES_OPTIONS, ANSWER_EDITOR_HEIGHT, CHAT_CHANNEL, NOTIFICATION_CHANNEL, DATE_RESULT, DATE_FORMAT, FULL_DATE_RESULT, ACCESS_TOKEN, GOOGLE_RECAPTCHA_KEY, EMOTIONS, TAB_COLORS, Filter, Conversation, Message, ConversationMember, NavbarTab, editorConfig, generateRandomString, isInViewport, debounce, firstCheckToken, canAccessRoute, getFileUrl, getTextFromHTML, utcToLocalTime, getInfo, Images, setQuestionCateList, setMyStudent, setDataPlayer, answerQuestionDataPlayer, setCurrentStudentUserId, setCurrentStudentId, setCurrentStudentName, setFilterWidget, setBandScoreList, setStudentIdSelectedByTeacher, useFilters, ScrollToTop, initAmplitude, amplitudeClient };
108
+ export { Login, Dashboard, TheLayout, TheContent, NotFound, EmailTemplateList, EmailTemplateDetail, FaqList, SkillList, UserList, UserDetail, Loading, NotificationModal, CommonHeader, CommonModal, AddButton, DeleteButtonIcon, EditButtonIcon, LinkEditButton, ToggleButton, EmptyDataAlert, CreatableSelector, CustomPagination, SearchBox, FileInput, QuitPrompt, QuestionTypeSelector, QuestionCategorySelector, SuggestionCategorySelector, ErrorHandler, DetailActionButtons, RequiredLabel, StarRatingSelector, ReactNotification, NotificationList, CustomSelector, UploadFileButton, SearchBoxContainer, CustomTab, CommonAlert, GalleryList, MediaList, useGalleryList, AcademicClassSelector, SchoolList, store, showMenuBar, showFontSize, setLoading, setModal, setAlert, setClassList, setConferenceRubricList, setSuggestionList, setStrategyList, setSubjectList, setLearningSupportCategoryList, setQuestionList, setUserList, setStudentList, setBadgeList, setGoalExampleList, setSemesterList, setFeedbackList, setAssessmentList, setQuestionByCategory, setSelectQuestion, setMoveItemQuestion, setReflectionList, setReflectionResultList, setEditItemQuesion, setResetQuestionList, setMailCategory, setUser, setAssignmentList, setAssistantList, setSessionTemplateList, setTutorialScreenList, setSessionTemplateGeneralClassList, setCustomAlertList, setCertificateList, closeTab, addTab, editTab, clearTab, changeNote, changeTags, answerQuestion, setSessionPlayer, setStartTime, setTurnOffPassWhenChangeMode, reset, setImproveMyClass, setSchoolBlankDayList, setEnableIEP, setConversationOneToOne, api, apiUpload, uploadFile, systemStudentBadge, systemCertificateUpload, BASE_URL, DEFAULT_FILTER, LICENSE_AGGRID, TINY_MCE_API_KEY, QUESTION_TYPES, QUESTION_TYPES_OPTIONS, ANSWER_EDITOR_HEIGHT, CHAT_CHANNEL, NOTIFICATION_CHANNEL, DATE_RESULT, DATE_FORMAT, FULL_DATE_RESULT, ACCESS_TOKEN, GOOGLE_RECAPTCHA_KEY, EMOTIONS, TAB_COLORS, Filter, Conversation, Message, ConversationMember, NavbarTab, editorConfig, generateRandomString, isInViewport, debounce, firstCheckToken, canAccessRoute, getFileUrl, getTextFromHTML, utcToLocalTime, getInfo, Images, setQuestionCateList, setMyStudent, setDataPlayer, answerQuestionDataPlayer, setCurrentStudentUserId, setCurrentStudentId, setCurrentStudentName, setFilterWidget, setBandScoreList, setStudentIdSelectedByTeacher, useFilters, ScrollToTop, initAmplitude, amplitudeClient, INIT_AMPLITUDE_KEY };
package/dist/index.js CHANGED
@@ -10,6 +10,7 @@ var yup = require('yup');
10
10
  var reactRedux = require('react-redux');
11
11
  var toolkit = require('@reduxjs/toolkit');
12
12
  var axios = _interopDefault(require('axios'));
13
+ var amplitude = _interopDefault(require('amplitude-js'));
13
14
  var reactGoogleRecaptchaV3 = require('react-google-recaptcha-v3');
14
15
  var GoogleLogin = _interopDefault(require('react-google-login'));
15
16
  var Select = _interopDefault(require('react-select'));
@@ -29,7 +30,6 @@ var ReactNotification$1 = _interopDefault(require('react-notifications-component
29
30
  require('react-notifications-component/dist/theme.css');
30
31
  var ai = require('react-icons/ai');
31
32
  var moment = _interopDefault(require('moment'));
32
- var amplitude = _interopDefault(require('amplitude-js'));
33
33
 
34
34
  // A type of promise-like that resolves synchronously and supports only one observer
35
35
 
@@ -108,6 +108,7 @@ var PasswordInput = function PasswordInput(_ref) {
108
108
 
109
109
  var TINY_MCE_API_KEY = "adpshj9swgsscf83gw4gs2f74nx0vicpd5ydka20iqjd7l8r";
110
110
  var GOOGLE_RECAPTCHA_KEY = "6LfNtLUaAAAAAL24lbBV11jS-gBtt1mhtxb4NXs0";
111
+ var INIT_AMPLITUDE_KEY = "860fa99c52ae79d98e904b4c862ddaac";
111
112
  var ACCESS_TOKEN = "ACCESS_TOKEN";
112
113
  var DEFAULT_PAGE_SIZE_VALUES = [{
113
114
  label: "10",
@@ -303,6 +304,18 @@ var apiUpload = axios.create({
303
304
  Object.keys(localStorage).forEach(function (key) {
304
305
  if (!key.includes('learning-plan')) delete localStorage[key];
305
306
  });
307
+ var userEmail = localStorage.getItem("USER_EMAIL");
308
+ var hostName = window.location.hostname;
309
+
310
+ if (userEmail) {
311
+ amplitude.getInstance().logEvent("general: session end", {
312
+ user_id: userEmail,
313
+ domain: hostName
314
+ });
315
+ amplitude.getInstance().resetSessionId();
316
+ }
317
+
318
+ localStorage.setItem("USER_EMAIL", "");
306
319
  window.location.href = "/login";
307
320
  }
308
321
 
@@ -416,7 +429,8 @@ var useLogin = function useLogin() {
416
429
  lastName = _res$data.lastName,
417
430
  roles = _res$data.roles,
418
431
  email = _res$data.email,
419
- profileImageFileName = _res$data.profileImageFileName;
432
+ profileImageFileName = _res$data.profileImageFileName,
433
+ isLoginFirst = _res$data.isLoginFirst;
420
434
  localStorage.setItem(ACCESS_TOKEN, token);
421
435
  dispatch(setUser({
422
436
  id: id,
@@ -427,6 +441,26 @@ var useLogin = function useLogin() {
427
441
  profileImageFileName: profileImageFileName
428
442
  }));
429
443
 
444
+ if (data !== null && data !== void 0 && data.email && !roles.includes("Admin")) {
445
+ amplitude.getInstance().init(INIT_AMPLITUDE_KEY, data.email, {
446
+ includeReferrer: false,
447
+ includeUtm: false
448
+ });
449
+ var hostName = window.location.hostname;
450
+ amplitude.getInstance().logEvent("general: session start", {
451
+ user_id: data.email,
452
+ domain: hostName
453
+ });
454
+ localStorage.setItem("USER_EMAIL", data.email);
455
+
456
+ if (isLoginFirst) {
457
+ amplitude.getInstance().logEvent("general: first login", {
458
+ user_id: data.email,
459
+ domain: hostName
460
+ });
461
+ }
462
+ }
463
+
430
464
  if (isDistrict) {
431
465
  history.push(HOMEPAGE_DISTRICT);
432
466
  } else if (roles.includes("Admin")) {
@@ -7150,6 +7184,7 @@ var commonReducer = toolkit.createReducer(initialState, function (builder) {
7150
7184
  }).addCase(initAmplitude, function (state, action) {
7151
7185
  var _action$payload, _action$payload2, _action$payload3, _action$payload4, _action$payload5, _action$payload6, _action$payload7, _action$payload8, _action$payload9, _action$payload10, _action$payload11;
7152
7186
 
7187
+ var hostName = window.location.hostname;
7153
7188
  var eventProperties = {
7154
7189
  user_id: (_action$payload = action.payload) === null || _action$payload === void 0 ? void 0 : _action$payload.name,
7155
7190
  status: (_action$payload2 = action.payload) !== null && _action$payload2 !== void 0 && _action$payload2.status ? (_action$payload3 = action.payload) === null || _action$payload3 === void 0 ? void 0 : _action$payload3.status : "",
@@ -7161,7 +7196,8 @@ var commonReducer = toolkit.createReducer(initialState, function (builder) {
7161
7196
  first_login: (_action$payload9 = action.payload) !== null && _action$payload9 !== void 0 && _action$payload9.first_login ? action.payload.first_login : "",
7162
7197
  duration_since: (_action$payload10 = action.payload) !== null && _action$payload10 !== void 0 && _action$payload10.duration_since ? action.payload.duration_since : 0,
7163
7198
  last_page: (_action$payload11 = action.payload) !== null && _action$payload11 !== void 0 && _action$payload11.last_page ? action.payload.last_page : "",
7164
- event: action.payload.event
7199
+ event: action.payload.event,
7200
+ domain: !!hostName ? hostName : ""
7165
7201
  };
7166
7202
  state.amplitude = eventProperties;
7167
7203
  });
@@ -8106,6 +8142,7 @@ exports.FaqList = FaqList;
8106
8142
  exports.FileInput = InputFile;
8107
8143
  exports.GOOGLE_RECAPTCHA_KEY = GOOGLE_RECAPTCHA_KEY;
8108
8144
  exports.GalleryList = GalleryList;
8145
+ exports.INIT_AMPLITUDE_KEY = INIT_AMPLITUDE_KEY;
8109
8146
  exports.Images = Images;
8110
8147
  exports.LICENSE_AGGRID = LICENSE_AGGRID;
8111
8148
  exports.LinkEditButton = LinkEditButton;