Initial commit

This commit is contained in:
janisslsm committed 2026-07-27 16:20:00 +03:00
commit af3b49f756
16065 files changed
+2938410

No files matched your search

@@ -0,0 +1,388 @@
/* Metro module 11357; source: modules/opt_in_channels/native/ChannelBrowser.tsx; dependencies: [57, 31, 27, 5096, 5098, 1935, 1867, 4864, 661, 6233, 1376, 33, 4501, 697, 1357, 3860, 5463, 11358, 566, 11360, 3968, 1365, 11356, 6984, 8416, 6239, 5278, 1244, 6988, 5475, 11362, 4573, 4805, 3874, 6231, 7974, 6647, 8950, 6242, 1305, 6622, 2] */
function _fun86995(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#86995, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11543:6, offset: 0x01faaa63, size: 981 bytes, params: 8, frame: 25
var object2;
const env0_0 = require;
const keyExtractor_86996 = function({section, row}) {
return '' + section + '-' + row;
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const value = importAll(31) /* metro dependency 31 */;
const env0_5 = (require(27) /* metro dependency 27 */).View;
const newChannelsStore = importDefault(5096) /* metro dependency 5096: NewChannelsStore */;
const guildCategoryStore = importDefault(5098) /* metro dependency 5098: GuildCategoryStore */;
const guildChannelStore = importDefault(1935) /* metro dependency 1935: GuildChannelStore */;
const guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */;
const userGuildSettingsStore = importDefault(4864) /* metro dependency 4864: UserGuildSettingsStore */;
const Fonts = (require(661) /* metro dependency 661: Constants */).Fonts;
const env0_11 = (require(6233) /* metro dependency 6233: TableRowConstants */).getTableDividerWidth;
const env0_12 = (require(1376) /* metro dependency 1376: DismissibleContentConstants */).ContentDismissActionType;
const value2 = require(33) /* metro dependency 33 */;
const env0_13 = value2.jsx;
const env0_14 = value2.jsxs;
const env0_15 = value2.Fragment;
const createStylesModule = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = createStylesModule.createStyles;
object2 = {};
object2.container = {flex: 1};
const object5 = {};
const PX_12 = (importDefault(697) /* metro dependency 697: native */).space.PX_12;
object5.marginTop = PX_12;
let PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object5.marginHorizontal = PX_16;
object2.header = object5;
const object6 = {'flexDirection': 'row', 'justifyContent': 'space-between', 'alignItems': 'center'};
const PX_24 = (importDefault(697) /* metro dependency 697: native */).space.PX_24;
object6.paddingTop = PX_24;
const PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
object6.paddingBottom = PX_8;
object6.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.md;
object2.categoryContainer = object6;
object2.categoryTitle = {marginBottom: 0};
object2.channelTitle = {'flexDirection': 'row', 'alignItems': 'center'};
object2.selectAllContainer = {'display': 'flex', 'flexDirection': 'row', 'justifyContent': 'center',
'alignItems': 'center', 'flexShrink': 0};
const PX_4 = (importDefault(697) /* metro dependency 697: native */).space.PX_4;
object2.selectAllCheckbox = {marginRight: PX_4, transform: [{scale: 0.75}]};
const DISPLAY_EXTRABOLD = Fonts.DISPLAY_EXTRABOLD;
object2.newBadge = {fontFamily: DISPLAY_EXTRABOLD};
const object7 = {'position': 'relative', 'padding': 0, 'marginTop': null, 'paddingTop': null, 'marginBottom': 0,
'borderRadius': null, 'alignItems': 'center'};
PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object7.marginTop = PX_16;
PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object7.paddingTop = PX_16;
object7.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.md;
object2.nuxCard = object7;
const INTERACTIVE_TEXT_DEFAULT = (importDefault(697) /* metro dependency 697: native */).colors.INTERACTIVE_TEXT_DEFAULT;
object2.nuxCloseContainer = {'position': 'absolute', 'color': null, 'top': 16, 'right': 16,
color: INTERACTIVE_TEXT_DEFAULT};
const object8 = {'width': '100%', 'backgroundColor': null, 'alignItems': 'center', 'padding': 16};
const BACKGROUND_MOD_SUBTLE = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_MOD_SUBTLE;
object8.backgroundColor = BACKGROUND_MOD_SUBTLE;
object8.borderBottomLeftRadius = (importDefault(697) /* metro dependency 697: native */).radii.lg;
object8.borderBottomRightRadius = (importDefault(697) /* metro dependency 697: native */).radii.lg;
object2.nuxHeader = object8;
object2.nuxHeaderText = {'display': 'flex', 'flexDirection': 'row', 'alignItems': 'center', 'marginBottom': 8};
object2.nuxBody = {'textAlign': 'center', 'marginBottom': 4};
const env0_16 = Reflect.apply(createStyles, createStylesModule, [object2]);
const env0_17 = value.memo(_fun86997);
const env0_18 = value.memo(_fun87000);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/opt_in_channels/native/ChannelBrowser.tsx');
exports.default = ChannelBrowser;
}
function _fun86997({channel, onChannelClick}) { // fn#86997, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11543:1618, offset: 0x01faae65, size: 557 bytes, params: 2, frame: 30
var object2;
var r8;
var items2;
var Text;
var intl;
var view;
const styles = useStyles();
const value3 = (importDefault(4805) /* metro dependency 4805: useChannelName */)(channel);
const value4 = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserGuildSettingsStore],
function() {
var channelBinding = channel;
return UserGuildSettingsStore.isChannelOptedIn(channelBinding.guild_id, channelBinding.id);
});
const value5 = channel.id === 'null';
const value6 = (require(3874) /* metro dependency 3874: useA11yRolesNative */).useCheckboxA11yNative({checked: value4});
const PressableOpacity = (require(5278) /* metro dependency 5278: Pressables */).PressableOpacity;
object2 = {style: styles.categoryContainer, onPress: function() {
var onChannelClickBinding = onChannelClick;
var channelBinding = channel;
return onChannelClickBinding(channelBinding.guild_id, channelBinding.id, channelBinding.id);
}, accessibilityRole: value5 ? 'text' : value6.accessibilityRole,
accessibilityState: value5 ? undefined : value6.accessibilityState};
const jsxRuntimeEnv0_15Binding = jsxRuntimeEnv0_15;
const TableRowGroupTitle = (require(6231) /* metro dependency 6231: TableRowGroupNative */).TableRowGroupTitle;
const tableRowGroupTitle = <TableRowGroupTitle style={styles.categoryTitle} title={value3} lineClamp={1} />;
if (value5) {
r8 = null;
} else {
var viewBindingProps = {style: styles.selectAllContainer, accessibilityRole: value6.accessibilityRole,
accessibilityState: value6.accessibilityState};
view = <View style={styles.selectAllCheckbox}>{((FormCheckbox) => <FormCheckbox checked={value4} />)((require(7974) /* metro dependency 7974: FormCheckboxNative */).FormCheckbox)}</View>;
items2 = [view];
Text = (require(4573) /* metro dependency 4573: Text */).Text;
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
items2[1] = <Text variant="text-xs/semibold" color="interactive-text-default">{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.mSQwnW)}</Text>;
view = <View {...viewBindingProps}>{items2}</View>;
r8 = view;
}
return (
<PressableOpacity {...object2}>
<>
{tableRowGroupTitle}
{r8}
</>
</PressableOpacity>
);
}
function _fun87000({channel, guild, isFirst, isLast, forceChecked, onChannelClick}) { // fn#87000, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11543:2469, offset: 0x01fab0dd, size: 1068 bytes, params: 2, frame: 40
var object2;
var r15;
var r18;
var r10;
var moduleValue4;
var TextBadge;
var intl;
var value;
const styles = useStyles();
const [property, env0_3] = env0_3Binding(env0_4.useState(0), 2);
const value5 = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserGuildSettingsStore],
function() {
var channelBinding = channel;
return UserGuildSettingsStore.isChannelOptedIn(channelBinding.guild_id, channelBinding.id);
});
const value6 = (require(566) /* metro dependency 566: flux */).useStateFromStores([NewChannelsStore], function() {
return NewChannelsStore.shouldIndicateNewChannel(guild?.id, channel.id);
}, [channel.id, guild]);
const value7 = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserGuildSettingsStore],
_fun87003);
const value8 = (importDefault(4805) /* metro dependency 4805: useChannelName */)(channel);
const topic = channel.topic;
let r1 = topic != null && topic.length !== 0;
r1 = !r1 ? channel.isGuildVocal() : r1;
if (r1) {
r15 = topic;
} else {
moduleValue4 = require(11360) /* metro dependency 11360: OptInChannelsUtils */;
r15 = moduleValue4.getActiveAgoTimestamp(channel.id);
}
const value13 = env0_4.useCallback(_fun87004, []);
const useTokenModule = require(3860) /* metro dependency 3860: useToken */;
let useToken = useTokenModule.useToken;
const TABLE_ROW_LABEL_TEXT_STYLE = (importDefault(697) /* metro dependency 697: native */).modules.mobile.TABLE_ROW_LABEL_TEXT_STYLE;
const value14 = Reflect.apply(useToken, useTokenModule, [TABLE_ROW_LABEL_TEXT_STYLE]);
const moduleValue6 = useTokenModule;
useToken = moduleValue6.useToken;
const TABLE_ROW_LABEL_COLOR = (importDefault(697) /* metro dependency 697: native */).modules.mobile.TABLE_ROW_LABEL_COLOR;
const value15 = Reflect.apply(useToken, moduleValue6, [TABLE_ROW_LABEL_COLOR]);
if (guild == null) {
return null;
}
const channelIconWithGuild = (require(6647) /* metro dependency 6647: ChannelUtils */).getChannelIconWithGuild(channel,
guild);
const channelIconComponent = (require(6647) /* metro dependency 6647: ChannelUtils */).getChannelIconComponent(channel,
{isRulesChannel: guild?.rulesChannelId === channel.id});
const TableCheckboxRow = (require(8950) /* metro dependency 8950: TableCheckboxRowNative */).TableCheckboxRow;
object2 = {start: isFirst, end: isLast, disabled: value7};
const TableRowIcon = (require(6242) /* metro dependency 6242: TableRowIconNative */).TableRowIcon;
object2.icon = <TableRowIcon source={channelIconWithGuild} IconComponent={channelIconComponent} />;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const text = <Text lineClamp={1} style={[value6 ? {marginRight: property + 8} : undefined]} variant={value14} color={value15}>{value8}</Text>;
if (value6) {
var viewBinding2Props = {style: {marginLeft: -property}, onLayout: value13};
TextBadge = (require(1305) /* metro dependency 1305: native */).TextBadge;
var textBadgeProps = {color: (require(1305) /* metro dependency 1305: native */).BadgeColors.BRAND};
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
textBadgeProps.text = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.y2b7CA);
textBadgeProps.textStyle = styles.newBadge;
r18 = <View {...viewBinding2Props}><TextBadge {...textBadgeProps} /></View>;
} else {
r18 = value6;
}
object2.label = <View style={styles.channelTitle}>{text}{r18}</View>;
if (r15 != null) {
if (r15.length > 0) {
value = importDefault(6622) /* metro dependency 6622: MarkupUtils */;
value = value.parseTopic(r15, true, {channelId: channel.id, shouldCloseModal: true});
r10 = value;
} else {
r10 = null;
}
} else {
r10 = null;
}
object2.subLabel = r10;
object2.subLabelLineClamp = 1;
object2.onPress = function() {
var onChannelClickBinding = onChannelClick;
var id = guild.id;
var channelBinding = channel;
return onChannelClickBinding(id, channelBinding.id, channelBinding.parent_id);
};
let r5 = value5 || value7;
r5 = !r5 ? forceChecked : r5;
object2.checked = r5;
return <TableCheckboxRow {...object2} />;
}
function ChannelBrowser({guildId}) { // fn#87006, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11543:4065, offset: 0x01fab5ca, size: 1470 bytes, params: 2, frame: 45
var r10;
var Card;
var PressableOpacity;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
var items2;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
var items3;
var nuxBody;
const value2 = (importDefault(1357) /* metro dependency 1357: MobileVisualRefreshExperiment */)('ChannelBrowser');
const useTokenModule = require(3860) /* metro dependency 3860: useToken */;
const useToken = useTokenModule.useToken;
const TABLE_ROW_HEIGHT = (importDefault(697) /* metro dependency 697: native */).modules.mobile.TABLE_ROW_HEIGHT;
const value3 = Reflect.apply(useToken, useTokenModule, [TABLE_ROW_HEIGHT]);
const styles = useStyles();
const binding = env0_4;
const [property, env0_1] = env0_3(binding.useState(''), 2);
const insets = (importDefault(5463) /* metro dependency 5463: useSafeAreaInsetsKeyboardAwareNative */)({includeKeyboardHeight: true}).insets;
const onChannelClick = (importDefault(11358) /* metro dependency 11358: useBatchUpdateChannelSettings */)(guildId).onChannelClick;
const fluxModule = require(566) /* metro dependency 566: flux */;
let useStateFromStores = fluxModule.useStateFromStores;
const guild = Reflect.apply(useStateFromStores, fluxModule, [[GuildStore], function() {
return GuildStore.getGuild(guildId);
}]);
const categories = fluxModule.useStateFromStores([GuildCategoryStore], function() {
return GuildCategoryStore.getCategories(guildId);
});
const moduleValue4 = fluxModule;
useStateFromStores = moduleValue4.useStateFromStores;
const value6 = (require(11360) /* metro dependency 11360: OptInChannelsUtils */).useFilterCategoriesByQuery(guildId,
categories, Reflect.apply(useStateFromStores, moduleValue4, [[GuildChannelStore], function() {
return GuildChannelStore.getChannels(guildId);
}]), property);
const dismissibleContentUnsafeUtilsModule = require(3968) /* metro dependency 3968: DismissibleContentUnsafeUtils */;
const UNSAFE_useIsDismissibleContentDismissed = dismissibleContentUnsafeUtilsModule.UNSAFE_useIsDismissibleContentDismissed;
const DismissibleContent = (require(1365) /* metro dependency 1365: dismissible_content */).DismissibleContent;
let CHANNEL_BROWSER_NUX = DismissibleContent.CHANNEL_BROWSER_NUX;
const value7 = Reflect.apply(UNSAFE_useIsDismissibleContentDismissed, dismissibleContentUnsafeUtilsModule,
[CHANNEL_BROWSER_NUX]);
const value9 = binding.useMemo(_fun87010, [value6,
(require(11360) /* metro dependency 11360: OptInChannelsUtils */).useChannelBrowserSections(guildId, value6,
64)]);
const hasNotSetUpChannelOptIn2 = (require(11356) /* metro dependency 11356: OptInOnboardingUtils */).hasNotSetUpChannelOptIn(guildId);
binding.useEffect(function() {
var moduleValue = require(dependencyMap[20]);
var CHANNEL_BROWSER_NEW_BADGE_NUX = require(dependencyMap[21]).DismissibleContent.CHANNEL_BROWSER_NEW_BADGE_NUX;
moduleValue.UNSAFE_markDismissibleContentAsDismissed(CHANNEL_BROWSER_NEW_BADGE_NUX,
{dismissAction: ContentDismissActionType.DISMISS});
});
const value10 = binding.useCallback(_fun87013, [guild, hasNotSetUpChannelOptIn2, onChannelClick]);
const SearchField = (require(6984) /* metro dependency 6984: SearchFieldNative */).SearchField;
const view = <View style={styles.header}><SearchField size="md" onChange={onChange_87014} /></View>;
const FlashList = (require(8416) /* metro dependency 8416: flashList */).FlashList;
const object = {};
if (value7) {
r10 = null;
} else {
Card = (require(6239) /* metro dependency 6239: CardNative */).Card;
var cardProps = {style: styles.nuxCard};
PressableOpacity = (require(5278) /* metro dependency 5278: Pressables */).PressableOpacity;
string = intl.string;
items2 = [<PressableOpacity onPress={function() {
var moduleValue = require(dependencyMap[20]);
var CHANNEL_BROWSER_NUX = require(dependencyMap[21]).DismissibleContent.CHANNEL_BROWSER_NUX;
moduleValue.UNSAFE_markDismissibleContentAsDismissed(CHANNEL_BROWSER_NUX,
{dismissAction: ContentDismissActionType.DISMISS});
}} accessibilityRole="button" accessibilityLabel={Reflect.apply(string, intl,
[t.cpT0Cq])} style={styles.nuxCloseContainer}>{((CircleXIcon) => <CircleXIcon />)((require(6988) /* metro dependency 6988: CircleXIcon */).CircleXIcon)}</PressableOpacity>];
items2[1] = ((Component) => <Component source={importDefault(11362) /* metro dependency 11362 */} />)(importDefault(5475) /* metro dependency 5475: FastImage */);
var viewBinding2Props = {style: styles.nuxHeader};
string = intl.string;
items3 = [<View style={styles.nuxHeaderText}><Text variant="heading-lg/semibold" color="mobile-text-heading-primary">{Reflect.apply(string,
intl, [t.utqWEC])}</Text></View>];
nuxBody = styles.nuxBody;
string = intl.string;
items3[1] = <Text variant="text-sm/normal" color="text-default" style={nuxBody}>{Reflect.apply(string, intl,
[t['+9etcM']])}</Text>;
nuxBody = styles.nuxBody;
items3[2] = <Text variant="text-sm/normal" color="text-default" style={nuxBody}>{intl.format(t.Z0axjk,
{})}</Text>;
items2[2] = <View {...viewBinding2Props}>{items3}</View>;
r10 = <Card {...cardProps}>{items2}</Card>;
}
object.ListHeaderComponent = r10;
object.accessibilityLabel = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.et6wav);
object.renderItem = value10;
object.data = value9;
object.estimatedItemSize = value3 + getTableDividerWidth(value2);
const object2 = {};
const bottom = insets.bottom;
let PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object2.paddingBottom = bottom + PX_16;
PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object2.paddingHorizontal = PX_16;
object.contentContainerStyle = object2;
object.keyExtractor = keyExtractor_86996;
return (
<View style={styles.container}>
{view}
<FlashList {...object} />
</View>
);
}
function _fun87003() { // fn#87003, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11543:2814, offset: 0x01fab542, size: 58 bytes, params: 1, frame: 14
return channel.parent_id != null && UserGuildSettingsStore.isChannelOptedIn(channel.guild_id, channel.parent_id);
}
function _fun87004({nativeEvent}) { // fn#87004, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11543:3010, offset: 0x01fab57c, size: 36 bytes, params: 2, frame: 11
env0_3(nativeEvent.layout.width);
}
function _fun87010() { // fn#87010, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11543:4700, offset: 0x01fabbbe, size: 36 bytes, params: 1, frame: 12
env0_5.forEach(_fun87011);
return [];
}
function _fun87013(a0) { // fn#87013, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11543:5227, offset: 0x01fabd10, size: 162 bytes, params: 2, frame: 20
const {isSection, row, isLast, channel} = a0.item;
const value = null;
return value == channel ? value : isSection ? ((Component) => <Component channel={channel} onChannelClick={onChannelClick} key={channel.id} />)(env1_17) : ((Component) => <Component channel={channel} guild={guild} isFirst={row === 0} isLast={isLast} forceChecked={env0_6} onChannelClick={onChannelClick} key={channel.id} />)(env1_18);
}
function _fun87011(a0, a1) { // fn#87011, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11543:4732, offset: 0x01fabbe2, size: 222 bytes, params: 3, frame: 24
var r8;
var channel;
var value2;
var channel2;
var binding;
var push;
var binding2;
var id;
var property;
var binding3;
var length;
let rowCount = a0.rowCount;
let value = 0;
if (rowCount > value) {
value2 = environment.__proto__;
channel2 = env1_4._categories[a1].channel;
binding = env0_0;
binding.push({'isSection': true, 'section': null, 'row': -1, 'channel': null, 'isLast': false, section: a1,
channel: channel2});
rowCount = a0.rowCount;
if (value < rowCount) {
r8 = value;
while (true) {
binding = env0_0;
push = binding.push;
binding2 = env1_4;
id = channel2.id;
property = binding2[id][r8];
value = undefined;
channel = property == null ? value : property.channel;
binding3 = env1_4;
id = channel2.id;
length = binding3[id].length;
Reflect.apply(push, binding, [{isSection: false, section: a1, row: r8, channel: channel,
isLast: r8 >= length - 1}]);
value = typeof r8 === 'bigint' ? r8 + 1n : +r8 + 1;
rowCount = a0.rowCount;
if (value < rowCount) {
r8 = value;
continue;
}
break;
}
}
}
}