@capillarytech/creatives-library 6.10.2 → 6.10.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.
- package/package.json +1 -1
- package/v2Components/TemplatePreview/WechatRichmediaTemplatePreview/_wechatRichmediaTemplatePrev.scss +151 -151
- package/v2Components/TemplatePreview/WechatRichmediaTemplatePreview/messages.js +33 -33
- package/v2Components/TemplatePreview/WechatRichmediaTemplatePreview/tests/index.test.js +10 -10
- package/v2Components/TemplatePreview/assets/images/androidPushMessage.svg +44 -44
- package/v2Components/TemplatePreview/assets/images/home-screen-android.svg +21 -21
- package/v2Components/TemplatePreview/assets/images/home-screen-ios.svg +16 -16
- package/v2Components/TemplatePreview/assets/images/iPhonePushMessage.svg +134 -134
- package/v2Components/TemplatePreview/assets/images/mobile.svg +23 -23
- package/v2Components/TemplatePreview/assets/images/sms_mobile_android.svg +22 -22
- package/v2Components/TemplatePreview/assets/images/user-icon.svg +18 -18
- package/v2Components/TemplatePreview/assets/images/wechat-home-screen-android.svg +21 -21
- package/v2Components/TemplatePreview/assets/images/wechat-mobile.svg +77 -77
- package/v2Components/TemplatePreview/assets/images/wechat_mobile_android.svg +20 -20
- package/v2Components/TemplatePreview/tests/index.test.js +10 -10
- package/v2Containers/CreativesContainer/actions.js +27 -27
- package/v2Containers/CreativesContainer/constants.js +17 -17
- package/v2Containers/CreativesContainer/index.scss +44 -44
- package/v2Containers/CreativesContainer/messages.js +305 -305
- package/v2Containers/CreativesContainer/reducer.js +29 -29
- package/v2Containers/CreativesContainer/sagas.js +11 -11
- package/v2Containers/CreativesContainer/selectors.js +30 -30
- package/v2Containers/CreativesContainer/tests/actions.test.js +18 -18
- package/v2Containers/CreativesContainer/tests/index.test.js +10 -10
- package/v2Containers/CreativesContainer/tests/reducer.test.js +9 -9
- package/v2Containers/CreativesContainer/tests/sagas.test.js +15 -15
- package/v2Containers/CreativesContainer/tests/selectors.test.js +10 -10
- package/v2Containers/Line/Container/Image/index.js +2 -1
- package/v2Containers/Line/Container/ImageCarousel/index.js +1 -1
- package/v2Containers/Line/Container/ImageMap/index.js +20 -5
- package/v2Containers/Templates/tests/actions.test.js +18 -18
- package/v2Containers/Templates/tests/index.test.js +10 -10
- package/v2Containers/Templates/tests/reducer.test.js +9 -9
- package/v2Containers/Templates/tests/sagas.test.js +15 -15
- package/v2Containers/Templates/tests/selectors.test.js +10 -10
- package/v2Containers/TemplatesV2/TemplatesV2.style.js +29 -29
- package/v2Containers/TemplatesV2/actions.js +16 -16
- package/v2Containers/TemplatesV2/constants.js +10 -10
- package/v2Containers/TemplatesV2/messages.js +61 -61
- package/v2Containers/TemplatesV2/selectors.js +25 -25
- package/v2Containers/TemplatesV2/tests/actions.test.js +18 -18
- package/v2Containers/TemplatesV2/tests/index.test.js +10 -10
- package/v2Containers/TemplatesV2/tests/reducer.test.js +9 -9
- package/v2Containers/TemplatesV2/tests/sagas.test.js +15 -15
- package/v2Containers/TemplatesV2/tests/selectors.test.js +10 -10
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
// import { take, call, put, select } from 'redux-saga/effects';
|
|
2
|
-
|
|
3
|
-
// Individual exports for testing
|
|
4
|
-
export function* defaultSaga() {
|
|
5
|
-
// See example in v2Containers/HomePage/sagas.js
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
// All sagas to be loaded
|
|
9
|
-
export default [
|
|
10
|
-
defaultSaga,
|
|
11
|
-
];
|
|
1
|
+
// import { take, call, put, select } from 'redux-saga/effects';
|
|
2
|
+
|
|
3
|
+
// Individual exports for testing
|
|
4
|
+
export function* defaultSaga() {
|
|
5
|
+
// See example in v2Containers/HomePage/sagas.js
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
// All sagas to be loaded
|
|
9
|
+
export default [
|
|
10
|
+
defaultSaga,
|
|
11
|
+
];
|
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
import { createSelector } from 'reselect';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Direct selector to the creativesContainer state domain
|
|
5
|
-
*/
|
|
6
|
-
const selectCreativesContainerDomain = () => (state) => state.get('creativesContainer');
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* Other specific selectors
|
|
10
|
-
*/
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* Default selector used by CreativesContainer
|
|
15
|
-
*/
|
|
16
|
-
|
|
17
|
-
const makeSelectCreativesContainer = () => createSelector(
|
|
18
|
-
selectCreativesContainerDomain(),
|
|
19
|
-
(substate) => substate.toJS()
|
|
20
|
-
);
|
|
21
|
-
const isLoading = () => createSelector(
|
|
22
|
-
makeSelectCreativesContainer(),
|
|
23
|
-
(substate) => substate.containerLoader
|
|
24
|
-
);
|
|
25
|
-
|
|
26
|
-
export default makeSelectCreativesContainer;
|
|
27
|
-
export {
|
|
28
|
-
selectCreativesContainerDomain,
|
|
29
|
-
isLoading,
|
|
30
|
-
};
|
|
1
|
+
import { createSelector } from 'reselect';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Direct selector to the creativesContainer state domain
|
|
5
|
+
*/
|
|
6
|
+
const selectCreativesContainerDomain = () => (state) => state.get('creativesContainer');
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Other specific selectors
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Default selector used by CreativesContainer
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
const makeSelectCreativesContainer = () => createSelector(
|
|
18
|
+
selectCreativesContainerDomain(),
|
|
19
|
+
(substate) => substate.toJS()
|
|
20
|
+
);
|
|
21
|
+
const isLoading = () => createSelector(
|
|
22
|
+
makeSelectCreativesContainer(),
|
|
23
|
+
(substate) => substate.containerLoader
|
|
24
|
+
);
|
|
25
|
+
|
|
26
|
+
export default makeSelectCreativesContainer;
|
|
27
|
+
export {
|
|
28
|
+
selectCreativesContainerDomain,
|
|
29
|
+
isLoading,
|
|
30
|
+
};
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
defaultAction,
|
|
4
|
-
} from '../actions';
|
|
5
|
-
import {
|
|
6
|
-
DEFAULT_ACTION,
|
|
7
|
-
} from '../constants';
|
|
8
|
-
|
|
9
|
-
describe('CreativesContainer actions', () => {
|
|
10
|
-
describe('Default Action', () => {
|
|
11
|
-
it('has a type of DEFAULT_ACTION', () => {
|
|
12
|
-
const expected = {
|
|
13
|
-
type: DEFAULT_ACTION,
|
|
14
|
-
};
|
|
15
|
-
expect(defaultAction()).toEqual(expected);
|
|
16
|
-
});
|
|
17
|
-
});
|
|
18
|
-
});
|
|
1
|
+
|
|
2
|
+
import {
|
|
3
|
+
defaultAction,
|
|
4
|
+
} from '../actions';
|
|
5
|
+
import {
|
|
6
|
+
DEFAULT_ACTION,
|
|
7
|
+
} from '../constants';
|
|
8
|
+
|
|
9
|
+
describe('CreativesContainer actions', () => {
|
|
10
|
+
describe('Default Action', () => {
|
|
11
|
+
it('has a type of DEFAULT_ACTION', () => {
|
|
12
|
+
const expected = {
|
|
13
|
+
type: DEFAULT_ACTION,
|
|
14
|
+
};
|
|
15
|
+
expect(defaultAction()).toEqual(expected);
|
|
16
|
+
});
|
|
17
|
+
});
|
|
18
|
+
});
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
// import React from 'react';
|
|
2
|
-
// import { shallow } from 'enzyme';
|
|
3
|
-
|
|
4
|
-
// import { CreativesContainer } from '../index';
|
|
5
|
-
|
|
6
|
-
describe('<CreativesContainer />', () => {
|
|
7
|
-
it('Expect to have unit tests specified', () => {
|
|
8
|
-
expect(true).toEqual(true);
|
|
9
|
-
});
|
|
10
|
-
});
|
|
1
|
+
// import React from 'react';
|
|
2
|
+
// import { shallow } from 'enzyme';
|
|
3
|
+
|
|
4
|
+
// import { CreativesContainer } from '../index';
|
|
5
|
+
|
|
6
|
+
describe('<CreativesContainer />', () => {
|
|
7
|
+
it('Expect to have unit tests specified', () => {
|
|
8
|
+
expect(true).toEqual(true);
|
|
9
|
+
});
|
|
10
|
+
});
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
import { fromJS } from 'immutable';
|
|
3
|
-
import creativesContainerReducer from '../reducer';
|
|
4
|
-
|
|
5
|
-
describe('creativesContainerReducer', () => {
|
|
6
|
-
it('returns the initial state', () => {
|
|
7
|
-
expect(creativesContainerReducer(undefined, {})).toEqual(fromJS({}));
|
|
8
|
-
});
|
|
9
|
-
});
|
|
1
|
+
|
|
2
|
+
import { fromJS } from 'immutable';
|
|
3
|
+
import creativesContainerReducer from '../reducer';
|
|
4
|
+
|
|
5
|
+
describe('creativesContainerReducer', () => {
|
|
6
|
+
it('returns the initial state', () => {
|
|
7
|
+
expect(creativesContainerReducer(undefined, {})).toEqual(fromJS({}));
|
|
8
|
+
});
|
|
9
|
+
});
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Test sagas
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
/* eslint-disable redux-saga/yield-effects */
|
|
6
|
-
// import { take, call, put, select } from 'redux-saga/effects';
|
|
7
|
-
// import { defaultSaga } from '../sagas';
|
|
8
|
-
|
|
9
|
-
// const generator = defaultSaga();
|
|
10
|
-
|
|
11
|
-
describe('defaultSaga Saga', () => {
|
|
12
|
-
it('Expect to have unit tests specified', () => {
|
|
13
|
-
expect(true).toEqual(true);
|
|
14
|
-
});
|
|
15
|
-
});
|
|
1
|
+
/**
|
|
2
|
+
* Test sagas
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
/* eslint-disable redux-saga/yield-effects */
|
|
6
|
+
// import { take, call, put, select } from 'redux-saga/effects';
|
|
7
|
+
// import { defaultSaga } from '../sagas';
|
|
8
|
+
|
|
9
|
+
// const generator = defaultSaga();
|
|
10
|
+
|
|
11
|
+
describe('defaultSaga Saga', () => {
|
|
12
|
+
it('Expect to have unit tests specified', () => {
|
|
13
|
+
expect(true).toEqual(true);
|
|
14
|
+
});
|
|
15
|
+
});
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
// import { fromJS } from 'immutable';
|
|
2
|
-
// import { makeSelectCreativesContainerDomain } from '../selectors';
|
|
3
|
-
|
|
4
|
-
// const selector = makeSelectCreativesContainerDomain();
|
|
5
|
-
|
|
6
|
-
describe('makeSelectCreativesContainerDomain', () => {
|
|
7
|
-
it('Expect to have unit tests specified', () => {
|
|
8
|
-
expect(true).toEqual(true);
|
|
9
|
-
});
|
|
10
|
-
});
|
|
1
|
+
// import { fromJS } from 'immutable';
|
|
2
|
+
// import { makeSelectCreativesContainerDomain } from '../selectors';
|
|
3
|
+
|
|
4
|
+
// const selector = makeSelectCreativesContainerDomain();
|
|
5
|
+
|
|
6
|
+
describe('makeSelectCreativesContainerDomain', () => {
|
|
7
|
+
it('Expect to have unit tests specified', () => {
|
|
8
|
+
expect(true).toEqual(true);
|
|
9
|
+
});
|
|
10
|
+
});
|
|
@@ -103,8 +103,9 @@ export const LineImage = ({
|
|
|
103
103
|
useEffect(() => {
|
|
104
104
|
const imgSrc = get(uploadedAssetList[index], 'imgSrc', '');
|
|
105
105
|
const imgPreview = get(uploadedAssetList[index], 'imgPreview', '');
|
|
106
|
+
const { type } = content;
|
|
106
107
|
|
|
107
|
-
if (imgSrc) {
|
|
108
|
+
if (imgSrc && type === 'image') {
|
|
108
109
|
updateImageSrc(imgSrc);
|
|
109
110
|
updateImageStatus(true);
|
|
110
111
|
updateImagePreview(imgPreview);
|
|
@@ -120,7 +120,7 @@ export const LineImageCarousel = (props) => {
|
|
|
120
120
|
actionLabelErrorMessage,
|
|
121
121
|
activeIndex,
|
|
122
122
|
}) => {
|
|
123
|
-
isErrorIndex = (isErrorIndex !== undefined)
|
|
123
|
+
isErrorIndex = (isErrorIndex !== undefined && isErrorIndex !== false)
|
|
124
124
|
? isErrorIndex
|
|
125
125
|
: ((!originalContentUrl || !selectedActionType || actionContentErrorMessage || actionLabelErrorMessage || !actionContent) && activeIndex);
|
|
126
126
|
columns.push({
|
|
@@ -54,7 +54,9 @@ export const LineImageMap = ({
|
|
|
54
54
|
content,
|
|
55
55
|
activeKey,
|
|
56
56
|
Templates,
|
|
57
|
-
getAllTemplates
|
|
57
|
+
getAllTemplates,
|
|
58
|
+
uploadedAssetList,
|
|
59
|
+
updateUploadedAssetList,
|
|
58
60
|
}) => {
|
|
59
61
|
if (activeKey !== IMAGE_MAP) {
|
|
60
62
|
return null;
|
|
@@ -90,7 +92,7 @@ export const LineImageMap = ({
|
|
|
90
92
|
baseSize = {},
|
|
91
93
|
selectedTemplate,
|
|
92
94
|
assetType,
|
|
93
|
-
actionLinks,
|
|
95
|
+
actionLinks = {},
|
|
94
96
|
altText,
|
|
95
97
|
} = content;
|
|
96
98
|
if ( baseUrl && type === IMAGE_MAP) {
|
|
@@ -129,11 +131,24 @@ export const LineImageMap = ({
|
|
|
129
131
|
useEffect(() => {
|
|
130
132
|
const imgSrc = get(Line, 'uploadedAssetData', false);
|
|
131
133
|
if (imgSrc && typeof imgSrc !== 'object') {
|
|
132
|
-
|
|
134
|
+
updateUploadedAssetList({
|
|
135
|
+
...uploadedAssetList,
|
|
136
|
+
[index]: {
|
|
137
|
+
imgSrc: imgSrc.slice(0, -5),
|
|
138
|
+
},
|
|
139
|
+
});
|
|
140
|
+
actions.clearAsset();
|
|
141
|
+
}
|
|
142
|
+
}, [Line.uploadedAssetData]);
|
|
143
|
+
|
|
144
|
+
useEffect(() => {
|
|
145
|
+
const imgSrc = get(uploadedAssetList[index], 'imgSrc', '');
|
|
146
|
+
|
|
147
|
+
if (imgSrc) {
|
|
148
|
+
updateImageSrc(imgSrc);
|
|
133
149
|
updateImageStatus(true);
|
|
134
|
-
actions.clearAsset()
|
|
135
150
|
}
|
|
136
|
-
}, [
|
|
151
|
+
}, [uploadedAssetList]);
|
|
137
152
|
|
|
138
153
|
const getActions = () => {
|
|
139
154
|
const actionsMap = [];
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
defaultAction,
|
|
4
|
-
} from '../actions';
|
|
5
|
-
import {
|
|
6
|
-
DEFAULT_ACTION,
|
|
7
|
-
} from '../constants';
|
|
8
|
-
|
|
9
|
-
describe('Templates actions', () => {
|
|
10
|
-
describe('Default Action', () => {
|
|
11
|
-
it('has a type of DEFAULT_ACTION', () => {
|
|
12
|
-
const expected = {
|
|
13
|
-
type: DEFAULT_ACTION,
|
|
14
|
-
};
|
|
15
|
-
expect(defaultAction()).toEqual(expected);
|
|
16
|
-
});
|
|
17
|
-
});
|
|
18
|
-
});
|
|
1
|
+
|
|
2
|
+
import {
|
|
3
|
+
defaultAction,
|
|
4
|
+
} from '../actions';
|
|
5
|
+
import {
|
|
6
|
+
DEFAULT_ACTION,
|
|
7
|
+
} from '../constants';
|
|
8
|
+
|
|
9
|
+
describe('Templates actions', () => {
|
|
10
|
+
describe('Default Action', () => {
|
|
11
|
+
it('has a type of DEFAULT_ACTION', () => {
|
|
12
|
+
const expected = {
|
|
13
|
+
type: DEFAULT_ACTION,
|
|
14
|
+
};
|
|
15
|
+
expect(defaultAction()).toEqual(expected);
|
|
16
|
+
});
|
|
17
|
+
});
|
|
18
|
+
});
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
// import React from 'react';
|
|
2
|
-
// import { shallow } from 'enzyme';
|
|
3
|
-
|
|
4
|
-
// import { Templates } from '../index';
|
|
5
|
-
|
|
6
|
-
describe('<Templates />', () => {
|
|
7
|
-
it('Expect to have unit tests specified', () => {
|
|
8
|
-
expect(true).toEqual(false);
|
|
9
|
-
});
|
|
10
|
-
});
|
|
1
|
+
// import React from 'react';
|
|
2
|
+
// import { shallow } from 'enzyme';
|
|
3
|
+
|
|
4
|
+
// import { Templates } from '../index';
|
|
5
|
+
|
|
6
|
+
describe('<Templates />', () => {
|
|
7
|
+
it('Expect to have unit tests specified', () => {
|
|
8
|
+
expect(true).toEqual(false);
|
|
9
|
+
});
|
|
10
|
+
});
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
import { fromJS } from 'immutable';
|
|
3
|
-
import templatesReducer from '../reducer';
|
|
4
|
-
|
|
5
|
-
describe('templatesReducer', () => {
|
|
6
|
-
it('returns the initial state', () => {
|
|
7
|
-
expect(templatesReducer(undefined, {})).toEqual(fromJS({}));
|
|
8
|
-
});
|
|
9
|
-
});
|
|
1
|
+
|
|
2
|
+
import { fromJS } from 'immutable';
|
|
3
|
+
import templatesReducer from '../reducer';
|
|
4
|
+
|
|
5
|
+
describe('templatesReducer', () => {
|
|
6
|
+
it('returns the initial state', () => {
|
|
7
|
+
expect(templatesReducer(undefined, {})).toEqual(fromJS({}));
|
|
8
|
+
});
|
|
9
|
+
});
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Test sagas
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
/* eslint-disable redux-saga/yield-effects */
|
|
6
|
-
// import { take, call, put, select } from 'redux-saga/effects';
|
|
7
|
-
// import { defaultSaga } from '../sagas';
|
|
8
|
-
|
|
9
|
-
// const generator = defaultSaga();
|
|
10
|
-
|
|
11
|
-
describe('defaultSaga Saga', () => {
|
|
12
|
-
it('Expect to have unit tests specified', () => {
|
|
13
|
-
expect(true).toEqual(false);
|
|
14
|
-
});
|
|
15
|
-
});
|
|
1
|
+
/**
|
|
2
|
+
* Test sagas
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
/* eslint-disable redux-saga/yield-effects */
|
|
6
|
+
// import { take, call, put, select } from 'redux-saga/effects';
|
|
7
|
+
// import { defaultSaga } from '../sagas';
|
|
8
|
+
|
|
9
|
+
// const generator = defaultSaga();
|
|
10
|
+
|
|
11
|
+
describe('defaultSaga Saga', () => {
|
|
12
|
+
it('Expect to have unit tests specified', () => {
|
|
13
|
+
expect(true).toEqual(false);
|
|
14
|
+
});
|
|
15
|
+
});
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
// import { fromJS } from 'immutable';
|
|
2
|
-
// import { makeSelectTemplatesDomain } from '../selectors';
|
|
3
|
-
|
|
4
|
-
// const selector = makeSelectTemplatesDomain();
|
|
5
|
-
|
|
6
|
-
describe('makeSelectTemplatesDomain', () => {
|
|
7
|
-
it('Expect to have unit tests specified', () => {
|
|
8
|
-
expect(true).toEqual(false);
|
|
9
|
-
});
|
|
10
|
-
});
|
|
1
|
+
// import { fromJS } from 'immutable';
|
|
2
|
+
// import { makeSelectTemplatesDomain } from '../selectors';
|
|
3
|
+
|
|
4
|
+
// const selector = makeSelectTemplatesDomain();
|
|
5
|
+
|
|
6
|
+
describe('makeSelectTemplatesDomain', () => {
|
|
7
|
+
it('Expect to have unit tests specified', () => {
|
|
8
|
+
expect(true).toEqual(false);
|
|
9
|
+
});
|
|
10
|
+
});
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
import { css } from 'styled-components';
|
|
2
|
-
import {CAP_SPACE_24, CAP_SPACE_16} from '@capillarytech/cap-ui-library/styled/variables';
|
|
3
|
-
|
|
4
|
-
export default css`
|
|
5
|
-
.cap-tab-v2-wrapper{
|
|
6
|
-
.ant-tabs-tabpane {
|
|
7
|
-
border: none;
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
.component-wrapper {
|
|
12
|
-
${(props) => props.isFullMode ? `
|
|
13
|
-
max-width: 1140px;
|
|
14
|
-
margin: 0 auto;
|
|
15
|
-
width: 100%;
|
|
16
|
-
padding: ${CAP_SPACE_24} 0;
|
|
17
|
-
.ant-tabs-content{
|
|
18
|
-
margin-top: ${CAP_SPACE_16}
|
|
19
|
-
}
|
|
20
|
-
` : `.cap-tab-v2 {
|
|
21
|
-
height: calc(100vh - 118px);
|
|
22
|
-
} `}
|
|
23
|
-
}
|
|
24
|
-
`;
|
|
25
|
-
|
|
26
|
-
export const CapTabStyle = css`
|
|
27
|
-
${(props) => props.isFullMode ? `margin-top: ${CAP_SPACE_24}` : ``
|
|
28
|
-
}
|
|
29
|
-
`;
|
|
1
|
+
import { css } from 'styled-components';
|
|
2
|
+
import {CAP_SPACE_24, CAP_SPACE_16} from '@capillarytech/cap-ui-library/styled/variables';
|
|
3
|
+
|
|
4
|
+
export default css`
|
|
5
|
+
.cap-tab-v2-wrapper{
|
|
6
|
+
.ant-tabs-tabpane {
|
|
7
|
+
border: none;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.component-wrapper {
|
|
12
|
+
${(props) => props.isFullMode ? `
|
|
13
|
+
max-width: 1140px;
|
|
14
|
+
margin: 0 auto;
|
|
15
|
+
width: 100%;
|
|
16
|
+
padding: ${CAP_SPACE_24} 0;
|
|
17
|
+
.ant-tabs-content{
|
|
18
|
+
margin-top: ${CAP_SPACE_16}
|
|
19
|
+
}
|
|
20
|
+
` : `.cap-tab-v2 {
|
|
21
|
+
height: calc(100vh - 118px);
|
|
22
|
+
} `}
|
|
23
|
+
}
|
|
24
|
+
`;
|
|
25
|
+
|
|
26
|
+
export const CapTabStyle = css`
|
|
27
|
+
${(props) => props.isFullMode ? `margin-top: ${CAP_SPACE_24}` : ``
|
|
28
|
+
}
|
|
29
|
+
`;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
import * as types from './constants';
|
|
3
|
-
|
|
4
|
-
export function defaultAction() {
|
|
5
|
-
return {
|
|
6
|
-
type: types.DEFAULT_ACTION,
|
|
7
|
-
};
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export function getTemplates({channel, query}) {
|
|
11
|
-
return {
|
|
12
|
-
type: types.GET_TEMPLATES_REQUEST,
|
|
13
|
-
channel,
|
|
14
|
-
query,
|
|
15
|
-
};
|
|
16
|
-
}
|
|
1
|
+
|
|
2
|
+
import * as types from './constants';
|
|
3
|
+
|
|
4
|
+
export function defaultAction() {
|
|
5
|
+
return {
|
|
6
|
+
type: types.DEFAULT_ACTION,
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export function getTemplates({channel, query}) {
|
|
11
|
+
return {
|
|
12
|
+
type: types.GET_TEMPLATES_REQUEST,
|
|
13
|
+
channel,
|
|
14
|
+
query,
|
|
15
|
+
};
|
|
16
|
+
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
/*
|
|
2
|
-
*
|
|
3
|
-
* TemplatesV2 constants
|
|
4
|
-
*
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
export const DEFAULT_ACTION = 'app/TemplatesV2/DEFAULT_ACTION';
|
|
8
|
-
export const GET_TEMPLATES_REQUEST = 'app/TemplatesV2/GET_TEMPLATES_REQUEST';
|
|
9
|
-
export const GET_TEMPLATES_SUCESS = 'app/TemplatesV2/GET_TEMPLATES_SUCESS';
|
|
10
|
-
export const GET_TEMPLATES_FAILURE = 'app/TemplatesV2/GET_TEMPLATES_FAILURE';
|
|
1
|
+
/*
|
|
2
|
+
*
|
|
3
|
+
* TemplatesV2 constants
|
|
4
|
+
*
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
export const DEFAULT_ACTION = 'app/TemplatesV2/DEFAULT_ACTION';
|
|
8
|
+
export const GET_TEMPLATES_REQUEST = 'app/TemplatesV2/GET_TEMPLATES_REQUEST';
|
|
9
|
+
export const GET_TEMPLATES_SUCESS = 'app/TemplatesV2/GET_TEMPLATES_SUCESS';
|
|
10
|
+
export const GET_TEMPLATES_FAILURE = 'app/TemplatesV2/GET_TEMPLATES_FAILURE';
|
|
@@ -1,61 +1,61 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* TemplatesV2 Messages
|
|
3
|
-
*
|
|
4
|
-
* This contains all the text for the TemplatesV2 component.
|
|
5
|
-
*/
|
|
6
|
-
import { defineMessages } from 'react-intl';
|
|
7
|
-
|
|
8
|
-
export default defineMessages({
|
|
9
|
-
header: {
|
|
10
|
-
id: 'creatives.containersV2.TemplatesV2.header',
|
|
11
|
-
defaultMessage: 'This is TemplatesV2 container !',
|
|
12
|
-
},
|
|
13
|
-
select: {
|
|
14
|
-
id: 'creatives.containersV2.TemplatesV2.select',
|
|
15
|
-
defaultMessage: 'Select',
|
|
16
|
-
},
|
|
17
|
-
edit: {
|
|
18
|
-
id: 'creatives.containersV2.TemplatesV2.edit',
|
|
19
|
-
defaultMessage: 'Edit',
|
|
20
|
-
},
|
|
21
|
-
creatives: {
|
|
22
|
-
id: 'creatives.containersV2.TemplatesV2.creatives',
|
|
23
|
-
defaultMessage: 'Creatives',
|
|
24
|
-
},
|
|
25
|
-
creativesDesc: {
|
|
26
|
-
id: 'creatives.containersV2.TemplatesV2.creativesDesc',
|
|
27
|
-
defaultMessage: 'These are pre-built templates which you could use to customize your message content.',
|
|
28
|
-
},
|
|
29
|
-
sms: {
|
|
30
|
-
id: 'creatives.containersV2.TemplatesV2.sms',
|
|
31
|
-
defaultMessage: 'SMS',
|
|
32
|
-
},
|
|
33
|
-
email: {
|
|
34
|
-
id: 'creatives.containersV2.TemplatesV2.email',
|
|
35
|
-
defaultMessage: 'Email',
|
|
36
|
-
},
|
|
37
|
-
pushNotification: {
|
|
38
|
-
id: 'creatives.containersV2.TemplatesV2.pushNotification',
|
|
39
|
-
defaultMessage: 'Push notification',
|
|
40
|
-
},
|
|
41
|
-
callTask: {
|
|
42
|
-
id: 'creatives.containersV2.TemplatesV2.callTask',
|
|
43
|
-
defaultMessage: 'Call Task',
|
|
44
|
-
},
|
|
45
|
-
facebook: {
|
|
46
|
-
id: 'creatives.containersV2.TemplatesV2.facebook',
|
|
47
|
-
defaultMessage: 'Facebook',
|
|
48
|
-
},
|
|
49
|
-
gallery: {
|
|
50
|
-
id: 'creatives.containersV2.TemplatesV2.gallery',
|
|
51
|
-
defaultMessage: 'Gallery',
|
|
52
|
-
},
|
|
53
|
-
wechat: {
|
|
54
|
-
id: 'creatives.containersV2.TemplatesV2.wechat',
|
|
55
|
-
defaultMessage: 'Wechat',
|
|
56
|
-
},
|
|
57
|
-
line: {
|
|
58
|
-
id: 'creatives.containersV2.TemplatesV2.line',
|
|
59
|
-
defaultMessage: 'Line',
|
|
60
|
-
},
|
|
61
|
-
});
|
|
1
|
+
/*
|
|
2
|
+
* TemplatesV2 Messages
|
|
3
|
+
*
|
|
4
|
+
* This contains all the text for the TemplatesV2 component.
|
|
5
|
+
*/
|
|
6
|
+
import { defineMessages } from 'react-intl';
|
|
7
|
+
|
|
8
|
+
export default defineMessages({
|
|
9
|
+
header: {
|
|
10
|
+
id: 'creatives.containersV2.TemplatesV2.header',
|
|
11
|
+
defaultMessage: 'This is TemplatesV2 container !',
|
|
12
|
+
},
|
|
13
|
+
select: {
|
|
14
|
+
id: 'creatives.containersV2.TemplatesV2.select',
|
|
15
|
+
defaultMessage: 'Select',
|
|
16
|
+
},
|
|
17
|
+
edit: {
|
|
18
|
+
id: 'creatives.containersV2.TemplatesV2.edit',
|
|
19
|
+
defaultMessage: 'Edit',
|
|
20
|
+
},
|
|
21
|
+
creatives: {
|
|
22
|
+
id: 'creatives.containersV2.TemplatesV2.creatives',
|
|
23
|
+
defaultMessage: 'Creatives',
|
|
24
|
+
},
|
|
25
|
+
creativesDesc: {
|
|
26
|
+
id: 'creatives.containersV2.TemplatesV2.creativesDesc',
|
|
27
|
+
defaultMessage: 'These are pre-built templates which you could use to customize your message content.',
|
|
28
|
+
},
|
|
29
|
+
sms: {
|
|
30
|
+
id: 'creatives.containersV2.TemplatesV2.sms',
|
|
31
|
+
defaultMessage: 'SMS',
|
|
32
|
+
},
|
|
33
|
+
email: {
|
|
34
|
+
id: 'creatives.containersV2.TemplatesV2.email',
|
|
35
|
+
defaultMessage: 'Email',
|
|
36
|
+
},
|
|
37
|
+
pushNotification: {
|
|
38
|
+
id: 'creatives.containersV2.TemplatesV2.pushNotification',
|
|
39
|
+
defaultMessage: 'Push notification',
|
|
40
|
+
},
|
|
41
|
+
callTask: {
|
|
42
|
+
id: 'creatives.containersV2.TemplatesV2.callTask',
|
|
43
|
+
defaultMessage: 'Call Task',
|
|
44
|
+
},
|
|
45
|
+
facebook: {
|
|
46
|
+
id: 'creatives.containersV2.TemplatesV2.facebook',
|
|
47
|
+
defaultMessage: 'Facebook',
|
|
48
|
+
},
|
|
49
|
+
gallery: {
|
|
50
|
+
id: 'creatives.containersV2.TemplatesV2.gallery',
|
|
51
|
+
defaultMessage: 'Gallery',
|
|
52
|
+
},
|
|
53
|
+
wechat: {
|
|
54
|
+
id: 'creatives.containersV2.TemplatesV2.wechat',
|
|
55
|
+
defaultMessage: 'Wechat',
|
|
56
|
+
},
|
|
57
|
+
line: {
|
|
58
|
+
id: 'creatives.containersV2.TemplatesV2.line',
|
|
59
|
+
defaultMessage: 'Line',
|
|
60
|
+
},
|
|
61
|
+
});
|