PluginProbe
Elementor Website Builder – more than just a page builder / 4.1.0-beta1
Elementor Website Builder – more than just a page builder v4.1.0-beta1
4.3.3 4.3.2 4.3.1 4.3.0 4.3.0-beta3 4.3.0-beta2 4.3.0-beta1 4.2.4 4.2.3 4.2.2 4.2.1 4.2.0 4.1.5 4.2.0-beta2 4.2.0-dev2 4.2.0-beta1 4.1.4 4.1.3 4.1.2 4.1.1 4.1.0 4.1.0-beta3 4.1.0-dev3 4.0.9 4.1.0-beta2 All 456 releases
← All changes | modules/atomic-widgets/module.php +20 -19 4.2.0-beta1 → 4.1.0-beta1 View file →
@@ -2,17 +2,14 @@
2 2
3 3 namespace Elementor\Modules\AtomicWidgets;
4 4
5 5 use Elementor\Core\Base\Module as BaseModule;
6 -use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
7 6 use Elementor\Core\Experiments\Manager as Experiments_Manager;
8 7 use Elementor\Elements_Manager;
9 -use Elementor\Modules\AtomicWidgets\Ajax\Render_Element_Action;
10 8 use Elementor\Modules\AtomicWidgets\DynamicTags\Dynamic_Tags_Module;
11 9 use Elementor\Modules\AtomicWidgets\Elements\Atomic_Youtube\Atomic_Youtube;
12 10 use Elementor\Modules\AtomicWidgets\Elements\Div_Block\Div_Block;
13 11 use Elementor\Modules\AtomicWidgets\Elements\Flexbox\Flexbox;
14 -use Elementor\Modules\AtomicWidgets\Elements\Grid\Grid;
15 12 use Elementor\Modules\AtomicWidgets\Elements\Atomic_Heading\Atomic_Heading;
16 13 use Elementor\Modules\AtomicWidgets\Elements\Atomic_Image\Atomic_Image;
17 14 use Elementor\Modules\AtomicWidgets\Elements\Atomic_Paragraph\Atomic_Paragraph;
18 15 use Elementor\Modules\AtomicWidgets\Elements\Atomic_Button\Atomic_Button;
@@ -45,9 +42,8 @@
45 42 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Color_Stop_Transformer;
46 43 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Multi_Props_Transformer;
47 44 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Position_Transformer;
48 45 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Shadow_Transformer;
49 -use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Grid_Track_Size_Transformer;
50 46 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Size_Transformer;
51 47 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Stroke_Transformer;
52 48 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Background_Image_Overlay_Transformer;
53 49 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Background_Image_Overlay_Size_Scale_Transformer;
@@ -52,9 +48,8 @@
52 48 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Background_Image_Overlay_Transformer;
53 49 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Background_Image_Overlay_Size_Scale_Transformer;
54 50 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Background_Overlay_Transformer;
55 51 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Filter_Transformer;
56 -use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Font_Family_Transformer;
57 52 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Transform_Origin_Transformer;
58 53 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Transition_Transformer;
59 54 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Transform_Rotate_Transformer;
60 55 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Transform_Skew_Transformer;
@@ -93,9 +88,8 @@
93 88 use Elementor\Modules\AtomicWidgets\PropTypes\Svg_Src_Prop_Type;
94 89 use Elementor\Modules\AtomicWidgets\PropTypes\Dimensions_Prop_Type;
95 90 use Elementor\Modules\AtomicWidgets\PropTypes\Position_Prop_Type;
96 91 use Elementor\Modules\AtomicWidgets\PropTypes\Shadow_Prop_Type;
97 -use Elementor\Modules\AtomicWidgets\PropTypes\Grid_Track_Size_Prop_Type;
98 92 use Elementor\Modules\AtomicWidgets\PropTypes\Size_Prop_Type;
99 93 use Elementor\Modules\AtomicWidgets\PropTypes\Stroke_Prop_Type;
100 94 use Elementor\Modules\AtomicWidgets\PropTypes\Transform\Functions\Transform_Move_Prop_Type;
101 95 use Elementor\Modules\AtomicWidgets\PropTypes\Transform\Transform_Functions_Prop_Type;
@@ -109,12 +103,10 @@
109 103 use Elementor\Modules\AtomicWidgets\Styles\Atomic_Widget_Base_Styles;
110 104 use Elementor\Modules\AtomicWidgets\Styles\Atomic_Widget_Styles;
111 105 use Elementor\Modules\AtomicWidgets\Styles\Size_Constants;
112 106 use Elementor\Modules\AtomicWidgets\Styles\Style_Schema;
113 -use Elementor\Modules\AtomicWidgets\CssConverter\Css_Converter_REST_API;
114 107 use Elementor\Modules\AtomicWidgets\Database\Atomic_Widgets_Database_Updater;
115 108 use Elementor\Modules\AtomicWidgets\Elements\Atomic_Tabs\Atomic_Tab_Content\Atomic_Tab_Content;
116 -use Elementor\Modules\AtomicWidgets\Elements\Atomic_Collection_Loop\Collection_Loop_Promotion;
117 109 use Elementor\Modules\AtomicWidgets\Elements\Atomic_Form\Atomic_Form;
118 110 use Elementor\Modules\AtomicWidgets\Elements\Atomic_Form\Atomic_Form_Promotion;
119 111 use Elementor\Modules\AtomicWidgets\Elements\Atomic_Form\Form_Success_Message\Form_Success_Message;
120 112 use Elementor\Modules\AtomicWidgets\Elements\Atomic_Form\Form_Error_Message\Form_Error_Message;
@@ -131,9 +123,8 @@
131 123 use Elementor\Modules\AtomicWidgets\Utils\Utils;
132 124 use Elementor\Modules\AtomicWidgets\Elements\Atomic_Self_Hosted_Video\Atomic_Self_Hosted_Video;
133 125 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Styles\Span_Transformer;
134 126 use Elementor\Modules\AtomicWidgets\PropsResolver\Transformers\Video_Src_Transformer;
135 -use Elementor\Modules\AtomicWidgets\PropTypes\Font_Family_Prop_Type;
136 127 use Elementor\Modules\AtomicWidgets\PropTypes\Span_Prop_Type;
137 128 use Elementor\Modules\AtomicWidgets\PropTypes\Video_Src_Prop_Type;
138 129
139 130 if ( ! defined( 'ABSPATH' ) ) {
@@ -143,8 +134,10 @@
143 134 class Module extends BaseModule {
144 135 const EXPERIMENT_NAME = 'e_atomic_elements';
145 136 const ENFORCE_CAPABILITIES_EXPERIMENT = 'atomic_widgets_should_enforce_capabilities';
146 137 const EXPERIMENT_EDITOR_MCP = 'editor_mcp';
138 + const EXPERIMENT_CSS_GRID = 'e_css_grid';
139 + const EXPERIMENT_DESIGN_SYSTEM_PANEL = 'e_editor_design_system_panel';
147 140
148 141 const PACKAGES = [
149 142 'editor-canvas',
150 143 'editor-controls', // TODO: Need to be registered and not enqueued.
@@ -184,10 +177,8 @@
184 177 add_action( 'elementor/preview/enqueue_styles', fn () => $this->enqueue_promotion_styles() );
185 178 add_action( 'elementor/frontend/before_register_scripts', fn () => $this->register_frontend_scripts() );
186 179 add_action( 'elementor/frontend/after_enqueue_styles', fn () => $this->add_inline_styles() );
187 180
188 - add_action( 'elementor/ajax/register_actions', fn ( Ajax $ajax ) => ( new Render_Element_Action() )->register( $ajax ) );
189 -
190 181 add_action( 'elementor/atomic-widgets/settings/transformers/register', fn ( $transformers ) => $this->register_settings_transformers( $transformers ) );
191 182 add_action( 'elementor/atomic-widgets/styles/transformers/register', fn ( $transformers ) => $this->register_styles_transformers( $transformers ) );
192 183 add_action( 'elementor/atomic-widgets/import/transformers/register', fn ( $transformers ) => $this->register_import_transformers( $transformers ) );
193 184 add_action( 'elementor/atomic-widgets/export/transformers/register', fn ( $transformers ) => $this->register_export_transformers( $transformers ) );
@@ -244,8 +235,26 @@
244 235 'default' => Experiments_Manager::STATE_ACTIVE,
245 236 'release_status' => Experiments_Manager::RELEASE_STATUS_DEV,
246 237 ]);
247 238
239 + Plugin::$instance->experiments->add_feature( [
240 + 'name' => self::EXPERIMENT_CSS_GRID,
241 + 'title' => esc_html__( 'CSS Grid', 'elementor' ),
242 + 'description' => esc_html__( 'Enable CSS Grid layout for containers.', 'elementor' ),
243 + 'hidden' => true,
244 + 'default' => Experiments_Manager::STATE_INACTIVE,
245 + 'release_status' => Experiments_Manager::RELEASE_STATUS_DEV,
246 + ] );
247 +
248 + Plugin::$instance->experiments->add_feature([
249 + 'name' => self::EXPERIMENT_DESIGN_SYSTEM_PANEL,
250 + 'title' => esc_html__( 'Editor design system panel', 'elementor' ),
251 + 'description' => esc_html__( 'Unified design system entry in the editor (toolbar + single panel for variables and global classes).', 'elementor' ),
252 + 'hidden' => true,
253 + 'default' => Experiments_Manager::STATE_ACTIVE,
254 + 'release_status' => Experiments_Manager::RELEASE_STATUS_DEV,
255 + ]);
256 +
248 257 // When a new feature affects settings or style schema, global class, interactions, variable, etc
249 258 // anything in need of addressing migration for BC purposes, add it here.
250 259 $migrations_affecting_features = [];
251 260
@@ -260,9 +269,8 @@
260 269 ( new Atomic_Widget_Base_Styles() )->register_hooks();
261 270 ( new Atomic_Widgets_Library() )->register_hooks();
262 271 ( new Atomic_Import_Export() )->register_hooks();
263 272 ( new Atomic_Widgets_Database_Updater() )->register();
264 - ( new Css_Converter_REST_API() )->register_hooks();
265 273 }
266 274
267 275 private function add_packages( $packages ) {
268 276 return array_merge( $packages, self::PACKAGES );
@@ -299,9 +307,8 @@
299 307
300 308 private function register_elements( Elements_Manager $elements_manager ) {
301 309 $elements_manager->register_element_type( new Div_Block() );
302 310 $elements_manager->register_element_type( new Flexbox() );
303 - $elements_manager->register_element_type( new Grid() );
304 311
305 312 $elements_manager->register_element_type( new Atomic_Tabs() );
306 313 $elements_manager->register_element_type( new Atomic_Tabs_Menu() );
307 314 $elements_manager->register_element_type( new Atomic_Tab() );
@@ -314,12 +321,8 @@
314 321 $elements_manager->register_element_type( new Form_Error_Message() );
315 322 } elseif ( ! \Elementor\Utils::has_pro() ) {
316 323 $elements_manager->register_element_type( new Atomic_Form_Promotion() );
317 324 }
318 -
319 - if ( ! \Elementor\Utils::has_pro() ) {
320 - $elements_manager->register_element_type( new Collection_Loop_Promotion() );
321 - }
322 325 }
323 326
324 327 private function register_settings_transformers( Transformers_Registry $transformers ) {
325 328 $transformers->register_fallback( new Plain_Transformer() );
@@ -348,11 +351,9 @@
348 351 $this->register_layout_styles_transformers( $transformers );
349 352 }
350 353
351 354 private function register_basic_styles_transformers( Transformers_Registry $transformers ): void {
352 - $transformers->register( Font_Family_Prop_Type::get_key(), new Font_Family_Transformer() );
353 355 $transformers->register( Size_Prop_Type::get_key(), new Size_Transformer() );
354 - $transformers->register( Grid_Track_Size_Prop_Type::get_key(), new Grid_Track_Size_Transformer() );
355 356 $transformers->register( Box_Shadow_Prop_Type::get_key(), new Combine_Array_Transformer( ',' ) );
356 357 $transformers->register( Shadow_Prop_Type::get_key(), new Shadow_Transformer() );
357 358 $transformers->register( Flex_Prop_Type::get_key(), new Flex_Transformer() );
358 359 $transformers->register( Stroke_Prop_Type::get_key(), new Stroke_Transformer() );