Files
discord-decomp/sources/modules/guild/markGuildsAsRead.tsx
T
2026-07-27 16:20:00 +03:00

207 lines
8.2 KiB
TypeScript

/* Metro module 12686; source: modules/guild/markGuildsAsRead.tsx; dependencies: [6603, 5071, 1935, 4605, 661, 4865, 22, 21, 683, 5097, 2] */
function _fun97222(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#97222, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12876:6, offset: 0x02177bc9, size: 232 bytes, params: 8, frame: 19
const env0_0 = require;
const _arrayLikeToArray_97225 = function(a0, a1) {
var r0;
var r1;
var r2;
var value3;
var length;
var value5;
var value = undefined;
var value2 = value == null;
reducibleJoin2: while (true) {
if (value2) {
r0 = value2;
break reducibleJoin2;
}
value3 = value > a0.length;
r0 = value3;
break reducibleJoin2;
}
reducibleJoin4: while (true) {
if (r0) {
length = a0.length;
r1 = length;
break reducibleJoin4;
}
r1 = value;
break reducibleJoin4;
}
value = (0, global.Array)(r1);
var value4 = 0;
if (value4 < r1) {
r2 = value4;
reducibleLoop5: while (true) {
value[r2] = a0[r2];
value5 = typeof r2 === 'bigint' ? r2 + 1n : +r2 + 1;
if (value5 < r1) {
r2 = value5;
continue reducibleLoop5;
}
break reducibleLoop5;
}
}
return value;
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const guildOnboardingPromptsStore = importDefault(6603) /* metro dependency 6603: GuildOnboardingPromptsStore */;
const activeJoinedThreadsStore = importDefault(5071) /* metro dependency 5071: ActiveJoinedThreadsStore */;
const guildChannelStore = importDefault(1935) /* metro dependency 1935: GuildChannelStore */;
const readStateStore = importDefault(4605) /* metro dependency 4605: ReadStateStore */;
const env0_7 = (require(661) /* metro dependency 661: Constants */).AnalyticEvents;
const env0_8 = (require(4865) /* metro dependency 4865: ReadStateConstants */).ReadStateTypes;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild/markGuildsAsRead.tsx');
exports.default = markGuildsAsRead;
}
function _createForOfIteratorHelperLoose_97223(a0, a1) { // fn#97223, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12876:192, offset: 0x02177cb1, size: 372 bytes, params: 3, frame: 20
var r6;
var r9;
var r5;
var value3;
var regexp;
const env0_0 = a0;
const Symbol = global.Symbol;
let value = typeof Symbol !== 'undefined';
let r1 = value && a0[global.Symbol.iterator];
r1 = !r1 ? a0['@@iterator'] : r1;
if (r1) {
value = r1.call(a0);
return value.next.bind(value);
}
const Array = global.Array;
if (Array.isArray(a0)) {
if (r1) {
}
return _fun97224;
}
value = undefined;
if (a0) {
if (typeof a0 === 'string') {
value = _arrayLikeToArray_97225(a0, value);
r5 = value;
} else {
value3 = ({}).toString.call(a0).slice(8, -1);
r6 = value3 === 'Object' && a0.constructor;
r9 = r6 ? a0.constructor.name : value3;
if (r9 === 'Map') {
r6 = global.Array.from(a0);
} else if (r9 === 'Set') {
r6 = global.Array.from(a0);
} else if (r9 === 'Arguments') {
value = _arrayLikeToArray_97225(a0, value);
r6 = value;
} else {
regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', '');
if (regexp.test(r9)) {
value = _arrayLikeToArray_97225(a0, value);
r6 = value;
} else {
r6 = value;
}
}
r5 = r6;
}
} else {
r5 = value;
}
if (r5) {
if (r5) {
}
return _fun97224;
}
const TypeError = global.TypeError;
throw new TypeError('Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');
}
function markGuildsAsRead(a0, a1, a2) { // fn#97226, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12876:1183, offset: 0x02177e25, size: 170 bytes, params: 4, frame: 18
const value3 = (importDefault(22) /* metro dependency 22 */).flatMap(a0, _fun97227).map(function(a0) {
var object = {channelId: a0};
object.readStateType = ReadStateTypes.CHANNEL;
object.messageId = ReadStateStore.lastMessageId(a0);
return object;
});
a0.forEach(_fun97229);
const defaultImport2 = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
const track = defaultImport2.track;
const MARK_AS_READ = AnalyticEvents.MARK_AS_READ;
Reflect.apply(track, defaultImport2, [MARK_AS_READ, {source: a1, type: 'guild'}]);
return (require(5097) /* metro dependency 5097: ReadStateActionCreators */).bulkAck(value3, a2);
}
function _fun97227(a0) { // fn#97227, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12876:1241, offset: 0x02177ecf, size: 165 bytes, params: 2, frame: 23
var r2;
var r1;
var r8;
var value6;
var property;
var properties;
var properties2;
var properties3;
var propertyName;
var propertyName2;
var value7;
let value = environment.__proto__;
const selectableChannelIds = GuildChannelStore.getSelectableChannelIds(a0);
const vocalChannelIds = GuildChannelStore.getVocalChannelIds(a0);
const items2 = [];
arraySpread(items2, vocalChannelIds, arraySpread(items2, selectableChannelIds, 0, undefined), undefined);
const activeJoinedThreadsForGuild = ActiveJoinedThreadsStore.getActiveJoinedThreadsForGuild(a0);
value = _createForOfIteratorHelperLoose_97223(selectableChannelIds);
const value5 = value();
let done = value5.done;
if (!done) {
r2 = value5;
while (true) {
value6 = r2.value;
property = activeJoinedThreadsForGuild[value6];
r1 = property ?? ({});
properties = Object.keys(r1);
properties2 = 0;
properties3 = properties.length;
if (properties === undefined) {
continue;
}
for (r8 = properties2; true; r8 = propertyName2) {
propertyName = properties[r8];
propertyName2 = r8 + 1;
if (propertyName === undefined) {
break;
}
items2.push(propertyName);
}
value7 = value();
done = value7.done;
if (done) {
break;
}
r2 = value7;
continue;
}
}
return items2;
}
function _fun97229(a0) { // fn#97229, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12876:1585, offset: 0x02177fa4, size: 171 bytes, params: 2, frame: 22
const binding = env0_0;
let push = binding.push;
let object2 = {};
object2.channelId = (importDefault(21) /* metro dependency 21: SnowflakeUtils */).cast(a0);
let GUILD_EVENT = ReadStateTypes.GUILD_EVENT;
object2.readStateType = GUILD_EVENT;
const lastMessageId = ReadStateStore.lastMessageId;
GUILD_EVENT = ReadStateTypes.GUILD_EVENT;
object2.messageId = Reflect.apply(lastMessageId, ReadStateStore, [a0, GUILD_EVENT]);
Reflect.apply(push, binding, [object2]);
push = binding.push;
object2 = {};
object2.channelId = (importDefault(21) /* metro dependency 21: SnowflakeUtils */).cast(a0);
const GUILD_ONBOARDING_QUESTION = ReadStateTypes.GUILD_ONBOARDING_QUESTION;
object2.readStateType = GUILD_ONBOARDING_QUESTION;
object2.messageId = GuildOnboardingPromptsStore.ackIdForGuild(a0);
Reflect.apply(push, binding, [object2]);
}