layout_builder.choose_section:
  path: '/layout_builder/choose/section/{section_storage_type}/{section_storage}/{delta}'
  defaults:
    _controller: '\Drupal\layout_builder\Controller\ChooseSectionController::build'
    _title: 'Choose a layout for this section'
  requirements:
    _layout_builder_access: 'view'
  options:
    _admin_route: TRUE
    parameters:
      section_storage:
        layout_builder_tempstore: TRUE

layout_builder.add_section:
  path: '/layout_builder/add/section/{section_storage_type}/{section_storage}/{delta}/{plugin_id}'
  defaults:
    _controller: '\Drupal\layout_builder\Controller\AddSectionController::build'
  requirements:
    _layout_builder_access: 'view'
  options:
    _admin_route: TRUE
    parameters:
      section_storage:
        layout_builder_tempstore: TRUE

layout_builder.configure_section:
  path: '/layout_builder/configure/section/{section_storage_type}/{section_storage}/{delta}/{plugin_id}'
  defaults:
    _title: 'Configure section'
    _form: '\Drupal\layout_builder\Form\ConfigureSectionForm'
    # Adding a new section requires a plugin_id, while configuring an existing
    # section does not.
    plugin_id: null
  requirements:
    _layout_builder_access: 'view'
  options:
    _admin_route: TRUE
    parameters:
      section_storage:
        layout_builder_tempstore: TRUE

layout_builder.remove_section:
  path: '/layout_builder/remove/section/{section_storage_type}/{section_storage}/{delta}'
  defaults:
    _form: '\Drupal\layout_builder\Form\RemoveSectionForm'
  requirements:
    _layout_builder_access: 'view'
  options:
    _admin_route: TRUE
    parameters:
      section_storage:
        layout_builder_tempstore: TRUE

layout_builder.choose_block:
  path: '/layout_builder/choose/block/{section_storage_type}/{section_storage}/{delta}/{region}'
  defaults:
    _controller: '\Drupal\layout_builder\Controller\ChooseBlockController::build'
    _title: 'Choose a block'
  requirements:
    _layout_builder_access: 'view'
  options:
    _admin_route: TRUE
    parameters:
      section_storage:
        layout_builder_tempstore: TRUE

layout_builder.add_block:
  path: '/layout_builder/add/block/{section_storage_type}/{section_storage}/{delta}/{region}/{plugin_id}'
  defaults:
    _form: '\Drupal\layout_builder\Form\AddBlockForm'
    _title: 'Configure block'
  requirements:
    _layout_builder_access: 'add_block'
  options:
    _admin_route: TRUE
    parameters:
      section_storage:
        layout_builder_tempstore: TRUE

layout_builder.choose_inline_block:
  path: '/layout_builder/choose/inline-block/{section_storage_type}/{section_storage}/{delta}/{region}'
  defaults:
    _controller: '\Drupal\layout_builder\Controller\ChooseBlockController::inlineBlockList'
    _title: 'Add a new content block'
  requirements:
    _layout_builder_access: 'add_block'
  options:
    _admin_route: TRUE
    parameters:
      section_storage:
        layout_builder_tempstore: TRUE

layout_builder.update_block:
  path: '/layout_builder/update/block/{section_storage_type}/{section_storage}/{delta}/{region}/{uuid}'
  defaults:
    _form: '\Drupal\layout_builder\Form\UpdateBlockForm'
    _title: 'Configure block'
  requirements:
    _layout_builder_access: 'view'
  options:
    _admin_route: TRUE
    parameters:
      section_storage:
        layout_builder_tempstore: TRUE

layout_builder.move_block_form:
  path: '/layout_builder/move/block/{section_storage_type}/{section_storage}/{delta}/{region}/{uuid}'
  defaults:
    _title_callback: '\Drupal\layout_builder\Form\MoveBlockForm::title'
    _form: '\Drupal\layout_builder\Form\MoveBlockForm'
  requirements:
    _layout_builder_access: 'view'
  options:
    _admin_route: TRUE
    parameters:
      section_storage:
        layout_builder_tempstore: TRUE

layout_builder.remove_block:
  path: '/layout_builder/remove/block/{section_storage_type}/{section_storage}/{delta}/{region}/{uuid}'
  defaults:
    _form: '\Drupal\layout_builder\Form\RemoveBlockForm'
  requirements:
    _layout_builder_access: 'view'
  options:
    _admin_route: TRUE
    parameters:
      section_storage:
        layout_builder_tempstore: TRUE

layout_builder.move_block:
  path: '/layout_builder/move/block/{section_storage_type}/{section_storage}/{delta_from}/{delta_to}/{region_to}/{block_uuid}/{preceding_block_uuid}'
  defaults:
    _controller: '\Drupal\layout_builder\Controller\MoveBlockController::build'
    delta_from: null
    delta_to: null
    region_from: null
    region_to: null
    block_uuid: null
    preceding_block_uuid: null
  requirements:
    _layout_builder_access: 'view'
  options:
    _admin_route: TRUE
    parameters:
      section_storage:
        layout_builder_tempstore: TRUE
