112 lines
7.4 KiB
TypeScript
112 lines
7.4 KiB
TypeScript
/* Metro module 9204; source: design/components/Button/native/ImageButton.native.tsx; dependencies: [31, 27, 33, 4501, 4582, 697, 4583, 4017, 4577, 4581, 4585, 8342, 4573, 2] */
|
|
function _fun72027(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#72027, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9389:6, offset: 0x01d36a0d, size: 242 bytes, params: 8, frame: 19
|
|
const env0_0 = require;
|
|
const Object = global.Object;
|
|
Object.defineProperty(exports, '__esModule', {value: true});
|
|
let value = importAll(31) /* metro dependency 31 */;
|
|
const value2 = require(27) /* metro dependency 27 */;
|
|
const env0_4 = value2.View;
|
|
const env0_5 = value2.Image;
|
|
const value3 = require(33) /* metro dependency 33 */;
|
|
const env0_6 = value3.jsx;
|
|
const env0_7 = value3.jsxs;
|
|
const env0_8 = (require(4501) /* metro dependency 4501: createStyles */).createStyles(_fun72028);
|
|
object = {code: "function ImageButtonNativeTsx1(){const{withSpring,pressed,ON_PRESS_SPRING}=this.__closure;return{opacity:withSpring(pressed.get()===1?1:0,ON_PRESS_SPRING,'animate-always')};}"};
|
|
value = value.forwardRef(_fun72029);
|
|
(require(2) /* metro dependency 2 */).fileFinishedImporting('design/components/Button/native/ImageButton.native.tsx');
|
|
exports.ImageButton = value;
|
|
}
|
|
|
|
function _fun72028(a0, a1, a2) { // fn#72028, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9389:186, offset: 0x01d36aff, size: 371 bytes, params: 4, frame: 17
|
|
const LARGE_BUTTON_PADDING = (require(4582) /* metro dependency 4582: ButtonConstantsNative */).LARGE_BUTTON_PADDING;
|
|
const value2 = a1 + 2 * (a0 === 'sm' ? (require(4582) /* metro dependency 4582: ButtonConstantsNative */).SMALL_BUTTON_PADDING : a0 !== 'md' ? LARGE_BUTTON_PADDING : (require(4582) /* metro dependency 4582: ButtonConstantsNative */).MEDIUM_BUTTON_PADDING);
|
|
const object4 = {};
|
|
const object5 = {};
|
|
const PX_4 = (importDefault(697) /* metro dependency 697: native */).space.PX_4;
|
|
object5.paddingBottom = PX_4;
|
|
const PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
|
|
object5.gap = PX_8;
|
|
object5.alignItems = 'center';
|
|
object5.alignSelf = 'center';
|
|
object5.flexGrow = a2 ? 1 : 0;
|
|
object4.labelPressable = object5;
|
|
const object7 = {'paddingHorizontal': 0, 'paddingVertical': 0};
|
|
object7.minHeight = value2;
|
|
object7.minWidth = value2;
|
|
object7.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
|
|
object4.pill = object7;
|
|
object4.imageWrapper = {width: value2, height: value2, position: 'relative'};
|
|
object4.image = {width: value2, height: value2};
|
|
const object8 = {'position': 'absolute', 'top': 0, 'left': 0, 'right': 0, 'bottom': 0};
|
|
const REDESIGN_IMAGE_BUTTON_PRESSED_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.REDESIGN_IMAGE_BUTTON_PRESSED_BACKGROUND;
|
|
object8.backgroundColor = REDESIGN_IMAGE_BUTTON_PRESSED_BACKGROUND;
|
|
object8.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
|
|
object4.imageDim = object8;
|
|
return object4;
|
|
}
|
|
|
|
function _fun72029(a0, a1) { // fn#72029, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9389:1024, offset: 0x01d36c72, size: 913 bytes, params: 3, frame: 32
|
|
var r0;
|
|
const BaseIconButton = (require(8342) /* metro dependency 8342: BaseIconButtonNative */).BaseIconButton;
|
|
var BaseButton;
|
|
let size = a0.size;
|
|
size = size === undefined ? 'lg' : size;
|
|
const label = a0.label;
|
|
const grow = a0.grow;
|
|
const image = a0.image;
|
|
const accessibilityLabel = a0.accessibilityLabel;
|
|
const maxFontSizeMultiplier = a0.maxFontSizeMultiplier;
|
|
const onPressIn = a0.onPressIn;
|
|
const onPressOut = a0.onPressOut;
|
|
const object3 = {'size': 0, 'label': 0, 'grow': 0, 'image': 0, 'accessibilityLabel': 0, 'maxFontSizeMultiplier': 0,
|
|
'onPressIn': 0, 'onPressOut': 0};
|
|
silentSetPrototypeOf(object3, null, undefined);
|
|
let value = copyDataProperties({}, a0, object3, image);
|
|
const styles = useStyles(size,
|
|
(require(4583) /* metro dependency 4583: ButtonHooksNative */).useIconSizeStyles(size, true,
|
|
maxFontSizeMultiplier).width, grow);
|
|
const value4 = (require(4017) /* metro dependency 4017: ReanimatedRexport */).useSharedValue(0);
|
|
const binding = env0_3;
|
|
const value5 = binding.useCallback(_fun72030, [value4, onPressIn]);
|
|
const value6 = binding.useCallback(_fun72031, [value4, onPressOut]);
|
|
const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */;
|
|
const useAnimatedStyle = reanimatedRexportModule.useAnimatedStyle;
|
|
const closure = w_72032;
|
|
const object4 = {};
|
|
object4.withSpring = (require(4577) /* metro dependency 4577: spring */).withSpring;
|
|
object4.pressed = value4;
|
|
const ON_PRESS_SPRING = (require(4581) /* metro dependency 4581: springPresets */).ON_PRESS_SPRING;
|
|
object4.ON_PRESS_SPRING = ON_PRESS_SPRING;
|
|
closure.__closure = object4;
|
|
closure.__workletHash = 17257158773379;
|
|
closure.__initData = env0_9;
|
|
const value7 = Reflect.apply(useAnimatedStyle, reanimatedRexportModule, [closure]);
|
|
const image2 = <Image source={image} style={styles.image} />;
|
|
const View2 = (importDefault(4017) /* metro dependency 4017: ReanimatedRexport */).View;
|
|
const view = <View style={styles.imageWrapper}>{image2}<View2 style={[styles.imageDim, value7]} /></View>;
|
|
if (label != null) {
|
|
BaseButton = (require(4585) /* metro dependency 4585: BaseButtonNative */).BaseButton;
|
|
var baseButtonProps = {style: styles.labelPressable, ...value};
|
|
baseButtonProps['variant'] = 'none';
|
|
baseButtonProps['accessibilityLabel'] = accessibilityLabel;
|
|
value = <BaseIconButton ref={a1} {...value} {...{['icon']: view}} {...{['accessibilityRole']: 'none'}} {...{['accessibilityLabel']: ''}} {...{['size']: 'lg'}} {...{['pillStyle']: styles.pill}} {...{['variant']: 'secondary'}} {...{['onPressIn']: value5}} {...{['onPressOut']: value6}} {...{['maxFontSizeMultiplier']: maxFontSizeMultiplier}} />;
|
|
value = <BaseButton {...baseButtonProps}>{value}{((Text) => <Text variant="text-xs/medium" color="interactive-text-default" maxFontSizeMultiplier={maxFontSizeMultiplier}>{label}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}</BaseButton>;
|
|
r0 = value;
|
|
} else {
|
|
value = <BaseIconButton ref={a1} {...value} {...{['size']: size}} {...{['icon']: view}} {...{['accessibilityLabel']: accessibilityLabel}} {...{['pillStyle']: styles.pill}} {...{['variant']: 'secondary'}} {...{['onPressIn']: value5}} {...{['onPressOut']: value6}} />;
|
|
r0 = value;
|
|
}
|
|
return r0;
|
|
}
|
|
|
|
function w_72032() { // fn#72032, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9389:1372, offset: 0x01d37003, size: 105 bytes, params: 1, frame: 18
|
|
const springModule = require(4577) /* metro dependency 4577: spring */;
|
|
const withSpring = springModule.withSpring;
|
|
const value3 = env0_2.get();
|
|
const value4 = 1;
|
|
const r3 = value4 !== value3 ? 0 : value4;
|
|
const ON_PRESS_SPRING = (require(4581) /* metro dependency 4581: springPresets */).ON_PRESS_SPRING;
|
|
return {opacity: Reflect.apply(withSpring, springModule, [r3, ON_PRESS_SPRING, 'animate-always'])};
|
|
}
|
|
|