@capillarytech/creatives-library 8.0.250-alpha.2 → 8.0.251
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/assets/Android.png +0 -0
- package/assets/iOS.png +0 -0
- package/constants/unified.js +1 -3
- package/initialReducer.js +0 -2
- package/package.json +1 -1
- package/services/api.js +0 -15
- package/services/tests/api.test.js +0 -34
- package/translations/en.json +3 -4
- package/utils/common.js +0 -11
- package/utils/commonUtils.js +5 -28
- package/utils/tests/commonUtil.test.js +0 -224
- package/utils/tests/transformerUtils.test.js +0 -297
- package/utils/transformTemplateConfig.js +10 -0
- package/utils/transformerUtils.js +0 -40
- package/v2Components/CapDeviceContent/index.js +56 -61
- 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/CapTagList/index.js +1 -6
- package/v2Components/CapTagListWithInput/index.js +1 -5
- package/v2Components/CapTagListWithInput/messages.js +1 -1
- package/v2Components/CapWhatsappCTA/tests/index.test.js +0 -5
- package/v2Components/ErrorInfoNote/index.js +72 -455
- package/v2Components/ErrorInfoNote/messages.js +6 -36
- package/v2Components/ErrorInfoNote/style.scss +4 -280
- package/v2Components/FormBuilder/tests/index.test.js +4 -13
- package/v2Components/HtmlEditor/HTMLEditor.js +94 -547
- package/v2Components/HtmlEditor/__tests__/HTMLEditor.test.js +133 -1358
- package/v2Components/HtmlEditor/__tests__/index.lazy.test.js +16 -27
- package/v2Components/HtmlEditor/_htmlEditor.scss +45 -108
- package/v2Components/HtmlEditor/_index.lazy.scss +1 -1
- package/v2Components/HtmlEditor/components/CodeEditorPane/_codeEditorPane.scss +101 -22
- package/v2Components/HtmlEditor/components/CodeEditorPane/index.js +140 -146
- package/v2Components/HtmlEditor/components/DeviceToggle/_deviceToggle.scss +1 -2
- package/v2Components/HtmlEditor/components/DeviceToggle/index.js +3 -3
- package/v2Components/HtmlEditor/components/EditorToolbar/_editorToolbar.scss +0 -9
- package/v2Components/HtmlEditor/components/EditorToolbar/index.js +1 -1
- package/v2Components/HtmlEditor/components/FullscreenModal/_fullscreenModal.scss +0 -22
- package/v2Components/HtmlEditor/components/InAppPreviewPane/DeviceFrame.js +7 -4
- package/v2Components/HtmlEditor/components/InAppPreviewPane/__tests__/DeviceFrame.test.js +45 -35
- package/v2Components/HtmlEditor/components/InAppPreviewPane/_inAppPreviewPane.scss +3 -1
- package/v2Components/HtmlEditor/components/InAppPreviewPane/constants.js +33 -33
- package/v2Components/HtmlEditor/components/InAppPreviewPane/index.js +6 -7
- package/v2Components/HtmlEditor/components/PreviewPane/_previewPane.scss +6 -3
- package/v2Components/HtmlEditor/components/PreviewPane/index.js +34 -24
- package/v2Components/HtmlEditor/components/SplitContainer/_splitContainer.scss +1 -1
- package/v2Components/HtmlEditor/components/ValidationErrorDisplay/__tests__/index.test.js +152 -0
- package/v2Components/HtmlEditor/components/ValidationErrorDisplay/index.js +31 -49
- package/v2Components/HtmlEditor/components/ValidationPanel/_validationPanel.scss +34 -50
- package/v2Components/HtmlEditor/components/ValidationPanel/index.js +41 -70
- package/v2Components/HtmlEditor/constants.js +20 -42
- package/v2Components/HtmlEditor/hooks/__tests__/useInAppContent.test.js +16 -373
- package/v2Components/HtmlEditor/hooks/useEditorContent.js +2 -5
- package/v2Components/HtmlEditor/hooks/useInAppContent.js +146 -88
- package/v2Components/HtmlEditor/hooks/useValidation.js +53 -189
- package/v2Components/HtmlEditor/index.js +1 -1
- package/v2Components/HtmlEditor/messages.js +85 -95
- package/v2Components/HtmlEditor/utils/__tests__/htmlValidator.enhanced.test.js +45 -94
- package/v2Components/HtmlEditor/utils/__tests__/validationAdapter.test.js +0 -134
- package/v2Components/HtmlEditor/utils/contentSanitizer.js +41 -40
- package/v2Components/HtmlEditor/utils/htmlValidator.js +72 -71
- package/v2Components/HtmlEditor/utils/liquidTemplateSupport.js +102 -134
- package/v2Components/HtmlEditor/utils/properSyntaxHighlighting.js +25 -23
- package/v2Components/HtmlEditor/utils/validationAdapter.js +41 -66
- package/v2Components/MobilePushPreviewV2/index.js +7 -32
- package/v2Components/TemplatePreview/_templatePreview.scss +24 -55
- package/v2Components/TemplatePreview/index.js +32 -47
- package/v2Components/TemplatePreview/messages.js +0 -4
- package/v2Components/TestAndPreviewSlidebox/_testAndPreviewSlidebox.scss +0 -1
- package/v2Containers/App/constants.js +0 -5
- package/v2Containers/BeeEditor/index.js +90 -172
- package/v2Containers/Cap/tests/__snapshots__/index.test.js.snap +3 -4
- package/v2Containers/CreativesContainer/SlideBoxContent.js +53 -184
- package/v2Containers/CreativesContainer/SlideBoxFooter.js +13 -163
- package/v2Containers/CreativesContainer/SlideBoxHeader.js +1 -3
- package/v2Containers/CreativesContainer/constants.js +0 -4
- package/v2Containers/CreativesContainer/index.js +46 -407
- package/v2Containers/CreativesContainer/messages.js +0 -12
- package/v2Containers/CreativesContainer/tests/SlideBoxContent.test.js +0 -210
- package/v2Containers/CreativesContainer/tests/SlideBoxFooter.test.js +2 -11
- package/v2Containers/CreativesContainer/tests/__snapshots__/SlideBoxContent.test.js.snap +50 -342
- package/v2Containers/CreativesContainer/tests/__snapshots__/index.test.js.snap +0 -106
- package/v2Containers/Email/actions.js +0 -7
- package/v2Containers/Email/constants.js +1 -5
- package/v2Containers/Email/index.js +29 -234
- package/v2Containers/Email/messages.js +0 -32
- package/v2Containers/Email/reducer.js +1 -12
- package/v2Containers/Email/sagas.js +7 -61
- package/v2Containers/Email/tests/__snapshots__/reducer.test.js.snap +0 -2
- package/v2Containers/Email/tests/reducer.test.js +0 -46
- package/v2Containers/Email/tests/sagas.test.js +29 -320
- package/v2Containers/EmailWrapper/components/EmailWrapperView.js +19 -207
- package/v2Containers/EmailWrapper/components/HTMLEditorTesting.js +74 -40
- package/v2Containers/EmailWrapper/components/__tests__/HTMLEditorTesting.test.js +67 -2
- package/v2Containers/EmailWrapper/constants.js +0 -2
- package/v2Containers/EmailWrapper/hooks/useEmailWrapper.js +77 -629
- package/v2Containers/EmailWrapper/index.js +23 -103
- package/v2Containers/EmailWrapper/messages.js +1 -61
- package/v2Containers/EmailWrapper/tests/EmailWrapperView.test.js +214 -0
- package/v2Containers/EmailWrapper/tests/useEmailWrapper.test.js +77 -594
- package/v2Containers/InApp/actions.js +0 -7
- package/v2Containers/InApp/constants.js +4 -20
- package/v2Containers/InApp/index.js +359 -802
- package/v2Containers/InApp/index.scss +3 -4
- package/v2Containers/InApp/messages.js +3 -7
- package/v2Containers/InApp/reducer.js +3 -21
- package/v2Containers/InApp/sagas.js +9 -29
- package/v2Containers/InApp/selectors.js +5 -25
- package/v2Containers/InApp/tests/index.test.js +50 -154
- package/v2Containers/InApp/tests/reducer.test.js +0 -34
- package/v2Containers/InApp/tests/sagas.test.js +9 -61
- package/v2Containers/Line/Container/ImageCarousel/tests/__snapshots__/content.test.js.snap +9 -15
- package/v2Containers/Line/Container/ImageCarousel/tests/__snapshots__/index.test.js.snap +6 -10
- package/v2Containers/Line/Container/Wrapper/tests/__snapshots__/index.test.js.snap +75 -102
- package/v2Containers/Line/Container/tests/__snapshots__/index.test.js.snap +54 -81
- package/v2Containers/Rcs/tests/__snapshots__/index.test.js.snap +174 -244
- package/v2Containers/SmsTrai/Create/tests/__snapshots__/index.test.js.snap +12 -16
- package/v2Containers/SmsTrai/Edit/tests/__snapshots__/index.test.js.snap +36 -52
- package/v2Containers/TagList/index.js +19 -62
- package/v2Containers/Templates/ChannelTypeIllustration.js +1 -13
- package/v2Containers/Templates/_templates.scss +1 -265
- package/v2Containers/Templates/actions.js +1 -2
- package/v2Containers/Templates/constants.js +0 -1
- package/v2Containers/Templates/index.js +38 -363
- package/v2Containers/Templates/messages.js +0 -28
- package/v2Containers/Templates/reducer.js +0 -4
- package/v2Containers/Templates/tests/index.test.js +0 -10
- package/v2Containers/TemplatesV2/index.js +7 -15
- package/v2Containers/TemplatesV2/messages.js +0 -4
- package/v2Containers/Whatsapp/tests/__snapshots__/index.test.js.snap +486 -682
- 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/v2Components/HtmlEditor/__tests__/HTMLEditor.apiErrors.test.js +0 -874
- package/v2Components/HtmlEditor/components/ValidationPanel/constants.js +0 -6
- package/v2Components/HtmlEditor/components/ValidationTabs/_validationTabs.scss +0 -254
- package/v2Components/HtmlEditor/components/ValidationTabs/index.js +0 -364
- package/v2Components/HtmlEditor/components/ValidationTabs/messages.js +0 -51
- package/v2Components/HtmlEditor/hooks/__tests__/useValidation.apiErrors.test.js +0 -795
- package/v2Components/HtmlEditor/utils/validationConstants.js +0 -40
- package/v2Containers/BeePopupEditor/_beePopupEditor.scss +0 -14
- package/v2Containers/BeePopupEditor/constants.js +0 -10
- package/v2Containers/BeePopupEditor/index.js +0 -194
- package/v2Containers/BeePopupEditor/tests/index.test.js +0 -627
- package/v2Containers/EmailWrapper/components/EmailHTMLEditor.js +0 -1285
- package/v2Containers/EmailWrapper/components/__tests__/EmailHTMLEditor.test.js +0 -1870
- package/v2Containers/EmailWrapper/components/__tests__/EmailWrapperView.test.js +0 -520
- package/v2Containers/EmailWrapper/tests/useEmailWrapper.edgeCases.test.js +0 -643
- package/v2Containers/InApp/__tests__/InAppHTMLEditor.test.js +0 -376
- package/v2Containers/InApp/__tests__/sagas.test.js +0 -363
- package/v2Containers/InApp/tests/selectors.test.js +0 -612
- package/v2Containers/InAppWrapper/components/InAppWrapperView.js +0 -151
- package/v2Containers/InAppWrapper/components/__tests__/InAppWrapperView.test.js +0 -267
- package/v2Containers/InAppWrapper/components/inAppWrapperView.scss +0 -23
- package/v2Containers/InAppWrapper/constants.js +0 -16
- package/v2Containers/InAppWrapper/hooks/__tests__/useInAppWrapper.test.js +0 -473
- package/v2Containers/InAppWrapper/hooks/useInAppWrapper.js +0 -198
- package/v2Containers/InAppWrapper/index.js +0 -148
- package/v2Containers/InAppWrapper/messages.js +0 -49
- package/v2Containers/InappAdvance/index.js +0 -1099
- package/v2Containers/InappAdvance/index.scss +0 -10
- package/v2Containers/InappAdvance/tests/index.test.js +0 -448
- 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 -107
- package/v2Containers/WebPush/Create/components/ButtonsLinksSection.js +0 -160
- package/v2Containers/WebPush/Create/components/ButtonsLinksSection.test.js +0 -476
- 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 -143
- 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 -82
- 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 -515
- 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 -46
- package/v2Containers/WebPush/Create/hooks/useButtonManagement.js +0 -150
- 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 -203
- 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 -23
- package/v2Containers/WebPush/Create/preview/WebPushPreview.js +0 -155
- 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 -47
- package/v2Containers/WebPush/Create/preview/components/AndroidMobileExpanded.js +0 -141
- 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 -81
- 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 -351
- 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 -909
- 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
|
@@ -302,36 +302,4 @@ export default defineMessages({
|
|
|
302
302
|
id: 'creatives.containersV2.Email.base64ImageError',
|
|
303
303
|
defaultMessage: 'Base64 images are not allowed. Please upload your image to a gallery and use it, or add the image URL instead.',
|
|
304
304
|
},
|
|
305
|
-
"editorTypeTitle": {
|
|
306
|
-
id: 'creatives.containersV2.Email.editorTypeTitle',
|
|
307
|
-
defaultMessage: 'Editor type',
|
|
308
|
-
},
|
|
309
|
-
"htmlEditorTitle": {
|
|
310
|
-
id: 'creatives.containersV2.Email.htmlEditorTitle',
|
|
311
|
-
defaultMessage: 'HTML editor',
|
|
312
|
-
},
|
|
313
|
-
"htmlEditorDescription": {
|
|
314
|
-
id: 'creatives.containersV2.Email.htmlEditorDescription',
|
|
315
|
-
defaultMessage: 'Use a basic HTML editor to write and format your content. Suitable if you are familiar with HTML.',
|
|
316
|
-
},
|
|
317
|
-
"dragDropEditorTitle": {
|
|
318
|
-
id: 'creatives.containersV2.Email.dragDropEditorTitle',
|
|
319
|
-
defaultMessage: 'Drag & drop editor',
|
|
320
|
-
},
|
|
321
|
-
"dragDropEditorDescription": {
|
|
322
|
-
id: 'creatives.containersV2.Email.dragDropEditorDescription',
|
|
323
|
-
defaultMessage: 'Create your content visually by dragging blocks — no coding needed. Great for quick, easy designs.',
|
|
324
|
-
},
|
|
325
|
-
"uploadZipTitle": {
|
|
326
|
-
id: 'creatives.containersV2.Email.uploadZipTitle',
|
|
327
|
-
defaultMessage: 'Upload zip file',
|
|
328
|
-
},
|
|
329
|
-
"uploadZipDescription": {
|
|
330
|
-
id: 'creatives.containersV2.Email.uploadZipDescription',
|
|
331
|
-
defaultMessage: 'Upload a ZIP containing your custom HTML, images, and assets. Ideal if your content is already built.',
|
|
332
|
-
},
|
|
333
|
-
"nextButton": {
|
|
334
|
-
id: 'creatives.containersV2.Email.nextButton',
|
|
335
|
-
defaultMessage: 'Next',
|
|
336
|
-
},
|
|
337
305
|
});
|
|
@@ -11,7 +11,6 @@ import * as types from './constants';
|
|
|
11
11
|
const initialState = fromJS({
|
|
12
12
|
createTemplateInProgress: false,
|
|
13
13
|
createResponse: {},
|
|
14
|
-
isBeeEnabled: false,
|
|
15
14
|
});
|
|
16
15
|
|
|
17
16
|
function emailReducer(state = initialState, action) {
|
|
@@ -108,15 +107,6 @@ function emailReducer(state = initialState, action) {
|
|
|
108
107
|
return state
|
|
109
108
|
.set('fetchingCmsData', false)
|
|
110
109
|
.set('fetchingCmsDataFailed', true);
|
|
111
|
-
case types.GET_CMS_ACCOUNTS_REQUEST:
|
|
112
|
-
return state
|
|
113
|
-
.set('isBeeEnabled', false); // default to false
|
|
114
|
-
case types.GET_CMS_ACCOUNTS_SUCCESS:
|
|
115
|
-
return state
|
|
116
|
-
.set('isBeeEnabled', action.isBeeEnabled);
|
|
117
|
-
case types.GET_CMS_ACCOUNTS_FAILURE:
|
|
118
|
-
return state
|
|
119
|
-
.set('isBeeEnabled', false);
|
|
120
110
|
case types.CLEAR_EMAIL_CRUD_RESPONSE_REQUEST:
|
|
121
111
|
return state
|
|
122
112
|
.set('createResponse', fromJS({}));
|
|
@@ -149,8 +139,7 @@ function emailReducer(state = initialState, action) {
|
|
|
149
139
|
.set('CmsSettings', fromJS({}))
|
|
150
140
|
.set('fetchingCmsData', false)
|
|
151
141
|
.set('duplicateResponse', fromJS({}))
|
|
152
|
-
.set('cmsData', '')
|
|
153
|
-
.set('isBeeEnabled', false);
|
|
142
|
+
.set('cmsData', '');
|
|
154
143
|
case types.TRANSFORM_EMAIL_TEMPLATE_REQUEST:
|
|
155
144
|
return state.set("createTemplateInProgress", true);
|
|
156
145
|
default:
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
call, put, takeLatest, takeEvery, all,
|
|
3
3
|
} from 'redux-saga/effects';
|
|
4
|
-
import CapNotification from '@capillarytech/cap-ui-library/CapNotification';
|
|
5
4
|
import * as Api from '../../services/api';
|
|
6
5
|
import * as types from './constants';
|
|
7
6
|
import { transformEmailTemplates, storeS3FileSizeDetails } from '../../utils/cdnTransformation';
|
|
@@ -10,47 +9,15 @@ export function* createTemplate(template) {
|
|
|
10
9
|
let errorMsg;
|
|
11
10
|
try {
|
|
12
11
|
const result = yield call(Api.createEmailTemplate, template);
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
const isError = !result.success || statusCode >= 400;
|
|
16
|
-
|
|
17
|
-
if (isError) {
|
|
18
|
-
// Extract error message from various possible locations in the response
|
|
19
|
-
errorMsg = result.message
|
|
20
|
-
|| result.errorMessage
|
|
21
|
-
|| result.error?.message
|
|
22
|
-
|| (result.response && result.response.message)
|
|
23
|
-
|| (result.status && result.status.message)
|
|
24
|
-
|| (result.data && result.data.message)
|
|
25
|
-
|| `API Error: ${statusCode || 'Unknown error'}`;
|
|
26
|
-
// Show error notification directly from saga
|
|
27
|
-
CapNotification.error({
|
|
28
|
-
key: 'createTemplateError',
|
|
29
|
-
message: errorMsg,
|
|
30
|
-
});
|
|
12
|
+
if (!result.success || result.status.code === 500) {
|
|
13
|
+
errorMsg = result.message;
|
|
31
14
|
yield put({ type: types.CREATE_TEMPLATE_FAILURE, errorMsg });
|
|
32
|
-
// Call callback with error so component can handle it (if needed)
|
|
33
|
-
if (template.onCreateTemplateComplete) {
|
|
34
|
-
try {
|
|
35
|
-
// Call the callback directly (it's a regular function, not a generator)
|
|
36
|
-
template.onCreateTemplateComplete({ error: true, message: errorMsg, statusCode });
|
|
37
|
-
} catch (callbackError) {
|
|
38
|
-
console.error('[Email Saga] Error executing callback:', callbackError);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
15
|
} else {
|
|
42
|
-
yield put({
|
|
43
|
-
type: types.CREATE_TEMPLATE_SUCCESS, data: result.response, statusCode: result.status ? result.status.code : '', errorMsg,
|
|
44
|
-
});
|
|
16
|
+
yield put({ type: types.CREATE_TEMPLATE_SUCCESS, data: result.response, statusCode: result.status ? result.status.code : '', errorMsg });
|
|
45
17
|
yield template.onCreateTemplateComplete(result.response);
|
|
46
18
|
}
|
|
47
19
|
} catch (error) {
|
|
48
|
-
errorMsg = error.message || error.toString() || 'An unexpected error occurred';
|
|
49
20
|
yield put({ type: types.CREATE_TEMPLATE_FAILURE, error, errorMsg });
|
|
50
|
-
// Call callback with error so component can handle it
|
|
51
|
-
if (template.onCreateTemplateComplete) {
|
|
52
|
-
yield template.onCreateTemplateComplete({ error: true, message: errorMsg });
|
|
53
|
-
}
|
|
54
21
|
}
|
|
55
22
|
}
|
|
56
23
|
|
|
@@ -59,14 +26,14 @@ export function* transformEmailTemplate({template, callback}) {
|
|
|
59
26
|
const result = yield call(transformEmailTemplates, template);
|
|
60
27
|
yield callback(result);
|
|
61
28
|
} catch (error) {
|
|
62
|
-
yield callback(template);
|
|
29
|
+
yield callback(template);
|
|
63
30
|
}
|
|
64
31
|
}
|
|
65
32
|
|
|
66
33
|
export function* duplicateTemplate(payload) {
|
|
67
34
|
let errorMsg;
|
|
68
35
|
let result;
|
|
69
|
-
|
|
36
|
+
let { id, channel, callback } = payload;
|
|
70
37
|
try {
|
|
71
38
|
result = yield call(Api.duplicateTemplate, {id, channel} );
|
|
72
39
|
if (result.status.code === 500) {
|
|
@@ -75,9 +42,7 @@ export function* duplicateTemplate(payload) {
|
|
|
75
42
|
if (callback) {
|
|
76
43
|
callback(result?.response);
|
|
77
44
|
}
|
|
78
|
-
yield put({
|
|
79
|
-
type: types.DUPLICATE_TEMPLATE_SUCCESS, data: result?.response, statusCode: result?.status?.code, errorMsg,
|
|
80
|
-
});
|
|
45
|
+
yield put({ type: types.DUPLICATE_TEMPLATE_SUCCESS, data: result?.response, statusCode: result?.status?.code, errorMsg });
|
|
81
46
|
} catch (error) {
|
|
82
47
|
yield put({ type: types.DUPLICATE_TEMPLATE_FAILURE, error, errorMsg });
|
|
83
48
|
}
|
|
@@ -102,9 +67,7 @@ export function* getAllAssets(assetType, queryParams) {
|
|
|
102
67
|
}
|
|
103
68
|
}
|
|
104
69
|
|
|
105
|
-
export function* getCmsSetting({
|
|
106
|
-
cmsType, projectId, cmsMode, langId, isEdmSupport, isBEEAppEnable,
|
|
107
|
-
}) {
|
|
70
|
+
export function* getCmsSetting({cmsType, projectId, cmsMode, langId, isEdmSupport, isBEEAppEnable}) {
|
|
108
71
|
try {
|
|
109
72
|
const result = yield call(Api.getCmsTemplateSettingsV2, cmsType, projectId, cmsMode, langId, isEdmSupport, isBEEAppEnable);
|
|
110
73
|
|
|
@@ -124,17 +87,6 @@ export function* getCmsData({cmsType, projectId, langId}) {
|
|
|
124
87
|
}
|
|
125
88
|
}
|
|
126
89
|
|
|
127
|
-
export function* getCmsAccounts({cmsType}) {
|
|
128
|
-
try {
|
|
129
|
-
const result = yield call(Api.getCmsAccounts, cmsType);
|
|
130
|
-
const { cmsAccounts } = result.data?.response || {};
|
|
131
|
-
const isBeeEnabled = cmsAccounts?.type === cmsType;
|
|
132
|
-
yield put({ type: types.GET_CMS_ACCOUNTS_SUCCESS, isBeeEnabled });
|
|
133
|
-
} catch (error) {
|
|
134
|
-
yield put({ type: types.GET_CMS_ACCOUNTS_FAILURE, error });
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
|
|
138
90
|
export function* uploadAsset(file, assetType, fileParams) {
|
|
139
91
|
try {
|
|
140
92
|
const result = yield call(Api.uploadFile, file, assetType, fileParams);
|
|
@@ -171,10 +123,6 @@ function* watchGetCmsData() {
|
|
|
171
123
|
yield takeEvery(types.GET_CMS_EDITOR_DATA_REQUEST, getCmsData);
|
|
172
124
|
}
|
|
173
125
|
|
|
174
|
-
function* watchGetCmsAccounts() {
|
|
175
|
-
yield takeEvery(types.GET_CMS_ACCOUNTS_REQUEST, getCmsAccounts);
|
|
176
|
-
}
|
|
177
|
-
|
|
178
126
|
function* watchUploadAsset() {
|
|
179
127
|
yield takeLatest(types.UPLOAD_ASSET_REQUEST, uploadAsset);
|
|
180
128
|
}
|
|
@@ -191,7 +139,6 @@ export default [
|
|
|
191
139
|
watchGetAllAssets,
|
|
192
140
|
watchGetCmsSetting,
|
|
193
141
|
watchGetCmsData,
|
|
194
|
-
watchGetCmsAccounts,
|
|
195
142
|
watchUploadAsset,
|
|
196
143
|
watchDuplicateTemplate,
|
|
197
144
|
];
|
|
@@ -204,7 +151,6 @@ export function* v2EmailSagas() {
|
|
|
204
151
|
watchGetAllAssets(),
|
|
205
152
|
watchGetCmsSetting(),
|
|
206
153
|
watchGetCmsData(),
|
|
207
|
-
watchGetCmsAccounts(),
|
|
208
154
|
watchUploadAsset(),
|
|
209
155
|
]);
|
|
210
156
|
}
|
|
@@ -4,7 +4,6 @@ exports[` 1`] = `
|
|
|
4
4
|
Immutable.Map {
|
|
5
5
|
"createTemplateInProgress": false,
|
|
6
6
|
"createResponse": Immutable.Map {},
|
|
7
|
-
"isBeeEnabled": false,
|
|
8
7
|
}
|
|
9
8
|
`;
|
|
10
9
|
|
|
@@ -12,6 +11,5 @@ exports[` 2`] = `
|
|
|
12
11
|
Immutable.Map {
|
|
13
12
|
"createTemplateInProgress": true,
|
|
14
13
|
"createResponse": Immutable.Map {},
|
|
15
|
-
"isBeeEnabled": false,
|
|
16
14
|
}
|
|
17
15
|
`;
|
|
@@ -15,50 +15,4 @@ describe('emailReducer', () => {
|
|
|
15
15
|
};
|
|
16
16
|
expect(emailReducer(undefined, action)).toMatchSnapshot();
|
|
17
17
|
});
|
|
18
|
-
|
|
19
|
-
it.concurrent('it handles GET_CMS_ACCOUNTS_REQUEST action (line 111-113)', () => {
|
|
20
|
-
const initialState = fromJS({
|
|
21
|
-
isBeeEnabled: true, // Start with true to verify it gets set to false
|
|
22
|
-
});
|
|
23
|
-
const action = {
|
|
24
|
-
type: types.GET_CMS_ACCOUNTS_REQUEST,
|
|
25
|
-
};
|
|
26
|
-
const result = emailReducer(initialState, action);
|
|
27
|
-
expect(result.get('isBeeEnabled')).toBe(false);
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
it.concurrent('it handles GET_CMS_ACCOUNTS_SUCCESS action (line 114-116)', () => {
|
|
31
|
-
const initialState = fromJS({
|
|
32
|
-
isBeeEnabled: false,
|
|
33
|
-
});
|
|
34
|
-
const action = {
|
|
35
|
-
type: types.GET_CMS_ACCOUNTS_SUCCESS,
|
|
36
|
-
isBeeEnabled: true,
|
|
37
|
-
};
|
|
38
|
-
const result = emailReducer(initialState, action);
|
|
39
|
-
expect(result.get('isBeeEnabled')).toBe(true);
|
|
40
|
-
});
|
|
41
|
-
|
|
42
|
-
it.concurrent('it handles GET_CMS_ACCOUNTS_SUCCESS action with false (line 114-116)', () => {
|
|
43
|
-
const initialState = fromJS({
|
|
44
|
-
isBeeEnabled: true,
|
|
45
|
-
});
|
|
46
|
-
const action = {
|
|
47
|
-
type: types.GET_CMS_ACCOUNTS_SUCCESS,
|
|
48
|
-
isBeeEnabled: false,
|
|
49
|
-
};
|
|
50
|
-
const result = emailReducer(initialState, action);
|
|
51
|
-
expect(result.get('isBeeEnabled')).toBe(false);
|
|
52
|
-
});
|
|
53
|
-
|
|
54
|
-
it.concurrent('it handles GET_CMS_ACCOUNTS_FAILURE action (line 117-119)', () => {
|
|
55
|
-
const initialState = fromJS({
|
|
56
|
-
isBeeEnabled: true, // Start with true to verify it gets set to false
|
|
57
|
-
});
|
|
58
|
-
const action = {
|
|
59
|
-
type: types.GET_CMS_ACCOUNTS_FAILURE,
|
|
60
|
-
};
|
|
61
|
-
const result = emailReducer(initialState, action);
|
|
62
|
-
expect(result.get('isBeeEnabled')).toBe(false);
|
|
63
|
-
});
|
|
64
18
|
});
|