awing-library 2.1.232-dev → 2.1.234-dev

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.
@@ -24,7 +24,6 @@ var lodash_1 = __importDefault(require("lodash"));
24
24
  var Helpers_1 = require("../../../../Utils/Helpers");
25
25
  var Router_1 = require("../../../../AWING/Router");
26
26
  var atoms_1 = require("../TabSubCampaign/atoms");
27
- var icons_material_1 = require("@mui/icons-material");
28
27
  var RunInBackground = function () {
29
28
  var campaignId = (0, Router_1.useParams)().campaignId;
30
29
  var subCampaigns = (0, recoil_1.useRecoilValue)(Recoils_1.campaignGroupsState);
@@ -223,8 +222,8 @@ var RunInBackground = function () {
223
222
  subCampaign = {
224
223
  subCampaigns: [
225
224
  {
226
- id: sub.campaignGroup.id,
227
- name: sub.campaignGroup.name,
225
+ id: sub === null || sub === void 0 ? void 0 : sub.campaignGroup.id,
226
+ name: sub === null || sub === void 0 ? void 0 : sub.campaignGroup.name,
228
227
  },
229
228
  ],
230
229
  ads: [],
@@ -244,20 +243,6 @@ var RunInBackground = function () {
244
243
  service.domainsGetByIds(ids).then(setDomains);
245
244
  }
246
245
  }, [service.domainsGetByIds, setDomains]);
247
- var dataDiff = function (apiData, currentData) {
248
- var mergedData = currentData.map(function (currentItem) {
249
- var matchingApiItem = apiData.find(function (apiItem) {
250
- return apiItem.domainId === currentItem.domainId &&
251
- apiItem.campaignGroupId === currentItem.campaignGroupId &&
252
- apiItem.campaignAdId === currentItem.campaignAdId;
253
- });
254
- if (matchingApiItem) {
255
- return __assign(__assign({}, currentItem), { status: matchingApiItem.status });
256
- }
257
- return currentItem;
258
- });
259
- return mergedData;
260
- };
261
246
  var campaignApprovalMerged = function (oldData, newData) {
262
247
  return newData.map(function (newItem) {
263
248
  var newDomainId = newItem.domain.domainId;
@@ -279,12 +264,9 @@ var RunInBackground = function () {
279
264
  };
280
265
  (0, react_1.useEffect)(function () {
281
266
  if (!Boolean(service.attributesGetByObjectTypeCode))
282
- icons_material_1.KeyboardReturn;
267
+ return undefined;
283
268
  if (!domains.length)
284
269
  return setCampaignApprovalTable([]);
285
- // if (campaignApproval?.length) {
286
- // return setCampaignApprovalTable(unflattenData(campaignApproval))
287
- // }
288
270
  if (areAllTrue(subCampaignDetailValid) &&
289
271
  areAllTrue(subCampaignAdsValid)) {
290
272
  var data = domains.map(function (domain) {
@@ -0,0 +1,230 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ var jsx_runtime_1 = require("react/jsx-runtime");
43
+ var react_1 = require("@testing-library/react");
44
+ var RunInBackground_1 = __importDefault(require("./RunInBackground"));
45
+ var recoil_1 = require("recoil");
46
+ var Router_1 = require("../../../../AWING/Router");
47
+ var Recoils_1 = require("../Recoils");
48
+ var mockSetCampaign = {
49
+ campaign: {
50
+ id: '5651975304736390227',
51
+ directoryId: '5',
52
+ directoryPath: '.0.5.5651975304736390227.',
53
+ name: 'Tester',
54
+ createdDate: {
55
+ seconds: '1728880372',
56
+ nanos: 0,
57
+ },
58
+ },
59
+ campaignGroups: [
60
+ {
61
+ campaignGroup: {
62
+ numberHasRun: 0,
63
+ id: 1,
64
+ campaignId: '5651975304736390227',
65
+ name: 'Sub-Campaign 1',
66
+ status: 2,
67
+ priority: 1,
68
+ bookingAmount: 10,
69
+ bonusAmount: 0,
70
+ billingUnit: 1,
71
+ },
72
+ ads: [
73
+ {
74
+ loginPage: {
75
+ pageId: '5122170857262705548',
76
+ directoryId: '12',
77
+ pageCode: 'lgn',
78
+ title: 'THACO_KIA_T7/24',
79
+ layoutId: '0',
80
+ transitionId: 0,
81
+ commonHtml: '',
82
+ directoryPath: '.0.6.12.5122170857262705548.',
83
+ createdDate: {
84
+ seconds: '1721031117',
85
+ nanos: 0,
86
+ },
87
+ },
88
+ welcomePage: {
89
+ pageId: '4841207366749869113',
90
+ directoryId: '11',
91
+ pageCode: 'wlc',
92
+ title: 'THACO_KIA_T7/24',
93
+ layoutId: '0',
94
+ transitionId: 0,
95
+ commonHtml: '',
96
+ directoryPath: '.0.6.11.4841207366749869113.',
97
+ createdDate: {
98
+ seconds: '1721031168',
99
+ nanos: 0,
100
+ },
101
+ },
102
+ places: [
103
+ {
104
+ placeId: '4719552610781237542',
105
+ domainId: '4657799247747765382',
106
+ name: 'VINBUS_PQ_68F-011.35',
107
+ address: 'Khu bãi dài, xã Gành dầu, TP. Phú Quốc, T. Kiên Giang',
108
+ description: '',
109
+ longitude: 103.84858,
110
+ latitude: 10.3380303,
111
+ communeCode: '31087',
112
+ districtCode: '911',
113
+ provinceCode: '91',
114
+ status: 0,
115
+ joinedDate: {
116
+ seconds: '1687167517',
117
+ nanos: 0,
118
+ },
119
+ },
120
+ ],
121
+ id: 1,
122
+ campaignId: '5651975304736390227',
123
+ campaignGroupId: 1,
124
+ name: 'Tester',
125
+ status: true,
126
+ type: 1,
127
+ loginId: '5122170857262705548',
128
+ welcomeId: '4841207366749869113',
129
+ startDate: {
130
+ seconds: '1728838800',
131
+ nanos: 0,
132
+ },
133
+ endDate: {
134
+ seconds: '1728838800',
135
+ nanos: 0,
136
+ },
137
+ placeFilter: {
138
+ operandGroups: [
139
+ {
140
+ operands: [
141
+ {
142
+ type: 2,
143
+ operator: 7,
144
+ value: '["4657799247747765382"]',
145
+ },
146
+ {
147
+ type: 0,
148
+ operator: 7,
149
+ value: '["4719552610781237542"]',
150
+ },
151
+ ],
152
+ },
153
+ ],
154
+ },
155
+ weights: [],
156
+ },
157
+ ],
158
+ },
159
+ ],
160
+ campaignAttributes: [
161
+ {
162
+ campaignId: '5651975304736390227',
163
+ attributeId: 1,
164
+ },
165
+ ],
166
+ campaignApprovals: [
167
+ {
168
+ id: 248,
169
+ campaignId: '5651975304736390227',
170
+ domainId: '4657799247747765382',
171
+ campaignGroupId: 1,
172
+ campaignAdId: 1,
173
+ status: 0,
174
+ loginId: '5122170857262705548',
175
+ welcomeId: '4841207366749869113',
176
+ description: '',
177
+ },
178
+ ],
179
+ };
180
+ var campaignId = '5651975304736390227';
181
+ var mockDomain = [
182
+ {
183
+ domainId: '4657799247747765382',
184
+ name: 'Vinbus',
185
+ rateSharing: 100,
186
+ description: 'Vinbus',
187
+ shareType: 0,
188
+ type: null,
189
+ },
190
+ ];
191
+ var mockCLientMethod = {
192
+ domainsGetByIds: function (_id) { return Promise.resolve(mockDomain); },
193
+ attributesGetByObjectTypeCode: function (_objectTypeCode) { return Promise.resolve([]); },
194
+ };
195
+ // Mock Hooks
196
+ jest.mock('ACM-AXN/Campaign/Hooks', function () { return ({
197
+ __esModule: true,
198
+ default: function () { return ({
199
+ service: {
200
+ domainsGetByIds: jest.fn(mockCLientMethod.domainsGetByIds),
201
+ attributesGetByObjectTypeCode: jest.fn(mockCLientMethod.attributesGetByObjectTypeCode),
202
+ },
203
+ }); },
204
+ }); });
205
+ var renderUi = function () {
206
+ var initializeState = function (_a) {
207
+ var set = _a.set;
208
+ set(Recoils_1.campaignModelState, mockSetCampaign);
209
+ };
210
+ return (0, react_1.render)((0, jsx_runtime_1.jsx)(recoil_1.RecoilRoot, { initializeState: initializeState, children: (0, jsx_runtime_1.jsx)(Router_1.BrowserRouter, { children: (0, jsx_runtime_1.jsx)(RunInBackground_1.default, {}) }) }));
211
+ };
212
+ describe('RunInBackground Component', function () {
213
+ it('should render without crashing', function () { return __awaiter(void 0, void 0, void 0, function () {
214
+ var spy;
215
+ return __generator(this, function (_a) {
216
+ switch (_a.label) {
217
+ case 0:
218
+ spy = jest.spyOn(mockCLientMethod, 'domainsGetByIds');
219
+ return [4 /*yield*/, (0, react_1.act)(function () { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
220
+ return [2 /*return*/, renderUi()];
221
+ }); }); })];
222
+ case 1:
223
+ _a.sent();
224
+ expect(spy).toBeCalledTimes(1);
225
+ expect(spy).toBeCalledWith(['4657799247747765382']);
226
+ return [2 /*return*/];
227
+ }
228
+ });
229
+ }); });
230
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "awing-library",
3
- "version": "2.1.232-dev",
3
+ "version": "2.1.234-dev",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",