@times-components/article-main-standard 3.59.28 → 3.60.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 +27 -0
- package/babel.config.js +13 -2
- package/dist/article-header/article-header-standfirst.js +45 -1
- package/dist/article-header/article-header.js +76 -1
- package/dist/article-header-label/article-header-label.base.js +39 -1
- package/dist/article-header-label/article-header-label.js +18 -1
- package/dist/article-main-standard.js +131 -1
- package/dist/article-meta/article-meta-prop-types.js +35 -1
- package/dist/article-meta/article-meta.js +78 -1
- package/dist/article-prop-types/article-page-prop-types.js +42 -1
- package/dist/article-prop-types/article-prop-types.js +34 -1
- package/dist/article-topics/index.js +45 -1
- package/dist/styles/article-body/index.js +37 -1
- package/dist/styles/article-body/responsive.js +77 -1
- package/dist/styles/article-body/shared.js +78 -1
- package/dist/styles/article-header/index.js +23 -1
- package/dist/styles/article-header/responsive.js +26 -1
- package/dist/styles/article-header/shared.js +50 -1
- package/dist/styles/article-meta/index.js +21 -1
- package/dist/styles/article-meta/shared.js +55 -1
- package/dist/styles/article-topics/index.js +21 -1
- package/dist/styles/article-topics/shared.js +20 -1
- package/dist/styles/responsive.js +60 -1
- package/dist/styles/shared.js +17 -1
- package/package.json +28 -35
- package/rnw.js +1 -1
- package/tsconfig.jest.json +10 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,33 @@
|
|
|
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
|
+
# [3.60.0](https://github.com/newsuk/times-components/compare/@times-components/article-main-standard@3.59.30...@times-components/article-main-standard@3.60.0) (2022-08-18)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* **TDP-1712:** remove react-native foreverrrrr ([#3064](https://github.com/newsuk/times-components/issues/3064)) ([2a20cb5](https://github.com/newsuk/times-components/commit/2a20cb5abc10a4e7ca2d62487967f8fcf4eccb62)), closes [#3037](https://github.com/newsuk/times-components/issues/3037) [#3045](https://github.com/newsuk/times-components/issues/3045) [#3050](https://github.com/newsuk/times-components/issues/3050) [#3056](https://github.com/newsuk/times-components/issues/3056) [#3057](https://github.com/newsuk/times-components/issues/3057) [#3066](https://github.com/newsuk/times-components/issues/3066) [#3065](https://github.com/newsuk/times-components/issues/3065) [#3037](https://github.com/newsuk/times-components/issues/3037) [#3045](https://github.com/newsuk/times-components/issues/3045) [#3045](https://github.com/newsuk/times-components/issues/3045) [#3056](https://github.com/newsuk/times-components/issues/3056) [#3066](https://github.com/newsuk/times-components/issues/3066) [#3069](https://github.com/newsuk/times-components/issues/3069) [#3068](https://github.com/newsuk/times-components/issues/3068) [#3070](https://github.com/newsuk/times-components/issues/3070) [#3072](https://github.com/newsuk/times-components/issues/3072) [#3073](https://github.com/newsuk/times-components/issues/3073) [#3071](https://github.com/newsuk/times-components/issues/3071) [#3074](https://github.com/newsuk/times-components/issues/3074) [#3076](https://github.com/newsuk/times-components/issues/3076) [#3079](https://github.com/newsuk/times-components/issues/3079) [#3078](https://github.com/newsuk/times-components/issues/3078) [#3083](https://github.com/newsuk/times-components/issues/3083) [#3087](https://github.com/newsuk/times-components/issues/3087) [#3091](https://github.com/newsuk/times-components/issues/3091) [#3096](https://github.com/newsuk/times-components/issues/3096) [#3102](https://github.com/newsuk/times-components/issues/3102) [#3105](https://github.com/newsuk/times-components/issues/3105) [#3108](https://github.com/newsuk/times-components/issues/3108) [#3111](https://github.com/newsuk/times-components/issues/3111) [#3112](https://github.com/newsuk/times-components/issues/3112) [#3113](https://github.com/newsuk/times-components/issues/3113) [#3114](https://github.com/newsuk/times-components/issues/3114) [#3120](https://github.com/newsuk/times-components/issues/3120) [#3119](https://github.com/newsuk/times-components/issues/3119) [#3112](https://github.com/newsuk/times-components/issues/3112) [#3126](https://github.com/newsuk/times-components/issues/3126) [#3112](https://github.com/newsuk/times-components/issues/3112) [#3126](https://github.com/newsuk/times-components/issues/3126) [#3127](https://github.com/newsuk/times-components/issues/3127) [#3116](https://github.com/newsuk/times-components/issues/3116) [#3128](https://github.com/newsuk/times-components/issues/3128) [#3132](https://github.com/newsuk/times-components/issues/3132) [#3133](https://github.com/newsuk/times-components/issues/3133)
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## [3.59.30](https://github.com/newsuk/times-components/compare/@times-components/article-main-standard@3.59.29...@times-components/article-main-standard@3.59.30) (2022-08-15)
|
|
18
|
+
|
|
19
|
+
**Note:** Version bump only for package @times-components/article-main-standard
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
## [3.59.29](https://github.com/newsuk/times-components/compare/@times-components/article-main-standard@3.59.28...@times-components/article-main-standard@3.59.29) (2022-08-12)
|
|
26
|
+
|
|
27
|
+
**Note:** Version bump only for package @times-components/article-main-standard
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
6
33
|
## [3.59.28](https://github.com/newsuk/times-components/compare/@times-components/article-main-standard@3.59.27...@times-components/article-main-standard@3.59.28) (2022-08-12)
|
|
7
34
|
|
|
8
35
|
**Note:** Version bump only for package @times-components/article-main-standard
|
package/babel.config.js
CHANGED
|
@@ -3,8 +3,19 @@ module.exports = api => {
|
|
|
3
3
|
return {
|
|
4
4
|
plugins: [
|
|
5
5
|
"babel-plugin-styled-components",
|
|
6
|
-
"@babel/plugin-
|
|
6
|
+
"@babel/plugin-proposal-export-default-from"
|
|
7
7
|
],
|
|
8
|
-
presets: [
|
|
8
|
+
presets: [
|
|
9
|
+
[
|
|
10
|
+
"@babel/preset-env",
|
|
11
|
+
{
|
|
12
|
+
targets: {
|
|
13
|
+
esmodules: true
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
],
|
|
17
|
+
"@babel/preset-react",
|
|
18
|
+
"@babel/preset-typescript"
|
|
19
|
+
]
|
|
9
20
|
};
|
|
10
21
|
};
|
|
@@ -1 +1,45 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
+
|
|
12
|
+
var _utils = require("@times-components/utils");
|
|
13
|
+
|
|
14
|
+
var _articleHeader = _interopRequireDefault(require("../styles/article-header"));
|
|
15
|
+
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
|
|
18
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
19
|
+
|
|
20
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
21
|
+
|
|
22
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
23
|
+
|
|
24
|
+
const HeaderStandfirst = _ref => {
|
|
25
|
+
let standfirst = _ref.standfirst;
|
|
26
|
+
if (!standfirst) return null;
|
|
27
|
+
|
|
28
|
+
const standFirstStyles = _objectSpread({}, _articleHeader.default.standFirst);
|
|
29
|
+
|
|
30
|
+
return /*#__PURE__*/_react.default.createElement(_utils.TcText, {
|
|
31
|
+
role: "heading",
|
|
32
|
+
"aria-level": "2",
|
|
33
|
+
style: (0, _utils.checkStylesForUnits)(standFirstStyles),
|
|
34
|
+
"data-testid": "standfirst"
|
|
35
|
+
}, standfirst);
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
HeaderStandfirst.propTypes = {
|
|
39
|
+
standfirst: _propTypes.default.string
|
|
40
|
+
};
|
|
41
|
+
HeaderStandfirst.defaultProps = {
|
|
42
|
+
standfirst: null
|
|
43
|
+
};
|
|
44
|
+
var _default = HeaderStandfirst;
|
|
45
|
+
exports.default = _default;
|
|
@@ -1 +1,76 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
+
|
|
12
|
+
var _utils = require("@times-components/utils");
|
|
13
|
+
|
|
14
|
+
var _tsComponents = require("@times-components/ts-components");
|
|
15
|
+
|
|
16
|
+
var _articleHeaderLabel = _interopRequireDefault(require("../article-header-label/article-header-label"));
|
|
17
|
+
|
|
18
|
+
var _articleHeaderStandfirst = _interopRequireDefault(require("./article-header-standfirst"));
|
|
19
|
+
|
|
20
|
+
var _articleHeader = _interopRequireDefault(require("../styles/article-header"));
|
|
21
|
+
|
|
22
|
+
var _responsive = require("../styles/article-header/responsive");
|
|
23
|
+
|
|
24
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
+
|
|
26
|
+
/* eslint-disable react/forbid-prop-types */
|
|
27
|
+
const ArticleHeader = _ref => {
|
|
28
|
+
let flags = _ref.flags,
|
|
29
|
+
hasVideo = _ref.hasVideo,
|
|
30
|
+
headline = _ref.headline,
|
|
31
|
+
label = _ref.label,
|
|
32
|
+
standfirst = _ref.standfirst,
|
|
33
|
+
style = _ref.style,
|
|
34
|
+
updatedTime = _ref.updatedTime;
|
|
35
|
+
return /*#__PURE__*/_react.default.createElement(_utils.TcView, {
|
|
36
|
+
style: style
|
|
37
|
+
}, /*#__PURE__*/_react.default.createElement(_articleHeaderLabel.default, {
|
|
38
|
+
isVideo: hasVideo,
|
|
39
|
+
label: label
|
|
40
|
+
}), /*#__PURE__*/_react.default.createElement(_responsive.HeadlineContainer, {
|
|
41
|
+
role: "heading",
|
|
42
|
+
"aria-level": "1",
|
|
43
|
+
styles: (0, _utils.checkStylesForUnits)(_articleHeader.default.articleHeadLineText)
|
|
44
|
+
}, headline), /*#__PURE__*/_react.default.createElement(_articleHeaderStandfirst.default, {
|
|
45
|
+
standfirst: standfirst
|
|
46
|
+
}), /*#__PURE__*/_react.default.createElement(_utils.TcView, {
|
|
47
|
+
style: _articleHeader.default.flags
|
|
48
|
+
}, /*#__PURE__*/_react.default.createElement(_tsComponents.UpdatedTimeProvider, {
|
|
49
|
+
updatedTime: updatedTime
|
|
50
|
+
}, /*#__PURE__*/_react.default.createElement(_tsComponents.ArticleFlags, {
|
|
51
|
+
flags: flags
|
|
52
|
+
}))));
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
ArticleHeader.propTypes = {
|
|
56
|
+
flags: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
57
|
+
expiryTime: _propTypes.default.string,
|
|
58
|
+
type: _propTypes.default.string
|
|
59
|
+
})),
|
|
60
|
+
hasVideo: _propTypes.default.bool,
|
|
61
|
+
headline: _propTypes.default.string.isRequired,
|
|
62
|
+
label: _propTypes.default.string,
|
|
63
|
+
standfirst: _propTypes.default.string,
|
|
64
|
+
style: _propTypes.default.object,
|
|
65
|
+
updatedTime: _propTypes.default.string
|
|
66
|
+
};
|
|
67
|
+
ArticleHeader.defaultProps = {
|
|
68
|
+
flags: [],
|
|
69
|
+
hasVideo: false,
|
|
70
|
+
label: null,
|
|
71
|
+
standfirst: null,
|
|
72
|
+
style: {},
|
|
73
|
+
updatedTime: null
|
|
74
|
+
};
|
|
75
|
+
var _default = ArticleHeader;
|
|
76
|
+
exports.default = _default;
|
|
@@ -1 +1,39 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _articleLabel = _interopRequireDefault(require("@times-components/article-label"));
|
|
11
|
+
|
|
12
|
+
var _context = _interopRequireDefault(require("@times-components/context"));
|
|
13
|
+
|
|
14
|
+
var _tsStyleguide = require("@times-components/ts-styleguide");
|
|
15
|
+
|
|
16
|
+
var _videoLabel = _interopRequireDefault(require("@times-components/video-label"));
|
|
17
|
+
|
|
18
|
+
var _articleHeader = _interopRequireDefault(require("../styles/article-header"));
|
|
19
|
+
|
|
20
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
|
+
|
|
22
|
+
var _default = render => _ref => {
|
|
23
|
+
let isVideo = _ref.isVideo,
|
|
24
|
+
label = _ref.label;
|
|
25
|
+
if (!isVideo && !label) return null;
|
|
26
|
+
const Label = isVideo ? _videoLabel.default : _articleLabel.default;
|
|
27
|
+
return render({
|
|
28
|
+
style: _articleHeader.default.articleLabel,
|
|
29
|
+
testID: "label"
|
|
30
|
+
}, /*#__PURE__*/_react.default.createElement(_context.default.Consumer, null, _ref2 => {
|
|
31
|
+
let sectionColour = _ref2.theme.sectionColour;
|
|
32
|
+
return /*#__PURE__*/_react.default.createElement(Label, {
|
|
33
|
+
color: sectionColour || _tsStyleguide.colours.section.default,
|
|
34
|
+
title: label
|
|
35
|
+
});
|
|
36
|
+
}));
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
exports.default = _default;
|
|
@@ -1 +1,18 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _articleHeaderLabel = _interopRequireDefault(require("./article-header-label.base"));
|
|
11
|
+
|
|
12
|
+
var _responsive = require("../styles/article-header/responsive");
|
|
13
|
+
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
+
|
|
16
|
+
var _default = (0, _articleHeaderLabel.default)((props, label) => /*#__PURE__*/_react.default.createElement(_responsive.LabelContainer, props, label));
|
|
17
|
+
|
|
18
|
+
exports.default = _default;
|
|
@@ -1 +1,131 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
|
|
10
|
+
var _articleSkeleton = _interopRequireDefault(require("@times-components/article-skeleton"));
|
|
11
|
+
|
|
12
|
+
var _utils = require("@times-components/utils");
|
|
13
|
+
|
|
14
|
+
var _caption = _interopRequireDefault(require("@times-components/caption"));
|
|
15
|
+
|
|
16
|
+
var _articleHeader = _interopRequireDefault(require("./article-header/article-header"));
|
|
17
|
+
|
|
18
|
+
var _articleMeta = _interopRequireDefault(require("./article-meta/article-meta"));
|
|
19
|
+
|
|
20
|
+
var _articleTopics = _interopRequireDefault(require("./article-topics"));
|
|
21
|
+
|
|
22
|
+
var _articlePropTypes = require("./article-prop-types/article-prop-types");
|
|
23
|
+
|
|
24
|
+
var _responsive = require("./styles/article-body/responsive");
|
|
25
|
+
|
|
26
|
+
var _responsive2 = require("./styles/responsive");
|
|
27
|
+
|
|
28
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
29
|
+
|
|
30
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
31
|
+
|
|
32
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
33
|
+
|
|
34
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
35
|
+
|
|
36
|
+
const renderCaption = _ref => {
|
|
37
|
+
let caption = _ref.caption;
|
|
38
|
+
return /*#__PURE__*/_react.default.createElement(_responsive.LeadAssetCaptionContainer, null, /*#__PURE__*/_react.default.createElement(_caption.default, caption));
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
class ArticlePage extends _react.Component {
|
|
42
|
+
constructor(props) {
|
|
43
|
+
super(props);
|
|
44
|
+
this.renderHeader = this.renderHeader.bind(this);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
renderHeader() {
|
|
48
|
+
const article = this.props.article;
|
|
49
|
+
const bylines = article.bylines,
|
|
50
|
+
hasVideo = article.hasVideo,
|
|
51
|
+
headline = article.headline,
|
|
52
|
+
expirableFlags = article.expirableFlags,
|
|
53
|
+
label = article.label,
|
|
54
|
+
publicationName = article.publicationName,
|
|
55
|
+
publishedTime = article.publishedTime,
|
|
56
|
+
shortHeadline = article.shortHeadline,
|
|
57
|
+
standfirst = article.standfirst,
|
|
58
|
+
topics = article.topics,
|
|
59
|
+
updatedTime = article.updatedTime;
|
|
60
|
+
const metaProps = {
|
|
61
|
+
bylines,
|
|
62
|
+
publicationName,
|
|
63
|
+
publishedTime
|
|
64
|
+
};
|
|
65
|
+
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(_responsive2.HeaderTopContainer, null, /*#__PURE__*/_react.default.createElement(_responsive2.HeaderContainer, null, /*#__PURE__*/_react.default.createElement(_articleHeader.default, {
|
|
66
|
+
flags: expirableFlags,
|
|
67
|
+
hasVideo: hasVideo,
|
|
68
|
+
headline: (0, _utils.getHeadline)(headline, shortHeadline),
|
|
69
|
+
label: label,
|
|
70
|
+
standfirst: standfirst,
|
|
71
|
+
updatedTime: updatedTime
|
|
72
|
+
})), /*#__PURE__*/_react.default.createElement(_responsive2.MetaContainer, null, /*#__PURE__*/_react.default.createElement(_articleMeta.default, metaProps), /*#__PURE__*/_react.default.createElement(_articleTopics.default, {
|
|
73
|
+
topics: topics
|
|
74
|
+
}))), /*#__PURE__*/_react.default.createElement(_responsive2.LeadAsset, _extends({}, (0, _utils.getLeadAsset)(article), {
|
|
75
|
+
renderCaption: renderCaption
|
|
76
|
+
})), /*#__PURE__*/_react.default.createElement(_articleMeta.default, _extends({}, metaProps, {
|
|
77
|
+
inline: true,
|
|
78
|
+
className: "inline-meta"
|
|
79
|
+
})));
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
render() {
|
|
83
|
+
const _this$props = this.props,
|
|
84
|
+
article = _this$props.article,
|
|
85
|
+
analyticsStream = _this$props.analyticsStream,
|
|
86
|
+
error = _this$props.error,
|
|
87
|
+
isLoading = _this$props.isLoading,
|
|
88
|
+
logoUrl = _this$props.logoUrl,
|
|
89
|
+
navigationMode = _this$props.navigationMode,
|
|
90
|
+
receiveChildList = _this$props.receiveChildList,
|
|
91
|
+
commentingConfig = _this$props.commentingConfig,
|
|
92
|
+
paidContentClassName = _this$props.paidContentClassName,
|
|
93
|
+
isPreview = _this$props.isPreview,
|
|
94
|
+
swgProductId = _this$props.swgProductId,
|
|
95
|
+
additionalRelatedArticlesFlag = _this$props.additionalRelatedArticlesFlag,
|
|
96
|
+
algoliaSearchKeys = _this$props.algoliaSearchKeys,
|
|
97
|
+
latestFromSectionFlag = _this$props.latestFromSectionFlag,
|
|
98
|
+
latestFromSection = _this$props.latestFromSection,
|
|
99
|
+
olympicsKeys = _this$props.olympicsKeys,
|
|
100
|
+
getFallbackThumbnailUrl169 = _this$props.getFallbackThumbnailUrl169;
|
|
101
|
+
|
|
102
|
+
if (error || isLoading) {
|
|
103
|
+
return null;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
return /*#__PURE__*/_react.default.createElement(_responsive2.ArticleMainStandardContainer, null, /*#__PURE__*/_react.default.createElement(_articleSkeleton.default, {
|
|
107
|
+
analyticsStream: analyticsStream,
|
|
108
|
+
data: article,
|
|
109
|
+
Header: this.renderHeader,
|
|
110
|
+
logoUrl: logoUrl,
|
|
111
|
+
getFallbackThumbnailUrl169: getFallbackThumbnailUrl169,
|
|
112
|
+
receiveChildList: receiveChildList,
|
|
113
|
+
navigationMode: navigationMode,
|
|
114
|
+
commentingConfig: commentingConfig,
|
|
115
|
+
paidContentClassName: paidContentClassName,
|
|
116
|
+
isPreview: isPreview,
|
|
117
|
+
swgProductId: swgProductId,
|
|
118
|
+
additionalRelatedArticlesFlag: additionalRelatedArticlesFlag,
|
|
119
|
+
algoliaSearchKeys: algoliaSearchKeys,
|
|
120
|
+
latestFromSectionFlag: latestFromSectionFlag,
|
|
121
|
+
latestFromSection: latestFromSection,
|
|
122
|
+
olympicsKeys: olympicsKeys
|
|
123
|
+
}));
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
ArticlePage.propTypes = _articlePropTypes.articlePropTypes;
|
|
129
|
+
ArticlePage.defaultProps = _articlePropTypes.articleDefaultProps;
|
|
130
|
+
var _default = ArticlePage;
|
|
131
|
+
exports.default = _default;
|
|
@@ -1 +1,35 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.defaultProps = exports.propTypes = void 0;
|
|
7
|
+
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
const TextNode = _propTypes.default.shape({
|
|
13
|
+
text: _propTypes.default.string
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
const childNode = {
|
|
17
|
+
attributes: _propTypes.default.object.isRequired,
|
|
18
|
+
name: _propTypes.default.string.isRequired
|
|
19
|
+
};
|
|
20
|
+
const nodeShape = {
|
|
21
|
+
children: _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.shape(childNode), TextNode])).isRequired
|
|
22
|
+
};
|
|
23
|
+
const propTypes = {
|
|
24
|
+
bylines: _propTypes.default.arrayOf(_propTypes.default.shape(nodeShape)),
|
|
25
|
+
onAuthorPress: _propTypes.default.func,
|
|
26
|
+
publicationName: _propTypes.default.string,
|
|
27
|
+
publishedTime: _propTypes.default.string
|
|
28
|
+
};
|
|
29
|
+
exports.propTypes = propTypes;
|
|
30
|
+
const defaultProps = {
|
|
31
|
+
bylines: [],
|
|
32
|
+
publicationName: null,
|
|
33
|
+
publishedTime: null
|
|
34
|
+
};
|
|
35
|
+
exports.defaultProps = defaultProps;
|
|
@@ -1 +1,78 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
+
|
|
12
|
+
var _utils = require("@times-components/utils");
|
|
13
|
+
|
|
14
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
15
|
+
|
|
16
|
+
var _tsStyleguide = require("@times-components/ts-styleguide");
|
|
17
|
+
|
|
18
|
+
var _articleSkeleton = require("@times-components/article-skeleton");
|
|
19
|
+
|
|
20
|
+
var _articleByline = require("@times-components/article-byline");
|
|
21
|
+
|
|
22
|
+
var _datePublication = _interopRequireDefault(require("@times-components/date-publication"));
|
|
23
|
+
|
|
24
|
+
var _articleMetaPropTypes = require("./article-meta-prop-types");
|
|
25
|
+
|
|
26
|
+
var _articleMeta = _interopRequireDefault(require("../styles/article-meta"));
|
|
27
|
+
|
|
28
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
29
|
+
|
|
30
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
31
|
+
|
|
32
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
33
|
+
|
|
34
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
35
|
+
|
|
36
|
+
const MetaTextElement = (0, _styledComponents.default)(_utils.TcText).withConfig({
|
|
37
|
+
displayName: "article-meta__MetaTextElement",
|
|
38
|
+
componentId: "sc-1iqkrjg-0"
|
|
39
|
+
})(["padding-top:", ";&:last-child{padding-bottom:", ";}@media (min-width:", "px){line-height:18px;padding-bottom:", ";}"], (0, _tsStyleguide.spacing)(2), (0, _tsStyleguide.spacing)(2), _tsStyleguide.breakpoints.wide, (0, _tsStyleguide.spacing)(2));
|
|
40
|
+
|
|
41
|
+
function ArticleMeta(_ref) {
|
|
42
|
+
let bylines = _ref.bylines,
|
|
43
|
+
publicationName = _ref.publicationName,
|
|
44
|
+
publishedTime = _ref.publishedTime,
|
|
45
|
+
onAuthorPress = _ref.onAuthorPress,
|
|
46
|
+
_ref$inline = _ref.inline,
|
|
47
|
+
inline = _ref$inline === void 0 ? false : _ref$inline,
|
|
48
|
+
_ref$className = _ref.className,
|
|
49
|
+
className = _ref$className === void 0 ? "" : _ref$className;
|
|
50
|
+
const bylineRow = (0, _articleByline.hasBylineData)(bylines) ? /*#__PURE__*/_react.default.createElement(MetaTextElement, null, /*#__PURE__*/_react.default.createElement(_utils.TcText, {
|
|
51
|
+
style: (0, _utils.checkStylesForUnits)(_articleMeta.default.byline)
|
|
52
|
+
}, /*#__PURE__*/_react.default.createElement(_articleByline.ArticleBylineWithLinks, {
|
|
53
|
+
ast: bylines,
|
|
54
|
+
onAuthorPress: onAuthorPress
|
|
55
|
+
}))) : null;
|
|
56
|
+
|
|
57
|
+
const publicationRow = /*#__PURE__*/_react.default.createElement(MetaTextElement, null, /*#__PURE__*/_react.default.createElement(_utils.TcText, {
|
|
58
|
+
style: (0, _utils.checkStylesForUnits)(_articleMeta.default.datePublication)
|
|
59
|
+
}, /*#__PURE__*/_react.default.createElement(_datePublication.default, {
|
|
60
|
+
date: publishedTime,
|
|
61
|
+
publication: publicationName
|
|
62
|
+
})));
|
|
63
|
+
|
|
64
|
+
const KeylineComponent = inline ? _articleSkeleton.ArticleKeylineItem : _articleSkeleton.KeylineItem;
|
|
65
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, inline ? null : /*#__PURE__*/_react.default.createElement(KeylineComponent, {
|
|
66
|
+
className: className
|
|
67
|
+
}, /*#__PURE__*/_react.default.createElement(_utils.TcView, null, bylineRow)), /*#__PURE__*/_react.default.createElement(KeylineComponent, {
|
|
68
|
+
className: className
|
|
69
|
+
}, /*#__PURE__*/_react.default.createElement(_utils.TcView, null, inline ? bylineRow : null, publicationRow)));
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
ArticleMeta.propTypes = _objectSpread(_objectSpread({}, _articleMetaPropTypes.propTypes), {}, {
|
|
73
|
+
inline: _propTypes.default.bool,
|
|
74
|
+
className: _propTypes.default.string
|
|
75
|
+
});
|
|
76
|
+
ArticleMeta.defaultProps = _articleMetaPropTypes.defaultProps;
|
|
77
|
+
var _default = ArticleMeta;
|
|
78
|
+
exports.default = _default;
|
|
@@ -1 +1,42 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.articlePageDefaultProps = exports.articlePagePropTypes = void 0;
|
|
7
|
+
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
+
|
|
10
|
+
var _articleHeader = _interopRequireDefault(require("../article-header/article-header"));
|
|
11
|
+
|
|
12
|
+
var _articleMeta = _interopRequireDefault(require("../article-meta/article-meta"));
|
|
13
|
+
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
+
|
|
16
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
17
|
+
|
|
18
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
19
|
+
|
|
20
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
21
|
+
|
|
22
|
+
const articlePagePropTypes = {
|
|
23
|
+
analyticsStream: _propTypes.default.func.isRequired,
|
|
24
|
+
article: _propTypes.default.shape(_objectSpread(_objectSpread({}, _articleHeader.default.propTypes), _articleMeta.default.propTypes)),
|
|
25
|
+
error: _propTypes.default.shape({
|
|
26
|
+
graphQLErrors: _propTypes.default.array,
|
|
27
|
+
message: _propTypes.default.string,
|
|
28
|
+
networkError: _propTypes.default.shape({
|
|
29
|
+
message: _propTypes.default.string
|
|
30
|
+
})
|
|
31
|
+
}),
|
|
32
|
+
isLoading: _propTypes.default.bool,
|
|
33
|
+
receiveChildList: _propTypes.default.func
|
|
34
|
+
};
|
|
35
|
+
exports.articlePagePropTypes = articlePagePropTypes;
|
|
36
|
+
const articlePageDefaultProps = {
|
|
37
|
+
article: null,
|
|
38
|
+
error: null,
|
|
39
|
+
isLoading: false,
|
|
40
|
+
receiveChildList: () => {}
|
|
41
|
+
};
|
|
42
|
+
exports.articlePageDefaultProps = articlePageDefaultProps;
|
|
@@ -1 +1,34 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.articleDefaultProps = exports.articlePropTypes = void 0;
|
|
7
|
+
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
+
|
|
10
|
+
var _articleHeader = _interopRequireDefault(require("../article-header/article-header"));
|
|
11
|
+
|
|
12
|
+
var _articleMeta = _interopRequireDefault(require("../article-meta/article-meta"));
|
|
13
|
+
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
+
|
|
16
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
17
|
+
|
|
18
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
19
|
+
|
|
20
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
21
|
+
|
|
22
|
+
const articlePropTypes = {
|
|
23
|
+
adConfig: _propTypes.default.shape({}).isRequired,
|
|
24
|
+
analyticsStream: _propTypes.default.func.isRequired,
|
|
25
|
+
data: _propTypes.default.shape(_objectSpread(_objectSpread({}, _articleHeader.default.propTypes), _articleMeta.default.propTypes)),
|
|
26
|
+
receiveChildList: _propTypes.default.func,
|
|
27
|
+
navigationMode: _propTypes.default.shape({}).isRequired
|
|
28
|
+
};
|
|
29
|
+
exports.articlePropTypes = articlePropTypes;
|
|
30
|
+
const articleDefaultProps = {
|
|
31
|
+
data: null,
|
|
32
|
+
receiveChildList: () => {}
|
|
33
|
+
};
|
|
34
|
+
exports.articleDefaultProps = articleDefaultProps;
|