This commit is contained in:
janisslsm committed 2026-11-01 12:12:55 +02:00
1 parent 1781d25a15
commit 732c0ad767
33051 files changed
+2591613 -3019689

No files matched your search

@@ -0,0 +1,57 @@
// Metro module 9674 (f9675).
import { useMemo, useCallback } from "react";
import { MediaPickerActionSheetEngagedActions } from "../MediaKeyboardConstants";
import { AnalyticEvents } from "../../../../Constants";
import { useSharedValue } from "../../../reanimated/ReanimatedRexport";
import { intl, t } from "../../../../intl/index.native";
import { PollsIcon } from "../../../../design/components/Icon/native/redesign/generated/PollsIcon";
import { AttachmentIcon } from "../../../../design/components/Icon/native/redesign/generated/AttachmentIcon";
import MediaKeyboardBottomSheetHeaderSimple from "./MediaKeyboardBottomSheetHeaderSimple";
import { triggerHapticFeedback } from "../../../haptics/HapticUtils.native";
import HapticFeedbackTypes from "../../../haptics/HapticFeedbackTypes";
import AnalyticsUtils from "../../../../utils/AnalyticsUtils";
import useMountEffect from "../../../../hooks/useMountEffect";
import MediaKeyboardBottomSheetActions from "./MediaKeyboardBottomSheetActions";
import { ImageIcon } from "../../../../design/components/Icon/native/redesign/generated/ImageIcon";
import { BottomSheet } from "../../../../design/components/Sheet/native/BottomSheet.native";
import { isMetaQuest } from "../../../device/MetaQuestUtils.android";
import MediaKeyboardList from "./MediaKeyboardList";
export default function MediaKeyboardActionSheet(props) {
let callback;
const { channel, draftType, uploadLimit, disableWhenReachedLimit, includedUploadIds, extensions, allowCamera, onPressCamera, onAttachPress, onPressItem, onLongPressItem, onViewAll, onManageLimited, onClose, onBack } = props;
callback = void 0;
const sharedValue = useSharedValue(-1);
const memo = useMemo(() => [{
text: intl.string(t.RgIi2B),
IconComponent: PollsIcon,
onPress: () => {},
disabled: true
}, {
text: intl.string(t["8Hvr3+"]),
IconComponent: AttachmentIcon,
onPress: onAttachPress,
disabled: false
}], [onAttachPress]);
const callback2 = useCallback(() => <MediaKeyboardBottomSheetHeaderSimple animatedIndex={sharedValue} onPress={onBack} />, [sharedValue, onBack]);
const callback3 = useCallback(() => {
triggerHapticFeedback(HapticFeedbackTypes.IMPACT_LIGHT);
AnalyticsUtils.track(AnalyticEvents.MEDIA_PICKER_ACTION_SHEET_ENGAGED, {
action: MediaPickerActionSheetEngagedActions.FULLY_EXPANDED
});
}, []);
callback = useCallback(() => {
if (onClose != null) {
onClose();
}
}, [onClose]);
useMountEffect(() => () => callback == null ? void 0 : callback());
const memo2 = useMemo(() => <MediaKeyboardBottomSheetActions canPostPolls={false} onHeightChange={() => {}} uploadDisabled={false} overflowButtons={[{
text: intl.string(t.Zmm6dN),
IconComponent: ImageIcon,
onPress: onViewAll,
disabled: false
}, ...memo]} />, [onViewAll, memo]);
return <BottomSheet handleComponent={callback2} scrollable startExpanded={isMetaQuest()} onExpand={callback3} onDismiss={callback} animatedIndex={sharedValue} footer={memo2}>
<MediaKeyboardList channel={channel} draftType={draftType} onPressCamera={onPressCamera} onAttachPress={onAttachPress} onPressItem={onPressItem} onLongPressItem={onLongPressItem} onViewAll={onViewAll} onManageLimited={onManageLimited} includedUploadIds={includedUploadIds} extensions={extensions} allowCamera={allowCamera} uploadLimit={uploadLimit} disableWhenReachedLimit={disableWhenReachedLimit} />
</BottomSheet>;
};