yyh
91856b09ca
refactor: migrate appDetail from Zustand to TanStack Query
...
- Remove appDetail and setAppDetail from Zustand store
- Use useAppDetail hook for server state management
- Child components now call useAppDetail(appId) directly via useParams()
- Replace setAppDetail calls with useInvalidateAppDetail for cache invalidation
- Keep only client UI state in Zustand (sidebar, modals)
- Split sidebar initialization useEffect for clearer separation of concerns
- Update test mocks to use TanStack Query pattern
- Fix missing dependencies in use-checklist.ts useMemo/useCallback hooks
2026-01-18 23:07:33 +08:00
..
2025-12-23 18:02:10 +08:00
2026-01-18 23:07:33 +08:00
2026-01-13 12:26:50 +08:00
2025-12-23 16:58:55 +08:00
2025-12-23 18:02:10 +08:00
2025-12-31 11:13:22 +08:00
2025-12-29 14:52:32 +08:00
2025-12-29 14:52:32 +08:00
2025-12-23 16:58:55 +08:00
2025-12-27 10:07:10 +08:00
2025-12-25 11:25:21 +08:00
2025-12-29 14:52:32 +08:00
2025-12-23 18:02:10 +08:00
2026-01-13 23:38:28 +09:00
2025-12-23 16:58:55 +08:00
2025-12-29 14:52:32 +08:00
2025-12-25 10:40:04 +08:00
2025-12-29 14:52:32 +08:00
2025-12-23 16:58:55 +08:00
2025-12-29 14:52:32 +08:00
2025-12-29 14:52:32 +08:00
2025-12-23 16:58:55 +08:00
2025-12-31 08:32:55 +08:00
2025-12-23 16:58:55 +08:00
2025-12-23 18:02:10 +08:00
2025-12-29 14:52:32 +08:00
2025-12-23 18:02:10 +08:00
2025-12-23 16:58:55 +08:00
2025-12-23 18:02:10 +08:00
2025-12-31 11:13:22 +08:00
2025-12-29 14:52:32 +08:00
2025-12-31 08:32:55 +08:00
2026-01-07 21:15:43 +08:00
2025-12-23 16:58:55 +08:00
2025-12-23 18:02:10 +08:00
2025-12-31 11:13:22 +08:00
2025-12-23 16:58:55 +08:00
2026-01-06 20:18:27 +08:00
2025-12-31 11:13:22 +08:00
2025-12-31 08:32:55 +08:00
2025-12-23 16:58:55 +08:00
2026-01-08 14:11:44 +08:00
2025-12-23 18:02:10 +08:00
2025-12-31 11:13:22 +08:00
2025-12-31 16:53:33 +09:00
2025-12-31 16:53:33 +09:00
2025-12-23 16:58:55 +08:00
2025-12-31 16:53:33 +09:00
2025-12-23 18:02:10 +08:00
2025-12-23 18:02:10 +08:00
2026-01-17 17:36:07 +08:00
2025-12-23 16:58:55 +08:00
2025-12-25 09:44:57 +08:00
2026-01-01 00:36:18 +08:00
2025-12-29 14:52:32 +08:00
2026-01-18 23:07:33 +08:00
2025-12-31 11:13:22 +08:00
2025-12-29 14:52:32 +08:00
2025-12-29 14:52:32 +08:00
2025-12-23 18:02:10 +08:00
2025-12-29 14:52:32 +08:00
2025-12-23 16:58:55 +08:00
2025-12-29 14:52:32 +08:00
2025-12-31 11:13:22 +08:00
2025-12-29 14:52:32 +08:00
2025-12-23 16:58:55 +08:00
2025-12-23 18:02:10 +08:00
2025-12-23 18:02:10 +08:00
2025-12-23 16:58:55 +08:00
2025-12-31 11:13:22 +08:00
2025-12-23 16:58:55 +08:00
2025-12-29 14:52:32 +08:00
2025-12-23 18:02:10 +08:00
2025-12-31 11:13:22 +08:00
2026-01-16 16:22:14 +08:00
2025-12-23 18:02:10 +08:00
2025-12-29 14:52:32 +08:00
2025-12-23 16:58:55 +08:00
2025-12-24 15:25:28 +08:00
2025-12-23 16:58:55 +08:00
2025-12-29 14:52:32 +08:00
2025-12-23 18:02:10 +08:00
2025-12-23 18:02:10 +08:00
2025-12-23 16:58:55 +08:00
2025-12-23 18:02:10 +08:00
2025-12-23 18:02:10 +08:00
2025-12-23 16:58:55 +08:00
2025-12-23 16:58:55 +08:00
2025-12-23 18:02:10 +08:00
2025-12-23 18:02:10 +08:00
2025-12-29 14:52:32 +08:00
2025-12-31 11:13:22 +08:00
2025-12-29 14:52:32 +08:00
2025-12-23 18:02:10 +08:00
2025-12-23 18:02:10 +08:00
2025-12-31 11:13:22 +08:00
2025-12-23 18:02:10 +08:00
2025-12-23 18:02:10 +08:00
2025-12-29 14:52:32 +08:00
2025-12-31 11:13:22 +08:00
2025-12-31 08:32:55 +08:00
2025-12-29 14:52:32 +08:00
2025-12-23 16:58:55 +08:00
2025-12-29 14:52:32 +08:00
2025-12-23 16:58:55 +08:00