@twreporter/react-article-components 1.6.0-rc.2 → 1.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,34 @@
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.6.1](https://github.com/twreporter/twreporter-npm-packages/compare/@twreporter/react-article-components@1.6.1-rc.0...@twreporter/react-article-components@1.6.1) (2022-07-27)
7
+
8
+ **Note:** Version bump only for package @twreporter/react-article-components
9
+
10
+
11
+
12
+
13
+
14
+ ## [1.6.1-rc.0](https://github.com/twreporter/twreporter-npm-packages/compare/@twreporter/react-article-components@1.6.0...@twreporter/react-article-components@1.6.1-rc.0) (2022-07-25)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * add id for bookmark & fix icon releaseBranch ([760a8ba](https://github.com/twreporter/twreporter-npm-packages/commit/760a8bab17f85ba1f04f7d4853dbb4b722992778))
20
+ * pop out snackbar asynchrously ([00988cc](https://github.com/twreporter/twreporter-npm-packages/commit/00988cc6eb76cebb83818c81befbfeba2f47e843))
21
+
22
+
23
+
24
+
25
+
26
+ # [1.6.0](https://github.com/twreporter/twreporter-npm-packages/compare/@twreporter/react-article-components@1.6.0-rc.2...@twreporter/react-article-components@1.6.0) (2022-07-21)
27
+
28
+ **Note:** Version bump only for package @twreporter/react-article-components
29
+
30
+
31
+
32
+
33
+
6
34
  # [1.6.0-rc.2](https://github.com/twreporter/twreporter-npm-packages/compare/@twreporter/react-article-components@1.6.0-rc.1...@twreporter/react-article-components@1.6.0-rc.2) (2022-07-20)
7
35
 
8
36
  **Note:** Version bump only for package @twreporter/react-article-components
@@ -11,7 +11,7 @@ var _dynamicComponentsContext = _interopRequireDefault(require("../../contexts/d
11
11
 
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
 
14
- var _react = _interopRequireDefault(require("react"));
14
+ var _react = _interopRequireWildcard(require("react"));
15
15
 
16
16
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
17
17
 
@@ -104,6 +104,9 @@ var ToolsBlock = /*#__PURE__*/_styledComponents["default"].div.withConfig({
104
104
  });
105
105
 
106
106
  function FBShareBT(props) {
107
+ var themeContext = (0, _react.useContext)(_styledComponents.ThemeContext);
108
+ var releaseBranch = themeContext.releaseBranch;
109
+
107
110
  var handleClick = function handleClick() {
108
111
  var currentURL = window.location.href;
109
112
  var location = 'https://www.facebook.com/dialog/feed?' + 'display=page' + "&app_id=".concat(props.appID) + "&link=".concat(encodeURIComponent(currentURL)) + "&redirect_uri=".concat(encodeURIComponent('https://www.facebook.com/'));
@@ -113,7 +116,8 @@ function FBShareBT(props) {
113
116
  return /*#__PURE__*/_react["default"].createElement(ShareIconBlock, {
114
117
  id: "fb-share"
115
118
  }, /*#__PURE__*/_react["default"].createElement(_icon.Facebook, {
116
- onClick: handleClick
119
+ onClick: handleClick,
120
+ releaseBranch: releaseBranch
117
121
  }));
118
122
  }
119
123
 
@@ -122,6 +126,9 @@ FBShareBT.propTypes = {
122
126
  };
123
127
 
124
128
  function TwitterShareBT(props) {
129
+ var themeContext = (0, _react.useContext)(_styledComponents.ThemeContext);
130
+ var releaseBranch = themeContext.releaseBranch;
131
+
125
132
  var handleClick = function handleClick() {
126
133
  var currentURL = window.location.href;
127
134
  var location = 'https://twitter.com/intent/tweet?' + "url=".concat(encodeURIComponent(currentURL), "&text=").concat(encodeURIComponent(document.title + ' #報導者'));
@@ -131,11 +138,15 @@ function TwitterShareBT(props) {
131
138
  return /*#__PURE__*/_react["default"].createElement(ShareIconBlock, {
132
139
  id: "twitter-share"
133
140
  }, /*#__PURE__*/_react["default"].createElement(_icon.Twitter, {
134
- onClick: handleClick
141
+ onClick: handleClick,
142
+ releaseBranch: releaseBranch
135
143
  }));
136
144
  }
137
145
 
138
146
  function LineShareBT(props) {
147
+ var themeContext = (0, _react.useContext)(_styledComponents.ThemeContext);
148
+ var releaseBranch = themeContext.releaseBranch;
149
+
139
150
  var handleClick = function handleClick() {
140
151
  var currentURL = window.location.href;
141
152
  var location = "https://social-plugins.line.me/lineit/share?url=".concat(encodeURIComponent(currentURL));
@@ -145,33 +156,69 @@ function LineShareBT(props) {
145
156
  return /*#__PURE__*/_react["default"].createElement(ShareIconBlock, {
146
157
  id: "line-share"
147
158
  }, /*#__PURE__*/_react["default"].createElement(_icon.Line, {
148
- onClick: handleClick
159
+ onClick: handleClick,
160
+ releaseBranch: releaseBranch
149
161
  }));
150
162
  }
151
163
 
152
- function BookmarkIcon(isBookmarked, addAction, removeAction) {
153
- var iconType = isBookmarked ? 'saved' : 'add';
154
- return /*#__PURE__*/_react["default"].createElement(BookmarkIconBlock, {
155
- onClick: isBookmarked ? removeAction : addAction,
156
- isBookmarked: isBookmarked
157
- }, /*#__PURE__*/_react["default"].createElement(_icon.Bookmark, {
158
- type: iconType
159
- }));
160
- }
164
+ var BookmarkBlock = function BookmarkBlock(_ref) {
165
+ var articleMeta = _ref.articleMeta;
166
+ var themeContext = (0, _react.useContext)(_styledComponents.ThemeContext);
167
+ var releaseBranch = themeContext.releaseBranch;
168
+
169
+ var renderIcon = function renderIcon(isBookmarked, addAction, removeAction) {
170
+ var iconType = isBookmarked ? 'saved' : 'add';
171
+ var id = isBookmarked ? 'remove-bookmark' : 'add-bookmark';
172
+ return /*#__PURE__*/_react["default"].createElement(BookmarkIconBlock, {
173
+ onClick: isBookmarked ? removeAction : addAction,
174
+ isBookmarked: isBookmarked,
175
+ id: id
176
+ }, /*#__PURE__*/_react["default"].createElement(_icon.Bookmark, {
177
+ type: iconType,
178
+ releaseBranch: releaseBranch
179
+ }));
180
+ };
161
181
 
162
- var defaultFbAppID = '962589903815787';
182
+ return /*#__PURE__*/_react["default"].createElement(_bookmarkWidget["default"], {
183
+ toAutoCheck: false,
184
+ articleMeta: articleMeta,
185
+ renderIcon: renderIcon
186
+ });
187
+ };
163
188
 
164
- var Tools = function Tools(_ref) {
165
- var backToTopic = _ref.backToTopic,
166
- fbAppID = _ref.fbAppID,
167
- height = _ref.height,
168
- onFontLevelChange = _ref.onFontLevelChange,
169
- articleMetaForBookmark = _ref.articleMetaForBookmark;
170
- var backToTopicJSX = backToTopic ? /*#__PURE__*/_react["default"].createElement(_dynamicComponentsContext["default"].Consumer, null, function (components) {
189
+ BookmarkBlock.propTypes = {
190
+ articleMeta: _aside["default"].tools.articleMetaForBookmark
191
+ };
192
+
193
+ var BackToTopic = function BackToTopic(_ref2) {
194
+ var backToTopic = _ref2.backToTopic;
195
+ var themeContext = (0, _react.useContext)(_styledComponents.ThemeContext);
196
+ var releaseBranch = themeContext.releaseBranch;
197
+ return /*#__PURE__*/_react["default"].createElement(_dynamicComponentsContext["default"].Consumer, null, function (components) {
171
198
  return /*#__PURE__*/_react["default"].createElement(components.Link, {
172
199
  to: backToTopic,
173
200
  target: "_self"
174
- }, /*#__PURE__*/_react["default"].createElement(BackToTopicBlock, null, /*#__PURE__*/_react["default"].createElement(_icon.Topic, null)));
201
+ }, /*#__PURE__*/_react["default"].createElement(BackToTopicBlock, null, /*#__PURE__*/_react["default"].createElement(_icon.Topic, {
202
+ releaseBranch: releaseBranch
203
+ })));
204
+ });
205
+ };
206
+
207
+ BackToTopic.propTypes = {
208
+ backToTopic: _aside["default"].tools.backToTopic
209
+ };
210
+ var defaultFbAppID = '962589903815787';
211
+
212
+ var Tools = function Tools(_ref3) {
213
+ var backToTopic = _ref3.backToTopic,
214
+ fbAppID = _ref3.fbAppID,
215
+ height = _ref3.height,
216
+ onFontLevelChange = _ref3.onFontLevelChange,
217
+ articleMetaForBookmark = _ref3.articleMetaForBookmark;
218
+ var themeContext = (0, _react.useContext)(_styledComponents.ThemeContext);
219
+ var releaseBranch = themeContext.releaseBranch;
220
+ var backToTopicJSX = backToTopic ? /*#__PURE__*/_react["default"].createElement(BackToTopic, {
221
+ backToTopic: backToTopic
175
222
  }) : null;
176
223
 
177
224
  var onPrinterClick = function onPrinterClick() {
@@ -180,14 +227,14 @@ var Tools = function Tools(_ref) {
180
227
 
181
228
  return /*#__PURE__*/_react["default"].createElement(ToolsBlock, {
182
229
  height: height
183
- }, backToTopicJSX, /*#__PURE__*/_react["default"].createElement(_bookmarkWidget["default"], {
184
- toAutoCheck: false,
185
- articleMeta: articleMetaForBookmark,
186
- renderIcon: BookmarkIcon
230
+ }, backToTopicJSX, /*#__PURE__*/_react["default"].createElement(BookmarkBlock, {
231
+ articleMeta: articleMetaForBookmark
187
232
  }), /*#__PURE__*/_react["default"].createElement(TextIconBlock, null, /*#__PURE__*/_react["default"].createElement(_icon.Text, {
188
- onClick: onFontLevelChange
233
+ onClick: onFontLevelChange,
234
+ releaseBranch: releaseBranch
189
235
  })), /*#__PURE__*/_react["default"].createElement(PrintIconBlock, null, /*#__PURE__*/_react["default"].createElement(_icon.Printer, {
190
- onClick: onPrinterClick
236
+ onClick: onPrinterClick,
237
+ releaseBranch: releaseBranch
191
238
  })), /*#__PURE__*/_react["default"].createElement(FBShareBT, {
192
239
  appID: fbAppID || defaultFbAppID
193
240
  }), /*#__PURE__*/_react["default"].createElement(TwitterShareBT, null), /*#__PURE__*/_react["default"].createElement(LineShareBT, null));
@@ -347,17 +347,48 @@ var BookmarkBlock = function BookmarkBlock(_ref6) {
347
347
  var renderIcon = function renderIcon(isBookmarked, addAction, removeAction) {
348
348
  var iconType = isBookmarked ? 'saved' : 'add';
349
349
  var text = isBookmarked ? '已儲存' : '加入書籤';
350
+ var id = isBookmarked ? 'remove-bookmark' : 'add-bookmark';
351
+
352
+ var handleClick = /*#__PURE__*/function () {
353
+ var _ref7 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {
354
+ var action;
355
+ return regeneratorRuntime.wrap(function _callee2$(_context2) {
356
+ while (1) {
357
+ switch (_context2.prev = _context2.next) {
358
+ case 0:
359
+ action = isBookmarked ? removeAction : addAction;
360
+ _context2.prev = 1;
361
+ _context2.next = 4;
362
+ return action();
363
+
364
+ case 4:
365
+ _context2.next = 9;
366
+ break;
367
+
368
+ case 6:
369
+ _context2.prev = 6;
370
+ _context2.t0 = _context2["catch"](1);
371
+ console.error('add bookmark fail', _context2.t0);
372
+
373
+ case 9:
374
+ toastr(isBookmarked);
375
+
376
+ case 10:
377
+ case "end":
378
+ return _context2.stop();
379
+ }
380
+ }
381
+ }, _callee2, null, [[1, 6]]);
382
+ }));
350
383
 
351
- var handleClick = function handleClick() {
352
- var action = isBookmarked ? removeAction : addAction;
353
- action();
354
- setTimeout(function () {
355
- toastr(isBookmarked);
356
- }, 500);
357
- };
384
+ return function handleClick() {
385
+ return _ref7.apply(this, arguments);
386
+ };
387
+ }();
358
388
 
359
389
  return /*#__PURE__*/_react["default"].createElement(ButtonContainer, {
360
- onClick: handleClick
390
+ onClick: handleClick,
391
+ id: id
361
392
  }, /*#__PURE__*/_react["default"].createElement(_button.IconWithTextButton, {
362
393
  text: text,
363
394
  iconComponent: /*#__PURE__*/_react["default"].createElement(_icon.Bookmark, {
@@ -393,8 +424,8 @@ BookmarkBlock.propTypes = {
393
424
  articleMeta: _aside["default"].tools.articleMetaForBookmark
394
425
  };
395
426
 
396
- var BackToTopic = function BackToTopic(_ref7) {
397
- var backToTopic = _ref7.backToTopic;
427
+ var BackToTopic = function BackToTopic(_ref8) {
428
+ var backToTopic = _ref8.backToTopic;
398
429
  var hideText = (0, _react.useContext)(HideTextContext);
399
430
  var themeContext = (0, _react.useContext)(_styledComponents.ThemeContext);
400
431
  var theme = themeContext.name === _theme["default"].article.v2.photo ? 'photography' : 'normal';
@@ -443,13 +474,13 @@ var RelatedPost = function RelatedPost() {
443
474
  }));
444
475
  };
445
476
 
446
- var ToolBar = function ToolBar(_ref8) {
447
- var backToTopic = _ref8.backToTopic,
448
- _ref8$fbAppID = _ref8.fbAppID,
449
- fbAppID = _ref8$fbAppID === void 0 ? defaultFbAppID : _ref8$fbAppID,
450
- articleMetaForBookmark = _ref8.articleMetaForBookmark,
451
- onFontLevelChange = _ref8.onFontLevelChange,
452
- className = _ref8.className;
477
+ var ToolBar = function ToolBar(_ref9) {
478
+ var backToTopic = _ref9.backToTopic,
479
+ _ref9$fbAppID = _ref9.fbAppID,
480
+ fbAppID = _ref9$fbAppID === void 0 ? defaultFbAppID : _ref9$fbAppID,
481
+ articleMetaForBookmark = _ref9.articleMetaForBookmark,
482
+ onFontLevelChange = _ref9.onFontLevelChange,
483
+ className = _ref9.className;
453
484
 
454
485
  var _useState9 = (0, _react.useState)('init'),
455
486
  _useState10 = _slicedToArray(_useState9, 2),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@twreporter/react-article-components",
3
- "version": "1.6.0-rc.2",
3
+ "version": "1.6.1",
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",
@@ -25,9 +25,9 @@
25
25
  },
26
26
  "dependencies": {
27
27
  "@twreporter/core": "^1.4.1",
28
- "@twreporter/react-components": "^8.11.0-rc.0",
28
+ "@twreporter/react-components": "^8.11.0",
29
29
  "@twreporter/redux": "^7.2.2",
30
- "@twreporter/universal-header": "^2.2.11-rc.0",
30
+ "@twreporter/universal-header": "^2.2.11",
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": "fd9df4910781396b141caba06abffb051c5b6500"
43
+ "gitHead": "244cb67b289aa61d0c847dc2f07036d2472269c6"
44
44
  }