@ndla/safelink 1.0.6 → 1.0.11
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/es/MissingRouterContext.js +2 -2
- package/es/SafeLink.js +3 -3
- package/es/SafeLinkButton.js +1 -1
- package/lib/MissingRouterContext.d.ts +1 -2
- package/lib/MissingRouterContext.js +2 -5
- package/lib/SafeLink.d.ts +4 -3
- package/lib/SafeLink.js +9 -3
- package/lib/SafeLinkButton.d.ts +4 -4
- package/lib/SafeLinkButton.js +1 -1
- package/package.json +3 -3
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
7
|
*/
|
|
8
|
-
import
|
|
9
|
-
var MissingRouterContext = /*#__PURE__*/
|
|
8
|
+
import { createContext } from 'react';
|
|
9
|
+
var MissingRouterContext = /*#__PURE__*/createContext(false);
|
|
10
10
|
export default MissingRouterContext;
|
package/es/SafeLink.js
CHANGED
|
@@ -15,7 +15,7 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
|
|
|
15
15
|
* LICENSE file in the root directory of this source tree.
|
|
16
16
|
*
|
|
17
17
|
*/
|
|
18
|
-
import React from 'react';
|
|
18
|
+
import React, { useContext } from 'react';
|
|
19
19
|
import { Link } from 'react-router-dom';
|
|
20
20
|
import { Launch } from '@ndla/icons/common';
|
|
21
21
|
import isString from 'lodash/isString';
|
|
@@ -39,7 +39,7 @@ var LaunchIcon = /*#__PURE__*/_styled(Launch, {
|
|
|
39
39
|
} : {
|
|
40
40
|
name: "vum9tn",
|
|
41
41
|
styles: "margin-left:6px;height:auto;width:auto;margin-top:1px;",
|
|
42
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
42
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNhZmVMaW5rLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvQmlDIiwiZmlsZSI6IlNhZmVMaW5rLnRzeCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE5LXByZXNlbnQsIE5ETEEuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgR1BMdjMgbGljZW5zZSBmb3VuZCBpbiB0aGVcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbiAqXG4gKi9cblxuaW1wb3J0IFJlYWN0LCB7IEhUTUxBdHRyaWJ1dGVzLCBSZWFjdE5vZGUsIHVzZUNvbnRleHQgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBMaW5rLCBMaW5rUHJvcHMgfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IExhdW5jaCB9IGZyb20gJ0BuZGxhL2ljb25zL2NvbW1vbic7XG5pbXBvcnQgaXNTdHJpbmcgZnJvbSAnbG9kYXNoL2lzU3RyaW5nJztcbmltcG9ydCBNaXNzaW5nUm91dGVyQ29udGV4dCBmcm9tICcuL01pc3NpbmdSb3V0ZXJDb250ZXh0JztcblxuY29uc3QgaXNFeHRlcm5hbExpbmsgPSAodG8/OiBMaW5rUHJvcHNbJ3RvJ10pID0+XG4gIHRvICYmIGlzU3RyaW5nKHRvKSAmJiAodG8uc3RhcnRzV2l0aCgnaHR0cHM6Ly8nKSB8fCB0by5zdGFydHNXaXRoKCdodHRwOi8vJykpO1xuXG5leHBvcnQgY29uc3QgaXNPbGROZGxhTGluayA9ICh0bz86IExpbmtQcm9wc1sndG8nXSkgPT4gdG8gJiYgaXNTdHJpbmcodG8pICYmIHRvLm1hdGNoKC8oLiopXFwvP25vZGVcXC8oXFxkKykuKi8pICE9PSBudWxsO1xuXG5jb25zdCBMYXVuY2hJY29uID0gc3R5bGVkKExhdW5jaClgXG4gIG1hcmdpbi1sZWZ0OiA2cHg7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi10b3A6IDFweDtcbmA7XG5cbnR5cGUgUHJvcHMgPSB7XG4gIHNob3dOZXdXaW5kb3dJY29uPzogYm9vbGVhbjtcbiAgY2hpbGRyZW4/OiBSZWFjdE5vZGU7XG59O1xuXG5leHBvcnQgdHlwZSBTYWZlTGlua1Byb3BzID0gUHJvcHMgJiBMaW5rUHJvcHMgJiBIVE1MQXR0cmlidXRlczxIVE1MRWxlbWVudD47XG5cbi8vIEZhbGxiYWNrIHRvIG5vcm1hbCBsaW5rIGlmIGFwcCBpcyBtaXNzaW5nIFJvdXRlckNvbnRleHQsIGxpbmsgaXMgZXh0ZXJuYWwgb3IgaXMgb2xkIG5kbGEgbGlua1xuY29uc3QgU2FmZUxpbmsgPSAoeyB0bywgcmVwbGFjZSwgY2hpbGRyZW4sIHNob3dOZXdXaW5kb3dJY29uLCAuLi5yZXN0IH06IFNhZmVMaW5rUHJvcHMpID0+IHtcbiAgY29uc3QgaXNNaXNzaW5nUm91dGVyQ29udGV4dCA9IHVzZUNvbnRleHQoTWlzc2luZ1JvdXRlckNvbnRleHQpO1xuXG4gIGlmIChpc01pc3NpbmdSb3V0ZXJDb250ZXh0IHx8IGlzRXh0ZXJuYWxMaW5rKHRvKSB8fCBpc09sZE5kbGFMaW5rKHRvKSkge1xuICAgIGNvbnN0IGhyZWYgPSB0eXBlb2YgdG8gPT09ICdzdHJpbmcnID8gdG8gOiAnIyc7XG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICAgIDxhIGhyZWY9e2hyZWZ9IHsuLi5yZXN0fT5cbiAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAge3Nob3dOZXdXaW5kb3dJY29uICYmIDxMYXVuY2hJY29uIHN0eWxlPXt7IHZlcnRpY2FsQWxpZ246ICd0ZXh0LXRvcCcgfX0gLz59XG4gICAgICAgIDwvYT5cbiAgICAgIDwvPlxuICAgICk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxMaW5rIHRhYkluZGV4PXswfSB0bz17dG99IHJlcGxhY2U9e3JlcGxhY2V9IHsuLi5yZXN0fT5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICAgIHtzaG93TmV3V2luZG93SWNvbiAmJiA8TGF1bmNoSWNvbiBzdHlsZT17eyB2ZXJ0aWNhbEFsaWduOiAndGV4dC10b3AnIH19IC8+fVxuICAgIDwvTGluaz5cbiAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IFNhZmVMaW5rO1xuIl19 */",
|
|
43
43
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
44
44
|
});
|
|
45
45
|
|
|
@@ -51,7 +51,7 @@ var SafeLink = function SafeLink(_ref) {
|
|
|
51
51
|
showNewWindowIcon = _ref.showNewWindowIcon,
|
|
52
52
|
rest = _objectWithoutProperties(_ref, ["to", "replace", "children", "showNewWindowIcon"]);
|
|
53
53
|
|
|
54
|
-
var isMissingRouterContext =
|
|
54
|
+
var isMissingRouterContext = useContext(MissingRouterContext);
|
|
55
55
|
|
|
56
56
|
if (isMissingRouterContext || isExternalLink(to) || isOldNdlaLink(to)) {
|
|
57
57
|
var href = typeof to === 'string' ? to : '#';
|
package/es/SafeLinkButton.js
CHANGED
|
@@ -66,7 +66,7 @@ var SafeLinkButton = function SafeLinkButton(_ref) {
|
|
|
66
66
|
var styles = ButtonStyles(buttonStyleProps);
|
|
67
67
|
return ___EmotionJSX(SafeLink, _extends({
|
|
68
68
|
to: to,
|
|
69
|
-
css: /*#__PURE__*/css(modifierStyles, " ", styles, ";label:SafeLinkButton;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
69
|
+
css: /*#__PURE__*/css(modifierStyles, " ", styles, ";label:SafeLinkButton;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNhZmVMaW5rQnV0dG9uLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxRmMiLCJmaWxlIjoiU2FmZUxpbmtCdXR0b24udHN4Iiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTktcHJlc2VudCwgTkRMQS5cbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBHUEx2MyBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuICpcbiAqL1xuXG5pbXBvcnQgUmVhY3QsIHsgSFRNTFByb3BzLCBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9jb3JlJztcbi8vIEB0cy1pZ25vcmVcbmltcG9ydCB7IGFwcGVhcmFuY2VzLCBCdXR0b25TdHlsZXMgfSBmcm9tICdAbmRsYS9idXR0b24nO1xuaW1wb3J0IFNhZmVMaW5rIGZyb20gJy4vU2FmZUxpbmsnO1xuXG5pbnRlcmZhY2UgU3R5bGVzUHJvcHMge1xuICBba2V5OiBzdHJpbmddOiBib29sZWFuIHwgdW5kZWZpbmVkO1xufVxuXG5jb25zdCBnZXRTdHlsZXMgPSAobW9kaWZpZXJzOiBTdHlsZXNQcm9wcykgPT5cbiAgT2JqZWN0LmtleXMobW9kaWZpZXJzKVxuICAgIC5tYXAoKGtleSkgPT4gKG1vZGlmaWVyc1trZXldID8gYXBwZWFyYW5jZXNba2V5XSA6IHVuZGVmaW5lZCkpXG4gICAgLmZpbHRlcigoYXBwZWFyYW5jZSkgPT4gISFhcHBlYXJhbmNlKTtcblxuaW50ZXJmYWNlIFByb3BzIGV4dGVuZHMgSFRNTFByb3BzPEhUTUxBbmNob3JFbGVtZW50PiB7XG4gIG91dGxpbmU/OiBib29sZWFuO1xuICBzdHJpcHBlZD86IGJvb2xlYW47XG4gIGxpbms/OiBib29sZWFuO1xuICBsaWdodGVyPzogYm9vbGVhbjtcbiAgaW52ZXJ0ZWQ/OiBib29sZWFuO1xuICBpbnZlcnRlZE91dGxpbmU/OiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3ROb2RlO1xuICB0bzogc3RyaW5nO1xuICBjbGFzc05hbWU/OiBzdHJpbmc7XG4gIGJ1dHRvblNpemU/OiAnbm9ybWFsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJztcbiAgYm9yZGVyU2hhcGU/OiAnbm9ybWFsJyB8ICdyb3VuZGVkJyB8ICdzaGFycGVuZWQnO1xuICB3aWR0aD86ICdhdXRvJyB8ICdmdWxsJztcbiAgdGV4dEFsaWduPzogJ2NlbnRlcicgfCAnbGVmdCcgfCAncmlnaHQnO1xuICBkYXJrZXI/OiBib29sZWFuO1xuICBncmV5TGlnaHRlcj86IGJvb2xlYW47XG4gIGdyZXlMaWdodGVzdD86IGJvb2xlYW47XG59XG5cbmNvbnN0IFNhZmVMaW5rQnV0dG9uID0gKHtcbiAgb3V0bGluZSxcbiAgc3RyaXBwZWQsXG4gIGxpbmssXG4gIGxpZ2h0ZXIsXG4gIGNoaWxkcmVuLFxuICBpbnZlcnRlZCxcbiAgaW52ZXJ0ZWRPdXRsaW5lLFxuICB0byxcbiAgYnV0dG9uU2l6ZSxcbiAgYm9yZGVyU2hhcGUsXG4gIHdpZHRoLFxuICB0ZXh0QWxpZ24sXG4gIGRhcmtlcixcbiAgZ3JleUxpZ2h0ZXIsXG4gIGdyZXlMaWdodGVzdCxcbiAgLi4ucmVzdFxufTogUHJvcHMpID0+IHtcbiAgY29uc3QgbW9kaWZpZXJTdHlsZXMgPSBnZXRTdHlsZXMoe1xuICAgIGxpbmssXG4gICAgb3V0bGluZSxcbiAgICBsaWdodGVyLFxuICAgIHN0cmlwcGVkLFxuICAgIGludmVydGVkLFxuICAgIGludmVydGVkT3V0bGluZSxcbiAgfSk7XG5cbiAgY29uc3QgYnV0dG9uU3R5bGVQcm9wcyA9IHtcbiAgICBvdXRsaW5lLFxuICAgIGxpZ2h0ZXIsXG4gICAgc2l6ZTogYnV0dG9uU2l6ZSxcbiAgICBib3JkZXJTaGFwZSxcbiAgICB3aWR0aCxcbiAgICB0ZXh0QWxpZ24sXG4gICAgZGFya2VyLFxuICAgIGdyZXlMaWdodGVyLFxuICAgIGdyZXlMaWdodGVzdCxcbiAgfTtcbiAgY29uc3Qgc3R5bGVzID0gQnV0dG9uU3R5bGVzKGJ1dHRvblN0eWxlUHJvcHMpO1xuXG4gIHJldHVybiAoXG4gICAgPFNhZmVMaW5rXG4gICAgICB0bz17dG99XG4gICAgICBjc3M9e2Nzc2BcbiAgICAgICAgJHttb2RpZmllclN0eWxlc31cbiAgICAgICAgJHtzdHlsZXN9XG4gICAgICBgfVxuICAgICAgey4uLnJlc3R9PlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvU2FmZUxpbms+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBTYWZlTGlua0J1dHRvbjtcbiJdfQ== */"))
|
|
70
70
|
}, rest), children);
|
|
71
71
|
};
|
|
72
72
|
|
|
@@ -5,6 +5,5 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
7
|
*/
|
|
8
|
-
|
|
9
|
-
declare const MissingRouterContext: React.Context<boolean>;
|
|
8
|
+
declare const MissingRouterContext: import("react").Context<boolean>;
|
|
10
9
|
export default MissingRouterContext;
|
|
@@ -5,9 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports["default"] = void 0;
|
|
7
7
|
|
|
8
|
-
var _react =
|
|
9
|
-
|
|
10
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
8
|
+
var _react = require("react");
|
|
11
9
|
|
|
12
10
|
/**
|
|
13
11
|
* Copyright (c) 2019-present, NDLA.
|
|
@@ -16,7 +14,6 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
|
|
|
16
14
|
* LICENSE file in the root directory of this source tree.
|
|
17
15
|
*
|
|
18
16
|
*/
|
|
19
|
-
var MissingRouterContext = /*#__PURE__*/_react
|
|
20
|
-
|
|
17
|
+
var MissingRouterContext = /*#__PURE__*/(0, _react.createContext)(false);
|
|
21
18
|
var _default = MissingRouterContext;
|
|
22
19
|
exports["default"] = _default;
|
package/lib/SafeLink.d.ts
CHANGED
|
@@ -5,12 +5,13 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
7
|
*/
|
|
8
|
-
import
|
|
8
|
+
import { HTMLAttributes, ReactNode } from 'react';
|
|
9
9
|
import { LinkProps } from 'react-router-dom';
|
|
10
10
|
export declare const isOldNdlaLink: (to?: string | import("history").LocationDescriptorObject<{} | null | undefined> | ((location: import("history").Location<{} | null | undefined>) => import("history").History.LocationDescriptor<{} | null | undefined>) | undefined) => boolean | "" | undefined;
|
|
11
11
|
declare type Props = {
|
|
12
12
|
showNewWindowIcon?: boolean;
|
|
13
|
+
children?: ReactNode;
|
|
13
14
|
};
|
|
14
|
-
export declare type SafeLinkProps = Props & LinkProps &
|
|
15
|
-
declare const SafeLink:
|
|
15
|
+
export declare type SafeLinkProps = Props & LinkProps & HTMLAttributes<HTMLElement>;
|
|
16
|
+
declare const SafeLink: ({ to, replace, children, showNewWindowIcon, ...rest }: SafeLinkProps) => JSX.Element;
|
|
16
17
|
export default SafeLink;
|
package/lib/SafeLink.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
@@ -7,7 +9,7 @@ exports["default"] = exports.isOldNdlaLink = void 0;
|
|
|
7
9
|
|
|
8
10
|
var _styledBase = _interopRequireDefault(require("@emotion/styled-base"));
|
|
9
11
|
|
|
10
|
-
var _react =
|
|
12
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
13
|
|
|
12
14
|
var _reactRouterDom = require("react-router-dom");
|
|
13
15
|
|
|
@@ -19,6 +21,10 @@ var _MissingRouterContext = _interopRequireDefault(require("./MissingRouterConte
|
|
|
19
21
|
|
|
20
22
|
var _core = require("@emotion/core");
|
|
21
23
|
|
|
24
|
+
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
|
|
25
|
+
|
|
26
|
+
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (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
|
+
|
|
22
28
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
23
29
|
|
|
24
30
|
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); }
|
|
@@ -47,7 +53,7 @@ var LaunchIcon = ( /*#__PURE__*/0, _styledBase["default"])(_common.Launch, {
|
|
|
47
53
|
} : {
|
|
48
54
|
name: "vum9tn",
|
|
49
55
|
styles: "margin-left:6px;height:auto;width:auto;margin-top:1px;",
|
|
50
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
56
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNhZmVMaW5rLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvQmlDIiwiZmlsZSI6IlNhZmVMaW5rLnRzeCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE5LXByZXNlbnQsIE5ETEEuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgR1BMdjMgbGljZW5zZSBmb3VuZCBpbiB0aGVcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbiAqXG4gKi9cblxuaW1wb3J0IFJlYWN0LCB7IEhUTUxBdHRyaWJ1dGVzLCBSZWFjdE5vZGUsIHVzZUNvbnRleHQgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBMaW5rLCBMaW5rUHJvcHMgfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IExhdW5jaCB9IGZyb20gJ0BuZGxhL2ljb25zL2NvbW1vbic7XG5pbXBvcnQgaXNTdHJpbmcgZnJvbSAnbG9kYXNoL2lzU3RyaW5nJztcbmltcG9ydCBNaXNzaW5nUm91dGVyQ29udGV4dCBmcm9tICcuL01pc3NpbmdSb3V0ZXJDb250ZXh0JztcblxuY29uc3QgaXNFeHRlcm5hbExpbmsgPSAodG8/OiBMaW5rUHJvcHNbJ3RvJ10pID0+XG4gIHRvICYmIGlzU3RyaW5nKHRvKSAmJiAodG8uc3RhcnRzV2l0aCgnaHR0cHM6Ly8nKSB8fCB0by5zdGFydHNXaXRoKCdodHRwOi8vJykpO1xuXG5leHBvcnQgY29uc3QgaXNPbGROZGxhTGluayA9ICh0bz86IExpbmtQcm9wc1sndG8nXSkgPT4gdG8gJiYgaXNTdHJpbmcodG8pICYmIHRvLm1hdGNoKC8oLiopXFwvP25vZGVcXC8oXFxkKykuKi8pICE9PSBudWxsO1xuXG5jb25zdCBMYXVuY2hJY29uID0gc3R5bGVkKExhdW5jaClgXG4gIG1hcmdpbi1sZWZ0OiA2cHg7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi10b3A6IDFweDtcbmA7XG5cbnR5cGUgUHJvcHMgPSB7XG4gIHNob3dOZXdXaW5kb3dJY29uPzogYm9vbGVhbjtcbiAgY2hpbGRyZW4/OiBSZWFjdE5vZGU7XG59O1xuXG5leHBvcnQgdHlwZSBTYWZlTGlua1Byb3BzID0gUHJvcHMgJiBMaW5rUHJvcHMgJiBIVE1MQXR0cmlidXRlczxIVE1MRWxlbWVudD47XG5cbi8vIEZhbGxiYWNrIHRvIG5vcm1hbCBsaW5rIGlmIGFwcCBpcyBtaXNzaW5nIFJvdXRlckNvbnRleHQsIGxpbmsgaXMgZXh0ZXJuYWwgb3IgaXMgb2xkIG5kbGEgbGlua1xuY29uc3QgU2FmZUxpbmsgPSAoeyB0bywgcmVwbGFjZSwgY2hpbGRyZW4sIHNob3dOZXdXaW5kb3dJY29uLCAuLi5yZXN0IH06IFNhZmVMaW5rUHJvcHMpID0+IHtcbiAgY29uc3QgaXNNaXNzaW5nUm91dGVyQ29udGV4dCA9IHVzZUNvbnRleHQoTWlzc2luZ1JvdXRlckNvbnRleHQpO1xuXG4gIGlmIChpc01pc3NpbmdSb3V0ZXJDb250ZXh0IHx8IGlzRXh0ZXJuYWxMaW5rKHRvKSB8fCBpc09sZE5kbGFMaW5rKHRvKSkge1xuICAgIGNvbnN0IGhyZWYgPSB0eXBlb2YgdG8gPT09ICdzdHJpbmcnID8gdG8gOiAnIyc7XG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICAgIDxhIGhyZWY9e2hyZWZ9IHsuLi5yZXN0fT5cbiAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAge3Nob3dOZXdXaW5kb3dJY29uICYmIDxMYXVuY2hJY29uIHN0eWxlPXt7IHZlcnRpY2FsQWxpZ246ICd0ZXh0LXRvcCcgfX0gLz59XG4gICAgICAgIDwvYT5cbiAgICAgIDwvPlxuICAgICk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxMaW5rIHRhYkluZGV4PXswfSB0bz17dG99IHJlcGxhY2U9e3JlcGxhY2V9IHsuLi5yZXN0fT5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICAgIHtzaG93TmV3V2luZG93SWNvbiAmJiA8TGF1bmNoSWNvbiBzdHlsZT17eyB2ZXJ0aWNhbEFsaWduOiAndGV4dC10b3AnIH19IC8+fVxuICAgIDwvTGluaz5cbiAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IFNhZmVMaW5rO1xuIl19 */",
|
|
51
57
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
52
58
|
});
|
|
53
59
|
|
|
@@ -59,7 +65,7 @@ var SafeLink = function SafeLink(_ref) {
|
|
|
59
65
|
showNewWindowIcon = _ref.showNewWindowIcon,
|
|
60
66
|
rest = _objectWithoutProperties(_ref, ["to", "replace", "children", "showNewWindowIcon"]);
|
|
61
67
|
|
|
62
|
-
var isMissingRouterContext = _react
|
|
68
|
+
var isMissingRouterContext = (0, _react.useContext)(_MissingRouterContext["default"]);
|
|
63
69
|
|
|
64
70
|
if (isMissingRouterContext || isExternalLink(to) || isOldNdlaLink(to)) {
|
|
65
71
|
var href = typeof to === 'string' ? to : '#';
|
package/lib/SafeLinkButton.d.ts
CHANGED
|
@@ -5,15 +5,15 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
7
|
*/
|
|
8
|
-
import
|
|
9
|
-
interface Props {
|
|
8
|
+
import { HTMLProps, ReactNode } from 'react';
|
|
9
|
+
interface Props extends HTMLProps<HTMLAnchorElement> {
|
|
10
10
|
outline?: boolean;
|
|
11
11
|
stripped?: boolean;
|
|
12
12
|
link?: boolean;
|
|
13
13
|
lighter?: boolean;
|
|
14
14
|
inverted?: boolean;
|
|
15
15
|
invertedOutline?: boolean;
|
|
16
|
-
children:
|
|
16
|
+
children: ReactNode;
|
|
17
17
|
to: string;
|
|
18
18
|
className?: string;
|
|
19
19
|
buttonSize?: 'normal' | 'medium' | 'large';
|
|
@@ -24,5 +24,5 @@ interface Props {
|
|
|
24
24
|
greyLighter?: boolean;
|
|
25
25
|
greyLightest?: boolean;
|
|
26
26
|
}
|
|
27
|
-
declare const SafeLinkButton:
|
|
27
|
+
declare const SafeLinkButton: ({ outline, stripped, link, lighter, children, inverted, invertedOutline, to, buttonSize, borderShape, width, textAlign, darker, greyLighter, greyLightest, ...rest }: Props) => JSX.Element;
|
|
28
28
|
export default SafeLinkButton;
|
package/lib/SafeLinkButton.js
CHANGED
|
@@ -69,7 +69,7 @@ var SafeLinkButton = function SafeLinkButton(_ref) {
|
|
|
69
69
|
var styles = (0, _button.ButtonStyles)(buttonStyleProps);
|
|
70
70
|
return (0, _core.jsx)(_SafeLink["default"], _extends({
|
|
71
71
|
to: to,
|
|
72
|
-
css: /*#__PURE__*/(0, _core.css)(modifierStyles, " ", styles, ";label:SafeLinkButton;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
72
|
+
css: /*#__PURE__*/(0, _core.css)(modifierStyles, " ", styles, ";label:SafeLinkButton;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNhZmVMaW5rQnV0dG9uLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxRmMiLCJmaWxlIjoiU2FmZUxpbmtCdXR0b24udHN4Iiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTktcHJlc2VudCwgTkRMQS5cbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBHUEx2MyBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuICpcbiAqL1xuXG5pbXBvcnQgUmVhY3QsIHsgSFRNTFByb3BzLCBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9jb3JlJztcbi8vIEB0cy1pZ25vcmVcbmltcG9ydCB7IGFwcGVhcmFuY2VzLCBCdXR0b25TdHlsZXMgfSBmcm9tICdAbmRsYS9idXR0b24nO1xuaW1wb3J0IFNhZmVMaW5rIGZyb20gJy4vU2FmZUxpbmsnO1xuXG5pbnRlcmZhY2UgU3R5bGVzUHJvcHMge1xuICBba2V5OiBzdHJpbmddOiBib29sZWFuIHwgdW5kZWZpbmVkO1xufVxuXG5jb25zdCBnZXRTdHlsZXMgPSAobW9kaWZpZXJzOiBTdHlsZXNQcm9wcykgPT5cbiAgT2JqZWN0LmtleXMobW9kaWZpZXJzKVxuICAgIC5tYXAoKGtleSkgPT4gKG1vZGlmaWVyc1trZXldID8gYXBwZWFyYW5jZXNba2V5XSA6IHVuZGVmaW5lZCkpXG4gICAgLmZpbHRlcigoYXBwZWFyYW5jZSkgPT4gISFhcHBlYXJhbmNlKTtcblxuaW50ZXJmYWNlIFByb3BzIGV4dGVuZHMgSFRNTFByb3BzPEhUTUxBbmNob3JFbGVtZW50PiB7XG4gIG91dGxpbmU/OiBib29sZWFuO1xuICBzdHJpcHBlZD86IGJvb2xlYW47XG4gIGxpbms/OiBib29sZWFuO1xuICBsaWdodGVyPzogYm9vbGVhbjtcbiAgaW52ZXJ0ZWQ/OiBib29sZWFuO1xuICBpbnZlcnRlZE91dGxpbmU/OiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3ROb2RlO1xuICB0bzogc3RyaW5nO1xuICBjbGFzc05hbWU/OiBzdHJpbmc7XG4gIGJ1dHRvblNpemU/OiAnbm9ybWFsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJztcbiAgYm9yZGVyU2hhcGU/OiAnbm9ybWFsJyB8ICdyb3VuZGVkJyB8ICdzaGFycGVuZWQnO1xuICB3aWR0aD86ICdhdXRvJyB8ICdmdWxsJztcbiAgdGV4dEFsaWduPzogJ2NlbnRlcicgfCAnbGVmdCcgfCAncmlnaHQnO1xuICBkYXJrZXI/OiBib29sZWFuO1xuICBncmV5TGlnaHRlcj86IGJvb2xlYW47XG4gIGdyZXlMaWdodGVzdD86IGJvb2xlYW47XG59XG5cbmNvbnN0IFNhZmVMaW5rQnV0dG9uID0gKHtcbiAgb3V0bGluZSxcbiAgc3RyaXBwZWQsXG4gIGxpbmssXG4gIGxpZ2h0ZXIsXG4gIGNoaWxkcmVuLFxuICBpbnZlcnRlZCxcbiAgaW52ZXJ0ZWRPdXRsaW5lLFxuICB0byxcbiAgYnV0dG9uU2l6ZSxcbiAgYm9yZGVyU2hhcGUsXG4gIHdpZHRoLFxuICB0ZXh0QWxpZ24sXG4gIGRhcmtlcixcbiAgZ3JleUxpZ2h0ZXIsXG4gIGdyZXlMaWdodGVzdCxcbiAgLi4ucmVzdFxufTogUHJvcHMpID0+IHtcbiAgY29uc3QgbW9kaWZpZXJTdHlsZXMgPSBnZXRTdHlsZXMoe1xuICAgIGxpbmssXG4gICAgb3V0bGluZSxcbiAgICBsaWdodGVyLFxuICAgIHN0cmlwcGVkLFxuICAgIGludmVydGVkLFxuICAgIGludmVydGVkT3V0bGluZSxcbiAgfSk7XG5cbiAgY29uc3QgYnV0dG9uU3R5bGVQcm9wcyA9IHtcbiAgICBvdXRsaW5lLFxuICAgIGxpZ2h0ZXIsXG4gICAgc2l6ZTogYnV0dG9uU2l6ZSxcbiAgICBib3JkZXJTaGFwZSxcbiAgICB3aWR0aCxcbiAgICB0ZXh0QWxpZ24sXG4gICAgZGFya2VyLFxuICAgIGdyZXlMaWdodGVyLFxuICAgIGdyZXlMaWdodGVzdCxcbiAgfTtcbiAgY29uc3Qgc3R5bGVzID0gQnV0dG9uU3R5bGVzKGJ1dHRvblN0eWxlUHJvcHMpO1xuXG4gIHJldHVybiAoXG4gICAgPFNhZmVMaW5rXG4gICAgICB0bz17dG99XG4gICAgICBjc3M9e2Nzc2BcbiAgICAgICAgJHttb2RpZmllclN0eWxlc31cbiAgICAgICAgJHtzdHlsZXN9XG4gICAgICBgfVxuICAgICAgey4uLnJlc3R9PlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvU2FmZUxpbms+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBTYWZlTGlua0J1dHRvbjtcbiJdfQ== */"))
|
|
73
73
|
}, rest), children);
|
|
74
74
|
};
|
|
75
75
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ndla/safelink",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.11",
|
|
4
4
|
"description": "SafeLink component for NDLA",
|
|
5
5
|
"license": "GPL-3.0",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"es"
|
|
27
27
|
],
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@ndla/icons": "^1.
|
|
29
|
+
"@ndla/icons": "^1.5.0"
|
|
30
30
|
},
|
|
31
31
|
"peerDependencies": {
|
|
32
32
|
"@emotion/core": "^10.0.35",
|
|
@@ -38,5 +38,5 @@
|
|
|
38
38
|
"publishConfig": {
|
|
39
39
|
"access": "public"
|
|
40
40
|
},
|
|
41
|
-
"gitHead": "
|
|
41
|
+
"gitHead": "63132efa78e4835f583b9f5bf65f1479effb884a"
|
|
42
42
|
}
|