migmag-1.0.x-dev/migmag_menu_link_migrate/migrations/migmag_unmigratable_menu_link_trap.yml
migmag_menu_link_migrate/migrations/migmag_unmigratable_menu_link_trap.yml
id: migmag_unmigratable_menu_link_trap source: plugin: embedded_data data_rows: [] ids: mlid: type: string source_module: menu constants: bundle: menu_link_content langcode: und missing_title_prefix: 'mlid #' missing_path_prefix: " (unavailable: '" missing_path_suffix: "')" menu_name_placeholder: '' path_missing: 'MISSING' process: # Trap should ignore mlid = 0. id: plugin: skip_on_empty source: mlid method: row langcode: 'constants/langcode' bundle: 'constants/bundle' source_data: plugin: callback source: mlid callable: - Drupal\migmag_menu_link_migrate\MigMagMenuLinkMigrate - getSourceMenuLinkData title_of_missing_menu_link: plugin: concat source: - 'constants/missing_title_prefix' - mlid title_raw: plugin: null_coalesce source: - '@source_data/link_title' - '@title_of_missing_menu_link' description: plugin: default_value source: '@source_data/description' default_value: NULL # Menu name will be set by migmag lookup. menu_name: 'constants/menu_name_placeholder' 'link/uri': - plugin: migmag_try process: - plugin: skip_on_empty source: '@source_data/link_path' method: process - plugin: link_uri catch: Drupal\migrate\MigrateException: ~ saveMessage: false - plugin: default_value default_value: 'route:<current>' 'link/options': plugin: default_value source: '@source_data/options' default_value: {} weight: plugin: default_value source: '@source_data/weight' default_value: 0 expanded: plugin: default_value source: '@source_data/expanded' default_value: 0 path_is_available: plugin: static_map source: '@link/uri' map: 'route:<current>': 0 default_value: 1 'source_data/link_path': plugin: null_coalesce source: - '@source_data/link_path' - 'constants/path_missing' title_suffix: - plugin: static_map source: '@path_is_available' map: 0: 'do not skip' 1: ~ - plugin: skip_on_empty method: process - plugin: concat source: - 'constants/missing_path_prefix' - '@source_data/link_path' - 'constants/missing_path_suffix' title: plugin: concat source: - '@title_raw' - '@title_suffix' enabled: plugin: static_map source: - '@path_is_available' - '@source_data/enabled' map: 1: 0: 0 1: 1 default_value: 0 destination: plugin: entity:menu_link_content