Skip to content

Commit b6f3dac

Browse files
Automatically update Python SDK
1 parent e9bc09e commit b6f3dac

13 files changed

Lines changed: 84 additions & 246 deletions

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "trophy"
7-
version = "1.0.7"
7+
version = "1.0.8"
88
description = "A Python library for the Trophy API"
99
license = {text = "MIT"}
1010
readme = "README.md"

trophy/__init__.py

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,12 @@
33
from .types import (
44
AchievementCompletionResponse,
55
AchievementResponse,
6-
ApiAchievementResponse,
7-
BaseAchievementResponse,
86
BaseStreakResponse,
97
ErrorBody,
108
EventResponse,
11-
EventResponseMetricsItem,
12-
EventResponseMetricsItemCompletedItem,
139
IncrementMetricStreakResponse,
14-
MetricAchievementResponse,
1510
MetricResponse,
1611
MetricStatus,
17-
StreakAchievementResponse,
1812
StreakFrequency,
1913
StreakResponse,
2014
StreakResponseStreakHistoryItem,
@@ -35,21 +29,15 @@
3529
__all__ = [
3630
"AchievementCompletionResponse",
3731
"AchievementResponse",
38-
"ApiAchievementResponse",
3932
"AsyncTrophyApi",
4033
"BadRequestError",
41-
"BaseAchievementResponse",
4234
"BaseStreakResponse",
4335
"ErrorBody",
4436
"EventResponse",
45-
"EventResponseMetricsItem",
46-
"EventResponseMetricsItemCompletedItem",
4737
"IncrementMetricStreakResponse",
48-
"MetricAchievementResponse",
4938
"MetricResponse",
5039
"MetricStatus",
5140
"NotFoundError",
52-
"StreakAchievementResponse",
5341
"StreakFrequency",
5442
"StreakResponse",
5543
"StreakResponseStreakHistoryItem",

trophy/types/__init__.py

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,12 @@
22

33
from .achievement_completion_response import AchievementCompletionResponse
44
from .achievement_response import AchievementResponse
5-
from .api_achievement_response import ApiAchievementResponse
6-
from .base_achievement_response import BaseAchievementResponse
75
from .base_streak_response import BaseStreakResponse
86
from .error_body import ErrorBody
97
from .event_response import EventResponse
10-
from .event_response_metrics_item import EventResponseMetricsItem
11-
from .event_response_metrics_item_completed_item import (
12-
EventResponseMetricsItemCompletedItem,
13-
)
148
from .increment_metric_streak_response import IncrementMetricStreakResponse
15-
from .metric_achievement_response import MetricAchievementResponse
169
from .metric_response import MetricResponse
1710
from .metric_status import MetricStatus
18-
from .streak_achievement_response import StreakAchievementResponse
1911
from .streak_frequency import StreakFrequency
2012
from .streak_response import StreakResponse
2113
from .streak_response_streak_history_item import StreakResponseStreakHistoryItem
@@ -26,18 +18,12 @@
2618
__all__ = [
2719
"AchievementCompletionResponse",
2820
"AchievementResponse",
29-
"ApiAchievementResponse",
30-
"BaseAchievementResponse",
3121
"BaseStreakResponse",
3222
"ErrorBody",
3323
"EventResponse",
34-
"EventResponseMetricsItem",
35-
"EventResponseMetricsItemCompletedItem",
3624
"IncrementMetricStreakResponse",
37-
"MetricAchievementResponse",
3825
"MetricResponse",
3926
"MetricStatus",
40-
"StreakAchievementResponse",
4127
"StreakFrequency",
4228
"StreakResponse",
4329
"StreakResponseStreakHistoryItem",

trophy/types/achievement_completion_response.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import typing_extensions
55
from ..core.serialization import FieldMetadata
66
import pydantic
7-
from .api_achievement_response import ApiAchievementResponse
7+
from .achievement_response import AchievementResponse
88
from ..core.pydantic_utilities import IS_PYDANTIC_V2
99
import typing
1010

@@ -17,7 +17,7 @@ class AchievementCompletionResponse(UniversalBaseModel):
1717
The unique ID of the completion.
1818
"""
1919

20-
achievement: ApiAchievementResponse
20+
achievement: AchievementResponse
2121

2222
if IS_PYDANTIC_V2:
2323
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(
Lines changed: 75 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,79 @@
11
# This file was auto-generated by Fern from our API Definition.
22

3+
from ..core.pydantic_utilities import UniversalBaseModel
4+
import pydantic
5+
import typing_extensions
36
import typing
4-
from .metric_achievement_response import MetricAchievementResponse
5-
from .streak_achievement_response import StreakAchievementResponse
6-
from .api_achievement_response import ApiAchievementResponse
7+
from ..core.serialization import FieldMetadata
8+
import datetime as dt
9+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
710

8-
AchievementResponse = typing.Union[
9-
MetricAchievementResponse, StreakAchievementResponse, ApiAchievementResponse
10-
]
11+
12+
class AchievementResponse(UniversalBaseModel):
13+
id: str = pydantic.Field()
14+
"""
15+
The unique ID of the achievement.
16+
"""
17+
18+
name: str = pydantic.Field()
19+
"""
20+
The name of this achievement.
21+
"""
22+
23+
badge_url: typing_extensions.Annotated[
24+
typing.Optional[str], FieldMetadata(alias="badgeUrl")
25+
] = pydantic.Field(default=None)
26+
"""
27+
The URL of the badge image for the achievement, if one has been uploaded.
28+
"""
29+
30+
achieved_at: typing_extensions.Annotated[
31+
typing.Optional[dt.datetime], FieldMetadata(alias="achievedAt")
32+
] = pydantic.Field(default=None)
33+
"""
34+
The date and time the achievement was completed, in ISO 8601 format.
35+
"""
36+
37+
key: typing.Optional[str] = pydantic.Field(default=None)
38+
"""
39+
The key used to reference this achievement in the API (only applicable if trigger = 'api')
40+
"""
41+
42+
streak_length: typing_extensions.Annotated[
43+
typing.Optional[int], FieldMetadata(alias="streakLength")
44+
] = pydantic.Field(default=None)
45+
"""
46+
The length of the streak required to complete the achievement (only applicable if trigger = 'streak')
47+
"""
48+
49+
metric_id: typing_extensions.Annotated[
50+
typing.Optional[str], FieldMetadata(alias="metricId")
51+
] = pydantic.Field(default=None)
52+
"""
53+
The ID of the metric associated with this achievement (only applicable if trigger = 'metric')
54+
"""
55+
56+
metric_value: typing_extensions.Annotated[
57+
typing.Optional[float], FieldMetadata(alias="metricValue")
58+
] = pydantic.Field(default=None)
59+
"""
60+
The value of the metric required to complete the achievement (only applicable if trigger = 'metric')
61+
"""
62+
63+
metric_name: typing_extensions.Annotated[
64+
typing.Optional[str], FieldMetadata(alias="metricName")
65+
] = pydantic.Field(default=None)
66+
"""
67+
The name of the metric associated with this achievement (only applicable if trigger = 'metric')
68+
"""
69+
70+
if IS_PYDANTIC_V2:
71+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(
72+
extra="allow", frozen=True
73+
) # type: ignore # Pydantic v2
74+
else:
75+
76+
class Config:
77+
frozen = True
78+
smart_union = True
79+
extra = pydantic.Extra.allow

trophy/types/api_achievement_response.py

Lines changed: 0 additions & 24 deletions
This file was deleted.

trophy/types/base_achievement_response.py

Lines changed: 0 additions & 51 deletions
This file was deleted.

trophy/types/event_response.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
from ..core.serialization import FieldMetadata
66
import pydantic
77
import typing
8-
from .event_response_metrics_item import EventResponseMetricsItem
8+
from .achievement_response import AchievementResponse
99
from .increment_metric_streak_response import IncrementMetricStreakResponse
1010
from ..core.pydantic_utilities import IS_PYDANTIC_V2
1111

@@ -30,11 +30,11 @@ class EventResponse(UniversalBaseModel):
3030
The user's new total progress against the metric.
3131
"""
3232

33-
achievements: typing.Optional[typing.List[EventResponseMetricsItem]] = (
34-
pydantic.Field(default=None)
33+
achievements: typing.Optional[typing.List[AchievementResponse]] = pydantic.Field(
34+
default=None
3535
)
3636
"""
37-
Changes to achievements as a result of this event.
37+
Achievements completed as a result of this event.
3838
"""
3939

4040
current_streak: typing_extensions.Annotated[

trophy/types/event_response_metrics_item.py

Lines changed: 0 additions & 41 deletions
This file was deleted.

trophy/types/event_response_metrics_item_completed_item.py

Lines changed: 0 additions & 9 deletions
This file was deleted.

0 commit comments

Comments
 (0)