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

+205
View File
@@ -0,0 +1,205 @@
// Metro module 13539 (f13540).
import EmbeddedActivitiesStore from "../../../activities/EmbeddedActivitiesStore";
import ApplicationStore from "../../../applications/ApplicationStore";
import * as _Constants from "../../Constants";
import { RPCCommands, PopoutWindowKeys, AnalyticEvents, RPCErrors, UserSettingsSections, ApplicationFlags } from "../../../../Constants";
import { AM_HARMONY_PRD_APPLICATION_ID, AM_HARMONY_STG_APPLICATION_ID } from "../../../activities/Constants";
import createRpcJoiSchemaObject from "../../helpers/createRpcJoiSchemaObject";
import { validatePostMessageTransport, validateApplication } from "../../RPCHelpers";
import { isPlatformEmbedded } from "../../../../utils/PlatformUtils";
import { shouldOpenActivityInPopoutWindow } from "../../../activities/ActivityPopoutUtils.native";
import CrossPlatformNativeUtils_native from "../../../../utils/CrossPlatformNativeUtils.native";
import { getEmbeddedActivityLocationChannelId } from "../../../activities/utils/embeddedActivityLocationUtils";
import { fetchIsLinkTrusted } from "../../../activities/utils/fetchIsLinkTrusted";
import openURL from "../../../../lib/openURL";
import AnalyticsUtils from "../../../../utils/AnalyticsUtils";
import { handleClick } from "../../../../utils/MaskedLinkUtils";
import { getActivitiesModalContextKey } from "../../../activities/getActivitiesModalContextKey.native";
import RPCError from "../../RPCError";
import { openUserSettings } from "../../../user_settings/core/native/openUserSettings";
import { createRPCCommand } from "../../../../_bundle/Module13535";
import { hasApplicationFlag } from "../../../applications/utils/ApplicationFlagUtils";
import { openActivityShareLinkModal } from "../../../activities/openActivityShareLinkModal.native";
function $mk116534($env) {
return (a0) => {
const r7 = $env;
let env31688 = {
$parent: $env
};
env31688[0] = a0;
return handleClick({
href: r7[0],
shouldConfirm: true,
onConfirm: () => {
const r2 = env31688.$parent.$parent.$parent;
const r4 = r2[1];
const r3 = r2[2];
const r9 = r4(r3[13]);
const url = env31688.$parent[0];
r9(url);
r4(r3[14]).track(r2[10].RPC_OPEN_EXTERNAL_LINK_CALLED, {
application_id: env31688.$parent.$parent[0].application?.id,
url,
opened: true
});
(0, env31688[0])({
opened: true
});
},
onCancel: () => {
const r2 = env31688.$parent.$parent.$parent;
(0, r2[1])(r2[2][14]).track(r2[10].RPC_OPEN_EXTERNAL_LINK_CALLED, {
application_id: env31688.$parent.$parent[0].application?.id,
url: env31688.$parent[0],
opened: false
});
(0, env31688[0])({
opened: false
});
}
}, void 0, void 0, getActivitiesModalContextKey({
application: r7[1],
channelId: r7[2]
}));
};
}
let env9399 = {};
const { RPC_AUTHENTICATED_SCOPE, RPC_EMBEDDED_APP_SCOPE, RPC_SCOPE_CONFIG } = _Constants;
const c9399_11 = new Set([AM_HARMONY_PRD_APPLICATION_ID, AM_HARMONY_STG_APPLICATION_ID]);
const r45 = {};
const OPEN_EXTERNAL_LINK = RPCCommands.OPEN_EXTERNAL_LINK;
const scope = {};
scope[RPC_SCOPE_CONFIG.ANY] = [RPC_AUTHENTICATED_SCOPE, RPC_EMBEDDED_APP_SCOPE];
r45[OPEN_EXTERNAL_LINK] = {
scope,
validation: (a0) => createRpcJoiSchemaObject(a0).required().keys({
url: a0.string().required()
}),
handler: async (a0) => {
let r130;
let env20521 = {
$parent: env9399
};
env20521[0] = a0.socket;
env20521[1] = a0.args.url;
let c27497_0, c27497_1, c27497_2;
let c27497_3 = 0;
const r13 = env20521;
try {
let env30636;
c27497_1 = r13;
const r20 = env30636 = {
$parent: r13
};
c27497_0 = r20;
env30636[0] = void 0;
env30636[1] = void 0;
env30636[2] = void 0;
validatePostMessageTransport(env20521[0].transport);
const currentEmbeddedActivity = EmbeddedActivitiesStore.getCurrentEmbeddedActivity();
c27497_3 = 1;
const r49 = new URL(env20521[1]).toString();
env30636[0] = r49;
if (isPlatformEmbedded) {
CrossPlatformNativeUtils_native.focus(shouldOpenActivityInPopoutWindow() ? PopoutWindowKeys.ACTIVITY_POPOUT : null, true);
}
const application = ApplicationStore.getApplication(env20521[0].application?.id);
env30636[1] = application;
env30636[2] = getEmbeddedActivityLocationChannelId(currentEmbeddedActivity?.location);
const isLinkTrusted = await fetchIsLinkTrusted(application?.id, r49);
const r105 = c27497_0;
if (isLinkTrusted) {
openURL(env30636[0]);
AnalyticsUtils.track(AnalyticEvents.RPC_OPEN_EXTERNAL_LINK_CALLED, {
application_id: env20521[0].application?.id,
url: env30636[0],
opened: true
});
r130 = Promise.resolve({
opened: true
});
} else {
r130 = new Promise($mk116534(r105));
}
c27497_3 = 0;
} catch ($e) {
const r35 = $e;
let r8 = r35;
c27497_2 = r35;
if (c27497_3 !== 0) {
while (true) {
try {
c27497_3 = 0;
throw new RPCError({
errorCode: RPCErrors.INVALID_COMMAND
}, `Invalid URL: ${env20521[1]}`);
} catch (r142) {
r8 = r142;
c27497_2 = r142;
if (c27497_3 === 0) {
break;
}
}
}
}
throw r8;
}
return r130;
}
};
const NAVIGATE_TO_CONNECTIONS = RPCCommands.NAVIGATE_TO_CONNECTIONS;
const scope2 = {};
scope2[RPC_SCOPE_CONFIG.ANY] = [RPC_AUTHENTICATED_SCOPE];
r45[NAVIGATE_TO_CONNECTIONS] = {
validation: (a0) => createRpcJoiSchemaObject(a0),
scope: scope2,
handler: ({ socket }) => {
validatePostMessageTransport(socket.transport);
if (c9399_11.has(validateApplication(socket.application))) {
(0, openUserSettings)({
screen: UserSettingsSections.CONNECTIONS
});
return void 0;
}
throw new RPCError({
errorCode: RPCErrors.UNAUTHORIZED_FOR_APPLICATION
}, "Command not available for this application");
}
};
const { SHARE_LINK, SHARE_LINK: SHARE_LINK2 } = RPCCommands;
const scope3 = {};
scope3[RPC_SCOPE_CONFIG.ANY] = [RPC_AUTHENTICATED_SCOPE];
r45[SHARE_LINK] = createRPCCommand(SHARE_LINK2, {
scope: scope3,
handler: ({ socket, args }) => {
const { custom_id, message, link_id } = args;
validatePostMessageTransport(socket.transport);
const applicationId = validateApplication(socket.application);
if (applicationId == null) {
throw new RPCError({
errorCode: RPCErrors.INVALID_COMMAND
}, "No application.");
}
if (hasApplicationFlag(socket.application, ApplicationFlags.EMBEDDED)) {
return new Promise((c27498_0) => {
openActivityShareLinkModal({
applicationId,
customId: custom_id,
linkId: link_id,
message,
onShare: function onShare(a0, a1) {
c27498_0({
success: a1 ? a1 : a0,
didCopyLink: a1,
didSendMessage: a0
});
}
});
});
}
throw new RPCError({
errorCode: RPCErrors.INVALID_COMMAND
}, "This application cannot access this API");
}
});
export default r45;