Skip to content

Commit

Permalink
Merge pull request #107 from TheRealMal/main
Browse files Browse the repository at this point in the history
fix: attributes parsing
  • Loading branch information
yasirarism authored Jan 6, 2025
2 parents 8ceec29 + a04c91d commit 9e101ef
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 7 deletions.
8 changes: 4 additions & 4 deletions pyrogram/types/payments/star_gift.py
Original file line number Diff line number Diff line change
Expand Up @@ -361,11 +361,11 @@ async def _parse_action(
symbol = None

for key, value in attributes.items():
if isinstance(key, raw.types.StarGiftAttributeModel):
if key is raw.types.StarGiftAttributeModel:
model = await types.StarGiftAttribute._parse(client, value)
elif isinstance(key, raw.types.StarGiftAttributeBackdrop):
backdrop = await types.StarGiftAttribute._parse(client, value)
elif isinstance(key, raw.types.StarGiftAttributePattern):
elif key is raw.types.StarGiftAttributeBackdrop:
backdrop = await types.StarGiftAttribute._parse(client, value, True)
elif key is raw.types.StarGiftAttributePattern:
symbol = await types.StarGiftAttribute._parse(client, value)

return StarGift(
Expand Down
10 changes: 7 additions & 3 deletions pyrogram/types/payments/star_gift_attribute.py
Original file line number Diff line number Diff line change
Expand Up @@ -67,14 +67,18 @@ def __init__(
async def _parse(
client,
attr: "raw.base.StarGiftAttribute",
backdrop: bool = False,
) -> "StarGiftAttribute":
doc = attr.document
attributes = {type(i): i for i in doc.attributes}
sticker = None
if not backdrop:
doc = attr.document
attributes = {type(i): i for i in doc.attributes}
sticker = await types.Sticker._parse(client, doc, attributes)

return StarGiftAttribute(
name=attr.name,
type=enums.StarGiftAttributeType(type(attr)),
sticker=await types.Sticker._parse(client, doc, attributes),
sticker=sticker,
rarity=attr.rarity_permille,
client=client
)

0 comments on commit 9e101ef

Please sign in to comment.