Files
discord-decomp/_bundle/dispatch.js
T
2026-11-01 12:12:55 +02:00

320 lines
9.6 KiB
JavaScript

// Metro module 132 (f133).
import _classCallCheck from "./_classCallCheck";
import _createClass from "./_createClass";
import Event2 from "./Event";
import { setComposedPath, setTarget, setEventPhase, getStopPropagationFlag, setCurrentTarget, setStopImmediatePropagationFlag, setStopPropagationFlag, setInPassiveListenerFlag, getStopImmediatePropagationFlag, setIsTrusted } from "./Module134";
import { EVENT_TARGET_GET_THE_PARENT_KEY, EVENT_TARGET_GET_DECLARATIVE_LISTENER_KEY, INTERNAL_DISPATCH_METHOD_KEY } from "./Module135";
import { setPlatformObject } from "./Module126";
import { enableNativeEventTargetEventDispatching } from "./Module27";
let invoke, getListenersForPhase, setEventDispatchFlag, c128_8, c128_9, c128_11;
let EventTarget;
let env128 = {};
const dispatch = function(a0, a1) {
let r5, r104, AT_TARGET, AT_TARGET2, stopPropagationFlag;
setEventDispatchFlag(a1, true);
const r11 = (function getEventPath(r3, a1) {
const r2 = [];
while (r3 != null) {
r2.push(r3);
r3 = r3[EVENT_TARGET_GET_THE_PARENT_KEY]();
}
return r2;
})(a0);
setComposedPath(a1, r11);
setTarget(a1, a0);
let r44 = r11.length - 1;
if (0 <= r44 && !require(dependencyMap[3]).getStopPropagationFlag(a1)) {
do {
const r15 = r11[r44];
const r56 = r44;
if (r15 === a0) {
r5 = importDefault;
AT_TARGET = importDefault(dependencyMap[2]).AT_TARGET;
} else {
r5 = importDefault;
AT_TARGET = importDefault(dependencyMap[2]).CAPTURING_PHASE;
}
setEventPhase(a1, AT_TARGET);
invoke(r15, a1, r5(dependencyMap[2]).CAPTURING_PHASE);
const r72 = r56 - 1;
if (!(0 <= r72)) {
break;
}
stopPropagationFlag = require(dependencyMap[3]).getStopPropagationFlag(a1);
r44 = r72;
} while (!stopPropagationFlag);
}
for (const item of r11) {
if (getStopPropagationFlag(a1)) {
break;
}
if (!(!a1.bubbles && item !== a0)) {
const r100 = require(dependencyMap[3]);
if (item === a0) {
r104 = importDefault;
AT_TARGET2 = importDefault(dependencyMap[2]).AT_TARGET;
} else {
r104 = importDefault;
AT_TARGET2 = importDefault(dependencyMap[2]).BUBBLING_PHASE;
}
r100.setEventPhase(a1, AT_TARGET2);
invoke(item, a1, r104(dependencyMap[2]).BUBBLING_PHASE);
continue;
}
break;
}
setEventPhase(a1, Event2.NONE);
setCurrentTarget(a1, null);
setComposedPath(a1, []);
setEventDispatchFlag(a1, false);
setStopImmediatePropagationFlag(a1, false);
setStopPropagationFlag(a1, false);
};
invoke = function invoke(a0, a1, a2) {
let r31, r57;
const r6 = a2 === Event2.CAPTURING_PHASE;
setCurrentTarget(a1, a0);
if (enableNativeEventTargetEventDispatching()) {
const callback2 = a0[require(dependencyMap[4]).EVENT_TARGET_GET_DECLARATIVE_LISTENER_KEY](a1.type, r6);
const listenersForPhase2 = getListenersForPhase(a0, r6);
const r69 = listenersForPhase2 == null ? void 0 : listenersForPhase2.get(a1.type);
if (callback2 == null && r69 == null) {
return void 0;
}
const r72 = [];
if (callback2 != null) {
r72.push({
callback: callback2,
passive: false,
once: false,
removed: false
});
}
r57 = r72;
if (r69 != null) {
let r79 = r69.values()[Symbol.iterator]();
const next = r79.next;
while (true) {
const r82 = r79 === void 0 ? void 0 : (r31 = next.call(r79)).done ? r79 = void 0 : r31.value;
const r83 = r79;
r57 = r72;
if (r83 === void 0) {
break;
}
try {
r72.push(r82);
} catch (r86) {
if (r79 !== void 0 && typeof r79.return === "function") {
try {
r79.return();
} catch {}
}
throw r86;
}
}
}
} else {
const listenersForPhase = getListenersForPhase(a0, r6);
const r4 = listenersForPhase == null ? void 0 : listenersForPhase.get(a1.type);
if (r4 == null) {
return void 0;
}
r57 = Array.from(r4.values());
}
for (const item of r57) {
if (item.removed) {
continue;
}
if (item.once) {
a0.removeEventListener(a1.type, item.callback, r6);
}
if (item.passive) {
setInPassiveListenerFlag(a1, true);
}
const event = global.event;
global.event = a1;
const callback = item.callback;
try {
if (typeof callback === "function") {
callback.call(a0, a1);
} else if (typeof callback.handleEvent === "function") {
callback.handleEvent(a1);
}
} catch ($e) {
console.error($e);
}
if (item.passive) {
setInPassiveListenerFlag(a1, false);
}
global.event = event;
if (!getStopImmediatePropagationFlag(a1)) {
continue;
}
break;
}
};
getListenersForPhase = function getListenersForPhase(a0, a1) {
return a1 ? a0[c128_8] : a0[c128_9];
};
setEventDispatchFlag = function setEventDispatchFlag(a0, a1) {
a0[c128_11] = a1;
};
EventTarget = function EventTarget() {
_classCallCheck(this, EventTarget);
};
const r46 = _createClass(EventTarget, [{
key: "addEventListener",
value: function(a0, a1) {
let r14, r17, r32, once, passive;
let c23579_1, c23579_2;
let r12 = arguments[2];
if (r12 === void 0) {
r12 = {};
}
c23579_1 = void 0;
c23579_2 = void 0;
if (arguments.length < 2) {
throw new TypeError(`Failed to execute 'addEventListener' on 'EventTarget': 2 arguments required, but only ${arguments.length} present.`);
}
if (a1 != null) {
if (typeof a1 !== "function" && typeof a1 !== "object") {
throw new TypeError(`Failed to execute 'addEventListener' on 'EventTarget': parameter 2 is not of type 'Object'.`);
}
L15: {
L14: {
r14 = String(a0);
if (r12 != null) {
if (typeof r12 !== "object" && typeof r12 !== "function") {
break L14;
}
const r27 = Boolean(r12.capture);
const r13 = r12.passive != null && Boolean(r12.passive);
const r15 = Boolean(r12.once);
const signal = r12.signal;
r32 = signal;
once = r15;
passive = r13;
r17 = r27;
if (signal === void 0) {
break L15;
}
const r3 = signal instanceof AbortSignal;
r32 = signal;
once = r15;
passive = r13;
r17 = r27;
if (r3) {
break L15;
}
throw new TypeError("Failed to execute 'addEventListener' on 'EventTarget': Failed to read the 'signal' property from 'AddEventListenerOptions': Failed to convert value to 'AbortSignal'.");
}
}
r17 = Boolean(r12);
once = false;
r32 = null;
passive = false;
}
if (!r32?.aborted) {
const r44 = r17 ? this[c128_8] : this[c128_9];
let r47 = r44 == null ? void 0 : r44.get(r14);
if (r47 == null) {
let r51 = r44;
if (r51 == null) {
const map = new Map();
if (r17) {
this[c128_8] = map;
r51 = map;
} else {
this[c128_9] = map;
r51 = map;
}
}
const map2 = new Map();
r51.set(r14, map2);
r47 = map2;
} else if (r47.has(a1)) {
return void 0;
}
const r66 = {
callback: a1,
passive,
once,
removed: false
};
c23579_1 = r66;
r47.set(a1, r66);
c23579_2 = r47;
if (r32 != null) {
r32.addEventListener("abort", () => {
c23579_1.removed = true;
if (c23579_2.get(a1) === c23579_1) {
c23579_2.delete(a1);
}
}, {
once: true
});
}
}
}
}
}, {
key: "removeEventListener",
value: function removeEventListener(a0, a1, r4 = {}) {
if (arguments.length < 2) {
throw new TypeError(`Failed to execute 'removeEventListener' on 'EventTarget': 2 arguments required, but only ${arguments.length} present.`);
}
if (a1 != null) {
if (typeof a1 !== "function" && typeof a1 !== "object") {
throw new TypeError(`Failed to execute 'removeEventListener' on 'EventTarget': parameter 2 is not of type 'Object'.`);
}
const r15 = String(a0);
let r16 = r4;
if (typeof r16 !== "boolean") {
r16 = Boolean(r4.capture);
}
const r22 = r16 ? this[c128_8] : this[c128_9];
const r24 = r22 == null ? void 0 : r22.get(r15);
if (r24 != null) {
const r27 = r24.get(a1);
if (r27 != null) {
r27.removed = true;
r24.delete(a1);
}
}
}
}
}, {
key: "dispatchEvent",
value: function dispatchEvent(a0) {
if (a0 instanceof Event2) {
if (a0[c128_11]) {
throw new Error("Failed to execute 'dispatchEvent' on 'EventTarget': The event is already being dispatched.");
}
setIsTrusted(a0, false);
dispatch(this, a0);
return !a0.defaultPrevented;
}
throw new TypeError("Failed to execute 'dispatchEvent' on 'EventTarget': parameter 1 is not of type 'Event'.");
}
}, {
key: EVENT_TARGET_GET_DECLARATIVE_LISTENER_KEY,
value: function value(a0, a1) {
return null;
}
}, {
key: EVENT_TARGET_GET_THE_PARENT_KEY,
value: function value() {
return null;
}
}, {
key: INTERNAL_DISPATCH_METHOD_KEY,
value: function value(a0) {
dispatch(this, a0);
}
}]);
setPlatformObject(r46);
c128_8 = Symbol("capturingListeners");
c128_9 = Symbol("bubblingListeners");
c128_11 = Symbol("Event.dispatch");
export default r46;