entity.shortcut_set.delete_form:
  path: '/admin/config/user-interface/shortcut/manage/{shortcut_set}/delete'
  defaults:
    _entity_form: 'shortcut_set.delete'
    _title: 'Delete shortcut set'
  requirements:
    _entity_access: 'shortcut_set.delete'

entity.shortcut_set.collection:
  path: '/admin/config/user-interface/shortcut'
  defaults:
    _entity_list: 'shortcut_set'
    _title: 'Shortcuts'
  requirements:
    _permission: 'administer shortcuts'

shortcut.set_add:
  path: '/admin/config/user-interface/shortcut/add-set'
  defaults:
    _entity_form: 'shortcut_set.add'
    _title: 'Add shortcut set'
  requirements:
    _entity_create_access: 'shortcut_set'

entity.shortcut_set.edit_form:
  path: '/admin/config/user-interface/shortcut/manage/{shortcut_set}'
  defaults:
    _entity_form: 'shortcut_set.edit'
    _title: 'Edit shortcut set'
  requirements:
    _entity_access: 'shortcut_set.update'

shortcut.link_add_inline:
  path: '/admin/config/user-interface/shortcut/manage/{shortcut_set}/add-link-inline'
  defaults:
    _controller: '\Drupal\shortcut\Controller\ShortcutSetController::addShortcutLinkInline'
  requirements:
    _entity_access: 'shortcut_set.update'
    _csrf_token: 'TRUE'

entity.shortcut_set.customize_form:
  path: '/admin/config/user-interface/shortcut/manage/{shortcut_set}/customize'
  defaults:
    _entity_form: 'shortcut_set.customize'
    _title: 'List links'
  requirements:
    _entity_access: 'shortcut_set.update'

shortcut.link_add:
  path: '/admin/config/user-interface/shortcut/manage/{shortcut_set}/add-link'
  defaults:
    _controller: '\Drupal\shortcut\Controller\ShortcutController::addForm'
    _title: 'Add link'
  requirements:
    _entity_create_access: 'shortcut:{shortcut_set}'

entity.shortcut.canonical:
  path: '/admin/config/user-interface/shortcut/link/{shortcut}'
  defaults:
    _entity_form: 'shortcut.default'
    _title: 'Edit'
  requirements:
    _entity_access: 'shortcut.update'
    shortcut: \d+

entity.shortcut.edit_form:
  path: '/admin/config/user-interface/shortcut/link/{shortcut}'
  defaults:
    _entity_form: 'shortcut.default'
    _title: 'Edit'
  requirements:
    _entity_access: 'shortcut.update'
    shortcut: \d+

entity.shortcut.link_delete_inline:
  path: '/admin/config/user-interface/shortcut/link/{shortcut}/delete-inline'
  defaults:
    _controller: '\Drupal\shortcut\Controller\ShortcutController::deleteShortcutLinkInline'
  requirements:
    _entity_access: 'shortcut.delete'
    _csrf_token: 'TRUE'
    shortcut: \d+

entity.shortcut.delete_form:
  path: '/admin/config/user-interface/shortcut/link/{shortcut}/delete'
  defaults:
    _entity_form: 'shortcut.delete'
    _title: 'Delete'
  requirements:
    _entity_access: 'shortcut.delete'
    shortcut: \d+

shortcut.set_switch:
  path: '/user/{user}/shortcuts'
  defaults:
    _form: '\Drupal\shortcut\Form\SwitchShortcutSet'
    _title: 'Shortcuts'
  requirements:
    _custom_access: '\Drupal\shortcut\Form\SwitchShortcutSet::checkAccess'
  options:
    _admin_route: TRUE
    user: \d+
