Skip to content

Commit 20f7971

Browse files
authored
feat(parser): Add LiveChatSponsorshipsGiftRedemptionAnnouncement node (#795)
1 parent b83a32f commit 20f7971

File tree

2 files changed

+36
-0
lines changed

2 files changed

+36
-0
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
import { YTNode } from '../../../helpers.js';
2+
import type { RawNode } from '../../../index.js';
3+
import NavigationEndpoint from '../../NavigationEndpoint.js';
4+
import Author from '../../misc/Author.js';
5+
import Text from '../../misc/Text.js';
6+
7+
export default class LiveChatSponsorshipsGiftRedemptionAnnouncement extends YTNode {
8+
static type = 'LiveChatSponsorshipsGiftRedemptionAnnouncement';
9+
10+
id: string;
11+
timestamp_usec: string;
12+
timestamp_text: Text;
13+
author: Author;
14+
message: Text;
15+
menu_endpoint: NavigationEndpoint;
16+
context_menu_accessibility_label: string;
17+
18+
constructor(data: RawNode) {
19+
super();
20+
this.id = data.id;
21+
this.timestamp_usec = data.timestampUsec;
22+
this.timestamp_text = new Text(data.timestampText);
23+
24+
this.author = new Author(
25+
data.authorName,
26+
data.authorBadges,
27+
data.authorPhoto,
28+
data.authorExternalChannelId
29+
);
30+
31+
this.message = new Text(data.message);
32+
this.menu_endpoint = new NavigationEndpoint(data.contextMenuEndpoint);
33+
this.context_menu_accessibility_label = data.contextMenuAccessibility.accessibilityData.label;
34+
}
35+
}

src/parser/nodes.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -188,6 +188,7 @@ export { default as LiveChatPlaceholderItem } from './classes/livechat/items/Liv
188188
export { default as LiveChatProductItem } from './classes/livechat/items/LiveChatProductItem.js';
189189
export { default as LiveChatRestrictedParticipation } from './classes/livechat/items/LiveChatRestrictedParticipation.js';
190190
export { default as LiveChatSponsorshipsGiftPurchaseAnnouncement } from './classes/livechat/items/LiveChatSponsorshipsGiftPurchaseAnnouncement.js';
191+
export { default as LiveChatSponsorshipsGiftRedemptionAnnouncement } from './classes/livechat/items/LiveChatSponsorshipsGiftRedemptionAnnouncement.js';
191192
export { default as LiveChatSponsorshipsHeader } from './classes/livechat/items/LiveChatSponsorshipsHeader.js';
192193
export { default as LiveChatTextMessage } from './classes/livechat/items/LiveChatTextMessage.js';
193194
export { default as LiveChatTickerPaidMessageItem } from './classes/livechat/items/LiveChatTickerPaidMessageItem.js';

0 commit comments

Comments
 (0)