/* 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;
}
}