@capillarytech/creatives-library 6.9.1 → 6.9.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/components/CapTagList/index.js +1 -1
- package/components/Edmeditor/index.js +1 -1
- package/components/FormBuilder/index.js +1 -0
- package/components/TemplatePreview/_templatePreview.scss +6 -0
- package/components/TemplatePreview/index.js +35 -28
- package/config/app.js +1 -1
- package/containers/TagList/index.js +3 -3
- package/index.html +0 -5
- package/package.json +1 -2
- package/services/api.js +1 -16
- package/v2Components/CapTagList/index.js +26 -55
- package/v2Components/Carousel/index.js +120 -0
- package/v2Components/Carousel/style.scss +40 -0
- 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 +43 -117
- 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 +1 -0
- 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 +36 -29
- package/v2Components/TemplatePreview/tests/index.test.js +10 -10
- package/v2Containers/CreativesContainer/SlideBoxContent.js +7 -1
- 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 +2 -7
- 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 +0 -1
- package/v2Containers/Email/index.js +108 -210
- package/v2Containers/Email/initialSchema.js +3 -18
- package/v2Containers/Email/sagas.js +2 -2
- package/v2Containers/Email/selectors.js +0 -5
- package/v2Containers/EmailWrapper/index.js +3 -19
- package/v2Containers/Line/Container/Image/index.js +21 -19
- package/v2Containers/Line/Container/ImageCarousel/Content.js +554 -0
- package/v2Containers/Line/Container/ImageCarousel/constants.js +10 -0
- package/v2Containers/Line/Container/ImageCarousel/index.js +526 -0
- package/v2Containers/Line/Container/ImageCarousel/messages.js +178 -0
- package/v2Containers/Line/Container/ImageCarousel/style.js +61 -0
- package/v2Containers/Line/Container/ImageMap/constants.js +2 -1
- package/v2Containers/Line/Container/ImageMap/index.js +31 -6
- package/v2Containers/Line/Container/ImageMap/messages.js +12 -0
- package/v2Containers/Line/Container/Wrapper/index.js +5 -1
- package/v2Containers/Line/Container/Wrapper/messages.js +4 -0
- package/v2Containers/Line/Container/Wrapper/utils.js +15 -16
- package/v2Containers/Line/Container/_lineCreate.scss +2 -2
- package/v2Containers/Line/Container/actions.js +4 -2
- package/v2Containers/Line/Container/constants.js +3 -0
- package/v2Containers/Line/Container/index.js +49 -11
- package/v2Containers/Line/Container/reducer.js +2 -2
- package/v2Containers/Line/Container/sagas.js +2 -2
- package/v2Containers/Line/Container/style.js +2 -1
- package/v2Containers/TagList/index.js +0 -6
- package/v2Containers/Templates/_templates.scss +9 -0
- package/v2Containers/Templates/actions.js +117 -122
- package/v2Containers/Templates/constants.js +47 -49
- package/v2Containers/Templates/index.js +42 -34
- package/v2Containers/Templates/messages.js +4 -8
- package/v2Containers/Templates/reducer.js +145 -153
- package/v2Containers/Templates/sagas.js +179 -179
- package/v2Containers/Templates/selectors.js +1 -19
- 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/BeeEditor/index.js +0 -278
- package/v2Components/BeeEditor/index.scss +0 -11
- package/v2Components/BeeEditor/messages.js +0 -47
- package/v2Components/BeeEditor/tests/index.test.js +0 -10
|
@@ -1,122 +1,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
|
|
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
|
-
|
|
118
|
-
export function resetTemplateStoreData() {
|
|
119
|
-
return {
|
|
120
|
-
type: types.CLEAR_TEMPLATE_STORE_DATA,
|
|
121
|
-
};
|
|
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 getEdmDefaultTemplates() {
|
|
79
|
+
return {
|
|
80
|
+
type: types.GET_EDM_DEAFULT_TEMPLATES_REQUEST,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
export function setEdmTemplate(template) {
|
|
85
|
+
return {
|
|
86
|
+
type: types.SET_EDM_TEMPLATE,
|
|
87
|
+
template,
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
export function getTemplateDetails(id, channel) {
|
|
92
|
+
console.log('getting template', id, channel);
|
|
93
|
+
return {
|
|
94
|
+
type: types.GET_TEMPLATE_DETAILS_REQUEST,
|
|
95
|
+
id,
|
|
96
|
+
channel,
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
export function resetTemplateData() {
|
|
101
|
+
return {
|
|
102
|
+
type: types.RESET_TEMPLATE_DATA,
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
export function resetUploadData() {
|
|
107
|
+
console.log('clearing upload data');
|
|
108
|
+
return {
|
|
109
|
+
type: types.RESET_UPLOAD_DATA,
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
export function resetTemplateStoreData() {
|
|
114
|
+
return {
|
|
115
|
+
type: types.CLEAR_TEMPLATE_STORE_DATA,
|
|
116
|
+
};
|
|
117
|
+
}
|
|
@@ -1,49 +1,47 @@
|
|
|
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
|
|
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';
|
|
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_EDM_DEAFULT_TEMPLATES_REQUEST = 'app/v2Containers/Templates/GET_EDM_DEAFULT_TEMPLATES_REQUEST';
|
|
32
|
+
export const GET_EDM_DEAFULT_TEMPLATES_SUCCESS = 'app/v2Containers/Templates/GET_EDM_DEAFULT_TEMPLATES_SUCCESS';
|
|
33
|
+
export const GET_EDM_DEAFULT_TEMPLATES_FAILURE = 'app/v2Containers/Templates/GET_EDM_DEAFULT_TEMPLATES_FAILURE';
|
|
34
|
+
|
|
35
|
+
export const GET_TEMPLATE_DETAILS_REQUEST = 'app/v2Containers/Templates/GET_TEMPLATE_DETAILS_REQUEST';
|
|
36
|
+
export const GET_TEMPLATE_DETAILS_SUCCESS = 'app/v2Containers/Templates/GET_TEMPLATE_DETAILS_SUCCESS';
|
|
37
|
+
export const GET_TEMPLATE_DETAILS_FAILURE = 'app/v2Containers/Templates/GET_TEMPLATE_DETAILS_FAILURE';
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
export const SET_EDM_TEMPLATE = "app/v2Containers/Templates/SET_EDM_TEMPLATE";
|
|
41
|
+
export const RESET_ACCOUNT = "app/v2Containers/Templates/RESET_ACCOUNT";
|
|
42
|
+
export const RESET_TEMPLATE = "app/v2Containers/Templates/RESET_TEMPLATE";
|
|
43
|
+
export const RESET_TEMPLATE_DATA = "app/v2Containers/Templates/RESET_TEMPLATE_DATA";
|
|
44
|
+
export const RESET_UPLOAD_DATA = "app/v2Containers/Templates/RESET_UPLOAD_DATA";
|
|
45
|
+
export const CLEAR_TEMPLATE_STORE_DATA = "app/v2Containers/Templates/CLEAR_TEMPLATE_STORE_DATA";
|
|
46
|
+
|
|
47
|
+
export const SET_LINE_ACCOUNT = "app/v2Containers/Templates/SET_LINE_ACCOUNT";
|
|
@@ -81,7 +81,8 @@ const LINE_FILTERS = {
|
|
|
81
81
|
ALL: 'all',
|
|
82
82
|
TEXT: 'text',
|
|
83
83
|
IMAGE_VIDEO: 'image',
|
|
84
|
-
IMAGE_MAP: 'imagemap'
|
|
84
|
+
IMAGE_MAP: 'imagemap',
|
|
85
|
+
IMAGE_CAROUSEL: 'template',
|
|
85
86
|
};
|
|
86
87
|
|
|
87
88
|
export class Templates extends React.Component { // eslint-disable-line react/prefer-stateless-function
|
|
@@ -207,6 +208,10 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
207
208
|
queryParams.perPage = this.state.perPageLimit;
|
|
208
209
|
const channel = this.state.channel;
|
|
209
210
|
this.props.actions.getAllTemplates(channel, queryParams);
|
|
211
|
+
//this.getAllTemplates({});
|
|
212
|
+
// if (this.state.channel.toLowerCase() === "email") {
|
|
213
|
+
// this.props.actions.getEdmDefaultTemplates();
|
|
214
|
+
// }
|
|
210
215
|
}
|
|
211
216
|
|
|
212
217
|
window.addEventListener("message", this.handleFrameTasks);
|
|
@@ -231,6 +236,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
231
236
|
nextProps.actions.getWeCrmAccounts();
|
|
232
237
|
} else if (nextProps.route.name.toLowerCase() === 'email') {
|
|
233
238
|
channel = 'Email';
|
|
239
|
+
// this.props.actions.getEdmDefaultTemplates();
|
|
234
240
|
} else if (nextProps.route.name.toLowerCase() === "mobilepush") {
|
|
235
241
|
this.setState({defaultAccount: true});
|
|
236
242
|
channel = "mobilepush";
|
|
@@ -635,11 +641,34 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
635
641
|
stickerUrl = '',
|
|
636
642
|
animatedStickerUrl = '',
|
|
637
643
|
baseUrl = '',
|
|
644
|
+
template: carouselTemplate,
|
|
638
645
|
}] = [{}],
|
|
639
646
|
} = {},
|
|
640
647
|
} = template.versions.base;
|
|
641
648
|
templateData.content = text;
|
|
642
649
|
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
|
+
}
|
|
643
672
|
break;
|
|
644
673
|
}
|
|
645
674
|
default:
|
|
@@ -1091,7 +1120,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
1091
1120
|
toggleEdmEmailTemplateSelection = () => {
|
|
1092
1121
|
this.setState( (prevState) => ({
|
|
1093
1122
|
showEdmEmailTemplates: !prevState.showEdmEmailTemplates}), () => {
|
|
1094
|
-
this.props.actions.
|
|
1123
|
+
this.props.actions.getEdmDefaultTemplates();
|
|
1095
1124
|
});
|
|
1096
1125
|
};
|
|
1097
1126
|
|
|
@@ -1164,7 +1193,6 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
1164
1193
|
let getQuery = '';
|
|
1165
1194
|
|
|
1166
1195
|
this.props.actions.setEdmTemplate(data);
|
|
1167
|
-
// this.props.actions.setBEETemplate(data);
|
|
1168
1196
|
if (this.state.channel && this.state.channel.toLowerCase() === 'email') {
|
|
1169
1197
|
getQuery = (type === 'embedded') ? {type: 'embedded', module, isLanguageSupport, isEdmSupport} : {module, isLanguageSupport, isEdmSupport};
|
|
1170
1198
|
} else {
|
|
@@ -1510,23 +1538,12 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
1510
1538
|
|
|
1511
1539
|
|
|
1512
1540
|
isLoading = () => {
|
|
1513
|
-
const
|
|
1514
|
-
const
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
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');
|
|
1541
|
+
const lineLoader = (this.props.Templates.getAllTemplatesInProgress && this.state.channel.toLowerCase() === 'line');
|
|
1542
|
+
const smsLoader = (this.props.Templates.getAllTemplatesInProgress && this.state.channel.toLowerCase() === 'sms');
|
|
1543
|
+
const wechatLoader = (((this.state.selectedAccount !== '' && this.props.Templates.getAllTemplatesInProgress) || (this.props.Templates.fetchingWeCrmAccounts)) && this.state.channel.toLowerCase() === 'wechat');
|
|
1544
|
+
const mobilePushLoader = (((this.props.Templates.getAllTemplatesInProgress) || (this.props.Templates.fetchingWeCrmAccounts)) && this.state.channel.toLowerCase() === 'mobilepush');
|
|
1545
|
+
const emailLoader = ((this.props.Templates.getAllTemplatesInProgress || this.props.Templates.sendingFile) && this.state.channel.toLowerCase() === 'email');
|
|
1546
|
+
const ebillLoader = ((this.props.Templates.getAllTemplatesInProgress || this.props.Templates.sendingFile) && this.state.channel.toLowerCase() === 'ebill');
|
|
1530
1547
|
const isLoading = ((wechatLoader !== undefined) ? wechatLoader : false) ||
|
|
1531
1548
|
(smsLoader !== undefined ? smsLoader : false) ||
|
|
1532
1549
|
(emailLoader !== undefined ? emailLoader : false) ||
|
|
@@ -1790,7 +1807,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
1790
1807
|
<CapRadio.CapRadioGroup className="line-filters" defaultValue={lineFilter} onChange={this.setLineFilter}>
|
|
1791
1808
|
{
|
|
1792
1809
|
(() => {
|
|
1793
|
-
const { ALL, TEXT, IMAGE_VIDEO,
|
|
1810
|
+
const { ALL, TEXT, IMAGE_VIDEO, IMAGE_CAROUSEL, IMAGE_MAP } = LINE_FILTERS;
|
|
1794
1811
|
return (
|
|
1795
1812
|
<>
|
|
1796
1813
|
<CapRadio.Button value={ALL}><CapLabel type="label2">
|
|
@@ -1805,6 +1822,9 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
1805
1822
|
<CapRadio.Button value={IMAGE_MAP}><CapLabel type="label2">
|
|
1806
1823
|
<FormattedMessage {...messages.imageMapTemplate} />
|
|
1807
1824
|
</CapLabel></CapRadio.Button>
|
|
1825
|
+
<CapRadio.Button value={IMAGE_CAROUSEL}><CapLabel type="label2">
|
|
1826
|
+
<FormattedMessage {...messages.imageCarouselTemplate} />
|
|
1827
|
+
</CapLabel></CapRadio.Button>
|
|
1808
1828
|
</>
|
|
1809
1829
|
);
|
|
1810
1830
|
})()
|
|
@@ -1838,19 +1858,7 @@ export class Templates extends React.Component { // eslint-disable-line react/pr
|
|
|
1838
1858
|
const creativesParams = this.getCreativesParams();
|
|
1839
1859
|
const templates = this.props.TemplatesList || [];
|
|
1840
1860
|
const {route} = this.props;
|
|
1841
|
-
const
|
|
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
|
-
|
|
1861
|
+
const loadingTip = (this.props.Templates.sendingFile && (this.state.channel.toLowerCase() === 'email' || this.state.channel.toLowerCase() === 'ebill')) ? this.props.intl.formatMessage(messages.uploadingFile) : this.props.intl.formatMessage(messages.gettingAllTemplates);
|
|
1854
1862
|
return (
|
|
1855
1863
|
<>
|
|
1856
1864
|
{activeMode === ACCOUNT_CHANGE_MODE && this.renderAccountSelection()}
|
|
@@ -242,6 +242,10 @@ 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
|
+
},
|
|
245
249
|
"selectDefaultButton": {
|
|
246
250
|
id: `${scope}.selectDefaultButton`,
|
|
247
251
|
defaultMessage: `Select`,
|
|
@@ -350,12 +354,4 @@ export default defineMessages({
|
|
|
350
354
|
id: `${scope}.richMediaTemplates`,
|
|
351
355
|
defaultMessage: 'Rich media templates',
|
|
352
356
|
},
|
|
353
|
-
deletingTemplate: {
|
|
354
|
-
id: `${scope}.deletingTemplate`,
|
|
355
|
-
defaultMessage: 'Deleting template...',
|
|
356
|
-
},
|
|
357
|
-
duplicatingTemplate: {
|
|
358
|
-
id: `${scope}.duplicatingTemplate`,
|
|
359
|
-
defaultMessage: 'Duplicating template...'
|
|
360
|
-
},
|
|
361
357
|
});
|