open-agreements 0.7.6 → 0.7.7
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 +1 -1
- package/content/templates/openagreements-due-diligence-request-list/template.docx +0 -0
- package/content/templates/openagreements-due-diligence-request-list/template.md +1 -1
- package/dist/core/fill-pipeline.d.ts.map +1 -1
- package/dist/core/fill-pipeline.js +0 -8
- package/dist/core/fill-pipeline.js.map +1 -1
- package/dist/core/unified-pipeline.d.ts.map +1 -1
- package/dist/core/unified-pipeline.js +4 -6
- package/dist/core/unified-pipeline.js.map +1 -1
- package/gemini-extension.json +1 -1
- package/node_modules/@xmldom/xmldom/CHANGELOG.md +939 -0
- package/node_modules/@xmldom/xmldom/LICENSE +8 -0
- package/node_modules/@xmldom/xmldom/SECURITY.md +50 -0
- package/node_modules/@xmldom/xmldom/index.d.ts +1664 -0
- package/node_modules/@xmldom/xmldom/lib/.eslintrc.yml +3 -0
- package/node_modules/@xmldom/xmldom/lib/conventions.js +429 -0
- package/node_modules/@xmldom/xmldom/lib/dom-parser.js +586 -0
- package/node_modules/@xmldom/xmldom/lib/dom.js +3192 -0
- package/node_modules/@xmldom/xmldom/lib/entities.js +2171 -0
- package/node_modules/@xmldom/xmldom/lib/errors.js +202 -0
- package/node_modules/@xmldom/xmldom/lib/grammar.js +533 -0
- package/node_modules/@xmldom/xmldom/lib/index.js +41 -0
- package/node_modules/@xmldom/xmldom/lib/sax.js +929 -0
- package/node_modules/@xmldom/xmldom/package.json +74 -0
- package/node_modules/@xmldom/xmldom/readme.md +364 -0
- package/node_modules/core-util-is/LICENSE +19 -0
- package/node_modules/core-util-is/README.md +3 -0
- package/node_modules/core-util-is/lib/util.js +107 -0
- package/node_modules/core-util-is/package.json +38 -0
- package/node_modules/immediate/LICENSE.txt +20 -0
- package/node_modules/immediate/README.md +93 -0
- package/node_modules/immediate/dist/immediate.js +75 -0
- package/node_modules/immediate/dist/immediate.min.js +1 -0
- package/node_modules/immediate/lib/browser.js +69 -0
- package/node_modules/immediate/lib/index.js +73 -0
- package/node_modules/immediate/package.json +42 -0
- package/node_modules/inherits/LICENSE +16 -0
- package/node_modules/inherits/README.md +42 -0
- package/node_modules/inherits/inherits.js +9 -0
- package/node_modules/inherits/inherits_browser.js +27 -0
- package/node_modules/inherits/package.json +29 -0
- package/node_modules/isarray/.npmignore +1 -0
- package/node_modules/isarray/.travis.yml +4 -0
- package/node_modules/isarray/Makefile +6 -0
- package/node_modules/isarray/README.md +60 -0
- package/node_modules/isarray/component.json +19 -0
- package/node_modules/isarray/index.js +5 -0
- package/node_modules/isarray/package.json +45 -0
- package/node_modules/isarray/test.js +20 -0
- package/node_modules/jszip/.codeclimate.yml +16 -0
- package/node_modules/jszip/.editorconfig +8 -0
- package/node_modules/jszip/.eslintrc.js +43 -0
- package/node_modules/jszip/.github/workflows/pr.yaml +58 -0
- package/node_modules/jszip/.jekyll-metadata +0 -0
- package/node_modules/jszip/.travis.yml +17 -0
- package/node_modules/jszip/CHANGES.md +204 -0
- package/node_modules/jszip/LICENSE.markdown +651 -0
- package/node_modules/jszip/README.markdown +33 -0
- package/node_modules/jszip/deps.js +37 -0
- package/node_modules/jszip/dist/jszip.js +11577 -0
- package/node_modules/jszip/dist/jszip.min.js +13 -0
- package/node_modules/jszip/graph.svg +601 -0
- package/node_modules/jszip/index.d.ts +330 -0
- package/node_modules/jszip/lib/base64.js +106 -0
- package/node_modules/jszip/lib/compressedObject.js +74 -0
- package/node_modules/jszip/lib/compressions.js +14 -0
- package/node_modules/jszip/lib/crc32.js +77 -0
- package/node_modules/jszip/lib/defaults.js +11 -0
- package/node_modules/jszip/lib/external.js +18 -0
- package/node_modules/jszip/lib/flate.js +85 -0
- package/node_modules/jszip/lib/generate/ZipFileWorker.js +539 -0
- package/node_modules/jszip/lib/generate/index.js +57 -0
- package/node_modules/jszip/lib/index.js +55 -0
- package/node_modules/jszip/lib/license_header.js +11 -0
- package/node_modules/jszip/lib/load.js +88 -0
- package/node_modules/jszip/lib/nodejs/NodejsStreamInputAdapter.js +74 -0
- package/node_modules/jszip/lib/nodejs/NodejsStreamOutputAdapter.js +42 -0
- package/node_modules/jszip/lib/nodejsUtils.js +57 -0
- package/node_modules/jszip/lib/object.js +384 -0
- package/node_modules/jszip/lib/readable-stream-browser.js +10 -0
- package/node_modules/jszip/lib/reader/ArrayReader.js +57 -0
- package/node_modules/jszip/lib/reader/DataReader.js +116 -0
- package/node_modules/jszip/lib/reader/NodeBufferReader.js +19 -0
- package/node_modules/jszip/lib/reader/StringReader.js +38 -0
- package/node_modules/jszip/lib/reader/Uint8ArrayReader.js +22 -0
- package/node_modules/jszip/lib/reader/readerFor.js +28 -0
- package/node_modules/jszip/lib/signature.js +7 -0
- package/node_modules/jszip/lib/stream/ConvertWorker.js +26 -0
- package/node_modules/jszip/lib/stream/Crc32Probe.js +24 -0
- package/node_modules/jszip/lib/stream/DataLengthProbe.js +29 -0
- package/node_modules/jszip/lib/stream/DataWorker.js +116 -0
- package/node_modules/jszip/lib/stream/GenericWorker.js +263 -0
- package/node_modules/jszip/lib/stream/StreamHelper.js +214 -0
- package/node_modules/jszip/lib/support.js +38 -0
- package/node_modules/jszip/lib/utf8.js +275 -0
- package/node_modules/jszip/lib/utils.js +501 -0
- package/node_modules/jszip/lib/zipEntries.js +261 -0
- package/node_modules/jszip/lib/zipEntry.js +293 -0
- package/node_modules/jszip/lib/zipObject.js +133 -0
- package/node_modules/jszip/package.json +67 -0
- package/node_modules/jszip/sponsors.md +21 -0
- package/node_modules/jszip/tsconfig.json +101 -0
- package/node_modules/jszip/vendor/FileSaver.js +247 -0
- package/node_modules/lie/README.md +62 -0
- package/node_modules/lie/dist/lie.js +350 -0
- package/node_modules/lie/dist/lie.min.js +1 -0
- package/node_modules/lie/dist/lie.polyfill.js +358 -0
- package/node_modules/lie/dist/lie.polyfill.min.js +1 -0
- package/node_modules/lie/lib/browser.js +273 -0
- package/node_modules/lie/lib/index.js +298 -0
- package/node_modules/lie/license.md +7 -0
- package/node_modules/lie/lie.d.ts +244 -0
- package/node_modules/lie/package.json +69 -0
- package/node_modules/lie/polyfill.js +4 -0
- package/node_modules/pako/LICENSE +21 -0
- package/node_modules/pako/README.md +191 -0
- package/node_modules/pako/dist/pako.js +6818 -0
- package/node_modules/pako/dist/pako.min.js +1 -0
- package/node_modules/pako/dist/pako_deflate.js +3997 -0
- package/node_modules/pako/dist/pako_deflate.min.js +1 -0
- package/node_modules/pako/dist/pako_inflate.js +3300 -0
- package/node_modules/pako/dist/pako_inflate.min.js +1 -0
- package/node_modules/pako/index.js +14 -0
- package/node_modules/pako/lib/deflate.js +400 -0
- package/node_modules/pako/lib/inflate.js +423 -0
- package/node_modules/pako/lib/utils/common.js +105 -0
- package/node_modules/pako/lib/utils/strings.js +187 -0
- package/node_modules/pako/lib/zlib/README +59 -0
- package/node_modules/pako/lib/zlib/adler32.js +51 -0
- package/node_modules/pako/lib/zlib/constants.js +68 -0
- package/node_modules/pako/lib/zlib/crc32.js +59 -0
- package/node_modules/pako/lib/zlib/deflate.js +1874 -0
- package/node_modules/pako/lib/zlib/gzheader.js +58 -0
- package/node_modules/pako/lib/zlib/inffast.js +345 -0
- package/node_modules/pako/lib/zlib/inflate.js +1556 -0
- package/node_modules/pako/lib/zlib/inftrees.js +343 -0
- package/node_modules/pako/lib/zlib/messages.js +32 -0
- package/node_modules/pako/lib/zlib/trees.js +1222 -0
- package/node_modules/pako/lib/zlib/zstream.js +47 -0
- package/node_modules/pako/package.json +44 -0
- package/node_modules/process-nextick-args/index.js +45 -0
- package/node_modules/process-nextick-args/license.md +19 -0
- package/node_modules/process-nextick-args/package.json +25 -0
- package/node_modules/process-nextick-args/readme.md +18 -0
- package/node_modules/readable-stream/.travis.yml +34 -0
- package/node_modules/readable-stream/CONTRIBUTING.md +38 -0
- package/node_modules/readable-stream/GOVERNANCE.md +136 -0
- package/node_modules/readable-stream/LICENSE +47 -0
- package/node_modules/readable-stream/README.md +58 -0
- package/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +60 -0
- package/node_modules/readable-stream/duplex-browser.js +1 -0
- package/node_modules/readable-stream/duplex.js +1 -0
- package/node_modules/readable-stream/lib/_stream_duplex.js +131 -0
- package/node_modules/readable-stream/lib/_stream_passthrough.js +47 -0
- package/node_modules/readable-stream/lib/_stream_readable.js +1019 -0
- package/node_modules/readable-stream/lib/_stream_transform.js +214 -0
- package/node_modules/readable-stream/lib/_stream_writable.js +685 -0
- package/node_modules/readable-stream/lib/internal/streams/BufferList.js +78 -0
- package/node_modules/readable-stream/lib/internal/streams/destroy.js +84 -0
- package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
- package/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
- package/node_modules/readable-stream/package.json +52 -0
- package/node_modules/readable-stream/passthrough.js +1 -0
- package/node_modules/readable-stream/readable-browser.js +7 -0
- package/node_modules/readable-stream/readable.js +19 -0
- package/node_modules/readable-stream/transform.js +1 -0
- package/node_modules/readable-stream/writable-browser.js +1 -0
- package/node_modules/readable-stream/writable.js +8 -0
- package/node_modules/safe-buffer/LICENSE +21 -0
- package/node_modules/safe-buffer/README.md +584 -0
- package/node_modules/safe-buffer/index.d.ts +187 -0
- package/node_modules/safe-buffer/index.js +62 -0
- package/node_modules/safe-buffer/package.json +37 -0
- package/node_modules/setimmediate/LICENSE.txt +20 -0
- package/node_modules/setimmediate/package.json +30 -0
- package/node_modules/setimmediate/setImmediate.js +186 -0
- package/node_modules/string_decoder/.travis.yml +50 -0
- package/node_modules/string_decoder/LICENSE +48 -0
- package/node_modules/string_decoder/README.md +47 -0
- package/node_modules/string_decoder/lib/string_decoder.js +296 -0
- package/node_modules/string_decoder/package.json +31 -0
- package/node_modules/util-deprecate/History.md +16 -0
- package/node_modules/util-deprecate/LICENSE +24 -0
- package/node_modules/util-deprecate/README.md +53 -0
- package/node_modules/util-deprecate/browser.js +67 -0
- package/node_modules/util-deprecate/node.js +6 -0
- package/node_modules/util-deprecate/package.json +27 -0
- package/package.json +1 -1
- package/skills/client-email/SKILL.md +8 -6
- package/skills/employment-contract/SKILL.md +23 -6
- package/skills/non-compete-contract-explainer/content/alabama.md +251 -0
- package/skills/non-compete-contract-explainer/content/alaska.md +160 -0
- package/skills/non-compete-contract-explainer/content/american-samoa.md +187 -0
- package/skills/non-compete-contract-explainer/content/arizona.md +293 -0
- package/skills/non-compete-contract-explainer/content/arkansas.md +235 -0
- package/skills/non-compete-contract-explainer/content/california.md +270 -0
- package/skills/non-compete-contract-explainer/content/cnmi.md +168 -0
- package/skills/non-compete-contract-explainer/content/colorado.md +277 -0
- package/skills/non-compete-contract-explainer/content/connecticut.md +220 -0
- package/skills/non-compete-contract-explainer/content/delaware.md +222 -0
- package/skills/non-compete-contract-explainer/content/district-of-columbia.md +263 -0
- package/skills/non-compete-contract-explainer/content/florida.md +267 -0
- package/skills/non-compete-contract-explainer/content/georgia.md +323 -0
- package/skills/non-compete-contract-explainer/content/guam.md +180 -0
- package/skills/non-compete-contract-explainer/content/hawaii.md +236 -0
- package/skills/non-compete-contract-explainer/content/idaho.md +258 -0
- package/skills/non-compete-contract-explainer/content/illinois.md +266 -0
- package/skills/non-compete-contract-explainer/content/india.md +269 -0
- package/skills/non-compete-contract-explainer/content/indiana.md +253 -0
- package/skills/non-compete-contract-explainer/content/iowa.md +232 -0
- package/skills/non-compete-contract-explainer/content/kansas.md +227 -0
- package/skills/non-compete-contract-explainer/content/kentucky.md +201 -0
- package/skills/non-compete-contract-explainer/content/louisiana.md +272 -0
- package/skills/non-compete-contract-explainer/content/maine.md +178 -0
- package/skills/non-compete-contract-explainer/content/maryland.md +244 -0
- package/skills/non-compete-contract-explainer/content/massachusetts.md +272 -0
- package/skills/non-compete-contract-explainer/content/michigan.md +222 -0
- package/skills/non-compete-contract-explainer/content/minnesota.md +171 -0
- package/skills/non-compete-contract-explainer/content/mississippi.md +237 -0
- package/skills/non-compete-contract-explainer/content/missouri.md +219 -0
- package/skills/non-compete-contract-explainer/content/montana.md +202 -0
- package/skills/non-compete-contract-explainer/content/nebraska.md +206 -0
- package/skills/non-compete-contract-explainer/content/nevada.md +278 -0
- package/skills/non-compete-contract-explainer/content/new-hampshire.md +233 -0
- package/skills/non-compete-contract-explainer/content/new-jersey.md +277 -0
- package/skills/non-compete-contract-explainer/content/new-mexico.md +244 -0
- package/skills/non-compete-contract-explainer/content/new-york.md +226 -0
- package/skills/non-compete-contract-explainer/content/north-carolina.md +346 -0
- package/skills/non-compete-contract-explainer/content/north-dakota.md +187 -0
- package/skills/non-compete-contract-explainer/content/ohio.md +207 -0
- package/skills/non-compete-contract-explainer/content/oklahoma.md +196 -0
- package/skills/non-compete-contract-explainer/content/oregon.md +359 -0
- package/skills/non-compete-contract-explainer/content/pennsylvania.md +254 -0
- package/skills/non-compete-contract-explainer/content/philippines.md +211 -0
- package/skills/non-compete-contract-explainer/content/puerto-rico.md +163 -0
- package/skills/non-compete-contract-explainer/content/rhode-island.md +171 -0
- package/skills/non-compete-contract-explainer/content/singapore.md +229 -0
- package/skills/non-compete-contract-explainer/content/south-carolina.md +226 -0
- package/skills/non-compete-contract-explainer/content/south-dakota.md +222 -0
- package/skills/non-compete-contract-explainer/content/tennessee.md +251 -0
- package/skills/non-compete-contract-explainer/content/texas.md +297 -0
- package/skills/non-compete-contract-explainer/content/us-virgin-islands.md +193 -0
- package/skills/non-compete-contract-explainer/content/utah.md +250 -0
- package/skills/non-compete-contract-explainer/content/vermont.md +193 -0
- package/skills/non-compete-contract-explainer/content/virginia.md +213 -0
- package/skills/non-compete-contract-explainer/content/washington.md +296 -0
- package/skills/non-compete-contract-explainer/content/west-virginia.md +187 -0
- package/skills/non-compete-contract-explainer/content/wisconsin.md +293 -0
- package/skills/non-compete-contract-explainer/content/wyoming.md +55 -45
- package/skills/non-compete-contract-explainer/manifest.json +523 -1
|
@@ -0,0 +1,350 @@
|
|
|
1
|
+
(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.Promise = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(_dereq_,module,exports){
|
|
2
|
+
(function (global){
|
|
3
|
+
'use strict';
|
|
4
|
+
var Mutation = global.MutationObserver || global.WebKitMutationObserver;
|
|
5
|
+
|
|
6
|
+
var scheduleDrain;
|
|
7
|
+
|
|
8
|
+
{
|
|
9
|
+
if (Mutation) {
|
|
10
|
+
var called = 0;
|
|
11
|
+
var observer = new Mutation(nextTick);
|
|
12
|
+
var element = global.document.createTextNode('');
|
|
13
|
+
observer.observe(element, {
|
|
14
|
+
characterData: true
|
|
15
|
+
});
|
|
16
|
+
scheduleDrain = function () {
|
|
17
|
+
element.data = (called = ++called % 2);
|
|
18
|
+
};
|
|
19
|
+
} else if (!global.setImmediate && typeof global.MessageChannel !== 'undefined') {
|
|
20
|
+
var channel = new global.MessageChannel();
|
|
21
|
+
channel.port1.onmessage = nextTick;
|
|
22
|
+
scheduleDrain = function () {
|
|
23
|
+
channel.port2.postMessage(0);
|
|
24
|
+
};
|
|
25
|
+
} else if ('document' in global && 'onreadystatechange' in global.document.createElement('script')) {
|
|
26
|
+
scheduleDrain = function () {
|
|
27
|
+
|
|
28
|
+
// Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted
|
|
29
|
+
// into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.
|
|
30
|
+
var scriptEl = global.document.createElement('script');
|
|
31
|
+
scriptEl.onreadystatechange = function () {
|
|
32
|
+
nextTick();
|
|
33
|
+
|
|
34
|
+
scriptEl.onreadystatechange = null;
|
|
35
|
+
scriptEl.parentNode.removeChild(scriptEl);
|
|
36
|
+
scriptEl = null;
|
|
37
|
+
};
|
|
38
|
+
global.document.documentElement.appendChild(scriptEl);
|
|
39
|
+
};
|
|
40
|
+
} else {
|
|
41
|
+
scheduleDrain = function () {
|
|
42
|
+
setTimeout(nextTick, 0);
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
var draining;
|
|
48
|
+
var queue = [];
|
|
49
|
+
//named nextTick for less confusing stack traces
|
|
50
|
+
function nextTick() {
|
|
51
|
+
draining = true;
|
|
52
|
+
var i, oldQueue;
|
|
53
|
+
var len = queue.length;
|
|
54
|
+
while (len) {
|
|
55
|
+
oldQueue = queue;
|
|
56
|
+
queue = [];
|
|
57
|
+
i = -1;
|
|
58
|
+
while (++i < len) {
|
|
59
|
+
oldQueue[i]();
|
|
60
|
+
}
|
|
61
|
+
len = queue.length;
|
|
62
|
+
}
|
|
63
|
+
draining = false;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
module.exports = immediate;
|
|
67
|
+
function immediate(task) {
|
|
68
|
+
if (queue.push(task) === 1 && !draining) {
|
|
69
|
+
scheduleDrain();
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
|
|
74
|
+
},{}],2:[function(_dereq_,module,exports){
|
|
75
|
+
'use strict';
|
|
76
|
+
var immediate = _dereq_(1);
|
|
77
|
+
|
|
78
|
+
/* istanbul ignore next */
|
|
79
|
+
function INTERNAL() {}
|
|
80
|
+
|
|
81
|
+
var handlers = {};
|
|
82
|
+
|
|
83
|
+
var REJECTED = ['REJECTED'];
|
|
84
|
+
var FULFILLED = ['FULFILLED'];
|
|
85
|
+
var PENDING = ['PENDING'];
|
|
86
|
+
|
|
87
|
+
module.exports = Promise;
|
|
88
|
+
|
|
89
|
+
function Promise(resolver) {
|
|
90
|
+
if (typeof resolver !== 'function') {
|
|
91
|
+
throw new TypeError('resolver must be a function');
|
|
92
|
+
}
|
|
93
|
+
this.state = PENDING;
|
|
94
|
+
this.queue = [];
|
|
95
|
+
this.outcome = void 0;
|
|
96
|
+
if (resolver !== INTERNAL) {
|
|
97
|
+
safelyResolveThenable(this, resolver);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
Promise.prototype["finally"] = function (callback) {
|
|
102
|
+
if (typeof callback !== 'function') {
|
|
103
|
+
return this;
|
|
104
|
+
}
|
|
105
|
+
var p = this.constructor;
|
|
106
|
+
return this.then(resolve, reject);
|
|
107
|
+
|
|
108
|
+
function resolve(value) {
|
|
109
|
+
function yes () {
|
|
110
|
+
return value;
|
|
111
|
+
}
|
|
112
|
+
return p.resolve(callback()).then(yes);
|
|
113
|
+
}
|
|
114
|
+
function reject(reason) {
|
|
115
|
+
function no () {
|
|
116
|
+
throw reason;
|
|
117
|
+
}
|
|
118
|
+
return p.resolve(callback()).then(no);
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
Promise.prototype["catch"] = function (onRejected) {
|
|
122
|
+
return this.then(null, onRejected);
|
|
123
|
+
};
|
|
124
|
+
Promise.prototype.then = function (onFulfilled, onRejected) {
|
|
125
|
+
if (typeof onFulfilled !== 'function' && this.state === FULFILLED ||
|
|
126
|
+
typeof onRejected !== 'function' && this.state === REJECTED) {
|
|
127
|
+
return this;
|
|
128
|
+
}
|
|
129
|
+
var promise = new this.constructor(INTERNAL);
|
|
130
|
+
if (this.state !== PENDING) {
|
|
131
|
+
var resolver = this.state === FULFILLED ? onFulfilled : onRejected;
|
|
132
|
+
unwrap(promise, resolver, this.outcome);
|
|
133
|
+
} else {
|
|
134
|
+
this.queue.push(new QueueItem(promise, onFulfilled, onRejected));
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
return promise;
|
|
138
|
+
};
|
|
139
|
+
function QueueItem(promise, onFulfilled, onRejected) {
|
|
140
|
+
this.promise = promise;
|
|
141
|
+
if (typeof onFulfilled === 'function') {
|
|
142
|
+
this.onFulfilled = onFulfilled;
|
|
143
|
+
this.callFulfilled = this.otherCallFulfilled;
|
|
144
|
+
}
|
|
145
|
+
if (typeof onRejected === 'function') {
|
|
146
|
+
this.onRejected = onRejected;
|
|
147
|
+
this.callRejected = this.otherCallRejected;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
QueueItem.prototype.callFulfilled = function (value) {
|
|
151
|
+
handlers.resolve(this.promise, value);
|
|
152
|
+
};
|
|
153
|
+
QueueItem.prototype.otherCallFulfilled = function (value) {
|
|
154
|
+
unwrap(this.promise, this.onFulfilled, value);
|
|
155
|
+
};
|
|
156
|
+
QueueItem.prototype.callRejected = function (value) {
|
|
157
|
+
handlers.reject(this.promise, value);
|
|
158
|
+
};
|
|
159
|
+
QueueItem.prototype.otherCallRejected = function (value) {
|
|
160
|
+
unwrap(this.promise, this.onRejected, value);
|
|
161
|
+
};
|
|
162
|
+
|
|
163
|
+
function unwrap(promise, func, value) {
|
|
164
|
+
immediate(function () {
|
|
165
|
+
var returnValue;
|
|
166
|
+
try {
|
|
167
|
+
returnValue = func(value);
|
|
168
|
+
} catch (e) {
|
|
169
|
+
return handlers.reject(promise, e);
|
|
170
|
+
}
|
|
171
|
+
if (returnValue === promise) {
|
|
172
|
+
handlers.reject(promise, new TypeError('Cannot resolve promise with itself'));
|
|
173
|
+
} else {
|
|
174
|
+
handlers.resolve(promise, returnValue);
|
|
175
|
+
}
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
handlers.resolve = function (self, value) {
|
|
180
|
+
var result = tryCatch(getThen, value);
|
|
181
|
+
if (result.status === 'error') {
|
|
182
|
+
return handlers.reject(self, result.value);
|
|
183
|
+
}
|
|
184
|
+
var thenable = result.value;
|
|
185
|
+
|
|
186
|
+
if (thenable) {
|
|
187
|
+
safelyResolveThenable(self, thenable);
|
|
188
|
+
} else {
|
|
189
|
+
self.state = FULFILLED;
|
|
190
|
+
self.outcome = value;
|
|
191
|
+
var i = -1;
|
|
192
|
+
var len = self.queue.length;
|
|
193
|
+
while (++i < len) {
|
|
194
|
+
self.queue[i].callFulfilled(value);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
return self;
|
|
198
|
+
};
|
|
199
|
+
handlers.reject = function (self, error) {
|
|
200
|
+
self.state = REJECTED;
|
|
201
|
+
self.outcome = error;
|
|
202
|
+
var i = -1;
|
|
203
|
+
var len = self.queue.length;
|
|
204
|
+
while (++i < len) {
|
|
205
|
+
self.queue[i].callRejected(error);
|
|
206
|
+
}
|
|
207
|
+
return self;
|
|
208
|
+
};
|
|
209
|
+
|
|
210
|
+
function getThen(obj) {
|
|
211
|
+
// Make sure we only access the accessor once as required by the spec
|
|
212
|
+
var then = obj && obj.then;
|
|
213
|
+
if (obj && (typeof obj === 'object' || typeof obj === 'function') && typeof then === 'function') {
|
|
214
|
+
return function appyThen() {
|
|
215
|
+
then.apply(obj, arguments);
|
|
216
|
+
};
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
function safelyResolveThenable(self, thenable) {
|
|
221
|
+
// Either fulfill, reject or reject with error
|
|
222
|
+
var called = false;
|
|
223
|
+
function onError(value) {
|
|
224
|
+
if (called) {
|
|
225
|
+
return;
|
|
226
|
+
}
|
|
227
|
+
called = true;
|
|
228
|
+
handlers.reject(self, value);
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
function onSuccess(value) {
|
|
232
|
+
if (called) {
|
|
233
|
+
return;
|
|
234
|
+
}
|
|
235
|
+
called = true;
|
|
236
|
+
handlers.resolve(self, value);
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
function tryToUnwrap() {
|
|
240
|
+
thenable(onSuccess, onError);
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
var result = tryCatch(tryToUnwrap);
|
|
244
|
+
if (result.status === 'error') {
|
|
245
|
+
onError(result.value);
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
function tryCatch(func, value) {
|
|
250
|
+
var out = {};
|
|
251
|
+
try {
|
|
252
|
+
out.value = func(value);
|
|
253
|
+
out.status = 'success';
|
|
254
|
+
} catch (e) {
|
|
255
|
+
out.status = 'error';
|
|
256
|
+
out.value = e;
|
|
257
|
+
}
|
|
258
|
+
return out;
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
Promise.resolve = resolve;
|
|
262
|
+
function resolve(value) {
|
|
263
|
+
if (value instanceof this) {
|
|
264
|
+
return value;
|
|
265
|
+
}
|
|
266
|
+
return handlers.resolve(new this(INTERNAL), value);
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
Promise.reject = reject;
|
|
270
|
+
function reject(reason) {
|
|
271
|
+
var promise = new this(INTERNAL);
|
|
272
|
+
return handlers.reject(promise, reason);
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
Promise.all = all;
|
|
276
|
+
function all(iterable) {
|
|
277
|
+
var self = this;
|
|
278
|
+
if (Object.prototype.toString.call(iterable) !== '[object Array]') {
|
|
279
|
+
return this.reject(new TypeError('must be an array'));
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
var len = iterable.length;
|
|
283
|
+
var called = false;
|
|
284
|
+
if (!len) {
|
|
285
|
+
return this.resolve([]);
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
var values = new Array(len);
|
|
289
|
+
var resolved = 0;
|
|
290
|
+
var i = -1;
|
|
291
|
+
var promise = new this(INTERNAL);
|
|
292
|
+
|
|
293
|
+
while (++i < len) {
|
|
294
|
+
allResolver(iterable[i], i);
|
|
295
|
+
}
|
|
296
|
+
return promise;
|
|
297
|
+
function allResolver(value, i) {
|
|
298
|
+
self.resolve(value).then(resolveFromAll, function (error) {
|
|
299
|
+
if (!called) {
|
|
300
|
+
called = true;
|
|
301
|
+
handlers.reject(promise, error);
|
|
302
|
+
}
|
|
303
|
+
});
|
|
304
|
+
function resolveFromAll(outValue) {
|
|
305
|
+
values[i] = outValue;
|
|
306
|
+
if (++resolved === len && !called) {
|
|
307
|
+
called = true;
|
|
308
|
+
handlers.resolve(promise, values);
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
Promise.race = race;
|
|
315
|
+
function race(iterable) {
|
|
316
|
+
var self = this;
|
|
317
|
+
if (Object.prototype.toString.call(iterable) !== '[object Array]') {
|
|
318
|
+
return this.reject(new TypeError('must be an array'));
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
var len = iterable.length;
|
|
322
|
+
var called = false;
|
|
323
|
+
if (!len) {
|
|
324
|
+
return this.resolve([]);
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
var i = -1;
|
|
328
|
+
var promise = new this(INTERNAL);
|
|
329
|
+
|
|
330
|
+
while (++i < len) {
|
|
331
|
+
resolver(iterable[i]);
|
|
332
|
+
}
|
|
333
|
+
return promise;
|
|
334
|
+
function resolver(value) {
|
|
335
|
+
self.resolve(value).then(function (response) {
|
|
336
|
+
if (!called) {
|
|
337
|
+
called = true;
|
|
338
|
+
handlers.resolve(promise, response);
|
|
339
|
+
}
|
|
340
|
+
}, function (error) {
|
|
341
|
+
if (!called) {
|
|
342
|
+
called = true;
|
|
343
|
+
handlers.reject(promise, error);
|
|
344
|
+
}
|
|
345
|
+
});
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
},{"1":1}]},{},[2])(2)
|
|
350
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,t.Promise=e()}}(function(){return function e(t,n,r){function o(u,f){if(!n[u]){if(!t[u]){var c="function"==typeof require&&require;if(!f&&c)return c(u,!0);if(i)return i(u,!0);var s=new Error("Cannot find module '"+u+"'");throw s.code="MODULE_NOT_FOUND",s}var l=n[u]={exports:{}};t[u][0].call(l.exports,function(e){var n=t[u][1][e];return o(n?n:e)},l,l.exports,e,t,n,r)}return n[u].exports}for(var i="function"==typeof require&&require,u=0;u<r.length;u++)o(r[u]);return o}({1:[function(e,t,n){(function(e){"use strict";function n(){l=!0;for(var e,t,n=a.length;n;){for(t=a,a=[],e=-1;++e<n;)t[e]();n=a.length}l=!1}function r(e){1!==a.push(e)||l||o()}var o,i=e.MutationObserver||e.WebKitMutationObserver;if(i){var u=0,f=new i(n),c=e.document.createTextNode("");f.observe(c,{characterData:!0}),o=function(){c.data=u=++u%2}}else if(e.setImmediate||"undefined"==typeof e.MessageChannel)o="document"in e&&"onreadystatechange"in e.document.createElement("script")?function(){var t=e.document.createElement("script");t.onreadystatechange=function(){n(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(n,0)};else{var s=new e.MessageChannel;s.port1.onmessage=n,o=function(){s.port2.postMessage(0)}}var l,a=[];t.exports=r}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],2:[function(e,t,n){"use strict";function r(){}function o(e){if("function"!=typeof e)throw new TypeError("resolver must be a function");this.state=w,this.queue=[],this.outcome=void 0,e!==r&&c(this,e)}function i(e,t,n){this.promise=e,"function"==typeof t&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),"function"==typeof n&&(this.onRejected=n,this.callRejected=this.otherCallRejected)}function u(e,t,n){d(function(){var r;try{r=t(n)}catch(t){return v.reject(e,t)}r===e?v.reject(e,new TypeError("Cannot resolve promise with itself")):v.resolve(e,r)})}function f(e){var t=e&&e.then;if(e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof t)return function(){t.apply(e,arguments)}}function c(e,t){function n(t){i||(i=!0,v.reject(e,t))}function r(t){i||(i=!0,v.resolve(e,t))}function o(){t(r,n)}var i=!1,u=s(o);"error"===u.status&&n(u.value)}function s(e,t){var n={};try{n.value=e(t),n.status="success"}catch(e){n.status="error",n.value=e}return n}function l(e){return e instanceof this?e:v.resolve(new this(r),e)}function a(e){var t=new this(r);return v.reject(t,e)}function h(e){function t(e,t){function r(e){u[t]=e,++f!==o||i||(i=!0,v.resolve(s,u))}n.resolve(e).then(r,function(e){i||(i=!0,v.reject(s,e))})}var n=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var o=e.length,i=!1;if(!o)return this.resolve([]);for(var u=new Array(o),f=0,c=-1,s=new this(r);++c<o;)t(e[c],c);return s}function p(e){function t(e){n.resolve(e).then(function(e){i||(i=!0,v.resolve(f,e))},function(e){i||(i=!0,v.reject(f,e))})}var n=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var o=e.length,i=!1;if(!o)return this.resolve([]);for(var u=-1,f=new this(r);++u<o;)t(e[u]);return f}var d=e(1),v={},y=["REJECTED"],m=["FULFILLED"],w=["PENDING"];t.exports=o,o.prototype.finally=function(e){function t(t){function n(){return t}return r.resolve(e()).then(n)}function n(t){function n(){throw t}return r.resolve(e()).then(n)}if("function"!=typeof e)return this;var r=this.constructor;return this.then(t,n)},o.prototype.catch=function(e){return this.then(null,e)},o.prototype.then=function(e,t){if("function"!=typeof e&&this.state===m||"function"!=typeof t&&this.state===y)return this;var n=new this.constructor(r);if(this.state!==w){var o=this.state===m?e:t;u(n,o,this.outcome)}else this.queue.push(new i(n,e,t));return n},i.prototype.callFulfilled=function(e){v.resolve(this.promise,e)},i.prototype.otherCallFulfilled=function(e){u(this.promise,this.onFulfilled,e)},i.prototype.callRejected=function(e){v.reject(this.promise,e)},i.prototype.otherCallRejected=function(e){u(this.promise,this.onRejected,e)},v.resolve=function(e,t){var n=s(f,t);if("error"===n.status)return v.reject(e,n.value);var r=n.value;if(r)c(e,r);else{e.state=m,e.outcome=t;for(var o=-1,i=e.queue.length;++o<i;)e.queue[o].callFulfilled(t)}return e},v.reject=function(e,t){e.state=y,e.outcome=t;for(var n=-1,r=e.queue.length;++n<r;)e.queue[n].callRejected(t);return e},o.resolve=l,o.reject=a,o.all=h,o.race=p},{1:1}]},{},[2])(2)});
|
|
@@ -0,0 +1,358 @@
|
|
|
1
|
+
(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(_dereq_,module,exports){
|
|
2
|
+
'use strict';
|
|
3
|
+
var immediate = _dereq_(2);
|
|
4
|
+
|
|
5
|
+
/* istanbul ignore next */
|
|
6
|
+
function INTERNAL() {}
|
|
7
|
+
|
|
8
|
+
var handlers = {};
|
|
9
|
+
|
|
10
|
+
var REJECTED = ['REJECTED'];
|
|
11
|
+
var FULFILLED = ['FULFILLED'];
|
|
12
|
+
var PENDING = ['PENDING'];
|
|
13
|
+
|
|
14
|
+
module.exports = Promise;
|
|
15
|
+
|
|
16
|
+
function Promise(resolver) {
|
|
17
|
+
if (typeof resolver !== 'function') {
|
|
18
|
+
throw new TypeError('resolver must be a function');
|
|
19
|
+
}
|
|
20
|
+
this.state = PENDING;
|
|
21
|
+
this.queue = [];
|
|
22
|
+
this.outcome = void 0;
|
|
23
|
+
if (resolver !== INTERNAL) {
|
|
24
|
+
safelyResolveThenable(this, resolver);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
Promise.prototype["finally"] = function (callback) {
|
|
29
|
+
if (typeof callback !== 'function') {
|
|
30
|
+
return this;
|
|
31
|
+
}
|
|
32
|
+
var p = this.constructor;
|
|
33
|
+
return this.then(resolve, reject);
|
|
34
|
+
|
|
35
|
+
function resolve(value) {
|
|
36
|
+
function yes () {
|
|
37
|
+
return value;
|
|
38
|
+
}
|
|
39
|
+
return p.resolve(callback()).then(yes);
|
|
40
|
+
}
|
|
41
|
+
function reject(reason) {
|
|
42
|
+
function no () {
|
|
43
|
+
throw reason;
|
|
44
|
+
}
|
|
45
|
+
return p.resolve(callback()).then(no);
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
Promise.prototype["catch"] = function (onRejected) {
|
|
49
|
+
return this.then(null, onRejected);
|
|
50
|
+
};
|
|
51
|
+
Promise.prototype.then = function (onFulfilled, onRejected) {
|
|
52
|
+
if (typeof onFulfilled !== 'function' && this.state === FULFILLED ||
|
|
53
|
+
typeof onRejected !== 'function' && this.state === REJECTED) {
|
|
54
|
+
return this;
|
|
55
|
+
}
|
|
56
|
+
var promise = new this.constructor(INTERNAL);
|
|
57
|
+
if (this.state !== PENDING) {
|
|
58
|
+
var resolver = this.state === FULFILLED ? onFulfilled : onRejected;
|
|
59
|
+
unwrap(promise, resolver, this.outcome);
|
|
60
|
+
} else {
|
|
61
|
+
this.queue.push(new QueueItem(promise, onFulfilled, onRejected));
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
return promise;
|
|
65
|
+
};
|
|
66
|
+
function QueueItem(promise, onFulfilled, onRejected) {
|
|
67
|
+
this.promise = promise;
|
|
68
|
+
if (typeof onFulfilled === 'function') {
|
|
69
|
+
this.onFulfilled = onFulfilled;
|
|
70
|
+
this.callFulfilled = this.otherCallFulfilled;
|
|
71
|
+
}
|
|
72
|
+
if (typeof onRejected === 'function') {
|
|
73
|
+
this.onRejected = onRejected;
|
|
74
|
+
this.callRejected = this.otherCallRejected;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
QueueItem.prototype.callFulfilled = function (value) {
|
|
78
|
+
handlers.resolve(this.promise, value);
|
|
79
|
+
};
|
|
80
|
+
QueueItem.prototype.otherCallFulfilled = function (value) {
|
|
81
|
+
unwrap(this.promise, this.onFulfilled, value);
|
|
82
|
+
};
|
|
83
|
+
QueueItem.prototype.callRejected = function (value) {
|
|
84
|
+
handlers.reject(this.promise, value);
|
|
85
|
+
};
|
|
86
|
+
QueueItem.prototype.otherCallRejected = function (value) {
|
|
87
|
+
unwrap(this.promise, this.onRejected, value);
|
|
88
|
+
};
|
|
89
|
+
|
|
90
|
+
function unwrap(promise, func, value) {
|
|
91
|
+
immediate(function () {
|
|
92
|
+
var returnValue;
|
|
93
|
+
try {
|
|
94
|
+
returnValue = func(value);
|
|
95
|
+
} catch (e) {
|
|
96
|
+
return handlers.reject(promise, e);
|
|
97
|
+
}
|
|
98
|
+
if (returnValue === promise) {
|
|
99
|
+
handlers.reject(promise, new TypeError('Cannot resolve promise with itself'));
|
|
100
|
+
} else {
|
|
101
|
+
handlers.resolve(promise, returnValue);
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
handlers.resolve = function (self, value) {
|
|
107
|
+
var result = tryCatch(getThen, value);
|
|
108
|
+
if (result.status === 'error') {
|
|
109
|
+
return handlers.reject(self, result.value);
|
|
110
|
+
}
|
|
111
|
+
var thenable = result.value;
|
|
112
|
+
|
|
113
|
+
if (thenable) {
|
|
114
|
+
safelyResolveThenable(self, thenable);
|
|
115
|
+
} else {
|
|
116
|
+
self.state = FULFILLED;
|
|
117
|
+
self.outcome = value;
|
|
118
|
+
var i = -1;
|
|
119
|
+
var len = self.queue.length;
|
|
120
|
+
while (++i < len) {
|
|
121
|
+
self.queue[i].callFulfilled(value);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
return self;
|
|
125
|
+
};
|
|
126
|
+
handlers.reject = function (self, error) {
|
|
127
|
+
self.state = REJECTED;
|
|
128
|
+
self.outcome = error;
|
|
129
|
+
var i = -1;
|
|
130
|
+
var len = self.queue.length;
|
|
131
|
+
while (++i < len) {
|
|
132
|
+
self.queue[i].callRejected(error);
|
|
133
|
+
}
|
|
134
|
+
return self;
|
|
135
|
+
};
|
|
136
|
+
|
|
137
|
+
function getThen(obj) {
|
|
138
|
+
// Make sure we only access the accessor once as required by the spec
|
|
139
|
+
var then = obj && obj.then;
|
|
140
|
+
if (obj && (typeof obj === 'object' || typeof obj === 'function') && typeof then === 'function') {
|
|
141
|
+
return function appyThen() {
|
|
142
|
+
then.apply(obj, arguments);
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
function safelyResolveThenable(self, thenable) {
|
|
148
|
+
// Either fulfill, reject or reject with error
|
|
149
|
+
var called = false;
|
|
150
|
+
function onError(value) {
|
|
151
|
+
if (called) {
|
|
152
|
+
return;
|
|
153
|
+
}
|
|
154
|
+
called = true;
|
|
155
|
+
handlers.reject(self, value);
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
function onSuccess(value) {
|
|
159
|
+
if (called) {
|
|
160
|
+
return;
|
|
161
|
+
}
|
|
162
|
+
called = true;
|
|
163
|
+
handlers.resolve(self, value);
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
function tryToUnwrap() {
|
|
167
|
+
thenable(onSuccess, onError);
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
var result = tryCatch(tryToUnwrap);
|
|
171
|
+
if (result.status === 'error') {
|
|
172
|
+
onError(result.value);
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
function tryCatch(func, value) {
|
|
177
|
+
var out = {};
|
|
178
|
+
try {
|
|
179
|
+
out.value = func(value);
|
|
180
|
+
out.status = 'success';
|
|
181
|
+
} catch (e) {
|
|
182
|
+
out.status = 'error';
|
|
183
|
+
out.value = e;
|
|
184
|
+
}
|
|
185
|
+
return out;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
Promise.resolve = resolve;
|
|
189
|
+
function resolve(value) {
|
|
190
|
+
if (value instanceof this) {
|
|
191
|
+
return value;
|
|
192
|
+
}
|
|
193
|
+
return handlers.resolve(new this(INTERNAL), value);
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
Promise.reject = reject;
|
|
197
|
+
function reject(reason) {
|
|
198
|
+
var promise = new this(INTERNAL);
|
|
199
|
+
return handlers.reject(promise, reason);
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
Promise.all = all;
|
|
203
|
+
function all(iterable) {
|
|
204
|
+
var self = this;
|
|
205
|
+
if (Object.prototype.toString.call(iterable) !== '[object Array]') {
|
|
206
|
+
return this.reject(new TypeError('must be an array'));
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
var len = iterable.length;
|
|
210
|
+
var called = false;
|
|
211
|
+
if (!len) {
|
|
212
|
+
return this.resolve([]);
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
var values = new Array(len);
|
|
216
|
+
var resolved = 0;
|
|
217
|
+
var i = -1;
|
|
218
|
+
var promise = new this(INTERNAL);
|
|
219
|
+
|
|
220
|
+
while (++i < len) {
|
|
221
|
+
allResolver(iterable[i], i);
|
|
222
|
+
}
|
|
223
|
+
return promise;
|
|
224
|
+
function allResolver(value, i) {
|
|
225
|
+
self.resolve(value).then(resolveFromAll, function (error) {
|
|
226
|
+
if (!called) {
|
|
227
|
+
called = true;
|
|
228
|
+
handlers.reject(promise, error);
|
|
229
|
+
}
|
|
230
|
+
});
|
|
231
|
+
function resolveFromAll(outValue) {
|
|
232
|
+
values[i] = outValue;
|
|
233
|
+
if (++resolved === len && !called) {
|
|
234
|
+
called = true;
|
|
235
|
+
handlers.resolve(promise, values);
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
Promise.race = race;
|
|
242
|
+
function race(iterable) {
|
|
243
|
+
var self = this;
|
|
244
|
+
if (Object.prototype.toString.call(iterable) !== '[object Array]') {
|
|
245
|
+
return this.reject(new TypeError('must be an array'));
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
var len = iterable.length;
|
|
249
|
+
var called = false;
|
|
250
|
+
if (!len) {
|
|
251
|
+
return this.resolve([]);
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
var i = -1;
|
|
255
|
+
var promise = new this(INTERNAL);
|
|
256
|
+
|
|
257
|
+
while (++i < len) {
|
|
258
|
+
resolver(iterable[i]);
|
|
259
|
+
}
|
|
260
|
+
return promise;
|
|
261
|
+
function resolver(value) {
|
|
262
|
+
self.resolve(value).then(function (response) {
|
|
263
|
+
if (!called) {
|
|
264
|
+
called = true;
|
|
265
|
+
handlers.resolve(promise, response);
|
|
266
|
+
}
|
|
267
|
+
}, function (error) {
|
|
268
|
+
if (!called) {
|
|
269
|
+
called = true;
|
|
270
|
+
handlers.reject(promise, error);
|
|
271
|
+
}
|
|
272
|
+
});
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
},{"2":2}],2:[function(_dereq_,module,exports){
|
|
277
|
+
(function (global){
|
|
278
|
+
'use strict';
|
|
279
|
+
var Mutation = global.MutationObserver || global.WebKitMutationObserver;
|
|
280
|
+
|
|
281
|
+
var scheduleDrain;
|
|
282
|
+
|
|
283
|
+
{
|
|
284
|
+
if (Mutation) {
|
|
285
|
+
var called = 0;
|
|
286
|
+
var observer = new Mutation(nextTick);
|
|
287
|
+
var element = global.document.createTextNode('');
|
|
288
|
+
observer.observe(element, {
|
|
289
|
+
characterData: true
|
|
290
|
+
});
|
|
291
|
+
scheduleDrain = function () {
|
|
292
|
+
element.data = (called = ++called % 2);
|
|
293
|
+
};
|
|
294
|
+
} else if (!global.setImmediate && typeof global.MessageChannel !== 'undefined') {
|
|
295
|
+
var channel = new global.MessageChannel();
|
|
296
|
+
channel.port1.onmessage = nextTick;
|
|
297
|
+
scheduleDrain = function () {
|
|
298
|
+
channel.port2.postMessage(0);
|
|
299
|
+
};
|
|
300
|
+
} else if ('document' in global && 'onreadystatechange' in global.document.createElement('script')) {
|
|
301
|
+
scheduleDrain = function () {
|
|
302
|
+
|
|
303
|
+
// Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted
|
|
304
|
+
// into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.
|
|
305
|
+
var scriptEl = global.document.createElement('script');
|
|
306
|
+
scriptEl.onreadystatechange = function () {
|
|
307
|
+
nextTick();
|
|
308
|
+
|
|
309
|
+
scriptEl.onreadystatechange = null;
|
|
310
|
+
scriptEl.parentNode.removeChild(scriptEl);
|
|
311
|
+
scriptEl = null;
|
|
312
|
+
};
|
|
313
|
+
global.document.documentElement.appendChild(scriptEl);
|
|
314
|
+
};
|
|
315
|
+
} else {
|
|
316
|
+
scheduleDrain = function () {
|
|
317
|
+
setTimeout(nextTick, 0);
|
|
318
|
+
};
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
var draining;
|
|
323
|
+
var queue = [];
|
|
324
|
+
//named nextTick for less confusing stack traces
|
|
325
|
+
function nextTick() {
|
|
326
|
+
draining = true;
|
|
327
|
+
var i, oldQueue;
|
|
328
|
+
var len = queue.length;
|
|
329
|
+
while (len) {
|
|
330
|
+
oldQueue = queue;
|
|
331
|
+
queue = [];
|
|
332
|
+
i = -1;
|
|
333
|
+
while (++i < len) {
|
|
334
|
+
oldQueue[i]();
|
|
335
|
+
}
|
|
336
|
+
len = queue.length;
|
|
337
|
+
}
|
|
338
|
+
draining = false;
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
module.exports = immediate;
|
|
342
|
+
function immediate(task) {
|
|
343
|
+
if (queue.push(task) === 1 && !draining) {
|
|
344
|
+
scheduleDrain();
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
|
|
348
|
+
}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
|
|
349
|
+
},{}],3:[function(_dereq_,module,exports){
|
|
350
|
+
(function (global){
|
|
351
|
+
'use strict';
|
|
352
|
+
if (typeof global.Promise !== 'function') {
|
|
353
|
+
global.Promise = _dereq_(1);
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
|
|
357
|
+
},{"1":1}]},{},[3]);
|
|
358
|
+
|