/* Metro module 4585; source: design/components/Button/native/BaseButton.native.tsx; dependencies: [29, 31, 27, 4586, 33, 3868, 4501, 697, 4583, 4017, 1360, 477, 2] */ function _fun38889(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#38889, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4763:6, offset: 0x010cf432, size: 309 bytes, params: 8, frame: 22 const env0_0 = require; const env0_3 = ['style']; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_4 = importDefault(29) /* metro dependency 29 */; let value = importAll(31) /* metro dependency 31 */; const {Pressable, TouchableOpacity} = require(27) /* metro dependency 27 */; const env0_6 = (require(4586) /* metro dependency 4586: styleConstants */).IOS_POINTER_STYLE; const env0_7 = (require(33) /* metro dependency 33 */).jsx; const env0_8 = (require(4501) /* metro dependency 4501: createStyles */).createStyles(_fun38890); const env0_9 = (importDefault(4017) /* metro dependency 4017: ReanimatedRexport */).createAnimatedComponent(Pressable); const env0_10 = (importDefault(4017) /* metro dependency 4017: ReanimatedRexport */).createAnimatedComponent(TouchableOpacity); value = value.forwardRef(_fun38891); (require(2) /* metro dependency 2 */).fileFinishedImporting('design/components/Button/native/BaseButton.native.tsx'); exports.BaseButton = value; } function _fun38890(a0) { // fn#38890, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4763:247, offset: 0x010cf567, size: 140 bytes, params: 2, frame: 13 var r3; var r2; if (a0 === 'secondary') { r2 = (importDefault(697) /* metro dependency 697: native */).shadows.SHADOW_LOW; r3 = importDefault; } else if (a0 !== 'primary-overlay') { r2 = {}; } else { r2 = (importDefault(697) /* metro dependency 697: native */).shadows.SHADOW_BUTTON_OVERLAY; r3 = importDefault; } const object = {}; copyDataProperties(object, r2, r3); return {button: object, disabled: {opacity: 0.5}}; } function _fun38891({children, style, variant, disabled, loading, pressed, onPress, onPressDisabled, onPressIn, onPressOut, onLongPress, onLayout, accessible, accessibilityRole, accessibilityLabel, accessibilityHint, accessibilityValue, accessibilityState, accessibilityActions, onAccessibilityAction, accessibilityElementsHidden, importantForAccessibility, pointerEvents, hitSlop, scaleAmountInPx}, a1) { // fn#38891, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4763:524, offset: 0x010cf5f3, size: 1065 bytes, params: 3, frame: 46 variant = variant === undefined ? 'primary' : variant; disabled = !(disabled === undefined) && disabled; loading = !(loading === undefined) && loading; const env0_3 = undefined; const styles = useStyles(variant); const r7 = disabled && onPressDisabled == null; const r9 = (disabled ? onPressDisabled : onPress) ?? undefined; const value7 = (require(4583) /* metro dependency 4583: ButtonHooksNative */).useButtonPressAnimationProps(pressed, scaleAmountInPx, onLayout, onPressIn, onPressOut); const style2 = value7.style; let binding = env0_4; const r10 = pressed == null ? {animatedScaleStyles: undefined, buttonAnimationProps: {onLayout: onLayout, onPressIn: onPressIn, onPressOut: onPressOut}} : {animatedScaleStyles: style2, buttonAnimationProps: binding(value7, env0_3)}; const animatedScaleStyles = r10.animatedScaleStyles; const buttonAnimationProps = r10.buttonAnimationProps; const value9 = env0_5.useMemo(_fun38892, [accessibilityState, r7, loading]); const nativeModule = require(3868) /* metro dependency 3868: native */; const useThemeContext = nativeModule.useThemeContext; const theme = Reflect.apply(useThemeContext, nativeModule, []).theme; const value10 = 'light'; const r30 = variant === 'primary-overlay' ? value10 : variant !== 'secondary-overlay' || value10 !== theme ? undefined : 'dark'; const r5 = r30 == null ? children : {children}; const items = [styles.button, style]; disabled = disabled && styles.disabled; items[2] = disabled; items[3] = animatedScaleStyles; items[4] = IOS_POINTER_STYLE; if (accessibilityRole !== 'none') { return ((Component) => {r5})(env0_9); } const r27 = accessibilityElementsHidden ? '' : [accessibilityLabel, accessibilityHint].filter((require(1360) /* metro dependency 1360: GlobalUtils */).isNotNullish).join(', '); binding = env0_10; const bindingProps2 = {...buttonAnimationProps}; bindingProps2['ref'] = a1; bindingProps2['accessible'] = !(accessible ?? (require(477) /* metro dependency 477: PlatformUtils */).isAndroid()) && undefined; bindingProps2['accessibilityRole'] = 'none'; bindingProps2['accessibilityLabel'] = r27; bindingProps2['accessibilityElementsHidden'] = accessibilityElementsHidden; bindingProps2['activeOpacity'] = 1; bindingProps2['importantForAccessibility'] = importantForAccessibility; bindingProps2['style'] = items; bindingProps2['onPress'] = r9; bindingProps2['onPressIn'] = function(a0) { if (buttonAnimationProps.onPressIn != null) { buttonAnimationProps.onPressIn(a0); } }; bindingProps2['onPressOut'] = function(a0) { if (buttonAnimationProps.onPressOut != null) { buttonAnimationProps.onPressOut(a0); } }; bindingProps2['hitSlop'] = hitSlop; return ((Component) => {r5})(binding); } function _fun38892() { // fn#38892, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4763:1367, offset: 0x010cfa1c, size: 44 bytes, params: 1, frame: 13 const object2 = {}; copyDataProperties(object2, accessibilityState, undefined); object2['disabled'] = env0_2; object2['busy'] = loading; return object2; }