1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | var XMLHttpRequestEventTarget = (function () {
|
4 | function XMLHttpRequestEventTarget() {
|
5 | this.listeners = {};
|
6 | }
|
7 | XMLHttpRequestEventTarget.prototype.addEventListener = function (eventType, listener) {
|
8 | eventType = eventType.toLowerCase();
|
9 | this.listeners[eventType] = this.listeners[eventType] || [];
|
10 | this.listeners[eventType].push(listener.handleEvent || listener);
|
11 | };
|
12 | XMLHttpRequestEventTarget.prototype.removeEventListener = function (eventType, listener) {
|
13 | eventType = eventType.toLowerCase();
|
14 | if (!this.listeners[eventType]) {
|
15 | return;
|
16 | }
|
17 | var index = this.listeners[eventType].indexOf(listener.handleEvent || listener);
|
18 | if (index < 0) {
|
19 | return;
|
20 | }
|
21 | this.listeners[eventType].splice(index, 1);
|
22 | };
|
23 | XMLHttpRequestEventTarget.prototype.dispatchEvent = function (event) {
|
24 | var eventType = event.type.toLowerCase();
|
25 | event.target = this;
|
26 | if (this.listeners[eventType]) {
|
27 | for (var _i = 0, _a = this.listeners[eventType]; _i < _a.length; _i++) {
|
28 | var listener_1 = _a[_i];
|
29 | listener_1.call(this, event);
|
30 | }
|
31 | }
|
32 | var listener = this["on" + eventType];
|
33 | if (listener) {
|
34 | listener.call(this, event);
|
35 | }
|
36 | return true;
|
37 | };
|
38 | return XMLHttpRequestEventTarget;
|
39 | }());
|
40 | exports.XMLHttpRequestEventTarget = XMLHttpRequestEventTarget;
|
41 |
|
\ | No newline at end of file |