kerykeion 5.0.0a9__py3-none-any.whl → 5.1.8__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of kerykeion might be problematic. Click here for more details.
- kerykeion/__init__.py +50 -9
- kerykeion/aspects/__init__.py +5 -2
- kerykeion/aspects/aspects_factory.py +568 -0
- kerykeion/aspects/aspects_utils.py +78 -11
- kerykeion/astrological_subject_factory.py +1032 -275
- kerykeion/backword.py +820 -0
- kerykeion/chart_data_factory.py +552 -0
- kerykeion/charts/chart_drawer.py +2661 -0
- kerykeion/charts/charts_utils.py +652 -399
- kerykeion/charts/draw_planets.py +603 -353
- kerykeion/charts/templates/aspect_grid_only.xml +326 -198
- kerykeion/charts/templates/chart.xml +306 -256
- kerykeion/charts/templates/wheel_only.xml +330 -200
- kerykeion/charts/themes/black-and-white.css +148 -0
- kerykeion/charts/themes/classic.css +11 -0
- kerykeion/charts/themes/dark-high-contrast.css +11 -0
- kerykeion/charts/themes/dark.css +11 -0
- kerykeion/charts/themes/light.css +11 -0
- kerykeion/charts/themes/strawberry.css +10 -0
- kerykeion/composite_subject_factory.py +232 -13
- kerykeion/ephemeris_data_factory.py +443 -0
- kerykeion/fetch_geonames.py +78 -21
- kerykeion/house_comparison/__init__.py +4 -1
- kerykeion/house_comparison/house_comparison_factory.py +52 -19
- kerykeion/house_comparison/house_comparison_utils.py +37 -9
- kerykeion/kr_types/__init__.py +66 -6
- kerykeion/kr_types/chart_template_model.py +20 -0
- kerykeion/kr_types/kerykeion_exception.py +15 -9
- kerykeion/kr_types/kr_literals.py +14 -160
- kerykeion/kr_types/kr_models.py +14 -291
- kerykeion/kr_types/settings_models.py +15 -167
- kerykeion/planetary_return_factory.py +545 -40
- kerykeion/relationship_score_factory.py +137 -63
- kerykeion/report.py +749 -64
- kerykeion/schemas/__init__.py +106 -0
- kerykeion/schemas/chart_template_model.py +367 -0
- kerykeion/schemas/kerykeion_exception.py +20 -0
- kerykeion/schemas/kr_literals.py +181 -0
- kerykeion/schemas/kr_models.py +603 -0
- kerykeion/schemas/settings_models.py +188 -0
- kerykeion/settings/__init__.py +20 -1
- kerykeion/settings/chart_defaults.py +444 -0
- kerykeion/settings/config_constants.py +88 -12
- kerykeion/settings/kerykeion_settings.py +32 -75
- kerykeion/settings/translation_strings.py +1499 -0
- kerykeion/settings/translations.py +74 -0
- kerykeion/sweph/ast136/s136108s.se1 +0 -0
- kerykeion/sweph/ast136/s136199s.se1 +0 -0
- kerykeion/sweph/ast136/s136472s.se1 +0 -0
- kerykeion/sweph/ast28/se28978s.se1 +0 -0
- kerykeion/sweph/ast50/se50000s.se1 +0 -0
- kerykeion/sweph/ast90/se90377s.se1 +0 -0
- kerykeion/sweph/ast90/se90482s.se1 +0 -0
- kerykeion/sweph/sefstars.txt +1602 -0
- kerykeion/transits_time_range_factory.py +302 -0
- kerykeion/utilities.py +289 -204
- kerykeion-5.1.8.dist-info/METADATA +1793 -0
- kerykeion-5.1.8.dist-info/RECORD +63 -0
- kerykeion/aspects/natal_aspects.py +0 -181
- kerykeion/aspects/synastry_aspects.py +0 -141
- kerykeion/aspects/transits_time_range.py +0 -41
- kerykeion/charts/draw_planets_v2.py +0 -649
- kerykeion/charts/draw_planets_v3.py +0 -679
- kerykeion/charts/kerykeion_chart_svg.py +0 -2038
- kerykeion/enums.py +0 -57
- kerykeion/ephemeris_data.py +0 -238
- kerykeion/house_comparison/house_comparison_models.py +0 -38
- kerykeion/kr_types/chart_types.py +0 -106
- kerykeion/settings/kr.config.json +0 -1304
- kerykeion/settings/legacy/__init__.py +0 -0
- kerykeion/settings/legacy/legacy_celestial_points_settings.py +0 -299
- kerykeion/settings/legacy/legacy_chart_aspects_settings.py +0 -71
- kerykeion/settings/legacy/legacy_color_settings.py +0 -42
- kerykeion/transits_time_range.py +0 -128
- kerykeion-5.0.0a9.dist-info/METADATA +0 -636
- kerykeion-5.0.0a9.dist-info/RECORD +0 -55
- kerykeion-5.0.0a9.dist-info/entry_points.txt +0 -2
- {kerykeion-5.0.0a9.dist-info → kerykeion-5.1.8.dist-info}/WHEEL +0 -0
- {kerykeion-5.0.0a9.dist-info → kerykeion-5.1.8.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,30 +1,45 @@
|
|
|
1
|
+
"""
|
|
2
|
+
House Comparison Factory Module
|
|
3
|
+
|
|
4
|
+
Provides factory class for house comparison analysis between astrological subjects.
|
|
5
|
+
Enables bidirectional analysis of astrological point placements in house systems.
|
|
6
|
+
|
|
7
|
+
Author: Giacomo Battaglia
|
|
8
|
+
Copyright: (C) 2025 Kerykeion Project
|
|
9
|
+
License: AGPL-3.0
|
|
10
|
+
"""
|
|
11
|
+
|
|
1
12
|
from kerykeion.house_comparison.house_comparison_utils import calculate_points_in_reciprocal_houses
|
|
2
13
|
from typing import Union
|
|
3
|
-
from kerykeion.settings.config_constants import DEFAULT_ACTIVE_POINTS
|
|
4
|
-
from kerykeion.
|
|
14
|
+
from kerykeion.settings.config_constants import DEFAULT_ACTIVE_POINTS
|
|
15
|
+
from kerykeion.schemas.kr_models import HouseComparisonModel
|
|
5
16
|
from kerykeion.astrological_subject_factory import AstrologicalSubjectFactory
|
|
6
|
-
from kerykeion.
|
|
7
|
-
from kerykeion.
|
|
17
|
+
from kerykeion.schemas import AstrologicalSubjectModel, PlanetReturnModel
|
|
18
|
+
from kerykeion.schemas.kr_literals import AstrologicalPoint
|
|
8
19
|
|
|
9
20
|
|
|
10
21
|
class HouseComparisonFactory:
|
|
11
22
|
"""
|
|
12
|
-
Factory
|
|
23
|
+
Factory for creating house comparison analyses between two astrological subjects.
|
|
13
24
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
25
|
+
Analyzes placement of astrological points from one subject within the house system
|
|
26
|
+
of another subject, performing bidirectional analysis for synastry studies and
|
|
27
|
+
subject comparisons. Supports both natal subjects and planetary return subjects.
|
|
17
28
|
|
|
18
29
|
Attributes:
|
|
19
|
-
first_subject
|
|
20
|
-
second_subject
|
|
30
|
+
first_subject: First astrological subject (natal or return subject)
|
|
31
|
+
second_subject: Second astrological subject (natal or return subject)
|
|
32
|
+
active_points: List of astrological points to include in analysis
|
|
21
33
|
|
|
22
34
|
Example:
|
|
23
|
-
>>> natal_chart = AstrologicalSubjectFactory.from_birth_data(
|
|
24
|
-
|
|
35
|
+
>>> natal_chart = AstrologicalSubjectFactory.from_birth_data(
|
|
36
|
+
... "Person A", 1990, 5, 15, 10, 30, "Rome", "IT"
|
|
37
|
+
... )
|
|
38
|
+
>>> partner_chart = AstrologicalSubjectFactory.from_birth_data(
|
|
39
|
+
... "Person B", 1992, 8, 23, 14, 45, "Milan", "IT"
|
|
40
|
+
... )
|
|
25
41
|
>>> factory = HouseComparisonFactory(natal_chart, partner_chart)
|
|
26
42
|
>>> comparison = factory.get_house_comparison()
|
|
27
|
-
>>> print(comparison.model_dump_json(indent=4))
|
|
28
43
|
|
|
29
44
|
"""
|
|
30
45
|
def __init__(self,
|
|
@@ -33,21 +48,39 @@ class HouseComparisonFactory:
|
|
|
33
48
|
active_points: list[AstrologicalPoint] = DEFAULT_ACTIVE_POINTS,
|
|
34
49
|
|
|
35
50
|
):
|
|
51
|
+
"""
|
|
52
|
+
Initialize the house comparison factory.
|
|
53
|
+
|
|
54
|
+
Args:
|
|
55
|
+
first_subject: First astrological subject for comparison
|
|
56
|
+
second_subject: Second astrological subject for comparison
|
|
57
|
+
active_points: List of astrological points to include in analysis.
|
|
58
|
+
Defaults to standard active points.
|
|
59
|
+
|
|
60
|
+
Note:
|
|
61
|
+
Both subjects must have valid house system data for accurate analysis.
|
|
62
|
+
"""
|
|
36
63
|
self.first_subject = first_subject
|
|
37
64
|
self.second_subject = second_subject
|
|
38
65
|
self.active_points = active_points
|
|
39
66
|
|
|
40
67
|
def get_house_comparison(self) -> "HouseComparisonModel":
|
|
41
68
|
"""
|
|
42
|
-
|
|
69
|
+
Generate bidirectional house comparison analysis between the two subjects.
|
|
43
70
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
chart2: Second astrological subject
|
|
47
|
-
description: Description of the comparison
|
|
71
|
+
Calculates where each active astrological point from one subject falls within
|
|
72
|
+
the house system of the other subject, and vice versa.
|
|
48
73
|
|
|
49
74
|
Returns:
|
|
50
|
-
|
|
75
|
+
HouseComparisonModel: Model containing:
|
|
76
|
+
- first_subject_name: Name of the first subject
|
|
77
|
+
- second_subject_name: Name of the second subject
|
|
78
|
+
- first_points_in_second_houses: First subject's points in second subject's houses
|
|
79
|
+
- second_points_in_first_houses: Second subject's points in first subject's houses
|
|
80
|
+
|
|
81
|
+
Note:
|
|
82
|
+
Analysis scope is determined by the active_points list. Only specified
|
|
83
|
+
points will be included in the results.
|
|
51
84
|
"""
|
|
52
85
|
first_points_in_second_houses = calculate_points_in_reciprocal_houses(self.first_subject, self.second_subject, self.active_points)
|
|
53
86
|
second_points_in_first_houses = calculate_points_in_reciprocal_houses(self.second_subject, self.first_subject, self.active_points)
|
|
@@ -1,9 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"""
|
|
2
|
+
House Comparison Utilities
|
|
3
|
+
|
|
4
|
+
Utility functions for calculating house placement relationships between astrological subjects.
|
|
5
|
+
Provides core calculation logic for determining where points from one subject fall within
|
|
6
|
+
another subject's house system.
|
|
7
|
+
|
|
8
|
+
Author: Giacomo Battaglia
|
|
9
|
+
Copyright: (C) 2025 Kerykeion Project
|
|
10
|
+
License: AGPL-3.0
|
|
11
|
+
"""
|
|
12
|
+
|
|
13
|
+
from kerykeion.schemas.kr_models import AstrologicalSubjectModel, PlanetReturnModel, PointInHouseModel
|
|
14
|
+
from kerykeion.schemas.kr_literals import AstrologicalPoint
|
|
4
15
|
from kerykeion.settings.config_constants import DEFAULT_ACTIVE_POINTS
|
|
5
16
|
from kerykeion.utilities import get_planet_house, get_house_number
|
|
6
|
-
from kerykeion.house_comparison.house_comparison_models import PointInHouseModel
|
|
7
17
|
from typing import Union
|
|
8
18
|
|
|
9
19
|
|
|
@@ -13,15 +23,33 @@ def calculate_points_in_reciprocal_houses(
|
|
|
13
23
|
active_points: list[AstrologicalPoint] = DEFAULT_ACTIVE_POINTS,
|
|
14
24
|
) -> list[PointInHouseModel]:
|
|
15
25
|
"""
|
|
16
|
-
|
|
26
|
+
Calculate house placements of one subject's points within another subject's house system.
|
|
27
|
+
|
|
28
|
+
Analyzes where each astrological point from the point_subject falls within the
|
|
29
|
+
house structure of the house_subject. Creates detailed mapping including both
|
|
30
|
+
the point's original house position and its projected house placement.
|
|
17
31
|
|
|
18
32
|
Args:
|
|
19
|
-
point_subject: Subject whose points are being analyzed
|
|
20
|
-
house_subject: Subject whose
|
|
21
|
-
active_points:
|
|
33
|
+
point_subject: Subject whose astrological points are being analyzed
|
|
34
|
+
house_subject: Subject whose house system provides the projection framework
|
|
35
|
+
active_points: List of astrological points to include in the analysis.
|
|
36
|
+
Defaults to standard active points configuration.
|
|
22
37
|
|
|
23
38
|
Returns:
|
|
24
|
-
List of
|
|
39
|
+
list[PointInHouseModel]: List of point placement models containing detailed
|
|
40
|
+
information about each point's house relationships,
|
|
41
|
+
including original and projected house positions.
|
|
42
|
+
|
|
43
|
+
Note:
|
|
44
|
+
Only processes points that exist in both the point_subject's active_points
|
|
45
|
+
and the provided active_points list. Points with None values are skipped.
|
|
46
|
+
|
|
47
|
+
Example:
|
|
48
|
+
>>> points_in_houses = calculate_points_in_reciprocal_houses(
|
|
49
|
+
... natal_chart, partner_chart, ["Sun", "Moon"]
|
|
50
|
+
... )
|
|
51
|
+
>>> sun_placement = points_in_houses[0] # Assuming Sun is first
|
|
52
|
+
>>> print(f"Sun falls in house: {sun_placement.projected_house_name}")
|
|
25
53
|
"""
|
|
26
54
|
points_in_houses: list[PointInHouseModel] = []
|
|
27
55
|
|
kerykeion/kr_types/__init__.py
CHANGED
|
@@ -1,10 +1,70 @@
|
|
|
1
1
|
# -*- coding: utf-8 -*-
|
|
2
2
|
"""
|
|
3
|
-
|
|
3
|
+
Backward compatibility module for Kerykeion v4.x imports.
|
|
4
|
+
|
|
5
|
+
DEPRECATED: This module will be removed in Kerykeion v6.0.
|
|
6
|
+
Please update your imports:
|
|
7
|
+
OLD: from kerykeion.kr_types import ...
|
|
8
|
+
NEW: from kerykeion.schemas import ...
|
|
4
9
|
"""
|
|
10
|
+
import warnings
|
|
11
|
+
|
|
12
|
+
# Issue deprecation warning when this module is imported
|
|
13
|
+
warnings.warn(
|
|
14
|
+
"The 'kerykeion.kr_types' module is deprecated and will be removed in v6.0. "
|
|
15
|
+
"Please update your imports to use 'kerykeion.schemas' instead.",
|
|
16
|
+
DeprecationWarning,
|
|
17
|
+
stacklevel=2,
|
|
18
|
+
)
|
|
19
|
+
|
|
20
|
+
# Re-export everything from schemas for backward compatibility
|
|
21
|
+
from kerykeion.schemas import * # noqa: F401, F403
|
|
22
|
+
from kerykeion.schemas.kerykeion_exception import * # noqa: F401, F403
|
|
23
|
+
from kerykeion.schemas.kr_literals import * # noqa: F401, F403
|
|
24
|
+
from kerykeion.schemas.kr_models import * # noqa: F401, F403
|
|
25
|
+
from kerykeion.schemas.settings_models import * # noqa: F401, F403
|
|
26
|
+
from kerykeion.schemas.chart_template_model import * # noqa: F401, F403
|
|
5
27
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
28
|
+
__all__ = [
|
|
29
|
+
# Re-export from schemas
|
|
30
|
+
"KerykeionException",
|
|
31
|
+
# kr_literals
|
|
32
|
+
"ZodiacType",
|
|
33
|
+
"Sign",
|
|
34
|
+
"SignNumbers",
|
|
35
|
+
"AspectMovementType",
|
|
36
|
+
"Houses",
|
|
37
|
+
"HouseNumbers",
|
|
38
|
+
"AstrologicalPoint",
|
|
39
|
+
"Element",
|
|
40
|
+
"Quality",
|
|
41
|
+
"ChartType",
|
|
42
|
+
"PointType",
|
|
43
|
+
"LunarPhaseEmoji",
|
|
44
|
+
"LunarPhaseName",
|
|
45
|
+
"SiderealMode",
|
|
46
|
+
"HousesSystemIdentifier",
|
|
47
|
+
"PerspectiveType",
|
|
48
|
+
"SignsEmoji",
|
|
49
|
+
"KerykeionChartTheme",
|
|
50
|
+
"KerykeionChartLanguage",
|
|
51
|
+
"RelationshipScoreDescription",
|
|
52
|
+
"CompositeChartType",
|
|
53
|
+
"AspectName",
|
|
54
|
+
# kr_models
|
|
55
|
+
"AstrologicalSubjectModel",
|
|
56
|
+
"CompositeSubjectModel",
|
|
57
|
+
"KerykeionPointModel",
|
|
58
|
+
"AspectModel",
|
|
59
|
+
"ActiveAspect",
|
|
60
|
+
"SingleChartAspectsModel",
|
|
61
|
+
"DualChartAspectsModel",
|
|
62
|
+
"ElementDistributionModel",
|
|
63
|
+
"QualityDistributionModel",
|
|
64
|
+
"SingleChartDataModel",
|
|
65
|
+
"DualChartDataModel",
|
|
66
|
+
# settings_models
|
|
67
|
+
"KerykeionSettingsModel",
|
|
68
|
+
# chart_template_model
|
|
69
|
+
"ChartTemplateModel",
|
|
70
|
+
]
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
"""
|
|
3
|
+
Backward compatibility module for chart_template_model.
|
|
4
|
+
|
|
5
|
+
DEPRECATED: This module will be removed in Kerykeion v6.0.
|
|
6
|
+
Please update your imports:
|
|
7
|
+
OLD: from kerykeion.kr_types.chart_template_model import ...
|
|
8
|
+
NEW: from kerykeion.schemas.chart_template_model import ...
|
|
9
|
+
"""
|
|
10
|
+
import warnings
|
|
11
|
+
|
|
12
|
+
warnings.warn(
|
|
13
|
+
"The 'kerykeion.kr_types.chart_template_model' module is deprecated and will be removed in v6.0. "
|
|
14
|
+
"Please update your imports to use 'kerykeion.schemas.chart_template_model' instead.",
|
|
15
|
+
DeprecationWarning,
|
|
16
|
+
stacklevel=2,
|
|
17
|
+
)
|
|
18
|
+
|
|
19
|
+
# Re-export everything from schemas.chart_template_model for backward compatibility
|
|
20
|
+
from kerykeion.schemas.chart_template_model import * # noqa: F401, F403
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
# -*- coding: utf-8 -*-
|
|
2
2
|
"""
|
|
3
|
-
|
|
4
|
-
"""
|
|
3
|
+
Backward compatibility module for kerykeion_exception.
|
|
5
4
|
|
|
5
|
+
DEPRECATED: This module will be removed in Kerykeion v6.0.
|
|
6
|
+
Please update your imports:
|
|
7
|
+
OLD: from kerykeion.kr_types.kerykeion_exception import ...
|
|
8
|
+
NEW: from kerykeion.schemas.kerykeion_exception import ...
|
|
9
|
+
"""
|
|
10
|
+
import warnings
|
|
6
11
|
|
|
7
|
-
|
|
8
|
-
""
|
|
9
|
-
|
|
10
|
-
|
|
12
|
+
warnings.warn(
|
|
13
|
+
"The 'kerykeion.kr_types.kerykeion_exception' module is deprecated and will be removed in v6.0. "
|
|
14
|
+
"Please update your imports to use 'kerykeion.schemas.kerykeion_exception' instead.",
|
|
15
|
+
DeprecationWarning,
|
|
16
|
+
stacklevel=2,
|
|
17
|
+
)
|
|
11
18
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
super().__init__(message)
|
|
19
|
+
# Re-export everything from schemas.kerykeion_exception for backward compatibility
|
|
20
|
+
from kerykeion.schemas.kerykeion_exception import * # noqa: F401, F403
|
|
@@ -1,166 +1,20 @@
|
|
|
1
1
|
# -*- coding: utf-8 -*-
|
|
2
2
|
"""
|
|
3
|
-
|
|
4
|
-
"""
|
|
5
|
-
from typing import Literal
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
ZodiacType = Literal["Tropic", "Sidereal"]
|
|
9
|
-
"""Literal type for Zodiac Types"""
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
Sign = Literal["Ari", "Tau", "Gem", "Can", "Leo", "Vir", "Lib", "Sco", "Sag", "Cap", "Aqu", "Pis"]
|
|
13
|
-
"""Literal type for Zodiac Signs"""
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
SignNumbers = Literal[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
|
|
17
|
-
"""Literal type for Zodiac Sign Numbers, the signs are numbered in order starting from Aries (0) to Pis (11)"""
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
Houses = Literal["First_House", "Second_House", "Third_House", "Fourth_House", "Fifth_House", "Sixth_House", "Seventh_House", "Eighth_House", "Ninth_House", "Tenth_House", "Eleventh_House", "Twelfth_House"]
|
|
21
|
-
"""Literal type for Houses"""
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
HouseNumbers = Literal[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
|
|
25
|
-
"""Literal type for House Numbers, starting from the First House (1) to the Twelfth House (12)"""
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
AstrologicalPoint = Literal[
|
|
29
|
-
# Main Planets
|
|
30
|
-
"Sun", "Moon", "Mercury", "Venus", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune", "Pluto",
|
|
31
|
-
|
|
32
|
-
# Nodes
|
|
33
|
-
"Mean_Node", "True_Node", "Mean_South_Node", "True_South_Node",
|
|
34
|
-
|
|
35
|
-
# Special Points
|
|
36
|
-
"Chiron", "Mean_Lilith", "True_Lilith", "Earth", "Pholus",
|
|
37
|
-
|
|
38
|
-
# Asteroids
|
|
39
|
-
"Ceres", "Pallas", "Juno", "Vesta",
|
|
40
|
-
|
|
41
|
-
# Trans-Neptunian Objects
|
|
42
|
-
"Eris", "Sedna", "Haumea", "Makemake", "Ixion", "Orcus", "Quaoar",
|
|
43
|
-
|
|
44
|
-
# Fixed Stars
|
|
45
|
-
"Regulus", "Spica",
|
|
46
|
-
|
|
47
|
-
# Arabic Parts
|
|
48
|
-
"Pars_Fortunae", "Pars_Spiritus", "Pars_Amoris", "Pars_Fidei",
|
|
49
|
-
|
|
50
|
-
# Special Points
|
|
51
|
-
"Vertex", "Anti_Vertex",
|
|
52
|
-
|
|
53
|
-
# Axial Cusps
|
|
54
|
-
"Ascendant", "Medium_Coeli", "Descendant", "Imum_Coeli",
|
|
55
|
-
]
|
|
56
|
-
|
|
57
|
-
"""Literal type for Axial Cusps"""
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
Element = Literal["Air", "Fire", "Earth", "Water"]
|
|
61
|
-
"""Literal type for Elements"""
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
Quality = Literal["Cardinal", "Fixed", "Mutable"]
|
|
65
|
-
"""Literal type for Qualities"""
|
|
66
|
-
|
|
3
|
+
Backward compatibility module for kr_literals.
|
|
67
4
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
PointType = Literal["AstrologicalPoint", "House"]
|
|
73
|
-
"""Literal type for Point Types"""
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
LunarPhaseEmoji = Literal["🌑", "🌒", "🌓", "🌔", "🌕", "🌖", "🌗", "🌘"]
|
|
77
|
-
"""Literal type for Lunar Phases Emoji"""
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
LunarPhaseName = Literal["New Moon", "Waxing Crescent", "First Quarter", "Waxing Gibbous", "Full Moon", "Waning Gibbous", "Last Quarter", "Waning Crescent"]
|
|
81
|
-
"""Literal type for Lunar Phases Name"""
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
SiderealMode = Literal["FAGAN_BRADLEY", "LAHIRI", "DELUCE", "RAMAN", "USHASHASHI", "KRISHNAMURTI", "DJWHAL_KHUL", "YUKTESHWAR", "JN_BHASIN", "BABYL_KUGLER1", "BABYL_KUGLER2", "BABYL_KUGLER3", "BABYL_HUBER", "BABYL_ETPSC", "ALDEBARAN_15TAU", "HIPPARCHOS", "SASSANIAN", "J2000", "J1900", "B1950"]
|
|
85
|
-
"""Literal type for Sidereal Modes, as known as Ayanamsa"""
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
HousesSystemIdentifier = Literal["A", "B", "C", "D", "F", "H", "I", "i", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y"]
|
|
5
|
+
DEPRECATED: This module will be removed in Kerykeion v6.0.
|
|
6
|
+
Please update your imports:
|
|
7
|
+
OLD: from kerykeion.kr_types.kr_literals import ...
|
|
8
|
+
NEW: from kerykeion.schemas.kr_literals import ...
|
|
89
9
|
"""
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
A = equal
|
|
93
|
-
B = Alcabitius
|
|
94
|
-
C = Campanus
|
|
95
|
-
D = equal (MC)
|
|
96
|
-
F = Carter poli-equ.
|
|
97
|
-
H = horizon/azimut
|
|
98
|
-
I = Sunshine
|
|
99
|
-
i = Sunshine/alt.
|
|
100
|
-
K = Koch
|
|
101
|
-
L = Pullen SD
|
|
102
|
-
M = Morinus
|
|
103
|
-
N = equal/1=Aries
|
|
104
|
-
O = Porphyry
|
|
105
|
-
P = Placidus
|
|
106
|
-
Q = Pullen SR
|
|
107
|
-
R = Regiomontanus
|
|
108
|
-
S = Sripati
|
|
109
|
-
T = Polich/Page
|
|
110
|
-
U = Krusinski-Pisa-Goelzer
|
|
111
|
-
V = equal/Vehlow
|
|
112
|
-
W = equal/whole sign
|
|
113
|
-
X = axial rotation system/Meridian houses
|
|
114
|
-
Y = APC houses
|
|
115
|
-
|
|
116
|
-
Usually the standard is Placidus (P)
|
|
117
|
-
"""
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
PerspectiveType = Literal["Apparent Geocentric", "Heliocentric", "Topocentric", "True Geocentric"]
|
|
121
|
-
"""
|
|
122
|
-
Literal type for perspective types.
|
|
123
|
-
- "Apparent Geocentric": Earth-centered, apparent positions.
|
|
124
|
-
- "Heliocentric": Sun-centered.
|
|
125
|
-
- "Topocentric": Observer's location on Earth's surface.
|
|
126
|
-
- "True Geocentric": Earth-centered, true positions.
|
|
127
|
-
|
|
128
|
-
Usually the standard is "Apparent Geocentric"
|
|
129
|
-
"""
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
SignsEmoji = Literal["♈️", "♉️", "♊️", "♋️", "♌️", "♍️", "♎️", "♏️", "♐️", "♑️", "♒️", "♓️"]
|
|
133
|
-
"""Literal type for Zodiac Signs Emoji"""
|
|
134
|
-
|
|
135
|
-
KerykeionChartTheme = Literal["light", "dark", "dark-high-contrast", "classic", "strawberry"]
|
|
136
|
-
"""Literal type for Kerykeion Chart Themes"""
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
KerykeionChartLanguage = Literal["EN", "FR", "PT", "IT", "CN", "ES", "RU", "TR", "DE", "HI"]
|
|
140
|
-
"""Literal type for Kerykeion Chart Languages"""
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
RelationshipScoreDescription = Literal["Minimal", "Medium", "Important", "Very Important", "Exceptional", "Rare Exceptional"]
|
|
144
|
-
"""Literal type for Relationship Score Description"""
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
CompositeChartType = Literal["Midpoint"]
|
|
148
|
-
"""Literal type for Composite Chart Types"""
|
|
10
|
+
import warnings
|
|
149
11
|
|
|
150
|
-
|
|
151
|
-
"
|
|
152
|
-
"
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
"square",
|
|
157
|
-
"trine",
|
|
158
|
-
"sesquiquadrate",
|
|
159
|
-
"biquintile",
|
|
160
|
-
"quincunx",
|
|
161
|
-
"opposition"
|
|
162
|
-
]
|
|
163
|
-
"""Literal type for all the available aspects names"""
|
|
12
|
+
warnings.warn(
|
|
13
|
+
"The 'kerykeion.kr_types.kr_literals' module is deprecated and will be removed in v6.0. "
|
|
14
|
+
"Please update your imports to use 'kerykeion.schemas.kr_literals' instead.",
|
|
15
|
+
DeprecationWarning,
|
|
16
|
+
stacklevel=2,
|
|
17
|
+
)
|
|
164
18
|
|
|
165
|
-
|
|
166
|
-
|
|
19
|
+
# Re-export everything from schemas.kr_literals for backward compatibility
|
|
20
|
+
from kerykeion.schemas.kr_literals import * # noqa: F401, F403
|