plugin.plugin_configuration.geolocation.location_input.client_location:
  type: geolocation.location_input_settings
  label: 'Client location'
  mapping:
    settings:
      type: mapping
      mapping:
        hide_form:
          type: boolean
        auto_submit:
          type: boolean

plugin.plugin_configuration.geolocation.location_input.coordinates:
  type: geolocation.location_input_settings
  label: 'Coordinates'

plugin.plugin_configuration.geolocation.location_input.geocoder:
  type: geolocation.location_input_settings
  label: 'Geocoder'
  mapping:
    settings:
      type: mapping
      mapping:
        plugin_id:
          type: string
        settings:
          type: geolocation.geocoder.[%parent.plugin_id]
        hide_form:
          type: boolean
        auto_submit:
          type: boolean

plugin.plugin_configuration.geolocation.location_input.location_plugins:
  type: geolocation.location_input_settings
  label: 'Location Plugins'
  mapping:
    settings:
      type: mapping
      mapping:
        location_settings:
          type: plugin.plugin_configuration.geolocation.location.[%parent.location_plugin_id]
        location_plugin_id:
          type: string
