@capillarytech/creatives-library 7.6.1 → 7.6.2
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/assets/DeviceForEmail.png +0 -0
- package/components/CapTagList/index.js +5 -5
- package/components/Card/index.js +1 -1
- package/components/Ckeditor/index.js +5 -5
- package/components/CustomPopOver/index.js +3 -3
- package/components/Edmeditor/index.js +4 -4
- package/components/EmailPreview/index.js +1 -1
- package/components/PreviewSideBar/index.js +3 -3
- package/components/Sidebar/index.js +1 -1
- package/components/SmsTest/index.js +4 -4
- package/components/TemplatePreview/index.js +2 -2
- package/components/Toastr/index.js +1 -1
- package/config/app.js +2 -0
- package/containers/Assets/Gallery/index.js +2 -2
- package/containers/Assets/Gallery/sagas.js +1 -1
- package/containers/Cap/actions.js +2 -2
- package/containers/Cap/reducer.js +1 -1
- package/containers/Cap/sagas.js +3 -3
- package/containers/Cap/selectors.js +1 -1
- package/containers/Ebill/actions.js +1 -1
- package/containers/Ebill/index.js +34 -34
- package/containers/Ebill/sagas.js +3 -3
- package/containers/Email/actions.js +2 -2
- package/containers/Email/index.js +171 -171
- package/containers/Email/reducer.js +1 -1
- package/containers/Email/sagas.js +6 -6
- package/containers/LanguageProvider/actions.js +1 -1
- package/containers/Line/Create/actions.js +5 -5
- package/containers/Line/Create/index.js +37 -37
- package/containers/Line/Create/sagas.js +7 -7
- package/containers/Line/Edit/actions.js +3 -3
- package/containers/Line/Edit/index.js +24 -24
- package/containers/Line/Edit/sagas.js +4 -4
- package/containers/MobilePush/Create/actions.js +2 -2
- package/containers/MobilePush/Create/index.js +35 -35
- package/containers/MobilePush/Create/sagas.js +2 -2
- package/containers/MobilePush/Edit/actions.js +3 -3
- package/containers/MobilePush/Edit/index.js +32 -32
- package/containers/MobilePush/Edit/sagas.js +5 -5
- package/containers/Sms/Create/actions.js +2 -2
- package/containers/Sms/Create/index.js +57 -57
- package/containers/Sms/Create/sagas.js +2 -2
- package/containers/Sms/Edit/actions.js +3 -3
- package/containers/Sms/Edit/index.js +44 -44
- package/containers/Sms/Edit/sagas.js +3 -3
- package/containers/TagList/index.js +9 -9
- package/containers/Templates/actions.js +5 -5
- package/containers/Templates/index.js +44 -44
- package/containers/Templates/sagas.js +5 -5
- package/containers/WeChat/MapTemplates/actions.js +1 -1
- package/containers/WeChat/MapTemplates/index.js +34 -34
- package/containers/WeChat/MapTemplates/sagas.js +2 -2
- package/containers/WeChat/RichmediaTemplates/Create/index.js +9 -9
- package/containers/WeChat/RichmediaTemplates/Edit/actions.js +1 -1
- package/containers/WeChat/RichmediaTemplates/Edit/sagas.js +1 -1
- package/index.js +6 -0
- package/package.json +1 -1
- package/reducers.js +2 -1
- package/routes.js +5 -0
- package/services/api.js +43 -14
- package/utils/authWrapper.js +2 -2
- package/utils/common.js +13 -1
- package/utils/smsCharCount.js +5 -5
- package/v2Components/CapTagList/index.js +1 -1
- package/v2Components/CapVideoUpload/index.js +14 -6
- package/v2Components/Card/index.js +1 -1
- package/v2Components/Ckeditor/index.js +5 -5
- package/v2Components/CustomPopOver/index.js +3 -3
- package/v2Components/Edmeditor/index.js +4 -4
- package/v2Components/EmailMobilePreview/index.js +4 -4
- package/v2Components/EmailPreviewV2/index.js +4 -4
- package/v2Components/FormBuilder/index.js +3 -3
- package/v2Components/PreviewSideBar/index.js +3 -3
- package/v2Components/SmsTest/index.js +4 -4
- package/v2Components/TemplatePreview/index.js +24 -3
- package/v2Components/Toastr/index.js +1 -1
- package/v2Containers/App/constants.js +21 -0
- package/v2Containers/Assets/Gallery/sagas.js +1 -1
- package/v2Containers/Cap/actions.js +1 -1
- package/v2Containers/Cap/index.js +2 -2
- package/v2Containers/Cap/messages.js +30 -0
- package/v2Containers/Cap/reducer.js +1 -1
- package/v2Containers/Cap/sagas.js +3 -3
- package/v2Containers/Cap/selectors.js +1 -1
- package/v2Containers/CapFacebookPreview/actions.js +3 -15
- package/v2Containers/CapFacebookPreview/constants.js +3 -11
- package/v2Containers/CapFacebookPreview/index.js +6 -6
- package/v2Containers/CapFacebookPreview/reducer.js +3 -9
- package/v2Containers/CapFacebookPreview/sagas.js +6 -65
- package/v2Containers/CreativesContainer/SlideBoxContent.js +64 -1
- package/v2Containers/CreativesContainer/index.js +19 -8
- package/v2Containers/Ebill/actions.js +1 -1
- package/v2Containers/Ebill/index.js +34 -34
- package/v2Containers/Ebill/sagas.js +3 -3
- package/v2Containers/Email/reducer.js +1 -1
- package/v2Containers/EmailWrapper/index.js +4 -4
- package/v2Containers/Facebook/Advertisement/index.js +38 -15
- package/v2Containers/Facebook/Advertisement/index.scss +9 -0
- package/v2Containers/Facebook/Advertisement/messages.js +2 -2
- package/v2Containers/Facebook/actions.js +63 -0
- package/v2Containers/Facebook/constants.js +25 -1
- package/v2Containers/Facebook/index.js +135 -107
- package/v2Containers/Facebook/reducer.js +98 -1
- package/v2Containers/Facebook/sagas.js +147 -0
- package/v2Containers/Facebook/selectors.js +10 -0
- package/v2Containers/LanguageProvider/actions.js +1 -1
- package/v2Containers/Line/Container/Video/index.js +38 -41
- package/v2Containers/Line/Container/actions.js +5 -5
- package/v2Containers/Line/Container/sagas.js +4 -4
- package/v2Containers/MobilePush/Create/actions.js +2 -2
- package/v2Containers/MobilePush/Create/index.js +1 -1
- package/v2Containers/MobilePush/Create/sagas.js +2 -2
- package/v2Containers/MobilePush/Edit/actions.js +3 -3
- package/v2Containers/MobilePush/Edit/index.js +26 -26
- package/v2Containers/MobilePush/Edit/sagas.js +5 -5
- package/v2Containers/Sms/Create/index.js +4 -4
- package/v2Containers/TagList/index.js +6 -6
- package/v2Containers/Templates/_templates.scss +26 -0
- package/v2Containers/Templates/actions.js +18 -5
- package/v2Containers/Templates/constants.js +8 -0
- package/v2Containers/Templates/index.js +139 -11
- package/v2Containers/Templates/messages.js +8 -4
- package/v2Containers/Templates/reducer.js +22 -0
- package/v2Containers/Templates/sagas.js +30 -5
- package/v2Containers/TemplatesV2/index.js +13 -13
- package/v2Containers/Viber/actions.js +2 -2
- package/v2Containers/Viber/index.js +2 -1
- package/v2Containers/Viber/sagas.js +2 -2
- package/v2Containers/WeChat/MapTemplates/actions.js +1 -1
- package/v2Containers/WeChat/MapTemplates/index.js +19 -19
- package/v2Containers/WeChat/MapTemplates/sagas.js +3 -3
- package/v2Containers/WeChat/RichmediaTemplates/Create/actions.js +1 -1
- package/v2Containers/WeChat/RichmediaTemplates/Edit/actions.js +1 -1
- package/v2Containers/WeChat/RichmediaTemplates/Edit/sagas.js +1 -1
|
@@ -55,8 +55,7 @@ export class TemplatesV2 extends React.Component { // eslint-disable-line react/
|
|
|
55
55
|
mPush: {content: <></>, tab: intl.formatMessage(messages.pushNotification), key: 'mobilepush'},
|
|
56
56
|
line: {content: <></>, tab: intl.formatMessage(messages.line), key: 'line'},
|
|
57
57
|
viber: {content: <></>, tab: intl.formatMessage(messages.viber), key: 'viber'},
|
|
58
|
-
|
|
59
|
-
|
|
58
|
+
facebook: {content: <div></div>, tab: intl.formatMessage(messages.facebook), key: 'facebook'},
|
|
60
59
|
};
|
|
61
60
|
let filteredPanes = Object.keys(defaultPanes)
|
|
62
61
|
.filter((key) => !channelsToHide.includes(key)).reduce((obj = [], key) => {
|
|
@@ -70,15 +69,13 @@ export class TemplatesV2 extends React.Component { // eslint-disable-line react/
|
|
|
70
69
|
if (!channelsToHide.includes('callTask')) {
|
|
71
70
|
filteredPanes.push({content: <div></div>, tab: intl.formatMessage(messages.callTask), key: 'call_task'});
|
|
72
71
|
}
|
|
73
|
-
if (!channelsToHide.includes('facebook')) {
|
|
74
|
-
filteredPanes.push({content: <div></div>, tab: intl.formatMessage(messages.facebook), key: 'facebook'});
|
|
75
|
-
}
|
|
76
72
|
if (!channelsToHide.includes('FTP')) {
|
|
77
73
|
filteredPanes.push({content: <></>, tab: intl.formatMessage(messages.FTP), key: 'ftp'});
|
|
78
74
|
defaultChannel = 'FTP';
|
|
79
75
|
}
|
|
80
76
|
}
|
|
81
77
|
|
|
78
|
+
|
|
82
79
|
filteredPanes = filteredPanes.map( (pane) => {
|
|
83
80
|
if (channelsToDisable.includes(pane.key)) {
|
|
84
81
|
// eslint-disable-next-line no-param-reassign
|
|
@@ -151,9 +148,10 @@ export class TemplatesV2 extends React.Component { // eslint-disable-line react/
|
|
|
151
148
|
);
|
|
152
149
|
|
|
153
150
|
getFacebookComponent = () => {
|
|
154
|
-
const { messageDetails, cap, onFacebookSubmit } = this.props;
|
|
151
|
+
const { messageDetails, cap, onFacebookSubmit, isFullMode } = this.props;
|
|
155
152
|
return (
|
|
156
153
|
<Facebook
|
|
154
|
+
{...this.props}
|
|
157
155
|
messageDetails={messageDetails}
|
|
158
156
|
cap={cap}
|
|
159
157
|
onFacebookSubmit={onFacebookSubmit}
|
|
@@ -182,11 +180,15 @@ export class TemplatesV2 extends React.Component { // eslint-disable-line react/
|
|
|
182
180
|
let query = {};
|
|
183
181
|
if (!this.props.isFullMode) {
|
|
184
182
|
query = {type: 'embedded', module: 'library'};
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
183
|
+
switch (channel) {
|
|
184
|
+
case 'line':
|
|
185
|
+
return this.getLineComponent();
|
|
186
|
+
case 'ftp':
|
|
187
|
+
return this.getFTPComponent();
|
|
188
|
+
case 'facebook':
|
|
189
|
+
return this.getFacebookComponent();
|
|
190
|
+
default:
|
|
191
|
+
break;
|
|
190
192
|
}
|
|
191
193
|
}
|
|
192
194
|
const location = {pathname: `/${channel}`, search: '', query};
|
|
@@ -195,8 +197,6 @@ export class TemplatesV2 extends React.Component { // eslint-disable-line react/
|
|
|
195
197
|
return this.getCallTaskComponent();
|
|
196
198
|
case 'assets':
|
|
197
199
|
return this.getGalleryComponent(location);
|
|
198
|
-
case 'facebook':
|
|
199
|
-
return this.getFacebookComponent();
|
|
200
200
|
default:
|
|
201
201
|
return (<Templates
|
|
202
202
|
key={channel}
|
|
@@ -28,7 +28,7 @@ export function createTemplate(template, callback) {
|
|
|
28
28
|
// FOR EDIT
|
|
29
29
|
|
|
30
30
|
export function editTemplate(template, callback) {
|
|
31
|
-
|
|
31
|
+
|
|
32
32
|
return {
|
|
33
33
|
type: types.EDIT_VIBER_TEMPLATE_REQUEST,
|
|
34
34
|
template,
|
|
@@ -37,7 +37,7 @@ export function editTemplate(template, callback) {
|
|
|
37
37
|
}
|
|
38
38
|
|
|
39
39
|
export function getTemplateDetails(id, callback) {
|
|
40
|
-
|
|
40
|
+
|
|
41
41
|
return {
|
|
42
42
|
type: types.GET_VIBER_TEMPLATE_DETAILS_REQUEST,
|
|
43
43
|
id,
|
|
@@ -511,7 +511,8 @@ const Viber = (props) => {
|
|
|
511
511
|
const ButtonViber = (<>
|
|
512
512
|
<CapInput
|
|
513
513
|
id="viber-button-text"
|
|
514
|
-
type="input"
|
|
514
|
+
type="input"
|
|
515
|
+
onChange={onChangeButtonText}
|
|
515
516
|
label={formatMessage(messages.buttonText)}
|
|
516
517
|
defaultValue={buttonText}
|
|
517
518
|
value={buttonText}
|
|
@@ -61,7 +61,7 @@ export function* editTemplate({ template, callback }) {
|
|
|
61
61
|
|
|
62
62
|
export function* getTemplateDetails({id, callback}) {
|
|
63
63
|
try {
|
|
64
|
-
|
|
64
|
+
|
|
65
65
|
const result = yield call(Api.getTemplateDetails, {id, channel: 'VIBER'});
|
|
66
66
|
yield put({ type: types.GET_VIBER_TEMPLATE_DETAILS_SUCCESS, data: result.response });
|
|
67
67
|
if (callback) {
|
|
@@ -81,7 +81,7 @@ function* watchUploadViberAsset() {
|
|
|
81
81
|
|
|
82
82
|
|
|
83
83
|
function* watchCreateTemplate() {
|
|
84
|
-
|
|
84
|
+
|
|
85
85
|
const watcher = yield takeLatest(types.CREATE_VIBER_TEMPLATE_REQUEST, createViberTemplate);
|
|
86
86
|
yield take(LOCATION_CHANGE);
|
|
87
87
|
yield cancel(watcher);
|
|
@@ -261,7 +261,7 @@ export class MapTemplates extends React.Component { // eslint-disable-line react
|
|
|
261
261
|
this.props.globalActions.addMessageToQueue(message);
|
|
262
262
|
}
|
|
263
263
|
|
|
264
|
-
//
|
|
264
|
+
//
|
|
265
265
|
// this.injectEvents(nextProps.metaEntities.layouts[0].definition);
|
|
266
266
|
// const query = {
|
|
267
267
|
// layout: 'WECHAT',
|
|
@@ -507,7 +507,7 @@ export class MapTemplates extends React.Component { // eslint-disable-line react
|
|
|
507
507
|
}
|
|
508
508
|
|
|
509
509
|
startLoading(ifEdit) {
|
|
510
|
-
|
|
510
|
+
|
|
511
511
|
if (ifEdit) {
|
|
512
512
|
this.setState({loading: true});
|
|
513
513
|
}
|
|
@@ -542,7 +542,7 @@ export class MapTemplates extends React.Component { // eslint-disable-line react
|
|
|
542
542
|
this.isAccountChange = true;
|
|
543
543
|
return;
|
|
544
544
|
}
|
|
545
|
-
|
|
545
|
+
|
|
546
546
|
const {map} = cloneDeep(this.state);
|
|
547
547
|
const templateTags = this.getTagsFromContent(weChatData.content);
|
|
548
548
|
const formData = cloneDeep(this.state.formData);
|
|
@@ -718,7 +718,7 @@ export class MapTemplates extends React.Component { // eslint-disable-line react
|
|
|
718
718
|
// schema.standalone.sections[0].childSections[1].childSections[1].inputFields[0].cols[0].content = weChatData.content;
|
|
719
719
|
|
|
720
720
|
this.setState({schema, map, selectedTemplateTags: templateTags, formData, activeMode: MAP_TEMPLATE_MODE, weChatData}, () => {
|
|
721
|
-
|
|
721
|
+
|
|
722
722
|
this.prepareWeChatPreviewData(weChatData, templateTags);
|
|
723
723
|
this.props.onWeChatMaptemplateStepChange(1);
|
|
724
724
|
});
|
|
@@ -756,7 +756,7 @@ export class MapTemplates extends React.Component { // eslint-disable-line react
|
|
|
756
756
|
}
|
|
757
757
|
|
|
758
758
|
setWechatAccountOptions(weCrmAccounts) {
|
|
759
|
-
|
|
759
|
+
|
|
760
760
|
const schema = cloneDeep(this.state.schema);
|
|
761
761
|
const formData = cloneDeep(this.state.formData);
|
|
762
762
|
if (!isEmpty(weCrmAccounts)) {
|
|
@@ -779,12 +779,12 @@ export class MapTemplates extends React.Component { // eslint-disable-line react
|
|
|
779
779
|
}
|
|
780
780
|
|
|
781
781
|
selectWechatAccount(value, option) {
|
|
782
|
-
//
|
|
782
|
+
//
|
|
783
783
|
// templateActions.setWeChatAccount();
|
|
784
784
|
}
|
|
785
785
|
|
|
786
786
|
setTemplateOptions(weChatData) {
|
|
787
|
-
|
|
787
|
+
|
|
788
788
|
//const {schema, baseSchema} = this.state;
|
|
789
789
|
const schema = cloneDeep(this.state.schema);
|
|
790
790
|
const baseSchema = cloneDeep(this.state.schema);
|
|
@@ -809,7 +809,7 @@ export class MapTemplates extends React.Component { // eslint-disable-line react
|
|
|
809
809
|
}
|
|
810
810
|
});
|
|
811
811
|
this.setState({schema, baseSchema: cloneDeep(baseSchema)}, () => {
|
|
812
|
-
|
|
812
|
+
|
|
813
813
|
if (isEmpty(this.state.baseSchema)) {
|
|
814
814
|
this.setState({baseSchema: cloneDeep(schema)});
|
|
815
815
|
}
|
|
@@ -827,11 +827,11 @@ export class MapTemplates extends React.Component { // eslint-disable-line react
|
|
|
827
827
|
}
|
|
828
828
|
|
|
829
829
|
setContent(content) {
|
|
830
|
-
|
|
830
|
+
|
|
831
831
|
}
|
|
832
832
|
|
|
833
833
|
setEditData() {
|
|
834
|
-
|
|
834
|
+
|
|
835
835
|
const formData = cloneDeep(this.state.formData);
|
|
836
836
|
const baseSchema = cloneDeep(this.state.baseSchema);
|
|
837
837
|
if (isEmpty(baseSchema)) {
|
|
@@ -859,12 +859,12 @@ export class MapTemplates extends React.Component { // eslint-disable-line react
|
|
|
859
859
|
|
|
860
860
|
maskTemplateUrl(url) {
|
|
861
861
|
const selectedWeChatAccount = (!isEmpty(this.props.Templates.selectedWeChatAccount) ? this.props.Templates.selectedWeChatAccount : this.props.WeChat.selectedWeChatAccount);
|
|
862
|
-
|
|
862
|
+
|
|
863
863
|
|
|
864
864
|
const appid = selectedWeChatAccount.configs.wecrm_app_id;
|
|
865
865
|
const domain = selectedWeChatAccount.configs.domain;
|
|
866
866
|
const maskedUrl = `${domain}/web?appid=${appid}&redirect_uri=${escape(url)}&response_type=code&scope=snsapi_base&state=STATE`;
|
|
867
|
-
|
|
867
|
+
|
|
868
868
|
return maskedUrl;
|
|
869
869
|
}
|
|
870
870
|
|
|
@@ -880,7 +880,7 @@ export class MapTemplates extends React.Component { // eslint-disable-line react
|
|
|
880
880
|
}
|
|
881
881
|
|
|
882
882
|
handleOnTagsContextChange = (data) => {
|
|
883
|
-
|
|
883
|
+
|
|
884
884
|
const query = {
|
|
885
885
|
layout: 'WECHAT',
|
|
886
886
|
type: 'TAG',
|
|
@@ -891,11 +891,11 @@ export class MapTemplates extends React.Component { // eslint-disable-line react
|
|
|
891
891
|
}
|
|
892
892
|
|
|
893
893
|
startTemplateCreation(data) {
|
|
894
|
-
|
|
894
|
+
|
|
895
895
|
}
|
|
896
896
|
|
|
897
897
|
selectWechatTemplate() {
|
|
898
|
-
|
|
898
|
+
|
|
899
899
|
}
|
|
900
900
|
|
|
901
901
|
removeActionButtons() {
|
|
@@ -1164,7 +1164,7 @@ export class MapTemplates extends React.Component { // eslint-disable-line react
|
|
|
1164
1164
|
color: "#00000",
|
|
1165
1165
|
}
|
|
1166
1166
|
});
|
|
1167
|
-
|
|
1167
|
+
|
|
1168
1168
|
this.props.actions.createTemplate(obj, (response) => {
|
|
1169
1169
|
obj._id = response.templateID;
|
|
1170
1170
|
if(getFormData) {
|
|
@@ -1177,7 +1177,7 @@ export class MapTemplates extends React.Component { // eslint-disable-line react
|
|
|
1177
1177
|
action: isEdit ? TRACK_EDIT_WECHAT : TRACK_CREATE_WECHAT,
|
|
1178
1178
|
label : 'MapTemplates',
|
|
1179
1179
|
});
|
|
1180
|
-
|
|
1180
|
+
|
|
1181
1181
|
});
|
|
1182
1182
|
}
|
|
1183
1183
|
|
|
@@ -1204,7 +1204,7 @@ export class MapTemplates extends React.Component { // eslint-disable-line react
|
|
|
1204
1204
|
}
|
|
1205
1205
|
|
|
1206
1206
|
injectEvents(schema) {
|
|
1207
|
-
|
|
1207
|
+
|
|
1208
1208
|
if (isEmpty(schema)) {
|
|
1209
1209
|
return false;
|
|
1210
1210
|
}
|
|
@@ -1249,7 +1249,7 @@ export class MapTemplates extends React.Component { // eslint-disable-line react
|
|
|
1249
1249
|
injectMultiColSection(section) {
|
|
1250
1250
|
forEach(section.inputFields, (inputField) => {
|
|
1251
1251
|
forEach(inputField.cols, (col) => {
|
|
1252
|
-
|
|
1252
|
+
|
|
1253
1253
|
let temp = col;
|
|
1254
1254
|
if (temp.type === 'popover') {
|
|
1255
1255
|
temp.content.sections = this.injectSections(temp.content.sections);
|
|
@@ -5,7 +5,7 @@ import * as types from './constants';
|
|
|
5
5
|
|
|
6
6
|
export function* getDefaultWeChatTemplates(params) {
|
|
7
7
|
try {
|
|
8
|
-
|
|
8
|
+
|
|
9
9
|
const result = yield call(Api.getAllTemplates, {channel: params.channel, queryParams: params.queryParams});
|
|
10
10
|
yield put({ type: types.GET_WECHAT_DEFAULT_TEMPLATES_SUCCESS, data: result.response.unMapped, templateData: result.response.mapped});
|
|
11
11
|
} catch (error) {
|
|
@@ -22,7 +22,7 @@ export function* createTemplate({template, callback}) {
|
|
|
22
22
|
// const sidebar = result.response.sidebar;
|
|
23
23
|
yield put({ type: types.CREATE_TEMPLATE_SUCCESS, data: result.response, statusCode: result.status ? result.status.code : '' });
|
|
24
24
|
} catch (error) {
|
|
25
|
-
|
|
25
|
+
|
|
26
26
|
yield put({ type: types.CREATE_TEMPLATE_FAILURE, error });
|
|
27
27
|
}
|
|
28
28
|
}
|
|
@@ -48,7 +48,7 @@ export function* fetchWeCrmAccounts() {
|
|
|
48
48
|
|
|
49
49
|
export function* getTemplateDetails(id) {
|
|
50
50
|
try {
|
|
51
|
-
|
|
51
|
+
|
|
52
52
|
const result = yield call(Api.getTemplateDetails, id);
|
|
53
53
|
// const sidebar = result.response.sidebar;
|
|
54
54
|
yield put({ type: types.GET_TEMPLATE_DETAILS_SUCCESS, data: result.response });
|
|
@@ -32,7 +32,7 @@ export function uploadAsset(file, assetType, fileParams, mode, wechatParams, con
|
|
|
32
32
|
};
|
|
33
33
|
}
|
|
34
34
|
export function saveTemplate(template, callback) {
|
|
35
|
-
|
|
35
|
+
|
|
36
36
|
return {
|
|
37
37
|
type: types.SAVE_TEMPLATE_REQUEST,
|
|
38
38
|
template,
|
|
@@ -12,7 +12,7 @@ export function* getTemplateDetails({id, channel, callback}) {
|
|
|
12
12
|
const params = {
|
|
13
13
|
id, channel,
|
|
14
14
|
};
|
|
15
|
-
|
|
15
|
+
|
|
16
16
|
const result = yield call(Api.getTemplateDetails, params);
|
|
17
17
|
if (callback) {
|
|
18
18
|
yield call(callback, result.response);
|