react-router 5.2.0 → 5.2.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/cjs/react-router.js +41 -51
- package/cjs/react-router.js.map +1 -1
- package/cjs/react-router.min.js +1 -1
- package/cjs/react-router.min.js.map +1 -1
- package/esm/react-router.js +30 -50
- package/esm/react-router.js.map +1 -1
- package/modules/Route.js +1 -1
- package/modules/Router.js +5 -1
- package/modules/RouterContext.js +1 -9
- package/modules/hooks.js +4 -5
- package/modules/index.js +2 -3
- package/package.json +3 -4
- package/umd/react-router.js +42 -59
- package/umd/react-router.js.map +1 -1
- package/umd/react-router.min.js +1 -1
- package/umd/react-router.min.js.map +1 -1
- package/LICENSE +0 -21
package/cjs/react-router.js
CHANGED
|
@@ -33,7 +33,17 @@ function _extends() {
|
|
|
33
33
|
function _inheritsLoose(subClass, superClass) {
|
|
34
34
|
subClass.prototype = Object.create(superClass.prototype);
|
|
35
35
|
subClass.prototype.constructor = subClass;
|
|
36
|
-
|
|
36
|
+
|
|
37
|
+
_setPrototypeOf(subClass, superClass);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
function _setPrototypeOf(o, p) {
|
|
41
|
+
_setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
|
|
42
|
+
o.__proto__ = p;
|
|
43
|
+
return o;
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
return _setPrototypeOf(o, p);
|
|
37
47
|
}
|
|
38
48
|
|
|
39
49
|
function _objectWithoutPropertiesLoose(source, excluded) {
|
|
@@ -59,29 +69,15 @@ var createNamedContext = function createNamedContext(name) {
|
|
|
59
69
|
return context;
|
|
60
70
|
};
|
|
61
71
|
|
|
62
|
-
var historyContext =
|
|
63
|
-
/*#__PURE__*/
|
|
64
|
-
createNamedContext("Router-History");
|
|
72
|
+
var historyContext = /*#__PURE__*/createNamedContext("Router-History");
|
|
65
73
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
var createNamedContext$1 = function createNamedContext(name) {
|
|
69
|
-
var context = createContext();
|
|
70
|
-
context.displayName = name;
|
|
71
|
-
return context;
|
|
72
|
-
};
|
|
73
|
-
|
|
74
|
-
var context =
|
|
75
|
-
/*#__PURE__*/
|
|
76
|
-
createNamedContext$1("Router");
|
|
74
|
+
var context = /*#__PURE__*/createNamedContext("Router");
|
|
77
75
|
|
|
78
76
|
/**
|
|
79
77
|
* The public API for putting history on context.
|
|
80
78
|
*/
|
|
81
79
|
|
|
82
|
-
var Router =
|
|
83
|
-
/*#__PURE__*/
|
|
84
|
-
function (_React$Component) {
|
|
80
|
+
var Router = /*#__PURE__*/function (_React$Component) {
|
|
85
81
|
_inheritsLoose(Router, _React$Component);
|
|
86
82
|
|
|
87
83
|
Router.computeRootMatch = function computeRootMatch(pathname) {
|
|
@@ -136,18 +132,22 @@ function (_React$Component) {
|
|
|
136
132
|
};
|
|
137
133
|
|
|
138
134
|
_proto.componentWillUnmount = function componentWillUnmount() {
|
|
139
|
-
if (this.unlisten)
|
|
135
|
+
if (this.unlisten) {
|
|
136
|
+
this.unlisten();
|
|
137
|
+
this._isMounted = false;
|
|
138
|
+
this._pendingLocation = null;
|
|
139
|
+
}
|
|
140
140
|
};
|
|
141
141
|
|
|
142
142
|
_proto.render = function render() {
|
|
143
|
-
return React.createElement(context.Provider, {
|
|
143
|
+
return /*#__PURE__*/React.createElement(context.Provider, {
|
|
144
144
|
value: {
|
|
145
145
|
history: this.props.history,
|
|
146
146
|
location: this.state.location,
|
|
147
147
|
match: Router.computeRootMatch(this.state.location.pathname),
|
|
148
148
|
staticContext: this.props.staticContext
|
|
149
149
|
}
|
|
150
|
-
}, React.createElement(historyContext.Provider, {
|
|
150
|
+
}, /*#__PURE__*/React.createElement(historyContext.Provider, {
|
|
151
151
|
children: this.props.children || null,
|
|
152
152
|
value: this.props.history
|
|
153
153
|
}));
|
|
@@ -172,9 +172,7 @@ function (_React$Component) {
|
|
|
172
172
|
* The public API for a <Router> that stores location in memory.
|
|
173
173
|
*/
|
|
174
174
|
|
|
175
|
-
var MemoryRouter =
|
|
176
|
-
/*#__PURE__*/
|
|
177
|
-
function (_React$Component) {
|
|
175
|
+
var MemoryRouter = /*#__PURE__*/function (_React$Component) {
|
|
178
176
|
_inheritsLoose(MemoryRouter, _React$Component);
|
|
179
177
|
|
|
180
178
|
function MemoryRouter() {
|
|
@@ -192,7 +190,7 @@ function (_React$Component) {
|
|
|
192
190
|
var _proto = MemoryRouter.prototype;
|
|
193
191
|
|
|
194
192
|
_proto.render = function render() {
|
|
195
|
-
return React.createElement(Router, {
|
|
193
|
+
return /*#__PURE__*/React.createElement(Router, {
|
|
196
194
|
history: this.history,
|
|
197
195
|
children: this.props.children
|
|
198
196
|
});
|
|
@@ -215,9 +213,7 @@ function (_React$Component) {
|
|
|
215
213
|
};
|
|
216
214
|
}
|
|
217
215
|
|
|
218
|
-
var Lifecycle =
|
|
219
|
-
/*#__PURE__*/
|
|
220
|
-
function (_React$Component) {
|
|
216
|
+
var Lifecycle = /*#__PURE__*/function (_React$Component) {
|
|
221
217
|
_inheritsLoose(Lifecycle, _React$Component);
|
|
222
218
|
|
|
223
219
|
function Lifecycle() {
|
|
@@ -253,11 +249,11 @@ function Prompt(_ref) {
|
|
|
253
249
|
var message = _ref.message,
|
|
254
250
|
_ref$when = _ref.when,
|
|
255
251
|
when = _ref$when === void 0 ? true : _ref$when;
|
|
256
|
-
return React.createElement(context.Consumer, null, function (context) {
|
|
252
|
+
return /*#__PURE__*/React.createElement(context.Consumer, null, function (context) {
|
|
257
253
|
!context ? invariant(false, "You should not use <Prompt> outside a <Router>") : void 0;
|
|
258
254
|
if (!when || context.staticContext) return null;
|
|
259
255
|
var method = context.history.block;
|
|
260
|
-
return React.createElement(Lifecycle, {
|
|
256
|
+
return /*#__PURE__*/React.createElement(Lifecycle, {
|
|
261
257
|
onMount: function onMount(self) {
|
|
262
258
|
self.release = method(message);
|
|
263
259
|
},
|
|
@@ -326,7 +322,7 @@ function Redirect(_ref) {
|
|
|
326
322
|
to = _ref.to,
|
|
327
323
|
_ref$push = _ref.push,
|
|
328
324
|
push = _ref$push === void 0 ? false : _ref$push;
|
|
329
|
-
return React.createElement(context.Consumer, null, function (context) {
|
|
325
|
+
return /*#__PURE__*/React.createElement(context.Consumer, null, function (context) {
|
|
330
326
|
!context ? invariant(false, "You should not use <Redirect> outside a <Router>") : void 0;
|
|
331
327
|
var history$1 = context.history,
|
|
332
328
|
staticContext = context.staticContext;
|
|
@@ -341,7 +337,7 @@ function Redirect(_ref) {
|
|
|
341
337
|
return null;
|
|
342
338
|
}
|
|
343
339
|
|
|
344
|
-
return React.createElement(Lifecycle, {
|
|
340
|
+
return /*#__PURE__*/React.createElement(Lifecycle, {
|
|
345
341
|
onMount: function onMount() {
|
|
346
342
|
method(location);
|
|
347
343
|
},
|
|
@@ -461,9 +457,7 @@ function evalChildrenDev(children, props, path) {
|
|
|
461
457
|
*/
|
|
462
458
|
|
|
463
459
|
|
|
464
|
-
var Route =
|
|
465
|
-
/*#__PURE__*/
|
|
466
|
-
function (_React$Component) {
|
|
460
|
+
var Route = /*#__PURE__*/function (_React$Component) {
|
|
467
461
|
_inheritsLoose(Route, _React$Component);
|
|
468
462
|
|
|
469
463
|
function Route() {
|
|
@@ -475,7 +469,7 @@ function (_React$Component) {
|
|
|
475
469
|
_proto.render = function render() {
|
|
476
470
|
var _this = this;
|
|
477
471
|
|
|
478
|
-
return React.createElement(context.Consumer, null, function (context$1) {
|
|
472
|
+
return /*#__PURE__*/React.createElement(context.Consumer, null, function (context$1) {
|
|
479
473
|
!context$1 ? invariant(false, "You should not use <Route> outside a <Router>") : void 0;
|
|
480
474
|
var location = _this.props.location || context$1.location;
|
|
481
475
|
var match = _this.props.computedMatch ? _this.props.computedMatch // <Switch> already computed the match for us
|
|
@@ -492,13 +486,13 @@ function (_React$Component) {
|
|
|
492
486
|
render = _this$props.render; // Preact uses an empty array as children by
|
|
493
487
|
// default, so use null if that's the case.
|
|
494
488
|
|
|
495
|
-
if (Array.isArray(children) && children
|
|
489
|
+
if (Array.isArray(children) && isEmptyChildren(children)) {
|
|
496
490
|
children = null;
|
|
497
491
|
}
|
|
498
492
|
|
|
499
|
-
return React.createElement(context.Provider, {
|
|
493
|
+
return /*#__PURE__*/React.createElement(context.Provider, {
|
|
500
494
|
value: props
|
|
501
|
-
}, props.match ? children ? typeof children === "function" ? evalChildrenDev(children, props, _this.props.path) : children : component ? React.createElement(component, props) : render ? render(props) : null : typeof children === "function" ? evalChildrenDev(children, props, _this.props.path) : null);
|
|
495
|
+
}, props.match ? children ? typeof children === "function" ? evalChildrenDev(children, props, _this.props.path) : children : component ? /*#__PURE__*/React.createElement(component, props) : render ? render(props) : null : typeof children === "function" ? evalChildrenDev(children, props, _this.props.path) : null);
|
|
502
496
|
});
|
|
503
497
|
};
|
|
504
498
|
|
|
@@ -572,9 +566,7 @@ function noop() {}
|
|
|
572
566
|
*/
|
|
573
567
|
|
|
574
568
|
|
|
575
|
-
var StaticRouter =
|
|
576
|
-
/*#__PURE__*/
|
|
577
|
-
function (_React$Component) {
|
|
569
|
+
var StaticRouter = /*#__PURE__*/function (_React$Component) {
|
|
578
570
|
_inheritsLoose(StaticRouter, _React$Component);
|
|
579
571
|
|
|
580
572
|
function StaticRouter() {
|
|
@@ -642,7 +634,7 @@ function (_React$Component) {
|
|
|
642
634
|
listen: this.handleListen,
|
|
643
635
|
block: this.handleBlock
|
|
644
636
|
};
|
|
645
|
-
return React.createElement(Router, _extends({}, rest, {
|
|
637
|
+
return /*#__PURE__*/React.createElement(Router, _extends({}, rest, {
|
|
646
638
|
history: history$1,
|
|
647
639
|
staticContext: context
|
|
648
640
|
}));
|
|
@@ -667,9 +659,7 @@ function (_React$Component) {
|
|
|
667
659
|
* The public API for rendering the first <Route> that matches.
|
|
668
660
|
*/
|
|
669
661
|
|
|
670
|
-
var Switch =
|
|
671
|
-
/*#__PURE__*/
|
|
672
|
-
function (_React$Component) {
|
|
662
|
+
var Switch = /*#__PURE__*/function (_React$Component) {
|
|
673
663
|
_inheritsLoose(Switch, _React$Component);
|
|
674
664
|
|
|
675
665
|
function Switch() {
|
|
@@ -681,7 +671,7 @@ function (_React$Component) {
|
|
|
681
671
|
_proto.render = function render() {
|
|
682
672
|
var _this = this;
|
|
683
673
|
|
|
684
|
-
return React.createElement(context.Consumer, null, function (context) {
|
|
674
|
+
return /*#__PURE__*/React.createElement(context.Consumer, null, function (context) {
|
|
685
675
|
!context ? invariant(false, "You should not use <Switch> outside a <Router>") : void 0;
|
|
686
676
|
var location = _this.props.location || context.location;
|
|
687
677
|
var element, match; // We use React.Children.forEach instead of React.Children.toArray().find()
|
|
@@ -690,7 +680,7 @@ function (_React$Component) {
|
|
|
690
680
|
// component at different URLs.
|
|
691
681
|
|
|
692
682
|
React.Children.forEach(_this.props.children, function (child) {
|
|
693
|
-
if (match == null && React.isValidElement(child)) {
|
|
683
|
+
if (match == null && /*#__PURE__*/React.isValidElement(child)) {
|
|
694
684
|
element = child;
|
|
695
685
|
var path = child.props.path || child.props.from;
|
|
696
686
|
match = path ? matchPath(location.pathname, _extends({}, child.props, {
|
|
@@ -698,7 +688,7 @@ function (_React$Component) {
|
|
|
698
688
|
})) : context.match;
|
|
699
689
|
}
|
|
700
690
|
});
|
|
701
|
-
return match ? React.cloneElement(element, {
|
|
691
|
+
return match ? /*#__PURE__*/React.cloneElement(element, {
|
|
702
692
|
location: location,
|
|
703
693
|
computedMatch: match
|
|
704
694
|
}) : null;
|
|
@@ -731,9 +721,9 @@ function withRouter(Component) {
|
|
|
731
721
|
var wrappedComponentRef = props.wrappedComponentRef,
|
|
732
722
|
remainingProps = _objectWithoutPropertiesLoose(props, ["wrappedComponentRef"]);
|
|
733
723
|
|
|
734
|
-
return React.createElement(context.Consumer, null, function (context) {
|
|
724
|
+
return /*#__PURE__*/React.createElement(context.Consumer, null, function (context) {
|
|
735
725
|
!context ? invariant(false, "You should not use <" + displayName + " /> outside a <Router>") : void 0;
|
|
736
|
-
return React.createElement(Component, _extends({}, remainingProps, context, {
|
|
726
|
+
return /*#__PURE__*/React.createElement(Component, _extends({}, remainingProps, context, {
|
|
737
727
|
ref: wrappedComponentRef
|
|
738
728
|
}));
|
|
739
729
|
});
|
package/cjs/react-router.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-router.js","sources":["../modules/createNameContext.js","../modules/HistoryContext.js","../modules/RouterContext.js","../modules/Router.js","../modules/MemoryRouter.js","../modules/Lifecycle.js","../modules/Prompt.js","../modules/generatePath.js","../modules/Redirect.js","../modules/matchPath.js","../modules/Route.js","../modules/StaticRouter.js","../modules/Switch.js","../modules/withRouter.js","../modules/hooks.js","../modules/index.js"],"sourcesContent":["// TODO: Replace with React.createContext once we can assume React 16+\nimport createContext from \"mini-create-react-context\";\n\nconst createNamedContext = name => {\n const context = createContext();\n context.displayName = name;\n\n return context;\n};\n\nexport default createNamedContext;\n","import createNamedContext from \"./createNameContext\";\n\nconst historyContext = /*#__PURE__*/ createNamedContext(\"Router-History\");\nexport default historyContext;\n","// TODO: Replace with React.createContext once we can assume React 16+\nimport createContext from \"mini-create-react-context\";\n\nconst createNamedContext = name => {\n const context = createContext();\n context.displayName = name;\n\n return context;\n};\n\nconst context = /*#__PURE__*/ createNamedContext(\"Router\");\nexport default context;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\nimport HistoryContext from \"./HistoryContext.js\";\nimport RouterContext from \"./RouterContext.js\";\n\n/**\n * The public API for putting history on context.\n */\nclass Router extends React.Component {\n static computeRootMatch(pathname) {\n return { path: \"/\", url: \"/\", params: {}, isExact: pathname === \"/\" };\n }\n\n constructor(props) {\n super(props);\n\n this.state = {\n location: props.history.location\n };\n\n // This is a bit of a hack. We have to start listening for location\n // changes here in the constructor in case there are any <Redirect>s\n // on the initial render. If there are, they will replace/push when\n // they mount and since cDM fires in children before parents, we may\n // get a new location before the <Router> is mounted.\n this._isMounted = false;\n this._pendingLocation = null;\n\n if (!props.staticContext) {\n this.unlisten = props.history.listen(location => {\n if (this._isMounted) {\n this.setState({ location });\n } else {\n this._pendingLocation = location;\n }\n });\n }\n }\n\n componentDidMount() {\n this._isMounted = true;\n\n if (this._pendingLocation) {\n this.setState({ location: this._pendingLocation });\n }\n }\n\n componentWillUnmount() {\n if (this.unlisten) this.unlisten();\n }\n\n render() {\n return (\n <RouterContext.Provider\n value={{\n history: this.props.history,\n location: this.state.location,\n match: Router.computeRootMatch(this.state.location.pathname),\n staticContext: this.props.staticContext\n }}\n >\n <HistoryContext.Provider\n children={this.props.children || null}\n value={this.props.history}\n />\n </RouterContext.Provider>\n );\n }\n}\n\nif (__DEV__) {\n Router.propTypes = {\n children: PropTypes.node,\n history: PropTypes.object.isRequired,\n staticContext: PropTypes.object\n };\n\n Router.prototype.componentDidUpdate = function(prevProps) {\n warning(\n prevProps.history === this.props.history,\n \"You cannot change <Router history>\"\n );\n };\n}\n\nexport default Router;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { createMemoryHistory as createHistory } from \"history\";\nimport warning from \"tiny-warning\";\n\nimport Router from \"./Router.js\";\n\n/**\n * The public API for a <Router> that stores location in memory.\n */\nclass MemoryRouter 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 MemoryRouter.propTypes = {\n initialEntries: PropTypes.array,\n initialIndex: PropTypes.number,\n getUserConfirmation: PropTypes.func,\n keyLength: PropTypes.number,\n children: PropTypes.node\n };\n\n MemoryRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \"<MemoryRouter> ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { MemoryRouter as Router }`.\"\n );\n };\n}\n\nexport default MemoryRouter;\n","import React from \"react\";\n\nclass Lifecycle extends React.Component {\n componentDidMount() {\n if (this.props.onMount) this.props.onMount.call(this, this);\n }\n\n componentDidUpdate(prevProps) {\n if (this.props.onUpdate) this.props.onUpdate.call(this, this, prevProps);\n }\n\n componentWillUnmount() {\n if (this.props.onUnmount) this.props.onUnmount.call(this, this);\n }\n\n render() {\n return null;\n }\n}\n\nexport default Lifecycle;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\n\nimport Lifecycle from \"./Lifecycle.js\";\nimport RouterContext from \"./RouterContext.js\";\n\n/**\n * The public API for prompting the user before navigating away from a screen.\n */\nfunction Prompt({ message, when = true }) {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <Prompt> outside a <Router>\");\n\n if (!when || context.staticContext) return null;\n\n const method = context.history.block;\n\n return (\n <Lifecycle\n onMount={self => {\n self.release = method(message);\n }}\n onUpdate={(self, prevProps) => {\n if (prevProps.message !== message) {\n self.release();\n self.release = method(message);\n }\n }}\n onUnmount={self => {\n self.release();\n }}\n message={message}\n />\n );\n }}\n </RouterContext.Consumer>\n );\n}\n\nif (__DEV__) {\n const messageType = PropTypes.oneOfType([PropTypes.func, PropTypes.string]);\n\n Prompt.propTypes = {\n when: PropTypes.bool,\n message: messageType.isRequired\n };\n}\n\nexport default Prompt;\n","import pathToRegexp from \"path-to-regexp\";\n\nconst cache = {};\nconst cacheLimit = 10000;\nlet cacheCount = 0;\n\nfunction compilePath(path) {\n if (cache[path]) return cache[path];\n\n const generator = pathToRegexp.compile(path);\n\n if (cacheCount < cacheLimit) {\n cache[path] = generator;\n cacheCount++;\n }\n\n return generator;\n}\n\n/**\n * Public API for generating a URL pathname from a path and parameters.\n */\nfunction generatePath(path = \"/\", params = {}) {\n return path === \"/\" ? path : compilePath(path)(params, { pretty: true });\n}\n\nexport default generatePath;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { createLocation, locationsAreEqual } from \"history\";\nimport invariant from \"tiny-invariant\";\n\nimport Lifecycle from \"./Lifecycle.js\";\nimport RouterContext from \"./RouterContext.js\";\nimport generatePath from \"./generatePath.js\";\n\n/**\n * The public API for navigating programmatically with a component.\n */\nfunction Redirect({ computedMatch, to, push = false }) {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <Redirect> outside a <Router>\");\n\n const { history, staticContext } = context;\n\n const method = push ? history.push : history.replace;\n const location = createLocation(\n computedMatch\n ? typeof to === \"string\"\n ? generatePath(to, computedMatch.params)\n : {\n ...to,\n pathname: generatePath(to.pathname, computedMatch.params)\n }\n : to\n );\n\n // When rendering in a static context,\n // set the new location immediately.\n if (staticContext) {\n method(location);\n return null;\n }\n\n return (\n <Lifecycle\n onMount={() => {\n method(location);\n }}\n onUpdate={(self, prevProps) => {\n const prevLocation = createLocation(prevProps.to);\n if (\n !locationsAreEqual(prevLocation, {\n ...location,\n key: prevLocation.key\n })\n ) {\n method(location);\n }\n }}\n to={to}\n />\n );\n }}\n </RouterContext.Consumer>\n );\n}\n\nif (__DEV__) {\n Redirect.propTypes = {\n push: PropTypes.bool,\n from: PropTypes.string,\n to: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired\n };\n}\n\nexport default Redirect;\n","import pathToRegexp from \"path-to-regexp\";\n\nconst cache = {};\nconst cacheLimit = 10000;\nlet cacheCount = 0;\n\nfunction compilePath(path, options) {\n const cacheKey = `${options.end}${options.strict}${options.sensitive}`;\n const pathCache = cache[cacheKey] || (cache[cacheKey] = {});\n\n if (pathCache[path]) return pathCache[path];\n\n const keys = [];\n const regexp = pathToRegexp(path, keys, options);\n const result = { regexp, keys };\n\n if (cacheCount < cacheLimit) {\n pathCache[path] = result;\n cacheCount++;\n }\n\n return result;\n}\n\n/**\n * Public API for matching a URL pathname to a path.\n */\nfunction matchPath(pathname, options = {}) {\n if (typeof options === \"string\" || Array.isArray(options)) {\n options = { path: options };\n }\n\n const { path, exact = false, strict = false, sensitive = false } = options;\n\n const paths = [].concat(path);\n\n return paths.reduce((matched, path) => {\n if (!path && path !== \"\") return null;\n if (matched) return matched;\n\n const { regexp, keys } = compilePath(path, {\n end: exact,\n strict,\n sensitive\n });\n const match = regexp.exec(pathname);\n\n if (!match) return null;\n\n const [url, ...values] = match;\n const isExact = pathname === url;\n\n if (exact && !isExact) return null;\n\n return {\n path, // the path used to match\n url: path === \"/\" && url === \"\" ? \"/\" : url, // the matched portion of the URL\n isExact, // whether or not we matched exactly\n params: keys.reduce((memo, key, index) => {\n memo[key.name] = values[index];\n return memo;\n }, {})\n };\n }, null);\n}\n\nexport default matchPath;\n","import React from \"react\";\nimport { isValidElementType } from \"react-is\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport warning from \"tiny-warning\";\n\nimport RouterContext from \"./RouterContext.js\";\nimport matchPath from \"./matchPath.js\";\n\nfunction isEmptyChildren(children) {\n return React.Children.count(children) === 0;\n}\n\nfunction evalChildrenDev(children, props, path) {\n const value = children(props);\n\n warning(\n value !== undefined,\n \"You returned `undefined` from the `children` function of \" +\n `<Route${path ? ` path=\"${path}\"` : \"\"}>, but you ` +\n \"should have returned a React element or `null`\"\n );\n\n return value || null;\n}\n\n/**\n * The public API for matching a single path and rendering.\n */\nclass Route extends React.Component {\n render() {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <Route> outside a <Router>\");\n\n const location = this.props.location || context.location;\n const match = this.props.computedMatch\n ? this.props.computedMatch // <Switch> already computed the match for us\n : this.props.path\n ? matchPath(location.pathname, this.props)\n : context.match;\n\n const props = { ...context, location, match };\n\n let { children, component, render } = this.props;\n\n // Preact uses an empty array as children by\n // default, so use null if that's the case.\n if (Array.isArray(children) && children.length === 0) {\n children = null;\n }\n\n return (\n <RouterContext.Provider value={props}>\n {props.match\n ? children\n ? typeof children === \"function\"\n ? __DEV__\n ? evalChildrenDev(children, props, this.props.path)\n : children(props)\n : children\n : component\n ? React.createElement(component, props)\n : render\n ? render(props)\n : null\n : typeof children === \"function\"\n ? __DEV__\n ? evalChildrenDev(children, props, this.props.path)\n : children(props)\n : null}\n </RouterContext.Provider>\n );\n }}\n </RouterContext.Consumer>\n );\n }\n}\n\nif (__DEV__) {\n Route.propTypes = {\n children: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n component: (props, propName) => {\n if (props[propName] && !isValidElementType(props[propName])) {\n return new Error(\n `Invalid prop 'component' supplied to 'Route': the prop is not a valid React component`\n );\n }\n },\n exact: PropTypes.bool,\n location: PropTypes.object,\n path: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string)\n ]),\n render: PropTypes.func,\n sensitive: PropTypes.bool,\n strict: PropTypes.bool\n };\n\n Route.prototype.componentDidMount = function() {\n warning(\n !(\n this.props.children &&\n !isEmptyChildren(this.props.children) &&\n this.props.component\n ),\n \"You should not use <Route component> and <Route children> in the same route; <Route component> will be ignored\"\n );\n\n warning(\n !(\n this.props.children &&\n !isEmptyChildren(this.props.children) &&\n this.props.render\n ),\n \"You should not use <Route render> and <Route children> in the same route; <Route render> will be ignored\"\n );\n\n warning(\n !(this.props.component && this.props.render),\n \"You should not use <Route component> and <Route render> in the same route; <Route render> will be ignored\"\n );\n };\n\n Route.prototype.componentDidUpdate = function(prevProps) {\n warning(\n !(this.props.location && !prevProps.location),\n '<Route> elements should not change from uncontrolled to controlled (or vice versa). You initially used no \"location\" prop and then provided one on a subsequent render.'\n );\n\n warning(\n !(!this.props.location && prevProps.location),\n '<Route> elements should not change from controlled to uncontrolled (or vice versa). You provided a \"location\" prop initially but omitted it on a subsequent render.'\n );\n };\n}\n\nexport default Route;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { createLocation, createPath } from \"history\";\nimport invariant from \"tiny-invariant\";\nimport warning from \"tiny-warning\";\n\nimport Router from \"./Router.js\";\n\nfunction addLeadingSlash(path) {\n return path.charAt(0) === \"/\" ? path : \"/\" + path;\n}\n\nfunction addBasename(basename, location) {\n if (!basename) return location;\n\n return {\n ...location,\n pathname: addLeadingSlash(basename) + location.pathname\n };\n}\n\nfunction stripBasename(basename, location) {\n if (!basename) return location;\n\n const base = addLeadingSlash(basename);\n\n if (location.pathname.indexOf(base) !== 0) return location;\n\n return {\n ...location,\n pathname: location.pathname.substr(base.length)\n };\n}\n\nfunction createURL(location) {\n return typeof location === \"string\" ? location : createPath(location);\n}\n\nfunction staticHandler(methodName) {\n return () => {\n invariant(false, \"You cannot %s with <StaticRouter>\", methodName);\n };\n}\n\nfunction noop() {}\n\n/**\n * The public top-level API for a \"static\" <Router>, so-called because it\n * can't actually change the current location. Instead, it just records\n * location changes in a context object. Useful mainly in testing and\n * server-rendering scenarios.\n */\nclass StaticRouter extends React.Component {\n navigateTo(location, action) {\n const { basename = \"\", context = {} } = this.props;\n context.action = action;\n context.location = addBasename(basename, createLocation(location));\n context.url = createURL(context.location);\n }\n\n handlePush = location => this.navigateTo(location, \"PUSH\");\n handleReplace = location => this.navigateTo(location, \"REPLACE\");\n handleListen = () => noop;\n handleBlock = () => noop;\n\n render() {\n const { basename = \"\", context = {}, location = \"/\", ...rest } = this.props;\n\n const history = {\n createHref: path => addLeadingSlash(basename + createURL(path)),\n action: \"POP\",\n location: stripBasename(basename, createLocation(location)),\n push: this.handlePush,\n replace: this.handleReplace,\n go: staticHandler(\"go\"),\n goBack: staticHandler(\"goBack\"),\n goForward: staticHandler(\"goForward\"),\n listen: this.handleListen,\n block: this.handleBlock\n };\n\n return <Router {...rest} history={history} staticContext={context} />;\n }\n}\n\nif (__DEV__) {\n StaticRouter.propTypes = {\n basename: PropTypes.string,\n context: PropTypes.object,\n location: PropTypes.oneOfType([PropTypes.string, PropTypes.object])\n };\n\n StaticRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \"<StaticRouter> ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { StaticRouter as Router }`.\"\n );\n };\n}\n\nexport default StaticRouter;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport warning from \"tiny-warning\";\n\nimport RouterContext from \"./RouterContext.js\";\nimport matchPath from \"./matchPath.js\";\n\n/**\n * The public API for rendering the first <Route> that matches.\n */\nclass Switch extends React.Component {\n render() {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <Switch> outside a <Router>\");\n\n const location = this.props.location || context.location;\n\n let element, match;\n\n // We use React.Children.forEach instead of React.Children.toArray().find()\n // here because toArray adds keys to all child elements and we do not want\n // to trigger an unmount/remount for two <Route>s that render the same\n // component at different URLs.\n React.Children.forEach(this.props.children, child => {\n if (match == null && React.isValidElement(child)) {\n element = child;\n\n const path = child.props.path || child.props.from;\n\n match = path\n ? matchPath(location.pathname, { ...child.props, path })\n : context.match;\n }\n });\n\n return match\n ? React.cloneElement(element, { location, computedMatch: match })\n : null;\n }}\n </RouterContext.Consumer>\n );\n }\n}\n\nif (__DEV__) {\n Switch.propTypes = {\n children: PropTypes.node,\n location: PropTypes.object\n };\n\n Switch.prototype.componentDidUpdate = function(prevProps) {\n warning(\n !(this.props.location && !prevProps.location),\n '<Switch> elements should not change from uncontrolled to controlled (or vice versa). You initially used no \"location\" prop and then provided one on a subsequent render.'\n );\n\n warning(\n !(!this.props.location && prevProps.location),\n '<Switch> elements should not change from controlled to uncontrolled (or vice versa). You provided a \"location\" prop initially but omitted it on a subsequent render.'\n );\n };\n}\n\nexport default Switch;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport hoistStatics from \"hoist-non-react-statics\";\nimport invariant from \"tiny-invariant\";\n\nimport RouterContext from \"./RouterContext.js\";\n\n/**\n * A public higher-order component to access the imperative API\n */\nfunction withRouter(Component) {\n const displayName = `withRouter(${Component.displayName || Component.name})`;\n const C = props => {\n const { wrappedComponentRef, ...remainingProps } = props;\n\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(\n context,\n `You should not use <${displayName} /> outside a <Router>`\n );\n return (\n <Component\n {...remainingProps}\n {...context}\n ref={wrappedComponentRef}\n />\n );\n }}\n </RouterContext.Consumer>\n );\n };\n\n C.displayName = displayName;\n C.WrappedComponent = Component;\n\n if (__DEV__) {\n C.propTypes = {\n wrappedComponentRef: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.object\n ])\n };\n }\n\n return hoistStatics(C, Component);\n}\n\nexport default withRouter;\n","import React from \"react\";\nimport invariant from \"tiny-invariant\";\n\nimport Context from \"./RouterContext.js\";\nimport HistoryContext from \"./HistoryContext.js\";\nimport matchPath from \"./matchPath.js\";\n\nconst useContext = React.useContext;\n\nexport function useHistory() {\n if (__DEV__) {\n invariant(\n typeof useContext === \"function\",\n \"You must use React >= 16.8 in order to use useHistory()\"\n );\n }\n\n return useContext(HistoryContext);\n}\n\nexport function useLocation() {\n if (__DEV__) {\n invariant(\n typeof useContext === \"function\",\n \"You must use React >= 16.8 in order to use useLocation()\"\n );\n }\n\n return useContext(Context).location;\n}\n\nexport function useParams() {\n if (__DEV__) {\n invariant(\n typeof useContext === \"function\",\n \"You must use React >= 16.8 in order to use useParams()\"\n );\n }\n\n const match = useContext(Context).match;\n return match ? match.params : {};\n}\n\nexport function useRouteMatch(path) {\n if (__DEV__) {\n invariant(\n typeof useContext === \"function\",\n \"You must use React >= 16.8 in order to use useRouteMatch()\"\n );\n }\n\n const location = useLocation();\n const match = useContext(Context).match;\n\n return path ? matchPath(location.pathname, path) : match;\n}\n","if (__DEV__) {\n if (typeof window !== \"undefined\") {\n const global = window;\n const key = \"__react_router_build__\";\n const buildNames = { cjs: \"CommonJS\", esm: \"ES modules\", umd: \"UMD\" };\n\n if (global[key] && global[key] !== process.env.BUILD_FORMAT) {\n const initialBuildName = buildNames[global[key]];\n const secondaryBuildName = buildNames[process.env.BUILD_FORMAT];\n\n // TODO: Add link to article that explains in detail how to avoid\n // loading 2 different builds.\n throw new Error(\n `You are loading the ${secondaryBuildName} build of React Router ` +\n `on a page that is already running the ${initialBuildName} ` +\n `build, so things won't work right.`\n );\n }\n\n global[key] = process.env.BUILD_FORMAT;\n }\n}\n\nexport { default as MemoryRouter } from \"./MemoryRouter.js\";\nexport { default as Prompt } from \"./Prompt.js\";\nexport { default as Redirect } from \"./Redirect.js\";\nexport { default as Route } from \"./Route.js\";\nexport { default as Router } from \"./Router.js\";\nexport { default as StaticRouter } from \"./StaticRouter.js\";\nexport { default as Switch } from \"./Switch.js\";\nexport { default as generatePath } from \"./generatePath.js\";\nexport { default as matchPath } from \"./matchPath.js\";\nexport { default as withRouter } from \"./withRouter.js\";\n\nimport { useHistory, useLocation, useParams, useRouteMatch } from \"./hooks.js\";\nexport { useHistory, useLocation, useParams, useRouteMatch };\n\nexport { default as __HistoryContext } from \"./HistoryContext.js\";\nexport { default as __RouterContext } from \"./RouterContext.js\";\n"],"names":["createNamedContext","name","context","createContext","displayName","historyContext","Router","computeRootMatch","pathname","path","url","params","isExact","props","state","location","history","_isMounted","_pendingLocation","staticContext","unlisten","listen","setState","componentDidMount","componentWillUnmount","render","RouterContext","match","HistoryContext","children","React","Component","propTypes","PropTypes","node","object","isRequired","prototype","componentDidUpdate","prevProps","warning","MemoryRouter","createHistory","initialEntries","array","initialIndex","number","getUserConfirmation","func","keyLength","Lifecycle","onMount","call","onUpdate","onUnmount","Prompt","message","when","invariant","method","block","self","release","messageType","oneOfType","string","bool","cache","cacheLimit","cacheCount","compilePath","generator","pathToRegexp","compile","generatePath","pretty","Redirect","computedMatch","to","push","replace","createLocation","prevLocation","locationsAreEqual","key","from","options","cacheKey","end","strict","sensitive","pathCache","keys","regexp","result","matchPath","Array","isArray","exact","paths","concat","reduce","matched","exec","values","memo","index","isEmptyChildren","Children","count","evalChildrenDev","value","undefined","Route","component","length","createElement","propName","isValidElementType","Error","arrayOf","addLeadingSlash","charAt","addBasename","basename","stripBasename","base","indexOf","substr","createURL","createPath","staticHandler","methodName","noop","StaticRouter","handlePush","navigateTo","handleReplace","handleListen","handleBlock","action","rest","createHref","go","goBack","goForward","Switch","element","forEach","child","isValidElement","cloneElement","withRouter","C","wrappedComponentRef","remainingProps","WrappedComponent","hoistStatics","useContext","useHistory","useLocation","Context","useParams","useRouteMatch","window","global","buildNames","cjs","esm","umd","process","initialBuildName","secondaryBuildName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"react-router.js","sources":["../modules/createNameContext.js","../modules/HistoryContext.js","../modules/RouterContext.js","../modules/Router.js","../modules/MemoryRouter.js","../modules/Lifecycle.js","../modules/Prompt.js","../modules/generatePath.js","../modules/Redirect.js","../modules/matchPath.js","../modules/Route.js","../modules/StaticRouter.js","../modules/Switch.js","../modules/withRouter.js","../modules/hooks.js","../modules/index.js"],"sourcesContent":["// TODO: Replace with React.createContext once we can assume React 16+\nimport createContext from \"mini-create-react-context\";\n\nconst createNamedContext = name => {\n const context = createContext();\n context.displayName = name;\n\n return context;\n};\n\nexport default createNamedContext;\n","import createNamedContext from \"./createNameContext\";\n\nconst historyContext = /*#__PURE__*/ createNamedContext(\"Router-History\");\nexport default historyContext;\n","import createNamedContext from \"./createNameContext\";\n\nconst context = /*#__PURE__*/ createNamedContext(\"Router\");\nexport default context;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\nimport HistoryContext from \"./HistoryContext.js\";\nimport RouterContext from \"./RouterContext.js\";\n\n/**\n * The public API for putting history on context.\n */\nclass Router extends React.Component {\n static computeRootMatch(pathname) {\n return { path: \"/\", url: \"/\", params: {}, isExact: pathname === \"/\" };\n }\n\n constructor(props) {\n super(props);\n\n this.state = {\n location: props.history.location\n };\n\n // This is a bit of a hack. We have to start listening for location\n // changes here in the constructor in case there are any <Redirect>s\n // on the initial render. If there are, they will replace/push when\n // they mount and since cDM fires in children before parents, we may\n // get a new location before the <Router> is mounted.\n this._isMounted = false;\n this._pendingLocation = null;\n\n if (!props.staticContext) {\n this.unlisten = props.history.listen(location => {\n if (this._isMounted) {\n this.setState({ location });\n } else {\n this._pendingLocation = location;\n }\n });\n }\n }\n\n componentDidMount() {\n this._isMounted = true;\n\n if (this._pendingLocation) {\n this.setState({ location: this._pendingLocation });\n }\n }\n\n componentWillUnmount() {\n if (this.unlisten) {\n this.unlisten();\n this._isMounted = false;\n this._pendingLocation = null;\n }\n }\n\n render() {\n return (\n <RouterContext.Provider\n value={{\n history: this.props.history,\n location: this.state.location,\n match: Router.computeRootMatch(this.state.location.pathname),\n staticContext: this.props.staticContext\n }}\n >\n <HistoryContext.Provider\n children={this.props.children || null}\n value={this.props.history}\n />\n </RouterContext.Provider>\n );\n }\n}\n\nif (__DEV__) {\n Router.propTypes = {\n children: PropTypes.node,\n history: PropTypes.object.isRequired,\n staticContext: PropTypes.object\n };\n\n Router.prototype.componentDidUpdate = function(prevProps) {\n warning(\n prevProps.history === this.props.history,\n \"You cannot change <Router history>\"\n );\n };\n}\n\nexport default Router;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { createMemoryHistory as createHistory } from \"history\";\nimport warning from \"tiny-warning\";\n\nimport Router from \"./Router.js\";\n\n/**\n * The public API for a <Router> that stores location in memory.\n */\nclass MemoryRouter 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 MemoryRouter.propTypes = {\n initialEntries: PropTypes.array,\n initialIndex: PropTypes.number,\n getUserConfirmation: PropTypes.func,\n keyLength: PropTypes.number,\n children: PropTypes.node\n };\n\n MemoryRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \"<MemoryRouter> ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { MemoryRouter as Router }`.\"\n );\n };\n}\n\nexport default MemoryRouter;\n","import React from \"react\";\n\nclass Lifecycle extends React.Component {\n componentDidMount() {\n if (this.props.onMount) this.props.onMount.call(this, this);\n }\n\n componentDidUpdate(prevProps) {\n if (this.props.onUpdate) this.props.onUpdate.call(this, this, prevProps);\n }\n\n componentWillUnmount() {\n if (this.props.onUnmount) this.props.onUnmount.call(this, this);\n }\n\n render() {\n return null;\n }\n}\n\nexport default Lifecycle;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\n\nimport Lifecycle from \"./Lifecycle.js\";\nimport RouterContext from \"./RouterContext.js\";\n\n/**\n * The public API for prompting the user before navigating away from a screen.\n */\nfunction Prompt({ message, when = true }) {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <Prompt> outside a <Router>\");\n\n if (!when || context.staticContext) return null;\n\n const method = context.history.block;\n\n return (\n <Lifecycle\n onMount={self => {\n self.release = method(message);\n }}\n onUpdate={(self, prevProps) => {\n if (prevProps.message !== message) {\n self.release();\n self.release = method(message);\n }\n }}\n onUnmount={self => {\n self.release();\n }}\n message={message}\n />\n );\n }}\n </RouterContext.Consumer>\n );\n}\n\nif (__DEV__) {\n const messageType = PropTypes.oneOfType([PropTypes.func, PropTypes.string]);\n\n Prompt.propTypes = {\n when: PropTypes.bool,\n message: messageType.isRequired\n };\n}\n\nexport default Prompt;\n","import pathToRegexp from \"path-to-regexp\";\n\nconst cache = {};\nconst cacheLimit = 10000;\nlet cacheCount = 0;\n\nfunction compilePath(path) {\n if (cache[path]) return cache[path];\n\n const generator = pathToRegexp.compile(path);\n\n if (cacheCount < cacheLimit) {\n cache[path] = generator;\n cacheCount++;\n }\n\n return generator;\n}\n\n/**\n * Public API for generating a URL pathname from a path and parameters.\n */\nfunction generatePath(path = \"/\", params = {}) {\n return path === \"/\" ? path : compilePath(path)(params, { pretty: true });\n}\n\nexport default generatePath;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { createLocation, locationsAreEqual } from \"history\";\nimport invariant from \"tiny-invariant\";\n\nimport Lifecycle from \"./Lifecycle.js\";\nimport RouterContext from \"./RouterContext.js\";\nimport generatePath from \"./generatePath.js\";\n\n/**\n * The public API for navigating programmatically with a component.\n */\nfunction Redirect({ computedMatch, to, push = false }) {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <Redirect> outside a <Router>\");\n\n const { history, staticContext } = context;\n\n const method = push ? history.push : history.replace;\n const location = createLocation(\n computedMatch\n ? typeof to === \"string\"\n ? generatePath(to, computedMatch.params)\n : {\n ...to,\n pathname: generatePath(to.pathname, computedMatch.params)\n }\n : to\n );\n\n // When rendering in a static context,\n // set the new location immediately.\n if (staticContext) {\n method(location);\n return null;\n }\n\n return (\n <Lifecycle\n onMount={() => {\n method(location);\n }}\n onUpdate={(self, prevProps) => {\n const prevLocation = createLocation(prevProps.to);\n if (\n !locationsAreEqual(prevLocation, {\n ...location,\n key: prevLocation.key\n })\n ) {\n method(location);\n }\n }}\n to={to}\n />\n );\n }}\n </RouterContext.Consumer>\n );\n}\n\nif (__DEV__) {\n Redirect.propTypes = {\n push: PropTypes.bool,\n from: PropTypes.string,\n to: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired\n };\n}\n\nexport default Redirect;\n","import pathToRegexp from \"path-to-regexp\";\n\nconst cache = {};\nconst cacheLimit = 10000;\nlet cacheCount = 0;\n\nfunction compilePath(path, options) {\n const cacheKey = `${options.end}${options.strict}${options.sensitive}`;\n const pathCache = cache[cacheKey] || (cache[cacheKey] = {});\n\n if (pathCache[path]) return pathCache[path];\n\n const keys = [];\n const regexp = pathToRegexp(path, keys, options);\n const result = { regexp, keys };\n\n if (cacheCount < cacheLimit) {\n pathCache[path] = result;\n cacheCount++;\n }\n\n return result;\n}\n\n/**\n * Public API for matching a URL pathname to a path.\n */\nfunction matchPath(pathname, options = {}) {\n if (typeof options === \"string\" || Array.isArray(options)) {\n options = { path: options };\n }\n\n const { path, exact = false, strict = false, sensitive = false } = options;\n\n const paths = [].concat(path);\n\n return paths.reduce((matched, path) => {\n if (!path && path !== \"\") return null;\n if (matched) return matched;\n\n const { regexp, keys } = compilePath(path, {\n end: exact,\n strict,\n sensitive\n });\n const match = regexp.exec(pathname);\n\n if (!match) return null;\n\n const [url, ...values] = match;\n const isExact = pathname === url;\n\n if (exact && !isExact) return null;\n\n return {\n path, // the path used to match\n url: path === \"/\" && url === \"\" ? \"/\" : url, // the matched portion of the URL\n isExact, // whether or not we matched exactly\n params: keys.reduce((memo, key, index) => {\n memo[key.name] = values[index];\n return memo;\n }, {})\n };\n }, null);\n}\n\nexport default matchPath;\n","import React from \"react\";\nimport { isValidElementType } from \"react-is\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport warning from \"tiny-warning\";\n\nimport RouterContext from \"./RouterContext.js\";\nimport matchPath from \"./matchPath.js\";\n\nfunction isEmptyChildren(children) {\n return React.Children.count(children) === 0;\n}\n\nfunction evalChildrenDev(children, props, path) {\n const value = children(props);\n\n warning(\n value !== undefined,\n \"You returned `undefined` from the `children` function of \" +\n `<Route${path ? ` path=\"${path}\"` : \"\"}>, but you ` +\n \"should have returned a React element or `null`\"\n );\n\n return value || null;\n}\n\n/**\n * The public API for matching a single path and rendering.\n */\nclass Route extends React.Component {\n render() {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <Route> outside a <Router>\");\n\n const location = this.props.location || context.location;\n const match = this.props.computedMatch\n ? this.props.computedMatch // <Switch> already computed the match for us\n : this.props.path\n ? matchPath(location.pathname, this.props)\n : context.match;\n\n const props = { ...context, location, match };\n\n let { children, component, render } = this.props;\n\n // Preact uses an empty array as children by\n // default, so use null if that's the case.\n if (Array.isArray(children) && isEmptyChildren(children)) {\n children = null;\n }\n\n return (\n <RouterContext.Provider value={props}>\n {props.match\n ? children\n ? typeof children === \"function\"\n ? __DEV__\n ? evalChildrenDev(children, props, this.props.path)\n : children(props)\n : children\n : component\n ? React.createElement(component, props)\n : render\n ? render(props)\n : null\n : typeof children === \"function\"\n ? __DEV__\n ? evalChildrenDev(children, props, this.props.path)\n : children(props)\n : null}\n </RouterContext.Provider>\n );\n }}\n </RouterContext.Consumer>\n );\n }\n}\n\nif (__DEV__) {\n Route.propTypes = {\n children: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n component: (props, propName) => {\n if (props[propName] && !isValidElementType(props[propName])) {\n return new Error(\n `Invalid prop 'component' supplied to 'Route': the prop is not a valid React component`\n );\n }\n },\n exact: PropTypes.bool,\n location: PropTypes.object,\n path: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string)\n ]),\n render: PropTypes.func,\n sensitive: PropTypes.bool,\n strict: PropTypes.bool\n };\n\n Route.prototype.componentDidMount = function() {\n warning(\n !(\n this.props.children &&\n !isEmptyChildren(this.props.children) &&\n this.props.component\n ),\n \"You should not use <Route component> and <Route children> in the same route; <Route component> will be ignored\"\n );\n\n warning(\n !(\n this.props.children &&\n !isEmptyChildren(this.props.children) &&\n this.props.render\n ),\n \"You should not use <Route render> and <Route children> in the same route; <Route render> will be ignored\"\n );\n\n warning(\n !(this.props.component && this.props.render),\n \"You should not use <Route component> and <Route render> in the same route; <Route render> will be ignored\"\n );\n };\n\n Route.prototype.componentDidUpdate = function(prevProps) {\n warning(\n !(this.props.location && !prevProps.location),\n '<Route> elements should not change from uncontrolled to controlled (or vice versa). You initially used no \"location\" prop and then provided one on a subsequent render.'\n );\n\n warning(\n !(!this.props.location && prevProps.location),\n '<Route> elements should not change from controlled to uncontrolled (or vice versa). You provided a \"location\" prop initially but omitted it on a subsequent render.'\n );\n };\n}\n\nexport default Route;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { createLocation, createPath } from \"history\";\nimport invariant from \"tiny-invariant\";\nimport warning from \"tiny-warning\";\n\nimport Router from \"./Router.js\";\n\nfunction addLeadingSlash(path) {\n return path.charAt(0) === \"/\" ? path : \"/\" + path;\n}\n\nfunction addBasename(basename, location) {\n if (!basename) return location;\n\n return {\n ...location,\n pathname: addLeadingSlash(basename) + location.pathname\n };\n}\n\nfunction stripBasename(basename, location) {\n if (!basename) return location;\n\n const base = addLeadingSlash(basename);\n\n if (location.pathname.indexOf(base) !== 0) return location;\n\n return {\n ...location,\n pathname: location.pathname.substr(base.length)\n };\n}\n\nfunction createURL(location) {\n return typeof location === \"string\" ? location : createPath(location);\n}\n\nfunction staticHandler(methodName) {\n return () => {\n invariant(false, \"You cannot %s with <StaticRouter>\", methodName);\n };\n}\n\nfunction noop() {}\n\n/**\n * The public top-level API for a \"static\" <Router>, so-called because it\n * can't actually change the current location. Instead, it just records\n * location changes in a context object. Useful mainly in testing and\n * server-rendering scenarios.\n */\nclass StaticRouter extends React.Component {\n navigateTo(location, action) {\n const { basename = \"\", context = {} } = this.props;\n context.action = action;\n context.location = addBasename(basename, createLocation(location));\n context.url = createURL(context.location);\n }\n\n handlePush = location => this.navigateTo(location, \"PUSH\");\n handleReplace = location => this.navigateTo(location, \"REPLACE\");\n handleListen = () => noop;\n handleBlock = () => noop;\n\n render() {\n const { basename = \"\", context = {}, location = \"/\", ...rest } = this.props;\n\n const history = {\n createHref: path => addLeadingSlash(basename + createURL(path)),\n action: \"POP\",\n location: stripBasename(basename, createLocation(location)),\n push: this.handlePush,\n replace: this.handleReplace,\n go: staticHandler(\"go\"),\n goBack: staticHandler(\"goBack\"),\n goForward: staticHandler(\"goForward\"),\n listen: this.handleListen,\n block: this.handleBlock\n };\n\n return <Router {...rest} history={history} staticContext={context} />;\n }\n}\n\nif (__DEV__) {\n StaticRouter.propTypes = {\n basename: PropTypes.string,\n context: PropTypes.object,\n location: PropTypes.oneOfType([PropTypes.string, PropTypes.object])\n };\n\n StaticRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \"<StaticRouter> ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { StaticRouter as Router }`.\"\n );\n };\n}\n\nexport default StaticRouter;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport warning from \"tiny-warning\";\n\nimport RouterContext from \"./RouterContext.js\";\nimport matchPath from \"./matchPath.js\";\n\n/**\n * The public API for rendering the first <Route> that matches.\n */\nclass Switch extends React.Component {\n render() {\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(context, \"You should not use <Switch> outside a <Router>\");\n\n const location = this.props.location || context.location;\n\n let element, match;\n\n // We use React.Children.forEach instead of React.Children.toArray().find()\n // here because toArray adds keys to all child elements and we do not want\n // to trigger an unmount/remount for two <Route>s that render the same\n // component at different URLs.\n React.Children.forEach(this.props.children, child => {\n if (match == null && React.isValidElement(child)) {\n element = child;\n\n const path = child.props.path || child.props.from;\n\n match = path\n ? matchPath(location.pathname, { ...child.props, path })\n : context.match;\n }\n });\n\n return match\n ? React.cloneElement(element, { location, computedMatch: match })\n : null;\n }}\n </RouterContext.Consumer>\n );\n }\n}\n\nif (__DEV__) {\n Switch.propTypes = {\n children: PropTypes.node,\n location: PropTypes.object\n };\n\n Switch.prototype.componentDidUpdate = function(prevProps) {\n warning(\n !(this.props.location && !prevProps.location),\n '<Switch> elements should not change from uncontrolled to controlled (or vice versa). You initially used no \"location\" prop and then provided one on a subsequent render.'\n );\n\n warning(\n !(!this.props.location && prevProps.location),\n '<Switch> elements should not change from controlled to uncontrolled (or vice versa). You provided a \"location\" prop initially but omitted it on a subsequent render.'\n );\n };\n}\n\nexport default Switch;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport hoistStatics from \"hoist-non-react-statics\";\nimport invariant from \"tiny-invariant\";\n\nimport RouterContext from \"./RouterContext.js\";\n\n/**\n * A public higher-order component to access the imperative API\n */\nfunction withRouter(Component) {\n const displayName = `withRouter(${Component.displayName || Component.name})`;\n const C = props => {\n const { wrappedComponentRef, ...remainingProps } = props;\n\n return (\n <RouterContext.Consumer>\n {context => {\n invariant(\n context,\n `You should not use <${displayName} /> outside a <Router>`\n );\n return (\n <Component\n {...remainingProps}\n {...context}\n ref={wrappedComponentRef}\n />\n );\n }}\n </RouterContext.Consumer>\n );\n };\n\n C.displayName = displayName;\n C.WrappedComponent = Component;\n\n if (__DEV__) {\n C.propTypes = {\n wrappedComponentRef: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.object\n ])\n };\n }\n\n return hoistStatics(C, Component);\n}\n\nexport default withRouter;\n","import React from \"react\";\nimport invariant from \"tiny-invariant\";\n\nimport RouterContext from \"./RouterContext.js\";\nimport HistoryContext from \"./HistoryContext.js\";\nimport matchPath from \"./matchPath.js\";\n\nconst useContext = React.useContext;\n\nexport function useHistory() {\n if (__DEV__) {\n invariant(\n typeof useContext === \"function\",\n \"You must use React >= 16.8 in order to use useHistory()\"\n );\n }\n\n return useContext(HistoryContext);\n}\n\nexport function useLocation() {\n if (__DEV__) {\n invariant(\n typeof useContext === \"function\",\n \"You must use React >= 16.8 in order to use useLocation()\"\n );\n }\n\n return useContext(RouterContext).location;\n}\n\nexport function useParams() {\n if (__DEV__) {\n invariant(\n typeof useContext === \"function\",\n \"You must use React >= 16.8 in order to use useParams()\"\n );\n }\n\n const match = useContext(RouterContext).match;\n return match ? match.params : {};\n}\n\nexport function useRouteMatch(path) {\n if (__DEV__) {\n invariant(\n typeof useContext === \"function\",\n \"You must use React >= 16.8 in order to use useRouteMatch()\"\n );\n }\n\n const location = useLocation();\n const match = useContext(RouterContext).match;\n return path ? matchPath(location.pathname, path) : match;\n}\n","if (__DEV__) {\n if (typeof window !== \"undefined\") {\n const global = window;\n const key = \"__react_router_build__\";\n const buildNames = { cjs: \"CommonJS\", esm: \"ES modules\", umd: \"UMD\" };\n\n if (global[key] && global[key] !== process.env.BUILD_FORMAT) {\n const initialBuildName = buildNames[global[key]];\n const secondaryBuildName = buildNames[process.env.BUILD_FORMAT];\n\n // TODO: Add link to article that explains in detail how to avoid\n // loading 2 different builds.\n throw new Error(\n `You are loading the ${secondaryBuildName} build of React Router ` +\n `on a page that is already running the ${initialBuildName} ` +\n `build, so things won't work right.`\n );\n }\n\n global[key] = process.env.BUILD_FORMAT;\n }\n}\n\nexport { default as MemoryRouter } from \"./MemoryRouter.js\";\nexport { default as Prompt } from \"./Prompt.js\";\nexport { default as Redirect } from \"./Redirect.js\";\nexport { default as Route } from \"./Route.js\";\nexport { default as Router } from \"./Router.js\";\nexport { default as StaticRouter } from \"./StaticRouter.js\";\nexport { default as Switch } from \"./Switch.js\";\nexport { default as generatePath } from \"./generatePath.js\";\nexport { default as matchPath } from \"./matchPath.js\";\nexport { default as withRouter } from \"./withRouter.js\";\n\nexport { default as __HistoryContext } from \"./HistoryContext.js\";\nexport { default as __RouterContext } from \"./RouterContext.js\";\n\nexport { useHistory, useLocation, useParams, useRouteMatch } from \"./hooks.js\";\n"],"names":["createNamedContext","name","context","createContext","displayName","historyContext","Router","computeRootMatch","pathname","path","url","params","isExact","props","state","location","history","_isMounted","_pendingLocation","staticContext","unlisten","listen","setState","componentDidMount","componentWillUnmount","render","RouterContext","match","HistoryContext","children","React","Component","propTypes","PropTypes","node","object","isRequired","prototype","componentDidUpdate","prevProps","warning","MemoryRouter","createHistory","initialEntries","array","initialIndex","number","getUserConfirmation","func","keyLength","Lifecycle","onMount","call","onUpdate","onUnmount","Prompt","message","when","invariant","method","block","self","release","messageType","oneOfType","string","bool","cache","cacheLimit","cacheCount","compilePath","generator","pathToRegexp","compile","generatePath","pretty","Redirect","computedMatch","to","push","replace","createLocation","prevLocation","locationsAreEqual","key","from","options","cacheKey","end","strict","sensitive","pathCache","keys","regexp","result","matchPath","Array","isArray","exact","paths","concat","reduce","matched","exec","values","memo","index","isEmptyChildren","Children","count","evalChildrenDev","value","undefined","Route","component","createElement","propName","isValidElementType","Error","arrayOf","addLeadingSlash","charAt","addBasename","basename","stripBasename","base","indexOf","substr","length","createURL","createPath","staticHandler","methodName","noop","StaticRouter","handlePush","navigateTo","handleReplace","handleListen","handleBlock","action","rest","createHref","go","goBack","goForward","Switch","element","forEach","child","isValidElement","cloneElement","withRouter","C","wrappedComponentRef","remainingProps","WrappedComponent","hoistStatics","useContext","useHistory","useLocation","useParams","useRouteMatch","window","global","buildNames","cjs","esm","umd","process","initialBuildName","secondaryBuildName"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AAEA,IAAMA,kBAAkB,GAAG,SAArBA,kBAAqB,CAAAC,IAAI,EAAI;MAC3BC,OAAO,GAAGC,aAAa,EAA7B;EACAD,OAAO,CAACE,WAAR,GAAsBH,IAAtB;SAEOC,OAAP;CAJF;;ACDA,IAAMG,cAAc,gBAAiBL,kBAAkB,CAAC,gBAAD,CAAvD;;ACAA,IAAME,OAAO,gBAAiBF,kBAAkB,CAAC,QAAD,CAAhD;;ACKA;;;;IAGMM;;;SACGC,mBAAP,0BAAwBC,QAAxB,EAAkC;WACzB;MAAEC,IAAI,EAAE,GAAR;MAAaC,GAAG,EAAE,GAAlB;MAAuBC,MAAM,EAAE,EAA/B;MAAmCC,OAAO,EAAEJ,QAAQ,KAAK;KAAhE;;;kBAGUK,KAAZ,EAAmB;;;wCACXA,KAAN;UAEKC,KAAL,GAAa;MACXC,QAAQ,EAAEF,KAAK,CAACG,OAAN,CAAcD;KAD1B,CAHiB;;;;;;UAYZE,UAAL,GAAkB,KAAlB;UACKC,gBAAL,GAAwB,IAAxB;;QAEI,CAACL,KAAK,CAACM,aAAX,EAA0B;YACnBC,QAAL,GAAgBP,KAAK,CAACG,OAAN,CAAcK,MAAd,CAAqB,UAAAN,QAAQ,EAAI;YAC3C,MAAKE,UAAT,EAAqB;gBACdK,QAAL,CAAc;YAAEP,QAAQ,EAARA;WAAhB;SADF,MAEO;gBACAG,gBAAL,GAAwBH,QAAxB;;OAJY,CAAhB;;;;;;;;SAUJQ,oBAAA,6BAAoB;SACbN,UAAL,GAAkB,IAAlB;;QAEI,KAAKC,gBAAT,EAA2B;WACpBI,QAAL,CAAc;QAAEP,QAAQ,EAAE,KAAKG;OAA/B;;;;SAIJM,uBAAA,gCAAuB;QACjB,KAAKJ,QAAT,EAAmB;WACZA,QAAL;WACKH,UAAL,GAAkB,KAAlB;WACKC,gBAAL,GAAwB,IAAxB;;;;SAIJO,SAAA,kBAAS;wBAEL,oBAACC,OAAD,CAAe,QAAf;MACE,KAAK,EAAE;QACLV,OAAO,EAAE,KAAKH,KAAL,CAAWG,OADf;QAELD,QAAQ,EAAE,KAAKD,KAAL,CAAWC,QAFhB;QAGLY,KAAK,EAAErB,MAAM,CAACC,gBAAP,CAAwB,KAAKO,KAAL,CAAWC,QAAX,CAAoBP,QAA5C,CAHF;QAILW,aAAa,EAAE,KAAKN,KAAL,CAAWM;;oBAG5B,oBAACS,cAAD,CAAgB,QAAhB;MACE,QAAQ,EAAE,KAAKf,KAAL,CAAWgB,QAAX,IAAuB,IADnC;MAEE,KAAK,EAAE,KAAKhB,KAAL,CAAWG;MAVtB,CADF;;;;EAhDiBc,KAAK,CAACC;;AAkE3B,AAAa;EACXzB,MAAM,CAAC0B,SAAP,GAAmB;IACjBH,QAAQ,EAAEI,SAAS,CAACC,IADH;IAEjBlB,OAAO,EAAEiB,SAAS,CAACE,MAAV,CAAiBC,UAFT;IAGjBjB,aAAa,EAAEc,SAAS,CAACE;GAH3B;;EAMA7B,MAAM,CAAC+B,SAAP,CAAiBC,kBAAjB,GAAsC,UAASC,SAAT,EAAoB;KACxDC,OAAO,CACLD,SAAS,CAACvB,OAAV,KAAsB,KAAKH,KAAL,CAAWG,OAD5B,EAEL,oCAFK,CAAP;GADF;;;AC5EF;;;;IAGMyB;;;;;;;;;;;UACJzB,UAAU0B,2BAAa,CAAC,MAAK7B,KAAN;;;;;;SAEvBY,SAAA,kBAAS;wBACA,oBAAC,MAAD;MAAQ,OAAO,EAAE,KAAKT,OAAtB;MAA+B,QAAQ,EAAE,KAAKH,KAAL,CAAWgB;MAA3D;;;;EAJuBC,KAAK,CAACC;;AAQjC,AAAa;EACXU,YAAY,CAACT,SAAb,GAAyB;IACvBW,cAAc,EAAEV,SAAS,CAACW,KADH;IAEvBC,YAAY,EAAEZ,SAAS,CAACa,MAFD;IAGvBC,mBAAmB,EAAEd,SAAS,CAACe,IAHR;IAIvBC,SAAS,EAAEhB,SAAS,CAACa,MAJE;IAKvBjB,QAAQ,EAAEI,SAAS,CAACC;GALtB;;EAQAO,YAAY,CAACJ,SAAb,CAAuBd,iBAAvB,GAA2C,YAAW;KACpDiB,OAAO,CACL,CAAC,KAAK3B,KAAL,CAAWG,OADP,EAEL,uEACE,yEAHG,CAAP;GADF;;;ICzBIkC;;;;;;;;;SACJ3B,oBAAA,6BAAoB;QACd,KAAKV,KAAL,CAAWsC,OAAf,EAAwB,KAAKtC,KAAL,CAAWsC,OAAX,CAAmBC,IAAnB,CAAwB,IAAxB,EAA8B,IAA9B;;;SAG1Bd,qBAAA,4BAAmBC,SAAnB,EAA8B;QACxB,KAAK1B,KAAL,CAAWwC,QAAf,EAAyB,KAAKxC,KAAL,CAAWwC,QAAX,CAAoBD,IAApB,CAAyB,IAAzB,EAA+B,IAA/B,EAAqCb,SAArC;;;SAG3Bf,uBAAA,gCAAuB;QACjB,KAAKX,KAAL,CAAWyC,SAAf,EAA0B,KAAKzC,KAAL,CAAWyC,SAAX,CAAqBF,IAArB,CAA0B,IAA1B,EAAgC,IAAhC;;;SAG5B3B,SAAA,kBAAS;WACA,IAAP;;;;EAdoBK,KAAK,CAACC;;ACK9B;;;;AAGA,SAASwB,MAAT,OAA0C;MAAxBC,OAAwB,QAAxBA,OAAwB;uBAAfC,IAAe;MAAfA,IAAe,0BAAR,IAAQ;sBAEtC,oBAAC/B,OAAD,CAAe,QAAf,QACG,UAAAxB,OAAO,EAAI;KACAA,OAAV,IAAAwD,SAAS,QAAU,gDAAV,CAAT,CAAA;QAEI,CAACD,IAAD,IAASvD,OAAO,CAACiB,aAArB,EAAoC,OAAO,IAAP;QAE9BwC,MAAM,GAAGzD,OAAO,CAACc,OAAR,CAAgB4C,KAA/B;wBAGE,oBAAC,SAAD;MACE,OAAO,EAAE,iBAAAC,IAAI,EAAI;QACfA,IAAI,CAACC,OAAL,GAAeH,MAAM,CAACH,OAAD,CAArB;OAFJ;MAIE,QAAQ,EAAE,kBAACK,IAAD,EAAOtB,SAAP,EAAqB;YACzBA,SAAS,CAACiB,OAAV,KAAsBA,OAA1B,EAAmC;UACjCK,IAAI,CAACC,OAAL;UACAD,IAAI,CAACC,OAAL,GAAeH,MAAM,CAACH,OAAD,CAArB;;OAPN;MAUE,SAAS,EAAE,mBAAAK,IAAI,EAAI;QACjBA,IAAI,CAACC,OAAL;OAXJ;MAaE,OAAO,EAAEN;MAdb;GARJ,CADF;;;AA+BF,AAAa;MACLO,WAAW,GAAG9B,SAAS,CAAC+B,SAAV,CAAoB,CAAC/B,SAAS,CAACe,IAAX,EAAiBf,SAAS,CAACgC,MAA3B,CAApB,CAApB;EAEAV,MAAM,CAACvB,SAAP,GAAmB;IACjByB,IAAI,EAAExB,SAAS,CAACiC,IADC;IAEjBV,OAAO,EAAEO,WAAW,CAAC3B;GAFvB;;;AC3CF,IAAM+B,KAAK,GAAG,EAAd;AACA,IAAMC,UAAU,GAAG,KAAnB;AACA,IAAIC,UAAU,GAAG,CAAjB;;AAEA,SAASC,WAAT,CAAqB7D,IAArB,EAA2B;MACrB0D,KAAK,CAAC1D,IAAD,CAAT,EAAiB,OAAO0D,KAAK,CAAC1D,IAAD,CAAZ;MAEX8D,SAAS,GAAGC,YAAY,CAACC,OAAb,CAAqBhE,IAArB,CAAlB;;MAEI4D,UAAU,GAAGD,UAAjB,EAA6B;IAC3BD,KAAK,CAAC1D,IAAD,CAAL,GAAc8D,SAAd;IACAF,UAAU;;;SAGLE,SAAP;;;;;;;AAMF,SAASG,YAAT,CAAsBjE,IAAtB,EAAkCE,MAAlC,EAA+C;MAAzBF,IAAyB;IAAzBA,IAAyB,GAAlB,GAAkB;;;MAAbE,MAAa;IAAbA,MAAa,GAAJ,EAAI;;;SACtCF,IAAI,KAAK,GAAT,GAAeA,IAAf,GAAsB6D,WAAW,CAAC7D,IAAD,CAAX,CAAkBE,MAAlB,EAA0B;IAAEgE,MAAM,EAAE;GAApC,CAA7B;;;ACdF;;;;AAGA,SAASC,QAAT,OAAuD;MAAnCC,aAAmC,QAAnCA,aAAmC;MAApBC,EAAoB,QAApBA,EAAoB;uBAAhBC,IAAgB;MAAhBA,IAAgB,0BAAT,KAAS;sBAEnD,oBAACrD,OAAD,CAAe,QAAf,QACG,UAAAxB,OAAO,EAAI;KACAA,OAAV,IAAAwD,SAAS,QAAU,kDAAV,CAAT,CAAA;QAEQ1C,SAHE,GAGyBd,OAHzB,CAGFc,OAHE;QAGOG,aAHP,GAGyBjB,OAHzB,CAGOiB,aAHP;QAKJwC,MAAM,GAAGoB,IAAI,GAAG/D,SAAO,CAAC+D,IAAX,GAAkB/D,SAAO,CAACgE,OAA7C;QACMjE,QAAQ,GAAGkE,sBAAc,CAC7BJ,aAAa,GACT,OAAOC,EAAP,KAAc,QAAd,GACEJ,YAAY,CAACI,EAAD,EAAKD,aAAa,CAAClE,MAAnB,CADd,gBAGOmE,EAHP;MAIItE,QAAQ,EAAEkE,YAAY,CAACI,EAAE,CAACtE,QAAJ,EAAcqE,aAAa,CAAClE,MAA5B;MALjB,GAOTmE,EARyB,CAA/B,CANU;;;QAmBN3D,aAAJ,EAAmB;MACjBwC,MAAM,CAAC5C,QAAD,CAAN;aACO,IAAP;;;wBAIA,oBAAC,SAAD;MACE,OAAO,EAAE,mBAAM;QACb4C,MAAM,CAAC5C,QAAD,CAAN;OAFJ;MAIE,QAAQ,EAAE,kBAAC8C,IAAD,EAAOtB,SAAP,EAAqB;YACvB2C,YAAY,GAAGD,sBAAc,CAAC1C,SAAS,CAACuC,EAAX,CAAnC;;YAEE,CAACK,yBAAiB,CAACD,YAAD,eACbnE,QADa;UAEhBqE,GAAG,EAAEF,YAAY,CAACE;WAHtB,EAKE;UACAzB,MAAM,CAAC5C,QAAD,CAAN;;OAZN;MAeE,EAAE,EAAE+D;MAhBR;GAzBJ,CADF;;;AAkDF,AAAa;EACXF,QAAQ,CAAC5C,SAAT,GAAqB;IACnB+C,IAAI,EAAE9C,SAAS,CAACiC,IADG;IAEnBmB,IAAI,EAAEpD,SAAS,CAACgC,MAFG;IAGnBa,EAAE,EAAE7C,SAAS,CAAC+B,SAAV,CAAoB,CAAC/B,SAAS,CAACgC,MAAX,EAAmBhC,SAAS,CAACE,MAA7B,CAApB,EAA0DC;GAHhE;;;AC9DF,IAAM+B,OAAK,GAAG,EAAd;AACA,IAAMC,YAAU,GAAG,KAAnB;AACA,IAAIC,YAAU,GAAG,CAAjB;;AAEA,SAASC,aAAT,CAAqB7D,IAArB,EAA2B6E,OAA3B,EAAoC;MAC5BC,QAAQ,QAAMD,OAAO,CAACE,GAAd,GAAoBF,OAAO,CAACG,MAA5B,GAAqCH,OAAO,CAACI,SAA3D;MACMC,SAAS,GAAGxB,OAAK,CAACoB,QAAD,CAAL,KAAoBpB,OAAK,CAACoB,QAAD,CAAL,GAAkB,EAAtC,CAAlB;MAEII,SAAS,CAAClF,IAAD,CAAb,EAAqB,OAAOkF,SAAS,CAAClF,IAAD,CAAhB;MAEfmF,IAAI,GAAG,EAAb;MACMC,MAAM,GAAGrB,YAAY,CAAC/D,IAAD,EAAOmF,IAAP,EAAaN,OAAb,CAA3B;MACMQ,MAAM,GAAG;IAAED,MAAM,EAANA,MAAF;IAAUD,IAAI,EAAJA;GAAzB;;MAEIvB,YAAU,GAAGD,YAAjB,EAA6B;IAC3BuB,SAAS,CAAClF,IAAD,CAAT,GAAkBqF,MAAlB;IACAzB,YAAU;;;SAGLyB,MAAP;;;;;;;AAMF,SAASC,SAAT,CAAmBvF,QAAnB,EAA6B8E,OAA7B,EAA2C;MAAdA,OAAc;IAAdA,OAAc,GAAJ,EAAI;;;MACrC,OAAOA,OAAP,KAAmB,QAAnB,IAA+BU,KAAK,CAACC,OAAN,CAAcX,OAAd,CAAnC,EAA2D;IACzDA,OAAO,GAAG;MAAE7E,IAAI,EAAE6E;KAAlB;;;iBAGiEA,OAL1B;MAKjC7E,IALiC,YAKjCA,IALiC;gCAK3ByF,KAL2B;MAK3BA,KAL2B,+BAKnB,KALmB;iCAKZT,MALY;MAKZA,MALY,gCAKH,KALG;oCAKIC,SALJ;MAKIA,SALJ,mCAKgB,KALhB;MAOnCS,KAAK,GAAG,GAAGC,MAAH,CAAU3F,IAAV,CAAd;SAEO0F,KAAK,CAACE,MAAN,CAAa,UAACC,OAAD,EAAU7F,IAAV,EAAmB;QACjC,CAACA,IAAD,IAASA,IAAI,KAAK,EAAtB,EAA0B,OAAO,IAAP;QACtB6F,OAAJ,EAAa,OAAOA,OAAP;;uBAEYhC,aAAW,CAAC7D,IAAD,EAAO;MACzC+E,GAAG,EAAEU,KADoC;MAEzCT,MAAM,EAANA,MAFyC;MAGzCC,SAAS,EAATA;KAHkC,CAJC;QAI7BG,MAJ6B,gBAI7BA,MAJ6B;QAIrBD,IAJqB,gBAIrBA,IAJqB;;QAS/BjE,KAAK,GAAGkE,MAAM,CAACU,IAAP,CAAY/F,QAAZ,CAAd;QAEI,CAACmB,KAAL,EAAY,OAAO,IAAP;QAELjB,GAb8B,GAaZiB,KAbY;QAatB6E,MAbsB,GAaZ7E,KAbY;QAc/Bf,OAAO,GAAGJ,QAAQ,KAAKE,GAA7B;QAEIwF,KAAK,IAAI,CAACtF,OAAd,EAAuB,OAAO,IAAP;WAEhB;MACLH,IAAI,EAAJA,IADK;;MAELC,GAAG,EAAED,IAAI,KAAK,GAAT,IAAgBC,GAAG,KAAK,EAAxB,GAA6B,GAA7B,GAAmCA,GAFnC;;MAGLE,OAAO,EAAPA,OAHK;;MAILD,MAAM,EAAEiF,IAAI,CAACS,MAAL,CAAY,UAACI,IAAD,EAAOrB,GAAP,EAAYsB,KAAZ,EAAsB;QACxCD,IAAI,CAACrB,GAAG,CAACnF,IAAL,CAAJ,GAAiBuG,MAAM,CAACE,KAAD,CAAvB;eACOD,IAAP;OAFM,EAGL,EAHK;KAJV;GAlBK,EA2BJ,IA3BI,CAAP;;;AC3BF,SAASE,eAAT,CAAyB9E,QAAzB,EAAmC;SAC1BC,KAAK,CAAC8E,QAAN,CAAeC,KAAf,CAAqBhF,QAArB,MAAmC,CAA1C;;;AAGF,SAASiF,eAAT,CAAyBjF,QAAzB,EAAmChB,KAAnC,EAA0CJ,IAA1C,EAAgD;MACxCsG,KAAK,GAAGlF,QAAQ,CAAChB,KAAD,CAAtB;GAEA2B,OAAO,CACLuE,KAAK,KAAKC,SADL,EAEL,2EACWvG,IAAI,gBAAaA,IAAb,UAAuB,EADtC,qBAEE,gDAJG,CAAP;SAOOsG,KAAK,IAAI,IAAhB;;;;;;;IAMIE;;;;;;;;;SACJxF,SAAA,kBAAS;;;wBAEL,oBAACC,OAAD,CAAe,QAAf,QACG,UAAAxB,SAAO,EAAI;OACAA,SAAV,IAAAwD,SAAS,QAAU,+CAAV,CAAT,CAAA;UAEM3C,QAAQ,GAAG,KAAI,CAACF,KAAL,CAAWE,QAAX,IAAuBb,SAAO,CAACa,QAAhD;UACMY,KAAK,GAAG,KAAI,CAACd,KAAL,CAAWgE,aAAX,GACV,KAAI,CAAChE,KAAL,CAAWgE,aADD;QAEV,KAAI,CAAChE,KAAL,CAAWJ,IAAX,GACAsF,SAAS,CAAChF,QAAQ,CAACP,QAAV,EAAoB,KAAI,CAACK,KAAzB,CADT,GAEAX,SAAO,CAACyB,KAJZ;;UAMMd,KAAK,gBAAQX,SAAR;QAAiBa,QAAQ,EAARA,QAAjB;QAA2BY,KAAK,EAALA;QAAtC;;wBAEsC,KAAI,CAACd,KAZjC;UAYJgB,QAZI,eAYJA,QAZI;UAYMqF,SAZN,eAYMA,SAZN;UAYiBzF,MAZjB,eAYiBA,MAZjB;;;UAgBNuE,KAAK,CAACC,OAAN,CAAcpE,QAAd,KAA2B8E,eAAe,CAAC9E,QAAD,CAA9C,EAA0D;QACxDA,QAAQ,GAAG,IAAX;;;0BAIA,oBAACH,OAAD,CAAe,QAAf;QAAwB,KAAK,EAAEb;SAC5BA,KAAK,CAACc,KAAN,GACGE,QAAQ,GACN,OAAOA,QAAP,KAAoB,UAApB,GACE,CACEiF,eAAe,CAACjF,QAAD,EAAWhB,KAAX,EAAkB,KAAI,CAACA,KAAL,CAAWJ,IAA7B,CADjB,CADF,GAIEoB,QALI,GAMNqF,SAAS,gBACTpF,KAAK,CAACqF,aAAN,CAAoBD,SAApB,EAA+BrG,KAA/B,CADS,GAETY,MAAM,GACNA,MAAM,CAACZ,KAAD,CADA,GAEN,IAXL,GAYG,OAAOgB,QAAP,KAAoB,UAApB,GACA,CACEiF,eAAe,CAACjF,QAAD,EAAWhB,KAAX,EAAkB,KAAI,CAACA,KAAL,CAAWJ,IAA7B,CADjB,CADA,GAIA,IAjBN,CADF;KArBJ,CADF;;;;EAFgBqB,KAAK,CAACC;;AAmD1B,AAAa;EACXkF,KAAK,CAACjF,SAAN,GAAkB;IAChBH,QAAQ,EAAEI,SAAS,CAAC+B,SAAV,CAAoB,CAAC/B,SAAS,CAACe,IAAX,EAAiBf,SAAS,CAACC,IAA3B,CAApB,CADM;IAEhBgF,SAAS,EAAE,mBAACrG,KAAD,EAAQuG,QAAR,EAAqB;UAC1BvG,KAAK,CAACuG,QAAD,CAAL,IAAmB,CAACC,0BAAkB,CAACxG,KAAK,CAACuG,QAAD,CAAN,CAA1C,EAA6D;eACpD,IAAIE,KAAJ,yFAAP;;KAJY;IAShBpB,KAAK,EAAEjE,SAAS,CAACiC,IATD;IAUhBnD,QAAQ,EAAEkB,SAAS,CAACE,MAVJ;IAWhB1B,IAAI,EAAEwB,SAAS,CAAC+B,SAAV,CAAoB,CACxB/B,SAAS,CAACgC,MADc,EAExBhC,SAAS,CAACsF,OAAV,CAAkBtF,SAAS,CAACgC,MAA5B,CAFwB,CAApB,CAXU;IAehBxC,MAAM,EAAEQ,SAAS,CAACe,IAfF;IAgBhB0C,SAAS,EAAEzD,SAAS,CAACiC,IAhBL;IAiBhBuB,MAAM,EAAExD,SAAS,CAACiC;GAjBpB;;EAoBA+C,KAAK,CAAC5E,SAAN,CAAgBd,iBAAhB,GAAoC,YAAW;KAC7CiB,OAAO,CACL,EACE,KAAK3B,KAAL,CAAWgB,QAAX,IACA,CAAC8E,eAAe,CAAC,KAAK9F,KAAL,CAAWgB,QAAZ,CADhB,IAEA,KAAKhB,KAAL,CAAWqG,SAHb,CADK,EAML,gHANK,CAAP;KASA1E,OAAO,CACL,EACE,KAAK3B,KAAL,CAAWgB,QAAX,IACA,CAAC8E,eAAe,CAAC,KAAK9F,KAAL,CAAWgB,QAAZ,CADhB,IAEA,KAAKhB,KAAL,CAAWY,MAHb,CADK,EAML,0GANK,CAAP;KASAe,OAAO,CACL,EAAE,KAAK3B,KAAL,CAAWqG,SAAX,IAAwB,KAAKrG,KAAL,CAAWY,MAArC,CADK,EAEL,2GAFK,CAAP;GAnBF;;EAyBAwF,KAAK,CAAC5E,SAAN,CAAgBC,kBAAhB,GAAqC,UAASC,SAAT,EAAoB;KACvDC,OAAO,CACL,EAAE,KAAK3B,KAAL,CAAWE,QAAX,IAAuB,CAACwB,SAAS,CAACxB,QAApC,CADK,EAEL,yKAFK,CAAP;KAKAyB,OAAO,CACL,EAAE,CAAC,KAAK3B,KAAL,CAAWE,QAAZ,IAAwBwB,SAAS,CAACxB,QAApC,CADK,EAEL,qKAFK,CAAP;GANF;;;ACtHF,SAASyG,eAAT,CAAyB/G,IAAzB,EAA+B;SACtBA,IAAI,CAACgH,MAAL,CAAY,CAAZ,MAAmB,GAAnB,GAAyBhH,IAAzB,GAAgC,MAAMA,IAA7C;;;AAGF,SAASiH,WAAT,CAAqBC,QAArB,EAA+B5G,QAA/B,EAAyC;MACnC,CAAC4G,QAAL,EAAe,OAAO5G,QAAP;sBAGVA,QADL;IAEEP,QAAQ,EAAEgH,eAAe,CAACG,QAAD,CAAf,GAA4B5G,QAAQ,CAACP;;;;AAInD,SAASoH,aAAT,CAAuBD,QAAvB,EAAiC5G,QAAjC,EAA2C;MACrC,CAAC4G,QAAL,EAAe,OAAO5G,QAAP;MAET8G,IAAI,GAAGL,eAAe,CAACG,QAAD,CAA5B;MAEI5G,QAAQ,CAACP,QAAT,CAAkBsH,OAAlB,CAA0BD,IAA1B,MAAoC,CAAxC,EAA2C,OAAO9G,QAAP;sBAGtCA,QADL;IAEEP,QAAQ,EAAEO,QAAQ,CAACP,QAAT,CAAkBuH,MAAlB,CAAyBF,IAAI,CAACG,MAA9B;;;;AAId,SAASC,SAAT,CAAmBlH,QAAnB,EAA6B;SACpB,OAAOA,QAAP,KAAoB,QAApB,GAA+BA,QAA/B,GAA0CmH,kBAAU,CAACnH,QAAD,CAA3D;;;AAGF,SAASoH,aAAT,CAAuBC,UAAvB,EAAmC;SAC1B,YAAM;MACX1E,SAAS,QAAQ,mCAAR,EAA6C0E,UAA7C,CAAT,CAAA;GADF;;;AAKF,SAASC,IAAT,GAAgB;;;;;;;;;IAQVC;;;;;;;;;;;;UAQJC,aAAa,UAAAxH,QAAQ;aAAI,MAAKyH,UAAL,CAAgBzH,QAAhB,EAA0B,MAA1B,CAAJ;;;UACrB0H,gBAAgB,UAAA1H,QAAQ;aAAI,MAAKyH,UAAL,CAAgBzH,QAAhB,EAA0B,SAA1B,CAAJ;;;UACxB2H,eAAe;aAAML,IAAN;;;UACfM,cAAc;aAAMN,IAAN;;;;;;;;SAVdG,aAAA,oBAAWzH,QAAX,EAAqB6H,MAArB,EAA6B;sBACa,KAAK/H,KADlB;2CACnB8G,QADmB;QACnBA,QADmB,qCACR,EADQ;0CACJzH,OADI;QACJA,OADI,oCACM,EADN;IAE3BA,OAAO,CAAC0I,MAAR,GAAiBA,MAAjB;IACA1I,OAAO,CAACa,QAAR,GAAmB2G,WAAW,CAACC,QAAD,EAAW1C,sBAAc,CAAClE,QAAD,CAAzB,CAA9B;IACAb,OAAO,CAACQ,GAAR,GAAcuH,SAAS,CAAC/H,OAAO,CAACa,QAAT,CAAvB;;;SAQFU,SAAA,kBAAS;uBAC0D,KAAKZ,KAD/D;6CACC8G,QADD;QACCA,QADD,sCACY,EADZ;4CACgBzH,OADhB;QACgBA,OADhB,qCAC0B,EAD1B;6CAC8Ba,QAD9B;QAC8BA,QAD9B,sCACyC,GADzC;QACiD8H,IADjD;;QAGD7H,SAAO,GAAG;MACd8H,UAAU,EAAE,oBAAArI,IAAI;eAAI+G,eAAe,CAACG,QAAQ,GAAGM,SAAS,CAACxH,IAAD,CAArB,CAAnB;OADF;MAEdmI,MAAM,EAAE,KAFM;MAGd7H,QAAQ,EAAE6G,aAAa,CAACD,QAAD,EAAW1C,sBAAc,CAAClE,QAAD,CAAzB,CAHT;MAIdgE,IAAI,EAAE,KAAKwD,UAJG;MAKdvD,OAAO,EAAE,KAAKyD,aALA;MAMdM,EAAE,EAAEZ,aAAa,CAAC,IAAD,CANH;MAOda,MAAM,EAAEb,aAAa,CAAC,QAAD,CAPP;MAQdc,SAAS,EAAEd,aAAa,CAAC,WAAD,CARV;MASd9G,MAAM,EAAE,KAAKqH,YATC;MAUd9E,KAAK,EAAE,KAAK+E;KAVd;wBAaO,oBAAC,MAAD,eAAYE,IAAZ;MAAkB,OAAO,EAAE7H,SAA3B;MAAoC,aAAa,EAAEd;OAA1D;;;;EA7BuB4B,KAAK,CAACC;;AAiCjC,AAAa;EACXuG,YAAY,CAACtG,SAAb,GAAyB;IACvB2F,QAAQ,EAAE1F,SAAS,CAACgC,MADG;IAEvB/D,OAAO,EAAE+B,SAAS,CAACE,MAFI;IAGvBpB,QAAQ,EAAEkB,SAAS,CAAC+B,SAAV,CAAoB,CAAC/B,SAAS,CAACgC,MAAX,EAAmBhC,SAAS,CAACE,MAA7B,CAApB;GAHZ;;EAMAmG,YAAY,CAACjG,SAAb,CAAuBd,iBAAvB,GAA2C,YAAW;KACpDiB,OAAO,CACL,CAAC,KAAK3B,KAAL,CAAWG,OADP,EAEL,uEACE,yEAHG,CAAP;GADF;;;ACpFF;;;;IAGMkI;;;;;;;;;SACJzH,SAAA,kBAAS;;;wBAEL,oBAACC,OAAD,CAAe,QAAf,QACG,UAAAxB,OAAO,EAAI;OACAA,OAAV,IAAAwD,SAAS,QAAU,gDAAV,CAAT,CAAA;UAEM3C,QAAQ,GAAG,KAAI,CAACF,KAAL,CAAWE,QAAX,IAAuBb,OAAO,CAACa,QAAhD;UAEIoI,OAAJ,EAAaxH,KAAb,CALU;;;;;MAWVG,KAAK,CAAC8E,QAAN,CAAewC,OAAf,CAAuB,KAAI,CAACvI,KAAL,CAAWgB,QAAlC,EAA4C,UAAAwH,KAAK,EAAI;YAC/C1H,KAAK,IAAI,IAAT,iBAAiBG,KAAK,CAACwH,cAAN,CAAqBD,KAArB,CAArB,EAAkD;UAChDF,OAAO,GAAGE,KAAV;cAEM5I,IAAI,GAAG4I,KAAK,CAACxI,KAAN,CAAYJ,IAAZ,IAAoB4I,KAAK,CAACxI,KAAN,CAAYwE,IAA7C;UAEA1D,KAAK,GAAGlB,IAAI,GACRsF,SAAS,CAAChF,QAAQ,CAACP,QAAV,eAAyB6I,KAAK,CAACxI,KAA/B;YAAsCJ,IAAI,EAAJA;aADvC,GAERP,OAAO,CAACyB,KAFZ;;OANJ;aAYOA,KAAK,gBACRG,KAAK,CAACyH,YAAN,CAAmBJ,OAAnB,EAA4B;QAAEpI,QAAQ,EAARA,QAAF;QAAY8D,aAAa,EAAElD;OAAvD,CADQ,GAER,IAFJ;KAxBJ,CADF;;;;EAFiBG,KAAK,CAACC;;AAoC3B,AAAa;EACXmH,MAAM,CAAClH,SAAP,GAAmB;IACjBH,QAAQ,EAAEI,SAAS,CAACC,IADH;IAEjBnB,QAAQ,EAAEkB,SAAS,CAACE;GAFtB;;EAKA+G,MAAM,CAAC7G,SAAP,CAAiBC,kBAAjB,GAAsC,UAASC,SAAT,EAAoB;KACxDC,OAAO,CACL,EAAE,KAAK3B,KAAL,CAAWE,QAAX,IAAuB,CAACwB,SAAS,CAACxB,QAApC,CADK,EAEL,0KAFK,CAAP;KAKAyB,OAAO,CACL,EAAE,CAAC,KAAK3B,KAAL,CAAWE,QAAZ,IAAwBwB,SAAS,CAACxB,QAApC,CADK,EAEL,sKAFK,CAAP;GANF;;;AC9CF;;;;AAGA,SAASyI,UAAT,CAAoBzH,SAApB,EAA+B;MACvB3B,WAAW,oBAAiB2B,SAAS,CAAC3B,WAAV,IAAyB2B,SAAS,CAAC9B,IAApD,OAAjB;;MACMwJ,CAAC,GAAG,SAAJA,CAAI,CAAA5I,KAAK,EAAI;QACT6I,mBADS,GACkC7I,KADlC,CACT6I,mBADS;QACeC,cADf,iCACkC9I,KADlC;;wBAIf,oBAACa,OAAD,CAAe,QAAf,QACG,UAAAxB,OAAO,EAAI;OAERA,OADF,IAAAwD,SAAS,iCAEgBtD,WAFhB,4BAAT,CAAA;0BAKE,oBAAC,SAAD,eACMuJ,cADN,EAEMzJ,OAFN;QAGE,GAAG,EAAEwJ;SAJT;KANJ,CADF;GAHF;;EAsBAD,CAAC,CAACrJ,WAAF,GAAgBA,WAAhB;EACAqJ,CAAC,CAACG,gBAAF,GAAqB7H,SAArB;;EAEa;IACX0H,CAAC,CAACzH,SAAF,GAAc;MACZ0H,mBAAmB,EAAEzH,SAAS,CAAC+B,SAAV,CAAoB,CACvC/B,SAAS,CAACgC,MAD6B,EAEvChC,SAAS,CAACe,IAF6B,EAGvCf,SAAS,CAACE,MAH6B,CAApB;KADvB;;;SASK0H,YAAY,CAACJ,CAAD,EAAI1H,SAAJ,CAAnB;;;ACxCF,IAAM+H,UAAU,GAAGhI,KAAK,CAACgI,UAAzB;AAEA,AAAO,SAASC,UAAT,GAAsB;EACd;MAET,OAAOD,UAAP,KAAsB,UADxB,KAAApG,SAAS,QAEP,yDAFO,CAAT,CAAA;;;SAMKoG,UAAU,CAAClI,cAAD,CAAjB;;AAGF,AAAO,SAASoI,WAAT,GAAuB;EACf;MAET,OAAOF,UAAP,KAAsB,UADxB,KAAApG,SAAS,QAEP,0DAFO,CAAT,CAAA;;;SAMKoG,UAAU,CAACpI,OAAD,CAAV,CAA0BX,QAAjC;;AAGF,AAAO,SAASkJ,SAAT,GAAqB;EACb;MAET,OAAOH,UAAP,KAAsB,UADxB,KAAApG,SAAS,QAEP,wDAFO,CAAT,CAAA;;;MAMI/B,KAAK,GAAGmI,UAAU,CAACpI,OAAD,CAAV,CAA0BC,KAAxC;SACOA,KAAK,GAAGA,KAAK,CAAChB,MAAT,GAAkB,EAA9B;;AAGF,AAAO,SAASuJ,aAAT,CAAuBzJ,IAAvB,EAA6B;EACrB;MAET,OAAOqJ,UAAP,KAAsB,UADxB,KAAApG,SAAS,QAEP,4DAFO,CAAT,CAAA;;;MAMI3C,QAAQ,GAAGiJ,WAAW,EAA5B;MACMrI,KAAK,GAAGmI,UAAU,CAACpI,OAAD,CAAV,CAA0BC,KAAxC;SACOlB,IAAI,GAAGsF,SAAS,CAAChF,QAAQ,CAACP,QAAV,EAAoBC,IAApB,CAAZ,GAAwCkB,KAAnD;;;ACrDW;MACP,OAAOwI,MAAP,KAAkB,WAAtB,EAAmC;QAC3BC,MAAM,GAAGD,MAAf;QACM/E,GAAG,GAAG,wBAAZ;QACMiF,UAAU,GAAG;MAAEC,GAAG,EAAE,UAAP;MAAmBC,GAAG,EAAE,YAAxB;MAAsCC,GAAG,EAAE;KAA9D;;QAEIJ,MAAM,CAAChF,GAAD,CAAN,IAAegF,MAAM,CAAChF,GAAD,CAAN,KAAgBqF,KAAnC,EAA6D;UACrDC,gBAAgB,GAAGL,UAAU,CAACD,MAAM,CAAChF,GAAD,CAAP,CAAnC;UACMuF,kBAAkB,GAAGN,UAAU,CAACI,KAAD,CAArC,CAF2D;;;YAMrD,IAAInD,KAAJ,CACJ,yBAAuBqD,kBAAvB,2EAC2CD,gBAD3C,8CADI,CAAN;;;IAOFN,MAAM,CAAChF,GAAD,CAAN,GAAcqF,KAAd;;;;;;;;;;;;;;;;;;;;;"}
|
package/cjs/react-router.min.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";function _interopDefault(t){return t&&"object"==typeof t&&"default"in t?t.default:t}Object.defineProperty(exports,"__esModule",{value:!0});var React=_interopDefault(require("react"));require("prop-types");var history=require("history");require("tiny-warning");var createContext=_interopDefault(require("mini-create-react-context")),invariant=_interopDefault(require("tiny-invariant")),pathToRegexp=_interopDefault(require("path-to-regexp"));require("react-is");var hoistStatics=_interopDefault(require("hoist-non-react-statics"));function _extends(){return(_extends=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(t[o]=n[o])}return t}).apply(this,arguments)}function _inheritsLoose(t,e){t.prototype=Object.create(e.prototype),(t.prototype.constructor=t).__proto__=e}function _objectWithoutPropertiesLoose(t,e){if(null==t)return{};var n,o,r={},a=Object.keys(t);for(o=0;o<a.length;o++)n=a[o],0<=e.indexOf(n)||(r[n]=t[n]);return r}var createNamedContext=function(t){var e=createContext();return e.displayName=t,e},historyContext=createNamedContext("Router-History"),
|
|
1
|
+
"use strict";function _interopDefault(t){return t&&"object"==typeof t&&"default"in t?t.default:t}Object.defineProperty(exports,"__esModule",{value:!0});var React=_interopDefault(require("react"));require("prop-types");var history=require("history");require("tiny-warning");var createContext=_interopDefault(require("mini-create-react-context")),invariant=_interopDefault(require("tiny-invariant")),pathToRegexp=_interopDefault(require("path-to-regexp"));require("react-is");var hoistStatics=_interopDefault(require("hoist-non-react-statics"));function _extends(){return(_extends=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(t[o]=n[o])}return t}).apply(this,arguments)}function _inheritsLoose(t,e){t.prototype=Object.create(e.prototype),_setPrototypeOf(t.prototype.constructor=t,e)}function _setPrototypeOf(t,e){return(_setPrototypeOf=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function _objectWithoutPropertiesLoose(t,e){if(null==t)return{};var n,o,r={},a=Object.keys(t);for(o=0;o<a.length;o++)n=a[o],0<=e.indexOf(n)||(r[n]=t[n]);return r}var createNamedContext=function(t){var e=createContext();return e.displayName=t,e},historyContext=createNamedContext("Router-History"),context=createNamedContext("Router"),Router=function(n){function t(t){var e;return(e=n.call(this,t)||this).state={location:t.history.location},e._isMounted=!1,e._pendingLocation=null,t.staticContext||(e.unlisten=t.history.listen(function(t){e._isMounted?e.setState({location:t}):e._pendingLocation=t})),e}_inheritsLoose(t,n),t.computeRootMatch=function(t){return{path:"/",url:"/",params:{},isExact:"/"===t}};var e=t.prototype;return e.componentDidMount=function(){this._isMounted=!0,this._pendingLocation&&this.setState({location:this._pendingLocation})},e.componentWillUnmount=function(){this.unlisten&&(this.unlisten(),this._isMounted=!1,this._pendingLocation=null)},e.render=function(){return React.createElement(context.Provider,{value:{history:this.props.history,location:this.state.location,match:t.computeRootMatch(this.state.location.pathname),staticContext:this.props.staticContext}},React.createElement(historyContext.Provider,{children:this.props.children||null,value:this.props.history}))},t}(React.Component),MemoryRouter=function(r){function t(){for(var t,e=arguments.length,n=new Array(e),o=0;o<e;o++)n[o]=arguments[o];return(t=r.call.apply(r,[this].concat(n))||this).history=history.createMemoryHistory(t.props),t}return _inheritsLoose(t,r),t.prototype.render=function(){return React.createElement(Router,{history:this.history,children:this.props.children})},t}(React.Component),Lifecycle=function(t){function e(){return t.apply(this,arguments)||this}_inheritsLoose(e,t);var n=e.prototype;return n.componentDidMount=function(){this.props.onMount&&this.props.onMount.call(this,this)},n.componentDidUpdate=function(t){this.props.onUpdate&&this.props.onUpdate.call(this,this,t)},n.componentWillUnmount=function(){this.props.onUnmount&&this.props.onUnmount.call(this,this)},n.render=function(){return null},e}(React.Component);function Prompt(t){var o=t.message,e=t.when,r=void 0===e||e;return React.createElement(context.Consumer,null,function(t){if(t||invariant(!1),!r||t.staticContext)return null;var n=t.history.block;return React.createElement(Lifecycle,{onMount:function(t){t.release=n(o)},onUpdate:function(t,e){e.message!==o&&(t.release(),t.release=n(o))},onUnmount:function(t){t.release()},message:o})})}var cache={},cacheLimit=1e4,cacheCount=0;function compilePath(t){if(cache[t])return cache[t];var e=pathToRegexp.compile(t);return cacheCount<cacheLimit&&(cache[t]=e,cacheCount++),e}function generatePath(t,e){return void 0===t&&(t="/"),void 0===e&&(e={}),"/"===t?t:compilePath(t)(e,{pretty:!0})}function Redirect(t){var a=t.computedMatch,i=t.to,e=t.push,c=void 0!==e&&e;return React.createElement(context.Consumer,null,function(t){t||invariant(!1);var e=t.history,n=t.staticContext,o=c?e.push:e.replace,r=history.createLocation(a?"string"==typeof i?generatePath(i,a.params):_extends({},i,{pathname:generatePath(i.pathname,a.params)}):i);return n?(o(r),null):React.createElement(Lifecycle,{onMount:function(){o(r)},onUpdate:function(t,e){var n=history.createLocation(e.to);history.locationsAreEqual(n,_extends({},r,{key:n.key}))||o(r)},to:i})})}var cache$1={},cacheLimit$1=1e4,cacheCount$1=0;function compilePath$1(t,e){var n=""+e.end+e.strict+e.sensitive,o=cache$1[n]||(cache$1[n]={});if(o[t])return o[t];var r=[],a={regexp:pathToRegexp(t,r,e),keys:r};return cacheCount$1<cacheLimit$1&&(o[t]=a,cacheCount$1++),a}function matchPath(u,t){void 0===t&&(t={}),"string"!=typeof t&&!Array.isArray(t)||(t={path:t});var e=t,n=e.path,o=e.exact,p=void 0!==o&&o,r=e.strict,h=void 0!==r&&r,a=e.sensitive,l=void 0!==a&&a;return[].concat(n).reduce(function(t,e){if(!e&&""!==e)return null;if(t)return t;var n=compilePath$1(e,{end:p,strict:h,sensitive:l}),o=n.regexp,r=n.keys,a=o.exec(u);if(!a)return null;var i=a[0],c=a.slice(1),s=u===i;return p&&!s?null:{path:e,url:"/"===e&&""===i?"/":i,isExact:s,params:r.reduce(function(t,e,n){return t[e.name]=c[n],t},{})}},null)}function isEmptyChildren(t){return 0===React.Children.count(t)}var Route=function(t){function e(){return t.apply(this,arguments)||this}return _inheritsLoose(e,t),e.prototype.render=function(){var c=this;return React.createElement(context.Consumer,null,function(t){t||invariant(!1);var e=c.props.location||t.location,n=_extends({},t,{location:e,match:c.props.computedMatch?c.props.computedMatch:c.props.path?matchPath(e.pathname,c.props):t.match}),o=c.props,r=o.children,a=o.component,i=o.render;return Array.isArray(r)&&isEmptyChildren(r)&&(r=null),React.createElement(context.Provider,{value:n},n.match?r?"function"==typeof r?r(n):r:a?React.createElement(a,n):i?i(n):null:"function"==typeof r?r(n):null)})},e}(React.Component);function addLeadingSlash(t){return"/"===t.charAt(0)?t:"/"+t}function addBasename(t,e){return t?_extends({},e,{pathname:addLeadingSlash(t)+e.pathname}):e}function stripBasename(t,e){if(!t)return e;var n=addLeadingSlash(t);return 0!==e.pathname.indexOf(n)?e:_extends({},e,{pathname:e.pathname.substr(n.length)})}function createURL(t){return"string"==typeof t?t:history.createPath(t)}function staticHandler(t){return function(){invariant(!1)}}function noop(){}var StaticRouter=function(r){function t(){for(var e,t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];return(e=r.call.apply(r,[this].concat(n))||this).handlePush=function(t){return e.navigateTo(t,"PUSH")},e.handleReplace=function(t){return e.navigateTo(t,"REPLACE")},e.handleListen=function(){return noop},e.handleBlock=function(){return noop},e}_inheritsLoose(t,r);var e=t.prototype;return e.navigateTo=function(t,e){var n=this.props,o=n.basename,r=void 0===o?"":o,a=n.context,i=void 0===a?{}:a;i.action=e,i.location=addBasename(r,history.createLocation(t)),i.url=createURL(i.location)},e.render=function(){var t=this.props,e=t.basename,n=void 0===e?"":e,o=t.context,r=void 0===o?{}:o,a=t.location,i=void 0===a?"/":a,c=_objectWithoutPropertiesLoose(t,["basename","context","location"]),s={createHref:function(t){return addLeadingSlash(n+createURL(t))},action:"POP",location:stripBasename(n,history.createLocation(i)),push:this.handlePush,replace:this.handleReplace,go:staticHandler(),goBack:staticHandler(),goForward:staticHandler(),listen:this.handleListen,block:this.handleBlock};return React.createElement(Router,_extends({},c,{history:s,staticContext:r}))},t}(React.Component),Switch=function(t){function e(){return t.apply(this,arguments)||this}return _inheritsLoose(e,t),e.prototype.render=function(){var t=this;return React.createElement(context.Consumer,null,function(n){n||invariant(!1);var o,r,a=t.props.location||n.location;return React.Children.forEach(t.props.children,function(t){if(null==r&&React.isValidElement(t)){var e=(o=t).props.path||t.props.from;r=e?matchPath(a.pathname,_extends({},t.props,{path:e})):n.match}}),r?React.cloneElement(o,{location:a,computedMatch:r}):null})},e}(React.Component);function withRouter(o){function t(t){var e=t.wrappedComponentRef,n=_objectWithoutPropertiesLoose(t,["wrappedComponentRef"]);return React.createElement(context.Consumer,null,function(t){return t||invariant(!1),React.createElement(o,_extends({},n,t,{ref:e}))})}var e="withRouter("+(o.displayName||o.name)+")";return t.displayName=e,t.WrappedComponent=o,hoistStatics(t,o)}var useContext=React.useContext;function useHistory(){return useContext(historyContext)}function useLocation(){return useContext(context).location}function useParams(){var t=useContext(context).match;return t?t.params:{}}function useRouteMatch(t){var e=useLocation(),n=useContext(context).match;return t?matchPath(e.pathname,t):n}exports.MemoryRouter=MemoryRouter,exports.Prompt=Prompt,exports.Redirect=Redirect,exports.Route=Route,exports.Router=Router,exports.StaticRouter=StaticRouter,exports.Switch=Switch,exports.__HistoryContext=historyContext,exports.__RouterContext=context,exports.generatePath=generatePath,exports.matchPath=matchPath,exports.useHistory=useHistory,exports.useLocation=useLocation,exports.useParams=useParams,exports.useRouteMatch=useRouteMatch,exports.withRouter=withRouter;
|
|
2
2
|
//# sourceMappingURL=react-router.min.js.map
|