UNPKG

1.57 kBJavaScriptView Raw
1"use strict";
2/**
3 * Copyright (c) 2019, Microsoft Corporation (MIT License).
4 */
5Object.defineProperty(exports, "__esModule", { value: true });
6var EventEmitter2 = /** @class */ (function () {
7 function EventEmitter2() {
8 this._listeners = [];
9 }
10 Object.defineProperty(EventEmitter2.prototype, "event", {
11 get: function () {
12 var _this = this;
13 if (!this._event) {
14 this._event = function (listener) {
15 _this._listeners.push(listener);
16 var disposable = {
17 dispose: function () {
18 for (var i = 0; i < _this._listeners.length; i++) {
19 if (_this._listeners[i] === listener) {
20 _this._listeners.splice(i, 1);
21 return;
22 }
23 }
24 }
25 };
26 return disposable;
27 };
28 }
29 return this._event;
30 },
31 enumerable: true,
32 configurable: true
33 });
34 EventEmitter2.prototype.fire = function (data) {
35 var queue = [];
36 for (var i = 0; i < this._listeners.length; i++) {
37 queue.push(this._listeners[i]);
38 }
39 for (var i = 0; i < queue.length; i++) {
40 queue[i].call(undefined, data);
41 }
42 };
43 return EventEmitter2;
44}());
45exports.EventEmitter2 = EventEmitter2;
46//# sourceMappingURL=eventEmitter2.js.map
\No newline at end of file