@capillarytech/creatives-library 8.0.136-alpha.4 → 8.0.136-beta.3

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 (292) hide show
  1. package/components/BreadCrumbs/index.js +65 -0
  2. package/components/BreadCrumbs/messages.js +13 -0
  3. package/components/CapTagList/index.js +235 -0
  4. package/components/CapTagList/messages.js +45 -0
  5. package/components/Card/_customCard.scss +40 -0
  6. package/components/Card/index.js +78 -0
  7. package/components/Card/tests/__snapshots__/index.test.js.snap +22 -0
  8. package/components/Card/tests/index.test.js +20 -0
  9. package/components/CardGrid/index.js +71 -0
  10. package/components/Ckeditor/index.js +238 -0
  11. package/components/Ckeditor/messages.js +13 -0
  12. package/components/Ckeditor/style.scss +3 -0
  13. package/components/Component/index.js +29 -0
  14. package/components/CustomPopOver/index.js +81 -0
  15. package/components/CustomPopOver/messages.js +17 -0
  16. package/components/DateFilter/index.js +349 -0
  17. package/components/DateFilter/messages.js +57 -0
  18. package/components/DateRange/index.js +114 -0
  19. package/components/DateRange/messages.js +25 -0
  20. package/components/Edmeditor/index.js +65 -0
  21. package/components/Edmeditor/messages.js +13 -0
  22. package/components/EmailPreview/_emailPreview.scss +119 -0
  23. package/components/EmailPreview/assets/images/iPad.svg +10 -0
  24. package/components/EmailPreview/assets/images/mobile.png +0 -0
  25. package/components/EmailPreview/index.js +107 -0
  26. package/components/EmailPreview/messages.js +33 -0
  27. package/components/Footer/index.js +27 -0
  28. package/components/Footer/messages.js +13 -0
  29. package/components/FormBuilder/_formBuilder.scss +83 -0
  30. package/components/FormBuilder/index.js +3279 -0
  31. package/components/FormBuilder/messages.js +61 -0
  32. package/components/Header/index.js +44 -0
  33. package/components/Header/messages.js +29 -0
  34. package/components/ImagePreview/_imagePreview.scss +63 -0
  35. package/components/ImagePreview/index.js +52 -0
  36. package/components/ImagePreview/messages.js +17 -0
  37. package/components/PageHeader/_pageHeader.scss +22 -0
  38. package/components/PageHeader/index.js +37 -0
  39. package/components/PageHeader/messages.js +13 -0
  40. package/components/Pagination/_pagination.scss +5 -0
  41. package/components/Pagination/index.js +49 -0
  42. package/components/PreviewSideBar/_previewsidebar.scss +28 -0
  43. package/components/PreviewSideBar/index.js +152 -0
  44. package/components/PreviewSideBar/messages.js +41 -0
  45. package/components/Sidebar/_sidebar.scss +115 -0
  46. package/components/Sidebar/index.js +214 -0
  47. package/components/Sidebar/messages.js +21 -0
  48. package/components/SlideBox/_slideBox.scss +63 -0
  49. package/components/SlideBox/index.js +47 -0
  50. package/components/SlideBox/tests/index.test.js +103 -0
  51. package/components/SmsEditor/index.js +55 -0
  52. package/components/SmsTest/index.js +117 -0
  53. package/components/SmsTest/messages.js +21 -0
  54. package/components/TemplatePreview/WechatRichmediaTemplatePreview/_wechatRichmediaTemplatePrev.scss +42 -0
  55. package/components/TemplatePreview/WechatRichmediaTemplatePreview/index.js +141 -0
  56. package/components/TemplatePreview/WechatRichmediaTemplatePreview/messages.js +21 -0
  57. package/components/TemplatePreview/_templatePreview.scss +642 -0
  58. package/components/TemplatePreview/assets/images/WECHAT_5x.png +0 -0
  59. package/components/TemplatePreview/assets/images/androidPushMessage.svg +45 -0
  60. package/components/TemplatePreview/assets/images/home-screen-android.svg +21 -0
  61. package/components/TemplatePreview/assets/images/home-screen-ios.svg +16 -0
  62. package/components/TemplatePreview/assets/images/iPhonePushMessage.svg +135 -0
  63. package/components/TemplatePreview/assets/images/mobile.svg +24 -0
  64. package/components/TemplatePreview/assets/images/sms-body.png +0 -0
  65. package/components/TemplatePreview/assets/images/sms-icon.png +0 -0
  66. package/components/TemplatePreview/assets/images/sms_mobile.png +0 -0
  67. package/components/TemplatePreview/assets/images/sms_mobile_android.svg +22 -0
  68. package/components/TemplatePreview/assets/images/sms_mobile_ios.svg +16 -0
  69. package/components/TemplatePreview/assets/images/user-icon.svg +19 -0
  70. package/components/TemplatePreview/assets/images/wechat-mobile.svg +78 -0
  71. package/components/TemplatePreview/assets/images/wechat_mobile_android.svg +20 -0
  72. package/components/TemplatePreview/index.js +617 -0
  73. package/components/TemplatePreview/messages.js +78 -0
  74. package/components/Toastr/index.js +60 -0
  75. package/components/Toastr/messages.js +13 -0
  76. package/components/ToastrMessage/index.js +113 -0
  77. package/components/ToastrMessage/messages.js +17 -0
  78. package/components/TopBar/_topbar.scss +46 -0
  79. package/components/TopBar/assets/images/capillary_logo.png +0 -0
  80. package/components/TopBar/assets/images/old_capillary_logo.png +0 -0
  81. package/components/TopBar/index.js +113 -0
  82. package/components/TopBar/messages.js +29 -0
  83. package/containers/App/actions.js +7 -0
  84. package/containers/App/constants.js +114 -0
  85. package/containers/App/index.js +52 -0
  86. package/containers/App/reducer.js +19 -0
  87. package/containers/App/sagas.js +31 -0
  88. package/containers/App/selectors.js +25 -0
  89. package/containers/App/test/saga.test.js +11 -0
  90. package/containers/Assets/Gallery/_gallery.scss +126 -0
  91. package/containers/Assets/Gallery/actions.js +37 -0
  92. package/containers/Assets/Gallery/constants.js +23 -0
  93. package/containers/Assets/Gallery/index.js +473 -0
  94. package/containers/Assets/Gallery/messages.js +93 -0
  95. package/containers/Assets/Gallery/reducer.js +81 -0
  96. package/containers/Assets/Gallery/sagas.js +80 -0
  97. package/containers/Assets/Gallery/selectors.js +25 -0
  98. package/containers/Assets/Gallery/tests/__snapshots__/reducer.test.js.snap +9 -0
  99. package/containers/Assets/Gallery/tests/actions.test.js +25 -0
  100. package/containers/Assets/Gallery/tests/reducer.test.js +96 -0
  101. package/containers/Assets/Gallery/tests/saga.test.js +157 -0
  102. package/containers/Cap/actions.js +66 -0
  103. package/containers/Cap/constants.js +25 -0
  104. package/containers/Cap/index.js +402 -0
  105. package/containers/Cap/messages.js +75 -0
  106. package/containers/Cap/reducer.js +113 -0
  107. package/containers/Cap/sagas.js +159 -0
  108. package/containers/Cap/selectors.js +75 -0
  109. package/containers/Cap/tests/__snapshots__/index.test.js.snap +2269 -0
  110. package/containers/Cap/tests/index.test.js +22 -0
  111. package/containers/Cap/tests/saga.test.js +284 -0
  112. package/containers/Dashboard/actions.js +15 -0
  113. package/containers/Dashboard/constants.js +7 -0
  114. package/containers/Dashboard/index.js +76 -0
  115. package/containers/Dashboard/messages.js +13 -0
  116. package/containers/Dashboard/reducer.js +21 -0
  117. package/containers/Dashboard/sagas.js +17 -0
  118. package/containers/Dashboard/selectors.js +25 -0
  119. package/containers/Dashboard/test/saga.test.js +9 -0
  120. package/containers/Ebill/_ebill.scss +5 -0
  121. package/containers/Ebill/actions.js +43 -0
  122. package/containers/Ebill/constants.js +20 -0
  123. package/containers/Ebill/index.js +1278 -0
  124. package/containers/Ebill/messages.js +77 -0
  125. package/containers/Ebill/reducer.js +72 -0
  126. package/containers/Ebill/sagas.js +74 -0
  127. package/containers/Ebill/selectors.js +25 -0
  128. package/containers/Ebill/test/saga.test.js +11 -0
  129. package/containers/Email/_email.scss +141 -0
  130. package/containers/Email/actions.js +81 -0
  131. package/containers/Email/constants.js +36 -0
  132. package/containers/Email/index.js +3325 -0
  133. package/containers/Email/messages.js +289 -0
  134. package/containers/Email/reducer.js +142 -0
  135. package/containers/Email/sagas.js +135 -0
  136. package/containers/Email/selectors.js +31 -0
  137. package/containers/Email/test/saga.test.js +671 -0
  138. package/containers/LanguageProvider/actions.js +17 -0
  139. package/containers/LanguageProvider/constants.js +8 -0
  140. package/containers/LanguageProvider/index.js +80 -0
  141. package/containers/LanguageProvider/reducer.js +30 -0
  142. package/containers/LanguageProvider/selectors.js +20 -0
  143. package/containers/LanguageProvider/tests/actions.test.js +19 -0
  144. package/containers/LanguageProvider/tests/index.test.js +78 -0
  145. package/containers/LanguageProvider/tests/reducer.test.js +20 -0
  146. package/containers/LanguageProvider/tests/selectors.test.js +15 -0
  147. package/containers/Line/Create/_lineCreate.scss +54 -0
  148. package/containers/Line/Create/actions.js +90 -0
  149. package/containers/Line/Create/constants.js +39 -0
  150. package/containers/Line/Create/index.js +836 -0
  151. package/containers/Line/Create/messages.js +189 -0
  152. package/containers/Line/Create/reducer.js +99 -0
  153. package/containers/Line/Create/sagas.js +121 -0
  154. package/containers/Line/Create/selectors.js +36 -0
  155. package/containers/Line/Create/tests/saga.test.js +202 -0
  156. package/containers/Line/Edit/_lineEdit.scss +35 -0
  157. package/containers/Line/Edit/actions.js +79 -0
  158. package/containers/Line/Edit/constants.js +27 -0
  159. package/containers/Line/Edit/index.js +1050 -0
  160. package/containers/Line/Edit/messages.js +177 -0
  161. package/containers/Line/Edit/reducer.js +83 -0
  162. package/containers/Line/Edit/sagas.js +80 -0
  163. package/containers/Line/Edit/selectors.js +29 -0
  164. package/containers/Line/Edit/test/saga.test.js +160 -0
  165. package/containers/Login/assets/images/capillary_logo.png +0 -0
  166. package/containers/Login/components/LoginForm/index.js +62 -0
  167. package/containers/Login/components/LoginForm/messages.js +33 -0
  168. package/containers/Login/index.js +130 -0
  169. package/containers/Login/messages.js +25 -0
  170. package/containers/Login/selectors.js +25 -0
  171. package/containers/MobilePush/Create/_mobilePushCreate.scss +39 -0
  172. package/containers/MobilePush/Create/actions.js +46 -0
  173. package/containers/MobilePush/Create/constants.js +23 -0
  174. package/containers/MobilePush/Create/index.js +2303 -0
  175. package/containers/MobilePush/Create/messages.js +269 -0
  176. package/containers/MobilePush/Create/reducer.js +70 -0
  177. package/containers/MobilePush/Create/sagas.js +74 -0
  178. package/containers/MobilePush/Create/selectors.js +28 -0
  179. package/containers/MobilePush/Create/test/saga.test.js +19 -0
  180. package/containers/MobilePush/Edit/_mobilePushCreate.scss +39 -0
  181. package/containers/MobilePush/Edit/actions.js +91 -0
  182. package/containers/MobilePush/Edit/constants.js +35 -0
  183. package/containers/MobilePush/Edit/index.js +2601 -0
  184. package/containers/MobilePush/Edit/messages.js +266 -0
  185. package/containers/MobilePush/Edit/reducer.js +112 -0
  186. package/containers/MobilePush/Edit/sagas.js +126 -0
  187. package/containers/MobilePush/Edit/selectors.js +29 -0
  188. package/containers/MobilePush/Edit/tests/saga.test.js +255 -0
  189. package/containers/NotFoundPage/index.js +25 -0
  190. package/containers/NotFoundPage/messages.js +13 -0
  191. package/containers/NotFoundPage/tests/index.test.js +17 -0
  192. package/containers/Sms/Create/_smsCreate.scss +42 -0
  193. package/containers/Sms/Create/actions.js +27 -0
  194. package/containers/Sms/Create/constants.js +16 -0
  195. package/containers/Sms/Create/index.js +1488 -0
  196. package/containers/Sms/Create/messages.js +109 -0
  197. package/containers/Sms/Create/reducer.js +41 -0
  198. package/containers/Sms/Create/sagas.js +40 -0
  199. package/containers/Sms/Create/selectors.js +28 -0
  200. package/containers/Sms/Create/test/saga.test.js +11 -0
  201. package/containers/Sms/Edit/actions.js +40 -0
  202. package/containers/Sms/Edit/constants.js +17 -0
  203. package/containers/Sms/Edit/index.js +1472 -0
  204. package/containers/Sms/Edit/messages.js +105 -0
  205. package/containers/Sms/Edit/reducer.js +50 -0
  206. package/containers/Sms/Edit/sagas.js +60 -0
  207. package/containers/Sms/Edit/selectors.js +32 -0
  208. package/containers/Sms/Edit/test/saga.test.js +13 -0
  209. package/containers/TagList/_tagList.scss +8 -0
  210. package/containers/TagList/actions.js +15 -0
  211. package/containers/TagList/constants.js +32 -0
  212. package/containers/TagList/index.js +236 -0
  213. package/containers/TagList/messages.js +13 -0
  214. package/containers/TagList/reducer.js +23 -0
  215. package/containers/TagList/sagas.js +11 -0
  216. package/containers/TagList/selectors.js +25 -0
  217. package/containers/Templates/_templates.scss +333 -0
  218. package/containers/Templates/actions.js +103 -0
  219. package/containers/Templates/constants.js +60 -0
  220. package/containers/Templates/index.js +1756 -0
  221. package/containers/Templates/messages.js +337 -0
  222. package/containers/Templates/reducer.js +142 -0
  223. package/containers/Templates/sagas.js +163 -0
  224. package/containers/Templates/selectors.js +28 -0
  225. package/containers/Templates/test/saga.test.js +241 -0
  226. package/containers/WeChat/MapTemplates/_mapTemplates.scss +8 -0
  227. package/containers/WeChat/MapTemplates/actions.js +52 -0
  228. package/containers/WeChat/MapTemplates/constants.js +28 -0
  229. package/containers/WeChat/MapTemplates/index.js +1610 -0
  230. package/containers/WeChat/MapTemplates/messages.js +157 -0
  231. package/containers/WeChat/MapTemplates/reducer.js +74 -0
  232. package/containers/WeChat/MapTemplates/sagas.js +84 -0
  233. package/containers/WeChat/MapTemplates/selectors.js +25 -0
  234. package/containers/WeChat/MapTemplates/test/saga.test.js +155 -0
  235. package/containers/WeChat/RichmediaTemplates/Create/_createRichmedia.scss +57 -0
  236. package/containers/WeChat/RichmediaTemplates/Create/actions.js +36 -0
  237. package/containers/WeChat/RichmediaTemplates/Create/constants.js +15 -0
  238. package/containers/WeChat/RichmediaTemplates/Create/index.js +1071 -0
  239. package/containers/WeChat/RichmediaTemplates/Create/messages.js +165 -0
  240. package/containers/WeChat/RichmediaTemplates/Create/reducer.js +60 -0
  241. package/containers/WeChat/RichmediaTemplates/Create/richmediaschema.js +497 -0
  242. package/containers/WeChat/RichmediaTemplates/Create/sagas.js +51 -0
  243. package/containers/WeChat/RichmediaTemplates/Create/selectors.js +37 -0
  244. package/containers/WeChat/RichmediaTemplates/Create/test/saga.test.js +13 -0
  245. package/containers/WeChat/RichmediaTemplates/Edit/actions.js +20 -0
  246. package/containers/WeChat/RichmediaTemplates/Edit/constants.js +10 -0
  247. package/containers/WeChat/RichmediaTemplates/Edit/index.js +136 -0
  248. package/containers/WeChat/RichmediaTemplates/Edit/messages.js +13 -0
  249. package/containers/WeChat/RichmediaTemplates/Edit/reducer.js +28 -0
  250. package/containers/WeChat/RichmediaTemplates/Edit/sagas.js +36 -0
  251. package/containers/WeChat/RichmediaTemplates/Edit/selectors.js +30 -0
  252. package/containers/WeChat/RichmediaTemplates/Edit/test/saga.test.js +12 -0
  253. package/containers/WeChat/RichmediaTemplates/View/actions.js +15 -0
  254. package/containers/WeChat/RichmediaTemplates/View/constants.js +7 -0
  255. package/containers/WeChat/RichmediaTemplates/View/index.js +47 -0
  256. package/containers/WeChat/RichmediaTemplates/View/messages.js +21 -0
  257. package/containers/WeChat/RichmediaTemplates/View/reducer.js +23 -0
  258. package/containers/WeChat/RichmediaTemplates/View/sagas.js +11 -0
  259. package/containers/WeChat/RichmediaTemplates/View/selectors.js +25 -0
  260. package/index.js +2 -4
  261. package/package.json +1 -1
  262. package/routes.js +202 -136
  263. package/services/getSchema.js +1 -1
  264. package/services/localStorageApi.js +0 -1
  265. package/tests/i18n.test.js +1 -1
  266. package/utils/asyncInjectors.js +78 -0
  267. package/utils/authWrapper.js +1 -1
  268. package/utils/callNativeEvent.js +16 -0
  269. package/utils/checkStore.js +21 -0
  270. package/utils/common.js +2 -2
  271. package/utils/customAuthWrapper.js +62 -0
  272. package/utils/customConnectedAuthWrapper.js +26 -0
  273. package/utils/tagValidations.js +1 -1
  274. package/utils/tests/checkStore.test.js +1 -1
  275. package/utils/tests/customAuth.test.js +1 -1
  276. package/utils/transformerUtils.js +195 -1
  277. package/v2Components/CapTagList/index.js +14 -9
  278. package/v2Components/Carousel/style.scss +1 -1
  279. package/v2Components/EmailMobilePreview/index.js +2 -2
  280. package/v2Components/FormBuilder/index.js +2 -2
  281. package/v2Components/TemplatePreview/index.js +1 -2
  282. package/v2Containers/Cap/tests/saga.test.js +1 -1
  283. package/v2Containers/Email/index.js +1 -1
  284. package/v2Containers/FTP/index.js +1 -1
  285. package/v2Containers/Line/Container/Text/index.js +6 -6
  286. package/v2Containers/Sms/Create/index.js +2 -2
  287. package/v2Containers/Sms/Edit/index.js +1 -1
  288. package/v2Containers/TagList/index.js +1 -1
  289. package/v2Containers/TagList/utils.js +1 -1
  290. package/v2Containers/Templates/index.js +1 -1
  291. package/v2Containers/Templates/sagas.js +1 -1
  292. package/constants/unified.js +0 -189
@@ -0,0 +1,266 @@
1
+ /*
2
+ * Edit Messages
3
+ *
4
+ * This contains all the text for the Edit component.
5
+ */
6
+ import { defineMessages } from 'react-intl';
7
+
8
+ export default defineMessages({
9
+ "imageUploadLabel": {
10
+ id: 'creatives.containers.MobilePush.Edit.ImageUploadLabel',
11
+ defaultMessage: 'Upload image',
12
+ },
13
+ "Enter template name*": {
14
+ id: 'creatives.containers.MobilePush.Edit.enterTemplateNameImportant',
15
+ defaultMessage: 'Enter template name*',
16
+ },
17
+ "Enter template name": {
18
+ id: 'creatives.containers.MobilePush.Edit.enterTemplateName',
19
+ defaultMessage: 'Enter template name',
20
+ },
21
+ "Template name cannot be empty": {
22
+ id: 'creatives.containers.MobilePush.Edit.templateCantEmpty',
23
+ defaultMessage: 'Template name cannot be empty',
24
+ },
25
+ "Discard Changes": {
26
+ id: 'creatives.containers.MobilePush.Edit.discardChanges',
27
+ defaultMessage: 'Discard changes',
28
+ },
29
+ "Cancel": {
30
+ id: 'creatives.containers.MobilePush.Edit.cancel',
31
+ defaultMessage: 'Cancel',
32
+ },
33
+ "Save": {
34
+ id: 'creatives.containers.MobilePush.Edit.save',
35
+ defaultMessage: 'Save',
36
+ },
37
+ "Select Mobilepush Account": {
38
+ id: 'creatives.containers.MobilePush.Edit.selectMobilePushAccount',
39
+ defaultMessage: 'Select mobilepush account',
40
+ },
41
+ "Account Id": {
42
+ id: 'creatives.containers.MobilePush.Edit.accountId',
43
+ defaultMessage: 'Account id',
44
+ },
45
+ "Select Mobilepush Template": {
46
+ id: 'creatives.containers.MobilePush.Edit.selectMobilePushTemplate',
47
+ defaultMessage: 'Select mobilepush template',
48
+ },
49
+ "Template": {
50
+ id: 'creatives.containers.MobilePush.Edit.template',
51
+ defaultMessage: 'Template',
52
+ },
53
+ "Android": {
54
+ id: 'creatives.containers.MobilePush.Edit.Android',
55
+ defaultMessage: 'Android',
56
+ },
57
+ "Copy Title and Content From IOS": {
58
+ id: 'creatives.containers.MobilePush.Edit.copyFromIos',
59
+ defaultMessage: 'Copy Title and Content From IOS',
60
+ },
61
+ "Title*": {
62
+ id: 'creatives.containers.MobilePush.Edit.titleLabel',
63
+ defaultMessage: 'Title*',
64
+ },
65
+ "Title": {
66
+ id: 'creatives.containers.MobilePush.Edit.title',
67
+ defaultMessage: 'Title',
68
+ },
69
+ "Please input message title name.": {
70
+ id: 'creatives.containers.MobilePush.Edit.titleNameInvalid',
71
+ defaultMessage: 'Please enter the message title',
72
+ },
73
+ "Template message has unsupported/missing tags!": {
74
+ id: 'creatives.containers.MobilePush.Edit.messageHasUnsupportedTag',
75
+ defaultMessage: 'Please check the message content for unsupported/missing tags',
76
+ },
77
+ "Tags": {
78
+ id: 'creatives.containers.MobilePush.Edit.Tags',
79
+ defaultMessage: 'Tags',
80
+ },
81
+ "Message*": {
82
+ id: 'creatives.containers.MobilePush.Edit.messageLabel',
83
+ defaultMessage: 'Message*',
84
+ },
85
+ "Message": {
86
+ id: 'creatives.containers.MobilePush.Edit.message',
87
+ defaultMessage: 'Message',
88
+ },
89
+ "Please input mobile push template content.": {
90
+ id: 'creatives.containers.MobilePush.Edit.inputMobilePushTemplateContent',
91
+ defaultMessage: 'Please enter the message content',
92
+ },
93
+ "addPrimaryCTA": {
94
+ id: 'creatives.containers.MobilePush.Edit.addPrimaryCTA',
95
+ defaultMessage: 'Add primary CTA',
96
+ },
97
+ "addSecondaryCTA": {
98
+ id: 'creatives.containers.MobilePush.Edit.addSecondaryCTA',
99
+ defaultMessage: 'Add secondary CTA',
100
+ },
101
+ "iOS": {
102
+ id: 'creatives.containers.MobilePush.Edit.iOS',
103
+ defaultMessage: 'iOS',
104
+ },
105
+ "Copy Title and Content From Android": {
106
+ id: 'creatives.containers.MobilePush.Edit.copyFromAndroid',
107
+ defaultMessage: 'Copy Title and Content From Android',
108
+ },
109
+ "Template title has unsupported/missing tags.": {
110
+ id: 'creatives.containers.MobilePush.Edit.titleHasUnsupportedTag',
111
+ defaultMessage: 'Please check the message content for unsupported/missing tags',
112
+ },
113
+ "Template name cannot be empty.": {
114
+ id: 'creatives.containers.MobilePush.Edit.templateNameNotEmpty',
115
+ defaultMessage: 'Please provide a template name ',
116
+ },
117
+ "Message title has unsupported/missing tags!": {
118
+ id: 'creatives.containers.MobilePush.Edit.messageTitleWithUnsupportedTag',
119
+ defaultMessage: 'Please check the message content for unsupported/missing tags',
120
+ },
121
+ "Image": {
122
+ id: 'creatives.containers.MobilePush.Edit.Image',
123
+ defaultMessage: 'Image',
124
+ },
125
+ "Max file size acceptable is 5mb": {
126
+ id: 'creatives.containers.MobilePush.Edit.maxUploadFileSize',
127
+ defaultMessage: 'Max file size acceptable is 5mb',
128
+ },
129
+ "Please upload Image": {
130
+ id: 'creatives.containers.MobilePush.Edit.pleaseUploadImage',
131
+ defaultMessage: 'Please upload image',
132
+ },
133
+ "Upload Image": {
134
+ id: 'creatives.containers.MobilePush.Edit.uploadImage',
135
+ defaultMessage: 'Upload image',
136
+ },
137
+ "MOBILEPUSH Template Edited Successfully": {
138
+ id: 'creatives.containers.MobilePush.Edit.templateEditedSuccessfully',
139
+ defaultMessage: 'MOBILEPUSH template edited successfully',
140
+ },
141
+ "somethingWentWrong": {
142
+ id: 'creatives.containers.MobilePush.Edit.somethingWentWrong',
143
+ defaultMessage: 'Something went wrong!!',
144
+ },
145
+ "Select DeepLink": {
146
+ id: 'creatives.containers.MobilePush.Edit.selectDeepLink',
147
+ defaultMessage: 'Select deepLink',
148
+ },
149
+ "External Link": {
150
+ id: 'creatives.containers.MobilePush.Edit.externalLink',
151
+ defaultMessage: 'External link',
152
+ },
153
+
154
+ "externalLinkCantEmpty": {
155
+ id: 'creatives.containers.MobilePush.Edit.externalLinkCantEmpty',
156
+ defaultMessage: 'External link cannot be empty.',
157
+ },
158
+ "goBackConfirmation": {
159
+ id: 'creatives.containers.MobilePush.Edit.goBackConfirmation',
160
+ defaultMessage: "Going back will discard all the changes you've made. Continue?",
161
+ },
162
+ "alertMessage": {
163
+ id: 'creatives.containers.MobilePush.Edit.alertMessage',
164
+ defaultMessage: "Alert",
165
+ },
166
+ "secondaryCTA": {
167
+ id: 'creatives.containers.MobilePush.Edit.secondaryCTA',
168
+ defaultMessage: 'Secondary CTA',
169
+ },
170
+ "nameAndDescription": {
171
+ id: 'creatives.containers.MobilePush.Edit.nameAndDescription',
172
+ defaultMessage: 'Name and description',
173
+ },
174
+ "button1": {
175
+ id: 'creatives.containers.MobilePush.Edit.button1',
176
+ defaultMessage: 'Button 1',
177
+ },
178
+ "button2": {
179
+ id: 'creatives.containers.MobilePush.Edit.button2',
180
+ defaultMessage: 'Button 2',
181
+ },
182
+ "addAnotherCTA": {
183
+ id: 'creatives.containers.MobilePush.Edit.addAnotherCTA',
184
+ defaultMessage: 'Add another CTA',
185
+ },
186
+ "selectLinkType": {
187
+ id: 'creatives.containers.MobilePush.Edit.selectLinkType',
188
+ defaultMessage: 'Please select link type',
189
+ },
190
+ "primaryCTA": {
191
+ id: 'creatives.containers.MobilePush.Edit.primaryCTA',
192
+ defaultMessage: 'Primary CTA',
193
+ },
194
+ "enterCTALabel": {
195
+ id: 'creatives.containers.MobilePush.Edit.enterCTALabel',
196
+ defaultMessage: 'Enter CTA label here',
197
+ },
198
+ "ctaLabelCantEmpty": {
199
+ id: 'creatives.containers.MobilePush.Edit.ctaLabelCantEmpty',
200
+ defaultMessage: 'CTA label cannot be empty.',
201
+ },
202
+ "selectDeeplink": {
203
+ id: 'creatives.containers.MobilePush.Edit.selectDeeplink',
204
+ defaultMessage: 'Select deeplink',
205
+ },
206
+ "selectADeeplink": {
207
+ id: 'creatives.containers.MobilePush.Edit.selectADeeplink',
208
+ defaultMessage: 'Select a deeplink',
209
+ },
210
+ "File size cannot be more than 5mb": {
211
+ id: 'creatives.containers.MobilePush.Edit.uploadFileSizeError',
212
+ defaultMessage: 'File size cannot be more than 5mb',
213
+ },
214
+ "valueCantEmpty": {
215
+ id: 'creatives.containers.MobilePush.Edit.valueCantEmpty',
216
+ defaultMessage: 'value cannot be empty.',
217
+ },
218
+ "deleteSecondCTAFirst": {
219
+ id: 'creatives.containers.MobilePush.Edit.deleteSecondCTAFirst',
220
+ defaultMessage: 'Please delete second Secondary cta First',
221
+ },
222
+ "Uploading Image...": {
223
+ id: 'creatives.containers.MobilePush.Edit.uploadingImage',
224
+ defaultMessage: 'Uploading image...',
225
+ },
226
+ "Campaigns": {
227
+ id: 'creatives.containers.MobilePush.Edit.Campaigns',
228
+ defaultMessage: 'Campaigns',
229
+ },
230
+ "Creatives": {
231
+ id: 'creatives.containers.MobilePush.Edit.Creatives',
232
+ defaultMessage: 'Creatives',
233
+ },
234
+ "mobilePush": {
235
+ id: 'creatives.containers.MobilePush.Edit.mobilePush',
236
+ defaultMessage: 'Mobile Push',
237
+ },
238
+ "template not configured,": {
239
+ id: 'creatives.containers.MobilePush.Edit.templateNotConfigured',
240
+ defaultMessage: 'template not configured,',
241
+ },
242
+ "androidTemplateNotConfigured": {
243
+ id: 'creatives.containers.MobilePush.Edit.androidTemplateNotConfigured',
244
+ defaultMessage: 'Android template is not configured. Continue save?',
245
+ },
246
+ "iosTemplateNotConfigured": {
247
+ id: 'creatives.containers.MobilePush.Edit.iosTemplateNotConfigured',
248
+ defaultMessage: 'IOS template is not configured, Save without IOS template',
249
+ },
250
+ "cantCopyEmptyField": {
251
+ id: 'creatives.containers.MobilePush.Edit.cantCopyEmptyField',
252
+ defaultMessage: "Cannot copy empty field values.",
253
+ },
254
+ "pleaseInput": {
255
+ id: 'creatives.containers.MobilePush.Edit.pleaseInput',
256
+ defaultMessage: "Please input",
257
+ },
258
+ "savingTemplate": {
259
+ id: 'creatives.containers.MobilePush.Edit.savingTemplate',
260
+ defaultMessage: "Saving Template...",
261
+ },
262
+ "gettingTemplate": {
263
+ id: 'creatives.containers.MobilePush.Edit.gettingTemplate',
264
+ defaultMessage: "Getting template details...",
265
+ },
266
+ });
@@ -0,0 +1,112 @@
1
+ /*
2
+ *
3
+ * Create reducer
4
+ *
5
+ */
6
+
7
+ import { fromJS } from 'immutable';
8
+ import * as types from './constants';
9
+
10
+ const initialState = fromJS({
11
+ editTemplateInProgress: false,
12
+ editResponse: {},
13
+ getTemplateDetailsInProgress: false,
14
+ templateDetails: {},
15
+ });
16
+
17
+ function editReducer(state = initialState, action) {
18
+ switch (action.type) {
19
+ case types.DEFAULT_ACTION:
20
+ return state;
21
+ case types.EDIT_TEMPLATE_REQUEST:
22
+ return state
23
+ .set('editTemplateInProgress', true)
24
+ .set('editTemplateError', false)
25
+ .set('editTemplateErrorMessage', fromJS(""));
26
+ case types.EDIT_TEMPLATE_SUCCESS:
27
+ return state.set('editTemplateInProgress', false)
28
+ .set('editResponse', action.data)
29
+ .set('editTemplateError', (action.statusCode !== undefined && action.statusCode > 300))
30
+ .set('editTemplateErrorMessage', fromJS(action.errorMsg));
31
+ case types.EDIT_TEMPLATE_FAILURE:
32
+ return state
33
+ .set('editTemplateInProgress', false)
34
+ .set('editTemplateError', true)
35
+ .set('editTemplateErrorMessage', fromJS(action.errorMsg));
36
+ case types.GET_TEMPLATE_DETAILS_REQUEST:
37
+ return state.set('getTemplateDetailsInProgress', true);
38
+ case types.GET_TEMPLATE_DETAILS_SUCCESS:
39
+ case types.SET_SELECTED_TEMPLATE:
40
+ return state.set('getTemplateDetailsInProgress', false)
41
+ .set('templateDetails', action.data);
42
+ case types.GET_TEMPLATE_DETAILS_FAILURE:
43
+ return state.set('getTemplateDetailsInProgress', false);
44
+ case types.CLEAR_EDIT_RESPONSE_REQUEST:
45
+ return state.set('editResponse', {});
46
+ case types.GET_IOS_CTAS:
47
+ return state
48
+ .set("getIosCtasSucccess", false)
49
+ .set("iosCtasLoading", true);
50
+ case types.GET_IOS_CTAS_SUCCESS:
51
+ return state
52
+ .set('getIosCtasSucccess', (action.statusCode !== undefined && action.statusCode !== '' && action.statusCode < 300))
53
+ .set('iosCtasLoading', false)
54
+ .set('iosCtasData', action.data);
55
+ case types.GET_IOS_CTAS_FAILURE:
56
+ return state
57
+ .set('getIosCtasSucccess', false)
58
+ .set('iosCtasLoading', false);
59
+ case types.UPLOAD_ASSET_REQUEST:
60
+ return state
61
+ .set('uploadAssetSuccess', false)
62
+ .set('assetUploading', true);
63
+ case types.UPLOAD_ASSET_SUCCESS:
64
+ return state
65
+ .set('uploadAssetSuccess', (action.statusCode !== undefined && action.statusCode !== '' && action.statusCode < 300))
66
+ .set('assetUploading', false)
67
+ .set('uploadedAssetData', action.data);
68
+ case types.UPLOAD_ASSET_FAILURE:
69
+ return state
70
+ .set('uploadAssetSuccess', false)
71
+ .set('assetUploading', false);
72
+ case types.CLEAR_DATA:
73
+ return state
74
+ .delete('uploadedAssetData')
75
+ .delete('metaEntities')
76
+ .delete('templateDetails');
77
+ case types.CLEAR_ASSET:
78
+ return state
79
+ .delete('uploadedAssetData');
80
+ case types.GET_WECRM_ACCOUNTS_REQUEST:
81
+ return state
82
+ .set('fetchingWeCrmAccounts', true)
83
+ .set('weCrmAccountFetchingError', false);
84
+ case types.GET_WECRM_ACCOUNTS_SUCCESS:
85
+ return state
86
+ .set('fetchingWeCrmAccounts', false)
87
+ .set('weCrmAccounts', fromJS(action.data));
88
+ case types.GET_WECRM_ACCOUNTS_FAILURE:
89
+ return state
90
+ .set('fetchingWeCrmAccounts', false)
91
+ .set('weCrmAccountFetchingError', true);
92
+ case types.SET_WECHAT_ACCOUNT:
93
+ return state
94
+ .set('selectedWeChatAccount', fromJS(action.weChatAccount))
95
+ .delete('mobilepushTemplates');
96
+ case types.GET_MOBILEPUSH_TEMPLATES_LIST_REQUEST:
97
+ return state
98
+ .set('fetchingDefaultTemplates', true);
99
+ case types.GET_MOBILEPUSH_TEMPLATES_LIST_SUCCESS:
100
+ return state
101
+ .set('fetchingDefaultTemplates', false)
102
+ .set('mobilepushTemplates', fromJS(action.data));
103
+ case types.GET_MOBILEPUSH_TEMPLATES_LIST_FAILURE:
104
+ return state
105
+ .set('fetchingDefaultTemplates', false)
106
+ .set('errorFetchingDefaultTempalte', true);
107
+ default:
108
+ return state;
109
+ }
110
+ }
111
+
112
+ export default editReducer;
@@ -0,0 +1,126 @@
1
+ import {
2
+ call, put, takeLatest, all,
3
+ } from 'redux-saga/effects';
4
+ // import { schema, normalize } from 'normalizr';
5
+ import * as Api from '../../../services/api';
6
+ import * as types from './constants';
7
+
8
+ // Individual exports for testing
9
+ export function* editTemplate(template) {
10
+ let errorMsg;
11
+ try {
12
+
13
+ const result = yield call(Api.createMobilePushTemplate, template);
14
+
15
+ if (result.message || result.status.code === 500) {
16
+ errorMsg = result.message;
17
+ }
18
+ yield put({ type: types.EDIT_TEMPLATE_SUCCESS, data: result.response, statusCode: result.status ? result.status.code : '', errorMsg });
19
+ } catch (error) {
20
+ yield put({ type: types.EDIT_TEMPLATE_FAILURE, error, errorMsg });
21
+ }
22
+ }
23
+
24
+ export function* getTemplateDetails(id) {
25
+ try {
26
+
27
+ const result = yield call(Api.getTemplateDetails, id);
28
+ // const sidebar = result.response.sidebar;
29
+ yield put({ type: types.GET_TEMPLATE_DETAILS_SUCCESS, data: result.response });
30
+ } catch (error) {
31
+ yield put({ type: types.GET_TEMPLATE_DETAILS_FAILURE, error });
32
+ }
33
+ }
34
+ export function* uploadAsset(file, assetType, fileParams, mode) {
35
+ try {
36
+ const result = yield call(Api.uploadFile, file, assetType, fileParams, mode);
37
+ yield put({ type: types.UPLOAD_ASSET_SUCCESS, data: result.response.asset, statusCode: result.status ? result.status.code : '' });
38
+ } catch (error) {
39
+ yield put({ type: types.UPLOAD_ASSET_FAILURE, error });
40
+ }
41
+ }
42
+ export function* getIosCtas(licenseCode) {
43
+ try {
44
+ const result = yield call(Api.getIosCtas, licenseCode);
45
+ yield put({ type: types.GET_IOS_CTAS_SUCCESS, data: result.response.metaEntities.data, statusCode: result.status ? result.status.code : '' });
46
+ } catch (error) {
47
+ yield put({ type: types.GET_IOS_CTAS_FAILURE, error });
48
+ }
49
+ }
50
+
51
+ export function* getMobilepushTemplatesList(params) {
52
+ try {
53
+
54
+ const result = yield call(Api.getAllTemplates, {channel: params.channel, queryParams: params.queryParams});
55
+ yield put({ type: types.GET_MOBILEPUSH_TEMPLATES_LIST_SUCCESS, data: result.response.templates, templateData: result.response.mapped});
56
+ } catch (error) {
57
+ yield put({ type: types.GET_MOBILEPUSH_TEMPLATES_LIST_FAILURE, error });
58
+ }
59
+ }
60
+
61
+ export function* fetchWeCrmAccounts(action) {
62
+
63
+ try {
64
+ const result = yield call(Api.fetchWeCrmAccounts, action.source);
65
+ yield put({
66
+ type: types.GET_WECRM_ACCOUNTS_SUCCESS,
67
+ data: result.response,
68
+ });
69
+ } catch (error) {
70
+ yield put({
71
+ type: types.GET_WECRM_ACCOUNTS_FAILURE,
72
+ data: error,
73
+ });
74
+ }
75
+ }
76
+
77
+ function* watchFetchWeCrmAccounts() {
78
+ yield takeLatest(types.GET_WECRM_ACCOUNTS_REQUEST, fetchWeCrmAccounts);
79
+
80
+
81
+ }
82
+
83
+ function* watchEditTemplate() {
84
+ yield takeLatest(types.EDIT_TEMPLATE_REQUEST, editTemplate);
85
+
86
+
87
+ }
88
+
89
+ function* watchGetTemplateDetails() {
90
+ yield takeLatest(types.GET_TEMPLATE_DETAILS_REQUEST, getTemplateDetails);
91
+
92
+
93
+ }
94
+ function* watchUploadAsset() {
95
+ yield takeLatest(types.UPLOAD_ASSET_REQUEST, uploadAsset);
96
+
97
+
98
+ }
99
+ function* watchGetIosCtas() {
100
+ yield takeLatest(types.GET_IOS_CTAS, getIosCtas);
101
+
102
+
103
+ }
104
+ function* watchMobilepushTemplatesList() {
105
+ yield takeLatest(types.GET_MOBILEPUSH_TEMPLATES_LIST_REQUEST, getMobilepushTemplatesList);
106
+
107
+
108
+ }
109
+
110
+ // All sagas to be loaded
111
+ export default [
112
+ watchEditTemplate, watchGetTemplateDetails, watchFetchWeCrmAccounts, watchMobilepushTemplatesList,
113
+ watchUploadAsset,
114
+ watchGetIosCtas,
115
+ ];
116
+
117
+ export function* editMPushSaga() {
118
+ yield all([
119
+ watchEditTemplate(),
120
+ watchGetTemplateDetails(),
121
+ watchFetchWeCrmAccounts(),
122
+ watchMobilepushTemplatesList(),
123
+ watchUploadAsset(),
124
+ watchGetIosCtas(),
125
+ ]);
126
+ }
@@ -0,0 +1,29 @@
1
+ import { createSelector } from 'reselect';
2
+
3
+ /**
4
+ * Direct selector to the create state domain
5
+ */
6
+ const selectMobilePushEditDomain = () => (state) => state.get('mobileEdit');
7
+
8
+ /**
9
+ * Other specific selectors
10
+ */
11
+
12
+
13
+ /**
14
+ * Default selector used by Create
15
+ */
16
+
17
+ const makeSelectEdit = () => createSelector(
18
+ selectMobilePushEditDomain(),
19
+ (substate) => substate.toJS()
20
+ );
21
+ const makeSelectEditResponse = () => createSelector(
22
+ selectMobilePushEditDomain(), (dimensionState) => dimensionState.get('editResponse')
23
+ );
24
+ const makeSelectTemplateDetailsResponse = () => createSelector(
25
+ selectMobilePushEditDomain(), (dimensionState) => dimensionState.get('templateDetails')
26
+ );
27
+ export {
28
+ makeSelectEdit, makeSelectEditResponse, makeSelectTemplateDetailsResponse,
29
+ };