From 20dd6da67eb7ca2073339c8db099d2dc4cfed220 Mon Sep 17 00:00:00 2001 From: Aleksander Nicacio da Silva Date: Tue, 24 Jun 2025 11:09:53 -0300 Subject: [PATCH 1/3] feat: improved loading state in AutoCompleteDepartment --- .../client/components/AutoCompleteDepartment.tsx | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/apps/meteor/client/components/AutoCompleteDepartment.tsx b/apps/meteor/client/components/AutoCompleteDepartment.tsx index 967a4197f974d..305cc83a6c521 100644 --- a/apps/meteor/client/components/AutoCompleteDepartment.tsx +++ b/apps/meteor/client/components/AutoCompleteDepartment.tsx @@ -26,6 +26,7 @@ const AutoCompleteDepartment = ({ haveAll, haveNone, showArchived = false, + disabled, ...props }: AutoCompleteDepartmentProps): ReactElement | null => { const { t } = useTranslation(); @@ -33,7 +34,11 @@ const AutoCompleteDepartment = ({ const debouncedDepartmentsFilter = useDebouncedValue(departmentsFilter, 500); - const { data: departmentsItems, fetchNextPage } = useDepartmentsList({ + const { + data: departmentsItems, + isPending, + fetchNextPage, + } = useDepartmentsList({ filter: debouncedDepartmentsFilter, onlyMyDepartments, haveAll, @@ -51,9 +56,12 @@ const AutoCompleteDepartment = ({ value={value} onChange={onChange} filter={departmentsFilter} + disabled={isPending || disabled} + aria-busy={isPending} + aria-disabled={disabled} setFilter={setDepartmentsFilter as (value?: string | number) => void} options={departmentsItems} - placeholder={t('Select_an_option')} + placeholder={isPending ? t('Loading...') : t('Select_an_option')} data-qa='autocomplete-department' endReached={() => fetchNextPage()} renderItem={({ label, ...props }) =>