decord/source/modules/guild_sidebar/native/VoiceUsers.tsx

121 lines
5.3 KiB
TypeScript
Raw Normal View History

2026-07-28 08:39:19 +00:00
// Module ID: 15076
// Function ID: 114755
2026-07-20 16:05:17 +00:00
// Name: AudienceItem
2026-07-28 08:39:19 +00:00
// Dependencies: [31, 27, 1918, 33, 4165, 689, 10264, 8801, 566, 15077, 9889, 1212, 11596, 4161, 15081, 2]
2026-07-20 16:05:17 +00:00
// Exports: default, getAudienceItemHeight
2026-07-28 08:39:19 +00:00
// Module 15076 (AudienceItem)
2026-07-23 10:11:24 +00:00
import { View } from "get ActivityIndicator";
import _isNativeReflectConstruct from "_isNativeReflectConstruct";
import jsxProd from "jsxProd";
import _createForOfIteratorHelperLoose from "_createForOfIteratorHelperLoose";
import importAllResult from "result";
let closure_5;
let closure_6;
const require = arg1;
2026-07-20 16:05:17 +00:00
function AudienceItem(arg0) {
let audienceCount;
let collapsed;
({ audienceCount, collapsed } = arg0);
2026-07-28 08:39:19 +00:00
const tmp = callback2(importDefault(8801)());
2026-07-20 16:05:17 +00:00
let formatToPlainStringResult = audienceCount;
if (!collapsed) {
2026-07-23 10:11:24 +00:00
const intl = require(1212) /* getSystemLocale */.intl;
2026-07-20 16:05:17 +00:00
let obj = { count: audienceCount };
2026-07-23 10:11:24 +00:00
formatToPlainStringResult = intl.formatToPlainString(require(1212) /* getSystemLocale */.t["+v2pN2"], obj);
2026-07-20 16:05:17 +00:00
}
obj = { style: collapsed ? tmp.listenersCollapsed : tmp.listeners };
2026-07-28 08:39:19 +00:00
obj = { style: tmp.listenersIconWrapper, children: callback(require(11596) /* HeadphonesIcon */.HeadphonesIcon, obj1) };
2026-07-23 10:11:24 +00:00
obj1 = { color: "redesign-channel-name-muted-text", size: "custom", style: tmp.headphonesIcon };
2026-07-20 16:05:17 +00:00
const items = [callback(View, obj), ];
2026-07-23 10:11:24 +00:00
const obj2 = { style: tmp.listenersText, variant: c7, color: "redesign-channel-name-muted-text", children: formatToPlainStringResult };
2026-07-28 08:39:19 +00:00
items[1] = callback(require(4161) /* Text */.Text, obj2);
2026-07-20 16:05:17 +00:00
obj.children = items;
return closure_6(View, obj);
}
2026-07-23 10:11:24 +00:00
({ jsx: closure_5, jsxs: closure_6 } = jsxProd);
let c7 = "text-sm/medium";
let closure_8 = _createForOfIteratorHelperLoose.createStyles((arg0) => {
const colors = importDefault(689).colors;
2026-07-20 16:05:17 +00:00
const tmp = arg0 ? colors.MOBILE_EXPRESSION_PICKER_BACKGROUND_DEFAULT : colors.BACKGROUND_BASE_LOWEST;
2026-07-23 10:11:24 +00:00
const round = importDefault(689).radii.round;
obj = { listeners: { display: "flex", flexDirection: "row", alignItems: "center", padding: 4, marginTop: 4, marginLeft: -8 }, listenersCollapsed: obj };
obj = { flexDirection: "row", alignItems: "center", backgroundColor: tmp, borderRadius: round, marginLeft: -16, marginTop: 4, paddingLeft: 2, paddingRight: 6 };
obj = { alignItems: "center", justifyContent: "center", backgroundColor: tmp, marginRight: 8, marginLeft: 4, borderRadius: round };
2026-07-28 08:39:19 +00:00
const merged = Object.assign(require(10264) /* getLayoutStyles */.makeSizeStyle(20));
2026-07-20 16:05:17 +00:00
obj.listenersIconWrapper = obj;
obj.listenersText = { marginRight: 4 };
obj.userCollapsedOverlap = { marginLeft: -20 };
2026-07-28 08:39:19 +00:00
const obj4 = require(10264) /* getLayoutStyles */;
obj.headphonesIcon = require(10264) /* getLayoutStyles */.makeSizeStyle(14);
2026-07-20 16:05:17 +00:00
return obj;
});
2026-07-23 10:11:24 +00:00
let closure_9 = require("result").memo((voiceState) => {
2026-07-20 16:05:17 +00:00
let member;
let voiceState2;
voiceState = voiceState.voiceState;
const user = voiceState.user;
({ member, voiceState: voiceState2 } = voiceState);
const channel = voiceState.channel;
const collapsed = voiceState.collapsed;
2026-07-23 10:11:24 +00:00
let obj = user(566);
const items = [_isNativeReflectConstruct];
2026-07-20 16:05:17 +00:00
const items1 = [channel.guild_id, user.id];
2026-07-23 10:11:24 +00:00
const stateFromStoresObject = obj.useStateFromStoresObject(items, () => ({ storeMember: outer1_4.getMember(channel.guild_id, user.id), isGuest: outer1_4.isGuestOrLurker(channel.guild_id, user.id) }), items1);
2026-07-20 16:05:17 +00:00
let storeMember = stateFromStoresObject.storeMember;
obj = {};
let userCollapsedOverlap = null;
if (collapsed) {
userCollapsedOverlap = null;
if (!voiceState.isFirst) {
userCollapsedOverlap = tmp.userCollapsedOverlap;
}
}
obj.style = userCollapsedOverlap;
obj = { user };
2026-07-28 08:39:19 +00:00
tmp = callback2(channel(8801)());
2026-07-20 16:05:17 +00:00
const tmp3 = closure_5;
const tmp4 = View;
const tmp6 = closure_5;
if (null != member) {
storeMember = member;
}
obj.member = storeMember;
({ mute: obj3.mute, deaf: obj3.deaf, selfVideo: obj3.selfVideo, selfMute: obj3.selfMute, selfDeaf: obj3.selfDeaf, suppress: obj3.suppress } = voiceState2);
obj.collapsed = collapsed;
obj.sessionId = voiceState2.sessionId;
obj.channel = channel;
obj.isGuest = stateFromStoresObject.isGuest;
2026-07-28 08:39:19 +00:00
obj.children = tmp6(channel(15077), obj, user.id);
2026-07-20 16:05:17 +00:00
return tmp3(tmp4, obj);
});
2026-07-23 10:11:24 +00:00
const result = require("_isNativeReflectConstruct").fileFinishedImporting("modules/guild_sidebar/native/VoiceUsers.tsx");
2026-07-20 16:05:17 +00:00
export default function VoiceUsers(collapsed) {
let audienceCount;
2026-07-23 10:11:24 +00:00
let importDefault;
2026-07-20 16:05:17 +00:00
let voiceStates;
collapsed = collapsed.collapsed;
2026-07-23 10:11:24 +00:00
({ channel: importDefault, voiceStates, audienceCount } = collapsed);
2026-07-20 16:05:17 +00:00
let tmp = null;
if (0 !== voiceStates.length) {
let obj = { collapsed };
2026-07-23 10:11:24 +00:00
const items = [voiceStates.map((user) => outer1_5(outer1_9, { voiceState: user, channel: closure_1, collapsed, isFirst: 0 === arg1 }, "voice-user-item-" + user.user.id + "-" + user.voiceState.sessionId)), ];
2026-07-20 16:05:17 +00:00
let tmp6 = null != audienceCount && audienceCount > 0;
if (tmp6) {
obj = { audienceCount, collapsed };
tmp6 = callback(AudienceItem, obj);
}
items[1] = tmp6;
obj.children = items;
2026-07-28 08:39:19 +00:00
tmp = closure_6(importDefault(15081), obj);
2026-07-20 16:05:17 +00:00
const tmp2 = closure_6;
2026-07-28 08:39:19 +00:00
const tmp5 = importDefault(15081);
2026-07-20 16:05:17 +00:00
}
return tmp;
};
export const getAudienceItemHeight = function getAudienceItemHeight(fontScale) {
2026-07-28 08:39:19 +00:00
return 8 + Math.max(20, require(9889) /* scaleLineHeight */.scaleTextLineHeight(c7, fontScale));
2026-07-20 16:05:17 +00:00
};