mirror of
https://github.com/Rapptz/discord.py.git
synced 2025-07-07 02:21:54 +00:00
Add support for multiple subscription tier SKUs
This commit is contained in:
parent
743ef27dd7
commit
ff2ad34be5
@ -63,6 +63,8 @@ class Subscription(Hashable):
|
|||||||
canceled_at: Optional[:class:`datetime.datetime`]
|
canceled_at: Optional[:class:`datetime.datetime`]
|
||||||
When the subscription was canceled.
|
When the subscription was canceled.
|
||||||
This is only available for subscriptions with a :attr:`status` of :attr:`SubscriptionStatus.inactive`.
|
This is only available for subscriptions with a :attr:`status` of :attr:`SubscriptionStatus.inactive`.
|
||||||
|
renewal_sku_ids: List[:class:`int`]
|
||||||
|
The IDs of the SKUs that the user is going to be subscribed to when renewing.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
__slots__ = (
|
__slots__ = (
|
||||||
@ -75,6 +77,7 @@ class Subscription(Hashable):
|
|||||||
'current_period_end',
|
'current_period_end',
|
||||||
'status',
|
'status',
|
||||||
'canceled_at',
|
'canceled_at',
|
||||||
|
'renewal_sku_ids',
|
||||||
)
|
)
|
||||||
|
|
||||||
def __init__(self, *, state: ConnectionState, data: SubscriptionPayload):
|
def __init__(self, *, state: ConnectionState, data: SubscriptionPayload):
|
||||||
@ -88,6 +91,7 @@ class Subscription(Hashable):
|
|||||||
self.current_period_end: datetime.datetime = utils.parse_time(data['current_period_end'])
|
self.current_period_end: datetime.datetime = utils.parse_time(data['current_period_end'])
|
||||||
self.status: SubscriptionStatus = try_enum(SubscriptionStatus, data['status'])
|
self.status: SubscriptionStatus = try_enum(SubscriptionStatus, data['status'])
|
||||||
self.canceled_at: Optional[datetime.datetime] = utils.parse_time(data['canceled_at'])
|
self.canceled_at: Optional[datetime.datetime] = utils.parse_time(data['canceled_at'])
|
||||||
|
self.renewal_sku_ids: List[int] = list(map(int, data['renewal_sku_ids'] or []))
|
||||||
|
|
||||||
def __repr__(self) -> str:
|
def __repr__(self) -> str:
|
||||||
return f'<Subscription id={self.id} user_id={self.user_id} status={self.status!r}>'
|
return f'<Subscription id={self.id} user_id={self.user_id} status={self.status!r}>'
|
||||||
|
@ -40,3 +40,4 @@ class Subscription(TypedDict):
|
|||||||
current_period_end: str
|
current_period_end: str
|
||||||
status: SubscriptionStatus
|
status: SubscriptionStatus
|
||||||
canceled_at: Optional[str]
|
canceled_at: Optional[str]
|
||||||
|
renewal_sku_ids: Optional[List[Snowflake]]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user