Files
discord-decomp/sources/design/components/Menu/native/MenuPopout.tsx
T
2026-07-27 16:20:00 +03:00

95 lines
4.8 KiB
TypeScript

/* Metro module 12764; source: design/components/Menu/native/MenuPopout.tsx; dependencies: [57, 31, 33, 8814, 4017, 11110, 12761, 12762, 12763, 2] */
function _fun97543(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#97543, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12954:6, offset: 0x021887b0, size: 168 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
const value = require(33) /* metro dependency 33 */;
const env0_5 = value.jsx;
const env0_6 = value.Fragment;
(require(2) /* metro dependency 2 */).fileFinishedImporting('design/components/Menu/native/MenuPopout.tsx');
exports.MenuPopout = MenuPopout;
}
function MenuPopout({children, key, menuItems = [], onRequestOpen, onRequestClose, position, align, offset, offsetAnimated}) { // fn#97544, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12954:238, offset: 0x02188858, size: 505 bytes, params: 2, frame: 28
const env0_3 = position;
const env0_4 = align;
const r12 = key ?? (require(8814) /* metro dependency 8814: UID */).useUID();
const value3 = (require(4017) /* metro dependency 4017: ReanimatedRexport */).useAnimatedRef();
const binding = env0_4;
const [property, env0_10] = env0_3(binding.useState(false), 2);
const value6 = menuItems.map(function(a0) {
return {name: a0.label, label: a0.label};
});
const value7 = binding.useCallback(_fun97546, [r12, onRequestClose]);
return (
<>
{children({ref: value3, onPress: binding.useCallback(_fun97550, [property, value7,
binding.useCallback(_fun97549, [binding.useMemo(_fun97547, [value3, value7, menuItems, position, align,
offset, offsetAnimated]), r12, onRequestOpen])]), accessibilityState: {expanded: property},
accessibilityActions: value6, onAccessibilityAction: onAccessibilityAction_97551}, {isShown: property})}
</>
);
}
function _fun97546() { // fn#97546, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12954:537, offset: 0x02188a51, size: 74 bytes, params: 1, frame: 13
env0_10(false);
if (onRequestClose != null) {
onRequestClose();
}
(importDefault(11110) /* metro dependency 11110: NativeMenuActionCreators */).hideNativeMenu(env0_7);
}
function _fun97547() { // fn#97547, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12954:609, offset: 0x02188a9b, size: 128 bytes, params: 1, frame: 16
const Menu = (require(12761) /* metro dependency 12761: Menu */).Menu;
return (
<Menu
toggleButtonRef={env0_8}
onClose={env0_11}
position={position}
align={align}
offset={offset}
offsetAnimated={offsetAnimated}
>
{env0_0.map(_fun97548)}
</Menu>
);
}
function _fun97549() { // fn#97549, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12954:871, offset: 0x02188b93, size: 79 bytes, params: 1, frame: 14
env0_10(true);
if (onRequestOpen != null) {
onRequestOpen();
}
const defaultImport = importDefault(11110) /* metro dependency 11110: NativeMenuActionCreators */;
defaultImport.showNativeMenu(env0_7, env0_12);
}
function _fun97550() { // fn#97550, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12954:951, offset: 0x02188be2, size: 36 bytes, params: 1, frame: 10
if (env0_9) {
env0_11();
} else {
env0_13();
}
}
function MenuPopoutOnAccessibilityAction(a0) { // fn#97551, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12954:1094, owner: MenuPopout.onAccessibilityAction, offset: 0x02188c06, size: 68 bytes, params: 2, frame: 12
const env0_0 = a0;
const value = env0_0.find(_fun97552);
if (!(value == null || value.action == null)) {
value.action();
}
}
function _fun97548(a0, a1) { // fn#97548, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12954:718, offset: 0x02188b1b, size: 120 bytes, params: 3, frame: 17
const MenuGroup = (require(12762) /* metro dependency 12762: MenuGroup */).MenuGroup;
const MenuItem = (require(12763) /* metro dependency 12763: MenuItem */).MenuItem;
return (
<MenuGroup key={'chat-context-menu-group-' + a1}>
<MenuItem showIconFirst {...a0} />
</MenuGroup>
);
}