decord/source/modules/multi_account/MultiAccountManager.tsx
2026-08-12 06:57:52 +00:00

65 lines
2.3 KiB
TypeScript

// Module ID: 16573
// Function ID: 16574
// Name: _initialize
// Dependencies: [1922, 13046, 5300, 709, 12966, 2]
// Module 16573 (_initialize)
import mergeGuildAvatar from "mergeGuildAvatar";
import initialize from "initialize";
import "initialize";
let require = arg1;
class MultiAccountManager extends tmp2 {
constructor() {
applyArgumentsResult = HermesBuiltin.applyArguments(new.target, new.target);
closure_0 = applyArgumentsResult;
applyArgumentsResult.actions = {
LOGOUT(arg0) {
return applyArgumentsResult.handleLogout(arg0);
},
MULTI_ACCOUNT_SWITCH_START(targetUserId) {
return applyArgumentsResult.handleMultiAccountSwitchStart(targetUserId);
}
};
applyArgumentsResult.handleConnectionOpen = function handleConnectionOpen() {
let switchResult = outer1_4.getSwitchResult();
if (null != switchResult) {
const currentUser = outer1_3.getCurrentUser();
if (null != currentUser) {
let obj = closure_0;
if (switchResult.success) {
switchResult = obj.onSwitchSuccess(currentUser, switchResult.navigateHome);
let obj2 = obj;
} else {
obj.onSwitchError(currentUser);
obj2 = obj;
}
obj = applyArgumentsResult(outer1_2[4]);
const result = obj.setAccountSwitchUserId(null);
obj2.onSwitchComplete();
}
}
};
return applyArgumentsResult;
}
}
const prototype = MultiAccountManager.prototype;
prototype["_initialize"] = function _initialize() {
const subscription = importDefault(709).subscribe("CONNECTION_OPEN", this.handleConnectionOpen);
this.handleConnectionOpen();
};
prototype["_terminate"] = function _terminate() {
importDefault(709).unsubscribe("CONNECTION_OPEN", this.handleConnectionOpen);
};
prototype["handleLogout"] = function handleLogout(isSwitchingAccount) {
if (isSwitchingAccount.isSwitchingAccount) {
const self = this;
this.onSwitchStart();
}
};
prototype["handleMultiAccountSwitchStart"] = function handleMultiAccountSwitchStart(targetUserId) {
const result = require(12966) /* noop */.setAccountSwitchUserId(targetUserId.targetUserId);
};
let result = require("initialize").fileFinishedImporting("modules/multi_account/MultiAccountManager.tsx");
export default MultiAccountManager;