[web] Introduce client-side error handling to prevent duplicate role names
Summary:
This diff adds client-side error handling for preventing a user from trying to create a role with a name that already exists in the community. This is already handled on the keyserver and on the database with a unique key, but ideally we prevent the client from reaching a bad state in the first place. I confirmed with ted that the designs for this are fine
Depends on D8596
Test Plan:
Tried to create a role with an identical name to an existing role and saw the message, then tried to create a role with a unique name to confirm that still works.
Reviewers: atul, ginsu
Reviewed By: atul
Subscribers: ted, ashoat, tomek
Differential Revision: https://phab.comm.dev/D8597