@nice-digital/global-nav 5.0.940 → 7.0.930

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.
Files changed (74) hide show
  1. package/README.md +18 -55
  2. package/lib/Footer/Footer.js +31 -55
  3. package/lib/Footer/Legal/Legal.js +76 -71
  4. package/lib/Footer/Legal/index.js +10 -7
  5. package/lib/Footer/Pages/Pages.js +34 -54
  6. package/lib/Footer/Pages/Pages.module.scss +1 -1
  7. package/lib/Footer/Pages/index.js +10 -7
  8. package/lib/Footer/Pages/links.json +2 -5
  9. package/lib/Footer/Services/Services.js +65 -86
  10. package/lib/Footer/Services/Services.module.scss +1 -1
  11. package/lib/Footer/Services/index.js +10 -7
  12. package/lib/Footer/Social/Social.js +46 -57
  13. package/lib/Footer/Social/index.js +10 -7
  14. package/lib/Footer/index.js +10 -7
  15. package/lib/Header/Account/Account.js +87 -109
  16. package/lib/Header/Account/index.js +10 -7
  17. package/lib/Header/Account/nice-accounts.js +7 -12
  18. package/lib/Header/Header.js +345 -171
  19. package/lib/Header/Header.module.scss +2 -2
  20. package/lib/Header/Nav/Dropdown/Components/AboutUs.js +216 -105
  21. package/lib/Header/Nav/Dropdown/Components/BNF.js +120 -75
  22. package/lib/Header/Nav/Dropdown/Components/BNFc.js +115 -73
  23. package/lib/Header/Nav/Dropdown/Components/Button.js +11 -14
  24. package/lib/Header/Nav/Dropdown/Components/CKS.js +115 -73
  25. package/lib/Header/Nav/Dropdown/Components/Grid.js +16 -22
  26. package/lib/Header/Nav/Dropdown/Components/Guidance.js +244 -128
  27. package/lib/Header/Nav/Dropdown/Components/LifeSciences.js +169 -108
  28. package/lib/Header/Nav/Dropdown/Components/StandardsAndIndicators.js +83 -45
  29. package/lib/Header/Nav/Dropdown/Components/index.js +46 -24
  30. package/lib/Header/Nav/Dropdown/Dropdown.js +48 -63
  31. package/lib/Header/Nav/Dropdown/Dropdown.module.scss +1 -1
  32. package/lib/Header/Nav/Dropdown/index.js +10 -7
  33. package/lib/Header/Nav/Nav.js +84 -102
  34. package/lib/Header/Nav/Nav.module.scss +2 -4
  35. package/lib/Header/Nav/NavLinks/NavLinks.js +118 -137
  36. package/lib/Header/Nav/NavLinks/NavLinks.module.scss +1 -1
  37. package/lib/Header/Nav/NavLinks/index.js +10 -7
  38. package/lib/Header/Nav/SubNav/SubNav.js +54 -90
  39. package/lib/Header/Nav/SubNav/index.js +10 -7
  40. package/lib/Header/Nav/__mocks__/services.json +3 -3
  41. package/lib/Header/Nav/index.js +10 -7
  42. package/lib/Header/OldIEMessage/OldIEMessage.js +65 -67
  43. package/lib/Header/OldIEMessage/ie.js +14 -0
  44. package/lib/Header/OldIEMessage/index.js +10 -7
  45. package/lib/Header/Search/Autocomplete/Autocomplete.js +169 -194
  46. package/lib/Header/Search/Autocomplete/Autocomplete.module.scss +9 -1
  47. package/lib/Header/Search/Autocomplete/index.js +10 -7
  48. package/lib/Header/Search/Autocomplete/suggester/index.js +21 -28
  49. package/lib/Header/Search/Autocomplete/suggester/phrase-finder.js +13 -14
  50. package/lib/Header/Search/Autocomplete/suggester/term-finder.js +18 -21
  51. package/lib/Header/Search/Autocomplete/suggester/tokenizer.js +12 -17
  52. package/lib/Header/Search/Search.js +73 -90
  53. package/lib/Header/Search/index.js +10 -7
  54. package/lib/Header/SkipLink/SkipLink.js +24 -62
  55. package/lib/Header/SkipLink/SkipLink.module.scss +5 -1
  56. package/lib/Header/SkipLink/index.js +10 -7
  57. package/lib/Header/_header-settings.scss +0 -2
  58. package/lib/Header/context/HeaderContext.js +28 -54
  59. package/lib/Header/index.js +10 -7
  60. package/lib/Main/BackToTop/BackToTop.js +22 -25
  61. package/lib/Main/BackToTop/BackToTop.module.scss +1 -4
  62. package/lib/Main/Main.js +22 -26
  63. package/lib/Main/index.js +10 -7
  64. package/lib/TrackedLink/TrackedLink.js +48 -74
  65. package/lib/TrackedLink/index.js +10 -7
  66. package/lib/hooks/useEscapeKeydown.js +8 -21
  67. package/lib/hooks/useIsClient.js +20 -0
  68. package/lib/index.js +22 -12
  69. package/lib/renderer.js +21 -30
  70. package/lib/tracker/index.js +8 -25
  71. package/lib/utils.js +4 -7
  72. package/package.json +68 -65
  73. package/types.d.ts +1 -0
  74. package/lib/Header/Account/AccountOld.js +0 -227
@@ -1,78 +1,40 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- exports.__esModule = true;
6
- exports["default"] = void 0;
7
-
8
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
9
-
10
- var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
11
-
12
- var _react = _interopRequireWildcard(require("react"));
13
-
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
14
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
15
-
16
10
  var _SkipLinkModule = _interopRequireDefault(require("./SkipLink.module.scss"));
17
-
18
- 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); }
19
-
20
- 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; }
21
-
22
- var SkipLink = /*#__PURE__*/function (_Component) {
23
- (0, _inheritsLoose2["default"])(SkipLink, _Component);
24
-
25
- function SkipLink(props) {
26
- var _this;
27
-
28
- _this = _Component.call(this, props) || this;
29
- _this.handleClick = _this.handleClick.bind((0, _assertThisInitialized2["default"])(_this));
30
- return _this;
31
- }
32
-
33
- var _proto = SkipLink.prototype;
34
-
35
- _proto.handleClick = function handleClick(e) {
11
+ var _jsxRuntime = require("react/jsx-runtime");
12
+ var SkipLink = function SkipLink(props) {
13
+ var handleClick = function handleClick(e) {
36
14
  var href = e.currentTarget.getAttribute("href");
37
-
38
15
  if (href && href.indexOf("#") === 0) {
39
16
  var id = href.split("#")[1],
40
- element = document.getElementById(id);
41
-
17
+ element = document.getElementById(id);
42
18
  if (element) {
43
19
  e.preventDefault();
44
20
  element.setAttribute("tabIndex", "-1");
45
21
  element.focus();
46
- window.scrollTo(0, this.getYOffset(element));
22
+ element.scrollIntoView();
47
23
  }
48
24
  }
49
- } // See https://stackoverflow.com/a/442474/486434
50
- ;
51
-
52
- _proto.getYOffset = function getYOffset(el) {
53
- var _y = 0;
54
-
55
- while (el && !isNaN(el.offsetLeft) && !isNaN(el.offsetTop)) {
56
- _y += el.offsetTop - el.scrollTop;
57
- el = el.offsetParent;
58
- }
59
-
60
- return _y;
61
- };
62
-
63
- _proto.render = function render() {
64
- return /*#__PURE__*/_react["default"].createElement("a", {
65
- href: this.props.to,
66
- className: _SkipLinkModule["default"].link,
67
- onClick: this.handleClick
68
- }, this.props.children);
69
25
  };
70
-
71
- return SkipLink;
72
- }(_react.Component);
73
-
74
- exports["default"] = SkipLink;
26
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("a", {
27
+ href: props.to,
28
+ className: _SkipLinkModule.default.link,
29
+ onClick: handleClick,
30
+ children: props.children
31
+ });
32
+ };
33
+
34
+ //TODO Convert proptypes to typescript
75
35
  SkipLink.propTypes = {
76
- to: _propTypes["default"].string.isRequired,
77
- children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]).isRequired
78
- };
36
+ to: _propTypes.default.string.isRequired,
37
+ children: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.node), _propTypes.default.node]).isRequired
38
+ };
39
+ var _default = SkipLink;
40
+ exports.default = _default;
@@ -3,7 +3,7 @@
3
3
  @use '@nice-digital/nds-core/scss/utils';
4
4
  @use '../header-settings';
5
5
 
6
- .link {
6
+ %link {
7
7
  clip: rect(1px 1px 1px 1px);
8
8
  clip: rect(1px, 1px, 1px, 1px);
9
9
  height: 1px;
@@ -28,3 +28,7 @@
28
28
  z-index: header-settings.$base-z-index + 5;
29
29
  }
30
30
  }
31
+
32
+ .link {
33
+ @extend %link;
34
+ }
@@ -1,10 +1,13 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- exports.__esModule = true;
6
- exports["default"] = void 0;
7
-
8
- var _SkipLink = _interopRequireDefault(require("./SkipLink"));
9
-
10
- exports["default"] = _SkipLink["default"];
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ Object.defineProperty(exports, "default", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _SkipLink.default;
11
+ }
12
+ });
13
+ var _SkipLink = _interopRequireDefault(require("./SkipLink"));
@@ -1,7 +1,5 @@
1
1
  @use '@nice-digital/nds-core/scss/spacing';
2
2
 
3
3
  $sub-nav-height: spacing.$x-large;
4
-
5
4
  $search-height: 40;
6
-
7
5
  $base-z-index: 99990;
@@ -1,40 +1,33 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- exports.__esModule = true;
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
6
8
  exports.HeaderContextProvider = exports.HeaderContext = void 0;
7
-
8
- var _newArrowCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/newArrowCheck"));
9
-
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
10
  var _react = _interopRequireWildcard(require("react"));
11
-
12
11
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
-
12
+ var _jsxRuntime = require("react/jsx-runtime");
14
13
  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); }
15
-
16
- 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; }
17
-
14
+ 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; }
18
15
  var defaultValues = {
19
16
  accountMenuIsExpanded: false,
20
17
  idOfOpenDropdown: null
21
18
  };
22
19
  var HeaderContext = /*#__PURE__*/(0, _react.createContext)(defaultValues);
23
20
  exports.HeaderContext = HeaderContext;
24
-
25
21
  var HeaderContextProvider = function HeaderContextProvider(_ref) {
26
- var _this = this;
27
-
28
22
  var children = _ref.children;
29
-
30
23
  var _useState = (0, _react.useState)(null),
31
- idOfOpenDropdown = _useState[0],
32
- setidOfOpenDropdown = _useState[1];
33
-
34
- var _useState2 = (0, _react.useState)(false),
35
- accountMenuIsExpanded = _useState2[0],
36
- setAccountMenuIsExpanded = _useState2[1];
37
-
24
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
25
+ idOfOpenDropdown = _useState2[0],
26
+ setidOfOpenDropdown = _useState2[1];
27
+ var _useState3 = (0, _react.useState)(false),
28
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
29
+ accountMenuIsExpanded = _useState4[0],
30
+ setAccountMenuIsExpanded = _useState4[1];
38
31
  var clickOutsideRef = /*#__PURE__*/(0, _react.createRef)();
39
32
  var value = {
40
33
  idOfOpenDropdown: idOfOpenDropdown,
@@ -44,63 +37,44 @@ var HeaderContextProvider = function HeaderContextProvider(_ref) {
44
37
  clickOutsideRef: clickOutsideRef
45
38
  };
46
39
  var handleClickOutsideHeaderMenu = (0, _react.useCallback)(function (e) {
47
- (0, _newArrowCheck2["default"])(this, _this);
48
-
49
40
  if (clickOutsideRef.current && clickOutsideRef.current.contains(e.target) == false) {
50
41
  setidOfOpenDropdown(null);
51
42
  }
52
- }.bind(this), [clickOutsideRef]);
43
+ }, [clickOutsideRef]);
53
44
  (0, _react.useEffect)(function () {
54
- var _this2 = this;
55
-
56
- (0, _newArrowCheck2["default"])(this, _this);
57
45
  // listen for clicks outside of header menu to close dropdown
58
46
  document.body.addEventListener("click", handleClickOutsideHeaderMenu);
59
47
  return function () {
60
- (0, _newArrowCheck2["default"])(this, _this2);
61
48
  document.body.removeEventListener("click", handleClickOutsideHeaderMenu);
62
- }.bind(this);
63
- }.bind(this), [handleClickOutsideHeaderMenu]);
49
+ };
50
+ }, [handleClickOutsideHeaderMenu]);
64
51
  (0, _react.useEffect)(function () {
65
- (0, _newArrowCheck2["default"])(this, _this);
66
52
  setidOfOpenDropdown(null);
67
- }.bind(this), [typeof location == "undefined" ? null : location.href]);
68
-
53
+ }, [typeof location == "undefined" ? null : location.href]);
69
54
  var popStateHandler = function popStateHandler() {
70
- (0, _newArrowCheck2["default"])(this, _this);
71
55
  setidOfOpenDropdown(null);
72
- }.bind(this);
73
-
56
+ };
74
57
  (0, _react.useEffect)(function () {
75
- var _this3 = this;
76
-
77
- (0, _newArrowCheck2["default"])(this, _this);
78
58
  window && window.addEventListener("popstate", popStateHandler);
79
59
  return function () {
80
- (0, _newArrowCheck2["default"])(this, _this3);
81
60
  window && window.removeEventListener("popstate", popStateHandler);
82
- }.bind(this);
83
- }.bind(this), []);
61
+ };
62
+ }, []);
84
63
  (0, _react.useEffect)(function () {
85
- var _this4 = this;
86
-
87
- (0, _newArrowCheck2["default"])(this, _this);
88
-
89
64
  // we know both are now open
90
65
  if (accountMenuIsExpanded && idOfOpenDropdown) {
91
66
  setAccountMenuIsExpanded(function (prevState) {
92
- (0, _newArrowCheck2["default"])(this, _this4);
93
67
  // if prevstate is not null, you know it was already open, therefore close it
94
68
  if (prevState) return false;
95
- }.bind(this));
69
+ });
96
70
  }
97
- }.bind(this), [accountMenuIsExpanded, idOfOpenDropdown]);
98
- return /*#__PURE__*/_react["default"].createElement(HeaderContext.Provider, {
99
- value: value
100
- }, children);
71
+ }, [accountMenuIsExpanded, idOfOpenDropdown]);
72
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(HeaderContext.Provider, {
73
+ value: value,
74
+ children: children
75
+ });
101
76
  };
102
-
103
77
  exports.HeaderContextProvider = HeaderContextProvider;
104
78
  HeaderContextProvider.propTypes = {
105
- children: _propTypes["default"].node
79
+ children: _propTypes.default.node
106
80
  };
@@ -1,10 +1,13 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- exports.__esModule = true;
6
- exports["default"] = void 0;
7
-
8
- var _Header = _interopRequireDefault(require("./Header"));
9
-
10
- exports["default"] = _Header["default"];
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ Object.defineProperty(exports, "default", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _Header.default;
11
+ }
12
+ });
13
+ var _Header = _interopRequireDefault(require("./Header"));
@@ -1,26 +1,21 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- exports.__esModule = true;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
6
7
  exports.BackToTop = void 0;
7
-
8
8
  var _react = _interopRequireDefault(require("react"));
9
-
10
9
  var _ChevronUp = _interopRequireDefault(require("@nice-digital/icons/lib/ChevronUp"));
11
-
12
10
  var _ndsContainer = require("@nice-digital/nds-container");
13
-
14
11
  var _BackToTopModule = _interopRequireDefault(require("./BackToTop.module.scss"));
15
-
12
+ var _jsxRuntime = require("react/jsx-runtime");
16
13
  var BackToTop = function BackToTop() {
17
14
  var handleClick = function handleClick(e) {
18
15
  var href = e.currentTarget.getAttribute("href");
19
-
20
16
  if (href && href.indexOf("#") === 0) {
21
17
  var id = href.split("#")[1],
22
- element = document.getElementById(id);
23
-
18
+ element = document.getElementById(id);
24
19
  if (element) {
25
20
  e.preventDefault();
26
21
  element.setAttribute("tabIndex", "-1");
@@ -29,20 +24,22 @@ var BackToTop = function BackToTop() {
29
24
  }
30
25
  }
31
26
  };
32
-
33
- return /*#__PURE__*/_react["default"].createElement("div", {
34
- className: _BackToTopModule["default"].wrapper
35
- }, /*#__PURE__*/_react["default"].createElement("nav", {
36
- "aria-labelledby": "back-to-top-link",
37
- className: _BackToTopModule["default"].nav
38
- }, /*#__PURE__*/_react["default"].createElement("a", {
39
- className: _BackToTopModule["default"].anchor,
40
- id: "back-to-top-link",
41
- href: "#top",
42
- onClick: handleClick
43
- }, /*#__PURE__*/_react["default"].createElement(_ndsContainer.Container, {
44
- className: _BackToTopModule["default"].container
45
- }, /*#__PURE__*/_react["default"].createElement(_ChevronUp["default"], null), " Back to top"))));
27
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
28
+ className: _BackToTopModule.default.wrapper,
29
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("nav", {
30
+ "aria-labelledby": "back-to-top-link",
31
+ className: _BackToTopModule.default.nav,
32
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("a", {
33
+ className: _BackToTopModule.default.anchor,
34
+ id: "back-to-top-link",
35
+ href: "#top",
36
+ onClick: handleClick,
37
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ndsContainer.Container, {
38
+ className: _BackToTopModule.default.container,
39
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ChevronUp.default, {}), " Back to top"]
40
+ })
41
+ })
42
+ })
43
+ });
46
44
  };
47
-
48
45
  exports.BackToTop = BackToTop;
@@ -61,13 +61,10 @@ $back-to-top-height: utils.rem(
61
61
 
62
62
  @supports (position: sticky) {
63
63
  .wrapper {
64
- bottom: 0;
65
- left: 0;
64
+ inset: min(100vh, calc(100% - #{$back-to-top-height})) 0 0 0;
66
65
  margin: 0;
67
66
  pointer-events: none;
68
67
  position: absolute;
69
- right: 0;
70
- top: min(100vh, calc(100% - #{$back-to-top-height}));
71
68
  width: 100%;
72
69
  z-index: 99;
73
70
  }
package/lib/Main/Main.js CHANGED
@@ -1,42 +1,38 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- exports.__esModule = true;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
6
7
  exports.Main = Main;
7
- exports["default"] = void 0;
8
-
9
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
-
11
- var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
12
-
8
+ exports.default = void 0;
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
11
  var _react = _interopRequireDefault(require("react"));
14
-
15
12
  var _BackToTop = require("./BackToTop/BackToTop");
16
-
17
13
  var _propTypes = _interopRequireDefault(require("prop-types"));
18
-
19
14
  var _classnames = _interopRequireDefault(require("classnames"));
20
-
21
15
  var _MainModule = _interopRequireDefault(require("./Main.module.scss"));
22
-
16
+ var _jsxRuntime = require("react/jsx-runtime");
23
17
  var _excluded = ["children", "className", "withPadding"];
24
-
18
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
19
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
25
20
  function Main(props) {
26
21
  var children = props.children,
27
- className = props.className,
28
- _props$withPadding = props.withPadding,
29
- withPadding = _props$withPadding === void 0 ? true : _props$withPadding,
30
- rest = (0, _objectWithoutPropertiesLoose2["default"])(props, _excluded);
31
- return /*#__PURE__*/_react["default"].createElement("main", (0, _extends2["default"])({
32
- className: (0, _classnames["default"])([_MainModule["default"].main, className], withPadding && _MainModule["default"].withPadding)
33
- }, rest), children, /*#__PURE__*/_react["default"].createElement(_BackToTop.BackToTop, null));
22
+ className = props.className,
23
+ _props$withPadding = props.withPadding,
24
+ withPadding = _props$withPadding === void 0 ? true : _props$withPadding,
25
+ rest = (0, _objectWithoutProperties2.default)(props, _excluded);
26
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("main", _objectSpread(_objectSpread({
27
+ className: (0, _classnames.default)([_MainModule.default.main, className], withPadding && _MainModule.default.withPadding)
28
+ }, rest), {}, {
29
+ children: [children, /*#__PURE__*/(0, _jsxRuntime.jsx)(_BackToTop.BackToTop, {})]
30
+ }));
34
31
  }
35
-
36
32
  Main.propTypes = {
37
- children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]).isRequired,
38
- className: _propTypes["default"].string,
39
- withPadding: _propTypes["default"].bool
33
+ children: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.node), _propTypes.default.node]).isRequired,
34
+ className: _propTypes.default.string,
35
+ withPadding: _propTypes.default.bool
40
36
  };
41
37
  var _default = Main;
42
- exports["default"] = _default;
38
+ exports.default = _default;
package/lib/Main/index.js CHANGED
@@ -1,10 +1,13 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- exports.__esModule = true;
6
- exports["default"] = void 0;
7
-
8
- var _Main = _interopRequireDefault(require("./Main"));
9
-
10
- exports["default"] = _Main["default"];
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ Object.defineProperty(exports, "default", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _Main.default;
11
+ }
12
+ });
13
+ var _Main = _interopRequireDefault(require("./Main"));
@@ -1,88 +1,62 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- exports.__esModule = true;
6
- exports["default"] = void 0;
7
-
8
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
-
10
- var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
11
-
12
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
13
-
14
- var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
15
-
16
- var _react = _interopRequireWildcard(require("react"));
17
-
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _react = _interopRequireDefault(require("react"));
18
11
  var _propTypes = _interopRequireDefault(require("prop-types"));
19
-
20
12
  var _tracker = require("./../tracker");
21
-
13
+ var _jsxRuntime = require("react/jsx-runtime");
22
14
  var _excluded = ["children", "href", "eventCategory", "eventAction", "eventLabel", "eventValue", "destinationUrl"];
23
-
24
- 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); }
25
-
26
- 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; }
27
-
28
- var TrackedLink = /*#__PURE__*/function (_Component) {
29
- (0, _inheritsLoose2["default"])(TrackedLink, _Component);
30
-
31
- function TrackedLink(props) {
32
- var _this;
33
-
34
- _this = _Component.call(this, props) || this;
35
- _this.handleClick = _this.handleClick.bind((0, _assertThisInitialized2["default"])(_this));
36
- return _this;
37
- }
38
-
39
- var _proto = TrackedLink.prototype;
40
-
41
- _proto.handleClick = function handleClick(e) {
15
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
16
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
17
+ var TrackedLink = function TrackedLink(_ref) {
18
+ var children = _ref.children,
19
+ href = _ref.href,
20
+ _ref$eventCategory = _ref.eventCategory,
21
+ eventCategory = _ref$eventCategory === void 0 ? _tracker.defaultEventCategory : _ref$eventCategory,
22
+ eventAction = _ref.eventAction,
23
+ eventLabel = _ref.eventLabel,
24
+ eventValue = _ref.eventValue,
25
+ destinationUrl = _ref.destinationUrl,
26
+ props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
27
+ var handleClick = function handleClick(e) {
42
28
  e.preventDefault();
43
- var _this$props = this.props,
44
- eventCategory = _this$props.eventCategory,
45
- eventAction = _this$props.eventAction,
46
- eventLabel = _this$props.eventLabel;
47
29
  var href = e.currentTarget.getAttribute("href");
48
- (0, _tracker.trackEvent)(eventCategory, eventAction, // Support IE8 with innerText
49
- eventLabel || e.currentTarget.textContent || e.currentTarget.innerText, null, href, function () {
50
- window.location.href = href;
30
+ (0, _tracker.trackEvent)(eventCategory, eventAction, eventLabel || e.currentTarget.textContent || e.currentTarget.innerText, null, href, function () {
31
+ window.location.assign(href);
51
32
  }());
52
33
  };
34
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("a", _objectSpread(_objectSpread({
35
+ href: href,
36
+ onClick: handleClick
37
+ }, props), {}, {
38
+ children: children
39
+ }));
40
+ };
53
41
 
54
- _proto.render = function render() {
55
- /* eslint-disable no-unused-vars */
56
- var _this$props2 = this.props,
57
- children = _this$props2.children,
58
- href = _this$props2.href,
59
- eventCategory = _this$props2.eventCategory,
60
- eventAction = _this$props2.eventAction,
61
- eventLabel = _this$props2.eventLabel,
62
- eventValue = _this$props2.eventValue,
63
- destinationUrl = _this$props2.destinationUrl,
64
- props = (0, _objectWithoutPropertiesLoose2["default"])(_this$props2, _excluded);
65
- /* eslint-enable no-unused-vars */
66
-
67
- return /*#__PURE__*/_react["default"].createElement("a", (0, _extends2["default"])({
68
- href: href,
69
- onClick: this.handleClick
70
- }, props), children);
71
- };
72
-
73
- return TrackedLink;
74
- }(_react.Component);
75
-
76
- exports["default"] = TrackedLink;
42
+ //TODO convert proptypes to typescript types
77
43
  TrackedLink.propTypes = {
78
- href: _propTypes["default"].string.isRequired,
79
- children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]).isRequired,
80
- eventCategory: _propTypes["default"].string,
81
- eventAction: _propTypes["default"].string.isRequired,
82
- eventLabel: _propTypes["default"].string,
83
- eventValue: _propTypes["default"].number,
84
- destinationUrl: _propTypes["default"].string
44
+ children: _propTypes.default.node.isRequired,
45
+ href: _propTypes.default.string.isRequired,
46
+ eventCategory: _propTypes.default.string.isRequired,
47
+ eventAction: _propTypes.default.string.isRequired,
48
+ eventLabel: _propTypes.default.string,
49
+ eventValue: _propTypes.default.number,
50
+ destinationUrl: _propTypes.default.string
85
51
  };
86
- TrackedLink.defaultProps = {
87
- eventCategory: _tracker.defaultEventCategory
52
+ var _default = TrackedLink;
53
+ exports.default = _default;
54
+ TrackedLink.propTypes = {
55
+ href: _propTypes.default.string.isRequired,
56
+ children: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.node), _propTypes.default.node]).isRequired,
57
+ eventCategory: _propTypes.default.string,
58
+ eventAction: _propTypes.default.string.isRequired,
59
+ eventLabel: _propTypes.default.string,
60
+ eventValue: _propTypes.default.number,
61
+ destinationUrl: _propTypes.default.string
88
62
  };
@@ -1,10 +1,13 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- exports.__esModule = true;
6
- exports["default"] = void 0;
7
-
8
- var _TrackedLink = _interopRequireDefault(require("./TrackedLink"));
9
-
10
- exports["default"] = _TrackedLink["default"];
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ Object.defineProperty(exports, "default", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _TrackedLink.default;
11
+ }
12
+ });
13
+ var _TrackedLink = _interopRequireDefault(require("./TrackedLink"));