phx-uikit 1.0.249 → 1.0.251

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 (237) hide show
  1. package/dist/cjs/assets/drag-icon.svg +8 -0
  2. package/dist/cjs/assets/icon.d.ts +1 -0
  3. package/dist/cjs/assets/icon.js +9 -0
  4. package/dist/cjs/assets/icon.js.map +1 -0
  5. package/dist/cjs/assets/icon.ts +5 -0
  6. package/dist/cjs/axiosInstance.js +2 -0
  7. package/dist/cjs/axiosInstance.js.map +1 -1
  8. package/dist/cjs/components/Badge/Badge.js +2 -2
  9. package/dist/cjs/components/Badge/Badge.js.map +1 -1
  10. package/dist/cjs/components/ButtonGroup/ButtonGroup.d.ts +2 -1
  11. package/dist/cjs/components/ButtonGroup/ButtonGroup.js +8 -6
  12. package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
  13. package/dist/cjs/components/Calendar/Calendar.d.ts +1 -0
  14. package/dist/cjs/components/Calendar/Calendar.js +25 -7
  15. package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
  16. package/dist/cjs/components/ColSpan/ColSpan.js +24 -5
  17. package/dist/cjs/components/ColSpan/ColSpan.js.map +1 -1
  18. package/dist/cjs/components/DateRangePicker/DatePicker.d.ts +2 -1
  19. package/dist/cjs/components/DateRangePicker/DatePicker.js +4 -4
  20. package/dist/cjs/components/DateRangePicker/DatePicker.js.map +1 -1
  21. package/dist/cjs/components/Func/GRPC/clientMutationDataCenterV3.d.ts +5 -0
  22. package/dist/cjs/components/Func/GRPC/clientMutationDataCenterV3.js +47 -0
  23. package/dist/cjs/components/Func/GRPC/clientMutationDataCenterV3.js.map +1 -0
  24. package/dist/cjs/components/Func/GRPC/clientMutationV3.d.ts +6 -0
  25. package/dist/cjs/components/Func/GRPC/clientMutationV3.js +43 -0
  26. package/dist/cjs/components/Func/GRPC/clientMutationV3.js.map +1 -0
  27. package/dist/cjs/components/Func/GRPC/clientQueryDataCenterV3.d.ts +5 -0
  28. package/dist/cjs/components/Func/GRPC/clientQueryDataCenterV3.js +47 -0
  29. package/dist/cjs/components/Func/GRPC/clientQueryDataCenterV3.js.map +1 -0
  30. package/dist/cjs/components/Func/GRPC/clientQueryV3.d.ts +6 -0
  31. package/dist/cjs/components/Func/GRPC/clientQueryV3.js +43 -0
  32. package/dist/cjs/components/Func/GRPC/clientQueryV3.js.map +1 -0
  33. package/dist/cjs/components/Func/SchoolYearV3/getPrevCurrentNextSchoolYearV3.d.ts +3 -0
  34. package/dist/cjs/components/Func/SchoolYearV3/getPrevCurrentNextSchoolYearV3.js +44 -0
  35. package/dist/cjs/components/Func/SchoolYearV3/getPrevCurrentNextSchoolYearV3.js.map +1 -0
  36. package/dist/cjs/components/Func/clientMutationV3.d.ts +2 -1
  37. package/dist/cjs/components/Func/clientMutationV3.js +6 -7
  38. package/dist/cjs/components/Func/clientMutationV3.js.map +1 -1
  39. package/dist/cjs/components/Func/clientQueryV3.d.ts +2 -1
  40. package/dist/cjs/components/Func/clientQueryV3.js +6 -7
  41. package/dist/cjs/components/Func/clientQueryV3.js.map +1 -1
  42. package/dist/cjs/components/HeaderBar/HeaderBar.d.ts +7 -1
  43. package/dist/cjs/components/HeaderBar/HeaderBar.js +24 -1
  44. package/dist/cjs/components/HeaderBar/HeaderBar.js.map +1 -1
  45. package/dist/cjs/components/LoginSsoV3/login-sso-v3.d.ts +1 -0
  46. package/dist/cjs/components/LoginSsoV3/login-sso-v3.js +12 -9
  47. package/dist/cjs/components/LoginSsoV3/login-sso-v3.js.map +1 -1
  48. package/dist/cjs/components/MainWrapV3/MainWrapV3.d.ts +1 -1
  49. package/dist/cjs/components/MainWrapV3/MainWrapV3.js +286 -238
  50. package/dist/cjs/components/MainWrapV3/MainWrapV3.js.map +1 -1
  51. package/dist/cjs/components/MainWrapV3/assets/Icon.js +9 -1
  52. package/dist/cjs/components/MainWrapV3/assets/Icon.js.map +1 -1
  53. package/dist/cjs/components/MainWrapV3/assets/Icon.ts +8 -0
  54. package/dist/cjs/components/MainWrapV3/assets/icon/hrm_checkin.svg +3 -0
  55. package/dist/cjs/components/MainWrapV3/assets/icon/lms.svg +3 -0
  56. package/dist/cjs/components/MainWrapV3/assets/icon-solid/hrm_checkin_solid.svg +3 -0
  57. package/dist/cjs/components/MainWrapV3/assets/icon-solid/lms_solid.svg +3 -0
  58. package/dist/cjs/components/Modal/Modal.d.ts +3 -1
  59. package/dist/cjs/components/Modal/Modal.js +5 -4
  60. package/dist/cjs/components/Modal/Modal.js.map +1 -1
  61. package/dist/cjs/components/SearchResultListV3/SearchResultList.js +2 -10
  62. package/dist/cjs/components/SearchResultListV3/SearchResultList.js.map +1 -1
  63. package/dist/cjs/components/SortItem/SortItem.d.ts +12 -0
  64. package/dist/cjs/components/SortItem/SortItem.js +28 -0
  65. package/dist/cjs/components/SortItem/SortItem.js.map +1 -0
  66. package/dist/cjs/components/Sortable/Sortable.d.ts +22 -0
  67. package/dist/cjs/components/Sortable/Sortable.js +14 -0
  68. package/dist/cjs/components/Sortable/Sortable.js.map +1 -0
  69. package/dist/cjs/components/StoreProduct/StoreProduct.js +1 -0
  70. package/dist/cjs/components/StoreProduct/StoreProduct.js.map +1 -1
  71. package/dist/cjs/components/TableV3/HeaderTable.d.ts +1 -1
  72. package/dist/cjs/components/TableV3/HeaderTable.js +5 -4
  73. package/dist/cjs/components/TableV3/HeaderTable.js.map +1 -1
  74. package/dist/cjs/components/TableV3/Pagination.d.ts +1 -1
  75. package/dist/cjs/components/TableV3/Pagination.js +12 -2
  76. package/dist/cjs/components/TableV3/Pagination.js.map +1 -1
  77. package/dist/cjs/components/TableV3/RowTable.d.ts +1 -1
  78. package/dist/cjs/components/TableV3/RowTable.js +8 -5
  79. package/dist/cjs/components/TableV3/RowTable.js.map +1 -1
  80. package/dist/cjs/components/TableV3/TableV3.d.ts +9 -1
  81. package/dist/cjs/components/TableV3/TableV3.js +71 -45
  82. package/dist/cjs/components/TableV3/TableV3.js.map +1 -1
  83. package/dist/cjs/components/TableVertical/RowTable.d.ts +1 -1
  84. package/dist/cjs/components/TableVertical/RowTable.js +14 -10
  85. package/dist/cjs/components/TableVertical/RowTable.js.map +1 -1
  86. package/dist/cjs/components/TableVertical/TableVertical.d.ts +2 -1
  87. package/dist/cjs/components/TableVertical/TableVertical.js +2 -2
  88. package/dist/cjs/components/TableVertical/TableVertical.js.map +1 -1
  89. package/dist/cjs/components/Tabs/Tabs.d.ts +1 -0
  90. package/dist/cjs/components/Tabs/Tabs.js +14 -7
  91. package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
  92. package/dist/cjs/components/TimePicker/TimePicker.d.ts +3 -1
  93. package/dist/cjs/components/TimePicker/TimePicker.js +15 -2
  94. package/dist/cjs/components/TimePicker/TimePicker.js.map +1 -1
  95. package/dist/cjs/components/TimePicker/component/Time.d.ts +3 -1
  96. package/dist/cjs/components/TimePicker/component/Time.js +6 -5
  97. package/dist/cjs/components/TimePicker/component/Time.js.map +1 -1
  98. package/dist/cjs/components/TimePicker/utils.d.ts +5 -0
  99. package/dist/cjs/components/TimePicker/utils.js +31 -1
  100. package/dist/cjs/components/TimePicker/utils.js.map +1 -1
  101. package/dist/cjs/components/UploadFile/FormUpload.js +5 -6
  102. package/dist/cjs/components/UploadFile/FormUpload.js.map +1 -1
  103. package/dist/cjs/helpers/helpers.d.ts +1 -0
  104. package/dist/cjs/helpers/helpers.js +12 -1
  105. package/dist/cjs/helpers/helpers.js.map +1 -1
  106. package/dist/cjs/index.d.ts +4 -1
  107. package/dist/cjs/index.js +7 -1
  108. package/dist/cjs/index.js.map +1 -1
  109. package/dist/cjs/query/index.d.ts +1 -1
  110. package/dist/cjs/query/index.js +1 -1
  111. package/dist/cjs/query/index.js.map +1 -1
  112. package/dist/cjs/query/school-year-v3/index.d.ts +2 -2
  113. package/dist/cjs/query/school-year-v3/index.js +2 -2
  114. package/dist/cjs/query/school-year-v3/index.js.map +1 -1
  115. package/dist/cjs/utils/constants.d.ts +10 -0
  116. package/dist/cjs/utils/constants.js +11 -1
  117. package/dist/cjs/utils/constants.js.map +1 -1
  118. package/dist/cjs/utils/types/types.d.ts +8 -1
  119. package/dist/esm/assets/drag-icon.svg +8 -0
  120. package/dist/esm/assets/icon.d.ts +1 -0
  121. package/dist/esm/assets/icon.js +5 -0
  122. package/dist/esm/assets/icon.js.map +1 -0
  123. package/dist/esm/assets/icon.ts +5 -0
  124. package/dist/esm/axiosInstance.js +3 -1
  125. package/dist/esm/axiosInstance.js.map +1 -1
  126. package/dist/esm/components/Badge/Badge.js +2 -2
  127. package/dist/esm/components/Badge/Badge.js.map +1 -1
  128. package/dist/esm/components/ButtonGroup/ButtonGroup.d.ts +2 -1
  129. package/dist/esm/components/ButtonGroup/ButtonGroup.js +8 -6
  130. package/dist/esm/components/ButtonGroup/ButtonGroup.js.map +1 -1
  131. package/dist/esm/components/Calendar/Calendar.d.ts +1 -0
  132. package/dist/esm/components/Calendar/Calendar.js +25 -7
  133. package/dist/esm/components/Calendar/Calendar.js.map +1 -1
  134. package/dist/esm/components/ColSpan/ColSpan.js +25 -6
  135. package/dist/esm/components/ColSpan/ColSpan.js.map +1 -1
  136. package/dist/esm/components/DateRangePicker/DatePicker.d.ts +2 -1
  137. package/dist/esm/components/DateRangePicker/DatePicker.js +4 -4
  138. package/dist/esm/components/DateRangePicker/DatePicker.js.map +1 -1
  139. package/dist/esm/components/Func/GRPC/clientMutationDataCenterV3.d.ts +5 -0
  140. package/dist/esm/components/Func/GRPC/clientMutationDataCenterV3.js +44 -0
  141. package/dist/esm/components/Func/GRPC/clientMutationDataCenterV3.js.map +1 -0
  142. package/dist/esm/components/Func/GRPC/clientMutationV3.d.ts +6 -0
  143. package/dist/esm/components/Func/GRPC/clientMutationV3.js +40 -0
  144. package/dist/esm/components/Func/GRPC/clientMutationV3.js.map +1 -0
  145. package/dist/esm/components/Func/GRPC/clientQueryDataCenterV3.d.ts +5 -0
  146. package/dist/esm/components/Func/GRPC/clientQueryDataCenterV3.js +44 -0
  147. package/dist/esm/components/Func/GRPC/clientQueryDataCenterV3.js.map +1 -0
  148. package/dist/esm/components/Func/GRPC/clientQueryV3.d.ts +6 -0
  149. package/dist/esm/components/Func/GRPC/clientQueryV3.js +40 -0
  150. package/dist/esm/components/Func/GRPC/clientQueryV3.js.map +1 -0
  151. package/dist/esm/components/Func/SchoolYearV3/getPrevCurrentNextSchoolYearV3.d.ts +3 -0
  152. package/dist/esm/components/Func/SchoolYearV3/getPrevCurrentNextSchoolYearV3.js +41 -0
  153. package/dist/esm/components/Func/SchoolYearV3/getPrevCurrentNextSchoolYearV3.js.map +1 -0
  154. package/dist/esm/components/Func/clientMutationV3.d.ts +2 -1
  155. package/dist/esm/components/Func/clientMutationV3.js +7 -8
  156. package/dist/esm/components/Func/clientMutationV3.js.map +1 -1
  157. package/dist/esm/components/Func/clientQueryV3.d.ts +2 -1
  158. package/dist/esm/components/Func/clientQueryV3.js +7 -8
  159. package/dist/esm/components/Func/clientQueryV3.js.map +1 -1
  160. package/dist/esm/components/HeaderBar/HeaderBar.d.ts +7 -1
  161. package/dist/esm/components/HeaderBar/HeaderBar.js +25 -1
  162. package/dist/esm/components/HeaderBar/HeaderBar.js.map +1 -1
  163. package/dist/esm/components/LoginSsoV3/login-sso-v3.d.ts +1 -0
  164. package/dist/esm/components/LoginSsoV3/login-sso-v3.js +13 -10
  165. package/dist/esm/components/LoginSsoV3/login-sso-v3.js.map +1 -1
  166. package/dist/esm/components/MainWrapV3/MainWrapV3.d.ts +1 -1
  167. package/dist/esm/components/MainWrapV3/MainWrapV3.js +286 -238
  168. package/dist/esm/components/MainWrapV3/MainWrapV3.js.map +1 -1
  169. package/dist/esm/components/MainWrapV3/assets/Icon.js +9 -1
  170. package/dist/esm/components/MainWrapV3/assets/Icon.js.map +1 -1
  171. package/dist/esm/components/MainWrapV3/assets/Icon.ts +8 -0
  172. package/dist/esm/components/MainWrapV3/assets/icon/hrm_checkin.svg +3 -0
  173. package/dist/esm/components/MainWrapV3/assets/icon/lms.svg +3 -0
  174. package/dist/esm/components/MainWrapV3/assets/icon-solid/hrm_checkin_solid.svg +3 -0
  175. package/dist/esm/components/MainWrapV3/assets/icon-solid/lms_solid.svg +3 -0
  176. package/dist/esm/components/Modal/Modal.d.ts +3 -1
  177. package/dist/esm/components/Modal/Modal.js +5 -4
  178. package/dist/esm/components/Modal/Modal.js.map +1 -1
  179. package/dist/esm/components/SearchResultListV3/SearchResultList.js +1 -9
  180. package/dist/esm/components/SearchResultListV3/SearchResultList.js.map +1 -1
  181. package/dist/esm/components/SortItem/SortItem.d.ts +12 -0
  182. package/dist/esm/components/SortItem/SortItem.js +24 -0
  183. package/dist/esm/components/SortItem/SortItem.js.map +1 -0
  184. package/dist/esm/components/Sortable/Sortable.d.ts +22 -0
  185. package/dist/esm/components/Sortable/Sortable.js +10 -0
  186. package/dist/esm/components/Sortable/Sortable.js.map +1 -0
  187. package/dist/esm/components/StoreProduct/StoreProduct.js +1 -0
  188. package/dist/esm/components/StoreProduct/StoreProduct.js.map +1 -1
  189. package/dist/esm/components/TableV3/HeaderTable.d.ts +1 -1
  190. package/dist/esm/components/TableV3/HeaderTable.js +5 -4
  191. package/dist/esm/components/TableV3/HeaderTable.js.map +1 -1
  192. package/dist/esm/components/TableV3/Pagination.d.ts +1 -1
  193. package/dist/esm/components/TableV3/Pagination.js +12 -2
  194. package/dist/esm/components/TableV3/Pagination.js.map +1 -1
  195. package/dist/esm/components/TableV3/RowTable.d.ts +1 -1
  196. package/dist/esm/components/TableV3/RowTable.js +8 -5
  197. package/dist/esm/components/TableV3/RowTable.js.map +1 -1
  198. package/dist/esm/components/TableV3/TableV3.d.ts +9 -1
  199. package/dist/esm/components/TableV3/TableV3.js +71 -45
  200. package/dist/esm/components/TableV3/TableV3.js.map +1 -1
  201. package/dist/esm/components/TableVertical/RowTable.d.ts +1 -1
  202. package/dist/esm/components/TableVertical/RowTable.js +14 -10
  203. package/dist/esm/components/TableVertical/RowTable.js.map +1 -1
  204. package/dist/esm/components/TableVertical/TableVertical.d.ts +2 -1
  205. package/dist/esm/components/TableVertical/TableVertical.js +2 -2
  206. package/dist/esm/components/TableVertical/TableVertical.js.map +1 -1
  207. package/dist/esm/components/Tabs/Tabs.d.ts +1 -0
  208. package/dist/esm/components/Tabs/Tabs.js +14 -7
  209. package/dist/esm/components/Tabs/Tabs.js.map +1 -1
  210. package/dist/esm/components/TimePicker/TimePicker.d.ts +3 -1
  211. package/dist/esm/components/TimePicker/TimePicker.js +15 -2
  212. package/dist/esm/components/TimePicker/TimePicker.js.map +1 -1
  213. package/dist/esm/components/TimePicker/component/Time.d.ts +3 -1
  214. package/dist/esm/components/TimePicker/component/Time.js +7 -6
  215. package/dist/esm/components/TimePicker/component/Time.js.map +1 -1
  216. package/dist/esm/components/TimePicker/utils.d.ts +5 -0
  217. package/dist/esm/components/TimePicker/utils.js +28 -0
  218. package/dist/esm/components/TimePicker/utils.js.map +1 -1
  219. package/dist/esm/components/UploadFile/FormUpload.js +5 -6
  220. package/dist/esm/components/UploadFile/FormUpload.js.map +1 -1
  221. package/dist/esm/helpers/helpers.d.ts +1 -0
  222. package/dist/esm/helpers/helpers.js +10 -0
  223. package/dist/esm/helpers/helpers.js.map +1 -1
  224. package/dist/esm/index.d.ts +4 -1
  225. package/dist/esm/index.js +4 -1
  226. package/dist/esm/index.js.map +1 -1
  227. package/dist/esm/query/index.d.ts +1 -1
  228. package/dist/esm/query/index.js +1 -1
  229. package/dist/esm/query/index.js.map +1 -1
  230. package/dist/esm/query/school-year-v3/index.d.ts +2 -2
  231. package/dist/esm/query/school-year-v3/index.js +2 -2
  232. package/dist/esm/query/school-year-v3/index.js.map +1 -1
  233. package/dist/esm/utils/constants.d.ts +10 -0
  234. package/dist/esm/utils/constants.js +10 -0
  235. package/dist/esm/utils/constants.js.map +1 -1
  236. package/dist/esm/utils/types/types.d.ts +8 -1
  237. package/package.json +6 -4
@@ -20,7 +20,6 @@ var query_1 = require("../../query");
20
20
  var Card_1 = require("../Card");
21
21
  var getEnvPublic_1 = tslib_1.__importDefault(require("../Func/getEnvPublic"));
22
22
  var saveCookiesClient_1 = tslib_1.__importDefault(require("../Func/saveCookiesClient"));
23
- var LoadingProvider_1 = require("../LoadingProvider");
24
23
  var appearance_styled_1 = tslib_1.__importDefault(require("./appearance/appearance-styled"));
25
24
  var nav_mobile_1 = tslib_1.__importDefault(require("./navigator/nav-mobile"));
26
25
  var sub_menu_style_1 = require("./style/sub-menu-style");
@@ -28,7 +27,7 @@ var Icon_1 = require("./assets/Icon");
28
27
  var image_1 = tslib_1.__importDefault(require("next/image"));
29
28
  var axios_1 = tslib_1.__importDefault(require("axios"));
30
29
  var getCookieSession_1 = tslib_1.__importDefault(require("../Func/getCookieSession"));
31
- var helpers_1 = require("../../helpers/helpers");
30
+ var LoadingProvider_1 = require("../LoadingProvider");
32
31
  fontawesome_svg_core_1.library.add(free_solid_svg_icons_1.fas);
33
32
  function classNames() {
34
33
  var classes = [];
@@ -38,60 +37,48 @@ function classNames() {
38
37
  return classes.filter(Boolean).join(' ');
39
38
  }
40
39
  var PHXMainWrapV3 = function (_a) {
41
- var _b, _c, _d, _e;
42
- var children = _a.children, getDataCookies = _a.getDataCookies, _f = _a.hiddenLeftMenu, hiddenLeftMenu = _f === void 0 ? false : _f, _g = _a.logoHeight, logoHeight = _g === void 0 ? '28px' : _g, _h = _a.multipleMenu, multipleMenu = _h === void 0 ? false : _h, params = _a.params, pathName = _a.pathName, router = _a.router;
40
+ var _b, _c, _d, _e, _f;
41
+ var children = _a.children, _g = _a.hiddenLeftMenu, hiddenLeftMenu = _g === void 0 ? false : _g, _h = _a.logoHeight, logoHeight = _h === void 0 ? '28px' : _h, _j = _a.multipleMenu, multipleMenu = _j === void 0 ? false : _j, params = _a.params, pathName = _a.pathName, router = _a.router;
43
42
  var pid = (params ? params : {}).pid;
44
- var _j = (0, react_2.useState)(false), modal = _j[0], setModal = _j[1];
45
- var _k = (0, react_2.useState)(true), openSubMenu = _k[0], setOpenSubMenu = _k[1];
46
- var _l = (0, react_2.useState)(''), campaignName = _l[0], setCampaignName = _l[1];
47
- var _m = (0, react_2.useState)(false), sidebarOpen = _m[0], setSidebarOpen = _m[1];
48
- var _o = (0, react_2.useState)([]), subNavigation = _o[0], setSubNavigation = _o[1];
49
- var _p = (0, react_2.useState)([]), navigation = _p[0], setNavigation = _p[1];
50
- var _q = (0, react_2.useState)([]), menu = _q[0], setMenu = _q[1];
51
- var _r = (0, react_2.useState)(true), loadingSchool = _r[0], setLoadingSchool = _r[1];
52
- var _s = (0, react_2.useState)(true), loadingMenu = _s[0], setLoadingMenu = _s[1];
53
- var _t = (0, react_2.useState)(false), modalSignOut = _t[0], setModalSignOut = _t[1];
54
- var _u = (0, react_2.useState)([]), listSchool = _u[0], setListSchool = _u[1];
55
- var _v = (0, react_2.useState)([]), roleCode = _v[0], setRoleCode = _v[1];
56
- var _w = (0, react_2.useState)([]), perCode = _w[0], setPerCode = _w[1];
57
- var _x = (0, react_2.useState)(null), schoolId = _x[0], setSchoolId = _x[1];
58
- var _y = (0, react_2.useState)(true), showBanner = _y[0], setShowBanner = _y[1];
59
- var _z = (0, react_2.useState)({}), configLayout = _z[0], setConfigLayout = _z[1];
60
- var _0 = (0, react_2.useState)(true), isLoading = _0[0], setIsLoading = _0[1];
61
- var _1 = (0, react_2.useState)(true), isLoadingPermission = _1[0], setIsLoadingPermission = _1[1];
62
- var locationPathname = typeof window !== 'undefined' ? window.location.pathname : '';
63
- var pathArr = locationPathname.split('/');
64
- var pathNameWithBasePath = "/".concat(pathArr[1]).concat(pathName);
43
+ var _k = (0, react_2.useState)(false), modal = _k[0], setModal = _k[1];
44
+ var _l = (0, react_2.useState)(true), openSubMenu = _l[0], setOpenSubMenu = _l[1];
45
+ var _m = (0, react_2.useState)(''), campaignName = _m[0], setCampaignName = _m[1];
46
+ var _o = (0, react_2.useState)(false), sidebarOpen = _o[0], setSidebarOpen = _o[1];
47
+ var _p = (0, react_2.useState)([]), subNavigation = _p[0], setSubNavigation = _p[1];
48
+ var _q = (0, react_2.useState)([]), navigation = _q[0], setNavigation = _q[1];
49
+ var _r = (0, react_2.useState)(false), modalSignOut = _r[0], setModalSignOut = _r[1];
50
+ var _s = (0, react_2.useState)(true), showBanner = _s[0], setShowBanner = _s[1];
51
+ var _t = (0, react_2.useState)(true), isLoading = _t[0], setIsLoading = _t[1];
52
+ var sessionCookie = (0, react_2.useRef)((0, getCookieSession_1["default"])());
53
+ var userSessionInfo = (_b = sessionCookie.current) === null || _b === void 0 ? void 0 : _b.user_info;
54
+ var schoolInfoId = userSessionInfo === null || userSessionInfo === void 0 ? void 0 : userSessionInfo.school_id;
55
+ var userId = userSessionInfo === null || userSessionInfo === void 0 ? void 0 : userSessionInfo.id;
65
56
  var setGlobalLoading = (0, LoadingProvider_1.useLoading)().setLoading;
57
+ var _u = (0, react_2.useState)({
58
+ loadingMenu: true,
59
+ loadingSchool: true,
60
+ listSchool: [],
61
+ logo: {
62
+ path: '',
63
+ height: logoHeight
64
+ },
65
+ menu: [],
66
+ schoolId: null,
67
+ configLayout: undefined,
68
+ perCode: [],
69
+ roleCode: [],
70
+ isLoadingPermission: true,
71
+ sourceAvatar: ((_c = userSessionInfo === null || userSessionInfo === void 0 ? void 0 : userSessionInfo.user_avatar) === null || _c === void 0 ? void 0 : _c.size_small) || (userSessionInfo === null || userSessionInfo === void 0 ? void 0 : userSessionInfo.avatar) || constants_1.DEFAULT_AVATAR
72
+ }), dataInitMain = _u[0], setDataInitMain = _u[1];
73
+ var locationPathname = typeof window !== 'undefined' ? window.location.pathname : '';
74
+ var locationArr = locationPathname.split('/').filter(Boolean);
75
+ var basePath = locationArr.slice(0, locationArr.length - pathName.split('/').filter(Boolean).length).join('/');
76
+ var pathNameWithBasePath = "".concat(basePath ? "".concat('/' + basePath) : '').concat(pathName);
66
77
  function enablePer(code, arr) {
67
78
  if (!code)
68
79
  return true;
69
80
  return arr === null || arr === void 0 ? void 0 : arr.some(function (item) { return item === code; });
70
81
  }
71
- var _2 = (0, react_2.useState)({
72
- path: '',
73
- height: logoHeight
74
- }), logo = _2[0], setLogo = _2[1];
75
- var sessionCookie = (0, react_2.useRef)((0, getCookieSession_1["default"])());
76
- var userSessionInfo = (_b = sessionCookie.current) === null || _b === void 0 ? void 0 : _b.user_info;
77
- var schoolInfoId = userSessionInfo === null || userSessionInfo === void 0 ? void 0 : userSessionInfo.school_id;
78
- var userId = userSessionInfo === null || userSessionInfo === void 0 ? void 0 : userSessionInfo.id;
79
- function compareObjects(settingQuery, settingCookies) {
80
- var keysSettingQuery = Object.keys(settingQuery);
81
- if (keysSettingQuery.length !== Object.keys(settingCookies).length) {
82
- return false;
83
- }
84
- for (var _i = 0, keysSettingQuery_1 = keysSettingQuery; _i < keysSettingQuery_1.length; _i++) {
85
- var key = keysSettingQuery_1[_i];
86
- if (!Object.prototype.hasOwnProperty.call(settingCookies, key)) {
87
- return false;
88
- }
89
- if (settingQuery[key] !== settingCookies[key]) {
90
- return false;
91
- }
92
- }
93
- return true;
94
- }
95
82
  // Lấy code phân quyền trong menu từ path hiện tại
96
83
  function getCodesByPath(dataMenu, currentPath) {
97
84
  var lastMatchingCode = null;
@@ -119,6 +106,12 @@ var PHXMainWrapV3 = function (_a) {
119
106
  }
120
107
  // code phân quyền path hiện tại
121
108
  var currentCode = getCodesByPath(navigation, locationPathname);
109
+ var requireLoginValidation = function () {
110
+ var currentURL = window.location.href;
111
+ var url = currentURL.split('/');
112
+ var loginPush = "".concat(url[0], "//").concat(url[2], "/login-sso");
113
+ window.location.replace(loginPush);
114
+ };
122
115
  var checkIsQuitJob = function (_a) {
123
116
  var profileStaff = _a.profileStaff, profileTeacher = _a.profileTeacher;
124
117
  try {
@@ -143,7 +136,7 @@ var PHXMainWrapV3 = function (_a) {
143
136
  return tslib_1.__generator(this, function (_e) {
144
137
  switch (_e.label) {
145
138
  case 0:
146
- _e.trys.push([0, 2, 3, 4]);
139
+ _e.trys.push([0, 2, , 3]);
147
140
  return [4 /*yield*/, (0, clientQueryV3_1["default"])({
148
141
  query: query_1.GET_PERMISSION_DETAIL_USER_V3,
149
142
  variables: { id: userId, school_id: schoolInfoId }
@@ -157,117 +150,98 @@ var PHXMainWrapV3 = function (_a) {
157
150
  routePermissions = permissionCodes.filter(function (p) { return !p.is_action; }).map(function (p) { return p.code; });
158
151
  actionPermissions = permissionCodes.filter(function (p) { return p.is_action; }).map(function (p) { return p.code; });
159
152
  actionPermissionMap = Object.fromEntries(actionPermissions.map(function (code) { return [code, true]; }));
160
- // Mã hoá và lưu vào cookie
161
- (0, saveCookiesClient_1["default"])({ value: tslib_1.__assign(tslib_1.__assign({}, sessionCookie.current), { action_permission: actionPermissionMap }) });
162
153
  uniqueRoutePermissions = Array.from(new Set(routePermissions));
163
- setPerCode(uniqueRoutePermissions);
164
- return [3 /*break*/, 4];
154
+ return [2 /*return*/, { uniqueRoutePermissions: uniqueRoutePermissions, actionPermissionMap: actionPermissionMap }];
165
155
  case 2:
166
156
  error_1 = _e.sent();
167
157
  console.error('Error fetching school data:', error_1);
168
- return [3 /*break*/, 4];
169
- case 3:
170
- setIsLoadingPermission(false);
171
- return [7 /*endfinally*/];
172
- case 4: return [2 /*return*/];
158
+ return [2 /*return*/, { uniqueRoutePermissions: null, actionPermissionMap: null }];
159
+ case 3: return [2 /*return*/];
173
160
  }
174
161
  });
175
162
  }); };
176
163
  var getProfileByUser = function () { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
177
- var response, profileUser, profile_staff, profile_teacher, user_roles, allRoleCodes, userInfoNew, allRoleCodesLength, error_2;
164
+ var response, profileUser, avatar, email, full_name, profile_staff, profile_teacher, user_avatar, user_roles, error_2;
178
165
  return tslib_1.__generator(this, function (_a) {
179
166
  switch (_a.label) {
180
167
  case 0:
181
- if (!userSessionInfo)
182
- return [2 /*return*/];
183
- _a.label = 1;
184
- case 1:
185
- _a.trys.push([1, 3, , 4]);
168
+ _a.trys.push([0, 2, , 3]);
186
169
  return [4 /*yield*/, (0, clientQueryV3_1["default"])({
187
170
  query: query_1.QUERY_GET_PROFILE_USER,
188
171
  variables: {
189
172
  user_id: userId
190
173
  }
191
174
  })];
192
- case 2:
175
+ case 1:
193
176
  response = _a.sent();
194
177
  profileUser = response.data.users_by_pk;
195
- profile_staff = profileUser.profile_staff, profile_teacher = profileUser.profile_teacher, user_roles = profileUser.user_roles;
178
+ avatar = profileUser.avatar, email = profileUser.email, full_name = profileUser.full_name, profile_staff = profileUser.profile_staff, profile_teacher = profileUser.profile_teacher, user_avatar = profileUser.user_avatar, user_roles = profileUser.user_roles;
196
179
  // check user is quit job
197
- checkIsQuitJob({ profileStaff: profile_staff, profileTeacher: profile_teacher });
198
- allRoleCodes = user_roles.map(function (userRole) { var _a; return (_a = userRole === null || userRole === void 0 ? void 0 : userRole.role) === null || _a === void 0 ? void 0 : _a.role_code; }) || [];
199
- userInfoNew = tslib_1.__assign(tslib_1.__assign({}, userSessionInfo), { user_roles: user_roles });
200
- (0, saveCookiesClient_1["default"])({ value: tslib_1.__assign(tslib_1.__assign({}, sessionCookie.current), { user_info: userInfoNew }) });
201
- setRoleCode(allRoleCodes);
202
- allRoleCodesLength = allRoleCodes === null || allRoleCodes === void 0 ? void 0 : allRoleCodes.length;
203
- if (allRoleCodes && allRoleCodesLength > 0) {
204
- fetchDataPer()["catch"](console.error);
205
- }
206
- return [3 /*break*/, 4];
207
- case 3:
180
+ checkIsQuitJob({
181
+ profileStaff: profile_staff,
182
+ profileTeacher: profile_teacher
183
+ });
184
+ // renew list role in cookie
185
+ return [2 /*return*/, {
186
+ avatar: avatar,
187
+ user_avatar: user_avatar,
188
+ full_name: full_name,
189
+ email: email,
190
+ user_roles: user_roles
191
+ }];
192
+ case 2:
208
193
  error_2 = _a.sent();
209
194
  console.log(error_2);
210
- return [3 /*break*/, 4];
211
- case 4: return [2 /*return*/];
195
+ return [2 /*return*/];
196
+ case 3: return [2 /*return*/];
212
197
  }
213
198
  });
214
199
  }); };
215
- var fetchDataSchool = function () {
216
- if (!userSessionInfo)
217
- return;
218
- var id = userSessionInfo.id, _a = userSessionInfo.school, group_id = _a.school_name.group_id, school_name_id = _a.school_name_id, school_id = userSessionInfo.school_id;
219
- setSchoolId(school_id);
220
- var fetchData = function () { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
221
- var res, listSchool_1, settingFetchData, cleanedJsonString, jsonObjectSetting, settingSiteCookie, error_3;
222
- var _a, _b, _c, _d, _e;
223
- return tslib_1.__generator(this, function (_f) {
224
- switch (_f.label) {
225
- case 0:
226
- setIsLoading(true);
227
- _f.label = 1;
228
- case 1:
229
- _f.trys.push([1, 3, , 4]);
230
- return [4 /*yield*/, (0, clientQueryV3_1["default"])({
231
- query: query_1.GET_SCHOOL_V3,
232
- variables: { group_id: group_id, school_name_id: school_name_id, user_id: id },
233
- isDelay: false
234
- })];
235
- case 2:
236
- res = _f.sent();
237
- listSchool_1 = (_b = (_a = res === null || res === void 0 ? void 0 : res.data) === null || _a === void 0 ? void 0 : _a.school_name[0]) === null || _b === void 0 ? void 0 : _b.schools;
238
- if ((listSchool_1 === null || listSchool_1 === void 0 ? void 0 : listSchool_1.length) > 0) {
239
- setLoadingSchool(false);
240
- setListSchool(listSchool_1);
241
- }
242
- setIsLoading(false);
243
- settingFetchData = (_d = (_c = res === null || res === void 0 ? void 0 : res.data) === null || _c === void 0 ? void 0 : _c.setting_site[0]) === null || _d === void 0 ? void 0 : _d.value_setting;
244
- if (settingFetchData) {
245
- cleanedJsonString = settingFetchData.replace(/^"(.*)"$/, '$1');
246
- jsonObjectSetting = JSON.parse(cleanedJsonString);
247
- setConfigLayout(jsonObjectSetting);
248
- settingSiteCookie = (_e = sessionCookie.current) === null || _e === void 0 ? void 0 : _e.setting_site;
249
- // Nếu chưa có trong cookie hoặc data trong cookie và db khác nhau
250
- if (!settingSiteCookie || !compareObjects(jsonObjectSetting, settingSiteCookie)) {
251
- (0, saveCookiesClient_1["default"])({ value: tslib_1.__assign(tslib_1.__assign({}, sessionCookie.current), { setting_site: jsonObjectSetting }) });
252
- }
253
- }
200
+ var fetchDataSchool = function () { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
201
+ var id, _a, group_id, school_name_id, school_id, settingSiteDb, res, dataSchool, settingFetchData, cleanedJsonString, error_3;
202
+ var _b, _c, _d, _e;
203
+ return tslib_1.__generator(this, function (_f) {
204
+ switch (_f.label) {
205
+ case 0:
206
+ if (!userSessionInfo)
254
207
  return [2 /*return*/];
255
- case 3:
256
- error_3 = _f.sent();
257
- setIsLoading(false);
258
- console.error('Error fetching school data:', error_3);
259
- return [3 /*break*/, 4];
260
- case 4: return [2 /*return*/];
261
- }
262
- });
263
- }); };
264
- fetchData()["catch"](function (err) {
265
- console.log(err);
266
- setIsLoading(false);
208
+ id = userSessionInfo.id, _a = userSessionInfo.school, group_id = _a.school_name.group_id, school_name_id = _a.school_name_id, school_id = userSessionInfo.school_id;
209
+ setIsLoading(true);
210
+ settingSiteDb = undefined;
211
+ _f.label = 1;
212
+ case 1:
213
+ _f.trys.push([1, 3, , 4]);
214
+ return [4 /*yield*/, (0, clientQueryV3_1["default"])({
215
+ query: query_1.GET_SCHOOL_V3,
216
+ variables: { group_id: group_id, school_name_id: school_name_id, user_id: id },
217
+ isDelay: false
218
+ })];
219
+ case 2:
220
+ res = _f.sent();
221
+ dataSchool = (_c = (_b = res === null || res === void 0 ? void 0 : res.data) === null || _b === void 0 ? void 0 : _b.school_name[0]) === null || _c === void 0 ? void 0 : _c.schools;
222
+ settingFetchData = (_e = (_d = res === null || res === void 0 ? void 0 : res.data) === null || _d === void 0 ? void 0 : _d.setting_site[0]) === null || _e === void 0 ? void 0 : _e.value_setting;
223
+ if (settingFetchData) {
224
+ cleanedJsonString = settingFetchData.replace(/^"(.*)"$/, '$1');
225
+ settingSiteDb = JSON.parse(cleanedJsonString);
226
+ }
227
+ setIsLoading(false);
228
+ return [2 /*return*/, {
229
+ settingSiteDb: settingSiteDb,
230
+ loadingSchool: dataSchool.length === 0,
231
+ listSchool: dataSchool,
232
+ schoolId: school_id
233
+ }];
234
+ case 3:
235
+ error_3 = _f.sent();
236
+ setIsLoading(false);
237
+ console.error('Error fetching school data:', error_3);
238
+ return [2 /*return*/];
239
+ case 4: return [2 /*return*/];
240
+ }
267
241
  });
268
- };
242
+ }); };
269
243
  var fetchDataMenu = function () { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
270
- var envPublic, menuUrl, logoMenuTop, data, json;
244
+ var envPublic, menuUrl, logoMenuTop, data, menuJson;
271
245
  return tslib_1.__generator(this, function (_a) {
272
246
  switch (_a.label) {
273
247
  case 0: return [4 /*yield*/, (0, getEnvPublic_1["default"])()];
@@ -284,10 +258,53 @@ var PHXMainWrapV3 = function (_a) {
284
258
  data = _a.sent();
285
259
  return [4 /*yield*/, data.json()];
286
260
  case 3:
287
- json = _a.sent();
288
- setMenu(json);
289
- setLogo({ path: logoMenuTop, height: logoHeight });
290
- setLoadingMenu(false);
261
+ menuJson = _a.sent();
262
+ return [2 /*return*/, {
263
+ loadingMenu: false,
264
+ logo: { path: logoMenuTop, height: logoHeight },
265
+ menu: menuJson
266
+ }];
267
+ }
268
+ });
269
+ }); };
270
+ var fetchInitData = function () { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
271
+ var _a, loadingMenu, logo, menu, profileNew, dataPer, dataSchool, actionPermissionMap, uniqueRoutePermissions;
272
+ var _b;
273
+ return tslib_1.__generator(this, function (_c) {
274
+ switch (_c.label) {
275
+ case 0: return [4 /*yield*/, fetchDataMenu()];
276
+ case 1:
277
+ _a = _c.sent(), loadingMenu = _a.loadingMenu, logo = _a.logo, menu = _a.menu;
278
+ return [4 /*yield*/, getProfileByUser()];
279
+ case 2:
280
+ profileNew = _c.sent();
281
+ return [4 /*yield*/, fetchDataPer()];
282
+ case 3:
283
+ dataPer = _c.sent();
284
+ return [4 /*yield*/, fetchDataSchool()];
285
+ case 4:
286
+ dataSchool = _c.sent();
287
+ actionPermissionMap = dataPer.actionPermissionMap, uniqueRoutePermissions = dataPer.uniqueRoutePermissions;
288
+ setDataInitMain({
289
+ logo: logo,
290
+ menu: menu,
291
+ loadingMenu: loadingMenu,
292
+ schoolId: (dataSchool === null || dataSchool === void 0 ? void 0 : dataSchool.schoolId) || null,
293
+ loadingSchool: !!(dataSchool === null || dataSchool === void 0 ? void 0 : dataSchool.loadingSchool),
294
+ listSchool: (dataSchool === null || dataSchool === void 0 ? void 0 : dataSchool.listSchool) || [],
295
+ isLoadingPermission: false,
296
+ perCode: uniqueRoutePermissions,
297
+ roleCode: (profileNew === null || profileNew === void 0 ? void 0 : profileNew.user_roles.map(function (userRole) { var _a; return (_a = userRole === null || userRole === void 0 ? void 0 : userRole.role) === null || _a === void 0 ? void 0 : _a.role_code; })) || [],
298
+ configLayout: (dataSchool === null || dataSchool === void 0 ? void 0 : dataSchool.settingSiteDb) || undefined,
299
+ sourceAvatar: ((_b = profileNew === null || profileNew === void 0 ? void 0 : profileNew.user_avatar) === null || _b === void 0 ? void 0 : _b.size_small) || (profileNew === null || profileNew === void 0 ? void 0 : profileNew.avatar) || constants_1.DEFAULT_AVATAR
300
+ });
301
+ (0, saveCookiesClient_1["default"])({
302
+ value: tslib_1.__assign(tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, sessionCookie.current), (actionPermissionMap && {
303
+ action_permission: actionPermissionMap || []
304
+ })), { setting_site: (dataSchool === null || dataSchool === void 0 ? void 0 : dataSchool.settingSiteDb) || {} }), (profileNew && {
305
+ user_info: tslib_1.__assign(tslib_1.__assign({}, userSessionInfo), profileNew)
306
+ }))
307
+ });
291
308
  return [2 /*return*/];
292
309
  }
293
310
  });
@@ -298,21 +315,13 @@ var PHXMainWrapV3 = function (_a) {
298
315
  requireLoginValidation();
299
316
  return;
300
317
  }
301
- fetchDataMenu()["catch"](console.error);
302
- getProfileByUser();
303
- fetchDataSchool();
318
+ fetchInitData();
304
319
  }, []);
305
- var requireLoginValidation = function () {
306
- var currentURL = window.location.href;
307
- var url = currentURL.split('/');
308
- var loginPush = "".concat(url[0], "//").concat(url[2], "/login-sso");
309
- window.location.replace(loginPush);
310
- };
311
- var isEqualUrl = function (parentHref, pathName) {
312
- if (!parentHref || !pathName) {
320
+ var isEqualUrl = function (parentHref, pathNameCompare) {
321
+ if (!parentHref || !pathNameCompare) {
313
322
  return false;
314
323
  }
315
- var pathNameSplit = pathName.split('/');
324
+ var pathNameSplit = pathNameCompare.split('/');
316
325
  var hrefSplit = parentHref.split('/');
317
326
  if (!pathNameSplit || !hrefSplit) {
318
327
  return false;
@@ -329,9 +338,25 @@ var PHXMainWrapV3 = function (_a) {
329
338
  }
330
339
  return urlRouter === currentMenu;
331
340
  };
332
- var isBelongParent = function (parentUrl, pathName) {
341
+ var isBelongParentWithMicroservice = function (parentSplit, pathNameSplit) {
342
+ if (parentSplit.length > 2) {
343
+ var compareLength = parentSplit.length;
344
+ for (var i = 1; i < compareLength; i++) {
345
+ if (parentSplit[i] !== pathNameSplit[i])
346
+ return false;
347
+ }
348
+ return true;
349
+ }
350
+ else {
351
+ return parentSplit[1] === pathNameSplit[3];
352
+ }
353
+ };
354
+ var isBelongParent = function (parentUrl, pathNameCompare, isMicroservice) {
333
355
  var parentSplit = parentUrl.split('/');
334
- var pathNameSplit = pathName.split('/');
356
+ var pathNameSplit = pathNameCompare.split('/');
357
+ if (isMicroservice) {
358
+ return isBelongParentWithMicroservice(parentSplit, pathNameSplit);
359
+ }
335
360
  if (parentSplit.length > 2 && !parentSplit.includes('list')) {
336
361
  return parentSplit[1] === pathNameSplit[2] && parentSplit[2] === pathNameSplit[3];
337
362
  }
@@ -344,7 +369,7 @@ var PHXMainWrapV3 = function (_a) {
344
369
  return pathNameSplit[1] === 'admissions';
345
370
  };
346
371
  var loadParentNavigation = function (path) {
347
- var mainNavigation = menu;
372
+ var mainNavigation = dataInitMain.menu;
348
373
  var naviSize = mainNavigation.length;
349
374
  for (var i = 0; i < naviSize; i++) {
350
375
  var item = mainNavigation[i];
@@ -357,18 +382,22 @@ var PHXMainWrapV3 = function (_a) {
357
382
  for (var j = 0; j < itemLength; j++) {
358
383
  var childItem = item.child[j];
359
384
  // Active child item
360
- childItem.current = isBelongParent(childItem.path, path);
385
+ childItem.current = isBelongParent(childItem.path, path, !!(childItem === null || childItem === void 0 ? void 0 : childItem.isMicroservice));
361
386
  if (childItem.child) {
362
387
  var childItemLength = childItem.child.length;
363
388
  var count = 0;
364
389
  for (var k = 0; k < childItemLength; k++) {
365
390
  var subChild = childItem.child[k];
366
- subChild.current = isBelongParent(subChild.path, path);
367
- if (isBelongParent(subChild.path, path) || isBelongParent(childItem.path, path)) {
391
+ subChild.current = isBelongParent(subChild.path, path, !!(childItem === null || childItem === void 0 ? void 0 : childItem.isMicroservice));
392
+ if (isBelongParent(subChild.path, path, !!(childItem === null || childItem === void 0 ? void 0 : childItem.isMicroservice)) ||
393
+ isBelongParent(childItem.path, path, !!(childItem === null || childItem === void 0 ? void 0 : childItem.isMicroservice))) {
368
394
  count++;
369
395
  }
396
+ var isPathInternal = (childItem === null || childItem === void 0 ? void 0 : childItem.isMicroservice)
397
+ ? subChild.path === (childItem === null || childItem === void 0 ? void 0 : childItem.pathInternal)
398
+ : subChild.path === childItem.path;
370
399
  count > 0 ? (childItem.showChild = true) : (childItem.showChild = false);
371
- subChild.path === childItem.path ? (childItem.current = false) : null;
400
+ isPathInternal ? (childItem.current = false) : null;
372
401
  }
373
402
  }
374
403
  listChildren.push(childItem);
@@ -379,7 +408,7 @@ var PHXMainWrapV3 = function (_a) {
379
408
  setNavigation(mainNavigation);
380
409
  };
381
410
  var loadChildrenCampaign = function (path) {
382
- var mainNavigation = menu;
411
+ var mainNavigation = dataInitMain.menu;
383
412
  var naviSize = mainNavigation.length;
384
413
  for (var i = 0; i < naviSize; i++) {
385
414
  var item = mainNavigation[i];
@@ -395,13 +424,13 @@ var PHXMainWrapV3 = function (_a) {
395
424
  for (var j = 0; j < itemLength; j++) {
396
425
  var childItem = listCampaign === null || listCampaign === void 0 ? void 0 : listCampaign.childrenByParentDetail[j];
397
426
  // Active child item
398
- childItem.current = isBelongParent(childItem.path, path);
427
+ childItem.current = isBelongParent(childItem.path, path, false);
399
428
  if (childItem.child) {
400
429
  var childItemLength = childItem.child.length;
401
430
  for (var k = 0; k < childItemLength; k++) {
402
431
  var subChild = childItem.child[k];
403
- subChild.current = isBelongParent(subChild.path, path);
404
- if (isBelongParent(subChild.path, path) || isBelongParent(childItem.path, path)) {
432
+ subChild.current = isBelongParent(subChild.path, path, false);
433
+ if (isBelongParent(subChild.path, path, false) || isBelongParent(childItem.path, path, false)) {
405
434
  childItem.showChild = true;
406
435
  }
407
436
  subChild.path === childItem.path ? (childItem.current = false) : null;
@@ -415,10 +444,11 @@ var PHXMainWrapV3 = function (_a) {
415
444
  setNavigation(mainNavigation);
416
445
  };
417
446
  var checkChildrenCampaign = function (path) {
418
- var campaignMenu = menu === null || menu === void 0 ? void 0 : menu.find(function (item) { return item.path === '/admissions/campaign/list'; });
447
+ var _a;
448
+ var campaignMenu = (_a = dataInitMain.menu) === null || _a === void 0 ? void 0 : _a.find(function (item) { return item.path === '/admissions/campaign/list'; });
419
449
  var campaignChild = campaignMenu === null || campaignMenu === void 0 ? void 0 : campaignMenu.child;
420
450
  var listChild = campaignChild === null || campaignChild === void 0 ? void 0 : campaignChild.find(function (item) { return item.path === '/campaign/list'; });
421
- var isChild = listChild === null || listChild === void 0 ? void 0 : listChild.childrenByParentDetail.find(function (item) { return isBelongParent(item.path, path); });
451
+ var isChild = listChild === null || listChild === void 0 ? void 0 : listChild.childrenByParentDetail.find(function (item) { return isBelongParent(item.path, path, false); });
422
452
  return isChild !== undefined;
423
453
  };
424
454
  (0, react_2.useEffect)(function () {
@@ -447,7 +477,7 @@ var PHXMainWrapV3 = function (_a) {
447
477
  loadParentNavigation(pathNameWithBasePath);
448
478
  }
449
479
  // eslint-disable-next-line react-hooks/exhaustive-deps
450
- }, [menu, pid, pathNameWithBasePath]);
480
+ }, [dataInitMain, pid, pathNameWithBasePath]);
451
481
  (0, react_2.useEffect)(function () {
452
482
  var isAdmissions = checkAdmissions(pathNameWithBasePath);
453
483
  if (isAdmissions) {
@@ -464,7 +494,7 @@ var PHXMainWrapV3 = function (_a) {
464
494
  else {
465
495
  setOpenSubMenu(true);
466
496
  }
467
- }, [pathNameWithBasePath, menu]);
497
+ }, [pathNameWithBasePath, dataInitMain]);
468
498
  var loadSubNavigation = function (path, isChild, childPath) {
469
499
  var subLength = subNavigation.length;
470
500
  var newSub = [];
@@ -506,7 +536,7 @@ var PHXMainWrapV3 = function (_a) {
506
536
  router.push(item.path);
507
537
  }
508
538
  };
509
- var height = logo.height, topMenuLogoFromEnv = logo.path;
539
+ var topMenuLogoFromEnv = dataInitMain.logo.path;
510
540
  var handleModalSignOut = function () { return setModalSignOut(true); };
511
541
  var handleRedirectRouter = function (path) {
512
542
  var currentURL = window.location.href;
@@ -560,11 +590,11 @@ var PHXMainWrapV3 = function (_a) {
560
590
  var currentIndexActive = item.find(function (s) { return s.current; });
561
591
  return currentIndexActive ? currentIndexActive.id > currentItem.id : false;
562
592
  };
563
- var _3 = (0, react_2.useState)(false), openNavName = _3[0], setOpenNavName = _3[1];
564
- var _4 = (0, react_2.useState)(false), showSearchBar = _4[0], setShowSearchBar = _4[1];
565
- var _5 = (0, react_2.useState)(null), selected = _5[0], setSelected = _5[1];
593
+ var _v = (0, react_2.useState)(false), openNavName = _v[0], setOpenNavName = _v[1];
594
+ var _w = (0, react_2.useState)(false), showSearchBar = _w[0], setShowSearchBar = _w[1];
595
+ var _x = (0, react_2.useState)(null), selected = _x[0], setSelected = _x[1];
566
596
  var handleOpenModal = function (id) {
567
- setModal(id !== schoolId);
597
+ setModal(id !== dataInitMain.schoolId);
568
598
  setSelected(id);
569
599
  };
570
600
  var handlePrimaryModal = function () {
@@ -574,7 +604,9 @@ var PHXMainWrapV3 = function (_a) {
574
604
  var schoolIdCurrent = userSessionInfo.school_id;
575
605
  if (newSchoolId && newSchoolId !== schoolIdCurrent) {
576
606
  var userInfoNew = tslib_1.__assign(tslib_1.__assign({}, userSessionInfo), { school_id: newSchoolId });
577
- (0, saveCookiesClient_1["default"])({ value: tslib_1.__assign(tslib_1.__assign({}, sessionCookie.current), { user_info: userInfoNew }) });
607
+ (0, saveCookiesClient_1["default"])({
608
+ value: tslib_1.__assign(tslib_1.__assign({}, sessionCookie.current), { user_info: userInfoNew })
609
+ });
578
610
  window.location.replace(constants_1.ROUTE_DASHBOARD);
579
611
  }
580
612
  }
@@ -584,20 +616,19 @@ var PHXMainWrapV3 = function (_a) {
584
616
  }
585
617
  setModal(false);
586
618
  };
587
- var sourceAvatar = ((_c = userSessionInfo === null || userSessionInfo === void 0 ? void 0 : userSessionInfo.user_avatar) === null || _c === void 0 ? void 0 : _c.size_small) || (userSessionInfo === null || userSessionInfo === void 0 ? void 0 : userSessionInfo.avatar) || constants_1.DEFAULT_AVATAR;
588
619
  // settings page
589
620
  var isSettings = function () {
590
621
  var pathNameSplit = pathNameWithBasePath.split('/');
591
622
  return pathNameSplit[1] === 'setting';
592
623
  };
593
- var checkLogoHeader = (configLayout === null || configLayout === void 0 ? void 0 : configLayout.logo_dashboard) || topMenuLogoFromEnv || constants_1.DEFAULT_LOGO_DASHBOARD;
624
+ var checkLogoHeader = ((_d = dataInitMain.configLayout) === null || _d === void 0 ? void 0 : _d.logo_dashboard) || topMenuLogoFromEnv || constants_1.DEFAULT_LOGO_DASHBOARD;
594
625
  return (react_2["default"].createElement(react_2["default"].Fragment, null,
595
626
  react_2["default"].createElement("div", { className: 'flex min-h-full flex-col' },
596
- react_2["default"].createElement(appearance_styled_1["default"], { configLayout: configLayout, settingSiteCookie: getDataCookies ? (_d = (0, helpers_1.decryptCookie)(getDataCookies)) === null || _d === void 0 ? void 0 : _d.setting_site : null }),
627
+ react_2["default"].createElement(appearance_styled_1["default"], { configLayout: dataInitMain === null || dataInitMain === void 0 ? void 0 : dataInitMain.configLayout, settingSiteCookie: (_e = sessionCookie.current) === null || _e === void 0 ? void 0 : _e.setting_site }),
597
628
  react_2["default"].createElement("header", { className: 'header-color-styled fixed top-0 z-50 min-w-full border-gray-200 bg-white' },
598
629
  react_2["default"].createElement("div", { className: 'header-styled mx-auto flex h-14 items-center justify-between bg-[#1a1a1a] pr-4' },
599
- react_2["default"].createElement("div", { className: 'flex items-center gap-x-3 lg:w-32' },
600
- react_2["default"].createElement("a", { className: 'flex w-full items-center', href: '/' }, topMenuLogoFromEnv ? (react_2["default"].createElement(react_2["default"].Fragment, null, isLoading ? (react_2["default"].createElement("div", { className: 'header-loading-logo ml-3 h-8 w-full animate-pulse' })) : (react_2["default"].createElement("img", { alt: 'Logo', className: 'ml-3 w-auto', src: checkLogoHeader, style: { height: height } })))) : (react_2["default"].createElement(react_2["default"].Fragment, null))),
630
+ react_2["default"].createElement("div", { className: 'flex items-center gap-x-3' },
631
+ react_2["default"].createElement("a", { className: 'flex w-full items-center', href: '/' }, topMenuLogoFromEnv ? (react_2["default"].createElement(react_2["default"].Fragment, null, isLoading ? (react_2["default"].createElement("div", { className: 'header-loading-logo ml-3 h-8 w-full animate-pulse' })) : (react_2["default"].createElement("img", { alt: 'Logo', className: 'ml-3 h-auto max-w-48 w-auto max-h-7', src: checkLogoHeader, style: { maxWidth: '12rem' } })))) : (react_2["default"].createElement(react_2["default"].Fragment, null))),
601
632
  react_2["default"].createElement("div", { className: 'flex items-center lg:hidden' },
602
633
  react_2["default"].createElement("button", { className: 'bg-grey-100 mr-3 inline-flex items-center justify-center rounded-md p-1 text-gray-600 hover:bg-white focus:outline-none focus:ring-2 focus:ring-inset focus:ring-white', onClick: function () { return setSidebarOpen(true); }, type: 'button' },
603
634
  react_2["default"].createElement("span", { className: 'sr-only' }, "Open sidebar"),
@@ -610,33 +641,34 @@ var PHXMainWrapV3 = function (_a) {
610
641
  react_2["default"].createElement(react_1.Menu.Button, { className: 'flex max-w-xs items-center rounded-full bg-gray-800 text-sm focus:outline-none focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-offset-gray-800' },
611
642
  react_2["default"].createElement("span", { className: 'sr-only' }, "Open user menu"),
612
643
  isLoading ? (react_2["default"].createElement("div", { className: 'flex animate-pulse' },
613
- react_2["default"].createElement("div", { className: 'header-loading-avatar h-8 w-8 rounded-full' }))) : (react_2["default"].createElement("img", { alt: '', className: 'h-8 w-8 rounded-full', src: sourceAvatar })))),
644
+ react_2["default"].createElement("div", { className: 'header-loading-avatar h-8 w-8 rounded-full' }))) : (react_2["default"].createElement("img", { alt: '', className: 'h-8 w-8 rounded-full', src: dataInitMain.sourceAvatar })))),
614
645
  react_2["default"].createElement(react_1.Transition, { as: react_2.Fragment, enter: 'transition ease-out duration-100', enterFrom: 'transform opacity-0 scale-95', enterTo: 'transform opacity-100 scale-100', leave: 'transition ease-in duration-75', leaveFrom: 'transform opacity-100 scale-100', leaveTo: 'transform opacity-0 scale-95' },
615
646
  react_2["default"].createElement(react_1.Menu.Items, { className: ' absolute right-0 z-10 mt-2 w-[340px] origin-top-right rounded-md bg-white px-2 shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none' },
616
647
  react_2["default"].createElement(react_1.Menu.Item, null,
617
648
  react_2["default"].createElement("div", { "aria-hidden": true, className: 'px-2 pb-2 pt-4 text-sm font-semibold text-gray-900 ' }, "Ch\u1ECDn tr\u01B0\u1EDDng")),
618
- !loadingSchool ? (react_2["default"].createElement(react_2["default"].Fragment, null, listSchool
649
+ !dataInitMain.loadingSchool ? (react_2["default"].createElement(react_2["default"].Fragment, null, dataInitMain.listSchool
619
650
  .filter(function (val) {
620
- if (!enablePer(constants_1.switchSchool, perCode)) {
621
- return val.id === schoolId;
651
+ if (!enablePer(constants_1.switchSchool, dataInitMain.perCode)) {
652
+ return val.id === dataInitMain.schoolId;
622
653
  }
623
654
  else {
624
655
  return true;
625
656
  }
626
657
  })
627
658
  .map(function (item) { return (react_2["default"].createElement(react_1.Menu.Item, { key: item.id },
628
- react_2["default"].createElement("div", { "aria-hidden": true, className: "".concat(item.id === schoolId &&
629
- listSchool.length > 1 &&
630
- !enablePer(constants_1.switchSchool, perCode) === false
659
+ react_2["default"].createElement("div", { "aria-hidden": true, className: "".concat(item.id === dataInitMain.schoolId &&
660
+ dataInitMain.listSchool.length > 1 &&
661
+ !enablePer(constants_1.switchSchool, dataInitMain.perCode) === false
631
662
  ? 'rounded-lg bg-zinc-200 font-semibold text-gray-900 '
632
- : 'font-normal ', " \n ").concat(item.id !== schoolId &&
633
- (listSchool.length === 1 || !enablePer(constants_1.switchSchool, perCode)) === false
663
+ : 'font-normal ', " \n ").concat(item.id !== dataInitMain.schoolId &&
664
+ (dataInitMain.listSchool.length === 1 ||
665
+ !enablePer(constants_1.switchSchool, dataInitMain.perCode)) === false
634
666
  ? 'cursor-pointer hover:rounded-lg hover:bg-gray-100'
635
667
  : '', "\n relative mb-1 flex items-center justify-between px-2 py-1.5 text-sm text-gray-900"), onClick: function () { return handleOpenModal(item.id); } },
636
668
  react_2["default"].createElement("p", { className: 'max-w-[95%] truncate' }, item.name),
637
- item.id === schoolId &&
638
- listSchool.length > 1 &&
639
- !enablePer(constants_1.switchSchool, perCode) === false && (react_2["default"].createElement(solid_2.CheckIcon, { "aria-hidden": 'true', className: 'h-4 w-4' }))))); }))) : (react_2["default"].createElement(Skeleton_1.PHXSkeleton, { className: 'flex-1 px-2 py-2', type: 'single' })),
669
+ item.id === dataInitMain.schoolId &&
670
+ dataInitMain.listSchool.length > 1 &&
671
+ !enablePer(constants_1.switchSchool, dataInitMain.perCode) === false && (react_2["default"].createElement(solid_2.CheckIcon, { "aria-hidden": 'true', className: 'h-4 w-4' }))))); }))) : (react_2["default"].createElement(Skeleton_1.PHXSkeleton, { className: 'flex-1 px-2 py-2', type: 'single' })),
640
672
  react_2["default"].createElement("div", { className: 'border-b pt-1.5' }),
641
673
  react_2["default"].createElement(react_1.Menu.Item, null,
642
674
  react_2["default"].createElement("div", { "aria-hidden": true, className: 'px-2 pb-2 pt-4 text-sm font-semibold text-gray-900' }, "T\u00F9y ch\u1ECDn")),
@@ -663,7 +695,7 @@ var PHXMainWrapV3 = function (_a) {
663
695
  react_2["default"].createElement("span", { className: 'sr-only' }, "Close sidebar"),
664
696
  react_2["default"].createElement(outline_1.XMarkIcon, { "aria-hidden": 'true', className: 'h-6 w-6 text-white' })))),
665
697
  react_2["default"].createElement("div", { className: 'mt-8 h-0 flex-1 overflow-y-auto pb-4 pt-5' },
666
- react_2["default"].createElement(nav_mobile_1["default"], { menu: menu, path: pathNameWithBasePath, permission: perCode, router: router, setSideBarOpen: function () { return setSidebarOpen(false); } })))),
698
+ react_2["default"].createElement(nav_mobile_1["default"], { menu: dataInitMain.menu, path: pathNameWithBasePath, permission: dataInitMain.perCode, router: router, setSideBarOpen: function () { return setSidebarOpen(false); } })))),
667
699
  react_2["default"].createElement("div", { "aria-hidden": 'true', className: 'w-14 flex-shrink-0' })))),
668
700
  react_2["default"].createElement("div", { className: 'hidden lg:flex lg:flex-shrink-0' },
669
701
  react_2["default"].createElement("div", { className: 'flex' },
@@ -671,7 +703,7 @@ var PHXMainWrapV3 = function (_a) {
671
703
  react_2["default"].createElement("div", { "aria-hidden": true, className: "".concat(openNavName ? 'w-64' : 'w-14', " menu-styled z-10 flex h-full flex-col justify-between border-r !bg-gray-200 transition-all duration-300 lg:fixed"), onMouseOut: function () { return setOpenNavName(false); }, onMouseOver: function () { return setOpenNavName(true); } },
672
704
  react_2["default"].createElement("div", { className: classNames('flex flex-1 flex-col', openNavName ? 'overflow-y-auto' : 'overflow-y-hidden') },
673
705
  react_2["default"].createElement("div", { className: 'relative flex-1' },
674
- react_2["default"].createElement("div", { "aria-label": 'Sidebar', className: 'hidden overflow-x-hidden md:block md:flex-shrink-0 md:overflow-y-auto' }, !hiddenLeftMenu && (react_2["default"].createElement("div", { className: "space-y- flex ".concat(openNavName ? 'w-64' : 'w-12', " flex-col overflow-hidden p-3") }, navigation.map(function (item, index) { return (react_2["default"].createElement("div", { key: index, className: 'w-full' }, enablePer(item.code, perCode) && (react_2["default"].createElement("a", { className: "".concat(classNames(item.current && !openNavName
706
+ react_2["default"].createElement("div", { "aria-label": 'Sidebar', className: 'hidden overflow-x-hidden md:block md:flex-shrink-0 md:overflow-y-auto' }, !hiddenLeftMenu && (react_2["default"].createElement("div", { className: "space-y- flex ".concat(openNavName ? 'w-64' : 'w-12', " flex-col overflow-hidden p-3") }, navigation.map(function (item, index) { return (react_2["default"].createElement("div", { key: index, className: 'w-full' }, enablePer(item.code, dataInitMain.perCode) && (react_2["default"].createElement("a", { className: "".concat(classNames(item.current && !openNavName
675
707
  ? 'menu-bg-color-icon-active-styled font-semibold' // màu background của icon đang active của menu
676
708
  : 'menu-icon-color-styled', // màu icon của menu
677
709
  !openNavName
@@ -693,7 +725,7 @@ var PHXMainWrapV3 = function (_a) {
693
725
  react_2["default"].createElement(image_1["default"], { alt: 'icon', className: classNames('h-[1.125rem] w-[1.125rem] text-gray-950', openNavName && 'mt-[0.2rem]'), height: 0, src: item.current ? Icon_1.Icons["".concat(item.code, "_SOLID")] : Icon_1.Icons[item.code], width: 0 })),
694
726
  openNavName && (react_2["default"].createElement("div", { className: 'h-6' },
695
727
  react_2["default"].createElement("p", { className: "mt-0.5 h-full text-[0.86rem] text-[#353A44] transition-all duration-300 ".concat(openNavName ? 'opacity-100' : 'opacity-0') }, item.name)))))))); })))))),
696
- react_2["default"].createElement("div", { className: classNames('border-t', navigation.length > 0 && ((_e = navigation[0]) === null || _e === void 0 ? void 0 : _e.isSchoolink) ? 'border-[#1c222b]' : 'border-indigo-100') },
728
+ react_2["default"].createElement("div", { className: classNames('border-t', navigation.length > 0 && ((_f = navigation[0]) === null || _f === void 0 ? void 0 : _f.isSchoolink) ? 'border-[#1c222b]' : 'border-indigo-100') },
697
729
  react_2["default"].createElement("div", { className: "mb-14 flex ".concat(openNavName ? 'w-64' : 'w-12', " overflow-hidden p-3") },
698
730
  react_2["default"].createElement("a", { className: classNames('z-0', !openNavName
699
731
  ? 'inline-flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-lg'
@@ -721,62 +753,78 @@ var PHXMainWrapV3 = function (_a) {
721
753
  react_2["default"].createElement("button", { className: 'mr-1 inline-flex items-center rounded-lg border-gray-300 bg-transparent px-2 py-1 text-xs font-medium text-gray-700 hover:bg-gray-200 active:bg-gray-300 active:pb-[0.2rem] active:pt-[0.3rem] active:shadow-[0rem_0.125rem_0.1rem_0rem_#0004_inset]', onClick: function () { return handleBackMenu(); }, type: 'button' },
722
754
  react_2["default"].createElement(solid_1.ArrowLeftIcon, { className: 'h-5 w-5' })),
723
755
  react_2["default"].createElement("p", { className: 'text-sm font-medium text-slate-600' }, campaignName))),
724
- react_2["default"].createElement("div", { className: 'flex-1 overflow-y-auto pt-3' }, subNavigation.map(function (item, subNavIndex) { return (react_2["default"].createElement("div", { key: subNavIndex }, (roleCode === null || roleCode === void 0 ? void 0 : roleCode.length) > 0 ? (react_2["default"].createElement(react_2["default"].Fragment, null, enablePer(item.code, perCode) ? (react_2["default"].createElement(react_2["default"].Fragment, null,
725
- react_2["default"].createElement("div", { "aria-current": (item === null || item === void 0 ? void 0 : item.current) ? 'page' : undefined, "aria-hidden": true, className: classNames((item === null || item === void 0 ? void 0 : item.current)
726
- ? 'rounded-lg bg-white' // màu background menu cha khi active
727
- : 'hover:rounded-lg hover:bg-white hover:bg-opacity-50', // màu background khi hover vào menu cha
728
- 'mx-3 flex cursor-pointer border-slate-200 p-2'), onClick: function () { return subNavigationTriggerClicked(item); } }, !loadingMenu ? (react_2["default"].createElement("div", { className: 'ml-1 flex items-center text-[0.84rem]' },
729
- react_2["default"].createElement("div", { className: 'flex items-center gap-x-3' },
730
- react_2["default"].createElement("p", { className: classNames('leading-5', (item === null || item === void 0 ? void 0 : item.current) ? '' : 'font-normal text-[#353A44]') }, item === null || item === void 0 ? void 0 : item.name)),
731
- react_2["default"].createElement("p", { className: 'mt-1 text-slate-500' }, item === null || item === void 0 ? void 0 : item.description))) : (react_2["default"].createElement(Skeleton_1.PHXSkeleton, { className: 'mr-3 flex-1', type: 'single' }))),
732
- item.showChild && item.child && (react_2["default"].createElement(react_2["default"].Fragment, null, item.child.map(function (children, childIndex) { return (react_2["default"].createElement("div", { key: childIndex, className: classNames('relative') },
733
- react_2["default"].createElement("div", { style: (children === null || children === void 0 ? void 0 : children.current)
734
- ? sub_menu_style_1.styles.childMenuActiveBefore
735
- : checkChildBefore(item.child, children)
736
- ? sub_menu_style_1.styles.childMenuBefBefore
737
- : {} }),
738
- react_2["default"].createElement("div", { "aria-hidden": true, className: classNames('mx-3 flex cursor-pointer border-slate-200 p-2 text-[0.84rem]', (children === null || children === void 0 ? void 0 : children.current)
739
- ? 'rounded-lg bg-white text-[#353A44]' // màu chữ menu con khi active
740
- : 'hover:rounded-lg hover:bg-white hover:bg-opacity-50 hover:text-[#353A44]'), onClick: enablePer(children.code, perCode)
741
- ? function () { return subNavigationTriggerClicked(children, item); }
742
- : undefined },
756
+ react_2["default"].createElement("div", { className: 'flex-1 overflow-y-auto pt-3' }, subNavigation.map(function (item, subNavIndex) {
757
+ var _a;
758
+ return (react_2["default"].createElement("div", { key: subNavIndex }, ((_a = dataInitMain.roleCode) === null || _a === void 0 ? void 0 : _a.length) > 0 ? (react_2["default"].createElement(react_2["default"].Fragment, null, enablePer(item.code, dataInitMain.perCode) ? (react_2["default"].createElement(react_2["default"].Fragment, null,
759
+ (item === null || item === void 0 ? void 0 : item.isMicroservice) ? (react_2["default"].createElement("a", { "aria-current": (item === null || item === void 0 ? void 0 : item.current) ? 'page' : undefined, "aria-hidden": true, className: classNames((item === null || item === void 0 ? void 0 : item.current)
760
+ ? 'rounded-lg bg-white' // màu background menu cha khi active
761
+ : 'hover:rounded-lg hover:bg-white hover:bg-opacity-50', // màu background khi hover vào menu cha
762
+ 'mx-3 flex cursor-pointer border-slate-200 p-2'), href: item.path }, !dataInitMain.loadingMenu ? (react_2["default"].createElement("div", { className: 'ml-1 flex items-center text-[0.84rem]' },
743
763
  react_2["default"].createElement("div", { className: 'flex items-center gap-x-3' },
744
- react_2["default"].createElement("div", { className: 'w-3' }),
745
- react_2["default"].createElement("p", { className: classNames('my-[0.05rem] ml-3 leading-5', !enablePer(children.code, perCode)
746
- ? 'font-normal text-gray-300'
747
- : (children === null || children === void 0 ? void 0 : children.current)
748
- ? ''
749
- : 'font-normal text-[#353A44]') }, children.name))),
750
- react_2["default"].createElement("div", { style: (children === null || children === void 0 ? void 0 : children.current)
751
- ? sub_menu_style_1.styles.childMenuActiveAfter
752
- : checkChildBefore(item.child, children)
753
- ? sub_menu_style_1.styles.childMenuBefAfter
754
- : {} }))); }))))) : (react_2["default"].createElement("div", { "aria-current": (item === null || item === void 0 ? void 0 : item.current) ? 'page' : undefined, className: classNames((item === null || item === void 0 ? void 0 : item.current)
755
- ? 'rounded-lg bg-white '
756
- : 'hover:rounded-lg hover:bg-white hover:bg-opacity-50', // hover:bg-white
757
- 'mx-3 flex cursor-pointer border-slate-200 p-2') }, !loadingMenu ? (react_2["default"].createElement("div", { className: 'ml-1 flex items-center text-[0.84rem]' },
758
- react_2["default"].createElement("div", { className: 'flex items-center gap-x-3 text-gray-700' },
759
- react_2["default"].createElement("p", { className: classNames('font-normal leading-5 text-gray-300') }, item === null || item === void 0 ? void 0 : item.name)),
760
- react_2["default"].createElement("p", { className: 'mt-1 text-slate-500' }, item === null || item === void 0 ? void 0 : item.description))) : (react_2["default"].createElement(Skeleton_1.PHXSkeleton, { className: 'mr-3 flex-1', type: 'single' })))))) : (react_2["default"].createElement(react_2["default"].Fragment, null,
761
- react_2["default"].createElement("div", { "aria-current": (item === null || item === void 0 ? void 0 : item.current) ? 'page' : undefined, "aria-hidden": true, className: classNames((item === null || item === void 0 ? void 0 : item.current)
762
- ? 'rounded-lg bg-white'
763
- : 'hover:rounded-lg hover:bg-white hover:bg-opacity-50', 'mx-1 flex cursor-pointer border-slate-200 p-2'), onClick: function () { return subNavigationTriggerClicked(item); } }, !loadingMenu ? (react_2["default"].createElement("div", { className: 'ml-3 flex items-center text-[0.84rem]' },
764
+ react_2["default"].createElement("p", { className: classNames('leading-5', (item === null || item === void 0 ? void 0 : item.current) ? '' : 'font-normal text-[#353A44]') }, item === null || item === void 0 ? void 0 : item.name)),
765
+ react_2["default"].createElement("p", { className: 'mt-1 text-slate-500' }, item === null || item === void 0 ? void 0 : item.description))) : (react_2["default"].createElement(Skeleton_1.PHXSkeleton, { className: 'mr-3 flex-1', type: 'single' })))) : (react_2["default"].createElement("div", { "aria-current": (item === null || item === void 0 ? void 0 : item.current) ? 'page' : undefined, "aria-hidden": true, className: classNames((item === null || item === void 0 ? void 0 : item.current)
766
+ ? 'rounded-lg bg-white' // màu background menu cha khi active
767
+ : 'hover:rounded-lg hover:bg-white hover:bg-opacity-50', // màu background khi hover vào menu cha
768
+ 'mx-3 flex cursor-pointer border-slate-200 p-2'), onClick: function () { return subNavigationTriggerClicked(item); } }, !dataInitMain.loadingMenu ? (react_2["default"].createElement("div", { className: 'ml-1 flex items-center text-[0.84rem]' },
769
+ react_2["default"].createElement("div", { className: 'flex items-center gap-x-3' },
770
+ react_2["default"].createElement("p", { className: classNames('leading-5', (item === null || item === void 0 ? void 0 : item.current) ? '' : 'font-normal text-[#353A44]') }, item === null || item === void 0 ? void 0 : item.name)),
771
+ react_2["default"].createElement("p", { className: 'mt-1 text-slate-500' }, item === null || item === void 0 ? void 0 : item.description))) : (react_2["default"].createElement(Skeleton_1.PHXSkeleton, { className: 'mr-3 flex-1', type: 'single' })))),
772
+ item.showChild && item.child && (react_2["default"].createElement(react_2["default"].Fragment, null, item.child.map(function (children, childIndex) { return (react_2["default"].createElement("div", { key: childIndex, className: classNames('relative') },
773
+ react_2["default"].createElement("div", { style: (children === null || children === void 0 ? void 0 : children.current)
774
+ ? sub_menu_style_1.styles.childMenuActiveBefore
775
+ : checkChildBefore(item.child, children)
776
+ ? sub_menu_style_1.styles.childMenuBefBefore
777
+ : {} }),
778
+ react_2["default"].createElement("div", { "aria-hidden": true, className: classNames('mx-3 flex cursor-pointer border-slate-200 p-2 text-[0.84rem]', (children === null || children === void 0 ? void 0 : children.current)
779
+ ? 'rounded-lg bg-white text-[#353A44]' // màu chữ menu con khi active
780
+ : 'hover:rounded-lg hover:bg-white hover:bg-opacity-50 hover:text-[#353A44]'), onClick: enablePer(children.code, dataInitMain.perCode)
781
+ ? function () { return subNavigationTriggerClicked(children, item); }
782
+ : undefined },
783
+ react_2["default"].createElement("div", { className: 'flex items-center gap-x-3' },
784
+ react_2["default"].createElement("div", { className: 'w-3' }),
785
+ react_2["default"].createElement("p", { className: classNames('my-[0.05rem] ml-3 leading-5', !enablePer(children.code, dataInitMain.perCode)
786
+ ? 'font-normal text-gray-300'
787
+ : (children === null || children === void 0 ? void 0 : children.current)
788
+ ? ''
789
+ : 'font-normal text-[#353A44]') }, children.name))),
790
+ react_2["default"].createElement("div", { style: (children === null || children === void 0 ? void 0 : children.current)
791
+ ? sub_menu_style_1.styles.childMenuActiveAfter
792
+ : checkChildBefore(item.child, children)
793
+ ? sub_menu_style_1.styles.childMenuBefAfter
794
+ : {} }))); }))))) : (react_2["default"].createElement("div", { "aria-current": (item === null || item === void 0 ? void 0 : item.current) ? 'page' : undefined, className: classNames((item === null || item === void 0 ? void 0 : item.current)
795
+ ? 'rounded-lg bg-white '
796
+ : 'hover:rounded-lg hover:bg-white hover:bg-opacity-50', // hover:bg-white
797
+ 'mx-3 flex cursor-pointer border-slate-200 p-2') }, !dataInitMain.loadingMenu ? (react_2["default"].createElement("div", { className: 'ml-1 flex items-center text-[0.84rem]' },
764
798
  react_2["default"].createElement("div", { className: 'flex items-center gap-x-3 text-gray-700' },
765
- react_2["default"].createElement("p", { className: classNames('font-normal leading-5 text-gray-600') }, item === null || item === void 0 ? void 0 : item.name)),
766
- react_2["default"].createElement("p", { className: 'mt-1 text-slate-500' }, item === null || item === void 0 ? void 0 : item.description))) : (react_2["default"].createElement(Skeleton_1.PHXSkeleton, { className: 'mr-3 flex-1', type: 'single' }))),
767
- item.showChild && item.child && (react_2["default"].createElement(react_2["default"].Fragment, null, item.child.map(function (children, index) { return (react_2["default"].createElement("div", { key: index, className: classNames('relative', (children === null || children === void 0 ? void 0 : children.current) && 'child-menu-active', checkChildBefore(item.child, children) && 'child-menu-bef') },
768
- react_2["default"].createElement("div", { "aria-hidden": true, className: classNames('mx-1 flex cursor-pointer border-slate-200 p-2 text-[0.84rem]', (children === null || children === void 0 ? void 0 : children.current)
769
- ? 'rounded-lg bg-white text-gray-900 '
770
- : 'hover:rounded-lg hover:bg-white hover:bg-opacity-50 hover:text-gray-900'), onClick: function () { return subNavigationTriggerClicked(children, item); } },
799
+ react_2["default"].createElement("p", { className: classNames('font-normal leading-5 text-gray-300') }, item === null || item === void 0 ? void 0 : item.name)),
800
+ react_2["default"].createElement("p", { className: 'mt-1 text-slate-500' }, item === null || item === void 0 ? void 0 : item.description))) : (react_2["default"].createElement(Skeleton_1.PHXSkeleton, { className: 'mr-3 flex-1', type: 'single' })))))) : (react_2["default"].createElement(react_2["default"].Fragment, null,
801
+ (item === null || item === void 0 ? void 0 : item.isMicroservice) ? (react_2["default"].createElement("a", { "aria-current": (item === null || item === void 0 ? void 0 : item.current) ? 'page' : undefined, "aria-hidden": true, className: classNames((item === null || item === void 0 ? void 0 : item.current)
802
+ ? 'rounded-lg bg-white' // màu background menu cha khi active
803
+ : 'hover:rounded-lg hover:bg-white hover:bg-opacity-50', // màu background khi hover vào menu cha
804
+ 'mx-3 flex cursor-pointer border-slate-200 p-2'), href: item.path }, !dataInitMain.loadingMenu ? (react_2["default"].createElement("div", { className: 'ml-1 flex items-center text-[0.84rem]' },
805
+ react_2["default"].createElement("div", { className: 'flex items-center gap-x-3' },
806
+ react_2["default"].createElement("p", { className: classNames('leading-5', (item === null || item === void 0 ? void 0 : item.current) ? '' : 'font-normal text-[#353A44]') }, item === null || item === void 0 ? void 0 : item.name)),
807
+ react_2["default"].createElement("p", { className: 'mt-1 text-slate-500' }, item === null || item === void 0 ? void 0 : item.description))) : (react_2["default"].createElement(Skeleton_1.PHXSkeleton, { className: 'mr-3 flex-1', type: 'single' })))) : (react_2["default"].createElement("div", { "aria-current": (item === null || item === void 0 ? void 0 : item.current) ? 'page' : undefined, "aria-hidden": true, className: classNames((item === null || item === void 0 ? void 0 : item.current)
808
+ ? 'rounded-lg bg-white' // màu background menu cha khi active
809
+ : 'hover:rounded-lg hover:bg-white hover:bg-opacity-50', // màu background khi hover vào menu cha
810
+ 'mx-3 flex cursor-pointer border-slate-200 p-2'), onClick: function () { return subNavigationTriggerClicked(item); } }, !dataInitMain.loadingMenu ? (react_2["default"].createElement("div", { className: 'ml-1 flex items-center text-[0.84rem]' },
771
811
  react_2["default"].createElement("div", { className: 'flex items-center gap-x-3' },
772
- react_2["default"].createElement("div", { className: 'w-3' }),
773
- react_2["default"].createElement("p", { className: classNames('my-[0.05rem] ml-3 leading-5', (children === null || children === void 0 ? void 0 : children.current) ? 'font-semibold' : 'font-normal text-gray-600') }, children.name))))); }))))))); }))))))))),
812
+ react_2["default"].createElement("p", { className: classNames('leading-5', (item === null || item === void 0 ? void 0 : item.current) ? '' : 'font-normal text-[#353A44]') }, item === null || item === void 0 ? void 0 : item.name)),
813
+ react_2["default"].createElement("p", { className: 'mt-1 text-slate-500' }, item === null || item === void 0 ? void 0 : item.description))) : (react_2["default"].createElement(Skeleton_1.PHXSkeleton, { className: 'mr-3 flex-1', type: 'single' })))),
814
+ item.showChild && item.child && (react_2["default"].createElement(react_2["default"].Fragment, null, item.child.map(function (children, index) { return (react_2["default"].createElement("div", { key: index, className: classNames('relative', (children === null || children === void 0 ? void 0 : children.current) && 'child-menu-active', checkChildBefore(item.child, children) && 'child-menu-bef') },
815
+ react_2["default"].createElement("div", { "aria-hidden": true, className: classNames('mx-1 flex cursor-pointer border-slate-200 p-2 text-[0.84rem]', (children === null || children === void 0 ? void 0 : children.current)
816
+ ? 'rounded-lg bg-white text-gray-900 '
817
+ : 'hover:rounded-lg hover:bg-white hover:bg-opacity-50 hover:text-gray-900'), onClick: function () { return subNavigationTriggerClicked(children, item); } },
818
+ react_2["default"].createElement("div", { className: 'flex items-center gap-x-3' },
819
+ react_2["default"].createElement("div", { className: 'w-3' }),
820
+ react_2["default"].createElement("p", { className: classNames('my-[0.05rem] ml-3 leading-5', (children === null || children === void 0 ? void 0 : children.current) ? 'font-semibold' : 'font-normal text-gray-600') }, children.name))))); })))))));
821
+ }))))))))),
774
822
  react_2["default"].createElement("div", { className: 'flex min-w-0 flex-1 flex-col overflow-hidden' },
775
823
  react_2["default"].createElement("main", { className: 'flex flex-1 overflow-hidden' },
776
824
  react_2["default"].createElement("section", { "aria-labelledby": 'primary-heading', className: 'flex h-full min-w-0 flex-1 flex-col lg:order-last' },
777
825
  react_2["default"].createElement("div", { className: 'sticky top-0 z-10 flex h-14 flex-shrink-0 border-b border-l bg-bgcl-50 px-4 sm:px-6 lg:px-4' }),
778
826
  react_2["default"].createElement("div", { className: "".concat(openSubMenu ? 'lg:ml-[20.063rem]' : 'lg:ml-[5.063rem]', " bg-gray-100 px-6") },
779
- react_2["default"].createElement("div", { className: 'py-4' }, isLoadingPermission ? ('') : enablePer(currentCode, perCode) ? (children) : (react_2["default"].createElement(Card_1.PHXCard, null,
827
+ react_2["default"].createElement("div", { className: 'py-4' }, dataInitMain.isLoadingPermission ? ('') : enablePer(currentCode, dataInitMain.perCode) ? (children) : (react_2["default"].createElement(Card_1.PHXCard, null,
780
828
  react_2["default"].createElement("div", { className: 'mb-10 mt-10 sm:mb-20 sm:mt-20 lg:mb-32 lg:mt-32' },
781
829
  react_2["default"].createElement("div", { className: 'flex items-center justify-center' },
782
830
  react_2["default"].createElement(outline_1.LockClosedIcon, { className: 'text-gray-400', height: 70, width: 70 })),