mirror of
https://github.com/langgenius/dify.git
synced 2026-02-26 20:47:19 +08:00
Eliminate useEffect-based synchronization of React Query server state into React Context, which caused extra renders, state drift, and incorrect loading/empty states on the /explore/apps page. - Remove installedApps, isFetchingInstalledApps, and controlUpdateInstalledApps from ExploreContext (dead code + anti-pattern) - Sidebar and InstalledApp now consume useGetInstalledApps() directly - Use isLoading (not isPending) for conditionally-enabled queries to avoid permanent loading state when query is disabled - Derive hasEditPermission during render instead of via useEffect - Replace FC type annotations with const arrow functions - Add return type to fetchInstalledAppList - Update all related unit and integration tests