public function index() { $extensions =
array_intersect_key($this->moduleExtensionList->
getList(),
$this->
moduleHandler()->
getModuleList());
uasort($extensions,
[ModuleExtensionList::
class, 'sortByName'
]);
$menu_items =
[];
foreach ($extensions as $module =>
$extension) { // Only display a section if there are any available tasks.
if ($admin_tasks =
system_get_module_admin_tasks($module,
$extension->info
)) { // Sort links by title.
uasort($admin_tasks,
['\Drupal\Component\Utility\SortArray', 'sortByTitleElement'
]);
// Move 'Configure permissions' links to the bottom of each section.
$permission_key = "user.admin_permissions.
$module";
if (isset($admin_tasks[$permission_key])) { $permission_task =
$admin_tasks[$permission_key];
unset($admin_tasks[$permission_key]);
$admin_tasks[$permission_key] =
$permission_task;
} $menu_items[$extension->info
['name'
]] =
[$extension->info
['description'
],
$admin_tasks];
}