mario-core 3.0.8-admin → 3.0.8-es

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 (291) hide show
  1. package/dist/Dashboard-DiUm-pc-.js +186 -0
  2. package/dist/Dashboard-HV1eiElu.cjs +1 -0
  3. package/dist/EmailTemplateDetail-D0D3bpWO.cjs +1 -0
  4. package/dist/EmailTemplateDetail-KvZuTCLF.js +411 -0
  5. package/dist/EmailTemplateList-B3YqSFaY.js +172 -0
  6. package/dist/EmailTemplateList-BAejgUUG.cjs +1 -0
  7. package/dist/FaqList-D5XugT5h.js +320 -0
  8. package/dist/FaqList-DpUzQ2vq.cjs +1 -0
  9. package/dist/GalleryList-B5QA3Rol.cjs +1 -0
  10. package/dist/GalleryList-CTo33BcT.js +53 -0
  11. package/dist/Login-CHAmP5ek.js +897 -0
  12. package/dist/Login-Cxbto5eM.cjs +1 -0
  13. package/dist/NotificationList-2Mf_NsOP.js +3631 -0
  14. package/dist/NotificationList-D1jMOBwH.cjs +8 -0
  15. package/dist/SchoolList-CClJ_UPT.cjs +1 -0
  16. package/dist/SchoolList-JmrmL2zE.js +5 -0
  17. package/dist/SkillList-BMyhRY78.js +406 -0
  18. package/dist/SkillList-DlMx_Evw.cjs +1 -0
  19. package/dist/TeacherSelector-B4zvSVhk.js +71 -0
  20. package/dist/TeacherSelector-DORi8RIb.cjs +1 -0
  21. package/dist/TheContent-BHmlooLu.cjs +1 -0
  22. package/dist/TheContent-V2T-Pqz8.js +38 -0
  23. package/dist/UserContainer-B-4oVOEp.cjs +1 -0
  24. package/dist/UserContainer-BaHMryYI.js +2337 -0
  25. package/dist/UserDetail-B-Mq_itT.cjs +1 -0
  26. package/dist/UserDetail-BBRiU97G.js +665 -0
  27. package/dist/assets/Images.d.ts +14 -14
  28. package/dist/components/Alerts/CommonAlert.d.ts +3 -3
  29. package/dist/components/Alerts/EmptyDataAlert.d.ts +8 -8
  30. package/dist/components/Alerts/ErrorHandler.d.ts +6 -6
  31. package/dist/components/Buttons/AddButton.d.ts +8 -7
  32. package/dist/components/Buttons/AddButtonIcon.d.ts +6 -6
  33. package/dist/components/Buttons/CloseButton.d.ts +8 -8
  34. package/dist/components/Buttons/DeleteButtonIcon.d.ts +6 -6
  35. package/dist/components/Buttons/DetailActionButtons.d.ts +9 -8
  36. package/dist/components/Buttons/EditButtonIcon.d.ts +6 -6
  37. package/dist/components/Buttons/LinkEditButton.d.ts +8 -7
  38. package/dist/components/Buttons/LoginNavButton.d.ts +8 -8
  39. package/dist/components/Buttons/ToggleButton.d.ts +10 -10
  40. package/dist/components/Buttons/UploadFileButton.d.ts +13 -13
  41. package/dist/components/Headers/CommonHeader.d.ts +7 -7
  42. package/dist/components/Image/UploadImage.d.ts +2 -3
  43. package/dist/components/Inputs/FileInput.d.ts +8 -8
  44. package/dist/components/Inputs/PasswordInput.d.ts +8 -8
  45. package/dist/components/Inputs/SearchBox.d.ts +10 -10
  46. package/dist/components/Inputs/SearchBoxContainer.d.ts +9 -10
  47. package/dist/components/Labels/RequiredLabel.d.ts +6 -6
  48. package/dist/components/Loading/Loading.d.ts +3 -3
  49. package/dist/components/Modals/CommonModal.d.ts +2 -3
  50. package/dist/components/Modals/NotificationLogoutModal.d.ts +2 -0
  51. package/dist/components/Modals/NotificationModal.d.ts +2 -3
  52. package/dist/components/Others/QuitPrompt.d.ts +5 -2
  53. package/dist/components/Pagination/CustomPagination.d.ts +2 -3
  54. package/dist/components/Scroll/ScrollToTop.d.ts +3 -3
  55. package/dist/components/Selectors/AcademicClassSelector.d.ts +2 -3
  56. package/dist/components/Selectors/CreatableSelector.d.ts +2 -3
  57. package/dist/components/Selectors/CustomSelector.d.ts +2 -3
  58. package/dist/components/Selectors/MailCategorySelectors.d.ts +2 -3
  59. package/dist/components/Selectors/QuestionCategorySelector.d.ts +2 -3
  60. package/dist/components/Selectors/QuestionTypeSelector.d.ts +2 -3
  61. package/dist/components/Selectors/StarRatingSelector.d.ts +2 -3
  62. package/dist/components/Selectors/SuggestionCategorySelector.d.ts +2 -3
  63. package/dist/components/Tabs/CustomTab.d.ts +2 -3
  64. package/dist/components/Tabs/TabsWithComponent.d.ts +10 -0
  65. package/dist/configs/editorConfig.d.ts +7 -7
  66. package/dist/containers/Commons/NotFound.d.ts +3 -3
  67. package/dist/containers/DistrictSchools/views/SchoolList.d.ts +3 -3
  68. package/dist/containers/EmailTemplate/components/AttachmentFile.d.ts +8 -7
  69. package/dist/containers/EmailTemplate/components/MailParam.d.ts +8 -7
  70. package/dist/containers/EmailTemplate/configs/emailTemplateSchema.d.ts +13 -13
  71. package/dist/containers/EmailTemplate/hooks/useEmailTemplateDetail.d.ts +27 -28
  72. package/dist/containers/EmailTemplate/hooks/useEmailTemplateList.d.ts +11 -11
  73. package/dist/containers/EmailTemplate/views/EmailTemplateDetail.d.ts +3 -3
  74. package/dist/containers/EmailTemplate/views/EmailTemplateList.d.ts +3 -3
  75. package/dist/containers/Faq/components/FaqDetailModal.d.ts +2 -3
  76. package/dist/containers/Faq/hooks/useFaqDetail.d.ts +17 -18
  77. package/dist/containers/Faq/hooks/useFaqList.d.ts +9 -9
  78. package/dist/containers/Faq/views/FaqList.d.ts +3 -3
  79. package/dist/containers/Gallery/components/ActionModal.d.ts +2 -3
  80. package/dist/containers/Gallery/components/Filter.d.ts +9 -8
  81. package/dist/containers/Gallery/components/Media.d.ts +9 -8
  82. package/dist/containers/Gallery/components/MediaDetail.d.ts +7 -7
  83. package/dist/containers/Gallery/components/MediaList.d.ts +7 -7
  84. package/dist/containers/Gallery/components/MediaNav.d.ts +19 -18
  85. package/dist/containers/Gallery/constants/gallery.types.d.ts +21 -21
  86. package/dist/containers/Gallery/extensions/helpers.d.ts +4 -4
  87. package/dist/containers/Gallery/hooks/useGalleryList.d.ts +30 -31
  88. package/dist/containers/Gallery/views/GalleryList.d.ts +6 -6
  89. package/dist/containers/Login/components/GoogleLoginButton.d.ts +10 -0
  90. package/dist/containers/Login/constant/authConfig.d.ts +38 -0
  91. package/dist/containers/Login/constant/types.d.ts +27 -0
  92. package/dist/containers/Login/hooks/useForgotPassword.d.ts +20 -21
  93. package/dist/containers/Login/hooks/useLogin.d.ts +26 -23
  94. package/dist/containers/Login/hooks/useLoginTwoFactor.d.ts +4 -4
  95. package/dist/containers/Login/views/Dashboard.d.ts +3 -3
  96. package/dist/containers/Login/views/Login.d.ts +8 -9
  97. package/dist/containers/Login/views/block/BlockBackground.d.ts +7 -0
  98. package/dist/containers/Login/views/block/BlockForgetPassword.d.ts +6 -3
  99. package/dist/containers/Login/views/block/BlockLogin.d.ts +9 -7
  100. package/dist/containers/Login/views/block/BlockResetPassword.d.ts +2 -3
  101. package/dist/containers/Login/views/block/BlockSelectTeacher.d.ts +11 -12
  102. package/dist/containers/Login/views/block/BlockTwoFactorLogin.d.ts +2 -3
  103. package/dist/containers/Login/views/block/CloseBlock.d.ts +6 -6
  104. package/dist/containers/Login/views/block/ContentHomePage.d.ts +5 -5
  105. package/dist/containers/Login/views/block/IconContent.d.ts +7 -7
  106. package/dist/containers/Login/views/block/QuoteContent.d.ts +2 -3
  107. package/dist/containers/Notifications/components/NotificationButton.d.ts +5 -5
  108. package/dist/containers/Notifications/components/NotificationStatusSelector.d.ts +6 -7
  109. package/dist/containers/Notifications/hooks/useNotificationList.d.ts +17 -17
  110. package/dist/containers/Notifications/hooks/useUnreadNotification.d.ts +4 -4
  111. package/dist/containers/Notifications/views/NotificationList.d.ts +2 -3
  112. package/dist/containers/Skill/components/SkillDetailModal.d.ts +2 -3
  113. package/dist/containers/Skill/components/SkillSelector.d.ts +2 -3
  114. package/dist/containers/Skill/hooks/useSkillDetail.d.ts +19 -20
  115. package/dist/containers/Skill/hooks/useSkillList.d.ts +10 -9
  116. package/dist/containers/Skill/views/SkillList.d.ts +3 -3
  117. package/dist/containers/User/components/AssignStudentModal.d.ts +19 -0
  118. package/dist/containers/User/components/DeleteBulkModel.d.ts +3 -0
  119. package/dist/containers/User/components/FilterPopover.d.ts +21 -0
  120. package/dist/containers/User/components/HeaderCell.d.ts +19 -0
  121. package/dist/containers/User/components/RemoveAssistant.d.ts +3 -0
  122. package/dist/containers/User/components/RemoveCounselor.d.ts +3 -0
  123. package/dist/containers/User/components/RemoveTeacher.d.ts +3 -0
  124. package/dist/containers/User/components/TableHeader.d.ts +14 -0
  125. package/dist/containers/User/components/TeacherSelector.d.ts +2 -0
  126. package/dist/containers/User/configs/changePasswordSchema.d.ts +11 -10
  127. package/dist/containers/User/configs/constants.d.ts +62 -0
  128. package/dist/containers/User/configs/type.d.ts +210 -0
  129. package/dist/containers/User/configs/userSchema.d.ts +15 -15
  130. package/dist/containers/User/hooks/useAssignStudent.d.ts +33 -0
  131. package/dist/containers/User/hooks/useAssignStudentList.d.ts +33 -0
  132. package/dist/containers/User/hooks/useAssistantList.d.ts +9 -0
  133. package/dist/containers/User/hooks/useClickOutside.d.ts +2 -0
  134. package/dist/containers/User/hooks/useCounselorList.d.ts +9 -0
  135. package/dist/containers/User/hooks/useFilterPopover.d.ts +36 -0
  136. package/dist/containers/User/hooks/useTableHeader.d.ts +19 -0
  137. package/dist/containers/User/hooks/useTeacherList.d.ts +9 -0
  138. package/dist/containers/User/hooks/useUserDetail.d.ts +31 -24
  139. package/dist/containers/User/hooks/useUserList.d.ts +14 -11
  140. package/dist/containers/User/hooks/userFilters.d.ts +7 -0
  141. package/dist/containers/User/views/AssignStudentList.d.ts +2 -0
  142. package/dist/containers/User/views/UserContainer.d.ts +2 -0
  143. package/dist/containers/User/views/UserDetail.d.ts +2 -3
  144. package/dist/containers/User/views/UserList.d.ts +2 -3
  145. package/dist/hooks/useClassFontSize.d.ts +4 -0
  146. package/dist/hooks/useFilters.d.ts +7 -8
  147. package/dist/i18n.d.ts +2 -2
  148. package/dist/index-C95SWLrn.js +18163 -0
  149. package/dist/index-DixwqZ17.cjs +29 -0
  150. package/dist/index.d.ts +111 -110
  151. package/dist/index.esm-BckW25l9.cjs +1 -0
  152. package/dist/index.esm-hqKUWCW0.js +15 -0
  153. package/dist/index.js +1 -10373
  154. package/dist/index.modern.js +159 -10213
  155. package/dist/layouts/TheContent.d.ts +3 -3
  156. package/dist/mailCategoryService-BqDtPJRc.js +10 -0
  157. package/dist/mailCategoryService-DBMJOyls.cjs +1 -0
  158. package/dist/mario-core.css +5 -0
  159. package/dist/redux/assessments/action.d.ts +1 -1
  160. package/dist/redux/assessments/reducer.d.ts +10 -5
  161. package/dist/redux/assignment/action.d.ts +1 -1
  162. package/dist/redux/assignment/reducer.d.ts +4 -2
  163. package/dist/redux/assistants/action.d.ts +1 -1
  164. package/dist/redux/assistants/reducer.d.ts +4 -2
  165. package/dist/redux/badges/action.d.ts +1 -1
  166. package/dist/redux/badges/reducer.d.ts +4 -2
  167. package/dist/redux/bandScores/action.d.ts +1 -1
  168. package/dist/redux/bandScores/reducer.d.ts +4 -2
  169. package/dist/redux/certificate/action.d.ts +1 -1
  170. package/dist/redux/certificate/reducer.d.ts +4 -2
  171. package/dist/redux/classes/action.d.ts +1 -1
  172. package/dist/redux/classes/reducer.d.ts +4 -2
  173. package/dist/redux/commons/action.d.ts +18 -18
  174. package/dist/redux/commons/reducer.d.ts +4 -2
  175. package/dist/redux/conferenceRubrics/action.d.ts +1 -1
  176. package/dist/redux/conferenceRubrics/reducer.d.ts +4 -2
  177. package/dist/redux/customAlert/action.d.ts +1 -1
  178. package/dist/redux/customAlert/reducer.d.ts +4 -2
  179. package/dist/redux/dashboard/action.d.ts +5 -5
  180. package/dist/redux/dashboard/reducer.d.ts +4 -2
  181. package/dist/redux/dataPlayer/action.d.ts +2 -2
  182. package/dist/redux/dataPlayer/reducer.d.ts +4 -2
  183. package/dist/redux/emailTemplates/action.d.ts +1 -1
  184. package/dist/redux/emailTemplates/reducer.d.ts +4 -2
  185. package/dist/redux/faqs/action.d.ts +1 -1
  186. package/dist/redux/faqs/reducer.d.ts +4 -2
  187. package/dist/redux/feedback/action.d.ts +1 -1
  188. package/dist/redux/feedback/reducer.d.ts +4 -2
  189. package/dist/redux/gallery/action.d.ts +2 -2
  190. package/dist/redux/gallery/reducer.d.ts +4 -2
  191. package/dist/redux/goalExamples/action.d.ts +1 -1
  192. package/dist/redux/goalExamples/reducer.d.ts +4 -2
  193. package/dist/redux/improveMyClass/action.d.ts +1 -1
  194. package/dist/redux/improveMyClass/reducer.d.ts +4 -2
  195. package/dist/redux/learningStrategies/action.d.ts +1 -1
  196. package/dist/redux/learningStrategies/reducer.d.ts +4 -2
  197. package/dist/redux/learningSupportCategories/action.d.ts +1 -1
  198. package/dist/redux/learningSupportCategories/reducer.d.ts +4 -2
  199. package/dist/redux/mailCategories/action.d.ts +1 -1
  200. package/dist/redux/mailCategories/reducer.d.ts +4 -2
  201. package/dist/redux/navMobile/action.d.ts +1 -1
  202. package/dist/redux/navMobile/reducer.d.ts +4 -2
  203. package/dist/redux/notifications/action.d.ts +3 -3
  204. package/dist/redux/notifications/reducer.d.ts +4 -2
  205. package/dist/redux/questionBanks/action.d.ts +1 -1
  206. package/dist/redux/questionBanks/reducer.d.ts +4 -2
  207. package/dist/redux/questionByCategory/action.d.ts +8 -8
  208. package/dist/redux/questionByCategory/reducer.d.ts +4 -2
  209. package/dist/redux/questionCategory/action.d.ts +1 -1
  210. package/dist/redux/questionCategory/reducer.d.ts +4 -2
  211. package/dist/redux/reflectionForms/action.d.ts +1 -1
  212. package/dist/redux/reflectionForms/reducer.d.ts +4 -2
  213. package/dist/redux/reflectionResults/action.d.ts +1 -1
  214. package/dist/redux/reflectionResults/reducer.d.ts +4 -2
  215. package/dist/redux/schoolBlankDays/action.d.ts +1 -1
  216. package/dist/redux/schoolBlankDays/reducer.d.ts +4 -2
  217. package/dist/redux/semester/action.d.ts +1 -1
  218. package/dist/redux/semester/reducer.d.ts +4 -2
  219. package/dist/redux/sessionPlayers/action.d.ts +5 -5
  220. package/dist/redux/sessionPlayers/reducer.d.ts +4 -2
  221. package/dist/redux/sessionTemplateGeneralClasses/action.d.ts +1 -1
  222. package/dist/redux/sessionTemplateGeneralClasses/reducer.d.ts +4 -2
  223. package/dist/redux/sessionTemplates/action.d.ts +1 -1
  224. package/dist/redux/sessionTemplates/reducer.d.ts +4 -2
  225. package/dist/redux/skills/action.d.ts +1 -1
  226. package/dist/redux/skills/reducer.d.ts +4 -2
  227. package/dist/redux/subjects/action.d.ts +1 -1
  228. package/dist/redux/subjects/reducer.d.ts +4 -2
  229. package/dist/redux/suggestionBanks/action.d.ts +1 -1
  230. package/dist/redux/suggestionBanks/reducer.d.ts +4 -2
  231. package/dist/redux/teacher/myStudent/action.d.ts +1 -1
  232. package/dist/redux/teacher/myStudent/reducer.d.ts +4 -2
  233. package/dist/redux/tutorialScreen/action.d.ts +1 -1
  234. package/dist/redux/tutorialScreen/reducer.d.ts +10 -5
  235. package/dist/redux/users/action.d.ts +2 -2
  236. package/dist/redux/users/reducer.d.ts +4 -2
  237. package/dist/redux/widget/action.d.ts +1 -1
  238. package/dist/redux/widget/reducer.d.ts +4 -2
  239. package/dist/rootReducer.d.ts +96 -49
  240. package/dist/services/accountService.d.ts +13 -12
  241. package/dist/services/api.d.ts +3 -3
  242. package/dist/services/classService.d.ts +1 -1
  243. package/dist/services/emailTemplateService.d.ts +6 -6
  244. package/dist/services/faqService.d.ts +6 -6
  245. package/dist/services/fileServices.d.ts +13 -13
  246. package/dist/services/galleryService.d.ts +2 -2
  247. package/dist/services/languageService.d.ts +1 -0
  248. package/dist/services/mailCategoryService.d.ts +1 -1
  249. package/dist/services/notificationService.d.ts +7 -7
  250. package/dist/services/questionCategoryService.d.ts +1 -1
  251. package/dist/services/schoolService.d.ts +1 -0
  252. package/dist/services/skillService.d.ts +6 -6
  253. package/dist/services/suggestionCategoryService.d.ts +1 -1
  254. package/dist/services/userService.d.ts +21 -9
  255. package/dist/store.d.ts +3 -3
  256. package/dist/types/Conversation.d.ts +8 -8
  257. package/dist/types/ConversationMember.d.ts +5 -5
  258. package/dist/types/Dashboard.d.ts +5 -5
  259. package/dist/types/Filter.d.ts +10 -10
  260. package/dist/types/Language.d.ts +8 -0
  261. package/dist/types/Message.d.ts +13 -13
  262. package/dist/types/Notification.d.ts +8 -8
  263. package/dist/utils/canAccessRoute.d.ts +2 -2
  264. package/dist/utils/constants.d.ts +77 -67
  265. package/dist/utils/debounce.d.ts +2 -2
  266. package/dist/utils/domHelpers.d.ts +2 -2
  267. package/dist/utils/encodeParams.d.ts +2 -2
  268. package/dist/utils/firstCheckToken.d.ts +2 -2
  269. package/dist/utils/generateRandomString.d.ts +2 -2
  270. package/dist/utils/getAccessToken.d.ts +2 -2
  271. package/dist/utils/getCookieValue.d.ts +2 -0
  272. package/dist/utils/getFileUrl.d.ts +2 -2
  273. package/dist/utils/getStaticFileUrl.d.ts +2 -0
  274. package/dist/utils/getTextFromHTML.d.ts +2 -2
  275. package/dist/utils/utcToLocalTime.d.ts +2 -2
  276. package/package.json +68 -77
  277. package/dist/components/Alerts/ReactNotification.d.ts +0 -4
  278. package/dist/containers/Login/constant/type.d.ts +0 -5
  279. package/dist/containers/Login/views/ModelSelectRole.d.ts +0 -4
  280. package/dist/index.css +0 -658
  281. package/dist/index.js.map +0 -1
  282. package/dist/index.modern.js.map +0 -1
  283. package/dist/index.test.d.ts +0 -1
  284. package/dist/layouts/TheFooter.d.ts +0 -3
  285. package/dist/layouts/TheHeader.d.ts +0 -3
  286. package/dist/layouts/TheHeaderDropdown.d.ts +0 -3
  287. package/dist/layouts/TheLanguageDropdown.d.ts +0 -3
  288. package/dist/layouts/TheLayout.d.ts +0 -4
  289. package/dist/layouts/TheSidebar.d.ts +0 -3
  290. package/dist/types/Payload.d.ts +0 -15
  291. package/dist/utils/amplitude.d.ts +0 -1
@@ -0,0 +1,172 @@
1
+ import { jsxs as i, jsx as t } from "react/jsx-runtime";
2
+ import { Row as L, Col as p, Table as C } from "reactstrap";
3
+ import { u as D, s as g, t as b, v as I, c as N, w as A, x as w, h as s, y as x, L as R, D as F, z as P, C as k, F as M } from "./index-C95SWLrn.js";
4
+ import { format as S } from "date-fns";
5
+ import { useCallback as z, useEffect as $ } from "react";
6
+ import { useSelector as E, useDispatch as j } from "react-redux";
7
+ import { useNavigate as B } from "react-router-dom";
8
+ import { g as U, a as O, r as q } from "./mailCategoryService-BqDtPJRc.js";
9
+ import { useTranslation as G } from "react-i18next";
10
+ const H = "/admin/email-template", J = "/admin/create-email-template", K = "Email template list", Q = () => {
11
+ const l = B(), f = E(
12
+ (e) => e.emailTemplate.emailTemplateList
13
+ ), r = E(
14
+ (e) => e.emailTemplate.totalItems
15
+ ), c = E(
16
+ (e) => e.mailCategory.mailCategoryList
17
+ ), { filters: m, changeFilters: d } = D(), a = j(), h = z(async () => {
18
+ var e, n;
19
+ a(g(!0));
20
+ try {
21
+ const o = await U(m), { items: u, totalItems: v } = o.data;
22
+ if (a(
23
+ b({ emailTemplateList: u, totalItems: v })
24
+ ), c && c.length == 0) {
25
+ const _ = await O();
26
+ a(I(_.data.items));
27
+ }
28
+ } catch (o) {
29
+ a(
30
+ N({
31
+ type: "danger",
32
+ message: ((n = (e = o.response) == null ? void 0 : e.data) == null ? void 0 : n.title) || o.message
33
+ })
34
+ );
35
+ }
36
+ a(g(!1));
37
+ }, [a, m]), y = z(
38
+ (e) => {
39
+ var n, o;
40
+ a(g(!0));
41
+ try {
42
+ a(
43
+ A({
44
+ isOpen: !0,
45
+ type: "warning",
46
+ message: "Do you want to remove this email template?",
47
+ onConfirm: async () => {
48
+ await q(e), a(
49
+ N({
50
+ type: "success",
51
+ message: "Remove template successfully"
52
+ })
53
+ ), d({ currentPage: 1 });
54
+ }
55
+ })
56
+ );
57
+ } catch (u) {
58
+ a(
59
+ N({
60
+ type: "danger",
61
+ message: ((o = (n = u.response) == null ? void 0 : n.data) == null ? void 0 : o.title) || u.message
62
+ })
63
+ );
64
+ }
65
+ a(g(!1));
66
+ },
67
+ [m]
68
+ ), T = z((e) => {
69
+ const n = e ? `${H}/${e}` : J;
70
+ l(n);
71
+ }, []);
72
+ return $(() => {
73
+ document.title = K;
74
+ }, []), $(() => {
75
+ h();
76
+ }, [m]), {
77
+ emailTemplateList: f,
78
+ totalItems: r,
79
+ filters: m,
80
+ changeFilters: d,
81
+ getData: h,
82
+ removeData: y,
83
+ goToDetail: T,
84
+ mailCategoryList: c
85
+ };
86
+ }, V = "email_template", ie = () => {
87
+ const { t: l } = G(), { classFontSize: f } = w(), {
88
+ emailTemplateList: r,
89
+ totalItems: c,
90
+ filters: m,
91
+ changeFilters: d,
92
+ removeData: a,
93
+ goToDetail: h,
94
+ mailCategoryList: y
95
+ } = Q(), T = (e) => {
96
+ a(e);
97
+ };
98
+ return /* @__PURE__ */ i("div", { className: `fadeIn animated ${s[f]}`, children: [
99
+ /* @__PURE__ */ t("h5", { className: `mb-2 ${s["custom-title-font-size"]}`, children: l(V) }),
100
+ /* @__PURE__ */ i(L, { className: "my-2", children: [
101
+ /* @__PURE__ */ t(p, { md: 4, children: /* @__PURE__ */ t(
102
+ x,
103
+ {
104
+ text: l("create_template"),
105
+ onClick: () => h(),
106
+ className: ` ${s["custom-font-size"]}`
107
+ }
108
+ ) }),
109
+ /* @__PURE__ */ i(
110
+ p,
111
+ {
112
+ md: 4,
113
+ className: `d-flex justify-content-end align-items-center ${s["custom-font-size"]}`,
114
+ children: [
115
+ l("total_of_templates"),
116
+ ": ",
117
+ c
118
+ ]
119
+ }
120
+ )
121
+ ] }),
122
+ /* @__PURE__ */ i(L, { className: "mb-2", children: [
123
+ /* @__PURE__ */ i(p, { md: 8, children: [
124
+ r && r.length > 0 ? /* @__PURE__ */ i(C, { bordered: !0, hover: !0, striped: !0, responsive: !0, size: "sm", children: [
125
+ /* @__PURE__ */ t("thead", { children: /* @__PURE__ */ i("tr", { children: [
126
+ /* @__PURE__ */ t("th", { className: `align-top ${s["custom-font-size"]}`, children: l("template_name") }),
127
+ /* @__PURE__ */ t("th", { className: `align-top ${s["custom-font-size"]}`, children: l("category_name") }),
128
+ /* @__PURE__ */ t("th", { className: `align-top ${s["custom-font-size"]}`, children: l("created_date") }),
129
+ /* @__PURE__ */ t("th", { className: `text-center ${s["custom-font-size"]}`, children: l("action") })
130
+ ] }) }),
131
+ /* @__PURE__ */ t("tbody", { children: r.map((e) => /* @__PURE__ */ i("tr", { children: [
132
+ /* @__PURE__ */ t("td", { className: "align-middle", children: /* @__PURE__ */ t(
133
+ R,
134
+ {
135
+ label: e.subject,
136
+ onClick: () => h(e.id),
137
+ className: ` ${s["custom-font-size"]}`
138
+ }
139
+ ) }),
140
+ /* @__PURE__ */ t("td", { className: `align-middle ${s["custom-font-size"]}`, children: e.category.name }),
141
+ /* @__PURE__ */ t("td", { className: `align-middle ${s["custom-font-size"]}`, children: S(
142
+ new Date(e.createdAt),
143
+ F
144
+ ) }),
145
+ /* @__PURE__ */ t("td", { className: "text-center align-middle", children: /* @__PURE__ */ t(
146
+ P,
147
+ {
148
+ onClick: () => T(e.id)
149
+ }
150
+ ) })
151
+ ] }, e.id)) })
152
+ ] }) : /* @__PURE__ */ t(k, { label: l("template") }),
153
+ /* @__PURE__ */ t(L, { className: "mt-2", children: /* @__PURE__ */ t(p, { md: 12, children: /* @__PURE__ */ t(
154
+ M,
155
+ {
156
+ filters: m,
157
+ totalRecordCount: c,
158
+ changePageSize: (e) => d({ pageSize: e }),
159
+ changePage: (e) => d({ currentPage: e })
160
+ }
161
+ ) }) })
162
+ ] }),
163
+ /* @__PURE__ */ t(p, { md: 4, children: /* @__PURE__ */ i(C, { bordered: !0, hover: !0, striped: !0, responsive: !0, size: "sm", children: [
164
+ /* @__PURE__ */ t("thead", { children: /* @__PURE__ */ t("tr", { children: /* @__PURE__ */ t("th", { className: `align-top ${s["custom-font-size"]}`, children: l("category_name") }) }) }),
165
+ /* @__PURE__ */ t("tbody", { children: y.map((e) => /* @__PURE__ */ t("tr", { children: /* @__PURE__ */ t("td", { className: `align-middle ${s["custom-font-size"]}`, children: e.name }) }, e.id)) })
166
+ ] }) })
167
+ ] })
168
+ ] });
169
+ };
170
+ export {
171
+ ie as default
172
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),i=require("reactstrap"),t=require("./index-DixwqZ17.cjs"),L=require("date-fns"),h=require("react"),x=require("react-redux"),N=require("react-router-dom"),f=require("./mailCategoryService-DBMJOyls.cjs"),E=require("react-i18next"),z="/admin/email-template",b="/admin/create-email-template",$="Email template list",v=()=>{const l=N.useNavigate(),p=x.useSelector(s=>s.emailTemplate.emailTemplateList),m=x.useSelector(s=>s.emailTemplate.totalItems),r=x.useSelector(s=>s.mailCategory.mailCategoryList),{filters:n,changeFilters:d}=t.useFilters(),a=x.useDispatch(),u=h.useCallback(async()=>{var s,c;a(t.setLoading(!0));try{const o=await f.get(n),{items:g,totalItems:T}=o.data;if(a(t.setEmailTemplateList({emailTemplateList:g,totalItems:T})),r&&r.length==0){const C=await f.get$1();a(t.setMailCategory(C.data.items))}}catch(o){a(t.setAlert({type:"danger",message:((c=(s=o.response)==null?void 0:s.data)==null?void 0:c.title)||o.message}))}a(t.setLoading(!1))},[a,n]),j=h.useCallback(s=>{var c,o;a(t.setLoading(!0));try{a(t.setModal({isOpen:!0,type:"warning",message:"Do you want to remove this email template?",onConfirm:async()=>{await f.remove(s),a(t.setAlert({type:"success",message:"Remove template successfully"})),d({currentPage:1})}}))}catch(g){a(t.setAlert({type:"danger",message:((o=(c=g.response)==null?void 0:c.data)==null?void 0:o.title)||g.message}))}a(t.setLoading(!1))},[n]),y=h.useCallback(s=>{const c=s?`${z}/${s}`:b;l(c)},[]);return h.useEffect(()=>{document.title=$},[]),h.useEffect(()=>{u()},[n]),{emailTemplateList:p,totalItems:m,filters:n,changeFilters:d,getData:u,removeData:j,goToDetail:y,mailCategoryList:r}},R="email_template",_=()=>{const{t:l}=E.useTranslation(),{classFontSize:p}=t.useClassFontSize(),{emailTemplateList:m,totalItems:r,filters:n,changeFilters:d,removeData:a,goToDetail:u,mailCategoryList:j}=v(),y=s=>{a(s)};return e.jsxs("div",{className:`fadeIn animated ${t.styles[p]}`,children:[e.jsx("h5",{className:`mb-2 ${t.styles["custom-title-font-size"]}`,children:l(R)}),e.jsxs(i.Row,{className:"my-2",children:[e.jsx(i.Col,{md:4,children:e.jsx(t.AddButton,{text:l("create_template"),onClick:()=>u(),className:` ${t.styles["custom-font-size"]}`})}),e.jsxs(i.Col,{md:4,className:`d-flex justify-content-end align-items-center ${t.styles["custom-font-size"]}`,children:[l("total_of_templates"),": ",r]})]}),e.jsxs(i.Row,{className:"mb-2",children:[e.jsxs(i.Col,{md:8,children:[m&&m.length>0?e.jsxs(i.Table,{bordered:!0,hover:!0,striped:!0,responsive:!0,size:"sm",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{className:`align-top ${t.styles["custom-font-size"]}`,children:l("template_name")}),e.jsx("th",{className:`align-top ${t.styles["custom-font-size"]}`,children:l("category_name")}),e.jsx("th",{className:`align-top ${t.styles["custom-font-size"]}`,children:l("created_date")}),e.jsx("th",{className:`text-center ${t.styles["custom-font-size"]}`,children:l("action")})]})}),e.jsx("tbody",{children:m.map(s=>e.jsxs("tr",{children:[e.jsx("td",{className:"align-middle",children:e.jsx(t.LinkEditButton,{label:s.subject,onClick:()=>u(s.id),className:` ${t.styles["custom-font-size"]}`})}),e.jsx("td",{className:`align-middle ${t.styles["custom-font-size"]}`,children:s.category.name}),e.jsx("td",{className:`align-middle ${t.styles["custom-font-size"]}`,children:L.format(new Date(s.createdAt),t.DATE_RESULT)}),e.jsx("td",{className:"text-center align-middle",children:e.jsx(t.DeleteButtonIcon,{onClick:()=>y(s.id)})})]},s.id))})]}):e.jsx(t.EmptyDataAlert,{label:l("template")}),e.jsx(i.Row,{className:"mt-2",children:e.jsx(i.Col,{md:12,children:e.jsx(t.CustomPagination,{filters:n,totalRecordCount:r,changePageSize:s=>d({pageSize:s}),changePage:s=>d({currentPage:s})})})})]}),e.jsx(i.Col,{md:4,children:e.jsxs(i.Table,{bordered:!0,hover:!0,striped:!0,responsive:!0,size:"sm",children:[e.jsx("thead",{children:e.jsx("tr",{children:e.jsx("th",{className:`align-top ${t.styles["custom-font-size"]}`,children:l("category_name")})})}),e.jsx("tbody",{children:j.map(s=>e.jsx("tr",{children:e.jsx("td",{className:`align-middle ${t.styles["custom-font-size"]}`,children:s.name})},s.id))})]})})]})]})};exports.default=_;
@@ -0,0 +1,320 @@
1
+ import { jsx as t, jsxs as h } from "react/jsx-runtime";
2
+ import { forwardRef as P, useCallback as I, useEffect as v, useState as b, useRef as M } from "react";
3
+ import { Row as R, Col as C, Input as S, Table as j } from "reactstrap";
4
+ import { O as z, R as B, E as T, a as x, B as U, u as O, s as F, P as V, c as A, w as _, Q as H, y as G, L as J, z as K, C as W, F as X } from "./index-C95SWLrn.js";
5
+ import { Formik as Y } from "formik";
6
+ import * as N from "yup";
7
+ import { useSelector as $, useDispatch as k } from "react-redux";
8
+ const Z = N.object({
9
+ question: N.string().required("Question is required"),
10
+ answer: N.string().required("Answer is required")
11
+ }), ee = (e, a) => {
12
+ const {
13
+ header: o,
14
+ confirmText: g,
15
+ onConfirm: s,
16
+ faqDetail: w,
17
+ onCancel: f,
18
+ edited: r,
19
+ setEdited: c,
20
+ setEditedTrue: i,
21
+ setEditedFalse: m
22
+ } = e;
23
+ return /* @__PURE__ */ t(
24
+ Y,
25
+ {
26
+ initialValues: w,
27
+ enableReinitialize: !0,
28
+ validationSchema: Z,
29
+ onSubmit: (p, d) => {
30
+ s(p), d.resetForm();
31
+ },
32
+ children: (p) => {
33
+ const {
34
+ values: d,
35
+ touched: u,
36
+ errors: l,
37
+ handleChange: y,
38
+ handleBlur: q,
39
+ handleSubmit: L
40
+ } = p;
41
+ return /* @__PURE__ */ t(
42
+ z,
43
+ {
44
+ header: o,
45
+ confirmText: g,
46
+ onConfirm: L,
47
+ onCancel: f,
48
+ ref: a,
49
+ edited: r,
50
+ setEdited: c,
51
+ setEditedFalse: m,
52
+ children: /* @__PURE__ */ h(R, { children: [
53
+ /* @__PURE__ */ h(C, { md: 12, children: [
54
+ /* @__PURE__ */ t(B, { text: "Question" }),
55
+ /* @__PURE__ */ t(
56
+ S,
57
+ {
58
+ type: "textarea",
59
+ name: "question",
60
+ placeholder: "Question",
61
+ value: d.question,
62
+ onChange: (D) => {
63
+ y(D), i();
64
+ },
65
+ onBlur: q("question")
66
+ }
67
+ ),
68
+ u.question && l.question && /* @__PURE__ */ t(
69
+ T,
70
+ {
71
+ text: l.question
72
+ }
73
+ )
74
+ ] }),
75
+ /* @__PURE__ */ h(C, { md: 12, className: "pt-2", children: [
76
+ /* @__PURE__ */ t(B, { text: "Answer" }),
77
+ /* @__PURE__ */ t(
78
+ S,
79
+ {
80
+ type: "textarea",
81
+ rows: 5,
82
+ name: "answer",
83
+ placeholder: "Answer",
84
+ value: d.answer,
85
+ onChange: (D) => {
86
+ y(D), i();
87
+ },
88
+ onBlur: q("answer")
89
+ }
90
+ ),
91
+ u.answer && l.answer && /* @__PURE__ */ t(
92
+ T,
93
+ {
94
+ text: l.answer
95
+ }
96
+ )
97
+ ] })
98
+ ] })
99
+ }
100
+ );
101
+ }
102
+ }
103
+ );
104
+ }, te = P(ee), E = `${U}/api/SystemFaq`, se = (e) => x.get(E, { params: e }), ae = (e) => x.get(`${E}/${e}`), ne = (e) => x.post(E, e), re = (e) => x.put(`${E}/${e.id}`, e), oe = (e) => x.delete(`${E}/${e}`), ie = "FAQ list", le = () => {
105
+ const e = $((r) => r.faqs.faqList), a = $((r) => r.faqs.totalItems), { filters: o, changeFilters: g } = O(), s = k(), w = I(async () => {
106
+ var r, c;
107
+ s(F(!0));
108
+ try {
109
+ const i = await se(o), { items: m, totalItems: p } = i.data;
110
+ s(V({ faqList: m, totalItems: p }));
111
+ } catch (i) {
112
+ s(
113
+ A({
114
+ type: "danger",
115
+ message: ((c = (r = i.response) == null ? void 0 : r.data) == null ? void 0 : c.title) || i.message
116
+ })
117
+ );
118
+ }
119
+ s(F(!1));
120
+ }, [s, o]), f = I(
121
+ (r) => {
122
+ var c, i;
123
+ s(F(!0));
124
+ try {
125
+ s(
126
+ _({
127
+ isOpen: !0,
128
+ type: "warning",
129
+ message: "Do you want to remove this FAQ?",
130
+ onConfirm: async () => {
131
+ await oe(r), s(
132
+ A({
133
+ type: "success",
134
+ message: "Remove question successfully"
135
+ })
136
+ ), g({ currentPage: 1 });
137
+ }
138
+ })
139
+ );
140
+ } catch (m) {
141
+ s(
142
+ A({
143
+ type: "danger",
144
+ message: ((i = (c = m.response) == null ? void 0 : c.data) == null ? void 0 : i.title) || m.message
145
+ })
146
+ );
147
+ }
148
+ s(F(!1));
149
+ },
150
+ [o]
151
+ );
152
+ return v(() => {
153
+ document.title = ie;
154
+ }, []), v(() => {
155
+ w();
156
+ }, [o]), { faqList: e, totalItems: a, filters: o, changeFilters: g, getData: w, removeData: f };
157
+ }, Q = {
158
+ question: "",
159
+ answer: ""
160
+ }, ce = () => {
161
+ const e = k(), [a, o] = b(0), [g, s] = b(Q), [w, f] = b(!1), r = async () => {
162
+ localStorage.setItem(window.location.href, "true"), f(!0);
163
+ }, c = async () => {
164
+ localStorage.getItem(window.location.href) && localStorage.removeItem(window.location.href), f(!1);
165
+ };
166
+ v(() => {
167
+ a ? m() : s(Q);
168
+ }, [a]), v(() => {
169
+ c();
170
+ }, []);
171
+ const i = () => {
172
+ s(Q), o(0);
173
+ }, m = I(async () => {
174
+ var d, u;
175
+ e(F(!0));
176
+ try {
177
+ const l = await ae(a);
178
+ s(l.data);
179
+ } catch (l) {
180
+ e(
181
+ A({
182
+ type: "danger",
183
+ message: ((u = (d = l.response) == null ? void 0 : d.data) == null ? void 0 : u.title) || l.message
184
+ })
185
+ );
186
+ }
187
+ e(F(!1));
188
+ }, [a]), p = I(
189
+ async (d, u) => {
190
+ var l, y;
191
+ e(F(!0));
192
+ try {
193
+ await (a ? re : ne)(d), e(
194
+ A({
195
+ type: "success",
196
+ message: `${a ? "Update" : "Create"} FAQ successfully`
197
+ })
198
+ ), u && u(), a && o(0);
199
+ } catch (q) {
200
+ e(
201
+ A({
202
+ type: "danger",
203
+ message: ((y = (l = q.response) == null ? void 0 : l.data) == null ? void 0 : y.title) || q.message
204
+ })
205
+ );
206
+ }
207
+ e(F(!1));
208
+ },
209
+ [a, g]
210
+ );
211
+ return {
212
+ id: a,
213
+ setId: o,
214
+ faqDetail: g,
215
+ confirmData: p,
216
+ initValue: Q,
217
+ reset: i,
218
+ edited: w,
219
+ setEdited: f,
220
+ setEditedTrue: r,
221
+ setEditedFalse: c
222
+ };
223
+ }, de = "FAQ", we = () => {
224
+ const e = M(null), {
225
+ faqList: a,
226
+ totalItems: o,
227
+ filters: g,
228
+ changeFilters: s,
229
+ getData: w,
230
+ removeData: f
231
+ } = le(), {
232
+ id: r,
233
+ setId: c,
234
+ faqDetail: i,
235
+ confirmData: m,
236
+ reset: p,
237
+ edited: d,
238
+ setEdited: u,
239
+ setEditedTrue: l,
240
+ setEditedFalse: y
241
+ } = ce(), q = (n) => {
242
+ c(n || 0), e && e.current && e.current.toggle();
243
+ }, L = (n) => {
244
+ m(n, () => {
245
+ e && e.current && e.current.toggle(), w();
246
+ }), y();
247
+ }, D = (n) => {
248
+ f(n);
249
+ };
250
+ return /* @__PURE__ */ h("div", { className: "fadeIn animated", children: [
251
+ /* @__PURE__ */ t(
252
+ te,
253
+ {
254
+ ref: e,
255
+ header: r ? "Edit FAQ" : "Create FAQ",
256
+ confirmText: r ? "Update" : "Create",
257
+ onConfirm: L,
258
+ onCancel: () => p(),
259
+ faqDetail: i,
260
+ edited: d,
261
+ setEdited: u,
262
+ setEditedTrue: l,
263
+ setEditedFalse: y
264
+ }
265
+ ),
266
+ /* @__PURE__ */ t(H, { when: d }),
267
+ /* @__PURE__ */ t("h5", { className: "mb-2", children: de }),
268
+ /* @__PURE__ */ h(R, { className: "my-2", children: [
269
+ /* @__PURE__ */ t(C, { md: 4, children: /* @__PURE__ */ t(G, { text: "Create FAQ", onClick: () => q() }) }),
270
+ /* @__PURE__ */ h(
271
+ C,
272
+ {
273
+ md: 4,
274
+ className: "d-flex align-items-center justify-content-end",
275
+ children: [
276
+ "Total of FAQs: ",
277
+ o
278
+ ]
279
+ }
280
+ )
281
+ ] }),
282
+ /* @__PURE__ */ h(R, { className: "mb-2", children: [
283
+ /* @__PURE__ */ t(C, { md: 8, children: a && a.length > 0 ? /* @__PURE__ */ h(j, { bordered: !0, hover: !0, striped: !0, responsive: !0, size: "sm", children: [
284
+ /* @__PURE__ */ t("thead", { children: /* @__PURE__ */ h("tr", { children: [
285
+ /* @__PURE__ */ t("th", { className: "align-top", children: "Question" }),
286
+ /* @__PURE__ */ t("th", { className: "align-top", children: "Answer" }),
287
+ /* @__PURE__ */ t("th", { className: "text-center", children: "Action" })
288
+ ] }) }),
289
+ /* @__PURE__ */ t("tbody", { children: a.map((n) => /* @__PURE__ */ h("tr", { children: [
290
+ /* @__PURE__ */ t("td", { className: "align-middle", children: /* @__PURE__ */ t(
291
+ J,
292
+ {
293
+ label: n.question,
294
+ onClick: () => q(n.id)
295
+ }
296
+ ) }),
297
+ /* @__PURE__ */ t("td", { className: "align-middle", children: n.answer }),
298
+ /* @__PURE__ */ t("td", { className: "text-center align-middle", children: /* @__PURE__ */ t(
299
+ K,
300
+ {
301
+ onClick: () => D(n.id)
302
+ }
303
+ ) })
304
+ ] }, n.id)) })
305
+ ] }) : /* @__PURE__ */ t(W, { label: "FAQ" }) }),
306
+ /* @__PURE__ */ t(C, { md: 8, children: /* @__PURE__ */ t(
307
+ X,
308
+ {
309
+ filters: g,
310
+ totalRecordCount: o,
311
+ changePageSize: (n) => s({ pageSize: n }),
312
+ changePage: (n) => s({ currentPage: n })
313
+ }
314
+ ) })
315
+ ] })
316
+ ] });
317
+ };
318
+ export {
319
+ we as default
320
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),u=require("react"),h=require("reactstrap"),s=require("./index-DixwqZ17.cjs"),S=require("formik"),v=require("yup"),A=require("react-redux");function I(t){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const m=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(a,n,m.get?m:{enumerable:!0,get:()=>t[n]})}}return a.default=t,Object.freeze(a)}const L=I(v),R=L.object({question:L.string().required("Question is required"),answer:L.string().required("Answer is required")}),Q=(t,a)=>{const{header:n,confirmText:m,onConfirm:r,faqDetail:y,onCancel:p,edited:i,setEdited:d,setEditedTrue:l,setEditedFalse:f}=t;return e.jsx(S.Formik,{initialValues:y,enableReinitialize:!0,validationSchema:R,onSubmit:(j,g)=>{r(j),g.resetForm()},children:j=>{const{values:g,touched:x,errors:c,handleChange:w,handleBlur:q,handleSubmit:D}=j;return e.jsx(s.CommonModal,{header:n,confirmText:m,onConfirm:D,onCancel:p,ref:a,edited:i,setEdited:d,setEditedFalse:f,children:e.jsxs(h.Row,{children:[e.jsxs(h.Col,{md:12,children:[e.jsx(s.RequiredLabel,{text:"Question"}),e.jsx(h.Input,{type:"textarea",name:"question",placeholder:"Question",value:g.question,onChange:C=>{w(C),l()},onBlur:q("question")}),x.question&&c.question&&e.jsx(s.ErrorHandler,{text:c.question})]}),e.jsxs(h.Col,{md:12,className:"pt-2",children:[e.jsx(s.RequiredLabel,{text:"Answer"}),e.jsx(h.Input,{type:"textarea",rows:5,name:"answer",placeholder:"Answer",value:g.answer,onChange:C=>{w(C),l()},onBlur:q("answer")}),x.answer&&c.answer&&e.jsx(s.ErrorHandler,{text:c.answer})]})]})})}})},N=u.forwardRef(Q),F=`${s.BASE_URL}/api/SystemFaq`,k=t=>s.api.get(F,{params:t}),T=t=>s.api.get(`${F}/${t}`),$=t=>s.api.post(F,t),B=t=>s.api.put(`${F}/${t.id}`,t),P=t=>s.api.delete(`${F}/${t}`),M="FAQ list",O=()=>{const t=A.useSelector(i=>i.faqs.faqList),a=A.useSelector(i=>i.faqs.totalItems),{filters:n,changeFilters:m}=s.useFilters(),r=A.useDispatch(),y=u.useCallback(async()=>{var i,d;r(s.setLoading(!0));try{const l=await k(n),{items:f,totalItems:j}=l.data;r(s.setFaqList({faqList:f,totalItems:j}))}catch(l){r(s.setAlert({type:"danger",message:((d=(i=l.response)==null?void 0:i.data)==null?void 0:d.title)||l.message}))}r(s.setLoading(!1))},[r,n]),p=u.useCallback(i=>{var d,l;r(s.setLoading(!0));try{r(s.setModal({isOpen:!0,type:"warning",message:"Do you want to remove this FAQ?",onConfirm:async()=>{await P(i),r(s.setAlert({type:"success",message:"Remove question successfully"})),m({currentPage:1})}}))}catch(f){r(s.setAlert({type:"danger",message:((l=(d=f.response)==null?void 0:d.data)==null?void 0:l.title)||f.message}))}r(s.setLoading(!1))},[n]);return u.useEffect(()=>{document.title=M},[]),u.useEffect(()=>{y()},[n]),{faqList:t,totalItems:a,filters:n,changeFilters:m,getData:y,removeData:p}},b={question:"",answer:""},_=()=>{const t=A.useDispatch(),[a,n]=u.useState(0),[m,r]=u.useState(b),[y,p]=u.useState(!1),i=async()=>{localStorage.setItem(window.location.href,"true"),p(!0)},d=async()=>{localStorage.getItem(window.location.href)&&localStorage.removeItem(window.location.href),p(!1)};u.useEffect(()=>{a?f():r(b)},[a]),u.useEffect(()=>{d()},[]);const l=()=>{r(b),n(0)},f=u.useCallback(async()=>{var g,x;t(s.setLoading(!0));try{const c=await T(a);r(c.data)}catch(c){t(s.setAlert({type:"danger",message:((x=(g=c.response)==null?void 0:g.data)==null?void 0:x.title)||c.message}))}t(s.setLoading(!1))},[a]),j=u.useCallback(async(g,x)=>{var c,w;t(s.setLoading(!0));try{await(a?B:$)(g),t(s.setAlert({type:"success",message:`${a?"Update":"Create"} FAQ successfully`})),x&&x(),a&&n(0)}catch(q){t(s.setAlert({type:"danger",message:((w=(c=q.response)==null?void 0:c.data)==null?void 0:w.title)||q.message}))}t(s.setLoading(!1))},[a,m]);return{id:a,setId:n,faqDetail:m,confirmData:j,initValue:b,reset:l,edited:y,setEdited:p,setEditedTrue:i,setEditedFalse:d}},z="FAQ",U=()=>{const t=u.useRef(null),{faqList:a,totalItems:n,filters:m,changeFilters:r,getData:y,removeData:p}=O(),{id:i,setId:d,faqDetail:l,confirmData:f,reset:j,edited:g,setEdited:x,setEditedTrue:c,setEditedFalse:w}=_(),q=o=>{d(o||0),t&&t.current&&t.current.toggle()},D=o=>{f(o,()=>{t&&t.current&&t.current.toggle(),y()}),w()},C=o=>{p(o)},E=()=>j();return e.jsxs("div",{className:"fadeIn animated",children:[e.jsx(N,{ref:t,header:i?"Edit FAQ":"Create FAQ",confirmText:i?"Update":"Create",onConfirm:D,onCancel:E,faqDetail:l,edited:g,setEdited:x,setEditedTrue:c,setEditedFalse:w}),e.jsx(s.QuitPrompt,{when:g}),e.jsx("h5",{className:"mb-2",children:z}),e.jsxs(h.Row,{className:"my-2",children:[e.jsx(h.Col,{md:4,children:e.jsx(s.AddButton,{text:"Create FAQ",onClick:()=>q()})}),e.jsxs(h.Col,{md:4,className:"d-flex align-items-center justify-content-end",children:["Total of FAQs: ",n]})]}),e.jsxs(h.Row,{className:"mb-2",children:[e.jsx(h.Col,{md:8,children:a&&a.length>0?e.jsxs(h.Table,{bordered:!0,hover:!0,striped:!0,responsive:!0,size:"sm",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{className:"align-top",children:"Question"}),e.jsx("th",{className:"align-top",children:"Answer"}),e.jsx("th",{className:"text-center",children:"Action"})]})}),e.jsx("tbody",{children:a.map(o=>e.jsxs("tr",{children:[e.jsx("td",{className:"align-middle",children:e.jsx(s.LinkEditButton,{label:o.question,onClick:()=>q(o.id)})}),e.jsx("td",{className:"align-middle",children:o.answer}),e.jsx("td",{className:"text-center align-middle",children:e.jsx(s.DeleteButtonIcon,{onClick:()=>C(o.id)})})]},o.id))})]}):e.jsx(s.EmptyDataAlert,{label:"FAQ"})}),e.jsx(h.Col,{md:8,children:e.jsx(s.CustomPagination,{filters:m,totalRecordCount:n,changePageSize:o=>r({pageSize:o}),changePage:o=>r({currentPage:o})})})]})]})};exports.default=U;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),n=require("reactstrap"),t=require("react-redux"),r=require("./index-DixwqZ17.cjs"),a=require("react"),d=require("react-i18next"),x=({targetMedia:s})=>{var o;const{t:i}=d.useTranslation();if(!s||s!=null&&s.isFolder)return e.jsx("div",{});const c=r.getTypeByExtension(s.extension),l=r.getFileUrl(s.key||"");return e.jsxs(n.Card,{className:"position-sticky",children:[e.jsx(n.CardHeader,{children:(s==null?void 0:s.name)||"Media name"}),c===r.MediaType.IMAGE&&e.jsx(n.CardImg,{className:"p-2",src:l,loading:"lazy"}),c===r.MediaType.VIDEO&&e.jsx("div",{className:"p-2",children:e.jsx("video",{id:s.key,width:"100%",height:"100%",controls:!0,children:e.jsx("source",{src:l})})}),c===r.MediaType.AUDIO&&e.jsx("div",{className:"p-2",children:e.jsx("audio",{controls:!0,className:"w-100",children:e.jsx("source",{src:l})})}),e.jsxs(n.CardBody,{children:[e.jsx(n.CardTitle,{tag:"h6",children:i("general_info")}),e.jsxs(n.CardText,{children:[i("file_extension"),": ",(o=s.extension)==null?void 0:o.toUpperCase()]})]})]})},u=a.memo(x),h="media_gallery",j=({isLibrary:s})=>{const{t:i}=d.useTranslation(),c=t.useSelector(l=>l.gallery.targetMedia);return e.jsxs("div",{className:"fadeIn animated",children:[!s&&e.jsx("h5",{className:"mb-2",children:i(h)}),e.jsxs(n.Row,{className:"mb-2",children:[e.jsx(n.Col,{md:8,children:e.jsx(r.MediaList,{height:"100vh",isLibrary:s})}),e.jsx(n.Col,{md:4,children:e.jsx(u,{targetMedia:c},c==null?void 0:c.key)})]})]})};exports.default=j;
@@ -0,0 +1,53 @@
1
+ import { jsx as e, jsxs as o } from "react/jsx-runtime";
2
+ import { Card as a, CardHeader as h, CardImg as t, CardBody as p, CardTitle as u, CardText as f, Row as y, Col as d } from "reactstrap";
3
+ import { useSelector as x } from "react-redux";
4
+ import { a7 as C, k as N, a8 as c, a9 as v } from "./index-C95SWLrn.js";
5
+ import k from "react";
6
+ import { useTranslation as m } from "react-i18next";
7
+ const I = ({ targetMedia: s }) => {
8
+ var i;
9
+ const { t: r } = m();
10
+ if (!s || s != null && s.isFolder) return /* @__PURE__ */ e("div", {});
11
+ const l = C(s.extension), n = N(s.key || "");
12
+ return /* @__PURE__ */ o(a, { className: "position-sticky", children: [
13
+ /* @__PURE__ */ e(h, { children: (s == null ? void 0 : s.name) || "Media name" }),
14
+ l === c.IMAGE && /* @__PURE__ */ e(t, { className: "p-2", src: n, loading: "lazy" }),
15
+ l === c.VIDEO && /* @__PURE__ */ e("div", { className: "p-2", children: /* @__PURE__ */ e(
16
+ "video",
17
+ {
18
+ id: s.key,
19
+ width: "100%",
20
+ height: "100%",
21
+ controls: !0,
22
+ children: /* @__PURE__ */ e("source", { src: n })
23
+ }
24
+ ) }),
25
+ l === c.AUDIO && /* @__PURE__ */ e("div", { className: "p-2", children: /* @__PURE__ */ e("audio", { controls: !0, className: "w-100", children: /* @__PURE__ */ e("source", { src: n }) }) }),
26
+ /* @__PURE__ */ o(p, { children: [
27
+ /* @__PURE__ */ e(u, { tag: "h6", children: r("general_info") }),
28
+ /* @__PURE__ */ o(f, { children: [
29
+ r("file_extension"),
30
+ ": ",
31
+ (i = s.extension) == null ? void 0 : i.toUpperCase()
32
+ ] })
33
+ ] })
34
+ ] });
35
+ }, T = k.memo(I), _ = "media_gallery", B = ({ isLibrary: s }) => {
36
+ const { t: r } = m(), l = x((n) => n.gallery.targetMedia);
37
+ return /* @__PURE__ */ o("div", { className: "fadeIn animated", children: [
38
+ !s && /* @__PURE__ */ e("h5", { className: "mb-2", children: r(_) }),
39
+ /* @__PURE__ */ o(y, { className: "mb-2", children: [
40
+ /* @__PURE__ */ e(d, { md: 8, children: /* @__PURE__ */ e(v, { height: "100vh", isLibrary: s }) }),
41
+ /* @__PURE__ */ e(d, { md: 4, children: /* @__PURE__ */ e(
42
+ T,
43
+ {
44
+ targetMedia: l
45
+ },
46
+ l == null ? void 0 : l.key
47
+ ) })
48
+ ] })
49
+ ] });
50
+ };
51
+ export {
52
+ B as default
53
+ };