Skip to content

Commit eedaf6e

Browse files
authored
Merge pull request #61819 from bernhardoj/fix/61154-existing-approver-is-shown-in-additional-approver
Fix existing approver is shown in additional approver briefly
2 parents 5062aa3 + 54a0e8d commit eedaf6e

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

src/pages/workspace/workflows/approvals/WorkspaceWorkflowsApprovalsApproverPage.tsx

+9-2
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ import ROUTES from '@src/ROUTES';
3535
import type SCREENS from '@src/SCREENS';
3636
import type {Icon} from '@src/types/onyx/OnyxCommon';
3737
import {isEmptyObject} from '@src/types/utils/EmptyObject';
38+
import isLoadingOnyxValue from '@src/types/utils/isLoadingOnyxValue';
3839

3940
type WorkspaceWorkflowsApprovalsApproverPageProps = WithPolicyAndFullscreenLoadingProps &
4041
PlatformStackScreenProps<WorkspaceSplitNavigatorParamList, typeof SCREENS.WORKSPACE.WORKFLOWS_APPROVALS_APPROVER>;
@@ -54,7 +55,8 @@ function WorkspaceWorkflowsApprovalsApproverPage({policy, personalDetails, isLoa
5455
const styles = useThemeStyles();
5556
const {translate} = useLocalize();
5657
const [searchTerm, debouncedSearchTerm, setSearchTerm] = useDebouncedState('');
57-
const [approvalWorkflow] = useOnyx(ONYXKEYS.APPROVAL_WORKFLOW);
58+
const [approvalWorkflow, approvalWorkflowMetadata] = useOnyx(ONYXKEYS.APPROVAL_WORKFLOW, {canBeMissing: true});
59+
const isApprovalWorkflowLoading = isLoadingOnyxValue(approvalWorkflowMetadata);
5860
const [selectedApproverEmail, setSelectedApproverEmail] = useState<string | undefined>(undefined);
5961
const [allApprovers, setAllApprovers] = useState<SelectionListApprover[]>([]);
6062
const shouldShowTextInput = allApprovers?.length >= CONST.STANDARD_LIST_ITEM_LIMIT;
@@ -83,6 +85,10 @@ function WorkspaceWorkflowsApprovalsApproverPage({policy, personalDetails, isLoa
8385
const sections: ApproverSection[] = useMemo(() => {
8486
const approvers: SelectionListApprover[] = [];
8587

88+
if (isApprovalWorkflowLoading) {
89+
return [];
90+
}
91+
8692
if (employeeList) {
8793
const availableApprovers = Object.values(employeeList)
8894
.map((employee): SelectionListApprover | null => {
@@ -147,6 +153,7 @@ function WorkspaceWorkflowsApprovalsApproverPage({policy, personalDetails, isLoa
147153
},
148154
];
149155
}, [
156+
isApprovalWorkflowLoading,
150157
approversFromWorkflow,
151158
isDefault,
152159
approverIndex,
@@ -160,7 +167,7 @@ function WorkspaceWorkflowsApprovalsApproverPage({policy, personalDetails, isLoa
160167
translate,
161168
]);
162169

163-
const shouldShowListEmptyContent = !debouncedSearchTerm && approvalWorkflow && !sections.at(0)?.data.length;
170+
const shouldShowListEmptyContent = !debouncedSearchTerm && !!approvalWorkflow && !sections.at(0)?.data.length && !isApprovalWorkflowLoading;
164171

165172
const goBack = useCallback(() => {
166173
let backTo;

0 commit comments

Comments
 (0)