decord/alpha/source/modules/custom_status/CustomStatusManager.tsx

159 lines
6.1 KiB
TypeScript
Raw Normal View History

// Module ID: 17089
// Function ID: 17090
// Name: CustomStatusManager
// Dependencies: [5586, 1074, 2039, 6534, 2020, 9540, 2025, 1217, 9539, 2]
2026-07-20 16:05:17 +00:00
// Module 17089 (CustomStatusManager)
import setUserStatusDefault from "setUserStatus" /* 9540 */;
import SelfPresenceStore from "SelfPresenceStore" /* 5586 */;
import AutomaticLifecycleManager from "AutomaticLifecycleManager" /* 6534 */;
2026-07-23 10:11:24 +00:00
let require = fn;
const Constants = fn(1074);
({ AnalyticsObjects: closure_4, StatusTypes: hasOwnProperty } = Constants);
const timeout = new fn(2039).Timeout();
const timeout1 = new fn(2039).Timeout();
const timeout2 = new fn(2039).Timeout();
const prototype = function CustomStatusManager() {
2026-07-29 08:29:29 +00:00
const applyArgumentsResult = HermesBuiltin.applyArguments(new.target, new.target);
2026-08-24 06:08:38 +00:00
require = applyArgumentsResult;
2026-07-29 08:29:29 +00:00
applyArgumentsResult.actions = {
POST_CONNECTION_OPEN() {
return applyArgumentsResult.handlePostConnectionOpen();
},
USER_SETTINGS_PROTO_UPDATE() {
return applyArgumentsResult.handleUserSettingsProtoUpdate();
}
};
applyArgumentsResult.handlePostConnectionOpen = function handlePostConnectionOpen() {
applyArgumentsResult.handleCommonUpdates();
};
applyArgumentsResult.handleUserSettingsProtoUpdate = function handleUserSettingsProtoUpdate() {
applyArgumentsResult.handleCommonUpdates();
};
applyArgumentsResult.handleCommonUpdates = function handleCommonUpdates() {
const result = applyArgumentsResult.manageExpiringCustomStatus();
applyArgumentsResult.manageExpiringStatus();
const result1 = applyArgumentsResult.lazilyMigrateStatusCreatedAt();
const result2 = applyArgumentsResult.manageExpiringFocusMode();
};
applyArgumentsResult.manageExpiringCustomStatus = function manageExpiringCustomStatus() {
let CustomStatusSetting = applyArgumentsResult(2020).CustomStatusSetting;
2026-07-29 08:29:29 +00:00
const setting = CustomStatusSetting.getSetting();
if (null == setting) {
timeout2.stop();
2026-07-29 08:29:29 +00:00
} else {
if (null != setting.expiresAtMs) {
if ("0" !== setting.expiresAtMs) {
const _Date = Date;
const _Number = Number;
const date = new Date(Number(setting.expiresAtMs));
const _Date2 = Date;
const time = date.getTime();
const date1 = new Date();
const diff = time - date1.getTime();
if (diff > 0) {
timeout2.start(diff, () => {
const CustomStatusSetting = closure_1_0(dependencyMap[4]).CustomStatusSetting;
2026-07-29 08:29:29 +00:00
CustomStatusSetting.updateSetting(undefined);
}, true);
} else {
const CustomStatusSetting2 = applyArgumentsResult(2020).CustomStatusSetting;
2026-07-29 08:29:29 +00:00
CustomStatusSetting2.updateSetting(undefined);
timeout2.stop();
2026-07-29 08:29:29 +00:00
}
}
}
if (null != timeout2) {
2026-07-29 08:29:29 +00:00
obj.stop();
}
obj = timeout2;
2026-07-29 08:29:29 +00:00
}
};
applyArgumentsResult.manageExpiringStatus = function manageExpiringStatus() {
const StatusExpiresAtSetting = applyArgumentsResult(2020).StatusExpiresAtSetting;
2026-07-29 08:29:29 +00:00
const setting = StatusExpiresAtSetting.getSetting();
if (null != setting) {
if ("0" !== setting) {
if (SelfPresenceStore.getStatus() !== constants2.ONLINE) {
2026-07-29 08:29:29 +00:00
const _Date = Date;
const _Number = Number;
const date = new Date(Number(setting));
const _Date2 = Date;
const time = date.getTime();
const date1 = new Date();
const diff = time - date1.getTime();
if (diff > 0) {
timeout.start(diff, () => {
const obj = { nextStatus: constants2.ONLINE, analyticsContext: null };
const obj2 = { location: { object: constants.CUSTOM_STATUS_MANAGER } };
obj.analyticsContext = obj2;
closure_1_1(dependencyMap[5])(obj);
2026-07-29 08:29:29 +00:00
}, true);
} else {
let obj2 = { nextStatus: tmp4.ONLINE, analyticsContext: null };
const obj3 = { location: null };
const obj4 = { object: constants.CUSTOM_STATUS_MANAGER };
obj3.location = obj4;
obj2.analyticsContext = obj3;
setUserStatusDefault(obj2);
timeout.stop();
2026-07-29 08:29:29 +00:00
}
}
}
}
if (null != timeout) {
timeout.stop();
2026-07-29 08:29:29 +00:00
}
};
applyArgumentsResult.lazilyMigrateStatusCreatedAt = function lazilyMigrateStatusCreatedAt() {
let tmp = SelfPresenceStore.getStatus() !== constants2.ONLINE;
2026-07-29 08:29:29 +00:00
if (tmp) {
const StatusCreatedAtSetting = applyArgumentsResult(2020).StatusCreatedAtSetting;
2026-07-29 08:29:29 +00:00
tmp = null == StatusCreatedAtSetting.getSetting();
}
if (tmp) {
const PreloadedUserSettingsActionCreators = applyArgumentsResult(2025).PreloadedUserSettingsActionCreators;
PreloadedUserSettingsActionCreators.updateAsync("status", async (arg0) => {
const UInt64Value = closure_1_0(dependencyMap[7]).UInt64Value;
2026-07-29 08:29:29 +00:00
arg0.statusCreatedAtMs = UInt64Value.create({ value: "" + Date.now() });
}, applyArgumentsResult(2025).UserSettingsDelay.INFREQUENT_USER_ACTION);
2026-07-29 08:29:29 +00:00
}
};
applyArgumentsResult.manageExpiringFocusMode = function manageExpiringFocusMode() {
const FocusModeExpiresAtSetting = applyArgumentsResult(2020).FocusModeExpiresAtSetting;
2026-07-29 08:29:29 +00:00
const setting = FocusModeExpiresAtSetting.getSetting();
if (null != setting) {
if ("0" !== setting) {
const _Date = Date;
const _Number = Number;
const date = new Date(Number(setting));
const _Date2 = Date;
const time = date.getTime();
const date1 = new Date();
const diff = time - date1.getTime();
if (diff > 0) {
timeout1.start(diff, () => {
closure_1_0(dependencyMap[8]).setFocusMode(false);
2026-07-29 08:29:29 +00:00
}, true);
} else {
applyArgumentsResult(9539).setFocusMode(false);
timeout1.stop();
const tmpResult = applyArgumentsResult(9539);
2026-07-29 08:29:29 +00:00
}
}
}
if (null != timeout1) {
timeout1.stop();
2026-07-29 08:29:29 +00:00
}
};
return applyArgumentsResult;
}.prototype;
class prototype extends tmp6 {
2026-07-20 16:05:17 +00:00
}
const prototype1 = new prototype();
const size = fn(2);
let result = size.fileFinishedImporting("modules/custom_status/CustomStatusManager.tsx");
2026-07-20 16:05:17 +00:00
export default prototype1;