/* Metro module 381; source: unknown; dependencies: [57, 31, 382, 79, 373, 348, 326, 347, 383] */ function _fun5668(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#5668, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:6, offset: 0x00ce2704, size: 190 bytes, params: 8, frame: 19 let env0_0 = require; const reduceAnimatedProps = function(a0, a1) { var Object = global.Object; return Object.assign({}, a0.__getValueWithStaticProps(a1), {collapsable: false}); }; const useAnimatedPropsLifecycleWithPrevNodeRef = function(a0) { var env0_0 = a0; var env0_1 = useRef(null); var env0_2 = useRef(false); useInsertionEffect(_fun5673, []); useInsertionEffect(_fun5675, [a0]); }; const useAnimatedPropsLifecycleWithCleanupInMicrotask = function(a0) { var env0_0 = a0; var env0_1 = useRef(false); useInsertionEffect(_fun5678, [a0]); }; let Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_4 = importDefault(57) /* metro dependency 57 */; const value = require(31) /* metro dependency 31 */; const env0_5 = value.useCallback; const env0_6 = value.useEffect; const env0_7 = value.useInsertionEffect; const env0_8 = value.useReducer; const env0_9 = value.useRef; exports.default = createAnimatedPropsHook; } function addListenersToPropsValue(a0, a1) { // fn#5670, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:302, offset: 0x00ce27f4, size: 201 bytes, params: 3, frame: 21 var environment; var r6; var r3; var value; var Array; var isArray; var Object; var properties; var properties2; var properties3; var propertyName; var propertyName2; var addListenersToPropsValueBinding; var iterator; var iterator2; var item; var item2; var error; var addListener; var push; exceptionSkip11: while (true) { exceptionLanding11: while (true) { value = environment; if (a0 instanceof (importDefault(347) /* metro dependency 347 */)) { addListener = a0.addListener; value = Reflect.apply(addListener, a0, [function() { }]); push = a1.push; Reflect.apply(push, a1, [{propValue: a0, listenerId: value}]); } else { Array = global.Array; isArray = Array.isArray; if (Reflect.apply(isArray, Array, [a0])) { iterator = a0[Symbol.iterator](); iterator2 = iterator.next; for (r3 = iterator; true; r3 = item2) { item2 = Reflect.apply(iterator2, r3, []); item = item2.value; item2 = item2.done ? undefined : r3; if (item2 === undefined) { break; } try { addListenersToPropsValueBinding = addListenersToPropsValue; } catch (error) { break exceptionLanding11; } try { addListenersToPropsValueBinding(item, a1); } catch (error) { break exceptionLanding11; } } } else { Object = global.Object; if (!(a0 instanceof Object)) { break; } properties = Object.keys(a0); properties2 = 0; properties3 = properties.length; if (properties === undefined) { break; } for (r6 = properties2; true; r6 = propertyName2) { propertyName = properties[r6]; propertyName2 = r6 + 1; if (propertyName === undefined) { break; } addListenersToPropsValue(a0[propertyName], a1); } } } return undefined; break exceptionSkip11; } try { item2.return(); } catch { } throw error; break exceptionSkip11; } } function useAnimatedPropsLifecycleWithPrevNodeRef(a0) { // fn#5672, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:637, offset: 0x00ce28bd, size: 88 bytes, params: 2, frame: 16 const env0_0 = a0; const env0_1 = useRef(null); const env0_2 = useRef(false); useInsertionEffect(_fun5673, []); useInsertionEffect(_fun5675, [a0]); } function useAnimatedPropsLifecycleWithCleanupInMicrotask(a0) { // fn#5677, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:956, offset: 0x00ce29bd, size: 54 bytes, params: 2, frame: 15 const env0_0 = a0; const env0_1 = useRef(false); useInsertionEffect(_fun5678, [a0]); } function createAnimatedPropsHook(a0) { // fn#5681, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:1198, offset: 0x00ce2a6f, size: 86 bytes, params: 2, frame: 15 const env0_0 = a0; const env0_1 = (require(382) /* metro dependency 382 */).createAnimatedPropsMemoHook(a0); const env0_2 = (importAll(79) /* metro dependency 79 */).shouldUseSetNativePropsInFabric(); return useAnimatedProps; } function _fun5673() { // fn#5673, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:715, offset: 0x00ce2915, size: 24 bytes, params: 1, frame: 2 env0_2.current = false; return _fun5674; } function _fun5675() { // fn#5675, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:780, offset: 0x00ce2940, size: 76 bytes, params: 1, frame: 11 let binding = env0_0; binding.__attach(); let current = env0_1.current; if (current != null) { binding = env0_1; current = binding.current; current.__restoreDefaultValues(); current.__detach(); binding.current = null; } return _fun5676; } function _fun5678() { // fn#5678, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:1031, offset: 0x00ce29f3, size: 38 bytes, params: 1, frame: 10 env0_1.current = true; env0_0.__attach(); return _fun5679; } function useAnimatedProps(a0) { // fn#5682, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:1330, owner: createAnimatedPropsHook.useAnimatedProps, offset: 0x00ce2ac5, size: 239 bytes, params: 2, frame: 17 var environment; const env0_0 = a0; const value = environment.__proto__; const env0_1 = env1_4(useReducer(function(a0) { return a0 + 1; }, 0), 2)[1]; const env0_2 = useRef(null); const env0_3 = useRef(null); const value5 = env0_1(_fun5684, a0); useEffect(_fun5686); const moduleValue = importAll(79) /* metro dependency 79 */; (moduleValue.scheduleAnimatedCleanupInMicrotask() ? useAnimatedPropsLifecycleWithCleanupInMicrotask : useAnimatedPropsLifecycleWithPrevNodeRef)(value5); let items2 = [value5]; items2 = [reduceAnimatedProps(value5, a0), (importDefault(326) /* metro dependency 326 */)(useCallback(_fun5689, items2))]; return items2; } function _fun5674() { // fn#5674, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:746, offset: 0x00ce292d, size: 19 bytes, params: 1, frame: 2 env1_2.current = true; } function _fun5676() { // fn#5676, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:902, offset: 0x00ce298c, size: 49 bytes, params: 1, frame: 10 if (env1_2.current) { env1_0.__detach(); } else { env1_1.current = env1_0; } } function _fun5679() { // fn#5679, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:1075, offset: 0x00ce2a19, size: 39 bytes, params: 1, frame: 11 env1_1.current = false; global.queueMicrotask(_fun5680); } function _fun5684() { // fn#5684, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:1433, offset: 0x00ce2bc0, size: 68 bytes, params: 1, frame: 15 var environment; let value = environment.__proto__.__proto__; value = importDefault(373) /* metro dependency 373 */; const binding = env0_0; const binding2 = env1_0; const value4 = Object.create(value.prototype, {constructor: {value: value}}); value = new value(binding, _fun5685, binding2); return value instanceof Object ? value : value4; } function _fun5686() { // fn#5686, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:1533, offset: 0x00ce2c2a, size: 148 bytes, params: 1, frame: 15 if (!(importDefault(348) /* metro dependency 348 */).shouldSignalBatch) { (importDefault(348) /* metro dependency 348 */).API.flushQueue(); } var env0_0; if (env0_4.__isNative) { env0_0 = (importDefault(348) /* metro dependency 348 */).nativeEventEmitter.addListener('onUserDrivenAnimationEnded', _fun5687); } return _fun5688; } function _fun5689(a0) { // fn#5689, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:1920, offset: 0x00ce2cee, size: 225 bytes, params: 2, frame: 23 var environment; var getScrollableNode; var r1; var value4; var property; var property2; var __attach; var addListenersToPropsValueBinding; var error; let value = a0; const value2 = undefined; let binding = env0_4; binding.setNativeView(value); env0_2.current = current; reducibleJoin5: while (true) { if (typeof value !== 'object') { r1 = value; break reducibleJoin5; } reducibleJoin3: while (true) { if (value == null) { getScrollableNode = value2; break reducibleJoin3; } getScrollableNode = value.getScrollableNode; break reducibleJoin3; } if (typeof getScrollableNode !== 'function') { r1 = value; break reducibleJoin5; } getScrollableNode = value.getScrollableNode; value = Reflect.apply(getScrollableNode, value, []); r1 = value; break reducibleJoin5; } const items2 = []; const iterator = binding.__getNativeAnimatedEventTuples()[Symbol.iterator](); const iterator2 = iterator.next; value = environment.__proto__.__proto__; let r2 = iterator; let item2 = Reflect.apply(iterator2, r2, []); let item = item2.value; item2 = item2.done ? undefined : r2; reducibleJoin7: while (true) { if (item2 === value2) { return _fun5692; } break reducibleJoin7; } reducibleLoop7: while (true) { try { binding = env2_4; } catch (error) { try { item2.return(); } catch { } throw error; } try { value4 = binding(item, 2); } catch (error) { try { item2.return(); } catch { } throw error; } try { property = value4[0]; } catch (error) { try { item2.return(); } catch { } throw error; } try { property2 = value4[1]; } catch (error) { try { item2.return(); } catch { } throw error; } try { __attach = property2.__attach; } catch (error) { try { item2.return(); } catch { } throw error; } try { Reflect.apply(__attach, property2, [r1, property]); } catch (error) { try { item2.return(); } catch { } throw error; } try { addListenersToPropsValueBinding = addListenersToPropsValue; } catch (error) { try { item2.return(); } catch { } throw error; } try { addListenersToPropsValueBinding(property2, items2); } catch (error) { try { item2.return(); } catch { } throw error; } r2 = item2; item2 = Reflect.apply(iterator2, r2, []); item = item2.value; item2 = item2.done ? undefined : r2; if (item2 === value2) { break reducibleLoop7; } continue reducibleLoop7; } return _fun5692; } function _fun5680() { // fn#5680, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:1115, offset: 0x00ce2a40, size: 47 bytes, params: 1, frame: 10 if (env2_1.current) { env2_0.__restoreDefaultValues(); } env2_0.__detach(); } function _fun5685() { // fn#5685, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:1467, offset: 0x00ce2c04, size: 38 bytes, params: 1, frame: 10 const value = environment.__proto__; return env1_2.current?.(); } function _fun5687(a0) { // fn#5687, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:1700, offset: 0x00ce2cbe, size: 21 bytes, params: 2, frame: 9 env1_4.update(); } function _fun5688() { // fn#5688, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:1727, offset: 0x00ce2cd3, size: 27 bytes, params: 1, frame: 9 const binding = env0_0; if (binding != null) { binding.remove(); } } function current() { // fn#5690, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:1961, offset: 0x00ce2dcf, size: 533 bytes, params: 1, frame: 20 var environment; var r1; var r2; var r3; var moduleValue2; var moduleValue3; var scrollResponder; var value8; var binding3; var value; let binding = env0_0; const value3 = undefined; const isPublicInstance2 = (require(383) /* metro dependency 383 */).isPublicInstance(binding); if (isPublicInstance2) { r2 = isPublicInstance2; } else { moduleValue2 = require(383) /* metro dependency 383 */; r2 = moduleValue2.isPublicInstance(binding == null || binding.getNativeScrollRef == null ? value3 : binding.getNativeScrollRef()); } if (!r2) { moduleValue3 = require(383) /* metro dependency 383 */; isPublicInstance = moduleValue3.isPublicInstance; if (binding == null) { r1 = value3; } else if (binding.getScrollResponder == null) { r1 = value3; } else { scrollResponder = binding.getScrollResponder(); r1 = scrollResponder == null || scrollResponder.getNativeScrollRef == null ? value3 : scrollResponder.getNativeScrollRef(); } r2 = Reflect.apply(isPublicInstance, moduleValue3, [r1]); } if (env1_4.__isNative) { value = !r2; if (r2) { value = importAll(79) /* metro dependency 79 */; value = value.cxxNativeAnimatedEnabled(); if (value) { value = importAll(79) /* metro dependency 79 */; value = value.cxxNativeAnimatedRemoveJsSync(); r3 = value; } else { r3 = value; } r2 = r3; } else { r2 = value; } if (!r2) { env1_1(); } return value3; } if (typeof env0_0 !== 'object') { return env1_1(); } let setNativeProps = env0_0 == null ? value3 : env0_0.setNativeProps; if (typeof setNativeProps !== 'function') { return env1_1(); } if (r2) { value8 = environment.__proto__.__proto__; if (env2_2) { binding = env0_0; setNativeProps = binding.setNativeProps; binding3 = env1_4; Reflect.apply(setNativeProps, binding, [binding3.__getAnimatedValue()]); if (env1_3.current != null) { global.clearTimeout(env1_3.current); } binding = env1_3; binding.current = global.setTimeout(_fun5691, 48); return value3; } return env1_1(); } binding = env0_0; setNativeProps = binding.setNativeProps; const binding2 = env1_4; return Reflect.apply(setNativeProps, binding, [binding2.__getAnimatedValue()]); } function _fun5692() { // fn#5692, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:2985, offset: 0x00ce2fff, size: 150 bytes, params: 1, frame: 21 var r3; var r2; var value; var iterator; var iterator2; var value2; var item; var item2; var binding; var value3; var property; var property2; var __detach; var error; var iterator3; var item3; var propValue; var listenerId; var removeListener; exceptionSkip16: while (true) { exceptionLanding16: while (true) { exceptionSkip9: while (true) { exceptionLanding9: while (true) { value = environment.__proto__; env1_2.current = null; value = environment; iterator = env0_3[Symbol.iterator](); iterator2 = iterator.next; value2 = environment.__proto__.__proto__.__proto__; for (r3 = iterator; true; r3 = item2) { item2 = Reflect.apply(iterator2, r3, []); item = item2.value; item2 = item2.done ? undefined : r3; if (item2 === undefined) { break; } try { binding = env3_4; } catch (error) { break exceptionLanding9; } try { value3 = binding(item, 2); } catch (error) { break exceptionLanding9; } try { property = value3[0]; } catch (error) { break exceptionLanding9; } try { property2 = value3[1]; } catch (error) { break exceptionLanding9; } try { __detach = property2.__detach; } catch (error) { break exceptionLanding9; } try { binding = env0_1; } catch (error) { break exceptionLanding9; } try { Reflect.apply(__detach, property2, [binding, property]); } catch (error) { break exceptionLanding9; } } iterator = env0_2[Symbol.iterator](); iterator3 = iterator.next; for (r2 = iterator; true; r2 = item3) { item3 = Reflect.apply(iterator3, r2, []); item = item3.value; item3 = item3.done ? undefined : r2; if (item3 === undefined) { break; } try { propValue = item.propValue; } catch (error) { break exceptionLanding16; } try { listenerId = item.listenerId; } catch (error) { break exceptionLanding16; } try { removeListener = propValue.removeListener; } catch (error) { break exceptionLanding16; } try { Reflect.apply(removeListener, propValue, [listenerId]); } catch (error) { break exceptionLanding16; } } return undefined; break exceptionSkip9; } try { item2.return(); } catch { } throw error; break exceptionSkip9; } break exceptionSkip16; } try { item3.return(); } catch { } throw error; break exceptionSkip16; } } function _fun5691() { // fn#5691, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:422:2667, offset: 0x00ce2fe4, size: 27 bytes, params: 1, frame: 10 env2_3.current = null; env2_1(); }