sanatan_ai / modules /config /categories.py
vikramvasudevan's picture
Upload folder using huggingface_hub
ae8fefb verified
from dataclasses import dataclass
from typing import List
from pydantic import BaseModel
@dataclass
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"
@dataclass
class ScriptureCategory:
name: str
title: str
@dataclass
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