| Offset 1, 2 lines modified | Offset 1, 2 lines modified | ||
| 1 | ·6ce | 1 | ·6dceeb0271188b772045ed7384157d27·35500·javascript·optional·node-promise_8.0.1-1_all.deb |
| Offset 1, 3 lines modified | Offset 1, 3 lines modified | ||
| 1 | -rw-r--r--···0········0········0········4·2018-01-03·12:57:52.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2018-01-03·12:57:52.000000·debian-binary |
| 2 | -rw-r--r--···0········0········0·····22 | 2 | -rw-r--r--···0········0········0·····2252·2018-01-03·12:57:52.000000·control.tar.xz |
| 3 | -rw-r--r--···0········0········0····330 | 3 | -rw-r--r--···0········0········0····33056·2018-01-03·12:57:52.000000·data.tar.xz |
| Offset 1, 21 lines modified | Offset 1, 21 lines modified | ||
| 1 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./ | 1 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./ |
| 2 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/ | 2 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/ |
| 3 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/lib/ | 3 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/lib/ |
| 4 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/lib/nodejs/ | 4 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/lib/nodejs/ |
| 5 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/ | 5 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/ |
| 6 | -rw-r--r--···0·root·········(0)·root·········(0)·······49·2017-07-12·20:37:30.000000·./usr/lib/nodejs/promise/index.js | 6 | -rw-r--r--···0·root·········(0)·root·········(0)·······49·2017-07-12·20:37:30.000000·./usr/lib/nodejs/promise/index.js |
| 7 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/lib/ | 7 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/lib/ |
| 8 | -rw-r--r--···0·root·········(0)·root·········(0)·····485 | 8 | -rw-r--r--···0·root·········(0)·root·········(0)·····4854·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/lib/core.js |
| 9 | -rw-r--r--···0·root·········(0)·root·········(0)······314·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/lib/done.js | 9 | -rw-r--r--···0·root·········(0)·root·········(0)······314·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/lib/done.js |
| 10 | -rw-r--r--···0·root·········(0)·root·········(0)·····26 | 10 | -rw-r--r--···0·root·········(0)·root·········(0)·····2670·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/lib/es6-extensions.js |
| 11 | -rw-r--r--···0·root·········(0)·root·········(0)······348·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/lib/finally.js | 11 | -rw-r--r--···0·root·········(0)·root·········(0)······348·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/lib/finally.js |
| 12 | -rw-r--r--···0·root·········(0)·root·········(0)······195·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/lib/index.js | 12 | -rw-r--r--···0·root·········(0)·root·········(0)······195·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/lib/index.js |
| 13 | -rw-r--r--···0·root·········(0)·root·········(0)·····3271·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/lib/node-extensions.js | 13 | -rw-r--r--···0·root·········(0)·root·········(0)·····3271·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/lib/node-extensions.js |
| 14 | -rw-r--r--···0·root·········(0)·root·········(0)·····28 | 14 | -rw-r--r--···0·root·········(0)·root·········(0)·····2878·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/lib/rejection-tracking.js |
| 15 | -rw-r--r--···0·root·········(0)·root·········(0)·····1393·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/lib/synchronous.js | 15 | -rw-r--r--···0·root·········(0)·root·········(0)·····1393·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/lib/synchronous.js |
| 16 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/ | 16 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/ |
| 17 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/ | 17 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/ |
| 18 | -rw-r--r--···0·root·········(0)·root·········(0)······444·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/.jshintrc | 18 | -rw-r--r--···0·root·········(0)·root·········(0)······444·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/.jshintrc |
| 19 | -rw-r--r--···0·root·········(0)·root·········(0)·······39·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/.npmignore | 19 | -rw-r--r--···0·root·········(0)·root·········(0)·······39·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/.npmignore |
| 20 | -rw-r--r--···0·root·········(0)·root·········(0)·····1777·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/.travis.yml | 20 | -rw-r--r--···0·root·········(0)·root·········(0)·····1777·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/.travis.yml |
| 21 | -rw-r--r--···0·root·········(0)·root·········(0)·····2906·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/CHANGES.md | 21 | -rw-r--r--···0·root·········(0)·root·········(0)·····2906·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/CHANGES.md |
| Offset 57, 21 lines modified | Offset 57, 21 lines modified | ||
| 57 | -rw-r--r--···0·root·········(0)·root·········(0)······149·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/test/domain.js | 57 | -rw-r--r--···0·root·········(0)·root·········(0)······149·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/test/domain.js |
| 58 | -rw-r--r--···0·root·········(0)·root·········(0)·······98·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/test/index.html | 58 | -rw-r--r--···0·root·········(0)·root·········(0)·······98·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/test/index.html |
| 59 | -rw-r--r--···0·root·········(0)·root·········(0)·······80·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/test/infinite.js | 59 | -rw-r--r--···0·root·········(0)·root·········(0)·······80·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/test/infinite.js |
| 60 | -rw-r--r--···0·root·········(0)·root·········(0)·····2768·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/test/scaffold.js | 60 | -rw-r--r--···0·root·········(0)·root·········(0)·····2768·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/test/scaffold.js |
| 61 | -rw-r--r--···0·root·········(0)·root·········(0)······491·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/test/worker.js | 61 | -rw-r--r--···0·root·········(0)·root·········(0)······491·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/node_modules/asap/test/worker.js |
| 62 | -rw-r--r--···0·root·········(0)·root·········(0)·····1115·2017-07-12·20:37:30.000000·./usr/lib/nodejs/promise/package.json | 62 | -rw-r--r--···0·root·········(0)·root·········(0)·····1115·2017-07-12·20:37:30.000000·./usr/lib/nodejs/promise/package.json |
| 63 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/setimmediate/ | 63 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/setimmediate/ |
| 64 | -rw-r--r--···0·root·········(0)·root·········(0)·····483 | 64 | -rw-r--r--···0·root·········(0)·root·········(0)·····4831·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/setimmediate/core.js |
| 65 | -rw-r--r--···0·root·········(0)·root·········(0)······314·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/setimmediate/done.js | 65 | -rw-r--r--···0·root·········(0)·root·········(0)······314·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/setimmediate/done.js |
| 66 | -rw-r--r--···0·root·········(0)·root·········(0)·····26 | 66 | -rw-r--r--···0·root·········(0)·root·········(0)·····2670·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/setimmediate/es6-extensions.js |
| 67 | -rw-r--r--···0·root·········(0)·root·········(0)······348·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/setimmediate/finally.js | 67 | -rw-r--r--···0·root·········(0)·root·········(0)······348·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/setimmediate/finally.js |
| 68 | -rw-r--r--···0·root·········(0)·root·········(0)······195·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/setimmediate/index.js | 68 | -rw-r--r--···0·root·········(0)·root·········(0)······195·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/setimmediate/index.js |
| 69 | -rw-r--r--···0·root·········(0)·root·········(0)·····3268·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/setimmediate/node-extensions.js | 69 | -rw-r--r--···0·root·········(0)·root·········(0)·····3268·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/setimmediate/node-extensions.js |
| 70 | -rw-r--r--···0·root·········(0)·root·········(0)·····28 | 70 | -rw-r--r--···0·root·········(0)·root·········(0)·····2878·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/setimmediate/rejection-tracking.js |
| 71 | -rw-r--r--···0·root·········(0)·root·········(0)·····1393·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/setimmediate/synchronous.js | 71 | -rw-r--r--···0·root·········(0)·root·········(0)·····1393·2018-01-03·12:57:52.000000·./usr/lib/nodejs/promise/setimmediate/synchronous.js |
| 72 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/share/ | 72 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/share/ |
| 73 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/share/doc/ | 73 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/share/doc/ |
| 74 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/share/doc/node-promise/ | 74 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-01-03·12:57:52.000000·./usr/share/doc/node-promise/ |
| 75 | -rw-r--r--···0·root·········(0)·root·········(0)·····3447·2017-07-12·20:37:30.000000·./usr/share/doc/node-promise/Readme.md.gz | 75 | -rw-r--r--···0·root·········(0)·root·········(0)·····3447·2017-07-12·20:37:30.000000·./usr/share/doc/node-promise/Readme.md.gz |
| 76 | -rw-r--r--···0·root·········(0)·root·········(0)······295·2018-01-03·12:57:52.000000·./usr/share/doc/node-promise/changelog.Debian.gz | 76 | -rw-r--r--···0·root·········(0)·root·········(0)······295·2018-01-03·12:57:52.000000·./usr/share/doc/node-promise/changelog.Debian.gz |
| 77 | -rw-r--r--···0·root·········(0)·root·········(0)·····1663·2018-01-03·12:57:52.000000·./usr/share/doc/node-promise/copyright | 77 | -rw-r--r--···0·root·········(0)·root·········(0)·····1663·2018-01-03·12:57:52.000000·./usr/share/doc/node-promise/copyright |
| Offset 56, 24 lines modified | Offset 56, 24 lines modified | ||
| 56 | function·Promise(fn)·{ | 56 | function·Promise(fn)·{ |
| 57 | ····if·(typeof·this·!==·'object')·{ | 57 | ····if·(typeof·this·!==·'object')·{ |
| 58 | ········throw·new·TypeError('Promises·must·be·constructed·via·new'); | 58 | ········throw·new·TypeError('Promises·must·be·constructed·via·new'); |
| 59 | ····} | 59 | ····} |
| 60 | ····if·(typeof·fn·!==·'function')·{ | 60 | ····if·(typeof·fn·!==·'function')·{ |
| 61 | ········throw·new·TypeError('Promise·constructor\'s·argument·is·not·a·function'); | 61 | ········throw·new·TypeError('Promise·constructor\'s·argument·is·not·a·function'); |
| 62 | ····} | 62 | ····} |
| 63 | ····this._75·=·0; | ||
| 63 | ····this._9 | 64 | ····this._9·=·0; |
| 64 | ····this._8·=·0; | ||
| 65 | ····this._ | 65 | ····this._14·=·null; |
| 66 | ····this._ | 66 | ····this._81·=·null; |
| 67 | ····if·(fn·===·noop)·return; | 67 | ····if·(fn·===·noop)·return; |
| 68 | ····doResolve(fn,·this); | 68 | ····doResolve(fn,·this); |
| 69 | } | 69 | } |
| 70 | Promise._ | 70 | Promise._91·=·null; |
| 71 | Promise._ | 71 | Promise._54·=·null; |
| 72 | Promise._2·=·noop; | 72 | Promise._92·=·noop; |
| 73 | Promise.prototype.then·=·function(onFulfilled,·onRejected)·{ | 73 | Promise.prototype.then·=·function(onFulfilled,·onRejected)·{ |
| 74 | ····if·(this.constructor·!==·Promise)·{ | 74 | ····if·(this.constructor·!==·Promise)·{ |
| 75 | ········return·safeThen(this,·onFulfilled,·onRejected); | 75 | ········return·safeThen(this,·onFulfilled,·onRejected); |
| 76 | ····} | 76 | ····} |
| 77 | ····var·res·=·new·Promise(noop); | 77 | ····var·res·=·new·Promise(noop); |
| 78 | ····handle(this,·new·Handler(onFulfilled,·onRejected,·res)); | 78 | ····handle(this,·new·Handler(onFulfilled,·onRejected,·res)); |
| Offset 85, 49 lines modified | Offset 85, 49 lines modified | ||
| 85 | ········var·res·=·new·Promise(noop); | 85 | ········var·res·=·new·Promise(noop); |
| 86 | ········res.then(resolve,·reject); | 86 | ········res.then(resolve,·reject); |
| 87 | ········handle(self,·new·Handler(onFulfilled,·onRejected,·res)); | 87 | ········handle(self,·new·Handler(onFulfilled,·onRejected,·res)); |
| 88 | ····}); | 88 | ····}); |
| 89 | } | 89 | } |
| 90 | function·handle(self,·deferred)·{ | 90 | function·handle(self,·deferred)·{ |
| 91 | ····while·(self._ | 91 | ····while·(self._9·===·3)·{ |
| 92 | ········self·=·self._ | 92 | ········self·=·self._14; |
| 93 | ····} | 93 | ····} |
| 94 | ····if·(Promise._ | 94 | ····if·(Promise._91)·{ |
| 95 | ········Promise._ | 95 | ········Promise._91(self); |
| 96 | ····} | 96 | ····} |
| 97 | ····if·(self._ | 97 | ····if·(self._9·===·0)·{ |
| 98 | ········if·(self._ | 98 | ········if·(self._75·===·0)·{ |
| 99 | ············self._ | 99 | ············self._75·=·1; |
| 100 | ············self._ | 100 | ············self._81·=·deferred; |
| 101 | ············return; | 101 | ············return; |
| 102 | ········} | 102 | ········} |
| 103 | ········if·(self._ | 103 | ········if·(self._75·===·1)·{ |
| 104 | ············self._ | 104 | ············self._75·=·2; |
| 105 | ············self._ | 105 | ············self._81·=·[self._81,·deferred]; |
| 106 | ············return; | 106 | ············return; |
| 107 | ········} | 107 | ········} |
| 108 | ········self._ | 108 | ········self._81.push(deferred); |
| 109 | ········return; | 109 | ········return; |
| 110 | ····} | 110 | ····} |
| 111 | ····handleResolved(self,·deferred); | 111 | ····handleResolved(self,·deferred); |
| 112 | } | 112 | } |
| 113 | function·handleResolved(self,·deferred)·{ | 113 | function·handleResolved(self,·deferred)·{ |
| 114 | ····asap(function()·{ | 114 | ····asap(function()·{ |
| 115 | ········var·cb·=·self._ | 115 | ········var·cb·=·self._9·===·1·?·deferred.onFulfilled·:·deferred.onRejected; |
| 116 | ········if·(cb·===·null)·{ | 116 | ········if·(cb·===·null)·{ |
| 117 | ············if·(self._ | 117 | ············if·(self._9·===·1)·{ |
| 118 | ················resolve(deferred.promise,·self._ | 118 | ················resolve(deferred.promise,·self._14); |
| 119 | ············}·else·{ | 119 | ············}·else·{ |
| 120 | ················reject(deferred.promise,·self._ | 120 | ················reject(deferred.promise,·self._14); |
| 121 | ············} | 121 | ············} |
| 122 | ············return; | 122 | ············return; |
| 123 | ········} | 123 | ········} |
| 124 | ········var·ret·=·tryCallOne(cb,·self._ | 124 | ········var·ret·=·tryCallOne(cb,·self._14); |
| 125 | ········if·(ret·===·IS_ERROR)·{ | 125 | ········if·(ret·===·IS_ERROR)·{ |
| 126 | ············reject(deferred.promise,·LAST_ERROR); | 126 | ············reject(deferred.promise,·LAST_ERROR); |
| 127 | ········}·else·{ | 127 | ········}·else·{ |
| 128 | ············resolve(deferred.promise,·ret); | 128 | ············resolve(deferred.promise,·ret); |
| 129 | ········} | 129 | ········} |
| 130 | ····}); | 130 | ····}); |
| 131 | } | 131 | } |
| Offset 148, 47 lines modified | Offset 148, 47 lines modified | ||
| 148 | ········if·(then·===·IS_ERROR)·{ | 148 | ········if·(then·===·IS_ERROR)·{ |
| 149 | ············return·reject(self,·LAST_ERROR); | 149 | ············return·reject(self,·LAST_ERROR); |
| 150 | ········} | 150 | ········} |
| 151 | ········if·( | 151 | ········if·( |
| 152 | ············then·===·self.then·&& | 152 | ············then·===·self.then·&& |
| 153 | ············newValue·instanceof·Promise | 153 | ············newValue·instanceof·Promise |
| 154 | ········)·{ | 154 | ········)·{ |
| 155 | ············self._ | 155 | ············self._9·=·3; |
| 156 | ············self._ | 156 | ············self._14·=·newValue; |
| 157 | ············finale(self); | 157 | ············finale(self); |
| 158 | ············return; | 158 | ············return; |
| 159 | ········}·else·if·(typeof·then·===·'function')·{ | 159 | ········}·else·if·(typeof·then·===·'function')·{ |
| 160 | ············doResolve(then.bind(newValue),·self); | 160 | ············doResolve(then.bind(newValue),·self); |
| 161 | ············return; | 161 | ············return; |
| 162 | ········} | 162 | ········} |
| 163 | ····} | 163 | ····} |
| 164 | ····self._ | 164 | ····self._9·=·1; |
| 165 | ····self._ | 165 | ····self._14·=·newValue; |
| 166 | ····finale(self); | 166 | ····finale(self); |
| 167 | } | 167 | } |
| 168 | function·reject(self,·newValue)·{ | 168 | function·reject(self,·newValue)·{ |
| 169 | ····self._ | 169 | ····self._9·=·2; |
| 170 | ····self._ | 170 | ····self._14·=·newValue; |
| 171 | ····if·(Promise._ | 171 | ····if·(Promise._54)·{ |
| 172 | ········Promise._ | 172 | ········Promise._54(self,·newValue); |
| 173 | ····} | 173 | ····} |
| 174 | ····finale(self); | 174 | ····finale(self); |
| 175 | } | 175 | } |
| 176 | function·finale(self)·{ | 176 | function·finale(self)·{ |
| 177 | ····if·(self._ | 177 | ····if·(self._75·===·1)·{ |
| 178 | ········handle(self,·self._ | 178 | ········handle(self,·self._81); |
| 179 | ········self._ | 179 | ········self._81·=·null; |
| 180 | ····} | 180 | ····} |
| 181 | ····if·(self._ | 181 | ····if·(self._75·===·2)·{ |
| 182 | ········for·(var·i·=·0;·i·<·self._ | 182 | ········for·(var·i·=·0;·i·<·self._81.length;·i++)·{ |
| 183 | ············handle(self,·self._ | 183 | ············handle(self,·self._81[i]); |
| 184 | ········} | 184 | ········} |
| 185 | ········self._ | 185 | ········self._81·=·null; |
| 186 | ····} | 186 | ····} |
| 187 | } | 187 | } |
| 188 | function·Handler(onFulfilled,·onRejected,·promise)·{ | 188 | function·Handler(onFulfilled,·onRejected,·promise)·{ |
| 189 | ····this.onFulfilled·=·typeof·onFulfilled·===·'function'·?·onFulfilled·:·null; | 189 | ····this.onFulfilled·=·typeof·onFulfilled·===·'function'·?·onFulfilled·:·null; |
| 190 | ····this.onRejected·=·typeof·onRejected·===·'function'·?·onRejected·:·null; | 190 | ····this.onRejected·=·typeof·onRejected·===·'function'·?·onRejected·:·null; |
| 191 | ····this.promise·=·promise; | 191 | ····this.promise·=·promise; |
| Offset 12, 17 lines modified | Offset 12, 17 lines modified | ||
| 12 | var·FALSE·=·valuePromise(false); | 12 | var·FALSE·=·valuePromise(false); |
| 13 | var·NULL·=·valuePromise(null); | 13 | var·NULL·=·valuePromise(null); |
| 14 | var·UNDEFINED·=·valuePromise(undefined); | 14 | var·UNDEFINED·=·valuePromise(undefined); |
| 15 | var·ZERO·=·valuePromise(0); | 15 | var·ZERO·=·valuePromise(0); |
| 16 | var·EMPTYSTRING·=·valuePromise(''); | 16 | var·EMPTYSTRING·=·valuePromise(''); |
| 17 | function·valuePromise(value)·{ | 17 | function·valuePromise(value)·{ |
| 18 | ····var·p·=·new·Promise(Promise._2); | 18 | ····var·p·=·new·Promise(Promise._92); |
| 19 | ····p._ | 19 | ····p._9·=·1; |
| 20 | ····p._ | 20 | ····p._14·=·value; |
| 21 | ····return·p; | 21 | ····return·p; |
| 22 | } | 22 | } |
| 23 | Promise.resolve·=·function(value)·{ | 23 | Promise.resolve·=·function(value)·{ |
| 24 | ····if·(value·instanceof·Promise)·return·value; | 24 | ····if·(value·instanceof·Promise)·return·value; |
| 25 | ····if·(value·===·null)·return·NULL; | 25 | ····if·(value·===·null)·return·NULL; |
| 26 | ····if·(value·===·undefined)·return·UNDEFINED; | 26 | ····if·(value·===·undefined)·return·UNDEFINED; |
| Offset 52, 19 lines modified | Offset 52, 19 lines modified | ||
| 52 | ····return·new·Promise(function(resolve,·reject)·{ | 52 | ····return·new·Promise(function(resolve,·reject)·{ |
| 53 | ········if·(args.length·===·0)·return·resolve([]); | 53 | ········if·(args.length·===·0)·return·resolve([]); |
| 54 | ········var·remaining·=·args.length; | 54 | ········var·remaining·=·args.length; |
| 55 | ········function·res(i,·val)·{ | 55 | ········function·res(i,·val)·{ |
| 56 | ············if·(val·&&·(typeof·val·===·'object'·||·typeof·val·===·'function'))·{ | 56 | ············if·(val·&&·(typeof·val·===·'object'·||·typeof·val·===·'function'))·{ |
| 57 | ················if·(val·instanceof·Promise·&&·val.then·===·Promise.prototype.then)·{ | 57 | ················if·(val·instanceof·Promise·&&·val.then·===·Promise.prototype.then)·{ |
| 58 | ····················while·(val._ | 58 | ····················while·(val._9·===·3)·{ |
| 59 | ························val·=·val._ | 59 | ························val·=·val._14; |
| 60 | ····················} | 60 | ····················} |
| 61 | ····················if·(val._ | 61 | ····················if·(val._9·===·1)·return·res(i,·val._14); |
| 62 | ····················if·(val._ | 62 | ····················if·(val._9·===·2)·reject(val._14); |
| 63 | ····················val.then(function(val)·{ | 63 | ····················val.then(function(val)·{ |
| 64 | ························res(i,·val); | 64 | ························res(i,·val); |
| 65 | ····················},·reject); | 65 | ····················},·reject); |
| 66 | ····················return; | 66 | ····················return; |
| 67 | ················}·else·{ | 67 | ················}·else·{ |
| 68 | ····················var·then·=·val.then; | 68 | ····················var·then·=·val.then; |
| 69 | ····················if·(typeof·then·===·'function')·{ | 69 | ····················if·(typeof·then·===·'function')·{ |
| Offset 9, 48 lines modified | Offset 9, 48 lines modified | ||
| 9 | ]; | 9 | ]; |
| 10 | var·enabled·=·false; | 10 | var·enabled·=·false; |
| 11 | exports.disable·=·disable; | 11 | exports.disable·=·disable; |
| 12 | function·disable()·{ | 12 | function·disable()·{ |
| 13 | ····enabled·=·false; | 13 | ····enabled·=·false; |
| 14 | ····Promise._ | 14 | ····Promise._91·=·null; |
| 15 | ····Promise._ | 15 | ····Promise._54·=·null; |
| 16 | } | 16 | } |
| 17 | exports.enable·=·enable; | 17 | exports.enable·=·enable; |
| 18 | function·enable(options)·{ | 18 | function·enable(options)·{ |
| 19 | ····options·=·options·||·{}; | 19 | ····options·=·options·||·{}; |
| 20 | ····if·(enabled)·disable(); | 20 | ····if·(enabled)·disable(); |
| 21 | ····enabled·=·true; | 21 | ····enabled·=·true; |
| 22 | ····var·id·=·0; | 22 | ····var·id·=·0; |
| 23 | ····var·displayId·=·0; | 23 | ····var·displayId·=·0; |
| 24 | ····var·rejections·=·{}; | 24 | ····var·rejections·=·{}; |
| 25 | ····Promise._ | 25 | ····Promise._91·=·function(promise)·{ |
| 26 | ········if·( | 26 | ········if·( |
| 27 | ············promise._ | 27 | ············promise._9·===·2·&&·//·IS·REJECTED |
| 28 | ············rejections[promise._2 | 28 | ············rejections[promise._2] |
| 29 | ········)·{ | 29 | ········)·{ |
| 30 | ············if·(rejections[promise._2 | 30 | ············if·(rejections[promise._2].logged)·{ |
| 31 | ················onHandled(promise._2 | 31 | ················onHandled(promise._2); |
| 32 | ············}·else·{ | 32 | ············}·else·{ |
| 33 | ················clearTimeout(rejections[promise._2 | 33 | ················clearTimeout(rejections[promise._2].timeout); |
| 34 | ············} | 34 | ············} |
| 35 | ············delete·rejections[promise._2 | 35 | ············delete·rejections[promise._2]; |
| 36 | ········} | 36 | ········} |
| 37 | ····}; | 37 | ····}; |
| 38 | ····Promise._ | 38 | ····Promise._54·=·function(promise,·err)·{ |
| 39 | ········if·(promise._ | 39 | ········if·(promise._75·===·0)·{·//·not·yet·handled |
| 40 | ············promise._2 | 40 | ············promise._2·=·id++; |
| 41 | ············rejections[promise._2 | 41 | ············rejections[promise._2]·=·{ |
| 42 | ················displayId:·null, | 42 | ················displayId:·null, |
| 43 | ················error:·err, | 43 | ················error:·err, |
| 44 | ················timeout:·setTimeout( | 44 | ················timeout:·setTimeout( |
| 45 | ····················onUnhandled.bind(null,·promise._2 | 45 | ····················onUnhandled.bind(null,·promise._2), |
| 46 | ····················//·For·reference·errors·and·type·errors,·this·almost·always | 46 | ····················//·For·reference·errors·and·type·errors,·this·almost·always |
| 47 | ····················//·means·the·programmer·made·a·mistake,·so·log·them·after·just | 47 | ····················//·means·the·programmer·made·a·mistake,·so·log·them·after·just |
| 48 | ····················//·100ms | 48 | ····················//·100ms |
| 49 | ····················//·otherwise,·wait·2·seconds·to·see·if·they·get·handled | 49 | ····················//·otherwise,·wait·2·seconds·to·see·if·they·get·handled |
| 50 | ····················matchWhitelist(err,·DEFAULT_WHITELIST)·? | 50 | ····················matchWhitelist(err,·DEFAULT_WHITELIST)·? |
| 51 | ····················100·: | 51 | ····················100·: |
| 52 | ····················2000 | 52 | ····················2000 |
| Offset 13, 46 lines modified | Offset 13, 46 lines modified | ||
| 13 | ····}; | 13 | ····}; |
| 14 | ····Promise.prototype.isRejected·=·function()·{ | 14 | ····Promise.prototype.isRejected·=·function()·{ |
| 15 | ········return·this.getState()·==·2; | 15 | ········return·this.getState()·==·2; |
| 16 | ····}; | 16 | ····}; |
| 17 | ····Promise.prototype.getValue·=·function()·{ | 17 | ····Promise.prototype.getValue·=·function()·{ |
| 18 | ········if·(this._ | 18 | ········if·(this._9·===·3)·{ |
| 19 | ············return·this._ | 19 | ············return·this._14.getValue(); |
| 20 | ········} | 20 | ········} |
| 21 | ········if·(!this.isFulfilled())·{ | 21 | ········if·(!this.isFulfilled())·{ |
| 22 | ············throw·new·Error('Cannot·get·a·value·of·an·unfulfilled·promise.'); | 22 | ············throw·new·Error('Cannot·get·a·value·of·an·unfulfilled·promise.'); |
| 23 | ········} | 23 | ········} |
| 24 | ········return·this._ | 24 | ········return·this._14; |
| 25 | ····}; | 25 | ····}; |
| 26 | ····Promise.prototype.getReason·=·function()·{ | 26 | ····Promise.prototype.getReason·=·function()·{ |
| 27 | ········if·(this._ | 27 | ········if·(this._9·===·3)·{ |
| 28 | ············return·this._ | 28 | ············return·this._14.getReason(); |
| 29 | ········} | 29 | ········} |
| 30 | ········if·(!this.isRejected())·{ | 30 | ········if·(!this.isRejected())·{ |
| 31 | ············throw·new·Error('Cannot·get·a·rejection·reason·of·a·non-rejected·promise.'); | 31 | ············throw·new·Error('Cannot·get·a·rejection·reason·of·a·non-rejected·promise.'); |
| 32 | ········} | 32 | ········} |
| 33 | ········return·this._ | 33 | ········return·this._14; |
| 34 | ····}; | 34 | ····}; |
| 35 | ····Promise.prototype.getState·=·function()·{ | 35 | ····Promise.prototype.getState·=·function()·{ |
| 36 | ········if·(this._ | 36 | ········if·(this._9·===·3)·{ |
| 37 | ············return·this._ | 37 | ············return·this._14.getState(); |
| 38 | ········} | 38 | ········} |
| 39 | ········if·(this._ | 39 | ········if·(this._9·===·-1·||·this._9·===·-2)·{ |
| 40 | ············return·0; | 40 | ············return·0; |
| 41 | ········} | 41 | ········} |
| 42 | ········return·this._ | 42 | ········return·this._9; |
| 43 | ····}; | 43 | ····}; |
| 44 | }; | 44 | }; |
| 45 | Promise.disableSynchronous·=·function()·{ | 45 | Promise.disableSynchronous·=·function()·{ |
| 46 | ····Promise.prototype.isPending·=·undefined; | 46 | ····Promise.prototype.isPending·=·undefined; |
| 47 | ····Promise.prototype.isFulfilled·=·undefined; | 47 | ····Promise.prototype.isFulfilled·=·undefined; |
| 48 | ····Promise.prototype.isRejected·=·undefined; | 48 | ····Promise.prototype.isRejected·=·undefined; |
| Offset 56, 24 lines modified | Offset 56, 24 lines modified | ||
| 56 | function·Promise(fn)·{ | 56 | function·Promise(fn)·{ |
| 57 | ····if·(typeof·this·!==·'object')·{ | 57 | ····if·(typeof·this·!==·'object')·{ |
| 58 | ········throw·new·TypeError('Promises·must·be·constructed·via·new'); | 58 | ········throw·new·TypeError('Promises·must·be·constructed·via·new'); |
| 59 | ····} | 59 | ····} |
| 60 | ····if·(typeof·fn·!==·'function')·{ | 60 | ····if·(typeof·fn·!==·'function')·{ |
| 61 | ········throw·new·TypeError('Promise·constructor\'s·argument·is·not·a·function'); | 61 | ········throw·new·TypeError('Promise·constructor\'s·argument·is·not·a·function'); |
| 62 | ····} | 62 | ····} |
| 63 | ····this._75·=·0; | ||
| 63 | ····this._9 | 64 | ····this._9·=·0; |
| 64 | ····this._8·=·0; | ||
| 65 | ····this._ | 65 | ····this._14·=·null; |
| 66 | ····this._ | 66 | ····this._81·=·null; |
| 67 | ····if·(fn·===·noop)·return; | 67 | ····if·(fn·===·noop)·return; |
| 68 | ····doResolve(fn,·this); | 68 | ····doResolve(fn,·this); |
| 69 | } | 69 | } |
| 70 | Promise._ | 70 | Promise._91·=·null; |
| 71 | Promise._ | 71 | Promise._54·=·null; |
| 72 | Promise._2·=·noop; | 72 | Promise._92·=·noop; |
| 73 | Promise.prototype.then·=·function(onFulfilled,·onRejected)·{ | 73 | Promise.prototype.then·=·function(onFulfilled,·onRejected)·{ |
| 74 | ····if·(this.constructor·!==·Promise)·{ | 74 | ····if·(this.constructor·!==·Promise)·{ |
| 75 | ········return·safeThen(this,·onFulfilled,·onRejected); | 75 | ········return·safeThen(this,·onFulfilled,·onRejected); |
| 76 | ····} | 76 | ····} |
| 77 | ····var·res·=·new·Promise(noop); | 77 | ····var·res·=·new·Promise(noop); |
| 78 | ····handle(this,·new·Handler(onFulfilled,·onRejected,·res)); | 78 | ····handle(this,·new·Handler(onFulfilled,·onRejected,·res)); |
| Offset 85, 49 lines modified | Offset 85, 49 lines modified | ||
| 85 | ········var·res·=·new·Promise(noop); | 85 | ········var·res·=·new·Promise(noop); |
| 86 | ········res.then(resolve,·reject); | 86 | ········res.then(resolve,·reject); |
| 87 | ········handle(self,·new·Handler(onFulfilled,·onRejected,·res)); | 87 | ········handle(self,·new·Handler(onFulfilled,·onRejected,·res)); |
| 88 | ····}); | 88 | ····}); |
| 89 | } | 89 | } |
| 90 | function·handle(self,·deferred)·{ | 90 | function·handle(self,·deferred)·{ |
| 91 | ····while·(self._ | 91 | ····while·(self._9·===·3)·{ |
| 92 | ········self·=·self._ | 92 | ········self·=·self._14; |
| 93 | ····} | 93 | ····} |
| 94 | ····if·(Promise._ | 94 | ····if·(Promise._91)·{ |
| 95 | ········Promise._ | 95 | ········Promise._91(self); |
| 96 | ····} | 96 | ····} |
| 97 | ····if·(self._ | 97 | ····if·(self._9·===·0)·{ |
| 98 | ········if·(self._ | 98 | ········if·(self._75·===·0)·{ |
| 99 | ············self._ | 99 | ············self._75·=·1; |
| 100 | ············self._ | 100 | ············self._81·=·deferred; |
| 101 | ············return; | 101 | ············return; |
| 102 | ········} | 102 | ········} |
| 103 | ········if·(self._ | 103 | ········if·(self._75·===·1)·{ |
| 104 | ············self._ | 104 | ············self._75·=·2; |
| 105 | ············self._ | 105 | ············self._81·=·[self._81,·deferred]; |
| 106 | ············return; | 106 | ············return; |
| 107 | ········} | 107 | ········} |
| 108 | ········self._ | 108 | ········self._81.push(deferred); |
| 109 | ········return; | 109 | ········return; |
| 110 | ····} | 110 | ····} |
| 111 | ····handleResolved(self,·deferred); | 111 | ····handleResolved(self,·deferred); |
| 112 | } | 112 | } |
| 113 | function·handleResolved(self,·deferred)·{ | 113 | function·handleResolved(self,·deferred)·{ |
| 114 | ····setImmediate(function()·{ | 114 | ····setImmediate(function()·{ |
| 115 | ········var·cb·=·self._ | 115 | ········var·cb·=·self._9·===·1·?·deferred.onFulfilled·:·deferred.onRejected; |
| 116 | ········if·(cb·===·null)·{ | 116 | ········if·(cb·===·null)·{ |
| 117 | ············if·(self._ | 117 | ············if·(self._9·===·1)·{ |
| 118 | ················resolve(deferred.promise,·self._ | 118 | ················resolve(deferred.promise,·self._14); |
| 119 | ············}·else·{ | 119 | ············}·else·{ |
| 120 | ················reject(deferred.promise,·self._ | 120 | ················reject(deferred.promise,·self._14); |
| 121 | ············} | 121 | ············} |
| 122 | ············return; | 122 | ············return; |
| 123 | ········} | 123 | ········} |
| 124 | ········var·ret·=·tryCallOne(cb,·self._ | 124 | ········var·ret·=·tryCallOne(cb,·self._14); |
| 125 | ········if·(ret·===·IS_ERROR)·{ | 125 | ········if·(ret·===·IS_ERROR)·{ |
| 126 | ············reject(deferred.promise,·LAST_ERROR); | 126 | ············reject(deferred.promise,·LAST_ERROR); |
| 127 | ········}·else·{ | 127 | ········}·else·{ |
| 128 | ············resolve(deferred.promise,·ret); | 128 | ············resolve(deferred.promise,·ret); |
| 129 | ········} | 129 | ········} |
| 130 | ····}); | 130 | ····}); |
| 131 | } | 131 | } |
| Offset 148, 47 lines modified | Offset 148, 47 lines modified | ||
| 148 | ········if·(then·===·IS_ERROR)·{ | 148 | ········if·(then·===·IS_ERROR)·{ |
| 149 | ············return·reject(self,·LAST_ERROR); | 149 | ············return·reject(self,·LAST_ERROR); |
| 150 | ········} | 150 | ········} |
| 151 | ········if·( | 151 | ········if·( |
| 152 | ············then·===·self.then·&& | 152 | ············then·===·self.then·&& |
| 153 | ············newValue·instanceof·Promise | 153 | ············newValue·instanceof·Promise |
| 154 | ········)·{ | 154 | ········)·{ |
| 155 | ············self._ | 155 | ············self._9·=·3; |
| 156 | ············self._ | 156 | ············self._14·=·newValue; |
| 157 | ············finale(self); | 157 | ············finale(self); |
| 158 | ············return; | 158 | ············return; |
| 159 | ········}·else·if·(typeof·then·===·'function')·{ | 159 | ········}·else·if·(typeof·then·===·'function')·{ |
| 160 | ············doResolve(then.bind(newValue),·self); | 160 | ············doResolve(then.bind(newValue),·self); |
| 161 | ············return; | 161 | ············return; |
| 162 | ········} | 162 | ········} |
| 163 | ····} | 163 | ····} |
| 164 | ····self._ | 164 | ····self._9·=·1; |
| 165 | ····self._ | 165 | ····self._14·=·newValue; |
| 166 | ····finale(self); | 166 | ····finale(self); |
| 167 | } | 167 | } |
| 168 | function·reject(self,·newValue)·{ | 168 | function·reject(self,·newValue)·{ |
| 169 | ····self._ | 169 | ····self._9·=·2; |
| 170 | ····self._ | 170 | ····self._14·=·newValue; |
| 171 | ····if·(Promise._ | 171 | ····if·(Promise._54)·{ |
| 172 | ········Promise._ | 172 | ········Promise._54(self,·newValue); |
| 173 | ····} | 173 | ····} |
| 174 | ····finale(self); | 174 | ····finale(self); |
| 175 | } | 175 | } |
| 176 | function·finale(self)·{ | 176 | function·finale(self)·{ |
| 177 | ····if·(self._ | 177 | ····if·(self._75·===·1)·{ |
| 178 | ········handle(self,·self._ | 178 | ········handle(self,·self._81); |
| 179 | ········self._ | 179 | ········self._81·=·null; |
| 180 | ····} | 180 | ····} |
| 181 | ····if·(self._ | 181 | ····if·(self._75·===·2)·{ |
| 182 | ········for·(var·i·=·0;·i·<·self._ | 182 | ········for·(var·i·=·0;·i·<·self._81.length;·i++)·{ |
| 183 | ············handle(self,·self._ | 183 | ············handle(self,·self._81[i]); |
| 184 | ········} | 184 | ········} |
| 185 | ········self._ | 185 | ········self._81·=·null; |
| 186 | ····} | 186 | ····} |
| 187 | } | 187 | } |
| 188 | function·Handler(onFulfilled,·onRejected,·promise)·{ | 188 | function·Handler(onFulfilled,·onRejected,·promise)·{ |
| 189 | ····this.onFulfilled·=·typeof·onFulfilled·===·'function'·?·onFulfilled·:·null; | 189 | ····this.onFulfilled·=·typeof·onFulfilled·===·'function'·?·onFulfilled·:·null; |
| 190 | ····this.onRejected·=·typeof·onRejected·===·'function'·?·onRejected·:·null; | 190 | ····this.onRejected·=·typeof·onRejected·===·'function'·?·onRejected·:·null; |
| 191 | ····this.promise·=·promise; | 191 | ····this.promise·=·promise; |
| Offset 12, 17 lines modified | Offset 12, 17 lines modified | ||
| 12 | var·FALSE·=·valuePromise(false); | 12 | var·FALSE·=·valuePromise(false); |
| 13 | var·NULL·=·valuePromise(null); | 13 | var·NULL·=·valuePromise(null); |
| 14 | var·UNDEFINED·=·valuePromise(undefined); | 14 | var·UNDEFINED·=·valuePromise(undefined); |
| 15 | var·ZERO·=·valuePromise(0); | 15 | var·ZERO·=·valuePromise(0); |
| 16 | var·EMPTYSTRING·=·valuePromise(''); | 16 | var·EMPTYSTRING·=·valuePromise(''); |
| 17 | function·valuePromise(value)·{ | 17 | function·valuePromise(value)·{ |
| 18 | ····var·p·=·new·Promise(Promise._2); | 18 | ····var·p·=·new·Promise(Promise._92); |
| 19 | ····p._ | 19 | ····p._9·=·1; |
| 20 | ····p._ | 20 | ····p._14·=·value; |
| 21 | ····return·p; | 21 | ····return·p; |
| 22 | } | 22 | } |
| 23 | Promise.resolve·=·function(value)·{ | 23 | Promise.resolve·=·function(value)·{ |
| 24 | ····if·(value·instanceof·Promise)·return·value; | 24 | ····if·(value·instanceof·Promise)·return·value; |
| 25 | ····if·(value·===·null)·return·NULL; | 25 | ····if·(value·===·null)·return·NULL; |
| 26 | ····if·(value·===·undefined)·return·UNDEFINED; | 26 | ····if·(value·===·undefined)·return·UNDEFINED; |
| Offset 52, 19 lines modified | Offset 52, 19 lines modified | ||
| 52 | ····return·new·Promise(function(resolve,·reject)·{ | 52 | ····return·new·Promise(function(resolve,·reject)·{ |
| 53 | ········if·(args.length·===·0)·return·resolve([]); | 53 | ········if·(args.length·===·0)·return·resolve([]); |
| 54 | ········var·remaining·=·args.length; | 54 | ········var·remaining·=·args.length; |
| 55 | ········function·res(i,·val)·{ | 55 | ········function·res(i,·val)·{ |
| 56 | ············if·(val·&&·(typeof·val·===·'object'·||·typeof·val·===·'function'))·{ | 56 | ············if·(val·&&·(typeof·val·===·'object'·||·typeof·val·===·'function'))·{ |
| 57 | ················if·(val·instanceof·Promise·&&·val.then·===·Promise.prototype.then)·{ | 57 | ················if·(val·instanceof·Promise·&&·val.then·===·Promise.prototype.then)·{ |
| 58 | ····················while·(val._ | 58 | ····················while·(val._9·===·3)·{ |
| 59 | ························val·=·val._ | 59 | ························val·=·val._14; |
| 60 | ····················} | 60 | ····················} |
| 61 | ····················if·(val._ | 61 | ····················if·(val._9·===·1)·return·res(i,·val._14); |
| 62 | ····················if·(val._ | 62 | ····················if·(val._9·===·2)·reject(val._14); |
| 63 | ····················val.then(function(val)·{ | 63 | ····················val.then(function(val)·{ |
| 64 | ························res(i,·val); | 64 | ························res(i,·val); |
| 65 | ····················},·reject); | 65 | ····················},·reject); |
| 66 | ····················return; | 66 | ····················return; |
| 67 | ················}·else·{ | 67 | ················}·else·{ |
| 68 | ····················var·then·=·val.then; | 68 | ····················var·then·=·val.then; |
| 69 | ····················if·(typeof·then·===·'function')·{ | 69 | ····················if·(typeof·then·===·'function')·{ |
| Offset 9, 48 lines modified | Offset 9, 48 lines modified | ||
| 9 | ]; | 9 | ]; |
| 10 | var·enabled·=·false; | 10 | var·enabled·=·false; |
| 11 | exports.disable·=·disable; | 11 | exports.disable·=·disable; |
| 12 | function·disable()·{ | 12 | function·disable()·{ |
| 13 | ····enabled·=·false; | 13 | ····enabled·=·false; |
| 14 | ····Promise._ | 14 | ····Promise._91·=·null; |
| 15 | ····Promise._ | 15 | ····Promise._54·=·null; |
| 16 | } | 16 | } |
| 17 | exports.enable·=·enable; | 17 | exports.enable·=·enable; |
| 18 | function·enable(options)·{ | 18 | function·enable(options)·{ |
| 19 | ····options·=·options·||·{}; | 19 | ····options·=·options·||·{}; |
| 20 | ····if·(enabled)·disable(); | 20 | ····if·(enabled)·disable(); |
| 21 | ····enabled·=·true; | 21 | ····enabled·=·true; |
| 22 | ····var·id·=·0; | 22 | ····var·id·=·0; |
| 23 | ····var·displayId·=·0; | 23 | ····var·displayId·=·0; |
| 24 | ····var·rejections·=·{}; | 24 | ····var·rejections·=·{}; |
| 25 | ····Promise._ | 25 | ····Promise._91·=·function(promise)·{ |
| 26 | ········if·( | 26 | ········if·( |
| 27 | ············promise._ | 27 | ············promise._9·===·2·&&·//·IS·REJECTED |
| 28 | ············rejections[promise._2 | 28 | ············rejections[promise._2] |
| 29 | ········)·{ | 29 | ········)·{ |
| 30 | ············if·(rejections[promise._2 | 30 | ············if·(rejections[promise._2].logged)·{ |
| 31 | ················onHandled(promise._2 | 31 | ················onHandled(promise._2); |
| 32 | ············}·else·{ | 32 | ············}·else·{ |
| 33 | ················clearTimeout(rejections[promise._2 | 33 | ················clearTimeout(rejections[promise._2].timeout); |
| 34 | ············} | 34 | ············} |
| 35 | ············delete·rejections[promise._2 | 35 | ············delete·rejections[promise._2]; |
| 36 | ········} | 36 | ········} |
| 37 | ····}; | 37 | ····}; |
| 38 | ····Promise._ | 38 | ····Promise._54·=·function(promise,·err)·{ |
| 39 | ········if·(promise._ | 39 | ········if·(promise._75·===·0)·{·//·not·yet·handled |
| 40 | ············promise._2 | 40 | ············promise._2·=·id++; |
| 41 | ············rejections[promise._2 | 41 | ············rejections[promise._2]·=·{ |
| 42 | ················displayId:·null, | 42 | ················displayId:·null, |
| 43 | ················error:·err, | 43 | ················error:·err, |
| 44 | ················timeout:·setTimeout( | 44 | ················timeout:·setTimeout( |
| 45 | ····················onUnhandled.bind(null,·promise._2 | 45 | ····················onUnhandled.bind(null,·promise._2), |
| 46 | ····················//·For·reference·errors·and·type·errors,·this·almost·always | 46 | ····················//·For·reference·errors·and·type·errors,·this·almost·always |
| 47 | ····················//·means·the·programmer·made·a·mistake,·so·log·them·after·just | 47 | ····················//·means·the·programmer·made·a·mistake,·so·log·them·after·just |
| 48 | ····················//·100ms | 48 | ····················//·100ms |
| 49 | ····················//·otherwise,·wait·2·seconds·to·see·if·they·get·handled | 49 | ····················//·otherwise,·wait·2·seconds·to·see·if·they·get·handled |
| 50 | ····················matchWhitelist(err,·DEFAULT_WHITELIST)·? | 50 | ····················matchWhitelist(err,·DEFAULT_WHITELIST)·? |
| 51 | ····················100·: | 51 | ····················100·: |
| 52 | ····················2000 | 52 | ····················2000 |
| Offset 13, 46 lines modified | Offset 13, 46 lines modified | ||
| 13 | ····}; | 13 | ····}; |
| 14 | ····Promise.prototype.isRejected·=·function()·{ | 14 | ····Promise.prototype.isRejected·=·function()·{ |
| 15 | ········return·this.getState()·==·2; | 15 | ········return·this.getState()·==·2; |
| 16 | ····}; | 16 | ····}; |
| 17 | ····Promise.prototype.getValue·=·function()·{ | 17 | ····Promise.prototype.getValue·=·function()·{ |
| 18 | ········if·(this._ | 18 | ········if·(this._9·===·3)·{ |
| 19 | ············return·this._ | 19 | ············return·this._14.getValue(); |
| 20 | ········} | 20 | ········} |
| 21 | ········if·(!this.isFulfilled())·{ | 21 | ········if·(!this.isFulfilled())·{ |
| 22 | ············throw·new·Error('Cannot·get·a·value·of·an·unfulfilled·promise.'); | 22 | ············throw·new·Error('Cannot·get·a·value·of·an·unfulfilled·promise.'); |
| 23 | ········} | 23 | ········} |
| 24 | ········return·this._ | 24 | ········return·this._14; |
| 25 | ····}; | 25 | ····}; |
| 26 | ····Promise.prototype.getReason·=·function()·{ | 26 | ····Promise.prototype.getReason·=·function()·{ |
| 27 | ········if·(this._ | 27 | ········if·(this._9·===·3)·{ |
| 28 | ············return·this._ | 28 | ············return·this._14.getReason(); |
| 29 | ········} | 29 | ········} |
| 30 | ········if·(!this.isRejected())·{ | 30 | ········if·(!this.isRejected())·{ |
| 31 | ············throw·new·Error('Cannot·get·a·rejection·reason·of·a·non-rejected·promise.'); | 31 | ············throw·new·Error('Cannot·get·a·rejection·reason·of·a·non-rejected·promise.'); |
| 32 | ········} | 32 | ········} |
| 33 | ········return·this._ | 33 | ········return·this._14; |
| 34 | ····}; | 34 | ····}; |
| 35 | ····Promise.prototype.getState·=·function()·{ | 35 | ····Promise.prototype.getState·=·function()·{ |
| 36 | ········if·(this._ | 36 | ········if·(this._9·===·3)·{ |
| 37 | ············return·this._ | 37 | ············return·this._14.getState(); |
| 38 | ········} | 38 | ········} |
| 39 | ········if·(this._ | 39 | ········if·(this._9·===·-1·||·this._9·===·-2)·{ |
| 40 | ············return·0; | 40 | ············return·0; |
| 41 | ········} | 41 | ········} |
| 42 | ········return·this._ | 42 | ········return·this._9; |
| 43 | ····}; | 43 | ····}; |
| 44 | }; | 44 | }; |
| 45 | Promise.disableSynchronous·=·function()·{ | 45 | Promise.disableSynchronous·=·function()·{ |
| 46 | ····Promise.prototype.isPending·=·undefined; | 46 | ····Promise.prototype.isPending·=·undefined; |
| 47 | ····Promise.prototype.isFulfilled·=·undefined; | 47 | ····Promise.prototype.isFulfilled·=·undefined; |
| 48 | ····Promise.prototype.isRejected·=·undefined; | 48 | ····Promise.prototype.isRejected·=·undefined; |