@capillarytech/creatives-library 8.0.128 → 8.0.129-alpha.5
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/config/app.js +1 -1
- package/containers/Templates/index.js +83 -44
- package/package.json +1 -1
- package/services/api.js +8 -6
- package/services/tests/haptic-api.test.js +387 -0
- package/utils/tests/vendorDataTransformers.test.js +512 -0
- package/utils/vendorDataTransformers.js +108 -0
- package/v2Components/CapDocumentUpload/index.js +2 -2
- package/v2Components/CapImageUpload/index.js +2 -2
- package/v2Components/CapVideoUpload/index.js +48 -47
- package/v2Containers/Templates/index.js +6 -4
- package/v2Containers/Viber/index.js +1 -1
- package/v2Containers/Whatsapp/constants.js +32 -0
- package/v2Containers/Whatsapp/index.js +104 -25
- package/v2Containers/Whatsapp/tests/haptic.test.js +405 -0
package/config/app.js
CHANGED
|
@@ -20,7 +20,7 @@ const config = {
|
|
|
20
20
|
accountConfig: (strs, accountId) => `${window.location.origin}/org/config/AccountAdd?q=a&channelId=2&accountId=${accountId}&edit=1`,
|
|
21
21
|
},
|
|
22
22
|
development: {
|
|
23
|
-
api_endpoint: '
|
|
23
|
+
api_endpoint: 'http://localhost:2022/arya/api/v1/creatives',
|
|
24
24
|
campaigns_api_endpoint: 'https://crm-nightly-new.cc.capillarytech.com/iris/v2/campaigns',
|
|
25
25
|
campaigns_api_org_endpoint: 'https://crm-nightly-new.cc.capillarytech.com/iris/v2/org/campaign',
|
|
26
26
|
auth_endpoint: 'https://crm-nightly-new.cc.capillarytech.com/arya/api/v1/auth',
|
|
@@ -112,7 +112,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
112
112
|
componentWillMount() {
|
|
113
113
|
if (this.state.channel === '') {
|
|
114
114
|
let channel = '';
|
|
115
|
-
|
|
115
|
+
|
|
116
116
|
switch (this.props.route.name.toLowerCase()) {
|
|
117
117
|
case "sms":
|
|
118
118
|
channel = 'Sms';
|
|
@@ -134,6 +134,10 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
134
134
|
case "line":
|
|
135
135
|
channel = "Line";
|
|
136
136
|
break;
|
|
137
|
+
case "whatsapp":
|
|
138
|
+
channel = "whatsapp";
|
|
139
|
+
this.props.actions.getWeCrmAccounts();
|
|
140
|
+
break;
|
|
137
141
|
default:
|
|
138
142
|
channel = '';
|
|
139
143
|
}
|
|
@@ -146,7 +150,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
146
150
|
if (this.props.location.query.type === 'embedded' && this.isEnabledInLibraryModule("setLocale")) {
|
|
147
151
|
this.setLocale();
|
|
148
152
|
}
|
|
149
|
-
if (this.state.channel.toLowerCase() === 'line' || this.state.channel.toLowerCase() === 'sms' || this.state.channel.toLowerCase() === 'email' || this.state.channel.toLowerCase() === 'ebill' || ((this.state.channel.toLowerCase() === 'wechat' || this.state.channel.toLowerCase() === 'mobilepush') && !_.isEmpty(this.props.Templates.selectedWeChatAccount))) {
|
|
153
|
+
if (this.state.channel.toLowerCase() === 'line' || this.state.channel.toLowerCase() === 'sms' || this.state.channel.toLowerCase() === 'email' || this.state.channel.toLowerCase() === 'ebill' || ((this.state.channel.toLowerCase() === 'wechat' || this.state.channel.toLowerCase() === 'mobilepush' || this.state.channel.toLowerCase() === 'whatsapp') && !_.isEmpty(this.props.Templates.selectedWeChatAccount))) {
|
|
150
154
|
const queryParams = {
|
|
151
155
|
// name: this.state.searchText,
|
|
152
156
|
// sortBy: this.state.sortBy,
|
|
@@ -156,6 +160,13 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
156
160
|
queryParams.wecrmToken = this.props.Templates.selectedWeChatAccount.configs.wecrm_token;
|
|
157
161
|
queryParams.originalId = this.props.Templates.selectedWeChatAccount.sourceAccountIdentifier;
|
|
158
162
|
}
|
|
163
|
+
if (this.state.channel.toLowerCase() === 'whatsapp' && !_.isEmpty(this.props.Templates.selectedWeChatAccount)) {
|
|
164
|
+
const { configs = {}, sourceAccountIdentifier = '' } = this.props.Templates.selectedWeChatAccount;
|
|
165
|
+
queryParams.hostName = this.props.Templates.selectedWeChatAccount.hostName;
|
|
166
|
+
queryParams.wabaId = sourceAccountIdentifier;
|
|
167
|
+
queryParams.accessToken = configs.accessToken;
|
|
168
|
+
queryParams.phoneId = configs.promotionalMessagingSSID;
|
|
169
|
+
}
|
|
159
170
|
if (this.state.channel.toLowerCase() === "mobilepush" && !_.isEmpty(this.props.Templates.selectedWeChatAccount)) {
|
|
160
171
|
queryParams.accountId = this.props.Templates.selectedWeChatAccount.id;
|
|
161
172
|
}
|
|
@@ -168,11 +179,11 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
168
179
|
// this.props.actions.getEdmDefaultTemplates();
|
|
169
180
|
// }
|
|
170
181
|
}
|
|
171
|
-
|
|
182
|
+
|
|
172
183
|
window.addEventListener("message", this.handleFrameTasks);
|
|
173
184
|
}
|
|
174
185
|
componentWillReceiveProps(nextProps) {
|
|
175
|
-
|
|
186
|
+
|
|
176
187
|
const params = {
|
|
177
188
|
name: this.state.searchText,
|
|
178
189
|
sortBy: this.state.sortBy,
|
|
@@ -202,14 +213,21 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
202
213
|
} else if (nextProps.route.name.toLowerCase() === 'line') {
|
|
203
214
|
channel = 'Line';
|
|
204
215
|
}
|
|
205
|
-
//
|
|
216
|
+
//
|
|
206
217
|
this.setState({ channel }, () => {
|
|
207
|
-
if (this.state.channel.toLowerCase() === 'line' || this.state.channel.toLowerCase() === 'sms' || this.state.channel.toLowerCase() === 'email' || this.state.channel.toLowerCase() === 'ebill' || (this.state.channel.toLowerCase() === 'wechat' && !_.isEmpty(nextProps.Templates.selectedWeChatAccount))) {
|
|
218
|
+
if (this.state.channel.toLowerCase() === 'line' || this.state.channel.toLowerCase() === 'sms' || this.state.channel.toLowerCase() === 'email' || this.state.channel.toLowerCase() === 'ebill' || (this.state.channel.toLowerCase() === 'wechat' && !_.isEmpty(nextProps.Templates.selectedWeChatAccount)) || (this.state.channel.toLowerCase() === 'whatsapp' && !_.isEmpty(nextProps.Templates.selectedWeChatAccount))) {
|
|
208
219
|
if (this.state.channel.toLowerCase() === 'wechat' && !_.isEmpty(nextProps.Templates.selectedWeChatAccount)) {
|
|
209
220
|
params.wecrmId = (nextProps.Templates.selectedWeChatAccount.configs || {}).wecrm_app_id;
|
|
210
221
|
params.wecrmToken = (nextProps.Templates.selectedWeChatAccount.configs || {}).wecrm_token;
|
|
211
222
|
params.originalId = nextProps.Templates.selectedWeChatAccount.sourceAccountIdentifier;
|
|
212
223
|
}
|
|
224
|
+
if (this.state.channel.toLowerCase() === 'whatsapp' && !_.isEmpty(nextProps.Templates.selectedWeChatAccount)) {
|
|
225
|
+
const { configs = {}, sourceAccountIdentifier = '' } = nextProps.Templates.selectedWeChatAccount;
|
|
226
|
+
params.hostName = nextProps.Templates.selectedWeChatAccount.hostName;
|
|
227
|
+
params.wabaId = sourceAccountIdentifier;
|
|
228
|
+
params.accessToken = configs.accessToken;
|
|
229
|
+
params.phoneId = configs.promotionalMessagingSSID;
|
|
230
|
+
}
|
|
213
231
|
if (this.state.channel.toLowerCase() === "mobilepush" && !_.isEmpty(nextProps.Templates.selectedWeChatAccount)) {
|
|
214
232
|
params.accountId = nextProps.Templates.selectedWeChatAccount.id;
|
|
215
233
|
}
|
|
@@ -314,14 +332,14 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
314
332
|
}
|
|
315
333
|
if (!nextProps.Templates.deleteTemplateInProgress && !_.isEqual(nextProps.Templates.deleteTemplateInProgress, this.props.Templates.deleteTemplateInProgress) &&
|
|
316
334
|
nextProps.Templates.deleteResponse) {
|
|
317
|
-
|
|
335
|
+
|
|
318
336
|
const message = getMessageObject('success', `${this.state.channel.toUpperCase()} ${this.props.intl.formatMessage(messages['Template deleted successfully'])}`, true);
|
|
319
337
|
nextProps.globalActions.addMessageToQueue(message);
|
|
320
338
|
this.getAllTemplates({params, resetPage: true});
|
|
321
339
|
}
|
|
322
340
|
|
|
323
341
|
if (!nextProps.Templates.sendingFile && !_.isEqual(this.props.Templates.sendingFile, nextProps.Templates.sendingFile) && !nextProps.Templates.errorSendingFile) {
|
|
324
|
-
|
|
342
|
+
|
|
325
343
|
const module = this.props.location.query.module ? this.props.location.query.module : 'default';
|
|
326
344
|
const isLanguageSupport = (this.props.location.query.isLanguageSupport) ? this.props.location.query.isLanguageSupport : true;
|
|
327
345
|
const isEdmSupport = (this.props.location.query.isEdmSupport !== "false") || false;
|
|
@@ -369,14 +387,14 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
369
387
|
}
|
|
370
388
|
|
|
371
389
|
componentWillUnmount() {
|
|
372
|
-
|
|
390
|
+
|
|
373
391
|
window.removeEventListener("message", this.handleFrameTasks);
|
|
374
392
|
this.props.actions.resetTemplateStoreData();
|
|
375
393
|
// this.setState({defaultAccount: false});
|
|
376
394
|
}
|
|
377
395
|
|
|
378
396
|
onAccountSelect(value, option) {
|
|
379
|
-
|
|
397
|
+
|
|
380
398
|
this.setState({selectedAccount: value}, () => {
|
|
381
399
|
const params = {
|
|
382
400
|
name: this.state.searchText,
|
|
@@ -391,7 +409,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
391
409
|
this.props.actions.setWeChatAccount(this.props.Templates.weCrmAccounts[_.findIndex(this.props.Templates.weCrmAccounts, { name: value})]);
|
|
392
410
|
params.accountId = this.props.Templates.weCrmAccounts[_.findIndex(this.props.Templates.weCrmAccounts, { name: value})].id;
|
|
393
411
|
}
|
|
394
|
-
|
|
412
|
+
|
|
395
413
|
this.getAllTemplates({params, resetPage: true});
|
|
396
414
|
});
|
|
397
415
|
}
|
|
@@ -404,7 +422,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
404
422
|
}
|
|
405
423
|
locale = this.getMappedLocale(locale);
|
|
406
424
|
//locale = 'zh';
|
|
407
|
-
|
|
425
|
+
|
|
408
426
|
moment.locale(locale);
|
|
409
427
|
};
|
|
410
428
|
|
|
@@ -419,7 +437,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
419
437
|
getAllTemplates = ({params, getNextPage, resetPage}, resetTemplates) => {
|
|
420
438
|
let queryParams = params;
|
|
421
439
|
let page = this.state.page;
|
|
422
|
-
|
|
440
|
+
|
|
423
441
|
if (resetTemplates) {
|
|
424
442
|
queryParams.name = this.state.searchText;
|
|
425
443
|
queryParams.sortBy = this.state.sortBy;
|
|
@@ -446,6 +464,13 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
446
464
|
queryParams.wecrmToken = this.props.Templates.selectedWeChatAccount.configs.wecrm_token;
|
|
447
465
|
queryParams.originalId = this.props.Templates.selectedWeChatAccount.sourceAccountIdentifier;
|
|
448
466
|
}
|
|
467
|
+
if (this.state.channel.toLowerCase() === 'whatsapp' && !_.isEmpty(this.props.Templates.selectedWeChatAccount)) {
|
|
468
|
+
const { configs = {}, sourceAccountIdentifier = '' } = this.props.Templates.selectedWeChatAccount;
|
|
469
|
+
queryParams.hostName = this.props.Templates.selectedWeChatAccount.hostName;
|
|
470
|
+
queryParams.wabaId = sourceAccountIdentifier;
|
|
471
|
+
queryParams.accessToken = configs.accessToken;
|
|
472
|
+
queryParams.phoneId = configs.promotionalMessagingSSID;
|
|
473
|
+
}
|
|
449
474
|
if (this.state.channel.toLowerCase() === "mobilepush" && !_.isEmpty(this.props.Templates.selectedWeChatAccount)) {
|
|
450
475
|
queryParams.accountId = this.props.Templates.selectedWeChatAccount.id;
|
|
451
476
|
if (this.state.mode) {
|
|
@@ -463,7 +488,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
463
488
|
};
|
|
464
489
|
|
|
465
490
|
getCurrentWindow(e) {
|
|
466
|
-
|
|
491
|
+
|
|
467
492
|
const response = {
|
|
468
493
|
action: e.action,
|
|
469
494
|
value: 'templates',
|
|
@@ -471,9 +496,9 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
471
496
|
};
|
|
472
497
|
parent.postMessage(JSON.stringify(response), '*');
|
|
473
498
|
}
|
|
474
|
-
|
|
499
|
+
|
|
475
500
|
skipTemplateSelection = (e) => {
|
|
476
|
-
|
|
501
|
+
|
|
477
502
|
const type = this.props.location.query.type;
|
|
478
503
|
const module = (type === 'embedded') ? this.props.location.query.module : 'default';
|
|
479
504
|
if (this.state.channel.toLowerCase() === 'email') {
|
|
@@ -514,12 +539,12 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
514
539
|
}
|
|
515
540
|
|
|
516
541
|
handleMenuAction = (item = {}, key) => {
|
|
517
|
-
|
|
542
|
+
|
|
518
543
|
if ((item.key || '').toLowerCase() === 'uploadfile') {
|
|
519
544
|
document.getElementById('filename').click();
|
|
520
|
-
|
|
545
|
+
|
|
521
546
|
} else if ((item.key || '').toLowerCase() === 'useeditor') {
|
|
522
|
-
|
|
547
|
+
|
|
523
548
|
this.toggleEdmEmailTemplateSelection();
|
|
524
549
|
}
|
|
525
550
|
};
|
|
@@ -688,17 +713,17 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
688
713
|
return result;
|
|
689
714
|
}
|
|
690
715
|
startLoading(ifEdit) {
|
|
691
|
-
|
|
716
|
+
|
|
692
717
|
if (ifEdit) {
|
|
693
718
|
this.setState({loading: true});
|
|
694
719
|
}
|
|
695
720
|
}
|
|
696
721
|
|
|
697
722
|
startTemplateCreation(data) {
|
|
698
|
-
|
|
723
|
+
|
|
699
724
|
if (data.edit) {
|
|
700
725
|
const ifUnicode = checkUnicode(data.content);
|
|
701
|
-
|
|
726
|
+
|
|
702
727
|
const content = data.content;
|
|
703
728
|
const tempData = {
|
|
704
729
|
'sms-editor': content,
|
|
@@ -713,10 +738,10 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
713
738
|
}
|
|
714
739
|
|
|
715
740
|
handleFrameTasks = (e) => {
|
|
716
|
-
|
|
741
|
+
|
|
717
742
|
const type = e.data;
|
|
718
743
|
if (typeof type === 'object') {
|
|
719
|
-
|
|
744
|
+
|
|
720
745
|
const action = type.action;
|
|
721
746
|
switch (action) {
|
|
722
747
|
case "startTemplateCreation":
|
|
@@ -737,11 +762,11 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
737
762
|
}
|
|
738
763
|
switch (type) {
|
|
739
764
|
case "startTemplateCreation":
|
|
740
|
-
|
|
765
|
+
|
|
741
766
|
//this.getFormData(e);
|
|
742
767
|
break;
|
|
743
768
|
case "validateContent":
|
|
744
|
-
|
|
769
|
+
|
|
745
770
|
this.validateContent(e);
|
|
746
771
|
break;
|
|
747
772
|
default:
|
|
@@ -801,7 +826,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
801
826
|
}
|
|
802
827
|
|
|
803
828
|
searchTemplate(data) {
|
|
804
|
-
|
|
829
|
+
|
|
805
830
|
this.setState({searchText: data}, () => {
|
|
806
831
|
const params = {
|
|
807
832
|
name: this.state.searchText,
|
|
@@ -812,6 +837,13 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
812
837
|
params.wecrmToken = this.props.Templates.selectedWeChatAccount.configs.wecrm_token;
|
|
813
838
|
params.originalId = this.props.Templates.selectedWeChatAccount.sourceAccountIdentifier;
|
|
814
839
|
}
|
|
840
|
+
if (this.state.channel.toLowerCase() === 'whatsapp') {
|
|
841
|
+
const { configs = {}, sourceAccountIdentifier = '' } = this.props.Templates.selectedWeChatAccount;
|
|
842
|
+
params.hostName = this.props.Templates.selectedWeChatAccount.hostName;
|
|
843
|
+
params.wabaId = sourceAccountIdentifier;
|
|
844
|
+
params.accessToken = configs.accessToken;
|
|
845
|
+
params.phoneId = configs.promotionalMessagingSSID;
|
|
846
|
+
}
|
|
815
847
|
if (this.state.channel.toLowerCase() === "mobilepush") {
|
|
816
848
|
params.accountId = this.props.Templates.selectedWeChatAccount.id;
|
|
817
849
|
}
|
|
@@ -830,6 +862,13 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
830
862
|
params.wecrmToken = this.props.Templates.selectedWeChatAccount.configs.wecrm_token;
|
|
831
863
|
params.originalId = this.props.Templates.selectedWeChatAccount.sourceAccountIdentifier;
|
|
832
864
|
}
|
|
865
|
+
if (this.state.channel.toLowerCase() === 'whatsapp') {
|
|
866
|
+
const { configs = {}, sourceAccountIdentifier = '' } = this.props.Templates.selectedWeChatAccount;
|
|
867
|
+
params.hostName = this.props.Templates.selectedWeChatAccount.hostName;
|
|
868
|
+
params.wabaId = sourceAccountIdentifier;
|
|
869
|
+
params.accessToken = configs.accessToken;
|
|
870
|
+
params.phoneId = configs.promotionalMessagingSSID;
|
|
871
|
+
}
|
|
833
872
|
if (this.state.channel.toLowerCase() === "mobilepush") {
|
|
834
873
|
params.accountId = this.props.Templates.selectedWeChatAccount.id;
|
|
835
874
|
}
|
|
@@ -855,14 +894,14 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
855
894
|
if (this.state.channel.toLowerCase() === 'ebill' || this.state.channel.toLowerCase() === 'email') {
|
|
856
895
|
this.toggleEmailPreview();
|
|
857
896
|
} else {
|
|
858
|
-
|
|
897
|
+
|
|
859
898
|
this.setState( (prevState) => ({
|
|
860
899
|
previewOpen: !prevState.previewOpen}));
|
|
861
900
|
}
|
|
862
901
|
}
|
|
863
902
|
|
|
864
903
|
toggleEdmEmailTemplateSelection = () => {
|
|
865
|
-
|
|
904
|
+
|
|
866
905
|
this.setState( (prevState) => ({
|
|
867
906
|
showEdmEmailTemplates: !prevState.showEdmEmailTemplates}), () => {
|
|
868
907
|
this.props.actions.getEdmDefaultTemplates();
|
|
@@ -870,13 +909,13 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
870
909
|
};
|
|
871
910
|
|
|
872
911
|
deleteTemplate(template) {
|
|
873
|
-
|
|
912
|
+
|
|
874
913
|
this.props.actions.deleteTemplate(this.state.channel.toUpperCase(), template._id);
|
|
875
914
|
this.setState({actionTemplate: {}});
|
|
876
915
|
}
|
|
877
916
|
|
|
878
917
|
duplicateTemplate(template) {
|
|
879
|
-
|
|
918
|
+
|
|
880
919
|
const duplicateObj = _.cloneDeep(template);
|
|
881
920
|
duplicateObj.name = `${this.props.intl.formatMessage(messages.copyOf)} ${template.name} ${moment().format('MM-DD-YYYY HH:mm:ss')}`;
|
|
882
921
|
delete duplicateObj._id;
|
|
@@ -901,7 +940,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
901
940
|
}
|
|
902
941
|
|
|
903
942
|
handleOnHoverItem(isHovering, id) {
|
|
904
|
-
|
|
943
|
+
|
|
905
944
|
if (isHovering) {
|
|
906
945
|
this.setState({hoveredItem: id});
|
|
907
946
|
} else {
|
|
@@ -910,7 +949,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
910
949
|
}
|
|
911
950
|
|
|
912
951
|
handleOnItemClick(isClicked, id) {
|
|
913
|
-
|
|
952
|
+
|
|
914
953
|
this.setState({clickedItem: id});
|
|
915
954
|
}
|
|
916
955
|
|
|
@@ -923,7 +962,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
923
962
|
const isLanguageSupport = this.props?.location?.query?.isLanguageSupport === TRUE;
|
|
924
963
|
const isEdmSupport = this.props?.location?.query?.isEdmSupport !== FALSE;
|
|
925
964
|
let getQuery = '';
|
|
926
|
-
|
|
965
|
+
|
|
927
966
|
if (template) {
|
|
928
967
|
this.props.actions.setEdmTemplate({
|
|
929
968
|
...template,
|
|
@@ -934,7 +973,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
934
973
|
|
|
935
974
|
if (this.state.channel && this.state.channel.toLowerCase() === EMAIL) {
|
|
936
975
|
getQuery = (type === TYPE_EMBEDDED) ? {
|
|
937
|
-
type: TYPE_EMBEDDED,
|
|
976
|
+
type: TYPE_EMBEDDED,
|
|
938
977
|
module,
|
|
939
978
|
isLanguageSupport: isLanguageSupport ? 1 : 0,
|
|
940
979
|
isEdmSupport: isEdmSupport ? 1 : 0,
|
|
@@ -963,7 +1002,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
963
1002
|
};
|
|
964
1003
|
|
|
965
1004
|
handleEditClick(e, id, modeType, path) {
|
|
966
|
-
|
|
1005
|
+
|
|
967
1006
|
if (modeType && modeType !== undefined) {
|
|
968
1007
|
this.setState({modeType});
|
|
969
1008
|
}
|
|
@@ -973,9 +1012,9 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
973
1012
|
const isEdmSupport = (this.props.location.query.isEdmSupport !== "false") || false;
|
|
974
1013
|
let getQuery = "";
|
|
975
1014
|
let pathName = path;
|
|
976
|
-
|
|
1015
|
+
|
|
977
1016
|
e.stopPropagation();
|
|
978
|
-
|
|
1017
|
+
|
|
979
1018
|
this.props.actions.resetTemplateData();
|
|
980
1019
|
if (this.state.channel.toLowerCase() === 'sms') {
|
|
981
1020
|
pathName = `/sms/edit/${id}`;
|
|
@@ -1024,7 +1063,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
1024
1063
|
templateInfo.content = template.versions.base;
|
|
1025
1064
|
templateInfo.appName = this.props.Templates.selectedWeChatAccount.name;
|
|
1026
1065
|
} else if (this.state.channel.toLowerCase() === "email") {
|
|
1027
|
-
|
|
1066
|
+
|
|
1028
1067
|
this.props.actions.getTemplateDetails(template._id, EMAIL);
|
|
1029
1068
|
} else if (this.state.channel.toLowerCase() === 'ebill') {
|
|
1030
1069
|
this.props.actions.getTemplateDetails(template._id);
|
|
@@ -1115,9 +1154,9 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
1115
1154
|
});
|
|
1116
1155
|
}*/
|
|
1117
1156
|
data.map( (template = {}) => {
|
|
1118
|
-
//
|
|
1157
|
+
//
|
|
1119
1158
|
const temp = {};
|
|
1120
|
-
//
|
|
1159
|
+
//
|
|
1121
1160
|
const updateDateTime = (moment().format('DD-MM-YYYY') === moment(template.updatedAt).format('DD-MM-YYYY')) ? moment(template.updatedAt).format('hh:mma') : moment(template.updatedAt).format('DD MMM YYYY');
|
|
1122
1161
|
let content = '';
|
|
1123
1162
|
temp.id = template._id;
|
|
@@ -1143,8 +1182,8 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
1143
1182
|
);
|
|
1144
1183
|
}
|
|
1145
1184
|
} else if (this.state.channel.toLowerCase() === 'email' || this.state.channel.toLowerCase() === 'ebill') {
|
|
1146
|
-
//
|
|
1147
|
-
|
|
1185
|
+
//
|
|
1186
|
+
|
|
1148
1187
|
const imgSrc = template && template.versions && template.versions.base ? template.versions.base.preview_http_url : '';
|
|
1149
1188
|
const ifPreviewGenerated = template && template.versions && template.versions.base ? template.versions.base.isPreviewGenerated : 0;
|
|
1150
1189
|
content = <img src={imgSrc || ''} alt={this.props.intl.formatMessage(messages.previewGenerateText)} width="100%" height="100%"/>;
|
|
@@ -1753,4 +1792,4 @@ export default compose(
|
|
|
1753
1792
|
withMPushCreateReducer,
|
|
1754
1793
|
withLineCreateReducer,
|
|
1755
1794
|
withConnect,
|
|
1756
|
-
)(injectIntl(Templates));
|
|
1795
|
+
)(injectIntl(Templates));
|
package/package.json
CHANGED
package/services/api.js
CHANGED
|
@@ -381,10 +381,12 @@ export const uploadFile = ({
|
|
|
381
381
|
data.append('appSecret', wechatParams.appSecret);
|
|
382
382
|
}
|
|
383
383
|
if (whatsappParams) {
|
|
384
|
-
|
|
385
|
-
data.append('
|
|
386
|
-
data.append('
|
|
387
|
-
data.append('
|
|
384
|
+
const { source, wabaId, accessToken, access_token, phoneId, hostName } = whatsappParams;
|
|
385
|
+
data.append('source', source);
|
|
386
|
+
data.append('wabaId', wabaId);
|
|
387
|
+
data.append('accessToken', accessToken || access_token);
|
|
388
|
+
data.append('phoneId', phoneId);
|
|
389
|
+
data.append('hostName', hostName);
|
|
388
390
|
}
|
|
389
391
|
const url = `${API_ENDPOINT}/assets/${assetType}`;
|
|
390
392
|
// return API.post(url, data, true);
|
|
@@ -400,7 +402,7 @@ export const fetchSchemaForEntity = async ({queryParams}) => {
|
|
|
400
402
|
if (queryParams.version === "v2" && queryParams.type === "LAYOUT") {
|
|
401
403
|
const schema = getSchema(queryParams.layout);
|
|
402
404
|
// Added async/await to ensure the schema object is resolved before returning it
|
|
403
|
-
return
|
|
405
|
+
return schema.then((layout) => layout).catch((err) => {
|
|
404
406
|
console.error(err);
|
|
405
407
|
});
|
|
406
408
|
}
|
|
@@ -617,7 +619,7 @@ export const getSupportVideosConfig = () => {
|
|
|
617
619
|
|
|
618
620
|
export const getNavigationConfigApi = async () => {
|
|
619
621
|
const url = `${ARYA_ENDPOINT}/navigations`;
|
|
620
|
-
return
|
|
622
|
+
return request(url, getAPICallObject('GET'));
|
|
621
623
|
};
|
|
622
624
|
|
|
623
625
|
export const getLiquidTags = (content) => {
|