mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-09-08 08:57:03 +03:00
Promises (first look)
Thread dropdown Small fixes
This commit is contained in:
parent
dd41d30f9b
commit
c23ba31e17
61 changed files with 12442 additions and 130 deletions
33
vendors/Q/design/q2.js
vendored
Normal file
33
vendors/Q/design/q2.js
vendored
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
|
||||
var Promise = function () {
|
||||
};
|
||||
|
||||
var isPromise = function (value) {
|
||||
return value instanceof Promise;
|
||||
};
|
||||
|
||||
var defer = function () {
|
||||
var pending = [], value;
|
||||
var promise = new Promise();
|
||||
promise.then = function (callback) {
|
||||
if (pending) {
|
||||
pending.push(callback);
|
||||
} else {
|
||||
callback(value);
|
||||
}
|
||||
};
|
||||
return {
|
||||
resolve: function (_value) {
|
||||
if (pending) {
|
||||
value = _value;
|
||||
for (var i = 0, ii = pending.length; i < ii; i++) {
|
||||
var callback = pending[i];
|
||||
callback(value);
|
||||
}
|
||||
pending = undefined;
|
||||
}
|
||||
},
|
||||
promise: promise
|
||||
};
|
||||
};
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue