diff --git a/contributingGuides/LOADING_STATE.md b/contributingGuides/LOADING_STATE.md
index 8ed2b4473ed0..ff3cded22543 100644
--- a/contributingGuides/LOADING_STATE.md
+++ b/contributingGuides/LOADING_STATE.md
@@ -57,9 +57,7 @@ const shouldShowLoadingIndicator = isAppLoadPending && !isOffline;
// ...
{shouldShowLoadingIndicator ? (
-
+
) : (
)}
@@ -172,5 +170,3 @@ Keep `HAS_LOADED_APP` and the cold-restart fallback. The queue hook is the prima
Report skeleton consumers use `useIsReportLoadPending(reportID)` wherever pending `OpenReport` work is part of the loading decision. They keep existing readiness checks, including `hasOnceLoadedReportActions`, report data completeness, and offline behavior. A stranded `isLoadingInitialReportActions` value without a matching queue request or in-memory latch must not show a skeleton.
Do not remove the legacy fields as part of this migration. `IS_LOADING_APP` and report loading state still support recovery, report positioning, navigation guards, and the deferred-flush bridge. Skeleton consumers should use the public hooks. Full flag deletion is outside this plan.
-
-**Keep telemetry for a terminal request that still shows a skeleton.** `useSkeletonSpan` in `src/libs/telemetry/useSkeletonSpan.ts` and the `reasonAttributes` prop on `ActivityIndicator` record a span while a skeleton is mounted. They flag skeletons that remain past `CONST.TELEMETRY.CONFIG.SKELETON_MIN_DURATION`. Pass `SkeletonSpanReasonAttributes` with a `context` for the screen and any state that explains the render, such as `isOffline`. This makes the case queryable under the `skeleton.` namespace.
diff --git a/contributingGuides/OBSERVABILITY.md b/contributingGuides/OBSERVABILITY.md
index 07f6b7f1d2bb..9bcaca413aab 100644
--- a/contributingGuides/OBSERVABILITY.md
+++ b/contributingGuides/OBSERVABILITY.md
@@ -37,17 +37,6 @@ Minimum set of parameters required to create a span:
**Span configuration**: Set of parameters passed to `Sentry.startInteractiveSpan`. See the [Sentry docs](https://docs.sentry.io/platforms/react-native/tracing/instrumentation/custom-instrumentation/#starting-inactive-spans-startinactivespan) for more details.
-Additional parameters can be added as a config object (third parameter):
-
-**Minimum Duration**: what's the minimum duration of a span. Spans shorter than this duration are discarded.
-
-```typescript
-startSpan(CONST.TELEMETRY.SPAN_SKELETON, {
- name: CONST.TELEMETRY.SPAN_SKELETON,
- op: CONST.TELEMETRY.SPAN_SKELETON,
-}, {minDuration: CONST.TELEMETRY.CONFIG.SKELETON_MIN_DURATION});
-```
-
#### Finishing a Span
There are two ways to finish a span:
@@ -72,7 +61,7 @@ Defined in `src/CONST/index.ts` under `CONST.TELEMETRY`:
- Span names: `SPAN_OPEN_REPORT`, `SPAN_SEND_MESSAGE`
- Tag names: `TAGS.ACTIVE_POLICY`, `TAGS.AUTHENTICATION_ERROR_TYPE`
- Attribute names: `ATTRIBUTE_REPORT_ID`, `ATTRIBUTE_MESSAGE_LENGTH`
-- Configuration: `CONFIG.SKELETON_MIN_DURATION`
+- Configuration: `CONFIG.MEMORY_TRACKING_INTERVAL`
#### Naming Conventions
@@ -86,7 +75,7 @@ Defined in `src/CONST/index.ts` under `CONST.TELEMETRY`:
### Middleware
Process events before sending to Sentry:
-- **minDurationFilter** - Discards spans shorter than a specified duration
+- **maxDurationFilter** - Discards spans longer than a specified duration
- **scopeTagsEnricher** - Adds cohort and policy tags
- **emailDomainFilter** - Removes accounts we don't want to send telemetry for
@@ -115,7 +104,6 @@ Error conditions tracked for trend analysis:
- **ANRs**: number of "Application Not Responding" errors
- **404 pages**: number of user actions other than deep links that result in 404
-- **Infinite skeletons**: Skeleton visible 10+ seconds
- **Authentication failures**: number of authentication errors other than wrong credentials
### Feature Health
diff --git a/contributingGuides/OBSERVABILITY_METRICS.md b/contributingGuides/OBSERVABILITY_METRICS.md
index 858a5988f675..2e41bc476065 100644
--- a/contributingGuides/OBSERVABILITY_METRICS.md
+++ b/contributingGuides/OBSERVABILITY_METRICS.md
@@ -172,17 +172,6 @@ This document lists all implemented telemetry metrics in the Expensify App.
**End**: Immediately after start (tracking occurrence, not duration) ([`src/libs/telemetry/useAbsentPageSpan.ts`](https://github.com/Expensify/App/blob/8f123f449f1a4533830b18a1040c9a5f1949821d/src/libs/telemetry/useAbsentPageSpan.ts#L39))
**Attributes**: `url`, `navigationSource: 'deeplink' | 'button'`
-### Infinite Skeletons
-
-**Constant**: `CONST.TELEMETRY.SPAN_SKELETON`
-**Sentry Name**: `ManualSkeleton`
-**Threshold**: 10s minimum duration (only sent if visible 10+ seconds)
-**What's Measured**: Number of skeleton components visible longer than expected
-**Start**: Skeleton component mounted ([`src/libs/telemetry/useSkeletonSpan.ts`](https://github.com/Expensify/App/blob/8f123f449f1a4533830b18a1040c9a5f1949821d/src/libs/telemetry/useSkeletonSpan.ts#L13))
-**End**: Component unmounts ([`src/libs/telemetry/useSkeletonSpan.ts`](https://github.com/Expensify/App/blob/8f123f449f1a4533830b18a1040c9a5f1949821d/src/libs/telemetry/useSkeletonSpan.ts#L24))
-**Span ID**: `${CONST.TELEMETRY.SPAN_SKELETON}_${component}_${reactId}`
-**Minimum Duration**: `CONST.TELEMETRY.CONFIG.SKELETON_MIN_DURATION` (10s)
-
### Authentication Failures
**Constants**: `CONST.TELEMETRY.TAGS.AUTHENTICATION_FUNCTION`, `CONST.TELEMETRY.TAGS.AUTHENTICATION_ERROR_TYPE`, `CONST.TELEMETRY.TAGS.AUTHENTICATION_JSON_CODE` ([`src/CONST/index.ts`](https://github.com/Expensify/App/blob/8f123f449f1a4533830b18a1040c9a5f1949821d/src/CONST/index.ts#L1700-L1702))
diff --git a/src/CONST/index.ts b/src/CONST/index.ts
index 0b544b1494dc..842c6553fb43 100644
--- a/src/CONST/index.ts
+++ b/src/CONST/index.ts
@@ -2211,7 +2211,6 @@ const CONST = {
SPAN_GEOLOCATION_WAIT: 'ManualGeolocationWait',
SPAN_SEND_MESSAGE: 'ManualSendMessage',
SPAN_NOT_FOUND_PAGE: 'ManualNotFoundPage',
- SPAN_SKELETON: 'ManualSkeleton',
SPAN_ODOMETER_TO_CONFIRMATION: 'ManualOdometerToConfirmation',
SPAN_ODOMETER_IMAGE_STITCH: 'ManualOdometerImageStitch',
SPAN_ODOMETER_IMAGE_CAPTURE: 'ManualOdometerImageCapture',
@@ -2255,7 +2254,6 @@ const CONST = {
ATTRIBUTE_CANCELED_BY_SKELETON: 'canceled_by_skeleton',
ATTRIBUTE_ROUTE_FROM: 'route_from',
ATTRIBUTE_ROUTE_TO: 'route_to',
- ATTRIBUTE_MIN_DURATION: 'min_duration',
ATTRIBUTE_FINISHED_MANUALLY: 'finished_manually',
ATTRIBUTE_IS_WARM: 'is_warm',
ATTRIBUTE_LAZY_TAB_FALLBACK_SHOWN: 'lazy_tab_fallback_shown',
@@ -2266,7 +2264,6 @@ const CONST = {
// report list, so durations that include the openApp wait can be excluded from render measurements.
ATTRIBUTE_SKELETON_SHOWN: 'skeleton_shown',
ATTRIBUTE_WAS_LIST_EMPTY: 'was_list_empty',
- ATTRIBUTE_SKELETON_PREFIX: 'skeleton.',
ATTRIBUTE_SCENARIO: 'scenario',
// Start type stamped on the navigate-to-reports spans: cold, warm_first, or warm_subsequent.
ATTRIBUTE_START_TYPE: 'start_type',
@@ -2381,10 +2378,7 @@ const CONST = {
WARM_SUBSEQUENT: 'warm_subsequent',
UNKNOWN: 'unknown',
},
- // Event names
- EVENT_SKELETON_ATTRIBUTES_UPDATE: 'skeleton_attributes_updated',
CONFIG: {
- SKELETON_MIN_DURATION: 10_000,
MEMORY_TRACKING_INTERVAL: 2 * 60 * 1000,
// Web Memory Thresholds (% of jsHeapSizeLimit)
diff --git a/src/components/AccountSwitcherSkeletonView/index.tsx b/src/components/AccountSwitcherSkeletonView/index.tsx
index 7446b542968a..30cfefb15cf5 100644
--- a/src/components/AccountSwitcherSkeletonView/index.tsx
+++ b/src/components/AccountSwitcherSkeletonView/index.tsx
@@ -5,9 +5,6 @@ import useStyleUtils from '@hooks/useStyleUtils';
import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
-
import CONST from '@src/CONST';
import type {StyleProp, ViewStyle} from 'react-native';
@@ -29,16 +26,12 @@ type AccountSwitcherSkeletonViewProps = {
/** Additional styles for the skeleton view */
style?: StyleProp;
-
- /** Reason attributes for skeleton span telemetry */
- reasonAttributes: SkeletonSpanReasonAttributes;
};
-function AccountSwitcherSkeletonView({shouldAnimate = true, avatarSize = CONST.AVATAR_SIZE.DEFAULT, width, style, reasonAttributes}: AccountSwitcherSkeletonViewProps) {
+function AccountSwitcherSkeletonView({shouldAnimate = true, avatarSize = CONST.AVATAR_SIZE.DEFAULT, width, style}: AccountSwitcherSkeletonViewProps) {
const theme = useTheme();
const styles = useThemeStyles();
const StyleUtils = useStyleUtils();
- useSkeletonSpan('AccountSwitcherSkeletonView', reasonAttributes);
const avatarPlaceholderSize = StyleUtils.getAvatarSize(avatarSize);
const avatarPlaceholderRadius = avatarPlaceholderSize / 2;
const startPositionX = avatarPlaceholderRadius;
diff --git a/src/components/ActivityIndicator.tsx b/src/components/ActivityIndicator.tsx
index c929d71f930c..fa2f8b2e556a 100644
--- a/src/components/ActivityIndicator.tsx
+++ b/src/components/ActivityIndicator.tsx
@@ -2,8 +2,6 @@ import useTheme from '@hooks/useTheme';
import logAppStateOnLongLoading from '@libs/AppState';
import type {ExtraLoadingContext} from '@libs/AppState';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
@@ -22,14 +20,10 @@ type ActivityIndicatorProps = RNActivityIndicatorProps & {
/** Extra loading context to be passed to the logAppStateOnLongLoading function */
extraLoadingContext?: ExtraLoadingContext;
-
- /** Reason attributes for skeleton span telemetry */
- reasonAttributes: SkeletonSpanReasonAttributes;
};
-function ActivityIndicator({timeout = CONST.TIMING.ACTIVITY_INDICATOR_TIMEOUT, extraLoadingContext, reasonAttributes, ...rest}: ActivityIndicatorProps) {
+function ActivityIndicator({timeout = CONST.TIMING.ACTIVITY_INDICATOR_TIMEOUT, extraLoadingContext, ...rest}: ActivityIndicatorProps) {
const theme = useTheme();
- useSkeletonSpan('ActivityIndicator', reasonAttributes);
useEffect(() => {
const timeoutId = setTimeout(() => {
diff --git a/src/components/AddPlaidBankAccount.tsx b/src/components/AddPlaidBankAccount.tsx
index 2e22ec96400d..e6f018984e46 100644
--- a/src/components/AddPlaidBankAccount.tsx
+++ b/src/components/AddPlaidBankAccount.tsx
@@ -7,7 +7,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import {handlePlaidError, openPlaidBankAccountSelector, openPlaidBankLogin, setPlaidEvent} from '@libs/actions/BankAccounts';
import KeyboardShortcut from '@libs/KeyboardShortcut';
import Log from '@libs/Log';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {handleRestrictedEvent} from '@userActions/App';
@@ -249,13 +248,9 @@ function AddPlaidBankAccount({
}
if (plaidData?.isLoading) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'AddPlaidBankAccount', isLoading: !!plaidData.isLoading};
return (
-
+
);
}
diff --git a/src/components/AddToWalletButton/index.native.tsx b/src/components/AddToWalletButton/index.native.tsx
index f059397e1af1..42787cae9dbb 100644
--- a/src/components/AddToWalletButton/index.native.tsx
+++ b/src/components/AddToWalletButton/index.native.tsx
@@ -8,7 +8,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import {getPaymentMethods} from '@libs/actions/PaymentMethods';
import getPlatform from '@libs/getPlatform';
import Log from '@libs/Log';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {checkIfWalletIsAvailable, handleAddCardToWallet, isCardInWallet} from '@libs/Wallet/index';
import CONST from '@src/CONST';
@@ -98,13 +97,7 @@ function AddToWalletButton({card, cardHolderName, cardDescription, style}: AddTo
}
if (isLoading) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'AddToWalletButton', isLoading};
- return (
-
- );
+ return ;
}
if (isInWallet) {
diff --git a/src/components/AddressSearch/index.tsx b/src/components/AddressSearch/index.tsx
index c979a29cc672..f8c80d144db4 100644
--- a/src/components/AddressSearch/index.tsx
+++ b/src/components/AddressSearch/index.tsx
@@ -16,7 +16,6 @@ import {getCommandURL} from '@libs/ApiUtils';
import getCurrentPosition from '@libs/getCurrentPosition';
import type {GeolocationErrorCodeType} from '@libs/getCurrentPosition/getCurrentPosition.types';
import {getAddressComponents, getPlaceAutocompleteTerms} from '@libs/GooglePlacesUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import variables from '@styles/variables';
@@ -81,7 +80,6 @@ function AddressSearchListEmptyComponent({searchValue, onEmptyChange}: {searchVa
function AddressSearchListLoader({onLoadingChange}: {onLoadingChange: (isLoading: boolean) => void}) {
const styles = useThemeStyles();
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'AddressSearch.listLoader'};
useEffect(() => {
onLoadingChange(true);
@@ -90,7 +88,7 @@ function AddressSearchListLoader({onLoadingChange}: {onLoadingChange: (isLoading
return (
-
+
);
}
@@ -392,11 +390,6 @@ function AddressSearch({
const listLoader = useMemo(() => , []);
- const fetchingLocationReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'AddressSearch.isFetchingCurrentLocation',
- isFetchingCurrentLocation,
- };
-
return (
/*
* The GooglePlacesAutocomplete component uses a VirtualizedList internally,
@@ -538,10 +531,7 @@ function AddressSearch({
{isFetchingCurrentLocation && (
-
+
)}
>
diff --git a/src/components/Attachments/AttachmentCarousel/index.tsx b/src/components/Attachments/AttachmentCarousel/index.tsx
index 40ab3cf1a64c..427f2328a319 100644
--- a/src/components/Attachments/AttachmentCarousel/index.tsx
+++ b/src/components/Attachments/AttachmentCarousel/index.tsx
@@ -108,10 +108,7 @@ function AttachmentCarousel({
if (page == null) {
return (
-
+
);
}
diff --git a/src/components/Attachments/AttachmentView/DefaultAttachmentView/index.tsx b/src/components/Attachments/AttachmentView/DefaultAttachmentView/index.tsx
index eaf8a9222088..4ad5ad9c01b7 100644
--- a/src/components/Attachments/AttachmentView/DefaultAttachmentView/index.tsx
+++ b/src/components/Attachments/AttachmentView/DefaultAttachmentView/index.tsx
@@ -8,8 +8,6 @@ import useLocalize from '@hooks/useLocalize';
import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import type IconAsset from '@src/types/utils/IconAsset';
import type {StyleProp, ViewStyle} from 'react-native';
@@ -44,11 +42,6 @@ function DefaultAttachmentView({fileName = '', shouldShowLoadingSpinnerIcon = fa
const theme = useTheme();
const styles = useThemeStyles();
const {translate} = useLocalize();
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'DefaultAttachmentView',
- shouldShowLoadingSpinnerIcon,
- isUploading,
- };
return (
@@ -76,7 +69,6 @@ function DefaultAttachmentView({fileName = '', shouldShowLoadingSpinnerIcon = fa
diff --git a/src/components/AvatarCropModal/AvatarCropView.tsx b/src/components/AvatarCropModal/AvatarCropView.tsx
index 2d3a21170a6d..94c1c33b49b7 100644
--- a/src/components/AvatarCropModal/AvatarCropView.tsx
+++ b/src/components/AvatarCropModal/AvatarCropView.tsx
@@ -16,7 +16,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import cropOrRotateImage from '@libs/cropOrRotateImage';
import type {CustomRNImageManipulatorResult} from '@libs/cropOrRotateImage/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
import type IconAsset from '@src/types/utils/IconAsset';
@@ -24,7 +23,7 @@ import type IconAsset from '@src/types/utils/IconAsset';
import type {LayoutChangeEvent} from 'react-native';
import type {GestureUpdateEvent, PanGestureChangeEventPayload, PanGestureHandlerEventPayload} from 'react-native-gesture-handler';
-import React, {useCallback, useEffect, useMemo, useState} from 'react';
+import React, {useCallback, useEffect, useState} from 'react';
import {View} from 'react-native';
import {Gesture, GestureHandlerRootView} from 'react-native-gesture-handler';
import ImageSize from 'react-native-image-size';
@@ -333,15 +332,6 @@ function AvatarCropView({imageUri = '', imageName = '', imageType = '', onClose,
updateImageOffset(newX, newY);
};
- const reasonAttributes = useMemo(
- () => ({
- context: 'AvatarCropModal',
- isImageInitialized,
- isImageContainerInitialized,
- }),
- [isImageInitialized, isImageContainerInitialized],
- );
-
return (
) : (
<>
diff --git a/src/components/AvatarSkeleton.tsx b/src/components/AvatarSkeleton.tsx
index 75416dad0efd..34f9e3e16f49 100644
--- a/src/components/AvatarSkeleton.tsx
+++ b/src/components/AvatarSkeleton.tsx
@@ -1,9 +1,6 @@
import useStyleUtils from '@hooks/useStyleUtils';
import useTheme from '@hooks/useTheme';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
-
import CONST from '@src/CONST';
import type {ValueOf} from 'type-fest';
@@ -15,12 +12,10 @@ import SkeletonViewContentLoader from './SkeletonViewContentLoader';
type AvatarSkeletonProps = {
size?: ValueOf;
- reasonAttributes: SkeletonSpanReasonAttributes;
};
-function AvatarSkeleton({size = CONST.AVATAR_SIZE.SMALL, reasonAttributes}: AvatarSkeletonProps) {
+function AvatarSkeleton({size = CONST.AVATAR_SIZE.SMALL}: AvatarSkeletonProps) {
const theme = useTheme();
- useSkeletonSpan('AvatarSkeleton', reasonAttributes);
const StyleUtils = useStyleUtils();
const avatarSize = StyleUtils.getAvatarSize(size);
const skeletonCircleRadius = avatarSize / 2;
diff --git a/src/components/AvatarWithIndicator.tsx b/src/components/AvatarWithIndicator.tsx
index 1b507f35b60b..151156e8e983 100644
--- a/src/components/AvatarWithIndicator.tsx
+++ b/src/components/AvatarWithIndicator.tsx
@@ -39,7 +39,7 @@ function AvatarWithIndicator({source, accountID, tooltipText = '', fallbackIcon,
{isLoading ? (
-
+
) : (
<>
{
if ('children' in rest) {
return rest.children;
@@ -555,7 +550,6 @@ function Button({
color={loadingIndicatorColor}
style={[styles.pAbsolute, styles.l0, styles.r0]}
size={extraSmall ? 12 : undefined}
- reasonAttributes={buttonLoadingReasonAttributes}
/>
)}
diff --git a/src/components/ButtonComposed/Button.tsx b/src/components/ButtonComposed/Button.tsx
index e5d8ee97d8e0..5365f18c45f0 100644
--- a/src/components/ButtonComposed/Button.tsx
+++ b/src/components/ButtonComposed/Button.tsx
@@ -8,7 +8,6 @@ import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
import HapticFeedback from '@libs/HapticFeedback';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
@@ -58,9 +57,6 @@ function Button({
const styles = useThemeStyles();
const StyleUtils = useStyleUtils();
const [isHovered, setIsHovered] = useState(false);
- const buttonLoadingReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'Button',
- };
const contextValue = useMemo(
() => ({
@@ -221,7 +217,6 @@ function Button({
)}
diff --git a/src/components/Charts/BarChart/BarChartContent.tsx b/src/components/Charts/BarChart/BarChartContent.tsx
index 36b8451539ee..58ea85e105a8 100644
--- a/src/components/Charts/BarChart/BarChartContent.tsx
+++ b/src/components/Charts/BarChart/BarChartContent.tsx
@@ -20,8 +20,6 @@ import VictoryTheme, {CHART_CONTENT_MIN_HEIGHT, GLYPH_PADDING} from '@components
import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import variables from '@styles/variables';
import type {LayoutChangeEvent} from 'react-native';
@@ -236,13 +234,9 @@ function BarChartContentBody({data, isLoading, yAxisUnit, yAxisUnitPosition = 'l
const chartPadding = {...VictoryTheme.axis.padding, bottom: labelSpace + VictoryTheme.axis.padding.bottom, left: yAxisLabelWidth + GLYPH_PADDING};
if (isLoading || !fontManager) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'BarChartContent', isLoading, isFontLoading: !fontManager};
return (
-
+
);
}
diff --git a/src/components/Charts/BarChart/index.tsx b/src/components/Charts/BarChart/index.tsx
index 38f2ac4290ff..1a7d477d6588 100644
--- a/src/components/Charts/BarChart/index.tsx
+++ b/src/components/Charts/BarChart/index.tsx
@@ -10,7 +10,6 @@ function BarChart(props: BarChartProps) {
);
}
diff --git a/src/components/Charts/LineChart/LineChartContent.tsx b/src/components/Charts/LineChart/LineChartContent.tsx
index 2f085da577cd..131a831f7b75 100644
--- a/src/components/Charts/LineChart/LineChartContent.tsx
+++ b/src/components/Charts/LineChart/LineChartContent.tsx
@@ -22,8 +22,6 @@ import VictoryTheme, {CHART_CONTENT_MIN_HEIGHT, GLYPH_PADDING, LABEL_PADDING, LA
import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import variables from '@styles/variables';
import type {LayoutChangeEvent} from 'react-native';
@@ -234,13 +232,9 @@ function LineChartContentBody({data, isLoading, yAxisUnit, yAxisUnitPosition = '
};
if (isLoading || !fontManager) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'LineChartContent', isLoading, isFontLoading: !fontManager};
return (
-
+
);
}
diff --git a/src/components/Charts/LineChart/index.tsx b/src/components/Charts/LineChart/index.tsx
index 61744339fe96..7de73f7fcf44 100644
--- a/src/components/Charts/LineChart/index.tsx
+++ b/src/components/Charts/LineChart/index.tsx
@@ -10,7 +10,6 @@ function LineChart(props: LineChartProps) {
);
}
diff --git a/src/components/Charts/PieChart/PieChartContent.tsx b/src/components/Charts/PieChart/PieChartContent.tsx
index 30347edab3fb..33ea00f34383 100644
--- a/src/components/Charts/PieChart/PieChartContent.tsx
+++ b/src/components/Charts/PieChart/PieChartContent.tsx
@@ -9,8 +9,6 @@ import Text from '@components/Text';
import useLocalize from '@hooks/useLocalize';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import type {LayoutChangeEvent} from 'react-native';
import React, {useState} from 'react';
@@ -153,13 +151,9 @@ function PieChartContent({data, isLoading, valueUnit, valueUnitPosition, onSlice
};
if (isLoading) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'PieChartContent', isLoading};
return (
-
+
);
}
diff --git a/src/components/Charts/PieChart/index.tsx b/src/components/Charts/PieChart/index.tsx
index 933872947776..66999fee714f 100644
--- a/src/components/Charts/PieChart/index.tsx
+++ b/src/components/Charts/PieChart/index.tsx
@@ -11,7 +11,6 @@ function PieChart(props: PieChartProps) {
);
}
diff --git a/src/components/Charts/SkiaWebChart/index.tsx b/src/components/Charts/SkiaWebChart/index.tsx
index f064476f6c2c..15cf29d06531 100644
--- a/src/components/Charts/SkiaWebChart/index.tsx
+++ b/src/components/Charts/SkiaWebChart/index.tsx
@@ -6,8 +6,6 @@ import {useMemoizedLazyIllustrations} from '@hooks/useLazyAsset';
import useLocalize from '@hooks/useLocalize';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import variables from '@styles/variables';
import type {ComponentType} from 'react';
@@ -26,7 +24,6 @@ type SkiaWebChartProps = {
componentProps: TProps;
/** Identifies the loading skeleton span for telemetry. */
- reasonContext: string;
};
function ChartUnavailable() {
@@ -55,7 +52,7 @@ function ChartUnavailable() {
// `object` mirrors WithSkiaWeb's own constraint; `Record` would reject the
// interface-based render-html renderer props (VictoryChartRendererProps) that lack an index signature.
// eslint-disable-next-line @typescript-eslint/no-restricted-types
-function SkiaWebChart({getComponent, componentProps, reasonContext}: SkiaWebChartProps) {
+function SkiaWebChart({getComponent, componentProps}: SkiaWebChartProps) {
const styles = useThemeStyles();
// Probe once per mount (not per render) so re-rendering doesn't repeatedly create WebGL contexts,
@@ -67,13 +64,9 @@ function SkiaWebChart({getComponent, componentProps, reas
return ;
}
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: reasonContext};
const fallback = (
-
+
);
diff --git a/src/components/ConfirmContent.tsx b/src/components/ConfirmContent.tsx
index c658a997cf73..f64c36a289ac 100644
--- a/src/components/ConfirmContent.tsx
+++ b/src/components/ConfirmContent.tsx
@@ -219,12 +219,7 @@ function ConfirmContent({
title={title}
textStyles={titleStyles}
/>
- {isTitleLoading && (
-
- )}
+ {isTitleLoading && }
{shouldEnablePromptScroll ? {promptContent} : promptContent}
diff --git a/src/components/ConnectToHRFlow/index.ios.tsx b/src/components/ConnectToHRFlow/index.ios.tsx
index 5670ad149a14..195d270caa92 100644
--- a/src/components/ConnectToHRFlow/index.ios.tsx
+++ b/src/components/ConnectToHRFlow/index.ios.tsx
@@ -82,10 +82,7 @@ function ConnectToHRFlow({setupLink, onDone}: ConnectToHRFlowProps) {
/>
-
+
diff --git a/src/components/ConnectToHRFlow/index.native.tsx b/src/components/ConnectToHRFlow/index.native.tsx
index dedec1fbb620..b2457cee63bd 100644
--- a/src/components/ConnectToHRFlow/index.native.tsx
+++ b/src/components/ConnectToHRFlow/index.native.tsx
@@ -62,10 +62,7 @@ function ConnectToHRFlow({setupLink, onDone}: ConnectToHRFlowProps) {
const renderLoading = () => (
-
+
);
diff --git a/src/components/Domain/CopyableTextField.tsx b/src/components/Domain/CopyableTextField.tsx
index b3795cc01489..c2408963c6db 100644
--- a/src/components/Domain/CopyableTextField.tsx
+++ b/src/components/Domain/CopyableTextField.tsx
@@ -8,8 +8,6 @@ import useLocalize from '@hooks/useLocalize';
import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import type {StyleProp, TextStyle, ViewStyle} from 'react-native';
import React, {useState} from 'react';
@@ -40,17 +38,10 @@ function CopyableTextField({value, isLoading = false, style, textStyle, shouldDi
const [expanded, setExpanded] = useState(false);
const icons = useMemoizedLazyExpensifyIcons(['DownArrow', 'UpArrow']);
- const copyableTextFieldLoadingReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'CopyableTextField',
- };
-
return (
{isLoading ? (
-
+
) : (
<>
diff --git a/src/components/ExpensifyCardStatementPDFDownloadModal.tsx b/src/components/ExpensifyCardStatementPDFDownloadModal.tsx
index b92f5a80fb0e..e53f6b447341 100644
--- a/src/components/ExpensifyCardStatementPDFDownloadModal.tsx
+++ b/src/components/ExpensifyCardStatementPDFDownloadModal.tsx
@@ -41,7 +41,6 @@ function ExpensifyCardStatementPDFDownloadModal({statementParams, isVisible, onC
onModalHide={onModalHide}
hasFinishedPDFDownload={hasFinishedPDFDownload}
message={message}
- loadingReasonContext="SearchBulkActions.ExpensifyCardStatementPDFModal"
shouldCloseOnDownload
shouldUseSuccessButton
onDownloadPDF={() => {
diff --git a/src/components/ExportDownloadStatusModal.tsx b/src/components/ExportDownloadStatusModal.tsx
index a64eeae60087..086291969a4a 100644
--- a/src/components/ExportDownloadStatusModal.tsx
+++ b/src/components/ExportDownloadStatusModal.tsx
@@ -116,10 +116,7 @@ function ExportDownloadStatusModal({exportID, isVisible, onClose, failedBody}: E
<>
{translate('exportDownload.preparingTitle')}
-
+
{translate('exportDownload.preparingBody')}
;
+ return ;
}
return (
diff --git a/src/components/FullScreenLoaderContext.tsx b/src/components/FullScreenLoaderContext.tsx
index 408b788f0c41..4c03ed0e1ac1 100644
--- a/src/components/FullScreenLoaderContext.tsx
+++ b/src/components/FullScreenLoaderContext.tsx
@@ -52,7 +52,7 @@ function FullScreenLoaderContextProvider({children}: FullScreenLoaderContextProv
{children}
- {isLoaderVisible && }
+ {isLoaderVisible && }
);
diff --git a/src/components/FullscreenLoadingIndicator.tsx b/src/components/FullscreenLoadingIndicator.tsx
index 6fd35b10c505..c3dfcdb425dd 100644
--- a/src/components/FullscreenLoadingIndicator.tsx
+++ b/src/components/FullscreenLoadingIndicator.tsx
@@ -3,8 +3,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import type {ExtraLoadingContext} from '@libs/AppState';
import Navigation from '@libs/Navigation/Navigation';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
@@ -34,9 +32,6 @@ type FullScreenLoadingIndicatorProps = {
/** Extra loading context to be passed to the logAppStateOnLongLoading function */
extraLoadingContext?: ExtraLoadingContext;
-
- /** Reason attributes for skeleton span telemetry */
- reasonAttributes: SkeletonSpanReasonAttributes;
};
function FullScreenLoadingIndicator({
@@ -45,12 +40,10 @@ function FullScreenLoadingIndicator({
shouldUseGoBackButton = false,
testID = '',
extraLoadingContext,
- reasonAttributes,
}: FullScreenLoadingIndicatorProps) {
const styles = useThemeStyles();
const {translate} = useLocalize();
const [showGoBackButton, setShowGoBackButton] = useState(false);
- useSkeletonSpan('FullScreenLoadingIndicator', reasonAttributes);
useEffect(() => {
if (!shouldUseGoBackButton) {
@@ -70,7 +63,6 @@ function FullScreenLoadingIndicator({
size={iconSize}
testID={testID}
extraLoadingContext={extraLoadingContext}
- reasonAttributes={reasonAttributes}
/>
{showGoBackButton && shouldUseGoBackButton && (
diff --git a/src/components/HTMLEngineProvider/HTMLRenderers/VictoryChartRenderer/index.tsx b/src/components/HTMLEngineProvider/HTMLRenderers/VictoryChartRenderer/index.tsx
index ba3d14c1cad9..f9270dbd569d 100644
--- a/src/components/HTMLEngineProvider/HTMLRenderers/VictoryChartRenderer/index.tsx
+++ b/src/components/HTMLEngineProvider/HTMLRenderers/VictoryChartRenderer/index.tsx
@@ -12,7 +12,6 @@ function VictoryChartRenderer(props: VictoryChartRendererProps) {
);
}
diff --git a/src/components/HeaderWithBackButton/index.tsx b/src/components/HeaderWithBackButton/index.tsx
index 877a5da1cce7..40787401f1ed 100755
--- a/src/components/HeaderWithBackButton/index.tsx
+++ b/src/components/HeaderWithBackButton/index.tsx
@@ -23,7 +23,6 @@ import useThrottledButtonState from '@hooks/useThrottledButtonState';
import getButtonState from '@libs/getButtonState';
import Navigation from '@libs/Navigation/Navigation';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {getAccountIDFromAvatarID} from '@libs/UserAvatarUtils';
import variables from '@styles/variables';
@@ -102,22 +101,6 @@ function HeaderWithBackButton({
const isInLandscapeMode = useIsInLandscapeMode();
const setBackButtonRef = useInitialFocusRef({shouldSkip: shouldSkipFocusAfterTransition});
- const downloadReasonAttributes = useMemo(
- () => ({
- context: 'HeaderWithBackButton.Download',
- isDownloading,
- }),
- [isDownloading],
- );
-
- const rotateReasonAttributes = useMemo(
- () => ({
- context: 'HeaderWithBackButton.Rotate',
- isRotating,
- }),
- [isRotating],
- );
-
const middleContent = useMemo(() => {
const stepCounterTranslation = stepCounter ? translate('stepCounter', stepCounter.step, stepCounter.total, stepCounter.text) : undefined;
if (progressBarPercentage) {
@@ -337,10 +320,7 @@ function HeaderWithBackButton({
) : (
-
+
))}
{shouldShowRotateButton &&
(!isRotating ? (
@@ -359,10 +339,7 @@ function HeaderWithBackButton({
) : (
-
+
))}
{shouldShowPinButton && !!report && }
diff --git a/src/components/Image/types.ts b/src/components/Image/types.ts
index 3f0c9268456f..49d4d0a1bd54 100644
--- a/src/components/Image/types.ts
+++ b/src/components/Image/types.ts
@@ -1,7 +1,5 @@
import type {FullScreenLoadingIndicatorIconSize} from '@components/FullscreenLoadingIndicator';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import type CONST from '@src/CONST';
import type {ImagePrefetchOptions, ImageSource} from 'expo-image';
@@ -57,9 +55,6 @@ type ImageOwnProps = BaseImageProps & {
/** The style of the loading indicator */
loadingIndicatorStyles?: StyleProp;
- /** Reason attributes for skeleton span telemetry */
- reasonAttributes?: SkeletonSpanReasonAttributes;
-
/** Event for when the image begins loading */
onLoadStart?: () => void;
diff --git a/src/components/ImageWithSizeCalculation.tsx b/src/components/ImageWithSizeCalculation.tsx
index 7710611bda61..c82c224ef643 100644
--- a/src/components/ImageWithSizeCalculation.tsx
+++ b/src/components/ImageWithSizeCalculation.tsx
@@ -1,7 +1,6 @@
import useThemeStyles from '@hooks/useThemeStyles';
import Log from '@libs/Log';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
@@ -57,9 +56,6 @@ type ImageWithSizeCalculationProps = {
/** The resize mode of the image */
resizeMode?: ImageResizeMode;
- /** Reason attributes for skeleton span telemetry */
- reasonAttributes?: SkeletonSpanReasonAttributes;
-
/** Low-resolution URI shown as a placeholder while the full image loads */
previewUri?: string;
};
@@ -82,7 +78,6 @@ function ImageWithSizeCalculation({
loadingIndicatorStyles,
onLoad,
resizeMode,
- reasonAttributes,
previewUri,
}: ImageWithSizeCalculationProps) {
const styles = useThemeStyles();
@@ -113,7 +108,6 @@ function ImageWithSizeCalculation({
objectPosition={objectPosition}
loadingIconSize={loadingIconSize}
loadingIndicatorStyles={loadingIndicatorStyles}
- reasonAttributes={reasonAttributes}
previewUri={previewUri}
/>
);
diff --git a/src/components/Lightbox/index.tsx b/src/components/Lightbox/index.tsx
index bc65d0153f99..e464ac97653b 100644
--- a/src/components/Lightbox/index.tsx
+++ b/src/components/Lightbox/index.tsx
@@ -14,7 +14,6 @@ import useStyleUtils from '@hooks/useStyleUtils';
import useThemeStyles from '@hooks/useThemeStyles';
import {isLocalFile} from '@libs/fileDownload/FileUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
import type {Dimensions} from '@src/types/utils/Layout';
@@ -200,15 +199,6 @@ function Lightbox({attachmentID, isAuthTokenRequired = false, uri, onScaleChange
const isALocalFile = isLocalFile(uri);
const shouldShowOfflineIndicator = isOffline && !isLoading && !isALocalFile;
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'Lightbox',
- isImageLoaded,
- isLoadingPreviousUri: false,
- isOffline,
- isLoading,
- isALocalFile,
- };
-
return (
)}
{!isImageLoaded && shouldShowOfflineIndicator && }
diff --git a/src/components/LoadingIndicator.tsx b/src/components/LoadingIndicator.tsx
index 5b4fe688c1d8..393a8f5750ea 100644
--- a/src/components/LoadingIndicator.tsx
+++ b/src/components/LoadingIndicator.tsx
@@ -1,7 +1,5 @@
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import CONST from '@src/CONST';
import type {ActivityIndicatorProps as RNActivityIndicatorProps, StyleProp, ViewStyle} from 'react-native';
@@ -19,21 +17,15 @@ type LoadingIndicatorProps = {
/** Size of the icon */
iconSize?: LoadingIndicatorIconSize;
-
- /** Reason attributes for skeleton span telemetry */
- reasonAttributes?: SkeletonSpanReasonAttributes;
};
-function LoadingIndicator({style, iconSize, reasonAttributes}: LoadingIndicatorProps) {
+function LoadingIndicator({style, iconSize}: LoadingIndicatorProps) {
const styles = useThemeStyles();
return (
-
+
);
diff --git a/src/components/MapView/MapView.web.tsx b/src/components/MapView/MapView.web.tsx
index 482b95d837ed..6030df312f83 100644
--- a/src/components/MapView/MapView.web.tsx
+++ b/src/components/MapView/MapView.web.tsx
@@ -5,8 +5,6 @@ import useNetwork from '@hooks/useNetwork';
import usePrevious from '@hooks/usePrevious';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import React, {lazy, Suspense, useEffect, useState} from 'react';
import {ErrorBoundary} from 'react-error-boundary';
@@ -22,11 +20,6 @@ function MapView({ref, ...props}: MapViewProps) {
const styles = useThemeStyles();
const [errorResetKey, setErrorResetKey] = useState(0);
- const mapLoadingReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'MapView',
- isOffline,
- };
-
// Retry the error when reconnecting.
const wasOffline = usePrevious(isOffline);
useEffect(() => {
@@ -52,7 +45,6 @@ function MapView({ref, ...props}: MapViewProps) {
}
>
diff --git a/src/components/MenuItem.tsx b/src/components/MenuItem.tsx
index a82456cea509..40605a553a8d 100644
--- a/src/components/MenuItem.tsx
+++ b/src/components/MenuItem.tsx
@@ -13,7 +13,6 @@ import type {ForwardedFSClassProps} from '@libs/Fullstory/types';
import getButtonState from '@libs/getButtonState';
import mergeRefs from '@libs/mergeRefs';
import Parser from '@libs/Parser';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import type {AvatarSource} from '@libs/UserAvatarUtils';
import TextWithEmojiFragment from '@pages/inbox/report/comment/TextWithEmojiFragment';
@@ -665,9 +664,6 @@ function MenuItem({
} else if (isCompactPopoverItem) {
descriptionVerticalMargin = styles.mt0Half;
}
- const menuItemLoadingReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'MenuItem',
- };
const defaultAccessibilityLabel = (shouldShowDescriptionOnTop ? [description, title] : [title, description]).filter(Boolean).join(', ');
const isNewWindowIcon = iconRight === icons.NewWindow;
let enhancedAccessibilityLabel = accessibilityLabel ?? defaultAccessibilityLabel;
@@ -994,10 +990,7 @@ function MenuItem({
additionalStyles={additionalIconStyles}
/>
) : (
-
+
))}
{iconType === CONST.ICON_TYPE_WORKSPACE && (
;
+ return ;
}
return null;
diff --git a/src/components/MoneyReportHeaderStatusBarSkeleton.tsx b/src/components/MoneyReportHeaderStatusBarSkeleton.tsx
index 3134727e1026..a6e5e771991f 100644
--- a/src/components/MoneyReportHeaderStatusBarSkeleton.tsx
+++ b/src/components/MoneyReportHeaderStatusBarSkeleton.tsx
@@ -1,23 +1,15 @@
import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
-
import React from 'react';
import {View} from 'react-native';
import SkeletonRect from './SkeletonRect';
import SkeletonViewContentLoader from './SkeletonViewContentLoader';
-type MoneyReportHeaderStatusBarSkeletonProps = {
- reasonAttributes: SkeletonSpanReasonAttributes;
-};
-
-function MoneyReportHeaderStatusBarSkeleton({reasonAttributes}: MoneyReportHeaderStatusBarSkeletonProps) {
+function MoneyReportHeaderStatusBarSkeleton() {
const styles = useThemeStyles();
const theme = useTheme();
- useSkeletonSpan('MoneyReportHeaderStatusBarSkeleton', reasonAttributes);
return (
diff --git a/src/components/MoneyRequestConfirmationListFooter/ConfirmationReceiptThumbnail.tsx b/src/components/MoneyRequestConfirmationListFooter/ConfirmationReceiptThumbnail.tsx
index ec26301106f2..a9b180f528b1 100644
--- a/src/components/MoneyRequestConfirmationListFooter/ConfirmationReceiptThumbnail.tsx
+++ b/src/components/MoneyRequestConfirmationListFooter/ConfirmationReceiptThumbnail.tsx
@@ -132,7 +132,7 @@ function ConfirmationReceiptThumbnail({
style={[styles.moneyRequestImage, receiptContainerStyle, isLoadingReceipt && [styles.justifyContentCenter, styles.alignItemsCenter]]}
onLayout={isCompactMode ? onCompactReceiptContainerLayout : undefined}
>
- {isLoadingReceipt && }
+ {isLoadingReceipt && }
{!isLoadingReceipt &&
(isPDF ? (
}
diff --git a/src/components/MoneyRequestReportView/MoneyRequestReportTransactionList.tsx b/src/components/MoneyRequestReportView/MoneyRequestReportTransactionList.tsx
index de0c9de035e6..cc44335de4bd 100644
--- a/src/components/MoneyRequestReportView/MoneyRequestReportTransactionList.tsx
+++ b/src/components/MoneyRequestReportView/MoneyRequestReportTransactionList.tsx
@@ -53,7 +53,6 @@ import {
import type {SortableColumnName} from '@libs/ReportUtils';
import {compareValues, getColumnsToShow, getTableMinWidth, hasFlexColumn, isTransactionAmountTooLong, isTransactionTaxAmountTooLong} from '@libs/SearchUIUtils';
import {getPendingSubmitFollowUpAction} from '@libs/telemetry/submitFollowUpAction';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {transactionHasRBR} from '@libs/TransactionPreviewUtils';
import {getTransactionPendingAction, getVisibleTransactionViolations, isTransactionPendingDelete, shouldShowExpenseBreakdown} from '@libs/TransactionUtils';
import shouldShowTransactionPostedYear from '@libs/TransactionUtils/shouldShowTransactionPostedYear';
@@ -93,8 +92,6 @@ import MoneyRequestReportTransactionLongPressModal from './MoneyRequestReportTra
import MoneyRequestReportUnifiedList from './MoneyRequestReportUnifiedList';
import SearchMoneyRequestReportEmptyState from './SearchMoneyRequestReportEmptyState';
-const PENDING_EXPENSE_REASON_ATTRIBUTES = {context: 'MoneyRequestReportTransactionList.PendingExpensePlaceholder'} as const;
-
type TransactionWithOptionalHighlight = OnyxTypes.Transaction & {
/** Whether the transaction should be highlighted, when it is added to the report */
shouldBeHighlighted?: boolean;
@@ -240,9 +237,6 @@ type MoneyRequestReportTransactionListProps = {
/** Whether the initial report actions are still loading. */
isLoadingInitialActions: boolean;
- /** Reason attributes forwarded to the loading skeleton span. */
- skeletonReasonAttributes: SkeletonSpanReasonAttributes;
-
/** Rendered at the very bottom of the list, below all report actions (e.g. the Concierge thinking tail indicator). */
listFooterComponent?: React.ReactElement;
};
@@ -279,7 +273,6 @@ function MoneyRequestReportTransactionList({
onStartReached,
contentContainerStyle,
isLoadingInitialActions,
- skeletonReasonAttributes,
listFooterComponent,
}: MoneyRequestReportTransactionListProps) {
useCopySelectionHelper();
@@ -1013,7 +1006,6 @@ function MoneyRequestReportTransactionList({
isLoadMore
containerStyle={styles.mhn5}
shouldUseNarrowLayout={false}
- reasonAttributes={PENDING_EXPENSE_REASON_ATTRIBUTES}
/>
)}
@@ -1139,7 +1131,6 @@ function MoneyRequestReportTransactionList({
contentContainerStyle={contentContainerStyle}
isOffline={isOffline}
isLoadingInitialActions={isLoadingInitialActions}
- skeletonReasonAttributes={skeletonReasonAttributes}
listFooterComponent={listFooterComponent}
/>
void;
@@ -159,7 +154,6 @@ function MoneyRequestReportUnifiedList({
contentContainerStyle,
isOffline,
isLoadingInitialActions,
- skeletonReasonAttributes,
onLastItemIndexChange,
listFooterComponent,
}: MoneyRequestReportUnifiedListProps) {
@@ -394,10 +388,10 @@ function MoneyRequestReportUnifiedList({
onScrollBeginDrag={onScrollBeginDrag}
onContentSizeChange={onContentSizeChange}
contentContainerStyle={contentContainerStyle}
- ListEmptyComponent={shouldShowActionsLoadingSkeleton ? : undefined}
+ ListEmptyComponent={shouldShowActionsLoadingSkeleton ? : undefined}
ListFooterComponent={
<>
- {shouldInlineTransactions && shouldShowActionsLoadingSkeleton && }
+ {shouldInlineTransactions && shouldShowActionsLoadingSkeleton && }
{listFooterComponent}
>
}
diff --git a/src/components/MoneyRequestReportView/MoneyRequestReportView.tsx b/src/components/MoneyRequestReportView/MoneyRequestReportView.tsx
index f1f560e1a81b..b1cd8f0dea9c 100644
--- a/src/components/MoneyRequestReportView/MoneyRequestReportView.tsx
+++ b/src/components/MoneyRequestReportView/MoneyRequestReportView.tsx
@@ -24,7 +24,6 @@ import {getFilteredReportActionsForReportView, getOneTransactionThreadReportID}
import {getReportOfflinePendingActionAndErrors, isReportTransactionThread} from '@libs/ReportUtils';
import {buildCannedSearchQuery} from '@libs/SearchQueryUtils';
import {cancelSpan} from '@libs/telemetry/activeSpans';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import Navigation from '@navigation/Navigation';
@@ -53,8 +52,6 @@ import {Animated, ScrollView, View} from 'react-native';
import MoneyRequestReportActionsList from './MoneyRequestReportActionsList';
-const loadingAppReasonAttributes: SkeletonSpanReasonAttributes = {context: 'MoneyRequestReportView.isLoadingApp'};
-
type MoneyRequestReportViewProps = {
/** The report */
report: OnyxEntry;
@@ -99,17 +96,14 @@ function goBackFromSearchMoneyRequest(options?: {afterTransition?: () => void})
Navigation.goBack(ROUTES.SEARCH_ROOT.getRoute({query: buildCannedSearchQuery()}), options);
}
-function InitialLoadingSkeleton({styles, onLayout, reasonAttributes}: {styles: ThemeStyles; onLayout?: (event: LayoutChangeEvent) => void; reasonAttributes: SkeletonSpanReasonAttributes}) {
+function InitialLoadingSkeleton({styles, onLayout}: {styles: ThemeStyles; onLayout?: (event: LayoutChangeEvent) => void}) {
return (
- {}}
- reasonAttributes={reasonAttributes}
- />
+ {}} />
@@ -214,17 +208,7 @@ function MoneyRequestReportView({report, reportLoadingState, shouldDisplayReport
useMarkOpenReportEndOnSkeleton(report, shouldShowOpenReportLoadingSkeleton);
if (shouldShowOpenReportLoadingSkeleton) {
- const skeletonReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'MoneyRequestReportView.InitialLoadingSkeleton',
- isReportLoadPending,
- shouldWaitForTransactions,
- };
- return (
-
- );
+ return ;
}
if (reportActions.length === 0) {
@@ -238,7 +222,7 @@ function MoneyRequestReportView({report, reportLoadingState, shouldDisplayReport
if (isAppLoadPending) {
return (
-
+
{shouldDisplayReportFooter ? : null}
diff --git a/src/components/MoneyRequestReportView/ReportActionsListLoadingSkeleton.tsx b/src/components/MoneyRequestReportView/ReportActionsListLoadingSkeleton.tsx
index 67a8313eb78d..bb64baef88dd 100644
--- a/src/components/MoneyRequestReportView/ReportActionsListLoadingSkeleton.tsx
+++ b/src/components/MoneyRequestReportView/ReportActionsListLoadingSkeleton.tsx
@@ -1,18 +1,9 @@
import ReportActionsSkeletonView from '@components/ReportActionsSkeletonView';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
-
import React from 'react';
import Animated, {FadeIn, FadeOut} from 'react-native-reanimated';
-type ReportActionsListLoadingSkeletonProps = {
- reasonAttributes: SkeletonSpanReasonAttributes;
-};
-
-function ReportActionsListLoadingSkeleton({reasonAttributes}: ReportActionsListLoadingSkeletonProps) {
- useSkeletonSpan('ReportActionsListLoadingSkeleton', reasonAttributes);
-
+function ReportActionsListLoadingSkeleton() {
return (
;
+ return ;
}
export default Onfido;
diff --git a/src/components/OptionsListSkeletonView.tsx b/src/components/OptionsListSkeletonView.tsx
index 26bd44bd7865..7cfea400d649 100644
--- a/src/components/OptionsListSkeletonView.tsx
+++ b/src/components/OptionsListSkeletonView.tsx
@@ -1,8 +1,5 @@
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
-
import type {LayoutChangeEvent} from 'react-native';
import React from 'react';
@@ -30,21 +27,11 @@ type OptionsListSkeletonViewProps = {
shouldStyleAsTable?: boolean;
fixedNumItems?: number;
speed?: number;
- reasonAttributes: SkeletonSpanReasonAttributes;
onLayout?: (event: LayoutChangeEvent) => void;
};
-function OptionsListSkeletonView({
- shouldAnimate = true,
- shouldStyleAsTable = false,
- gradientOpacityEnabled = false,
- fixedNumItems,
- speed,
- reasonAttributes,
- onLayout,
-}: OptionsListSkeletonViewProps) {
+function OptionsListSkeletonView({shouldAnimate = true, shouldStyleAsTable = false, gradientOpacityEnabled = false, fixedNumItems, speed, onLayout}: OptionsListSkeletonViewProps) {
const styles = useThemeStyles();
- useSkeletonSpan('OptionsListSkeletonView', reasonAttributes);
return (
void;
- /** Telemetry context for the loading indicator's skeleton span */
- loadingReasonContext: string;
-
/** Whether pressing the download button also closes the modal */
shouldCloseOnDownload?: boolean;
@@ -60,7 +55,6 @@ function PDFDownloadModal({
hasFinishedPDFDownload,
message,
onDownloadPDF,
- loadingReasonContext,
shouldCloseOnDownload = false,
shouldUseSuccessButton = false,
isVisible,
@@ -90,10 +84,6 @@ function PDFDownloadModal({
shouldAutoDownloadPDF.current = false;
}, [hasFinishedPDFDownload, isVisible, onDownloadPDF]);
- const pdfLoadingReasonAttributes: SkeletonSpanReasonAttributes = {
- context: loadingReasonContext,
- };
-
return (
)}
diff --git a/src/components/PDFThumbnail/index.native.tsx b/src/components/PDFThumbnail/index.native.tsx
index 1382fff35715..81e480813121 100644
--- a/src/components/PDFThumbnail/index.native.tsx
+++ b/src/components/PDFThumbnail/index.native.tsx
@@ -2,8 +2,6 @@ import LoadingIndicator from '@components/LoadingIndicator';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import React, {useState} from 'react';
import {View} from 'react-native';
import Pdf from 'react-native-pdf';
@@ -12,8 +10,6 @@ import type PDFThumbnailProps from './types';
import PDFThumbnailError from './PDFThumbnailError';
-const PDF_THUMBNAIL_REASON_ATTRIBUTES: SkeletonSpanReasonAttributes = {context: 'PDFThumbnail'};
-
function PDFThumbnail({previewSourceURL, style, enabled = true, fitPolicy = 0, onPassword, onLoadError, onLoadSuccess}: PDFThumbnailProps) {
const styles = useThemeStyles();
const sizeStyles = [styles.w100, styles.h100];
@@ -26,7 +22,7 @@ function PDFThumbnail({previewSourceURL, style, enabled = true, fitPolicy = 0, o
}
+ renderActivityIndicator={() => }
singlePage
source={{uri: previewSourceURL}}
style={sizeStyles}
diff --git a/src/components/PDFView/index.native.tsx b/src/components/PDFView/index.native.tsx
index 75d58b7607e6..d700c066f1cc 100644
--- a/src/components/PDFView/index.native.tsx
+++ b/src/components/PDFView/index.native.tsx
@@ -12,7 +12,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import useWindowDimensions from '@hooks/useWindowDimensions';
import {openTravelDotLink} from '@libs/openTravelDotLink';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {getRelativeUrl, isTravelLink} from '@libs/TravelUtils';
import CONST from '@src/CONST';
@@ -20,7 +19,7 @@ import ONYXKEYS from '@src/ONYXKEYS';
import type {StyleProp, ViewStyle} from 'react-native';
-import React, {useCallback, useEffect, useMemo, useState} from 'react';
+import React, {useCallback, useEffect, useState} from 'react';
import {Keyboard, Linking, View} from 'react-native';
import PDF from 'react-native-pdf';
@@ -64,16 +63,6 @@ function PDFView({onToggleKeyboard, onLoadComplete, fileName, onPress, isFocused
const [activePolicyID] = useOnyx(ONYXKEYS.NVP_ACTIVE_POLICY_ID);
- const reasonAttributes = useMemo(
- () => ({
- context: 'PDFView',
- shouldRequestPassword,
- isPasswordInvalid,
- shouldAttemptPDFLoad,
- }),
- [shouldRequestPassword, isPasswordInvalid, shouldAttemptPDFLoad],
- );
-
useEffect(() => {
onToggleKeyboard?.(isKeyboardShown);
});
@@ -189,12 +178,7 @@ function PDFView({onToggleKeyboard, onLoadComplete, fileName, onPress, isFocused
(
-
- )}
+ renderActivityIndicator={() => }
source={{uri: sourceURL, cache: true, expiration: 864000}}
style={pdfStyles}
onError={handleFailureToLoadPDF}
diff --git a/src/components/PlaidCardFeedIcon.tsx b/src/components/PlaidCardFeedIcon.tsx
index b34f46bafb1d..6664723f3340 100644
--- a/src/components/PlaidCardFeedIcon.tsx
+++ b/src/components/PlaidCardFeedIcon.tsx
@@ -2,8 +2,6 @@ import {useCompanyCardBankIcons, useCompanyCardFeedIcons} from '@hooks/useCompan
import useThemeIllustrations from '@hooks/useThemeIllustrations';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import variables from '@styles/variables';
import type {StyleProp, ViewStyle} from 'react-native';
@@ -41,11 +39,6 @@ function PlaidCardFeedIcon({plaidUrl, style, isLarge, isSmall, useSkeletonLoader
const iconHeight = isSmall ? variables.cardMiniatureHeight : height;
const plaidLoadedStyle = isSmall ? styles.plaidIconExtraSmall : plaidImageStyle;
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'PlaidCardFeedIcon',
- loading,
- };
-
return (
{isBrokenImage ? (
@@ -69,15 +62,11 @@ function PlaidCardFeedIcon({plaidUrl, style, isLarge, isSmall, useSkeletonLoader
)}
{loading && !useSkeletonLoader && (
-
+
)}
{!loading && (
diff --git a/src/components/PlaidLink/index.tsx b/src/components/PlaidLink/index.tsx
index dd209cb960a7..83757fb2c20e 100644
--- a/src/components/PlaidLink/index.tsx
+++ b/src/components/PlaidLink/index.tsx
@@ -4,7 +4,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import {isMobileSafari, isSafari} from '@libs/Browser';
import Log from '@libs/Log';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
@@ -73,13 +72,9 @@ function PlaidLink({token, onSuccess = () => {}, onError = () => {}, onExit = ()
open();
}, [ready, error, isPlaidLoaded, open, onError]);
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'PlaidLink', ready, isPlaidLoaded};
return (
-
+
);
}
diff --git a/src/components/ReceiptImage/index.tsx b/src/components/ReceiptImage/index.tsx
index 96dad92e6cf8..e43538c1cbb4 100644
--- a/src/components/ReceiptImage/index.tsx
+++ b/src/components/ReceiptImage/index.tsx
@@ -11,8 +11,6 @@ import ThumbnailImage from '@components/ThumbnailImage';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import CONST from '@src/CONST';
import type {Transaction} from '@src/types/onyx';
import type {ReceiptSource} from '@src/types/onyx/Transaction';
@@ -112,9 +110,6 @@ type ReceiptImageProps = (
isEmptyReceipt?: boolean;
- /** Reason attributes for skeleton span telemetry */
- reasonAttributes?: SkeletonSpanReasonAttributes;
-
/** Callback to be called on pressing the image */
onPress?: () => void;
@@ -160,7 +155,6 @@ function ReceiptImage({
fallbackIconColor,
fallbackIconBackground,
isEmptyReceipt = false,
- reasonAttributes,
onPress,
transactionItem,
isPerDiemRequest,
@@ -250,7 +244,6 @@ function ReceiptImage({
onLoad={onLoad}
onLoadFailure={onLoadFailure}
resizeMode={resizeMode}
- reasonAttributes={reasonAttributes}
/>
);
}
@@ -275,7 +268,6 @@ function ReceiptImage({
imageWidthToCalculateHeight={receiptImageWidth}
onError={onLoadFailure}
resizeMode={resizeMode}
- reasonAttributes={reasonAttributes}
previewUri={previewUri}
/>
);
diff --git a/src/components/ReportActionItem/FollowupListSkeleton.tsx b/src/components/ReportActionItem/FollowupListSkeleton.tsx
index e4e5f98dce32..e41831bdef48 100644
--- a/src/components/ReportActionItem/FollowupListSkeleton.tsx
+++ b/src/components/ReportActionItem/FollowupListSkeleton.tsx
@@ -4,8 +4,6 @@ import SkeletonViewContentLoader from '@components/SkeletonViewContentLoader';
import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
-
import React from 'react';
import {View} from 'react-native';
import Animated, {FadeIn} from 'react-native-reanimated';
@@ -39,7 +37,6 @@ function ActionableItemSkeleton() {
function FollowupListSkeleton() {
const styles = useThemeStyles();
- useSkeletonSpan('FollowupListSkeleton', {context: 'ReportScreen.ChatActionableButtons'});
return (
diff --git a/src/components/ReportActionItem/MoneyReportView.tsx b/src/components/ReportActionItem/MoneyReportView.tsx
index f8fb7a47b3da..4e9105e4de60 100644
--- a/src/components/ReportActionItem/MoneyReportView.tsx
+++ b/src/components/ReportActionItem/MoneyReportView.tsx
@@ -36,7 +36,6 @@ import {
isSettled as isSettledReportUtils,
shouldHideSingleReportField,
} from '@libs/ReportUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {getTransactionPendingAction, isTransactionPendingDelete} from '@libs/TransactionUtils';
import AnimatedEmptyStateBackground from '@pages/inbox/report/AnimatedEmptyStateBackground';
@@ -129,12 +128,6 @@ function MoneyReportView({
const formattedBillableAmount = convertToDisplayString(billableTotal, report?.currency);
const formattedTaxAmount = convertToDisplayString(taxTotal, report?.currency);
const isPartiallyPaid = !!report?.pendingFields?.partial;
- const totalActivityReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'MoneyReportView.Total',
- isTotalUpdated,
- isOffline,
- isTotalPending,
- };
const subAmountTextStyles: StyleProp = [
styles.taskTitleMenuItem,
@@ -254,7 +247,6 @@ function MoneyReportView({
) : (
['previewMessageStyle'];
reportPreviewStyles: MoneyRequestReportPreviewStyleType;
buttonMaxWidth: {maxWidth?: number};
diff --git a/src/components/ReportActionItem/MoneyRequestReportPreview/MoneyRequestReportPreviewProvider.tsx b/src/components/ReportActionItem/MoneyRequestReportPreview/MoneyRequestReportPreviewProvider.tsx
index 5df2d070e252..118d32f532f8 100644
--- a/src/components/ReportActionItem/MoneyRequestReportPreview/MoneyRequestReportPreviewProvider.tsx
+++ b/src/components/ReportActionItem/MoneyRequestReportPreview/MoneyRequestReportPreviewProvider.tsx
@@ -20,7 +20,6 @@ import {
} from '@libs/ReportUtils';
import {startSpan} from '@libs/telemetry/activeSpans';
import {getPendingSubmitFollowUpAction} from '@libs/telemetry/submitFollowUpAction';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {hasPendingUI, isPending} from '@libs/TransactionUtils';
import CONST from '@src/CONST';
@@ -143,18 +142,6 @@ function MoneyRequestReportPreviewProvider({
// Empty/access placeholders do not depend on measured carousel width, so we can show them immediately
// once the report data is ready instead of keeping the taller loading state around and causing the preview to reflow.
const shouldShowPreviewLoading = isTransitionPending || shouldShowLoading || shouldShowLoadingDeferred || (!currentWidth && !shouldShowPreviewPlaceholder);
- const skeletonReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'MoneyRequestReportPreviewContent',
- hasOnceLoadedReportActions: chatReportLoadingState?.hasOnceLoadedReportActions,
- isTransactionsEmpty: transactions.length === 0,
- isOptimisticReport: isOptimisticChatReport,
- };
- const carouselReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'MoneyRequestReportPreviewContent.Carousel',
- hasCurrentWidth: !!currentWidth,
- shouldShowLoading,
- shouldShowLoadingDeferred,
- };
const previewCarouselMinWidth = shouldUseNarrowLayout ? CONST.REPORT.TRANSACTION_PREVIEW.CAROUSEL.MIN_NARROW_WIDTH : CONST.REPORT.TRANSACTION_PREVIEW.CAROUSEL.MIN_WIDE_WIDTH;
const {isPaidAnimationRunning, isApprovedAnimationRunning, isSubmittingAnimationRunning, stopAnimation, startAnimation, startApprovedAnimation, startSubmittingAnimation} =
@@ -294,8 +281,6 @@ function MoneyRequestReportPreviewProvider({
shouldShowCarouselArrows,
isScanning,
previewCarouselMinWidth,
- skeletonReasonAttributes,
- carouselReasonAttributes,
previewMessageStyle,
reportPreviewStyles,
buttonMaxWidth,
diff --git a/src/components/ReportActionItem/MoneyRequestReportPreview/ReportPreviewHeader.tsx b/src/components/ReportActionItem/MoneyRequestReportPreview/ReportPreviewHeader.tsx
index d938720f4996..e065af642c5d 100644
--- a/src/components/ReportActionItem/MoneyRequestReportPreview/ReportPreviewHeader.tsx
+++ b/src/components/ReportActionItem/MoneyRequestReportPreview/ReportPreviewHeader.tsx
@@ -40,8 +40,7 @@ function ReportPreviewHeader() {
const {translate} = useLocalize();
const expensifyIcons = useMemoizedLazyExpensifyIcons(['ArrowRight', 'BackArrow']);
const {iouReportID, iouReport, action, transactions} = useReportPreviewData();
- const {previewMessageStyle, shouldShowSkeleton, showStatusAndSkeleton, skeletonReasonAttributes, shouldShowEmptyPlaceholder, shouldShowAccessPlaceHolder, shouldShowCarouselArrows} =
- useReportPreviewUIState();
+ const {previewMessageStyle, shouldShowSkeleton, showStatusAndSkeleton, shouldShowEmptyPlaceholder, shouldShowAccessPlaceHolder, shouldShowCarouselArrows} = useReportPreviewUIState();
const {isPreviousDisabled, isNextDisabled} = useReportPreviewCarouselState();
const {goToPrevious, goToNext} = useReportPreviewActions();
const numberOfRequests = transactions.length;
@@ -112,7 +111,7 @@ function ReportPreviewHeader() {
{showStatusAndSkeleton && shouldShowSkeleton ? (
-
+
) : (
(!shouldShowEmptyPlaceholder || shouldShowAccessPlaceHolder) &&
(shouldShowReportStatus || !shouldShowAccessPlaceHolder) && (
diff --git a/src/components/ReportActionItem/MoneyRequestReportPreview/TransactionReportCarousel.tsx b/src/components/ReportActionItem/MoneyRequestReportPreview/TransactionReportCarousel.tsx
index ded47890ef89..630bf5135711 100644
--- a/src/components/ReportActionItem/MoneyRequestReportPreview/TransactionReportCarousel.tsx
+++ b/src/components/ReportActionItem/MoneyRequestReportPreview/TransactionReportCarousel.tsx
@@ -20,8 +20,7 @@ import {useReportPreviewCarouselList, useReportPreviewMeta, useReportPreviewUISt
function TransactionReportCarousel() {
const styles = useThemeStyles();
const StyleUtils = useStyleUtils();
- const {shouldShowPreviewLoading, shouldShowAccessPlaceHolder, shouldShowEmptyPlaceholder, previewCarouselMinWidth, carouselReasonAttributes, reportPreviewStyles} =
- useReportPreviewUIState();
+ const {shouldShowPreviewLoading, shouldShowAccessPlaceHolder, shouldShowEmptyPlaceholder, previewCarouselMinWidth, reportPreviewStyles} = useReportPreviewUIState();
const carousel = useReportPreviewCarouselList();
const {setCarouselRef} = useReportPreviewMeta();
@@ -35,10 +34,7 @@ function TransactionReportCarousel() {
styles.mtn1,
]}
>
-
+
);
}
diff --git a/src/components/ReportActionItem/TransactionPreview/TransactionPreviewContent.tsx b/src/components/ReportActionItem/TransactionPreview/TransactionPreviewContent.tsx
index 8dd40722559b..4cc7f18fd26a 100644
--- a/src/components/ReportActionItem/TransactionPreview/TransactionPreviewContent.tsx
+++ b/src/components/ReportActionItem/TransactionPreview/TransactionPreviewContent.tsx
@@ -32,7 +32,6 @@ import {isMarkAsCashActionForTransaction} from '@libs/ReportPrimaryActionUtils';
import type {TransactionDetails} from '@libs/ReportUtils';
import {canEditMoneyRequest, getTransactionDetails, isPolicyExpenseChat, isReportApproved, isSettled} from '@libs/ReportUtils';
import StringUtils from '@libs/StringUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import type {TranslationPathOrText} from '@libs/TransactionPreviewUtils';
import {createTransactionPreviewConditionals, getIOUPayerAndReceiver, getTransactionPreviewTextAndTranslationPaths} from '@libs/TransactionPreviewUtils';
import {isManagedCardTransaction as isCardTransactionUtils, isGPSDistanceRequest, isMapDistanceRequest, isScanning} from '@libs/TransactionUtils';
@@ -276,11 +275,6 @@ function TransactionPreviewContent({
const transactionWrapperStyles = [styles.border, styles.moneyRequestPreviewBox, (isIOUSettled || isApproved) && isSettlementOrApprovalPartial && styles.offlineFeedbackPending];
- const skeletonReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'TransactionPreviewContent',
- shouldShowSkeleton,
- };
-
return (
{shouldShowSkeleton ? (
-
+
) : (
diff --git a/src/components/ReportHeaderSkeletonView.tsx b/src/components/ReportHeaderSkeletonView.tsx
index d598001bae94..bca7a670c5b3 100644
--- a/src/components/ReportHeaderSkeletonView.tsx
+++ b/src/components/ReportHeaderSkeletonView.tsx
@@ -4,9 +4,6 @@ import useResponsiveLayout from '@hooks/useResponsiveLayout';
import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
-
import CONST from '@src/CONST';
import React from 'react';
@@ -21,16 +18,14 @@ import SkeletonViewContentLoader from './SkeletonViewContentLoader';
type ReportHeaderSkeletonViewProps = {
shouldAnimate?: boolean;
onBackButtonPress?: () => void;
- reasonAttributes: SkeletonSpanReasonAttributes;
};
-function ReportHeaderSkeletonView({shouldAnimate = true, onBackButtonPress = () => {}, reasonAttributes}: ReportHeaderSkeletonViewProps) {
+function ReportHeaderSkeletonView({shouldAnimate = true, onBackButtonPress = () => {}}: ReportHeaderSkeletonViewProps) {
const theme = useTheme();
const styles = useThemeStyles();
const {translate} = useLocalize();
const {shouldUseNarrowLayout} = useResponsiveLayout();
const icons = useMemoizedLazyExpensifyIcons(['BackArrow']);
- useSkeletonSpan('ReportHeaderSkeletonView', reasonAttributes);
const height = styles.headerBarHeight.height;
const radius = 20;
const circleY = height / 2;
diff --git a/src/components/ReportPDFDownloadModal.tsx b/src/components/ReportPDFDownloadModal.tsx
index a771473cb771..c6a4ae61efc4 100644
--- a/src/components/ReportPDFDownloadModal.tsx
+++ b/src/components/ReportPDFDownloadModal.tsx
@@ -61,7 +61,6 @@ function ReportPDFDownloadModal({reportID, isVisible, onClose, onModalHide, onCa
onModalHide={onModalHide}
hasFinishedPDFDownload={hasFinishedPDFDownload}
message={message}
- loadingReasonContext="MoneyReportHeader.PDFModal"
onDownloadPDF={() => {
if (!reportPDFFilename || reportPDFFilename === CONST.REPORT_DETAILS_MENU_ITEM.ERROR) {
return;
diff --git a/src/components/Rule/RuleNotFoundPageWrapper.tsx b/src/components/Rule/RuleNotFoundPageWrapper.tsx
index 2d0d79325986..ee328edc3f18 100644
--- a/src/components/Rule/RuleNotFoundPageWrapper.tsx
+++ b/src/components/Rule/RuleNotFoundPageWrapper.tsx
@@ -30,7 +30,7 @@ function RuleNotFoundPageWrapper({children, hash, shouldPreventShow}: RuleNotFou
const shouldShowNotFoundPage = !!hash && !doesRuleExist;
if (shouldShowFullScreenLoadingIndicator) {
- return ;
+ return ;
}
if (!shouldPreventShow && shouldShowNotFoundPage) {
diff --git a/src/components/Search/DeferredSearchAutocompleteList/index.native.tsx b/src/components/Search/DeferredSearchAutocompleteList/index.native.tsx
index c8b3e33ce829..a8df569c5b58 100644
--- a/src/components/Search/DeferredSearchAutocompleteList/index.native.tsx
+++ b/src/components/Search/DeferredSearchAutocompleteList/index.native.tsx
@@ -5,7 +5,6 @@ import SearchAutocompleteList from '@components/Search/SearchAutocompleteList';
import useIsFocusedUntilTransitionEnd from '@hooks/useIsFocusedUntilTransitionEnd';
import {endSpan} from '@libs/telemetry/activeSpans';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
@@ -44,11 +43,6 @@ function DeferredAutocompleteList(props: SearchAutocompleteListProps) {
shouldStyleAsTable
onLayout={markLayoutComplete}
speed={CONST.TIMING.SKELETON_ANIMATION_SPEED}
- reasonAttributes={
- {
- context: 'DeferredSearchAutocompleteList',
- } satisfies SkeletonSpanReasonAttributes
- }
/>
);
}
diff --git a/src/components/Search/FilterComponents/BankAccountSelector.tsx b/src/components/Search/FilterComponents/BankAccountSelector.tsx
index 11862fc15af3..4b26b94c6c4b 100644
--- a/src/components/Search/FilterComponents/BankAccountSelector.tsx
+++ b/src/components/Search/FilterComponents/BankAccountSelector.tsx
@@ -15,7 +15,6 @@ import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
import {getBankAccountSearchLabel, isFilterableBankAccount} from '@libs/BankAccountUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import variables from '@styles/variables';
@@ -158,7 +157,6 @@ function BankAccountSelector({value = [], selectionListTextInputStyle, selection
};
const isLoadingOnyxData = isLoadingOnyxValue(bankAccountListMetadata);
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'SearchFiltersBankAccountPage', isLoadingFromOnyx: isLoadingOnyxData};
return (
) : (
diff --git a/src/components/Search/FilterComponents/CardSelector.tsx b/src/components/Search/FilterComponents/CardSelector.tsx
index 2c84675bb5d7..f49bff3b9ce3 100644
--- a/src/components/Search/FilterComponents/CardSelector.tsx
+++ b/src/components/Search/FilterComponents/CardSelector.tsx
@@ -18,7 +18,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import {openSearchCardFiltersPage} from '@libs/actions/Search';
import {buildCardsData} from '@libs/CardFeedUtils';
import type {CardFilterItem} from '@libs/CardFeedUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import variables from '@styles/variables';
@@ -137,7 +136,6 @@ function CardSelector({value = [], selectionListTextInputStyle, selectionListSty
const isLoadingOnyxData = isLoadingOnyxValue(userCardListMetadata, workspaceCardFeedsMetadata);
const shouldShowLoadingState = isLoadingOnyxData || (!areCardsLoaded && !isOffline);
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'SearchFiltersCardPage', isLoadingFromOnyx: isLoadingOnyxData};
return (
) : (
diff --git a/src/components/Search/FilterComponents/CategorySelector.tsx b/src/components/Search/FilterComponents/CategorySelector.tsx
index d0dba2b7ac7f..39b5316d74d0 100644
--- a/src/components/Search/FilterComponents/CategorySelector.tsx
+++ b/src/components/Search/FilterComponents/CategorySelector.tsx
@@ -9,7 +9,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import {getDecodedCategoryName} from '@libs/CategoryUtils';
import {getAllPolicyValues, sortOptionsWithEmptyValue} from '@libs/SearchQueryUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
import ONYXKEYS from '@src/ONYXKEYS';
@@ -71,14 +70,12 @@ function CategorySelector({value = [], policyID, selectionListTextInputStyle, se
);
if (isLoadingInitialCategories) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'SearchFiltersCategoryPage'};
return (
);
diff --git a/src/components/Search/FilterComponents/MultiSelect.tsx b/src/components/Search/FilterComponents/MultiSelect.tsx
index be5a3062746e..e1a3507cb1b4 100644
--- a/src/components/Search/FilterComponents/MultiSelect.tsx
+++ b/src/components/Search/FilterComponents/MultiSelect.tsx
@@ -12,7 +12,6 @@ import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
import moveInitialSelectionToTop from '@libs/SelectionListOrderUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
import type {Icon} from '@src/types/onyx/OnyxCommon';
@@ -119,8 +118,6 @@ function MultiSelect({
disableAutoFocus: !autoFocus,
};
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'MultiSelectDataLoading'};
-
return (
({
) : (
diff --git a/src/components/Search/FilterComponents/WorkspaceSelector.tsx b/src/components/Search/FilterComponents/WorkspaceSelector.tsx
index 95ad1c1c49ad..22d74cb4b14f 100644
--- a/src/components/Search/FilterComponents/WorkspaceSelector.tsx
+++ b/src/components/Search/FilterComponents/WorkspaceSelector.tsx
@@ -15,7 +15,6 @@ import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
import moveInitialSelectionToTop from '@libs/SelectionListOrderUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import tokenizedSearch from '@libs/tokenizedSearch';
import CONST from '@src/CONST';
@@ -92,8 +91,6 @@ function WorkspaceSelector({value = [], selectionListTextInputStyle, selectionLi
disableAutoFocus: !autoFocus,
};
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'MultiSelectDataLoading'};
-
return (
) : (
diff --git a/src/components/Search/SearchAutocompleteList.tsx b/src/components/Search/SearchAutocompleteList.tsx
index 4efd5294418e..fe4e9431c72f 100644
--- a/src/components/Search/SearchAutocompleteList.tsx
+++ b/src/components/Search/SearchAutocompleteList.tsx
@@ -32,7 +32,6 @@ import {formatReportLastMessageText, getReportOrDraftReport, getReportSubtitlePr
import {buildSearchQueryJSON, buildUserReadableQueryString, getQueryWithoutFilters, shouldHighlight} from '@libs/SearchQueryUtils';
import StringUtils from '@libs/StringUtils';
import {cancelSpan, endSpan, getSpan} from '@libs/telemetry/activeSpans';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {expensifyLoginsSelector} from '@libs/UserUtils';
import CONST from '@src/CONST';
@@ -483,12 +482,6 @@ function SearchAutocompleteList({
debounceHandleSearch();
}, [autocompleteQueryWithoutFilters, debounceHandleSearch]);
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'SearchAutocompleteList',
- isRecentSearchesDataLoaded,
- isLoadingOptions,
- };
-
/* Sections generation */
const {sections, styledRecentReports, suggestionsCount} = useMemo(() => {
const nextSections: Array> = [];
@@ -538,11 +531,6 @@ function SearchAutocompleteList({
fixedNumItems={3}
shouldStyleAsTable
speed={CONST.TIMING.SKELETON_ANIMATION_SPEED}
- reasonAttributes={{
- context: 'SearchAutocompleteList',
- isRecentSearchesDataLoaded,
- isLoadingOptions,
- }}
/>
);
@@ -635,7 +623,6 @@ function SearchAutocompleteList({
styles,
translate,
isLoadingOptions,
- isRecentSearchesDataLoaded,
reports,
]);
@@ -721,7 +708,6 @@ function SearchAutocompleteList({
fixedNumItems={4}
shouldStyleAsTable
speed={CONST.TIMING.SKELETON_ANIMATION_SPEED}
- reasonAttributes={reasonAttributes}
/>
);
}
diff --git a/src/components/Search/SearchInputSelectionWrapper/index.native.tsx b/src/components/Search/SearchInputSelectionWrapper/index.native.tsx
index 115fbb233900..f99fdb8226b0 100644
--- a/src/components/Search/SearchInputSelectionWrapper/index.native.tsx
+++ b/src/components/Search/SearchInputSelectionWrapper/index.native.tsx
@@ -25,7 +25,7 @@ function SearchInputSelectionWrapper({ref, skipSkeleton, ...props}: SearchAutoco
}, []);
if (showSkeleton) {
- return ;
+ return ;
}
return (
diff --git a/src/components/Search/SearchList/ListItem/TransactionGroupListExpanded.tsx b/src/components/Search/SearchList/ListItem/TransactionGroupListExpanded.tsx
index b76fc16623d6..ebb3d67f4478 100644
--- a/src/components/Search/SearchList/ListItem/TransactionGroupListExpanded.tsx
+++ b/src/components/Search/SearchList/ListItem/TransactionGroupListExpanded.tsx
@@ -27,7 +27,6 @@ import Navigation from '@libs/Navigation/Navigation';
import {getReportAction} from '@libs/ReportActionsUtils';
import {getReportOrDraftReport} from '@libs/ReportUtils';
import {createAndOpenSearchTransactionThread, getColumnsToShow, getTableMinWidth} from '@libs/SearchUIUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {isDeletedTransaction, isTransactionPendingDelete} from '@libs/TransactionUtils';
import type {TransactionPreviewData} from '@userActions/Search';
@@ -265,11 +264,6 @@ function TransactionGroupListExpandedImpl({
}
};
- const transactionGroupLoadingReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'TransactionGroupListExpanded',
- isOffline: !!isOffline,
- };
-
if (shouldDisplayEmptyView) {
return (
@@ -408,7 +402,6 @@ function TransactionGroupListExpandedImpl({
color={theme.spinner}
size={25}
style={[styles.pl3, !isEmpty && styles.alignItemsStart]}
- reasonAttributes={transactionGroupLoadingReasonAttributes}
/>
)}
diff --git a/src/components/Search/SearchLoadingSkeleton.tsx b/src/components/Search/SearchLoadingSkeleton.tsx
index 48bd5afd9ee0..77908ab0607c 100644
--- a/src/components/Search/SearchLoadingSkeleton.tsx
+++ b/src/components/Search/SearchLoadingSkeleton.tsx
@@ -4,7 +4,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import {endSpanWithAttributes} from '@libs/telemetry/activeSpans';
import {endNavigateToReportsFirstPaint} from '@libs/telemetry/navigateToReportsSpans';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
@@ -15,10 +14,9 @@ import Animated, {FadeIn, FadeOut} from 'react-native-reanimated';
type SearchLoadingSkeletonProps = {
containerStyle?: StyleProp;
- reasonAttributes: SkeletonSpanReasonAttributes;
};
-function SearchLoadingSkeleton({containerStyle, reasonAttributes}: SearchLoadingSkeletonProps) {
+function SearchLoadingSkeleton({containerStyle}: SearchLoadingSkeletonProps) {
const styles = useThemeStyles();
return (
@@ -34,7 +32,6 @@ function SearchLoadingSkeleton({containerStyle, reasonAttributes}: SearchLoading
);
diff --git a/src/components/Search/SearchPageFooter.tsx b/src/components/Search/SearchPageFooter.tsx
index 65d26f90f0d1..d73712f7bd28 100644
--- a/src/components/Search/SearchPageFooter.tsx
+++ b/src/components/Search/SearchPageFooter.tsx
@@ -148,7 +148,7 @@ function SearchPageFooter({count, total, currency, defaultCurrency, isTotalLoadi
{isTotalLoading && (
-
+
)}
diff --git a/src/components/Search/SearchPageFooterSkeleton.tsx b/src/components/Search/SearchPageFooterSkeleton.tsx
index 45bbd3ac02bc..bd28881c5a97 100644
--- a/src/components/Search/SearchPageFooterSkeleton.tsx
+++ b/src/components/Search/SearchPageFooterSkeleton.tsx
@@ -4,9 +4,6 @@ import SkeletonViewContentLoader from '@components/SkeletonViewContentLoader';
import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
-
import React from 'react';
import {View} from 'react-native';
@@ -20,15 +17,9 @@ const TOTAL_BAR_OFFSET = COUNT_BAR_WIDTH + BAR_GAP;
const SKELETON_WIDTH = TOTAL_BAR_OFFSET + TOTAL_BAR_WIDTH;
const skeletonContainerStyle = {height: SKELETON_HEIGHT, width: SKELETON_WIDTH};
-type SearchPageFooterSkeletonProps = {
- /** Context describing why the skeleton is rendered, for telemetry */
- reasonAttributes: SkeletonSpanReasonAttributes;
-};
-
-function SearchPageFooterSkeleton({reasonAttributes}: SearchPageFooterSkeletonProps) {
+function SearchPageFooterSkeleton() {
const styles = useThemeStyles();
const theme = useTheme();
- useSkeletonSpan('SearchPageFooterSkeleton', reasonAttributes);
return (
diff --git a/src/components/Search/SearchPageHeader/SearchFiltersBarNarrow.tsx b/src/components/Search/SearchPageHeader/SearchFiltersBarNarrow.tsx
index df93611620f2..89ded4f2cc97 100644
--- a/src/components/Search/SearchPageHeader/SearchFiltersBarNarrow.tsx
+++ b/src/components/Search/SearchPageHeader/SearchFiltersBarNarrow.tsx
@@ -5,7 +5,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import type {SearchFilter} from '@libs/SearchUIUtils';
import shouldAdjustScroll from '@libs/shouldAdjustScroll';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import React, {useRef} from 'react';
import {FlatList} from 'react-native';
@@ -44,16 +43,7 @@ function SearchFiltersBarNarrow({queryJSON}: SearchFiltersBarNarrowProps) {
}
if (shouldShowFiltersBarLoading) {
- const skeletonReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'SearchFiltersBarNarrow',
- shouldShowFiltersBarLoading,
- };
- return (
-
- );
+ return ;
}
return (
diff --git a/src/components/Search/SearchPageHeader/SearchFiltersBarWide.tsx b/src/components/Search/SearchPageHeader/SearchFiltersBarWide.tsx
index 111481c6f3e0..cc54717a739c 100644
--- a/src/components/Search/SearchPageHeader/SearchFiltersBarWide.tsx
+++ b/src/components/Search/SearchPageHeader/SearchFiltersBarWide.tsx
@@ -1,8 +1,6 @@
import type {SearchQueryJSON} from '@components/Search/types';
import SearchFiltersSkeleton from '@components/Skeletons/SearchFiltersSkeleton';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import React from 'react';
import SearchFilterBar from './SearchFilterBar';
@@ -21,16 +19,7 @@ function SearchFiltersBarWide({queryJSON}: SearchFiltersBarWideProps) {
}
if (shouldShowFiltersBarLoading) {
- const skeletonReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'SearchFiltersBarWide',
- shouldShowFiltersBarLoading,
- };
- return (
-
- );
+ return ;
}
return (
diff --git a/src/components/Search/SearchStaticList.tsx b/src/components/Search/SearchStaticList.tsx
index df0c9eee32c4..2bae1af32b09 100644
--- a/src/components/Search/SearchStaticList.tsx
+++ b/src/components/Search/SearchStaticList.tsx
@@ -52,8 +52,6 @@ import SearchTableHeader from './SearchTableHeader';
const STATIC_LIST_MAX_ITEMS = 10;
const DEFAULT_COLUMNS: SearchColumnType[] = [];
-const PENDING_EXPENSE_REASON_ATTRIBUTES = {context: 'SearchStaticList.PendingExpensePlaceholder'} as const;
-
type SearchStaticListProps = {
searchResults: SearchResults | undefined;
queryJSON: SearchQueryJSON;
@@ -314,8 +312,6 @@ function SearchStaticList({
onLayoutProp?.();
};
- const pendingExpenseReasonAttributes = PENDING_EXPENSE_REASON_ATTRIBUTES;
-
if (sortedData.length === 0 && showPendingExpensePlaceholder) {
return (
);
@@ -387,7 +382,6 @@ function SearchStaticList({
shouldAnimate
fixedNumItems={1}
isLoadMore
- reasonAttributes={pendingExpenseReasonAttributes}
/>
) : undefined
}
diff --git a/src/components/Search/SearchWithNavigationDeferredMount.tsx b/src/components/Search/SearchWithNavigationDeferredMount.tsx
index a32300d9092c..b265db02c924 100644
--- a/src/components/Search/SearchWithNavigationDeferredMount.tsx
+++ b/src/components/Search/SearchWithNavigationDeferredMount.tsx
@@ -16,8 +16,6 @@ import React from 'react';
import Search from './index';
-const REASON_ATTRIBUTES = {context: 'SearchPage.NavigationDeferred'} as const;
-
function handleSkeletonLayout() {
endSpanWithAttributes(CONST.TELEMETRY.SPAN_NAVIGATE_TO_REPORTS, {[CONST.TELEMETRY.ATTRIBUTE_IS_WARM]: true});
endNavigateToReportsFirstPaint(CONST.TELEMETRY.NAVIGATE_TO_REPORTS_START_TYPE.WARM_FIRST);
@@ -45,7 +43,6 @@ function SearchWithNavigationDeferredMount(props: ComponentProps)
shouldAnimate
onLayout={handleSkeletonLayout}
containerStyle={containerStyle}
- reasonAttributes={REASON_ATTRIBUTES}
/>
}
>
diff --git a/src/components/Search/index.tsx b/src/components/Search/index.tsx
index bd8ae456fbcb..81f6c3562bb0 100644
--- a/src/components/Search/index.tsx
+++ b/src/components/Search/index.tsx
@@ -61,7 +61,6 @@ import {
getNavigateToReportsSpans,
} from '@libs/telemetry/navigateToReportsSpans';
import {cancelSubmitFollowUpActionSpan, getPendingSubmitFollowUpAction} from '@libs/telemetry/submitFollowUpAction';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {isDeletedTransaction, isTransactionPendingDelete, shouldShowAttendees} from '@libs/TransactionUtils';
import Navigation, {navigationRef} from '@navigation/Navigation';
@@ -336,8 +335,6 @@ function Search({
const [skeletonWasDisplayed, setSkeletonWasDisplayed] = useState(false);
const onSkeletonLayout = useCallback(() => setSkeletonWasDisplayed(true), []);
- const deferredWorkReasonAttributes = useMemo(() => ({context: 'Search.DeferredWork'}) as const, []);
- const pendingExpenseReasonAttributes = useMemo(() => ({context: 'Search.PendingExpensePlaceholder'}) as const, []);
// Show a skeleton whenever heavy work is deferred, even for live-data (to-do) searches,
// so we never fall through to the empty-state check with stale zero-length data.
@@ -350,15 +347,6 @@ function Search({
const shouldShowLoadingMoreItems = !shouldShowLoadingState && searchResults?.search?.isLoading && searchResults?.search?.offset > 0;
- const loadMoreSkeletonReasonAttributes = useMemo(
- () => ({
- context: 'Search.ListFooter',
- isSearchLoading: !!searchResults?.search?.isLoading,
- searchOffset: searchResults?.search?.offset ?? 0,
- }),
- [searchResults?.search?.isLoading, searchResults?.search?.offset],
- );
-
const prevIsSearchResultEmpty = usePrevious(isSearchResultsEmpty);
useEffect(() => {
@@ -943,7 +931,6 @@ function Search({
shouldAnimate
onLayout={onSkeletonLayout}
containerStyle={shouldUseNarrowLayout ? styles.searchListContentContainerStyles(!!hasFilterBars) : styles.mt3}
- reasonAttributes={deferredWorkReasonAttributes}
/>
);
}
@@ -1102,7 +1089,6 @@ function Search({
) : undefined;
diff --git a/src/components/SelectionList/BaseSelectionList.tsx b/src/components/SelectionList/BaseSelectionList.tsx
index cb3c4a26153c..5386cb09849a 100644
--- a/src/components/SelectionList/BaseSelectionList.tsx
+++ b/src/components/SelectionList/BaseSelectionList.tsx
@@ -497,7 +497,6 @@ function BaseSelectionListImpl({
shouldUseUserSkeletonView={shouldUseUserSkeletonView}
shouldShowListEmptyContent={shouldShowListEmptyContent}
listEmptyContent={listEmptyContent}
- context="BaseSelectionList"
/>
) : (
<>
diff --git a/src/components/SelectionList/SelectionListWithSections/BaseSelectionListWithSections.tsx b/src/components/SelectionList/SelectionListWithSections/BaseSelectionListWithSections.tsx
index 29cdca29e0da..501e3e25be01 100644
--- a/src/components/SelectionList/SelectionListWithSections/BaseSelectionListWithSections.tsx
+++ b/src/components/SelectionList/SelectionListWithSections/BaseSelectionListWithSections.tsx
@@ -324,7 +324,6 @@ function BaseSelectionListWithSectionsImpl({
shouldShowLoadingPlaceholder={shouldShowLoadingPlaceholder}
shouldShowListEmptyContent={shouldShowListEmptyContent}
listEmptyContent={listEmptyContent}
- context="BaseSelectionListWithSections"
/>
) : (
- )
- );
+ return customLoadingPlaceholder ?? ;
}
if (shouldShowListEmptyContent) {
return listEmptyContent ?? null;
diff --git a/src/components/Skeletons/CardIconSkeleton.tsx b/src/components/Skeletons/CardIconSkeleton.tsx
index 1ea94743a04b..38ecb6f71524 100644
--- a/src/components/Skeletons/CardIconSkeleton.tsx
+++ b/src/components/Skeletons/CardIconSkeleton.tsx
@@ -3,20 +3,15 @@ import SkeletonViewContentLoader from '@components/SkeletonViewContentLoader';
import useTheme from '@hooks/useTheme';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
-
import React from 'react';
type CardIconSkeletonProps = {
width: number;
height: number;
- reasonAttributes: SkeletonSpanReasonAttributes;
};
-function CardIconSkeleton({width, height, reasonAttributes}: CardIconSkeletonProps) {
+function CardIconSkeleton({width, height}: CardIconSkeletonProps) {
const theme = useTheme();
- useSkeletonSpan('CardIconSkeleton', reasonAttributes);
return (
{
return (
diff --git a/src/components/Skeletons/SearchFiltersSkeleton.tsx b/src/components/Skeletons/SearchFiltersSkeleton.tsx
index 3a9fb5b56bc6..60bce2189f85 100644
--- a/src/components/Skeletons/SearchFiltersSkeleton.tsx
+++ b/src/components/Skeletons/SearchFiltersSkeleton.tsx
@@ -4,9 +4,6 @@ import SkeletonViewContentLoader from '@components/SkeletonViewContentLoader';
import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
-
import React from 'react';
import {View} from 'react-native';
@@ -23,13 +20,11 @@ type SearchFiltersSkeletonProps = {
itemCount?: number;
width?: number;
height?: number;
- reasonAttributes: SkeletonSpanReasonAttributes;
};
-function SearchFiltersSkeleton({shouldAnimate = true, itemCount = 5, width = 84, height = 28, reasonAttributes}: SearchFiltersSkeletonProps) {
+function SearchFiltersSkeleton({shouldAnimate = true, itemCount = 5, width = 84, height = 28}: SearchFiltersSkeletonProps) {
const theme = useTheme();
const styles = useThemeStyles();
- useSkeletonSpan('SearchFiltersSkeleton', reasonAttributes);
const skeletonCount = new Array(itemCount).fill(0);
diff --git a/src/components/Skeletons/SearchInputSelectionSkeleton.tsx b/src/components/Skeletons/SearchInputSelectionSkeleton.tsx
index 4ec7ea00191b..85f029460f97 100644
--- a/src/components/Skeletons/SearchInputSelectionSkeleton.tsx
+++ b/src/components/Skeletons/SearchInputSelectionSkeleton.tsx
@@ -4,22 +4,14 @@ import SkeletonViewContentLoader from '@components/SkeletonViewContentLoader';
import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
-
import variables from '@styles/variables';
import React from 'react';
import {View} from 'react-native';
-type SearchInputSelectionSkeletonProps = {
- reasonAttributes: SkeletonSpanReasonAttributes;
-};
-
-function SearchInputSelectionSkeleton({reasonAttributes}: SearchInputSelectionSkeletonProps) {
+function SearchInputSelectionSkeleton() {
const theme = useTheme();
const styles = useThemeStyles();
- useSkeletonSpan('SearchInputSelectionSkeleton', reasonAttributes);
return (
diff --git a/src/components/Skeletons/SearchRowSkeleton.tsx b/src/components/Skeletons/SearchRowSkeleton.tsx
index 67dfaa2e59af..0b52a24d62e0 100644
--- a/src/components/Skeletons/SearchRowSkeleton.tsx
+++ b/src/components/Skeletons/SearchRowSkeleton.tsx
@@ -5,8 +5,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import useWindowDimensions from '@hooks/useWindowDimensions';
import getPlatform from '@libs/getPlatform';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
import variables from '@styles/variables';
@@ -25,7 +23,6 @@ type SearchRowSkeletonProps = {
fixedNumItems?: number;
gradientOpacityEnabled?: boolean;
containerStyle?: StyleProp;
- reasonAttributes: SkeletonSpanReasonAttributes;
isLoadMore?: boolean;
onLayout?: (event: LayoutChangeEvent) => void;
shouldUseNarrowLayout?: boolean;
@@ -55,7 +52,6 @@ function SearchRowSkeleton({
fixedNumItems,
gradientOpacityEnabled = false,
containerStyle,
- reasonAttributes,
isLoadMore = false,
onLayout,
shouldUseNarrowLayout: shouldUseNarrowLayoutProp,
@@ -67,7 +63,6 @@ function SearchRowSkeleton({
// global responsive breakpoint - useful when the skeleton is rendered in a context
// whose container width doesn't match the window (e.g. inside a split pane).
const shouldUseNarrowLayout = shouldUseNarrowLayoutProp ?? shouldUseNarrowLayoutResponsive;
- useSkeletonSpan('SearchRowSkeleton', reasonAttributes);
if (shouldUseNarrowLayout) {
const containerWidth = windowWidth - 40;
diff --git a/src/components/Skeletons/TabNavigatorSkeleton.tsx b/src/components/Skeletons/TabNavigatorSkeleton.tsx
index 5e75c0ad6dcf..f4ef3eec91e5 100644
--- a/src/components/Skeletons/TabNavigatorSkeleton.tsx
+++ b/src/components/Skeletons/TabNavigatorSkeleton.tsx
@@ -4,20 +4,12 @@ import SkeletonViewContentLoader from '@components/SkeletonViewContentLoader';
import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
-
import React from 'react';
import {View} from 'react-native';
-type TabNavigatorSkeletonProps = {
- reasonAttributes: SkeletonSpanReasonAttributes;
-};
-
-function TabNavigatorSkeleton({reasonAttributes}: TabNavigatorSkeletonProps) {
+function TabNavigatorSkeleton() {
const styles = useThemeStyles();
const theme = useTheme();
- useSkeletonSpan('TabNavigatorSkeleton', reasonAttributes);
return (
diff --git a/src/components/Skeletons/UnreportedExpensesSkeleton.tsx b/src/components/Skeletons/UnreportedExpensesSkeleton.tsx
index 5656ec4aa662..8f9f1b04af14 100644
--- a/src/components/Skeletons/UnreportedExpensesSkeleton.tsx
+++ b/src/components/Skeletons/UnreportedExpensesSkeleton.tsx
@@ -3,9 +3,6 @@ import SkeletonRect from '@components/SkeletonRect';
import useContainerWidth from '@hooks/useContainerWidth';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
-
import React, {useCallback} from 'react';
import {View} from 'react-native';
@@ -39,13 +36,11 @@ function getExpenseAmountSkeletonWidth(index: number) {
type UnreportedExpensesSkeletonProps = {
fixedNumberOfItems?: number;
- reasonAttributes: SkeletonSpanReasonAttributes;
};
-function UnreportedExpensesSkeleton({fixedNumberOfItems, reasonAttributes}: UnreportedExpensesSkeletonProps) {
+function UnreportedExpensesSkeleton({fixedNumberOfItems}: UnreportedExpensesSkeletonProps) {
const {onLayout, containerWidth: pageWidth} = useContainerWidth(40);
const styles = useThemeStyles();
- useSkeletonSpan('UnreportedExpensesSkeleton', reasonAttributes);
const skeletonItem = useCallback(
(args: {itemIndex: number}) => {
diff --git a/src/components/SpendRules/SpendRulesSection.tsx b/src/components/SpendRules/SpendRulesSection.tsx
index 5cb7f8999058..b728baa88947 100644
--- a/src/components/SpendRules/SpendRulesSection.tsx
+++ b/src/components/SpendRules/SpendRulesSection.tsx
@@ -12,7 +12,6 @@ import useDefaultFundID from '@hooks/useDefaultFundID';
import useExpensifyCardRules from '@hooks/useExpensifyCardRulesList';
import {useMemoizedLazyExpensifyIcons, useMemoizedLazyIllustrations} from '@hooks/useLazyAsset';
import useLocalize from '@hooks/useLocalize';
-import useNetwork from '@hooks/useNetwork';
import useOnyx from '@hooks/useOnyx';
import useResponsiveLayout from '@hooks/useResponsiveLayout';
import useSearchResults from '@hooks/useSearchResults';
@@ -50,7 +49,6 @@ function SpendRulesSection({policyID, canWriteRules, showReadOnlyModal}: SpendRu
const expensifyIcons = useMemoizedLazyExpensifyIcons(['Lock', 'Plus']);
const {showConfirmModal} = useConfirmModal();
const illustrations = useMemoizedLazyIllustrations(['ExpensifyCardProtectionIllustration']);
- const {isOffline} = useNetwork();
const defaultFundID = useDefaultFundID(policyID);
const [expensifyCardSettings] = useOnyx(`${ONYXKEYS.COLLECTION.PRIVATE_EXPENSIFY_CARD_SETTINGS}${defaultFundID}`);
const {cardRules, isLoadingCardRules} = useExpensifyCardRules(policyID);
@@ -168,14 +166,7 @@ function SpendRulesSection({policyID, canWriteRules, showReadOnlyModal}: SpendRu
/>
{isLoadingCardRules ? (
-
+
) : (
filteredCardRules.map((rule) => (
diff --git a/src/components/Table/TableLoadingState.tsx b/src/components/Table/TableLoadingState.tsx
index 045d15a3d211..393f22683169 100644
--- a/src/components/Table/TableLoadingState.tsx
+++ b/src/components/Table/TableLoadingState.tsx
@@ -8,12 +8,7 @@ import CONST from '@src/CONST';
import React from 'react';
import {View} from 'react-native';
-type TableLoadingStateProps = {
- /** Describes where the component is rendered using component hierarchy. Use dot notation to show parent-child relationships */
- context: string;
-};
-
-export default function TableLoadingState({context}: TableLoadingStateProps) {
+export default function TableLoadingState() {
const theme = useTheme();
const styles = useThemeStyles();
@@ -22,7 +17,6 @@ export default function TableLoadingState({context}: TableLoadingStateProps) {
);
diff --git a/src/components/Tables/AgentsTable/index.tsx b/src/components/Tables/AgentsTable/index.tsx
index 840487c5848f..f3ea32f392ce 100644
--- a/src/components/Tables/AgentsTable/index.tsx
+++ b/src/components/Tables/AgentsTable/index.tsx
@@ -95,7 +95,7 @@ export default function AgentsTable({ref, agents, canSelectAgents, selectedKeys,
);
if (!areAgentsLoaded) {
- return ;
+ return ;
}
return (
diff --git a/src/components/Tables/WorkspaceCompanyCardsTable/WorkspaceCompanyCardsTableHeaderButtons.tsx b/src/components/Tables/WorkspaceCompanyCardsTable/WorkspaceCompanyCardsTableHeaderButtons.tsx
index 291049e81023..d5a5420d87de 100644
--- a/src/components/Tables/WorkspaceCompanyCardsTable/WorkspaceCompanyCardsTableHeaderButtons.tsx
+++ b/src/components/Tables/WorkspaceCompanyCardsTable/WorkspaceCompanyCardsTableHeaderButtons.tsx
@@ -17,7 +17,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import {getLinkedPolicyName} from '@libs/CardFeedUtils';
import {getCompanyFeeds, getCustomOrFormattedFeedName, getPlaidCountry, getPlaidInstitutionId, isCustomFeed} from '@libs/CardUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import Navigation from '@navigation/Navigation';
@@ -113,11 +112,6 @@ function WorkspaceCompanyCardsTableHeaderButtons({policyID, feedName, isLoading,
const shouldShowNarrowLayout = shouldUseNarrowLayout || isMediumScreenWidth;
- const skeletonReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'WorkspaceCompanyCardsTableHeaderButtons',
- isLoading,
- };
-
return (
) : (
{headerButtonsComponent}
- {isLoading && }
+ {isLoading && }
{!isLoading && isFeedPending && !feedErrorKey && (
@@ -457,7 +457,7 @@ function WorkspaceCompanyCardsTable({
{hasPendingUnassignment && cardsData.length === 0 ? (
// While bulk unassign requests are in flight, the pending rows are hidden and the feed can momentarily
// have no cards. Show the loading state instead of the empty-feed state until the rows settle.
-
+
) : (
<>
;
+ return ;
}
return (
diff --git a/src/components/TextInput/BaseTextInput/implementation/index.native.tsx b/src/components/TextInput/BaseTextInput/implementation/index.native.tsx
index 36302d421848..3dfb57e0f355 100644
--- a/src/components/TextInput/BaseTextInput/implementation/index.native.tsx
+++ b/src/components/TextInput/BaseTextInput/implementation/index.native.tsx
@@ -26,7 +26,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import getLandscapeTextInputRefProxy from '@libs/getLandscapeTextInputRefProxy';
import isInputAutoFilled from '@libs/isInputAutoFilled';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import variables from '@styles/variables';
@@ -308,10 +307,6 @@ function BaseTextInput({
const resolvedAccessibilityLabel = inputProps.accessibilityLabel ?? accessibilityLabel;
const {accessibilityValue, accessibilityLabelledBy, hiddenLabel} = useTextInputAccessibility(value, resolvedAccessibilityLabel);
const isKeyboardType = props.keyboardType ? undefined : props.inputMode;
- const loadingSpinnerReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'BaseTextInput.isLoading',
- isLoading: !!inputProps.isLoading,
- };
return (
<>
@@ -474,7 +469,6 @@ function BaseTextInput({
)}
{/* Render rightHandSideComponent only when clear button is not shown
diff --git a/src/components/TextInput/BaseTextInput/implementation/index.tsx b/src/components/TextInput/BaseTextInput/implementation/index.tsx
index a2205d9e4bbb..f4dabccfbbda 100644
--- a/src/components/TextInput/BaseTextInput/implementation/index.tsx
+++ b/src/components/TextInput/BaseTextInput/implementation/index.tsx
@@ -26,7 +26,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import {isMobileChrome, isMobileSafari, isSafari} from '@libs/Browser';
import {scrollToRight} from '@libs/InputUtils';
import isInputAutoFilled from '@libs/isInputAutoFilled';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import variables from '@styles/variables';
@@ -366,10 +365,6 @@ function BaseTextInput({
const accessibilityLabel = [label, hint, errorText].filter(Boolean).join(', ');
const accessibilityValue = useMemo(() => ({text: value ?? ''}), [value]);
const helpMessageTextID = `${helpMessageId}-text`;
- const loadingSpinnerReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'BaseTextInput.isLoading',
- isLoading: !!inputProps.isLoading,
- };
return (
<>
@@ -573,7 +568,6 @@ function BaseTextInput({
)}
{/* Render rightHandSideComponent only when clear button is not shown
diff --git a/src/components/ThumbnailImage.tsx b/src/components/ThumbnailImage.tsx
index 80473bc5e711..44790eef7361 100644
--- a/src/components/ThumbnailImage.tsx
+++ b/src/components/ThumbnailImage.tsx
@@ -5,8 +5,6 @@ import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
import useThumbnailDimensions from '@hooks/useThumbnailDimensions';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import variables from '@styles/variables';
import CONST from '@src/CONST';
@@ -88,9 +86,6 @@ type ThumbnailImageProps = {
/** The resize mode of the image */
resizeMode?: ImageResizeMode;
- /** Reason attributes for skeleton span telemetry */
- reasonAttributes?: SkeletonSpanReasonAttributes;
-
/** Low-resolution URI shown as a placeholder while the full image loads */
previewUri?: string;
};
@@ -115,7 +110,6 @@ function ThumbnailImage({
loadingIndicatorStyles,
onLoad,
resizeMode,
- reasonAttributes,
previewUri,
}: ThumbnailImageProps) {
const icons = useMemoizedLazyExpensifyIcons(['Gallery', 'OfflineCloud']);
@@ -182,7 +176,6 @@ function ThumbnailImage({
loadingIndicatorStyles={loadingIndicatorStyles}
onLoad={onLoad}
resizeMode={resizeMode}
- reasonAttributes={reasonAttributes}
previewUri={previewUri}
/>
diff --git a/src/components/TransactionItemRow/ReceiptPreview/index.tsx b/src/components/TransactionItemRow/ReceiptPreview/index.tsx
index bf061fa44121..917b48fdf976 100644
--- a/src/components/TransactionItemRow/ReceiptPreview/index.tsx
+++ b/src/components/TransactionItemRow/ReceiptPreview/index.tsx
@@ -9,7 +9,6 @@ import useResponsiveLayoutOnWideRHP from '@hooks/useResponsiveLayoutOnWideRHP';
import useThemeStyles from '@hooks/useThemeStyles';
import useWindowDimensions from '@hooks/useWindowDimensions';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {hasReceiptSource, isDistanceRequest, isManualDistanceRequest, isPerDiemRequest} from '@libs/TransactionUtils';
import variables from '@styles/variables';
@@ -21,7 +20,7 @@ import type {ReceiptSource} from '@src/types/onyx/Transaction';
import type {LayoutChangeEvent} from 'react-native';
-import React, {useCallback, useEffect, useMemo, useRef, useState} from 'react';
+import React, {useCallback, useEffect, useRef, useState} from 'react';
import ReactDOM from 'react-dom';
import {StyleSheet, View} from 'react-native';
import Animated, {FadeIn, FadeOut} from 'react-native-reanimated';
@@ -108,14 +107,6 @@ function ReceiptPreview({source, hovered, isEReceipt = false, transactionItem, a
setShouldShow(hovered);
}, [hovered, setShouldShow]);
- const reasonAttributes = useMemo(
- () => ({
- context: 'ReceiptPreview',
- isLoading,
- }),
- [isLoading],
- );
-
if (shouldUseNarrowLayout || !debounceShouldShow || !shouldShow || (!source && !isEReceipt && !isDistanceEReceipt && !isPerDiemEReceipt)) {
return null;
}
@@ -137,10 +128,7 @@ function ReceiptPreview({source, hovered, isEReceipt = false, transactionItem, a
{isLoading && (
-
+
)}
diff --git a/src/components/TransactionPreviewSkeletonView.tsx b/src/components/TransactionPreviewSkeletonView.tsx
index 996fa6e26131..6d7beb9ffc33 100644
--- a/src/components/TransactionPreviewSkeletonView.tsx
+++ b/src/components/TransactionPreviewSkeletonView.tsx
@@ -1,9 +1,6 @@
import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-import useSkeletonSpan from '@libs/telemetry/useSkeletonSpan';
-
import variables from '@styles/variables';
import React from 'react';
@@ -14,13 +11,11 @@ import SkeletonViewContentLoader from './SkeletonViewContentLoader';
type TransactionPreviewSkeletonViewProps = {
transactionPreviewWidth: number | string;
- reasonAttributes: SkeletonSpanReasonAttributes;
};
-function TransactionPreviewSkeletonView({transactionPreviewWidth, reasonAttributes}: TransactionPreviewSkeletonViewProps) {
+function TransactionPreviewSkeletonView({transactionPreviewWidth}: TransactionPreviewSkeletonViewProps) {
const theme = useTheme();
const styles = useThemeStyles();
- useSkeletonSpan('TransactionPreviewSkeletonView', reasonAttributes);
const height = variables.transactionPreviewSkeletonHeight;
const widthOfTheLeftSkeleton = 120;
diff --git a/src/components/WalletStatementModal/index.native.tsx b/src/components/WalletStatementModal/index.native.tsx
index 9e92ce72e0cd..38df1faf9fc1 100644
--- a/src/components/WalletStatementModal/index.native.tsx
+++ b/src/components/WalletStatementModal/index.native.tsx
@@ -36,10 +36,7 @@ function WalletStatementModal({statementPageURL}: WalletStatementProps) {
const renderLoading = () => (
-
+
);
diff --git a/src/components/WalletStatementModal/index.tsx b/src/components/WalletStatementModal/index.tsx
index 112028fe5607..a6639e3d0df1 100644
--- a/src/components/WalletStatementModal/index.tsx
+++ b/src/components/WalletStatementModal/index.tsx
@@ -46,10 +46,7 @@ function WalletStatementModal({statementPageURL}: WalletStatementProps) {
{isLoading && (
-
+
)}
diff --git a/src/pages/ReimbursementAccount/EnterSignerInfo/index.tsx b/src/pages/ReimbursementAccount/EnterSignerInfo/index.tsx
index 7a0213c472f3..b4e636d23299 100644
--- a/src/pages/ReimbursementAccount/EnterSignerInfo/index.tsx
+++ b/src/pages/ReimbursementAccount/EnterSignerInfo/index.tsx
@@ -111,12 +111,7 @@ function EnterSignerInfo({route}: EnterSignerInfoProps) {
}, [isEditing, moveTo, pageIndex, prevPage]);
if (isRedirecting) {
- return (
-
- );
+ return ;
}
return (
diff --git a/src/pages/ReimbursementAccount/NonUSD/BankInfo/BankInfo.tsx b/src/pages/ReimbursementAccount/NonUSD/BankInfo/BankInfo.tsx
index 13e4484e45bb..70ae7b764350 100644
--- a/src/pages/ReimbursementAccount/NonUSD/BankInfo/BankInfo.tsx
+++ b/src/pages/ReimbursementAccount/NonUSD/BankInfo/BankInfo.tsx
@@ -130,7 +130,7 @@ function BankInfo({onBackButtonPress, onSubmit, policyID, stepNames, backTo}: No
}
if (isRedirecting) {
- return ;
+ return ;
}
return (
diff --git a/src/pages/ReimbursementAccount/NonUSD/BankInfo/subSteps/BankAccountDetails.tsx b/src/pages/ReimbursementAccount/NonUSD/BankInfo/subSteps/BankAccountDetails.tsx
index 1b2fde8a41e0..2739ce9bb871 100644
--- a/src/pages/ReimbursementAccount/NonUSD/BankInfo/subSteps/BankAccountDetails.tsx
+++ b/src/pages/ReimbursementAccount/NonUSD/BankInfo/subSteps/BankAccountDetails.tsx
@@ -12,7 +12,6 @@ import useReimbursementAccountStepFormSubmit from '@hooks/useReimbursementAccoun
import useThemeStyles from '@hooks/useThemeStyles';
import getTextInputAutocorrectProps from '@libs/getTextInputAutocorrectProps';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import type BankInfoSubStepProps from '@pages/ReimbursementAccount/NonUSD/BankInfo/types';
import {getBankInfoStepValues} from '@pages/ReimbursementAccount/NonUSD/utils/getBankInfoStepValues';
@@ -85,8 +84,6 @@ function BankAccountDetails({onNext, isEditing, corpayFields}: BankInfoSubStepPr
shouldSaveDraft: true,
});
- const corpayFieldsLoadingReasonAttributes: SkeletonSpanReasonAttributes = {context: 'BankAccountDetails', isLoading: !!corpayFields?.isLoading};
-
const inputs = bankAccountDetailsFields?.map((field) => {
if (field.valueSet !== undefined) {
return getInputForValueSet(field, SafeString(defaultValues[field.id as keyof typeof defaultValues]), isEditing, styles);
@@ -136,7 +133,6 @@ function BankAccountDetails({onNext, isEditing, corpayFields}: BankInfoSubStepPr
) : (
diff --git a/src/pages/ReimbursementAccount/NonUSD/BankInfo/subSteps/Confirmation.tsx b/src/pages/ReimbursementAccount/NonUSD/BankInfo/subSteps/Confirmation.tsx
index 16bb8b5ed314..1fb292542403 100644
--- a/src/pages/ReimbursementAccount/NonUSD/BankInfo/subSteps/Confirmation.tsx
+++ b/src/pages/ReimbursementAccount/NonUSD/BankInfo/subSteps/Confirmation.tsx
@@ -7,8 +7,6 @@ import useLocalize from '@hooks/useLocalize';
import useOnyx from '@hooks/useOnyx';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import type BankInfoSubStepProps from '@pages/ReimbursementAccount/NonUSD/BankInfo/types';
import {getBankInfoStepValues} from '@pages/ReimbursementAccount/NonUSD/utils/getBankInfoStepValues';
import getInputKeysForBankInfoStep from '@pages/ReimbursementAccount/NonUSD/utils/getInputKeysForBankInfoStep';
@@ -60,8 +58,6 @@ function Confirmation({onNext, onMove, corpayFields}: BankInfoSubStepProps) {
[corpayFields, onMove, values],
);
- const corpayFieldsLoadingReasonAttributes: SkeletonSpanReasonAttributes = {context: 'BankInfo.Confirmation', isLoading: !!corpayFields?.isLoading};
-
return (
) : (
items
diff --git a/src/pages/ReimbursementAccount/NonUSD/BeneficialOwnerInfo/BeneficialOwnerDetailsFormPages.tsx b/src/pages/ReimbursementAccount/NonUSD/BeneficialOwnerInfo/BeneficialOwnerDetailsFormPages.tsx
index d82ea84bbaf3..ca9c2f61146d 100644
--- a/src/pages/ReimbursementAccount/NonUSD/BeneficialOwnerInfo/BeneficialOwnerDetailsFormPages.tsx
+++ b/src/pages/ReimbursementAccount/NonUSD/BeneficialOwnerInfo/BeneficialOwnerDetailsFormPages.tsx
@@ -150,14 +150,7 @@ function BeneficialOwnerDetailsFormPages({stepNames, policyID, onFinished, backT
}, [buildRoute, isEditing, isEditingCreatedOwner, pageIndex, prevPage, skipPages]);
if (isRedirecting) {
- return (
-
- );
+ return ;
}
return (
diff --git a/src/pages/ReimbursementAccount/NonUSD/BusinessInfo/BusinessInfo.tsx b/src/pages/ReimbursementAccount/NonUSD/BusinessInfo/BusinessInfo.tsx
index 160816db6295..03a32fda79da 100644
--- a/src/pages/ReimbursementAccount/NonUSD/BusinessInfo/BusinessInfo.tsx
+++ b/src/pages/ReimbursementAccount/NonUSD/BusinessInfo/BusinessInfo.tsx
@@ -172,10 +172,7 @@ function BusinessInfo({onBackButtonPress, onSubmit, policyID: policyIDProp, step
>
{shouldRedirect ? (
-
+
) : (
;
+ return ;
}
return (
diff --git a/src/pages/ReimbursementAccount/ReimbursementAccountPage.tsx b/src/pages/ReimbursementAccount/ReimbursementAccountPage.tsx
index 7ee95f0cb29e..c778612fcc38 100644
--- a/src/pages/ReimbursementAccount/ReimbursementAccountPage.tsx
+++ b/src/pages/ReimbursementAccount/ReimbursementAccountPage.tsx
@@ -27,7 +27,6 @@ import type {ReimbursementAccountNavigatorParamList} from '@libs/Navigation/type
import {canMemberWrite, goBackFromInvalidPolicy, isPendingDeletePolicy} from '@libs/PolicyUtils';
import {hasInProgressUSDVBBA, hasInProgressVBBA, REIMBURSEMENT_ACCOUNT_ROUTE_NAMES} from '@libs/ReimbursementAccountUtils';
import shouldReopenOnfido from '@libs/shouldReopenOnfido';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {isFullScreenName} from '@navigation/helpers/isNavigatorName';
@@ -561,11 +560,7 @@ function ReimbursementAccountPage({route, policy, isLoadingPolicy}: Reimbursemen
}
if (isLoadingPolicy) {
- const loadingPolicyReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'ReimbursementAccountPage',
- isLoadingPolicy,
- };
- return ;
+ return ;
}
// Show loading indicator when page is first time being opened and props.reimbursementAccount yet to be loaded from the server
diff --git a/src/pages/ReimbursementAccount/USD/BankInfo/BankInfo.tsx b/src/pages/ReimbursementAccount/USD/BankInfo/BankInfo.tsx
index 5cb06bd21612..b0263959d6a1 100644
--- a/src/pages/ReimbursementAccount/USD/BankInfo/BankInfo.tsx
+++ b/src/pages/ReimbursementAccount/USD/BankInfo/BankInfo.tsx
@@ -107,10 +107,7 @@ function BankInfo({onBackButtonPress, onSubmit, policyID}: BankInfoProps) {
default:
return (
-
+
);
}
diff --git a/src/pages/ReimbursementAccount/USD/BeneficialOwnerInfo/BeneficialOwnerDetailsFormPages.tsx b/src/pages/ReimbursementAccount/USD/BeneficialOwnerInfo/BeneficialOwnerDetailsFormPages.tsx
index b3351cccab29..e8f094c535e7 100644
--- a/src/pages/ReimbursementAccount/USD/BeneficialOwnerInfo/BeneficialOwnerDetailsFormPages.tsx
+++ b/src/pages/ReimbursementAccount/USD/BeneficialOwnerInfo/BeneficialOwnerDetailsFormPages.tsx
@@ -100,7 +100,7 @@ function BeneficialOwnerDetailsFormPages({
}, [buildRoute, isEditing, isEditingCreatedBeneficialOwner, pageIndex, prevPage, hasExistingBeneficialOwners]);
if (isRedirecting) {
- return ;
+ return ;
}
return (
diff --git a/src/pages/ReimbursementAccount/USD/BusinessInfo/BusinessInfo.tsx b/src/pages/ReimbursementAccount/USD/BusinessInfo/BusinessInfo.tsx
index c0f257d3ccb4..35dcbef1f177 100644
--- a/src/pages/ReimbursementAccount/USD/BusinessInfo/BusinessInfo.tsx
+++ b/src/pages/ReimbursementAccount/USD/BusinessInfo/BusinessInfo.tsx
@@ -135,7 +135,7 @@ function BusinessInfo({onBackButtonPress, onSubmit, backTo}: BusinessInfoProps)
};
if (isRedirecting) {
- return ;
+ return ;
}
return (
diff --git a/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/AddressBusiness.tsx b/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/AddressBusiness.tsx
index 342afa91f9a4..730cedd516c8 100644
--- a/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/AddressBusiness.tsx
+++ b/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/AddressBusiness.tsx
@@ -7,8 +7,6 @@ import useReimbursementAccountStepFormSubmit from '@hooks/useReimbursementAccoun
import type {SubPageProps} from '@hooks/useSubPage/types';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import CONST from '@src/CONST';
import ONYXKEYS from '@src/ONYXKEYS';
import INPUT_IDS from '@src/types/form/ReimbursementAccountForm';
@@ -50,16 +48,9 @@ function AddressBusiness({onNext, onMove, isEditing}: SubPageProps) {
});
if (isLoadingReimbursementAccount) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'AddressBusiness',
- isLoadingReimbursementAccount,
- };
return (
-
+
);
}
diff --git a/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/IncorporationDateBusiness.tsx b/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/IncorporationDateBusiness.tsx
index f6337c2681be..e4a81d1b91bf 100644
--- a/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/IncorporationDateBusiness.tsx
+++ b/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/IncorporationDateBusiness.tsx
@@ -11,7 +11,6 @@ import useReimbursementAccountStepFormSubmit from '@hooks/useReimbursementAccoun
import type {SubPageProps} from '@hooks/useSubPage/types';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {getFieldRequiredErrors, isValidDate, isValidPastDate} from '@libs/ValidationUtils';
import CONST from '@src/CONST';
@@ -57,16 +56,9 @@ function IncorporationDateBusiness({onNext, isEditing}: SubPageProps) {
});
if (isLoadingReimbursementAccount) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'IncorporationDateBusiness',
- isLoadingReimbursementAccount,
- };
return (
-
+
);
}
diff --git a/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/IncorporationStateBusiness.tsx b/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/IncorporationStateBusiness.tsx
index 817d5e99f0bd..f9f1c8aa03d6 100644
--- a/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/IncorporationStateBusiness.tsx
+++ b/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/IncorporationStateBusiness.tsx
@@ -12,7 +12,6 @@ import useReimbursementAccountStepFormSubmit from '@hooks/useReimbursementAccoun
import type {SubPageProps} from '@hooks/useSubPage/types';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {getFieldRequiredErrors} from '@libs/ValidationUtils';
import ONYXKEYS from '@src/ONYXKEYS';
@@ -45,11 +44,7 @@ function IncorporationStateBusiness({onNext, isEditing}: SubPageProps) {
});
if (isLoadingReimbursementAccount) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'IncorporationStateBusiness',
- isLoadingReimbursementAccount,
- };
- return ;
+ return ;
}
return (
diff --git a/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/PhoneNumberBusiness.tsx b/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/PhoneNumberBusiness.tsx
index f1df36826b21..36fc1accd56d 100644
--- a/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/PhoneNumberBusiness.tsx
+++ b/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/PhoneNumberBusiness.tsx
@@ -7,7 +7,6 @@ import useOnyx from '@hooks/useOnyx';
import useReimbursementAccountStepFormSubmit from '@hooks/useReimbursementAccountStepFormSubmit';
import type {SubPageProps} from '@hooks/useSubPage/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {getFieldRequiredErrors, isValidUSPhone} from '@libs/ValidationUtils';
import CONST from '@src/CONST';
@@ -49,11 +48,7 @@ function PhoneNumberBusiness({onNext, onMove, isEditing}: SubPageProps) {
});
if (isLoadingReimbursementAccount) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'PhoneNumberBusiness',
- isLoadingReimbursementAccount,
- };
- return ;
+ return ;
}
return (
diff --git a/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/TaxIdBusiness.tsx b/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/TaxIdBusiness.tsx
index 23fd9936e29d..675981a5b2cb 100644
--- a/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/TaxIdBusiness.tsx
+++ b/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/TaxIdBusiness.tsx
@@ -8,7 +8,6 @@ import useReimbursementAccountStepFormSubmit from '@hooks/useReimbursementAccoun
import type {SubPageProps} from '@hooks/useSubPage/types';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {getFieldRequiredErrors, isValidTaxID} from '@libs/ValidationUtils';
import CONST from '@src/CONST';
@@ -60,16 +59,9 @@ function TaxIdBusiness({onNext, onMove, isEditing}: SubPageProps) {
});
if (isLoadingReimbursementAccount) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'TaxIdBusiness',
- isLoadingReimbursementAccount,
- };
return (
-
+
);
}
diff --git a/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/TypeBusiness/TypeBusiness.tsx b/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/TypeBusiness/TypeBusiness.tsx
index 4f00128bfaa7..2e857ed08be9 100644
--- a/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/TypeBusiness/TypeBusiness.tsx
+++ b/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/TypeBusiness/TypeBusiness.tsx
@@ -10,7 +10,6 @@ import useReimbursementAccountStepFormSubmit from '@hooks/useReimbursementAccoun
import type {SubPageProps} from '@hooks/useSubPage/types';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {getFieldRequiredErrors} from '@libs/ValidationUtils';
import CONST from '@src/CONST';
@@ -45,16 +44,9 @@ function TypeBusiness({onNext, isEditing}: SubPageProps) {
});
if (isLoadingReimbursementAccount) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'TypeBusiness',
- isLoadingReimbursementAccount,
- };
return (
-
+
);
}
diff --git a/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/WebsiteBusiness.tsx b/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/WebsiteBusiness.tsx
index 55b1b06bcc77..2a99676dc8c5 100644
--- a/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/WebsiteBusiness.tsx
+++ b/src/pages/ReimbursementAccount/USD/BusinessInfo/subSteps/WebsiteBusiness.tsx
@@ -9,7 +9,6 @@ import type {SubPageProps} from '@hooks/useSubPage/types';
import useThemeStyles from '@hooks/useThemeStyles';
import {getDefaultCompanyWebsite} from '@libs/BankAccountUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {getFieldRequiredErrors, isValidWebsite} from '@libs/ValidationUtils';
import {addBusinessWebsiteForDraft} from '@userActions/BankAccounts';
@@ -60,16 +59,9 @@ function WebsiteBusiness({onNext, onMove, isEditing}: SubPageProps) {
});
if (isLoadingReimbursementAccount) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'WebsiteBusiness',
- isLoadingReimbursementAccount,
- };
return (
-
+
);
}
diff --git a/src/pages/ReimbursementAccount/USD/Requestor/PersonalInfo/PersonalInfo.tsx b/src/pages/ReimbursementAccount/USD/Requestor/PersonalInfo/PersonalInfo.tsx
index 8fd021def581..1e653333e66e 100644
--- a/src/pages/ReimbursementAccount/USD/Requestor/PersonalInfo/PersonalInfo.tsx
+++ b/src/pages/ReimbursementAccount/USD/Requestor/PersonalInfo/PersonalInfo.tsx
@@ -117,7 +117,7 @@ function PersonalInfo({onBackButtonPress, onSubmit, ref, backTo}: PersonalInfoPr
stepNames={CONST.BANK_ACCOUNT.STEP_NAMES}
>
{isRedirecting ? (
-
+
) : (
-
+
);
}
diff --git a/src/pages/ReimbursementAccount/USD/Requestor/PersonalInfo/subSteps/DateOfBirth.tsx b/src/pages/ReimbursementAccount/USD/Requestor/PersonalInfo/subSteps/DateOfBirth.tsx
index 81e61eb225bb..6bab62522a87 100644
--- a/src/pages/ReimbursementAccount/USD/Requestor/PersonalInfo/subSteps/DateOfBirth.tsx
+++ b/src/pages/ReimbursementAccount/USD/Requestor/PersonalInfo/subSteps/DateOfBirth.tsx
@@ -7,8 +7,6 @@ import useReimbursementAccountStepFormSubmit from '@hooks/useReimbursementAccoun
import type {SubPageProps} from '@hooks/useSubPage/types';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import HelpLinks from '@pages/ReimbursementAccount/USD/Requestor/PersonalInfo/HelpLinks';
import CONST from '@src/CONST';
@@ -39,16 +37,9 @@ function DateOfBirth({onNext, onMove, isEditing}: SubPageProps) {
});
if (isLoadingReimbursementAccount) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'DateOfBirth',
- isLoadingReimbursementAccount,
- };
return (
-
+
);
}
diff --git a/src/pages/ReimbursementAccount/USD/Requestor/PersonalInfo/subSteps/SocialSecurityNumber.tsx b/src/pages/ReimbursementAccount/USD/Requestor/PersonalInfo/subSteps/SocialSecurityNumber.tsx
index af114dfa4516..8edb9ffab37d 100644
--- a/src/pages/ReimbursementAccount/USD/Requestor/PersonalInfo/subSteps/SocialSecurityNumber.tsx
+++ b/src/pages/ReimbursementAccount/USD/Requestor/PersonalInfo/subSteps/SocialSecurityNumber.tsx
@@ -8,7 +8,6 @@ import useReimbursementAccountStepFormSubmit from '@hooks/useReimbursementAccoun
import type {SubPageProps} from '@hooks/useSubPage/types';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {getFieldRequiredErrors, isValidSSNLastFour} from '@libs/ValidationUtils';
import CONST from '@src/CONST';
@@ -51,16 +50,9 @@ function SocialSecurityNumber({onNext, onMove, isEditing}: SubPageProps) {
});
if (isLoadingReimbursementAccount) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'SocialSecurityNumber',
- isLoadingReimbursementAccount,
- };
return (
-
+
);
}
diff --git a/src/pages/RestrictedAction/Workspace/WorkspaceRestrictedActionPage.tsx b/src/pages/RestrictedAction/Workspace/WorkspaceRestrictedActionPage.tsx
index 21b9237fb117..9abed32ef53b 100644
--- a/src/pages/RestrictedAction/Workspace/WorkspaceRestrictedActionPage.tsx
+++ b/src/pages/RestrictedAction/Workspace/WorkspaceRestrictedActionPage.tsx
@@ -12,7 +12,6 @@ import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavig
import type {RestrictedActionParamList} from '@libs/Navigation/types';
import {isPolicyAdmin, isPolicyAuditor, isPolicyOwner, isPolicyUser} from '@libs/PolicyUtils';
import {shouldRestrictUserBillableActions} from '@libs/SubscriptionUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import NotFoundPage from '@pages/ErrorPage/NotFoundPage';
@@ -80,12 +79,7 @@ function WorkspaceRestrictedActionPage({
// instead of flashing the restriction UI which may no longer apply.
// Skip the loading indicator when offline since the API call won't go through.
if (isLoadingSubscriptionData !== false && !isOffline) {
- return (
-
- );
+ return ;
}
// Workspace Owner
diff --git a/src/pages/ScheduleCall/ScheduleCallPage.tsx b/src/pages/ScheduleCall/ScheduleCallPage.tsx
index 95856cb8749c..da52ab9574a8 100644
--- a/src/pages/ScheduleCall/ScheduleCallPage.tsx
+++ b/src/pages/ScheduleCall/ScheduleCallPage.tsx
@@ -179,10 +179,7 @@ function ScheduleCallPage() {
{adminReportNameValuePairs?.calendlySchedule?.isLoading ? (
-
+
) : (
diff --git a/src/pages/Search/SearchAddApproverPage.tsx b/src/pages/Search/SearchAddApproverPage.tsx
index 7b8b1d647e25..71f678cea82a 100644
--- a/src/pages/Search/SearchAddApproverPage.tsx
+++ b/src/pages/Search/SearchAddApproverPage.tsx
@@ -185,7 +185,7 @@ function SearchAddApproverPage() {
}, [selectedReports.length]);
if (isLoading) {
- return ;
+ return ;
}
return (
diff --git a/src/pages/Search/SearchChangeApproverPage.tsx b/src/pages/Search/SearchChangeApproverPage.tsx
index 72c610d24fbe..f60895d70c2c 100644
--- a/src/pages/Search/SearchChangeApproverPage.tsx
+++ b/src/pages/Search/SearchChangeApproverPage.tsx
@@ -278,12 +278,7 @@ function SearchChangeApproverPage() {
);
if (!isOffline && isLoadingBulkChangeApproverPage) {
- return (
-
- );
+ return ;
}
return (
diff --git a/src/pages/Search/SearchPageNarrow/index.tsx b/src/pages/Search/SearchPageNarrow/index.tsx
index a0caaf6d2977..31969efb137f 100644
--- a/src/pages/Search/SearchPageNarrow/index.tsx
+++ b/src/pages/Search/SearchPageNarrow/index.tsx
@@ -344,19 +344,7 @@ function SearchPageNarrow({
{!useStaticRendering && (
<>
{shouldShowLoadingSkeleton ? (
- 0 && !isOffline,
- hasPendingResponse: searchRequestResponseStatusCode === null,
- shouldUseLiveData,
- }}
- />
+
) : (
{shouldShowLoadingSkeleton ? (
- 0 && !isOffline,
- hasPendingResponse: searchRequestResponseStatusCode === null,
- shouldUseLiveData,
- }}
- />
+
) : (
{shouldShowLoadingIndicator ? (
-
+
) : (
diff --git a/src/pages/Share/ShareRootPage.tsx b/src/pages/Share/ShareRootPage.tsx
index a654197af285..8a2dddb9e91a 100644
--- a/src/pages/Share/ShareRootPage.tsx
+++ b/src/pages/Share/ShareRootPage.tsx
@@ -16,7 +16,6 @@ import Navigation from '@libs/Navigation/Navigation';
import OnyxTabNavigator, {TopTab} from '@libs/Navigation/OnyxTabNavigator';
import {shouldValidateFile} from '@libs/ReceiptUtils';
import ShareActionHandler from '@libs/ShareActionHandlerModule';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {close as closeModal} from '@userActions/Modal';
import Tab from '@userActions/Tab';
@@ -27,7 +26,7 @@ import ROUTES from '@src/ROUTES';
import type {ShareTempFile} from '@src/types/onyx';
import type {FileObject} from '@src/types/utils/Attachment';
-import React, {useCallback, useEffect, useMemo, useRef, useState} from 'react';
+import React, {useCallback, useEffect, useRef, useState} from 'react';
import {Alert, AppState, View} from 'react-native';
import getFileSize from './getFileSize';
@@ -181,14 +180,6 @@ function ShareRootPage() {
closeModal();
}, []);
- const reasonAttributes = useMemo(
- () => ({
- context: 'ShareRootPage',
- isFileReady,
- }),
- [isFileReady],
- );
-
return (
{() => }}
) : (
-
+
)}
{ErrorModal}
diff --git a/src/pages/SubmitExpensePage.tsx b/src/pages/SubmitExpensePage.tsx
index 6645fe59e2db..a86a01c3b93a 100644
--- a/src/pages/SubmitExpensePage.tsx
+++ b/src/pages/SubmitExpensePage.tsx
@@ -8,7 +8,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import interceptAnonymousUser from '@libs/interceptAnonymousUser';
import Navigation from '@libs/Navigation/Navigation';
import {generateReportID} from '@libs/ReportUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {startMoneyRequest} from '@userActions/IOU/MoneyRequest';
@@ -49,17 +48,10 @@ function SubmitExpensePage() {
[],
);
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'SubmitExpensePage',
- };
-
return (
-
+
diff --git a/src/pages/TrackExpensePage.tsx b/src/pages/TrackExpensePage.tsx
index 03926f041657..ddaa82617787 100644
--- a/src/pages/TrackExpensePage.tsx
+++ b/src/pages/TrackExpensePage.tsx
@@ -11,7 +11,6 @@ import {startMoneyRequest} from '@libs/actions/IOU/MoneyRequest';
import interceptAnonymousUser from '@libs/interceptAnonymousUser';
import Navigation from '@libs/Navigation/Navigation';
import {findSelfDMReportID, generateReportID} from '@libs/ReportUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
import ONYXKEYS from '@src/ONYXKEYS';
@@ -67,18 +66,10 @@ function TrackExpensePage() {
[],
);
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'TrackExpensePage',
- isLoadingHasSeenTrackTraining,
- };
-
return (
-
+
diff --git a/src/pages/TransactionDuplicate/DynamicConfirmationPage.tsx b/src/pages/TransactionDuplicate/DynamicConfirmationPage.tsx
index a478f76c922b..b60f60963d23 100644
--- a/src/pages/TransactionDuplicate/DynamicConfirmationPage.tsx
+++ b/src/pages/TransactionDuplicate/DynamicConfirmationPage.tsx
@@ -26,7 +26,6 @@ import isSearchTopmostFullScreenRoute from '@libs/Navigation/helpers/isSearchTop
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackRouteProp} from '@libs/Navigation/PlatformStackNavigation/types';
import type {TransactionDuplicateNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import variables from '@styles/variables';
@@ -159,13 +158,7 @@ function DynamicConfirmationPage() {
(reviewDuplicatesResult.status === 'loaded' && (!newTransaction?.transactionID || !doesTransactionBelongToReport));
if (isLoadingOnyxValue(reviewDuplicatesResult, reportResult) || !newTransaction?.transactionID) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'TransactionDuplicate.Confirmation',
- isLoadingReviewDuplicates: isLoadingOnyxValue(reviewDuplicatesResult),
- isLoadingReport: isLoadingOnyxValue(reportResult),
- hasNewTransaction: !!newTransaction?.transactionID,
- };
- return ;
+ return ;
}
return (
diff --git a/src/pages/TransactionDuplicate/DynamicReviewPage.tsx b/src/pages/TransactionDuplicate/DynamicReviewPage.tsx
index 3a8f02b5b83f..ea24a81bb499 100644
--- a/src/pages/TransactionDuplicate/DynamicReviewPage.tsx
+++ b/src/pages/TransactionDuplicate/DynamicReviewPage.tsx
@@ -27,7 +27,6 @@ import type {TransactionDuplicateNavigatorParamList} from '@libs/Navigation/type
import {isTrackOnboardingChoice} from '@libs/OnboardingUtils';
import {getLinkedTransactionID, getReportAction} from '@libs/ReportActionsUtils';
import {isReportIDApproved, isSettled} from '@libs/ReportUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {doesDeleteNavigateBackUrlIncludeSpecificDuplicatesReview, getParentReportActionDeletionStatus, hasLoadedReportActions, isThreadReportDeleted} from '@libs/TransactionNavigationUtils';
import {getReviewNavigationRoute} from '@libs/TransactionPreviewUtils';
@@ -115,12 +114,6 @@ function DynamicReviewPage() {
const shouldShowNotFound = !isNavigatingBackToDeletedReview && (wasTransactionDeleted || (!isLoadingPage && !transactionID));
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'DynamicReviewPage',
- hasLoadedThreadReportActions,
- hasLoadedParentReportActions,
- };
-
useEffect(() => {
if (!route.params.reportID || report?.reportID) {
return;
@@ -217,10 +210,7 @@ function DynamicReviewPage() {
- {}}
- reasonAttributes={reasonAttributes}
- />
+ {}} />
diff --git a/src/pages/TransactionMerge/DynamicConfirmationPage.tsx b/src/pages/TransactionMerge/DynamicConfirmationPage.tsx
index 9ab8ca123651..0dfd0e7bfb69 100644
--- a/src/pages/TransactionMerge/DynamicConfirmationPage.tsx
+++ b/src/pages/TransactionMerge/DynamicConfirmationPage.tsx
@@ -25,7 +25,6 @@ import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {MergeTransactionNavigatorParamList} from '@libs/Navigation/types';
import {findSelfDMReportID} from '@libs/ReportUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
import ONYXKEYS from '@src/ONYXKEYS';
@@ -132,11 +131,7 @@ function DynamicConfirmationPage({route}: DynamicConfirmationPageProps) {
};
if (isLoadingOnyxValue(mergeTransactionMetadata)) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'TransactionMerge.ConfirmationPage',
- isLoadingMergeTransaction: isLoadingOnyxValue(mergeTransactionMetadata),
- };
- return ;
+ return ;
}
return (
diff --git a/src/pages/TransactionMerge/DynamicDetailsReviewPage.tsx b/src/pages/TransactionMerge/DynamicDetailsReviewPage.tsx
index 4bbc11f5c8d9..efa425168ffc 100644
--- a/src/pages/TransactionMerge/DynamicDetailsReviewPage.tsx
+++ b/src/pages/TransactionMerge/DynamicDetailsReviewPage.tsx
@@ -32,7 +32,6 @@ import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {MergeTransactionNavigatorParamList} from '@libs/Navigation/types';
import type {TransactionDetails} from '@libs/ReportUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
import ONYXKEYS from '@src/ONYXKEYS';
@@ -196,11 +195,7 @@ function DynamicDetailsReviewPage({route}: DynamicDetailsReviewPageProps) {
const shouldShowSubmitError = conflictFields.length > 1 && !isEmptyObject(hasErrors);
if (isLoadingOnyxValue(mergeTransactionMetadata)) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'TransactionMerge.DetailsReviewPage',
- isLoadingMergeTransaction: isLoadingOnyxValue(mergeTransactionMetadata),
- };
- return ;
+ return ;
}
return (
diff --git a/src/pages/TransactionMerge/DynamicMergeTransactionsListPage.tsx b/src/pages/TransactionMerge/DynamicMergeTransactionsListPage.tsx
index 39beb64db073..21f648350555 100644
--- a/src/pages/TransactionMerge/DynamicMergeTransactionsListPage.tsx
+++ b/src/pages/TransactionMerge/DynamicMergeTransactionsListPage.tsx
@@ -9,7 +9,6 @@ import useOnyx from '@hooks/useOnyx';
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {MergeTransactionNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import ONYXKEYS from '@src/ONYXKEYS';
import type SCREENS from '@src/SCREENS';
@@ -28,11 +27,7 @@ function DynamicMergeTransactionsListPage({route}: DynamicMergeTransactionsListP
const [mergeTransaction, mergeTransactionMetadata] = useOnyx(`${ONYXKEYS.COLLECTION.MERGE_TRANSACTION}${transactionID}`);
if (isLoadingOnyxValue(mergeTransactionMetadata)) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'TransactionMerge.MergeTransactionsListPage',
- isLoadingMergeTransaction: isLoadingOnyxValue(mergeTransactionMetadata),
- };
- return ;
+ return ;
}
return (
diff --git a/src/pages/TransactionMerge/DynamicReceiptReviewPage.tsx b/src/pages/TransactionMerge/DynamicReceiptReviewPage.tsx
index 770a117baf6f..e871859eedcc 100644
--- a/src/pages/TransactionMerge/DynamicReceiptReviewPage.tsx
+++ b/src/pages/TransactionMerge/DynamicReceiptReviewPage.tsx
@@ -21,7 +21,6 @@ import createDynamicRoute from '@libs/Navigation/helpers/dynamicRoutesUtils/crea
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {MergeTransactionNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import ONYXKEYS from '@src/ONYXKEYS';
import {DYNAMIC_ROUTES} from '@src/ROUTES';
@@ -77,11 +76,7 @@ function DynamicReceiptReviewPage({route}: DynamicReceiptReviewPageProps) {
};
if (isLoadingOnyxValue(mergeTransactionMetadata)) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'TransactionMerge.ReceiptReviewPage',
- isLoadingMergeTransaction: isLoadingOnyxValue(mergeTransactionMetadata),
- };
- return ;
+ return ;
}
return (
diff --git a/src/pages/TransactionMerge/MergeTransactionsListContent.tsx b/src/pages/TransactionMerge/MergeTransactionsListContent.tsx
index bbe680575a04..2ba297f86485 100644
--- a/src/pages/TransactionMerge/MergeTransactionsListContent.tsx
+++ b/src/pages/TransactionMerge/MergeTransactionsListContent.tsx
@@ -17,7 +17,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import {getTransactionsForMerging, setupMergeTransactionData, setupMergeTransactionDataAndNavigate} from '@libs/actions/MergeTransaction';
import {fillMissingReceiptSource} from '@libs/MergeTransactionUtils';
import {getReportOrDraftReport, getTransactionReportName, isIOUReport} from '@libs/ReportUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import tokenizedSearch from '@libs/tokenizedSearch';
import {getAmount, getCreated, getCurrency, getDescription, getMerchant, isExpenseUnreported} from '@libs/TransactionUtils';
@@ -182,11 +181,6 @@ function MergeTransactionsListContent({transactionID, mergeTransaction}: MergeTr
return !isIOUReport(transaction?.reportID);
});
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'MergeTransactionsListContent',
- isEligibleTransactionsLoaded: eligibleTransactions !== undefined,
- };
-
if (filteredTransactions?.length === 0) {
return (
@@ -210,12 +204,7 @@ function MergeTransactionsListContent({transactionID, mergeTransaction}: MergeTr
ListItem={MergeTransactionItem}
customListHeader={headerContent}
confirmButtonOptions={confirmButtonOptions}
- customLoadingPlaceholder={
-
- }
+ customLoadingPlaceholder={}
shouldShowLoadingPlaceholder={!eligibleTransactions}
textInputOptions={textInputOptions}
shouldShowTextInput={shouldShowTextInput}
diff --git a/src/pages/Travel/EnableTravel/EnableTravelContent.tsx b/src/pages/Travel/EnableTravel/EnableTravelContent.tsx
index 02e5c6b54c09..09c574a59c8b 100644
--- a/src/pages/Travel/EnableTravel/EnableTravelContent.tsx
+++ b/src/pages/Travel/EnableTravel/EnableTravelContent.tsx
@@ -11,7 +11,6 @@ import {setTravelProvisioningEnabledSteps} from '@libs/actions/Travel';
import Navigation from '@libs/Navigation/Navigation';
import {areTravelPersonalDetailsMissing} from '@libs/PersonalDetailsUtils';
import {getAdminsPrivateEmailDomains, isNonUSDPolicy, isWorkspaceProvisionedForTravel} from '@libs/PolicyUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
import ROUTES from '@src/ROUTES';
@@ -154,8 +153,7 @@ function EnableTravelContent({policy, policyID, account, privatePersonalDetails,
});
if (isRedirecting) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'EnableTravelContent', isRedirecting};
- return ;
+ return ;
}
const handleBackButtonPress = () => {
diff --git a/src/pages/Travel/EnableTravel/index.tsx b/src/pages/Travel/EnableTravel/index.tsx
index 79c92d75d1c2..f096f91e9f3f 100644
--- a/src/pages/Travel/EnableTravel/index.tsx
+++ b/src/pages/Travel/EnableTravel/index.tsx
@@ -7,7 +7,6 @@ import {setTravelProvisioningNextStep} from '@libs/actions/Travel';
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {TravelNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import AccessOrNotFoundWrapper from '@pages/workspace/AccessOrNotFoundWrapper';
@@ -53,8 +52,7 @@ function EnableTravel({route}: EnableTravelProps) {
}, [isUserValidated, accountMetadata, policyID]);
if (isLoadingOnyxValue(privatePersonalDetailsMetadata, accountMetadata) || !isUserValidated || (isMidFlowMount && isLoadingOnyxValue(travelProvisioningMetadata))) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'EnableTravel'};
- return ;
+ return ;
}
return (
diff --git a/src/pages/UnlinkLoginPage.tsx b/src/pages/UnlinkLoginPage.tsx
index 7420dad9ce9f..9bdfc1b739c2 100644
--- a/src/pages/UnlinkLoginPage.tsx
+++ b/src/pages/UnlinkLoginPage.tsx
@@ -5,7 +5,6 @@ import usePrevious from '@hooks/usePrevious';
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import type {PublicScreensParamList} from '@navigation/types';
@@ -40,10 +39,7 @@ function UnlinkLoginPage({route}: UnlinkLoginPageProps) {
Navigation.goBack();
}, [prevIsLoading, account?.isLoading]);
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'UnlinkLoginPage',
- };
- return ;
+ return ;
}
export default UnlinkLoginPage;
diff --git a/src/pages/ValidateLoginPage/index.tsx b/src/pages/ValidateLoginPage/index.tsx
index 82d0e031262e..01828d0fb99a 100644
--- a/src/pages/ValidateLoginPage/index.tsx
+++ b/src/pages/ValidateLoginPage/index.tsx
@@ -3,7 +3,6 @@ import FullScreenLoadingIndicator from '@components/FullscreenLoadingIndicator';
import useOnyx from '@hooks/useOnyx';
import Navigation from '@libs/Navigation/Navigation';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {handleExitToNavigation, signInWithValidateCodeAndNavigate} from '@userActions/Session';
@@ -50,10 +49,7 @@ function ValidateLoginPage({
});
}, [session?.autoAuthState]);
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'ValidateLoginPage',
- };
- return ;
+ return ;
}
export default ValidateLoginPage;
diff --git a/src/pages/ValidateLoginPage/index.web.tsx b/src/pages/ValidateLoginPage/index.web.tsx
index 2db499b54006..221397122750 100644
--- a/src/pages/ValidateLoginPage/index.web.tsx
+++ b/src/pages/ValidateLoginPage/index.web.tsx
@@ -178,15 +178,7 @@ function ValidateLoginPage({
/>
)}
{((!effectiveAutoAuthState ? shouldStartSignInWithValidateCode : autoAuthStateWithDefault === CONST.AUTO_AUTH_STATE.SIGNING_IN) || isCompletingDirectSignIn) && (
-
+
)}
>
);
diff --git a/src/pages/domain/BaseDomainVerifiedPage.tsx b/src/pages/domain/BaseDomainVerifiedPage.tsx
index 283c3f7aa3c6..ea5c7d81130d 100644
--- a/src/pages/domain/BaseDomainVerifiedPage.tsx
+++ b/src/pages/domain/BaseDomainVerifiedPage.tsx
@@ -11,7 +11,6 @@ import useOnyx from '@hooks/useOnyx';
import useThemeStyles from '@hooks/useThemeStyles';
import Navigation from '@libs/Navigation/Navigation';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import NotFoundPage from '@pages/ErrorPage/NotFoundPage';
@@ -53,11 +52,7 @@ function BaseDomainVerifiedPage({domainAccountID, redirectTo, confirmDestination
}, [domainAccountID, domain?.validated, doesDomainExist, redirectTo]);
if (isLoadingOnyxValue(domainMetadata)) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'BaseDomainVerifiedPage',
- isLoadingDomain: isLoadingOnyxValue(domainMetadata),
- };
- return ;
+ return ;
}
if (!domain || !isAdmin) {
diff --git a/src/pages/domain/BaseVerifyDomainPage.tsx b/src/pages/domain/BaseVerifyDomainPage.tsx
index dee23a6deab1..3513a270b5ef 100644
--- a/src/pages/domain/BaseVerifyDomainPage.tsx
+++ b/src/pages/domain/BaseVerifyDomainPage.tsx
@@ -20,7 +20,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import {getDomainValidationCode, resetDomainValidationError, validateDomain} from '@libs/actions/Domain';
import {getLatestErrorMessage} from '@libs/ErrorUtils';
import Navigation, {navigationRef} from '@libs/Navigation/Navigation';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import NotFoundPage from '@pages/ErrorPage/NotFoundPage';
@@ -93,11 +92,7 @@ function BaseVerifyDomainPage({domainAccountID, forwardTo}: BaseVerifyDomainPage
const isLoadingDomain = isLoadingOnyxValue(domainMetadata);
if (isLoadingDomain) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'BaseVerifyDomainPage',
- isLoadingDomain,
- };
- return ;
+ return ;
}
if (!domain) {
diff --git a/src/pages/domain/DomainAccessRestrictedPage.tsx b/src/pages/domain/DomainAccessRestrictedPage.tsx
index c8a2a9d4c4b2..3f2ebab2474e 100644
--- a/src/pages/domain/DomainAccessRestrictedPage.tsx
+++ b/src/pages/domain/DomainAccessRestrictedPage.tsx
@@ -18,7 +18,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {WorkspacesDomainModalNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import NotFoundPage from '@pages/ErrorPage/NotFoundPage';
@@ -53,11 +52,7 @@ function DomainAccessRestrictedPage({route}: DomainAccessRestrictedPageProps) {
const isDomainNameLoading = isLoadingOnyxValue(domainNameResults);
if (isDomainNameLoading) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'DomainAccessRestrictedPage',
- isDomainNameLoading,
- };
- return ;
+ return ;
}
if (!domainName) {
diff --git a/src/pages/domain/DomainAddedPage.tsx b/src/pages/domain/DomainAddedPage.tsx
index ca8af1f9ef19..7860f6a7354e 100644
--- a/src/pages/domain/DomainAddedPage.tsx
+++ b/src/pages/domain/DomainAddedPage.tsx
@@ -13,7 +13,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {WorkspacesDomainModalNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import NotFoundPage from '@pages/ErrorPage/NotFoundPage';
@@ -38,11 +37,7 @@ function DomainAddedPage({route}: DomainAddedPageProps) {
const isDomainLoading = isLoadingOnyxValue(domainMetadata);
if (isDomainLoading) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'DomainAddedPage',
- isDomainLoading,
- };
- return ;
+ return ;
}
if (!isAdmin) {
diff --git a/src/pages/domain/DomainNotFoundPageWrapper.tsx b/src/pages/domain/DomainNotFoundPageWrapper.tsx
index 79c3a65f8820..d9854d36007c 100644
--- a/src/pages/domain/DomainNotFoundPageWrapper.tsx
+++ b/src/pages/domain/DomainNotFoundPageWrapper.tsx
@@ -4,8 +4,6 @@ import FullscreenLoadingIndicator from '@components/FullscreenLoadingIndicator';
import useCurrentUserPersonalDetails from '@hooks/useCurrentUserPersonalDetails';
import useOnyx from '@hooks/useOnyx';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import Navigation from '@navigation/Navigation';
import NotFoundPage from '@pages/ErrorPage/NotFoundPage';
@@ -51,11 +49,7 @@ function DomainNotFoundPageWrapper({domainAccountID, shouldBeBlocked, fullPageNo
}, [domain, isAdmin, shouldShowFullScreenLoadingIndicator]);
if (shouldShowFullScreenLoadingIndicator) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'DomainNotFoundPageWrapper',
- shouldShowFullScreenLoadingIndicator,
- };
- return ;
+ return ;
}
if (shouldShowNotFoundPage) {
diff --git a/src/pages/domain/DomainSamlPage.tsx b/src/pages/domain/DomainSamlPage.tsx
index 2eecf64bd0c1..70e16c9e018b 100644
--- a/src/pages/domain/DomainSamlPage.tsx
+++ b/src/pages/domain/DomainSamlPage.tsx
@@ -19,7 +19,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {DomainSplitNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import colors from '@styles/theme/colors';
@@ -77,12 +76,7 @@ function DomainSamlPage({route}: DomainSamlPageProps) {
);
if (isLoadingOnyxValue(domainResults, domainSettingsResults)) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'DomainSamlPage',
- isLoadingDomain: isLoadingOnyxValue(domainResults),
- isLoadingDomainSettings: isLoadingOnyxValue(domainSettingsResults),
- };
- return ;
+ return ;
}
return (
diff --git a/src/pages/domain/DomainsListPage.tsx b/src/pages/domain/DomainsListPage.tsx
index 4d7eab5ccbea..6a01a1853882 100644
--- a/src/pages/domain/DomainsListPage.tsx
+++ b/src/pages/domain/DomainsListPage.tsx
@@ -16,7 +16,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import {hasDomainErrors} from '@libs/DomainUtils';
import interceptAnonymousUser from '@libs/interceptAnonymousUser';
import Navigation from '@libs/Navigation/Navigation';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
import ONYXKEYS from '@src/ONYXKEYS';
@@ -76,11 +75,6 @@ function DomainsListPage() {
}
}
- const activityIndicatorReasonAttributes = {
- context: 'DomainsListPage',
- isOffline,
- } satisfies SkeletonSpanReasonAttributes;
-
const headerButton = !!domainRows.length && (
diff --git a/src/pages/inbox/sidebar/SidebarLinks.tsx b/src/pages/inbox/sidebar/SidebarLinks.tsx
index 2f54f3aee700..6136b710b2fb 100644
--- a/src/pages/inbox/sidebar/SidebarLinks.tsx
+++ b/src/pages/inbox/sidebar/SidebarLinks.tsx
@@ -12,7 +12,6 @@ import {setSidebarLoaded} from '@libs/actions/App';
import Navigation from '@libs/Navigation/Navigation';
import type {OptionData} from '@libs/ReportUtils';
import {cancelSpan} from '@libs/telemetry/activeSpans';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import * as ReportActionContextMenu from '@pages/inbox/report/ContextMenu/ReportActionContextMenu';
@@ -100,13 +99,6 @@ function SidebarLinks({insets, optionListItems, hasReportData, priorityMode = CO
// Unread/To-do tabs, where the filtered list is legitimately empty while reports still exist.
const shouldShowLoadingSkeleton = isLoadingReportData && !hasReportData;
- const sidebarSkeletonReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'SidebarLinks',
- isLoadingReportData,
- hasReportData,
- optionListItemsCount: optionListItems?.length,
- };
-
return (
@@ -127,10 +119,7 @@ function SidebarLinks({insets, optionListItems, hasReportData, priorityMode = CO
)}
{shouldShowLoadingSkeleton && (
-
+
)}
diff --git a/src/pages/iou/SplitExpensePage.tsx b/src/pages/iou/SplitExpensePage.tsx
index 88219b69b040..c0ff25ee8ed1 100644
--- a/src/pages/iou/SplitExpensePage.tsx
+++ b/src/pages/iou/SplitExpensePage.tsx
@@ -58,7 +58,6 @@ import {getTransactionDetails, isReportApproved, isSelfDM, isSettled as isSettle
import type {TransactionDetails} from '@libs/ReportUtils';
import {getActiveGroupSearchHashes} from '@libs/SearchUIUtils';
import {computeSplitSaveErrorMessage, computeSplitWarningMessage} from '@libs/SplitExpenseUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import type {TranslationPathOrText} from '@libs/TransactionPreviewUtils';
import {getChildTransactions, getExpenseTypeTranslationKey, getTransactionType, isDistanceRequest, isManagedCardTransaction, isPerDiemRequest} from '@libs/TransactionUtils';
@@ -576,16 +575,7 @@ function SplitExpensePage({route}: SplitExpensePageProps) {
};
if (isLoadingDraftTransaction) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'SplitExpensePage',
- isLoadingDraftTransaction,
- };
- return (
-
- );
+ return ;
}
const collapsibleHeaderOffset = isInitialSplit ? TAB_NAVIGATOR_HEIGHT_LANDSCAPE : 0;
diff --git a/src/pages/iou/request/IOURequestStartPage.tsx b/src/pages/iou/request/IOURequestStartPage.tsx
index 0c4013c56945..fb04acedf55a 100644
--- a/src/pages/iou/request/IOURequestStartPage.tsx
+++ b/src/pages/iou/request/IOURequestStartPage.tsx
@@ -244,7 +244,6 @@ function IOURequestStartPage({
);
diff --git a/src/pages/iou/request/step/DynamicIOURequestStepDestination.tsx b/src/pages/iou/request/step/DynamicIOURequestStepDestination.tsx
index f021f383c61f..a40e5b9c2cb7 100644
--- a/src/pages/iou/request/step/DynamicIOURequestStepDestination.tsx
+++ b/src/pages/iou/request/step/DynamicIOURequestStepDestination.tsx
@@ -27,7 +27,6 @@ import Navigation from '@libs/Navigation/Navigation';
import {getPerDiemCustomUnit, getPolicyByCustomUnitID, isPolicyAdmin} from '@libs/PolicyUtils';
import {findSelfDMReportID, getPolicyExpenseChat} from '@libs/ReportUtils';
import {shouldRestrictUserBillableActions} from '@libs/SubscriptionUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import variables from '@styles/variables';
@@ -123,12 +122,6 @@ function DynamicIOURequestStepDestination({
const isLoading = !isOffline && (!customUnit?.rates || isLoadingOnyxValue(policyMetadata));
const shouldShowEmptyState = isEmptyObject(customUnit?.rates) && !isOffline && !isLoading;
const shouldShowOfflineView = isEmptyObject(customUnit?.rates) && isOffline;
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'IOURequestStepDestination',
- isLoading,
- isOffline,
- hasCustomUnitRates: !isEmptyObject(customUnit?.rates),
- };
const navigateBack = () => {
Navigation.goBack(backPath);
@@ -236,7 +229,6 @@ function DynamicIOURequestStepDestination({
)}
{shouldShowOfflineView && {null}}
diff --git a/src/pages/iou/request/step/IOURequestStepCategory.tsx b/src/pages/iou/request/step/IOURequestStepCategory.tsx
index 85fe386b092a..89c3dda183cb 100644
--- a/src/pages/iou/request/step/IOURequestStepCategory.tsx
+++ b/src/pages/iou/request/step/IOURequestStepCategory.tsx
@@ -34,7 +34,6 @@ import Navigation from '@libs/Navigation/Navigation';
import {hasEnabledOptions} from '@libs/OptionsListUtils';
import {hasAccountingConnections, isGroupPolicy, isPolicyAdmin} from '@libs/PolicyUtils';
import {getTransactionDetails, isSelfDM} from '@libs/ReportUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {getRequestType} from '@libs/TransactionUtils';
import CONST from '@src/CONST';
@@ -149,11 +148,6 @@ function IOURequestStepCategory({
const isLoading = !isOffline && policyCategories === undefined;
const shouldShowEmptyState = policyCategories !== undefined && !shouldShowCategory;
const shouldShowOfflineView = policyCategories === undefined && isOffline;
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'IOURequestStepCategory',
- isLoading,
- isOffline,
- };
useEffect(() => {
fetchData();
@@ -234,7 +228,6 @@ function IOURequestStepCategory({
)}
{shouldShowOfflineView && {null}}
diff --git a/src/pages/iou/request/step/IOURequestStepConfirmation.tsx b/src/pages/iou/request/step/IOURequestStepConfirmation.tsx
index f688e0df8070..c89251e64274 100644
--- a/src/pages/iou/request/step/IOURequestStepConfirmation.tsx
+++ b/src/pages/iou/request/step/IOURequestStepConfirmation.tsx
@@ -58,7 +58,6 @@ import type {MoneyRequestNavigatorParamList} from '@libs/Navigation/types';
import {getParticipantsOption, getReportOption} from '@libs/OptionsListUtils';
import {findSelfDMReportID, generateReportID, getReportOrDraftReport, isMoneyRequestReport, isPolicyExpenseChat as isPolicyExpenseChatUtils} from '@libs/ReportUtils';
import {cancelTracking, getPendingSubmitFollowUpAction, isTracking} from '@libs/telemetry/submitFollowUpAction';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {
getRequestType,
hasReceipt,
@@ -764,11 +763,7 @@ function IOURequestStepConfirmation({
};
if (isLoadingTransaction) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'IOURequestStepConfirmation',
- isLoadingTransaction,
- };
- return ;
+ return ;
}
const showNextTransaction = () => {
@@ -896,15 +891,7 @@ function IOURequestStepConfirmation({
) : null}
)}
- {(isLoading || (isScanRequest(transaction) && !Object.values(receiptFiles).length)) && (
-
- )}
+ {(isLoading || (isScanRequest(transaction) && !Object.values(receiptFiles).length)) && }
{PDFValidationComponent}
{
cancelSpan(CONST.TELEMETRY.SPAN_ODOMETER_IMAGE_CAPTURE);
},
@@ -290,7 +288,6 @@ function IOURequestStepOdometerImage({
size={CONST.ACTIVITY_INDICATOR_SIZE.LARGE}
style={[styles.flex1]}
color={theme.textSupporting}
- reasonAttributes={cameraLoadingReasonAttributes}
/>
)}
diff --git a/src/pages/iou/request/step/IOURequestStepOdometerImage/index.tsx b/src/pages/iou/request/step/IOURequestStepOdometerImage/index.tsx
index b62fee998c9e..25e1deae0d76 100644
--- a/src/pages/iou/request/step/IOURequestStepOdometerImage/index.tsx
+++ b/src/pages/iou/request/step/IOURequestStepOdometerImage/index.tsx
@@ -163,13 +163,6 @@ function IOURequestStepOdometerImage({
capturePhotoWithFlash(getScreenshot);
};
- const cameraLoadingReasonAttributes = {
- context: 'IOURequestStepOdometerImage',
- cameraPermissionState,
- isQueriedPermissionState,
- hasVideoConstraints: !isEmptyObject(videoConstraints),
- };
-
const mobileCameraView = () => (
<>
@@ -178,7 +171,6 @@ function IOURequestStepOdometerImage({
size={CONST.ACTIVITY_INDICATOR_SIZE.LARGE}
style={[styles.flex1]}
color={theme.textSupporting}
- reasonAttributes={cameraLoadingReasonAttributes}
/>
)}
{cameraPermissionState !== 'granted' && isQueriedPermissionState && (
diff --git a/src/pages/iou/request/step/IOURequestStepPerDiemWorkspace.tsx b/src/pages/iou/request/step/IOURequestStepPerDiemWorkspace.tsx
index 56a22cb21cd9..bd66d41a07a1 100644
--- a/src/pages/iou/request/step/IOURequestStepPerDiemWorkspace.tsx
+++ b/src/pages/iou/request/step/IOURequestStepPerDiemWorkspace.tsx
@@ -14,7 +14,6 @@ import createDynamicRoute from '@libs/Navigation/helpers/dynamicRoutesUtils/crea
import Navigation from '@libs/Navigation/Navigation';
import {getActivePoliciesWithExpenseChatAndPerDiemEnabled, getPerDiemCustomUnit} from '@libs/PolicyUtils';
import {findSelfDMReportID, getPolicyExpenseChat} from '@libs/ReportUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {setCustomUnitID, setMoneyRequestCategory, setMoneyRequestParticipants, setMoneyRequestParticipantsFromReport} from '@userActions/IOU/MoneyRequest';
import {setTransactionReport} from '@userActions/Transaction';
@@ -109,8 +108,7 @@ function IOURequestStepPerDiemWorkspace({route, navigation, transaction}: IOUReq
if (isOffline) {
return {null};
}
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'IOURequestStepPerDiemWorkspace', pendingPolicyID};
- return ;
+ return ;
}
return (
diff --git a/src/pages/iou/request/step/IOURequestStepScan/components/Camera/CameraCapture.tsx b/src/pages/iou/request/step/IOURequestStepScan/components/Camera/CameraCapture.tsx
index 1c9de2fece93..466e3a658680 100644
--- a/src/pages/iou/request/step/IOURequestStepScan/components/Camera/CameraCapture.tsx
+++ b/src/pages/iou/request/step/IOURequestStepScan/components/Camera/CameraCapture.tsx
@@ -15,7 +15,6 @@ import useWebCamera from '@hooks/useWebCamera';
import {base64ToFile} from '@libs/fileDownload/FileUtils';
import HapticFeedback from '@libs/HapticFeedback';
import {cancelSpan, endSpan, getSpan, startSpan} from '@libs/telemetry/activeSpans';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {useMultiScanActions, useMultiScanState} from '@pages/iou/request/step/IOURequestStepScan/components/MultiScanContext';
import NavigationAwareCamera from '@pages/iou/request/step/IOURequestStepScan/components/NavigationAwareCamera/WebCamera';
@@ -149,13 +148,6 @@ function CameraCapture({onCapture, onPicked, shouldAcceptMultipleFiles = false,
size={CONST.ACTIVITY_INDICATOR_SIZE.LARGE}
style={[styles.flex1]}
color={theme.textSupporting}
- reasonAttributes={
- {
- context: 'CameraCapture',
- cameraPermissionState,
- isQueriedPermissionState,
- } satisfies SkeletonSpanReasonAttributes
- }
/>
)}
{cameraPermissionState !== 'granted' && isQueriedPermissionState && (
diff --git a/src/pages/iou/request/step/IOURequestStepScan/components/Camera/index.native.tsx b/src/pages/iou/request/step/IOURequestStepScan/components/Camera/index.native.tsx
index 294af113cb7e..c046094d1617 100644
--- a/src/pages/iou/request/step/IOURequestStepScan/components/Camera/index.native.tsx
+++ b/src/pages/iou/request/step/IOURequestStepScan/components/Camera/index.native.tsx
@@ -79,8 +79,7 @@ function Camera({onCapture, onPicked, shouldAcceptMultipleFiles = false, onLayou
askForPermissions,
tapGesture,
cameraFocusIndicatorAnimatedStyle,
- cameraLoadingReasonAttributes,
- } = useNativeCamera({context: 'Camera', onFocusStart, onFocusCleanup});
+ } = useNativeCamera({onFocusStart, onFocusCleanup});
// Prioritize photoResolution so the format selector picks the configured PHOTO_WIDTH/PHOTO_HEIGHT
// format. videoResolution is platform-specific:
@@ -214,7 +213,6 @@ function Camera({onCapture, onPicked, shouldAcceptMultipleFiles = false, onLayou
size={CONST.ACTIVITY_INDICATOR_SIZE.LARGE}
style={[styles.flex1]}
color={theme.textSupporting}
- reasonAttributes={cameraLoadingReasonAttributes}
/>
)}
diff --git a/src/pages/iou/request/step/IOURequestStepTime.tsx b/src/pages/iou/request/step/IOURequestStepTime.tsx
index a7c5aba5e583..4be7deba7599 100644
--- a/src/pages/iou/request/step/IOURequestStepTime.tsx
+++ b/src/pages/iou/request/step/IOURequestStepTime.tsx
@@ -17,7 +17,6 @@ import {isValidMoneyRequestType} from '@libs/IOUUtils';
import createDynamicRoute from '@libs/Navigation/helpers/dynamicRoutesUtils/createDynamicRoute';
import Navigation from '@libs/Navigation/Navigation';
import {getActivePoliciesWithExpenseChatAndPerDiemEnabled} from '@libs/PolicyUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {getIOURequestPolicyID, setMoneyRequestDateAttribute} from '@userActions/IOU/MoneyRequest';
@@ -150,16 +149,7 @@ function IOURequestStepTime({
};
if (isLoadingTransaction) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'IOURequestStepTime',
- isLoadingTransaction,
- };
- return (
-
- );
+ return ;
}
return (
diff --git a/src/pages/iou/request/step/withFullTransactionOrNotFound.tsx b/src/pages/iou/request/step/withFullTransactionOrNotFound.tsx
index 8c8ef15d69e6..86960f3f94c7 100644
--- a/src/pages/iou/request/step/withFullTransactionOrNotFound.tsx
+++ b/src/pages/iou/request/step/withFullTransactionOrNotFound.tsx
@@ -8,7 +8,6 @@ import getNonEmptyStringOnyxID from '@libs/getNonEmptyStringOnyxID';
import {shouldUseTransactionDraft} from '@libs/IOUUtils';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {MoneyRequestNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
import ONYXKEYS from '@src/ONYXKEYS';
@@ -104,11 +103,7 @@ function WithFullTransactionOrNotFoundImpl;
+ return ;
}
return (
;
+ return ;
}
if (iouTypeParamIsInvalid || !canUserPerformWriteAction(report ?? {reportID: ''}, isReportArchived)) {
diff --git a/src/pages/media/AttachmentModalScreen/AttachmentModalBaseContent/index.tsx b/src/pages/media/AttachmentModalScreen/AttachmentModalBaseContent/index.tsx
index d3e1669207ab..3acfa5c94387 100644
--- a/src/pages/media/AttachmentModalScreen/AttachmentModalBaseContent/index.tsx
+++ b/src/pages/media/AttachmentModalScreen/AttachmentModalBaseContent/index.tsx
@@ -351,7 +351,6 @@ function AttachmentModalBaseContent({
)}
diff --git a/src/pages/settings/Agents/AddAgentPage.tsx b/src/pages/settings/Agents/AddAgentPage.tsx
index 6807db777662..16a8d2faad0d 100644
--- a/src/pages/settings/Agents/AddAgentPage.tsx
+++ b/src/pages/settings/Agents/AddAgentPage.tsx
@@ -236,12 +236,7 @@ function AddAgentPage({route}: AddAgentPageProps) {
const [template, templateMetadata] = useOnyx(ONYXKEYS.NEW_AGENT_TEMPLATE);
if (isLoadingOnyxValue(templateMetadata)) {
- return (
-
- );
+ return ;
}
return (
diff --git a/src/pages/settings/Agents/Fields/AddAgentAvatarPage.tsx b/src/pages/settings/Agents/Fields/AddAgentAvatarPage.tsx
index b7aea418977c..4682d0128bc0 100644
--- a/src/pages/settings/Agents/Fields/AddAgentAvatarPage.tsx
+++ b/src/pages/settings/Agents/Fields/AddAgentAvatarPage.tsx
@@ -42,7 +42,7 @@ function AddAgentAvatarPage() {
};
if (isLoadingOnyxValue(avatarDraftMetadata)) {
- return ;
+ return ;
}
return (
diff --git a/src/pages/settings/Agents/NewAgentPage.tsx b/src/pages/settings/Agents/NewAgentPage.tsx
index 8536f0102a44..0847949f026b 100644
--- a/src/pages/settings/Agents/NewAgentPage.tsx
+++ b/src/pages/settings/Agents/NewAgentPage.tsx
@@ -129,10 +129,7 @@ function NewAgentPage({route}: NewAgentPageProps) {
{buildCustomAgentButton}
{templateSectionLabel}
-
+
);
diff --git a/src/pages/settings/InitialSettingsPage.tsx b/src/pages/settings/InitialSettingsPage.tsx
index 423902037721..4ecd2df9c126 100755
--- a/src/pages/settings/InitialSettingsPage.tsx
+++ b/src/pages/settings/InitialSettingsPage.tsx
@@ -37,7 +37,6 @@ import useIsSidebarRouteActive from '@libs/Navigation/helpers/useIsSidebarRouteA
import Navigation from '@libs/Navigation/Navigation';
import {useIsAgentAccount} from '@libs/SessionUtils';
import {getFreeTrialText, hasSubscriptionRedDotError} from '@libs/SubscriptionUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {shouldHideOldAppRedirect} from '@libs/TryNewDotUtils';
import {expensifyLoginsSelector, getProfilePageBrickRoadIndicator, hasDeviceManagementError} from '@libs/UserUtils';
@@ -484,18 +483,11 @@ function InitialSettingsPage({currentUserPersonalDetails}: InitialSettingsPagePr
const generalMenuItems = getMenuItemsSection(generalMenuItemsData);
const isPersonalDetailsEmpty = isEmptyObject(currentUserPersonalDetails) || currentUserPersonalDetails.displayName === undefined;
- const skeletonReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'InitialSettingsPage',
- isPersonalDetailsEmpty,
- };
const headerContent = (
{isPersonalDetailsEmpty ? (
-
+
) : (
diff --git a/src/pages/settings/Profile/Contacts/ContactMethodDetailsPage.tsx b/src/pages/settings/Profile/Contacts/ContactMethodDetailsPage.tsx
index de7461cadf4c..140b4e11e020 100644
--- a/src/pages/settings/Profile/Contacts/ContactMethodDetailsPage.tsx
+++ b/src/pages/settings/Profile/Contacts/ContactMethodDetailsPage.tsx
@@ -38,7 +38,6 @@ import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import TransitionTracker from '@libs/Navigation/TransitionTracker';
import type {SettingsNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {expensifyLoginsSelector} from '@libs/UserUtils';
import {close} from '@userActions/Modal';
@@ -240,14 +239,8 @@ function ContactMethodDetailsPage({route}: ContactMethodDetailsPageProps) {
return menuItems;
}, [isValidateCodeFormVisible, translate, turnOnDeleteModal, isDefaultContactMethod, icons.Trashcan]);
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'ContactMethodDetailsPage',
- isLoadingOnyxValues,
- isLoadingReportData,
- };
-
if (isLoadingOnyxValues || (isLoadingReportData && isEmptyObject(loginList))) {
- return ;
+ return ;
}
if (!contactMethod || !loginData) {
diff --git a/src/pages/settings/Profile/CustomStatus/SetDatePage.tsx b/src/pages/settings/Profile/CustomStatus/SetDatePage.tsx
index 6687ab5a5170..3d629e51ac69 100644
--- a/src/pages/settings/Profile/CustomStatus/SetDatePage.tsx
+++ b/src/pages/settings/Profile/CustomStatus/SetDatePage.tsx
@@ -12,7 +12,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import DateUtils from '@libs/DateUtils';
import Navigation from '@libs/Navigation/Navigation';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {getDatePassedError, getFieldRequiredErrors} from '@libs/ValidationUtils';
import {updateStatusDraftCustomClearAfterDate} from '@userActions/User';
@@ -53,13 +52,9 @@ function SetDatePage() {
);
const isLoadingStatusDraft = isLoadingOnyxValue(statusDraftCustomClearAfterDateMetaData);
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'SetDatePage',
- isLoadingStatusDraft,
- };
if (isLoadingStatusDraft) {
- return ;
+ return ;
}
return (
diff --git a/src/pages/settings/Profile/DisplayNamePage.tsx b/src/pages/settings/Profile/DisplayNamePage.tsx
index a3dd7e2cef12..de758dea9029 100644
--- a/src/pages/settings/Profile/DisplayNamePage.tsx
+++ b/src/pages/settings/Profile/DisplayNamePage.tsx
@@ -16,7 +16,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import {addErrorMessage} from '@libs/ErrorUtils';
import Navigation from '@libs/Navigation/Navigation';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {doesContainReservedWord, isRequiredFulfilled, isValidDisplayName} from '@libs/ValidationUtils';
import {updateDisplayName as updateDisplayNamePersonalDetails} from '@userActions/PersonalDetails';
@@ -88,10 +87,7 @@ function DisplayNamePage({currentUserPersonalDetails}: DisplayNamePageProps) {
/>
{isLoadingApp ? (
-
+
) : (
({
/>
{isLoadingApp ? (
-
+
) : (
normalizeCountryCode(getCurrentAddress(privatePersonalDetails)) as Address, [privatePersonalDetails]);
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'PersonalAddressPage',
- isLoading,
- };
if (isLoading) {
- return ;
+ return ;
}
return (
- );
+ return ;
}
return (
diff --git a/src/pages/settings/Profile/ProfilePage.tsx b/src/pages/settings/Profile/ProfilePage.tsx
index 350da72a69c7..a11f1957e714 100755
--- a/src/pages/settings/Profile/ProfilePage.tsx
+++ b/src/pages/settings/Profile/ProfilePage.tsx
@@ -33,7 +33,6 @@ import type {PlatformStackRouteProp} from '@libs/Navigation/PlatformStackNavigat
import type {SettingsSplitNavigatorParamList} from '@libs/Navigation/types';
import {getFormattedAddress, temporaryGetDisplayNameOrDefault} from '@libs/PersonalDetailsUtils';
import {useIsAgentAccount} from '@libs/SessionUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {expensifyLoginsSelector, getContactMethodsOptions, getLoginListBrickRoadIndicator} from '@libs/UserUtils';
import {clearAgentAvatarUpdateError} from '@userActions/Agent';
@@ -188,11 +187,6 @@ function ProfilePage() {
},
];
- const privateSectionReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'ProfilePage.privateSection',
- isLoadingApp: isAppLoadPending,
- };
-
return (
{isEmptyObject(currentUserPersonalDetails) || accountID === -1 || !avatarURL ? (
-
+
) : (
{isAppLoadPending ? (
-
+
) : (
diff --git a/src/pages/settings/Profile/PronounsPage.tsx b/src/pages/settings/Profile/PronounsPage.tsx
index 813ca867eca8..f834b5973f11 100644
--- a/src/pages/settings/Profile/PronounsPage.tsx
+++ b/src/pages/settings/Profile/PronounsPage.tsx
@@ -14,7 +14,6 @@ import useOnyx from '@hooks/useOnyx';
import useThemeStyles from '@hooks/useThemeStyles';
import Navigation from '@libs/Navigation/Navigation';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {updatePronouns as updatePronounsPersonalDetails} from '@userActions/PersonalDetails';
@@ -107,7 +106,7 @@ function PronounsPage({currentUserPersonalDetails}: PronounsPageProps) {
testID="PronounsPage"
>
{isLoadingApp && !currentUserPersonalDetails.pronouns ? (
-
+
) : (
<>
diff --git a/src/pages/settings/Rules/ExpenseRulesPage.tsx b/src/pages/settings/Rules/ExpenseRulesPage.tsx
index 4da908521a14..5eaac8389a4e 100644
--- a/src/pages/settings/Rules/ExpenseRulesPage.tsx
+++ b/src/pages/settings/Rules/ExpenseRulesPage.tsx
@@ -24,7 +24,6 @@ import {clearDraftRule, clearExpenseRuleErrors, deleteExpenseRules, setDraftRule
import {formatExpenseRuleChanges, getKeyForRule} from '@libs/ExpenseRuleUtils';
import Navigation from '@libs/Navigation/Navigation';
import Parser from '@libs/Parser';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
import ONYXKEYS from '@src/ONYXKEYS';
@@ -160,11 +159,6 @@ function ExpenseRulesPage() {
);
- const loadingReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'ExpenseRulesPage.loading',
- isLoading,
- };
-
return (
)}
diff --git a/src/pages/settings/Security/TwoFactorAuth/DynamicTwoFactorAuthPage.tsx b/src/pages/settings/Security/TwoFactorAuth/DynamicTwoFactorAuthPage.tsx
index fcb0893d9360..0dada12a5a15 100644
--- a/src/pages/settings/Security/TwoFactorAuth/DynamicTwoFactorAuthPage.tsx
+++ b/src/pages/settings/Security/TwoFactorAuth/DynamicTwoFactorAuthPage.tsx
@@ -20,7 +20,6 @@ import getPlatform from '@libs/getPlatform';
import localFileDownload from '@libs/localFileDownload';
import createDynamicRoute from '@libs/Navigation/helpers/dynamicRoutesUtils/createDynamicRoute';
import Navigation from '@libs/Navigation/Navigation';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {toggleTwoFactorAuth} from '@userActions/Session';
import {quitAndNavigateBack, setCodesAreCopied} from '@userActions/TwoFactorAuthActions';
@@ -64,7 +63,6 @@ function DynamicTwoFactorAuthPage() {
const isUserValidated = account?.validated ?? false;
const is2FAEnabled = !!account?.requiresTwoFactorAuth;
- const accountLoadingReasonAttributes: SkeletonSpanReasonAttributes = {context: 'DynamicTwoFactorAuthPage', isLoading: !!account?.isLoading};
const recoveryCodes = account?.recoveryCodes;
@@ -119,7 +117,7 @@ function DynamicTwoFactorAuthPage() {
{account?.isLoading ? (
-
+
) : (
<>
diff --git a/src/pages/settings/Subscription/CancelSubscriptionPage/index.tsx b/src/pages/settings/Subscription/CancelSubscriptionPage/index.tsx
index 58170ea7ecb9..433d1aeb2afb 100644
--- a/src/pages/settings/Subscription/CancelSubscriptionPage/index.tsx
+++ b/src/pages/settings/Subscription/CancelSubscriptionPage/index.tsx
@@ -71,7 +71,7 @@ function CancelSubscriptionPage() {
const isAutomaticCancellation = resolvedCancellationType === CONST.CANCELLATION_TYPE.AUTOMATIC;
if (isLoadingGuardData) {
- return ;
+ return ;
}
return (
diff --git a/src/pages/settings/Subscription/CardAuthenticationModal/index.tsx b/src/pages/settings/Subscription/CardAuthenticationModal/index.tsx
index 01a5815c339c..acd03bb4b825 100644
--- a/src/pages/settings/Subscription/CardAuthenticationModal/index.tsx
+++ b/src/pages/settings/Subscription/CardAuthenticationModal/index.tsx
@@ -8,8 +8,6 @@ import useOnyx from '@hooks/useOnyx';
import useResponsiveLayout from '@hooks/useResponsiveLayout';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import {clearPaymentCard3dsVerification, verifySetupIntent} from '@userActions/PaymentMethods';
import {verifySetupIntentAndRequestPolicyOwnerChange} from '@userActions/Policy/Policy';
@@ -37,7 +35,6 @@ function CardAuthenticationModal({headerTitle, policyID}: CardAuthenticationModa
const [authenticationLink] = useOnyx(ONYXKEYS.VERIFY_3DS_SUBSCRIPTION);
const [isLoading, setIsLoading] = useState(true);
const [isVisible, setIsVisible] = useState(false);
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'CardAuthenticationModal', isLoading};
const {accountID: currentUserAccountID, email: currentUserEmail = ''} = useCurrentUserPersonalDetails();
const onModalClose = useCallback(() => {
@@ -110,7 +107,7 @@ function CardAuthenticationModal({headerTitle, policyID}: CardAuthenticationModa
setIsLoading(false);
}}
/>
- {isLoading && }
+ {isLoading && }
diff --git a/src/pages/settings/Subscription/SubscriptionPlan/SubscriptionPlanCard.tsx b/src/pages/settings/Subscription/SubscriptionPlan/SubscriptionPlanCard.tsx
index 155de5591312..33f9e2e580a4 100644
--- a/src/pages/settings/Subscription/SubscriptionPlan/SubscriptionPlanCard.tsx
+++ b/src/pages/settings/Subscription/SubscriptionPlan/SubscriptionPlanCard.tsx
@@ -14,7 +14,6 @@ import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
import {getSubscriptionPlanInfo, isSubscriptionTypeOfInvoicing} from '@libs/SubscriptionUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import variables from '@styles/variables';
@@ -63,7 +62,6 @@ function SubscriptionPlanCard({subscriptionPlan, isFromComparisonModal = false,
);
const isSelected = isFromComparisonModal && subscriptionPlan === currentSubscriptionPlan;
const benefitsColumns = shouldUseNarrowLayout || isFromComparisonModal ? 1 : 2;
- const subscriptionLoadingReasonAttributes: SkeletonSpanReasonAttributes = {context: 'SubscriptionPlanCard', isLoading: !privateSubscription};
const renderBenefits = () => {
return (
@@ -120,7 +118,7 @@ function SubscriptionPlanCard({subscriptionPlan, isFromComparisonModal = false,
{!privateSubscription ? (
-
+
) : (
<>
diff --git a/src/pages/settings/Subscription/SubscriptionSettings/index.native.tsx b/src/pages/settings/Subscription/SubscriptionSettings/index.native.tsx
index e047ae5f22f6..fbeb056161a1 100644
--- a/src/pages/settings/Subscription/SubscriptionSettings/index.native.tsx
+++ b/src/pages/settings/Subscription/SubscriptionSettings/index.native.tsx
@@ -24,7 +24,6 @@ import {openLink} from '@libs/actions/Link';
import {convertToShortDisplayString} from '@libs/CurrencyUtils';
import {isPolicyAdmin} from '@libs/PolicyUtils';
import {getSubscriptionPrice, isSubscriptionTypeOfInvoicing, shouldUseSimplifiedCollectSubscriptionUI} from '@libs/SubscriptionUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import Navigation from '@navigation/Navigation';
@@ -93,8 +92,7 @@ function SubscriptionSettings() {
}
if (!privateSubscription) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'SubscriptionSettings', privateSubscriptionLoaded: false};
- return ;
+ return ;
}
return (
diff --git a/src/pages/settings/Subscription/SubscriptionSettings/index.tsx b/src/pages/settings/Subscription/SubscriptionSettings/index.tsx
index bbc2f114a9ca..3f59c680d36c 100644
--- a/src/pages/settings/Subscription/SubscriptionSettings/index.tsx
+++ b/src/pages/settings/Subscription/SubscriptionSettings/index.tsx
@@ -33,7 +33,6 @@ import {convertToShortDisplayString} from '@libs/CurrencyUtils';
import createDynamicRoute from '@libs/Navigation/helpers/dynamicRoutesUtils/createDynamicRoute';
import {isPolicyAdmin} from '@libs/PolicyUtils';
import {getSubscriptionPrice, isSubscriptionTypeOfInvoicing, shouldUseSimplifiedCollectSubscriptionUI} from '@libs/SubscriptionUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import Navigation from '@navigation/Navigation';
@@ -230,8 +229,7 @@ function SubscriptionSettings() {
}
if (!privateSubscription) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'SubscriptionSettings', privateSubscriptionLoaded: false};
- return ;
+ return ;
}
return (
diff --git a/src/pages/settings/Subscription/SubscriptionSettingsPage.tsx b/src/pages/settings/Subscription/SubscriptionSettingsPage.tsx
index 428b29dac671..18de841b647b 100644
--- a/src/pages/settings/Subscription/SubscriptionSettingsPage.tsx
+++ b/src/pages/settings/Subscription/SubscriptionSettingsPage.tsx
@@ -15,7 +15,6 @@ import {openSubscriptionPage} from '@libs/actions/Subscription';
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {SettingsSplitNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import ONYXKEYS from '@src/ONYXKEYS';
import SCREENS from '@src/SCREENS';
@@ -51,8 +50,7 @@ function SubscriptionSettingsPage({route}: SubscriptionSettingsPageProps) {
}, [isAppLoading, shouldShowPage]);
if (!shouldShowPage && isAppLoading) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'SubscriptionSettingsPage', isAppLoading: !!isAppLoading, shouldShowPage};
- return ;
+ return ;
}
if (!shouldShowPage) {
diff --git a/src/pages/settings/Subscription/SubscriptionSize/index.tsx b/src/pages/settings/Subscription/SubscriptionSize/index.tsx
index 78ac51577eaa..e8a0a754de75 100644
--- a/src/pages/settings/Subscription/SubscriptionSize/index.tsx
+++ b/src/pages/settings/Subscription/SubscriptionSize/index.tsx
@@ -11,7 +11,6 @@ import useSubPage from '@hooks/useSubPage';
import {clearDraftValues} from '@libs/actions/FormActions';
import Navigation from '@libs/Navigation/Navigation';
import {isSubscriptionTypeOfInvoicing} from '@libs/SubscriptionUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import NotFoundPage from '@pages/ErrorPage/NotFoundPage';
@@ -69,8 +68,7 @@ function SubscriptionSizePage() {
}
if (!privateSubscription) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'SubscriptionSize', privateSubscriptionLoaded: false};
- return ;
+ return ;
}
return (
diff --git a/src/pages/settings/Troubleshoot/TroubleshootPage.tsx b/src/pages/settings/Troubleshoot/TroubleshootPage.tsx
index 5f98fb5994e8..dc34228b0c04 100644
--- a/src/pages/settings/Troubleshoot/TroubleshootPage.tsx
+++ b/src/pages/settings/Troubleshoot/TroubleshootPage.tsx
@@ -30,7 +30,6 @@ import {openTroubleshootSettingsPage} from '@libs/actions/User';
import ExportOnyxState from '@libs/ExportOnyxState';
import createDynamicRoute from '@libs/Navigation/helpers/dynamicRoutesUtils/createDynamicRoute';
import Navigation from '@libs/Navigation/Navigation';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {shouldHideOldAppRedirect} from '@libs/TryNewDotUtils';
import colors from '@styles/theme/colors';
@@ -252,10 +251,7 @@ function TroubleshootPage() {
{isLoading && (
-
+
)}
diff --git a/src/pages/settings/VerifyAccountPageBase.tsx b/src/pages/settings/VerifyAccountPageBase.tsx
index f0d8db73ca2b..88f80fc4fcd2 100644
--- a/src/pages/settings/VerifyAccountPageBase.tsx
+++ b/src/pages/settings/VerifyAccountPageBase.tsx
@@ -11,7 +11,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import {clearContactMethodErrors, clearUnvalidatedNewContactMethodAction, requestValidateCodeAction, validateSecondaryLogin} from '@libs/actions/User';
import {getEarliestErrorField, getLatestErrorField} from '@libs/ErrorUtils';
import Navigation from '@libs/Navigation/Navigation';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {expensifyLoginsSelector} from '@libs/UserUtils';
import CONST from '@src/CONST';
@@ -93,10 +92,7 @@ function VerifyAccountPageBase({navigateBackTo, navigateForwardTo, handleClose,
onBackButtonPress={handleCloseWithFallback}
/>
-
+
);
diff --git a/src/pages/settings/Wallet/ChooseTransferAccountPage.tsx b/src/pages/settings/Wallet/ChooseTransferAccountPage.tsx
index 6b11807246ec..ab093237c8b5 100644
--- a/src/pages/settings/Wallet/ChooseTransferAccountPage.tsx
+++ b/src/pages/settings/Wallet/ChooseTransferAccountPage.tsx
@@ -15,7 +15,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import {getLastFourDigits} from '@libs/BankAccountUtils';
import Navigation from '@libs/Navigation/Navigation';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {openPersonalBankAccountSetupView} from '@userActions/BankAccounts';
import {saveWalletTransferAccountTypeAndID} from '@userActions/PaymentMethods';
@@ -102,8 +101,7 @@ function ChooseTransferAccountPage() {
}, [bankAccountOptions, selectedAccountID]);
if (isLoadingOnyxValue(walletTransferResult)) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'ChooseTransferAccountPage', walletTransferLoaded: false};
- return ;
+ return ;
}
return (
diff --git a/src/pages/settings/Wallet/ExpensifyCardPage/index.tsx b/src/pages/settings/Wallet/ExpensifyCardPage/index.tsx
index d8b620e216fd..9a872da762d5 100644
--- a/src/pages/settings/Wallet/ExpensifyCardPage/index.tsx
+++ b/src/pages/settings/Wallet/ExpensifyCardPage/index.tsx
@@ -305,10 +305,7 @@ function ExpensifyCardPage({route}: ExpensifyCardPageProps) {
onBackButtonPress={() => Navigation.closeRHPFlow()}
/>
-
+
);
diff --git a/src/pages/settings/Wallet/InternationalDepositAccount/InternationalDepositAccountContent.tsx b/src/pages/settings/Wallet/InternationalDepositAccount/InternationalDepositAccountContent.tsx
index 24ce1972a192..d7fa40ea1bb9 100644
--- a/src/pages/settings/Wallet/InternationalDepositAccount/InternationalDepositAccountContent.tsx
+++ b/src/pages/settings/Wallet/InternationalDepositAccount/InternationalDepositAccountContent.tsx
@@ -14,7 +14,6 @@ import {isFullScreenName} from '@libs/Navigation/helpers/isNavigatorName';
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackRouteProp} from '@libs/Navigation/PlatformStackNavigation/types';
import type {SettingsNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
import NAVIGATORS from '@src/NAVIGATORS';
@@ -173,9 +172,7 @@ function InternationalDepositAccountContent({
shouldShowOfflineIndicatorInWideScreen={pageIndex === CONST.CORPAY_FIELDS.INDEXES.MAPPING.CONFIRMATION}
>
{isRedirecting || isAccountLoading ? (
-
+
) : (
<>
;
+ return ;
}
return (
diff --git a/src/pages/settings/Wallet/PersonalCards/AddNewCardPage.tsx b/src/pages/settings/Wallet/PersonalCards/AddNewCardPage.tsx
index 67adc5c6d92d..83c8135c303c 100644
--- a/src/pages/settings/Wallet/PersonalCards/AddNewCardPage.tsx
+++ b/src/pages/settings/Wallet/PersonalCards/AddNewCardPage.tsx
@@ -8,7 +8,6 @@ import useOnyx from '@hooks/useOnyx';
import useThemeStyles from '@hooks/useThemeStyles';
import {navigateToConciergeChat} from '@libs/actions/Report';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {clearAddNewPersonalCardFlow} from '@userActions/PersonalCards';
@@ -47,16 +46,7 @@ function AddPersonalNewCardPage() {
}, []);
if (isAddCardFeedLoading) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'AddNewPersonalCardPage',
- isAddCardFeedLoading,
- };
- return (
-
- );
+ return ;
}
let CurrentStep: React.JSX.Element;
diff --git a/src/pages/settings/Wallet/PersonalCards/FixPersonalCardConnectionPage/index.native.tsx b/src/pages/settings/Wallet/PersonalCards/FixPersonalCardConnectionPage/index.native.tsx
index ef8843531858..563235c1d27a 100644
--- a/src/pages/settings/Wallet/PersonalCards/FixPersonalCardConnectionPage/index.native.tsx
+++ b/src/pages/settings/Wallet/PersonalCards/FixPersonalCardConnectionPage/index.native.tsx
@@ -16,7 +16,6 @@ import Log from '@libs/Log';
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {SettingsNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {handleRestrictedEvent} from '@userActions/App';
import {setPlaidEvent} from '@userActions/BankAccounts';
@@ -66,19 +65,9 @@ function FixPersonalCardConnectionPage({route}: FixPersonalCardConnectionPagePro
const plaidErrors = plaidData?.errors;
const plaidDataErrorMessage = !isEmptyObject(plaidErrors) ? (Object.values(plaidErrors).at(0) ?? '') : '';
- const activityReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'FixPersonalCardConnectionPage',
- isConnectionCompleted,
- };
- const renderLoadingReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'FixPersonalCardConnectionPage',
- };
const renderLoading = () => (
-
+
);
@@ -147,7 +136,6 @@ function FixPersonalCardConnectionPage({route}: FixPersonalCardConnectionPagePro
);
};
@@ -185,7 +173,6 @@ function FixPersonalCardConnectionPage({route}: FixPersonalCardConnectionPagePro
)}
diff --git a/src/pages/settings/Wallet/PersonalCards/FixPersonalCardConnectionPage/index.tsx b/src/pages/settings/Wallet/PersonalCards/FixPersonalCardConnectionPage/index.tsx
index 9caab693925a..d68a62287782 100644
--- a/src/pages/settings/Wallet/PersonalCards/FixPersonalCardConnectionPage/index.tsx
+++ b/src/pages/settings/Wallet/PersonalCards/FixPersonalCardConnectionPage/index.tsx
@@ -15,7 +15,6 @@ import Log from '@libs/Log';
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {SettingsNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import openBankConnection from '@pages/settings/Wallet/PersonalCards/steps/BankConnection/openBankConnection';
@@ -172,15 +171,10 @@ function FixPersonalCardConnectionPage({route}: FixPersonalCardConnectionPagePro
if (plaidDataErrorMessage) {
return {plaidDataErrorMessage};
}
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'FixPersonalCardConnectionPage.renderPlaid',
- isPlaidLoading: plaidData?.isLoading,
- };
return (
);
};
diff --git a/src/pages/settings/Wallet/PersonalCards/steps/BankConnection/index.native.tsx b/src/pages/settings/Wallet/PersonalCards/steps/BankConnection/index.native.tsx
index 05859cb60440..90a203e4eb85 100644
--- a/src/pages/settings/Wallet/PersonalCards/steps/BankConnection/index.native.tsx
+++ b/src/pages/settings/Wallet/PersonalCards/steps/BankConnection/index.native.tsx
@@ -10,7 +10,6 @@ import useOnyx from '@hooks/useOnyx';
import useThemeStyles from '@hooks/useThemeStyles';
import getUAForWebView from '@libs/getUAForWebView';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import PersonalCardsErrorConfirmation from '@pages/settings/Wallet/PersonalCards/PersonalCardsErrorConfirmation';
import useGetNewPersonalCard from '@pages/settings/Wallet/PersonalCards/useGetNewPersonalCard';
@@ -45,17 +44,8 @@ function BankConnection() {
const onImportPlaidAccounts = useImportPersonalPlaidAccounts();
const newCard = useGetNewPersonalCard();
const isNewCardError = !isEmptyObject(addNewCard?.errors);
- const fullscreenReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'PersonalCardBankConnection',
- };
- const activityReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'PersonalCardBankConnection',
- isConnectionCompleted,
- isPlaid,
- isNewCardError,
- };
- const renderLoading = () => ;
+ const renderLoading = () => ;
const handleBackButtonPress = () => {
setAddNewPersonalCardStepAndData({step: CONST.PERSONAL_CARDS.STEP.SELECT_BANK});
@@ -119,7 +109,6 @@ function BankConnection() {
)}
{isNewCardError && }
diff --git a/src/pages/settings/Wallet/PersonalCards/steps/BankConnection/index.tsx b/src/pages/settings/Wallet/PersonalCards/steps/BankConnection/index.tsx
index 860e46345a39..737919bc4b23 100644
--- a/src/pages/settings/Wallet/PersonalCards/steps/BankConnection/index.tsx
+++ b/src/pages/settings/Wallet/PersonalCards/steps/BankConnection/index.tsx
@@ -13,8 +13,6 @@ import useNetwork from '@hooks/useNetwork';
import useOnyx from '@hooks/useOnyx';
import useThemeStyles from '@hooks/useThemeStyles';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import PersonalCardsErrorConfirmation from '@pages/settings/Wallet/PersonalCards/PersonalCardsErrorConfirmation';
import useGetNewPersonalCard from '@pages/settings/Wallet/PersonalCards/useGetNewPersonalCard';
@@ -64,15 +62,10 @@ function BankConnectionContent({hasImportError, isPlaid, onOpenBankConnectionFlo
/>
);
}
- const activityReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'PersonalCardBankConnection',
- isPlaid,
- };
return (
);
}
diff --git a/src/pages/settings/Wallet/PersonalCards/steps/PlaidConnectionStep.tsx b/src/pages/settings/Wallet/PersonalCards/steps/PlaidConnectionStep.tsx
index 6f889ff80127..fdefea8b7b02 100644
--- a/src/pages/settings/Wallet/PersonalCards/steps/PlaidConnectionStep.tsx
+++ b/src/pages/settings/Wallet/PersonalCards/steps/PlaidConnectionStep.tsx
@@ -14,7 +14,6 @@ import {setAddNewPersonalCardStepAndData} from '@libs/actions/PersonalCards';
import getPlaidOAuthReceivedRedirectURI from '@libs/getPlaidOAuthReceivedRedirectURI';
import KeyboardShortcut from '@libs/KeyboardShortcut';
import Log from '@libs/Log';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import Navigation from '@navigation/Navigation';
@@ -63,16 +62,9 @@ function PlaidLinkContent({plaidLinkToken, plaidDataErrorMessage, plaidData, onS
return {plaidDataErrorMessage};
}
if (plaidData?.isLoading) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'PersonalCardPlaidConnectionStep.renderPlaidLink',
- isPlaidDataLoading: plaidData?.isLoading,
- };
return (
-
+
);
}
diff --git a/src/pages/settings/Wallet/WalletPage/index.tsx b/src/pages/settings/Wallet/WalletPage/index.tsx
index eed6436d4b04..122caf8a0f72 100644
--- a/src/pages/settings/Wallet/WalletPage/index.tsx
+++ b/src/pages/settings/Wallet/WalletPage/index.tsx
@@ -41,7 +41,6 @@ import {formatPaymentMethods, getPaymentMethodDescription} from '@libs/PaymentUt
import {getStreetLines} from '@libs/PersonalDetailsUtils';
import {getActiveAdminWorkspaces, getDescriptionForPolicyDomainCard, hasActiveAdminWorkspaces, hasEligibleBankAccountShareRecipient, isPaidGroupPolicy} from '@libs/PolicyUtils';
import {buildCannedSearchQuery} from '@libs/SearchQueryUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import PaymentMethodList from '@pages/settings/Wallet/PaymentMethodList';
import {getFirstPageName} from '@pages/settings/Wallet/UpdatePersonalBankAccountPage';
@@ -141,7 +140,6 @@ function WalletPage() {
const hasFailedOnfido = userWallet?.hasFailedOnfido ?? false;
const hasEligibleShareRecipient = hasEligibleBankAccountShareRecipient(allPolicies, currentUserLogin, paymentMethod?.selectedPaymentMethod?.bankAccountID?.toString());
const paidGroupPolicy = Object.values(allPolicies ?? {}).find(isPaidGroupPolicy);
- const walletLoadingReasonAttributes: SkeletonSpanReasonAttributes = {context: 'WalletPage', shouldShowLoadingSpinner};
const updateShouldShowLoadingSpinner = useCallback(() => {
// In order to prevent a loop, only update state of the spinner if there is a change
@@ -667,7 +665,6 @@ function WalletPage() {
}, [bottomMountItem, confirmDeleteCard, icons.MoneySearch, icons.Table, icons.Trashcan, paymentMethod.methodID, selectedCard?.bank, shouldUseNarrowLayout, translate]);
if (isAppLoadPending) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'WalletPage', isLoadingApp: isAppLoadPending};
return (
{headerWithBackButton}
-
+
);
@@ -789,7 +783,6 @@ function WalletPage() {
)}
{!shouldShowLoadingSpinner && hasActivatedWallet && (
diff --git a/src/pages/tasks/DynamicNewTaskDescriptionPage.tsx b/src/pages/tasks/DynamicNewTaskDescriptionPage.tsx
index 2cd3852c80c4..6cd22912e74a 100644
--- a/src/pages/tasks/DynamicNewTaskDescriptionPage.tsx
+++ b/src/pages/tasks/DynamicNewTaskDescriptionPage.tsx
@@ -16,7 +16,6 @@ import {addErrorMessage} from '@libs/ErrorUtils';
import Navigation from '@libs/Navigation/Navigation';
import Parser from '@libs/Parser';
import {getCommentLength} from '@libs/ReportUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import updateMultilineInputRange from '@libs/updateMultilineInputRange';
import variables from '@styles/variables';
@@ -56,10 +55,7 @@ function DynamicNewTaskDescriptionPage() {
};
if (isLoadingOnyxValue(taskMetadata)) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'DynamicNewTaskDescriptionPage',
- };
- return ;
+ return ;
}
return (
diff --git a/src/pages/tasks/DynamicNewTaskTitlePage.tsx b/src/pages/tasks/DynamicNewTaskTitlePage.tsx
index b62c1bbdd025..ac344e871332 100644
--- a/src/pages/tasks/DynamicNewTaskTitlePage.tsx
+++ b/src/pages/tasks/DynamicNewTaskTitlePage.tsx
@@ -16,7 +16,6 @@ import {addErrorMessage} from '@libs/ErrorUtils';
import Navigation from '@libs/Navigation/Navigation';
import Parser from '@libs/Parser';
import {getCommentLength} from '@libs/ReportUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import variables from '@styles/variables';
@@ -62,10 +61,7 @@ function DynamicNewTaskTitlePage() {
};
if (isLoadingOnyxValue(taskMetadata)) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'DynamicNewTaskTitlePage',
- };
- return ;
+ return ;
}
return (
diff --git a/src/pages/workspace/AccessOrNotFoundWrapper.tsx b/src/pages/workspace/AccessOrNotFoundWrapper.tsx
index 5be3543687e5..6bf1dd54c980 100644
--- a/src/pages/workspace/AccessOrNotFoundWrapper.tsx
+++ b/src/pages/workspace/AccessOrNotFoundWrapper.tsx
@@ -26,7 +26,6 @@ import {
} from '@libs/PolicyUtils';
import type {PolicyFeature, PolicyFeatureAccess} from '@libs/PolicyUtils';
import {canCreateRequest} from '@libs/ReportUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import NotFoundPage from '@pages/ErrorPage/NotFoundPage';
@@ -249,12 +248,7 @@ function AccessOrNotFoundWrapper({
}, [isLoadingReportData, isPolicyNotAccessible]);
if (shouldShowFullScreenLoadingIndicator) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'AccessOrNotFoundWrapper',
- isLoadingReportData,
- isPolicyEmpty: !Object.entries(policy ?? {}).length || !policy?.id,
- };
- return ;
+ return ;
}
if (shouldShowNotFoundPage) {
return (
diff --git a/src/pages/workspace/ConnectExistingBusinessBankAccountPage.tsx b/src/pages/workspace/ConnectExistingBusinessBankAccountPage.tsx
index 87c5e7d47e96..799b3b6e4c1a 100644
--- a/src/pages/workspace/ConnectExistingBusinessBankAccountPage.tsx
+++ b/src/pages/workspace/ConnectExistingBusinessBankAccountPage.tsx
@@ -126,10 +126,7 @@ function ConnectExistingBusinessBankAccountPage({route}: ConnectExistingBusiness
/>
{isSelectingBankAccount ? (
-
+
) : (
diff --git a/src/pages/workspace/DynamicWorkspaceInvitePage.tsx b/src/pages/workspace/DynamicWorkspaceInvitePage.tsx
index 95d751c231fa..cd2c24c42205 100644
--- a/src/pages/workspace/DynamicWorkspaceInvitePage.tsx
+++ b/src/pages/workspace/DynamicWorkspaceInvitePage.tsx
@@ -28,7 +28,6 @@ import {getHeaderMessage, getUserToInviteOption} from '@libs/PersonalDetailOptio
import type {OptionData} from '@libs/PersonalDetailOptionsListUtils';
import {addSMSDomainIfPhoneNumber, parsePhoneNumber} from '@libs/PhoneNumber';
import {getIneligibleInvitees, getMemberAccountIDsForWorkspace, getSoftExclusionsForGuideAndAccountManager, goBackFromInvalidPolicy} from '@libs/PolicyUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import type {SettingsNavigatorParamList} from '@navigation/types';
@@ -294,12 +293,7 @@ function DynamicWorkspaceInvitePage(props: WorkspaceInvitePageProps) {
const [policy, policyMetadata] = useOnyx(`${ONYXKEYS.COLLECTION.POLICY}${props.route.params.policyID}`);
const [invitedEmailsToAccountIDsDraft, invitedEmailsToAccountIDsDraftMetadata] = useOnyx(`${ONYXKEYS.COLLECTION.WORKSPACE_INVITE_MEMBERS_DRAFT}${props.route.params.policyID}`);
if (isLoadingOnyxValue(policyMetadata, invitedEmailsToAccountIDsDraftMetadata)) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'DynamicWorkspaceInvitePage',
- isLoadingPolicy: !!isLoadingOnyxValue(policyMetadata),
- isLoadingInvitedEmailsToAccountIDsDraft: !!isLoadingOnyxValue(invitedEmailsToAccountIDsDraftMetadata),
- };
- return ;
+ return ;
}
return (
{policy?.isLoading ? (
-
+
) : (
<>
diff --git a/src/pages/workspace/WorkspaceConfirmationOwnerSelectorPage.tsx b/src/pages/workspace/WorkspaceConfirmationOwnerSelectorPage.tsx
index f68db95327f3..c73de566adf9 100644
--- a/src/pages/workspace/WorkspaceConfirmationOwnerSelectorPage.tsx
+++ b/src/pages/workspace/WorkspaceConfirmationOwnerSelectorPage.tsx
@@ -166,7 +166,7 @@ function WorkspaceConfirmationOwnerSelectorPage() {
// Wait for the draft to load so the initial owner selection is seeded correctly on mount
if (isLoadingOnyxValue(draftValuesMetadata)) {
- return ;
+ return ;
}
return ;
diff --git a/src/pages/workspace/WorkspaceJoinUserPage.tsx b/src/pages/workspace/WorkspaceJoinUserPage.tsx
index fb2a7c78874e..d29888ebbe88 100644
--- a/src/pages/workspace/WorkspaceJoinUserPage.tsx
+++ b/src/pages/workspace/WorkspaceJoinUserPage.tsx
@@ -61,10 +61,7 @@ function WorkspaceJoinUserPage({route}: WorkspaceJoinUserPageProps) {
return (
-
+
);
}
diff --git a/src/pages/workspace/WorkspaceMembersPage.tsx b/src/pages/workspace/WorkspaceMembersPage.tsx
index cafa5b984e40..35f59ae44182 100644
--- a/src/pages/workspace/WorkspaceMembersPage.tsx
+++ b/src/pages/workspace/WorkspaceMembersPage.tsx
@@ -484,7 +484,6 @@ function WorkspaceMembersPage({personalDetails, route, policy}: WorkspaceMembers
)}
diff --git a/src/pages/workspace/WorkspacePageWithSections.tsx b/src/pages/workspace/WorkspacePageWithSections.tsx
index f54584395d54..81c626a07a73 100644
--- a/src/pages/workspace/WorkspacePageWithSections.tsx
+++ b/src/pages/workspace/WorkspacePageWithSections.tsx
@@ -19,7 +19,6 @@ import goBackFromWorkspaceSettingPages from '@libs/Navigation/helpers/goBackFrom
import Navigation from '@libs/Navigation/Navigation';
import {canEditWorkspaceSettings, canMemberRead, isPendingDeletePolicy, shouldShowPolicy as shouldShowPolicyUtil} from '@libs/PolicyUtils';
import type {PolicyFeature} from '@libs/PolicyUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
import ONYXKEYS from '@src/ONYXKEYS';
@@ -261,16 +260,7 @@ function WorkspacePageWithSections({
{!isOffline && (isLoading || shouldShowInitialLoading) && shouldShowLoading && isFocused ? (
-
+
) : (
<>
diff --git a/src/pages/workspace/WorkspacesListPage.tsx b/src/pages/workspace/WorkspacesListPage.tsx
index 615cc27dcaf9..e8e52d312962 100755
--- a/src/pages/workspace/WorkspacesListPage.tsx
+++ b/src/pages/workspace/WorkspacesListPage.tsx
@@ -27,7 +27,6 @@ import TransitionTracker from '@libs/Navigation/TransitionTracker';
import type {WorkspaceNavigatorParamList} from '@libs/Navigation/types';
import {temporaryGetDisplayNameOrDefault} from '@libs/PersonalDetailsUtils';
import {isPaidGroupPolicyByType} from '@libs/PolicyUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import CONST from '@src/CONST';
import ONYXKEYS from '@src/ONYXKEYS';
@@ -236,15 +235,7 @@ function WorkspacesListPage() {
>
{shouldShowLoadingIndicator ? (
-
+
) : (
(
-
+
);
diff --git a/src/pages/workspace/accounting/PolicyAccountingPage.tsx b/src/pages/workspace/accounting/PolicyAccountingPage.tsx
index 920f1fc1e406..abbadec85b97 100644
--- a/src/pages/workspace/accounting/PolicyAccountingPage.tsx
+++ b/src/pages/workspace/accounting/PolicyAccountingPage.tsx
@@ -55,7 +55,6 @@ import {
settingsPendingAction,
shouldShowSyncError,
} from '@libs/PolicyUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import Navigation from '@navigation/Navigation';
@@ -642,18 +641,9 @@ function PolicyAccountingPage({policy}: PolicyAccountingPageProps) {
]
: [];
- const syncActivityReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'PolicyAccountingPage.connectionsMenuItems',
- isSyncInProgress,
- };
let rightComponent;
if (isSyncInProgress) {
- rightComponent = (
-
- );
+ rightComponent = ;
} else if (canWriteAccounting) {
rightComponent = (
diff --git a/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomListContent.tsx b/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomListContent.tsx
index 1f1c6dd20e1c..05d946e87fc0 100644
--- a/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomListContent.tsx
+++ b/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomListContent.tsx
@@ -9,7 +9,6 @@ import useSubPage from '@hooks/useSubPage';
import useThemeStyles from '@hooks/useThemeStyles';
import Navigation from '@libs/Navigation/Navigation';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import type {CustomFieldSubPageWithPolicy} from '@pages/workspace/accounting/netsuite/types';
@@ -117,7 +116,7 @@ function NetSuiteImportAddCustomListContent({policy, draftValues, policyIDParam}
if (isRedirecting) {
return (
-
+
);
}
diff --git a/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomListPage.tsx b/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomListPage.tsx
index a29557514af3..55643e194a5d 100644
--- a/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomListPage.tsx
+++ b/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomListPage.tsx
@@ -17,7 +17,7 @@ function NetSuiteImportAddCustomListPage({policy, route}: WithPolicyConnectionsP
const isLoading = isLoadingOnyxValue(draftValuesMetadata);
if (isLoading) {
- return ;
+ return ;
}
return (
diff --git a/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomSegmentContent.tsx b/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomSegmentContent.tsx
index e0888608e9c5..65dc3ada8a8e 100644
--- a/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomSegmentContent.tsx
+++ b/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomSegmentContent.tsx
@@ -122,7 +122,7 @@ function NetSuiteImportAddCustomSegmentContent({policy, policyIDParam, draftValu
if (isRedirecting) {
return (
-
+
);
}
diff --git a/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomSegmentPage.tsx b/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomSegmentPage.tsx
index 23db7720467e..963bee3251d3 100644
--- a/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomSegmentPage.tsx
+++ b/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomSegmentPage.tsx
@@ -17,7 +17,7 @@ function NetSuiteImportAddCustomSegmentPage({policy, route}: WithPolicyConnectio
const isLoading = isLoadingOnyxValue(draftValuesMetadata);
if (isLoading) {
- return ;
+ return ;
}
return (
diff --git a/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/subPages/ConfirmCustomListStep.tsx b/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/subPages/ConfirmCustomListStep.tsx
index c5569c1362c7..ec9fbcd4297c 100644
--- a/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/subPages/ConfirmCustomListStep.tsx
+++ b/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/subPages/ConfirmCustomListStep.tsx
@@ -29,10 +29,7 @@ function ConfirmCustomListStep({onMove, netSuiteCustomFieldFormValues: values, o
if (!values.mapping) {
return (
-
+
);
}
diff --git a/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/subPages/ConfirmCustomSegmentList.tsx b/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/subPages/ConfirmCustomSegmentList.tsx
index b4873281de97..e99dd24e2f6c 100644
--- a/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/subPages/ConfirmCustomSegmentList.tsx
+++ b/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/subPages/ConfirmCustomSegmentList.tsx
@@ -29,10 +29,7 @@ function ConfirmCustomSegmentStep({onMove, customSegmentType, netSuiteCustomFiel
if (!values.mapping) {
return (
-
+
);
}
diff --git a/src/pages/workspace/accounting/qbd/QuickBooksDesktopSetupPage.tsx b/src/pages/workspace/accounting/qbd/QuickBooksDesktopSetupPage.tsx
index 9250da6bd9af..195073063c1f 100644
--- a/src/pages/workspace/accounting/qbd/QuickBooksDesktopSetupPage.tsx
+++ b/src/pages/workspace/accounting/qbd/QuickBooksDesktopSetupPage.tsx
@@ -19,7 +19,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {SettingsNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {setConnectionError} from '@userActions/connections';
import {getQuickbooksDesktopCodatSetupLink} from '@userActions/connections/QuickbooksDesktop';
@@ -81,11 +80,6 @@ function RequireQuickBooksDesktopModal({route}: RequireQuickBooksDesktopModalPro
const shouldShowError = hasError;
- const activityReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'RequireQuickBooksDesktopModal',
- hasResultOfFetchingSetupLink,
- };
-
const navigateToFirstSync = () => {
Navigation.navigate(ROUTES.POLICY_ACCOUNTING_QUICKBOOKS_DESKTOP_TRIGGER_FIRST_SYNC.getRoute(policyID));
};
@@ -115,7 +109,7 @@ function RequireQuickBooksDesktopModal({route}: RequireQuickBooksDesktopModalPro
{translate('workspace.qbd.setupPage.body')}
{!hasResultOfFetchingSetupLink ? (
-
+
) : (
);
diff --git a/src/pages/workspace/accounting/xero/XeroSetupPage/index.native.tsx b/src/pages/workspace/accounting/xero/XeroSetupPage/index.native.tsx
index 95f552237afa..117763409e78 100644
--- a/src/pages/workspace/accounting/xero/XeroSetupPage/index.native.tsx
+++ b/src/pages/workspace/accounting/xero/XeroSetupPage/index.native.tsx
@@ -17,7 +17,6 @@ function XeroSetupPage({route}: XeroSetupPageProps) {
);
diff --git a/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx b/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx
index d4376c116a03..b8c257b6f5bb 100644
--- a/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx
+++ b/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx
@@ -42,7 +42,6 @@ import type {WorkspaceSplitNavigatorParamList} from '@libs/Navigation/types';
import {isDisablingOrDeletingLastEnabledCategory} from '@libs/OptionsListUtils';
import {getPersonalDetailByEmail} from '@libs/PersonalDetailsUtils';
import {arePolicyRulesEnabled, getConnectedIntegration, hasAccountingConnections, hasTags, isControlPolicy, shouldShowSyncError} from '@libs/PolicyUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import AccessOrNotFoundWrapper from '@pages/workspace/AccessOrNotFoundWrapper';
import {getCurrentAccountingIntegrationName} from '@pages/workspace/accounting/utils';
@@ -581,7 +580,6 @@ function WorkspaceCategoriesPage({route}: WorkspaceCategoriesPageProps) {
};
const isLoading = !isOffline && policyCategories === undefined;
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'WorkspaceCategoriesPage', isOffline, isPolicyCategoriesUndefined: policyCategories === undefined};
const selectionModeHeader = isMobileSelectionModeEnabled && shouldUseNarrowLayout;
@@ -686,7 +684,6 @@ function WorkspaceCategoriesPage({route}: WorkspaceCategoriesPageProps) {
)}
diff --git a/src/pages/workspace/companyCards/BankConnection/index.native.tsx b/src/pages/workspace/companyCards/BankConnection/index.native.tsx
index 22fc2ccfbb21..944f6d9370e4 100644
--- a/src/pages/workspace/companyCards/BankConnection/index.native.tsx
+++ b/src/pages/workspace/companyCards/BankConnection/index.native.tsx
@@ -18,7 +18,6 @@ import {setAssignCardStepAndData} from '@libs/actions/CompanyCards';
import {checkIfNewFeedConnected, getBankName, getCompanyCardFeed, isSelectedFeedExpired} from '@libs/CardUtils';
import getUAForWebView from '@libs/getUAForWebView';
import Navigation from '@libs/Navigation/Navigation';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import WorkspaceCompanyCardsErrorConfirmation from '@pages/workspace/companyCards/WorkspaceCompanyCardsErrorConfirmation';
@@ -76,22 +75,9 @@ function BankConnection({policyID, feed, title}: BankConnectionProps) {
const {isBlockedToAddNewFeeds, isAllFeedsResultLoading} = useIsBlockedToAddFeed(policyID);
const {checkForDuplicateFeed} = useDuplicateFeedDetection({policyID, isPlaid});
- const activityReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'BankConnection',
- isAllFeedsResultLoading,
- isBlockedToAddNewFeedsWithoutFeed: isBlockedToAddNewFeeds && !feed,
- isConnectionCompleted,
- isPlaid,
- };
- const renderLoadingReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'BankConnection',
- };
const renderLoading = () => (
-
+
);
@@ -214,7 +200,6 @@ function BankConnection({policyID, feed, title}: BankConnectionProps) {
)}
{isNewFeedHasError && (
diff --git a/src/pages/workspace/companyCards/BankConnection/index.tsx b/src/pages/workspace/companyCards/BankConnection/index.tsx
index bc1da4e8f14e..4e43fa3dccb8 100644
--- a/src/pages/workspace/companyCards/BankConnection/index.tsx
+++ b/src/pages/workspace/companyCards/BankConnection/index.tsx
@@ -21,7 +21,6 @@ import useUpdateFeedBrokenConnection from '@hooks/useUpdateFeedBrokenConnection'
import {setAssignCardStepAndData} from '@libs/actions/CompanyCards';
import {checkIfNewFeedConnected, getBankName, getCompanyCardFeed, isSelectedFeedExpired} from '@libs/CardUtils';
import Navigation from '@libs/Navigation/Navigation';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import WorkspaceCompanyCardsErrorConfirmation from '@pages/workspace/companyCards/WorkspaceCompanyCardsErrorConfirmation';
@@ -212,17 +211,10 @@ function BankConnection({policyID, feed, title}: BankConnectionProps) {
/>
);
}
- const activityReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'BankConnection',
- isPlaid,
- isAllFeedsResultLoading,
- isBlockedToAddNewFeedsWithoutFeed: isBlockedToAddNewFeeds && !feed,
- };
return (
);
};
diff --git a/src/pages/workspace/companyCards/WorkspaceCompanyCardStatementCloseDatePage.tsx b/src/pages/workspace/companyCards/WorkspaceCompanyCardStatementCloseDatePage.tsx
index 46306b2962c3..b9b006401b9a 100644
--- a/src/pages/workspace/companyCards/WorkspaceCompanyCardStatementCloseDatePage.tsx
+++ b/src/pages/workspace/companyCards/WorkspaceCompanyCardStatementCloseDatePage.tsx
@@ -10,7 +10,6 @@ import {getCompanyCardFeed, getCompanyFeeds, getDomainOrWorkspaceAccountID, getS
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {SettingsNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import AccessOrNotFoundWrapper from '@pages/workspace/AccessOrNotFoundWrapper';
@@ -80,12 +79,7 @@ function WorkspaceCompanyCardStatementCloseDatePage({
}, [feed, domainOrWorkspaceAccountID]);
if (isLoadingOnyxValue(cardFeedsResult) || isLoadingOnyxValue(lastSelectedFeedResult)) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'WorkspaceCompanyCardStatementCloseDatePage',
- isCardFeedsLoading: isLoadingOnyxValue(cardFeedsResult),
- isLastSelectedFeedLoading: isLoadingOnyxValue(lastSelectedFeedResult),
- };
- return ;
+ return ;
}
return (
diff --git a/src/pages/workspace/companyCards/WorkspaceCompanyCardsSettingsFeedNamePage.tsx b/src/pages/workspace/companyCards/WorkspaceCompanyCardsSettingsFeedNamePage.tsx
index eb27d1c0eeae..64ca23b16f8c 100644
--- a/src/pages/workspace/companyCards/WorkspaceCompanyCardsSettingsFeedNamePage.tsx
+++ b/src/pages/workspace/companyCards/WorkspaceCompanyCardsSettingsFeedNamePage.tsx
@@ -18,7 +18,6 @@ import {getCompanyCardFeed, getCompanyFeeds, getCustomOrFormattedFeedName, getDo
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {SettingsNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {isRequiredFulfilled} from '@libs/ValidationUtils';
import AccessOrNotFoundWrapper from '@pages/workspace/AccessOrNotFoundWrapper';
@@ -80,12 +79,7 @@ function WorkspaceCompanyCardsSettingsFeedNamePage({
};
if (isLoadingOnyxValue(cardFeedsResult) || isLoadingOnyxValue(lastSelectedFeedResult)) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'WorkspaceCompanyCardsSettingsFeedNamePage',
- isCardFeedsLoading: isLoadingOnyxValue(cardFeedsResult),
- isLastSelectedFeedLoading: isLoadingOnyxValue(lastSelectedFeedResult),
- };
- return ;
+ return ;
}
return (
diff --git a/src/pages/workspace/companyCards/addNew/DynamicAddNewCardPage.tsx b/src/pages/workspace/companyCards/addNew/DynamicAddNewCardPage.tsx
index 8abcbb69bb37..4ce3a75880bd 100644
--- a/src/pages/workspace/companyCards/addNew/DynamicAddNewCardPage.tsx
+++ b/src/pages/workspace/companyCards/addNew/DynamicAddNewCardPage.tsx
@@ -10,7 +10,6 @@ import useOnyx from '@hooks/useOnyx';
import useThemeStyles from '@hooks/useThemeStyles';
import {navigateToConciergeChat} from '@libs/actions/Report';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import Navigation from '@navigation/Navigation';
@@ -83,13 +82,7 @@ function DynamicAddNewCardPage({policy}: WithPolicyAndFullscreenLoadingProps) {
}, [policyID]);
if (isAddCardFeedLoading || isAllFeedsResultLoading || isBlockedToAddNewFeeds) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'AddNewCardPage',
- isAddCardFeedLoading,
- isAllFeedsResultLoading,
- isBlockedToAddNewFeeds,
- };
- return ;
+ return ;
}
if (isActingAsDelegate) {
diff --git a/src/pages/workspace/companyCards/addNew/PlaidConnectionStep.tsx b/src/pages/workspace/companyCards/addNew/PlaidConnectionStep.tsx
index d80d849b443b..e3e2e1f58fbe 100644
--- a/src/pages/workspace/companyCards/addNew/PlaidConnectionStep.tsx
+++ b/src/pages/workspace/companyCards/addNew/PlaidConnectionStep.tsx
@@ -16,7 +16,6 @@ import getPlaidOAuthReceivedRedirectURI from '@libs/getPlaidOAuthReceivedRedirec
import KeyboardShortcut from '@libs/KeyboardShortcut';
import Log from '@libs/Log';
import {getDomainNameForPolicy} from '@libs/PolicyUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import Navigation from '@navigation/Navigation';
@@ -201,16 +200,9 @@ function PlaidConnectionStep({feed, policyID, onExit, title}: PlaidConnectionSte
}
if (plaidData?.isLoading) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'PlaidConnectionStep.renderPlaidLink',
- isPlaidDataLoading: plaidData?.isLoading,
- };
return (
-
+
);
}
diff --git a/src/pages/workspace/companyCards/assignCard/TransactionStartDateStep.tsx b/src/pages/workspace/companyCards/assignCard/TransactionStartDateStep.tsx
index c30bfbeb1e32..19dad2b0d1c8 100644
--- a/src/pages/workspace/companyCards/assignCard/TransactionStartDateStep.tsx
+++ b/src/pages/workspace/companyCards/assignCard/TransactionStartDateStep.tsx
@@ -12,7 +12,6 @@ import useThemeStyles from '@hooks/useThemeStyles';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {SettingsNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {isRequiredFulfilled} from '@libs/ValidationUtils';
import Navigation from '@navigation/Navigation';
@@ -98,10 +97,6 @@ function TransactionStartDateStep({route}: TransactionStartDateStepProps) {
];
const isLoading = isLoadingOnyxValue(assignCardMeta);
- const activityReasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'TransactionStartDateStep',
- isLoading,
- };
return (
) : (
<>
diff --git a/src/pages/workspace/distanceRates/PolicyDistanceRatesPage.tsx b/src/pages/workspace/distanceRates/PolicyDistanceRatesPage.tsx
index a09e16bfcdfa..7f58133e9f66 100644
--- a/src/pages/workspace/distanceRates/PolicyDistanceRatesPage.tsx
+++ b/src/pages/workspace/distanceRates/PolicyDistanceRatesPage.tsx
@@ -39,7 +39,6 @@ import {convertAmountToDisplayString} from '@libs/CurrencyUtils';
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import {getDistanceRateCustomUnit} from '@libs/PolicyUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import type {WorkspaceSplitNavigatorParamList} from '@navigation/types';
@@ -383,7 +382,6 @@ function PolicyDistanceRatesPage({
};
const isLoading = !isOffline && customUnit === undefined;
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'PolicyDistanceRatesPage', isOffline, isCustomUnitUndefined: customUnit === undefined};
const secondaryActions = useMemo(
() => [
@@ -478,7 +476,6 @@ function PolicyDistanceRatesPage({
)}
{!isLoading && (
diff --git a/src/pages/workspace/downgrade/DynamicPayAndDowngradePage.tsx b/src/pages/workspace/downgrade/DynamicPayAndDowngradePage.tsx
index 590f14a62951..0efbb605cbc2 100644
--- a/src/pages/workspace/downgrade/DynamicPayAndDowngradePage.tsx
+++ b/src/pages/workspace/downgrade/DynamicPayAndDowngradePage.tsx
@@ -77,7 +77,7 @@ function DynamicPayAndDowngradePage() {
}, []);
if (isLoadingOnyxValue(metadata)) {
- return ;
+ return ;
}
return (
diff --git a/src/pages/workspace/expensifyCard/WorkspaceExpensifyCardPage.tsx b/src/pages/workspace/expensifyCard/WorkspaceExpensifyCardPage.tsx
index 4987c03425f4..a858f180a2b9 100644
--- a/src/pages/workspace/expensifyCard/WorkspaceExpensifyCardPage.tsx
+++ b/src/pages/workspace/expensifyCard/WorkspaceExpensifyCardPage.tsx
@@ -10,7 +10,6 @@ import {updateSelectedExpensifyCardFeed} from '@libs/actions/Card';
import {filterInactiveCardsForWorkspace, getCardSettings} from '@libs/CardUtils';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {WorkspaceSplitNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import AccessOrNotFoundWrapper from '@pages/workspace/AccessOrNotFoundWrapper';
@@ -53,17 +52,7 @@ function WorkspaceExpensifyCardPage({route}: WorkspaceExpensifyCardPageProps) {
const renderContent = () => {
if (isLoading) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'WorkspaceExpensifyCardPage',
- isOffline,
- hasOnceLoaded: !!cardSettings?.hasOnceLoaded,
- };
- return (
-
- );
+ return ;
}
if (paymentBankAccountID) {
return (
diff --git a/src/pages/workspace/expensifyCard/issueNew/spendRules/SpendRuleSelectionPage.tsx b/src/pages/workspace/expensifyCard/issueNew/spendRules/SpendRuleSelectionPage.tsx
index 01c158e9646a..9812c56dd10a 100644
--- a/src/pages/workspace/expensifyCard/issueNew/spendRules/SpendRuleSelectionPage.tsx
+++ b/src/pages/workspace/expensifyCard/issueNew/spendRules/SpendRuleSelectionPage.tsx
@@ -145,10 +145,6 @@ function SpendRuleSelectionPage({route}: SpendRuleSelectionPageProps) {
color={theme.spinner}
size={CONST.ACTIVITY_INDICATOR_SIZE.LARGE}
style={[styles.pl3]}
- reasonAttributes={{
- context: 'SpendRuleSelectionPage',
- isLoadingFromOnyx: true,
- }}
/>
)}
diff --git a/src/pages/workspace/hr/HRProviderCard.tsx b/src/pages/workspace/hr/HRProviderCard.tsx
index ce3923a2b600..9c380548deda 100644
--- a/src/pages/workspace/hr/HRProviderCard.tsx
+++ b/src/pages/workspace/hr/HRProviderCard.tsx
@@ -164,12 +164,7 @@ function HRProviderCard({card, policy, handleConnect, canWriteMoreFeatures, show
);
} else if (card.isSyncInProgress) {
- rightInset = (
-
- );
+ rightInset = ;
} else {
rightInset = (
{isLoading && (
-
+
)}
{shouldShowPaymentCardForm && }
diff --git a/src/pages/workspace/perDiem/WorkspacePerDiemPage.tsx b/src/pages/workspace/perDiem/WorkspacePerDiemPage.tsx
index acca5471cce0..f637812627b4 100644
--- a/src/pages/workspace/perDiem/WorkspacePerDiemPage.tsx
+++ b/src/pages/workspace/perDiem/WorkspacePerDiemPage.tsx
@@ -33,7 +33,6 @@ import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavig
import type {WorkspaceSplitNavigatorParamList} from '@libs/Navigation/types';
import {hasEnabledOptions} from '@libs/OptionsListUtils';
import {canMemberWrite, getPerDiemCustomUnit} from '@libs/PolicyUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import AccessOrNotFoundWrapper from '@pages/workspace/AccessOrNotFoundWrapper';
@@ -325,7 +324,6 @@ function WorkspacePerDiemPage({route}: WorkspacePerDiemPageProps) {
};
const isLoading = !isOffline && customUnit === undefined;
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'WorkspacePerDiemPage', isOffline, isCustomUnitUndefined: customUnit === undefined};
useEffect(() => {
if (isMobileSelectionModeEnabled) {
@@ -413,7 +411,6 @@ function WorkspacePerDiemPage({route}: WorkspacePerDiemPageProps) {
)}
{!isLoading && (
diff --git a/src/pages/workspace/receiptPartners/WorkspaceReceiptPartnersPage.tsx b/src/pages/workspace/receiptPartners/WorkspaceReceiptPartnersPage.tsx
index 2982aece7335..2b423191e565 100644
--- a/src/pages/workspace/receiptPartners/WorkspaceReceiptPartnersPage.tsx
+++ b/src/pages/workspace/receiptPartners/WorkspaceReceiptPartnersPage.tsx
@@ -300,7 +300,6 @@ function WorkspaceReceiptPartnersPage({route}: WorkspaceReceiptPartnersPageProps
) : (
{isLoadingFormDraft || shouldRedirectToCreatePage ? (
-
+
) : (
<>
diff --git a/src/pages/workspace/reports/WorkspaceReportsPage.tsx b/src/pages/workspace/reports/WorkspaceReportsPage.tsx
index 4bad11096f86..98f05767d907 100644
--- a/src/pages/workspace/reports/WorkspaceReportsPage.tsx
+++ b/src/pages/workspace/reports/WorkspaceReportsPage.tsx
@@ -31,7 +31,6 @@ import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavig
import type {WorkspaceSplitNavigatorParamList} from '@libs/Navigation/types';
import {getConnectedIntegration, hasAccountingConnections as hasAccountingConnectionsPolicyUtils, isControlPolicy, shouldShowSyncError} from '@libs/PolicyUtils';
import {getTitleFieldWithFallback} from '@libs/ReportUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {getReportFieldTypeTranslationKey} from '@libs/WorkspaceReportFieldUtils';
import AccessOrNotFoundWrapper from '@pages/workspace/AccessOrNotFoundWrapper';
@@ -154,7 +153,6 @@ function WorkspaceReportFieldsPage({
);
const isLoading = !isOffline && policy === undefined;
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'WorkspaceReportFieldsPage', isOffline, isPolicyUndefined: policy === undefined};
const renderItem = ({item}: ListRenderItemInfo) => (
@@ -235,7 +233,6 @@ function WorkspaceReportFieldsPage({
)}
{!isLoading && (
diff --git a/src/pages/workspace/rules/AgentRules/AddAgentRuleSuggestionsTab.tsx b/src/pages/workspace/rules/AgentRules/AddAgentRuleSuggestionsTab.tsx
index 24f5a133573b..a3a47b62336d 100644
--- a/src/pages/workspace/rules/AgentRules/AddAgentRuleSuggestionsTab.tsx
+++ b/src/pages/workspace/rules/AgentRules/AddAgentRuleSuggestionsTab.tsx
@@ -65,10 +65,7 @@ function AddAgentRuleSuggestionsTab({onSelectSuggestion}: AddAgentRuleSuggestion
if (shouldShowLoadingIndicator) {
return (
-
+
);
}
diff --git a/src/pages/workspace/rules/FlagForReviewRules/FlagForReviewRuleCategoryPageBase.tsx b/src/pages/workspace/rules/FlagForReviewRules/FlagForReviewRuleCategoryPageBase.tsx
index 2153281d0d68..1b3e86ed69eb 100644
--- a/src/pages/workspace/rules/FlagForReviewRules/FlagForReviewRuleCategoryPageBase.tsx
+++ b/src/pages/workspace/rules/FlagForReviewRules/FlagForReviewRuleCategoryPageBase.tsx
@@ -105,10 +105,7 @@ function FlagForReviewRuleCategoryPageBase({policyID, categoryName}: FlagForRevi
} else if (arePolicyCategoriesLoading) {
content = (
-
+
);
} else {
diff --git a/src/pages/workspace/rules/MerchantRules/PreviewMatchesPage.tsx b/src/pages/workspace/rules/MerchantRules/PreviewMatchesPage.tsx
index 3563f4c0c622..d8d4441ad83a 100644
--- a/src/pages/workspace/rules/MerchantRules/PreviewMatchesPage.tsx
+++ b/src/pages/workspace/rules/MerchantRules/PreviewMatchesPage.tsx
@@ -15,7 +15,6 @@ import {getTransactionsMatchingCodingRule} from '@libs/actions/Policy/Rules';
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import type {SettingsNavigatorParamList} from '@libs/Navigation/types';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import UnreportedExpenseListItem from '@pages/UnreportedExpenseListItem';
@@ -71,7 +70,6 @@ function PreviewMatchesPage({route}: PreviewMatchesPageProps) {
const matchingTransactionsArray = Object.values(matchingTransactions ?? {}).filter((transaction): transaction is Transaction => !!transaction);
const hasMatchingTransactions = !!(merchant && matchingTransactionsArray.length);
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'PreviewMatchesPage', isLoadingFromOnyx: !!isLoading};
const isLoadedAndEmpty = !isLoading && !hasMatchingTransactions;
const isLoadedWithTransactions = !isLoading && hasMatchingTransactions;
@@ -114,7 +112,6 @@ function PreviewMatchesPage({route}: PreviewMatchesPageProps) {
color={theme.spinner}
size={CONST.ACTIVITY_INDICATOR_SIZE.LARGE}
style={[styles.pl3]}
- reasonAttributes={reasonAttributes}
/>
)}
diff --git a/src/pages/workspace/rules/RequireFieldsRules/RequireFieldsRuleCategoryPageBase.tsx b/src/pages/workspace/rules/RequireFieldsRules/RequireFieldsRuleCategoryPageBase.tsx
index 5a1cabe5cfea..2f565c000660 100644
--- a/src/pages/workspace/rules/RequireFieldsRules/RequireFieldsRuleCategoryPageBase.tsx
+++ b/src/pages/workspace/rules/RequireFieldsRules/RequireFieldsRuleCategoryPageBase.tsx
@@ -149,10 +149,7 @@ function RequireFieldsRuleCategoryPageBase({policyID, categoryName}: RequireFiel
} else if (arePolicyCategoriesLoading) {
content = (
-
+
);
} else {
diff --git a/src/pages/workspace/rules/SpendRules/SpendRuleCardPage.tsx b/src/pages/workspace/rules/SpendRules/SpendRuleCardPage.tsx
index 0f07c8e476da..50ebcac03cfc 100644
--- a/src/pages/workspace/rules/SpendRules/SpendRuleCardPage.tsx
+++ b/src/pages/workspace/rules/SpendRules/SpendRuleCardPage.tsx
@@ -215,14 +215,7 @@ function SpendRuleCardPage({route}: SpendRuleCardPageProps) {
shouldBeBlocked={!canWriteCardSpendRules}
>
{isCardSettingsLoading ? (
-
+
) : (
;
+ return ;
}
return (
diff --git a/src/pages/workspace/tags/DynamicWorkspaceViewTagsPage.tsx b/src/pages/workspace/tags/DynamicWorkspaceViewTagsPage.tsx
index 8d5ab0be120c..4dff1c6897df 100644
--- a/src/pages/workspace/tags/DynamicWorkspaceViewTagsPage.tsx
+++ b/src/pages/workspace/tags/DynamicWorkspaceViewTagsPage.tsx
@@ -44,7 +44,6 @@ import {
hasDependentTags as hasDependentTagsPolicyUtils,
isMultiLevelTags as isMultiLevelTagsPolicyUtils,
} from '@libs/PolicyUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import type {SettingsNavigatorParamList} from '@navigation/types';
@@ -210,11 +209,6 @@ function DynamicWorkspaceViewTagsPage({route}: DynamicWorkspaceViewTagsProps) {
}
const isLoading = !isOffline && policyTags === undefined;
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'DynamicWorkspaceViewTagsPage',
- isOffline,
- isPolicyTagsUndefined: policyTags === undefined,
- };
const getHeaderButtons = () => {
if (!canWriteTags || (!isSmallScreenWidth && selectedTags.length === 0) || (isSmallScreenWidth && !isMobileSelectionModeEnabled)) {
@@ -433,7 +427,6 @@ function DynamicWorkspaceViewTagsPage({route}: DynamicWorkspaceViewTagsProps) {
)}
{tagRows.length > 0 && !isLoading && (
diff --git a/src/pages/workspace/tags/WorkspaceTagsPage.tsx b/src/pages/workspace/tags/WorkspaceTagsPage.tsx
index a1dbabd5ae66..4e69d2483840 100644
--- a/src/pages/workspace/tags/WorkspaceTagsPage.tsx
+++ b/src/pages/workspace/tags/WorkspaceTagsPage.tsx
@@ -62,7 +62,6 @@ import {
isMultiLevelTags as isMultiLevelTagsPolicyUtils,
shouldShowSyncError,
} from '@libs/PolicyUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import AccessOrNotFoundWrapper from '@pages/workspace/AccessOrNotFoundWrapper';
import {getCurrentAccountingIntegrationName} from '@pages/workspace/accounting/utils';
@@ -461,7 +460,6 @@ function WorkspaceTagsPage({route}: WorkspaceTagsPageProps) {
};
const isLoading = !isOffline && policyTags === undefined;
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'WorkspaceTagsPage', isOffline, isPolicyTagsUndefined: policyTags === undefined};
const hasVisibleTags = tagRows.some((tag) => tag.pendingAction !== CONST.RED_BRICK_ROAD_PENDING_ACTION.DELETE || isOffline);
const navigateToImportSpreadsheet = useCallback(() => {
@@ -871,7 +869,6 @@ function WorkspaceTagsPage({route}: WorkspaceTagsPageProps) {
)}
{!isLoading && (
diff --git a/src/pages/workspace/taxes/WorkspaceTaxesPage.tsx b/src/pages/workspace/taxes/WorkspaceTaxesPage.tsx
index d26b7b2c3611..550b13b1a7ae 100644
--- a/src/pages/workspace/taxes/WorkspaceTaxesPage.tsx
+++ b/src/pages/workspace/taxes/WorkspaceTaxesPage.tsx
@@ -31,7 +31,6 @@ import {getLatestErrorFieldForAnyField} from '@libs/ErrorUtils';
import Navigation from '@libs/Navigation/Navigation';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import {canEditTaxRate as canEditTaxRatePolicyUtils, getConnectedIntegration, hasAccountingConnections as hasAccountingConnectionsPolicyUtils, shouldShowSyncError} from '@libs/PolicyUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import type {WorkspaceSplitNavigatorParamList} from '@navigation/types';
@@ -202,7 +201,6 @@ function WorkspaceTaxesPage({
const hasVisibleTaxes = taxRows.length > 0;
const isLoading = !isOffline && !policy?.taxRates;
- const reasonAttributes: SkeletonSpanReasonAttributes = {context: 'WorkspaceTaxesPage', isOffline, isTaxesListUndefined: !policy?.taxRates};
const deleteTaxes = useCallback(() => {
if (!policy?.id) {
@@ -403,7 +401,6 @@ function WorkspaceTaxesPage({
)}
{!isLoading && (
diff --git a/src/pages/workspace/timeTracking/WorkspaceTimeTrackingDefaultRatePage.tsx b/src/pages/workspace/timeTracking/WorkspaceTimeTrackingDefaultRatePage.tsx
index cc24c79f5514..1ce53ef7ed69 100644
--- a/src/pages/workspace/timeTracking/WorkspaceTimeTrackingDefaultRatePage.tsx
+++ b/src/pages/workspace/timeTracking/WorkspaceTimeTrackingDefaultRatePage.tsx
@@ -15,7 +15,6 @@ import {setPolicyTimeTrackingDefaultRate} from '@libs/actions/Policy/Policy';
import {convertToFrontendAmountAsString} from '@libs/CurrencyUtils';
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
import {getDefaultTimeTrackingRate} from '@libs/PolicyUtils';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
import {getFieldRequiredErrors} from '@libs/ValidationUtils';
import Navigation from '@navigation/Navigation';
@@ -48,12 +47,7 @@ function WorkspaceTimeTrackingDefaultRatePage({
const currency = policy?.outputCurrency ?? CONST.CURRENCY.USD;
if (!policy || isLoadingOnyxValue(policyFetchStatus)) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'WorkspaceTimeTrackingDefaultRatePage',
- isPolicyMissing: !policy,
- isPolicyLoading: isLoadingOnyxValue(policyFetchStatus),
- };
- return ;
+ return ;
}
return (
diff --git a/src/pages/workspace/withPolicyAndFullscreenLoading.tsx b/src/pages/workspace/withPolicyAndFullscreenLoading.tsx
index 141d1eb0071a..bcbf320bded1 100644
--- a/src/pages/workspace/withPolicyAndFullscreenLoading.tsx
+++ b/src/pages/workspace/withPolicyAndFullscreenLoading.tsx
@@ -2,8 +2,6 @@ import FullscreenLoadingIndicator from '@components/FullscreenLoadingIndicator';
import useOnyx from '@hooks/useOnyx';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import ONYXKEYS from '@src/ONYXKEYS';
import type {PersonalDetailsList} from '@src/types/onyx';
@@ -46,12 +44,7 @@ function WithPolicyAndFullscreenLoadingImpl;
+ return ;
}
return (
diff --git a/src/pages/workspace/withPolicyConnections.tsx b/src/pages/workspace/withPolicyConnections.tsx
index 0f3347d6b662..76ad8d5dfede 100644
--- a/src/pages/workspace/withPolicyConnections.tsx
+++ b/src/pages/workspace/withPolicyConnections.tsx
@@ -2,8 +2,6 @@ import FullScreenLoadingIndicator from '@components/FullscreenLoadingIndicator';
import usePolicyConnectionsPrefetch from '@hooks/usePolicyConnectionsPrefetch';
-import type {SkeletonSpanReasonAttributes} from '@libs/telemetry/useSkeletonSpan';
-
import type {ComponentType} from 'react';
import isBoolean from 'lodash/isBoolean';
@@ -40,12 +38,7 @@ function WithPolicyConnectionsImpl({W
const isFetchingData = isConnectionDataFetchNeeded && !!props.policy?.id && !isBoolean(hasConnectionsDataBeenFetched);
if ((isFetchingData || isOnyxDataLoading) && shouldBlockView) {
- const reasonAttributes: SkeletonSpanReasonAttributes = {
- context: 'withPolicyConnections',
- isFetchingData,
- isOnyxDataLoading,
- };
- return ;
+ return ;
}
return (
diff --git a/src/pages/workspace/workflows/approvals/WorkspaceWorkflowsApprovalsCreatePage.tsx b/src/pages/workspace/workflows/approvals/WorkspaceWorkflowsApprovalsCreatePage.tsx
index 6d493aeb0063..7b58a9f2bb47 100644
--- a/src/pages/workspace/workflows/approvals/WorkspaceWorkflowsApprovalsCreatePage.tsx
+++ b/src/pages/workspace/workflows/approvals/WorkspaceWorkflowsApprovalsCreatePage.tsx
@@ -116,10 +116,7 @@ function WorkspaceWorkflowsApprovalsCreatePage({policy, isLoadingReportData = tr
)}
{!approvalWorkflow && (
-
+
)}
diff --git a/src/pages/workspace/workflows/approvals/WorkspaceWorkflowsApprovalsEditPage.tsx b/src/pages/workspace/workflows/approvals/WorkspaceWorkflowsApprovalsEditPage.tsx
index 0817374ff1aa..497b7e90e162 100644
--- a/src/pages/workspace/workflows/approvals/WorkspaceWorkflowsApprovalsEditPage.tsx
+++ b/src/pages/workspace/workflows/approvals/WorkspaceWorkflowsApprovalsEditPage.tsx
@@ -228,10 +228,7 @@ function WorkspaceWorkflowsApprovalsEditPage({policy, isLoadingReportData = true
)}
{!initialApprovalWorkflow && (
-
+
)}
diff --git a/tests/unit/components/Charts/SkiaWebChart.test.tsx b/tests/unit/components/Charts/SkiaWebChart.test.tsx
index 3c7be86c101b..4b93cbb946c0 100644
--- a/tests/unit/components/Charts/SkiaWebChart.test.tsx
+++ b/tests/unit/components/Charts/SkiaWebChart.test.tsx
@@ -39,7 +39,6 @@ describe('SkiaWebChart', () => {
,
);
@@ -55,7 +54,6 @@ describe('SkiaWebChart', () => {
,
);
diff --git a/tests/unit/components/SelectionList/SelectionListEmptyState.test.tsx b/tests/unit/components/SelectionList/SelectionListEmptyState.test.tsx
index 35cfb532ae50..50f8267f9a8a 100644
--- a/tests/unit/components/SelectionList/SelectionListEmptyState.test.tsx
+++ b/tests/unit/components/SelectionList/SelectionListEmptyState.test.tsx
@@ -22,7 +22,6 @@ describe('SelectionListEmptyState', () => {
shouldShowLoadingPlaceholder
shouldShowListEmptyContent
listEmptyContent={}
- context="Test"
/>,
);
expect(screen.getByTestId('options-list-skeleton')).toBeTruthy();
@@ -36,7 +35,6 @@ describe('SelectionListEmptyState', () => {
customLoadingPlaceholder={}
shouldShowListEmptyContent
listEmptyContent={}
- context="Test"
/>,
);
expect(screen.getByTestId('custom-loading')).toBeTruthy();
@@ -49,7 +47,6 @@ describe('SelectionListEmptyState', () => {
shouldShowLoadingPlaceholder={false}
shouldShowListEmptyContent
listEmptyContent={}
- context="Test"
/>,
);
expect(screen.getByTestId('empty')).toBeTruthy();
@@ -62,7 +59,6 @@ describe('SelectionListEmptyState', () => {
shouldShowLoadingPlaceholder={false}
shouldShowListEmptyContent={false}
listEmptyContent={}
- context="Test"
/>,
);
expect(screen.queryByTestId('empty')).toBeNull();