UNPKG

@jokio/ts-events

Version:

Various EventEmitter event replacements with synchronous, a-synchronous, and queued events. Made in TypeScript so usable with JavaScript and TypeScript.

44 lines 4.17 kB
// Copyright © 2015 Rogier Schouten<github@workingcode.ninja> // License: ISC 'use strict'; function __export(m) { for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; } Object.defineProperty(exports, "__esModule", { value: true }); __export(require("./base-event")); __export(require("./sync-event")); __export(require("./queued-event")); __export(require("./async-event")); __export(require("./any-event")); var EventQueue_1 = require("./EventQueue"); var EventQueue_2 = require("./EventQueue"); exports.EventQueue = EventQueue_2.default; /** * The global event queue for QueuedEvents */ function queue() { return EventQueue_1.default.global(); } exports.queue = queue; /** * Convenience function, same as EventQueue.global().flushOnce(). * Flushes the QueuedEvents, calling all events currently in the queue but not * any events put into the queue as a result of the flush. */ function flushOnce() { EventQueue_1.default.global().flushOnce(); } exports.flushOnce = flushOnce; /** * Convenience function, same as EventQueue.global().flush(). * Flushes the QueuedEvents, calling all handlers currently in the queue and those * put into the queue as a result of the flush. * @param maxRounds Optional, default 10. Number of iterations after which to throw an error because * the queue keeps filling up. Set to undefined or null to disable this. */ function flush(maxRounds) { if (maxRounds === void 0) { maxRounds = 10; } EventQueue_1.default.global().flush(maxRounds); } exports.flush = flush; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDZEQUE2RDtBQUM3RCxlQUFlO0FBRWYsWUFBWSxDQUFDOzs7OztBQUViLGtDQUE2QjtBQUM3QixrQ0FBNkI7QUFDN0Isb0NBQStCO0FBQy9CLG1DQUE4QjtBQUM5QixpQ0FBNEI7QUFFNUIsMkNBQXFEO0FBQ3JELDJDQUFxRDtBQUE1QyxrQ0FBQSxPQUFPLENBQWM7QUFFOUI7O0dBRUc7QUFDSDtJQUNJLE1BQU0sQ0FBQyxvQkFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO0FBQy9CLENBQUM7QUFGRCxzQkFFQztBQUVEOzs7O0dBSUc7QUFDSDtJQUNJLG9CQUFVLENBQUMsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUM7QUFDcEMsQ0FBQztBQUZELDhCQUVDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsZUFBc0IsU0FBc0I7SUFBdEIsMEJBQUEsRUFBQSxjQUFzQjtJQUN4QyxvQkFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUN6QyxDQUFDO0FBRkQsc0JBRUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgwqkgMjAxNSBSb2dpZXIgU2Nob3V0ZW48Z2l0aHViQHdvcmtpbmdjb2RlLm5pbmphPlxuLy8gTGljZW5zZTogSVNDXG5cbid1c2Ugc3RyaWN0JztcblxuZXhwb3J0ICogZnJvbSAnLi9iYXNlLWV2ZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3luYy1ldmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3F1ZXVlZC1ldmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2FzeW5jLWV2ZW50JztcbmV4cG9ydCAqIGZyb20gJy4vYW55LWV2ZW50JztcblxuaW1wb3J0IHsgZGVmYXVsdCBhcyBFdmVudFF1ZXVlIH0gZnJvbSAnLi9FdmVudFF1ZXVlJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRXZlbnRRdWV1ZSB9IGZyb20gJy4vRXZlbnRRdWV1ZSc7XG5cbi8qKlxuICogVGhlIGdsb2JhbCBldmVudCBxdWV1ZSBmb3IgUXVldWVkRXZlbnRzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBxdWV1ZSgpOiBFdmVudFF1ZXVlIHtcbiAgICByZXR1cm4gRXZlbnRRdWV1ZS5nbG9iYWwoKTtcbn1cblxuLyoqXG4gKiBDb252ZW5pZW5jZSBmdW5jdGlvbiwgc2FtZSBhcyBFdmVudFF1ZXVlLmdsb2JhbCgpLmZsdXNoT25jZSgpLlxuICogRmx1c2hlcyB0aGUgUXVldWVkRXZlbnRzLCBjYWxsaW5nIGFsbCBldmVudHMgY3VycmVudGx5IGluIHRoZSBxdWV1ZSBidXQgbm90XG4gKiBhbnkgZXZlbnRzIHB1dCBpbnRvIHRoZSBxdWV1ZSBhcyBhIHJlc3VsdCBvZiB0aGUgZmx1c2guXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmbHVzaE9uY2UoKTogdm9pZCB7XG4gICAgRXZlbnRRdWV1ZS5nbG9iYWwoKS5mbHVzaE9uY2UoKTtcbn1cblxuLyoqXG4gKiBDb252ZW5pZW5jZSBmdW5jdGlvbiwgc2FtZSBhcyBFdmVudFF1ZXVlLmdsb2JhbCgpLmZsdXNoKCkuXG4gKiBGbHVzaGVzIHRoZSBRdWV1ZWRFdmVudHMsIGNhbGxpbmcgYWxsIGhhbmRsZXJzIGN1cnJlbnRseSBpbiB0aGUgcXVldWUgYW5kIHRob3NlXG4gKiBwdXQgaW50byB0aGUgcXVldWUgYXMgYSByZXN1bHQgb2YgdGhlIGZsdXNoLlxuICogQHBhcmFtIG1heFJvdW5kcyBPcHRpb25hbCwgZGVmYXVsdCAxMC4gTnVtYmVyIG9mIGl0ZXJhdGlvbnMgYWZ0ZXIgd2hpY2ggdG8gdGhyb3cgYW4gZXJyb3IgYmVjYXVzZVxuICogICAgICAgICAgICAgICAgICB0aGUgcXVldWUga2VlcHMgZmlsbGluZyB1cC4gU2V0IHRvIHVuZGVmaW5lZCBvciBudWxsIHRvIGRpc2FibGUgdGhpcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZsdXNoKG1heFJvdW5kczogbnVtYmVyID0gMTApOiB2b2lkIHtcbiAgICBFdmVudFF1ZXVlLmdsb2JhbCgpLmZsdXNoKG1heFJvdW5kcyk7XG59XG4iXX0=