feat(mobile): native home screen with collapsible sections and load-more 4 months ago
Authored
mweinbach 5/25/2026, 5:10:35 PM Extract thread home view model and hook, add persisted section collapse/order
and per-section load-more state, extend thread/list with offset and total for
pagination, and replace the iOS home list with SwiftUI inset grouped sections
with a grouped-list fallback for other platforms.
Co-authored-by: Cursor <cursoragent@cursor.com> Parent85e1288
23 files changed
apps/mobile/src/app/(app)/(tabs)/threads/index.tsx +2 −468 apps/mobile/src/components/thread-home/thread-home-screen.ios.tsx +325 −0 apps/mobile/src/components/thread-home/thread-home-screen.tsx +517 −0 apps/mobile/src/components/ui/sf-symbol.tsx +3 −0 apps/mobile/src/features/cowork/jsonRpcClient.ts +8 −1 apps/mobile/src/features/cowork/protocolTypes.ts +1 −0 apps/mobile/src/features/cowork/remoteThreadBootstrap.ts +117 −25 apps/mobile/src/features/cowork/threadHomeModel.ts +238 −0
apps/mobile/src/features/cowork/threadOfflineCache.ts +82 −15
apps/mobile/src/features/cowork/threadStore.ts +138 −0
apps/mobile/src/features/cowork/useThreadHome.ts +212 −0
apps/mobile/src/providers/MobileAppProvider.tsx +11 −4
docs/generated/websocket-jsonrpc.d.ts +2 −2
docs/generated/websocket-jsonrpc.schema.json +1 −1
docs/websocket-protocol.md +6 −1
src/server/jsonrpc/routes/thread.ts +10 −3
src/server/jsonrpc/schema.threadTurn.ts +2 −0
test/jsonrpc.router.test.ts +2 −0
test/mobile.jsonrpc-client.test.ts +4 −2
test/mobile.remote-thread-bootstrap.test.ts +8 −6
test/mobile.thread-home-model.test.ts +101 −0
test/mobileOfflineCache.test.ts +15 −0
test/server.jsonrpc.test.ts +1 −0