PluginProbe ʕ •ᴥ•ʔ
JetFormBuilder — Dynamic Blocks Form Builder / 3.2.3
JetFormBuilder — Dynamic Blocks Form Builder v3.2.3
3.6.3.1 3.6.3 3.6.2.2 3.6.2.1 3.6.2 3.6.1.1 3.6.1 3.6.0.1 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.1.0 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.2.7 1.3.0 1.3.1 1.3.2 1.3.3 1.4.0 1.4.1 1.4.2 1.4.3 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.1.0 2.1.1 2.1.10 2.1.11 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 3.0.0 3.0.0.1 3.0.0.2 3.0.0.3 3.0.1 3.0.1.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.0.1 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 3.2.0 3.2.1 3.2.2 3.2.3 3.3.0 3.3.1 3.3.2 3.3.3 3.3.3.1 3.3.4 3.3.4.1 3.3.4.2 3.4.0 3.4.1 3.4.2 3.4.3 3.4.4 3.4.5 3.4.5.1 3.4.5.2 3.4.6 3.4.7 3.4.7.1 3.5.0 3.5.1 3.5.1.1 3.5.1.2 3.5.2 3.5.2.1 3.5.3 3.5.4 3.5.5 3.5.6 3.5.6.1 3.5.6.2 3.5.6.3 3.6.0
jetformbuilder / modules / jet-style / css-compiler-manager.php
jetformbuilder / modules / jet-style Last commit date
assets-build 2 years ago css-compilers 2 years ago css-compiler-manager.php 2 years ago module.php 2 years ago
css-compiler-manager.php
68 lines
1 <?php
2
3
4 namespace JFB_Modules\Jet_Style;
5
6 use JFB_Modules\Jet_Style\Css_Compilers\Base_Css_Compiler;
7 use JFB_Modules\Jet_Style\Css_Compilers\Border_Radius_Css_Compiler;
8 use JFB_Modules\Jet_Style\Css_Compilers\Border_Css_Compiler;
9
10 // If this file is called directly, abort.
11 if ( ! defined( 'WPINC' ) ) {
12 die;
13 }
14
15 /**
16 * @since 3.1.0
17 *
18 * Class Css_Compiler_Manager
19 * @package Jet_Form_Builder\Compatibility\Wp_Experiments
20 */
21 class Css_Compiler_Manager {
22
23 /**
24 * @var Base_Css_Compiler[]
25 */
26 private $compilers;
27
28 public function __construct() {
29 $this->compilers = array(
30 new Border_Radius_Css_Compiler(),
31 new Border_Css_Compiler(),
32 new Base_Css_Compiler(),
33 );
34 }
35
36 public function compile( array $root_styles, array $support_config ): array {
37 $declarations = new \WP_Style_Engine_CSS_Declarations();
38 $class_names = array();
39
40 foreach ( $support_config as $css_var => $path ) {
41 $compiler = $this->get_supported_compiler( $path )
42 ->set_css_var( $css_var )
43 ->set_path( $path );
44
45 $compiler->compile_declarations( $declarations, $root_styles, $class_names );
46 $compiler->compile_class_names( $class_names, $root_styles );
47 }
48
49 return array(
50 'style' => $declarations->get_declarations_string(),
51 'class' => implode( ' ', $class_names ),
52 );
53 }
54
55 protected function get_supported_compiler( array $path ): Base_Css_Compiler {
56 foreach ( $this->compilers as $compiler ) {
57 if ( ! $compiler->is_supported( $path ) ) {
58 continue;
59 }
60
61 return $compiler;
62 }
63
64 return $this->compilers[0];
65 }
66
67 }
68