diff --git a/apps/admin/src/app/[locale]/(dashboard)/events/[slug]/venue/components/asset-manager.tsx b/apps/admin/src/app/[locale]/(dashboard)/events/[slug]/venue/components/asset-manager.tsx index 8947ca98d..3bc0104c7 100644 --- a/apps/admin/src/app/[locale]/(dashboard)/events/[slug]/venue/components/asset-manager.tsx +++ b/apps/admin/src/app/[locale]/(dashboard)/events/[slug]/venue/components/asset-manager.tsx @@ -37,7 +37,8 @@ export const AssetManager = ({ division, assetType }: Asset const { data: assets = [] as T[], error, - isLoading + isLoading, + mutate: updateAssets } = useSWR( division ? `/admin/events/${division.eventId}/divisions/${division.id}/${assetType}` : null, { @@ -123,7 +124,11 @@ export const AssetManager = ({ division, assetType }: Asset return rest; }); showSuccess(); - mutate(`/admin/events/${division.eventId}/divisions/${division.id}/${assetType}`); + // Update the asset name in-place to preserve list order + updateAssets( + currentAssets => currentAssets?.map(a => (a.id === asset.id ? { ...a, name } : a)) as T[], + { revalidate: false } + ); } else { setErrors({ [asset.id]: t('messages.save-error') }); }