aq-fe-framework 0.1.155 → 0.1.156

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 (242) hide show
  1. package/dist/api/apiFactory.ts +46 -0
  2. package/dist/api/baseAxios.ts +22 -0
  3. package/dist/app/admin/(core)/core12196/page.tsx +13 -0
  4. package/dist/app/admin/(core)/core16209/page.tsx +13 -0
  5. package/dist/app/admin/(core)/core18256/page.tsx +12 -0
  6. package/dist/app/admin/(core)/core26965/page.tsx +13 -0
  7. package/dist/app/admin/(core)/core27311/page.tsx +13 -0
  8. package/dist/app/admin/(core)/core38677/page.tsx +13 -0
  9. package/dist/app/admin/(core)/core40207/page.tsx +13 -0
  10. package/dist/app/admin/(core)/core60524/page.tsx +11 -0
  11. package/dist/app/admin/(core)/core64229/page.tsx +12 -0
  12. package/dist/app/admin/(core)/core71678/page.tsx +11 -0
  13. package/dist/app/admin/(core)/core76318/page.tsx +13 -0
  14. package/dist/app/admin/(core)/core83092/page.tsx +13 -0
  15. package/dist/app/admin/[...slug]/page.tsx +7 -0
  16. package/dist/app/admin/error.tsx +42 -0
  17. package/dist/app/admin/layout.tsx +21 -0
  18. package/dist/app/admin/test/page.tsx +44 -0
  19. package/dist/app/auth/login/page.tsx +14 -0
  20. package/dist/app/globals.css +59 -0
  21. package/dist/app/layout.tsx +39 -0
  22. package/dist/app/page.tsx +18 -0
  23. package/dist/{chunk-PAHZ57DT.mjs → chunk-JLT4BL7I.mjs} +1 -1
  24. package/dist/components/Aceternity/BoxesBackground/MyBoxes.tsx +66 -0
  25. package/dist/components/Aceternity/BoxesBackground/MyBoxesBackground.tsx +31 -0
  26. package/dist/components/ActionIcons/ActionIcon/MyActionIcon.tsx +47 -0
  27. package/dist/components/ActionIcons/ActionIconCRUD/MyActionIconDelete.tsx +81 -0
  28. package/dist/components/ActionIcons/ActionIconCRUD/MyActionIconUpdate.tsx +68 -0
  29. package/dist/components/ActionIcons/ActionIconCheck/MyActionIconCheck.tsx +50 -0
  30. package/dist/components/ActionIcons/ActionIconDownloadPDF/MyActionIconDownloadPDF.tsx +13 -0
  31. package/dist/components/ActionIcons/ActionIconModal/MyActionIconModal.tsx +113 -0
  32. package/dist/components/ActionIcons/ActionIconUpload/MyActionIconUpload.tsx +19 -0
  33. package/dist/components/ActionIcons/ActionIconViewPdf/MyActionIconViewPDF.tsx +63 -0
  34. package/dist/components/ActionIcons/SwitchTheme/MySwitchTheme.tsx +36 -0
  35. package/dist/components/AppSpotlight/MyAppSpotlight.tsx +112 -0
  36. package/dist/components/Buttons/Anchor/MyAnchorViewPDF.tsx +46 -0
  37. package/dist/components/Buttons/Button/MyButton.tsx +90 -0
  38. package/dist/components/Buttons/ButtonCRUD/AQButtonCreateByImportFile.tsx +81 -0
  39. package/dist/components/Buttons/ButtonCRUD/AQButtonExportData.tsx +75 -0
  40. package/dist/components/Buttons/ButtonCRUD/MyButtonCreate.tsx +68 -0
  41. package/dist/components/Buttons/ButtonImport/MyButtonImport.tsx +29 -0
  42. package/dist/components/Buttons/ButtonImport/SelectFieldModal.tsx +100 -0
  43. package/dist/components/Buttons/ButtonImport/SelectFileModal.tsx +81 -0
  44. package/dist/components/Buttons/ButtonImport/useS_ButtonImport.ts +196 -0
  45. package/dist/components/Buttons/ButtonModal/AQSelectTableByOpenModal.tsx +71 -0
  46. package/dist/components/Buttons/ButtonModal/MyButtonModal.tsx +117 -0
  47. package/dist/components/Buttons/ButtonPrintPDF/MyButtonPrintPDF.tsx +37 -0
  48. package/dist/components/Buttons/ButtonPrintPDFTable/MyButtonPrintTablePDF.tsx +174 -0
  49. package/dist/components/Buttons/ButtonRouterBack/MyButtonRouterBack.tsx +29 -0
  50. package/dist/components/Buttons/ButtonViewPDF/MyButtonViewPDF.tsx +121 -0
  51. package/dist/components/Calendar/MyCalendar.tsx +118 -0
  52. package/dist/components/CenterFull/MyCenterFull.tsx +10 -0
  53. package/dist/components/Checkbox/MyCheckbox.tsx +9 -0
  54. package/dist/components/Combobox/Select/MySelect.tsx +12 -0
  55. package/dist/components/DataDisplay/Card/AQCard.tsx +49 -0
  56. package/dist/components/DataDisplay/CardInformation/MyCardInformation.tsx +77 -0
  57. package/dist/components/DataDisplay/DataTable/MyDataTable.tsx +184 -0
  58. package/dist/components/DataDisplay/IconText/MyIconText.tsx +17 -0
  59. package/dist/components/DataDisplay/KeyLabel/MyKeyLabel.tsx +15 -0
  60. package/dist/components/DataDisplay/NumberFormatter/MyNumberFormatter.tsx +9 -0
  61. package/dist/components/DataDisplay/StatCard/AQStatCard1.tsx +68 -0
  62. package/dist/components/FaviconSetter/FaviconSetter.tsx +33 -0
  63. package/dist/components/Inputs/DateInput/MyDateInput.tsx +11 -0
  64. package/dist/components/Inputs/Fieldset/MyFieldset.tsx +32 -0
  65. package/dist/components/Inputs/FileInput/MyFileInput.tsx +12 -0
  66. package/dist/components/Inputs/NumberInput/MyNumberInput.tsx +12 -0
  67. package/dist/components/Inputs/TextArea/MyTextArea.tsx +11 -0
  68. package/dist/components/Inputs/TextEditor/MyTextEditor.tsx +191 -0
  69. package/dist/components/Inputs/TextInput/MyTextInput.tsx +30 -0
  70. package/dist/components/Layouts/BasicAppShell/BasicAppShell.tsx +357 -0
  71. package/dist/components/Layouts/BasicAppShell/css.module.css +62 -0
  72. package/dist/components/Layouts/BasicAppShell/useS_BasicAppShell.ts +64 -0
  73. package/dist/components/Layouts/Container/MyContainer.tsx +16 -0
  74. package/dist/components/Layouts/FlexColumn/MyFlexColumn.tsx +14 -0
  75. package/dist/components/Layouts/FlexEnd/MyFlexEnd.tsx +14 -0
  76. package/dist/components/Layouts/FlexRow/MyFlexRow.tsx +14 -0
  77. package/dist/components/Layouts/HeaderMegaMenu/HeaderMegaMenu.tsx +147 -0
  78. package/dist/components/Layouts/HeaderMegaMenu/HeaderMegaMenuStore.ts +19 -0
  79. package/dist/components/Layouts/HeaderMegaMenu/css.module.css +50 -0
  80. package/dist/components/Layouts/HtmlWrapper/MyHtmlWrapper.tsx +29 -0
  81. package/dist/components/Layouts/PageContent/MyPageContent.tsx +67 -0
  82. package/dist/components/Layouts/Tab/MyTab.tsx +33 -0
  83. package/dist/components/Loaders/MyCardioLoader.tsx +12 -0
  84. package/dist/components/RESTAPIComponents/DataTableSelect/MyDataTableSelect.tsx +61 -0
  85. package/dist/components/RESTAPIComponents/SelectAPIGet/MySelectAPIGet.tsx +37 -0
  86. package/dist/components/ScheduleX/MyScheduleX.tsx +58 -0
  87. package/dist/components/Skeletons/SkeletonTable/MySkeletonTable.tsx +9 -0
  88. package/dist/components/index.mjs +1 -1
  89. package/dist/components/index.ts +62 -0
  90. package/dist/constants/array/daysOfWeek.ts +9 -0
  91. package/dist/constants/enum/ENUM_EMAILCONFIG.ts +6 -0
  92. package/dist/constants/enum/global.ts +26 -0
  93. package/dist/constants/object/color.ts +5 -0
  94. package/dist/constants/object/documentTypes.ts +8 -0
  95. package/dist/{components/index.css → css.module-4ICLUKPO.module.css} +29 -16
  96. package/dist/css.module-P45UW6UZ.module.css +4 -0
  97. package/dist/data/menuData.ts +31 -0
  98. package/dist/hooks/custom-hooks/useC_MutationAction.tsx +36 -0
  99. package/dist/hooks/index.ts +2 -0
  100. package/dist/hooks/query/AQ/useQ_AQ_GetAQModule.ts +14 -0
  101. package/dist/interfaces/EmailConfig.ts +10 -0
  102. package/dist/interfaces/IAQModule.ts +21 -0
  103. package/dist/interfaces/base.ts +9 -0
  104. package/dist/interfaces/global-interface/IAQSSO.ts +15 -0
  105. package/dist/interfaces/global-interface/IAQSyncData.ts +9 -0
  106. package/dist/interfaces/global-interface/IAcademicYear.ts +12 -0
  107. package/dist/interfaces/global-interface/IChangePassWord.ts +8 -0
  108. package/dist/interfaces/global-interface/IComplaintProccess.ts +9 -0
  109. package/dist/interfaces/global-interface/ICreateAccount.ts +24 -0
  110. package/dist/interfaces/global-interface/IDocument.ts +25 -0
  111. package/dist/interfaces/global-interface/IDocumentAttribute.ts +12 -0
  112. package/dist/interfaces/global-interface/IEvent.ts +30 -0
  113. package/dist/interfaces/global-interface/IEventComplaint.ts +20 -0
  114. package/dist/interfaces/global-interface/IEventFillter.ts +14 -0
  115. package/dist/interfaces/global-interface/IFile.ts +8 -0
  116. package/dist/interfaces/global-interface/IImportStudentPaticipation.ts +8 -0
  117. package/dist/interfaces/global-interface/IPagePermission.ts +12 -0
  118. package/dist/interfaces/global-interface/IRolePermission.ts +7 -0
  119. package/dist/interfaces/global-interface/ISRMUserinfo.ts +35 -0
  120. package/dist/interfaces/global-interface/IScientificProfileProjectUser.ts +15 -0
  121. package/dist/interfaces/global-interface/IScientificProfileResearchGroup.ts +15 -0
  122. package/dist/interfaces/global-interface/IScientificProfileResearchGroupUser.ts +14 -0
  123. package/dist/interfaces/global-interface/IScientificProfileResearchProject.ts +21 -0
  124. package/dist/interfaces/global-interface/ISignIn.ts +7 -0
  125. package/dist/interfaces/global-interface/ISystemCatalogAcademicYear.ts +15 -0
  126. package/dist/interfaces/global-interface/ISystemCatalogDomainCategory.ts +11 -0
  127. package/dist/interfaces/global-interface/ISystemCatalogProjectLevelCategory.ts +11 -0
  128. package/dist/interfaces/global-interface/ISystemCatalogProjectTypeCategory.ts +11 -0
  129. package/dist/interfaces/global-interface/ISystemCatalogRoleActivity.ts +11 -0
  130. package/dist/interfaces/global-interface/ISystemCatalogTaskCategory.ts +11 -0
  131. package/dist/interfaces/global-interface/ISystemManagementAcademicHistory.ts +31 -0
  132. package/dist/interfaces/global-interface/ISystemManagementProfessionalWorkHistory.ts +14 -0
  133. package/dist/interfaces/global-interface/ISystemManagementPublishedScientificWork.ts +14 -0
  134. package/dist/interfaces/global-interface/ISystemManagementRoleGroup.ts +12 -0
  135. package/dist/interfaces/global-interface/ISystemManagementRoleGroupMenuPermission.ts +18 -0
  136. package/dist/interfaces/global-interface/ISystemManagementScientificResearchProject.ts +16 -0
  137. package/dist/interfaces/global-interface/ISystemManagementUserMenuPermission.ts +18 -0
  138. package/dist/interfaces/global-interface/IUpdateAccount.ts +15 -0
  139. package/dist/interfaces/global-interface/IUser.ts +21 -0
  140. package/dist/interfaces/global-interface/IUserPermission.ts +7 -0
  141. package/dist/lib/utils.ts +6 -0
  142. package/dist/modules-features/admin/core/MainDashboard/BarChart_CourseStatus.tsx +87 -0
  143. package/dist/modules-features/admin/core/MainDashboard/BarChart_ExamStatus.tsx +65 -0
  144. package/dist/modules-features/admin/core/MainDashboard/BarChart_RevenueByAcademicYear.tsx +82 -0
  145. package/dist/modules-features/admin/core/MainDashboard/BarChart_StudentStatusIn30Days.tsx +67 -0
  146. package/dist/modules-features/admin/core/MainDashboard/HBarChart_CourseDropOutPercentage.tsx +77 -0
  147. package/dist/modules-features/admin/core/MainDashboard/HBarChart_CourseProgressPercentage.tsx +77 -0
  148. package/dist/modules-features/admin/core/MainDashboard/LineChart_RevenueIn12Months.tsx +78 -0
  149. package/dist/modules-features/admin/core/MainDashboard/LineChart_TotalRevenueByDiscountIn3Months.tsx +69 -0
  150. package/dist/modules-features/admin/core/MainDashboard/LineChart_TotalRevenueByVoucherIn3Months.tsx +69 -0
  151. package/dist/modules-features/admin/core/MainDashboard/LineChart_TotalStudentIn12Months.tsx +64 -0
  152. package/dist/modules-features/admin/core/MainDashboard/ViewDiscountStat.tsx +311 -0
  153. package/dist/modules-features/admin/core/MainDashboard/ViewVoucherStat.tsx +311 -0
  154. package/dist/modules-features/admin/core/core12196/F_core12196.tsx +20 -0
  155. package/dist/modules-features/admin/core/core12196/F_core12196_Create.tsx +101 -0
  156. package/dist/modules-features/admin/core/core12196/F_core12196_Delete.tsx +19 -0
  157. package/dist/modules-features/admin/core/core12196/F_core12196_Read.tsx +165 -0
  158. package/dist/modules-features/admin/core/core12196/F_core12196_Update.tsx +112 -0
  159. package/dist/modules-features/admin/core/core16209/F_core16209.tsx +108 -0
  160. package/dist/modules-features/admin/core/core16209/F_core16209_Create.tsx +112 -0
  161. package/dist/modules-features/admin/core/core16209/F_core16209_Delete.tsx +17 -0
  162. package/dist/modules-features/admin/core/core16209/F_core16209_Update.tsx +114 -0
  163. package/dist/modules-features/admin/core/core18256/F_core18256.tsx +29 -0
  164. package/dist/modules-features/admin/core/core18256/F_core18256_Create.tsx +34 -0
  165. package/dist/modules-features/admin/core/core18256/F_core18256_Delete.tsx +14 -0
  166. package/dist/modules-features/admin/core/core18256/F_core18256_Read.tsx +59 -0
  167. package/dist/modules-features/admin/core/core18256/F_core18256_Select.tsx +40 -0
  168. package/dist/modules-features/admin/core/core18256/F_core18256_Update.tsx +22 -0
  169. package/dist/modules-features/admin/core/core26965/F_core26965.tsx +17 -0
  170. package/dist/modules-features/admin/core/core26965/F_core26965_Create.tsx +106 -0
  171. package/dist/modules-features/admin/core/core26965/F_core26965_Delete.tsx +19 -0
  172. package/dist/modules-features/admin/core/core26965/F_core26965_Read.tsx +165 -0
  173. package/dist/modules-features/admin/core/core26965/F_core26965_Update.tsx +112 -0
  174. package/dist/modules-features/admin/core/core27311/F_core27311.tsx +21 -0
  175. package/dist/modules-features/admin/core/core27311/F_core27311_Create.tsx +109 -0
  176. package/dist/modules-features/admin/core/core27311/F_core27311_Delete.tsx +19 -0
  177. package/dist/modules-features/admin/core/core27311/F_core27311_Read.tsx +165 -0
  178. package/dist/modules-features/admin/core/core27311/F_core27311_Update.tsx +113 -0
  179. package/dist/modules-features/admin/core/core35923/F_core35923.tsx +46 -0
  180. package/dist/modules-features/admin/core/core38677/F_core38677.tsx +28 -0
  181. package/dist/modules-features/admin/core/core38677/F_core38677_ReadUser.tsx +79 -0
  182. package/dist/modules-features/admin/core/core38677/F_core38677_Save.tsx +52 -0
  183. package/dist/modules-features/admin/core/core38677/F_core38677_ViewMenuPermissions.tsx +264 -0
  184. package/dist/modules-features/admin/core/core40207/F_core40207.tsx +9 -0
  185. package/dist/modules-features/admin/core/core40207/F_core40207_Create.tsx +81 -0
  186. package/dist/modules-features/admin/core/core40207/F_core40207_Delete.tsx +17 -0
  187. package/dist/modules-features/admin/core/core40207/F_core40207_Read.tsx +98 -0
  188. package/dist/modules-features/admin/core/core40207/F_core40207_Update.tsx +83 -0
  189. package/dist/modules-features/admin/core/core47643/F_core47643.tsx +10 -0
  190. package/dist/modules-features/admin/core/core47643/F_core47643_Delete.tsx +13 -0
  191. package/dist/modules-features/admin/core/core47643/F_core47643_Form.tsx +34 -0
  192. package/dist/modules-features/admin/core/core47643/F_core47643_Read.tsx +57 -0
  193. package/dist/modules-features/admin/core/core60524/F_core60524.tsx +13 -0
  194. package/dist/modules-features/admin/core/core60524/F_core60524_Form.tsx +111 -0
  195. package/dist/modules-features/admin/core/core60524/F_core60524_Save.tsx +56 -0
  196. package/dist/modules-features/admin/core/core60524/useS_core60524.ts +16 -0
  197. package/dist/modules-features/admin/core/core64229/F_core64229.tsx +7 -0
  198. package/dist/modules-features/admin/core/core64229/F_core64229_Delete.tsx +21 -0
  199. package/dist/modules-features/admin/core/core64229/F_core64229_Form.tsx +95 -0
  200. package/dist/modules-features/admin/core/core64229/F_core64229_Read.tsx +67 -0
  201. package/dist/modules-features/admin/core/core71678/F_core71678.tsx +8 -0
  202. package/dist/modules-features/admin/core/core71678/F_core71678_ChangePermission.tsx +117 -0
  203. package/dist/modules-features/admin/core/core71678/F_core71678_Create.tsx +61 -0
  204. package/dist/modules-features/admin/core/core71678/F_core71678_Delete.tsx +16 -0
  205. package/dist/modules-features/admin/core/core71678/F_core71678_Read.tsx +92 -0
  206. package/dist/modules-features/admin/core/core71678/F_core71678_Update.tsx +49 -0
  207. package/dist/modules-features/admin/core/core76318/F_core76318.tsx +9 -0
  208. package/dist/modules-features/admin/core/core76318/F_core76318_Create.tsx +89 -0
  209. package/dist/modules-features/admin/core/core76318/F_core76318_Delete.tsx +17 -0
  210. package/dist/modules-features/admin/core/core76318/F_core76318_Read.tsx +104 -0
  211. package/dist/modules-features/admin/core/core76318/F_core76318_Update.tsx +89 -0
  212. package/dist/modules-features/admin/core/core83092/F_core83092.tsx +27 -0
  213. package/dist/modules-features/admin/core/core83092/F_core83092_ReadUser.tsx +85 -0
  214. package/dist/modules-features/admin/core/core83092/F_core83092_Save.tsx +52 -0
  215. package/dist/modules-features/admin/core/core83092/F_core83092_ViewMenuPermissions.tsx +263 -0
  216. package/dist/modules-features/admin/core/core83092/useS_core83092.tsx +70 -0
  217. package/dist/modules-features/authenticate/F_authenticate_Login/F_authenticate_Login.tsx +154 -0
  218. package/dist/modules-features/authenticate/F_authenticate_Login/css.module.css +4 -0
  219. package/dist/modules-features/authenticate/F_authenticate_Logout.tsx +22 -0
  220. package/dist/modules-features/authenticate/F_authenticate_SplashPage.tsx +21 -0
  221. package/dist/modules-features/authenticate/useS_authenticate.ts +23 -0
  222. package/dist/modules-features/index.mjs +2 -2
  223. package/dist/modules-features/index.ts +79 -0
  224. package/dist/providers/MyMantineProvider.tsx +140 -0
  225. package/dist/providers/MyReactQueryProvider.tsx +24 -0
  226. package/dist/providers/Provider.tsx +13 -0
  227. package/dist/providers/mantine.module.css +21 -0
  228. package/dist/stores/CreateGenericStore.ts +23 -0
  229. package/dist/stores/index.ts +1 -0
  230. package/dist/types/types.ts +16 -0
  231. package/dist/utils/index.ts +9 -0
  232. package/dist/utils/utils_converter.ts +39 -0
  233. package/dist/utils/utils_currency.ts +5 -0
  234. package/dist/utils/utils_date.ts +34 -0
  235. package/dist/utils/utils_excel.ts +128 -0
  236. package/dist/utils/utils_file.ts +61 -0
  237. package/dist/utils/utils_notification.ts +46 -0
  238. package/dist/utils/utils_pdf.ts +21 -0
  239. package/dist/utils/utils_time.ts +15 -0
  240. package/dist/utils/utils_validateForm.ts +9 -0
  241. package/package.json +1 -1
  242. package/dist/modules-features/index.css +0 -100
@@ -0,0 +1,46 @@
1
+ type RestApiBase = {
2
+ base: string;
3
+ getAll: string;
4
+ get: string;
5
+ create: string;
6
+ update: string;
7
+ delete: string;
8
+ createOrUpdate: string;
9
+ };
10
+
11
+ export const createRestApi = <
12
+ T extends Record<string, string | ((...args: any[]) => string)> = {}
13
+ >(
14
+ basePath: string,
15
+ custom?: T
16
+ ): RestApiBase & T => {
17
+ const base = `${basePath}`;
18
+
19
+ const defaultApi: RestApiBase = {
20
+ base,
21
+ getAll: `${base}/GetAll`,
22
+ get: `${base}/get`,
23
+ create: `${base}/create`,
24
+ update: `${base}/update`,
25
+ delete: `${base}/delete`,
26
+ createOrUpdate: `${base}/createOrUpdateList`,
27
+ };
28
+
29
+ const processedCustom = Object.entries(custom || {}).reduce(
30
+ (acc, [key, value]) => {
31
+ if (typeof value === "string") {
32
+ acc[key as keyof T] = `${base}/${value}` as T[keyof T];
33
+ } else if (typeof value === "function") {
34
+ acc[key as keyof T] = ((...args: any[]) =>
35
+ `${base}/${value(...args)}`) as T[keyof T];
36
+ }
37
+ return acc;
38
+ },
39
+ {} as T
40
+ );
41
+
42
+ return {
43
+ ...defaultApi,
44
+ ...processedCustom,
45
+ };
46
+ };
@@ -0,0 +1,22 @@
1
+ import axios from "axios";
2
+
3
+ const baseAxios = axios.create({
4
+ baseURL: process.env.NEXT_PUBLIC_API,
5
+ });
6
+
7
+ baseAxios.interceptors.request.use(
8
+ (config) => {
9
+ const tokenData = localStorage.getItem("useS_authenticate");
10
+ const state = JSON.parse(tokenData!);
11
+ const token = state?.state?.state?.token;
12
+ if (token) {
13
+ config.headers.Authorization = `Bearer ${token}`; // thêm token vào header Authorization
14
+ }
15
+ return config;
16
+ },
17
+ (error) => {
18
+ return Promise.reject(error);
19
+ }
20
+ );
21
+
22
+ export default baseAxios;
@@ -0,0 +1,13 @@
1
+ "use client"
2
+ import { MyPageContent } from '@/components'
3
+ import { OBJECT_DOCUMENT_TYPES } from '@/constants/object/documentTypes'
4
+ import { F_core12196 } from '@/modules-features/admin/core/core12196/F_core12196'
5
+ import React from 'react'
6
+
7
+ export default function Page() {
8
+ return (
9
+ <MyPageContent>
10
+ <F_core12196 FormTypeId={OBJECT_DOCUMENT_TYPES.Form} />
11
+ </MyPageContent>
12
+ )
13
+ }
@@ -0,0 +1,13 @@
1
+ "use client"
2
+ import { MyPageContent } from '@/components'
3
+ import { OBJECT_DOCUMENT_TYPES } from '@/constants/object/documentTypes'
4
+ import { F_core16209 } from '@/modules-features'
5
+ import React from 'react'
6
+
7
+ export default function Page() {
8
+ return (
9
+ <MyPageContent>
10
+ <F_core16209 RefinementTypeId={OBJECT_DOCUMENT_TYPES.Refinement} />
11
+ </MyPageContent>
12
+ )
13
+ }
@@ -0,0 +1,12 @@
1
+ "use client"
2
+ import { MyPageContent } from '@/components'
3
+ import { F_core18256 } from '@/modules-features'
4
+ import React from 'react'
5
+
6
+ export default function Page() {
7
+ return (
8
+ <MyPageContent>
9
+ <F_core18256 />
10
+ </MyPageContent>
11
+ )
12
+ }
@@ -0,0 +1,13 @@
1
+ "use client"
2
+ import { MyPageContent } from '@/components'
3
+ import { OBJECT_DOCUMENT_TYPES } from '@/constants/object/documentTypes'
4
+ import { F_core26965 } from '@/modules-features'
5
+ import React from 'react'
6
+
7
+ export default function Page() {
8
+ return (
9
+ <MyPageContent>
10
+ <F_core26965 RegulationsTypeId={OBJECT_DOCUMENT_TYPES.Regulations} />
11
+ </MyPageContent>
12
+ )
13
+ }
@@ -0,0 +1,13 @@
1
+ "use client"
2
+ import { MyPageContent } from '@/components'
3
+ import { OBJECT_DOCUMENT_TYPES } from '@/constants/object/documentTypes'
4
+ import { F_core27311 } from '@/modules-features'
5
+ import React from 'react'
6
+
7
+ export default function Page() {
8
+ return (
9
+ <MyPageContent>
10
+ <F_core27311 WorkflowTypeId={OBJECT_DOCUMENT_TYPES.Workflow} />
11
+ </MyPageContent>
12
+ )
13
+ }
@@ -0,0 +1,13 @@
1
+ 'use client'
2
+ import { MyPageContent } from '@/components'
3
+ import { menuData } from '@/data/menuData'
4
+ import { F_core38677 } from '@/modules-features/admin/core/core38677/F_core38677'
5
+ import React from 'react'
6
+
7
+ export default function Page() {
8
+ return (
9
+ <MyPageContent>
10
+ <F_core38677 menuData={menuData} />
11
+ </MyPageContent>
12
+ )
13
+ }
@@ -0,0 +1,13 @@
1
+ "use client"
2
+ import { MyPageContent } from '@/components'
3
+ import { OBJECT_DOCUMENT_TYPES } from '@/constants/object/documentTypes'
4
+ import { F_core40207 } from '@/modules-features'
5
+ import React from 'react'
6
+
7
+ export default function Page() {
8
+ return (
9
+ <MyPageContent>
10
+ <F_core40207 GuidelineTypeId={OBJECT_DOCUMENT_TYPES.Guideline} />
11
+ </MyPageContent>
12
+ )
13
+ }
@@ -0,0 +1,11 @@
1
+ 'use client'
2
+ import { MyPageContent } from '@/components'
3
+ import { F_core60524 } from '@/modules-features/admin/core/core60524/F_core60524'
4
+
5
+ export default function Page() {
6
+ return (
7
+ <MyPageContent>
8
+ <F_core60524 AQModuleId={3} />
9
+ </MyPageContent>
10
+ )
11
+ }
@@ -0,0 +1,12 @@
1
+ "use client"
2
+ import { MyPageContent } from '@/components'
3
+ import { F_core64229, F_core64229_Form } from '@/modules-features'
4
+ import React from 'react'
5
+
6
+ export default function Page() {
7
+ return (
8
+ <MyPageContent>
9
+ <F_core64229 />
10
+ </MyPageContent>
11
+ )
12
+ }
@@ -0,0 +1,11 @@
1
+ 'use client'
2
+ import { MyPageContent } from '@/components'
3
+ import { F_core71678 } from '@/modules-features/admin/core/core71678/F_core71678'
4
+
5
+ export default function Page() {
6
+ return (
7
+ <MyPageContent>
8
+ <F_core71678 />
9
+ </MyPageContent>
10
+ )
11
+ }
@@ -0,0 +1,13 @@
1
+ 'use client'
2
+ import { MyPageContent } from '@/components'
3
+ import { OBJECT_DOCUMENT_TYPES } from '@/constants/object/documentTypes'
4
+ import { F_core76318 } from '@/modules-features/admin/core/core76318/F_core76318'
5
+ import React from 'react'
6
+
7
+ export default function Page() {
8
+ return (
9
+ <MyPageContent>
10
+ <F_core76318 SecurityTypeId={OBJECT_DOCUMENT_TYPES.Security} />
11
+ </MyPageContent>
12
+ )
13
+ }
@@ -0,0 +1,13 @@
1
+ 'use client'
2
+ import { MyPageContent } from '@/components'
3
+ import { menuData } from '@/data/menuData'
4
+ import { F_core83092 } from '@/modules-features'
5
+ import React from 'react'
6
+
7
+ export default function Page() {
8
+ return (
9
+ <MyPageContent>
10
+ <F_core83092 menuData={menuData} />
11
+ </MyPageContent>
12
+ )
13
+ }
@@ -0,0 +1,7 @@
1
+ // app/(dashboard)/[...slug]/page.tsx
2
+
3
+ import { Alert } from "@mantine/core";
4
+
5
+ export default function CatchAllDashboardPage() {
6
+ return <Alert>Đang phát triển!</Alert>
7
+ }
@@ -0,0 +1,42 @@
1
+ 'use client' // Error components must be Client Components
2
+
3
+ import { MyFlexColumn } from '@/components'
4
+ import { OBJECT_COlORS } from '@/constants/object/color'
5
+ import { Button, Center, Container, Paper, Title } from '@mantine/core'
6
+ import { IconRefresh } from '@tabler/icons-react'
7
+ import { useEffect } from 'react'
8
+
9
+ export default function Error({
10
+ error,
11
+ reset,
12
+ }: {
13
+ error: Error & { digest?: string }
14
+ reset: () => void
15
+ }) {
16
+ useEffect(() => {
17
+ // Log the error to an error reporting service
18
+ console.error(error)
19
+ }, [error])
20
+
21
+ return (
22
+ <Container >
23
+ <Center h={'80vh'}>
24
+ <MyFlexColumn>
25
+ <Title>Chúng tôi đã ghi nhận lỗi và đang khắc phục!</Title>
26
+ <Paper p={'md'} bg={OBJECT_COlORS.mantineBackgroundBlueLight}>
27
+ Thông tin lỗi: {error.message}
28
+ </Paper>
29
+ <Button
30
+ leftSection={<IconRefresh />}
31
+ onClick={
32
+ // Attempt to recover by trying to re-render the segment
33
+ () => reset()
34
+ }
35
+ >
36
+ Thử lại
37
+ </Button>
38
+ </MyFlexColumn>
39
+ </Center>
40
+ </Container>
41
+ )
42
+ }
@@ -0,0 +1,21 @@
1
+ "use client"
2
+ import { useS_BasicAppShell } from "@/components";
3
+ import { BasicAppShell } from "@/components/Layouts/BasicAppShell/BasicAppShell";
4
+ import { useQ_AQ_GetAQModule } from "@/hooks/query/AQ/useQ_AQ_GetAQModule";
5
+ import { ReactNode, useEffect } from "react";
6
+ import { menuData } from "../../data/menuData";
7
+
8
+ export default function Layout({ children }: { children?: ReactNode }) {
9
+ const GetAQModule_query = useQ_AQ_GetAQModule()
10
+ const BasicAppShell_store = useS_BasicAppShell()
11
+ useEffect(() => {
12
+ if (!GetAQModule_query.data) return
13
+ BasicAppShell_store.setProperty("moduleCode", GetAQModule_query.data?.code)
14
+ BasicAppShell_store.setProperty("moduleName", GetAQModule_query.data?.name)
15
+ BasicAppShell_store.setProperty("faviconFileDetail", GetAQModule_query.data.faviconFileDetail)
16
+ BasicAppShell_store.setProperty("logoFileDetail", GetAQModule_query.data.logoFileDetail)
17
+ }, [GetAQModule_query.data])
18
+ return <BasicAppShell menu={menuData}>{children}</BasicAppShell>;
19
+ }
20
+
21
+
@@ -0,0 +1,44 @@
1
+ "use client"
2
+ import { MyCardInformation } from '@/components'
3
+ import { Group, SimpleGrid } from '@mantine/core'
4
+ import { IconBikeFilled, IconBook, IconDevicesQuestion, IconMoneybag, IconUser } from '@tabler/icons-react'
5
+ import React from 'react'
6
+
7
+ export default function Page() {
8
+ return (
9
+ <div>
10
+ <SimpleGrid>
11
+ <MyCardInformation
12
+ title='Doanh thu'
13
+ icon={<IconMoneybag />}
14
+ unit='Triệu VNĐ'
15
+ description='So với tháng trước'
16
+ value='4.653.425'
17
+ diff={34}
18
+ />
19
+ <MyCardInformation
20
+ title='Tổng số khóa học'
21
+ icon={<IconBook />}
22
+ description='So với tháng trước'
23
+ value='152'
24
+ diff={16}
25
+ />
26
+ <MyCardInformation
27
+ title='Tổng số khóa thi'
28
+ icon={<IconDevicesQuestion />}
29
+ description='So với tháng trước'
30
+ value='36'
31
+ diff={60}
32
+ />
33
+ <MyCardInformation
34
+ title='Tổng số học viên'
35
+ icon={<IconUser />}
36
+ unit='Triệu VNĐ'
37
+ description='So với tháng trước'
38
+ value='3.042'
39
+ diff={-30}
40
+ />
41
+ </SimpleGrid>
42
+ </div>
43
+ )
44
+ }
@@ -0,0 +1,14 @@
1
+ 'use client'
2
+
3
+ import { F_Authenticate_Login } from "@/modules-features/Authenticate/F_Authenticate_Login/F_Authenticate_Login"
4
+
5
+ export default function Page() {
6
+ return (
7
+ <F_Authenticate_Login
8
+ loginInfo={{
9
+ username: "adminstm",
10
+ password: "123456"
11
+ }}
12
+ />
13
+ )
14
+ }
@@ -0,0 +1,59 @@
1
+ @tailwind base;
2
+ @tailwind components;
3
+ @tailwind utilities;
4
+
5
+ /* body {
6
+ font-family: 'Tahoma', sans-serif;
7
+ } */
8
+ ul {
9
+ list-style: disc;
10
+ list-style-position: outside;
11
+ }
12
+
13
+ ol {
14
+ list-style: decimal;
15
+ list-style-position: outside;
16
+ }
17
+
18
+ .m_d6493fad :where(img) {
19
+ max-width: unset !important;
20
+ margin-bottom: unset !important;
21
+ }
22
+
23
+ /* .m_b23fa0ef:where([data-with-table-border]) {
24
+ border: none !important;
25
+ } */
26
+
27
+ .MRT_TableHeadCell-module_content-wrapper-nowrap__-4aIg {
28
+ white-space: normal !important;
29
+ }
30
+ .m_4e7aa4fd:where([data-with-row-border]) {
31
+ border-bottom: calc(0.0625rem * var(--mantine-scale)) solid var(--table-border-color) !important;
32
+ border-top: calc(0.0625rem * var(--mantine-scale)) solid var(--table-border-color) !important;
33
+ }
34
+
35
+ .MRT_TableBody-module_empty-row-td-content__Cc2XW {
36
+ max-width: unset !important; /* Hoặc max-width: initial !important; */
37
+ }
38
+ img,
39
+ svg,
40
+ video,
41
+ canvas,
42
+ audio,
43
+ iframe,
44
+ embed,
45
+ object {
46
+ display: inline; /* Hoặc giá trị khác mà bạn mong muốn */
47
+ vertical-align: auto; /* Hoặc giá trị khác mà bạn mong muốn */
48
+ }
49
+
50
+ .tabler-icon {
51
+ width: 20px;
52
+ height: 20px;
53
+ }
54
+ @media (max-width: 640px) {
55
+ :root {
56
+ /* Kích thước chữ cho màn hình nhỏ (mobile) */
57
+ font-size: 14px;
58
+ }
59
+ }
@@ -0,0 +1,39 @@
1
+ // Import styles of packages that you've installed.
2
+ // All packages except `@mantine/hooks` require styles imports
3
+ import '@mantine/charts/styles.css';
4
+ import '@mantine/core/styles.css';
5
+ import '@mantine/dates/styles.css'; //if using mantine date picker features
6
+ import '@mantine/notifications/styles.css';
7
+ import '@mantine/spotlight/styles.css';
8
+ import '@mantine/tiptap/styles.css';
9
+ import 'mantine-react-table/styles.css';
10
+ import "./globals.css";
11
+
12
+ import { FaviconSetter } from '@/components/FaviconSetter/FaviconSetter';
13
+ import Provider from '@/providers/Provider';
14
+ import { ColorSchemeScript } from '@mantine/core';
15
+
16
+ export const metadata = {
17
+ title: 'My Mantine app',
18
+ description: 'I have followed setup instructions carefully',
19
+ };
20
+
21
+ export default function RootLayout({
22
+ children,
23
+ }: {
24
+ children: React.ReactNode;
25
+ }) {
26
+ return (
27
+ <html lang="en" suppressHydrationWarning>
28
+ <head>
29
+ <ColorSchemeScript />
30
+ </head>
31
+ <body>
32
+ <Provider>
33
+ <FaviconSetter />
34
+ {children}
35
+ </Provider>
36
+ </body>
37
+ </html>
38
+ );
39
+ }
@@ -0,0 +1,18 @@
1
+ "use client";
2
+ import { MyBoxesBackground } from "@/components";
3
+ import { useS_authenticate } from "@/modules-features/authenticate/useS_authenticate";
4
+ import { useRouter } from "next/navigation";
5
+ import { useEffect } from "react";
6
+
7
+ export default function Page() {
8
+ const router = useRouter();
9
+ const S_Authenticate = useS_authenticate();
10
+ useEffect(() => {
11
+ if (S_Authenticate.state.token == "") {
12
+ router.push("/test");
13
+ return;
14
+ }
15
+ router.push("/admin/core71678");
16
+ }, [S_Authenticate.state.token]);
17
+ return <MyBoxesBackground title="Hệ thống thông tin quản lí đào tạo ngắn hạn" />;
18
+ }
@@ -7286,7 +7286,7 @@ import {
7286
7286
  import Link4 from "next/link";
7287
7287
 
7288
7288
  // src/components/Layouts/HeaderMegaMenu/css.module.css
7289
- var css_default = {};
7289
+ var css_default = "./css.module-4ICLUKPO.module.css";
7290
7290
 
7291
7291
  // src/components/Layouts/HeaderMegaMenu/HeaderMegaMenuStore.ts
7292
7292
  var useStore4 = createGenericStore({
@@ -0,0 +1,66 @@
1
+ "use client";
2
+ import { cn } from "@/lib/utils";
3
+ import { motion } from "framer-motion";
4
+ import React from "react";
5
+
6
+ export const MyBoxesCore = ({ className, ...rest }: { className?: string }) => {
7
+ const rows = new Array(150).fill(1);
8
+ const cols = new Array(100).fill(1);
9
+ let colors = [
10
+ "--sky-300",
11
+ "--pink-300",
12
+ "--green-300",
13
+ "--yellow-300",
14
+ "--red-300",
15
+ "--purple-300",
16
+ "--blue-300",
17
+ "--indigo-300",
18
+ "--violet-300",
19
+ ];
20
+ const getRandomColor = () => {
21
+ return colors[Math.floor(Math.random() * colors.length)];
22
+ };
23
+
24
+ return (
25
+ <div
26
+ style={{
27
+ transform: `translate(-40%,-60%) skewX(-48deg) skewY(14deg) scale(0.675) rotate(0deg) translateZ(0)`,
28
+ }}
29
+ className={cn(
30
+ "absolute left-1/4 p-4 -top-1/4 flex -translate-x-1/2 -translate-y-1/2 w-full h-full z-0 ",
31
+ className
32
+ )}
33
+ {...rest}>
34
+ {rows.map((_, i) => (
35
+ <motion.div key={`row` + i} className="w-16 h-8 border-l border-slate-700 relative">
36
+ {cols.map((_, j) => (
37
+ <motion.div
38
+ whileHover={{
39
+ backgroundColor: `var(${getRandomColor()})`,
40
+ transition: { duration: 0 },
41
+ }}
42
+ animate={{
43
+ transition: { duration: 2 },
44
+ }}
45
+ key={`col` + j}
46
+ className="w-16 h-8 border-r border-t border-slate-700 relative">
47
+ {j % 2 === 0 && i % 2 === 0 ? (
48
+ <svg
49
+ xmlns="http://www.w3.org/2000/svg"
50
+ fill="none"
51
+ viewBox="0 0 24 24"
52
+ strokeWidth="1.5"
53
+ stroke="currentColor"
54
+ className="absolute h-6 w-10 -top-[14px] -left-[22px] text-slate-700 stroke-[1px] pointer-events-none">
55
+ <path strokeLinecap="round" strokeLinejoin="round" d="M12 6v12m6-6H6" />
56
+ </svg>
57
+ ) : null}
58
+ </motion.div>
59
+ ))}
60
+ </motion.div>
61
+ ))}
62
+ </div>
63
+ );
64
+ };
65
+
66
+ export const Boxes = React.memo(MyBoxesCore);
@@ -0,0 +1,31 @@
1
+ "use client";
2
+
3
+ import { MyCardioLoader } from "@/components/Loaders/MyCardioLoader";
4
+ import { cn } from "@/lib/utils";
5
+ import { Center, Space, Text } from "@mantine/core";
6
+ import { MyBoxesCore } from "./MyBoxes";
7
+
8
+ // Default values shown
9
+
10
+ export function MyBoxesBackground({ title, desc = "Được phát triển bởi công ty công nghệ Anh Quân." }: { title: string, desc?: string }) {
11
+ return (
12
+ <div className="h-[100vh] relative w-full overflow-hidden bg-slate-900 flex flex-col items-center justify-center rounded-lg">
13
+ <div className="absolute inset-0 w-full h-full bg-slate-900 z-20 [mask-image:radial-gradient(transparent,white)] pointer-events-none" />
14
+ <MyBoxesCore />
15
+ <Center className="z-20">
16
+ <MyCardioLoader />
17
+ </Center>
18
+ <Space my={7} />
19
+ <Center>
20
+ <Text className="z-20" fs="italic" fw={"bold"} c={"white"}>
21
+ Đang tải...
22
+ </Text>
23
+ </Center>
24
+ <Space my={7} />
25
+ <h1 className={cn("md:text-4xl text-xl text-white relative z-20")}>
26
+ {title}
27
+ </h1>
28
+ <p className="text-center mt-2 text-neutral-300 relative z-20">{desc}</p>
29
+ </div>
30
+ );
31
+ }
@@ -0,0 +1,47 @@
1
+ import { TYPES_CRUD } from "@/types/types";
2
+ import { ActionIcon, ActionIconProps } from "@mantine/core";
3
+ import { IconDeviceFloppy, IconEdit, IconPlus, IconTrash } from "@tabler/icons-react";
4
+ import { ReactNode } from "react";
5
+
6
+ interface IMyActionIcon extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "color" | "style">, ActionIconProps {
7
+ crudType?: TYPES_CRUD
8
+ children?: ReactNode;
9
+ }
10
+
11
+ export function MyActionIcon({ children, crudType = "default", ...rest }: IMyActionIcon) {
12
+ if (crudType == "default") {
13
+ return (
14
+ <ActionIcon color="indigo" {...rest}>
15
+ {children}
16
+ </ActionIcon>
17
+ );
18
+ }
19
+ if (crudType == "create") {
20
+ return (
21
+ <ActionIcon color="indigo" {...rest}>
22
+ <IconPlus />
23
+ </ActionIcon>
24
+ );
25
+ }
26
+ if (crudType == "delete") {
27
+ return (
28
+ <ActionIcon color="red" {...rest}>
29
+ <IconTrash />
30
+ </ActionIcon>
31
+ );
32
+ }
33
+ if (crudType == "update") {
34
+ return (
35
+ <ActionIcon color="yellow"{...rest}>
36
+ <IconEdit />
37
+ </ActionIcon>
38
+ );
39
+ }
40
+ if (crudType == "save") {
41
+ return (
42
+ <ActionIcon color="green" {...rest}>
43
+ <IconDeviceFloppy />
44
+ </ActionIcon>
45
+ );
46
+ }
47
+ }