Skip to content

Commit

Permalink
Implement some suggestions
Browse files Browse the repository at this point in the history
  • Loading branch information
hypergonial committed Jan 21, 2024
1 parent 844d757 commit a50991b
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 11 deletions.
2 changes: 1 addition & 1 deletion hikari/events/monetization_events.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ class EntitlementEvent(shard_events.ShardEvent):
# <<inherited docstring from Event>>.

shard: gateway_shard.GatewayShard = attrs.field(metadata={attrs_extensions.SKIP_DEEP_COPY: True})
"""Shard that received this event."""
# <<inherited docstring from ShardEvent>>.

entitlement: monetization.Entitlement = attrs.field()
"""The entitlement that changed."""
Expand Down
11 changes: 7 additions & 4 deletions hikari/impl/entity_factory.py
Original file line number Diff line number Diff line change
Expand Up @@ -2552,6 +2552,9 @@ def deserialize_command_interaction(
target_id = snowflakes.Snowflake(raw_target_id)

app_perms = payload.get("app_permissions")

entitlements = [self.deserialize_entitlement(entitlement) for entitlement in payload.get("entitlements", [])]

return command_interactions.CommandInteraction(
app=self._app,
application_id=snowflakes.Snowflake(payload["application_id"]),
Expand All @@ -2572,7 +2575,7 @@ def deserialize_command_interaction(
resolved=resolved,
target_id=target_id,
app_permissions=permission_models.Permissions(app_perms) if app_perms else None,
entitlements=[self.deserialize_entitlement(entitlement) for entitlement in payload.get("entitlements", [])],
entitlements=entitlements,
)

def deserialize_autocomplete_interaction(
Expand Down Expand Up @@ -3715,6 +3718,8 @@ def deserialize_webhook(self, payload: data_binding.JSONObject) -> webhook_model
##################

def deserialize_entitlement(self, payload: data_binding.JSONObject) -> monetization_models.Entitlement:
starts_at = time.iso8601_datetime_string_to_datetime(payload["starts_at"]) if "starts_at" in payload else None

return monetization_models.Entitlement(
id=snowflakes.Snowflake(payload["id"]),
type=monetization_models.EntitlementType(payload["type"]),
Expand All @@ -3723,9 +3728,7 @@ def deserialize_entitlement(self, payload: data_binding.JSONObject) -> monetizat
guild_id=snowflakes.Snowflake(payload["guild_id"]),
user_id=snowflakes.Snowflake(payload["user_id"]),
is_deleted=payload["deleted"],
starts_at=time.iso8601_datetime_string_to_datetime(payload["starts_at"])
if "starts_at" in payload
else None,
starts_at=starts_at,
ends_at=time.iso8601_datetime_string_to_datetime(payload["ends_at"]) if "ends_at" in payload else None,
subscription_id=snowflakes.Snowflake(payload["subscription_id"]) if "subscription_id" in payload else None,
)
Expand Down
8 changes: 3 additions & 5 deletions hikari/impl/event_factory.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,6 @@

from __future__ import annotations

from hikari.api.shard import GatewayShard

__all__: typing.Sequence[str] = ("EventFactoryImpl",)

import datetime
Expand Down Expand Up @@ -937,21 +935,21 @@ def deserialize_voice_server_update_event(
################

def deserialize_entitlement_create_event(
self, shard: GatewayShard, payload: data_binding.JSONObject
self, shard: gateway_shard.GatewayShard, payload: data_binding.JSONObject
) -> monetization_events.EntitlementCreateEvent:
return monetization_events.EntitlementCreateEvent(
app=self._app, shard=shard, entitlement=self._app.entity_factory.deserialize_entitlement(payload)
)

def deserialize_entitlement_update_event(
self, shard: GatewayShard, payload: data_binding.JSONObject
self, shard: gateway_shard.GatewayShard, payload: data_binding.JSONObject
) -> monetization_events.EntitlementUpdateEvent:
return monetization_events.EntitlementUpdateEvent(
app=self._app, shard=shard, entitlement=self._app.entity_factory.deserialize_entitlement(payload)
)

def deserialize_entitlement_delete_event(
self, shard: GatewayShard, payload: data_binding.JSONObject
self, shard: gateway_shard.GatewayShard, payload: data_binding.JSONObject
) -> monetization_events.EntitlementDeleteEvent:
return monetization_events.EntitlementDeleteEvent(
app=self._app, shard=shard, entitlement=self._app.entity_factory.deserialize_entitlement(payload)
Expand Down
1 change: 0 additions & 1 deletion hikari/interactions/base_interactions.py
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,6 @@ class ResponseType(int, enums.Enum):
* `InteractionType.APPLICATION_COMMAND`
* `InteractionType.MESSAGE_COMPONENT`
* `InteractionType.MODAL_SUBMIT`
"""


Expand Down

0 comments on commit a50991b

Please sign in to comment.