1"""
2Utilies for beacons
3"""
4
5import copy
6
7
8def remove_hidden_options(config, whitelist):
9    """
10    Remove any hidden options not whitelisted
11    """
12    for entry in copy.copy(config):
13        for func in entry:
14            if func.startswith("_") and func not in whitelist:
15                config.remove(entry)
16    return config
17
18
19def list_to_dict(config):
20    """
21    Convert list based beacon configuration
22    into a dictionary.
23    """
24    _config = {}
25    list(map(_config.update, config))
26    return _config
27