/* Metro module 13174; source: modules/settings/native/renderer/SettingRenderer.tsx; dependencies: [57, 29, 31, 27, 1949, 13172, 1867, 9693, 33, 4501, 697, 1305, 6238, 1484, 13175, 566, 1244, 8765, 6819, 14148, 14149, 6808, 3875, 7988, 7987, 6797, 3856, 10272, 4081, 4082, 6239, 4572, 4573, 1856, 477, 12809, 5278, 4578, 3860, 7006, 1848, 2] */ function _fun100513(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100513, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:6, offset: 0x021ea9a7, size: 991 bytes, params: 8, frame: 25 var object3; const env0_0 = require; const env0_3 = ['onSlidingComplete', 'step', 'startIcon', 'endIcon', 'minimumValue', 'maximumValue', 'valueLabel', 'defaultValue', 'onValueChange']; const env0_4 = ['settingData']; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_5 = importDefault(57) /* metro dependency 57 */; const env0_6 = importDefault(29) /* metro dependency 29 */; const value = importAll(31) /* metro dependency 31 */; const env0_8 = (require(27) /* metro dependency 27 */).View; const localeStore = importDefault(1949) /* metro dependency 1949: LocaleStore */; const userSettingSearchStore = importDefault(13172) /* metro dependency 13172: UserSettingSearchStore */; const guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */; const settingRendererConstantsModule = require(9693) /* metro dependency 9693: SettingRendererConstants */; const env0_12 = settingRendererConstantsModule.GUILD_SELECT_ALL_SERVERS_OPTION_ID; const env0_13 = settingRendererConstantsModule.NodeType; const value3 = require(33) /* metro dependency 33 */; const env0_14 = value3.jsx; const env0_15 = value3.Fragment; const env0_16 = value3.jsxs; const createStylesModule = require(4501) /* metro dependency 4501: createStyles */; const createStyles = createStylesModule.createStyles; object3 = {}; const object4 = {}; const PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16; object4.marginTop = PX_16; const PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8; object4.marginBottom = PX_8; object3.slider = object4; object3.sliderTitle = {'flexDirection': 'row', 'justifyContent': 'space-between'}; object3.radioSettingHighlight = {top: 26}; const BACKGROUND_BRAND = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BRAND; object3.defaultIcon = {'backgroundColor': null, 'justifyContent': 'center', 'alignItems': 'center', backgroundColor: BACKGROUND_BRAND}; const object7 = {}; const AVATAR_SIZE_MAP = (require(1305) /* metro dependency 1305: native */).AVATAR_SIZE_MAP; const AvatarSizes = (require(1305) /* metro dependency 1305: native */).AvatarSizes; let REFRESH_MEDIUM_32 = AvatarSizes.REFRESH_MEDIUM_32; object7.width = AVATAR_SIZE_MAP[REFRESH_MEDIUM_32]; REFRESH_MEDIUM_32 = AvatarSizes.REFRESH_MEDIUM_32; object7.height = AVATAR_SIZE_MAP[REFRESH_MEDIUM_32]; object7.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.xl; let BACKGROUND_MOD_MUTED = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_MOD_MUTED; object7.backgroundColor = BACKGROUND_MOD_MUTED; object3.placeholderAvatar = object7; const object8 = {height: 20}; object8.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.md; BACKGROUND_MOD_MUTED = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_MOD_MUTED; object8.backgroundColor = BACKGROUND_MOD_MUTED; object3.placeholderUsername = object8; const env0_17 = Reflect.apply(createStyles, createStylesModule, [object3]); const env0_18 = value.memo(_fun100527); const closure = GuildSelectDefaultIcon; const env0_20 = value.memo(_fun100530); const env0_21 = value.memo(_fun100536); const env0_22 = value.memo(_fun100537); const env0_23 = value.memo(_fun100538); const env0_24 = value.memo(_fun100540); const env0_25 = value.memo(_fun100542); const env0_26 = value.memo(_fun100543); (require(2) /* metro dependency 2 */).fileFinishedImporting('modules/settings/native/renderer/SettingRenderer.tsx'); exports.GuildSelectDefaultIcon = closure; exports.renderSettingItem = renderSettingItem; exports.renderSettingSearchResultItem = renderSettingSearchResultItem; exports.renderSettingSearchResultPlaceholderItem = renderSettingSearchResultPlaceholderItem; } function formatSettingsRowTrailing(a0) { // fn#100514, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:1087, offset: 0x021ead86, size: 82 bytes, params: 2, frame: 15 var r0; let value = a0; if (value != null) { if (typeof value !== 'string') { r0 = value; } else { value = ((TrailingText) => )((require(6238) /* metro dependency 6238: TableRowNative */).TableRow.TrailingText); r0 = value; } return r0; } } function ForceSwitchIcons({children}) { // fn#100515, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:3626, offset: 0x021eadd8, size: 133 bytes, params: 2, frame: 20 const binding = env0_7; const useContext = binding.useContext; const AccessibilityPreferencesContext = (require(3875) /* metro dependency 3875: AccessibilityPreferencesContext */).AccessibilityPreferencesContext; const value3 = env0_7.useMemo(_fun100516, [Reflect.apply(useContext, binding, [AccessibilityPreferencesContext])]); const Provider = AccessibilityPreferencesContext.Provider; return ( {children} ); } function SettingSearchResultBreadcrumbs({breadcrumbs}) { // fn#100517, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:7198, offset: 0x021eae7a, size: 94 bytes, params: 2, frame: 17 if (breadcrumbs.length === 0) { return null; } else { const Text = (require(4573) /* metro dependency 4573: Text */).Text; return ( {breadcrumbs.join(' → ')} ); } } function SettingSearchResultIcon({IconComponent}) { // fn#100518, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:7368, offset: 0x021eaed8, size: 161 bytes, params: 2, frame: 17 const useTokenModule = require(3860) /* metro dependency 3860: useToken */; const useToken = useTokenModule.useToken; const TABLE_ROW_ICON_SIZE = (importDefault(697) /* metro dependency 697: native */).modules.mobile.TABLE_ROW_ICON_SIZE; return IconComponent == null ? : ((Icon) => )((require(6238) /* metro dependency 6238: TableRowNative */).TableRow.Icon); } function RouteSettingSearchResult({settingData, IconComponent, title, breadcrumbs, setting, index, total}) { // fn#100519, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:7571, offset: 0x021eaf79, size: 322 bytes, params: 2, frame: 24 const value3 = (require(1484) /* metro dependency 1484: useNavigationNative */).useStackNavigation(); const screen = settingData.screen; const usePreNavigationAction = settingData.usePreNavigationAction; const value5 = env0_7.useCallback(_fun100520, [usePreNavigationAction?.(), index, value3, screen, setting, title, total]); const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow; return ( } subLabel={} start={index === 0} end={index === total - 1} /> ); } function PressableSettingSearchResult({settingData, IconComponent, title, breadcrumbs, setting, index, total}) { // fn#100521, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:8231, offset: 0x021eb15e, size: 254 bytes, params: 2, frame: 22 const onPress = settingData.onPress; const withArrow = settingData.withArrow; const value2 = env0_7.useCallback(_fun100522, [setting, title, index, total, onPress]); const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow; return ( } subLabel={} start={index === 0} end={index === total - 1} arrow={withArrow} /> ); } function StaticSettingSearchResult({settingData, IconComponent, title, breadcrumbs, setting, index, total}) { // fn#100523, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:8745, offset: 0x021eb2c8, size: 334 bytes, params: 2, frame: 24 const useTrailing = settingData.useTrailing; const r10 = useTrailing?.(); const value5 = env0_7.useCallback(_fun100524, [index, setting, r10, title, total]); const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow; return ( } subLabel={} trailing={r10 != null ? ((TrailingText) => )((require(6238) /* metro dependency 6238: TableRowNative */).TableRow.TrailingText) : null} start={index === 0} end={index === total - 1} /> ); } function SettingSearchResultPlaceholder({start, end}) { // fn#100525, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:9366, offset: 0x021eb4a4, size: 188 bytes, params: 2, frame: 21 const styles = useStyles(); const property = env0_5(env0_7.useState(function() { var object = {}; var Math = global.Math; object.width = (10 + 80 * Math.random() | 0) + '%'; return object; }), 1)[0]; const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow; return ( } icon={} /> ); } function _fun100527({useTitle, useTrailing, usePreNavigationAction, screen, useDescription, useIsDisabled, variant, start, end, IconComponent}) { // fn#100527, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:1220, offset: 0x021eb560, size: 364 bytes, params: 2, frame: 27 const value3 = (require(1484) /* metro dependency 1484: useNavigationNative */).useStackNavigation(); const value4 = useTitle(); const r15 = usePreNavigationAction?.(); const r12 = useDescription?.(); const r11 = useIsDisabled?.(); const r9 = useTrailing?.(); const value10 = env0_7.useCallback(_fun100528, [value3, screen, r15]); const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow; return ( )((require(6238) /* metro dependency 6238: TableRowNative */).TableRow.Icon) : null} trailing={r9 != null ? formatSettingsRowTrailing(r9) : null} onPress={value10} start={start} end={end} /> ); } function GuildSelectDefaultIcon({size}) { // fn#100529, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:1843, offset: 0x021eb712, size: 168 bytes, params: 2, frame: 18 size = size === undefined ? 'sm' : size; const styles = useStyles(); const r8 = size !== 'xs' ? 32 : 24; const object = {}; copyDataProperties(object, styles.defaultIcon, r8); object['width'] = r8; object['height'] = r8; object['borderRadius'] = r8 / 3; const ClydeIcon = (require(8765) /* metro dependency 8765: ClydeIcon */).ClydeIcon; return ( ); } function _fun100530(a0) { // fn#100530, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:2026, offset: 0x021eb7ba, size: 245 bytes, params: 2, frame: 19 const useSelectedGuildId = a0.useSelectedGuildId; const value = Object.create(null); value.useSelectedGuildId = 0; const value2 = copyDataProperties({}, a0, value, undefined); const value3 = useSelectedGuildId(); const env0_1 = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildStore], _fun100531); const value5 = _fun100532(value3); let binding = env0_7; const value6 = binding.memo(_fun100534); const value7 = env0_7.useCallback(_fun100535, [value5]); binding = env0_21; const PRESSABLE = NodeType.PRESSABLE; return ((Component) => )(binding); } function _fun100536({setting, onPress, useTitle, useDescription, useIsDisabled, useTrailing, variant, withArrow, start, end, IconComponent}) { // fn#100536, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:2578, offset: 0x021eba0c, size: 369 bytes, params: 2, frame: 30 var r5; var value; const value3 = (require(14148) /* metro dependency 14148: useHighlightSettingItem */).useHighlightSettingItem(setting); const value4 = useTitle(); const r16 = useDescription?.(); const r11 = useIsDisabled?.(); const r12 = useTrailing?.(); const jsxRuntimeEnv0_15Binding = jsxRuntimeEnv0_15; const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow; const tableRow = )((require(6238) /* metro dependency 6238: TableRowNative */).TableRow.Icon) : null} onPress={onPress} disabled={r11} trailing={formatSettingsRowTrailing(r12)} start={start} end={end} />; if (value3) { value = importDefault(14149) /* metro dependency 14149: SettingListItemHighlight */; value = ((Component) => )(value); r5 = value; } else { r5 = value3; } return ( <> {tableRow} {r5} ); } function _fun100537({setting, onValueChange, useTitle, useDescription, useIsDisabled, useValue, variant, start, end, IconComponent, hasIcon}) { // fn#100537, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:3105, offset: 0x021ebb7d, size: 379 bytes, params: 2, frame: 28 var r5; var value; const value3 = (require(14148) /* metro dependency 14148: useHighlightSettingItem */).useHighlightSettingItem(setting); const value4 = useTitle(); const value5 = useValue(); const r14 = useDescription?.(); let r7 = useIsDisabled?.(); const TableSwitchRow = (require(6808) /* metro dependency 6808: TableSwitchRowNative */).TableSwitchRow; const tableSwitchRow = )((require(6238) /* metro dependency 6238: TableRowNative */).TableRow.Icon) : null} value={value5} variant={variant} disabled={r7} onValueChange={onValueChange} start={start} end={end} />; const jsxRuntimeEnv0_15Binding = jsxRuntimeEnv0_15; r7 = hasIcon !== true ? tableSwitchRow : {tableSwitchRow}; if (value3) { value = importDefault(14149) /* metro dependency 14149: SettingListItemHighlight */; value = ((Component) => )(value); r5 = value; } else { r5 = value3; } return ( <> {r7} {r5} ); } function _fun100538({setting, useTitle, useValue, useOptions, onValueChange}) { // fn#100538, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:3876, offset: 0x021ebcf8, size: 295 bytes, params: 2, frame: 25 var r5; var value; const styles = useStyles(); const value2 = (require(14148) /* metro dependency 14148: useHighlightSettingItem */).useHighlightSettingItem(setting); const value3 = useTitle(); const value4 = useValue(); const value5 = useOptions(); const r10 = typeof value4 !== 'number' ? value4 : '' + value4; const jsxRuntimeEnv0_15Binding = jsxRuntimeEnv0_15; const TableRadioGroup = (require(7988) /* metro dependency 7988: TableRadioGroupNative */).TableRadioGroup; const tableRadioGroup = {value5.map(_fun100539)}; if (value2) { value = importDefault(14149) /* metro dependency 14149: SettingListItemHighlight */; value = ((Component) => )(value); r5 = value; } else { r5 = value2; } return ( <> {tableRadioGroup} {r5} ); } function _fun100540({setting, useTitle, variant, useTrailing, useIsDisabled, useDescription, start, end, IconComponent}) { // fn#100540, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:4404, offset: 0x021ebea8, size: 450 bytes, params: 2, frame: 29 const value3 = (require(14148) /* metro dependency 14148: useHighlightSettingItem */).useHighlightSettingItem(setting); const value4 = useTitle(); const r15 = useTrailing?.(); const r13 = useDescription?.(); const r12 = useIsDisabled?.(); const value9 = env0_7.useCallback(_fun100541, [r15]); const jsxRuntimeEnv0_15Binding = jsxRuntimeEnv0_15; const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow; return ( <> )((require(6238) /* metro dependency 6238: TableRowNative */).TableRow.Icon) : null} trailing={r15 != null ? ((TrailingText) => )((require(6238) /* metro dependency 6238: TableRowNative */).TableRow.TrailingText) : null} start={start} end={end} /> {value3 && ((Component) => )(importDefault(14149) /* metro dependency 14149: SettingListItemHighlight */)} ); } function _fun100542({setting, useTitle, useValue, onValueChange, maximum, start, end}) { // fn#100542, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:5034, offset: 0x021ec0b9, size: 310 bytes, params: 2, frame: 30 var r5; var value; const value3 = (require(14148) /* metro dependency 14148: useHighlightSettingItem */).useHighlightSettingItem(setting); const styles = useStyles(); const value4 = useTitle(); const r19 = useValue?.(); const jsxRuntimeEnv0_15Binding = jsxRuntimeEnv0_15; const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow; const tableRow = {((Component) => )(importDefault(10272) /* metro dependency 10272: VolumeSlider */)}} />; if (value3) { value = importDefault(14149) /* metro dependency 14149: SettingListItemHighlight */; value = ((Component) => )(value); r5 = value; } else { r5 = value3; } return ( <> {tableRow} {r5} ); } function _fun100543({useTitle, start, end, useProps, useTrailing}) { // fn#100543, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13364:5397, offset: 0x021ec1ef, size: 1383 bytes, params: 2, frame: 48 const Text = (require(4573) /* metro dependency 4573: Text */).Text; const env0_6 = undefined; let env0_7 = undefined; const value2 = useTitle(); const value3 = useProps(); const onSlidingComplete = value3.onSlidingComplete; const step = value3.step; const r32 = step === undefined ? 0.1 : step; const startIcon = value3.startIcon; const endIcon = value3.endIcon; const minimumValue = value3.minimumValue; const r30 = minimumValue === undefined ? 0 : minimumValue; const maximumValue = value3.maximumValue; const r27 = maximumValue === undefined ? 1 : maximumValue; const env0_3 = r27; const valueLabel = value3.valueLabel; const defaultValue = value3.defaultValue; const r15 = defaultValue === undefined ? 1 : defaultValue; const onValueChange = value3.onValueChange; const env0_5 = onValueChange; const value8 = env0_6(value3, env0_3); const styles = useStyles(); const locale = (require(566) /* metro dependency 566: flux */).useStateFromStores([LocaleStore], function() { return LocaleStore.locale; }); const value10 = env0_5(env0_7.useState(_fun100545), 2); const property = value10[0]; env0_7 = property; const env0_8 = value10[1]; const [property2, env0_9] = env0_5(env0_7.useState(false), 2); const value13 = env0_7.useCallback(_fun100546, []); const value14 = env0_7.useCallback(_fun100547, [onValueChange]); const value15 = env0_7.useCallback(_fun100548, [onSlidingComplete]); const value16 = env0_7.useCallback(_fun100549, [value14, onSlidingComplete]); const value17 = env0_7.useCallback(_fun100550, [r15, value16]); const value18 = env0_7.useCallback(_fun100551, [value16, r27, r32, property]); const value19 = env0_7.useCallback(_fun100552, [value16, r30, r32, property]); const r18 = useTrailing?.(); const Card = (require(6239) /* metro dependency 6239: CardNative */).Card; const Stack = (require(4572) /* metro dependency 4572: StackNative */).Stack; const Stack2 = (require(4572) /* metro dependency 4572: StackNative */).Stack; const items3 = [{value2}{r18}{property != null && {valueLabel ?? (require(1856) /* metro dependency 1856: NumberUtils */).formatPercent(locale, property)}}]; const platformUtilsModule = require(477) /* metro dependency 477: PlatformUtils */; const slider = platformUtilsModule.isAndroid() ? styles.slider : undefined; const Slider = (require(12809) /* metro dependency 12809: SliderNative */).Slider; const sliderProps = {...value8}; sliderProps['accessibilityLabel'] = value2; sliderProps['step'] = r32; sliderProps['onValueChange'] = value14; sliderProps['value'] = property; sliderProps['minimumValue'] = r30; sliderProps['maximumValue'] = r27; sliderProps['onSlidingStart'] = value13; sliderProps['onSlidingComplete'] = value15; const PressableOpacity = (require(5278) /* metro dependency 5278: Pressables */).PressableOpacity; sliderProps['startIcon'] = {startIcon}; sliderProps['endIcon'] = {endIcon}; items3[1] = ; const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button; const r13 = !property2 && property === r15; const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; items3[2] =