aboutsummaryrefslogtreecommitdiff
path: root/node_modules/mongo-factory
diff options
context:
space:
mode:
authorKumar Damani <kumar.damani@mail.utoronto.ca>2019-04-16 13:17:06 +0000
committerKumar Damani <kumar.damani@mail.utoronto.ca>2019-04-16 13:17:06 +0000
commitdc46b87abee1e441c07524ddde67fd902a919336 (patch)
tree13eba08b8655dfd78e9600ec5f612011a0bf3b35 /node_modules/mongo-factory
parent26f4b38e9e5a202756a7c33abc775aea2617aeaf (diff)
added some dependencies to package.json
Diffstat (limited to 'node_modules/mongo-factory')
-rw-r--r--node_modules/mongo-factory/.npmignore28
-rw-r--r--node_modules/mongo-factory/.travis.yml13
-rw-r--r--node_modules/mongo-factory/LICENSE21
-rw-r--r--node_modules/mongo-factory/README.md43
-rw-r--r--node_modules/mongo-factory/index.js68
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/CHANGELOG.md65
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/LICENSE19
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/README.md74
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/dist/es6-promise.js959
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/dist/es6-promise.min.js9
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise.umd.js18
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/-internal.js273
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/asap.js119
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/enumerator.js118
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/polyfill.js26
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise.js384
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise/all.js52
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise/race.js86
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise/reject.js46
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise/resolve.js48
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/then.js34
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/utils.js22
-rw-r--r--node_modules/mongo-factory/node_modules/es6-promise/package.json96
-rw-r--r--node_modules/mongo-factory/package.json65
-rw-r--r--node_modules/mongo-factory/test/test.js94
25 files changed, 0 insertions, 2780 deletions
diff --git a/node_modules/mongo-factory/.npmignore b/node_modules/mongo-factory/.npmignore
deleted file mode 100644
index 262b5dc..0000000
--- a/node_modules/mongo-factory/.npmignore
+++ /dev/null
@@ -1,28 +0,0 @@
-# Logs
-logs
-*.log
-
-# Runtime data
-pids
-*.pid
-*.seed
-
-# Directory for instrumented libs generated by jscoverage/JSCover
-lib-cov
-
-# Coverage directory used by tools like istanbul
-coverage
-
-# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
-.grunt
-
-# Compiled binary addons (http://nodejs.org/api/addons.html)
-build/Release
-
-# Dependency directory
-# Deployed apps should consider commenting this line out:
-# see https://npmjs.org/doc/faq.html#Should-I-check-my-node_modules-folder-into-git
-node_modules
-
-# Web Storm project files
-.idea
diff --git a/node_modules/mongo-factory/.travis.yml b/node_modules/mongo-factory/.travis.yml
deleted file mode 100644
index ffdc2aa..0000000
--- a/node_modules/mongo-factory/.travis.yml
+++ /dev/null
@@ -1,13 +0,0 @@
-language: node_js
-node_js:
- - "5"
- - "4"
- - "0.12"
- - "0.11"
- - "0.10"
-addons:
- code_climate:
- repo_token: 0bc1060eb2c8897c6d192e530449d2a6ab83338bbe3e94510531bf010c05b562
-after_script:
- - cat ./coverage/lcov.info | codeclimate
-services: mongodb
diff --git a/node_modules/mongo-factory/LICENSE b/node_modules/mongo-factory/LICENSE
deleted file mode 100644
index 11e0047..0000000
--- a/node_modules/mongo-factory/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) 2014 Tom Caflisch
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/node_modules/mongo-factory/README.md b/node_modules/mongo-factory/README.md
deleted file mode 100644
index 81433b5..0000000
--- a/node_modules/mongo-factory/README.md
+++ /dev/null
@@ -1,43 +0,0 @@
-#mongo-factory
-[![Build Status](https://travis-ci.org/toymachiner62/mongo-factory.svg?branch=master)](https://travis-ci.org/toymachiner62/mongo-factory)
-[![Code Climate](https://codeclimate.com/github/toymachiner62/mongo-factory/badges/gpa.svg)](https://codeclimate.com/github/toymachiner62/mongo-factory)
-
-> The purpose of this module is to manage mongo connection pools without creating a new connection pool in every file.
->
-> You can require this module in as many files as you want and every time you call `mongoFactory.getConnection` it returns
-> a connection if one exists for the connection string passed in, or it instantiates the connection pool and
-> then returns a connection.
-
-## Usage
-
-```js
-var mongoFactory = require('mongo-factory');
-
-mongoFactory.getConnection('mongodb://localhost:27017')
- .then(function(db) {
- // Use mongo's "db" object as you normally would.
- db.collection.find()...
- })
- .catch(function(err) {
- console.error(err);
- });
-```
-
-## API
-
-#### `getConnection(mongodbConnectionString)`
-
-The only parameter is a connection string for a MongoDB connection.
-
-#### `ObjectId`
-
-Exposes the MongoDB [ObjectID](http://mongodb.github.io/node-mongodb-native/2.0/tutorials/objectid/) function.
-
-## Contributing
-
-1. Clone project and run `npm install`
-2. Add feature(s)
-3. Add tests for it
-4. Submit pull request
-
-Enjoy!
diff --git a/node_modules/mongo-factory/index.js b/node_modules/mongo-factory/index.js
deleted file mode 100644
index 085c25c..0000000
--- a/node_modules/mongo-factory/index.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * Creates and manages the Mongo connection pool
- *
- * @type {exports}
- */
-var Promise = require('es6-promise').Promise;
-var mongo = require('mongodb');
-var MongoClient = mongo.MongoClient;
-var _ = require('underscore');
-
-// Store all instantiated connections.
-var connections = [];
-
-module.exports = function() {
-
- return {
-
- /**
- * Gets a Mongo connection from the pool.
- *
- * If the connection pool has not been instantiated yet, it is first
- * instantiated and a connection is returned.
- *
- * @returns {Promise|Db} - A promise object that resolves to a Mongo db object.
- */
- getConnection: function getConnection(connectionString) {
- return new Promise(function(resolve, reject) {
- // If connectionString is null or undefined, return an error.
- if (_.isEmpty(connectionString)) {
- return reject('getConnection must be called with a mongo connection string');
- }
-
- // Check if a connection already exists for the provided connectionString.
- var pool = _.findWhere(connections, { connectionString: connectionString });
-
- // If a connection pool was found, resolve the promise with it.
- if (pool) {
- return resolve(pool.db);
- }
-
- // If the connection pool has not been instantiated,
- // instantiate it and return the connection.
- MongoClient.connect(connectionString, function(err, database) {
- if (err) {
- return reject(err);
- }
-
- // Store the connection in the connections array.
- connections.push({
- connectionString: connectionString,
- db: database
- });
-
- return resolve(database);
- });
- });
- },
-
- /**
- * Exposes Mongo ObjectID function.
- *
- * @returns {Function} - Mongo ObjectID function
- */
- ObjectID: function() {
- return mongo.ObjectID();
- }
- };
-}();
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/CHANGELOG.md b/node_modules/mongo-factory/node_modules/es6-promise/CHANGELOG.md
deleted file mode 100644
index cc8aa10..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/CHANGELOG.md
+++ /dev/null
@@ -1,65 +0,0 @@
-# Master
-
-# 3.2.0
-
-* improve tamper resistence of Promise.all Promise.race and
- Promise.prototype.then (note, this isn't complete, but addresses an exception
- when used \w core-js, follow up work will address entirely)
-* remove spec incompatible then chaining fast-path
-* add eslint
-* update build deps
-
-# 3.1.2
-
-* fix node detection issues with NWJS/electron
-
-# 3.1.0
-
-* improve performance of Promise.all when it encounters a non-promise input object input
-* then/resolve tamper protection
-* reduce AST size of promise constructor, to facilitate more inlining
-* Update README.md with details about PhantomJS requirement for running tests
-* Mangle and compress the minified version
-
-# 3.0.1
-
-* no longer include dist/test in npm releases
-
-# 3.0.0
-
-* use nextTick() instead of setImmediate() to schedule microtasks with node 0.10. Later versions of
- nodes are not affected as they were already using nextTick(). Note that using nextTick() might
- trigger a depreciation warning on 0.10 as described at https://github.com/cujojs/when/issues/410.
- The reason why nextTick() is preferred is that is setImmediate() would schedule a macrotask
- instead of a microtask and might result in a different scheduling.
- If needed you can revert to the former behavior as follow:
-
- var Promise = require('es6-promise').Promise;
- Promise._setScheduler(setImmediate);
-
-# 2.3.0
-
-* #121: Ability to override the internal asap implementation
-* #120: Use an ascii character for an apostrophe, for source maps
-
-# 2.2.0
-
-* #116: Expose asap() and a way to override the scheduling mechanism on Promise
-* Lock to v0.2.3 of ember-cli
-
-# 2.1.1
-
-* Fix #100 via #105: tell browserify to ignore vertx require
-* Fix #101 via #102: "follow thenable state, not own state"
-
-# 2.1.0
-
-* ? (see the commit log)
-
-# 2.0.0
-
-* re-sync with RSVP. Many large performance improvements and bugfixes.
-
-# 1.0.0
-
-* first subset of RSVP
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/LICENSE b/node_modules/mongo-factory/node_modules/es6-promise/LICENSE
deleted file mode 100644
index 954ec59..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/LICENSE
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
-of the Software, and to permit persons to whom the Software is furnished to do
-so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/README.md b/node_modules/mongo-factory/node_modules/es6-promise/README.md
deleted file mode 100644
index 16739ca..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/README.md
+++ /dev/null
@@ -1,74 +0,0 @@
-# ES6-Promise (subset of [rsvp.js](https://github.com/tildeio/rsvp.js))
-
-This is a polyfill of the [ES6 Promise](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-promise-constructor). The implementation is a subset of [rsvp.js](https://github.com/tildeio/rsvp.js) extracted by @jakearchibald, if you're wanting extra features and more debugging options, check out the [full library](https://github.com/tildeio/rsvp.js).
-
-For API details and how to use promises, see the <a href="http://www.html5rocks.com/en/tutorials/es6/promises/">JavaScript Promises HTML5Rocks article</a>.
-
-## Downloads
-
-* [es6-promise](https://raw.githubusercontent.com/stefanpenner/es6-promise/master/dist/es6-promise.js)
-* [es6-promise-min](https://raw.githubusercontent.com/stefanpenner/es6-promise/master/dist/es6-promise.min.js)
-
-## Node.js
-
-To install:
-
-```sh
-npm install es6-promise
-```
-
-To use:
-
-```js
-var Promise = require('es6-promise').Promise;
-```
-
-## Bower
-
-To install:
-
-```sh
-bower install es6-promise --save
-```
-
-
-## Usage in IE<9
-
-`catch` is a reserved word in IE<9, meaning `promise.catch(func)` throws a syntax error. To work around this, you can use a string to access the property as shown in the following example.
-
-However, please remember that such technique is already provided by most common minifiers, making the resulting code safe for old browsers and production:
-
-```js
-promise['catch'](function(err) {
- // ...
-});
-```
-
-Or use `.then` instead:
-
-```js
-promise.then(undefined, function(err) {
- // ...
-});
-```
-
-## Auto-polyfill
-
-To polyfill the global environment (either in Node or in the browser via CommonJS) use the following code snippet:
-
-```js
-require('es6-promise').polyfill();
-```
-
-Notice that we don't assign the result of `polyfill()` to any variable. The `polyfill()` method will patch the global environment (in this case to the `Promise` name) when called.
-
-## Building & Testing
-
-You will need to have PhantomJS installed globally in order to run the tests.
-
-`npm install -g phantomjs`
-
-* `npm run build` to build
-* `npm test` to run tests
-* `npm start` to run a build watcher, and webserver to test
-* `npm run test:server` for a testem test runner and watching builder
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/dist/es6-promise.js b/node_modules/mongo-factory/node_modules/es6-promise/dist/es6-promise.js
deleted file mode 100644
index 0755e9b..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/dist/es6-promise.js
+++ /dev/null
@@ -1,959 +0,0 @@
-/*!
- * @overview es6-promise - a tiny implementation of Promises/A+.
- * @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)
- * @license Licensed under MIT license
- * See https://raw.githubusercontent.com/jakearchibald/es6-promise/master/LICENSE
- * @version 3.2.1
- */
-
-(function() {
- "use strict";
- function lib$es6$promise$utils$$objectOrFunction(x) {
- return typeof x === 'function' || (typeof x === 'object' && x !== null);
- }
-
- function lib$es6$promise$utils$$isFunction(x) {
- return typeof x === 'function';
- }
-
- function lib$es6$promise$utils$$isMaybeThenable(x) {
- return typeof x === 'object' && x !== null;
- }
-
- var lib$es6$promise$utils$$_isArray;
- if (!Array.isArray) {
- lib$es6$promise$utils$$_isArray = function (x) {
- return Object.prototype.toString.call(x) === '[object Array]';
- };
- } else {
- lib$es6$promise$utils$$_isArray = Array.isArray;
- }
-
- var lib$es6$promise$utils$$isArray = lib$es6$promise$utils$$_isArray;
- var lib$es6$promise$asap$$len = 0;
- var lib$es6$promise$asap$$vertxNext;
- var lib$es6$promise$asap$$customSchedulerFn;
-
- var lib$es6$promise$asap$$asap = function asap(callback, arg) {
- lib$es6$promise$asap$$queue[lib$es6$promise$asap$$len] = callback;
- lib$es6$promise$asap$$queue[lib$es6$promise$asap$$len + 1] = arg;
- lib$es6$promise$asap$$len += 2;
- if (lib$es6$promise$asap$$len === 2) {
- // If len is 2, that means that we need to schedule an async flush.
- // If additional callbacks are queued before the queue is flushed, they
- // will be processed by this flush that we are scheduling.
- if (lib$es6$promise$asap$$customSchedulerFn) {
- lib$es6$promise$asap$$customSchedulerFn(lib$es6$promise$asap$$flush);
- } else {
- lib$es6$promise$asap$$scheduleFlush();
- }
- }
- }
-
- function lib$es6$promise$asap$$setScheduler(scheduleFn) {
- lib$es6$promise$asap$$customSchedulerFn = scheduleFn;
- }
-
- function lib$es6$promise$asap$$setAsap(asapFn) {
- lib$es6$promise$asap$$asap = asapFn;
- }
-
- var lib$es6$promise$asap$$browserWindow = (typeof window !== 'undefined') ? window : undefined;
- var lib$es6$promise$asap$$browserGlobal = lib$es6$promise$asap$$browserWindow || {};
- var lib$es6$promise$asap$$BrowserMutationObserver = lib$es6$promise$asap$$browserGlobal.MutationObserver || lib$es6$promise$asap$$browserGlobal.WebKitMutationObserver;
- var lib$es6$promise$asap$$isNode = typeof self === 'undefined' && typeof process !== 'undefined' && {}.toString.call(process) === '[object process]';
-
- // test for web worker but not in IE10
- var lib$es6$promise$asap$$isWorker = typeof Uint8ClampedArray !== 'undefined' &&
- typeof importScripts !== 'undefined' &&
- typeof MessageChannel !== 'undefined';
-
- // node
- function lib$es6$promise$asap$$useNextTick() {
- // node version 0.10.x displays a deprecation warning when nextTick is used recursively
- // see https://github.com/cujojs/when/issues/410 for details
- return function() {
- process.nextTick(lib$es6$promise$asap$$flush);
- };
- }
-
- // vertx
- function lib$es6$promise$asap$$useVertxTimer() {
- return function() {
- lib$es6$promise$asap$$vertxNext(lib$es6$promise$asap$$flush);
- };
- }
-
- function lib$es6$promise$asap$$useMutationObserver() {
- var iterations = 0;
- var observer = new lib$es6$promise$asap$$BrowserMutationObserver(lib$es6$promise$asap$$flush);
- var node = document.createTextNode('');
- observer.observe(node, { characterData: true });
-
- return function() {
- node.data = (iterations = ++iterations % 2);
- };
- }
-
- // web worker
- function lib$es6$promise$asap$$useMessageChannel() {
- var channel = new MessageChannel();
- channel.port1.onmessage = lib$es6$promise$asap$$flush;
- return function () {
- channel.port2.postMessage(0);
- };
- }
-
- function lib$es6$promise$asap$$useSetTimeout() {
- return function() {
- setTimeout(lib$es6$promise$asap$$flush, 1);
- };
- }
-
- var lib$es6$promise$asap$$queue = new Array(1000);
- function lib$es6$promise$asap$$flush() {
- for (var i = 0; i < lib$es6$promise$asap$$len; i+=2) {
- var callback = lib$es6$promise$asap$$queue[i];
- var arg = lib$es6$promise$asap$$queue[i+1];
-
- callback(arg);
-
- lib$es6$promise$asap$$queue[i] = undefined;
- lib$es6$promise$asap$$queue[i+1] = undefined;
- }
-
- lib$es6$promise$asap$$len = 0;
- }
-
- function lib$es6$promise$asap$$attemptVertx() {
- try {
- var r = require;
- var vertx = r('vertx');
- lib$es6$promise$asap$$vertxNext = vertx.runOnLoop || vertx.runOnContext;
- return lib$es6$promise$asap$$useVertxTimer();
- } catch(e) {
- return lib$es6$promise$asap$$useSetTimeout();
- }
- }
-
- var lib$es6$promise$asap$$scheduleFlush;
- // Decide what async method to use to triggering processing of queued callbacks:
- if (lib$es6$promise$asap$$isNode) {
- lib$es6$promise$asap$$scheduleFlush = lib$es6$promise$asap$$useNextTick();
- } else if (lib$es6$promise$asap$$BrowserMutationObserver) {
- lib$es6$promise$asap$$scheduleFlush = lib$es6$promise$asap$$useMutationObserver();
- } else if (lib$es6$promise$asap$$isWorker) {
- lib$es6$promise$asap$$scheduleFlush = lib$es6$promise$asap$$useMessageChannel();
- } else if (lib$es6$promise$asap$$browserWindow === undefined && typeof require === 'function') {
- lib$es6$promise$asap$$scheduleFlush = lib$es6$promise$asap$$attemptVertx();
- } else {
- lib$es6$promise$asap$$scheduleFlush = lib$es6$promise$asap$$useSetTimeout();
- }
- function lib$es6$promise$then$$then(onFulfillment, onRejection) {
- var parent = this;
-
- var child = new this.constructor(lib$es6$promise$$internal$$noop);
-
- if (child[lib$es6$promise$$internal$$PROMISE_ID] === undefined) {
- lib$es6$promise$$internal$$makePromise(child);
- }
-
- var state = parent._state;
-
- if (state) {
- var callback = arguments[state - 1];
- lib$es6$promise$asap$$asap(function(){
- lib$es6$promise$$internal$$invokeCallback(state, child, callback, parent._result);
- });
- } else {
- lib$es6$promise$$internal$$subscribe(parent, child, onFulfillment, onRejection);
- }
-
- return child;
- }
- var lib$es6$promise$then$$default = lib$es6$promise$then$$then;
- function lib$es6$promise$promise$resolve$$resolve(object) {
- /*jshint validthis:true */
- var Constructor = this;
-
- if (object && typeof object === 'object' && object.constructor === Constructor) {
- return object;
- }
-
- var promise = new Constructor(lib$es6$promise$$internal$$noop);
- lib$es6$promise$$internal$$resolve(promise, object);
- return promise;
- }
- var lib$es6$promise$promise$resolve$$default = lib$es6$promise$promise$resolve$$resolve;
- var lib$es6$promise$$internal$$PROMISE_ID = Math.random().toString(36).substring(16);
-
- function lib$es6$promise$$internal$$noop() {}
-
- var lib$es6$promise$$internal$$PENDING = void 0;
- var lib$es6$promise$$internal$$FULFILLED = 1;
- var lib$es6$promise$$internal$$REJECTED = 2;
-
- var lib$es6$promise$$internal$$GET_THEN_ERROR = new lib$es6$promise$$internal$$ErrorObject();
-
- function lib$es6$promise$$internal$$selfFulfillment() {
- return new TypeError("You cannot resolve a promise with itself");
- }
-
- function lib$es6$promise$$internal$$cannotReturnOwn() {
- return new TypeError('A promises callback cannot return that same promise.');
- }
-
- function lib$es6$promise$$internal$$getThen(promise) {
- try {
- return promise.then;
- } catch(error) {
- lib$es6$promise$$internal$$GET_THEN_ERROR.error = error;
- return lib$es6$promise$$internal$$GET_THEN_ERROR;
- }
- }
-
- function lib$es6$promise$$internal$$tryThen(then, value, fulfillmentHandler, rejectionHandler) {
- try {
- then.call(value, fulfillmentHandler, rejectionHandler);
- } catch(e) {
- return e;
- }
- }
-
- function lib$es6$promise$$internal$$handleForeignThenable(promise, thenable, then) {
- lib$es6$promise$asap$$asap(function(promise) {
- var sealed = false;
- var error = lib$es6$promise$$internal$$tryThen(then, thenable, function(value) {
- if (sealed) { return; }
- sealed = true;
- if (thenable !== value) {
- lib$es6$promise$$internal$$resolve(promise, value);
- } else {
- lib$es6$promise$$internal$$fulfill(promise, value);
- }
- }, function(reason) {
- if (sealed) { return; }
- sealed = true;
-
- lib$es6$promise$$internal$$reject(promise, reason);
- }, 'Settle: ' + (promise._label || ' unknown promise'));
-
- if (!sealed && error) {
- sealed = true;
- lib$es6$promise$$internal$$reject(promise, error);
- }
- }, promise);
- }
-
- function lib$es6$promise$$internal$$handleOwnThenable(promise, thenable) {
- if (thenable._state === lib$es6$promise$$internal$$FULFILLED) {
- lib$es6$promise$$internal$$fulfill(promise, thenable._result);
- } else if (thenable._state === lib$es6$promise$$internal$$REJECTED) {
- lib$es6$promise$$internal$$reject(promise, thenable._result);
- } else {
- lib$es6$promise$$internal$$subscribe(thenable, undefined, function(value) {
- lib$es6$promise$$internal$$resolve(promise, value);
- }, function(reason) {
- lib$es6$promise$$internal$$reject(promise, reason);
- });
- }
- }
-
- function lib$es6$promise$$internal$$handleMaybeThenable(promise, maybeThenable, then) {
- if (maybeThenable.constructor === promise.constructor &&
- then === lib$es6$promise$then$$default &&
- constructor.resolve === lib$es6$promise$promise$resolve$$default) {
- lib$es6$promise$$internal$$handleOwnThenable(promise, maybeThenable);
- } else {
- if (then === lib$es6$promise$$internal$$GET_THEN_ERROR) {
- lib$es6$promise$$internal$$reject(promise, lib$es6$promise$$internal$$GET_THEN_ERROR.error);
- } else if (then === undefined) {
- lib$es6$promise$$internal$$fulfill(promise, maybeThenable);
- } else if (lib$es6$promise$utils$$isFunction(then)) {
- lib$es6$promise$$internal$$handleForeignThenable(promise, maybeThenable, then);
- } else {
- lib$es6$promise$$internal$$fulfill(promise, maybeThenable);
- }
- }
- }
-
- function lib$es6$promise$$internal$$resolve(promise, value) {
- if (promise === value) {
- lib$es6$promise$$internal$$reject(promise, lib$es6$promise$$internal$$selfFulfillment());
- } else if (lib$es6$promise$utils$$objectOrFunction(value)) {
- lib$es6$promise$$internal$$handleMaybeThenable(promise, value, lib$es6$promise$$internal$$getThen(value));
- } else {
- lib$es6$promise$$internal$$fulfill(promise, value);
- }
- }
-
- function lib$es6$promise$$internal$$publishRejection(promise) {
- if (promise._onerror) {
- promise._onerror(promise._result);
- }
-
- lib$es6$promise$$internal$$publish(promise);
- }
-
- function lib$es6$promise$$internal$$fulfill(promise, value) {
- if (promise._state !== lib$es6$promise$$internal$$PENDING) { return; }
-
- promise._result = value;
- promise._state = lib$es6$promise$$internal$$FULFILLED;
-
- if (promise._subscribers.length !== 0) {
- lib$es6$promise$asap$$asap(lib$es6$promise$$internal$$publish, promise);
- }
- }
-
- function lib$es6$promise$$internal$$reject(promise, reason) {
- if (promise._state !== lib$es6$promise$$internal$$PENDING) { return; }
- promise._state = lib$es6$promise$$internal$$REJECTED;
- promise._result = reason;
-
- lib$es6$promise$asap$$asap(lib$es6$promise$$internal$$publishRejection, promise);
- }
-
- function lib$es6$promise$$internal$$subscribe(parent, child, onFulfillment, onRejection) {
- var subscribers = parent._subscribers;
- var length = subscribers.length;
-
- parent._onerror = null;
-
- subscribers[length] = child;
- subscribers[length + lib$es6$promise$$internal$$FULFILLED] = onFulfillment;
- subscribers[length + lib$es6$promise$$internal$$REJECTED] = onRejection;
-
- if (length === 0 && parent._state) {
- lib$es6$promise$asap$$asap(lib$es6$promise$$internal$$publish, parent);
- }
- }
-
- function lib$es6$promise$$internal$$publish(promise) {
- var subscribers = promise._subscribers;
- var settled = promise._state;
-
- if (subscribers.length === 0) { return; }
-
- var child, callback, detail = promise._result;
-
- for (var i = 0; i < subscribers.length; i += 3) {
- child = subscribers[i];
- callback = subscribers[i + settled];
-
- if (child) {
- lib$es6$promise$$internal$$invokeCallback(settled, child, callback, detail);
- } else {
- callback(detail);
- }
- }
-
- promise._subscribers.length = 0;
- }
-
- function lib$es6$promise$$internal$$ErrorObject() {
- this.error = null;
- }
-
- var lib$es6$promise$$internal$$TRY_CATCH_ERROR = new lib$es6$promise$$internal$$ErrorObject();
-
- function lib$es6$promise$$internal$$tryCatch(callback, detail) {
- try {
- return callback(detail);
- } catch(e) {
- lib$es6$promise$$internal$$TRY_CATCH_ERROR.error = e;
- return lib$es6$promise$$internal$$TRY_CATCH_ERROR;
- }
- }
-
- function lib$es6$promise$$internal$$invokeCallback(settled, promise, callback, detail) {
- var hasCallback = lib$es6$promise$utils$$isFunction(callback),
- value, error, succeeded, failed;
-
- if (hasCallback) {
- value = lib$es6$promise$$internal$$tryCatch(callback, detail);
-
- if (value === lib$es6$promise$$internal$$TRY_CATCH_ERROR) {
- failed = true;
- error = value.error;
- value = null;
- } else {
- succeeded = true;
- }
-
- if (promise === value) {
- lib$es6$promise$$internal$$reject(promise, lib$es6$promise$$internal$$cannotReturnOwn());
- return;
- }
-
- } else {
- value = detail;
- succeeded = true;
- }
-
- if (promise._state !== lib$es6$promise$$internal$$PENDING) {
- // noop
- } else if (hasCallback && succeeded) {
- lib$es6$promise$$internal$$resolve(promise, value);
- } else if (failed) {
- lib$es6$promise$$internal$$reject(promise, error);
- } else if (settled === lib$es6$promise$$internal$$FULFILLED) {
- lib$es6$promise$$internal$$fulfill(promise, value);
- } else if (settled === lib$es6$promise$$internal$$REJECTED) {
- lib$es6$promise$$internal$$reject(promise, value);
- }
- }
-
- function lib$es6$promise$$internal$$initializePromise(promise, resolver) {
- try {
- resolver(function resolvePromise(value){
- lib$es6$promise$$internal$$resolve(promise, value);
- }, function rejectPromise(reason) {
- lib$es6$promise$$internal$$reject(promise, reason);
- });
- } catch(e) {
- lib$es6$promise$$internal$$reject(promise, e);
- }
- }
-
- var lib$es6$promise$$internal$$id = 0;
- function lib$es6$promise$$internal$$nextId() {
- return lib$es6$promise$$internal$$id++;
- }
-
- function lib$es6$promise$$internal$$makePromise(promise) {
- promise[lib$es6$promise$$internal$$PROMISE_ID] = lib$es6$promise$$internal$$id++;
- promise._state = undefined;
- promise._result = undefined;
- promise._subscribers = [];
- }
-
- function lib$es6$promise$promise$all$$all(entries) {
- return new lib$es6$promise$enumerator$$default(this, entries).promise;
- }
- var lib$es6$promise$promise$all$$default = lib$es6$promise$promise$all$$all;
- function lib$es6$promise$promise$race$$race(entries) {
- /*jshint validthis:true */
- var Constructor = this;
-
- if (!lib$es6$promise$utils$$isArray(entries)) {
- return new Constructor(function(resolve, reject) {
- reject(new TypeError('You must pass an array to race.'));
- });
- } else {
- return new Constructor(function(resolve, reject) {
- var length = entries.length;
- for (var i = 0; i < length; i++) {
- Constructor.resolve(entries[i]).then(resolve, reject);
- }
- });
- }
- }
- var lib$es6$promise$promise$race$$default = lib$es6$promise$promise$race$$race;
- function lib$es6$promise$promise$reject$$reject(reason) {
- /*jshint validthis:true */
- var Constructor = this;
- var promise = new Constructor(lib$es6$promise$$internal$$noop);
- lib$es6$promise$$internal$$reject(promise, reason);
- return promise;
- }
- var lib$es6$promise$promise$reject$$default = lib$es6$promise$promise$reject$$reject;
-
-
- function lib$es6$promise$promise$$needsResolver() {
- throw new TypeError('You must pass a resolver function as the first argument to the promise constructor');
- }
-
- function lib$es6$promise$promise$$needsNew() {
- throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.");
- }
-
- var lib$es6$promise$promise$$default = lib$es6$promise$promise$$Promise;
- /**
- Promise objects represent the eventual result of an asynchronous operation. The
- primary way of interacting with a promise is through its `then` method, which
- registers callbacks to receive either a promise's eventual value or the reason
- why the promise cannot be fulfilled.
-
- Terminology
- -----------
-
- - `promise` is an object or function with a `then` method whose behavior conforms to this specification.
- - `thenable` is an object or function that defines a `then` method.
- - `value` is any legal JavaScript value (including undefined, a thenable, or a promise).
- - `exception` is a value that is thrown using the throw statement.
- - `reason` is a value that indicates why a promise was rejected.
- - `settled` the final resting state of a promise, fulfilled or rejected.
-
- A promise can be in one of three states: pending, fulfilled, or rejected.
-
- Promises that are fulfilled have a fulfillment value and are in the fulfilled
- state. Promises that are rejected have a rejection reason and are in the
- rejected state. A fulfillment value is never a thenable.
-
- Promises can also be said to *resolve* a value. If this value is also a
- promise, then the original promise's settled state will match the value's
- settled state. So a promise that *resolves* a promise that rejects will
- itself reject, and a promise that *resolves* a promise that fulfills will
- itself fulfill.
-
-
- Basic Usage:
- ------------
-
- ```js
- var promise = new Promise(function(resolve, reject) {
- // on success
- resolve(value);
-
- // on failure
- reject(reason);
- });
-
- promise.then(function(value) {
- // on fulfillment
- }, function(reason) {
- // on rejection
- });
- ```
-
- Advanced Usage:
- ---------------
-
- Promises shine when abstracting away asynchronous interactions such as
- `XMLHttpRequest`s.
-
- ```js
- function getJSON(url) {
- return new Promise(function(resolve, reject){
- var xhr = new XMLHttpRequest();
-
- xhr.open('GET', url);
- xhr.onreadystatechange = handler;
- xhr.responseType = 'json';
- xhr.setRequestHeader('Accept', 'application/json');
- xhr.send();
-
- function handler() {
- if (this.readyState === this.DONE) {
- if (this.status === 200) {
- resolve(this.response);
- } else {
- reject(new Error('getJSON: `' + url + '` failed with status: [' + this.status + ']'));
- }
- }
- };
- });
- }
-
- getJSON('/posts.json').then(function(json) {
- // on fulfillment
- }, function(reason) {
- // on rejection
- });
- ```
-
- Unlike callbacks, promises are great composable primitives.
-
- ```js
- Promise.all([
- getJSON('/posts'),
- getJSON('/comments')
- ]).then(function(values){
- values[0] // => postsJSON
- values[1] // => commentsJSON
-
- return values;
- });
- ```
-
- @class Promise
- @param {function} resolver
- Useful for tooling.
- @constructor
- */
- function lib$es6$promise$promise$$Promise(resolver) {
- this[lib$es6$promise$$internal$$PROMISE_ID] = lib$es6$promise$$internal$$nextId();
- this._result = this._state = undefined;
- this._subscribers = [];
-
- if (lib$es6$promise$$internal$$noop !== resolver) {
- typeof resolver !== 'function' && lib$es6$promise$promise$$needsResolver();
- this instanceof lib$es6$promise$promise$$Promise ? lib$es6$promise$$internal$$initializePromise(this, resolver) : lib$es6$promise$promise$$needsNew();
- }
- }
-
- lib$es6$promise$promise$$Promise.all = lib$es6$promise$promise$all$$default;
- lib$es6$promise$promise$$Promise.race = lib$es6$promise$promise$race$$default;
- lib$es6$promise$promise$$Promise.resolve = lib$es6$promise$promise$resolve$$default;
- lib$es6$promise$promise$$Promise.reject = lib$es6$promise$promise$reject$$default;
- lib$es6$promise$promise$$Promise._setScheduler = lib$es6$promise$asap$$setScheduler;
- lib$es6$promise$promise$$Promise._setAsap = lib$es6$promise$asap$$setAsap;
- lib$es6$promise$promise$$Promise._asap = lib$es6$promise$asap$$asap;
-
- lib$es6$promise$promise$$Promise.prototype = {
- constructor: lib$es6$promise$promise$$Promise,
-
- /**
- The primary way of interacting with a promise is through its `then` method,
- which registers callbacks to receive either a promise's eventual value or the
- reason why the promise cannot be fulfilled.
-
- ```js
- findUser().then(function(user){
- // user is available
- }, function(reason){
- // user is unavailable, and you are given the reason why
- });
- ```
-
- Chaining
- --------
-
- The return value of `then` is itself a promise. This second, 'downstream'
- promise is resolved with the return value of the first promise's fulfillment
- or rejection handler, or rejected if the handler throws an exception.
-
- ```js
- findUser().then(function (user) {
- return user.name;
- }, function (reason) {
- return 'default name';
- }).then(function (userName) {
- // If `findUser` fulfilled, `userName` will be the user's name, otherwise it
- // will be `'default name'`
- });
-
- findUser().then(function (user) {
- throw new Error('Found user, but still unhappy');
- }, function (reason) {
- throw new Error('`findUser` rejected and we're unhappy');
- }).then(function (value) {
- // never reached
- }, function (reason) {
- // if `findUser` fulfilled, `reason` will be 'Found user, but still unhappy'.
- // If `findUser` rejected, `reason` will be '`findUser` rejected and we're unhappy'.
- });
- ```
- If the downstream promise does not specify a rejection handler, rejection reasons will be propagated further downstream.
-
- ```js
- findUser().then(function (user) {
- throw new PedagogicalException('Upstream error');
- }).then(function (value) {
- // never reached
- }).then(function (value) {
- // never reached
- }, function (reason) {
- // The `PedgagocialException` is propagated all the way down to here
- });
- ```
-
- Assimilation
- ------------
-
- Sometimes the value you want to propagate to a downstream promise can only be
- retrieved asynchronously. This can be achieved by returning a promise in the
- fulfillment or rejection handler. The downstream promise will then be pending
- until the returned promise is settled. This is called *assimilation*.
-
- ```js
- findUser().then(function (user) {
- return findCommentsByAuthor(user);
- }).then(function (comments) {
- // The user's comments are now available
- });
- ```
-
- If the assimliated promise rejects, then the downstream promise will also reject.
-
- ```js
- findUser().then(function (user) {
- return findCommentsByAuthor(user);
- }).then(function (comments) {
- // If `findCommentsByAuthor` fulfills, we'll have the value here
- }, function (reason) {
- // If `findCommentsByAuthor` rejects, we'll have the reason here
- });
- ```
-
- Simple Example
- --------------
-
- Synchronous Example
-
- ```javascript
- var result;
-
- try {
- result = findResult();
- // success
- } catch(reason) {
- // failure
- }
- ```
-
- Errback Example
-
- ```js
- findResult(function(result, err){
- if (err) {
- // failure
- } else {
- // success
- }
- });
- ```
-
- Promise Example;
-
- ```javascript
- findResult().then(function(result){
- // success
- }, function(reason){
- // failure
- });
- ```
-
- Advanced Example
- --------------
-
- Synchronous Example
-
- ```javascript
- var author, books;
-
- try {
- author = findAuthor();
- books = findBooksByAuthor(author);
- // success
- } catch(reason) {
- // failure
- }
- ```
-
- Errback Example
-
- ```js
-
- function foundBooks(books) {
-
- }
-
- function failure(reason) {
-
- }
-
- findAuthor(function(author, err){
- if (err) {
- failure(err);
- // failure
- } else {
- try {
- findBoooksByAuthor(author, function(books, err) {
- if (err) {
- failure(err);
- } else {
- try {
- foundBooks(books);
- } catch(reason) {
- failure(reason);
- }
- }
- });
- } catch(error) {
- failure(err);
- }
- // success
- }
- });
- ```
-
- Promise Example;
-
- ```javascript
- findAuthor().
- then(findBooksByAuthor).
- then(function(books){
- // found books
- }).catch(function(reason){
- // something went wrong
- });
- ```
-
- @method then
- @param {Function} onFulfilled
- @param {Function} onRejected
- Useful for tooling.
- @return {Promise}
- */
- then: lib$es6$promise$then$$default,
-
- /**
- `catch` is simply sugar for `then(undefined, onRejection)` which makes it the same
- as the catch block of a try/catch statement.
-
- ```js
- function findAuthor(){
- throw new Error('couldn't find that author');
- }
-
- // synchronous
- try {
- findAuthor();
- } catch(reason) {
- // something went wrong
- }
-
- // async with promises
- findAuthor().catch(function(reason){
- // something went wrong
- });
- ```
-
- @method catch
- @param {Function} onRejection
- Useful for tooling.
- @return {Promise}
- */
- 'catch': function(onRejection) {
- return this.then(null, onRejection);
- }
- };
- var lib$es6$promise$enumerator$$default = lib$es6$promise$enumerator$$Enumerator;
- function lib$es6$promise$enumerator$$Enumerator(Constructor, input) {
- this._instanceConstructor = Constructor;
- this.promise = new Constructor(lib$es6$promise$$internal$$noop);
-
- if (!this.promise[lib$es6$promise$$internal$$PROMISE_ID]) {
- lib$es6$promise$$internal$$makePromise(this.promise);
- }
-
- if (lib$es6$promise$utils$$isArray(input)) {
- this._input = input;
- this.length = input.length;
- this._remaining = input.length;
-
- this._result = new Array(this.length);
-
- if (this.length === 0) {
- lib$es6$promise$$internal$$fulfill(this.promise, this._result);
- } else {
- this.length = this.length || 0;
- this._enumerate();
- if (this._remaining === 0) {
- lib$es6$promise$$internal$$fulfill(this.promise, this._result);
- }
- }
- } else {
- lib$es6$promise$$internal$$reject(this.promise, lib$es6$promise$enumerator$$validationError());
- }
- }
-
- function lib$es6$promise$enumerator$$validationError() {
- return new Error('Array Methods must be provided an Array');
- }
-
- lib$es6$promise$enumerator$$Enumerator.prototype._enumerate = function() {
- var length = this.length;
- var input = this._input;
-
- for (var i = 0; this._state === lib$es6$promise$$internal$$PENDING && i < length; i++) {
- this._eachEntry(input[i], i);
- }
- };
-
- lib$es6$promise$enumerator$$Enumerator.prototype._eachEntry = function(entry, i) {
- var c = this._instanceConstructor;
- var resolve = c.resolve;
-
- if (resolve === lib$es6$promise$promise$resolve$$default) {
- var then = lib$es6$promise$$internal$$getThen(entry);
-
- if (then === lib$es6$promise$then$$default &&
- entry._state !== lib$es6$promise$$internal$$PENDING) {
- this._settledAt(entry._state, i, entry._result);
- } else if (typeof then !== 'function') {
- this._remaining--;
- this._result[i] = entry;
- } else if (c === lib$es6$promise$promise$$default) {
- var promise = new c(lib$es6$promise$$internal$$noop);
- lib$es6$promise$$internal$$handleMaybeThenable(promise, entry, then);
- this._willSettleAt(promise, i);
- } else {
- this._willSettleAt(new c(function(resolve) { resolve(entry); }), i);
- }
- } else {
- this._willSettleAt(resolve(entry), i);
- }
- };
-
- lib$es6$promise$enumerator$$Enumerator.prototype._settledAt = function(state, i, value) {
- var promise = this.promise;
-
- if (promise._state === lib$es6$promise$$internal$$PENDING) {
- this._remaining--;
-
- if (state === lib$es6$promise$$internal$$REJECTED) {
- lib$es6$promise$$internal$$reject(promise, value);
- } else {
- this._result[i] = value;
- }
- }
-
- if (this._remaining === 0) {
- lib$es6$promise$$internal$$fulfill(promise, this._result);
- }
- };
-
- lib$es6$promise$enumerator$$Enumerator.prototype._willSettleAt = function(promise, i) {
- var enumerator = this;
-
- lib$es6$promise$$internal$$subscribe(promise, undefined, function(value) {
- enumerator._settledAt(lib$es6$promise$$internal$$FULFILLED, i, value);
- }, function(reason) {
- enumerator._settledAt(lib$es6$promise$$internal$$REJECTED, i, reason);
- });
- };
- function lib$es6$promise$polyfill$$polyfill() {
- var local;
-
- if (typeof global !== 'undefined') {
- local = global;
- } else if (typeof self !== 'undefined') {
- local = self;
- } else {
- try {
- local = Function('return this')();
- } catch (e) {
- throw new Error('polyfill failed because global object is unavailable in this environment');
- }
- }
-
- var P = local.Promise;
-
- if (P && Object.prototype.toString.call(P.resolve()) === '[object Promise]' && !P.cast) {
- return;
- }
-
- local.Promise = lib$es6$promise$promise$$default;
- }
- var lib$es6$promise$polyfill$$default = lib$es6$promise$polyfill$$polyfill;
-
- var lib$es6$promise$umd$$ES6Promise = {
- 'Promise': lib$es6$promise$promise$$default,
- 'polyfill': lib$es6$promise$polyfill$$default
- };
-
- /* global define:true module:true window: true */
- if (typeof define === 'function' && define['amd']) {
- define(function() { return lib$es6$promise$umd$$ES6Promise; });
- } else if (typeof module !== 'undefined' && module['exports']) {
- module['exports'] = lib$es6$promise$umd$$ES6Promise;
- } else if (typeof this !== 'undefined') {
- this['ES6Promise'] = lib$es6$promise$umd$$ES6Promise;
- }
-
- lib$es6$promise$polyfill$$default();
-}).call(this);
-
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/dist/es6-promise.min.js b/node_modules/mongo-factory/node_modules/es6-promise/dist/es6-promise.min.js
deleted file mode 100644
index 13151c2..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/dist/es6-promise.min.js
+++ /dev/null
@@ -1,9 +0,0 @@
-/*!
- * @overview es6-promise - a tiny implementation of Promises/A+.
- * @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)
- * @license Licensed under MIT license
- * See https://raw.githubusercontent.com/jakearchibald/es6-promise/master/LICENSE
- * @version 3.2.1
- */
-
-(function(){"use strict";function t(t){return"function"==typeof t||"object"==typeof t&&null!==t}function e(t){return"function"==typeof t}function n(t){G=t}function r(t){Q=t}function o(){return function(){process.nextTick(a)}}function i(){return function(){B(a)}}function s(){var t=0,e=new X(a),n=document.createTextNode("");return e.observe(n,{characterData:!0}),function(){n.data=t=++t%2}}function u(){var t=new MessageChannel;return t.port1.onmessage=a,function(){t.port2.postMessage(0)}}function c(){return function(){setTimeout(a,1)}}function a(){for(var t=0;J>t;t+=2){var e=tt[t],n=tt[t+1];e(n),tt[t]=void 0,tt[t+1]=void 0}J=0}function f(){try{var t=require,e=t("vertx");return B=e.runOnLoop||e.runOnContext,i()}catch(n){return c()}}function l(t,e){var n=this,r=new this.constructor(p);void 0===r[rt]&&k(r);var o=n._state;if(o){var i=arguments[o-1];Q(function(){x(o,r,i,n._result)})}else E(n,r,t,e);return r}function h(t){var e=this;if(t&&"object"==typeof t&&t.constructor===e)return t;var n=new e(p);return g(n,t),n}function p(){}function _(){return new TypeError("You cannot resolve a promise with itself")}function d(){return new TypeError("A promises callback cannot return that same promise.")}function v(t){try{return t.then}catch(e){return ut.error=e,ut}}function y(t,e,n,r){try{t.call(e,n,r)}catch(o){return o}}function m(t,e,n){Q(function(t){var r=!1,o=y(n,e,function(n){r||(r=!0,e!==n?g(t,n):S(t,n))},function(e){r||(r=!0,j(t,e))},"Settle: "+(t._label||" unknown promise"));!r&&o&&(r=!0,j(t,o))},t)}function b(t,e){e._state===it?S(t,e._result):e._state===st?j(t,e._result):E(e,void 0,function(e){g(t,e)},function(e){j(t,e)})}function w(t,n,r){n.constructor===t.constructor&&r===et&&constructor.resolve===nt?b(t,n):r===ut?j(t,ut.error):void 0===r?S(t,n):e(r)?m(t,n,r):S(t,n)}function g(e,n){e===n?j(e,_()):t(n)?w(e,n,v(n)):S(e,n)}function A(t){t._onerror&&t._onerror(t._result),T(t)}function S(t,e){t._state===ot&&(t._result=e,t._state=it,0!==t._subscribers.length&&Q(T,t))}function j(t,e){t._state===ot&&(t._state=st,t._result=e,Q(A,t))}function E(t,e,n,r){var o=t._subscribers,i=o.length;t._onerror=null,o[i]=e,o[i+it]=n,o[i+st]=r,0===i&&t._state&&Q(T,t)}function T(t){var e=t._subscribers,n=t._state;if(0!==e.length){for(var r,o,i=t._result,s=0;s<e.length;s+=3)r=e[s],o=e[s+n],r?x(n,r,o,i):o(i);t._subscribers.length=0}}function M(){this.error=null}function P(t,e){try{return t(e)}catch(n){return ct.error=n,ct}}function x(t,n,r,o){var i,s,u,c,a=e(r);if(a){if(i=P(r,o),i===ct?(c=!0,s=i.error,i=null):u=!0,n===i)return void j(n,d())}else i=o,u=!0;n._state!==ot||(a&&u?g(n,i):c?j(n,s):t===it?S(n,i):t===st&&j(n,i))}function C(t,e){try{e(function(e){g(t,e)},function(e){j(t,e)})}catch(n){j(t,n)}}function O(){return at++}function k(t){t[rt]=at++,t._state=void 0,t._result=void 0,t._subscribers=[]}function Y(t){return new _t(this,t).promise}function q(t){var e=this;return new e(I(t)?function(n,r){for(var o=t.length,i=0;o>i;i++)e.resolve(t[i]).then(n,r)}:function(t,e){e(new TypeError("You must pass an array to race."))})}function F(t){var e=this,n=new e(p);return j(n,t),n}function D(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}function K(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}function L(t){this[rt]=O(),this._result=this._state=void 0,this._subscribers=[],p!==t&&("function"!=typeof t&&D(),this instanceof L?C(this,t):K())}function N(t,e){this._instanceConstructor=t,this.promise=new t(p),this.promise[rt]||k(this.promise),I(e)?(this._input=e,this.length=e.length,this._remaining=e.length,this._result=new Array(this.length),0===this.length?S(this.promise,this._result):(this.length=this.length||0,this._enumerate(),0===this._remaining&&S(this.promise,this._result))):j(this.promise,U())}function U(){return new Error("Array Methods must be provided an Array")}function W(){var t;if("undefined"!=typeof global)t=global;else if("undefined"!=typeof self)t=self;else try{t=Function("return this")()}catch(e){throw new Error("polyfill failed because global object is unavailable in this environment")}var n=t.Promise;(!n||"[object Promise]"!==Object.prototype.toString.call(n.resolve())||n.cast)&&(t.Promise=pt)}var z;z=Array.isArray?Array.isArray:function(t){return"[object Array]"===Object.prototype.toString.call(t)};var B,G,H,I=z,J=0,Q=function(t,e){tt[J]=t,tt[J+1]=e,J+=2,2===J&&(G?G(a):H())},R="undefined"!=typeof window?window:void 0,V=R||{},X=V.MutationObserver||V.WebKitMutationObserver,Z="undefined"==typeof self&&"undefined"!=typeof process&&"[object process]"==={}.toString.call(process),$="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel,tt=new Array(1e3);H=Z?o():X?s():$?u():void 0===R&&"function"==typeof require?f():c();var et=l,nt=h,rt=Math.random().toString(36).substring(16),ot=void 0,it=1,st=2,ut=new M,ct=new M,at=0,ft=Y,lt=q,ht=F,pt=L;L.all=ft,L.race=lt,L.resolve=nt,L.reject=ht,L._setScheduler=n,L._setAsap=r,L._asap=Q,L.prototype={constructor:L,then:et,"catch":function(t){return this.then(null,t)}};var _t=N;N.prototype._enumerate=function(){for(var t=this.length,e=this._input,n=0;this._state===ot&&t>n;n++)this._eachEntry(e[n],n)},N.prototype._eachEntry=function(t,e){var n=this._instanceConstructor,r=n.resolve;if(r===nt){var o=v(t);if(o===et&&t._state!==ot)this._settledAt(t._state,e,t._result);else if("function"!=typeof o)this._remaining--,this._result[e]=t;else if(n===pt){var i=new n(p);w(i,t,o),this._willSettleAt(i,e)}else this._willSettleAt(new n(function(e){e(t)}),e)}else this._willSettleAt(r(t),e)},N.prototype._settledAt=function(t,e,n){var r=this.promise;r._state===ot&&(this._remaining--,t===st?j(r,n):this._result[e]=n),0===this._remaining&&S(r,this._result)},N.prototype._willSettleAt=function(t,e){var n=this;E(t,void 0,function(t){n._settledAt(it,e,t)},function(t){n._settledAt(st,e,t)})};var dt=W,vt={Promise:pt,polyfill:dt};"function"==typeof define&&define.amd?define(function(){return vt}):"undefined"!=typeof module&&module.exports?module.exports=vt:"undefined"!=typeof this&&(this.ES6Promise=vt),dt()}).call(this); \ No newline at end of file
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise.umd.js b/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise.umd.js
deleted file mode 100644
index 5984f70..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise.umd.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import Promise from './es6-promise/promise';
-import polyfill from './es6-promise/polyfill';
-
-var ES6Promise = {
- 'Promise': Promise,
- 'polyfill': polyfill
-};
-
-/* global define:true module:true window: true */
-if (typeof define === 'function' && define['amd']) {
- define(function() { return ES6Promise; });
-} else if (typeof module !== 'undefined' && module['exports']) {
- module['exports'] = ES6Promise;
-} else if (typeof this !== 'undefined') {
- this['ES6Promise'] = ES6Promise;
-}
-
-polyfill();
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/-internal.js b/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/-internal.js
deleted file mode 100644
index aeebf57..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/-internal.js
+++ /dev/null
@@ -1,273 +0,0 @@
-import {
- objectOrFunction,
- isFunction
-} from './utils';
-
-import {
- asap
-} from './asap';
-
-import originalThen from './then';
-import originalResolve from './promise/resolve';
-
-export var PROMISE_ID = Math.random().toString(36).substring(16);
-
-function noop() {}
-
-var PENDING = void 0;
-var FULFILLED = 1;
-var REJECTED = 2;
-
-var GET_THEN_ERROR = new ErrorObject();
-
-function selfFulfillment() {
- return new TypeError("You cannot resolve a promise with itself");
-}
-
-function cannotReturnOwn() {
- return new TypeError('A promises callback cannot return that same promise.');
-}
-
-function getThen(promise) {
- try {
- return promise.then;
- } catch(error) {
- GET_THEN_ERROR.error = error;
- return GET_THEN_ERROR;
- }
-}
-
-function tryThen(then, value, fulfillmentHandler, rejectionHandler) {
- try {
- then.call(value, fulfillmentHandler, rejectionHandler);
- } catch(e) {
- return e;
- }
-}
-
-function handleForeignThenable(promise, thenable, then) {
- asap(function(promise) {
- var sealed = false;
- var error = tryThen(then, thenable, function(value) {
- if (sealed) { return; }
- sealed = true;
- if (thenable !== value) {
- resolve(promise, value);
- } else {
- fulfill(promise, value);
- }
- }, function(reason) {
- if (sealed) { return; }
- sealed = true;
-
- reject(promise, reason);
- }, 'Settle: ' + (promise._label || ' unknown promise'));
-
- if (!sealed && error) {
- sealed = true;
- reject(promise, error);
- }
- }, promise);
-}
-
-function handleOwnThenable(promise, thenable) {
- if (thenable._state === FULFILLED) {
- fulfill(promise, thenable._result);
- } else if (thenable._state === REJECTED) {
- reject(promise, thenable._result);
- } else {
- subscribe(thenable, undefined, function(value) {
- resolve(promise, value);
- }, function(reason) {
- reject(promise, reason);
- });
- }
-}
-
-function handleMaybeThenable(promise, maybeThenable, then) {
- if (maybeThenable.constructor === promise.constructor &&
- then === originalThen &&
- constructor.resolve === originalResolve) {
- handleOwnThenable(promise, maybeThenable);
- } else {
- if (then === GET_THEN_ERROR) {
- reject(promise, GET_THEN_ERROR.error);
- } else if (then === undefined) {
- fulfill(promise, maybeThenable);
- } else if (isFunction(then)) {
- handleForeignThenable(promise, maybeThenable, then);
- } else {
- fulfill(promise, maybeThenable);
- }
- }
-}
-
-function resolve(promise, value) {
- if (promise === value) {
- reject(promise, selfFulfillment());
- } else if (objectOrFunction(value)) {
- handleMaybeThenable(promise, value, getThen(value));
- } else {
- fulfill(promise, value);
- }
-}
-
-function publishRejection(promise) {
- if (promise._onerror) {
- promise._onerror(promise._result);
- }
-
- publish(promise);
-}
-
-function fulfill(promise, value) {
- if (promise._state !== PENDING) { return; }
-
- promise._result = value;
- promise._state = FULFILLED;
-
- if (promise._subscribers.length !== 0) {
- asap(publish, promise);
- }
-}
-
-function reject(promise, reason) {
- if (promise._state !== PENDING) { return; }
- promise._state = REJECTED;
- promise._result = reason;
-
- asap(publishRejection, promise);
-}
-
-function subscribe(parent, child, onFulfillment, onRejection) {
- var subscribers = parent._subscribers;
- var length = subscribers.length;
-
- parent._onerror = null;
-
- subscribers[length] = child;
- subscribers[length + FULFILLED] = onFulfillment;
- subscribers[length + REJECTED] = onRejection;
-
- if (length === 0 && parent._state) {
- asap(publish, parent);
- }
-}
-
-function publish(promise) {
- var subscribers = promise._subscribers;
- var settled = promise._state;
-
- if (subscribers.length === 0) { return; }
-
- var child, callback, detail = promise._result;
-
- for (var i = 0; i < subscribers.length; i += 3) {
- child = subscribers[i];
- callback = subscribers[i + settled];
-
- if (child) {
- invokeCallback(settled, child, callback, detail);
- } else {
- callback(detail);
- }
- }
-
- promise._subscribers.length = 0;
-}
-
-function ErrorObject() {
- this.error = null;
-}
-
-var TRY_CATCH_ERROR = new ErrorObject();
-
-function tryCatch(callback, detail) {
- try {
- return callback(detail);
- } catch(e) {
- TRY_CATCH_ERROR.error = e;
- return TRY_CATCH_ERROR;
- }
-}
-
-function invokeCallback(settled, promise, callback, detail) {
- var hasCallback = isFunction(callback),
- value, error, succeeded, failed;
-
- if (hasCallback) {
- value = tryCatch(callback, detail);
-
- if (value === TRY_CATCH_ERROR) {
- failed = true;
- error = value.error;
- value = null;
- } else {
- succeeded = true;
- }
-
- if (promise === value) {
- reject(promise, cannotReturnOwn());
- return;
- }
-
- } else {
- value = detail;
- succeeded = true;
- }
-
- if (promise._state !== PENDING) {
- // noop
- } else if (hasCallback && succeeded) {
- resolve(promise, value);
- } else if (failed) {
- reject(promise, error);
- } else if (settled === FULFILLED) {
- fulfill(promise, value);
- } else if (settled === REJECTED) {
- reject(promise, value);
- }
-}
-
-function initializePromise(promise, resolver) {
- try {
- resolver(function resolvePromise(value){
- resolve(promise, value);
- }, function rejectPromise(reason) {
- reject(promise, reason);
- });
- } catch(e) {
- reject(promise, e);
- }
-}
-
-var id = 0;
-function nextId() {
- return id++;
-}
-
-function makePromise(promise) {
- promise[PROMISE_ID] = id++;
- promise._state = undefined;
- promise._result = undefined;
- promise._subscribers = [];
-}
-
-export {
- nextId,
- makePromise,
- getThen,
- noop,
- resolve,
- reject,
- fulfill,
- subscribe,
- publish,
- publishRejection,
- initializePromise,
- invokeCallback,
- FULFILLED,
- REJECTED,
- PENDING,
- handleMaybeThenable
-};
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/asap.js b/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/asap.js
deleted file mode 100644
index 40f1d25..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/asap.js
+++ /dev/null
@@ -1,119 +0,0 @@
-var len = 0;
-var vertxNext;
-var customSchedulerFn;
-
-export var asap = function asap(callback, arg) {
- queue[len] = callback;
- queue[len + 1] = arg;
- len += 2;
- if (len === 2) {
- // If len is 2, that means that we need to schedule an async flush.
- // If additional callbacks are queued before the queue is flushed, they
- // will be processed by this flush that we are scheduling.
- if (customSchedulerFn) {
- customSchedulerFn(flush);
- } else {
- scheduleFlush();
- }
- }
-}
-
-export function setScheduler(scheduleFn) {
- customSchedulerFn = scheduleFn;
-}
-
-export function setAsap(asapFn) {
- asap = asapFn;
-}
-
-var browserWindow = (typeof window !== 'undefined') ? window : undefined;
-var browserGlobal = browserWindow || {};
-var BrowserMutationObserver = browserGlobal.MutationObserver || browserGlobal.WebKitMutationObserver;
-var isNode = typeof self === 'undefined' && typeof process !== 'undefined' && {}.toString.call(process) === '[object process]';
-
-// test for web worker but not in IE10
-var isWorker = typeof Uint8ClampedArray !== 'undefined' &&
- typeof importScripts !== 'undefined' &&
- typeof MessageChannel !== 'undefined';
-
-// node
-function useNextTick() {
- // node version 0.10.x displays a deprecation warning when nextTick is used recursively
- // see https://github.com/cujojs/when/issues/410 for details
- return function() {
- process.nextTick(flush);
- };
-}
-
-// vertx
-function useVertxTimer() {
- return function() {
- vertxNext(flush);
- };
-}
-
-function useMutationObserver() {
- var iterations = 0;
- var observer = new BrowserMutationObserver(flush);
- var node = document.createTextNode('');
- observer.observe(node, { characterData: true });
-
- return function() {
- node.data = (iterations = ++iterations % 2);
- };
-}
-
-// web worker
-function useMessageChannel() {
- var channel = new MessageChannel();
- channel.port1.onmessage = flush;
- return function () {
- channel.port2.postMessage(0);
- };
-}
-
-function useSetTimeout() {
- return function() {
- setTimeout(flush, 1);
- };
-}
-
-var queue = new Array(1000);
-function flush() {
- for (var i = 0; i < len; i+=2) {
- var callback = queue[i];
- var arg = queue[i+1];
-
- callback(arg);
-
- queue[i] = undefined;
- queue[i+1] = undefined;
- }
-
- len = 0;
-}
-
-function attemptVertx() {
- try {
- var r = require;
- var vertx = r('vertx');
- vertxNext = vertx.runOnLoop || vertx.runOnContext;
- return useVertxTimer();
- } catch(e) {
- return useSetTimeout();
- }
-}
-
-var scheduleFlush;
-// Decide what async method to use to triggering processing of queued callbacks:
-if (isNode) {
- scheduleFlush = useNextTick();
-} else if (BrowserMutationObserver) {
- scheduleFlush = useMutationObserver();
-} else if (isWorker) {
- scheduleFlush = useMessageChannel();
-} else if (browserWindow === undefined && typeof require === 'function') {
- scheduleFlush = attemptVertx();
-} else {
- scheduleFlush = useSetTimeout();
-}
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/enumerator.js b/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/enumerator.js
deleted file mode 100644
index 2a7a28f..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/enumerator.js
+++ /dev/null
@@ -1,118 +0,0 @@
-import {
- isArray,
- isMaybeThenable
-} from './utils';
-
-import {
- noop,
- reject,
- fulfill,
- subscribe,
- FULFILLED,
- REJECTED,
- PENDING,
- getThen,
- handleMaybeThenable
-} from './-internal';
-
-import then from './then';
-import Promise from './promise';
-import originalResolve from './promise/resolve';
-import originalThen from './then';
-import { makePromise, PROMISE_ID } from './-internal';
-
-export default Enumerator;
-function Enumerator(Constructor, input) {
- this._instanceConstructor = Constructor;
- this.promise = new Constructor(noop);
-
- if (!this.promise[PROMISE_ID]) {
- makePromise(this.promise);
- }
-
- if (isArray(input)) {
- this._input = input;
- this.length = input.length;
- this._remaining = input.length;
-
- this._result = new Array(this.length);
-
- if (this.length === 0) {
- fulfill(this.promise, this._result);
- } else {
- this.length = this.length || 0;
- this._enumerate();
- if (this._remaining === 0) {
- fulfill(this.promise, this._result);
- }
- }
- } else {
- reject(this.promise, validationError());
- }
-}
-
-function validationError() {
- return new Error('Array Methods must be provided an Array');
-};
-
-Enumerator.prototype._enumerate = function() {
- var length = this.length;
- var input = this._input;
-
- for (var i = 0; this._state === PENDING && i < length; i++) {
- this._eachEntry(input[i], i);
- }
-};
-
-Enumerator.prototype._eachEntry = function(entry, i) {
- var c = this._instanceConstructor;
- var resolve = c.resolve;
-
- if (resolve === originalResolve) {
- var then = getThen(entry);
-
- if (then === originalThen &&
- entry._state !== PENDING) {
- this._settledAt(entry._state, i, entry._result);
- } else if (typeof then !== 'function') {
- this._remaining--;
- this._result[i] = entry;
- } else if (c === Promise) {
- var promise = new c(noop);
- handleMaybeThenable(promise, entry, then);
- this._willSettleAt(promise, i);
- } else {
- this._willSettleAt(new c(function(resolve) { resolve(entry); }), i);
- }
- } else {
- this._willSettleAt(resolve(entry), i);
- }
-};
-
-Enumerator.prototype._settledAt = function(state, i, value) {
- var promise = this.promise;
-
- if (promise._state === PENDING) {
- this._remaining--;
-
- if (state === REJECTED) {
- reject(promise, value);
- } else {
- this._result[i] = value;
- }
- }
-
- if (this._remaining === 0) {
- fulfill(promise, this._result);
- }
-};
-
-Enumerator.prototype._willSettleAt = function(promise, i) {
- var enumerator = this;
-
- subscribe(promise, undefined, function(value) {
- enumerator._settledAt(FULFILLED, i, value);
- }, function(reason) {
- enumerator._settledAt(REJECTED, i, reason);
- });
-};
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/polyfill.js b/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/polyfill.js
deleted file mode 100644
index 6696dfc..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/polyfill.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/*global self*/
-import Promise from './promise';
-
-export default function polyfill() {
- var local;
-
- if (typeof global !== 'undefined') {
- local = global;
- } else if (typeof self !== 'undefined') {
- local = self;
- } else {
- try {
- local = Function('return this')();
- } catch (e) {
- throw new Error('polyfill failed because global object is unavailable in this environment');
- }
- }
-
- var P = local.Promise;
-
- if (P && Object.prototype.toString.call(P.resolve()) === '[object Promise]' && !P.cast) {
- return;
- }
-
- local.Promise = Promise;
-}
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise.js b/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise.js
deleted file mode 100644
index d95951e..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise.js
+++ /dev/null
@@ -1,384 +0,0 @@
-import {
- isFunction
-} from './utils';
-
-import {
- noop,
- nextId,
- PROMISE_ID,
- initializePromise
-} from './-internal';
-
-import {
- asap,
- setAsap,
- setScheduler
-} from './asap';
-
-import all from './promise/all';
-import race from './promise/race';
-import Resolve from './promise/resolve';
-import Reject from './promise/reject';
-import then from './then';
-
-
-function needsResolver() {
- throw new TypeError('You must pass a resolver function as the first argument to the promise constructor');
-}
-
-function needsNew() {
- throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.");
-}
-
-export default Promise;
-/**
- Promise objects represent the eventual result of an asynchronous operation. The
- primary way of interacting with a promise is through its `then` method, which
- registers callbacks to receive either a promise's eventual value or the reason
- why the promise cannot be fulfilled.
-
- Terminology
- -----------
-
- - `promise` is an object or function with a `then` method whose behavior conforms to this specification.
- - `thenable` is an object or function that defines a `then` method.
- - `value` is any legal JavaScript value (including undefined, a thenable, or a promise).
- - `exception` is a value that is thrown using the throw statement.
- - `reason` is a value that indicates why a promise was rejected.
- - `settled` the final resting state of a promise, fulfilled or rejected.
-
- A promise can be in one of three states: pending, fulfilled, or rejected.
-
- Promises that are fulfilled have a fulfillment value and are in the fulfilled
- state. Promises that are rejected have a rejection reason and are in the
- rejected state. A fulfillment value is never a thenable.
-
- Promises can also be said to *resolve* a value. If this value is also a
- promise, then the original promise's settled state will match the value's
- settled state. So a promise that *resolves* a promise that rejects will
- itself reject, and a promise that *resolves* a promise that fulfills will
- itself fulfill.
-
-
- Basic Usage:
- ------------
-
- ```js
- var promise = new Promise(function(resolve, reject) {
- // on success
- resolve(value);
-
- // on failure
- reject(reason);
- });
-
- promise.then(function(value) {
- // on fulfillment
- }, function(reason) {
- // on rejection
- });
- ```
-
- Advanced Usage:
- ---------------
-
- Promises shine when abstracting away asynchronous interactions such as
- `XMLHttpRequest`s.
-
- ```js
- function getJSON(url) {
- return new Promise(function(resolve, reject){
- var xhr = new XMLHttpRequest();
-
- xhr.open('GET', url);
- xhr.onreadystatechange = handler;
- xhr.responseType = 'json';
- xhr.setRequestHeader('Accept', 'application/json');
- xhr.send();
-
- function handler() {
- if (this.readyState === this.DONE) {
- if (this.status === 200) {
- resolve(this.response);
- } else {
- reject(new Error('getJSON: `' + url + '` failed with status: [' + this.status + ']'));
- }
- }
- };
- });
- }
-
- getJSON('/posts.json').then(function(json) {
- // on fulfillment
- }, function(reason) {
- // on rejection
- });
- ```
-
- Unlike callbacks, promises are great composable primitives.
-
- ```js
- Promise.all([
- getJSON('/posts'),
- getJSON('/comments')
- ]).then(function(values){
- values[0] // => postsJSON
- values[1] // => commentsJSON
-
- return values;
- });
- ```
-
- @class Promise
- @param {function} resolver
- Useful for tooling.
- @constructor
-*/
-function Promise(resolver) {
- this[PROMISE_ID] = nextId();
- this._result = this._state = undefined;
- this._subscribers = [];
-
- if (noop !== resolver) {
- typeof resolver !== 'function' && needsResolver();
- this instanceof Promise ? initializePromise(this, resolver) : needsNew();
- }
-}
-
-Promise.all = all;
-Promise.race = race;
-Promise.resolve = Resolve;
-Promise.reject = Reject;
-Promise._setScheduler = setScheduler;
-Promise._setAsap = setAsap;
-Promise._asap = asap;
-
-Promise.prototype = {
- constructor: Promise,
-
-/**
- The primary way of interacting with a promise is through its `then` method,
- which registers callbacks to receive either a promise's eventual value or the
- reason why the promise cannot be fulfilled.
-
- ```js
- findUser().then(function(user){
- // user is available
- }, function(reason){
- // user is unavailable, and you are given the reason why
- });
- ```
-
- Chaining
- --------
-
- The return value of `then` is itself a promise. This second, 'downstream'
- promise is resolved with the return value of the first promise's fulfillment
- or rejection handler, or rejected if the handler throws an exception.
-
- ```js
- findUser().then(function (user) {
- return user.name;
- }, function (reason) {
- return 'default name';
- }).then(function (userName) {
- // If `findUser` fulfilled, `userName` will be the user's name, otherwise it
- // will be `'default name'`
- });
-
- findUser().then(function (user) {
- throw new Error('Found user, but still unhappy');
- }, function (reason) {
- throw new Error('`findUser` rejected and we're unhappy');
- }).then(function (value) {
- // never reached
- }, function (reason) {
- // if `findUser` fulfilled, `reason` will be 'Found user, but still unhappy'.
- // If `findUser` rejected, `reason` will be '`findUser` rejected and we're unhappy'.
- });
- ```
- If the downstream promise does not specify a rejection handler, rejection reasons will be propagated further downstream.
-
- ```js
- findUser().then(function (user) {
- throw new PedagogicalException('Upstream error');
- }).then(function (value) {
- // never reached
- }).then(function (value) {
- // never reached
- }, function (reason) {
- // The `PedgagocialException` is propagated all the way down to here
- });
- ```
-
- Assimilation
- ------------
-
- Sometimes the value you want to propagate to a downstream promise can only be
- retrieved asynchronously. This can be achieved by returning a promise in the
- fulfillment or rejection handler. The downstream promise will then be pending
- until the returned promise is settled. This is called *assimilation*.
-
- ```js
- findUser().then(function (user) {
- return findCommentsByAuthor(user);
- }).then(function (comments) {
- // The user's comments are now available
- });
- ```
-
- If the assimliated promise rejects, then the downstream promise will also reject.
-
- ```js
- findUser().then(function (user) {
- return findCommentsByAuthor(user);
- }).then(function (comments) {
- // If `findCommentsByAuthor` fulfills, we'll have the value here
- }, function (reason) {
- // If `findCommentsByAuthor` rejects, we'll have the reason here
- });
- ```
-
- Simple Example
- --------------
-
- Synchronous Example
-
- ```javascript
- var result;
-
- try {
- result = findResult();
- // success
- } catch(reason) {
- // failure
- }
- ```
-
- Errback Example
-
- ```js
- findResult(function(result, err){
- if (err) {
- // failure
- } else {
- // success
- }
- });
- ```
-
- Promise Example;
-
- ```javascript
- findResult().then(function(result){
- // success
- }, function(reason){
- // failure
- });
- ```
-
- Advanced Example
- --------------
-
- Synchronous Example
-
- ```javascript
- var author, books;
-
- try {
- author = findAuthor();
- books = findBooksByAuthor(author);
- // success
- } catch(reason) {
- // failure
- }
- ```
-
- Errback Example
-
- ```js
-
- function foundBooks(books) {
-
- }
-
- function failure(reason) {
-
- }
-
- findAuthor(function(author, err){
- if (err) {
- failure(err);
- // failure
- } else {
- try {
- findBoooksByAuthor(author, function(books, err) {
- if (err) {
- failure(err);
- } else {
- try {
- foundBooks(books);
- } catch(reason) {
- failure(reason);
- }
- }
- });
- } catch(error) {
- failure(err);
- }
- // success
- }
- });
- ```
-
- Promise Example;
-
- ```javascript
- findAuthor().
- then(findBooksByAuthor).
- then(function(books){
- // found books
- }).catch(function(reason){
- // something went wrong
- });
- ```
-
- @method then
- @param {Function} onFulfilled
- @param {Function} onRejected
- Useful for tooling.
- @return {Promise}
-*/
- then: then,
-
-/**
- `catch` is simply sugar for `then(undefined, onRejection)` which makes it the same
- as the catch block of a try/catch statement.
-
- ```js
- function findAuthor(){
- throw new Error('couldn't find that author');
- }
-
- // synchronous
- try {
- findAuthor();
- } catch(reason) {
- // something went wrong
- }
-
- // async with promises
- findAuthor().catch(function(reason){
- // something went wrong
- });
- ```
-
- @method catch
- @param {Function} onRejection
- Useful for tooling.
- @return {Promise}
-*/
- 'catch': function(onRejection) {
- return this.then(null, onRejection);
- }
-};
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise/all.js b/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise/all.js
deleted file mode 100644
index 03033f0..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise/all.js
+++ /dev/null
@@ -1,52 +0,0 @@
-import Enumerator from '../enumerator';
-
-/**
- `Promise.all` accepts an array of promises, and returns a new promise which
- is fulfilled with an array of fulfillment values for the passed promises, or
- rejected with the reason of the first passed promise to be rejected. It casts all
- elements of the passed iterable to promises as it runs this algorithm.
-
- Example:
-
- ```javascript
- var promise1 = resolve(1);
- var promise2 = resolve(2);
- var promise3 = resolve(3);
- var promises = [ promise1, promise2, promise3 ];
-
- Promise.all(promises).then(function(array){
- // The array here would be [ 1, 2, 3 ];
- });
- ```
-
- If any of the `promises` given to `all` are rejected, the first promise
- that is rejected will be given as an argument to the returned promises's
- rejection handler. For example:
-
- Example:
-
- ```javascript
- var promise1 = resolve(1);
- var promise2 = reject(new Error("2"));
- var promise3 = reject(new Error("3"));
- var promises = [ promise1, promise2, promise3 ];
-
- Promise.all(promises).then(function(array){
- // Code here never runs because there are rejected promises!
- }, function(error) {
- // error.message === "2"
- });
- ```
-
- @method all
- @static
- @param {Array} entries array of promises
- @param {String} label optional string for labeling the promise.
- Useful for tooling.
- @return {Promise} promise that is fulfilled when all `promises` have been
- fulfilled, or rejected if any of them become rejected.
- @static
-*/
-export default function all(entries) {
- return new Enumerator(this, entries).promise;
-}
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise/race.js b/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise/race.js
deleted file mode 100644
index 8c922e3..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise/race.js
+++ /dev/null
@@ -1,86 +0,0 @@
-import {
- isArray
-} from "../utils";
-
-/**
- `Promise.race` returns a new promise which is settled in the same way as the
- first passed promise to settle.
-
- Example:
-
- ```javascript
- var promise1 = new Promise(function(resolve, reject){
- setTimeout(function(){
- resolve('promise 1');
- }, 200);
- });
-
- var promise2 = new Promise(function(resolve, reject){
- setTimeout(function(){
- resolve('promise 2');
- }, 100);
- });
-
- Promise.race([promise1, promise2]).then(function(result){
- // result === 'promise 2' because it was resolved before promise1
- // was resolved.
- });
- ```
-
- `Promise.race` is deterministic in that only the state of the first
- settled promise matters. For example, even if other promises given to the
- `promises` array argument are resolved, but the first settled promise has
- become rejected before the other promises became fulfilled, the returned
- promise will become rejected:
-
- ```javascript
- var promise1 = new Promise(function(resolve, reject){
- setTimeout(function(){
- resolve('promise 1');
- }, 200);
- });
-
- var promise2 = new Promise(function(resolve, reject){
- setTimeout(function(){
- reject(new Error('promise 2'));
- }, 100);
- });
-
- Promise.race([promise1, promise2]).then(function(result){
- // Code here never runs
- }, function(reason){
- // reason.message === 'promise 2' because promise 2 became rejected before
- // promise 1 became fulfilled
- });
- ```
-
- An example real-world use case is implementing timeouts:
-
- ```javascript
- Promise.race([ajax('foo.json'), timeout(5000)])
- ```
-
- @method race
- @static
- @param {Array} promises array of promises to observe
- Useful for tooling.
- @return {Promise} a promise which settles in the same way as the first passed
- promise to settle.
-*/
-export default function race(entries) {
- /*jshint validthis:true */
- var Constructor = this;
-
- if (!isArray(entries)) {
- return new Constructor(function(resolve, reject) {
- reject(new TypeError('You must pass an array to race.'));
- });
- } else {
- return new Constructor(function(resolve, reject) {
- var length = entries.length;
- for (var i = 0; i < length; i++) {
- Constructor.resolve(entries[i]).then(resolve, reject);
- }
- });
- }
-}
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise/reject.js b/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise/reject.js
deleted file mode 100644
index 63b86cb..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise/reject.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import {
- noop,
- reject as _reject
-} from '../-internal';
-
-/**
- `Promise.reject` returns a promise rejected with the passed `reason`.
- It is shorthand for the following:
-
- ```javascript
- var promise = new Promise(function(resolve, reject){
- reject(new Error('WHOOPS'));
- });
-
- promise.then(function(value){
- // Code here doesn't run because the promise is rejected!
- }, function(reason){
- // reason.message === 'WHOOPS'
- });
- ```
-
- Instead of writing the above, your code now simply becomes the following:
-
- ```javascript
- var promise = Promise.reject(new Error('WHOOPS'));
-
- promise.then(function(value){
- // Code here doesn't run because the promise is rejected!
- }, function(reason){
- // reason.message === 'WHOOPS'
- });
- ```
-
- @method reject
- @static
- @param {Any} reason value that the returned promise will be rejected with.
- Useful for tooling.
- @return {Promise} a promise rejected with the given `reason`.
-*/
-export default function reject(reason) {
- /*jshint validthis:true */
- var Constructor = this;
- var promise = new Constructor(noop);
- _reject(promise, reason);
- return promise;
-}
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise/resolve.js b/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise/resolve.js
deleted file mode 100644
index 201a545..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/promise/resolve.js
+++ /dev/null
@@ -1,48 +0,0 @@
-import {
- noop,
- resolve as _resolve
-} from '../-internal';
-
-/**
- `Promise.resolve` returns a promise that will become resolved with the
- passed `value`. It is shorthand for the following:
-
- ```javascript
- var promise = new Promise(function(resolve, reject){
- resolve(1);
- });
-
- promise.then(function(value){
- // value === 1
- });
- ```
-
- Instead of writing the above, your code now simply becomes the following:
-
- ```javascript
- var promise = Promise.resolve(1);
-
- promise.then(function(value){
- // value === 1
- });
- ```
-
- @method resolve
- @static
- @param {Any} value value that the returned promise will be resolved with
- Useful for tooling.
- @return {Promise} a promise that will become fulfilled with the given
- `value`
-*/
-export default function resolve(object) {
- /*jshint validthis:true */
- var Constructor = this;
-
- if (object && typeof object === 'object' && object.constructor === Constructor) {
- return object;
- }
-
- var promise = new Constructor(noop);
- _resolve(promise, object);
- return promise;
-}
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/then.js b/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/then.js
deleted file mode 100644
index f97e946..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/then.js
+++ /dev/null
@@ -1,34 +0,0 @@
-import {
- invokeCallback,
- subscribe,
- FULFILLED,
- REJECTED,
- noop,
- makePromise,
- PROMISE_ID
-} from './-internal';
-
-import { asap } from './asap';
-
-export default function then(onFulfillment, onRejection) {
- var parent = this;
-
- var child = new this.constructor(noop);
-
- if (child[PROMISE_ID] === undefined) {
- makePromise(child);
- }
-
- var state = parent._state;
-
- if (state) {
- var callback = arguments[state - 1];
- asap(function(){
- invokeCallback(state, child, callback, parent._result);
- });
- } else {
- subscribe(parent, child, onFulfillment, onRejection);
- }
-
- return child;
-}
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/utils.js b/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/utils.js
deleted file mode 100644
index 31ec6f9..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/lib/es6-promise/utils.js
+++ /dev/null
@@ -1,22 +0,0 @@
-export function objectOrFunction(x) {
- return typeof x === 'function' || (typeof x === 'object' && x !== null);
-}
-
-export function isFunction(x) {
- return typeof x === 'function';
-}
-
-export function isMaybeThenable(x) {
- return typeof x === 'object' && x !== null;
-}
-
-var _isArray;
-if (!Array.isArray) {
- _isArray = function (x) {
- return Object.prototype.toString.call(x) === '[object Array]';
- };
-} else {
- _isArray = Array.isArray;
-}
-
-export var isArray = _isArray;
diff --git a/node_modules/mongo-factory/node_modules/es6-promise/package.json b/node_modules/mongo-factory/node_modules/es6-promise/package.json
deleted file mode 100644
index 3fd4c01..0000000
--- a/node_modules/mongo-factory/node_modules/es6-promise/package.json
+++ /dev/null
@@ -1,96 +0,0 @@
-{
- "name": "es6-promise",
- "namespace": "es6-promise",
- "version": "3.2.1",
- "description": "A lightweight library that provides tools for organizing asynchronous code",
- "main": "dist/es6-promise.js",
- "directories": {
- "lib": "lib"
- },
- "files": [
- "dist",
- "lib",
- "!dist/test"
- ],
- "devDependencies": {
- "babel-eslint": "^6.0.0",
- "broccoli-es6-module-transpiler": "^0.5.0",
- "broccoli-jshint": "^2.1.0",
- "broccoli-merge-trees": "^1.1.1",
- "broccoli-replace": "^0.12.0",
- "broccoli-stew": "^1.2.0",
- "broccoli-uglify-js": "^0.1.3",
- "broccoli-watchify": "^0.2.0",
- "ember-cli": "2.5.0",
- "ember-publisher": "0.0.7",
- "git-repo-version": "0.0.3",
- "json3": "^3.3.2",
- "mocha": "^1.20.1",
- "promises-aplus-tests-phantom": "^2.1.0-revise",
- "release-it": "0.0.10"
- },
- "scripts": {
- "build": "ember build",
- "build:production": "ember build --environment production",
- "start": "ember s",
- "test": "ember test",
- "test:server": "ember test --server",
- "test:node": "ember build && mocha ./dist/test/browserify",
- "lint": "jshint lib",
- "prepublish": "ember build --environment production",
- "dry-run-release": "ember build --environment production && release-it --dry-run --non-interactive"
- },
- "repository": {
- "type": "git",
- "url": "git://github.com/jakearchibald/ES6-Promises.git"
- },
- "bugs": {
- "url": "https://github.com/jakearchibald/ES6-Promises/issues"
- },
- "browser": {
- "vertx": false
- },
- "keywords": [
- "promises",
- "futures"
- ],
- "author": {
- "name": "Yehuda Katz, Tom Dale, Stefan Penner and contributors",
- "url": "Conversion to ES6 API by Jake Archibald"
- },
- "license": "MIT",
- "spm": {
- "main": "dist/es6-promise.js"
- },
- "gitHead": "5df472ec56d5b9fbc76589383852008d46055c61",
- "homepage": "https://github.com/jakearchibald/ES6-Promises#readme",
- "_id": "es6-promise@3.2.1",
- "_shasum": "ec56233868032909207170c39448e24449dd1fc4",
- "_from": "es6-promise@>=3.0.2 <4.0.0",
- "_npmVersion": "3.8.8",
- "_nodeVersion": "5.10.1",
- "_npmUser": {
- "name": "stefanpenner",
- "email": "stefan.penner@gmail.com"
- },
- "dist": {
- "shasum": "ec56233868032909207170c39448e24449dd1fc4",
- "tarball": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.2.1.tgz"
- },
- "maintainers": [
- {
- "name": "jaffathecake",
- "email": "jaffathecake@gmail.com"
- },
- {
- "name": "stefanpenner",
- "email": "stefan.penner@gmail.com"
- }
- ],
- "_npmOperationalInternal": {
- "host": "packages-12-west.internal.npmjs.com",
- "tmp": "tmp/es6-promise-3.2.1.tgz_1463027774105_0.6333294357173145"
- },
- "_resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.2.1.tgz",
- "readme": "ERROR: No README data found!"
-}
diff --git a/node_modules/mongo-factory/package.json b/node_modules/mongo-factory/package.json
deleted file mode 100644
index 9b6b7ca..0000000
--- a/node_modules/mongo-factory/package.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "name": "mongo-factory",
- "version": "1.0.0",
- "description": "A very simple mongo connection pool manager",
- "main": "mongoFactory.js",
- "scripts": {
- "test": "mocha"
- },
- "repository": {
- "type": "git",
- "url": "git://github.com/toymachiner62/mongoFactory.git"
- },
- "keywords": [
- "mongo",
- "node",
- "connection",
- "pool"
- ],
- "author": {
- "name": "Tom Caflisch"
- },
- "license": "MIT",
- "bugs": {
- "url": "https://github.com/toymachiner62/mongoFactory/issues"
- },
- "homepage": "https://github.com/toymachiner62/mongoFactory",
- "dependencies": {
- "es6-promise": "^3.0.2",
- "underscore": "^1.8.3"
- },
- "peerDependencies": {
- "mongodb": "*"
- },
- "devDependencies": {
- "chai": "^3.4.1",
- "chai-as-promised": "^5.2.0",
- "chai-spies": "^0.7.1",
- "codeclimate-test-reporter": "0.1.1",
- "mocha": "^2.3.4",
- "mongodb": "*"
- },
- "gitHead": "a080b957cdda8e6969ea600e89afe74a09248419",
- "_id": "mongo-factory@1.0.0",
- "_shasum": "fade3ee31336c9d13029b2168c0538520be589db",
- "_from": "mongo-factory@>=1.0.0 <2.0.0",
- "_npmVersion": "3.3.12",
- "_nodeVersion": "5.1.0",
- "_npmUser": {
- "name": "toymachiner62",
- "email": "tomcaflisch@gmail.com"
- },
- "maintainers": [
- {
- "name": "toymachiner62",
- "email": "tomcaflisch@gmail.com"
- }
- ],
- "dist": {
- "shasum": "fade3ee31336c9d13029b2168c0538520be589db",
- "tarball": "https://registry.npmjs.org/mongo-factory/-/mongo-factory-1.0.0.tgz"
- },
- "directories": {},
- "_resolved": "https://registry.npmjs.org/mongo-factory/-/mongo-factory-1.0.0.tgz",
- "readme": "ERROR: No README data found!"
-}
diff --git a/node_modules/mongo-factory/test/test.js b/node_modules/mongo-factory/test/test.js
deleted file mode 100644
index 9ac91c3..0000000
--- a/node_modules/mongo-factory/test/test.js
+++ /dev/null
@@ -1,94 +0,0 @@
-var chai = require('chai');
-var expect = chai.expect;
-var mongo = require('mongodb');
-
-describe('mongoFactory', function() {
- var mongoFactory;
-
- beforeEach(function() {
- mongoFactory = require('../');
- });
-
- it('can be required without blowing up', function(done) {
- var mongoFactory = require('../');
- expect(mongoFactory).to.exist;
- done();
- });
-
- describe('getConnection()', function() {
- describe('with no parameters', function() {
- it('should fulfill the promise', function(done) {
- var conn = mongoFactory.getConnection();
- expect(conn).to.be.fulfilled;
- done();
- });
-
- it('should reject the promise', function(done) {
- var conn = mongoFactory.getConnection();
- expect(conn).to.be.rejected;
- done();
- });
- });
-
- describe('with a null parameter', function() {
- it('should reject the promise', function(done) {
- var conn = mongoFactory.getConnection(null);
- expect(conn).to.be.rejected;
- done();
- });
- });
-
- describe('with a valid mongo string parameter', function() {
- describe('needing to create the pool the first time', function() {
- it('should return a fulfilled promise', function(done) {
- var conn = mongoFactory.getConnection('mongodb://localhost:27017').then(function(db) {
- expect(conn).to.be.fulfilled;
- expect(conn).to.not.be.rejected;
- done();
- });
- });
- });
-
- describe('after a pool is already instantiated', function() {
- it('should return a fulfilled promise', function(done) {
- var conn1 = mongoFactory.getConnection('mongodb://localhost:27017').then(function() {
- var conn = mongoFactory.getConnection('mongodb://localhost:27017').then(function() {
- expect(conn).to.be.fulfilled;
- expect(conn).to.not.be.rejected;
- done();
- });
- });
- });
- });
- });
- });
-
- describe('ObjectID', function() {
- it('should return mongo\'s ObjectID method', function() {
- var oid = mongoFactory.ObjectID;
- expect(oid).to.be.a.function;
- });
-
- it('should allow you to create a new ObjectID', function() {
- var oid = new mongoFactory.ObjectID;
- expect(oid.toHexString().length).to.equal(24);
- });
-
- it('should allow you to compare ObjectIDs', function() {
- var oid1 = new mongoFactory.ObjectID;
- var oid2 = new mongoFactory.ObjectID(oid1.id);
- var oid3 = new mongoFactory.ObjectID;
- expect(oid1.equals(oid2));
- expect(!oid1.equals(oid3));
- });
-
- it('should allow you to create a new ObjectID with a specific timestamp', function() {
- // Get a timestamp in seconds
- var timestamp = Math.floor(new Date().getTime()/1000);
- // Create a date with the timestamp
- var timestampDate = new Date(timestamp*1000);
- var oid = new mongoFactory.ObjectID(timestamp);
- expect(oid.getTimestamp().toString()).to.equal(timestampDate.toString());
- });
- });
-});