function jsonSchemaTypeFromEcsType()

in utils/create-schema.js [122:167]


function jsonSchemaTypeFromEcsType (type) {
  switch (type) {
    case 'keyword':
    case 'constant_keyword':
      return { type: 'string' }
    case 'boolean':
      return { type: 'boolean' }
    case 'date':
      return { type: 'string', format: 'date-time' }
    case 'ip':
      return {
        anyOf: [
          { type: 'string', format: 'ipv4' },
          { type: 'string', format: 'ipv6' }
        ]
      }
    case 'text':
    case 'match_only_text':
    case 'wildcard':
      return { type: 'string' }
    case 'integer':
      return { type: 'integer' }
    case 'long':
    case 'float':
    case 'scaled_float':
      return { type: 'number' }
    case 'geo_point':
      return {
        type: 'object',
        properties: {
          lat: { type: 'number' },
          lon: { type: 'number' }
        }
      }
    case 'object':
    case 'flattened':
    case 'nested':
    case 'source':
      return {
        type: 'object',
        additionalProperties: true
      }
    default:
      throw new Error(`Can't handle the type '${type}'`)
  }
}