fix(messaging): remove @ts-nocheck and fully type useMessaging hook (… - #1116
Conversation
…inafcode#934) - Remove the @ts-nocheck suppression from useMessaging.tsx so TypeScript enforces type safety over the entire real-time messaging hook. - Drop the unused useWebSocket call: the store (messagingStore.ts) owns the socket lifecycle via wsManager; there is no need for a second WebSocket abstraction layer in the hook. - Replace NodeJS.Timeout with ReturnType<typeof setTimeout> so the file compiles correctly in both browser and Node runtime contexts. - Remove isReconnecting / connectionError from the hook's return value; reconnection state is tracked inside the store (isConnected flag). - Extend MessagingState interface with all actions that useMessaging was consuming but that were absent from the interface: · loadMoreMessages - paginate older messages · setSearchQuery - filter conversation list · setSelectedFiles - replace selected-file list · removeSelectedFile - remove a file by index · uploadAttachments - upload Files, return Attachment[] · createConversation - start a new conversation by participantId · getTotalUnreadCount - aggregate unread badge count - Provide stub implementations for all new store actions so they satisfy the interface; real server integration can replace the stubs without changing any consumer types. - Verified: npx tsc --noEmit exits 0 with no errors across the project. Closes rinafcode#934
|
@eogenyi23-creator Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
|
Thank you for contributing to the project. |
|
Hi @RUKAYAT-CODER, |
|
Hi,
To become a maintainer, you simply need to submit a project that has
activity during the project submission window. Once submitted, the Drips
team will review your project. If it meets the required criteria, your
project will be selected.
That's it. Once your project is approved, you become a maintainer.
…On Fri, Jul 31, 2026 at 10:23 PM eogenyi23-creator ***@***.***> wrote:
*eogenyi23-creator* left a comment (rinafcode/teachLink_web#1116)
<#1116 (comment)>
Hi @RUKAYAT-CODER <https://github.com/RUKAYAT-CODER>,
Thank you for merging the PR!I know the recent Wave sprint has wrapped up,
but I really enjoyed working on this project. I would love to step up and
help manage tasks for the next cycle.Could you guide me on how to go about
becoming a maintainer here so I can help support the repository moving
forward?
—
Reply to this email directly, view it on GitHub
<#1116?email_source=notifications&email_token=AROKCTBGDTW5ERIJGQOJMYT5HUE67A5CNFSNUABFM5UWIORPF5TWS5BNNB2WEL2JONZXKZKDN5WW2ZLOOQXTKMJUG42TQOJYGMYKM4TFMFZW63VHNVSW45DJN5XKKZLWMVXHJLDGN5XXIZLSL5RWY2LDNM#issuecomment-5147589830>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AROKCTE32SVOTAXC6TQX74D5HUE67AVCNFSNUABFKJSXA33TNF2G64TZHM4TMMRQGA4TCNBZHNEXG43VMU5TKMBRHE3TOOJSGQZKC5QC>
.
Triage notifications, keep track of coding agent tasks and review pull
requests on the go with GitHub Mobile for iOS
<https://github.com/notifications/mobile/ios/AROKCTGE5NZW7O5IPS7I47T5HUE67A5CNFSNUABFM5UWIORPF5TWS5BNNB2WEL2JONZXKZKDN5WW2ZLOOQXTKMJUG42TQOJYGMYKM4TFMFZW63VHNVSW45DJN5XKKZLWMVXHJKTGN5XXIZLSL5UW64Y>
and Android
<https://github.com/notifications/mobile/android/AROKCTCBFJHTTBENLOKASG35HUE67A5CNFSNUABFM5UWIORPF5TWS5BNNB2WEL2JONZXKZKDN5WW2ZLOOQXTKMJUG42TQOJYGMYKM4TFMFZW63VHNVSW45DJN5XKKZLWMVXHJLTGN5XXIZLSL5QW4ZDSN5UWI>.
Download it today!
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
|
Thank you for taking you time to respond to me. So It basically means i can only submit a project when there is an ongoing or active wave (e.g wave 8). |
…#934)
Remove the @ts-nocheck suppression from useMessaging.tsx so TypeScript enforces type safety over the entire real-time messaging hook.
Drop the unused useWebSocket call: the store (messagingStore.ts) owns the socket lifecycle via wsManager; there is no need for a second WebSocket abstraction layer in the hook.
Replace NodeJS.Timeout with ReturnType so the file compiles correctly in both browser and Node runtime contexts.
Remove isReconnecting / connectionError from the hook's return value; reconnection state is tracked inside the store (isConnected flag).
Extend MessagingState interface with all actions that useMessaging was consuming but that were absent from the interface:
· loadMoreMessages - paginate older messages
· setSearchQuery - filter conversation list
· setSelectedFiles - replace selected-file list
· removeSelectedFile - remove a file by index
· uploadAttachments - upload Files, return Attachment[]
· createConversation - start a new conversation by participantId
· getTotalUnreadCount - aggregate unread badge count
Provide stub implementations for all new store actions so they satisfy the interface; real server integration can replace the stubs without changing any consumer types.
Verified: npx tsc --noEmit exits 0 with no errors across the project.
Closes #934
Description
Brief description of changes
Related Issue
Type of Change
Checklist
Closes #934