decord/stable/source/modules/multi_account/setUserStatus.tsx
2026-10-06 22:12:49 +00:00

124 lines
4.7 KiB
TypeScript

// Module ID: 12218
// Function ID: 12219
// Name: setUserStatus
// Dependencies: [5, 6537, 5592, 1086, 4680, 1127, 12219, 2032, 1229, 4688, 1253, 2]
// Exports: default
// Module 12218 (setUserStatus)
import Constants from "Constants" /* 1086 */;
import _asyncToGenerator from "_asyncToGenerator" /* 5 */;
import LastMentionTimestampStore from "LastMentionTimestampStore" /* 6537 */;
import SelfPresenceStore from "SelfPresenceStore" /* 5592 */;
import size from "module_2" /* 2 */;
let closure_2, prev_status, statusCreatedAtMs;
let obj = function _setUserStatus() {
obj = _asyncToGenerator(async (next_status) => {
let c3 = 0;
let c4 = 0;
const iter = (async (arg0) => {
let c0;
let c2;
let closure_1;
let disableTracking;
let result;
let statusExpiresAtMs;
let tmp;
function getStatusUpdateAnnouncement(c0, arg1) {
obj = value(closure_1_2[4]);
const humanizeStatusResult = obj.humanizeStatus(c0);
if ("0" === arg1) {
const intl3 = tmp(tmp2[5]).intl;
const obj2 = { statusLabel: humanizeStatusResult };
return intl3.formatToPlainString(value(closure_1_2[5]).t.dO2aLi, obj2);
} else {
let formatToPlainStringResult;
const tmpResult = value(closure_1_2[6]);
const statusExpiryParts = tmpResult.getStatusExpiryParts(arg1);
const timeString = statusExpiryParts.timeString;
if ("today" === statusExpiryParts.kind) {
const intl2 = tmp(tmp2[5]).intl;
const obj3 = { statusLabel: humanizeStatusResult, timeString };
formatToPlainStringResult = intl2.formatToPlainString(tmp(tmp2[5]).t["r50t/S"], obj3);
} else {
const intl = tmp(tmp2[5]).intl;
const obj4 = { statusLabel: humanizeStatusResult, dateString: tmp6, timeString };
formatToPlainStringResult = intl.formatToPlainString(tmp(tmp2[5]).t["J+GJHv"], obj4);
}
return formatToPlainStringResult;
}
}
if (null == prev_status) {
prev_status = closure_130_5.getStatus();
}
let str = "0";
if (null != c3) {
const _Date = Date;
const _HermesInternal = HermesInternal;
str = "" + Date.now() + c3;
}
const PreloadedUserSettingsActionCreators = closure_130_0(closure_130_2[7]).PreloadedUserSettingsActionCreators;
await PreloadedUserSettingsActionCreators.updateAsync("status", async (statusCreatedAtMs) => {
const StringValue = value(closure_2[8]).StringValue;
obj = { value };
statusCreatedAtMs.status = StringValue.create(obj);
statusCreatedAtMs.statusExpiresAtMs = statusExpiresAtMs;
const tmp = value;
const tmp2 = closure_2;
if (prev_status === value) {
if (null != statusCreatedAtMs.statusCreatedAtMs) {
statusCreatedAtMs = statusCreatedAtMs.statusCreatedAtMs;
}
statusCreatedAtMs.statusCreatedAtMs = statusCreatedAtMs;
}
const UInt64Value = tmp(tmp2[8]).UInt64Value;
const obj2 = { value: "" + Date.now() };
statusCreatedAtMs = UInt64Value.create(obj2);
}, closure_130_0(closure_130_2[7]).UserSettingsDelay.INFREQUENT_USER_ACTION);
let closure_6 = getStatusUpdateAnnouncement(next_status, str);
const AccessibilityAnnouncer = closure_130_0(closure_130_2[9]).AccessibilityAnnouncer;
AccessibilityAnnouncer.announce(closure_6);
const tmp65 = disableTracking;
if (!tmp65) {
const tmp6 = closure_2;
obj = { next_status, prev_status };
const merged = Object.assign(closure_130_4.getGlobalStats());
let obj9 = obj;
if (null != c3) {
const obj8 = { expire_duration_minutes: result };
const merged1 = Object.assign(obj9);
result = null;
if (null != c3) {
result = c3 / 60000;
}
obj9 = obj8;
}
if (null != c2) {
obj9 = {};
const merged2 = Object.assign(obj9);
const merged3 = Object.assign(c2);
}
let obj4 = closure_130_1(closure_130_2[10]);
obj4.track(closure_130_6.USER_STATUS_UPDATED, obj9);
}
await "IconComponent";
closure_2 = tmp4;
prev_status = tmp;
({ nextStatus: c0, prevStatus: closure_1, analyticsContext: c2, durationMillis: c3, disableTracking } = value);
if (disableTracking === undefined) {
disableTracking = false;
}
return "Reflect";
})();
iter.next();
return iter;
});
return obj(...arguments);
};
const AnalyticEvents = Constants.AnalyticEvents;
let result = size.fileFinishedImporting("modules/multi_account/setUserStatus.tsx");
export default function setUserStatus() {
return obj(...arguments);
};