Files
discord-decomp/modules/changelog/ChangelogManager.tsx
T
2026-11-01 12:12:55 +02:00

176 lines
6.5 KiB
TypeScript

// Metro module 16144 (f16145).
import _slicedToArray from "../../_bundle/_slicedToArray";
import LocaleStore from "../user_settings/LocaleStore";
import ChangelogStore from "./ChangelogStore";
import AutomaticLifecycleManager from "../../lib/AutomaticLifecycleManager";
import ChangeLogActionCreators from "../../actions/ChangeLogActionCreators";
import { getClientVersionForChangelog } from "./getClientVersionForChangelog.native";
import Dispatcher from "../../Dispatcher";
import SnowflakeUtils from "../../utils/SnowflakeUtils";
import { openChangelog } from "./openChangelog.native";
function $mk118523($env) {
return function getLatestChangelogIdForVersion(a0, a1) {
let r8 = 0;
let r0 = null;
for (const item of Object.entries(a0)) {
const r33 = (0, _slicedToArray)(item, 2);
const r34 = r33[0];
const min_version = r33[1].min_version;
if (min_version <= a1 && min_version > r8) {
r8 = min_version;
r0 = r34;
}
}
return r0;
};
}
let c11565_7;
let env11565 = {};
class ChangelogManager extends AutomaticLifecycleManager {
constructor() {
let c22821_0;
super(...arguments);
const _this = this;
this.actions = {
POST_CONNECTION_OPEN: (a0) => _this.handleConnectionOpen(a0)
};
c22821_0 = void 0;
c22821_0 = async () => {
let c30965_0, c30965_1, c30965_2;
let c30965_3 = 0;
const r14 = void 0;
const r13 = env11565;
L33: {
L32: {
L31: {
L30: {
L29: {
L28: {
L16: {
try {
let env31789;
c30965_1 = r14;
const r33 = env31789 = {
$parent: r13
};
c30965_0 = r33;
env31789[0] = void 0;
env31789[1] = void 0;
env31789[2] = void 0;
env31789[3] = void 0;
env31789[4] = void 0;
env31789[5] = void 0;
c30965_3 = 1;
env31789[0] = await ChangeLogActionCreators.fetchChangelogConfig();
env31789[1] = env31789[0].body;
const r20 = env31789[1];
const clientVersionForChangelog = getClientVersionForChangelog();
env31789[2] = $mk118523(env11565)(r20, clientVersionForChangelog);
Dispatcher.dispatch({
type: "CHANGE_LOG_SET_CONFIG",
config: env31789[0].body,
latestChangelogId: env31789[2]
});
if (env31789[2] == null) {
c30965_3 = 0;
Dispatcher.dispatch({
type: "CHANGE_LOG_RESOLVED"
});
break L33;
}
if (env31789[1][env31789[2]].show_on_startup !== true) {
c30965_3 = 0;
Dispatcher.dispatch({
type: "CHANGE_LOG_RESOLVED"
});
break L32;
}
env31789[3] = ChangelogStore.lastSeenChangelogId();
env31789[4] = ChangelogStore.lastSeenChangelogDate();
if (env31789[3] != null) {
if (SnowflakeUtils.compare(env31789[2], env31789[3]) <= 0) {
c30965_3 = 0;
Dispatcher.dispatch({
type: "CHANGE_LOG_RESOLVED"
});
break L16;
}
}
env31789[5] = await ChangeLogActionCreators.fetchChangelog(env31789[2], LocaleStore.locale);
if (env31789[5] == null) {
c30965_3 = 0;
Dispatcher.dispatch({
type: "CHANGE_LOG_RESOLVED"
});
break L31;
}
if (env31789[4] != null && ChangelogStore.lastSeenChangelogDate() != null) {
if (ChangelogStore.isLocked()) {
c30965_3 = 0;
Dispatcher.dispatch({
type: "CHANGE_LOG_RESOLVED"
});
break L29;
}
if (new Date(env31789[5].date) > new Date(env31789[4])) {
openChangelog();
}
c30965_3 = 0;
Dispatcher.dispatch({
type: "CHANGE_LOG_RESOLVED"
});
break L28;
}
ChangeLogActionCreators.markChangelogAsSeen(env31789[2], env31789[5].date);
c30965_3 = 0;
Dispatcher.dispatch({
type: "CHANGE_LOG_RESOLVED"
});
break L30;
} catch ($e) {
const r31 = $e;
let r7 = r31;
c30965_2 = r31;
if (c30965_3 !== 0) {
while (true) {
try {
const r261 = c30965_2;
c30965_3 = 0;
Dispatcher.dispatch({
type: "CHANGE_LOG_RESOLVED"
});
throw r261;
} catch (r258) {
r7 = r258;
c30965_2 = r258;
if (c30965_3 === 0) {
break;
}
}
}
}
throw r7;
}
}
return void 0;
}
return void 0;
}
return void 0;
}
return void 0;
}
return void 0;
}
return void 0;
}
};
this.handleConnectionOpen = function() {
return c22821_0.apply(this, arguments);
};
}
}
c11565_7 = ChangelogManager;
const r27 = new ChangelogManager();
export default r27;