@capillarytech/creatives-library 6.11.8 → 6.12.0

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 (59) hide show
  1. package/components/TemplatePreview/index.js +2 -1
  2. package/containers/Cap/actions.js +2 -1
  3. package/containers/Cap/index.js +12 -5
  4. package/containers/Cap/sagas.js +4 -1
  5. package/global-styles.js +4 -0
  6. package/package.json +1 -1
  7. package/v2Components/AccessForbidden/index.js +20 -0
  8. package/v2Components/AccessForbidden/messages.js +14 -0
  9. package/v2Components/NavigationBar/messages.js +13 -13
  10. package/v2Components/TemplatePreview/WechatRichmediaTemplatePreview/_wechatRichmediaTemplatePrev.scss +151 -151
  11. package/v2Components/TemplatePreview/WechatRichmediaTemplatePreview/messages.js +33 -33
  12. package/v2Components/TemplatePreview/WechatRichmediaTemplatePreview/tests/index.test.js +10 -10
  13. package/v2Components/TemplatePreview/assets/images/androidPushMessage.svg +44 -44
  14. package/v2Components/TemplatePreview/assets/images/home-screen-android.svg +21 -21
  15. package/v2Components/TemplatePreview/assets/images/home-screen-ios.svg +16 -16
  16. package/v2Components/TemplatePreview/assets/images/iPhonePushMessage.svg +134 -134
  17. package/v2Components/TemplatePreview/assets/images/mobile.svg +23 -23
  18. package/v2Components/TemplatePreview/assets/images/sms_mobile_android.svg +22 -22
  19. package/v2Components/TemplatePreview/assets/images/user-icon.svg +18 -18
  20. package/v2Components/TemplatePreview/assets/images/wechat-home-screen-android.svg +21 -21
  21. package/v2Components/TemplatePreview/assets/images/wechat-mobile.svg +77 -77
  22. package/v2Components/TemplatePreview/assets/images/wechat_mobile_android.svg +20 -20
  23. package/v2Components/TemplatePreview/index.js +2 -1
  24. package/v2Components/TemplatePreview/tests/index.test.js +10 -10
  25. package/v2Containers/App/constants.js +2 -0
  26. package/v2Containers/Cap/index.js +8 -2
  27. package/v2Containers/CreativesContainer/actions.js +27 -27
  28. package/v2Containers/CreativesContainer/constants.js +17 -17
  29. package/v2Containers/CreativesContainer/index.scss +44 -44
  30. package/v2Containers/CreativesContainer/messages.js +305 -305
  31. package/v2Containers/CreativesContainer/reducer.js +29 -29
  32. package/v2Containers/CreativesContainer/sagas.js +11 -11
  33. package/v2Containers/CreativesContainer/selectors.js +30 -30
  34. package/v2Containers/CreativesContainer/tests/actions.test.js +18 -18
  35. package/v2Containers/CreativesContainer/tests/index.test.js +10 -10
  36. package/v2Containers/CreativesContainer/tests/reducer.test.js +9 -9
  37. package/v2Containers/CreativesContainer/tests/sagas.test.js +15 -15
  38. package/v2Containers/CreativesContainer/tests/selectors.test.js +10 -10
  39. package/v2Containers/Line/Container/Video/index.js +4 -1
  40. package/v2Containers/Templates/tests/actions.test.js +18 -18
  41. package/v2Containers/Templates/tests/index.test.js +10 -10
  42. package/v2Containers/Templates/tests/reducer.test.js +9 -9
  43. package/v2Containers/Templates/tests/sagas.test.js +15 -15
  44. package/v2Containers/Templates/tests/selectors.test.js +10 -10
  45. package/v2Containers/TemplatesV2/TemplatesV2.style.js +29 -29
  46. package/v2Containers/TemplatesV2/actions.js +16 -16
  47. package/v2Containers/TemplatesV2/constants.js +10 -10
  48. package/v2Containers/TemplatesV2/index.js +27 -17
  49. package/v2Containers/TemplatesV2/messages.js +61 -61
  50. package/v2Containers/TemplatesV2/selectors.js +25 -25
  51. package/v2Containers/TemplatesV2/tests/actions.test.js +18 -18
  52. package/v2Containers/TemplatesV2/tests/index.test.js +10 -10
  53. package/v2Containers/TemplatesV2/tests/reducer.test.js +9 -9
  54. package/v2Containers/TemplatesV2/tests/sagas.test.js +15 -15
  55. package/v2Containers/TemplatesV2/tests/selectors.test.js +10 -10
  56. package/v2Components/BeeEditor/index.js +0 -263
  57. package/v2Components/BeeEditor/index.scss +0 -11
  58. package/v2Components/BeeEditor/messages.js +0 -71
  59. package/v2Components/BeeEditor/tests/index.test.js +0 -10
@@ -1,20 +1,20 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="220" height="472" viewBox="0 0 220 472">
2
- <g fill="none" fill-rule="evenodd">
3
- <rect width="220" height="472" fill="#101211" rx="26"/>
4
- <rect width="202" height="404" x="9" y="36" fill="#F4F5F7" rx="9"/>
5
- <rect width="182" height="136" x="19" y="112" fill="#F4F5F7" rx="17.5"/>
6
- <path fill="#F4F5F7" d="M18 36h184c4.97 0 9 4.03 9 9v6H9v-6c0-4.97 4.03-9 9-9z"/>
7
- <path fill="#F4F5F7" d="M9 51H211V82H9z" transform="matrix(1 0 0 -1 0 133)"/>
8
- <rect width="52" height="5" x="84" y="14" fill="#2E2E2E" rx="2.5"/>
9
- <rect width="52" height="5" x="84" y="455" fill="#2E2E2E" rx="2.5"/>
10
- <circle cx="45.5" cy="19.5" r="5.5" fill="#2E2E2E"/>
11
- <circle cx="65.5" cy="19.5" r="3.5" fill="#2E2E2E"/>
12
- <text fill="#000" font-family="Roboto-Regular, Roboto" font-size="12" letter-spacing=".175">
13
- <tspan x="49.5" y="71">Muji India</tspan>
14
- </text>
15
- <circle cx="199" cy="63" r="1" fill="#000"/>
16
- <circle cx="199" cy="70" r="1" fill="#000"/>
17
- <circle cx="199" cy="66.5" r="1" fill="#000"/>
18
- <path fill="#000" d="M28 66c0 .279-.226.505-.505.505h-5.556l2.42 2.42c.198.197.198.518 0 .716-.198.198-.52.198-.718 0l-2.934-2.934c-.39-.39-.39-1.024 0-1.414l2.934-2.934c.198-.198.52-.198.718 0 .198.198.198.519 0 .717l-2.42 2.419h5.556c.279 0 .505.226.505.505z"/>
19
- </g>
20
- </svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="220" height="472" viewBox="0 0 220 472">
2
+ <g fill="none" fill-rule="evenodd">
3
+ <rect width="220" height="472" fill="#101211" rx="26"/>
4
+ <rect width="202" height="404" x="9" y="36" fill="#F4F5F7" rx="9"/>
5
+ <rect width="182" height="136" x="19" y="112" fill="#F4F5F7" rx="17.5"/>
6
+ <path fill="#F4F5F7" d="M18 36h184c4.97 0 9 4.03 9 9v6H9v-6c0-4.97 4.03-9 9-9z"/>
7
+ <path fill="#F4F5F7" d="M9 51H211V82H9z" transform="matrix(1 0 0 -1 0 133)"/>
8
+ <rect width="52" height="5" x="84" y="14" fill="#2E2E2E" rx="2.5"/>
9
+ <rect width="52" height="5" x="84" y="455" fill="#2E2E2E" rx="2.5"/>
10
+ <circle cx="45.5" cy="19.5" r="5.5" fill="#2E2E2E"/>
11
+ <circle cx="65.5" cy="19.5" r="3.5" fill="#2E2E2E"/>
12
+ <text fill="#000" font-family="Roboto-Regular, Roboto" font-size="12" letter-spacing=".175">
13
+ <tspan x="49.5" y="71">Muji India</tspan>
14
+ </text>
15
+ <circle cx="199" cy="63" r="1" fill="#000"/>
16
+ <circle cx="199" cy="70" r="1" fill="#000"/>
17
+ <circle cx="199" cy="66.5" r="1" fill="#000"/>
18
+ <path fill="#000" d="M28 66c0 .279-.226.505-.505.505h-5.556l2.42 2.42c.198.197.198.518 0 .716-.198.198-.52.198-.718 0l-2.934-2.934c-.39-.39-.39-1.024 0-1.414l2.934-2.934c.198-.198.52-.198.718 0 .198.198.198.519 0 .717l-2.42 2.419h5.556c.279 0 .505.226.505.505z"/>
19
+ </g>
20
+ </svg>
@@ -191,6 +191,7 @@ class TemplatePreview extends React.Component { // eslint-disable-line react/pre
191
191
  alignItems: 'center',
192
192
  backgroundColor: !video ? 'transparent' : CAP_G06,
193
193
  marginTop: 0,
194
+ padding: 0,
194
195
  }}
195
196
  key={video}
196
197
  >
@@ -198,7 +199,7 @@ class TemplatePreview extends React.Component { // eslint-disable-line react/pre
198
199
  video
199
200
  ? (
200
201
  <>
201
- <video width="126" style={{ opacity: 0.5 }}>
202
+ <video style={{ opacity: 0.5, width: '100%' }}>
202
203
  <source src={video} type="video/mp4" />
203
204
  </video>
204
205
  <div
@@ -1,10 +1,10 @@
1
- // import React from 'react';
2
- // import { shallow } from 'enzyme';
3
-
4
- // import TemplatePreview from '../index';
5
-
6
- describe('<TemplatePreview />', () => {
7
- it('Expect to have unit tests specified', () => {
8
- expect(true).toEqual(false);
9
- });
10
- });
1
+ // import React from 'react';
2
+ // import { shallow } from 'enzyme';
3
+
4
+ // import TemplatePreview from '../index';
5
+
6
+ describe('<TemplatePreview />', () => {
7
+ it('Expect to have unit tests specified', () => {
8
+ expect(true).toEqual(false);
9
+ });
10
+ });
@@ -47,3 +47,5 @@ export const CHANNEL_EDIT_TRACK_MAPPING = {
47
47
  };
48
48
  export const GTM_TRACKING_ID = 'UA-110024621-2';
49
49
  export const BEE_PLUGIN = 'BEE_PLUGIN';
50
+
51
+ export const CREATIVES_UI_VIEW = 'CREATIVES_UI_VIEW';
@@ -19,7 +19,7 @@ import * as appActions from '../App/actions';
19
19
  import config from '../../config/app';
20
20
  import NavigationBar from '../../v2Components/NavigationBar';
21
21
  import { engagePlusPublicPath } from '../../config/path';
22
- import { GTM_TRACKING_ID } from '../App/constants';
22
+ import { GTM_TRACKING_ID, CREATIVES_UI_VIEW } from '../App/constants';
23
23
  import { makeSelectLocale } from '../../v2Containers/LanguageProvider/selectors';
24
24
  import {
25
25
  HELP_URL,
@@ -44,6 +44,7 @@ export class Cap extends React.Component { // eslint-disable-line react/prefer-s
44
44
  super(props);
45
45
  this.state = {
46
46
  switchedOrg: false,
47
+ isCreativesAccessible: true,
47
48
  };
48
49
  this.changeOrg = this.changeOrg.bind(this);
49
50
  this.logout = this.logout.bind(this);
@@ -52,7 +53,10 @@ export class Cap extends React.Component { // eslint-disable-line react/prefer-s
52
53
  }
53
54
 
54
55
  componentWillMount() {
55
- this.props.actions.getUserData(() => {
56
+ this.props.actions.getUserData((userData) => {
57
+ if (!userData.accessiblePermissions.includes(CREATIVES_UI_VIEW)) {
58
+ this.setState({ isCreativesAccessible: false });
59
+ }
56
60
  this.setDimensionData();
57
61
  });
58
62
  this.props.actions.getTopbarMenuData();
@@ -178,6 +182,7 @@ export class Cap extends React.Component { // eslint-disable-line react/prefer-s
178
182
  const topbarMenuDataOptions = topbarMenuData && topbarMenuData.data ? topbarMenuData.data : [];
179
183
  const type = this.props.location.query.type;
180
184
  const toastMessages = this.props.Global.messages;
185
+ const { isCreativesAccessible } = this.state;
181
186
  console.log('v2 locale loading', this.props.loader.localeLoading);
182
187
  return (
183
188
  <CapWrapper>
@@ -200,6 +205,7 @@ export class Cap extends React.Component { // eslint-disable-line react/prefer-s
200
205
  <NavigationBar
201
206
  userData={Global}
202
207
  changeOrg={this.changeOrg}
208
+ isCreativesAccessible={isCreativesAccessible}
203
209
  logout={this.logout}
204
210
  settingsUrl={`${engagePlusPublicPath}${CAMPAIGN_SETTINGS_URL}`}
205
211
  orgSettingsUrl={ORG_SETTINGS_URL}
@@ -1,27 +1,27 @@
1
- /*
2
- *
3
- * CreativesContainer actions
4
- *
5
- */
6
-
7
- import {
8
- DEFAULT_ACTION,
9
- HIDE_CONTAINER_LOADER,
10
- SHOW_CONTANER_LOADER,
11
- } from './constants';
12
-
13
- export function defaultAction() {
14
- return {
15
- type: DEFAULT_ACTION,
16
- };
17
- }
18
- export function showCreativesContainerLoader() {
19
- return {
20
- type: SHOW_CONTANER_LOADER,
21
- };
22
- }
23
- export function hideCreativesContanerLoader() {
24
- return {
25
- type: HIDE_CONTAINER_LOADER,
26
- };
27
- }
1
+ /*
2
+ *
3
+ * CreativesContainer actions
4
+ *
5
+ */
6
+
7
+ import {
8
+ DEFAULT_ACTION,
9
+ HIDE_CONTAINER_LOADER,
10
+ SHOW_CONTANER_LOADER,
11
+ } from './constants';
12
+
13
+ export function defaultAction() {
14
+ return {
15
+ type: DEFAULT_ACTION,
16
+ };
17
+ }
18
+ export function showCreativesContainerLoader() {
19
+ return {
20
+ type: SHOW_CONTANER_LOADER,
21
+ };
22
+ }
23
+ export function hideCreativesContanerLoader() {
24
+ return {
25
+ type: HIDE_CONTAINER_LOADER,
26
+ };
27
+ }
@@ -1,17 +1,17 @@
1
- /*
2
- *
3
- * CreativesContainer constants
4
- *
5
- */
6
-
7
- export const DEFAULT_ACTION = 'app/CreativesContainer/DEFAULT_ACTION';
8
- export const EMAIL = "EMAIL";
9
- export const SMS = "SMS";
10
- export const EBILL = "EBILL";
11
- export const LINE = "LINE";
12
- export const CALL_TASK = "CALL_TASK";
13
- export const MOBILE_PUSH = "MOBILEPUSH";
14
- export const WECHAT = "WECHAT";
15
- export const FACEBOOK = "FACEBOOK";
16
- export const SHOW_CONTANER_LOADER = "app/CreativesContainer/SHOW_CONTANER_LOADER";
17
- export const HIDE_CONTAINER_LOADER = "app/CreativesContainer/HIDE_CONTAINER_LOADER";
1
+ /*
2
+ *
3
+ * CreativesContainer constants
4
+ *
5
+ */
6
+
7
+ export const DEFAULT_ACTION = 'app/CreativesContainer/DEFAULT_ACTION';
8
+ export const EMAIL = "EMAIL";
9
+ export const SMS = "SMS";
10
+ export const EBILL = "EBILL";
11
+ export const LINE = "LINE";
12
+ export const CALL_TASK = "CALL_TASK";
13
+ export const MOBILE_PUSH = "MOBILEPUSH";
14
+ export const WECHAT = "WECHAT";
15
+ export const FACEBOOK = "FACEBOOK";
16
+ export const SHOW_CONTANER_LOADER = "app/CreativesContainer/SHOW_CONTANER_LOADER";
17
+ export const HIDE_CONTAINER_LOADER = "app/CreativesContainer/HIDE_CONTAINER_LOADER";
@@ -1,45 +1,45 @@
1
- @import '~@capillarytech/cap-ui-library/styles/_variables.scss';
2
-
3
- $classPrefix: add-creatives-section;
4
-
5
- .#{$classPrefix} {
6
- &.creatives-library-mode{
7
- .sms-create-container, .sms-email-container{
8
- .ant-tabs-top-bar{
9
- display: none;
10
- }
11
- }
12
- }
13
- .#{$classPrefix}-footer {
14
- position: absolute;
15
- bottom: 0;
16
- left: 1px;
17
- padding: 0 12px;
18
- display: flex;
19
- align-items: center;
20
- height: 48px;
21
- border-top: 1px solid $CAP_G07;
22
-
23
- &.with-creative {
24
- width: 100%;
25
- }
26
- }
27
- .wechat-steps {
28
- width: 40% !important;
29
- left: 20%;
30
- position: relative;
31
- .ant-steps-item-title::after {
32
- top: 8px;
33
- }
34
- .ant-steps-item-content {
35
- vertical-align: middle;
36
- padding-top: 4px;
37
- }
38
- }
39
- }
40
-
41
- .map-template-create {
42
- .slidebox-header div:first-child {
43
- width: 100%;
44
- }
1
+ @import '~@capillarytech/cap-ui-library/styles/_variables.scss';
2
+
3
+ $classPrefix: add-creatives-section;
4
+
5
+ .#{$classPrefix} {
6
+ &.creatives-library-mode{
7
+ .sms-create-container, .sms-email-container{
8
+ .ant-tabs-top-bar{
9
+ display: none;
10
+ }
11
+ }
12
+ }
13
+ .#{$classPrefix}-footer {
14
+ position: absolute;
15
+ bottom: 0;
16
+ left: 1px;
17
+ padding: 0 12px;
18
+ display: flex;
19
+ align-items: center;
20
+ height: 48px;
21
+ border-top: 1px solid $CAP_G07;
22
+
23
+ &.with-creative {
24
+ width: 100%;
25
+ }
26
+ }
27
+ .wechat-steps {
28
+ width: 40% !important;
29
+ left: 20%;
30
+ position: relative;
31
+ .ant-steps-item-title::after {
32
+ top: 8px;
33
+ }
34
+ .ant-steps-item-content {
35
+ vertical-align: middle;
36
+ padding-top: 4px;
37
+ }
38
+ }
39
+ }
40
+
41
+ .map-template-create {
42
+ .slidebox-header div:first-child {
43
+ width: 100%;
44
+ }
45
45
  }