kerykeion 4.26.3__py3-none-any.whl → 5.0.0__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 +54 -11
- kerykeion/aspects/__init__.py +5 -2
- kerykeion/aspects/aspects_factory.py +569 -0
- kerykeion/aspects/aspects_utils.py +81 -8
- kerykeion/astrological_subject_factory.py +1897 -0
- kerykeion/backword.py +773 -0
- kerykeion/chart_data_factory.py +549 -0
- kerykeion/charts/chart_drawer.py +2601 -0
- kerykeion/charts/charts_utils.py +948 -177
- kerykeion/charts/draw_planets.py +602 -351
- kerykeion/charts/templates/aspect_grid_only.xml +328 -202
- kerykeion/charts/templates/chart.xml +432 -272
- kerykeion/charts/templates/wheel_only.xml +350 -214
- kerykeion/charts/themes/black-and-white.css +148 -0
- kerykeion/charts/themes/classic.css +107 -76
- kerykeion/charts/themes/dark-high-contrast.css +145 -107
- kerykeion/charts/themes/dark.css +146 -107
- kerykeion/charts/themes/light.css +146 -103
- kerykeion/charts/themes/strawberry.css +158 -0
- kerykeion/composite_subject_factory.py +253 -51
- kerykeion/ephemeris_data_factory.py +434 -0
- kerykeion/fetch_geonames.py +27 -8
- kerykeion/house_comparison/__init__.py +6 -0
- kerykeion/house_comparison/house_comparison_factory.py +103 -0
- kerykeion/house_comparison/house_comparison_utils.py +126 -0
- 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 -132
- kerykeion/kr_types/kr_models.py +14 -318
- kerykeion/kr_types/settings_models.py +15 -203
- kerykeion/planetary_return_factory.py +805 -0
- kerykeion/relationship_score_factory.py +301 -0
- kerykeion/report.py +751 -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 +605 -0
- kerykeion/schemas/settings_models.py +180 -0
- kerykeion/settings/__init__.py +20 -1
- kerykeion/settings/chart_defaults.py +444 -0
- kerykeion/settings/config_constants.py +117 -12
- kerykeion/settings/kerykeion_settings.py +31 -73
- kerykeion/settings/translation_strings.py +1479 -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 +393 -114
- kerykeion-5.0.0.dist-info/METADATA +1176 -0
- kerykeion-5.0.0.dist-info/RECORD +63 -0
- {kerykeion-4.26.3.dist-info → kerykeion-5.0.0.dist-info}/WHEEL +1 -1
- kerykeion/aspects/natal_aspects.py +0 -172
- kerykeion/aspects/synastry_aspects.py +0 -124
- kerykeion/aspects/transits_time_range.py +0 -41
- kerykeion/astrological_subject.py +0 -841
- kerykeion/charts/kerykeion_chart_svg.py +0 -1219
- kerykeion/enums.py +0 -57
- kerykeion/ephemeris_data.py +0 -242
- kerykeion/kr_types/chart_types.py +0 -95
- kerykeion/relationship_score/__init__.py +0 -2
- kerykeion/relationship_score/relationship_score.py +0 -175
- kerykeion/relationship_score/relationship_score_factory.py +0 -230
- kerykeion/settings/kr.config.json +0 -1258
- kerykeion/transits_time_range.py +0 -124
- kerykeion-4.26.3.dist-info/METADATA +0 -634
- kerykeion-4.26.3.dist-info/RECORD +0 -45
- kerykeion-4.26.3.dist-info/entry_points.txt +0 -3
- {kerykeion-4.26.3.dist-info → kerykeion-5.0.0.dist-info/licenses}/LICENSE +0 -0
kerykeion/kr_types/kr_models.py
CHANGED
|
@@ -1,324 +1,20 @@
|
|
|
1
1
|
# -*- coding: utf-8 -*-
|
|
2
2
|
"""
|
|
3
|
-
|
|
4
|
-
"""
|
|
5
|
-
|
|
3
|
+
Backward compatibility module for kr_models.
|
|
6
4
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
from
|
|
10
|
-
from kerykeion.
|
|
5
|
+
DEPRECATED: This module will be removed in Kerykeion v6.0.
|
|
6
|
+
Please update your imports:
|
|
7
|
+
OLD: from kerykeion.kr_types.kr_models import ...
|
|
8
|
+
NEW: from kerykeion.schemas.kr_models import ...
|
|
9
|
+
"""
|
|
10
|
+
import warnings
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
Houses,
|
|
18
|
-
Quality,
|
|
19
|
-
Element,
|
|
20
|
-
Sign,
|
|
21
|
-
ZodiacType,
|
|
22
|
-
SignNumbers,
|
|
23
|
-
PointType,
|
|
24
|
-
SiderealMode,
|
|
25
|
-
HousesSystemIdentifier,
|
|
26
|
-
Houses,
|
|
27
|
-
SignsEmoji,
|
|
28
|
-
RelationshipScoreDescription,
|
|
29
|
-
PerspectiveType
|
|
12
|
+
warnings.warn(
|
|
13
|
+
"The 'kerykeion.kr_types.kr_models' module is deprecated and will be removed in v6.0. "
|
|
14
|
+
"Please update your imports to use 'kerykeion.schemas.kr_models' instead.",
|
|
15
|
+
DeprecationWarning,
|
|
16
|
+
stacklevel=2,
|
|
30
17
|
)
|
|
31
18
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
"""
|
|
35
|
-
Pydantic BaseModel with subscriptable support, so you can access the fields as if they were a dictionary.
|
|
36
|
-
"""
|
|
37
|
-
|
|
38
|
-
def __getitem__(self, key):
|
|
39
|
-
return getattr(self, key)
|
|
40
|
-
|
|
41
|
-
def __setitem__(self, key, value):
|
|
42
|
-
setattr(self, key, value)
|
|
43
|
-
|
|
44
|
-
def __delitem__(self, key):
|
|
45
|
-
delattr(self, key)
|
|
46
|
-
|
|
47
|
-
def get(self, key, default = None):
|
|
48
|
-
return getattr(self, key, default)
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
class LunarPhaseModel(SubscriptableBaseModel):
|
|
52
|
-
degrees_between_s_m: Union[float, int]
|
|
53
|
-
moon_phase: int
|
|
54
|
-
sun_phase: int
|
|
55
|
-
moon_emoji: LunarPhaseEmoji
|
|
56
|
-
moon_phase_name: LunarPhaseName
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
class KerykeionPointModel(SubscriptableBaseModel):
|
|
60
|
-
"""
|
|
61
|
-
Kerykeion Point Model
|
|
62
|
-
"""
|
|
63
|
-
|
|
64
|
-
name: Union[Planet, Houses, AxialCusps]
|
|
65
|
-
quality: Quality
|
|
66
|
-
element: Element
|
|
67
|
-
sign: Sign
|
|
68
|
-
sign_num: SignNumbers
|
|
69
|
-
position: float
|
|
70
|
-
abs_pos: float
|
|
71
|
-
emoji: str
|
|
72
|
-
point_type: PointType
|
|
73
|
-
house: Optional[Houses] = None
|
|
74
|
-
retrograde: Optional[bool] = None
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
class AstrologicalSubjectModel(SubscriptableBaseModel):
|
|
78
|
-
"""
|
|
79
|
-
Pydantic Model for Astrological Subject
|
|
80
|
-
"""
|
|
81
|
-
|
|
82
|
-
# Data
|
|
83
|
-
name: str
|
|
84
|
-
year: int
|
|
85
|
-
month: int
|
|
86
|
-
day: int
|
|
87
|
-
hour: int
|
|
88
|
-
minute: int
|
|
89
|
-
city: str
|
|
90
|
-
nation: str
|
|
91
|
-
lng: float
|
|
92
|
-
lat: float
|
|
93
|
-
tz_str: str
|
|
94
|
-
zodiac_type: ZodiacType
|
|
95
|
-
sidereal_mode: Union[SiderealMode, None]
|
|
96
|
-
houses_system_identifier: HousesSystemIdentifier
|
|
97
|
-
houses_system_name: str
|
|
98
|
-
perspective_type: PerspectiveType
|
|
99
|
-
iso_formatted_local_datetime: str
|
|
100
|
-
iso_formatted_utc_datetime: str
|
|
101
|
-
julian_day: float
|
|
102
|
-
|
|
103
|
-
# Deprecated properties -->
|
|
104
|
-
utc_time: float
|
|
105
|
-
local_time: float
|
|
106
|
-
# <-- Deprecated properties
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
# Planets
|
|
110
|
-
sun: KerykeionPointModel
|
|
111
|
-
moon: KerykeionPointModel
|
|
112
|
-
mercury: KerykeionPointModel
|
|
113
|
-
venus: KerykeionPointModel
|
|
114
|
-
mars: KerykeionPointModel
|
|
115
|
-
jupiter: KerykeionPointModel
|
|
116
|
-
saturn: KerykeionPointModel
|
|
117
|
-
uranus: KerykeionPointModel
|
|
118
|
-
neptune: KerykeionPointModel
|
|
119
|
-
pluto: KerykeionPointModel
|
|
120
|
-
|
|
121
|
-
# Axes
|
|
122
|
-
ascendant: KerykeionPointModel
|
|
123
|
-
descendant: KerykeionPointModel
|
|
124
|
-
medium_coeli: KerykeionPointModel
|
|
125
|
-
imum_coeli: KerykeionPointModel
|
|
126
|
-
|
|
127
|
-
# Optional Planets:
|
|
128
|
-
chiron: Union[KerykeionPointModel, None]
|
|
129
|
-
mean_lilith: Union[KerykeionPointModel, None]
|
|
130
|
-
|
|
131
|
-
# Houses
|
|
132
|
-
first_house: KerykeionPointModel
|
|
133
|
-
second_house: KerykeionPointModel
|
|
134
|
-
third_house: KerykeionPointModel
|
|
135
|
-
fourth_house: KerykeionPointModel
|
|
136
|
-
fifth_house: KerykeionPointModel
|
|
137
|
-
sixth_house: KerykeionPointModel
|
|
138
|
-
seventh_house: KerykeionPointModel
|
|
139
|
-
eighth_house: KerykeionPointModel
|
|
140
|
-
ninth_house: KerykeionPointModel
|
|
141
|
-
tenth_house: KerykeionPointModel
|
|
142
|
-
eleventh_house: KerykeionPointModel
|
|
143
|
-
twelfth_house: KerykeionPointModel
|
|
144
|
-
|
|
145
|
-
# Nodes
|
|
146
|
-
mean_node: KerykeionPointModel
|
|
147
|
-
true_node: KerykeionPointModel
|
|
148
|
-
mean_south_node: KerykeionPointModel
|
|
149
|
-
true_south_node: KerykeionPointModel
|
|
150
|
-
|
|
151
|
-
planets_names_list: list[Planet]
|
|
152
|
-
"""Ordered list of available planets names"""
|
|
153
|
-
|
|
154
|
-
axial_cusps_names_list: list[AxialCusps]
|
|
155
|
-
"""Ordered list of available axes names"""
|
|
156
|
-
|
|
157
|
-
houses_names_list: list[Houses]
|
|
158
|
-
"""Ordered list of houses names"""
|
|
159
|
-
|
|
160
|
-
lunar_phase: LunarPhaseModel
|
|
161
|
-
"""Lunar phase model"""
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
class EphemerisDictModel(SubscriptableBaseModel):
|
|
165
|
-
date: str
|
|
166
|
-
planets: list[KerykeionPointModel]
|
|
167
|
-
houses: list[KerykeionPointModel]
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
class AspectModel(SubscriptableBaseModel):
|
|
171
|
-
p1_name: str
|
|
172
|
-
p1_owner: str
|
|
173
|
-
p1_abs_pos: float
|
|
174
|
-
p2_name: str
|
|
175
|
-
p2_owner: str
|
|
176
|
-
p2_abs_pos: float
|
|
177
|
-
aspect: str
|
|
178
|
-
orbit: float
|
|
179
|
-
aspect_degrees: int
|
|
180
|
-
diff: float
|
|
181
|
-
p1: int
|
|
182
|
-
p2: int
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
class ZodiacSignModel(SubscriptableBaseModel):
|
|
186
|
-
sign: Sign
|
|
187
|
-
quality: Quality
|
|
188
|
-
element: Element
|
|
189
|
-
emoji: SignsEmoji
|
|
190
|
-
sign_num: SignNumbers
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
class RelationshipScoreAspectModel(SubscriptableBaseModel):
|
|
194
|
-
p1_name: str
|
|
195
|
-
p2_name: str
|
|
196
|
-
aspect: str
|
|
197
|
-
orbit: float
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
class RelationshipScoreModel(SubscriptableBaseModel):
|
|
201
|
-
score_value: int
|
|
202
|
-
score_description: RelationshipScoreDescription
|
|
203
|
-
is_destiny_sign: bool
|
|
204
|
-
aspects: list[RelationshipScoreAspectModel]
|
|
205
|
-
subjects: list[AstrologicalSubjectModel]
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
class CompositeSubjectModel(SubscriptableBaseModel):
|
|
209
|
-
"""
|
|
210
|
-
Pydantic Model for Composite Subject
|
|
211
|
-
"""
|
|
212
|
-
|
|
213
|
-
# Data
|
|
214
|
-
name: str
|
|
215
|
-
first_subject: AstrologicalSubjectModel
|
|
216
|
-
second_subject: AstrologicalSubjectModel
|
|
217
|
-
composite_chart_type: str
|
|
218
|
-
|
|
219
|
-
zodiac_type: ZodiacType
|
|
220
|
-
sidereal_mode: Union[SiderealMode, None]
|
|
221
|
-
houses_system_identifier: HousesSystemIdentifier
|
|
222
|
-
houses_system_name: str
|
|
223
|
-
perspective_type: PerspectiveType
|
|
224
|
-
|
|
225
|
-
# Planets
|
|
226
|
-
sun: KerykeionPointModel
|
|
227
|
-
moon: KerykeionPointModel
|
|
228
|
-
mercury: KerykeionPointModel
|
|
229
|
-
venus: KerykeionPointModel
|
|
230
|
-
mars: KerykeionPointModel
|
|
231
|
-
jupiter: KerykeionPointModel
|
|
232
|
-
saturn: KerykeionPointModel
|
|
233
|
-
uranus: KerykeionPointModel
|
|
234
|
-
neptune: KerykeionPointModel
|
|
235
|
-
pluto: KerykeionPointModel
|
|
236
|
-
|
|
237
|
-
# Axes
|
|
238
|
-
ascendant: KerykeionPointModel
|
|
239
|
-
descendant: KerykeionPointModel
|
|
240
|
-
medium_coeli: KerykeionPointModel
|
|
241
|
-
imum_coeli: KerykeionPointModel
|
|
242
|
-
|
|
243
|
-
# Optional Planets:
|
|
244
|
-
chiron: Union[KerykeionPointModel, None]
|
|
245
|
-
mean_lilith: Union[KerykeionPointModel, None]
|
|
246
|
-
|
|
247
|
-
# Houses
|
|
248
|
-
first_house: KerykeionPointModel
|
|
249
|
-
second_house: KerykeionPointModel
|
|
250
|
-
third_house: KerykeionPointModel
|
|
251
|
-
fourth_house: KerykeionPointModel
|
|
252
|
-
fifth_house: KerykeionPointModel
|
|
253
|
-
sixth_house: KerykeionPointModel
|
|
254
|
-
seventh_house: KerykeionPointModel
|
|
255
|
-
eighth_house: KerykeionPointModel
|
|
256
|
-
ninth_house: KerykeionPointModel
|
|
257
|
-
tenth_house: KerykeionPointModel
|
|
258
|
-
eleventh_house: KerykeionPointModel
|
|
259
|
-
twelfth_house: KerykeionPointModel
|
|
260
|
-
|
|
261
|
-
# Nodes
|
|
262
|
-
mean_node: KerykeionPointModel
|
|
263
|
-
true_node: KerykeionPointModel
|
|
264
|
-
mean_south_node: KerykeionPointModel
|
|
265
|
-
true_south_node: KerykeionPointModel
|
|
266
|
-
|
|
267
|
-
planets_names_list: list[Planet]
|
|
268
|
-
"""Ordered list of available planets names"""
|
|
269
|
-
|
|
270
|
-
axial_cusps_names_list: list[AxialCusps]
|
|
271
|
-
"""Ordered list of available axes names"""
|
|
272
|
-
|
|
273
|
-
houses_names_list: list[Houses]
|
|
274
|
-
"""Ordered list of houses names"""
|
|
275
|
-
|
|
276
|
-
lunar_phase: LunarPhaseModel
|
|
277
|
-
"""Lunar phase model"""
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
class ActiveAspect(TypedDict):
|
|
281
|
-
name: AspectName
|
|
282
|
-
orb: int
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
class TransitMomentModel(SubscriptableBaseModel):
|
|
286
|
-
"""
|
|
287
|
-
Model representing a snapshot of astrological transits at a specific moment in time.
|
|
288
|
-
|
|
289
|
-
Captures all active aspects between moving celestial bodies and
|
|
290
|
-
the fixed positions in a person's natal chart at a specific date and time.
|
|
291
|
-
|
|
292
|
-
Attributes:
|
|
293
|
-
date: ISO 8601 formatted date and time of the transit moment.
|
|
294
|
-
aspects: List of astrological aspects active at this specific moment.
|
|
295
|
-
"""
|
|
296
|
-
|
|
297
|
-
date: str
|
|
298
|
-
"""ISO 8601 formatted date and time of the transit moment."""
|
|
299
|
-
|
|
300
|
-
aspects: list[AspectModel]
|
|
301
|
-
"""List of aspects active at this specific moment."""
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
class TransitsTimeRangeModel(SubscriptableBaseModel):
|
|
305
|
-
"""
|
|
306
|
-
Model representing a collection of transit moments for an astrological subject.
|
|
307
|
-
|
|
308
|
-
This model holds a time series of transit snapshots, allowing analysis of
|
|
309
|
-
planetary movements and their aspects to a natal chart over a period of time.
|
|
310
|
-
|
|
311
|
-
Attributes:
|
|
312
|
-
transits: List of transit moments occurring during the specified time period.
|
|
313
|
-
subject: The astrological subject model for whom the transits are calculated.
|
|
314
|
-
dates: List of all dates in ISO 8601 format for which transits were calculated.
|
|
315
|
-
"""
|
|
316
|
-
|
|
317
|
-
transits: list[TransitMomentModel]
|
|
318
|
-
"""List of transit moments."""
|
|
319
|
-
|
|
320
|
-
subject: Optional[AstrologicalSubjectModel]
|
|
321
|
-
"""Astrological subject data."""
|
|
322
|
-
|
|
323
|
-
dates: Optional[list[str]]
|
|
324
|
-
"""ISO 8601 formatted dates of all transit moments."""
|
|
19
|
+
# Re-export everything from schemas.kr_models for backward compatibility
|
|
20
|
+
from kerykeion.schemas.kr_models import * # noqa: F401, F403
|
|
@@ -1,208 +1,20 @@
|
|
|
1
1
|
# -*- coding: utf-8 -*-
|
|
2
2
|
"""
|
|
3
|
-
|
|
4
|
-
"""
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
from pydantic import Field
|
|
8
|
-
from typing import List, Optional, Union
|
|
9
|
-
from kerykeion.kr_types.kr_models import SubscriptableBaseModel
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
class KerykeionSettingsCelestialPointModel(SubscriptableBaseModel):
|
|
13
|
-
"""
|
|
14
|
-
Defines the model for a celestial point data.
|
|
15
|
-
"""
|
|
16
|
-
|
|
17
|
-
id: int = Field(title="Celestial Point ID", description="Celestial Point ID according to Pyswisseph")
|
|
18
|
-
name: str = Field(title="Celestial Point Name", description="Celestial Point Name")
|
|
19
|
-
color: str = Field(title="Celestial Point Color", description="Celestial Point Color, used in the chart")
|
|
20
|
-
element_points: int = Field(title="Celestial Point Element Points", description="Element Points given to the celestial point")
|
|
21
|
-
related_zodiac_signs: List[int] = Field(title="Celestial Point Related Zodiac Signs", description="Zodiac Signs related to the celestial point")
|
|
22
|
-
label: str = Field(title="Celestial Point Label", description="The name of the celestial point in the chart, it can be different from the name")
|
|
23
|
-
is_active: Optional[bool] = Field(title="Celestial Point is Active", description="Indicates if the celestial point is active in the chart", default=None)
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
# Chart Colors Settings
|
|
27
|
-
class KerykeionSettingsChartColorsModel(SubscriptableBaseModel):
|
|
28
|
-
"""
|
|
29
|
-
Defines the model for the chart colors.
|
|
30
|
-
"""
|
|
31
|
-
|
|
32
|
-
paper_0: str = Field(title="Paper Color 0", description="Paper Color 0")
|
|
33
|
-
paper_1: str = Field(title="Paper Color 1", description="Paper Color 1")
|
|
34
|
-
zodiac_bg_0: str = Field(title="Zodiac Background Color 0", description="Zodiac Background Color 0")
|
|
35
|
-
zodiac_bg_1: str = Field(title="Zodiac Background Color 1", description="Zodiac Background Color 1")
|
|
36
|
-
zodiac_bg_2: str = Field(title="Zodiac Background Color 2", description="Zodiac Background Color 2")
|
|
37
|
-
zodiac_bg_3: str = Field(title="Zodiac Background Color 3", description="Zodiac Background Color 3")
|
|
38
|
-
zodiac_bg_4: str = Field(title="Zodiac Background Color 4", description="Zodiac Background Color 4")
|
|
39
|
-
zodiac_bg_5: str = Field(title="Zodiac Background Color 5", description="Zodiac Background Color 5")
|
|
40
|
-
zodiac_bg_6: str = Field(title="Zodiac Background Color 6", description="Zodiac Background Color 6")
|
|
41
|
-
zodiac_bg_7: str = Field(title="Zodiac Background Color 7", description="Zodiac Background Color 7")
|
|
42
|
-
zodiac_bg_8: str = Field(title="Zodiac Background Color 8", description="Zodiac Background Color 8")
|
|
43
|
-
zodiac_bg_9: str = Field(title="Zodiac Background Color 9", description="Zodiac Background Color 9")
|
|
44
|
-
zodiac_bg_10: str = Field(title="Zodiac Background Color 10", description="Zodiac Background Color 10")
|
|
45
|
-
zodiac_bg_11: str = Field(title="Zodiac Background Color 11", description="Zodiac Background Color 11")
|
|
46
|
-
zodiac_icon_0: str = Field(title="Zodiac Icon Color 0", description="Zodiac Icon Color 0")
|
|
47
|
-
zodiac_icon_1: str = Field(title="Zodiac Icon Color 1", description="Zodiac Icon Color 1")
|
|
48
|
-
zodiac_icon_2: str = Field(title="Zodiac Icon Color 2", description="Zodiac Icon Color 2")
|
|
49
|
-
zodiac_icon_3: str = Field(title="Zodiac Icon Color 3", description="Zodiac Icon Color 3")
|
|
50
|
-
zodiac_icon_4: str = Field(title="Zodiac Icon Color 4", description="Zodiac Icon Color 4")
|
|
51
|
-
zodiac_icon_5: str = Field(title="Zodiac Icon Color 5", description="Zodiac Icon Color 5")
|
|
52
|
-
zodiac_icon_6: str = Field(title="Zodiac Icon Color 6", description="Zodiac Icon Color 6")
|
|
53
|
-
zodiac_icon_7: str = Field(title="Zodiac Icon Color 7", description="Zodiac Icon Color 7")
|
|
54
|
-
zodiac_icon_8: str = Field(title="Zodiac Icon Color 8", description="Zodiac Icon Color 8")
|
|
55
|
-
zodiac_icon_9: str = Field(title="Zodiac Icon Color 9", description="Zodiac Icon Color 9")
|
|
56
|
-
zodiac_icon_10: str = Field(title="Zodiac Icon Color 10", description="Zodiac Icon Color 10")
|
|
57
|
-
zodiac_icon_11: str = Field(title="Zodiac Icon Color 11", description="Zodiac Icon Color 11")
|
|
58
|
-
zodiac_radix_ring_0: str = Field(title="Zodiac Radix Ring Color 0", description="Zodiac Radix Ring Color 0")
|
|
59
|
-
zodiac_radix_ring_1: str = Field(title="Zodiac Radix Ring Color 1", description="Zodiac Radix Ring Color 1")
|
|
60
|
-
zodiac_radix_ring_2: str = Field(title="Zodiac Radix Ring Color 2", description="Zodiac Radix Ring Color 2")
|
|
61
|
-
zodiac_transit_ring_0: str = Field(title="Zodiac Transit Ring Color 0", description="Zodiac Transit Ring Color 0")
|
|
62
|
-
zodiac_transit_ring_1: str = Field(title="Zodiac Transit Ring Color 1", description="Zodiac Transit Ring Color 1")
|
|
63
|
-
zodiac_transit_ring_2: str = Field(title="Zodiac Transit Ring Color 2", description="Zodiac Transit Ring Color 2")
|
|
64
|
-
zodiac_transit_ring_3: str = Field(title="Zodiac Transit Ring Color 3", description="Zodiac Transit Ring Color 3")
|
|
65
|
-
houses_radix_line: str = Field(title="Houses Radix Line Color", description="Houses Radix Line Color")
|
|
66
|
-
houses_transit_line: str = Field(title="Houses Transit Line Color", description="Houses Transit Line Color")
|
|
67
|
-
|
|
68
|
-
# Deprecated: Not used anymore
|
|
69
|
-
lunar_phase_0: str = Field(title="Lunar Phase Color 0", description="Lunar Phase Color 0")
|
|
70
|
-
lunar_phase_1: str = Field(title="Lunar Phase Color 1", description="Lunar Phase Color 1")
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
# Aspect Settings
|
|
74
|
-
class KerykeionSettingsAspectModel(SubscriptableBaseModel):
|
|
75
|
-
"""
|
|
76
|
-
Defines the model for an aspect.
|
|
77
|
-
"""
|
|
78
|
-
|
|
79
|
-
degree: int = Field(title="Aspect Degrees", description="The degree of the aspect")
|
|
80
|
-
name: str = Field(title="Aspect Name", description="The name of the aspect")
|
|
81
|
-
color: str = Field(title="Aspect Color", description="The color of the aspect")
|
|
82
|
-
orb: Optional[int] = Field(title="Aspect Orb", description="The orb of the aspect", default=None)
|
|
83
|
-
|
|
84
|
-
# Language Settings
|
|
85
|
-
class KerykeionLanguageCelestialPointModel(SubscriptableBaseModel):
|
|
86
|
-
"""
|
|
87
|
-
This class is used to define the labels, show in the chart, for the celestial points.
|
|
88
|
-
It is used to translate the celestial points in the language of the chart.
|
|
89
|
-
"""
|
|
90
|
-
|
|
91
|
-
Sun: str = Field(title="Sun", description="The name of the Sun in the chart, in the language")
|
|
92
|
-
Moon: str = Field(title="Moon", description="The name of the Moon in the chart, in the language")
|
|
93
|
-
Mercury: str = Field(title="Mercury", description="The name of Mercury in the chart, in the language")
|
|
94
|
-
Venus: str = Field(title="Venus", description="The name of Venus in the chart, in the language")
|
|
95
|
-
Mars: str = Field(title="Mars", description="The name of Mars in the chart, in the language")
|
|
96
|
-
Jupiter: str = Field(title="Jupiter", description="The name of Jupiter in the chart, in the language")
|
|
97
|
-
Saturn: str = Field(title="Saturn", description="The name of Saturn in the chart, in the language")
|
|
98
|
-
Uranus: str = Field(title="Uranus", description="The name of Uranus in the chart, in the language")
|
|
99
|
-
Neptune: str = Field(title="Neptune", description="The name of Neptune in the chart, in the language")
|
|
100
|
-
Pluto: str = Field(title="Pluto", description="The name of Pluto in the chart, in the language")
|
|
101
|
-
True_Node: str = Field(title="True Node", description="The name of True Node in the chart, in the language")
|
|
102
|
-
Mean_Node: str = Field(title="Mean Node", description="The name of Mean Node in the chart, in the language")
|
|
103
|
-
Chiron: str = Field(title="Chiron", description="The name of Chiron in the chart, in the language")
|
|
104
|
-
Ascendant: str = Field(title="Ascendant", description="The name of Ascendant in the chart, in the language")
|
|
105
|
-
Descendant: str = Field(title="Descendant", description="The name of Descendant in the chart, in the language")
|
|
106
|
-
Medium_Coeli: str = Field(title="Medium Coeli", description="The name of Medium Coeli in the chart, in the language")
|
|
107
|
-
Imum_Coeli: str = Field(title="Imum Coeli", description="The name of Imum Coeli in the chart, in the language")
|
|
108
|
-
Mean_Lilith: str = Field(title="Mean Lilith", description="The name of Mean Lilith in the chart, in the language")
|
|
109
|
-
True_South_Node: str = Field(title="True South Node", description="The name of True South Node in the chart, in the language")
|
|
110
|
-
Mean_South_Node: str = Field(title="Mean South Node", description="The name of Mean South Node in the chart, in the language")
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
class KerykeionLanguageModel(SubscriptableBaseModel):
|
|
114
|
-
"""
|
|
115
|
-
This model is used to store the language settings for the chart,
|
|
116
|
-
it's used to translate the celestial points and the other labels
|
|
117
|
-
"""
|
|
118
|
-
|
|
119
|
-
info: str
|
|
120
|
-
cusp: str
|
|
121
|
-
longitude: str
|
|
122
|
-
latitude: str
|
|
123
|
-
north: str
|
|
124
|
-
east: str
|
|
125
|
-
south: str
|
|
126
|
-
west: str
|
|
127
|
-
fire: str
|
|
128
|
-
earth: str
|
|
129
|
-
air: str
|
|
130
|
-
water: str
|
|
131
|
-
and_word: str
|
|
132
|
-
transits: str
|
|
133
|
-
type: str
|
|
134
|
-
couple_aspects: str
|
|
135
|
-
transit_aspects: str
|
|
136
|
-
planets_and_house: str
|
|
137
|
-
transit_name: str
|
|
138
|
-
lunar_phase: str
|
|
139
|
-
day: str
|
|
140
|
-
celestial_points: KerykeionLanguageCelestialPointModel
|
|
141
|
-
composite_chart: str
|
|
142
|
-
midpoints: str
|
|
143
|
-
north_letter: str
|
|
144
|
-
east_letter: str
|
|
145
|
-
south_letter: str
|
|
146
|
-
west_letter: str
|
|
147
|
-
tropical: str
|
|
148
|
-
sidereal: str
|
|
149
|
-
zodiac: str
|
|
150
|
-
ayanamsa: str
|
|
151
|
-
apparent_geocentric: str
|
|
152
|
-
heliocentric: str
|
|
153
|
-
topocentric: str
|
|
154
|
-
true_geocentric: str
|
|
155
|
-
new_moon: str
|
|
156
|
-
waxing_crescent: str
|
|
157
|
-
first_quarter: str
|
|
158
|
-
waxing_gibbous: str
|
|
159
|
-
full_moon: str
|
|
160
|
-
waning_gibbous: str
|
|
161
|
-
last_quarter: str
|
|
162
|
-
waning_crescent: str
|
|
163
|
-
houses: str
|
|
164
|
-
houses_system_A: str
|
|
165
|
-
houses_system_B: str
|
|
166
|
-
houses_system_C: str
|
|
167
|
-
houses_system_D: str
|
|
168
|
-
houses_system_F: str
|
|
169
|
-
houses_system_H: str
|
|
170
|
-
houses_system_I: str
|
|
171
|
-
houses_system_i: str
|
|
172
|
-
houses_system_K: str
|
|
173
|
-
houses_system_L: str
|
|
174
|
-
houses_system_M: str
|
|
175
|
-
houses_system_N: str
|
|
176
|
-
houses_system_O: str
|
|
177
|
-
houses_system_P: str
|
|
178
|
-
houses_system_Q: str
|
|
179
|
-
houses_system_R: str
|
|
180
|
-
houses_system_S: str
|
|
181
|
-
houses_system_T: str
|
|
182
|
-
houses_system_U: str
|
|
183
|
-
houses_system_V: str
|
|
184
|
-
houses_system_W: str
|
|
185
|
-
houses_system_X: str
|
|
186
|
-
houses_system_Y: str
|
|
187
|
-
Natal: str
|
|
188
|
-
ExternalNatal: str
|
|
189
|
-
Synastry: str
|
|
190
|
-
Transit: str
|
|
191
|
-
Composite: str
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
class KerykeionGeneralSettingsModel(SubscriptableBaseModel):
|
|
195
|
-
axes_orbit: int = Field(title="Axes Orbit", description="The orbit of the axes in the chart")
|
|
3
|
+
Backward compatibility module for settings_models.
|
|
196
4
|
|
|
5
|
+
DEPRECATED: This module will be removed in Kerykeion v6.0.
|
|
6
|
+
Please update your imports:
|
|
7
|
+
OLD: from kerykeion.kr_types.settings_models import ...
|
|
8
|
+
NEW: from kerykeion.schemas.settings_models import ...
|
|
9
|
+
"""
|
|
10
|
+
import warnings
|
|
197
11
|
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
""
|
|
201
|
-
|
|
202
|
-
|
|
12
|
+
warnings.warn(
|
|
13
|
+
"The 'kerykeion.kr_types.settings_models' module is deprecated and will be removed in v6.0. "
|
|
14
|
+
"Please update your imports to use 'kerykeion.schemas.settings_models' instead.",
|
|
15
|
+
DeprecationWarning,
|
|
16
|
+
stacklevel=2,
|
|
17
|
+
)
|
|
203
18
|
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
aspects: List[KerykeionSettingsAspectModel] = Field(title="Aspects", description="The list of the aspects of the chart")
|
|
207
|
-
language_settings: dict[str, KerykeionLanguageModel] = Field(title="Language Settings", description="The language settings of the chart")
|
|
208
|
-
general_settings: KerykeionGeneralSettingsModel = Field(title="General Settings", description="The general settings of the chart")
|
|
19
|
+
# Re-export everything from schemas.settings_models for backward compatibility
|
|
20
|
+
from kerykeion.schemas.settings_models import * # noqa: F401, F403
|