id: d7_filter_format
label: Filter format configuration
migration_tags:
  - Drupal 7
  - Configuration
source:
  plugin: d7_filter_format
process:
  format: format
  status: status
  name: name
  cache: cache
  weight: weight
  filters:
    plugin: sub_process
    source: filters
    key: '@id'
    process:
      id:
        # If the filter ID cannot be mapped, it will pass through unmodified
        # because the bypass flag is set. When the user actually tries to
        # view text through an invalid filter plugin, the filter system will
        # fall back to filter_null and display a helpful error message.
        plugin: filter_id
        bypass: true
        source: name
        # Although core filter plugin IDs haven't changed since Drupal 7, we map
        # the contrib filters of the Editor module – those are the Drupal 7
        # backport of some of the new filters in Drupal 8 core. Hence Drupal 8
        # core is responsible for providing an upgrade path for those contrib
        # filters.
        map:
          editor_caption: filter_caption
          editor_align: filter_align
      settings:
        plugin: filter_settings
        source: settings
      status:
        plugin: default_value
        default_value: true
      weight: weight
destination:
  plugin: entity:filter_format
