field.field_settings.video:
  type: mapping
  label: 'Video settings'
  mapping:
    handler:
      type: string
      label: 'Reference method'
    handler_settings:
      type: entity_reference_selection.[%parent.handler]
      label: 'Entity reference selection settings'
    description_field:
      type: boolean
      label: 'Enable Description field'
    file_directory:
      type: string
      label: 'File directory'
    file_extensions:
      type: string
      label: 'Allowed file extensions'
    max_filesize:
      type: string
      label: 'Maximum upload size'

field.widget.settings.video_upload:
  type: mapping
  label: 'Video upload settings'
  mapping:
    progress_indicator:
      type: string
      label: 'Progress indicator'
    file_directory:
      type: string
      label: 'File directory'
    file_extensions:
      type: string
      label: 'Allowed file extensions'
    max_filesize:
      type: string
      label: 'Maximum upload size'
    uri_scheme:
      type: string
      label: 'Upload destination'

field.widget.settings.video_embed:
  type: mapping
  label: 'Video embed settings'
  mapping:
    allowed_providers:
      type: sequence
      label: 'Allowed Providers'
      sequence:
        type: ignore
    file_directory:
      type: string
      label: 'File directory'
    uri_scheme:
      type: string
      label: 'Upload destination'

field.formatter.settings.video_player:
  type: mapping
  label: 'Video player settings'
  mapping:
    controls:
      type: boolean
      label: 'Controls'
    autoplay:
      type: boolean
      label: 'Autoplay'
    loop:
      type: boolean
      label: 'Loop'
    muted:
      type: boolean
      label: 'Muted'
    width:
      type: string
      label: 'Width'
    height:
      type: string
      label: 'Height'
    preload:
      type: string
      label: 'Preload'

field.formatter.settings.video_player_list:
  type: mapping
  label: 'Video player settings'
  mapping:
    controls:
      type: boolean
      label: 'Controls'
    autoplay:
      type: boolean
      label: 'Autoplay'
    loop:
      type: boolean
      label: 'Loop'
    muted:
      type: boolean
      label: 'Muted'
    width:
      type: string
      label: 'Width'
    height:
      type: string
      label: 'Height'
    preload:
      type: string
      label: 'Preload'

field.formatter.settings.video_embed_thumbnail:
  type: mapping
  label: 'Video thumbnail settings'
  mapping:
    image_style:
      type: string
      label: 'Image Style'
    link_image_to:
      type: string
      label: 'Link image to'

field.formatter.settings.video_embed_player:
  type: mapping
  label: 'Video player settings'
  mapping:
    autoplay:
      type: boolean
      label: 'Autoplay'
    width:
      type: string
      label: 'Width'
    height:
      type: string
      label: 'Height'
    related_videos:
      type: boolean
      label: 'Related Videos'

field.storage_settings.video:
  type: field.storage_settings.file
  label: 'Video storage settings'
  mapping:
    default_video:
      type: mapping
      label: 'Default video settings'
      mapping:
        uuid:
          type: string
          label: 'UUID'
        data:
          type: string
          label: 'Additional data'
