Files
discord-decomp/sources/modules/chat/native/ChatViewWrapperAnimatedKeyboard.tsx
T
2026-07-27 16:20:00 +03:00

157 lines
9.0 KiB
TypeScript

/* Metro module 11279; source: modules/chat/native/ChatViewWrapperAnimatedKeyboard.tsx; dependencies: [31, 27, 33, 4017, 4507, 11280, 4504, 5466, 11284, 11286, 6517, 11287, 2] */
function _fun86120(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#86120, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11465:6, offset: 0x01f88780, size: 338 bytes, params: 8, frame: 22
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const value = importAll(31) /* metro dependency 31 */;
const env0_4 = (require(27) /* metro dependency 27 */).View;
const value2 = require(33) /* metro dependency 33 */;
const env0_5 = value2.jsx;
const env0_6 = value2.jsxs;
const Easing = (require(4017) /* metro dependency 4017: ReanimatedRexport */).Easing;
const value3 = Easing.bezier(0.2, 0, 0, 1);
object2 = {};
object2.duration = (require(4507) /* metro dependency 4507: timingPresets */).timingStandardDuration;
object2.easing = value3;
object2 = {code: 'function ChatViewWrapperAnimatedKeyboardTsx1(){const{animatedHeight}=this.__closure;return animatedHeight.get();}'};
object2 = {code: 'function ChatViewWrapperAnimatedKeyboardTsx2(height,heightPrev){const{animatedAdjustedMargin,animatedAdjustedMarginPending}=this.__closure;if(heightPrev==null){return;}if(height<heightPrev){animatedAdjustedMargin.set(height);animatedAdjustedMarginPending.set(-1);}else{animatedAdjustedMarginPending.set(height);}}'};
object2 = {code: "function ChatViewWrapperAnimatedKeyboardTsx3(){const{animatedAdjustedMargin,withTiming,animatedHeight,INSET_ANIMATION_CONFIG2,animatedAdjustedMarginPending}=this.__closure;return{flex:1,marginTop:animatedAdjustedMargin.get(),transform:[{translateY:withTiming(-animatedHeight.get(),INSET_ANIMATION_CONFIG2,'respect-motion-settings',function(finished){if(!finished){return;}if(animatedAdjustedMarginPending.get()!==-1){animatedAdjustedMargin.set(animatedAdjustedMarginPending.get());animatedAdjustedMarginPending.set(-1);}})}]};}"};
object2 = {code: 'function ChatViewWrapperAnimatedKeyboardTsx4(finished){const{animatedAdjustedMarginPending,animatedAdjustedMargin}=this.__closure;if(!finished){return;}if(animatedAdjustedMarginPending.get()!==-1){animatedAdjustedMargin.set(animatedAdjustedMarginPending.get());animatedAdjustedMarginPending.set(-1);}}'};
const env0_12 = value.memo(_fun86121);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/chat/native/ChatViewWrapperAnimatedKeyboard.tsx');
exports.default = ChatViewWrapperAnimatedKeyboard;
}
function _fun86121({channelId}) { // fn#86121, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11465:1551, offset: 0x01f888d2, size: 124 bytes, params: 2, frame: 17
return (
<View
style={[(importDefault(11284) /* metro dependency 11284: useChannelSafeAreaBottomStyles */)(channelId),
env0_3.useMemo(_fun86122,
[(importDefault(5466) /* metro dependency 5466: useCustomKeyboardHeight */)()])]}
/>
);
}
function ChatViewWrapperAnimatedKeyboard({channelId, children, stickyHeader, style}) { // fn#86123, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11465:1814, offset: 0x01f88974, size: 235 bytes, params: 2, frame: 24
const value2 = (importDefault(11286) /* metro dependency 11286: useChatViewPointerEventsAndroid */)(channelId);
const value3 = useSafeAreaInsetAnimatedStyle();
const LayerScope = (require(6517) /* metro dependency 6517: LayerScopeNative */).LayerScope;
const StickyWrapper = (require(11287) /* metro dependency 11287: StickyWrapperNative */).StickyWrapper;
const View2 = (importDefault(4017) /* metro dependency 4017: ReanimatedRexport */).View;
return (
<LayerScope>
<StickyWrapper
header={stickyHeader}
style={style}
pointerEvents={value2}
>
<View2 style={value3}>
<View style={style}>
{children}
</View>
{((Component) => <Component channelId={channelId} />)(env0_12)}
</View2>
</StickyWrapper>
</LayerScope>
);
}
function _fun86122() { // fn#86122, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11465:1617, offset: 0x01f8894e, size: 38 bytes, params: 1, frame: 3
const binding = env0_0;
return {'position': 'absolute', 'bottom': null, 'height': null, 'right': 0, 'left': 0, bottom: -binding,
height: binding};
}
function useSafeAreaInsetAnimatedStyle() { // fn#86124, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11465:1923, owner: ChatViewWrapperAnimatedKeyboard.useSafeAreaInsetAnimatedStyle, offset: 0x01f88a5f, size: 333 bytes, params: 1, frame: 24
var object2;
const value2 = (importDefault(11280) /* metro dependency 11280: useChannelSafeAreaHeightSharedValueAndroid */)();
const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */;
const useSharedValue = reanimatedRexportModule.useSharedValue;
const get = value2.get;
const value3 = Reflect.apply(useSharedValue, reanimatedRexportModule, [Reflect.apply(get, value2, [])]);
const value4 = reanimatedRexportModule.useSharedValue(-1);
const moduleValue3 = reanimatedRexportModule;
const useAnimatedReaction = moduleValue3.useAnimatedReaction;
let closure = useSafeAreaInsetAnimatedStyleN;
closure.__closure = {animatedHeight: value2};
closure.__workletHash = 9219066704490;
closure.__initData = env1_8;
const closure2 = useSafeAreaInsetAnimatedStyleT;
closure2.__closure = {animatedAdjustedMargin: value3, animatedAdjustedMarginPending: value4};
closure2.__workletHash = 15141457454312;
closure2.__initData = env1_9;
Reflect.apply(useAnimatedReaction, moduleValue3, [closure, closure2]);
const moduleValue4 = reanimatedRexportModule;
const useAnimatedStyle = moduleValue4.useAnimatedStyle;
closure = useSafeAreaInsetAnimatedStyleS;
object2 = {animatedAdjustedMargin: value3};
object2.withTiming = (require(4504) /* metro dependency 4504: timing */).withTiming;
object2.animatedHeight = value2;
object2.INSET_ANIMATION_CONFIG2 = env1_7;
object2.animatedAdjustedMarginPending = value4;
closure.__closure = object2;
closure.__workletHash = 7205645695043;
closure.__initData = env1_10;
return Reflect.apply(useAnimatedStyle, moduleValue4, [closure]);
}
function useSafeAreaInsetAnimatedStyleT(a0, a1) { // fn#86126, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11465:2182, owner: ChatViewWrapperAnimatedKeyboard.useSafeAreaInsetAnimatedStyle.t, offset: 0x01f88bac, size: 76 bytes, params: 3, frame: 12
var binding;
if (a1 != null) {
if (a0 < a1) {
binding = env0_1;
binding.set(a0);
binding = env0_2;
binding.set(-1);
} else {
env0_2.set(a0);
}
}
}
function useSafeAreaInsetAnimatedStyleS() { // fn#86127, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11465:2390, owner: ChatViewWrapperAnimatedKeyboard.useSafeAreaInsetAnimatedStyle.s, offset: 0x01f88bf8, size: 173 bytes, params: 1, frame: 22
const object2 = {flex: 1};
const binding = env0_1;
let get = binding.get;
object2.marginTop = Reflect.apply(get, binding, []);
const timingModule = require(4504) /* metro dependency 4504: timing */;
const withTiming = timingModule.withTiming;
const binding2 = env0_0;
get = binding2.get;
const value3 = -Reflect.apply(get, binding2, []);
const binding3 = env2_7;
const closure = sT;
closure.__closure = {animatedAdjustedMarginPending: env0_2, animatedAdjustedMargin: binding};
closure.__workletHash = 16224255032954;
closure.__initData = env2_11;
object2.transform = [{translateY: Reflect.apply(withTiming, timingModule, [value3, binding3,
'respect-motion-settings', closure])}];
return object2;
}
function sT(a0) { // fn#86128, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11465:2509, owner: ChatViewWrapperAnimatedKeyboard.useSafeAreaInsetAnimatedStyle.s.t, offset: 0x01f88ca5, size: 85 bytes, params: 2, frame: 12
var r0;
var binding;
var set;
var binding2;
let value = a0;
if (value) {
value = environment.__proto__;
value = env1_2.get();
value = value !== -1;
r0 = value;
} else {
r0 = value;
}
if (r0) {
value = environment.__proto__;
binding = env1_1;
set = binding.set;
binding2 = env1_2;
Reflect.apply(set, binding, [binding2.get()]);
binding2.set(-1);
}
}