@antscorp/antsomi-ui 2.0.64-staging.56 → 2.0.64-staging.58

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/CHANGELOG.md CHANGED
@@ -4,10 +4,11 @@ All notable changes to this project will be documented in this file. Dates are d
4
4
 
5
5
  Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
6
6
 
7
- #### [v2.0.64-staging.56](https://bitbucket.org/git-vn/at.packages.frontend/compare/v2.0.64-staging.56..v2.0.64-staging.54)
7
+ #### [v2.0.64-staging.58](https://bitbucket.org/git-vn/at.packages.frontend/compare/v2.0.64-staging.58..v2.0.64-staging.54)
8
8
 
9
- - chore: move document dep to dev-deps [`85e4164`](https://bitbucket.org/git-vn/at.packages.frontend/commits/85e416448deb33f946edd78fe07dc090a51a894f)
10
- - chore: update import icons [`6919a18`](https://bitbucket.org/git-vn/at.packages.frontend/commits/6919a18fa81e66db9f1102ca75c4ebe4d88a10fd)
9
+ - feat: add event tg [`3d5672b`](https://bitbucket.org/git-vn/at.packages.frontend/commits/3d5672bf798efc459cec8c2866692ecc48be1141)
10
+ - feat: update message activity timeline leads [`3b1590e`](https://bitbucket.org/git-vn/at.packages.frontend/commits/3b1590ee8c5aa8a1d671082f6fd72d9d85b6414b)
11
+ - feat: update message activity timeline leads [`8b4d22c`](https://bitbucket.org/git-vn/at.packages.frontend/commits/8b4d22cf8d1ad4a4cc0e7c36dcd8306ae9e2f7d7)
11
12
 
12
13
  #### [v2.0.64-staging.54](https://bitbucket.org/git-vn/at.packages.frontend/compare/v2.0.64-staging.54..v2.0.22)
13
14
 
@@ -229,6 +229,154 @@ const handleScreenviewEvent = (itemEvent, validateExtra, data) => {
229
229
  }
230
230
  }
231
231
  };
232
+ const handleLeadFormEvent = (validateExtra, valuesReplace, infoEvent) => {
233
+ delete valuesReplace.event_name;
234
+ if (validateExtra.form_name && validateExtra.lead_source) {
235
+ valuesReplace.form_name = validateExtra.form_name;
236
+ valuesReplace.lead_source = validateExtra.lead_source;
237
+ infoEvent.translateCode = translations._EVENT_DES_LEAD_3_INFO;
238
+ }
239
+ else if (validateExtra.lead_source) {
240
+ valuesReplace.lead_source = validateExtra.lead_source;
241
+ infoEvent.translateCode = translations._EVENT_DES_LEAD_2_INFO;
242
+ }
243
+ else {
244
+ infoEvent.translateCode = translations._EVENT_DES_LEAD_0_INFO;
245
+ }
246
+ };
247
+ const handleQrScanEvent = (validateExtra, valuesReplace, infoEvent) => {
248
+ delete valuesReplace.event_name;
249
+ valuesReplace.qr_code_id = validateExtra.qr_code?.id || 'N/A';
250
+ valuesReplace.status = validateExtra.status || 'N/A';
251
+ if (validateExtra.message_content) {
252
+ valuesReplace.message_content = validateExtra.message_content;
253
+ infoEvent.translateCode = translations._EVENT_DES_SCAN_FULL;
254
+ }
255
+ else {
256
+ infoEvent.translateCode = translations._EVENT_DES_SCAN_NO_ERR;
257
+ }
258
+ };
259
+ const handleClickBannerEvent = (validateExtra, valuesReplace, infoEvent) => {
260
+ delete valuesReplace.event_name;
261
+ valuesReplace.position = validateExtra.position || 'N/A';
262
+ infoEvent.translateCode = translations._EVENT_DES_CLICK_BANNER;
263
+ };
264
+ const handleClickButtonEvent = (validateExtra, valuesReplace, infoEvent) => {
265
+ delete valuesReplace.event_name;
266
+ valuesReplace.button_label = validateExtra.button_label || 'N/A';
267
+ valuesReplace.page_cate = validateExtra.page_cate || 'N/A';
268
+ infoEvent.translateCode = translations._EVENT_DES_CLICK_BUTTON;
269
+ };
270
+ const handleViewSchemeEvent = (validateExtra, valuesReplace, infoEvent) => {
271
+ delete valuesReplace.event_name;
272
+ valuesReplace.scheme_code =
273
+ validateExtra.scheme_marketing?.scheme_code || validateExtra.scheme_code || 'N/A';
274
+ infoEvent.translateCode = translations._EVENT_DES_VIEW_SCHEME_DETAILS;
275
+ };
276
+ const handleRedeemPointEvent = (validateExtra, valuesReplace, infoEvent, isSuccess) => {
277
+ delete valuesReplace.event_name;
278
+ valuesReplace.scheme_code =
279
+ validateExtra.scheme_marketing?.scheme_code || validateExtra.scheme_code || 'N/A';
280
+ if (isSuccess) {
281
+ infoEvent.translateCode = translations._EVENT_DES_REDEEM_SUCCESS;
282
+ }
283
+ else {
284
+ infoEvent.translateCode = translations._EVENT_DES_REDEEM_FAIL;
285
+ }
286
+ };
287
+ const handleUpdateRoleEvent = (validateExtra, valuesReplace, infoEvent) => {
288
+ delete valuesReplace.event_name;
289
+ valuesReplace.name = validateExtra.name || 'N/A';
290
+ valuesReplace.role = validateExtra.role || 'N/A';
291
+ infoEvent.translateCode = translations._EVENT_DES_UPDATE_ROLE;
292
+ };
293
+ const handleApproveRequestEvent = (validateExtra, valuesReplace, infoEvent) => {
294
+ delete valuesReplace.event_name;
295
+ valuesReplace.name = validateExtra.name || 'N/A';
296
+ infoEvent.translateCode = translations._EVENT_DES_APPROVE_REQ;
297
+ };
298
+ const handleAddMemberEvent = (validateExtra, valuesReplace, infoEvent) => {
299
+ delete valuesReplace.event_name;
300
+ valuesReplace.visitor_name = valuesReplace.customer_name;
301
+ valuesReplace.customer_name =
302
+ validateExtra.customers?.name || validateExtra.customer_name || 'N/A';
303
+ valuesReplace.name = validateExtra.name || 'N/A';
304
+ infoEvent.translateCode = translations._EVENT_DES_ADD_MEM;
305
+ };
306
+ const handleRemoveMemberEvent = (validateExtra, valuesReplace, infoEvent) => {
307
+ delete valuesReplace.event_name;
308
+ valuesReplace.name = validateExtra.name || 'N/A';
309
+ infoEvent.translateCode = translations._EVENT_DES_REMOVE_MEM;
310
+ };
311
+ const handleRequestAccessEvent = (validateExtra, valuesReplace, infoEvent) => {
312
+ delete valuesReplace.event_name;
313
+ valuesReplace.customer_name =
314
+ validateExtra.customer_name || validateExtra.customers?.name || valuesReplace.customer_name;
315
+ infoEvent.translateCode = translations._EVENT_DES_REQ_ACCESS;
316
+ };
317
+ const handleShareProgramEvent = (valuesReplace, infoEvent) => {
318
+ delete valuesReplace.event_name;
319
+ infoEvent.translateCode = translations._EVENT_DES_SHARE_PROGRAM;
320
+ };
321
+ const handleEarnRewardEvent = (validateExtra, valuesReplace, infoEvent, isReferrer) => {
322
+ delete valuesReplace.event_name;
323
+ valuesReplace.reward_value = validateExtra.reward_value || 'N/A';
324
+ valuesReplace.reward_type = validateExtra.reward_type || 'N/A';
325
+ if (isReferrer) {
326
+ infoEvent.translateCode = translations._EVENT_DES_EARN_REWARD_REFERRER;
327
+ }
328
+ else {
329
+ infoEvent.translateCode = translations._EVENT_DES_EARN_REWARD_REFEREE;
330
+ }
331
+ };
332
+ const handleCustomEventByEcEa = (eType, pageType, validateExtra, valuesReplace, infoEvent) => {
333
+ if ((eType === 'lead_formated' && pageType === 'sync') ||
334
+ (eType === 'lead_form' && pageType === 'submit')) {
335
+ handleLeadFormEvent(validateExtra, valuesReplace, infoEvent);
336
+ }
337
+ else if (eType === 'qr_code' && pageType === 'scan') {
338
+ handleQrScanEvent(validateExtra, valuesReplace, infoEvent);
339
+ }
340
+ else if (eType === 'banner' && pageType === 'click') {
341
+ handleClickBannerEvent(validateExtra, valuesReplace, infoEvent);
342
+ }
343
+ else if (eType === 'button' && pageType === 'click') {
344
+ handleClickButtonEvent(validateExtra, valuesReplace, infoEvent);
345
+ }
346
+ else if (eType === 'scheme_marketing' && pageType === 'view') {
347
+ handleViewSchemeEvent(validateExtra, valuesReplace, infoEvent);
348
+ }
349
+ else if (eType === 'point' && pageType === 'redeem_point') {
350
+ handleRedeemPointEvent(validateExtra, valuesReplace, infoEvent, true);
351
+ }
352
+ else if (eType === 'point' && pageType === 'redeem_point_fail') {
353
+ handleRedeemPointEvent(validateExtra, valuesReplace, infoEvent, false);
354
+ }
355
+ else if (eType === 'role' && pageType === 'update') {
356
+ handleUpdateRoleEvent(validateExtra, valuesReplace, infoEvent);
357
+ }
358
+ else if (eType === 'request' && pageType === 'approve') {
359
+ handleApproveRequestEvent(validateExtra, valuesReplace, infoEvent);
360
+ }
361
+ else if (eType === 'member' && pageType === 'add') {
362
+ handleAddMemberEvent(validateExtra, valuesReplace, infoEvent);
363
+ }
364
+ else if (eType === 'member' && pageType === 'remove') {
365
+ handleRemoveMemberEvent(validateExtra, valuesReplace, infoEvent);
366
+ }
367
+ else if (eType === 'access' && pageType === 'request') {
368
+ handleRequestAccessEvent(validateExtra, valuesReplace, infoEvent);
369
+ }
370
+ else if (eType === 'program' && pageType === 'share') {
371
+ handleShareProgramEvent(valuesReplace, infoEvent);
372
+ }
373
+ else if (eType === 'referrer' && pageType === 'earn_reward') {
374
+ handleEarnRewardEvent(validateExtra, valuesReplace, infoEvent, true);
375
+ }
376
+ else if (eType === 'referee' && pageType === 'earn_reward') {
377
+ handleEarnRewardEvent(validateExtra, valuesReplace, infoEvent, false);
378
+ }
379
+ };
232
380
  const handleEventTrackingCode = (eventTracking, keyTitleEvent, validateExtra, valuesReplace, infoEvent, config) => {
233
381
  const { story = {} } = validateExtra;
234
382
  if (eventTracking.map[keyTitleEvent]?.eventTrackingCode === 'promotion_code_sent_tracking') {
@@ -353,7 +501,7 @@ const processEventByType = (eType, itemEvent, validateExtra, data) => {
353
501
  handleScreenviewEvent(itemEvent, validateExtra, data);
354
502
  }
355
503
  };
356
- const buildInfoEvent = (infoEvent, eventTracking, keyTitleEvent, validateExtra, data, config) => {
504
+ const buildInfoEvent = (infoEvent, eventTracking, keyTitleEvent, validateExtra, data, config, eType, pageType) => {
357
505
  let valuesReplace = {};
358
506
  if (infoEvent) {
359
507
  infoEvent.iconName = get(eventTracking, `map.${keyTitleEvent}.iconUrl`);
@@ -375,6 +523,7 @@ const buildInfoEvent = (infoEvent, eventTracking, keyTitleEvent, validateExtra,
375
523
  valuesReplace = getValuesReplace(infoEvent.objectReplace, data);
376
524
  handleEventTrackingCode(eventTracking, keyTitleEvent, validateExtra, valuesReplace, infoEvent, config);
377
525
  }
526
+ handleCustomEventByEcEa(eType, pageType, validateExtra, valuesReplace, infoEvent);
378
527
  return { infoEvent, valuesReplace };
379
528
  };
380
529
  const buildFullContentEvent = (infoEvent, titleEvent, valuesReplace, data) => {
@@ -414,7 +563,7 @@ export const getInfoEvent = (params) => {
414
563
  processEventByType(eType, itemEvent, validateExtra, data);
415
564
  // Step 4: Build infoEvent and valuesReplace
416
565
  let infoEvent = DATA_EVENT.map[`${itemEvent.pageType} ${eType}`];
417
- const { infoEvent: processedInfoEvent, valuesReplace } = buildInfoEvent(infoEvent, eventTracking, keyTitleEvent, validateExtra, data, config);
566
+ const { infoEvent: processedInfoEvent, valuesReplace } = buildInfoEvent(infoEvent, eventTracking, keyTitleEvent, validateExtra, data, config, eType, itemEvent.pageType);
418
567
  infoEvent = processedInfoEvent;
419
568
  // Step 5: Build full content event text
420
569
  const fullContentEvent = buildFullContentEvent(infoEvent, titleEvent, valuesReplace, data);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antscorp/antsomi-ui",
3
- "version": "2.0.64-staging.56",
3
+ "version": "2.0.64-staging.58",
4
4
  "description": "An enterprise-class UI design language and React UI library.",
5
5
  "sideEffects": [
6
6
  "dist/*",
@@ -159,7 +159,7 @@
159
159
  },
160
160
  "devDependencies": {
161
161
  "@antscorp/antsomi-constants": "1.0.8-beta.1",
162
- "@antscorp/antsomi-locales": "^1.0.79",
162
+ "@antscorp/antsomi-locales": "^1.0.88",
163
163
  "@antscorp/eslint-config-antsomi": "1.0.4",
164
164
  "@babel/cli": "^7.23.4",
165
165
  "@babel/core": "^7.21.3",