def find_values_removed_from_enums(
    old_schema: GraphQLSchema, new_schema: GraphQLSchema
) -> List[BreakingChange]:
    """Find values removed from enums.

    Given two schemas, returns a list containing descriptions of any breaking changes
    in the new_schema related to removing values from an enum type.
    """
    old_type_map = old_schema.type_map
    new_type_map = new_schema.type_map

    values_removed_from_enums = []
    for type_name, old_type in old_type_map.items():
        new_type = new_type_map.get(type_name)
        if not (is_enum_type(old_type) and is_enum_type(new_type)):
            continue
        old_type = cast(GraphQLEnumType, old_type)
        new_type = cast(GraphQLEnumType, new_type)
        values_in_new_enum = new_type.values
        for value_name in old_type.values:
            if value_name not in values_in_new_enum:
                values_removed_from_enums.append(
                    BreakingChange(
                        BreakingChangeType.VALUE_REMOVED_FROM_ENUM,
                        f"{value_name} was removed from enum type {type_name}.",
                    )
                )
    return values_removed_from_enums
Find values removed from enums.

    Given two schemas, returns a list containing descriptions of any breaking changes
    in the new_schema related to removing values from an enum type.