decord/source/1166_INTEGRATION_NAME.js
2026-07-25 08:10:48 +00:00

156 lines
6.2 KiB
JavaScript

// Module ID: 1166
// Function ID: 13273
// Name: INTEGRATION_NAME
// Dependencies: [77, 1136, 1142, 794, 1134, 1137, 1098]
// Exports: reactNativeNavigationIntegration
// Module 1166 (INTEGRATION_NAME)
import _defineProperty from "_defineProperty";
const require = arg1;
const self = this;
export const INTEGRATION_NAME = "ReactNativeNavigation";
export const reactNativeNavigationIntegration = function reactNativeNavigationIntegration(enableTabsInstrumentation) {
let navigation;
let routeChangeTimeoutMs;
({ navigation, routeChangeTimeoutMs } = enableTabsInstrumentation);
let num = 1000;
if (undefined !== routeChangeTimeoutMs) {
num = routeChangeTimeoutMs;
}
enableTabsInstrumentation = enableTabsInstrumentation.enableTabsInstrumentation;
const ignoreEmptyBackNavigationTransactions = enableTabsInstrumentation.ignoreEmptyBackNavigationTransactions;
let closure_4 = undefined === ignoreEmptyBackNavigationTransactions || ignoreEmptyBackNavigationTransactions;
let closure_5 = [];
const defaultIdleOptions = require(1136) /* getDefaultIdleNavigationSpanOptions */.defaultIdleOptions;
let c7 = null;
function startIdleNavigationSpan() {
if (store) {
discardLatestNavigationSpan();
}
let beforeStartSpan;
if (null != currentRoute) {
beforeStartSpan = currentRoute.options.beforeStartSpan;
}
if (beforeStartSpan) {
const options = currentRoute.options;
let beforeStartSpanResult = options.beforeStartSpan(outer1_0(outer1_1[1]).getDefaultIdleNavigationSpanOptions());
const obj3 = outer1_0(outer1_1[1]);
} else {
beforeStartSpanResult = outer1_0(outer1_1[1]).getDefaultIdleNavigationSpanOptions();
const obj2 = outer1_0(outer1_1[1]);
}
const result = outer1_0(outer1_1[1]).startIdleNavigationSpan(beforeStartSpanResult, defaultIdleOptions);
store = result;
if (null != result) {
const attr = store.setAttribute(outer1_0(outer1_1[3]).SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN, outer1_0(outer1_1[4]).SPAN_ORIGIN_AUTO_NAVIGATION_REACT_NATIVE_NAVIGATION);
}
if (closure_4) {
const obj4 = outer1_0(outer1_1[5]);
const result1 = obj4.ignoreEmptyBackNavigation(outer1_0(outer1_1[3]).getClient(), store);
const obj5 = outer1_0(outer1_1[3]);
}
currentRoute = store;
const obj = outer1_0(outer1_1[1]);
const obj6 = outer1_0(outer1_1[5]);
const client = outer1_0(outer1_1[3]).getClient();
const result2 = obj6.ignoreEmptyRouteChangeTransactions(client, store, outer1_0(outer1_1[1]).DEFAULT_NAVIGATION_SPAN_NAME, () => result === closure_0);
const timeout = setTimeout(discardLatestNavigationSpan.bind(outer1_2), num);
}
let result = navigation.events().registerCommandListener(startIdleNavigationSpan);
if (tmp) {
let result1 = navigation.events().registerBottomTabPressedListener(startIdleNavigationSpan);
const eventsResult1 = navigation.events();
}
const eventsResult = navigation.events();
tmp = undefined !== enableTabsInstrumentation && enableTabsInstrumentation;
let result2 = navigation.events().registerComponentWillAppearListener(function updateLatestNavigationSpanWithCurrentComponent(componentId) {
if (store) {
if (_null) {
if (componentId.componentId === _null.componentId) {
discardLatestNavigationSpan();
}
}
clearStateChangeTimeout();
const hasItem = arr.includes(componentId.componentId);
let obj = outer1_0(outer1_1[3]);
if (obj.spanToJSON(store).description === outer1_0(outer1_1[1]).DEFAULT_NAVIGATION_SPAN_NAME) {
store.updateName(componentId.componentName);
}
obj = {};
({ componentName: obj2["route.name"], componentId: obj2["route.component_id"], componentType: obj2["route.component_type"] } = componentId);
obj["route.has_been_seen"] = hasItem;
let componentName;
if (null != _null) {
componentName = _null.componentName;
}
obj["previous_route.name"] = componentName;
componentId = undefined;
if (null != _null) {
componentId = _null.componentId;
}
obj["previous_route.component_id"] = componentId;
let componentType;
if (null != _null) {
componentType = _null.componentType;
}
obj["previous_route.component_type"] = componentType;
store.setAttributes(3(3(obj, outer1_0(outer1_1[3]).SEMANTIC_ATTRIBUTE_SENTRY_SOURCE, "component"), outer1_0(outer1_1[3]).SEMANTIC_ATTRIBUTE_SENTRY_OP, "navigation"));
if (null != currentRoute) {
currentRoute.setCurrentRoute(componentId.componentName);
}
const tmp13Result = 3(obj, outer1_0(outer1_1[3]).SEMANTIC_ATTRIBUTE_SENTRY_SOURCE, "component");
obj = { category: "navigation", type: "navigation" };
const _HermesInternal = HermesInternal;
obj.message = "Navigation to " + componentId.componentName;
const obj1 = {};
let componentName1;
if (null != _null) {
componentName1 = _null.componentName;
}
obj1.from = componentName1;
obj1.to = componentId.componentName;
obj.data = obj1;
outer1_0(outer1_1[3]).addBreadcrumb(obj);
pushRecentComponentId(componentId.componentId);
_null = componentId;
store = undefined;
const obj3 = outer1_0(outer1_1[3]);
}
});
function pushRecentComponentId(componentId) {
arr = arr.push(componentId);
if (arr.length > 200) {
arr = arr.slice(arr.length - 200);
}
}
function discardLatestNavigationSpan() {
if (store) {
if (obj.isSentrySpan(store)) {
store._sampled = false;
}
store.end();
store = undefined;
obj = outer1_0(outer1_1[6]);
}
clearStateChangeTimeout();
}
function clearStateChangeTimeout() {
if (undefined !== c1) {
const _clearTimeout = clearTimeout;
clearTimeout(c1);
c1 = undefined;
}
}
return {
name: "ReactNativeNavigation",
afterAllSetup(client) {
let obj = outer1_0(outer1_1[2]);
const reactNativeTracingIntegration = obj.getReactNativeTracingIntegration(client);
if (reactNativeTracingIntegration) {
obj = { finalTimeout: reactNativeTracingIntegration.options.finalTimeoutMs, idleTimeout: reactNativeTracingIntegration.options.idleTimeoutMs };
}
}
};
};