/* Metro module 9946; source: modules/media_viewer/native/useMediaViewerClosePosition.tsx; dependencies: [57, 31, 661, 9941, 8994, 4017, 2] */ import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */ import UseStableCallback from '../../../hooks/useStableCallback.tsx'; /* Metro dependency 8994 */ import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */ import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */ import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */ import * as ReanimatedRexportModule from '../../reanimated/ReanimatedRexport.tsx'; /* Metro dependency 4017 */ function _fun77846(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#77846, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10132:6, offset: 0x01e0e119, size: 202 bytes, params: 8, frame: 19 const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); object = {code: 'function useMediaViewerClosePositionTsx1(){const{index}=this.__closure;return index.get();}'}; object = {code: 'function useMediaViewerClosePositionTsx2(index){const{runOnJS,setClosePosition}=this.__closure;runOnJS(setClosePosition)(index);}'}; (FileImportTrackerModule).fileFinishedImporting('modules/media_viewer/native/useMediaViewerClosePosition.tsx'); exports.default = useMediaViewerClosePosition; function computeClosePosition(a0, a1, a2) { // fn#77847, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10132:131, offset: 0x01e0e1e3, size: 73 bytes, params: 4, frame: 16 var r0; var value; if (a2 != null) { value = importDefault(9941) /* metro dependency 9941: getMediaViewerStateForScreen */; value = value(a0, a1, a2); r0 = value; } else { r0 = {height: a1}; } return (a1 + r0.height) / 2; } function useMediaViewerClosePosition({index, sources, onClose = NOOP, windowHeight, windowWidth}) { // fn#77848, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10132:477, offset: 0x01e0e22c, size: 371 bytes, params: 2, frame: 24 const windowWidth2 = windowWidth; const value2 = (UseStableCallback)(onClose); const binding = value2; const [property, env0_5] = windowWidth2(binding.useState(function() { return computeClosePosition(windowWidth, windowHeight, sources[index.get()]); }), 2); const value5 = binding.useCallback(_fun77850, [value2, sources, windowHeight, windowWidth]); const env0_6 = value5; const useAnimatedReaction = ReanimatedRexportModule.useAnimatedReaction; const closure = function() { return index.get(); }; closure.__closure = {index: index}; closure.__workletHash = 5031282724746; closure.__initData = env0_6; const useMediaViewerClosePositionF2 = useMediaViewerClosePositionF; object = {}; object.runOnJS = ReanimatedRexportModule.runOnJS; object.setClosePosition = value5; useMediaViewerClosePositionF2.__closure = object; useMediaViewerClosePositionF2.__workletHash = 2709880768438; useMediaViewerClosePositionF2.__initData = env0_7; Reflect.apply(useAnimatedReaction, ReanimatedRexportModule, [closure, useMediaViewerClosePositionF2]); binding.useEffect(_fun77853, [value5, index]); return property; function _fun77850(a0) { // fn#77850, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10132:694, offset: 0x01e0e3d1, size: 65 bytes, params: 2, frame: 16 const property = sources[a0]; if (property == null) { ReactModule(); } env0_5(computeClosePosition(windowWidth, windowHeight, property)); } function useMediaViewerClosePositionF(a0) { // fn#77852, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10132:890, owner: useMediaViewerClosePosition.f, offset: 0x01e0e412, size: 52 bytes, params: 2, frame: 12 let value = environment.__proto__; value = require(4017) /* metro dependency 4017: ReanimatedRexport */; value = value.runOnJS(env0_6); value(a0); } function _fun77853() { // fn#77853, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10132:1043, offset: 0x01e0e446, size: 29 bytes, params: 1, frame: 11 env0_6(index.get()); } } } global.__d(_fun77846, 9946, [57, 31, 661, 9941, 8994, 4017, 2]) /* metro module 9946, dependencies: [57, 31, 661, 9941, 8994, 4017, 2] */;