@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
@@ -98,20 +98,6 @@ export default defineMessages({
98
98
  id: `${scope}.personalizationTags`,
99
99
  defaultMessage: 'Personalization Tags',
100
100
  },
101
- rcsTagsSectionTitle: {
102
- id: `${scope}.rcsTagsSectionTitle`,
103
- defaultMessage: 'RCS Tags',
104
- },
105
- /** Primary SMS section when channel is SMS — `messages[`${channel}TagsSectionTitle`]` resolves to this. */
106
- SMSTagsSectionTitle: {
107
- id: `${scope}.SMSTagsSectionTitle`,
108
- defaultMessage: 'SMS tags',
109
- },
110
- /** Fallback SMS under RCS — same label as SMS Test & Preview for consistent personalization UX. */
111
- smsFallbackTagsSectionTitle: {
112
- id: `${scope}.smsFallbackTagsSectionTitle`,
113
- defaultMessage: 'SMS tags',
114
- },
115
101
  customValues: {
116
102
  id: `${scope}.customValues`,
117
103
  defaultMessage: 'Custom Values',
@@ -152,14 +138,6 @@ export default defineMessages({
152
138
  id: `${scope}.discardCustomValues`,
153
139
  defaultMessage: 'Discard custom values',
154
140
  },
155
- rcsSenderIdLabel: {
156
- id: `${scope}.rcsSenderIdLabel`,
157
- defaultMessage: 'RCS Sender ID',
158
- },
159
- fallbackSmsSenderIdLabel: {
160
- id: `${scope}.fallbackSmsSenderIdLabel`,
161
- defaultMessage: 'Fallback SMS Sender ID',
162
- },
163
141
  updatePreview: {
164
142
  id: `${scope}.updatePreview`,
165
143
  defaultMessage: 'Update Preview',
@@ -216,14 +194,6 @@ export default defineMessages({
216
194
  id: `${scope}.previewTitle`,
217
195
  defaultMessage: 'Preview',
218
196
  },
219
- rcsTab: {
220
- id: `${scope}.rcsTab`,
221
- defaultMessage: 'RCS',
222
- },
223
- smsFallbackTab: {
224
- id: `${scope}.smsFallbackTab`,
225
- defaultMessage: 'Fallback SMS',
226
- },
227
197
  previewPlaceholder: {
228
198
  id: `${scope}.previewPlaceholder`,
229
199
  defaultMessage: 'Click "Update Preview" to see the rendered email.',
@@ -316,22 +286,14 @@ export default defineMessages({
316
286
  id: `${scope}.lastModified`,
317
287
  defaultMessage: 'Last modified',
318
288
  },
319
- byAuthor: {
320
- id: `${scope}.byAuthor`,
321
- defaultMessage: 'by {name}',
289
+ by: {
290
+ id: `${scope}.by`,
291
+ defaultMessage: 'by',
322
292
  },
323
293
  senderId: {
324
294
  id: `${scope}.senderId`,
325
295
  defaultMessage: 'Sender ID',
326
296
  },
327
- rcsSenderIdLabel: {
328
- id: `${scope}.rcsSenderIdLabel`,
329
- defaultMessage: 'RCS sender ID',
330
- },
331
- domainLabel: {
332
- id: `${scope}.domainLabel`,
333
- defaultMessage: 'Domain',
334
- },
335
297
  urlPreviewImage: {
336
298
  id: `${scope}.urlPreviewImage`,
337
299
  defaultMessage: 'URL Preview Image',
@@ -220,8 +220,10 @@ const previewAndTestReducer = (state = initialState, action) => {
220
220
  case ADD_TEST_CUSTOMER: {
221
221
  const raw = state.get('testCustomers');
222
222
  const list = Array.isArray(raw) ? raw : (raw && raw.toArray ? raw.toArray().map((i) => (i && i.toJS ? i.toJS() : i)) : []);
223
- const customer = action.payload.customer;
223
+ const customer = action.payload?.customer;
224
+ if (!customer) return state;
224
225
  const newId = customer.userId || customer.customerId;
226
+ if (!newId) return state;
225
227
  if (list.some((c) => (c.userId || c.customerId) === newId)) return state;
226
228
  return state.set('testCustomers', list.concat([customer]));
227
229
  }
@@ -3,7 +3,7 @@
3
3
  */
4
4
 
5
5
  import {
6
- call, put, takeLatest, takeEvery, all,
6
+ call, put, takeLatest, all,
7
7
  } from 'redux-saga/effects';
8
8
  import get from 'lodash/get';
9
9
  import isEmpty from 'lodash/isEmpty';
@@ -45,7 +45,6 @@ import {
45
45
  CHANNELS,
46
46
  } from './constants';
47
47
  import { parseSenderDetailsResponse } from './DeliverySettings/utils/parseSenderDetailsResponse';
48
- import { extractPreviewFromLiquidResponse } from './previewApiUtils';
49
48
 
50
49
  // Search Customers Saga
51
50
  export function* searchCustomersSaga(action) {
@@ -92,12 +91,11 @@ export function* updatePreviewSaga(action) {
92
91
  const customValues = action.payload.resolvedTags;
93
92
 
94
93
  const response = yield call(Api.updateEmailPreview, action.payload);
95
- const previewPayload = extractPreviewFromLiquidResponse(response);
96
- if (previewPayload) {
94
+ if (response?.data) {
97
95
  yield put({
98
96
  type: UPDATE_PREVIEW_SUCCESS,
99
97
  payload: {
100
- previewData: previewPayload,
98
+ previewData: response.data,
101
99
  customValues, // Pass custom values to be preserved
102
100
  },
103
101
  });
@@ -161,9 +159,10 @@ export function* getBulkCustomerDetails({fetchedUserIds}) {
161
159
  const emailIdentifier = profile?.identifiers?.find(
162
160
  (identifier) => identifier.type === IDENTIFIER_TYPE_EMAIL,
163
161
  );
162
+ const nameParts = [profile?.firstName, profile?.lastName].filter(Boolean);
164
163
  return {
165
164
  userId: item?.entity?.id,
166
- name: `${profile?.firstName} ${profile?.lastName}`,
165
+ name: nameParts.join(' '),
167
166
  mobile: mobileIdentifier?.value,
168
167
  email: emailIdentifier?.value,
169
168
  };
@@ -238,13 +237,8 @@ export function* createMessageMetaSaga(action) {
238
237
  export function* getPrefilledValuesSaga(action) {
239
238
  try {
240
239
  const response = yield call(Api.updateEmailPreview, action.payload);
241
- const body =
242
- response?.data !== undefined && response?.data !== null
243
- ? response.data
244
- : response;
245
- const resolvedTagValues = body?.resolvedTagValues;
246
- if (resolvedTagValues != null) {
247
- yield put({ type: GET_PREFILLED_VALUES_SUCCESS, payload: { values: resolvedTagValues } });
240
+ if (response?.data) {
241
+ yield put({ type: GET_PREFILLED_VALUES_SUCCESS, payload: { values: response?.data?.resolvedTagValues } });
248
242
  } else {
249
243
  // Pass all errors from API response to state
250
244
  yield put({
@@ -344,9 +338,7 @@ export function* getWeCrmAccountsSaga(action) {
344
338
  }
345
339
 
346
340
  export function* watchGetSenderDetails() {
347
- // takeEvery: RCS test & preview dispatches RCS then SMS back-to-back; takeLatest would
348
- // cancel the RCS fetch so senderDetailsByChannel.RCS stayed empty while SMS loaded.
349
- yield takeEvery(GET_SENDER_DETAILS_REQUESTED, getSenderDetailsSaga);
341
+ yield takeLatest(GET_SENDER_DETAILS_REQUESTED, getSenderDetailsSaga);
350
342
  }
351
343
 
352
344
  export function* watchGetWeCrmAccounts() {