| @@ -2,8 +2,9 @@ | ||
| 2 | 2 | |
| 3 | 3 | namespace Tableberg\Renderer\Text; |
| 4 | 4 | |
| 5 | 5 | use Tableberg\Renderer\Attrs\StringAttr; |
| 6 | +use Tableberg\Renderer\Attrs\Sides; | |
| 6 | 7 | |
| 7 | 8 | use function Tableberg\Renderer\getOrNull; |
| 8 | 9 | |
| 9 | 10 | class TextAttrs { |
| @@ -52,8 +53,14 @@ | ||
| 52 | 53 | |
| 53 | 54 | /** @var StringAttr */ |
| 54 | 55 | public $fontSize; |
| 55 | 56 | |
| 57 | + /** @var Sides */ | |
| 58 | + public $padding; | |
| 59 | + | |
| 60 | + /** @var Sides */ | |
| 61 | + public $margin; | |
| 62 | + | |
| 56 | 63 | /** |
| 57 | 64 | * @param array<string, mixed>|null $data |
| 58 | 65 | * @return self |
| 59 | 66 | */ |
| @@ -82,8 +89,19 @@ | ||
| 82 | 89 | ); |
| 83 | 90 | $instance->fontSize = new StringAttr( |
| 84 | 91 | getOrNull($data['fontSize']), |
| 85 | 92 | $defaultFontSize |
| 93 | + ); | |
| 94 | + | |
| 95 | + $defaultPadding = getOrNull($d['padding']); | |
| 96 | + $defaultMargin = getOrNull($d['margin']); | |
| 97 | + $instance->padding = Sides::from_array( | |
| 98 | + getOrNull($data['padding']), | |
| 99 | + is_array($defaultPadding) ? $defaultPadding : [] | |
| 100 | + ); | |
| 101 | + $instance->margin = Sides::from_array( | |
| 102 | + getOrNull($data['margin']), | |
| 103 | + is_array($defaultMargin) ? $defaultMargin : [] | |
| 86 | 104 | ); |
| 87 | 105 | |
| 88 | 106 | return $instance; |
| 89 | 107 | } |