@capillarytech/creatives-library 8.0.136 → 8.0.137-alpha.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 (295) hide show
  1. package/constants/unified.js +189 -0
  2. package/package.json +1 -1
  3. package/services/getSchema.js +1 -1
  4. package/services/localStorageApi.js +1 -0
  5. package/tests/i18n.test.js +1 -1
  6. package/utils/common.js +2 -2
  7. package/utils/tagValidations.js +1 -1
  8. package/utils/tests/checkStore.test.js +1 -1
  9. package/utils/tests/customAuth.test.js +1 -1
  10. package/utils/transformerUtils.js +1 -1
  11. package/v2Components/CapTagList/index.js +9 -14
  12. package/v2Components/Carousel/style.scss +1 -1
  13. package/v2Components/EmailMobilePreview/index.js +2 -2
  14. package/v2Components/FormBuilder/index.js +2 -2
  15. package/v2Components/TemplatePreview/index.js +2 -1
  16. package/v2Containers/Cap/tests/saga.test.js +1 -1
  17. package/v2Containers/Email/index.js +1 -1
  18. package/v2Containers/FTP/index.js +1 -1
  19. package/v2Containers/Line/Container/Text/index.js +1 -1
  20. package/v2Containers/MobilePushNew/components/MediaUploaders.js +0 -1
  21. package/v2Containers/MobilePushNew/components/tests/MediaUploaders.test.js +271 -0
  22. package/v2Containers/MobilePushNew/components/tests/PlatformContentFields.test.js +189 -0
  23. package/v2Containers/MobilePushNew/index.scss +0 -7
  24. package/v2Containers/Sms/Create/index.js +2 -2
  25. package/v2Containers/Sms/Edit/index.js +1 -1
  26. package/v2Containers/TagList/index.js +1 -1
  27. package/v2Containers/TagList/utils.js +1 -1
  28. package/v2Containers/Templates/index.js +1 -1
  29. package/v2Containers/Templates/sagas.js +1 -1
  30. package/components/BreadCrumbs/index.js +0 -65
  31. package/components/BreadCrumbs/messages.js +0 -13
  32. package/components/CapTagList/index.js +0 -235
  33. package/components/CapTagList/messages.js +0 -45
  34. package/components/Card/_customCard.scss +0 -40
  35. package/components/Card/index.js +0 -78
  36. package/components/Card/tests/__snapshots__/index.test.js.snap +0 -22
  37. package/components/Card/tests/index.test.js +0 -20
  38. package/components/CardGrid/index.js +0 -71
  39. package/components/Ckeditor/index.js +0 -238
  40. package/components/Ckeditor/messages.js +0 -13
  41. package/components/Ckeditor/style.scss +0 -3
  42. package/components/Component/index.js +0 -29
  43. package/components/CustomPopOver/index.js +0 -81
  44. package/components/CustomPopOver/messages.js +0 -17
  45. package/components/DateFilter/index.js +0 -349
  46. package/components/DateFilter/messages.js +0 -57
  47. package/components/DateRange/index.js +0 -114
  48. package/components/DateRange/messages.js +0 -25
  49. package/components/Edmeditor/index.js +0 -65
  50. package/components/Edmeditor/messages.js +0 -13
  51. package/components/EmailPreview/_emailPreview.scss +0 -119
  52. package/components/EmailPreview/assets/images/iPad.svg +0 -10
  53. package/components/EmailPreview/assets/images/mobile.png +0 -0
  54. package/components/EmailPreview/index.js +0 -107
  55. package/components/EmailPreview/messages.js +0 -33
  56. package/components/Footer/index.js +0 -27
  57. package/components/Footer/messages.js +0 -13
  58. package/components/FormBuilder/_formBuilder.scss +0 -83
  59. package/components/FormBuilder/index.js +0 -3279
  60. package/components/FormBuilder/messages.js +0 -61
  61. package/components/Header/index.js +0 -44
  62. package/components/Header/messages.js +0 -29
  63. package/components/ImagePreview/_imagePreview.scss +0 -63
  64. package/components/ImagePreview/index.js +0 -52
  65. package/components/ImagePreview/messages.js +0 -17
  66. package/components/PageHeader/_pageHeader.scss +0 -22
  67. package/components/PageHeader/index.js +0 -37
  68. package/components/PageHeader/messages.js +0 -13
  69. package/components/Pagination/_pagination.scss +0 -5
  70. package/components/Pagination/index.js +0 -49
  71. package/components/PreviewSideBar/_previewsidebar.scss +0 -28
  72. package/components/PreviewSideBar/index.js +0 -152
  73. package/components/PreviewSideBar/messages.js +0 -41
  74. package/components/Sidebar/_sidebar.scss +0 -115
  75. package/components/Sidebar/index.js +0 -214
  76. package/components/Sidebar/messages.js +0 -21
  77. package/components/SlideBox/_slideBox.scss +0 -63
  78. package/components/SlideBox/index.js +0 -47
  79. package/components/SlideBox/tests/index.test.js +0 -103
  80. package/components/SmsEditor/index.js +0 -55
  81. package/components/SmsTest/index.js +0 -117
  82. package/components/SmsTest/messages.js +0 -21
  83. package/components/TemplatePreview/WechatRichmediaTemplatePreview/_wechatRichmediaTemplatePrev.scss +0 -42
  84. package/components/TemplatePreview/WechatRichmediaTemplatePreview/index.js +0 -141
  85. package/components/TemplatePreview/WechatRichmediaTemplatePreview/messages.js +0 -21
  86. package/components/TemplatePreview/_templatePreview.scss +0 -642
  87. package/components/TemplatePreview/assets/images/WECHAT_5x.png +0 -0
  88. package/components/TemplatePreview/assets/images/androidPushMessage.svg +0 -45
  89. package/components/TemplatePreview/assets/images/home-screen-android.svg +0 -21
  90. package/components/TemplatePreview/assets/images/home-screen-ios.svg +0 -16
  91. package/components/TemplatePreview/assets/images/iPhonePushMessage.svg +0 -135
  92. package/components/TemplatePreview/assets/images/mobile.svg +0 -24
  93. package/components/TemplatePreview/assets/images/sms-body.png +0 -0
  94. package/components/TemplatePreview/assets/images/sms-icon.png +0 -0
  95. package/components/TemplatePreview/assets/images/sms_mobile.png +0 -0
  96. package/components/TemplatePreview/assets/images/sms_mobile_android.svg +0 -22
  97. package/components/TemplatePreview/assets/images/sms_mobile_ios.svg +0 -16
  98. package/components/TemplatePreview/assets/images/user-icon.svg +0 -19
  99. package/components/TemplatePreview/assets/images/wechat-mobile.svg +0 -78
  100. package/components/TemplatePreview/assets/images/wechat_mobile_android.svg +0 -20
  101. package/components/TemplatePreview/index.js +0 -617
  102. package/components/TemplatePreview/messages.js +0 -78
  103. package/components/Toastr/index.js +0 -60
  104. package/components/Toastr/messages.js +0 -13
  105. package/components/ToastrMessage/index.js +0 -113
  106. package/components/ToastrMessage/messages.js +0 -17
  107. package/components/TopBar/_topbar.scss +0 -46
  108. package/components/TopBar/assets/images/capillary_logo.png +0 -0
  109. package/components/TopBar/assets/images/old_capillary_logo.png +0 -0
  110. package/components/TopBar/index.js +0 -113
  111. package/components/TopBar/messages.js +0 -29
  112. package/containers/App/actions.js +0 -7
  113. package/containers/App/constants.js +0 -114
  114. package/containers/App/index.js +0 -52
  115. package/containers/App/reducer.js +0 -19
  116. package/containers/App/sagas.js +0 -31
  117. package/containers/App/selectors.js +0 -25
  118. package/containers/App/test/saga.test.js +0 -11
  119. package/containers/Assets/Gallery/_gallery.scss +0 -126
  120. package/containers/Assets/Gallery/actions.js +0 -37
  121. package/containers/Assets/Gallery/constants.js +0 -23
  122. package/containers/Assets/Gallery/index.js +0 -473
  123. package/containers/Assets/Gallery/messages.js +0 -93
  124. package/containers/Assets/Gallery/reducer.js +0 -81
  125. package/containers/Assets/Gallery/sagas.js +0 -80
  126. package/containers/Assets/Gallery/selectors.js +0 -25
  127. package/containers/Assets/Gallery/tests/__snapshots__/reducer.test.js.snap +0 -9
  128. package/containers/Assets/Gallery/tests/actions.test.js +0 -25
  129. package/containers/Assets/Gallery/tests/reducer.test.js +0 -96
  130. package/containers/Assets/Gallery/tests/saga.test.js +0 -157
  131. package/containers/Cap/actions.js +0 -66
  132. package/containers/Cap/constants.js +0 -25
  133. package/containers/Cap/index.js +0 -402
  134. package/containers/Cap/messages.js +0 -75
  135. package/containers/Cap/reducer.js +0 -113
  136. package/containers/Cap/sagas.js +0 -159
  137. package/containers/Cap/selectors.js +0 -75
  138. package/containers/Cap/tests/__snapshots__/index.test.js.snap +0 -2269
  139. package/containers/Cap/tests/index.test.js +0 -22
  140. package/containers/Cap/tests/saga.test.js +0 -284
  141. package/containers/Dashboard/actions.js +0 -15
  142. package/containers/Dashboard/constants.js +0 -7
  143. package/containers/Dashboard/index.js +0 -76
  144. package/containers/Dashboard/messages.js +0 -13
  145. package/containers/Dashboard/reducer.js +0 -21
  146. package/containers/Dashboard/sagas.js +0 -17
  147. package/containers/Dashboard/selectors.js +0 -25
  148. package/containers/Dashboard/test/saga.test.js +0 -9
  149. package/containers/Ebill/_ebill.scss +0 -5
  150. package/containers/Ebill/actions.js +0 -43
  151. package/containers/Ebill/constants.js +0 -20
  152. package/containers/Ebill/index.js +0 -1278
  153. package/containers/Ebill/messages.js +0 -77
  154. package/containers/Ebill/reducer.js +0 -72
  155. package/containers/Ebill/sagas.js +0 -74
  156. package/containers/Ebill/selectors.js +0 -25
  157. package/containers/Ebill/test/saga.test.js +0 -11
  158. package/containers/Email/_email.scss +0 -141
  159. package/containers/Email/actions.js +0 -81
  160. package/containers/Email/constants.js +0 -36
  161. package/containers/Email/index.js +0 -3325
  162. package/containers/Email/messages.js +0 -289
  163. package/containers/Email/reducer.js +0 -142
  164. package/containers/Email/sagas.js +0 -135
  165. package/containers/Email/selectors.js +0 -31
  166. package/containers/Email/test/saga.test.js +0 -671
  167. package/containers/LanguageProvider/actions.js +0 -17
  168. package/containers/LanguageProvider/constants.js +0 -8
  169. package/containers/LanguageProvider/index.js +0 -80
  170. package/containers/LanguageProvider/reducer.js +0 -30
  171. package/containers/LanguageProvider/selectors.js +0 -20
  172. package/containers/LanguageProvider/tests/actions.test.js +0 -19
  173. package/containers/LanguageProvider/tests/index.test.js +0 -78
  174. package/containers/LanguageProvider/tests/reducer.test.js +0 -20
  175. package/containers/LanguageProvider/tests/selectors.test.js +0 -15
  176. package/containers/Line/Create/_lineCreate.scss +0 -54
  177. package/containers/Line/Create/actions.js +0 -90
  178. package/containers/Line/Create/constants.js +0 -39
  179. package/containers/Line/Create/index.js +0 -836
  180. package/containers/Line/Create/messages.js +0 -189
  181. package/containers/Line/Create/reducer.js +0 -99
  182. package/containers/Line/Create/sagas.js +0 -121
  183. package/containers/Line/Create/selectors.js +0 -36
  184. package/containers/Line/Create/tests/saga.test.js +0 -202
  185. package/containers/Line/Edit/_lineEdit.scss +0 -35
  186. package/containers/Line/Edit/actions.js +0 -79
  187. package/containers/Line/Edit/constants.js +0 -27
  188. package/containers/Line/Edit/index.js +0 -1050
  189. package/containers/Line/Edit/messages.js +0 -177
  190. package/containers/Line/Edit/reducer.js +0 -83
  191. package/containers/Line/Edit/sagas.js +0 -80
  192. package/containers/Line/Edit/selectors.js +0 -29
  193. package/containers/Line/Edit/test/saga.test.js +0 -160
  194. package/containers/Login/assets/images/capillary_logo.png +0 -0
  195. package/containers/Login/components/LoginForm/index.js +0 -62
  196. package/containers/Login/components/LoginForm/messages.js +0 -33
  197. package/containers/Login/index.js +0 -130
  198. package/containers/Login/messages.js +0 -25
  199. package/containers/Login/selectors.js +0 -25
  200. package/containers/MobilePush/Create/_mobilePushCreate.scss +0 -39
  201. package/containers/MobilePush/Create/actions.js +0 -46
  202. package/containers/MobilePush/Create/constants.js +0 -23
  203. package/containers/MobilePush/Create/index.js +0 -2303
  204. package/containers/MobilePush/Create/messages.js +0 -269
  205. package/containers/MobilePush/Create/reducer.js +0 -70
  206. package/containers/MobilePush/Create/sagas.js +0 -74
  207. package/containers/MobilePush/Create/selectors.js +0 -28
  208. package/containers/MobilePush/Create/test/saga.test.js +0 -19
  209. package/containers/MobilePush/Edit/_mobilePushCreate.scss +0 -39
  210. package/containers/MobilePush/Edit/actions.js +0 -91
  211. package/containers/MobilePush/Edit/constants.js +0 -35
  212. package/containers/MobilePush/Edit/index.js +0 -2601
  213. package/containers/MobilePush/Edit/messages.js +0 -266
  214. package/containers/MobilePush/Edit/reducer.js +0 -112
  215. package/containers/MobilePush/Edit/sagas.js +0 -126
  216. package/containers/MobilePush/Edit/selectors.js +0 -29
  217. package/containers/MobilePush/Edit/tests/saga.test.js +0 -255
  218. package/containers/NotFoundPage/index.js +0 -25
  219. package/containers/NotFoundPage/messages.js +0 -13
  220. package/containers/NotFoundPage/tests/index.test.js +0 -17
  221. package/containers/Sms/Create/_smsCreate.scss +0 -42
  222. package/containers/Sms/Create/actions.js +0 -27
  223. package/containers/Sms/Create/constants.js +0 -16
  224. package/containers/Sms/Create/index.js +0 -1488
  225. package/containers/Sms/Create/messages.js +0 -109
  226. package/containers/Sms/Create/reducer.js +0 -41
  227. package/containers/Sms/Create/sagas.js +0 -40
  228. package/containers/Sms/Create/selectors.js +0 -28
  229. package/containers/Sms/Create/test/saga.test.js +0 -11
  230. package/containers/Sms/Edit/actions.js +0 -40
  231. package/containers/Sms/Edit/constants.js +0 -17
  232. package/containers/Sms/Edit/index.js +0 -1472
  233. package/containers/Sms/Edit/messages.js +0 -105
  234. package/containers/Sms/Edit/reducer.js +0 -50
  235. package/containers/Sms/Edit/sagas.js +0 -60
  236. package/containers/Sms/Edit/selectors.js +0 -32
  237. package/containers/Sms/Edit/test/saga.test.js +0 -13
  238. package/containers/TagList/_tagList.scss +0 -8
  239. package/containers/TagList/actions.js +0 -15
  240. package/containers/TagList/constants.js +0 -32
  241. package/containers/TagList/index.js +0 -236
  242. package/containers/TagList/messages.js +0 -13
  243. package/containers/TagList/reducer.js +0 -23
  244. package/containers/TagList/sagas.js +0 -11
  245. package/containers/TagList/selectors.js +0 -25
  246. package/containers/Templates/_templates.scss +0 -333
  247. package/containers/Templates/actions.js +0 -103
  248. package/containers/Templates/constants.js +0 -60
  249. package/containers/Templates/index.js +0 -1756
  250. package/containers/Templates/messages.js +0 -337
  251. package/containers/Templates/reducer.js +0 -142
  252. package/containers/Templates/sagas.js +0 -163
  253. package/containers/Templates/selectors.js +0 -28
  254. package/containers/Templates/test/saga.test.js +0 -241
  255. package/containers/WeChat/MapTemplates/_mapTemplates.scss +0 -8
  256. package/containers/WeChat/MapTemplates/actions.js +0 -52
  257. package/containers/WeChat/MapTemplates/constants.js +0 -28
  258. package/containers/WeChat/MapTemplates/index.js +0 -1610
  259. package/containers/WeChat/MapTemplates/messages.js +0 -157
  260. package/containers/WeChat/MapTemplates/reducer.js +0 -74
  261. package/containers/WeChat/MapTemplates/sagas.js +0 -84
  262. package/containers/WeChat/MapTemplates/selectors.js +0 -25
  263. package/containers/WeChat/MapTemplates/test/saga.test.js +0 -155
  264. package/containers/WeChat/RichmediaTemplates/Create/_createRichmedia.scss +0 -57
  265. package/containers/WeChat/RichmediaTemplates/Create/actions.js +0 -36
  266. package/containers/WeChat/RichmediaTemplates/Create/constants.js +0 -15
  267. package/containers/WeChat/RichmediaTemplates/Create/index.js +0 -1071
  268. package/containers/WeChat/RichmediaTemplates/Create/messages.js +0 -165
  269. package/containers/WeChat/RichmediaTemplates/Create/reducer.js +0 -60
  270. package/containers/WeChat/RichmediaTemplates/Create/richmediaschema.js +0 -497
  271. package/containers/WeChat/RichmediaTemplates/Create/sagas.js +0 -51
  272. package/containers/WeChat/RichmediaTemplates/Create/selectors.js +0 -37
  273. package/containers/WeChat/RichmediaTemplates/Create/test/saga.test.js +0 -13
  274. package/containers/WeChat/RichmediaTemplates/Edit/actions.js +0 -20
  275. package/containers/WeChat/RichmediaTemplates/Edit/constants.js +0 -10
  276. package/containers/WeChat/RichmediaTemplates/Edit/index.js +0 -136
  277. package/containers/WeChat/RichmediaTemplates/Edit/messages.js +0 -13
  278. package/containers/WeChat/RichmediaTemplates/Edit/reducer.js +0 -28
  279. package/containers/WeChat/RichmediaTemplates/Edit/sagas.js +0 -36
  280. package/containers/WeChat/RichmediaTemplates/Edit/selectors.js +0 -30
  281. package/containers/WeChat/RichmediaTemplates/Edit/test/saga.test.js +0 -12
  282. package/containers/WeChat/RichmediaTemplates/View/actions.js +0 -15
  283. package/containers/WeChat/RichmediaTemplates/View/constants.js +0 -7
  284. package/containers/WeChat/RichmediaTemplates/View/index.js +0 -47
  285. package/containers/WeChat/RichmediaTemplates/View/messages.js +0 -21
  286. package/containers/WeChat/RichmediaTemplates/View/reducer.js +0 -23
  287. package/containers/WeChat/RichmediaTemplates/View/sagas.js +0 -11
  288. package/containers/WeChat/RichmediaTemplates/View/selectors.js +0 -25
  289. package/utils/asyncInjectors.js +0 -78
  290. package/utils/callNativeEvent.js +0 -16
  291. package/utils/checkStore.js +0 -21
  292. package/utils/customAuthWrapper.js +0 -62
  293. package/utils/customConnectedAuthWrapper.js +0 -26
  294. package/utils/jed.js +0 -1497
  295. package/utils/smsCharCount.js +0 -351
@@ -1,235 +0,0 @@
1
- /**
2
- *
3
- * CapTagList
4
- *
5
- */
6
-
7
- import PropTypes from 'prop-types';
8
-
9
- import React from 'react';
10
- // import styled from 'styled-components';
11
- import { Tree, Input, Spin, Modal } from 'antd';
12
- import _ from 'lodash';
13
- // import { CapInput } from '@capillarytech/cap-react-ui-library/basic/input';
14
- import { injectIntl, intlShape } from 'react-intl';
15
- import { CapButton, CapPopover, CapSelect, CapInput } from '@capillarytech/cap-react-ui-library';
16
- import messages from './messages';
17
- const Search = Input.Search;
18
- const TreeNode = Tree.TreeNode;
19
-
20
- class CapTagList extends React.Component { // eslint-disable-line react/prefer-stateless-function
21
-
22
- constructor(props) {
23
- super(props);
24
- this.state = {
25
- tagValue: '',
26
- expandedKeys: [],
27
- searchValue: '',
28
- autoExpandParent: true,
29
- visible: false,
30
- dynamicDateValue: '',
31
- showModal: false,
32
- };
33
- this.renderTags = this.renderTags.bind(this);
34
- this.getSearchedExpandedKeys = this.getSearchedExpandedKeys.bind(this);
35
- }
36
-
37
- onChange = (e) => {
38
- const value = e.target.value;
39
- let expandedKeys = this.getSearchedExpandedKeys(this.props.tags, value);
40
- if (value === '') {
41
- expandedKeys = [];
42
- }
43
- this.setState({
44
- expandedKeys,
45
- searchValue: value,
46
- autoExpandParent: true,
47
- });
48
- };
49
- onExpand = (expandedKeys, info) => {
50
- this.handleOnExpand(info.node.props.eventKey);
51
- };
52
-
53
- getSearchedExpandedKeys(tags, value = '') {
54
- let list = [];
55
- _.forEach(tags, (val, key) => {
56
- if (_.has(val, 'subtags')) {
57
- if ((val.name || '').toLowerCase().indexOf(value.toLowerCase()) !== -1) {
58
- list.push(key);
59
- }
60
- const temp = this.getSearchedExpandedKeys(val.subtags, value);
61
- list = list.concat(temp);
62
- } else if ((val.name || '').toLowerCase().indexOf(value.toLowerCase()) !== -1) {
63
- list.push(key);
64
- }
65
- });
66
- return list;
67
- }
68
-
69
- handleOnChange = (data, e) => {
70
-
71
- this.props.onContextChange(data);
72
- };
73
-
74
- handleDynamicDateChange = (data, e) => {
75
-
76
- this.setState({dynamicDateValue: data.target.value});
77
- };
78
-
79
- handleOk = () => {
80
- const days = this.state.dynamicDateValue;
81
- let tagValue = this.state.tagValue;
82
- tagValue = tagValue.replace("(N)", `${days}`);
83
- const resultArray = [];
84
- resultArray.push(tagValue);
85
- this.props.onSelect(resultArray);
86
- this.setState({showModal: false, dynamicDateValue: ''});
87
- };
88
-
89
- handleCancel = () => {
90
- this.setState({showModal: false, dynamicDateValue: ''});
91
- };
92
-
93
- checkIfDynamicTag = (tag) => {
94
- const regex = /dynamic_expiry_date_after_\(N\)_days.FORMAT_\d/g;
95
- const match = regex.exec(tag);
96
- if (match !== null) {
97
- return true;
98
- }
99
- return false;
100
- };
101
-
102
- handleOnSelect = (selectedKeys, info) => {
103
- if (selectedKeys.length > 0) {
104
- if (info && info.selectedNodes && info.selectedNodes.length > 0 && info.selectedNodes[0].props.isLeaf) {
105
- this.setState({tagValue: selectedKeys[0]});
106
- const ifDynamicTag = this.checkIfDynamicTag(selectedKeys[0]);
107
- if (ifDynamicTag) {
108
- this.renderDynamicTagFlow();
109
- } else {
110
- this.props.onSelect(selectedKeys, info);
111
- this.setState({visible: false});
112
- }
113
- } else if (info && info.selectedNodes && info.selectedNodes.length > 0 && !info.selectedNodes[0].props.isLeaf) {
114
- this.handleOnExpand(selectedKeys[0]);
115
- }
116
- }
117
- };
118
-
119
- handleOnExpand = (key) => {
120
- const expandedKeys = this.state.expandedKeys.slice();
121
- const index = _.indexOf(expandedKeys, key);
122
- if (index !== -1) {
123
- expandedKeys.splice(index, 1);
124
- } else {
125
- expandedKeys.push(key);
126
- }
127
- this.setState({expandedKeys, autoExpandParent: false});
128
- };
129
- togglePopoverVisibility = (visible) => {
130
-
131
- this.setState({visible});
132
- };
133
-
134
- renderDynamicTagFlow = () => {
135
- this.setState({showModal: true, visible: false});
136
- };
137
-
138
- renderTags(tags, searchString = '') {
139
-
140
- const list = [];
141
- _.forEach(tags, (val, key) => {
142
- let supportedTagsString = '';
143
- _.forEach(val.supportedTags, (supportedTag) => {
144
- supportedTagsString += `${supportedTag} ,`;
145
- });
146
- supportedTagsString = supportedTagsString.replace(/,\s*$/, "");
147
-
148
- if (_.has(val, 'subtags')) {
149
- const temp = this.renderTags(val.subtags);
150
- list.push((
151
- <TreeNode title={val.name} key={key}>
152
- {temp}
153
- </TreeNode>
154
- ));
155
- } else if (searchString === '' || !searchString || ((val.name || '').toLowerCase().indexOf(searchString.toLowerCase()) !== -1)) {
156
- const tempNode = (<TreeNode title={val.name} isLeaf key={key}></TreeNode>);
157
- list.push(tempNode);
158
- }
159
- });
160
- return list;
161
- }
162
-
163
- render() {
164
- const tg = this.props.tags;
165
- const options = [
166
- {
167
- value: "All",
168
- label: this.props.intl.formatMessage(messages.all),
169
- },
170
- {
171
- value: "Outbound",
172
- label: this.props.intl.formatMessage(messages.outbound),
173
- },
174
- {
175
- value: "Loyalty",
176
- label: this.props.intl.formatMessage(messages.loyalty),
177
- },
178
- ];
179
- return (
180
- <div>
181
- <CapPopover
182
- visible={this.state.visible}
183
- onVisibleChange={this.togglePopoverVisibility}
184
- content={<div>
185
- <Spin tip={this.props?.intl?.formatMessage(messages.gettingTags)} spinning={this.props.loading}>
186
- <Search style={{ marginBottom: 8, width: '250px'}} placeholder={this.props?.intl?.formatMessage(messages.searchText)} onChange={this.onChange} />
187
- {this.props.moduleFilterEnabled ? <CapSelect getPopupContainer={(triggerNode) => triggerNode.parentNode} style={{width: '250px', marginBottom: '16px', minWidth: 'initial', display: 'inherit'}} onChange={this.props.onContextChange} defaultValue="All" options={options}>
188
- </CapSelect> : ''}
189
- <Tree
190
- styling={{height: '350px', overflow: 'auto'}}
191
- onSelect={this.handleOnSelect}
192
- selectedKeys={this.state.tagValue}
193
- expandedKeys={this.state.expandedKeys}
194
- autoExpandParent={this.state.autoExpandParent}
195
- onExpand={this.onExpand}
196
- >
197
- {this.renderTags(tg, this.state.searchValue)}
198
- </Tree>
199
- </Spin>
200
- </div>}
201
- trigger="click"
202
- placement="bottomRight">
203
- <CapButton icon="plus-circle-o" type="secondary">{this.props.label !== '' ? this.props.label : ''}</CapButton>
204
- </CapPopover>
205
- <Modal
206
- visible={this.state.showModal}
207
- title={this.props.intl.formatMessage(messages["Dynamic Days before Expiry"])}
208
- onOk={this.handleOk}
209
- onCancel={this.handleCancel}
210
- footer={[
211
- <CapButton key="back" onClick={this.handleCancel}>{this.props.intl.formatMessage(messages.Cancel)}</CapButton>,
212
- <CapButton key="submit" type="primary" id="delete-version" onClick={this.handleOk}>
213
- {this.props.intl.formatMessage(messages.Ok)}
214
- </CapButton>,
215
- ]}
216
- >
217
- <p>{this.props.intl.formatMessage(messages.numberOfDaysBeforeExpiry)}</p>
218
- <CapInput onChange={this.handleDynamicDateChange} value={this.state.dynamicDateValue}></CapInput>
219
- </Modal>
220
- </div>
221
- );
222
- }
223
- }
224
-
225
- CapTagList.propTypes = {
226
- tags: PropTypes.object,
227
- onSelect: PropTypes.func,
228
- label: PropTypes.string,
229
- onContextChange: PropTypes.func,
230
- loading: PropTypes.bool,
231
- moduleFilterEnabled: PropTypes.bool,
232
- intl: intlShape.isRequired,
233
- };
234
-
235
- export default injectIntl(CapTagList);
@@ -1,45 +0,0 @@
1
- /*
2
- * CapTagList Messages
3
- *
4
- * This contains all the text for the CapTagList component.
5
- */
6
- import { defineMessages } from 'react-intl';
7
-
8
- export default defineMessages({
9
- "Ok": {
10
- id: 'creatives.components.CapTagList.Ok',
11
- defaultMessage: 'Ok',
12
- },
13
- "numberOfDaysBeforeExpiry": {
14
- id: 'creatives.components.CapTagList.numberOfDaysBeforeExpiry',
15
- defaultMessage: 'Number of days before expiry',
16
- },
17
- "Cancel": {
18
- id: 'creatives.components.CapTagList.Cancel',
19
- defaultMessage: 'Cancel',
20
- },
21
- "Dynamic Days before Expiry": {
22
- id: 'creatives.components.CapTagList.dynamic_days_before_expiry',
23
- defaultMessage: 'Dynamic days before expiry',
24
- },
25
- "all": {
26
- id: 'creatives.components.CapTagList.all',
27
- defaultMessage: 'All',
28
- },
29
- "outbound": {
30
- id: 'creatives.components.CapTagList.outbound',
31
- defaultMessage: 'Outbound',
32
- },
33
- "loyalty": {
34
- id: 'creatives.components.CapTagList.loyalty',
35
- defaultMessage: 'Loyalty',
36
- },
37
- "searchText": {
38
- id: 'creatives.components.CapTagList.searchText',
39
- defaultMessage: 'Search',
40
- },
41
- "gettingTags": {
42
- id: 'creatives.components.CapTagList.gettingTags',
43
- defaultMessage: "Getting tags...",
44
- },
45
- });
@@ -1,40 +0,0 @@
1
- .custom-card {
2
- &:hover {
3
- box-shadow: none !important;
4
- border-color: #1D5B96 !important
5
- }
6
- .ant-card-body {
7
- padding: 0px;
8
- border-radius: 4px;
9
-
10
- // &:hover {
11
- // border: solid 2px #1D5B96;
12
- // border-radius: 4px;
13
- // }
14
- }
15
-
16
- .content-wrapper {
17
- width: 100%;
18
- height: 246px;
19
- overflow: hidden;
20
- // padding-left: 16px;
21
- // padding-right: 8px;
22
- // background-image: url('https://s3.amazonaws.com/test_files_cache_bkp/intouch_creative_assets/475c8c1b8d07cf1d5e58.png');
23
- }
24
-
25
- .footer-wrapper {
26
- width: 100%;
27
- // height: 64px;
28
- }
29
-
30
- .seperator-line{
31
- color: #e9e9e9;
32
- border-style: solid;
33
- border-bottom: none;
34
- }
35
- .footer-wrapper {
36
- .footer-container {
37
- margin-top: -14px;
38
- }
39
- }
40
- }
@@ -1,78 +0,0 @@
1
- /**
2
- *
3
- * Card
4
- *
5
- */
6
-
7
- import PropTypes from 'prop-types';
8
-
9
- import React from 'react';
10
- import { Card } from 'antd';
11
- import './_customCard.scss';
12
-
13
- export class CustomCard extends React.Component { // eslint-disable-line react/prefer-stateless-function
14
- constructor(props) {
15
- super(props);
16
- this.handleMouseHover = this.handleMouseHover.bind(this);
17
- this.handleMouseClick = this.handleMouseClick.bind(this);
18
- this.state = {
19
- isHovering: false,
20
- isClicked: false,
21
- };
22
- }
23
-
24
- handleMouseClick() {
25
- this.setState(this.toggleClickedState);
26
- this.props.onClick(!this.state.isClicked, this.props.id);
27
- }
28
-
29
- toggleClickedState(state) {
30
- return {
31
- isClicked: !state.isClicked,
32
- };
33
- }
34
-
35
- handleMouseHover(data) {
36
-
37
- this.setState({isHovering: data});
38
- this.props.onHover(!this.state.isHovering, this.props.id);
39
- }
40
-
41
- toggleHoverState(state) {
42
- return {
43
- isHovering: !state.isHovering,
44
- };
45
- }
46
-
47
- render() {
48
- return (
49
- <Card
50
- className="custom-card"
51
- id={this.props.id}
52
- title={this.props.title}
53
- style={{ width: this.props.width, height: this.props.height }}
54
- onMouseEnter={() => this.handleMouseHover(true)}
55
- onClick={this.handleMouseClick}
56
- onMouseLeave={() => this.handleMouseHover(false)}>
57
- <div>
58
- <div className="content-wrapper">{this.props.content}</div>
59
- {this.props.footer ? <hr className="seperator-line" /> : ''}
60
- {this.props.footer ? <div className="footer-wrapper">{this.props.footer}</div> : ''}
61
- </div>
62
- </Card>
63
- );
64
- }
65
- }
66
-
67
- CustomCard.propTypes = {
68
- content: PropTypes.element.isRequired,
69
- width: PropTypes.string,
70
- height: PropTypes.string,
71
- footer: PropTypes.element,
72
- title: PropTypes.string,
73
- onHover: PropTypes.func,
74
- onClick: PropTypes.func,
75
- id: PropTypes.string.isRequired,
76
- };
77
-
78
- export default CustomCard;
@@ -1,22 +0,0 @@
1
- // Jest Snapshot v1, https://goo.gl/fbAQLP
2
-
3
- exports[`RestrictionPlainInput test Test 1 should render default component when a retriction constant is passed 1`] = `
4
- <Card
5
- className="custom-card"
6
- onClick={[Function]}
7
- onMouseEnter={[Function]}
8
- onMouseLeave={[Function]}
9
- style={
10
- Object {
11
- "height": undefined,
12
- "width": undefined,
13
- }
14
- }
15
- >
16
- <div>
17
- <div
18
- className="content-wrapper"
19
- />
20
- </div>
21
- </Card>
22
- `;
@@ -1,20 +0,0 @@
1
- import React from 'react';
2
- import { shallowWithIntl } from '../../../helpers/intl-enzym-test-helpers';
3
- import { CustomCard } from '../index';
4
-
5
- describe('RestrictionPlainInput test', () => {
6
- let renderedComponent;
7
-
8
- const renderFunc = () => {
9
- renderedComponent = shallowWithIntl(
10
- <CustomCard />
11
- );
12
- };
13
-
14
- describe('Test 1', () => {
15
- it('should render default component when a retriction constant is passed', () => {
16
- renderFunc();
17
- expect(renderedComponent).toMatchSnapshot();
18
- });
19
- });
20
- });
@@ -1,71 +0,0 @@
1
- /**
2
- *
3
- * CardGrid
4
- *
5
- */
6
-
7
- import PropTypes from 'prop-types';
8
-
9
- import React from 'react';
10
- import { Row, Col } from 'antd';
11
- import CustomCard from '../Card';
12
-
13
- class CardGrid extends React.Component { // eslint-disable-line react/prefer-stateless-function
14
- constructor(props) {
15
- super(props);
16
- this.handleOnItemHover = this.handleOnItemHover.bind(this);
17
- this.handleOnItemClick = this.handleOnItemClick.bind(this);
18
- this.delayTimer = 0;
19
- }
20
-
21
- handleOnItemHover(state, id) {
22
- this.delay(() => {
23
- this.props.onHoverItem(state, id);
24
- }, 200);
25
- }
26
-
27
- delay(callback, ms) {
28
- clearTimeout(this.delayTimer);
29
- this.delayTimer = setTimeout(callback, ms);
30
- }
31
-
32
- handleOnItemClick(state, id) {
33
- this.props.onItemClick(state, id);
34
- }
35
-
36
- render() {
37
- return (
38
- <div className={this.props.className}>
39
- <div style={{ marginBottom: '16px' }}>{this.props.filterContent}</div>
40
- <div className={this.props.enablePagination ? 'pagination-container' : ''}>
41
- <Row gutter={this.props.gutterSize}>
42
- { this.props.listItem.length > 0 ? this.props.listItem.map( (item) => (
43
- <Col style={{ width: `${100 / this.props.colNumber}%`, paddingBottom: '16px'}} key={item.id} span={parseInt(24 / this.props.colNumber, 10)}>
44
- <CustomCard id={item.id} onHover={this.handleOnItemHover} onClick={this.handleOnItemClick} content={item.content} footer={item.footer} height={item.footer ? "312px" : "258px"}></CustomCard>
45
- </Col>
46
- )) : ''}
47
- </Row>
48
- </div>
49
- </div>
50
- );
51
- }
52
- }
53
-
54
- CardGrid.propTypes = {
55
- listItem: PropTypes.array.isRequired,
56
- filterContent: PropTypes.element,
57
- colNumber: PropTypes.number,
58
- gutterSize: PropTypes.number,
59
- onHoverItem: PropTypes.func,
60
- onItemClick: PropTypes.func,
61
- className: PropTypes.string,
62
- enablePagination: PropTypes.bool,
63
- };
64
-
65
- CardGrid.defaultProps = {
66
- gutterSize: 16,
67
- colNumber: 4,
68
- className: '',
69
- };
70
-
71
- export default CardGrid;