public function addPage() {
    $content = array();

    foreach (\Drupal::entityTypeManager()->getStorage('site_commerce_type')->loadMultiple() as $type) {
      $content[$type->id()] = $type;
    }

    if (!count($content)) {
      return $this->redirect('entity.site_commerce_type.add_form');
    }

    if (count($content) == 1) {
      $type = array_shift($content);
      return $this->redirect('entity.site_commerce.add_form', array('site_commerce_type' => $type->id()));
    }

    return array(
      '#theme' => 'site_commerce_add_list',
      '#content' => $content,
    );
  }