PluginProbe
Tableberg – Simple Gutenberg Table Block / 1.1.5
Tableberg – Simple Gutenberg Table Block v1.1.5
1.1.5 1.1.4 1.1.3 1.1.2 1.1.1 1.1.0 1.0.5 1.0.4 1.0.3 1.0.2 1.0.1 trunk 0.0.2 0.2.1 0.3.2 0.3.3 0.4.1 0.5.0 0.5.1 0.5.2 0.5.3 0.5.4 0.5.5 0.5.6 0.5.7 All 42 releases
tableberg / renderer / Attrs / Sides.php

Sides.php in Tableberg – Simple Gutenberg Table Block 1.1.5, at renderer/Attrs/Sides.php

48 lines 1.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Tableberg\Renderer\Attrs;
4
5 use function Tableberg\Renderer\getOrNull;
6
7 class Sides {
8 /** @var StringAttr */
9 public $top;
10
11 /** @var StringAttr */
12 public $right;
13
14 /** @var StringAttr */
15 public $bottom;
16
17 /** @var StringAttr */
18 public $left;
19
20 /**
21 * @param array|null $data
22 * @param array<string, string> $defaults
23 * @return self
24 */
25 public static function from_array($data, $defaults) {
26 $data = is_array($data) ? $data : [];
27
28 $instance = new self();
29 $defaultTop = getOrNull($defaults['top']);
30 $defaultRight = getOrNull($defaults['right']);
31 $defaultBottom = getOrNull($defaults['bottom']);
32 $defaultLeft = getOrNull($defaults['left']);
33
34 $instance->top = new StringAttr(getOrNull($data['top']), $defaultTop);
35 $instance->right = new StringAttr(
36 getOrNull($data['right']),
37 $defaultRight
38 );
39 $instance->bottom = new StringAttr(
40 getOrNull($data['bottom']),
41 $defaultBottom
42 );
43 $instance->left = new StringAttr(getOrNull($data['left']), $defaultLeft);
44
45 return $instance;
46 }
47 }
48