$instance_config) { $default_config = []; $default_config['id'] = $instance_id; $default_config += $this->get($instance_id)->defaultConfiguration(); // In order to determine if a plugin is configured, we must compare it to // its default configuration. The default configuration of a plugin does // not contain context_mapping and it is not used when the plugin is not // configured, so remove the context_mapping from the instance config to // compare the remaining values. unset($instance_config['context_mapping']); if ($default_config === $instance_config) { unset($configuration[$instance_id]); } } return $configuration; } /** * Sets the condition context for a given name. * * @param string $name * The name of the context. * @param \Drupal\Component\Plugin\Context\ContextInterface $context * The context to add. * * @return $this */ public function addContext($name, ContextInterface $context) { $this->conditionContexts[$name] = $context; return $this; } /** * Gets the values for all defined contexts. * * @return \Drupal\Component\Plugin\Context\ContextInterface[] * An array of set contexts, keyed by context name. */ public function getConditionContexts() { return $this->conditionContexts; } }