awing-library 2.1.8-beta → 2.1.8

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 (197) hide show
  1. package/README.md +4 -19
  2. package/lib/ACM-AXN/Campaign/Container.js +6 -7
  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 +3 -2
  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 +1 -0
  44. package/lib/ACM-AXN/Directory/Constant.js +1 -0
  45. package/lib/ACM-AXN/Directory/DomainDirectory/index.js +0 -1
  46. package/lib/ACM-AXN/Directory/MenuDirectory/MenuDirectory.test.d.ts +1 -0
  47. package/lib/ACM-AXN/Directory/MenuDirectory/MenuDirectory.test.js +90 -0
  48. package/lib/ACM-AXN/Directory/MenuDirectory/index.js +5 -6
  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 +7 -5
  52. package/lib/ACM-AXN/Directory/components/Permission/CreateOrEditPermission.d.ts +0 -1
  53. package/lib/ACM-AXN/Directory/components/Permission/CreateOrEditPermission.js +2 -10
  54. package/lib/ACM-AXN/Directory/components/Permission/Management.d.ts +0 -1
  55. package/lib/ACM-AXN/Directory/components/Permission/Management.js +8 -16
  56. package/lib/ACM-AXN/Directory/components/Permission/MenuPermissions/MenuPermissionManagement.js +101 -61
  57. package/lib/ACM-AXN/Directory/components/Permission/MenuPermissions/MenuPermissionManagement.test.d.ts +1 -0
  58. package/lib/ACM-AXN/Directory/components/Permission/MenuPermissions/MenuPermissionManagement.test.js +86 -0
  59. package/lib/ACM-AXN/Directory/components/Permission/index.d.ts +0 -1
  60. package/lib/ACM-AXN/Directory/components/Permission/index.js +3 -3
  61. package/lib/ACM-AXN/Directory/function.d.ts +1 -0
  62. package/lib/ACM-AXN/Directory/function.js +15 -1
  63. package/lib/ACM-AXN/DomainPreview/PreviewButton.d.ts +15 -0
  64. package/lib/ACM-AXN/DomainPreview/PreviewButton.js +188 -0
  65. package/lib/ACM-AXN/DomainPreview/index.d.ts +7 -0
  66. package/lib/ACM-AXN/DomainPreview/index.js +10 -0
  67. package/lib/ACM-AXN/GroupUser/Constants.d.ts +7 -0
  68. package/lib/ACM-AXN/GroupUser/Constants.js +10 -0
  69. package/lib/ACM-AXN/GroupUser/Container.d.ts +2 -0
  70. package/lib/ACM-AXN/GroupUser/Container.js +55 -0
  71. package/lib/ACM-AXN/GroupUser/Container.test.d.ts +1 -0
  72. package/lib/ACM-AXN/GroupUser/Container.test.js +210 -0
  73. package/lib/ACM-AXN/GroupUser/CreateOrEdit.d.ts +3 -0
  74. package/lib/ACM-AXN/GroupUser/CreateOrEdit.js +91 -0
  75. package/lib/ACM-AXN/GroupUser/CreateOrEdit.test.d.ts +1 -0
  76. package/lib/ACM-AXN/GroupUser/CreateOrEdit.test.js +235 -0
  77. package/lib/ACM-AXN/GroupUser/Hooks.d.ts +5 -0
  78. package/lib/ACM-AXN/GroupUser/Hooks.js +13 -0
  79. package/lib/ACM-AXN/GroupUser/Types.d.ts +31 -0
  80. package/lib/ACM-AXN/GroupUser/Types.js +2 -0
  81. package/lib/ACM-AXN/GroupUser/User/SearchUser.d.ts +9 -0
  82. package/lib/ACM-AXN/GroupUser/User/SearchUser.js +63 -0
  83. package/lib/ACM-AXN/GroupUser/User/SearchUser.test.d.ts +1 -0
  84. package/lib/ACM-AXN/GroupUser/User/SearchUser.test.js +140 -0
  85. package/lib/ACM-AXN/GroupUser/User/UserComponent.d.ts +8 -0
  86. package/lib/ACM-AXN/GroupUser/User/UserComponent.js +77 -0
  87. package/lib/ACM-AXN/GroupUser/User/UserComponent.test.d.ts +1 -0
  88. package/lib/ACM-AXN/GroupUser/User/UserComponent.test.js +128 -0
  89. package/lib/ACM-AXN/GroupUser/index.d.ts +4 -0
  90. package/lib/ACM-AXN/GroupUser/index.js +27 -0
  91. package/lib/ACM-AXN/Notifications/Constant.d.ts +146 -0
  92. package/lib/ACM-AXN/Notifications/Constant.js +136 -0
  93. package/lib/ACM-AXN/Notifications/Context.d.ts +8 -0
  94. package/lib/ACM-AXN/Notifications/Context.js +10 -0
  95. package/lib/ACM-AXN/Notifications/Hooks.d.ts +7 -0
  96. package/lib/ACM-AXN/Notifications/Hooks.js +17 -0
  97. package/lib/ACM-AXN/Notifications/NotificationDetail/HeaderInfo/ButtonTabs.d.ts +3 -3
  98. package/lib/ACM-AXN/Notifications/NotificationDetail/HeaderInfo/ButtonTabs.js +31 -30
  99. package/lib/ACM-AXN/Notifications/NotificationDetail/HeaderInfo/MenuNotification.d.ts +1 -1
  100. package/lib/ACM-AXN/Notifications/NotificationDetail/HeaderInfo/MenuNotification.js +30 -39
  101. package/lib/ACM-AXN/Notifications/NotificationDetail/HeaderInfo/index.d.ts +3 -5
  102. package/lib/ACM-AXN/Notifications/NotificationDetail/HeaderInfo/index.js +18 -17
  103. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationEmpty.d.ts +1 -1
  104. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationEmpty.js +15 -15
  105. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationEmpty.test.d.ts +0 -6
  106. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationEmpty.test.js +29 -28
  107. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/Message.d.ts +10 -0
  108. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/Message.js +393 -0
  109. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/NotificationAvatar.d.ts +1 -1
  110. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/NotificationAvatar.js +3 -3
  111. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/NotificationAvatar.test.d.ts +0 -6
  112. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/NotificationAvatar.test.js +38 -48
  113. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/NotificationContent.d.ts +2 -2
  114. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/NotificationContent.js +36 -35
  115. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/NotificationContent.test.d.ts +0 -6
  116. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/NotificationContent.test.js +65 -73
  117. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/index.d.ts +4 -11
  118. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/index.js +46 -36
  119. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/index.test.d.ts +0 -6
  120. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/index.test.js +56 -50
  121. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationLoading.js +30 -30
  122. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/index.d.ts +3 -15
  123. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/index.js +35 -4
  124. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/index.test.d.ts +0 -6
  125. package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/index.test.js +88 -83
  126. package/lib/ACM-AXN/Notifications/NotificationDetail/index.d.ts +5 -2
  127. package/lib/ACM-AXN/Notifications/NotificationDetail/index.js +115 -101
  128. package/lib/ACM-AXN/Notifications/{NotificationPopover.d.ts → NotificationPopover/Container.d.ts} +2 -2
  129. package/lib/ACM-AXN/Notifications/NotificationPopover/Container.js +149 -0
  130. package/lib/ACM-AXN/Notifications/{NotificationPopover.test.d.ts → NotificationPopover/Container.test.d.ts} +1 -1
  131. package/lib/ACM-AXN/Notifications/{NotificationPopover.test.js → NotificationPopover/Container.test.js} +5 -5
  132. package/lib/ACM-AXN/Notifications/NotificationPopover/index.d.ts +8 -0
  133. package/lib/ACM-AXN/Notifications/NotificationPopover/index.js +13 -0
  134. package/lib/ACM-AXN/Notifications/NotificationScreen.d.ts +1 -1
  135. package/lib/ACM-AXN/Notifications/NotificationScreen.js +4 -4
  136. package/lib/ACM-AXN/Notifications/Types.d.ts +242 -0
  137. package/lib/ACM-AXN/Notifications/Types.js +290 -0
  138. package/lib/ACM-AXN/Notifications/index.d.ts +2 -2
  139. package/lib/ACM-AXN/Notifications/index.js +5 -5
  140. package/lib/ACM-AXN/Page/Container.js +101 -63
  141. package/lib/ACM-AXN/Page/CreateOrEdit/DrawerAction.js +22 -5
  142. package/lib/ACM-AXN/Page/CreateOrEdit/Recoil.d.ts +1 -0
  143. package/lib/ACM-AXN/Page/CreateOrEdit/Recoil.js +5 -1
  144. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewContent.js +1 -1
  145. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewInfo.js +10 -4
  146. package/lib/ACM-AXN/Page/CreateOrEdit/Utils.js +1 -1
  147. package/lib/ACM-AXN/Page/Types.d.ts +8 -0
  148. package/lib/ACM-AXN/Page/index.js +2 -1
  149. package/lib/ACM-AXN/Permission/Components/Management.test.js +1 -1
  150. package/lib/ACM-AXN/PlaceGroup/Context.d.ts +1 -1
  151. package/lib/ACM-AXN/Statistics/ControlPanel.js +51 -38
  152. package/lib/ACM-AXN/Statistics/Enums.d.ts +1 -0
  153. package/lib/ACM-AXN/Statistics/Enums.js +1 -0
  154. package/lib/ACM-AXN/Statistics/container.js +1 -1
  155. package/lib/ACM-AXN/StatisticsAudienceDemographic/container.d.ts +1 -1
  156. package/lib/ACM-AXN/StatisticsAudienceDemographic/container.js +2 -3
  157. package/lib/ACM-AXN/StatisticsAudienceDemographic/interfaces.d.ts +1 -0
  158. package/lib/ACM-AXN/StatisticsByProvince/container.d.ts +1 -1
  159. package/lib/ACM-AXN/StatisticsByProvince/container.js +2 -2
  160. package/lib/ACM-AXN/TaskScheduler/Container.js +1 -1
  161. package/lib/ACM-AXN/User/Add.d.ts +2 -0
  162. package/lib/ACM-AXN/User/Add.js +64 -0
  163. package/lib/ACM-AXN/User/Add.test.d.ts +1 -0
  164. package/lib/ACM-AXN/User/Add.test.js +115 -0
  165. package/lib/ACM-AXN/User/Constants.d.ts +2 -0
  166. package/lib/ACM-AXN/User/Constants.js +5 -0
  167. package/lib/ACM-AXN/User/Container.d.ts +2 -0
  168. package/lib/ACM-AXN/User/Container.js +60 -0
  169. package/lib/ACM-AXN/User/Container.test.d.ts +1 -0
  170. package/lib/ACM-AXN/User/Container.test.js +202 -0
  171. package/lib/ACM-AXN/User/Hook.d.ts +5 -0
  172. package/lib/ACM-AXN/User/Hook.js +13 -0
  173. package/lib/ACM-AXN/User/Types.d.ts +45 -0
  174. package/lib/ACM-AXN/User/Types.js +2 -0
  175. package/lib/ACM-AXN/User/index.d.ts +4 -0
  176. package/lib/ACM-AXN/User/index.js +18 -0
  177. package/lib/ACM-AXN/ViewTemplate/TemplateField/Fields/BasicField/index.js +1 -1
  178. package/lib/AWING/AdvancedSearch/component.js +1 -1
  179. package/lib/AWING/AdvancedSearch/interface.d.ts +1 -0
  180. package/lib/AWING/ButtonDateRangePicker/ButtonDateRangePicker.js +2 -2
  181. package/lib/AWING/ButtonDateRangePicker/interface.d.ts +1 -0
  182. package/lib/AWING/DataForm/DataInput.js +17 -8
  183. package/lib/AWING/DataForm/interface.d.ts +6 -2
  184. package/lib/AWING/DataGrid/index.js +4 -1
  185. package/lib/AWING/DataGrid/interface.d.ts +6 -1
  186. package/lib/AWING/Directory/CreateDirectory.d.ts +3 -0
  187. package/lib/AWING/Directory/CreateDirectory.js +27 -10
  188. package/lib/AWING/ultis/validation.d.ts +1 -1
  189. package/lib/AWING/ultis/validation.js +3 -3
  190. package/lib/Commons/Components/ClassicBaseDrawer.d.ts +1 -0
  191. package/lib/Commons/Components/ClassicBaseDrawer.js +7 -3
  192. package/lib/translate/en/translation.json +81 -2
  193. package/lib/translate/vi/translation.json +81 -2
  194. package/package.json +4 -2
  195. package/lib/ACM-AXN/Notifications/NotificationDetail/Common.d.ts +0 -39
  196. package/lib/ACM-AXN/Notifications/NotificationDetail/Common.js +0 -304
  197. package/lib/ACM-AXN/Notifications/NotificationPopover.js +0 -69
@@ -57,25 +57,24 @@ function Permission(props) {
57
57
  }
58
58
  exports.default = Permission;
59
59
  function FolderPermission(props) {
60
- var t = (0, react_i18next_1.useTranslation)().t;
61
- var isSystemDirectory = props.isSystemDirectory, isMenuDirectory = props.isMenuDirectory;
60
+ var _a = (0, react_i18next_1.useTranslation)(), t = _a.t, i18n = _a.i18n;
61
+ var isSystemDirectory = props.isSystemDirectory;
62
62
  var setDrawerTitle = (0, AWING_1.useDrawer)().setDrawerTitle;
63
63
  var navigate = (0, react_router_dom_1.useNavigate)();
64
64
  var directoryId = (0, react_router_dom_1.useParams)().directoryId;
65
- var _a = (0, react_1.useContext)(Context_1.default), appHelper = _a.appHelper, service = _a.service;
65
+ var _b = (0, react_1.useContext)(Context_1.default), appHelper = _b.appHelper, service = _b.service;
66
66
  var confirm = appHelper.confirm, snackbar = appHelper.snackbar;
67
- var _b = (0, react_1.useState)(false), loading = _b[0], setLoading = _b[1];
68
- var _c = (0, react_1.useState)([]), permissions = _c[0], setPermissions = _c[1];
67
+ var _c = (0, react_1.useState)(false), loading = _c[0], setLoading = _c[1];
68
+ var _d = (0, react_1.useState)([]), permissions = _d[0], setPermissions = _d[1];
69
69
  (0, react_1.useEffect)(function () {
70
70
  var getDirectory = service.directoriesGet;
71
71
  if (isSystemDirectory) {
72
72
  getDirectory = service.systemDirectoriesGet;
73
73
  }
74
- if (isMenuDirectory) {
75
- getDirectory = service.menusGet;
76
- }
77
74
  getDirectory(directoryId).then(function (res) {
78
- setDrawerTitle("".concat(t('Directory.ObjectPermission'), ": ").concat(res.name));
75
+ setDrawerTitle("".concat(t('Directory.ObjectPermission'), ": ").concat(i18n.exists("Menu.MenuName.Menu_".concat(directoryId))
76
+ ? t("Menu.MenuName.Menu_".concat(directoryId))
77
+ : res.name));
79
78
  });
80
79
  var randomKey = (0, PubSub_1.getRandomKey)();
81
80
  (0, PubSub_1.sub)('update-directory-permission', function () {
@@ -94,12 +93,8 @@ function FolderPermission(props) {
94
93
  if (isSystemDirectory) {
95
94
  getPermission = service.systemDirectoryPermissionGet;
96
95
  }
97
- if (isMenuDirectory) {
98
- getPermission = service.menuPermissionGet;
99
- }
100
96
  getPermission(directoryId)
101
97
  .then(function (res) {
102
- console.log({ res: res });
103
98
  setPermissions(res.permissions.map(function (p) { return convertPermission(p); }));
104
99
  setLoading(false);
105
100
  })
@@ -114,9 +109,6 @@ function FolderPermission(props) {
114
109
  if (isSystemDirectory) {
115
110
  deletePermission = service.systemDirectoryPermissionDelete;
116
111
  }
117
- if (isMenuDirectory) {
118
- deletePermission = service.menuPermissionDelete;
119
- }
120
112
  deletePermission(directoryId, authenId, authenType)
121
113
  .then(function () {
122
114
  snackbar('success');
@@ -13,23 +13,24 @@ var react_router_dom_1 = require("react-router-dom");
13
13
  var Context_1 = __importDefault(require("../../../../../Context"));
14
14
  var Constant_1 = __importDefault(require("../../../Constant"));
15
15
  var PubSub_1 = require("../../../../../AWING/PubSub");
16
+ var AddAuthen_1 = __importDefault(require("../AddAuthen"));
16
17
  function Permission() {
17
18
  var i18next = (0, react_1.useContext)(Context_1.default).i18next;
18
19
  var t = (0, react_i18next_1.useTranslation)(undefined, { i18n: i18next }).t;
19
- return ((0, jsx_runtime_1.jsx)(AWING_1.DrawerNavigate, { title: t('Directory.ObjectPermission'), customButtonSubmit: (0, jsx_runtime_1.jsx)(material_1.Button, { component: react_router_dom_1.Link, color: 'primary', variant: "contained", to: Constant_1.default.DIRECTORY_ADD_PERMISSION, children: t('Directory.AddPermission') }), childrenWrapperStyle: { padding: function (theme) { return theme.spacing(3); } }, children: (0, jsx_runtime_1.jsx)(MenuPermissions, {}) }));
20
+ return ((0, jsx_runtime_1.jsx)(AWING_1.DrawerNavigate, { title: t('Directory.ObjectPermission'), customButtonSubmit: (0, jsx_runtime_1.jsx)(material_1.Button, { component: react_router_dom_1.Link, color: 'primary', variant: "contained", to: Constant_1.default.MENU_DIRECTORY_ADD_PERMISSION, children: t('Directory.AddPermission') }), childrenWrapperStyle: { padding: function (theme) { return theme.spacing(3); } }, children: (0, jsx_runtime_1.jsx)(MenuPermissions, {}) }));
20
21
  }
21
22
  exports.default = Permission;
22
23
  function MenuPermissions() {
23
24
  var _a = (0, react_1.useContext)(Context_1.default), appHelper = _a.appHelper, service = _a.service, i18next = _a.i18next;
24
- var t = (0, react_i18next_1.useTranslation)(undefined, { i18n: i18next }).t;
25
+ var _b = (0, react_i18next_1.useTranslation)(undefined, { i18n: i18next }), t = _b.t, i18n = _b.i18n;
25
26
  var setDrawerTitle = (0, AWING_1.useDrawer)().setDrawerTitle;
26
27
  var directoryId = (0, react_router_dom_1.useParams)().directoryId;
27
28
  var confirm = appHelper.confirm, snackbar = appHelper.snackbar;
28
- var _b = (0, react_1.useState)(false), loading = _b[0], setLoading = _b[1];
29
- var _c = (0, react_1.useState)([]), permissions = _c[0], setPermissions = _c[1];
30
- var _d = (0, react_1.useState)([]), users = _d[0], setUsers = _d[1];
31
- var _e = (0, react_1.useState)([]), groups = _e[0], setGroups = _e[1];
32
- var _f = (0, react_1.useState)(false), loadingAuthen = _f[0], setLoadingAuthen = _f[1];
29
+ var _c = (0, react_1.useState)(false), loading = _c[0], setLoading = _c[1];
30
+ var _d = (0, react_1.useState)([]), permissions = _d[0], setPermissions = _d[1];
31
+ var _e = (0, react_1.useState)([]), users = _e[0], setUsers = _e[1];
32
+ var _f = (0, react_1.useState)([]), groups = _f[0], setGroups = _f[1];
33
+ var _g = (0, react_1.useState)(false), loadingAuthen = _g[0], setLoadingAuthen = _g[1];
33
34
  (0, react_1.useEffect)(function () {
34
35
  setLoadingAuthen(true);
35
36
  var loader = [service.usersGet(), service.groupsGetAll()];
@@ -49,7 +50,9 @@ function MenuPermissions() {
49
50
  (0, react_1.useEffect)(function () {
50
51
  var getDirectory = service.menusGet;
51
52
  getDirectory(directoryId).then(function (res) {
52
- setDrawerTitle("".concat(t('Directory.ObjectPermission'), ": ").concat(res.name));
53
+ setDrawerTitle("".concat(t('Directory.ObjectPermission'), ": ").concat(i18n.exists("Menu.MenuName.Menu_".concat(directoryId))
54
+ ? t("Menu.MenuName.Menu_".concat(directoryId))
55
+ : res.name));
53
56
  });
54
57
  var randomKey = (0, PubSub_1.getRandomKey)();
55
58
  (0, PubSub_1.sub)('update-directory-permission', function () {
@@ -67,7 +70,6 @@ function MenuPermissions() {
67
70
  var getPermission = service.menuPermissionGet;
68
71
  getPermission(directoryId)
69
72
  .then(function (res) {
70
- console.log({ res: res });
71
73
  setPermissions(res.permissions);
72
74
  setLoading(false);
73
75
  })
@@ -90,56 +92,94 @@ function MenuPermissions() {
90
92
  });
91
93
  });
92
94
  };
93
- return loading && loadingAuthen ? ((0, jsx_runtime_1.jsx)(AWING_1.CircularProgress, {})) : ((0, jsx_runtime_1.jsx)(AWING_1.DataGrid, { columns: [
94
- {
95
- field: '',
96
- width: 50,
97
- headerName: '#',
98
- valueGetter: function (row, idx) {
99
- return idx + 1;
100
- },
101
- },
102
- {
103
- field: 'authenType',
104
- width: 50,
105
- headerName: '',
106
- valueGetter: function (row, idx) {
107
- return row.authenType == 0 ? ((0, jsx_runtime_1.jsx)(icons_material_1.Person, { fontSize: "small" })) : ((0, jsx_runtime_1.jsx)(icons_material_1.Group, { fontSize: "small" }));
108
- },
109
- },
110
- {
111
- field: 'name',
112
- headerName: t('Common.UserGroupUser'),
113
- valueGetter: function (row, idx) {
114
- var _a, _b;
115
- return row.authenType == 0
116
- ? (_a = users.find(function (u) { return u.userId == row.authenId; })) === null || _a === void 0 ? void 0 : _a.username
117
- : (_b = groups.find(function (g) { return g.groupId == row.authenId; })) === null || _b === void 0 ? void 0 : _b.name;
118
- },
119
- },
120
- {
121
- field: 'inheritedPermission',
122
- headerName: t('Directory.InheritedPermission'),
123
- valueGetter: function (row, idx) {
124
- return row.inheritedPermission ? ((0, jsx_runtime_1.jsx)(icons_material_1.Check, { color: "primary" })) : ('');
125
- },
126
- },
127
- {
128
- field: 'explicitPermission',
129
- headerName: t('Directory.ExplicitPermission'),
130
- valueGetter: function (row, idx) {
131
- return row.explicitPermission ? ((0, jsx_runtime_1.jsx)(icons_material_1.Check, { color: "primary" })) : ('');
132
- },
133
- },
134
- ], rows: permissions, rowActions: [
135
- {
136
- icon: (0, jsx_runtime_1.jsx)(icons_material_1.Clear, { fontSize: "small" }),
137
- tooltipTitle: t('Common.Delete'),
138
- action: function (id) {
139
- var row = permissions[id];
140
- handleDeletePermission(row.authenId, row.authenType);
141
- },
142
- isShouldHideActions: function (row) { return !row.explicitPermission; },
143
- },
144
- ] }));
95
+ var handleUpdateMenuPermission = function (selected) {
96
+ var temp = selected.map(function (s) {
97
+ var isGroup = s.groupId !== undefined;
98
+ return {
99
+ authenId: isGroup ? s.groupId : s.userId,
100
+ authenType: isGroup ? 1 : 0,
101
+ explicitPermission: true,
102
+ };
103
+ });
104
+ service
105
+ .menuPermissionPut(directoryId, {
106
+ menuId: directoryId,
107
+ permissions: temp,
108
+ })
109
+ .then(function () {
110
+ snackbar('success');
111
+ (0, PubSub_1.pub)('update-directory-permission');
112
+ })
113
+ .catch(function (err) {
114
+ snackbar('error');
115
+ console.log(err);
116
+ });
117
+ };
118
+ return loading && loadingAuthen ? ((0, jsx_runtime_1.jsx)(AWING_1.CircularProgress, {})) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(AWING_1.DataGrid, { columns: [
119
+ {
120
+ field: '',
121
+ width: 50,
122
+ headerName: '#',
123
+ valueGetter: function (row, idx) {
124
+ return idx + 1;
125
+ },
126
+ },
127
+ {
128
+ field: 'authenType',
129
+ width: 50,
130
+ headerName: '',
131
+ valueGetter: function (row, idx) {
132
+ return row.authenType == 0 ? ((0, jsx_runtime_1.jsx)(icons_material_1.Person, { fontSize: "small" })) : ((0, jsx_runtime_1.jsx)(icons_material_1.Group, { fontSize: "small" }));
133
+ },
134
+ },
135
+ {
136
+ field: 'name',
137
+ headerName: t('Common.UserGroupUser'),
138
+ valueGetter: function (row, idx) {
139
+ var _a, _b;
140
+ return row.authenType == 0
141
+ ? (_a = users.find(function (u) { return u.userId == row.authenId; })) === null || _a === void 0 ? void 0 : _a.username
142
+ : (_b = groups.find(function (g) { return g.groupId == row.authenId; })) === null || _b === void 0 ? void 0 : _b.name;
143
+ },
144
+ },
145
+ {
146
+ field: 'inheritedPermission',
147
+ headerName: t('Directory.InheritedPermission'),
148
+ valueGetter: function (row, idx) {
149
+ return row.inheritedPermission ? ((0, jsx_runtime_1.jsx)(icons_material_1.Check, { color: "primary" })) : ('');
150
+ },
151
+ },
152
+ {
153
+ field: 'explicitPermission',
154
+ headerName: t('Directory.ExplicitPermission'),
155
+ valueGetter: function (row, idx) {
156
+ return row.explicitPermission ? ((0, jsx_runtime_1.jsx)(icons_material_1.Check, { color: "primary" })) : ('');
157
+ },
158
+ },
159
+ ], rows: permissions, rowActions: [
160
+ {
161
+ icon: (0, jsx_runtime_1.jsx)(icons_material_1.Clear, { fontSize: "small" }),
162
+ tooltipTitle: t('Common.Delete'),
163
+ action: function (id) {
164
+ var row = permissions[id];
165
+ handleDeletePermission(row.authenId, row.authenType);
166
+ },
167
+ isShouldHideActions: function (row) {
168
+ return !row.explicitPermission;
169
+ },
170
+ },
171
+ ] }), (0, jsx_runtime_1.jsx)(react_router_dom_1.Routes, { children: (0, jsx_runtime_1.jsx)(react_router_dom_1.Route, { path: Constant_1.default.MENU_DIRECTORY_ADD_PERMISSION, element: (0, jsx_runtime_1.jsx)(AddAuthen_1.default, { initialLoad: {
172
+ users: users.filter(function (u) {
173
+ return !permissions.find(function (p) {
174
+ return p.explicitPermission &&
175
+ p.authenId == u.userId;
176
+ });
177
+ }),
178
+ groups: groups.filter(function (g) {
179
+ return !permissions.find(function (p) {
180
+ return p.explicitPermission &&
181
+ p.authenId == g.groupId;
182
+ });
183
+ }),
184
+ }, oldSelected: [], onSubmit: handleUpdateMenuPermission }) }) })] }));
145
185
  }
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var jsx_runtime_1 = require("react/jsx-runtime");
7
+ var MenuPermissionManagement_1 = __importDefault(require("./MenuPermissionManagement"));
8
+ var react_1 = require("@testing-library/react");
9
+ var react_router_dom_1 = require("react-router-dom");
10
+ var Context_1 = __importDefault(require("../../../../../Context"));
11
+ describe('Menu Management', function () {
12
+ var mockUsersGet = jest.fn();
13
+ var mockGetGroups = jest.fn();
14
+ var mockGetMenu = jest.fn();
15
+ var mockMenuPermissionGet = jest.fn();
16
+ var mockDeleteMenuPermission = jest.fn();
17
+ var usersGet = function () {
18
+ mockUsersGet();
19
+ return new Promise(function (resolve) {
20
+ resolve([]);
21
+ });
22
+ };
23
+ var groupsGetAll = function () {
24
+ mockGetGroups();
25
+ return new Promise(function (resolve) {
26
+ resolve({});
27
+ });
28
+ };
29
+ var menusGet = function (directoryId) {
30
+ mockGetMenu(directoryId);
31
+ return new Promise(function (resolve) {
32
+ resolve({ permissions: [] });
33
+ });
34
+ };
35
+ var menuPermissionGet = function (directoryId) {
36
+ mockMenuPermissionGet(directoryId);
37
+ return new Promise(function (resolve) {
38
+ resolve(true);
39
+ });
40
+ };
41
+ var menuPermissionDelete = function () {
42
+ mockDeleteMenuPermission();
43
+ return new Promise(function (resolve) {
44
+ resolve(true);
45
+ });
46
+ };
47
+ var menuPermissionPut = function () {
48
+ return new Promise(function (resolve) {
49
+ resolve(true);
50
+ });
51
+ };
52
+ it('renders the component', function () {
53
+ (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: {
54
+ routes: [],
55
+ i18next: {},
56
+ service: {
57
+ usersGet: usersGet,
58
+ groupsGetAll: groupsGetAll,
59
+ menusGet: menusGet,
60
+ menuPermissionGet: menuPermissionGet,
61
+ menuPermissionDelete: menuPermissionDelete,
62
+ menuPermissionPut: menuPermissionPut,
63
+ },
64
+ appHelper: {},
65
+ }, children: (0, jsx_runtime_1.jsx)(MenuPermissionManagement_1.default, {}) }) }));
66
+ expect(react_1.screen.getByText('Directory.ObjectPermission')).toBeInTheDocument();
67
+ });
68
+ it('fetches the menu', function () {
69
+ (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: {
70
+ routes: [],
71
+ i18next: {},
72
+ service: {
73
+ usersGet: usersGet,
74
+ groupsGetAll: groupsGetAll,
75
+ menusGet: menusGet,
76
+ menuPermissionGet: menuPermissionGet,
77
+ menuPermissionDelete: menuPermissionDelete,
78
+ menuPermissionPut: menuPermissionPut,
79
+ },
80
+ appHelper: {},
81
+ }, children: (0, jsx_runtime_1.jsx)(MenuPermissionManagement_1.default, {}) }) }));
82
+ expect(mockGetMenu).toHaveBeenCalled();
83
+ expect(mockUsersGet).toHaveBeenCalled();
84
+ expect(mockGetGroups).toHaveBeenCalled();
85
+ });
86
+ });
@@ -1,6 +1,5 @@
1
1
  interface Props {
2
2
  isSystemDirectory?: boolean;
3
- isMenuDirectory?: boolean;
4
3
  }
5
4
  export default function DirectoryPermission(props: Props): import("react/jsx-runtime").JSX.Element;
6
5
  export {};
@@ -13,10 +13,10 @@ var CreateOrEditPermission_1 = __importDefault(require("./CreateOrEditPermission
13
13
  var react_router_dom_1 = require("react-router-dom");
14
14
  function DirectoryPermission(props) {
15
15
  var i18next = (0, react_1.useContext)(Context_1.default).i18next;
16
- var isSystemDirectory = props.isSystemDirectory, isMenuDirectory = props.isMenuDirectory;
17
- return ((0, jsx_runtime_1.jsxs)(react_i18next_1.I18nextProvider, { i18n: i18next, children: [(0, jsx_runtime_1.jsx)(Management_1.default, { isSystemDirectory: isSystemDirectory, isMenuDirectory: isMenuDirectory }), (0, jsx_runtime_1.jsxs)(react_router_dom_1.Routes, { children: [(0, jsx_runtime_1.jsx)(react_router_dom_1.Route, { path: Constant_1.default.DIRECTORY_ADD_PERMISSION + '/*', element: (0, jsx_runtime_1.jsx)(CreateOrEditPermission_1.default, { isSystemDirectory: isSystemDirectory, isMenuDirectory: isMenuDirectory }) }), (0, jsx_runtime_1.jsx)(react_router_dom_1.Route, { path: Constant_1.default.DIRECTORY_EDIT_PERMISSION +
16
+ var isSystemDirectory = props.isSystemDirectory;
17
+ return ((0, jsx_runtime_1.jsxs)(react_i18next_1.I18nextProvider, { i18n: i18next, children: [(0, jsx_runtime_1.jsx)(Management_1.default, { isSystemDirectory: isSystemDirectory }), (0, jsx_runtime_1.jsxs)(react_router_dom_1.Routes, { children: [(0, jsx_runtime_1.jsx)(react_router_dom_1.Route, { path: Constant_1.default.DIRECTORY_ADD_PERMISSION + '/*', element: (0, jsx_runtime_1.jsx)(CreateOrEditPermission_1.default, { isSystemDirectory: isSystemDirectory }) }), (0, jsx_runtime_1.jsx)(react_router_dom_1.Route, { path: Constant_1.default.DIRECTORY_EDIT_PERMISSION +
18
18
  '/:type' +
19
19
  '/:id' +
20
- '/*', element: (0, jsx_runtime_1.jsx)(CreateOrEditPermission_1.default, { isSystemDirectory: isSystemDirectory, isMenuDirectory: isMenuDirectory }) })] })] }));
20
+ '/*', element: (0, jsx_runtime_1.jsx)(CreateOrEditPermission_1.default, { isSystemDirectory: isSystemDirectory }) })] })] }));
21
21
  }
22
22
  exports.default = DirectoryPermission;
@@ -3,3 +3,4 @@ import { TreeNode } from '../../AWING';
3
3
  export declare const replaceChildren: (object1: TreeNode, object2: TreeNode) => TreeNode;
4
4
  export declare const convertData: (input: IRawData[], parentId?: string | null) => TreeNode[];
5
5
  export declare const convertMenuData: (input: any[], parentId?: string | null) => TreeNode[];
6
+ export declare const translateMenu: (data: any, i18n: any, t: any) => any;
@@ -11,7 +11,7 @@ var __assign = (this && this.__assign) || function () {
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.convertMenuData = exports.convertData = exports.replaceChildren = void 0;
14
+ exports.translateMenu = exports.convertMenuData = exports.convertData = exports.replaceChildren = void 0;
15
15
  var AWING_1 = require("../../AWING");
16
16
  var replaceChildren = function (object1, object2) {
17
17
  if (object1.nodeId === object2.nodeId) {
@@ -78,3 +78,17 @@ var convertMenuData = function (input, parentId) {
78
78
  return result;
79
79
  };
80
80
  exports.convertMenuData = convertMenuData;
81
+ var translateMenu = function (data, i18n, t) {
82
+ if (!data)
83
+ return data;
84
+ if (i18n.exists("Menu.MenuName.Menu_".concat(data.nodeId))) {
85
+ data.name = t("Menu.MenuName.Menu_".concat(data.nodeId));
86
+ }
87
+ if (data.children) {
88
+ data.children = data.children.map(function (child) {
89
+ return (0, exports.translateMenu)(child, i18n, t);
90
+ });
91
+ }
92
+ return data;
93
+ };
94
+ exports.translateMenu = translateMenu;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import { IDomain } from '../../ACM-AXN/Page/Types';
3
+ interface PreviewCampaignContainerProps {
4
+ domainIds: string[];
5
+ open: boolean;
6
+ anchorEl: HTMLElement | null;
7
+ handlePreviewClose: (event: React.MouseEvent<HTMLElement>) => void;
8
+ handlePreviewDomain: (event: React.MouseEvent<HTMLElement>, domainId: string) => void;
9
+ service: {
10
+ domainsGetAll: () => Promise<IDomain[]>;
11
+ domainsGetByIds: (body: string[]) => Promise<IDomain[]>;
12
+ };
13
+ }
14
+ declare const PreviewCampaignContainer: React.FC<PreviewCampaignContainerProps>;
15
+ export default PreviewCampaignContainer;
@@ -0,0 +1,188 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ var jsx_runtime_1 = require("react/jsx-runtime");
27
+ var material_1 = require("@mui/material");
28
+ var icons_material_1 = require("@mui/icons-material");
29
+ var react_1 = __importStar(require("react"));
30
+ var react_i18next_1 = require("react-i18next");
31
+ var styles_1 = require("@mui/styles");
32
+ var AWING_1 = require("../../AWING");
33
+ var lodash_1 = require("lodash");
34
+ var useStylesContainer = (0, styles_1.makeStyles)(function () {
35
+ var _a, _b;
36
+ var theme = (0, material_1.useTheme)();
37
+ return {
38
+ circularProgress: {
39
+ width: '10px !important',
40
+ height: '10px !important',
41
+ margin: '0px auto',
42
+ },
43
+ drawer: {
44
+ width: theme.spacing(60),
45
+ },
46
+ search: (_a = {
47
+ position: 'relative',
48
+ borderRadius: theme.shape.borderRadius,
49
+ backgroundColor: 'rgba(255, 255, 255, 0.15)',
50
+ '&:hover': {
51
+ backgroundColor: 'rgba(255, 255, 255, 0.25)',
52
+ },
53
+ marginRight: theme.spacing(2),
54
+ marginLeft: 0,
55
+ width: '100%'
56
+ },
57
+ _a[theme.breakpoints.up('sm')] = {
58
+ marginLeft: theme.spacing(3),
59
+ width: 'auto',
60
+ },
61
+ _a),
62
+ searchIcon: {
63
+ padding: theme.spacing(0, 2),
64
+ height: '100%',
65
+ position: 'absolute',
66
+ pointerEvents: 'none',
67
+ display: 'flex',
68
+ alignItems: 'center',
69
+ justifyContent: 'center',
70
+ },
71
+ inputRoot: {
72
+ color: 'inherit',
73
+ },
74
+ inputInput: (_b = {
75
+ padding: theme.spacing(1, 1, 1, 0),
76
+ // vertical padding + font size from searchIcon
77
+ paddingLeft: "calc(1em + ".concat(theme.spacing(4), "px)"),
78
+ transition: theme.transitions.create('width'),
79
+ width: '100%'
80
+ },
81
+ _b[theme.breakpoints.up('md')] = {
82
+ width: '20ch',
83
+ },
84
+ _b),
85
+ };
86
+ });
87
+ var PreviewCampaignContainer = function (props) {
88
+ var domainIds = props.domainIds, open = props.open, anchorEl = props.anchorEl, handlePreviewClose = props.handlePreviewClose, handlePreviewDomain = props.handlePreviewDomain, service = props.service;
89
+ var t = (0, react_i18next_1.useTranslation)().t;
90
+ var _a = react_1.default.useState([]), domains = _a[0], setDomains = _a[1];
91
+ var _b = react_1.default.useState(false), loadingFlags = _b[0], setLoadingFlags = _b[1];
92
+ var classes = useStylesContainer();
93
+ react_1.default.useEffect(function () {
94
+ setLoadingFlags(true);
95
+ }, []);
96
+ react_1.default.useEffect(function () {
97
+ if (open === true) {
98
+ if (domainIds.length) {
99
+ service
100
+ .domainsGetByIds(domainIds)
101
+ .then(setDomains)
102
+ .finally(function () { return setLoadingFlags(false); });
103
+ }
104
+ else {
105
+ service
106
+ .domainsGetAll()
107
+ .then(function (res) {
108
+ setAllDomain(res);
109
+ setDomains(res.slice(0, 5));
110
+ })
111
+ .finally(function () { return setLoadingFlags(false); });
112
+ }
113
+ }
114
+ // eslint-disable-next-line react-hooks/exhaustive-deps
115
+ }, [domainIds, open]);
116
+ var _c = react_1.default.useState(false), openDrawer = _c[0], setOpenDrawer = _c[1];
117
+ var toggleDrawer = function (open) { return function (event) {
118
+ event.stopPropagation();
119
+ if (event &&
120
+ event.type === 'keydown' &&
121
+ (event.key === 'Tab' ||
122
+ event.key === 'Shift')) {
123
+ return;
124
+ }
125
+ setOpenDrawer(open);
126
+ }; };
127
+ var _d = react_1.default.useState(''), searchDomainString = _d[0], setSearchDomainString = _d[1];
128
+ var _e = react_1.default.useState([]), allDomain = _e[0], setAllDomain = _e[1];
129
+ var _f = react_1.default.useState(true), isLoadingAllDomain = _f[0], setIsLoadingAllDomain = _f[1];
130
+ react_1.default.useEffect(function () {
131
+ if (openDrawer === true && allDomain.length <= 0) {
132
+ setIsLoadingAllDomain(true);
133
+ service
134
+ .domainsGetAll()
135
+ .then(setAllDomain)
136
+ .finally(function () { return setIsLoadingAllDomain(false); });
137
+ }
138
+ else {
139
+ setIsLoadingAllDomain(false);
140
+ }
141
+ // eslint-disable-next-line react-hooks/exhaustive-deps
142
+ }, [openDrawer]);
143
+ var translationText = {
144
+ searchPlaceholder: t('Common.SearchPlaceholder'),
145
+ copyToClipboard: t('Common.Preview'),
146
+ other: t('Campaign.Type.Other'),
147
+ };
148
+ // eslint-disable-next-line react-hooks/exhaustive-deps
149
+ var handleSearch = (0, react_1.useCallback)((0, lodash_1.debounce)(setSearchDomainString, 300), []);
150
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(material_1.Menu, { id: "long-menu", anchorEl: anchorEl, keepMounted: true, open: open, onClose: handlePreviewClose, PaperProps: {
151
+ style: {
152
+ maxHeight: 48 * 4.5,
153
+ width: '25ch',
154
+ },
155
+ }, children: [loadingFlags ? ((0, jsx_runtime_1.jsx)(material_1.MenuItem, { children: (0, jsx_runtime_1.jsx)(AWING_1.CircularProgress, {}) })) : (domains &&
156
+ domains.map(function (domain) { return ((0, jsx_runtime_1.jsx)(material_1.MenuItem, { onClick: function (event) {
157
+ handlePreviewClose(event);
158
+ handlePreviewDomain(event, domain.domainId);
159
+ }, children: domain.name }, domain.domainId)); })), !loadingFlags && ((0, jsx_runtime_1.jsx)(material_1.MenuItem, { onClick: toggleDrawer(true), children: translationText.other }))] }), (0, jsx_runtime_1.jsx)(material_1.Drawer, { anchor: 'right', open: openDrawer, onClose: function () {
160
+ toggleDrawer(false);
161
+ handlePreviewClose({ stopPropagation: function () { } });
162
+ }, onClick: function (e) { return e.stopPropagation(); }, sx: {
163
+ zIndex: function (theme) { return theme.zIndex.drawer * 10; },
164
+ }, children: isLoadingAllDomain ? ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsx)(material_1.Box, { sx: {
165
+ width: function (t) { return t.spacing(60); },
166
+ }, children: (0, jsx_runtime_1.jsx)(AWING_1.CircularProgress, {}) }) })) : ((0, jsx_runtime_1.jsxs)(material_1.List, { className: classes.drawer, children: [(0, jsx_runtime_1.jsx)(material_1.ListItem, { component: "div", children: (0, jsx_runtime_1.jsx)(material_1.TextField, { fullWidth: true, placeholder: translationText.searchPlaceholder, inputProps: { 'aria-label': 'search' }, InputProps: {
167
+ startAdornment: (0, jsx_runtime_1.jsx)(icons_material_1.Search, {}),
168
+ }, onChange: function (e) { return handleSearch(e.target.value); } }) }), (0, jsx_runtime_1.jsx)(material_1.Divider, {}), allDomain &&
169
+ allDomain
170
+ .filter(function (d) {
171
+ return d.name
172
+ .toLowerCase()
173
+ .includes(searchDomainString.toLowerCase());
174
+ })
175
+ .sort(function (a, b) {
176
+ return a.name !== b.name
177
+ ? a.name < b.name
178
+ ? -1
179
+ : 1
180
+ : 0;
181
+ })
182
+ .map(function (domain) { return ((0, jsx_runtime_1.jsxs)(material_1.ListItem, { button: true, onClick: function (e) {
183
+ return handlePreviewDomain(e, domain.domainId);
184
+ }, children: [(0, jsx_runtime_1.jsx)(material_1.ListItemText, { primary: domain.name }), (0, jsx_runtime_1.jsx)(material_1.ListItemSecondaryAction, { children: (0, jsx_runtime_1.jsx)(material_1.Tooltip, { title: translationText.copyToClipboard, placement: "left", arrow: true, children: (0, jsx_runtime_1.jsx)(material_1.IconButton, { edge: "end", onClick: function (e) {
185
+ return handlePreviewDomain(e, domain.domainId);
186
+ }, children: (0, jsx_runtime_1.jsx)(icons_material_1.VisibilityOutlined, { fontSize: "small" }) }) }) })] }, domain.domainId)); })] })) })] }));
187
+ };
188
+ exports.default = PreviewCampaignContainer;
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ interface DomainPreviewProps {
3
+ handlePreviewPage: (e: React.MouseEvent<HTMLSpanElement, any>) => void;
4
+ isSelectDomain?: boolean;
5
+ }
6
+ declare const DomainPreview: React.FC<DomainPreviewProps>;
7
+ export default DomainPreview;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var jsx_runtime_1 = require("react/jsx-runtime");
4
+ var icons_material_1 = require("@mui/icons-material");
5
+ var material_1 = require("@mui/material");
6
+ var DomainPreview = function (_a) {
7
+ var handlePreviewPage = _a.handlePreviewPage, isSelectDomain = _a.isSelectDomain;
8
+ return isSelectDomain ? ((0, jsx_runtime_1.jsxs)(material_1.Typography, { component: 'p', sx: { display: 'flex' }, children: [(0, jsx_runtime_1.jsx)(icons_material_1.VisibilityOutlined, {}), (0, jsx_runtime_1.jsx)(material_1.Typography, { component: 'span', "aria-label": "more", "aria-controls": "long-menu", "aria-haspopup": "true", onClick: handlePreviewPage, sx: { height: '20px' }, children: (0, jsx_runtime_1.jsx)(icons_material_1.ArrowDropDown, { fontSize: "small" }) })] })) : ((0, jsx_runtime_1.jsx)(icons_material_1.VisibilityOutlined, {}));
9
+ };
10
+ exports.default = DomainPreview;
@@ -0,0 +1,7 @@
1
+ export declare const CREATE_PATH = "Create";
2
+ export declare const IMPORT_PATH = "Import";
3
+ export declare const EDIT_PATH = "Edit";
4
+ export declare const CLONE_PATH = "Clone";
5
+ export declare const DEBOUNCE_TIME = 700;
6
+ export declare const DEBOUNCE_TIME_500 = 500;
7
+ export declare const DEBOUNCE_TIME_300 = 300;