awing-library 2.1.145-beta → 2.1.145

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 (213) hide show
  1. package/lib/ACM-AXN/AuthenticationProfile/Container.js +4 -4
  2. package/lib/ACM-AXN/AuthenticationProfile/CreateOrEdit/index.js +2 -2
  3. package/lib/ACM-AXN/Campaign/Container.js +52 -54
  4. package/lib/ACM-AXN/Campaign/Container.test.js +1 -3
  5. package/lib/ACM-AXN/Campaign/CreateOrEdit/Recoils.d.ts +8 -1
  6. package/lib/ACM-AXN/Campaign/CreateOrEdit/Recoils.js +27 -3
  7. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RowTable.d.ts +17 -0
  8. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RowTable.js +121 -0
  9. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RowTable.test.d.ts +1 -0
  10. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RowTable.test.js +219 -0
  11. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RunInBackground.d.ts +2 -0
  12. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RunInBackground.js +306 -0
  13. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RunInBackground.test.d.ts +1 -0
  14. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RunInBackground.test.js +230 -0
  15. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/index.d.ts +1 -0
  16. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/index.js +123 -0
  17. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/index.test.d.ts +1 -0
  18. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/index.test.js +253 -0
  19. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabInfomation.js +21 -5
  20. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabPartner.d.ts +1 -1
  21. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabPartner.js +47 -78
  22. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/ChartWithType.d.ts +2 -1
  23. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/ChartWithType.js +2 -2
  24. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/Detail/ControlPanel.js +2 -1
  25. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/Detail/index.js +2 -1
  26. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/Utils.d.ts +19 -42
  27. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/Utils.js +298 -96
  28. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/container.d.ts +3 -0
  29. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/container.js +119 -54
  30. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/ChartFilter.d.ts +1 -1
  31. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/ChartFilter.js +46 -8
  32. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Customer/component.js +8 -6
  33. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Customer/container.js +1 -1
  34. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/PasswordDialog.d.ts +9 -0
  35. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/PasswordDialog.js +56 -0
  36. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/Table.js +5 -1
  37. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/Util.d.ts +12 -0
  38. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/Util.js +23 -8
  39. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/component.js +3 -3
  40. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/container.js +63 -12
  41. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/SplitButtonExportType.d.ts +1 -0
  42. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/SplitButtonExportType.js +17 -4
  43. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Types.d.ts +10 -0
  44. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Utils.js +4 -1
  45. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/common.d.ts +1 -0
  46. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/common.js +3 -2
  47. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/component.js +6 -2
  48. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/container.js +31 -29
  49. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AdList.js +1 -1
  50. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AdRow.js +1 -1
  51. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AddOrEditRule/RuleForm/TargetOS/container.js +2 -2
  52. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/Advanced.js +1 -1
  53. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/EditAds.js +5 -5
  54. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/SubCampaignDetail.js +44 -33
  55. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/SubCampaignDetail.test.js +3 -13
  56. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/SubCampaignList.js +45 -20
  57. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/atoms.js +3 -2
  58. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/index.js +3 -2
  59. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/useSearchPage.js +33 -8
  60. package/lib/ACM-AXN/Campaign/CreateOrEdit/index.d.ts +5 -1
  61. package/lib/ACM-AXN/Campaign/CreateOrEdit/index.js +172 -59
  62. package/lib/ACM-AXN/Campaign/Enum.d.ts +24 -6
  63. package/lib/ACM-AXN/Campaign/Enum.js +30 -11
  64. package/lib/ACM-AXN/Campaign/Types.d.ts +53 -5
  65. package/lib/ACM-AXN/Campaign/Utils.d.ts +6 -1
  66. package/lib/ACM-AXN/Campaign/Utils.js +50 -3
  67. package/lib/ACM-AXN/Campaign/index.js +2 -2
  68. package/lib/ACM-AXN/CampaignPlan/Container.js +4 -6
  69. package/lib/ACM-AXN/CampaignPlan/Detail.js +3 -3
  70. package/lib/ACM-AXN/CampaignPlan/Filter.js +3 -3
  71. package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/Filter.js +14 -10
  72. package/lib/ACM-AXN/CampaignSchedule/Components/EnhancedPagination/index.js +3 -2
  73. package/lib/ACM-AXN/CampaignSchedule/Components/RowAdvance/component.js +6 -4
  74. package/lib/ACM-AXN/CampaignSchedule/DataConfig.js +4 -4
  75. package/lib/ACM-AXN/CampaignSchedule/DataConfigAXN.js +5 -4
  76. package/lib/ACM-AXN/CampaignSchedule/Recoil/Atom.d.ts +1 -2
  77. package/lib/ACM-AXN/CampaignSchedule/Recoil/Atom.js +1 -5
  78. package/lib/ACM-AXN/Common/Constant.d.ts +3 -0
  79. package/lib/ACM-AXN/Common/Constant.js +2 -0
  80. package/lib/ACM-AXN/Common/Enum.d.ts +8 -3
  81. package/lib/ACM-AXN/Common/Enum.js +19 -4
  82. package/lib/ACM-AXN/Common/Types.d.ts +5 -0
  83. package/lib/ACM-AXN/GeoFencing/GoongMap/index.d.ts +8 -9
  84. package/lib/ACM-AXN/GeoFencing/component.js +7 -7
  85. package/lib/ACM-AXN/GeoFencing/interface.d.ts +1 -2
  86. package/lib/ACM-AXN/Holiday/FormHoliday.js +1 -0
  87. package/lib/ACM-AXN/Notifications/NotificationPopover/Container.d.ts +0 -5
  88. package/lib/ACM-AXN/Notifications/NotificationPopover/Container.js +7 -90
  89. package/lib/ACM-AXN/Notifications/NotificationPopover/index.d.ts +0 -5
  90. package/lib/ACM-AXN/Notifications/Types.d.ts +2 -0
  91. package/lib/ACM-AXN/Page/Constant.js +2 -0
  92. package/lib/ACM-AXN/Page/Container.js +3 -3
  93. package/lib/ACM-AXN/Page/CreateOrEdit/ListenTemplate.d.ts +6 -0
  94. package/lib/ACM-AXN/Page/CreateOrEdit/ListenTemplate.js +63 -0
  95. package/lib/ACM-AXN/Page/CreateOrEdit/Recoil.d.ts +11 -2
  96. package/lib/ACM-AXN/Page/CreateOrEdit/Recoil.js +16 -12
  97. package/lib/ACM-AXN/Page/CreateOrEdit/TabInfo/TrackingCode.js +1 -1
  98. package/lib/ACM-AXN/Page/CreateOrEdit/TabInfo/Utils.js +1 -1
  99. package/lib/ACM-AXN/Page/CreateOrEdit/TabInfo/index.js +1 -0
  100. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/Components/Panel.d.ts +1 -9
  101. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/Components/Panel.js +0 -9
  102. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewContent.js +11 -44
  103. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewInfo.d.ts +2 -3
  104. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewInfo.js +39 -61
  105. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/index.js +29 -32
  106. package/lib/ACM-AXN/Page/CreateOrEdit/Utils.js +6 -6
  107. package/lib/ACM-AXN/Page/CreateOrEdit/index.js +19 -4
  108. package/lib/ACM-AXN/Page/Import/index.js +2 -2
  109. package/lib/ACM-AXN/Page/Types.d.ts +3 -0
  110. package/lib/ACM-AXN/Page/enums.d.ts +5 -0
  111. package/lib/ACM-AXN/Page/enums.js +7 -1
  112. package/lib/ACM-AXN/Permission/Components/Styles.d.ts +1 -2
  113. package/lib/ACM-AXN/PlaceFilter/DataTable/component/index.js +2 -5
  114. package/lib/ACM-AXN/PlaceFilter/Input/component/index.js +1 -2
  115. package/lib/ACM-AXN/PlaceFilter/Tag/component/TagChip.js +1 -1
  116. package/lib/ACM-AXN/PlaceFilter/interface.d.ts +1 -0
  117. package/lib/ACM-AXN/ScheduleCompletionRate/Container.js +16 -16
  118. package/lib/ACM-AXN/ScheduleCompletionRate/DataSetConfig.d.ts +14 -9
  119. package/lib/ACM-AXN/ScheduleCompletionRate/DataSetConfig.js +19 -18
  120. package/lib/ACM-AXN/ScheduleCompletionRate/Detail/CompletionRate.js +16 -6
  121. package/lib/ACM-AXN/ScheduleCompletionRate/Detail/CompletionRateDate.js +17 -10
  122. package/lib/ACM-AXN/ScheduleCompletionRate/Filter.d.ts +2 -1
  123. package/lib/ACM-AXN/ScheduleCompletionRate/Filter.js +30 -51
  124. package/lib/ACM-AXN/ScheduleCompletionRate/Filter.test.js +1 -1
  125. package/lib/ACM-AXN/ScheduleCompletionRate/SearchCampaign.d.ts +2 -2
  126. package/lib/ACM-AXN/ScheduleCompletionRate/SearchCampaign.js +3 -9
  127. package/lib/ACM-AXN/ScheduleCompletionRate/Types.d.ts +16 -36
  128. package/lib/ACM-AXN/ScheduleCompletionRate/Utils.d.ts +5 -5
  129. package/lib/ACM-AXN/ScheduleCompletionRate/Utils.js +13 -10
  130. package/lib/ACM-AXN/Statistics/ControlPanel.js +17 -5
  131. package/lib/ACM-AXN/Statistics/Enums.d.ts +2 -1
  132. package/lib/ACM-AXN/Statistics/Enums.js +1 -0
  133. package/lib/ACM-AXN/StatisticsAudienceDemographic/Tabs/AgeRange.js +1 -0
  134. package/lib/ACM-AXN/StatisticsByProvince/DataTable.js +1 -1
  135. package/lib/ACM-AXN/TaskScheduler/CreateOrEdit.js +4 -4
  136. package/lib/ACM-AXN/Template/Container.js +2 -2
  137. package/lib/ACM-AXN/Template/CreateOrEdit/Recoils.d.ts +1 -0
  138. package/lib/ACM-AXN/Template/CreateOrEdit/Recoils.js +5 -1
  139. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Parameter.d.ts +2 -2
  140. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Parameter.js +56 -37
  141. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Parameter.test.d.ts +1 -1
  142. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Parameter.test.js +62 -51
  143. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Utils.d.ts +28 -4
  144. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Utils.js +43 -15
  145. package/lib/ACM-AXN/Template/CreateOrEdit/index.js +8 -4
  146. package/lib/ACM-AXN/Template/Import.js +2 -2
  147. package/lib/ACM-AXN/Template/Types.d.ts +9 -9
  148. package/lib/ACM-AXN/TransactionLog/Detail.js +1 -1
  149. package/lib/ACM-AXN/ViewTemplate/Preview.js +5 -6
  150. package/lib/ACM-AXN/ViewTemplate/TemplateField/Event.js +23 -11
  151. package/lib/ACM-AXN/ViewTemplate/TemplateField/Fields/BasicField/Utils.d.ts +18 -0
  152. package/lib/ACM-AXN/ViewTemplate/TemplateField/Fields/BasicField/Utils.js +170 -0
  153. package/lib/ACM-AXN/ViewTemplate/TemplateField/Fields/BasicField/index.js +42 -129
  154. package/lib/ACM-AXN/ViewTemplate/common.d.ts +2 -1
  155. package/lib/ACM-AXN/ViewTemplate/common.js +47 -7
  156. package/lib/ACM-AXN/ViewTemplate/container.js +8 -2
  157. package/lib/ACM-AXN/Wizard/CreateOrEdit/PageTemplate.d.ts +3 -1
  158. package/lib/ACM-AXN/Wizard/CreateOrEdit/PageTemplate.js +18 -28
  159. package/lib/ACM-AXN/Wizard/CreateOrEdit/PageTemplate.test.js +2 -0
  160. package/lib/ACM-AXN/Wizard/CreateOrEdit/RowTemplate.js +1 -1
  161. package/lib/ACM-AXN/Wizard/CreateOrEdit/index.js +17 -1
  162. package/lib/ACM-AXN/index.d.ts +1 -0
  163. package/lib/ACM-AXN/index.js +1 -0
  164. package/lib/AWING/AsyncAutocomplete/index.js +2 -2
  165. package/lib/AWING/BasicDataForm/BasicDataForm.js +9 -6
  166. package/lib/AWING/BasicDataForm/interface.d.ts +3 -0
  167. package/lib/AWING/Chart/BarLineComponent.js +20 -24
  168. package/lib/AWING/Chart/PieComponent.d.ts +3 -4
  169. package/lib/AWING/Chart/PieComponent.js +16 -16
  170. package/lib/AWING/Chart/Styles.js +51 -16
  171. package/lib/AWING/DataForm/DataInput.js +105 -23
  172. package/lib/AWING/DataForm/interface.d.ts +2 -0
  173. package/lib/AWING/DataGrid/index.js +8 -13
  174. package/lib/AWING/DateRangePicker/component.js +80 -32
  175. package/lib/AWING/DateRangePicker/configDate.d.ts +1 -2
  176. package/lib/AWING/DateRangePicker/configDate.js +12 -12
  177. package/lib/AWING/DateRangePicker/interface.d.ts +1 -0
  178. package/lib/AWING/Form/useForm.js +3 -2
  179. package/lib/AWING/GoogleMap/GGMap.d.ts +3 -0
  180. package/lib/AWING/GoogleMap/GGMap.js +256 -0
  181. package/lib/AWING/GoogleMap/index.d.ts +4 -0
  182. package/lib/AWING/GoogleMap/index.js +41 -0
  183. package/lib/AWING/GoogleMap/interface.d.ts +21 -0
  184. package/lib/AWING/GoogleMap/interface.js +2 -0
  185. package/lib/AWING/GoogleMap/utils.d.ts +25 -0
  186. package/lib/AWING/GoogleMap/utils.js +135 -0
  187. package/lib/AWING/GroupTable/GroupTable.js +2 -2
  188. package/lib/AWING/GroupTable/component.d.ts +1 -0
  189. package/lib/AWING/GroupTable/component.js +2 -2
  190. package/lib/AWING/NumberFormat/index.d.ts +3 -1
  191. package/lib/AWING/NumberFormat/index.js +2 -2
  192. package/lib/AWING/PageManagement/PageManagement.js +4 -3
  193. package/lib/AWING/Pagination/index.js +11 -3
  194. package/lib/AWING/index.d.ts +1 -0
  195. package/lib/AWING/index.js +1 -0
  196. package/lib/AWING/ultis/validation.d.ts +1 -0
  197. package/lib/AWING/ultis/validation.js +25 -6
  198. package/lib/Commons/Components/ClassicDrawer.js +5 -4
  199. package/lib/Commons/Components/HighlightedCode/MarkdownElement.js +6 -1
  200. package/lib/Commons/Hooks/usePath.js +3 -3
  201. package/lib/Utils/Helpers.d.ts +3 -2
  202. package/lib/Utils/Helpers.js +50 -14
  203. package/lib/i18n.js +31 -2
  204. package/lib/translate/en/translation.json +131 -71
  205. package/lib/translate/id/translation.json +893 -0
  206. package/lib/translate/ind/translation.json +893 -0
  207. package/lib/translate/ja/translation.json +893 -0
  208. package/lib/translate/lao/translation.json +893 -0
  209. package/lib/translate/mys/translation.json +893 -0
  210. package/lib/translate/phl/translation.json +893 -0
  211. package/lib/translate/th/translation.json +893 -0
  212. package/lib/translate/vi/translation.json +91 -31
  213. package/package.json +9 -4
@@ -34,18 +34,18 @@ function Container() {
34
34
  return ((0, jsx_runtime_1.jsx)(AWING_1.PageManagement, { title: t('AuthenticationProfile.Title'), inputSearchPlaceholder: t('AuthenticationProfile.SearchPlaceholder'), onChangeQueryInput: getAuthenticationProfile, getRowId: function (obj) { return obj.authenticationProfileId; }, columns: [
35
35
  {
36
36
  field: 'authenticationProfileId',
37
- headerName: 'STT',
37
+ headerName: '#',
38
38
  width: 60,
39
39
  valueGetter: function (_unUse, idx, stt) { return stt; },
40
40
  },
41
41
  {
42
42
  field: 'authenticationMethodCode',
43
- headerName: 'Method Code',
43
+ headerName: t('AuthenticationProfile.MethodCode'),
44
44
  width: 130,
45
45
  },
46
46
  {
47
47
  field: 'apControllerCode',
48
- headerName: (0, jsx_runtime_1.jsx)("b", { children: "AP Controller Code" }),
48
+ headerName: t('AuthenticationProfile.APControllerCode'),
49
49
  width: 170,
50
50
  valueGetter: function (row) {
51
51
  return row.apControllerCode === Utils_1.AP_CONTROLLER_CODE.All ||
@@ -66,7 +66,7 @@ function Container() {
66
66
  },
67
67
  {
68
68
  field: 'parameters',
69
- headerName: 'Params',
69
+ headerName: t('AuthenticationProfile.Params'),
70
70
  dynamicTableCellProps: function () {
71
71
  return {
72
72
  style: { wordBreak: 'break-all' },
@@ -76,7 +76,7 @@ var CreateOrEdit = function () {
76
76
  {
77
77
  fieldName: 'authenticationMethodCode',
78
78
  type: 'autocomplete',
79
- label: 'Authentication Method code',
79
+ label: t('AuthenticationProfile.MethodCode'),
80
80
  required: true,
81
81
  defaultValue: Utils_1.AUTHENTICATION_METHOD_CODE.MethodByLocalAP,
82
82
  options: Object.entries(Utils_1.AUTHENTICATION_METHOD_CODE).map(function (_a) {
@@ -90,7 +90,7 @@ var CreateOrEdit = function () {
90
90
  {
91
91
  fieldName: 'apControllerCode',
92
92
  type: 'autocomplete',
93
- label: 'AP Controller Code',
93
+ label: t('AuthenticationProfile.APControllerCode'),
94
94
  required: true,
95
95
  options: apControllers,
96
96
  defaultValue: null,
@@ -26,18 +26,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
26
26
  var jsx_runtime_1 = require("react/jsx-runtime");
27
27
  var icons_material_1 = require("@mui/icons-material");
28
28
  var material_1 = require("@mui/material");
29
- var AWING_1 = require("../../AWING");
29
+ var Constant_1 = require("../../ACM-AXN/Common/Constant");
30
30
  var lodash_1 = require("lodash");
31
31
  var react_1 = require("react");
32
32
  var react_i18next_1 = require("react-i18next");
33
+ var AWING_1 = require("../../AWING");
33
34
  var Router_1 = require("../../AWING/Router");
34
- var Utils_1 = require("./Utils");
35
- var Hooks_1 = __importDefault(require("./Hooks"));
36
- var Enum_1 = require("./Enum");
37
35
  var CopyButton_1 = __importDefault(require("../../Commons/Components/CopyButton"));
38
- var Helpers_1 = require("../../Utils/Helpers");
39
- var Constant_1 = require("../../ACM-AXN/Common/Constant");
40
36
  var Context_1 = require("../../Context");
37
+ var Helpers_1 = require("../../Utils/Helpers");
38
+ var Enum_1 = require("./Enum");
39
+ var Hooks_1 = __importDefault(require("./Hooks"));
40
+ var Utils_1 = require("./Utils");
41
41
  var CampaignContainer = function () {
42
42
  var _a;
43
43
  var t = (0, react_i18next_1.useTranslation)().t;
@@ -50,7 +50,7 @@ var CampaignContainer = function () {
50
50
  var _e = (0, react_1.useState)(), listCampaign = _e[0], setListCampaign = _e[1];
51
51
  var _f = (0, react_1.useState)(true), loading = _f[0], setLoading = _f[1];
52
52
  (0, react_1.useEffect)(function () {
53
- if (location.pathname.endsWith(Constant_1.Constants.CAMPAIGN_PATH)) {
53
+ if (location.pathname.endsWith("/" + Constant_1.Constants.CAMPAIGN_PATH)) {
54
54
  fetchDirectories();
55
55
  }
56
56
  // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -63,7 +63,7 @@ var CampaignContainer = function () {
63
63
  var getCampaign = (0, react_1.useCallback)(function (params) {
64
64
  var advancedObject = params.advancedObject, id = params.id, searchString = params.searchString, pageIndex = params.pageIndex, pageSize = params.pageSize;
65
65
  setCollapseId([]);
66
- var _a = advancedObject || {}, directoryId = _a.directoryId, isReserved = _a.isReserved, priority = _a.priority, status = _a.status, type = _a.type;
66
+ var _a = advancedObject || {}, directoryId = _a.directoryId, priority = _a.priority, status = _a.status, type = _a.type;
67
67
  var startDate = '';
68
68
  var endDate = '';
69
69
  if (advancedObject === null || advancedObject === void 0 ? void 0 : advancedObject.date) {
@@ -80,10 +80,9 @@ var CampaignContainer = function () {
80
80
  endDate: endDate,
81
81
  pageIndex: pageIndex,
82
82
  pageSize: pageSize,
83
- isReserved: isReserved,
84
83
  // placeIds: ,
85
84
  priorities: priority && [priority],
86
- status: status && [status],
85
+ status: status !== undefined ? [status] : undefined,
87
86
  types: type && [type],
88
87
  })
89
88
  .then(setListCampaign)
@@ -118,6 +117,42 @@ var CampaignContainer = function () {
118
117
  var handleDelete = function (id) {
119
118
  return service.campaignsDelete(id);
120
119
  };
120
+ var renderStatus = function (row) {
121
+ var _a;
122
+ var statusConfig = (_a = {},
123
+ _a[Enum_1.CampaignStatus.Draft] = {
124
+ label: 'Campaign.Status.Draft',
125
+ color: Enum_1.ColorCampaignStatus.Draft
126
+ },
127
+ _a[Enum_1.CampaignStatus.Reserved] = {
128
+ label: 'Campaign.Status.Reserved',
129
+ color: Enum_1.ColorCampaignStatus.Reserved
130
+ },
131
+ _a[Enum_1.CampaignStatus.Pending] = {
132
+ label: 'Campaign.Status.Pending',
133
+ color: Enum_1.ColorCampaignStatus.UnderApproval
134
+ },
135
+ _a[Enum_1.CampaignStatus.Active] = {
136
+ label: 'Campaign.Status.Active',
137
+ color: function (row) { return (0, Utils_1.checkCampaignIsRunning)(row) ? Enum_1.ColorCampaignStatus.Active : Enum_1.ColorCampaignStatus.UnActive; }
138
+ },
139
+ _a[Enum_1.CampaignStatus.Done] = {
140
+ label: 'Campaign.Status.Done',
141
+ color: Enum_1.ColorCampaignStatus.Done
142
+ },
143
+ _a);
144
+ var status = row === null || row === void 0 ? void 0 : row.campaignGroup.status;
145
+ var config = statusConfig[status];
146
+ if (!config)
147
+ return null;
148
+ return ((0, jsx_runtime_1.jsx)(material_1.Chip, { label: t(config.label), style: {
149
+ height: 18,
150
+ backgroundColor: typeof config.color === 'function' ? config.color(row) : config.color,
151
+ color: 'white',
152
+ marginBottom: '4px',
153
+ marginLeft: '4px'
154
+ } }));
155
+ };
121
156
  return ((0, jsx_runtime_1.jsx)(material_1.Box, { sx: {
122
157
  '& tr[data-row="sub-row"]': {
123
158
  cursor: 'default!important',
@@ -129,19 +164,17 @@ var CampaignContainer = function () {
129
164
  label: t('Campaign.DateRange'),
130
165
  type: 'date-range',
131
166
  icon: (0, jsx_runtime_1.jsx)(icons_material_1.Event, { fontSize: "small" }),
167
+ isShowCalendarInfo: true,
132
168
  },
133
169
  {
134
170
  fieldName: 'status',
135
171
  label: t('Campaign.AdvanceSearchStatus'),
136
172
  type: 'autocomplete',
137
173
  icon: (0, jsx_runtime_1.jsx)(icons_material_1.Place, { fontSize: "small" }),
138
- options: Object.entries(Enum_1.CAMPAIGN_STATUS).map(function (_a) {
139
- var key = _a[0], value = _a[1];
140
- return ({
141
- value: value,
142
- text: t(['Campaign', key].join('.')),
143
- });
144
- }),
174
+ options: (0, Utils_1.getCampaignStatus)(!Boolean(service.attributesGetByObjectTypeCode)).map(function (item) { return ({
175
+ value: item.value,
176
+ text: t(['Campaign.Status', item.key].join('.')),
177
+ }); }),
145
178
  },
146
179
  {
147
180
  fieldName: 'priority',
@@ -169,22 +202,6 @@ var CampaignContainer = function () {
169
202
  });
170
203
  }),
171
204
  },
172
- {
173
- fieldName: 'isReserved',
174
- label: t('Campaign.AdvanceSearchType'),
175
- type: 'autocomplete',
176
- icon: (0, jsx_runtime_1.jsx)(icons_material_1.BookmarkBorder, { fontSize: "small" }),
177
- options: [
178
- {
179
- value: true,
180
- text: t('Campaign.Reserved'),
181
- },
182
- {
183
- value: false,
184
- text: t('Campaign.NoneReserved'),
185
- },
186
- ],
187
- },
188
205
  {
189
206
  fieldName: 'directoryId',
190
207
  label: t('Common.Directory'),
@@ -225,31 +242,12 @@ var CampaignContainer = function () {
225
242
  : icons_material_1.KeyboardArrowDown }) })] }));
226
243
  }
227
244
  else {
228
- return ((0, jsx_runtime_1.jsxs)(material_1.Box, { style: { paddingLeft: '32px' }, children: [(0, jsx_runtime_1.jsx)("span", { children: row === null || row === void 0 ? void 0 : row.campaignGroup.name }), (row === null || row === void 0 ? void 0 : row.campaignGroup.ticket) ===
229
- Enum_1.ACTIVE_CAMPAIGN_TICKET ? ((0, jsx_runtime_1.jsx)(icons_material_1.CheckCircle, { fontSize: 'small', sx: {
230
- paddingLeft: '4px',
231
- marginBottom: '-4px',
232
- }, style: {
233
- color: (0, Utils_1.checkCampaignIsRunning)(row)
234
- ? '#008000'
235
- : '#8D8D8D',
236
- } })) : ((0, jsx_runtime_1.jsx)(icons_material_1.RemoveCircle, { fontSize: 'small', sx: {
237
- paddingLeft: '4px',
238
- marginBottom: '-4px',
239
- }, color: "primary" })), (0, jsx_runtime_1.jsx)(material_1.Typography, { component: 'span', sx: {
245
+ return ((0, jsx_runtime_1.jsxs)(material_1.Box, { style: { paddingLeft: '32px' }, children: [(0, jsx_runtime_1.jsx)("span", { children: row === null || row === void 0 ? void 0 : row.campaignGroup.name }), (0, jsx_runtime_1.jsx)(material_1.Typography, { component: 'span', sx: {
240
246
  color: '#000',
241
247
  fontSize: '1.1rem',
242
248
  marginLeft: '8px',
243
249
  fontFamily: '"Segoe UI Symbol", "Apple Symbols", "Noto Sans Symbols 2" !important',
244
- }, children: (0, Utils_1.getCampaignPriority)(row === null || row === void 0 ? void 0 : row.campaignGroup.priority) }),
245
- //Check trong ads có bất kỳ ad nào isReverved
246
- (row === null || row === void 0 ? void 0 : row.campaignGroup.isReserved) && ((0, jsx_runtime_1.jsx)(material_1.Chip, { sx: {
247
- backgroundColor: '#c49f47',
248
- color: '#fff',
249
- height: '18px',
250
- marginBottom: '.1rem',
251
- marginLeft: '4px',
252
- }, size: "small", label: t('Campaign.Reserved') }))] }));
250
+ }, children: (0, Utils_1.getCampaignPriority)(row === null || row === void 0 ? void 0 : row.campaignGroup.priority) }), renderStatus(row)] }));
253
251
  }
254
252
  },
255
253
  },
@@ -85,11 +85,10 @@ var resData = {
85
85
  id: 1,
86
86
  campaignId: '5111120384159200990',
87
87
  name: 'Lotusa',
88
- ticket: 1,
88
+ status: 1,
89
89
  priority: 0,
90
90
  bookingAmount: 0,
91
91
  bonusAmount: 0,
92
- isReserved: false,
93
92
  },
94
93
  ads: [
95
94
  {
@@ -250,7 +249,6 @@ jest.mock('AWING/PageManagement', function () { return ({
250
249
  props.onChangeQueryInput({
251
250
  advancedObject: {
252
251
  status: '0',
253
- isReserved: true,
254
252
  priority: '0',
255
253
  type: '1',
256
254
  directoryId: '4684432198852342857',
@@ -1,8 +1,10 @@
1
- import { CampaignModel, Directory, CampaignGroupModel, Attribute } from '../Types';
1
+ import { CampaignModel, Directory, CampaignGroupModel, Attribute, ICampaignApprovalTable } from '../Types';
2
2
  import { WeightContainerProps } from './TabSubCampaign/Weight';
3
+ import { MenuOption } from '../../../AWING';
3
4
  export declare const directoriesState: import("recoil").RecoilState<Directory[]>;
4
5
  export declare const attributesState: import("recoil").RecoilState<Attribute[]>;
5
6
  export declare const isCreateState: import("recoil").RecoilState<boolean>;
7
+ export declare const campaignApprovalTableState: import("recoil").RecoilState<ICampaignApprovalTable[]>;
6
8
  /**
7
9
  * Đánh dấu việc cần xác nhận lại trước khi đóng (set thành true khi có bất kỳ chỉnh sửa campaign nào)
8
10
  */
@@ -19,6 +21,10 @@ export declare const campaignState: import("recoil").RecoilState<import("../Type
19
21
  * State lưu thông tin của CampaignAttributes
20
22
  */
21
23
  export declare const campaignAttributesState: import("recoil").RecoilState<import("../Types").CampaignAttribute[]>;
24
+ /**
25
+ * State lưu thông tin của CampaignApproval
26
+ */
27
+ export declare const campaignApprovalState: import("recoil").RecoilState<import("../Types").CampaignApproval[] | undefined>;
22
28
  /**
23
29
  * State lưu thông tin của chiến dịch con
24
30
  */
@@ -48,3 +54,4 @@ export declare const readyForSubmitState: import("recoil").RecoilValueReadOnly<b
48
54
  * Nếu Weight render trong AdRow thì sẽ không đóng được DateRangePicker
49
55
  */
50
56
  export declare const weightState: import("recoil").RecoilState<WeightContainerProps>;
57
+ export declare const cacheSearchPageState: import("recoil").RecoilState<Record<string, MenuOption[]>>;
@@ -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.weightState = exports.readyForSubmitState = exports.tabPartnerValidState = exports.tabSubCampaignValidState = exports.tabInfomationValidState = exports.campaignPartnerState = exports.campaignGroupsState = exports.campaignAttributesState = exports.campaignState = exports.campaignModelState = exports.confirmExitState = exports.isCreateState = exports.attributesState = exports.directoriesState = void 0;
14
+ exports.cacheSearchPageState = exports.weightState = exports.readyForSubmitState = exports.tabPartnerValidState = exports.tabSubCampaignValidState = exports.tabInfomationValidState = exports.campaignPartnerState = exports.campaignGroupsState = exports.campaignApprovalState = exports.campaignAttributesState = exports.campaignState = exports.campaignModelState = exports.confirmExitState = exports.campaignApprovalTableState = exports.isCreateState = exports.attributesState = exports.directoriesState = void 0;
15
15
  var recoil_1 = require("recoil");
16
16
  var Utils_1 = require("../Utils");
17
17
  var atoms_1 = require("./TabSubCampaign/atoms");
@@ -28,6 +28,10 @@ exports.isCreateState = (0, recoil_1.atom)({
28
28
  key: 'isCreateState',
29
29
  default: false,
30
30
  });
31
+ exports.campaignApprovalTableState = (0, recoil_1.atom)({
32
+ key: 'campaignApprovalTableState',
33
+ default: [],
34
+ });
31
35
  /**
32
36
  * Đánh dấu việc cần xác nhận lại trước khi đóng (set thành true khi có bất kỳ chỉnh sửa campaign nào)
33
37
  */
@@ -52,10 +56,9 @@ exports.campaignModelState = (0, recoil_1.atom)({
52
56
  id: 1,
53
57
  name: 'Sub-Campaign 1',
54
58
  priority: (0, Utils_1.getIndexPriority)(Enum_1.CampaignPriority.ClassB),
55
- ticket: Enum_1.CampaignTicket.INACTIVE,
59
+ status: Enum_1.CampaignStatus.Draft,
56
60
  bookingAmount: 10,
57
61
  bonusAmount: 0,
58
- isReserved: false,
59
62
  billingUnit: 1,
60
63
  },
61
64
  ads: [],
@@ -103,6 +106,23 @@ exports.campaignAttributesState = (0, recoil_1.selector)({
103
106
  set(exports.confirmExitState, true);
104
107
  }
105
108
  });
109
+ /**
110
+ * State lưu thông tin của CampaignApproval
111
+ */
112
+ exports.campaignApprovalState = (0, recoil_1.selector)({
113
+ key: 'campaignApproval',
114
+ get: function (_a) {
115
+ var get = _a.get;
116
+ var campaignModel = get(exports.campaignModelState);
117
+ return campaignModel.campaignApprovals;
118
+ },
119
+ set: function (_a, campaignApprovals) {
120
+ var set = _a.set, get = _a.get;
121
+ var campaignModel = get(exports.campaignModelState);
122
+ set(exports.campaignModelState, campaignApprovals instanceof recoil_1.DefaultValue ?
123
+ campaignApprovals : __assign(__assign({}, campaignModel), { campaignApprovals: campaignApprovals }));
124
+ }
125
+ });
106
126
  /**
107
127
  * State lưu thông tin của chiến dịch con
108
128
  */
@@ -207,3 +227,7 @@ exports.weightState = (0, recoil_1.atom)({
207
227
  isOpen: false,
208
228
  }
209
229
  });
230
+ exports.cacheSearchPageState = (0, recoil_1.atom)({
231
+ key: 'cacheSearchPageState',
232
+ default: {},
233
+ });
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ import { ICampaignApprovalSubRow, ICampaignApprovalTable, ICampaignApprovalTableRow } from '../../../../ACM-AXN/Campaign/Types';
3
+ interface TableRowProps {
4
+ row: ICampaignApprovalTable;
5
+ link: ICampaignApprovalTableRow;
6
+ sub: ICampaignApprovalSubRow;
7
+ linkIndex: number;
8
+ subIndex: number;
9
+ rowSelected: string[];
10
+ handleRowSelect: (id: string) => void;
11
+ updateRow: (dataTableUpdate: {
12
+ status: number;
13
+ description: string;
14
+ }, rowId: string, linkId: string) => void;
15
+ }
16
+ declare const TableRowMemo: React.FC<TableRowProps>;
17
+ export default TableRowMemo;
@@ -0,0 +1,121 @@
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 react_1 = __importStar(require("react"));
28
+ var material_1 = require("@mui/material");
29
+ var Enum_1 = require("../../../../ACM-AXN/Campaign/Enum");
30
+ var react_i18next_1 = require("react-i18next");
31
+ var TableRowMemo = react_1.default.memo(function (_a) {
32
+ var _b, _c, _d;
33
+ var row = _a.row, link = _a.link, sub = _a.sub, linkIndex = _a.linkIndex, subIndex = _a.subIndex, rowSelected = _a.rowSelected, handleRowSelect = _a.handleRowSelect, updateRow = _a.updateRow;
34
+ var isSelect = (_b = link.campaign) === null || _b === void 0 ? void 0 : _b.some(function (campaign) {
35
+ return campaign.subCampaigns.some(function (sub) {
36
+ var _a;
37
+ return ![
38
+ Enum_1.CampaignStatus.Draft,
39
+ Enum_1.CampaignStatus.Reserved,
40
+ Enum_1.CampaignStatus.Done,
41
+ ].includes((_a = sub.status) !== null && _a !== void 0 ? _a : Enum_1.CampaignStatus.Draft);
42
+ });
43
+ });
44
+ var _e = (0, react_1.useState)((_c = link.status) !== null && _c !== void 0 ? _c : Enum_1.CampaignApprovalStatus.Draft), selectStatus = _e[0], setSelectStatus = _e[1];
45
+ var _f = (0, react_1.useState)((_d = link.description) !== null && _d !== void 0 ? _d : ''), valueInput = _f[0], setValueInput = _f[1];
46
+ var t = (0, react_i18next_1.useTranslation)().t;
47
+ var optionsStatus = (0, react_1.useMemo)(function () {
48
+ return [
49
+ {
50
+ value: Enum_1.CampaignApprovalStatus.Draft,
51
+ label: t('Campaign.Approval.Draft'),
52
+ },
53
+ {
54
+ value: Enum_1.CampaignApprovalStatus.PendingApproval,
55
+ label: t('Campaign.Approval.PendingApproval'),
56
+ },
57
+ {
58
+ value: Enum_1.CampaignApprovalStatus.Approval,
59
+ label: t('Campaign.Approval.Approval'),
60
+ },
61
+ {
62
+ value: Enum_1.CampaignApprovalStatus.Rejected,
63
+ label: t('Campaign.Approval.Rejected'),
64
+ },
65
+ ];
66
+ }, []);
67
+ var handleStatusChange = (0, react_1.useCallback)(function (value) {
68
+ var newStatus = value;
69
+ setSelectStatus(newStatus);
70
+ updateRow({
71
+ status: newStatus,
72
+ description: valueInput,
73
+ }, row.id, link.id);
74
+ }, [row, link]);
75
+ var handleInputChange = (0, react_1.useCallback)(function (event) {
76
+ var newValue = event.target.value;
77
+ setValueInput(newValue);
78
+ updateRow({
79
+ status: selectStatus,
80
+ description: newValue,
81
+ }, row.id, link.id);
82
+ }, [row, link]);
83
+ return ((0, jsx_runtime_1.jsxs)(material_1.TableRow, { children: [linkIndex === 0 && subIndex === 0 && ((0, jsx_runtime_1.jsx)(material_1.TableCell, { rowSpan: row.detail.reduce(function (acc, curr) { return acc + curr.campaign.length; }, 0), style: { width: 60, padding: '0 0 0 4px' }, children: (0, jsx_runtime_1.jsx)(material_1.Box, { display: 'flex', children: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { checked: rowSelected.some(function (x) { return x === row.id; }), color: "primary", onChange: function () { return handleRowSelect(row.id); } }) }) })), linkIndex === 0 && subIndex === 0 && ((0, jsx_runtime_1.jsx)(material_1.TableCell, { rowSpan: row.detail.reduce(function (acc, curr) { return acc + curr.campaign.length; }, 0), children: row.domain.domainName })), subIndex === 0 && ((0, jsx_runtime_1.jsx)(material_1.TableCell, { rowSpan: link.campaign.length, style: { maxWidth: 400 }, children: (0, jsx_runtime_1.jsx)(material_1.Box, { sx: {
84
+ display: '-webkit-box',
85
+ WebkitLineClamp: 2,
86
+ WebkitBoxOrient: 'vertical',
87
+ overflow: 'hidden',
88
+ textOverflow: 'ellipsis',
89
+ }, children: (0, jsx_runtime_1.jsx)(material_1.Link, { href: link.linkPreview, sx: {
90
+ wordWrap: 'break-word',
91
+ wordBreak: 'break-all',
92
+ color: 'blue',
93
+ textDecorationColor: 'unset',
94
+ }, underline: "hover", target: "_blank", children: link.linkPreview }) }) })), (0, jsx_runtime_1.jsx)(material_1.TableCell, { children: (0, jsx_runtime_1.jsx)(material_1.Box, { sx: {
95
+ display: 'flex',
96
+ flexWrap: 'wrap',
97
+ gap: '8px',
98
+ }, children: sub.subCampaigns.map(function (subCampaign) { return ((0, jsx_runtime_1.jsx)(material_1.Chip, { label: subCampaign.name }, subCampaign.id)); }) }) }), (0, jsx_runtime_1.jsx)(material_1.TableCell, { children: (0, jsx_runtime_1.jsx)(material_1.Box, { sx: {
99
+ display: 'flex',
100
+ flexWrap: 'wrap',
101
+ gap: '8px',
102
+ }, children: sub.ads.map(function (ad) { return ((0, jsx_runtime_1.jsx)(material_1.Chip, { label: ad.name }, ad.id)); }) }) }), subIndex === 0 && ((0, jsx_runtime_1.jsx)(material_1.TableCell, { rowSpan: link.campaign.length, children: (0, jsx_runtime_1.jsx)(material_1.FormControl, { sx: { width: 150 }, children: (0, jsx_runtime_1.jsx)(material_1.Select, { value: selectStatus, onChange: function (e) {
103
+ return handleStatusChange(e.target.value);
104
+ }, sx: {
105
+ '& .MuiSelect-select': {
106
+ paddingLeft: 'unset !important',
107
+ },
108
+ }, disabled: !isSelect, children: optionsStatus.map(function (item) { return ((0, jsx_runtime_1.jsx)(material_1.MenuItem, { value: item.value, disabled: link.status ===
109
+ Enum_1.CampaignApprovalStatus.Draft
110
+ ? item.value ===
111
+ Enum_1.CampaignApprovalStatus.Rejected
112
+ : item.value !==
113
+ Enum_1.CampaignApprovalStatus.Rejected, children: item.label }, item.value)); }) }) }) })), subIndex === 0 && ((0, jsx_runtime_1.jsx)(material_1.TableCell, { rowSpan: link.campaign.length, width: 200, children: (0, jsx_runtime_1.jsx)(material_1.TextField, { value: valueInput, onChange: handleInputChange, multiline: true, minRows: 2, maxRows: 5, fullWidth: true, sx: {
114
+ '& .MuiInputBase-root': {
115
+ minWidth: '150px',
116
+ paddingLeft: 'unset !important',
117
+ },
118
+ } }) }))] }, "".concat(row.id, "-").concat(linkIndex, "-").concat(subIndex)));
119
+ });
120
+ TableRowMemo.displayName = 'TableRowMemo';
121
+ exports.default = TableRowMemo;