mario-core 1.2.23-es-prod → 1.2.23-es-release

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.js CHANGED
@@ -22160,7 +22160,7 @@ function _catch(body, recover) {
22160
22160
  return result;
22161
22161
  }
22162
22162
 
22163
- var styles = {"btn-login-with-sso":"_DrSlA","icon":"_20YJX","btn-login-google":"_2HqmH","notification-count":"_2sew7","text-introduction":"_3OgWF","btn-trans-border":"_r9cAh","contact":"_NszFe","learn-more":"_MDjzH","title-quote":"_1Swkw","descriptions-quote":"_gi8vj","box-login":"_38Lo1","block-verification":"_1OzGy","block-login":"_wWIyO","title-login":"_3nuns","title-forgot-password":"_21qb6","btn-close":"_NhW9l","btn-login":"_3IL10","school-icon":"_2OUwW","school-name":"_2Owso","login-description":"_fx-kA","return-to-login":"_Ce3Kg","recover-account":"_2t6d9","link-to-login":"_3bDsd","privacy-policy":"_I4SVu","remember":"_11FZt","term-and-conditions":"_3LXoI","descriptions-forgot-pass":"_PMcjT","content-icon":"_2rZY6","descriptions-icon":"_3SOdX","title-icon":"_y9lM2","digital-privacy-icon":"_141p1","nav-home":"_1TT1q","box-introduction":"_32V6L","checkbox-keep-login":"_1AiX0","label-keep-login":"_2uNvW","option-text":"_pqn4y","form-user-name":"_39BJD","input":"_ozRAq","checkbox-remember":"_2K9b2","btn-rounder":"_2VvIr","btn-active":"_2A0HF","block-reset-password":"_23Sua","block-forgot-pass":"_3CWP6","page-not-login":"_3Wmco","content-quote":"_13Rk0","home-page":"_o6HKW","red-background":"_jOY7o","login":"_F-hjL","version-prod":"_OqRPX","login-content":"_149oA","logo-home":"_24U3W","img-box":"_2v-L_","img-login":"_3ncTL","img-login-rectangle":"_2kOvJ","c-main":"_39l0X","container-fluid":"_1BMwK","input-file-label":"_1XNpH","delete-avatar-button":"_1z5h9","header-logo":"_Gewcf","box-sidebar":"_2vcmv","sidebar-logo":"_1hXpy","sidebar-nav-links":"_3vb3s","c-active":"_36jSM","sidebar-nav-links-hover":"_DNrus","box-sidebar-header":"_3NEZj","box-logout":"_1wUDG","sidebar-btn-minimized":"_1S7Px","sidebar-logout":"_2P85D","nav-mobile":"_1qjbW","filter-media-file":"_1I62C","div":"_3cLcM","dropdown-menu":"_1krbH","header-avatar":"_RQaHE","dropdown-menu-flag":"_XK8oS","dropdown-content":"_3ys4W","dropdown-change":"_ToOW_","item-address":"_3sQlR","item-logout":"_3bqSM","title-address":"_1jgSI","img-avatar":"_35Ttz","item-contact":"_1wc7o","logout":"_1_9tV","content-text":"_3S4f2","dropdown-content-language":"_3ajui","dropdown-item-language":"_3Y_y4","dropdown-item-language-active":"_CzNMi","hide-in-mobile":"_1INnO","popover__sort__item":"_1ocBa","popover__sort__item--active":"_18NhM","popover__search__icon":"_2bquW","popover__search__input":"_3A4G4","popover__options":"_1MsEW","item-select-role":"_1KcY7","item-role-active":"_dOVso","model-switch-roles":"_3ZqxI","title":"_g-p72","bg-animate":"_30npl","active":"_3oAH-","show":"_16rY4","fade-in":"_26nbh","behind":"_3A7Vv","hamburger-menu":"_2yRc8","box-content-home-page":"_ABUIP","collapse-box":"_WX97m","hide-in-desktop":"_2LIqK","control-input":"_2Zz97","custom-control":"_3-yp5","font-large":"_3Sup6","custom-title-font-size":"_2aaqy","modal-title":"_13Gcm","custom-font-size":"_VzIb0","font-small":"_2JnMg"};
22163
+ var customStyles = {"btn-login-with-sso":"_DrSlA","icon":"_20YJX","btn-login-google":"_2HqmH","notification-count":"_2sew7","text-introduction":"_3OgWF","btn-trans-border":"_r9cAh","contact":"_NszFe","learn-more":"_MDjzH","title-quote":"_1Swkw","descriptions-quote":"_gi8vj","box-login":"_38Lo1","block-verification":"_1OzGy","block-login":"_wWIyO","title-login":"_3nuns","title-forgot-password":"_21qb6","btn-close":"_NhW9l","btn-login":"_3IL10","school-icon":"_2OUwW","school-name":"_2Owso","login-description":"_fx-kA","return-to-login":"_Ce3Kg","recover-account":"_2t6d9","link-to-login":"_3bDsd","privacy-policy":"_I4SVu","remember":"_11FZt","term-and-conditions":"_3LXoI","descriptions-forgot-pass":"_PMcjT","content-icon":"_2rZY6","descriptions-icon":"_3SOdX","title-icon":"_y9lM2","digital-privacy-icon":"_141p1","nav-home":"_1TT1q","box-introduction":"_32V6L","checkbox-keep-login":"_1AiX0","label-keep-login":"_2uNvW","option-text":"_pqn4y","form-user-name":"_39BJD","input":"_ozRAq","checkbox-remember":"_2K9b2","btn-rounder":"_2VvIr","btn-active":"_2A0HF","block-reset-password":"_23Sua","block-forgot-pass":"_3CWP6","page-not-login":"_3Wmco","content-quote":"_13Rk0","home-page":"_o6HKW","red-background":"_jOY7o","login":"_F-hjL","version-prod":"_OqRPX","login-content":"_149oA","logo-home":"_24U3W","img-box":"_2v-L_","img-login":"_3ncTL","img-login-rectangle":"_2kOvJ","c-main":"_39l0X","container-fluid":"_1BMwK","input-file-label":"_1XNpH","delete-avatar-button":"_1z5h9","header-logo":"_Gewcf","box-sidebar":"_2vcmv","sidebar-logo":"_1hXpy","sidebar-nav-links":"_3vb3s","c-active":"_36jSM","sidebar-nav-links-hover":"_DNrus","box-sidebar-header":"_3NEZj","box-logout":"_1wUDG","sidebar-btn-minimized":"_1S7Px","sidebar-logout":"_2P85D","nav-mobile":"_1qjbW","filter-media-file":"_1I62C","div":"_3cLcM","dropdown-menu":"_1krbH","header-avatar":"_RQaHE","dropdown-menu-flag":"_XK8oS","dropdown-content":"_3ys4W","dropdown-change":"_ToOW_","item-address":"_3sQlR","item-logout":"_3bqSM","title-address":"_1jgSI","img-avatar":"_35Ttz","item-contact":"_1wc7o","logout":"_1_9tV","content-text":"_3S4f2","dropdown-content-language":"_3ajui","dropdown-item-language":"_3Y_y4","dropdown-item-language-active":"_CzNMi","hide-in-mobile":"_1INnO","popover__sort__item":"_1ocBa","popover__sort__item--active":"_18NhM","popover__search__icon":"_2bquW","popover__search__input":"_3A4G4","popover__options":"_1MsEW","item-select-role":"_1KcY7","item-role-active":"_dOVso","model-switch-roles":"_3ZqxI","title":"_g-p72","bg-animate":"_30npl","active":"_3oAH-","show":"_16rY4","fade-in":"_26nbh","behind":"_3A7Vv","hamburger-menu":"_2yRc8","box-content-home-page":"_ABUIP","collapse-box":"_WX97m","hide-in-desktop":"_2LIqK","control-input":"_2Zz97","custom-control":"_3-yp5","font-large":"_3Sup6","custom-title-font-size":"_2aaqy","modal-title":"_13Gcm","custom-font-size":"_VzIb0","font-small":"_2JnMg"};
22164
22164
 
22165
22165
  var style = {
22166
22166
  fontSize: "0.85rem"
@@ -23146,7 +23146,7 @@ var BlockLogin = function BlockLogin(_ref) {
23146
23146
  var subDomain = hostName === null || hostName === void 0 ? void 0 : (_hostName$split = hostName.split(".marioforme.com")) === null || _hostName$split === void 0 ? void 0 : (_hostName$split$ = _hostName$split[0]) === null || _hostName$split$ === void 0 ? void 0 : _hostName$split$.replace(/-es$|^es-/, "");
23147
23147
  var emailDomain = (_email$split = email.split("@")) === null || _email$split === void 0 ? void 0 : _email$split[1];
23148
23148
 
23149
- if (!emailDomain.includes(subDomain) && !emailDomain.includes(extensionEmail)) {
23149
+ if (!emailDomain.includes(subDomain) && !emailDomain.includes(!(extensionEmail !== null && extensionEmail !== void 0 && extensionEmail.trim()) ? subDomain : extensionEmail)) {
23150
23150
  alert("The email address you used does not match the login information in the database. Please check that you are using your school assigned email address to log into MARIO for Me. If you have further trouble please notify your school site administrator");
23151
23151
  return;
23152
23152
  }
@@ -23195,25 +23195,25 @@ var BlockLogin = function BlockLogin(_ref) {
23195
23195
  var emailError = touched.email && errors.email;
23196
23196
  var passwordError = touched.password && errors.password;
23197
23197
  return React__default.createElement("div", {
23198
- className: styles["box-login"] + " w-100"
23198
+ className: customStyles["box-login"] + " w-100"
23199
23199
  }, React__default.createElement(reactstrap.Form, {
23200
- className: "" + styles["block-login"],
23200
+ className: "" + customStyles["block-login"],
23201
23201
  onSubmit: handleSubmit
23202
23202
  }, React__default.createElement("div", {
23203
- className: "" + styles["block-form"]
23203
+ className: "" + customStyles["block-form"]
23204
23204
  }, React__default.createElement("div", {
23205
23205
  className: "d-flex align-items-center mb-4"
23206
23206
  }, React__default.createElement("img", {
23207
23207
  src: school.schoolLogo ? getFileUrl("" + school.schoolLogo) : "" + getStaticFileUrl("/images/mario-logo.png"),
23208
- className: styles["school-icon"] + " mr-3"
23208
+ className: customStyles["school-icon"] + " mr-3"
23209
23209
  }), React__default.createElement("p", {
23210
- className: styles["school-name"] + " mb-0"
23210
+ className: customStyles["school-name"] + " mb-0"
23211
23211
  }, school.schoolName)), React__default.createElement("p", {
23212
- className: "" + styles["title-login"]
23212
+ className: "" + customStyles["title-login"]
23213
23213
  }, "Welcome Back!"), React__default.createElement("p", {
23214
- className: styles["login-description"] + " mb-5"
23214
+ className: customStyles["login-description"] + " mb-5"
23215
23215
  }, "Please enter your MARIO Education account details"), React__default.createElement(reactstrap.FormGroup, {
23216
- className: "" + styles["form-user-name"]
23216
+ className: "" + customStyles["form-user-name"]
23217
23217
  }, React__default.createElement(reactstrap.Input, {
23218
23218
  type: "text",
23219
23219
  name: "email",
@@ -23243,20 +23243,20 @@ var BlockLogin = function BlockLogin(_ref) {
23243
23243
  }, React__default.createElement("input", {
23244
23244
  type: "checkbox",
23245
23245
  checked: !values.isSessionUserBrowser,
23246
- className: "" + styles["checkbox-keep-login"],
23246
+ className: "" + customStyles["checkbox-keep-login"],
23247
23247
  onChange: function onChange() {
23248
23248
  return setFieldValue("isSessionUserBrowser", !values.isSessionUserBrowser);
23249
23249
  }
23250
23250
  }), React__default.createElement("p", {
23251
- className: styles["label-keep-login"] + " mb-0 ml-2"
23251
+ className: customStyles["label-keep-login"] + " mb-0 ml-2"
23252
23252
  }, "Keep me logged in")), React__default.createElement(reactRouterDom.Link, {
23253
23253
  to: "/forgot-password",
23254
- className: "" + styles["link-to-login"]
23254
+ className: "" + customStyles["link-to-login"]
23255
23255
  }, "Forgot password?")), React__default.createElement("button", {
23256
- className: styles["btn-login"] + " mt-5",
23256
+ className: customStyles["btn-login"] + " mt-5",
23257
23257
  type: "submit"
23258
23258
  }, "LOG IN"), React__default.createElement("p", {
23259
- className: styles["option-text"] + " my-3 text-center"
23259
+ className: customStyles["option-text"] + " my-3 text-center"
23260
23260
  }, "OR"), React__default.createElement(reactstrap.Row, {
23261
23261
  className: "mb-4"
23262
23262
  }, React__default.createElement(reactstrap.Col, {
@@ -23269,15 +23269,15 @@ var BlockLogin = function BlockLogin(_ref) {
23269
23269
  buttonText: "GOOGLE",
23270
23270
  onSuccess: onSuccessGoogle,
23271
23271
  cookiePolicy: "single_host_origin",
23272
- className: styles["btn-login-google"] + " p-0 mb-4 mb-md-0"
23272
+ className: customStyles["btn-login-google"] + " p-0 mb-4 mb-md-0"
23273
23273
  })), React__default.createElement(reactstrap.Col, {
23274
23274
  lg: 6,
23275
23275
  md: 6,
23276
23276
  xs: 12,
23277
- className: styles["btn-login-sso"] + " pl-md-2",
23277
+ className: customStyles["btn-login-sso"] + " pl-md-2",
23278
23278
  hidden: !(school !== null && school !== void 0 && school.schoolId)
23279
23279
  }, React__default.createElement("div", {
23280
- className: styles["btn-login-with-sso"],
23280
+ className: customStyles["btn-login-with-sso"],
23281
23281
  onClick: function onClick() {
23282
23282
  return fnLoginSSO(clickHandler);
23283
23283
  }
@@ -23486,22 +23486,22 @@ var BlockForgetPassword = function BlockForgetPassword(_ref) {
23486
23486
  touched = formikProps.touched,
23487
23487
  errors = formikProps.errors;
23488
23488
  return React__default.createElement("div", {
23489
- className: "" + styles["box-login"]
23489
+ className: "" + customStyles["box-login"]
23490
23490
  }, React__default.createElement("div", {
23491
- className: "" + styles["block-login"]
23491
+ className: "" + customStyles["block-login"]
23492
23492
  }, React__default.createElement("div", {
23493
- className: "" + styles["block-form"]
23493
+ className: "" + customStyles["block-form"]
23494
23494
  }, React__default.createElement("div", {
23495
23495
  className: "d-flex align-items-center mb-4"
23496
23496
  }, React__default.createElement("img", {
23497
23497
  src: "" + getStaticFileUrl("/images/mario-logo.png"),
23498
- className: styles["school-icon"] + " mr-3"
23498
+ className: customStyles["school-icon"] + " mr-3"
23499
23499
  }), React__default.createElement("p", {
23500
- className: styles["school-name"] + " mb-0"
23500
+ className: customStyles["school-name"] + " mb-0"
23501
23501
  }, school.schoolName)), React__default.createElement("p", {
23502
- className: styles["title-login"] + " "
23502
+ className: customStyles["title-login"] + " "
23503
23503
  }, "Forgot password"), React__default.createElement("p", {
23504
- className: styles["recover-account"] + " mb-5"
23504
+ className: customStyles["recover-account"] + " mb-5"
23505
23505
  }, "Enter email to recover your account"), React__default.createElement("div", {
23506
23506
  className: "w-100"
23507
23507
  }, React__default.createElement(reactstrap.Input, {
@@ -23515,14 +23515,14 @@ var BlockForgetPassword = function BlockForgetPassword(_ref) {
23515
23515
  text: errors.email
23516
23516
  })), React__default.createElement(reactRouterDom.Link, {
23517
23517
  to: "/login",
23518
- className: styles["link-to-login"] + " mt-2"
23518
+ className: customStyles["link-to-login"] + " mt-2"
23519
23519
  }, "Return to login"), React__default.createElement(reactGoogleRecaptchaV3.GoogleReCaptcha, {
23520
23520
  action: "forgetPass",
23521
23521
  onVerify: handleVerify
23522
23522
  }), React__default.createElement(reactstrap.Col, {
23523
23523
  className: "p-0"
23524
23524
  }, React__default.createElement("button", {
23525
- className: styles["btn-login"] + " mt-5",
23525
+ className: customStyles["btn-login"] + " mt-5",
23526
23526
  onClick: function onClick() {
23527
23527
  return handleSubmit();
23528
23528
  }
@@ -23574,15 +23574,15 @@ var BlockResetPassword = function BlockResetPassword() {
23574
23574
  setFieldValue("token", token);
23575
23575
  }, []);
23576
23576
  return React__default.createElement(reactstrap.Row, {
23577
- className: "" + styles["box-login"]
23577
+ className: "" + customStyles["box-login"]
23578
23578
  }, React__default.createElement(reactstrap.Col, {
23579
23579
  className: "p-0"
23580
23580
  }, React__default.createElement("div", {
23581
- className: "" + styles["block-login"]
23581
+ className: "" + customStyles["block-login"]
23582
23582
  }, React__default.createElement("div", {
23583
- className: "" + styles["block-form"]
23583
+ className: "" + customStyles["block-form"]
23584
23584
  }, React__default.createElement("p", {
23585
- className: "" + styles["title-login"]
23585
+ className: "" + customStyles["title-login"]
23586
23586
  }, "Reset Password"), React__default.createElement("div", {
23587
23587
  className: "w-100"
23588
23588
  }, validLink ? React__default.createElement(React__default.Fragment, null, React__default.createElement(reactstrap.Label, {
@@ -23612,13 +23612,13 @@ var BlockResetPassword = function BlockResetPassword() {
23612
23612
  }), touched.reEnterPassword && errors.reEnterPassword && React__default.createElement(ErrorHandler, {
23613
23613
  text: errors.reEnterPassword
23614
23614
  })) : React__default.createElement(React__default.Fragment, null, React__default.createElement("p", {
23615
- className: styles["recover-account"] + " mb-5"
23615
+ className: customStyles["recover-account"] + " mb-5"
23616
23616
  }, "Invalid reset password link"), React__default.createElement("p", {
23617
23617
  className: "w-100"
23618
23618
  }, "It may have been accessed before or expired or you have just tried to reset another account's password"))), validLink && React__default.createElement(reactstrap.Col, {
23619
23619
  className: "p-0"
23620
23620
  }, React__default.createElement("button", {
23621
- className: styles["btn-login"] + " mt-4",
23621
+ className: customStyles["btn-login"] + " mt-4",
23622
23622
  onClick: function onClick() {
23623
23623
  return handleSubmit();
23624
23624
  }
@@ -23626,11 +23626,11 @@ var BlockResetPassword = function BlockResetPassword() {
23626
23626
  className: "d-flex justify-content-between"
23627
23627
  }, React__default.createElement(reactRouterDom.Link, {
23628
23628
  to: "/login",
23629
- className: "" + styles["link-to-login"]
23629
+ className: "" + customStyles["link-to-login"]
23630
23630
  }, "Return to login"), React__default.createElement("a", {
23631
23631
  href: "/privacy-policy/",
23632
23632
  target: "blank",
23633
- className: "" + styles["link-to-login"]
23633
+ className: "" + customStyles["link-to-login"]
23634
23634
  }, "Privacy Policy"))))));
23635
23635
  });
23636
23636
  };
@@ -23656,7 +23656,7 @@ var Login = function Login(props) {
23656
23656
  isResetPassword && (document.title = RESET_PASSWORD_TITLE);
23657
23657
  }, [isLogin, isForgotPassword, isResetPassword]);
23658
23658
  return React__default.createElement("div", {
23659
- className: styles["login"] + " container-fluid font-family-lato"
23659
+ className: customStyles["login"] + " container-fluid font-family-lato"
23660
23660
  }, React__default.createElement(reactstrap.Row, {
23661
23661
  className: "h-100"
23662
23662
  }, React__default.createElement(reactstrap.Col, {
@@ -23681,7 +23681,7 @@ var Login = function Login(props) {
23681
23681
  })), isResetPassword && React__default.createElement(BlockResetPassword, null), React__default.createElement("a", {
23682
23682
  href: "/privacy-policy/",
23683
23683
  target: "blank",
23684
- className: "" + styles["privacy-policy"]
23684
+ className: "" + customStyles["privacy-policy"]
23685
23685
  }, "Privacy Policy")), !isResetPassword && React__default.createElement(reactstrap.Col, {
23686
23686
  className: "p-3 mh-100 d-flex justify-content-end",
23687
23687
  lg: 4,
@@ -23689,17 +23689,17 @@ var Login = function Login(props) {
23689
23689
  xs: 12
23690
23690
  }, React__default.createElement("img", {
23691
23691
  src: "" + getStaticFileUrl(window.innerWidth > 992 ? "/images/img-login.png" : "/images/img-login-tablet.png"),
23692
- className: "" + styles["img-login"]
23692
+ className: "" + customStyles["img-login"]
23693
23693
  }))));
23694
23694
  };
23695
23695
 
23696
23696
  var QuoteContent = function QuoteContent() {
23697
23697
  return React__default.createElement("div", {
23698
- className: "" + styles["content-quote"]
23698
+ className: "" + customStyles["content-quote"]
23699
23699
  }, React__default.createElement("div", {
23700
- className: styles["title-quote"] + " d-block"
23700
+ className: customStyles["title-quote"] + " d-block"
23701
23701
  }, React__default.createElement("p", null, "Powerful"), React__default.createElement("p", null, "Personalized"), React__default.createElement("p", null, "Learning")), React__default.createElement("div", {
23702
- className: styles["descriptions-quote"] + " d-block"
23702
+ className: customStyles["descriptions-quote"] + " d-block"
23703
23703
  }, React__default.createElement("p", null, "Focus on what matters most to you and"), React__default.createElement("p", null, "make learning meaningful.")));
23704
23704
  };
23705
23705
 
@@ -23708,14 +23708,14 @@ var IconContent = function IconContent(_ref) {
23708
23708
  content = _ref.content;
23709
23709
  return React__default.createElement("div", {
23710
23710
  key: content,
23711
- className: "" + styles["content-icon"]
23711
+ className: "" + customStyles["content-icon"]
23712
23712
  }, React__default.createElement("div", {
23713
- className: "" + styles["title-icon"]
23713
+ className: "" + customStyles["title-icon"]
23714
23714
  }, React__default.createElement("img", {
23715
23715
  src: getStaticFileUrl(srcIcon),
23716
23716
  alt: "icon"
23717
23717
  })), React__default.createElement("div", {
23718
- className: "" + styles["descriptions-icon"],
23718
+ className: "" + customStyles["descriptions-icon"],
23719
23719
  dangerouslySetInnerHTML: {
23720
23720
  __html: content
23721
23721
  }
@@ -23737,12 +23737,12 @@ var ContentHomePage = function ContentHomePage(_ref) {
23737
23737
  _objectDestructuringEmpty(_ref);
23738
23738
 
23739
23739
  return React__default.createElement(reactstrap.Row, {
23740
- className: "" + styles["page-not-login"]
23740
+ className: "" + customStyles["page-not-login"]
23741
23741
  }, React__default.createElement(reactstrap.Col, {
23742
23742
  md: 12
23743
23743
  }, React__default.createElement(QuoteContent, null)), React__default.createElement(reactstrap.Col, {
23744
23744
  md: 12,
23745
- className: styles["box-content-home-page"] + " d-flex align-items-center"
23745
+ className: customStyles["box-content-home-page"] + " d-flex align-items-center"
23746
23746
  }, contents.map(function (content) {
23747
23747
  return React__default.createElement(IconContent, {
23748
23748
  key: content.content,
@@ -23765,10 +23765,10 @@ var BlockBackground = function BlockBackground(_ref) {
23765
23765
 
23766
23766
  var ref = React.useRef();
23767
23767
  var getActiveClass = React.useCallback(function (index) {
23768
- return index === activeImage ? styles["active"] + " " + styles["show"] : '';
23768
+ return index === activeImage ? customStyles["active"] + " " + customStyles["show"] : '';
23769
23769
  }, [activeImage]);
23770
23770
  var getBehindClass = React.useCallback(function (index) {
23771
- return activeImage === 0 && index === data.length - 1 || index === activeImage - 1 ? styles["behind"] : '';
23771
+ return activeImage === 0 && index === data.length - 1 || index === activeImage - 1 ? customStyles["behind"] : '';
23772
23772
  }, [activeImage, data.length]);
23773
23773
  var animate = React.useCallback(function () {
23774
23774
  ref && ref.current && clearInterval(ref.current);
@@ -23785,7 +23785,7 @@ var BlockBackground = function BlockBackground(_ref) {
23785
23785
  };
23786
23786
  }, [data.length, duration]);
23787
23787
  return React__default.createElement("div", {
23788
- className: styles["bg-animate"] + " position-absolute"
23788
+ className: customStyles["bg-animate"] + " position-absolute"
23789
23789
  }, data.map(function (img, index) {
23790
23790
  return React__default.createElement("img", {
23791
23791
  key: index,
@@ -23821,55 +23821,55 @@ var Dashboard = function Dashboard(_ref) {
23821
23821
  !!user ? document.title = DASHBOARD_TITLE : document.title = ROOT_TITLE;
23822
23822
  }, [user]);
23823
23823
  return React__default.createElement("div", {
23824
- className: styles["login"] + " " + styles["red-background"] + " position-relative"
23824
+ className: customStyles["login"] + " " + customStyles["red-background"] + " position-relative"
23825
23825
  }, React__default.createElement("span", {
23826
- className: "" + styles["version-prod"]
23826
+ className: "" + customStyles["version-prod"]
23827
23827
  }, "v " + version), React__default.createElement(BlockBackground, {
23828
23828
  data: BG_IMAGES
23829
23829
  }), React__default.createElement("div", {
23830
- className: "" + styles["login-content"]
23830
+ className: "" + customStyles["login-content"]
23831
23831
  }, React__default.createElement(reactstrap.Navbar, {
23832
23832
  light: true,
23833
23833
  expand: "md"
23834
23834
  }, React__default.createElement(reactstrap.NavbarBrand, {
23835
23835
  href: "/",
23836
- className: "" + styles["logo-home"]
23836
+ className: "" + customStyles["logo-home"]
23837
23837
  }, React__default.createElement("img", {
23838
23838
  src: getStaticFileUrl("/images/logo-white.svg"),
23839
23839
  alt: "mario"
23840
23840
  })), React__default.createElement(gi.GiHamburgerMenu, {
23841
23841
  onClick: toggle,
23842
- className: styles["hide-in-desktop"] + " " + styles["hamburger-menu"]
23842
+ className: customStyles["hide-in-desktop"] + " " + customStyles["hamburger-menu"]
23843
23843
  }), React__default.createElement(reactstrap.Collapse, {
23844
23844
  isOpen: isOpen,
23845
23845
  navbar: true,
23846
- className: "" + styles["collapse-box"]
23846
+ className: "" + customStyles["collapse-box"]
23847
23847
  }, React__default.createElement(reactstrap.Nav, {
23848
- className: styles["nav-home"] + " d-md-flex w-100 justify-content-center mr-auto",
23848
+ className: customStyles["nav-home"] + " d-md-flex w-100 justify-content-center mr-auto",
23849
23849
  navbar: true
23850
23850
  }, React__default.createElement(reactstrap.NavItem, null, React__default.createElement(reactstrap.NavLink, {
23851
- className: styles["learn-more"] + " align-self-md-center",
23851
+ className: customStyles["learn-more"] + " align-self-md-center",
23852
23852
  href: "https://marioframework.com/software",
23853
23853
  target: "blank"
23854
23854
  }, "Learn More")), React__default.createElement(reactstrap.NavItem, null, React__default.createElement(reactRouterDom.Link, {
23855
- className: styles["contact"] + " align-self-md-center",
23855
+ className: customStyles["contact"] + " align-self-md-center",
23856
23856
  to: "/contact"
23857
23857
  }, "Contact")), React__default.createElement(reactstrap.NavItem, null, React__default.createElement(reactstrap.NavLink, {
23858
- className: styles["learn-more"] + " align-self-md-center",
23858
+ className: customStyles["learn-more"] + " align-self-md-center",
23859
23859
  href: "/privacy-policy",
23860
23860
  target: "blank"
23861
23861
  }, "Privacy Policy"))), React__default.createElement("div", {
23862
- className: styles["hide-in-mobile"] + " d-flex justify-content-end"
23862
+ className: customStyles["hide-in-mobile"] + " d-flex justify-content-end"
23863
23863
  }, user ? React__default.createElement(reactRouterDom.Link, {
23864
23864
  to: user.roles.includes("Admin") ? HOME_ADMIN : user.roles.includes("Teacher") ? HOME_TEACHER : HOME_STUDENT,
23865
- className: "" + styles["btn-trans-border"]
23865
+ className: "" + customStyles["btn-trans-border"]
23866
23866
  }, "Dashboard") : React__default.createElement(reactRouterDom.Link, {
23867
23867
  to: "/login",
23868
- className: "" + styles["btn-trans-border"]
23868
+ className: "" + customStyles["btn-trans-border"]
23869
23869
  }, "Login")))), React__default.createElement("div", {
23870
23870
  className: ""
23871
23871
  }, React__default.createElement(ContentHomePage, null)), React__default.createElement("div", {
23872
- className: "" + styles["digital-privacy-icon"]
23872
+ className: "" + customStyles["digital-privacy-icon"]
23873
23873
  }, React__default.createElement("a", {
23874
23874
  href: "https://cert.privo.com/#/companies/marioFrameworkLlc",
23875
23875
  target: "blank"
@@ -23917,25 +23917,25 @@ var TheSidebar = function TheSidebar(_ref) {
23917
23917
  return dispatch(setSidebar(val));
23918
23918
  },
23919
23919
  minimize: toggleMinimize,
23920
- className: "" + styles["box-sidebar"]
23920
+ className: "" + customStyles["box-sidebar"]
23921
23921
  }, React__default.createElement(react.CSidebarBrand, {
23922
- className: styles["box-sidebar-header"] + " d-md-down-none justify-content-around"
23922
+ className: customStyles["box-sidebar-header"] + " d-md-down-none justify-content-around"
23923
23923
  }, React__default.createElement("div", null, React__default.createElement("img", {
23924
23924
  src: Images.LOGO,
23925
- className: styles["sidebar-logo"] + " c-sidebar-brand-full"
23925
+ className: customStyles["sidebar-logo"] + " c-sidebar-brand-full"
23926
23926
  }), React__default.createElement("img", {
23927
23927
  src: Images.LOGO_MINIMIZED,
23928
- className: styles["sidebar-logo"] + " " + styles["sidebar-btn-minimized"] + " c-sidebar-brand-minimized",
23928
+ className: customStyles["sidebar-logo"] + " " + customStyles["sidebar-btn-minimized"] + " c-sidebar-brand-minimized",
23929
23929
  onClick: function onClick() {
23930
23930
  return setToggleMinimize(false);
23931
23931
  }
23932
23932
  })), React__default.createElement(cg.CgMenuRight, {
23933
- className: styles["sidebar-btn-minimized"] + " c-sidebar-brand-full",
23933
+ className: customStyles["sidebar-btn-minimized"] + " c-sidebar-brand-full",
23934
23934
  onClick: function onClick() {
23935
23935
  return setToggleMinimize(true);
23936
23936
  }
23937
23937
  })), React__default.createElement(react.CSidebarNav, {
23938
- className: styles["sidebar-nav-links"] + " " + (toggleMinimize && styles["sidebar-nav-links-hover"])
23938
+ className: customStyles["sidebar-nav-links"] + " " + (toggleMinimize && customStyles["sidebar-nav-links-hover"])
23939
23939
  }, React__default.createElement(react.CCreateElement, {
23940
23940
  items: navigation,
23941
23941
  components: {
@@ -23946,10 +23946,10 @@ var TheSidebar = function TheSidebar(_ref) {
23946
23946
  }
23947
23947
  })), React__default.createElement(react.CSidebarFooter, {
23948
23948
  onClick: signOut,
23949
- className: styles["box-logout"] + " p-3 d-flex align-items-center cursor-point"
23949
+ className: customStyles["box-logout"] + " p-3 d-flex align-items-center cursor-point"
23950
23950
  }, React__default.createElement(ri.RiLogoutBoxRLine, {
23951
23951
  onClick: signOut,
23952
- className: "" + styles["sidebar-logout"]
23952
+ className: "" + customStyles["sidebar-logout"]
23953
23953
  }), React__default.createElement("p", {
23954
23954
  onClick: signOut
23955
23955
  }, "Log out")));
@@ -24066,7 +24066,7 @@ var NotificationButton = function NotificationButton(_ref) {
24066
24066
  fontSize: "20px"
24067
24067
  }
24068
24068
  }), !!unReadNotification && React__default.createElement("div", {
24069
- className: styles["notification-count"] + " position-absolute text-small"
24069
+ className: customStyles["notification-count"] + " position-absolute text-small"
24070
24070
  }, unReadNotification)));
24071
24071
  };
24072
24072
 
@@ -24115,23 +24115,23 @@ var TheHeaderDropdown = function TheHeaderDropdown(_ref) {
24115
24115
  return React__default.createElement(reactstrap.Dropdown, {
24116
24116
  isOpen: dropdownOpen,
24117
24117
  toggle: toggle,
24118
- className: "" + styles["dropdown-menu"]
24118
+ className: "" + customStyles["dropdown-menu"]
24119
24119
  }, React__default.createElement(reactstrap.DropdownToggle, {
24120
- className: styles["header-avatar"] + " "
24120
+ className: customStyles["header-avatar"] + " "
24121
24121
  }, React__default.createElement("img", {
24122
24122
  src: avatarUrl,
24123
24123
  alt: "avatar"
24124
24124
  })), React__default.createElement(reactstrap.DropdownMenu, {
24125
- className: styles["dropdown-content"]
24125
+ className: customStyles["dropdown-content"]
24126
24126
  }, React__default.createElement("div", {
24127
- className: styles["item-contact"] + " d-flex"
24127
+ className: customStyles["item-contact"] + " d-flex"
24128
24128
  }, React__default.createElement("div", {
24129
- className: styles["img-avatar"] + " d-flex align-items-center"
24129
+ className: customStyles["img-avatar"] + " d-flex align-items-center"
24130
24130
  }, React__default.createElement("img", {
24131
24131
  src: avatarUrl,
24132
24132
  alt: "admin@bootstrapmaster.com"
24133
24133
  })), React__default.createElement("div", {
24134
- className: styles["content-text"]
24134
+ className: customStyles["content-text"]
24135
24135
  }, React__default.createElement("h5", null, user.firstName + " " + user.lastName), React__default.createElement("span", {
24136
24136
  className: "block"
24137
24137
  }, email), !isDistrict && React__default.createElement(reactstrap.NavLink, null, (isAdmin || isTeacher) && React__default.createElement(reactRouterDom.Link, {
@@ -24140,18 +24140,18 @@ var TheHeaderDropdown = function TheHeaderDropdown(_ref) {
24140
24140
  onClick: function onClick() {
24141
24141
  onToggleModel === null || onToggleModel === void 0 ? void 0 : onToggleModel();
24142
24142
  },
24143
- className: styles["dropdown-change"] + " px-0"
24143
+ className: customStyles["dropdown-change"] + " px-0"
24144
24144
  }, React__default.createElement("div", {
24145
- className: styles["item-address"] + " d-flex align-items-center w-100 text-uppercase mb-2"
24145
+ className: customStyles["item-address"] + " d-flex align-items-center w-100 text-uppercase mb-2"
24146
24146
  }, React__default.createElement("span", {
24147
24147
  className: "mr-2"
24148
24148
  }, React__default.createElement("i", {
24149
24149
  className: "fas fa-cogs h6 mb-0"
24150
24150
  })), "Role change")), React__default.createElement(reactstrap.DropdownItem, {
24151
24151
  onClick: signOut,
24152
- className: styles["dropdown-change"] + " px-0"
24152
+ className: customStyles["dropdown-change"] + " px-0"
24153
24153
  }, React__default.createElement("div", {
24154
- className: styles["item-address"] + " " + styles["item-logout"] + " d-flex align-items-center w-100"
24154
+ className: customStyles["item-address"] + " " + customStyles["item-logout"] + " d-flex align-items-center w-100"
24155
24155
  }, React__default.createElement("span", {
24156
24156
  className: "mr-2 d-flex hover-opacity"
24157
24157
  }, React__default.createElement("i", {
@@ -24159,6 +24159,195 @@ var TheHeaderDropdown = function TheHeaderDropdown(_ref) {
24159
24159
  })), "LOG OUT"))));
24160
24160
  };
24161
24161
 
24162
+ var apiGetLanguage = function apiGetLanguage() {
24163
+ return api.get(BASE_URL + "/api/language");
24164
+ };
24165
+
24166
+ var apiUpdateLanguage = function apiUpdateLanguage(lang) {
24167
+ return api.put(BASE_URL + "/api/language?lang=" + lang);
24168
+ };
24169
+
24170
+ var LANGUAGE_SYSTEM = "LANGUAGE_SYSTEM";
24171
+
24172
+ var useLanguages = function useLanguages() {
24173
+ var dispatch = reactRedux.useDispatch();
24174
+
24175
+ var _useTranslation = reactI18next.useTranslation(),
24176
+ i18n = _useTranslation.i18n;
24177
+
24178
+ var language = reactRedux.useSelector(function (state) {
24179
+ return state.common.language;
24180
+ });
24181
+ var defaultLanguage = getCookieValue(LANGUAGE_SYSTEM) != null ? getCookieValue(LANGUAGE_SYSTEM) : DEFAULT_LANGUAGE_CODE;
24182
+
24183
+ var _useState = React.useState([]),
24184
+ languageList = _useState[0],
24185
+ setLanguageList = _useState[1];
24186
+
24187
+ var _useState2 = React.useState(false),
24188
+ dropdownOpen = _useState2[0],
24189
+ setDropdownOpen = _useState2[1];
24190
+
24191
+ var _useState3 = React.useState(defaultLanguage),
24192
+ currentLang = _useState3[0],
24193
+ setCurrentLang = _useState3[1];
24194
+
24195
+ var toggle = function toggle() {
24196
+ return setDropdownOpen(function (prevState) {
24197
+ return !prevState;
24198
+ });
24199
+ };
24200
+
24201
+ var changeLanguageApp = function changeLanguageApp(lang) {
24202
+ try {
24203
+ var _temp3 = function _temp3() {
24204
+ dispatch(setLoading(false));
24205
+ };
24206
+
24207
+ dispatch(setLoading(true));
24208
+
24209
+ var _temp4 = _catch(function () {
24210
+ return Promise.resolve(apiUpdateLanguage(lang)).then(function () {
24211
+ i18n.changeLanguage(lang);
24212
+ setCurrentLang(lang);
24213
+ dispatch(setLanguage(lang));
24214
+ });
24215
+ }, function (err) {
24216
+ var _err$response, _err$response$data;
24217
+
24218
+ dispatch(setAlert({
24219
+ type: "danger",
24220
+ message: ((_err$response = err.response) === null || _err$response === void 0 ? void 0 : (_err$response$data = _err$response.data) === null || _err$response$data === void 0 ? void 0 : _err$response$data.title) || err.message
24221
+ }));
24222
+ });
24223
+
24224
+ return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
24225
+ } catch (e) {
24226
+ return Promise.reject(e);
24227
+ }
24228
+ };
24229
+
24230
+ var getListLanguage = function getListLanguage() {
24231
+ try {
24232
+ var _temp6 = _catch(function () {
24233
+ return Promise.resolve(apiGetLanguage()).then(function (res) {
24234
+ setLanguageList(res.data);
24235
+ });
24236
+ }, function (err) {
24237
+ var _err$response2, _err$response2$data;
24238
+
24239
+ dispatch(setAlert({
24240
+ type: "danger",
24241
+ message: ((_err$response2 = err.response) === null || _err$response2 === void 0 ? void 0 : (_err$response2$data = _err$response2.data) === null || _err$response2$data === void 0 ? void 0 : _err$response2$data.title) || err.message
24242
+ }));
24243
+ });
24244
+
24245
+ return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
24246
+ } catch (e) {
24247
+ return Promise.reject(e);
24248
+ }
24249
+ };
24250
+
24251
+ React.useEffect(function () {
24252
+ defaultLanguage != language && changeLanguageApp(defaultLanguage);
24253
+ getListLanguage();
24254
+ }, []);
24255
+ return {
24256
+ languageList: languageList,
24257
+ toggle: toggle,
24258
+ dropdownOpen: dropdownOpen,
24259
+ currentLang: currentLang,
24260
+ changeLanguageApp: changeLanguageApp,
24261
+ setCurrentLang: setCurrentLang
24262
+ };
24263
+ };
24264
+
24265
+ var TheLanguageDropdown = function TheLanguageDropdown() {
24266
+ var _useLanguages = useLanguages(),
24267
+ languageList = _useLanguages.languageList,
24268
+ toggle = _useLanguages.toggle,
24269
+ dropdownOpen = _useLanguages.dropdownOpen,
24270
+ currentLang = _useLanguages.currentLang,
24271
+ changeLanguageApp = _useLanguages.changeLanguageApp;
24272
+
24273
+ var currentLanguage = React.useMemo(function () {
24274
+ var current = languageList.find(function (i) {
24275
+ return i.code === currentLang;
24276
+ });
24277
+ if (!current) return null;
24278
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement("img", {
24279
+ className: "mr-2 " + customStyles['dropdown-menu-flag'],
24280
+ src: "" + getStaticFileUrl(current.image)
24281
+ }), " ", current.name);
24282
+ }, [currentLang, languageList]);
24283
+ return React__default.createElement(reactstrap.Dropdown, {
24284
+ isOpen: dropdownOpen,
24285
+ toggle: toggle,
24286
+ className: "" + customStyles["dropdown-menu"]
24287
+ }, React__default.createElement(reactstrap.DropdownToggle, {
24288
+ className: customStyles["header-avatar"] + " d-flex align-items-center"
24289
+ }, React__default.createElement("span", {
24290
+ style: {
24291
+ color: "#000",
24292
+ textTransform: "capitalize",
24293
+ display: 'flex',
24294
+ alignItems: 'center'
24295
+ }
24296
+ }, currentLanguage, React__default.createElement(bs.BsChevronDown, {
24297
+ className: "ml-2",
24298
+ style: {
24299
+ fontSize: '10px'
24300
+ }
24301
+ }))), React__default.createElement(reactstrap.DropdownMenu, {
24302
+ className: customStyles["dropdown-content-language"]
24303
+ }, !!languageList && languageList.length > 0 && languageList.map(function (lang, index) {
24304
+ return React__default.createElement(reactstrap.DropdownItem, {
24305
+ key: lang.code,
24306
+ className: customStyles["dropdown-change"] + " px-0 py-0 " + (index === languageList.length - 1 ? "pb-2" : "pt-2"),
24307
+ onClick: function onClick() {
24308
+ return changeLanguageApp(lang.code);
24309
+ }
24310
+ }, React__default.createElement("div", {
24311
+ className: customStyles["dropdown-item-language"] + " " + customStyles["item-logout"] + " " + (currentLang == lang.code ? customStyles['dropdown-item-language-active'] : "") + " d-flex align-items-center w-100"
24312
+ }, React__default.createElement("span", {
24313
+ className: "mr-2 d-flex hover-opacity"
24314
+ }, React__default.createElement("img", {
24315
+ style: {
24316
+ width: "30px",
24317
+ height: "25px",
24318
+ borderRadius: "5px"
24319
+ },
24320
+ src: getStaticFileUrl(lang.image)
24321
+ })), lang.name));
24322
+ })));
24323
+ };
24324
+
24325
+ var TheHeader = function TheHeader(_ref) {
24326
+ var onToggleModel = _ref.onToggleModel;
24327
+ var isDistrict = window.location.host.includes("-district");
24328
+ return React__default.createElement(react.CHeader, {
24329
+ withSubheader: true,
24330
+ className: "d-flex align-items-center justify-content-end"
24331
+ }, React__default.createElement(react.CHeaderBrand, {
24332
+ className: "mx-auto flex-grow-1 d-lg-none",
24333
+ to: "/"
24334
+ }, React__default.createElement("img", {
24335
+ src: Images.LOGO_HEADER,
24336
+ className: customStyles["header-logo"]
24337
+ })), React__default.createElement(react.CHeaderNav, {
24338
+ className: "pr-3"
24339
+ }, React__default.createElement(TheLanguageDropdown, null), React__default.createElement("a", {
24340
+ className: "mr-3",
24341
+ style: {
24342
+ color: '#000'
24343
+ },
24344
+ href: '/privacy-policy',
24345
+ target: "blank"
24346
+ }, "Privacy Policy"), !isDistrict && React__default.createElement(NotificationButton, null), React__default.createElement(TheHeaderDropdown, {
24347
+ onToggleModel: onToggleModel
24348
+ })));
24349
+ };
24350
+
24162
24351
  var TITLE$2 = "Not found";
24163
24352
 
24164
24353
  var NotFound = function NotFound() {
@@ -24219,51 +24408,270 @@ var TheContent = function TheContent(_ref) {
24219
24408
 
24220
24409
  var TheContent$1 = React__default.memo(TheContent);
24221
24410
 
24222
- var buttonTextStyle = {
24223
- fontWeight: 500
24224
- };
24225
- var buttonStyle = {
24226
- height: 38
24411
+ var loadingStyle = {
24412
+ minWidth: "100vw",
24413
+ minHeight: "100vh",
24414
+ position: "fixed",
24415
+ top: 0,
24416
+ left: 0,
24417
+ zIndex: 999999999,
24418
+ backgroundColor: "rgba(0, 0, 0, 0.4)",
24419
+ display: "flex",
24420
+ justifyContent: "center",
24421
+ alignItems: "center"
24227
24422
  };
24228
24423
 
24229
- var AddButton = function AddButton(_ref) {
24230
- var text = _ref.text,
24231
- onClick = _ref.onClick,
24232
- className = _ref.className;
24233
- return React__default.createElement(reactstrap.Button, {
24234
- onClick: onClick,
24235
- color: 'success',
24236
- style: buttonStyle,
24237
- className: 'd-flex align-items-center'
24238
- }, React__default.createElement(fa.FaPlus, null), React__default.createElement("span", {
24239
- className: "ml-2 " + className,
24240
- style: buttonTextStyle
24241
- }, text));
24424
+ var Loading = function Loading() {
24425
+ var isLoading = reactRedux.useSelector(function (state) {
24426
+ return state.common.isLoading;
24427
+ });
24428
+ return isLoading ? React__default.createElement("div", {
24429
+ style: loadingStyle
24430
+ }, React__default.createElement("div", {
24431
+ className: "spinner-border text-secondary",
24432
+ role: "status"
24433
+ }, React__default.createElement("span", {
24434
+ className: "sr-only"
24435
+ }, "Loading..."))) : null;
24242
24436
  };
24243
24437
 
24244
- var DeleteButtonIcon = function DeleteButtonIcon(_ref) {
24245
- var onClick = _ref.onClick;
24246
- return React__default.createElement("div", {
24247
- className: "d-inline text-center cursor-pointer hover-opacity",
24248
- title: "Delete",
24249
- onClick: onClick
24250
- }, React__default.createElement(fa.FaTrashAlt, null));
24438
+ var firstCheckToken = function firstCheckToken() {
24439
+ return Promise.resolve(_catch(function () {
24440
+ var token = getAccessToken();
24441
+ return token ? Promise.resolve(checkToken(token)).then(function (tokenStatus) {
24442
+ return tokenStatus.data ? true : false;
24443
+ }) : false;
24444
+ }, function () {
24445
+ return false;
24446
+ }));
24251
24447
  };
24252
24448
 
24253
- var LinkEditButton = function LinkEditButton(_ref) {
24254
- var label = _ref.label,
24255
- onClick = _ref.onClick,
24256
- className = _ref.className;
24257
- return React__default.createElement(reactstrap.Button, {
24258
- className: "text-left py-0 " + className,
24259
- color: "link",
24260
- onClick: onClick
24261
- }, label);
24262
- };
24449
+ var canAccess = function canAccess(userRoles, componentRoles) {
24450
+ if (!Array.isArray(userRoles)) {
24451
+ return false;
24452
+ }
24263
24453
 
24264
- var EmptyDataAlert = function EmptyDataAlert(_ref) {
24265
- var label = _ref.label,
24266
- className = _ref.className,
24454
+ if (Array.isArray(componentRoles)) {
24455
+ var intersects = userRoles.filter(function (i) {
24456
+ return componentRoles.includes(i);
24457
+ });
24458
+ return intersects.length > 0;
24459
+ }
24460
+
24461
+ return true;
24462
+ };
24463
+
24464
+ var ModelSelectRole = function ModelSelectRole(_ref) {
24465
+ var _handleUserRole;
24466
+
24467
+ var open = _ref.open,
24468
+ onToggleModel = _ref.onToggleModel;
24469
+ var dispatch = reactRedux.useDispatch();
24470
+ var history = reactRouterDom.useHistory();
24471
+ var pathname = window.location.pathname;
24472
+ var user = reactRedux.useSelector(function (state) {
24473
+ return state.common.user;
24474
+ });
24475
+ var roles = user === null || user === void 0 ? void 0 : user.roles;
24476
+
24477
+ var handleSelectUserRoles = function handleSelectUserRoles(roles) {
24478
+ if (roles.includes("Admin")) {
24479
+ dispatch(setLoading(true));
24480
+ return history.push("/admin/home");
24481
+ }
24482
+
24483
+ var roleSelect = roles.includes("Teacher/Assistant") ? ["Teacher", "Assistant"] : roles;
24484
+ dispatch(setUser(_extends({}, user, {
24485
+ roles: roleSelect
24486
+ })));
24487
+ localStorage.setItem("ROLES", roleSelect.toString());
24488
+ onToggleModel();
24489
+
24490
+ if (roles.includes("Parent")) {
24491
+ history.push("/parent");
24492
+ } else {
24493
+ pathname !== "/home" ? history.push("/home") : window.location.reload();
24494
+ }
24495
+ };
24496
+
24497
+ return React__default.createElement(reactstrap.Modal, {
24498
+ isOpen: open,
24499
+ toggle: function toggle() {
24500
+ return onToggleModel();
24501
+ },
24502
+ className: "" + customStyles["model-switch-roles"],
24503
+ centered: true
24504
+ }, React__default.createElement("p", {
24505
+ className: "" + customStyles["title"]
24506
+ }, "Continue as:"), React__default.createElement("div", null, (_handleUserRole = handleUserRole(user === null || user === void 0 ? void 0 : user.roles)) === null || _handleUserRole === void 0 ? void 0 : _handleUserRole.map(function (r) {
24507
+ return React__default.createElement("p", {
24508
+ key: r,
24509
+ className: customStyles["item-select-role"] + " " + customStyles[roles.includes("Teacher") && roles.includes("Assistant") && r === "Teacher/Assistant" && !roles.includes("Admin") || roles.includes("Admin") && r === "Admin" || roles.includes(r) && !roles.includes("Admin") ? "item-role-active" : ""],
24510
+ onClick: function onClick() {
24511
+ return handleSelectUserRoles([r]);
24512
+ }
24513
+ }, r == "SecondaryTeacher" ? "Support Teacher" : r);
24514
+ })));
24515
+ };
24516
+
24517
+ var TheLayout = function TheLayout(_ref) {
24518
+ var routes = _ref.routes,
24519
+ navigation = _ref.navigation;
24520
+ var history = reactRouterDom.useHistory();
24521
+ var dispatch = reactRedux.useDispatch();
24522
+ var user = reactRedux.useSelector(function (state) {
24523
+ return state.common.user;
24524
+ });
24525
+ var language = reactRedux.useSelector(function (state) {
24526
+ return state.common.language;
24527
+ });
24528
+
24529
+ var _useState = React.useState(false),
24530
+ openModelSelectRole = _useState[0],
24531
+ setOpenModelSelectRole = _useState[1];
24532
+
24533
+ var _useTranslation = reactI18next.useTranslation(),
24534
+ t = _useTranslation.t;
24535
+
24536
+ var location = reactRouterDom.useLocation();
24537
+ var isNotification = location.pathname.includes("notifications");
24538
+ var isDistrict = window.location.host.includes("-district");
24539
+
24540
+ var handleToggleModel = function handleToggleModel() {
24541
+ setOpenModelSelectRole(!openModelSelectRole);
24542
+ };
24543
+
24544
+ var authRoutes = React.useMemo(function () {
24545
+ return routes.filter(function (route) {
24546
+ return canAccess(user === null || user === void 0 ? void 0 : user.roles, route.roles);
24547
+ }).filter(function (route) {
24548
+ return !!route.isDistrict === isDistrict;
24549
+ });
24550
+ }, [user, language]);
24551
+ var authNavigations = React.useMemo(function () {
24552
+ return navigation.map(function (item) {
24553
+ return _extends({}, item, {
24554
+ name: t(item.name)
24555
+ });
24556
+ }).filter(function (nav) {
24557
+ return canAccess(user === null || user === void 0 ? void 0 : user.roles, nav.roles);
24558
+ }).filter(function (nav) {
24559
+ return !!nav.isDistrict === isDistrict;
24560
+ });
24561
+ }, [user, language]);
24562
+ React.useEffect(function () {
24563
+ checkAuthentication();
24564
+ }, []);
24565
+
24566
+ var checkAuthentication = function checkAuthentication() {
24567
+ try {
24568
+ var _temp2 = _catch(function () {
24569
+ return Promise.resolve(firstCheckToken()).then(function (tokenStatus) {
24570
+ tokenStatus ? loadInfo() : resetAuth();
24571
+ });
24572
+ }, function () {
24573
+ resetAuth();
24574
+ });
24575
+
24576
+ return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
24577
+ } catch (e) {
24578
+ return Promise.reject(e);
24579
+ }
24580
+ };
24581
+
24582
+ var loadInfo = function loadInfo() {
24583
+ try {
24584
+ var _temp4 = _catch(function () {
24585
+ return Promise.resolve(getInfo()).then(function (info) {
24586
+ if (!info) {
24587
+ resetAuth();
24588
+ }
24589
+
24590
+ dispatch(setUser(info.data));
24591
+ });
24592
+ }, function () {
24593
+ resetAuth();
24594
+ });
24595
+
24596
+ return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
24597
+ } catch (e) {
24598
+ return Promise.reject(e);
24599
+ }
24600
+ };
24601
+
24602
+ var resetAuth = function resetAuth() {
24603
+ localStorage.removeItem(ACCESS_TOKEN);
24604
+ sessionStorage.removeItem(ACCESS_TOKEN);
24605
+ history.push("/");
24606
+ };
24607
+
24608
+ if (!user) {
24609
+ return React__default.createElement(Loading, null);
24610
+ }
24611
+
24612
+ return React__default.createElement("div", {
24613
+ className: "c-app c-default-layout"
24614
+ }, !isNotification && React__default.createElement(TheSidebar, {
24615
+ navigation: authNavigations
24616
+ }), React__default.createElement("div", {
24617
+ className: "c-wrapper"
24618
+ }, !isNotification && React__default.createElement(TheHeader, {
24619
+ onToggleModel: handleToggleModel
24620
+ }), React__default.createElement("div", {
24621
+ className: "c-body bg-white"
24622
+ }, React__default.createElement(TheContent$1, {
24623
+ routes: authRoutes
24624
+ }))), React__default.createElement(ModelSelectRole, {
24625
+ open: openModelSelectRole,
24626
+ onToggleModel: handleToggleModel
24627
+ }));
24628
+ };
24629
+
24630
+ var buttonTextStyle = {
24631
+ fontWeight: 500
24632
+ };
24633
+ var buttonStyle = {
24634
+ height: 38
24635
+ };
24636
+
24637
+ var AddButton = function AddButton(_ref) {
24638
+ var text = _ref.text,
24639
+ onClick = _ref.onClick,
24640
+ className = _ref.className;
24641
+ return React__default.createElement(reactstrap.Button, {
24642
+ onClick: onClick,
24643
+ color: 'success',
24644
+ style: buttonStyle,
24645
+ className: 'd-flex align-items-center'
24646
+ }, React__default.createElement(fa.FaPlus, null), React__default.createElement("span", {
24647
+ className: "ml-2 " + className,
24648
+ style: buttonTextStyle
24649
+ }, text));
24650
+ };
24651
+
24652
+ var DeleteButtonIcon = function DeleteButtonIcon(_ref) {
24653
+ var onClick = _ref.onClick;
24654
+ return React__default.createElement("div", {
24655
+ className: "d-inline text-center cursor-pointer hover-opacity",
24656
+ title: "Delete",
24657
+ onClick: onClick
24658
+ }, React__default.createElement(fa.FaTrashAlt, null));
24659
+ };
24660
+
24661
+ var LinkEditButton = function LinkEditButton(_ref) {
24662
+ var label = _ref.label,
24663
+ onClick = _ref.onClick,
24664
+ className = _ref.className;
24665
+ return React__default.createElement(reactstrap.Button, {
24666
+ className: "text-left py-0 " + className,
24667
+ color: "link",
24668
+ onClick: onClick
24669
+ }, label);
24670
+ };
24671
+
24672
+ var EmptyDataAlert = function EmptyDataAlert(_ref) {
24673
+ var label = _ref.label,
24674
+ className = _ref.className,
24267
24675
  style = _ref.style;
24268
24676
 
24269
24677
  var _useTranslation = reactI18next.useTranslation(),
@@ -24575,9 +24983,9 @@ var EmailTemplateList = function EmailTemplateList() {
24575
24983
  };
24576
24984
 
24577
24985
  return React__default.createElement("div", {
24578
- className: "fadeIn animated " + styles[classFontSize]
24986
+ className: "fadeIn animated " + customStyles[classFontSize]
24579
24987
  }, React__default.createElement("h5", {
24580
- className: "mb-2 " + styles['custom-title-font-size']
24988
+ className: "mb-2 " + customStyles['custom-title-font-size']
24581
24989
  }, t(header)), React__default.createElement(reactstrap.Row, {
24582
24990
  className: "my-2"
24583
24991
  }, React__default.createElement(reactstrap.Col, {
@@ -24587,10 +24995,10 @@ var EmailTemplateList = function EmailTemplateList() {
24587
24995
  onClick: function onClick() {
24588
24996
  return goToDetail();
24589
24997
  },
24590
- className: " " + styles['custom-font-size']
24998
+ className: " " + customStyles['custom-font-size']
24591
24999
  })), React__default.createElement(reactstrap.Col, {
24592
25000
  md: 4,
24593
- className: "d-flex justify-content-end align-items-center " + styles['custom-font-size']
25001
+ className: "d-flex justify-content-end align-items-center " + customStyles['custom-font-size']
24594
25002
  }, t('total_of_templates'), ": ", totalItems)), React__default.createElement(reactstrap.Row, {
24595
25003
  className: "mb-2"
24596
25004
  }, React__default.createElement(reactstrap.Col, {
@@ -24602,13 +25010,13 @@ var EmailTemplateList = function EmailTemplateList() {
24602
25010
  responsive: true,
24603
25011
  size: "sm"
24604
25012
  }, React__default.createElement("thead", null, React__default.createElement("tr", null, React__default.createElement("th", {
24605
- className: "align-top " + styles['custom-font-size']
25013
+ className: "align-top " + customStyles['custom-font-size']
24606
25014
  }, t('template_name')), React__default.createElement("th", {
24607
- className: "align-top " + styles['custom-font-size']
25015
+ className: "align-top " + customStyles['custom-font-size']
24608
25016
  }, t('category_name')), React__default.createElement("th", {
24609
- className: "align-top " + styles['custom-font-size']
25017
+ className: "align-top " + customStyles['custom-font-size']
24610
25018
  }, t('created_date')), React__default.createElement("th", {
24611
- className: "text-center " + styles['custom-font-size']
25019
+ className: "text-center " + customStyles['custom-font-size']
24612
25020
  }, t('action')))), React__default.createElement("tbody", null, emailTemplateList.map(function (record) {
24613
25021
  return React__default.createElement("tr", {
24614
25022
  key: record.id
@@ -24619,11 +25027,11 @@ var EmailTemplateList = function EmailTemplateList() {
24619
25027
  onClick: function onClick() {
24620
25028
  return goToDetail(record.id);
24621
25029
  },
24622
- className: " " + styles['custom-font-size']
25030
+ className: " " + customStyles['custom-font-size']
24623
25031
  })), React__default.createElement("td", {
24624
- className: "align-middle " + styles['custom-font-size']
25032
+ className: "align-middle " + customStyles['custom-font-size']
24625
25033
  }, record.category.name), React__default.createElement("td", {
24626
- className: "align-middle " + styles['custom-font-size']
25034
+ className: "align-middle " + customStyles['custom-font-size']
24627
25035
  }, dateFns.format(new Date(record.createdAt), DATE_RESULT)), React__default.createElement("td", {
24628
25036
  className: "text-center align-middle"
24629
25037
  }, React__default.createElement(DeleteButtonIcon, {
@@ -24659,12 +25067,12 @@ var EmailTemplateList = function EmailTemplateList() {
24659
25067
  responsive: true,
24660
25068
  size: "sm"
24661
25069
  }, React__default.createElement("thead", null, React__default.createElement("tr", null, React__default.createElement("th", {
24662
- className: "align-top " + styles['custom-font-size']
25070
+ className: "align-top " + customStyles['custom-font-size']
24663
25071
  }, t('category_name')))), React__default.createElement("tbody", null, mailCategoryList.map(function (record) {
24664
25072
  return React__default.createElement("tr", {
24665
25073
  key: record.id
24666
25074
  }, React__default.createElement("td", {
24667
- className: "align-middle " + styles['custom-font-size']
25075
+ className: "align-middle " + customStyles['custom-font-size']
24668
25076
  }, record.name));
24669
25077
  }))))));
24670
25078
  };
@@ -25370,18 +25778,18 @@ var EmailTemplateDetail = function EmailTemplateDetail() {
25370
25778
  handleBlur = formikProps.handleBlur,
25371
25779
  handleSubmit = formikProps.handleSubmit;
25372
25780
  return React__default.createElement("div", {
25373
- className: "animated fadeIn detail-buttons-padding " + styles[classFontSize],
25781
+ className: "animated fadeIn detail-buttons-padding " + customStyles[classFontSize],
25374
25782
  id: "email-detail"
25375
25783
  }, React__default.createElement(QuitPrompt, {
25376
25784
  when: edited
25377
25785
  }), React__default.createElement("h5", {
25378
- className: "mb-2 " + styles['custom-title-font-size']
25786
+ className: "mb-2 " + customStyles['custom-title-font-size']
25379
25787
  }, t(header)), React__default.createElement(reactstrap.Row, {
25380
25788
  className: "my-2"
25381
25789
  }, React__default.createElement(reactstrap.Col, {
25382
25790
  md: 8
25383
25791
  }, React__default.createElement(RequiredLabel$1, {
25384
- className: " " + styles['custom-font-size'],
25792
+ className: " " + customStyles['custom-font-size'],
25385
25793
  text: t('mail_subject')
25386
25794
  }), React__default.createElement(reactstrap.Input, {
25387
25795
  placeholder: t('mail_subject_nm'),
@@ -25392,13 +25800,13 @@ var EmailTemplateDetail = function EmailTemplateDetail() {
25392
25800
  setEditedTrue();
25393
25801
  },
25394
25802
  onBlur: handleBlur("subject"),
25395
- className: "selector-input " + styles['custom-font-size']
25803
+ className: "selector-input " + customStyles['custom-font-size']
25396
25804
  }), touched.subject && errors.subject && React__default.createElement(ErrorHandler, {
25397
25805
  text: errors.subject
25398
25806
  })), React__default.createElement(reactstrap.Col, {
25399
25807
  md: 4
25400
25808
  }, React__default.createElement(RequiredLabel$1, {
25401
- className: " " + styles['custom-font-size'],
25809
+ className: " " + customStyles['custom-font-size'],
25402
25810
  text: t("category")
25403
25811
  }), React__default.createElement(MailCategorySelector, {
25404
25812
  onChange: function onChange(e) {
@@ -25406,7 +25814,7 @@ var EmailTemplateDetail = function EmailTemplateDetail() {
25406
25814
  setEditedTrue();
25407
25815
  },
25408
25816
  id: values.categoryId,
25409
- className: " " + styles['custom-font-size']
25817
+ className: " " + customStyles['custom-font-size']
25410
25818
  }), touched.categoryId && errors.categoryId && React__default.createElement(ErrorHandler, {
25411
25819
  text: errors.categoryId
25412
25820
  }))), React__default.createElement(reactstrap.Row, {
@@ -25417,7 +25825,7 @@ var EmailTemplateDetail = function EmailTemplateDetail() {
25417
25825
  md: 12,
25418
25826
  className: "mb-2"
25419
25827
  }, React__default.createElement(RequiredLabel$1, {
25420
- className: " " + styles['custom-font-size'],
25828
+ className: " " + customStyles['custom-font-size'],
25421
25829
  text: t('mail_body')
25422
25830
  }), (emailTemplateDetail.body || !id) && React__default.createElement(tinymceReact.Editor, {
25423
25831
  ref: function ref(node) {
@@ -25440,7 +25848,7 @@ var EmailTemplateDetail = function EmailTemplateDetail() {
25440
25848
  color: "link",
25441
25849
  size: "sm",
25442
25850
  onClick: onAttachFile,
25443
- className: "pl-0 " + styles['custom-font-size']
25851
+ className: "pl-0 " + customStyles['custom-font-size']
25444
25852
  }, t('add_attachment'))), React__default.createElement(reactstrap.Col, {
25445
25853
  md: 12
25446
25854
  }, React__default.createElement(reactstrap.Row, null, values.attachments.map(function (attachment) {
@@ -25454,7 +25862,7 @@ var EmailTemplateDetail = function EmailTemplateDetail() {
25454
25862
  return a.name !== attachment.name;
25455
25863
  }));
25456
25864
  },
25457
- className: " " + styles['custom-font-size']
25865
+ className: " " + customStyles['custom-font-size']
25458
25866
  }));
25459
25867
  }), fileUpload.map(function (file, index) {
25460
25868
  return React__default.createElement(reactstrap.Col, {
@@ -25466,12 +25874,12 @@ var EmailTemplateDetail = function EmailTemplateDetail() {
25466
25874
  onRemove: function onRemove() {
25467
25875
  return removeAttachment(file.inputId, file.name);
25468
25876
  },
25469
- className: " " + styles['custom-font-size']
25877
+ className: " " + customStyles['custom-font-size']
25470
25878
  }));
25471
25879
  }))))))), React__default.createElement(reactstrap.Col, {
25472
25880
  md: 4
25473
25881
  }, React__default.createElement(reactstrap.Label, {
25474
- className: " " + styles['custom-font-size']
25882
+ className: " " + customStyles['custom-font-size']
25475
25883
  }, t('mail_params')), React__default.createElement(MailSubject, {
25476
25884
  onClick: function onClick(param) {
25477
25885
  return addParams(param);
@@ -25479,12 +25887,12 @@ var EmailTemplateDetail = function EmailTemplateDetail() {
25479
25887
  isResetPasswordTemplate: values.categoryId == (mailCategoryList && mailCategoryList.length > 0 && mailCategoryList.filter(function (c) {
25480
25888
  return c.name == "Reset password";
25481
25889
  })[0].id),
25482
- className: " " + styles['custom-font-size']
25890
+ className: " " + customStyles['custom-font-size']
25483
25891
  }))), React__default.createElement(DetailActionButtons, {
25484
25892
  confirmText: confirmText,
25485
25893
  onConfirm: handleSubmit,
25486
25894
  onCancel: backToList,
25487
- className: " " + styles['custom-font-size']
25895
+ className: " " + customStyles['custom-font-size']
25488
25896
  }));
25489
25897
  });
25490
25898
  };
@@ -25570,9 +25978,9 @@ var CommonModal = function CommonModal(props, ref) {
25570
25978
  return _toggle(!!edited);
25571
25979
  },
25572
25980
  size: size,
25573
- className: styles[className]
25981
+ className: customStyles[className]
25574
25982
  }, React__default.createElement(reactstrap.ModalHeader, {
25575
- className: "" + styles['custom-title-font-size'],
25983
+ className: "" + customStyles['custom-title-font-size'],
25576
25984
  toggle: function toggle() {
25577
25985
  return _toggle(!!edited);
25578
25986
  }
@@ -25581,10 +25989,10 @@ var CommonModal = function CommonModal(props, ref) {
25581
25989
  }, onConfirm && React__default.createElement(reactstrap.Button, {
25582
25990
  color: "primary",
25583
25991
  onClick: onConfirm,
25584
- className: " " + styles['custom-font-size']
25992
+ className: " " + customStyles['custom-font-size']
25585
25993
  }, confirmText || t('confirm')), React__default.createElement(reactstrap.Button, {
25586
25994
  onClick: cancel,
25587
- className: " " + styles['custom-font-size']
25995
+ className: " " + customStyles['custom-font-size']
25588
25996
  }, cancelText || t("cancel"))));
25589
25997
  };
25590
25998
 
@@ -26158,7 +26566,7 @@ var SkillDetailModal = function SkillDetailModal(props, ref) {
26158
26566
  md: 12,
26159
26567
  className: "mb-2"
26160
26568
  }, React__default.createElement(RequiredLabel$1, {
26161
- className: "" + styles['custom-font-size'],
26569
+ className: "" + customStyles['custom-font-size'],
26162
26570
  text: t('name')
26163
26571
  }), React__default.createElement(reactstrap.Input, {
26164
26572
  name: "name",
@@ -26169,14 +26577,14 @@ var SkillDetailModal = function SkillDetailModal(props, ref) {
26169
26577
  setEditedTrue();
26170
26578
  },
26171
26579
  onBlur: handleBlur("name"),
26172
- className: " " + styles['custom-font-size']
26580
+ className: " " + customStyles['custom-font-size']
26173
26581
  }), touched.name && errors.name && React__default.createElement(ErrorHandler, {
26174
26582
  text: errors.name
26175
26583
  })), React__default.createElement(reactstrap.Col, {
26176
26584
  md: 12,
26177
26585
  className: "mb-2"
26178
26586
  }, React__default.createElement(reactstrap.Label, {
26179
- className: " " + styles['custom-font-size']
26587
+ className: " " + customStyles['custom-font-size']
26180
26588
  }, t('description')), React__default.createElement(reactstrap.Input, {
26181
26589
  type: "textarea",
26182
26590
  rows: 5,
@@ -26188,12 +26596,12 @@ var SkillDetailModal = function SkillDetailModal(props, ref) {
26188
26596
  setEditedTrue();
26189
26597
  },
26190
26598
  onBlur: handleBlur("description"),
26191
- className: " " + styles['custom-font-size']
26599
+ className: " " + customStyles['custom-font-size']
26192
26600
  })), React__default.createElement(reactstrap.Col, {
26193
26601
  md: 12,
26194
26602
  className: "mb-2"
26195
26603
  }, React__default.createElement(reactstrap.Label, {
26196
- className: " " + styles['custom-font-size']
26604
+ className: " " + customStyles['custom-font-size']
26197
26605
  }, t('parent_category')), React__default.createElement(SkillSelector, {
26198
26606
  isDisabled: isDisabled,
26199
26607
  onChange: function onChange(e) {
@@ -26201,7 +26609,7 @@ var SkillDetailModal = function SkillDetailModal(props, ref) {
26201
26609
  setEditedTrue();
26202
26610
  },
26203
26611
  id: values.parentSkillId,
26204
- className: " " + styles['custom-font-size']
26612
+ className: " " + customStyles['custom-font-size']
26205
26613
  }))));
26206
26614
  });
26207
26615
  };
@@ -26512,7 +26920,7 @@ var SkillList = function SkillList() {
26512
26920
  };
26513
26921
 
26514
26922
  return React__default.createElement("div", {
26515
- className: "fadeIn animated " + styles[classFontSize]
26923
+ className: "fadeIn animated " + customStyles[classFontSize]
26516
26924
  }, React__default.createElement(SkillDetailModal$1, {
26517
26925
  ref: modal,
26518
26926
  header: t(!!id ? "edit_skill" : "create_skill"),
@@ -26537,10 +26945,10 @@ var SkillList = function SkillList() {
26537
26945
  onClick: function onClick() {
26538
26946
  return openModal();
26539
26947
  },
26540
- className: " " + styles['custom-font-size']
26948
+ className: " " + customStyles['custom-font-size']
26541
26949
  })), React__default.createElement(reactstrap.Col, {
26542
26950
  md: 4,
26543
- className: "d-flex justify-content-end align-items-center " + styles['custom-font-size']
26951
+ className: "d-flex justify-content-end align-items-center " + customStyles['custom-font-size']
26544
26952
  }, t('total_of_skills'), ": ", totalItems)), React__default.createElement(reactstrap.Row, {
26545
26953
  className: "mb-2"
26546
26954
  }, React__default.createElement(reactstrap.Col, {
@@ -26552,28 +26960,28 @@ var SkillList = function SkillList() {
26552
26960
  responsive: true,
26553
26961
  size: "sm"
26554
26962
  }, React__default.createElement("thead", null, React__default.createElement("tr", null, React__default.createElement("th", {
26555
- className: "align-top " + styles['custom-font-size']
26963
+ className: "align-top " + customStyles['custom-font-size']
26556
26964
  }, t('name')), React__default.createElement("th", {
26557
- className: "align-top " + styles['custom-font-size']
26965
+ className: "align-top " + customStyles['custom-font-size']
26558
26966
  }, t('description')), React__default.createElement("th", {
26559
- className: "text-center " + styles['custom-font-size']
26967
+ className: "text-center " + customStyles['custom-font-size']
26560
26968
  }, t('action')))), React__default.createElement("tbody", null, skillList.map(function (record) {
26561
26969
  return React__default.createElement("tr", {
26562
26970
  key: record.id
26563
26971
  }, React__default.createElement("td", {
26564
- className: "align-middle " + styles['custom-font-size']
26972
+ className: "align-middle " + customStyles['custom-font-size']
26565
26973
  }, React__default.createElement(LinkEditButton, {
26566
26974
  label: record.name,
26567
26975
  onClick: function onClick() {
26568
26976
  return openModal(record.id);
26569
26977
  },
26570
- className: "" + styles['custom-font-size']
26978
+ className: "" + customStyles['custom-font-size']
26571
26979
  }), !!record.path && React__default.createElement("p", {
26572
26980
  className: "mb-0 pl-3"
26573
26981
  }, React__default.createElement("i", null, record.path))), React__default.createElement("td", {
26574
- className: "align-middle " + styles['custom-font-size']
26982
+ className: "align-middle " + customStyles['custom-font-size']
26575
26983
  }, record.description), React__default.createElement("td", {
26576
- className: "text-center align-middle " + styles['custom-font-size']
26984
+ className: "text-center align-middle " + customStyles['custom-font-size']
26577
26985
  }, React__default.createElement(DeleteButtonIcon, {
26578
26986
  onClick: function onClick() {
26579
26987
  return onRemove(record.id);
@@ -26597,7 +27005,7 @@ var SkillList = function SkillList() {
26597
27005
  currentPage: currentPage
26598
27006
  });
26599
27007
  },
26600
- className: "" + styles['custom-font-size']
27008
+ className: "" + customStyles['custom-font-size']
26601
27009
  }))));
26602
27010
  };
26603
27011
 
@@ -26646,7 +27054,7 @@ var CustomTabs = function CustomTabs(props) {
26646
27054
  }
26647
27055
 
26648
27056
  return React__default.createElement(reactstrap.Row, {
26649
- className: styles[classFontSize]
27057
+ className: customStyles[classFontSize]
26650
27058
  }, React__default.createElement(reactstrap.Col, {
26651
27059
  md: 12
26652
27060
  }, React__default.createElement("h5", null, t(title))), React__default.createElement(reactstrap.Col, {
@@ -26657,7 +27065,7 @@ var CustomTabs = function CustomTabs(props) {
26657
27065
  return React__default.createElement(reactstrap.NavItem, {
26658
27066
  key: i.path
26659
27067
  }, React__default.createElement(reactstrap.NavLink, {
26660
- className: (i.path === pathname ? "active" : "") + " " + styles['custom-font-size'] + " cursor-pointer",
27068
+ className: (i.path === pathname ? "active" : "") + " " + customStyles['custom-font-size'] + " cursor-pointer",
26661
27069
  onClick: function onClick() {
26662
27070
  toggle(i.path);
26663
27071
  }
@@ -27205,7 +27613,7 @@ var SearchBoxContainer = function SearchBoxContainer(_ref) {
27205
27613
  return React__default.createElement("div", {
27206
27614
  className: "d-flex align-items-center"
27207
27615
  }, React__default.createElement("div", null, React__default.createElement(AddButton, {
27208
- className: "" + styles['custom-font-size'],
27616
+ className: "" + customStyles['custom-font-size'],
27209
27617
  text: text,
27210
27618
  onClick: onClick
27211
27619
  })), React__default.createElement("div", {
@@ -27215,7 +27623,7 @@ var SearchBoxContainer = function SearchBoxContainer(_ref) {
27215
27623
  onSearch: onSearch,
27216
27624
  placeholder: placeholder,
27217
27625
  style: searchInputStyle,
27218
- className: "" + styles['custom-font-size']
27626
+ className: "" + customStyles['custom-font-size']
27219
27627
  })));
27220
27628
  };
27221
27629
 
@@ -27390,18 +27798,18 @@ var FilterPopover = function FilterPopover(props) {
27390
27798
  className: "pb-3"
27391
27799
  }, React__default.createElement("div", {
27392
27800
  ref: ref,
27393
- className: styles["popover"]
27801
+ className: customStyles["popover"]
27394
27802
  }, React__default.createElement("div", {
27395
- className: "d-flex flex-column " + styles["popover__sort"]
27803
+ className: "d-flex flex-column " + customStyles["popover__sort"]
27396
27804
  }, React__default.createElement(reactstrap.Label, {
27397
27805
  className: "font-weight-bold"
27398
27806
  }, "Sort"), React__default.createElement("div", {
27399
- className: "px-1 " + styles["popover__sort__item"] + " " + (isAscending && styles["popover__sort__item--active"]),
27807
+ className: "px-1 " + customStyles["popover__sort__item"] + " " + (isAscending && customStyles["popover__sort__item--active"]),
27400
27808
  onClick: handleSortAsc
27401
27809
  }, React__default.createElement(ai.AiOutlineSortAscending, {
27402
27810
  className: "mr-1"
27403
27811
  }), "Ascending"), React__default.createElement("div", {
27404
- className: "px-1 mt-1 " + styles["popover__sort__item"] + " " + (isDescending && styles["popover__sort__item--active"]),
27812
+ className: "px-1 mt-1 " + customStyles["popover__sort__item"] + " " + (isDescending && customStyles["popover__sort__item--active"]),
27405
27813
  onClick: handleSortDesc
27406
27814
  }, React__default.createElement(ai.AiOutlineSortDescending, {
27407
27815
  className: "mr-1"
@@ -27412,16 +27820,16 @@ var FilterPopover = function FilterPopover(props) {
27412
27820
  }, React__default.createElement(reactstrap.Label, {
27413
27821
  className: "font-weight-bold"
27414
27822
  }, "Filter"), React__default.createElement("div", {
27415
- className: "position-relative px-1 " + styles["popover__search"]
27823
+ className: "position-relative px-1 " + customStyles["popover__search"]
27416
27824
  }, React__default.createElement(bi.BiSearchAlt2, {
27417
- className: "position-absolute " + styles["popover__search__icon"]
27825
+ className: "position-absolute " + customStyles["popover__search__icon"]
27418
27826
  }), React__default.createElement(reactstrap.Input, {
27419
27827
  ref: inputRef,
27420
- className: styles["popover__search__input"],
27828
+ className: customStyles["popover__search__input"],
27421
27829
  value: searchKey,
27422
27830
  onChange: handleChangeSearchKey
27423
27831
  })), React__default.createElement("div", {
27424
- className: "mx-1 mt-2 p-2 bg-light " + styles["popover__options"]
27832
+ className: "mx-1 mt-2 p-2 bg-light " + customStyles["popover__options"]
27425
27833
  }, React__default.createElement(reactstrap.FormGroup, {
27426
27834
  className: "d-flex align-items-center",
27427
27835
  check: true
@@ -27511,7 +27919,7 @@ var HeaderCell = function HeaderCell(_ref) {
27511
27919
  return React__default.createElement("th", {
27512
27920
  className: data.className
27513
27921
  }, !!id && data.sortBy !== undefined ? React__default.createElement("div", {
27514
- className: "w-100 d-flex justify-content-between align-items-center " + styles["table-filter-icon"]
27922
+ className: "w-100 d-flex justify-content-between align-items-center " + customStyles["table-filter-icon"]
27515
27923
  }, t(data.name), React__default.createElement("div", {
27516
27924
  className: "ml-2 p-1",
27517
27925
  id: id,
@@ -27684,11 +28092,11 @@ var UserList = function UserList() {
27684
28092
  t = _useTranslation.t;
27685
28093
 
27686
28094
  return React__default.createElement("div", {
27687
- className: "fadeIn animated h-100 pt-3 " + styles[classFontSize]
28095
+ className: "fadeIn animated h-100 pt-3 " + customStyles[classFontSize]
27688
28096
  }, React__default.createElement("h5", {
27689
- className: "mb-2 " + styles['custom-title-font-size']
28097
+ className: "mb-2 " + customStyles['custom-title-font-size']
27690
28098
  }, t('user')), React__default.createElement(reactstrap.Row, {
27691
- className: "my-2 " + styles['custom-font-size']
28099
+ className: "my-2 " + customStyles['custom-font-size']
27692
28100
  }, React__default.createElement(reactstrap.Col, {
27693
28101
  md: 8
27694
28102
  }, React__default.createElement(SearchBoxContainer, {
@@ -27705,7 +28113,7 @@ var UserList = function UserList() {
27705
28113
  placeholder: t('type_something_to_search_by_user_name')
27706
28114
  })), React__default.createElement(reactstrap.Col, {
27707
28115
  md: 4,
27708
- className: "d-flex justify-content-end align-items-center " + styles['custom-font-size']
28116
+ className: "d-flex justify-content-end align-items-center " + customStyles['custom-font-size']
27709
28117
  }, t('total_of_users'), ": ", totalItems)), React__default.createElement(reactstrap.Row, {
27710
28118
  className: "mb-2"
27711
28119
  }, React__default.createElement(reactstrap.Col, {
@@ -27725,26 +28133,26 @@ var UserList = function UserList() {
27725
28133
  return React__default.createElement("tr", {
27726
28134
  key: record.id
27727
28135
  }, React__default.createElement("td", {
27728
- className: "align-middle " + styles['custom-font-size']
28136
+ className: "align-middle " + customStyles['custom-font-size']
27729
28137
  }, React__default.createElement(LinkEditButton, {
27730
28138
  label: "" + record.fullName,
27731
28139
  onClick: function onClick() {
27732
28140
  return reDirectDetailPage(record.id);
27733
28141
  }
27734
28142
  })), React__default.createElement("td", {
27735
- className: "align-middle " + styles['custom-font-size']
28143
+ className: "align-middle " + customStyles['custom-font-size']
27736
28144
  }, record.email), React__default.createElement("td", {
27737
- className: "align-middle " + styles['custom-font-size']
28145
+ className: "align-middle " + customStyles['custom-font-size']
27738
28146
  }, record.dateOfBirth !== DATE_MIN_VALUE && differenceInCalendarYears(new Date(), moment.utc(record.dateOfBirth).local().toDate())), React__default.createElement("td", {
27739
- className: "align-middle " + styles['custom-font-size']
28147
+ className: "align-middle " + customStyles['custom-font-size']
27740
28148
  }, !!record.roles && record.roles.map(function (role) {
27741
28149
  return role === "SecondaryTeacher" ? "SupportTeacher" : role;
27742
28150
  }).join(", ")), React__default.createElement("td", {
27743
- className: "align-middle " + styles['custom-font-size']
28151
+ className: "align-middle " + customStyles['custom-font-size']
27744
28152
  }, t(record.isActive ? "active" : "inactive")), React__default.createElement("td", {
27745
- className: "align-middle " + styles['custom-font-size']
28153
+ className: "align-middle " + customStyles['custom-font-size']
27746
28154
  }, utcToLocalTime(record === null || record === void 0 ? void 0 : record.createTime, "yyyy-MM-DD HH:mm")), React__default.createElement("td", {
27747
- className: "align-middle text-center " + styles['custom-font-size']
28155
+ className: "align-middle text-center " + customStyles['custom-font-size']
27748
28156
  }, React__default.createElement(fa.FaUsersCog, {
27749
28157
  style: {
27750
28158
  fontSize: "18px",
@@ -27780,7 +28188,7 @@ var UserList = function UserList() {
27780
28188
  currentPage: currentPage
27781
28189
  });
27782
28190
  },
27783
- className: "" + styles['custom-font-size']
28191
+ className: "" + customStyles['custom-font-size']
27784
28192
  }))));
27785
28193
  };
27786
28194
 
@@ -28359,9 +28767,9 @@ var AssignStudentList = function AssignStudentList() {
28359
28767
  handleAssignMultiStudent = _useAssignStudent.handleAssignMultiStudent;
28360
28768
 
28361
28769
  return React__default.createElement("div", {
28362
- className: "fadeIn animated " + styles[classFontSize]
28770
+ className: "fadeIn animated " + customStyles[classFontSize]
28363
28771
  }, React__default.createElement("h5", {
28364
- className: "mt-4 mb-2 " + styles['custom-title-font-size']
28772
+ className: "mt-4 mb-2 " + customStyles['custom-title-font-size']
28365
28773
  }, t("assign_student")), React__default.createElement(reactstrap.Row, {
28366
28774
  className: "my-2"
28367
28775
  }, React__default.createElement(reactstrap.Col, {
@@ -28374,10 +28782,10 @@ var AssignStudentList = function AssignStudentList() {
28374
28782
  });
28375
28783
  },
28376
28784
  placeholder: t('type_something_to_search_students'),
28377
- className: styles['custom-font-size']
28785
+ className: customStyles['custom-font-size']
28378
28786
  })), React__default.createElement(reactstrap.Col, {
28379
28787
  md: 4,
28380
- className: "d-flex justify-content-end align-items-center " + styles['custom-font-size']
28788
+ className: "d-flex justify-content-end align-items-center " + customStyles['custom-font-size']
28381
28789
  }, t("total_of_users"), ": ", totalItem)), React__default.createElement(reactstrap.Row, {
28382
28790
  className: "mb-2"
28383
28791
  }, React__default.createElement(reactstrap.Col, null, React__default.createElement(reactstrap.Button, {
@@ -28385,7 +28793,7 @@ var AssignStudentList = function AssignStudentList() {
28385
28793
  return handleAssignMultiStudent(isCheck);
28386
28794
  },
28387
28795
  color: "primary",
28388
- className: styles['custom-font-size']
28796
+ className: customStyles['custom-font-size']
28389
28797
  }, t("assign_for_selected_students")))), React__default.createElement(reactstrap.Row, {
28390
28798
  className: "mb-2"
28391
28799
  }, React__default.createElement(reactstrap.Col, {
@@ -28402,7 +28810,7 @@ var AssignStudentList = function AssignStudentList() {
28402
28810
  onChange: handleSelectAll,
28403
28811
  checked: isCheckAll
28404
28812
  })), React__default.createElement("th", {
28405
- className: "align-top " + styles["pointer"] + " text-capitalize",
28813
+ className: "align-top " + customStyles["pointer"] + " text-capitalize",
28406
28814
  onClick: function onClick() {
28407
28815
  return handelSort(UserOrder.Name);
28408
28816
  }
@@ -28411,7 +28819,7 @@ var AssignStudentList = function AssignStudentList() {
28411
28819
  }) : React__default.createElement(ai.AiOutlineSortAscending, {
28412
28820
  className: "ml-1"
28413
28821
  }))), React__default.createElement("th", {
28414
- className: "align-top " + styles["pointer"],
28822
+ className: "align-top " + customStyles["pointer"],
28415
28823
  onClick: function onClick() {
28416
28824
  return handelSort(UserOrder.Email);
28417
28825
  }
@@ -28437,22 +28845,22 @@ var AssignStudentList = function AssignStudentList() {
28437
28845
  return React__default.createElement("tr", {
28438
28846
  key: item.id
28439
28847
  }, React__default.createElement("td", {
28440
- className: "align-middle " + styles['custom-font-size'] + " text-center"
28848
+ className: "align-middle " + customStyles['custom-font-size'] + " text-center"
28441
28849
  }, React__default.createElement("input", {
28442
28850
  id: item.id,
28443
28851
  type: "checkbox",
28444
28852
  onChange: handleClickCheck,
28445
28853
  checked: isCheck.includes(item.id)
28446
28854
  })), React__default.createElement("td", {
28447
- className: "align-middle " + styles['custom-font-size']
28855
+ className: "align-middle " + customStyles['custom-font-size']
28448
28856
  }, item.fullName), React__default.createElement("td", {
28449
- className: "align-middle " + styles['custom-font-size']
28857
+ className: "align-middle " + customStyles['custom-font-size']
28450
28858
  }, item.email), React__default.createElement("td", {
28451
- className: "align-middle " + styles['custom-font-size']
28859
+ className: "align-middle " + customStyles['custom-font-size']
28452
28860
  }, !!item.mainTeacherEmail ? React__default.createElement(React__default.Fragment, null, React__default.createElement("p", {
28453
- className: "mb-0 " + styles['custom-font-size']
28861
+ className: "mb-0 " + customStyles['custom-font-size']
28454
28862
  }, item.mainTeacherEmail), React__default.createElement("p", {
28455
- className: "mb-0 " + styles['custom-font-size']
28863
+ className: "mb-0 " + customStyles['custom-font-size']
28456
28864
  }, item.mainTeacherName)) : React__default.createElement(TeacherSelector, {
28457
28865
  value: selectedTeachers === null || selectedTeachers === void 0 ? void 0 : selectedTeachers[item.id],
28458
28866
  options: teacherOptions,
@@ -28463,13 +28871,13 @@ var AssignStudentList = function AssignStudentList() {
28463
28871
  return handleCreateTeacherOption(value, item.id);
28464
28872
  },
28465
28873
  placeholder: t("select_teacher"),
28466
- className: "flex-grow-1 mr-2 " + styles['custom-font-size']
28874
+ className: "flex-grow-1 mr-2 " + customStyles['custom-font-size']
28467
28875
  })), React__default.createElement("td", {
28468
- className: "align-middle " + styles['custom-font-size']
28876
+ className: "align-middle " + customStyles['custom-font-size']
28469
28877
  }, !!item.assistantEmail ? React__default.createElement(React__default.Fragment, null, React__default.createElement("p", {
28470
- className: "mb-0 " + styles['custom-font-size']
28878
+ className: "mb-0 " + customStyles['custom-font-size']
28471
28879
  }, item.assistantEmail), React__default.createElement("p", {
28472
- className: "mb-0 " + styles['custom-font-size']
28880
+ className: "mb-0 " + customStyles['custom-font-size']
28473
28881
  }, item.assistantName)) : React__default.createElement(TeacherSelector, {
28474
28882
  value: selectedAssistants === null || selectedAssistants === void 0 ? void 0 : selectedAssistants[item.id],
28475
28883
  options: assistantOptions,
@@ -28480,13 +28888,13 @@ var AssignStudentList = function AssignStudentList() {
28480
28888
  return handleCreateAssistantOption(value, item.id);
28481
28889
  },
28482
28890
  placeholder: t("select_assistant"),
28483
- className: "flex-grow-1 mr-2 " + styles['custom-font-size']
28891
+ className: "flex-grow-1 mr-2 " + customStyles['custom-font-size']
28484
28892
  })), React__default.createElement("td", {
28485
- className: "align-middle " + styles['custom-font-size']
28893
+ className: "align-middle " + customStyles['custom-font-size']
28486
28894
  }, !!item.counselorEmail ? React__default.createElement(React__default.Fragment, null, React__default.createElement("p", {
28487
- className: "mb-0 " + styles['custom-font-size']
28895
+ className: "mb-0 " + customStyles['custom-font-size']
28488
28896
  }, item.counselorEmail), React__default.createElement("p", {
28489
- className: "mb-0 " + styles['custom-font-size']
28897
+ className: "mb-0 " + customStyles['custom-font-size']
28490
28898
  }, item.counselorName)) : React__default.createElement(TeacherSelector, {
28491
28899
  value: selectedCounselors === null || selectedCounselors === void 0 ? void 0 : selectedCounselors[item.id],
28492
28900
  options: counselorOptions,
@@ -28497,9 +28905,9 @@ var AssignStudentList = function AssignStudentList() {
28497
28905
  return handleCreateCounselorOption(value, item.id);
28498
28906
  },
28499
28907
  placeholder: t("select_counselor"),
28500
- className: "flex-grow-1 mr-2 " + styles['custom-font-size']
28908
+ className: "flex-grow-1 mr-2 " + customStyles['custom-font-size']
28501
28909
  })), React__default.createElement("td", {
28502
- className: "align-middle " + styles['custom-font-size']
28910
+ className: "align-middle " + customStyles['custom-font-size']
28503
28911
  }, React__default.createElement("div", {
28504
28912
  className: "d-flex"
28505
28913
  }, React__default.createElement(LinkEditButton, {
@@ -28507,7 +28915,7 @@ var AssignStudentList = function AssignStudentList() {
28507
28915
  onClick: function onClick() {
28508
28916
  return handleAssignSingleStudent(item.id);
28509
28917
  },
28510
- className: styles['custom-font-size']
28918
+ className: customStyles['custom-font-size']
28511
28919
  }))));
28512
28920
  })))) : React__default.createElement(EmptyDataAlert, {
28513
28921
  label: "student"
@@ -28526,7 +28934,7 @@ var AssignStudentList = function AssignStudentList() {
28526
28934
  currentPage: currentPage
28527
28935
  });
28528
28936
  },
28529
- className: styles['custom-font-size']
28937
+ className: customStyles['custom-font-size']
28530
28938
  }))));
28531
28939
  };
28532
28940
 
@@ -28615,14 +29023,14 @@ var UploadFileButton = function UploadFileButton(_ref) {
28615
29023
  htmlFor: "uploadFile",
28616
29024
  role: "button",
28617
29025
  tabIndex: 0,
28618
- className: styles["input-file-label"]
29026
+ className: customStyles["input-file-label"]
28619
29027
  }, isCheckFeedBack == true ? React__default.createElement(md.MdAttachFile, null) : React__default.createElement(React__default.Fragment, null, React__default.createElement("i", {
28620
29028
  className: "fa fa-paperclip mr-1",
28621
29029
  "aria-hidden": "true"
28622
29030
  }), imagePreviewUrl || fileName ? "Change file" : "Choose file")), canDelete && imagePreviewContainer && React__default.createElement(reactstrap.Button, {
28623
29031
  size: "sm",
28624
29032
  color: "danger",
28625
- className: styles["delete-avatar-button"] + " ml-2 d-flex align-items-center justify-content-center",
29033
+ className: customStyles["delete-avatar-button"] + " ml-2 d-flex align-items-center justify-content-center",
28626
29034
  onClick: function onClick() {
28627
29035
  setImagePreviewUrl(null);
28628
29036
  onDelete && onDelete();
@@ -29036,19 +29444,19 @@ var UserDetail = function UserDetail() {
29036
29444
  setFieldValue("roles", [].concat(values.roles, [role]));
29037
29445
  }, [values.roles]);
29038
29446
  return React__default.createElement("div", {
29039
- className: "animated fadeIn detail-buttons-padding " + styles[classFontSize]
29447
+ className: "animated fadeIn detail-buttons-padding " + customStyles[classFontSize]
29040
29448
  }, React__default.createElement(QuitPrompt, {
29041
29449
  when: edited
29042
29450
  }), React__default.createElement("h5", {
29043
- className: "mb-2 " + styles['custom-title-font-size']
29451
+ className: "mb-2 " + customStyles['custom-title-font-size']
29044
29452
  }, t(header)), React__default.createElement(reactstrap.Row, {
29045
- className: "pt-2 " + styles['custom-font-size']
29453
+ className: "pt-2 " + customStyles['custom-font-size']
29046
29454
  }, React__default.createElement(reactstrap.Col, {
29047
29455
  md: 8
29048
29456
  }, React__default.createElement(reactstrap.Row, null, React__default.createElement(reactstrap.Col, {
29049
29457
  md: 6
29050
29458
  }, React__default.createElement(reactstrap.FormGroup, null, React__default.createElement(RequiredLabel$1, {
29051
- className: " " + styles['custom-font-size'],
29459
+ className: " " + customStyles['custom-font-size'],
29052
29460
  text: t('first_name')
29053
29461
  }), React__default.createElement(reactstrap.Input, {
29054
29462
  name: "firstName",
@@ -29059,13 +29467,13 @@ var UserDetail = function UserDetail() {
29059
29467
  },
29060
29468
  onBlur: handleBlur("subject"),
29061
29469
  placeholder: t('first_name'),
29062
- className: " " + styles['custom-font-size']
29470
+ className: " " + customStyles['custom-font-size']
29063
29471
  }), touched.firstName && errors.firstName && React__default.createElement(ErrorHandler, {
29064
29472
  text: errors.firstName
29065
29473
  }))), React__default.createElement(reactstrap.Col, {
29066
29474
  md: 6
29067
29475
  }, React__default.createElement(reactstrap.FormGroup, null, React__default.createElement(RequiredLabel$1, {
29068
- className: " " + styles['custom-font-size'],
29476
+ className: " " + customStyles['custom-font-size'],
29069
29477
  text: t('date_of_birth')
29070
29478
  }), React__default.createElement("div", null, React__default.createElement(DatePicker, {
29071
29479
  value: values.dateOfBirth,
@@ -29086,14 +29494,14 @@ var UserDetail = function UserDetail() {
29086
29494
  width: "maxContent"
29087
29495
  },
29088
29496
  placeholder: t('date_of_birth'),
29089
- className: " " + styles['custom-font-size']
29497
+ className: " " + customStyles['custom-font-size']
29090
29498
  })
29091
29499
  })), touched.dateOfBirth && errors.dateOfBirth && React__default.createElement(ErrorHandler, {
29092
29500
  text: errors.dateOfBirth
29093
29501
  })))), React__default.createElement(reactstrap.Row, null, React__default.createElement(reactstrap.Col, {
29094
29502
  md: 6
29095
29503
  }, React__default.createElement(reactstrap.FormGroup, null, React__default.createElement(RequiredLabel$1, {
29096
- className: " " + styles['custom-font-size'],
29504
+ className: " " + customStyles['custom-font-size'],
29097
29505
  text: t('last_name')
29098
29506
  }), React__default.createElement(reactstrap.Input, {
29099
29507
  name: "lastName",
@@ -29104,13 +29512,13 @@ var UserDetail = function UserDetail() {
29104
29512
  },
29105
29513
  onBlur: handleBlur("lastName"),
29106
29514
  placeholder: t('last_name'),
29107
- className: " " + styles['custom-font-size']
29515
+ className: " " + customStyles['custom-font-size']
29108
29516
  }), touched.lastName && errors.lastName && React__default.createElement(ErrorHandler, {
29109
29517
  text: errors.lastName
29110
29518
  }))), React__default.createElement(reactstrap.Col, {
29111
29519
  md: 6
29112
29520
  }, React__default.createElement(reactstrap.FormGroup, null, React__default.createElement(RequiredLabel$1, {
29113
- className: " " + styles['custom-font-size'],
29521
+ className: " " + customStyles['custom-font-size'],
29114
29522
  text: t('roles')
29115
29523
  }), React__default.createElement(reactstrap.Row, null, React__default.createElement(reactstrap.Col, {
29116
29524
  md: 12,
@@ -29129,14 +29537,14 @@ var UserDetail = function UserDetail() {
29129
29537
  setEditedTrue();
29130
29538
  },
29131
29539
  disabled: !!id ? currentRoles.concat(["Student", "Parent", "General ED teacher"]).includes(role) || currentRoles.every(handleDisableRoles) : ["Parent"].includes(role),
29132
- className: " " + styles['custom-font-size']
29540
+ className: " " + customStyles['custom-font-size']
29133
29541
  }));
29134
29542
  }))), touched.roles && errors.roles && React__default.createElement(ErrorHandler, {
29135
29543
  text: errors.roles
29136
29544
  })))), React__default.createElement(reactstrap.Row, null, React__default.createElement(reactstrap.Col, {
29137
29545
  md: 6
29138
29546
  }, React__default.createElement(reactstrap.FormGroup, null, React__default.createElement(RequiredLabel$1, {
29139
- className: " " + styles['custom-font-size'],
29547
+ className: " " + customStyles['custom-font-size'],
29140
29548
  text: t('email')
29141
29549
  }), React__default.createElement(reactstrap.Input, {
29142
29550
  name: "email",
@@ -29147,14 +29555,14 @@ var UserDetail = function UserDetail() {
29147
29555
  },
29148
29556
  onBlur: handleBlur("email"),
29149
29557
  placeholder: t('email'),
29150
- className: " " + styles['custom-font-size']
29558
+ className: " " + customStyles['custom-font-size']
29151
29559
  }), touched.email && errors.email && React__default.createElement(ErrorHandler, {
29152
29560
  text: errors.email
29153
29561
  }))), React__default.createElement(reactstrap.Col, {
29154
29562
  md: 6
29155
29563
  }, React__default.createElement(reactstrap.FormGroup, null, React__default.createElement(RequiredLabel$1, {
29156
29564
  text: t('status'),
29157
- className: " " + styles['custom-font-size']
29565
+ className: " " + customStyles['custom-font-size']
29158
29566
  }), React__default.createElement(reactstrap.Row, null, React__default.createElement(reactstrap.Col, {
29159
29567
  md: 3
29160
29568
  }, React__default.createElement(reactstrap.CustomInput, {
@@ -29167,7 +29575,7 @@ var UserDetail = function UserDetail() {
29167
29575
  setFieldValue("isActive", true);
29168
29576
  setEditedTrue();
29169
29577
  },
29170
- className: " " + styles['custom-font-size']
29578
+ className: " " + customStyles['custom-font-size']
29171
29579
  })), React__default.createElement(reactstrap.Col, {
29172
29580
  md: 3
29173
29581
  }, React__default.createElement(reactstrap.CustomInput, {
@@ -29179,19 +29587,19 @@ var UserDetail = function UserDetail() {
29179
29587
  onChange: function onChange() {
29180
29588
  return setFieldValue("isActive", false);
29181
29589
  },
29182
- className: " " + styles['custom-font-size']
29590
+ className: " " + customStyles['custom-font-size']
29183
29591
  })))))), !!id && React__default.createElement(reactstrap.Row, null, React__default.createElement(reactstrap.Col, {
29184
29592
  md: 6
29185
29593
  }), React__default.createElement(reactstrap.Col, {
29186
29594
  md: 6
29187
29595
  }, React__default.createElement(reactstrap.Button, {
29188
29596
  color: "primary",
29189
- className: "w-100 " + styles['custom-font-size'],
29597
+ className: "w-100 " + customStyles['custom-font-size'],
29190
29598
  onClick: function onClick() {
29191
29599
  onResetPw(values.email || "");
29192
29600
  }
29193
29601
  }, t('send_forgot_password_link')), React__default.createElement(reactstrap.Button, {
29194
- className: "w-100 mt-3 " + styles['custom-font-size'],
29602
+ className: "w-100 mt-3 " + customStyles['custom-font-size'],
29195
29603
  color: "success",
29196
29604
  onClick: function onClick() {
29197
29605
  getFile();
@@ -29235,7 +29643,7 @@ var UserDetail = function UserDetail() {
29235
29643
  }, React__default.createElement(reactstrap.Col, {
29236
29644
  md: 7
29237
29645
  }, React__default.createElement(reactstrap.FormGroup, null, React__default.createElement(RequiredLabel$1, {
29238
- className: " " + styles['custom-font-size'],
29646
+ className: " " + customStyles['custom-font-size'],
29239
29647
  text: t('current_password')
29240
29648
  }), React__default.createElement(reactstrap.Input, {
29241
29649
  name: "oldPassword",
@@ -29247,14 +29655,14 @@ var UserDetail = function UserDetail() {
29247
29655
  },
29248
29656
  onBlur: handleBlur("subject"),
29249
29657
  placeholder: t('current_password'),
29250
- className: " " + styles['custom-font-size']
29658
+ className: " " + customStyles['custom-font-size']
29251
29659
  }), touched.oldPassword && errors.oldPassword && React__default.createElement(ErrorHandler, {
29252
29660
  text: errors.oldPassword
29253
29661
  }))), React__default.createElement(reactstrap.Col, {
29254
29662
  md: 7
29255
29663
  }, React__default.createElement(reactstrap.FormGroup, null, React__default.createElement(RequiredLabel$1, {
29256
29664
  text: t('new_password'),
29257
- className: " " + styles['custom-font-size']
29665
+ className: " " + customStyles['custom-font-size']
29258
29666
  }), React__default.createElement(reactstrap.Input, {
29259
29667
  name: "newPassword",
29260
29668
  type: "password",
@@ -29265,14 +29673,14 @@ var UserDetail = function UserDetail() {
29265
29673
  },
29266
29674
  onBlur: handleBlur("subject"),
29267
29675
  placeholder: t('new_password'),
29268
- className: " " + styles['custom-font-size']
29676
+ className: " " + customStyles['custom-font-size']
29269
29677
  }), touched.newPassword && errors.newPassword && React__default.createElement(ErrorHandler, {
29270
29678
  text: errors.newPassword
29271
29679
  }))), React__default.createElement(reactstrap.Col, {
29272
29680
  md: 7
29273
29681
  }, React__default.createElement(reactstrap.FormGroup, null, React__default.createElement(RequiredLabel$1, {
29274
29682
  text: t('confirm_password'),
29275
- className: " " + styles['custom-font-size']
29683
+ className: " " + customStyles['custom-font-size']
29276
29684
  }), React__default.createElement(reactstrap.Input, {
29277
29685
  name: "confirmedNewPassword",
29278
29686
  type: "password",
@@ -29283,7 +29691,7 @@ var UserDetail = function UserDetail() {
29283
29691
  },
29284
29692
  onBlur: handleBlur("subject"),
29285
29693
  placeholder: t('confirm_password'),
29286
- className: " " + styles['custom-font-size']
29694
+ className: " " + customStyles['custom-font-size']
29287
29695
  }), touched.confirmedNewPassword && errors.confirmedNewPassword && React__default.createElement(ErrorHandler, {
29288
29696
  text: errors.confirmedNewPassword
29289
29697
  }))), React__default.createElement(reactstrap.Col, {
@@ -29291,7 +29699,7 @@ var UserDetail = function UserDetail() {
29291
29699
  }, React__default.createElement(reactstrap.Button, {
29292
29700
  color: "primary",
29293
29701
  size: "sm",
29294
- className: "px-4 pl-1 mr-2 ml-3 " + styles['custom-font-size'],
29702
+ className: "px-4 pl-1 mr-2 ml-3 " + customStyles['custom-font-size'],
29295
29703
  onClick: function onClick() {
29296
29704
  return handleSubmit();
29297
29705
  }
@@ -29300,7 +29708,7 @@ var UserDetail = function UserDetail() {
29300
29708
  confirmText: confirmText,
29301
29709
  onConfirm: values.roles.includes(ROLES.STUDENT) && !id ? handleToggleModel : handleSubmit,
29302
29710
  onCancel: backToList,
29303
- className: " " + styles['custom-font-size']
29711
+ className: " " + customStyles['custom-font-size']
29304
29712
  }), React__default.createElement(reactstrap.Modal, {
29305
29713
  centered: true,
29306
29714
  isOpen: openModel,
@@ -29335,33 +29743,6 @@ var UserDetail = function UserDetail() {
29335
29743
  });
29336
29744
  };
29337
29745
 
29338
- var loadingStyle = {
29339
- minWidth: "100vw",
29340
- minHeight: "100vh",
29341
- position: "fixed",
29342
- top: 0,
29343
- left: 0,
29344
- zIndex: 999999999,
29345
- backgroundColor: "rgba(0, 0, 0, 0.4)",
29346
- display: "flex",
29347
- justifyContent: "center",
29348
- alignItems: "center"
29349
- };
29350
-
29351
- var Loading = function Loading() {
29352
- var isLoading = reactRedux.useSelector(function (state) {
29353
- return state.common.isLoading;
29354
- });
29355
- return isLoading ? React__default.createElement("div", {
29356
- style: loadingStyle
29357
- }, React__default.createElement("div", {
29358
- className: "spinner-border text-secondary",
29359
- role: "status"
29360
- }, React__default.createElement("span", {
29361
- className: "sr-only"
29362
- }, "Loading..."))) : null;
29363
- };
29364
-
29365
29746
  var ScrollToTop = function ScrollToTop() {
29366
29747
  var _useLocation = reactRouterDom.useLocation(),
29367
29748
  pathname = _useLocation.pathname;
@@ -29990,7 +30371,7 @@ var NotificationList = function NotificationList() {
29990
30371
  }, record.text), React__default.createElement("td", {
29991
30372
  className: "align-middle"
29992
30373
  }, utcToLocalTime(record.time, "yyyy-MM-DD HH:mm")), React__default.createElement("td", {
29993
- className: styles["control-input"] + " text-center align-middle"
30374
+ className: customStyles["control-input"] + " text-center align-middle"
29994
30375
  }, React__default.createElement(reactstrap.CustomInput, {
29995
30376
  type: "checkbox",
29996
30377
  id: "status-checkbox-" + record.id,
@@ -30028,7 +30409,7 @@ var NotificationList = function NotificationList() {
30028
30409
  }))));
30029
30410
  };
30030
30411
 
30031
- var styles$1 = {"app-alert":"_3XSJu","app-alert--success":"_2W87y"};
30412
+ var styles = {"app-alert":"_3XSJu","app-alert--success":"_2W87y"};
30032
30413
 
30033
30414
  var IconSuccess = function IconSuccess(_ref) {
30034
30415
  var _ref$className = _ref.className,
@@ -30088,7 +30469,7 @@ var CommonAlert = function CommonAlert() {
30088
30469
  }, [alert]);
30089
30470
  var isBold = !window.location.pathname.startsWith("/admin");
30090
30471
  return ((_alert$message2 = alert.message) === null || _alert$message2 === void 0 ? void 0 : _alert$message2.length) > 0 ? React__default.createElement("div", {
30091
- className: "app-alert " + (isBold ? styles$1["app-alert"] + " " + styles$1["app-alert--" + alert.type] : '')
30472
+ className: "app-alert " + (isBold ? styles["app-alert"] + " " + styles["app-alert--" + alert.type] : '')
30092
30473
  }, React__default.createElement(reactstrap.Alert, {
30093
30474
  color: alert.type,
30094
30475
  isOpen: alert.message.length > 0,
@@ -30276,7 +30657,7 @@ var MediaNav = function MediaNav(_ref) {
30276
30657
 
30277
30658
  var MediaNav$1 = React__default.memo(MediaNav);
30278
30659
 
30279
- var styles$2 = {"gallery-image":"_297lu","media-wrapper":"_fAgyT","media-image":"_174lZ","media-image-selected":"_27ch0","media-title":"_2KvRR","filter-media-file":"_1thMc","date-time-input":"_1Yddg"};
30660
+ var styles$1 = {"gallery-image":"_297lu","media-wrapper":"_fAgyT","media-image":"_174lZ","media-image-selected":"_27ch0","media-title":"_2KvRR","filter-media-file":"_1thMc","date-time-input":"_1Yddg"};
30280
30661
 
30281
30662
  var MediaType;
30282
30663
 
@@ -30331,9 +30712,9 @@ var Media = function Media(_ref) {
30331
30712
  className = _ref.className;
30332
30713
  var thumbnail = getMediaThumbnail(media);
30333
30714
  return React__default.createElement(reactstrap.Card, {
30334
- className: (isTarget ? styles$2["media-image-selected"] : '') + " border-0 "
30715
+ className: (isTarget ? styles$1["media-image-selected"] : '') + " border-0 "
30335
30716
  }, React__default.createElement(reactstrap.CardImg, {
30336
- className: styles$2["media-image"] + " p-1",
30717
+ className: styles$1["media-image"] + " p-1",
30337
30718
  top: true,
30338
30719
  width: "90%",
30339
30720
  src: thumbnail,
@@ -30345,7 +30726,7 @@ var Media = function Media(_ref) {
30345
30726
  }
30346
30727
  }, React__default.createElement(reactstrap.CardTitle, {
30347
30728
  tag: "h6",
30348
- className: styles$2["media-title"] + " " + className
30729
+ className: styles$1["media-title"] + " " + className
30349
30730
  }, media.name)));
30350
30731
  };
30351
30732
 
@@ -30376,7 +30757,7 @@ var Filter = function Filter(_ref) {
30376
30757
  label: t('videos')
30377
30758
  }];
30378
30759
  return React__default.createElement(reactstrap.Row, {
30379
- className: "" + styles$2["filter-media-file"]
30760
+ className: "" + styles$1["filter-media-file"]
30380
30761
  }, React__default.createElement(reactstrap.Col, {
30381
30762
  sm: 8
30382
30763
  }, React__default.createElement(SearchBox$1, {
@@ -30780,19 +31161,19 @@ var MediaList = function MediaList(_ref) {
30780
31161
  onClick: function onClick() {
30781
31162
  return handleSelectMedia(media);
30782
31163
  },
30783
- className: styles$2["media-wrapper"]
31164
+ className: styles$1["media-wrapper"]
30784
31165
  }, React__default.createElement(Media$1, {
30785
31166
  media: media,
30786
31167
  isTarget: isTarget,
30787
- className: " " + styles['custom-font-size']
31168
+ className: " " + customStyles['custom-font-size']
30788
31169
  })));
30789
31170
  });
30790
31171
  };
30791
31172
 
30792
31173
  return React__default.createElement(reactstrap.Card, {
30793
- className: styles[classFontSize]
31174
+ className: customStyles[classFontSize]
30794
31175
  }, React__default.createElement(reactstrap.CardHeader, null, React__default.createElement(Filter, {
30795
- className: "" + styles['custom-font-size'],
31176
+ className: "" + customStyles['custom-font-size'],
30796
31177
  changeFilters: changeFilters,
30797
31178
  filters: filters
30798
31179
  }), React__default.createElement(MediaNav$1, {
@@ -30808,7 +31189,7 @@ var MediaList = function MediaList(_ref) {
30808
31189
  handleDeleteMediaOrFolder: handleDeleteMediaOrFolder,
30809
31190
  handleGoBack: handleGoBack,
30810
31191
  showErrorAlert: showErrorAlert,
30811
- className: " " + styles['custom-font-size']
31192
+ className: " " + customStyles['custom-font-size']
30812
31193
  })), React__default.createElement(reactstrap.CardBody, {
30813
31194
  style: {
30814
31195
  minHeight: height
@@ -32143,34 +32524,8 @@ var store = toolkit.configureStore({
32143
32524
  }
32144
32525
  });
32145
32526
 
32146
- var firstCheckToken = function firstCheckToken() {
32147
- return Promise.resolve(_catch(function () {
32148
- var token = getAccessToken();
32149
- return token ? Promise.resolve(checkToken(token)).then(function (tokenStatus) {
32150
- return tokenStatus.data ? true : false;
32151
- }) : false;
32152
- }, function () {
32153
- return false;
32154
- }));
32155
- };
32156
-
32157
- var canAccess = function canAccess(userRoles, componentRoles) {
32158
- if (!Array.isArray(userRoles)) {
32159
- return false;
32160
- }
32161
-
32162
- if (Array.isArray(componentRoles)) {
32163
- var intersects = userRoles.filter(function (i) {
32164
- return componentRoles.includes(i);
32165
- });
32166
- return intersects.length > 0;
32167
- }
32168
-
32169
- return true;
32170
- };
32171
-
32172
- var getLanguage = function getLanguage() {
32173
- return api.get(BASE_URL + "/api/language");
32527
+ var getLanguage = function getLanguage() {
32528
+ return api.get(BASE_URL + "/api/language");
32174
32529
  };
32175
32530
 
32176
32531
  var isInViewport = function isInViewport(el) {
@@ -32301,361 +32656,6 @@ var NotificationLogoutModal = function NotificationLogoutModal() {
32301
32656
  }, "Confirm")));
32302
32657
  };
32303
32658
 
32304
- var apiGetLanguage = function apiGetLanguage() {
32305
- return api.get(BASE_URL + "/api/language");
32306
- };
32307
-
32308
- var apiUpdateLanguage = function apiUpdateLanguage(lang) {
32309
- return api.put(BASE_URL + "/api/language?lang=" + lang);
32310
- };
32311
-
32312
- var LANGUAGE_SYSTEM = "LANGUAGE_SYSTEM";
32313
-
32314
- var useLanguages = function useLanguages() {
32315
- var dispatch = reactRedux.useDispatch();
32316
-
32317
- var _useTranslation = reactI18next.useTranslation(),
32318
- i18n = _useTranslation.i18n;
32319
-
32320
- var language = reactRedux.useSelector(function (state) {
32321
- return state.common.language;
32322
- });
32323
- var defaultLanguage = getCookieValue(LANGUAGE_SYSTEM) != null ? getCookieValue(LANGUAGE_SYSTEM) : DEFAULT_LANGUAGE_CODE;
32324
-
32325
- var _useState = React.useState([]),
32326
- languageList = _useState[0],
32327
- setLanguageList = _useState[1];
32328
-
32329
- var _useState2 = React.useState(false),
32330
- dropdownOpen = _useState2[0],
32331
- setDropdownOpen = _useState2[1];
32332
-
32333
- var _useState3 = React.useState(defaultLanguage),
32334
- currentLang = _useState3[0],
32335
- setCurrentLang = _useState3[1];
32336
-
32337
- var toggle = function toggle() {
32338
- return setDropdownOpen(function (prevState) {
32339
- return !prevState;
32340
- });
32341
- };
32342
-
32343
- var changeLanguageApp = function changeLanguageApp(lang) {
32344
- try {
32345
- var _temp3 = function _temp3() {
32346
- dispatch(setLoading(false));
32347
- };
32348
-
32349
- dispatch(setLoading(true));
32350
-
32351
- var _temp4 = _catch(function () {
32352
- return Promise.resolve(apiUpdateLanguage(lang)).then(function () {
32353
- i18n.changeLanguage(lang);
32354
- setCurrentLang(lang);
32355
- dispatch(setLanguage(lang));
32356
- });
32357
- }, function (err) {
32358
- var _err$response, _err$response$data;
32359
-
32360
- dispatch(setAlert({
32361
- type: "danger",
32362
- message: ((_err$response = err.response) === null || _err$response === void 0 ? void 0 : (_err$response$data = _err$response.data) === null || _err$response$data === void 0 ? void 0 : _err$response$data.title) || err.message
32363
- }));
32364
- });
32365
-
32366
- return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
32367
- } catch (e) {
32368
- return Promise.reject(e);
32369
- }
32370
- };
32371
-
32372
- var getListLanguage = function getListLanguage() {
32373
- try {
32374
- var _temp6 = _catch(function () {
32375
- return Promise.resolve(apiGetLanguage()).then(function (res) {
32376
- setLanguageList(res.data);
32377
- });
32378
- }, function (err) {
32379
- var _err$response2, _err$response2$data;
32380
-
32381
- dispatch(setAlert({
32382
- type: "danger",
32383
- message: ((_err$response2 = err.response) === null || _err$response2 === void 0 ? void 0 : (_err$response2$data = _err$response2.data) === null || _err$response2$data === void 0 ? void 0 : _err$response2$data.title) || err.message
32384
- }));
32385
- });
32386
-
32387
- return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(function () {}) : void 0);
32388
- } catch (e) {
32389
- return Promise.reject(e);
32390
- }
32391
- };
32392
-
32393
- React.useEffect(function () {
32394
- defaultLanguage != language && changeLanguageApp(defaultLanguage);
32395
- getListLanguage();
32396
- }, []);
32397
- return {
32398
- languageList: languageList,
32399
- toggle: toggle,
32400
- dropdownOpen: dropdownOpen,
32401
- currentLang: currentLang,
32402
- changeLanguageApp: changeLanguageApp,
32403
- setCurrentLang: setCurrentLang
32404
- };
32405
- };
32406
-
32407
- var TheLanguageDropdown = function TheLanguageDropdown() {
32408
- var _useLanguages = useLanguages(),
32409
- languageList = _useLanguages.languageList,
32410
- toggle = _useLanguages.toggle,
32411
- dropdownOpen = _useLanguages.dropdownOpen,
32412
- currentLang = _useLanguages.currentLang,
32413
- changeLanguageApp = _useLanguages.changeLanguageApp;
32414
-
32415
- var currentLanguage = React.useMemo(function () {
32416
- var current = languageList.find(function (i) {
32417
- return i.code === currentLang;
32418
- });
32419
- if (!current) return null;
32420
- return React__default.createElement(React__default.Fragment, null, React__default.createElement("img", {
32421
- className: "mr-2 " + styles['dropdown-menu-flag'],
32422
- src: "" + getStaticFileUrl(current.image)
32423
- }), " ", current.name);
32424
- }, [currentLang, languageList]);
32425
- return React__default.createElement(reactstrap.Dropdown, {
32426
- isOpen: dropdownOpen,
32427
- toggle: toggle,
32428
- className: "" + styles["dropdown-menu"]
32429
- }, React__default.createElement(reactstrap.DropdownToggle, {
32430
- className: styles["header-avatar"] + " d-flex align-items-center"
32431
- }, React__default.createElement("span", {
32432
- style: {
32433
- color: "#000",
32434
- textTransform: "capitalize",
32435
- display: 'flex',
32436
- alignItems: 'center'
32437
- }
32438
- }, currentLanguage, React__default.createElement(bs.BsChevronDown, {
32439
- className: "ml-2",
32440
- style: {
32441
- fontSize: '10px'
32442
- }
32443
- }))), React__default.createElement(reactstrap.DropdownMenu, {
32444
- className: styles["dropdown-content-language"]
32445
- }, !!languageList && languageList.length > 0 && languageList.map(function (lang, index) {
32446
- return React__default.createElement(reactstrap.DropdownItem, {
32447
- key: lang.code,
32448
- className: styles["dropdown-change"] + " px-0 py-0 " + (index === languageList.length - 1 ? "pb-2" : "pt-2"),
32449
- onClick: function onClick() {
32450
- return changeLanguageApp(lang.code);
32451
- }
32452
- }, React__default.createElement("div", {
32453
- className: styles["dropdown-item-language"] + " " + styles["item-logout"] + " " + (currentLang == lang.code ? styles['dropdown-item-language-active'] : "") + " d-flex align-items-center w-100"
32454
- }, React__default.createElement("span", {
32455
- className: "mr-2 d-flex hover-opacity"
32456
- }, React__default.createElement("img", {
32457
- style: {
32458
- width: "30px",
32459
- height: "25px",
32460
- borderRadius: "5px"
32461
- },
32462
- src: getStaticFileUrl(lang.image)
32463
- })), lang.name));
32464
- })));
32465
- };
32466
-
32467
- var TheHeader = function TheHeader(_ref) {
32468
- var onToggleModel = _ref.onToggleModel;
32469
- var isDistrict = window.location.host.includes("-district");
32470
- return React__default.createElement(react.CHeader, {
32471
- withSubheader: true,
32472
- className: "d-flex align-items-center justify-content-end"
32473
- }, React__default.createElement(react.CHeaderBrand, {
32474
- className: "mx-auto flex-grow-1 d-lg-none",
32475
- to: "/"
32476
- }, React__default.createElement("img", {
32477
- src: Images.LOGO_HEADER,
32478
- className: styles["header-logo"]
32479
- })), React__default.createElement(react.CHeaderNav, {
32480
- className: "pr-3"
32481
- }, React__default.createElement(TheLanguageDropdown, null), React__default.createElement("a", {
32482
- className: "mr-3",
32483
- style: {
32484
- color: '#000'
32485
- },
32486
- href: '/privacy-policy',
32487
- target: "blank"
32488
- }, "Privacy Policy"), !isDistrict && React__default.createElement(NotificationButton, null), React__default.createElement(TheHeaderDropdown, {
32489
- onToggleModel: onToggleModel
32490
- })));
32491
- };
32492
-
32493
- var ModelSelectRole = function ModelSelectRole(_ref) {
32494
- var _handleUserRole;
32495
-
32496
- var open = _ref.open,
32497
- onToggleModel = _ref.onToggleModel;
32498
- var dispatch = reactRedux.useDispatch();
32499
- var history = reactRouterDom.useHistory();
32500
- var pathname = window.location.pathname;
32501
- var user = reactRedux.useSelector(function (state) {
32502
- return state.common.user;
32503
- });
32504
- var roles = user === null || user === void 0 ? void 0 : user.roles;
32505
-
32506
- var handleSelectUserRoles = function handleSelectUserRoles(roles) {
32507
- if (roles.includes("Admin")) {
32508
- dispatch(setLoading(true));
32509
- return history.push("/admin/home");
32510
- }
32511
-
32512
- var roleSelect = roles.includes("Teacher/Assistant") ? ["Teacher", "Assistant"] : roles;
32513
- dispatch(setUser(_extends({}, user, {
32514
- roles: roleSelect
32515
- })));
32516
- localStorage.setItem("ROLES", roleSelect.toString());
32517
- onToggleModel();
32518
-
32519
- if (roles.includes("Parent")) {
32520
- history.push("/parent");
32521
- } else {
32522
- pathname !== "/home" ? history.push("/home") : window.location.reload();
32523
- }
32524
- };
32525
-
32526
- return React__default.createElement(reactstrap.Modal, {
32527
- isOpen: open,
32528
- toggle: function toggle() {
32529
- return onToggleModel();
32530
- },
32531
- className: "" + styles["model-switch-roles"],
32532
- centered: true
32533
- }, React__default.createElement("p", {
32534
- className: "" + styles["title"]
32535
- }, "Continue as:"), React__default.createElement("div", null, (_handleUserRole = handleUserRole(user === null || user === void 0 ? void 0 : user.roles)) === null || _handleUserRole === void 0 ? void 0 : _handleUserRole.map(function (r) {
32536
- return React__default.createElement("p", {
32537
- key: r,
32538
- className: styles["item-select-role"] + " " + styles[roles.includes("Teacher") && roles.includes("Assistant") && r === "Teacher/Assistant" && !roles.includes("Admin") || roles.includes("Admin") && r === "Admin" || roles.includes(r) && !roles.includes("Admin") ? "item-role-active" : ""],
32539
- onClick: function onClick() {
32540
- return handleSelectUserRoles([r]);
32541
- }
32542
- }, r == "SecondaryTeacher" ? "Support Teacher" : r);
32543
- })));
32544
- };
32545
-
32546
- var TheLayout = function TheLayout(_ref) {
32547
- var routes = _ref.routes,
32548
- navigation = _ref.navigation;
32549
- var history = reactRouterDom.useHistory();
32550
- var dispatch = reactRedux.useDispatch();
32551
- var user = reactRedux.useSelector(function (state) {
32552
- return state.common.user;
32553
- });
32554
- var language = reactRedux.useSelector(function (state) {
32555
- return state.common.language;
32556
- });
32557
-
32558
- var _useState = React.useState(false),
32559
- openModelSelectRole = _useState[0],
32560
- setOpenModelSelectRole = _useState[1];
32561
-
32562
- var _useTranslation = reactI18next.useTranslation(),
32563
- t = _useTranslation.t;
32564
-
32565
- var location = reactRouterDom.useLocation();
32566
- var isNotification = location.pathname.includes("notifications");
32567
- var isDistrict = window.location.host.includes("-district");
32568
-
32569
- var handleToggleModel = function handleToggleModel() {
32570
- setOpenModelSelectRole(!openModelSelectRole);
32571
- };
32572
-
32573
- var authRoutes = React.useMemo(function () {
32574
- return routes.filter(function (route) {
32575
- return canAccess(user === null || user === void 0 ? void 0 : user.roles, route.roles);
32576
- }).filter(function (route) {
32577
- return !!route.isDistrict === isDistrict;
32578
- });
32579
- }, [user, language]);
32580
- var authNavigations = React.useMemo(function () {
32581
- return navigation.map(function (item) {
32582
- return _extends({}, item, {
32583
- name: t(item.name)
32584
- });
32585
- }).filter(function (nav) {
32586
- return canAccess(user === null || user === void 0 ? void 0 : user.roles, nav.roles);
32587
- }).filter(function (nav) {
32588
- return !!nav.isDistrict === isDistrict;
32589
- });
32590
- }, [user, language]);
32591
- React.useEffect(function () {
32592
- checkAuthentication();
32593
- }, []);
32594
-
32595
- var checkAuthentication = function checkAuthentication() {
32596
- try {
32597
- var _temp2 = _catch(function () {
32598
- return Promise.resolve(firstCheckToken()).then(function (tokenStatus) {
32599
- tokenStatus ? loadInfo() : resetAuth();
32600
- });
32601
- }, function () {
32602
- resetAuth();
32603
- });
32604
-
32605
- return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
32606
- } catch (e) {
32607
- return Promise.reject(e);
32608
- }
32609
- };
32610
-
32611
- var loadInfo = function loadInfo() {
32612
- try {
32613
- var _temp4 = _catch(function () {
32614
- return Promise.resolve(getInfo()).then(function (info) {
32615
- if (!info) {
32616
- resetAuth();
32617
- }
32618
-
32619
- dispatch(setUser(info.data));
32620
- });
32621
- }, function () {
32622
- resetAuth();
32623
- });
32624
-
32625
- return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
32626
- } catch (e) {
32627
- return Promise.reject(e);
32628
- }
32629
- };
32630
-
32631
- var resetAuth = function resetAuth() {
32632
- localStorage.removeItem(ACCESS_TOKEN);
32633
- sessionStorage.removeItem(ACCESS_TOKEN);
32634
- history.push("/");
32635
- };
32636
-
32637
- if (!user) {
32638
- return React__default.createElement(Loading, null);
32639
- }
32640
-
32641
- return React__default.createElement("div", {
32642
- className: "c-app c-default-layout"
32643
- }, !isNotification && React__default.createElement(TheSidebar, {
32644
- navigation: authNavigations
32645
- }), React__default.createElement("div", {
32646
- className: "c-wrapper"
32647
- }, !isNotification && React__default.createElement(TheHeader, {
32648
- onToggleModel: handleToggleModel
32649
- }), React__default.createElement("div", {
32650
- className: "c-body bg-white"
32651
- }, React__default.createElement(TheContent$1, {
32652
- routes: authRoutes
32653
- }))), React__default.createElement(ModelSelectRole, {
32654
- open: openModelSelectRole,
32655
- onToggleModel: handleToggleModel
32656
- }));
32657
- };
32658
-
32659
32659
  Object.defineProperty(exports, 'I18nextProvider', {
32660
32660
  enumerable: true,
32661
32661
  get: function () {