File size: 1,957 Bytes
d3787d1
 
 
 
4177973
d3787d1
4177973
d3787d1
ae8fefb
d3787d1
 
 
 
 
1e0d5fb
ec6e2b2
4177973
d3787d1
 
4177973
d3787d1
 
 
4177973
d3787d1
4177973
d3787d1
 
 
 
 
 
 
ae8fefb
 
 
 
 
d3787d1
 
 
 
 
 
 
 
 
 
 
 
ec6e2b2
 
d3787d1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
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