react-router-dom 5.2.0 → 5.3.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/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) React Training 2016-2018
3
+ Copyright (c) React Training
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # react-router-dom
2
2
 
3
- DOM bindings for [React Router](https://reacttraining.com/react-router).
3
+ DOM bindings for [React Router](https://reactrouter.com).
4
4
 
5
5
  ## Installation
6
6
 
@@ -30,7 +30,7 @@ You can find the library on `window.ReactRouterDOM`.
30
30
 
31
31
  ## Issues
32
32
 
33
- If you find a bug, please file an issue on [our issue tracker on GitHub](https://github.com/ReactTraining/react-router/issues).
33
+ If you find a bug, please file an issue on [our issue tracker on GitHub](https://github.com/remix-run/react-router/issues).
34
34
 
35
35
  ## Credits
36
36
 
@@ -30,7 +30,17 @@ function _extends() {
30
30
  function _inheritsLoose(subClass, superClass) {
31
31
  subClass.prototype = Object.create(superClass.prototype);
32
32
  subClass.prototype.constructor = subClass;
33
- subClass.__proto__ = superClass;
33
+
34
+ _setPrototypeOf(subClass, superClass);
35
+ }
36
+
37
+ function _setPrototypeOf(o, p) {
38
+ _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
39
+ o.__proto__ = p;
40
+ return o;
41
+ };
42
+
43
+ return _setPrototypeOf(o, p);
34
44
  }
35
45
 
36
46
  function _objectWithoutPropertiesLoose(source, excluded) {
@@ -52,9 +62,7 @@ function _objectWithoutPropertiesLoose(source, excluded) {
52
62
  * The public API for a <Router> that uses HTML5 history.
53
63
  */
54
64
 
55
- var BrowserRouter =
56
- /*#__PURE__*/
57
- function (_React$Component) {
65
+ var BrowserRouter = /*#__PURE__*/function (_React$Component) {
58
66
  _inheritsLoose(BrowserRouter, _React$Component);
59
67
 
60
68
  function BrowserRouter() {
@@ -72,7 +80,7 @@ function (_React$Component) {
72
80
  var _proto = BrowserRouter.prototype;
73
81
 
74
82
  _proto.render = function render() {
75
- return React.createElement(reactRouter.Router, {
83
+ return /*#__PURE__*/React.createElement(reactRouter.Router, {
76
84
  history: this.history,
77
85
  children: this.props.children
78
86
  });
@@ -99,9 +107,7 @@ function (_React$Component) {
99
107
  * The public API for a <Router> that uses window.location.hash.
100
108
  */
101
109
 
102
- var HashRouter =
103
- /*#__PURE__*/
104
- function (_React$Component) {
110
+ var HashRouter = /*#__PURE__*/function (_React$Component) {
105
111
  _inheritsLoose(HashRouter, _React$Component);
106
112
 
107
113
  function HashRouter() {
@@ -119,7 +125,7 @@ function (_React$Component) {
119
125
  var _proto = HashRouter.prototype;
120
126
 
121
127
  _proto.render = function render() {
122
- return React.createElement(reactRouter.Router, {
128
+ return /*#__PURE__*/React.createElement(reactRouter.Router, {
123
129
  history: this.history,
124
130
  children: this.props.children
125
131
  });
@@ -199,7 +205,7 @@ var LinkAnchor = forwardRef(function (_ref, forwardedRef) {
199
205
  /* eslint-disable-next-line jsx-a11y/anchor-has-content */
200
206
 
201
207
 
202
- return React.createElement("a", props);
208
+ return /*#__PURE__*/React.createElement("a", props);
203
209
  });
204
210
 
205
211
  {
@@ -218,17 +224,18 @@ var Link = forwardRef(function (_ref2, forwardedRef) {
218
224
  innerRef = _ref2.innerRef,
219
225
  rest = _objectWithoutPropertiesLoose(_ref2, ["component", "replace", "to", "innerRef"]);
220
226
 
221
- return React.createElement(reactRouter.__RouterContext.Consumer, null, function (context) {
227
+ return /*#__PURE__*/React.createElement(reactRouter.__RouterContext.Consumer, null, function (context) {
222
228
  !context ? invariant(false, "You should not use <Link> outside a <Router>") : void 0;
223
- var history = context.history;
229
+ var history$1 = context.history;
224
230
  var location = normalizeToLocation(resolveToLocation(to, context.location), context.location);
225
- var href = location ? history.createHref(location) : "";
231
+ var href = location ? history$1.createHref(location) : "";
226
232
 
227
233
  var props = _extends({}, rest, {
228
234
  href: href,
229
235
  navigate: function navigate() {
230
236
  var location = resolveToLocation(to, context.location);
231
- var method = replace ? history.replace : history.push;
237
+ var isDuplicateNavigation = history.createPath(context.location) === history.createPath(normalizeToLocation(location));
238
+ var method = replace || isDuplicateNavigation ? history$1.replace : history$1.push;
232
239
  method(location);
233
240
  }
234
241
  }); // React 15 compat
@@ -240,7 +247,7 @@ var Link = forwardRef(function (_ref2, forwardedRef) {
240
247
  props.innerRef = innerRef;
241
248
  }
242
249
 
243
- return React.createElement(component, props);
250
+ return /*#__PURE__*/React.createElement(component, props);
244
251
  });
245
252
  });
246
253
 
@@ -300,7 +307,7 @@ var NavLink = forwardRef$1(function (_ref, forwardedRef) {
300
307
  innerRef = _ref.innerRef,
301
308
  rest = _objectWithoutPropertiesLoose(_ref, ["aria-current", "activeClassName", "activeStyle", "className", "exact", "isActive", "location", "sensitive", "strict", "style", "to", "innerRef"]);
302
309
 
303
- return React.createElement(reactRouter.__RouterContext.Consumer, null, function (context) {
310
+ return /*#__PURE__*/React.createElement(reactRouter.__RouterContext.Consumer, null, function (context) {
304
311
  !context ? invariant(false, "You should not use <NavLink> outside a <Router>") : void 0;
305
312
  var currentLocation = locationProp || context.location;
306
313
  var toLocation = normalizeToLocation(resolveToLocation(to, currentLocation), currentLocation);
@@ -314,8 +321,13 @@ var NavLink = forwardRef$1(function (_ref, forwardedRef) {
314
321
  strict: strict
315
322
  }) : null;
316
323
  var isActive = !!(isActiveProp ? isActiveProp(match, currentLocation) : match);
317
- var className = isActive ? joinClassnames(classNameProp, activeClassName) : classNameProp;
318
- var style = isActive ? _extends({}, styleProp, {}, activeStyle) : styleProp;
324
+ var className = typeof classNameProp === "function" ? classNameProp(isActive) : classNameProp;
325
+ var style = typeof styleProp === "function" ? styleProp(isActive) : styleProp;
326
+
327
+ if (isActive) {
328
+ className = joinClassnames(className, activeClassName);
329
+ style = _extends({}, style, activeStyle);
330
+ }
319
331
 
320
332
  var props = _extends({
321
333
  "aria-current": isActive && ariaCurrent || null,
@@ -331,24 +343,24 @@ var NavLink = forwardRef$1(function (_ref, forwardedRef) {
331
343
  props.innerRef = innerRef;
332
344
  }
333
345
 
334
- return React.createElement(Link, props);
346
+ return /*#__PURE__*/React.createElement(Link, props);
335
347
  });
336
348
  });
337
349
 
338
350
  {
339
351
  NavLink.displayName = "NavLink";
340
- var ariaCurrentType = PropTypes.oneOf(["page", "step", "location", "date", "time", "true"]);
352
+ var ariaCurrentType = PropTypes.oneOf(["page", "step", "location", "date", "time", "true", "false"]);
341
353
  NavLink.propTypes = _extends({}, Link.propTypes, {
342
354
  "aria-current": ariaCurrentType,
343
355
  activeClassName: PropTypes.string,
344
356
  activeStyle: PropTypes.object,
345
- className: PropTypes.string,
357
+ className: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),
346
358
  exact: PropTypes.bool,
347
359
  isActive: PropTypes.func,
348
360
  location: PropTypes.object,
349
361
  sensitive: PropTypes.bool,
350
362
  strict: PropTypes.bool,
351
- style: PropTypes.object
363
+ style: PropTypes.oneOfType([PropTypes.object, PropTypes.func])
352
364
  });
353
365
  }
354
366
 
@@ -1 +1 @@
1
- {"version":3,"file":"react-router-dom.js","sources":["../modules/BrowserRouter.js","../modules/HashRouter.js","../modules/utils/locationUtils.js","../modules/Link.js","../modules/NavLink.js"],"sourcesContent":["import React from \"react\";\nimport { Router } from \"react-router\";\nimport { createBrowserHistory as createHistory } from \"history\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\n/**\n * The public API for a <Router> that uses HTML5 history.\n */\nclass BrowserRouter extends React.Component {\n history = createHistory(this.props);\n\n render() {\n return <Router history={this.history} children={this.props.children} />;\n }\n}\n\nif (__DEV__) {\n BrowserRouter.propTypes = {\n basename: PropTypes.string,\n children: PropTypes.node,\n forceRefresh: PropTypes.bool,\n getUserConfirmation: PropTypes.func,\n keyLength: PropTypes.number\n };\n\n BrowserRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \"<BrowserRouter> ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { BrowserRouter as Router }`.\"\n );\n };\n}\n\nexport default BrowserRouter;\n","import React from \"react\";\nimport { Router } from \"react-router\";\nimport { createHashHistory as createHistory } from \"history\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\n/**\n * The public API for a <Router> that uses window.location.hash.\n */\nclass HashRouter extends React.Component {\n history = createHistory(this.props);\n\n render() {\n return <Router history={this.history} children={this.props.children} />;\n }\n}\n\nif (__DEV__) {\n HashRouter.propTypes = {\n basename: PropTypes.string,\n children: PropTypes.node,\n getUserConfirmation: PropTypes.func,\n hashType: PropTypes.oneOf([\"hashbang\", \"noslash\", \"slash\"])\n };\n\n HashRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \"<HashRouter> ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { HashRouter as Router }`.\"\n );\n };\n}\n\nexport default HashRouter;\n","import { createLocation } from \"history\";\n\nexport const resolveToLocation = (to, currentLocation) =>\n typeof to === \"function\" ? to(currentLocation) : to;\n\nexport const normalizeToLocation = (to, currentLocation) => {\n return typeof to === \"string\"\n ? createLocation(to, null, null, currentLocation)\n : to;\n};\n","import React from \"react\";\nimport { __RouterContext as RouterContext } from \"react-router\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport {\n resolveToLocation,\n normalizeToLocation\n} from \"./utils/locationUtils.js\";\n\n// React 15 compat\nconst forwardRefShim = C => C;\nlet { forwardRef } = React;\nif (typeof forwardRef === \"undefined\") {\n forwardRef = forwardRefShim;\n}\n\nfunction isModifiedEvent(event) {\n return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n}\n\nconst LinkAnchor = forwardRef(\n (\n {\n innerRef, // TODO: deprecate\n navigate,\n onClick,\n ...rest\n },\n forwardedRef\n ) => {\n const { target } = rest;\n\n let props = {\n ...rest,\n onClick: event => {\n try {\n if (onClick) onClick(event);\n } catch (ex) {\n event.preventDefault();\n throw ex;\n }\n\n if (\n !event.defaultPrevented && // onClick prevented default\n event.button === 0 && // ignore everything but left clicks\n (!target || target === \"_self\") && // let browser handle \"target=_blank\" etc.\n !isModifiedEvent(event) // ignore clicks with modifier keys\n ) {\n event.preventDefault();\n navigate();\n }\n }\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.ref = innerRef;\n }\n\n /* eslint-disable-next-line jsx-a11y/anchor-has-content */\n return <a {...props} />;\n }\n);\n\nif (__DEV__) {\n LinkAnchor.displayName = \"LinkAnchor\";\n}\n\n/**\n * The public API for rendering a history-aware <a>.\n */\nconst Link = forwardRef(\n (\n {\n component = LinkAnchor,\n replace,\n to,\n innerRef, // TODO: deprecate\n ...rest\n },\n forwardedRef\n ) => {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <Link> outside a <Router>\");\n\n const { history } = context;\n\n const location = normalizeToLocation(\n resolveToLocation(to, context.location),\n context.location\n );\n\n const href = location ? history.createHref(location) : \"\";\n const props = {\n ...rest,\n href,\n navigate() {\n const location = resolveToLocation(to, context.location);\n const method = replace ? history.replace : history.push;\n\n method(location);\n }\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.innerRef = innerRef;\n }\n\n return React.createElement(component, props);\n }}\n </RouterContext.Consumer>\n );\n }\n);\n\nif (__DEV__) {\n const toType = PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n PropTypes.func\n ]);\n const refType = PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.shape({ current: PropTypes.any })\n ]);\n\n Link.displayName = \"Link\";\n\n Link.propTypes = {\n innerRef: refType,\n onClick: PropTypes.func,\n replace: PropTypes.bool,\n target: PropTypes.string,\n to: toType.isRequired\n };\n}\n\nexport default Link;\n","import React from \"react\";\nimport { __RouterContext as RouterContext, matchPath } from \"react-router\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport Link from \"./Link.js\";\nimport {\n resolveToLocation,\n normalizeToLocation\n} from \"./utils/locationUtils.js\";\n\n// React 15 compat\nconst forwardRefShim = C => C;\nlet { forwardRef } = React;\nif (typeof forwardRef === \"undefined\") {\n forwardRef = forwardRefShim;\n}\n\nfunction joinClassnames(...classnames) {\n return classnames.filter(i => i).join(\" \");\n}\n\n/**\n * A <Link> wrapper that knows if it's \"active\" or not.\n */\nconst NavLink = forwardRef(\n (\n {\n \"aria-current\": ariaCurrent = \"page\",\n activeClassName = \"active\",\n activeStyle,\n className: classNameProp,\n exact,\n isActive: isActiveProp,\n location: locationProp,\n sensitive,\n strict,\n style: styleProp,\n to,\n innerRef, // TODO: deprecate\n ...rest\n },\n forwardedRef\n ) => {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <NavLink> outside a <Router>\");\n\n const currentLocation = locationProp || context.location;\n const toLocation = normalizeToLocation(\n resolveToLocation(to, currentLocation),\n currentLocation\n );\n const { pathname: path } = toLocation;\n // Regex taken from: https://github.com/pillarjs/path-to-regexp/blob/master/index.js#L202\n const escapedPath =\n path && path.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, \"\\\\$1\");\n\n const match = escapedPath\n ? matchPath(currentLocation.pathname, {\n path: escapedPath,\n exact,\n sensitive,\n strict\n })\n : null;\n const isActive = !!(isActiveProp\n ? isActiveProp(match, currentLocation)\n : match);\n\n const className = isActive\n ? joinClassnames(classNameProp, activeClassName)\n : classNameProp;\n const style = isActive ? { ...styleProp, ...activeStyle } : styleProp;\n\n const props = {\n \"aria-current\": (isActive && ariaCurrent) || null,\n className,\n style,\n to: toLocation,\n ...rest\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.innerRef = innerRef;\n }\n\n return <Link {...props} />;\n }}\n </RouterContext.Consumer>\n );\n }\n);\n\nif (__DEV__) {\n NavLink.displayName = \"NavLink\";\n\n const ariaCurrentType = PropTypes.oneOf([\n \"page\",\n \"step\",\n \"location\",\n \"date\",\n \"time\",\n \"true\"\n ]);\n\n NavLink.propTypes = {\n ...Link.propTypes,\n \"aria-current\": ariaCurrentType,\n activeClassName: PropTypes.string,\n activeStyle: PropTypes.object,\n className: PropTypes.string,\n exact: PropTypes.bool,\n isActive: PropTypes.func,\n location: PropTypes.object,\n sensitive: PropTypes.bool,\n strict: PropTypes.bool,\n style: PropTypes.object\n };\n}\n\nexport default NavLink;\n"],"names":["BrowserRouter","history","createHistory","props","render","Router","children","React","Component","propTypes","basename","PropTypes","string","node","forceRefresh","bool","getUserConfirmation","func","keyLength","number","prototype","componentDidMount","warning","HashRouter","hashType","oneOf","resolveToLocation","to","currentLocation","normalizeToLocation","createLocation","forwardRefShim","C","forwardRef","isModifiedEvent","event","metaKey","altKey","ctrlKey","shiftKey","LinkAnchor","forwardedRef","innerRef","navigate","onClick","rest","target","ex","preventDefault","defaultPrevented","button","ref","displayName","Link","component","replace","RouterContext","context","invariant","location","href","createHref","method","push","createElement","toType","oneOfType","object","refType","shape","current","any","isRequired","joinClassnames","classnames","filter","i","join","NavLink","ariaCurrent","activeClassName","activeStyle","classNameProp","className","exact","isActiveProp","isActive","locationProp","sensitive","strict","styleProp","style","toLocation","path","pathname","escapedPath","match","matchPath","ariaCurrentType"],"mappings":"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"}
1
+ {"version":3,"file":"react-router-dom.js","sources":["../modules/BrowserRouter.js","../modules/HashRouter.js","../modules/utils/locationUtils.js","../modules/Link.js","../modules/NavLink.js"],"sourcesContent":["import React from \"react\";\nimport { Router } from \"react-router\";\nimport { createBrowserHistory as createHistory } from \"history\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\n/**\n * The public API for a <Router> that uses HTML5 history.\n */\nclass BrowserRouter extends React.Component {\n history = createHistory(this.props);\n\n render() {\n return <Router history={this.history} children={this.props.children} />;\n }\n}\n\nif (__DEV__) {\n BrowserRouter.propTypes = {\n basename: PropTypes.string,\n children: PropTypes.node,\n forceRefresh: PropTypes.bool,\n getUserConfirmation: PropTypes.func,\n keyLength: PropTypes.number\n };\n\n BrowserRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \"<BrowserRouter> ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { BrowserRouter as Router }`.\"\n );\n };\n}\n\nexport default BrowserRouter;\n","import React from \"react\";\nimport { Router } from \"react-router\";\nimport { createHashHistory as createHistory } from \"history\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\n/**\n * The public API for a <Router> that uses window.location.hash.\n */\nclass HashRouter extends React.Component {\n history = createHistory(this.props);\n\n render() {\n return <Router history={this.history} children={this.props.children} />;\n }\n}\n\nif (__DEV__) {\n HashRouter.propTypes = {\n basename: PropTypes.string,\n children: PropTypes.node,\n getUserConfirmation: PropTypes.func,\n hashType: PropTypes.oneOf([\"hashbang\", \"noslash\", \"slash\"])\n };\n\n HashRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \"<HashRouter> ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { HashRouter as Router }`.\"\n );\n };\n}\n\nexport default HashRouter;\n","import { createLocation } from \"history\";\n\nexport const resolveToLocation = (to, currentLocation) =>\n typeof to === \"function\" ? to(currentLocation) : to;\n\nexport const normalizeToLocation = (to, currentLocation) => {\n return typeof to === \"string\"\n ? createLocation(to, null, null, currentLocation)\n : to;\n};\n","import React from \"react\";\nimport { __RouterContext as RouterContext } from \"react-router\";\nimport { createPath } from 'history';\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport {\n resolveToLocation,\n normalizeToLocation\n} from \"./utils/locationUtils.js\";\n\n// React 15 compat\nconst forwardRefShim = C => C;\nlet { forwardRef } = React;\nif (typeof forwardRef === \"undefined\") {\n forwardRef = forwardRefShim;\n}\n\nfunction isModifiedEvent(event) {\n return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n}\n\nconst LinkAnchor = forwardRef(\n (\n {\n innerRef, // TODO: deprecate\n navigate,\n onClick,\n ...rest\n },\n forwardedRef\n ) => {\n const { target } = rest;\n\n let props = {\n ...rest,\n onClick: event => {\n try {\n if (onClick) onClick(event);\n } catch (ex) {\n event.preventDefault();\n throw ex;\n }\n\n if (\n !event.defaultPrevented && // onClick prevented default\n event.button === 0 && // ignore everything but left clicks\n (!target || target === \"_self\") && // let browser handle \"target=_blank\" etc.\n !isModifiedEvent(event) // ignore clicks with modifier keys\n ) {\n event.preventDefault();\n navigate();\n }\n }\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.ref = innerRef;\n }\n\n /* eslint-disable-next-line jsx-a11y/anchor-has-content */\n return <a {...props} />;\n }\n);\n\nif (__DEV__) {\n LinkAnchor.displayName = \"LinkAnchor\";\n}\n\n/**\n * The public API for rendering a history-aware <a>.\n */\nconst Link = forwardRef(\n (\n {\n component = LinkAnchor,\n replace,\n to,\n innerRef, // TODO: deprecate\n ...rest\n },\n forwardedRef\n ) => {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <Link> outside a <Router>\");\n\n const { history } = context;\n\n const location = normalizeToLocation(\n resolveToLocation(to, context.location),\n context.location\n );\n\n const href = location ? history.createHref(location) : \"\";\n const props = {\n ...rest,\n href,\n navigate() {\n const location = resolveToLocation(to, context.location);\n const isDuplicateNavigation = createPath(context.location) === createPath(normalizeToLocation(location));\n const method = (replace || isDuplicateNavigation) ? history.replace : history.push;\n\n method(location);\n }\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.innerRef = innerRef;\n }\n\n return React.createElement(component, props);\n }}\n </RouterContext.Consumer>\n );\n }\n);\n\nif (__DEV__) {\n const toType = PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n PropTypes.func\n ]);\n const refType = PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.shape({ current: PropTypes.any })\n ]);\n\n Link.displayName = \"Link\";\n\n Link.propTypes = {\n innerRef: refType,\n onClick: PropTypes.func,\n replace: PropTypes.bool,\n target: PropTypes.string,\n to: toType.isRequired\n };\n}\n\nexport default Link;\n","import React from \"react\";\nimport { __RouterContext as RouterContext, matchPath } from \"react-router\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport Link from \"./Link.js\";\nimport {\n resolveToLocation,\n normalizeToLocation\n} from \"./utils/locationUtils.js\";\n\n// React 15 compat\nconst forwardRefShim = C => C;\nlet { forwardRef } = React;\nif (typeof forwardRef === \"undefined\") {\n forwardRef = forwardRefShim;\n}\n\nfunction joinClassnames(...classnames) {\n return classnames.filter(i => i).join(\" \");\n}\n\n/**\n * A <Link> wrapper that knows if it's \"active\" or not.\n */\nconst NavLink = forwardRef(\n (\n {\n \"aria-current\": ariaCurrent = \"page\",\n activeClassName = \"active\", // TODO: deprecate\n activeStyle, // TODO: deprecate\n className: classNameProp,\n exact,\n isActive: isActiveProp,\n location: locationProp,\n sensitive,\n strict,\n style: styleProp,\n to,\n innerRef, // TODO: deprecate\n ...rest\n },\n forwardedRef\n ) => {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <NavLink> outside a <Router>\");\n\n const currentLocation = locationProp || context.location;\n const toLocation = normalizeToLocation(\n resolveToLocation(to, currentLocation),\n currentLocation\n );\n const { pathname: path } = toLocation;\n // Regex taken from: https://github.com/pillarjs/path-to-regexp/blob/master/index.js#L202\n const escapedPath =\n path && path.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, \"\\\\$1\");\n\n const match = escapedPath\n ? matchPath(currentLocation.pathname, {\n path: escapedPath,\n exact,\n sensitive,\n strict\n })\n : null;\n const isActive = !!(isActiveProp\n ? isActiveProp(match, currentLocation)\n : match);\n\n let className =\n typeof classNameProp === \"function\"\n ? classNameProp(isActive)\n : classNameProp;\n\n let style =\n typeof styleProp === \"function\" ? styleProp(isActive) : styleProp;\n\n if (isActive) {\n className = joinClassnames(className, activeClassName);\n style = { ...style, ...activeStyle };\n }\n\n const props = {\n \"aria-current\": (isActive && ariaCurrent) || null,\n className,\n style,\n to: toLocation,\n ...rest\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.innerRef = innerRef;\n }\n\n return <Link {...props} />;\n }}\n </RouterContext.Consumer>\n );\n }\n);\n\nif (__DEV__) {\n NavLink.displayName = \"NavLink\";\n\n const ariaCurrentType = PropTypes.oneOf([\n \"page\",\n \"step\",\n \"location\",\n \"date\",\n \"time\",\n \"true\",\n \"false\"\n ]);\n\n NavLink.propTypes = {\n ...Link.propTypes,\n \"aria-current\": ariaCurrentType,\n activeClassName: PropTypes.string,\n activeStyle: PropTypes.object,\n className: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n exact: PropTypes.bool,\n isActive: PropTypes.func,\n location: PropTypes.object,\n sensitive: PropTypes.bool,\n strict: PropTypes.bool,\n style: PropTypes.oneOfType([PropTypes.object, PropTypes.func])\n };\n}\n\nexport default NavLink;\n"],"names":["BrowserRouter","history","createHistory","props","render","Router","children","React","Component","propTypes","basename","PropTypes","string","node","forceRefresh","bool","getUserConfirmation","func","keyLength","number","prototype","componentDidMount","warning","HashRouter","hashType","oneOf","resolveToLocation","to","currentLocation","normalizeToLocation","createLocation","forwardRefShim","C","forwardRef","isModifiedEvent","event","metaKey","altKey","ctrlKey","shiftKey","LinkAnchor","forwardedRef","innerRef","navigate","onClick","rest","target","ex","preventDefault","defaultPrevented","button","ref","displayName","Link","component","replace","RouterContext","context","invariant","location","href","createHref","isDuplicateNavigation","createPath","method","push","createElement","toType","oneOfType","object","refType","shape","current","any","isRequired","joinClassnames","classnames","filter","i","join","NavLink","ariaCurrent","activeClassName","activeStyle","classNameProp","className","exact","isActiveProp","isActive","locationProp","sensitive","strict","styleProp","style","toLocation","path","pathname","escapedPath","match","matchPath","ariaCurrentType"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";function _interopDefault(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var reactRouter=require("react-router"),React=_interopDefault(require("react")),history=require("history");require("prop-types"),require("tiny-warning");var invariant=_interopDefault(require("tiny-invariant"));function _extends(){return(_extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o])}return e}).apply(this,arguments)}function _inheritsLoose(e,t){e.prototype=Object.create(t.prototype),(e.prototype.constructor=e).__proto__=t}function _objectWithoutPropertiesLoose(e,t){if(null==e)return{};var r,o,n={},a=Object.keys(e);for(o=0;o<a.length;o++)r=a[o],0<=t.indexOf(r)||(n[r]=e[r]);return n}var BrowserRouter=function(n){function e(){for(var e,t=arguments.length,r=new Array(t),o=0;o<t;o++)r[o]=arguments[o];return(e=n.call.apply(n,[this].concat(r))||this).history=history.createBrowserHistory(e.props),e}return _inheritsLoose(e,n),e.prototype.render=function(){return React.createElement(reactRouter.Router,{history:this.history,children:this.props.children})},e}(React.Component),HashRouter=function(n){function e(){for(var e,t=arguments.length,r=new Array(t),o=0;o<t;o++)r[o]=arguments[o];return(e=n.call.apply(n,[this].concat(r))||this).history=history.createHashHistory(e.props),e}return _inheritsLoose(e,n),e.prototype.render=function(){return React.createElement(reactRouter.Router,{history:this.history,children:this.props.children})},e}(React.Component),resolveToLocation=function(e,t){return"function"==typeof e?e(t):e},normalizeToLocation=function(e,t){return"string"==typeof e?history.createLocation(e,null,null,t):e},forwardRefShim=function(e){return e},forwardRef=React.forwardRef;function isModifiedEvent(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}void 0===forwardRef&&(forwardRef=forwardRefShim);var LinkAnchor=forwardRef(function(e,t){var r=e.innerRef,o=e.navigate,n=e.onClick,a=_objectWithoutPropertiesLoose(e,["innerRef","navigate","onClick"]),i=a.target,c=_extends({},a,{onClick:function(t){try{n&&n(t)}catch(e){throw t.preventDefault(),e}t.defaultPrevented||0!==t.button||i&&"_self"!==i||isModifiedEvent(t)||(t.preventDefault(),o())}});return c.ref=forwardRefShim!==forwardRef&&t||r,React.createElement("a",c)}),Link=forwardRef(function(e,a){var t=e.component,i=void 0===t?LinkAnchor:t,c=e.replace,u=e.to,s=e.innerRef,f=_objectWithoutPropertiesLoose(e,["component","replace","to","innerRef"]);return React.createElement(reactRouter.__RouterContext.Consumer,null,function(t){t||invariant(!1);var r=t.history,e=normalizeToLocation(resolveToLocation(u,t.location),t.location),o=e?r.createHref(e):"",n=_extends({},f,{href:o,navigate:function(){var e=resolveToLocation(u,t.location);(c?r.replace:r.push)(e)}});return forwardRefShim!==forwardRef?n.ref=a||s:n.innerRef=s,React.createElement(i,n)})}),forwardRefShim$1=function(e){return e},forwardRef$1=React.forwardRef;function joinClassnames(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return t.filter(function(e){return e}).join(" ")}void 0===forwardRef$1&&(forwardRef$1=forwardRefShim$1);var NavLink=forwardRef$1(function(e,f){var t=e["aria-current"],l=void 0===t?"page":t,r=e.activeClassName,p=void 0===r?"active":r,R=e.activeStyle,h=e.className,d=e.exact,y=e.isActive,m=e.location,v=e.sensitive,b=e.strict,w=e.style,x=e.to,g=e.innerRef,P=_objectWithoutPropertiesLoose(e,["aria-current","activeClassName","activeStyle","className","exact","isActive","location","sensitive","strict","style","to","innerRef"]);return React.createElement(reactRouter.__RouterContext.Consumer,null,function(e){e||invariant(!1);var t=m||e.location,r=normalizeToLocation(resolveToLocation(x,t),t),o=r.pathname,n=o&&o.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1"),a=n?reactRouter.matchPath(t.pathname,{path:n,exact:d,sensitive:v,strict:b}):null,i=!!(y?y(a,t):a),c=i?joinClassnames(h,p):h,u=i?_extends({},w,{},R):w,s=_extends({"aria-current":i&&l||null,className:c,style:u,to:r},P);return forwardRefShim$1!==forwardRef$1?s.ref=f||g:s.innerRef=g,React.createElement(Link,s)})});Object.defineProperty(exports,"MemoryRouter",{enumerable:!0,get:function(){return reactRouter.MemoryRouter}}),Object.defineProperty(exports,"Prompt",{enumerable:!0,get:function(){return reactRouter.Prompt}}),Object.defineProperty(exports,"Redirect",{enumerable:!0,get:function(){return reactRouter.Redirect}}),Object.defineProperty(exports,"Route",{enumerable:!0,get:function(){return reactRouter.Route}}),Object.defineProperty(exports,"Router",{enumerable:!0,get:function(){return reactRouter.Router}}),Object.defineProperty(exports,"StaticRouter",{enumerable:!0,get:function(){return reactRouter.StaticRouter}}),Object.defineProperty(exports,"Switch",{enumerable:!0,get:function(){return reactRouter.Switch}}),Object.defineProperty(exports,"generatePath",{enumerable:!0,get:function(){return reactRouter.generatePath}}),Object.defineProperty(exports,"matchPath",{enumerable:!0,get:function(){return reactRouter.matchPath}}),Object.defineProperty(exports,"useHistory",{enumerable:!0,get:function(){return reactRouter.useHistory}}),Object.defineProperty(exports,"useLocation",{enumerable:!0,get:function(){return reactRouter.useLocation}}),Object.defineProperty(exports,"useParams",{enumerable:!0,get:function(){return reactRouter.useParams}}),Object.defineProperty(exports,"useRouteMatch",{enumerable:!0,get:function(){return reactRouter.useRouteMatch}}),Object.defineProperty(exports,"withRouter",{enumerable:!0,get:function(){return reactRouter.withRouter}}),exports.BrowserRouter=BrowserRouter,exports.HashRouter=HashRouter,exports.Link=Link,exports.NavLink=NavLink;
1
+ "use strict";function _interopDefault(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var reactRouter=require("react-router"),React=_interopDefault(require("react")),history=require("history");require("prop-types"),require("tiny-warning");var invariant=_interopDefault(require("tiny-invariant"));function _extends(){return(_extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o])}return e}).apply(this,arguments)}function _inheritsLoose(e,t){e.prototype=Object.create(t.prototype),_setPrototypeOf(e.prototype.constructor=e,t)}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function _objectWithoutPropertiesLoose(e,t){if(null==e)return{};var r,o,n={},a=Object.keys(e);for(o=0;o<a.length;o++)r=a[o],0<=t.indexOf(r)||(n[r]=e[r]);return n}var BrowserRouter=function(n){function e(){for(var e,t=arguments.length,r=new Array(t),o=0;o<t;o++)r[o]=arguments[o];return(e=n.call.apply(n,[this].concat(r))||this).history=history.createBrowserHistory(e.props),e}return _inheritsLoose(e,n),e.prototype.render=function(){return React.createElement(reactRouter.Router,{history:this.history,children:this.props.children})},e}(React.Component),HashRouter=function(n){function e(){for(var e,t=arguments.length,r=new Array(t),o=0;o<t;o++)r[o]=arguments[o];return(e=n.call.apply(n,[this].concat(r))||this).history=history.createHashHistory(e.props),e}return _inheritsLoose(e,n),e.prototype.render=function(){return React.createElement(reactRouter.Router,{history:this.history,children:this.props.children})},e}(React.Component),resolveToLocation=function(e,t){return"function"==typeof e?e(t):e},normalizeToLocation=function(e,t){return"string"==typeof e?history.createLocation(e,null,null,t):e},forwardRefShim=function(e){return e},forwardRef=React.forwardRef;function isModifiedEvent(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}void 0===forwardRef&&(forwardRef=forwardRefShim);var LinkAnchor=forwardRef(function(e,t){var r=e.innerRef,o=e.navigate,n=e.onClick,a=_objectWithoutPropertiesLoose(e,["innerRef","navigate","onClick"]),i=a.target,c=_extends({},a,{onClick:function(t){try{n&&n(t)}catch(e){throw t.preventDefault(),e}t.defaultPrevented||0!==t.button||i&&"_self"!==i||isModifiedEvent(t)||(t.preventDefault(),o())}});return c.ref=forwardRefShim!==forwardRef&&t||r,React.createElement("a",c)}),Link=forwardRef(function(e,a){var t=e.component,i=void 0===t?LinkAnchor:t,c=e.replace,u=e.to,f=e.innerRef,s=_objectWithoutPropertiesLoose(e,["component","replace","to","innerRef"]);return React.createElement(reactRouter.__RouterContext.Consumer,null,function(r){r||invariant(!1);var o=r.history,e=normalizeToLocation(resolveToLocation(u,r.location),r.location),t=e?o.createHref(e):"",n=_extends({},s,{href:t,navigate:function(){var e=resolveToLocation(u,r.location),t=history.createPath(r.location)===history.createPath(normalizeToLocation(e));(c||t?o.replace:o.push)(e)}});return forwardRefShim!==forwardRef?n.ref=a||f:n.innerRef=f,React.createElement(i,n)})}),forwardRefShim$1=function(e){return e},forwardRef$1=React.forwardRef;function joinClassnames(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return t.filter(function(e){return e}).join(" ")}void 0===forwardRef$1&&(forwardRef$1=forwardRefShim$1);var NavLink=forwardRef$1(function(e,s){var t=e["aria-current"],l=void 0===t?"page":t,r=e.activeClassName,p=void 0===r?"active":r,R=e.activeStyle,h=e.className,y=e.exact,d=e.isActive,m=e.location,v=e.sensitive,b=e.strict,P=e.style,w=e.to,x=e.innerRef,g=_objectWithoutPropertiesLoose(e,["aria-current","activeClassName","activeStyle","className","exact","isActive","location","sensitive","strict","style","to","innerRef"]);return React.createElement(reactRouter.__RouterContext.Consumer,null,function(e){e||invariant(!1);var t=m||e.location,r=normalizeToLocation(resolveToLocation(w,t),t),o=r.pathname,n=o&&o.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1"),a=n?reactRouter.matchPath(t.pathname,{path:n,exact:y,sensitive:v,strict:b}):null,i=!!(d?d(a,t):a),c="function"==typeof h?h(i):h,u="function"==typeof P?P(i):P;i&&(c=joinClassnames(c,p),u=_extends({},u,R));var f=_extends({"aria-current":i&&l||null,className:c,style:u,to:r},g);return forwardRefShim$1!==forwardRef$1?f.ref=s||x:f.innerRef=x,React.createElement(Link,f)})});Object.defineProperty(exports,"MemoryRouter",{enumerable:!0,get:function(){return reactRouter.MemoryRouter}}),Object.defineProperty(exports,"Prompt",{enumerable:!0,get:function(){return reactRouter.Prompt}}),Object.defineProperty(exports,"Redirect",{enumerable:!0,get:function(){return reactRouter.Redirect}}),Object.defineProperty(exports,"Route",{enumerable:!0,get:function(){return reactRouter.Route}}),Object.defineProperty(exports,"Router",{enumerable:!0,get:function(){return reactRouter.Router}}),Object.defineProperty(exports,"StaticRouter",{enumerable:!0,get:function(){return reactRouter.StaticRouter}}),Object.defineProperty(exports,"Switch",{enumerable:!0,get:function(){return reactRouter.Switch}}),Object.defineProperty(exports,"generatePath",{enumerable:!0,get:function(){return reactRouter.generatePath}}),Object.defineProperty(exports,"matchPath",{enumerable:!0,get:function(){return reactRouter.matchPath}}),Object.defineProperty(exports,"useHistory",{enumerable:!0,get:function(){return reactRouter.useHistory}}),Object.defineProperty(exports,"useLocation",{enumerable:!0,get:function(){return reactRouter.useLocation}}),Object.defineProperty(exports,"useParams",{enumerable:!0,get:function(){return reactRouter.useParams}}),Object.defineProperty(exports,"useRouteMatch",{enumerable:!0,get:function(){return reactRouter.useRouteMatch}}),Object.defineProperty(exports,"withRouter",{enumerable:!0,get:function(){return reactRouter.withRouter}}),exports.BrowserRouter=BrowserRouter,exports.HashRouter=HashRouter,exports.Link=Link,exports.NavLink=NavLink;
2
2
  //# sourceMappingURL=react-router-dom.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"react-router-dom.min.js","sources":["../modules/BrowserRouter.js","../modules/HashRouter.js","../modules/utils/locationUtils.js","../modules/Link.js","../modules/NavLink.js"],"sourcesContent":["import React from \"react\";\nimport { Router } from \"react-router\";\nimport { createBrowserHistory as createHistory } from \"history\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\n/**\n * The public API for a <Router> that uses HTML5 history.\n */\nclass BrowserRouter extends React.Component {\n history = createHistory(this.props);\n\n render() {\n return <Router history={this.history} children={this.props.children} />;\n }\n}\n\nif (__DEV__) {\n BrowserRouter.propTypes = {\n basename: PropTypes.string,\n children: PropTypes.node,\n forceRefresh: PropTypes.bool,\n getUserConfirmation: PropTypes.func,\n keyLength: PropTypes.number\n };\n\n BrowserRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \"<BrowserRouter> ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { BrowserRouter as Router }`.\"\n );\n };\n}\n\nexport default BrowserRouter;\n","import React from \"react\";\nimport { Router } from \"react-router\";\nimport { createHashHistory as createHistory } from \"history\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\n/**\n * The public API for a <Router> that uses window.location.hash.\n */\nclass HashRouter extends React.Component {\n history = createHistory(this.props);\n\n render() {\n return <Router history={this.history} children={this.props.children} />;\n }\n}\n\nif (__DEV__) {\n HashRouter.propTypes = {\n basename: PropTypes.string,\n children: PropTypes.node,\n getUserConfirmation: PropTypes.func,\n hashType: PropTypes.oneOf([\"hashbang\", \"noslash\", \"slash\"])\n };\n\n HashRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \"<HashRouter> ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { HashRouter as Router }`.\"\n );\n };\n}\n\nexport default HashRouter;\n","import { createLocation } from \"history\";\n\nexport const resolveToLocation = (to, currentLocation) =>\n typeof to === \"function\" ? to(currentLocation) : to;\n\nexport const normalizeToLocation = (to, currentLocation) => {\n return typeof to === \"string\"\n ? createLocation(to, null, null, currentLocation)\n : to;\n};\n","import React from \"react\";\nimport { __RouterContext as RouterContext } from \"react-router\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport {\n resolveToLocation,\n normalizeToLocation\n} from \"./utils/locationUtils.js\";\n\n// React 15 compat\nconst forwardRefShim = C => C;\nlet { forwardRef } = React;\nif (typeof forwardRef === \"undefined\") {\n forwardRef = forwardRefShim;\n}\n\nfunction isModifiedEvent(event) {\n return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n}\n\nconst LinkAnchor = forwardRef(\n (\n {\n innerRef, // TODO: deprecate\n navigate,\n onClick,\n ...rest\n },\n forwardedRef\n ) => {\n const { target } = rest;\n\n let props = {\n ...rest,\n onClick: event => {\n try {\n if (onClick) onClick(event);\n } catch (ex) {\n event.preventDefault();\n throw ex;\n }\n\n if (\n !event.defaultPrevented && // onClick prevented default\n event.button === 0 && // ignore everything but left clicks\n (!target || target === \"_self\") && // let browser handle \"target=_blank\" etc.\n !isModifiedEvent(event) // ignore clicks with modifier keys\n ) {\n event.preventDefault();\n navigate();\n }\n }\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.ref = innerRef;\n }\n\n /* eslint-disable-next-line jsx-a11y/anchor-has-content */\n return <a {...props} />;\n }\n);\n\nif (__DEV__) {\n LinkAnchor.displayName = \"LinkAnchor\";\n}\n\n/**\n * The public API for rendering a history-aware <a>.\n */\nconst Link = forwardRef(\n (\n {\n component = LinkAnchor,\n replace,\n to,\n innerRef, // TODO: deprecate\n ...rest\n },\n forwardedRef\n ) => {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <Link> outside a <Router>\");\n\n const { history } = context;\n\n const location = normalizeToLocation(\n resolveToLocation(to, context.location),\n context.location\n );\n\n const href = location ? history.createHref(location) : \"\";\n const props = {\n ...rest,\n href,\n navigate() {\n const location = resolveToLocation(to, context.location);\n const method = replace ? history.replace : history.push;\n\n method(location);\n }\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.innerRef = innerRef;\n }\n\n return React.createElement(component, props);\n }}\n </RouterContext.Consumer>\n );\n }\n);\n\nif (__DEV__) {\n const toType = PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n PropTypes.func\n ]);\n const refType = PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.shape({ current: PropTypes.any })\n ]);\n\n Link.displayName = \"Link\";\n\n Link.propTypes = {\n innerRef: refType,\n onClick: PropTypes.func,\n replace: PropTypes.bool,\n target: PropTypes.string,\n to: toType.isRequired\n };\n}\n\nexport default Link;\n","import React from \"react\";\nimport { __RouterContext as RouterContext, matchPath } from \"react-router\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport Link from \"./Link.js\";\nimport {\n resolveToLocation,\n normalizeToLocation\n} from \"./utils/locationUtils.js\";\n\n// React 15 compat\nconst forwardRefShim = C => C;\nlet { forwardRef } = React;\nif (typeof forwardRef === \"undefined\") {\n forwardRef = forwardRefShim;\n}\n\nfunction joinClassnames(...classnames) {\n return classnames.filter(i => i).join(\" \");\n}\n\n/**\n * A <Link> wrapper that knows if it's \"active\" or not.\n */\nconst NavLink = forwardRef(\n (\n {\n \"aria-current\": ariaCurrent = \"page\",\n activeClassName = \"active\",\n activeStyle,\n className: classNameProp,\n exact,\n isActive: isActiveProp,\n location: locationProp,\n sensitive,\n strict,\n style: styleProp,\n to,\n innerRef, // TODO: deprecate\n ...rest\n },\n forwardedRef\n ) => {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <NavLink> outside a <Router>\");\n\n const currentLocation = locationProp || context.location;\n const toLocation = normalizeToLocation(\n resolveToLocation(to, currentLocation),\n currentLocation\n );\n const { pathname: path } = toLocation;\n // Regex taken from: https://github.com/pillarjs/path-to-regexp/blob/master/index.js#L202\n const escapedPath =\n path && path.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, \"\\\\$1\");\n\n const match = escapedPath\n ? matchPath(currentLocation.pathname, {\n path: escapedPath,\n exact,\n sensitive,\n strict\n })\n : null;\n const isActive = !!(isActiveProp\n ? isActiveProp(match, currentLocation)\n : match);\n\n const className = isActive\n ? joinClassnames(classNameProp, activeClassName)\n : classNameProp;\n const style = isActive ? { ...styleProp, ...activeStyle } : styleProp;\n\n const props = {\n \"aria-current\": (isActive && ariaCurrent) || null,\n className,\n style,\n to: toLocation,\n ...rest\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.innerRef = innerRef;\n }\n\n return <Link {...props} />;\n }}\n </RouterContext.Consumer>\n );\n }\n);\n\nif (__DEV__) {\n NavLink.displayName = \"NavLink\";\n\n const ariaCurrentType = PropTypes.oneOf([\n \"page\",\n \"step\",\n \"location\",\n \"date\",\n \"time\",\n \"true\"\n ]);\n\n NavLink.propTypes = {\n ...Link.propTypes,\n \"aria-current\": ariaCurrentType,\n activeClassName: PropTypes.string,\n activeStyle: PropTypes.object,\n className: PropTypes.string,\n exact: PropTypes.bool,\n isActive: PropTypes.func,\n location: PropTypes.object,\n sensitive: PropTypes.bool,\n strict: PropTypes.bool,\n style: PropTypes.object\n };\n}\n\nexport default NavLink;\n"],"names":["BrowserRouter","history","createHistory","_this","props","render","React","Router","this","children","Component","HashRouter","resolveToLocation","to","currentLocation","normalizeToLocation","createLocation","forwardRefShim","C","forwardRef","isModifiedEvent","event","metaKey","altKey","ctrlKey","shiftKey","LinkAnchor","forwardedRef","innerRef","navigate","onClick","rest","target","ex","preventDefault","defaultPrevented","button","ref","Link","component","replace","RouterContext","Consumer","context","invariant","location","href","createHref","push","createElement","joinClassnames","classnames","filter","i","join","NavLink","ariaCurrent","activeClassName","activeStyle","classNameProp","className","exact","isActiveProp","isActive","locationProp","sensitive","strict","styleProp","style","toLocation","path","pathname","escapedPath","match","matchPath"],"mappings":"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"}
1
+ {"version":3,"file":"react-router-dom.min.js","sources":["../modules/BrowserRouter.js","../modules/HashRouter.js","../modules/utils/locationUtils.js","../modules/Link.js","../modules/NavLink.js"],"sourcesContent":["import React from \"react\";\nimport { Router } from \"react-router\";\nimport { createBrowserHistory as createHistory } from \"history\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\n/**\n * The public API for a <Router> that uses HTML5 history.\n */\nclass BrowserRouter extends React.Component {\n history = createHistory(this.props);\n\n render() {\n return <Router history={this.history} children={this.props.children} />;\n }\n}\n\nif (__DEV__) {\n BrowserRouter.propTypes = {\n basename: PropTypes.string,\n children: PropTypes.node,\n forceRefresh: PropTypes.bool,\n getUserConfirmation: PropTypes.func,\n keyLength: PropTypes.number\n };\n\n BrowserRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \"<BrowserRouter> ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { BrowserRouter as Router }`.\"\n );\n };\n}\n\nexport default BrowserRouter;\n","import React from \"react\";\nimport { Router } from \"react-router\";\nimport { createHashHistory as createHistory } from \"history\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\n/**\n * The public API for a <Router> that uses window.location.hash.\n */\nclass HashRouter extends React.Component {\n history = createHistory(this.props);\n\n render() {\n return <Router history={this.history} children={this.props.children} />;\n }\n}\n\nif (__DEV__) {\n HashRouter.propTypes = {\n basename: PropTypes.string,\n children: PropTypes.node,\n getUserConfirmation: PropTypes.func,\n hashType: PropTypes.oneOf([\"hashbang\", \"noslash\", \"slash\"])\n };\n\n HashRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \"<HashRouter> ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { HashRouter as Router }`.\"\n );\n };\n}\n\nexport default HashRouter;\n","import { createLocation } from \"history\";\n\nexport const resolveToLocation = (to, currentLocation) =>\n typeof to === \"function\" ? to(currentLocation) : to;\n\nexport const normalizeToLocation = (to, currentLocation) => {\n return typeof to === \"string\"\n ? createLocation(to, null, null, currentLocation)\n : to;\n};\n","import React from \"react\";\nimport { __RouterContext as RouterContext } from \"react-router\";\nimport { createPath } from 'history';\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport {\n resolveToLocation,\n normalizeToLocation\n} from \"./utils/locationUtils.js\";\n\n// React 15 compat\nconst forwardRefShim = C => C;\nlet { forwardRef } = React;\nif (typeof forwardRef === \"undefined\") {\n forwardRef = forwardRefShim;\n}\n\nfunction isModifiedEvent(event) {\n return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n}\n\nconst LinkAnchor = forwardRef(\n (\n {\n innerRef, // TODO: deprecate\n navigate,\n onClick,\n ...rest\n },\n forwardedRef\n ) => {\n const { target } = rest;\n\n let props = {\n ...rest,\n onClick: event => {\n try {\n if (onClick) onClick(event);\n } catch (ex) {\n event.preventDefault();\n throw ex;\n }\n\n if (\n !event.defaultPrevented && // onClick prevented default\n event.button === 0 && // ignore everything but left clicks\n (!target || target === \"_self\") && // let browser handle \"target=_blank\" etc.\n !isModifiedEvent(event) // ignore clicks with modifier keys\n ) {\n event.preventDefault();\n navigate();\n }\n }\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.ref = innerRef;\n }\n\n /* eslint-disable-next-line jsx-a11y/anchor-has-content */\n return <a {...props} />;\n }\n);\n\nif (__DEV__) {\n LinkAnchor.displayName = \"LinkAnchor\";\n}\n\n/**\n * The public API for rendering a history-aware <a>.\n */\nconst Link = forwardRef(\n (\n {\n component = LinkAnchor,\n replace,\n to,\n innerRef, // TODO: deprecate\n ...rest\n },\n forwardedRef\n ) => {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <Link> outside a <Router>\");\n\n const { history } = context;\n\n const location = normalizeToLocation(\n resolveToLocation(to, context.location),\n context.location\n );\n\n const href = location ? history.createHref(location) : \"\";\n const props = {\n ...rest,\n href,\n navigate() {\n const location = resolveToLocation(to, context.location);\n const isDuplicateNavigation = createPath(context.location) === createPath(normalizeToLocation(location));\n const method = (replace || isDuplicateNavigation) ? history.replace : history.push;\n\n method(location);\n }\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.innerRef = innerRef;\n }\n\n return React.createElement(component, props);\n }}\n </RouterContext.Consumer>\n );\n }\n);\n\nif (__DEV__) {\n const toType = PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n PropTypes.func\n ]);\n const refType = PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.shape({ current: PropTypes.any })\n ]);\n\n Link.displayName = \"Link\";\n\n Link.propTypes = {\n innerRef: refType,\n onClick: PropTypes.func,\n replace: PropTypes.bool,\n target: PropTypes.string,\n to: toType.isRequired\n };\n}\n\nexport default Link;\n","import React from \"react\";\nimport { __RouterContext as RouterContext, matchPath } from \"react-router\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport Link from \"./Link.js\";\nimport {\n resolveToLocation,\n normalizeToLocation\n} from \"./utils/locationUtils.js\";\n\n// React 15 compat\nconst forwardRefShim = C => C;\nlet { forwardRef } = React;\nif (typeof forwardRef === \"undefined\") {\n forwardRef = forwardRefShim;\n}\n\nfunction joinClassnames(...classnames) {\n return classnames.filter(i => i).join(\" \");\n}\n\n/**\n * A <Link> wrapper that knows if it's \"active\" or not.\n */\nconst NavLink = forwardRef(\n (\n {\n \"aria-current\": ariaCurrent = \"page\",\n activeClassName = \"active\", // TODO: deprecate\n activeStyle, // TODO: deprecate\n className: classNameProp,\n exact,\n isActive: isActiveProp,\n location: locationProp,\n sensitive,\n strict,\n style: styleProp,\n to,\n innerRef, // TODO: deprecate\n ...rest\n },\n forwardedRef\n ) => {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <NavLink> outside a <Router>\");\n\n const currentLocation = locationProp || context.location;\n const toLocation = normalizeToLocation(\n resolveToLocation(to, currentLocation),\n currentLocation\n );\n const { pathname: path } = toLocation;\n // Regex taken from: https://github.com/pillarjs/path-to-regexp/blob/master/index.js#L202\n const escapedPath =\n path && path.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, \"\\\\$1\");\n\n const match = escapedPath\n ? matchPath(currentLocation.pathname, {\n path: escapedPath,\n exact,\n sensitive,\n strict\n })\n : null;\n const isActive = !!(isActiveProp\n ? isActiveProp(match, currentLocation)\n : match);\n\n let className =\n typeof classNameProp === \"function\"\n ? classNameProp(isActive)\n : classNameProp;\n\n let style =\n typeof styleProp === \"function\" ? styleProp(isActive) : styleProp;\n\n if (isActive) {\n className = joinClassnames(className, activeClassName);\n style = { ...style, ...activeStyle };\n }\n\n const props = {\n \"aria-current\": (isActive && ariaCurrent) || null,\n className,\n style,\n to: toLocation,\n ...rest\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.innerRef = innerRef;\n }\n\n return <Link {...props} />;\n }}\n </RouterContext.Consumer>\n );\n }\n);\n\nif (__DEV__) {\n NavLink.displayName = \"NavLink\";\n\n const ariaCurrentType = PropTypes.oneOf([\n \"page\",\n \"step\",\n \"location\",\n \"date\",\n \"time\",\n \"true\",\n \"false\"\n ]);\n\n NavLink.propTypes = {\n ...Link.propTypes,\n \"aria-current\": ariaCurrentType,\n activeClassName: PropTypes.string,\n activeStyle: PropTypes.object,\n className: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n exact: PropTypes.bool,\n isActive: PropTypes.func,\n location: PropTypes.object,\n sensitive: PropTypes.bool,\n strict: PropTypes.bool,\n style: PropTypes.oneOfType([PropTypes.object, PropTypes.func])\n };\n}\n\nexport default NavLink;\n"],"names":["BrowserRouter","history","createHistory","_this","props","render","React","Router","this","children","Component","HashRouter","resolveToLocation","to","currentLocation","normalizeToLocation","createLocation","forwardRefShim","C","forwardRef","isModifiedEvent","event","metaKey","altKey","ctrlKey","shiftKey","LinkAnchor","forwardedRef","innerRef","navigate","onClick","rest","target","ex","preventDefault","defaultPrevented","button","ref","Link","component","replace","RouterContext","Consumer","context","invariant","location","href","createHref","isDuplicateNavigation","createPath","push","createElement","joinClassnames","classnames","filter","i","join","NavLink","ariaCurrent","activeClassName","activeStyle","classNameProp","className","exact","isActiveProp","isActive","locationProp","sensitive","strict","styleProp","style","toLocation","path","pathname","escapedPath","match","matchPath"],"mappings":"s9BASMA,kKACJC,QAAUC,6BAAcC,EAAKC,gDAE7BC,OAAA,kBACSC,oBAACC,oBAAON,QAASO,KAAKP,QAASQ,SAAUD,KAAKJ,MAAMK,eAJnCH,MAAMI,WCA5BC,+JACJV,QAAUC,0BAAcC,EAAKC,gDAE7BC,OAAA,kBACSC,oBAACC,oBAAON,QAASO,KAAKP,QAASQ,SAAUD,KAAKJ,MAAMK,eAJtCH,MAAMI,WCPlBE,kBAAoB,SAACC,EAAIC,SACtB,mBAAPD,EAAoBA,EAAGC,GAAmBD,GAEtCE,oBAAsB,SAACF,EAAIC,SACjB,iBAAPD,EACVG,uBAAeH,EAAI,KAAM,KAAMC,GAC/BD,GCGAI,eAAiB,SAAAC,UAAKA,GACtBC,WAAeb,MAAfa,WAKN,SAASC,gBAAgBC,YACbA,EAAMC,SAAWD,EAAME,QAAUF,EAAMG,SAAWH,EAAMI,eAL1C,IAAfN,aACTA,WAAaF,gBAOf,IAAMS,WAAaP,WACjB,WAOEQ,OALEC,IAAAA,SACAC,IAAAA,SACAC,IAAAA,QACGC,qEAIGC,EAAWD,EAAXC,OAEJ5B,cACC2B,GACHD,QAAS,SAAAT,OAEDS,GAASA,EAAQT,GACrB,MAAOY,SACPZ,EAAMa,iBACAD,EAILZ,EAAMc,kBACU,IAAjBd,EAAMe,QACJJ,GAAqB,UAAXA,GACXZ,gBAAgBC,KAEjBA,EAAMa,iBACNL,eAOJzB,EAAMiC,IADJpB,iBAAmBE,YACTQ,GAEAC,EAIPtB,wBAAOF,KAWZkC,KAAOnB,WACX,WAQEQ,WANEY,UAAAA,aAAYb,aACZc,IAAAA,QACA3B,IAAAA,GACAe,IAAAA,SACGG,kFAKHzB,oBAACmC,4BAAcC,cACZ,SAAAC,GACWA,GAAVC,kBAEQ3C,EAAY0C,EAAZ1C,QAEF4C,EAAW9B,oBACfH,kBAAkBC,EAAI8B,EAAQE,UAC9BF,EAAQE,UAGJC,EAAOD,EAAW5C,EAAQ8C,WAAWF,GAAY,GACjDzC,cACD2B,GACHe,KAAAA,EACAjB,wBACQgB,EAAWjC,kBAAkBC,EAAI8B,EAAQE,UACzCG,EAAwBC,mBAAWN,EAAQE,YAAcI,mBAAWlC,oBAAoB8B,KAC9EL,GAAWQ,EAAyB/C,EAAQuC,QAAUvC,EAAQiD,MAEvEL,aAKP5B,iBAAmBE,WACrBf,EAAMiC,IAAMV,GAAgBC,EAE5BxB,EAAMwB,SAAWA,EAGZtB,MAAM6C,cAAcZ,EAAWnC,OC1G1Ca,iBAAiB,SAAAC,UAAKA,GACtBC,aAAeb,MAAfa,WAKN,SAASiC,4CAAkBC,2BAAAA,yBAClBA,EAAWC,OAAO,SAAAC,UAAKA,IAAGC,KAAK,UALd,IAAfrC,eACTA,aAAaF,kBAUf,IAAMwC,QAAUtC,aACd,WAgBEQ,WAdE,gBAAgB+B,aAAc,aAC9BC,gBAAAA,aAAkB,WAClBC,IAAAA,YACWC,IAAXC,UACAC,IAAAA,MACUC,IAAVC,SACUC,IAAVrB,SACAsB,IAAAA,UACAC,IAAAA,OACOC,IAAPC,MACAzD,IAAAA,GACAe,IAAAA,SACGG,kLAKHzB,oBAACmC,4BAAcC,cACZ,SAAAC,GACWA,GAAVC,kBAEM9B,EAAkBoD,GAAgBvB,EAAQE,SAC1C0B,EAAaxD,oBACjBH,kBAAkBC,EAAIC,GACtBA,GAEgB0D,EAASD,EAAnBE,SAEFC,EACJF,GAAQA,EAAKhC,QAAQ,4BAA6B,QAE9CmC,EAAQD,EACVE,sBAAU9D,EAAgB2D,SAAU,CAClCD,KAAME,EACNX,MAAAA,EACAI,UAAAA,EACAC,OAAAA,IAEF,KACEH,KAAcD,EAChBA,EAAaW,EAAO7D,GACpB6D,GAEAb,EACuB,mBAAlBD,EACHA,EAAcI,GACdJ,EAEFS,EACmB,mBAAdD,EAA2BA,EAAUJ,GAAYI,EAEtDJ,IACFH,EAAYV,eAAeU,EAAWH,GACtCW,cAAaA,EAAUV,QAGnBxD,2BACa6D,GAAYP,GAAgB,KAC7CI,UAAAA,EACAQ,MAAAA,EACAzD,GAAI0D,GACDxC,UAIDd,mBAAmBE,aACrBf,EAAMiC,IAAMV,GAAgBC,EAE5BxB,EAAMwB,SAAWA,EAGZtB,oBAACgC,KAASlC"}
@@ -2,7 +2,7 @@ import { Router, __RouterContext, matchPath } from 'react-router';
2
2
  export { MemoryRouter, Prompt, Redirect, Route, Router, StaticRouter, Switch, generatePath, matchPath, useHistory, useLocation, useParams, useRouteMatch, withRouter } from 'react-router';
3
3
  import _inheritsLoose from '@babel/runtime/helpers/esm/inheritsLoose';
4
4
  import React from 'react';
5
- import { createBrowserHistory, createHashHistory, createLocation } from 'history';
5
+ import { createBrowserHistory, createHashHistory, createLocation, createPath } from 'history';
6
6
  import PropTypes from 'prop-types';
7
7
  import warning from 'tiny-warning';
8
8
  import _extends from '@babel/runtime/helpers/esm/extends';
@@ -13,9 +13,7 @@ import invariant from 'tiny-invariant';
13
13
  * The public API for a <Router> that uses HTML5 history.
14
14
  */
15
15
 
16
- var BrowserRouter =
17
- /*#__PURE__*/
18
- function (_React$Component) {
16
+ var BrowserRouter = /*#__PURE__*/function (_React$Component) {
19
17
  _inheritsLoose(BrowserRouter, _React$Component);
20
18
 
21
19
  function BrowserRouter() {
@@ -33,7 +31,7 @@ function (_React$Component) {
33
31
  var _proto = BrowserRouter.prototype;
34
32
 
35
33
  _proto.render = function render() {
36
- return React.createElement(Router, {
34
+ return /*#__PURE__*/React.createElement(Router, {
37
35
  history: this.history,
38
36
  children: this.props.children
39
37
  });
@@ -60,9 +58,7 @@ if (process.env.NODE_ENV !== "production") {
60
58
  * The public API for a <Router> that uses window.location.hash.
61
59
  */
62
60
 
63
- var HashRouter =
64
- /*#__PURE__*/
65
- function (_React$Component) {
61
+ var HashRouter = /*#__PURE__*/function (_React$Component) {
66
62
  _inheritsLoose(HashRouter, _React$Component);
67
63
 
68
64
  function HashRouter() {
@@ -80,7 +76,7 @@ function (_React$Component) {
80
76
  var _proto = HashRouter.prototype;
81
77
 
82
78
  _proto.render = function render() {
83
- return React.createElement(Router, {
79
+ return /*#__PURE__*/React.createElement(Router, {
84
80
  history: this.history,
85
81
  children: this.props.children
86
82
  });
@@ -160,7 +156,7 @@ var LinkAnchor = forwardRef(function (_ref, forwardedRef) {
160
156
  /* eslint-disable-next-line jsx-a11y/anchor-has-content */
161
157
 
162
158
 
163
- return React.createElement("a", props);
159
+ return /*#__PURE__*/React.createElement("a", props);
164
160
  });
165
161
 
166
162
  if (process.env.NODE_ENV !== "production") {
@@ -179,7 +175,7 @@ var Link = forwardRef(function (_ref2, forwardedRef) {
179
175
  innerRef = _ref2.innerRef,
180
176
  rest = _objectWithoutPropertiesLoose(_ref2, ["component", "replace", "to", "innerRef"]);
181
177
 
182
- return React.createElement(__RouterContext.Consumer, null, function (context) {
178
+ return /*#__PURE__*/React.createElement(__RouterContext.Consumer, null, function (context) {
183
179
  !context ? process.env.NODE_ENV !== "production" ? invariant(false, "You should not use <Link> outside a <Router>") : invariant(false) : void 0;
184
180
  var history = context.history;
185
181
  var location = normalizeToLocation(resolveToLocation(to, context.location), context.location);
@@ -189,7 +185,8 @@ var Link = forwardRef(function (_ref2, forwardedRef) {
189
185
  href: href,
190
186
  navigate: function navigate() {
191
187
  var location = resolveToLocation(to, context.location);
192
- var method = replace ? history.replace : history.push;
188
+ var isDuplicateNavigation = createPath(context.location) === createPath(normalizeToLocation(location));
189
+ var method = replace || isDuplicateNavigation ? history.replace : history.push;
193
190
  method(location);
194
191
  }
195
192
  }); // React 15 compat
@@ -201,7 +198,7 @@ var Link = forwardRef(function (_ref2, forwardedRef) {
201
198
  props.innerRef = innerRef;
202
199
  }
203
200
 
204
- return React.createElement(component, props);
201
+ return /*#__PURE__*/React.createElement(component, props);
205
202
  });
206
203
  });
207
204
 
@@ -261,7 +258,7 @@ var NavLink = forwardRef$1(function (_ref, forwardedRef) {
261
258
  innerRef = _ref.innerRef,
262
259
  rest = _objectWithoutPropertiesLoose(_ref, ["aria-current", "activeClassName", "activeStyle", "className", "exact", "isActive", "location", "sensitive", "strict", "style", "to", "innerRef"]);
263
260
 
264
- return React.createElement(__RouterContext.Consumer, null, function (context) {
261
+ return /*#__PURE__*/React.createElement(__RouterContext.Consumer, null, function (context) {
265
262
  !context ? process.env.NODE_ENV !== "production" ? invariant(false, "You should not use <NavLink> outside a <Router>") : invariant(false) : void 0;
266
263
  var currentLocation = locationProp || context.location;
267
264
  var toLocation = normalizeToLocation(resolveToLocation(to, currentLocation), currentLocation);
@@ -275,8 +272,13 @@ var NavLink = forwardRef$1(function (_ref, forwardedRef) {
275
272
  strict: strict
276
273
  }) : null;
277
274
  var isActive = !!(isActiveProp ? isActiveProp(match, currentLocation) : match);
278
- var className = isActive ? joinClassnames(classNameProp, activeClassName) : classNameProp;
279
- var style = isActive ? _extends({}, styleProp, {}, activeStyle) : styleProp;
275
+ var className = typeof classNameProp === "function" ? classNameProp(isActive) : classNameProp;
276
+ var style = typeof styleProp === "function" ? styleProp(isActive) : styleProp;
277
+
278
+ if (isActive) {
279
+ className = joinClassnames(className, activeClassName);
280
+ style = _extends({}, style, activeStyle);
281
+ }
280
282
 
281
283
  var props = _extends({
282
284
  "aria-current": isActive && ariaCurrent || null,
@@ -292,24 +294,24 @@ var NavLink = forwardRef$1(function (_ref, forwardedRef) {
292
294
  props.innerRef = innerRef;
293
295
  }
294
296
 
295
- return React.createElement(Link, props);
297
+ return /*#__PURE__*/React.createElement(Link, props);
296
298
  });
297
299
  });
298
300
 
299
301
  if (process.env.NODE_ENV !== "production") {
300
302
  NavLink.displayName = "NavLink";
301
- var ariaCurrentType = PropTypes.oneOf(["page", "step", "location", "date", "time", "true"]);
303
+ var ariaCurrentType = PropTypes.oneOf(["page", "step", "location", "date", "time", "true", "false"]);
302
304
  NavLink.propTypes = _extends({}, Link.propTypes, {
303
305
  "aria-current": ariaCurrentType,
304
306
  activeClassName: PropTypes.string,
305
307
  activeStyle: PropTypes.object,
306
- className: PropTypes.string,
308
+ className: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),
307
309
  exact: PropTypes.bool,
308
310
  isActive: PropTypes.func,
309
311
  location: PropTypes.object,
310
312
  sensitive: PropTypes.bool,
311
313
  strict: PropTypes.bool,
312
- style: PropTypes.object
314
+ style: PropTypes.oneOfType([PropTypes.object, PropTypes.func])
313
315
  });
314
316
  }
315
317
 
@@ -1 +1 @@
1
- {"version":3,"file":"react-router-dom.js","sources":["../modules/BrowserRouter.js","../modules/HashRouter.js","../modules/utils/locationUtils.js","../modules/Link.js","../modules/NavLink.js"],"sourcesContent":["import React from \"react\";\nimport { Router } from \"react-router\";\nimport { createBrowserHistory as createHistory } from \"history\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\n/**\n * The public API for a <Router> that uses HTML5 history.\n */\nclass BrowserRouter extends React.Component {\n history = createHistory(this.props);\n\n render() {\n return <Router history={this.history} children={this.props.children} />;\n }\n}\n\nif (__DEV__) {\n BrowserRouter.propTypes = {\n basename: PropTypes.string,\n children: PropTypes.node,\n forceRefresh: PropTypes.bool,\n getUserConfirmation: PropTypes.func,\n keyLength: PropTypes.number\n };\n\n BrowserRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \"<BrowserRouter> ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { BrowserRouter as Router }`.\"\n );\n };\n}\n\nexport default BrowserRouter;\n","import React from \"react\";\nimport { Router } from \"react-router\";\nimport { createHashHistory as createHistory } from \"history\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\n/**\n * The public API for a <Router> that uses window.location.hash.\n */\nclass HashRouter extends React.Component {\n history = createHistory(this.props);\n\n render() {\n return <Router history={this.history} children={this.props.children} />;\n }\n}\n\nif (__DEV__) {\n HashRouter.propTypes = {\n basename: PropTypes.string,\n children: PropTypes.node,\n getUserConfirmation: PropTypes.func,\n hashType: PropTypes.oneOf([\"hashbang\", \"noslash\", \"slash\"])\n };\n\n HashRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \"<HashRouter> ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { HashRouter as Router }`.\"\n );\n };\n}\n\nexport default HashRouter;\n","import { createLocation } from \"history\";\n\nexport const resolveToLocation = (to, currentLocation) =>\n typeof to === \"function\" ? to(currentLocation) : to;\n\nexport const normalizeToLocation = (to, currentLocation) => {\n return typeof to === \"string\"\n ? createLocation(to, null, null, currentLocation)\n : to;\n};\n","import React from \"react\";\nimport { __RouterContext as RouterContext } from \"react-router\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport {\n resolveToLocation,\n normalizeToLocation\n} from \"./utils/locationUtils.js\";\n\n// React 15 compat\nconst forwardRefShim = C => C;\nlet { forwardRef } = React;\nif (typeof forwardRef === \"undefined\") {\n forwardRef = forwardRefShim;\n}\n\nfunction isModifiedEvent(event) {\n return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n}\n\nconst LinkAnchor = forwardRef(\n (\n {\n innerRef, // TODO: deprecate\n navigate,\n onClick,\n ...rest\n },\n forwardedRef\n ) => {\n const { target } = rest;\n\n let props = {\n ...rest,\n onClick: event => {\n try {\n if (onClick) onClick(event);\n } catch (ex) {\n event.preventDefault();\n throw ex;\n }\n\n if (\n !event.defaultPrevented && // onClick prevented default\n event.button === 0 && // ignore everything but left clicks\n (!target || target === \"_self\") && // let browser handle \"target=_blank\" etc.\n !isModifiedEvent(event) // ignore clicks with modifier keys\n ) {\n event.preventDefault();\n navigate();\n }\n }\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.ref = innerRef;\n }\n\n /* eslint-disable-next-line jsx-a11y/anchor-has-content */\n return <a {...props} />;\n }\n);\n\nif (__DEV__) {\n LinkAnchor.displayName = \"LinkAnchor\";\n}\n\n/**\n * The public API for rendering a history-aware <a>.\n */\nconst Link = forwardRef(\n (\n {\n component = LinkAnchor,\n replace,\n to,\n innerRef, // TODO: deprecate\n ...rest\n },\n forwardedRef\n ) => {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <Link> outside a <Router>\");\n\n const { history } = context;\n\n const location = normalizeToLocation(\n resolveToLocation(to, context.location),\n context.location\n );\n\n const href = location ? history.createHref(location) : \"\";\n const props = {\n ...rest,\n href,\n navigate() {\n const location = resolveToLocation(to, context.location);\n const method = replace ? history.replace : history.push;\n\n method(location);\n }\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.innerRef = innerRef;\n }\n\n return React.createElement(component, props);\n }}\n </RouterContext.Consumer>\n );\n }\n);\n\nif (__DEV__) {\n const toType = PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n PropTypes.func\n ]);\n const refType = PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.shape({ current: PropTypes.any })\n ]);\n\n Link.displayName = \"Link\";\n\n Link.propTypes = {\n innerRef: refType,\n onClick: PropTypes.func,\n replace: PropTypes.bool,\n target: PropTypes.string,\n to: toType.isRequired\n };\n}\n\nexport default Link;\n","import React from \"react\";\nimport { __RouterContext as RouterContext, matchPath } from \"react-router\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport Link from \"./Link.js\";\nimport {\n resolveToLocation,\n normalizeToLocation\n} from \"./utils/locationUtils.js\";\n\n// React 15 compat\nconst forwardRefShim = C => C;\nlet { forwardRef } = React;\nif (typeof forwardRef === \"undefined\") {\n forwardRef = forwardRefShim;\n}\n\nfunction joinClassnames(...classnames) {\n return classnames.filter(i => i).join(\" \");\n}\n\n/**\n * A <Link> wrapper that knows if it's \"active\" or not.\n */\nconst NavLink = forwardRef(\n (\n {\n \"aria-current\": ariaCurrent = \"page\",\n activeClassName = \"active\",\n activeStyle,\n className: classNameProp,\n exact,\n isActive: isActiveProp,\n location: locationProp,\n sensitive,\n strict,\n style: styleProp,\n to,\n innerRef, // TODO: deprecate\n ...rest\n },\n forwardedRef\n ) => {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <NavLink> outside a <Router>\");\n\n const currentLocation = locationProp || context.location;\n const toLocation = normalizeToLocation(\n resolveToLocation(to, currentLocation),\n currentLocation\n );\n const { pathname: path } = toLocation;\n // Regex taken from: https://github.com/pillarjs/path-to-regexp/blob/master/index.js#L202\n const escapedPath =\n path && path.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, \"\\\\$1\");\n\n const match = escapedPath\n ? matchPath(currentLocation.pathname, {\n path: escapedPath,\n exact,\n sensitive,\n strict\n })\n : null;\n const isActive = !!(isActiveProp\n ? isActiveProp(match, currentLocation)\n : match);\n\n const className = isActive\n ? joinClassnames(classNameProp, activeClassName)\n : classNameProp;\n const style = isActive ? { ...styleProp, ...activeStyle } : styleProp;\n\n const props = {\n \"aria-current\": (isActive && ariaCurrent) || null,\n className,\n style,\n to: toLocation,\n ...rest\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.innerRef = innerRef;\n }\n\n return <Link {...props} />;\n }}\n </RouterContext.Consumer>\n );\n }\n);\n\nif (__DEV__) {\n NavLink.displayName = \"NavLink\";\n\n const ariaCurrentType = PropTypes.oneOf([\n \"page\",\n \"step\",\n \"location\",\n \"date\",\n \"time\",\n \"true\"\n ]);\n\n NavLink.propTypes = {\n ...Link.propTypes,\n \"aria-current\": ariaCurrentType,\n activeClassName: PropTypes.string,\n activeStyle: PropTypes.object,\n className: PropTypes.string,\n exact: PropTypes.bool,\n isActive: PropTypes.func,\n location: PropTypes.object,\n sensitive: PropTypes.bool,\n strict: PropTypes.bool,\n style: PropTypes.object\n };\n}\n\nexport default NavLink;\n"],"names":["BrowserRouter","history","createHistory","props","render","children","React","Component","propTypes","basename","PropTypes","string","node","forceRefresh","bool","getUserConfirmation","func","keyLength","number","prototype","componentDidMount","warning","HashRouter","hashType","oneOf","resolveToLocation","to","currentLocation","normalizeToLocation","createLocation","forwardRefShim","C","forwardRef","isModifiedEvent","event","metaKey","altKey","ctrlKey","shiftKey","LinkAnchor","forwardedRef","innerRef","navigate","onClick","rest","target","ex","preventDefault","defaultPrevented","button","ref","displayName","Link","component","replace","RouterContext","context","invariant","location","href","createHref","method","push","createElement","toType","oneOfType","object","refType","shape","current","any","isRequired","joinClassnames","classnames","filter","i","join","NavLink","ariaCurrent","activeClassName","activeStyle","classNameProp","className","exact","isActiveProp","isActive","locationProp","sensitive","strict","styleProp","style","toLocation","path","pathname","escapedPath","match","matchPath","ariaCurrentType"],"mappings":"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"}
1
+ {"version":3,"file":"react-router-dom.js","sources":["../modules/BrowserRouter.js","../modules/HashRouter.js","../modules/utils/locationUtils.js","../modules/Link.js","../modules/NavLink.js"],"sourcesContent":["import React from \"react\";\nimport { Router } from \"react-router\";\nimport { createBrowserHistory as createHistory } from \"history\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\n/**\n * The public API for a <Router> that uses HTML5 history.\n */\nclass BrowserRouter extends React.Component {\n history = createHistory(this.props);\n\n render() {\n return <Router history={this.history} children={this.props.children} />;\n }\n}\n\nif (__DEV__) {\n BrowserRouter.propTypes = {\n basename: PropTypes.string,\n children: PropTypes.node,\n forceRefresh: PropTypes.bool,\n getUserConfirmation: PropTypes.func,\n keyLength: PropTypes.number\n };\n\n BrowserRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \"<BrowserRouter> ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { BrowserRouter as Router }`.\"\n );\n };\n}\n\nexport default BrowserRouter;\n","import React from \"react\";\nimport { Router } from \"react-router\";\nimport { createHashHistory as createHistory } from \"history\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\n/**\n * The public API for a <Router> that uses window.location.hash.\n */\nclass HashRouter extends React.Component {\n history = createHistory(this.props);\n\n render() {\n return <Router history={this.history} children={this.props.children} />;\n }\n}\n\nif (__DEV__) {\n HashRouter.propTypes = {\n basename: PropTypes.string,\n children: PropTypes.node,\n getUserConfirmation: PropTypes.func,\n hashType: PropTypes.oneOf([\"hashbang\", \"noslash\", \"slash\"])\n };\n\n HashRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \"<HashRouter> ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { HashRouter as Router }`.\"\n );\n };\n}\n\nexport default HashRouter;\n","import { createLocation } from \"history\";\n\nexport const resolveToLocation = (to, currentLocation) =>\n typeof to === \"function\" ? to(currentLocation) : to;\n\nexport const normalizeToLocation = (to, currentLocation) => {\n return typeof to === \"string\"\n ? createLocation(to, null, null, currentLocation)\n : to;\n};\n","import React from \"react\";\nimport { __RouterContext as RouterContext } from \"react-router\";\nimport { createPath } from 'history';\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport {\n resolveToLocation,\n normalizeToLocation\n} from \"./utils/locationUtils.js\";\n\n// React 15 compat\nconst forwardRefShim = C => C;\nlet { forwardRef } = React;\nif (typeof forwardRef === \"undefined\") {\n forwardRef = forwardRefShim;\n}\n\nfunction isModifiedEvent(event) {\n return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n}\n\nconst LinkAnchor = forwardRef(\n (\n {\n innerRef, // TODO: deprecate\n navigate,\n onClick,\n ...rest\n },\n forwardedRef\n ) => {\n const { target } = rest;\n\n let props = {\n ...rest,\n onClick: event => {\n try {\n if (onClick) onClick(event);\n } catch (ex) {\n event.preventDefault();\n throw ex;\n }\n\n if (\n !event.defaultPrevented && // onClick prevented default\n event.button === 0 && // ignore everything but left clicks\n (!target || target === \"_self\") && // let browser handle \"target=_blank\" etc.\n !isModifiedEvent(event) // ignore clicks with modifier keys\n ) {\n event.preventDefault();\n navigate();\n }\n }\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.ref = innerRef;\n }\n\n /* eslint-disable-next-line jsx-a11y/anchor-has-content */\n return <a {...props} />;\n }\n);\n\nif (__DEV__) {\n LinkAnchor.displayName = \"LinkAnchor\";\n}\n\n/**\n * The public API for rendering a history-aware <a>.\n */\nconst Link = forwardRef(\n (\n {\n component = LinkAnchor,\n replace,\n to,\n innerRef, // TODO: deprecate\n ...rest\n },\n forwardedRef\n ) => {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <Link> outside a <Router>\");\n\n const { history } = context;\n\n const location = normalizeToLocation(\n resolveToLocation(to, context.location),\n context.location\n );\n\n const href = location ? history.createHref(location) : \"\";\n const props = {\n ...rest,\n href,\n navigate() {\n const location = resolveToLocation(to, context.location);\n const isDuplicateNavigation = createPath(context.location) === createPath(normalizeToLocation(location));\n const method = (replace || isDuplicateNavigation) ? history.replace : history.push;\n\n method(location);\n }\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.innerRef = innerRef;\n }\n\n return React.createElement(component, props);\n }}\n </RouterContext.Consumer>\n );\n }\n);\n\nif (__DEV__) {\n const toType = PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n PropTypes.func\n ]);\n const refType = PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.shape({ current: PropTypes.any })\n ]);\n\n Link.displayName = \"Link\";\n\n Link.propTypes = {\n innerRef: refType,\n onClick: PropTypes.func,\n replace: PropTypes.bool,\n target: PropTypes.string,\n to: toType.isRequired\n };\n}\n\nexport default Link;\n","import React from \"react\";\nimport { __RouterContext as RouterContext, matchPath } from \"react-router\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport Link from \"./Link.js\";\nimport {\n resolveToLocation,\n normalizeToLocation\n} from \"./utils/locationUtils.js\";\n\n// React 15 compat\nconst forwardRefShim = C => C;\nlet { forwardRef } = React;\nif (typeof forwardRef === \"undefined\") {\n forwardRef = forwardRefShim;\n}\n\nfunction joinClassnames(...classnames) {\n return classnames.filter(i => i).join(\" \");\n}\n\n/**\n * A <Link> wrapper that knows if it's \"active\" or not.\n */\nconst NavLink = forwardRef(\n (\n {\n \"aria-current\": ariaCurrent = \"page\",\n activeClassName = \"active\", // TODO: deprecate\n activeStyle, // TODO: deprecate\n className: classNameProp,\n exact,\n isActive: isActiveProp,\n location: locationProp,\n sensitive,\n strict,\n style: styleProp,\n to,\n innerRef, // TODO: deprecate\n ...rest\n },\n forwardedRef\n ) => {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <NavLink> outside a <Router>\");\n\n const currentLocation = locationProp || context.location;\n const toLocation = normalizeToLocation(\n resolveToLocation(to, currentLocation),\n currentLocation\n );\n const { pathname: path } = toLocation;\n // Regex taken from: https://github.com/pillarjs/path-to-regexp/blob/master/index.js#L202\n const escapedPath =\n path && path.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, \"\\\\$1\");\n\n const match = escapedPath\n ? matchPath(currentLocation.pathname, {\n path: escapedPath,\n exact,\n sensitive,\n strict\n })\n : null;\n const isActive = !!(isActiveProp\n ? isActiveProp(match, currentLocation)\n : match);\n\n let className =\n typeof classNameProp === \"function\"\n ? classNameProp(isActive)\n : classNameProp;\n\n let style =\n typeof styleProp === \"function\" ? styleProp(isActive) : styleProp;\n\n if (isActive) {\n className = joinClassnames(className, activeClassName);\n style = { ...style, ...activeStyle };\n }\n\n const props = {\n \"aria-current\": (isActive && ariaCurrent) || null,\n className,\n style,\n to: toLocation,\n ...rest\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.innerRef = innerRef;\n }\n\n return <Link {...props} />;\n }}\n </RouterContext.Consumer>\n );\n }\n);\n\nif (__DEV__) {\n NavLink.displayName = \"NavLink\";\n\n const ariaCurrentType = PropTypes.oneOf([\n \"page\",\n \"step\",\n \"location\",\n \"date\",\n \"time\",\n \"true\",\n \"false\"\n ]);\n\n NavLink.propTypes = {\n ...Link.propTypes,\n \"aria-current\": ariaCurrentType,\n activeClassName: PropTypes.string,\n activeStyle: PropTypes.object,\n className: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n exact: PropTypes.bool,\n isActive: PropTypes.func,\n location: PropTypes.object,\n sensitive: PropTypes.bool,\n strict: PropTypes.bool,\n style: PropTypes.oneOfType([PropTypes.object, PropTypes.func])\n };\n}\n\nexport default NavLink;\n"],"names":["BrowserRouter","history","createHistory","props","render","children","React","Component","propTypes","basename","PropTypes","string","node","forceRefresh","bool","getUserConfirmation","func","keyLength","number","prototype","componentDidMount","warning","HashRouter","hashType","oneOf","resolveToLocation","to","currentLocation","normalizeToLocation","createLocation","forwardRefShim","C","forwardRef","isModifiedEvent","event","metaKey","altKey","ctrlKey","shiftKey","LinkAnchor","forwardedRef","innerRef","navigate","onClick","rest","target","ex","preventDefault","defaultPrevented","button","ref","displayName","Link","component","replace","RouterContext","context","invariant","location","href","createHref","isDuplicateNavigation","createPath","method","push","createElement","toType","oneOfType","object","refType","shape","current","any","isRequired","joinClassnames","classnames","filter","i","join","NavLink","ariaCurrent","activeClassName","activeStyle","classNameProp","className","exact","isActiveProp","isActive","locationProp","sensitive","strict","styleProp","style","toLocation","path","pathname","escapedPath","match","matchPath","ariaCurrentType"],"mappings":"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"}
package/modules/Link.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import React from "react";
2
2
  import { __RouterContext as RouterContext } from "react-router";
3
+ import { createPath } from 'history';
3
4
  import PropTypes from "prop-types";
4
5
  import invariant from "tiny-invariant";
5
6
  import {
@@ -100,7 +101,8 @@ const Link = forwardRef(
100
101
  href,
101
102
  navigate() {
102
103
  const location = resolveToLocation(to, context.location);
103
- const method = replace ? history.replace : history.push;
104
+ const isDuplicateNavigation = createPath(context.location) === createPath(normalizeToLocation(location));
105
+ const method = (replace || isDuplicateNavigation) ? history.replace : history.push;
104
106
 
105
107
  method(location);
106
108
  }