Skip to content

Commit bd1b7c9

Browse files
committed
Temp hotfix for DialogSetChatTheme
1 parent 8380ab3 commit bd1b7c9

4 files changed

Lines changed: 23 additions & 7 deletions

File tree

‎psalm-baseline.xml‎

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1732,6 +1732,11 @@
17321732
<code><![CDATA[$this->callId]]></code>
17331733
</MixedAssignment>
17341734
</file>
1735+
<file src="src/EventHandler/Message/Service/DialogSetChatTheme.php">
1736+
<MixedAssignment>
1737+
<code><![CDATA[$this->emoticon]]></code>
1738+
</MixedAssignment>
1739+
</file>
17351740
<file src="src/EventHandler/Participant.php">
17361741
<MixedAssignment>
17371742
<code><![CDATA[$res[$prop->getName()]]]></code>
@@ -5077,7 +5082,6 @@
50775082
<code><![CDATA[$message['action']['distance']]]></code>
50785083
<code><![CDATA[$message['action']['duration'] ?? null]]></code>
50795084
<code><![CDATA[$message['action']['duration'] ?? null]]></code>
5080-
<code><![CDATA[$message['action']['emoticon']]]></code>
50815085
<code><![CDATA[$message['action']['game_id']]]></code>
50825086
<code><![CDATA[$message['action']['gift']]]></code>
50835087
<code><![CDATA[$message['action']['hidden'] ?? null]]></code>
@@ -5113,6 +5117,7 @@
51135117
<code><![CDATA[$message['action']['subscription_until_date'] ?? null]]></code>
51145118
<code><![CDATA[$message['action']['text']]]></code>
51155119
<code><![CDATA[$message['action']['text']]]></code>
5120+
<code><![CDATA[$message['action']['theme']]]></code>
51165121
<code><![CDATA[$message['action']['title']]]></code>
51175122
<code><![CDATA[$message['action']['title']]]></code>
51185123
<code><![CDATA[$message['action']['title']]]></code>
@@ -5194,7 +5199,6 @@
51945199
<code><![CDATA[$message['action']['distance']]]></code>
51955200
<code><![CDATA[$message['action']['duration']]]></code>
51965201
<code><![CDATA[$message['action']['duration']]]></code>
5197-
<code><![CDATA[$message['action']['emoticon']]]></code>
51985202
<code><![CDATA[$message['action']['from_id']]]></code>
51995203
<code><![CDATA[$message['action']['game_id']]]></code>
52005204
<code><![CDATA[$message['action']['gift']]]></code>
@@ -5238,6 +5242,7 @@
52385242
<code><![CDATA[$message['action']['subscription_until_date']]]></code>
52395243
<code><![CDATA[$message['action']['text']]]></code>
52405244
<code><![CDATA[$message['action']['text']]]></code>
5245+
<code><![CDATA[$message['action']['theme']]]></code>
52415246
<code><![CDATA[$message['action']['title']]]></code>
52425247
<code><![CDATA[$message['action']['title']]]></code>
52435248
<code><![CDATA[$message['action']['title']]]></code>

‎src/EventHandler/Message/Service/DialogSetChatTheme.php‎

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,14 +24,25 @@
2424
*/
2525
final class DialogSetChatTheme extends ServiceMessage
2626
{
27+
/** @var ?string The emoji that identifies a chat theme, can be null for unique gift-based themes */
28+
public readonly ?string $emoticon;
29+
30+
/** @var ?array https://docs.madelineproto.xyz/API_docs/constructors/chatThemeUniqueGift.html */
31+
public readonly ?array $uniqueGift;
32+
2733
public function __construct(
2834
MTProto $API,
2935
array $rawMessage,
3036
array $info,
31-
32-
/** @var string The emoji that identifies a chat theme */
33-
public readonly string $emoticon
37+
array $theme,
3438
) {
3539
parent::__construct($API, $rawMessage, $info);
40+
$this->emoticon = $theme['emoticon'] ?? null;
41+
// TODO: rm when all constructors are objects.
42+
if ($theme['_'] === 'chatThemeUniqueGift') {
43+
$this->uniqueGift = $theme;
44+
} else {
45+
$this->uniqueGift = null;
46+
}
3647
}
3748
}

‎src/MTProtoTools/UpdateHandler.php‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -677,7 +677,7 @@ public function wrapMessage(array $message, bool $scheduled = false): ?AbstractM
677677
$this,
678678
$message,
679679
$info,
680-
$message['action']['emoticon'],
680+
$message['action']['theme'],
681681
),
682682
'messageActionWebViewDataSentMe' => new DialogWebView(
683683
$this,

0 commit comments

Comments
 (0)