/* Metro module 1839; source: unknown; dependencies: [1610, 1821, 1804, 1840] */ import Module01821 from './module-01821.js'; /* Metro dependency 1821 */ import * as Module01610Module from './module-01610.js'; /* Metro dependency 1610 */ import * as moduleValue82 from './module-01804.js'; /* Metro dependency 1804 */ function _fun19954(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#19954, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1966:6, offset: 0x00eb9fb4, size: 137 bytes, params: 8, frame: 16 const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); object = {code: 'function pnpm_indexTs1(effective,totalPaddingForMaxScroll){const{size,layout,scroll,scrollTo,scrollViewRef}=this.__closure;const paddingForMax=totalPaddingForMaxScroll!==undefined?totalPaddingForMaxScroll:effective;const maxScroll=Math.max(size.value.height-layout.value.height+paddingForMax,0);if(scroll.value>maxScroll){scrollTo(scrollViewRef,0,maxScroll,false);}}'}; object = {code: 'function pnpm_indexTs2(e){const{freeze,targetKeyboardHeight,closing,getEffectiveHeight,offset,isScrollAtEnd,scroll,layout,size,inverted,getVisibleMinimumPaddingFraction,blankSpace,getMinimumPaddingAbsorbed,extraContentPadding,getScrollEffective,minimumPaddingFractionOnOpen,padding,offsetBeforeScroll,keyboardLiftBehavior,actualOpenShift}=this.__closure;if(freeze.value){return;}if(e.height>0){targetKeyboardHeight.value=e.height;closing.value=false;}else{closing.value=true;}const effective=getEffectiveHeight(e.height,targetKeyboardHeight.value,offset);const atEnd=isScrollAtEnd(scroll.value,layout.value.height,size.value.height,inverted);const visibleFraction=getVisibleMinimumPaddingFraction(scroll.value,layout.value.height,size.value.height,blankSpace.value,inverted);const minimumPaddingAbsorbed=visibleFraction>=1?getMinimumPaddingAbsorbed(blankSpace.value,extraContentPadding.value):0;const scrollEffective=getScrollEffective(effective,minimumPaddingAbsorbed);if(inverted&&e.duration===-1){return;}else if(e.height>0){minimumPaddingFractionOnOpen.value=visibleFraction>=1?1:0;padding.value=effective;offsetBeforeScroll.value=scroll.value;if(!inverted&&keyboardLiftBehavior==="whenAtEnd"&&!atEnd){offsetBeforeScroll.value=-1;}else if(!inverted&&scrollEffective===0){offsetBeforeScroll.value=-1;}else if(inverted&&scrollEffective===0){offsetBeforeScroll.value=scroll.value;}}else{if(inverted){offsetBeforeScroll.value=scroll.value;}else{if(offsetBeforeScroll.value!==-1){offsetBeforeScroll.value=scroll.value-actualOpenShift.value;}}}}'}; object = {code: 'function pnpm_indexTs3(e){const{freeze,currentHeight,inverted,getEffectiveHeight,targetKeyboardHeight,offset,getMinimumPaddingAbsorbed,blankSpace,extraContentPadding,minimumPaddingFractionOnOpen,getScrollEffective,isScrollAtEnd,offsetBeforeScroll,layout,size,keyboardLiftBehavior,padding,scrollTo,scrollViewRef,shouldShiftContent,closing,clampScrollIfNeeded,scroll,clampedScrollTarget,actualOpenShift}=this.__closure;if(freeze.value){return;}currentHeight.value=e.height;if(inverted){if(e.duration===-1){return;}const effective=getEffectiveHeight(e.height,targetKeyboardHeight.value,offset);const minimumPaddingAbsorbed=getMinimumPaddingAbsorbed(blankSpace.value,extraContentPadding.value)*minimumPaddingFractionOnOpen.value;const scrollEffective=getScrollEffective(effective,minimumPaddingAbsorbed);const actualTotalPadding=Math.max(blankSpace.value,effective+extraContentPadding.value);const wasAtEnd=isScrollAtEnd(offsetBeforeScroll.value,layout.value.height,size.value.height,inverted);if(keyboardLiftBehavior==="never"&&wasAtEnd&&effective0){return;}scrollTo(scrollViewRef,0,0,false);return;}if(!shouldShiftContent(keyboardLiftBehavior,wasAtEnd)){if(closing.value&&effective0){return;}if(keyboardLiftBehavior==="persistent"){const currentShift=offsetBeforeScroll.value+padding.value-scroll.value;if(effective0&&offsetBeforeScroll.value!==-1){actualOpenShift.value=scroll.value-offsetBeforeScroll.value;}}'}; exports.useChatKeyboard = useChatKeyboard; function useChatKeyboard(a0, {inverted, keyboardLiftBehavior, freeze, offset, blankSpace, extraContentPadding}) { // fn#19955, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1966:5501, offset: 0x00eba03d, size: 1077 bytes, params: 3, frame: 42 const env0_0 = a0; const freeze2 = freeze; const offset3 = offset; const blankSpace2 = blankSpace; const extraContentPadding2 = extraContentPadding; const value2 = (Module01610Module).useSharedValue(0); const value3 = (Module01610Module).useSharedValue(0); const value4 = (Module01610Module).useSharedValue(0); const value5 = (Module01610Module).useSharedValue(0); const value6 = (Module01610Module).useSharedValue(false); const value7 = (Module01610Module).useSharedValue(0); const value8 = (Module01610Module).useSharedValue(0); const value9 = (Module01821)(a0); const layout = value9.layout; const size = value9.size; const offset2 = value9.offset; const onLayout = value9.onLayout; const onContentSizeChange = value9.onContentSizeChange; let closure = clampScrollIfNeeded; let object = {size: size, layout: layout, scroll: offset2}; const scrollTo = (Module01610Module).scrollTo; object.scrollTo = scrollTo; object.scrollViewRef = a0; closure.__closure = object; closure.__workletHash = 2908292579657; closure.__initData = freeze2; const useKeyboardHandler = moduleValue82.useKeyboardHandler; object = {}; const onStart_199572 = onStart_19957; const object2 = {freeze: freeze, targetKeyboardHeight: value5, closing: value6}; const getEffectiveHeight = (require(1840) /* metro dependency 1840 */).getEffectiveHeight; object2.getEffectiveHeight = getEffectiveHeight; object2.offset = offset; const isScrollAtEnd = (require(1840) /* metro dependency 1840 */).isScrollAtEnd; object2.isScrollAtEnd = isScrollAtEnd; object2.scroll = offset2; object2.layout = layout; object2.size = size; object2.inverted = inverted; const getVisibleMinimumPaddingFraction = (require(1840) /* metro dependency 1840 */).getVisibleMinimumPaddingFraction; object2.getVisibleMinimumPaddingFraction = getVisibleMinimumPaddingFraction; object2.blankSpace = blankSpace; const getMinimumPaddingAbsorbed = (require(1840) /* metro dependency 1840 */).getMinimumPaddingAbsorbed; object2.getMinimumPaddingAbsorbed = getMinimumPaddingAbsorbed; object2.extraContentPadding = extraContentPadding; const getScrollEffective = (require(1840) /* metro dependency 1840 */).getScrollEffective; object2.getScrollEffective = getScrollEffective; object2.minimumPaddingFractionOnOpen = value7; object2.padding = value2; object2.offsetBeforeScroll = value4; object2.keyboardLiftBehavior = keyboardLiftBehavior; object2.actualOpenShift = value8; onStart_199572.__closure = object2; onStart_199572.__workletHash = 16814590881167; onStart_199572.__initData = offset3; object.onStart = onStart_199572; const onMove_199582 = onMove_19958; const object3 = {freeze: freeze, currentHeight: value3, inverted: inverted}; object3.getEffectiveHeight = getEffectiveHeight; object3.targetKeyboardHeight = value5; object3.offset = offset; object3.getMinimumPaddingAbsorbed = getMinimumPaddingAbsorbed; object3.blankSpace = blankSpace; object3.extraContentPadding = extraContentPadding; object3.minimumPaddingFractionOnOpen = value7; object3.getScrollEffective = getScrollEffective; object3.isScrollAtEnd = isScrollAtEnd; object3.offsetBeforeScroll = value4; object3.layout = layout; object3.size = size; object3.keyboardLiftBehavior = keyboardLiftBehavior; object3.padding = value2; object3.scrollTo = scrollTo; object3.scrollViewRef = a0; object3.shouldShiftContent = (require(1840) /* metro dependency 1840 */).shouldShiftContent; object3.closing = value6; object3.clampScrollIfNeeded = closure; object3.scroll = offset2; object3.clampedScrollTarget = (require(1840) /* metro dependency 1840 */).clampedScrollTarget; object3.actualOpenShift = value8; onMove_199582.__closure = object3; onMove_199582.__workletHash = 6317221970795; onMove_199582.__initData = blankSpace2; object.onMove = onMove_199582; closure = onEnd_19959; closure.__closure = {freeze: freeze, getEffectiveHeight: getEffectiveHeight, targetKeyboardHeight: value5, offset: offset, padding: value2, offsetBeforeScroll: value4, actualOpenShift: value8, scroll: offset2}; closure.__workletHash = 1904796451086; closure.__initData = extraContentPadding2; object.onEnd = closure; Reflect.apply(useKeyboardHandler, moduleValue82, [object, [inverted, keyboardLiftBehavior, offset]]); return {padding: value2, currentHeight: value3, contentOffsetY: undefined, scroll: offset2, layout: layout, size: size, onLayout: onLayout, onContentSizeChange: onContentSizeChange}; function clampScrollIfNeeded(a0, a1) { // fn#19956, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1966:5926, owner: useChatKeyboard.clampScrollIfNeeded, offset: 0x00eba472, size: 134 bytes, params: 3, frame: 18 var value7; const value = a0; const value2 = a1; const r5 = value2 === undefined ? value : value2; const Math = global.Math; const value5 = Math.max(size.value.height - layout.value.height + r5, 0); if (offset.value > value5) { value7 = environment.__proto__; (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, value5, false); } } function useChatKeyboardOnStart(a0) { // fn#19957, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1966:6234, owner: useChatKeyboard.onStart, offset: 0x00eba4f8, size: 606 bytes, params: 2, frame: 30 var r9; var height; var value3; var binding; var value4; var moduleValue; var getEffectiveHeight; var offsetBinding; var value6; var moduleValue2; var isScrollAtEnd; var value7; var layoutBinding; var sizeBinding; var height2; var invertedBinding; var isScrollAtEnd2; var moduleValue3; var getVisibleMinimumPaddingFraction; var value10; var value14; var value15; var moduleValue4; var scrollEffective; if (!freeze.value) { height = a0.height; value3 = 0; if (height > value3) { env0_10.value = a0.height; env0_11.value = false; } else { env0_11.value = true; } value4 = environment.__proto__; moduleValue = require(1840) /* metro dependency 1840 */; getEffectiveHeight = moduleValue.getEffectiveHeight; height = a0.height; value6 = Reflect.apply(getEffectiveHeight, moduleValue, [height, env0_10.value, offset]); moduleValue2 = require(1840) /* metro dependency 1840 */; isScrollAtEnd = moduleValue2.isScrollAtEnd; offsetBinding = offset; value7 = offsetBinding.value; layoutBinding = layout; height = layoutBinding.value.height; sizeBinding = size; height2 = sizeBinding.value.height; invertedBinding = inverted; isScrollAtEnd2 = Reflect.apply(isScrollAtEnd, moduleValue2, [value7, height, height2, invertedBinding]); moduleValue3 = require(1840) /* metro dependency 1840 */; getVisibleMinimumPaddingFraction = moduleValue3.getVisibleMinimumPaddingFraction; value10 = offsetBinding.value; height = layoutBinding.value.height; value14 = Reflect.apply(getVisibleMinimumPaddingFraction, moduleValue3, [value10, height, sizeBinding.value.height, blankSpace.value, invertedBinding]); value15 = 1; if (value14 >= value15) { moduleValue4 = require(1840) /* metro dependency 1840 */; r9 = moduleValue4.getMinimumPaddingAbsorbed(blankSpace.value, extraContentPadding.value); } else { r9 = value3; } scrollEffective = (require(1840) /* metro dependency 1840 */).getScrollEffective(value6, r9); invertedBinding = inverted; if (!(invertedBinding && a0.duration === -1)) { if (a0.height > value3) { binding = env0_12; binding.value = value14 >= value15 ? value15 : value3; env0_7.value = value6; binding = env0_9; binding.value = offset.value; if (inverted) { if (inverted) { if (inverted && value3 === scrollEffective) { env0_9.value = offset.value; } } else if (value3 !== scrollEffective) { if (inverted && value3 === scrollEffective) { env0_9.value = offset.value; } } else { env0_9.value = -1; } } else if (keyboardLiftBehavior !== 'whenAtEnd') { if (inverted) { if (inverted && value3 === scrollEffective) { env0_9.value = offset.value; } } else if (value3 !== scrollEffective) { if (inverted && value3 === scrollEffective) { env0_9.value = offset.value; } } else { env0_9.value = -1; } } else if (isScrollAtEnd2) { if (inverted) { if (inverted && value3 === scrollEffective) { env0_9.value = offset.value; } } else if (value3 !== scrollEffective) { if (inverted && value3 === scrollEffective) { env0_9.value = offset.value; } } else { env0_9.value = -1; } } else { env0_9.value = -1; } } else { invertedBinding = inverted; binding = env0_9; if (invertedBinding) { binding.value = offset.value; } else if (binding.value !== -1) { env0_9.value = offset.value - env0_13.value; } } } } } function useChatKeyboardOnMove(a0) { // fn#19958, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1966:7400, owner: useChatKeyboard.onMove, offset: 0x00eba756, size: 1341 bytes, params: 2, frame: 27 var getEffectiveHeight; var getMinimumPaddingAbsorbed; var blankSpaceBinding; var extraContentPaddingBinding; var Math; var moduleValue4; var moduleValue5; var value22; var scrollTo; var value26; var value29; var moduleValue7; var value31; var moduleValue8; var value33; var moduleValue9; var value34; var value38; var scrollEffective; var value42; var moduleValue11; var isScrollAtEnd; var value43; var isScrollAtEnd2; var moduleValue12; if (!freeze.value) { var binding = env0_8; var height = a0.height; binding.value = height; if (inverted) { if (a0.duration === -1) { return undefined; } value31 = environment.__proto__; moduleValue8 = require(1840) /* metro dependency 1840 */; getEffectiveHeight = moduleValue8.getEffectiveHeight; height = a0.height; value33 = Reflect.apply(getEffectiveHeight, moduleValue8, [height, env0_10.value, offset]); moduleValue9 = require(1840) /* metro dependency 1840 */; getMinimumPaddingAbsorbed = moduleValue9.getMinimumPaddingAbsorbed; blankSpaceBinding = blankSpace; value34 = blankSpaceBinding.value; extraContentPaddingBinding = extraContentPadding; value38 = Reflect.apply(getMinimumPaddingAbsorbed, moduleValue9, [value34, extraContentPaddingBinding.value]) * env0_12.value; scrollEffective = (require(1840) /* metro dependency 1840 */).getScrollEffective(value33, value38); Math = global.Math; value42 = Math.max(blankSpaceBinding.value, value33 + extraContentPaddingBinding.value); moduleValue11 = require(1840) /* metro dependency 1840 */; isScrollAtEnd = moduleValue11.isScrollAtEnd; value43 = env0_9.value; height = layout.value.height; isScrollAtEnd2 = Reflect.apply(isScrollAtEnd, moduleValue11, [value43, height, size.value.height, inverted]); if (keyboardLiftBehavior !== 'never') { moduleValue12 = require(1840) /* metro dependency 1840 */; if (moduleValue12.shouldShiftContent(keyboardLiftBehavior, isScrollAtEnd2)) { if (scrollEffective !== 0) { if (keyboardLiftBehavior !== 'persistent') { (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, env0_9.value + env0_7.value - scrollEffective, false); return undefined; } if (value33 < env0_9.value + env0_7.value - offset.value) { if (isScrollAtEnd2) { env0_7.value = value33; (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, 0, false); } else if (env0_11.value) { env0_7.value = value33; clampScrollIfNeeded(value33, value42); } return undefined; } (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, env0_9.value + env0_7.value - scrollEffective, false); return undefined; } if (value38 > 0) { return undefined; } if (keyboardLiftBehavior !== 'persistent') { (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, env0_9.value + env0_7.value - scrollEffective, false); return undefined; } if (value33 < env0_9.value + env0_7.value - offset.value) { if (isScrollAtEnd2) { env0_7.value = value33; (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, 0, false); } else if (env0_11.value) { env0_7.value = value33; clampScrollIfNeeded(value33, value42); } return undefined; } (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, env0_9.value + env0_7.value - scrollEffective, false); return undefined; } if (env0_11.value && value33 < env0_7.value) { env0_7.value = value33; clampScrollIfNeeded(value33, value42); } return undefined; } if (isScrollAtEnd2) { if (value33 < env0_7.value) { env0_7.value = value33; if (scrollEffective !== 0) { (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, 0, false); return undefined; } if (value38 > 0) { return undefined; } (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, 0, false); return undefined; } moduleValue12 = require(1840) /* metro dependency 1840 */; if (moduleValue12.shouldShiftContent(keyboardLiftBehavior, isScrollAtEnd2)) { if (scrollEffective !== 0) { if (keyboardLiftBehavior !== 'persistent') { (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, env0_9.value + env0_7.value - scrollEffective, false); return undefined; } if (value33 < env0_9.value + env0_7.value - offset.value) { if (isScrollAtEnd2) { env0_7.value = value33; (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, 0, false); } else if (env0_11.value) { env0_7.value = value33; clampScrollIfNeeded(value33, value42); } return undefined; } (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, env0_9.value + env0_7.value - scrollEffective, false); return undefined; } if (value38 > 0) { return undefined; } if (keyboardLiftBehavior !== 'persistent') { (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, env0_9.value + env0_7.value - scrollEffective, false); return undefined; } if (value33 < env0_9.value + env0_7.value - offset.value) { if (isScrollAtEnd2) { env0_7.value = value33; (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, 0, false); } else if (env0_11.value) { env0_7.value = value33; clampScrollIfNeeded(value33, value42); } return undefined; } (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, env0_9.value + env0_7.value - scrollEffective, false); return undefined; } if (env0_11.value && value33 < env0_7.value) { env0_7.value = value33; clampScrollIfNeeded(value33, value42); } return undefined; } moduleValue12 = require(1840) /* metro dependency 1840 */; if (moduleValue12.shouldShiftContent(keyboardLiftBehavior, isScrollAtEnd2)) { if (scrollEffective !== 0) { if (keyboardLiftBehavior !== 'persistent') { (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, env0_9.value + env0_7.value - scrollEffective, false); return undefined; } if (value33 < env0_9.value + env0_7.value - offset.value) { if (isScrollAtEnd2) { env0_7.value = value33; (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, 0, false); } else if (env0_11.value) { env0_7.value = value33; clampScrollIfNeeded(value33, value42); } return undefined; } (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, env0_9.value + env0_7.value - scrollEffective, false); return undefined; } if (value38 > 0) { return undefined; } if (keyboardLiftBehavior !== 'persistent') { (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, env0_9.value + env0_7.value - scrollEffective, false); return undefined; } if (value33 < env0_9.value + env0_7.value - offset.value) { if (isScrollAtEnd2) { env0_7.value = value33; (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, 0, false); } else if (env0_11.value) { env0_7.value = value33; clampScrollIfNeeded(value33, value42); } return undefined; } (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, env0_9.value + env0_7.value - scrollEffective, false); return undefined; } if (env0_11.value && value33 < env0_7.value) { env0_7.value = value33; clampScrollIfNeeded(value33, value42); } return undefined; } var moduleValue = require(1840) /* metro dependency 1840 */; getEffectiveHeight = moduleValue.getEffectiveHeight; height = a0.height; var value5 = Reflect.apply(getEffectiveHeight, moduleValue, [height, env0_10.value, offset]); var moduleValue2 = require(1840) /* metro dependency 1840 */; getMinimumPaddingAbsorbed = moduleValue2.getMinimumPaddingAbsorbed; blankSpaceBinding = blankSpace; var value6 = blankSpaceBinding.value; extraContentPaddingBinding = extraContentPadding; var scrollEffective2 = (require(1840) /* metro dependency 1840 */).getScrollEffective(value5, Reflect.apply(getMinimumPaddingAbsorbed, moduleValue2, [value6, extraContentPaddingBinding.value]) * env0_12.value); Math = global.Math; var value14 = Math.max(blankSpaceBinding.value, value5 + extraContentPaddingBinding.value); if (keyboardLiftBehavior !== 'never') { moduleValue4 = require(1840) /* metro dependency 1840 */; if (moduleValue4.shouldShiftContent(keyboardLiftBehavior, true)) { if (env0_9.value === -1) { if (env0_11.value) { clampScrollIfNeeded(value5, value14); } return undefined; } if (keyboardLiftBehavior !== 'persistent') { moduleValue5 = require(1840) /* metro dependency 1840 */; value22 = moduleValue5.clampedScrollTarget(env0_9.value, scrollEffective2, size.value.height, layout.value.height, value14); (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, value22, false); if (!env0_11.value) { env0_13.value = value22 - env0_9.value; } return undefined; } if (env0_11.value) { value26 = env0_9.value + env0_7.value; Math = global.Math; value29 = Math.max(size.value.height - layout.value.height + value14, 0); moduleValue7 = require(1610) /* metro dependency 1610 */; scrollTo = moduleValue7.scrollTo; binding = env0_0; Math = global.Math; Reflect.apply(scrollTo, moduleValue7, [binding, 0, Math.min(value26, value29), false]); return undefined; } moduleValue5 = require(1840) /* metro dependency 1840 */; value22 = moduleValue5.clampedScrollTarget(env0_9.value, scrollEffective2, size.value.height, layout.value.height, value14); (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, value22, false); if (!env0_11.value) { env0_13.value = value22 - env0_9.value; } return undefined; } return undefined; } if (env0_11.value) { if (value5 < env0_7.value) { clampScrollIfNeeded(value5, value14); return undefined; } moduleValue4 = require(1840) /* metro dependency 1840 */; if (moduleValue4.shouldShiftContent(keyboardLiftBehavior, true)) { if (env0_9.value === -1) { if (env0_11.value) { clampScrollIfNeeded(value5, value14); } return undefined; } if (keyboardLiftBehavior !== 'persistent') { moduleValue5 = require(1840) /* metro dependency 1840 */; value22 = moduleValue5.clampedScrollTarget(env0_9.value, scrollEffective2, size.value.height, layout.value.height, value14); (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, value22, false); if (!env0_11.value) { env0_13.value = value22 - env0_9.value; } return undefined; } if (env0_11.value) { value26 = env0_9.value + env0_7.value; Math = global.Math; value29 = Math.max(size.value.height - layout.value.height + value14, 0); moduleValue7 = require(1610) /* metro dependency 1610 */; scrollTo = moduleValue7.scrollTo; binding = env0_0; Math = global.Math; Reflect.apply(scrollTo, moduleValue7, [binding, 0, Math.min(value26, value29), false]); return undefined; } moduleValue5 = require(1840) /* metro dependency 1840 */; value22 = moduleValue5.clampedScrollTarget(env0_9.value, scrollEffective2, size.value.height, layout.value.height, value14); (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, value22, false); if (!env0_11.value) { env0_13.value = value22 - env0_9.value; } return undefined; } return undefined; } moduleValue4 = require(1840) /* metro dependency 1840 */; if (moduleValue4.shouldShiftContent(keyboardLiftBehavior, true)) { if (env0_9.value === -1) { if (env0_11.value) { clampScrollIfNeeded(value5, value14); } return undefined; } if (keyboardLiftBehavior !== 'persistent') { moduleValue5 = require(1840) /* metro dependency 1840 */; value22 = moduleValue5.clampedScrollTarget(env0_9.value, scrollEffective2, size.value.height, layout.value.height, value14); (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, value22, false); if (!env0_11.value) { env0_13.value = value22 - env0_9.value; } return undefined; } if (env0_11.value) { value26 = env0_9.value + env0_7.value; Math = global.Math; value29 = Math.max(size.value.height - layout.value.height + value14, 0); moduleValue7 = require(1610) /* metro dependency 1610 */; scrollTo = moduleValue7.scrollTo; binding = env0_0; Math = global.Math; Reflect.apply(scrollTo, moduleValue7, [binding, 0, Math.min(value26, value29), false]); return undefined; } moduleValue5 = require(1840) /* metro dependency 1840 */; value22 = moduleValue5.clampedScrollTarget(env0_9.value, scrollEffective2, size.value.height, layout.value.height, value14); (require(1610) /* metro dependency 1610 */).scrollTo(env0_0, 0, value22, false); if (!env0_11.value) { env0_13.value = value22 - env0_9.value; } return undefined; } } } function useChatKeyboardOnEnd(a0) { // fn#19959, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1966:9387, owner: useChatKeyboard.onEnd, offset: 0x00ebac93, size: 154 bytes, params: 2, frame: 16 var value3; var moduleValue; var value5; if (!freeze.value) { value3 = environment.__proto__; moduleValue = require(1840) /* metro dependency 1840 */; value5 = moduleValue.getEffectiveHeight(a0.height, env0_10.value, offset); env0_7.value = value5; if (value5 > 0 && env0_9.value !== -1) { env0_13.value = offset.value - env0_9.value; } } } } } global.__d(_fun19954, 1839, [1610, 1821, 1804, 1840]) /* metro module 1839, dependencies: [1610, 1821, 1804, 1840] */;