fewer
Version:
A minimal ORM for Node.js.
34 lines • 984 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
let db;
let waiters = [];
let timeouts = [];
exports.default = {
get() {
return db;
},
set(newDb) {
db = newDb;
// First reset our timeouts:
timeouts.forEach(id => clearTimeout(id));
timeouts = [];
// Then notify listeners:
waiters.forEach(fn => fn(db));
waiters = [];
},
waitFor() {
if (db) {
return Promise.resolve(db);
}
else {
return new Promise(resolve => {
waiters.push(resolve);
// TODO: This error needs to be much more clear on what is happening, why it might be happening, and how to fix it.
timeouts.push(setTimeout(() => {
console.warn('Schema did not locate database within one second.');
}, 1000));
});
}
},
};
//# sourceMappingURL=globalDatabase.js.map