@capillarytech/creatives-library 8.0.339 → 8.0.340-beta.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 (159) hide show
  1. package/app.js +8 -1
  2. package/global-styles.js +4 -0
  3. package/package.json +2 -2
  4. package/styles/components/navigation/_leftnav.scss +1 -1
  5. package/utils/tests/tagValidations.test.js +20 -0
  6. package/v2Components/AccessForbidden/index.js +1 -1
  7. package/v2Components/CapActionButton/index.js +5 -5
  8. package/v2Components/CapCustomSkeleton/index.js +1 -1
  9. package/v2Components/CapDeviceContent/index.js +5 -5
  10. package/v2Components/CapDocumentUpload/index.js +1 -1
  11. package/v2Components/CapImageUpload/index.js +1 -1
  12. package/v2Components/CapInAppCTA/index.js +118 -112
  13. package/v2Components/CapMpushCTA/index.js +72 -66
  14. package/v2Components/CapTagList/index.js +32 -27
  15. package/v2Components/CapTagList/style.scss +29 -0
  16. package/v2Components/CapTagListWithInput/__tests__/CapTagListWithInput.test.js +63 -0
  17. package/v2Components/CapTagListWithInput/index.js +4 -0
  18. package/v2Components/CapVideoUpload/index.js +1 -1
  19. package/v2Components/CapWhatsappCTA/index.js +130 -124
  20. package/v2Components/CapWhatsappCarouselButton/index.js +27 -29
  21. package/v2Components/CapWhatsappQuickReply/index.js +7 -7
  22. package/v2Components/Carousel/index.js +1 -1
  23. package/v2Components/CommonTestAndPreview/AddTestCustomer.js +1 -1
  24. package/v2Components/CommonTestAndPreview/CustomValuesEditor.js +3 -3
  25. package/v2Components/CommonTestAndPreview/CustomerCreationModal.js +1 -1
  26. package/v2Components/CommonTestAndPreview/DeliverySettings/ModifyDeliverySettings.js +4 -4
  27. package/v2Components/CommonTestAndPreview/DeliverySettings/index.js +1 -1
  28. package/v2Components/CommonTestAndPreview/ExistingCustomerModal.js +6 -6
  29. package/v2Components/CommonTestAndPreview/LeftPanelContent.js +5 -5
  30. package/v2Components/CommonTestAndPreview/PreviewSection.js +1 -1
  31. package/v2Components/CommonTestAndPreview/UnifiedPreview/DeviceFrame.js +1 -1
  32. package/v2Components/CommonTestAndPreview/UnifiedPreview/EmailPreviewContent.js +8 -8
  33. package/v2Components/CommonTestAndPreview/UnifiedPreview/InAppPreviewContent.js +14 -13
  34. package/v2Components/CommonTestAndPreview/UnifiedPreview/MobilePushPreviewContent.js +22 -21
  35. package/v2Components/CommonTestAndPreview/UnifiedPreview/RcsPreviewContent.js +9 -9
  36. package/v2Components/CommonTestAndPreview/UnifiedPreview/SmsPreviewContent.js +8 -8
  37. package/v2Components/CommonTestAndPreview/UnifiedPreview/ViberPreviewContent.js +10 -10
  38. package/v2Components/CommonTestAndPreview/UnifiedPreview/WhatsAppPreviewContent.js +13 -12
  39. package/v2Components/CommonTestAndPreview/UnifiedPreview/ZaloPreviewContent.js +4 -3
  40. package/v2Components/CommonTestAndPreview/UnifiedPreview/_unifiedPreview.scss +10 -5
  41. package/v2Components/CommonTestAndPreview/UnifiedPreview/index.js +1 -1
  42. package/v2Components/CommonTestAndPreview/_commonTestAndPreview.scss +3 -4
  43. package/v2Components/CommonTestAndPreview/index.js +1 -1
  44. package/v2Components/CustomerSearchSection/_customerSearch.scss +2 -1
  45. package/v2Components/CustomerSearchSection/index.js +9 -9
  46. package/v2Components/EmailMobilePreview/index.js +1 -1
  47. package/v2Components/ErrorInfoNote/index.js +13 -11
  48. package/v2Components/ErrorInfoNote/style.scss +1 -1
  49. package/v2Components/FormBuilder/_formBuilder.scss +1 -0
  50. package/v2Components/FormBuilder/index.js +39 -40
  51. package/v2Components/HtmlEditor/HTMLEditor.js +10 -5
  52. package/v2Components/HtmlEditor/__tests__/HTMLEditor.apiErrors.test.js +1 -0
  53. package/v2Components/HtmlEditor/__tests__/HTMLEditor.test.js +927 -2
  54. package/v2Components/HtmlEditor/_htmlEditor.scss +2 -1
  55. package/v2Components/HtmlEditor/components/CodeEditorPane/index.js +4 -1
  56. package/v2Components/HtmlEditor/components/DeviceToggle/_deviceToggle.scss +2 -2
  57. package/v2Components/HtmlEditor/components/DeviceToggle/index.js +2 -2
  58. package/v2Components/HtmlEditor/components/EditorToolbar/PreviewModeGroup.js +2 -2
  59. package/v2Components/HtmlEditor/components/EditorToolbar/index.js +2 -2
  60. package/v2Components/HtmlEditor/components/InAppPreviewPane/index.js +1 -0
  61. package/v2Components/HtmlEditor/components/PreviewPane/index.js +2 -2
  62. package/v2Components/HtmlEditor/components/SplitContainer/SplitContainer.js +2 -2
  63. package/v2Components/HtmlEditor/components/SplitContainer/_splitContainer.scss +2 -1
  64. package/v2Components/HtmlEditor/components/ValidationPanel/index.js +6 -9
  65. package/v2Components/HtmlEditor/components/ValidationTabs/index.js +2 -2
  66. package/v2Components/NavigationBar/index.js +7 -1
  67. package/v2Components/TemplatePreview/WechatRichmediaTemplatePreview/index.js +3 -4
  68. package/v2Components/TemplatePreview/_templatePreview.scss +5 -3
  69. package/v2Components/TemplatePreview/index.js +11 -9
  70. package/v2Components/TestAndPreviewSlidebox/CustomValuesEditor.js +3 -3
  71. package/v2Components/TestAndPreviewSlidebox/LeftPanelContent.js +5 -5
  72. package/v2Components/TestAndPreviewSlidebox/PreviewSection.js +3 -3
  73. package/v2Components/TestAndPreviewSlidebox/_testAndPreviewSlidebox.scss +4 -2
  74. package/v2Containers/BeeEditor/index.js +3 -0
  75. package/v2Containers/BeePopupEditor/index.js +1 -1
  76. package/v2Containers/CommunicationFlow/CommunicationFlow.js +5 -5
  77. package/v2Containers/CommunicationFlow/steps/ChannelSelectionStep/ChannelSelectionStep.js +4 -3
  78. package/v2Containers/CommunicationFlow/steps/CommunicationStrategyStep/CommunicationStrategyStep.js +2 -2
  79. package/v2Containers/CommunicationFlow/steps/DeliverySettingsStep/DeliverySettingsSection.js +3 -2
  80. package/v2Containers/CommunicationFlow/steps/DeliverySettingsStep/SenderDetails.js +7 -7
  81. package/v2Containers/CommunicationFlow/steps/DeliverySettingsStep/SenderDetails.scss +0 -5
  82. package/v2Containers/CommunicationFlow/steps/DynamicControlsStep/DynamicControlsStep.js +2 -2
  83. package/v2Containers/CommunicationFlow/steps/MessageTypeStep/MessageTypeStep.js +2 -2
  84. package/v2Containers/CreativesContainer/SlideBoxContent.js +28 -1
  85. package/v2Containers/CreativesContainer/SlideBoxFooter.js +1 -1
  86. package/v2Containers/CreativesContainer/index.js +4 -1
  87. package/v2Containers/CreativesContainer/tests/__snapshots__/SlideBoxContent.test.js.snap +47 -0
  88. package/v2Containers/CreativesContainer/tests/__snapshots__/index.test.js.snap +5 -0
  89. package/v2Containers/Ebill/index.js +10 -9
  90. package/v2Containers/Email/index.js +8 -7
  91. package/v2Containers/Email/initialSchema.js +1 -1
  92. package/v2Containers/EmailWrapper/components/EmailHTMLEditor.js +6 -1
  93. package/v2Containers/EmailWrapper/components/EmailWrapperView.js +3 -0
  94. package/v2Containers/EmailWrapper/components/__tests__/EmailHTMLEditor.test.js +20 -2
  95. package/v2Containers/EmailWrapper/components/__tests__/EmailWrapperView.test.js +16 -1
  96. package/v2Containers/EmailWrapper/hooks/useEmailWrapper.js +3 -0
  97. package/v2Containers/EmailWrapper/index.js +4 -0
  98. package/v2Containers/EmailWrapper/tests/useEmailWrapper.edgeCases.test.js +1 -0
  99. package/v2Containers/EmailWrapper/tests/useEmailWrapper.test.js +9 -0
  100. package/v2Containers/FTP/index.js +1 -1
  101. package/v2Containers/Facebook/Advertisement/index.js +4 -4
  102. package/v2Containers/Facebook/index.js +2 -2
  103. package/v2Containers/InApp/index.js +21 -16
  104. package/v2Containers/InApp/index.scss +0 -7
  105. package/v2Containers/InAppWrapper/components/InAppWrapperView.js +2 -2
  106. package/v2Containers/InAppWrapper/hooks/__tests__/useInAppWrapper.test.js +1 -0
  107. package/v2Containers/InappAdvance/index.js +4 -4
  108. package/v2Containers/LanguageProvider/index.js +3 -3
  109. package/v2Containers/LanguageProvider/tests/index.test.js +3 -3
  110. package/v2Containers/Line/Container/Image/index.js +1 -1
  111. package/v2Containers/Line/Container/ImageCarousel/Content.js +1 -1
  112. package/v2Containers/Line/Container/ImageCarousel/index.js +5 -5
  113. package/v2Containers/Line/Container/ImageMap/index.js +3 -3
  114. package/v2Containers/Line/Container/Sticker/index.js +2 -2
  115. package/v2Containers/Line/Container/Sticker/utils.js +1 -1
  116. package/v2Containers/Line/Container/Video/index.js +1 -1
  117. package/v2Containers/Line/Container/Wrapper/index.js +3 -3
  118. package/v2Containers/Line/Container/Wrapper/style.js +1 -5
  119. package/v2Containers/Line/Container/index.js +2 -2
  120. package/v2Containers/Login/components/LoginForm/index.js +34 -47
  121. package/v2Containers/Login/index.js +5 -5
  122. package/v2Containers/MobilePush/Create/index.js +2 -0
  123. package/v2Containers/MobilePush/Edit/index.js +2 -0
  124. package/v2Containers/MobilePushNew/components/CtaButtons.js +2 -2
  125. package/v2Containers/MobilePushNew/components/MediaUploaders.js +9 -9
  126. package/v2Containers/MobilePushNew/components/PlatformContentFields.js +4 -4
  127. package/v2Containers/MobilePushNew/index.js +2 -2
  128. package/v2Containers/MobilePushNew/index.scss +6 -3
  129. package/v2Containers/MobilepushWrapper/index.js +3 -1
  130. package/v2Containers/Rcs/index.js +25 -19
  131. package/v2Containers/Rcs/index.scss +0 -7
  132. package/v2Containers/Sms/Create/index.js +2 -0
  133. package/v2Containers/Sms/Edit/index.js +2 -0
  134. package/v2Containers/SmsTrai/Edit/index.js +5 -2
  135. package/v2Containers/SmsWrapper/index.js +2 -0
  136. package/v2Containers/TagList/index.js +62 -5
  137. package/v2Containers/TagList/messages.js +4 -0
  138. package/v2Containers/TagList/tests/TagList.test.js +124 -20
  139. package/v2Containers/TagList/tests/mockdata.js +17 -0
  140. package/v2Containers/Templates/index.js +16 -16
  141. package/v2Containers/Viber/index.js +22 -14
  142. package/v2Containers/Viber/index.scss +0 -7
  143. package/v2Containers/WeChat/RichmediaTemplates/Create/_createRichmedia.scss +1 -1
  144. package/v2Containers/WeChat/RichmediaTemplates/Create/index.js +2 -2
  145. package/v2Containers/WebPush/Create/components/BrandIconSection.js +1 -1
  146. package/v2Containers/WebPush/Create/components/ButtonForm.js +2 -2
  147. package/v2Containers/WebPush/Create/components/ButtonList.js +4 -4
  148. package/v2Containers/WebPush/Create/components/ButtonsLinksSection.js +4 -4
  149. package/v2Containers/WebPush/Create/components/FormActions.js +3 -3
  150. package/v2Containers/WebPush/Create/components/MessageSection.js +2 -2
  151. package/v2Containers/WebPush/Create/components/NotificationTitleSection.js +2 -2
  152. package/v2Containers/WebPush/Create/components/_buttons.scss +2 -2
  153. package/v2Containers/WebPush/Create/hooks/useTagManagement.js +0 -2
  154. package/v2Containers/WebPush/Create/index.js +9 -1
  155. package/v2Containers/WebPush/Create/index.scss +6 -3
  156. package/v2Containers/WebPush/Create/preview/WebPushPreview.js +1 -1
  157. package/v2Containers/Whatsapp/index.js +33 -28
  158. package/v2Containers/Whatsapp/tests/__snapshots__/index.test.js.snap +20 -0
  159. package/v2Containers/Zalo/index.js +5 -3
@@ -52,6 +52,7 @@ export const CapWhatsappCTA = (props) => {
52
52
  injectedTags = {},
53
53
  selectedOfferDetails = [],
54
54
  eventContextTags = [],
55
+ waitEventContextTags = {},
55
56
  } = props;
56
57
  const { formatMessage } = intl;
57
58
  const invalidVarRegex = /{{(.*?)}}/g;
@@ -283,6 +284,7 @@ export const CapWhatsappCTA = (props) => {
283
284
  injectedTags={injectedTags}
284
285
  selectedOfferDetails={selectedOfferDetails}
285
286
  eventContextTags={eventContextTags}
287
+ waitEventContextTags={waitEventContextTags}
286
288
  />
287
289
  </CapColumn>
288
290
  )}
@@ -309,144 +311,148 @@ export const CapWhatsappCTA = (props) => {
309
311
  className="cap-whatsapp-cta margin-t-16"
310
312
  id={`cap-whatsapp-cta-${index}`}
311
313
  >
312
- <CapRow>
313
- <CapColumn span={12}>
314
- {/* Type of action */}
315
- <CapHeading type="h4" className="cta-label">
316
- {formatMessage(messages.ctaType)}
317
- </CapHeading>
318
- <CapSelect
319
- id="whatsapp-cta-type"
320
- options={ctaOptions || []}
321
- onChange={(value) => onCtaTypeChange(value, index)}
322
- value={ctaType}
323
- />
324
- </CapColumn>
325
- <CapColumn span={12}>
326
- {/* Button text */}
327
- <CapHeading type="h4" className="cta-label">
328
- {formatMessage(messages.ctaButtonText)}
329
- <CapTooltipWithInfo
330
- infoIconProps={{
331
- style: { marginLeft: CAP_SPACE_04 },
332
- }}
333
- autoAdjustOverflow
334
- placement="right"
335
- title={formatMessage(messages.ctaButtonTextTooltip)}
336
- />
337
- </CapHeading>
338
- <CapInput
339
- id={index}
340
- className="whatsapp-cta-button-text"
341
- onChange={onButtonTextChange}
342
- placeholder={formatMessage(messages.ctaButtonTextPlaceholder)}
343
- value={text}
344
- size="large"
345
- maxLength={BTN_MAX_LENGTH}
346
- errorMessage={buttonError}
347
- />
348
- {renderLength(text.length, BTN_MAX_LENGTH)}
349
- </CapColumn>
350
- </CapRow>
351
- {ctaType === PHONE_NUMBER && (
352
- <CapRow>
353
- <CapColumn span={11}>
354
- {/* phone number */}
355
- <CapHeading type="h4" className="cta-label">
356
- {formatMessage(messages.ctaPhoneNo)}
357
- </CapHeading>
358
- <PhoneInput
359
- placeholder={formatMessage(messages.ctaPhoneNoPlaceholder)}
360
- autoFormat={false}
361
- countryCodeEditable={false}
362
- value={phone_number}
363
- onChange={(value) => onPhoneNoChange(value, index)}
364
- country="in"
365
- className="cta-phone-number"
366
- />
367
- {renderLength(phone_number.length, PHONE_NUMBER_MAX_LENGTH)}
368
- </CapColumn>
369
- </CapRow>
370
- )}
371
- {ctaType === WEBSITE && (
314
+ <CapColumn>
372
315
  <CapRow>
373
316
  <CapColumn span={12}>
374
- {/* URL Type */}
317
+ {/* Type of action */}
375
318
  <CapHeading type="h4" className="cta-label">
376
- {formatMessage(messages.ctaWebsiteType)}
319
+ {formatMessage(messages.ctaType)}
377
320
  </CapHeading>
378
321
  <CapSelect
379
- id="whatsapp-cta-url-type"
380
- options={
381
- hostName === HOST_TWILIO
382
- ? TWILIO_URL_OPTIONS
383
- : KARIX_GUPSHUP_URL_OPTIONS
384
- }
385
- onChange={(value) => onUrlTypeChange(value, index)}
386
- value={urlType}
322
+ id="whatsapp-cta-type"
323
+ options={ctaOptions || []}
324
+ onChange={(value) => onCtaTypeChange(value, index)}
325
+ value={ctaType}
387
326
  />
388
327
  </CapColumn>
389
328
  <CapColumn span={12}>
390
- {/* cta url */}
329
+ {/* Button text */}
391
330
  <CapHeading type="h4" className="cta-label">
392
- {formatMessage(messages.ctaWebsiteUrl)}
393
- {urlType === DYNAMIC_URL && (
394
- <CapTooltipWithInfo
395
- infoIconProps={{
396
- style: { marginLeft: CAP_SPACE_04 },
397
- }}
398
- autoAdjustOverflow
399
- placement="right"
400
- title={formatMessage(messages.dynamicUrlTooltip, { one: '{{1}}' })}
401
- />
402
- )}
331
+ {formatMessage(messages.ctaButtonText)}
332
+ <CapTooltipWithInfo
333
+ infoIconProps={{
334
+ style: { marginLeft: CAP_SPACE_04 },
335
+ }}
336
+ autoAdjustOverflow
337
+ placement="right"
338
+ title={formatMessage(messages.ctaButtonTextTooltip)}
339
+ />
403
340
  </CapHeading>
404
341
  <CapInput
405
342
  id={index}
406
- addonAfter={urlType === DYNAMIC_URL && !url.includes(DYNAMIC_URL_SUFFIX) && DYNAMIC_URL_SUFFIX}
407
- className="whatsapp-cta-url"
408
- onChange={(event) => onUrlChange(event, urlType)}
409
- placeholder={
410
- urlType === DYNAMIC_URL
411
- ? formatMessage(messages.ctaDynamicPlaceholder)
412
- : formatMessage(messages.ctaStaticPlaceholder)
413
- }
414
- value={url}
343
+ className="whatsapp-cta-button-text"
344
+ onChange={onButtonTextChange}
345
+ placeholder={formatMessage(messages.ctaButtonTextPlaceholder)}
346
+ value={text}
415
347
  size="large"
416
- maxLength={URL_MAX_LENGTH}
417
- errorMessage={urlError}
348
+ maxLength={BTN_MAX_LENGTH}
349
+ errorMessage={buttonError}
418
350
  />
419
- {renderLength(url.length, URL_MAX_LENGTH)}
351
+ {renderLength(text.length, BTN_MAX_LENGTH)}
420
352
  </CapColumn>
421
353
  </CapRow>
422
- )}
423
- <CapRow className="whatsapp-cta-save-delete-btn">
424
- <CapTooltip
425
- title={
426
- ctaSaveDisabled(index)
427
- ? formatMessage(messages.ctaSaveDisabled)
428
- : ''
429
- }
430
- placement="bottom"
431
- >
432
- <div className="button-disabled-tooltip-wrapper">
433
- <CapButton
434
- onClick={() => saveCta(index)}
435
- disabled={ctaSaveDisabled(index)}
436
- className="whatsapp-cta-save-btn"
437
- >
438
- {formatMessage(globalMessages.save)}
439
- </CapButton>
440
- </div>
441
- </CapTooltip>
442
- <CapButton
443
- onClick={() => deleteHandler(index)}
444
- className="whatsapp-cta-delete-btn"
445
- type="secondary"
446
- >
447
- {formatMessage(globalMessages.delete)}
448
- </CapButton>
449
- </CapRow>
354
+ {ctaType === PHONE_NUMBER && (
355
+ <CapRow>
356
+ <CapColumn span={11}>
357
+ {/* phone number */}
358
+ <CapHeading type="h4" className="cta-label">
359
+ {formatMessage(messages.ctaPhoneNo)}
360
+ </CapHeading>
361
+ <PhoneInput
362
+ placeholder={formatMessage(messages.ctaPhoneNoPlaceholder)}
363
+ autoFormat={false}
364
+ countryCodeEditable={false}
365
+ value={phone_number}
366
+ onChange={(value) => onPhoneNoChange(value, index)}
367
+ country="in"
368
+ className="cta-phone-number"
369
+ />
370
+ {renderLength(phone_number.length, PHONE_NUMBER_MAX_LENGTH)}
371
+ </CapColumn>
372
+ </CapRow>
373
+ )}
374
+ {ctaType === WEBSITE && (
375
+ <CapRow>
376
+ <CapColumn span={12}>
377
+ {/* URL Type */}
378
+ <CapHeading type="h4" className="cta-label">
379
+ {formatMessage(messages.ctaWebsiteType)}
380
+ </CapHeading>
381
+ <CapSelect
382
+ id="whatsapp-cta-url-type"
383
+ options={
384
+ hostName === HOST_TWILIO
385
+ ? TWILIO_URL_OPTIONS
386
+ : KARIX_GUPSHUP_URL_OPTIONS
387
+ }
388
+ onChange={(value) => onUrlTypeChange(value, index)}
389
+ value={urlType}
390
+ />
391
+ </CapColumn>
392
+ <CapColumn span={12}>
393
+ {/* cta url */}
394
+ <CapHeading type="h4" className="cta-label">
395
+ {formatMessage(messages.ctaWebsiteUrl)}
396
+ {urlType === DYNAMIC_URL && (
397
+ <CapTooltipWithInfo
398
+ infoIconProps={{
399
+ style: { marginLeft: CAP_SPACE_04 },
400
+ }}
401
+ autoAdjustOverflow
402
+ placement="right"
403
+ title={formatMessage(messages.dynamicUrlTooltip, { one: '{{1}}' })}
404
+ />
405
+ )}
406
+ </CapHeading>
407
+ <CapInput
408
+ id={index}
409
+ addonAfter={urlType === DYNAMIC_URL && !url.includes(DYNAMIC_URL_SUFFIX) && DYNAMIC_URL_SUFFIX}
410
+ className="whatsapp-cta-url"
411
+ onChange={(event) => onUrlChange(event, urlType)}
412
+ placeholder={
413
+ urlType === DYNAMIC_URL
414
+ ? formatMessage(messages.ctaDynamicPlaceholder)
415
+ : formatMessage(messages.ctaStaticPlaceholder)
416
+ }
417
+ value={url}
418
+ size="large"
419
+ maxLength={URL_MAX_LENGTH}
420
+ errorMessage={urlError}
421
+ />
422
+ {renderLength(url.length, URL_MAX_LENGTH)}
423
+ </CapColumn>
424
+ </CapRow>
425
+ )}
426
+ </CapColumn>
427
+ <CapColumn>
428
+ <CapRow useLegacy className="whatsapp-cta-save-delete-btn">
429
+ <CapTooltip
430
+ title={
431
+ ctaSaveDisabled(index)
432
+ ? formatMessage(messages.ctaSaveDisabled)
433
+ : ''
434
+ }
435
+ placement="bottom"
436
+ >
437
+ <div className="button-disabled-tooltip-wrapper">
438
+ <CapButton
439
+ onClick={() => saveCta(index)}
440
+ disabled={ctaSaveDisabled(index)}
441
+ className="whatsapp-cta-save-btn"
442
+ >
443
+ {formatMessage(globalMessages.save)}
444
+ </CapButton>
445
+ </div>
446
+ </CapTooltip>
447
+ <CapButton
448
+ onClick={() => deleteHandler(index)}
449
+ className="whatsapp-cta-delete-btn"
450
+ type="secondary"
451
+ >
452
+ {formatMessage(globalMessages.delete)}
453
+ </CapButton>
454
+ </CapRow>
455
+ </CapColumn>
450
456
  </CapRow>,
451
457
  );
452
458
  }
@@ -458,7 +464,7 @@ export const CapWhatsappCTA = (props) => {
458
464
  ctaData.length < 2
459
465
  && !isEditFlow
460
466
  && renderArray.push(
461
- <CapRow>
467
+ <CapRow useLegacy>
462
468
  <CapTooltip
463
469
  title={
464
470
  addBtnDisabled ? formatMessage(messages.ctaAddDisabled) : ''
@@ -467,7 +473,7 @@ export const CapWhatsappCTA = (props) => {
467
473
  >
468
474
  <div className="button-disabled-tooltip-wrapper">
469
475
  <CapButton
470
- type="flat"
476
+ type="link"
471
477
  id="whatsapp-cta-add-button"
472
478
  disabled={addBtnDisabled}
473
479
  className="margin-t-12 margin-l-24"
@@ -281,7 +281,7 @@ export const CapWhatsappCarouselButton = (props) => {
281
281
  )
282
282
  }
283
283
  {/* it render save and delete button */}
284
- <CapRow className="whatsapp-cta-save-delete-btn whatsapp-carousel-save-edit-btn">
284
+ <CapRow useLegacy className="whatsapp-cta-save-delete-btn whatsapp-carousel-save-edit-btn">
285
285
  <CapTooltip
286
286
  title={
287
287
  ctaSaveDisabled(buttonIndex)
@@ -379,7 +379,7 @@ export const CapWhatsappCarouselButton = (props) => {
379
379
  </CapColumn>
380
380
  {parseInt(carouselIndex, 10) === 0 && (
381
381
  <CapColumn span={1}>
382
- <CapButton type="flat" className="whatsapp-carousel-delete-icon-btn" onClick={() => handleDeleteButton(index)} disabled={buttonData?.length === 1}>
382
+ <CapButton type="link" className="whatsapp-carousel-delete-icon-btn" onClick={() => handleDeleteButton(index)} disabled={buttonData?.length === 1}>
383
383
  <CapIcon size="s" type="delete" />
384
384
  </CapButton>
385
385
  </CapColumn>
@@ -415,7 +415,7 @@ export const CapWhatsappCarouselButton = (props) => {
415
415
  </CapRow>
416
416
  );
417
417
  } return (
418
- <CapRow
418
+ <CapRow useLegacy
419
419
  key={`${button.buttonType}_${index}`}
420
420
  className="cap-whatsapp-carousel-button"
421
421
  >
@@ -431,32 +431,30 @@ export const CapWhatsappCarouselButton = (props) => {
431
431
  </CapRow>
432
432
  );
433
433
  })}
434
- <CapRow>
435
- {/* user can add only two button in the first carousel in other carousel user dont allow to add buttons */}
436
- {buttonData?.length < 2 && !isEditFlow && parseInt(carouselIndex, 10) === 0 && (
437
- <CapRow>
438
- <CapTooltip
439
- title={
440
- isCarouselAddButtonDisable ? formatMessage(capWhatsappCTAMsg.ctaAddDisabled) : ""
441
- }
442
- placement="right"
443
- >
444
- <div className="button-disabled-tooltip-wrapper">
445
- <CapButton
446
- type="flat"
447
- id="whatsapp-quick-reply-add-button"
448
- disabled={isCarouselAddButtonDisable}
449
- className="margin-t-12 margin-l-24"
450
- isAddBtn
451
- onClick={addCarouselButton}
452
- >
453
- {formatMessage(capWhatsappCTAMsg.addButton)}
454
- </CapButton>
455
- </div>
456
- </CapTooltip>
457
- </CapRow>
458
- )}
459
- </CapRow>
434
+ {/* user can add only two button in the first carousel in other carousel user dont allow to add buttons */}
435
+ {buttonData?.length < 2 && !isEditFlow && parseInt(carouselIndex, 10) === 0 && (
436
+ <CapRow useLegacy>
437
+ <CapTooltip
438
+ title={
439
+ isCarouselAddButtonDisable ? formatMessage(capWhatsappCTAMsg.ctaAddDisabled) : ""
440
+ }
441
+ placement="right"
442
+ >
443
+ <div className="button-disabled-tooltip-wrapper">
444
+ <CapButton
445
+ type="link"
446
+ id="whatsapp-quick-reply-add-button"
447
+ disabled={isCarouselAddButtonDisable}
448
+ className="margin-t-12 margin-l-24"
449
+ isAddBtn
450
+ onClick={addCarouselButton}
451
+ >
452
+ {formatMessage(capWhatsappCTAMsg.addButton)}
453
+ </CapButton>
454
+ </div>
455
+ </CapTooltip>
456
+ </CapRow>
457
+ )}
460
458
  </CapRow>
461
459
  );
462
460
  };
@@ -121,13 +121,13 @@ export const CapWhatsappQuickReply = (props) => {
121
121
  </> :
122
122
  <>
123
123
  {quickReplyDataLength > 0 && !isEditFlow && (
124
- <CapRow>
124
+ <CapRow useLegacy>
125
125
  {quickReplyData?.map(({ index, isSaved, text, error }) => {
126
126
  if (!isSaved) {
127
127
  //this section is render textfield when its not saved or in edit condition
128
128
  return (
129
- <CapRow className="cap-whatsapp-quick-reply">
130
- <CapRow
129
+ <CapRow useLegacy className="cap-whatsapp-quick-reply">
130
+ <CapRow useLegacy
131
131
  className="whatsapp-button-text-container"
132
132
  key={index}
133
133
  >
@@ -147,7 +147,7 @@ export const CapWhatsappQuickReply = (props) => {
147
147
  </CapHeading>
148
148
  }
149
149
  />
150
- <CapRow className="whatsapp-button-text-input">
150
+ <CapRow useLegacy className="whatsapp-button-text-input">
151
151
  <TextArea
152
152
  autosize={{ minRows: 1, maxRows: 5 }}
153
153
  placeholder={formatMessage(
@@ -166,7 +166,7 @@ export const CapWhatsappQuickReply = (props) => {
166
166
  </CapRow>
167
167
  {renderMessageLength(BUTTON_TEXT, text?.length || 0)}
168
168
  {/* it render save and delete button */}
169
- <CapRow className="whatsapp-cta-save-delete-btn">
169
+ <CapRow useLegacy className="whatsapp-cta-save-delete-btn">
170
170
  <CapTooltip
171
171
  title={
172
172
  (text === "" || error)
@@ -217,7 +217,7 @@ export const CapWhatsappQuickReply = (props) => {
217
217
  }
218
218
  {/* this section render add button section with condition */}
219
219
  {quickReplyDataLength < 3 && !isEditFlow && (
220
- <CapRow>
220
+ <CapRow useLegacy>
221
221
  <CapTooltip
222
222
  title={
223
223
  isQuickReplyDisable ? formatMessage(ctaMessages.ctaAddDisabled) : ""
@@ -226,7 +226,7 @@ export const CapWhatsappQuickReply = (props) => {
226
226
  >
227
227
  <div className="button-disabled-tooltip-wrapper">
228
228
  <CapButton
229
- type="flat"
229
+ type="link"
230
230
  id="whatsapp-quick-reply-add-button"
231
231
  disabled={isQuickReplyDisable}
232
232
  className="margin-t-12 margin-l-24"
@@ -26,7 +26,7 @@ const Arrow = (props) => {
26
26
  <CapButton
27
27
  className={className}
28
28
  onClick={onClick}
29
- type="flat"
29
+ type="link"
30
30
  style={{
31
31
  ...style,
32
32
  ...arrowStyle,
@@ -11,7 +11,7 @@ const AddTestCustomerButton = ({
11
11
  }) => (
12
12
  <CapButton
13
13
  onClick={handleAddTestCustomer}
14
- type="flat"
14
+ type="link"
15
15
  size="small"
16
16
  className="test-customer-add-btn"
17
17
  prefix={
@@ -27,9 +27,9 @@ const CustomValuesEditor = ({
27
27
  }) => {
28
28
  if (isExtractingTags) {
29
29
  return (
30
- <CapRow className="loading-container">
30
+ <CapRow useLegacy className="loading-container">
31
31
  <CapSpin size="large" />
32
- <CapRow className="loading-text">
32
+ <CapRow useLegacy className="loading-text">
33
33
  <FormattedMessage {...messages.extractingTags} />
34
34
  </CapRow>
35
35
  </CapRow>
@@ -128,7 +128,7 @@ const CustomValuesEditor = ({
128
128
  <CapRow className="editor-actions">
129
129
  <CapButton
130
130
  className="discard-button"
131
- type="flat"
131
+ type="link"
132
132
  size="small"
133
133
  onClick={handleDiscardCustomValues}
134
134
  icon="close"
@@ -45,7 +45,7 @@ const CustomerCreationModal = ({
45
45
  width={500}
46
46
  maskStyle={{ backgroundColor: 'rgba(244, 245, 247, 0.9)' }}
47
47
  footer={
48
- <CapRow justify="start" gutter={8}>
48
+ <CapRow useLegacy justify="start" gap={8}>
49
49
  <CapButton
50
50
  type="primary"
51
51
  onClick={() => onSave(EMPTY_VALIDATION, setIsLoading)}
@@ -238,7 +238,7 @@ const ModifyDeliverySettings = (props) => {
238
238
  ({
239
239
  titleMessage, options, value, onChange, rowKey, disabled,
240
240
  }) => (
241
- <CapRow className="modify-delivery-settings__field-row" key={rowKey}>
241
+ <CapRow useLegacy className="modify-delivery-settings__field-row" key={rowKey}>
242
242
  <CapHeader
243
243
  size="label"
244
244
  title={<FormattedMessage {...titleMessage} />}
@@ -367,20 +367,20 @@ const ModifyDeliverySettings = (props) => {
367
367
 
368
368
  if (isLoading) {
369
369
  return (
370
- <CapRow className="modify-delivery-settings__loading-row">
370
+ <CapRow useLegacy className="modify-delivery-settings__loading-row">
371
371
  <CapSpin spinning />
372
372
  </CapRow>
373
373
  );
374
374
  }
375
375
 
376
376
  return (
377
- <CapRow className="modify-delivery-settings">
377
+ <CapRow useLegacy className="modify-delivery-settings">
378
378
  {getChannelFields().map((field, idx) => renderSelectRow({
379
379
  ...field,
380
380
  rowKey: field.titleMessage?.id || `${ROW_KEY_PREFIX}${idx}`,
381
381
  disabled: field.disabled,
382
382
  }))}
383
- <CapRow className="modify-delivery-settings__actions">
383
+ <CapRow useLegacy className="modify-delivery-settings__actions">
384
384
  <CapButton type="primary" onClick={handleDone}>
385
385
  <FormattedMessage {...messages.done} />
386
386
  </CapButton>
@@ -151,7 +151,7 @@ const DeliverySettings = (props) => {
151
151
  const summaryObject = getSummaryObject();
152
152
 
153
153
  return (
154
- <CapRow className="delivery-settings">
154
+ <CapRow useLegacy className="delivery-settings">
155
155
  <CapRow className="delivery-settings__heading-row">
156
156
  <CapHeading type="h10">
157
157
  <FormattedMessage {...messages.deliverySettings} />
@@ -19,7 +19,7 @@ const ExistingCustomerModal = ({ customerModal, onCloseCustomerModal, customerDa
19
19
  width={500}
20
20
  maskStyle={{ backgroundColor: 'rgba(244, 245, 247, 0.9)' }}
21
21
  footer={
22
- <CapRow justify="start">
22
+ <CapRow useLegacy justify="start">
23
23
  <CapButton
24
24
  type="primary"
25
25
  onClick={() => onSave({}, setIsLoading)}
@@ -42,7 +42,7 @@ const ExistingCustomerModal = ({ customerModal, onCloseCustomerModal, customerDa
42
42
  className="common-test-preview-modal"
43
43
  >
44
44
  <div className="existing-customer-modal">
45
- <CapRow className="existing-customer-modal-intro-row">
45
+ <CapRow useLegacy className="existing-customer-modal-intro-row">
46
46
  <FormattedMessage {...messages.existingCustomerModalDescription} />
47
47
  </CapRow>
48
48
  <CapCard className="existing-customer-modal-card">
@@ -51,17 +51,17 @@ const ExistingCustomerModal = ({ customerModal, onCloseCustomerModal, customerDa
51
51
  <CapIcon type="user-profile" className="existing-customer-modal-avatar-icon" />
52
52
  </CapColumn>
53
53
  <CapColumn className="existing-customer-modal-details">
54
- <CapRow className="existing-customer-modal-name">
54
+ <CapRow useLegacy className="existing-customer-modal-name">
55
55
  {customerData.name || "-"}
56
56
  </CapRow>
57
57
  <CapColumn className="existing-customer-modal-meta">
58
58
  {channel === CHANNELS.EMAIL && customerData.email && (
59
- <CapRow><span className="existing-customer-modal-meta-label"><FormattedMessage {...messages.customerEmail} />: </span> {customerData.email}</CapRow>
59
+ <CapRow useLegacy><span className="existing-customer-modal-meta-label"><FormattedMessage {...messages.customerEmail} />: </span> {customerData.email}</CapRow>
60
60
  )}
61
61
  {channel === CHANNELS.SMS && customerData.mobile && (
62
- <CapRow><span className="existing-customer-modal-meta-label"><FormattedMessage {...messages.customerMobile} />: </span>{customerData.mobile}</CapRow>
62
+ <CapRow useLegacy><span className="existing-customer-modal-meta-label"><FormattedMessage {...messages.customerMobile} />: </span>{customerData.mobile}</CapRow>
63
63
  )}
64
- <CapRow><span className="existing-customer-modal-meta-label"><FormattedMessage {...messages.customerID} />: </span>{customerData.customerId}</CapRow>
64
+ <CapRow useLegacy><span className="existing-customer-modal-meta-label"><FormattedMessage {...messages.customerID} />: </span>{customerData.customerId}</CapRow>
65
65
  </CapColumn>
66
66
  </CapColumn>
67
67
  </CapRow>
@@ -28,9 +28,9 @@ const LeftPanelContent = ({
28
28
  }) => {
29
29
  if (isExtractingTags) {
30
30
  return (
31
- <CapRow className="loading-container">
31
+ <CapRow useLegacy className="loading-container">
32
32
  <CapSpin size="large" />
33
- <CapRow className="loading-text">
33
+ <CapRow useLegacy className="loading-text">
34
34
  <FormattedMessage {...messages.extractingTags} />
35
35
  </CapRow>
36
36
  </CapRow>
@@ -41,7 +41,7 @@ const LeftPanelContent = ({
41
41
  <>
42
42
  {/* Customer Search Section - Only show if enabled */}
43
43
  {enableCustomerSearch && (
44
- <CapRow className="panel-section customer-section">
44
+ <CapRow useLegacy className="panel-section customer-section">
45
45
  <CapHeader size="label1" title={<FormattedMessage {...messages.customerSearchTitle} />} />
46
46
  <CustomerSearchSection
47
47
  selectedCustomer={selectedCustomer}
@@ -66,8 +66,8 @@ const LeftPanelContent = ({
66
66
  )}
67
67
  {/* Tags Section - Only show if tag extraction enabled */}
68
68
  {enableTagExtraction && !tagsExtracted && (
69
- <CapRow className="panel-section">
70
- <CapButton type="flat" className="extract-tags-button" onClick={handleExtractTags}>
69
+ <CapRow useLegacy className="panel-section">
70
+ <CapButton type="link" className="extract-tags-button" onClick={handleExtractTags}>
71
71
  <CapLabel type="label33">
72
72
  <FormattedMessage {...messages.enterCustomValuesForTags} />
73
73
  </CapLabel>
@@ -10,7 +10,7 @@ import UnifiedPreview from './UnifiedPreview';
10
10
  const PreviewSection = ({
11
11
  unifiedPreviewProps,
12
12
  }) => (
13
- <CapRow className="test-and-preview-section panel-section">
13
+ <CapRow useLegacy className="test-and-preview-section panel-section">
14
14
  <UnifiedPreview {...unifiedPreviewProps} />
15
15
  </CapRow>
16
16
  );
@@ -24,7 +24,7 @@ const DeviceFrame = ({ device, children, className }) => {
24
24
  };
25
25
 
26
26
  return (
27
- <CapRow className={`unified-preview-frame ${className || ''}`}>
27
+ <CapRow useLegacy className={`unified-preview-frame ${className || ''}`}>
28
28
  <div className={getFrameClass()}>
29
29
  {/* Device chrome/decorations */}
30
30
  {device === DESKTOP && (