awing-library 2.1.2-beta → 2.1.3

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 (151) hide show
  1. package/README.md +14 -45
  2. package/lib/ACM-AXN/Campaign/Container.js +5 -6
  3. package/lib/ACM-AXN/Campaign/Container.test.js +1 -1
  4. package/lib/ACM-AXN/Campaign/CreateOrEdit/Recoils.d.ts +3 -1
  5. package/lib/ACM-AXN/Campaign/CreateOrEdit/Recoils.js +22 -21
  6. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabInfomation.d.ts +1 -1
  7. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabInfomation.js +79 -24
  8. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AdDetail.test.js +1 -1
  9. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AdList.js +50 -6
  10. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AdRow.d.ts +5 -0
  11. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AdRow.js +6 -18
  12. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AddOrEditRule/AddOrEditRule.js +7 -12
  13. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AddOrEditRule/RuleForm/RetargetMacAddress/container.d.ts +1 -0
  14. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AddOrEditRule/RuleForm/RetargetMacAddress/container.js +4 -12
  15. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/Advanced.js +16 -1
  16. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/SubCampaignList.test.js +1 -1
  17. package/lib/ACM-AXN/Campaign/CreateOrEdit/index.js +19 -3
  18. package/lib/ACM-AXN/Campaign/Types.d.ts +10 -0
  19. package/lib/ACM-AXN/Campaign/Utils.d.ts +8 -0
  20. package/lib/ACM-AXN/Campaign/Utils.js +22 -18
  21. package/lib/ACM-AXN/Campaign/index.js +1 -1
  22. package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/Filter.d.ts +2 -2
  23. package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/Filter.js +44 -42
  24. package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/GroupPanel.d.ts +1 -1
  25. package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/GroupPanel.js +38 -30
  26. package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/index.d.ts +2 -2
  27. package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/index.js +2 -2
  28. package/lib/ACM-AXN/CampaignSchedule/Components/EnhancedPagination/index.d.ts +1 -1
  29. package/lib/ACM-AXN/CampaignSchedule/Components/EnhancedPagination/index.js +4 -2
  30. package/lib/ACM-AXN/CampaignSchedule/Components/RowAdvance/component.js +33 -3
  31. package/lib/ACM-AXN/CampaignSchedule/Components/RowAdvance/container.d.ts +1 -1
  32. package/lib/ACM-AXN/CampaignSchedule/Components/RowAdvance/container.js +80 -35
  33. package/lib/ACM-AXN/CampaignSchedule/Components/TableHeaderDragable.d.ts +1 -1
  34. package/lib/ACM-AXN/CampaignSchedule/Components/TableHeaderDragable.js +38 -20
  35. package/lib/ACM-AXN/CampaignSchedule/DataConfigAXN.d.ts +4 -0
  36. package/lib/ACM-AXN/CampaignSchedule/DataConfigAXN.js +58 -0
  37. package/lib/ACM-AXN/CampaignSchedule/Enum.d.ts +14 -2
  38. package/lib/ACM-AXN/CampaignSchedule/Enum.js +12 -0
  39. package/lib/ACM-AXN/CampaignSchedule/component.js +6 -5
  40. package/lib/ACM-AXN/CampaignSchedule/container.d.ts +1 -1
  41. package/lib/ACM-AXN/CampaignSchedule/container.js +100 -99
  42. package/lib/ACM-AXN/CampaignSchedule/interface.d.ts +16 -3
  43. package/lib/ACM-AXN/Directory/Constant.d.ts +2 -0
  44. package/lib/ACM-AXN/Directory/Constant.js +2 -0
  45. package/lib/ACM-AXN/Directory/MenuDirectory/MenuDirectory.test.d.ts +1 -0
  46. package/lib/ACM-AXN/Directory/MenuDirectory/MenuDirectory.test.js +90 -0
  47. package/lib/ACM-AXN/Directory/MenuDirectory/index.d.ts +1 -0
  48. package/lib/ACM-AXN/Directory/MenuDirectory/index.js +109 -0
  49. package/lib/ACM-AXN/Directory/SystemDirectory/index.js +6 -5
  50. package/lib/ACM-AXN/Directory/components/Permission/AddAuthen.d.ts +4 -0
  51. package/lib/ACM-AXN/Directory/components/Permission/AddAuthen.js +9 -7
  52. package/lib/ACM-AXN/Directory/components/Permission/CreateOrEditPermission.js +8 -6
  53. package/lib/ACM-AXN/Directory/components/Permission/Management.js +19 -14
  54. package/lib/ACM-AXN/Directory/components/Permission/MenuPermissions/MenuPermissionManagement.d.ts +1 -0
  55. package/lib/ACM-AXN/Directory/components/Permission/MenuPermissions/MenuPermissionManagement.js +185 -0
  56. package/lib/ACM-AXN/Directory/components/Permission/MenuPermissions/MenuPermissionManagement.test.d.ts +1 -0
  57. package/lib/ACM-AXN/Directory/components/Permission/MenuPermissions/MenuPermissionManagement.test.js +86 -0
  58. package/lib/ACM-AXN/Directory/function.d.ts +2 -0
  59. package/lib/ACM-AXN/Directory/function.js +39 -1
  60. package/lib/ACM-AXN/DomainPreview/PreviewButton.d.ts +15 -0
  61. package/lib/ACM-AXN/DomainPreview/PreviewButton.js +165 -0
  62. package/lib/ACM-AXN/DomainPreview/index.d.ts +7 -0
  63. package/lib/ACM-AXN/DomainPreview/index.js +10 -0
  64. package/lib/ACM-AXN/GroupUser/Constants.d.ts +7 -0
  65. package/lib/ACM-AXN/GroupUser/Constants.js +10 -0
  66. package/lib/ACM-AXN/GroupUser/Container.d.ts +2 -0
  67. package/lib/ACM-AXN/GroupUser/Container.js +55 -0
  68. package/lib/ACM-AXN/GroupUser/Container.test.d.ts +1 -0
  69. package/lib/ACM-AXN/GroupUser/Container.test.js +210 -0
  70. package/lib/ACM-AXN/GroupUser/CreateOrEdit.d.ts +3 -0
  71. package/lib/ACM-AXN/GroupUser/CreateOrEdit.js +84 -0
  72. package/lib/ACM-AXN/GroupUser/CreateOrEdit.test.d.ts +1 -0
  73. package/lib/ACM-AXN/GroupUser/CreateOrEdit.test.js +235 -0
  74. package/lib/ACM-AXN/GroupUser/Hooks.d.ts +5 -0
  75. package/lib/ACM-AXN/GroupUser/Hooks.js +13 -0
  76. package/lib/ACM-AXN/GroupUser/Types.d.ts +31 -0
  77. package/lib/ACM-AXN/GroupUser/Types.js +2 -0
  78. package/lib/ACM-AXN/GroupUser/User/SearchUser.d.ts +9 -0
  79. package/lib/ACM-AXN/GroupUser/User/SearchUser.js +63 -0
  80. package/lib/ACM-AXN/GroupUser/User/SearchUser.test.d.ts +1 -0
  81. package/lib/ACM-AXN/GroupUser/User/SearchUser.test.js +140 -0
  82. package/lib/ACM-AXN/GroupUser/User/UserComponent.d.ts +8 -0
  83. package/lib/ACM-AXN/GroupUser/User/UserComponent.js +77 -0
  84. package/lib/ACM-AXN/GroupUser/User/UserComponent.test.d.ts +1 -0
  85. package/lib/ACM-AXN/GroupUser/User/UserComponent.test.js +128 -0
  86. package/lib/ACM-AXN/GroupUser/index.d.ts +4 -0
  87. package/lib/ACM-AXN/GroupUser/index.js +27 -0
  88. package/lib/ACM-AXN/Page/Container.js +99 -61
  89. package/lib/ACM-AXN/Page/CreateOrEdit/DrawerAction.js +22 -5
  90. package/lib/ACM-AXN/Page/CreateOrEdit/Recoil.d.ts +1 -0
  91. package/lib/ACM-AXN/Page/CreateOrEdit/Recoil.js +5 -1
  92. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewContent.js +1 -1
  93. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewInfo.js +10 -4
  94. package/lib/ACM-AXN/Page/CreateOrEdit/Utils.d.ts +1 -1
  95. package/lib/ACM-AXN/Page/CreateOrEdit/Utils.js +1 -1
  96. package/lib/ACM-AXN/Page/Types.d.ts +8 -0
  97. package/lib/ACM-AXN/Page/ViewDomain/index.d.ts +9 -0
  98. package/lib/ACM-AXN/Page/ViewDomain/index.js +148 -0
  99. package/lib/ACM-AXN/Permission/Components/Management.test.js +1 -1
  100. package/lib/ACM-AXN/Statistics/ControlPanel.js +142 -85
  101. package/lib/ACM-AXN/Statistics/Enums.d.ts +1 -0
  102. package/lib/ACM-AXN/Statistics/Enums.js +1 -0
  103. package/lib/ACM-AXN/Statistics/container.js +1 -1
  104. package/lib/ACM-AXN/StatisticsAudienceDemographic/container.d.ts +1 -1
  105. package/lib/ACM-AXN/StatisticsAudienceDemographic/container.js +2 -3
  106. package/lib/ACM-AXN/StatisticsAudienceDemographic/interfaces.d.ts +1 -0
  107. package/lib/ACM-AXN/TransactionLog/Constant.d.ts +10 -0
  108. package/lib/ACM-AXN/TransactionLog/Constant.js +13 -0
  109. package/lib/ACM-AXN/TransactionLog/Container.d.ts +7 -0
  110. package/lib/ACM-AXN/TransactionLog/Container.js +189 -0
  111. package/lib/ACM-AXN/TransactionLog/Context.d.ts +8 -0
  112. package/lib/ACM-AXN/TransactionLog/Context.js +10 -0
  113. package/lib/ACM-AXN/TransactionLog/Detail.d.ts +7 -0
  114. package/lib/ACM-AXN/TransactionLog/Detail.js +204 -0
  115. package/lib/ACM-AXN/TransactionLog/Hooks.d.ts +7 -0
  116. package/lib/ACM-AXN/TransactionLog/Hooks.js +17 -0
  117. package/lib/ACM-AXN/TransactionLog/Types.d.ts +273 -0
  118. package/lib/ACM-AXN/TransactionLog/Types.js +413 -0
  119. package/lib/ACM-AXN/TransactionLog/Utils.d.ts +128 -0
  120. package/lib/ACM-AXN/TransactionLog/Utils.js +166 -0
  121. package/lib/ACM-AXN/TransactionLog/index.d.ts +8 -0
  122. package/lib/ACM-AXN/TransactionLog/index.js +36 -0
  123. package/lib/ACM-AXN/User/Add.d.ts +2 -0
  124. package/lib/ACM-AXN/User/Add.js +64 -0
  125. package/lib/ACM-AXN/User/Add.test.d.ts +1 -0
  126. package/lib/ACM-AXN/User/Add.test.js +115 -0
  127. package/lib/ACM-AXN/User/Constants.d.ts +2 -0
  128. package/lib/ACM-AXN/User/Constants.js +5 -0
  129. package/lib/ACM-AXN/User/Container.d.ts +2 -0
  130. package/lib/ACM-AXN/User/Container.js +60 -0
  131. package/lib/ACM-AXN/User/Container.test.d.ts +1 -0
  132. package/lib/ACM-AXN/User/Container.test.js +202 -0
  133. package/lib/ACM-AXN/User/Hook.d.ts +5 -0
  134. package/lib/ACM-AXN/User/Hook.js +13 -0
  135. package/lib/ACM-AXN/User/Types.d.ts +45 -0
  136. package/lib/ACM-AXN/User/Types.js +2 -0
  137. package/lib/ACM-AXN/User/index.d.ts +4 -0
  138. package/lib/ACM-AXN/User/index.js +18 -0
  139. package/lib/AWING/AdvancedSearch/component.js +1 -1
  140. package/lib/AWING/AdvancedSearch/interface.d.ts +1 -0
  141. package/lib/AWING/ButtonDateRangePicker/ButtonDateRangePicker.js +2 -2
  142. package/lib/AWING/ButtonDateRangePicker/interface.d.ts +1 -0
  143. package/lib/AWING/DataForm/DataInput.js +17 -8
  144. package/lib/AWING/DataForm/interface.d.ts +6 -2
  145. package/lib/AWING/DataGrid/index.js +4 -1
  146. package/lib/AWING/DataGrid/interface.d.ts +6 -1
  147. package/lib/AWING/ultis/validation.d.ts +1 -1
  148. package/lib/AWING/ultis/validation.js +3 -3
  149. package/lib/translate/en/translation.json +28 -1
  150. package/lib/translate/vi/translation.json +28 -1
  151. package/package.json +5 -3
@@ -62,40 +62,39 @@ Object.defineProperty(exports, "__esModule", { value: true });
62
62
  var jsx_runtime_1 = require("react/jsx-runtime");
63
63
  var material_1 = require("@mui/material");
64
64
  var lodash_1 = __importDefault(require("lodash"));
65
- var moment_1 = __importDefault(require("moment"));
66
65
  var react_1 = require("react");
66
+ var react_helmet_async_1 = require("react-helmet-async");
67
67
  var react_i18next_1 = require("react-i18next");
68
68
  var CircularProgress_1 = require("../../AWING/CircularProgress");
69
69
  var ContentHeader_1 = __importDefault(require("./Components/ContentHeader"));
70
70
  var ControlPanel_1 = __importDefault(require("./Components/ControlPanel"));
71
71
  var DataConfig_1 = require("./DataConfig");
72
+ var DataConfigAXN_1 = require("./DataConfigAXN");
72
73
  var Enum_1 = require("./Enum");
73
74
  var component_1 = __importDefault(require("./component"));
74
- var exportFile_1 = require("./exportFile");
75
- var react_helmet_async_1 = require("react-helmet-async");
76
75
  var CampaignScheduleContainer = function (_a) {
77
76
  var _b;
78
- var initialFilters = _a.initialFilters, initialHeadCells = _a.initialHeadCells, placeMultiSelectComponent = _a.placeMultiSelectComponent, serviceCampaignSchedule = _a.serviceCampaignSchedule;
77
+ var initialFilters = _a.initialFilters, initialHeadCells = _a.initialHeadCells, placeMultiSelectComponent = _a.placeMultiSelectComponent, serviceCampaignSchedule = _a.serviceCampaignSchedule, _c = _a.typeSystemAXN, typeSystemAXN = _c === void 0 ? false : _c, title = _a.title, disabledCampaignFilter = _a.disabledCampaignFilter;
79
78
  var t = (0, react_i18next_1.useTranslation)().t;
80
- var _c = (0, react_1.useState)(null), dragPlace = _c[0], setDragPlace = _c[1];
81
- var _d = (0, react_1.useState)(initialFilters), filters = _d[0], setFilters = _d[1];
79
+ var _d = (0, react_1.useState)(null), dragPlace = _d[0], setDragPlace = _d[1];
80
+ var _e = (0, react_1.useState)(initialFilters), filters = _e[0], setFilters = _e[1];
82
81
  var pagingGroupBy = serviceCampaignSchedule.pagingGroupBy, paging = serviceCampaignSchedule.paging, exportExcel = serviceCampaignSchedule.exportExcel, placesPermission = serviceCampaignSchedule.placesPermission, campaignPlan = serviceCampaignSchedule.campaignPlan, domains = serviceCampaignSchedule.domains;
83
- var _e = (0, react_1.useState)({
82
+ var _f = (0, react_1.useState)({
84
83
  campaigns: {},
85
84
  places: {},
86
85
  domains: {},
87
- }), options = _e[0], setOptions = _e[1];
88
- var _f = (0, react_1.useState)(initialHeadCells), headCells = _f[0], setHeadCells = _f[1];
89
- var _g = (0, react_1.useState)(), scheduleGroups = _g[0], setScheduleGroups = _g[1];
90
- var _h = (0, react_1.useState)(Enum_1.initialPage), page = _h[0], setPage = _h[1];
91
- var _j = (0, react_1.useState)({
86
+ }), options = _f[0], setOptions = _f[1];
87
+ var _g = (0, react_1.useState)(initialHeadCells), headCells = _g[0], setHeadCells = _g[1];
88
+ var _h = (0, react_1.useState)(), scheduleGroups = _h[0], setScheduleGroups = _h[1];
89
+ var _j = (0, react_1.useState)(Enum_1.initialPage), page = _j[0], setPage = _j[1];
90
+ var _k = (0, react_1.useState)({
92
91
  campaigns: false,
93
92
  places: false,
94
93
  export: false,
95
94
  pages: false,
96
- }), loadingFlags = _j[0], setLoadingFlags = _j[1];
97
- var _k = (0, react_1.useState)(initialHeadCells), panels = _k[0], setPanels = _k[1];
98
- var _l = (0, react_1.useState)(false), view = _l[0], setView = _l[1];
95
+ }), loadingFlags = _k[0], setLoadingFlags = _k[1];
96
+ var _l = (0, react_1.useState)(initialHeadCells), panels = _l[0], setPanels = _l[1];
97
+ var _m = (0, react_1.useState)(false), view = _m[0], setView = _m[1];
99
98
  var handleLoading = function (typeLoading, value) {
100
99
  setLoadingFlags(function (prevLoadingFlags) {
101
100
  var _a;
@@ -122,103 +121,105 @@ var CampaignScheduleContainer = function (_a) {
122
121
  };
123
122
  (0, react_1.useEffect)(function () {
124
123
  var getScheduleGroupsData = function () { return __awaiter(void 0, void 0, void 0, function () {
125
- var groupNames, startDate, endDate, campaignId, placeIds, groupBy, pageIndex, pageSize;
124
+ var groupNames, groupBy, pageIndex, pageSize, params, error_1, error_2;
126
125
  var _a;
127
126
  return __generator(this, function (_b) {
128
- groupNames = (_a = headCells === null || headCells === void 0 ? void 0 : headCells.filter(function (item) { return item.grouping; })) === null || _a === void 0 ? void 0 : _a.map(function (item) { return item.name; });
129
- startDate = filters.startDate, endDate = filters.endDate, campaignId = filters.campaignId, placeIds = filters.placeIds;
130
- groupBy = (groupNames === null || groupNames === void 0 ? void 0 : groupNames.length) === 0 ? null : groupNames[0];
131
- pageIndex = page.pageIndex;
132
- pageSize = page.pageSize;
133
- if (groupBy) {
134
- handleLoading('pages', true);
135
- pagingGroupBy((0, moment_1.default)(startDate).startOf('day').format('YYYY-MM-DD'), (0, moment_1.default)(endDate).endOf('day').format('YYYY-MM-DD'), campaignId, groupBy, pageIndex, pageSize, placeIds)
136
- .then(setScheduleGroups)
137
- .catch(function (error) {
138
- console.log(error);
139
- // snackbar("error");
140
- })
141
- .finally(function () {
142
- handleLoading('pages', false);
143
- });
144
- }
145
- else {
146
- handleLoading('pages', true);
147
- paging((0, moment_1.default)(startDate).startOf('day').format('YYYY-MM-DD'), (0, moment_1.default)(endDate).endOf('day').format('YYYY-MM-DD'), campaignId, pageIndex, pageSize, placeIds)
148
- .then(setScheduleGroups)
149
- .catch(function (error) {
150
- console.log(error);
151
- // snackbar("error");
152
- })
153
- .finally(function () {
154
- handleLoading('pages', false);
155
- });
127
+ switch (_b.label) {
128
+ case 0:
129
+ groupNames = (_a = headCells === null || headCells === void 0 ? void 0 : headCells.filter(function (item) { return item.grouping; })) === null || _a === void 0 ? void 0 : _a.map(function (item) {
130
+ switch (item.name) {
131
+ case 'placeCampaign':
132
+ return 'placeId';
133
+ case 'domainCampaign':
134
+ return 'domainId';
135
+ case 'campaignCampaign':
136
+ return 'campaignId';
137
+ default:
138
+ return item.name;
139
+ }
140
+ });
141
+ groupBy = (groupNames === null || groupNames === void 0 ? void 0 : groupNames.length) === 0 ? null : groupNames[0];
142
+ pageIndex = page.pageIndex;
143
+ pageSize = page.pageSize;
144
+ params = __assign(__assign({}, filters), { groupBy: groupBy, pageIndex: pageIndex, pageSize: pageSize });
145
+ if (!groupBy) return [3 /*break*/, 5];
146
+ _b.label = 1;
147
+ case 1:
148
+ _b.trys.push([1, 3, , 4]);
149
+ return [4 /*yield*/, pagingGroupBy(params, setScheduleGroups, handleLoading)];
150
+ case 2:
151
+ _b.sent();
152
+ return [3 /*break*/, 4];
153
+ case 3:
154
+ error_1 = _b.sent();
155
+ console.log(error_1);
156
+ return [3 /*break*/, 4];
157
+ case 4: return [3 /*break*/, 8];
158
+ case 5:
159
+ _b.trys.push([5, 7, , 8]);
160
+ return [4 /*yield*/, paging(params, setScheduleGroups, handleLoading)];
161
+ case 6:
162
+ _b.sent();
163
+ return [3 /*break*/, 8];
164
+ case 7:
165
+ error_2 = _b.sent();
166
+ console.log(error_2);
167
+ return [3 /*break*/, 8];
168
+ case 8: return [2 /*return*/];
156
169
  }
157
- return [2 /*return*/];
158
170
  });
159
171
  }); };
160
172
  getScheduleGroupsData();
161
173
  }, [page.pageSize, page.pageIndex, view, filters.campaignId]);
162
174
  var handleExportExcel = function () {
163
- handleLoading('export', true);
164
- var startDate = filters.startDate, endDate = filters.endDate, campaignId = filters.campaignId, placeIds = filters.placeIds;
165
- var excelName = "AWING_REPORT_TRAFFIC_DISTRIBUTION_".concat(startDate.format('DD-MM-YYYY'), "_TO_").concat(endDate.format('DD-MM-YYYY'));
166
- exportExcel((0, moment_1.default)(startDate).startOf('day').format('YYYY-MM-DD'), (0, moment_1.default)(endDate).endOf('day').format('YYYY-MM-DD'), campaignId, placeIds)
167
- .then(function (res) {
168
- var _a = (0, DataConfig_1.DataSetConfigs)(res, options.campaigns, options.places, t), results = _a.results, mergeConfigs = _a.mergeConfigs;
169
- (0, exportFile_1.downloadWithDataSet)(excelName, results, mergeConfigs);
170
- })
171
- .catch(function (err) {
172
- // snackbar("error");
173
- })
174
- .finally(function () {
175
- handleLoading('export', false);
176
- });
175
+ var params = __assign(__assign({}, filters), { options: options });
176
+ exportExcel(params, typeSystemAXN ? DataConfigAXN_1.DataSetConfigsAXN : DataConfig_1.DataSetConfigs, t);
177
177
  };
178
178
  var getAllPlaces = function () {
179
- handleLoading('places', true);
180
- placesPermission()
181
- .then(function (res) {
182
- setOptions(function (prevState) { return (__assign(__assign({}, prevState), { places: lodash_1.default.keyBy(res, 'placeId') })); });
183
- })
184
- .catch(function (error) {
185
- console.log(error);
186
- // snackbar("error");
187
- })
188
- .finally(function () {
189
- handleLoading('places', false);
190
- });
179
+ if (placesPermission) {
180
+ handleLoading('places', true);
181
+ placesPermission()
182
+ .then(function (res) {
183
+ setOptions(function (prevState) { return (__assign(__assign({}, prevState), { places: lodash_1.default.keyBy(res, 'placeId') })); });
184
+ })
185
+ .catch(function (error) {
186
+ console.log(error);
187
+ // snackbar("error");
188
+ })
189
+ .finally(function () {
190
+ handleLoading('places', false);
191
+ });
192
+ }
191
193
  };
192
194
  var getAllDomains = function () {
193
- handleLoading('domains', true);
194
- domains()
195
- .then(function (res) {
196
- setOptions(function (prevState) { return (__assign(__assign({}, prevState), { domains: lodash_1.default.keyBy(res, 'domainId') })); });
197
- })
198
- .catch(function (error) {
199
- console.log(error);
200
- // snackbar("error");
201
- })
202
- .finally(function () {
203
- handleLoading('domains', false);
204
- });
195
+ if (domains) {
196
+ handleLoading('domains', true);
197
+ domains()
198
+ .then(function (res) {
199
+ setOptions(function (prevState) { return (__assign(__assign({}, prevState), { domains: lodash_1.default.keyBy(res, 'domainId') })); });
200
+ })
201
+ .catch(function (error) {
202
+ console.log(error);
203
+ // snackbar("error");
204
+ })
205
+ .finally(function () {
206
+ handleLoading('domains', false);
207
+ });
208
+ }
205
209
  };
206
- var fetchCampaignCurrentRun = function () {
207
- var startDate = filters.startDate, endDate = filters.endDate;
208
- handleLoading('campaigns', true);
209
- campaignPlan((0, moment_1.default)(startDate).startOf('day').format('YYYY-MM-DD'), (0, moment_1.default)(endDate).endOf('day').format('YYYY-MM-DD'))
210
- .then(function (res) {
211
- var listCampaign = res === null || res === void 0 ? void 0 : res.map(function (item) { return (__assign(__assign({}, item.campaign), { isNetwork: item.isNetworkCampaign })); });
212
- setOptions(function (prevState) { return (__assign(__assign({}, prevState), { campaigns: lodash_1.default.keyBy(listCampaign, 'id') })); });
213
- })
214
- .catch(function (err) {
215
- console.log(err);
216
- // snackbar("error");
217
- })
218
- .finally(function () {
219
- handleLoading('campaigns', false);
210
+ var fetchCampaignCurrentRun = function () { return __awaiter(void 0, void 0, void 0, function () {
211
+ return __generator(this, function (_a) {
212
+ switch (_a.label) {
213
+ case 0:
214
+ if (!campaignPlan) return [3 /*break*/, 2];
215
+ return [4 /*yield*/, campaignPlan(filters, setOptions)];
216
+ case 1:
217
+ _a.sent();
218
+ _a.label = 2;
219
+ case 2: return [2 /*return*/];
220
+ }
220
221
  });
221
- };
222
+ }); };
222
223
  (0, react_1.useEffect)(function () {
223
224
  getAllPlaces();
224
225
  fetchCampaignCurrentRun();
@@ -315,7 +316,7 @@ var CampaignScheduleContainer = function (_a) {
315
316
  ], false), panels.slice(indexMatch + 1), true));
316
317
  setPanels(newPanels);
317
318
  }
318
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(react_helmet_async_1.HelmetProvider, { children: (0, jsx_runtime_1.jsx)(react_helmet_async_1.Helmet, { children: (0, jsx_runtime_1.jsx)("title", { children: t('Schedule.TrafficDistribution') }) }) }), (0, jsx_runtime_1.jsx)(ContentHeader_1.default, { title: t('Schedule.TrafficDistribution') }), (0, jsx_runtime_1.jsxs)(material_1.Paper, { children: [(0, jsx_runtime_1.jsx)(ControlPanel_1.default, { campaigns: (_b = options === null || options === void 0 ? void 0 : options.campaigns) !== null && _b !== void 0 ? _b : {}, panels: panels, unGroupField: unGroupField, onDragStart: onDragStart, onDragOver: onDragOver, onDrop: onDrop, handleView: handleView, handleExportExcel: handleExportExcel, handleFilters: handleFilters, loadingFlags: loadingFlags, placeMultiSelectComponent: placeMultiSelectComponent }), loadingFlags.pages ||
319
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(react_helmet_async_1.HelmetProvider, { children: (0, jsx_runtime_1.jsx)(react_helmet_async_1.Helmet, { children: (0, jsx_runtime_1.jsx)("title", { children: title }) }) }), (0, jsx_runtime_1.jsx)(ContentHeader_1.default, { title: title }), (0, jsx_runtime_1.jsxs)(material_1.Paper, { children: [(0, jsx_runtime_1.jsx)(ControlPanel_1.default, { campaigns: (_b = options === null || options === void 0 ? void 0 : options.campaigns) !== null && _b !== void 0 ? _b : {}, panels: panels, unGroupField: unGroupField, onDragStart: onDragStart, onDragOver: onDragOver, onDrop: onDrop, handleView: handleView, handleExportExcel: handleExportExcel, handleFilters: handleFilters, loadingFlags: loadingFlags, placeMultiSelectComponent: placeMultiSelectComponent, disabledCampaignFilter: disabledCampaignFilter }), loadingFlags.pages ||
319
320
  loadingFlags.campaigns ||
320
321
  loadingFlags.places ? ((0, jsx_runtime_1.jsx)("div", { style: { width: '100%' }, children: (0, jsx_runtime_1.jsx)(CircularProgress_1.CircularProgress, {}) })) : ((0, jsx_runtime_1.jsx)(component_1.default, { headCells: headCells, onDragOver: onDragOver, onDragStart: onDragStart, onDrop: onDrop, scheduleGroups: scheduleGroups, page: page, handleChangePage: handleChangePage, handleChangeRowsPerPage: handleChangeRowsPerPage, options: options, filters: filters, serviceCampaignSchedule: serviceCampaignSchedule }))] })] }));
321
322
  };
@@ -1,10 +1,20 @@
1
1
  /// <reference types="react" />
2
- import moment from "moment";
2
+ import moment from 'moment';
3
3
  export interface ICampaignScheduleContainerProps {
4
4
  initialFilters: any;
5
5
  initialHeadCells: IHeadCells[];
6
6
  placeMultiSelectComponent: (p?: any) => JSX.Element;
7
- serviceCampaignSchedule: any;
7
+ serviceCampaignSchedule: {
8
+ pagingGroupBy: any;
9
+ paging: any;
10
+ exportExcel: any;
11
+ placesPermission?: any;
12
+ campaignPlan?: any;
13
+ domains?: any;
14
+ };
15
+ typeSystemAXN?: boolean;
16
+ title: string;
17
+ disabledCampaignFilter?: boolean;
8
18
  }
9
19
  export interface ILoadingFlags {
10
20
  campaigns?: boolean;
@@ -84,6 +94,7 @@ export interface IFilters {
84
94
  startDate: moment.Moment;
85
95
  endDate: moment.Moment;
86
96
  campaignId: string;
97
+ domainId?: string;
87
98
  placeIds: [];
88
99
  groupBy?: string;
89
100
  }
@@ -92,7 +103,7 @@ export interface ICampaignSchedulesComponentProps {
92
103
  onDragOver: (e: any) => void;
93
104
  onDragStart: (e: any) => void;
94
105
  onDrop: (e: any, i: any) => void;
95
- scheduleGroups: IPagedList_1OfCampaignScheduleGroup;
106
+ scheduleGroups: any;
96
107
  page: {
97
108
  pageSize: number;
98
109
  pageIndex: number;
@@ -172,6 +183,7 @@ export interface IControlPanelProps {
172
183
  panels: IHeadCells[];
173
184
  loadingFlags: ILoadingFlags;
174
185
  placeMultiSelectComponent: (p?: any) => JSX.Element;
186
+ disabledCampaignFilter?: boolean;
175
187
  }
176
188
  export interface IGroupPanelProps {
177
189
  unGroupField: any;
@@ -186,6 +198,7 @@ export interface IFiltersProps {
186
198
  loadingFlags: ILoadingFlags;
187
199
  placeMultiSelectComponent: (p?: any) => JSX.Element;
188
200
  handleExportExcel: () => void;
201
+ disabledCampaignFilter?: boolean;
189
202
  }
190
203
  export interface IOptions {
191
204
  campaigns: any;
@@ -6,6 +6,8 @@ declare const Constants: {
6
6
  DIRECTORY_ADD_PERMISSION: string;
7
7
  DIRECTORY_ADD_PERMISSION_ADD_NEWAUTHEN: string;
8
8
  DIRECTORY_EDIT_PERMISSION: string;
9
+ MENU_DIRECTORY_PERMISSION: string;
10
+ MENU_DIRECTORY_ADD_PERMISSION: string;
9
11
  SYSTEM_DIRECTORY_PERMISSION: string;
10
12
  };
11
13
  export default Constants;
@@ -8,6 +8,8 @@ var Constants = {
8
8
  DIRECTORY_ADD_PERMISSION: 'AddPermission',
9
9
  DIRECTORY_ADD_PERMISSION_ADD_NEWAUTHEN: 'AddNewAuthen',
10
10
  DIRECTORY_EDIT_PERMISSION: 'EditPermission',
11
+ MENU_DIRECTORY_PERMISSION: 'MenuPermission',
12
+ MENU_DIRECTORY_ADD_PERMISSION: 'MenuAddPermission',
11
13
  SYSTEM_DIRECTORY_PERMISSION: 'SystemPermission',
12
14
  };
13
15
  exports.default = Constants;
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ var jsx_runtime_1 = require("react/jsx-runtime");
43
+ var react_1 = require("@testing-library/react");
44
+ var _1 = __importDefault(require("."));
45
+ var react_router_dom_1 = require("react-router-dom");
46
+ var Context_1 = __importDefault(require("../../../Context"));
47
+ describe('MenuDirectory', function () {
48
+ var mockGetData = jest.fn();
49
+ var menusGetAll = function (id, deepLevel) {
50
+ mockGetData(id, deepLevel);
51
+ return new Promise(function (resolve) {
52
+ resolve([
53
+ {
54
+ parentMenuId: '-1',
55
+ name: 'root',
56
+ order: 0,
57
+ menuId: '0',
58
+ menuPath: '.0.',
59
+ level: 0,
60
+ description: null,
61
+ },
62
+ ]);
63
+ });
64
+ };
65
+ it('renders the component', function () { return __awaiter(void 0, void 0, void 0, function () {
66
+ var loading;
67
+ return __generator(this, function (_a) {
68
+ switch (_a.label) {
69
+ case 0:
70
+ (0, react_1.render)((0, jsx_runtime_1.jsx)(react_router_dom_1.BrowserRouter, { children: (0, jsx_runtime_1.jsx)(Context_1.default.Provider, { value: {
71
+ routes: [],
72
+ i18next: {},
73
+ service: { menusGetAll: menusGetAll },
74
+ appHelper: {},
75
+ }, children: (0, jsx_runtime_1.jsx)(_1.default, {}) }) }));
76
+ loading = react_1.screen.getByRole('progressbar');
77
+ expect(loading).toBeInTheDocument();
78
+ // wait for the loading folder
79
+ return [4 /*yield*/, (0, react_1.waitFor)(function () {
80
+ var folder = react_1.screen.getByText('root');
81
+ expect(folder).toBeInTheDocument();
82
+ })];
83
+ case 1:
84
+ // wait for the loading folder
85
+ _a.sent();
86
+ return [2 /*return*/];
87
+ }
88
+ });
89
+ }); });
90
+ });
@@ -0,0 +1 @@
1
+ export default function MenuDirectory(): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ var jsx_runtime_1 = require("react/jsx-runtime");
43
+ var material_1 = require("@mui/material");
44
+ var AWING_1 = require("../../../AWING");
45
+ var react_1 = require("react");
46
+ var icons_material_1 = require("@mui/icons-material");
47
+ var function_1 = require("../function");
48
+ var Constant_1 = __importDefault(require("../Constant"));
49
+ var react_router_dom_1 = require("react-router-dom");
50
+ var Context_1 = __importDefault(require("../../../Context"));
51
+ var react_i18next_1 = require("react-i18next");
52
+ function MenuDirectory() {
53
+ var _this = this;
54
+ var _a = (0, react_1.useContext)(Context_1.default), service = _a.service, i18next = _a.i18next;
55
+ var _b = (0, react_i18next_1.useTranslation)(undefined, { i18n: i18next }), t = _b.t, i18n = _b.i18n;
56
+ var navigate = (0, react_router_dom_1.useNavigate)();
57
+ var _c = (0, react_1.useState)(), data = _c[0], setData = _c[1];
58
+ (0, react_1.useEffect)(function () {
59
+ // Call API to get data
60
+ handleFetchData();
61
+ }, []);
62
+ var handleConvertedData = function () { return __awaiter(_this, void 0, void 0, function () {
63
+ var res, convertedData;
64
+ return __generator(this, function (_a) {
65
+ switch (_a.label) {
66
+ case 0: return [4 /*yield*/, service.menusGetAll()];
67
+ case 1:
68
+ res = _a.sent();
69
+ convertedData = (0, function_1.convertMenuData)(res);
70
+ return [2 /*return*/, convertedData[0]];
71
+ }
72
+ });
73
+ }); };
74
+ var handleFetchData = function () { return __awaiter(_this, void 0, void 0, function () {
75
+ var dataAPI;
76
+ return __generator(this, function (_a) {
77
+ switch (_a.label) {
78
+ case 0: return [4 /*yield*/, handleConvertedData()];
79
+ case 1:
80
+ dataAPI = _a.sent();
81
+ setData(dataAPI);
82
+ return [2 /*return*/];
83
+ }
84
+ });
85
+ }); };
86
+ var handleGetMoreData = function (nodeId) { return __awaiter(_this, void 0, void 0, function () {
87
+ return __generator(this, function (_a) {
88
+ return [2 /*return*/];
89
+ });
90
+ }); };
91
+ var translateData = (0, function_1.translateMenu)(data, i18n, t);
92
+ if (!translateData) {
93
+ return (0, jsx_runtime_1.jsx)(AWING_1.CircularProgress, {});
94
+ }
95
+ return ((0, jsx_runtime_1.jsx)(material_1.Grid, { container: true, spacing: 2, children: (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 6, children: (0, jsx_runtime_1.jsx)(material_1.Paper, { style: { padding: '8px' }, children: (0, jsx_runtime_1.jsx)(AWING_1.HierarchyTree, { data: translateData, hideSelectCheckbox: true, onGetMoreData: handleGetMoreData, actionComponentProps: {
96
+ actions: [
97
+ {
98
+ icon: ((0, jsx_runtime_1.jsx)(icons_material_1.Settings, { fontSize: "small", color: "action" })),
99
+ tooltip: t('Common.Permission'),
100
+ action: function (node) {
101
+ navigate(Constant_1.default.MENU_DIRECTORY_PERMISSION +
102
+ '/' +
103
+ node.nodeId);
104
+ },
105
+ },
106
+ ],
107
+ }, startIcon: (0, jsx_runtime_1.jsx)(icons_material_1.FolderOpen, { color: "action" }) }) }) }) }));
108
+ }
109
+ exports.default = MenuDirectory;
@@ -63,10 +63,10 @@ function SystemDirectory(props) {
63
63
  var _this = this;
64
64
  var rootDirectoryId = props.rootDirectoryId;
65
65
  var _a = (0, react_1.useContext)(Context_1.default), service = _a.service, i18next = _a.i18next;
66
- var t = (0, react_i18next_1.useTranslation)(undefined, { i18n: i18next }).t;
66
+ var _b = (0, react_i18next_1.useTranslation)(undefined, { i18n: i18next }), t = _b.t, i18n = _b.i18n;
67
67
  var navigate = (0, react_router_dom_1.useNavigate)();
68
- var _b = (0, react_1.useState)(), data = _b[0], setData = _b[1];
69
- var _c = (0, react_1.useState)([]), idCalled = _c[0], setIdCalled = _c[1];
68
+ var _c = (0, react_1.useState)(), data = _c[0], setData = _c[1];
69
+ var _d = (0, react_1.useState)([]), idCalled = _d[0], setIdCalled = _d[1];
70
70
  (0, react_1.useEffect)(function () {
71
71
  // Call API to get data
72
72
  handleFetchData();
@@ -116,10 +116,11 @@ function SystemDirectory(props) {
116
116
  }
117
117
  });
118
118
  }); };
119
- if (!data) {
119
+ var translateData = (0, function_1.translateMenu)(data, i18n, t);
120
+ if (!translateData) {
120
121
  return (0, jsx_runtime_1.jsx)(AWING_1.CircularProgress, {});
121
122
  }
122
- return ((0, jsx_runtime_1.jsx)(material_1.Grid, { container: true, spacing: 2, children: (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 6, children: (0, jsx_runtime_1.jsx)(material_1.Paper, { style: { padding: '8px' }, children: (0, jsx_runtime_1.jsx)(AWING_1.HierarchyTree, { data: data, hideSelectCheckbox: true, onGetMoreData: handleGetMoreData, actionComponentProps: {
123
+ return ((0, jsx_runtime_1.jsx)(material_1.Grid, { container: true, spacing: 2, children: (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 6, children: (0, jsx_runtime_1.jsx)(material_1.Paper, { style: { padding: '8px' }, children: (0, jsx_runtime_1.jsx)(AWING_1.HierarchyTree, { data: translateData, hideSelectCheckbox: true, onGetMoreData: handleGetMoreData, actionComponentProps: {
123
124
  actions: [
124
125
  {
125
126
  icon: ((0, jsx_runtime_1.jsx)(icons_material_1.Settings, { fontSize: "small", color: "action" })),
@@ -1,5 +1,9 @@
1
1
  import { IUSerOrGroup } from '../../interface';
2
2
  interface Props {
3
+ initialLoad?: {
4
+ users: IUSerOrGroup[];
5
+ groups: IUSerOrGroup[];
6
+ };
3
7
  oldSelected: IUSerOrGroup[];
4
8
  onSubmit: (selected: IUSerOrGroup[]) => void;
5
9
  }
@@ -61,12 +61,12 @@ function AddAuthen(props) {
61
61
  var t = (0, react_i18next_1.useTranslation)().t;
62
62
  var navigate = (0, react_router_dom_1.useNavigate)();
63
63
  var _a = (0, react_1.useContext)(Context_1.default), service = _a.service, snackbar = _a.appHelper.snackbar;
64
- var oldSelected = props.oldSelected, onSubmit = props.onSubmit;
64
+ var initialLoad = props.initialLoad, oldSelected = props.oldSelected, onSubmit = props.onSubmit;
65
65
  var _b = (0, react_1.useState)(false), loading = _b[0], setLoading = _b[1];
66
66
  var _c = (0, react_1.useState)(''), searchKey = _c[0], setSearchKey = _c[1];
67
67
  var _d = (0, react_1.useState)(false), confirmExit = _d[0], setConfirmExit = _d[1];
68
- var _e = (0, react_1.useState)([]), users = _e[0], setUsers = _e[1];
69
- var _f = (0, react_1.useState)([]), groups = _f[0], setGroups = _f[1];
68
+ var _e = (0, react_1.useState)(initialLoad ? initialLoad.users : []), users = _e[0], setUsers = _e[1];
69
+ var _f = (0, react_1.useState)(initialLoad ? initialLoad.groups : []), groups = _f[0], setGroups = _f[1];
70
70
  var _g = (0, react_1.useState)(oldSelected), selected = _g[0], setSelected = _g[1];
71
71
  var usersFilter = users.filter(function (user) {
72
72
  return ((0, Helpers_1.changeToAlias)((user === null || user === void 0 ? void 0 : user.username) || '').includes((0, Helpers_1.changeToAlias)(searchKey)) ||
@@ -76,8 +76,10 @@ function AddAuthen(props) {
76
76
  return (0, Helpers_1.changeToAlias)((group === null || group === void 0 ? void 0 : group.name) || '').includes((0, Helpers_1.changeToAlias)(searchKey));
77
77
  });
78
78
  (0, react_1.useEffect)(function () {
79
- setLoading(true);
80
- fetchAllUserAndGroup();
79
+ if (!initialLoad) {
80
+ setLoading(true);
81
+ fetchAllUserAndGroup();
82
+ }
81
83
  }, []);
82
84
  var fetchAllUserAndGroup = function () { return __awaiter(_this, void 0, void 0, function () {
83
85
  var responses, userData, groupData, err_1;
@@ -135,12 +137,12 @@ function AddAuthen(props) {
135
137
  user.userId;
136
138
  }), onChange: function (e) {
137
139
  handleSelect('user', e.target.checked, user);
138
- } }), label: user.username }) }, user.userId)); })] })), groupsFilter.length > 0 && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 12, pt: 2, children: (0, jsx_runtime_1.jsx)(material_1.Typography, { children: "".concat(t('Directory.Group'), " (").concat(groupsFilter.length, ")") }) }), groupsFilter.map(function (group) { return ((0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 3, children: (0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { checked: !!selected.find(function (s) {
140
+ } }), label: (0, Helpers_1.displayLongString)(user.username || '', 20) }) }, user.userId)); })] })), groupsFilter.length > 0 && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 12, pt: 2, children: (0, jsx_runtime_1.jsx)(material_1.Typography, { children: "".concat(t('Directory.Group'), " (").concat(groupsFilter.length, ")") }) }), groupsFilter.map(function (group) { return ((0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 3, children: (0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { checked: !!selected.find(function (s) {
139
141
  return s.groupId &&
140
142
  s.groupId ==
141
143
  group.groupId;
142
144
  }), onChange: function (e) {
143
145
  handleSelect('group', e.target.checked, group);
144
- } }), label: group.name }) }, group.groupId)); })] }))] }) })) }));
146
+ } }), label: (0, Helpers_1.displayLongString)(group.name, 20) }) }, group.groupId)); })] }))] }) })) }));
145
147
  }
146
148
  exports.default = AddAuthen;