PluginProbe
Tableberg – Simple Gutenberg Table Block / trunk
Tableberg – Simple Gutenberg Table Block vtrunk
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 0.5.8 All 41 releases
tableberg / renderer / utils.php

utils.php in Tableberg – Simple Gutenberg Table Block trunk, at renderer/utils.php

87 lines 1.7 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;
4
5 /**
6 * @param mixed $value
7 * @return mixed|null
8 */
9 function getOrNull(&$value) {
10 return isset($value) ? $value : null;
11 }
12
13 /**
14 * @param mixed $value
15 * @return array<mixed>|null
16 */
17 function getArrayOrNull(&$value) {
18 $maybeValue = getOrNull($value);
19 return is_array($maybeValue) ? $maybeValue : null;
20 }
21
22 /**
23 * @param mixed $value
24 * @return string|null
25 */
26 function getStringOrNull(&$value) {
27 $maybeValue = getOrNull($value);
28 return is_string($maybeValue) ? $maybeValue : null;
29 }
30
31 /**
32 * @param mixed $value
33 * @return bool|null
34 */
35 function getBoolOrNull(&$value) {
36 $maybeValue = getOrNull($value);
37 return is_bool($maybeValue) ? $maybeValue : null;
38 }
39
40 /**
41 * @param float $value
42 * @param float $min
43 * @param float $max
44 * @return float
45 */
46 function clamp($value, $min, $max) {
47 return max($min, min($value, $max));
48 }
49
50 /**
51 * Check whether a value is undefined.
52 *
53 * @param mixed $value Value to check.
54 * @return bool
55 */
56 function is_undefined($value) {
57 return null === $value || !isset($value);
58 }
59
60 /**
61 * Generate CSS string from styles array.
62 *
63 * @param array $styles Styles array.
64 * @return string
65 */
66 function generate_css_string($styles) {
67 $css_string = '';
68
69 foreach ($styles as $key => $value) {
70 if (
71 !is_undefined($value) &&
72 false !== $value &&
73 (
74 !is_string($value) ||
75 (
76 trim($value) !== '' &&
77 trim($value) !== 'undefined undefined undefined'
78 )
79 )
80 ) {
81 $css_string .= $key . ': ' . $value . '; ';
82 }
83 }
84
85 return $css_string;
86 }
87