Page MenuHomePhabricator

[lib] Remove usage of `memberHasAdminPowers` in `useThreadSearchIndex`
ClosedPublic

Authored by atul on Mar 7 2024, 9:32 AM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Jan 26, 5:00 AM
Unknown Object (File)
Wed, Jan 22, 11:08 AM
Unknown Object (File)
Jan 16 2025, 8:20 PM
Unknown Object (File)
Jan 12 2025, 11:13 PM
Unknown Object (File)
Jan 5 2025, 4:20 AM
Unknown Object (File)
Jan 3 2025, 1:51 PM
Unknown Object (File)
Dec 30 2024, 10:31 AM
Unknown Object (File)
Dec 27 2024, 12:50 PM
Subscribers

Details

Summary

As part of https://linear.app/comm/issue/ENG-6933/update-memberhasadminpower-logic-to-rely-on-specialrole-field, we're going to update memberHasAdminPowers so it determines whether a member is an admin not based on derived permissions, but whether they have an admin role in the community thread.

This will require us to change the signature of memberHasAdminPowers to include additional info (eg ThreadInfo). Before making that change, I wanted to go through all of the usages of memberHasAdminPowers to see how things would need to change at the callsite.

With useThreadSearchIndex, it was more efficient to calculate a map inline of communityThreadID -> memberID -> RoleInfo once and query that multidimensional dictionary rather than call a modified memberHasAdminPowers with communityThreadInfo and threadInfo.


Depends on D11263

Test Plan
  1. Able to log that the dictionary was constructed properly:
  1. Able to log that the computed isAdmin values were as expected:

Diff Detail

Repository
rCOMM Comm
Branch
master
Lint
No Lint Coverage
Unit
No Test Coverage