1
0
mirror of https://github.com/bitwarden/server synced 2025-12-10 13:23:27 +00:00
Files
server/src/Api/AdminConsole/Models/Response/GroupResponseModel.cs
2023-10-18 11:27:56 -04:00

42 lines
1.2 KiB
C#

using Bit.Api.Models.Response;
using Bit.Core.Entities;
using Bit.Core.Models.Api;
using Bit.Core.Models.Data;
namespace Bit.Api.AdminConsole.Models.Response;
public class GroupResponseModel : ResponseModel
{
public GroupResponseModel(Group group, string obj = "group")
: base(obj)
{
if (group == null)
{
throw new ArgumentNullException(nameof(group));
}
Id = group.Id;
OrganizationId = group.OrganizationId;
Name = group.Name;
AccessAll = group.AccessAll;
ExternalId = group.ExternalId;
}
public Guid Id { get; set; }
public Guid OrganizationId { get; set; }
public string Name { get; set; }
public bool AccessAll { get; set; }
public string ExternalId { get; set; }
}
public class GroupDetailsResponseModel : GroupResponseModel
{
public GroupDetailsResponseModel(Group group, IEnumerable<CollectionAccessSelection> collections)
: base(group, "groupDetails")
{
Collections = collections.Select(c => new SelectionReadOnlyResponseModel(c));
}
public IEnumerable<SelectionReadOnlyResponseModel> Collections { get; set; }
}