def check()

in core/src/klio_core/config/_io.py [0:0]


    def check(self, attribute, value):
        def valid_field(field_dict):
            is_dict = isinstance(field_dict, dict)
            required_keys = [
                "name",
                "type",
                "mode",
            ]  # are all of these required?
            return is_dict and all(k in field_dict for k in required_keys)

        def contains_invalid_fields(field_list):
            return any(valid_field(f) is False for f in field_list)

        has_fields = value.get("fields")
        if not has_fields or contains_invalid_fields(value.get("fields", [])):
            raise ValueError(
                "Must be a dict with the key `fields` set to a list of"
                "dict, each of which have the keys "
                "`name`, `type`, and `mode`"
            )