mario-core 2.0.3 → 2.0.4-release

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (446) hide show
  1. package/dist/Dashboard-BsDeySam.js +1 -0
  2. package/dist/Dashboard-C8i4BvyG.js +1 -0
  3. package/dist/Dashboard-CEJHkjrj.mjs +206 -0
  4. package/dist/Dashboard-CRRvwGed.js +1 -0
  5. package/dist/Dashboard-CZW-qGyN.mjs +206 -0
  6. package/dist/Dashboard-C_ztxjUK.mjs +206 -0
  7. package/dist/Dashboard-CaX-62QW.js +1 -0
  8. package/dist/Dashboard-DyvEA6z-.mjs +206 -0
  9. package/dist/Dashboard-HzY9FZ7Z.js +1 -0
  10. package/dist/Dashboard-ctVUb592.mjs +206 -0
  11. package/dist/EmailTemplateDetail-BQPspomy.mjs +417 -0
  12. package/dist/EmailTemplateDetail-BX_tfwoM.mjs +417 -0
  13. package/dist/EmailTemplateDetail-CITCgbC8.mjs +417 -0
  14. package/dist/EmailTemplateDetail-CNh5de_u.js +1 -0
  15. package/dist/EmailTemplateDetail-CdAQlzKa.mjs +417 -0
  16. package/dist/EmailTemplateDetail-CyTeZ6B4.js +1 -0
  17. package/dist/EmailTemplateDetail-D-jgcfDM.js +1 -0
  18. package/dist/EmailTemplateDetail-DcwJEPvb.js +1 -0
  19. package/dist/EmailTemplateDetail-dxSRgDcj.mjs +417 -0
  20. package/dist/EmailTemplateDetail-mdYeUDJg.js +1 -0
  21. package/dist/EmailTemplateList-9G-A6FZq.js +1 -0
  22. package/dist/EmailTemplateList-BBrwv30e.mjs +168 -0
  23. package/dist/EmailTemplateList-BUL8h6T2.mjs +168 -0
  24. package/dist/EmailTemplateList-BV-QOv5K.mjs +168 -0
  25. package/dist/EmailTemplateList-CuYu-78c.js +1 -0
  26. package/dist/EmailTemplateList-Cw69biiR.mjs +168 -0
  27. package/dist/EmailTemplateList-DATMwmRX.mjs +168 -0
  28. package/dist/EmailTemplateList-DPH9n1zg.js +1 -0
  29. package/dist/EmailTemplateList-Dgf0hucr.js +1 -0
  30. package/dist/EmailTemplateList-DqpO5NbB.js +1 -0
  31. package/dist/GalleryList-B2kxc3Uv.js +1 -0
  32. package/dist/GalleryList-BJ0QGyWF.mjs +329 -0
  33. package/dist/GalleryList-BM67p8qw.mjs +329 -0
  34. package/dist/GalleryList-BRIM0Ij_.mjs +329 -0
  35. package/dist/GalleryList-BU0as1ZP.mjs +329 -0
  36. package/dist/GalleryList-BYwvWx1S.js +1 -0
  37. package/dist/GalleryList-C2kwrrbY.js +1 -0
  38. package/dist/GalleryList-C46NhLPp.js +1 -0
  39. package/dist/GalleryList-D2_BCJq6.js +1 -0
  40. package/dist/GalleryList-JJbcEbTi.mjs +329 -0
  41. package/dist/Login-BPXlNvpX.mjs +1387 -0
  42. package/dist/Login-BWsVc8Np.mjs +1384 -0
  43. package/dist/Login-BYWZjmhv.mjs +1384 -0
  44. package/dist/Login-C1-QzAuV.mjs +1384 -0
  45. package/dist/Login-CGa7aER1.js +1 -0
  46. package/dist/Login-CUcmbeia.js +1 -0
  47. package/dist/Login-CXt0_tBl.mjs +1387 -0
  48. package/dist/Login-SxZya_gO.js +1 -0
  49. package/dist/Login-erVjidLp.js +1 -0
  50. package/dist/Login-fyvhErZA.js +1 -0
  51. package/dist/NotificationList-85ZNspu5.mjs +3878 -0
  52. package/dist/NotificationList-BDtxAveg.js +2 -0
  53. package/dist/NotificationList-BFTZrMUI.mjs +3878 -0
  54. package/dist/NotificationList-BmsuB956.js +2 -0
  55. package/dist/NotificationList-Bv_7KnH-.js +2 -0
  56. package/dist/NotificationList-D7Emce8u.mjs +3878 -0
  57. package/dist/NotificationList-DqqIOC4p.js +2 -0
  58. package/dist/NotificationList-RXsROL30.mjs +3878 -0
  59. package/dist/NotificationList-j6FB8Ea2.js +2 -0
  60. package/dist/NotificationList-qFV94D7S.mjs +3878 -0
  61. package/dist/SchoolList-CClJ_UPT.js +1 -0
  62. package/dist/SchoolList-JmrmL2zE.mjs +5 -0
  63. package/dist/SkillList-B8uw4QZF.mjs +386 -0
  64. package/dist/SkillList-BhVXby3M.mjs +386 -0
  65. package/dist/SkillList-CJyAJrM9.js +1 -0
  66. package/dist/SkillList-Cjt8Kney.mjs +386 -0
  67. package/dist/SkillList-Cs_lxx12.mjs +386 -0
  68. package/dist/SkillList-DF--jHTh.mjs +386 -0
  69. package/dist/SkillList-D_tQAQqL.js +1 -0
  70. package/dist/SkillList-DqlhMpSA.js +1 -0
  71. package/dist/SkillList-RwckcULz.js +1 -0
  72. package/dist/SkillList-WqwHRR6L.js +1 -0
  73. package/dist/TeacherSelector-BKSay316.mjs +30 -0
  74. package/dist/TeacherSelector-C52rXj2q.mjs +30 -0
  75. package/dist/TeacherSelector-CAo3E6h-.mjs +30 -0
  76. package/dist/TeacherSelector-CKdM3Z8y.js +1 -0
  77. package/dist/TeacherSelector-CeCJEF4W.js +1 -0
  78. package/dist/TeacherSelector-DXG3itVQ.js +1 -0
  79. package/dist/TeacherSelector-DXv_vBJI.js +1 -0
  80. package/dist/TeacherSelector-DgfugjyF.js +1 -0
  81. package/dist/TeacherSelector-DpcBvLY-.mjs +30 -0
  82. package/dist/TeacherSelector-Xd8QnKWa.mjs +30 -0
  83. package/dist/TheContent-BQNAOyQ1.js +1 -0
  84. package/dist/TheContent-BcPcCqnd.mjs +28 -0
  85. package/dist/TheContent-C7s0FxEV.js +1 -0
  86. package/dist/TheContent-CDVWxnOm.js +1 -0
  87. package/dist/TheContent-CtCoUbS9.js +1 -0
  88. package/dist/TheContent-CyIFLtrd.mjs +28 -0
  89. package/dist/TheContent-DlLYa4WT.js +1 -0
  90. package/dist/TheContent-kfDEaXOp.mjs +28 -0
  91. package/dist/TheContent-mTUR10lr.mjs +28 -0
  92. package/dist/TheContent-q6q9KswZ.mjs +28 -0
  93. package/dist/UserContainer-B5OwFSHh.js +5 -0
  94. package/dist/UserContainer-BD0grJiW.js +5 -0
  95. package/dist/UserContainer-BxDgQxlT.mjs +2771 -0
  96. package/dist/UserContainer-CCerxkEw.mjs +2771 -0
  97. package/dist/UserContainer-CilrSMeD.mjs +2771 -0
  98. package/dist/UserContainer-CsxfRZ2W.js +5 -0
  99. package/dist/UserContainer-DQoP15se.mjs +2771 -0
  100. package/dist/UserContainer-DbdoSq-Q.js +5 -0
  101. package/dist/UserContainer-DuoEITq2.js +5 -0
  102. package/dist/UserContainer-hWvp6IhQ.mjs +2771 -0
  103. package/dist/UserDetail-Brs13Wua.js +1 -0
  104. package/dist/UserDetail-CJtccXfo.mjs +902 -0
  105. package/dist/UserDetail-C_pmgUnE.js +1 -0
  106. package/dist/UserDetail-CpPTUVCj.js +1 -0
  107. package/dist/UserDetail-Dp4Oq_j9.mjs +902 -0
  108. package/dist/UserDetail-DxGAQjfn.js +1 -0
  109. package/dist/UserDetail-GaRReB9G.mjs +902 -0
  110. package/dist/UserDetail-MHs6uPbO.mjs +902 -0
  111. package/dist/UserDetail-XHKLiGNl.mjs +902 -0
  112. package/dist/UserDetail-qXX-264Q.js +1 -0
  113. package/dist/UserList-7gE8aU_I.js +5 -0
  114. package/dist/UserList-B7sk8bc6.mjs +1162 -0
  115. package/dist/UserList-B_kL52Yt.js +5 -0
  116. package/dist/UserList-CNMbjvWP.mjs +1162 -0
  117. package/dist/UserList-CRwZa5DB.js +5 -0
  118. package/dist/UserList-CftAVe0u.mjs +1162 -0
  119. package/dist/UserList-CkOGJbgn.mjs +1162 -0
  120. package/dist/UserList-CrnzZCR6.mjs +1162 -0
  121. package/dist/UserList-D4V-QZm0.js +5 -0
  122. package/dist/UserList-DGX1gVn-.js +5 -0
  123. package/dist/assets/Images.d.ts +14 -14
  124. package/dist/components/Alerts/CommonAlert.d.ts +3 -3
  125. package/dist/components/Alerts/EmptyDataAlert.d.ts +8 -8
  126. package/dist/components/Alerts/ErrorHandler.d.ts +6 -6
  127. package/dist/components/Alerts/SandboxAlert.d.ts +3 -0
  128. package/dist/components/Buttons/AddButton.d.ts +7 -7
  129. package/dist/components/Buttons/AddButtonIcon.d.ts +6 -6
  130. package/dist/components/Buttons/CloseButton.d.ts +8 -8
  131. package/dist/components/Buttons/DeleteButtonIcon.d.ts +7 -6
  132. package/dist/components/Buttons/DetailActionButtons.d.ts +8 -8
  133. package/dist/components/Buttons/EditButtonIcon.d.ts +7 -6
  134. package/dist/components/Buttons/LinkEditButton.d.ts +7 -7
  135. package/dist/components/Buttons/LoginNavButton.d.ts +8 -8
  136. package/dist/components/Buttons/SyncButton.d.ts +8 -0
  137. package/dist/components/Buttons/ToggleButton.d.ts +10 -10
  138. package/dist/components/Buttons/UploadFileButton.d.ts +13 -13
  139. package/dist/components/Headers/CommonHeader.d.ts +7 -7
  140. package/dist/components/Image/UploadImage.d.ts +2 -3
  141. package/dist/components/Inputs/FileInput.d.ts +8 -8
  142. package/dist/components/Inputs/PasswordInput.d.ts +9 -8
  143. package/dist/components/Inputs/SearchBox.d.ts +10 -10
  144. package/dist/components/Inputs/SearchBoxContainer.d.ts +9 -10
  145. package/dist/components/Labels/RequiredLabel.d.ts +6 -6
  146. package/dist/components/Loading/Loading.d.ts +3 -3
  147. package/dist/components/Modals/CommonModal.d.ts +2 -3
  148. package/dist/components/Modals/NotificationLogoutModal.d.ts +2 -0
  149. package/dist/components/Modals/NotificationModal.d.ts +2 -3
  150. package/dist/components/Others/QuitPrompt.d.ts +5 -2
  151. package/dist/components/Pagination/CustomPagination.d.ts +2 -3
  152. package/dist/components/Scroll/ScrollToTop.d.ts +3 -0
  153. package/dist/components/Selectors/AcademicClassSelector.d.ts +2 -3
  154. package/dist/components/Selectors/CategorySelector.d.ts +2 -0
  155. package/dist/components/Selectors/CreatableSelector.d.ts +2 -3
  156. package/dist/components/Selectors/CustomSelector.d.ts +2 -3
  157. package/dist/components/Selectors/MailCategorySelectors.d.ts +2 -3
  158. package/dist/components/Selectors/QuestionCategorySelector.d.ts +2 -3
  159. package/dist/components/Selectors/QuestionTypeSelector.d.ts +2 -3
  160. package/dist/components/Selectors/StarRatingSelector.d.ts +2 -3
  161. package/dist/components/Selectors/SuggestionCategorySelector.d.ts +2 -3
  162. package/dist/components/Selectors/constants/constant.d.ts +10 -0
  163. package/dist/components/Selectors/hooks/useCategorySelector.d.ts +5 -0
  164. package/dist/components/Tabs/CustomTab.d.ts +2 -3
  165. package/dist/components/Tabs/TabsWithComponent.d.ts +10 -0
  166. package/dist/configs/editorConfig.d.ts +7 -7
  167. package/dist/constants-BDS_Ev5l.mjs +320 -0
  168. package/dist/constants-C4pJSK8g.mjs +320 -0
  169. package/dist/constants-CGewtxeZ.mjs +320 -0
  170. package/dist/constants-CNvNsffe.js +1 -0
  171. package/dist/constants-Clwj65ie.mjs +320 -0
  172. package/dist/constants-Dbpki_CG.js +1 -0
  173. package/dist/constants-Dk81SvKq.js +1 -0
  174. package/dist/constants-Dp8QZ8kV.js +1 -0
  175. package/dist/constants-ra-9n6_H.mjs +320 -0
  176. package/dist/constants-t9grLzgU.js +1 -0
  177. package/dist/containers/Commons/NotFound.d.ts +3 -3
  178. package/dist/containers/DistrictSchools/views/SchoolList.d.ts +3 -3
  179. package/dist/containers/EmailTemplate/components/AttachmentFile.d.ts +7 -7
  180. package/dist/containers/EmailTemplate/components/MailParam.d.ts +7 -7
  181. package/dist/containers/EmailTemplate/configs/emailTemplateSchema.d.ts +13 -13
  182. package/dist/containers/EmailTemplate/hooks/useEmailTemplateDetail.d.ts +28 -28
  183. package/dist/containers/EmailTemplate/hooks/useEmailTemplateList.d.ts +11 -12
  184. package/dist/containers/EmailTemplate/views/EmailTemplateDetail.d.ts +3 -3
  185. package/dist/containers/EmailTemplate/views/EmailTemplateList.d.ts +3 -3
  186. package/dist/containers/Gallery/components/ActionModal.d.ts +2 -3
  187. package/dist/containers/Gallery/components/Filter.d.ts +8 -8
  188. package/dist/containers/Gallery/components/Media.d.ts +7 -8
  189. package/dist/containers/Gallery/components/MediaDetail.d.ts +6 -7
  190. package/dist/containers/Gallery/components/MediaList.d.ts +7 -7
  191. package/dist/containers/Gallery/components/MediaNav.d.ts +17 -18
  192. package/dist/containers/Gallery/constants/gallery.types.d.ts +21 -20
  193. package/dist/containers/Gallery/extensions/helpers.d.ts +4 -4
  194. package/dist/containers/Gallery/hooks/useGalleryList.d.ts +30 -31
  195. package/dist/containers/Gallery/views/GalleryList.d.ts +6 -6
  196. package/dist/containers/Login/constant/authConfig.d.ts +38 -0
  197. package/dist/containers/Login/constant/types.d.ts +34 -0
  198. package/dist/containers/Login/hooks/useCreatePassword.d.ts +12 -0
  199. package/dist/containers/Login/hooks/useForgotPassword.d.ts +22 -21
  200. package/dist/containers/Login/hooks/useLogin.d.ts +29 -16
  201. package/dist/containers/Login/hooks/useLoginTwoFactor.d.ts +4 -4
  202. package/dist/containers/Login/views/Dashboard.d.ts +3 -3
  203. package/dist/containers/Login/views/Login.d.ts +9 -9
  204. package/dist/containers/Login/views/block/BlockBackground.d.ts +7 -0
  205. package/dist/containers/Login/views/block/BlockCreatePassword.d.ts +2 -0
  206. package/dist/containers/Login/views/block/BlockForgetPassword.d.ts +6 -3
  207. package/dist/containers/Login/views/block/BlockLogin.d.ts +21 -7
  208. package/dist/containers/Login/views/block/BlockResetPassword.d.ts +2 -3
  209. package/dist/containers/Login/views/block/BlockSelectTeacher.d.ts +10 -0
  210. package/dist/containers/Login/views/block/BlockTwoFactorLogin.d.ts +2 -3
  211. package/dist/containers/Login/views/block/CloseBlock.d.ts +6 -6
  212. package/dist/containers/Login/views/block/ContentHomePage.d.ts +5 -5
  213. package/dist/containers/Login/views/block/IconContent.d.ts +7 -7
  214. package/dist/containers/Login/views/block/QuoteContent.d.ts +2 -7
  215. package/dist/containers/Notifications/components/NotificationButton.d.ts +5 -5
  216. package/dist/containers/Notifications/components/NotificationStatusSelector.d.ts +6 -7
  217. package/dist/containers/Notifications/hooks/useNotificationList.d.ts +17 -14
  218. package/dist/containers/Notifications/hooks/useUnreadNotification.d.ts +4 -4
  219. package/dist/containers/Notifications/views/NotificationList.d.ts +2 -3
  220. package/dist/containers/Skill/components/SkillDetailModal.d.ts +2 -3
  221. package/dist/containers/Skill/components/SkillSelector.d.ts +2 -3
  222. package/dist/containers/Skill/hooks/useSkillDetail.d.ts +19 -20
  223. package/dist/containers/Skill/hooks/useSkillList.d.ts +9 -10
  224. package/dist/containers/Skill/views/SkillList.d.ts +3 -3
  225. package/dist/containers/User/components/AssignStudentModal.d.ts +20 -0
  226. package/dist/containers/User/components/DeleteBulkModel copy.d.ts +4 -0
  227. package/dist/containers/User/components/DeleteBulkModel.d.ts +3 -0
  228. package/dist/containers/User/components/FilterPopover.d.ts +21 -0
  229. package/dist/containers/User/components/HeaderCell.d.ts +19 -0
  230. package/dist/containers/User/components/RemoveAssistant.d.ts +3 -0
  231. package/dist/containers/User/components/RemoveCounselor.d.ts +3 -0
  232. package/dist/containers/User/components/RemoveSupportTeacher.d.ts +3 -0
  233. package/dist/containers/User/components/RemoveTeacher.d.ts +3 -0
  234. package/dist/containers/User/components/SwitchDataTeacherModel.d.ts +12 -0
  235. package/dist/containers/User/components/SwitchTeacherModal.d.ts +2 -0
  236. package/dist/containers/User/components/TableHeader.d.ts +15 -0
  237. package/dist/containers/User/components/TeacherSelector.d.ts +2 -0
  238. package/dist/containers/User/components/UploadCSVButton.d.ts +11 -0
  239. package/dist/containers/User/components/UserDeletedModal.d.ts +2 -0
  240. package/dist/containers/User/configs/changePasswordSchema.d.ts +11 -0
  241. package/dist/containers/User/configs/userSchema.d.ts +13 -15
  242. package/dist/containers/User/configs/utils.d.ts +8 -0
  243. package/dist/containers/User/constants/constants.d.ts +63 -0
  244. package/dist/containers/User/constants/types.d.ts +265 -0
  245. package/dist/containers/User/hooks/useAssignStudent.d.ts +44 -0
  246. package/dist/containers/User/hooks/useAssignStudentList.d.ts +36 -0
  247. package/dist/containers/User/hooks/useAssistantList.d.ts +9 -0
  248. package/dist/containers/User/hooks/useCSVImport.d.ts +37 -0
  249. package/dist/containers/User/hooks/useCSVImportTab.d.ts +45 -0
  250. package/dist/containers/User/hooks/useClickOutside.d.ts +2 -0
  251. package/dist/containers/User/hooks/useCounselorList.d.ts +9 -0
  252. package/dist/containers/User/hooks/useExportUsersCsv.d.ts +5 -0
  253. package/dist/containers/User/hooks/useFilterPopover.d.ts +37 -0
  254. package/dist/containers/User/hooks/useResendMail.d.ts +5 -0
  255. package/dist/containers/User/hooks/useRosterUserSelector.d.ts +8 -0
  256. package/dist/containers/User/hooks/useSecondaryTeacherList.d.ts +9 -0
  257. package/dist/containers/User/hooks/useTableHeader.d.ts +20 -0
  258. package/dist/containers/User/hooks/useTeacherList.d.ts +9 -0
  259. package/dist/containers/User/hooks/useUserDeletedList.d.ts +21 -0
  260. package/dist/containers/User/hooks/useUserDeletedModal.d.ts +13 -0
  261. package/dist/containers/User/hooks/useUserDetail.d.ts +41 -22
  262. package/dist/containers/User/hooks/useUserList.d.ts +18 -11
  263. package/dist/containers/User/hooks/userFilters.d.ts +7 -0
  264. package/dist/containers/User/views/AssignStudentList.d.ts +2 -0
  265. package/dist/containers/User/views/CSVImport.d.ts +3 -0
  266. package/dist/containers/User/views/RosterUserSelector.d.ts +8 -0
  267. package/dist/containers/User/views/UserContainer.d.ts +2 -0
  268. package/dist/containers/User/views/UserDeletedList.d.ts +2 -0
  269. package/dist/containers/User/views/UserDetail.d.ts +2 -3
  270. package/dist/containers/User/views/UserList.d.ts +2 -3
  271. package/dist/hooks/useFilters.d.ts +7 -0
  272. package/dist/hooks/useLanguages.d.ts +9 -0
  273. package/dist/i18n.d.ts +2 -0
  274. package/dist/index-B4U_4-fu.js +15 -0
  275. package/dist/index-BTZpY1uf.mjs +17606 -0
  276. package/dist/index-BlgOYHBz.js +15 -0
  277. package/dist/index-CFvswiRi.mjs +17591 -0
  278. package/dist/index-Cmo6_CCl.js +15 -0
  279. package/dist/index-D-Z2VEoE.js +15 -0
  280. package/dist/index-DSGOm1zi.js +15 -0
  281. package/dist/index-DvGA0ecI.mjs +17608 -0
  282. package/dist/index-S9mI_rxc.mjs +17608 -0
  283. package/dist/index-mofrQOyf.mjs +17608 -0
  284. package/dist/index.css +1037 -296
  285. package/dist/index.d.ts +114 -101
  286. package/dist/index.esm-B5Zde_ik.js +1 -0
  287. package/dist/index.esm-B63qcj54.js +1 -0
  288. package/dist/index.esm-BtSbIjvM.mjs +19 -0
  289. package/dist/index.esm-CWv2HCrn.mjs +19 -0
  290. package/dist/index.esm-CryF_PoG.js +1 -0
  291. package/dist/index.esm-D1KTN__I.js +1 -0
  292. package/dist/index.esm-D6Zacg53.mjs +19 -0
  293. package/dist/index.esm-DMTAvOCa.js +1 -0
  294. package/dist/index.esm-fD-khqqa.mjs +19 -0
  295. package/dist/index.esm-l7AIvAYG.mjs +19 -0
  296. package/dist/index.js +24 -7493
  297. package/dist/index.js.map +1 -1
  298. package/dist/index.modern.js +28545 -6956
  299. package/dist/index.modern.js.map +1 -1
  300. package/dist/layouts/TheContent.d.ts +2 -3
  301. package/dist/mailCategoryService-B19vYJRa.js +1 -0
  302. package/dist/mailCategoryService-Bb3FPk-a.mjs +11 -0
  303. package/dist/mailCategoryService-Bdq58J2L.js +1 -0
  304. package/dist/mailCategoryService-By7wn1rV.mjs +11 -0
  305. package/dist/mailCategoryService-CEgGm2FV.js +1 -0
  306. package/dist/mailCategoryService-C_ZJZs-z.js +1 -0
  307. package/dist/mailCategoryService-Dis1n9kR.mjs +11 -0
  308. package/dist/mailCategoryService-M_l9miAs.mjs +11 -0
  309. package/dist/mailCategoryService-T_3sXv5B.mjs +11 -0
  310. package/dist/mailCategoryService-_WxeTzNN.js +1 -0
  311. package/dist/mario-core.css +1 -0
  312. package/dist/redux/assessments/action.d.ts +1 -1
  313. package/dist/redux/assessments/reducer.d.ts +10 -5
  314. package/dist/redux/assignment/action.d.ts +1 -1
  315. package/dist/redux/assignment/reducer.d.ts +4 -2
  316. package/dist/redux/assistants/action.d.ts +1 -1
  317. package/dist/redux/assistants/reducer.d.ts +4 -2
  318. package/dist/redux/badges/action.d.ts +1 -1
  319. package/dist/redux/badges/reducer.d.ts +4 -2
  320. package/dist/redux/bandScores/action.d.ts +1 -1
  321. package/dist/redux/bandScores/reducer.d.ts +4 -2
  322. package/dist/redux/certificate/action.d.ts +1 -1
  323. package/dist/redux/certificate/reducer.d.ts +4 -2
  324. package/dist/redux/classes/action.d.ts +1 -1
  325. package/dist/redux/classes/reducer.d.ts +4 -2
  326. package/dist/redux/commons/action.d.ts +23 -8
  327. package/dist/redux/commons/reducer.d.ts +4 -2
  328. package/dist/redux/conferenceRubrics/action.d.ts +1 -1
  329. package/dist/redux/conferenceRubrics/reducer.d.ts +4 -2
  330. package/dist/redux/customAlert/action.d.ts +1 -1
  331. package/dist/redux/customAlert/reducer.d.ts +4 -2
  332. package/dist/redux/dashboard/action.d.ts +5 -4
  333. package/dist/redux/dashboard/reducer.d.ts +4 -2
  334. package/dist/redux/dataPlayer/action.d.ts +2 -2
  335. package/dist/redux/dataPlayer/reducer.d.ts +4 -2
  336. package/dist/redux/emailTemplates/action.d.ts +1 -1
  337. package/dist/redux/emailTemplates/reducer.d.ts +4 -2
  338. package/dist/redux/faqs/action.d.ts +1 -1
  339. package/dist/redux/faqs/reducer.d.ts +4 -2
  340. package/dist/redux/feedback/action.d.ts +1 -1
  341. package/dist/redux/feedback/reducer.d.ts +4 -2
  342. package/dist/redux/gallery/action.d.ts +2 -2
  343. package/dist/redux/gallery/reducer.d.ts +4 -2
  344. package/dist/redux/goalExamples/action.d.ts +1 -1
  345. package/dist/redux/goalExamples/reducer.d.ts +4 -2
  346. package/dist/redux/improveMyClass/action.d.ts +1 -1
  347. package/dist/redux/improveMyClass/reducer.d.ts +4 -2
  348. package/dist/redux/learningStrategies/action.d.ts +1 -1
  349. package/dist/redux/learningStrategies/reducer.d.ts +4 -2
  350. package/dist/redux/learningSupportCategories/action.d.ts +1 -1
  351. package/dist/redux/learningSupportCategories/reducer.d.ts +4 -2
  352. package/dist/redux/mailCategories/action.d.ts +1 -1
  353. package/dist/redux/mailCategories/reducer.d.ts +4 -2
  354. package/dist/redux/navMobile/action.d.ts +1 -0
  355. package/dist/redux/navMobile/reducer.d.ts +4 -0
  356. package/dist/redux/notifications/action.d.ts +3 -3
  357. package/dist/redux/notifications/reducer.d.ts +4 -2
  358. package/dist/redux/questionBanks/action.d.ts +1 -1
  359. package/dist/redux/questionBanks/reducer.d.ts +4 -2
  360. package/dist/redux/questionByCategory/action.d.ts +8 -8
  361. package/dist/redux/questionByCategory/reducer.d.ts +4 -2
  362. package/dist/redux/questionCategory/action.d.ts +1 -1
  363. package/dist/redux/questionCategory/reducer.d.ts +4 -2
  364. package/dist/redux/reflectionForms/action.d.ts +1 -1
  365. package/dist/redux/reflectionForms/reducer.d.ts +4 -2
  366. package/dist/redux/reflectionResults/action.d.ts +1 -1
  367. package/dist/redux/reflectionResults/reducer.d.ts +4 -2
  368. package/dist/redux/schoolBlankDays/action.d.ts +1 -1
  369. package/dist/redux/schoolBlankDays/reducer.d.ts +4 -2
  370. package/dist/redux/semester/action.d.ts +1 -1
  371. package/dist/redux/semester/reducer.d.ts +4 -2
  372. package/dist/redux/sessionPlayers/action.d.ts +5 -4
  373. package/dist/redux/sessionPlayers/reducer.d.ts +4 -2
  374. package/dist/redux/sessionTemplateGeneralClasses/action.d.ts +1 -1
  375. package/dist/redux/sessionTemplateGeneralClasses/reducer.d.ts +4 -2
  376. package/dist/redux/sessionTemplates/action.d.ts +1 -1
  377. package/dist/redux/sessionTemplates/reducer.d.ts +4 -2
  378. package/dist/redux/skills/action.d.ts +1 -1
  379. package/dist/redux/skills/reducer.d.ts +4 -2
  380. package/dist/redux/subjects/action.d.ts +1 -1
  381. package/dist/redux/subjects/reducer.d.ts +4 -2
  382. package/dist/redux/suggestionBanks/action.d.ts +1 -1
  383. package/dist/redux/suggestionBanks/reducer.d.ts +4 -2
  384. package/dist/redux/teacher/myStudent/action.d.ts +1 -1
  385. package/dist/redux/teacher/myStudent/reducer.d.ts +4 -2
  386. package/dist/redux/tutorialScreen/action.d.ts +1 -1
  387. package/dist/redux/tutorialScreen/reducer.d.ts +10 -5
  388. package/dist/redux/users/action.d.ts +2 -2
  389. package/dist/redux/users/reducer.d.ts +4 -2
  390. package/dist/redux/weeklyQuests/action.d.ts +2 -0
  391. package/dist/redux/weeklyQuests/reducer.d.ts +12 -0
  392. package/dist/redux/widget/action.d.ts +1 -1
  393. package/dist/redux/widget/reducer.d.ts +4 -2
  394. package/dist/rootReducer.d.ts +106 -48
  395. package/dist/services/accountService.d.ts +22 -8
  396. package/dist/services/api.d.ts +3 -3
  397. package/dist/services/classService.d.ts +1 -1
  398. package/dist/services/csvImportService.d.ts +9 -0
  399. package/dist/services/csvService.d.ts +8 -0
  400. package/dist/services/emailTemplateService.d.ts +7 -6
  401. package/dist/services/fileServices.d.ts +13 -13
  402. package/dist/services/galleryService.d.ts +2 -2
  403. package/dist/services/mailCategoryService.d.ts +1 -1
  404. package/dist/services/notificationService.d.ts +7 -6
  405. package/dist/services/questionCategoryService.d.ts +3 -1
  406. package/dist/services/schoolService.d.ts +2 -0
  407. package/dist/services/skillService.d.ts +6 -6
  408. package/dist/services/suggestionCategoryService.d.ts +1 -1
  409. package/dist/services/userService.d.ts +37 -7
  410. package/dist/store.d.ts +3 -3
  411. package/dist/types/Conversation.d.ts +8 -8
  412. package/dist/types/ConversationMember.d.ts +5 -5
  413. package/dist/types/Dashboard.d.ts +5 -5
  414. package/dist/types/Filter.d.ts +16 -10
  415. package/dist/types/Language.d.ts +8 -0
  416. package/dist/types/Message.d.ts +13 -13
  417. package/dist/types/Notification.d.ts +8 -8
  418. package/dist/types/Payload.d.ts +17 -0
  419. package/dist/types/user.d.ts +3 -0
  420. package/dist/types-BvnbDeJF.mjs +5 -0
  421. package/dist/types-CTFcZUFS.js +1 -0
  422. package/dist/utils/canAccessRoute.d.ts +2 -2
  423. package/dist/utils/constants.d.ts +87 -57
  424. package/dist/utils/debounce.d.ts +2 -2
  425. package/dist/utils/domHelpers.d.ts +2 -2
  426. package/dist/utils/encodeParams.d.ts +2 -2
  427. package/dist/utils/firstCheckToken.d.ts +2 -2
  428. package/dist/utils/generateRandomString.d.ts +2 -2
  429. package/dist/utils/getAccessToken.d.ts +2 -2
  430. package/dist/utils/getCookieValue.d.ts +2 -0
  431. package/dist/utils/getFileUrl.d.ts +2 -2
  432. package/dist/utils/getStaticFileUrl.d.ts +2 -0
  433. package/dist/utils/getTextFromHTML.d.ts +2 -2
  434. package/dist/utils/utcToLocalTime.d.ts +1 -2
  435. package/package.json +79 -63
  436. package/dist/components/Alerts/ReactNotification.d.ts +0 -4
  437. package/dist/containers/Faq/components/FaqDetailModal.d.ts +0 -3
  438. package/dist/containers/Faq/hooks/useFaqDetail.d.ts +0 -18
  439. package/dist/containers/Faq/hooks/useFaqList.d.ts +0 -10
  440. package/dist/containers/Faq/views/FaqList.d.ts +0 -3
  441. package/dist/layouts/TheFooter.d.ts +0 -3
  442. package/dist/layouts/TheHeader.d.ts +0 -3
  443. package/dist/layouts/TheHeaderDropdown.d.ts +0 -3
  444. package/dist/layouts/TheLayout.d.ts +0 -3
  445. package/dist/layouts/TheSidebar.d.ts +0 -3
  446. package/dist/services/faqService.d.ts +0 -6
@@ -0,0 +1,2771 @@
1
+ import { jsxs as u, jsx as e, Fragment as tt } from "react/jsx-runtime";
2
+ import { b as F, c as I, J as nt, G as St, s as O, X as Q, _ as pt, Q as gt, $ as bt, D as Nt, a0 as wt, a1 as ct, Y as Ut, L as $t, P as Et, i as ft, B as vt, a2 as rt, a3 as ot, U as Le, E as at, a4 as kt } from "./index-BTZpY1uf.mjs";
3
+ import { T as Dt, v as Mt, U as Ot } from "./UserList-CrnzZCR6.mjs";
4
+ import { useState as _, useMemo as Be, useCallback as G, useEffect as te, forwardRef as yt, Fragment as Je, useRef as xt } from "react";
5
+ import { Modal as Ce, ModalHeader as Se, ModalBody as be, ModalFooter as Ne, Button as J, Collapse as At, Card as Rt, CardBody as Lt, Row as ae, Col as j, Nav as Bt, NavItem as Ft, NavLink as Pt, TabContent as Jt, TabPane as jt, CardText as zt, Table as Tt, Tooltip as Ee, Alert as ke, Label as Vt, Input as De } from "reactstrap";
6
+ import { useTranslation as Y } from "react-i18next";
7
+ import { D as qt, i as Wt, g as Gt, a as Ht, b as Kt, c as Qt, d as Xt, T as B, e as Fe, f as it, r as Yt, h as Me, j as Zt, u as ea, k as ta, l as aa, m as sa, n as na, G as dt, S as _e, U as Ie, o as _t } from "./constants-Clwj65ie.mjs";
8
+ import { T as xe } from "./TeacherSelector-CAo3E6h-.mjs";
9
+ import { useDispatch as re, useSelector as ra } from "react-redux";
10
+ import la from "react-select";
11
+ import { Formik as ca } from "formik";
12
+ import { A as ht } from "./index.esm-fD-khqqa.mjs";
13
+ import * as Oe from "yup";
14
+ import oa from "papaparse";
15
+ const ia = () => {
16
+ const s = re(), [l, c] = _([]), [r, a] = _(qt), [d, S] = _(0), [g, n] = _(!1), [i, T] = _([]), [o, U] = _([]), [E, A] = _(Wt), C = "", h = (D) => {
17
+ const $ = {
18
+ ...r,
19
+ ...D
20
+ };
21
+ $.searchString && D.searchString && D.searchString != r.searchString && ($.currentPage = 1), a($);
22
+ }, b = Be(() => {
23
+ const D = l.filter((y) => i.includes(y.id)).flatMap((y) => y.teachers), $ = /* @__PURE__ */ new Map();
24
+ return D.forEach((y) => {
25
+ $.has(y.teacherUserId) || $.set(y.teacherUserId, y);
26
+ }), Array.from($.values()).map((y) => ({
27
+ value: y.teacherUserId,
28
+ label: y.mainTeacherEmail
29
+ }));
30
+ }, [o, i]), R = Be(() => {
31
+ const D = l.filter((y) => i.includes(y.id)).flatMap((y) => y.counselors), $ = /* @__PURE__ */ new Map();
32
+ return D.forEach((y) => {
33
+ $.has(y.counselorUserId) || $.set(y.counselorUserId, y);
34
+ }), Array.from($.values()).map((y) => ({
35
+ value: y.counselorUserId,
36
+ label: y.counselorEmail
37
+ }));
38
+ }, [o, i]), z = Be(() => {
39
+ const D = l.filter((y) => i.includes(y.id) && y.assistantUserId).map((y) => ({
40
+ value: y.assistantUserId,
41
+ label: y.assistantEmail
42
+ })), $ = /* @__PURE__ */ new Map();
43
+ return D.forEach((y) => {
44
+ $.has(y.value) || $.set(y.value, y);
45
+ }), Array.from($.values());
46
+ }, [l, i]), q = Be(() => {
47
+ const D = l.filter((y) => i.includes(y.id) && y.secondaryTeacherUserId).map((y) => ({
48
+ value: y.secondaryTeacherUserId,
49
+ label: y.secondaryTeacherEmail
50
+ })), $ = /* @__PURE__ */ new Map();
51
+ return D.forEach((y) => {
52
+ $.has(y.value) || $.set(y.value, y);
53
+ }), Array.from($.values());
54
+ }, [l, i]), de = G((D) => {
55
+ D !== r.sortBy ? h({
56
+ sortBy: D,
57
+ orderBy: "ASC",
58
+ currentPage: 1
59
+ }) : h({
60
+ sortBy: D,
61
+ orderBy: r.orderBy !== "DESC" ? "DESC" : "ASC",
62
+ currentPage: 1
63
+ });
64
+ }, [JSON.stringify(r)]), se = async () => {
65
+ s(F(!0));
66
+ try {
67
+ const D = Object.entries(r).filter(([N, M]) => M !== void 0).reduce((N, [M, L]) => (N[M] = L, N), {}), $ = {};
68
+ for (const N in D) {
69
+ const M = N.charAt(0).toLowerCase() + N.slice(1);
70
+ $[M] = D[N];
71
+ }
72
+ const y = await Gt($);
73
+ c(y?.data?.items), S(y?.data?.totalItems);
74
+ } catch (D) {
75
+ s(
76
+ I({
77
+ type: "danger",
78
+ message: D.response?.data?.title || D.message
79
+ })
80
+ );
81
+ }
82
+ s(F(!1));
83
+ }, X = () => {
84
+ n(!g), T(l.map((D) => D.id)), U(l), g && (T([]), U([]));
85
+ }, he = (D) => {
86
+ const { id: $, checked: y } = D.target;
87
+ if (y) {
88
+ T((M) => [...M, $]);
89
+ const N = l.find((M) => M.id === $);
90
+ N && U((M) => [...M, N]);
91
+ } else
92
+ T((N) => N.filter((M) => M !== $)), U((N) => N.filter((M) => M.id !== $));
93
+ }, ue = G(() => {
94
+ r.currentPage == 1 ? se() : h({ currentPage: 1 }), T([]), U([]), n(!1);
95
+ }, [JSON.stringify(r)]);
96
+ return te(() => {
97
+ se();
98
+ }, [JSON.stringify(r)]), te(() => {
99
+ document.title = "User | Assign student";
100
+ }, []), te(() => {
101
+ h({
102
+ ...r,
103
+ searchString: C
104
+ });
105
+ }, [C]), {
106
+ handelSort: de,
107
+ handleRetrievedData: ue,
108
+ totalItem: d,
109
+ userList: l,
110
+ filters: r,
111
+ changeFilters: h,
112
+ handleSelectAll: X,
113
+ handleClickCheck: he,
114
+ isCheckAll: g,
115
+ isCheck: i,
116
+ fullName: C,
117
+ selectedUser: E,
118
+ setSelectedUser: A,
119
+ userSelected: o,
120
+ getDataUserList: se,
121
+ studentTeacherSelected: b,
122
+ studentCounselorSelected: R,
123
+ studentAssistantSelected: z,
124
+ studentSecondaryTeacherSelected: q
125
+ };
126
+ }, da = () => {
127
+ const s = re(), [l, c] = _([]), [r, a] = _(), d = async () => {
128
+ try {
129
+ const n = await Ht();
130
+ n.data.items && c(n.data.items.map?.((i) => ({
131
+ label: i.email,
132
+ value: i.id
133
+ })) || []);
134
+ } catch (n) {
135
+ s(
136
+ I({
137
+ type: "danger",
138
+ message: n.response?.data?.title || n.message
139
+ })
140
+ );
141
+ }
142
+ }, S = G((n, i) => {
143
+ let T = l.find((o) => o.value === n);
144
+ a({
145
+ ...r,
146
+ [i]: T
147
+ });
148
+ }, [JSON.stringify(r), JSON.stringify(l)]), g = G((n, i, T) => {
149
+ c([
150
+ ...l,
151
+ n
152
+ ]), T && a({
153
+ ...r,
154
+ [i]: n
155
+ });
156
+ }, [JSON.stringify(l), JSON.stringify(r)]);
157
+ return te(() => {
158
+ d();
159
+ }, []), {
160
+ selectedCounselors: r,
161
+ counselorOptions: l,
162
+ handleSelectCounselor: S,
163
+ handleCreateCounselorOption: g,
164
+ setSelectedCounselors: a
165
+ };
166
+ }, ha = () => {
167
+ const s = re(), [l, c] = _([]), [r, a] = _(), d = async () => {
168
+ try {
169
+ const n = await Kt();
170
+ n.data.items && c(n.data.items.map?.((i) => ({
171
+ label: i.email,
172
+ value: i.id
173
+ })) || []);
174
+ } catch (n) {
175
+ s(
176
+ I({
177
+ type: "danger",
178
+ message: n.response?.data?.title || n.message
179
+ })
180
+ );
181
+ }
182
+ }, S = G((n, i) => {
183
+ let T = l.find((o) => o.value === n);
184
+ a({
185
+ ...r,
186
+ [i]: T
187
+ });
188
+ }, [JSON.stringify(r), JSON.stringify(l)]), g = G((n, i, T) => {
189
+ c([
190
+ ...l,
191
+ n
192
+ ]), T && a({
193
+ ...r,
194
+ [i]: n
195
+ });
196
+ }, [JSON.stringify(l), JSON.stringify(r)]);
197
+ return te(() => {
198
+ d();
199
+ }, []), {
200
+ selectedAssistants: r,
201
+ assistantOptions: l,
202
+ handleSelectAssistant: S,
203
+ handleCreateAssistantOption: g,
204
+ setSelectedAssistants: a
205
+ };
206
+ }, ua = () => {
207
+ const s = re(), [l, c] = _([]), [r, a] = _(), d = async () => {
208
+ try {
209
+ const n = await Qt();
210
+ n.data.items && c(n.data.items.map?.((i) => ({
211
+ label: i.email,
212
+ value: i.id,
213
+ id: i.secondaryTeacherId
214
+ })) || []);
215
+ } catch (n) {
216
+ s(
217
+ I({
218
+ type: "danger",
219
+ message: n.response?.data?.title || n.message
220
+ })
221
+ );
222
+ }
223
+ }, S = G((n, i) => {
224
+ let T = l.find((o) => o.value === n);
225
+ a({
226
+ ...r,
227
+ [i]: T
228
+ });
229
+ }, [JSON.stringify(r), JSON.stringify(l)]), g = G((n, i, T) => {
230
+ c([
231
+ ...l,
232
+ n
233
+ ]), T && a({
234
+ ...r,
235
+ [i]: n
236
+ });
237
+ }, [JSON.stringify(l), JSON.stringify(r)]);
238
+ return te(() => {
239
+ d();
240
+ }, []), {
241
+ selectedSecondaryTeachers: r,
242
+ secondaryTeacherOptions: l,
243
+ handleSelectSecondaryTeacher: S,
244
+ handleCreateSecondaryTeacherOption: g,
245
+ setSelectedSecondaryTeachers: a
246
+ };
247
+ }, ma = () => {
248
+ const s = re(), [l, c] = _([]), [r, a] = _(), d = async () => {
249
+ try {
250
+ const n = await Xt({
251
+ sortBy: "Email"
252
+ });
253
+ n.data && c(n.data.map?.((i) => ({
254
+ label: i.email,
255
+ value: i.id
256
+ })) || []);
257
+ } catch (n) {
258
+ s(
259
+ I({
260
+ type: "danger",
261
+ message: n.response?.data?.title || n.message
262
+ })
263
+ );
264
+ }
265
+ }, S = G((n, i) => {
266
+ let T = l.filter((o) => n.includes(o.value));
267
+ a({
268
+ ...r,
269
+ [i]: T
270
+ });
271
+ }, [JSON.stringify(r), JSON.stringify(l)]), g = G((n, i, T) => {
272
+ c([
273
+ ...l,
274
+ n
275
+ ]), T && a({
276
+ ...r,
277
+ [i]: n
278
+ });
279
+ }, [JSON.stringify(l), JSON.stringify(r)]);
280
+ return te(() => {
281
+ d();
282
+ }, []), {
283
+ selectedTeachers: r,
284
+ teacherOptions: l,
285
+ handleSelectTeacher: S,
286
+ handleCreateTeacherOption: g,
287
+ setSelectedTeachers: a
288
+ };
289
+ }, pa = (s, l) => {
290
+ const c = [];
291
+ if (l === B.Teacher)
292
+ for (const a of s)
293
+ for (const d of a.teachers || [])
294
+ c.push({
295
+ label: d.mainTeacherEmail,
296
+ value: d.teacherUserId,
297
+ name: d.mainTeacherName
298
+ });
299
+ else if (l === B.Assistant)
300
+ for (const a of s)
301
+ a.assistantEmail && a.assistantUserId && c.push({
302
+ label: a.assistantEmail,
303
+ value: a.assistantUserId,
304
+ name: a.assistantName || ""
305
+ });
306
+ else if (l === B.Counselor)
307
+ for (const a of s)
308
+ for (const d of a.counselors || [])
309
+ c.push({
310
+ label: d.counselorEmail,
311
+ value: d.counselorUserId,
312
+ name: d.counselorName
313
+ });
314
+ const r = /* @__PURE__ */ new Map();
315
+ for (const a of c)
316
+ r.has(a.value) || r.set(a.value, a);
317
+ return Array.from(r.values()).sort(
318
+ (a, d) => a.label.localeCompare(d.label)
319
+ );
320
+ }, ga = (s, l, c, r, a, d, S, g) => {
321
+ const n = re(), [i, T] = _(!1), [o, U] = _(Fe), [E, A] = _(!1), [C, h] = _(!1), [b, R] = _(B.Teacher), [z, q] = _([]), [de, se] = _([]), [X, he] = _([]), [ue, D] = _({
322
+ header: "",
323
+ titleSelect: "",
324
+ selectPlaceholder: "",
325
+ changeTitle: "",
326
+ changePlaceholder: ""
327
+ }), [$, y] = _(""), [N, M] = _(""), [L, Z] = _(!1), [H, ee] = _(0), [K, me] = _([]), [ne, pe] = _(""), [ge, le] = _(!1), [ce, oe] = _(!1), [V, ie] = _(it), W = (m) => {
328
+ ie({
329
+ ...V,
330
+ ...m
331
+ });
332
+ }, fe = (m) => {
333
+ if (m && m.length === 0) {
334
+ n(
335
+ I({
336
+ type: "danger",
337
+ message: "Please select students!"
338
+ })
339
+ );
340
+ return;
341
+ }
342
+ oe(!ce), U({ ...Fe }), ie({ ...it });
343
+ }, ve = () => {
344
+ le(!ge), pe("");
345
+ }, we = (m) => {
346
+ K.includes(m) ? me(K.filter((p) => p !== m)) : me([...K, m]);
347
+ }, Ue = (m) => {
348
+ ee((p) => p === m ? -1 : m);
349
+ }, Ae = (m) => {
350
+ if (m && m.length === 0) {
351
+ n(
352
+ I({
353
+ type: "danger",
354
+ message: "Please select students!"
355
+ })
356
+ );
357
+ return;
358
+ }
359
+ T(!i), U({ ...Fe });
360
+ }, je = (m, p, f) => {
361
+ if (m && m.length === 0) {
362
+ n(
363
+ I({
364
+ type: "danger",
365
+ message: "Please select students!"
366
+ })
367
+ );
368
+ return;
369
+ }
370
+ switch (he(m), se(pa(m, p)), R(p), p) {
371
+ case B.Teacher:
372
+ D({
373
+ header: "switch_teacher",
374
+ titleSelect: "current_teacher_name",
375
+ selectPlaceholder: "select_teacher",
376
+ changeTitle: "select_teacher_change",
377
+ changePlaceholder: "select_teacher_change"
378
+ });
379
+ break;
380
+ case B.Assistant:
381
+ D({
382
+ header: "switch_assistant",
383
+ titleSelect: "current_assistant_name",
384
+ selectPlaceholder: "",
385
+ changeTitle: "",
386
+ changePlaceholder: "select_assistant_change"
387
+ });
388
+ break;
389
+ case B.Counselor:
390
+ D({
391
+ header: "switch_counselor",
392
+ titleSelect: "current_counselor_name",
393
+ selectPlaceholder: "select_counselor",
394
+ changeTitle: "select_counselor_change",
395
+ changePlaceholder: "select_counselor_change"
396
+ });
397
+ break;
398
+ case B.SecondaryTeacher:
399
+ D({
400
+ header: "switch_support_teacher",
401
+ titleSelect: "current_assistant_name",
402
+ selectPlaceholder: "",
403
+ changeTitle: "",
404
+ changePlaceholder: "select_support_teacher_change"
405
+ });
406
+ break;
407
+ }
408
+ h(!C), q(f);
409
+ }, Te = () => {
410
+ q([]), h(!1), Z(!1), R(B.Teacher), se([]), y(""), M(""), D({
411
+ header: "",
412
+ titleSelect: "",
413
+ selectPlaceholder: "",
414
+ changeTitle: "",
415
+ changePlaceholder: ""
416
+ }), me([]);
417
+ }, ze = () => {
418
+ Z(!1), ee(0), me([]);
419
+ }, Ve = async (m, p) => {
420
+ n(
421
+ nt({
422
+ isOpen: !0,
423
+ type: "warning",
424
+ message: `Do you want to change ${p === B.Teacher ? "teacher" : p === B.Assistant ? "assistant" : p === B.SecondaryTeacher ? "support teacher" : "counselor"} for ${m.length} student(s)?`,
425
+ onConfirm: async () => {
426
+ n(F(!0));
427
+ try {
428
+ const f = p === B.Teacher ? await ta(m) : p === B.Assistant ? await aa(m) : p === B.Counselor ? await sa(m) : await na(m);
429
+ f && f?.data && (Te(), a?.(), await S(), n(
430
+ I({
431
+ type: "success",
432
+ message: `Change ${p === B.Teacher ? "teacher" : p === B.Assistant ? "assistant" : p === B.SecondaryTeacher ? "support teacher" : "counselor"} successfully`
433
+ })
434
+ ));
435
+ } catch (f) {
436
+ n(
437
+ I({
438
+ type: "danger",
439
+ message: f.response?.data?.title || f.message
440
+ })
441
+ );
442
+ }
443
+ n(F(!1));
444
+ }
445
+ })
446
+ );
447
+ }, qe = () => {
448
+ let m = [];
449
+ switch (b) {
450
+ case B.Teacher:
451
+ m = X.filter((p) => {
452
+ const f = p.teachers.map((x) => x.teacherUserId);
453
+ return f.includes(N) && !f.includes($);
454
+ }).map((p) => ({
455
+ studentId: p.studentId,
456
+ teacher: N,
457
+ teacherChange: $
458
+ }));
459
+ break;
460
+ case B.Counselor:
461
+ m = X.filter((p) => {
462
+ const f = p.counselors.map((x) => x.counselorUserId);
463
+ return f.includes(N) && !f.includes($);
464
+ }).map((p) => ({
465
+ studentId: p.studentId,
466
+ counselor: N,
467
+ counselorChange: $
468
+ }));
469
+ break;
470
+ case B.Assistant:
471
+ m = X.filter((p) => p?.assistantUserId && p?.teachers?.length > 0).map((p) => ({
472
+ studentId: p.studentId,
473
+ assistantUserId: $
474
+ }));
475
+ break;
476
+ case B.SecondaryTeacher:
477
+ m = X.filter((p) => p?.secondaryTeacherUserId && p?.teachers?.length > 0).map((p) => ({
478
+ studentId: p.studentId,
479
+ secondaryTeacherId: $
480
+ }));
481
+ break;
482
+ }
483
+ if (m.length === 0) {
484
+ n(
485
+ I({
486
+ type: "danger",
487
+ message: "No change to update!"
488
+ })
489
+ );
490
+ return;
491
+ }
492
+ Ve(m || [], b);
493
+ }, We = (m) => {
494
+ if (m && m.length === 0) {
495
+ n(
496
+ I({
497
+ type: "danger",
498
+ message: "Please select student(s)!"
499
+ })
500
+ );
501
+ return;
502
+ }
503
+ A(!E);
504
+ }, Ge = (m, p) => {
505
+ switch (m) {
506
+ case "assistant":
507
+ U({
508
+ ...o,
509
+ assistantId: p.value,
510
+ assistantEmail: p.label
511
+ });
512
+ break;
513
+ case "secondary":
514
+ U({
515
+ ...o,
516
+ secondaryTeacherId: p.value,
517
+ secondaryTeacherEmail: p.label
518
+ });
519
+ break;
520
+ case "grade":
521
+ U({
522
+ ...o,
523
+ gradeLevel: p.value
524
+ });
525
+ break;
526
+ }
527
+ }, He = (m) => {
528
+ U({
529
+ ...o,
530
+ teacher: m
531
+ });
532
+ }, Ke = (m) => {
533
+ U({
534
+ ...o,
535
+ counselors: m
536
+ });
537
+ }, $e = async (m) => {
538
+ n(F(!0));
539
+ try {
540
+ await Me(m), n(
541
+ I({
542
+ type: "success",
543
+ message: "Student assigned successfully"
544
+ })
545
+ ), a?.(), Te();
546
+ } catch (p) {
547
+ n(
548
+ I({
549
+ type: "danger",
550
+ message: p.response?.data?.title || p.message
551
+ })
552
+ );
553
+ }
554
+ n(F(!1));
555
+ }, Qe = G((m) => {
556
+ if (m.length === 0) {
557
+ n(
558
+ I({
559
+ type: "danger",
560
+ message: "Not found selected student."
561
+ })
562
+ );
563
+ return;
564
+ }
565
+ if (m.some((x) => {
566
+ const w = s?.[x], t = l?.[x], v = c?.[x], k = r?.[x];
567
+ return !w && !t && !v && !k;
568
+ })) {
569
+ n(
570
+ I({
571
+ type: "danger",
572
+ message: "Please select/add teacher for all selected student first."
573
+ })
574
+ );
575
+ return;
576
+ }
577
+ const f = m.map((x) => {
578
+ const w = s?.[x], t = l?.[x], v = c?.[x], k = r?.[x], P = {
579
+ id: x
580
+ };
581
+ return w && (P.mainTeacherUserId = w ? w.map((ye) => ye.value) : void 0, P.mainTeacherEmail = w ? w.map((ye) => ye.label) : void 0), t && (P.assistantUserId = t?.value && typeof t?.value == "string" ? t?.value : void 0, P.assistantEmail = t?.value && typeof t?.value == "number" ? t?.label : void 0), v && (P.counselorUserIds = v ? v.map((ye) => ye.value) : void 0, P.counselorEmails = v ? v.map((ye) => ye.label) : void 0), k && (P.secondaryTeacherUserId = k?.value && typeof k?.value == "string" ? k?.value : void 0, P.secondaryTeacherEmail = k?.value && typeof k?.value == "number" ? k?.label : void 0), P;
582
+ });
583
+ $e([...f]);
584
+ }, [JSON.stringify(s), JSON.stringify(l), JSON.stringify(c), JSON.stringify(r)]), Xe = G((m) => {
585
+ const p = s?.[m], f = l?.[m], x = c?.[m], w = r?.[m];
586
+ if (!p && !f && !x && !w) {
587
+ n(
588
+ I({
589
+ type: "danger",
590
+ message: "Please select/add teacher for selected student first."
591
+ })
592
+ );
593
+ return;
594
+ }
595
+ const t = {
596
+ id: m
597
+ };
598
+ p && (t.mainTeacherUserId = p ? p.map((v) => v.value) : void 0, t.mainTeacherEmail = p ? p.map((v) => v.label) : void 0), f && (t.assistantUserId = f?.value && typeof f?.value == "string" ? f?.value : void 0, t.assistantEmail = f?.value && typeof f?.value == "number" ? f?.label : void 0), x && (t.counselorUserIds = x ? x.map((v) => v.value) : void 0, t.counselorEmails = x ? x.map((v) => v.label) : void 0), w && (t.secondaryTeacherUserId = w?.value && typeof w?.value == "string" ? w?.value : void 0, t.secondaryTeacherEmail = w?.value && typeof w?.value == "number" ? w?.label : void 0), $e([t]);
599
+ }, [JSON.stringify(s), JSON.stringify(l), JSON.stringify(c), JSON.stringify(r)]), Re = async (m) => {
600
+ if (m.length === 0) {
601
+ n(
602
+ I({
603
+ type: "danger",
604
+ message: "Not found selected student."
605
+ })
606
+ );
607
+ return;
608
+ }
609
+ if (o.teacher.length === 0 && o.counselors.length === 0 && !o.assistantId && !o.secondaryTeacherId) {
610
+ n(
611
+ I({
612
+ type: "danger",
613
+ message: "No change to assign!"
614
+ })
615
+ );
616
+ return;
617
+ }
618
+ const p = g?.filter((f) => m?.includes(f.id))?.every((f) => Array.isArray(f.teachers) && f.teachers.length > 0) ?? !1;
619
+ if (o.teacher.length === 0 && !p) {
620
+ n(
621
+ I({
622
+ type: "danger",
623
+ message: "Please assign a teacher to each student before giving other educators access to them"
624
+ })
625
+ );
626
+ return;
627
+ }
628
+ n(F(!0));
629
+ try {
630
+ if (o.teacher.length > 0 && g && g.length > 0) {
631
+ const w = g.filter((t) => m.includes(t.id)).map((t) => {
632
+ const v = t.teachers?.map((P) => P.teacherUserId) || [], k = o.teacher.filter(
633
+ (P) => !v.includes(P.id)
634
+ );
635
+ return {
636
+ id: t.id,
637
+ mainTeacherUserId: k.map((P) => P.id),
638
+ mainTeacherEmail: k.map((P) => P.email)
639
+ };
640
+ }).filter((t) => t.mainTeacherUserId.length > 0 || t.mainTeacherEmail.length > 0);
641
+ w.length > 0 && await Me(w);
642
+ }
643
+ if (o.counselors.length > 0 && g && g.length > 0) {
644
+ const w = g.filter((t) => m.includes(t.id)).map((t) => {
645
+ const v = t.counselors?.map((P) => P.counselorUserId) || [], k = o.counselors.filter(
646
+ (P) => !v.includes(P.id)
647
+ );
648
+ return {
649
+ id: t.id,
650
+ counselorUserIds: k.map((P) => P.id),
651
+ counselorEmails: k.map((P) => P.email)
652
+ };
653
+ }).filter((t) => t.counselorUserIds.length > 0 || t.counselorEmails.length > 0);
654
+ w.length > 0 && await Me(w);
655
+ }
656
+ const f = g?.filter((w) => !w.assistantUserId);
657
+ if (f && f?.length > 0 && o.assistantId) {
658
+ const w = f.map((t) => ({
659
+ id: t.id,
660
+ assistantUserId: o.assistantId,
661
+ assistantEmail: o.assistantEmail
662
+ }));
663
+ await Me(w.filter((t) => t !== void 0));
664
+ }
665
+ const x = g?.filter((w) => !w.secondaryTeacherUserId);
666
+ if (x && x?.length > 0 && o.secondaryTeacherId) {
667
+ const w = x.map((t) => ({
668
+ id: t.id,
669
+ secondaryTeacherUserId: o.secondaryTeacherId,
670
+ secondaryTeacherEmail: o.secondaryTeacherEmail
671
+ }));
672
+ await Me(w.filter((t) => t !== void 0));
673
+ }
674
+ n(
675
+ I({
676
+ type: "success",
677
+ message: "Student assigned successfully"
678
+ })
679
+ ), a?.(), Te(), Ae();
680
+ } catch (f) {
681
+ n(
682
+ I({
683
+ type: "danger",
684
+ message: f.response?.data?.title || f.message
685
+ })
686
+ );
687
+ }
688
+ n(F(!1));
689
+ }, Ye = async (m) => {
690
+ if (o.teacher.length === 0) {
691
+ n(
692
+ I({
693
+ type: "danger",
694
+ message: "Please select teacher before assign!"
695
+ })
696
+ );
697
+ return;
698
+ }
699
+ if (K.length > 0 && !m) {
700
+ le(!0);
701
+ return;
702
+ }
703
+ const p = {
704
+ id: d?.id || "",
705
+ mainTeacherUserId: o.teacher.filter((f) => !d?.teachers?.some((x) => x.teacherUserId === f.id)).map((f) => f.id) || [],
706
+ mainTeacherEmail: o.teacher.filter((f) => !d?.teachers?.some((x) => x.teacherUserId === f.id)).map((f) => f.email) || [],
707
+ assistantUserId: o?.assistantId ? o?.assistantId : void 0,
708
+ assistantEmail: o?.assistantEmail ? o?.assistantEmail : void 0,
709
+ counselorUserIds: o.counselors.map((f) => f.id) || [],
710
+ counselorEmails: o.counselors.map((f) => f.email) || [],
711
+ secondaryTeacherUserId: o?.secondaryTeacherId ? o?.secondaryTeacherId : void 0,
712
+ secondaryTeacherEmail: o?.secondaryTeacherEmail ? o?.secondaryTeacherEmail : void 0,
713
+ removeTeacherUserIds: K,
714
+ teacherSwitchUserId: m || ""
715
+ };
716
+ o?.gradeLevel && o.gradeLevel !== d?.gradeLevel && await Zt(d?.id || "", o?.gradeLevel), $e([p]);
717
+ }, Ze = async (m, p) => {
718
+ n(F(!0));
719
+ try {
720
+ (await ea(m)).status == 200 && (n(
721
+ I({
722
+ type: "success",
723
+ message: `Inactive ${m.length} Students successfully`
724
+ })
725
+ ), p());
726
+ } catch (f) {
727
+ n(
728
+ I({
729
+ type: "danger",
730
+ message: f.response?.data?.title || f.message
731
+ })
732
+ );
733
+ }
734
+ A(!E), n(F(!1));
735
+ }, et = G(async (m) => {
736
+ if (V.assistantRemoveUserId.length && !V.assistantSwitchDataUserId) {
737
+ n(
738
+ I({
739
+ type: "danger",
740
+ message: "Please select an assistant to transfer data!"
741
+ })
742
+ );
743
+ return;
744
+ }
745
+ if (V.teacherRemoveUserIds.length && !V.teacherSwitchDataUserId) {
746
+ n(
747
+ I({
748
+ type: "danger",
749
+ message: "Please select a teacher to transfer data!"
750
+ })
751
+ );
752
+ return;
753
+ }
754
+ if (V.counselorRemoveUserIds.length && !V.counselorSwitchDataUserId) {
755
+ n(
756
+ I({
757
+ type: "danger",
758
+ message: "Please select a counselor to transfer data!"
759
+ })
760
+ );
761
+ return;
762
+ }
763
+ if (V.supportTeacherRemoveUserIds.length && !V.supportTeacherSwitchDataUserId) {
764
+ n(
765
+ I({
766
+ type: "danger",
767
+ message: "Please select a support teacher to transfer data!"
768
+ })
769
+ );
770
+ return;
771
+ }
772
+ n(F(!0));
773
+ try {
774
+ await Yt({ ...V, studentUserIds: m || [] }), a?.(), await S();
775
+ } catch (p) {
776
+ n(
777
+ I({
778
+ type: "danger",
779
+ message: p.response?.data?.title || p.message
780
+ })
781
+ );
782
+ }
783
+ fe(), n(F(!1));
784
+ }, [V]);
785
+ return te(() => (d?.id && U({
786
+ teacher: d?.teachers?.map((m) => ({
787
+ id: m.teacherUserId,
788
+ email: m.mainTeacherEmail
789
+ })),
790
+ assistantId: d?.assistantUserId,
791
+ assistantEmail: d?.assistantEmail,
792
+ counselors: d?.counselors?.map((m) => ({
793
+ id: m.counselorUserId,
794
+ email: m.counselorEmail
795
+ })),
796
+ secondaryTeacherEmail: d?.secondaryTeacherEmail,
797
+ secondaryTeacherId: d?.secondaryTeacherUserId,
798
+ gradeLevel: d?.gradeLevel
799
+ }), () => {
800
+ U(Fe);
801
+ }), [d]), {
802
+ handleAssignSingleStudent: Xe,
803
+ handleAssignMultiStudent: Qe,
804
+ openModelBulk: i,
805
+ handleToggleModel: Ae,
806
+ handleChangeStaffBulk: Ge,
807
+ staffBulkAssign: o,
808
+ onAssignStaffToStudents: Re,
809
+ handleToggleInactiveModal: We,
810
+ openInactiveModal: E,
811
+ handleInactiveStudents: Ze,
812
+ handleChangeTeacherBulk: He,
813
+ handleEditAssignForStudents: Ye,
814
+ handleToggleSwitchModel: je,
815
+ openSwitchModal: C,
816
+ optionsSwitch: z,
817
+ modalType: b,
818
+ textModal: ue,
819
+ teacherSwitchList: de,
820
+ onCloseSwitchModal: Te,
821
+ handleUpdateSwitch: qe,
822
+ setTeacherChangeUserId: y,
823
+ setTeacherSelectForChangeUserId: M,
824
+ teacherSelectForChangeUserId: N,
825
+ openDetailModal: L,
826
+ setOpenDetailModal: Z,
827
+ toggleCollapse: Ue,
828
+ activeIndex: H,
829
+ handleChangeCounselorBulk: Ke,
830
+ onClose: ze,
831
+ removeTeacherUserIds: K,
832
+ onSelectRemoveTeacher: we,
833
+ openModelSwitchDataTeacher: ge,
834
+ onToggleModelSwitchDataTeacher: ve,
835
+ teacherSwitchUserId: ne,
836
+ setTeacherSwitchUserId: pe,
837
+ onToggleModelDeleteBulk: fe,
838
+ openModelDeleteBulk: ce,
839
+ handelChangeStaffRemove: W,
840
+ switchStaffUsers: V,
841
+ handleRemoveBulkStaff: et
842
+ };
843
+ };
844
+ function fa(s) {
845
+ return St({ attr: { viewBox: "0 0 512 512" }, child: [{ tag: "path", attr: { d: "M228.9 79.9L51.8 403.1C40.6 423.3 55.5 448 78.9 448h354.3c23.3 0 38.2-24.7 27.1-44.9L283.1 79.9c-11.7-21.2-42.5-21.2-54.2 0zM273.6 214L270 336h-28l-3.6-122h35.2zM256 402.4c-10.7 0-19.1-8.1-19.1-18.4s8.4-18.4 19.1-18.4 19.1 8.1 19.1 18.4-8.4 18.4-19.1 18.4z" } }] })(s);
846
+ }
847
+ const va = (s) => {
848
+ const {
849
+ textModal: l,
850
+ isOpen: c,
851
+ teachers: r,
852
+ options: a,
853
+ onClose: d,
854
+ onSave: S,
855
+ modalType: g,
856
+ setTeacherChangeUserId: n,
857
+ setTeacherSelectForChangeUserId: i,
858
+ teacherSelectForChangeUserId: T
859
+ } = s, { t: o } = Y();
860
+ return /* @__PURE__ */ u(
861
+ Ce,
862
+ {
863
+ centered: !0,
864
+ isOpen: c,
865
+ toggle: d,
866
+ zIndex: 1201,
867
+ children: [
868
+ /* @__PURE__ */ e(Se, { className: O["header-assign-for-student"], children: o(l.header) }),
869
+ /* @__PURE__ */ u(be, { children: [
870
+ g !== B.Assistant || g !== B.SecondaryTeacher && /* @__PURE__ */ u(Je, { children: [
871
+ /* @__PURE__ */ e("div", { children: o(l.titleSelect) }),
872
+ /* @__PURE__ */ e("ul", { style: { maxHeight: 200, overflow: "auto" }, children: r.map((U) => /* @__PURE__ */ u("li", { children: [
873
+ U.name,
874
+ "-",
875
+ U.label
876
+ ] }, U.label)) })
877
+ ] }),
878
+ (g === B.Teacher || g === B.Counselor) && /* @__PURE__ */ u(Je, { children: [
879
+ /* @__PURE__ */ e("div", { children: o(l.selectPlaceholder) }),
880
+ /* @__PURE__ */ e(
881
+ Q,
882
+ {
883
+ options: r,
884
+ value: r.filter((U) => U.value === T),
885
+ placeholder: o(l.selectPlaceholder),
886
+ className: `flex-grow-1 mb-3 ${O["custom-chip-teacher-select"]}`,
887
+ onChange: (U) => {
888
+ i(U.value);
889
+ },
890
+ isClearable: !0,
891
+ style: { maxWidth: 120 }
892
+ }
893
+ )
894
+ ] }),
895
+ /* @__PURE__ */ e("div", { children: o(l.changeTitle) }),
896
+ /* @__PURE__ */ e(
897
+ xe,
898
+ {
899
+ options: a,
900
+ onChange: (U) => {
901
+ g !== B.SecondaryTeacher ? n(U.value) : n(U.id);
902
+ },
903
+ placeholder: o(l.changePlaceholder),
904
+ className: "flex-grow-1 mb-3"
905
+ }
906
+ )
907
+ ] }),
908
+ /* @__PURE__ */ u(Ne, { className: "textModal-right", children: [
909
+ /* @__PURE__ */ e(J, { onClick: () => d(!1), children: o("cancel") }),
910
+ /* @__PURE__ */ e(J, { color: "primary", onClick: () => {
911
+ S();
912
+ }, children: o("save") })
913
+ ] })
914
+ ]
915
+ }
916
+ );
917
+ }, ya = yt(va), Ta = ({
918
+ openDetailModal: s,
919
+ onClose: l,
920
+ selectedUser: c,
921
+ staffBulkAssign: r,
922
+ teacherOptions: a,
923
+ handleChangeTeacherBulk: d,
924
+ handleChangeCounselorBulk: S,
925
+ assistantOptions: g,
926
+ counselorOptions: n,
927
+ secondaryTeacherOptions: i,
928
+ handleChangeStaffBulk: T,
929
+ handleEditAssignForStudents: o,
930
+ toggleCollapse: U,
931
+ activeIndex: E
932
+ }) => {
933
+ const { t: A } = Y(), C = [
934
+ c?.teachers || [],
935
+ c?.counselors || []
936
+ ];
937
+ return /* @__PURE__ */ u(
938
+ Ce,
939
+ {
940
+ centered: !0,
941
+ isOpen: s,
942
+ toggle: () => l(),
943
+ zIndex: 1201,
944
+ children: [
945
+ /* @__PURE__ */ u(Se, { className: O["header-assign-for-student"], children: [
946
+ /* @__PURE__ */ u("div", { children: [
947
+ "Assign student ",
948
+ c?.fullName
949
+ ] }),
950
+ /* @__PURE__ */ u("div", { children: [
951
+ "Grade ",
952
+ c?.gradeLevel
953
+ ] })
954
+ ] }),
955
+ /* @__PURE__ */ u(be, { children: [
956
+ C.map((h, b) => /* @__PURE__ */ u("div", { children: [
957
+ /* @__PURE__ */ u(
958
+ "button",
959
+ {
960
+ type: "button",
961
+ className: `btn ${O["btn-collapse"]} ${E === b ? "btn-link " : ""}`,
962
+ onClick: () => U(b),
963
+ children: [
964
+ A(b === 0 ? "current_teacher_name" : "current_counselor_name"),
965
+ " ",
966
+ `(${h.length})`,
967
+ " ",
968
+ /* @__PURE__ */ e("i", { className: `fa fa-angle-${E === b ? "up" : "down"}` })
969
+ ]
970
+ }
971
+ ),
972
+ /* @__PURE__ */ e(At, { isOpen: E === b, children: /* @__PURE__ */ e(Rt, { children: /* @__PURE__ */ e(Lt, { children: h.length > 0 ? h.map((R) => b === 0 ? /* @__PURE__ */ u("li", { children: [
973
+ R.mainTeacherName,
974
+ " - ",
975
+ R.mainTeacherEmail
976
+ ] }, R.mainTeacherEmail) : /* @__PURE__ */ u("li", { children: [
977
+ R.counselorName,
978
+ " - ",
979
+ R.counselorEmail
980
+ ] }, R.counselorUserId)) : /* @__PURE__ */ e("div", { children: A("no_data") }) }) }) })
981
+ ] }, b)),
982
+ /* @__PURE__ */ e("div", { children: A("teacher_email") }),
983
+ /* @__PURE__ */ e(
984
+ Q,
985
+ {
986
+ isMulti: !0,
987
+ value: r.teacher.filter((h) => !c.teachers?.some((b) => b.teacherUserId === h.id)).map((h) => ({ label: h.email, value: h.id })),
988
+ options: a.filter((h) => !c.teachers?.some((b) => b.teacherUserId === h.value)),
989
+ placeholder: A("select_teacher"),
990
+ className: `flex-grow-1 mb-3 ${O["custom-chip-teacher-select"]}`,
991
+ onChange: (h) => {
992
+ const b = h.map((R) => ({
993
+ id: R.value,
994
+ email: R.label
995
+ }));
996
+ d(b);
997
+ },
998
+ isClearable: !0,
999
+ style: { maxWidth: 120 }
1000
+ }
1001
+ ),
1002
+ /* @__PURE__ */ e("div", { children: A("assistant_email") }),
1003
+ /* @__PURE__ */ e(
1004
+ xe,
1005
+ {
1006
+ value: g.find((h) => h.value == r.assistantId || h.label == r.assistantEmail) || null,
1007
+ options: g,
1008
+ onChange: (h) => {
1009
+ T("assistant", h);
1010
+ },
1011
+ placeholder: A("select_assistant"),
1012
+ className: "flex-grow-1 mb-3"
1013
+ }
1014
+ ),
1015
+ /* @__PURE__ */ e("div", { children: A("counselor_email") }),
1016
+ /* @__PURE__ */ e(
1017
+ Q,
1018
+ {
1019
+ isMulti: !0,
1020
+ value: r.counselors.filter((h) => !c.counselors?.some((b) => b.counselorUserId === h.id)).map((h) => ({ label: h.email, value: h.id })),
1021
+ options: n.filter((h) => !c.counselors?.some((b) => b.counselorUserId === h.value)),
1022
+ placeholder: A("select_counselor"),
1023
+ className: `flex-grow-1 mb-3 ${O["custom-chip-teacher-select"]}`,
1024
+ onChange: (h) => {
1025
+ const b = h.map((R) => ({
1026
+ id: R.value,
1027
+ email: R.label
1028
+ }));
1029
+ S(b);
1030
+ },
1031
+ isClearable: !0,
1032
+ style: { maxWidth: 120 }
1033
+ }
1034
+ ),
1035
+ /* @__PURE__ */ e("div", { children: A("support_teacher_email") }),
1036
+ /* @__PURE__ */ e(
1037
+ xe,
1038
+ {
1039
+ value: i.find((h) => h.value == r.secondaryTeacherId || h.label == r.secondaryTeacherEmail) || null,
1040
+ options: i,
1041
+ onChange: (h) => {
1042
+ T("secondary", h);
1043
+ },
1044
+ placeholder: A("select_support_teacher"),
1045
+ className: "flex-grow-1"
1046
+ }
1047
+ ),
1048
+ /* @__PURE__ */ e("div", { children: A("grade") }),
1049
+ /* @__PURE__ */ e(
1050
+ la,
1051
+ {
1052
+ value: dt.find((h) => h.value === r.gradeLevel),
1053
+ options: dt,
1054
+ placeholder: A("select_grade"),
1055
+ className: "flex-grow-1 mb-3",
1056
+ onChange: (h) => {
1057
+ T("grade", h);
1058
+ },
1059
+ styles: {
1060
+ container: (h) => ({ ...h, maxWidth: 120 })
1061
+ }
1062
+ }
1063
+ )
1064
+ ] }),
1065
+ /* @__PURE__ */ u(Ne, { className: "text-right", children: [
1066
+ /* @__PURE__ */ e(J, { onClick: () => l(), children: A("cancel") }),
1067
+ /* @__PURE__ */ e(J, { color: "primary", onClick: () => {
1068
+ o();
1069
+ }, children: A("save") })
1070
+ ] })
1071
+ ]
1072
+ }
1073
+ );
1074
+ }, _a = ({
1075
+ open: s,
1076
+ onClose: l,
1077
+ teachers: c,
1078
+ onConfirm: r,
1079
+ teacherSwitchUserId: a,
1080
+ setTeacherSwitchUserId: d
1081
+ }) => {
1082
+ const { t: S } = Y();
1083
+ return /* @__PURE__ */ u(Ce, { centered: !0, isOpen: s, toggle: () => l(), zIndex: 1201, children: [
1084
+ /* @__PURE__ */ e(Se, { className: O["header-assign-for-student"], children: /* @__PURE__ */ e("div", { children: "Select teacher switch data" }) }),
1085
+ /* @__PURE__ */ e(be, { className: "p-0", children: /* @__PURE__ */ e("div", { className: O["switch-data-teachers"], children: c.map((g) => /* @__PURE__ */ e(
1086
+ "p",
1087
+ {
1088
+ onClick: () => d(g.teacherUserId),
1089
+ className: `${O["switch-data-teacher-item"]} ${g.teacherUserId == a ? O["item-checked"] : ""}`,
1090
+ children: g.mainTeacherName
1091
+ }
1092
+ )) }) }),
1093
+ /* @__PURE__ */ u(Ne, { className: "text-right", children: [
1094
+ /* @__PURE__ */ e(J, { onClick: () => l(), children: S("cancel") }),
1095
+ /* @__PURE__ */ e(
1096
+ J,
1097
+ {
1098
+ disabled: !a,
1099
+ color: "primary",
1100
+ onClick: async () => {
1101
+ await r(a), l();
1102
+ },
1103
+ children: S("save")
1104
+ }
1105
+ )
1106
+ ] })
1107
+ ] });
1108
+ }, Ia = ({
1109
+ teachers: s,
1110
+ onChangeStaffRemove: l,
1111
+ switchStaffUsers: c
1112
+ }) => {
1113
+ const { t: r } = Y();
1114
+ return /* @__PURE__ */ u("div", { children: [
1115
+ /* @__PURE__ */ e("h6", { children: "Select teacher to remove" }),
1116
+ /* @__PURE__ */ e(
1117
+ Q,
1118
+ {
1119
+ isMulti: !0,
1120
+ value: s.filter(
1121
+ (a) => c.teacherRemoveUserIds.includes(a.value)
1122
+ ) || [],
1123
+ options: s.filter(
1124
+ (a) => !c.teacherRemoveUserIds.includes(
1125
+ a.value
1126
+ ) && a.value !== c.teacherSwitchDataUserId
1127
+ ) || [],
1128
+ placeholder: r("select_teacher"),
1129
+ className: `flex-grow-1 mb-3 ${O["custom-chip-teacher-select"]}`,
1130
+ onChange: (a) => {
1131
+ l({
1132
+ teacherRemoveUserIds: a.map((d) => d.value)
1133
+ });
1134
+ },
1135
+ isClearable: !0
1136
+ }
1137
+ ),
1138
+ /* @__PURE__ */ e("h6", { className: "mt-3", children: "Select the teacher to transfer data to" }),
1139
+ /* @__PURE__ */ e(
1140
+ Q,
1141
+ {
1142
+ value: s.find(
1143
+ (a) => c.teacherSwitchDataUserId == a.value
1144
+ ) || null,
1145
+ options: s.filter(
1146
+ (a) => !c.teacherRemoveUserIds.includes(
1147
+ a.value
1148
+ ) && a.value !== c.teacherSwitchDataUserId
1149
+ ) || [],
1150
+ placeholder: r("select_teacher"),
1151
+ className: `flex-grow-1 mb-3 ${O["custom-chip-teacher-select"]}`,
1152
+ onChange: (a) => {
1153
+ console.log("value", a), l({
1154
+ teacherSwitchDataUserId: a?.value
1155
+ });
1156
+ },
1157
+ isClearable: !0
1158
+ }
1159
+ )
1160
+ ] });
1161
+ }, Ca = ({
1162
+ counselors: s,
1163
+ onChangeStaffRemove: l,
1164
+ switchStaffUsers: c
1165
+ }) => {
1166
+ const { t: r } = Y();
1167
+ return /* @__PURE__ */ u("div", { children: [
1168
+ /* @__PURE__ */ e("h6", { children: "Select counselor to remove" }),
1169
+ /* @__PURE__ */ e(
1170
+ Q,
1171
+ {
1172
+ isMulti: !0,
1173
+ value: s.filter(
1174
+ (a) => c.counselorRemoveUserIds.includes(a.value)
1175
+ ) || [],
1176
+ options: s.filter(
1177
+ (a) => !c.counselorRemoveUserIds.includes(
1178
+ a.value
1179
+ ) && a.value !== c.counselorSwitchDataUserId
1180
+ ) || [],
1181
+ placeholder: r("select_counselor"),
1182
+ className: `flex-grow-1 mb-3 ${O["custom-chip-teacher-select"]}`,
1183
+ onChange: (a) => {
1184
+ l({
1185
+ counselorRemoveUserIds: a.map((d) => d.value)
1186
+ });
1187
+ },
1188
+ isClearable: !0
1189
+ }
1190
+ ),
1191
+ /* @__PURE__ */ e("h6", { className: "mt-3", children: "Select the counselor to transfer data to" }),
1192
+ /* @__PURE__ */ e(
1193
+ Q,
1194
+ {
1195
+ value: s.find(
1196
+ (a) => c.counselorSwitchDataUserId == a.value
1197
+ ) || null,
1198
+ options: s.filter(
1199
+ (a) => !c.counselorRemoveUserIds.includes(
1200
+ a.value
1201
+ ) && a.value !== c.counselorSwitchDataUserId
1202
+ ) || [],
1203
+ placeholder: r("select_counselor"),
1204
+ className: `flex-grow-1 mb-3 ${O["custom-chip-counselor-select"]}`,
1205
+ onChange: (a) => {
1206
+ l({
1207
+ counselorSwitchDataUserId: a?.value
1208
+ });
1209
+ },
1210
+ isClearable: !0
1211
+ }
1212
+ )
1213
+ ] });
1214
+ }, Sa = ({ tabs: s }) => {
1215
+ const { t: l } = Y(), [c, r] = _(0), a = (S) => {
1216
+ r(S);
1217
+ };
1218
+ return /* @__PURE__ */ e("div", { className: "animated fadeIn", children: /* @__PURE__ */ e(ae, { children: /* @__PURE__ */ u(j, { xl: 12, children: [
1219
+ /* @__PURE__ */ e(Bt, { tabs: !0, children: s.map((S, g) => {
1220
+ const n = g === c;
1221
+ return /* @__PURE__ */ e(Ft, { children: /* @__PURE__ */ e(
1222
+ Pt,
1223
+ {
1224
+ className: `${n ? "active" : ""} cursor-pointer`,
1225
+ onClick: () => a(g),
1226
+ style: {
1227
+ color: n ? "#316CD9" : "#242424"
1228
+ },
1229
+ children: l(S.title)
1230
+ }
1231
+ ) }, g);
1232
+ }) }),
1233
+ /* @__PURE__ */ e(
1234
+ Jt,
1235
+ {
1236
+ activeTab: c,
1237
+ className: "border-bottom-0 border-left-0 border-right-0 p-3",
1238
+ children: s.map((S, g) => /* @__PURE__ */ e(jt, { tabId: g, children: /* @__PURE__ */ e(S.component, {}) }, g))
1239
+ }
1240
+ )
1241
+ ] }) }) });
1242
+ }, ba = ({
1243
+ assistants: s,
1244
+ onChangeStaffRemove: l,
1245
+ switchStaffUsers: c
1246
+ }) => {
1247
+ const { t: r } = Y();
1248
+ return /* @__PURE__ */ u("div", { children: [
1249
+ /* @__PURE__ */ e("h6", { children: "Select assistant to remove" }),
1250
+ /* @__PURE__ */ e(
1251
+ Q,
1252
+ {
1253
+ isMulti: !0,
1254
+ value: s.filter(
1255
+ (a) => c.assistantRemoveUserId.includes(a.value)
1256
+ ) || [],
1257
+ options: s.filter(
1258
+ (a) => !c.assistantRemoveUserId.includes(
1259
+ a.value
1260
+ ) && a.value !== c.assistantSwitchDataUserId
1261
+ ) || [],
1262
+ placeholder: r("select_assistant"),
1263
+ className: `flex-grow-1 mb-3 ${O["custom-chip-teacher-select"]}`,
1264
+ onChange: (a) => {
1265
+ l({
1266
+ assistantRemoveUserId: a.map((d) => d.value)
1267
+ });
1268
+ },
1269
+ isClearable: !0
1270
+ }
1271
+ ),
1272
+ /* @__PURE__ */ e("h6", { className: "mt-3", children: "Select the assistant to transfer data to" }),
1273
+ /* @__PURE__ */ e(
1274
+ Q,
1275
+ {
1276
+ value: s.find(
1277
+ (a) => c.assistantSwitchDataUserId == a.value
1278
+ ) || null,
1279
+ options: s.filter(
1280
+ (a) => !c.assistantRemoveUserId.includes(
1281
+ a.value
1282
+ ) && a.value !== c.assistantSwitchDataUserId
1283
+ ) || [],
1284
+ placeholder: r("select_assistant"),
1285
+ className: `flex-grow-1 mb-3 ${O["custom-chip-assistant-select"]}`,
1286
+ onChange: (a) => {
1287
+ console.log("value", a), l({
1288
+ assistantSwitchDataUserId: a?.value
1289
+ });
1290
+ },
1291
+ isClearable: !0
1292
+ }
1293
+ )
1294
+ ] });
1295
+ }, Na = ({
1296
+ secondaryTeachers: s,
1297
+ onChangeStaffRemove: l,
1298
+ switchStaffUsers: c
1299
+ }) => {
1300
+ const { t: r } = Y();
1301
+ return /* @__PURE__ */ u("div", { children: [
1302
+ /* @__PURE__ */ e("h6", { children: "Select support teacher to remove" }),
1303
+ /* @__PURE__ */ e(
1304
+ Q,
1305
+ {
1306
+ isMulti: !0,
1307
+ value: s.filter(
1308
+ (a) => c.supportTeacherRemoveUserIds.includes(a.value)
1309
+ ) || [],
1310
+ options: s.filter(
1311
+ (a) => !c.supportTeacherRemoveUserIds.includes(
1312
+ a.value
1313
+ ) && a.value !== c.supportTeacherSwitchDataUserId
1314
+ ) || [],
1315
+ placeholder: r("select_support_teacher"),
1316
+ className: `flex-grow-1 mb-3 ${O["custom-chip-teacher-select"]}`,
1317
+ onChange: (a) => {
1318
+ l({
1319
+ supportTeacherRemoveUserIds: a.map((d) => d.value)
1320
+ });
1321
+ },
1322
+ isClearable: !0
1323
+ }
1324
+ ),
1325
+ /* @__PURE__ */ e("h6", { className: "mt-3", children: "Select the support teacher to transfer data to" }),
1326
+ /* @__PURE__ */ e(
1327
+ Q,
1328
+ {
1329
+ value: s.find(
1330
+ (a) => c.supportTeacherSwitchDataUserId == a.value
1331
+ ) || null,
1332
+ options: s.filter(
1333
+ (a) => !c.supportTeacherRemoveUserIds.includes(
1334
+ a.value
1335
+ ) && a.value !== c.supportTeacherSwitchDataUserId
1336
+ ) || [],
1337
+ placeholder: r("select_support_teacher"),
1338
+ className: `flex-grow-1 mb-3 ${O["custom-chip-teacher-select"]}`,
1339
+ onChange: (a) => {
1340
+ l({
1341
+ supportTeacherSwitchDataUserId: a?.value
1342
+ });
1343
+ },
1344
+ isClearable: !0
1345
+ }
1346
+ )
1347
+ ] });
1348
+ }, wa = ({
1349
+ open: s,
1350
+ onClose: l,
1351
+ teachers: c,
1352
+ onChangeStaffRemove: r,
1353
+ switchStaffUsers: a,
1354
+ assistants: d,
1355
+ onRemoveBulkStaff: S,
1356
+ counselors: g,
1357
+ studentUserIds: n,
1358
+ secondaryTeachers: i
1359
+ }) => {
1360
+ const { t: T } = Y(), o = [
1361
+ {
1362
+ title: "Remove Teacher",
1363
+ component: () => /* @__PURE__ */ e(
1364
+ Ia,
1365
+ {
1366
+ teachers: c,
1367
+ onChangeStaffRemove: r,
1368
+ switchStaffUsers: a
1369
+ }
1370
+ )
1371
+ },
1372
+ {
1373
+ title: "Remove Assistant",
1374
+ component: () => /* @__PURE__ */ e(
1375
+ ba,
1376
+ {
1377
+ assistants: d,
1378
+ onChangeStaffRemove: r,
1379
+ switchStaffUsers: a
1380
+ }
1381
+ )
1382
+ },
1383
+ {
1384
+ title: "Remove Counselor",
1385
+ component: () => /* @__PURE__ */ e(
1386
+ Ca,
1387
+ {
1388
+ counselors: g,
1389
+ onChangeStaffRemove: r,
1390
+ switchStaffUsers: a
1391
+ }
1392
+ )
1393
+ },
1394
+ {
1395
+ title: "Remove Support Teacher",
1396
+ component: () => /* @__PURE__ */ e(
1397
+ Na,
1398
+ {
1399
+ secondaryTeachers: i,
1400
+ onChangeStaffRemove: r,
1401
+ switchStaffUsers: a
1402
+ }
1403
+ )
1404
+ }
1405
+ ];
1406
+ return /* @__PURE__ */ u(Ce, { size: "lg", centered: !0, isOpen: s, toggle: () => l(), zIndex: 1201, children: [
1407
+ /* @__PURE__ */ e(
1408
+ Se,
1409
+ {
1410
+ className: `${O["header-assign-for-student"]} border-0`,
1411
+ children: /* @__PURE__ */ e("div", { children: "Remove Bulk" })
1412
+ }
1413
+ ),
1414
+ /* @__PURE__ */ e(be, { className: "p-0", children: /* @__PURE__ */ e(Sa, { tabs: o }) }),
1415
+ /* @__PURE__ */ u(Ne, { className: "text-right", children: [
1416
+ /* @__PURE__ */ e(J, { onClick: () => l(), children: T("cancel") }),
1417
+ /* @__PURE__ */ e(
1418
+ J,
1419
+ {
1420
+ disabled: !a.teacherRemoveUserIds.length && !a.assistantRemoveUserId && !a.counselorRemoveUserIds.length,
1421
+ color: "primary",
1422
+ onClick: async () => {
1423
+ await S(n);
1424
+ },
1425
+ children: "Remove"
1426
+ }
1427
+ )
1428
+ ] })
1429
+ ] });
1430
+ }, Ua = () => {
1431
+ const { t: s } = Y(), {
1432
+ selectedTeachers: l,
1433
+ teacherOptions: c,
1434
+ setSelectedTeachers: r
1435
+ } = ma(), {
1436
+ selectedAssistants: a,
1437
+ assistantOptions: d,
1438
+ setSelectedAssistants: S
1439
+ } = ha(), {
1440
+ selectedCounselors: g,
1441
+ counselorOptions: n,
1442
+ setSelectedCounselors: i
1443
+ } = da(), {
1444
+ selectedSecondaryTeachers: T,
1445
+ secondaryTeacherOptions: o,
1446
+ setSelectedSecondaryTeachers: U
1447
+ } = ua(), {
1448
+ isCheck: E,
1449
+ isCheckAll: A,
1450
+ userList: C,
1451
+ filters: h,
1452
+ totalItem: b,
1453
+ handleClickCheck: R,
1454
+ handleSelectAll: z,
1455
+ changeFilters: q,
1456
+ fullName: de,
1457
+ handleRetrievedData: se,
1458
+ selectedUser: X,
1459
+ setSelectedUser: he,
1460
+ getDataUserList: ue,
1461
+ userSelected: D,
1462
+ studentTeacherSelected: $,
1463
+ studentCounselorSelected: y,
1464
+ studentAssistantSelected: N,
1465
+ studentSecondaryTeacherSelected: M
1466
+ } = ia(), L = () => {
1467
+ se(), r(void 0), S(void 0), i(void 0), U(void 0);
1468
+ }, {
1469
+ openModelBulk: Z,
1470
+ handleToggleModel: H,
1471
+ staffBulkAssign: ee,
1472
+ handleChangeStaffBulk: K,
1473
+ onAssignStaffToStudents: me,
1474
+ handleToggleInactiveModal: ne,
1475
+ openInactiveModal: pe,
1476
+ handleInactiveStudents: ge,
1477
+ handleChangeTeacherBulk: le,
1478
+ handleChangeCounselorBulk: ce,
1479
+ handleEditAssignForStudents: oe,
1480
+ // handleToggleSwitchModel,
1481
+ modalType: V,
1482
+ openSwitchModal: ie,
1483
+ optionsSwitch: W,
1484
+ textModal: fe,
1485
+ teacherSwitchList: ve,
1486
+ onCloseSwitchModal: we,
1487
+ handleUpdateSwitch: Ue,
1488
+ setTeacherChangeUserId: Ae,
1489
+ setTeacherSelectForChangeUserId: je,
1490
+ teacherSelectForChangeUserId: Te,
1491
+ openDetailModal: ze,
1492
+ setOpenDetailModal: Ve,
1493
+ toggleCollapse: qe,
1494
+ activeIndex: We,
1495
+ onClose: Ge,
1496
+ removeTeacherUserIds: He,
1497
+ // onSelectRemoveTeacher,
1498
+ openModelSwitchDataTeacher: Ke,
1499
+ onToggleModelSwitchDataTeacher: $e,
1500
+ teacherSwitchUserId: Qe,
1501
+ setTeacherSwitchUserId: Xe,
1502
+ onToggleModelDeleteBulk: Re,
1503
+ openModelDeleteBulk: Ye,
1504
+ handelChangeStaffRemove: Ze,
1505
+ switchStaffUsers: et,
1506
+ handleRemoveBulkStaff: m
1507
+ } = ga(
1508
+ l,
1509
+ a,
1510
+ g,
1511
+ T,
1512
+ L,
1513
+ X,
1514
+ ue,
1515
+ D
1516
+ ), p = [
1517
+ {
1518
+ name: "",
1519
+ isCenter: !0,
1520
+ onSelectAll: z,
1521
+ isCheckAll: A,
1522
+ className: `align-top ${O["fixed-width-40"]}`
1523
+ },
1524
+ {
1525
+ name: "student_name",
1526
+ isCenter: !0,
1527
+ sortBy: Ie.Name,
1528
+ searchBy: _e.Name,
1529
+ className: `align-top ${O["fixed-width"]}`,
1530
+ getOption: (t) => ({
1531
+ label: t || "empty",
1532
+ value: t
1533
+ })
1534
+ },
1535
+ {
1536
+ name: "grade",
1537
+ isCenter: !0,
1538
+ sortBy: Ie.Grade,
1539
+ searchBy: _e.Grade,
1540
+ className: `align-center justify-center ${O["fixed-width-80"]}`,
1541
+ getOption: (t) => ({
1542
+ label: t || "empty",
1543
+ value: t
1544
+ })
1545
+ },
1546
+ {
1547
+ name: "teacher_emails",
1548
+ isCenter: !0,
1549
+ className: "align-center justify-center",
1550
+ sortBy: Ie.Teacher,
1551
+ searchBy: _e.Teacher,
1552
+ getOption: (t) => ({
1553
+ label: t || "empty",
1554
+ value: t
1555
+ })
1556
+ },
1557
+ {
1558
+ name: "assistant_email",
1559
+ isCenter: !0,
1560
+ className: "align-center justify-center",
1561
+ sortBy: Ie.Assistant,
1562
+ searchBy: _e.Assistant,
1563
+ getOption: (t) => ({
1564
+ label: t || "empty",
1565
+ value: t
1566
+ })
1567
+ },
1568
+ {
1569
+ name: "counselor_emails",
1570
+ isCenter: !0,
1571
+ className: "align-center justify-center",
1572
+ sortBy: Ie.Counselor,
1573
+ searchBy: _e.Counselor,
1574
+ getOption: (t) => ({
1575
+ label: t || "empty",
1576
+ value: t
1577
+ })
1578
+ },
1579
+ {
1580
+ name: "support_teacher_email",
1581
+ isCenter: !0,
1582
+ className: "align-center justify-center",
1583
+ sortBy: Ie.SecondaryTeacher,
1584
+ searchBy: _e.SecondaryTeacher,
1585
+ getOption: (t) => ({
1586
+ label: t || "empty",
1587
+ value: t
1588
+ })
1589
+ }
1590
+ ], [f, x] = _(null), w = (t) => {
1591
+ x((v) => v === t ? null : t);
1592
+ };
1593
+ return /* @__PURE__ */ u("div", { className: "fadeIn animated", children: [
1594
+ /* @__PURE__ */ e("h5", { className: "mt-4 mb-2", children: s("assign_student") }),
1595
+ /* @__PURE__ */ u(ae, { className: "my-2", children: [
1596
+ /* @__PURE__ */ e(j, { md: 3, children: /* @__PURE__ */ e(
1597
+ pt,
1598
+ {
1599
+ initValue: h?.searchString || "",
1600
+ onSearch: (t) => q({ searchString: t }),
1601
+ placeholder: s("type_something_to_search_students")
1602
+ }
1603
+ ) }),
1604
+ /* @__PURE__ */ e(j, { md: 8, className: "d-flex justify-content-end align-items-center", children: /* @__PURE__ */ e(ae, { className: "mb-2", children: /* @__PURE__ */ u(j, { style: { display: "flex", alignItems: "center", flexWrap: "wrap", gap: 4 }, children: [
1605
+ /* @__PURE__ */ e(J, { onClick: () => H(E), color: "primary", style: { background: "#316cd9" }, children: s("assign_bulk") }),
1606
+ /* @__PURE__ */ e(J, { onClick: () => Re(E), color: "primary", style: { background: "#316cd9" }, children: s("delete_bulk") }),
1607
+ /* @__PURE__ */ e(J, { onClick: () => ne(E), color: "primary", style: { background: "#316cd9" }, children: s("inactive_students") })
1608
+ ] }) }) }),
1609
+ /* @__PURE__ */ u(
1610
+ j,
1611
+ {
1612
+ md: 1,
1613
+ className: "d-flex justify-content-end align-items-center",
1614
+ style: { whiteSpace: "nowrap", flexWrap: "nowrap" },
1615
+ children: [
1616
+ s("total_of_users"),
1617
+ ": ",
1618
+ b
1619
+ ]
1620
+ }
1621
+ )
1622
+ ] }),
1623
+ /* @__PURE__ */ u(Ce, { centered: !0, isOpen: Z, toggle: () => H(), zIndex: 1201, children: [
1624
+ /* @__PURE__ */ e(Se, { children: s("assign_bulk_student") }),
1625
+ /* @__PURE__ */ u(be, { children: [
1626
+ /* @__PURE__ */ e(
1627
+ Q,
1628
+ {
1629
+ isMulti: !0,
1630
+ value: ee.teacher.map((t) => ({ label: t.email, value: t.id })),
1631
+ options: c,
1632
+ placeholder: s("select_teacher"),
1633
+ className: `flex-grow-1 mb-3 ${O["custom-chip-teacher-select"]}`,
1634
+ onChange: (t) => {
1635
+ const v = t.map((k) => ({
1636
+ id: k.value,
1637
+ email: k.label
1638
+ }));
1639
+ le(v);
1640
+ },
1641
+ isClearable: !0,
1642
+ style: { maxWidth: 120 }
1643
+ }
1644
+ ),
1645
+ /* @__PURE__ */ e(
1646
+ xe,
1647
+ {
1648
+ value: d.find((t) => t.value == ee.assistantId || t.label == ee.assistantEmail) || null,
1649
+ options: d,
1650
+ onChange: (t) => K("assistant", t),
1651
+ placeholder: s("select_assistant"),
1652
+ className: "flex-grow-1 mb-3"
1653
+ }
1654
+ ),
1655
+ /* @__PURE__ */ e(
1656
+ Q,
1657
+ {
1658
+ isMulti: !0,
1659
+ value: ee.counselors.map((t) => ({ label: t.email, value: t.id })),
1660
+ options: n,
1661
+ placeholder: s("select_counselor"),
1662
+ className: `flex-grow-1 mb-3 ${O["custom-chip-teacher-select"]}`,
1663
+ onChange: (t) => {
1664
+ const v = t.map((k) => ({
1665
+ id: k.value,
1666
+ email: k.label
1667
+ }));
1668
+ ce(v);
1669
+ },
1670
+ isClearable: !0,
1671
+ style: { maxWidth: 120 }
1672
+ }
1673
+ ),
1674
+ /* @__PURE__ */ e(
1675
+ xe,
1676
+ {
1677
+ value: o.find((t) => t.value == ee.secondaryTeacherId || t.label == ee.secondaryTeacherEmail) || null,
1678
+ options: o,
1679
+ onChange: (t) => K("secondary", t),
1680
+ placeholder: s("select_support_teacher"),
1681
+ className: "flex-grow-1"
1682
+ }
1683
+ )
1684
+ ] }),
1685
+ /* @__PURE__ */ u(Ne, { className: "text-right", children: [
1686
+ /* @__PURE__ */ e(J, { onClick: () => H(), children: s("cancel") }),
1687
+ /* @__PURE__ */ e(J, { color: "primary", onClick: () => me(E), children: s("assign") })
1688
+ ] })
1689
+ ] }),
1690
+ /* @__PURE__ */ u(Ce, { centered: !0, isOpen: pe, toggle: () => ne(), zIndex: 1201, children: [
1691
+ /* @__PURE__ */ e(Se, { children: s("inactive_students") }),
1692
+ /* @__PURE__ */ u(be, { style: { display: "flex", gap: 12 }, children: [
1693
+ /* @__PURE__ */ e(fa, { color: "red", size: 30 }),
1694
+ /* @__PURE__ */ e(zt, { style: { fontSize: 20, margin: 0, display: "flex", alignItems: "center" }, children: s("are_you_sure_you_want_to_inactive_students", { number: E.length }) })
1695
+ ] }),
1696
+ /* @__PURE__ */ u(Ne, { className: "text-right", children: [
1697
+ /* @__PURE__ */ e(J, { onClick: () => ne(), children: s("cancel") }),
1698
+ /* @__PURE__ */ e(J, { color: "primary", onClick: () => ge(E, L), children: s("confirm") })
1699
+ ] })
1700
+ ] }),
1701
+ /* @__PURE__ */ u(ae, { className: "mb-2", children: [
1702
+ /* @__PURE__ */ e(j, { md: 12, children: /* @__PURE__ */ e("div", { children: /* @__PURE__ */ u(Tt, { bordered: !0, hover: !0, striped: !0, size: "sm", className: `${O["table-fixed"]}`, children: [
1703
+ /* @__PURE__ */ e("thead", { children: /* @__PURE__ */ e(
1704
+ Dt,
1705
+ {
1706
+ headers: p,
1707
+ filters: h,
1708
+ fullName: de,
1709
+ onChangeFilters: q,
1710
+ teacherOptions: c,
1711
+ assistantOptions: d,
1712
+ counselorOptions: n,
1713
+ secondaryTeacherOptions: o
1714
+ }
1715
+ ) }),
1716
+ C && C.length > 0 ? /* @__PURE__ */ e("tbody", { children: C.map((t, v) => /* @__PURE__ */ u("tr", { children: [
1717
+ /* @__PURE__ */ e("td", { className: `align-middle text-center ${O["fixed-width-40"]}`, children: /* @__PURE__ */ e(
1718
+ "input",
1719
+ {
1720
+ id: t.id,
1721
+ type: "checkbox",
1722
+ onChange: R,
1723
+ checked: E.includes(
1724
+ t.id
1725
+ )
1726
+ }
1727
+ ) }),
1728
+ /* @__PURE__ */ u(
1729
+ "td",
1730
+ {
1731
+ className: `align-middle ${O["fixed-width"]}`,
1732
+ id: `student_name_${t.id}_${v}`,
1733
+ onMouseEnter: () => w(`student_name_${t.id}_${v}`),
1734
+ onMouseLeave: () => w(`student_name_${t.id}_${v}`),
1735
+ children: [
1736
+ /* @__PURE__ */ e(
1737
+ "button",
1738
+ {
1739
+ type: "button",
1740
+ className: `${O["button-user-name"]} btn-link`,
1741
+ onClick: () => {
1742
+ he(t), Ve(!0);
1743
+ },
1744
+ children: t.fullName
1745
+ }
1746
+ ),
1747
+ /* @__PURE__ */ e(
1748
+ Ee,
1749
+ {
1750
+ placement: "top",
1751
+ isOpen: f === `student_name_${t.id}_${v}`,
1752
+ target: `student_name_${t.id}_${v}`,
1753
+ children: t.fullName
1754
+ }
1755
+ )
1756
+ ]
1757
+ }
1758
+ ),
1759
+ /* @__PURE__ */ e(
1760
+ "td",
1761
+ {
1762
+ className: `align-middle ${O["fixed-width"]}`,
1763
+ id: `student_email_${t.id}_${v}`,
1764
+ onMouseEnter: () => w(`student_email_${t.id}_${v}`),
1765
+ onMouseLeave: () => w(`student_email_${t.id}_${v}`),
1766
+ children: /* @__PURE__ */ e("p", { children: t.gradeLevel })
1767
+ }
1768
+ ),
1769
+ /* @__PURE__ */ u(
1770
+ "td",
1771
+ {
1772
+ className: `align-middle ${O["equal-width"]}`,
1773
+ id: `student_teacher_${t.id}_${v}`,
1774
+ onMouseEnter: () => w(`student_teacher_${t.id}_${v}`),
1775
+ onMouseLeave: () => w(`student_teacher_${t.id}_${v}`),
1776
+ children: [
1777
+ !!t.teachers && t.teachers.length > 0 && /* @__PURE__ */ e(Je, { children: t.teachers.map((k) => /* @__PURE__ */ u("p", { className: "mb-0", children: [
1778
+ k.mainTeacherName,
1779
+ " - ",
1780
+ k.mainTeacherEmail
1781
+ ] }, k.mainTeacherEmail)) }),
1782
+ !!t.teachers && t.teachers.length > 0 && /* @__PURE__ */ e(
1783
+ Ee,
1784
+ {
1785
+ placement: "top",
1786
+ isOpen: f === `student_teacher_${t.id}_${v}`,
1787
+ target: `student_teacher_${t.id}_${v}`,
1788
+ children: t.teachers.map((k) => /* @__PURE__ */ u("p", { className: "mb-0", children: [
1789
+ k.mainTeacherName,
1790
+ " - ",
1791
+ k.mainTeacherEmail
1792
+ ] }, k.mainTeacherEmail))
1793
+ }
1794
+ )
1795
+ ]
1796
+ }
1797
+ ),
1798
+ /* @__PURE__ */ u(
1799
+ "td",
1800
+ {
1801
+ className: `align-middle ${O["equal-width"]}`,
1802
+ id: `student_assistant_${t.id}_${v}`,
1803
+ onMouseEnter: () => w(`student_assistant_${t.id}_${v}`),
1804
+ onMouseLeave: () => w(`student_assistant_${t.id}_${v}`),
1805
+ children: [
1806
+ !!t.assistantEmail && /* @__PURE__ */ u("p", { className: "mb-0", children: [
1807
+ t.assistantName,
1808
+ " - ",
1809
+ t.assistantEmail
1810
+ ] }),
1811
+ !!t.assistantEmail && /* @__PURE__ */ u(
1812
+ Ee,
1813
+ {
1814
+ placement: "top",
1815
+ isOpen: f === `student_assistant_${t.id}_${v}`,
1816
+ target: `student_assistant_${t.id}_${v}`,
1817
+ children: [
1818
+ t.assistantName,
1819
+ "-",
1820
+ t.assistantEmail
1821
+ ]
1822
+ }
1823
+ )
1824
+ ]
1825
+ }
1826
+ ),
1827
+ /* @__PURE__ */ u(
1828
+ "td",
1829
+ {
1830
+ className: `align-middle ${O["equal-width"]}`,
1831
+ id: `student_counselor_${t.id}_${v}`,
1832
+ onMouseEnter: () => w(`student_counselor_${t.id}_${v}`),
1833
+ onMouseLeave: () => w(`student_counselor_${t.id}_${v}`),
1834
+ children: [
1835
+ !!t.counselors && t.counselors.length > 0 && /* @__PURE__ */ e(Je, { children: t.counselors.map((k) => /* @__PURE__ */ u("p", { className: "mb-0", children: [
1836
+ k.counselorName,
1837
+ " - ",
1838
+ k.counselorEmail
1839
+ ] }, k.counselorUserId)) }),
1840
+ !!t.counselors && t.counselors.length > 0 && /* @__PURE__ */ e(
1841
+ Ee,
1842
+ {
1843
+ placement: "top",
1844
+ isOpen: f === `student_counselor_${t.id}_${v}`,
1845
+ target: `student_counselor_${t.id}_${v}`,
1846
+ children: t.counselors.map((k) => /* @__PURE__ */ u("p", { className: "mb-0", children: [
1847
+ k.counselorName,
1848
+ " - ",
1849
+ k.counselorEmail
1850
+ ] }, k.counselorUserId))
1851
+ }
1852
+ )
1853
+ ]
1854
+ }
1855
+ ),
1856
+ /* @__PURE__ */ u(
1857
+ "td",
1858
+ {
1859
+ className: `align-middle ${O["equal-width"]}`,
1860
+ id: `student_secondary_teacher_${t.id}_${v}`,
1861
+ onMouseEnter: () => w(`student_secondary_teacher_${t.id}_${v}`),
1862
+ onMouseLeave: () => w(`student_secondary_teacher_${t.id}_${v}`),
1863
+ children: [
1864
+ !!t.secondaryTeacherEmail && /* @__PURE__ */ u("p", { className: "mb-0", children: [
1865
+ t.secondaryTeacherName,
1866
+ " - ",
1867
+ t.secondaryTeacherEmail
1868
+ ] }),
1869
+ !!t.secondaryTeacherEmail && /* @__PURE__ */ u(
1870
+ Ee,
1871
+ {
1872
+ placement: "top",
1873
+ isOpen: f === `student_secondary_teacher_${t.id}_${v}`,
1874
+ target: `student_secondary_teacher_${t.id}_${v}`,
1875
+ children: [
1876
+ t.secondaryTeacherName,
1877
+ " - ",
1878
+ t.secondaryTeacherEmail
1879
+ ]
1880
+ }
1881
+ )
1882
+ ]
1883
+ }
1884
+ )
1885
+ ] }, t.id)) }) : /* @__PURE__ */ e("div", { style: { width: "max-content", padding: 20 }, children: s("no_data") })
1886
+ ] }) }) }),
1887
+ /* @__PURE__ */ e(j, { md: 12, children: /* @__PURE__ */ e(
1888
+ gt,
1889
+ {
1890
+ filters: h,
1891
+ totalRecordCount: b,
1892
+ changePageSize: (t) => q({ pageSize: t }),
1893
+ changePage: (t) => q({ currentPage: t })
1894
+ }
1895
+ ) })
1896
+ ] }),
1897
+ /* @__PURE__ */ e(
1898
+ Ta,
1899
+ {
1900
+ openDetailModal: ze,
1901
+ onClose: Ge,
1902
+ selectedUser: X,
1903
+ staffBulkAssign: ee,
1904
+ teacherOptions: c,
1905
+ handleChangeTeacherBulk: le,
1906
+ handleChangeCounselorBulk: ce,
1907
+ assistantOptions: d,
1908
+ counselorOptions: n,
1909
+ secondaryTeacherOptions: o,
1910
+ handleChangeStaffBulk: K,
1911
+ handleEditAssignForStudents: oe,
1912
+ toggleCollapse: qe,
1913
+ activeIndex: We
1914
+ }
1915
+ ),
1916
+ /* @__PURE__ */ e(
1917
+ ya,
1918
+ {
1919
+ textModal: fe,
1920
+ isOpen: ie,
1921
+ teachers: ve,
1922
+ options: W,
1923
+ onClose: we,
1924
+ onSave: Ue,
1925
+ modalType: V,
1926
+ setTeacherChangeUserId: Ae,
1927
+ setTeacherSelectForChangeUserId: je,
1928
+ teacherSelectForChangeUserId: Te
1929
+ }
1930
+ ),
1931
+ /* @__PURE__ */ e(
1932
+ _a,
1933
+ {
1934
+ open: Ke,
1935
+ onClose: $e,
1936
+ teachers: X?.teachers?.filter((t) => !He.includes(t.teacherUserId)) || [],
1937
+ onConfirm: oe,
1938
+ teacherSwitchUserId: Qe,
1939
+ setTeacherSwitchUserId: Xe
1940
+ }
1941
+ ),
1942
+ /* @__PURE__ */ e(
1943
+ wa,
1944
+ {
1945
+ open: Ye,
1946
+ onClose: Re,
1947
+ teachers: $,
1948
+ onChangeStaffRemove: Ze,
1949
+ switchStaffUsers: et,
1950
+ counselors: y,
1951
+ assistants: N,
1952
+ onRemoveBulkStaff: m,
1953
+ studentUserIds: E,
1954
+ secondaryTeachers: M
1955
+ }
1956
+ )
1957
+ ] });
1958
+ }, $a = () => {
1959
+ const s = re(), [l, c] = _(
1960
+ _t
1961
+ ), [r, a] = _([]), [d, S] = _(""), g = async () => {
1962
+ try {
1963
+ const i = await bt();
1964
+ a(i.data);
1965
+ } catch (i) {
1966
+ s(
1967
+ I({
1968
+ type: "danger",
1969
+ message: i.response?.data?.title || i.message
1970
+ })
1971
+ );
1972
+ }
1973
+ }, n = r.map((i) => ({
1974
+ label: `${i.name} - ${i.email}`,
1975
+ value: i.id
1976
+ }));
1977
+ return te(() => {
1978
+ l.roles?.includes("Teacher") && g();
1979
+ }, [l]), {
1980
+ userChoiced: l,
1981
+ setUserChoiced: c,
1982
+ teacherList: r,
1983
+ options: n,
1984
+ setTeacherChangeId: S,
1985
+ teacherChangeId: d
1986
+ };
1987
+ }, Ea = "User deleted list", ka = () => {
1988
+ const {
1989
+ userChoiced: s,
1990
+ setUserChoiced: l,
1991
+ options: c,
1992
+ teacherChangeId: r,
1993
+ setTeacherChangeId: a
1994
+ } = $a(), [d, S] = _([]), [g, n] = _(0), { filters: i, changeFilters: T } = Nt(), o = re(), U = xt(null), E = () => {
1995
+ U && U.current && U.current.toggle();
1996
+ }, A = () => {
1997
+ a(""), l(_t);
1998
+ }, C = G(async () => {
1999
+ o(F(!0));
2000
+ try {
2001
+ const b = await wt(i), { items: R, totalItems: z } = b.data;
2002
+ S(R), n(z);
2003
+ } catch (b) {
2004
+ o(
2005
+ I({
2006
+ type: "danger",
2007
+ message: b.response?.data?.title || b.message
2008
+ })
2009
+ );
2010
+ }
2011
+ o(F(!1));
2012
+ }, [o, i]);
2013
+ te(() => {
2014
+ document.title = Ea;
2015
+ }, []), te(() => {
2016
+ C();
2017
+ }, [i]);
2018
+ const h = G(
2019
+ (b) => {
2020
+ o(
2021
+ nt({
2022
+ isOpen: !0,
2023
+ type: "warning",
2024
+ message: "Do you want to remove this user?",
2025
+ onConfirm: async () => {
2026
+ o(F(!0));
2027
+ try {
2028
+ s.roles.includes("Teacher") ? await ct(b, r) : await ct(b), o(
2029
+ I({
2030
+ type: "success",
2031
+ message: "Remove user successfully"
2032
+ })
2033
+ ), E(), A(), T({ currentPage: 1 });
2034
+ } catch (R) {
2035
+ o(
2036
+ I({
2037
+ type: "danger",
2038
+ message: R.response?.data?.title || R.message
2039
+ })
2040
+ );
2041
+ }
2042
+ o(F(!1));
2043
+ }
2044
+ })
2045
+ );
2046
+ },
2047
+ [i, r, s]
2048
+ );
2049
+ return {
2050
+ userList: d,
2051
+ totalItems: g,
2052
+ filters: i,
2053
+ getData: C,
2054
+ removeData: h,
2055
+ changeFilters: T,
2056
+ modal: U,
2057
+ openModal: E,
2058
+ userChoiced: s,
2059
+ setUserChoiced: l,
2060
+ options: c,
2061
+ teacherChangeId: r,
2062
+ setTeacherChangeId: a,
2063
+ resetData: A
2064
+ };
2065
+ }, Da = (s, l) => {
2066
+ const {
2067
+ header: c,
2068
+ removeData: r,
2069
+ resetData: a,
2070
+ userChoiced: d,
2071
+ options: S,
2072
+ teacherChangeId: g,
2073
+ setTeacherChangeId: n
2074
+ } = s, { t: i } = Y(), T = () => {
2075
+ var o = window.location.origin + "/api/ExportDataUser/" + d.id;
2076
+ window.open(o);
2077
+ };
2078
+ return /* @__PURE__ */ e(
2079
+ Ut,
2080
+ {
2081
+ header: c,
2082
+ ref: l,
2083
+ onCancel: () => {
2084
+ a();
2085
+ },
2086
+ children: /* @__PURE__ */ e(ae, { children: /* @__PURE__ */ u(j, { md: 12, className: "mb-2", children: [
2087
+ /* @__PURE__ */ e("p", { children: i("export_user_data") }),
2088
+ /* @__PURE__ */ e("div", { className: "pb-3", children: /* @__PURE__ */ e(
2089
+ J,
2090
+ {
2091
+ color: "success",
2092
+ onClick: () => {
2093
+ T();
2094
+ },
2095
+ style: { color: "#fff" },
2096
+ children: i("download_users_data")
2097
+ }
2098
+ ) }),
2099
+ /* @__PURE__ */ e("p", { children: "Delete user" }),
2100
+ !!d && /* @__PURE__ */ u("div", { children: [
2101
+ d.roles.includes("Student") && /* @__PURE__ */ u("div", { children: [
2102
+ /* @__PURE__ */ e(ke, { color: "danger", children: i("alert_delete_user") }),
2103
+ /* @__PURE__ */ e(
2104
+ J,
2105
+ {
2106
+ color: "danger",
2107
+ onClick: () => r(d.id),
2108
+ style: { color: "#fff" },
2109
+ children: i("delete_user")
2110
+ }
2111
+ )
2112
+ ] }),
2113
+ d.roles.includes("Admin") && /* @__PURE__ */ u("div", { children: [
2114
+ /* @__PURE__ */ e(ke, { color: "danger", children: i("alert_delete_user") }),
2115
+ /* @__PURE__ */ e(
2116
+ J,
2117
+ {
2118
+ color: "danger",
2119
+ onClick: () => r(d.id),
2120
+ children: i("delete_user")
2121
+ }
2122
+ )
2123
+ ] }),
2124
+ d.roles.includes("Teacher") && /* @__PURE__ */ u("div", { children: [
2125
+ /* @__PURE__ */ e(ke, { color: "warning", children: i("alert_delete_user") }),
2126
+ /* @__PURE__ */ e(
2127
+ Q,
2128
+ {
2129
+ options: S,
2130
+ defaultValue: g,
2131
+ placeholder: "select_teacher_change",
2132
+ onChange: (o) => n(o.value)
2133
+ }
2134
+ ),
2135
+ !!g && /* @__PURE__ */ u("div", { className: "mt-2", children: [
2136
+ /* @__PURE__ */ e(ke, { color: "danger", children: i("alert_delete_user") }),
2137
+ /* @__PURE__ */ e(
2138
+ J,
2139
+ {
2140
+ color: "danger",
2141
+ onClick: () => r(d.id),
2142
+ children: i("delete_user")
2143
+ }
2144
+ )
2145
+ ] })
2146
+ ] }),
2147
+ (d.roles.includes("Parent") || d.roles.includes("Counselor") || d.roles.includes("SecondaryTeacher")) && /* @__PURE__ */ u("div", { children: [
2148
+ /* @__PURE__ */ e(ke, { color: "danger", children: i("alert_delete_user") }),
2149
+ /* @__PURE__ */ e(
2150
+ J,
2151
+ {
2152
+ color: "danger",
2153
+ onClick: () => r(d.id),
2154
+ children: i("delete_user")
2155
+ }
2156
+ )
2157
+ ] })
2158
+ ] })
2159
+ ] }) })
2160
+ }
2161
+ );
2162
+ }, Ma = yt(Da), Oa = "user_deleted", xa = () => {
2163
+ const {
2164
+ userList: s,
2165
+ totalItems: l,
2166
+ filters: c,
2167
+ changeFilters: r,
2168
+ removeData: a,
2169
+ openModal: d,
2170
+ modal: S,
2171
+ userChoiced: g,
2172
+ setUserChoiced: n,
2173
+ options: i,
2174
+ teacherChangeId: T,
2175
+ setTeacherChangeId: o,
2176
+ resetData: U
2177
+ } = ka(), { t: E } = Y(), A = (C) => {
2178
+ C && n(C), d();
2179
+ };
2180
+ return /* @__PURE__ */ u("div", { className: "fadeIn animated", children: [
2181
+ /* @__PURE__ */ e("h5", { className: "mt-4 mb-2", children: E(Oa) }),
2182
+ /* @__PURE__ */ u(ae, { className: "my-2", children: [
2183
+ /* @__PURE__ */ e(j, { md: 8, children: /* @__PURE__ */ e(
2184
+ pt,
2185
+ {
2186
+ initValue: c.searchString,
2187
+ onSearch: (C) => r({ searchString: C }),
2188
+ placeholder: E("type_something_to_search_reflection_result")
2189
+ }
2190
+ ) }),
2191
+ /* @__PURE__ */ u(
2192
+ j,
2193
+ {
2194
+ md: 4,
2195
+ className: "d-flex justify-content-end align-items-center",
2196
+ children: [
2197
+ E("total_of_users"),
2198
+ ": ",
2199
+ l
2200
+ ]
2201
+ }
2202
+ )
2203
+ ] }),
2204
+ /* @__PURE__ */ u(ae, { className: "mb-2", children: [
2205
+ /* @__PURE__ */ e(j, { md: 12, children: s && s.length > 0 ? /* @__PURE__ */ e("div", { children: /* @__PURE__ */ u(Tt, { bordered: !0, hover: !0, striped: !0, responsive: !0, size: "sm", children: [
2206
+ /* @__PURE__ */ e("thead", { children: /* @__PURE__ */ u("tr", { children: [
2207
+ /* @__PURE__ */ e("th", { className: "align-top", children: E("name") }),
2208
+ /* @__PURE__ */ e("th", { className: "align-top", children: E("email") }),
2209
+ /* @__PURE__ */ e("th", { className: "align-top", children: E("role") })
2210
+ ] }) }),
2211
+ /* @__PURE__ */ e("tbody", { children: s.map((C) => /* @__PURE__ */ u("tr", { children: [
2212
+ /* @__PURE__ */ e("td", { className: "align-middle", children: /* @__PURE__ */ e(
2213
+ $t,
2214
+ {
2215
+ label: `${C.fullName}`,
2216
+ onClick: () => A(C)
2217
+ }
2218
+ ) }),
2219
+ /* @__PURE__ */ e("td", { className: "align-middle", children: C.email }),
2220
+ /* @__PURE__ */ e("td", { className: "align-middle", children: !!C.roles && C.roles.map((h) => h === "SecondaryTeacher" ? "SupportTeacher" : h).join(", ") })
2221
+ ] }, C.id)) })
2222
+ ] }) }) : /* @__PURE__ */ e(Et, { label: E("user") }) }),
2223
+ /* @__PURE__ */ e(j, { md: 12, children: /* @__PURE__ */ e(
2224
+ gt,
2225
+ {
2226
+ filters: c,
2227
+ totalRecordCount: l,
2228
+ changePageSize: (C) => r({ pageSize: C }),
2229
+ changePage: (C) => r({ currentPage: C })
2230
+ }
2231
+ ) })
2232
+ ] }),
2233
+ /* @__PURE__ */ e(
2234
+ Ma,
2235
+ {
2236
+ ref: S,
2237
+ header: g.fullName,
2238
+ onCancel: () => {
2239
+ },
2240
+ userChoiced: g,
2241
+ removeData: a,
2242
+ options: i,
2243
+ teacherChangeId: T,
2244
+ setTeacherChangeId: o,
2245
+ resetData: U
2246
+ }
2247
+ )
2248
+ ] });
2249
+ }, Aa = {
2250
+ padding: "4px 8px",
2251
+ marginBottom: 0,
2252
+ borderRadius: "4px",
2253
+ color: "#fff",
2254
+ fontWeight: 500,
2255
+ fontSize: "14px",
2256
+ height: "56px",
2257
+ justifyContent: "center"
2258
+ }, Pe = ({
2259
+ htmlFor: s,
2260
+ isDisabled: l,
2261
+ text: c,
2262
+ backgroundColor: r,
2263
+ onClick: a,
2264
+ isClassReflection: d
2265
+ }) => /* @__PURE__ */ u(
2266
+ Vt,
2267
+ {
2268
+ htmlFor: s,
2269
+ role: "button",
2270
+ tabIndex: 0,
2271
+ className: `d-flex align-items-center justfy-content-center mr-2
2272
+ ${d ? "w-25" : ""}
2273
+ ${l ? "" : "cursor-pointer hover-opacity"}`,
2274
+ style: {
2275
+ ...Aa,
2276
+ backgroundColor: r,
2277
+ opacity: l ? 0.5 : 1,
2278
+ gap: "8px"
2279
+ },
2280
+ onClick: (S) => a(),
2281
+ children: [
2282
+ /* @__PURE__ */ e("i", { className: "fa fa-paperclip mr-1", "aria-hidden": "true" }),
2283
+ c
2284
+ ]
2285
+ }
2286
+ ), It = `${vt}/api/ImportCsv/csv`, lt = `${vt}/api/Teacher`, Ra = (s, l) => rt.post(`${It}/${l}`, s), ut = (s) => rt.post(`${It}/importClassReflection`, s), La = (s, l) => rt.post(`${lt}/adminImportStudentByTeacherId/${s}`, l), Ba = (s) => ft.post(`${lt}/adminImportChunkUser`, s), Fa = () => ft.get(`${lt}/download-template-file-user`);
2287
+ var Ct = /* @__PURE__ */ ((s) => (s.Students = "students", s.Subjects = "subjects", s.Grades = "grades", s.Attendances = "attendances", s.ClassReflection = "classReflection", s.Others = "others", s.AllUser = "allUser", s))(Ct || {});
2288
+ const Pa = [
2289
+ {
2290
+ text: "import_users",
2291
+ backgroundColor: "#0abde3",
2292
+ type: "allUser"
2293
+ /* AllUser */
2294
+ }
2295
+ ], Ja = [
2296
+ // {
2297
+ // text: "Import students",
2298
+ // backgroundColor: "#0abde3",
2299
+ // type: CSVType.Students
2300
+ // },
2301
+ // {
2302
+ // text: "Import subjects",
2303
+ // backgroundColor: "#1dd1a1",
2304
+ // type: CSVType.Subjects
2305
+ // },
2306
+ // { text: "Import grades", backgroundColor: "#54a0ff", type: CSVType.Grades },
2307
+ // {
2308
+ // text: "Import attendances",
2309
+ // backgroundColor: "#feca57",
2310
+ // type: CSVType.Attendances
2311
+ // },
2312
+ {
2313
+ text: "import_class_reflection",
2314
+ backgroundColor: "#e74c3c",
2315
+ type: "classReflection"
2316
+ /* ClassReflection */
2317
+ }
2318
+ // { text: "Import others", backgroundColor: "#8395a7", type: CSVType.Others }
2319
+ ], ja = "CSV Import", st = "csvupload", mt = {
2320
+ teacherName: "",
2321
+ teacherEmail: "",
2322
+ studentIds: [],
2323
+ file: ""
2324
+ }, za = () => {
2325
+ const s = re(), l = ra((N) => N.common.isLoading), [c, r] = _(null), [a, d] = _(), [S, g] = _([]), [n, i] = _(mt), [T, o] = _(), [U, E] = _([]), C = window.location.hostname.includes("isb"), [h, b] = _(0), [R, z] = _("");
2326
+ te(() => {
2327
+ document.title = ja;
2328
+ }, []);
2329
+ const q = C ? Pa : Ja, de = async () => {
2330
+ s(F(!0));
2331
+ try {
2332
+ const L = await Fa();
2333
+ var N = new Blob([L.data.content], { type: "text/csv" });
2334
+ const Z = window.URL.createObjectURL(N);
2335
+ var M = document.createElement("a");
2336
+ M.href = Z, M.setAttribute("download", L.data.nameFile), M.click(), s(
2337
+ I({
2338
+ type: "success",
2339
+ message: "Download successfully"
2340
+ })
2341
+ );
2342
+ } catch (L) {
2343
+ s(
2344
+ I({
2345
+ type: "danger",
2346
+ message: L.message
2347
+ })
2348
+ );
2349
+ }
2350
+ s(F(!1));
2351
+ }, se = G(
2352
+ async (N) => {
2353
+ if (!c || !N) return;
2354
+ s(F(!0));
2355
+ try {
2356
+ const H = new FormData();
2357
+ H.append("file", N, N.name);
2358
+ const ee = c === "allUser" ? ot.Admin : ot.Teacher, K = await Mt(H, ee);
2359
+ if (K.data && K.data.length > 0) {
2360
+ E(K.data), s(F(!1)), s(
2361
+ I({
2362
+ type: "danger",
2363
+ message: "Please use the file as per the template."
2364
+ })
2365
+ );
2366
+ return;
2367
+ }
2368
+ if (c == "allUser") {
2369
+ let ne = (await N.text()).trim();
2370
+ const pe = ne.split(`
2371
+ `).map((W) => W.trim()), ge = pe.findIndex((W) => W.split(",").includes("First Name"));
2372
+ if (ge === 0)
2373
+ throw new Error("Invalid CSV: Missing header row.");
2374
+ ne = pe.slice(ge).join(`
2375
+ `);
2376
+ const le = oa.parse(ne, { header: !0, skipEmptyLines: !0 }), ce = le.meta.fields, oe = le.data;
2377
+ if (!oe.length) {
2378
+ s(F(!1)), s(
2379
+ I({
2380
+ type: "danger",
2381
+ message: "The file has no data or some column names are misformed."
2382
+ })
2383
+ );
2384
+ return;
2385
+ }
2386
+ const V = 10, ie = [];
2387
+ for (let W = 0; W < oe.length; W += V) {
2388
+ const ve = oe.slice(W, W + V).map(
2389
+ (we) => Object.values(we).map((Ue) => (Ue ?? "").toString().trim())
2390
+ );
2391
+ ce && ve.unshift(ce), console.log({ valuesOnly: ve }), ie.push(ve);
2392
+ }
2393
+ for (let W = 0; W < ie.length; W++)
2394
+ await Ba({
2395
+ chunks: ie[W]
2396
+ }), await new Promise((fe) => setTimeout(fe, 500));
2397
+ } else
2398
+ C ? c == "classReflection" && await ut(H) : await Ra(H, c.toString());
2399
+ s(
2400
+ I({
2401
+ type: "success",
2402
+ message: "Import CSV successfully"
2403
+ })
2404
+ );
2405
+ } catch (H) {
2406
+ console.error("❌ Upload failed", H), s(
2407
+ I({
2408
+ type: "danger",
2409
+ message: H.response?.data?.title || H.message
2410
+ })
2411
+ );
2412
+ }
2413
+ s(F(!1));
2414
+ const M = document.getElementById(st), L = document.getElementById("import-student"), Z = document.getElementById("import-classReflection");
2415
+ M && (M.value = ""), L && (L.value = ""), Z && (Z.value = "");
2416
+ },
2417
+ [c]
2418
+ ), X = async (N) => {
2419
+ if (!h) {
2420
+ s(
2421
+ I({
2422
+ type: "danger",
2423
+ message: "Select teacher before import csv"
2424
+ })
2425
+ );
2426
+ return;
2427
+ }
2428
+ if (!c || !N) return;
2429
+ s(F(!0));
2430
+ try {
2431
+ const L = new FormData();
2432
+ L.append("file", N, N.name), await La(h, L), s(
2433
+ I({
2434
+ type: "success",
2435
+ message: "Import CSV successfully"
2436
+ })
2437
+ );
2438
+ } catch (L) {
2439
+ s(
2440
+ I({
2441
+ type: "danger",
2442
+ message: L.response?.data?.title || L.message
2443
+ })
2444
+ );
2445
+ }
2446
+ s(F(!1));
2447
+ const M = document.getElementById("teacherSelector");
2448
+ M && (M.value = "");
2449
+ }, he = async (N) => {
2450
+ if (!a || !a) return;
2451
+ s(F(!0));
2452
+ try {
2453
+ const L = new FormData();
2454
+ L.append("file", a, a.name), L.append("teacherName", N.teacherName), L.append("teacherEmail", N.teacherEmail), N.studentIds.forEach((Z) => {
2455
+ L.append("studentIds", Z);
2456
+ }), await ut(L), s(
2457
+ I({
2458
+ type: "success",
2459
+ message: "Import CSV successfully"
2460
+ })
2461
+ ), i(mt);
2462
+ } catch (L) {
2463
+ s(
2464
+ I({
2465
+ type: "danger",
2466
+ message: L.response?.data?.title || L.message
2467
+ })
2468
+ );
2469
+ }
2470
+ s(F(!1));
2471
+ const M = document.getElementById(st);
2472
+ M && (M.value = "");
2473
+ }, ue = (N) => {
2474
+ b(N.value);
2475
+ }, D = (N) => {
2476
+ o(N), z(N?.name || "");
2477
+ }, $ = () => {
2478
+ if (!T) {
2479
+ s(
2480
+ I({
2481
+ type: "danger",
2482
+ message: "Select CSV to import"
2483
+ })
2484
+ );
2485
+ return;
2486
+ }
2487
+ X(T);
2488
+ };
2489
+ return {
2490
+ isLoading: l,
2491
+ buttons: q,
2492
+ id: st,
2493
+ setType: r,
2494
+ upload: se,
2495
+ initImportReflection: n,
2496
+ setInitImportReflection: i,
2497
+ onConfirm: he,
2498
+ CSVType: Ct,
2499
+ dataFile: a,
2500
+ setDataFile: d,
2501
+ setArrStudent: g,
2502
+ arrStudent: S,
2503
+ isCheckDomainIBS: C,
2504
+ onChangeTeacher: ue,
2505
+ uploadByTeacherId: X,
2506
+ setDataFileImportStudent: D,
2507
+ onUpLoadStudentFile: $,
2508
+ defaultTeacher: h,
2509
+ fileName: R,
2510
+ onStudentSubmit: () => {
2511
+ s(
2512
+ nt({
2513
+ isOpen: !0,
2514
+ type: "warning",
2515
+ message: "Are you sure upload this file?",
2516
+ onConfirm: () => {
2517
+ $();
2518
+ }
2519
+ })
2520
+ );
2521
+ },
2522
+ downloadTemplateUser: de,
2523
+ errorsValidate: U,
2524
+ setErrorsValidate: E
2525
+ };
2526
+ }, Va = Oe.object({
2527
+ teacherName: Oe.string()?.trim().required(),
2528
+ teacherEmail: Oe.string()?.trim().email("Invalid email").required(),
2529
+ studentIds: Oe.array().required().test(
2530
+ "test students",
2531
+ "Please choose student",
2532
+ function() {
2533
+ return !!this.parent.studentIds && !!this.parent.studentIds.length;
2534
+ }
2535
+ ),
2536
+ file: Oe.string()?.trim().required()
2537
+ }), qa = () => {
2538
+ const {
2539
+ initImportReflection: s,
2540
+ onConfirm: l,
2541
+ isLoading: c,
2542
+ setType: r,
2543
+ id: a,
2544
+ CSVType: d,
2545
+ dataFile: S,
2546
+ setDataFile: g,
2547
+ setArrStudent: n,
2548
+ buttons: i,
2549
+ upload: T,
2550
+ isCheckDomainIBS: o,
2551
+ downloadTemplateUser: U,
2552
+ errorsValidate: E,
2553
+ setErrorsValidate: A
2554
+ } = za(), { t: C } = Y();
2555
+ return /* @__PURE__ */ e("div", { className: "animated fadeIn pt-3", children: o ? /* @__PURE__ */ u(tt, { children: [
2556
+ /* @__PURE__ */ e(
2557
+ De,
2558
+ {
2559
+ className: "d-none",
2560
+ type: "file",
2561
+ id: "import-user",
2562
+ onChange: (h) => T(h.target.files[0]),
2563
+ accept: "text/csv"
2564
+ }
2565
+ ),
2566
+ /* @__PURE__ */ e(
2567
+ De,
2568
+ {
2569
+ className: "d-none",
2570
+ type: "file",
2571
+ id: "import-classReflection",
2572
+ onChange: (h) => T(h.target.files[0]),
2573
+ accept: "text/csv"
2574
+ }
2575
+ ),
2576
+ /* @__PURE__ */ e("div", { className: "class-reflection", children: /* @__PURE__ */ e(
2577
+ ca,
2578
+ {
2579
+ initialValues: s,
2580
+ enableReinitialize: !0,
2581
+ validationSchema: Va,
2582
+ onSubmit: (h, b) => {
2583
+ l(h), g(""), n([]), b.resetForm();
2584
+ },
2585
+ children: (h) => {
2586
+ const {
2587
+ // values,
2588
+ touched: b,
2589
+ errors: R
2590
+ // handleSubmit,
2591
+ // handleChange
2592
+ } = h;
2593
+ return /* @__PURE__ */ u(ae, { className: "mb-2", children: [
2594
+ /* @__PURE__ */ e(
2595
+ De,
2596
+ {
2597
+ className: "d-none",
2598
+ type: "file",
2599
+ id: a,
2600
+ onChange: (z) => {
2601
+ g(z.target.files[0]), h.setFieldValue("file", "imported");
2602
+ const q = document.getElementById(a);
2603
+ q && (q.value = "");
2604
+ },
2605
+ accept: "text/csv"
2606
+ }
2607
+ ),
2608
+ /* @__PURE__ */ e(j, { md: 6, className: "mb-2 d-flex mt-5", children: /* @__PURE__ */ u(ae, { className: "w-100 flex-column", children: [
2609
+ /* @__PURE__ */ u(j, { md: 12, className: "", children: [
2610
+ /* @__PURE__ */ e(Le, { text: C("import_class_reflection") }),
2611
+ /* @__PURE__ */ e(
2612
+ Pe,
2613
+ {
2614
+ htmlFor: "import-classReflection",
2615
+ text: C("import_class_reflection"),
2616
+ isDisabled: c,
2617
+ backgroundColor: "#e74c3c",
2618
+ onClick: () => {
2619
+ r(d.ClassReflection);
2620
+ }
2621
+ },
2622
+ "Import class reflections"
2623
+ ),
2624
+ !!S && /* @__PURE__ */ e("p", { style: { color: "#007bff", fontStyle: "italic", marginTop: "5px" }, children: S.name })
2625
+ ] }),
2626
+ !S && /* @__PURE__ */ e(j, { md: 12, className: "mb-2", children: b.file && R.file && /* @__PURE__ */ e(
2627
+ at,
2628
+ {
2629
+ text: R.file
2630
+ }
2631
+ ) })
2632
+ ] }) }),
2633
+ /* @__PURE__ */ e(j, { md: 6, className: "mb-2", children: /* @__PURE__ */ u(ae, { className: "flex-column", children: [
2634
+ /* @__PURE__ */ e(j, { md: 12, className: "mb-2 text-right", style: { textAlign: "right" }, children: /* @__PURE__ */ e(
2635
+ J,
2636
+ {
2637
+ role: "button",
2638
+ color: "primary",
2639
+ onClick: () => U(),
2640
+ children: /* @__PURE__ */ u("p", { className: "d-flex align-items-center mb-0", children: [
2641
+ C("download_template"),
2642
+ " ",
2643
+ /* @__PURE__ */ e(ht, { size: 20, className: "ml-2" })
2644
+ ] })
2645
+ }
2646
+ ) }),
2647
+ /* @__PURE__ */ u(j, { md: 12, className: "mb-2", children: [
2648
+ /* @__PURE__ */ e(Le, { text: C("import_users") }),
2649
+ i.map((z) => /* @__PURE__ */ e(
2650
+ Pe,
2651
+ {
2652
+ htmlFor: "import-user",
2653
+ text: z.text,
2654
+ isDisabled: c,
2655
+ backgroundColor: z.backgroundColor,
2656
+ onClick: () => r(z.type)
2657
+ },
2658
+ z.text
2659
+ ))
2660
+ ] }),
2661
+ E?.length > 0 && E.map((z, q) => /* @__PURE__ */ e(
2662
+ at,
2663
+ {
2664
+ text: z
2665
+ },
2666
+ q
2667
+ ))
2668
+ ] }) })
2669
+ ] });
2670
+ }
2671
+ }
2672
+ ) })
2673
+ ] }) : /* @__PURE__ */ e(tt, { children: /* @__PURE__ */ u(ae, { children: [
2674
+ /* @__PURE__ */ e(j, { md: 12, className: "mt-2 mb-2 text-left", children: /* @__PURE__ */ e(
2675
+ J,
2676
+ {
2677
+ role: "button",
2678
+ color: "primary",
2679
+ onClick: () => U(),
2680
+ children: /* @__PURE__ */ u("p", { className: "d-flex align-items-center mb-0", children: [
2681
+ C("download_template"),
2682
+ " ",
2683
+ /* @__PURE__ */ e(ht, { size: 20, className: "ml-2" })
2684
+ ] })
2685
+ }
2686
+ ) }),
2687
+ /* @__PURE__ */ u(j, { md: 6, className: "mb-3", children: [
2688
+ /* @__PURE__ */ e(
2689
+ De,
2690
+ {
2691
+ id: "import-user",
2692
+ className: "d-none",
2693
+ type: "file",
2694
+ onChange: (h) => T(h.target.files[0]),
2695
+ accept: "text/csv"
2696
+ }
2697
+ ),
2698
+ /* @__PURE__ */ e(Le, { text: C("import_users") }),
2699
+ /* @__PURE__ */ e(
2700
+ Pe,
2701
+ {
2702
+ htmlFor: "import-user",
2703
+ text: C("import_users"),
2704
+ isDisabled: c,
2705
+ backgroundColor: "#0abde3",
2706
+ onClick: () => {
2707
+ r(d.AllUser), E.length > 0 && A([]);
2708
+ }
2709
+ },
2710
+ "import-users"
2711
+ )
2712
+ ] }),
2713
+ E.length > 0 && E.map((h, b) => /* @__PURE__ */ e(
2714
+ at,
2715
+ {
2716
+ text: h
2717
+ },
2718
+ b
2719
+ )),
2720
+ /* @__PURE__ */ u(j, { md: 6, className: "mb-3", children: [
2721
+ /* @__PURE__ */ e(
2722
+ De,
2723
+ {
2724
+ className: "d-none",
2725
+ type: "file",
2726
+ id: a,
2727
+ onChange: (h) => T(h.target.files[0]),
2728
+ accept: "text/csv"
2729
+ }
2730
+ ),
2731
+ i.map((h) => /* @__PURE__ */ u(tt, { children: [
2732
+ /* @__PURE__ */ e(Le, { text: C(h.text) }),
2733
+ /* @__PURE__ */ e(
2734
+ Pe,
2735
+ {
2736
+ htmlFor: a,
2737
+ text: C(h.text),
2738
+ isDisabled: c,
2739
+ backgroundColor: h.backgroundColor,
2740
+ onClick: () => r(h.type)
2741
+ },
2742
+ h.text
2743
+ )
2744
+ ] }))
2745
+ ] })
2746
+ ] }) }) });
2747
+ }, Wa = [
2748
+ {
2749
+ path: "/admin/users/user-list",
2750
+ title: "user_list",
2751
+ component: Ot
2752
+ },
2753
+ {
2754
+ path: "/admin/users/assign-student",
2755
+ title: "assign_student",
2756
+ component: Ua
2757
+ },
2758
+ {
2759
+ path: "/admin/users/user-deleted",
2760
+ title: "user_deleted",
2761
+ component: xa
2762
+ },
2763
+ {
2764
+ path: "/admin/users/import-csv",
2765
+ title: "csv_import",
2766
+ component: qa
2767
+ }
2768
+ ], ls = () => /* @__PURE__ */ e(kt, { tabs: Wa });
2769
+ export {
2770
+ ls as default
2771
+ };