Socket
Socket
Sign inDemoInstall

history

Package Overview
Dependencies
5
Maintainers
1
Versions
101
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 4.6.1 to 4.6.2

7

CHANGES.md

@@ -0,1 +1,8 @@

## HEAD
- Rely on the user/browser to encode pathname portion of the URL.
- Add more complete basename matching support (case insensitive matching, basename must be a complete match). (see [#459])
[#459]: https://github.com/ReactTraining/history/pull/459
## [v4.6.1]

@@ -2,0 +9,0 @@ > Mar 15, 2017

9

createBrowserHistory.js

@@ -77,8 +77,7 @@ 'use strict';

if (basename) path = (0, _PathUtils.stripPrefix)(path, basename);
(0, _warning2.default)(!basename || (0, _PathUtils.hasBasename)(path, basename), 'You are attempting to use a basename on a page whose URL path does not begin ' + 'with the basename. Expected path "' + path + '" to begin with "' + basename + '".');
return _extends({}, (0, _PathUtils.parsePath)(path), {
state: state,
key: key
});
if (basename) path = (0, _PathUtils.stripBasename)(path, basename);
return (0, _LocationUtils.createLocation)(path, state, key);
};

@@ -85,0 +84,0 @@

@@ -89,5 +89,7 @@ 'use strict';

if (basename) path = (0, _PathUtils.stripPrefix)(path, basename);
(0, _warning2.default)(!basename || (0, _PathUtils.hasBasename)(path, basename), 'You are attempting to use a basename on a page whose URL path does not begin ' + 'with the basename. Expected path "' + path + '" to begin with "' + basename + '".');
return (0, _PathUtils.parsePath)(path);
if (basename) path = (0, _PathUtils.stripBasename)(path, basename);
return (0, _LocationUtils.createLocation)(path);
};

@@ -94,0 +96,0 @@

@@ -8,3 +8,3 @@ var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };

import { createLocation } from './LocationUtils';
import { addLeadingSlash, stripTrailingSlash, stripPrefix, parsePath, createPath } from './PathUtils';
import { addLeadingSlash, stripTrailingSlash, hasBasename, stripBasename, createPath } from './PathUtils';
import createTransitionManager from './createTransitionManager';

@@ -61,8 +61,7 @@ import { canUseDOM, addEventListener, removeEventListener, getConfirmation, supportsHistory, supportsPopStateOnHashChange, isExtraneousPopstateEvent } from './DOMUtils';

if (basename) path = stripPrefix(path, basename);
warning(!basename || hasBasename(path, basename), 'You are attempting to use a basename on a page whose URL path does not begin ' + 'with the basename. Expected path "' + path + '" to begin with "' + basename + '".');
return _extends({}, parsePath(path), {
state: state,
key: key
});
if (basename) path = stripBasename(path, basename);
return createLocation(path, state, key);
};

@@ -69,0 +68,0 @@

@@ -6,3 +6,3 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };

import { createLocation, locationsAreEqual } from './LocationUtils';
import { addLeadingSlash, stripLeadingSlash, stripTrailingSlash, stripPrefix, parsePath, createPath } from './PathUtils';
import { addLeadingSlash, stripLeadingSlash, stripTrailingSlash, hasBasename, stripBasename, createPath } from './PathUtils';
import createTransitionManager from './createTransitionManager';

@@ -73,5 +73,7 @@ import { canUseDOM, addEventListener, removeEventListener, getConfirmation, supportsGoWithoutReloadUsingHash } from './DOMUtils';

if (basename) path = stripPrefix(path, basename);
warning(!basename || hasBasename(path, basename), 'You are attempting to use a basename on a page whose URL path does not begin ' + 'with the basename. Expected path "' + path + '" to begin with "' + basename + '".');
return parsePath(path);
if (basename) path = stripBasename(path, basename);
return createLocation(path);
};

@@ -78,0 +80,0 @@

@@ -34,4 +34,14 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };

location.key = key;
try {
location.pathname = decodeURI(location.pathname);
} catch (e) {
if (e instanceof URIError) {
throw new URIError('Pathname "' + location.pathname + '" could not be decoded. ' + 'This is likely caused by an invalid percent-encoding.');
} else {
throw e;
}
}
if (key) location.key = key;
if (currentLocation) {

@@ -44,2 +54,7 @@ // Resolve incomplete/relative pathname relative to current location.

}
} else {
// When there is no prior location and pathname is empty, set it to /
if (!location.pathname) {
location.pathname = '/';
}
}

@@ -46,0 +61,0 @@

@@ -9,6 +9,10 @@ export var addLeadingSlash = function addLeadingSlash(path) {

export var stripPrefix = function stripPrefix(path, prefix) {
return path.indexOf(prefix) === 0 ? path.substr(prefix.length) : path;
export var hasBasename = function hasBasename(path, prefix) {
return new RegExp('^' + prefix + '(\\/|\\?|#|$)', 'i').test(path);
};
export var stripBasename = function stripBasename(path, prefix) {
return hasBasename(path, prefix) ? path.substr(prefix.length) : path;
};
export var stripTrailingSlash = function stripTrailingSlash(path) {

@@ -35,4 +39,2 @@ return path.charAt(path.length - 1) === '/' ? path.slice(0, -1) : path;

pathname = decodeURI(pathname);
return {

@@ -51,3 +53,3 @@ pathname: pathname,

var path = encodeURI(pathname || '/');
var path = pathname || '/';

@@ -54,0 +56,0 @@ if (search && search !== '?') path += search.charAt(0) === '?' ? search : '?' + search;

@@ -47,4 +47,14 @@ 'use strict';

location.key = key;
try {
location.pathname = decodeURI(location.pathname);
} catch (e) {
if (e instanceof URIError) {
throw new URIError('Pathname "' + location.pathname + '" could not be decoded. ' + 'This is likely caused by an invalid percent-encoding.');
} else {
throw e;
}
}
if (key) location.key = key;
if (currentLocation) {

@@ -57,2 +67,7 @@ // Resolve incomplete/relative pathname relative to current location.

}
} else {
// When there is no prior location and pathname is empty, set it to /
if (!location.pathname) {
location.pathname = '/';
}
}

@@ -59,0 +74,0 @@

{
"name": "history",
"version": "4.6.1",
"version": "4.6.2",
"description": "Manage session history with JavaScript",

@@ -25,3 +25,3 @@ "repository": "ReactTraining/history",

"prepublish": "node ./tools/build.js",
"clean": "git clean -e '!node_modules' -fdX .",
"clean": "git clean -fdX .",
"release": "node ./tools/release.js",

@@ -28,0 +28,0 @@ "lint": "eslint modules",

@@ -12,6 +12,10 @@ 'use strict';

var stripPrefix = exports.stripPrefix = function stripPrefix(path, prefix) {
return path.indexOf(prefix) === 0 ? path.substr(prefix.length) : path;
var hasBasename = exports.hasBasename = function hasBasename(path, prefix) {
return new RegExp('^' + prefix + '(\\/|\\?|#|$)', 'i').test(path);
};
var stripBasename = exports.stripBasename = function stripBasename(path, prefix) {
return hasBasename(path, prefix) ? path.substr(prefix.length) : path;
};
var stripTrailingSlash = exports.stripTrailingSlash = function stripTrailingSlash(path) {

@@ -38,4 +42,2 @@ return path.charAt(path.length - 1) === '/' ? path.slice(0, -1) : path;

pathname = decodeURI(pathname);
return {

@@ -54,3 +56,3 @@ pathname: pathname,

var path = encodeURI(pathname || '/');
var path = pathname || '/';

@@ -57,0 +59,0 @@ if (search && search !== '?') path += search.charAt(0) === '?' ? search : '?' + search;

@@ -160,4 +160,14 @@ (function webpackUniversalModuleDefinition(root, factory) {

location.key = key;
try {
location.pathname = decodeURI(location.pathname);
} catch (e) {
if (e instanceof URIError) {
throw new URIError('Pathname "' + location.pathname + '" could not be decoded. ' + 'This is likely caused by an invalid percent-encoding.');
} else {
throw e;
}
}
if (key) location.key = key;
if (currentLocation) {

@@ -170,2 +180,7 @@ // Resolve incomplete/relative pathname relative to current location.

}
} else {
// When there is no prior location and pathname is empty, set it to /
if (!location.pathname) {
location.pathname = '/';
}
}

@@ -319,6 +334,10 @@

var stripPrefix = exports.stripPrefix = function stripPrefix(path, prefix) {
return path.indexOf(prefix) === 0 ? path.substr(prefix.length) : path;
var hasBasename = exports.hasBasename = function hasBasename(path, prefix) {
return new RegExp('^' + prefix + '(\\/|\\?|#|$)', 'i').test(path);
};
var stripBasename = exports.stripBasename = function stripBasename(path, prefix) {
return hasBasename(path, prefix) ? path.substr(prefix.length) : path;
};
var stripTrailingSlash = exports.stripTrailingSlash = function stripTrailingSlash(path) {

@@ -345,4 +364,2 @@ return path.charAt(path.length - 1) === '/' ? path.slice(0, -1) : path;

pathname = decodeURI(pathname);
return {

@@ -361,3 +378,3 @@ pathname: pathname,

var path = encodeURI(pathname || '/');
var path = pathname || '/';

@@ -451,8 +468,7 @@ if (search && search !== '?') path += search.charAt(0) === '?' ? search : '?' + search;

if (basename) path = (0, _PathUtils.stripPrefix)(path, basename);
false ? (0, _warning2.default)(!basename || (0, _PathUtils.hasBasename)(path, basename), 'You are attempting to use a basename on a page whose URL path does not begin ' + 'with the basename. Expected path "' + path + '" to begin with "' + basename + '".') : void 0;
return _extends({}, (0, _PathUtils.parsePath)(path), {
state: state,
key: key
});
if (basename) path = (0, _PathUtils.stripBasename)(path, basename);
return (0, _LocationUtils.createLocation)(path, state, key);
};

@@ -1050,5 +1066,7 @@

if (basename) path = (0, _PathUtils.stripPrefix)(path, basename);
false ? (0, _warning2.default)(!basename || (0, _PathUtils.hasBasename)(path, basename), 'You are attempting to use a basename on a page whose URL path does not begin ' + 'with the basename. Expected path "' + path + '" to begin with "' + basename + '".') : void 0;
return (0, _PathUtils.parsePath)(path);
if (basename) path = (0, _PathUtils.stripBasename)(path, basename);
return (0, _LocationUtils.createLocation)(path);
};

@@ -1055,0 +1073,0 @@

@@ -1,1 +0,1 @@

!function(t,n){"object"==typeof exports&&"object"==typeof module?module.exports=n():"function"==typeof define&&define.amd?define([],n):"object"==typeof exports?exports.History=n():t.History=n()}(this,function(){return function(t){function n(o){if(e[o])return e[o].exports;var r=e[o]={exports:{},id:o,loaded:!1};return t[o].call(r.exports,r,r.exports,n),r.loaded=!0,r.exports}var e={};return n.m=t,n.c=e,n.p="",n(0)}([function(t,n,e){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}n.__esModule=!0,n.createPath=n.parsePath=n.locationsAreEqual=n.createLocation=n.createMemoryHistory=n.createHashHistory=n.createBrowserHistory=void 0;var r=e(2);Object.defineProperty(n,"createLocation",{enumerable:!0,get:function(){return r.createLocation}}),Object.defineProperty(n,"locationsAreEqual",{enumerable:!0,get:function(){return r.locationsAreEqual}});var i=e(1);Object.defineProperty(n,"parsePath",{enumerable:!0,get:function(){return i.parsePath}}),Object.defineProperty(n,"createPath",{enumerable:!0,get:function(){return i.createPath}});var a=e(7),c=o(a),u=e(8),s=o(u),f=e(9),l=o(f);n.createBrowserHistory=c.default,n.createHashHistory=s.default,n.createMemoryHistory=l.default},function(t,n){"use strict";n.__esModule=!0;n.addLeadingSlash=function(t){return"/"===t.charAt(0)?t:"/"+t},n.stripLeadingSlash=function(t){return"/"===t.charAt(0)?t.substr(1):t},n.stripPrefix=function(t,n){return 0===t.indexOf(n)?t.substr(n.length):t},n.stripTrailingSlash=function(t){return"/"===t.charAt(t.length-1)?t.slice(0,-1):t},n.parsePath=function(t){var n=t||"/",e="",o="",r=n.indexOf("#");r!==-1&&(o=n.substr(r),n=n.substr(0,r));var i=n.indexOf("?");return i!==-1&&(e=n.substr(i),n=n.substr(0,i)),n=decodeURI(n),{pathname:n,search:"?"===e?"":e,hash:"#"===o?"":o}},n.createPath=function(t){var n=t.pathname,e=t.search,o=t.hash,r=encodeURI(n||"/");return e&&"?"!==e&&(r+="?"===e.charAt(0)?e:"?"+e),o&&"#"!==o&&(r+="#"===o.charAt(0)?o:"#"+o),r}},function(t,n,e){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}n.__esModule=!0,n.locationsAreEqual=n.createLocation=void 0;var r=Object.assign||function(t){for(var n=1;n<arguments.length;n++){var e=arguments[n];for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o])}return t},i=e(10),a=o(i),c=e(11),u=o(c),s=e(1);n.createLocation=function(t,n,e,o){var i=void 0;return"string"==typeof t?(i=(0,s.parsePath)(t),i.state=n):(i=r({},t),void 0===i.pathname&&(i.pathname=""),i.search?"?"!==i.search.charAt(0)&&(i.search="?"+i.search):i.search="",i.hash?"#"!==i.hash.charAt(0)&&(i.hash="#"+i.hash):i.hash="",void 0!==n&&void 0===i.state&&(i.state=n)),i.key=e,o&&(i.pathname?"/"!==i.pathname.charAt(0)&&(i.pathname=(0,a.default)(i.pathname,o.pathname)):i.pathname=o.pathname),i},n.locationsAreEqual=function(t,n){return t.pathname===n.pathname&&t.search===n.search&&t.hash===n.hash&&t.key===n.key&&(0,u.default)(t.state,n.state)}},function(t,n,e){"use strict";var o=function(){};t.exports=o},function(t,n,e){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}n.__esModule=!0;var r=e(3),i=(o(r),function(){var t=null,n=function(n){return t=n,function(){t===n&&(t=null)}},e=function(n,e,o,r){if(null!=t){var i="function"==typeof t?t(n,e):t;"string"==typeof i?"function"==typeof o?o(i,r):r(!0):r(i!==!1)}else r(!0)},o=[],r=function(t){var n=!0,e=function(){n&&t.apply(void 0,arguments)};return o.push(e),function(){n=!1,o=o.filter(function(t){return t!==e})}},i=function(){for(var t=arguments.length,n=Array(t),e=0;e<t;e++)n[e]=arguments[e];o.forEach(function(t){return t.apply(void 0,n)})};return{setPrompt:n,confirmTransitionTo:e,appendListener:r,notifyListeners:i}});n.default=i},function(t,n){"use strict";n.__esModule=!0;n.canUseDOM=!("undefined"==typeof window||!window.document||!window.document.createElement),n.addEventListener=function(t,n,e){return t.addEventListener?t.addEventListener(n,e,!1):t.attachEvent("on"+n,e)},n.removeEventListener=function(t,n,e){return t.removeEventListener?t.removeEventListener(n,e,!1):t.detachEvent("on"+n,e)},n.getConfirmation=function(t,n){return n(window.confirm(t))},n.supportsHistory=function(){var t=window.navigator.userAgent;return(t.indexOf("Android 2.")===-1&&t.indexOf("Android 4.0")===-1||t.indexOf("Mobile Safari")===-1||t.indexOf("Chrome")!==-1||t.indexOf("Windows Phone")!==-1)&&(window.history&&"pushState"in window.history)},n.supportsPopStateOnHashChange=function(){return window.navigator.userAgent.indexOf("Trident")===-1},n.supportsGoWithoutReloadUsingHash=function(){return window.navigator.userAgent.indexOf("Firefox")===-1},n.isExtraneousPopstateEvent=function(t){return void 0===t.state&&navigator.userAgent.indexOf("CriOS")===-1}},function(t,n,e){"use strict";var o=function(t,n,e,o,r,i,a,c){if(!t){var u;if(void 0===n)u=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var s=[e,o,r,i,a,c],f=0;u=new Error(n.replace(/%s/g,function(){return s[f++]})),u.name="Invariant Violation"}throw u.framesToPop=1,u}};t.exports=o},function(t,n,e){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}n.__esModule=!0;var r=("function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Object.assign||function(t){for(var n=1;n<arguments.length;n++){var e=arguments[n];for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o])}return t}),i=e(3),a=(o(i),e(6)),c=o(a),u=e(2),s=e(1),f=e(4),l=o(f),d=e(5),h="popstate",v="hashchange",p=function(){try{return window.history.state||{}}catch(t){return{}}},y=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};d.canUseDOM?void 0:(0,c.default)(!1);var n=window.history,e=(0,d.supportsHistory)(),o=!(0,d.supportsPopStateOnHashChange)(),i=t.forceRefresh,a=void 0!==i&&i,f=t.getUserConfirmation,y=void 0===f?d.getConfirmation:f,g=t.keyLength,m=void 0===g?6:g,w=t.basename?(0,s.stripTrailingSlash)((0,s.addLeadingSlash)(t.basename)):"",P=function(t){var n=t||{},e=n.key,o=n.state,i=window.location,a=i.pathname,c=i.search,u=i.hash,f=a+c+u;return w&&(f=(0,s.stripPrefix)(f,w)),r({},(0,s.parsePath)(f),{state:o,key:e})},b=function(){return Math.random().toString(36).substr(2,m)},O=(0,l.default)(),x=function(t){r(G,t),G.length=n.length,O.notifyListeners(G.location,G.action)},L=function(t){(0,d.isExtraneousPopstateEvent)(t)||A(P(t.state))},S=function(){A(P(p()))},E=!1,A=function(t){if(E)E=!1,x();else{var n="POP";O.confirmTransitionTo(t,n,y,function(e){e?x({action:n,location:t}):_(t)})}},_=function(t){var n=G.location,e=M.indexOf(n.key);e===-1&&(e=0);var o=M.indexOf(t.key);o===-1&&(o=0);var r=e-o;r&&(E=!0,C(r))},k=P(p()),M=[k.key],T=function(t){return w+(0,s.createPath)(t)},H=function(t,o){var r="PUSH",i=(0,u.createLocation)(t,o,b(),G.location);O.confirmTransitionTo(i,r,y,function(t){if(t){var o=T(i),c=i.key,u=i.state;if(e)if(n.pushState({key:c,state:u},null,o),a)window.location.href=o;else{var s=M.indexOf(G.location.key),f=M.slice(0,s===-1?0:s+1);f.push(i.key),M=f,x({action:r,location:i})}else window.location.href=o}})},j=function(t,o){var r="REPLACE",i=(0,u.createLocation)(t,o,b(),G.location);O.confirmTransitionTo(i,r,y,function(t){if(t){var o=T(i),c=i.key,u=i.state;if(e)if(n.replaceState({key:c,state:u},null,o),a)window.location.replace(o);else{var s=M.indexOf(G.location.key);s!==-1&&(M[s]=i.key),x({action:r,location:i})}else window.location.replace(o)}})},C=function(t){n.go(t)},U=function(){return C(-1)},R=function(){return C(1)},I=0,q=function(t){I+=t,1===I?((0,d.addEventListener)(window,h,L),o&&(0,d.addEventListener)(window,v,S)):0===I&&((0,d.removeEventListener)(window,h,L),o&&(0,d.removeEventListener)(window,v,S))},B=!1,F=function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=O.setPrompt(t);return B||(q(1),B=!0),function(){return B&&(B=!1,q(-1)),n()}},D=function(t){var n=O.appendListener(t);return q(1),function(){q(-1),n()}},G={length:n.length,action:"POP",location:k,createHref:T,push:H,replace:j,go:C,goBack:U,goForward:R,block:F,listen:D};return G};n.default=y},function(t,n,e){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}n.__esModule=!0;var r=Object.assign||function(t){for(var n=1;n<arguments.length;n++){var e=arguments[n];for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o])}return t},i=e(3),a=(o(i),e(6)),c=o(a),u=e(2),s=e(1),f=e(4),l=o(f),d=e(5),h="hashchange",v={hashbang:{encodePath:function(t){return"!"===t.charAt(0)?t:"!/"+(0,s.stripLeadingSlash)(t)},decodePath:function(t){return"!"===t.charAt(0)?t.substr(1):t}},noslash:{encodePath:s.stripLeadingSlash,decodePath:s.addLeadingSlash},slash:{encodePath:s.addLeadingSlash,decodePath:s.addLeadingSlash}},p=function(){var t=window.location.href,n=t.indexOf("#");return n===-1?"":t.substring(n+1)},y=function(t){return window.location.hash=t},g=function(t){var n=window.location.href.indexOf("#");window.location.replace(window.location.href.slice(0,n>=0?n:0)+"#"+t)},m=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};d.canUseDOM?void 0:(0,c.default)(!1);var n=window.history,e=((0,d.supportsGoWithoutReloadUsingHash)(),t.getUserConfirmation),o=void 0===e?d.getConfirmation:e,i=t.hashType,a=void 0===i?"slash":i,f=t.basename?(0,s.stripTrailingSlash)((0,s.addLeadingSlash)(t.basename)):"",m=v[a],w=m.encodePath,P=m.decodePath,b=function(){var t=P(p());return f&&(t=(0,s.stripPrefix)(t,f)),(0,s.parsePath)(t)},O=(0,l.default)(),x=function(t){r(V,t),V.length=n.length,O.notifyListeners(V.location,V.action)},L=!1,S=null,E=function(){var t=p(),n=w(t);if(t!==n)g(n);else{var e=b(),o=V.location;if(!L&&(0,u.locationsAreEqual)(o,e))return;if(S===(0,s.createPath)(e))return;S=null,A(e)}},A=function(t){if(L)L=!1,x();else{var n="POP";O.confirmTransitionTo(t,n,o,function(e){e?x({action:n,location:t}):_(t)})}},_=function(t){var n=V.location,e=H.lastIndexOf((0,s.createPath)(n));e===-1&&(e=0);var o=H.lastIndexOf((0,s.createPath)(t));o===-1&&(o=0);var r=e-o;r&&(L=!0,R(r))},k=p(),M=w(k);k!==M&&g(M);var T=b(),H=[(0,s.createPath)(T)],j=function(t){return"#"+w(f+(0,s.createPath)(t))},C=function(t,n){var e="PUSH",r=(0,u.createLocation)(t,void 0,void 0,V.location);O.confirmTransitionTo(r,e,o,function(t){if(t){var n=(0,s.createPath)(r),o=w(f+n),i=p()!==o;if(i){S=n,y(o);var a=H.lastIndexOf((0,s.createPath)(V.location)),c=H.slice(0,a===-1?0:a+1);c.push(n),H=c,x({action:e,location:r})}else x()}})},U=function(t,n){var e="REPLACE",r=(0,u.createLocation)(t,void 0,void 0,V.location);O.confirmTransitionTo(r,e,o,function(t){if(t){var n=(0,s.createPath)(r),o=w(f+n),i=p()!==o;i&&(S=n,g(o));var a=H.indexOf((0,s.createPath)(V.location));a!==-1&&(H[a]=n),x({action:e,location:r})}})},R=function(t){n.go(t)},I=function(){return R(-1)},q=function(){return R(1)},B=0,F=function(t){B+=t,1===B?(0,d.addEventListener)(window,h,E):0===B&&(0,d.removeEventListener)(window,h,E)},D=!1,G=function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=O.setPrompt(t);return D||(F(1),D=!0),function(){return D&&(D=!1,F(-1)),n()}},W=function(t){var n=O.appendListener(t);return F(1),function(){F(-1),n()}},V={length:n.length,action:"POP",location:T,createHref:j,push:C,replace:U,go:R,goBack:I,goForward:q,block:G,listen:W};return V};n.default=m},function(t,n,e){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}n.__esModule=!0;var r=("function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Object.assign||function(t){for(var n=1;n<arguments.length;n++){var e=arguments[n];for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o])}return t}),i=e(3),a=(o(i),e(1)),c=e(2),u=e(4),s=o(u),f=function(t,n,e){return Math.min(Math.max(t,n),e)},l=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.getUserConfirmation,e=t.initialEntries,o=void 0===e?["/"]:e,i=t.initialIndex,u=void 0===i?0:i,l=t.keyLength,d=void 0===l?6:l,h=(0,s.default)(),v=function(t){r(A,t),A.length=A.entries.length,h.notifyListeners(A.location,A.action)},p=function(){return Math.random().toString(36).substr(2,d)},y=f(u,0,o.length-1),g=o.map(function(t){return"string"==typeof t?(0,c.createLocation)(t,void 0,p()):(0,c.createLocation)(t,void 0,t.key||p())}),m=a.createPath,w=function(t,e){var o="PUSH",r=(0,c.createLocation)(t,e,p(),A.location);h.confirmTransitionTo(r,o,n,function(t){if(t){var n=A.index,e=n+1,i=A.entries.slice(0);i.length>e?i.splice(e,i.length-e,r):i.push(r),v({action:o,location:r,index:e,entries:i})}})},P=function(t,e){var o="REPLACE",r=(0,c.createLocation)(t,e,p(),A.location);h.confirmTransitionTo(r,o,n,function(t){t&&(A.entries[A.index]=r,v({action:o,location:r}))})},b=function(t){var e=f(A.index+t,0,A.entries.length-1),o="POP",r=A.entries[e];h.confirmTransitionTo(r,o,n,function(t){t?v({action:o,location:r,index:e}):v()})},O=function(){return b(-1)},x=function(){return b(1)},L=function(t){var n=A.index+t;return n>=0&&n<A.entries.length},S=function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return h.setPrompt(t)},E=function(t){return h.appendListener(t)},A={length:g.length,action:"POP",location:g[y],index:y,entries:g,createHref:m,push:w,replace:P,go:b,goBack:O,goForward:x,canGo:L,block:S,listen:E};return A};n.default=l},function(t,n){"use strict";var e=function(t){return"/"===t.charAt(0)},o=function(t,n){for(var e=n,o=e+1,r=t.length;o<r;e+=1,o+=1)t[e]=t[o];t.pop()},r=function(t){var n=arguments.length<=1||void 0===arguments[1]?"":arguments[1],r=t&&t.split("/")||[],i=n&&n.split("/")||[],a=t&&e(t),c=n&&e(n),u=a||c;if(t&&e(t)?i=r:r.length&&(i.pop(),i=i.concat(r)),!i.length)return"/";var s=void 0;if(i.length){var f=i[i.length-1];s="."===f||".."===f||""===f}else s=!1;for(var l=0,d=i.length;d>=0;d--){var h=i[d];"."===h?o(i,d):".."===h?(o(i,d),l++):l&&(o(i,d),l--)}if(!u)for(;l--;l)i.unshift("..");!u||""===i[0]||i[0]&&e(i[0])||i.unshift("");var v=i.join("/");return s&&"/"!==v.substr(-1)&&(v+="/"),v};t.exports=r},function(t,n){"use strict";n.__esModule=!0;var e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},o=function t(n,o){if(n===o)return!0;if(null==n||null==o)return!1;if(Array.isArray(n))return!(!Array.isArray(o)||n.length!==o.length)&&n.every(function(n,e){return t(n,o[e])});var r="undefined"==typeof n?"undefined":e(n),i="undefined"==typeof o?"undefined":e(o);if(r!==i)return!1;if("object"===r){var a=n.valueOf(),c=o.valueOf();if(a!==n||c!==o)return t(a,c);var u=Object.keys(n),s=Object.keys(o);return u.length===s.length&&u.every(function(e){return t(n[e],o[e])})}return!1};n.default=o}])});
!function(n,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.History=t():n.History=t()}(this,function(){return function(n){function t(o){if(e[o])return e[o].exports;var r=e[o]={exports:{},id:o,loaded:!1};return n[o].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var e={};return t.m=n,t.c=e,t.p="",t(0)}([function(n,t,e){"use strict";function o(n){return n&&n.__esModule?n:{default:n}}t.__esModule=!0,t.createPath=t.parsePath=t.locationsAreEqual=t.createLocation=t.createMemoryHistory=t.createHashHistory=t.createBrowserHistory=void 0;var r=e(2);Object.defineProperty(t,"createLocation",{enumerable:!0,get:function(){return r.createLocation}}),Object.defineProperty(t,"locationsAreEqual",{enumerable:!0,get:function(){return r.locationsAreEqual}});var i=e(1);Object.defineProperty(t,"parsePath",{enumerable:!0,get:function(){return i.parsePath}}),Object.defineProperty(t,"createPath",{enumerable:!0,get:function(){return i.createPath}});var a=e(7),c=o(a),u=e(8),s=o(u),f=e(9),l=o(f);t.createBrowserHistory=c.default,t.createHashHistory=s.default,t.createMemoryHistory=l.default},function(n,t){"use strict";t.__esModule=!0;var e=(t.addLeadingSlash=function(n){return"/"===n.charAt(0)?n:"/"+n},t.stripLeadingSlash=function(n){return"/"===n.charAt(0)?n.substr(1):n},t.hasBasename=function(n,t){return new RegExp("^"+t+"(\\/|\\?|#|$)","i").test(n)});t.stripBasename=function(n,t){return e(n,t)?n.substr(t.length):n},t.stripTrailingSlash=function(n){return"/"===n.charAt(n.length-1)?n.slice(0,-1):n},t.parsePath=function(n){var t=n||"/",e="",o="",r=t.indexOf("#");r!==-1&&(o=t.substr(r),t=t.substr(0,r));var i=t.indexOf("?");return i!==-1&&(e=t.substr(i),t=t.substr(0,i)),{pathname:t,search:"?"===e?"":e,hash:"#"===o?"":o}},t.createPath=function(n){var t=n.pathname,e=n.search,o=n.hash,r=t||"/";return e&&"?"!==e&&(r+="?"===e.charAt(0)?e:"?"+e),o&&"#"!==o&&(r+="#"===o.charAt(0)?o:"#"+o),r}},function(n,t,e){"use strict";function o(n){return n&&n.__esModule?n:{default:n}}t.__esModule=!0,t.locationsAreEqual=t.createLocation=void 0;var r=Object.assign||function(n){for(var t=1;t<arguments.length;t++){var e=arguments[t];for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o])}return n},i=e(10),a=o(i),c=e(11),u=o(c),s=e(1);t.createLocation=function(n,t,e,o){var i=void 0;"string"==typeof n?(i=(0,s.parsePath)(n),i.state=t):(i=r({},n),void 0===i.pathname&&(i.pathname=""),i.search?"?"!==i.search.charAt(0)&&(i.search="?"+i.search):i.search="",i.hash?"#"!==i.hash.charAt(0)&&(i.hash="#"+i.hash):i.hash="",void 0!==t&&void 0===i.state&&(i.state=t));try{i.pathname=decodeURI(i.pathname)}catch(n){throw n instanceof URIError?new URIError('Pathname "'+i.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):n}return e&&(i.key=e),o?i.pathname?"/"!==i.pathname.charAt(0)&&(i.pathname=(0,a.default)(i.pathname,o.pathname)):i.pathname=o.pathname:i.pathname||(i.pathname="/"),i},t.locationsAreEqual=function(n,t){return n.pathname===t.pathname&&n.search===t.search&&n.hash===t.hash&&n.key===t.key&&(0,u.default)(n.state,t.state)}},function(n,t,e){"use strict";var o=function(){};n.exports=o},function(n,t,e){"use strict";function o(n){return n&&n.__esModule?n:{default:n}}t.__esModule=!0;var r=e(3),i=(o(r),function(){var n=null,t=function(t){return n=t,function(){n===t&&(n=null)}},e=function(t,e,o,r){if(null!=n){var i="function"==typeof n?n(t,e):n;"string"==typeof i?"function"==typeof o?o(i,r):r(!0):r(i!==!1)}else r(!0)},o=[],r=function(n){var t=!0,e=function(){t&&n.apply(void 0,arguments)};return o.push(e),function(){t=!1,o=o.filter(function(n){return n!==e})}},i=function(){for(var n=arguments.length,t=Array(n),e=0;e<n;e++)t[e]=arguments[e];o.forEach(function(n){return n.apply(void 0,t)})};return{setPrompt:t,confirmTransitionTo:e,appendListener:r,notifyListeners:i}});t.default=i},function(n,t){"use strict";t.__esModule=!0;t.canUseDOM=!("undefined"==typeof window||!window.document||!window.document.createElement),t.addEventListener=function(n,t,e){return n.addEventListener?n.addEventListener(t,e,!1):n.attachEvent("on"+t,e)},t.removeEventListener=function(n,t,e){return n.removeEventListener?n.removeEventListener(t,e,!1):n.detachEvent("on"+t,e)},t.getConfirmation=function(n,t){return t(window.confirm(n))},t.supportsHistory=function(){var n=window.navigator.userAgent;return(n.indexOf("Android 2.")===-1&&n.indexOf("Android 4.0")===-1||n.indexOf("Mobile Safari")===-1||n.indexOf("Chrome")!==-1||n.indexOf("Windows Phone")!==-1)&&(window.history&&"pushState"in window.history)},t.supportsPopStateOnHashChange=function(){return window.navigator.userAgent.indexOf("Trident")===-1},t.supportsGoWithoutReloadUsingHash=function(){return window.navigator.userAgent.indexOf("Firefox")===-1},t.isExtraneousPopstateEvent=function(n){return void 0===n.state&&navigator.userAgent.indexOf("CriOS")===-1}},function(n,t,e){"use strict";var o=function(n,t,e,o,r,i,a,c){if(!n){var u;if(void 0===t)u=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var s=[e,o,r,i,a,c],f=0;u=new Error(t.replace(/%s/g,function(){return s[f++]})),u.name="Invariant Violation"}throw u.framesToPop=1,u}};n.exports=o},function(n,t,e){"use strict";function o(n){return n&&n.__esModule?n:{default:n}}t.__esModule=!0;var r=("function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},Object.assign||function(n){for(var t=1;t<arguments.length;t++){var e=arguments[t];for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o])}return n}),i=e(3),a=(o(i),e(6)),c=o(a),u=e(2),s=e(1),f=e(4),l=o(f),d=e(5),h="popstate",p="hashchange",v=function(){try{return window.history.state||{}}catch(n){return{}}},y=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};d.canUseDOM?void 0:(0,c.default)(!1);var t=window.history,e=(0,d.supportsHistory)(),o=!(0,d.supportsPopStateOnHashChange)(),i=n.forceRefresh,a=void 0!==i&&i,f=n.getUserConfirmation,y=void 0===f?d.getConfirmation:f,g=n.keyLength,m=void 0===g?6:g,w=n.basename?(0,s.stripTrailingSlash)((0,s.addLeadingSlash)(n.basename)):"",b=function(n){var t=n||{},e=t.key,o=t.state,r=window.location,i=r.pathname,a=r.search,c=r.hash,f=i+a+c;return w&&(f=(0,s.stripBasename)(f,w)),(0,u.createLocation)(f,o,e)},P=function(){return Math.random().toString(36).substr(2,m)},O=(0,l.default)(),L=function(n){r(G,n),G.length=t.length,O.notifyListeners(G.location,G.action)},x=function(n){(0,d.isExtraneousPopstateEvent)(n)||A(b(n.state))},S=function(){A(b(v()))},E=!1,A=function(n){if(E)E=!1,L();else{var t="POP";O.confirmTransitionTo(n,t,y,function(e){e?L({action:t,location:n}):_(n)})}},_=function(n){var t=G.location,e=T.indexOf(t.key);e===-1&&(e=0);var o=T.indexOf(n.key);o===-1&&(o=0);var r=e-o;r&&(E=!0,U(r))},k=b(v()),T=[k.key],M=function(n){return w+(0,s.createPath)(n)},H=function(n,o){var r="PUSH",i=(0,u.createLocation)(n,o,P(),G.location);O.confirmTransitionTo(i,r,y,function(n){if(n){var o=M(i),c=i.key,u=i.state;if(e)if(t.pushState({key:c,state:u},null,o),a)window.location.href=o;else{var s=T.indexOf(G.location.key),f=T.slice(0,s===-1?0:s+1);f.push(i.key),T=f,L({action:r,location:i})}else window.location.href=o}})},j=function(n,o){var r="REPLACE",i=(0,u.createLocation)(n,o,P(),G.location);O.confirmTransitionTo(i,r,y,function(n){if(n){var o=M(i),c=i.key,u=i.state;if(e)if(t.replaceState({key:c,state:u},null,o),a)window.location.replace(o);else{var s=T.indexOf(G.location.key);s!==-1&&(T[s]=i.key),L({action:r,location:i})}else window.location.replace(o)}})},U=function(n){t.go(n)},C=function(){return U(-1)},R=function(){return U(1)},B=0,I=function(n){B+=n,1===B?((0,d.addEventListener)(window,h,x),o&&(0,d.addEventListener)(window,p,S)):0===B&&((0,d.removeEventListener)(window,h,x),o&&(0,d.removeEventListener)(window,p,S))},q=!1,F=function(){var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=O.setPrompt(n);return q||(I(1),q=!0),function(){return q&&(q=!1,I(-1)),t()}},D=function(n){var t=O.appendListener(n);return I(1),function(){I(-1),t()}},G={length:t.length,action:"POP",location:k,createHref:M,push:H,replace:j,go:U,goBack:C,goForward:R,block:F,listen:D};return G};t.default=y},function(n,t,e){"use strict";function o(n){return n&&n.__esModule?n:{default:n}}t.__esModule=!0;var r=Object.assign||function(n){for(var t=1;t<arguments.length;t++){var e=arguments[t];for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o])}return n},i=e(3),a=(o(i),e(6)),c=o(a),u=e(2),s=e(1),f=e(4),l=o(f),d=e(5),h="hashchange",p={hashbang:{encodePath:function(n){return"!"===n.charAt(0)?n:"!/"+(0,s.stripLeadingSlash)(n)},decodePath:function(n){return"!"===n.charAt(0)?n.substr(1):n}},noslash:{encodePath:s.stripLeadingSlash,decodePath:s.addLeadingSlash},slash:{encodePath:s.addLeadingSlash,decodePath:s.addLeadingSlash}},v=function(){var n=window.location.href,t=n.indexOf("#");return t===-1?"":n.substring(t+1)},y=function(n){return window.location.hash=n},g=function(n){var t=window.location.href.indexOf("#");window.location.replace(window.location.href.slice(0,t>=0?t:0)+"#"+n)},m=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};d.canUseDOM?void 0:(0,c.default)(!1);var t=window.history,e=((0,d.supportsGoWithoutReloadUsingHash)(),n.getUserConfirmation),o=void 0===e?d.getConfirmation:e,i=n.hashType,a=void 0===i?"slash":i,f=n.basename?(0,s.stripTrailingSlash)((0,s.addLeadingSlash)(n.basename)):"",m=p[a],w=m.encodePath,b=m.decodePath,P=function(){var n=b(v());return f&&(n=(0,s.stripBasename)(n,f)),(0,u.createLocation)(n)},O=(0,l.default)(),L=function(n){r(V,n),V.length=t.length,O.notifyListeners(V.location,V.action)},x=!1,S=null,E=function(){var n=v(),t=w(n);if(n!==t)g(t);else{var e=P(),o=V.location;if(!x&&(0,u.locationsAreEqual)(o,e))return;if(S===(0,s.createPath)(e))return;S=null,A(e)}},A=function(n){if(x)x=!1,L();else{var t="POP";O.confirmTransitionTo(n,t,o,function(e){e?L({action:t,location:n}):_(n)})}},_=function(n){var t=V.location,e=H.lastIndexOf((0,s.createPath)(t));e===-1&&(e=0);var o=H.lastIndexOf((0,s.createPath)(n));o===-1&&(o=0);var r=e-o;r&&(x=!0,R(r))},k=v(),T=w(k);k!==T&&g(T);var M=P(),H=[(0,s.createPath)(M)],j=function(n){return"#"+w(f+(0,s.createPath)(n))},U=function(n,t){var e="PUSH",r=(0,u.createLocation)(n,void 0,void 0,V.location);O.confirmTransitionTo(r,e,o,function(n){if(n){var t=(0,s.createPath)(r),o=w(f+t),i=v()!==o;if(i){S=t,y(o);var a=H.lastIndexOf((0,s.createPath)(V.location)),c=H.slice(0,a===-1?0:a+1);c.push(t),H=c,L({action:e,location:r})}else L()}})},C=function(n,t){var e="REPLACE",r=(0,u.createLocation)(n,void 0,void 0,V.location);O.confirmTransitionTo(r,e,o,function(n){if(n){var t=(0,s.createPath)(r),o=w(f+t),i=v()!==o;i&&(S=t,g(o));var a=H.indexOf((0,s.createPath)(V.location));a!==-1&&(H[a]=t),L({action:e,location:r})}})},R=function(n){t.go(n)},B=function(){return R(-1)},I=function(){return R(1)},q=0,F=function(n){q+=n,1===q?(0,d.addEventListener)(window,h,E):0===q&&(0,d.removeEventListener)(window,h,E)},D=!1,G=function(){var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=O.setPrompt(n);return D||(F(1),D=!0),function(){return D&&(D=!1,F(-1)),t()}},W=function(n){var t=O.appendListener(n);return F(1),function(){F(-1),t()}},V={length:t.length,action:"POP",location:M,createHref:j,push:U,replace:C,go:R,goBack:B,goForward:I,block:G,listen:W};return V};t.default=m},function(n,t,e){"use strict";function o(n){return n&&n.__esModule?n:{default:n}}t.__esModule=!0;var r=("function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},Object.assign||function(n){for(var t=1;t<arguments.length;t++){var e=arguments[t];for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o])}return n}),i=e(3),a=(o(i),e(1)),c=e(2),u=e(4),s=o(u),f=function(n,t,e){return Math.min(Math.max(n,t),e)},l=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=n.getUserConfirmation,e=n.initialEntries,o=void 0===e?["/"]:e,i=n.initialIndex,u=void 0===i?0:i,l=n.keyLength,d=void 0===l?6:l,h=(0,s.default)(),p=function(n){r(A,n),A.length=A.entries.length,h.notifyListeners(A.location,A.action)},v=function(){return Math.random().toString(36).substr(2,d)},y=f(u,0,o.length-1),g=o.map(function(n){return"string"==typeof n?(0,c.createLocation)(n,void 0,v()):(0,c.createLocation)(n,void 0,n.key||v())}),m=a.createPath,w=function(n,e){var o="PUSH",r=(0,c.createLocation)(n,e,v(),A.location);h.confirmTransitionTo(r,o,t,function(n){if(n){var t=A.index,e=t+1,i=A.entries.slice(0);i.length>e?i.splice(e,i.length-e,r):i.push(r),p({action:o,location:r,index:e,entries:i})}})},b=function(n,e){var o="REPLACE",r=(0,c.createLocation)(n,e,v(),A.location);h.confirmTransitionTo(r,o,t,function(n){n&&(A.entries[A.index]=r,p({action:o,location:r}))})},P=function(n){var e=f(A.index+n,0,A.entries.length-1),o="POP",r=A.entries[e];h.confirmTransitionTo(r,o,t,function(n){n?p({action:o,location:r,index:e}):p()})},O=function(){return P(-1)},L=function(){return P(1)},x=function(n){var t=A.index+n;return t>=0&&t<A.entries.length},S=function(){var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return h.setPrompt(n)},E=function(n){return h.appendListener(n)},A={length:g.length,action:"POP",location:g[y],index:y,entries:g,createHref:m,push:w,replace:b,go:P,goBack:O,goForward:L,canGo:x,block:S,listen:E};return A};t.default=l},function(n,t){"use strict";var e=function(n){return"/"===n.charAt(0)},o=function(n,t){for(var e=t,o=e+1,r=n.length;o<r;e+=1,o+=1)n[e]=n[o];n.pop()},r=function(n){var t=arguments.length<=1||void 0===arguments[1]?"":arguments[1],r=n&&n.split("/")||[],i=t&&t.split("/")||[],a=n&&e(n),c=t&&e(t),u=a||c;if(n&&e(n)?i=r:r.length&&(i.pop(),i=i.concat(r)),!i.length)return"/";var s=void 0;if(i.length){var f=i[i.length-1];s="."===f||".."===f||""===f}else s=!1;for(var l=0,d=i.length;d>=0;d--){var h=i[d];"."===h?o(i,d):".."===h?(o(i,d),l++):l&&(o(i,d),l--)}if(!u)for(;l--;l)i.unshift("..");!u||""===i[0]||i[0]&&e(i[0])||i.unshift("");var p=i.join("/");return s&&"/"!==p.substr(-1)&&(p+="/"),p};n.exports=r},function(n,t){"use strict";t.__esModule=!0;var e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},o=function n(t,o){if(t===o)return!0;if(null==t||null==o)return!1;if(Array.isArray(t))return!(!Array.isArray(o)||t.length!==o.length)&&t.every(function(t,e){return n(t,o[e])});var r="undefined"==typeof t?"undefined":e(t),i="undefined"==typeof o?"undefined":e(o);if(r!==i)return!1;if("object"===r){var a=t.valueOf(),c=o.valueOf();if(a!==t||c!==o)return n(a,c);var u=Object.keys(t),s=Object.keys(o);return u.length===s.length&&u.every(function(e){return n(t[e],o[e])})}return!1};t.default=o}])});
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc