110 lines
7.0 KiB
TypeScript
110 lines
7.0 KiB
TypeScript
/* Metro module 10660; source: modules/video_calls/native/VoiceCallOverlayUtils.tsx; dependencies: [7716, 694, 2] */
|
|
import Dispatcher from '../../../Dispatcher.tsx'; /* Metro dependency 694 */
|
|
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
|
|
import * as ChannelCallConstantsModule from './ChannelCallConstants.tsx'; /* Metro dependency 7716 */
|
|
|
|
function _fun81988(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#81988, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10846:6, offset: 0x01ee658d, size: 272 bytes, params: 8, frame: 21
|
|
const Object = global.Object;
|
|
Object.defineProperty(exports, '__esModule', {value: true});
|
|
const {MIN_MARGIN_BETWEEN_OVERLAYS,
|
|
VoiceCallOverlayType} = ChannelCallConstantsModule;
|
|
const doRectanglesIntersectWorklet2 = doRectanglesIntersectWorklet;
|
|
doRectanglesIntersectWorklet2.__closure = {};
|
|
doRectanglesIntersectWorklet2.__workletHash = 16149528537623;
|
|
doRectanglesIntersectWorklet2.__initData = {code: 'function VoiceCallOverlayUtilsTsx1(rectA,rectB,minMarginBetweenOverlays){if(rectA==null||rectA.x==null||rectA.y==null||rectA.width==null||rectA.height==null||rectB==null||rectB.x==null||rectB.y==null||rectB.width==null||rectB.height==null){return false;}const minAx=rectA.x-minMarginBetweenOverlays;const maxAx=rectA.x+rectA.width+minMarginBetweenOverlays;const minAy=rectA.y-minMarginBetweenOverlays;const maxAy=rectA.y+rectA.height+minMarginBetweenOverlays;const minBx=rectB.x;const maxBx=rectB.x+rectB.width;const minBy=rectB.y;const maxBy=rectB.y+rectB.height;const aLeftOfB=maxAx<minBx;const aRightOfB=minAx>maxBx;const aBelowB=minAy>maxBy;const aAboveB=maxAy<minBy;return!(aLeftOfB||aRightOfB||aAboveB||aBelowB);}'};
|
|
const doesTargetPositionIntersectOtherOverlaysWorklet2 = doesTargetPositionIntersectOtherOverlaysWorklet;
|
|
doesTargetPositionIntersectOtherOverlaysWorklet2.__closure = {VoiceCallOverlayType: VoiceCallOverlayType,
|
|
doRectanglesIntersectWorklet: doRectanglesIntersectWorklet2,
|
|
MIN_MARGIN_BETWEEN_OVERLAYS: MIN_MARGIN_BETWEEN_OVERLAYS};
|
|
doesTargetPositionIntersectOtherOverlaysWorklet2.__workletHash = 10902657864288;
|
|
doesTargetPositionIntersectOtherOverlaysWorklet2.__initData = {code: 'function VoiceCallOverlayUtilsTsx2(voiceCallOverlayLayoutStates,voiceCallOverlayType,targetRectangle){const{VoiceCallOverlayType,doRectanglesIntersectWorklet,MIN_MARGIN_BETWEEN_OVERLAYS}=this.__closure;switch(voiceCallOverlayType){case VoiceCallOverlayType.VOICE_CONTROLS_TOGGLE_BUTTON:{if(!voiceCallOverlayLayoutStates[VoiceCallOverlayType.CAMERA_PREVIEW_PICTURE_IN_PICTURE].isVisible){return false;}const doRectanglesIntersect=doRectanglesIntersectWorklet(targetRectangle,voiceCallOverlayLayoutStates[VoiceCallOverlayType.CAMERA_PREVIEW_PICTURE_IN_PICTURE],MIN_MARGIN_BETWEEN_OVERLAYS);if(doRectanglesIntersect){return true;}break;}case VoiceCallOverlayType.CAMERA_PREVIEW_PICTURE_IN_PICTURE:{if(!voiceCallOverlayLayoutStates[VoiceCallOverlayType.VOICE_CONTROLS_TOGGLE_BUTTON].isVisible){return false;}const doRectanglesIntersect=doRectanglesIntersectWorklet(targetRectangle,voiceCallOverlayLayoutStates[VoiceCallOverlayType.VOICE_CONTROLS_TOGGLE_BUTTON],MIN_MARGIN_BETWEEN_OVERLAYS);if(doRectanglesIntersect){return true;}break;}}return false;}'};
|
|
(FileImportTrackerModule).fileFinishedImporting('modules/video_calls/native/VoiceCallOverlayUtils.tsx');
|
|
exports.doesTargetPositionIntersectOtherOverlaysWorklet = doesTargetPositionIntersectOtherOverlaysWorklet2;
|
|
exports.updateVoiceCallOverlayLayoutState = updateVoiceCallOverlayLayoutState;
|
|
exports.setPipEnabledWhileFocusedOnActivityOrStream = setPipEnabledWhileFocusedOnActivityOrStream;
|
|
function doesTargetPositionIntersectOtherOverlaysWorklet(a0, a1, a2) { // fn#81990, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10846:2305, offset: 0x01ee6794, size: 177 bytes, params: 4, frame: 17
|
|
const VOICE_CONTROLS_TOGGLE_BUTTON = VoiceCallOverlayType.VOICE_CONTROLS_TOGGLE_BUTTON;
|
|
if (VOICE_CONTROLS_TOGGLE_BUTTON === a1) {
|
|
if (a0[VoiceCallOverlayType.CAMERA_PREVIEW_PICTURE_IN_PICTURE].isVisible) {
|
|
if (doRectanglesIntersectWorklet(a2, a0[VoiceCallOverlayType.CAMERA_PREVIEW_PICTURE_IN_PICTURE],
|
|
MIN_MARGIN_BETWEEN_OVERLAYS)) {
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
} else {
|
|
if (VoiceCallOverlayType.CAMERA_PREVIEW_PICTURE_IN_PICTURE !== a1) {
|
|
return false;
|
|
}
|
|
if (a0[VoiceCallOverlayType.VOICE_CONTROLS_TOGGLE_BUTTON].isVisible) {
|
|
if (doRectanglesIntersectWorklet(a2, a0[VoiceCallOverlayType.VOICE_CONTROLS_TOGGLE_BUTTON],
|
|
MIN_MARGIN_BETWEEN_OVERLAYS)) {
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
|
|
function updateVoiceCallOverlayLayoutState(a0, a1) { // fn#81991, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10846:2973, offset: 0x01ee6845, size: 65 bytes, params: 3, frame: 13
|
|
(Dispatcher).dispatch({type: 'VOICE_CALL_OVERLAY_LAYOUT_STATE_UPDATE',
|
|
voiceCallOverlayType: a0, voiceCallOverlayLayoutState: a1});
|
|
}
|
|
|
|
function setPipEnabledWhileFocusedOnActivityOrStream(a0) { // fn#81992, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10846:3187, offset: 0x01ee6886, size: 57 bytes, params: 2, frame: 13
|
|
(Dispatcher).dispatch({type: 'VOICE_CALL_SET_PIP_ENABLED_FOR_ACTIVITY_OR_STREAM',
|
|
pipEnabledWhileFocusedOnActivityOrStream: a0});
|
|
}
|
|
|
|
}
|
|
|
|
function doRectanglesIntersectWorklet(a0, a1, a2) { // fn#81989, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10846:904, offset: 0x01ee669d, size: 247 bytes, params: 4, frame: 9
|
|
if (a0 == null) {
|
|
return false;
|
|
}
|
|
let x = a0.x;
|
|
if (x == null) {
|
|
return false;
|
|
}
|
|
let y = a0.y;
|
|
if (y == null) {
|
|
return false;
|
|
}
|
|
if (a0.width == null) {
|
|
return false;
|
|
}
|
|
if (a0.height == null) {
|
|
return false;
|
|
}
|
|
if (a1 == null) {
|
|
return false;
|
|
}
|
|
if (a1.x == null) {
|
|
return false;
|
|
}
|
|
if (a1.y == null) {
|
|
return false;
|
|
}
|
|
if (a1.width == null) {
|
|
return false;
|
|
}
|
|
if (a1.height == null) {
|
|
return false;
|
|
}
|
|
const value = a0.x - a2;
|
|
const value2 = a0.x + a0.width + a2;
|
|
const value3 = a0.y - a2;
|
|
const value4 = a0.y + a0.height + a2;
|
|
x = a1.x;
|
|
const value5 = a1.x + a1.width;
|
|
y = a1.y;
|
|
const value6 = a1.y + a1.height;
|
|
let r0 = value2 < x || value > value5;
|
|
r0 = !r0 ? value4 < y : r0;
|
|
r0 = !r0 ? value3 > value6 : r0;
|
|
return !r0;
|
|
}
|
|
|
|
global.__d(_fun81988, 10660, [7716, 694, 2]) /* metro module 10660, dependencies: [7716, 694, 2] */;
|