/**
  * Builds a standard list of entity permissions for a given type.
  *
  * @param \Drupal\content_entity_base\Entity\EntityTypeBaseInterface $type
  *   The machine name of the entity type.
  *
  * @return array
  *   An array of permission names and descriptions.
  */
 protected function buildPermissions(EntityTypeBaseInterface $type)
 {
     $entity_id = $type->bundleOf();
     // Get the referring entity definition.
     $entity_definition = $this->entityManager->getDefinition($entity_id);
     $type_id = $type->id();
     $type_params = ['%entity_label' => $entity_definition->getLabel(), '%type_name' => $type->label()];
     return ["create {$type_id} {$entity_id}" => ['title' => $this->t('%type_name: Create new %entity_label', $type_params)], "edit own {$type_id} {$entity_id}" => ['title' => $this->t('%type_name: Edit own %entity_label', $type_params)], "edit any {$type_id} {$entity_id}" => ['title' => $this->t('%type_name: Edit any %entity_label', $type_params)], "delete own {$type_id} {$entity_id}" => ['title' => $this->t('%type_name: Delete own %entity_label', $type_params)], "delete any {$type_id} {$entity_id}" => ['title' => $this->t('%type_name: Delete any %entity_label', $type_params)], "view {$type_id} {$entity_id} revisions" => ['title' => $this->t('%type_name: View %entity_label revisions', $type_params)], "revert {$type_id} {$entity_id} revisions" => ['title' => $this->t('%type_name: Revert %entity_label revisions', $type_params), 'description' => t('Role requires permission <em>view revisions</em> and <em>edit rights</em> for %entity_label in question, or <em>Administer %entity_label</em>.', $type_params)], "delete {$type_id} {$entity_id} revisions" => ['title' => $this->t('%type_name: Delete %entity_label revisions', $type_params), 'description' => $this->t('Role requires permission to <em>view revisions</em> and <em>delete rights</em> for %entity_label in question, or <em>Administer %entity_label</em>.', $type_params)]];
 }