Files
2026-07-28 01:06:53 +03:00

211 lines
9.9 KiB
TypeScript

/* Metro module 14458; source: modules/freeze/native/NativeFreezeScreens.tsx; dependencies: [57, 31, 27, 33, 44, 4510, 4501, 2] */
import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as CreateStylesModule from '../../../design/components/Styles/native/createStyles.tsx'; /* Metro dependency 4501 */
import * as Module04510Module from '../../../by-id/module-04510.js'; /* Metro dependency 4510 */
function _fun109418(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#109418, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14655:6, offset: 0x0234a78a, size: 227 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_7 = (CreateStylesModule).createStyles({screens: {'flex': 1,
'overflow': 'hidden'}});
(FileImportTrackerModule).fileFinishedImporting('modules/freeze/native/NativeFreezeScreens.tsx');
exports.NativeFreezeScreens = NativeFreezeScreens;
function NativeFreezeScreens({children, activeIndex, detachInactiveScreens, lazy, unmountOnBlur, freezeOnBlur, preloadIndices = []}) { // fn#109419, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14655:317, offset: 0x0234a86d, size: 416 bytes, params: 2, frame: 22
var items2;
var value7;
detachInactiveScreens = detachInactiveScreens === undefined || detachInactiveScreens;
if (lazy !== undefined) {
}
unmountOnBlur = !(unmountOnBlur === undefined) && unmountOnBlur;
const unmountOnBlur2 = unmountOnBlur;
freezeOnBlur = freezeOnBlur === undefined || freezeOnBlur;
const freezeOnBlur2 = freezeOnBlur;
const styles = useStyles();
(importDefault(44) /* metro dependency 44 */)(activeIndex >= 0 && activeIndex < (global.Array.isArray(children) ? children.length : 1),
'NativeFreezeScreens: invalid activeIndex');
const binding = freezeOnBlur2;
const useState = binding.useState;
const value6 = unmountOnBlur2(Reflect.apply(useState, binding, [[activeIndex]]), 2);
const property = value6[0];
if (!property.includes(activeIndex)) {
items2 = [];
value7 = arraySpread(items2, property, 0, 0);
items2[value7] = activeIndex;
value7 + 1;
value6[1](items2);
}
const ScreenContainer = (Module04510Module).ScreenContainer;
const Array = global.Array;
return (
<ScreenContainer
enabled={detachInactiveScreens}
hasTwoStates
style={styles.screens}
nativeID="native-freeze-screens-container"
>
{(Array.isArray(children) ? children : [children]).map(_fun109420)}
</ScreenContainer>
);
function _fun109420(a0, a1) { // fn#109420, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14655:798, offset: 0x0234aa0d, size: 203 bytes, params: 3, frame: 22
var r6;
var binding;
var includes;
var value3;
var value5;
const Screen = (Module04510Module).Screen;
const value2 = activeIndex === a1;
if (unmountOnBlur) {
if (value2) {
if (lazy) {
binding = JsxRuntimeModule.jsx;
includes = binding.includes;
if (Reflect.apply(includes, binding, [a1])) {
value3 = 0;
r6 = value2 ? 2 : value3;
value5 = environment.__proto__;
return (
<Screen
style={[StyleSheet.absoluteFill, {zIndex: value2 ? value3 : -1}]}
activityState={r6}
enabled={detachInactiveScreens}
freezeOnBlur={freezeOnBlur}
key={a1}
>
{a0}
</Screen>
);
}
if (value2) {
value3 = 0;
r6 = value2 ? 2 : value3;
value5 = environment.__proto__;
return (
<Screen
style={[StyleSheet.absoluteFill, {zIndex: value2 ? value3 : -1}]}
activityState={r6}
enabled={detachInactiveScreens}
freezeOnBlur={freezeOnBlur}
key={a1}
>
{a0}
</Screen>
);
}
binding = ReactNativeModule.StyleSheet;
includes = binding.includes;
if (Reflect.apply(includes, binding, [a1])) {
value3 = 0;
r6 = value2 ? 2 : value3;
value5 = environment.__proto__;
return (
<Screen
style={[StyleSheet.absoluteFill, {zIndex: value2 ? value3 : -1}]}
activityState={r6}
enabled={detachInactiveScreens}
freezeOnBlur={freezeOnBlur}
key={a1}
>
{a0}
</Screen>
);
}
return null;
}
value3 = 0;
r6 = value2 ? 2 : value3;
value5 = environment.__proto__;
return (
<Screen
style={[StyleSheet.absoluteFill, {zIndex: value2 ? value3 : -1}]}
activityState={r6}
enabled={detachInactiveScreens}
freezeOnBlur={freezeOnBlur}
key={a1}
>
{a0}
</Screen>
);
}
return null;
}
if (lazy) {
binding = JsxRuntimeModule.jsx;
includes = binding.includes;
if (Reflect.apply(includes, binding, [a1])) {
value3 = 0;
r6 = value2 ? 2 : value3;
value5 = environment.__proto__;
return (
<Screen
style={[StyleSheet.absoluteFill, {zIndex: value2 ? value3 : -1}]}
activityState={r6}
enabled={detachInactiveScreens}
freezeOnBlur={freezeOnBlur}
key={a1}
>
{a0}
</Screen>
);
}
if (value2) {
value3 = 0;
r6 = value2 ? 2 : value3;
value5 = environment.__proto__;
return (
<Screen
style={[StyleSheet.absoluteFill, {zIndex: value2 ? value3 : -1}]}
activityState={r6}
enabled={detachInactiveScreens}
freezeOnBlur={freezeOnBlur}
key={a1}
>
{a0}
</Screen>
);
}
binding = ReactNativeModule.StyleSheet;
includes = binding.includes;
if (Reflect.apply(includes, binding, [a1])) {
value3 = 0;
r6 = value2 ? 2 : value3;
value5 = environment.__proto__;
return (
<Screen
style={[StyleSheet.absoluteFill, {zIndex: value2 ? value3 : -1}]}
activityState={r6}
enabled={detachInactiveScreens}
freezeOnBlur={freezeOnBlur}
key={a1}
>
{a0}
</Screen>
);
}
return null;
}
value3 = 0;
return (
<Screen
style={[StyleSheet.absoluteFill, {zIndex: value2 ? value3 : -1}]}
activityState={value2 ? 2 : value3}
enabled={detachInactiveScreens}
freezeOnBlur={freezeOnBlur}
key={a1}
>
{a0}
</Screen>
);
}
}
}
global.__d(_fun109418, 14458, [57, 31, 27, 33, 44, 4510, 4501,
2]) /* metro module 14458, dependencies: [57, 31, 27, 33, 44, 4510, 4501, 2] */;