108 lines
3.4 KiB
TypeScript
108 lines
3.4 KiB
TypeScript
// Metro module 10256 (f10257).
|
|
import LastMentionTimestampStore from "../notifications/LastMentionTimestampStore";
|
|
import SelfPresenceStore from "../../stores/SelfPresenceStore";
|
|
import { AnalyticEvents } from "../../Constants";
|
|
import { humanizeStatus } from "../../utils/UserUtils";
|
|
import { intl, t } from "../../intl/index.native";
|
|
import { getStatusExpiryParts } from "./StatusUtils";
|
|
import { UserSettingsDelay, PreloadedUserSettingsActionCreators } from "../user_settings/UserSettingsProtoActionCreators";
|
|
import { StringValue, UInt64Value } from "../../_bundle/Module1337";
|
|
import { AccessibilityAnnouncer } from "../../_bundle/Module4004";
|
|
import AnalyticsUtils from "../../utils/AnalyticsUtils";
|
|
function $mk115639($env) {
|
|
return (a0) => {
|
|
const r5 = $env;
|
|
const value = r5[0];
|
|
a0.status = StringValue.create({
|
|
value
|
|
});
|
|
a0.statusExpiresAtMs = r5[5];
|
|
a0.statusCreatedAtMs = r5[1] === value && a0.statusCreatedAtMs != null ? a0.statusCreatedAtMs : UInt64Value.create({
|
|
value: `${Date.now()}`
|
|
});
|
|
};
|
|
}
|
|
function $mk115640($env) {
|
|
return function getStatusUpdateAnnouncement(a0, a1) {
|
|
const statusLabel = humanizeStatus(a0);
|
|
if (a1 === "0") {
|
|
return intl.formatToPlainString(t.dO2aLi, {
|
|
statusLabel
|
|
});
|
|
}
|
|
const statusExpiryParts = getStatusExpiryParts(a1);
|
|
const { kind, dateString, timeString } = statusExpiryParts;
|
|
return kind === "today" ? intl.formatToPlainString(t["r50t/S"], {
|
|
statusLabel,
|
|
timeString
|
|
}) : intl.formatToPlainString(t["J+GJHv"], {
|
|
statusLabel,
|
|
dateString,
|
|
timeString
|
|
});
|
|
};
|
|
}
|
|
let env6845 = {};
|
|
export default async function setUserStatus(c26641_0) {
|
|
let env30207;
|
|
const r27 = env6845;
|
|
let c26641_2 = r27;
|
|
const r10 = env30207 = {
|
|
$parent: r27
|
|
};
|
|
let c26641_1 = r10;
|
|
env30207[0] = void 0;
|
|
env30207[1] = void 0;
|
|
env30207[2] = void 0;
|
|
env30207[3] = void 0;
|
|
env30207[4] = void 0;
|
|
env30207[0] = c26641_0.nextStatus;
|
|
env30207[1] = c26641_0.prevStatus;
|
|
env30207[2] = c26641_0.analyticsContext;
|
|
env30207[3] = c26641_0.durationMillis;
|
|
const disableTracking = c26641_0.disableTracking;
|
|
if (disableTracking !== void 0) {
|
|
env30207[4] = disableTracking;
|
|
env30207[5] = void 0;
|
|
env30207[6] = void 0;
|
|
env30207[7] = void 0;
|
|
} else {
|
|
env30207[4] = false;
|
|
env30207[5] = void 0;
|
|
env30207[6] = void 0;
|
|
env30207[7] = void 0;
|
|
}
|
|
await void 0;
|
|
if (env30207[1] == null) {
|
|
env30207[1] = SelfPresenceStore.getStatus();
|
|
}
|
|
const r54 = env30207[3] != null ? `${Date.now() + env30207[3]}` : "0";
|
|
env30207[5] = r54;
|
|
const INFREQUENT_USER_ACTION = UserSettingsDelay.INFREQUENT_USER_ACTION;
|
|
await PreloadedUserSettingsActionCreators.updateAsync("status", $mk115639(c26641_1), INFREQUENT_USER_ACTION);
|
|
const r102 = env30207[0];
|
|
const r103 = env30207[5];
|
|
env30207[6] = $mk115640(env6845)(r102, r103);
|
|
AccessibilityAnnouncer.announce(env30207[6]);
|
|
if (!env30207[4]) {
|
|
env30207[7] = {
|
|
next_status: env30207[0],
|
|
prev_status: env30207[1],
|
|
...LastMentionTimestampStore.getGlobalStats()
|
|
};
|
|
if (env30207[3] != null) {
|
|
env30207[7] = {
|
|
...env30207[7],
|
|
expire_duration_minutes: env30207[3] != null ? env30207[3] / 60000 : null
|
|
};
|
|
}
|
|
if (env30207[2] != null) {
|
|
env30207[7] = {
|
|
...env30207[7],
|
|
...env30207[2]
|
|
};
|
|
}
|
|
AnalyticsUtils.track(AnalyticEvents.USER_STATUS_UPDATED, env30207[7]);
|
|
}
|
|
};
|