/**
  * Get action options
  *
  * @return array
  */
 public function jsonSerialize()
 {
     if ($this->options === null) {
         $options = $this->collectionFactory->create()->setEntityTypeFilter($this->product->getEntityType()->getEntityTypeId())->toOptionArray();
         $this->prepareData();
         foreach ($options as $optionCode) {
             $this->options[$optionCode['value']] = ['type' => 'customer_group_' . $optionCode['value'], 'label' => $optionCode['label']];
             if ($this->urlPath && $this->paramName) {
                 $this->options[$optionCode['value']]['url'] = $this->urlBuilder->getUrl($this->urlPath, [$this->paramName => $optionCode['value']]);
             }
             $this->options[$optionCode['value']] = array_merge_recursive($this->options[$optionCode['value']], $this->additionalData);
         }
         $this->options = array_values($this->options);
     }
     return $this->options;
 }