@capillarytech/creatives-library 9.0.56-alpha.6 → 9.0.56-betaa.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.
- package/constants/unified.js +4 -2
- package/package.json +1 -1
- package/services/api.js +0 -20
- package/utils/common.js +12 -0
- package/utils/templateVarUtils.js +0 -32
- package/utils/tests/templateVarUtils.test.js +0 -44
- package/v2Components/CommonTestAndPreview/UnifiedPreview/index.js +0 -14
- package/v2Components/CommonTestAndPreview/actions.js +0 -13
- package/v2Components/CommonTestAndPreview/constants.js +0 -8
- package/v2Components/CommonTestAndPreview/index.js +2 -57
- package/v2Components/CommonTestAndPreview/reducer.js +0 -20
- package/v2Components/CommonTestAndPreview/sagas.js +0 -28
- package/v2Components/CommonTestAndPreview/selectors.js +0 -6
- package/v2Components/CommonTestAndPreview/tests/UnifiedPreview/index.test.js +0 -106
- package/v2Components/CommonTestAndPreview/tests/actions.test.js +0 -15
- package/v2Components/CommonTestAndPreview/tests/constants.test.js +1 -9
- package/v2Components/CommonTestAndPreview/tests/index.test.js +0 -101
- package/v2Components/CommonTestAndPreview/tests/reducer.test.js +0 -41
- package/v2Components/CommonTestAndPreview/tests/sagas.test.js +0 -84
- package/v2Components/CommonTestAndPreview/tests/selectors.test.js +0 -12
- package/v2Components/FormBuilder/Functional/FormBuilderShell.js +320 -46
- package/v2Components/FormBuilder/Functional/channels/mobilepush/buildSubmitPayload.js +10 -0
- package/v2Components/FormBuilder/Functional/channels/mobilepush/config.js +82 -0
- package/v2Components/FormBuilder/Functional/channels/mobilepush/getEditorErrorDescriptor.js +74 -0
- package/v2Components/FormBuilder/Functional/channels/mobilepush/index.js +28 -0
- package/v2Components/FormBuilder/Functional/channels/mobilepush/modals.js +19 -0
- package/v2Components/FormBuilder/Functional/channels/mobilepush/runSubmitPipeline.js +45 -0
- package/v2Components/FormBuilder/Functional/channels/mobilepush/tests/getEditorErrorDescriptor.test.js +162 -0
- package/v2Components/FormBuilder/Functional/channels/mobilepush/tests/modals.test.js +37 -0
- package/v2Components/FormBuilder/Functional/channels/mobilepush/tests/runSubmitPipeline.test.js +70 -0
- package/v2Components/FormBuilder/Functional/channels/mobilepush/tests/validate.test.js +274 -0
- package/v2Components/FormBuilder/Functional/channels/mobilepush/validate.js +251 -0
- package/v2Components/FormBuilder/Functional/channels/registry.js +2 -0
- package/v2Components/FormBuilder/Functional/constants.js +43 -8
- package/v2Components/FormBuilder/Functional/core/schema/initializeFormState.js +175 -28
- package/v2Components/FormBuilder/Functional/core/store/formReducer.js +75 -6
- package/v2Components/FormBuilder/Functional/core/store/toLegacyFormData.js +10 -20
- package/v2Components/FormBuilder/Functional/layout/FieldSlot.js +9 -1
- package/v2Components/FormBuilder/Functional/layout/SchemaForm.js +20 -3
- package/v2Components/FormBuilder/Functional/layout/Section.js +6 -1
- package/v2Components/FormBuilder/Functional/layout/TabsContainer.js +89 -0
- package/v2Components/FormBuilder/Functional/renderers/mpushRenderers.js +440 -0
- package/v2Components/FormBuilder/Functional/tests/fieldSlot.test.js +9 -2
- package/v2Components/FormBuilder/Functional/tests/mpush.crossFlowParity.test.js +430 -0
- package/v2Components/FormBuilder/Functional/tests/mpush.ctaFlows.parity.test.js +282 -0
- package/v2Components/FormBuilder/Functional/tests/mpush.editContainer.parity.test.js +141 -0
- package/v2Components/FormBuilder/Functional/tests/mpush.engine.test.js +306 -0
- package/v2Components/FormBuilder/Functional/tests/mpush.shellEvents.test.js +151 -0
- package/v2Components/FormBuilder/Functional/tests/mpushRenderers.test.js +342 -0
- package/v2Components/FormBuilder/Functional/tests/schemaForm.test.js +17 -0
- package/v2Components/FormBuilder/Functional/tests/tabsContainer.test.js +110 -0
- package/v2Components/FormBuilder/index.js +34 -12
- package/v2Components/FormBuilder/tests/entryGate.test.js +94 -7
- package/v2Components/FormBuilder/tests/mpush.characterization.test.js +459 -0
- package/v2Components/TestAndPreviewSlidebox/index.js +0 -9
- package/v2Containers/CommunicationFlow/CommunicationFlow.js +75 -128
- package/v2Containers/CommunicationFlow/CommunicationFlow.scss +2 -30
- package/v2Containers/CommunicationFlow/CommunicationFlowCard.js +27 -58
- package/v2Containers/CommunicationFlow/Tests/CommunicationFlow.test.js +51 -471
- package/v2Containers/CommunicationFlow/Tests/CommunicationFlowCard.test.js +4 -40
- package/v2Containers/CommunicationFlow/constants.js +4 -67
- package/v2Containers/CommunicationFlow/index.js +23 -16
- package/v2Containers/CommunicationFlow/messages.js +3 -7
- package/v2Containers/CommunicationFlow/steps/ChannelSelectionStep/ChannelSelectionStep.js +10 -22
- package/v2Containers/CommunicationFlow/steps/ChannelSelectionStep/ChannelSelectionStep.scss +0 -4
- package/v2Containers/CommunicationFlow/steps/ChannelSelectionStep/Tests/ChannelSelectionStep.test.js +4 -112
- package/v2Containers/CommunicationFlow/steps/DeliverySettingsStep/DeliverySettingsSection.js +0 -3
- package/v2Containers/CommunicationFlow/steps/DeliverySettingsStep/SenderDetails.js +0 -6
- package/v2Containers/CommunicationFlow/steps/DeliverySettingsStep/Tests/SenderDetails.test.js +0 -25
- package/v2Containers/CommunicationFlow/steps/DeliverySettingsStep/Tests/deliverySettingsConfig.test.js +4 -11
- package/v2Containers/CommunicationFlow/steps/DeliverySettingsStep/deliverySettingsConfig.js +5 -19
- package/v2Containers/CreativesContainer/index.js +3 -2
- package/v2Containers/CreativesContainer/tests/__snapshots__/index.test.js.snap +5 -5
- package/v2Containers/CreativesContainer/tests/index.test.js +0 -12
- package/v2Containers/Rcs/tests/__snapshots__/index.test.js.snap +19 -115
- package/v2Containers/SmsTrai/Edit/tests/__snapshots__/index.test.js.snap +3 -27
- package/v2Containers/WebPush/Create/preview/WebPushPreview.js +12 -17
- package/v2Containers/WebPush/Create/preview/tests/WebPushPreview.test.js +0 -5
- package/v2Containers/Whatsapp/index.js +3 -8
- package/v2Containers/Whatsapp/tests/__snapshots__/index.test.js.snap +34 -306
- package/v2Containers/mockdata.js +0 -25
- package/v2Containers/CommunicationFlow/Tests/constants.test.js +0 -85
package/v2Containers/mockdata.js
CHANGED
|
@@ -1111,31 +1111,6 @@ export default {
|
|
|
1111
1111
|
},
|
|
1112
1112
|
accountName: "WhatsappAccount",
|
|
1113
1113
|
},
|
|
1114
|
-
// CCS sends an explicit `cards: null` (not omitted) for a non-carousel WhatsApp
|
|
1115
|
-
// template — regression fixture for a crash reading `.map` off null.
|
|
1116
|
-
whatsappGetTemplateDataNullCards: {
|
|
1117
|
-
channel: "WHATSAPP",
|
|
1118
|
-
storeType: "REGISTERED_STORE",
|
|
1119
|
-
accountId: 12721,
|
|
1120
|
-
messagePartsCount: 1,
|
|
1121
|
-
messageBody: "Hey test, this is a plain WhatsApp template with no carousel.",
|
|
1122
|
-
templateConfigs: {
|
|
1123
|
-
name: "creatives_whatsapp6",
|
|
1124
|
-
language: "en",
|
|
1125
|
-
varMapped: {
|
|
1126
|
-
"{{1}}_1": "test",
|
|
1127
|
-
},
|
|
1128
|
-
template: "Hey {{1}}, this is a plain WhatsApp template with no carousel.",
|
|
1129
|
-
id: "creatives_whatsapp6",
|
|
1130
|
-
category: "MARKETING",
|
|
1131
|
-
buttonType: "NONE",
|
|
1132
|
-
buttons: null,
|
|
1133
|
-
mediaType: "TEXT",
|
|
1134
|
-
whatsappMedia: null,
|
|
1135
|
-
cards: null,
|
|
1136
|
-
},
|
|
1137
|
-
accountName: "WhatsappAccount",
|
|
1138
|
-
},
|
|
1139
1114
|
whatsappGetCreativeData1: {
|
|
1140
1115
|
value: {
|
|
1141
1116
|
name: "creatives_whatsapp6",
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
CCS_CONTENT_TRANSFORMS,
|
|
3
|
-
CCS_CHANNEL_NAME_MAP,
|
|
4
|
-
CCS_CHANNEL_CONTENT_KEY_MAP,
|
|
5
|
-
CCS_CHANNEL_DELIVERY_KEY_MAP,
|
|
6
|
-
} from '../constants';
|
|
7
|
-
|
|
8
|
-
describe('CCS_CONTENT_TRANSFORMS', () => {
|
|
9
|
-
describe('EMAIL', () => {
|
|
10
|
-
it('prefers emailBody over emailHtml when both are present', () => {
|
|
11
|
-
expect(
|
|
12
|
-
CCS_CONTENT_TRANSFORMS.EMAIL({
|
|
13
|
-
emailSubject: 'Subject', emailBody: '<p>Body</p>', emailHtml: '<p>Html</p>',
|
|
14
|
-
}),
|
|
15
|
-
).toEqual({ messageSubject: 'Subject', messageBody: '<p>Body</p>' });
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
it('falls back to emailHtml when emailBody is absent', () => {
|
|
19
|
-
expect(
|
|
20
|
-
CCS_CONTENT_TRANSFORMS.EMAIL({ emailSubject: 'Subject', emailHtml: '<p>Html</p>' }),
|
|
21
|
-
).toEqual({ messageSubject: 'Subject', messageBody: '<p>Html</p>' });
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
it('defaults templateData to {} when called with no argument', () => {
|
|
25
|
-
expect(CCS_CONTENT_TRANSFORMS.EMAIL()).toEqual({
|
|
26
|
-
messageSubject: undefined, messageBody: undefined,
|
|
27
|
-
});
|
|
28
|
-
});
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
describe('SMS', () => {
|
|
32
|
-
it('uses messageBody when present', () => {
|
|
33
|
-
expect(CCS_CONTENT_TRANSFORMS.SMS({ messageBody: 'Hello' })).toEqual({ message: 'Hello' });
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
it('falls back to an empty string when messageBody is absent', () => {
|
|
37
|
-
expect(CCS_CONTENT_TRANSFORMS.SMS({})).toEqual({ message: '' });
|
|
38
|
-
});
|
|
39
|
-
|
|
40
|
-
it('defaults templateData to {} when called with no argument', () => {
|
|
41
|
-
expect(CCS_CONTENT_TRANSFORMS.SMS()).toEqual({ message: '' });
|
|
42
|
-
});
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
describe('WEBPUSH', () => {
|
|
46
|
-
it('extracts fields from the nested messageContent.content wrapper', () => {
|
|
47
|
-
expect(
|
|
48
|
-
CCS_CONTENT_TRANSFORMS.WEBPUSH({
|
|
49
|
-
messageContent: {
|
|
50
|
-
content: {
|
|
51
|
-
messageSubject: 'Subject', accountId: 'acc_1', content: 'Body', offers: [{ id: 1 }],
|
|
52
|
-
},
|
|
53
|
-
},
|
|
54
|
-
}),
|
|
55
|
-
).toEqual({ messageSubject: 'Subject', accountId: 'acc_1', content: 'Body' });
|
|
56
|
-
});
|
|
57
|
-
|
|
58
|
-
it('falls back to the flat templateData when messageContent.content is absent', () => {
|
|
59
|
-
expect(
|
|
60
|
-
CCS_CONTENT_TRANSFORMS.WEBPUSH({
|
|
61
|
-
messageSubject: 'Subject', accountId: 'acc_1', content: 'Body',
|
|
62
|
-
}),
|
|
63
|
-
).toEqual({ messageSubject: 'Subject', accountId: 'acc_1', content: 'Body' });
|
|
64
|
-
});
|
|
65
|
-
|
|
66
|
-
it('defaults templateData to {} when called with no argument', () => {
|
|
67
|
-
expect(CCS_CONTENT_TRANSFORMS.WEBPUSH()).toEqual({
|
|
68
|
-
messageSubject: undefined, accountId: undefined, content: undefined,
|
|
69
|
-
});
|
|
70
|
-
});
|
|
71
|
-
});
|
|
72
|
-
});
|
|
73
|
-
|
|
74
|
-
describe('CCS_CHANNEL_NAME_MAP', () => {
|
|
75
|
-
it('normalizes the UI\'s MOBILEPUSH identifier to CCS\'s PUSH enum value', () => {
|
|
76
|
-
expect(CCS_CHANNEL_NAME_MAP.MOBILEPUSH).toBe('PUSH');
|
|
77
|
-
});
|
|
78
|
-
});
|
|
79
|
-
|
|
80
|
-
describe('CCS_CHANNEL_CONTENT_KEY_MAP / CCS_CHANNEL_DELIVERY_KEY_MAP', () => {
|
|
81
|
-
it('maps the PUSH channel to its mpush-prefixed content and delivery keys', () => {
|
|
82
|
-
expect(CCS_CHANNEL_CONTENT_KEY_MAP.PUSH).toBe('mpushMessageContent');
|
|
83
|
-
expect(CCS_CHANNEL_DELIVERY_KEY_MAP.PUSH).toBe('mpushDeliverySettings');
|
|
84
|
-
});
|
|
85
|
-
});
|