# Migration configuration for program course content.
id: demo_uni_program_course
label: Courses for academic programs
migration_group: demo_uni
source:
  plugin: demo_uni_program_course
destination:
  plugin: entity:node
process:
  # Hardcode the destination node type (bundle) as 'pe_academic_program_course'.
  type:
    plugin: default_value
    default_value: pe_academic_program_course
  title: title
  'body/value': body
  'body/format':
    plugin: default_value
    default_value: basic_html
  uid:
    plugin: default_value
    default_value: 1
  promote:
    plugin: default_value
    default_value: 0
  sticky:
    plugin: default_value
    default_value: 0
  status: status
  field_academic_program:
    plugin: migration
    migration: demo_uni_program
    source: field_acad_program_id
  field_course:
    plugin: migration
    migration: demo_uni_course
    source: field_course_id
  field_academic_year:
    plugin: migration
    migration: demo_uni_acad_year
    source: field_acad_year_id
  field_academic_term:
    plugin: migration
    migration: demo_uni_acad_term
    source: field_acad_term_id
  field_course_weight:
    plugin: migration
    migration: demo_uni_term
    source: field_course_weight
  field_level:
    plugin: migration
    migration: demo_uni_term
    source: field_level
  field_teachers:
    plugin: migration
    migration: demo_uni_user
    source: field_teacher_id
  field_anti_requisites:
    plugin: migration
    migration: demo_uni_course
    source: field_antireq_id
  field_pre_requisites:
    plugin: migration
    migration: demo_uni_course
    source: field_prereq_id
  field_co_requisites:
    plugin: migration
    migration: demo_uni_course
    source: field_coreq_id
  field_non_requisites:
    plugin: migration
    migration: demo_uni_course
    source: field_nonreq_id
migration_dependencies:
  required:
    - demo_uni_term
    - demo_uni_program
    - demo_uni_course
    - demo_uni_acad_year
    - demo_uni_acad_term
    - demo_uni_user
