feat(13-01): extend GraphDirectoryUser with UserType and add includeGuests parameter to directory service
- Add string? UserType as last positional parameter to GraphDirectoryUser record - Add bool includeGuests = false parameter to IGraphUserDirectoryService.GetUsersAsync - Branch Graph filter: members-only (default) vs all users when includeGuests=true - Add userType to Graph Select array for MapUser population - Update MapUser to include UserType from Graph User object - Add MapUser_PopulatesUserType and MapUser_NullUserType tests Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -13,6 +13,10 @@ public interface IGraphUserDirectoryService
|
||||
/// Iterates through all pages using the Graph SDK PageIterator until exhausted or cancelled.
|
||||
/// </summary>
|
||||
/// <param name="clientId">The client/tenant identifier used to obtain a Graph token.</param>
|
||||
/// <param name="includeGuests">
|
||||
/// When <c>false</c> (default), only member users are returned (userType eq 'Member').
|
||||
/// When <c>true</c>, both members and guests are returned (no userType filter).
|
||||
/// </param>
|
||||
/// <param name="progress">
|
||||
/// Optional progress reporter — receives the running count of users fetched so far.
|
||||
/// Phase 13's ViewModel uses this to show "Loading... X users" feedback.
|
||||
@@ -21,6 +25,7 @@ public interface IGraphUserDirectoryService
|
||||
/// <param name="ct">Cancellation token. Iteration stops when cancelled.</param>
|
||||
Task<IReadOnlyList<GraphDirectoryUser>> GetUsersAsync(
|
||||
string clientId,
|
||||
bool includeGuests = false,
|
||||
IProgress<int>? progress = null,
|
||||
CancellationToken ct = default);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user