@capillarytech/creatives-library 6.8.8 → 6.9.1
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/components/CapTagList/index.js +1 -1
- package/components/Edmeditor/index.js +1 -1
- package/components/FormBuilder/index.js +0 -1
- package/components/TemplatePreview/_templatePreview.scss +0 -6
- package/components/TemplatePreview/index.js +28 -35
- package/config/app.js +1 -1
- package/containers/TagList/index.js +3 -3
- package/index.html +5 -0
- package/package.json +2 -1
- package/services/api.js +16 -1
- package/v2Components/BeeEditor/index.js +278 -0
- package/v2Components/BeeEditor/index.scss +11 -0
- package/v2Components/BeeEditor/messages.js +47 -0
- package/v2Components/BeeEditor/tests/index.test.js +10 -0
- package/v2Components/CapTagList/index.js +55 -26
- package/v2Components/CmsTemplatesComponent/index.js +4 -4
- package/v2Components/Edmeditor/index.js +1 -1
- package/v2Components/EmailPreview/_emailPreview.scss +2 -2
- package/v2Components/FormBuilder/index.js +117 -43
- package/v2Components/TemplatePreview/WechatRichmediaTemplatePreview/_wechatRichmediaTemplatePrev.scss +151 -151
- package/v2Components/TemplatePreview/WechatRichmediaTemplatePreview/messages.js +33 -33
- package/v2Components/TemplatePreview/WechatRichmediaTemplatePreview/tests/index.test.js +10 -10
- package/v2Components/TemplatePreview/_templatePreview.scss +0 -1
- package/v2Components/TemplatePreview/assets/images/androidPushMessage.svg +44 -44
- package/v2Components/TemplatePreview/assets/images/home-screen-android.svg +21 -21
- package/v2Components/TemplatePreview/assets/images/home-screen-ios.svg +16 -16
- package/v2Components/TemplatePreview/assets/images/iPhonePushMessage.svg +134 -134
- package/v2Components/TemplatePreview/assets/images/mobile.svg +23 -23
- package/v2Components/TemplatePreview/assets/images/sms_mobile_android.svg +22 -22
- package/v2Components/TemplatePreview/assets/images/user-icon.svg +18 -18
- package/v2Components/TemplatePreview/assets/images/wechat-home-screen-android.svg +21 -21
- package/v2Components/TemplatePreview/assets/images/wechat-mobile.svg +77 -77
- package/v2Components/TemplatePreview/assets/images/wechat_mobile_android.svg +20 -20
- package/v2Components/TemplatePreview/index.js +29 -36
- package/v2Components/TemplatePreview/tests/index.test.js +10 -10
- package/v2Containers/CreativesContainer/SlideBoxContent.js +1 -7
- package/v2Containers/CreativesContainer/SlideBoxFooter.js +51 -51
- package/v2Containers/CreativesContainer/actions.js +27 -27
- package/v2Containers/CreativesContainer/constants.js +17 -17
- package/v2Containers/CreativesContainer/index.js +7 -2
- package/v2Containers/CreativesContainer/index.scss +44 -44
- package/v2Containers/CreativesContainer/messages.js +305 -305
- package/v2Containers/CreativesContainer/reducer.js +29 -29
- package/v2Containers/CreativesContainer/sagas.js +11 -11
- package/v2Containers/CreativesContainer/selectors.js +30 -30
- package/v2Containers/CreativesContainer/tests/actions.test.js +18 -18
- package/v2Containers/CreativesContainer/tests/index.test.js +10 -10
- package/v2Containers/CreativesContainer/tests/reducer.test.js +9 -9
- package/v2Containers/CreativesContainer/tests/sagas.test.js +15 -15
- package/v2Containers/CreativesContainer/tests/selectors.test.js +10 -10
- package/v2Containers/Email/constants.js +1 -0
- package/v2Containers/Email/index.js +210 -108
- package/v2Containers/Email/initialSchema.js +18 -3
- package/v2Containers/Email/sagas.js +2 -2
- package/v2Containers/Email/selectors.js +5 -0
- package/v2Containers/EmailWrapper/index.js +19 -3
- package/v2Containers/Line/Container/Image/index.js +19 -21
- package/v2Containers/Line/Container/ImageMap/constants.js +1 -2
- package/v2Containers/Line/Container/ImageMap/index.js +6 -31
- package/v2Containers/Line/Container/ImageMap/messages.js +0 -12
- package/v2Containers/Line/Container/Wrapper/index.js +1 -5
- package/v2Containers/Line/Container/Wrapper/messages.js +0 -4
- package/v2Containers/Line/Container/Wrapper/utils.js +16 -15
- package/v2Containers/Line/Container/_lineCreate.scss +2 -2
- package/v2Containers/Line/Container/actions.js +2 -4
- package/v2Containers/Line/Container/constants.js +0 -3
- package/v2Containers/Line/Container/index.js +11 -49
- package/v2Containers/Line/Container/reducer.js +2 -2
- package/v2Containers/Line/Container/sagas.js +2 -2
- package/v2Containers/Line/Container/style.js +1 -2
- package/v2Containers/TagList/index.js +6 -0
- package/v2Containers/Templates/_templates.scss +0 -9
- package/v2Containers/Templates/actions.js +122 -117
- package/v2Containers/Templates/constants.js +49 -47
- package/v2Containers/Templates/index.js +34 -42
- package/v2Containers/Templates/messages.js +8 -4
- package/v2Containers/Templates/reducer.js +153 -145
- package/v2Containers/Templates/sagas.js +179 -179
- package/v2Containers/Templates/selectors.js +19 -1
- package/v2Containers/Templates/tests/actions.test.js +18 -18
- package/v2Containers/Templates/tests/index.test.js +10 -10
- package/v2Containers/Templates/tests/reducer.test.js +9 -9
- package/v2Containers/Templates/tests/sagas.test.js +15 -15
- package/v2Containers/Templates/tests/selectors.test.js +10 -10
- package/v2Containers/TemplatesV2/TemplatesV2.style.js +29 -29
- package/v2Containers/TemplatesV2/actions.js +16 -16
- package/v2Containers/TemplatesV2/constants.js +10 -10
- package/v2Containers/TemplatesV2/messages.js +61 -61
- package/v2Containers/TemplatesV2/selectors.js +25 -25
- package/v2Containers/TemplatesV2/tests/actions.test.js +18 -18
- package/v2Containers/TemplatesV2/tests/index.test.js +10 -10
- package/v2Containers/TemplatesV2/tests/reducer.test.js +9 -9
- package/v2Containers/TemplatesV2/tests/sagas.test.js +15 -15
- package/v2Containers/TemplatesV2/tests/selectors.test.js +10 -10
- package/v2Components/Carousel/index.js +0 -120
- package/v2Components/Carousel/style.scss +0 -40
- package/v2Containers/Line/Container/ImageCarousel/Content.js +0 -554
- package/v2Containers/Line/Container/ImageCarousel/constants.js +0 -10
- package/v2Containers/Line/Container/ImageCarousel/index.js +0 -526
- package/v2Containers/Line/Container/ImageCarousel/messages.js +0 -178
- package/v2Containers/Line/Container/ImageCarousel/style.js +0 -61
|
@@ -42,14 +42,14 @@ function createReducer(state = initialState, action) {
|
|
|
42
42
|
return state
|
|
43
43
|
.set('uploadAssetSuccess', (action.statusCode !== undefined && action.statusCode !== '' && action.statusCode < 300))
|
|
44
44
|
.set('assetUploading', false)
|
|
45
|
-
.set(
|
|
45
|
+
.set('uploadedAssetData', action.data);
|
|
46
46
|
case types.UPLOAD_ASSET_FAILURE:
|
|
47
47
|
return state
|
|
48
48
|
.set('uploadAssetSuccess', false)
|
|
49
49
|
.set('assetUploading', false);
|
|
50
50
|
case types.CLEAR_ASSET:
|
|
51
51
|
return state
|
|
52
|
-
.delete(
|
|
52
|
+
.delete('uploadedAssetData');
|
|
53
53
|
// FOR EDIT
|
|
54
54
|
case types.EDIT_TEMPLATE_REQUEST:
|
|
55
55
|
return state
|
|
@@ -21,10 +21,10 @@ export function* createTemplate({ template, callback }) {
|
|
|
21
21
|
yield put({ type: types.CREATE_TEMPLATE_FAILURE, error, errorMsg });
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
|
-
export function* uploadAsset(file, assetType, fileParams
|
|
24
|
+
export function* uploadAsset(file, assetType, fileParams) {
|
|
25
25
|
try {
|
|
26
26
|
const result = yield call(Api.uploadFile, file, assetType, fileParams);
|
|
27
|
-
yield put({ type: types.UPLOAD_ASSET_SUCCESS, data: result.response.asset, statusCode: result.status ? result.status.code : ''
|
|
27
|
+
yield put({ type: types.UPLOAD_ASSET_SUCCESS, data: result.response.asset, statusCode: result.status ? result.status.code : '' });
|
|
28
28
|
} catch (error) {
|
|
29
29
|
yield put({ type: types.UPLOAD_ASSET_FAILURE, error });
|
|
30
30
|
}
|
|
@@ -242,8 +242,11 @@ export class TagList extends React.Component { // eslint-disable-line react/pref
|
|
|
242
242
|
tags={tags}
|
|
243
243
|
onSelect={this.onSelect}
|
|
244
244
|
label={this.props.label}
|
|
245
|
+
visibleTaglist={this.props.visibleTaglist}
|
|
246
|
+
hidePopover={this.props.hidePopover}
|
|
245
247
|
onContextChange={this.getTagsforContext}
|
|
246
248
|
moduleFilterEnabled={this.props.moduleFilterEnabled}
|
|
249
|
+
modalProps={this.props.modalProps}
|
|
247
250
|
/>
|
|
248
251
|
</div>
|
|
249
252
|
);
|
|
@@ -265,6 +268,9 @@ TagList.propTypes = {
|
|
|
265
268
|
className: PropTypes.string,
|
|
266
269
|
userLocale: PropTypes.string,
|
|
267
270
|
selectedOfferDetails: PropTypes.array,
|
|
271
|
+
visibleTaglist: PropTypes.bool,
|
|
272
|
+
hidePopover: PropTypes.bool,
|
|
273
|
+
modalProps: PropTypes.any,
|
|
268
274
|
};
|
|
269
275
|
|
|
270
276
|
const mapStateToProps = createStructuredSelector({
|
|
@@ -1,117 +1,122 @@
|
|
|
1
|
-
/*
|
|
2
|
-
*
|
|
3
|
-
* Templates actions
|
|
4
|
-
*
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
import * as types from './constants';
|
|
8
|
-
|
|
9
|
-
export function getAllTemplates(channel, queryParams) {
|
|
10
|
-
console.log('get all templates action trigereed', channel, queryParams);
|
|
11
|
-
return {
|
|
12
|
-
type: types.GET_ALL_TEMPLATES_REQUEST, channel, queryParams,
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export function resetTemplate() {
|
|
17
|
-
return {
|
|
18
|
-
type: types.RESET_TEMPLATE,
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export function resetAccount() {
|
|
23
|
-
return {
|
|
24
|
-
type: types.RESET_ACCOUNT,
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export function deleteTemplate(channel, id) {
|
|
29
|
-
console.log('delete template action trigereed', channel, id);
|
|
30
|
-
return {
|
|
31
|
-
type: types.DELETE_TEMPLATE_REQUEST, channel, id,
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
export function getUserList() {
|
|
36
|
-
return {
|
|
37
|
-
type: types.GET_USER_LIST_REQUEST,
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
export function getWeCrmAccounts(source) {
|
|
42
|
-
return {
|
|
43
|
-
type: types.GET_WECRM_ACCOUNTS_REQUEST, source,
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
export function setWeChatAccount(weChatAccount) {
|
|
48
|
-
console.log('setting wechat account', weChatAccount);
|
|
49
|
-
return {
|
|
50
|
-
type: types.SET_WECHAT_ACCOUNT,
|
|
51
|
-
weChatAccount,
|
|
52
|
-
};
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
export function setLineAccount(lineAccount) {
|
|
56
|
-
return {
|
|
57
|
-
type: types.SET_LINE_ACCOUNT,
|
|
58
|
-
lineAccount,
|
|
59
|
-
};
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
export function handleHtmlUpload(selectedTemplate) {
|
|
63
|
-
return {
|
|
64
|
-
type: types.SET_SELECTED_LAYOUT,
|
|
65
|
-
selectedTemplate,
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
export function handleZipUpload(selectedFile, successHandler, errorHandler) {
|
|
70
|
-
return {
|
|
71
|
-
type: types.SEND_ZIPPED_FILE_REQUEST,
|
|
72
|
-
selectedFile,
|
|
73
|
-
successHandler,
|
|
74
|
-
errorHandler,
|
|
75
|
-
};
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
export function
|
|
79
|
-
return {
|
|
80
|
-
type: types.
|
|
81
|
-
};
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
export function setEdmTemplate(template) {
|
|
85
|
-
return {
|
|
86
|
-
type: types.SET_EDM_TEMPLATE,
|
|
87
|
-
template,
|
|
88
|
-
};
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
1
|
+
/*
|
|
2
|
+
*
|
|
3
|
+
* Templates actions
|
|
4
|
+
*
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import * as types from './constants';
|
|
8
|
+
|
|
9
|
+
export function getAllTemplates(channel, queryParams) {
|
|
10
|
+
console.log('get all templates action trigereed', channel, queryParams);
|
|
11
|
+
return {
|
|
12
|
+
type: types.GET_ALL_TEMPLATES_REQUEST, channel, queryParams,
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export function resetTemplate() {
|
|
17
|
+
return {
|
|
18
|
+
type: types.RESET_TEMPLATE,
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export function resetAccount() {
|
|
23
|
+
return {
|
|
24
|
+
type: types.RESET_ACCOUNT,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export function deleteTemplate(channel, id) {
|
|
29
|
+
console.log('delete template action trigereed', channel, id);
|
|
30
|
+
return {
|
|
31
|
+
type: types.DELETE_TEMPLATE_REQUEST, channel, id,
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export function getUserList() {
|
|
36
|
+
return {
|
|
37
|
+
type: types.GET_USER_LIST_REQUEST,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export function getWeCrmAccounts(source) {
|
|
42
|
+
return {
|
|
43
|
+
type: types.GET_WECRM_ACCOUNTS_REQUEST, source,
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export function setWeChatAccount(weChatAccount) {
|
|
48
|
+
console.log('setting wechat account', weChatAccount);
|
|
49
|
+
return {
|
|
50
|
+
type: types.SET_WECHAT_ACCOUNT,
|
|
51
|
+
weChatAccount,
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export function setLineAccount(lineAccount) {
|
|
56
|
+
return {
|
|
57
|
+
type: types.SET_LINE_ACCOUNT,
|
|
58
|
+
lineAccount,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export function handleHtmlUpload(selectedTemplate) {
|
|
63
|
+
return {
|
|
64
|
+
type: types.SET_SELECTED_LAYOUT,
|
|
65
|
+
selectedTemplate,
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
export function handleZipUpload(selectedFile, successHandler, errorHandler) {
|
|
70
|
+
return {
|
|
71
|
+
type: types.SEND_ZIPPED_FILE_REQUEST,
|
|
72
|
+
selectedFile,
|
|
73
|
+
successHandler,
|
|
74
|
+
errorHandler,
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export function getDefaultBeeTemplates() {
|
|
79
|
+
return {
|
|
80
|
+
type: types.GET_DEAFULT_BEE_TEMPLATES_REQUEST,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
export function setEdmTemplate(template) {
|
|
85
|
+
return {
|
|
86
|
+
type: types.SET_EDM_TEMPLATE,
|
|
87
|
+
template,
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
export function setBEETemplate(template) {
|
|
91
|
+
return {
|
|
92
|
+
type: types.SET_BEE_TEMPLATE,
|
|
93
|
+
template,
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
export function getTemplateDetails(id, channel) {
|
|
97
|
+
console.log('getting template', id, channel);
|
|
98
|
+
return {
|
|
99
|
+
type: types.GET_TEMPLATE_DETAILS_REQUEST,
|
|
100
|
+
id,
|
|
101
|
+
channel,
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
export function resetTemplateData() {
|
|
106
|
+
return {
|
|
107
|
+
type: types.RESET_TEMPLATE_DATA,
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
export function resetUploadData() {
|
|
112
|
+
console.log('clearing upload data');
|
|
113
|
+
return {
|
|
114
|
+
type: types.RESET_UPLOAD_DATA,
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
export function resetTemplateStoreData() {
|
|
119
|
+
return {
|
|
120
|
+
type: types.CLEAR_TEMPLATE_STORE_DATA,
|
|
121
|
+
};
|
|
122
|
+
}
|
|
@@ -1,47 +1,49 @@
|
|
|
1
|
-
/*
|
|
2
|
-
*
|
|
3
|
-
* Templates constants
|
|
4
|
-
*
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
export const DEFAULT_ACTION = 'app/Templates/DEFAULT_ACTION';
|
|
8
|
-
|
|
9
|
-
export const GET_ALL_TEMPLATES_REQUEST = 'app/v2Containers/Templates/GET_ALL_TEMPLATES_REQUEST';
|
|
10
|
-
export const GET_ALL_TEMPLATES_SUCCESS = 'app/v2Containers/Templates/GET_ALL_TEMPLATES_SUCCESS';
|
|
11
|
-
export const GET_ALL_TEMPLATES_FAILURE = 'app/v2Containers/Templates/GET_ALL_TEMPLATES_FAILURE';
|
|
12
|
-
|
|
13
|
-
export const DELETE_TEMPLATE_REQUEST = 'app/v2Containers/Templates/DELETE_TEMPLATE_REQUEST';
|
|
14
|
-
export const DELETE_TEMPLATE_SUCCESS = 'app/v2Containers/Templates/DELETE_TEMPLATE_SUCCESS';
|
|
15
|
-
export const DELETE_TEMPLATE_FAILURE = 'app/v2Containers/Templates/DELETE_TEMPLATE_FAILURE';
|
|
16
|
-
|
|
17
|
-
export const GET_USER_LIST_REQUEST = "app/v2Containers/GET_USER_LIST_REQUEST";
|
|
18
|
-
export const GET_USER_LIST_SUCCESS = "app/v2Containers/GET_USER_LIST_SUCCESS";
|
|
19
|
-
export const GET_USER_LIST_FAILURE = "app/v2Containers/GET_USER_LIST_FAILURE";
|
|
20
|
-
|
|
21
|
-
export const GET_WECRM_ACCOUNTS_REQUEST = "app/v2Containers/Templates/GET_WECRM_ACCOUNTS_REQUEST";
|
|
22
|
-
export const GET_WECRM_ACCOUNTS_SUCCESS = "app/v2Containers/Templates/GET_WECRM_ACCOUNTS_SUCCESS";
|
|
23
|
-
export const GET_WECRM_ACCOUNTS_FAILURE = "app/v2Containers/Templates/GET_WECRM_ACCOUNTS_FAILURE";
|
|
24
|
-
export const SET_WECHAT_ACCOUNT = "app/v2Containers/Templates/SET_WECHAT_ACCOUNT";
|
|
25
|
-
|
|
26
|
-
export const SET_SELECTED_LAYOUT = "app/v2Containers/Templates/SET_SELECTED_LAYOUT";
|
|
27
|
-
export const SEND_ZIPPED_FILE_REQUEST = "app/v2Containers/Templates/SEND_ZIPPED_FILE_REQUEST";
|
|
28
|
-
export const SEND_ZIPPED_FILE_SUCCESS = "app/v2Containers/Templates/SEND_ZIPPED_FILE_SUCCESS";
|
|
29
|
-
export const SEND_ZIPPED_FILE_FAILURE = "app/v2Containers/Templates/SEND_ZIPPED_FILE_FAILURE";
|
|
30
|
-
|
|
31
|
-
export const
|
|
32
|
-
export const
|
|
33
|
-
export const
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
export const
|
|
37
|
-
export const
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
export const
|
|
41
|
-
export const
|
|
42
|
-
export const
|
|
43
|
-
export const
|
|
44
|
-
|
|
45
|
-
export const
|
|
46
|
-
|
|
47
|
-
export const
|
|
1
|
+
/*
|
|
2
|
+
*
|
|
3
|
+
* Templates constants
|
|
4
|
+
*
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
export const DEFAULT_ACTION = 'app/Templates/DEFAULT_ACTION';
|
|
8
|
+
|
|
9
|
+
export const GET_ALL_TEMPLATES_REQUEST = 'app/v2Containers/Templates/GET_ALL_TEMPLATES_REQUEST';
|
|
10
|
+
export const GET_ALL_TEMPLATES_SUCCESS = 'app/v2Containers/Templates/GET_ALL_TEMPLATES_SUCCESS';
|
|
11
|
+
export const GET_ALL_TEMPLATES_FAILURE = 'app/v2Containers/Templates/GET_ALL_TEMPLATES_FAILURE';
|
|
12
|
+
|
|
13
|
+
export const DELETE_TEMPLATE_REQUEST = 'app/v2Containers/Templates/DELETE_TEMPLATE_REQUEST';
|
|
14
|
+
export const DELETE_TEMPLATE_SUCCESS = 'app/v2Containers/Templates/DELETE_TEMPLATE_SUCCESS';
|
|
15
|
+
export const DELETE_TEMPLATE_FAILURE = 'app/v2Containers/Templates/DELETE_TEMPLATE_FAILURE';
|
|
16
|
+
|
|
17
|
+
export const GET_USER_LIST_REQUEST = "app/v2Containers/GET_USER_LIST_REQUEST";
|
|
18
|
+
export const GET_USER_LIST_SUCCESS = "app/v2Containers/GET_USER_LIST_SUCCESS";
|
|
19
|
+
export const GET_USER_LIST_FAILURE = "app/v2Containers/GET_USER_LIST_FAILURE";
|
|
20
|
+
|
|
21
|
+
export const GET_WECRM_ACCOUNTS_REQUEST = "app/v2Containers/Templates/GET_WECRM_ACCOUNTS_REQUEST";
|
|
22
|
+
export const GET_WECRM_ACCOUNTS_SUCCESS = "app/v2Containers/Templates/GET_WECRM_ACCOUNTS_SUCCESS";
|
|
23
|
+
export const GET_WECRM_ACCOUNTS_FAILURE = "app/v2Containers/Templates/GET_WECRM_ACCOUNTS_FAILURE";
|
|
24
|
+
export const SET_WECHAT_ACCOUNT = "app/v2Containers/Templates/SET_WECHAT_ACCOUNT";
|
|
25
|
+
|
|
26
|
+
export const SET_SELECTED_LAYOUT = "app/v2Containers/Templates/SET_SELECTED_LAYOUT";
|
|
27
|
+
export const SEND_ZIPPED_FILE_REQUEST = "app/v2Containers/Templates/SEND_ZIPPED_FILE_REQUEST";
|
|
28
|
+
export const SEND_ZIPPED_FILE_SUCCESS = "app/v2Containers/Templates/SEND_ZIPPED_FILE_SUCCESS";
|
|
29
|
+
export const SEND_ZIPPED_FILE_FAILURE = "app/v2Containers/Templates/SEND_ZIPPED_FILE_FAILURE";
|
|
30
|
+
|
|
31
|
+
export const GET_TEMPLATE_DETAILS_REQUEST = 'app/v2Containers/Templates/GET_TEMPLATE_DETAILS_REQUEST';
|
|
32
|
+
export const GET_TEMPLATE_DETAILS_SUCCESS = 'app/v2Containers/Templates/GET_TEMPLATE_DETAILS_SUCCESS';
|
|
33
|
+
export const GET_TEMPLATE_DETAILS_FAILURE = 'app/v2Containers/Templates/GET_TEMPLATE_DETAILS_FAILURE';
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
export const SET_EDM_TEMPLATE = "app/v2Containers/Templates/SET_EDM_TEMPLATE";
|
|
37
|
+
export const SET_BEE_TEMPLATE = "app/v2Containers/Templates/SET_BEE_TEMPLATE";
|
|
38
|
+
|
|
39
|
+
export const RESET_ACCOUNT = "app/v2Containers/Templates/RESET_ACCOUNT";
|
|
40
|
+
export const RESET_TEMPLATE = "app/v2Containers/Templates/RESET_TEMPLATE";
|
|
41
|
+
export const RESET_TEMPLATE_DATA = "app/v2Containers/Templates/RESET_TEMPLATE_DATA";
|
|
42
|
+
export const RESET_UPLOAD_DATA = "app/v2Containers/Templates/RESET_UPLOAD_DATA";
|
|
43
|
+
export const CLEAR_TEMPLATE_STORE_DATA = "app/v2Containers/Templates/CLEAR_TEMPLATE_STORE_DATA";
|
|
44
|
+
|
|
45
|
+
export const SET_LINE_ACCOUNT = "app/v2Containers/Templates/SET_LINE_ACCOUNT";
|
|
46
|
+
|
|
47
|
+
export const GET_DEAFULT_BEE_TEMPLATES_REQUEST = 'app/v2Containers/Templates/GET_DEAFULT_BEE_TEMPLATES_REQUEST';
|
|
48
|
+
export const GET_DEAFULT_BEE_TEMPLATES_SUCCESS = 'app/v2Containers/Templates/GET_DEAFULT_BEE_TEMPLATES_SUCCESS';
|
|
49
|
+
export const GET_DEAFULT_BEE_TEMPLATES_FAILURE = 'app/v2Containers/Templates/GET_DEAFULT_BEE_TEMPLATES_FAILURE';
|
|
@@ -81,8 +81,7 @@ const LINE_FILTERS = {
|
|
|
81
81
|
ALL: 'all',
|
|
82
82
|
TEXT: 'text',
|
|
83
83
|
IMAGE_VIDEO: 'image',
|
|
84
|
-
IMAGE_MAP: 'imagemap'
|
|
85
|
-
IMAGE_CAROUSEL: 'template',
|
|
84
|
+
IMAGE_MAP: 'imagemap'
|
|
86
85
|
};
|
|
87
86
|
|
|
88
87
|
export class Templates extends React.Component { // eslint-disable-line react/prefer-stateless-function
|
|
@@ -208,10 +207,6 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
208
207
|
queryParams.perPage = this.state.perPageLimit;
|
|
209
208
|
const channel = this.state.channel;
|
|
210
209
|
this.props.actions.getAllTemplates(channel, queryParams);
|
|
211
|
-
//this.getAllTemplates({});
|
|
212
|
-
// if (this.state.channel.toLowerCase() === "email") {
|
|
213
|
-
// this.props.actions.getEdmDefaultTemplates();
|
|
214
|
-
// }
|
|
215
210
|
}
|
|
216
211
|
|
|
217
212
|
window.addEventListener("message", this.handleFrameTasks);
|
|
@@ -236,7 +231,6 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
236
231
|
nextProps.actions.getWeCrmAccounts();
|
|
237
232
|
} else if (nextProps.route.name.toLowerCase() === 'email') {
|
|
238
233
|
channel = 'Email';
|
|
239
|
-
// this.props.actions.getEdmDefaultTemplates();
|
|
240
234
|
} else if (nextProps.route.name.toLowerCase() === "mobilepush") {
|
|
241
235
|
this.setState({defaultAccount: true});
|
|
242
236
|
channel = "mobilepush";
|
|
@@ -641,34 +635,11 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
641
635
|
stickerUrl = '',
|
|
642
636
|
animatedStickerUrl = '',
|
|
643
637
|
baseUrl = '',
|
|
644
|
-
template: carouselTemplate,
|
|
645
638
|
}] = [{}],
|
|
646
639
|
} = {},
|
|
647
640
|
} = template.versions.base;
|
|
648
641
|
templateData.content = text;
|
|
649
642
|
templateData.url = originalContentUrl || animatedStickerUrl || stickerUrl || (baseUrl ? `${baseUrl}/1040` : '');
|
|
650
|
-
if (carouselTemplate) {
|
|
651
|
-
const carouselContent = get(carouselTemplate, 'columns', [{}]).map(({ imageUrl, action: { label: actionLabel } = {} }) => ({ imageUrl, actionLabel }) );
|
|
652
|
-
templateData.content = (
|
|
653
|
-
<div style={{ display: 'flex'}}>
|
|
654
|
-
{
|
|
655
|
-
carouselContent.map(({
|
|
656
|
-
imageUrl,
|
|
657
|
-
actionLabel
|
|
658
|
-
}) => (
|
|
659
|
-
<img
|
|
660
|
-
width={208}
|
|
661
|
-
height={279}
|
|
662
|
-
src={imageUrl}
|
|
663
|
-
alt={actionLabel}
|
|
664
|
-
key={`${imageUrl}_${actionLabel}`}
|
|
665
|
-
/>
|
|
666
|
-
))
|
|
667
|
-
}
|
|
668
|
-
</div>
|
|
669
|
-
);
|
|
670
|
-
templateData.className = 'carousel-img-section';
|
|
671
|
-
}
|
|
672
643
|
break;
|
|
673
644
|
}
|
|
674
645
|
default:
|
|
@@ -1120,7 +1091,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
1120
1091
|
toggleEdmEmailTemplateSelection = () => {
|
|
1121
1092
|
this.setState( (prevState) => ({
|
|
1122
1093
|
showEdmEmailTemplates: !prevState.showEdmEmailTemplates}), () => {
|
|
1123
|
-
this.props.actions.
|
|
1094
|
+
this.props.actions.getDefaultBeeTemplates();
|
|
1124
1095
|
});
|
|
1125
1096
|
};
|
|
1126
1097
|
|
|
@@ -1193,6 +1164,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
1193
1164
|
let getQuery = '';
|
|
1194
1165
|
|
|
1195
1166
|
this.props.actions.setEdmTemplate(data);
|
|
1167
|
+
// this.props.actions.setBEETemplate(data);
|
|
1196
1168
|
if (this.state.channel && this.state.channel.toLowerCase() === 'email') {
|
|
1197
1169
|
getQuery = (type === 'embedded') ? {type: 'embedded', module, isLanguageSupport, isEdmSupport} : {module, isLanguageSupport, isEdmSupport};
|
|
1198
1170
|
} else {
|
|
@@ -1538,12 +1510,23 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
1538
1510
|
|
|
1539
1511
|
|
|
1540
1512
|
isLoading = () => {
|
|
1541
|
-
const
|
|
1542
|
-
const
|
|
1543
|
-
|
|
1544
|
-
|
|
1545
|
-
|
|
1546
|
-
|
|
1513
|
+
const { EmailCreate, Templates } = this.props;
|
|
1514
|
+
const {
|
|
1515
|
+
getAllTemplatesInProgress,
|
|
1516
|
+
deleteTemplateInProgress,
|
|
1517
|
+
fetchingWeCrmAccounts,
|
|
1518
|
+
sendingFile,
|
|
1519
|
+
} = Templates;
|
|
1520
|
+
const lineLoader = (getAllTemplatesInProgress && this.state.channel.toLowerCase() === 'line');
|
|
1521
|
+
const smsLoader = (getAllTemplatesInProgress && this.state.channel.toLowerCase() === 'sms');
|
|
1522
|
+
const wechatLoader = (((this.state.selectedAccount !== '' && getAllTemplatesInProgress) || (fetchingWeCrmAccounts)) && this.state.channel.toLowerCase() === 'wechat');
|
|
1523
|
+
const mobilePushLoader = (((getAllTemplatesInProgress) || (fetchingWeCrmAccounts)) && this.state.channel.toLowerCase() === 'mobilepush');
|
|
1524
|
+
const emailLoader = (
|
|
1525
|
+
(getAllTemplatesInProgress ||
|
|
1526
|
+
sendingFile ||
|
|
1527
|
+
deleteTemplateInProgress ||
|
|
1528
|
+
EmailCreate.duplicateTemplateInProgress) && this.state.channel.toLowerCase() === 'email');
|
|
1529
|
+
const ebillLoader = ((getAllTemplatesInProgress || sendingFile) && this.state.channel.toLowerCase() === 'ebill');
|
|
1547
1530
|
const isLoading = ((wechatLoader !== undefined) ? wechatLoader : false) ||
|
|
1548
1531
|
(smsLoader !== undefined ? smsLoader : false) ||
|
|
1549
1532
|
(emailLoader !== undefined ? emailLoader : false) ||
|
|
@@ -1807,7 +1790,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
1807
1790
|
<CapRadio.CapRadioGroup className="line-filters" defaultValue={lineFilter} onChange={this.setLineFilter}>
|
|
1808
1791
|
{
|
|
1809
1792
|
(() => {
|
|
1810
|
-
const { ALL, TEXT, IMAGE_VIDEO,
|
|
1793
|
+
const { ALL, TEXT, IMAGE_VIDEO, STICKER, IMAGE_MAP } = LINE_FILTERS;
|
|
1811
1794
|
return (
|
|
1812
1795
|
<>
|
|
1813
1796
|
<CapRadio.Button value={ALL}><CapLabel type="label2">
|
|
@@ -1822,9 +1805,6 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
1822
1805
|
<CapRadio.Button value={IMAGE_MAP}><CapLabel type="label2">
|
|
1823
1806
|
<FormattedMessage {...messages.imageMapTemplate} />
|
|
1824
1807
|
</CapLabel></CapRadio.Button>
|
|
1825
|
-
<CapRadio.Button value={IMAGE_CAROUSEL}><CapLabel type="label2">
|
|
1826
|
-
<FormattedMessage {...messages.imageCarouselTemplate} />
|
|
1827
|
-
</CapLabel></CapRadio.Button>
|
|
1828
1808
|
</>
|
|
1829
1809
|
);
|
|
1830
1810
|
})()
|
|
@@ -1858,7 +1838,19 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
1858
1838
|
const creativesParams = this.getCreativesParams();
|
|
1859
1839
|
const templates = this.props.TemplatesList || [];
|
|
1860
1840
|
const {route} = this.props;
|
|
1861
|
-
const
|
|
1841
|
+
const loadingTipMap = {
|
|
1842
|
+
sendingFile: 'uploadingFile',
|
|
1843
|
+
deleteTemplateInProgress: 'deletingTemplate',
|
|
1844
|
+
duplicateTemplateInProgress: 'duplicatingTemplate',
|
|
1845
|
+
};
|
|
1846
|
+
const { sendingFile, deleteTemplateInProgress } = this.props.Templates;
|
|
1847
|
+
const loadingTipIntl =
|
|
1848
|
+
((['email', 'ebill'].includes(this.state.channel.toLowerCase() === 'email')) && sendingFile && 'sendingFile') ||
|
|
1849
|
+
(deleteTemplateInProgress && 'deletingTemplate') ||
|
|
1850
|
+
(this.props.EmailCreate.duplicateTemplateInProgress && 'duplicatingTemplate');
|
|
1851
|
+
|
|
1852
|
+
const loadingTip = messages[loadingTipIntl] ? this.props.intl.formatMessage(messages[loadingTipIntl]) : this.props.intl.formatMessage(messages.gettingAllTemplates);
|
|
1853
|
+
|
|
1862
1854
|
return (
|
|
1863
1855
|
<>
|
|
1864
1856
|
{activeMode === ACCOUNT_CHANGE_MODE && this.renderAccountSelection()}
|
|
@@ -242,10 +242,6 @@ export default defineMessages({
|
|
|
242
242
|
id: `${scope}.imageMapTemplate`,
|
|
243
243
|
defaultMessage: `Rich message`,
|
|
244
244
|
},
|
|
245
|
-
"imageCarouselTemplate": {
|
|
246
|
-
id: `${scope}.imageCarouselTemplate`,
|
|
247
|
-
defaultMessage: `Card message`,
|
|
248
|
-
},
|
|
249
245
|
"selectDefaultButton": {
|
|
250
246
|
id: `${scope}.selectDefaultButton`,
|
|
251
247
|
defaultMessage: `Select`,
|
|
@@ -354,4 +350,12 @@ export default defineMessages({
|
|
|
354
350
|
id: `${scope}.richMediaTemplates`,
|
|
355
351
|
defaultMessage: 'Rich media templates',
|
|
356
352
|
},
|
|
353
|
+
deletingTemplate: {
|
|
354
|
+
id: `${scope}.deletingTemplate`,
|
|
355
|
+
defaultMessage: 'Deleting template...',
|
|
356
|
+
},
|
|
357
|
+
duplicatingTemplate: {
|
|
358
|
+
id: `${scope}.duplicatingTemplate`,
|
|
359
|
+
defaultMessage: 'Duplicating template...'
|
|
360
|
+
},
|
|
357
361
|
});
|