@tanem/react-nprogress 3.0.79 → 4.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -98,6 +98,7 @@ render(<Enhanced isAnimating />, document.getElementById('root'))
98
98
  - Material UI: [Source](https://github.com/tanem/react-nprogress/tree/master/examples/material-ui) | [Sandbox](https://codesandbox.io/s/github/tanem/react-nprogress/tree/master/examples/material-ui)
99
99
  - Next Router: [Source](https://github.com/tanem/react-nprogress/tree/master/examples/next-router) | [Sandbox](https://codesandbox.io/s/github/tanem/react-nprogress/tree/master/examples/next-router)
100
100
  - Original Design: [Source](https://github.com/tanem/react-nprogress/tree/master/examples/original-design) | [Sandbox](https://codesandbox.io/s/github/tanem/react-nprogress/tree/master/examples/original-design)
101
+ - Plain JS: [Source](https://github.com/tanem/react-nprogress/tree/master/examples/plain-js) | [Sandbox](https://codesandbox.io/s/github/tanem/react-nprogress/tree/master/examples/plain-js)
101
102
  - Reach Router: [Source](https://github.com/tanem/react-nprogress/tree/master/examples/reach-router) | [Sandbox](https://codesandbox.io/s/github/tanem/react-nprogress/tree/master/examples/reach-router)
102
103
  - React Router: [Source](https://github.com/tanem/react-nprogress/tree/master/examples/react-router) | [Sandbox](https://codesandbox.io/s/github/tanem/react-nprogress/tree/master/examples/react-router)
103
104
  - Render Props: [Source](https://github.com/tanem/react-nprogress/tree/master/examples/render-props) | [Sandbox](https://codesandbox.io/s/github/tanem/react-nprogress/tree/master/examples/render-props)
package/dist/queue.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  declare type Next = () => void;
2
2
  declare type Callback = (next: Next) => void;
3
- export declare const clear: () => void;
4
- export declare const queue: (cb: Callback) => void;
3
+ export declare const createQueue: () => {
4
+ clear: () => void;
5
+ queue: (cb: Callback) => void;
6
+ };
5
7
  export {};
@@ -19,14 +19,12 @@ function _interopNamespace(e) {
19
19
  var d = Object.getOwnPropertyDescriptor(e, k);
20
20
  Object.defineProperty(n, k, d.get ? d : {
21
21
  enumerable: true,
22
- get: function () {
23
- return e[k];
24
- }
22
+ get: function () { return e[k]; }
25
23
  });
26
24
  }
27
25
  });
28
26
  }
29
- n['default'] = e;
27
+ n["default"] = e;
30
28
  return Object.freeze(n);
31
29
  }
32
30
 
@@ -57,73 +55,90 @@ var increment = function increment(progress) {
57
55
  return clamp(progress + amount, 0, 0.994);
58
56
  };
59
57
 
60
- var isRunning = false;
61
- var pending = [];
58
+ var createQueue = function createQueue() {
59
+ var isRunning = false;
60
+ var pending = [];
62
61
 
63
- var next = function next() {
64
- isRunning = true;
65
- var cb = pending.shift();
62
+ var next = function next() {
63
+ isRunning = true;
64
+ var cb = pending.shift();
66
65
 
67
- if (cb) {
68
- return cb(next);
69
- }
66
+ if (cb) {
67
+ return cb(next);
68
+ }
70
69
 
71
- isRunning = false;
72
- };
70
+ isRunning = false;
71
+ };
73
72
 
74
- var clear = function clear() {
75
- isRunning = false;
76
- pending = [];
77
- };
78
- var queue = function queue(cb) {
79
- pending.push(cb);
73
+ var clear = function clear() {
74
+ isRunning = false;
75
+ pending = [];
76
+ };
80
77
 
81
- if (!isRunning && pending.length === 1) {
82
- next();
83
- }
84
- };
78
+ var queue = function queue(cb) {
79
+ pending.push(cb);
85
80
 
86
- var handle;
87
- var cancel = function cancel() {
88
- if (handle) {
89
- window.cancelAnimationFrame(handle);
90
- }
81
+ if (!isRunning && pending.length === 1) {
82
+ next();
83
+ }
84
+ };
85
+
86
+ return {
87
+ clear: clear,
88
+ queue: queue
89
+ };
91
90
  };
92
- var timeout = function timeout(callback, delay) {
93
- var deltaTime;
94
- var start;
95
91
 
96
- var frame = function frame(time) {
97
- start = start || time;
98
- deltaTime = time - start;
92
+ var createTimeout = function createTimeout() {
93
+ var handle;
99
94
 
100
- if (deltaTime > delay) {
101
- callback();
102
- return;
95
+ var cancel = function cancel() {
96
+ console.log('cancel');
97
+
98
+ if (handle) {
99
+ window.cancelAnimationFrame(handle);
103
100
  }
101
+ };
102
+
103
+ var timeout = function timeout(callback, delay) {
104
+ var deltaTime;
105
+ var start;
106
+
107
+ var frame = function frame(time) {
108
+ start = start || time;
109
+ deltaTime = time - start;
110
+
111
+ if (deltaTime > delay) {
112
+ callback();
113
+ return;
114
+ }
115
+
116
+ handle = window.requestAnimationFrame(frame);
117
+ };
104
118
 
105
119
  handle = window.requestAnimationFrame(frame);
106
120
  };
107
121
 
108
- handle = window.requestAnimationFrame(frame);
122
+ return {
123
+ cancel: cancel,
124
+ timeout: timeout
125
+ };
109
126
  };
110
127
 
111
128
  /* istanbul ignore next */
112
129
 
113
130
  var noop = function noop() {
114
131
  return undefined;
115
- };
132
+ }; // const initialState: State = {
133
+ // isFinished: true,
134
+ // progress: 0,
135
+ // sideEffect: noop,
136
+ // }
137
+ // const cleanup = () => {
138
+ // cancelCurrentTimeout()
139
+ // clearQueue()
140
+ // }
116
141
 
117
- var initialState = {
118
- isFinished: true,
119
- progress: 0,
120
- sideEffect: noop
121
- };
122
-
123
- var cleanup = function cleanup() {
124
- cancel();
125
- clear();
126
- };
127
142
 
128
143
  var useNProgress = function useNProgress(_temp) {
129
144
  var _ref = _temp === void 0 ? {} : _temp,
@@ -136,10 +151,29 @@ var useNProgress = function useNProgress(_temp) {
136
151
  _ref$minimum = _ref.minimum,
137
152
  minimum = _ref$minimum === void 0 ? 0.08 : _ref$minimum;
138
153
 
154
+ var initialState = {
155
+ isFinished: true,
156
+ progress: 0,
157
+ sideEffect: noop
158
+ };
159
+
139
160
  var _useGetSetState = reactUse.useGetSetState(initialState),
140
161
  get = _useGetSetState[0],
141
162
  setState = _useGetSetState[1];
142
163
 
164
+ var _createQueue = createQueue(),
165
+ clearQueue = _createQueue.clear,
166
+ queue = _createQueue.queue;
167
+
168
+ var _createTimeout = createTimeout(),
169
+ cancelCurrentTimeout = _createTimeout.cancel,
170
+ timeout = _createTimeout.timeout;
171
+
172
+ var cleanup = function cleanup() {
173
+ cancelCurrentTimeout();
174
+ clearQueue();
175
+ };
176
+
143
177
  var set = React.useCallback(function (n) {
144
178
  n = clamp(n, minimum, 1);
145
179
 
@@ -207,7 +241,7 @@ var useNProgress = function useNProgress(_temp) {
207
241
  if (!isAnimating) {
208
242
  set(1);
209
243
  } else {
210
- setState(_extends__default['default']({}, initialState, {
244
+ setState(_extends__default["default"]({}, initialState, {
211
245
  sideEffect: start
212
246
  }));
213
247
  }
@@ -222,7 +256,7 @@ var useNProgress = function useNProgress(_temp) {
222
256
  var _excluded = ["children"];
223
257
  var NProgress = function NProgress(_ref) {
224
258
  var children = _ref.children,
225
- restProps = _objectWithoutPropertiesLoose__default['default'](_ref, _excluded);
259
+ restProps = _objectWithoutPropertiesLoose__default["default"](_ref, _excluded);
226
260
 
227
261
  var renderProps = useNProgress(restProps);
228
262
  return children(renderProps);
@@ -231,10 +265,10 @@ var NProgress = function NProgress(_ref) {
231
265
  function withNProgress(BaseComponent) {
232
266
  var WithNProgress = function WithNProgress(props) {
233
267
  var hookProps = useNProgress(props);
234
- return /*#__PURE__*/React__namespace.createElement(BaseComponent, _extends__default['default']({}, props, hookProps));
268
+ return /*#__PURE__*/React__namespace.createElement(BaseComponent, _extends__default["default"]({}, props, hookProps));
235
269
  };
236
270
 
237
- hoistNonReactStatics__default['default'](WithNProgress, BaseComponent);
271
+ hoistNonReactStatics__default["default"](WithNProgress, BaseComponent);
238
272
  return WithNProgress;
239
273
  }
240
274
 
@@ -1 +1 @@
1
- {"version":3,"file":"react-nprogress.cjs.development.js","sources":["../compiled/clamp.js","../compiled/increment.js","../compiled/queue.js","../compiled/timeout.js","../compiled/useNProgress.js","../compiled/NProgress.js","../compiled/withNProgress.js"],"sourcesContent":["export const clamp = (num, lower, upper) => {\n num = num <= upper ? num : upper;\n num = num >= lower ? num : lower;\n return num;\n};\n","import { clamp } from './clamp';\nexport const increment = (progress) => {\n let amount = 0;\n if (progress >= 0 && progress < 0.2) {\n amount = 0.1;\n }\n else if (progress >= 0.2 && progress < 0.5) {\n amount = 0.04;\n }\n else if (progress >= 0.5 && progress < 0.8) {\n amount = 0.02;\n }\n else if (progress >= 0.8 && progress < 0.99) {\n amount = 0.005;\n }\n return clamp(progress + amount, 0, 0.994);\n};\n","let isRunning = false;\nlet pending = [];\nconst next = () => {\n isRunning = true;\n const cb = pending.shift();\n if (cb) {\n return cb(next);\n }\n isRunning = false;\n};\nexport const clear = () => {\n isRunning = false;\n pending = [];\n};\nexport const queue = (cb) => {\n pending.push(cb);\n if (!isRunning && pending.length === 1) {\n next();\n }\n};\n","let handle;\nexport const cancel = () => {\n if (handle) {\n window.cancelAnimationFrame(handle);\n }\n};\nexport const timeout = (callback, delay) => {\n let deltaTime;\n let start;\n const frame = (time) => {\n start = start || time;\n deltaTime = time - start;\n if (deltaTime > delay) {\n callback();\n return;\n }\n handle = window.requestAnimationFrame(frame);\n };\n handle = window.requestAnimationFrame(frame);\n};\n","import { useCallback, useEffect, useRef } from 'react';\nimport { useEffectOnce, useGetSetState, useUpdateEffect } from 'react-use';\nimport { clamp } from './clamp';\nimport { increment } from './increment';\nimport { clear as clearQueue, queue } from './queue';\nimport { cancel as cancelCurrentTimeout, timeout } from './timeout';\n/* istanbul ignore next */\nconst noop = () => undefined;\nconst initialState = {\n isFinished: true,\n progress: 0,\n sideEffect: noop,\n};\nconst cleanup = () => {\n cancelCurrentTimeout();\n clearQueue();\n};\nexport const useNProgress = ({ animationDuration = 200, incrementDuration = 800, isAnimating = false, minimum = 0.08, } = {}) => {\n const [get, setState] = useGetSetState(initialState);\n const set = useCallback((n) => {\n n = clamp(n, minimum, 1);\n if (n === 1) {\n cleanup();\n queue((next) => {\n setState({\n progress: n,\n sideEffect: () => timeout(next, animationDuration),\n });\n });\n queue(() => {\n setState({ isFinished: true, sideEffect: cleanup });\n });\n return;\n }\n queue((next) => {\n setState({\n isFinished: false,\n progress: n,\n sideEffect: () => timeout(next, animationDuration),\n });\n });\n }, [animationDuration, minimum, setState]);\n const trickle = useCallback(() => {\n set(increment(get().progress));\n }, [get, set]);\n const start = useCallback(() => {\n const work = () => {\n trickle();\n queue((next) => {\n timeout(() => {\n work();\n next();\n }, incrementDuration);\n });\n };\n work();\n }, [incrementDuration, trickle]);\n const savedTrickle = useRef(noop);\n const sideEffect = get().sideEffect;\n useEffect(() => {\n savedTrickle.current = trickle;\n });\n useEffectOnce(() => {\n if (isAnimating) {\n start();\n }\n return cleanup;\n });\n useUpdateEffect(() => {\n get().sideEffect();\n }, [get, sideEffect]);\n useUpdateEffect(() => {\n if (!isAnimating) {\n set(1);\n }\n else {\n setState({\n ...initialState,\n sideEffect: start,\n });\n }\n }, [isAnimating, set, setState, start]);\n return {\n animationDuration,\n isFinished: get().isFinished,\n progress: get().progress,\n };\n};\n","import { useNProgress } from './useNProgress';\nexport const NProgress = ({ children, ...restProps }) => {\n const renderProps = useNProgress(restProps);\n return children(renderProps);\n};\n","import hoistNonReactStatics from 'hoist-non-react-statics';\nimport * as React from 'react';\nimport { useNProgress } from './useNProgress';\nexport function withNProgress(BaseComponent) {\n const WithNProgress = (props) => {\n const hookProps = useNProgress(props);\n return React.createElement(BaseComponent, { ...props, ...hookProps });\n };\n hoistNonReactStatics(WithNProgress, BaseComponent);\n return WithNProgress;\n}\n"],"names":["clamp","num","lower","upper","increment","progress","amount","isRunning","pending","next","cb","shift","clear","queue","push","length","handle","cancel","window","cancelAnimationFrame","timeout","callback","delay","deltaTime","start","frame","time","requestAnimationFrame","noop","undefined","initialState","isFinished","sideEffect","cleanup","cancelCurrentTimeout","clearQueue","useNProgress","animationDuration","incrementDuration","isAnimating","minimum","useGetSetState","get","setState","set","useCallback","n","trickle","work","savedTrickle","useRef","useEffect","current","useEffectOnce","useUpdateEffect","NProgress","children","restProps","renderProps","withNProgress","BaseComponent","WithNProgress","props","hookProps","React","createElement","hoistNonReactStatics"],"mappings":"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"}
1
+ {"version":3,"file":"react-nprogress.cjs.development.js","sources":["../compiled/clamp.js","../compiled/increment.js","../compiled/queue.js","../compiled/timeout.js","../compiled/useNProgress.js","../compiled/NProgress.js","../compiled/withNProgress.js"],"sourcesContent":["export const clamp = (num, lower, upper) => {\n num = num <= upper ? num : upper;\n num = num >= lower ? num : lower;\n return num;\n};\n","import { clamp } from './clamp';\nexport const increment = (progress) => {\n let amount = 0;\n if (progress >= 0 && progress < 0.2) {\n amount = 0.1;\n }\n else if (progress >= 0.2 && progress < 0.5) {\n amount = 0.04;\n }\n else if (progress >= 0.5 && progress < 0.8) {\n amount = 0.02;\n }\n else if (progress >= 0.8 && progress < 0.99) {\n amount = 0.005;\n }\n return clamp(progress + amount, 0, 0.994);\n};\n","export const createQueue = () => {\n let isRunning = false;\n let pending = [];\n const next = () => {\n isRunning = true;\n const cb = pending.shift();\n if (cb) {\n return cb(next);\n }\n isRunning = false;\n };\n const clear = () => {\n isRunning = false;\n pending = [];\n };\n const queue = (cb) => {\n pending.push(cb);\n if (!isRunning && pending.length === 1) {\n next();\n }\n };\n return {\n clear,\n queue,\n };\n};\n","export const createTimeout = () => {\n let handle;\n const cancel = () => {\n console.log('cancel');\n if (handle) {\n window.cancelAnimationFrame(handle);\n }\n };\n const timeout = (callback, delay) => {\n let deltaTime;\n let start;\n const frame = (time) => {\n start = start || time;\n deltaTime = time - start;\n if (deltaTime > delay) {\n callback();\n return;\n }\n handle = window.requestAnimationFrame(frame);\n };\n handle = window.requestAnimationFrame(frame);\n };\n return {\n cancel,\n timeout,\n };\n};\n","import { useCallback, useEffect, useRef } from 'react';\nimport { useEffectOnce, useGetSetState, useUpdateEffect } from 'react-use';\nimport { clamp } from './clamp';\nimport { increment } from './increment';\n// import { clear as clearQueue, queue } from './queue'\nimport { createQueue } from './queue';\n// import { cancel as cancelCurrentTimeout, timeout } from './timeout'\nimport { createTimeout } from './timeout';\n/* istanbul ignore next */\nconst noop = () => undefined;\n// const initialState: State = {\n// isFinished: true,\n// progress: 0,\n// sideEffect: noop,\n// }\n// const cleanup = () => {\n// cancelCurrentTimeout()\n// clearQueue()\n// }\nexport const useNProgress = ({ animationDuration = 200, incrementDuration = 800, isAnimating = false, minimum = 0.08, } = {}) => {\n const initialState = {\n isFinished: true,\n progress: 0,\n sideEffect: noop,\n };\n const [get, setState] = useGetSetState(initialState);\n const { clear: clearQueue, queue } = createQueue();\n const { cancel: cancelCurrentTimeout, timeout } = createTimeout();\n const cleanup = () => {\n cancelCurrentTimeout();\n clearQueue();\n };\n const set = useCallback((n) => {\n n = clamp(n, minimum, 1);\n if (n === 1) {\n cleanup();\n queue((next) => {\n setState({\n progress: n,\n sideEffect: () => timeout(next, animationDuration),\n });\n });\n queue(() => {\n setState({ isFinished: true, sideEffect: cleanup });\n });\n return;\n }\n queue((next) => {\n setState({\n isFinished: false,\n progress: n,\n sideEffect: () => timeout(next, animationDuration),\n });\n });\n }, [animationDuration, minimum, setState]);\n const trickle = useCallback(() => {\n set(increment(get().progress));\n }, [get, set]);\n const start = useCallback(() => {\n const work = () => {\n trickle();\n queue((next) => {\n timeout(() => {\n work();\n next();\n }, incrementDuration);\n });\n };\n work();\n }, [incrementDuration, trickle]);\n const savedTrickle = useRef(noop);\n const sideEffect = get().sideEffect;\n useEffect(() => {\n savedTrickle.current = trickle;\n });\n useEffectOnce(() => {\n if (isAnimating) {\n start();\n }\n return cleanup;\n });\n useUpdateEffect(() => {\n get().sideEffect();\n }, [get, sideEffect]);\n useUpdateEffect(() => {\n if (!isAnimating) {\n set(1);\n }\n else {\n setState({\n ...initialState,\n sideEffect: start,\n });\n }\n }, [isAnimating, set, setState, start]);\n return {\n animationDuration,\n isFinished: get().isFinished,\n progress: get().progress,\n };\n};\n","import { useNProgress } from './useNProgress';\nexport const NProgress = ({ children, ...restProps }) => {\n const renderProps = useNProgress(restProps);\n return children(renderProps);\n};\n","import hoistNonReactStatics from 'hoist-non-react-statics';\nimport * as React from 'react';\nimport { useNProgress } from './useNProgress';\nexport function withNProgress(BaseComponent) {\n const WithNProgress = (props) => {\n const hookProps = useNProgress(props);\n return React.createElement(BaseComponent, { ...props, ...hookProps });\n };\n hoistNonReactStatics(WithNProgress, BaseComponent);\n return WithNProgress;\n}\n"],"names":["clamp","num","lower","upper","increment","progress","amount","createQueue","isRunning","pending","next","cb","shift","clear","queue","push","length","createTimeout","handle","cancel","console","log","window","cancelAnimationFrame","timeout","callback","delay","deltaTime","start","frame","time","requestAnimationFrame","noop","undefined","useNProgress","animationDuration","incrementDuration","isAnimating","minimum","initialState","isFinished","sideEffect","useGetSetState","get","setState","clearQueue","cancelCurrentTimeout","cleanup","set","useCallback","n","trickle","work","savedTrickle","useRef","useEffect","current","useEffectOnce","useUpdateEffect","NProgress","children","restProps","renderProps","withNProgress","BaseComponent","WithNProgress","props","hookProps","React","createElement","hoistNonReactStatics"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _objectWithoutPropertiesLoose=require("@babel/runtime/helpers/objectWithoutPropertiesLoose"),_extends=require("@babel/runtime/helpers/extends"),React=require("react"),reactUse=require("react-use"),hoistNonReactStatics=require("hoist-non-react-statics");function _interopDefaultLegacy(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var i=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,i.get?i:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var handle,_objectWithoutPropertiesLoose__default=_interopDefaultLegacy(_objectWithoutPropertiesLoose),_extends__default=_interopDefaultLegacy(_extends),React__namespace=_interopNamespace(React),hoistNonReactStatics__default=_interopDefaultLegacy(hoistNonReactStatics),clamp=function(e,t,n){return e=(e=e<=n?e:n)>=t?e:t},increment=function(e){var t=0;return e>=0&&e<.2?t=.1:e>=.2&&e<.5?t=.04:e>=.5&&e<.8?t=.02:e>=.8&&e<.99&&(t=.005),clamp(e+t,0,.994)},isRunning=!1,pending=[],next=function e(){isRunning=!0;var t=pending.shift();if(t)return t(e);isRunning=!1},clear=function(){isRunning=!1,pending=[]},queue=function(e){pending.push(e),isRunning||1!==pending.length||next()},cancel=function(){handle&&window.cancelAnimationFrame(handle)},timeout=function(e,t){var n;handle=window.requestAnimationFrame((function i(r){r-(n=n||r)>t?e():handle=window.requestAnimationFrame(i)}))},noop=function(){},initialState={isFinished:!0,progress:0,sideEffect:noop},cleanup=function(){cancel(),clear()},useNProgress=function(e){var t=void 0===e?{}:e,n=t.animationDuration,i=void 0===n?200:n,r=t.incrementDuration,u=void 0===r?800:r,o=t.isAnimating,s=void 0!==o&&o,c=t.minimum,a=void 0===c?.08:c,f=reactUse.useGetSetState(initialState),d=f[0],l=f[1],p=React.useCallback((function(e){if(1===(e=clamp(e,a,1)))return cleanup(),queue((function(t){l({progress:e,sideEffect:function(){return timeout(t,i)}})})),void queue((function(){l({isFinished:!0,sideEffect:cleanup})}));queue((function(t){l({isFinished:!1,progress:e,sideEffect:function(){return timeout(t,i)}})}))}),[i,a,l]),_=React.useCallback((function(){p(increment(d().progress))}),[d,p]),g=React.useCallback((function(){!function e(){_(),queue((function(t){timeout((function(){e(),t()}),u)}))}()}),[u,_]),h=React.useRef(noop),m=d().sideEffect;return React.useEffect((function(){h.current=_})),reactUse.useEffectOnce((function(){return s&&g(),cleanup})),reactUse.useUpdateEffect((function(){d().sideEffect()}),[d,m]),reactUse.useUpdateEffect((function(){s?l(_extends__default.default({},initialState,{sideEffect:g})):p(1)}),[s,p,l,g]),{animationDuration:i,isFinished:d().isFinished,progress:d().progress}},_excluded=["children"],NProgress=function(e){var t=e.children,n=_objectWithoutPropertiesLoose__default.default(e,_excluded);return t(useNProgress(n))};function withNProgress(e){var t=function(t){var n=useNProgress(t);return React__namespace.createElement(e,_extends__default.default({},t,n))};return hoistNonReactStatics__default.default(t,e),t}exports.NProgress=NProgress,exports.useNProgress=useNProgress,exports.withNProgress=withNProgress;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _objectWithoutPropertiesLoose=require("@babel/runtime/helpers/objectWithoutPropertiesLoose"),_extends=require("@babel/runtime/helpers/extends"),React=require("react"),reactUse=require("react-use"),hoistNonReactStatics=require("hoist-non-react-statics");function _interopDefaultLegacy(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var _objectWithoutPropertiesLoose__default=_interopDefaultLegacy(_objectWithoutPropertiesLoose),_extends__default=_interopDefaultLegacy(_extends),React__namespace=_interopNamespace(React),hoistNonReactStatics__default=_interopDefaultLegacy(hoistNonReactStatics),clamp=function(e,t,n){return e=(e=e<=n?e:n)>=t?e:t},increment=function(e){var t=0;return e>=0&&e<.2?t=.1:e>=.2&&e<.5?t=.04:e>=.5&&e<.8?t=.02:e>=.8&&e<.99&&(t=.005),clamp(e+t,0,.994)},createQueue=function(){var e=!1,t=[],n=function n(){e=!0;var r=t.shift();if(r)return r(n);e=!1};return{clear:function(){e=!1,t=[]},queue:function(r){t.push(r),e||1!==t.length||n()}}},createTimeout=function(){var e;return{cancel:function(){console.log("cancel"),e&&window.cancelAnimationFrame(e)},timeout:function(t,n){var r;e=window.requestAnimationFrame((function i(o){o-(r=r||o)>n?t():e=window.requestAnimationFrame(i)}))}}},noop=function(){},useNProgress=function(e){var t=void 0===e?{}:e,n=t.animationDuration,r=void 0===n?200:n,i=t.incrementDuration,o=void 0===i?800:i,c=t.isAnimating,u=void 0!==c&&c,s=t.minimum,a=void 0===s?.08:s,f={isFinished:!0,progress:0,sideEffect:noop},d=reactUse.useGetSetState(f),l=d[0],p=d[1],_=createQueue(),m=_.clear,g=_.queue,h=createTimeout(),b=h.cancel,v=h.timeout,P=function(){b(),m()},N=React.useCallback((function(e){if(1===(e=clamp(e,a,1)))return P(),g((function(t){p({progress:e,sideEffect:function(){return v(t,r)}})})),void g((function(){p({isFinished:!0,sideEffect:P})}));g((function(t){p({isFinished:!1,progress:e,sideEffect:function(){return v(t,r)}})}))}),[r,a,p]),R=React.useCallback((function(){N(increment(l().progress))}),[l,N]),E=React.useCallback((function(){!function e(){R(),g((function(t){v((function(){e(),t()}),o)}))}()}),[o,R]),j=React.useRef(noop),x=l().sideEffect;return React.useEffect((function(){j.current=R})),reactUse.useEffectOnce((function(){return u&&E(),P})),reactUse.useUpdateEffect((function(){l().sideEffect()}),[l,x]),reactUse.useUpdateEffect((function(){u?p(_extends__default.default({},f,{sideEffect:E})):N(1)}),[u,N,p,E]),{animationDuration:r,isFinished:l().isFinished,progress:l().progress}},_excluded=["children"],NProgress=function(e){var t=e.children,n=_objectWithoutPropertiesLoose__default.default(e,_excluded);return t(useNProgress(n))};function withNProgress(e){var t=function(t){var n=useNProgress(t);return React__namespace.createElement(e,_extends__default.default({},t,n))};return hoistNonReactStatics__default.default(t,e),t}exports.NProgress=NProgress,exports.useNProgress=useNProgress,exports.withNProgress=withNProgress;
2
2
  //# sourceMappingURL=react-nprogress.cjs.production.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"react-nprogress.cjs.production.js","sources":["../compiled/timeout.js","../compiled/clamp.js","../compiled/increment.js","../compiled/queue.js","../compiled/useNProgress.js","../compiled/NProgress.js","../compiled/withNProgress.js"],"sourcesContent":["let handle;\nexport const cancel = () => {\n if (handle) {\n window.cancelAnimationFrame(handle);\n }\n};\nexport const timeout = (callback, delay) => {\n let deltaTime;\n let start;\n const frame = (time) => {\n start = start || time;\n deltaTime = time - start;\n if (deltaTime > delay) {\n callback();\n return;\n }\n handle = window.requestAnimationFrame(frame);\n };\n handle = window.requestAnimationFrame(frame);\n};\n","export const clamp = (num, lower, upper) => {\n num = num <= upper ? num : upper;\n num = num >= lower ? num : lower;\n return num;\n};\n","import { clamp } from './clamp';\nexport const increment = (progress) => {\n let amount = 0;\n if (progress >= 0 && progress < 0.2) {\n amount = 0.1;\n }\n else if (progress >= 0.2 && progress < 0.5) {\n amount = 0.04;\n }\n else if (progress >= 0.5 && progress < 0.8) {\n amount = 0.02;\n }\n else if (progress >= 0.8 && progress < 0.99) {\n amount = 0.005;\n }\n return clamp(progress + amount, 0, 0.994);\n};\n","let isRunning = false;\nlet pending = [];\nconst next = () => {\n isRunning = true;\n const cb = pending.shift();\n if (cb) {\n return cb(next);\n }\n isRunning = false;\n};\nexport const clear = () => {\n isRunning = false;\n pending = [];\n};\nexport const queue = (cb) => {\n pending.push(cb);\n if (!isRunning && pending.length === 1) {\n next();\n }\n};\n","import { useCallback, useEffect, useRef } from 'react';\nimport { useEffectOnce, useGetSetState, useUpdateEffect } from 'react-use';\nimport { clamp } from './clamp';\nimport { increment } from './increment';\nimport { clear as clearQueue, queue } from './queue';\nimport { cancel as cancelCurrentTimeout, timeout } from './timeout';\n/* istanbul ignore next */\nconst noop = () => undefined;\nconst initialState = {\n isFinished: true,\n progress: 0,\n sideEffect: noop,\n};\nconst cleanup = () => {\n cancelCurrentTimeout();\n clearQueue();\n};\nexport const useNProgress = ({ animationDuration = 200, incrementDuration = 800, isAnimating = false, minimum = 0.08, } = {}) => {\n const [get, setState] = useGetSetState(initialState);\n const set = useCallback((n) => {\n n = clamp(n, minimum, 1);\n if (n === 1) {\n cleanup();\n queue((next) => {\n setState({\n progress: n,\n sideEffect: () => timeout(next, animationDuration),\n });\n });\n queue(() => {\n setState({ isFinished: true, sideEffect: cleanup });\n });\n return;\n }\n queue((next) => {\n setState({\n isFinished: false,\n progress: n,\n sideEffect: () => timeout(next, animationDuration),\n });\n });\n }, [animationDuration, minimum, setState]);\n const trickle = useCallback(() => {\n set(increment(get().progress));\n }, [get, set]);\n const start = useCallback(() => {\n const work = () => {\n trickle();\n queue((next) => {\n timeout(() => {\n work();\n next();\n }, incrementDuration);\n });\n };\n work();\n }, [incrementDuration, trickle]);\n const savedTrickle = useRef(noop);\n const sideEffect = get().sideEffect;\n useEffect(() => {\n savedTrickle.current = trickle;\n });\n useEffectOnce(() => {\n if (isAnimating) {\n start();\n }\n return cleanup;\n });\n useUpdateEffect(() => {\n get().sideEffect();\n }, [get, sideEffect]);\n useUpdateEffect(() => {\n if (!isAnimating) {\n set(1);\n }\n else {\n setState({\n ...initialState,\n sideEffect: start,\n });\n }\n }, [isAnimating, set, setState, start]);\n return {\n animationDuration,\n isFinished: get().isFinished,\n progress: get().progress,\n };\n};\n","import { useNProgress } from './useNProgress';\nexport const NProgress = ({ children, ...restProps }) => {\n const renderProps = useNProgress(restProps);\n return children(renderProps);\n};\n","import hoistNonReactStatics from 'hoist-non-react-statics';\nimport * as React from 'react';\nimport { useNProgress } from './useNProgress';\nexport function withNProgress(BaseComponent) {\n const WithNProgress = (props) => {\n const hookProps = useNProgress(props);\n return React.createElement(BaseComponent, { ...props, ...hookProps });\n };\n hoistNonReactStatics(WithNProgress, BaseComponent);\n return WithNProgress;\n}\n"],"names":["handle","clamp","num","lower","upper","increment","progress","amount","isRunning","pending","next","cb","shift","clear","queue","push","length","cancel","window","cancelAnimationFrame","timeout","callback","delay","start","requestAnimationFrame","frame","time","noop","initialState","isFinished","sideEffect","cleanup","cancelCurrentTimeout","clearQueue","useNProgress","animationDuration","incrementDuration","isAnimating","minimum","useGetSetState","get","setState","set","useCallback","n","trickle","work","savedTrickle","useRef","useEffect","current","useEffectOnce","useUpdateEffect","NProgress","children","restProps","withNProgress","BaseComponent","WithNProgress","props","hookProps","React","createElement","hoistNonReactStatics"],"mappings":"otBAAIA,yQCASC,MAAQ,SAACC,EAAKC,EAAOC,UAE9BF,GADAA,EAAMA,GAAOE,EAAQF,EAAME,IACdD,EAAQD,EAAMC,GCDlBE,UAAY,SAACC,OAClBC,EAAS,SACTD,GAAY,GAAKA,EAAW,GAC5BC,EAAS,GAEJD,GAAY,IAAOA,EAAW,GACnCC,EAAS,IAEJD,GAAY,IAAOA,EAAW,GACnCC,EAAS,IAEJD,GAAY,IAAOA,EAAW,MACnCC,EAAS,MAENN,MAAMK,EAAWC,EAAQ,EAAG,OCfnCC,WAAY,EACZC,QAAU,GACRC,KAAO,SAAPA,IACFF,WAAY,MACNG,EAAKF,QAAQG,WACfD,SACOA,EAAGD,GAEdF,WAAY,GAEHK,MAAQ,WACjBL,WAAY,EACZC,QAAU,IAEDK,MAAQ,SAACH,GAClBF,QAAQM,KAAKJ,GACRH,WAAgC,IAAnBC,QAAQO,QACtBN,QHhBKO,OAAS,WACdjB,QACAkB,OAAOC,qBAAqBnB,SAGvBoB,QAAU,SAACC,EAAUC,OAE1BC,EAUJvB,OAASkB,OAAOM,uBATF,SAARC,EAASC,GAECA,GADZH,EAAQA,GAASG,GAEDJ,EACZD,IAGJrB,OAASkB,OAAOM,sBAAsBC,OITxCE,KAAO,aACPC,aAAe,CACjBC,YAAY,EACZvB,SAAU,EACVwB,WAAYH,MAEVI,QAAU,WACZC,SACAC,SAESC,aAAe,6BAA8F,SAA3FC,kBAAAA,aAAoB,UAAKC,kBAAAA,aAAoB,UAAKC,YAAAA,oBAAqBC,QAAAA,aAAU,QACpFC,wBAAeX,cAAhCY,OAAKC,OACNC,EAAMC,mBAAY,SAACC,MAEX,KADVA,EAAI3C,MAAM2C,EAAGN,EAAS,WAElBP,UACAjB,OAAM,SAACJ,GACH+B,EAAS,CACLnC,SAAUsC,EACVd,WAAY,kBAAMV,QAAQV,EAAMyB,cAGxCrB,OAAM,WACF2B,EAAS,CAAEZ,YAAY,EAAMC,WAAYC,aAIjDjB,OAAM,SAACJ,GACH+B,EAAS,CACLZ,YAAY,EACZvB,SAAUsC,EACVd,WAAY,kBAAMV,QAAQV,EAAMyB,WAGzC,CAACA,EAAmBG,EAASG,IAC1BI,EAAUF,mBAAY,WACxBD,EAAIrC,UAAUmC,IAAMlC,aACrB,CAACkC,EAAKE,IACHnB,EAAQoB,mBAAY,YACT,SAAPG,IACFD,IACA/B,OAAM,SAACJ,GACHU,SAAQ,WACJ0B,IACApC,MACD0B,MAGXU,KACD,CAACV,EAAmBS,IACjBE,EAAeC,aAAOrB,MACtBG,EAAaU,IAAMV,kBACzBmB,iBAAU,WACNF,EAAaG,QAAUL,KAE3BM,wBAAc,kBACNd,GACAd,IAEGQ,WAEXqB,0BAAgB,WACZZ,IAAMV,eACP,CAACU,EAAKV,IACTsB,0BAAgB,WACPf,EAIDI,+BACOb,cACHE,WAAYP,KALhBmB,EAAI,KAQT,CAACL,EAAaK,EAAKD,EAAUlB,IACzB,CACHY,kBAAAA,EACAN,WAAYW,IAAMX,WAClBvB,SAAUkC,IAAMlC,kCCpFX+C,UAAY,gBAAGC,IAAAA,SAAaC,qEAE9BD,EADapB,aAAaqB,KCC9B,SAASC,cAAcC,OACpBC,EAAgB,SAACC,OACbC,EAAY1B,aAAayB,UACxBE,iBAAMC,cAAcL,+BAAoBE,EAAUC,YAE7DG,sCAAqBL,EAAeD,GAC7BC"}
1
+ {"version":3,"file":"react-nprogress.cjs.production.js","sources":["../compiled/clamp.js","../compiled/increment.js","../compiled/queue.js","../compiled/timeout.js","../compiled/useNProgress.js","../compiled/NProgress.js","../compiled/withNProgress.js"],"sourcesContent":["export const clamp = (num, lower, upper) => {\n num = num <= upper ? num : upper;\n num = num >= lower ? num : lower;\n return num;\n};\n","import { clamp } from './clamp';\nexport const increment = (progress) => {\n let amount = 0;\n if (progress >= 0 && progress < 0.2) {\n amount = 0.1;\n }\n else if (progress >= 0.2 && progress < 0.5) {\n amount = 0.04;\n }\n else if (progress >= 0.5 && progress < 0.8) {\n amount = 0.02;\n }\n else if (progress >= 0.8 && progress < 0.99) {\n amount = 0.005;\n }\n return clamp(progress + amount, 0, 0.994);\n};\n","export const createQueue = () => {\n let isRunning = false;\n let pending = [];\n const next = () => {\n isRunning = true;\n const cb = pending.shift();\n if (cb) {\n return cb(next);\n }\n isRunning = false;\n };\n const clear = () => {\n isRunning = false;\n pending = [];\n };\n const queue = (cb) => {\n pending.push(cb);\n if (!isRunning && pending.length === 1) {\n next();\n }\n };\n return {\n clear,\n queue,\n };\n};\n","export const createTimeout = () => {\n let handle;\n const cancel = () => {\n console.log('cancel');\n if (handle) {\n window.cancelAnimationFrame(handle);\n }\n };\n const timeout = (callback, delay) => {\n let deltaTime;\n let start;\n const frame = (time) => {\n start = start || time;\n deltaTime = time - start;\n if (deltaTime > delay) {\n callback();\n return;\n }\n handle = window.requestAnimationFrame(frame);\n };\n handle = window.requestAnimationFrame(frame);\n };\n return {\n cancel,\n timeout,\n };\n};\n","import { useCallback, useEffect, useRef } from 'react';\nimport { useEffectOnce, useGetSetState, useUpdateEffect } from 'react-use';\nimport { clamp } from './clamp';\nimport { increment } from './increment';\n// import { clear as clearQueue, queue } from './queue'\nimport { createQueue } from './queue';\n// import { cancel as cancelCurrentTimeout, timeout } from './timeout'\nimport { createTimeout } from './timeout';\n/* istanbul ignore next */\nconst noop = () => undefined;\n// const initialState: State = {\n// isFinished: true,\n// progress: 0,\n// sideEffect: noop,\n// }\n// const cleanup = () => {\n// cancelCurrentTimeout()\n// clearQueue()\n// }\nexport const useNProgress = ({ animationDuration = 200, incrementDuration = 800, isAnimating = false, minimum = 0.08, } = {}) => {\n const initialState = {\n isFinished: true,\n progress: 0,\n sideEffect: noop,\n };\n const [get, setState] = useGetSetState(initialState);\n const { clear: clearQueue, queue } = createQueue();\n const { cancel: cancelCurrentTimeout, timeout } = createTimeout();\n const cleanup = () => {\n cancelCurrentTimeout();\n clearQueue();\n };\n const set = useCallback((n) => {\n n = clamp(n, minimum, 1);\n if (n === 1) {\n cleanup();\n queue((next) => {\n setState({\n progress: n,\n sideEffect: () => timeout(next, animationDuration),\n });\n });\n queue(() => {\n setState({ isFinished: true, sideEffect: cleanup });\n });\n return;\n }\n queue((next) => {\n setState({\n isFinished: false,\n progress: n,\n sideEffect: () => timeout(next, animationDuration),\n });\n });\n }, [animationDuration, minimum, setState]);\n const trickle = useCallback(() => {\n set(increment(get().progress));\n }, [get, set]);\n const start = useCallback(() => {\n const work = () => {\n trickle();\n queue((next) => {\n timeout(() => {\n work();\n next();\n }, incrementDuration);\n });\n };\n work();\n }, [incrementDuration, trickle]);\n const savedTrickle = useRef(noop);\n const sideEffect = get().sideEffect;\n useEffect(() => {\n savedTrickle.current = trickle;\n });\n useEffectOnce(() => {\n if (isAnimating) {\n start();\n }\n return cleanup;\n });\n useUpdateEffect(() => {\n get().sideEffect();\n }, [get, sideEffect]);\n useUpdateEffect(() => {\n if (!isAnimating) {\n set(1);\n }\n else {\n setState({\n ...initialState,\n sideEffect: start,\n });\n }\n }, [isAnimating, set, setState, start]);\n return {\n animationDuration,\n isFinished: get().isFinished,\n progress: get().progress,\n };\n};\n","import { useNProgress } from './useNProgress';\nexport const NProgress = ({ children, ...restProps }) => {\n const renderProps = useNProgress(restProps);\n return children(renderProps);\n};\n","import hoistNonReactStatics from 'hoist-non-react-statics';\nimport * as React from 'react';\nimport { useNProgress } from './useNProgress';\nexport function withNProgress(BaseComponent) {\n const WithNProgress = (props) => {\n const hookProps = useNProgress(props);\n return React.createElement(BaseComponent, { ...props, ...hookProps });\n };\n hoistNonReactStatics(WithNProgress, BaseComponent);\n return WithNProgress;\n}\n"],"names":["clamp","num","lower","upper","increment","progress","amount","createQueue","isRunning","pending","next","cb","shift","clear","queue","push","length","createTimeout","handle","cancel","console","log","window","cancelAnimationFrame","timeout","callback","delay","start","requestAnimationFrame","frame","time","noop","useNProgress","animationDuration","incrementDuration","isAnimating","minimum","initialState","isFinished","sideEffect","useGetSetState","get","setState","clearQueue","cancelCurrentTimeout","cleanup","set","useCallback","n","trickle","work","savedTrickle","useRef","useEffect","current","useEffectOnce","useUpdateEffect","NProgress","children","restProps","withNProgress","BaseComponent","WithNProgress","props","hookProps","React","createElement","hoistNonReactStatics"],"mappings":"s9BAAaA,MAAQ,SAACC,EAAKC,EAAOC,UAE9BF,GADAA,EAAMA,GAAOE,EAAQF,EAAME,IACdD,EAAQD,EAAMC,GCDlBE,UAAY,SAACC,OAClBC,EAAS,SACTD,GAAY,GAAKA,EAAW,GAC5BC,EAAS,GAEJD,GAAY,IAAOA,EAAW,GACnCC,EAAS,IAEJD,GAAY,IAAOA,EAAW,GACnCC,EAAS,IAEJD,GAAY,IAAOA,EAAW,MACnCC,EAAS,MAENN,MAAMK,EAAWC,EAAQ,EAAG,OCf1BC,YAAc,eACnBC,GAAY,EACZC,EAAU,GACRC,EAAO,SAAPA,IACFF,GAAY,MACNG,EAAKF,EAAQG,WACfD,SACOA,EAAGD,GAEdF,GAAY,SAYT,CACHK,MAXU,WACVL,GAAY,EACZC,EAAU,IAUVK,MARU,SAACH,GACXF,EAAQM,KAAKJ,GACRH,GAAgC,IAAnBC,EAAQO,QACtBN,OClBCO,cAAgB,eACrBC,QAqBG,CACHC,OArBW,WACXC,QAAQC,IAAI,UACRH,GACAI,OAAOC,qBAAqBL,IAmBhCM,QAhBY,SAACC,EAAUC,OAEnBC,EAUJT,EAASI,OAAOM,uBATF,SAARC,EAASC,GAECA,GADZH,EAAQA,GAASG,GAEDJ,EACZD,IAGJP,EAASI,OAAOM,sBAAsBC,SCT5CE,KAAO,aAUAC,aAAe,6BAA8F,SAA3FC,kBAAAA,aAAoB,UAAKC,kBAAAA,aAAoB,UAAKC,YAAAA,oBAAqBC,QAAAA,aAAU,MACtGC,EAAe,CACjBC,YAAY,EACZjC,SAAU,EACVkC,WAAYR,QAEQS,wBAAeH,GAAhCI,OAAKC,SACyBnC,cAAtBoC,IAAP9B,MAAmBC,IAAAA,QACuBG,gBAAlC2B,IAARzB,OAA8BK,IAAAA,QAChCqB,EAAU,WACZD,IACAD,KAEEG,EAAMC,mBAAY,SAACC,MAEX,KADVA,EAAIhD,MAAMgD,EAAGZ,EAAS,WAElBS,IACA/B,GAAM,SAACJ,GACHgC,EAAS,CACLrC,SAAU2C,EACVT,WAAY,kBAAMf,EAAQd,EAAMuB,cAGxCnB,GAAM,WACF4B,EAAS,CAAEJ,YAAY,EAAMC,WAAYM,OAIjD/B,GAAM,SAACJ,GACHgC,EAAS,CACLJ,YAAY,EACZjC,SAAU2C,EACVT,WAAY,kBAAMf,EAAQd,EAAMuB,WAGzC,CAACA,EAAmBG,EAASM,IAC1BO,EAAUF,mBAAY,WACxBD,EAAI1C,UAAUqC,IAAMpC,aACrB,CAACoC,EAAKK,IACHnB,EAAQoB,mBAAY,YACT,SAAPG,IACFD,IACAnC,GAAM,SAACJ,GACHc,GAAQ,WACJ0B,IACAxC,MACDwB,MAGXgB,KACD,CAAChB,EAAmBe,IACjBE,EAAeC,aAAOrB,MACtBQ,EAAaE,IAAMF,kBACzBc,iBAAU,WACNF,EAAaG,QAAUL,KAE3BM,wBAAc,kBACNpB,GACAR,IAEGkB,KAEXW,0BAAgB,WACZf,IAAMF,eACP,CAACE,EAAKF,IACTiB,0BAAgB,WACPrB,EAIDO,+BACOL,GACHE,WAAYZ,KALhBmB,EAAI,KAQT,CAACX,EAAaW,EAAKJ,EAAUf,IACzB,CACHM,kBAAAA,EACAK,WAAYG,IAAMH,WAClBjC,SAAUoC,IAAMpC,kCCjGXoD,UAAY,gBAAGC,IAAAA,SAAaC,qEAE9BD,EADa1B,aAAa2B,KCC9B,SAASC,cAAcC,OACpBC,EAAgB,SAACC,OACbC,EAAYhC,aAAa+B,UACxBE,iBAAMC,cAAcL,+BAAoBE,EAAUC,YAE7DG,sCAAqBL,EAAeD,GAC7BC"}
@@ -27,73 +27,90 @@ var increment = function increment(progress) {
27
27
  return clamp(progress + amount, 0, 0.994);
28
28
  };
29
29
 
30
- var isRunning = false;
31
- var pending = [];
30
+ var createQueue = function createQueue() {
31
+ var isRunning = false;
32
+ var pending = [];
32
33
 
33
- var next = function next() {
34
- isRunning = true;
35
- var cb = pending.shift();
34
+ var next = function next() {
35
+ isRunning = true;
36
+ var cb = pending.shift();
36
37
 
37
- if (cb) {
38
- return cb(next);
39
- }
38
+ if (cb) {
39
+ return cb(next);
40
+ }
40
41
 
41
- isRunning = false;
42
- };
42
+ isRunning = false;
43
+ };
43
44
 
44
- var clear = function clear() {
45
- isRunning = false;
46
- pending = [];
47
- };
48
- var queue = function queue(cb) {
49
- pending.push(cb);
45
+ var clear = function clear() {
46
+ isRunning = false;
47
+ pending = [];
48
+ };
50
49
 
51
- if (!isRunning && pending.length === 1) {
52
- next();
53
- }
54
- };
50
+ var queue = function queue(cb) {
51
+ pending.push(cb);
55
52
 
56
- var handle;
57
- var cancel = function cancel() {
58
- if (handle) {
59
- window.cancelAnimationFrame(handle);
60
- }
53
+ if (!isRunning && pending.length === 1) {
54
+ next();
55
+ }
56
+ };
57
+
58
+ return {
59
+ clear: clear,
60
+ queue: queue
61
+ };
61
62
  };
62
- var timeout = function timeout(callback, delay) {
63
- var deltaTime;
64
- var start;
65
63
 
66
- var frame = function frame(time) {
67
- start = start || time;
68
- deltaTime = time - start;
64
+ var createTimeout = function createTimeout() {
65
+ var handle;
69
66
 
70
- if (deltaTime > delay) {
71
- callback();
72
- return;
67
+ var cancel = function cancel() {
68
+ console.log('cancel');
69
+
70
+ if (handle) {
71
+ window.cancelAnimationFrame(handle);
73
72
  }
73
+ };
74
+
75
+ var timeout = function timeout(callback, delay) {
76
+ var deltaTime;
77
+ var start;
78
+
79
+ var frame = function frame(time) {
80
+ start = start || time;
81
+ deltaTime = time - start;
82
+
83
+ if (deltaTime > delay) {
84
+ callback();
85
+ return;
86
+ }
87
+
88
+ handle = window.requestAnimationFrame(frame);
89
+ };
74
90
 
75
91
  handle = window.requestAnimationFrame(frame);
76
92
  };
77
93
 
78
- handle = window.requestAnimationFrame(frame);
94
+ return {
95
+ cancel: cancel,
96
+ timeout: timeout
97
+ };
79
98
  };
80
99
 
81
100
  /* istanbul ignore next */
82
101
 
83
102
  var noop = function noop() {
84
103
  return undefined;
85
- };
104
+ }; // const initialState: State = {
105
+ // isFinished: true,
106
+ // progress: 0,
107
+ // sideEffect: noop,
108
+ // }
109
+ // const cleanup = () => {
110
+ // cancelCurrentTimeout()
111
+ // clearQueue()
112
+ // }
86
113
 
87
- var initialState = {
88
- isFinished: true,
89
- progress: 0,
90
- sideEffect: noop
91
- };
92
-
93
- var cleanup = function cleanup() {
94
- cancel();
95
- clear();
96
- };
97
114
 
98
115
  var useNProgress = function useNProgress(_temp) {
99
116
  var _ref = _temp === void 0 ? {} : _temp,
@@ -106,10 +123,29 @@ var useNProgress = function useNProgress(_temp) {
106
123
  _ref$minimum = _ref.minimum,
107
124
  minimum = _ref$minimum === void 0 ? 0.08 : _ref$minimum;
108
125
 
126
+ var initialState = {
127
+ isFinished: true,
128
+ progress: 0,
129
+ sideEffect: noop
130
+ };
131
+
109
132
  var _useGetSetState = useGetSetState(initialState),
110
133
  get = _useGetSetState[0],
111
134
  setState = _useGetSetState[1];
112
135
 
136
+ var _createQueue = createQueue(),
137
+ clearQueue = _createQueue.clear,
138
+ queue = _createQueue.queue;
139
+
140
+ var _createTimeout = createTimeout(),
141
+ cancelCurrentTimeout = _createTimeout.cancel,
142
+ timeout = _createTimeout.timeout;
143
+
144
+ var cleanup = function cleanup() {
145
+ cancelCurrentTimeout();
146
+ clearQueue();
147
+ };
148
+
113
149
  var set = useCallback(function (n) {
114
150
  n = clamp(n, minimum, 1);
115
151
 
@@ -1 +1 @@
1
- {"version":3,"file":"react-nprogress.esm.js","sources":["../compiled/clamp.js","../compiled/increment.js","../compiled/queue.js","../compiled/timeout.js","../compiled/useNProgress.js","../compiled/NProgress.js","../compiled/withNProgress.js"],"sourcesContent":["export const clamp = (num, lower, upper) => {\n num = num <= upper ? num : upper;\n num = num >= lower ? num : lower;\n return num;\n};\n","import { clamp } from './clamp';\nexport const increment = (progress) => {\n let amount = 0;\n if (progress >= 0 && progress < 0.2) {\n amount = 0.1;\n }\n else if (progress >= 0.2 && progress < 0.5) {\n amount = 0.04;\n }\n else if (progress >= 0.5 && progress < 0.8) {\n amount = 0.02;\n }\n else if (progress >= 0.8 && progress < 0.99) {\n amount = 0.005;\n }\n return clamp(progress + amount, 0, 0.994);\n};\n","let isRunning = false;\nlet pending = [];\nconst next = () => {\n isRunning = true;\n const cb = pending.shift();\n if (cb) {\n return cb(next);\n }\n isRunning = false;\n};\nexport const clear = () => {\n isRunning = false;\n pending = [];\n};\nexport const queue = (cb) => {\n pending.push(cb);\n if (!isRunning && pending.length === 1) {\n next();\n }\n};\n","let handle;\nexport const cancel = () => {\n if (handle) {\n window.cancelAnimationFrame(handle);\n }\n};\nexport const timeout = (callback, delay) => {\n let deltaTime;\n let start;\n const frame = (time) => {\n start = start || time;\n deltaTime = time - start;\n if (deltaTime > delay) {\n callback();\n return;\n }\n handle = window.requestAnimationFrame(frame);\n };\n handle = window.requestAnimationFrame(frame);\n};\n","import { useCallback, useEffect, useRef } from 'react';\nimport { useEffectOnce, useGetSetState, useUpdateEffect } from 'react-use';\nimport { clamp } from './clamp';\nimport { increment } from './increment';\nimport { clear as clearQueue, queue } from './queue';\nimport { cancel as cancelCurrentTimeout, timeout } from './timeout';\n/* istanbul ignore next */\nconst noop = () => undefined;\nconst initialState = {\n isFinished: true,\n progress: 0,\n sideEffect: noop,\n};\nconst cleanup = () => {\n cancelCurrentTimeout();\n clearQueue();\n};\nexport const useNProgress = ({ animationDuration = 200, incrementDuration = 800, isAnimating = false, minimum = 0.08, } = {}) => {\n const [get, setState] = useGetSetState(initialState);\n const set = useCallback((n) => {\n n = clamp(n, minimum, 1);\n if (n === 1) {\n cleanup();\n queue((next) => {\n setState({\n progress: n,\n sideEffect: () => timeout(next, animationDuration),\n });\n });\n queue(() => {\n setState({ isFinished: true, sideEffect: cleanup });\n });\n return;\n }\n queue((next) => {\n setState({\n isFinished: false,\n progress: n,\n sideEffect: () => timeout(next, animationDuration),\n });\n });\n }, [animationDuration, minimum, setState]);\n const trickle = useCallback(() => {\n set(increment(get().progress));\n }, [get, set]);\n const start = useCallback(() => {\n const work = () => {\n trickle();\n queue((next) => {\n timeout(() => {\n work();\n next();\n }, incrementDuration);\n });\n };\n work();\n }, [incrementDuration, trickle]);\n const savedTrickle = useRef(noop);\n const sideEffect = get().sideEffect;\n useEffect(() => {\n savedTrickle.current = trickle;\n });\n useEffectOnce(() => {\n if (isAnimating) {\n start();\n }\n return cleanup;\n });\n useUpdateEffect(() => {\n get().sideEffect();\n }, [get, sideEffect]);\n useUpdateEffect(() => {\n if (!isAnimating) {\n set(1);\n }\n else {\n setState({\n ...initialState,\n sideEffect: start,\n });\n }\n }, [isAnimating, set, setState, start]);\n return {\n animationDuration,\n isFinished: get().isFinished,\n progress: get().progress,\n };\n};\n","import { useNProgress } from './useNProgress';\nexport const NProgress = ({ children, ...restProps }) => {\n const renderProps = useNProgress(restProps);\n return children(renderProps);\n};\n","import hoistNonReactStatics from 'hoist-non-react-statics';\nimport * as React from 'react';\nimport { useNProgress } from './useNProgress';\nexport function withNProgress(BaseComponent) {\n const WithNProgress = (props) => {\n const hookProps = useNProgress(props);\n return React.createElement(BaseComponent, { ...props, ...hookProps });\n };\n hoistNonReactStatics(WithNProgress, BaseComponent);\n return WithNProgress;\n}\n"],"names":["clamp","num","lower","upper","increment","progress","amount","isRunning","pending","next","cb","shift","clear","queue","push","length","handle","cancel","window","cancelAnimationFrame","timeout","callback","delay","deltaTime","start","frame","time","requestAnimationFrame","noop","undefined","initialState","isFinished","sideEffect","cleanup","cancelCurrentTimeout","clearQueue","useNProgress","animationDuration","incrementDuration","isAnimating","minimum","useGetSetState","get","setState","set","useCallback","n","trickle","work","savedTrickle","useRef","useEffect","current","useEffectOnce","useUpdateEffect","NProgress","children","restProps","renderProps","withNProgress","BaseComponent","WithNProgress","props","hookProps","React","createElement","hoistNonReactStatics"],"mappings":"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"}
1
+ {"version":3,"file":"react-nprogress.esm.js","sources":["../compiled/clamp.js","../compiled/increment.js","../compiled/queue.js","../compiled/timeout.js","../compiled/useNProgress.js","../compiled/NProgress.js","../compiled/withNProgress.js"],"sourcesContent":["export const clamp = (num, lower, upper) => {\n num = num <= upper ? num : upper;\n num = num >= lower ? num : lower;\n return num;\n};\n","import { clamp } from './clamp';\nexport const increment = (progress) => {\n let amount = 0;\n if (progress >= 0 && progress < 0.2) {\n amount = 0.1;\n }\n else if (progress >= 0.2 && progress < 0.5) {\n amount = 0.04;\n }\n else if (progress >= 0.5 && progress < 0.8) {\n amount = 0.02;\n }\n else if (progress >= 0.8 && progress < 0.99) {\n amount = 0.005;\n }\n return clamp(progress + amount, 0, 0.994);\n};\n","export const createQueue = () => {\n let isRunning = false;\n let pending = [];\n const next = () => {\n isRunning = true;\n const cb = pending.shift();\n if (cb) {\n return cb(next);\n }\n isRunning = false;\n };\n const clear = () => {\n isRunning = false;\n pending = [];\n };\n const queue = (cb) => {\n pending.push(cb);\n if (!isRunning && pending.length === 1) {\n next();\n }\n };\n return {\n clear,\n queue,\n };\n};\n","export const createTimeout = () => {\n let handle;\n const cancel = () => {\n console.log('cancel');\n if (handle) {\n window.cancelAnimationFrame(handle);\n }\n };\n const timeout = (callback, delay) => {\n let deltaTime;\n let start;\n const frame = (time) => {\n start = start || time;\n deltaTime = time - start;\n if (deltaTime > delay) {\n callback();\n return;\n }\n handle = window.requestAnimationFrame(frame);\n };\n handle = window.requestAnimationFrame(frame);\n };\n return {\n cancel,\n timeout,\n };\n};\n","import { useCallback, useEffect, useRef } from 'react';\nimport { useEffectOnce, useGetSetState, useUpdateEffect } from 'react-use';\nimport { clamp } from './clamp';\nimport { increment } from './increment';\n// import { clear as clearQueue, queue } from './queue'\nimport { createQueue } from './queue';\n// import { cancel as cancelCurrentTimeout, timeout } from './timeout'\nimport { createTimeout } from './timeout';\n/* istanbul ignore next */\nconst noop = () => undefined;\n// const initialState: State = {\n// isFinished: true,\n// progress: 0,\n// sideEffect: noop,\n// }\n// const cleanup = () => {\n// cancelCurrentTimeout()\n// clearQueue()\n// }\nexport const useNProgress = ({ animationDuration = 200, incrementDuration = 800, isAnimating = false, minimum = 0.08, } = {}) => {\n const initialState = {\n isFinished: true,\n progress: 0,\n sideEffect: noop,\n };\n const [get, setState] = useGetSetState(initialState);\n const { clear: clearQueue, queue } = createQueue();\n const { cancel: cancelCurrentTimeout, timeout } = createTimeout();\n const cleanup = () => {\n cancelCurrentTimeout();\n clearQueue();\n };\n const set = useCallback((n) => {\n n = clamp(n, minimum, 1);\n if (n === 1) {\n cleanup();\n queue((next) => {\n setState({\n progress: n,\n sideEffect: () => timeout(next, animationDuration),\n });\n });\n queue(() => {\n setState({ isFinished: true, sideEffect: cleanup });\n });\n return;\n }\n queue((next) => {\n setState({\n isFinished: false,\n progress: n,\n sideEffect: () => timeout(next, animationDuration),\n });\n });\n }, [animationDuration, minimum, setState]);\n const trickle = useCallback(() => {\n set(increment(get().progress));\n }, [get, set]);\n const start = useCallback(() => {\n const work = () => {\n trickle();\n queue((next) => {\n timeout(() => {\n work();\n next();\n }, incrementDuration);\n });\n };\n work();\n }, [incrementDuration, trickle]);\n const savedTrickle = useRef(noop);\n const sideEffect = get().sideEffect;\n useEffect(() => {\n savedTrickle.current = trickle;\n });\n useEffectOnce(() => {\n if (isAnimating) {\n start();\n }\n return cleanup;\n });\n useUpdateEffect(() => {\n get().sideEffect();\n }, [get, sideEffect]);\n useUpdateEffect(() => {\n if (!isAnimating) {\n set(1);\n }\n else {\n setState({\n ...initialState,\n sideEffect: start,\n });\n }\n }, [isAnimating, set, setState, start]);\n return {\n animationDuration,\n isFinished: get().isFinished,\n progress: get().progress,\n };\n};\n","import { useNProgress } from './useNProgress';\nexport const NProgress = ({ children, ...restProps }) => {\n const renderProps = useNProgress(restProps);\n return children(renderProps);\n};\n","import hoistNonReactStatics from 'hoist-non-react-statics';\nimport * as React from 'react';\nimport { useNProgress } from './useNProgress';\nexport function withNProgress(BaseComponent) {\n const WithNProgress = (props) => {\n const hookProps = useNProgress(props);\n return React.createElement(BaseComponent, { ...props, ...hookProps });\n };\n hoistNonReactStatics(WithNProgress, BaseComponent);\n return WithNProgress;\n}\n"],"names":["clamp","num","lower","upper","increment","progress","amount","createQueue","isRunning","pending","next","cb","shift","clear","queue","push","length","createTimeout","handle","cancel","console","log","window","cancelAnimationFrame","timeout","callback","delay","deltaTime","start","frame","time","requestAnimationFrame","noop","undefined","useNProgress","animationDuration","incrementDuration","isAnimating","minimum","initialState","isFinished","sideEffect","useGetSetState","get","setState","clearQueue","cancelCurrentTimeout","cleanup","set","useCallback","n","trickle","work","savedTrickle","useRef","useEffect","current","useEffectOnce","useUpdateEffect","NProgress","children","restProps","renderProps","withNProgress","BaseComponent","WithNProgress","props","hookProps","React","createElement","hoistNonReactStatics"],"mappings":"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"}