UNPKG

vue-carousel-3d

Version:

Beautiful, flexible and touch supported 3D Carousel for Vue.js

33 lines (25 loc) 609 B
'use strict'; const Promise = require('bluebird'); function Generator() { this.id = 0; this.store = {}; } Generator.prototype.list = function() { return this.store; }; Generator.prototype.get = function(name) { return this.store[name]; }; Generator.prototype.register = function(name, fn) { if (!fn) { if (typeof name === 'function') { fn = name; name = `generator-${this.id++}`; } else { throw new TypeError('fn must be a function'); } } if (fn.length > 1) fn = Promise.promisify(fn); this.store[name] = Promise.method(fn); }; module.exports = Generator;