def normalize_dict()

in ecs_logging/_utils.py [0:0]


def normalize_dict(value: Dict[str, Any]) -> Dict[str, Any]:
    """Expands all dotted names to nested dictionaries"""
    if not isinstance(value, dict):
        return value
    keys = list(value.keys())
    for key in keys:
        if "." in key:
            merge_dicts(de_dot(key, value.pop(key)), value)
    for key, val in value.items():
        if isinstance(val, dict):
            normalize_dict(val)
        elif isinstance(val, list):
            val[:] = [normalize_dict(x) for x in val]
    return value