@financial-times/cp-content-pipeline-ui 9.12.0 → 9.13.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 +31 -0
- package/lib/components/ContentLayout/index.d.ts +24 -0
- package/lib/components/ContentLayout/index.js +34 -0
- package/lib/components/ContentLayout/index.js.map +1 -0
- package/lib/components/ContentLayout/test/index.spec.d.ts +1 -0
- package/lib/components/ContentLayout/test/index.spec.js +57 -0
- package/lib/components/ContentLayout/test/index.spec.js.map +1 -0
- package/lib/components/Topper/index.js +1 -1
- package/lib/components/Topper/index.js.map +1 -1
- package/lib/components/content-tree/Clip/components/index.d.ts +0 -2
- package/lib/components/content-tree/Clip/components/index.js +1 -5
- package/lib/components/content-tree/Clip/components/index.js.map +1 -1
- package/lib/components/content-tree/Clip/template/component.d.ts +1 -1
- package/lib/components/content-tree/Clip/template/component.js +3 -3
- package/lib/components/content-tree/Clip/template/component.js.map +1 -1
- package/lib/components/content-tree/Clip/test/snapshot.spec.js +26 -0
- package/lib/components/content-tree/Clip/test/snapshot.spec.js.map +1 -1
- package/lib/main.scss +6 -0
- package/package.json +4 -4
- package/src/components/ContentLayout/index.tsx +91 -0
- package/src/components/ContentLayout/test/__snapshots__/index.spec.tsx.snap +96 -0
- package/src/components/ContentLayout/test/index.spec.tsx +81 -0
- package/src/components/Topper/index.tsx +2 -1
- package/src/components/content-tree/Clip/components/index.tsx +0 -2
- package/src/components/content-tree/Clip/template/component.tsx +23 -24
- package/src/components/content-tree/Clip/test/__snapshots__/snapshot.spec.tsx.snap +277 -0
- package/src/components/content-tree/Clip/test/snapshot.spec.tsx +40 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/lib/components/content-tree/Clip/components/Container.d.ts +0 -6
- package/lib/components/content-tree/Clip/components/Container.js +0 -13
- package/lib/components/content-tree/Clip/components/Container.js.map +0 -1
- package/lib/components/content-tree/Clip/components/ContentLayout.d.ts +0 -6
- package/lib/components/content-tree/Clip/components/ContentLayout.js +0 -13
- package/lib/components/content-tree/Clip/components/ContentLayout.js.map +0 -1
- package/src/components/content-tree/Clip/components/Container.tsx +0 -32
- package/src/components/content-tree/Clip/components/ContentLayout.tsx +0 -18
package/CHANGELOG.md
CHANGED
|
@@ -574,6 +574,37 @@
|
|
|
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
|
+
## [9.13.0](https://github.com/Financial-Times/cp-content-pipeline/compare/cp-content-pipeline-ui-v9.12.1...cp-content-pipeline-ui-v9.13.0) (2025-12-11)
|
|
578
|
+
|
|
579
|
+
|
|
580
|
+
### Features
|
|
581
|
+
|
|
582
|
+
* anchor links in clips ([f753082](https://github.com/Financial-Times/cp-content-pipeline/commit/f753082b61b1e5aa989cd1db901546eeee71fe83))
|
|
583
|
+
* ci-3111 media queries on clips sources ([856bd45](https://github.com/Financial-Times/cp-content-pipeline/commit/856bd457ba6dc56f292c6a31e0edfe3f29b4a904))
|
|
584
|
+
* content layout ui component as wrapper for body-tree ui components ([becfee2](https://github.com/Financial-Times/cp-content-pipeline/commit/becfee26199bc6fd666c46b5ebb2353bdd7da630))
|
|
585
|
+
|
|
586
|
+
|
|
587
|
+
### Bug Fixes
|
|
588
|
+
|
|
589
|
+
* avoid fetching teaser data from RecommendedList resolver ([54bc53f](https://github.com/Financial-Times/cp-content-pipeline/commit/54bc53f9a40446667a9f93b85d710cd6a943157d))
|
|
590
|
+
* ensure headshot only for one columnist ([63b1f54](https://github.com/Financial-Times/cp-content-pipeline/commit/63b1f54008b5019863508cef224e14ab67429695))
|
|
591
|
+
* **ui:** mark Tool Kit plugin as a dev dependency ([53299d4](https://github.com/Financial-Times/cp-content-pipeline/commit/53299d46826aafb1884651441ae98caa63950ef2))
|
|
592
|
+
|
|
593
|
+
|
|
594
|
+
### Dependencies
|
|
595
|
+
|
|
596
|
+
* The following workspace dependencies were updated
|
|
597
|
+
* devDependencies
|
|
598
|
+
* @financial-times/cp-content-pipeline-client bumped from ^4.20.1 to ^4.20.2
|
|
599
|
+
* @financial-times/cp-content-pipeline-schema bumped from ^3.20.0 to ^3.21.0
|
|
600
|
+
|
|
601
|
+
## [9.12.1](https://github.com/Financial-Times/cp-content-pipeline/compare/cp-content-pipeline-ui-v9.12.0...cp-content-pipeline-ui-v9.12.1) (2025-12-09)
|
|
602
|
+
|
|
603
|
+
|
|
604
|
+
### Bug Fixes
|
|
605
|
+
|
|
606
|
+
* ensure headshot only for one columnist ([63b1f54](https://github.com/Financial-Times/cp-content-pipeline/commit/63b1f54008b5019863508cef224e14ab67429695))
|
|
607
|
+
|
|
577
608
|
## [9.12.0](https://github.com/Financial-Times/cp-content-pipeline/compare/cp-content-pipeline-ui-v9.11.0...cp-content-pipeline-ui-v9.12.0) (2025-11-21)
|
|
578
609
|
|
|
579
610
|
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* The available layout widths for the Layout component.
|
|
4
|
+
*
|
|
5
|
+
* Available options:
|
|
6
|
+
* - `in-line` - [Default] 7 columns (700 pixels)
|
|
7
|
+
* - `full-width` - Legacy alias for `in-line`
|
|
8
|
+
* - `mid-grid` - 9 columns (900 pixels)
|
|
9
|
+
* - `full-grid` - 12 columns of the grid (1200 pixels)
|
|
10
|
+
*
|
|
11
|
+
* @todo Existing layouts not currently supported by this component. To be implemented in the future:
|
|
12
|
+
* @todo `inset-left` - 5 columns (up to 500 pixels), medium screens and above: 3 columns (300 pixels), float left
|
|
13
|
+
* @todo `inset-right` - 5 columns (up to 500 pixels), medium screens and above: 3 columns (300 pixels), float right
|
|
14
|
+
* @todo `full-bleed` - Edge to edge of the viewport, no padding
|
|
15
|
+
* @todo The terminology in Spark doesn't align with our terminology. For instance, Editorial uses `full-width` that we map to `full-grid`. We should likely move towards an ubiquitous language prioritising the Editorial one.
|
|
16
|
+
*/
|
|
17
|
+
type LayoutWidth = 'in-line' | 'mid-grid' | 'full-grid';
|
|
18
|
+
interface ContentLayoutProps {
|
|
19
|
+
dataLayout: LayoutWidth;
|
|
20
|
+
dataComponent?: string;
|
|
21
|
+
className?: string;
|
|
22
|
+
}
|
|
23
|
+
export declare const ContentLayout: React.FC<React.PropsWithChildren<ContentLayoutProps>>;
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,34 @@
|
|
|
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.ContentLayout = void 0;
|
|
7
|
+
const react_1 = __importDefault(require("react"));
|
|
8
|
+
const classnames_1 = __importDefault(require("classnames"));
|
|
9
|
+
/*
|
|
10
|
+
* @description OverflowingLayout component prevent clashes with ads on the RHR (Righthand-rail) and share bar
|
|
11
|
+
* via the usage of data-layout-width='full-grid'
|
|
12
|
+
* See related code here: https://github.com/Financial-Times/next-article/blob/5766d82de6125ffc99fa6e3bc132311b3434f8f0/client/components/share/main.js#L8
|
|
13
|
+
*/
|
|
14
|
+
const OverflowingLayout = ({ children, }) => (react_1.default.createElement("div", { className: "n-content-layout", "data-layout-width": "full-grid" }, children));
|
|
15
|
+
/*
|
|
16
|
+
* @description ContentLayout component is used to fulfill the legacy usage of n-layout.
|
|
17
|
+
* @param dataLayout - The layout type of the content (e.g., 'full-grid', 'mid-grid', etc.).
|
|
18
|
+
* @param dataComponent - The component type used as data-component attribute for client-side targeting.
|
|
19
|
+
*/
|
|
20
|
+
const ContentLayout = ({ dataLayout = 'in-line', children, dataComponent = '', className = '', }) => {
|
|
21
|
+
const ContainerClassNames = (0, classnames_1.default)('n-content-layout__container', className);
|
|
22
|
+
if (dataLayout === 'full-grid') {
|
|
23
|
+
return (react_1.default.createElement(OverflowingLayout, null,
|
|
24
|
+
react_1.default.createElement("div", { className: ContainerClassNames, "data-component": dataComponent }, children)));
|
|
25
|
+
}
|
|
26
|
+
if (dataLayout === 'mid-grid') {
|
|
27
|
+
return (react_1.default.createElement(OverflowingLayout, null,
|
|
28
|
+
react_1.default.createElement("div", { className: ContainerClassNames, "data-component": dataComponent },
|
|
29
|
+
react_1.default.createElement("div", { "data-o-grid-colspan": "12 S12 M12 L10 XL10", className: "n-content-layout__container--mid-grid" }, children))));
|
|
30
|
+
}
|
|
31
|
+
return (react_1.default.createElement("div", { className: "n-content-layout__container--in-line", "data-component": dataComponent }, children));
|
|
32
|
+
};
|
|
33
|
+
exports.ContentLayout = ContentLayout;
|
|
34
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/ContentLayout/index.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAAyB;AACzB,4DAAmC;AAyBnC;;;;GAIG;AACH,MAAM,iBAAiB,GAA4C,CAAC,EAClE,QAAQ,GACT,EAAE,EAAE,CAAC,CACJ,uCAAK,SAAS,EAAC,kBAAkB,uBAAmB,WAAW,IAC5D,QAAQ,CACL,CACP,CAAA;AAED;;;;GAIG;AACI,MAAM,aAAa,GAEtB,CAAC,EACH,UAAU,GAAG,SAAS,EACtB,QAAQ,EACR,aAAa,GAAG,EAAE,EAClB,SAAS,GAAG,EAAE,GACf,EAAE,EAAE;IACH,MAAM,mBAAmB,GAAG,IAAA,oBAAU,EACpC,6BAA6B,EAC7B,SAAS,CACV,CAAA;IAED,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;QAC/B,OAAO,CACL,8BAAC,iBAAiB;YAChB,uCAAK,SAAS,EAAE,mBAAmB,oBAAkB,aAAa,IAC/D,QAAQ,CACL,CACY,CACrB,CAAA;IACH,CAAC;IAED,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QAC9B,OAAO,CACL,8BAAC,iBAAiB;YAChB,uCAAK,SAAS,EAAE,mBAAmB,oBAAkB,aAAa;gBAChE,8DACsB,qBAAqB,EACzC,SAAS,EAAC,uCAAuC,IAEhD,QAAQ,CACL,CACF,CACY,CACrB,CAAA;IACH,CAAC;IAED,OAAO,CACL,uCACE,SAAS,EAAC,sCAAsC,oBAChC,aAAa,IAE5B,QAAQ,CACL,CACP,CAAA;AACH,CAAC,CAAA;AA9CY,QAAA,aAAa,iBA8CzB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,57 @@
|
|
|
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
|
+
const react_1 = __importDefault(require("react"));
|
|
7
|
+
const react_test_renderer_1 = __importDefault(require("react-test-renderer"));
|
|
8
|
+
const index_1 = require("../index");
|
|
9
|
+
describe('ContentLayout', () => {
|
|
10
|
+
it('renders full-grid layout with container correctly', () => {
|
|
11
|
+
const tree = react_test_renderer_1.default
|
|
12
|
+
.create(react_1.default.createElement(index_1.ContentLayout, { dataLayout: "full-grid", dataComponent: "clip-set" },
|
|
13
|
+
react_1.default.createElement("div", null, "Test content")))
|
|
14
|
+
.toJSON();
|
|
15
|
+
expect(tree).toMatchSnapshot();
|
|
16
|
+
});
|
|
17
|
+
it('renders mid-grid layout with container correctly', () => {
|
|
18
|
+
const tree = react_test_renderer_1.default
|
|
19
|
+
.create(react_1.default.createElement(index_1.ContentLayout, { dataLayout: "mid-grid", dataComponent: "clip-set" },
|
|
20
|
+
react_1.default.createElement("div", null, "Test content")))
|
|
21
|
+
.toJSON();
|
|
22
|
+
expect(tree).toMatchSnapshot();
|
|
23
|
+
});
|
|
24
|
+
it('renders in-line layout with container correctly', () => {
|
|
25
|
+
const tree = react_test_renderer_1.default
|
|
26
|
+
.create(react_1.default.createElement(index_1.ContentLayout, { dataLayout: "in-line", dataComponent: "clip-set" },
|
|
27
|
+
react_1.default.createElement("div", null, "Test content")))
|
|
28
|
+
.toJSON();
|
|
29
|
+
expect(tree).toMatchSnapshot();
|
|
30
|
+
});
|
|
31
|
+
describe('Edge cases', () => {
|
|
32
|
+
it('handles empty children', () => {
|
|
33
|
+
const tree = react_test_renderer_1.default
|
|
34
|
+
.create(react_1.default.createElement(index_1.ContentLayout, { dataLayout: "full-grid", dataComponent: "clip-set" },
|
|
35
|
+
react_1.default.createElement("div", null)))
|
|
36
|
+
.toJSON();
|
|
37
|
+
expect(tree).toMatchSnapshot();
|
|
38
|
+
});
|
|
39
|
+
it('handles null children', () => {
|
|
40
|
+
const tree = react_test_renderer_1.default
|
|
41
|
+
.create(react_1.default.createElement(index_1.ContentLayout, { dataLayout: "full-grid", dataComponent: "clip-set" },
|
|
42
|
+
react_1.default.createElement("div", null, null)))
|
|
43
|
+
.toJSON();
|
|
44
|
+
expect(tree).toMatchSnapshot();
|
|
45
|
+
});
|
|
46
|
+
it('handles conditional children', () => {
|
|
47
|
+
const showContent = true;
|
|
48
|
+
const tree = react_test_renderer_1.default
|
|
49
|
+
.create(react_1.default.createElement(index_1.ContentLayout, { dataLayout: "full-grid", dataComponent: "clip-set" },
|
|
50
|
+
react_1.default.createElement("div", null, showContent && react_1.default.createElement("div", null, "Conditional content")),
|
|
51
|
+
react_1.default.createElement("div", null, !showContent && react_1.default.createElement("div", null, "Alternative content"))))
|
|
52
|
+
.toJSON();
|
|
53
|
+
expect(tree).toMatchSnapshot();
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
//# sourceMappingURL=index.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.spec.js","sourceRoot":"","sources":["../../../../src/components/ContentLayout/test/index.spec.tsx"],"names":[],"mappings":";;;;;AAAA,kDAAyB;AACzB,8EAA0C;AAC1C,oCAAwC;AAExC,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,IAAI,GAAG,6BAAQ;aAClB,MAAM,CACL,8BAAC,qBAAa,IAAC,UAAU,EAAC,WAAW,EAAC,aAAa,EAAC,UAAU;YAC5D,0DAAuB,CACT,CACjB;aACA,MAAM,EAAE,CAAA;QAEX,MAAM,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAA;IAChC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,IAAI,GAAG,6BAAQ;aAClB,MAAM,CACL,8BAAC,qBAAa,IAAC,UAAU,EAAC,UAAU,EAAC,aAAa,EAAC,UAAU;YAC3D,0DAAuB,CACT,CACjB;aACA,MAAM,EAAE,CAAA;QAEX,MAAM,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAA;IAChC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,IAAI,GAAG,6BAAQ;aAClB,MAAM,CACL,8BAAC,qBAAa,IAAC,UAAU,EAAC,SAAS,EAAC,aAAa,EAAC,UAAU;YAC1D,0DAAuB,CACT,CACjB;aACA,MAAM,EAAE,CAAA;QAEX,MAAM,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAA;IAChC,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;QAC1B,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;YAChC,MAAM,IAAI,GAAG,6BAAQ;iBAClB,MAAM,CACL,8BAAC,qBAAa,IAAC,UAAU,EAAC,WAAW,EAAC,aAAa,EAAC,UAAU;gBAC5D,0CAAW,CACG,CACjB;iBACA,MAAM,EAAE,CAAA;YAEX,MAAM,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAA;QAChC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;YAC/B,MAAM,IAAI,GAAG,6BAAQ;iBAClB,MAAM,CACL,8BAAC,qBAAa,IAAC,UAAU,EAAC,WAAW,EAAC,aAAa,EAAC,UAAU;gBAC5D,2CAAM,IAAI,CAAO,CACH,CACjB;iBACA,MAAM,EAAE,CAAA;YAEX,MAAM,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAA;QAChC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACtC,MAAM,WAAW,GAAG,IAAI,CAAA;YACxB,MAAM,IAAI,GAAG,6BAAQ;iBAClB,MAAM,CACL,8BAAC,qBAAa,IAAC,UAAU,EAAC,WAAW,EAAC,aAAa,EAAC,UAAU;gBAC5D,2CAAM,WAAW,IAAI,iEAA8B,CAAO;gBAC1D,2CAAM,CAAC,WAAW,IAAI,iEAA8B,CAAO,CAC7C,CACjB;iBACA,MAAM,EAAE,CAAA;YAEX,MAAM,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAA;QAChC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -65,7 +65,7 @@ const Topper = ({ content, slot, followButtonSlot, showPremiumLabel = false, rea
|
|
|
65
65
|
const hasColumnists = 'columnists' in topper &&
|
|
66
66
|
!!topper.columnists &&
|
|
67
67
|
topper.columnists.length > 0;
|
|
68
|
-
const legacyHasColumnist = 'columnist' in topper &&
|
|
68
|
+
const legacyHasColumnist = 'columnist' in topper && topper.columnist && !hasColumnists; // @deprecated Replaced with usage of `columinists`
|
|
69
69
|
const hasOneColumnist = (hasColumnists && topper.columnists.length === 1) || legacyHasColumnist;
|
|
70
70
|
const oneColumnist = hasOneColumnist
|
|
71
71
|
? hasColumnists
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Topper/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAqD;AACrD,wDAA+B;AAC/B,kDAAyB;AACzB,0DAAiC;AACjC,oDAA2B;AAC3B,wDAA+B;AAC/B,2DAAkC;AAClC,8DAAqC;AACrC,4EAAmD;AAEnD,wEAA+C;AAC/C,4DAAmC;AAKnC,mFAA0D;AAU1D,MAAM,mBAAmB,GAGrB;IACF,oBAAoB,EAAE,CAAC,WAAW,EAAE,EAAE,CACpC,gCAAgC,WAAW,6EAA6E;IAC1H,yBAAyB,EAAE,CAAC,WAAW,EAAE,EAAE,CACzC,6CAA6C,WAAW,EAAE;IAC5D,kBAAkB,EAAE,CAAC,WAAW,EAAE,EAAE,CAClC,yGAAyG,WAAW,EAAE;IACxH,OAAO,EAAE,CAAC,WAAW,EAAE,EAAE,CACvB,6CAA6C,WAAW,iDAAiD;CAC5G,CAAA;AAED,MAAM,MAAM,GAA0B,CAAC,EACrC,OAAO,EACP,IAAI,EACJ,gBAAgB,EAChB,gBAAgB,GAAG,KAAK,EACxB,YAAY,GACb,EAAE,EAAE;IACH,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;IAE1B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,KAAK,SAAS,CAAA;IAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,KAAK,gBAAgB,CAAA;IACzD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,KAAK,iBAAiB,CAAA;IAC3D,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,KAAK,aAAa,CAAA;IACnD,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,KAAK,eAAe,CAAA;IACvD,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,KAAK,eAAe,CAAA;IACvD,MAAM,UAAU,GACd,MAAM,CAAC,UAAU,KAAK,oBAAoB,IAAI,CAAC,CAAC,MAAM,CAAC,YAAY,CAAA;IACrE,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,KAAK,OAAO,CAAA;IAC9C,MAAM,gBAAgB,GAAG,MAAM,CAAC,UAAU,KAAK,sBAAsB,CAAA;IACrE,MAAM,SAAS,GAAG,QAAQ,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,CAAA;IACrD,MAAM,cAAc,GAAG,aAAa,IAAI,MAAM,IAAI,MAAM,CAAC,WAAW,CAAA;IACpE,MAAM,SAAS,GAAG,QAAQ,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,CAAA;IACrD,MAAM,WAAW,GAAG,UAAU,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAA;IAC3D,MAAM,aAAa,GACjB,YAAY,IAAI,MAAM;QACtB,CAAC,CAAC,MAAM,CAAC,UAAU;QACnB,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAA;IAC9B,MAAM,kBAAkB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Topper/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,4 @@ export { Caption } from './Caption';
|
|
|
3
3
|
export { VideoInfoBox } from './VideoInfoBox';
|
|
4
4
|
export { ClosedCaptions } from './ClosedCaptions';
|
|
5
5
|
export { VideoDescription } from './VideoDescription';
|
|
6
|
-
export { Container } from './Container';
|
|
7
|
-
export { ContentLayout } from './ContentLayout';
|
|
8
6
|
export { ClipTag } from './ClipTag';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ClipTag = exports.
|
|
3
|
+
exports.ClipTag = exports.VideoDescription = exports.ClosedCaptions = exports.VideoInfoBox = exports.Caption = exports.Credit = void 0;
|
|
4
4
|
var Credit_1 = require("./Credit");
|
|
5
5
|
Object.defineProperty(exports, "Credit", { enumerable: true, get: function () { return Credit_1.Credit; } });
|
|
6
6
|
var Caption_1 = require("./Caption");
|
|
@@ -11,10 +11,6 @@ var ClosedCaptions_1 = require("./ClosedCaptions");
|
|
|
11
11
|
Object.defineProperty(exports, "ClosedCaptions", { enumerable: true, get: function () { return ClosedCaptions_1.ClosedCaptions; } });
|
|
12
12
|
var VideoDescription_1 = require("./VideoDescription");
|
|
13
13
|
Object.defineProperty(exports, "VideoDescription", { enumerable: true, get: function () { return VideoDescription_1.VideoDescription; } });
|
|
14
|
-
var Container_1 = require("./Container");
|
|
15
|
-
Object.defineProperty(exports, "Container", { enumerable: true, get: function () { return Container_1.Container; } });
|
|
16
|
-
var ContentLayout_1 = require("./ContentLayout");
|
|
17
|
-
Object.defineProperty(exports, "ContentLayout", { enumerable: true, get: function () { return ContentLayout_1.ContentLayout; } });
|
|
18
14
|
var ClipTag_1 = require("./ClipTag");
|
|
19
15
|
Object.defineProperty(exports, "ClipTag", { enumerable: true, get: function () { return ClipTag_1.ClipTag; } });
|
|
20
16
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/components/content-tree/Clip/components/index.tsx"],"names":[],"mappings":";;;AAAA,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,+CAA6C;AAApC,4GAAA,YAAY,OAAA;AACrB,mDAAiD;AAAxC,gHAAA,cAAc,OAAA;AACvB,uDAAqD;AAA5C,oHAAA,gBAAgB,OAAA;AACzB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/components/content-tree/Clip/components/index.tsx"],"names":[],"mappings":";;;AAAA,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,+CAA6C;AAApC,4GAAA,YAAY,OAAA;AACrB,mDAAiD;AAAxC,gHAAA,cAAc,OAAA;AACvB,uDAAqD;AAA5C,oHAAA,gBAAgB,OAAA;AACzB,qCAAmC;AAA1B,kGAAA,OAAO,OAAA"}
|
|
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const react_1 = __importDefault(require("react"));
|
|
7
|
+
const ContentLayout_1 = require("../../../ContentLayout");
|
|
7
8
|
const components_1 = require("../components");
|
|
8
9
|
const ClipComponent = ({ content, preset = 'full-player', preload = 'auto', maxClipWidth = 0, }) => {
|
|
9
10
|
let poster = 'poster' in content ? content.poster : '';
|
|
@@ -38,9 +39,8 @@ const ClipComponent = ({ content, preset = 'full-player', preload = 'auto', maxC
|
|
|
38
39
|
if (preset === 'thumbnail') {
|
|
39
40
|
return (react_1.default.createElement(components_1.ClipTag, { id: id, clip: clip, poster: poster, accessibility: accessibility, autoplay: content.autoplay, loop: content.loop, noAudio: noAudio, muted: content.muted, preload: preload, noCaption: true, noDescription: true, noInfoBox: true, systemTitle: systemTitle, maxClipWidth: maxClipWidth }));
|
|
40
41
|
}
|
|
41
|
-
return (react_1.default.createElement(
|
|
42
|
-
react_1.default.createElement(components_1.
|
|
43
|
-
react_1.default.createElement(components_1.ClipTag, { id: id, dataLayout: content.dataLayout, description: content.description ?? '', poster: posterAttribute, autoplay: content.autoplay, noAudio: noAudio, loop: content.loop, muted: content.muted, clip: clip, credits: content.credits ?? '', caption: content.caption ?? '', systemTitle: systemTitle, accessibility: accessibility, preload: preload, dataTrackable: "next-article-cp-clip", maxClipWidth: maxClipWidth, fragmentIdentifier: content.fragmentIdentifier ?? '' }))));
|
|
42
|
+
return (react_1.default.createElement(ContentLayout_1.ContentLayout, { dataLayout: content.dataLayout, dataComponent: "clip-set" },
|
|
43
|
+
react_1.default.createElement(components_1.ClipTag, { id: id, dataLayout: content.dataLayout, description: content.description ?? '', poster: posterAttribute, autoplay: content.autoplay, noAudio: noAudio, loop: content.loop, muted: content.muted, clip: clip, credits: content.credits ?? '', caption: content.caption ?? '', systemTitle: systemTitle, accessibility: accessibility, preload: preload, dataTrackable: "next-article-cp-clip", maxClipWidth: maxClipWidth, fragmentIdentifier: content.fragmentIdentifier ?? '' })));
|
|
44
44
|
};
|
|
45
45
|
exports.default = ClipComponent;
|
|
46
46
|
//# sourceMappingURL=component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../../src/components/content-tree/Clip/template/component.tsx"],"names":[],"mappings":";;;;;AAAA,kDAAyB;AACzB,
|
|
1
|
+
{"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../../src/components/content-tree/Clip/template/component.tsx"],"names":[],"mappings":"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"}
|
|
@@ -26,6 +26,32 @@ describe('Clip Snapshot', () => {
|
|
|
26
26
|
describe('component rendered on server', () => {
|
|
27
27
|
const url = 'localhost:8080/fakevideo.mpg';
|
|
28
28
|
const poster = 'localhost:8080/fakeposter.jpg';
|
|
29
|
+
describe('ContentLayout integration tests', () => {
|
|
30
|
+
it('in-line render - should not wrap in ContentLayout div', () => {
|
|
31
|
+
const tree = react_test_renderer_1.default
|
|
32
|
+
.create(react_1.default.createElement(index_1.default, { content: { url, dataLayout: 'in-line' } }))
|
|
33
|
+
.toJSON();
|
|
34
|
+
expect(formatString(tree)).toMatchSnapshot();
|
|
35
|
+
});
|
|
36
|
+
it('full-grid default render - should wrap in ContentLayout with proper classes', () => {
|
|
37
|
+
const tree = react_test_renderer_1.default
|
|
38
|
+
.create(react_1.default.createElement(index_1.default, { content: { url, dataLayout: 'full-grid' } }))
|
|
39
|
+
.toJSON();
|
|
40
|
+
expect(formatString(tree)).toMatchSnapshot();
|
|
41
|
+
});
|
|
42
|
+
it('mid-grid default render - should wrap in ContentLayout with nested Container structure', () => {
|
|
43
|
+
const tree = react_test_renderer_1.default
|
|
44
|
+
.create(react_1.default.createElement(index_1.default, { content: { url, dataLayout: 'mid-grid' } }))
|
|
45
|
+
.toJSON();
|
|
46
|
+
expect(formatString(tree)).toMatchSnapshot();
|
|
47
|
+
});
|
|
48
|
+
it('edge case: custom dataLayout value should wrap in ContentLayout', () => {
|
|
49
|
+
const tree = react_test_renderer_1.default
|
|
50
|
+
.create(react_1.default.createElement(index_1.default, { content: { url, dataLayout: 'custom-layout' } }))
|
|
51
|
+
.toJSON();
|
|
52
|
+
expect(formatString(tree)).toMatchSnapshot();
|
|
53
|
+
});
|
|
54
|
+
});
|
|
29
55
|
it('in-line render', () => {
|
|
30
56
|
const tree = react_test_renderer_1.default
|
|
31
57
|
.create(react_1.default.createElement(index_1.default, { content: { url, dataLayout: 'in-line' } }))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot.spec.js","sourceRoot":"","sources":["../../../../../src/components/content-tree/Clip/test/snapshot.spec.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"snapshot.spec.js","sourceRoot":"","sources":["../../../../../src/components/content-tree/Clip/test/snapshot.spec.tsx"],"names":[],"mappings":"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"}
|
package/lib/main.scss
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
@import '@financial-times/cp-content-pipeline-styles/main';
|
|
2
|
+
@import '../src/components/BackToTopButton/client/main.scss';
|
|
3
|
+
@import '../src/components/Expander/client/main.scss';
|
|
4
|
+
@import '../src/components/Topper/client/main.scss';
|
|
5
|
+
@import '../src/components/content-tree/Clip/client/main.scss';
|
|
6
|
+
@import '../src/components/content-tree/Flourish/client/main.scss';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@financial-times/cp-content-pipeline-ui",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.13.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -15,9 +15,10 @@
|
|
|
15
15
|
"devDependencies": {
|
|
16
16
|
"@babel/preset-env": "^7.22.5",
|
|
17
17
|
"@babel/preset-react": "^7.22.5",
|
|
18
|
+
"@dotcom-tool-kit/npm": "^5.0.0",
|
|
18
19
|
"@financial-times/content-tree": "github:financial-times/content-tree#3f77ec4",
|
|
19
|
-
"@financial-times/cp-content-pipeline-client": "^4.20.
|
|
20
|
-
"@financial-times/cp-content-pipeline-schema": "^3.
|
|
20
|
+
"@financial-times/cp-content-pipeline-client": "^4.20.2",
|
|
21
|
+
"@financial-times/cp-content-pipeline-schema": "^3.21.0",
|
|
21
22
|
"@financial-times/cp-content-pipeline-styles": "^4.5.0",
|
|
22
23
|
"@financial-times/n-scrollytelling-image": "^1.1.0",
|
|
23
24
|
"@financial-times/o-grid": "^6.1.8",
|
|
@@ -50,7 +51,6 @@
|
|
|
50
51
|
"webpack": "^5.88.1"
|
|
51
52
|
},
|
|
52
53
|
"dependencies": {
|
|
53
|
-
"@dotcom-tool-kit/npm": "^4.2.11",
|
|
54
54
|
"@financial-times/ft-date-format": "^2.1.0",
|
|
55
55
|
"@financial-times/o-expander": "^7.0.1",
|
|
56
56
|
"@financial-times/o-labels": "^7.1.2",
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import classnames from 'classnames'
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* The available layout widths for the Layout component.
|
|
6
|
+
*
|
|
7
|
+
* Available options:
|
|
8
|
+
* - `in-line` - [Default] 7 columns (700 pixels)
|
|
9
|
+
* - `full-width` - Legacy alias for `in-line`
|
|
10
|
+
* - `mid-grid` - 9 columns (900 pixels)
|
|
11
|
+
* - `full-grid` - 12 columns of the grid (1200 pixels)
|
|
12
|
+
*
|
|
13
|
+
* @todo Existing layouts not currently supported by this component. To be implemented in the future:
|
|
14
|
+
* @todo `inset-left` - 5 columns (up to 500 pixels), medium screens and above: 3 columns (300 pixels), float left
|
|
15
|
+
* @todo `inset-right` - 5 columns (up to 500 pixels), medium screens and above: 3 columns (300 pixels), float right
|
|
16
|
+
* @todo `full-bleed` - Edge to edge of the viewport, no padding
|
|
17
|
+
* @todo The terminology in Spark doesn't align with our terminology. For instance, Editorial uses `full-width` that we map to `full-grid`. We should likely move towards an ubiquitous language prioritising the Editorial one.
|
|
18
|
+
*/
|
|
19
|
+
type LayoutWidth = 'in-line' | 'mid-grid' | 'full-grid'
|
|
20
|
+
|
|
21
|
+
interface ContentLayoutProps {
|
|
22
|
+
dataLayout: LayoutWidth
|
|
23
|
+
dataComponent?: string
|
|
24
|
+
className?: string
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/*
|
|
28
|
+
* @description OverflowingLayout component prevent clashes with ads on the RHR (Righthand-rail) and share bar
|
|
29
|
+
* via the usage of data-layout-width='full-grid'
|
|
30
|
+
* See related code here: https://github.com/Financial-Times/next-article/blob/5766d82de6125ffc99fa6e3bc132311b3434f8f0/client/components/share/main.js#L8
|
|
31
|
+
*/
|
|
32
|
+
const OverflowingLayout: React.FC<{ children: React.ReactNode }> = ({
|
|
33
|
+
children,
|
|
34
|
+
}) => (
|
|
35
|
+
<div className="n-content-layout" data-layout-width="full-grid">
|
|
36
|
+
{children}
|
|
37
|
+
</div>
|
|
38
|
+
)
|
|
39
|
+
|
|
40
|
+
/*
|
|
41
|
+
* @description ContentLayout component is used to fulfill the legacy usage of n-layout.
|
|
42
|
+
* @param dataLayout - The layout type of the content (e.g., 'full-grid', 'mid-grid', etc.).
|
|
43
|
+
* @param dataComponent - The component type used as data-component attribute for client-side targeting.
|
|
44
|
+
*/
|
|
45
|
+
export const ContentLayout: React.FC<
|
|
46
|
+
React.PropsWithChildren<ContentLayoutProps>
|
|
47
|
+
> = ({
|
|
48
|
+
dataLayout = 'in-line',
|
|
49
|
+
children,
|
|
50
|
+
dataComponent = '',
|
|
51
|
+
className = '',
|
|
52
|
+
}) => {
|
|
53
|
+
const ContainerClassNames = classnames(
|
|
54
|
+
'n-content-layout__container',
|
|
55
|
+
className
|
|
56
|
+
)
|
|
57
|
+
|
|
58
|
+
if (dataLayout === 'full-grid') {
|
|
59
|
+
return (
|
|
60
|
+
<OverflowingLayout>
|
|
61
|
+
<div className={ContainerClassNames} data-component={dataComponent}>
|
|
62
|
+
{children}
|
|
63
|
+
</div>
|
|
64
|
+
</OverflowingLayout>
|
|
65
|
+
)
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
if (dataLayout === 'mid-grid') {
|
|
69
|
+
return (
|
|
70
|
+
<OverflowingLayout>
|
|
71
|
+
<div className={ContainerClassNames} data-component={dataComponent}>
|
|
72
|
+
<div
|
|
73
|
+
data-o-grid-colspan="12 S12 M12 L10 XL10"
|
|
74
|
+
className="n-content-layout__container--mid-grid"
|
|
75
|
+
>
|
|
76
|
+
{children}
|
|
77
|
+
</div>
|
|
78
|
+
</div>
|
|
79
|
+
</OverflowingLayout>
|
|
80
|
+
)
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
return (
|
|
84
|
+
<div
|
|
85
|
+
className="n-content-layout__container--in-line"
|
|
86
|
+
data-component={dataComponent}
|
|
87
|
+
>
|
|
88
|
+
{children}
|
|
89
|
+
</div>
|
|
90
|
+
)
|
|
91
|
+
}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
+
|
|
3
|
+
exports[`ContentLayout Edge cases handles conditional children 1`] = `
|
|
4
|
+
<div
|
|
5
|
+
className="n-content-layout"
|
|
6
|
+
data-layout-width="full-grid"
|
|
7
|
+
>
|
|
8
|
+
<div
|
|
9
|
+
className="n-content-layout__container"
|
|
10
|
+
data-component="clip-set"
|
|
11
|
+
>
|
|
12
|
+
<div>
|
|
13
|
+
<div>
|
|
14
|
+
Conditional content
|
|
15
|
+
</div>
|
|
16
|
+
</div>
|
|
17
|
+
<div />
|
|
18
|
+
</div>
|
|
19
|
+
</div>
|
|
20
|
+
`;
|
|
21
|
+
|
|
22
|
+
exports[`ContentLayout Edge cases handles empty children 1`] = `
|
|
23
|
+
<div
|
|
24
|
+
className="n-content-layout"
|
|
25
|
+
data-layout-width="full-grid"
|
|
26
|
+
>
|
|
27
|
+
<div
|
|
28
|
+
className="n-content-layout__container"
|
|
29
|
+
data-component="clip-set"
|
|
30
|
+
>
|
|
31
|
+
<div />
|
|
32
|
+
</div>
|
|
33
|
+
</div>
|
|
34
|
+
`;
|
|
35
|
+
|
|
36
|
+
exports[`ContentLayout Edge cases handles null children 1`] = `
|
|
37
|
+
<div
|
|
38
|
+
className="n-content-layout"
|
|
39
|
+
data-layout-width="full-grid"
|
|
40
|
+
>
|
|
41
|
+
<div
|
|
42
|
+
className="n-content-layout__container"
|
|
43
|
+
data-component="clip-set"
|
|
44
|
+
>
|
|
45
|
+
<div />
|
|
46
|
+
</div>
|
|
47
|
+
</div>
|
|
48
|
+
`;
|
|
49
|
+
|
|
50
|
+
exports[`ContentLayout renders full-grid layout with container correctly 1`] = `
|
|
51
|
+
<div
|
|
52
|
+
className="n-content-layout"
|
|
53
|
+
data-layout-width="full-grid"
|
|
54
|
+
>
|
|
55
|
+
<div
|
|
56
|
+
className="n-content-layout__container"
|
|
57
|
+
data-component="clip-set"
|
|
58
|
+
>
|
|
59
|
+
<div>
|
|
60
|
+
Test content
|
|
61
|
+
</div>
|
|
62
|
+
</div>
|
|
63
|
+
</div>
|
|
64
|
+
`;
|
|
65
|
+
|
|
66
|
+
exports[`ContentLayout renders in-line layout with container correctly 1`] = `
|
|
67
|
+
<div
|
|
68
|
+
className="n-content-layout__container--in-line"
|
|
69
|
+
data-component="clip-set"
|
|
70
|
+
>
|
|
71
|
+
<div>
|
|
72
|
+
Test content
|
|
73
|
+
</div>
|
|
74
|
+
</div>
|
|
75
|
+
`;
|
|
76
|
+
|
|
77
|
+
exports[`ContentLayout renders mid-grid layout with container correctly 1`] = `
|
|
78
|
+
<div
|
|
79
|
+
className="n-content-layout"
|
|
80
|
+
data-layout-width="full-grid"
|
|
81
|
+
>
|
|
82
|
+
<div
|
|
83
|
+
className="n-content-layout__container"
|
|
84
|
+
data-component="clip-set"
|
|
85
|
+
>
|
|
86
|
+
<div
|
|
87
|
+
className="n-content-layout__container--mid-grid"
|
|
88
|
+
data-o-grid-colspan="12 S12 M12 L10 XL10"
|
|
89
|
+
>
|
|
90
|
+
<div>
|
|
91
|
+
Test content
|
|
92
|
+
</div>
|
|
93
|
+
</div>
|
|
94
|
+
</div>
|
|
95
|
+
</div>
|
|
96
|
+
`;
|