@capillarytech/creatives-library 3.6.8 → 3.6.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/components/TemplatePreview/WechatRichmediaTemplatePreview/index.js +8 -7
  2. package/components/TemplatePreview/_templatePreview.scss +21 -280
  3. package/components/TemplatePreview/index.js +20 -180
  4. package/components/TemplatePreview/messages.js +0 -16
  5. package/package.json +1 -1
  6. package/v2Components/FormBuilder/index.js +6 -15
  7. package/v2Components/MobilePushPreviewV2/index.js +32 -40
  8. package/v2Components/MobilePushPreviewV2/messages.js +8 -0
  9. package/v2Components/TemplatePreview/WechatRichmediaTemplatePreview/_wechatRichmediaTemplatePrev.scss +0 -64
  10. package/v2Components/TemplatePreview/WechatRichmediaTemplatePreview/index.js +19 -101
  11. package/v2Components/TemplatePreview/WechatRichmediaTemplatePreview/messages.js +0 -12
  12. package/v2Components/TemplatePreview/_templatePreview.scss +4 -13
  13. package/v2Components/TemplatePreview/assets/images/WECHAT_5x.png +0 -0
  14. package/v2Components/TemplatePreview/index.js +20 -147
  15. package/v2Components/TemplatePreview/messages.js +0 -8
  16. package/v2Containers/CreativesContainer/SlideBoxContent.js +2 -15
  17. package/v2Containers/CreativesContainer/SlideBoxHeader.js +1 -1
  18. package/v2Containers/CreativesContainer/index.js +1 -3
  19. package/v2Containers/CreativesContainer/messages.js +2 -2
  20. package/v2Containers/Email/_email.scss +1 -7
  21. package/v2Containers/Email/index.js +13 -39
  22. package/v2Containers/Email/messages.js +0 -4
  23. package/v2Containers/EmailWrapper/index.js +0 -4
  24. package/v2Containers/MobilePush/Create/index.js +0 -5
  25. package/v2Containers/MobilePush/Edit/index.js +0 -5
  26. package/v2Containers/MobilepushWrapper/index.js +1 -4
  27. package/v2Containers/Sms/Create/index.js +1 -2
  28. package/v2Containers/Sms/Edit/index.js +0 -2
  29. package/v2Containers/Templates/index.js +8 -5
@@ -7,15 +7,14 @@
7
7
  import React from 'react';
8
8
  import PropTypes from 'prop-types';
9
9
  // import { connect } from 'react-redux';
10
- import { CapRow, CapColumn, CapButton, CapImage } from '@capillarytech/cap-react-ui-library/';
11
- import { CapHeading, CapLabel, CapTab, CapIcon } from '@capillarytech/cap-ui-library/';
10
+ import { CapRow, CapColumn, CapButton } from '@capillarytech/cap-react-ui-library/';
11
+ import { CapHeading, CapLabel } from '@capillarytech/cap-ui-library/';
12
12
  import { FormattedMessage } from 'react-intl';
13
13
  import _ from 'lodash';
14
14
  import './_wechatRichmediaTemplatePrev.scss';
15
15
  import messages from './messages';
16
- const wechatBody = require('./../assets/images/wechat_mobile_android.svg');
17
- const wechatLockScreenAndroid = require('./../assets/images/wechat-home-screen-android.svg');
18
- const wechatLockScreenIos = require('./../assets/images/home-screen-ios.svg');
16
+ const wechatBody = require('./../assets/images/WECHAT_5x.png');
17
+
19
18
  class WechatRichmediaTemplatePreview extends React.PureComponent { // eslint-disable-line react/prefer-stateless-function
20
19
  preparePreviewData = (mediaList) => {
21
20
  const previewMsg = [];
@@ -24,7 +23,7 @@ class WechatRichmediaTemplatePreview extends React.PureComponent { // eslint-dis
24
23
  const contentData = content[0];
25
24
  previewMsg.push(
26
25
  <div className="richmedia-image-container">
27
- <CapImage alt="default" width="100%" height="102px" src={contentData.image_url} />
26
+ <img alt="default" width="100%" height="102px" src={contentData.image_url} />
28
27
  {mediaListLength !== 1 && (
29
28
  <div className="name-container">
30
29
  <CapHeading type="h4" style={{color: "white"}}>{contentData.title}</CapHeading>
@@ -44,7 +43,7 @@ class WechatRichmediaTemplatePreview extends React.PureComponent { // eslint-dis
44
43
  previewMsg.push(
45
44
  <div className="additional-richmedia-container">
46
45
  <div><CapLabel type="label9" style={{width: '170px', top: '12px', position: 'relative'}}>{data.title}</CapLabel></div>
47
- <CapImage alt="default" width="34px" height="34px" src={data.image_url} />
46
+ <img alt="default" width="34px" height="34px" src={data.image_url} />
48
47
  </div>
49
48
  );
50
49
  });
@@ -62,7 +61,7 @@ class WechatRichmediaTemplatePreview extends React.PureComponent { // eslint-dis
62
61
  returnObj.push(
63
62
  <div style={{ width: "100%", height: 116, position: "relative" }}>
64
63
  <CapRow>
65
- <CapImage alt="default" width="100%" height="110px" src={contentData.image_url} />
64
+ <img alt="default" width="100%" height="110px" src={contentData.image_url} />
66
65
  <div className="preview-overflow-wrap-fields" style={{ position: "absolute", bottom: "5%", left: "10%", width: "auto" }}>{contentData.title ? contentData.title : ""}</div>
67
66
  </CapRow>
68
67
  {Object.keys(mediaList).length === 1 ?
@@ -81,7 +80,7 @@ class WechatRichmediaTemplatePreview extends React.PureComponent { // eslint-dis
81
80
  {contentData.title}
82
81
  </CapColumn>
83
82
  <CapColumn style={{ float: "right" }}>
84
- <CapImage alt="default" width="60px" height="60px" src={contentData.image_url}/>
83
+ <img alt="default" width="60px" height="60px" src={contentData.image_url}/>
85
84
  </CapColumn>
86
85
  </CapRow>
87
86
  );
@@ -92,102 +91,21 @@ class WechatRichmediaTemplatePreview extends React.PureComponent { // eslint-dis
92
91
  goToEdit(e, path) {
93
92
  this.props.onEditClick(e, this.props.templateId, this.props.modeType, path);
94
93
  }
95
- getWechatRichMediaAndroidPreview = (content) => (
96
- <div className="preview-container">
97
- <div className="shell-lock-screen-android align-center">
98
- <div className="lock-screen-preview">
99
- <CapImage className="preview-image" src={wechatLockScreenAndroid} alt="Preview is being generated"/>
100
- <div className="wechat-android-sender-id">
101
- Muji India
102
- </div>
103
- <div className="wechat-android-title">
104
- {content[0].title}
105
- </div>
106
- <div className="wechat-android-action-buttons">
107
- <FormattedMessage {...messages.MarkAsRead} /> <FormattedMessage {...messages.reply} />
108
- </div>
109
- </div>
110
- <div className="main-screen-preview">
111
- <CapImage className="preview-image" src={wechatBody} alt="Preview is being generated"/>
112
- <div className={this.props.type === 'embedded' ? "wechatMsgContainerOutbound" : "wechatMsgContainer"}>
113
- <div className={this.props.type === 'embedded' ? "overflow-handle-preview-outbound" : "overflow-handle-preview"}>
114
- {this.preparePreviewData(content)}
115
- </div>
116
- </div>
117
- </div>
118
- </div>
119
- </div>
120
- );
121
-
122
- getWechatRIchMediaIosPreview = (content) => (
123
- <div className="preview-container">
124
- <div className="shell-lock-screen-android align-center">
125
- <div className="lock-screen-preview">
126
- <CapImage className="preview-image" src={wechatLockScreenIos} alt="Preview is being generated"/>
127
- <div className="wechat-ios-sender-id">
128
- Muji India
129
- </div>
130
- <div className="wechat-ios-title">
131
- {content[0].title}
132
- </div>
133
- <div className="wechat-ios-action-reply">
134
- <FormattedMessage {...messages.reply} />
135
- </div>
136
- <div className="wechat-ios-action-cancel">
137
- <FormattedMessage {...messages.cancel} />
138
- </div>
139
- </div>
140
- <div className="main-screen-preview">
141
- <CapImage className="preview-image" src={wechatBody} alt="Preview is being generated"/>
142
- <div className={this.props.type === 'embedded' ? "wechatMsgContainerOutbound" : "wechatMsgContainer"}>
143
- <div className={this.props.type === 'embedded' ? "overflow-handle-preview-outbound" : "overflow-handle-preview"}>
144
- {this.preparePreviewData(content)}
145
- </div>
146
- </div>
147
- </div>
148
- </div>
149
- </div>
150
- );
151
-
152
- getContentForSlidebox = (content) => {
153
- return (
154
- !this.props.showLockScreenPreview ? (
155
- <div className={`preview-container ${this.props.type === 'embedded' ? 'embedded-preview' : ''}`}>
156
- <div className="shell align-center" id="sms-preview">
157
- <CapImage className="preview-image" src={wechatBody} alt="Preview is being generated"/>
158
- <div className={this.props.type === 'embedded' ? "wechatMsgContainerOutbound" : "wechatMsgContainer"}>
159
- <div className={this.props.type === 'embedded' ? "overflow-handle-preview-outbound" : "overflow-handle-preview"}>
160
- {this.preparePreviewData(this.props.content)}
161
- </div>
162
- </div>
163
- </div>
164
- {this.props.showEdit ? <CapButton onClick={(e) => this.goToEdit(e, this.props.path)} className="preview-buttons" type="primary">{this.props.type === 'embedded' ? <FormattedMessage {...messages.select} /> : <FormattedMessage {...messages.edit} /> }</CapButton> : ""}
165
- </div>
166
- ) : (
167
- <CapTab
168
- panes={[
169
- {
170
- content: this.getWechatRichMediaAndroidPreview(this.props.content),
171
- tab: <CapIcon type="android" size='m' />,
172
- key: 'android',
173
- },
174
- {
175
- content: this.getWechatRIchMediaIosPreview(this.props.content),
176
- tab: <CapIcon type="ios" size='m' />,
177
- key: 'ios',
178
- },
179
- ]}
180
- tabBarStyle={{margin: 'auto', width: '14%'}}
181
- />
182
- )
183
- );
184
- };
185
-
186
94
  render() {
187
95
  return (
188
96
  <div>
189
97
  {this.props.contentForSlideBox ?
190
- this.getContentForSlidebox(this.props.content)
98
+ <div className={`preview-container ${this.props.type === 'embedded' ? 'embedded-preview' : ''}`}>
99
+ <div className="shell align-center" id="sms-preview">
100
+ <img className="preview-image" src={wechatBody} alt="Preview is being generated"/>
101
+ <div className={this.props.type === 'embedded' ? "wechatMsgContainerOutbound" : "wechatMsgContainer"}>
102
+ <div className={this.props.type === 'embedded' ? "overflow-handle-preview-outbound" : "overflow-handle-preview"}>
103
+ {this.preparePreviewData(this.props.content)}
104
+ </div>
105
+ </div>
106
+ </div>
107
+ {this.props.showEdit ? <CapButton onClick={(e) => this.goToEdit(e, this.props.path)} className="preview-buttons" type="primary">{this.props.type === 'embedded' ? <FormattedMessage {...messages.select} /> : <FormattedMessage {...messages.edit} /> }</CapButton> : ""}
108
+ </div>
191
109
  :
192
110
  <div className={`preview-container ${this.props.type === 'embedded' ? 'embedded-preview' : ''}`}>
193
111
  <div className="shell align-center" id="sms-preview">
@@ -18,16 +18,4 @@ export default defineMessages({
18
18
  id: 'creatives.components.WechatRichmediaTemplatePreview.edit',
19
19
  defaultMessage: 'Edit',
20
20
  },
21
- MarkAsRead: {
22
- id: 'creatives.components.WechatRichmediaTemplatePreview.MarkAsRead',
23
- defaultMessage: 'Mark as read',
24
- },
25
- reply: {
26
- id: 'creatives.components.WechatRichmediaTemplatePreview.reply',
27
- defaultMessage: 'Reply',
28
- },
29
- cancel: {
30
- id: 'creatives.components.WechatRichmediaTemplatePreview.cancel',
31
- defaultMessage: 'Cancel',
32
- },
33
21
  });
@@ -1,4 +1,4 @@
1
- .shell-v2 {
1
+ .shell {
2
2
  position: relative;
3
3
  -webkit-transform: translate(-50%);
4
4
  transform: translate(-50%);
@@ -15,8 +15,8 @@
15
15
 
16
16
  .msgContainer {
17
17
  position: absolute;
18
- top: 20%;
19
- left: 23%;
18
+ top: 18%;
19
+ left: 28.8%;
20
20
  width: 42%;
21
21
  height: 336px;
22
22
  display: -webkit-box;
@@ -37,9 +37,6 @@
37
37
  left: 14px;
38
38
  }
39
39
  }
40
- &.wechat{
41
- width: 52%;
42
- }
43
40
 
44
41
  .message-pop{
45
42
  .unicode-disabled{
@@ -57,7 +54,7 @@
57
54
  line-height: 14px;
58
55
  padding: 0 8px 8px 8px;
59
56
  font-size: 10px;
60
- width: 100%;
57
+ width: 80%;
61
58
  font-family: 'open-sans';
62
59
  .message-pop-item{
63
60
  padding: 4px;
@@ -362,9 +359,3 @@
362
359
  font-size: 12px;
363
360
  }
364
361
  }
365
-
366
- .test-and-preview-container{
367
- display: flex;
368
- margin-top: -12px;
369
- margin-bottom: 12px;
370
- }
@@ -10,114 +10,17 @@ import React from 'react';
10
10
  import _ from 'lodash';
11
11
  import { injectIntl, FormattedMessage, intlShape } from 'react-intl';
12
12
  // import styled from 'styled-components';
13
- import {CapColumn, CapRow, CapHeading, CapIcon, CapButton, CapImage} from '@capillarytech/cap-ui-library';
13
+ import {CapColumn, CapRow, CapHeading} from '@capillarytech/cap-ui-library';
14
14
  import './_templatePreview.scss';
15
15
  import {updateCharCount} from '../../utils/smsCharCountV2';
16
16
  import messages from './messages';
17
- import { WECHAT } from '../../v2Containers/CreativesContainer/constants';
18
- const wechatBodyNew = require('./assets/images/wechat_mobile_android.svg');
19
- const smsMobileAndroid = require('./assets/images/sms_mobile_android.svg');
17
+ const smsIcon = require('./assets/images/user-icon.svg');
18
+ const wechatBody = require('./assets/images/WECHAT_5x.png');
19
+ const smsBody = require('./assets/images/mobile.svg');
20
20
  const androidPushMessagePhone = require('./assets/images/androidPushMessage.svg');
21
21
  const iPhonePushMessagePhone = require('./assets/images/iPhonePushMessage.svg');
22
22
 
23
23
  class TemplatePreview extends React.Component { // eslint-disable-line react/prefer-stateless-function
24
- onPreviewContentClicked = (channel) => {
25
- const IOSContent = (this.props.templateDataRaw && this.props.templateDataRaw.versions.base.IOS) ||
26
- ((this.props.device === 'iphone' || this.props.device === 'ios') && this.props.content);
27
- const ANDROIDContent = (this.props.templateDataRaw && this.props.templateDataRaw.versions.base.ANDROID) ||
28
- (this.props.device === 'android' && this.props.content);
29
- const mobilePushPreviewContent = [];
30
- if (this.props.channel === 'MOBILEPUSH') {
31
- const previewObj = {
32
- channel: this.props.channel,
33
- accountId: this.props.templateDataRaw && this.props.templateDataRaw.definition.accountId,
34
- messageSubject: this.props.templateDataRaw && this.props.templateDataRaw.name,
35
- id: 'message_content_id_1',
36
- };
37
- if (IOSContent) {
38
- previewObj.iosContent = {
39
- title: IOSContent.title || IOSContent.header,
40
- message: IOSContent.message || IOSContent.bodyText,
41
- deviceType: "IOS",
42
- expandableDetails: IOSContent.expandableDetails ||
43
- {
44
- style: "BIG_PICTURE",
45
- image: this.props.content.bodyImage,
46
- message: this.props.content.bodyText,
47
- },
48
- };
49
- }
50
- if (ANDROIDContent) {
51
- previewObj.androidContent = {
52
- title: ANDROIDContent.title || ANDROIDContent.header,
53
- message: ANDROIDContent.message || ANDROIDContent.bodyText,
54
- deviceType: "ANDROID",
55
- expandableDetails: ANDROIDContent.expandableDetails ||
56
- {
57
- style: "BIG_PICTURE",
58
- image: this.props.content.bodyImage,
59
- message: this.props.content.bodyText,
60
- },
61
- };
62
- }
63
- mobilePushPreviewContent.push(previewObj);
64
- }
65
- const previewContent = this.props.channel === 'MOBILEPUSH' ? mobilePushPreviewContent : this.props.content;
66
- const params = {
67
- content: previewContent,
68
- channel,
69
- };
70
- this.props.onPreviewContentClicked(params);
71
- };
72
-
73
- onTestContentClicked = (channel) => {
74
- let mobilePushPreviewContent = {};
75
- const IOSContent = (this.props.templateDataRaw && this.props.templateDataRaw.versions.base.IOS) ||
76
- ((this.props.device === 'iphone' || this.props.device === 'ios') && this.props.content);
77
- const ANDROIDContent = (this.props.templateDataRaw && this.props.templateDataRaw.versions.base.ANDROID) ||
78
- (this.props.device === 'android' && this.props.content);
79
- if (this.props.channel === 'MOBILEPUSH') {
80
- mobilePushPreviewContent = {
81
- channel: this.props.channel,
82
- accountId: this.props.templateDataRaw && this.props.templateDataRaw.definition.accountId,
83
- messageSubject: this.props.templateDataRaw && this.props.templateDataRaw.name,
84
- id: 'message_content_id_1',
85
- };
86
- if (ANDROIDContent) {
87
- mobilePushPreviewContent.androidContent = {
88
- title: ANDROIDContent.title || ANDROIDContent.header,
89
- message: ANDROIDContent.message || ANDROIDContent.bodyText,
90
- deviceType: "ANDROID",
91
- expandableDetails: ANDROIDContent.expandableDetails ||
92
- {
93
- style: "BIG_PICTURE",
94
- image: this.props.content.bodyImage,
95
- message: this.props.content.bodyText,
96
- },
97
- };
98
- }
99
- if (IOSContent) {
100
- mobilePushPreviewContent.iosContent = {
101
- title: IOSContent.title || IOSContent.header,
102
- message: IOSContent.message || IOSContent.bodyText,
103
- deviceType: "IOS",
104
- expandableDetails: IOSContent.expandableDetails ||
105
- {
106
- style: "BIG_PICTURE",
107
- image: this.props.content.bodyImage,
108
- message: this.props.content.bodyText,
109
- },
110
- };
111
- }
112
- }
113
- const previewContent = this.props.channel === 'MOBILEPUSH' ? mobilePushPreviewContent : this.props.content;
114
- const params = {
115
- content: previewContent,
116
- channel,
117
- };
118
- this.props.onTestContentClicked(params);
119
- };
120
-
121
24
  render() {
122
25
  let content = channel && channel.toLowerCase() === 'sms' ? [this.props.content] : this.props.content;
123
26
  const channel = this.props.channel;
@@ -161,43 +64,16 @@ class TemplatePreview extends React.Component { // eslint-disable-line react/pre
161
64
  </CapHeading>}
162
65
  </CapColumn>}
163
66
  <CapColumn span={this.props.showCount ? 8 : 24}>
164
- {this.props.showTestAndPreviewIcon && this.props.channel !== WECHAT && (
165
- <div className="test-and-preview-container">
166
- <CapButton
167
- style={{
168
- color: '#2466ea',
169
- display: 'inline-block',
170
- padding: '0 6px',
171
- marginTop: '12px',
172
- }}
173
- type="flat"
174
- onClick={() => this.onPreviewContentClicked(this.props.channel)}
175
- >
176
- <CapIcon type="eye"/><FormattedMessage {...messages.preview} />
177
- </CapButton>
178
- <CapButton
179
- style={{
180
- color: '#2466ea',
181
- display: 'inline-block',
182
- padding: '0 6px',
183
- marginTop: '12px',
184
- }}
185
- type="flat"
186
- onClick={() => this.onTestContentClicked(this.props.channel)}
187
- >
188
- <CapIcon type="lab"/><FormattedMessage {...messages.testMessage} />
189
- </CapButton>
190
- </div>
191
- )}
192
67
  <div className={`preview-container ${type === 'embedded' ? 'embedded-preview' : ''}`}>
193
68
  { channel && channel.toLowerCase() === 'sms' &&
194
69
  <div>
195
- <div className="shell-v2 align-center" id="sms-preview">
196
- <CapImage className="preview-image sms" src={smsMobileAndroid} alt="Preview is being generated"/>
70
+ <div className="shell align-center" id="sms-preview">
71
+ <img className="preview-image sms" src={smsBody} alt="Preview is being generated"/>
197
72
  <div className="msgContainer sms">
73
+ <img className="sms-icon" src={smsIcon} alt="Sms icon" />
198
74
  <div className={"message-pop sms"}>
199
75
  {content && content.length && content.map((msg, index) =>
200
- <CapColumn key={`"message-pop-content-${index}`} className="message-pop-item align-left" style={{ background: '#FFFFFF', color: '#091e42'}}>
76
+ <CapColumn key={`"message-pop-content-${index}`} className="message-pop-item align-left" style={{ background: '#3F51B5', color: '#ffffff'}}>
201
77
  {msg}
202
78
  </CapColumn>)
203
79
  }
@@ -220,9 +96,10 @@ class TemplatePreview extends React.Component { // eslint-disable-line react/pre
220
96
  </div>
221
97
  }
222
98
  {channel && channel.toLowerCase() === 'wechat' ?
223
- ( <div className="shell-v2 align-center" id="sms-preview">
224
- <CapImage className="preview-image" src={channel.toLowerCase() === 'wechat' ? wechatBodyNew : smsMobileAndroid} alt="Preview is being generated"/>
225
- <div className="msgContainer wechat">
99
+ ( <div className="shell align-center" id="sms-preview">
100
+ <img className="preview-image" src={channel.toLowerCase() === 'wechat' ? wechatBody : smsBody} alt="Preview is being generated"/>
101
+ <div className="msgContainer">
102
+ {this.props.channel.toLowerCase() === 'wechat' ? <div className="sms-icon" style={{ width: '25px', height: '25px', background: '#2E89DF' }}></div> : <img className="sms-icon" src={smsIcon} alt={this.props.intl.formatMessage(messages.smsIcon)} />}
226
103
  <div className="message-pop align-left" style={{ background: `${this.props.channel.toLowerCase() === 'wechat' ? '#ffffff' : '#3F51B5'}`, color: `${this.props.channel.toLowerCase() === 'wechat' ? '#333333' : '#ffffff'}`}}>{content}
227
104
  </div>
228
105
  </div>
@@ -230,10 +107,10 @@ class TemplatePreview extends React.Component { // eslint-disable-line react/pre
230
107
  ) : ''
231
108
  }
232
109
  { channel && (channel.toLowerCase() === 'mobilepush') &&
233
- (<div className="shell-v2 align-center" id="mobilepush-preview">
234
- <CapImage className="preview-image" src={this.props.device === "android" ? androidPushMessagePhone : iPhonePushMessagePhone} alt={this.props.intl.formatMessage(messages.previewGenerated)}/>
110
+ (<div className="shell align-center" id="mobilepush-preview">
111
+ <img className="preview-image" src={this.props.device === "android" ? androidPushMessagePhone : iPhonePushMessagePhone} alt={this.props.intl.formatMessage(messages.previewGenerated)}/>
235
112
  {(!!content.header || !!content.bodyText || !!content.bodyImage) &&
236
- <div className={`${this.props.device === 'ios' ? 'iphone' : this.props.device}-push-message-Container`}>
113
+ <div className={`${this.props.device}-push-message-Container`}>
237
114
  {this.props.device === "android" ?
238
115
  <div className="message-pop align-left">
239
116
  <div className="app-name">
@@ -246,7 +123,7 @@ class TemplatePreview extends React.Component { // eslint-disable-line react/pre
246
123
  {content.bodyText}
247
124
  </div>
248
125
  {content.bodyImage && <div className="body-image">
249
- <CapImage src={content.bodyImage} alt="" />
126
+ <img src={content.bodyImage} alt="" />
250
127
  </div>}
251
128
  {content.actions.filter((action) => action.label).length ?
252
129
  <div className="actions">
@@ -261,7 +138,7 @@ class TemplatePreview extends React.Component { // eslint-disable-line react/pre
261
138
  <span className="app-icon"></span>{content.appName ? content.appName : "App name"} <i className="material-icons">{this.props.intl.formatMessage(messages.close)}</i>
262
139
  </div>
263
140
  {content.bodyImage && <div className="body-image">
264
- <CapImage src={content.bodyImage} alt=""/>
141
+ <img src={content.bodyImage} alt=""/>
265
142
  </div>}
266
143
  <div className="title">
267
144
  {content.header}
@@ -279,12 +156,12 @@ class TemplatePreview extends React.Component { // eslint-disable-line react/pre
279
156
  }
280
157
  {
281
158
  channel && channel.toLowerCase() === 'line' ? (
282
- <div className="shell-v2 align-center" id="sms-preview">
283
- <CapImage className="preview-image" src={wechatBodyNew} alt={this.props.intl.formatMessage(messages.previewGenerated)}/>
159
+ <div className="shell align-center" id="sms-preview">
160
+ <img className="preview-image" src={wechatBody} alt={this.props.intl.formatMessage(messages.previewGenerated)}/>
284
161
  <div className="msgContainer">
285
162
  <div className="sms-icon" style={{ width: '25px', height: '25px', background: '#2E89DF' }}></div>
286
163
  <div className="message-pop align-left" style={{ background: '#ffffff', color: '#333333' }}>
287
- { (content && content.bodyImage) ? <CapImage src={content.bodyImage} alt="ddd" style={{maxWidth: '100%'}}/> : '' }
164
+ { (content && content.bodyImage) ? <img src={content.bodyImage} alt="ddd" style={{maxWidth: '100%'}}/> : '' }
288
165
  { (content && content.bodyText) ? content.bodyText : ''}
289
166
  </div>
290
167
  </div>
@@ -312,10 +189,6 @@ TemplatePreview.propTypes = {
312
189
  unicodeEnabled: PropTypes.bool,
313
190
  showCount: PropTypes.bool,
314
191
  intl: intlShape.isRequired,
315
- templateDataRaw: PropTypes.object,
316
- onPreviewContentClicked: PropTypes.func,
317
- onTestContentClicked: PropTypes.func,
318
- showTestAndPreviewIcon: PropTypes.bool,
319
192
  };
320
193
 
321
194
  export default (injectIntl(TemplatePreview));
@@ -50,12 +50,4 @@ export default defineMessages({
50
50
  id: 'creatives.componentsV2.TemplatePreview.smsIcon',
51
51
  defaultMessage: 'Sms Icon',
52
52
  },
53
- preview: {
54
- id: 'creatives.componentsV2.TemplatePreview.preview',
55
- defaultMessage: 'Preview',
56
- },
57
- testMessage: {
58
- id: 'creatives.componentsV2.TemplatePreview.testMessage',
59
- defaultMessage: 'Test Message',
60
- },
61
53
  });
@@ -69,8 +69,6 @@ function SlideBoxContent(props) {
69
69
  selectedWeChatAccount,
70
70
  weChatMaptemplateStep,
71
71
  onWeChatMaptemplateStepChange,
72
- onTestContentClicked,
73
- onPreviewContentClicked,
74
72
  onFacebookSubmit,
75
73
  } = props;
76
74
  const type = messageDetails.type.toLowerCase(); // type is context in get tags values : outbound | dvs | referral | loyalty | coupons
@@ -106,6 +104,7 @@ function SlideBoxContent(props) {
106
104
  isEmailPreview = slidBoxContent === 'preview' && channel === constants.EMAIL;
107
105
  isMpushPreview = slidBoxContent === 'preview' && channel === constants.MOBILE_PUSH;
108
106
  }
107
+
109
108
  return (
110
109
  <CreativesWrapper>
111
110
  {!isFullMode && slidBoxContent === 'templates' && (
@@ -186,8 +185,6 @@ function SlideBoxContent(props) {
186
185
  templateData={templateData}
187
186
  forwardedTags={forwardedTags}
188
187
  selectedOfferDetails={selectedOfferDetails}
189
- onPreviewContentClicked={onPreviewContentClicked}
190
- onTestContentClicked={onTestContentClicked}
191
188
  />
192
189
  )}
193
190
  {
@@ -221,8 +218,6 @@ function SlideBoxContent(props) {
221
218
  isFullMode={isFullMode}
222
219
  forwardedTags={forwardedTags}
223
220
  selectedOfferDetails={selectedOfferDetails}
224
- onPreviewContentClicked={onPreviewContentClicked}
225
- onTestContentClicked={onTestContentClicked}
226
221
  />
227
222
  )}
228
223
  {isEmailCreate && (
@@ -245,8 +240,6 @@ function SlideBoxContent(props) {
245
240
  onValidationFail={onValidationFail}
246
241
  forwardedTags={forwardedTags}
247
242
  selectedOfferDetails={selectedOfferDetails}
248
- onPreviewContentClicked={onPreviewContentClicked}
249
- onTestContentClicked={onTestContentClicked}
250
243
  />
251
244
  )}
252
245
  {(isEditEmailWithId || isEmailEditWithContent) && (
@@ -270,8 +263,6 @@ function SlideBoxContent(props) {
270
263
  onValidationFail={onValidationFail}
271
264
  forwardedTags={forwardedTags}
272
265
  selectedOfferDetails={selectedOfferDetails}
273
- onPreviewContentClicked={onPreviewContentClicked}
274
- onTestContentClicked={onTestContentClicked}
275
266
  />
276
267
  )}
277
268
  {isEditMPush &&
@@ -292,8 +283,6 @@ function SlideBoxContent(props) {
292
283
  onValidationFail={onValidationFail}
293
284
  forwardedTags={forwardedTags}
294
285
  selectedOfferDetails={selectedOfferDetails}
295
- onPreviewContentClicked={onPreviewContentClicked}
296
- onTestContentClicked={onTestContentClicked}
297
286
  />
298
287
  }
299
288
  {isCreateMPush &&
@@ -318,9 +307,7 @@ function SlideBoxContent(props) {
318
307
  query={query}
319
308
  forwardedTags={forwardedTags}
320
309
  onValidationFail={onValidationFail}
321
- selectedOfferDetails={selectedOfferDetails}
322
- onPreviewContentClicked={onPreviewContentClicked}
323
- onTestContentClicked={onTestContentClicked}/>
310
+ selectedOfferDetails={selectedOfferDetails}/>
324
311
  }
325
312
  {
326
313
  isEditFacebook && (
@@ -48,7 +48,7 @@ function SlideBoxHeader(props) {
48
48
  )}
49
49
  {!showTemplateNameHeader && slidBoxContent === 'editTemplate' && (
50
50
  <CapHeader
51
- title={<FormattedMessage {...messages.editMessageContent} values={{channel: getChannelLabel(channel)}}/>}
51
+ title={<FormattedMessage {...messages.editMessageContent} />}
52
52
  prefix={creativesMode !== 'edit' && !isFullMode && showPrefix &&
53
53
  <PrefixWrapper>
54
54
  <CapIcons.backIcon onClick={onShowTemplates} />
@@ -473,7 +473,7 @@ class Creatives extends React.Component {
473
473
  }
474
474
  render() {
475
475
  const {slidBoxContent, isGetFormData, showSlideBox, templateData, currentChannel, emailCreateMode, templateStep, isLoadingContent, mobilePushCreateMode, isDiscardMessage, weChatTemplateType, weChatMaptemplateStep} = this.state;
476
- const {isFullMode, creativesMode, cap, isUploading, channelsToHide, selectedWeChatAccount, forwardedTags, channelsToDisable, selectedOfferDetails, onTestContentClicked, onPreviewContentClicked, getCreativesData} = this.props;
476
+ const {isFullMode, creativesMode, cap, isUploading, channelsToHide, selectedWeChatAccount, forwardedTags, channelsToDisable, selectedOfferDetails, getCreativesData} = this.props;
477
477
  const mapTemplateCreate = slidBoxContent === 'createTemplate' && weChatTemplateType === MAP_TEMPLATE && templateStep !== 'modeSelection';
478
478
  /* TODO: Instead of passing down same props separately to each component down, write common function to these props and pass it accordingly */
479
479
  return (
@@ -538,8 +538,6 @@ class Creatives extends React.Component {
538
538
  weChatMaptemplateStep={weChatMaptemplateStep}
539
539
  selectedWeChatAccount={selectedWeChatAccount}
540
540
  onWeChatMaptemplateStepChange={this.onWeChatMaptemplateStepChange}
541
- onPreviewContentClicked={onPreviewContentClicked}
542
- onTestContentClicked={onTestContentClicked}
543
541
  onFacebookSubmit={getCreativesData}
544
542
  />
545
543
  }
@@ -256,11 +256,11 @@ export default defineMessages({
256
256
  },
257
257
  "editMessageContent": {
258
258
  id: `${scope}.editMessageContent`,
259
- defaultMessage: `Edit {channel}`,
259
+ defaultMessage: `Edit message content`,
260
260
  },
261
261
  "createMessageContent": {
262
262
  id: `${scope}.createMessageContent`,
263
- defaultMessage: `New {channel}`,
263
+ defaultMessage: `New {channel} message`,
264
264
  },
265
265
  "creativeTemplatesDesc": {
266
266
  id: `${scope}.creativeTemplatesDesc`,
@@ -123,13 +123,7 @@
123
123
  margin-right: 0 !important;
124
124
  }
125
125
  }
126
- .test-and-preview-container{
127
- position: absolute;
128
- left: 70%;
129
- top: 4%;
130
- margin-top: 0;
131
- z-index: 999;
132
- }
126
+
133
127
  }
134
128
 
135
129
  .version-popover {