@times-components/ts-slices 1.4.4 → 1.5.1
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/CHANGELOG.md +30 -0
- package/dist/components/article/ArticleStandard/ArticleStandard.d.ts +9 -0
- package/dist/components/article/ArticleStandard/ArticleStandard.js +21 -0
- package/dist/components/article/ArticleStandard/__tests__/ArticleStandard.test.d.ts +1 -0
- package/dist/components/article/ArticleStandard/__tests__/ArticleStandard.test.js +32 -0
- package/dist/components/article/ArticleStandard/styles.d.ts +2 -0
- package/dist/components/article/ArticleStandard/styles.js +17 -0
- package/dist/components/slices/RelatedArticle1/RelatedArticle1.d.ts +2 -2
- package/dist/components/slices/RelatedArticle1/RelatedArticle1.js +7 -12
- package/dist/components/slices/RelatedArticle1/__tests__/RelatedArticle1.test.js +4 -4
- package/dist/components/slices/RelatedArticle1/styles.js +8 -1
- package/dist/components/slices/RelatedArticle2/RelatedArticle2.d.ts +10 -0
- package/dist/components/slices/RelatedArticle2/RelatedArticle2.js +15 -0
- package/dist/components/slices/RelatedArticle2/__tests__/RelatedArticle2.test.d.ts +1 -0
- package/dist/components/slices/RelatedArticle2/__tests__/RelatedArticle2.test.js +20 -0
- package/dist/components/slices/RelatedArticle2/styles.d.ts +7 -0
- package/dist/components/slices/RelatedArticle2/styles.js +36 -0
- package/dist/components/slices/RelatedArticle3/RelatedArticle3.d.ts +10 -0
- package/dist/components/slices/RelatedArticle3/RelatedArticle3.js +16 -0
- package/dist/components/slices/RelatedArticle3/__tests__/RelatedArticle3.test.d.ts +1 -0
- package/dist/components/slices/RelatedArticle3/__tests__/RelatedArticle3.test.js +20 -0
- package/dist/components/slices/RelatedArticle3/styles.d.ts +4 -0
- package/dist/components/slices/RelatedArticle3/styles.js +33 -0
- package/dist/components/slices/Slice.stories.js +11 -1
- package/dist/fixtures/getSlice.js +20 -5
- package/dist/utils/getDate.d.ts +1 -0
- package/dist/utils/getDate.js +29 -0
- package/dist/utils/getSlice.js +7 -1
- package/package.json +4 -4
- package/rnw.js +1 -1
- package/src/components/article/ArticleStandard/ArticleStandard.tsx +46 -0
- package/src/components/article/ArticleStandard/__tests__/ArticleStandard.test.tsx +41 -0
- package/src/components/article/ArticleStandard/__tests__/__snapshots__/ArticleStandard.test.tsx.snap +39 -0
- package/src/components/article/ArticleStandard/styles.ts +18 -0
- package/src/components/slices/RelatedArticle1/RelatedArticle1.tsx +6 -11
- package/src/components/slices/RelatedArticle1/__tests__/RelatedArticle1.test.tsx +3 -3
- package/src/components/slices/RelatedArticle1/__tests__/__snapshots__/RelatedArticle1.test.tsx.snap +2 -2
- package/src/components/slices/RelatedArticle1/styles.ts +7 -0
- package/src/components/slices/RelatedArticle2/RelatedArticle2.tsx +37 -0
- package/src/components/slices/RelatedArticle2/__tests__/RelatedArticle2.test.tsx +29 -0
- package/src/components/slices/RelatedArticle2/__tests__/__snapshots__/RelatedArticle2.test.tsx.snap +24 -0
- package/src/components/slices/RelatedArticle2/styles.ts +42 -0
- package/src/components/slices/RelatedArticle3/RelatedArticle3.tsx +38 -0
- package/src/components/slices/RelatedArticle3/__tests__/RelatedArticle3.test.tsx +29 -0
- package/src/components/slices/RelatedArticle3/__tests__/__snapshots__/RelatedArticle3.test.tsx.snap +31 -0
- package/src/components/slices/RelatedArticle3/styles.ts +35 -0
- package/src/components/slices/Slice.stories.tsx +14 -0
- package/src/fixtures/getSlice.ts +19 -4
- package/src/utils/getDate.ts +39 -0
- package/src/utils/getSlice.ts +6 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,36 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [1.5.1](https://github.com/newsuk/times-components/compare/@times-components/ts-slices@1.5.0...@times-components/ts-slices@1.5.1) (2022-08-05)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @times-components/ts-slices
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# [1.5.0](https://github.com/newsuk/times-components/compare/@times-components/ts-slices@1.4.5...@times-components/ts-slices@1.5.0) (2022-07-28)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Features
|
|
18
|
+
|
|
19
|
+
* **TDP-2202:** update recommended slice layout ([#3062](https://github.com/newsuk/times-components/issues/3062)) ([7431919](https://github.com/newsuk/times-components/commit/7431919a36fc0758ce91c9a530edabdbec3cf040))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
## [1.4.5](https://github.com/newsuk/times-components/compare/@times-components/ts-slices@1.4.4...@times-components/ts-slices@1.4.5) (2022-07-27)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
### Bug Fixes
|
|
29
|
+
|
|
30
|
+
* **TDP-2268:** Double tracking bug - replace slice ([#3059](https://github.com/newsuk/times-components/issues/3059)) ([70783ce](https://github.com/newsuk/times-components/commit/70783ced2727227d0b41ce772307f9e9bc27fa15))
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
6
36
|
## [1.4.4](https://github.com/newsuk/times-components/compare/@times-components/ts-slices@1.4.3...@times-components/ts-slices@1.4.4) (2022-07-19)
|
|
7
37
|
|
|
8
38
|
**Note:** Version bump only for package @times-components/ts-slices
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { SliceArticle } from '../../../types/slice';
|
|
3
|
+
import { ClickHandlerType } from '../../../types/event';
|
|
4
|
+
import { DisplaySchema } from '../../../types/styles';
|
|
5
|
+
export declare const ArticleStandard: React.FC<{
|
|
6
|
+
article?: SliceArticle;
|
|
7
|
+
displaySchema?: DisplaySchema;
|
|
8
|
+
clickHandler?: ClickHandlerType;
|
|
9
|
+
}>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { getDate } from '../../../utils/getDate';
|
|
3
|
+
import { Image } from '../../elements/Image/Image';
|
|
4
|
+
import { Headline } from '../../elements/Headline/Headline';
|
|
5
|
+
import { ArticleContainer, SideBySideColumn, Label } from '../shared-styles';
|
|
6
|
+
import { DateTime, Byline } from './styles';
|
|
7
|
+
export const ArticleStandard = ({ article, displaySchema, clickHandler }) => {
|
|
8
|
+
if (!article) {
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
const date = getDate(article.datePublished);
|
|
12
|
+
return (React.createElement(ArticleContainer, { schema: displaySchema },
|
|
13
|
+
React.createElement(SideBySideColumn, { schema: displaySchema },
|
|
14
|
+
React.createElement(Image, { article: article, displaySchema: displaySchema, clickHandler: clickHandler })),
|
|
15
|
+
React.createElement(SideBySideColumn, { schema: displaySchema },
|
|
16
|
+
article.label && React.createElement(Label, null, article.label),
|
|
17
|
+
React.createElement(Headline, { article: article, displaySchema: displaySchema, clickHandler: clickHandler }),
|
|
18
|
+
date && React.createElement(DateTime, null, date),
|
|
19
|
+
article.byline && React.createElement(Byline, null, article.byline))));
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXJ0aWNsZVN0YW5kYXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXJ0aWNsZS9BcnRpY2xlU3RhbmRhcmQvQXJ0aWNsZVN0YW5kYXJkLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFLMUIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRWpELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRTVDLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FJdkIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRTtJQUNoRCxJQUFJLENBQUMsT0FBTyxFQUFFO1FBQ1osT0FBTyxJQUFJLENBQUM7S0FDYjtJQUVELE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7SUFFNUMsT0FBTyxDQUNMLG9CQUFDLGdCQUFnQixJQUFDLE1BQU0sRUFBRSxhQUFhO1FBQ3JDLG9CQUFDLGdCQUFnQixJQUFDLE1BQU0sRUFBRSxhQUFhO1lBQ3JDLG9CQUFDLEtBQUssSUFDSixPQUFPLEVBQUUsT0FBTyxFQUNoQixhQUFhLEVBQUUsYUFBYSxFQUM1QixZQUFZLEVBQUUsWUFBWSxHQUMxQixDQUNlO1FBQ25CLG9CQUFDLGdCQUFnQixJQUFDLE1BQU0sRUFBRSxhQUFhO1lBQ3BDLE9BQU8sQ0FBQyxLQUFLLElBQUksb0JBQUMsS0FBSyxRQUFFLE9BQU8sQ0FBQyxLQUFLLENBQVM7WUFDaEQsb0JBQUMsUUFBUSxJQUNQLE9BQU8sRUFBRSxPQUFPLEVBQ2hCLGFBQWEsRUFBRSxhQUFhLEVBQzVCLFlBQVksRUFBRSxZQUFZLEdBQzFCO1lBQ0QsSUFBSSxJQUFJLG9CQUFDLFFBQVEsUUFBRSxJQUFJLENBQVk7WUFDbkMsT0FBTyxDQUFDLE1BQU0sSUFBSSxvQkFBQyxNQUFNLFFBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBVSxDQUNuQyxDQUNGLENBQ3BCLENBQUM7QUFDSixDQUFDLENBQUMifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { render } from '@testing-library/react';
|
|
3
|
+
import { ArticleStandard } from '../ArticleStandard';
|
|
4
|
+
jest.mock('../../../elements/Image/Image', () => ({
|
|
5
|
+
Image: () => React.createElement("div", null, "Image")
|
|
6
|
+
}));
|
|
7
|
+
jest.mock('../../../elements/Headline/Headline', () => ({
|
|
8
|
+
Headline: () => React.createElement("div", null, "Headline")
|
|
9
|
+
}));
|
|
10
|
+
describe('<ArticleStandard />', () => {
|
|
11
|
+
afterAll(() => {
|
|
12
|
+
jest.clearAllMocks();
|
|
13
|
+
});
|
|
14
|
+
it('should render an article correctly', () => {
|
|
15
|
+
const article = {
|
|
16
|
+
images: { crops: [] },
|
|
17
|
+
label: 'Some text label',
|
|
18
|
+
byline: 'Some author',
|
|
19
|
+
headline: '',
|
|
20
|
+
datePublished: '2020-08-20T12:00:00.000Z',
|
|
21
|
+
url: ''
|
|
22
|
+
};
|
|
23
|
+
const { asFragment, getByText } = render(React.createElement(ArticleStandard, { article: article }));
|
|
24
|
+
getByText('Image');
|
|
25
|
+
getByText(article.label);
|
|
26
|
+
getByText('Headline');
|
|
27
|
+
getByText('August 20 2020, 1.00pm');
|
|
28
|
+
getByText('Some author');
|
|
29
|
+
expect(asFragment()).toMatchSnapshot();
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXJ0aWNsZVN0YW5kYXJkLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9hcnRpY2xlL0FydGljbGVTdGFuZGFyZC9fX3Rlc3RzX18vQXJ0aWNsZVN0YW5kYXJkLnRlc3QudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXJELElBQUksQ0FBQyxJQUFJLENBQUMsK0JBQStCLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUNoRCxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMseUNBQWdCO0NBQzlCLENBQUMsQ0FBQyxDQUFDO0FBRUosSUFBSSxDQUFDLElBQUksQ0FBQyxxQ0FBcUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyw0Q0FBbUI7Q0FDcEMsQ0FBQyxDQUFDLENBQUM7QUFFSixRQUFRLENBQUMscUJBQXFCLEVBQUUsR0FBRyxFQUFFO0lBQ25DLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDWixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsb0NBQW9DLEVBQUUsR0FBRyxFQUFFO1FBQzVDLE1BQU0sT0FBTyxHQUFHO1lBQ2QsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNyQixLQUFLLEVBQUUsaUJBQWlCO1lBQ3hCLE1BQU0sRUFBRSxhQUFhO1lBQ3JCLFFBQVEsRUFBRSxFQUFFO1lBQ1osYUFBYSxFQUFFLDBCQUEwQjtZQUN6QyxHQUFHLEVBQUUsRUFBRTtTQUNSLENBQUM7UUFFRixNQUFNLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxHQUFHLE1BQU0sQ0FDdEMsb0JBQUMsZUFBZSxJQUFDLE9BQU8sRUFBRSxPQUFPLEdBQUksQ0FDdEMsQ0FBQztRQUVGLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNuQixTQUFTLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN0QixTQUFTLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUNwQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFekIsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyJ9
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import styled from 'styled-components';
|
|
2
|
+
import { colours, fonts } from '@times-components/ts-styleguide';
|
|
3
|
+
export const DateTime = styled.p `
|
|
4
|
+
margin: 8px 0 0 0;
|
|
5
|
+
color: ${colours.functional.secondary};
|
|
6
|
+
font-size: 13px;
|
|
7
|
+
line-height: 16px;
|
|
8
|
+
font-family: ${fonts.supporting};
|
|
9
|
+
`;
|
|
10
|
+
export const Byline = styled.p `
|
|
11
|
+
margin: 8px 0 0 0;
|
|
12
|
+
color: ${colours.functional.brandColour};
|
|
13
|
+
font-size: 13px;
|
|
14
|
+
line-height: 16px;
|
|
15
|
+
font-family: ${fonts.supporting};
|
|
16
|
+
`;
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXJ0aWNsZS9BcnRpY2xlU3RhbmRhcmQvc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sTUFBTSxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFakUsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUE7O1dBRXJCLE9BQU8sQ0FBQyxVQUFVLENBQUMsU0FBUzs7O2lCQUd0QixLQUFLLENBQUMsVUFBVTtDQUNoQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUE7O1dBRW5CLE9BQU8sQ0FBQyxVQUFVLENBQUMsV0FBVzs7O2lCQUd4QixLQUFLLENBQUMsVUFBVTtDQUNoQyxDQUFDIn0=
|
|
@@ -2,9 +2,9 @@ import React from 'react';
|
|
|
2
2
|
import { SliceData } from '../../../types/slice';
|
|
3
3
|
import { SliceStyle } from '../../../types/styles';
|
|
4
4
|
import { ClickHandlerType } from '../../../types/event';
|
|
5
|
-
declare const
|
|
5
|
+
declare const RelatedArticle1: React.FC<{
|
|
6
6
|
slice: SliceData;
|
|
7
7
|
styles?: SliceStyle;
|
|
8
8
|
clickHandler?: ClickHandlerType;
|
|
9
9
|
}>;
|
|
10
|
-
export default
|
|
10
|
+
export default RelatedArticle1;
|
|
@@ -1,18 +1,13 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import get from 'lodash.get';
|
|
3
3
|
import { setDisplaySchema } from '../../../utils/getArticleStyles';
|
|
4
|
-
import {
|
|
4
|
+
import { ArticleStandard } from '../../article/ArticleStandard/ArticleStandard';
|
|
5
5
|
import { SliceContainer, SlotContainer } from './styles';
|
|
6
|
-
const
|
|
6
|
+
const RelatedArticle1 = React.memo(({ slice, styles, clickHandler }) => (React.createElement(SliceContainer, { styles: styles },
|
|
7
7
|
React.createElement(SlotContainer, { styles: styles },
|
|
8
|
-
React.createElement(
|
|
9
|
-
sm: {
|
|
10
|
-
|
|
11
|
-
headlineFontSize: 28
|
|
12
|
-
},
|
|
13
|
-
md: { isSideBySide: true },
|
|
14
|
-
lg: { headlineFontSize: 32 },
|
|
15
|
-
xlg: { headlineFontSize: 36 }
|
|
8
|
+
React.createElement(ArticleStandard, { article: get(slice, 'children[0].article'), displaySchema: setDisplaySchema({
|
|
9
|
+
sm: { imageRatio: '16:9', headlineFontSize: 22 },
|
|
10
|
+
md: { isSideBySide: true }
|
|
16
11
|
}), clickHandler: clickHandler })))));
|
|
17
|
-
export default
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
12
|
+
export default RelatedArticle1;
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVsYXRlZEFydGljbGUxLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvc2xpY2VzL1JlbGF0ZWRBcnRpY2xlMS9SZWxhdGVkQXJ0aWNsZTEudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEdBQUcsTUFBTSxZQUFZLENBQUM7QUFLN0IsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFbkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBRWhGLE9BQU8sRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXpELE1BQU0sZUFBZSxHQUloQixLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUNuRCxvQkFBQyxjQUFjLElBQUMsTUFBTSxFQUFFLE1BQU07SUFDNUIsb0JBQUMsYUFBYSxJQUFDLE1BQU0sRUFBRSxNQUFNO1FBQzNCLG9CQUFDLGVBQWUsSUFDZCxPQUFPLEVBQUUsR0FBRyxDQUFDLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxFQUMxQyxhQUFhLEVBQUUsZ0JBQWdCLENBQUM7Z0JBQzlCLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsZ0JBQWdCLEVBQUUsRUFBRSxFQUFFO2dCQUNoRCxFQUFFLEVBQUUsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFO2FBQzNCLENBQUMsRUFDRixZQUFZLEVBQUUsWUFBWSxHQUMxQixDQUNZLENBQ0QsQ0FDbEIsQ0FBQyxDQUFDO0FBRUgsZUFBZSxlQUFlLENBQUMifQ==
|
|
@@ -2,8 +2,8 @@ import React from 'react';
|
|
|
2
2
|
import { render } from '@testing-library/react';
|
|
3
3
|
import { getSlice } from '../../../../fixtures/getSlice';
|
|
4
4
|
import RelatedArticle1 from '../RelatedArticle1';
|
|
5
|
-
jest.mock('../../../article/
|
|
6
|
-
|
|
5
|
+
jest.mock('../../../article/ArticleStandard/ArticleStandard', () => ({
|
|
6
|
+
ArticleStandard: () => React.createElement("div", null, "ArticleStandard")
|
|
7
7
|
}));
|
|
8
8
|
describe('<RelatedArticle1 />', () => {
|
|
9
9
|
afterAll(() => {
|
|
@@ -12,9 +12,9 @@ describe('<RelatedArticle1 />', () => {
|
|
|
12
12
|
it('should render an RELATED_ARTICLE_1 slice correctly', () => {
|
|
13
13
|
const slice = getSlice('RELATED_ARTICLE_1');
|
|
14
14
|
const { asFragment, getAllByText } = render(React.createElement(RelatedArticle1, { slice: slice }));
|
|
15
|
-
const article = getAllByText('
|
|
15
|
+
const article = getAllByText('ArticleStandard');
|
|
16
16
|
expect(article.length).toBe(1);
|
|
17
17
|
expect(asFragment()).toMatchSnapshot();
|
|
18
18
|
});
|
|
19
19
|
});
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVsYXRlZEFydGljbGUxLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9zbGljZXMvUmVsYXRlZEFydGljbGUxL19fdGVzdHNfXy9SZWxhdGVkQXJ0aWNsZTEudGVzdC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFekQsT0FBTyxlQUFlLE1BQU0sb0JBQW9CLENBQUM7QUFFakQsSUFBSSxDQUFDLElBQUksQ0FBQyxrREFBa0QsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLGVBQWUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxtREFBMEI7Q0FDbEQsQ0FBQyxDQUFDLENBQUM7QUFFSixRQUFRLENBQUMscUJBQXFCLEVBQUUsR0FBRyxFQUFFO0lBQ25DLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDWixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsb0RBQW9ELEVBQUUsR0FBRyxFQUFFO1FBQzVELE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRTVDLE1BQU0sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEdBQUcsTUFBTSxDQUN6QyxvQkFBQyxlQUFlLElBQUMsS0FBSyxFQUFFLEtBQUssR0FBSSxDQUNsQyxDQUFDO1FBRUYsTUFBTSxPQUFPLEdBQUcsWUFBWSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDaEQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFL0IsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyJ9
|
|
@@ -4,6 +4,13 @@ import { SliceContainer as SliceContainerBase, SlotContainer as SlotContainerBas
|
|
|
4
4
|
export const SliceContainer = styled(SliceContainerBase) `
|
|
5
5
|
@media (min-width: ${breakpoints.medium}px) {
|
|
6
6
|
flex-wrap: nowrap;
|
|
7
|
+
width: 80.8%;
|
|
8
|
+
max-width: none;
|
|
9
|
+
padding: 0;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
@media (min-width: ${breakpoints.wide}px) {
|
|
13
|
+
width: 56.2%;
|
|
7
14
|
}
|
|
8
15
|
`;
|
|
9
16
|
export const SlotContainer = styled(SlotContainerBase) `
|
|
@@ -13,4 +20,4 @@ export const SlotContainer = styled(SlotContainerBase) `
|
|
|
13
20
|
padding-bottom: 24px;
|
|
14
21
|
}
|
|
15
22
|
`;
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvc2xpY2VzL1JlbGF0ZWRBcnRpY2xlMS9zdHlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNLE1BQU0sbUJBQW1CLENBQUM7QUFDdkMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTlELE9BQU8sRUFDTCxjQUFjLElBQUksa0JBQWtCLEVBQ3BDLGFBQWEsSUFBSSxpQkFBaUIsRUFDbkMsTUFBTSxrQkFBa0IsQ0FBQztBQUUxQixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUE7dUJBQ2pDLFdBQVcsQ0FBQyxNQUFNOzs7Ozs7O3VCQU9sQixXQUFXLENBQUMsSUFBSTs7O0NBR3RDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7dUJBQy9CLFdBQVcsQ0FBQyxNQUFNOzs7OztDQUt4QyxDQUFDIn0=
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { SliceData } from '../../../types/slice';
|
|
3
|
+
import { SliceStyle } from '../../../types/styles';
|
|
4
|
+
import { ClickHandlerType } from '../../../types/event';
|
|
5
|
+
declare const RelatedArticle2: React.FC<{
|
|
6
|
+
slice: SliceData;
|
|
7
|
+
styles?: SliceStyle;
|
|
8
|
+
clickHandler?: ClickHandlerType;
|
|
9
|
+
}>;
|
|
10
|
+
export default RelatedArticle2;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { setDisplaySchema } from '../../../utils/getArticleStyles';
|
|
3
|
+
import { ArticleStandard } from '../../article/ArticleStandard/ArticleStandard';
|
|
4
|
+
import { SliceContainer, SlotContainer } from './styles';
|
|
5
|
+
const RelatedArticle2 = React.memo(({ slice, styles, clickHandler }) => (React.createElement(SliceContainer, { styles: styles }, slice.children.map((slot, i) => (React.createElement(SlotContainer, { key: i, styles: styles },
|
|
6
|
+
React.createElement(ArticleStandard, { article: slot.article, displaySchema: setDisplaySchema({
|
|
7
|
+
sm: {
|
|
8
|
+
isImageHidden: true,
|
|
9
|
+
imageRatio: '16:9',
|
|
10
|
+
headlineFontSize: 22
|
|
11
|
+
},
|
|
12
|
+
md: { isImageHidden: false }
|
|
13
|
+
}), clickHandler: clickHandler })))))));
|
|
14
|
+
export default RelatedArticle2;
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVsYXRlZEFydGljbGUyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvc2xpY2VzL1JlbGF0ZWRBcnRpY2xlMi9SZWxhdGVkQXJ0aWNsZTIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUsxQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFFaEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFekQsTUFBTSxlQUFlLEdBSWhCLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQ25ELG9CQUFDLGNBQWMsSUFBQyxNQUFNLEVBQUUsTUFBTSxJQUMzQixLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQWUsRUFBRSxDQUFTLEVBQUUsRUFBRSxDQUFDLENBQ2xELG9CQUFDLGFBQWEsSUFBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxNQUFNO0lBQ25DLG9CQUFDLGVBQWUsSUFDZCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFDckIsYUFBYSxFQUFFLGdCQUFnQixDQUFDO1lBQzlCLEVBQUUsRUFBRTtnQkFDRixhQUFhLEVBQUUsSUFBSTtnQkFDbkIsVUFBVSxFQUFFLE1BQU07Z0JBQ2xCLGdCQUFnQixFQUFFLEVBQUU7YUFDckI7WUFDRCxFQUFFLEVBQUUsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFO1NBQzdCLENBQUMsRUFDRixZQUFZLEVBQUUsWUFBWSxHQUMxQixDQUNZLENBQ2pCLENBQUMsQ0FDYSxDQUNsQixDQUFDLENBQUM7QUFFSCxlQUFlLGVBQWUsQ0FBQyJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { render } from '@testing-library/react';
|
|
3
|
+
import { getSlice } from '../../../../fixtures/getSlice';
|
|
4
|
+
import RelatedArticle2 from '../RelatedArticle2';
|
|
5
|
+
jest.mock('../../../article/ArticleStandard/ArticleStandard', () => ({
|
|
6
|
+
ArticleStandard: () => React.createElement("div", null, "ArticleStandard")
|
|
7
|
+
}));
|
|
8
|
+
describe('<RelatedArticle2 />', () => {
|
|
9
|
+
afterAll(() => {
|
|
10
|
+
jest.clearAllMocks();
|
|
11
|
+
});
|
|
12
|
+
it('should render an RELATED_ARTICLE_2 slice correctly', () => {
|
|
13
|
+
const slice = getSlice('RELATED_ARTICLE_2');
|
|
14
|
+
const { asFragment, getAllByText } = render(React.createElement(RelatedArticle2, { slice: slice }));
|
|
15
|
+
const article = getAllByText('ArticleStandard');
|
|
16
|
+
expect(article.length).toBe(2);
|
|
17
|
+
expect(asFragment()).toMatchSnapshot();
|
|
18
|
+
});
|
|
19
|
+
});
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVsYXRlZEFydGljbGUyLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9zbGljZXMvUmVsYXRlZEFydGljbGUyL19fdGVzdHNfXy9SZWxhdGVkQXJ0aWNsZTIudGVzdC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFekQsT0FBTyxlQUFlLE1BQU0sb0JBQW9CLENBQUM7QUFFakQsSUFBSSxDQUFDLElBQUksQ0FBQyxrREFBa0QsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLGVBQWUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxtREFBMEI7Q0FDbEQsQ0FBQyxDQUFDLENBQUM7QUFFSixRQUFRLENBQUMscUJBQXFCLEVBQUUsR0FBRyxFQUFFO0lBQ25DLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDWixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsb0RBQW9ELEVBQUUsR0FBRyxFQUFFO1FBQzVELE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRTVDLE1BQU0sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEdBQUcsTUFBTSxDQUN6QyxvQkFBQyxlQUFlLElBQUMsS0FBSyxFQUFFLEtBQUssR0FBSSxDQUNsQyxDQUFDO1FBRUYsTUFBTSxPQUFPLEdBQUcsWUFBWSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDaEQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFL0IsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyJ9
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const SliceContainer: import("styled-components").StyledComponent<"div", any, {
|
|
2
|
+
styles?: import("../../../types/styles").SliceStyle | undefined;
|
|
3
|
+
}, never>;
|
|
4
|
+
export declare const SlotContainer: import("styled-components").StyledComponent<"div", any, {
|
|
5
|
+
styles?: import("../../../types/styles").SliceStyle | undefined;
|
|
6
|
+
collapse?: boolean | undefined;
|
|
7
|
+
}, never>;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import styled from 'styled-components';
|
|
2
|
+
import { breakpoints } from '@times-components/ts-styleguide';
|
|
3
|
+
import { calculateSlotWidth } from '../../../utils/getArticleStyles';
|
|
4
|
+
import { SliceContainer as SliceContainerBase, SlotContainer as SlotContainerBase } from '../shared-styles';
|
|
5
|
+
export const SliceContainer = styled(SliceContainerBase) `
|
|
6
|
+
@media (min-width: ${breakpoints.medium}px) {
|
|
7
|
+
width: 80.8%;
|
|
8
|
+
max-width: none;
|
|
9
|
+
padding: 0;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
@media (min-width: ${breakpoints.wide}px) {
|
|
13
|
+
width: 56.2%;
|
|
14
|
+
}
|
|
15
|
+
`;
|
|
16
|
+
export const SlotContainer = styled(SlotContainerBase) `
|
|
17
|
+
@media (min-width: ${breakpoints.medium}px) {
|
|
18
|
+
width: ${calculateSlotWidth(50, 2)};
|
|
19
|
+
margin-bottom: 24px;
|
|
20
|
+
padding-bottom: 24px;
|
|
21
|
+
|
|
22
|
+
&:first-of-type {
|
|
23
|
+
padding-right: 12px;
|
|
24
|
+
|
|
25
|
+
:before {
|
|
26
|
+
display: block;
|
|
27
|
+
bottom: 24px;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
&:last-of-type {
|
|
32
|
+
padding-left: 12px;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
`;
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvc2xpY2VzL1JlbGF0ZWRBcnRpY2xlMi9zdHlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNLE1BQU0sbUJBQW1CLENBQUM7QUFDdkMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTlELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXJFLE9BQU8sRUFDTCxjQUFjLElBQUksa0JBQWtCLEVBQ3BDLGFBQWEsSUFBSSxpQkFBaUIsRUFDbkMsTUFBTSxrQkFBa0IsQ0FBQztBQUUxQixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUE7dUJBQ2pDLFdBQVcsQ0FBQyxNQUFNOzs7Ozs7dUJBTWxCLFdBQVcsQ0FBQyxJQUFJOzs7Q0FHdEMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQTt1QkFDL0IsV0FBVyxDQUFDLE1BQU07YUFDNUIsa0JBQWtCLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FpQnJDLENBQUMifQ==
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { SliceData } from '../../../types/slice';
|
|
3
|
+
import { SliceStyle } from '../../../types/styles';
|
|
4
|
+
import { ClickHandlerType } from '../../../types/event';
|
|
5
|
+
declare const RelatedArticle3: React.FC<{
|
|
6
|
+
slice: SliceData;
|
|
7
|
+
styles?: SliceStyle;
|
|
8
|
+
clickHandler?: ClickHandlerType;
|
|
9
|
+
}>;
|
|
10
|
+
export default RelatedArticle3;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { setDisplaySchema } from '../../../utils/getArticleStyles';
|
|
3
|
+
import { ArticleStandard } from '../../article/ArticleStandard/ArticleStandard';
|
|
4
|
+
import { SliceContainer } from '../shared-styles';
|
|
5
|
+
import { SlotContainer } from './styles';
|
|
6
|
+
const RelatedArticle3 = React.memo(({ slice, styles, clickHandler }) => (React.createElement(SliceContainer, { styles: styles }, slice.children.map((slot, i) => (React.createElement(SlotContainer, { key: i, styles: styles },
|
|
7
|
+
React.createElement(ArticleStandard, { article: slot.article, displaySchema: setDisplaySchema({
|
|
8
|
+
sm: {
|
|
9
|
+
isImageHidden: true,
|
|
10
|
+
imageRatio: '16:9',
|
|
11
|
+
headlineFontSize: 22
|
|
12
|
+
},
|
|
13
|
+
md: { isImageHidden: false }
|
|
14
|
+
}), clickHandler: clickHandler })))))));
|
|
15
|
+
export default RelatedArticle3;
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVsYXRlZEFydGljbGUzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvc2xpY2VzL1JlbGF0ZWRBcnRpY2xlMy9SZWxhdGVkQXJ0aWNsZTMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUsxQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFFaEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFekMsTUFBTSxlQUFlLEdBSWhCLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQ25ELG9CQUFDLGNBQWMsSUFBQyxNQUFNLEVBQUUsTUFBTSxJQUMzQixLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQWUsRUFBRSxDQUFTLEVBQUUsRUFBRSxDQUFDLENBQ2xELG9CQUFDLGFBQWEsSUFBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxNQUFNO0lBQ25DLG9CQUFDLGVBQWUsSUFDZCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFDckIsYUFBYSxFQUFFLGdCQUFnQixDQUFDO1lBQzlCLEVBQUUsRUFBRTtnQkFDRixhQUFhLEVBQUUsSUFBSTtnQkFDbkIsVUFBVSxFQUFFLE1BQU07Z0JBQ2xCLGdCQUFnQixFQUFFLEVBQUU7YUFDckI7WUFDRCxFQUFFLEVBQUUsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFO1NBQzdCLENBQUMsRUFDRixZQUFZLEVBQUUsWUFBWSxHQUMxQixDQUNZLENBQ2pCLENBQUMsQ0FDYSxDQUNsQixDQUFDLENBQUM7QUFFSCxlQUFlLGVBQWUsQ0FBQyJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { render } from '@testing-library/react';
|
|
3
|
+
import { getSlice } from '../../../../fixtures/getSlice';
|
|
4
|
+
import RelatedArticle3 from '../RelatedArticle3';
|
|
5
|
+
jest.mock('../../../article/ArticleStandard/ArticleStandard', () => ({
|
|
6
|
+
ArticleStandard: () => React.createElement("div", null, "ArticleStandard")
|
|
7
|
+
}));
|
|
8
|
+
describe('<RelatedArticle3 />', () => {
|
|
9
|
+
afterAll(() => {
|
|
10
|
+
jest.clearAllMocks();
|
|
11
|
+
});
|
|
12
|
+
it('should render an RELATED_ARTICLE_3 slice correctly', () => {
|
|
13
|
+
const slice = getSlice('RELATED_ARTICLE_3');
|
|
14
|
+
const { asFragment, getAllByText } = render(React.createElement(RelatedArticle3, { slice: slice }));
|
|
15
|
+
const article = getAllByText('ArticleStandard');
|
|
16
|
+
expect(article.length).toBe(3);
|
|
17
|
+
expect(asFragment()).toMatchSnapshot();
|
|
18
|
+
});
|
|
19
|
+
});
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVsYXRlZEFydGljbGUzLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9zbGljZXMvUmVsYXRlZEFydGljbGUzL19fdGVzdHNfXy9SZWxhdGVkQXJ0aWNsZTMudGVzdC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFekQsT0FBTyxlQUFlLE1BQU0sb0JBQW9CLENBQUM7QUFFakQsSUFBSSxDQUFDLElBQUksQ0FBQyxrREFBa0QsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLGVBQWUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxtREFBMEI7Q0FDbEQsQ0FBQyxDQUFDLENBQUM7QUFFSixRQUFRLENBQUMscUJBQXFCLEVBQUUsR0FBRyxFQUFFO0lBQ25DLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDWixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsb0RBQW9ELEVBQUUsR0FBRyxFQUFFO1FBQzVELE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRTVDLE1BQU0sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEdBQUcsTUFBTSxDQUN6QyxvQkFBQyxlQUFlLElBQUMsS0FBSyxFQUFFLEtBQUssR0FBSSxDQUNsQyxDQUFDO1FBRUYsTUFBTSxPQUFPLEdBQUcsWUFBWSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDaEQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFL0IsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyJ9
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import styled from 'styled-components';
|
|
2
|
+
import { breakpoints } from '@times-components/ts-styleguide';
|
|
3
|
+
import { calculateSlotWidth } from '../../../utils/getArticleStyles';
|
|
4
|
+
import { SlotContainer as SlotContainerBase } from '../shared-styles';
|
|
5
|
+
export const SlotContainer = styled(SlotContainerBase) `
|
|
6
|
+
@media (min-width: ${breakpoints.medium}px) {
|
|
7
|
+
width: ${calculateSlotWidth(33.33, 3)};
|
|
8
|
+
margin-bottom: 24px;
|
|
9
|
+
padding: 0 12px 24px 12px;
|
|
10
|
+
|
|
11
|
+
:before {
|
|
12
|
+
display: block;
|
|
13
|
+
bottom: 24px;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
:after {
|
|
17
|
+
display: block;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
&:first-of-type {
|
|
21
|
+
padding-left: 0;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
&:last-of-type {
|
|
25
|
+
padding-right: 0;
|
|
26
|
+
|
|
27
|
+
&:before {
|
|
28
|
+
display: none;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
`;
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvc2xpY2VzL1JlbGF0ZWRBcnRpY2xlMy9zdHlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNLE1BQU0sbUJBQW1CLENBQUM7QUFDdkMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTlELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSxhQUFhLElBQUksaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUV0RSxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7dUJBQy9CLFdBQVcsQ0FBQyxNQUFNO2FBQzVCLGtCQUFrQixDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0F5QnhDLENBQUMifQ==
|
|
@@ -86,10 +86,20 @@ const showcase = {
|
|
|
86
86
|
component: () => (React.createElement(Slice, { slice: getSlice('RELATED_ARTICLE_1'), clickHandler: onClick })),
|
|
87
87
|
name: 'RELATED_ARTICLE_1',
|
|
88
88
|
type: 'story'
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
component: () => (React.createElement(Slice, { slice: getSlice('RELATED_ARTICLE_2'), clickHandler: onClick })),
|
|
92
|
+
name: 'RELATED_ARTICLE_2',
|
|
93
|
+
type: 'story'
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
component: () => (React.createElement(Slice, { slice: getSlice('RELATED_ARTICLE_3'), clickHandler: onClick })),
|
|
97
|
+
name: 'RELATED_ARTICLE_3',
|
|
98
|
+
type: 'story'
|
|
89
99
|
}
|
|
90
100
|
],
|
|
91
101
|
name: 'Typescript Slices/Slices'
|
|
92
102
|
};
|
|
93
103
|
// @ts-ignore
|
|
94
104
|
showcaseConverter(module, showcase);
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2xpY2Uuc3Rvcmllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NsaWNlcy9TbGljZS5zdG9yaWVzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFaEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVuRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRWhDLE1BQU0sT0FBTyxHQUFHLENBQUMsS0FBdUIsRUFBRSxFQUFFO0lBQzFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztBQUN6QixDQUFDLENBQUM7QUFFRixNQUFNLFFBQVEsR0FBRztJQUNmLFFBQVEsRUFBRTtRQUNSO1lBQ0UsU0FBUyxFQUFFLENBQUMsT0FBOEIsRUFBRSxFQUFFLENBQUMsQ0FDN0Msb0JBQUMsY0FBYyxRQUFFLE9BQU8sRUFBRSxDQUFrQixDQUM3QztZQUNELElBQUksRUFBRSxXQUFXO1NBQ2xCO1FBQ0Q7WUFDRSxTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FDZixvQkFBQyxLQUFLLElBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxZQUFZLEVBQUUsT0FBTyxHQUFJLENBQzVEO1lBQ0QsSUFBSSxFQUFFLFFBQVE7WUFDZCxJQUFJLEVBQUUsT0FBTztTQUNkO1FBQ0Q7WUFDRSxTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FDZixvQkFBQyxLQUFLLElBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxjQUFjLENBQUMsRUFBRSxZQUFZLEVBQUUsT0FBTyxHQUFJLENBQ2xFO1lBQ0QsSUFBSSxFQUFFLGNBQWM7WUFDcEIsSUFBSSxFQUFFLE9B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
|
|
@@ -4,10 +4,6 @@ const slices = [
|
|
|
4
4
|
name: 'LEAD_1',
|
|
5
5
|
children: [{ article: getArticleWithSummary() }]
|
|
6
6
|
},
|
|
7
|
-
{
|
|
8
|
-
name: 'RELATED_ARTICLE_1',
|
|
9
|
-
children: [{ article: getArticleWithSummary() }]
|
|
10
|
-
},
|
|
11
7
|
{
|
|
12
8
|
name: 'LEAD_1_AND_1',
|
|
13
9
|
children: [{ article: getArticle() }, { article: getArticleWithSummary() }]
|
|
@@ -119,10 +115,29 @@ const slices = [
|
|
|
119
115
|
{ article: getArticle() },
|
|
120
116
|
{ article: getArticle() }
|
|
121
117
|
]
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
name: 'RELATED_ARTICLE_1',
|
|
121
|
+
children: [{ article: getArticleWithSummary() }]
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
name: 'RELATED_ARTICLE_2',
|
|
125
|
+
children: [
|
|
126
|
+
{ article: getArticleWithSummary() },
|
|
127
|
+
{ article: getArticleWithSummary() }
|
|
128
|
+
]
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
name: 'RELATED_ARTICLE_3',
|
|
132
|
+
children: [
|
|
133
|
+
{ article: getArticleWithSummary() },
|
|
134
|
+
{ article: getArticleWithSummary() },
|
|
135
|
+
{ article: getArticleWithSummary() }
|
|
136
|
+
]
|
|
122
137
|
}
|
|
123
138
|
];
|
|
124
139
|
export const getSlice = (name) => {
|
|
125
140
|
const slice = slices.find((s) => s.name === name);
|
|
126
141
|
return slice ? slice : { name: 'UNDEFINED', children: [] };
|
|
127
142
|
};
|
|
128
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0U2xpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZml4dHVyZXMvZ2V0U2xpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUNMLFVBQVUsRUFDVixxQkFBcUIsRUFDckIsaUJBQWlCLEVBQ2xCLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE1BQU0sTUFBTSxHQUFnQjtJQUMxQjtRQUNFLElBQUksRUFBRSxRQUFRO1FBQ2QsUUFBUSxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsRUFBRSxDQUFDO0tBQ2pEO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsY0FBYztRQUNwQixRQUFRLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLEVBQUUsQ0FBQztLQUM1RTtJQUNEO1FBQ0UsSUFBSSxFQUFFLGNBQWM7UUFDcEIsUUFBUSxFQUFFO1lBQ1IsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUU7WUFDekIsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUU7WUFDekIsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUU7U0FDMUI7S0FDRjtJQUNEO1FBQ0UsSUFBSSxFQUFFLHdCQUF3QjtRQUM5QixRQUFRLEVBQUU7WUFDUixFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsRUFBRTtZQUN6QixFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsRUFBRTtZQUN6QixFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxFQUFFO1NBQ2pDO0tBQ0Y7SUFDRDtRQUNFLElBQUksRUFBRSx1QkFBdUI7UUFDN0IsUUFBUSxFQUFFO1lBQ1IsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUU7WUFDekIsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUU7WUFDekIsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUU7WUFDekIsRUFB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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getDate: (iso?: string | undefined) => string | null;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { format, addMinutes } from 'date-fns';
|
|
2
|
+
const lastSunday = (month, year) => {
|
|
3
|
+
const lastDayOfMonth = new Date(Date.UTC(year, month + 1, 0));
|
|
4
|
+
const day = lastDayOfMonth.getDay();
|
|
5
|
+
const dateOfSunday = lastDayOfMonth.getDate() - day;
|
|
6
|
+
const sunday = new Date(Date.UTC(year, month, dateOfSunday));
|
|
7
|
+
sunday.setHours(1);
|
|
8
|
+
return sunday;
|
|
9
|
+
};
|
|
10
|
+
const isBST = (date) => {
|
|
11
|
+
const startOfBST = lastSunday(2, date.getFullYear());
|
|
12
|
+
const endOfBST = lastSunday(9, date.getFullYear());
|
|
13
|
+
const isAfterStartOfBST = date.getTime() >= startOfBST.getTime();
|
|
14
|
+
const isBeforeEndOfBST = date.getTime() < endOfBST.getTime();
|
|
15
|
+
return isAfterStartOfBST && isBeforeEndOfBST;
|
|
16
|
+
};
|
|
17
|
+
const getUTCTime = (date) => {
|
|
18
|
+
const localDate = new Date(date);
|
|
19
|
+
return new Date(localDate.getUTCFullYear(), localDate.getUTCMonth(), localDate.getUTCDate(), localDate.getUTCHours(), localDate.getUTCMinutes());
|
|
20
|
+
};
|
|
21
|
+
export const getDate = (iso) => {
|
|
22
|
+
if (iso) {
|
|
23
|
+
const utc = getUTCTime(iso);
|
|
24
|
+
const date = addMinutes(utc, isBST(utc) ? 60 : 0);
|
|
25
|
+
return format(date, 'MMMM dd yyyy, h.mmaaa');
|
|
26
|
+
}
|
|
27
|
+
return null;
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0RGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9nZXREYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRTlDLE1BQU0sVUFBVSxHQUFHLENBQUMsS0FBYSxFQUFFLElBQVksRUFBRSxFQUFFO0lBQ2pELE1BQU0sY0FBYyxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5RCxNQUFNLEdBQUcsR0FBRyxjQUFjLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDcEMsTUFBTSxZQUFZLEdBQUcsY0FBYyxDQUFDLE9BQU8sRUFBRSxHQUFHLEdBQUcsQ0FBQztJQUNwRCxNQUFNLE1BQU0sR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUM3RCxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ25CLE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMsQ0FBQztBQUVGLE1BQU0sS0FBSyxHQUFHLENBQUMsSUFBVSxFQUFFLEVBQUU7SUFDM0IsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUNyRCxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ25ELE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqRSxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDN0QsT0FBTyxpQkFBaUIsSUFBSSxnQkFBZ0IsQ0FBQztBQUMvQyxDQUFDLENBQUM7QUFFRixNQUFNLFVBQVUsR0FBRyxDQUFDLElBQVksRUFBRSxFQUFFO0lBQ2xDLE1BQU0sU0FBUyxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2pDLE9BQU8sSUFBSSxJQUFJLENBQ2IsU0FBUyxDQUFDLGNBQWMsRUFBRSxFQUMxQixTQUFTLENBQUMsV0FBVyxFQUFFLEVBQ3ZCLFNBQVMsQ0FBQyxVQUFVLEVBQUUsRUFDdEIsU0FBUyxDQUFDLFdBQVcsRUFBRSxFQUN2QixTQUFTLENBQUMsYUFBYSxFQUFFLENBQzFCLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsQ0FBQyxHQUFZLEVBQUUsRUFBRTtJQUN0QyxJQUFJLEdBQUcsRUFBRTtRQUNQLE1BQU0sR0FBRyxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1QixNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLEVBQUUsdUJBQXVCLENBQUMsQ0FBQztLQUM5QztJQUVELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyxDQUFDIn0=
|
package/dist/utils/getSlice.js
CHANGED
|
@@ -11,6 +11,8 @@ import Secondary4 from '../components/slices/Secondary4/Secondary4';
|
|
|
11
11
|
import Secondary4Odd from '../components/slices/Secondary4Odd/Secondary4Odd';
|
|
12
12
|
import Secondary10 from '../components/slices/Secondary10/Secondary10';
|
|
13
13
|
import RelatedArticle1 from '../components/slices/RelatedArticle1/RelatedArticle1';
|
|
14
|
+
import RelatedArticle2 from '../components/slices/RelatedArticle2/RelatedArticle2';
|
|
15
|
+
import RelatedArticle3 from '../components/slices/RelatedArticle3/RelatedArticle3';
|
|
14
16
|
export const getSliceComponent = (name) => {
|
|
15
17
|
switch (name) {
|
|
16
18
|
case 'LEAD_1':
|
|
@@ -46,8 +48,12 @@ export const getSliceComponent = (name) => {
|
|
|
46
48
|
return Secondary10;
|
|
47
49
|
case 'RELATED_ARTICLE_1':
|
|
48
50
|
return RelatedArticle1;
|
|
51
|
+
case 'RELATED_ARTICLE_2':
|
|
52
|
+
return RelatedArticle2;
|
|
53
|
+
case 'RELATED_ARTICLE_3':
|
|
54
|
+
return RelatedArticle3;
|
|
49
55
|
default:
|
|
50
56
|
return () => null;
|
|
51
57
|
}
|
|
52
58
|
};
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0U2xpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvZ2V0U2xpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxLQUFLLE1BQU0sa0NBQWtDLENBQUM7QUFDckQsT0FBTyxTQUFTLE1BQU0sMENBQTBDLENBQUM7QUFDakUsT0FBTyxTQUFTLE1BQU0sMENBQTBDLENBQUM7QUFDakUsT0FBTyxpQkFBaUIsTUFBTSwwREFBMEQsQ0FBQztBQUN6RixPQUFPLEtBQUssTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRCxPQUFPLGNBQWMsTUFBTSxvREFBb0QsQ0FBQztBQUNoRixPQUFPLGNBQWMsTUFBTSxvREFBb0QsQ0FBQztBQUNoRixPQUFPLG1CQUFtQixNQUFNLDhEQUE4RCxDQUFDO0FBQy9GLE9BQU8sVUFBVSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3BFLE9BQU8sVUFBVSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3BFLE9BQU8sYUFBYSxNQUFNLGtEQUFrRCxDQUFDO0FBQzdFLE9BQU8sV0FBVyxNQUFNLDhDQUE4QyxDQUFDO0FBQ3ZFLE9BQU8sZUFBZSxNQUFNLHNEQUFzRCxDQUFDO0FBQ25GLE9BQU8sZUFBZSxNQUFNLHNEQUFzRCxDQUFDO0FBQ25GLE9BQU8sZUFBZSxNQUFNLHNEQUFzRCxDQUFDO0FBRW5GLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQy9CLElBQVksRUFLWCxFQUFFO0lBQ0gsUUFBUSxJQUFJLEVBQUU7UUFDWixLQUFLLFFBQVEsQ0FBQztRQUNkLEtBQUssa0JBQWtCLENBQUM7UUFDeEIsS0FBSyx3QkFBd0I7WUFDM0IsT0FBTyxLQUFLLENBQUM7UUFDZixLQUFLLGNBQWMsQ0FBQztRQUNwQixLQUFLLHdCQUF3QjtZQUMzQixPQUFPLFNBQVMsQ0FBQztRQUNuQixLQUFLLGNBQWMsQ0FBQztRQUNwQixLQUFLLHdCQUF3QjtZQUMzQixPQUFPLFNBQVMsQ0FBQztRQUNuQixLQUFLLHVCQUF1QjtZQUMxQixPQUFPLGlCQUFpQixDQUFDO1FBQzNCLEtBQUssUUFBUSxDQUFDO1FBQ2QsS0FBSyxrQkFBa0IsQ0FBQztRQUN4QixLQUFLLHdCQUF3QjtZQUMzQixPQUFPLEtBQUssQ0FBQztRQUNmLEtBQUssbUJBQW1CO1lBQ3RCLE9BQU8sY0FBYyxDQUFDO1FBQ3hCLEtBQUssbUJBQW1CO1lBQ3RCLE9BQU8sY0FBYyxDQUFDO1FBQ3hCLEtBQUssMEJBQTBCO1lBQzdCLE9BQU8sbUJBQW1CLENBQUM7UUFDN0IsS0FBSyxhQUFhO1lBQ2hCLE9BQU8sVUFBVSxDQUFDO1FBQ3BCLEtBQUssYUFBYTtZQUNoQixPQUFPLFVBQVUsQ0FBQztRQUNwQixLQUFLLGlCQUFpQixDQUFDO1FBQ3ZCLEtBQUssMkJBQTJCO1lBQzlCLE9BQU8sYUFBYSxDQUFDO1FBQ3ZCLEtBQUssY0FBYztZQUNqQixPQUFPLFdBQVcsQ0FBQztRQUNyQixLQUFLLG1CQUFtQjtZQUN0QixPQUFPLGVBQWUsQ0FBQztRQUN6QixLQUFLLG1CQUFtQjtZQUN0QixPQUFPLGVBQWUsQ0FBQztRQUN6QixLQUFLLG1CQUFtQjtZQUN0QixPQUFPLGVBQWUsQ0FBQztRQUV6QjtZQUNFLE9BQU8sR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO0tBQ3JCO0FBQ0gsQ0FBQyxDQUFDIn0=
|