Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / web / core / modules / field / migrations / d7_field_instance_widget_settings.yml
diff --git a/web/core/modules/field/migrations/d7_field_instance_widget_settings.yml b/web/core/modules/field/migrations/d7_field_instance_widget_settings.yml
new file mode 100644 (file)
index 0000000..14c1a8c
--- /dev/null
@@ -0,0 +1,74 @@
+id: d7_field_instance_widget_settings
+label: Field instance widget configuration
+migration_tags:
+  - Drupal 7
+  - Configuration
+class: Drupal\migrate_drupal\Plugin\migrate\FieldMigration
+field_plugin_method: processFieldWidget
+source:
+  plugin: d7_field_instance_per_form_display
+  constants:
+    form_mode: default
+    third_party_settings: { }
+process:
+  # We skip field types that don't exist because they weren't migrated by the
+  # field migration.
+  field_type_exists:
+    -
+      plugin: migration_lookup
+      migration: d7_field
+      source:
+        - field_name
+        - entity_type
+    -
+      plugin: extract
+      index:
+        - 0
+    -
+      plugin: skip_on_empty
+      method: row
+  # The bundle needs to be statically mapped in order to support comment types
+  # that might already exist before this migration is run. See
+  # d7_comment_type.yml for more information.
+  bundle:
+    plugin: static_map
+    source: bundle
+    bypass: true
+    map:
+      comment_node_forum: comment_forum
+  form_mode: 'constants/form_mode'
+  field_name: field_name
+  entity_type: entity_type
+  'options/weight': 'widget/weight'
+  widget_type:
+    plugin: process_field
+    source: type
+    method: getFieldWidgetType
+  'options/type':
+    type:
+      plugin: static_map
+      bypass: true
+      source: '@widget_type'
+      map:
+        link_field: link_default
+        email_textfield: email_default
+        date_select: datetime_default
+        date_text: datetime_default
+        date_popup: datetime_default
+        media_generic: file_generic
+        phone_textfield: telephone_default
+        options_onoff: boolean_checkbox
+        entityreference_autocomplete: entity_reference_autocomplete
+        entityreference_autocomplete_tags: entity_reference_autocomplete_tags
+        taxonomy_autocomplete: entity_reference_autocomplete
+  'options/settings':
+    plugin: field_instance_widget_settings
+    source:
+      - 'widget/type'
+      - 'widget/settings'
+  'options/third_party_settings': 'constants/third_party_settings'
+destination:
+  plugin: component_entity_form_display
+migration_dependencies:
+  required:
+    - d7_field_instance