PluginProbe
Elementor Website Builder – more than just a page builder / 4.2.1
Elementor Website Builder – more than just a page builder v4.2.1
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 4.1.0-dev2 4.0.8 4.1.0-beta1 4.1.0-dev1 All 452 releases
← All changes | modules/global-classes/import-export-utils/import-utils.php +6 -0 4.2.0-dev24.2.1 View file →
@@ -2,8 +2,9 @@
2 2
3 3 namespace Elementor\Modules\GlobalClasses\ImportExportUtils;
4 4
5 5 use Elementor\App\Modules\ImportExportCustomization\Utils as ImportExportUtils;
6 +use Elementor\Modules\DesignSystemSync\Classes\Global_Classes_Sync_Map;
6 7 use Elementor\Modules\GlobalClasses\Global_Class_Post;
7 8 use Elementor\Modules\GlobalClasses\Global_Classes_Repository;
8 9 use Elementor\Modules\GlobalClasses\Global_Classes_REST_API;
9 10 use Elementor\Modules\AtomicWidgets\Parsers\Style_Parser;
@@ -89,8 +90,9 @@
89 90 $added_classes_order = [];
90 91 $added_classes_labels = [];
91 92 $modified_classes = [];
92 93 $deleted_classes = [];
94 + $touched_sync_items = [];
93 95
94 96 $previous_order = $classes_repository->get_order();
95 97 $order_set = array_flip( $previous_order );
96 98 $style_parser = Style_Parser::make( Style_Schema::get() );
@@ -162,8 +164,9 @@
162 164 if ( 'replace' === $action ) {
163 165 $existing_id = $label_to_id_map[ strtolower( $import_entry['label'] ) ];
164 166 self::replace_existing_class( $existing_id, $sanitized_item );
165 167
168 + $touched_sync_items[ $existing_id ] = [ 'sync_to_v3' => ! empty( $sanitized_item['sync_to_v3'] ) ];
166 169 $modified_classes[] = $existing_id;
167 170 $result['replaced'][] = [
168 171 'import_entry' => $import_entry,
169 172 'result_entry' => [
@@ -188,8 +191,9 @@
188 191 $sanitized_item['id'] = $new_id;
189 192 }
190 193
191 194 self::create_new_class( $sanitized_item );
195 + $touched_sync_items[ $new_id ] = [ 'sync_to_v3' => ! empty( $sanitized_item['sync_to_v3'] ) ];
192 196 $order_set[ $new_id ] = true;
193 197 $added_classes_order[] = $new_id;
194 198 $added_classes_labels[ $new_id ] = $sanitized_item['label'];
195 199 $label_to_id_map[ strtolower( $sanitized_item['label'] ) ] = $new_id;
@@ -217,8 +221,10 @@
217 221
218 222 if ( $has_changes ) {
219 223 $new_order = array_merge( $added_classes_order, $previous_order );
220 224 $classes_repository->update_order_and_labels( $new_order, $added_classes_labels );
225 +
226 + Global_Classes_Sync_Map::make()->apply_changes( $touched_sync_items, $deleted_classes );
221 227
222 228 $changes = [
223 229 'added' => $added_classes_order,
224 230 'deleted' => $deleted_classes,