@capillarytech/creatives-library 8.0.266 → 8.0.267
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/constants/unified.js +0 -1
- package/package.json +1 -1
- package/services/api.js +0 -5
- package/utils/common.js +0 -6
- package/utils/tests/transformerUtils.test.js +0 -297
- package/utils/transformerUtils.js +0 -40
- package/v2Components/CapImageUpload/constants.js +0 -2
- package/v2Components/CapImageUpload/index.js +16 -65
- package/v2Components/CapImageUpload/index.scss +1 -4
- package/v2Components/CapImageUpload/messages.js +1 -5
- package/v2Components/CommonTestAndPreview/index.js +15 -4
- package/v2Containers/App/constants.js +0 -5
- package/v2Containers/CreativesContainer/SlideBoxContent.js +2 -57
- package/v2Containers/CreativesContainer/SlideBoxHeader.js +0 -1
- package/v2Containers/CreativesContainer/constants.js +0 -3
- package/v2Containers/CreativesContainer/index.js +0 -168
- package/v2Containers/CreativesContainer/messages.js +0 -4
- package/v2Containers/CreativesContainer/tests/SlideBoxContent.test.js +0 -210
- package/v2Containers/CreativesContainer/tests/__snapshots__/SlideBoxContent.test.js.snap +0 -304
- package/v2Containers/SmsTrai/Edit/index.js +12 -1
- package/v2Containers/SmsTrai/Edit/tests/__snapshots__/index.test.js.snap +648 -36
- package/v2Containers/Templates/ChannelTypeIllustration.js +1 -13
- package/v2Containers/Templates/_templates.scss +0 -205
- package/v2Containers/Templates/actions.js +1 -2
- package/v2Containers/Templates/constants.js +0 -1
- package/v2Containers/Templates/index.js +34 -274
- package/v2Containers/Templates/messages.js +0 -24
- package/v2Containers/Templates/reducer.js +0 -2
- package/v2Containers/Templates/tests/index.test.js +0 -10
- package/v2Containers/TemplatesV2/index.js +7 -15
- package/v2Containers/TemplatesV2/messages.js +0 -4
- package/utils/imageUrlUpload.js +0 -141
- package/v2Components/CapImageUrlUpload/constants.js +0 -26
- package/v2Components/CapImageUrlUpload/index.js +0 -365
- package/v2Components/CapImageUrlUpload/index.scss +0 -35
- package/v2Components/CapImageUrlUpload/messages.js +0 -47
- package/v2Containers/WebPush/Create/components/BrandIconSection.js +0 -108
- package/v2Containers/WebPush/Create/components/ButtonForm.js +0 -172
- package/v2Containers/WebPush/Create/components/ButtonItem.js +0 -101
- package/v2Containers/WebPush/Create/components/ButtonList.js +0 -145
- package/v2Containers/WebPush/Create/components/ButtonsLinksSection.js +0 -164
- package/v2Containers/WebPush/Create/components/ButtonsLinksSection.test.js +0 -463
- package/v2Containers/WebPush/Create/components/FormActions.js +0 -54
- package/v2Containers/WebPush/Create/components/FormActions.test.js +0 -163
- package/v2Containers/WebPush/Create/components/MediaSection.js +0 -142
- package/v2Containers/WebPush/Create/components/MediaSection.test.js +0 -341
- package/v2Containers/WebPush/Create/components/MessageSection.js +0 -103
- package/v2Containers/WebPush/Create/components/MessageSection.test.js +0 -268
- package/v2Containers/WebPush/Create/components/NotificationTitleSection.js +0 -87
- package/v2Containers/WebPush/Create/components/NotificationTitleSection.test.js +0 -210
- package/v2Containers/WebPush/Create/components/TemplateNameSection.js +0 -54
- package/v2Containers/WebPush/Create/components/TemplateNameSection.test.js +0 -143
- package/v2Containers/WebPush/Create/components/__snapshots__/ButtonsLinksSection.test.js.snap +0 -86
- package/v2Containers/WebPush/Create/components/__snapshots__/FormActions.test.js.snap +0 -16
- package/v2Containers/WebPush/Create/components/__snapshots__/MediaSection.test.js.snap +0 -41
- package/v2Containers/WebPush/Create/components/__snapshots__/MessageSection.test.js.snap +0 -54
- package/v2Containers/WebPush/Create/components/__snapshots__/NotificationTitleSection.test.js.snap +0 -37
- package/v2Containers/WebPush/Create/components/__snapshots__/TemplateNameSection.test.js.snap +0 -21
- package/v2Containers/WebPush/Create/components/_buttons.scss +0 -246
- package/v2Containers/WebPush/Create/components/tests/ButtonForm.test.js +0 -554
- package/v2Containers/WebPush/Create/components/tests/ButtonItem.test.js +0 -607
- package/v2Containers/WebPush/Create/components/tests/ButtonList.test.js +0 -633
- package/v2Containers/WebPush/Create/components/tests/__snapshots__/ButtonForm.test.js.snap +0 -666
- package/v2Containers/WebPush/Create/components/tests/__snapshots__/ButtonItem.test.js.snap +0 -74
- package/v2Containers/WebPush/Create/components/tests/__snapshots__/ButtonList.test.js.snap +0 -78
- package/v2Containers/WebPush/Create/hooks/useButtonManagement.js +0 -138
- package/v2Containers/WebPush/Create/hooks/useButtonManagement.test.js +0 -406
- package/v2Containers/WebPush/Create/hooks/useCharacterCount.js +0 -30
- package/v2Containers/WebPush/Create/hooks/useCharacterCount.test.js +0 -151
- package/v2Containers/WebPush/Create/hooks/useImageUpload.js +0 -104
- package/v2Containers/WebPush/Create/hooks/useImageUpload.test.js +0 -538
- package/v2Containers/WebPush/Create/hooks/useTagManagement.js +0 -122
- package/v2Containers/WebPush/Create/hooks/useTagManagement.test.js +0 -633
- package/v2Containers/WebPush/Create/index.js +0 -1148
- package/v2Containers/WebPush/Create/index.scss +0 -134
- package/v2Containers/WebPush/Create/messages.js +0 -211
- package/v2Containers/WebPush/Create/preview/DevicePreviewContent.js +0 -228
- package/v2Containers/WebPush/Create/preview/NotificationContainer.js +0 -294
- package/v2Containers/WebPush/Create/preview/PreviewContent.js +0 -90
- package/v2Containers/WebPush/Create/preview/PreviewControls.js +0 -305
- package/v2Containers/WebPush/Create/preview/PreviewDisclaimer.js +0 -25
- package/v2Containers/WebPush/Create/preview/WebPushPreview.js +0 -156
- package/v2Containers/WebPush/Create/preview/assets/Light.svg +0 -53
- package/v2Containers/WebPush/Create/preview/assets/Top.svg +0 -5
- package/v2Containers/WebPush/Create/preview/assets/android-arrow-down.svg +0 -9
- package/v2Containers/WebPush/Create/preview/assets/android-arrow-up.svg +0 -9
- package/v2Containers/WebPush/Create/preview/assets/chrome-icon.png +0 -0
- package/v2Containers/WebPush/Create/preview/assets/edge-icon.png +0 -0
- package/v2Containers/WebPush/Create/preview/assets/firefox-icon.svg +0 -106
- package/v2Containers/WebPush/Create/preview/assets/iOS.svg +0 -26
- package/v2Containers/WebPush/Create/preview/assets/macos-arrow-down-icon.svg +0 -9
- package/v2Containers/WebPush/Create/preview/assets/macos-triple-dot-icon.svg +0 -9
- package/v2Containers/WebPush/Create/preview/assets/opera-icon.svg +0 -18
- package/v2Containers/WebPush/Create/preview/assets/safari-icon.svg +0 -29
- package/v2Containers/WebPush/Create/preview/assets/windows-close-icon.svg +0 -9
- package/v2Containers/WebPush/Create/preview/assets/windows-triple-dot-icon.svg +0 -9
- package/v2Containers/WebPush/Create/preview/components/AndroidMobileChromeHeader.js +0 -51
- package/v2Containers/WebPush/Create/preview/components/AndroidMobileExpanded.js +0 -145
- package/v2Containers/WebPush/Create/preview/components/IOSHeader.js +0 -45
- package/v2Containers/WebPush/Create/preview/components/NotificationExpandedContent.js +0 -68
- package/v2Containers/WebPush/Create/preview/components/NotificationHeader.js +0 -61
- package/v2Containers/WebPush/Create/preview/components/WindowsChromeExpanded.js +0 -99
- package/v2Containers/WebPush/Create/preview/components/tests/AndroidMobileExpanded.test.js +0 -733
- package/v2Containers/WebPush/Create/preview/components/tests/WindowsChromeExpanded.test.js +0 -571
- package/v2Containers/WebPush/Create/preview/components/tests/__snapshots__/AndroidMobileExpanded.test.js.snap +0 -85
- package/v2Containers/WebPush/Create/preview/components/tests/__snapshots__/WindowsChromeExpanded.test.js.snap +0 -81
- package/v2Containers/WebPush/Create/preview/config/notificationMappings.js +0 -50
- package/v2Containers/WebPush/Create/preview/constants.js +0 -637
- package/v2Containers/WebPush/Create/preview/notification-container.scss +0 -79
- package/v2Containers/WebPush/Create/preview/preview.scss +0 -358
- package/v2Containers/WebPush/Create/preview/styles/_android-mobile-chrome.scss +0 -370
- package/v2Containers/WebPush/Create/preview/styles/_android-mobile-edge.scss +0 -12
- package/v2Containers/WebPush/Create/preview/styles/_android-mobile-firefox.scss +0 -12
- package/v2Containers/WebPush/Create/preview/styles/_android-mobile-opera.scss +0 -12
- package/v2Containers/WebPush/Create/preview/styles/_android-tablet-chrome.scss +0 -47
- package/v2Containers/WebPush/Create/preview/styles/_android-tablet-edge.scss +0 -11
- package/v2Containers/WebPush/Create/preview/styles/_android-tablet-firefox.scss +0 -11
- package/v2Containers/WebPush/Create/preview/styles/_android-tablet-opera.scss +0 -11
- package/v2Containers/WebPush/Create/preview/styles/_base.scss +0 -207
- package/v2Containers/WebPush/Create/preview/styles/_ios.scss +0 -153
- package/v2Containers/WebPush/Create/preview/styles/_ipados.scss +0 -107
- package/v2Containers/WebPush/Create/preview/styles/_macos-chrome.scss +0 -101
- package/v2Containers/WebPush/Create/preview/styles/_windows-chrome.scss +0 -229
- package/v2Containers/WebPush/Create/preview/tests/DevicePreviewContent.test.js +0 -906
- package/v2Containers/WebPush/Create/preview/tests/NotificationContainer.test.js +0 -1081
- package/v2Containers/WebPush/Create/preview/tests/PreviewControls.test.js +0 -723
- package/v2Containers/WebPush/Create/preview/tests/WebPushPreview.test.js +0 -1327
- package/v2Containers/WebPush/Create/preview/tests/__snapshots__/DevicePreviewContent.test.js.snap +0 -131
- package/v2Containers/WebPush/Create/preview/tests/__snapshots__/NotificationContainer.test.js.snap +0 -112
- package/v2Containers/WebPush/Create/preview/tests/__snapshots__/PreviewControls.test.js.snap +0 -144
- package/v2Containers/WebPush/Create/preview/tests/__snapshots__/WebPushPreview.test.js.snap +0 -129
- package/v2Containers/WebPush/Create/utils/payloadBuilder.js +0 -96
- package/v2Containers/WebPush/Create/utils/payloadBuilder.test.js +0 -396
- package/v2Containers/WebPush/Create/utils/previewUtils.js +0 -89
- package/v2Containers/WebPush/Create/utils/urlValidation.js +0 -115
- package/v2Containers/WebPush/Create/utils/urlValidation.test.js +0 -449
- package/v2Containers/WebPush/Create/utils/validation.js +0 -75
- package/v2Containers/WebPush/Create/utils/validation.test.js +0 -283
- package/v2Containers/WebPush/actions.js +0 -60
- package/v2Containers/WebPush/constants.js +0 -132
- package/v2Containers/WebPush/index.js +0 -2
- package/v2Containers/WebPush/reducer.js +0 -104
- package/v2Containers/WebPush/sagas.js +0 -119
- package/v2Containers/WebPush/selectors.js +0 -65
- package/v2Containers/WebPush/tests/reducer.test.js +0 -863
- package/v2Containers/WebPush/tests/sagas.test.js +0 -566
- package/v2Containers/WebPush/tests/selectors.test.js +0 -960
|
@@ -495,19 +495,28 @@ const CommonTestAndPreview = (props) => {
|
|
|
495
495
|
|
|
496
496
|
case CHANNELS.SMS: {
|
|
497
497
|
// Extract SMS message from content
|
|
498
|
-
|
|
499
|
-
const message = contentStr || formDataObj?.['sms-editor'] || formDataObj?.[0]?.['sms-editor'] || '';
|
|
498
|
+
const message = contentStr || formDataObj?.['sms-editor'] || formDataObj?.[0]?.['sms-editor'] || formDataObj?.messageBody || '';
|
|
500
499
|
|
|
501
500
|
// Resolve tags in message if custom values are provided
|
|
502
501
|
const resolvedMessage = customValuesObj && Object.keys(customValuesObj).length > 0
|
|
503
502
|
? resolveTagsInText(message, customValuesObj)
|
|
504
503
|
: message;
|
|
505
504
|
|
|
506
|
-
|
|
505
|
+
const baseData = formDataObj?.base || formDataObj?.[0]?.base || formDataObj?.[0] || {};
|
|
506
|
+
const templateId = formDataObj?.templateConfigs?.templateId || formDataObj?.template_id || formDataObj?.templateId || baseData?.template_id || '';
|
|
507
|
+
const templateRaw = formDataObj?.templateConfigs?.template || baseData?.['sms-editor'] || baseData?.['updated-sms-editor'] || '';
|
|
508
|
+
const templateContent = Array.isArray(templateRaw) ? templateRaw.join('') : (templateRaw || '');
|
|
509
|
+
|
|
510
|
+
const smsPayload = {
|
|
507
511
|
...basePayload,
|
|
508
512
|
smsMessageContent: {
|
|
509
513
|
message: resolvedMessage,
|
|
510
|
-
|
|
514
|
+
...(templateId && {
|
|
515
|
+
templateConfigs: {
|
|
516
|
+
templateId,
|
|
517
|
+
...(templateContent && { template: templateContent }),
|
|
518
|
+
},
|
|
519
|
+
}),
|
|
511
520
|
},
|
|
512
521
|
smsDeliverySettings: {
|
|
513
522
|
channelSettings: {
|
|
@@ -521,6 +530,8 @@ const CommonTestAndPreview = (props) => {
|
|
|
521
530
|
},
|
|
522
531
|
},
|
|
523
532
|
};
|
|
533
|
+
|
|
534
|
+
return smsPayload;
|
|
524
535
|
}
|
|
525
536
|
|
|
526
537
|
case CHANNELS.WHATSAPP: {
|
|
@@ -40,7 +40,6 @@ export const TRACK_CREATE_IMAGE = 'createImage';
|
|
|
40
40
|
export const TRACK_CREATE_LINE = 'createLine';
|
|
41
41
|
export const TRACK_CREATE_VIBER = 'createViber';
|
|
42
42
|
export const TRACK_CREATE_FACEBOOK = 'createFacebook';
|
|
43
|
-
export const TRACK_CREATE_WEBPUSH = 'createWebPush';
|
|
44
43
|
|
|
45
44
|
export const CREATE = 'create';
|
|
46
45
|
export const EDIT = 'edit';
|
|
@@ -55,7 +54,6 @@ export const EMAIL = 'email';
|
|
|
55
54
|
export const ASSETS = 'assets';
|
|
56
55
|
export const ZALO = 'zalo';
|
|
57
56
|
export const INAPP = 'inapp';
|
|
58
|
-
export const WEBPUSH = 'webpush';
|
|
59
57
|
|
|
60
58
|
export const JP_LOCALE_HIDE_FEATURE = 'JP_LOCALE_HIDE_FEATURE';
|
|
61
59
|
|
|
@@ -67,7 +65,6 @@ export const TRACK_EDIT_IMAGE = 'editImage';
|
|
|
67
65
|
export const TRACK_EDIT_LINE = 'editLine';
|
|
68
66
|
export const TRACK_EDIT_VIBER = 'editViber';
|
|
69
67
|
export const TRACK_EDIT_FACEBOOK = 'editFacebook';
|
|
70
|
-
export const TRACK_EDIT_WEBPUSH = 'editWebPush';
|
|
71
68
|
|
|
72
69
|
export const CHANNEL_CREATE_TRACK_MAPPING = {
|
|
73
70
|
sms: TRACK_CREATE_SMS,
|
|
@@ -78,7 +75,6 @@ export const CHANNEL_CREATE_TRACK_MAPPING = {
|
|
|
78
75
|
line: TRACK_CREATE_LINE,
|
|
79
76
|
viber: TRACK_CREATE_VIBER,
|
|
80
77
|
facebook: TRACK_CREATE_FACEBOOK,
|
|
81
|
-
webpush: TRACK_CREATE_WEBPUSH,
|
|
82
78
|
};
|
|
83
79
|
|
|
84
80
|
export const CHANNEL_EDIT_TRACK_MAPPING = {
|
|
@@ -90,7 +86,6 @@ export const CHANNEL_EDIT_TRACK_MAPPING = {
|
|
|
90
86
|
line: TRACK_EDIT_LINE,
|
|
91
87
|
viber: TRACK_EDIT_VIBER,
|
|
92
88
|
facebook: TRACK_EDIT_FACEBOOK,
|
|
93
|
-
webpush: TRACK_EDIT_WEBPUSH,
|
|
94
89
|
};
|
|
95
90
|
export const GTM_TRACKING_ID = 'UA-110024621-2';
|
|
96
91
|
export const BEE_PLUGIN = 'BEE_PLUGIN';
|
|
@@ -28,10 +28,6 @@ import { getWhatsappContent } from '../Whatsapp/utils';
|
|
|
28
28
|
import * as commonUtil from '../../utils/common';
|
|
29
29
|
import Zalo from '../Zalo';
|
|
30
30
|
import MobilePushNew from '../MobilePushNew';
|
|
31
|
-
import WebPush from '../WebPush';
|
|
32
|
-
import DevicePreviewContent from '../WebPush/Create/preview/DevicePreviewContent';
|
|
33
|
-
import { LAYOUT_MODE } from '../WebPush/Create/preview/constants';
|
|
34
|
-
import { WEBPUSH_CONTENT_FIELDS, WEBPUSH_TEMPLATE_PATHS } from '../WebPush/constants';
|
|
35
31
|
const CreativesWrapper = styled.div`
|
|
36
32
|
.ant-popover,
|
|
37
33
|
.ant-notification,
|
|
@@ -133,7 +129,6 @@ export function SlideBoxContent(props) {
|
|
|
133
129
|
onValidationFail,
|
|
134
130
|
channelsToHide,
|
|
135
131
|
forwardedTags,
|
|
136
|
-
supportedTags = [],
|
|
137
132
|
selectedOfferDetails,
|
|
138
133
|
channelsToDisable,
|
|
139
134
|
weChatTemplateType,
|
|
@@ -205,7 +200,6 @@ export function SlideBoxContent(props) {
|
|
|
205
200
|
const isCreateRcs = isCreate && channel === constants.RCS;
|
|
206
201
|
const isCreateMPush = isCreate && channel === constants.MOBILE_PUSH;
|
|
207
202
|
const isCreateCallTask = isCreate && channel === constants.CALL_TASK;
|
|
208
|
-
const isCreateWebPush = isCreate && channel === constants.WEBPUSH;
|
|
209
203
|
let isEditSms = false;
|
|
210
204
|
let isEditEmailWithId = false;
|
|
211
205
|
let isEmailEditWithContent = false;
|
|
@@ -213,14 +207,12 @@ export function SlideBoxContent(props) {
|
|
|
213
207
|
let isEmailPreview = false;
|
|
214
208
|
let isMpushPreview = false;
|
|
215
209
|
let isInappPreview = false;
|
|
216
|
-
let isWebPushPreview = false;
|
|
217
210
|
let isEditCallTask = false;
|
|
218
211
|
let isEditMPush = false;
|
|
219
212
|
let isEditFacebook = false;
|
|
220
213
|
let isEditFTP = false;
|
|
221
214
|
let isEditWhatsapp = false;
|
|
222
215
|
let isEditInApp = false;
|
|
223
|
-
let isEditWebPush = false;
|
|
224
216
|
let isEditRcs = false;
|
|
225
217
|
let isEditZalo = false;
|
|
226
218
|
const isEmailCreate = isCreate && channel === constants.EMAIL;
|
|
@@ -234,12 +226,10 @@ export function SlideBoxContent(props) {
|
|
|
234
226
|
isEditFacebook = isEdit && channel === constants.FACEBOOK;
|
|
235
227
|
isEditWhatsapp = isEdit && channel === constants.WHATSAPP;
|
|
236
228
|
isEditRcs = isEdit && channel === constants.RCS;
|
|
237
|
-
isEditWebPush = isEdit && channel === constants.WEBPUSH;
|
|
238
229
|
isPreview = slidBoxContent === 'preview' && [constants.SMS, constants.LINE, constants.WHATSAPP, constants.FACEBOOK, constants.VIBER, constants.RCS].includes(channel);
|
|
239
230
|
isEmailPreview = slidBoxContent === 'preview' && channel === constants.EMAIL;
|
|
240
231
|
isMpushPreview = slidBoxContent === 'preview' && channel === constants.MOBILE_PUSH;
|
|
241
232
|
isInappPreview = slidBoxContent === 'preview' && channel === constants.INAPP;
|
|
242
|
-
isWebPushPreview = slidBoxContent === 'preview' && channel === constants.WEBPUSH;
|
|
243
233
|
isEditFTP = isEdit && [constants.NO_COMMUNICATION, constants.FTP].includes(channel);
|
|
244
234
|
isEditZalo = isEdit && channel?.toUpperCase() === constants.ZALO;
|
|
245
235
|
isEditInApp = isEdit && channel === constants.INAPP;
|
|
@@ -487,30 +477,8 @@ export function SlideBoxContent(props) {
|
|
|
487
477
|
templateData={templateData}
|
|
488
478
|
channel={channel}
|
|
489
479
|
forwardedTags={forwardedTags}
|
|
490
|
-
|
|
480
|
+
/>
|
|
491
481
|
)}
|
|
492
|
-
{isWebPushPreview && (() => {
|
|
493
|
-
const webpushContent = get(templateData, WEBPUSH_TEMPLATE_PATHS.CONTENT, {});
|
|
494
|
-
const notificationTitle = webpushContent?.[WEBPUSH_CONTENT_FIELDS.TITLE] || '';
|
|
495
|
-
const notificationBody = webpushContent?.[WEBPUSH_CONTENT_FIELDS.MESSAGE] || '';
|
|
496
|
-
const imageSrc = webpushContent?.[WEBPUSH_CONTENT_FIELDS.IMAGE] || '';
|
|
497
|
-
const brandIconSrc = webpushContent?.[WEBPUSH_CONTENT_FIELDS.BRAND_ICON] || '';
|
|
498
|
-
// Extract URL from onClickAction or use empty string
|
|
499
|
-
const url = webpushContent?.[WEBPUSH_CONTENT_FIELDS.ON_CLICK_ACTION]?.url || '';
|
|
500
|
-
|
|
501
|
-
return (
|
|
502
|
-
<div className="webpush-preview-container">
|
|
503
|
-
<DevicePreviewContent
|
|
504
|
-
notificationTitle={notificationTitle}
|
|
505
|
-
notificationBody={notificationBody}
|
|
506
|
-
url={url}
|
|
507
|
-
imageSrc={imageSrc}
|
|
508
|
-
brandIconSrc={brandIconSrc}
|
|
509
|
-
layoutMode={LAYOUT_MODE.COMPACT}
|
|
510
|
-
/>
|
|
511
|
-
</div>
|
|
512
|
-
);
|
|
513
|
-
})()}
|
|
514
482
|
|
|
515
483
|
{
|
|
516
484
|
(currentChannel === constants.WECHAT && !!slidBoxContent) && <WechatWrapper
|
|
@@ -1046,28 +1014,6 @@ export function SlideBoxContent(props) {
|
|
|
1046
1014
|
/>
|
|
1047
1015
|
)}
|
|
1048
1016
|
|
|
1049
|
-
{(isCreateWebPush || isEditWebPush) && (
|
|
1050
|
-
<WebPush
|
|
1051
|
-
isFullMode={isFullMode}
|
|
1052
|
-
handleClose={handleClose}
|
|
1053
|
-
onCreateComplete={onCreateComplete}
|
|
1054
|
-
getFormData={getFormData}
|
|
1055
|
-
isGetFormData={isGetFormData}
|
|
1056
|
-
templateData={isEditWebPush ? templateData : undefined}
|
|
1057
|
-
creativesMode={creativesMode}
|
|
1058
|
-
params={isEditWebPush && templateData ? { id: templateData._id } : undefined}
|
|
1059
|
-
location={{
|
|
1060
|
-
pathname: isEditWebPush ? '/webpush/edit' : '/webpush/create',
|
|
1061
|
-
query,
|
|
1062
|
-
search: '',
|
|
1063
|
-
}}
|
|
1064
|
-
getDefaultTags={type}
|
|
1065
|
-
forwardedTags={forwardedTags}
|
|
1066
|
-
supportedTags={supportedTags}
|
|
1067
|
-
selectedOfferDetails={selectedOfferDetails}
|
|
1068
|
-
eventContextTags={eventContextTags}
|
|
1069
|
-
/>
|
|
1070
|
-
)}
|
|
1071
1017
|
{isCreateRcs && (<Rcs
|
|
1072
1018
|
{...rcsCommonProps}
|
|
1073
1019
|
showLiquidErrorInFooter={showLiquidErrorInFooter}
|
|
@@ -1130,7 +1076,6 @@ SlideBoxContent.propTypes = {
|
|
|
1130
1076
|
onValidationFail: PropTypes.func,
|
|
1131
1077
|
channelsToHide: PropTypes.array,
|
|
1132
1078
|
forwardedTags: PropTypes.object,
|
|
1133
|
-
supportedTags: PropTypes.array,
|
|
1134
1079
|
selectedOfferDetails: PropTypes.array,
|
|
1135
1080
|
channelsToDisable: PropTypes.array,
|
|
1136
1081
|
weChatTemplateType: PropTypes.string,
|
|
@@ -1146,7 +1091,7 @@ SlideBoxContent.propTypes = {
|
|
|
1146
1091
|
onFTPSubmit: PropTypes.func,
|
|
1147
1092
|
messageStrategy: PropTypes.string,
|
|
1148
1093
|
fbAdManager: PropTypes.string,
|
|
1149
|
-
showDisabledFBInfo: PropTypes.
|
|
1094
|
+
showDisabledFBInfo: PropTypes.boolean,
|
|
1150
1095
|
orgUnitId: PropTypes.any,
|
|
1151
1096
|
smsRegister: PropTypes.any,
|
|
1152
1097
|
getCmsTemplatesInProgress: PropTypes.bool,
|
|
@@ -71,7 +71,6 @@ export function SlideBoxHeader(props) {
|
|
|
71
71
|
rcs: <FormattedMessage {...messages.rcsCreative} />,
|
|
72
72
|
zalo: <FormattedMessage {...messages.zaloTemplate} />,
|
|
73
73
|
viber: <FormattedMessage {...messages.viberTemplate} />,
|
|
74
|
-
webpush: <FormattedMessage {...messages.webPushTemplate} />,
|
|
75
74
|
};
|
|
76
75
|
return labels[currentChannel.toLowerCase()];
|
|
77
76
|
};
|
|
@@ -21,8 +21,6 @@ export const PUSH = "PUSH";
|
|
|
21
21
|
export const RCS = "RCS";
|
|
22
22
|
export const ZALO = "ZALO";
|
|
23
23
|
export const INAPP = "INAPP";
|
|
24
|
-
export const WEBPUSH = "WEBPUSH";
|
|
25
|
-
export const WEBPUSH_BRAND_ICON = "WEBPUSH_BRAND_ICON";
|
|
26
24
|
export const PREVIEW = "preview";
|
|
27
25
|
export const EDIT_TEMPLATE = "editTemplate";
|
|
28
26
|
export const JOURNEY = "journey";
|
|
@@ -50,4 +48,3 @@ export const BIG_TEXT = "BIG_TEXT";
|
|
|
50
48
|
export const GENERIC = "GENERIC";
|
|
51
49
|
export const LIQUID_ERROR_MSG = "LIQUID_ERROR_MSG";
|
|
52
50
|
export const STANDARD_ERROR_MSG = "STANDARD_ERROR_MSG";
|
|
53
|
-
export const COMMON_CHANNELS = ['sms', 'email', 'wechat', 'mobilepush', 'webpush', 'line', 'viber', 'facebook', 'call_task', 'ftp', 'assets'];
|
|
@@ -42,7 +42,6 @@ import { makeSelectFetchingCmsData } from '../Email/selectors';
|
|
|
42
42
|
import {
|
|
43
43
|
IMAGE as LINE_IMAGE, IMAGE_MAP, IMAGE_CAROUSEL, VIDEO as LINE_VIDEO, TEMPLATE, STICKER,
|
|
44
44
|
} from '../Line/Container/constants';
|
|
45
|
-
import {EXTERNAL_URL, SITE_URL, WEBPUSH_MEDIA_TYPES} from '../WebPush/constants';
|
|
46
45
|
import { IMAGE, VIDEO } from '../Facebook/Advertisement/constant';
|
|
47
46
|
import {RCS_STATUSES} from '../Rcs/constants';
|
|
48
47
|
import { CREATIVE } from '../Facebook/constants';
|
|
@@ -709,73 +708,6 @@ export class Creatives extends React.Component {
|
|
|
709
708
|
};
|
|
710
709
|
break;
|
|
711
710
|
}
|
|
712
|
-
case constants.WEBPUSH: {
|
|
713
|
-
// Convert from campaign format (messageContent.content.content) to creatives format
|
|
714
|
-
const webpushContent = get(templateData, 'content', {});
|
|
715
|
-
const accountId = get(templateData, 'accountId');
|
|
716
|
-
const {
|
|
717
|
-
title,
|
|
718
|
-
message,
|
|
719
|
-
iconImageUrl: brandIcon = "",
|
|
720
|
-
cta,
|
|
721
|
-
expandableDetails
|
|
722
|
-
} = webpushContent || {};
|
|
723
|
-
|
|
724
|
-
// Map cta to onClickAction
|
|
725
|
-
let onClickAction = null;
|
|
726
|
-
if (cta) {
|
|
727
|
-
if (cta?.type === EXTERNAL_URL) {
|
|
728
|
-
onClickAction = {
|
|
729
|
-
type: URL,
|
|
730
|
-
url: cta?.actionLink || '',
|
|
731
|
-
};
|
|
732
|
-
} else {
|
|
733
|
-
onClickAction = {
|
|
734
|
-
type: cta?.type || SITE_URL,
|
|
735
|
-
};
|
|
736
|
-
}
|
|
737
|
-
}
|
|
738
|
-
|
|
739
|
-
// Map expandableDetails.ctas to ctas array
|
|
740
|
-
let ctas = [];
|
|
741
|
-
if (expandableDetails?.ctas && expandableDetails?.ctas?.length > 0) {
|
|
742
|
-
ctas = expandableDetails?.ctas?.map((ctaItem) => ({
|
|
743
|
-
actionText: ctaItem?.title || ctaItem?.actionText || '',
|
|
744
|
-
type: URL,
|
|
745
|
-
actionLink: ctaItem?.actionLink || '',
|
|
746
|
-
}));
|
|
747
|
-
}
|
|
748
|
-
|
|
749
|
-
// Map expandableDetails.media to image if present
|
|
750
|
-
let image = null;
|
|
751
|
-
if (expandableDetails?.media && expandableDetails?.media?.length > 0) {
|
|
752
|
-
const firstMedia = expandableDetails?.media[0];
|
|
753
|
-
if (firstMedia?.type === WEBPUSH_MEDIA_TYPES.IMAGE && firstMedia?.url) {
|
|
754
|
-
image = firstMedia?.url;
|
|
755
|
-
}
|
|
756
|
-
}
|
|
757
|
-
|
|
758
|
-
creativesTemplateData = {
|
|
759
|
-
type: channel,
|
|
760
|
-
name: templateData?.messageSubject,
|
|
761
|
-
versions: {
|
|
762
|
-
base: {
|
|
763
|
-
content: {
|
|
764
|
-
webpush: {
|
|
765
|
-
title: title || '',
|
|
766
|
-
message: message || '',
|
|
767
|
-
...(brandIcon && { brandIcon }),
|
|
768
|
-
...(onClickAction && { onClickAction }),
|
|
769
|
-
...(ctas.length > 0 && { ctas }),
|
|
770
|
-
...(image && { image, mediaType: IMAGE }),
|
|
771
|
-
},
|
|
772
|
-
},
|
|
773
|
-
},
|
|
774
|
-
},
|
|
775
|
-
definition: { accountId },
|
|
776
|
-
};
|
|
777
|
-
break;
|
|
778
|
-
}
|
|
779
711
|
default:
|
|
780
712
|
break;
|
|
781
713
|
}
|
|
@@ -1190,105 +1122,6 @@ export class Creatives extends React.Component {
|
|
|
1190
1122
|
}
|
|
1191
1123
|
}
|
|
1192
1124
|
break;
|
|
1193
|
-
case constants.WEBPUSH: {
|
|
1194
|
-
if (template.value) {
|
|
1195
|
-
const channelTemplate = template.value;
|
|
1196
|
-
const accountId = get(channelTemplate, 'definition.accountId');
|
|
1197
|
-
const webpushContent = get(channelTemplate, 'versions.base.content.webpush', {});
|
|
1198
|
-
const {
|
|
1199
|
-
title,
|
|
1200
|
-
message,
|
|
1201
|
-
brandIcon,
|
|
1202
|
-
iconImageUrl: templateImageUrl ,
|
|
1203
|
-
onClickAction,
|
|
1204
|
-
ctas: templateCtas,
|
|
1205
|
-
cta: templateCta,
|
|
1206
|
-
expandableDetails: templateExpandableDetails,
|
|
1207
|
-
image
|
|
1208
|
-
} = webpushContent || {};
|
|
1209
|
-
|
|
1210
|
-
const iconImageUrl = brandIcon || templateImageUrl || '';
|
|
1211
|
-
|
|
1212
|
-
// Map onClickAction to cta
|
|
1213
|
-
let cta = null;
|
|
1214
|
-
if (onClickAction) {
|
|
1215
|
-
if (onClickAction?.type === URL) {
|
|
1216
|
-
cta = {
|
|
1217
|
-
type: EXTERNAL_URL,
|
|
1218
|
-
actionLink: onClickAction?.url || '',
|
|
1219
|
-
};
|
|
1220
|
-
} else {
|
|
1221
|
-
cta = {
|
|
1222
|
-
type: onClickAction?.type || SITE_URL,
|
|
1223
|
-
actionLink: onClickAction?.url || '',
|
|
1224
|
-
};
|
|
1225
|
-
}
|
|
1226
|
-
} else if (templateCta) {
|
|
1227
|
-
// Fallback to cta if onClickAction is not present
|
|
1228
|
-
cta = {
|
|
1229
|
-
type: templateCta?.type || EXTERNAL_URL,
|
|
1230
|
-
actionLink: templateCta?.actionLink || '',
|
|
1231
|
-
};
|
|
1232
|
-
}
|
|
1233
|
-
|
|
1234
|
-
// Map ctas array to expandableDetails.ctas
|
|
1235
|
-
let expandableDetails = null;
|
|
1236
|
-
const hasCtas = templateCtas && templateCtas.length > 0;
|
|
1237
|
-
const hasImage = image;
|
|
1238
|
-
|
|
1239
|
-
if (hasCtas || hasImage) {
|
|
1240
|
-
expandableDetails = {
|
|
1241
|
-
media: [],
|
|
1242
|
-
ctas: [],
|
|
1243
|
-
};
|
|
1244
|
-
|
|
1245
|
-
// Map image to expandableDetails.media
|
|
1246
|
-
if (hasImage) {
|
|
1247
|
-
expandableDetails.media = [{
|
|
1248
|
-
url: image,
|
|
1249
|
-
type: IMAGE,
|
|
1250
|
-
}];
|
|
1251
|
-
}
|
|
1252
|
-
|
|
1253
|
-
// Map ctas array to expandableDetails.ctas
|
|
1254
|
-
if (hasCtas) {
|
|
1255
|
-
expandableDetails.ctas = templateCtas.map((ctaItem) => ({
|
|
1256
|
-
type: ctaItem?.type === URL ? EXTERNAL_URL : ctaItem?.type,
|
|
1257
|
-
action: ctaItem?.action || '',
|
|
1258
|
-
title: ctaItem?.actionText || ctaItem?.title || '',
|
|
1259
|
-
actionLink: ctaItem?.actionLink || '',
|
|
1260
|
-
}));
|
|
1261
|
-
}
|
|
1262
|
-
} else if (templateExpandableDetails) {
|
|
1263
|
-
// If expandableDetails already exists, use it
|
|
1264
|
-
expandableDetails = {
|
|
1265
|
-
media: templateExpandableDetails?.media || [],
|
|
1266
|
-
ctas: templateExpandableDetails?.ctas || [],
|
|
1267
|
-
};
|
|
1268
|
-
}
|
|
1269
|
-
|
|
1270
|
-
// Convert from creatives format to campaign format
|
|
1271
|
-
templateData = {
|
|
1272
|
-
channel,
|
|
1273
|
-
messageContent: {
|
|
1274
|
-
content: {
|
|
1275
|
-
channel: constants.WEBPUSH,
|
|
1276
|
-
accountId,
|
|
1277
|
-
content: {
|
|
1278
|
-
title: title || '',
|
|
1279
|
-
message: message || '',
|
|
1280
|
-
...(iconImageUrl && { iconImageUrl }),
|
|
1281
|
-
...(cta && { cta }),
|
|
1282
|
-
...(expandableDetails && { expandableDetails }),
|
|
1283
|
-
},
|
|
1284
|
-
messageSubject: channelTemplate?.name ? channelTemplate.name : 'messageSubject',
|
|
1285
|
-
offers: [],
|
|
1286
|
-
},
|
|
1287
|
-
},
|
|
1288
|
-
};
|
|
1289
|
-
}
|
|
1290
|
-
break;
|
|
1291
|
-
}
|
|
1292
1125
|
default:
|
|
1293
1126
|
break;
|
|
1294
1127
|
}
|
|
@@ -1340,7 +1173,6 @@ export class Creatives extends React.Component {
|
|
|
1340
1173
|
case constants.SMS:
|
|
1341
1174
|
case constants.WECHAT:
|
|
1342
1175
|
case constants.VIBER:
|
|
1343
|
-
case constants.WEBPUSH:
|
|
1344
1176
|
break;
|
|
1345
1177
|
case constants.EMAIL:
|
|
1346
1178
|
gtmDetails = {
|
|
@@ -338,10 +338,6 @@ export default defineMessages({
|
|
|
338
338
|
id: `${scope}.rcsCreative`,
|
|
339
339
|
defaultMessage: `RCS creative`,
|
|
340
340
|
},
|
|
341
|
-
"webPushTemplate": {
|
|
342
|
-
id: `${scope}.webPushTemplate`,
|
|
343
|
-
defaultMessage: `Web Push Template`,
|
|
344
|
-
},
|
|
345
341
|
"templateNameEmpty": {
|
|
346
342
|
id: `${scope}.templateNameEmpty`,
|
|
347
343
|
defaultMessage: `Template name cannot be empty`
|
|
@@ -24,24 +24,6 @@ jest.mock('../../../v2Components/FormBuilder', () => ({
|
|
|
24
24
|
),
|
|
25
25
|
}));
|
|
26
26
|
|
|
27
|
-
jest.mock('../../WebPush/Create/preview/DevicePreviewContent', () => ({
|
|
28
|
-
__esModule: true,
|
|
29
|
-
default: (props) => (
|
|
30
|
-
<div className="DevicePreviewContent-mock" {...props}>
|
|
31
|
-
DevicePreviewContent
|
|
32
|
-
</div>
|
|
33
|
-
),
|
|
34
|
-
}));
|
|
35
|
-
|
|
36
|
-
jest.mock('../../WebPush', () => ({
|
|
37
|
-
__esModule: true,
|
|
38
|
-
default: (props) => (
|
|
39
|
-
<div className="WebPush-mock" {...props}>
|
|
40
|
-
WebPush
|
|
41
|
-
</div>
|
|
42
|
-
),
|
|
43
|
-
}));
|
|
44
|
-
|
|
45
27
|
describe('Test SlideBoxContent container', () => {
|
|
46
28
|
const onCreateComplete = jest.fn();
|
|
47
29
|
let renderedComponent;
|
|
@@ -718,196 +700,4 @@ describe('Test SlideBoxContent container', () => {
|
|
|
718
700
|
expect(renderedComponent).toMatchSnapshot();
|
|
719
701
|
});
|
|
720
702
|
});
|
|
721
|
-
|
|
722
|
-
describe('WebPush channel functionality', () => {
|
|
723
|
-
it('Should render correct component for webpush channel create mode', () => {
|
|
724
|
-
renderFunction('WEBPUSH', 'createTemplate', { mode: 'create' });
|
|
725
|
-
expect(renderedComponent).toMatchSnapshot();
|
|
726
|
-
});
|
|
727
|
-
|
|
728
|
-
it('Should render correct component for webpush channel edit mode', () => {
|
|
729
|
-
const webpushEditTemplateData = {
|
|
730
|
-
type: 'WEBPUSH',
|
|
731
|
-
_id: '123',
|
|
732
|
-
versions: {
|
|
733
|
-
base: {
|
|
734
|
-
content: {
|
|
735
|
-
webpush: {
|
|
736
|
-
title: 'Test Title',
|
|
737
|
-
message: 'Test Message',
|
|
738
|
-
}
|
|
739
|
-
}
|
|
740
|
-
}
|
|
741
|
-
}
|
|
742
|
-
};
|
|
743
|
-
renderFunction('WEBPUSH', 'editTemplate', webpushEditTemplateData);
|
|
744
|
-
expect(renderedComponent).toMatchSnapshot();
|
|
745
|
-
});
|
|
746
|
-
|
|
747
|
-
it('Should render correct component for webpush channel preview mode with all fields', () => {
|
|
748
|
-
const webpushPreviewTemplateData = {
|
|
749
|
-
type: 'WEBPUSH',
|
|
750
|
-
versions: {
|
|
751
|
-
base: {
|
|
752
|
-
content: {
|
|
753
|
-
webpush: {
|
|
754
|
-
title: 'Test Notification Title',
|
|
755
|
-
message: 'Test notification body text',
|
|
756
|
-
image: 'https://example.com/image.jpg',
|
|
757
|
-
brandIcon: 'https://example.com/brand-icon.png',
|
|
758
|
-
onClickAction: {
|
|
759
|
-
url: 'https://example.com'
|
|
760
|
-
}
|
|
761
|
-
}
|
|
762
|
-
}
|
|
763
|
-
}
|
|
764
|
-
}
|
|
765
|
-
};
|
|
766
|
-
renderFunction('WEBPUSH', 'preview', webpushPreviewTemplateData);
|
|
767
|
-
expect(renderedComponent).toMatchSnapshot();
|
|
768
|
-
});
|
|
769
|
-
|
|
770
|
-
it('Should render correct component for webpush channel preview mode with minimal fields', () => {
|
|
771
|
-
const webpushPreviewTemplateData = {
|
|
772
|
-
type: 'WEBPUSH',
|
|
773
|
-
versions: {
|
|
774
|
-
base: {
|
|
775
|
-
content: {
|
|
776
|
-
webpush: {
|
|
777
|
-
title: 'Test Title',
|
|
778
|
-
message: 'Test Message'
|
|
779
|
-
}
|
|
780
|
-
}
|
|
781
|
-
}
|
|
782
|
-
}
|
|
783
|
-
};
|
|
784
|
-
renderFunction('WEBPUSH', 'preview', webpushPreviewTemplateData);
|
|
785
|
-
expect(renderedComponent).toMatchSnapshot();
|
|
786
|
-
});
|
|
787
|
-
|
|
788
|
-
it('Should render correct component for webpush channel preview mode with empty fields', () => {
|
|
789
|
-
const webpushPreviewTemplateData = {
|
|
790
|
-
type: 'WEBPUSH',
|
|
791
|
-
versions: {
|
|
792
|
-
base: {
|
|
793
|
-
content: {
|
|
794
|
-
webpush: {}
|
|
795
|
-
}
|
|
796
|
-
}
|
|
797
|
-
}
|
|
798
|
-
};
|
|
799
|
-
renderFunction('WEBPUSH', 'preview', webpushPreviewTemplateData);
|
|
800
|
-
expect(renderedComponent).toMatchSnapshot();
|
|
801
|
-
});
|
|
802
|
-
|
|
803
|
-
it('Should render correct component for webpush channel preview mode with missing onClickAction url', () => {
|
|
804
|
-
const webpushPreviewTemplateData = {
|
|
805
|
-
type: 'WEBPUSH',
|
|
806
|
-
versions: {
|
|
807
|
-
base: {
|
|
808
|
-
content: {
|
|
809
|
-
webpush: {
|
|
810
|
-
title: 'Test Title',
|
|
811
|
-
message: 'Test Message',
|
|
812
|
-
onClickAction: {}
|
|
813
|
-
}
|
|
814
|
-
}
|
|
815
|
-
}
|
|
816
|
-
}
|
|
817
|
-
};
|
|
818
|
-
renderFunction('WEBPUSH', 'preview', webpushPreviewTemplateData);
|
|
819
|
-
expect(renderedComponent).toMatchSnapshot();
|
|
820
|
-
});
|
|
821
|
-
|
|
822
|
-
it('Should render correct component for webpush channel preview mode with null onClickAction', () => {
|
|
823
|
-
const webpushPreviewTemplateData = {
|
|
824
|
-
type: 'WEBPUSH',
|
|
825
|
-
versions: {
|
|
826
|
-
base: {
|
|
827
|
-
content: {
|
|
828
|
-
webpush: {
|
|
829
|
-
title: 'Test Title',
|
|
830
|
-
message: 'Test Message',
|
|
831
|
-
onClickAction: null
|
|
832
|
-
}
|
|
833
|
-
}
|
|
834
|
-
}
|
|
835
|
-
}
|
|
836
|
-
};
|
|
837
|
-
renderFunction('WEBPUSH', 'preview', webpushPreviewTemplateData);
|
|
838
|
-
expect(renderedComponent).toMatchSnapshot();
|
|
839
|
-
});
|
|
840
|
-
|
|
841
|
-
it('Should handle supportedTags prop in webpush create mode', () => {
|
|
842
|
-
renderFunction('WEBPUSH', 'createTemplate', { mode: 'create' }, {
|
|
843
|
-
supportedTags: ['tag1', 'tag2']
|
|
844
|
-
});
|
|
845
|
-
expect(renderedComponent).toMatchSnapshot();
|
|
846
|
-
});
|
|
847
|
-
|
|
848
|
-
it('Should handle supportedTags prop in webpush edit mode', () => {
|
|
849
|
-
const webpushEditTemplateData = {
|
|
850
|
-
type: 'WEBPUSH',
|
|
851
|
-
_id: '123',
|
|
852
|
-
versions: {
|
|
853
|
-
base: {
|
|
854
|
-
content: {
|
|
855
|
-
webpush: {
|
|
856
|
-
title: 'Test Title',
|
|
857
|
-
message: 'Test Message',
|
|
858
|
-
}
|
|
859
|
-
}
|
|
860
|
-
}
|
|
861
|
-
}
|
|
862
|
-
};
|
|
863
|
-
renderFunction('WEBPUSH', 'editTemplate', webpushEditTemplateData, {
|
|
864
|
-
supportedTags: ['tag1', 'tag2']
|
|
865
|
-
});
|
|
866
|
-
expect(renderedComponent).toMatchSnapshot();
|
|
867
|
-
});
|
|
868
|
-
|
|
869
|
-
it('Should handle webpush create mode with all props', () => {
|
|
870
|
-
renderFunction('WEBPUSH', 'createTemplate', { mode: 'create' }, {
|
|
871
|
-
isFullMode: true,
|
|
872
|
-
handleClose: jest.fn(),
|
|
873
|
-
onCreateComplete: jest.fn(),
|
|
874
|
-
creativesMode: 'test',
|
|
875
|
-
getDefaultTags: 'outbound',
|
|
876
|
-
forwardedTags: {},
|
|
877
|
-
supportedTags: ['tag1'],
|
|
878
|
-
selectedOfferDetails: [],
|
|
879
|
-
eventContextTags: {}
|
|
880
|
-
});
|
|
881
|
-
expect(renderedComponent).toMatchSnapshot();
|
|
882
|
-
});
|
|
883
|
-
|
|
884
|
-
it('Should handle webpush edit mode with all props', () => {
|
|
885
|
-
const webpushEditTemplateData = {
|
|
886
|
-
type: 'WEBPUSH',
|
|
887
|
-
_id: '123',
|
|
888
|
-
versions: {
|
|
889
|
-
base: {
|
|
890
|
-
content: {
|
|
891
|
-
webpush: {
|
|
892
|
-
title: 'Test Title',
|
|
893
|
-
message: 'Test Message',
|
|
894
|
-
}
|
|
895
|
-
}
|
|
896
|
-
}
|
|
897
|
-
}
|
|
898
|
-
};
|
|
899
|
-
renderFunction('WEBPUSH', 'editTemplate', webpushEditTemplateData, {
|
|
900
|
-
isFullMode: true,
|
|
901
|
-
handleClose: jest.fn(),
|
|
902
|
-
onCreateComplete: jest.fn(),
|
|
903
|
-
creativesMode: 'test',
|
|
904
|
-
getDefaultTags: 'outbound',
|
|
905
|
-
forwardedTags: {},
|
|
906
|
-
supportedTags: ['tag1'],
|
|
907
|
-
selectedOfferDetails: [],
|
|
908
|
-
eventContextTags: {}
|
|
909
|
-
});
|
|
910
|
-
expect(renderedComponent).toMatchSnapshot();
|
|
911
|
-
});
|
|
912
|
-
});
|
|
913
703
|
});
|