Skip to content

Commit b4f9b36

Browse files
committed
Team: Permissions from Team Response
1 parent d668dca commit b4f9b36

File tree

2 files changed

+20
-0
lines changed

2 files changed

+20
-0
lines changed

README.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,15 @@ $permissions = TeamPermissions::fromFlags(
190190
);
191191
```
192192

193+
Or from the permissions of an existing team:
194+
195+
```php
196+
use PrivatePackagist\ApiClient\TeamPermissions;
197+
198+
$team = $client->teams()->all()[0];
199+
$permissions = TeamPermissions::fromTeamResponse($team);
200+
```
201+
193202
#### List an organization's teams
194203
```php
195204
$teams = $client->teams()->all();

src/TeamPermissions.php

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,4 +38,15 @@ public static function fromFlags(int $flags): self
3838
$permissions->canManageVendorCustomers = ($flags & self::PERMISSION_CAN_MANAGE_VENDOR_CUSTOMERS) > 0;
3939
return $permissions;
4040
}
41+
42+
public static function fromTeamResponse(array $team): self
43+
{
44+
$permissions = new self;
45+
$permissions->canEditTeamPackages = isset($team['permissions']['canEditTeamPackages']) && $team['permissions']['canEditTeamPackages'];
46+
$permissions->canAddPackages = isset($team['permissions']['canAddPackages']) && $team['permissions']['canAddPackages'];
47+
$permissions->canCreateSubrepositories = isset($team['permissions']['canCreateSubrepositories']) && $team['permissions']['canCreateSubrepositories'];
48+
$permissions->canViewVendorCustomers = isset($team['permissions']['canViewVendorCustomers']) && $team['permissions']['canViewVendorCustomers'];
49+
$permissions->canManageVendorCustomers = isset($team['permissions']['canManageVendorCustomers']) && $team['permissions']['canManageVendorCustomers'];
50+
return $permissions;
51+
}
4152
}

0 commit comments

Comments
 (0)