-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathUnmanagedAcsUser.php
More file actions
94 lines (91 loc) · 3.75 KB
/
Copy pathUnmanagedAcsUser.php
File metadata and controls
94 lines (91 loc) · 3.75 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
<?php
namespace Seam\Objects;
class UnmanagedAcsUser
{
public static function from_json(mixed $json): UnmanagedAcsUser|null
{
if (!$json) {
return null;
}
return new self(
acs_system_id: $json->acs_system_id,
acs_user_id: $json->acs_user_id,
connected_account_id: $json->connected_account_id,
created_at: $json->created_at,
display_name: $json->display_name,
errors: array_map(
fn($e) => UnmanagedAcsUserErrors::from_json($e),
$json->errors ?? [],
),
is_managed: $json->is_managed,
warnings: array_map(
fn($w) => UnmanagedAcsUserWarnings::from_json($w),
$json->warnings ?? [],
),
workspace_id: $json->workspace_id,
access_schedule: isset($json->access_schedule)
? UnmanagedAcsUserAccessSchedule::from_json(
$json->access_schedule,
)
: null,
email: $json->email ?? null,
email_address: $json->email_address ?? null,
external_type: $json->external_type ?? null,
external_type_display_name: $json->external_type_display_name ??
null,
full_name: $json->full_name ?? null,
hid_acs_system_id: $json->hid_acs_system_id ?? null,
is_suspended: $json->is_suspended ?? null,
pending_mutations: array_map(
fn($p) => UnmanagedAcsUserPendingMutations::from_json($p),
$json->pending_mutations ?? [],
),
phone_number: $json->phone_number ?? null,
salto_ks_metadata: isset($json->salto_ks_metadata)
? UnmanagedAcsUserSaltoKsMetadata::from_json(
$json->salto_ks_metadata,
)
: null,
salto_space_metadata: isset($json->salto_space_metadata)
? UnmanagedAcsUserSaltoSpaceMetadata::from_json(
$json->salto_space_metadata,
)
: null,
user_identity_id: $json->user_identity_id ?? null,
last_successful_sync_at: $json->last_successful_sync_at ?? null,
user_identity_email_address: $json->user_identity_email_address ??
null,
user_identity_full_name: $json->user_identity_full_name ?? null,
user_identity_phone_number: $json->user_identity_phone_number ??
null,
);
}
public function __construct(
public string $acs_system_id,
public string $acs_user_id,
public string $connected_account_id,
public string $created_at,
public string $display_name,
public array $errors,
public bool $is_managed,
public array $warnings,
public string $workspace_id,
public UnmanagedAcsUserAccessSchedule|null $access_schedule,
public string|null $email,
public string|null $email_address,
public string|null $external_type,
public string|null $external_type_display_name,
public string|null $full_name,
public string|null $hid_acs_system_id,
public bool|null $is_suspended,
public array|null $pending_mutations,
public string|null $phone_number,
public UnmanagedAcsUserSaltoKsMetadata|null $salto_ks_metadata,
public UnmanagedAcsUserSaltoSpaceMetadata|null $salto_space_metadata,
public string|null $user_identity_id,
public string|null $last_successful_sync_at,
public string|null $user_identity_email_address,
public string|null $user_identity_full_name,
public string|null $user_identity_phone_number,
) {}
}