awing-library 2.1.14-beta → 2.1.14
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.
- package/README.md +4 -19
- package/lib/ACM-AXN/Campaign/Container.js +6 -7
- package/lib/ACM-AXN/Campaign/Container.test.js +1 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/Recoils.js +1 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AdDetail.test.js +1 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AdList.js +50 -6
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AdRow.d.ts +5 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AdRow.js +6 -18
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AddOrEditRule/AddOrEditRule.js +7 -12
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AddOrEditRule/RuleForm/RetargetMacAddress/container.d.ts +1 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AddOrEditRule/RuleForm/RetargetMacAddress/container.js +4 -12
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/Advanced.js +16 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/SubCampaignList.test.js +1 -1
- package/lib/ACM-AXN/Campaign/Utils.d.ts +8 -0
- package/lib/ACM-AXN/Campaign/Utils.js +21 -17
- package/lib/ACM-AXN/Campaign/index.js +3 -2
- package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/Filter.d.ts +2 -2
- package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/Filter.js +44 -42
- package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/GroupPanel.d.ts +1 -1
- package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/GroupPanel.js +38 -30
- package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/index.d.ts +2 -2
- package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/index.js +2 -2
- package/lib/ACM-AXN/CampaignSchedule/Components/EnhancedPagination/index.d.ts +1 -1
- package/lib/ACM-AXN/CampaignSchedule/Components/EnhancedPagination/index.js +4 -2
- package/lib/ACM-AXN/CampaignSchedule/Components/RowAdvance/component.js +33 -3
- package/lib/ACM-AXN/CampaignSchedule/Components/RowAdvance/container.d.ts +1 -1
- package/lib/ACM-AXN/CampaignSchedule/Components/RowAdvance/container.js +81 -34
- package/lib/ACM-AXN/CampaignSchedule/Components/TableHeaderDragable.d.ts +1 -1
- package/lib/ACM-AXN/CampaignSchedule/Components/TableHeaderDragable.js +38 -29
- package/lib/ACM-AXN/CampaignSchedule/DataConfigAXN.d.ts +4 -0
- package/lib/ACM-AXN/CampaignSchedule/DataConfigAXN.js +58 -0
- package/lib/ACM-AXN/CampaignSchedule/Enum.d.ts +14 -2
- package/lib/ACM-AXN/CampaignSchedule/Enum.js +12 -0
- package/lib/ACM-AXN/CampaignSchedule/component.js +6 -5
- package/lib/ACM-AXN/CampaignSchedule/container.d.ts +1 -1
- package/lib/ACM-AXN/CampaignSchedule/container.js +100 -99
- package/lib/ACM-AXN/CampaignSchedule/interface.d.ts +16 -3
- package/lib/ACM-AXN/Directory/MenuDirectory/index.js +7 -21
- package/lib/ACM-AXN/Directory/SystemDirectory/index.js +6 -5
- package/lib/ACM-AXN/Directory/components/Permission/Management.js +7 -5
- package/lib/ACM-AXN/Directory/components/Permission/MenuPermissions/MenuPermissionManagement.js +9 -7
- package/lib/ACM-AXN/Directory/function.d.ts +1 -0
- package/lib/ACM-AXN/Directory/function.js +15 -1
- package/lib/ACM-AXN/DomainPreview/PreviewButton.d.ts +15 -0
- package/lib/ACM-AXN/DomainPreview/PreviewButton.js +188 -0
- package/lib/ACM-AXN/DomainPreview/index.d.ts +7 -2
- package/lib/ACM-AXN/DomainPreview/index.js +6 -3
- package/lib/ACM-AXN/GroupUser/Constants.d.ts +7 -0
- package/lib/ACM-AXN/GroupUser/Constants.js +10 -0
- package/lib/ACM-AXN/GroupUser/Container.d.ts +2 -0
- package/lib/ACM-AXN/GroupUser/Container.js +55 -0
- package/lib/ACM-AXN/GroupUser/Container.test.d.ts +1 -0
- package/lib/ACM-AXN/GroupUser/Container.test.js +210 -0
- package/lib/ACM-AXN/GroupUser/CreateOrEdit.d.ts +3 -0
- package/lib/ACM-AXN/GroupUser/CreateOrEdit.js +91 -0
- package/lib/ACM-AXN/GroupUser/CreateOrEdit.test.d.ts +1 -0
- package/lib/ACM-AXN/GroupUser/CreateOrEdit.test.js +235 -0
- package/lib/ACM-AXN/GroupUser/Hooks.d.ts +5 -0
- package/lib/ACM-AXN/GroupUser/Hooks.js +13 -0
- package/lib/ACM-AXN/GroupUser/Types.d.ts +31 -0
- package/lib/ACM-AXN/GroupUser/Types.js +2 -0
- package/lib/ACM-AXN/GroupUser/User/SearchUser.d.ts +9 -0
- package/lib/ACM-AXN/GroupUser/User/SearchUser.js +63 -0
- package/lib/ACM-AXN/GroupUser/User/SearchUser.test.d.ts +1 -0
- package/lib/ACM-AXN/GroupUser/User/SearchUser.test.js +140 -0
- package/lib/ACM-AXN/GroupUser/User/UserComponent.d.ts +8 -0
- package/lib/ACM-AXN/GroupUser/User/UserComponent.js +77 -0
- package/lib/ACM-AXN/GroupUser/User/UserComponent.test.d.ts +1 -0
- package/lib/ACM-AXN/GroupUser/User/UserComponent.test.js +128 -0
- package/lib/ACM-AXN/GroupUser/index.d.ts +4 -0
- package/lib/ACM-AXN/GroupUser/index.js +27 -0
- package/lib/ACM-AXN/Notifications/Constant.d.ts +146 -0
- package/lib/ACM-AXN/Notifications/Constant.js +136 -0
- package/lib/ACM-AXN/Notifications/Context.d.ts +8 -0
- package/lib/ACM-AXN/Notifications/Context.js +10 -0
- package/lib/ACM-AXN/Notifications/Hooks.d.ts +7 -0
- package/lib/ACM-AXN/Notifications/Hooks.js +17 -0
- package/lib/ACM-AXN/Notifications/NotificationDetail/HeaderInfo/ButtonTabs.d.ts +3 -3
- package/lib/ACM-AXN/Notifications/NotificationDetail/HeaderInfo/ButtonTabs.js +31 -30
- package/lib/ACM-AXN/Notifications/NotificationDetail/HeaderInfo/MenuNotification.d.ts +1 -1
- package/lib/ACM-AXN/Notifications/NotificationDetail/HeaderInfo/MenuNotification.js +30 -39
- package/lib/ACM-AXN/Notifications/NotificationDetail/HeaderInfo/index.d.ts +3 -5
- package/lib/ACM-AXN/Notifications/NotificationDetail/HeaderInfo/index.js +18 -17
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationEmpty.d.ts +1 -1
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationEmpty.js +15 -15
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationEmpty.test.d.ts +0 -6
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationEmpty.test.js +29 -28
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/Message.d.ts +10 -0
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/Message.js +393 -0
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/NotificationAvatar.d.ts +1 -1
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/NotificationAvatar.js +3 -3
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/NotificationAvatar.test.d.ts +0 -6
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/NotificationAvatar.test.js +38 -48
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/NotificationContent.d.ts +2 -2
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/NotificationContent.js +36 -35
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/NotificationContent.test.d.ts +0 -6
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/NotificationContent.test.js +65 -73
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/index.d.ts +4 -11
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/index.js +46 -36
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/index.test.d.ts +0 -6
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationItem/index.test.js +56 -50
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/NotificationLoading.js +30 -30
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/index.d.ts +3 -15
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/index.js +35 -4
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/index.test.d.ts +0 -6
- package/lib/ACM-AXN/Notifications/NotificationDetail/NotificationList/index.test.js +88 -83
- package/lib/ACM-AXN/Notifications/NotificationDetail/index.d.ts +5 -2
- package/lib/ACM-AXN/Notifications/NotificationDetail/index.js +115 -101
- package/lib/ACM-AXN/Notifications/{NotificationPopover.d.ts → NotificationPopover/Container.d.ts} +2 -2
- package/lib/ACM-AXN/Notifications/NotificationPopover/Container.js +149 -0
- package/lib/ACM-AXN/Notifications/{NotificationPopover.test.d.ts → NotificationPopover/Container.test.d.ts} +1 -1
- package/lib/ACM-AXN/Notifications/{NotificationPopover.test.js → NotificationPopover/Container.test.js} +5 -5
- package/lib/ACM-AXN/Notifications/NotificationPopover/index.d.ts +8 -0
- package/lib/ACM-AXN/Notifications/NotificationPopover/index.js +13 -0
- package/lib/ACM-AXN/Notifications/NotificationScreen.d.ts +1 -1
- package/lib/ACM-AXN/Notifications/NotificationScreen.js +4 -4
- package/lib/ACM-AXN/Notifications/Types.d.ts +242 -0
- package/lib/ACM-AXN/Notifications/Types.js +290 -0
- package/lib/ACM-AXN/Notifications/index.d.ts +2 -2
- package/lib/ACM-AXN/Notifications/index.js +5 -5
- package/lib/ACM-AXN/Page/Container.js +68 -73
- package/lib/ACM-AXN/Page/CreateOrEdit/DrawerAction.js +22 -5
- package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewContent.js +1 -1
- package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewInfo.js +2 -1
- package/lib/ACM-AXN/Page/CreateOrEdit/Utils.js +11 -0
- package/lib/ACM-AXN/Page/Types.d.ts +9 -0
- package/lib/ACM-AXN/Page/index.js +2 -1
- package/lib/ACM-AXN/Permission/Components/Management.test.js +1 -1
- package/lib/ACM-AXN/PlaceGroup/Context.d.ts +1 -1
- package/lib/ACM-AXN/Statistics/ControlPanel.js +49 -47
- package/lib/ACM-AXN/Statistics/Enums.d.ts +1 -0
- package/lib/ACM-AXN/Statistics/Enums.js +1 -0
- package/lib/ACM-AXN/Statistics/container.js +1 -1
- package/lib/ACM-AXN/StatisticsAudienceDemographic/container.d.ts +1 -1
- package/lib/ACM-AXN/StatisticsAudienceDemographic/container.js +2 -3
- package/lib/ACM-AXN/StatisticsAudienceDemographic/interfaces.d.ts +1 -0
- package/lib/ACM-AXN/StatisticsByProvince/container.d.ts +1 -1
- package/lib/ACM-AXN/StatisticsByProvince/container.js +2 -2
- package/lib/ACM-AXN/TaskScheduler/Container.js +1 -1
- package/lib/ACM-AXN/TaskScheduler/CreateOrEdit.js +1 -3
- package/lib/ACM-AXN/TaskScheduler/Utils.js +6 -1
- package/lib/ACM-AXN/User/Add.d.ts +2 -0
- package/lib/ACM-AXN/User/Add.js +64 -0
- package/lib/ACM-AXN/User/Add.test.d.ts +1 -0
- package/lib/ACM-AXN/User/Add.test.js +115 -0
- package/lib/ACM-AXN/User/Constants.d.ts +2 -0
- package/lib/ACM-AXN/User/Constants.js +5 -0
- package/lib/ACM-AXN/User/Container.d.ts +2 -0
- package/lib/ACM-AXN/User/Container.js +60 -0
- package/lib/ACM-AXN/User/Container.test.d.ts +1 -0
- package/lib/ACM-AXN/User/Container.test.js +202 -0
- package/lib/ACM-AXN/User/Hook.d.ts +5 -0
- package/lib/ACM-AXN/User/Hook.js +13 -0
- package/lib/ACM-AXN/User/Types.d.ts +45 -0
- package/lib/ACM-AXN/User/Types.js +2 -0
- package/lib/ACM-AXN/User/index.d.ts +4 -0
- package/lib/ACM-AXN/User/index.js +18 -0
- package/lib/ACM-AXN/ViewTemplate/TemplateField/Fields/BasicField/index.js +1 -1
- package/lib/AWING/AdvancedSearch/component.js +1 -1
- package/lib/AWING/AdvancedSearch/interface.d.ts +1 -0
- package/lib/AWING/ButtonDateRangePicker/ButtonDateRangePicker.js +2 -2
- package/lib/AWING/ButtonDateRangePicker/interface.d.ts +1 -0
- package/lib/AWING/Chart/BarLineComponent.d.ts +1 -0
- package/lib/AWING/Chart/BarLineComponent.js +39 -24
- package/lib/AWING/Chart/PieComponent.d.ts +1 -1
- package/lib/AWING/Chart/PieComponent.js +0 -1
- package/lib/AWING/Chart/Styles.d.ts +6 -2
- package/lib/AWING/Chart/Styles.js +6 -2
- package/lib/AWING/Chart/index.d.ts +3 -0
- package/lib/AWING/Chart/index.js +10 -0
- package/lib/AWING/DataForm/DataInput.js +17 -8
- package/lib/AWING/DataForm/interface.d.ts +6 -2
- package/lib/AWING/DataGrid/index.js +20 -5
- package/lib/AWING/DataGrid/interface.d.ts +6 -1
- package/lib/AWING/Directory/CreateDirectory.d.ts +3 -0
- package/lib/AWING/Directory/CreateDirectory.js +27 -10
- package/lib/AWING/PageManagement/PageManagement.js +1 -1
- package/lib/AWING/index.d.ts +1 -0
- package/lib/AWING/index.js +1 -0
- package/lib/AWING/ultis/validation.d.ts +1 -1
- package/lib/AWING/ultis/validation.js +4 -2
- package/lib/Commons/Components/ClassicBaseDrawer.d.ts +1 -0
- package/lib/Commons/Components/ClassicBaseDrawer.js +7 -3
- package/lib/Commons/Components/ClassicDrawer.js +2 -2
- package/lib/translate/en/translation.json +81 -2
- package/lib/translate/vi/translation.json +81 -2
- package/package.json +4 -2
- package/lib/ACM-AXN/Notifications/NotificationDetail/Common.d.ts +0 -39
- package/lib/ACM-AXN/Notifications/NotificationDetail/Common.js +0 -304
- package/lib/ACM-AXN/Notifications/NotificationPopover.js +0 -69
- package/lib/ACM-AXN/Page/ViewDomain/index.d.ts +0 -9
- package/lib/ACM-AXN/Page/ViewDomain/index.js +0 -148
package/README.md
CHANGED
|
@@ -35,32 +35,17 @@ yarn build
|
|
|
35
35
|
- Step 2: Tạo link thư viện
|
|
36
36
|
|
|
37
37
|
```shell
|
|
38
|
+
yarn build
|
|
38
39
|
yarn link
|
|
39
|
-
```
|
|
40
|
-
- Tạo Link react
|
|
41
|
-
|
|
42
|
-
```shell
|
|
43
40
|
cd node_modules/react
|
|
44
41
|
yarn link
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
- Tạo Link react-dom
|
|
48
|
-
|
|
49
|
-
```shell
|
|
42
|
+
cd ../..
|
|
50
43
|
cd node_modules/react-dom
|
|
51
44
|
yarn link
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
- Tạo Link @mui/material
|
|
55
|
-
|
|
56
|
-
```shell
|
|
45
|
+
cd ../..
|
|
57
46
|
cd node_modules/@mui/material
|
|
58
47
|
yarn link
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
- Tạo Link @mui/styles
|
|
62
|
-
|
|
63
|
-
```shell
|
|
48
|
+
cd ../../..
|
|
64
49
|
cd node_modules/@mui/styles
|
|
65
50
|
yarn link
|
|
66
51
|
```
|
|
@@ -49,7 +49,7 @@ var CampaignContainer = function () {
|
|
|
49
49
|
var _c = (0, react_1.useState)([]), directories = _c[0], setDirectories = _c[1];
|
|
50
50
|
var _d = (0, react_1.useState)([]), collapseIds = _d[0], setCollapseId = _d[1];
|
|
51
51
|
var _e = (0, react_1.useState)(), listCampaign = _e[0], setListCampaign = _e[1];
|
|
52
|
-
var _f = (0, react_1.useState)(
|
|
52
|
+
var _f = (0, react_1.useState)(true), loading = _f[0], setLoading = _f[1];
|
|
53
53
|
(0, react_1.useEffect)(function () {
|
|
54
54
|
if (location.pathname.endsWith(Constant_1.Constants.CAMPAIGN_PATH)) {
|
|
55
55
|
fetchDirectories();
|
|
@@ -256,20 +256,19 @@ var CampaignContainer = function () {
|
|
|
256
256
|
},
|
|
257
257
|
{
|
|
258
258
|
field: 'booking',
|
|
259
|
-
headerName: t('Campaign.BookingText'),
|
|
259
|
+
headerName: (0, jsx_runtime_1.jsx)(material_1.Box, { sx: { width: '150px', textAlign: 'right' }, children: t('Campaign.BookingText') }),
|
|
260
260
|
valueGetter: function (row) {
|
|
261
261
|
var _a;
|
|
262
|
+
var text = '';
|
|
262
263
|
if ((_a = row === null || row === void 0 ? void 0 : row.campaign) === null || _a === void 0 ? void 0 : _a.id) {
|
|
263
|
-
|
|
264
|
+
text = (0, Utils_1.getTotalBooking)(row === null || row === void 0 ? void 0 : row.campaignGroups);
|
|
264
265
|
}
|
|
265
266
|
else {
|
|
266
|
-
|
|
267
|
+
text = (0, Utils_1.checkPriority)(row.campaignGroup.priority, Types_1.CampaignPriority.ClassB)
|
|
267
268
|
? (0, Helpers_1.roundDecimalNumber)(row.campaignGroup.bookingAmount)
|
|
268
269
|
: 'N/A';
|
|
269
270
|
}
|
|
270
|
-
|
|
271
|
-
TableCellProps: {
|
|
272
|
-
align: 'right',
|
|
271
|
+
return (0, jsx_runtime_1.jsx)(material_1.Box, { sx: { width: '150px', textAlign: 'right' }, children: text });
|
|
273
272
|
},
|
|
274
273
|
},
|
|
275
274
|
], rows: (0, Utils_1.formatListCampaign)(listCampaign === null || listCampaign === void 0 ? void 0 : listCampaign.items, collapseIds) || [], rowActions: [
|
|
@@ -244,7 +244,7 @@ jest.mock('CustomHooks/useAppHelper', function () { return ({
|
|
|
244
244
|
}); },
|
|
245
245
|
}); });
|
|
246
246
|
// Mock PageManagement
|
|
247
|
-
jest.mock('
|
|
247
|
+
jest.mock('AWING/PageManagement', function () { return ({
|
|
248
248
|
PageManagement: function (props) {
|
|
249
249
|
return ((0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("button", { "data-testid": "onChangeQueryInput", onClick: function () {
|
|
250
250
|
props.onChangeQueryInput({
|
|
@@ -98,7 +98,7 @@ exports.campaignAttributesState = (0, recoil_1.selector)({
|
|
|
98
98
|
var campaignModel = get(exports.campaignModelState);
|
|
99
99
|
set(exports.campaignModelState, campaignAttributes instanceof recoil_1.DefaultValue ?
|
|
100
100
|
campaignAttributes : __assign(__assign({}, campaignModel), { campaignAttributes: campaignAttributes }));
|
|
101
|
-
if (!get(exports.confirmExitState))
|
|
101
|
+
if (!get(exports.confirmExitState) && Array.isArray(campaignAttributes) && !!campaignAttributes.at(-1))
|
|
102
102
|
set(exports.confirmExitState, true);
|
|
103
103
|
}
|
|
104
104
|
});
|
|
@@ -16,7 +16,7 @@ function MockComponent(props) {
|
|
|
16
16
|
// const MockComponentFactory = (name: string) => () => (props: any) => <div><div/>
|
|
17
17
|
jest.mock('Features/PlaceFilter', function () { return MockComponent; });
|
|
18
18
|
jest.mock("Components/Typescript/AsynchronousAutocomplete", function () { return MockComponent; });
|
|
19
|
-
jest.mock("
|
|
19
|
+
jest.mock("AWING/DateRangePicker", function () { return MockComponent; });
|
|
20
20
|
jest.mock('Services/DirectoryPermission', function () { return ({
|
|
21
21
|
getByObjectTypeCode: function () { return new Promise(function (resolve) {
|
|
22
22
|
resolve({
|
|
@@ -60,6 +60,9 @@ var Utils_1 = require("../../Utils");
|
|
|
60
60
|
var Helpers_1 = require("../../../../Utils/Helpers");
|
|
61
61
|
var Context_1 = require("../../../../Context");
|
|
62
62
|
var Recoils_1 = require("../Recoils");
|
|
63
|
+
var DomainPreview_1 = __importDefault(require("../../../../ACM-AXN/DomainPreview"));
|
|
64
|
+
var Constant_1 = require("../../../../ACM-AXN/Campaign/Constant");
|
|
65
|
+
var PreviewButton_1 = __importDefault(require("../../../../ACM-AXN/DomainPreview/PreviewButton"));
|
|
63
66
|
function AdList(props) {
|
|
64
67
|
var onCreate = props.onCreate, onChange = props.onChange, onDelete = props.onDelete, onAdsValidChange = props.onAdsValidChange;
|
|
65
68
|
var t = (0, react_i18next_1.useTranslation)().t;
|
|
@@ -70,11 +73,18 @@ function AdList(props) {
|
|
|
70
73
|
var _c = (0, recoil_1.useRecoilState)(atoms_1.adOpenState), adOpen = _c[0], setAdOpen = _c[1];
|
|
71
74
|
var copiedAd = (0, recoil_1.useRecoilValue)(atoms_1.copiedAdState);
|
|
72
75
|
var hasClassC = (0, recoil_1.useRecoilValue)((0, atoms_1.checkGroupsClassCState)(adSelected.map(function (x) { return x.subCampaignId; })));
|
|
76
|
+
var _d = (0, react_1.useState)({
|
|
77
|
+
welcomeId: '',
|
|
78
|
+
loginId: '',
|
|
79
|
+
domainIds: [],
|
|
80
|
+
}), previewId = _d[0], setPreviewId = _d[1];
|
|
81
|
+
var _e = react_1.default.useState(), anchorEl = _e[0], setAnchorEl = _e[1];
|
|
82
|
+
var open = Boolean(anchorEl);
|
|
73
83
|
// valid theo cấu trúc { [campaignGroupId]: { [adId]: boolean } }
|
|
74
|
-
var
|
|
75
|
-
var
|
|
76
|
-
var
|
|
77
|
-
var
|
|
84
|
+
var _f = (0, react_1.useState)({}), adsValid = _f[0], setAdsValid = _f[1];
|
|
85
|
+
var _g = (0, react_1.useState)(false), isAdvancedDrawerOpen = _g[0], setIsAdvancedDrawerOpen = _g[1];
|
|
86
|
+
var _h = (0, recoil_1.useRecoilState)(Recoils_1.weightState), weightProps = _h[0], setWeightState = _h[1];
|
|
87
|
+
var _j = (0, react_1.useState)(false), isMultiEditDrawerOpen = _j[0], setIsMultiEditDrawerOpen = _j[1];
|
|
78
88
|
(0, react_1.useEffect)(function () {
|
|
79
89
|
var newAdValid = {};
|
|
80
90
|
ads.forEach(function (ad) {
|
|
@@ -219,6 +229,33 @@ function AdList(props) {
|
|
|
219
229
|
advanced: t('Campaign.Advanced'),
|
|
220
230
|
delete: t('Common.Delete'),
|
|
221
231
|
};
|
|
232
|
+
/**
|
|
233
|
+
* Hàm khi xem preview
|
|
234
|
+
*/
|
|
235
|
+
var handlePreview = function (e, ad, doaminId) {
|
|
236
|
+
e.stopPropagation();
|
|
237
|
+
var url = "".concat(Constant_1.Constants.CAPTIVE_DOMAIN, "/").concat(Constant_1.Constants.PAGE_LOGIN_PREVIEW, "?loginId=").concat(ad.loginId, "&isNetworkCampaign=false");
|
|
238
|
+
if (ad.welcomeId.length)
|
|
239
|
+
url += "&welcomeId=".concat(ad.welcomeId);
|
|
240
|
+
if (doaminId)
|
|
241
|
+
url += "&doaminId=".concat(doaminId);
|
|
242
|
+
window.open(url, '_blank');
|
|
243
|
+
};
|
|
244
|
+
var handlePreviewPage = function (e, ad) {
|
|
245
|
+
var _a, _b;
|
|
246
|
+
e.stopPropagation();
|
|
247
|
+
setPreviewId({
|
|
248
|
+
welcomeId: ad.welcomeId,
|
|
249
|
+
loginId: ad.loginId,
|
|
250
|
+
domainIds: (_b = (_a = ad.places) === null || _a === void 0 ? void 0 : _a.map(function (x) { return x.domainId; })) !== null && _b !== void 0 ? _b : [],
|
|
251
|
+
});
|
|
252
|
+
setAnchorEl(e.currentTarget);
|
|
253
|
+
};
|
|
254
|
+
var handlePreviewClose = function (event) {
|
|
255
|
+
event.stopPropagation();
|
|
256
|
+
setPreviewId({});
|
|
257
|
+
setAnchorEl(null);
|
|
258
|
+
};
|
|
222
259
|
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [weightProps.isOpen && ((0, jsx_runtime_1.jsx)(Weight_1.default, {})), (0, jsx_runtime_1.jsxs)(material_1.TableContainer, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "h4", sx: {
|
|
223
260
|
padding: function (theme) { return theme.spacing(2); },
|
|
224
261
|
fontSize: '16px!important',
|
|
@@ -261,6 +298,7 @@ function AdList(props) {
|
|
|
261
298
|
}, onChange: handleMultiUpdate })), (0, jsx_runtime_1.jsx)(material_1.Tooltip, { title: translationText.delete, children: (0, jsx_runtime_1.jsx)(material_1.IconButton, { onClick: function () {
|
|
262
299
|
return handleMultiDelete(adSelected);
|
|
263
300
|
}, "aria-label": "delete", children: (0, jsx_runtime_1.jsx)(Delete_1.default, { fontSize: "small" }) }) })] })), (0, jsx_runtime_1.jsx)(material_1.TableCell, { align: "right", children: onCreate && ((0, jsx_runtime_1.jsxs)(material_1.ButtonGroup, { variant: "outlined", color: "error", children: [(0, jsx_runtime_1.jsx)(material_1.Button, { startIcon: (0, jsx_runtime_1.jsx)(Add_1.default, {}), onClick: function () { return handleAddAd(); }, children: t('Common.Create') }), copiedAd !== undefined && ((0, jsx_runtime_1.jsx)(material_1.Button, { size: "small", "aria-label": "paste", onClick: function () { return handleAddAd(true); }, children: (0, jsx_runtime_1.jsx)(Assignment_1.default, {}) }))] })) })] }) }), (0, jsx_runtime_1.jsx)(material_1.TableBody, { children: ads.map(function (ad, idx) {
|
|
301
|
+
var _a;
|
|
264
302
|
var isOpen = adOpen !== undefined &&
|
|
265
303
|
adOpen.adId === ad.id &&
|
|
266
304
|
adOpen.subCampaignId === ad.campaignGroupId;
|
|
@@ -270,7 +308,9 @@ function AdList(props) {
|
|
|
270
308
|
};
|
|
271
309
|
return ((0, jsx_runtime_1.jsx)(AdRow_1.default, { ad: ad, onChange: function (adSetStateAction) {
|
|
272
310
|
return onChange([adDefine], adSetStateAction);
|
|
273
|
-
},
|
|
311
|
+
}, previewButton: (0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(material_1.IconButton, { "aria-label": "preview", onClick: function (e) {
|
|
312
|
+
handlePreview(e, ad);
|
|
313
|
+
}, disabled: !((_a = ad.loginId) === null || _a === void 0 ? void 0 : _a.length), sx: { borderRadius: '15%' }, children: (0, jsx_runtime_1.jsx)(DomainPreview_1.default, { handlePreviewPage: function (e) { return handlePreviewPage(e, ad); }, isSelectDomain: Boolean(service.domainsGetAll) }) }) }), onChangeStatus: function (status) {
|
|
274
314
|
return handleChangeAdStatus(ad, status);
|
|
275
315
|
}, onDelete: function () {
|
|
276
316
|
return handleMultiDelete([adDefine]);
|
|
@@ -302,6 +342,10 @@ function AdList(props) {
|
|
|
302
342
|
]);
|
|
303
343
|
});
|
|
304
344
|
} }, idx));
|
|
305
|
-
}) })] })] })
|
|
345
|
+
}) })] })] }), open &&
|
|
346
|
+
(0, jsx_runtime_1.jsx)(PreviewButton_1.default, { anchorEl: anchorEl, open: open, domainIds: previewId.domainIds, handlePreviewClose: handlePreviewClose, handlePreviewDomain: function (event, domainId) {
|
|
347
|
+
handlePreview(event, ads.find(function (x) { return x.loginId === previewId.loginId; }), domainId);
|
|
348
|
+
// handlePreview(previewId, domainId)
|
|
349
|
+
}, service: service })] }));
|
|
306
350
|
}
|
|
307
351
|
exports.default = AdList;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import React from 'react';
|
|
1
2
|
import { AdDetailProps } from './AdDetail';
|
|
2
3
|
type AdRowProps = AdDetailProps & {
|
|
3
4
|
/**
|
|
@@ -24,6 +25,10 @@ type AdRowProps = AdDetailProps & {
|
|
|
24
25
|
* Trạng thái lỗi hay không của quảng cáo
|
|
25
26
|
*/
|
|
26
27
|
error?: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Preview Button
|
|
30
|
+
*/
|
|
31
|
+
previewButton: React.ReactNode;
|
|
27
32
|
};
|
|
28
33
|
export default function AdRow(props: AdRowProps): import("react/jsx-runtime").JSX.Element;
|
|
29
34
|
export {};
|
|
@@ -62,7 +62,6 @@ var react_1 = __importStar(require("react"));
|
|
|
62
62
|
var react_i18next_1 = require("react-i18next");
|
|
63
63
|
var recoil_1 = require("recoil");
|
|
64
64
|
var material_1 = require("@mui/material");
|
|
65
|
-
var Visibility_1 = __importDefault(require("@mui/icons-material/Visibility"));
|
|
66
65
|
var KeyboardArrowDown_1 = __importDefault(require("@mui/icons-material/KeyboardArrowDown"));
|
|
67
66
|
var KeyboardArrowUp_1 = __importDefault(require("@mui/icons-material/KeyboardArrowUp"));
|
|
68
67
|
var CheckCircle_1 = __importDefault(require("@mui/icons-material/CheckCircle"));
|
|
@@ -87,27 +86,16 @@ var AWING_1 = require("../../../../AWING");
|
|
|
87
86
|
var Constant_1 = require("../../Constant");
|
|
88
87
|
var Recoils_1 = require("../Recoils");
|
|
89
88
|
function AdRow(props) {
|
|
90
|
-
var _a, _b, _c, _d
|
|
89
|
+
var _a, _b, _c, _d;
|
|
91
90
|
var t = (0, react_i18next_1.useTranslation)().t;
|
|
92
|
-
var ad = props.ad, onChange = props.onChange, onDelete = props.onDelete, open = props.open, onToggle = props.onToggle, isSelected = props.isSelected, onCheck = props.onCheck, error = props.error, other = __rest(props, ["ad", "onChange", "onDelete", "open", "onToggle", "isSelected", "onCheck", "error"]);
|
|
91
|
+
var ad = props.ad, onChange = props.onChange, onDelete = props.onDelete, open = props.open, onToggle = props.onToggle, isSelected = props.isSelected, onCheck = props.onCheck, error = props.error, previewButton = props.previewButton, other = __rest(props, ["ad", "onChange", "onDelete", "open", "onToggle", "isSelected", "onCheck", "error", "previewButton"]);
|
|
93
92
|
var service = (0, Hooks_1.default)().service;
|
|
94
93
|
var setCopiedAd = (0, recoil_1.useSetRecoilState)(atoms_1.copiedAdState);
|
|
95
94
|
var setWeightState = (0, recoil_1.useSetRecoilState)(Recoils_1.weightState);
|
|
96
|
-
var
|
|
97
|
-
var
|
|
98
|
-
var
|
|
99
|
-
var _j = (0, react_1.useState)(false), isWeightDrawerOpen = _j[0], setIsWeightDrawerOpen = _j[1];
|
|
95
|
+
var _e = (0, react_1.useState)(false), openCopiedMessage = _e[0], setOpenCopiedMessage = _e[1];
|
|
96
|
+
var _f = (0, react_1.useState)(false), showTheSource = _f[0], setShowTheSource = _f[1];
|
|
97
|
+
var _g = (0, react_1.useState)(false), isAdvancedDrawerOpen = _g[0], setIsAdvancedDrawerOpen = _g[1];
|
|
100
98
|
var isClassC = (0, recoil_2.useRecoilValue)((0, atoms_2.checkGroupsClassCState)([ad.campaignGroupId]));
|
|
101
|
-
/**
|
|
102
|
-
* Hàm khi xem preview
|
|
103
|
-
*/
|
|
104
|
-
var handlePreview = function (e) {
|
|
105
|
-
e.stopPropagation();
|
|
106
|
-
var url = "".concat(Constant_1.Constants.CAPTIVE_DOMAIN, "/").concat(Constant_1.Constants.PAGE_LOGIN_PREVIEW, "?loginId=").concat(ad.loginId, "&isNetworkCampaign=false");
|
|
107
|
-
if (ad.welcomeId.length)
|
|
108
|
-
url += "&welcomeId=".concat(ad.welcomeId);
|
|
109
|
-
window.open(url, '_blank');
|
|
110
|
-
};
|
|
111
99
|
var translationText = {
|
|
112
100
|
preview: t('Common.Preview'),
|
|
113
101
|
copy: t('Common.Copy'),
|
|
@@ -147,7 +135,7 @@ function AdRow(props) {
|
|
|
147
135
|
Constant_1.Constants.CAMPAIGN_EDIT_PAGE,
|
|
148
136
|
Enum_1.PAGE_CODES.PageCodeWelcome,
|
|
149
137
|
ad.welcomeId,
|
|
150
|
-
].join('/'), children: (_d = ad.welcomePage) === null || _d === void 0 ? void 0 : _d.title }) })] }))] }), (0, jsx_runtime_1.jsxs)(material_1.TableCell, { sx: { padding: function (theme) { return theme.spacing(0, 2); } }, align: "right", children: [(0, jsx_runtime_1.jsx)(material_1.Tooltip, { title: translationText.preview, children: (0, jsx_runtime_1.jsx)(
|
|
138
|
+
].join('/'), children: (_d = ad.welcomePage) === null || _d === void 0 ? void 0 : _d.title }) })] }))] }), (0, jsx_runtime_1.jsxs)(material_1.TableCell, { sx: { padding: function (theme) { return theme.spacing(0, 2); } }, align: "right", children: [(0, jsx_runtime_1.jsx)(material_1.Tooltip, { title: translationText.preview, children: (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: previewButton }) }), (0, jsx_runtime_1.jsx)(AWING_1.Actions, { menus: __spreadArray([
|
|
151
139
|
{
|
|
152
140
|
icon: (0, jsx_runtime_1.jsx)(FileCopyOutlined_1.default, {}),
|
|
153
141
|
action: function () {
|
|
@@ -62,6 +62,7 @@ var AddOrEditRule = function (props) {
|
|
|
62
62
|
_a[Utils_1.RuleType.TargetAge] = t('Campaign.RuleType.TargetAge'),
|
|
63
63
|
_a[Utils_1.RuleType.TargetOS] = t('Campaign.RuleType.TargetOS'),
|
|
64
64
|
_a[Utils_1.RuleType.TargetDevice] = t('Campaign.RuleType.TargetDevice'),
|
|
65
|
+
_a[Utils_1.RuleType.RetargetMacAddress] = t('Campaign.RuleType.RetargetMacAddress'),
|
|
65
66
|
_a),
|
|
66
67
|
save: t('Common.Save'),
|
|
67
68
|
invalidData: t('Common.InvalidData'),
|
|
@@ -109,10 +110,10 @@ var AddOrEditRule = function (props) {
|
|
|
109
110
|
return {
|
|
110
111
|
value: Array.isArray(rule.value) && rule.value.length > 0,
|
|
111
112
|
};
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
113
|
+
case Utils_1.RuleType.RetargetMacAddress:
|
|
114
|
+
return {
|
|
115
|
+
value: Array.isArray(rule.value) && rule.value.length > 0,
|
|
116
|
+
};
|
|
116
117
|
default:
|
|
117
118
|
return {};
|
|
118
119
|
}
|
|
@@ -157,14 +158,8 @@ var AddOrEditRule = function (props) {
|
|
|
157
158
|
return ((0, jsx_runtime_1.jsx)(RuleForm_1.TargetOS, { valids: valids, rule: currentRule, onChange: handleOnChange, deviceInfoGetAllRuleOsVersions: service === null || service === void 0 ? void 0 : service.deviceInfoGetAllRuleOsVersions }));
|
|
158
159
|
case Utils_1.RuleType.TargetDevice:
|
|
159
160
|
return ((0, jsx_runtime_1.jsx)(RuleForm_1.TargetDevice, { valids: valids, rule: currentRule, onChange: handleOnChange, deviceInfoGetAllRuleDevices: service === null || service === void 0 ? void 0 : service.deviceInfoGetAllRuleDevices }));
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
// <RetargetMacAddress
|
|
163
|
-
// valids={valids}
|
|
164
|
-
// rule={currentRule}
|
|
165
|
-
// onChange={handleOnChange}
|
|
166
|
-
// />
|
|
167
|
-
// );
|
|
161
|
+
case Utils_1.RuleType.RetargetMacAddress:
|
|
162
|
+
return ((0, jsx_runtime_1.jsx)(RuleForm_1.RetargetMacAddress, { valids: valids, rule: currentRule, onChange: handleOnChange, remarketingListGetAll: service === null || service === void 0 ? void 0 : service.remarketingListGetAll }));
|
|
168
163
|
default:
|
|
169
164
|
return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {});
|
|
170
165
|
}
|
|
@@ -3,6 +3,7 @@ interface Props {
|
|
|
3
3
|
rule: AdvancedRule;
|
|
4
4
|
valids: any;
|
|
5
5
|
onChange: (rule: AdvancedRule) => void;
|
|
6
|
+
remarketingListGetAll: () => Promise<any[]>;
|
|
6
7
|
}
|
|
7
8
|
declare const RetargetMacAddressContainer: (props: Props) => import("react/jsx-runtime").JSX.Element;
|
|
8
9
|
export default RetargetMacAddressContainer;
|
|
@@ -19,19 +19,11 @@ var react_1 = __importDefault(require("react"));
|
|
|
19
19
|
var component_1 = __importDefault(require("./component"));
|
|
20
20
|
var RetargetMacAddressContainer = function (props) {
|
|
21
21
|
var _a = react_1.default.useState([]), remarketingLists = _a[0], setRemarketingLists = _a[1];
|
|
22
|
+
var remarketingListGetAll = props.remarketingListGetAll;
|
|
22
23
|
react_1.default.useEffect(function () {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
// if (res.data.status === STATUS_CODE.OK)
|
|
27
|
-
// {
|
|
28
|
-
// setRemarketingLists(res.data.data);
|
|
29
|
-
// }
|
|
30
|
-
// else {
|
|
31
|
-
// Snackbar(SNACKBAR_TYPES.ERROR);
|
|
32
|
-
// }
|
|
33
|
-
// })
|
|
34
|
-
// .catch(() => Snackbar(SNACKBAR_TYPES.ERROR));
|
|
24
|
+
remarketingListGetAll()
|
|
25
|
+
.then(setRemarketingLists)
|
|
26
|
+
.catch(function (err) { return console.log(err); });
|
|
35
27
|
}, []);
|
|
36
28
|
return (0, jsx_runtime_1.jsx)(component_1.default, __assign({ remarketingLists: remarketingLists }, props));
|
|
37
29
|
};
|
|
@@ -33,6 +33,17 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
33
33
|
__setModuleDefault(result, mod);
|
|
34
34
|
return result;
|
|
35
35
|
};
|
|
36
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
37
|
+
var t = {};
|
|
38
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
39
|
+
t[p] = s[p];
|
|
40
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
41
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
42
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
43
|
+
t[p[i]] = s[p[i]];
|
|
44
|
+
}
|
|
45
|
+
return t;
|
|
46
|
+
};
|
|
36
47
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
37
48
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
49
|
};
|
|
@@ -189,10 +200,14 @@ var Advanced = function (props) {
|
|
|
189
200
|
onClose();
|
|
190
201
|
}
|
|
191
202
|
};
|
|
203
|
+
var ruleType = react_1.default.useMemo(function () {
|
|
204
|
+
var RetargetMacAddress = Utils_1.RuleType.RetargetMacAddress, other = __rest(Utils_1.RuleType, ["RetargetMacAddress"]);
|
|
205
|
+
return (service === null || service === void 0 ? void 0 : service.remarketingListGetAll) ? Utils_1.RuleType : other;
|
|
206
|
+
}, [service]);
|
|
192
207
|
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(ClassicBaseDrawer_1.default, { title: translationText.advanced, open: isOpen, onSubmit: handleSubmit, onClose: handleClose, children: (0, jsx_runtime_1.jsx)(material_1.Paper, { sx: classes.paper, children: (0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, children: [(0, jsx_runtime_1.jsxs)(material_1.Grid, { item: true, xs: 12, container: true, children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, md: true }), (0, jsx_runtime_1.jsxs)(material_1.Grid, { item: true, sx: classes.buttonGroup, children: [(0, jsx_runtime_1.jsx)(material_1.Button, { variant: "outlined", color: "primary", endIcon: (0, jsx_runtime_1.jsx)(icons_material_1.ExpandMore, {}), "aria-controls": "simple-menu", "aria-haspopup": "true", onClick: function (e) {
|
|
193
208
|
e.stopPropagation();
|
|
194
209
|
setAnchorElRule(e.currentTarget);
|
|
195
|
-
}, children: translationText.addRule }), (0, jsx_runtime_1.jsx)(material_1.Menu, { id: "simple-menu", anchorEl: anchorElRule, keepMounted: true, open: Boolean(anchorElRule), onClose: function () { return handleButtonMenuClose(); }, children: Object.keys(
|
|
210
|
+
}, children: translationText.addRule }), (0, jsx_runtime_1.jsx)(material_1.Menu, { id: "simple-menu", anchorEl: anchorElRule, keepMounted: true, open: Boolean(anchorElRule), onClose: function () { return handleButtonMenuClose(); }, children: Object.keys(ruleType).map(function (type, idx) {
|
|
196
211
|
var _a;
|
|
197
212
|
return ((0, jsx_runtime_1.jsx)(material_1.MenuItem, { onClick: function () { return handleAddRule(type); }, children: ((_a = Object.entries(translationText.type).find(function (_a) {
|
|
198
213
|
var k = _a[0], val = _a[1];
|
|
@@ -14,7 +14,7 @@ var Recoils_1 = require("../Recoils");
|
|
|
14
14
|
function MockComponent(props) {
|
|
15
15
|
return (0, jsx_runtime_1.jsx)("div", {});
|
|
16
16
|
}
|
|
17
|
-
jest.mock('
|
|
17
|
+
jest.mock('AWING', function () { return ({
|
|
18
18
|
Actions: MockComponent,
|
|
19
19
|
}); });
|
|
20
20
|
var RecoilObserver = function (_a) {
|
|
@@ -80,6 +80,7 @@ export declare const RuleType: {
|
|
|
80
80
|
TargetAge: number;
|
|
81
81
|
TargetOS: number;
|
|
82
82
|
TargetDevice: number;
|
|
83
|
+
RetargetMacAddress: number;
|
|
83
84
|
};
|
|
84
85
|
export declare const RuleTypeOfCalculator: {
|
|
85
86
|
TargetGender: number;
|
|
@@ -87,6 +88,13 @@ export declare const RuleTypeOfCalculator: {
|
|
|
87
88
|
TargetOS: number;
|
|
88
89
|
TargetDevice: number;
|
|
89
90
|
};
|
|
91
|
+
export declare const RuleTypeOfCalculatorAXN: {
|
|
92
|
+
TargetGender: number;
|
|
93
|
+
TargetAge: number;
|
|
94
|
+
TargetOS: number;
|
|
95
|
+
TargetDevice: number;
|
|
96
|
+
RetargetMacAddress: number;
|
|
97
|
+
};
|
|
90
98
|
export declare const RuleGender: {
|
|
91
99
|
Female: string;
|
|
92
100
|
Male: string;
|
|
@@ -12,7 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.CampaignType = exports.ageRangeValueToText = exports.RuleAgeRange = exports.DEMO_GRAPHIC_AGE_RANGE = exports.getDescription = exports.isAdActive = exports.RuleGender = exports.RuleTypeOfCalculator = exports.RuleType = exports.nextChar = exports.getName = exports.getDefaultRule = exports.bonusValid = exports.bookingValid = exports.adsClassCValid = exports.groupClassCValid = exports.groupClassBValid = exports.campaignAdsValid = exports.ruleValid = exports.verifyExpr = exports.advancedValid = exports.weightsValid = exports.placeFilterValid = exports.dateRangeValid = exports.pageValid = exports.campaignAdValid = exports.validateAnalyticTypes = exports.checkValidUrl = exports.tabPartnerValid = exports.tabInfomationValid = exports.attributesValid = exports.nameValid = exports.directoryValid = exports.advancedSearchFormatDate = exports.getCampaignPriority = exports.checkCampaignIsRunning = exports.formatListCampaign = exports.getTotalBooking = exports.checkPriority = exports.getIndexPriority = void 0;
|
|
15
|
+
exports.CampaignType = exports.ageRangeValueToText = exports.RuleAgeRange = exports.DEMO_GRAPHIC_AGE_RANGE = exports.getDescription = exports.isAdActive = exports.RuleGender = exports.RuleTypeOfCalculatorAXN = exports.RuleTypeOfCalculator = exports.RuleType = exports.nextChar = exports.getName = exports.getDefaultRule = exports.bonusValid = exports.bookingValid = exports.adsClassCValid = exports.groupClassCValid = exports.groupClassBValid = exports.campaignAdsValid = exports.ruleValid = exports.verifyExpr = exports.advancedValid = exports.weightsValid = exports.placeFilterValid = exports.dateRangeValid = exports.pageValid = exports.campaignAdValid = exports.validateAnalyticTypes = exports.checkValidUrl = exports.tabPartnerValid = exports.tabInfomationValid = exports.attributesValid = exports.nameValid = exports.directoryValid = exports.advancedSearchFormatDate = exports.getCampaignPriority = exports.checkCampaignIsRunning = exports.formatListCampaign = exports.getTotalBooking = exports.checkPriority = exports.getIndexPriority = void 0;
|
|
16
16
|
var Types_1 = require("./Types");
|
|
17
17
|
var Enum_1 = require("./Enum");
|
|
18
18
|
var Helpers_1 = require("../../Utils/Helpers");
|
|
@@ -343,12 +343,12 @@ var getDefaultRule = function (type) {
|
|
|
343
343
|
operator: Enum_1.EnumOperator.In.id,
|
|
344
344
|
value: [],
|
|
345
345
|
};
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
346
|
+
case exports.RuleType.RetargetMacAddress:
|
|
347
|
+
return {
|
|
348
|
+
type: type,
|
|
349
|
+
operator: Enum_1.EnumOperator.IntersectExist.id,
|
|
350
|
+
value: '',
|
|
351
|
+
};
|
|
352
352
|
default:
|
|
353
353
|
return {};
|
|
354
354
|
}
|
|
@@ -373,14 +373,20 @@ exports.RuleType = {
|
|
|
373
373
|
TargetAge: 4,
|
|
374
374
|
TargetOS: 5,
|
|
375
375
|
TargetDevice: 6,
|
|
376
|
-
|
|
376
|
+
RetargetMacAddress: 7,
|
|
377
377
|
};
|
|
378
378
|
exports.RuleTypeOfCalculator = {
|
|
379
379
|
TargetGender: 3,
|
|
380
380
|
TargetAge: 4,
|
|
381
381
|
TargetOS: 5,
|
|
382
382
|
TargetDevice: 6,
|
|
383
|
-
|
|
383
|
+
};
|
|
384
|
+
exports.RuleTypeOfCalculatorAXN = {
|
|
385
|
+
TargetGender: 3,
|
|
386
|
+
TargetAge: 4,
|
|
387
|
+
TargetOS: 5,
|
|
388
|
+
TargetDevice: 6,
|
|
389
|
+
RetargetMacAddress: 7,
|
|
384
390
|
};
|
|
385
391
|
exports.RuleGender = {
|
|
386
392
|
Female: '0',
|
|
@@ -496,14 +502,12 @@ var getDescription = function (rule) {
|
|
|
496
502
|
result = result.replace('{1}', value.length);
|
|
497
503
|
}
|
|
498
504
|
break;
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
// }
|
|
506
|
-
// break
|
|
505
|
+
case exports.RuleType.RetargetMacAddress:
|
|
506
|
+
{
|
|
507
|
+
var textFormat = i18n_1.default.t('Campaign.Rule.DescriptionFormat.RetargetMacAddress');
|
|
508
|
+
result += textFormat.replace('{0}', JSON.parse(rule.parameter || '{}').name);
|
|
509
|
+
}
|
|
510
|
+
break;
|
|
507
511
|
default:
|
|
508
512
|
break;
|
|
509
513
|
}
|
|
@@ -19,18 +19,19 @@ var jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
19
19
|
// import Constants from "Commons/Constants";
|
|
20
20
|
var react_helmet_async_1 = require("react-helmet-async");
|
|
21
21
|
var react_i18next_1 = require("react-i18next");
|
|
22
|
+
var CreateDirectory_1 = __importDefault(require("../../AWING/Directory/CreateDirectory"));
|
|
22
23
|
var Router_1 = require("../../AWING/Router");
|
|
23
24
|
var i18n_1 = __importDefault(require("../../i18n"));
|
|
24
25
|
var Constant_1 = require("./Constant");
|
|
25
26
|
var Container_1 = __importDefault(require("./Container"));
|
|
26
27
|
var Context_1 = require("./Context");
|
|
27
28
|
var CreateOrEdit_1 = __importDefault(require("./CreateOrEdit"));
|
|
28
|
-
var
|
|
29
|
+
var Enum_1 = require("./Enum");
|
|
29
30
|
var Campaign = function (props) {
|
|
30
31
|
var paths = [
|
|
31
32
|
{
|
|
32
33
|
param: Constant_1.Constants.DIRECTORY_CREATE_DIRECTORY_PATH + '/:directoryId',
|
|
33
|
-
element: ((0, jsx_runtime_1.jsx)(CreateDirectory_1.default, __assign({ parentDirectory: 'campaign' }, props))),
|
|
34
|
+
element: ((0, jsx_runtime_1.jsx)(CreateDirectory_1.default, __assign({ parentDirectory: 'campaign', directoryRoot: Enum_1.DirectoryRoot.Campaign }, props))),
|
|
34
35
|
},
|
|
35
36
|
{
|
|
36
37
|
param: Constant_1.Constants.CAMPAIGN_CREATE + '/:tabName/*',
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { IFiltersProps } from
|
|
2
|
-
declare const Filters: ({ campaigns, handleFilters, loadingFlags, placeMultiSelectComponent: PlaceMultiSelect, handleExportExcel, }: IFiltersProps) => import("react/jsx-runtime").JSX.Element;
|
|
1
|
+
import { IFiltersProps } from '../../interface';
|
|
2
|
+
declare const Filters: ({ campaigns, handleFilters, loadingFlags, placeMultiSelectComponent: PlaceMultiSelect, handleExportExcel, disabledCampaignFilter, }: IFiltersProps) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default Filters;
|