@twreporter/react-article-components 1.7.3-rc.3 → 1.7.3-rc.4

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 CHANGED
@@ -3,6 +3,19 @@
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.7.3-rc.4](https://github.com/twreporter/twreporter-npm-packages/compare/@twreporter/react-article-components@1.7.3-rc.3...@twreporter/react-article-components@1.7.3-rc.4) (2023-02-13)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * abstract padding ([bdb104b](https://github.com/twreporter/twreporter-npm-packages/commit/bdb104ba374dd4210d3517c95edd5050274509f1))
12
+ * leverage theme constants to core ([a3d1604](https://github.com/twreporter/twreporter-npm-packages/commit/a3d1604286cb31881837661b2d85911ae0389eb9))
13
+ * replace color constant ([c4b4dcd](https://github.com/twreporter/twreporter-npm-packages/commit/c4b4dcdd3190105c13007201451f910053cf92f0))
14
+
15
+
16
+
17
+
18
+
6
19
  ## [1.7.3-rc.3](https://github.com/twreporter/twreporter-npm-packages/compare/@twreporter/react-article-components@1.7.3-rc.2...@twreporter/react-article-components@1.7.3-rc.3) (2023-02-10)
7
20
 
8
21
 
@@ -9,6 +9,8 @@ exports["default"] = void 0;
9
9
 
10
10
  var _react = _interopRequireWildcard(require("react"));
11
11
 
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+
12
14
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
13
15
 
14
16
  var _get = _interopRequireDefault(require("lodash/get"));
@@ -21,18 +23,20 @@ var _dynamicComponentsContext = _interopRequireDefault(require("../../contexts/d
21
23
 
22
24
  var _aside = _interopRequireDefault(require("../../constants/prop-types/aside"));
23
25
 
24
- var _theme = _interopRequireDefault(require("../../constants/theme"));
25
-
26
- var _color = _interopRequireDefault(require("../../constants/color"));
27
-
28
26
  var _typography = _interopRequireDefault(require("../../constants/typography"));
29
27
 
30
28
  var _category = require("../../constants/category");
31
29
 
32
30
  var _mediaQuery = _interopRequireDefault(require("@twreporter/core/lib/utils/media-query"));
33
31
 
32
+ var _theme = require("@twreporter/core/lib/constants/theme");
33
+
34
+ var _color = require("@twreporter/core/lib/constants/color");
35
+
34
36
  var _featureFlag = require("@twreporter/core/lib/constants/feature-flag");
35
37
 
38
+ var _link = _interopRequireDefault(require("@twreporter/react-components/lib/text/link"));
39
+
36
40
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
37
41
 
38
42
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
@@ -72,10 +76,10 @@ var _ = {
72
76
  };
73
77
 
74
78
  var createLine = function createLine(topOrBottom, themeName) {
75
- var borderColor = _color["default"].gray50;
79
+ var borderColor = _color.COLOR_ARTICLE.gray50;
76
80
 
77
- if (themeName === _theme["default"].article.v2.photo) {
78
- borderColor = _color["default"].gray10;
81
+ if (themeName === _theme.ARTICLE_THEME.v2.photo) {
82
+ borderColor = _color.COLOR_ARTICLE.gray10;
79
83
  }
80
84
 
81
85
  return (0, _styledComponents.css)(["position:relative;border-", ":0.5px solid ", ";padding-", ":10px;&::after{content:'';border-right:0.5px solid ", ";width:1px;height:12px;", ":0;right:0;position:absolute;}"], topOrBottom, borderColor, topOrBottom, borderColor, topOrBottom);
@@ -126,7 +130,7 @@ var DateSection = /*#__PURE__*/_styledComponents["default"].div.withConfig({
126
130
  componentId: "sc-1c3910m-6"
127
131
  })(["", " font-size:14px;color:", ";margin-left:5px;margin-top:15px;&::before{content:'\u520A\u51FA\u65E5\u671F';margin-right:10px;}"], function (props) {
128
132
  return createLine('top', props.theme.name);
129
- }, _color["default"].gray70);
133
+ }, _color.COLOR_ARTICLE.gray70);
130
134
 
131
135
  var AuthorSection = /*#__PURE__*/_styledComponents["default"].div.withConfig({
132
136
  displayName: "metadata__AuthorSection",
@@ -141,7 +145,7 @@ var AuthorRow = /*#__PURE__*/_styledComponents["default"].div.withConfig({
141
145
  var AuthorJobTitle = /*#__PURE__*/_styledComponents["default"].div.withConfig({
142
146
  displayName: "metadata__AuthorJobTitle",
143
147
  componentId: "sc-1c3910m-9"
144
- })(["font-size:14px;color:", ";margin-left:5px;padding-top:2px;line-height:1;flex-shrink:0;"], _color["default"].gray80);
148
+ })(["font-size:14px;color:", ";margin-left:5px;padding-top:2px;line-height:1;flex-shrink:0;"], _color.COLOR_ARTICLE.gray80);
145
149
 
146
150
  var AuthorNames = /*#__PURE__*/_styledComponents["default"].div.withConfig({
147
151
  displayName: "metadata__AuthorNames",
@@ -156,7 +160,7 @@ var AuthorName = /*#__PURE__*/_styledComponents["default"].div.withConfig({
156
160
  var RawAuthorText = /*#__PURE__*/_styledComponents["default"].div.withConfig({
157
161
  displayName: "metadata__RawAuthorText",
158
162
  componentId: "sc-1c3910m-12"
159
- })(["font-size:14px;color:", ";padding-left:5px;"], _color["default"].gray80);
163
+ })(["font-size:14px;color:", ";padding-left:5px;"], _color.COLOR_ARTICLE.gray80);
160
164
 
161
165
  var AngledSeparationLine = /*#__PURE__*/_styledComponents["default"].div.withConfig({
162
166
  displayName: "metadata__AngledSeparationLine",
@@ -184,18 +188,50 @@ var MetadataContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig
184
188
 
185
189
  function getMetadataContainerStyles(themeName) {
186
190
  switch (themeName) {
187
- case _theme["default"].article.v2.photo:
188
- return (0, _styledComponents.css)(["", ",", "{color:", ";&:hover{border-color:", ";}}", "{border-color:", ";}", "{border-color:", ";color:", ";&:hover{color:", ";border-color:", ";}}"], CategoryText, AuthorName, _color["default"].milkTea, _color["default"].milkTea, AngledSeparationLine, _color["default"].brown, TagButton, _color["default"].gray80, _color["default"].gray80, _color["default"].white, _color["default"].white);
191
+ case _theme.ARTICLE_THEME.v2.photo:
192
+ return (0, _styledComponents.css)(["", ",", "{color:", ";&:hover{border-color:", ";}}", "{border-color:", ";}", "{border-color:", ";color:", ";&:hover{color:", ";border-color:", ";}}"], CategoryText, AuthorName, _color.COLOR_ARTICLE.milkTea, _color.COLOR_ARTICLE.milkTea, AngledSeparationLine, _color.COLOR_ARTICLE.brown, TagButton, _color.COLOR_ARTICLE.gray80, _color.COLOR_ARTICLE.gray80, _color.COLOR_ARTICLE.white, _color.COLOR_ARTICLE.white);
189
193
 
190
- case _theme["default"].article.v2.pink:
191
- return (0, _styledComponents.css)(["", ",", "{color:", ";&:hover{border-color:", ";}}", "{border-color:", ";}", "{border-color:", ";color:", ";&:hover{background-color:", ";}}"], CategoryText, AuthorName, _color["default"].blue, _color["default"].blue, AngledSeparationLine, _color["default"].pink, TagButton, _color["default"].gray80, _color["default"].gray80, _color["default"].white);
194
+ case _theme.ARTICLE_THEME.v2.pink:
195
+ return (0, _styledComponents.css)(["", ",", "{color:", ";&:hover{border-color:", ";}}", "{border-color:", ";}", "{border-color:", ";color:", ";&:hover{background-color:", ";}}"], CategoryText, AuthorName, _color.COLOR_ARTICLE.blue, _color.COLOR_ARTICLE.blue, AngledSeparationLine, _color.COLOR_ARTICLE.pink, TagButton, _color.COLOR_ARTICLE.gray80, _color.COLOR_ARTICLE.gray80, _color.COLOR_ARTICLE.white);
192
196
 
193
- case _theme["default"].article.v2["default"]:
197
+ case _theme.ARTICLE_THEME.v2["default"]:
194
198
  default:
195
- return (0, _styledComponents.css)(["", ",", "{color:", ";&:hover{border-color:", ";}}", "{border-color:", ";}", "{border-color:", ";color:", ";&:hover{background-color:", ";}}"], CategoryText, AuthorName, _color["default"].brown, _color["default"].brown, AngledSeparationLine, _color["default"].milkTea, TagButton, _color["default"].gray80, _color["default"].gray80, _color["default"].white);
199
+ return (0, _styledComponents.css)(["", ",", "{color:", ";&:hover{border-color:", ";}}", "{border-color:", ";}", "{border-color:", ";color:", ";&:hover{background-color:", ";}}"], CategoryText, AuthorName, _color.COLOR_ARTICLE.brown, _color.COLOR_ARTICLE.brown, AngledSeparationLine, _color.COLOR_ARTICLE.milkTea, TagButton, _color.COLOR_ARTICLE.gray80, _color.COLOR_ARTICLE.gray80, _color.COLOR_ARTICLE.white);
196
200
  }
197
201
  }
198
202
 
203
+ var CategorySet = function CategorySet(props) {
204
+ var themeContext = (0, _react.useContext)(_styledComponents.ThemeContext);
205
+
206
+ var categorySetJSX = _.map(props.categorySet, function (set, index) {
207
+ var _set$category, _set$category2, _set$subcategory, _set$subcategory2, _set$category3;
208
+
209
+ var genLink = function genLink(path, name) {
210
+ var isCategory = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
211
+ return /*#__PURE__*/_react["default"].createElement(CategorySetFlex, {
212
+ isCategory: isCategory,
213
+ isTop: index === 0
214
+ }, /*#__PURE__*/_react["default"].createElement(_link["default"], {
215
+ path: path,
216
+ name: name,
217
+ theme: themeContext.name,
218
+ isBold: isCategory,
219
+ padding: '0 0 0 5px'
220
+ }));
221
+ };
222
+
223
+ return /*#__PURE__*/_react["default"].createElement(LinkContainer, {
224
+ key: "categorySet-".concat(index)
225
+ }, genLink("/categories/".concat(set === null || set === void 0 ? void 0 : (_set$category = set.category) === null || _set$category === void 0 ? void 0 : _set$category.id), set === null || set === void 0 ? void 0 : (_set$category2 = set.category) === null || _set$category2 === void 0 ? void 0 : _set$category2.name, true), set !== null && set !== void 0 && (_set$subcategory = set.subcategory) !== null && _set$subcategory !== void 0 && _set$subcategory.id && set !== null && set !== void 0 && (_set$subcategory2 = set.subcategory) !== null && _set$subcategory2 !== void 0 && _set$subcategory2.name ? genLink("/tags/".concat(set.subcategory.id), set.subcategory.name) : genLink("/categories/".concat(set === null || set === void 0 ? void 0 : (_set$category3 = set.category) === null || _set$category3 === void 0 ? void 0 : _set$category3.id), '全部'));
226
+ });
227
+
228
+ return /*#__PURE__*/_react["default"].createElement(CategorySetFlexBox, null, categorySetJSX);
229
+ };
230
+
231
+ CategorySet.propTypes = {
232
+ categorySet: _propTypes["default"].array
233
+ };
234
+
199
235
  var Metadata = /*#__PURE__*/function (_PureComponent) {
200
236
  _inherits(Metadata, _PureComponent);
201
237
 
@@ -237,36 +273,6 @@ var Metadata = /*#__PURE__*/function (_PureComponent) {
237
273
  return categoriesJSX;
238
274
  }));
239
275
  }
240
- }, {
241
- key: "renderCategorySetSection",
242
- value: function renderCategorySetSection() {
243
- var categorySet = this.props.categorySet;
244
- return /*#__PURE__*/_react["default"].createElement(CategorySetFlexBox, null, /*#__PURE__*/_react["default"].createElement(_dynamicComponentsContext["default"].Consumer, null, function (components) {
245
- var categorySetJSX = _.map(categorySet, function (set, index) {
246
- var _set$category, _set$category2, _set$subcategory, _set$subcategory2, _set$category3;
247
-
248
- var genLink = function genLink(path, name) {
249
- var isCategory = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
250
- return /*#__PURE__*/_react["default"].createElement(CategorySetFlex, {
251
- isCategory: isCategory,
252
- isTop: index === 0
253
- }, path && name && /*#__PURE__*/_react["default"].createElement(components.Link, {
254
- to: path
255
- }, /*#__PURE__*/_react["default"].createElement(CategoryText, {
256
- style: {
257
- fontWeight: isCategory ? 'bold' : 'normal'
258
- }
259
- }, name)));
260
- };
261
-
262
- return /*#__PURE__*/_react["default"].createElement(LinkContainer, {
263
- key: "categorySet-".concat(index)
264
- }, genLink("/categories/".concat(set === null || set === void 0 ? void 0 : (_set$category = set.category) === null || _set$category === void 0 ? void 0 : _set$category.id), set === null || set === void 0 ? void 0 : (_set$category2 = set.category) === null || _set$category2 === void 0 ? void 0 : _set$category2.name, true), set !== null && set !== void 0 && (_set$subcategory = set.subcategory) !== null && _set$subcategory !== void 0 && _set$subcategory.id && set !== null && set !== void 0 && (_set$subcategory2 = set.subcategory) !== null && _set$subcategory2 !== void 0 && _set$subcategory2.name ? genLink("/tags/".concat(set.subcategory.id), set.subcategory.name) : genLink("/categories/".concat(set === null || set === void 0 ? void 0 : (_set$category3 = set.category) === null || _set$category3 === void 0 ? void 0 : _set$category3.id), '全部'));
265
- });
266
-
267
- return categorySetJSX;
268
- }));
269
- }
270
276
  }, {
271
277
  key: "renderTagsSection",
272
278
  value: function renderTagsSection() {
@@ -312,12 +318,17 @@ var Metadata = /*#__PURE__*/function (_PureComponent) {
312
318
  }, {
313
319
  key: "render",
314
320
  value: function render() {
315
- var date = this.props.date ? new Date(this.props.date).toLocaleString('zh-hant', {
321
+ var _this$props2 = this.props,
322
+ categorySet = _this$props2.categorySet,
323
+ date = _this$props2.date;
324
+ var dateStr = date ? new Date(date).toLocaleString('zh-hant', {
316
325
  year: 'numeric',
317
326
  month: 'numeric',
318
327
  day: 'numeric'
319
328
  }) : '';
320
- return /*#__PURE__*/_react["default"].createElement(MetadataContainer, null, _featureFlag.ENABLE_NEW_INFO_ARCH && this.renderCategorySetSection(), !_featureFlag.ENABLE_NEW_INFO_ARCH && this.renderCategorySection(), /*#__PURE__*/_react["default"].createElement(DateSection, null, date), this.renderAuthorsSection(), this.renderTagsSection());
329
+ return /*#__PURE__*/_react["default"].createElement(MetadataContainer, null, _featureFlag.ENABLE_NEW_INFO_ARCH && /*#__PURE__*/_react["default"].createElement(CategorySet, {
330
+ categorySet: categorySet
331
+ }), !_featureFlag.ENABLE_NEW_INFO_ARCH && this.renderCategorySection(), /*#__PURE__*/_react["default"].createElement(DateSection, null, dateStr), this.renderAuthorsSection(), this.renderTagsSection());
321
332
  }
322
333
  }]);
323
334
 
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
+ // TODO: remove this constant & use @twreporter/core/lib/constants/color
7
8
  var _default = {
8
9
  transparent: 'rgba(0, 0, 0, 0)',
9
10
  white: '#ffffff',
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
+ // TODO: remove this constant & use @twreporter/core/lib/constants/theme
7
8
  var _default = {
8
9
  article: {
9
10
  v2: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@twreporter/react-article-components",
3
- "version": "1.7.3-rc.3",
3
+ "version": "1.7.3-rc.4",
4
4
  "description": "The Reporter react article components, which are used in article page",
5
5
  "main": "lib/components/article-page.js",
6
6
  "repository": "https://github.com/twreporter/twreporter-npm-packages.git",
@@ -24,10 +24,10 @@
24
24
  "webpack-dev-server": "^3.7.2"
25
25
  },
26
26
  "dependencies": {
27
- "@twreporter/core": "^1.8.2-rc.0",
28
- "@twreporter/react-components": "^8.15.2-rc.2",
29
- "@twreporter/redux": "^7.5.0-rc.1",
30
- "@twreporter/universal-header": "^2.4.2-rc.2",
27
+ "@twreporter/core": "^1.8.2-rc.1",
28
+ "@twreporter/react-components": "^8.16.0-rc.0",
29
+ "@twreporter/redux": "^7.5.0-rc.2",
30
+ "@twreporter/universal-header": "^2.4.2-rc.3",
31
31
  "howler": "^2.2.3",
32
32
  "lodash": "^4.17.11",
33
33
  "memoize-one": "^5.0.5",
@@ -40,5 +40,5 @@
40
40
  "files": [
41
41
  "lib"
42
42
  ],
43
- "gitHead": "c29f1ae7320dc7670c07f02bfd7c2bc9fd56f406"
43
+ "gitHead": "1ebf9eeda3976aad554b576bf974c2718752ef4e"
44
44
  }