diff options
Diffstat (limited to 'pydis_site')
| -rw-r--r-- | pydis_site/apps/resources/utils.py | 28 | 
1 files changed, 10 insertions, 18 deletions
| diff --git a/pydis_site/apps/resources/utils.py b/pydis_site/apps/resources/utils.py index 3c8571ef..bb812ec0 100644 --- a/pydis_site/apps/resources/utils.py +++ b/pydis_site/apps/resources/utils.py @@ -15,26 +15,18 @@ default_categories = [  ] -def get_resources_meta() -> dict: -    all_resources = get_resources() +def get_resources() -> list[dict[str, t.Union[list[str], str]]]: +    """Loads resource YAMLs from provided path.""" +    return [yaml.safe_load(item.read_text()) for item in RESOURCES_PATH.rglob("*.yaml")] -    resource_meta_tags = {x: set() for x in default_categories} -    for resource in all_resources: -        tags = resource.get("tags") +def get_resources_meta() -> dict[str, list[str]]: +    """Combines the tags from each resource into one dictionary of unique tags.""" +    resource_meta_tags = {x: set() for x in default_categories} -        for tag_key, tag_values in tags.items(): +    for resource in get_resources(): +        for tag_key, tag_values in resource.get("tags").items():              for tag_item in tag_values: -                resource_meta_tags[tag_key].add(tag_item) - -    return resource_meta_tags - - -def get_resources() -> t.List[t.Dict]: -    """Loads resource YAMLs from provided path.""" -    resources = [] - -    for item in RESOURCES_PATH.rglob("*.yaml"): -        resources.append(yaml.safe_load(item.read_text())) +                resource_meta_tags[tag_key].add(tag_item.title().replace('And', 'and', -1)) -    return resources +    return {key: sorted(value) for key, value in resource_meta_tags.items()} | 
