touchstudy-core 0.1.167 → 0.1.168

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
@@ -16,28 +16,32 @@ var moment = _interopDefault(require('moment'));
16
16
  var fa = require('react-icons/fa');
17
17
  var io = require('react-icons/io');
18
18
  var io5 = require('react-icons/io5');
19
- var reactRedux = require('react-redux');
19
+ var MButton = _interopDefault(require('@mui/material/Button'));
20
+ var DialogTitle = _interopDefault(require('@mui/material/DialogTitle'));
21
+ var DialogContent = _interopDefault(require('@mui/material/DialogContent'));
22
+ var DialogActions = _interopDefault(require('@mui/material/DialogActions'));
23
+ var IconButton = _interopDefault(require('@mui/material/IconButton'));
24
+ var Typography = _interopDefault(require('@mui/material/Typography'));
25
+ var formik = require('formik');
20
26
  var Select = require('react-select');
21
27
  var Select__default = _interopDefault(Select);
22
28
  var CreatableSelect = _interopDefault(require('react-select/creatable'));
23
- var axios = _interopDefault(require('axios'));
24
29
  var _$8 = _interopDefault(require('lodash'));
30
+ var reactRedux = require('react-redux');
31
+ var axios = _interopDefault(require('axios'));
25
32
  var reactGoogleLogin = require('@leecheuk/react-google-login');
26
33
  require('moment/locale/ko.js');
27
34
  require('moment/locale/en-au.js');
28
35
  var reactVirtualized = require('react-virtualized');
29
- var formik = require('formik');
30
36
  var tinymce = _interopDefault(require('tinymce'));
31
37
  require('@wiris/mathtype-tinymce6');
32
38
  var tinymceReact = require('@tinymce/tinymce-react');
33
- var styles$d = require('@mui/material/styles');
39
+ var styles$e = require('@mui/material/styles');
34
40
  var Grid = _interopDefault(require('@mui/material/Grid'));
35
- var Typography = _interopDefault(require('@mui/material/Typography'));
36
41
  var Card = _interopDefault(require('@mui/material/Card'));
37
42
  var CardActions = _interopDefault(require('@mui/material/CardActions'));
38
43
  var CardContent = _interopDefault(require('@mui/material/CardContent'));
39
44
  var CardMedia = _interopDefault(require('@mui/material/CardMedia'));
40
- var MButton = _interopDefault(require('@mui/material/Button'));
41
45
  var yup = require('yup');
42
46
  var colors = require('@mui/material/colors');
43
47
  var reactGoogleRecaptchaV3 = require('react-google-recaptcha-v3');
@@ -53,10 +57,6 @@ var LocalizationProvider = require('@mui/x-date-pickers/LocalizationProvider');
53
57
  var DatePicker = require('@mui/x-date-pickers/DatePicker');
54
58
  var fa6 = require('react-icons/fa6');
55
59
  var cg = require('react-icons/cg');
56
- var DialogTitle = _interopDefault(require('@mui/material/DialogTitle'));
57
- var DialogContent = _interopDefault(require('@mui/material/DialogContent'));
58
- var DialogActions = _interopDefault(require('@mui/material/DialogActions'));
59
- var IconButton = _interopDefault(require('@mui/material/IconButton'));
60
60
  var html2pdf = _interopDefault(require('html2pdf.js'));
61
61
  var Slider = _interopDefault(require('react-slick'));
62
62
  var gr = require('react-icons/gr');
@@ -5560,6 +5560,31 @@ var NotFound = function NotFound() {
5560
5560
  }, t('the_page_you_are_looking_for_was_not_found')), React__default.createElement("div", null))));
5561
5561
  };
5562
5562
 
5563
+ function _extends() {
5564
+ return _extends = Object.assign ? Object.assign.bind() : function (n) {
5565
+ for (var e = 1; e < arguments.length; e++) {
5566
+ var t = arguments[e];
5567
+ for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
5568
+ }
5569
+ return n;
5570
+ }, _extends.apply(null, arguments);
5571
+ }
5572
+ function _objectDestructuringEmpty(t) {
5573
+ if (null == t) throw new TypeError("Cannot destructure " + t);
5574
+ }
5575
+ function _objectWithoutPropertiesLoose(r, e) {
5576
+ if (null == r) return {};
5577
+ var t = {};
5578
+ for (var n in r) if ({}.hasOwnProperty.call(r, n)) {
5579
+ if (-1 !== e.indexOf(n)) continue;
5580
+ t[n] = r[n];
5581
+ }
5582
+ return t;
5583
+ }
5584
+ function _taggedTemplateLiteralLoose(e, t) {
5585
+ return t || (t = e.slice(0)), e.raw = t, e;
5586
+ }
5587
+
5563
5588
  var CommonDialog = function CommonDialog(_ref) {
5564
5589
  var open = _ref.open,
5565
5590
  children = _ref.children,
@@ -5572,6 +5597,7 @@ var CommonDialog = function CommonDialog(_ref) {
5572
5597
  minWidth = _ref.minWidth,
5573
5598
  _ref$zIndex = _ref.zIndex,
5574
5599
  zIndex = _ref$zIndex === void 0 ? 1102 : _ref$zIndex,
5600
+ paperSx = _ref.paperSx,
5575
5601
  onClose = _ref.onClose;
5576
5602
  return React__default.createElement(material.Dialog, {
5577
5603
  open: open,
@@ -5583,10 +5609,10 @@ var CommonDialog = function CommonDialog(_ref) {
5583
5609
  zIndex: zIndex
5584
5610
  },
5585
5611
  PaperProps: {
5586
- sx: {
5587
- overflowY: "unset",
5612
+ sx: _extends({
5613
+ overflowY: "auto",
5588
5614
  minWidth: minWidth
5589
- }
5615
+ }, paperSx)
5590
5616
  }
5591
5617
  }, isShowHeader ? React__default.createElement(React.Fragment, null, React__default.createElement(material.DialogTitle, {
5592
5618
  className: "border border-start-0 border-end-0 border-top-0 border-1 " + titleClassName,
@@ -5611,31 +5637,6 @@ var CommonDialog = function CommonDialog(_ref) {
5611
5637
  }, title)), children);
5612
5638
  };
5613
5639
 
5614
- function _extends() {
5615
- return _extends = Object.assign ? Object.assign.bind() : function (n) {
5616
- for (var e = 1; e < arguments.length; e++) {
5617
- var t = arguments[e];
5618
- for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
5619
- }
5620
- return n;
5621
- }, _extends.apply(null, arguments);
5622
- }
5623
- function _objectDestructuringEmpty(t) {
5624
- if (null == t) throw new TypeError("Cannot destructure " + t);
5625
- }
5626
- function _objectWithoutPropertiesLoose(r, e) {
5627
- if (null == r) return {};
5628
- var t = {};
5629
- for (var n in r) if ({}.hasOwnProperty.call(r, n)) {
5630
- if (-1 !== e.indexOf(n)) continue;
5631
- t[n] = r[n];
5632
- }
5633
- return t;
5634
- }
5635
- function _taggedTemplateLiteralLoose(e, t) {
5636
- return t || (t = e.slice(0)), e.raw = t, e;
5637
- }
5638
-
5639
5640
  var confirmDialogTextStyle = {
5640
5641
  color: "#363634",
5641
5642
  fontSize: 16,
@@ -5789,163 +5790,43 @@ var ConfirmDeleteDialog = function ConfirmDeleteDialog(props) {
5789
5790
  return React__default.createElement(ConfirmDialog, Object.assign({}, ConfirmDeleteDialogDefaultProps, props));
5790
5791
  };
5791
5792
 
5792
- var _templateObject;
5793
- var BorderedTextField = material.styled(material.TextField)(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n & .MuiOutlinedInput-root {\n &.Mui-focused fieldset {\n border-width: 1px;\n border-color: ", ";\n }\n }\n & .MuiOutlinedInput-root:hover {\n fieldset {\n border-width: 1px;\n border-color: ", ";\n }\n }\n"])), styles.dark, styles.less_dark);
5794
- var InputText = function InputText(props) {
5795
- return React__default.createElement(BorderedTextField, Object.assign({
5796
- sx: {
5797
- "& input": {
5798
- py: "7.5px",
5799
- px: "12px"
5800
- },
5801
- "& > div": {
5802
- borderColor: "#97A1AF",
5803
- borderRadius: "4px"
5804
- }
5805
- }
5806
- }, props));
5807
- };
5808
-
5809
- var PassCodeDialog = function PassCodeDialog(_ref) {
5810
- var open = _ref.open,
5811
- onClose = _ref.onClose,
5812
- onSubmit = _ref.onSubmit,
5813
- academyDomain = _ref.academyDomain;
5814
- var _useTranslation = reactI18next.useTranslation(),
5815
- t = _useTranslation.t;
5816
- var _useState = React.useState(""),
5817
- passCode = _useState[0],
5818
- setPassCode = _useState[1];
5819
- var handleClose = function handleClose(event, reason) {
5820
- onClose(event, reason);
5821
- };
5822
- var handleSubmit = function handleSubmit() {
5823
- try {
5824
- var data = {
5825
- code: passCode,
5826
- academyDomain: academyDomain
5827
- };
5828
- return Promise.resolve(onSubmit(data, handleClose)).then(function () {});
5829
- } catch (e) {
5830
- return Promise.reject(e);
5831
- }
5832
- };
5833
- var handleChangePassCode = function handleChangePassCode(e) {
5834
- setPassCode(e.target.value);
5835
- };
5836
- var theme = material.useTheme();
5837
- return React__default.createElement(CommonDialog, {
5838
- open: open,
5839
- onClose: handleClose,
5840
- size: "xs",
5841
- title: t("join_an_academy")
5842
- }, React__default.createElement(material.DialogContent, {
5843
- sx: {
5844
- overflowY: "unset"
5845
- }
5846
- }, React__default.createElement(material.Stack, {
5847
- direction: "column",
5848
- spacing: 2,
5849
- zIndex: 1,
5850
- position: "relative"
5851
- }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
5852
- className: "fw-medium mb-1"
5853
- }, t("pass_code"), React__default.createElement("span", {
5854
- className: "text-danger"
5855
- }, "*")), React__default.createElement(InputText, {
5856
- id: "pass-code",
5857
- placeholder: t("enter_pass_code"),
5858
- value: passCode,
5859
- onChange: handleChangePassCode
5860
- })))), React__default.createElement(material.DialogActions, {
5861
- className: ""
5862
- }, React__default.createElement(material.Button, {
5863
- variant: "contained",
5864
- sx: {
5865
- bgcolor: theme.palette.grey[700]
5866
- },
5867
- onClick: handleClose
5868
- }, t("cancel")), React__default.createElement(material.Button, {
5869
- variant: "contained",
5870
- onClick: handleSubmit,
5871
- disabled: !passCode.trim().length
5872
- }, t("confirmation"))));
5873
- };
5874
-
5875
- var loadingStyle = {
5876
- minWidth: "100vw",
5877
- minHeight: "100vh",
5878
- position: "fixed",
5879
- top: 0,
5880
- left: 0,
5881
- zIndex: 999999999,
5882
- backgroundColor: "rgba(0, 0, 0, 0.4)",
5883
- display: "flex",
5884
- justifyContent: "center",
5885
- alignItems: "center"
5886
- };
5887
- var Loading = function Loading() {
5888
- var isLoading = reactRedux.useSelector(function (state) {
5889
- return state.common.isLoading;
5890
- });
5891
- return isLoading ? React__default.createElement("div", {
5892
- style: loadingStyle
5893
- }, React__default.createElement("div", {
5894
- className: "spinner-border text-secondary",
5895
- role: "status"
5896
- }, React__default.createElement("span", {
5897
- className: "sr-only"
5898
- }))) : null;
5793
+ var iconCloseDialog = function iconCloseDialog(_ref) {
5794
+ var _ref$width = _ref.width,
5795
+ width = _ref$width === void 0 ? "24" : _ref$width,
5796
+ _ref$height = _ref.height,
5797
+ height = _ref$height === void 0 ? "25" : _ref$height,
5798
+ color = _ref.color;
5799
+ return React__default.createElement("svg", {
5800
+ width: width,
5801
+ height: height,
5802
+ viewBox: "0 0 24 25",
5803
+ fill: color,
5804
+ xmlns: "http://www.w3.org/2000/svg"
5805
+ }, React__default.createElement("path", {
5806
+ d: "M13.5909 12.5L18.0441 8.04687C18.2554 7.8359 18.3743 7.54962 18.3745 7.25099C18.3748 6.95237 18.2564 6.66587 18.0455 6.45453C17.8345 6.24319 17.5482 6.12431 17.2496 6.12404C16.951 6.12378 16.6645 6.24215 16.4531 6.45312L12 10.9062L7.54687 6.45312C7.33553 6.24178 7.04888 6.12305 6.75 6.12305C6.45111 6.12305 6.16447 6.24178 5.95312 6.45312C5.74178 6.66447 5.62305 6.95111 5.62305 7.25C5.62305 7.54888 5.74178 7.83553 5.95312 8.04687L10.4062 12.5L5.95312 16.9531C5.74178 17.1645 5.62305 17.4511 5.62305 17.75C5.62305 18.0489 5.74178 18.3355 5.95312 18.5469C6.16447 18.7582 6.45111 18.8769 6.75 18.8769C7.04888 18.8769 7.33553 18.7582 7.54687 18.5469L12 14.0937L16.4531 18.5469C16.6645 18.7582 16.9511 18.8769 17.25 18.8769C17.5489 18.8769 17.8355 18.7582 18.0469 18.5469C18.2582 18.3355 18.3769 18.0489 18.3769 17.75C18.3769 17.4511 18.2582 17.1645 18.0469 16.9531L13.5909 12.5Z",
5807
+ fill: "#202B37"
5808
+ }));
5899
5809
  };
5900
5810
 
5901
- var loadingStyle$1 = {
5902
- minWidth: "100vw",
5903
- minHeight: "100vh",
5904
- position: "fixed",
5905
- top: 0,
5906
- left: 0,
5907
- zIndex: 999999999,
5908
- backgroundColor: "rgba(0, 0, 0, 0.4)",
5909
- display: "flex",
5910
- justifyContent: "center",
5911
- alignItems: "center"
5912
- };
5913
- var LoadingComponent = function LoadingComponent(_ref) {
5914
- var isLoading = _ref.isLoading,
5915
- children = _ref.children,
5916
- _ref$spinClassName = _ref.spinClassName,
5917
- spinClassName = _ref$spinClassName === void 0 ? "text-secondary" : _ref$spinClassName,
5918
- _ref$className = _ref.className,
5919
- className = _ref$className === void 0 ? "" : _ref$className;
5920
- return isLoading ? React__default.createElement("div", {
5921
- style: loadingStyle$1
5922
- }, React__default.createElement(material.Stack, {
5923
- direction: "column",
5924
- justifyContent: "center",
5925
- alignItems: "center",
5926
- className: className
5927
- }, React__default.createElement("div", {
5928
- className: "spinner-border " + spinClassName,
5929
- role: "status"
5930
- }, React__default.createElement("span", {
5931
- className: "sr-only"
5932
- })), React__default.createElement("div", null, children))) : null;
5811
+ var iconWarning = function iconWarning(_ref) {
5812
+ var _ref$width = _ref.width,
5813
+ width = _ref$width === void 0 ? "17" : _ref$width,
5814
+ _ref$height = _ref.height,
5815
+ height = _ref$height === void 0 ? "16" : _ref$height,
5816
+ color = _ref.color;
5817
+ return React__default.createElement("svg", {
5818
+ width: width,
5819
+ height: height,
5820
+ viewBox: "0 0 17 16",
5821
+ fill: color,
5822
+ xmlns: "http://www.w3.org/2000/svg"
5823
+ }, React__default.createElement("path", {
5824
+ d: "M14.5335 12.4712L9.20754 2.58062C8.83004 1.87937 7.82441 1.87937 7.4466 2.58062L2.12097 12.4712C2.03901 12.6235 1.99792 12.7944 2.00171 12.9672C2.00549 13.1401 2.05404 13.309 2.14259 13.4575C2.23115 13.606 2.3567 13.729 2.50698 13.8145C2.65726 13.9 2.82714 13.9451 3.00004 13.9453H13.6529C13.8259 13.9453 13.996 13.9005 14.1465 13.8151C14.2969 13.7297 14.4227 13.6067 14.5115 13.4582C14.6002 13.3096 14.6489 13.1406 14.6527 12.9676C14.6566 12.7946 14.6155 12.6236 14.5335 12.4712ZM8.32722 12.4141C8.20361 12.4141 8.08277 12.3774 7.97999 12.3087C7.87721 12.2401 7.7971 12.1424 7.7498 12.0282C7.7025 11.914 7.69012 11.7884 7.71423 11.6671C7.73835 11.5459 7.79787 11.4345 7.88528 11.3471C7.97269 11.2597 8.08405 11.2002 8.20529 11.1761C8.32653 11.152 8.4522 11.1643 8.5664 11.2116C8.6806 11.2589 8.77822 11.3391 8.84689 11.4418C8.91557 11.5446 8.95222 11.6654 8.95222 11.7891C8.95222 11.8711 8.93606 11.9524 8.90465 12.0282C8.87324 12.1041 8.8272 12.173 8.76917 12.231C8.71113 12.289 8.64223 12.3351 8.5664 12.3665C8.49057 12.3979 8.4093 12.4141 8.32722 12.4141ZM9.00597 6.12813L8.8266 9.94063C8.8266 10.0732 8.77392 10.2004 8.68015 10.2942C8.58638 10.3879 8.45921 10.4406 8.3266 10.4406C8.19399 10.4406 8.06681 10.3879 7.97305 10.2942C7.87928 10.2004 7.8266 10.0732 7.8266 9.94063L7.64722 6.12969C7.64319 6.03862 7.65754 5.94768 7.6894 5.86227C7.72127 5.77687 7.77 5.69875 7.8327 5.63259C7.8954 5.56642 7.97078 5.51355 8.05434 5.47713C8.13791 5.44072 8.22795 5.4215 8.3191 5.42063H8.32566C8.41743 5.42058 8.50826 5.43912 8.59267 5.47515C8.67708 5.51117 8.75331 5.56392 8.81677 5.63021C8.88023 5.6965 8.92961 5.77497 8.96191 5.86087C8.99421 5.94676 9.00878 6.03832 9.00472 6.13L9.00597 6.12813Z",
5825
+ fill: "#DB4D4D"
5826
+ }));
5933
5827
  };
5934
5828
 
5935
- var CustomPagination = function CustomPagination(_ref) {
5936
- var currentPage = _ref.currentPage,
5937
- totalPage = _ref.totalPage,
5938
- onChangePage = _ref.onChangePage;
5939
- var handleChangePage = function handleChangePage(_, page) {
5940
- onChangePage(page);
5941
- };
5942
- return React__default.createElement(material.Pagination, {
5943
- className: "w-fit",
5944
- count: totalPage,
5945
- page: currentPage,
5946
- onChange: handleChangePage
5947
- });
5948
- };
5829
+ var styles$1 = {"lighter":"#F0FFF6","light":"#89F0B2","less_dark":"#3DC674","dark":"#349056","darker":"#18442A","gray_50":"#FBFBF9","gray_100":"#EAEAE5","gray_300":"#D0D0C8","gray_500":"#9A9A98","gray_700":"#5D5D5B","gray_900":"#363634","red_900":"#DB4D4D","green_support_900":"#3ACB46","yellow_900":"#FEAF06","purple_900":"#C3099A","titleBox":"_2mYOt","title":"_1H9qR","point":"_2rTfh","buttonGroup":"_W5dic","btnFeedback":"_FmMYN","btnTerminate":"_3kv6J","myanswer":"_1jZV7","titleMyAnswer1":"_1aYD1","titleMyAnswer2":"_2Oc4x","contentMyAnswer":"__LRYW","myAnswerItem":"_1U-Kx","time":"_2PXiz","timeCol":"_1zcfJ","answer-response":"_18ZNf","answer-response-0":"_3nbRi","answer-response-1":"_3NEHk","answer-response-2":"_Et0ih","answer-response-3":"_5Vc3v","answer-response-4":"_2SMBR","overall-response-1":"_1ImE5","overall-response-2":"_1oVKC","overall-response-3":"_2wXCw","answerCorrect":"_gE8qM","answerIncorrect":"_3kRqE","answerNograss":"_22Pi3","answerEasy":"_1C7aw","answerDiscrimination":"__YGYX","answerTrap":"_3AkGb","answerNoTime":"_3l-yC","questionOrder":"_2mK7U","myTimeLabel":"_3ZOZs","myPoolTime":"_1Gajr","topTimeLabel":"_62PzE","topTime":"_3HUx1","meanTimeLabel":"_Yu8Oq","meanTime":"_18kZu","compareChart":"_2MTOH","prevChart":"_JoHQL","chart":"_29iCQ","nextChart":"_3hjxI","titleChart":"_2Z42z","titleCompareGrass":"_34RN_","tableCompareGrass":"_2lzlQ","thcolumn1":"_2MSIH","tdcolumn1":"_1I06v","tdcolumn3":"_VpMQ5","classification":"_3t41M","wrapperProblem":"_2vh8v","titleProblem":"_3YfGm","titleProblemClose":"_34388","titleTrickyProblem":"_INxbh","wrongQuestions":"_35DcB","question":"_10SAW","assignedQuestions":"_oEGQ_","wrapperContent":"_zhZ1O","content":"_NGHD4","contentColumn1":"_v5SKe","span1":"_28SHT","span2":"_1raLd","contentColumn2":"_-xJ34","duration":"_1YGAg","topDuration":"_3DiyY","overallCorrectRate":"_DnkyV","answer":"_29MTE","contentVulnerable":"_3x1PG","wrappContentProblem":"_2saM2","contentProblem":"_1hTJx","labelProblem":"_3BXO9","name":"_1cUZW","percent":"_3CLEc","slider":"_3LCEY","track":"_3I8mi","noData":"_1oZ-s","loading":"_Nm201","table-responsive":"_3zQL-","form-label":"_3Vpmh","form-control":"_DafKE","form-label-dialog":"_3NjaH","btn-cancel":"_sLxwL","btn-register":"_4ZKQY","pdfBtnBox":"_2zUJf","pdfBtn":"_y_Cr7","form-select":"_HCIxD","loader":"_3aDIU","dot":"_JGCIL","bounce":"_3M62i"};
5949
5830
 
5950
5831
  var DropdownIndicator = function DropdownIndicator(props) {
5951
5832
  return React__default.createElement(Select.components.DropdownIndicator, Object.assign({}, props), React__default.createElement(fa.FaCaretDown, {
@@ -6112,7 +5993,6 @@ var CustomSelect = function CustomSelect(_ref) {
6112
5993
  value: !isDefault ? initialValues != null ? initialValues : null : undefined,
6113
5994
  defaultValue: isDefault ? initialValues : undefined,
6114
5995
  menuPlacement: scrollBottom ? "top" : "auto",
6115
- isMulti: isMulti,
6116
5996
  components: {
6117
5997
  IndicatorSeparator: function IndicatorSeparator() {
6118
5998
  return null;
@@ -6182,116 +6062,6 @@ var CustomSelectOption = function CustomSelectOption(_ref) {
6182
6062
  }, rest));
6183
6063
  };
6184
6064
 
6185
- var SCORE_OPTIONS = Array.from({
6186
- length: 10
6187
- }, function (_, i) {
6188
- return i + 1;
6189
- });
6190
- var QUESTION_OPTIONS = Array.from({
6191
- length: 40
6192
- }, function (_, i) {
6193
- return i + 1;
6194
- });
6195
- var ANSWER_OPTIONS = Array.from({
6196
- length: 9
6197
- }, function (_, i) {
6198
- return i + 2;
6199
- });
6200
- var DEFAULT_SCORE = 2;
6201
-
6202
- var AnswerCountSelector = function AnswerCountSelector(_ref) {
6203
- var id = _ref.id,
6204
- value = _ref.value,
6205
- onChange = _ref.onChange,
6206
- isDisabled = _ref.isDisabled;
6207
- var _useTranslation = reactI18next.useTranslation(),
6208
- t = _useTranslation.t;
6209
- var answerOptions = ANSWER_OPTIONS.map(function (i) {
6210
- return {
6211
- label: t("number_question", {
6212
- number: i
6213
- }),
6214
- value: i
6215
- };
6216
- });
6217
- return React__default.createElement(CustomSelect, {
6218
- inputId: id,
6219
- value: value,
6220
- options: answerOptions,
6221
- onChange: onChange,
6222
- isDisabled: isDisabled
6223
- });
6224
- };
6225
-
6226
- var ArticleCategorySelector = function ArticleCategorySelector(_ref) {
6227
- var id = _ref.id,
6228
- value = _ref.value,
6229
- optionValue = _ref.optionValue,
6230
- onChange = _ref.onChange,
6231
- isDisabled = _ref.isDisabled,
6232
- options = _ref.options,
6233
- isMulti = _ref.isMulti,
6234
- placeholder = _ref.placeholder,
6235
- rest = _ref.rest;
6236
- var _useTranslation = reactI18next.useTranslation(),
6237
- t = _useTranslation.t;
6238
- return React__default.createElement(CustomSelect, Object.assign({
6239
- isMulti: isMulti,
6240
- inputId: id,
6241
- value: value,
6242
- options: options,
6243
- onChange: onChange,
6244
- isDisabled: isDisabled,
6245
- placeholder: placeholder || t("select_category"),
6246
- optionValue: optionValue
6247
- }, rest));
6248
- };
6249
-
6250
- // A type of promise-like that resolves synchronously and supports only one observer
6251
-
6252
- const _iteratorSymbol = /*#__PURE__*/ typeof Symbol !== "undefined" ? (Symbol.iterator || (Symbol.iterator = Symbol("Symbol.iterator"))) : "@@iterator";
6253
-
6254
- const _asyncIteratorSymbol = /*#__PURE__*/ typeof Symbol !== "undefined" ? (Symbol.asyncIterator || (Symbol.asyncIterator = Symbol("Symbol.asyncIterator"))) : "@@asyncIterator";
6255
-
6256
- // Asynchronously call a function and send errors to recovery continuation
6257
- function _catch(body, recover) {
6258
- try {
6259
- var result = body();
6260
- } catch(e) {
6261
- return recover(e);
6262
- }
6263
- if (result && result.then) {
6264
- return result.then(void 0, recover);
6265
- }
6266
- return result;
6267
- }
6268
-
6269
- // Asynchronously await a promise and pass the result to a finally continuation
6270
- function _finallyRethrows(body, finalizer) {
6271
- try {
6272
- var result = body();
6273
- } catch (e) {
6274
- return finalizer(true, e);
6275
- }
6276
- if (result && result.then) {
6277
- return result.then(finalizer.bind(null, false), finalizer.bind(null, true));
6278
- }
6279
- return finalizer(false, result);
6280
- }
6281
-
6282
- // Asynchronously await a promise and invoke a finally continuation that always overrides the result
6283
- function _finally(body, finalizer) {
6284
- try {
6285
- var result = body();
6286
- } catch (e) {
6287
- return finalizer();
6288
- }
6289
- if (result && result.then) {
6290
- return result.then(finalizer, finalizer);
6291
- }
6292
- return finalizer();
6293
- }
6294
-
6295
6065
  (function (PreparedType) {
6296
6066
  PreparedType[PreparedType["csat_past_questions"] = 1] = "csat_past_questions";
6297
6067
  PreparedType[PreparedType["official_mock_exam"] = 2] = "official_mock_exam";
@@ -6811,6 +6581,119 @@ var useAutoAcademyDomain = function useAutoAcademyDomain(_, history, superUrls,
6811
6581
  }, [pathname, window.location.search, isAuthPage, email, academyDomain]);
6812
6582
  };
6813
6583
 
6584
+ // A type of promise-like that resolves synchronously and supports only one observer
6585
+
6586
+ const _iteratorSymbol = /*#__PURE__*/ typeof Symbol !== "undefined" ? (Symbol.iterator || (Symbol.iterator = Symbol("Symbol.iterator"))) : "@@iterator";
6587
+
6588
+ const _asyncIteratorSymbol = /*#__PURE__*/ typeof Symbol !== "undefined" ? (Symbol.asyncIterator || (Symbol.asyncIterator = Symbol("Symbol.asyncIterator"))) : "@@asyncIterator";
6589
+
6590
+ // Asynchronously call a function and send errors to recovery continuation
6591
+ function _catch(body, recover) {
6592
+ try {
6593
+ var result = body();
6594
+ } catch(e) {
6595
+ return recover(e);
6596
+ }
6597
+ if (result && result.then) {
6598
+ return result.then(void 0, recover);
6599
+ }
6600
+ return result;
6601
+ }
6602
+
6603
+ // Asynchronously await a promise and pass the result to a finally continuation
6604
+ function _finallyRethrows(body, finalizer) {
6605
+ try {
6606
+ var result = body();
6607
+ } catch (e) {
6608
+ return finalizer(true, e);
6609
+ }
6610
+ if (result && result.then) {
6611
+ return result.then(finalizer.bind(null, false), finalizer.bind(null, true));
6612
+ }
6613
+ return finalizer(false, result);
6614
+ }
6615
+
6616
+ // Asynchronously await a promise and invoke a finally continuation that always overrides the result
6617
+ function _finally(body, finalizer) {
6618
+ try {
6619
+ var result = body();
6620
+ } catch (e) {
6621
+ return finalizer();
6622
+ }
6623
+ if (result && result.then) {
6624
+ return result.then(finalizer, finalizer);
6625
+ }
6626
+ return finalizer();
6627
+ }
6628
+
6629
+ var api = axios.create({
6630
+ baseURL: BASE_URL,
6631
+ timeout: 0,
6632
+ headers: {
6633
+ "Content-Type": "application/json"
6634
+ },
6635
+ paramsSerializer: function paramsSerializer(params) {
6636
+ return encodeParams(params);
6637
+ }
6638
+ });
6639
+ var apiUpload = axios.create({
6640
+ baseURL: BASE_URL,
6641
+ timeout: 60000,
6642
+ headers: {
6643
+ "Content-Type": "multipart/form-data"
6644
+ }
6645
+ });
6646
+ [api, apiUpload].forEach(function (i) {
6647
+ return i.interceptors.request.use(function (config) {
6648
+ var token = getAccessToken();
6649
+ var searchParams = new URLSearchParams(window.location.search);
6650
+ var paramLang = searchParams.get('lang');
6651
+ var academyDomainStorage = getAcademyDomain();
6652
+ var isLearningSpace = getLearningSpace();
6653
+ var langStorage = getLanguage();
6654
+ var academyDomain = academyDomainStorage;
6655
+ var language = paramLang || langStorage;
6656
+ if (token) {
6657
+ config.headers.Authorization = "Bearer " + token;
6658
+ localStorage.setItem("LAST_TIME_REQUEST", moment().utc().format("YYYY-MM-DD HH:mm:ss"));
6659
+ }
6660
+ if (academyDomain && !isLearningSpace && config.headers[AcademyHeaders] == undefined) config.headers[AcademyHeaders] = "" + academyDomain;
6661
+ if (isLearningSpace && config.headers[NoAcademyHeaders] == undefined) config.headers[NoAcademyHeaders] = "" + isLearningSpace;
6662
+ if (language) config.headers[LanguageHeaders] = "" + language;
6663
+ return config;
6664
+ }, function (error) {
6665
+ return Promise.reject(error);
6666
+ });
6667
+ });
6668
+ [api, apiUpload].forEach(function (i) {
6669
+ return i.interceptors.response.use(function (response) {
6670
+ return response;
6671
+ }, function (error) {
6672
+ var _error$response, _error$response2, _error$response3;
6673
+ console.log({
6674
+ error: error
6675
+ });
6676
+ if (((_error$response = error.response) === null || _error$response === void 0 ? void 0 : _error$response.status) === 401) {
6677
+ var _window$location = window.location,
6678
+ pathname = _window$location.pathname,
6679
+ search = _window$location.search;
6680
+ var preRedirectUrl = localStorage.getItem(PRE_REDIRECT_URL);
6681
+ var newRedirectUrl = "" + pathname + search;
6682
+ if (!pathname.startsWith("/login")) {
6683
+ if (preRedirectUrl !== newRedirectUrl) {
6684
+ localStorage.setItem(REDIRECT_URL, newRedirectUrl);
6685
+ localStorage.setItem(PRE_REDIRECT_URL, newRedirectUrl);
6686
+ }
6687
+ }
6688
+ }
6689
+ if (((_error$response2 = error.response) === null || _error$response2 === void 0 ? void 0 : _error$response2.status) === 401 || ((_error$response3 = error.response) === null || _error$response3 === void 0 ? void 0 : _error$response3.status) == 403) {
6690
+ localStorage.removeItem(ACCESS_TOKEN);
6691
+ window.location.href = "/login";
6692
+ }
6693
+ return Promise.reject(error);
6694
+ });
6695
+ });
6696
+
6814
6697
  var EXAM_SESSION_URL = BASE_URL + "/api/examSession";
6815
6698
  var getCheckStatusExam = function getCheckStatusExam(examCode) {
6816
6699
  return api.get(EXAM_SESSION_URL + "/" + examCode + "/status");
@@ -6937,6 +6820,29 @@ var useGoogleSignOut = function useGoogleSignOut(props) {
6937
6820
  };
6938
6821
  };
6939
6822
 
6823
+ var useKeyboardVisible = function useKeyboardVisible() {
6824
+ var theme = material.useTheme();
6825
+ var _useState = React.useState(false),
6826
+ isKeyboardVisible = _useState[0],
6827
+ setIsKeyboardVisible = _useState[1];
6828
+ var isTabletUp = material.useMediaQuery(theme.breakpoints.up('lg'));
6829
+ var isFullScreen = !!document.fullscreenElement;
6830
+ var pageSxProps = _extends({}, !isTabletUp && isKeyboardVisible && isFullScreen && {
6831
+ marginBlock: "3rem 50vh"
6832
+ });
6833
+ var handleInputFocus = function handleInputFocus() {
6834
+ setIsKeyboardVisible(true);
6835
+ };
6836
+ var handleInputBlur = function handleInputBlur() {
6837
+ setIsKeyboardVisible(false);
6838
+ };
6839
+ return {
6840
+ pageSxProps: pageSxProps,
6841
+ handleInputFocus: handleInputFocus,
6842
+ handleInputBlur: handleInputBlur
6843
+ };
6844
+ };
6845
+
6940
6846
  var useLanguage = function useLanguage(history, init) {
6941
6847
  if (init === void 0) {
6942
6848
  init = true;
@@ -7576,73 +7482,382 @@ var useVirtualizeList = function useVirtualizeList(totalItems, rowHeight, offset
7576
7482
  OrderBy["DESC"] = "DESC";
7577
7483
  })(exports.OrderBy || (exports.OrderBy = {}));
7578
7484
 
7579
- var api = axios.create({
7580
- baseURL: BASE_URL,
7581
- timeout: 0,
7582
- headers: {
7583
- "Content-Type": "application/json"
7584
- },
7585
- paramsSerializer: function paramsSerializer(params) {
7586
- return encodeParams(params);
7587
- }
7588
- });
7589
- var apiUpload = axios.create({
7590
- baseURL: BASE_URL,
7591
- timeout: 60000,
7592
- headers: {
7593
- "Content-Type": "multipart/form-data"
7594
- }
7595
- });
7596
- [api, apiUpload].forEach(function (i) {
7597
- return i.interceptors.request.use(function (config) {
7598
- var token = getAccessToken();
7599
- var searchParams = new URLSearchParams(window.location.search);
7600
- var paramLang = searchParams.get('lang');
7601
- var academyDomainStorage = getAcademyDomain();
7602
- var isLearningSpace = getLearningSpace();
7603
- var langStorage = getLanguage();
7604
- var academyDomain = academyDomainStorage;
7605
- var language = paramLang || langStorage;
7606
- if (token) {
7607
- config.headers.Authorization = "Bearer " + token;
7608
- localStorage.setItem("LAST_TIME_REQUEST", moment().utc().format("YYYY-MM-DD HH:mm:ss"));
7485
+ function CommonCreateNewQuestionDialog(_ref) {
7486
+ var handleCreateQuestion = _ref.handleCreateQuestion,
7487
+ openDialog = _ref.openDialog,
7488
+ initialValues = _ref.initialValues,
7489
+ onClose = _ref.onClose,
7490
+ options = _ref.options,
7491
+ schema = _ref.schema,
7492
+ labelQuestion = _ref.labelQuestion,
7493
+ nameQuestion = _ref.nameQuestion,
7494
+ labelContent = _ref.labelContent,
7495
+ nameContent = _ref.nameContent;
7496
+ var _useTranslation = reactI18next.useTranslation(),
7497
+ t = _useTranslation.t;
7498
+ var _useKeyboardVisible = useKeyboardVisible(),
7499
+ pageSxProps = _useKeyboardVisible.pageSxProps,
7500
+ handleInputBlur = _useKeyboardVisible.handleInputBlur,
7501
+ handleInputFocus = _useKeyboardVisible.handleInputFocus;
7502
+ return React__default.createElement(material.Dialog, {
7503
+ onClose: onClose,
7504
+ open: openDialog,
7505
+ scroll: "body",
7506
+ PaperProps: {
7507
+ sx: _extends({
7508
+ minWidth: "363px",
7509
+ overflowY: "auto"
7510
+ }, pageSxProps)
7609
7511
  }
7610
- if (academyDomain && !isLearningSpace && config.headers[AcademyHeaders] == undefined) config.headers[AcademyHeaders] = "" + academyDomain;
7611
- if (isLearningSpace && config.headers[NoAcademyHeaders] == undefined) config.headers[NoAcademyHeaders] = "" + isLearningSpace;
7612
- if (language) config.headers[LanguageHeaders] = "" + language;
7613
- return config;
7614
- }, function (error) {
7615
- return Promise.reject(error);
7616
- });
7617
- });
7618
- [api, apiUpload].forEach(function (i) {
7619
- return i.interceptors.response.use(function (response) {
7620
- return response;
7621
- }, function (error) {
7622
- var _error$response, _error$response2, _error$response3;
7623
- console.log({
7624
- error: error
7625
- });
7626
- if (((_error$response = error.response) === null || _error$response === void 0 ? void 0 : _error$response.status) === 401) {
7627
- var _window$location = window.location,
7628
- pathname = _window$location.pathname,
7629
- search = _window$location.search;
7630
- var preRedirectUrl = localStorage.getItem(PRE_REDIRECT_URL);
7631
- var newRedirectUrl = "" + pathname + search;
7632
- if (!pathname.startsWith("/login")) {
7633
- if (preRedirectUrl !== newRedirectUrl) {
7634
- localStorage.setItem(REDIRECT_URL, newRedirectUrl);
7635
- localStorage.setItem(PRE_REDIRECT_URL, newRedirectUrl);
7636
- }
7512
+ }, React__default.createElement(DialogTitle, {
7513
+ id: "customized-dialog-title"
7514
+ }, React__default.createElement(Typography, {
7515
+ fontWeight: 700,
7516
+ fontSize: "16px",
7517
+ lineHeight: "19.09px",
7518
+ color: "#202B37"
7519
+ }, t("ask_a_question"))), React__default.createElement(IconButton, {
7520
+ "aria-label": "close",
7521
+ sx: {
7522
+ position: "absolute",
7523
+ right: 8,
7524
+ top: 8,
7525
+ color: function color(theme) {
7526
+ return theme.palette.grey[500];
7527
+ }
7528
+ },
7529
+ onClick: onClose
7530
+ }, React__default.createElement(iconCloseDialog, null)), React__default.createElement(formik.Formik, {
7531
+ initialValues: initialValues,
7532
+ validationSchema: schema,
7533
+ onSubmit: handleCreateQuestion
7534
+ }, function (_ref2) {
7535
+ var values = _ref2.values,
7536
+ errors = _ref2.errors,
7537
+ setFieldValue = _ref2.setFieldValue;
7538
+ return React__default.createElement(formik.Form, null, React__default.createElement(DialogContent, {
7539
+ sx: {
7540
+ padding: 0,
7541
+ overflowY: "auto"
7542
+ }
7543
+ }, React__default.createElement(material.Box, {
7544
+ display: "flex",
7545
+ flexDirection: "column",
7546
+ gap: "8px",
7547
+ padding: "24px 24px 40px 24px",
7548
+ overflow: "scroll"
7549
+ }, React__default.createElement(material.Stack, null, React__default.createElement("label", {
7550
+ htmlFor: "questions",
7551
+ className: styles["form-label"] + " " + styles$1["form-label-dialog"]
7552
+ }, labelQuestion || t("questions_to_ask")), React__default.createElement(formik.Field, {
7553
+ id: "questions",
7554
+ name: nameQuestion,
7555
+ render: function render(_ref3) {
7556
+ var field = _ref3.field;
7557
+ return React__default.createElement(CustomSelect, Object.assign({}, field, {
7558
+ id: "questions",
7559
+ menuPlacement: "bottom",
7560
+ maxMenuHeight: 150,
7561
+ options: options,
7562
+ onChange: function onChange(_ref4) {
7563
+ var value = _ref4.value;
7564
+ return setFieldValue(nameQuestion, value);
7565
+ },
7566
+ isClearable: false,
7567
+ onFocus: handleInputFocus,
7568
+ onBlur: handleInputBlur
7569
+ }));
7570
+ }
7571
+ })), React__default.createElement(material.Stack, null, React__default.createElement("label", {
7572
+ htmlFor: "content-question",
7573
+ className: styles["form-label"] + " " + styles$1["form-label-dialog"]
7574
+ }, labelContent || t("question_content")), React__default.createElement(material.Box, {
7575
+ position: "relative",
7576
+ display: "flex",
7577
+ flexDirection: "row",
7578
+ alignItems: "center"
7579
+ }, React__default.createElement(formik.Field, {
7580
+ as: "textarea",
7581
+ rows: 3,
7582
+ id: "content-question",
7583
+ style: {
7584
+ paddingRight: "40px"
7585
+ },
7586
+ name: nameContent,
7587
+ placeholder: t("the_problem_is_difficult"),
7588
+ className: styles["form-control"],
7589
+ onFocus: handleInputFocus,
7590
+ onBlur: handleInputBlur
7591
+ }), (errors === null || errors === void 0 ? void 0 : errors[nameContent]) && React__default.createElement(material.Box, {
7592
+ position: "absolute",
7593
+ right: 0,
7594
+ padding: "0 12px",
7595
+ display: "flex",
7596
+ alignItems: "center"
7597
+ }, React__default.createElement(iconWarning, null))), React__default.createElement(material.Box, {
7598
+ marginBottom: "4px"
7599
+ }), React__default.createElement(Typography, {
7600
+ fontWeight: 500,
7601
+ fontSize: "10px",
7602
+ lineHeight: "11.93px",
7603
+ color: !(errors !== null && errors !== void 0 && errors[nameContent]) ? "#97A1AF" : styles$1.red_900
7604
+ }, !(errors !== null && errors !== void 0 && errors[nameContent]) ? t("your_questions_will_be_sent_to_the_counselor") : t("please_enter_your_question"))))), React__default.createElement(DialogActions, {
7605
+ sx: {
7606
+ display: "flex",
7607
+ justifyContent: "space-between",
7608
+ alignItems: "center",
7609
+ padding: "12px",
7610
+ borderTop: "1px solid #CED2DA"
7611
+ }
7612
+ }, React__default.createElement(MButton, {
7613
+ className: styles$1["btn-cancel"],
7614
+ onClick: onClose
7615
+ }, React__default.createElement(Typography, {
7616
+ sx: {
7617
+ color: styles.dark + " !important"
7618
+ },
7619
+ fontWeight: 700,
7620
+ fontSize: "14px",
7621
+ lineHeight: "16.71px"
7622
+ }, t("cancel"))), React__default.createElement(MButton, {
7623
+ variant: "contained",
7624
+ sx: {
7625
+ bgcolor: styles.dark
7626
+ },
7627
+ className: styles$1["btn-register"],
7628
+ type: "submit",
7629
+ disabled: !values.content.trim().length
7630
+ }, React__default.createElement(Typography, {
7631
+ fontWeight: 700,
7632
+ fontSize: "14px",
7633
+ lineHeight: "16.71px",
7634
+ color: "#FFFFFF"
7635
+ }, t("registration")))));
7636
+ }));
7637
+ }
7638
+
7639
+ var _templateObject;
7640
+ var BorderedTextField = material.styled(material.TextField)(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n & .MuiOutlinedInput-root {\n &.Mui-focused fieldset {\n border-width: 1px;\n border-color: ", ";\n }\n }\n & .MuiOutlinedInput-root:hover {\n fieldset {\n border-width: 1px;\n border-color: ", ";\n }\n }\n"])), styles.dark, styles.less_dark);
7641
+ var InputText = function InputText(props) {
7642
+ return React__default.createElement(BorderedTextField, Object.assign({
7643
+ sx: {
7644
+ "& input": {
7645
+ py: "7.5px",
7646
+ px: "12px"
7647
+ },
7648
+ "& > div": {
7649
+ borderColor: "#97A1AF",
7650
+ borderRadius: "4px"
7637
7651
  }
7638
7652
  }
7639
- if (((_error$response2 = error.response) === null || _error$response2 === void 0 ? void 0 : _error$response2.status) === 401 || ((_error$response3 = error.response) === null || _error$response3 === void 0 ? void 0 : _error$response3.status) == 403) {
7640
- localStorage.removeItem(ACCESS_TOKEN);
7641
- window.location.href = "/login";
7653
+ }, props));
7654
+ };
7655
+
7656
+ var PassCodeDialog = function PassCodeDialog(_ref) {
7657
+ var open = _ref.open,
7658
+ onClose = _ref.onClose,
7659
+ onSubmit = _ref.onSubmit,
7660
+ academyDomain = _ref.academyDomain;
7661
+ var _useTranslation = reactI18next.useTranslation(),
7662
+ t = _useTranslation.t;
7663
+ var _useState = React.useState(""),
7664
+ passCode = _useState[0],
7665
+ setPassCode = _useState[1];
7666
+ var handleClose = function handleClose(event, reason) {
7667
+ onClose(event, reason);
7668
+ };
7669
+ var handleSubmit = function handleSubmit() {
7670
+ try {
7671
+ var data = {
7672
+ code: passCode,
7673
+ academyDomain: academyDomain
7674
+ };
7675
+ return Promise.resolve(onSubmit(data, handleClose)).then(function () {});
7676
+ } catch (e) {
7677
+ return Promise.reject(e);
7642
7678
  }
7643
- return Promise.reject(error);
7679
+ };
7680
+ var handleChangePassCode = function handleChangePassCode(e) {
7681
+ setPassCode(e.target.value);
7682
+ };
7683
+ var theme = material.useTheme();
7684
+ return React__default.createElement(CommonDialog, {
7685
+ open: open,
7686
+ onClose: handleClose,
7687
+ size: "xs",
7688
+ title: t("join_an_academy")
7689
+ }, React__default.createElement(material.DialogContent, {
7690
+ sx: {
7691
+ overflowY: "unset"
7692
+ }
7693
+ }, React__default.createElement(material.Stack, {
7694
+ direction: "column",
7695
+ spacing: 2,
7696
+ zIndex: 1,
7697
+ position: "relative"
7698
+ }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
7699
+ className: "fw-medium mb-1"
7700
+ }, t("pass_code"), React__default.createElement("span", {
7701
+ className: "text-danger"
7702
+ }, "*")), React__default.createElement(InputText, {
7703
+ id: "pass-code",
7704
+ placeholder: t("enter_pass_code"),
7705
+ value: passCode,
7706
+ onChange: handleChangePassCode
7707
+ })))), React__default.createElement(material.DialogActions, {
7708
+ className: ""
7709
+ }, React__default.createElement(material.Button, {
7710
+ variant: "contained",
7711
+ sx: {
7712
+ bgcolor: theme.palette.grey[700]
7713
+ },
7714
+ onClick: handleClose
7715
+ }, t("cancel")), React__default.createElement(material.Button, {
7716
+ variant: "contained",
7717
+ onClick: handleSubmit,
7718
+ disabled: !passCode.trim().length
7719
+ }, t("confirmation"))));
7720
+ };
7721
+
7722
+ var loadingStyle = {
7723
+ minWidth: "100vw",
7724
+ minHeight: "100vh",
7725
+ position: "fixed",
7726
+ top: 0,
7727
+ left: 0,
7728
+ zIndex: 999999999,
7729
+ backgroundColor: "rgba(0, 0, 0, 0.4)",
7730
+ display: "flex",
7731
+ justifyContent: "center",
7732
+ alignItems: "center"
7733
+ };
7734
+ var Loading = function Loading() {
7735
+ var isLoading = reactRedux.useSelector(function (state) {
7736
+ return state.common.isLoading;
7737
+ });
7738
+ return isLoading ? React__default.createElement("div", {
7739
+ style: loadingStyle
7740
+ }, React__default.createElement("div", {
7741
+ className: "spinner-border text-secondary",
7742
+ role: "status"
7743
+ }, React__default.createElement("span", {
7744
+ className: "sr-only"
7745
+ }))) : null;
7746
+ };
7747
+
7748
+ var loadingStyle$1 = {
7749
+ minWidth: "100vw",
7750
+ minHeight: "100vh",
7751
+ position: "fixed",
7752
+ top: 0,
7753
+ left: 0,
7754
+ zIndex: 999999999,
7755
+ backgroundColor: "rgba(0, 0, 0, 0.4)",
7756
+ display: "flex",
7757
+ justifyContent: "center",
7758
+ alignItems: "center"
7759
+ };
7760
+ var LoadingComponent = function LoadingComponent(_ref) {
7761
+ var isLoading = _ref.isLoading,
7762
+ children = _ref.children,
7763
+ _ref$spinClassName = _ref.spinClassName,
7764
+ spinClassName = _ref$spinClassName === void 0 ? "text-secondary" : _ref$spinClassName,
7765
+ _ref$className = _ref.className,
7766
+ className = _ref$className === void 0 ? "" : _ref$className;
7767
+ return isLoading ? React__default.createElement("div", {
7768
+ style: loadingStyle$1
7769
+ }, React__default.createElement(material.Stack, {
7770
+ direction: "column",
7771
+ justifyContent: "center",
7772
+ alignItems: "center",
7773
+ className: className
7774
+ }, React__default.createElement("div", {
7775
+ className: "spinner-border " + spinClassName,
7776
+ role: "status"
7777
+ }, React__default.createElement("span", {
7778
+ className: "sr-only"
7779
+ })), React__default.createElement("div", null, children))) : null;
7780
+ };
7781
+
7782
+ var CustomPagination = function CustomPagination(_ref) {
7783
+ var currentPage = _ref.currentPage,
7784
+ totalPage = _ref.totalPage,
7785
+ onChangePage = _ref.onChangePage;
7786
+ var handleChangePage = function handleChangePage(_, page) {
7787
+ onChangePage(page);
7788
+ };
7789
+ return React__default.createElement(material.Pagination, {
7790
+ className: "w-fit",
7791
+ count: totalPage,
7792
+ page: currentPage,
7793
+ onChange: handleChangePage
7644
7794
  });
7795
+ };
7796
+
7797
+ var SCORE_OPTIONS = Array.from({
7798
+ length: 10
7799
+ }, function (_, i) {
7800
+ return i + 1;
7645
7801
  });
7802
+ var QUESTION_OPTIONS = Array.from({
7803
+ length: 40
7804
+ }, function (_, i) {
7805
+ return i + 1;
7806
+ });
7807
+ var ANSWER_OPTIONS = Array.from({
7808
+ length: 9
7809
+ }, function (_, i) {
7810
+ return i + 2;
7811
+ });
7812
+ var DEFAULT_SCORE = 2;
7813
+
7814
+ var AnswerCountSelector = function AnswerCountSelector(_ref) {
7815
+ var id = _ref.id,
7816
+ value = _ref.value,
7817
+ onChange = _ref.onChange,
7818
+ isDisabled = _ref.isDisabled;
7819
+ var _useTranslation = reactI18next.useTranslation(),
7820
+ t = _useTranslation.t;
7821
+ var answerOptions = ANSWER_OPTIONS.map(function (i) {
7822
+ return {
7823
+ label: t("number_question", {
7824
+ number: i
7825
+ }),
7826
+ value: i
7827
+ };
7828
+ });
7829
+ return React__default.createElement(CustomSelect, {
7830
+ inputId: id,
7831
+ value: value,
7832
+ options: answerOptions,
7833
+ onChange: onChange,
7834
+ isDisabled: isDisabled
7835
+ });
7836
+ };
7837
+
7838
+ var ArticleCategorySelector = function ArticleCategorySelector(_ref) {
7839
+ var id = _ref.id,
7840
+ value = _ref.value,
7841
+ optionValue = _ref.optionValue,
7842
+ onChange = _ref.onChange,
7843
+ isDisabled = _ref.isDisabled,
7844
+ options = _ref.options,
7845
+ isMulti = _ref.isMulti,
7846
+ placeholder = _ref.placeholder,
7847
+ rest = _ref.rest;
7848
+ var _useTranslation = reactI18next.useTranslation(),
7849
+ t = _useTranslation.t;
7850
+ return React__default.createElement(CustomSelect, Object.assign({
7851
+ isMulti: isMulti,
7852
+ inputId: id,
7853
+ value: value,
7854
+ options: options,
7855
+ onChange: onChange,
7856
+ isDisabled: isDisabled,
7857
+ placeholder: placeholder || t("select_category"),
7858
+ optionValue: optionValue
7859
+ }, rest));
7860
+ };
7646
7861
 
7647
7862
  var COURSE_URL = BASE_URL + "/api/course";
7648
7863
  var getClassesApi = function getClassesApi(textSearch) {
@@ -8054,7 +8269,7 @@ var SearchInput = function SearchInput(_ref) {
8054
8269
  }));
8055
8270
  };
8056
8271
 
8057
- var styles$1 = {"header__avatar":"_2oGcJ","header__select":"_2y2XV","body":"_ntGyI","list":"_m7Fwt","list__item__header":"_3BM8N","list__item__avatar":"_1ReOK","list__item__avatar-container":"_2qbld","list__item__message":"_3s01i","list__item__message--reply-from":"_2Qxi3","list__item__message--reply-from-right":"_34Vx4","list__item__message--reply":"_3uheq","list__item__message--reply-right":"_2iBr7","reply-text":"_3ZPjO","container-custom":"_38A9k","student-row-col-1":"_Jt5t0","student-row-col-1-active":"_14DKj","row-col-2":"_qHGiR","inputBox":"_2iY67","inputBoxTable":"_3pCw0","background-chat":"_zILbw","wrap-content":"_38gsM","name-sender":"_Lfzyw","content-chat-sender":"_1X73E","content-chat-receiver":"_32V7T","custom-scroll":"_2Uul2","btn-send":"_395lb","btn-chat":"_gDYwm","input-chat":"_22TX5","btn-cancel":"_1u-eg","btn-register":"_22r6_","form-label-dialog":"_jADIA","form-select-width":"_WncPd","padding-content":"_3hz3H","form-label":"_MMQxP","form-control":"_1mJfc"};
8272
+ var styles$2 = {"header__avatar":"_2oGcJ","header__select":"_2y2XV","body":"_ntGyI","list":"_m7Fwt","list__item__header":"_3BM8N","list__item__avatar":"_1ReOK","list__item__avatar-container":"_2qbld","list__item__message":"_3s01i","list__item__message--reply-from":"_2Qxi3","list__item__message--reply-from-right":"_34Vx4","list__item__message--reply":"_3uheq","list__item__message--reply-right":"_2iBr7","reply-text":"_3ZPjO","container-custom":"_38A9k","student-row-col-1":"_Jt5t0","student-row-col-1-active":"_14DKj","row-col-2":"_qHGiR","inputBox":"_2iY67","inputBoxTable":"_3pCw0","background-chat":"_zILbw","wrap-content":"_38gsM","name-sender":"_Lfzyw","content-chat-sender":"_1X73E","content-chat-receiver":"_32V7T","custom-scroll":"_2Uul2","btn-send":"_395lb","btn-chat":"_gDYwm","input-chat":"_22TX5","btn-cancel":"_1u-eg","btn-register":"_22r6_","form-label-dialog":"_jADIA","form-select-width":"_WncPd","padding-content":"_3hz3H","form-label":"_MMQxP","form-control":"_1mJfc"};
8058
8273
 
8059
8274
  var iconPersonNoActive = function iconPersonNoActive(_ref) {
8060
8275
  var _ref$width = _ref.width,
@@ -8214,7 +8429,7 @@ var ChatRightItem = function ChatRightItem(_ref) {
8214
8429
  padding: "4px 0"
8215
8430
  }, React__default.createElement(material.Box, null, showName && isStudent && React__default.createElement(material.Box, {
8216
8431
  gap: "8px",
8217
- className: " " + styles$1["name-sender"],
8432
+ className: " " + styles$2["name-sender"],
8218
8433
  display: "flex",
8219
8434
  alignItems: "center",
8220
8435
  justifyContent: "end",
@@ -8268,7 +8483,7 @@ var ChatRightItem = function ChatRightItem(_ref) {
8268
8483
  objectFit: "contain"
8269
8484
  }
8270
8485
  }) : React__default.createElement("div", {
8271
- className: styles$1["wrap-content"] + " " + styles$1["content-chat-receiver"],
8486
+ className: styles$2["wrap-content"] + " " + styles$2["content-chat-receiver"],
8272
8487
  style: {
8273
8488
  "float": "inline-end",
8274
8489
  maxWidth: 400,
@@ -8315,7 +8530,7 @@ var ChatLeftItem = function ChatLeftItem(_ref) {
8315
8530
  display: "flex",
8316
8531
  padding: "4px",
8317
8532
  flexDirection: "row",
8318
- className: "" + styles$1["name-sender"]
8533
+ className: "" + styles$2["name-sender"]
8319
8534
  }, isStudent ? React__default.createElement(React.Fragment, null, React__default.createElement(material.Typography, {
8320
8535
  fontWeight: 500,
8321
8536
  fontSize: 14,
@@ -8351,7 +8566,7 @@ var ChatLeftItem = function ChatLeftItem(_ref) {
8351
8566
  objectFit: "contain"
8352
8567
  }
8353
8568
  }) : React__default.createElement("div", {
8354
- className: styles$1["wrap-content"] + " " + styles$1["content-chat-sender"],
8569
+ className: styles$2["wrap-content"] + " " + styles$2["content-chat-sender"],
8355
8570
  style: {
8356
8571
  maxWidth: 400,
8357
8572
  color: styles.gray_700,
@@ -8537,7 +8752,9 @@ var TinyChatEditor = function TinyChatEditor(_ref) {
8537
8752
  disabled = _ref$disabled === void 0 ? false : _ref$disabled,
8538
8753
  onChange = _ref.onChange,
8539
8754
  initValue = _ref.initValue,
8540
- config = _ref.config;
8755
+ config = _ref.config,
8756
+ onFocus = _ref.onFocus,
8757
+ onBlur = _ref.onBlur;
8541
8758
  var isFirstChange = React.useRef(true);
8542
8759
  var _useTranslation = reactI18next.useTranslation(),
8543
8760
  t = _useTranslation.t;
@@ -8569,7 +8786,9 @@ var TinyChatEditor = function TinyChatEditor(_ref) {
8569
8786
  disabled: disabled,
8570
8787
  init: config || options,
8571
8788
  value: initValue,
8572
- onEditorChange: handleChange
8789
+ onEditorChange: handleChange,
8790
+ onFocus: onFocus,
8791
+ onBlur: onBlur
8573
8792
  });
8574
8793
  };
8575
8794
 
@@ -8590,11 +8809,16 @@ var UpdateMessageDialog = function UpdateMessageDialog(_ref) {
8590
8809
  }
8591
8810
  return error;
8592
8811
  };
8812
+ var _useKeyboardVisible = useKeyboardVisible(),
8813
+ pageSxProps = _useKeyboardVisible.pageSxProps,
8814
+ handleInputBlur = _useKeyboardVisible.handleInputBlur,
8815
+ handleInputFocus = _useKeyboardVisible.handleInputFocus;
8593
8816
  return React__default.createElement(CommonDialog, {
8594
8817
  open: open,
8595
8818
  onClose: onClose,
8596
8819
  size: "xs",
8597
- title: t("update_message")
8820
+ title: t("update_message"),
8821
+ paperSx: pageSxProps
8598
8822
  }, React__default.createElement(material.DialogContent, null, !contentType ? React__default.createElement(formik.Formik, {
8599
8823
  enableReinitialize: true,
8600
8824
  initialValues: {
@@ -8608,7 +8832,7 @@ var UpdateMessageDialog = function UpdateMessageDialog(_ref) {
8608
8832
  var setFieldValue = _ref2.setFieldValue;
8609
8833
  return React__default.createElement(formik.Form, null, React__default.createElement("label", {
8610
8834
  htmlFor: "content",
8611
- className: styles$1['form-label'] + " " + styles$1['form-label-dialog']
8835
+ className: styles$2['form-label'] + " " + styles$2['form-label-dialog']
8612
8836
  }, t('questions_to_ask')), React__default.createElement(formik.Field, {
8613
8837
  id: "content",
8614
8838
  style: {
@@ -8617,14 +8841,16 @@ var UpdateMessageDialog = function UpdateMessageDialog(_ref) {
8617
8841
  name: "content",
8618
8842
  validate: validate,
8619
8843
  placeholder: t('the_problem_is_difficult'),
8620
- className: styles$1['form-control'],
8844
+ className: styles$2['form-control'],
8621
8845
  render: function render(_ref3) {
8622
8846
  var field = _ref3.field;
8623
8847
  return React__default.createElement(TinyChatEditor, {
8624
8848
  initValue: field.value,
8625
8849
  onChange: function onChange(text) {
8626
8850
  return setFieldValue("content", text);
8627
- }
8851
+ },
8852
+ onFocus: handleInputFocus,
8853
+ onBlur: handleInputBlur
8628
8854
  });
8629
8855
  }
8630
8856
  }), React__default.createElement(material.DialogActions, {
@@ -8638,7 +8864,7 @@ var UpdateMessageDialog = function UpdateMessageDialog(_ref) {
8638
8864
  sx: {
8639
8865
  color: styles.dark
8640
8866
  },
8641
- className: styles$1['btn-cancel'],
8867
+ className: styles$2['btn-cancel'],
8642
8868
  onClick: onClose
8643
8869
  }, React__default.createElement(material.Typography, {
8644
8870
  fontWeight: 700,
@@ -8649,7 +8875,7 @@ var UpdateMessageDialog = function UpdateMessageDialog(_ref) {
8649
8875
  sx: {
8650
8876
  bgcolor: styles.dark
8651
8877
  },
8652
- className: styles$1['btn-register'],
8878
+ className: styles$2['btn-register'],
8653
8879
  type: "submit"
8654
8880
  }, React__default.createElement(material.Typography, {
8655
8881
  fontWeight: 700,
@@ -8696,7 +8922,7 @@ var UpdateMessageDialog = function UpdateMessageDialog(_ref) {
8696
8922
  padding: '12px'
8697
8923
  }
8698
8924
  }, React__default.createElement(material.Button, {
8699
- className: styles$1['btn-cancel'],
8925
+ className: styles$2['btn-cancel'],
8700
8926
  onClick: onClose
8701
8927
  }, React__default.createElement(material.Typography, {
8702
8928
  sx: {
@@ -8707,7 +8933,7 @@ var UpdateMessageDialog = function UpdateMessageDialog(_ref) {
8707
8933
  lineHeight: '16.71px'
8708
8934
  }, t('cancel'))), React__default.createElement(material.Button, {
8709
8935
  variant: "contained",
8710
- className: styles$1['btn-register'],
8936
+ className: styles$2['btn-register'],
8711
8937
  sx: {
8712
8938
  bgcolor: !(selectedFile !== null && selectedFile !== void 0 && selectedFile.content) ? styles.light + " !important" : styles.dark
8713
8939
  },
@@ -8814,7 +9040,7 @@ var ChatList = function ChatList(_ref) {
8814
9040
  var isStudent = roles === null || roles === void 0 ? void 0 : roles.includes(exports.Role.Student);
8815
9041
  return React__default.createElement("ul", {
8816
9042
  ref: listItemRef,
8817
- className: styles$1["list"] + " " + styles$1["padding-content"] + " d-flex h-100 flex-column mb-0 " + (!(filterMessage !== null && filterMessage !== void 0 && filterMessage.length) ? 'justify-content-center' : '')
9043
+ className: styles$2["list"] + " " + styles$2["padding-content"] + " d-flex h-100 flex-column mb-0 " + (!(filterMessage !== null && filterMessage !== void 0 && filterMessage.length) ? 'justify-content-center' : '')
8818
9044
  }, !(filterMessage !== null && filterMessage !== void 0 && filterMessage.length) && React__default.createElement("li", {
8819
9045
  className: "text-muted text-center fst-italic fs-6"
8820
9046
  }, t('no_message')), !!(filterMessage !== null && filterMessage !== void 0 && filterMessage.length) && filterMessage.map(function (message) {
@@ -8928,7 +9154,7 @@ var InputChat = function InputChat(_ref) {
8928
9154
  }, React__default.createElement(material.Button, {
8929
9155
  variant: "contained",
8930
9156
  fullWidth: true,
8931
- className: styles$1["btn-send"],
9157
+ className: styles$2["btn-send"],
8932
9158
  sx: {
8933
9159
  bgcolor: isCompleted ? styles.light + " !important" : styles.less_dark
8934
9160
  },
@@ -9310,7 +9536,7 @@ var ChatContainer = function ChatContainer(_ref) {
9310
9536
  container: true
9311
9537
  }, React__default.createElement(ChatHeader, Object.assign({}, chatHeaderProps)), React__default.createElement("div", {
9312
9538
  ref: listRef,
9313
- className: "flex-grow-1 " + styles$1["body"],
9539
+ className: "flex-grow-1 " + styles$2["body"],
9314
9540
  style: {
9315
9541
  height: "60vh",
9316
9542
  overflowY: "scroll",
@@ -10040,11 +10266,11 @@ var common = {
10040
10266
  white: '#FFFFFF'
10041
10267
  };
10042
10268
  var action$2 = {
10043
- hover: styles$d.alpha(grey[500], 0.08),
10044
- selected: styles$d.alpha(grey[500], 0.16),
10045
- disabled: styles$d.alpha(grey[500], 0.8),
10046
- disabledBackground: styles$d.alpha(grey[500], 0.24),
10047
- focus: styles$d.alpha(grey[500], 0.24),
10269
+ hover: styles$e.alpha(grey[500], 0.08),
10270
+ selected: styles$e.alpha(grey[500], 0.16),
10271
+ disabled: styles$e.alpha(grey[500], 0.8),
10272
+ disabledBackground: styles$e.alpha(grey[500], 0.24),
10273
+ focus: styles$e.alpha(grey[500], 0.24),
10048
10274
  hoverOpacity: 0.08,
10049
10275
  disabledOpacity: 0.48
10050
10276
  };
@@ -10064,7 +10290,7 @@ var base = {
10064
10290
  purple: purple,
10065
10291
  dark_purple: dark_purple,
10066
10292
  dark_red: dark_red,
10067
- divider: styles$d.alpha(grey[500], 0.2),
10293
+ divider: styles$e.alpha(grey[500], 0.2),
10068
10294
  action: action$2
10069
10295
  };
10070
10296
 
@@ -12897,7 +13123,7 @@ var DEFAULT_USER_FILTERS = {
12897
13123
  sortColumnName: exports.UserSortColumn.CreatedAt
12898
13124
  };
12899
13125
 
12900
- var styles$2 = {"avatar":"_2rJkZ","date-picker":"_1iqE2","time-picker":"_20xtc","teacher-selector-wrapper":"_3L1Oj"};
13126
+ var styles$3 = {"avatar":"_2rJkZ","date-picker":"_1iqE2","time-picker":"_20xtc","teacher-selector-wrapper":"_3L1Oj"};
12901
13127
 
12902
13128
  var _excluded$7 = ["teachers", "value"];
12903
13129
  var TeacherSelector = function TeacherSelector(_ref) {
@@ -13103,7 +13329,7 @@ var ClassForm = function ClassForm(_ref) {
13103
13329
  }, React__default.createElement(demo.DemoContainer, {
13104
13330
  components: ["DatePicker"]
13105
13331
  }, React__default.createElement(DatePicker.DatePicker, {
13106
- className: "" + styles$2["date-picker"],
13332
+ className: "" + styles$3["date-picker"],
13107
13333
  format: t("date_format"),
13108
13334
  maxDate: maxDate,
13109
13335
  value: formikProp.values.startDate,
@@ -13127,7 +13353,7 @@ var ClassForm = function ClassForm(_ref) {
13127
13353
  }, React__default.createElement(demo.DemoContainer, {
13128
13354
  components: ["DatePicker"]
13129
13355
  }, React__default.createElement(DatePicker.DatePicker, {
13130
- className: "" + styles$2["date-picker"],
13356
+ className: "" + styles$3["date-picker"],
13131
13357
  format: t("date_format"),
13132
13358
  minDate: minDate,
13133
13359
  value: formikProp.values.endDate,
@@ -13163,7 +13389,7 @@ var ClassForm = function ClassForm(_ref) {
13163
13389
  }, t("main_teacher"), " ", React__default.createElement("span", {
13164
13390
  className: "text-danger"
13165
13391
  }, "*")), React__default.createElement("div", {
13166
- className: "" + styles$2["teacher-selector-wrapper"]
13392
+ className: "" + styles$3["teacher-selector-wrapper"]
13167
13393
  }, React__default.createElement(TeacherSelector, {
13168
13394
  value: formikProp.values.mainTeacherId,
13169
13395
  teachers: teachers,
@@ -13223,7 +13449,7 @@ var ClassForm = function ClassForm(_ref) {
13223
13449
  }
13224
13450
  }
13225
13451
  },
13226
- className: "" + styles$2["time-picker"],
13452
+ className: "" + styles$3["time-picker"],
13227
13453
  onOpen: function onOpen() {
13228
13454
  return setOpen(index + "-startTime");
13229
13455
  },
@@ -13255,7 +13481,7 @@ var ClassForm = function ClassForm(_ref) {
13255
13481
  }
13256
13482
  }
13257
13483
  },
13258
- className: "" + styles$2["time-picker"],
13484
+ className: "" + styles$3["time-picker"],
13259
13485
  onOpen: function onOpen() {
13260
13486
  return !disabled && setOpen(index + "-endTime");
13261
13487
  },
@@ -13319,7 +13545,7 @@ var SortIcon = function SortIcon(_ref) {
13319
13545
  }));
13320
13546
  };
13321
13547
 
13322
- var styles$3 = {"date-picker":"_2YMvj","time-picker":"_3exYU"};
13548
+ var styles$4 = {"date-picker":"_2YMvj","time-picker":"_3exYU"};
13323
13549
 
13324
13550
  var DrawerTab;
13325
13551
  (function (DrawerTab) {
@@ -13678,7 +13904,7 @@ var AttendanceFormBody = function AttendanceFormBody(_ref) {
13678
13904
  setFieldValue("attendanceTime", newValue);
13679
13905
  },
13680
13906
  timezone: "system",
13681
- className: styles$3["time-picker"] + " w-100",
13907
+ className: styles$4["time-picker"] + " w-100",
13682
13908
  slotProps: {
13683
13909
  textField: {
13684
13910
  onClick: function onClick() {
@@ -14834,25 +15060,7 @@ var defaultSeries = function defaultSeries(t) {
14834
15060
  }];
14835
15061
  };
14836
15062
 
14837
- var styles$4 = {"lighter":"#F0FFF6","light":"#89F0B2","less_dark":"#3DC674","dark":"#349056","darker":"#18442A","gray_50":"#FBFBF9","gray_100":"#EAEAE5","gray_300":"#D0D0C8","gray_500":"#9A9A98","gray_700":"#5D5D5B","gray_900":"#363634","red_900":"#DB4D4D","green_support_900":"#3ACB46","yellow_900":"#FEAF06","purple_900":"#C3099A","form-label":"_1jRLX","form-control":"_13KE7","form-label-dialog":"_3mXNM","btn-cancel":"_3bqNl","btn-register":"_3GFnT"};
14838
-
14839
- var iconCloseDialog = function iconCloseDialog(_ref) {
14840
- var _ref$width = _ref.width,
14841
- width = _ref$width === void 0 ? "24" : _ref$width,
14842
- _ref$height = _ref.height,
14843
- height = _ref$height === void 0 ? "25" : _ref$height,
14844
- color = _ref.color;
14845
- return React__default.createElement("svg", {
14846
- width: width,
14847
- height: height,
14848
- viewBox: "0 0 24 25",
14849
- fill: color,
14850
- xmlns: "http://www.w3.org/2000/svg"
14851
- }, React__default.createElement("path", {
14852
- d: "M13.5909 12.5L18.0441 8.04687C18.2554 7.8359 18.3743 7.54962 18.3745 7.25099C18.3748 6.95237 18.2564 6.66587 18.0455 6.45453C17.8345 6.24319 17.5482 6.12431 17.2496 6.12404C16.951 6.12378 16.6645 6.24215 16.4531 6.45312L12 10.9062L7.54687 6.45312C7.33553 6.24178 7.04888 6.12305 6.75 6.12305C6.45111 6.12305 6.16447 6.24178 5.95312 6.45312C5.74178 6.66447 5.62305 6.95111 5.62305 7.25C5.62305 7.54888 5.74178 7.83553 5.95312 8.04687L10.4062 12.5L5.95312 16.9531C5.74178 17.1645 5.62305 17.4511 5.62305 17.75C5.62305 18.0489 5.74178 18.3355 5.95312 18.5469C6.16447 18.7582 6.45111 18.8769 6.75 18.8769C7.04888 18.8769 7.33553 18.7582 7.54687 18.5469L12 14.0937L16.4531 18.5469C16.6645 18.7582 16.9511 18.8769 17.25 18.8769C17.5489 18.8769 17.8355 18.7582 18.0469 18.5469C18.2582 18.3355 18.3769 18.0489 18.3769 17.75C18.3769 17.4511 18.2582 17.1645 18.0469 16.9531L13.5909 12.5Z",
14853
- fill: "#202B37"
14854
- }));
14855
- };
15063
+ var styles$5 = {"lighter":"#F0FFF6","light":"#89F0B2","less_dark":"#3DC674","dark":"#349056","darker":"#18442A","gray_50":"#FBFBF9","gray_100":"#EAEAE5","gray_300":"#D0D0C8","gray_500":"#9A9A98","gray_700":"#5D5D5B","gray_900":"#363634","red_900":"#DB4D4D","green_support_900":"#3ACB46","yellow_900":"#FEAF06","purple_900":"#C3099A","form-label":"_1jRLX","form-control":"_13KE7","form-label-dialog":"_3mXNM","btn-cancel":"_3bqNl","btn-register":"_3GFnT"};
14856
15064
 
14857
15065
  var NoteTinyEditor = function NoteTinyEditor(_ref) {
14858
15066
  var _ref$disabled = _ref.disabled,
@@ -14962,7 +15170,7 @@ var ClassNoteDialog = function ClassNoteDialog(_ref) {
14962
15170
  padding: "24px 24px 40px 24px"
14963
15171
  }, (selectedNote || studentName) && React__default.createElement(material.Stack, null, React__default.createElement("label", {
14964
15172
  htmlFor: "questions",
14965
- className: styles["form-label"] + " " + styles$4["form-label-dialog"]
15173
+ className: styles["form-label"] + " " + styles$5["form-label-dialog"]
14966
15174
  }, t("student_name")), React__default.createElement(Typography, {
14967
15175
  sx: {
14968
15176
  fontWeight: 700,
@@ -14971,7 +15179,7 @@ var ClassNoteDialog = function ClassNoteDialog(_ref) {
14971
15179
  }
14972
15180
  }, selectedNote ? selectedNote.fullName : studentName)), React__default.createElement(material.Stack, null, React__default.createElement("label", {
14973
15181
  htmlFor: "content-question",
14974
- className: styles["form-label"] + " " + styles$4["form-label-dialog"]
15182
+ className: styles["form-label"] + " " + styles$5["form-label-dialog"]
14975
15183
  }, t("incorrect_answer_note_contents")), React__default.createElement(material.Box, {
14976
15184
  position: "relative",
14977
15185
  display: "flex",
@@ -15005,7 +15213,7 @@ var ClassNoteDialog = function ClassNoteDialog(_ref) {
15005
15213
  borderTop: "1px solid #CED2DA"
15006
15214
  }
15007
15215
  }, React__default.createElement(MButton, {
15008
- className: styles$4["btn-cancel"],
15216
+ className: styles$5["btn-cancel"],
15009
15217
  onClick: onClose
15010
15218
  }, React__default.createElement(Typography, {
15011
15219
  sx: {
@@ -15019,7 +15227,7 @@ var ClassNoteDialog = function ClassNoteDialog(_ref) {
15019
15227
  sx: {
15020
15228
  bgcolor: styles.dark
15021
15229
  },
15022
- className: styles$4["btn-register"],
15230
+ className: styles$5["btn-register"],
15023
15231
  type: "submit",
15024
15232
  disabled: !values.content.trim().length
15025
15233
  }, React__default.createElement(Typography, {
@@ -15049,42 +15257,21 @@ var ExamNoteDialog = function ExamNoteDialog(_ref) {
15049
15257
  var handleSaveNote = function handleSaveNote(content, questionId) {
15050
15258
  onSaveNote(content, questionId);
15051
15259
  };
15052
- var _useState = React.useState(false),
15053
- keyboardOpen = _useState[0],
15054
- setKeyboardOpen = _useState[1];
15055
- React.useEffect(function () {
15056
- var handleResize = function handleResize() {
15057
- if (window.innerHeight < window.outerHeight) {
15058
- var _dialogRef$current;
15059
- (_dialogRef$current = dialogRef.current) === null || _dialogRef$current === void 0 ? void 0 : _dialogRef$current.scrollIntoView({
15060
- behavior: 'smooth',
15061
- block: 'center'
15062
- });
15063
- setKeyboardOpen(true);
15064
- } else {
15065
- setKeyboardOpen(false);
15066
- }
15067
- };
15068
- window.addEventListener("resize", handleResize);
15069
- handleResize();
15070
- return function () {
15071
- return window.removeEventListener("resize", handleResize);
15072
- };
15073
- }, []);
15260
+ var _useKeyboardVisible = useKeyboardVisible(),
15261
+ pageSxProps = _useKeyboardVisible.pageSxProps,
15262
+ handleInputBlur = _useKeyboardVisible.handleInputBlur,
15263
+ handleInputFocus = _useKeyboardVisible.handleInputFocus;
15074
15264
  return React__default.createElement(material.Dialog, {
15075
15265
  ref: dialogRef,
15076
15266
  onClose: onClose,
15077
15267
  open: open,
15078
15268
  scroll: "body",
15079
15269
  PaperProps: {
15080
- sx: {
15270
+ sx: _extends({
15081
15271
  maxHeight: "unset",
15082
15272
  minWidth: "363px",
15083
- overflowY: "unset",
15084
- position: "relative",
15085
- bottom: keyboardOpen ? "0" : undefined,
15086
- transition: "top 0.3s ease"
15087
- }
15273
+ overflowY: "auto"
15274
+ }, pageSxProps)
15088
15275
  }
15089
15276
  }, React__default.createElement(DialogTitle, {
15090
15277
  id: "customized-dialog-title"
@@ -15128,7 +15315,7 @@ var ExamNoteDialog = function ExamNoteDialog(_ref) {
15128
15315
  padding: "24px 24px 40px 24px"
15129
15316
  }, React__default.createElement(material.Stack, null, React__default.createElement("label", {
15130
15317
  htmlFor: "questions",
15131
- className: styles["form-label"] + " " + styles$4["form-label-dialog"]
15318
+ className: styles["form-label"] + " " + styles$5["form-label-dialog"]
15132
15319
  }, t("problem_number")), selectedQuestion || selectedNote ? React__default.createElement(Typography, {
15133
15320
  sx: {
15134
15321
  fontWeight: 700,
@@ -15150,12 +15337,15 @@ var ExamNoteDialog = function ExamNoteDialog(_ref) {
15150
15337
  var value = _ref4.value;
15151
15338
  return setFieldValue("questionId", value);
15152
15339
  },
15153
- isClearable: false
15340
+ maxMenuHeight: 150,
15341
+ isClearable: false,
15342
+ onFocus: handleInputFocus,
15343
+ onBlur: handleInputBlur
15154
15344
  }));
15155
15345
  }
15156
15346
  })), React__default.createElement(material.Stack, null, React__default.createElement("label", {
15157
15347
  htmlFor: "content-question",
15158
- className: styles["form-label"] + " " + styles$4["form-label-dialog"]
15348
+ className: styles["form-label"] + " " + styles$5["form-label-dialog"]
15159
15349
  }, t("incorrect_answer_note_contents")), React__default.createElement(material.Box, {
15160
15350
  position: "relative",
15161
15351
  display: "flex",
@@ -15172,7 +15362,9 @@ var ExamNoteDialog = function ExamNoteDialog(_ref) {
15172
15362
  },
15173
15363
  name: "content",
15174
15364
  placeholder: t("the_problem_is_difficult"),
15175
- className: styles["form-control"]
15365
+ className: styles["form-control"],
15366
+ onFocus: handleInputFocus,
15367
+ onBlur: handleInputBlur
15176
15368
  })), React__default.createElement(material.Box, {
15177
15369
  marginBottom: "4px"
15178
15370
  })))), React__default.createElement(DialogActions, {
@@ -15184,7 +15376,7 @@ var ExamNoteDialog = function ExamNoteDialog(_ref) {
15184
15376
  borderTop: "1px solid #CED2DA"
15185
15377
  }
15186
15378
  }, React__default.createElement(MButton, {
15187
- className: styles$4["btn-cancel"],
15379
+ className: styles$5["btn-cancel"],
15188
15380
  onClick: onClose
15189
15381
  }, React__default.createElement(Typography, {
15190
15382
  sx: {
@@ -15198,7 +15390,7 @@ var ExamNoteDialog = function ExamNoteDialog(_ref) {
15198
15390
  sx: {
15199
15391
  bgcolor: styles.dark
15200
15392
  },
15201
- className: styles$4["btn-register"],
15393
+ className: styles$5["btn-register"],
15202
15394
  type: "submit",
15203
15395
  disabled: !values.content.trim().length
15204
15396
  }, React__default.createElement(Typography, {
@@ -17620,7 +17812,7 @@ Object.defineProperty(exports,"__esModule",{value:!0});var _typeof="function"==t
17620
17812
 
17621
17813
  var ReactApexChart = unwrapExports(reactApexcharts_min);
17622
17814
 
17623
- var styles$5 = {"lighter":"#F0FFF6","light":"#89F0B2","less_dark":"#3DC674","dark":"#349056","darker":"#18442A","gray_50":"#FBFBF9","gray_100":"#EAEAE5","gray_300":"#D0D0C8","gray_500":"#9A9A98","gray_700":"#5D5D5B","gray_900":"#363634","red_900":"#DB4D4D","green_support_900":"#3ACB46","yellow_900":"#FEAF06","purple_900":"#C3099A","titleBox":"_1dveO","title":"_mxRxf","point":"_2fD-F","buttonGroup":"_2DGl3","btnFeedback":"_xGW1x","btnTerminate":"_3mLu2","myanswer":"_eDBpS","titleMyAnswer1":"_2fMq3","titleMyAnswer2":"_3gEYh","contentMyAnswer":"_2K_sx","myAnswerItem":"_2qiLh","time":"_6TCOK","timeCol":"_hmseC","answer-response":"_3GfJt","answer-response-0":"_3ut64","answer-response-1":"_2VtpD","answer-response-2":"_58lQU","answer-response-3":"_1ucMY","answer-response-4":"_1qkxy","overall-response-1":"_1AeGu","overall-response-2":"_1xTB0","overall-response-3":"_3Yu_5","answerCorrect":"_2jIeT","answerIncorrect":"_to2v0","answerNograss":"_1JSte","answerEasy":"_2_uTU","answerDiscrimination":"_1DBoA","answerTrap":"_1q3tD","answerNoTime":"_3iItu","questionOrder":"_1fNkS","myTimeLabel":"_1Z_F3","myPoolTime":"_4KwG0","topTimeLabel":"_245H-","topTime":"_3tZqw","meanTimeLabel":"_PlPLY","meanTime":"_12a7R","compareChart":"_3MW16","prevChart":"_1fNkb","chart":"_3K4oY","nextChart":"_3YKBp","titleChart":"_13BVP","titleCompareGrass":"_o1txm","tableCompareGrass":"_bT5nf","thcolumn1":"_3Umg0","tdcolumn1":"_3dRMF","tdcolumn3":"_2tcBP","classification":"_1AFeb","wrapperProblem":"_oTqG7","titleProblem":"_35eIx","titleProblemClose":"_3t4HO","titleTrickyProblem":"_1-oxK","wrongQuestions":"_2dpMR","question":"_1lSOX","assignedQuestions":"_1ONUt","wrapperContent":"_nPoR0","content":"_2zmZn","contentColumn1":"_334SY","span1":"_3Lf-U","span2":"_ZpMot","contentColumn2":"_16P3l","duration":"_1kT28","topDuration":"_1fVRi","overallCorrectRate":"_3jLGe","answer":"_VsZ0K","contentVulnerable":"_QxKMy","wrappContentProblem":"_nnqpW","contentProblem":"_3Z1nV","labelProblem":"_36Xpx","name":"_3ZJQW","percent":"_2J3MK","slider":"_1MPdO","track":"_3CV_y","noData":"__g-ff","loading":"_3j485","table-responsive":"_2O6RX","form-label":"_1RYOQ","form-control":"_3VRVT","form-label-dialog":"_3oCSh","btn-cancel":"_3USKq","btn-register":"_3y_iD","pdfBtnBox":"_3xZHo","pdfBtn":"_1DtWq","form-select":"_1a_vw","loader":"_2uC7T","dot":"_Xz-Mr","bounce":"_3THgz"};
17815
+ var styles$6 = {"lighter":"#F0FFF6","light":"#89F0B2","less_dark":"#3DC674","dark":"#349056","darker":"#18442A","gray_50":"#FBFBF9","gray_100":"#EAEAE5","gray_300":"#D0D0C8","gray_500":"#9A9A98","gray_700":"#5D5D5B","gray_900":"#363634","red_900":"#DB4D4D","green_support_900":"#3ACB46","yellow_900":"#FEAF06","purple_900":"#C3099A","titleBox":"_1dveO","title":"_mxRxf","point":"_2fD-F","buttonGroup":"_2DGl3","btnFeedback":"_xGW1x","btnTerminate":"_3mLu2","myanswer":"_eDBpS","titleMyAnswer1":"_2fMq3","titleMyAnswer2":"_3gEYh","contentMyAnswer":"_2K_sx","myAnswerItem":"_2qiLh","time":"_6TCOK","timeCol":"_hmseC","answer-response":"_3GfJt","answer-response-0":"_3ut64","answer-response-1":"_2VtpD","answer-response-2":"_58lQU","answer-response-3":"_1ucMY","answer-response-4":"_1qkxy","overall-response-1":"_1AeGu","overall-response-2":"_1xTB0","overall-response-3":"_3Yu_5","answerCorrect":"_2jIeT","answerIncorrect":"_to2v0","answerNograss":"_1JSte","answerEasy":"_2_uTU","answerDiscrimination":"_1DBoA","answerTrap":"_1q3tD","answerNoTime":"_3iItu","questionOrder":"_1fNkS","myTimeLabel":"_1Z_F3","myPoolTime":"_4KwG0","topTimeLabel":"_245H-","topTime":"_3tZqw","meanTimeLabel":"_PlPLY","meanTime":"_12a7R","compareChart":"_3MW16","prevChart":"_1fNkb","chart":"_3K4oY","nextChart":"_3YKBp","titleChart":"_13BVP","titleCompareGrass":"_o1txm","tableCompareGrass":"_bT5nf","thcolumn1":"_3Umg0","tdcolumn1":"_3dRMF","tdcolumn3":"_2tcBP","classification":"_1AFeb","wrapperProblem":"_oTqG7","titleProblem":"_35eIx","titleProblemClose":"_3t4HO","titleTrickyProblem":"_1-oxK","wrongQuestions":"_2dpMR","question":"_1lSOX","assignedQuestions":"_1ONUt","wrapperContent":"_nPoR0","content":"_2zmZn","contentColumn1":"_334SY","span1":"_3Lf-U","span2":"_ZpMot","contentColumn2":"_16P3l","duration":"_1kT28","topDuration":"_1fVRi","overallCorrectRate":"_3jLGe","answer":"_VsZ0K","contentVulnerable":"_QxKMy","wrappContentProblem":"_nnqpW","contentProblem":"_3Z1nV","labelProblem":"_36Xpx","name":"_3ZJQW","percent":"_2J3MK","slider":"_1MPdO","track":"_3CV_y","noData":"__g-ff","loading":"_3j485","table-responsive":"_2O6RX","form-label":"_1RYOQ","form-control":"_3VRVT","form-label-dialog":"_3oCSh","btn-cancel":"_3USKq","btn-register":"_3y_iD","pdfBtnBox":"_3xZHo","pdfBtn":"_1DtWq","form-select":"_1a_vw","loader":"_2uC7T","dot":"_Xz-Mr","bounce":"_3THgz"};
17624
17816
 
17625
17817
  var printStyles = {"page-break":"_35kyG","print-exact-color":"_1PFgl","avoid-break-inside":"_3rPGh"};
17626
17818
 
@@ -17789,7 +17981,7 @@ var AnswerItem = function AnswerItem(_ref) {
17789
17981
  },
17790
17982
  key: data.id
17791
17983
  }, React__default.createElement("div", {
17792
- className: styles$5["myAnswerItem"] + " " + styles["noGutters"]
17984
+ className: styles$6["myAnswerItem"] + " " + styles["noGutters"]
17793
17985
  }, React__default.createElement("div", {
17794
17986
  className: styles["custom-col-2"],
17795
17987
  style: {
@@ -17799,7 +17991,7 @@ var AnswerItem = function AnswerItem(_ref) {
17799
17991
  padding: "5px 8px"
17800
17992
  }
17801
17993
  }, data.isStar ? React__default.createElement(iconStarQuestion, null) : React__default.createElement(iconNoStarQuestion, null), React__default.createElement("span", {
17802
- className: styles$5["questionOrder"]
17994
+ className: styles$6["questionOrder"]
17803
17995
  }, t("number_question", {
17804
17996
  number: data.questionOrder + 1
17805
17997
  }))), React__default.createElement("div", {
@@ -17810,11 +18002,11 @@ var AnswerItem = function AnswerItem(_ref) {
17810
18002
  gap: "4px"
17811
18003
  }
17812
18004
  }, data.isCorrect && data.selectedAnswers !== "" && React__default.createElement(React.Fragment, null, React__default.createElement(iconCorrectAnswer, null), React__default.createElement("span", {
17813
- className: styles$5["answerCorrect"]
18005
+ className: styles$6["answerCorrect"]
17814
18006
  }, t("correct"))), !data.isCorrect && data.selectedAnswers !== "" && React__default.createElement(React.Fragment, null, React__default.createElement(iconCorrectAnswer$1, null), React__default.createElement("span", {
17815
- className: styles$5["answerIncorrect"]
18007
+ className: styles$6["answerIncorrect"]
17816
18008
  }, t("incorrect"))), data.selectedAnswers === "" && React__default.createElement(React.Fragment, null, React__default.createElement(iconNoGrass, null), React__default.createElement("span", {
17817
- className: styles$5["answerNograss"]
18009
+ className: styles$6["answerNograss"]
17818
18010
  }, t("no_solution")))), React__default.createElement("div", {
17819
18011
  className: styles["custom-col-2"],
17820
18012
  style: {
@@ -17825,12 +18017,12 @@ var AnswerItem = function AnswerItem(_ref) {
17825
18017
  style: {
17826
18018
  margin: 0
17827
18019
  },
17828
- className: styles$5["answer-response"] + " " + styles$5["answer-response-" + data.answerResponseSignal]
18020
+ className: styles$6["answer-response"] + " " + styles$6["answer-response-" + data.answerResponseSignal]
17829
18021
  }, formatTimeSecond(Math.round(data.duration), t)) : React__default.createElement("p", {
17830
18022
  style: {
17831
18023
  margin: 0
17832
18024
  },
17833
- className: styles$5["answerNoTime"]
18025
+ className: styles$6["answerNoTime"]
17834
18026
  }, t("no_time"))), React__default.createElement("div", {
17835
18027
  className: styles["custom-col-2"],
17836
18028
  style: {
@@ -17841,13 +18033,13 @@ var AnswerItem = function AnswerItem(_ref) {
17841
18033
  style: {
17842
18034
  margin: 0
17843
18035
  },
17844
- className: styles$5["answer-response"] + " " + styles$5["answer-response-" + data.answerResponseSignal]
18036
+ className: styles$6["answer-response"] + " " + styles$6["answer-response-" + data.answerResponseSignal]
17845
18037
  }, formatTimeDiff(data.duration, data.topDuration, t)) : React__default.createElement("p", {
17846
18038
  style: {
17847
18039
  margin: 0,
17848
18040
  textAlign: "center"
17849
18041
  },
17850
- className: styles$5["answerNoTime"]
18042
+ className: styles$6["answerNoTime"]
17851
18043
  }, "-")), React__default.createElement("div", {
17852
18044
  className: styles["custom-col-2"],
17853
18045
  style: {
@@ -17858,12 +18050,12 @@ var AnswerItem = function AnswerItem(_ref) {
17858
18050
  style: {
17859
18051
  margin: 0
17860
18052
  },
17861
- className: styles$5["answer-response"] + " " + getOverallColorClassName(data.overallCorrectRate, styles$5)
18053
+ className: styles$6["answer-response"] + " " + getOverallColorClassName(data.overallCorrectRate, styles$6)
17862
18054
  }, data.overallCorrectRate.toFixed(2) + "%") : React__default.createElement("p", {
17863
18055
  style: {
17864
18056
  margin: 0
17865
18057
  },
17866
- className: styles$5["answerNoTime"]
18058
+ className: styles$6["answerNoTime"]
17867
18059
  }, t("no_time"))), isStudent && !isLearningSpace && React__default.createElement(material.Box, {
17868
18060
  className: styles["custom-col-2"]
17869
18061
  }, openContextMenu ? React__default.createElement(material.ClickAwayListener, {
@@ -17930,7 +18122,7 @@ var MyAnswer = function MyAnswer(_ref) {
17930
18122
  }));
17931
18123
  };
17932
18124
  return React__default.createElement("div", {
17933
- className: "" + styles$5["myanswer"]
18125
+ className: "" + styles$6["myanswer"]
17934
18126
  }, formattedData && formattedData.length > 0 && formattedData.map(function (item) {
17935
18127
  return React__default.createElement("div", {
17936
18128
  key: item.category.id
@@ -17940,7 +18132,7 @@ var MyAnswer = function MyAnswer(_ref) {
17940
18132
  bgcolor: "#F9FAFB",
17941
18133
  flexDirection: "row",
17942
18134
  padding: "12px",
17943
- className: styles$5["myAnswerItem"] + " " + styles["noGutters"]
18135
+ className: styles$6["myAnswerItem"] + " " + styles["noGutters"]
17944
18136
  }, React__default.createElement("div", {
17945
18137
  className: styles["custom-col-2"],
17946
18138
  style: {
@@ -18019,7 +18211,7 @@ var MyAnswer = function MyAnswer(_ref) {
18019
18211
  alignItems: "center"
18020
18212
  }
18021
18213
  }, t("total_correct_rate")))), React__default.createElement("div", {
18022
- className: styles$5["titleMyAnswer2"]
18214
+ className: styles$6["titleMyAnswer2"]
18023
18215
  }, React__default.createElement(material.Typography, {
18024
18216
  sx: {
18025
18217
  color: "#97A1AF",
@@ -18032,7 +18224,7 @@ var MyAnswer = function MyAnswer(_ref) {
18032
18224
  fontWeight: 700
18033
18225
  }
18034
18226
  }, item.category.name))), React__default.createElement("div", {
18035
- className: styles$5["contentMyAnswer"]
18227
+ className: styles$6["contentMyAnswer"]
18036
18228
  }, React__default.createElement(ListView, {
18037
18229
  data: item.questions,
18038
18230
  render: function render(question, index) {
@@ -18148,7 +18340,7 @@ var CompareGrass = function CompareGrass(_ref2) {
18148
18340
  borderTop: index < effectSize.length - 1 ? "1px solid transparent" : undefined
18149
18341
  }
18150
18342
  }, React__default.createElement("td", {
18151
- className: styles$5["tdcolumn1"]
18343
+ className: styles$6["tdcolumn1"]
18152
18344
  }, t("problem"), " ", item.questionOrder + 1), React__default.createElement("td", {
18153
18345
  style: {
18154
18346
  textAlign: "center",
@@ -18156,9 +18348,9 @@ var CompareGrass = function CompareGrass(_ref2) {
18156
18348
  maxWidth: "30%"
18157
18349
  }
18158
18350
  }, typeof item.correctAnswers === "string" ? renderAnswer(item.questionAnswerType, item.correctAnswers) : renderTextbookAnswer(item.questionAnswerType, item.correctAnswers, item.correctTextualAnswers, true)), React__default.createElement("td", {
18159
- className: styles$5["tdcolumn3"],
18351
+ className: styles$6["tdcolumn3"],
18160
18352
  style: {
18161
- color: item.isCorrect ? styles$5.green_support_900 : styles$5.red_900,
18353
+ color: item.isCorrect ? styles$6.green_support_900 : styles$6.red_900,
18162
18354
  maxWidth: "30%"
18163
18355
  }
18164
18356
  }, typeof item.selectedAnswers === "string" ? renderAnswer(item.questionAnswerType, item.selectedAnswers) : renderTextbookAnswer(item.questionAnswerType, item.selectedAnswers, item.textualAnswers)), React__default.createElement("td", {
@@ -18169,7 +18361,7 @@ var CompareGrass = function CompareGrass(_ref2) {
18169
18361
  }, renderAnswer(item.questionAnswerType, item.mostSelectedAnswers)), React__default.createElement("td", {
18170
18362
  className: "" + printStyles["avoid-break-inside"]
18171
18363
  }, React__default.createElement("div", {
18172
- className: styles$5["classification"] + " " + printStyles["avoid-break-inside"]
18364
+ className: styles$6["classification"] + " " + printStyles["avoid-break-inside"]
18173
18365
  }, item.problemCategories.map(function (problem, index) {
18174
18366
  return React__default.createElement(material.Stack, {
18175
18367
  flexDirection: "row",
@@ -18212,11 +18404,11 @@ var CompareGrass = function CompareGrass(_ref2) {
18212
18404
  });
18213
18405
  };
18214
18406
  return React__default.createElement("div", {
18215
- className: "" + styles$5["compareGrass"]
18407
+ className: "" + styles$6["compareGrass"]
18216
18408
  }, React__default.createElement("div", {
18217
- className: styles$5["tableCompareGrass"]
18409
+ className: styles$6["tableCompareGrass"]
18218
18410
  }, React__default.createElement("div", {
18219
- className: styles$5["table-responsive"]
18411
+ className: styles$6["table-responsive"]
18220
18412
  }, React__default.createElement(material.Table, {
18221
18413
  style: {
18222
18414
  width: "100%"
@@ -18228,7 +18420,7 @@ var CompareGrass = function CompareGrass(_ref2) {
18228
18420
  },
18229
18421
  className: "" + printStyles["avoid-break-inside"]
18230
18422
  }, React__default.createElement("tr", null, React__default.createElement("th", {
18231
- className: styles$5["thcolumn1"]
18423
+ className: styles$6["thcolumn1"]
18232
18424
  }, t("problem_number")), React__default.createElement("th", {
18233
18425
  style: {
18234
18426
  textAlign: "center"
@@ -18309,37 +18501,37 @@ var TrickyProblem = function TrickyProblem(_ref) {
18309
18501
  });
18310
18502
  var renderProblems = function renderProblems() {
18311
18503
  return React__default.createElement(React.Fragment, null, React__default.createElement("div", {
18312
- className: styles$5["titleTrickyProblem"] + " " + printStyles["avoid-break-inside"]
18504
+ className: styles$6["titleTrickyProblem"] + " " + printStyles["avoid-break-inside"]
18313
18505
  }, React__default.createElement(iconX, null), React__default.createElement("span", null, t("incorrect_problem_among_the_starred_problems"))), React__default.createElement("div", {
18314
- className: styles$5["wrongQuestions"] + " " + printStyles["avoid-break-inside"]
18506
+ className: styles$6["wrongQuestions"] + " " + printStyles["avoid-break-inside"]
18315
18507
  }, !!(inCorrectQuestions !== null && inCorrectQuestions !== void 0 && inCorrectQuestions.length) && inCorrectQuestions.map(function (question) {
18316
18508
  return React__default.createElement("span", {
18317
18509
  key: question.id,
18318
- className: styles$5["question"]
18510
+ className: styles$6["question"]
18319
18511
  }, t("number_question", {
18320
18512
  number: question.questionOrder + 1
18321
18513
  }));
18322
18514
  }), !(data !== null && data !== void 0 && data.questions.length) && React__default.createElement("div", {
18323
- className: styles$5["noData"]
18515
+ className: styles$6["noData"]
18324
18516
  }, t("no_data"))), React__default.createElement("div", {
18325
- className: styles$5["titleTrickyProblem"] + " " + printStyles["avoid-break-inside"]
18517
+ className: styles$6["titleTrickyProblem"] + " " + printStyles["avoid-break-inside"]
18326
18518
  }, React__default.createElement(iconAssignedQuestions, null), React__default.createElement("span", null, t("correct_problem_among_the_starred_problems"))), React__default.createElement("div", {
18327
- className: styles$5["assignedQuestions"] + " " + printStyles["avoid-break-inside"]
18519
+ className: styles$6["assignedQuestions"] + " " + printStyles["avoid-break-inside"]
18328
18520
  }, !!(correctQuestions !== null && correctQuestions !== void 0 && correctQuestions.length) && correctQuestions.map(function (question) {
18329
18521
  return React__default.createElement("div", {
18330
18522
  key: question.id,
18331
- className: styles$5["question"]
18523
+ className: styles$6["question"]
18332
18524
  }, t("number_question", {
18333
18525
  number: question.questionOrder + 1
18334
18526
  }));
18335
18527
  }), !(data !== null && data !== void 0 && data.questions.length) && React__default.createElement("div", {
18336
- className: styles$5["noData"]
18528
+ className: styles$6["noData"]
18337
18529
  }, t("no_data"))));
18338
18530
  };
18339
18531
  return React__default.createElement("div", {
18340
- className: "" + styles$5["wrapperProblem"]
18532
+ className: "" + styles$6["wrapperProblem"]
18341
18533
  }, React__default.createElement("div", {
18342
- className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$5["titleProblemClose"] : styles$5["titleProblem"]),
18534
+ className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$6["titleProblemClose"] : styles$6["titleProblem"]),
18343
18535
  onClick: function onClick() {
18344
18536
  return changeOpen === null || changeOpen === void 0 ? void 0 : changeOpen(isOpen ? undefined : keyOpen);
18345
18537
  }
@@ -18351,10 +18543,10 @@ var TrickyProblem = function TrickyProblem(_ref) {
18351
18543
  }
18352
18544
  }, t("tricky_problems")), isOpen ? React__default.createElement(io5.IoChevronUp, {
18353
18545
  size: 24,
18354
- color: styles$5.gray_300
18546
+ color: styles$6.gray_300
18355
18547
  }) : React__default.createElement(io5.IoChevronDown, {
18356
18548
  size: 24,
18357
- color: styles$5.gray_300
18549
+ color: styles$6.gray_300
18358
18550
  })), isOpen && React__default.createElement(React.Fragment, null, renderProblems()));
18359
18551
  };
18360
18552
 
@@ -18380,9 +18572,9 @@ var ProtractedProblem = function ProtractedProblem(_ref) {
18380
18572
  borderBottom: "1px solid #e4e7ec"
18381
18573
  } : {}
18382
18574
  }, React__default.createElement("td", {
18383
- className: styles$5["tdcolumn1"],
18575
+ className: styles$6["tdcolumn1"],
18384
18576
  style: {
18385
- color: styles$5.gray_900,
18577
+ color: styles$6.gray_900,
18386
18578
  fontSize: "13px",
18387
18579
  fontWeight: 500
18388
18580
  }
@@ -18391,22 +18583,22 @@ var ProtractedProblem = function ProtractedProblem(_ref) {
18391
18583
  })), React__default.createElement("td", {
18392
18584
  style: {
18393
18585
  textAlign: "center",
18394
- color: styles$5.gray_700,
18586
+ color: styles$6.gray_700,
18395
18587
  fontSize: "13px",
18396
18588
  fontWeight: 500
18397
18589
  }
18398
18590
  }, item.duration ? formatTimeSecond(item.duration, t) : ""), React__default.createElement("td", {
18399
- className: styles$5["tdcolumn3"],
18591
+ className: styles$6["tdcolumn3"],
18400
18592
  style: {
18401
18593
  textAlign: "center",
18402
- color: styles$5.gray_700,
18594
+ color: styles$6.gray_700,
18403
18595
  fontSize: "13px",
18404
18596
  fontWeight: 500
18405
18597
  }
18406
18598
  }, item.topDuration ? formatTimeSecond(item.topDuration, t) : ""), React__default.createElement("td", {
18407
18599
  style: {
18408
18600
  textAlign: "center",
18409
- color: isBetter ? styles$5.dark : styles$5.red_900,
18601
+ color: isBetter ? styles$6.dark : styles$6.red_900,
18410
18602
  fontSize: "13px",
18411
18603
  fontWeight: 600
18412
18604
  }
@@ -18422,15 +18614,15 @@ var ProtractedProblem = function ProtractedProblem(_ref) {
18422
18614
  return React__default.createElement(material.Stack, {
18423
18615
  direction: "row",
18424
18616
  flexWrap: "nowrap",
18425
- className: styles$5["content"] + " " + printStyles["avoid-break-inside"],
18617
+ className: styles$6["content"] + " " + printStyles["avoid-break-inside"],
18426
18618
  key: item.id
18427
18619
  }, React__default.createElement(material.Box, {
18428
18620
  width: "160px",
18429
- className: styles$5["contentColumn1"]
18621
+ className: styles$6["contentColumn1"]
18430
18622
  }, React__default.createElement(material.Stack, null, React__default.createElement("div", null, React__default.createElement("span", {
18431
- className: styles$5["span1"]
18623
+ className: styles$6["span1"]
18432
18624
  }, t("problem")), React__default.createElement("span", {
18433
- className: styles$5["span2"]
18625
+ className: styles$6["span2"]
18434
18626
  }, t("number_question", {
18435
18627
  number: item.questionOrder + 1
18436
18628
  }))), (category === null || category === void 0 ? void 0 : category.name) && React__default.createElement(material.Typography, {
@@ -18441,22 +18633,22 @@ var ProtractedProblem = function ProtractedProblem(_ref) {
18441
18633
  textAlign: "center"
18442
18634
  }
18443
18635
  }, category.name))), React__default.createElement(material.Box, {
18444
- className: styles$5["contentColumn2"]
18636
+ className: styles$6["contentColumn2"]
18445
18637
  }, React__default.createElement("div", null, React__default.createElement("span", {
18446
- className: styles$5["span1"]
18638
+ className: styles$6["span1"]
18447
18639
  }, t("my_time")), React__default.createElement("span", {
18448
- className: styles$5["span2"]
18640
+ className: styles$6["span2"]
18449
18641
  }, t("top_time"))), React__default.createElement("div", null, React__default.createElement("span", {
18450
- className: styles$5["duration"]
18642
+ className: styles$6["duration"]
18451
18643
  }, formatTimeSecond(item.duration, t)), React__default.createElement("span", {
18452
- className: styles$5["topDuration"]
18644
+ className: styles$6["topDuration"]
18453
18645
  }, formatTimeSecond(item.topDuration, t)))));
18454
18646
  });
18455
18647
  };
18456
18648
  return React__default.createElement("div", {
18457
- className: "" + styles$5["wrapperProblem"]
18649
+ className: "" + styles$6["wrapperProblem"]
18458
18650
  }, React__default.createElement("div", {
18459
- className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$5["titleProblemClose"] : styles$5["titleProblem"]),
18651
+ className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$6["titleProblemClose"] : styles$6["titleProblem"]),
18460
18652
  onClick: function onClick() {
18461
18653
  return changeOpen === null || changeOpen === void 0 ? void 0 : changeOpen(isOpen ? undefined : keyOpen);
18462
18654
  }
@@ -18472,20 +18664,20 @@ var ProtractedProblem = function ProtractedProblem(_ref) {
18472
18664
  }
18473
18665
  }, t("problems_that_took_a_long_time")), React__default.createElement(material.Typography, {
18474
18666
  sx: {
18475
- color: styles$5.gray_300,
18667
+ color: styles$6.gray_300,
18476
18668
  fontSize: "11px",
18477
18669
  fontWeight: 500
18478
18670
  }
18479
18671
  }, t("protracted_problem_detail"))), isOpen ? React__default.createElement(io5.IoChevronUp, {
18480
18672
  size: 24,
18481
- color: styles$5.gray_300
18673
+ color: styles$6.gray_300
18482
18674
  }) : React__default.createElement(io5.IoChevronDown, {
18483
18675
  size: 24,
18484
- color: styles$5.gray_300
18676
+ color: styles$6.gray_300
18485
18677
  })), isOpen && React__default.createElement(React.Fragment, null, data.length ? React__default.createElement("div", {
18486
- className: styles$5["tableCompareGrass"]
18678
+ className: styles$6["tableCompareGrass"]
18487
18679
  }, React__default.createElement("div", {
18488
- className: styles$5["table-responsive"]
18680
+ className: styles$6["table-responsive"]
18489
18681
  }, React__default.createElement(material.Table, {
18490
18682
  style: {
18491
18683
  width: "100%",
@@ -18497,7 +18689,7 @@ var ProtractedProblem = function ProtractedProblem(_ref) {
18497
18689
  },
18498
18690
  className: "" + printStyles["avoid-break-inside"]
18499
18691
  }, React__default.createElement("tr", null, React__default.createElement("th", {
18500
- className: styles$5["thcolumn1"]
18692
+ className: styles$6["thcolumn1"]
18501
18693
  }, t("problem_number")), React__default.createElement("th", {
18502
18694
  style: {
18503
18695
  textAlign: "center"
@@ -18511,7 +18703,7 @@ var ProtractedProblem = function ProtractedProblem(_ref) {
18511
18703
  textAlign: "center"
18512
18704
  }
18513
18705
  }, t("time_comparison")))), React__default.createElement("tbody", null, isMyStoryStudent ? renderTableBody(data) : renderQuestions(data))))) : React__default.createElement("div", {
18514
- className: styles$5["noData"] + " " + printStyles["avoid-break-inside"]
18706
+ className: styles$6["noData"] + " " + printStyles["avoid-break-inside"]
18515
18707
  }, t("no_data"))));
18516
18708
  };
18517
18709
 
@@ -18583,39 +18775,39 @@ var Vulnerable = function Vulnerable(_ref) {
18583
18775
  borderBottom: index < data.length - 1 ? "1px solid #e4e7ec" : undefined
18584
18776
  }
18585
18777
  }, React__default.createElement("td", {
18586
- className: styles$5["tdcolumn1"],
18778
+ className: styles$6["tdcolumn1"],
18587
18779
  style: {
18588
- color: styles$5.gray_900,
18780
+ color: styles$6.gray_900,
18589
18781
  fontSize: "13px",
18590
18782
  fontWeight: 600
18591
18783
  }
18592
18784
  }, React__default.createElement(material.Typography, {
18593
- color: styles$5.gray_900,
18785
+ color: styles$6.gray_900,
18594
18786
  fontSize: "13px",
18595
18787
  fontWeight: 600
18596
18788
  }, t("problem") + " " + (item.questionOrder + 1))), React__default.createElement("td", {
18597
18789
  style: {
18598
18790
  textAlign: "center",
18599
- color: styles$5.dark,
18791
+ color: styles$6.dark,
18600
18792
  fontSize: "13px",
18601
18793
  fontWeight: 600
18602
18794
  }
18603
18795
  }, item.overallCorrectRate.toFixed(2) ? item.overallCorrectRate.toFixed(2) + "%" : ""), React__default.createElement("td", {
18604
- className: styles$5["tdcolumn3"],
18796
+ className: styles$6["tdcolumn3"],
18605
18797
  style: {
18606
- color: styles$5.red_900,
18798
+ color: styles$6.red_900,
18607
18799
  fontSize: "13px",
18608
18800
  fontWeight: 500
18609
18801
  }
18610
18802
  }, typeof item.selectedAnswers === "string" ? renderAnswer(item.questionAnswerType, item.selectedAnswers) : renderTextbookAnswer(item.questionAnswerType, item.selectedAnswers, item.textualAnswers)), React__default.createElement("td", {
18611
18803
  style: {
18612
18804
  textAlign: "center",
18613
- color: styles$5.gray_700
18805
+ color: styles$6.gray_700
18614
18806
  }
18615
18807
  }, typeof item.correctAnswers === "string" ? renderAnswer(item.questionAnswerType, item.correctAnswers) : renderTextbookAnswer(item.questionAnswerType, item.correctAnswers, item.correctTextualAnswers, true)), React__default.createElement("td", {
18616
18808
  style: {
18617
18809
  textAlign: "center",
18618
- color: styles$5.gray_700
18810
+ color: styles$6.gray_700
18619
18811
  }
18620
18812
  }, item.category.name ? item.category.name : ""));
18621
18813
  });
@@ -18626,18 +18818,18 @@ var Vulnerable = function Vulnerable(_ref) {
18626
18818
  return React__default.createElement(material.Stack, {
18627
18819
  direction: "row",
18628
18820
  flexWrap: "nowrap",
18629
- className: styles$5["content"] + " " + printStyles["avoid-break-inside"],
18821
+ className: styles$6["content"] + " " + printStyles["avoid-break-inside"],
18630
18822
  key: question.id
18631
18823
  }, React__default.createElement(material.Box, {
18632
18824
  width: "160px",
18633
- className: styles$5["contentColumn1"]
18825
+ className: styles$6["contentColumn1"]
18634
18826
  }, React__default.createElement(material.Stack, {
18635
18827
  direction: "column",
18636
18828
  gap: 1
18637
18829
  }, React__default.createElement("div", null, React__default.createElement("span", {
18638
- className: styles$5["span1"]
18830
+ className: styles$6["span1"]
18639
18831
  }, t("problem_number")), React__default.createElement("span", {
18640
- className: styles$5["span2"]
18832
+ className: styles$6["span2"]
18641
18833
  }, t("number_question", {
18642
18834
  number: question.questionOrder + 1
18643
18835
  }))), ((_question$category = question.category) === null || _question$category === void 0 ? void 0 : _question$category.name) && React__default.createElement(material.Typography, {
@@ -18648,18 +18840,18 @@ var Vulnerable = function Vulnerable(_ref) {
18648
18840
  textAlign: "center"
18649
18841
  }
18650
18842
  }, question.category.name))), React__default.createElement(material.Box, {
18651
- className: styles$5["contentColumn2"],
18843
+ className: styles$6["contentColumn2"],
18652
18844
  sx: {
18653
18845
  alignItems: "center"
18654
18846
  }
18655
18847
  }, React__default.createElement("div", null, React__default.createElement("span", {
18656
- className: styles$5["span1"]
18848
+ className: styles$6["span1"]
18657
18849
  }, t("total_correct_rate")), React__default.createElement("span", {
18658
- className: styles$5["span2"]
18850
+ className: styles$6["span2"]
18659
18851
  }, t("my_wrong_answer"))), React__default.createElement("div", null, React__default.createElement("span", {
18660
- className: styles$5["overallCorrectRate"]
18852
+ className: styles$6["overallCorrectRate"]
18661
18853
  }, question.overallCorrectRate.toFixed(2), "%"), React__default.createElement("span", {
18662
- className: styles$5["answer"]
18854
+ className: styles$6["answer"]
18663
18855
  }, typeof question.selectedAnswers === "string" ? renderAnswer(question.questionAnswerType, question.selectedAnswers) : renderTextbookAnswer(question.questionAnswerType, question.selectedAnswers, question.textualAnswers), " ", t("answer"), " ", typeof question.correctAnswers === "string" ? renderAnswer(question.questionAnswerType, question.correctAnswers) : renderTextbookAnswer(question.questionAnswerType, question.correctAnswers, question.correctTextualAnswers, true)))));
18664
18856
  });
18665
18857
  };
@@ -18667,9 +18859,9 @@ var Vulnerable = function Vulnerable(_ref) {
18667
18859
  changeOpen === null || changeOpen === void 0 ? void 0 : changeOpen(isOpen ? undefined : keyOpen);
18668
18860
  };
18669
18861
  return React__default.createElement("div", {
18670
- className: "" + styles$5["wrapperProblem"]
18862
+ className: "" + styles$6["wrapperProblem"]
18671
18863
  }, React__default.createElement("div", {
18672
- className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$5["titleProblemClose"] : styles$5["titleProblem"]),
18864
+ className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$6["titleProblemClose"] : styles$6["titleProblem"]),
18673
18865
  onClick: handleToggle
18674
18866
  }, React__default.createElement(material.Stack, {
18675
18867
  flexDirection: "row",
@@ -18683,20 +18875,20 @@ var Vulnerable = function Vulnerable(_ref) {
18683
18875
  }
18684
18876
  }, t("issues_vulnerable")), React__default.createElement(material.Typography, {
18685
18877
  sx: {
18686
- color: styles$5.gray_300,
18878
+ color: styles$6.gray_300,
18687
18879
  fontSize: "11px",
18688
18880
  fontWeight: 500
18689
18881
  }
18690
18882
  }, t("vulnerable_detail"))), isOpen ? React__default.createElement(io5.IoChevronUp, {
18691
18883
  size: 24,
18692
- color: styles$5.gray_300
18884
+ color: styles$6.gray_300
18693
18885
  }) : React__default.createElement(io5.IoChevronDown, {
18694
18886
  size: 24,
18695
- color: styles$5.gray_300
18887
+ color: styles$6.gray_300
18696
18888
  })), isOpen && React__default.createElement(React.Fragment, null, incorrectQuestions.length ? React__default.createElement("div", {
18697
- className: styles$5["tableCompareGrass"]
18889
+ className: styles$6["tableCompareGrass"]
18698
18890
  }, React__default.createElement("div", {
18699
- className: styles$5["table-responsive"]
18891
+ className: styles$6["table-responsive"]
18700
18892
  }, isMyStoryStudent && React__default.createElement(material.Table, {
18701
18893
  style: {
18702
18894
  width: "100%",
@@ -18708,7 +18900,7 @@ var Vulnerable = function Vulnerable(_ref) {
18708
18900
  },
18709
18901
  className: "" + printStyles["avoid-break-inside"]
18710
18902
  }, React__default.createElement("tr", null, React__default.createElement("th", {
18711
- className: styles$5["thcolumn1"]
18903
+ className: styles$6["thcolumn1"]
18712
18904
  }, t("problem_number")), React__default.createElement("th", {
18713
18905
  style: {
18714
18906
  textAlign: "center"
@@ -18726,7 +18918,7 @@ var Vulnerable = function Vulnerable(_ref) {
18726
18918
  textAlign: "center"
18727
18919
  }
18728
18920
  }, t("_category")))), React__default.createElement("tbody", null, renderTableBody(incorrectQuestions))), !isMyStoryStudent && renderQuestions(incorrectQuestions))) : React__default.createElement("div", {
18729
- className: styles$5["noData"] + " " + printStyles["avoid-break-inside"]
18921
+ className: styles$6["noData"] + " " + printStyles["avoid-break-inside"]
18730
18922
  }, t("no_data"))));
18731
18923
  };
18732
18924
 
@@ -18777,24 +18969,24 @@ var GradesByTerritory = function GradesByTerritory(_ref) {
18777
18969
  borderBottom: index < data.length - 1 ? "1px solid #e4e7ec" : undefined
18778
18970
  }
18779
18971
  }, React__default.createElement("td", {
18780
- className: styles$5["tdcolumn1"],
18972
+ className: styles$6["tdcolumn1"],
18781
18973
  style: {
18782
- color: styles$5.gray_900,
18974
+ color: styles$6.gray_900,
18783
18975
  fontSize: "13px",
18784
18976
  fontWeight: 600
18785
18977
  }
18786
18978
  }, item.name), React__default.createElement("td", {
18787
18979
  style: {
18788
18980
  textAlign: "center",
18789
- color: styles$5.gray_900,
18981
+ color: styles$6.gray_900,
18790
18982
  fontSize: "13px",
18791
18983
  fontWeight: 600
18792
18984
  }
18793
18985
  }, item.percentageAmongStudents.toFixed(2), "%"), React__default.createElement("td", {
18794
- className: styles$5["tdcolumn3"],
18986
+ className: styles$6["tdcolumn3"],
18795
18987
  style: {
18796
18988
  textAlign: "center",
18797
- color: styles$5.gray_700,
18989
+ color: styles$6.gray_700,
18798
18990
  fontSize: "13px",
18799
18991
  fontWeight: 500
18800
18992
  }
@@ -18803,7 +18995,7 @@ var GradesByTerritory = function GradesByTerritory(_ref) {
18803
18995
  }) : ""), React__default.createElement("td", {
18804
18996
  style: {
18805
18997
  textAlign: "center",
18806
- color: styles$5.gray_700,
18998
+ color: styles$6.gray_700,
18807
18999
  fontSize: "13px",
18808
19000
  fontWeight: 500
18809
19001
  }
@@ -18812,7 +19004,7 @@ var GradesByTerritory = function GradesByTerritory(_ref) {
18812
19004
  }) : ""), React__default.createElement("td", {
18813
19005
  style: {
18814
19006
  textAlign: "center",
18815
- color: styles$5.gray_700,
19007
+ color: styles$6.gray_700,
18816
19008
  fontSize: "13px",
18817
19009
  fontWeight: 500
18818
19010
  }
@@ -18825,26 +19017,26 @@ var GradesByTerritory = function GradesByTerritory(_ref) {
18825
19017
  left: item.percentageAmongStudents + "%"
18826
19018
  };
18827
19019
  return React__default.createElement("div", {
18828
- className: styles$5["contentProblem"] + " " + printStyles["avoid-break-inside"],
19020
+ className: styles$6["contentProblem"] + " " + printStyles["avoid-break-inside"],
18829
19021
  key: item.id
18830
19022
  }, React__default.createElement("div", {
18831
- className: styles$5["labelProblem"]
19023
+ className: styles$6["labelProblem"]
18832
19024
  }, React__default.createElement("span", {
18833
- className: styles$5["name"]
19025
+ className: styles$6["name"]
18834
19026
  }, item.name), React__default.createElement("div", {
18835
- className: styles$5["percent"]
19027
+ className: styles$6["percent"]
18836
19028
  }, React__default.createElement("span", null, item.percentageAmongStudents.toFixed(2), "%"), React__default.createElement("span", null, item.totalCorrectQuestions, "/", item.totalQuestions, t("problems")))), React__default.createElement("div", {
18837
- className: styles$5["slider"]
19029
+ className: styles$6["slider"]
18838
19030
  }, React__default.createElement("div", null, React__default.createElement("span", {
18839
- className: styles$5["track"],
19031
+ className: styles$6["track"],
18840
19032
  style: trackStyle
18841
19033
  }))));
18842
19034
  });
18843
19035
  };
18844
19036
  return React__default.createElement("div", {
18845
- className: "" + styles$5["wrapperProblem"]
19037
+ className: "" + styles$6["wrapperProblem"]
18846
19038
  }, React__default.createElement("div", {
18847
- className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$5["titleProblemClose"] : styles$5["titleProblem"]),
19039
+ className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$6["titleProblemClose"] : styles$6["titleProblem"]),
18848
19040
  onClick: function onClick() {
18849
19041
  return changeOpen === null || changeOpen === void 0 ? void 0 : changeOpen(isOpen ? undefined : ProblemKey.GradesByTerritory);
18850
19042
  }
@@ -18856,14 +19048,14 @@ var GradesByTerritory = function GradesByTerritory(_ref) {
18856
19048
  }
18857
19049
  }, t("grades_by_area")), isOpen ? React__default.createElement(io5.IoChevronUp, {
18858
19050
  size: 24,
18859
- color: styles$5.gray_300
19051
+ color: styles$6.gray_300
18860
19052
  }) : React__default.createElement(io5.IoChevronDown, {
18861
19053
  size: 24,
18862
- color: styles$5.gray_300
19054
+ color: styles$6.gray_300
18863
19055
  })), isOpen && React__default.createElement(React.Fragment, null, formattedData.length ? React__default.createElement("div", {
18864
- className: styles$5["tableCompareGrass"]
19056
+ className: styles$6["tableCompareGrass"]
18865
19057
  }, React__default.createElement("div", {
18866
- className: styles$5["table-responsive"]
19058
+ className: styles$6["table-responsive"]
18867
19059
  }, isMyStoryStudent && React__default.createElement(material.Table, {
18868
19060
  style: {
18869
19061
  width: "100%",
@@ -18875,7 +19067,7 @@ var GradesByTerritory = function GradesByTerritory(_ref) {
18875
19067
  },
18876
19068
  className: "" + printStyles["avoid-break-inside"]
18877
19069
  }, React__default.createElement("tr", null, React__default.createElement("th", {
18878
- className: styles$5["thcolumn1"]
19070
+ className: styles$6["thcolumn1"]
18879
19071
  }, t("categories")), React__default.createElement("th", {
18880
19072
  style: {
18881
19073
  textAlign: "center"
@@ -18893,197 +19085,40 @@ var GradesByTerritory = function GradesByTerritory(_ref) {
18893
19085
  textAlign: "center"
18894
19086
  }
18895
19087
  }, t("total_solve_time")))), React__default.createElement("tbody", null, renderTableBody(formattedData))), !isMyStoryStudent && renderCategories(formattedData))) : React__default.createElement("div", {
18896
- className: styles$5["noData"] + " " + printStyles["avoid-break-inside"]
19088
+ className: styles$6["noData"] + " " + printStyles["avoid-break-inside"]
18897
19089
  }, t("no_data"))));
18898
19090
  };
18899
19091
 
18900
- var iconWarning = function iconWarning(_ref) {
18901
- var _ref$width = _ref.width,
18902
- width = _ref$width === void 0 ? "17" : _ref$width,
18903
- _ref$height = _ref.height,
18904
- height = _ref$height === void 0 ? "16" : _ref$height,
18905
- color = _ref.color;
18906
- return React__default.createElement("svg", {
18907
- width: width,
18908
- height: height,
18909
- viewBox: "0 0 17 16",
18910
- fill: color,
18911
- xmlns: "http://www.w3.org/2000/svg"
18912
- }, React__default.createElement("path", {
18913
- d: "M14.5335 12.4712L9.20754 2.58062C8.83004 1.87937 7.82441 1.87937 7.4466 2.58062L2.12097 12.4712C2.03901 12.6235 1.99792 12.7944 2.00171 12.9672C2.00549 13.1401 2.05404 13.309 2.14259 13.4575C2.23115 13.606 2.3567 13.729 2.50698 13.8145C2.65726 13.9 2.82714 13.9451 3.00004 13.9453H13.6529C13.8259 13.9453 13.996 13.9005 14.1465 13.8151C14.2969 13.7297 14.4227 13.6067 14.5115 13.4582C14.6002 13.3096 14.6489 13.1406 14.6527 12.9676C14.6566 12.7946 14.6155 12.6236 14.5335 12.4712ZM8.32722 12.4141C8.20361 12.4141 8.08277 12.3774 7.97999 12.3087C7.87721 12.2401 7.7971 12.1424 7.7498 12.0282C7.7025 11.914 7.69012 11.7884 7.71423 11.6671C7.73835 11.5459 7.79787 11.4345 7.88528 11.3471C7.97269 11.2597 8.08405 11.2002 8.20529 11.1761C8.32653 11.152 8.4522 11.1643 8.5664 11.2116C8.6806 11.2589 8.77822 11.3391 8.84689 11.4418C8.91557 11.5446 8.95222 11.6654 8.95222 11.7891C8.95222 11.8711 8.93606 11.9524 8.90465 12.0282C8.87324 12.1041 8.8272 12.173 8.76917 12.231C8.71113 12.289 8.64223 12.3351 8.5664 12.3665C8.49057 12.3979 8.4093 12.4141 8.32722 12.4141ZM9.00597 6.12813L8.8266 9.94063C8.8266 10.0732 8.77392 10.2004 8.68015 10.2942C8.58638 10.3879 8.45921 10.4406 8.3266 10.4406C8.19399 10.4406 8.06681 10.3879 7.97305 10.2942C7.87928 10.2004 7.8266 10.0732 7.8266 9.94063L7.64722 6.12969C7.64319 6.03862 7.65754 5.94768 7.6894 5.86227C7.72127 5.77687 7.77 5.69875 7.8327 5.63259C7.8954 5.56642 7.97078 5.51355 8.05434 5.47713C8.13791 5.44072 8.22795 5.4215 8.3191 5.42063H8.32566C8.41743 5.42058 8.50826 5.43912 8.59267 5.47515C8.67708 5.51117 8.75331 5.56392 8.81677 5.63021C8.88023 5.6965 8.92961 5.77497 8.96191 5.86087C8.99421 5.94676 9.00878 6.03832 9.00472 6.13L9.00597 6.12813Z",
18914
- fill: "#DB4D4D"
18915
- }));
18916
- };
18917
-
18918
- var schema$3 = yup.object().shape({
18919
- content: yup.string().required()
18920
- });
18921
19092
  function CreateNewQuestionDialog(_ref) {
18922
- var handleCreateQuestion = _ref.handleCreateQuestion,
19093
+ var _handleCreateQuestion = _ref.handleCreateQuestion,
18923
19094
  openCreateQuestionDialog = _ref.openCreateQuestionDialog,
18924
19095
  onCloseCreateQuestion = _ref.onCloseCreateQuestion,
18925
19096
  studentTextbookId = _ref.studentTextbookId,
18926
19097
  examSessionId = _ref.examSessionId,
18927
19098
  selectedQuestion = _ref.selectedQuestion,
18928
19099
  questionOptions = _ref.questionOptions;
18929
- var _useTranslation = reactI18next.useTranslation(),
18930
- t = _useTranslation.t;
18931
- var _useState = React.useState(false),
18932
- keyboardOpen = _useState[0],
18933
- setKeyboardOpen = _useState[1];
18934
- React.useEffect(function () {
18935
- var handleResize = function handleResize() {
18936
- if (window.innerHeight < window.outerHeight) {
18937
- setKeyboardOpen(true);
18938
- } else {
18939
- setKeyboardOpen(false);
18940
- }
18941
- };
18942
- window.addEventListener("resize", handleResize);
18943
- handleResize();
18944
- return function () {
18945
- return window.removeEventListener("resize", handleResize);
18946
- };
18947
- }, []);
18948
- return React__default.createElement(material.Dialog, {
18949
- onClose: onCloseCreateQuestion,
18950
- open: openCreateQuestionDialog,
18951
- PaperProps: {
18952
- sx: {
18953
- minWidth: "363px",
18954
- overflowY: "unset",
18955
- position: "relative",
18956
- bottom: keyboardOpen ? "0" : undefined,
18957
- transition: "top 0.3s ease"
18958
- }
18959
- }
18960
- }, React__default.createElement(DialogTitle, {
18961
- id: "customized-dialog-title"
18962
- }, React__default.createElement(Typography, {
18963
- fontWeight: 700,
18964
- fontSize: "16px",
18965
- lineHeight: "19.09px",
18966
- color: "#202B37"
18967
- }, t("ask_a_question"))), React__default.createElement(IconButton, {
18968
- "aria-label": "close",
18969
- sx: {
18970
- position: "absolute",
18971
- right: 8,
18972
- top: 8,
18973
- color: function color(theme) {
18974
- return theme.palette.grey[500];
18975
- }
18976
- },
18977
- onClick: onCloseCreateQuestion
18978
- }, React__default.createElement(iconCloseDialog, null)), React__default.createElement(formik.Formik, {
18979
- initialValues: {
18980
- content: "",
18981
- questionId: (selectedQuestion === null || selectedQuestion === void 0 ? void 0 : selectedQuestion.id) || 0
18982
- },
18983
- validationSchema: schema$3,
18984
- onSubmit: function onSubmit(values) {
18985
- handleCreateQuestion(_extends({}, values, {
19100
+ var schema = yup.object().shape({
19101
+ content: yup.string().required()
19102
+ });
19103
+ var initialValues = {
19104
+ content: "",
19105
+ questionId: (selectedQuestion === null || selectedQuestion === void 0 ? void 0 : selectedQuestion.id) || 0
19106
+ };
19107
+ return React__default.createElement(CommonCreateNewQuestionDialog, {
19108
+ handleCreateQuestion: function handleCreateQuestion(values) {
19109
+ return _handleCreateQuestion(_extends({}, values, {
18986
19110
  examSessionId: examSessionId,
18987
19111
  studentTextbookId: studentTextbookId
18988
19112
  }));
18989
- }
18990
- }, function (_ref2) {
18991
- var values = _ref2.values,
18992
- errors = _ref2.errors,
18993
- setFieldValue = _ref2.setFieldValue;
18994
- return React__default.createElement(formik.Form, null, React__default.createElement(DialogContent, {
18995
- sx: {
18996
- padding: 0,
18997
- overflowY: "auto"
18998
- }
18999
- }, React__default.createElement(material.Box, {
19000
- display: "flex",
19001
- flexDirection: "column",
19002
- gap: "8px",
19003
- padding: "24px 24px 40px 24px"
19004
- }, React__default.createElement(material.Stack, null, React__default.createElement("label", {
19005
- htmlFor: "questions",
19006
- className: styles["form-label"] + " " + styles$5["form-label-dialog"]
19007
- }, t("questions_to_ask")), React__default.createElement(formik.Field, {
19008
- id: "questions",
19009
- name: "questionId",
19010
- render: function render(_ref3) {
19011
- var field = _ref3.field;
19012
- return React__default.createElement(CustomSelect, Object.assign({}, field, {
19013
- id: "questions",
19014
- menuPlacement: "bottom",
19015
- options: questionOptions,
19016
- onChange: function onChange(_ref4) {
19017
- var value = _ref4.value;
19018
- return setFieldValue("questionId", value);
19019
- },
19020
- isClearable: false
19021
- }));
19022
- }
19023
- })), React__default.createElement(material.Stack, null, React__default.createElement("label", {
19024
- htmlFor: "content-question",
19025
- className: styles["form-label"] + " " + styles$5["form-label-dialog"]
19026
- }, t("question_content")), React__default.createElement(material.Box, {
19027
- position: "relative",
19028
- display: "flex",
19029
- flexDirection: "row",
19030
- alignItems: "center"
19031
- }, React__default.createElement(formik.Field, {
19032
- as: "textarea",
19033
- rows: 3,
19034
- id: "content-question",
19035
- style: {
19036
- paddingRight: "40px"
19037
- },
19038
- name: "content",
19039
- placeholder: t("the_problem_is_difficult"),
19040
- className: styles["form-control"]
19041
- }), (errors === null || errors === void 0 ? void 0 : errors.content) && React__default.createElement(material.Box, {
19042
- position: "absolute",
19043
- right: 0,
19044
- padding: "0 12px",
19045
- display: "flex",
19046
- alignItems: "center"
19047
- }, React__default.createElement(iconWarning, null))), React__default.createElement(material.Box, {
19048
- marginBottom: "4px"
19049
- }), React__default.createElement(Typography, {
19050
- fontWeight: 500,
19051
- fontSize: "10px",
19052
- lineHeight: "11.93px",
19053
- color: !(errors !== null && errors !== void 0 && errors.content) ? "#97A1AF" : styles$5.red_900
19054
- }, !(errors !== null && errors !== void 0 && errors.content) ? t("your_questions_will_be_sent_to_the_counselor") : t("please_enter_your_question"))))), React__default.createElement(DialogActions, {
19055
- sx: {
19056
- display: "flex",
19057
- justifyContent: "space-between",
19058
- alignItems: "center",
19059
- padding: "12px",
19060
- borderTop: "1px solid #CED2DA"
19061
- }
19062
- }, React__default.createElement(MButton, {
19063
- className: styles$5["btn-cancel"],
19064
- onClick: onCloseCreateQuestion
19065
- }, React__default.createElement(Typography, {
19066
- sx: {
19067
- color: styles.dark + " !important"
19068
- },
19069
- fontWeight: 700,
19070
- fontSize: "14px",
19071
- lineHeight: "16.71px"
19072
- }, t("cancel"))), React__default.createElement(MButton, {
19073
- variant: "contained",
19074
- sx: {
19075
- bgcolor: styles.dark
19076
- },
19077
- className: styles$5["btn-register"],
19078
- type: "submit",
19079
- disabled: !values.content.trim().length
19080
- }, React__default.createElement(Typography, {
19081
- fontWeight: 700,
19082
- fontSize: "14px",
19083
- lineHeight: "16.71px",
19084
- color: "#FFFFFF"
19085
- }, t("registration")))));
19086
- }));
19113
+ },
19114
+ nameContent: "content",
19115
+ nameQuestion: "questionId",
19116
+ openDialog: openCreateQuestionDialog,
19117
+ onClose: onCloseCreateQuestion,
19118
+ options: questionOptions,
19119
+ schema: schema,
19120
+ initialValues: initialValues
19121
+ });
19087
19122
  }
19088
19123
 
19089
19124
  var _excluded$8 = ["children", "value", "index"];
@@ -19130,18 +19165,18 @@ var TimeOrderChart = function TimeOrderChart(_ref) {
19130
19165
  color: "#414E62"
19131
19166
  }
19132
19167
  }, t("article_number"), " ", timelyOrderQuestion.article), React__default.createElement("div", {
19133
- className: styles$5["compareChart"] + " " + printStyles["avoid-break-inside"]
19168
+ className: styles$6["compareChart"] + " " + printStyles["avoid-break-inside"]
19134
19169
  }, React__default.createElement("div", {
19135
- className: "" + styles$5["prevChart"]
19170
+ className: "" + styles$6["prevChart"]
19136
19171
  }), React__default.createElement("div", {
19137
- className: styles$5["chart"] + " sr-line-chart"
19172
+ className: styles$6["chart"] + " sr-line-chart"
19138
19173
  }, React__default.createElement("div", null, React__default.createElement(ReactApexChart, {
19139
19174
  ref: chartRef,
19140
19175
  height: 389,
19141
19176
  options: chartOptions,
19142
19177
  series: series
19143
19178
  }))), React__default.createElement("div", {
19144
- className: "" + styles$5["nextChart"]
19179
+ className: "" + styles$6["nextChart"]
19145
19180
  })));
19146
19181
  };
19147
19182
 
@@ -19180,7 +19215,7 @@ var TextbookAnswerItem = function TextbookAnswerItem(_ref) {
19180
19215
  },
19181
19216
  key: data.id
19182
19217
  }, React__default.createElement("div", {
19183
- className: styles$5["myAnswerItem"] + " " + styles["noGutters"]
19218
+ className: styles$6["myAnswerItem"] + " " + styles["noGutters"]
19184
19219
  }, React__default.createElement("div", {
19185
19220
  className: styles["custom-col-2"],
19186
19221
  style: {
@@ -19190,7 +19225,7 @@ var TextbookAnswerItem = function TextbookAnswerItem(_ref) {
19190
19225
  padding: "5px 8px"
19191
19226
  }
19192
19227
  }, data.isStar ? React__default.createElement(iconStarQuestion, null) : React__default.createElement(iconNoStarQuestion, null), React__default.createElement("span", {
19193
- className: styles$5["questionOrder"]
19228
+ className: styles$6["questionOrder"]
19194
19229
  }, t("number_question", {
19195
19230
  number: data.questionOrder + 1
19196
19231
  }))), React__default.createElement("div", {
@@ -19201,11 +19236,11 @@ var TextbookAnswerItem = function TextbookAnswerItem(_ref) {
19201
19236
  gap: "4px"
19202
19237
  }
19203
19238
  }, data.isCorrect && (!!((_data$selectedAnswers = data.selectedAnswers) !== null && _data$selectedAnswers !== void 0 && _data$selectedAnswers.length) || !!((_data$textualAnswers = data.textualAnswers) !== null && _data$textualAnswers !== void 0 && _data$textualAnswers.length)) && React__default.createElement(React.Fragment, null, React__default.createElement(iconCorrectAnswer, null), React__default.createElement("span", {
19204
- className: styles$5["answerCorrect"]
19239
+ className: styles$6["answerCorrect"]
19205
19240
  }, t("correct"))), !data.isCorrect && (!!((_data$selectedAnswers2 = data.selectedAnswers) !== null && _data$selectedAnswers2 !== void 0 && _data$selectedAnswers2.length) || !!((_data$textualAnswers2 = data.textualAnswers) !== null && _data$textualAnswers2 !== void 0 && _data$textualAnswers2.length)) && React__default.createElement(React.Fragment, null, React__default.createElement(iconCorrectAnswer$1, null), React__default.createElement("span", {
19206
- className: styles$5["answerIncorrect"]
19241
+ className: styles$6["answerIncorrect"]
19207
19242
  }, t("incorrect"))), !((_data$selectedAnswers3 = data.selectedAnswers) !== null && _data$selectedAnswers3 !== void 0 && _data$selectedAnswers3.length) && !((_data$textualAnswers3 = data.textualAnswers) !== null && _data$textualAnswers3 !== void 0 && _data$textualAnswers3.length) && React__default.createElement(React.Fragment, null, React__default.createElement(iconNoGrass, null), React__default.createElement("span", {
19208
- className: styles$5["answerNograss"]
19243
+ className: styles$6["answerNograss"]
19209
19244
  }, t("no_solution")))), React__default.createElement("div", {
19210
19245
  className: styles["custom-col-2"],
19211
19246
  style: {
@@ -19216,12 +19251,12 @@ var TextbookAnswerItem = function TextbookAnswerItem(_ref) {
19216
19251
  style: {
19217
19252
  margin: 0
19218
19253
  },
19219
- className: styles$5["answer-response"] + " " + styles$5["answer-response-" + data.answerResponseSignal]
19254
+ className: styles$6["answer-response"] + " " + styles$6["answer-response-" + data.answerResponseSignal]
19220
19255
  }, formatTimeSecond(Math.round(data.duration), t)) : React__default.createElement("p", {
19221
19256
  style: {
19222
19257
  margin: 0
19223
19258
  },
19224
- className: styles$5["answerNoTime"]
19259
+ className: styles$6["answerNoTime"]
19225
19260
  }, t("no_time"))), React__default.createElement("div", {
19226
19261
  className: styles["custom-col-2"],
19227
19262
  style: {
@@ -19232,13 +19267,13 @@ var TextbookAnswerItem = function TextbookAnswerItem(_ref) {
19232
19267
  style: {
19233
19268
  margin: 0
19234
19269
  },
19235
- className: styles$5["answer-response"] + " " + styles$5["answer-response-" + data.answerResponseSignal]
19270
+ className: styles$6["answer-response"] + " " + styles$6["answer-response-" + data.answerResponseSignal]
19236
19271
  }, formatTimeDiff(data.duration, data.topDuration, t)) : React__default.createElement("p", {
19237
19272
  style: {
19238
19273
  margin: 0,
19239
19274
  textAlign: "center"
19240
19275
  },
19241
- className: styles$5["answerNoTime"]
19276
+ className: styles$6["answerNoTime"]
19242
19277
  }, "-")), React__default.createElement("div", {
19243
19278
  className: styles["custom-col-2"],
19244
19279
  style: {
@@ -19249,12 +19284,12 @@ var TextbookAnswerItem = function TextbookAnswerItem(_ref) {
19249
19284
  style: {
19250
19285
  margin: 0
19251
19286
  },
19252
- className: styles$5["answer-response"] + " " + getOverallColorClassName(data.overallCorrectRate, styles$5)
19287
+ className: styles$6["answer-response"] + " " + getOverallColorClassName(data.overallCorrectRate, styles$6)
19253
19288
  }, data.overallCorrectRate.toFixed(2) + "%") : React__default.createElement("p", {
19254
19289
  style: {
19255
19290
  margin: 0
19256
19291
  },
19257
- className: styles$5["answerNoTime"]
19292
+ className: styles$6["answerNoTime"]
19258
19293
  }, t("no_time"))), isStudent && !isLearningSpace && React__default.createElement(material.Box, {
19259
19294
  className: styles["custom-col-2"]
19260
19295
  }, openContextMenu ? React__default.createElement(material.ClickAwayListener, {
@@ -19326,7 +19361,7 @@ var TextbookMyAnswer = function TextbookMyAnswer(_ref) {
19326
19361
  }));
19327
19362
  };
19328
19363
  return React__default.createElement("div", {
19329
- className: "" + styles$5["myanswer"]
19364
+ className: "" + styles$6["myanswer"]
19330
19365
  }, formattedData && formattedData.length > 0 && formattedData.map(function (item) {
19331
19366
  var _item$categories;
19332
19367
  return React__default.createElement("div", {
@@ -19337,7 +19372,7 @@ var TextbookMyAnswer = function TextbookMyAnswer(_ref) {
19337
19372
  bgcolor: "#F9FAFB",
19338
19373
  flexDirection: "row",
19339
19374
  padding: "12px",
19340
- className: styles$5["myAnswerItem"] + " " + styles["noGutters"]
19375
+ className: styles$6["myAnswerItem"] + " " + styles["noGutters"]
19341
19376
  }, React__default.createElement("div", {
19342
19377
  className: styles["custom-col-2"],
19343
19378
  style: {
@@ -19416,7 +19451,7 @@ var TextbookMyAnswer = function TextbookMyAnswer(_ref) {
19416
19451
  alignItems: "center"
19417
19452
  }
19418
19453
  }, t("total_correct_rate")))), React__default.createElement("div", {
19419
- className: styles$5["titleMyAnswer2"]
19454
+ className: styles$6["titleMyAnswer2"]
19420
19455
  }, React__default.createElement(material.Typography, {
19421
19456
  sx: {
19422
19457
  color: "#97A1AF",
@@ -19431,7 +19466,7 @@ var TextbookMyAnswer = function TextbookMyAnswer(_ref) {
19431
19466
  }, (_item$categories = item.categories) === null || _item$categories === void 0 ? void 0 : _item$categories.map(function (i) {
19432
19467
  return i.name;
19433
19468
  }).join(" / ")))), React__default.createElement("div", {
19434
- className: styles$5["contentMyAnswer"]
19469
+ className: styles$6["contentMyAnswer"]
19435
19470
  }, React__default.createElement(ListView, {
19436
19471
  data: item.questions,
19437
19472
  render: function render(question, index) {
@@ -19461,24 +19496,24 @@ var TextbookGradesByTerritory = function TextbookGradesByTerritory(_ref) {
19461
19496
  borderBottom: index < (data === null || data === void 0 ? void 0 : data.length) - 1 ? "1px solid #e4e7ec" : undefined
19462
19497
  }
19463
19498
  }, React__default.createElement("td", {
19464
- className: styles$5["tdcolumn1"],
19499
+ className: styles$6["tdcolumn1"],
19465
19500
  style: {
19466
- color: styles$5.gray_900,
19501
+ color: styles$6.gray_900,
19467
19502
  fontSize: "13px",
19468
19503
  fontWeight: 600
19469
19504
  }
19470
19505
  }, item.name), React__default.createElement("td", {
19471
19506
  style: {
19472
19507
  textAlign: "center",
19473
- color: styles$5.gray_900,
19508
+ color: styles$6.gray_900,
19474
19509
  fontSize: "13px",
19475
19510
  fontWeight: 600
19476
19511
  }
19477
19512
  }, item.percentageAmongStudents.toFixed(2), "%"), React__default.createElement("td", {
19478
- className: styles$5["tdcolumn3"],
19513
+ className: styles$6["tdcolumn3"],
19479
19514
  style: {
19480
19515
  textAlign: "center",
19481
- color: styles$5.gray_700,
19516
+ color: styles$6.gray_700,
19482
19517
  fontSize: "13px",
19483
19518
  fontWeight: 500
19484
19519
  }
@@ -19487,7 +19522,7 @@ var TextbookGradesByTerritory = function TextbookGradesByTerritory(_ref) {
19487
19522
  }) : ""), React__default.createElement("td", {
19488
19523
  style: {
19489
19524
  textAlign: "center",
19490
- color: styles$5.gray_700,
19525
+ color: styles$6.gray_700,
19491
19526
  fontSize: "13px",
19492
19527
  fontWeight: 500
19493
19528
  }
@@ -19496,7 +19531,7 @@ var TextbookGradesByTerritory = function TextbookGradesByTerritory(_ref) {
19496
19531
  }) : ""), React__default.createElement("td", {
19497
19532
  style: {
19498
19533
  textAlign: "center",
19499
- color: styles$5.gray_700,
19534
+ color: styles$6.gray_700,
19500
19535
  fontSize: "13px",
19501
19536
  fontWeight: 500
19502
19537
  }
@@ -19510,26 +19545,26 @@ var TextbookGradesByTerritory = function TextbookGradesByTerritory(_ref) {
19510
19545
  left: item.percentageAmongStudents + "%"
19511
19546
  };
19512
19547
  return React__default.createElement("div", {
19513
- className: styles$5["contentProblem"] + " " + printStyles["avoid-break-inside"],
19548
+ className: styles$6["contentProblem"] + " " + printStyles["avoid-break-inside"],
19514
19549
  key: item.id
19515
19550
  }, React__default.createElement("div", {
19516
- className: styles$5["labelProblem"]
19551
+ className: styles$6["labelProblem"]
19517
19552
  }, React__default.createElement("span", {
19518
- className: styles$5["name"]
19553
+ className: styles$6["name"]
19519
19554
  }, item.name), React__default.createElement("div", {
19520
- className: styles$5["percent"]
19555
+ className: styles$6["percent"]
19521
19556
  }, React__default.createElement("span", null, (_item$percentageAmong = item.percentageAmongStudents) === null || _item$percentageAmong === void 0 ? void 0 : _item$percentageAmong.toFixed(2), "%"), React__default.createElement("span", null, item.totalCorrectQuestions, "/", item.totalQuestions, t("problems")))), React__default.createElement("div", {
19522
- className: styles$5["slider"]
19557
+ className: styles$6["slider"]
19523
19558
  }, React__default.createElement("div", null, React__default.createElement("span", {
19524
- className: styles$5["track"],
19559
+ className: styles$6["track"],
19525
19560
  style: trackStyle
19526
19561
  }))));
19527
19562
  });
19528
19563
  };
19529
19564
  return React__default.createElement("div", {
19530
- className: "" + styles$5["wrapperProblem"]
19565
+ className: "" + styles$6["wrapperProblem"]
19531
19566
  }, React__default.createElement("div", {
19532
- className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$5["titleProblemClose"] : styles$5["titleProblem"]),
19567
+ className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$6["titleProblemClose"] : styles$6["titleProblem"]),
19533
19568
  onClick: function onClick() {
19534
19569
  return changeOpen === null || changeOpen === void 0 ? void 0 : changeOpen(isOpen ? undefined : ProblemKey.GradesByTerritory);
19535
19570
  }
@@ -19541,14 +19576,14 @@ var TextbookGradesByTerritory = function TextbookGradesByTerritory(_ref) {
19541
19576
  }
19542
19577
  }, t("grades_by_area")), isOpen ? React__default.createElement(io5.IoChevronUp, {
19543
19578
  size: 24,
19544
- color: styles$5.gray_300
19579
+ color: styles$6.gray_300
19545
19580
  }) : React__default.createElement(io5.IoChevronDown, {
19546
19581
  size: 24,
19547
- color: styles$5.gray_300
19582
+ color: styles$6.gray_300
19548
19583
  })), isOpen && React__default.createElement(React.Fragment, null, formattedData.length ? React__default.createElement("div", {
19549
- className: styles$5["tableCompareGrass"]
19584
+ className: styles$6["tableCompareGrass"]
19550
19585
  }, React__default.createElement("div", {
19551
- className: styles$5["table-responsive"]
19586
+ className: styles$6["table-responsive"]
19552
19587
  }, isMyStoryStudent && React__default.createElement(material.Table, {
19553
19588
  style: {
19554
19589
  width: "100%",
@@ -19560,7 +19595,7 @@ var TextbookGradesByTerritory = function TextbookGradesByTerritory(_ref) {
19560
19595
  },
19561
19596
  className: "" + printStyles["avoid-break-inside"]
19562
19597
  }, React__default.createElement("tr", null, React__default.createElement("th", {
19563
- className: styles$5["thcolumn1"]
19598
+ className: styles$6["thcolumn1"]
19564
19599
  }, t("categories")), React__default.createElement("th", {
19565
19600
  style: {
19566
19601
  textAlign: "center"
@@ -19578,7 +19613,7 @@ var TextbookGradesByTerritory = function TextbookGradesByTerritory(_ref) {
19578
19613
  textAlign: "center"
19579
19614
  }
19580
19615
  }, t("total_solve_time")))), React__default.createElement("tbody", null, renderTableBody(formattedData))), !isMyStoryStudent && renderCategories(formattedData))) : React__default.createElement("div", {
19581
- className: styles$5["noData"] + " " + printStyles["avoid-break-inside"]
19616
+ className: styles$6["noData"] + " " + printStyles["avoid-break-inside"]
19582
19617
  }, t("no_data"))));
19583
19618
  };
19584
19619
 
@@ -19651,39 +19686,39 @@ var TextbookVulnerable = function TextbookVulnerable(_ref) {
19651
19686
  borderBottom: index < (data === null || data === void 0 ? void 0 : data.length) - 1 ? "1px solid #e4e7ec" : undefined
19652
19687
  }
19653
19688
  }, React__default.createElement("td", {
19654
- className: styles$5["tdcolumn1"],
19689
+ className: styles$6["tdcolumn1"],
19655
19690
  style: {
19656
- color: styles$5.gray_900,
19691
+ color: styles$6.gray_900,
19657
19692
  fontSize: "13px",
19658
19693
  fontWeight: 600
19659
19694
  }
19660
19695
  }, React__default.createElement(material.Typography, {
19661
- color: styles$5.gray_900,
19696
+ color: styles$6.gray_900,
19662
19697
  fontSize: "13px",
19663
19698
  fontWeight: 600
19664
19699
  }, t("problem") + " " + (item.questionOrder + 1))), React__default.createElement("td", {
19665
19700
  style: {
19666
19701
  textAlign: "center",
19667
- color: styles$5.dark,
19702
+ color: styles$6.dark,
19668
19703
  fontSize: "13px",
19669
19704
  fontWeight: 600
19670
19705
  }
19671
19706
  }, item.overallCorrectRate.toFixed(2) ? item.overallCorrectRate.toFixed(2) + "%" : ""), React__default.createElement("td", {
19672
- className: styles$5["tdcolumn3"],
19707
+ className: styles$6["tdcolumn3"],
19673
19708
  style: {
19674
- color: styles$5.red_900,
19709
+ color: styles$6.red_900,
19675
19710
  fontSize: "13px",
19676
19711
  fontWeight: 500
19677
19712
  }
19678
19713
  }, typeof item.selectedAnswers === "string" ? renderAnswer(item.questionAnswerType, item.selectedAnswers) : renderTextbookAnswer(item.questionAnswerType, item.selectedAnswers, item.textualAnswers)), React__default.createElement("td", {
19679
19714
  style: {
19680
19715
  textAlign: "center",
19681
- color: styles$5.gray_700
19716
+ color: styles$6.gray_700
19682
19717
  }
19683
19718
  }, typeof item.correctAnswers === "string" ? renderAnswer(item.questionAnswerType, item.correctAnswers) : renderTextbookAnswer(item.questionAnswerType, item.correctAnswers, item.correctTextualAnswers, true)), React__default.createElement("td", {
19684
19719
  style: {
19685
19720
  textAlign: "center",
19686
- color: styles$5.gray_700
19721
+ color: styles$6.gray_700
19687
19722
  }
19688
19723
  }, item.categories ? item.categories.map(function (i) {
19689
19724
  return i.name;
@@ -19695,31 +19730,31 @@ var TextbookVulnerable = function TextbookVulnerable(_ref) {
19695
19730
  return React__default.createElement(material.Grid, {
19696
19731
  container: true,
19697
19732
  flexWrap: "nowrap",
19698
- className: styles$5["content"] + " " + printStyles["avoid-break-inside"],
19733
+ className: styles$6["content"] + " " + printStyles["avoid-break-inside"],
19699
19734
  key: question.id
19700
19735
  }, React__default.createElement(material.Grid, {
19701
19736
  item: true,
19702
19737
  xs: 1.5,
19703
19738
  minWidth: "120px",
19704
- className: styles$5["contentColumn1"]
19739
+ className: styles$6["contentColumn1"]
19705
19740
  }, React__default.createElement("div", null, React__default.createElement("span", {
19706
- className: styles$5["span1"]
19741
+ className: styles$6["span1"]
19707
19742
  }, t("problem_number")), React__default.createElement("span", {
19708
- className: styles$5["span2"]
19743
+ className: styles$6["span2"]
19709
19744
  }, t("number_question", {
19710
19745
  number: question.questionOrder + 1
19711
19746
  })))), React__default.createElement(material.Grid, {
19712
19747
  item: true,
19713
19748
  xs: 10.5,
19714
- className: styles$5["contentColumn2"]
19749
+ className: styles$6["contentColumn2"]
19715
19750
  }, React__default.createElement("div", null, React__default.createElement("span", {
19716
- className: styles$5["span1"]
19751
+ className: styles$6["span1"]
19717
19752
  }, t("total_correct_rate")), React__default.createElement("span", {
19718
- className: styles$5["span2"]
19753
+ className: styles$6["span2"]
19719
19754
  }, t("my_wrong_answer"))), React__default.createElement("div", null, React__default.createElement("span", {
19720
- className: styles$5["overallCorrectRate"]
19755
+ className: styles$6["overallCorrectRate"]
19721
19756
  }, question.overallCorrectRate.toFixed(2), "%"), React__default.createElement("span", {
19722
- className: styles$5["answer"]
19757
+ className: styles$6["answer"]
19723
19758
  }, typeof question.selectedAnswers === "string" ? renderAnswer(question.questionAnswerType, question.selectedAnswers) : renderTextbookAnswer(question.questionAnswerType, question.selectedAnswers, question.textualAnswers), " ", t("answer"), " ", typeof question.correctAnswers === "string" ? renderAnswer(question.questionAnswerType, question.correctAnswers) : renderTextbookAnswer(question.questionAnswerType, question.correctAnswers, question.correctTextualAnswers, true)))));
19724
19759
  });
19725
19760
  };
@@ -19727,9 +19762,9 @@ var TextbookVulnerable = function TextbookVulnerable(_ref) {
19727
19762
  changeOpen === null || changeOpen === void 0 ? void 0 : changeOpen(isOpen ? undefined : keyOpen);
19728
19763
  };
19729
19764
  return React__default.createElement("div", {
19730
- className: "" + styles$5["wrapperProblem"]
19765
+ className: "" + styles$6["wrapperProblem"]
19731
19766
  }, React__default.createElement("div", {
19732
- className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$5["titleProblemClose"] : styles$5["titleProblem"]),
19767
+ className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$6["titleProblemClose"] : styles$6["titleProblem"]),
19733
19768
  onClick: handleToggle
19734
19769
  }, React__default.createElement(material.Stack, {
19735
19770
  flexDirection: "row",
@@ -19743,20 +19778,20 @@ var TextbookVulnerable = function TextbookVulnerable(_ref) {
19743
19778
  }
19744
19779
  }, t("issues_vulnerable")), React__default.createElement(material.Typography, {
19745
19780
  sx: {
19746
- color: styles$5.gray_300,
19781
+ color: styles$6.gray_300,
19747
19782
  fontSize: "11px",
19748
19783
  fontWeight: 500
19749
19784
  }
19750
19785
  }, t("vulnerable_detail"))), isOpen ? React__default.createElement(io5.IoChevronUp, {
19751
19786
  size: 24,
19752
- color: styles$5.gray_300
19787
+ color: styles$6.gray_300
19753
19788
  }) : React__default.createElement(io5.IoChevronDown, {
19754
19789
  size: 24,
19755
- color: styles$5.gray_300
19790
+ color: styles$6.gray_300
19756
19791
  })), isOpen && React__default.createElement(React.Fragment, null, incorrectQuestions !== null && incorrectQuestions !== void 0 && incorrectQuestions.length ? React__default.createElement("div", {
19757
- className: styles$5["tableCompareGrass"]
19792
+ className: styles$6["tableCompareGrass"]
19758
19793
  }, React__default.createElement("div", {
19759
- className: styles$5["table-responsive"]
19794
+ className: styles$6["table-responsive"]
19760
19795
  }, isMyStoryStudent && React__default.createElement(material.Table, {
19761
19796
  style: {
19762
19797
  width: "100%",
@@ -19768,7 +19803,7 @@ var TextbookVulnerable = function TextbookVulnerable(_ref) {
19768
19803
  },
19769
19804
  className: "" + printStyles["avoid-break-inside"]
19770
19805
  }, React__default.createElement("tr", null, React__default.createElement("th", {
19771
- className: styles$5["thcolumn1"]
19806
+ className: styles$6["thcolumn1"]
19772
19807
  }, t("problem_number")), React__default.createElement("th", {
19773
19808
  style: {
19774
19809
  textAlign: "center"
@@ -19786,7 +19821,7 @@ var TextbookVulnerable = function TextbookVulnerable(_ref) {
19786
19821
  textAlign: "center"
19787
19822
  }
19788
19823
  }, t("_category")))), React__default.createElement("tbody", null, renderTableBody(incorrectQuestions))), !isMyStoryStudent && renderQuestions(incorrectQuestions))) : React__default.createElement("div", {
19789
- className: styles$5["noData"] + " " + printStyles["avoid-break-inside"]
19824
+ className: styles$6["noData"] + " " + printStyles["avoid-break-inside"]
19790
19825
  }, t("no_data"))));
19791
19826
  };
19792
19827
 
@@ -19806,37 +19841,37 @@ var TextbookTrickyProblem = function TextbookTrickyProblem(_ref) {
19806
19841
  });
19807
19842
  var renderProblems = function renderProblems() {
19808
19843
  return React__default.createElement(React.Fragment, null, React__default.createElement("div", {
19809
- className: styles$5["titleTrickyProblem"] + " " + printStyles["avoid-break-inside"]
19844
+ className: styles$6["titleTrickyProblem"] + " " + printStyles["avoid-break-inside"]
19810
19845
  }, React__default.createElement(iconX, null), React__default.createElement("span", null, t("incorrect_problem_among_the_starred_problems"))), React__default.createElement("div", {
19811
- className: styles$5["wrongQuestions"] + " " + printStyles["avoid-break-inside"]
19846
+ className: styles$6["wrongQuestions"] + " " + printStyles["avoid-break-inside"]
19812
19847
  }, !!(inCorrectQuestions !== null && inCorrectQuestions !== void 0 && inCorrectQuestions.length) && (inCorrectQuestions === null || inCorrectQuestions === void 0 ? void 0 : inCorrectQuestions.map(function (question) {
19813
19848
  return React__default.createElement("span", {
19814
19849
  key: question.id,
19815
- className: styles$5["question"]
19850
+ className: styles$6["question"]
19816
19851
  }, t("number_question", {
19817
19852
  number: question.questionOrder + 1
19818
19853
  }));
19819
19854
  })), !(data !== null && data !== void 0 && data.studentQuestionResults.length) && React__default.createElement("div", {
19820
- className: styles$5["noData"]
19855
+ className: styles$6["noData"]
19821
19856
  }, t("no_data"))), React__default.createElement("div", {
19822
- className: styles$5["titleTrickyProblem"] + " " + printStyles["avoid-break-inside"]
19857
+ className: styles$6["titleTrickyProblem"] + " " + printStyles["avoid-break-inside"]
19823
19858
  }, React__default.createElement(iconAssignedQuestions, null), React__default.createElement("span", null, t("correct_problem_among_the_starred_problems"))), React__default.createElement("div", {
19824
- className: styles$5["assignedQuestions"] + " " + printStyles["avoid-break-inside"]
19859
+ className: styles$6["assignedQuestions"] + " " + printStyles["avoid-break-inside"]
19825
19860
  }, !!(correctQuestions !== null && correctQuestions !== void 0 && correctQuestions.length) && (correctQuestions === null || correctQuestions === void 0 ? void 0 : correctQuestions.map(function (question) {
19826
19861
  return React__default.createElement("div", {
19827
19862
  key: question.id,
19828
- className: styles$5["question"]
19863
+ className: styles$6["question"]
19829
19864
  }, t("number_question", {
19830
19865
  number: question.questionOrder + 1
19831
19866
  }));
19832
19867
  })), !(data !== null && data !== void 0 && data.studentQuestionResults.length) && React__default.createElement("div", {
19833
- className: styles$5["noData"]
19868
+ className: styles$6["noData"]
19834
19869
  }, t("no_data"))));
19835
19870
  };
19836
19871
  return React__default.createElement("div", {
19837
- className: "" + styles$5["wrapperProblem"]
19872
+ className: "" + styles$6["wrapperProblem"]
19838
19873
  }, React__default.createElement("div", {
19839
- className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$5["titleProblemClose"] : styles$5["titleProblem"]),
19874
+ className: printStyles["avoid-break-inside"] + " " + (!isOpen ? styles$6["titleProblemClose"] : styles$6["titleProblem"]),
19840
19875
  onClick: function onClick() {
19841
19876
  return changeOpen === null || changeOpen === void 0 ? void 0 : changeOpen(isOpen ? undefined : keyOpen);
19842
19877
  }
@@ -19848,10 +19883,10 @@ var TextbookTrickyProblem = function TextbookTrickyProblem(_ref) {
19848
19883
  }
19849
19884
  }, t("tricky_problems")), isOpen ? React__default.createElement(io5.IoChevronUp, {
19850
19885
  size: 24,
19851
- color: styles$5.gray_300
19886
+ color: styles$6.gray_300
19852
19887
  }) : React__default.createElement(io5.IoChevronDown, {
19853
19888
  size: 24,
19854
- color: styles$5.gray_300
19889
+ color: styles$6.gray_300
19855
19890
  })), isOpen && React__default.createElement(React.Fragment, null, renderProblems()));
19856
19891
  };
19857
19892
 
@@ -20576,7 +20611,7 @@ var useExamResultData = function useExamResultData(props) {
20576
20611
  }
20577
20612
  }
20578
20613
  }),
20579
- colors: [styles$5.dark, styles$5.purple_900],
20614
+ colors: [styles$6.dark, styles$6.purple_900],
20580
20615
  xaxis: _extends({}, DEFAULT_LINE_CHART_OPTIONS.xaxis, {
20581
20616
  categories: ["s"].concat(Array.from({
20582
20617
  length: questionLength
@@ -21587,18 +21622,18 @@ var ExamResultV2 = function ExamResultV2(props) {
21587
21622
  value: selected,
21588
21623
  index: 1
21589
21624
  }, React__default.createElement("div", {
21590
- className: styles$5["compareChart"]
21625
+ className: styles$6["compareChart"]
21591
21626
  }, React__default.createElement("div", {
21592
- className: styles$5["prevChart"] + " " + (dataChartIndex > 0 && "pointer"),
21627
+ className: styles$6["prevChart"] + " " + (dataChartIndex > 0 && "pointer"),
21593
21628
  onClick: handlePrevChart
21594
21629
  }, React__default.createElement(iconBtnPrevChart, null)), React__default.createElement("div", {
21595
- className: styles$5["chart"] + " sr-line-chart"
21630
+ className: styles$6["chart"] + " sr-line-chart"
21596
21631
  }, React__default.createElement("div", null, React__default.createElement(ReactApexChart, {
21597
21632
  height: 389,
21598
21633
  options: chartOptions,
21599
21634
  series: series
21600
21635
  }))), React__default.createElement("div", {
21601
- className: styles$5["nextChart"] + " " + (dataChartIndex < timelyOrderQuestions.length - 1 && "pointer"),
21636
+ className: styles$6["nextChart"] + " " + (dataChartIndex < timelyOrderQuestions.length - 1 && "pointer"),
21602
21637
  onClick: handleNextChart
21603
21638
  }, React__default.createElement(iconBtnNextChart, null)))), React__default.createElement(CustomTabPanel, {
21604
21639
  value: selected,
@@ -21792,13 +21827,13 @@ var LoadingDots = function LoadingDots(_ref) {
21792
21827
  color: "#FFF",
21793
21828
  fontSize: 20
21794
21829
  }, text), React__default.createElement("div", {
21795
- className: styles$5["loader"]
21830
+ className: styles$6["loader"]
21796
21831
  }, React__default.createElement("div", {
21797
- className: styles$5["dot"]
21832
+ className: styles$6["dot"]
21798
21833
  }), React__default.createElement("div", {
21799
- className: styles$5["dot"]
21834
+ className: styles$6["dot"]
21800
21835
  }), React__default.createElement("div", {
21801
- className: styles$5["dot"]
21836
+ className: styles$6["dot"]
21802
21837
  })));
21803
21838
  };
21804
21839
 
@@ -22640,7 +22675,7 @@ var usePreparedExam = function usePreparedExam(_ref) {
22640
22675
  };
22641
22676
  };
22642
22677
 
22643
- var styles$6 = {"drawer":"_1k4kj","open":"_IB2-g","drawer-overlay":"_xnHGE","drawer-header":"_1gLOh","drawer-form":"_2pLGg","dropdown-content-academy":"_1rR7s","dropdown-change":"_1Hcs4","btn-register":"_37IIN","btn-cancel":"_KDkNh","dropdown-academy-item":"_1-srV","dropdown-content-language":"_88rAE","dropdown-item-language":"_2jjUW","dropdown-item-language-active":"_27lik","item-address":"_tGib4","item-logout":"_1MXIb","title-address":"_A_I15","image-academy":"_3zxbi","slick-dots":"_VlpW7","slick-active":"_1zzu9","slider-container":"_1lCoM","button":"__sLSD","variable-width":"_1AnqW","slick-slide":"_3ZJaN","center":"_jUOZF","slick-center":"_35s6t","content":"_1dQdx","image":"_1feWs","slick-loading":"_FchLZ","slick-slider":"_1T7zW","slick-thumb":"_o2Tkt","slides":"_1FY2k","slick-next":"_23Pi9","slick-prev":"_2g2iD","heroBanner_qdFl":"_2y7lQ","buttons_AeoN":"_KMW2P","mdxPageWrapper_j9I6":"_3dqhE","collapseSidebarButton_PEFL":"_24wBH","expandButton_TmdG":"_2LXBj","announcementBarClose_gvF7":"_32uEE","announcementBarPlaceholder_vyr4":"_2PagL","navbarSearchContainer_Bca1":"_3Uiqm","lastUpdated_vwxv":"_1UNOJ","tocMobile_ITEo":"_qcGlb","collapseSidebarButtonIcon_kv0_":"_2G6Hz","expandButtonIcon_i1dp":"_1IMu8","menuHtmlItem_M9Kj":"_1YUka","menu_SIkG":"_FgMDa","menuWithAnnouncementBar_GW3s":"_zUamI","sidebar_njMd":"_3E4Oo","sidebarWithHideableNavbar_wUlq":"_3xviA","sidebarHidden_VK0M":"_cWHWX","sidebarLogo_isFc":"_UMHGX","docSidebarContainer_YfHR":"_1SwXt","docSidebarContainerHidden_DPk8":"_3h6KW","sidebarViewport_aRkj":"_2OCK_","docMainContainer_TBSr":"_FuxZS","docMainContainerEnhanced_lQrH":"_ZUdP4","docItemWrapperEnhanced_JWYK":"_2AmPG","docItemCol_VOVn":"_3GmBr","container":"_1UB4R","col":"_csNus","footer":"_gceZJ","colorModeToggle_DEke":"_OawS_","footer__link-separator":"_3fzLh","navbar__item":"_1wyV6","tableOfContents_bqdL":"_3tGM4","footer__col":"_3DllA","footer__link-item":"_2ibTz","hero":"_369-d","navbar":"_5LWZt","container-fluid":"_2GcNI","navbar__toggle":"_2YjZl","navbar__search-input":"_3__u0","pills--block":"_2f7GT","tabs--block":"_3xrdo","docItemContainer_F8PC":"_6P_Dr","markdown":"_2xZt0","backToTopButton_sjWU":"_2bUwo","thin-scrollbar":"_1mrmJ","announcementBar_mb4j":"_2oveE","menu":"_14IWx","pagination-nav":"_3S8xG","table-of-contents":"_SnjS9","tabs":"_qpa-q","codeBlockLines_e6Vv":"_2ou2J"};
22678
+ var styles$7 = {"drawer":"_1k4kj","open":"_IB2-g","drawer-overlay":"_xnHGE","drawer-header":"_1gLOh","drawer-form":"_2pLGg","dropdown-content-academy":"_1rR7s","dropdown-change":"_1Hcs4","btn-register":"_37IIN","btn-cancel":"_KDkNh","dropdown-academy-item":"_1-srV","dropdown-content-language":"_88rAE","dropdown-item-language":"_2jjUW","dropdown-item-language-active":"_27lik","item-address":"_tGib4","item-logout":"_1MXIb","title-address":"_A_I15","image-academy":"_3zxbi","slick-dots":"_VlpW7","slick-active":"_1zzu9","slider-container":"_1lCoM","button":"__sLSD","variable-width":"_1AnqW","slick-slide":"_3ZJaN","center":"_jUOZF","slick-center":"_35s6t","content":"_1dQdx","image":"_1feWs","slick-loading":"_FchLZ","slick-slider":"_1T7zW","slick-thumb":"_o2Tkt","slides":"_1FY2k","slick-next":"_23Pi9","slick-prev":"_2g2iD","heroBanner_qdFl":"_2y7lQ","buttons_AeoN":"_KMW2P","mdxPageWrapper_j9I6":"_3dqhE","collapseSidebarButton_PEFL":"_24wBH","expandButton_TmdG":"_2LXBj","announcementBarClose_gvF7":"_32uEE","announcementBarPlaceholder_vyr4":"_2PagL","navbarSearchContainer_Bca1":"_3Uiqm","lastUpdated_vwxv":"_1UNOJ","tocMobile_ITEo":"_qcGlb","collapseSidebarButtonIcon_kv0_":"_2G6Hz","expandButtonIcon_i1dp":"_1IMu8","menuHtmlItem_M9Kj":"_1YUka","menu_SIkG":"_FgMDa","menuWithAnnouncementBar_GW3s":"_zUamI","sidebar_njMd":"_3E4Oo","sidebarWithHideableNavbar_wUlq":"_3xviA","sidebarHidden_VK0M":"_cWHWX","sidebarLogo_isFc":"_UMHGX","docSidebarContainer_YfHR":"_1SwXt","docSidebarContainerHidden_DPk8":"_3h6KW","sidebarViewport_aRkj":"_2OCK_","docMainContainer_TBSr":"_FuxZS","docMainContainerEnhanced_lQrH":"_ZUdP4","docItemWrapperEnhanced_JWYK":"_2AmPG","docItemCol_VOVn":"_3GmBr","container":"_1UB4R","col":"_csNus","footer":"_gceZJ","colorModeToggle_DEke":"_OawS_","footer__link-separator":"_3fzLh","navbar__item":"_1wyV6","tableOfContents_bqdL":"_3tGM4","footer__col":"_3DllA","footer__link-item":"_2ibTz","hero":"_369-d","navbar":"_5LWZt","container-fluid":"_2GcNI","navbar__toggle":"_2YjZl","navbar__search-input":"_3__u0","pills--block":"_2f7GT","tabs--block":"_3xrdo","docItemContainer_F8PC":"_6P_Dr","markdown":"_2xZt0","backToTopButton_sjWU":"_2bUwo","thin-scrollbar":"_1mrmJ","announcementBar_mb4j":"_2oveE","menu":"_14IWx","pagination-nav":"_3S8xG","table-of-contents":"_SnjS9","tabs":"_qpa-q","codeBlockLines_e6Vv":"_2ou2J"};
22644
22679
 
22645
22680
  var ResetFilterDialog = function ResetFilterDialog(_ref) {
22646
22681
  var t = _ref.t,
@@ -22704,7 +22739,7 @@ var ResetFilterDialog = function ResetFilterDialog(_ref) {
22704
22739
  borderTop: "1px solid #CED2DA"
22705
22740
  }
22706
22741
  }, React__default.createElement(material.Button, {
22707
- className: styles$6["btn-cancel"],
22742
+ className: styles$7["btn-cancel"],
22708
22743
  onClick: onClose
22709
22744
  }, React__default.createElement(material.Typography, {
22710
22745
  sx: {
@@ -22715,7 +22750,7 @@ var ResetFilterDialog = function ResetFilterDialog(_ref) {
22715
22750
  lineHeight: "16.71px"
22716
22751
  }, t("close"))), React__default.createElement(material.Button, {
22717
22752
  variant: "contained",
22718
- className: styles$6["btn-register"],
22753
+ className: styles$7["btn-register"],
22719
22754
  type: "submit",
22720
22755
  sx: {
22721
22756
  padding: "12px 47px"
@@ -23134,7 +23169,7 @@ var ChapterProblemSolvingResultsDialog = function ChapterProblemSolvingResultsDi
23134
23169
  borderTop: "1px solid #CED2DA"
23135
23170
  }
23136
23171
  }, React__default.createElement(material.Button, {
23137
- className: styles$6["btn-cancel"],
23172
+ className: styles$7["btn-cancel"],
23138
23173
  onClick: onClose
23139
23174
  }, React__default.createElement(material.Typography, {
23140
23175
  sx: {
@@ -23153,13 +23188,18 @@ var StartPageDialog = function StartPageDialog(_ref) {
23153
23188
  open = _ref.open,
23154
23189
  options = _ref.options,
23155
23190
  onSubmit = _ref.onSubmit;
23191
+ var _useKeyboardVisible = useKeyboardVisible(),
23192
+ pageSxProps = _useKeyboardVisible.pageSxProps,
23193
+ handleInputFocus = _useKeyboardVisible.handleInputFocus,
23194
+ handleInputBlur = _useKeyboardVisible.handleInputBlur;
23156
23195
  return React__default.createElement(material.Dialog, {
23157
23196
  onClose: onClose,
23158
23197
  open: open,
23198
+ scroll: "body",
23159
23199
  PaperProps: {
23160
- sx: {
23200
+ sx: _extends({
23161
23201
  minWidth: "363px"
23162
- }
23202
+ }, pageSxProps)
23163
23203
  }
23164
23204
  }, React__default.createElement(material.DialogTitle, {
23165
23205
  id: "customized-dialog-title"
@@ -23209,12 +23249,16 @@ var StartPageDialog = function StartPageDialog(_ref) {
23209
23249
  render: function render(_ref3) {
23210
23250
  var field = _objectWithoutPropertiesLoose(_ref3, _excluded$9);
23211
23251
  return React__default.createElement(CustomSelectOption, Object.assign({
23252
+ maxMenuHeight: 150,
23212
23253
  menuPosition: "fixed",
23213
23254
  onChange: function onChange(option) {
23214
23255
  return setFieldValue('startPage', option === null || option === void 0 ? void 0 : option.value);
23215
23256
  },
23216
23257
  options: options
23217
- }, field));
23258
+ }, field, {
23259
+ onBlur: handleInputBlur,
23260
+ onFocus: handleInputFocus
23261
+ }));
23218
23262
  }
23219
23263
  }))), React__default.createElement(material.DialogActions, {
23220
23264
  sx: {
@@ -23225,7 +23269,7 @@ var StartPageDialog = function StartPageDialog(_ref) {
23225
23269
  borderTop: "1px solid #CED2DA"
23226
23270
  }
23227
23271
  }, React__default.createElement(material.Button, {
23228
- className: styles$6["btn-cancel"],
23272
+ className: styles$7["btn-cancel"],
23229
23273
  onClick: onClose
23230
23274
  }, React__default.createElement(material.Typography, {
23231
23275
  sx: {
@@ -23236,7 +23280,7 @@ var StartPageDialog = function StartPageDialog(_ref) {
23236
23280
  lineHeight: "16.71px"
23237
23281
  }, t("cancel"))), React__default.createElement(material.Button, {
23238
23282
  variant: "contained",
23239
- className: styles$6["btn-register"],
23283
+ className: styles$7["btn-register"],
23240
23284
  type: "submit",
23241
23285
  sx: {
23242
23286
  padding: "12px 47px"
@@ -23392,7 +23436,7 @@ var Statistic = function Statistic(_ref) {
23392
23436
  };
23393
23437
 
23394
23438
  var TextbookDrawer = function TextbookDrawer(_ref) {
23395
- var _textbook$chapters, _textbook$chapters2;
23439
+ var _textbook$totalQuesti, _textbook$chapters, _textbook$chapters2;
23396
23440
  var isOpen = _ref.isOpen,
23397
23441
  role = _ref.role,
23398
23442
  width = _ref.width,
@@ -23561,7 +23605,7 @@ var TextbookDrawer = function TextbookDrawer(_ref) {
23561
23605
  fontSize: "13px",
23562
23606
  fontWeight: 700,
23563
23607
  color: styles.gray_900
23564
- }, (textbook === null || textbook === void 0 ? void 0 : textbook.totalQuestions) + " " + t("questions")))))), React__default.createElement(material.Stack, {
23608
+ }, ((_textbook$totalQuesti = textbook === null || textbook === void 0 ? void 0 : textbook.totalQuestions) != null ? _textbook$totalQuesti : 0) + " " + t("questions")))))), React__default.createElement(material.Stack, {
23565
23609
  flexDirection: "row",
23566
23610
  gap: "24px",
23567
23611
  mx: "24px"
@@ -23813,7 +23857,7 @@ var DeleteTextbookDialog = function DeleteTextbookDialog(_ref) {
23813
23857
  borderTop: "1px solid #CED2DA"
23814
23858
  }
23815
23859
  }, React__default.createElement(material.Button, {
23816
- className: styles$6["btn-cancel"],
23860
+ className: styles$7["btn-cancel"],
23817
23861
  onClick: onClose
23818
23862
  }, React__default.createElement(material.Typography, {
23819
23863
  sx: {
@@ -23824,7 +23868,7 @@ var DeleteTextbookDialog = function DeleteTextbookDialog(_ref) {
23824
23868
  lineHeight: "16.71px"
23825
23869
  }, t("cancel"))), React__default.createElement(material.Button, {
23826
23870
  variant: "contained",
23827
- className: styles$6["btn-register"],
23871
+ className: styles$7["btn-register"],
23828
23872
  type: "submit",
23829
23873
  sx: {
23830
23874
  padding: "12px 47px"
@@ -23936,13 +23980,13 @@ var TextbookInfoDrawer = function TextbookInfoDrawer(_ref) {
23936
23980
  var theme = material.useTheme();
23937
23981
  var isTabletUp = material.useMediaQuery(theme.breakpoints.up("lg"));
23938
23982
  return React__default.createElement("div", null, React__default.createElement("div", {
23939
- className: styles$6["drawer-overlay"] + " " + (isOpen && styles$6["open"]),
23983
+ className: styles$7["drawer-overlay"] + " " + (isOpen && styles$7["open"]),
23940
23984
  onClick: function onClick() {
23941
23985
  return onClose();
23942
23986
  }
23943
23987
  }), React__default.createElement(material.Stack, {
23944
23988
  width: isTabletUp ? "50vw" : "100%",
23945
- className: styles$6["drawer"] + " bg-white " + (isOpen && styles$6["open"])
23989
+ className: styles$7["drawer"] + " bg-white " + (isOpen && styles$7["open"])
23946
23990
  }, React__default.createElement(material.Stack, {
23947
23991
  bgcolor: styles.gray_50,
23948
23992
  borderBottom: "1px solid " + styles.gray_100,
@@ -26847,7 +26891,7 @@ var LessonFormBody = function LessonFormBody(_ref) {
26847
26891
  }, React__default.createElement(demo.DemoContainer, {
26848
26892
  components: ["DatePicker"]
26849
26893
  }, React__default.createElement(DatePicker.DatePicker, {
26850
- className: "" + styles$2["date-picker"],
26894
+ className: "" + styles$3["date-picker"],
26851
26895
  format: t("date_format"),
26852
26896
  maxDate: endDate ? moment(endDate).local() : undefined,
26853
26897
  minDate: startDate ? moment(startDate).local() : undefined,
@@ -26865,7 +26909,7 @@ var LessonFormBody = function LessonFormBody(_ref) {
26865
26909
  }, t("main_teacher"), " ", React__default.createElement("span", {
26866
26910
  className: "text-danger"
26867
26911
  }, "*")), React__default.createElement("div", {
26868
- className: "" + styles$2["teacher-selector-wrapper"]
26912
+ className: "" + styles$3["teacher-selector-wrapper"]
26869
26913
  }, React__default.createElement(TeacherSelector, {
26870
26914
  value: formikProp.values.mainTeacherId,
26871
26915
  teachers: teachers,
@@ -26893,7 +26937,7 @@ var LessonFormBody = function LessonFormBody(_ref) {
26893
26937
  return formikProp.setFieldValue("startTime", newValue);
26894
26938
  },
26895
26939
  timezone: "system",
26896
- className: styles$2["time-picker"] + " w-100",
26940
+ className: styles$3["time-picker"] + " w-100",
26897
26941
  slotProps: {
26898
26942
  textField: {
26899
26943
  onClick: function onClick() {
@@ -26927,7 +26971,7 @@ var LessonFormBody = function LessonFormBody(_ref) {
26927
26971
  return formikProp.setFieldValue("endTime", newValue);
26928
26972
  },
26929
26973
  timezone: "system",
26930
- className: styles$2["time-picker"] + " w-100",
26974
+ className: styles$3["time-picker"] + " w-100",
26931
26975
  slotProps: {
26932
26976
  textField: {
26933
26977
  onClick: function onClick() {
@@ -27764,7 +27808,7 @@ var RECENT_USER_ACTION_HEADERS = [{
27764
27808
  }];
27765
27809
  var CSV_PREFIX = "data:text/csv;charset=utf-8,";
27766
27810
 
27767
- var styles$7 = {"action-btn":"_1jXbz","action-btn--pencil":"_at4xP","icon-rotate-180":"_12gv9","drop-area":"_R4bn5"};
27811
+ var styles$8 = {"action-btn":"_1jXbz","action-btn--pencil":"_at4xP","icon-rotate-180":"_12gv9","drop-area":"_R4bn5"};
27768
27812
 
27769
27813
  var _excluded$c = ["text", "isRequired", "className"];
27770
27814
  var LabelRequired = function LabelRequired(_ref) {
@@ -28889,7 +28933,7 @@ var DeleteUserCsvDialog = function DeleteUserCsvDialog(_ref) {
28889
28933
  size: "xs",
28890
28934
  title: t('delete_users_csv')
28891
28935
  }, React__default.createElement(material.DialogContent, null, React__default.createElement("div", {
28892
- className: "" + styles$7["drop-area"],
28936
+ className: "" + styles$8["drop-area"],
28893
28937
  onDrop: handleDrop,
28894
28938
  onDragOver: handleDragOver,
28895
28939
  onClick: handleChooseFile
@@ -29018,10 +29062,10 @@ var UserRow = function UserRow(_ref) {
29018
29062
  className: "d-flex"
29019
29063
  }, isAdmin || isSuperAdmin ? React__default.createElement(material.IconButton, {
29020
29064
  color: "default",
29021
- className: styles$7["action-btn"] + " bg-warning text-white me-2",
29065
+ className: styles$8["action-btn"] + " bg-warning text-white me-2",
29022
29066
  onClick: handleViewOrUpdate
29023
29067
  }, React__default.createElement(hi.HiOutlinePencilAlt, {
29024
- className: styles$7["action-btn--pencil"],
29068
+ className: styles$8["action-btn--pencil"],
29025
29069
  size: 16
29026
29070
  })) : React__default.createElement(material.IconButton, {
29027
29071
  color: "default",
@@ -29032,7 +29076,7 @@ var UserRow = function UserRow(_ref) {
29032
29076
  })), (isAdmin || isSuperAdmin) && React__default.createElement(material.IconButton, {
29033
29077
  onClick: handleDelete,
29034
29078
  color: "default",
29035
- className: styles$7["action-btn"] + " bg-danger text-white"
29079
+ className: styles$8["action-btn"] + " bg-danger text-white"
29036
29080
  }, React__default.createElement(fa6.FaTrashCan, {
29037
29081
  size: 12
29038
29082
  })))));
@@ -29118,7 +29162,7 @@ var UserList = function UserList(_ref) {
29118
29162
  bgcolor: theme.palette.primary.main
29119
29163
  },
29120
29164
  startIcon: React__default.createElement(md.MdDownload, {
29121
- className: "" + styles$7["icon-rotate-180"],
29165
+ className: "" + styles$8["icon-rotate-180"],
29122
29166
  size: 14
29123
29167
  }),
29124
29168
  onClick: handleChooseFile
@@ -29129,7 +29173,7 @@ var UserList = function UserList(_ref) {
29129
29173
  bgcolor: theme.palette.error.main
29130
29174
  },
29131
29175
  startIcon: React__default.createElement(md.MdDownload, {
29132
- className: "" + styles$7["icon-rotate-180"],
29176
+ className: "" + styles$8["icon-rotate-180"],
29133
29177
  size: 14
29134
29178
  }),
29135
29179
  onClick: handleToggleDeleteUserCsv
@@ -29265,7 +29309,7 @@ var UserList = function UserList(_ref) {
29265
29309
  })));
29266
29310
  };
29267
29311
 
29268
- var styles$8 = {"question":"_2uc_W","question-article":"_2p7kY","question-title":"_2tHmc","question-label":"_26ATj","question-input":"_3R8PR","question-btn":"_1VZac"};
29312
+ var styles$9 = {"question":"_2uc_W","question-article":"_2p7kY","question-title":"_2tHmc","question-label":"_26ATj","question-input":"_3R8PR","question-btn":"_1VZac"};
29269
29313
 
29270
29314
  var BpIcon = material.styled("span")(function (_ref) {
29271
29315
  var theme = _ref.theme;
@@ -29338,7 +29382,7 @@ var QuestionView = function QuestionView(_ref2) {
29338
29382
  mb: "16px"
29339
29383
  }, React__default.createElement(material.Stack, null, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29340
29384
  htmlFor: "textual_answer",
29341
- className: styles$8["question-label"] + " form-label"
29385
+ className: styles$9["question-label"] + " form-label"
29342
29386
  }, t("textual_answer")), React__default.createElement(material.TextField, {
29343
29387
  sx: {
29344
29388
  "& .MuiInputBase-input": {
@@ -29366,7 +29410,7 @@ var QuestionView = function QuestionView(_ref2) {
29366
29410
  }).map(function (i) {
29367
29411
  return React__default.createElement(material.FormControlLabel, {
29368
29412
  key: i,
29369
- className: styles$8["question-label"] + " w-fit",
29413
+ className: styles$9["question-label"] + " w-fit",
29370
29414
  labelPlacement: "top",
29371
29415
  value: i,
29372
29416
  onChange: function onChange(e) {
@@ -29397,7 +29441,7 @@ var QuestionView = function QuestionView(_ref2) {
29397
29441
  }).map(function (i) {
29398
29442
  return React__default.createElement(material.FormControlLabel, {
29399
29443
  key: i,
29400
- className: styles$8["question-label"] + " w-fit",
29444
+ className: styles$9["question-label"] + " w-fit",
29401
29445
  labelPlacement: "top",
29402
29446
  value: i,
29403
29447
  onChange: function onChange(e) {
@@ -29440,7 +29484,7 @@ var QuestionView = function QuestionView(_ref2) {
29440
29484
  }, React__default.createElement(material.Grid, {
29441
29485
  container: true
29442
29486
  }, React__default.createElement("div", {
29443
- className: styles$8["question-title"] + " me-2 text-nowrap"
29487
+ className: styles$9["question-title"] + " me-2 text-nowrap"
29444
29488
  }, t("problem_number_question", {
29445
29489
  number: question.questionOrder + 1
29446
29490
  }))), React__default.createElement(material.Grid, {
@@ -29453,7 +29497,7 @@ var QuestionView = function QuestionView(_ref2) {
29453
29497
  mb: "16px"
29454
29498
  }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29455
29499
  htmlFor: "title",
29456
- className: styles$8["question-label"] + " form-label"
29500
+ className: styles$9["question-label"] + " form-label"
29457
29501
  }, t("title")), React__default.createElement(material.TextField, {
29458
29502
  fullWidth: true,
29459
29503
  value: question.title,
@@ -29468,7 +29512,7 @@ var QuestionView = function QuestionView(_ref2) {
29468
29512
  mb: "16px"
29469
29513
  }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29470
29514
  htmlFor: "author",
29471
- className: styles$8["question-label"] + " form-label"
29515
+ className: styles$9["question-label"] + " form-label"
29472
29516
  }, t("author")), React__default.createElement(material.TextField, {
29473
29517
  fullWidth: true,
29474
29518
  value: question.author,
@@ -29483,7 +29527,7 @@ var QuestionView = function QuestionView(_ref2) {
29483
29527
  mb: "16px"
29484
29528
  }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29485
29529
  htmlFor: "subject",
29486
- className: styles$8["question-label"] + " form-label"
29530
+ className: styles$9["question-label"] + " form-label"
29487
29531
  }, t("subject")), React__default.createElement(material.TextField, {
29488
29532
  fullWidth: true,
29489
29533
  value: question.subject,
@@ -29502,7 +29546,7 @@ var QuestionView = function QuestionView(_ref2) {
29502
29546
  mb: "16px"
29503
29547
  }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29504
29548
  htmlFor: "type",
29505
- className: styles$8["question-label"] + " form-label"
29549
+ className: styles$9["question-label"] + " form-label"
29506
29550
  }, t("type")), React__default.createElement(CustomSelectOption, {
29507
29551
  isTextbook: true,
29508
29552
  valueById: question.type,
@@ -29516,7 +29560,7 @@ var QuestionView = function QuestionView(_ref2) {
29516
29560
  lg: 3
29517
29561
  }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29518
29562
  htmlFor: "question_answer_type",
29519
- className: styles$8["question-label"] + " form-label"
29563
+ className: styles$9["question-label"] + " form-label"
29520
29564
  }, t("question_answer_type")), React__default.createElement(CustomSelect, {
29521
29565
  isDisabled: isDisabled,
29522
29566
  value: question.questionAnswerType,
@@ -29536,7 +29580,7 @@ var QuestionView = function QuestionView(_ref2) {
29536
29580
  xs: 4,
29537
29581
  lg: 4
29538
29582
  }, React__default.createElement("div", {
29539
- className: styles$8["question-title"] + " me-2 text-nowrap"
29583
+ className: styles$9["question-title"] + " me-2 text-nowrap"
29540
29584
  }, t("problem_number_question", {
29541
29585
  number: question.questionOrder + 1
29542
29586
  }))), !isTextbook && React__default.createElement(material.Grid, {
@@ -29549,7 +29593,7 @@ var QuestionView = function QuestionView(_ref2) {
29549
29593
  lg: 4
29550
29594
  }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29551
29595
  htmlFor: "question_answer_type",
29552
- className: styles$8["question-label"] + " form-label"
29596
+ className: styles$9["question-label"] + " form-label"
29553
29597
  }, t("question_answer_type")), React__default.createElement(CustomSelect, {
29554
29598
  isDisabled: isDisabled,
29555
29599
  value: question.questionAnswerType,
@@ -29683,7 +29727,11 @@ var ArticleGroupView = function ArticleGroupView(_ref) {
29683
29727
  onDelete === null || onDelete === void 0 ? void 0 : onDelete(article);
29684
29728
  };
29685
29729
  return React__default.createElement("div", {
29686
- className: "d-flex " + styles$8["question"] + " " + (isActive ? styles$8["question--active"] : "")
29730
+ className: "d-flex " + styles$9["question"] + " " + (isActive ? styles$9["question--active"] : ""),
29731
+ style: {
29732
+ maxHeight: "95%",
29733
+ overflow: 'scroll'
29734
+ }
29687
29735
  }, React__default.createElement("div", {
29688
29736
  className: "py-1"
29689
29737
  }, React__default.createElement(pi.PiDotsNineLight, {
@@ -29691,9 +29739,9 @@ var ArticleGroupView = function ArticleGroupView(_ref) {
29691
29739
  })), React__default.createElement("div", {
29692
29740
  className: "px-2"
29693
29741
  }, React__default.createElement("p", {
29694
- className: "mb-0 " + styles$8["question-article"]
29742
+ className: "mb-0 " + styles$9["question-article"]
29695
29743
  }, t("article_number")), React__default.createElement("p", {
29696
- className: "text-center " + styles$8["question-article"]
29744
+ className: "text-center " + styles$9["question-article"]
29697
29745
  }, article)), React__default.createElement("div", {
29698
29746
  className: "flex-grow-1"
29699
29747
  }, React__default.createElement(material.Grid, {
@@ -29714,7 +29762,7 @@ var ArticleGroupView = function ArticleGroupView(_ref) {
29714
29762
  lg: 3
29715
29763
  }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29716
29764
  htmlFor: "question_count",
29717
- className: styles$8["question-label"] + " form-label"
29765
+ className: styles$9["question-label"] + " form-label"
29718
29766
  }, t("questions")), React__default.createElement(QuestionCountSelector, {
29719
29767
  id: "question_count",
29720
29768
  value: questionCount,
@@ -29733,7 +29781,7 @@ var ArticleGroupView = function ArticleGroupView(_ref) {
29733
29781
  }
29734
29782
  }, React__default.createElement(material.FormLabel, {
29735
29783
  htmlFor: "category",
29736
- className: styles$8["question-label"] + " form-label"
29784
+ className: styles$9["question-label"] + " form-label"
29737
29785
  }, t("category")), React__default.createElement(ArticleCategorySelector, {
29738
29786
  style: {
29739
29787
  "div:has(&)": {
@@ -29753,7 +29801,7 @@ var ArticleGroupView = function ArticleGroupView(_ref) {
29753
29801
  lg: 3
29754
29802
  }, React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
29755
29803
  htmlFor: "answer_count",
29756
- className: styles$8["question-label"] + " form-label"
29804
+ className: styles$9["question-label"] + " form-label"
29757
29805
  }, t("answer_count")), React__default.createElement(AnswerCountSelector, {
29758
29806
  id: "answer_count",
29759
29807
  value: answerCount,
@@ -30278,7 +30326,7 @@ var ExamDetailView = function ExamDetailView(_ref) {
30278
30326
  xs: 5,
30279
30327
  className: 'mb-2'
30280
30328
  }, React__default.createElement("label", {
30281
- className: styles["form-label"] + " " + styles$8["question-label"],
30329
+ className: styles["form-label"] + " " + styles$9["question-label"],
30282
30330
  htmlFor: "title"
30283
30331
  }, t("exam_name")), React__default.createElement("input", {
30284
30332
  disabled: isDisabled,
@@ -30292,7 +30340,7 @@ var ExamDetailView = function ExamDetailView(_ref) {
30292
30340
  xs: 3,
30293
30341
  className: 'mb-2'
30294
30342
  }, React__default.createElement("label", {
30295
- className: styles["form-label"] + " " + styles$8["question-label"],
30343
+ className: styles["form-label"] + " " + styles$9["question-label"],
30296
30344
  htmlFor: "duration"
30297
30345
  }, t("exam_duration")), React__default.createElement(CustomSelect, {
30298
30346
  inputId: "duration",
@@ -30305,7 +30353,7 @@ var ExamDetailView = function ExamDetailView(_ref) {
30305
30353
  xs: 3,
30306
30354
  className: 'mb-2'
30307
30355
  }, React__default.createElement("label", {
30308
- className: styles["form-label"] + " " + styles$8["question-label"],
30356
+ className: styles["form-label"] + " " + styles$9["question-label"],
30309
30357
  htmlFor: "subject"
30310
30358
  }, t("subject")), React__default.createElement(CustomSelect, {
30311
30359
  inputId: "subject",
@@ -30348,7 +30396,7 @@ var ExamDetailView = function ExamDetailView(_ref) {
30348
30396
  }
30349
30397
  },
30350
30398
  disabled: isDisabled,
30351
- className: "w-100 d-flex justify-content-center align-items-center " + styles$8["question-btn"] + " mt-3",
30399
+ className: "w-100 d-flex justify-content-center align-items-center " + styles$9["question-btn"] + " mt-3",
30352
30400
  onClick: handleAddArticle
30353
30401
  }, React__default.createElement(fa.FaPlusCircle, {
30354
30402
  className: "me-2"
@@ -31933,7 +31981,7 @@ var ArticleDialog = function ArticleDialog(_ref) {
31933
31981
  }, t("add")))));
31934
31982
  };
31935
31983
 
31936
- var styles$9 = {"drawer":"_11aYm","open":"_3Ydwm","drawer-overlay":"_3SQDf","drawer-header":"_2BwOx","drawer-form":"_2Zo7R","dropdown-content-academy":"_1lzjD","dropdown-change":"_1y7K9","dropdown-academy-item":"_1Y-55","dropdown-content-language":"_1fBXY","dropdown-item-language":"_3Szun","dropdown-item-language-active":"_2HhLb","item-address":"_3WYHC","item-logout":"_2-9ix","title-address":"_1r4pn","image-academy":"_2ZozT"};
31984
+ var styles$a = {"drawer":"_11aYm","open":"_3Ydwm","drawer-overlay":"_3SQDf","drawer-header":"_2BwOx","drawer-form":"_2Zo7R","dropdown-content-academy":"_1lzjD","dropdown-change":"_1y7K9","dropdown-academy-item":"_1Y-55","dropdown-content-language":"_1fBXY","dropdown-item-language":"_3Szun","dropdown-item-language-active":"_2HhLb","item-address":"_3WYHC","item-logout":"_2-9ix","title-address":"_1r4pn","image-academy":"_2ZozT"};
31937
31985
 
31938
31986
  var _excluded$e = ["isOpen", "onClose", "handleSaveExam"];
31939
31987
  var CreateExamDrawer = function CreateExamDrawer(props) {
@@ -31946,17 +31994,17 @@ var CreateExamDrawer = function CreateExamDrawer(props) {
31946
31994
  var theme = material.useTheme();
31947
31995
  var isTabletUp = material.useMediaQuery(theme.breakpoints.up('lg'));
31948
31996
  return React__default.createElement("div", null, React__default.createElement("div", {
31949
- className: styles$9["drawer-overlay"] + " " + (isOpen && styles$9["open"]),
31997
+ className: styles$a["drawer-overlay"] + " " + (isOpen && styles$a["open"]),
31950
31998
  onClick: function onClick() {
31951
31999
  return onClose();
31952
32000
  }
31953
32001
  }), React__default.createElement("div", {
31954
- className: styles$9["drawer"] + " bg-white " + (isOpen && styles$9["open"]),
32002
+ className: styles$a["drawer"] + " bg-white " + (isOpen && styles$a["open"]),
31955
32003
  style: {
31956
32004
  width: "" + (isTabletUp ? "70vw" : "100vw")
31957
32005
  }
31958
32006
  }, React__default.createElement("div", {
31959
- className: styles$9["drawer-header"] + " d-flex justify-content-between align-items-center"
32007
+ className: styles$a["drawer-header"] + " d-flex justify-content-between align-items-center"
31960
32008
  }, React__default.createElement(material.Button, {
31961
32009
  variant: "outlined",
31962
32010
  sx: {
@@ -31975,7 +32023,7 @@ var CreateExamDrawer = function CreateExamDrawer(props) {
31975
32023
  }, React__default.createElement(fa.FaTimes, {
31976
32024
  size: 18
31977
32025
  }))), React__default.createElement("div", {
31978
- className: "" + styles$9["drawer-form"]
32026
+ className: "" + styles$a["drawer-form"]
31979
32027
  }, React__default.createElement(ExamDetailView, Object.assign({}, examDetailViewProps)))));
31980
32028
  };
31981
32029
 
@@ -32357,7 +32405,7 @@ var ShareToTeacherDialog = function ShareToTeacherDialog(_ref) {
32357
32405
  maxWidth: "md"
32358
32406
  }, React__default.createElement(material.DialogContent, {
32359
32407
  sx: {
32360
- overflowY: "unset"
32408
+ overflowY: "auto"
32361
32409
  }
32362
32410
  }, React__default.createElement(material.Grid, {
32363
32411
  container: true,
@@ -33091,7 +33139,7 @@ var useNotificationDetail = function useNotificationDetail(_ref) {
33091
33139
  };
33092
33140
  };
33093
33141
 
33094
- var styles$a = {"avatar":"_8niRT"};
33142
+ var styles$b = {"avatar":"_8niRT"};
33095
33143
 
33096
33144
  var _excluded$f = ["value", "disabled", "optionTypeNotification"];
33097
33145
  var TypeSelector = function TypeSelector(_ref) {
@@ -33216,7 +33264,7 @@ var NotificationForm = function NotificationForm(_ref) {
33216
33264
  className: "fw-bold mb-2",
33217
33265
  htmlFor: "main-teacher"
33218
33266
  }, t('content')), React__default.createElement("div", {
33219
- className: "" + styles$a["teacher-selector-wrapper"]
33267
+ className: "" + styles$b["teacher-selector-wrapper"]
33220
33268
  }, React__default.createElement(TinyEditor, {
33221
33269
  disabled: !isAdmin && (!!id && !(data !== null && data !== void 0 && data.isOwned) || isTeacherAdmin),
33222
33270
  initValue: formikProp.values.content,
@@ -33235,7 +33283,7 @@ var NotificationForm = function NotificationForm(_ref) {
33235
33283
  }, t('type'), " ", React__default.createElement("span", {
33236
33284
  className: "text-danger"
33237
33285
  }, "*")), React__default.createElement("div", {
33238
- className: "" + styles$a["teacher-selector-wrapper"]
33286
+ className: "" + styles$b["teacher-selector-wrapper"]
33239
33287
  }, React__default.createElement(TypeSelector, {
33240
33288
  disabled: !isAdmin && (!!id && !(data !== null && data !== void 0 && data.isOwned) || isTeacherAdmin),
33241
33289
  optionTypeNotification: notificationTypes,
@@ -33253,7 +33301,7 @@ var NotificationForm = function NotificationForm(_ref) {
33253
33301
  className: "fw-bold mb-2",
33254
33302
  htmlFor: "main-teacher"
33255
33303
  }, t('classes')), React__default.createElement("div", {
33256
- className: "" + styles$a["teacher-selector-wrapper"]
33304
+ className: "" + styles$b["teacher-selector-wrapper"]
33257
33305
  }, React__default.createElement(ClassSelector, {
33258
33306
  disabled: !isAdmin && (!!id && !(data !== null && data !== void 0 && data.isOwned) || isTeacherAdmin),
33259
33307
  value: classOptions,
@@ -33262,7 +33310,7 @@ var NotificationForm = function NotificationForm(_ref) {
33262
33310
  className: "fw-bold mb-2",
33263
33311
  htmlFor: "main-teacher"
33264
33312
  }, t('students')), React__default.createElement("div", {
33265
- className: "" + styles$a["teacher-selector-wrapper"]
33313
+ className: "" + styles$b["teacher-selector-wrapper"]
33266
33314
  }, React__default.createElement(StudentSelector, {
33267
33315
  disabled: !isAdmin && (!!id && !(data !== null && data !== void 0 && data.isOwned) || isTeacherAdmin),
33268
33316
  value: studentOptions,
@@ -34606,7 +34654,7 @@ var isEqual = function isEqual(prev, next) {
34606
34654
  };
34607
34655
  var ArticleBlock$1 = React.memo(ArticleBlock, isEqual);
34608
34656
 
34609
- var styles$b = {"question":"_1_ONI","question-article":"_2FdrR","question-title":"_3mgRf","question-label":"_2h0kA","question-input":"_exAl-","question-btn":"_2ksp8"};
34657
+ var styles$c = {"question":"_1_ONI","question-article":"_2FdrR","question-title":"_3mgRf","question-label":"_2h0kA","question-input":"_exAl-","question-btn":"_2ksp8"};
34610
34658
 
34611
34659
  var labelStyle = {
34612
34660
  textOverflow: "ellipsis",
@@ -34632,7 +34680,7 @@ var QuestionCompareType = function QuestionCompareType(_ref) {
34632
34680
  }
34633
34681
  }, React__default.createElement(material.FormLabel, {
34634
34682
  htmlFor: "compare-type",
34635
- className: "" + styles$b["question-label"],
34683
+ className: "" + styles$c["question-label"],
34636
34684
  sx: _extends({}, labelStyle, {
34637
34685
  width: "unset"
34638
34686
  })
@@ -34676,7 +34724,7 @@ var QuestionOrderName = function QuestionOrderName(_ref) {
34676
34724
  var _useTranslation = reactI18next.useTranslation(),
34677
34725
  t = _useTranslation.t;
34678
34726
  return React__default.createElement(material.Box, {
34679
- className: styles$b["question-title"] + " me-2 text-nowrap",
34727
+ className: styles$c["question-title"] + " me-2 text-nowrap",
34680
34728
  sx: questionTitleStyle
34681
34729
  }, isMath ? t("problem_number_question", {
34682
34730
  number: questionOrder + 1
@@ -34901,7 +34949,7 @@ var QuestionBlock = function QuestionBlock(_ref2) {
34901
34949
  var _data$correctAnswers2;
34902
34950
  return React__default.createElement(material.FormControlLabel, {
34903
34951
  key: i,
34904
- className: styles$b["question-label"] + " w-fit",
34952
+ className: styles$c["question-label"] + " w-fit",
34905
34953
  labelPlacement: "top",
34906
34954
  value: i,
34907
34955
  disabled: disabled,
@@ -34935,7 +34983,7 @@ var QuestionBlock = function QuestionBlock(_ref2) {
34935
34983
  var _data$correctAnswers4;
34936
34984
  return React__default.createElement(material.FormControlLabel, {
34937
34985
  key: i,
34938
- className: styles$b["question-label"] + " w-fit",
34986
+ className: styles$c["question-label"] + " w-fit",
34939
34987
  labelPlacement: "top",
34940
34988
  value: i,
34941
34989
  onChange: function onChange(e) {
@@ -35001,7 +35049,7 @@ var QuestionBlock = function QuestionBlock(_ref2) {
35001
35049
  direction: "row",
35002
35050
  gap: 2
35003
35051
  }, isTextAnswerType && React__default.createElement(material.FormGroup, null, React__default.createElement(material.FormLabel, {
35004
- className: styles$b["question-label"] + " form-label",
35052
+ className: styles$c["question-label"] + " form-label",
35005
35053
  sx: _extends({}, labelStyle, {
35006
35054
  visibility: "hidden"
35007
35055
  })
@@ -35036,7 +35084,7 @@ var QuestionBlock = function QuestionBlock(_ref2) {
35036
35084
  }
35037
35085
  }, React__default.createElement(material.FormLabel, {
35038
35086
  htmlFor: "score",
35039
- className: styles$b["question-label"] + " form-label",
35087
+ className: styles$c["question-label"] + " form-label",
35040
35088
  sx: labelStyle
35041
35089
  }, t("score")), React__default.createElement(formik.Field, {
35042
35090
  name: path + ".score",
@@ -35056,7 +35104,7 @@ var QuestionBlock = function QuestionBlock(_ref2) {
35056
35104
  }
35057
35105
  }, React__default.createElement(material.FormLabel, {
35058
35106
  htmlFor: "type",
35059
- className: styles$b["question-label"] + " form-label",
35107
+ className: styles$c["question-label"] + " form-label",
35060
35108
  sx: labelStyle
35061
35109
  }, t("type")), React__default.createElement(formik.Field, {
35062
35110
  name: path + ".questionTypeId",
@@ -35081,7 +35129,7 @@ var QuestionBlock = function QuestionBlock(_ref2) {
35081
35129
  }
35082
35130
  }, React__default.createElement(material.FormLabel, {
35083
35131
  htmlFor: "question_answer_type",
35084
- className: styles$b["question-label"] + " form-label",
35132
+ className: styles$c["question-label"] + " form-label",
35085
35133
  sx: labelStyle
35086
35134
  }, t("question_answer_type")), React__default.createElement(formik.Field, {
35087
35135
  name: path + ".questionAnswerType",
@@ -37716,7 +37764,7 @@ var useTextbookList$1 = function useTextbookList() {
37716
37764
  };
37717
37765
  };
37718
37766
 
37719
- var styles$c = {"action-btn":"_2Kt_g","action-btn--pencil":"_3T_TG","btn-cancel":"_3j6Kd","btn-register":"_XA4vl"};
37767
+ var styles$d = {"action-btn":"_2Kt_g","action-btn--pencil":"_3T_TG","btn-cancel":"_3j6Kd","btn-register":"_XA4vl"};
37720
37768
 
37721
37769
  var DeleteTextbookDialog$1 = function DeleteTextbookDialog(_ref) {
37722
37770
  var t = _ref.t,
@@ -37780,7 +37828,7 @@ var DeleteTextbookDialog$1 = function DeleteTextbookDialog(_ref) {
37780
37828
  borderTop: "1px solid #CED2DA"
37781
37829
  }
37782
37830
  }, React__default.createElement(material.Button, {
37783
- className: styles$c["btn-cancel"],
37831
+ className: styles$d["btn-cancel"],
37784
37832
  onClick: onClose
37785
37833
  }, React__default.createElement(material.Typography, {
37786
37834
  sx: {
@@ -37791,7 +37839,7 @@ var DeleteTextbookDialog$1 = function DeleteTextbookDialog(_ref) {
37791
37839
  lineHeight: "16.71px"
37792
37840
  }, t("cancel"))), React__default.createElement(material.Button, {
37793
37841
  variant: "contained",
37794
- className: styles$c["btn-register"],
37842
+ className: styles$d["btn-register"],
37795
37843
  type: "submit",
37796
37844
  sx: {
37797
37845
  padding: "12px 47px"
@@ -37878,12 +37926,12 @@ var PreparedTextbookList = function PreparedTextbookList(_ref) {
37878
37926
  title: t("edit")
37879
37927
  }, React__default.createElement(material.IconButton, {
37880
37928
  color: "default",
37881
- className: styles$c["action-btn"] + " bg-warning text-white me-2",
37929
+ className: styles$d["action-btn"] + " bg-warning text-white me-2",
37882
37930
  onClick: function onClick() {
37883
37931
  return onNavigateDetail(i);
37884
37932
  }
37885
37933
  }, React__default.createElement(hi.HiOutlinePencilAlt, {
37886
- className: styles$c["action-btn--pencil"],
37934
+ className: styles$d["action-btn--pencil"],
37887
37935
  size: 16
37888
37936
  }))), React__default.createElement(material.Tooltip, {
37889
37937
  title: t("edit")
@@ -37892,7 +37940,7 @@ var PreparedTextbookList = function PreparedTextbookList(_ref) {
37892
37940
  return handleOpenConfirmDialog(i);
37893
37941
  },
37894
37942
  color: "default",
37895
- className: styles$c["action-btn"] + " bg-danger text-white",
37943
+ className: styles$d["action-btn"] + " bg-danger text-white",
37896
37944
  title: t("delete")
37897
37945
  }, React__default.createElement(fa6.FaTrashCan, {
37898
37946
  size: 12
@@ -39077,6 +39125,7 @@ exports.ClassDetail = ClassDetail;
39077
39125
  exports.ClassList = ClassList;
39078
39126
  exports.ClassNoteDialog = ClassNoteDialog;
39079
39127
  exports.ClassSelector = ClassSelector;
39128
+ exports.CommonCreateNewQuestionDialog = CommonCreateNewQuestionDialog;
39080
39129
  exports.CommonDialog = CommonDialog;
39081
39130
  exports.ConfirmDeleteDialog = ConfirmDeleteDialog;
39082
39131
  exports.ConfirmDialog = ConfirmDialog;
@@ -39212,6 +39261,7 @@ exports.useAutoAcademyDomain = useAutoAcademyDomain;
39212
39261
  exports.useChatContainer = useChatContainer;
39213
39262
  exports.useCountDownTimer = useCountDownTimer;
39214
39263
  exports.useGoogleSignOut = useGoogleSignOut;
39264
+ exports.useKeyboardVisible = useKeyboardVisible;
39215
39265
  exports.useLanguage = useLanguage;
39216
39266
  exports.useList = useList;
39217
39267
  exports.useLoadMore = useLoadMore;