@capillarytech/creatives-library 7.11.14 → 7.12.0

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 (59) hide show
  1. package/config/app.js +0 -1
  2. package/index.js +0 -6
  3. package/package.json +1 -1
  4. package/routes.js +2 -7
  5. package/services/api.js +2 -8
  6. package/v2Components/CapImageUpload/index.js +11 -24
  7. package/v2Components/CapImageUpload/index.scss +27 -12
  8. package/v2Components/CapImageUpload/messages.js +5 -10
  9. package/v2Components/TemplatePreview/_templatePreview.scss +1 -13
  10. package/v2Components/TemplatePreview/index.js +2 -41
  11. package/v2Components/TemplatePreview/tests/__snapshots__/index.test.js.snap +1 -33
  12. package/v2Components/TemplatePreview/tests/index.test.js +7 -7
  13. package/v2Containers/App/constants.js +1 -2
  14. package/v2Containers/Cap/messages.js +1 -20
  15. package/v2Containers/CreativesContainer/SlideBoxContent.js +11 -57
  16. package/v2Containers/CreativesContainer/SlideBoxHeader.js +2 -5
  17. package/v2Containers/CreativesContainer/constants.js +0 -1
  18. package/v2Containers/CreativesContainer/messages.js +0 -4
  19. package/v2Containers/CreativesContainer/tests/SlideBoxContent.test.js +4 -24
  20. package/v2Containers/CreativesContainer/tests/SlideBoxHeader.test.js +4 -23
  21. package/v2Containers/CreativesContainer/tests/__snapshots__/SlideBoxContent.test.js.snap +2 -147
  22. package/v2Containers/CreativesContainer/tests/__snapshots__/SlideBoxHeader.test.js.snap +1 -99
  23. package/v2Containers/CreativesContainer/tests/__snapshots__/index.test.js.snap +0 -71
  24. package/v2Containers/CreativesContainer/tests/index.test.js +9 -21
  25. package/v2Containers/Facebook/Advertisement/index.js +2 -4
  26. package/v2Containers/MobilePush/Edit/index.js +34 -21
  27. package/v2Containers/SmsTrai/Edit/tests/__snapshots__/index.test.js.snap +4 -4
  28. package/v2Containers/Templates/_templates.scss +1 -9
  29. package/v2Containers/Templates/actions.js +1 -2
  30. package/v2Containers/Templates/constants.js +0 -1
  31. package/v2Containers/Templates/index.js +174 -235
  32. package/v2Containers/Templates/messages.js +0 -20
  33. package/v2Containers/Templates/reducer.js +0 -2
  34. package/v2Containers/Templates/tests/__snapshots__/index.test.js.snap +80 -520
  35. package/v2Containers/TemplatesV2/index.js +1 -2
  36. package/v2Containers/TemplatesV2/messages.js +0 -4
  37. package/v2Containers/Whatsapp/constants.js +0 -287
  38. package/v2Containers/Whatsapp/index.js +22 -34
  39. package/v2Containers/Whatsapp/index.scss +2 -3
  40. package/v2Containers/Whatsapp/messages.js +13 -284
  41. package/v2Containers/Whatsapp/tests/__snapshots__/index.test.js.snap +1700 -35583
  42. package/v2Containers/Whatsapp/tests/__snapshots__/utils.test.js.snap +26 -32
  43. package/v2Containers/Whatsapp/tests/index.test.js +0 -13
  44. package/v2Containers/Whatsapp/tests/utils.test.js +8 -15
  45. package/v2Containers/mockdata.js +2181 -1190
  46. package/v2Containers/Assets/images/addCreativesIllustration.svg +0 -30
  47. package/v2Containers/Assets/images/rcsIllustration.png +0 -0
  48. package/v2Containers/Rcs/actions.js +0 -57
  49. package/v2Containers/Rcs/constants.js +0 -51
  50. package/v2Containers/Rcs/index.js +0 -1064
  51. package/v2Containers/Rcs/index.scss +0 -72
  52. package/v2Containers/Rcs/messages.js +0 -122
  53. package/v2Containers/Rcs/reducer.js +0 -107
  54. package/v2Containers/Rcs/sagas.js +0 -141
  55. package/v2Containers/Rcs/selectors.js +0 -8
  56. package/v2Containers/Rcs/tests/__snapshots__/index.test.js.snap +0 -145080
  57. package/v2Containers/Rcs/tests/index.test.js +0 -226
  58. package/v2Containers/Rcs/tests/mockData.js +0 -169
  59. package/v2Containers/Rcs/utils.js +0 -40
@@ -70,7 +70,6 @@ import * as lineActions from '../Line/Container/actions';
70
70
  import * as viberActions from '../Viber/actions';
71
71
  import * as facebookActions from '../Facebook/actions';
72
72
  import * as whatsappActions from '../Whatsapp/actions';
73
- import * as rcsActions from '../Rcs/actions';
74
73
  import CardGrid from '../../v2Components/CardGrid';
75
74
  import config from '../../config/app';
76
75
  import './_templates.scss';
@@ -98,9 +97,7 @@ import {
98
97
  WHATSAPP_STATUSES,
99
98
  } from '../Whatsapp/constants';
100
99
  import { getWhatsappContent, getWhatsappStatus, getWhatsappCategory } from '../Whatsapp/utils';
101
- import { getRCSContent } from '../Rcs/utils';
102
-
103
- import { MOBILE_PUSH, WECHAT, SMS, EMAIL, EBILL, LINE, VIBER, FACEBOOK, WHATSAPP, RCS } from '../CreativesContainer/constants';
100
+ import { MOBILE_PUSH, WECHAT, SMS, EMAIL, EBILL, LINE, VIBER, FACEBOOK, WHATSAPP } from '../CreativesContainer/constants';
104
101
 
105
102
  import {CREATIVE} from '../Facebook/constants';
106
103
 
@@ -108,8 +105,6 @@ import emailIllustration from '../Assets/images/emailIllustration.svg';
108
105
  import smsIllustration from '../Assets/images/smsIllustration.svg';
109
106
  import pushIllustration from '../Assets/images/pushIllustration.svg';
110
107
  import whatsappIllustration from '../Assets/images/whatsappIllustration.png';
111
- import rcsIllustration from '../Assets/images/rcsIllustration.png';
112
-
113
108
  import { CAP_SPACE_16, CAP_SPACE_44 } from '@capillarytech/cap-ui-library/styled/variables';
114
109
  import { GA } from '@capillarytech/cap-ui-utils';
115
110
  const { timeTracker } = GA;
@@ -149,18 +144,10 @@ const SMS_FILTERS = {
149
144
  };
150
145
 
151
146
  const WHATSAPP_LOWERCASE = WHATSAPP.toLowerCase();
152
- const RCS_LOWERCASE = RCS.toLowerCase();
153
147
  const SMS_LOWERCASE = SMS.toLowerCase();
154
148
  const MOBILE_PUSH_LOWERCASE = MOBILE_PUSH.toLowerCase();
155
149
  const EBILL_LOWERCASE = EBILL.toLowerCase();
156
150
  const LINE_LOWERCASE = LINE.toLowerCase();
157
- const duplicateEnum = {
158
- sms: "smsActions",
159
- line: "lineActions",
160
- [VIBER_CHANNEL]: "viberActions",
161
- [FACEBOOK_CHANNEL]: "facebookActions",
162
- [RCS_LOWERCASE]: "rcsActions",
163
- };
164
151
  export class Templates extends React.Component { // eslint-disable-line react/prefer-stateless-function
165
152
  constructor(props) {
166
153
  super(props);
@@ -190,7 +177,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
190
177
  lineFilter: LINE_FILTERS.ALL,
191
178
  smsFilter: SMS_FILTERS.ALL,
192
179
  selectedWhatsappStatus: '',
193
- selectedWhatsappCategory: '',
180
+ selectedWhatsappCategory: ''
194
181
  };
195
182
 
196
183
  this.handleOnHoverItem = this.handleOnHoverItem.bind(this);
@@ -261,9 +248,6 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
261
248
  activeMode = ACCOUNT_SELECTION_MODE;
262
249
  this.props.actions.getWeCrmAccounts(channel);
263
250
  break;
264
- case RCS:
265
- channel = 'Rcs';
266
- break;
267
251
  default:
268
252
  channel = '';
269
253
  }
@@ -294,7 +278,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
294
278
  if (this.props.location.query.type === 'embedded') {
295
279
  this.props.actions.resetAccount();
296
280
  }
297
- if (['line', VIBER_CHANNEL, FACEBOOK_CHANNEL, 'sms', 'email', 'ebill', RCS_LOWERCASE].includes((this.state.channel || '').toLowerCase())) {
281
+ if (['line', VIBER_CHANNEL, FACEBOOK_CHANNEL, 'sms', 'email', 'ebill'].includes((this.state.channel || '').toLowerCase())) {
298
282
  const queryParams = {
299
283
  // name: this.state.searchText,
300
284
  // sortBy: this.state.sortBy,
@@ -357,7 +341,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
357
341
  }
358
342
 
359
343
  this.setState({ channel }, () => {
360
- if (['line', VIBER_CHANNEL, FACEBOOK_CHANNEL, 'sms', 'email', 'ebill', RCS_LOWERCASE].includes(this.state.channel.toLowerCase()) || (this.state.channel.toLowerCase() === 'wechat' && !isEmpty(nextProps.Templates.selectedWeChatAccount))) {
344
+ if (['line', VIBER_CHANNEL, FACEBOOK_CHANNEL, 'sms', 'email', 'ebill'].includes(this.state.channel.toLowerCase()) || (this.state.channel.toLowerCase() === 'wechat' && !isEmpty(nextProps.Templates.selectedWeChatAccount))) {
361
345
  if (this.state.channel.toLowerCase() === 'wechat' && !isEmpty(nextProps.Templates.selectedWeChatAccount)) {
362
346
  params.wecrmId = (nextProps.Templates.selectedWeChatAccount.configs || {}).wecrm_app_id;
363
347
  params.wecrmToken = (nextProps.Templates.selectedWeChatAccount.configs || {}).wecrm_token;
@@ -420,13 +404,12 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
420
404
  });
421
405
  }
422
406
  }
423
-
424
- if ((selectedChannel === 'wechat' || selectedChannel === 'mobilepush') && isEmpty(nextProps.Templates.selectedWeChatAccount) && (this.props.location.query.type === 'embedded') && !this.isEnabledInLibraryModule("showAccountSelection")) {
407
+ if ((this.state.channel.toLowerCase() === 'wechat' || this.state.channel.toLowerCase() === 'mobilepush') && isEmpty(nextProps.Templates.selectedWeChatAccount) && (this.props.location.query.type === 'embedded') && !this.isEnabledInLibraryModule("showAccountSelection")) {
425
408
  let selectedAccount = '';
426
409
  if (isEmpty(nextProps.Templates.weCrmAccounts)) {
427
410
  return;
428
411
  }
429
- if (selectedChannel === 'wechat') {
412
+ if (this.state.channel.toLowerCase() === 'wechat') {
430
413
  forEach(nextProps.Templates.weCrmAccounts, (account) => {
431
414
  if (account.configs && account.configs.is_wecrm_enabled) {
432
415
  if (nextProps.location.query.source_account_id && account.sourceAccountIdentifier === nextProps.location.query.source_account_id) {
@@ -441,7 +424,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
441
424
  nextProps.actions.setWeChatAccount(selectedAccount);
442
425
  this.getAllTemplates({params});
443
426
  });
444
- } else if (selectedChannel === 'mobilepush' && (nextProps.location.query.account_id || nextProps.location.query.source_account_id)) {
427
+ } else if (this.state.channel.toLowerCase() === 'mobilepush' && (nextProps.location.query.account_id || nextProps.location.query.source_account_id)) {
445
428
  forEach(nextProps.Templates.weCrmAccounts, (account) => {
446
429
  if ((nextProps.location.query.account_id && account.id === Number(nextProps.location.query.account_id)) || (nextProps.location.query.source_account_id && account.sourceAccountIdentifier && account.sourceAccountIdentifier === nextProps.location.query.source_account_id)) {
447
430
  selectedAccount = account;
@@ -452,38 +435,37 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
452
435
  this.getAllTemplates({params});
453
436
  }
454
437
  }
455
- if (selectedChannel === "mobilepush" && nextProps.CreateMobilePush && nextProps.CreateMobilePush.response && nextProps.CreateMobilePush.response.templateId && nextProps.CreateMobilePush.response.templateId !== '') {
438
+ if ((this.state.channel || '').toLowerCase() === "mobilepush" && nextProps.CreateMobilePush && nextProps.CreateMobilePush.response && nextProps.CreateMobilePush.response.templateId && nextProps.CreateMobilePush.response.templateId !== '') {
456
439
 
457
440
  }
458
441
 
459
- if (selectedChannel === "ebill" && nextProps.CreateEbill && nextProps.CreateEbill.createResponse && nextProps.CreateEbill.createResponse.templateId && nextProps.CreateEbill.createResponse.templateId !== '') {
442
+ if ((this.state.channel || '').toLowerCase() === "ebill" && nextProps.CreateEbill && nextProps.CreateEbill.createResponse && nextProps.CreateEbill.createResponse.templateId && nextProps.CreateEbill.createResponse.templateId !== '') {
460
443
  const message = `${this.state.channel} ${this.props.intl.formatMessage(messages.templateDuplicateSuccess)}`;
461
444
  CapNotification.success({key: 'duplicateSucess', message});
462
445
  this.getAllTemplates({params, resetPage: true});
463
446
  this.props.ebillActions.clearStoreValues();
464
447
  }
465
448
 
466
- if (selectedChannel === "email" && nextProps.EmailCreate && nextProps.EmailCreate.duplicateResponse && nextProps.EmailCreate.duplicateResponse.templateId && nextProps.EmailCreate.duplicateResponse.templateId !== '') {
449
+ if ((this.state.channel || '').toLowerCase() === "email" && nextProps.EmailCreate && nextProps.EmailCreate.duplicateResponse && nextProps.EmailCreate.duplicateResponse.templateId && nextProps.EmailCreate.duplicateResponse.templateId !== '') {
467
450
  const message = `${this.state.channel} ${this.props.intl.formatMessage(messages.templateDuplicateSuccess)}`;
468
451
  CapNotification.success({key: 'duplicateSucess', message});
469
452
  this.getAllTemplates({params, resetPage: true});
470
453
  this.props.emailActions.clearStoreValues();
471
454
  }
472
455
 
473
- if (selectedChannel === "line" && nextProps.Line && nextProps.Line.response && nextProps.Line.response.templateId && nextProps.Line.response.templateId !== '') {
456
+ if ((this.state.channel || '').toLowerCase() === "line" && nextProps.Line && nextProps.Line.response && nextProps.Line.response.templateId && nextProps.Line.response.templateId !== '') {
474
457
  const message = `${this.state.channel} ${this.props.intl.formatMessage(messages.templateDuplicateSuccess)}`;
475
458
  CapNotification.success({key: 'duplicateSuccess', message});
476
459
  this.getAllTemplates({params, resetPage: true});
477
460
  this.props.lineActions.clearCreateResponse();
478
461
  }
479
462
 
480
-
481
463
  if (nextProps.Create && this.props.Create && nextProps.Create.createTemplateError && !isEqual(nextProps.Create.createTemplateError, this.props.Create.createTemplateError)) {
482
464
  const message = this.props.intl.formatMessage(messages.somethingWentWrong);
483
465
  if ((this.state.channel || '').toLowerCase() !== "sms") {
484
466
  CapNotification.error({key: 'somethingWrong', message});
485
467
  }
486
- const { smsActions, mobilepushActions, ebillActions, lineActions, viberActions, facebookActions, whatsappActions, rcsActions } = this.props;
468
+ const { smsActions, mobilepushActions, ebillActions, lineActions, viberActions, facebookActions, whatsappActions } = this.props;
487
469
  switch (selectedChannel) {
488
470
  case SMS_LOWERCASE:
489
471
  smsActions.clearCreateResponse();
@@ -506,9 +488,6 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
506
488
  case WHATSAPP_LOWERCASE:
507
489
  whatsappActions.clearCreateResponse();
508
490
  break;
509
- case RCS_LOWERCASE:
510
- rcsActions.clearCreateResponse();
511
- break;
512
491
  default:
513
492
  break;
514
493
  }
@@ -550,30 +529,28 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
550
529
  if (!isEmpty(nextProps.Templates.templateDetails) && !isEqual(nextProps.Templates.templateDetails, this.props.Templates.templateDetails)) {
551
530
  this.setState({previewTemplate: nextProps.Templates.templateDetails});
552
531
  }
553
- const weCrmAccountsList = get(nextProps, `Templates.weCrmAccounts`, []);
554
- const weCrmChannels = ['wechat', WHATSAPP_LOWERCASE];
555
532
 
556
- if (weCrmAccountsList.length === 1 && this.state.defaultAccount && (weCrmChannels.indexOf(selectedChannel) > -1)) {
533
+ if (nextProps.Templates.weCrmAccounts !== undefined && nextProps.Templates.weCrmAccounts.length === 1 && this.state.defaultAccount && (['wechat', WHATSAPP_LOWERCASE].indexOf(this.state.channel.toLowerCase()) > -1 )) {
557
534
  const paramsDefault = {
558
535
  name: this.state.searchText,
559
536
  sortBy: this.state.sortBy,
560
537
  };
561
- if (weCrmChannels.includes(selectedChannel)) {
562
- paramsDefault.wecrmId = weCrmAccountsList[0].configs.wecrm_app_id;
563
- paramsDefault.wecrmToken = weCrmAccountsList[0].configs.wecrm_token;
564
- paramsDefault.originalId = weCrmAccountsList[0].sourceAccountIdentifier;
565
- if ([WHATSAPP_LOWERCASE].includes(selectedChannel)) {
538
+ if (['wechat', WHATSAPP_LOWERCASE].includes(this.state.channel.toLowerCase())) {
539
+ paramsDefault.wecrmId = nextProps.Templates.weCrmAccounts[0].configs.wecrm_app_id;
540
+ paramsDefault.wecrmToken = nextProps.Templates.weCrmAccounts[0].configs.wecrm_token;
541
+ paramsDefault.originalId = nextProps.Templates.weCrmAccounts[0].sourceAccountIdentifier;
542
+ if (this.state.channel.toLowerCase() === WHATSAPP_LOWERCASE) {
566
543
  nextProps.actions.setChannelAccount(
567
- selectedChannel.toUpperCase(),
568
- weCrmAccountsList[0],
544
+ WHATSAPP,
545
+ nextProps.Templates.weCrmAccounts[0],
569
546
  );
570
547
  } else {
571
548
  nextProps.actions.setWeChatAccount(
572
- weCrmAccountsList[0],
549
+ nextProps.Templates.weCrmAccounts[0],
573
550
  );
574
551
  }
575
552
  }
576
- this.setState({ defaultAccount: false, activeMode: TEMPLATES_MODE, selectedAccount: weCrmAccountsList[0].name });
553
+ this.setState({defaultAccount: false, activeMode: TEMPLATES_MODE, selectedAccount: nextProps.Templates.weCrmAccounts[0].name });
577
554
  this.getAllTemplates({params: paramsDefault}, true);
578
555
  }
579
556
  }
@@ -593,13 +570,12 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
593
570
  name: this.state.searchText,
594
571
  sortBy: this.state.sortBy,
595
572
  };
596
- const selectedChannel = this.state.channel.toLowerCase();
597
- if (selectedChannel === 'wechat') {
573
+ if (this.state.channel.toLowerCase() === 'wechat') {
598
574
  params.wecrmId = this.props.Templates.weCrmAccounts[findIndex(this.props.Templates.weCrmAccounts, { name: value})].configs.wecrm_app_id;
599
575
  params.wecrmToken = this.props.Templates.weCrmAccounts[findIndex(this.props.Templates.weCrmAccounts, { name: value})].configs.wecrm_token;
600
576
  this.props.actions.setWeChatAccount(this.props.Templates.weCrmAccounts[findIndex(this.props.Templates.weCrmAccounts, { name: value})]);
601
577
  params.originalId = this.props.Templates.weCrmAccounts[findIndex(this.props.Templates.weCrmAccounts, { name: value})].sourceAccountIdentifier;
602
- } else if (selectedChannel === 'mobilepush') {
578
+ } else if (this.state.channel.toLowerCase() === 'mobilepush') {
603
579
  this.props.actions.setWeChatAccount(this.props.Templates.weCrmAccounts[findIndex(this.props.Templates.weCrmAccounts, { name: value})]);
604
580
  const account = this.props.Templates.weCrmAccounts[findIndex(this.props.Templates.weCrmAccounts, { name: value})];
605
581
  params.accountId = account.id;
@@ -612,8 +588,10 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
612
588
  } else {
613
589
  this.setState({selectedAccountError: false});
614
590
  }
615
- } else if ([LINE.toLowerCase(), WHATSAPP_LOWERCASE, RCS_LOWERCASE].includes(selectedChannel)) {
616
- this.props.actions.setChannelAccount(selectedChannel?.toUpperCase(), this.props.Templates.weCrmAccounts.find((item) => item.name === this.state.selectedAccount));
591
+ } else if (this.state.channel.toLowerCase() === LINE.toLowerCase()) {
592
+ this.props.actions.setChannelAccount(LINE, this.props.Templates.weCrmAccounts.find((item) => item.name === this.state.selectedAccount));
593
+ } else if (this.state.channel.toLowerCase() === WHATSAPP_LOWERCASE) {
594
+ this.props.actions.setChannelAccount(WHATSAPP, this.props.Templates.weCrmAccounts.find((item) => item.name === this.state.selectedAccount));
617
595
  }
618
596
 
619
597
  this.setState({activeMode: TEMPLATES_MODE});
@@ -662,7 +640,6 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
662
640
  const { name = '', versions = {} } = whatsappSelectedTemplateData;
663
641
  creativesParams.whatsappTemplateName = name;
664
642
  creativesParams.whatsappTemplateCategory = get(versions, `base.content.whatsapp.category`, '');
665
- creativesParams.whatsappTemplateLanguageCode = get(versions, `base.content.whatsapp.languages[0].language`, '');
666
643
  }
667
644
  }
668
645
  creativesParams.type = this.state.channel.toUpperCase();
@@ -766,12 +743,13 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
766
743
  }
767
744
 
768
745
  isStatusMatching = (status, selectedWhatsappStatus) => {
769
- if (this.props.isFullMode && selectedWhatsappStatus) {
746
+ if(this.props.isFullMode && selectedWhatsappStatus) {
770
747
  if ( [WHATSAPP_STATUSES.unsubmitted, WHATSAPP_STATUSES.pending].includes(status) ) {
771
748
  return selectedWhatsappStatus === WHATSAPP_STATUSES.awaitingApproval;
772
749
  }
773
- return selectedWhatsappStatus === status;
774
- } else if (!this.props.isFullMode) {
750
+ return selectedWhatsappStatus === status;
751
+ }
752
+ else if (!this.props.isFullMode){
775
753
  return status === WHATSAPP_STATUSES.approved;
776
754
  }
777
755
  return true;
@@ -792,7 +770,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
792
770
  );
793
771
  });
794
772
  }
795
-
773
+
796
774
  filterSMSTemplates = (templates) => {
797
775
  const { smsFilter } = this.state;
798
776
  if (SMS_FILTERS.ALL === smsFilter) {
@@ -808,43 +786,6 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
808
786
  return messages.creativesTemplatesEdit;
809
787
  }
810
788
 
811
- whatsappIllustrationText = (title, desc) =>
812
- <CapHeader
813
- title={
814
- <CapHeading type="h3" className="channel-specific-illustration-text">
815
- {this.props.intl.formatMessage(messages[title])}
816
- </CapHeading>
817
- }
818
- description={
819
- <CapLabel style={{ textAlign: "center" }}>
820
- {this.props.intl.formatMessage(messages[desc])}
821
- </CapLabel>
822
- }
823
- />
824
-
825
- getSmsEmailIllustration = () =>
826
- this.props.isDltFromRcs ? (
827
- <CapHeader
828
- title={
829
- <CapHeading type="h3" className="channel-specific-illustration-text">
830
- {this.props.intl.formatMessage(messages.rcsDltIllustrationTitle)}
831
- </CapHeading>
832
- }
833
- description={
834
- <CapLabel style={{ textAlign: 'center' }}>
835
- {this.props.intl.formatMessage(messages.rcsDltIllustrationDesc)}
836
- </CapLabel>
837
- }
838
- />
839
- ) : (
840
- <CapIllustration
841
- buttonClassName={`create-new-${this.state.channel.toLowerCase()}`}
842
- {...this.getChannelTypeIllustrationInfo(
843
- this.state.channel.toUpperCase(),
844
- )}
845
- />
846
- );
847
-
848
789
  getTemplateDataForGrid = ({templates, handlers, filterContent, channel, isLoading, loadingTip}) => {
849
790
  const currentChannel = channel.toUpperCase();
850
791
  const {channel: stateChannel} = this.state;
@@ -886,7 +827,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
886
827
  className={`view-${channelLowerCase}`}
887
828
  style={{marginRight: '16px'}}
888
829
  type="eye"
889
- onClick={() => { if (!this.props.isFullMode || this.props.isDltFromRcs) { this.props.handlePeviewTemplate(template); } else { handlers.handlePreviewClick(template); } }}
830
+ onClick={() => { if (this.props.isFullMode) { handlers.handlePreviewClick(template); } else { this.props.handlePeviewTemplate(template); } }}
890
831
  />,
891
832
  ],
892
833
  hoverOption: <CapButton className={this.props.isFullMode ? `edit-${channelLowerCase}` : `select-${channelLowerCase}`} onClick={(e) => handlers.handleEditClick(e, template, undefined, undefined, {account: this.state.selectedAccount})}>{hoverButtonText}</CapButton>,
@@ -903,7 +844,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
903
844
  } = {},
904
845
  } = {},
905
846
  } = template;
906
- if (this.props.isFullMode && !this.props.isDltFromRcs && !(this.state.channel.toUpperCase() === WHATSAPP && status === WHATSAPP_STATUSES.approved)) {
847
+ if (this.props.isFullMode && !(this.state.channel.toUpperCase() === WHATSAPP && status === WHATSAPP_STATUSES.approved)) {
907
848
  templateData.extra.push(<CapDropdown
908
849
  overlay={
909
850
  <CapMenu>
@@ -1054,11 +995,6 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
1054
995
 
1055
996
  templateData.content = getWhatsappContent(template).templateMsg;
1056
997
  break;
1057
- case RCS: {
1058
- templateData.title = template.name;
1059
- templateData.content = getRCSContent(template);
1060
- break;
1061
- }
1062
998
  default:
1063
999
  templateData.content = "";
1064
1000
  }
@@ -1066,12 +1002,6 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
1066
1002
  }) : [];
1067
1003
  const accountId = get(this.props, 'Templates.selectedWeChatAccount.uuid');
1068
1004
  const accounts = get(this.props, 'Templates.weCrmAccounts');
1069
- const noWhatsappTemplates = this.isFullMode() && isEmpty(templates);
1070
- const noFilteredWhatsappTemplates = this.isFullMode() && !isEmpty(templates) && isEmpty(filteredTemplates);
1071
- const noApprovedWhatsappTemplates = !this.isFullMode() && isEmpty(filteredTemplates);
1072
- const showWhatsappIllustration = !isEmpty(this.props.Templates.selectedWhatsappAccount) && [WHATSAPP_LOWERCASE].includes(channelLowerCase);
1073
- const showRcsIllustration = channelLowerCase === RCS_LOWERCASE && isEmpty(templates);
1074
- const noLoaderAndSearchText = isEmpty(this.state.searchText) && !isLoading;
1075
1005
  return (<div>
1076
1006
  {[WECHAT, MOBILE_PUSH].includes(currentChannel) && this.showAccountName()}
1077
1007
  {filterContent}
@@ -1088,7 +1018,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
1088
1018
  fbType={"list"}
1089
1019
  />
1090
1020
  </div>)
1091
- : ['sms', "email"].includes(this.state.channel.toLowerCase()) && !isLoading && this.getSmsEmailIllustration()
1021
+ : ['sms', "email"].includes(this.state.channel.toLowerCase()) && !isLoading && <CapIllustration buttonClassName={`create-new-${channelLowerCase}`} {...this.getChannelTypeIllustrationInfo(currentChannel)} />
1092
1022
  }
1093
1023
 
1094
1024
  {(this.state.selectedAccount === '' && isEmpty(this.props.Templates.selectedWeChatAccount)) && (this.state.channel.toLowerCase() === 'wechat' || this.state.channel.toLowerCase() === "mobilepush") &&
@@ -1114,27 +1044,52 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
1114
1044
  </div>
1115
1045
  )
1116
1046
  }
1117
- {showWhatsappIllustration &&
1118
- (
1119
- noLoaderAndSearchText &&
1120
- <div style={this.isFullMode() ? { height: "calc(100vh - 325px)", overflow: 'auto' } : {}}>
1121
- {noWhatsappTemplates && <CapIllustration buttonClassName={`create-new-${channelLowerCase}`} {...this.getChannelTypeIllustrationInfo(currentChannel)} />}
1122
- {noFilteredWhatsappTemplates && this.whatsappIllustrationText('noFilteredWhatsappTemplatesTitle', 'noFilteredWhatsappTemplatesDesc')}
1123
- {noApprovedWhatsappTemplates && this.whatsappIllustrationText('noApprovedWhatsappTemplatesTitle', 'noApprovedWhatsappTemplatesDesc')}
1124
- </div>
1125
- )
1126
- }
1127
- {showRcsIllustration &&
1128
- (
1129
- noLoaderAndSearchText &&
1047
+ { !isEmpty(this.props.Templates.selectedWhatsappAccount) && [WHATSAPP_LOWERCASE].includes(this.state.channel.toLowerCase()) && this.state.selectedAccountError ?
1048
+ <div style={{ height: '65vh', textAlign: 'center', lineHeight: '65vh'}}>
1049
+ <CapHeading type="h6" >
1050
+ {this.props.intl.formatMessage(messages.accountConfigError)}
1051
+ <InlineDiv>
1052
+ <CapLink title="here" style={{display: 'inline'}} onClick={() => { window.open(config.production.accountConfig`${accountId}`); }}/>
1053
+ </InlineDiv>
1054
+ </CapHeading>
1055
+ </div> : (
1056
+ [WHATSAPP_LOWERCASE].includes(this.state.channel.toLowerCase()) &&
1057
+ isEmpty(this.state.searchText) &&
1058
+ !isLoading &&
1130
1059
  <div style={this.isFullMode() ? { height: "calc(100vh - 325px)", overflow: 'auto' } : {}}>
1131
- <CapIllustration buttonClassName={`create-new-${channelLowerCase}`} {...this.getChannelTypeIllustrationInfo(currentChannel)} />
1060
+ {this.isFullMode() && isEmpty(templates) && <CapIllustration buttonClassName={`create-new-${channelLowerCase}`} {...this.getChannelTypeIllustrationInfo(currentChannel)} />}
1061
+ {this.isFullMode() && !isEmpty(templates) && isEmpty(filteredTemplates) && <CapHeader
1062
+ title={
1063
+ <CapHeading type="h3" style={{ textAlign: "center", marginTop: CAP_SPACE_44 }}>
1064
+ {this.props.intl.formatMessage(messages.noFilteredWhatsappTemplatesTitle)}
1065
+ </CapHeading>
1066
+ }
1067
+ description={
1068
+ <CapLabel style={{ textAlign: "center" }}>
1069
+ {this.props.intl.formatMessage(messages.noFilteredWhatsappTemplatesDesc)}
1070
+ </CapLabel>
1071
+ }
1072
+ />}
1073
+ {!this.isFullMode() && isEmpty(filteredTemplates) && <CapHeader
1074
+ title={
1075
+ <CapHeading type="h3" style={{ textAlign: "center", marginTop: CAP_SPACE_44 }}>
1076
+ {this.props.intl.formatMessage(messages.noApprovedWhatsappTemplatesTitle)}
1077
+ </CapHeading>
1078
+ }
1079
+ description={
1080
+ <CapLabel style={{ textAlign: "center" }}>
1081
+ {this.props.intl.formatMessage(messages.noApprovedWhatsappTemplatesDesc)}
1082
+ </CapLabel>
1083
+ }
1084
+ />}
1132
1085
  </div>
1133
1086
  )
1134
1087
  }
1135
1088
  </div>
1136
1089
  }
1090
+
1137
1091
  </CapSpin>
1092
+
1138
1093
  </div>);
1139
1094
  }
1140
1095
  filterLineTemplates = (templates) => {
@@ -1553,27 +1508,26 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
1553
1508
  this.props.actions.deleteTemplate(this.state.channel.toUpperCase(), template._id);
1554
1509
  this.setState({actionTemplate: {}});
1555
1510
  }
1556
- commonDuplicate(action, duplicateObj) {
1557
- const params = {
1558
- name: this.state.searchText,
1559
- sortBy: this.state.sortBy,
1560
- };
1561
- this.props[action].createTemplate(duplicateObj, (response) => {
1562
- if (response && response.templateId) {
1563
- const message = `${this.state.channel} ${this.props.intl.formatMessage(messages.templateDuplicateSuccess)}`;
1564
- CapNotification.success({key: 'duplicateSucess', message});
1565
- this.getAllTemplates({params, resetPage: true});
1566
- this.props[action].clearCreateResponse();
1567
- }
1568
- });
1569
- }
1570
1511
 
1571
1512
  duplicateTemplate(template) {
1572
1513
  const duplicateObj = cloneDeep(template);
1573
1514
  duplicateObj.name = `Copy of ${template.name} ${moment().format('MM-DD-YYYY HH:mm:ss')}`;
1574
1515
  delete duplicateObj._id;
1575
-
1576
- if (this.state.channel.toLowerCase() === "mobilepush") {
1516
+ const params = {
1517
+ name: this.state.searchText,
1518
+ sortBy: this.state.sortBy,
1519
+ };
1520
+ if (this.state.channel.toLowerCase() === "sms") {
1521
+ this.props.smsActions.createTemplate(duplicateObj, (response) => {
1522
+ if (response && response.templateId) {
1523
+ const message = `${this.state.channel} ${this.props.intl.formatMessage(messages.templateDuplicateSuccess)}`;
1524
+ CapNotification.success({key: 'duplicateSucess', message});
1525
+
1526
+ this.getAllTemplates({params, resetPage: true});
1527
+ this.props.smsActions.clearCreateResponse();
1528
+ }
1529
+ });
1530
+ } else if (this.state.channel.toLowerCase() === "mobilepush") {
1577
1531
  duplicateObj.definition.accountId = this.props.Templates.selectedWeChatAccount.id;
1578
1532
  this.props.mobilepushActions.createTemplate(duplicateObj, () => {
1579
1533
  const message = `${this.state.channel} ${this.props.intl.formatMessage(messages.templateDuplicateSuccess)}`;
@@ -1585,8 +1539,33 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
1585
1539
  this.props.ebillActions.createTemplate(duplicateObj);
1586
1540
  } else if (this.state.channel.toLowerCase() === "email") {
1587
1541
  this.props.emailActions.duplicateTemplate(template._id, "EMAIL");
1588
- } else if (["sms", "line", VIBER_CHANNEL, FACEBOOK_CHANNEL, RCS_LOWERCASE].includes(this.state.channel.toLowerCase())) {
1589
- this.commonDuplicate(duplicateEnum[this.state.channel.toLowerCase()], duplicateObj);
1542
+ } else if (this.state.channel.toLowerCase() === "line") {
1543
+ this.props.lineActions.createTemplate(duplicateObj, (response) => {
1544
+ if (response && response.templateId) {
1545
+ const message = `${this.state.channel} ${this.props.intl.formatMessage(messages.templateDuplicateSuccess)}`;
1546
+ CapNotification.success({key: 'duplicateSucess', message});
1547
+ this.getAllTemplates({params, resetPage: true});
1548
+ this.props.lineActions.clearCreateResponse();
1549
+ }
1550
+ });
1551
+ } else if (this.state.channel.toLowerCase() === VIBER_CHANNEL) {
1552
+ this.props.viberActions.createTemplate(duplicateObj, (response) => {
1553
+ if (response && response.templateId) {
1554
+ const message = `${this.state.channel} ${this.props.intl.formatMessage(messages.templateDuplicateSuccess)}`;
1555
+ CapNotification.success({key: 'duplicateSucess', message});
1556
+ this.getAllTemplates({params, resetPage: true});
1557
+ this.props.viberActions.clearCreateResponse();
1558
+ }
1559
+ });
1560
+ } else if (this.state.channel.toLowerCase() === FACEBOOK_CHANNEL) {
1561
+ this.props.facebookActions.createTemplate(duplicateObj, (response) => {
1562
+ if (response && response.templateId) {
1563
+ const message = `${this.state.channel} ${this.props.intl.formatMessage(messages.templateDuplicateSuccess)}`;
1564
+ CapNotification.success({key: 'duplicateSucess', message});
1565
+ this.getAllTemplates({params, resetPage: true});
1566
+ this.props.facebookActions.clearCreateResponse();
1567
+ }
1568
+ });
1590
1569
  }
1591
1570
  }
1592
1571
 
@@ -1637,74 +1616,55 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
1637
1616
  const module = this.props.location.query.module;
1638
1617
  const isLanguageSupport = (this.props.location.query.isLanguageSupport) ? this.props.location.query.isLanguageSupport : false;
1639
1618
  const isEdmSupport = (this.props.location.query.isEdmSupport !== "false") || false;
1640
- const channelLowerCase = this.state.channel.toLowerCase();
1641
- const channelUpperCase = this.state.channel.toUpperCase();
1642
- let getQuery = type === 'embedded' ? { type: 'embedded', module, account_id: this.props.location.query.account_id } : { module };
1619
+ let getQuery = "";
1643
1620
  let pathName = path;
1644
1621
  e.stopPropagation();
1645
1622
 
1646
1623
  this.props.actions.resetTemplateData();
1647
- switch (channelLowerCase) {
1648
- case 'sms': {
1649
- pathName = `/sms/edit/${id}`;
1650
- break;
1651
- }
1652
- case 'mobilepush': {
1653
- pathName = `/mobilepush/edit/${id}`;
1654
- break;
1655
- }
1656
- case 'email': {
1657
- pathName = `/email/edit/${id}`;
1658
- getQuery = type === 'embedded' ? { type: 'embedded', module, isLanguageSupport, isEdmSupport } : { module, isEdmSupport };
1659
- break;
1660
- }
1661
- case 'ebill': {
1662
- pathName = `/ebill/edit/${id}`;
1663
- break;
1664
- }
1665
- case 'line': {
1666
- const { messages } = template.versions.base.content;
1667
- const type = messages && messages[0] && messages[0].type;
1668
- pathName = `/line/edit/${id}/${type}`;
1669
- if (options && options.account) {
1670
- pathName += `/${options.account}`;
1671
- }
1672
- break;
1673
- }
1674
- case VIBER_CHANNEL: {
1675
- pathName = `/viber/edit/${id}/`;
1676
- break;
1677
- }
1678
- case FACEBOOK_CHANNEL: {
1679
- pathName = `/facebook/edit/${id}/`;
1680
- break;
1681
- }
1682
- default:
1683
- break;
1624
+ if (this.state.channel.toLowerCase() === 'sms') {
1625
+ pathName = `/sms/edit/${id}`;
1684
1626
  }
1685
- switch (channelUpperCase) {
1686
- case WECHAT: {
1687
- if (get(template, 'definition.msgcontent', '') === "RICH_MEDIA_WECHAT") {
1688
- pathName = `/wechat/richmedia/edit/${id}`;
1689
- } else {
1690
- pathName = `/wechat/edit/${id}`;
1691
- }
1692
- break;
1693
- }
1694
- case WHATSAPP: {
1695
- pathName = `/whatsapp/edit/${id}/`;
1696
- break;
1627
+ if (this.state.channel.toLowerCase() === 'mobilepush') {
1628
+ pathName = `/mobilepush/edit/${id}`;
1629
+ }
1630
+ if (this.state.channel.toLowerCase() === 'email') {
1631
+ pathName = `/email/edit/${id}`;
1632
+ }
1633
+ if (this.state.channel.toLowerCase() === 'email') {
1634
+ getQuery = type === 'embedded' ? {type: 'embedded', module, isLanguageSupport, isEdmSupport} : {module, isEdmSupport};
1635
+ } else {
1636
+ getQuery = type === 'embedded' ? {type: 'embedded', module, account_id: this.props.location.query.account_id} : {module};
1637
+ }
1638
+ if (this.state.channel.toLowerCase() === 'ebill') {
1639
+ pathName = `/ebill/edit/${id}`;
1640
+ }
1641
+ if (this.state.channel.toLowerCase() === 'line') {
1642
+ const { messages } = template.versions.base.content;
1643
+ const type = messages && messages[0] && messages[0].type;
1644
+ pathName = `/line/edit/${id}/${type}`;
1645
+ if (options && options.account) {
1646
+ pathName += `/${options.account}`;
1697
1647
  }
1698
- case RCS: {
1699
- pathName = `/rcs/edit/${id}/`;
1700
- break;
1648
+ }
1649
+ if (this.state.channel.toLowerCase() === VIBER_CHANNEL) {
1650
+ pathName = `/viber/edit/${id}/`;
1651
+ }
1652
+ if (this.state.channel.toLowerCase() === FACEBOOK_CHANNEL) {
1653
+ pathName = `/facebook/edit/${id}/`;
1654
+ }
1655
+ if (this.state.channel.toUpperCase() === WECHAT) {
1656
+ if (get(template, 'definition.msgcontent', '') === "RICH_MEDIA_WECHAT") {
1657
+ pathName = `/wechat/richmedia/edit/${id}`;
1658
+ } else {
1659
+ pathName = `/wechat/edit/${id}`;
1701
1660
  }
1702
- default:
1703
- break;
1661
+ }
1662
+ if (this.state.channel.toUpperCase() === WHATSAPP) {
1663
+ pathName = `/whatsapp/edit/${id}/`;
1704
1664
  }
1705
1665
  if (this.isEnabledInLibraryModule("callSelectFromProps")) {
1706
1666
  let data = id;
1707
- if (this.props.fbAdManager || this.props.isDltFromRcs) {
1667
+ if (this.props.fbAdManager) {
1708
1668
  data = this.selectTemplate(id);
1709
1669
  }
1710
1670
  this.props.onSelectTemplate(data, this.props.fbAdManager);
@@ -1993,12 +1953,6 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
1993
1953
  return isDisabled;
1994
1954
  }
1995
1955
 
1996
- checkLoader = (channel) => {
1997
- const {
1998
- getAllTemplatesInProgress,
1999
- } = this.props.Templates || {};
2000
- return (getAllTemplatesInProgress && this.state.channel.toLowerCase() === channel);
2001
- }
2002
1956
 
2003
1957
  isLoading = () => {
2004
1958
  const { EmailCreate, Templates } = this.props;
@@ -2008,11 +1962,10 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
2008
1962
  fetchingWeCrmAccounts,
2009
1963
  sendingFile,
2010
1964
  } = Templates;
2011
- const lineLoader = this.checkLoader('line');
2012
- const smsLoader = this.checkLoader('sms');
2013
- const viberLoader = this.checkLoader(VIBER_CHANNEL);
2014
- const facebookLoader = this.checkLoader(FACEBOOK_CHANNEL);
2015
- const rcsLoader = this.checkLoader(RCS_LOWERCASE);
1965
+ const lineLoader = (getAllTemplatesInProgress && this.state.channel.toLowerCase() === 'line');
1966
+ const smsLoader = (getAllTemplatesInProgress && this.state.channel.toLowerCase() === 'sms');
1967
+ const viberLoader = (getAllTemplatesInProgress && this.state.channel.toLowerCase() === VIBER_CHANNEL);
1968
+ const facebookLoader = (getAllTemplatesInProgress && this.state.channel.toLowerCase() === FACEBOOK_CHANNEL);
2016
1969
 
2017
1970
  const wechatLoader = (((this.state.selectedAccount !== '' && getAllTemplatesInProgress) || (fetchingWeCrmAccounts)) && this.state.channel.toLowerCase() === 'wechat');
2018
1971
  const whatsappLoader = (((this.state.selectedAccount !== '' && getAllTemplatesInProgress) || (fetchingWeCrmAccounts)) && this.state.channel.toLowerCase() === WHATSAPP_LOWERCASE);
@@ -2031,8 +1984,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
2031
1984
  (mobilePushLoader !== undefined ? mobilePushLoader : false) ||
2032
1985
  (lineLoader !== undefined ? lineLoader : false) ||
2033
1986
  (facebookLoader !== undefined ? facebookLoader : false) ||
2034
- (viberLoader !== undefined ? viberLoader : false) ||
2035
- (rcsLoader !== undefined ? rcsLoader : false);
1987
+ (viberLoader !== undefined ? viberLoader : false);
2036
1988
  return isLoading;
2037
1989
  }
2038
1990
  getChannelTypeIllustrationInfo = (type) => {
@@ -2069,17 +2021,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
2069
2021
  title: <FormattedMessage {...messages.whatsappTitleIllustration} values={{ template: templateText }} />,
2070
2022
  description: <FormattedMessage {...messages.whatsappDescIllustration} />,
2071
2023
  descriptionPosition: 'bottom',
2072
- descriptionClassName: 'illustration-desc',
2073
- };
2074
- case RCS:
2075
- return {
2076
- buttonLabel: <FormattedMessage {...messages.newRCSTemplate} values={{ template: templateText }} />,
2077
- onClick: this.createTemplate,
2078
- illustrationImage: rcsIllustration,
2079
- title: <FormattedMessage {...messages.rcsTitleIllustartion} values={{ template: templateText }} />,
2080
- description: <FormattedMessage {...messages.rcsDescIllustartion} />,
2081
- descriptionPosition: 'bottom',
2082
- descriptionClassName: 'illustration-desc rcs-illustration',
2024
+ descriptionClassName: 'whatsapp-illustration-desc',
2083
2025
  };
2084
2026
  default:
2085
2027
  return {};
@@ -2136,7 +2078,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
2136
2078
  const { weCrmAccounts = [], fetchingWeCrmAccounts = false, campaignSettings = {} } = templates;
2137
2079
  const isWechatChannel = channel === WECHAT;
2138
2080
  const isMobilePushChannel = channel === MOBILE_PUSH;
2139
- const isFacebookChannel = channel === FACEBOOK;
2081
+ const isFacebookChannel = channel === FACEBOOK;
2140
2082
 
2141
2083
  if ([WECHAT, MOBILE_PUSH, LINE, WHATSAPP].includes(channel) && !isEmpty(weCrmAccounts) && !isFacebookChannel) {
2142
2084
  forEach(weCrmAccounts, (account) => {
@@ -2275,7 +2217,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
2275
2217
  [MOBILE_PUSH]: 'mobilepushAccount',
2276
2218
  [WECHAT]: 'wechatAccount',
2277
2219
  [WHATSAPP]: 'whatsappAccount',
2278
- };
2220
+ }
2279
2221
  return formatMessage(messages[channelObj[channel?.toUpperCase()]]);
2280
2222
  }
2281
2223
 
@@ -2384,13 +2326,13 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
2384
2326
  }
2385
2327
  }
2386
2328
 
2387
- const showForChannels = (![VIBER_CHANNEL, FACEBOOK_CHANNEL].includes(channel.toLowerCase()) ||
2329
+ const showForViber = (![VIBER_CHANNEL, FACEBOOK_CHANNEL].includes(channel.toLowerCase()) ||
2388
2330
  (channel.toLowerCase() === VIBER_CHANNEL && !this.props.isFullMode && isEmpty(get(this.props, 'Templates.selectedViberAccount', {}))) ||
2389
2331
  (channel.toLowerCase() === FACEBOOK_CHANNEL && showFbAds)
2390
2332
  );
2391
2333
 
2392
2334
 
2393
- if (activeMode === ACCOUNT_SELECTION_MODE && showForChannels ) {
2335
+ if (activeMode === ACCOUNT_SELECTION_MODE && showForViber ) {
2394
2336
  return this.renderAccountSelection();
2395
2337
  }
2396
2338
 
@@ -2424,12 +2366,12 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
2424
2366
  const channelLowerCase = (channel || '').toLowerCase();
2425
2367
  const isTraiDltFeature = this.checkDLTfeatureEnable();
2426
2368
 
2427
- const createButton =
2369
+ const createButton =
2428
2370
  ( channelLowerCase === WHATSAPP_LOWERCASE && !this.props.isFullMode )
2429
2371
  ? (
2430
- <CapLink
2431
- onClick={this.openCreativesFullMode}
2432
- title={formatMessage(messages.createNewTemplateLink)}
2372
+ <CapLink
2373
+ onClick={this.openCreativesFullMode}
2374
+ title={formatMessage(messages.createNewTemplateLink)}
2433
2375
  suffix={<CapIcon type="open-in-new" size="s" />}
2434
2376
  className="create-new-link"
2435
2377
  />
@@ -2484,7 +2426,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
2484
2426
  onSelect={this.setWhatsappStatus}
2485
2427
  selectedValue={this.state.selectedWhatsappStatus}
2486
2428
  placeholder="Status"
2487
- showBadge
2429
+ showBadge={true}
2488
2430
  width="90px"
2489
2431
  />
2490
2432
  ) : null
@@ -2495,12 +2437,12 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
2495
2437
  onSelect={this.setWhatsappCategory}
2496
2438
  selectedValue={this.state.selectedWhatsappCategory}
2497
2439
  placeholder="Category"
2498
- showBadge
2440
+ showBadge={true}
2499
2441
  width="105px"
2500
2442
  overlayStyle={{ overflowY: "hidden" }}
2501
2443
  />
2502
2444
  </div>
2503
-
2445
+
2504
2446
  )
2505
2447
  }
2506
2448
  {
@@ -2578,7 +2520,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
2578
2520
  </div>
2579
2521
  </CapTooltip>
2580
2522
  )
2581
- : isfilterContentVisisble && !isWechatEmbedded && !this.props.isDltFromRcs && createButton
2523
+ : isfilterContentVisisble && !isWechatEmbedded && createButton
2582
2524
  }
2583
2525
  </div>
2584
2526
 
@@ -2709,9 +2651,7 @@ Templates.propTypes = {
2709
2651
  viberActions: PropTypes.object,
2710
2652
  facebookActions: PropTypes.object,
2711
2653
  whatsappActions: PropTypes.object,
2712
- rcsActions: PropTypes.object,
2713
2654
  smsRegister: PropTypes.any,
2714
- isDltFromRcs: PropTypes.bool,
2715
2655
  };
2716
2656
 
2717
2657
  const mapStateToProps = createStructuredSelector({
@@ -2740,7 +2680,6 @@ function mapDispatchToProps(dispatch) {
2740
2680
  viberActions: bindActionCreators(viberActions, dispatch),
2741
2681
  facebookActions: bindActionCreators(facebookActions, dispatch),
2742
2682
  whatsappActions: bindActionCreators(whatsappActions, dispatch),
2743
- rcsActions: bindActionCreators(rcsActions, dispatch),
2744
2683
  };
2745
2684
  }
2746
2685