-
Notifications
You must be signed in to change notification settings - Fork 50
Expand file tree
/
Copy pathHeavyAdIssueDetails.php
More file actions
66 lines (58 loc) · 1.27 KB
/
HeavyAdIssueDetails.php
File metadata and controls
66 lines (58 loc) · 1.27 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
<?php
namespace ChromeDevtoolsProtocol\Model\Audits;
/**
* Named type Audits.HeavyAdIssueDetails.
*
* @generated This file has been auto-generated, do not edit.
*
* @author Jakub Kulhan <jakub.kulhan@gmail.com>
*/
final class HeavyAdIssueDetails implements \JsonSerializable
{
/**
* The resolution status, either blocking the content or warning.
*
* @var string
*/
public $resolution;
/**
* The reason the ad was blocked, total network or cpu or peak cpu.
*
* @var string
*/
public $reason;
/**
* The frame that was blocked.
*
* @var AffectedFrame
*/
public $frame;
public static function fromJson($data)
{
$instance = new static();
if (isset($data->resolution)) {
$instance->resolution = (string)$data->resolution;
}
if (isset($data->reason)) {
$instance->reason = (string)$data->reason;
}
if (isset($data->frame)) {
$instance->frame = AffectedFrame::fromJson($data->frame);
}
return $instance;
}
public function jsonSerialize(): mixed
{
$data = new \stdClass();
if ($this->resolution !== null) {
$data->resolution = $this->resolution;
}
if ($this->reason !== null) {
$data->reason = $this->reason;
}
if ($this->frame !== null) {
$data->frame = $this->frame->jsonSerialize();
}
return $data;
}
}