customizableOption = $customizableOption; } /** * @inheritdoc */ public function resolve(Field $field, $context, ResolveInfo $info, array $value = null, array $args = null) { if (!isset($value['model'])) { throw new LocalizedException(__('"model" value should be specified')); } /** @var QuoteItem $cartItem */ $cartItem = $value['model']; $quoteItemOption = $cartItem->getOptionByCode('option_ids'); if (null === $quoteItemOption) { return []; } $customizableOptionsData = []; $customizableOptionIds = explode(',', $quoteItemOption->getValue()); foreach ($customizableOptionIds as $customizableOptionId) { $customizableOption = $this->customizableOption->getData( $cartItem, (int)$customizableOptionId ); $customizableOptionsData[] = $customizableOption; } return $customizableOptionsData; } }