Drupal 9 image field migration

It's really nice module which makes customers flow better on website with no need to reload the page on every action. https://www.drupal.org/project/commerce_cart_flyout 
One thing I dont like is a lot of not needed information was present in responses from cart or product. In my case there were internal fields of Product Variations entity which are not displayed for customers.
There is no default settings to handle that case so optimization should be done. You need custom Normalizations for cart and variation cases.

Variations normalization. Add to services.yml in your module
  my_commerce.cart_normalizer.product_variation:
    class: Drupal\my_commerce\Normalizer\VariationCartNormalizer
    tags:
      - { name: normalizer, priority: 2 }

then add a file to my_commerce/src/Normalizer/VariationCartNormalizer.php.
The main idea is to have an array $whitelistFields for fields that need to be in response.

https://gist.github.com/onesixromcom/bcc813af2934a82d781d1c97b10f30bf

 

For Order items I use

  my_commerce.cart_normalizer.order_item:
    class: Drupal\my_commerce\Normalizer\OrderItemCartNormalizer
    tags:
      - { name: normalizer, priority: 2 }
and fields variable
  private $whitelistFields = [
    'purchased_entity',
    'quantity',
    'title',
    'total_price',
    'unit_price',
    'order_item_id',

For order itself:

my_commerce.cart_normalizer.order:
    class: Drupal\my_commerce\Normalizer\OrderCartNormalizer
    tags:
      - { name: normalizer, priority: 2 }

It's a bit different variable here, since this array describes blocked fields.

  private $blockedFields = [
    'uuid',
    'store_id',
    'order_number',
    'coupons',
  ];         

Коментувати

Вміст цього поля є приватним і не буде доступний широкому загалу.
  • Не дозволено жодних HTML теґів.
CAPTCHA
                                        .oooooo.                                
d8P' `Y8b
oo.ooooo. .oooooooo oooo ooo 888 oooo oooo ooo .oooo.
888' `88b 888' `88b `88. .8' 888 `88. `88. .8' `P )88b
888 888 888 888 `88..8' 888 `88..]88..8' .oP"888
888 888 `88bod8P' `888' `88b ooo `888'`888' d8( 888
888bod8P' `8oooooo. .8' `Y8bood8P' `8' `8' `Y888""8o
888 d" YD .o..P'
o888o "Y88888P' `Y8P'
Уведіть код, зображений у стилі Ascii-Арт.
Мета цього запитання — довести, що ви є реальним відвідувачем і запобігти автоматизованим розсиланням спаму.