/* Metro module 11030; source: modules/expression_picker/native/ExpressionPicker.tsx; dependencies: [31, 27, 1346, 661, 1881, 33, 4501, 697, 11031, 8535, 8853, 1482, 1583, 4863, 8579, 11032, 4559, 9221, 11033, 11034, 11048, 2] */ function _fun84451(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#84451, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11216:6, offset: 0x01f4ab95, size: 386 bytes, params: 8, frame: 26 const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); let value = importAll(31) /* metro dependency 31 */; const env0_4 = (require(27) /* metro dependency 27 */).View; const expressionPickerConstantsModule = require(1346) /* metro dependency 1346: ExpressionPickerConstants */; const env0_5 = expressionPickerConstantsModule.ExpressionPickerViewType; const env0_6 = expressionPickerConstantsModule.ExpressionPickerOrder; const PADDING_HORIZONTAL = expressionPickerConstantsModule.PADDING_HORIZONTAL; const env0_7 = (require(661) /* metro dependency 661: Constants */).AnalyticEvents; const env0_8 = (require(1881) /* metro dependency 1881: EmojiConstants */).EmojiIntention; const value3 = require(33) /* metro dependency 33 */; const env0_9 = value3.jsx; const env0_10 = value3.jsxs; const createStylesModule = require(4501) /* metro dependency 4501: createStyles */; const createStyles = createStylesModule.createStyles; const MOBILE_EXPRESSION_PICKER_BACKGROUND_DEFAULT = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_EXPRESSION_PICKER_BACKGROUND_DEFAULT; const env0_11 = Reflect.apply(createStyles, createStylesModule, [{expressionPickerContainer: {'flex': 1, 'overflow': 'hidden', 'backgroundColor': null, 'position': 'relative', backgroundColor: MOBILE_EXPRESSION_PICKER_BACKGROUND_DEFAULT, paddingHorizontal: PADDING_HORIZONTAL}, expressionPickerContent: {flex: 1}, segmentedControl: {paddingTop: 2 * PADDING_HORIZONTAL, paddingHorizontal: 0}, segmentedControlUnpadded: {paddingHorizontal: 0}}]); value = value.memo(_fun84452); (require(2) /* metro dependency 2 */).fileFinishedImporting('modules/expression_picker/native/ExpressionPicker.tsx'); exports.default = value; } function _fun84452({bottomSheetRef, bottomSheetIndex, channel, expressionType, hideGifFavorites, onPressEmoji, onPressSticker, onPressGIF, onBackspace, visibleTabs = ExpressionPickerOrder, initialGifQuery, stickerFormats, height, inPortalKeyboard}) { // fn#84452, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11216:624, offset: 0x01f4ad17, size: 914 bytes, params: 2, frame: 37 var object2; hideGifFavorites = !(hideGifFavorites === undefined) && hideGifFavorites; var value; const styles = useStyles(); const binding = undefined; const env0_1 = binding.useRef(false); const {expressionPickerSelectedIndex, expressionPickerViewType, expressionPickerTabStrings} = (importDefault(11031) /* metro dependency 11031: useExpressionPickerTabData */)({expressionType: expressionType, expressionPickerTabs: visibleTabs}); binding.useEffect(_fun84454, [binding.useMemo(function() { return channel.getGuildId(); }, [channel])]); const segmentedControlStateNativeModule = require(8853) /* metro dependency 8853: SegmentedControlStateNative */; const useSegmentedControlState = segmentedControlStateNativeModule.useSegmentedControlState; object2 = {pageWidth: 0, defaultIndex: expressionPickerSelectedIndex, onSetActiveIndex: function(a0) { var moduleValue = require(dependencyMap[11]); var object = {type: require(dependencyMap[12]).KeyboardTypes.EXPRESSION}; object.context = ExpressionPickerOrder[a0]; moduleValue.setKeyboardType(object); }}; object2.items = expressionPickerTabStrings.map(function(a0) { return {id: a0, label: a0, page: null}; }); const value4 = Reflect.apply(useSegmentedControlState, segmentedControlStateNativeModule, [object2]); binding.useEffect(_fun84457, [expressionPickerViewType]); const defaultImport2 = importDefault(11032) /* metro dependency 11032: useExpressionPickerInsets */; let EMOJI = ExpressionPickerViewType.EMOJI; const value7 = defaultImport2({hasCategories: expressionPickerViewType === EMOJI || expressionPickerViewType === ExpressionPickerViewType.STICKER}); const useIsScreenReaderEnabledNativeModule = require(4559) /* metro dependency 4559: useIsScreenReaderEnabledNative */; const useIsScreenReaderEnabled = useIsScreenReaderEnabledNativeModule.useIsScreenReaderEnabled; const r18 = Reflect.apply(useIsScreenReaderEnabled, useIsScreenReaderEnabledNativeModule, []) ? {marginBottom: value7.safeAreaBottomKeyboardAware} : {}; const items2 = [styles.expressionPickerContainer]; items2[1] = height != null && ({height: height}); const r7 = inPortalKeyboard ? styles.segmentedControl : styles.segmentedControlUnpadded; const SegmentedControl = (require(9221) /* metro dependency 9221: SegmentedControlNative */).SegmentedControl; const view = ; const items3 = [styles.expressionPickerContent, r18]; EMOJI = ExpressionPickerViewType.EMOJI; if (expressionPickerViewType === EMOJI) { value = importDefault(11033) /* metro dependency 11033: EmojiPicker */; value = ((Component) => )(value); visibleTabs = value; } else if (expressionPickerViewType === ExpressionPickerViewType.GIF) { value = importDefault(11034) /* metro dependency 11034: GIFPicker */; value = ((Component) => )(value); visibleTabs = value; } else if (expressionPickerViewType !== ExpressionPickerViewType.STICKER) { visibleTabs = null; } else { value = importDefault(11048) /* metro dependency 11048: StickerPicker */; value = ((Component) => )(value); visibleTabs = value; } return ( {view} {visibleTabs} ); } function _fun84454() { // fn#84454, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11216:1076, offset: 0x01f4b0bc, size: 45 bytes, params: 1, frame: 12 const value = environment.__proto__; (require(8535) /* metro dependency 8535: TopEmojisUtils */).maybeFetchTopEmojisByGuild(env0_3); } function _fun84457() { // fn#84457, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11216:1356, offset: 0x01f4b13c, size: 239 bytes, params: 1, frame: 16 var defaultImport; var defaultImport3; if (env0_1.current) { defaultImport3 = importDefault(4863) /* metro dependency 4863: AppAnalyticsUtils */; defaultImport3.trackWithMetadata(AnalyticEvents.EXPRESSION_PICKER_TAB_CLICKED, {tab: expressionPickerViewType, badged: false}); } else if (expressionPickerViewType === ExpressionPickerViewType.EMOJI) { (importDefault(8579) /* metro dependency 8579: trackOnEmojiPickerOpened */)({intention: EmojiIntention.CHAT}); env0_1.current = true; } else { defaultImport = importDefault(4863) /* metro dependency 4863: AppAnalyticsUtils */; defaultImport.trackWithMetadata(AnalyticEvents.EXPRESSION_PICKER_OPENED, {tab: expressionPickerViewType, badged: false}); env0_1.current = true; } }