@capillarytech/creatives-library 2.0.70 → 2.0.71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app.js +1 -1
- package/components/Ckeditor/index.js +2 -1
- package/components/FormBuilder/index.js +25 -10
- package/components/Header/index.js +3 -1
- package/components/TemplatePreview/WechatRichmediaTemplatePreview/index.js +38 -3
- package/components/TemplatePreview/index.js +45 -51
- package/components/TemplatePreview/messages.js +1 -1
- package/containers/Cap/actions.js +0 -5
- package/containers/Cap/reducer.js +1 -1
- package/containers/Cap/selectors.js +0 -13
- package/containers/Ebill/index.js +1 -2
- package/containers/Email/_email.scss +1 -0
- package/containers/Email/actions.js +3 -8
- package/containers/Email/constants.js +0 -1
- package/containers/Email/index.js +947 -322
- package/containers/Email/reducer.js +0 -3
- package/containers/Email/sagas.js +6 -3
- package/containers/Email/selectors.js +1 -4
- package/containers/Line/Create/index.js +1 -2
- package/containers/Line/Edit/_lineEdit.scss +4 -0
- package/containers/Line/Edit/index.js +1 -3
- package/containers/MobilePush/Create/_mobilePushCreate.scss +3 -12
- package/containers/MobilePush/Create/actions.js +0 -6
- package/containers/MobilePush/Create/constants.js +0 -1
- package/containers/MobilePush/Create/index.js +1133 -628
- package/containers/MobilePush/Create/messages.js +1 -5
- package/containers/MobilePush/Create/reducer.js +0 -2
- package/containers/MobilePush/Create/selectors.js +3 -3
- package/containers/MobilePush/Edit/_mobilePushCreate.scss +3 -9
- package/containers/MobilePush/Edit/index.js +1127 -393
- package/containers/MobilePush/Edit/messages.js +0 -4
- package/containers/MobilePush/Edit/reducer.js +1 -2
- package/containers/MobilePush/Edit/selectors.js +3 -6
- package/containers/Sms/Create/_smsCreate.scss +2 -1
- package/containers/Sms/Create/actions.js +4 -4
- package/containers/Sms/Create/index.js +570 -102
- package/containers/Sms/Create/sagas.js +2 -1
- package/containers/Sms/Edit/actions.js +5 -10
- package/containers/Sms/Edit/constants.js +0 -1
- package/containers/Sms/Edit/index.js +548 -103
- package/containers/Sms/Edit/reducer.js +0 -2
- package/containers/Sms/Edit/sagas.js +3 -1
- package/containers/TagList/index.js +3 -3
- package/containers/Templates/actions.js +1 -3
- package/containers/Templates/index.js +299 -268
- package/containers/Templates/messages.js +90 -122
- package/containers/Templates/reducer.js +3 -3
- package/containers/Templates/sagas.js +1 -5
- package/containers/Templates/selectors.js +1 -41
- package/containers/WeChat/MapTemplates/index.js +3 -4
- package/containers/WeChat/RichmediaTemplates/Create/index.js +18 -4
- package/containers/WeChat/RichmediaTemplates/Create/messages.js +4 -0
- package/containers/WeChat/RichmediaTemplates/Edit/index.js +3 -1
- package/containers/WeChat/RichmediaTemplates/View/index.js +3 -1
- package/index.js +31 -31
- package/initialState.js +6 -0
- package/package.json +3 -3
- package/routes.js +24 -19
- package/services/api.js +6 -2
- package/services/getSchema.js +18 -0
- package/v2Containers/App/actions.js +7 -0
- package/v2Containers/App/constants.js +3 -0
- package/v2Containers/App/reducer.js +19 -0
- package/v2Containers/App/sagas.js +26 -0
- package/v2Containers/App/selectors.js +25 -0
- package/v2Containers/App/tests/actions.test.js +18 -0
- package/v2Containers/App/tests/reducer.test.js +9 -0
- package/v2Containers/App/tests/sagas.test.js +15 -0
- package/v2Containers/App/tests/selectors.test.js +10 -0
- package/v2Containers/Assets/Gallery/_gallery.scss +0 -0
- package/v2Containers/Assets/Gallery/actions.js +37 -0
- package/v2Containers/Assets/Gallery/constants.js +23 -0
- package/v2Containers/Assets/Gallery/index.js +479 -0
- package/v2Containers/Assets/Gallery/messages.js +97 -0
- package/v2Containers/Assets/Gallery/reducer.js +81 -0
- package/v2Containers/Assets/Gallery/sagas.js +84 -0
- package/v2Containers/Assets/Gallery/selectors.js +25 -0
- package/v2Containers/Assets/Gallery/tests/__snapshots__/reducer.test.js.snap +7 -0
- package/v2Containers/Assets/Gallery/tests/actions.test.js +26 -0
- package/v2Containers/Assets/Gallery/tests/index.test.js +10 -0
- package/v2Containers/Assets/Gallery/tests/reducer.test.js +95 -0
- package/v2Containers/Assets/Gallery/tests/sagas.test.js +15 -0
- package/v2Containers/Assets/Gallery/tests/selectors.test.js +10 -0
- package/v2Containers/CallTask/_callTask.scss +5 -0
- package/v2Containers/CallTask/actions.js +15 -0
- package/v2Containers/CallTask/constants.js +7 -0
- package/v2Containers/CallTask/index.js +141 -0
- package/v2Containers/CallTask/messages.js +21 -0
- package/v2Containers/CallTask/reducer.js +23 -0
- package/v2Containers/CallTask/sagas.js +11 -0
- package/v2Containers/CallTask/selectors.js +25 -0
- package/v2Containers/CallTask/tests/actions.test.js +18 -0
- package/v2Containers/CallTask/tests/index.test.js +10 -0
- package/v2Containers/CallTask/tests/reducer.test.js +9 -0
- package/v2Containers/CallTask/tests/sagas.test.js +15 -0
- package/v2Containers/CallTask/tests/selectors.test.js +10 -0
- package/v2Containers/Cap/actions.js +64 -0
- package/v2Containers/Cap/constants.js +24 -0
- package/v2Containers/Cap/index.js +349 -0
- package/v2Containers/Cap/messsages.js +63 -0
- package/v2Containers/Cap/reducer.js +111 -0
- package/v2Containers/Cap/sagas.js +143 -0
- package/v2Containers/Cap/selectors.js +85 -0
- package/v2Containers/Cap/tests/index.test.js +16 -0
- package/v2Containers/Cap/tests/selectors.test.js +28 -0
- package/v2Containers/ChannelTemplates/actions.js +20 -0
- package/v2Containers/ChannelTemplates/constants.js +8 -0
- package/v2Containers/ChannelTemplates/index.js +48 -0
- package/v2Containers/ChannelTemplates/messages.js +13 -0
- package/v2Containers/ChannelTemplates/reducer.js +34 -0
- package/v2Containers/ChannelTemplates/sagas.js +32 -0
- package/v2Containers/ChannelTemplates/selectors.js +25 -0
- package/v2Containers/ChannelTemplates/tests/actions.test.js +18 -0
- package/v2Containers/ChannelTemplates/tests/index.test.js +10 -0
- package/v2Containers/ChannelTemplates/tests/reducer.test.js +9 -0
- package/v2Containers/ChannelTemplates/tests/sagas.test.js +15 -0
- package/v2Containers/ChannelTemplates/tests/selectors.test.js +10 -0
- package/v2Containers/CreativesContainer/SlideBoxContent.js +257 -0
- package/v2Containers/CreativesContainer/SlideBoxFooter.js +45 -0
- package/v2Containers/CreativesContainer/SlideBoxHeader.js +70 -0
- package/v2Containers/CreativesContainer/actions.js +27 -0
- package/v2Containers/CreativesContainer/constants.js +16 -0
- package/v2Containers/CreativesContainer/index.js +483 -0
- package/v2Containers/CreativesContainer/index.scss +27 -0
- package/v2Containers/CreativesContainer/messages.js +293 -0
- package/v2Containers/CreativesContainer/reducer.js +29 -0
- package/v2Containers/CreativesContainer/sagas.js +11 -0
- package/v2Containers/CreativesContainer/selectors.js +30 -0
- package/v2Containers/CreativesContainer/tests/actions.test.js +18 -0
- package/v2Containers/CreativesContainer/tests/index.test.js +10 -0
- package/v2Containers/CreativesContainer/tests/reducer.test.js +9 -0
- package/v2Containers/CreativesContainer/tests/sagas.test.js +15 -0
- package/v2Containers/CreativesContainer/tests/selectors.test.js +10 -0
- package/v2Containers/Dashboard/actions.js +15 -0
- package/v2Containers/Dashboard/constants.js +7 -0
- package/v2Containers/Dashboard/index.js +54 -0
- package/v2Containers/Dashboard/messages.js +13 -0
- package/v2Containers/Dashboard/reducer.js +21 -0
- package/v2Containers/Dashboard/sagas.js +11 -0
- package/v2Containers/Dashboard/selectors.js +25 -0
- package/v2Containers/Dashboard/tests/actions.test.js +18 -0
- package/v2Containers/Dashboard/tests/index.test.js +10 -0
- package/v2Containers/Dashboard/tests/reducer.test.js +9 -0
- package/v2Containers/Dashboard/tests/sagas.test.js +15 -0
- package/v2Containers/Dashboard/tests/selectors.test.js +10 -0
- package/v2Containers/Ebill/_ebill.scss +5 -0
- package/v2Containers/Ebill/actions.js +43 -0
- package/v2Containers/Ebill/constants.js +20 -0
- package/v2Containers/Ebill/index.js +1261 -0
- package/v2Containers/Ebill/messages.js +73 -0
- package/v2Containers/Ebill/reducer.js +72 -0
- package/v2Containers/Ebill/sagas.js +65 -0
- package/v2Containers/Ebill/selectors.js +25 -0
- package/v2Containers/Ebill/tests/actions.test.js +18 -0
- package/v2Containers/Ebill/tests/index.test.js +10 -0
- package/v2Containers/Ebill/tests/reducer.test.js +9 -0
- package/v2Containers/Ebill/tests/sagas.test.js +15 -0
- package/v2Containers/Ebill/tests/selectors.test.js +10 -0
- package/v2Containers/Email/_email.scss +140 -0
- package/v2Containers/Email/actions.js +86 -0
- package/v2Containers/Email/constants.js +37 -0
- package/v2Containers/Email/index.js +2703 -0
- package/v2Containers/Email/initialSchema.js +540 -0
- package/v2Containers/Email/messages.js +237 -0
- package/v2Containers/Email/reducer.js +147 -0
- package/v2Containers/Email/sagas.js +133 -0
- package/v2Containers/Email/selectors.js +34 -0
- package/v2Containers/Email/tests/actions.test.js +18 -0
- package/v2Containers/Email/tests/index.test.js +10 -0
- package/v2Containers/Email/tests/reducer.test.js +9 -0
- package/v2Containers/Email/tests/sagas.test.js +15 -0
- package/v2Containers/Email/tests/selectors.test.js +10 -0
- package/v2Containers/EmailWrapper/actions.js +15 -0
- package/v2Containers/EmailWrapper/constants.js +7 -0
- package/v2Containers/EmailWrapper/index.js +258 -0
- package/v2Containers/EmailWrapper/messages.js +57 -0
- package/v2Containers/EmailWrapper/reducer.js +23 -0
- package/v2Containers/EmailWrapper/sagas.js +11 -0
- package/v2Containers/EmailWrapper/selectors.js +25 -0
- package/v2Containers/EmailWrapper/tests/actions.test.js +18 -0
- package/v2Containers/EmailWrapper/tests/index.test.js +10 -0
- package/v2Containers/EmailWrapper/tests/reducer.test.js +9 -0
- package/v2Containers/EmailWrapper/tests/sagas.test.js +15 -0
- package/v2Containers/EmailWrapper/tests/selectors.test.js +10 -0
- package/v2Containers/LanguageProvider/actions.js +17 -0
- package/v2Containers/LanguageProvider/constants.js +8 -0
- package/v2Containers/LanguageProvider/index.js +46 -0
- package/v2Containers/LanguageProvider/reducer.js +30 -0
- package/v2Containers/LanguageProvider/selectors.js +20 -0
- package/v2Containers/LanguageProvider/tests/actions.test.js +19 -0
- package/v2Containers/LanguageProvider/tests/index.test.js +49 -0
- package/v2Containers/LanguageProvider/tests/reducer.test.js +20 -0
- package/v2Containers/LanguageProvider/tests/selectors.test.js +15 -0
- package/v2Containers/Line/Create/_lineCreate.scss +43 -0
- package/v2Containers/Line/Create/actions.js +90 -0
- package/v2Containers/Line/Create/constants.js +39 -0
- package/v2Containers/Line/Create/index.js +822 -0
- package/v2Containers/Line/Create/messages.js +173 -0
- package/v2Containers/Line/Create/reducer.js +99 -0
- package/v2Containers/Line/Create/sagas.js +107 -0
- package/v2Containers/Line/Create/selectors.js +36 -0
- package/v2Containers/Line/Edit/_lineEdit.scss +21 -0
- package/v2Containers/Line/Edit/actions.js +79 -0
- package/v2Containers/Line/Edit/constants.js +27 -0
- package/v2Containers/Line/Edit/index.js +1050 -0
- package/v2Containers/Line/Edit/messages.js +157 -0
- package/v2Containers/Line/Edit/reducer.js +83 -0
- package/v2Containers/Line/Edit/sagas.js +81 -0
- package/v2Containers/Line/Edit/selectors.js +29 -0
- package/v2Containers/Line/Edit/tests/actions.test.js +18 -0
- package/v2Containers/Line/Edit/tests/index.test.js +10 -0
- package/v2Containers/Line/Edit/tests/reducer.test.js +9 -0
- package/v2Containers/Line/Edit/tests/sagas.test.js +15 -0
- package/v2Containers/Line/Edit/tests/selectors.test.js +10 -0
- package/v2Containers/Login/assets/images/capillary_logo.png +0 -0
- package/v2Containers/Login/components/LoginForm/index.js +59 -0
- package/v2Containers/Login/components/LoginForm/messages.js +21 -0
- package/v2Containers/Login/components/LoginForm/tests/index.test.js +10 -0
- package/v2Containers/Login/index.js +106 -0
- package/v2Containers/Login/messages.js +21 -0
- package/v2Containers/Login/selectors.js +25 -0
- package/v2Containers/Login/tests/index.test.js +10 -0
- package/v2Containers/Login/tests/sagas.test.js +15 -0
- package/v2Containers/Login/tests/selectors.test.js +10 -0
- package/v2Containers/MobilePush/Create/_mobilePushCreate.scss +41 -0
- package/v2Containers/MobilePush/Create/actions.js +52 -0
- package/v2Containers/MobilePush/Create/constants.js +24 -0
- package/v2Containers/MobilePush/Create/index.js +1759 -0
- package/v2Containers/MobilePush/Create/messages.js +237 -0
- package/v2Containers/MobilePush/Create/reducer.js +72 -0
- package/v2Containers/MobilePush/Create/sagas.js +60 -0
- package/v2Containers/MobilePush/Create/selectors.js +28 -0
- package/v2Containers/MobilePush/Create/tests/actions.test.js +18 -0
- package/v2Containers/MobilePush/Create/tests/index.test.js +10 -0
- package/v2Containers/MobilePush/Create/tests/reducer.test.js +9 -0
- package/v2Containers/MobilePush/Create/tests/sagas.test.js +15 -0
- package/v2Containers/MobilePush/Create/tests/selectors.test.js +10 -0
- package/v2Containers/MobilePush/Edit/_mobilePushCreate.scss +38 -0
- package/v2Containers/MobilePush/Edit/actions.js +91 -0
- package/v2Containers/MobilePush/Edit/constants.js +35 -0
- package/v2Containers/MobilePush/Edit/index.js +1846 -0
- package/v2Containers/MobilePush/Edit/messages.js +253 -0
- package/v2Containers/MobilePush/Edit/reducer.js +113 -0
- package/v2Containers/MobilePush/Edit/sagas.js +119 -0
- package/v2Containers/MobilePush/Edit/selectors.js +32 -0
- package/v2Containers/MobilePush/Edit/tests/actions.test.js +18 -0
- package/v2Containers/MobilePush/Edit/tests/index.test.js +10 -0
- package/v2Containers/MobilePush/Edit/tests/reducer.test.js +9 -0
- package/v2Containers/MobilePush/Edit/tests/sagas.test.js +15 -0
- package/v2Containers/MobilePush/Edit/tests/selectors.test.js +10 -0
- package/v2Containers/MobilePush/commonMethods.js +249 -0
- package/v2Containers/MobilePush/eventsMap.js +127 -0
- package/v2Containers/MobilePush/initialSchema.js +1739 -0
- package/v2Containers/MobilepushWrapper/_mobilepushWrapper.scss +18 -0
- package/v2Containers/MobilepushWrapper/index.js +136 -0
- package/v2Containers/MobilepushWrapper/messages.js +29 -0
- package/v2Containers/MobilepushWrapper/tests/index.test.js +10 -0
- package/v2Containers/NotFoundPage/index.js +25 -0
- package/v2Containers/NotFoundPage/messages.js +13 -0
- package/v2Containers/NotFoundPage/tests/index.test.js +17 -0
- package/v2Containers/Sms/Create/_smsCreate.scss +58 -0
- package/v2Containers/Sms/Create/actions.js +27 -0
- package/v2Containers/Sms/Create/constants.js +16 -0
- package/v2Containers/Sms/Create/index.js +1017 -0
- package/v2Containers/Sms/Create/messages.js +85 -0
- package/v2Containers/Sms/Create/reducer.js +41 -0
- package/v2Containers/Sms/Create/sagas.js +35 -0
- package/v2Containers/Sms/Create/selectors.js +28 -0
- package/v2Containers/Sms/Create/tests/actions.test.js +18 -0
- package/v2Containers/Sms/Create/tests/index.test.js +10 -0
- package/v2Containers/Sms/Create/tests/reducer.test.js +9 -0
- package/v2Containers/Sms/Create/tests/sagas.test.js +15 -0
- package/v2Containers/Sms/Create/tests/selectors.test.js +10 -0
- package/v2Containers/Sms/Edit/actions.js +45 -0
- package/v2Containers/Sms/Edit/constants.js +18 -0
- package/v2Containers/Sms/Edit/index.js +1018 -0
- package/v2Containers/Sms/Edit/messages.js +89 -0
- package/v2Containers/Sms/Edit/reducer.js +52 -0
- package/v2Containers/Sms/Edit/sagas.js +50 -0
- package/v2Containers/Sms/Edit/selectors.js +32 -0
- package/v2Containers/Sms/Edit/tests/actions.test.js +18 -0
- package/v2Containers/Sms/Edit/tests/index.test.js +10 -0
- package/v2Containers/Sms/Edit/tests/reducer.test.js +9 -0
- package/v2Containers/Sms/Edit/tests/sagas.test.js +15 -0
- package/v2Containers/Sms/Edit/tests/selectors.test.js +10 -0
- package/v2Containers/Sms/initialSchema.js +281 -0
- package/v2Containers/TagList/_tagList.scss +8 -0
- package/v2Containers/TagList/actions.js +15 -0
- package/v2Containers/TagList/constants.js +7 -0
- package/v2Containers/TagList/index.js +236 -0
- package/v2Containers/TagList/messages.js +13 -0
- package/v2Containers/TagList/reducer.js +23 -0
- package/v2Containers/TagList/sagas.js +11 -0
- package/v2Containers/TagList/selectors.js +25 -0
- package/v2Containers/TagList/tests/actions.test.js +18 -0
- package/v2Containers/TagList/tests/index.test.js +10 -0
- package/v2Containers/TagList/tests/reducer.test.js +9 -0
- package/v2Containers/TagList/tests/sagas.test.js +15 -0
- package/v2Containers/TagList/tests/selectors.test.js +10 -0
- package/v2Containers/Templates/_templates.scss +349 -0
- package/v2Containers/Templates/actions.js +110 -0
- package/v2Containers/Templates/constants.js +45 -0
- package/v2Containers/Templates/index.js +1682 -0
- package/v2Containers/Templates/messages.js +273 -0
- package/v2Containers/Templates/reducer.js +142 -0
- package/v2Containers/Templates/sagas.js +180 -0
- package/v2Containers/Templates/selectors.js +68 -0
- package/v2Containers/Templates/tests/actions.test.js +18 -0
- package/v2Containers/Templates/tests/index.test.js +10 -0
- package/v2Containers/Templates/tests/reducer.test.js +9 -0
- package/v2Containers/Templates/tests/sagas.test.js +15 -0
- package/v2Containers/Templates/tests/selectors.test.js +10 -0
- package/v2Containers/TemplatesV2/_templatesV2.scss +5 -0
- package/v2Containers/TemplatesV2/actions.js +16 -0
- package/v2Containers/TemplatesV2/constants.js +10 -0
- package/v2Containers/TemplatesV2/index.js +217 -0
- package/v2Containers/TemplatesV2/messages.js +29 -0
- package/v2Containers/TemplatesV2/selectors.js +25 -0
- package/v2Containers/TemplatesV2/tests/actions.test.js +18 -0
- package/v2Containers/TemplatesV2/tests/index.test.js +10 -0
- package/v2Containers/TemplatesV2/tests/reducer.test.js +9 -0
- package/v2Containers/TemplatesV2/tests/sagas.test.js +15 -0
- package/v2Containers/TemplatesV2/tests/selectors.test.js +10 -0
- package/v2Containers/TestPage/constants.js +7 -0
- package/v2Containers/TestPage/index.js +31 -0
- package/v2Containers/TestPage/messages.js +13 -0
- package/v2Containers/TestPage/reducer.js +21 -0
- package/v2Containers/TestPage/sagas.js +11 -0
- package/v2Containers/Testv2/actions.js +15 -0
- package/v2Containers/Testv2/constants.js +7 -0
- package/v2Containers/Testv2/index.js +47 -0
- package/v2Containers/Testv2/messages.js +13 -0
- package/v2Containers/Testv2/reducer.js +23 -0
- package/v2Containers/Testv2/sagas.js +11 -0
- package/v2Containers/Testv2/selectors.js +25 -0
- package/v2Containers/Testv2/tests/actions.test.js +18 -0
- package/v2Containers/Testv2/tests/index.test.js +10 -0
- package/v2Containers/Testv2/tests/reducer.test.js +9 -0
- package/v2Containers/Testv2/tests/sagas.test.js +15 -0
- package/v2Containers/Testv2/tests/selectors.test.js +10 -0
- package/v2Containers/WeChat/MapTemplates/_mapTemplates.scss +8 -0
- package/v2Containers/WeChat/MapTemplates/actions.js +52 -0
- package/v2Containers/WeChat/MapTemplates/constants.js +28 -0
- package/v2Containers/WeChat/MapTemplates/index.js +1385 -0
- package/v2Containers/WeChat/MapTemplates/messages.js +73 -0
- package/v2Containers/WeChat/MapTemplates/reducer.js +74 -0
- package/v2Containers/WeChat/MapTemplates/sagas.js +86 -0
- package/v2Containers/WeChat/MapTemplates/selectors.js +25 -0
- package/v2Containers/WeChat/MapTemplates/tests/actions.test.js +18 -0
- package/v2Containers/WeChat/MapTemplates/tests/index.test.js +10 -0
- package/v2Containers/WeChat/MapTemplates/tests/reducer.test.js +9 -0
- package/v2Containers/WeChat/MapTemplates/tests/sagas.test.js +15 -0
- package/v2Containers/WeChat/MapTemplates/tests/selectors.test.js +10 -0
- package/v2Containers/WeChat/RichmediaTemplates/Create/_createRichmedia.scss +57 -0
- package/v2Containers/WeChat/RichmediaTemplates/Create/actions.js +36 -0
- package/v2Containers/WeChat/RichmediaTemplates/Create/constants.js +15 -0
- package/v2Containers/WeChat/RichmediaTemplates/Create/index.js +1053 -0
- package/v2Containers/WeChat/RichmediaTemplates/Create/messages.js +141 -0
- package/v2Containers/WeChat/RichmediaTemplates/Create/reducer.js +60 -0
- package/v2Containers/WeChat/RichmediaTemplates/Create/richmediaschema.js +497 -0
- package/v2Containers/WeChat/RichmediaTemplates/Create/sagas.js +48 -0
- package/v2Containers/WeChat/RichmediaTemplates/Create/selectors.js +37 -0
- package/v2Containers/WeChat/RichmediaTemplates/Create/tests/actions.test.js +18 -0
- package/v2Containers/WeChat/RichmediaTemplates/Create/tests/index.test.js +10 -0
- package/v2Containers/WeChat/RichmediaTemplates/Create/tests/reducer.test.js +9 -0
- package/v2Containers/WeChat/RichmediaTemplates/Create/tests/sagas.test.js +15 -0
- package/v2Containers/WeChat/RichmediaTemplates/Create/tests/selectors.test.js +10 -0
- package/v2Containers/WeChat/RichmediaTemplates/Edit/actions.js +20 -0
- package/v2Containers/WeChat/RichmediaTemplates/Edit/constants.js +10 -0
- package/v2Containers/WeChat/RichmediaTemplates/Edit/index.js +116 -0
- package/v2Containers/WeChat/RichmediaTemplates/Edit/messages.js +13 -0
- package/v2Containers/WeChat/RichmediaTemplates/Edit/reducer.js +28 -0
- package/v2Containers/WeChat/RichmediaTemplates/Edit/sagas.js +32 -0
- package/v2Containers/WeChat/RichmediaTemplates/Edit/selectors.js +30 -0
- package/v2Containers/WeChat/RichmediaTemplates/Edit/tests/actions.test.js +18 -0
- package/v2Containers/WeChat/RichmediaTemplates/Edit/tests/index.test.js +10 -0
- package/v2Containers/WeChat/RichmediaTemplates/Edit/tests/reducer.test.js +9 -0
- package/v2Containers/WeChat/RichmediaTemplates/Edit/tests/sagas.test.js +15 -0
- package/v2Containers/WeChat/RichmediaTemplates/Edit/tests/selectors.test.js +10 -0
- package/v2Containers/WeChat/RichmediaTemplates/View/actions.js +15 -0
- package/v2Containers/WeChat/RichmediaTemplates/View/constants.js +7 -0
- package/v2Containers/WeChat/RichmediaTemplates/View/index.js +47 -0
- package/v2Containers/WeChat/RichmediaTemplates/View/messages.js +13 -0
- package/v2Containers/WeChat/RichmediaTemplates/View/reducer.js +23 -0
- package/v2Containers/WeChat/RichmediaTemplates/View/sagas.js +11 -0
- package/v2Containers/WeChat/RichmediaTemplates/View/selectors.js +25 -0
- package/v2Containers/WeChat/RichmediaTemplates/View/tests/actions.test.js +18 -0
- package/v2Containers/WeChat/RichmediaTemplates/View/tests/index.test.js +10 -0
- package/v2Containers/WeChat/RichmediaTemplates/View/tests/reducer.test.js +9 -0
- package/v2Containers/WeChat/RichmediaTemplates/View/tests/sagas.test.js +15 -0
- package/v2Containers/WeChat/RichmediaTemplates/View/tests/selectors.test.js +10 -0
package/app.js
CHANGED
|
@@ -6,7 +6,7 @@ import createHistory from 'history/lib/createBrowserHistory';
|
|
|
6
6
|
import { applyRouterMiddleware, Router, useRouterHistory } from 'react-router';
|
|
7
7
|
import { syncHistoryWithStore } from 'react-router-redux';
|
|
8
8
|
import { useScroll } from 'react-router-scroll';
|
|
9
|
-
import Cap from '
|
|
9
|
+
import Cap from 'v2Containers/Cap';
|
|
10
10
|
import { LocaleProvider } from 'antd';
|
|
11
11
|
import { makeSelectLocationState } from 'containers/Cap/selectors';
|
|
12
12
|
import LanguageProvider from 'containers/LanguageProvider';
|
|
@@ -163,7 +163,8 @@ class Ckeditor extends React.Component { // eslint-disable-line react/prefer-sta
|
|
|
163
163
|
_.forEach(this.props.events, (event, index) => {
|
|
164
164
|
this.editorInstance.on(index, event);
|
|
165
165
|
});
|
|
166
|
-
|
|
166
|
+
const channel = _.get(this.props, 'channel');
|
|
167
|
+
if (channel && channel.toLowerCase() === 'wechat') {
|
|
167
168
|
this.editorInstance.on('blur', this.onFocusOut);
|
|
168
169
|
_.forEach(this.props.events, (event, index) => {
|
|
169
170
|
this.editorInstance.on(index, event);
|
|
@@ -421,7 +421,7 @@ class FormBuilder extends React.Component { // eslint-disable-line react/prefer-
|
|
|
421
421
|
if (this.props.schema.channel === 'SMS') {
|
|
422
422
|
|
|
423
423
|
for (let count = 0; count < this.state.tabCount; count += 1) {
|
|
424
|
-
if (_.isEmpty(errorData[count])) {
|
|
424
|
+
if (_.isEmpty(errorData[count]) && this.props.isNewVersionFlow) {
|
|
425
425
|
return;
|
|
426
426
|
}
|
|
427
427
|
const index = count + 1;
|
|
@@ -432,7 +432,10 @@ class FormBuilder extends React.Component { // eslint-disable-line react/prefer-
|
|
|
432
432
|
const unicodeCheck = this.state.formData[count][`unicode-validity${index > 1 ? index : ''}`];
|
|
433
433
|
const ifUnicode = content && content !== '' ? checkUnicode(content) : false;
|
|
434
434
|
|
|
435
|
-
|
|
435
|
+
let tagValidationResponse = false;
|
|
436
|
+
if (content) {
|
|
437
|
+
tagValidationResponse = this.validateTags(content, tags, injectedTags);
|
|
438
|
+
}
|
|
436
439
|
|
|
437
440
|
if (tagValidationResponse.valid) {
|
|
438
441
|
errorData[count][`sms-editor${index > 1 ? index : ''}`] = false;
|
|
@@ -585,6 +588,10 @@ class FormBuilder extends React.Component { // eslint-disable-line react/prefer-
|
|
|
585
588
|
}
|
|
586
589
|
}
|
|
587
590
|
|
|
591
|
+
} else {
|
|
592
|
+
errorData[parseInt(index)][`message-editor${selector}`] = true;
|
|
593
|
+
isValid = false;
|
|
594
|
+
isCurrentTabValid = false;
|
|
588
595
|
}
|
|
589
596
|
|
|
590
597
|
|
|
@@ -607,6 +614,10 @@ class FormBuilder extends React.Component { // eslint-disable-line react/prefer-
|
|
|
607
614
|
isValid = false;
|
|
608
615
|
}
|
|
609
616
|
}
|
|
617
|
+
} else {
|
|
618
|
+
errorData[parseInt(index)][`message-title${selector}`] = true;
|
|
619
|
+
isValid = false;
|
|
620
|
+
isCurrentTabValid = false;
|
|
610
621
|
}
|
|
611
622
|
// if(tab['primary-cta-link'].trim() === ""){
|
|
612
623
|
// errorData[parseInt(index)][`primary-cta-link`] = true;
|
|
@@ -802,7 +813,7 @@ class FormBuilder extends React.Component { // eslint-disable-line react/prefer-
|
|
|
802
813
|
}
|
|
803
814
|
// Check if template subject present in form data from Loyalty, DVS, Timeline
|
|
804
815
|
if (index === 'template-subject' && type.toLowerCase() === 'embedded' && (currentModule.toLowerCase() === 'loyalty' || currentModule.toLowerCase() === 'dvs' || currentModule.toLowerCase() === 'timeline' || currentModule.toLowerCase() === 'library')) {
|
|
805
|
-
if (data.trim() === '') {
|
|
816
|
+
if (data && data.trim() === '') {
|
|
806
817
|
errorData[index] = true;
|
|
807
818
|
isValid = false;
|
|
808
819
|
} else {
|
|
@@ -2007,6 +2018,8 @@ class FormBuilder extends React.Component { // eslint-disable-line react/prefer-
|
|
|
2007
2018
|
// this.setState({currentEvent: {}, currentEventData: {}});
|
|
2008
2019
|
} else if (id === 'email-version-delete-modal') {
|
|
2009
2020
|
this.deleteVersion(false, this.state.currentTab);
|
|
2021
|
+
} else if ( id === 'template-delete-confirm-modal') {
|
|
2022
|
+
this.props.handleDelete(this.props.modal);
|
|
2010
2023
|
}
|
|
2011
2024
|
};
|
|
2012
2025
|
handleCancel = (ev) => {
|
|
@@ -2412,7 +2425,7 @@ class FormBuilder extends React.Component { // eslint-disable-line react/prefer-
|
|
|
2412
2425
|
columns.push(
|
|
2413
2426
|
<CapColumn>
|
|
2414
2427
|
<CapButton
|
|
2415
|
-
onClick={(data) =>
|
|
2428
|
+
onClick={(data) => this.callChildEvent(data, val, val.submitAction)}>
|
|
2416
2429
|
{val.value}
|
|
2417
2430
|
</CapButton>
|
|
2418
2431
|
</CapColumn>
|
|
@@ -2474,7 +2487,9 @@ class FormBuilder extends React.Component { // eslint-disable-line react/prefer-
|
|
|
2474
2487
|
if (_.isEmpty(value) && !_.isEmpty(val.value)) {
|
|
2475
2488
|
children = val.value;
|
|
2476
2489
|
}
|
|
2490
|
+
const ref = _.get(this, `props.refs[${val.id}]`);
|
|
2477
2491
|
return (<div
|
|
2492
|
+
ref={ref}
|
|
2478
2493
|
className={val.className ? val.className : ''}
|
|
2479
2494
|
id={`${val.id}${childIndex > 1 ? childIndex : ''}`}
|
|
2480
2495
|
onClick={(data) => this.callChildEvent(data, val, val.submitAction)}
|
|
@@ -2679,9 +2694,9 @@ class FormBuilder extends React.Component { // eslint-disable-line react/prefer-
|
|
|
2679
2694
|
);
|
|
2680
2695
|
break;
|
|
2681
2696
|
case 'upload':
|
|
2682
|
-
ifError = this.state.checkValidation && (isVersionEnable ? this.state.errorData[`${this.state.currentTab - 1}`][val.id] : this.state.errorData[val.id]);
|
|
2697
|
+
ifError = (this.state.checkValidation || this.props.startValidation) && (isVersionEnable ? this.state.errorData[`${this.state.currentTab - 1}`][val.id] : this.state.errorData[val.id]);
|
|
2683
2698
|
const ImageComponent = (props) => (
|
|
2684
|
-
<div>
|
|
2699
|
+
<div key={`${val.id}-${this.state.currentTab}`}>
|
|
2685
2700
|
<div className={`image-container ${props.ifError ? 'error' : ''}`}>
|
|
2686
2701
|
{self.state && !!self.state.formData[`${self.state.currentTab - 1}`].image ?
|
|
2687
2702
|
<img src={self.state.formData[`${self.state.currentTab - 1}`].image} alt={props.alt} style={props.style}/>
|
|
@@ -2689,14 +2704,13 @@ class FormBuilder extends React.Component { // eslint-disable-line react/prefer-
|
|
|
2689
2704
|
<div style={{width: "100%", textAlign: "center"}}><span className="image-placeholder">{props.placeholder}</span></div>
|
|
2690
2705
|
}
|
|
2691
2706
|
</div>
|
|
2692
|
-
|
|
2693
2707
|
</div>
|
|
2694
2708
|
);
|
|
2695
2709
|
const WithLabel = LabelHOC(ImageComponent);
|
|
2696
|
-
const {errorMessage, ...rest} = val.previewProps;
|
|
2710
|
+
const {errorMessage, ...rest} = val.previewProps || {};
|
|
2697
2711
|
columns.push(
|
|
2698
2712
|
<CapColumn span={val.width} offset={val.offset} style={val.style}>
|
|
2699
|
-
{val.showPreview && <WithLabel key={`${val.id}-with-label`} {...rest} errorMessage={ifError && errorMessage}/>}
|
|
2713
|
+
{val.showPreview && <WithLabel key={`${val.id}-with-label`} {...rest} errorMessage={ifError && errorMessage} ifError={ifError}/>}
|
|
2700
2714
|
<form encType="multipart/form-data" id={val.id}>
|
|
2701
2715
|
<input key={val.id} style={{ display: 'none'}} id="fileName" type="file" onChange={(e) => this.uploadImages(e, {files: e.target.files}, val)} accept={val.supportedExtensions ? val.supportedExtensions : "image/*"} />
|
|
2702
2716
|
<CapButton disabled={val.disabled ? val.disabled : false} type="secondary" onClick={(e) => this.openFileDialog(e, val.id)} style={{float: 'right'}}>
|
|
@@ -2741,7 +2755,7 @@ class FormBuilder extends React.Component { // eslint-disable-line react/prefer-
|
|
|
2741
2755
|
type={val.buttonType}
|
|
2742
2756
|
icon={val.icon}
|
|
2743
2757
|
disabled={val.disabled ? val.disabled : false}
|
|
2744
|
-
onClick={(data) =>
|
|
2758
|
+
onClick={(data) => this.callChildEvent(data, val, val.submitAction)}>
|
|
2745
2759
|
{val.value}
|
|
2746
2760
|
</CapButton>
|
|
2747
2761
|
</CapColumn>
|
|
@@ -3272,6 +3286,7 @@ FormBuilder.propTypes = {
|
|
|
3272
3286
|
startValidation: PropTypes.bool,
|
|
3273
3287
|
// saveForm: PropTypes.bool,
|
|
3274
3288
|
stopValidation: PropTypes.func,
|
|
3289
|
+
handleDelete: PropTypes.func,
|
|
3275
3290
|
};
|
|
3276
3291
|
|
|
3277
3292
|
export default FormBuilder;
|
|
@@ -27,7 +27,7 @@ class WechatRichmediaTemplatePreview extends React.PureComponent { // eslint-dis
|
|
|
27
27
|
<div className="preview-overflow-wrap-fields" style={{ position: "absolute", bottom: "5%", left: "5%" }}>{contentData.title ? contentData.title : ""}</div>
|
|
28
28
|
</CapRow>
|
|
29
29
|
{Object.keys(mediaList).length === 1 ?
|
|
30
|
-
<CapRow style={{ height: 32
|
|
30
|
+
<CapRow style={{ height: 32 }}>
|
|
31
31
|
{contentData.digest ? contentData.digest : ""}
|
|
32
32
|
</CapRow>
|
|
33
33
|
:
|
|
@@ -38,7 +38,7 @@ class WechatRichmediaTemplatePreview extends React.PureComponent { // eslint-dis
|
|
|
38
38
|
} else {
|
|
39
39
|
returnObj.push(
|
|
40
40
|
<CapRow style={{ "width": "100%", "height": 64, "border-bottom": "0.5px solid lightgrey" }}>
|
|
41
|
-
<CapColumn className="preview-overflow-wrap-fields" style={{ padding: "5% 0% 0% 5%", float: "left" }}>
|
|
41
|
+
<CapColumn className="preview-overflow-wrap-fields" style={{ padding: "5% 0% 0% 5%", float: "left", width: "auto" }}>
|
|
42
42
|
{contentData.title}
|
|
43
43
|
</CapColumn>
|
|
44
44
|
<CapColumn style={{ float: "right" }}>
|
|
@@ -50,6 +50,41 @@ class WechatRichmediaTemplatePreview extends React.PureComponent { // eslint-dis
|
|
|
50
50
|
});
|
|
51
51
|
return returnObj;
|
|
52
52
|
}
|
|
53
|
+
prepareCardLayoutPreviewData = (mediaList) => {
|
|
54
|
+
const returnObj = [];
|
|
55
|
+
_.forEach(mediaList, (contentData, contentIndex) => {
|
|
56
|
+
const id = parseInt(contentIndex, 10);
|
|
57
|
+
if (id === 0) {
|
|
58
|
+
returnObj.push(
|
|
59
|
+
<div style={{ width: "100%", height: 116, position: "relative" }}>
|
|
60
|
+
<CapRow>
|
|
61
|
+
<img alt="default" width="100%" height="110px" src={contentData.image_url} />
|
|
62
|
+
<div className="preview-overflow-wrap-fields" style={{ position: "absolute", bottom: "5%", left: "10%", width: "auto" }}>{contentData.title ? contentData.title : ""}</div>
|
|
63
|
+
</CapRow>
|
|
64
|
+
{Object.keys(mediaList).length === 1 ?
|
|
65
|
+
<CapRow style={{ height: 32, left: "12%" }}>
|
|
66
|
+
{contentData.digest ? contentData.digest : ""}
|
|
67
|
+
</CapRow>
|
|
68
|
+
:
|
|
69
|
+
""
|
|
70
|
+
}
|
|
71
|
+
</div>
|
|
72
|
+
);
|
|
73
|
+
} else {
|
|
74
|
+
returnObj.push(
|
|
75
|
+
<CapRow style={{ "width": "100%", "height": 64, "border-bottom": "0.5px solid lightgrey", "padding": "0 8px" }}>
|
|
76
|
+
<CapColumn className="preview-overflow-wrap-fields" style={{ padding: "5% 0% 0% 8%", float: "left", width: "auto" }}>
|
|
77
|
+
{contentData.title}
|
|
78
|
+
</CapColumn>
|
|
79
|
+
<CapColumn style={{ float: "right" }}>
|
|
80
|
+
<img alt="default" width="60px" height="60px" src={contentData.image_url}/>
|
|
81
|
+
</CapColumn>
|
|
82
|
+
</CapRow>
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
return returnObj;
|
|
87
|
+
}
|
|
53
88
|
goToEdit(e, path) {
|
|
54
89
|
this.props.onEditClick(e, this.props.templateId, this.props.modeType, path);
|
|
55
90
|
}
|
|
@@ -78,7 +113,7 @@ class WechatRichmediaTemplatePreview extends React.PureComponent { // eslint-dis
|
|
|
78
113
|
<div className={`preview-container ${this.props.type === 'embedded' ? 'embedded-preview' : ''}`}>
|
|
79
114
|
<div className="shell align-center" id="sms-preview">
|
|
80
115
|
<div className="wechatMsgContainerCardLayout">
|
|
81
|
-
<div>{this.
|
|
116
|
+
<div>{this.prepareCardLayoutPreviewData(this.props.content)}
|
|
82
117
|
</div>
|
|
83
118
|
</div>
|
|
84
119
|
</div>
|
|
@@ -8,10 +8,9 @@ import PropTypes from 'prop-types';
|
|
|
8
8
|
|
|
9
9
|
import React from 'react';
|
|
10
10
|
import _ from 'lodash';
|
|
11
|
-
import { injectIntl,
|
|
11
|
+
import { injectIntl, FormattedMessage} from 'react-intl';
|
|
12
12
|
// import styled from 'styled-components';
|
|
13
|
-
import {CapColumn} from '@capillarytech/cap-ui-library';
|
|
14
|
-
import moment from 'moment';
|
|
13
|
+
import {CapColumn, CapRow, CapHeading} from '@capillarytech/cap-ui-library';
|
|
15
14
|
import './_templatePreview.scss';
|
|
16
15
|
import {updateCharCount} from '../../utils/smsCharCountV2';
|
|
17
16
|
import messages from './messages';
|
|
@@ -33,7 +32,7 @@ class TemplatePreview extends React.Component { // eslint-disable-line react/pre
|
|
|
33
32
|
for (let i = 0, limit = 0; i < smsDetails.parts; i += 1, limit += smsDetails.chars_sms) {
|
|
34
33
|
content.push(smsDetails.char_list.slice(limit, smsDetails.chars_sms * (i + 1)));
|
|
35
34
|
}
|
|
36
|
-
if (document.getElementById("msg_count")) {
|
|
35
|
+
if (document.getElementById("msg_count") && this.props.showCount) {
|
|
37
36
|
document.getElementById("msg_count").val = smsDetails.parts;
|
|
38
37
|
}
|
|
39
38
|
//smsText = this.props.intl.formatMessage(messages.previewGenerationMessage);
|
|
@@ -52,36 +51,46 @@ class TemplatePreview extends React.Component { // eslint-disable-line react/pre
|
|
|
52
51
|
});
|
|
53
52
|
}
|
|
54
53
|
return (
|
|
55
|
-
<
|
|
56
|
-
{
|
|
57
|
-
|
|
58
|
-
<
|
|
59
|
-
|
|
60
|
-
<
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
54
|
+
<CapRow>
|
|
55
|
+
{this.props.showCount && <CapColumn span={16}>
|
|
56
|
+
{channel && channel.toLowerCase() === 'sms' && <CapHeading type="h3">
|
|
57
|
+
<FormattedMessage {...messages.charactersTotal} values={{smsCount: smsDetails.parts, charCount: smsDetails.chars_used}}/>
|
|
58
|
+
{smsDetails.unicode &&
|
|
59
|
+
<FormattedMessage {...messages.smsFormatType}/>
|
|
60
|
+
}
|
|
61
|
+
</CapHeading>}
|
|
62
|
+
</CapColumn>}
|
|
63
|
+
<CapColumn span={this.props.showCount ? 8 : 24}>
|
|
64
|
+
<div className={`preview-container ${type === 'embedded' ? 'embedded-preview' : ''}`}>
|
|
65
|
+
{ channel && channel.toLowerCase() === 'sms' &&
|
|
66
|
+
<div className="shell align-center" id="sms-preview">
|
|
67
|
+
<img className="preview-image sms" src={smsBody} alt="Preview is being generated"/>
|
|
68
|
+
<div className="msgContainer sms">
|
|
69
|
+
<img className="sms-icon" src={smsIcon} alt="Sms icon" />
|
|
70
|
+
<div className={"message-pop sms"}>
|
|
71
|
+
{content && content.length && content.map((msg, index) =>
|
|
72
|
+
<CapColumn key={`"message-pop-content-${index}`} className="message-pop-item align-left" style={{ background: '#3F51B5', color: '#ffffff'}}>
|
|
73
|
+
{msg}
|
|
74
|
+
</CapColumn>)
|
|
66
75
|
}
|
|
76
|
+
</div>
|
|
77
|
+
</div>
|
|
67
78
|
</div>
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
<div className="message-pop align-left" style={{ background: `${this.props.channel.toLowerCase() === 'wechat' ? '#ffffff' : '#3F51B5'}`, color: `${this.props.channel.toLowerCase() === 'wechat' ? '#333333' : '#ffffff'}`}}>{content}
|
|
79
|
+
}
|
|
80
|
+
{channel && channel.toLowerCase() === 'wechat' ?
|
|
81
|
+
( <div className="shell align-center" id="sms-preview">
|
|
82
|
+
<img className="preview-image" src={channel.toLowerCase() === 'wechat' ? wechatBody : smsBody} alt="Preview is being generated"/>
|
|
83
|
+
<div className="msgContainer">
|
|
84
|
+
{this.props.channel.toLowerCase() === 'wechat' ? <div className="sms-icon" style={{ width: '25px', height: '25px', background: '#2E89DF' }}></div> : <img className="sms-icon" src={smsIcon} alt="Sms icon" />}
|
|
85
|
+
<div className="message-pop align-left" style={{ background: `${this.props.channel.toLowerCase() === 'wechat' ? '#ffffff' : '#3F51B5'}`, color: `${this.props.channel.toLowerCase() === 'wechat' ? '#333333' : '#ffffff'}`}}>{content}
|
|
86
|
+
</div>
|
|
77
87
|
</div>
|
|
78
88
|
</div>
|
|
79
|
-
</div>
|
|
80
89
|
) : ''
|
|
81
90
|
}
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
91
|
+
{ channel && (channel.toLowerCase() === 'mobilepush') &&
|
|
92
|
+
(<div className="shell align-center" id="mobilepush-preview">
|
|
93
|
+
<img className="preview-image" src={this.props.device === "android" ? androidPushMessagePhone : iPhonePushMessagePhone} alt="Preview is being generated"/>
|
|
85
94
|
{(!!content.header || !!content.bodyText || !!content.bodyImage) &&
|
|
86
95
|
<div className={`${this.props.device}-push-message-Container`}>
|
|
87
96
|
{this.props.device === "android" ?
|
|
@@ -124,10 +133,10 @@ class TemplatePreview extends React.Component { // eslint-disable-line react/pre
|
|
|
124
133
|
}
|
|
125
134
|
</div>
|
|
126
135
|
}
|
|
127
|
-
|
|
136
|
+
</div>
|
|
128
137
|
)
|
|
129
138
|
}
|
|
130
|
-
|
|
139
|
+
{
|
|
131
140
|
channel && channel.toLowerCase() === 'line' ? (
|
|
132
141
|
<div className="shell align-center" id="sms-preview">
|
|
133
142
|
<img className="preview-image" src={wechatBody} alt="Preview is being generated"/>
|
|
@@ -142,25 +151,11 @@ class TemplatePreview extends React.Component { // eslint-disable-line react/pre
|
|
|
142
151
|
</div>
|
|
143
152
|
) : ''
|
|
144
153
|
}
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
<div style={{fontSize: '16px'}}>{`${this.props.intl.formatMessage(messages.smsFormatType)}`}</div>
|
|
151
|
-
}
|
|
152
|
-
<div style={{marginTop: '8px', fontSize: '16px'}} >{`${this.props.intl.formatMessage(messages.sms)}: ${smsDetails.parts}`}</div>
|
|
153
|
-
<div style={{fontSize: '16px'}}>{`${this.props.intl.formatMessage(messages.charactersPerSms)}: ${smsDetails.chars_used}`}</div>
|
|
154
|
-
</p>
|
|
155
|
-
</div>
|
|
156
|
-
: ''
|
|
157
|
-
}
|
|
158
|
-
{this.props.templateData && this.props.templateData.updatedByName &&
|
|
159
|
-
[<p className="preview-info" key="preview-info-modified"><FormattedMessage {...messages.lastModified} />: {moment(this.props.templateData.updatedAt).format('MM-DD-YYYY')}</p>,
|
|
160
|
-
<p style={{marginBottom: '8px'}} className="preview-info" key="preview-info-updated"><FormattedMessage {...messages.uploadedBy} /> : {this.props.templateData.updatedByName}</p>,
|
|
161
|
-
]
|
|
162
|
-
}
|
|
163
|
-
</div>
|
|
154
|
+
|
|
155
|
+
</div>
|
|
156
|
+
|
|
157
|
+
</CapColumn>
|
|
158
|
+
</CapRow>
|
|
164
159
|
);
|
|
165
160
|
}
|
|
166
161
|
}
|
|
@@ -172,10 +167,9 @@ TemplatePreview.propTypes = {
|
|
|
172
167
|
channel: PropTypes.string,
|
|
173
168
|
charCounterEnabled: PropTypes.bool,
|
|
174
169
|
location: PropTypes.object,
|
|
175
|
-
intl: intlShape.isRequired,
|
|
176
170
|
device: PropTypes.string,
|
|
177
171
|
unicodeEnabled: PropTypes.bool,
|
|
178
|
-
|
|
172
|
+
showCount: PropTypes.bool,
|
|
179
173
|
};
|
|
180
174
|
|
|
181
175
|
export default (injectIntl(TemplatePreview));
|
|
@@ -20,7 +20,7 @@ export default defineMessages({
|
|
|
20
20
|
},
|
|
21
21
|
charactersTotal: {
|
|
22
22
|
id: 'app.components.TemplatePreview.charactersTotal',
|
|
23
|
-
defaultMessage: "SMS
|
|
23
|
+
defaultMessage: "{smsCount} SMS ({charCount} characters)",
|
|
24
24
|
},
|
|
25
25
|
smsFormatType: {
|
|
26
26
|
id: 'app.components.TemplatePreview.smsFormatType',
|
|
@@ -51,11 +51,6 @@ export function fetchSchemaForEntity(queryParams) {
|
|
|
51
51
|
};
|
|
52
52
|
}
|
|
53
53
|
|
|
54
|
-
export function clearMetaEntities() {
|
|
55
|
-
return {
|
|
56
|
-
type: types.CLEAR_META_ENTITIES,
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
54
|
export function setInjectedTags(injectedTags) {
|
|
60
55
|
return {
|
|
61
56
|
type: types.SET_INJECTED_TAGS, injectedTags,
|
|
@@ -6,7 +6,7 @@ import _ from 'lodash';
|
|
|
6
6
|
import * as types from './constants';
|
|
7
7
|
import initialState from '../../initialState';
|
|
8
8
|
|
|
9
|
-
function capReducer(state = fromJS(initialState
|
|
9
|
+
function capReducer(state = fromJS(initialState), action) {
|
|
10
10
|
switch (action.type) {
|
|
11
11
|
case types.LOGIN_REQUEST:
|
|
12
12
|
return state.set('login_progress', true);
|
|
@@ -18,10 +18,6 @@ const makeSelectMetaEntities = () => createSelector(
|
|
|
18
18
|
(globalState) => globalState.get('metaEntities')
|
|
19
19
|
);
|
|
20
20
|
|
|
21
|
-
const isLoadingMetaEntities = () => createSelector(
|
|
22
|
-
selectCapDomain,
|
|
23
|
-
(globalState) => globalState.get('fetchingSchema')
|
|
24
|
-
);
|
|
25
21
|
const setInjectedTags = () => createSelector(
|
|
26
22
|
selectCapDomain,
|
|
27
23
|
(globalState) => {
|
|
@@ -58,13 +54,6 @@ const makeSelectUser = () => createSelector(
|
|
|
58
54
|
selectCapDomain,
|
|
59
55
|
(globalState) => globalState.get('user')
|
|
60
56
|
);
|
|
61
|
-
const selectCurrentOrgDetails = () => createSelector(
|
|
62
|
-
selectCapDomain,
|
|
63
|
-
(globalState) => {
|
|
64
|
-
const currentOrgDetails = globalState.get('currentOrgDetails');
|
|
65
|
-
return currentOrgDetails ? currentOrgDetails.toJS() : null;
|
|
66
|
-
}
|
|
67
|
-
);
|
|
68
57
|
|
|
69
58
|
const makeSelectFetchingSchema = () => createSelector(
|
|
70
59
|
selectCapDomain,
|
|
@@ -78,8 +67,6 @@ export {
|
|
|
78
67
|
makeSelectOrgId,
|
|
79
68
|
makeSelectMetaEntities,
|
|
80
69
|
makeSelectUser,
|
|
81
|
-
selectCurrentOrgDetails,
|
|
82
|
-
isLoadingMetaEntities,
|
|
83
70
|
makeSelectFetchingSchema,
|
|
84
71
|
setInjectedTags,
|
|
85
72
|
};
|
|
@@ -25,7 +25,6 @@ import makeSelectEbill from './selectors';
|
|
|
25
25
|
import messages from './messages';
|
|
26
26
|
import EmailPreview from '../../components/EmailPreview';
|
|
27
27
|
import './_ebill.scss';
|
|
28
|
-
import callNativeEvent from '../../utils/callNativeEvent';
|
|
29
28
|
const BreadcrumbItem = Breadcrumb.Item;
|
|
30
29
|
|
|
31
30
|
export class Ebill extends React.Component { // eslint-disable-line react/prefer-stateless-function
|
|
@@ -884,7 +883,7 @@ export class Ebill extends React.Component { // eslint-disable-line react/prefer
|
|
|
884
883
|
myField.value += myValue;
|
|
885
884
|
}
|
|
886
885
|
const event = new Event('input', { bubbles: true });
|
|
887
|
-
|
|
886
|
+
myField.dispatchEvent(event);
|
|
888
887
|
};
|
|
889
888
|
|
|
890
889
|
injectMessages(elem) {
|
|
@@ -6,11 +6,10 @@
|
|
|
6
6
|
|
|
7
7
|
import * as types from './constants';
|
|
8
8
|
|
|
9
|
-
export function createTemplate(template
|
|
9
|
+
export function createTemplate(template) {
|
|
10
10
|
return {
|
|
11
11
|
type: types.CREATE_TEMPLATE_REQUEST,
|
|
12
12
|
template,
|
|
13
|
-
onCreateTemplateComplete,
|
|
14
13
|
};
|
|
15
14
|
}
|
|
16
15
|
|
|
@@ -23,6 +22,7 @@ export function duplicateTemplate(id, channel) {
|
|
|
23
22
|
}
|
|
24
23
|
|
|
25
24
|
export function getTemplateDetails(id, channel) {
|
|
25
|
+
console.log('getting template', id, channel);
|
|
26
26
|
return {
|
|
27
27
|
type: types.GET_TEMPLATE_DETAILS_REQUEST,
|
|
28
28
|
id,
|
|
@@ -39,6 +39,7 @@ export function getAllAssets(assetType, queryParams) {
|
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
export function getCmsSetting(cmsType, projectId, cmsMode, langId, isEdmSupport) {
|
|
42
|
+
console.log('cms actions', langId, isEdmSupport);
|
|
42
43
|
return {
|
|
43
44
|
type: types.GET_CMS_EDITOR_DETAILS_REQUEST,
|
|
44
45
|
cmsType,
|
|
@@ -78,9 +79,3 @@ export function uploadAsset(file, assetType, fileParams) {
|
|
|
78
79
|
fileParams,
|
|
79
80
|
};
|
|
80
81
|
}
|
|
81
|
-
|
|
82
|
-
export function resetCmsData() {
|
|
83
|
-
return {
|
|
84
|
-
type: types.RESET_CMS_EDITOR_DATA,
|
|
85
|
-
};
|
|
86
|
-
}
|
|
@@ -23,7 +23,6 @@ export const GET_CMS_EDITOR_DETAILS_FAILURE = 'app/containers/Email/GET_CMS_EDIT
|
|
|
23
23
|
export const GET_CMS_EDITOR_DATA_REQUEST = 'app/containers/Email/GET_CMS_EDITOR_DATA_REQUEST';
|
|
24
24
|
export const GET_CMS_EDITOR_DATA_SUCCESS = 'app/containers/Email/GET_CMS_EDITOR_DATA_SUCCESS';
|
|
25
25
|
export const GET_CMS_EDITOR_DATA_FAILURE = 'app/containers/Email/GET_CMS_EDITOR_DATA_FAILURE';
|
|
26
|
-
export const RESET_CMS_EDITOR_DATA = 'app/containers/Email/RESET_CMS_EDITOR_DATA';
|
|
27
26
|
|
|
28
27
|
export const UPLOAD_ASSET_REQUEST = 'app/containers/Email/UPLOAD_ASSET_REQUEST';
|
|
29
28
|
export const UPLOAD_ASSET_SUCCESS = 'app/containers/Email/UPLOAD_ASSET_SUCCESS';
|