New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@pojo-router/core

Package Overview
Dependencies
Maintainers
4
Versions
117
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@pojo-router/core - npm Package Compare versions

Comparing version

to
0.6.0

6

CHANGELOG.md

@@ -6,2 +6,8 @@ # Change Log

## [0.6.0](https://github.com/ntucker/anansi/compare/@pojo-router/core@0.5.80...@pojo-router/core@0.6.0) (2023-06-29)
### 🚀 Features
* Add useLocationSearch() ([7a291a9](https://github.com/ntucker/anansi/commit/7a291a9cd29e2a8167e4124b413845cab0ecc7c9))
### [0.5.80](https://github.com/ntucker/anansi/compare/@pojo-router/core@0.5.79...@pojo-router/core@0.5.80) (2023-05-07)

@@ -8,0 +14,0 @@

31

dist/main.js

@@ -54,10 +54,11 @@ /******/ (() => { // webpackBootstrap

__webpack_require__.d(__webpack_exports__, {
"ControllerContext": () => (/* reexport */ ControllerContext),
"Link": () => (/* reexport */ Link),
"LocationContext": () => (/* reexport */ LocationContext),
"PojoRouter": () => (/* reexport */ src_PojoRouter),
"RouteController": () => (/* reexport */ RouteController),
"useController": () => (/* reexport */ useController),
"useLocation": () => (/* reexport */ useLocation),
"useRoutes": () => (/* reexport */ useRoutes)
ControllerContext: () => (/* reexport */ ControllerContext),
Link: () => (/* reexport */ Link),
LocationContext: () => (/* reexport */ LocationContext),
PojoRouter: () => (/* reexport */ src_PojoRouter),
RouteController: () => (/* reexport */ RouteController),
useController: () => (/* reexport */ useController),
useLocation: () => (/* reexport */ useLocation),
useLocationSearch: () => (/* reexport */ useLocationSearch),
useRoutes: () => (/* reexport */ useRoutes)
});

@@ -73,5 +74,2 @@

class RouteController {
// cache for match lookups. Reset if routes ever change.
// could make this LRU if it takes up too much space.
constructor({

@@ -83,2 +81,4 @@ history,

}) {
// cache for match lookups. Reset if routes ever change.
// could make this LRU if it takes up too much space.
this.cachedMatches = {};

@@ -202,2 +202,9 @@ this.history = history;

}
function useLocationSearch(key) {
var _location$search;
const location = useLocation();
const search = new URLSearchParams(location == null ? void 0 : (_location$search = location.search) == null ? void 0 : _location$search.substring == null ? void 0 : _location$search.substring(1));
if (key) return search.get(key);
return search;
}
function useController() {

@@ -266,2 +273,2 @@ return (0,external_react_namespaceObject.useContext)(ControllerContext);

;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzdC9tYWluLmpzIiwibWFwcGluZ3MiOiI7O1VBQUE7VUFDQTs7Ozs7V0NEQTtXQUNBO1dBQ0E7V0FDQTtXQUNBO1dBQ0EsaUNBQWlDLFdBQVc7V0FDNUM7V0FDQTs7Ozs7V0NQQTtXQUNBO1dBQ0E7V0FDQTtXQUNBLHlDQUF5Qyx3Q0FBd0M7V0FDakY7V0FDQTtXQUNBOzs7OztXQ1BBOzs7OztXQ0FBO1dBQ0E7V0FDQTtXQUNBLHVEQUF1RCxpQkFBaUI7V0FDeEU7V0FDQSxnREFBZ0QsYUFBYTtXQUM3RDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDTkEsTUFBTSw4QkFBNEI7OztBQ0FsQyxNQUFNLHVDQUE0Qjs7QUNDMkI7QUFnQjlDLE1BQU1HLGVBQWUsQ0FFbEM7RUFDQTtFQUNBOztFQWFBQyxXQUFXQSxDQUFDO0lBQUVDLE9BQU87SUFBRUMsVUFBVTtJQUFFQyxNQUFNO0lBQUVDO0VBQXVCLENBQUMsRUFBRTtJQUFBLEtBWjdEQyxhQUFhLEdBQXdCLENBQUMsQ0FBQztJQWE3QyxJQUFJLENBQUNKLE9BQU8sR0FBR0EsT0FBTztJQUN0QixJQUFJLENBQUNHLFFBQVEsR0FBR0EsUUFBUTtJQUN4QixJQUFJLENBQUNFLGdCQUFnQixHQUFHSCxNQUFNLENBQUNJLEdBQUcsQ0FBQ0MsS0FBSyxJQUFJO01BQzFDLE1BQU1DLGNBQWMsR0FBR0QsS0FBSyxDQUFDRSxJQUFJO01BQ2pDLE1BQU1DLGtCQUFrQixHQUN0QkYsY0FBYyxJQUFJUCxVQUFVLEdBQ3hCQSxVQUFVLENBQUNPLGNBQWMsQ0FBQyxHQUMxQkEsY0FBYztNQUNwQixNQUFNO1FBQUVHLElBQUk7UUFBRSxHQUFHQztNQUFRLENBQUMsR0FDeEIsT0FBT0Ysa0JBQWtCLEtBQUssUUFBUSxHQUNsQztRQUFFQyxJQUFJLEVBQUVEO01BQTZCLENBQUMsR0FDckNBLGtCQUFnQztNQUN2QyxPQUFPO1FBQ0xGLGNBQWM7UUFDZEQsS0FBSztRQUNMTSxPQUFPLEVBQUVqQixpREFBUyxDQUFDZSxJQUFJLEVBQUVDLE9BQU8sQ0FBQztRQUNqQ0UsWUFBWSxFQUFFakIsbURBQU8sQ0FBQ2MsSUFBSSxFQUFFQyxPQUFPO01BQ3JDLENBQUM7SUFDSCxDQUFDLENBQUM7SUFFRixJQUFJLENBQUNHLFlBQVksR0FBRyxJQUFJLENBQUNWLGdCQUFnQixDQUFDVyxNQUFNLENBQzlDLENBQUNDLEdBQUcsRUFBRTtNQUFFVCxjQUFjO01BQUVNO0lBQWEsQ0FBQyxNQUFNO01BQzFDLEdBQUdHLEdBQUc7TUFDTixDQUFDVCxjQUFjLEdBQUdNO0lBQ3BCLENBQUMsQ0FBQyxFQUNGLENBQUMsQ0FDSCxDQUFDO0VBQ0g7RUFFQUksZ0JBQWdCQSxDQUFDQyxXQUFtQixFQUFzQjtJQUN4RCxJQUFJQSxXQUFXLElBQUksSUFBSSxDQUFDZixhQUFhLEVBQUU7TUFDckMsT0FBTyxJQUFJLENBQUNBLGFBQWEsQ0FBQ2UsV0FBVyxDQUFDO0lBQ3hDO0lBRUEsTUFBTUMsVUFBVSxHQUFHLElBQUksQ0FBQ2YsZ0JBQWdCLENBQUNXLE1BQU0sQ0FDN0MsQ0FDRUMsR0FBMEIsRUFDMUI7TUFBRUosT0FBTztNQUFFTjtJQUFNLENBQUMsS0FDUTtNQUMxQixNQUFNWixLQUFLLEdBQUdrQixPQUFPLENBQUNNLFdBQVcsQ0FBQztNQUNsQyxNQUFNRSxNQUFNLEdBQUcxQixLQUFLLElBQUlBLEtBQUssQ0FBQzBCLE1BQU0sR0FBRzFCLEtBQUssQ0FBQzBCLE1BQU0sR0FBRyxDQUFDLENBQUM7TUFDeEQsT0FBTzFCLEtBQUssR0FBRyxDQUFDLEdBQUdzQixHQUFHLEVBQUU7UUFBRSxHQUFHVixLQUFLO1FBQUUsR0FBR2M7TUFBTyxDQUFDLENBQUMsR0FBR0osR0FBRztJQUN4RCxDQUFDLEVBQ0QsRUFDRixDQUFDO0lBRUQsTUFBTUssT0FBTyxHQUFHRixVQUFVLENBQUNHLE1BQU0sS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUNwQixRQUFRLENBQUMsR0FBR2lCLFVBQVU7SUFDdEUsSUFBSSxDQUFDaEIsYUFBYSxDQUFDZSxXQUFXLENBQUMsR0FBR0csT0FBTztJQUV6QyxPQUFPQSxPQUFPO0VBQ2hCO0VBRUFFLFNBQVNBLENBQUNoQixjQUFzQixFQUFFaUIsUUFBaUIsRUFBVTtJQUMzRCxJQUNFLENBQUNDLE1BQU0sQ0FBQ0MsU0FBUyxDQUFDQyxjQUFjLENBQUNDLElBQUksQ0FBQyxJQUFJLENBQUNkLFlBQVksRUFBRVAsY0FBYyxDQUFDLEVBRXhFLE1BQU0sSUFBSXNCLEtBQUssQ0FBRSxrQkFBaUJ0QixjQUFlLEVBQUMsQ0FBQztJQUNyRCxPQUFPLElBQUksQ0FBQ08sWUFBWSxDQUFDUCxjQUFjLENBQUMsQ0FBQ2lCLFFBQVEsQ0FBQztFQUNwRDtBQUNGOztBQzdGc0M7QUFFUTtBQUV2QyxNQUFNTyxpQkFBaUIsZ0JBQUdELGdEQUFhLENBQzVDLElBQUlqQyxlQUFlLENBQUM7RUFDbEJFLE9BQU8sRUFBRSxDQUFDLENBQVE7RUFDbEJDLFVBQVUsRUFBRSxDQUFDLENBQUM7RUFDZEMsTUFBTSxFQUFFLEVBQVc7RUFDbkJDLFFBQVEsRUFBRThCO0FBQ1osQ0FBQyxDQUNILENBQUM7QUFFTSxNQUFNQyxlQUFlLGdCQUFHSCxnREFBYSxDQUMxQyxVQUFVLElBQUlJLFVBQVUsR0FDcEJBLFVBQVUsQ0FBQ0MsUUFBUSxHQUNsQjtFQUFFQyxRQUFRLEVBQUUsRUFBRTtFQUFFQyxNQUFNLEVBQUUsRUFBRTtFQUFFQyxJQUFJLEVBQUU7QUFBRyxDQUM1QyxDQUFDOzs7QUNqQndEO0FBRVM7QUFTbEUsTUFBTUssVUFBVSxHQUFHQSxDQUFDO0VBQUVDLFFBQVE7RUFBRUMsTUFBTTtFQUFFQztBQUFnQixDQUFDLEtBQUs7RUFDNUQsTUFBTSxDQUFDWCxRQUFRLEVBQUVZLFdBQVcsQ0FBQyxHQUFHTCwyQ0FBUSxDQUFDRyxNQUFNLENBQUM5QyxPQUFPLENBQUNvQyxRQUFRLENBQUM7RUFDakVNLDRDQUFTLENBQUMsTUFBTTtJQUNkLE9BQU9JLE1BQU0sQ0FBQzlDLE9BQU8sQ0FBQ2lELE1BQU0sQ0FBQyxDQUFDO01BQUVDLE1BQU07TUFBRWQ7SUFBUyxDQUFDLEtBQUs7TUFDckQsSUFBSVcsUUFBUSxFQUFFO1FBQ1pBLFFBQVEsQ0FBQztVQUFFRyxNQUFNO1VBQUVkO1FBQVMsQ0FBQyxFQUFFLE1BQU1ZLFdBQVcsQ0FBQ1osUUFBUSxDQUFDLENBQUM7TUFDN0QsQ0FBQyxNQUFNO1FBQ0xZLFdBQVcsQ0FBQ1osUUFBUSxDQUFDO01BQ3ZCO0lBQ0YsQ0FBQyxDQUFDO0VBQ0osQ0FBQyxDQUFDO0VBRUYsb0JBQ0VJLHNDQUFBLENBQUNSLDBCQUEwQjtJQUFDcUIsS0FBSyxFQUFFUCxNQUFPO0lBQUFRLE1BQUE7SUFBQUMsUUFBQTtNQUFBQyxRQUFBLEVBQUFDLFlBQUE7TUFBQUMsVUFBQTtNQUFBQyxZQUFBO0lBQUE7RUFBQSxnQkFDeENuQixzQ0FBQSxDQUFDTix3QkFBd0I7SUFBQ21CLEtBQUssRUFBRWpCLFFBQVM7SUFBQWtCLE1BQUE7SUFBQUMsUUFBQTtNQUFBQyxRQUFBLEVBQUFDLFlBQUE7TUFBQUMsVUFBQTtNQUFBQyxZQUFBO0lBQUE7RUFBQSxHQUN2Q2QsUUFDdUIsQ0FDQSxDQUFDO0FBRWpDLENBQUM7QUFDREQsVUFBVSxDQUFDZ0IsYUFBYSxHQUFHO0VBQ3pCM0QsVUFBVSxFQUFFLENBQUM7QUFDZixDQUFDO0FBQ0Qsa0VBQWV3Qyx1Q0FBSSxDQUFDRyxVQUFVLENBQUM7O0FDbkNhO0FBRXNCO0FBRTNELFNBQVNtQixXQUFXQSxDQUFBLEVBQUc7RUFDNUIsT0FBT0YsNkNBQVUsQ0FBQzNCLGVBQWUsQ0FBQztBQUNwQztBQUVPLFNBQVM4QixhQUFhQSxDQUFBLEVBQUc7RUFDOUIsT0FBT0gsNkNBQVUsQ0FBQzdCLGlCQUFpQixDQUFDO0FBQ3RDO0FBRU8sU0FBU2lDLFNBQVNBLENBQUEsRUFBbUI7RUFDMUMsTUFBTUMsVUFBVSxHQUFHRixhQUFhLENBQUMsQ0FBQztFQUNsQyxNQUFNNUIsUUFBUSxHQUFHMkIsV0FBVyxDQUFDLENBQUM7RUFFOUIsT0FBT0QsMENBQU8sQ0FDWixNQUFNSSxVQUFVLENBQUNoRCxnQkFBZ0IsQ0FBQ2tCLFFBQVEsQ0FBQ0MsUUFBUSxDQUFVLEVBQzdELENBQUNELFFBQVEsRUFBRThCLFVBQVUsQ0FDdkIsQ0FBQztBQUNIOzs7QUNwQjJDO0FBRUE7QUFzQjVCLFNBQVNFLElBQUlBLENBQXNDO0VBQ2hFM0QsSUFBSTtFQUNKNEQsS0FBSztFQUNMQyxLQUFLO0VBQ0xDLE9BQU87RUFDUEMsU0FBUyxFQUFFQyxTQUFTO0VBQ3BCQyxPQUFPO0VBQ1AsR0FBR0M7QUFDUyxDQUFDLEVBQUU7RUFDZixNQUFNVCxVQUFVLEdBQUdGLGFBQWEsQ0FBQyxDQUFDO0VBQ2xDLE1BQU0zQixRQUFRLEdBQUc2QixVQUFVLENBQUMxQyxTQUFTLENBQUNmLElBQUksRUFBRTRELEtBQUssQ0FBQztFQUNsRCxNQUFNTyxZQUFZLEdBQ2hCLENBQUNsRCxNQUFNLENBQUNDLFNBQVMsQ0FBQ0MsY0FBYyxDQUFDQyxJQUFJLENBQUM4QyxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQ3BEQSxJQUFJLENBQVNFLE1BQU0sS0FBSyxPQUFPO0VBQ2xDLE1BQU1DLFdBQXVELEdBQUdYLDhDQUFXLENBQ3pFWSxDQUFDLElBQUk7SUFDSEEsQ0FBQyxvQkFBREEsQ0FBQyxDQUFFQyxjQUFjLENBQUMsQ0FBQztJQUNuQk4sT0FBTyxvQkFBUEEsT0FBTyxDQUFHSyxDQUFDLENBQUM7O0lBRVo7SUFDQSxJQUFJSCxZQUFZLEVBQUU7TUFDaEIsSUFBSUwsT0FBTyxFQUFFO1FBQ1hMLFVBQVUsQ0FBQ2xFLE9BQU8sQ0FBQ3VFLE9BQU8sQ0FBQ2xDLFFBQVEsRUFBRWlDLEtBQUssQ0FBQztNQUM3QyxDQUFDLE1BQU07UUFDTEosVUFBVSxDQUFDbEUsT0FBTyxDQUFDaUYsSUFBSSxDQUFDNUMsUUFBUSxFQUFFaUMsS0FBSyxDQUFDO01BQzFDO0lBQ0Y7RUFDRixDQUFDLEVBQ0QsQ0FBQ0ksT0FBTyxFQUFFRSxZQUFZLEVBQUVMLE9BQU8sRUFBRUwsVUFBVSxDQUFDbEUsT0FBTyxFQUFFcUMsUUFBUSxFQUFFaUMsS0FBSyxDQUN0RSxDQUFDO0VBRUQsb0JBQU85QixzQ0FBQSxDQUFDaUMsU0FBUztJQUFDQyxPQUFPLEVBQUVJLFdBQVk7SUFBQ0ksSUFBSSxFQUFFN0MsUUFBUztJQUFBLEdBQU1zQyxJQUFJO0lBQUFyQixNQUFBO0lBQUFDLFFBQUE7TUFBQUMsUUFBQSxFQUFBQyxnQkFBQTtNQUFBQyxVQUFBO01BQUFDLFlBQUE7SUFBQTtFQUFBLENBQVcsQ0FBQztBQUMvRTtBQUNBUyxJQUFJLENBQUNlLFlBQVksR0FBRztFQUNsQlgsU0FBUyxFQUFFLEdBQUc7RUFDZEQsT0FBTyxFQUFFO0FBQ1gsQ0FBQzs7QUM1RDBCO0FBQzZCO0FBQ0s7QUFDbEM7QUFDaUIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9AcG9qby1yb3V0ZXIvY29yZS93ZWJwYWNrL2Jvb3RzdHJhcCIsIndlYnBhY2s6Ly9AcG9qby1yb3V0ZXIvY29yZS93ZWJwYWNrL3J1bnRpbWUvY29tcGF0IGdldCBkZWZhdWx0IGV4cG9ydCIsIndlYnBhY2s6Ly9AcG9qby1yb3V0ZXIvY29yZS93ZWJwYWNrL3J1bnRpbWUvZGVmaW5lIHByb3BlcnR5IGdldHRlcnMiLCJ3ZWJwYWNrOi8vQHBvam8tcm91dGVyL2NvcmUvd2VicGFjay9ydW50aW1lL2hhc093blByb3BlcnR5IHNob3J0aGFuZCIsIndlYnBhY2s6Ly9AcG9qby1yb3V0ZXIvY29yZS93ZWJwYWNrL3J1bnRpbWUvbWFrZSBuYW1lc3BhY2Ugb2JqZWN0Iiwid2VicGFjazovL0Bwb2pvLXJvdXRlci9jb3JlL2V4dGVybmFsIGNvbW1vbmpzIFwicmVhY3RcIiIsIndlYnBhY2s6Ly9AcG9qby1yb3V0ZXIvY29yZS9leHRlcm5hbCBjb21tb25qcyBcInBhdGgtdG8tcmVnZXhwXCIiLCJ3ZWJwYWNrOi8vQHBvam8tcm91dGVyL2NvcmUvLi9zcmMvQ29udHJvbGxlci50cyIsIndlYnBhY2s6Ly9AcG9qby1yb3V0ZXIvY29yZS8uL3NyYy9jb250ZXh0LnRzIiwid2VicGFjazovL0Bwb2pvLXJvdXRlci9jb3JlLy4vc3JjL1Bvam9Sb3V0ZXIudHN4Iiwid2VicGFjazovL0Bwb2pvLXJvdXRlci9jb3JlLy4vc3JjL2hvb2tzLnRzeCIsIndlYnBhY2s6Ly9AcG9qby1yb3V0ZXIvY29yZS8uL3NyYy9MaW5rLnRzeCIsIndlYnBhY2s6Ly9AcG9qby1yb3V0ZXIvY29yZS8uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUaGUgcmVxdWlyZSBzY29wZVxudmFyIF9fd2VicGFja19yZXF1aXJlX18gPSB7fTtcblxuIiwiLy8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbl9fd2VicGFja19yZXF1aXJlX18ubiA9IChtb2R1bGUpID0+IHtcblx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG5cdFx0KCkgPT4gKG1vZHVsZVsnZGVmYXVsdCddKSA6XG5cdFx0KCkgPT4gKG1vZHVsZSk7XG5cdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsIHsgYTogZ2V0dGVyIH0pO1xuXHRyZXR1cm4gZ2V0dGVyO1xufTsiLCIvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9ucyBmb3IgaGFybW9ueSBleHBvcnRzXG5fX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSAoZXhwb3J0cywgZGVmaW5pdGlvbikgPT4ge1xuXHRmb3IodmFyIGtleSBpbiBkZWZpbml0aW9uKSB7XG5cdFx0aWYoX193ZWJwYWNrX3JlcXVpcmVfXy5vKGRlZmluaXRpb24sIGtleSkgJiYgIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBrZXkpKSB7XG5cdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywga2V5LCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZGVmaW5pdGlvbltrZXldIH0pO1xuXHRcdH1cblx0fVxufTsiLCJfX3dlYnBhY2tfcmVxdWlyZV9fLm8gPSAob2JqLCBwcm9wKSA9PiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwgcHJvcCkpIiwiLy8gZGVmaW5lIF9fZXNNb2R1bGUgb24gZXhwb3J0c1xuX193ZWJwYWNrX3JlcXVpcmVfXy5yID0gKGV4cG9ydHMpID0+IHtcblx0aWYodHlwZW9mIFN5bWJvbCAhPT0gJ3VuZGVmaW5lZCcgJiYgU3ltYm9sLnRvU3RyaW5nVGFnKSB7XG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cdH1cblx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbn07IiwiY29uc3QgX19XRUJQQUNLX05BTUVTUEFDRV9PQkpFQ1RfXyA9IHJlcXVpcmUoXCJyZWFjdFwiKTsiLCJjb25zdCBfX1dFQlBBQ0tfTkFNRVNQQUNFX09CSkVDVF9fID0gcmVxdWlyZShcInBhdGgtdG8tcmVnZXhwXCIpOyIsImltcG9ydCB0eXBlIHsgSGlzdG9yeSB9IGZyb20gJ2hpc3RvcnknO1xuaW1wb3J0IHsgbWF0Y2ggYXMgbWF0Y2hQYXRoLCBjb21waWxlIH0gZnJvbSAncGF0aC10by1yZWdleHAnO1xuaW1wb3J0IHR5cGUgeyBNYXRjaEZ1bmN0aW9uLCBQYXRoRnVuY3Rpb24gfSBmcm9tICdwYXRoLXRvLXJlZ2V4cCc7XG5cbmltcG9ydCB0eXBlIHsgQW55SWZFbXB0eSwgRGVmYXVsdFJvdXRlUG9qbywgTmFtZWRQYXRoIH0gZnJvbSAnLi90eXBlcy5qcyc7XG5cbnR5cGUgUHJvcHM8XG4gIFJvdXRlIGV4dGVuZHMgeyBuYW1lOiBzdHJpbmcgfSA9IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gIH0sXG4+ID0ge1xuICBoaXN0b3J5OiBIaXN0b3J5O1xuICBuYW1lZFBhdGhzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBOYW1lZFBhdGg+O1xuICByb3V0ZXM6IHJlYWRvbmx5IFJvdXRlW107XG4gIG5vdEZvdW5kOiBBbnlJZkVtcHR5PERlZmF1bHRSb3V0ZVBvam8+O1xufTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUm91dGVDb250cm9sbGVyPFxuICBSb3V0ZSBleHRlbmRzIHsgbmFtZTogc3RyaW5nIH0gPSB7IG5hbWU6IHN0cmluZyB9LFxuPiB7XG4gIC8vIGNhY2hlIGZvciBtYXRjaCBsb29rdXBzLiBSZXNldCBpZiByb3V0ZXMgZXZlciBjaGFuZ2UuXG4gIC8vIGNvdWxkIG1ha2UgdGhpcyBMUlUgaWYgaXQgdGFrZXMgdXAgdG9vIG11Y2ggc3BhY2UuXG4gIHByaXZhdGUgY2FjaGVkTWF0Y2hlczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuICBwcml2YXRlIGRlY2xhcmUgbm9ybWFsaXplZFJvdXRlcjoge1xuICAgIHBhdGhPclBhdGhOYW1lOiBzdHJpbmc7XG4gICAgcm91dGU6IGFueTtcbiAgICBtYXRjaGVyOiBNYXRjaEZ1bmN0aW9uPG9iamVjdD47XG4gICAgb3V0Ym91bmRQYXRoOiBQYXRoRnVuY3Rpb248b2JqZWN0PjtcbiAgfVtdO1xuXG4gIGRlY2xhcmUgcmVhZG9ubHkgaGlzdG9yeTogSGlzdG9yeTtcbiAgZGVjbGFyZSByZWFkb25seSBub3RGb3VuZDogQW55SWZFbXB0eTxEZWZhdWx0Um91dGVQb2pvPjtcbiAgZGVjbGFyZSByZWFkb25seSBwYXRoQnVpbGRlcnM6IFJlY29yZDxzdHJpbmcsIFBhdGhGdW5jdGlvbj47XG5cbiAgY29uc3RydWN0b3IoeyBoaXN0b3J5LCBuYW1lZFBhdGhzLCByb3V0ZXMsIG5vdEZvdW5kIH06IFByb3BzPFJvdXRlPikge1xuICAgIHRoaXMuaGlzdG9yeSA9IGhpc3Rvcnk7XG4gICAgdGhpcy5ub3RGb3VuZCA9IG5vdEZvdW5kO1xuICAgIHRoaXMubm9ybWFsaXplZFJvdXRlciA9IHJvdXRlcy5tYXAocm91dGUgPT4ge1xuICAgICAgY29uc3QgcGF0aE9yUGF0aE5hbWUgPSByb3V0ZS5uYW1lO1xuICAgICAgY29uc3QgcGF0aE9iamVjdE9yU3RyaW5nID1cbiAgICAgICAgcGF0aE9yUGF0aE5hbWUgaW4gbmFtZWRQYXRoc1xuICAgICAgICAgID8gbmFtZWRQYXRoc1twYXRoT3JQYXRoTmFtZV1cbiAgICAgICAgICA6IHBhdGhPclBhdGhOYW1lO1xuICAgICAgY29uc3QgeyBwYXRoLCAuLi5vcHRpb25zIH0gPVxuICAgICAgICB0eXBlb2YgcGF0aE9iamVjdE9yU3RyaW5nID09PSAnc3RyaW5nJ1xuICAgICAgICAgID8geyBwYXRoOiBwYXRoT2JqZWN0T3JTdHJpbmcgYXMgc3RyaW5nIH1cbiAgICAgICAgICA6IChwYXRoT2JqZWN0T3JTdHJpbmcgYXMgTmFtZWRQYXRoKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhdGhPclBhdGhOYW1lLFxuICAgICAgICByb3V0ZSxcbiAgICAgICAgbWF0Y2hlcjogbWF0Y2hQYXRoKHBhdGgsIG9wdGlvbnMpLFxuICAgICAgICBvdXRib3VuZFBhdGg6IGNvbXBpbGUocGF0aCwgb3B0aW9ucyksXG4gICAgICB9O1xuICAgIH0pO1xuXG4gICAgdGhpcy5wYXRoQnVpbGRlcnMgPSB0aGlzLm5vcm1hbGl6ZWRSb3V0ZXIucmVkdWNlKFxuICAgICAgKGFjYywgeyBwYXRoT3JQYXRoTmFtZSwgb3V0Ym91bmRQYXRoIH0pID0+ICh7XG4gICAgICAgIC4uLmFjYyxcbiAgICAgICAgW3BhdGhPclBhdGhOYW1lXTogb3V0Ym91bmRQYXRoLFxuICAgICAgfSksXG4gICAgICB7fSxcbiAgICApO1xuICB9XG5cbiAgZ2V0TWF0Y2hlZFJvdXRlcyhwYXRoVG9NYXRjaDogc3RyaW5nKTogKFJvdXRlICYgb2JqZWN0KVtdIHtcbiAgICBpZiAocGF0aFRvTWF0Y2ggaW4gdGhpcy5jYWNoZWRNYXRjaGVzKSB7XG4gICAgICByZXR1cm4gdGhpcy5jYWNoZWRNYXRjaGVzW3BhdGhUb01hdGNoXTtcbiAgICB9XG5cbiAgICBjb25zdCBhbGxNYXRjaGVzID0gdGhpcy5ub3JtYWxpemVkUm91dGVyLnJlZHVjZShcbiAgICAgIChcbiAgICAgICAgYWNjOiBSZWNvcmQ8c3RyaW5nLCBhbnk+W10sXG4gICAgICAgIHsgbWF0Y2hlciwgcm91dGUgfSxcbiAgICAgICk6IFJlY29yZDxzdHJpbmcsIGFueT5bXSA9PiB7XG4gICAgICAgIGNvbnN0IG1hdGNoID0gbWF0Y2hlcihwYXRoVG9NYXRjaCk7XG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IG1hdGNoICYmIG1hdGNoLnBhcmFtcyA/IG1hdGNoLnBhcmFtcyA6IHt9O1xuICAgICAgICByZXR1cm4gbWF0Y2ggPyBbLi4uYWNjLCB7IC4uLnJvdXRlLCAuLi5wYXJhbXMgfV0gOiBhY2M7XG4gICAgICB9LFxuICAgICAgW10sXG4gICAgKTtcblxuICAgIGNvbnN0IG1hdGNoZXMgPSBhbGxNYXRjaGVzLmxlbmd0aCA9PT0gMCA/IFt0aGlzLm5vdEZvdW5kXSA6IGFsbE1hdGNoZXM7XG4gICAgdGhpcy5jYWNoZWRNYXRjaGVzW3BhdGhUb01hdGNoXSA9IG1hdGNoZXM7XG5cbiAgICByZXR1cm4gbWF0Y2hlcztcbiAgfVxuXG4gIGJ1aWxkUGF0aChwYXRoT3JQYXRoTmFtZTogc3RyaW5nLCBwYXRoRGF0YT86IG9iamVjdCk6IHN0cmluZyB7XG4gICAgaWYgKFxuICAgICAgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0aGlzLnBhdGhCdWlsZGVycywgcGF0aE9yUGF0aE5hbWUpXG4gICAgKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIHJvdXRlOiAke3BhdGhPclBhdGhOYW1lfWApO1xuICAgIHJldHVybiB0aGlzLnBhdGhCdWlsZGVyc1twYXRoT3JQYXRoTmFtZV0ocGF0aERhdGEpO1xuICB9XG59XG4iLCJpbXBvcnQgdHlwZSB7IExvY2F0aW9uIH0gZnJvbSAnaGlzdG9yeSc7XG5pbXBvcnQgeyBjcmVhdGVDb250ZXh0IH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgUm91dGVDb250cm9sbGVyIGZyb20gJy4vQ29udHJvbGxlci5qcyc7XG5cbmV4cG9ydCBjb25zdCBDb250cm9sbGVyQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQoXG4gIG5ldyBSb3V0ZUNvbnRyb2xsZXIoe1xuICAgIGhpc3Rvcnk6IHt9IGFzIGFueSxcbiAgICBuYW1lZFBhdGhzOiB7fSxcbiAgICByb3V0ZXM6IFtdIGFzIGFueVtdLFxuICAgIG5vdEZvdW5kOiB1bmRlZmluZWQsXG4gIH0pLFxuKTtcblxuZXhwb3J0IGNvbnN0IExvY2F0aW9uQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQoXG4gICdsb2NhdGlvbicgaW4gZ2xvYmFsVGhpc1xuICAgID8gZ2xvYmFsVGhpcy5sb2NhdGlvblxuICAgIDogKHsgcGF0aG5hbWU6ICcnLCBzZWFyY2g6ICcnLCBoYXNoOiAnJyB9IGFzIExvY2F0aW9uKSxcbik7XG4iLCJpbXBvcnQgdHlwZSB7IFVwZGF0ZSB9IGZyb20gJ2hpc3RvcnknO1xuaW1wb3J0IFJlYWN0LCB7IG1lbW8sIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7IENvbnRyb2xsZXJDb250ZXh0LCBMb2NhdGlvbkNvbnRleHQgfSBmcm9tICcuL2NvbnRleHQuanMnO1xuaW1wb3J0IFJvdXRlQ29udHJvbGxlciBmcm9tICcuL0NvbnRyb2xsZXIuanMnO1xuXG50eXBlIFByb3BzID0ge1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICByb3V0ZXI6IFJvdXRlQ29udHJvbGxlcjtcbiAgb25DaGFuZ2U/OiAodXBkYXRlOiBVcGRhdGUsIGNhbGxiYWNrOiAoKSA9PiB2b2lkIHwgdW5kZWZpbmVkKSA9PiB2b2lkO1xufTtcblxuY29uc3QgUG9qb1JvdXRlciA9ICh7IGNoaWxkcmVuLCByb3V0ZXIsIG9uQ2hhbmdlIH06IFByb3BzKSA9PiB7XG4gIGNvbnN0IFtsb2NhdGlvbiwgc2V0TG9jYXRpb25dID0gdXNlU3RhdGUocm91dGVyLmhpc3RvcnkubG9jYXRpb24pO1xuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiByb3V0ZXIuaGlzdG9yeS5saXN0ZW4oKHsgYWN0aW9uLCBsb2NhdGlvbiB9KSA9PiB7XG4gICAgICBpZiAob25DaGFuZ2UpIHtcbiAgICAgICAgb25DaGFuZ2UoeyBhY3Rpb24sIGxvY2F0aW9uIH0sICgpID0+IHNldExvY2F0aW9uKGxvY2F0aW9uKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzZXRMb2NhdGlvbihsb2NhdGlvbik7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xuXG4gIHJldHVybiAoXG4gICAgPENvbnRyb2xsZXJDb250ZXh0LlByb3ZpZGVyIHZhbHVlPXtyb3V0ZXJ9PlxuICAgICAgPExvY2F0aW9uQ29udGV4dC5Qcm92aWRlciB2YWx1ZT17bG9jYXRpb259PlxuICAgICAgICB7Y2hpbGRyZW59XG4gICAgICA8L0xvY2F0aW9uQ29udGV4dC5Qcm92aWRlcj5cbiAgICA8L0NvbnRyb2xsZXJDb250ZXh0LlByb3ZpZGVyPlxuICApO1xufTtcblBvam9Sb3V0ZXIuZGVmYXVsdFZhbHVlcyA9IHtcbiAgbmFtZWRQYXRoczoge30sXG59O1xuZXhwb3J0IGRlZmF1bHQgbWVtbyhQb2pvUm91dGVyKTtcbiIsImltcG9ydCB7IHVzZUNvbnRleHQsIHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7IENvbnRyb2xsZXJDb250ZXh0LCBMb2NhdGlvbkNvbnRleHQgfSBmcm9tICcuL2NvbnRleHQuanMnO1xuXG5leHBvcnQgZnVuY3Rpb24gdXNlTG9jYXRpb24oKSB7XG4gIHJldHVybiB1c2VDb250ZXh0KExvY2F0aW9uQ29udGV4dCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VDb250cm9sbGVyKCkge1xuICByZXR1cm4gdXNlQ29udGV4dChDb250cm9sbGVyQ29udGV4dCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VSb3V0ZXM8Um91dGU+KCk6IFJvdXRlW10ge1xuICBjb25zdCBjb250cm9sbGVyID0gdXNlQ29udHJvbGxlcigpO1xuICBjb25zdCBsb2NhdGlvbiA9IHVzZUxvY2F0aW9uKCk7XG5cbiAgcmV0dXJuIHVzZU1lbW8oXG4gICAgKCkgPT4gY29udHJvbGxlci5nZXRNYXRjaGVkUm91dGVzKGxvY2F0aW9uLnBhdGhuYW1lKSBhcyBhbnlbXSxcbiAgICBbbG9jYXRpb24sIGNvbnRyb2xsZXJdLFxuICApO1xufVxuIiwiaW1wb3J0IFJlYWN0LCB7IHVzZUNhbGxiYWNrIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyB1c2VDb250cm9sbGVyIH0gZnJvbSAnLi9ob29rcy5qcyc7XG5cbnR5cGUgQ29tcG9uZW50Q29uc3RyYWludCA9XG4gIHwga2V5b2YgSlNYLkludHJpbnNpY0VsZW1lbnRzXG4gIHwgUmVhY3QuSlNYRWxlbWVudENvbnN0cnVjdG9yPFxuICAgICAgUGljazxcbiAgICAgICAgUmVhY3QuQW5jaG9ySFRNTEF0dHJpYnV0ZXM8SFRNTEFuY2hvckVsZW1lbnQ+LFxuICAgICAgICAnb25DbGljaycgfCAndGFyZ2V0JyB8ICdocmVmJ1xuICAgICAgPlxuICAgID47XG5cbmV4cG9ydCB0eXBlIExpbmtQcm9wczxDIGV4dGVuZHMgQ29tcG9uZW50Q29uc3RyYWludCA9ICdhJz4gPVxuICBSZWFjdC5Db21wb25lbnRQcm9wczxDPiAmIHtcbiAgICBjb21wb25lbnQ6IEM7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHByb3BzPzogb2JqZWN0O1xuICAgIHN0YXRlPzogYW55O1xuICAgIHJlcGxhY2U6IGJvb2xlYW47XG4gICAgb25DbGljaz86IFJlYWN0Lk1vdXNlRXZlbnRIYW5kbGVyPEhUTUxBbmNob3JFbGVtZW50PjtcbiAgICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICB9O1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBMaW5rPEMgZXh0ZW5kcyBDb21wb25lbnRDb25zdHJhaW50ID0gJ2EnPih7XG4gIG5hbWUsXG4gIHByb3BzLFxuICBzdGF0ZSxcbiAgcmVwbGFjZSxcbiAgY29tcG9uZW50OiBDb21wb25lbnQsXG4gIG9uQ2xpY2ssXG4gIC4uLnJlc3Rcbn06IExpbmtQcm9wczxDPikge1xuICBjb25zdCBjb250cm9sbGVyID0gdXNlQ29udHJvbGxlcigpO1xuICBjb25zdCBwYXRobmFtZSA9IGNvbnRyb2xsZXIuYnVpbGRQYXRoKG5hbWUsIHByb3BzKTtcbiAgY29uc3Qgc2hvdWxkSGFuZGxlID1cbiAgICAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHJlc3QsICd0YXJnZXQnKSB8fFxuICAgIChyZXN0IGFzIGFueSkudGFyZ2V0ID09PSAnX3NlbGYnO1xuICBjb25zdCBoYW5kbGVDbGljazogUmVhY3QuTW91c2VFdmVudEhhbmRsZXI8SFRNTEFuY2hvckVsZW1lbnQ+ID0gdXNlQ2FsbGJhY2soXG4gICAgZSA9PiB7XG4gICAgICBlPy5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgb25DbGljaz8uKGUpO1xuXG4gICAgICAvLyBsZXQgYnJvd3NlciBoYW5kbGUgXCJ0YXJnZXQ9X2JsYW5rXCIgZXRjLlxuICAgICAgaWYgKHNob3VsZEhhbmRsZSkge1xuICAgICAgICBpZiAocmVwbGFjZSkge1xuICAgICAgICAgIGNvbnRyb2xsZXIuaGlzdG9yeS5yZXBsYWNlKHBhdGhuYW1lLCBzdGF0ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29udHJvbGxlci5oaXN0b3J5LnB1c2gocGF0aG5hbWUsIHN0YXRlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgW29uQ2xpY2ssIHNob3VsZEhhbmRsZSwgcmVwbGFjZSwgY29udHJvbGxlci5oaXN0b3J5LCBwYXRobmFtZSwgc3RhdGVdLFxuICApO1xuXG4gIHJldHVybiA8Q29tcG9uZW50IG9uQ2xpY2s9e2hhbmRsZUNsaWNrfSBocmVmPXtwYXRobmFtZX0gey4uLihyZXN0IGFzIGFueSl9IC8+O1xufVxuTGluay5kZWZhdWx0UHJvcHMgPSB7XG4gIGNvbXBvbmVudDogJ2EnLFxuICByZXBsYWNlOiBmYWxzZSxcbn07XG4iLCJleHBvcnQgKiBmcm9tICcuL3R5cGVzLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUG9qb1JvdXRlciB9IGZyb20gJy4vUG9qb1JvdXRlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFJvdXRlQ29udHJvbGxlciB9IGZyb20gJy4vQ29udHJvbGxlci5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2hvb2tzLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTGluayB9IGZyb20gJy4vTGluay5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHQuanMnO1xuIl0sIm5hbWVzIjpbIm1hdGNoIiwibWF0Y2hQYXRoIiwiY29tcGlsZSIsIlJvdXRlQ29udHJvbGxlciIsImNvbnN0cnVjdG9yIiwiaGlzdG9yeSIsIm5hbWVkUGF0aHMiLCJyb3V0ZXMiLCJub3RGb3VuZCIsImNhY2hlZE1hdGNoZXMiLCJub3JtYWxpemVkUm91dGVyIiwibWFwIiwicm91dGUiLCJwYXRoT3JQYXRoTmFtZSIsIm5hbWUiLCJwYXRoT2JqZWN0T3JTdHJpbmciLCJwYXRoIiwib3B0aW9ucyIsIm1hdGNoZXIiLCJvdXRib3VuZFBhdGgiLCJwYXRoQnVpbGRlcnMiLCJyZWR1Y2UiLCJhY2MiLCJnZXRNYXRjaGVkUm91dGVzIiwicGF0aFRvTWF0Y2giLCJhbGxNYXRjaGVzIiwicGFyYW1zIiwibWF0Y2hlcyIsImxlbmd0aCIsImJ1aWxkUGF0aCIsInBhdGhEYXRhIiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiRXJyb3IiLCJjcmVhdGVDb250ZXh0IiwiQ29udHJvbGxlckNvbnRleHQiLCJ1bmRlZmluZWQiLCJMb2NhdGlvbkNvbnRleHQiLCJnbG9iYWxUaGlzIiwibG9jYXRpb24iLCJwYXRobmFtZSIsInNlYXJjaCIsImhhc2giLCJSZWFjdCIsIm1lbW8iLCJ1c2VFZmZlY3QiLCJ1c2VTdGF0ZSIsIlBvam9Sb3V0ZXIiLCJjaGlsZHJlbiIsInJvdXRlciIsIm9uQ2hhbmdlIiwic2V0TG9jYXRpb24iLCJsaXN0ZW4iLCJhY3Rpb24iLCJjcmVhdGVFbGVtZW50IiwiUHJvdmlkZXIiLCJ2YWx1ZSIsIl9fc2VsZiIsIl9fc291cmNlIiwiZmlsZU5hbWUiLCJfanN4RmlsZU5hbWUiLCJsaW5lTnVtYmVyIiwiY29sdW1uTnVtYmVyIiwiZGVmYXVsdFZhbHVlcyIsInVzZUNvbnRleHQiLCJ1c2VNZW1vIiwidXNlTG9jYXRpb24iLCJ1c2VDb250cm9sbGVyIiwidXNlUm91dGVzIiwiY29udHJvbGxlciIsInVzZUNhbGxiYWNrIiwiTGluayIsInByb3BzIiwic3RhdGUiLCJyZXBsYWNlIiwiY29tcG9uZW50IiwiQ29tcG9uZW50Iiwib25DbGljayIsInJlc3QiLCJzaG91bGRIYW5kbGUiLCJ0YXJnZXQiLCJoYW5kbGVDbGljayIsImUiLCJwcmV2ZW50RGVmYXVsdCIsInB1c2giLCJocmVmIiwiZGVmYXVsdFByb3BzIiwiZGVmYXVsdCJdLCJzb3VyY2VSb290IjoiIn0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,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T0FBTyxDQUFHSyxDQUFDLENBQUM7O0lBRVo7SUFDQSxJQUFJSCxZQUFZLEVBQUU7TUFDaEIsSUFBSUwsT0FBTyxFQUFFO1FBQ1hMLFVBQVUsQ0FBQ3hFLE9BQU8sQ0FBQzZFLE9BQU8sQ0FBQ3hDLFFBQVEsRUFBRXVDLEtBQUssQ0FBQztNQUM3QyxDQUFDLE1BQU07UUFDTEosVUFBVSxDQUFDeEUsT0FBTyxDQUFDdUYsSUFBSSxDQUFDbEQsUUFBUSxFQUFFdUMsS0FBSyxDQUFDO01BQzFDO0lBQ0Y7RUFDRixDQUFDLEVBQ0QsQ0FBQ0ksT0FBTyxFQUFFRSxZQUFZLEVBQUVMLE9BQU8sRUFBRUwsVUFBVSxDQUFDeEUsT0FBTyxFQUFFcUMsUUFBUSxFQUFFdUMsS0FBSyxDQUN0RSxDQUFDO0VBRUQsb0JBQU9wQyxzQ0FBQSxDQUFDdUMsU0FBUztJQUFDQyxPQUFPLEVBQUVJLFdBQVk7SUFBQ0ksSUFBSSxFQUFFbkQsUUFBUztJQUFBLEdBQU00QyxJQUFJO0lBQUEzQixNQUFBO0lBQUFDLFFBQUE7TUFBQUMsUUFBQSxFQUFBQyxnQkFBQTtNQUFBQyxVQUFBO01BQUFDLFlBQUE7SUFBQTtFQUFBLENBQVcsQ0FBQztBQUMvRTtBQUNBZSxJQUFJLENBQUNlLFlBQVksR0FBRztFQUNsQlgsU0FBUyxFQUFFLEdBQUc7RUFDZEQsT0FBTyxFQUFFO0FBQ1gsQ0FBQzs7QUM1RDBCO0FBQzZCO0FBQ0s7QUFDbEM7QUFDaUIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9AcG9qby1yb3V0ZXIvY29yZS93ZWJwYWNrL2Jvb3RzdHJhcCIsIndlYnBhY2s6Ly9AcG9qby1yb3V0ZXIvY29yZS93ZWJwYWNrL3J1bnRpbWUvY29tcGF0IGdldCBkZWZhdWx0IGV4cG9ydCIsIndlYnBhY2s6Ly9AcG9qby1yb3V0ZXIvY29yZS93ZWJwYWNrL3J1bnRpbWUvZGVmaW5lIHByb3BlcnR5IGdldHRlcnMiLCJ3ZWJwYWNrOi8vQHBvam8tcm91dGVyL2NvcmUvd2VicGFjay9ydW50aW1lL2hhc093blByb3BlcnR5IHNob3J0aGFuZCIsIndlYnBhY2s6Ly9AcG9qby1yb3V0ZXIvY29yZS93ZWJwYWNrL3J1bnRpbWUvbWFrZSBuYW1lc3BhY2Ugb2JqZWN0Iiwid2VicGFjazovL0Bwb2pvLXJvdXRlci9jb3JlL2V4dGVybmFsIGNvbW1vbmpzIFwicmVhY3RcIiIsIndlYnBhY2s6Ly9AcG9qby1yb3V0ZXIvY29yZS9leHRlcm5hbCBjb21tb25qcyBcInBhdGgtdG8tcmVnZXhwXCIiLCJ3ZWJwYWNrOi8vQHBvam8tcm91dGVyL2NvcmUvLi9zcmMvQ29udHJvbGxlci50cyIsIndlYnBhY2s6Ly9AcG9qby1yb3V0ZXIvY29yZS8uL3NyYy9jb250ZXh0LnRzIiwid2VicGFjazovL0Bwb2pvLXJvdXRlci9jb3JlLy4vc3JjL1Bvam9Sb3V0ZXIudHN4Iiwid2VicGFjazovL0Bwb2pvLXJvdXRlci9jb3JlLy4vc3JjL2hvb2tzLnRzeCIsIndlYnBhY2s6Ly9AcG9qby1yb3V0ZXIvY29yZS8uL3NyYy9MaW5rLnRzeCIsIndlYnBhY2s6Ly9AcG9qby1yb3V0ZXIvY29yZS8uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUaGUgcmVxdWlyZSBzY29wZVxudmFyIF9fd2VicGFja19yZXF1aXJlX18gPSB7fTtcblxuIiwiLy8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbl9fd2VicGFja19yZXF1aXJlX18ubiA9IChtb2R1bGUpID0+IHtcblx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG5cdFx0KCkgPT4gKG1vZHVsZVsnZGVmYXVsdCddKSA6XG5cdFx0KCkgPT4gKG1vZHVsZSk7XG5cdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsIHsgYTogZ2V0dGVyIH0pO1xuXHRyZXR1cm4gZ2V0dGVyO1xufTsiLCIvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9ucyBmb3IgaGFybW9ueSBleHBvcnRzXG5fX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSAoZXhwb3J0cywgZGVmaW5pdGlvbikgPT4ge1xuXHRmb3IodmFyIGtleSBpbiBkZWZpbml0aW9uKSB7XG5cdFx0aWYoX193ZWJwYWNrX3JlcXVpcmVfXy5vKGRlZmluaXRpb24sIGtleSkgJiYgIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBrZXkpKSB7XG5cdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywga2V5LCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZGVmaW5pdGlvbltrZXldIH0pO1xuXHRcdH1cblx0fVxufTsiLCJfX3dlYnBhY2tfcmVxdWlyZV9fLm8gPSAob2JqLCBwcm9wKSA9PiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwgcHJvcCkpIiwiLy8gZGVmaW5lIF9fZXNNb2R1bGUgb24gZXhwb3J0c1xuX193ZWJwYWNrX3JlcXVpcmVfXy5yID0gKGV4cG9ydHMpID0+IHtcblx0aWYodHlwZW9mIFN5bWJvbCAhPT0gJ3VuZGVmaW5lZCcgJiYgU3ltYm9sLnRvU3RyaW5nVGFnKSB7XG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cdH1cblx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbn07IiwiY29uc3QgX19XRUJQQUNLX05BTUVTUEFDRV9PQkpFQ1RfXyA9IHJlcXVpcmUoXCJyZWFjdFwiKTsiLCJjb25zdCBfX1dFQlBBQ0tfTkFNRVNQQUNFX09CSkVDVF9fID0gcmVxdWlyZShcInBhdGgtdG8tcmVnZXhwXCIpOyIsImltcG9ydCB0eXBlIHsgSGlzdG9yeSB9IGZyb20gJ2hpc3RvcnknO1xuaW1wb3J0IHsgbWF0Y2ggYXMgbWF0Y2hQYXRoLCBjb21waWxlIH0gZnJvbSAncGF0aC10by1yZWdleHAnO1xuaW1wb3J0IHR5cGUgeyBNYXRjaEZ1bmN0aW9uLCBQYXRoRnVuY3Rpb24gfSBmcm9tICdwYXRoLXRvLXJlZ2V4cCc7XG5cbmltcG9ydCB0eXBlIHsgQW55SWZFbXB0eSwgRGVmYXVsdFJvdXRlUG9qbywgTmFtZWRQYXRoIH0gZnJvbSAnLi90eXBlcy5qcyc7XG5cbnR5cGUgUHJvcHM8XG4gIFJvdXRlIGV4dGVuZHMgeyBuYW1lOiBzdHJpbmcgfSA9IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gIH0sXG4+ID0ge1xuICBoaXN0b3J5OiBIaXN0b3J5O1xuICBuYW1lZFBhdGhzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBOYW1lZFBhdGg+O1xuICByb3V0ZXM6IHJlYWRvbmx5IFJvdXRlW107XG4gIG5vdEZvdW5kOiBBbnlJZkVtcHR5PERlZmF1bHRSb3V0ZVBvam8+O1xufTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUm91dGVDb250cm9sbGVyPFxuICBSb3V0ZSBleHRlbmRzIHsgbmFtZTogc3RyaW5nIH0gPSB7IG5hbWU6IHN0cmluZyB9LFxuPiB7XG4gIC8vIGNhY2hlIGZvciBtYXRjaCBsb29rdXBzLiBSZXNldCBpZiByb3V0ZXMgZXZlciBjaGFuZ2UuXG4gIC8vIGNvdWxkIG1ha2UgdGhpcyBMUlUgaWYgaXQgdGFrZXMgdXAgdG9vIG11Y2ggc3BhY2UuXG4gIHByaXZhdGUgY2FjaGVkTWF0Y2hlczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuICBwcml2YXRlIGRlY2xhcmUgbm9ybWFsaXplZFJvdXRlcjoge1xuICAgIHBhdGhPclBhdGhOYW1lOiBzdHJpbmc7XG4gICAgcm91dGU6IGFueTtcbiAgICBtYXRjaGVyOiBNYXRjaEZ1bmN0aW9uPG9iamVjdD47XG4gICAgb3V0Ym91bmRQYXRoOiBQYXRoRnVuY3Rpb248b2JqZWN0PjtcbiAgfVtdO1xuXG4gIGRlY2xhcmUgcmVhZG9ubHkgaGlzdG9yeTogSGlzdG9yeTtcbiAgZGVjbGFyZSByZWFkb25seSBub3RGb3VuZDogQW55SWZFbXB0eTxEZWZhdWx0Um91dGVQb2pvPjtcbiAgZGVjbGFyZSByZWFkb25seSBwYXRoQnVpbGRlcnM6IFJlY29yZDxzdHJpbmcsIFBhdGhGdW5jdGlvbj47XG5cbiAgY29uc3RydWN0b3IoeyBoaXN0b3J5LCBuYW1lZFBhdGhzLCByb3V0ZXMsIG5vdEZvdW5kIH06IFByb3BzPFJvdXRlPikge1xuICAgIHRoaXMuaGlzdG9yeSA9IGhpc3Rvcnk7XG4gICAgdGhpcy5ub3RGb3VuZCA9IG5vdEZvdW5kO1xuICAgIHRoaXMubm9ybWFsaXplZFJvdXRlciA9IHJvdXRlcy5tYXAocm91dGUgPT4ge1xuICAgICAgY29uc3QgcGF0aE9yUGF0aE5hbWUgPSByb3V0ZS5uYW1lO1xuICAgICAgY29uc3QgcGF0aE9iamVjdE9yU3RyaW5nID1cbiAgICAgICAgcGF0aE9yUGF0aE5hbWUgaW4gbmFtZWRQYXRoc1xuICAgICAgICAgID8gbmFtZWRQYXRoc1twYXRoT3JQYXRoTmFtZV1cbiAgICAgICAgICA6IHBhdGhPclBhdGhOYW1lO1xuICAgICAgY29uc3QgeyBwYXRoLCAuLi5vcHRpb25zIH0gPVxuICAgICAgICB0eXBlb2YgcGF0aE9iamVjdE9yU3RyaW5nID09PSAnc3RyaW5nJ1xuICAgICAgICAgID8geyBwYXRoOiBwYXRoT2JqZWN0T3JTdHJpbmcgYXMgc3RyaW5nIH1cbiAgICAgICAgICA6IChwYXRoT2JqZWN0T3JTdHJpbmcgYXMgTmFtZWRQYXRoKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhdGhPclBhdGhOYW1lLFxuICAgICAgICByb3V0ZSxcbiAgICAgICAgbWF0Y2hlcjogbWF0Y2hQYXRoKHBhdGgsIG9wdGlvbnMpLFxuICAgICAgICBvdXRib3VuZFBhdGg6IGNvbXBpbGUocGF0aCwgb3B0aW9ucyksXG4gICAgICB9O1xuICAgIH0pO1xuXG4gICAgdGhpcy5wYXRoQnVpbGRlcnMgPSB0aGlzLm5vcm1hbGl6ZWRSb3V0ZXIucmVkdWNlKFxuICAgICAgKGFjYywgeyBwYXRoT3JQYXRoTmFtZSwgb3V0Ym91bmRQYXRoIH0pID0+ICh7XG4gICAgICAgIC4uLmFjYyxcbiAgICAgICAgW3BhdGhPclBhdGhOYW1lXTogb3V0Ym91bmRQYXRoLFxuICAgICAgfSksXG4gICAgICB7fSxcbiAgICApO1xuICB9XG5cbiAgZ2V0TWF0Y2hlZFJvdXRlcyhwYXRoVG9NYXRjaDogc3RyaW5nKTogKFJvdXRlICYgb2JqZWN0KVtdIHtcbiAgICBpZiAocGF0aFRvTWF0Y2ggaW4gdGhpcy5jYWNoZWRNYXRjaGVzKSB7XG4gICAgICByZXR1cm4gdGhpcy5jYWNoZWRNYXRjaGVzW3BhdGhUb01hdGNoXTtcbiAgICB9XG5cbiAgICBjb25zdCBhbGxNYXRjaGVzID0gdGhpcy5ub3JtYWxpemVkUm91dGVyLnJlZHVjZShcbiAgICAgIChcbiAgICAgICAgYWNjOiBSZWNvcmQ8c3RyaW5nLCBhbnk+W10sXG4gICAgICAgIHsgbWF0Y2hlciwgcm91dGUgfSxcbiAgICAgICk6IFJlY29yZDxzdHJpbmcsIGFueT5bXSA9PiB7XG4gICAgICAgIGNvbnN0IG1hdGNoID0gbWF0Y2hlcihwYXRoVG9NYXRjaCk7XG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IG1hdGNoICYmIG1hdGNoLnBhcmFtcyA/IG1hdGNoLnBhcmFtcyA6IHt9O1xuICAgICAgICByZXR1cm4gbWF0Y2ggPyBbLi4uYWNjLCB7IC4uLnJvdXRlLCAuLi5wYXJhbXMgfV0gOiBhY2M7XG4gICAgICB9LFxuICAgICAgW10sXG4gICAgKTtcblxuICAgIGNvbnN0IG1hdGNoZXMgPSBhbGxNYXRjaGVzLmxlbmd0aCA9PT0gMCA/IFt0aGlzLm5vdEZvdW5kXSA6IGFsbE1hdGNoZXM7XG4gICAgdGhpcy5jYWNoZWRNYXRjaGVzW3BhdGhUb01hdGNoXSA9IG1hdGNoZXM7XG5cbiAgICByZXR1cm4gbWF0Y2hlcztcbiAgfVxuXG4gIGJ1aWxkUGF0aChwYXRoT3JQYXRoTmFtZTogc3RyaW5nLCBwYXRoRGF0YT86IG9iamVjdCk6IHN0cmluZyB7XG4gICAgaWYgKFxuICAgICAgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0aGlzLnBhdGhCdWlsZGVycywgcGF0aE9yUGF0aE5hbWUpXG4gICAgKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIHJvdXRlOiAke3BhdGhPclBhdGhOYW1lfWApO1xuICAgIHJldHVybiB0aGlzLnBhdGhCdWlsZGVyc1twYXRoT3JQYXRoTmFtZV0ocGF0aERhdGEpO1xuICB9XG59XG4iLCJpbXBvcnQgdHlwZSB7IExvY2F0aW9uIH0gZnJvbSAnaGlzdG9yeSc7XG5pbXBvcnQgeyBjcmVhdGVDb250ZXh0IH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgUm91dGVDb250cm9sbGVyIGZyb20gJy4vQ29udHJvbGxlci5qcyc7XG5cbmV4cG9ydCBjb25zdCBDb250cm9sbGVyQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQoXG4gIG5ldyBSb3V0ZUNvbnRyb2xsZXIoe1xuICAgIGhpc3Rvcnk6IHt9IGFzIGFueSxcbiAgICBuYW1lZFBhdGhzOiB7fSxcbiAgICByb3V0ZXM6IFtdIGFzIGFueVtdLFxuICAgIG5vdEZvdW5kOiB1bmRlZmluZWQsXG4gIH0pLFxuKTtcblxuZXhwb3J0IGNvbnN0IExvY2F0aW9uQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQoXG4gICdsb2NhdGlvbicgaW4gZ2xvYmFsVGhpc1xuICAgID8gZ2xvYmFsVGhpcy5sb2NhdGlvblxuICAgIDogKHsgcGF0aG5hbWU6ICcnLCBzZWFyY2g6ICcnLCBoYXNoOiAnJyB9IGFzIExvY2F0aW9uKSxcbik7XG4iLCJpbXBvcnQgdHlwZSB7IFVwZGF0ZSB9IGZyb20gJ2hpc3RvcnknO1xuaW1wb3J0IFJlYWN0LCB7IG1lbW8sIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7IENvbnRyb2xsZXJDb250ZXh0LCBMb2NhdGlvbkNvbnRleHQgfSBmcm9tICcuL2NvbnRleHQuanMnO1xuaW1wb3J0IFJvdXRlQ29udHJvbGxlciBmcm9tICcuL0NvbnRyb2xsZXIuanMnO1xuXG50eXBlIFByb3BzID0ge1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICByb3V0ZXI6IFJvdXRlQ29udHJvbGxlcjtcbiAgb25DaGFuZ2U/OiAodXBkYXRlOiBVcGRhdGUsIGNhbGxiYWNrOiAoKSA9PiB2b2lkIHwgdW5kZWZpbmVkKSA9PiB2b2lkO1xufTtcblxuY29uc3QgUG9qb1JvdXRlciA9ICh7IGNoaWxkcmVuLCByb3V0ZXIsIG9uQ2hhbmdlIH06IFByb3BzKSA9PiB7XG4gIGNvbnN0IFtsb2NhdGlvbiwgc2V0TG9jYXRpb25dID0gdXNlU3RhdGUocm91dGVyLmhpc3RvcnkubG9jYXRpb24pO1xuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiByb3V0ZXIuaGlzdG9yeS5saXN0ZW4oKHsgYWN0aW9uLCBsb2NhdGlvbiB9KSA9PiB7XG4gICAgICBpZiAob25DaGFuZ2UpIHtcbiAgICAgICAgb25DaGFuZ2UoeyBhY3Rpb24sIGxvY2F0aW9uIH0sICgpID0+IHNldExvY2F0aW9uKGxvY2F0aW9uKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzZXRMb2NhdGlvbihsb2NhdGlvbik7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xuXG4gIHJldHVybiAoXG4gICAgPENvbnRyb2xsZXJDb250ZXh0LlByb3ZpZGVyIHZhbHVlPXtyb3V0ZXJ9PlxuICAgICAgPExvY2F0aW9uQ29udGV4dC5Qcm92aWRlciB2YWx1ZT17bG9jYXRpb259PlxuICAgICAgICB7Y2hpbGRyZW59XG4gICAgICA8L0xvY2F0aW9uQ29udGV4dC5Qcm92aWRlcj5cbiAgICA8L0NvbnRyb2xsZXJDb250ZXh0LlByb3ZpZGVyPlxuICApO1xufTtcblBvam9Sb3V0ZXIuZGVmYXVsdFZhbHVlcyA9IHtcbiAgbmFtZWRQYXRoczoge30sXG59O1xuZXhwb3J0IGRlZmF1bHQgbWVtbyhQb2pvUm91dGVyKTtcbiIsImltcG9ydCB7IHVzZUNvbnRleHQsIHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7IENvbnRyb2xsZXJDb250ZXh0LCBMb2NhdGlvbkNvbnRleHQgfSBmcm9tICcuL2NvbnRleHQuanMnO1xuXG5leHBvcnQgZnVuY3Rpb24gdXNlTG9jYXRpb24oKSB7XG4gIHJldHVybiB1c2VDb250ZXh0KExvY2F0aW9uQ29udGV4dCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VMb2NhdGlvblNlYXJjaDxLIGV4dGVuZHMgc3RyaW5nIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkPihcbiAga2V5PzogSyxcbik6IChLIGV4dGVuZHMgc3RyaW5nID8gc3RyaW5nIDogVVJMU2VhcmNoUGFyYW1zKSB8IG51bGwge1xuICBjb25zdCBsb2NhdGlvbiA9IHVzZUxvY2F0aW9uKCk7XG4gIGNvbnN0IHNlYXJjaCA9IG5ldyBVUkxTZWFyY2hQYXJhbXMobG9jYXRpb24/LnNlYXJjaD8uc3Vic3RyaW5nPy4oMSkpO1xuICBpZiAoa2V5KSByZXR1cm4gc2VhcmNoLmdldChrZXkpIGFzIGFueTtcbiAgcmV0dXJuIHNlYXJjaCBhcyBhbnk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VDb250cm9sbGVyKCkge1xuICByZXR1cm4gdXNlQ29udGV4dChDb250cm9sbGVyQ29udGV4dCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VSb3V0ZXM8Um91dGU+KCk6IFJvdXRlW10ge1xuICBjb25zdCBjb250cm9sbGVyID0gdXNlQ29udHJvbGxlcigpO1xuICBjb25zdCBsb2NhdGlvbiA9IHVzZUxvY2F0aW9uKCk7XG5cbiAgcmV0dXJuIHVzZU1lbW8oXG4gICAgKCkgPT4gY29udHJvbGxlci5nZXRNYXRjaGVkUm91dGVzKGxvY2F0aW9uLnBhdGhuYW1lKSBhcyBhbnlbXSxcbiAgICBbbG9jYXRpb24sIGNvbnRyb2xsZXJdLFxuICApO1xufVxuIiwiaW1wb3J0IFJlYWN0LCB7IHVzZUNhbGxiYWNrIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyB1c2VDb250cm9sbGVyIH0gZnJvbSAnLi9ob29rcy5qcyc7XG5cbnR5cGUgQ29tcG9uZW50Q29uc3RyYWludCA9XG4gIHwga2V5b2YgSlNYLkludHJpbnNpY0VsZW1lbnRzXG4gIHwgUmVhY3QuSlNYRWxlbWVudENvbnN0cnVjdG9yPFxuICAgICAgUGljazxcbiAgICAgICAgUmVhY3QuQW5jaG9ySFRNTEF0dHJpYnV0ZXM8SFRNTEFuY2hvckVsZW1lbnQ+LFxuICAgICAgICAnb25DbGljaycgfCAndGFyZ2V0JyB8ICdocmVmJ1xuICAgICAgPlxuICAgID47XG5cbmV4cG9ydCB0eXBlIExpbmtQcm9wczxDIGV4dGVuZHMgQ29tcG9uZW50Q29uc3RyYWludCA9ICdhJz4gPVxuICBSZWFjdC5Db21wb25lbnRQcm9wczxDPiAmIHtcbiAgICBjb21wb25lbnQ6IEM7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHByb3BzPzogb2JqZWN0O1xuICAgIHN0YXRlPzogYW55O1xuICAgIHJlcGxhY2U6IGJvb2xlYW47XG4gICAgb25DbGljaz86IFJlYWN0Lk1vdXNlRXZlbnRIYW5kbGVyPEhUTUxBbmNob3JFbGVtZW50PjtcbiAgICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICB9O1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBMaW5rPEMgZXh0ZW5kcyBDb21wb25lbnRDb25zdHJhaW50ID0gJ2EnPih7XG4gIG5hbWUsXG4gIHByb3BzLFxuICBzdGF0ZSxcbiAgcmVwbGFjZSxcbiAgY29tcG9uZW50OiBDb21wb25lbnQsXG4gIG9uQ2xpY2ssXG4gIC4uLnJlc3Rcbn06IExpbmtQcm9wczxDPikge1xuICBjb25zdCBjb250cm9sbGVyID0gdXNlQ29udHJvbGxlcigpO1xuICBjb25zdCBwYXRobmFtZSA9IGNvbnRyb2xsZXIuYnVpbGRQYXRoKG5hbWUsIHByb3BzKTtcbiAgY29uc3Qgc2hvdWxkSGFuZGxlID1cbiAgICAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHJlc3QsICd0YXJnZXQnKSB8fFxuICAgIChyZXN0IGFzIGFueSkudGFyZ2V0ID09PSAnX3NlbGYnO1xuICBjb25zdCBoYW5kbGVDbGljazogUmVhY3QuTW91c2VFdmVudEhhbmRsZXI8SFRNTEFuY2hvckVsZW1lbnQ+ID0gdXNlQ2FsbGJhY2soXG4gICAgZSA9PiB7XG4gICAgICBlPy5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgb25DbGljaz8uKGUpO1xuXG4gICAgICAvLyBsZXQgYnJvd3NlciBoYW5kbGUgXCJ0YXJnZXQ9X2JsYW5rXCIgZXRjLlxuICAgICAgaWYgKHNob3VsZEhhbmRsZSkge1xuICAgICAgICBpZiAocmVwbGFjZSkge1xuICAgICAgICAgIGNvbnRyb2xsZXIuaGlzdG9yeS5yZXBsYWNlKHBhdGhuYW1lLCBzdGF0ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29udHJvbGxlci5oaXN0b3J5LnB1c2gocGF0aG5hbWUsIHN0YXRlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgW29uQ2xpY2ssIHNob3VsZEhhbmRsZSwgcmVwbGFjZSwgY29udHJvbGxlci5oaXN0b3J5LCBwYXRobmFtZSwgc3RhdGVdLFxuICApO1xuXG4gIHJldHVybiA8Q29tcG9uZW50IG9uQ2xpY2s9e2hhbmRsZUNsaWNrfSBocmVmPXtwYXRobmFtZX0gey4uLihyZXN0IGFzIGFueSl9IC8+O1xufVxuTGluay5kZWZhdWx0UHJvcHMgPSB7XG4gIGNvbXBvbmVudDogJ2EnLFxuICByZXBsYWNlOiBmYWxzZSxcbn07XG4iLCJleHBvcnQgKiBmcm9tICcuL3R5cGVzLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUG9qb1JvdXRlciB9IGZyb20gJy4vUG9qb1JvdXRlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFJvdXRlQ29udHJvbGxlciB9IGZyb20gJy4vQ29udHJvbGxlci5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2hvb2tzLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTGluayB9IGZyb20gJy4vTGluay5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHQuanMnO1xuIl0sIm5hbWVzIjpbIm1hdGNoIiwibWF0Y2hQYXRoIiwiY29tcGlsZSIsIlJvdXRlQ29udHJvbGxlciIsImNvbnN0cnVjdG9yIiwiaGlzdG9yeSIsIm5hbWVkUGF0aHMiLCJyb3V0ZXMiLCJub3RGb3VuZCIsImNhY2hlZE1hdGNoZXMiLCJub3JtYWxpemVkUm91dGVyIiwibWFwIiwicm91dGUiLCJwYXRoT3JQYXRoTmFtZSIsIm5hbWUiLCJwYXRoT2JqZWN0T3JTdHJpbmciLCJwYXRoIiwib3B0aW9ucyIsIm1hdGNoZXIiLCJvdXRib3VuZFBhdGgiLCJwYXRoQnVpbGRlcnMiLCJyZWR1Y2UiLCJhY2MiLCJnZXRNYXRjaGVkUm91dGVzIiwicGF0aFRvTWF0Y2giLCJhbGxNYXRjaGVzIiwicGFyYW1zIiwibWF0Y2hlcyIsImxlbmd0aCIsImJ1aWxkUGF0aCIsInBhdGhEYXRhIiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiRXJyb3IiLCJjcmVhdGVDb250ZXh0IiwiQ29udHJvbGxlckNvbnRleHQiLCJ1bmRlZmluZWQiLCJMb2NhdGlvbkNvbnRleHQiLCJnbG9iYWxUaGlzIiwibG9jYXRpb24iLCJwYXRobmFtZSIsInNlYXJjaCIsImhhc2giLCJSZWFjdCIsIm1lbW8iLCJ1c2VFZmZlY3QiLCJ1c2VTdGF0ZSIsIlBvam9Sb3V0ZXIiLCJjaGlsZHJlbiIsInJvdXRlciIsIm9uQ2hhbmdlIiwic2V0TG9jYXRpb24iLCJsaXN0ZW4iLCJhY3Rpb24iLCJjcmVhdGVFbGVtZW50IiwiUHJvdmlkZXIiLCJ2YWx1ZSIsIl9fc2VsZiIsIl9fc291cmNlIiwiZmlsZU5hbWUiLCJfanN4RmlsZU5hbWUiLCJsaW5lTnVtYmVyIiwiY29sdW1uTnVtYmVyIiwiZGVmYXVsdFZhbHVlcyIsInVzZUNvbnRleHQiLCJ1c2VNZW1vIiwidXNlTG9jYXRpb24iLCJ1c2VMb2NhdGlvblNlYXJjaCIsImtleSIsIl9sb2NhdGlvbiRzZWFyY2giLCJVUkxTZWFyY2hQYXJhbXMiLCJzdWJzdHJpbmciLCJnZXQiLCJ1c2VDb250cm9sbGVyIiwidXNlUm91dGVzIiwiY29udHJvbGxlciIsInVzZUNhbGxiYWNrIiwiTGluayIsInByb3BzIiwic3RhdGUiLCJyZXBsYWNlIiwiY29tcG9uZW50IiwiQ29tcG9uZW50Iiwib25DbGljayIsInJlc3QiLCJzaG91bGRIYW5kbGUiLCJ0YXJnZXQiLCJoYW5kbGVDbGljayIsImUiLCJwcmV2ZW50RGVmYXVsdCIsInB1c2giLCJocmVmIiwiZGVmYXVsdFByb3BzIiwiZGVmYXVsdCJdLCJzb3VyY2VSb290IjoiIn0=
import { match as matchPath, compile } from 'path-to-regexp';
export default class RouteController {
// cache for match lookups. Reset if routes ever change.
// could make this LRU if it takes up too much space.
constructor({

@@ -12,2 +9,4 @@ history,

}) {
// cache for match lookups. Reset if routes ever change.
// could make this LRU if it takes up too much space.
this.cachedMatches = {};

@@ -64,2 +63,2 @@ this.history = history;

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtYXRjaCIsIm1hdGNoUGF0aCIsImNvbXBpbGUiLCJSb3V0ZUNvbnRyb2xsZXIiLCJjb25zdHJ1Y3RvciIsImhpc3RvcnkiLCJuYW1lZFBhdGhzIiwicm91dGVzIiwibm90Rm91bmQiLCJjYWNoZWRNYXRjaGVzIiwibm9ybWFsaXplZFJvdXRlciIsIm1hcCIsInJvdXRlIiwicGF0aE9yUGF0aE5hbWUiLCJuYW1lIiwicGF0aE9iamVjdE9yU3RyaW5nIiwicGF0aCIsIm9wdGlvbnMiLCJtYXRjaGVyIiwib3V0Ym91bmRQYXRoIiwicGF0aEJ1aWxkZXJzIiwicmVkdWNlIiwiYWNjIiwiZ2V0TWF0Y2hlZFJvdXRlcyIsInBhdGhUb01hdGNoIiwiYWxsTWF0Y2hlcyIsInBhcmFtcyIsIm1hdGNoZXMiLCJsZW5ndGgiLCJidWlsZFBhdGgiLCJwYXRoRGF0YSIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIkVycm9yIl0sInNvdXJjZXMiOlsiLi4vc3JjL0NvbnRyb2xsZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBIaXN0b3J5IH0gZnJvbSAnaGlzdG9yeSc7XG5pbXBvcnQgeyBtYXRjaCBhcyBtYXRjaFBhdGgsIGNvbXBpbGUgfSBmcm9tICdwYXRoLXRvLXJlZ2V4cCc7XG5pbXBvcnQgdHlwZSB7IE1hdGNoRnVuY3Rpb24sIFBhdGhGdW5jdGlvbiB9IGZyb20gJ3BhdGgtdG8tcmVnZXhwJztcblxuaW1wb3J0IHR5cGUgeyBBbnlJZkVtcHR5LCBEZWZhdWx0Um91dGVQb2pvLCBOYW1lZFBhdGggfSBmcm9tICcuL3R5cGVzLmpzJztcblxudHlwZSBQcm9wczxcbiAgUm91dGUgZXh0ZW5kcyB7IG5hbWU6IHN0cmluZyB9ID0ge1xuICAgIG5hbWU6IHN0cmluZztcbiAgfSxcbj4gPSB7XG4gIGhpc3Rvcnk6IEhpc3Rvcnk7XG4gIG5hbWVkUGF0aHM6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IE5hbWVkUGF0aD47XG4gIHJvdXRlczogcmVhZG9ubHkgUm91dGVbXTtcbiAgbm90Rm91bmQ6IEFueUlmRW1wdHk8RGVmYXVsdFJvdXRlUG9qbz47XG59O1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSb3V0ZUNvbnRyb2xsZXI8XG4gIFJvdXRlIGV4dGVuZHMgeyBuYW1lOiBzdHJpbmcgfSA9IHsgbmFtZTogc3RyaW5nIH0sXG4+IHtcbiAgLy8gY2FjaGUgZm9yIG1hdGNoIGxvb2t1cHMuIFJlc2V0IGlmIHJvdXRlcyBldmVyIGNoYW5nZS5cbiAgLy8gY291bGQgbWFrZSB0aGlzIExSVSBpZiBpdCB0YWtlcyB1cCB0b28gbXVjaCBzcGFjZS5cbiAgcHJpdmF0ZSBjYWNoZWRNYXRjaGVzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XG4gIHByaXZhdGUgZGVjbGFyZSBub3JtYWxpemVkUm91dGVyOiB7XG4gICAgcGF0aE9yUGF0aE5hbWU6IHN0cmluZztcbiAgICByb3V0ZTogYW55O1xuICAgIG1hdGNoZXI6IE1hdGNoRnVuY3Rpb248b2JqZWN0PjtcbiAgICBvdXRib3VuZFBhdGg6IFBhdGhGdW5jdGlvbjxvYmplY3Q+O1xuICB9W107XG5cbiAgZGVjbGFyZSByZWFkb25seSBoaXN0b3J5OiBIaXN0b3J5O1xuICBkZWNsYXJlIHJlYWRvbmx5IG5vdEZvdW5kOiBBbnlJZkVtcHR5PERlZmF1bHRSb3V0ZVBvam8+O1xuICBkZWNsYXJlIHJlYWRvbmx5IHBhdGhCdWlsZGVyczogUmVjb3JkPHN0cmluZywgUGF0aEZ1bmN0aW9uPjtcblxuICBjb25zdHJ1Y3Rvcih7IGhpc3RvcnksIG5hbWVkUGF0aHMsIHJvdXRlcywgbm90Rm91bmQgfTogUHJvcHM8Um91dGU+KSB7XG4gICAgdGhpcy5oaXN0b3J5ID0gaGlzdG9yeTtcbiAgICB0aGlzLm5vdEZvdW5kID0gbm90Rm91bmQ7XG4gICAgdGhpcy5ub3JtYWxpemVkUm91dGVyID0gcm91dGVzLm1hcChyb3V0ZSA9PiB7XG4gICAgICBjb25zdCBwYXRoT3JQYXRoTmFtZSA9IHJvdXRlLm5hbWU7XG4gICAgICBjb25zdCBwYXRoT2JqZWN0T3JTdHJpbmcgPVxuICAgICAgICBwYXRoT3JQYXRoTmFtZSBpbiBuYW1lZFBhdGhzXG4gICAgICAgICAgPyBuYW1lZFBhdGhzW3BhdGhPclBhdGhOYW1lXVxuICAgICAgICAgIDogcGF0aE9yUGF0aE5hbWU7XG4gICAgICBjb25zdCB7IHBhdGgsIC4uLm9wdGlvbnMgfSA9XG4gICAgICAgIHR5cGVvZiBwYXRoT2JqZWN0T3JTdHJpbmcgPT09ICdzdHJpbmcnXG4gICAgICAgICAgPyB7IHBhdGg6IHBhdGhPYmplY3RPclN0cmluZyBhcyBzdHJpbmcgfVxuICAgICAgICAgIDogKHBhdGhPYmplY3RPclN0cmluZyBhcyBOYW1lZFBhdGgpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGF0aE9yUGF0aE5hbWUsXG4gICAgICAgIHJvdXRlLFxuICAgICAgICBtYXRjaGVyOiBtYXRjaFBhdGgocGF0aCwgb3B0aW9ucyksXG4gICAgICAgIG91dGJvdW5kUGF0aDogY29tcGlsZShwYXRoLCBvcHRpb25zKSxcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICB0aGlzLnBhdGhCdWlsZGVycyA9IHRoaXMubm9ybWFsaXplZFJvdXRlci5yZWR1Y2UoXG4gICAgICAoYWNjLCB7IHBhdGhPclBhdGhOYW1lLCBvdXRib3VuZFBhdGggfSkgPT4gKHtcbiAgICAgICAgLi4uYWNjLFxuICAgICAgICBbcGF0aE9yUGF0aE5hbWVdOiBvdXRib3VuZFBhdGgsXG4gICAgICB9KSxcbiAgICAgIHt9LFxuICAgICk7XG4gIH1cblxuICBnZXRNYXRjaGVkUm91dGVzKHBhdGhUb01hdGNoOiBzdHJpbmcpOiAoUm91dGUgJiBvYmplY3QpW10ge1xuICAgIGlmIChwYXRoVG9NYXRjaCBpbiB0aGlzLmNhY2hlZE1hdGNoZXMpIHtcbiAgICAgIHJldHVybiB0aGlzLmNhY2hlZE1hdGNoZXNbcGF0aFRvTWF0Y2hdO1xuICAgIH1cblxuICAgIGNvbnN0IGFsbE1hdGNoZXMgPSB0aGlzLm5vcm1hbGl6ZWRSb3V0ZXIucmVkdWNlKFxuICAgICAgKFxuICAgICAgICBhY2M6IFJlY29yZDxzdHJpbmcsIGFueT5bXSxcbiAgICAgICAgeyBtYXRjaGVyLCByb3V0ZSB9LFxuICAgICAgKTogUmVjb3JkPHN0cmluZywgYW55PltdID0+IHtcbiAgICAgICAgY29uc3QgbWF0Y2ggPSBtYXRjaGVyKHBhdGhUb01hdGNoKTtcbiAgICAgICAgY29uc3QgcGFyYW1zID0gbWF0Y2ggJiYgbWF0Y2gucGFyYW1zID8gbWF0Y2gucGFyYW1zIDoge307XG4gICAgICAgIHJldHVybiBtYXRjaCA/IFsuLi5hY2MsIHsgLi4ucm91dGUsIC4uLnBhcmFtcyB9XSA6IGFjYztcbiAgICAgIH0sXG4gICAgICBbXSxcbiAgICApO1xuXG4gICAgY29uc3QgbWF0Y2hlcyA9IGFsbE1hdGNoZXMubGVuZ3RoID09PSAwID8gW3RoaXMubm90Rm91bmRdIDogYWxsTWF0Y2hlcztcbiAgICB0aGlzLmNhY2hlZE1hdGNoZXNbcGF0aFRvTWF0Y2hdID0gbWF0Y2hlcztcblxuICAgIHJldHVybiBtYXRjaGVzO1xuICB9XG5cbiAgYnVpbGRQYXRoKHBhdGhPclBhdGhOYW1lOiBzdHJpbmcsIHBhdGhEYXRhPzogb2JqZWN0KTogc3RyaW5nIHtcbiAgICBpZiAoXG4gICAgICAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHRoaXMucGF0aEJ1aWxkZXJzLCBwYXRoT3JQYXRoTmFtZSlcbiAgICApXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gcm91dGU6ICR7cGF0aE9yUGF0aE5hbWV9YCk7XG4gICAgcmV0dXJuIHRoaXMucGF0aEJ1aWxkZXJzW3BhdGhPclBhdGhOYW1lXShwYXRoRGF0YSk7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6IkFBQ0EsU0FBU0EsS0FBSyxJQUFJQyxTQUFTLEVBQUVDLE9BQU8sUUFBUSxnQkFBZ0I7QUFnQjVELGVBQWUsTUFBTUMsZUFBZSxDQUVsQztFQUNBO0VBQ0E7O0VB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
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtYXRjaCIsIm1hdGNoUGF0aCIsImNvbXBpbGUiLCJSb3V0ZUNvbnRyb2xsZXIiLCJjb25zdHJ1Y3RvciIsImhpc3RvcnkiLCJuYW1lZFBhdGhzIiwicm91dGVzIiwibm90Rm91bmQiLCJjYWNoZWRNYXRjaGVzIiwibm9ybWFsaXplZFJvdXRlciIsIm1hcCIsInJvdXRlIiwicGF0aE9yUGF0aE5hbWUiLCJuYW1lIiwicGF0aE9iamVjdE9yU3RyaW5nIiwicGF0aCIsIm9wdGlvbnMiLCJtYXRjaGVyIiwib3V0Ym91bmRQYXRoIiwicGF0aEJ1aWxkZXJzIiwicmVkdWNlIiwiYWNjIiwiZ2V0TWF0Y2hlZFJvdXRlcyIsInBhdGhUb01hdGNoIiwiYWxsTWF0Y2hlcyIsInBhcmFtcyIsIm1hdGNoZXMiLCJsZW5ndGgiLCJidWlsZFBhdGgiLCJwYXRoRGF0YSIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIkVycm9yIl0sInNvdXJjZXMiOlsiLi4vc3JjL0NvbnRyb2xsZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBIaXN0b3J5IH0gZnJvbSAnaGlzdG9yeSc7XG5pbXBvcnQgeyBtYXRjaCBhcyBtYXRjaFBhdGgsIGNvbXBpbGUgfSBmcm9tICdwYXRoLXRvLXJlZ2V4cCc7XG5pbXBvcnQgdHlwZSB7IE1hdGNoRnVuY3Rpb24sIFBhdGhGdW5jdGlvbiB9IGZyb20gJ3BhdGgtdG8tcmVnZXhwJztcblxuaW1wb3J0IHR5cGUgeyBBbnlJZkVtcHR5LCBEZWZhdWx0Um91dGVQb2pvLCBOYW1lZFBhdGggfSBmcm9tICcuL3R5cGVzLmpzJztcblxudHlwZSBQcm9wczxcbiAgUm91dGUgZXh0ZW5kcyB7IG5hbWU6IHN0cmluZyB9ID0ge1xuICAgIG5hbWU6IHN0cmluZztcbiAgfSxcbj4gPSB7XG4gIGhpc3Rvcnk6IEhpc3Rvcnk7XG4gIG5hbWVkUGF0aHM6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IE5hbWVkUGF0aD47XG4gIHJvdXRlczogcmVhZG9ubHkgUm91dGVbXTtcbiAgbm90Rm91bmQ6IEFueUlmRW1wdHk8RGVmYXVsdFJvdXRlUG9qbz47XG59O1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSb3V0ZUNvbnRyb2xsZXI8XG4gIFJvdXRlIGV4dGVuZHMgeyBuYW1lOiBzdHJpbmcgfSA9IHsgbmFtZTogc3RyaW5nIH0sXG4+IHtcbiAgLy8gY2FjaGUgZm9yIG1hdGNoIGxvb2t1cHMuIFJlc2V0IGlmIHJvdXRlcyBldmVyIGNoYW5nZS5cbiAgLy8gY291bGQgbWFrZSB0aGlzIExSVSBpZiBpdCB0YWtlcyB1cCB0b28gbXVjaCBzcGFjZS5cbiAgcHJpdmF0ZSBjYWNoZWRNYXRjaGVzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XG4gIHByaXZhdGUgZGVjbGFyZSBub3JtYWxpemVkUm91dGVyOiB7XG4gICAgcGF0aE9yUGF0aE5hbWU6IHN0cmluZztcbiAgICByb3V0ZTogYW55O1xuICAgIG1hdGNoZXI6IE1hdGNoRnVuY3Rpb248b2JqZWN0PjtcbiAgICBvdXRib3VuZFBhdGg6IFBhdGhGdW5jdGlvbjxvYmplY3Q+O1xuICB9W107XG5cbiAgZGVjbGFyZSByZWFkb25seSBoaXN0b3J5OiBIaXN0b3J5O1xuICBkZWNsYXJlIHJlYWRvbmx5IG5vdEZvdW5kOiBBbnlJZkVtcHR5PERlZmF1bHRSb3V0ZVBvam8+O1xuICBkZWNsYXJlIHJlYWRvbmx5IHBhdGhCdWlsZGVyczogUmVjb3JkPHN0cmluZywgUGF0aEZ1bmN0aW9uPjtcblxuICBjb25zdHJ1Y3Rvcih7IGhpc3RvcnksIG5hbWVkUGF0aHMsIHJvdXRlcywgbm90Rm91bmQgfTogUHJvcHM8Um91dGU+KSB7XG4gICAgdGhpcy5oaXN0b3J5ID0gaGlzdG9yeTtcbiAgICB0aGlzLm5vdEZvdW5kID0gbm90Rm91bmQ7XG4gICAgdGhpcy5ub3JtYWxpemVkUm91dGVyID0gcm91dGVzLm1hcChyb3V0ZSA9PiB7XG4gICAgICBjb25zdCBwYXRoT3JQYXRoTmFtZSA9IHJvdXRlLm5hbWU7XG4gICAgICBjb25zdCBwYXRoT2JqZWN0T3JTdHJpbmcgPVxuICAgICAgICBwYXRoT3JQYXRoTmFtZSBpbiBuYW1lZFBhdGhzXG4gICAgICAgICAgPyBuYW1lZFBhdGhzW3BhdGhPclBhdGhOYW1lXVxuICAgICAgICAgIDogcGF0aE9yUGF0aE5hbWU7XG4gICAgICBjb25zdCB7IHBhdGgsIC4uLm9wdGlvbnMgfSA9XG4gICAgICAgIHR5cGVvZiBwYXRoT2JqZWN0T3JTdHJpbmcgPT09ICdzdHJpbmcnXG4gICAgICAgICAgPyB7IHBhdGg6IHBhdGhPYmplY3RPclN0cmluZyBhcyBzdHJpbmcgfVxuICAgICAgICAgIDogKHBhdGhPYmplY3RPclN0cmluZyBhcyBOYW1lZFBhdGgpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGF0aE9yUGF0aE5hbWUsXG4gICAgICAgIHJvdXRlLFxuICAgICAgICBtYXRjaGVyOiBtYXRjaFBhdGgocGF0aCwgb3B0aW9ucyksXG4gICAgICAgIG91dGJvdW5kUGF0aDogY29tcGlsZShwYXRoLCBvcHRpb25zKSxcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICB0aGlzLnBhdGhCdWlsZGVycyA9IHRoaXMubm9ybWFsaXplZFJvdXRlci5yZWR1Y2UoXG4gICAgICAoYWNjLCB7IHBhdGhPclBhdGhOYW1lLCBvdXRib3VuZFBhdGggfSkgPT4gKHtcbiAgICAgICAgLi4uYWNjLFxuICAgICAgICBbcGF0aE9yUGF0aE5hbWVdOiBvdXRib3VuZFBhdGgsXG4gICAgICB9KSxcbiAgICAgIHt9LFxuICAgICk7XG4gIH1cblxuICBnZXRNYXRjaGVkUm91dGVzKHBhdGhUb01hdGNoOiBzdHJpbmcpOiAoUm91dGUgJiBvYmplY3QpW10ge1xuICAgIGlmIChwYXRoVG9NYXRjaCBpbiB0aGlzLmNhY2hlZE1hdGNoZXMpIHtcbiAgICAgIHJldHVybiB0aGlzLmNhY2hlZE1hdGNoZXNbcGF0aFRvTWF0Y2hdO1xuICAgIH1cblxuICAgIGNvbnN0IGFsbE1hdGNoZXMgPSB0aGlzLm5vcm1hbGl6ZWRSb3V0ZXIucmVkdWNlKFxuICAgICAgKFxuICAgICAgICBhY2M6IFJlY29yZDxzdHJpbmcsIGFueT5bXSxcbiAgICAgICAgeyBtYXRjaGVyLCByb3V0ZSB9LFxuICAgICAgKTogUmVjb3JkPHN0cmluZywgYW55PltdID0+IHtcbiAgICAgICAgY29uc3QgbWF0Y2ggPSBtYXRjaGVyKHBhdGhUb01hdGNoKTtcbiAgICAgICAgY29uc3QgcGFyYW1zID0gbWF0Y2ggJiYgbWF0Y2gucGFyYW1zID8gbWF0Y2gucGFyYW1zIDoge307XG4gICAgICAgIHJldHVybiBtYXRjaCA/IFsuLi5hY2MsIHsgLi4ucm91dGUsIC4uLnBhcmFtcyB9XSA6IGFjYztcbiAgICAgIH0sXG4gICAgICBbXSxcbiAgICApO1xuXG4gICAgY29uc3QgbWF0Y2hlcyA9IGFsbE1hdGNoZXMubGVuZ3RoID09PSAwID8gW3RoaXMubm90Rm91bmRdIDogYWxsTWF0Y2hlcztcbiAgICB0aGlzLmNhY2hlZE1hdGNoZXNbcGF0aFRvTWF0Y2hdID0gbWF0Y2hlcztcblxuICAgIHJldHVybiBtYXRjaGVzO1xuICB9XG5cbiAgYnVpbGRQYXRoKHBhdGhPclBhdGhOYW1lOiBzdHJpbmcsIHBhdGhEYXRhPzogb2JqZWN0KTogc3RyaW5nIHtcbiAgICBpZiAoXG4gICAgICAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHRoaXMucGF0aEJ1aWxkZXJzLCBwYXRoT3JQYXRoTmFtZSlcbiAgICApXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gcm91dGU6ICR7cGF0aE9yUGF0aE5hbWV9YCk7XG4gICAgcmV0dXJuIHRoaXMucGF0aEJ1aWxkZXJzW3BhdGhPclBhdGhOYW1lXShwYXRoRGF0YSk7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6IkFBQ0EsU0FBU0EsS0FBSyxJQUFJQyxTQUFTLEVBQUVDLE9BQU8sUUFBUSxnQkFBZ0I7QUFnQjVELGVBQWUsTUFBTUMsZUFBZSxDQUVsQztFQWVBQyxXQUFXQSxD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
export declare function useLocation(): Location | import("history").Location;
export declare function useLocationSearch<K extends string | undefined = undefined>(key?: K): (K extends string ? string : URLSearchParams) | null;
export declare function useController(): import("./Controller.js").default<any>;
export declare function useRoutes<Route>(): Route[];
//# sourceMappingURL=hooks.d.ts.map

@@ -6,2 +6,9 @@ import { useContext, useMemo } from 'react';

}
export function useLocationSearch(key) {
var _location$search;
const location = useLocation();
const search = new URLSearchParams(location == null ? void 0 : (_location$search = location.search) == null ? void 0 : _location$search.substring == null ? void 0 : _location$search.substring(1));
if (key) return search.get(key);
return search;
}
export function useController() {

@@ -15,2 +22,2 @@ return useContext(ControllerContext);

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VDb250ZXh0IiwidXNlTWVtbyIsIkNvbnRyb2xsZXJDb250ZXh0IiwiTG9jYXRpb25Db250ZXh0IiwidXNlTG9jYXRpb24iLCJ1c2VDb250cm9sbGVyIiwidXNlUm91dGVzIiwiY29udHJvbGxlciIsImxvY2F0aW9uIiwiZ2V0TWF0Y2hlZFJvdXRlcyIsInBhdGhuYW1lIl0sInNvdXJjZXMiOlsiLi4vc3JjL2hvb2tzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VDb250ZXh0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBDb250cm9sbGVyQ29udGV4dCwgTG9jYXRpb25Db250ZXh0IH0gZnJvbSAnLi9jb250ZXh0LmpzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHVzZUxvY2F0aW9uKCkge1xuICByZXR1cm4gdXNlQ29udGV4dChMb2NhdGlvbkNvbnRleHQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXNlQ29udHJvbGxlcigpIHtcbiAgcmV0dXJuIHVzZUNvbnRleHQoQ29udHJvbGxlckNvbnRleHQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXNlUm91dGVzPFJvdXRlPigpOiBSb3V0ZVtdIHtcbiAgY29uc3QgY29udHJvbGxlciA9IHVzZUNvbnRyb2xsZXIoKTtcbiAgY29uc3QgbG9jYXRpb24gPSB1c2VMb2NhdGlvbigpO1xuXG4gIHJldHVybiB1c2VNZW1vKFxuICAgICgpID0+IGNvbnRyb2xsZXIuZ2V0TWF0Y2hlZFJvdXRlcyhsb2NhdGlvbi5wYXRobmFtZSkgYXMgYW55W10sXG4gICAgW2xvY2F0aW9uLCBjb250cm9sbGVyXSxcbiAgKTtcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsVUFBVSxFQUFFQyxPQUFPLFFBQVEsT0FBTztBQUUzQyxTQUFTQyxpQkFBaUIsRUFBRUMsZUFBZSxRQUFRLGNBQWM7QUFFakUsT0FBTyxTQUFTQyxXQUFXQSxDQUFBLEVBQUc7RUFDNUIsT0FBT0osVUFBVSxDQUFDRyxlQUFlLENBQUM7QUFDcEM7QUFFQSxPQUFPLFNBQVNFLGFBQWFBLENBQUEsRUFBRztFQUM5QixPQUFPTCxVQUFVLENBQUNFLGlCQUFpQixDQUFDO0FBQ3RDO0FBRUEsT0FBTyxTQUFTSSxTQUFTQSxDQUFBLEVBQW1CO0VBQzFDLE1BQU1DLFVBQVUsR0FBR0YsYUFBYSxDQUFDLENBQUM7RUFDbEMsTUFBTUcsUUFBUSxHQUFHSixXQUFXLENBQUMsQ0FBQztFQUU5QixPQUFPSCxPQUFPLENBQ1osTUFBTU0sVUFBVSxDQUFDRSxnQkFBZ0IsQ0FBQ0QsUUFBUSxDQUFDRSxRQUFRLENBQVUsRUFDN0QsQ0FBQ0YsUUFBUSxFQUFFRCxVQUFVLENBQ3ZCLENBQUM7QUFDSCJ9
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VDb250ZXh0IiwidXNlTWVtbyIsIkNvbnRyb2xsZXJDb250ZXh0IiwiTG9jYXRpb25Db250ZXh0IiwidXNlTG9jYXRpb24iLCJ1c2VMb2NhdGlvblNlYXJjaCIsImtleSIsIl9sb2NhdGlvbiRzZWFyY2giLCJsb2NhdGlvbiIsInNlYXJjaCIsIlVSTFNlYXJjaFBhcmFtcyIsInN1YnN0cmluZyIsImdldCIsInVzZUNvbnRyb2xsZXIiLCJ1c2VSb3V0ZXMiLCJjb250cm9sbGVyIiwiZ2V0TWF0Y2hlZFJvdXRlcyIsInBhdGhuYW1lIl0sInNvdXJjZXMiOlsiLi4vc3JjL2hvb2tzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VDb250ZXh0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBDb250cm9sbGVyQ29udGV4dCwgTG9jYXRpb25Db250ZXh0IH0gZnJvbSAnLi9jb250ZXh0LmpzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHVzZUxvY2F0aW9uKCkge1xuICByZXR1cm4gdXNlQ29udGV4dChMb2NhdGlvbkNvbnRleHQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXNlTG9jYXRpb25TZWFyY2g8SyBleHRlbmRzIHN0cmluZyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZD4oXG4gIGtleT86IEssXG4pOiAoSyBleHRlbmRzIHN0cmluZyA/IHN0cmluZyA6IFVSTFNlYXJjaFBhcmFtcykgfCBudWxsIHtcbiAgY29uc3QgbG9jYXRpb24gPSB1c2VMb2NhdGlvbigpO1xuICBjb25zdCBzZWFyY2ggPSBuZXcgVVJMU2VhcmNoUGFyYW1zKGxvY2F0aW9uPy5zZWFyY2g/LnN1YnN0cmluZz8uKDEpKTtcbiAgaWYgKGtleSkgcmV0dXJuIHNlYXJjaC5nZXQoa2V5KSBhcyBhbnk7XG4gIHJldHVybiBzZWFyY2ggYXMgYW55O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXNlQ29udHJvbGxlcigpIHtcbiAgcmV0dXJuIHVzZUNvbnRleHQoQ29udHJvbGxlckNvbnRleHQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXNlUm91dGVzPFJvdXRlPigpOiBSb3V0ZVtdIHtcbiAgY29uc3QgY29udHJvbGxlciA9IHVzZUNvbnRyb2xsZXIoKTtcbiAgY29uc3QgbG9jYXRpb24gPSB1c2VMb2NhdGlvbigpO1xuXG4gIHJldHVybiB1c2VNZW1vKFxuICAgICgpID0+IGNvbnRyb2xsZXIuZ2V0TWF0Y2hlZFJvdXRlcyhsb2NhdGlvbi5wYXRobmFtZSkgYXMgYW55W10sXG4gICAgW2xvY2F0aW9uLCBjb250cm9sbGVyXSxcbiAgKTtcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsVUFBVSxFQUFFQyxPQUFPLFFBQVEsT0FBTztBQUUzQyxTQUFTQyxpQkFBaUIsRUFBRUMsZUFBZSxRQUFRLGNBQWM7QUFFakUsT0FBTyxTQUFTQyxXQUFXQSxDQUFBLEVBQUc7RUFDNUIsT0FBT0osVUFBVSxDQUFDRyxlQUFlLENBQUM7QUFDcEM7QUFFQSxPQUFPLFNBQVNFLGlCQUFpQkEsQ0FDL0JDLEdBQU8sRUFDK0M7RUFBQSxJQUFBQyxnQkFBQTtFQUN0RCxNQUFNQyxRQUFRLEdBQUdKLFdBQVcsQ0FBQyxDQUFDO0VBQzlCLE1BQU1LLE1BQU0sR0FBRyxJQUFJQyxlQUFlLENBQUNGLFFBQVEscUJBQUFELGdCQUFBLEdBQVJDLFFBQVEsQ0FBRUMsTUFBTSxxQkFBaEJGLGdCQUFBLENBQWtCSSxTQUFTLG9CQUEzQkosZ0JBQUEsQ0FBa0JJLFNBQVMsQ0FBRyxDQUFDLENBQUMsQ0FBQztFQUNwRSxJQUFJTCxHQUFHLEVBQUUsT0FBT0csTUFBTSxDQUFDRyxHQUFHLENBQUNOLEdBQUcsQ0FBQztFQUMvQixPQUFPRyxNQUFNO0FBQ2Y7QUFFQSxPQUFPLFNBQVNJLGFBQWFBLENBQUEsRUFBRztFQUM5QixPQUFPYixVQUFVLENBQUNFLGlCQUFpQixDQUFDO0FBQ3RDO0FBRUEsT0FBTyxTQUFTWSxTQUFTQSxDQUFBLEVBQW1CO0VBQzFDLE1BQU1DLFVBQVUsR0FBR0YsYUFBYSxDQUFDLENBQUM7RUFDbEMsTUFBTUwsUUFBUSxHQUFHSixXQUFXLENBQUMsQ0FBQztFQUU5QixPQUFPSCxPQUFPLENBQ1osTUFBTWMsVUFBVSxDQUFDQyxnQkFBZ0IsQ0FBQ1IsUUFBUSxDQUFDUyxRQUFRLENBQVUsRUFDN0QsQ0FBQ1QsUUFBUSxFQUFFTyxVQUFVLENBQ3ZCLENBQUM7QUFDSCJ9
{
"name": "@pojo-router/core",
"version": "0.5.80",
"version": "0.6.0",
"description": "A react hooks library to associate metadata to a path",

@@ -5,0 +5,0 @@ "homepage": "https://github.com/ntucker/anansi/tree/master/packages/pojo-router#readme",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet