Comparing version 1.0.0 to 1.1.0
@@ -50,5 +50,5 @@ var webpack = require('webpack'); | ||
base: 'BrowserStack', | ||
os: 'iOS', | ||
os_version: '8.3', | ||
device: 'iPhone 6' | ||
os: 'ios', | ||
os_version: '7.0', | ||
browser: 'iphone' | ||
}, | ||
@@ -61,4 +61,2 @@ }; | ||
browsers: [ 'Chrome' ], | ||
browserNoActivityTimeout: 30000, | ||
captureTimeout: 30000, | ||
frameworks: [ 'mocha' ], | ||
@@ -97,14 +95,8 @@ reporters: [ 'mocha' ], | ||
config.reporters = [ 'dots' ]; | ||
config.captureTimeout = 120000; | ||
// Karma (with socket.io 1.x) buffers by 50 and 50 tests can take a long time on IEs | ||
config.browserNoActivityTimeout = 120000; | ||
// Allocating a browser in Sauce Labs can take a while (e.g. if we are out of | ||
// capacity and need to wait for another build to finish) so captureTimeout | ||
// typically kills an in-queue-pending request, which makes no sense. | ||
config.captureTimeout = 0; | ||
config.browserStack = { | ||
username: process.env.BROWSER_STACK_USERNAME, | ||
accessKey: process.env.BROWSER_STACK_ACCESS_KEY, | ||
pollingTimeout: 10000, | ||
startTunnel: true, | ||
@@ -115,11 +107,4 @@ }; | ||
config.reporters = [ 'dots' ]; | ||
config.captureTimeout = 120000; | ||
// Karma (with socket.io 1.x) buffers by 50 and 50 tests can take a long time on IEs | ||
config.browserNoActivityTimeout = 120000; | ||
// Allocating a browser in Sauce Labs can take a while (e.g. if we are out of | ||
// capacity and need to wait for another build to finish) so captureTimeout | ||
// typically kills an in-queue-pending request, which makes no sense. | ||
config.captureTimeout = 0; | ||
var buildLabel = 'TRAVIS #' + process.env.TRAVIS_BUILD_NUMBER + ' (' + process.env.TRAVIS_BUILD_ID + ')'; | ||
@@ -130,3 +115,4 @@ | ||
accessKey: process.env.BROWSER_STACK_ACCESS_KEY, | ||
startTunnel: true, | ||
pollingTimeout: 10000, | ||
startTunnel: false, | ||
project: 'history', | ||
@@ -133,0 +119,0 @@ build: buildLabel, |
@@ -177,2 +177,6 @@ 'use strict'; | ||
function createHref(path) { | ||
return '#' + history.createHref(path); | ||
} | ||
return _extends({}, history, { | ||
@@ -182,3 +186,4 @@ listen: listen, | ||
replaceState: replaceState, | ||
go: go | ||
go: go, | ||
createHref: createHref | ||
}); | ||
@@ -185,0 +190,0 @@ } |
@@ -21,4 +21,2 @@ 'use strict'; | ||
var DefaultKeyLength = 6; | ||
function createRandomKey(length) { | ||
@@ -34,8 +32,6 @@ return Math.random().toString(36).substr(2, length); | ||
var DefaultKeyLength = 6; | ||
function createHistory() { | ||
var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; | ||
var transitionHooks = []; | ||
var changeListeners = []; | ||
var getCurrentLocation = options.getCurrentLocation; | ||
@@ -50,2 +46,4 @@ var finishTransition = options.finishTransition; | ||
var transitionHooks = []; | ||
var changeListeners = []; | ||
var location; | ||
@@ -156,2 +154,6 @@ | ||
function createHref(path) { | ||
return path; | ||
} | ||
return { | ||
@@ -168,3 +170,4 @@ listen: listen, | ||
goForward: goForward, | ||
createKey: createKey | ||
createKey: createKey, | ||
createHref: createHref | ||
}; | ||
@@ -171,0 +174,0 @@ } |
@@ -538,4 +538,2 @@ (function webpackUniversalModuleDefinition(root, factory) { | ||
var DefaultKeyLength = 6; | ||
function createRandomKey(length) { | ||
@@ -551,8 +549,6 @@ return Math.random().toString(36).substr(2, length); | ||
var DefaultKeyLength = 6; | ||
function createHistory() { | ||
var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; | ||
var transitionHooks = []; | ||
var changeListeners = []; | ||
var getCurrentLocation = options.getCurrentLocation; | ||
@@ -567,2 +563,4 @@ var finishTransition = options.finishTransition; | ||
var transitionHooks = []; | ||
var changeListeners = []; | ||
var location; | ||
@@ -673,2 +671,6 @@ | ||
function createHref(path) { | ||
return path; | ||
} | ||
return { | ||
@@ -685,3 +687,4 @@ listen: listen, | ||
goForward: goForward, | ||
createKey: createKey | ||
createKey: createKey, | ||
createHref: createHref | ||
}; | ||
@@ -1055,2 +1058,6 @@ } | ||
function createHref(path) { | ||
return '#' + history.createHref(path); | ||
} | ||
return _extends({}, history, { | ||
@@ -1060,3 +1067,4 @@ listen: listen, | ||
replaceState: replaceState, | ||
go: go | ||
go: go, | ||
createHref: createHref | ||
}); | ||
@@ -1063,0 +1071,0 @@ } |
@@ -1,1 +0,1 @@ | ||
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):"object"==typeof exports?exports.History=e():t.History=e()}(this,function(){return function(t){function e(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return t[r].call(o.exports,o,o.exports,e),o.loaded=!0,o.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}e.__esModule=!0;var o=n(8),a=r(o);e.createHistory=a["default"];var i=n(9),u=r(i);e.createHashHistory=u["default"];var s=n(10),c=r(s);e.createMemoryHistory=c["default"];var f=n(2),l=r(f);e.createLocation=l["default"];var d=n(1),h=r(d);e.Actions=h["default"]},function(t,e){"use strict";e.__esModule=!0;var n="PUSH";e.PUSH=n;var r="REPLACE";e.REPLACE=r;var o="POP";e.POP=o,e["default"]={PUSH:n,REPLACE:r,POP:o}},function(t,e,n){"use strict";function r(){var t,e,n=arguments.length<=0||void 0===arguments[0]?"/":arguments[0],r=arguments.length<=1||void 0===arguments[1]?null:arguments[1],a=arguments.length<=2||void 0===arguments[2]?o.POP:arguments[2],i=arguments.length<=3||void 0===arguments[3]?null:arguments[3],u=n.indexOf("?");return-1!==u?(t=n.substring(0,u),e=n.substring(u)):(t=n,e=""),""===t&&(t="/"),{pathname:t,search:e,state:r,action:a,key:i}}e.__esModule=!0;var o=n(1);e["default"]=r,t.exports=e["default"]},function(t,e,n){"use strict";var r=function(t,e,n,r,o,a,i,u){if(!t){var s;if(void 0===e)s=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,o,a,i,u],f=0;s=new Error("Invariant Violation: "+e.replace(/%s/g,function(){return c[f++]}))}throw s.framesToPop=1,s}};t.exports=r},function(t,e){"use strict";function n(t,e,n){t.addEventListener?t.addEventListener(e,n,!1):t.attachEvent("on"+e,n)}function r(t,e,n){t.removeEventListener?t.removeEventListener(e,n,!1):t.detachEvent("on"+e,n)}function o(){return window.location.href.split("#")[1]||""}function a(t){window.location.replace(window.location.pathname+window.location.search+"#"+t)}function i(){return window.location.pathname+window.location.search}function u(t,e){window.sessionStorage.setItem(t,JSON.stringify(e))}function s(t){var e=window.sessionStorage.getItem(t);if(e)try{return JSON.parse(e)}catch(n){}return null}function c(t){t&&window.history.go(t)}function f(){var t=navigator.userAgent;return-1===t.indexOf("Android 2.")&&-1===t.indexOf("Android 4.0")||-1===t.indexOf("Mobile Safari")||-1!==t.indexOf("Chrome")||-1!==t.indexOf("Windows Phone")?window.history&&"pushState"in window.history:!1}function l(){var t=navigator.userAgent;return-1===t.indexOf("Firefox")}e.__esModule=!0,e.addEventListener=n,e.removeEventListener=r,e.getHashPath=o,e.replaceHashPath=a,e.getWindowPath=i,e.saveState=u,e.readState=s,e.go=c,e.supportsHistory=f,e.supportsGoWithoutReloadUsingHash=l},function(t,e){"use strict";e.__esModule=!0;var n=!("undefined"==typeof window||!window.document||!window.document.createElement);e.canUseDOM=n},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function o(t,e){e(window.confirm(t))}function a(t){function e(t){var e=n();return"string"==typeof e?((t||window.event).returnValue=e,e):void 0}var n=t.getTransitionConfirmationMessage;return l.addEventListener(window,"beforeunload",e),function(){l.removeEventListener(window,"beforeunload",e)}}function i(t){function e(t){c["default"](f.canUseDOM,"DOM history needs a DOM"),1===++i&&(n=a(r));var e=r.listen(t);return function(){e(),0===--i&&n()}}var n,r=h["default"](u({getUserConfirmation:o},t,{saveState:l.saveState,readState:l.readState,go:l.go})),i=0;return u({},r,{listen:e})}e.__esModule=!0;var u=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},s=n(3),c=r(s),f=n(5),l=n(4),d=n(7),h=r(d);e["default"]=i,t.exports=e["default"]},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function o(t){return Math.random().toString(36).substr(2,t)}function a(t,e){return t.pathname===e.pathname&&t.search===e.search&&t.key===e.key&&f["default"](t.state,e.state)}function i(){function t(t){k=t,b.forEach(function(t){t(k)})}function e(t){b.push(t)}function n(t){b=b.filter(function(e){return e!==t})}function r(r){return e(r),k?r(k):t(S()),function(){n(r)}}function i(t){-1===P.indexOf(t)&&P.push(t)}function u(t){P=P.filter(function(e){return e!==t})}function c(){for(var t=null,e=0,n=P.length;n>e&&"string"!=typeof t;++e)t=P[e].call(this);return t}function f(t){var e;H&&(e=c())?H(e,function(e){t(e!==!1)}):t(!0)}function d(e){k&&a(k,e)||(s["default"](null==j,"transitionTo: Another transition is already in progress"),j=e,f(function(n){j=null,n?(x(e),t(e)):E&&E(e)}))}function g(t,e){d(h["default"](e,t,l.PUSH,w()))}function v(t,e){d(h["default"](e,t,l.REPLACE,w()))}function y(){_(-1)}function m(){_(1)}function w(){return o(M)}var O=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],P=[],b=[],S=O.getCurrentLocation,x=O.finishTransition,E=O.cancelTransition,_=O.go,M=O.keyLength,H=O.getUserConfirmation;"number"!=typeof M&&(M=p);var k,j;return{listen:r,registerTransitionHook:i,unregisterTransitionHook:u,getTransitionConfirmationMessage:c,transitionTo:d,pushState:g,replaceState:v,go:_,goBack:y,goForward:m,createKey:w}}e.__esModule=!0;var u=n(3),s=r(u),c=n(11),f=r(c),l=n(1),d=n(2),h=r(d),p=6;e["default"]=i,t.exports=e["default"]},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function o(t){t=t||window.history.state||{};var e=t,n=e.key,r=n&&d.readState(n),o=d.getWindowPath();return v["default"](o,r,void 0,n)}function a(t){function e(t){void 0!==t.state&&n(o(t.state))}var n=t.transitionTo;return d.addEventListener(window,"popstate",e),function(){d.removeEventListener(window,"popstate",e)}}function i(t){function e(t){var e=t.key,n=t.pathname,r=t.search,o=n+r,a={key:e};switch(t.action){case f.PUSH:d.saveState(t.key,t.state),s?window.history.pushState(a,null,o):window.location.href=o;break;case f.REPLACE:d.saveState(t.key,t.state),s?window.history.replaceState(a,null,o):window.location.replace(o)}}function n(t){if(t.action===f.POP){var e=0;d.go(e)}}function r(t){1===++g&&(i=a(h));var e=h.listen(t);return function(){e(),0===--g&&i()}}c["default"](l.canUseDOM,"Browser history needs a DOM");var i,s=d.supportsHistory(),h=p["default"](u({},t,{getCurrentLocation:o,finishTransition:e,cancelTransition:n})),g=0;return u({},h,{listen:r})}e.__esModule=!0;var u=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},s=n(3),c=r(s),f=n(1),l=n(5),d=n(4),h=n(6),p=r(h),g=n(2),v=r(g);e["default"]=i,t.exports=e["default"]},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function o(t){return"string"==typeof t&&"/"===t.charAt(0)}function a(){var t=y.getHashPath();return o(t)?!0:(y.replaceHashPath("/"+t),!1)}function i(t,e,n){return t+(-1===t.indexOf("?")?"?":"&")+(e+"="+n)}function u(t,e){return t.replace(new RegExp("[?&]?"+e+"=[a-zA-Z0-9]+"),"")}function s(t,e){var n=t.match(new RegExp("\\?.*?\\b"+e+"=(.+?)\\b"));return n&&n[1]}function c(){function t(){var t,e,n=y.getHashPath();return O&&(t=s(n,O),n=u(n,O),e=t&&y.readState(t)),P["default"](n,e,void 0,t)}function e(e){function n(){a()&&r(t())}var r=e.transitionTo;return a(),y.addEventListener(window,"hashchange",n),function(){y.removeEventListener(window,"hashchange",n)}}function n(t){var e=t.key,n=t.pathname,r=t.search,o=t.action;if(o!==g.POP){var a=n+r;O&&(a=i(a,O,e)),a===y.getHashPath()?d["default"](!1,"You cannot %s the same path using hash history",o):(O?y.saveState(t.key,t.state):t.key=t.state=null,o===g.PUSH?window.location.hash=a:y.replaceHashPath(a))}}function r(t){if(t.action===g.POP){var e=0;h(e)}}function o(t){1===++E&&(S=e(x));var n=x.listen(t);return function(){n(),0===--E&&S()}}function c(t,e){d["default"](O||null==t,"You cannot use state without a queryKey; it will be dropped"),x.pushState(t,e)}function l(t,e){d["default"](O||null==t,"You cannot use state without a queryKey; it will be dropped"),x.replaceState(t,e)}function h(t){d["default"](_,"Hash history go(n) causes a full page reload in this browser"),x.go(t)}var m=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];p["default"](v.canUseDOM,"Hash history needs a DOM");var O=m.queryKey;(void 0===O||O)&&(O="string"==typeof O?O:b);var S,x=w["default"](f({},m,{getCurrentLocation:t,finishTransition:n,cancelTransition:r})),E=0,_=y.supportsGoWithoutReloadUsingHash();return f({},x,{listen:o,pushState:c,replaceState:l,go:h})}e.__esModule=!0;var f=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},l=n(14),d=r(l),h=n(3),p=r(h),g=n(1),v=n(5),y=n(4),m=n(6),w=r(m),O=n(2),P=r(O),b="_k";e["default"]=c,t.exports=e["default"]},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function o(t){return t.filter(function(t){return t.state}).reduce(function(t,e){return t[e.key]=e.state,t},{})}function a(){function t(t,e){m[t]=e}function e(t){return m[t]}function n(){var t=v[y],n=t.key,r=t.pathname,o=t.search,a=r+(o||""),i=e(n);return l["default"](a,i,void 0,n)}function r(t){var e=y+t;return e>=0&&e<v.length}function a(t){if(t){s["default"](r(t),"Cannot go(%s); there is not enough history",t),y+=t;var e=n();p.transitionTo(i({},e,{action:c.POP}))}}function u(e){switch(e.action){case c.PUSH:y+=1,y<v.length-1&&v.splice(y),v.push(e),t(e.key,e.state);break;case c.REPLACE:v[y]=e,t(e.key,e.state)}}function f(t){if(t.action===c.POP){var e=0;y+=e}}var d=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];Array.isArray(d)?d={entries:d}:"string"==typeof d&&(d={entries:[d]});var p=h["default"](i({},d,{getCurrentLocation:n,finishTransition:u,cancelTransition:f,go:a})),g=d,v=g.entries,y=g.current;"string"==typeof v?v=[v]:Array.isArray(v)||(v=["/"]),v=v.map(function(t){var e=p.createKey();return"string"==typeof t?{pathname:t,key:e}:"object"==typeof t&&t?i({},t,{key:e}):void s["default"](!1,"Unable to create history entry from %s",t)}),null==y?y=v.length-1:s["default"](y>=0&&y<v.length,"Current index must be >= 0 and < %s, was %s",v.length,y);var m=o(v);return p}e.__esModule=!0;var i=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},u=n(3),s=r(u),c=n(1),f=n(2),l=r(f),d=n(7),h=r(d);e["default"]=a,t.exports=e["default"]},function(t,e,n){function r(t){return null===t||void 0===t}function o(t){return t&&"object"==typeof t&&"number"==typeof t.length?"function"!=typeof t.copy||"function"!=typeof t.slice?!1:t.length>0&&"number"!=typeof t[0]?!1:!0:!1}function a(t,e,n){var a,f;if(r(t)||r(e))return!1;if(t.prototype!==e.prototype)return!1;if(s(t))return s(e)?(t=i.call(t),e=i.call(e),c(t,e,n)):!1;if(o(t)){if(!o(e))return!1;if(t.length!==e.length)return!1;for(a=0;a<t.length;a++)if(t[a]!==e[a])return!1;return!0}try{var l=u(t),d=u(e)}catch(h){return!1}if(l.length!=d.length)return!1;for(l.sort(),d.sort(),a=l.length-1;a>=0;a--)if(l[a]!=d[a])return!1;for(a=l.length-1;a>=0;a--)if(f=l[a],!c(t[f],e[f],n))return!1;return typeof t==typeof e}var i=Array.prototype.slice,u=n(13),s=n(12),c=t.exports=function(t,e,n){return n||(n={}),t===e?!0:t instanceof Date&&e instanceof Date?t.getTime()===e.getTime():"object"!=typeof t&&"object"!=typeof e?n.strict?t===e:t==e:a(t,e,n)}},function(t,e){function n(t){return"[object Arguments]"==Object.prototype.toString.call(t)}function r(t){return t&&"object"==typeof t&&"number"==typeof t.length&&Object.prototype.hasOwnProperty.call(t,"callee")&&!Object.prototype.propertyIsEnumerable.call(t,"callee")||!1}var o="[object Arguments]"==function(){return Object.prototype.toString.call(arguments)}();e=t.exports=o?n:r,e.supported=n,e.unsupported=r},function(t,e){function n(t){var e=[];for(var n in t)e.push(n);return e}e=t.exports="function"==typeof Object.keys?Object.keys:n,e.shim=n},function(t,e,n){"use strict";var r=function(){};t.exports=r}])}); | ||
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):"object"==typeof exports?exports.History=e():t.History=e()}(this,function(){return function(t){function e(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return t[r].call(o.exports,o,o.exports,e),o.loaded=!0,o.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}e.__esModule=!0;var o=n(8),a=r(o);e.createHistory=a["default"];var i=n(9),u=r(i);e.createHashHistory=u["default"];var s=n(10),c=r(s);e.createMemoryHistory=c["default"];var f=n(2),l=r(f);e.createLocation=l["default"];var d=n(1),h=r(d);e.Actions=h["default"]},function(t,e){"use strict";e.__esModule=!0;var n="PUSH";e.PUSH=n;var r="REPLACE";e.REPLACE=r;var o="POP";e.POP=o,e["default"]={PUSH:n,REPLACE:r,POP:o}},function(t,e,n){"use strict";function r(){var t,e,n=arguments.length<=0||void 0===arguments[0]?"/":arguments[0],r=arguments.length<=1||void 0===arguments[1]?null:arguments[1],a=arguments.length<=2||void 0===arguments[2]?o.POP:arguments[2],i=arguments.length<=3||void 0===arguments[3]?null:arguments[3],u=n.indexOf("?");return-1!==u?(t=n.substring(0,u),e=n.substring(u)):(t=n,e=""),""===t&&(t="/"),{pathname:t,search:e,state:r,action:a,key:i}}e.__esModule=!0;var o=n(1);e["default"]=r,t.exports=e["default"]},function(t,e,n){"use strict";var r=function(t,e,n,r,o,a,i,u){if(!t){var s;if(void 0===e)s=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,o,a,i,u],f=0;s=new Error("Invariant Violation: "+e.replace(/%s/g,function(){return c[f++]}))}throw s.framesToPop=1,s}};t.exports=r},function(t,e){"use strict";function n(t,e,n){t.addEventListener?t.addEventListener(e,n,!1):t.attachEvent("on"+e,n)}function r(t,e,n){t.removeEventListener?t.removeEventListener(e,n,!1):t.detachEvent("on"+e,n)}function o(){return window.location.href.split("#")[1]||""}function a(t){window.location.replace(window.location.pathname+window.location.search+"#"+t)}function i(){return window.location.pathname+window.location.search}function u(t,e){window.sessionStorage.setItem(t,JSON.stringify(e))}function s(t){var e=window.sessionStorage.getItem(t);if(e)try{return JSON.parse(e)}catch(n){}return null}function c(t){t&&window.history.go(t)}function f(){var t=navigator.userAgent;return-1===t.indexOf("Android 2.")&&-1===t.indexOf("Android 4.0")||-1===t.indexOf("Mobile Safari")||-1!==t.indexOf("Chrome")||-1!==t.indexOf("Windows Phone")?window.history&&"pushState"in window.history:!1}function l(){var t=navigator.userAgent;return-1===t.indexOf("Firefox")}e.__esModule=!0,e.addEventListener=n,e.removeEventListener=r,e.getHashPath=o,e.replaceHashPath=a,e.getWindowPath=i,e.saveState=u,e.readState=s,e.go=c,e.supportsHistory=f,e.supportsGoWithoutReloadUsingHash=l},function(t,e){"use strict";e.__esModule=!0;var n=!("undefined"==typeof window||!window.document||!window.document.createElement);e.canUseDOM=n},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function o(t,e){e(window.confirm(t))}function a(t){function e(t){var e=n();return"string"==typeof e?((t||window.event).returnValue=e,e):void 0}var n=t.getTransitionConfirmationMessage;return l.addEventListener(window,"beforeunload",e),function(){l.removeEventListener(window,"beforeunload",e)}}function i(t){function e(t){c["default"](f.canUseDOM,"DOM history needs a DOM"),1===++i&&(n=a(r));var e=r.listen(t);return function(){e(),0===--i&&n()}}var n,r=h["default"](u({getUserConfirmation:o},t,{saveState:l.saveState,readState:l.readState,go:l.go})),i=0;return u({},r,{listen:e})}e.__esModule=!0;var u=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},s=n(3),c=r(s),f=n(5),l=n(4),d=n(7),h=r(d);e["default"]=i,t.exports=e["default"]},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function o(t){return Math.random().toString(36).substr(2,t)}function a(t,e){return t.pathname===e.pathname&&t.search===e.search&&t.key===e.key&&f["default"](t.state,e.state)}function i(){function t(t){M=t,L.forEach(function(t){t(M)})}function e(t){L.push(t)}function n(t){L=L.filter(function(e){return e!==t})}function r(r){return e(r),M?r(M):t(b()),function(){n(r)}}function i(t){-1===j.indexOf(t)&&j.push(t)}function u(t){j=j.filter(function(e){return e!==t})}function c(){for(var t=null,e=0,n=j.length;n>e&&"string"!=typeof t;++e)t=j[e].call(this);return t}function f(t){var e;H&&(e=c())?H(e,function(e){t(e!==!1)}):t(!0)}function d(e){M&&a(M,e)||(s["default"](null==k,"transitionTo: Another transition is already in progress"),k=e,f(function(n){k=null,n?(S(e),t(e)):x&&x(e)}))}function g(t,e){d(h["default"](e,t,l.PUSH,w()))}function v(t,e){d(h["default"](e,t,l.REPLACE,w()))}function y(){E(-1)}function m(){E(1)}function w(){return o(_)}function O(t){return t}var P=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],b=P.getCurrentLocation,S=P.finishTransition,x=P.cancelTransition,E=P.go,_=P.keyLength,H=P.getUserConfirmation;"number"!=typeof _&&(_=p);var M,k,j=[],L=[];return{listen:r,registerTransitionHook:i,unregisterTransitionHook:u,getTransitionConfirmationMessage:c,transitionTo:d,pushState:g,replaceState:v,go:E,goBack:y,goForward:m,createKey:w,createHref:O}}e.__esModule=!0;var u=n(3),s=r(u),c=n(11),f=r(c),l=n(1),d=n(2),h=r(d),p=6;e["default"]=i,t.exports=e["default"]},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function o(t){t=t||window.history.state||{};var e=t,n=e.key,r=n&&d.readState(n),o=d.getWindowPath();return v["default"](o,r,void 0,n)}function a(t){function e(t){void 0!==t.state&&n(o(t.state))}var n=t.transitionTo;return d.addEventListener(window,"popstate",e),function(){d.removeEventListener(window,"popstate",e)}}function i(t){function e(t){var e=t.key,n=t.pathname,r=t.search,o=n+r,a={key:e};switch(t.action){case f.PUSH:d.saveState(t.key,t.state),s?window.history.pushState(a,null,o):window.location.href=o;break;case f.REPLACE:d.saveState(t.key,t.state),s?window.history.replaceState(a,null,o):window.location.replace(o)}}function n(t){if(t.action===f.POP){var e=0;d.go(e)}}function r(t){1===++g&&(i=a(h));var e=h.listen(t);return function(){e(),0===--g&&i()}}c["default"](l.canUseDOM,"Browser history needs a DOM");var i,s=d.supportsHistory(),h=p["default"](u({},t,{getCurrentLocation:o,finishTransition:e,cancelTransition:n})),g=0;return u({},h,{listen:r})}e.__esModule=!0;var u=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},s=n(3),c=r(s),f=n(1),l=n(5),d=n(4),h=n(6),p=r(h),g=n(2),v=r(g);e["default"]=i,t.exports=e["default"]},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function o(t){return"string"==typeof t&&"/"===t.charAt(0)}function a(){var t=y.getHashPath();return o(t)?!0:(y.replaceHashPath("/"+t),!1)}function i(t,e,n){return t+(-1===t.indexOf("?")?"?":"&")+(e+"="+n)}function u(t,e){return t.replace(new RegExp("[?&]?"+e+"=[a-zA-Z0-9]+"),"")}function s(t,e){var n=t.match(new RegExp("\\?.*?\\b"+e+"=(.+?)\\b"));return n&&n[1]}function c(){function t(){var t,e,n=y.getHashPath();return S&&(t=s(n,S),n=u(n,S),e=t&&y.readState(t)),P["default"](n,e,void 0,t)}function e(e){function n(){a()&&r(t())}var r=e.transitionTo;return a(),y.addEventListener(window,"hashchange",n),function(){y.removeEventListener(window,"hashchange",n)}}function n(t){var e=t.key,n=t.pathname,r=t.search,o=t.action;if(o!==g.POP){var a=n+r;S&&(a=i(a,S,e)),a===y.getHashPath()?d["default"](!1,"You cannot %s the same path using hash history",o):(S?y.saveState(t.key,t.state):t.key=t.state=null,o===g.PUSH?window.location.hash=a:y.replaceHashPath(a))}}function r(t){if(t.action===g.POP){var e=0;h(e)}}function o(t){1===++_&&(x=e(E));var n=E.listen(t);return function(){n(),0===--_&&x()}}function c(t,e){d["default"](S||null==t,"You cannot use state without a queryKey; it will be dropped"),E.pushState(t,e)}function l(t,e){d["default"](S||null==t,"You cannot use state without a queryKey; it will be dropped"),E.replaceState(t,e)}function h(t){d["default"](H,"Hash history go(n) causes a full page reload in this browser"),E.go(t)}function m(t){return"#"+E.createHref(t)}var O=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];p["default"](v.canUseDOM,"Hash history needs a DOM");var S=O.queryKey;(void 0===S||S)&&(S="string"==typeof S?S:b);var x,E=w["default"](f({},O,{getCurrentLocation:t,finishTransition:n,cancelTransition:r})),_=0,H=y.supportsGoWithoutReloadUsingHash();return f({},E,{listen:o,pushState:c,replaceState:l,go:h,createHref:m})}e.__esModule=!0;var f=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},l=n(14),d=r(l),h=n(3),p=r(h),g=n(1),v=n(5),y=n(4),m=n(6),w=r(m),O=n(2),P=r(O),b="_k";e["default"]=c,t.exports=e["default"]},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function o(t){return t.filter(function(t){return t.state}).reduce(function(t,e){return t[e.key]=e.state,t},{})}function a(){function t(t,e){m[t]=e}function e(t){return m[t]}function n(){var t=v[y],n=t.key,r=t.pathname,o=t.search,a=r+(o||""),i=e(n);return l["default"](a,i,void 0,n)}function r(t){var e=y+t;return e>=0&&e<v.length}function a(t){if(t){s["default"](r(t),"Cannot go(%s); there is not enough history",t),y+=t;var e=n();p.transitionTo(i({},e,{action:c.POP}))}}function u(e){switch(e.action){case c.PUSH:y+=1,y<v.length-1&&v.splice(y),v.push(e),t(e.key,e.state);break;case c.REPLACE:v[y]=e,t(e.key,e.state)}}function f(t){if(t.action===c.POP){var e=0;y+=e}}var d=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];Array.isArray(d)?d={entries:d}:"string"==typeof d&&(d={entries:[d]});var p=h["default"](i({},d,{getCurrentLocation:n,finishTransition:u,cancelTransition:f,go:a})),g=d,v=g.entries,y=g.current;"string"==typeof v?v=[v]:Array.isArray(v)||(v=["/"]),v=v.map(function(t){var e=p.createKey();return"string"==typeof t?{pathname:t,key:e}:"object"==typeof t&&t?i({},t,{key:e}):void s["default"](!1,"Unable to create history entry from %s",t)}),null==y?y=v.length-1:s["default"](y>=0&&y<v.length,"Current index must be >= 0 and < %s, was %s",v.length,y);var m=o(v);return p}e.__esModule=!0;var i=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},u=n(3),s=r(u),c=n(1),f=n(2),l=r(f),d=n(7),h=r(d);e["default"]=a,t.exports=e["default"]},function(t,e,n){function r(t){return null===t||void 0===t}function o(t){return t&&"object"==typeof t&&"number"==typeof t.length?"function"!=typeof t.copy||"function"!=typeof t.slice?!1:t.length>0&&"number"!=typeof t[0]?!1:!0:!1}function a(t,e,n){var a,f;if(r(t)||r(e))return!1;if(t.prototype!==e.prototype)return!1;if(s(t))return s(e)?(t=i.call(t),e=i.call(e),c(t,e,n)):!1;if(o(t)){if(!o(e))return!1;if(t.length!==e.length)return!1;for(a=0;a<t.length;a++)if(t[a]!==e[a])return!1;return!0}try{var l=u(t),d=u(e)}catch(h){return!1}if(l.length!=d.length)return!1;for(l.sort(),d.sort(),a=l.length-1;a>=0;a--)if(l[a]!=d[a])return!1;for(a=l.length-1;a>=0;a--)if(f=l[a],!c(t[f],e[f],n))return!1;return typeof t==typeof e}var i=Array.prototype.slice,u=n(13),s=n(12),c=t.exports=function(t,e,n){return n||(n={}),t===e?!0:t instanceof Date&&e instanceof Date?t.getTime()===e.getTime():"object"!=typeof t&&"object"!=typeof e?n.strict?t===e:t==e:a(t,e,n)}},function(t,e){function n(t){return"[object Arguments]"==Object.prototype.toString.call(t)}function r(t){return t&&"object"==typeof t&&"number"==typeof t.length&&Object.prototype.hasOwnProperty.call(t,"callee")&&!Object.prototype.propertyIsEnumerable.call(t,"callee")||!1}var o="[object Arguments]"==function(){return Object.prototype.toString.call(arguments)}();e=t.exports=o?n:r,e.supported=n,e.unsupported=r},function(t,e){function n(t){var e=[];for(var n in t)e.push(n);return e}e=t.exports="function"==typeof Object.keys?Object.keys:n,e.shim=n},function(t,e,n){"use strict";var r=function(){};t.exports=r}])}); |
@@ -173,2 +173,6 @@ import warning from 'warning'; | ||
function createHref(path) { | ||
return '#' + history.createHref(path); | ||
} | ||
return { | ||
@@ -179,3 +183,4 @@ ...history, | ||
replaceState, | ||
go | ||
go, | ||
createHref | ||
}; | ||
@@ -182,0 +187,0 @@ } |
@@ -6,4 +6,2 @@ import invariant from 'invariant'; | ||
var DefaultKeyLength = 6; | ||
function createRandomKey(length) { | ||
@@ -21,6 +19,5 @@ return Math.random().toString(36).substr(2, length); | ||
var DefaultKeyLength = 6; | ||
function createHistory(options={}) { | ||
var transitionHooks = []; | ||
var changeListeners = []; | ||
var { getCurrentLocation, finishTransition, cancelTransition, go, keyLength, getUserConfirmation } = options; | ||
@@ -31,2 +28,4 @@ | ||
var transitionHooks = []; | ||
var changeListeners = []; | ||
var location; | ||
@@ -143,2 +142,6 @@ | ||
function createHref(path) { | ||
return path; | ||
} | ||
return { | ||
@@ -155,3 +158,4 @@ listen, | ||
goForward, | ||
createKey | ||
createKey, | ||
createHref | ||
}; | ||
@@ -158,0 +162,0 @@ } |
{ | ||
"name": "history", | ||
"version": "1.0.0", | ||
"version": "1.1.0", | ||
"description": "A minimal, functional history implementation for JavaScript", | ||
@@ -31,13 +31,12 @@ "main": "lib/index", | ||
"babel-loader": "^5.0.0", | ||
"eslint": "^1.0.0-rc-1", | ||
"eslint": "^1.0.0", | ||
"expect": "^1.8.0", | ||
"karma": "^0.12.28", | ||
"karma-browserstack-launcher": "^0.1.2", | ||
"karma-chrome-launcher": "^0.1.7", | ||
"karma-cli": "^0.0.4", | ||
"karma-firefox-launcher": "^0.1.3", | ||
"karma-mocha": "^0.1.10", | ||
"karma-mocha-reporter": "^1.0.3", | ||
"karma-sourcemap-loader": "^0.3.2", | ||
"karma-webpack": "^1.3.1", | ||
"karma": "^0.13.3", | ||
"karma-browserstack-launcher": "^0.1.3", | ||
"karma-chrome-launcher": "^0.2.0", | ||
"karma-firefox-launcher": "^0.1.6", | ||
"karma-mocha": "^0.2.0", | ||
"karma-mocha-reporter": "^1.0.4", | ||
"karma-sourcemap-loader": "^0.3.5", | ||
"karma-webpack": "^1.7.0", | ||
"mocha": "^2.0.1", | ||
@@ -44,0 +43,0 @@ "webpack": "^1.4.13", |
@@ -5,3 +5,3 @@ [![build status](https://img.shields.io/travis/rackt/history/master.svg?style=flat-square)](https://travis-ci.org/rackt/history) | ||
`history` is a small, powerful JavaScript library that lets you easily manage session history in browsers, testing environments, and (soon, via React Native) native devices. `history` abstracts away the differences in these different platforms and provides a minimal API that lets you manage the history stack, navigate, confirm navigation, and persist state between sessions. `history` is library-agnostic and may easily be included in any JavaScript project. | ||
[`history`](https://www.npmjs.com/package/history) is a small, powerful JavaScript library that lets you easily manage session history in browsers, testing environments, and (soon, via [React Native](https://facebook.github.io/react-native/)) native devices. `history` abstracts away the differences in these different platforms and provides a minimal API that lets you manage the history stack, navigate, confirm navigation, and persist state between sessions. `history` is library-agnostic and may easily be included in any JavaScript project. | ||
@@ -125,2 +125,2 @@ ### Installation | ||
A big thank-you to [Dan Shaw](https://github.com/dshaw) for letting us use the `history` npm package name! Thanks Dan! | ||
A big thank-you to [Dan Shaw](https://www.npmjs.com/~dshaw) for letting us use the `history` npm package name! Thanks Dan! |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
17
2387
0
105808