@financial-times/cp-content-pipeline-ui 11.2.1 → 11.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +24 -0
- package/lib/components/FindOutMoreLink/index.d.ts +4 -0
- package/lib/components/FindOutMoreLink/index.js +10 -0
- package/lib/components/FindOutMoreLink/index.js.map +1 -0
- package/lib/components/LiveBlogPost/index.js +2 -2
- package/lib/components/LiveBlogPost/index.js.map +1 -1
- package/lib/components/LiveBlogPost/test/index.spec.js +37 -0
- package/lib/components/LiveBlogPost/test/index.spec.js.map +1 -1
- package/lib/components/RichText/BasicComponents.js +1 -1
- package/lib/components/RichText/BasicComponents.js.map +1 -1
- package/lib/components/RichText/index.js +2 -0
- package/lib/components/RichText/index.js.map +1 -1
- package/package.json +5 -5
- package/src/components/FindOutMoreLink/index.tsx +15 -0
- package/src/components/LiveBlogPost/index.tsx +8 -6
- package/src/components/LiveBlogPost/test/index.spec.tsx +57 -0
- package/src/components/RichText/BasicComponents.tsx +1 -6
- package/src/components/RichText/index.tsx +2 -0
- package/tsconfig.tsbuildinfo +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -574,6 +574,30 @@
|
|
|
574
574
|
* @financial-times/cp-content-pipeline-client bumped from ^3.7.2 to ^3.7.3
|
|
575
575
|
* @financial-times/cp-content-pipeline-schema bumped from ^2.10.1 to ^2.10.2
|
|
576
576
|
|
|
577
|
+
## [11.3.0](https://github.com/Financial-Times/cp-content-pipeline/compare/cp-content-pipeline-ui-v11.2.2...cp-content-pipeline-ui-v11.3.0) (2026-05-05)
|
|
578
|
+
|
|
579
|
+
|
|
580
|
+
### Features
|
|
581
|
+
|
|
582
|
+
* add new element for onward journey's find out more link ([9f916bf](https://github.com/Financial-Times/cp-content-pipeline/commit/9f916bfdcd5ee7525de6ea68a3731516f05af2b8))
|
|
583
|
+
* bump @financial-times/content-tree to 0.6.0 ([7f98a3a](https://github.com/Financial-Times/cp-content-pipeline/commit/7f98a3ae735b6a228d93236d3b08e3895016879b))
|
|
584
|
+
|
|
585
|
+
|
|
586
|
+
### Dependencies
|
|
587
|
+
|
|
588
|
+
* The following workspace dependencies were updated
|
|
589
|
+
* devDependencies
|
|
590
|
+
* @financial-times/cp-content-pipeline-client bumped from ^5.1.0 to ^5.2.0
|
|
591
|
+
* @financial-times/cp-content-pipeline-schema bumped from ^4.2.0 to ^4.3.0
|
|
592
|
+
* @financial-times/cp-content-pipeline-styles bumped from ^4.7.2 to ^4.8.0
|
|
593
|
+
|
|
594
|
+
## [11.2.2](https://github.com/Financial-Times/cp-content-pipeline/compare/cp-content-pipeline-ui-v11.2.1...cp-content-pipeline-ui-v11.2.2) (2026-04-29)
|
|
595
|
+
|
|
596
|
+
|
|
597
|
+
### Bug Fixes
|
|
598
|
+
|
|
599
|
+
* ci-3515 hide pub date for pinned posts ([1acb6c4](https://github.com/Financial-Times/cp-content-pipeline/commit/1acb6c477805eb3d9820d800a95f8ce34f2b564c))
|
|
600
|
+
|
|
577
601
|
## [11.2.1](https://github.com/Financial-Times/cp-content-pipeline/compare/cp-content-pipeline-ui-v11.2.0...cp-content-pipeline-ui-v11.2.1) (2026-04-22)
|
|
578
602
|
|
|
579
603
|
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.FindOutMoreLink = void 0;
|
|
7
|
+
const react_1 = __importDefault(require("react"));
|
|
8
|
+
const FindOutMoreLink = (props) => (react_1.default.createElement("a", { href: props.content.url, "data-trackable": "find-out-more-link", className: "cp-find-out-more-link" }, props.children));
|
|
9
|
+
exports.FindOutMoreLink = FindOutMoreLink;
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/FindOutMoreLink/index.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAAyB;AAIlB,MAAM,eAAe,GAExB,CAAC,KAAK,EAAE,EAAE,CAAC,CACb,qCACE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,oBACR,oBAAoB,EACnC,SAAS,EAAC,uBAAuB,IAEhC,KAAK,CAAC,QAAQ,CACb,CACL,CAAA;AAVY,QAAA,eAAe,mBAU3B"}
|
|
@@ -68,8 +68,8 @@ publishedDate, articleUrl, showShareButtons = false, showShareLinkButton = false
|
|
|
68
68
|
react_1.default.createElement("div", { className: "x-live-blog-post__meta-container" },
|
|
69
69
|
react_1.default.createElement("div", { className: "x-live-blog-post__meta" },
|
|
70
70
|
indicators.isOpinion ? (react_1.default.createElement("span", { className: "x-live-blog-post__label--opinion x-live-blog-post__label o3-type-label" }, "Live Opinion")) : isPinned ? (react_1.default.createElement("span", { className: "x-live-blog-post__label o3-type-label" }, "Editor's pick")) : (''),
|
|
71
|
-
react_1.default.createElement("span", null,
|
|
72
|
-
react_1.default.createElement(Timestamp_1.default, { publishedTimestamp: publishedDate || publishedTimestamp, textCase: "sentence" }))),
|
|
71
|
+
!isPinned && (react_1.default.createElement("span", null,
|
|
72
|
+
react_1.default.createElement(Timestamp_1.default, { publishedTimestamp: publishedDate || publishedTimestamp, textCase: "sentence" })))),
|
|
73
73
|
react_1.default.createElement("div", { className: "x-live-blog-post__byline" },
|
|
74
74
|
react_1.default.createElement(Byline_1.default, { structuredContent: byline, showEditedBy: false }))),
|
|
75
75
|
showShareLinkButton && (react_1.default.createElement(ShareLinkButton_1.default, { postId: id || postId, articleUrl: articleUrl }))),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/LiveBlogPost/index.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/LiveBlogPost/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
const react_1 = __importDefault(require("react"));
|
|
7
7
|
const react_2 = require("@testing-library/react");
|
|
8
8
|
const ShareLinkButton_1 = __importDefault(require("../ShareLinkButton"));
|
|
9
|
+
const index_1 = require("../index");
|
|
9
10
|
const mockClipboardWrite = jest.fn(() => Promise.resolve());
|
|
10
11
|
Object.defineProperty(navigator, 'clipboard', {
|
|
11
12
|
value: { writeText: mockClipboardWrite },
|
|
@@ -66,4 +67,40 @@ describe('Share Link button', () => {
|
|
|
66
67
|
expect(container.querySelector('[data-tooltip="hide"]')).toBeTruthy();
|
|
67
68
|
});
|
|
68
69
|
});
|
|
70
|
+
describe('LiveBlogPost meta container', () => {
|
|
71
|
+
const defaultProps = {
|
|
72
|
+
id: '00000000-0000-0000-0000-000000000000',
|
|
73
|
+
postId: '00000000-0000-0000-0000-000000000000',
|
|
74
|
+
title: 'Sample Live Blog Post',
|
|
75
|
+
content: 'This is a sample live blog post.',
|
|
76
|
+
bodyHTML: '<p>This is a sample live blog post.</p>',
|
|
77
|
+
body: {},
|
|
78
|
+
publishedTimestamp: '2024-06-01T12:00:00Z',
|
|
79
|
+
publishedDate: '2024-06-01T12:00:00Z',
|
|
80
|
+
isPinned: true,
|
|
81
|
+
articleUrl: 'https://ft.com/content/00000000-0000-0000-0000-000000000000',
|
|
82
|
+
showShareButtons: false,
|
|
83
|
+
showShareLinkButton: false,
|
|
84
|
+
byline: { tree: {} },
|
|
85
|
+
ad: null,
|
|
86
|
+
indicators: {},
|
|
87
|
+
authors: [],
|
|
88
|
+
};
|
|
89
|
+
it('should hide the timestamp on pinned posts', () => {
|
|
90
|
+
const { container } = (0, react_2.render)(react_1.default.createElement(index_1.LiveBlogPost, { ...defaultProps, isPinned: true }));
|
|
91
|
+
expect(container.querySelector('.x-live-blog-post__timestamp-container')).toBeFalsy();
|
|
92
|
+
});
|
|
93
|
+
it('should show the timestamp on non-pinned posts', () => {
|
|
94
|
+
const { container } = (0, react_2.render)(react_1.default.createElement(index_1.LiveBlogPost, { ...defaultProps, isPinned: false }));
|
|
95
|
+
expect(container.querySelector('.x-live-blog-post__timestamp-container')).toBeTruthy();
|
|
96
|
+
});
|
|
97
|
+
it("should render the editor's pick label when the post is pinned", () => {
|
|
98
|
+
const { container } = (0, react_2.render)(react_1.default.createElement(index_1.LiveBlogPost, { ...defaultProps, isPinned: true }));
|
|
99
|
+
expect(container.querySelector('.x-live-blog-post__label')?.textContent).toBe("Editor's pick");
|
|
100
|
+
});
|
|
101
|
+
it("should not render the editor's pick label when the post is not pinned", () => {
|
|
102
|
+
const { container } = (0, react_2.render)(react_1.default.createElement(index_1.LiveBlogPost, { ...defaultProps, isPinned: false }));
|
|
103
|
+
expect(container.querySelector('.x-live-blog-post__label')?.textContent).not.toBe("Editor's pick");
|
|
104
|
+
});
|
|
105
|
+
});
|
|
69
106
|
//# sourceMappingURL=index.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.spec.js","sourceRoot":"","sources":["../../../../src/components/LiveBlogPost/test/index.spec.tsx"],"names":[],"mappings":";;;;;AAAA,kDAAyB;AACzB,kDAA+D;AAC/D,yEAAgD;
|
|
1
|
+
{"version":3,"file":"index.spec.js","sourceRoot":"","sources":["../../../../src/components/LiveBlogPost/test/index.spec.tsx"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ const List = (props) => props.content.ordered ? (react_1.default.createElement("
|
|
|
9
9
|
exports.List = List;
|
|
10
10
|
const ListItem = (props) => react_1.default.createElement("li", null, props.children);
|
|
11
11
|
exports.ListItem = ListItem;
|
|
12
|
-
const Link = (props) => (react_1.default.createElement("a", { href: props.content.url, title: props.content.title,
|
|
12
|
+
const Link = (props) => (react_1.default.createElement("a", { href: props.content.url, title: props.content.title, "data-trackable": "link" }, props.children));
|
|
13
13
|
exports.Link = Link;
|
|
14
14
|
const Blockquote = (props) => {
|
|
15
15
|
return (react_1.default.createElement("blockquote", { className: "n-content-blockquote o3-editorial-typography-blockquote" }, props.children));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BasicComponents.js","sourceRoot":"","sources":["../../../src/components/RichText/BasicComponents.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAAyB;AAKlB,MAAM,IAAI,GAEb,CAAC,KAAK,EAAE,EAAE,CACZ,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CACtB,sCAAI,SAAS,EAAC,sCAAsC,IAAE,KAAK,CAAC,QAAQ,CAAM,CAC3E,CAAC,CAAC,CAAC,CACF,sCAAI,SAAS,EAAC,wCAAwC,IAAE,KAAK,CAAC,QAAQ,CAAM,CAC7E,CAAA;AAPU,QAAA,IAAI,QAOd;AAEI,MAAM,QAAQ,GAEjB,CAAC,KAAK,EAAE,EAAE,CAAC,0CAAK,KAAK,CAAC,QAAQ,CAAM,CAAA;AAF3B,QAAA,QAAQ,YAEmB;AAEjC,MAAM,IAAI,GAEb,CAAC,KAAK,EAAE,EAAE,CAAC,CACb,
|
|
1
|
+
{"version":3,"file":"BasicComponents.js","sourceRoot":"","sources":["../../../src/components/RichText/BasicComponents.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAAyB;AAKlB,MAAM,IAAI,GAEb,CAAC,KAAK,EAAE,EAAE,CACZ,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CACtB,sCAAI,SAAS,EAAC,sCAAsC,IAAE,KAAK,CAAC,QAAQ,CAAM,CAC3E,CAAC,CAAC,CAAC,CACF,sCAAI,SAAS,EAAC,wCAAwC,IAAE,KAAK,CAAC,QAAQ,CAAM,CAC7E,CAAA;AAPU,QAAA,IAAI,QAOd;AAEI,MAAM,QAAQ,GAEjB,CAAC,KAAK,EAAE,EAAE,CAAC,0CAAK,KAAK,CAAC,QAAQ,CAAM,CAAA;AAF3B,QAAA,QAAQ,YAEmB;AAEjC,MAAM,IAAI,GAEb,CAAC,KAAK,EAAE,EAAE,CAAC,CACb,qCAAG,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,oBAAiB,MAAM,IAC1E,KAAK,CAAC,QAAQ,CACb,CACL,CAAA;AANY,QAAA,IAAI,QAMhB;AAEM,MAAM,UAAU,GAEnB,CAAC,KAAK,EAAE,EAAE;IACZ,OAAO,CACL,8CAAY,SAAS,EAAC,yDAAyD,IAC5E,KAAK,CAAC,QAAQ,CACJ,CACd,CAAA;AACH,CAAC,CAAA;AARY,QAAA,UAAU,cAQtB;AAEM,MAAM,IAAI,GAEb,CAAC,KAAK,EAAE,EAAE;IACZ,OAAO,CACL,wCAAM,SAAS,EAAC,4CAA4C,IACzD,KAAK,CAAC,QAAQ,CACV,CACR,CAAA;AACH,CAAC,CAAA;AARY,QAAA,IAAI,QAQhB;AAEM,MAAM,SAAS,GAAa,GAAG,EAAE,CAAC,yCAAM,CAAA;AAAlC,QAAA,SAAS,aAAyB;AAExC,MAAM,cAAc,GAAa,GAAG,EAAE,CAAC,yCAAM,CAAA;AAAvC,QAAA,cAAc,kBAAyB;AAE7C,MAAM,QAAQ,GAEjB,CAAC,KAAK,EAAE,EAAE,CAAC,0CAAK,KAAK,CAAC,QAAQ,CAAM,CAAA;AAF3B,QAAA,QAAQ,YAEmB;AAEjC,MAAM,MAAM,GAEf,CAAC,KAAK,EAAE,EAAE,CAAC,8CAAS,KAAK,CAAC,QAAQ,CAAU,CAAA;AAFnC,QAAA,MAAM,UAE6B;AAEzC,MAAM,aAAa,GAEtB,CAAC,KAAK,EAAE,EAAE,CAAC,yCAAI,KAAK,CAAC,QAAQ,CAAK,CAAA;AAFzB,QAAA,aAAa,iBAEY;AAE/B,MAAM,eAAe,GAExB,CAAC,KAAK,EAAE,EAAE,CAAC,2CAAM,KAAK,CAAC,QAAQ,CAAO,CAAA;AAF7B,QAAA,eAAe,mBAEc;AAEnC,MAAM,QAAQ,GAEjB,CAAC,KAAK,EAAE,EAAE,CAAC,0CAAK,KAAK,CAAC,QAAQ,CAAM,CAAA;AAF3B,QAAA,QAAQ,YAEmB;AAEjC,MAAM,WAAW,GAEpB,CAAC,KAAK,EAAE,EAAE,CAAC,CACb;IACE;QACE,sCAAI,OAAO,EAAE,IAAI,EAAE,SAAS,EAAC,kBAAkB,IAC5C,KAAK,CAAC,QAAQ,CACZ,CACF,CACC,CACT,CAAA;AAVY,QAAA,WAAW,eAUvB;AAEM,MAAM,YAAY,GAErB,CAAC,KAAK,EAAE,EAAE,CAAC,CACb,2CAAS,SAAS,EAAC,0FAA0F,IAC1G,KAAK,CAAC,QAAQ,CACP,CACX,CAAA;AANY,QAAA,YAAY,gBAMxB"}
|
|
@@ -54,6 +54,7 @@ const Card_1 = __importDefault(require("../content-tree/Card"));
|
|
|
54
54
|
const InfoBox_1 = __importDefault(require("../content-tree/InfoBox"));
|
|
55
55
|
const InfoPair_1 = __importDefault(require("../content-tree/InfoPair"));
|
|
56
56
|
const InNumbers_1 = __importStar(require("../content-tree/InNumbers"));
|
|
57
|
+
const FindOutMoreLink_1 = require("../FindOutMoreLink");
|
|
57
58
|
const BasicComponents_1 = require("./BasicComponents");
|
|
58
59
|
const context_1 = __importDefault(require("./context"));
|
|
59
60
|
exports.ComponentsContext = (0, react_1.createContext)({});
|
|
@@ -79,6 +80,7 @@ const componentMap = {
|
|
|
79
80
|
'layout-slot': Layout_1.LayoutSlot,
|
|
80
81
|
layout: Layout_1.Layout,
|
|
81
82
|
link: BasicComponents_1.Link,
|
|
83
|
+
'find-out-more-link': FindOutMoreLink_1.FindOutMoreLink,
|
|
82
84
|
'list-item': BasicComponents_1.ListItem,
|
|
83
85
|
list: BasicComponents_1.List,
|
|
84
86
|
paragraph: Paragraph_1.default,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/RichText/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAKc;AAGd,8EAAqD;AACrD,sFAA6D;AAC7D,qEAAkE;AAClE,mDAA2D;AAC3D,0EAAiD;AACjD,kEAAyC;AACzC,wEAA+C;AAC/C,sEAA6C;AAC7C,0EAAiD;AACjD,kEAAyC;AACzC,kEAAyC;AACzC,gEAAuC;AACvC,0EAAiD;AACjD,gFAAuD;AACvD,+DAA2D;AAC3D,mEAKuC;AACvC,8EAA0E;AAC1E,gFAAuD;AACvD,8FAAqE;AACrE,0EAAiD;AACjD,wEAA+C;AAC/C,2FAAkE;AAClE,gEAAuC;AACvC,sEAA6C;AAC7C,wEAA+C;AAC/C,uEAAiE;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/RichText/index.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@financial-times/cp-content-pipeline-ui",
|
|
3
|
-
"version": "11.
|
|
3
|
+
"version": "11.3.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -16,10 +16,10 @@
|
|
|
16
16
|
"@babel/preset-env": "^7.22.5",
|
|
17
17
|
"@babel/preset-react": "^7.22.5",
|
|
18
18
|
"@dotcom-tool-kit/npm": "^5.0.1",
|
|
19
|
-
"@financial-times/content-tree": "
|
|
20
|
-
"@financial-times/cp-content-pipeline-client": "^5.
|
|
21
|
-
"@financial-times/cp-content-pipeline-schema": "^4.
|
|
22
|
-
"@financial-times/cp-content-pipeline-styles": "^4.
|
|
19
|
+
"@financial-times/content-tree": "0.6.0",
|
|
20
|
+
"@financial-times/cp-content-pipeline-client": "^5.2.0",
|
|
21
|
+
"@financial-times/cp-content-pipeline-schema": "^4.3.0",
|
|
22
|
+
"@financial-times/cp-content-pipeline-styles": "^4.8.0",
|
|
23
23
|
"@financial-times/n-scrollytelling-image": "^1.1.0",
|
|
24
24
|
"@financial-times/o-grid": "^6.1.8",
|
|
25
25
|
"@financial-times/o-share": "^11.0.0",
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import type { ContentTree } from '@financial-times/content-tree'
|
|
3
|
+
import { ContentProps } from '../types'
|
|
4
|
+
|
|
5
|
+
export const FindOutMoreLink: React.FC<
|
|
6
|
+
React.PropsWithChildren<ContentProps<ContentTree.FindOutMoreLink>>
|
|
7
|
+
> = (props) => (
|
|
8
|
+
<a
|
|
9
|
+
href={props.content.url}
|
|
10
|
+
data-trackable="find-out-more-link"
|
|
11
|
+
className="cp-find-out-more-link"
|
|
12
|
+
>
|
|
13
|
+
{props.children}
|
|
14
|
+
</a>
|
|
15
|
+
)
|
|
@@ -176,12 +176,14 @@ const LiveBlogPost: React.FC<LiveBlogPostProps> = ({
|
|
|
176
176
|
) : (
|
|
177
177
|
''
|
|
178
178
|
)}
|
|
179
|
-
|
|
180
|
-
<
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
179
|
+
{!isPinned && (
|
|
180
|
+
<span>
|
|
181
|
+
<Timestamp
|
|
182
|
+
publishedTimestamp={publishedDate || publishedTimestamp}
|
|
183
|
+
textCase="sentence"
|
|
184
|
+
/>
|
|
185
|
+
</span>
|
|
186
|
+
)}
|
|
185
187
|
</div>
|
|
186
188
|
<div className="x-live-blog-post__byline">
|
|
187
189
|
<Byline structuredContent={byline} showEditedBy={false} />
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
2
|
import { render, fireEvent, act } from '@testing-library/react'
|
|
3
3
|
import ShareLinkButton from '../ShareLinkButton'
|
|
4
|
+
import { LiveBlogPost } from '../index'
|
|
4
5
|
|
|
5
6
|
const mockClipboardWrite = jest.fn(() => Promise.resolve())
|
|
6
7
|
Object.defineProperty(navigator, 'clipboard', {
|
|
@@ -87,3 +88,59 @@ describe('Share Link button', () => {
|
|
|
87
88
|
expect(container.querySelector('[data-tooltip="hide"]')).toBeTruthy()
|
|
88
89
|
})
|
|
89
90
|
})
|
|
91
|
+
|
|
92
|
+
describe('LiveBlogPost meta container', () => {
|
|
93
|
+
const defaultProps = {
|
|
94
|
+
id: '00000000-0000-0000-0000-000000000000',
|
|
95
|
+
postId: '00000000-0000-0000-0000-000000000000',
|
|
96
|
+
title: 'Sample Live Blog Post',
|
|
97
|
+
content: 'This is a sample live blog post.',
|
|
98
|
+
bodyHTML: '<p>This is a sample live blog post.</p>',
|
|
99
|
+
body: {},
|
|
100
|
+
publishedTimestamp: '2024-06-01T12:00:00Z',
|
|
101
|
+
publishedDate: '2024-06-01T12:00:00Z',
|
|
102
|
+
isPinned: true,
|
|
103
|
+
articleUrl: 'https://ft.com/content/00000000-0000-0000-0000-000000000000',
|
|
104
|
+
showShareButtons: false,
|
|
105
|
+
showShareLinkButton: false,
|
|
106
|
+
byline: { tree: {} },
|
|
107
|
+
ad: null,
|
|
108
|
+
indicators: {},
|
|
109
|
+
authors: [],
|
|
110
|
+
}
|
|
111
|
+
it('should hide the timestamp on pinned posts', () => {
|
|
112
|
+
const { container } = render(
|
|
113
|
+
<LiveBlogPost {...defaultProps} isPinned={true} />
|
|
114
|
+
)
|
|
115
|
+
expect(
|
|
116
|
+
container.querySelector('.x-live-blog-post__timestamp-container')
|
|
117
|
+
).toBeFalsy()
|
|
118
|
+
})
|
|
119
|
+
|
|
120
|
+
it('should show the timestamp on non-pinned posts', () => {
|
|
121
|
+
const { container } = render(
|
|
122
|
+
<LiveBlogPost {...defaultProps} isPinned={false} />
|
|
123
|
+
)
|
|
124
|
+
expect(
|
|
125
|
+
container.querySelector('.x-live-blog-post__timestamp-container')
|
|
126
|
+
).toBeTruthy()
|
|
127
|
+
})
|
|
128
|
+
|
|
129
|
+
it("should render the editor's pick label when the post is pinned", () => {
|
|
130
|
+
const { container } = render(
|
|
131
|
+
<LiveBlogPost {...defaultProps} isPinned={true} />
|
|
132
|
+
)
|
|
133
|
+
expect(
|
|
134
|
+
container.querySelector('.x-live-blog-post__label')?.textContent
|
|
135
|
+
).toBe("Editor's pick")
|
|
136
|
+
})
|
|
137
|
+
|
|
138
|
+
it("should not render the editor's pick label when the post is not pinned", () => {
|
|
139
|
+
const { container } = render(
|
|
140
|
+
<LiveBlogPost {...defaultProps} isPinned={false} />
|
|
141
|
+
)
|
|
142
|
+
expect(
|
|
143
|
+
container.querySelector('.x-live-blog-post__label')?.textContent
|
|
144
|
+
).not.toBe("Editor's pick")
|
|
145
|
+
})
|
|
146
|
+
})
|
|
@@ -19,12 +19,7 @@ export const ListItem: React.FC<
|
|
|
19
19
|
export const Link: React.FC<
|
|
20
20
|
React.PropsWithChildren<ContentProps<ContentTree.Link>>
|
|
21
21
|
> = (props) => (
|
|
22
|
-
<a
|
|
23
|
-
href={props.content.url}
|
|
24
|
-
title={props.content.title}
|
|
25
|
-
className={props.content.styleType}
|
|
26
|
-
data-trackable="link"
|
|
27
|
-
>
|
|
22
|
+
<a href={props.content.url} title={props.content.title} data-trackable="link">
|
|
28
23
|
{props.children}
|
|
29
24
|
</a>
|
|
30
25
|
)
|
|
@@ -37,6 +37,7 @@ import Card from '../content-tree/Card'
|
|
|
37
37
|
import InfoBox from '../content-tree/InfoBox'
|
|
38
38
|
import InfoPair from '../content-tree/InfoPair'
|
|
39
39
|
import InNumbers, { Definition } from '../content-tree/InNumbers'
|
|
40
|
+
import { FindOutMoreLink } from '../FindOutMoreLink'
|
|
40
41
|
|
|
41
42
|
import {
|
|
42
43
|
List,
|
|
@@ -128,6 +129,7 @@ const componentMap: RichTextComponentMapRecord = {
|
|
|
128
129
|
'layout-slot': LayoutSlot,
|
|
129
130
|
layout: Layout,
|
|
130
131
|
link: Link,
|
|
132
|
+
'find-out-more-link': FindOutMoreLink,
|
|
131
133
|
'list-item': ListItem,
|
|
132
134
|
list: List,
|
|
133
135
|
paragraph: Paragraph,
|