Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
| from dataclasses import dataclass | |
| from typing import List | |
| from pydantic import BaseModel | |
| class ScriptureCategoryConstants: | |
| LITERATURE: str = "literature" | |
| SRI_SOOKTHI: str = "sri_sookthi" | |
| VEDAM: str = "vedam" | |
| ITHIHASAM: str = "ithihasam" | |
| PURANAM: str = "puranam" | |
| STOTRAM: str = "stotram" | |
| SOCIAL_MEDIA: str = "social" | |
| VEDANTA: str = "vedanta" | |
| GRANTHAM: str = "grantham" | |
| class ScriptureCategory: | |
| name: str | |
| title: str | |
| class ScriptureCategories: | |
| categories: list[ScriptureCategory] | |
| scripture_categories = ScriptureCategories( | |
| categories=[ | |
| ScriptureCategory( | |
| name=ScriptureCategoryConstants.LITERATURE, | |
| title="Azhwar's Arulicheyal", | |
| ), | |
| ScriptureCategory( | |
| name=ScriptureCategoryConstants.SRI_SOOKTHI, | |
| title="Acharya Sri Sookthis", | |
| ), | |
| ScriptureCategory( | |
| name=ScriptureCategoryConstants.VEDAM, title="Vedas & Upanishads" | |
| ), | |
| ScriptureCategory( | |
| name=ScriptureCategoryConstants.ITHIHASAM, title="Ithihasams" | |
| ), | |
| ScriptureCategory(name=ScriptureCategoryConstants.PURANAM, title="Puranams"), | |
| ScriptureCategory(name=ScriptureCategoryConstants.STOTRAM, title="Stotrams"), | |
| ScriptureCategory( | |
| name=ScriptureCategoryConstants.SOCIAL_MEDIA, title="Social Media" | |
| ), | |
| ScriptureCategory(name=ScriptureCategoryConstants.VEDANTA, title="Vedanta"), | |
| ScriptureCategory(name=ScriptureCategoryConstants.GRANTHAM, title="Granthams"), | |
| ] | |
| ) | |
| def get_scripture_category_by_name(name: str): | |
| matches = [ | |
| category | |
| for category in scripture_categories.categories | |
| if category.name == name | |
| ] | |
| if matches: | |
| return matches[0] | |
| else: | |
| raise Exception(f"No category found by name [{name}]!") | |
| def get_scripture_categories(): | |
| return scripture_categories | |