[FE] Change memberRolePermissions.requirement from a string to an array

Currently, the memberRolePermissions query has a requirement field that shows which permission the current permission depends on:

ksnip_20231121-021549

It's highly likely that in the future, a permission will depend on multiple permissions instead of just one. For example, to use the Explain Code AI feature, you might need both the Read code permission and a hypothetical Use AI features permission.

We should modify the permission field (and possibly rename it to permissions) to return a nullable array instead of a string.

Proposed response data:

{
  "data": {
    "memberRolePermissions": {
      "nodes": [
        {
          "value": "admin_merge_request",
          "requirement": null
        },
        {
          "value": "admin_vulnerability",
          "requirement": ["read_vulnerability"]
        },
        {
          "value": "explain_code_ai",
          "requirement": ["read_code", "use_ai_features"]
        }
      ]
    }
  }
}
Edited by Daniel Tian