@capillarytech/creatives-library 8.0.330-alpha.0 → 8.0.331-alpha.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 (111) hide show
  1. package/constants/unified.js +0 -18
  2. package/package.json +1 -1
  3. package/services/tests/api.test.js +0 -13
  4. package/utils/commonUtils.js +1 -19
  5. package/v2Components/CapTagList/index.js +0 -10
  6. package/v2Components/CommonTestAndPreview/CustomValuesEditor.js +49 -70
  7. package/v2Components/CommonTestAndPreview/DeliverySettings/DeliverySettings.scss +2 -8
  8. package/v2Components/CommonTestAndPreview/DeliverySettings/ModifyDeliverySettings.js +21 -207
  9. package/v2Components/CommonTestAndPreview/DeliverySettings/constants.js +0 -16
  10. package/v2Components/CommonTestAndPreview/DeliverySettings/index.js +10 -85
  11. package/v2Components/CommonTestAndPreview/DeliverySettings/messages.js +0 -30
  12. package/v2Components/CommonTestAndPreview/DeliverySettings/utils/parseSenderDetailsResponse.js +11 -79
  13. package/v2Components/CommonTestAndPreview/ExistingCustomerModal.js +1 -0
  14. package/v2Components/CommonTestAndPreview/SendTestMessage.js +5 -10
  15. package/v2Components/CommonTestAndPreview/UnifiedPreview/_unifiedPreview.scss +1 -20
  16. package/v2Components/CommonTestAndPreview/UnifiedPreview/index.js +4 -133
  17. package/v2Components/CommonTestAndPreview/_commonTestAndPreview.scss +0 -11
  18. package/v2Components/CommonTestAndPreview/constants.js +2 -38
  19. package/v2Components/CommonTestAndPreview/index.js +176 -672
  20. package/v2Components/CommonTestAndPreview/messages.js +3 -41
  21. package/v2Components/CommonTestAndPreview/reducer.js +3 -1
  22. package/v2Components/CommonTestAndPreview/sagas.js +8 -16
  23. package/v2Components/CommonTestAndPreview/tests/CustomValuesEditor.test.js +284 -308
  24. package/v2Components/CommonTestAndPreview/tests/DeliverySettings/ModifyDeliverySettings.test.js +65 -231
  25. package/v2Components/CommonTestAndPreview/tests/DeliverySettings/index.test.js +5 -118
  26. package/v2Components/CommonTestAndPreview/tests/DeliverySettings/utils/parseSenderDetailsResponse.test.js +0 -341
  27. package/v2Components/CommonTestAndPreview/tests/SendTestMessage.test.js +13 -34
  28. package/v2Components/CommonTestAndPreview/tests/UnifiedPreview/index.test.js +1 -199
  29. package/v2Components/CommonTestAndPreview/tests/index.test.js +4 -132
  30. package/v2Components/CommonTestAndPreview/tests/sagas.test.js +2 -2
  31. package/v2Components/FormBuilder/index.js +1 -7
  32. package/v2Components/TestAndPreviewSlidebox/index.js +1 -13
  33. package/v2Components/TestAndPreviewSlidebox/sagas.js +4 -11
  34. package/v2Components/TestAndPreviewSlidebox/tests/saga.test.js +1 -3
  35. package/v2Containers/CreativesContainer/SlideBoxContent.js +4 -36
  36. package/v2Containers/CreativesContainer/SlideBoxFooter.js +1 -10
  37. package/v2Containers/CreativesContainer/SlideBoxHeader.js +4 -29
  38. package/v2Containers/CreativesContainer/constants.js +0 -9
  39. package/v2Containers/CreativesContainer/index.js +93 -292
  40. package/v2Containers/CreativesContainer/index.scss +1 -51
  41. package/v2Containers/CreativesContainer/tests/SlideBoxFooter.test.js +34 -78
  42. package/v2Containers/CreativesContainer/tests/SlideBoxHeader.test.js +16 -79
  43. package/v2Containers/CreativesContainer/tests/__snapshots__/SlideBoxContent.test.js.snap +0 -8
  44. package/v2Containers/CreativesContainer/tests/__snapshots__/SlideBoxHeader.test.js.snap +98 -357
  45. package/v2Containers/CreativesContainer/tests/__snapshots__/index.test.js.snap +10 -20
  46. package/v2Containers/CreativesContainer/tests/index.test.js +9 -71
  47. package/v2Containers/Rcs/constants.js +3 -40
  48. package/v2Containers/Rcs/index.js +895 -1145
  49. package/v2Containers/Rcs/index.scss +6 -85
  50. package/v2Containers/Rcs/messages.js +2 -12
  51. package/v2Containers/Rcs/tests/__snapshots__/index.test.js.snap +1432 -40783
  52. package/v2Containers/Rcs/tests/__snapshots__/utils.test.js.snap +5 -0
  53. package/v2Containers/Rcs/tests/index.test.js +38 -41
  54. package/v2Containers/Rcs/tests/mockData.js +0 -38
  55. package/v2Containers/Rcs/tests/utils.test.js +1 -435
  56. package/v2Containers/Rcs/utils.js +10 -405
  57. package/v2Containers/Sms/Create/index.js +38 -100
  58. package/v2Containers/SmsTrai/Create/index.js +4 -9
  59. package/v2Containers/SmsTrai/Edit/constants.js +0 -2
  60. package/v2Containers/SmsTrai/Edit/index.js +128 -636
  61. package/v2Containers/SmsTrai/Edit/messages.js +4 -14
  62. package/v2Containers/SmsTrai/Edit/tests/__snapshots__/index.test.js.snap +2296 -4249
  63. package/v2Containers/SmsWrapper/index.js +8 -37
  64. package/v2Containers/TagList/index.js +11 -21
  65. package/v2Containers/Templates/_templates.scss +2 -63
  66. package/v2Containers/Templates/actions.js +0 -11
  67. package/v2Containers/Templates/constants.js +0 -2
  68. package/v2Containers/Templates/index.js +40 -90
  69. package/v2Containers/Templates/sagas.js +12 -57
  70. package/v2Containers/Templates/tests/__snapshots__/index.test.js.snap +1079 -1043
  71. package/v2Containers/Templates/tests/sagas.test.js +123 -193
  72. package/v2Containers/TemplatesV2/TemplatesV2.style.js +1 -72
  73. package/v2Containers/TemplatesV2/index.js +23 -86
  74. package/v2Containers/WebPush/Create/index.js +1 -1
  75. package/v2Containers/Whatsapp/index.js +20 -3
  76. package/v2Containers/Whatsapp/tests/__snapshots__/index.test.js.snap +34 -578
  77. package/utils/templateVarUtils.js +0 -201
  78. package/utils/tests/templateVarUtils.test.js +0 -204
  79. package/v2Components/CommonTestAndPreview/previewApiUtils.js +0 -59
  80. package/v2Components/CommonTestAndPreview/tests/previewApiUtils.test.js +0 -67
  81. package/v2Components/SmsFallback/SmsFallbackLocalSelector.js +0 -87
  82. package/v2Components/SmsFallback/constants.js +0 -73
  83. package/v2Components/SmsFallback/index.js +0 -955
  84. package/v2Components/SmsFallback/index.scss +0 -265
  85. package/v2Components/SmsFallback/messages.js +0 -78
  86. package/v2Components/SmsFallback/smsFallbackUtils.js +0 -118
  87. package/v2Components/SmsFallback/tests/SmsFallbackLocalSelector.test.js +0 -50
  88. package/v2Components/SmsFallback/tests/rcsSmsFallback.acceptance.test.js +0 -147
  89. package/v2Components/SmsFallback/tests/smsFallbackHandlers.test.js +0 -304
  90. package/v2Components/SmsFallback/tests/smsFallbackUi.test.js +0 -197
  91. package/v2Components/SmsFallback/tests/smsFallbackUtils.test.js +0 -277
  92. package/v2Components/SmsFallback/tests/useLocalTemplateList.test.js +0 -422
  93. package/v2Components/SmsFallback/useLocalTemplateList.js +0 -92
  94. package/v2Components/VarSegmentMessageEditor/constants.js +0 -2
  95. package/v2Components/VarSegmentMessageEditor/index.js +0 -125
  96. package/v2Components/VarSegmentMessageEditor/index.scss +0 -46
  97. package/v2Containers/CreativesContainer/CreativesSlideBoxWrapper.js +0 -43
  98. package/v2Containers/CreativesContainer/embeddedSlideboxUtils.js +0 -67
  99. package/v2Containers/CreativesContainer/tests/SlideBoxContent.localTemplates.test.js +0 -90
  100. package/v2Containers/CreativesContainer/tests/embeddedSlideboxUtils.test.js +0 -258
  101. package/v2Containers/CreativesContainer/tests/useLocalTemplatesProp.test.js +0 -125
  102. package/v2Containers/Rcs/rcsLibraryHydrationUtils.js +0 -225
  103. package/v2Containers/Rcs/tests/rcsLibraryHydrationUtils.test.js +0 -318
  104. package/v2Containers/Sms/smsFormDataHelpers.js +0 -67
  105. package/v2Containers/Sms/tests/smsFormDataHelpers.test.js +0 -253
  106. package/v2Containers/SmsTrai/Edit/index.scss +0 -121
  107. package/v2Containers/Templates/TemplatesActionBar.js +0 -101
  108. package/v2Containers/Templates/tests/TemplatesActionBar.test.js +0 -120
  109. package/v2Containers/Templates/tests/smsTemplatesListApi.test.js +0 -180
  110. package/v2Containers/Templates/utils/smsTemplatesListApi.js +0 -79
  111. package/v2Containers/TemplatesV2/tests/TemplatesV2.localTemplates.test.js +0 -131
@@ -173,35 +173,19 @@ describe('Test SlideBoxContent container', () => {
173
173
  expect(getCreativesData).toHaveBeenCalledWith({ channel: 'RCS' });
174
174
  });
175
175
 
176
- it('RCS getFormData mirrors smsFallBackContent onto templateData for library round-trip', async () => {
177
- renderedComponent = shallowWithIntl(
178
- <Creatives
179
- loyaltyMetaData={loyaltyMetaData}
180
- Templates={rcsTemplates}
181
- channel="RCS"
182
- slidBoxContent="editTemplate"
183
- templateData={rcsEditTemplateData}
184
- handleCloseCreatives={handleCloseCreatives}
185
- getCreativesData={getCreativesData}
186
- isFullMode={false}
187
- templateActions={{
188
- getCdnTransformationConfig,
189
- }}
190
- />,
191
- );
176
+ it('RCS getFormData does not attach smsFallBackContent to templateData', async () => {
177
+ renderFunction('RCS', 'editTemplate', rcsTemplates, rcsEditTemplateData);
192
178
  renderedComponent.instance().onEditTemplate();
193
179
 
194
180
  const mockValue = {
195
- validity: true,
196
181
  value: {
197
182
  name: 'rcs_creative_name',
198
- type: 'RCS',
199
183
  versions: {
200
184
  base: {
201
185
  content: {
202
186
  RCS: {
203
187
  rcsContent: { contentType: 'RICHCARD', cardType: 'STANDALONE', cardSettings: {}, cardContent: [{}] },
204
- smsFallBackContent: { message: 'fallback-body' },
188
+ smsFallBackContent: { message: 'should-not-be-copied' },
205
189
  },
206
190
  },
207
191
  },
@@ -209,62 +193,16 @@ describe('Test SlideBoxContent container', () => {
209
193
  },
210
194
  };
211
195
 
212
- // Call getFormData on the container instance — shallow CapSlideBox `content` shape can differ across wrappers
213
- renderedComponent.instance().getFormData(mockValue);
196
+ renderedComponent
197
+ .find('CapSlideBox')
198
+ .props()
199
+ .content.props.getFormData(mockValue);
214
200
  await tick();
215
201
 
216
202
  const instance = renderedComponent.instance();
217
203
  expect(instance.state.templateData).toBeDefined();
218
- expect(instance.state.templateData.smsFallBackContent).toEqual({ message: 'fallback-body' });
219
- });
220
-
221
- it('RCS getFormData mirrors rcsCardVarMapped onto templateData for campaign reopen', async () => {
222
- renderedComponent = shallowWithIntl(
223
- <Creatives
224
- loyaltyMetaData={loyaltyMetaData}
225
- Templates={rcsTemplates}
226
- channel="RCS"
227
- slidBoxContent="editTemplate"
228
- templateData={rcsEditTemplateData}
229
- handleCloseCreatives={handleCloseCreatives}
230
- getCreativesData={getCreativesData}
231
- isFullMode={false}
232
- templateActions={{
233
- getCdnTransformationConfig,
234
- }}
235
- />,
236
- );
237
- renderedComponent.instance().onEditTemplate();
238
-
239
- const cardVarMapped = { 1: '[Name]', user_name: '[Name]' };
240
- const mockValue = {
241
- validity: true,
242
- value: {
243
- name: 'rcs_creative_name',
244
- type: 'RCS',
245
- versions: {
246
- base: {
247
- content: {
248
- RCS: {
249
- rcsContent: {
250
- contentType: 'RICHCARD',
251
- cardType: 'STANDALONE',
252
- cardSettings: {},
253
- cardContent: [{ title: 'Hi {{user_name}}', cardVarMapped }],
254
- },
255
- smsFallBackContent: {},
256
- },
257
- },
258
- },
259
- },
260
- },
261
- };
262
-
263
- renderedComponent.instance().getFormData(mockValue);
264
- await tick();
265
-
266
- const instance = renderedComponent.instance();
267
- expect(instance.state.templateData.rcsCardVarMapped).toEqual(cardVarMapped);
204
+ // sms fallback content should not be set on templateData per current logic
205
+ expect(instance.state.templateData.smsFallBackContent).toBeUndefined();
268
206
  });
269
207
 
270
208
  it('Text getCreatives data for rcs, data from creatives done to campaigns', async () => {
@@ -40,22 +40,6 @@ export const contentType = {
40
40
  carousel: 'carousel',
41
41
  };
42
42
 
43
- export const CHANNELS = [
44
- 'email',
45
- 'mPush',
46
- 'viber',
47
- 'whatsapp',
48
- 'zalo',
49
- 'facebook',
50
- 'rcs',
51
- 'inApp',
52
- 'line',
53
- 'weChat',
54
- 'callTask',
55
- 'FTP',
56
- 'webpush',
57
- ];
58
-
59
43
  export const STATUS_OPTIONS = [
60
44
  // {
61
45
  // key: 'created',
@@ -90,31 +74,10 @@ export const RCS_MEDIA_TYPES = {
90
74
  VIDEO: 'VIDEO',
91
75
  };
92
76
 
93
- /** Match `{{}}` placeholders including Liquid-style names (e.g. `tag.FORMAT_1`). Must align with split + `isAnyTemplateVarToken` / SMS fallback. */
94
- export const rcsVarRegex = /\{\{[^}]+\}\}/g;
95
- /** True when the whole string is a single RCS/mustache token (used when testing segment tokens). */
96
- export const rcsVarTestRegex = /^\{\{[^}]+\}\}$/;
97
-
98
- /** Matches all `{{N}}` numeric-index variable tokens in a template string (global). */
99
- export const RCS_NUMERIC_VAR_TOKEN_REGEX = /\{\{(\d+)\}\}/g;
100
- /** `cardVarMapped` slot keys that are numeric only (legacy ordering). */
101
- export const RCS_NUMERIC_VAR_NAME_REGEX = /^\d+$/;
102
- /** Semantic Liquid-style keys on RCS `cardVarMapped` (same class as `{{…}}` inner names in the editor). */
103
- export const RCS_CARD_VAR_MAPPED_SEMANTIC_KEY_REGEX = /^[\w.]+$/;
104
- /** Escape `RegExp` metacharacters when building a pattern from user/tag text. */
105
- export const RCS_REGEX_META_CHARS_PATTERN = /[.*+?^${}()|[\]\\]/g;
106
- /** Entire string is a single `{{tag}}` token (value still a placeholder). */
107
- export const RCS_SINGLE_MUSTACHE_PLACEHOLDER_REGEX = /^\{\{[^}]+\}\}$/;
108
- /** Strip leading `{{` and trailing `}}` from a token. */
109
- export const RCS_STRIP_MUSTACHE_DELIMITERS_REGEX = /^\{\{|\}\}$/g;
110
-
111
- /** Tag-popover target: title vs description field (matches `onTagSelect` `field` argument). */
112
- export const RCS_TAG_AREA_FIELD_TITLE = 'title';
113
- export const RCS_TAG_AREA_FIELD_DESC = 'desc';
114
-
77
+ export const rcsVarRegex = /\{\{\w+\}\}/g;
78
+ export const rcsVarTestRegex = /\{\{\w+\}\}/;
115
79
  export const TEMPLATE_DESC_MAX_LENGTH = 2500;
116
- /** Resolved SMS fallback body cap. Must allow multi-segment DLT (>160); aligns with TRAI / `TEMPLATE_MESSAGE_MAX_LENGTH`. */
117
- export const FALLBACK_MESSAGE_MAX_LENGTH = TEMPLATE_MESSAGE_MAX_LENGTH;
80
+ export const FALLBACK_MESSAGE_MAX_LENGTH = 160;
118
81
  export const TEMPLATE_TITLE_MAX_LENGTH = 200;
119
82
  export const TEMPLATE_BUTTON_TEXT_MAX_LENGTH = 25;
120
83
  export const CTA = 'CTA';