function components_update($product_id, $data)
 {
     $this->sync_composite_data_across_translations($product_id);
     $product = new WC_Product_Composite($product_id);
     $composite_data = $product->get_composite_data();
     if (!empty($data['wc_composite_component'])) {
         foreach ($data['wc_composite_component'] as $component_id => $component) {
             if (!empty($component['title'])) {
                 $composite_data[$component_id]['title'] = $component['title'];
             }
             if (!empty($component['description'])) {
                 $composite_data[$component_id]['description'] = $component['description'];
             }
         }
         update_post_meta($product_id, '_bto_data', $composite_data);
     }
 }