Code Coverage
 
Lines
Branches
Paths
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 8
0.00% covered (danger)
0.00%
0 / 6
0.00% covered (danger)
0.00%
0 / 6
0.00% covered (danger)
0.00%
0 / 6
CRAP
0.00% covered (danger)
0.00%
0 / 1
HistoryStep
0.00% covered (danger)
0.00%
0 / 8
0.00% covered (danger)
0.00%
0 / 6
0.00% covered (danger)
0.00%
0 / 6
0.00% covered (danger)
0.00%
0 / 6
42
0.00% covered (danger)
0.00%
0 / 1
 getData
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setData
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getHash
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getLog
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getTime
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getUser
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3declare(strict_types=1);
4
5namespace Drupal\display_builder\Plugin\Field\FieldType;
6
7use Drupal\Core\Field\Attribute\FieldType;
8use Drupal\Core\Field\MapFieldItemList;
9use Drupal\Core\Field\Plugin\Field\FieldType\MapItem;
10use Drupal\Core\StringTranslation\TranslatableMarkup;
11
12/**
13 * A single step in the instance log history.
14 */
15#[FieldType(
16  id: 'step',
17  label: new TranslatableMarkup('History step'),
18  no_ui: TRUE,
19  list_class: MapFieldItemList::class,
20)]
21class HistoryStep extends MapItem {
22
23  /**
24   * Get data.
25   */
26  public function getData(): array {
27    return $this->getValue()['data'] ?? [];
28  }
29
30  /**
31   * Set data.
32   */
33  public function setData(array $data): void {
34    $values = $this->getValue();
35    $values['data'] = $data;
36    $this->setValue($values);
37  }
38
39  /**
40   * Get hash.
41   */
42  public function getHash(): int {
43    return $this->getValue()['hash'];
44  }
45
46  /**
47   * Get log.
48   */
49  public function getLog(): string|\Stringable|null {
50    return $this->getValue()['log'];
51  }
52
53  /**
54   * Get time.
55   */
56  public function getTime(): int {
57    return $this->getValue()['time'];
58  }
59
60  /**
61   * Ger user.
62   */
63  public function getUser(): ?int {
64    return $this->getValue()['user'] ?? NULL;
65  }
66
67}