@overlaysymphony/twitch 0.3.3 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/package.json +3 -2
  2. package/src/authentication/authentication.ts +2 -2
  3. package/src/chat/chat.ts +6 -2
  4. package/src/eventsub/events/automod.message.hold-2.ts +3 -3
  5. package/src/eventsub/events/automod.message.update-2.ts +3 -3
  6. package/src/eventsub/events/automod.settings.update-1.ts +3 -3
  7. package/src/eventsub/events/automod.terms.update-1.ts +3 -3
  8. package/src/eventsub/events/channel.ad_break.begin-1.ts +2 -2
  9. package/src/eventsub/events/channel.ban-1.ts +2 -2
  10. package/src/eventsub/events/channel.bits.use-1.ts +2 -2
  11. package/src/eventsub/events/channel.channel_points_automatic_reward_redemption.add-2.ts +2 -2
  12. package/src/eventsub/events/channel.channel_points_custom_reward.add-1.ts +2 -2
  13. package/src/eventsub/events/channel.channel_points_custom_reward.remove-1.ts +2 -2
  14. package/src/eventsub/events/channel.channel_points_custom_reward.update-1.ts +2 -2
  15. package/src/eventsub/events/channel.channel_points_custom_reward_redemption.add-1.ts +2 -2
  16. package/src/eventsub/events/channel.channel_points_custom_reward_redemption.update-1.ts +2 -2
  17. package/src/eventsub/events/channel.charity_campaign.donate-1.ts +2 -2
  18. package/src/eventsub/events/channel.charity_campaign.progress-1.ts +2 -2
  19. package/src/eventsub/events/channel.charity_campaign.start-1.ts +2 -2
  20. package/src/eventsub/events/channel.charity_campaign.stop-1.ts +2 -2
  21. package/src/eventsub/events/channel.chat.clear-1.ts +3 -3
  22. package/src/eventsub/events/channel.chat.clear_user_messages-1.ts +3 -3
  23. package/src/eventsub/events/channel.chat.message-1.ts +3 -3
  24. package/src/eventsub/events/channel.chat.message_delete-1.ts +3 -3
  25. package/src/eventsub/events/channel.chat.notification-1.ts +3 -3
  26. package/src/eventsub/events/channel.chat.user_message_hold-1.ts +3 -3
  27. package/src/eventsub/events/channel.chat.user_message_update-1.ts +3 -3
  28. package/src/eventsub/events/channel.chat_settings.update-1.ts +3 -3
  29. package/src/eventsub/events/channel.cheer-1.ts +2 -2
  30. package/src/eventsub/events/channel.follow-2.ts +3 -3
  31. package/src/eventsub/events/channel.goal.begin-1.ts +2 -2
  32. package/src/eventsub/events/channel.goal.end-1.ts +2 -2
  33. package/src/eventsub/events/channel.goal.progress-1.ts +2 -2
  34. package/src/eventsub/events/channel.guest_star_guest.update-beta.ts +3 -3
  35. package/src/eventsub/events/channel.guest_star_session.begin-beta.ts +3 -3
  36. package/src/eventsub/events/channel.guest_star_session.end-beta.ts +3 -3
  37. package/src/eventsub/events/channel.guest_star_settings.update-beta.ts +3 -3
  38. package/src/eventsub/events/channel.hype_train.begin-2.ts +2 -2
  39. package/src/eventsub/events/channel.hype_train.end-2.ts +2 -2
  40. package/src/eventsub/events/channel.hype_train.progress-2.ts +2 -2
  41. package/src/eventsub/events/channel.moderate-2.ts +3 -3
  42. package/src/eventsub/events/channel.moderator.add-1.ts +2 -2
  43. package/src/eventsub/events/channel.moderator.remove-1.ts +2 -2
  44. package/src/eventsub/events/channel.poll.begin-1.ts +2 -2
  45. package/src/eventsub/events/channel.poll.end-1.ts +2 -2
  46. package/src/eventsub/events/channel.poll.progress-1.ts +2 -2
  47. package/src/eventsub/events/channel.prediction.begin-1.ts +2 -2
  48. package/src/eventsub/events/channel.prediction.end-1.ts +2 -2
  49. package/src/eventsub/events/channel.prediction.lock-1.ts +2 -2
  50. package/src/eventsub/events/channel.prediction.progress-1.ts +2 -2
  51. package/src/eventsub/events/channel.raid-1.ts +2 -2
  52. package/src/eventsub/events/channel.shared_chat.begin-1.ts +2 -2
  53. package/src/eventsub/events/channel.shared_chat.end-1.ts +2 -2
  54. package/src/eventsub/events/channel.shared_chat.update-1.ts +2 -2
  55. package/src/eventsub/events/channel.shield_mode.begin-1.ts +3 -3
  56. package/src/eventsub/events/channel.shield_mode.end-1.ts +3 -3
  57. package/src/eventsub/events/channel.shoutout.create-1.ts +3 -3
  58. package/src/eventsub/events/channel.shoutout.receive-1.ts +3 -3
  59. package/src/eventsub/events/channel.subscribe-1.ts +2 -2
  60. package/src/eventsub/events/channel.subscription.end-1.ts +2 -2
  61. package/src/eventsub/events/channel.subscription.gift-1.ts +2 -2
  62. package/src/eventsub/events/channel.subscription.message-1.ts +2 -2
  63. package/src/eventsub/events/channel.suspicious_user.message-1.ts +3 -3
  64. package/src/eventsub/events/channel.suspicious_user.update-1.ts +3 -3
  65. package/src/eventsub/events/channel.unban-1.ts +2 -2
  66. package/src/eventsub/events/channel.unban_request.create-1.ts +3 -3
  67. package/src/eventsub/events/channel.unban_request.resolve-1.ts +3 -3
  68. package/src/eventsub/events/channel.update-2.ts +2 -2
  69. package/src/eventsub/events/channel.vip.add-1.ts +2 -2
  70. package/src/eventsub/events/channel.vip.remove-1.ts +2 -2
  71. package/src/eventsub/events/channel.warning.acknowledge-1.ts +3 -3
  72. package/src/eventsub/events/channel.warning.send-1.ts +3 -3
  73. package/src/eventsub/events/stream.offline-1.ts +2 -2
  74. package/src/eventsub/events/stream.online-1.ts +2 -2
  75. package/src/eventsub/events/user.update-1.ts +2 -2
  76. package/src/eventsub/events/user.whisper.message-1.ts +2 -2
  77. package/src/eventsub/events-helpers.ts +11 -4
  78. package/src/eventsub/eventsub.ts +52 -34
  79. package/src/eventsub/index.ts +1 -0
  80. package/src/helix/chat/emotes.ts +59 -22
  81. package/src/helix/index.ts +1 -0
  82. package/src/helix/streams/index.ts +1 -0
  83. package/src/helix/streams/streams.ts +48 -0
  84. package/src/helix/users/users.ts +51 -0
  85. package/src/helpers/alerts/alerts.ts +3 -3
  86. package/src/helpers/charity/charity.ts +2 -2
  87. package/src/helpers/goal/goal.ts +2 -2
  88. package/src/helpers/hype-train/hype-train.ts +2 -2
  89. package/src/helpers/poll/poll.ts +2 -2
  90. package/src/helpers/prediction/prediction.ts +2 -2
  91. package/src/helpers/redemption/redemption.ts +2 -2
  92. package/src/helpers/status/status.ts +2 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@overlaysymphony/twitch",
3
- "version": "0.3.3",
3
+ "version": "0.4.0",
4
4
  "description": "Twitch module for the OverlaySymphony interactive streaming framework.",
5
5
  "homepage": "https://github.com/OverlaySymphony/overlaysymphony",
6
6
  "repository": {
@@ -12,13 +12,14 @@
12
12
  "./authentication": "./src/authentication/index.ts",
13
13
  "./chat": "./src/chat/index.ts",
14
14
  "./eventsub": "./src/eventsub/index.ts",
15
+ "./helix": "./src/helix/index.ts",
15
16
  "./helix/*": "./src/helix/*/index.ts",
16
17
  "./helpers/*": "./src/helpers/*/index.ts",
17
18
  "./ui/*": "./src/ui/*.ts",
18
19
  "./package.json": "./package.json"
19
20
  },
20
21
  "dependencies": {
21
- "@overlaysymphony/core": "0.2.2"
22
+ "@overlaysymphony/core": "0.2.4"
22
23
  },
23
24
  "devDependencies": {
24
25
  "@vitest/coverage-v8": "^2.1.2",
@@ -1,4 +1,4 @@
1
- import { type TwitchUser, getUser } from "../helix/users/index.ts"
1
+ import { type TwitchUser, getCurrentUser } from "../helix/users/index.ts"
2
2
 
3
3
  export interface Authentication {
4
4
  tokenType: "bearer"
@@ -61,7 +61,7 @@ export async function getAuthentication(
61
61
  return undefined
62
62
  }
63
63
 
64
- const user = await getUser(authentication as Authentication)
64
+ const user = await getCurrentUser(authentication as Authentication)
65
65
  if (!user) {
66
66
  return undefined
67
67
  }
package/src/chat/chat.ts CHANGED
@@ -32,9 +32,11 @@ export interface TwitchChat {
32
32
 
33
33
  export default async function createChat(
34
34
  authentication: Authentication,
35
- eventsub?: TwitchEventSub,
35
+ eventsub?: TwitchEventSub | string,
36
36
  ): Promise<TwitchChat> {
37
- eventsub ??= await createEventSub(authentication)
37
+ if (!eventsub || typeof eventsub === "string") {
38
+ eventsub = await createEventSub(authentication, eventsub)
39
+ }
38
40
 
39
41
  const send: ChatSender = async (message) => {
40
42
  await sendChatMessage(authentication, message)
@@ -46,6 +48,8 @@ export default async function createChat(
46
48
 
47
49
  const onMessage: ChatMessageSubscriber = (callback) => {
48
50
  return eventsub.on(["channel.chat.message"], (payload) => {
51
+ if (payload.event.source_broadcaster_user_id) return
52
+
49
53
  callback(payload.event)
50
54
  })
51
55
  }
@@ -70,12 +70,12 @@ type AutomodMessageHold = EventConfig<{
70
70
 
71
71
  registerEvent("automod.message.hold", {
72
72
  scopes: ["moderator:manage:automod"],
73
- subscriber: (userId) => ({
73
+ subscriber: (currentUserId, targetUserId) => ({
74
74
  type: "automod.message.hold",
75
75
  version: "2",
76
76
  condition: {
77
- broadcaster_user_id: userId,
78
- moderator_user_id: userId,
77
+ broadcaster_user_id: targetUserId,
78
+ moderator_user_id: currentUserId,
79
79
  },
80
80
  }),
81
81
  })
@@ -83,12 +83,12 @@ type AutomodMessageUpdate = EventConfig<{
83
83
 
84
84
  registerEvent("automod.message.update", {
85
85
  scopes: ["moderator:manage:automod"],
86
- subscriber: (userId) => ({
86
+ subscriber: (currentUserId, targetUserId) => ({
87
87
  type: "automod.message.update",
88
88
  version: "2",
89
89
  condition: {
90
- broadcaster_user_id: userId,
91
- moderator_user_id: userId,
90
+ broadcaster_user_id: targetUserId,
91
+ moderator_user_id: currentUserId,
92
92
  },
93
93
  }),
94
94
  })
@@ -54,12 +54,12 @@ type AutomodSettingsUpdate = EventConfig<{
54
54
 
55
55
  registerEvent("automod.settings.update", {
56
56
  scopes: ["moderator:read:automod"],
57
- subscriber: (userId) => ({
57
+ subscriber: (currentUserId, targetUserId) => ({
58
58
  type: "automod.settings.update",
59
59
  version: "1",
60
60
  condition: {
61
- broadcaster_user_id: userId,
62
- moderator_user_id: userId,
61
+ broadcaster_user_id: targetUserId,
62
+ moderator_user_id: currentUserId,
63
63
  },
64
64
  }),
65
65
  })
@@ -48,12 +48,12 @@ type AutomodTermsUpdate = EventConfig<{
48
48
 
49
49
  registerEvent("automod.terms.update", {
50
50
  scopes: ["moderator:manage:automod"],
51
- subscriber: (userId) => ({
51
+ subscriber: (currentUserId, targetUserId) => ({
52
52
  type: "automod.terms.update",
53
53
  version: "1",
54
54
  condition: {
55
- broadcaster_user_id: userId,
56
- moderator_user_id: userId,
55
+ broadcaster_user_id: targetUserId,
56
+ moderator_user_id: currentUserId,
57
57
  },
58
58
  }),
59
59
  })
@@ -40,11 +40,11 @@ type ChannelAdBreakBegin = EventConfig<{
40
40
 
41
41
  registerEvent("channel.ad_break.begin", {
42
42
  scopes: ["channel:read:ads"],
43
- subscriber: (userId) => ({
43
+ subscriber: (currentUserId, targetUserId) => ({
44
44
  type: "channel.ad_break.begin",
45
45
  version: "1",
46
46
  condition: {
47
- broadcaster_id: userId,
47
+ broadcaster_id: targetUserId,
48
48
  },
49
49
  }),
50
50
  })
@@ -48,11 +48,11 @@ type ChannelBan = EventConfig<{
48
48
 
49
49
  registerEvent("channel.ban", {
50
50
  scopes: ["channel:moderate"],
51
- subscriber: (userId) => ({
51
+ subscriber: (currentUserId, targetUserId) => ({
52
52
  type: "channel.ban",
53
53
  version: "1",
54
54
  condition: {
55
- broadcaster_user_id: userId,
55
+ broadcaster_user_id: targetUserId,
56
56
  },
57
57
  }),
58
58
  })
@@ -102,11 +102,11 @@ type ChannelBitsUse = EventConfig<{
102
102
 
103
103
  registerEvent("channel.bits.use", {
104
104
  scopes: ["bits:read"],
105
- subscriber: (userId) => ({
105
+ subscriber: (currentUserId, targetUserId) => ({
106
106
  type: "channel.bits.use",
107
107
  version: "1",
108
108
  condition: {
109
- broadcaster_user_id: userId,
109
+ broadcaster_user_id: targetUserId,
110
110
  },
111
111
  }),
112
112
  })
@@ -78,11 +78,11 @@ type ChannelChannelPointsAutomaticRewardRedemptionAdd = EventConfig<{
78
78
 
79
79
  registerEvent("channel.channel_points_automatic_reward_redemption.add", {
80
80
  scopes: ["channel:manage:redemptions", "channel:read:redemptions"],
81
- subscriber: (userId) => ({
81
+ subscriber: (currentUserId, targetUserId) => ({
82
82
  type: "channel.channel_points_automatic_reward_redemption.add",
83
83
  version: "2",
84
84
  condition: {
85
- broadcaster_user_id: userId,
85
+ broadcaster_user_id: targetUserId,
86
86
  },
87
87
  }),
88
88
  })
@@ -91,11 +91,11 @@ type ChannelChannelPointsCustomRewardAdd = EventConfig<{
91
91
 
92
92
  registerEvent("channel.channel_points_custom_reward.add", {
93
93
  scopes: ["channel:manage:redemptions", "channel:read:redemptions"],
94
- subscriber: (userId) => ({
94
+ subscriber: (currentUserId, targetUserId) => ({
95
95
  type: "channel.channel_points_custom_reward.add",
96
96
  version: "1",
97
97
  condition: {
98
- broadcaster_user_id: userId,
98
+ broadcaster_user_id: targetUserId,
99
99
  },
100
100
  }),
101
101
  })
@@ -93,11 +93,11 @@ type ChannelChannelPointsCustomRewardRemove = EventConfig<{
93
93
 
94
94
  registerEvent("channel.channel_points_custom_reward.remove", {
95
95
  scopes: ["channel:manage:redemptions", "channel:read:redemptions"],
96
- subscriber: (userId) => ({
96
+ subscriber: (currentUserId, targetUserId) => ({
97
97
  type: "channel.channel_points_custom_reward.remove",
98
98
  version: "1",
99
99
  condition: {
100
- broadcaster_user_id: userId,
100
+ broadcaster_user_id: targetUserId,
101
101
  },
102
102
  }),
103
103
  })
@@ -93,11 +93,11 @@ type ChannelChannelPointsCustomRewardUpdate = EventConfig<{
93
93
 
94
94
  registerEvent("channel.channel_points_custom_reward.update", {
95
95
  scopes: ["channel:manage:redemptions", "channel:read:redemptions"],
96
- subscriber: (userId) => ({
96
+ subscriber: (currentUserId, targetUserId) => ({
97
97
  type: "channel.channel_points_custom_reward.update",
98
98
  version: "1",
99
99
  condition: {
100
- broadcaster_user_id: userId,
100
+ broadcaster_user_id: targetUserId,
101
101
  },
102
102
  }),
103
103
  })
@@ -55,11 +55,11 @@ type ChannelChannelPointsCustomRewardRedemptionAdd = EventConfig<{
55
55
 
56
56
  registerEvent("channel.channel_points_custom_reward_redemption.add", {
57
57
  scopes: ["channel:manage:redemptions", "channel:read:redemptions"],
58
- subscriber: (userId) => ({
58
+ subscriber: (currentUserId, targetUserId) => ({
59
59
  type: "channel.channel_points_custom_reward_redemption.add",
60
60
  version: "1",
61
61
  condition: {
62
- broadcaster_user_id: userId,
62
+ broadcaster_user_id: targetUserId,
63
63
  },
64
64
  }),
65
65
  })
@@ -55,11 +55,11 @@ type ChannelChannelPointsCustomRewardRedemptionUpdate = EventConfig<{
55
55
 
56
56
  registerEvent("channel.channel_points_custom_reward_redemption.update", {
57
57
  scopes: ["channel:manage:redemptions", "channel:read:redemptions"],
58
- subscriber: (userId) => ({
58
+ subscriber: (currentUserId, targetUserId) => ({
59
59
  type: "channel.channel_points_custom_reward_redemption.update",
60
60
  version: "1",
61
61
  condition: {
62
- broadcaster_user_id: userId,
62
+ broadcaster_user_id: targetUserId,
63
63
  },
64
64
  }),
65
65
  })
@@ -59,11 +59,11 @@ type ChannelCharityCampaignDonate = EventConfig<{
59
59
 
60
60
  registerEvent("channel.charity_campaign.donate", {
61
61
  scopes: ["channel:read:charity"],
62
- subscriber: (userId) => ({
62
+ subscriber: (currentUserId, targetUserId) => ({
63
63
  type: "channel.charity_campaign.donate",
64
64
  version: "1",
65
65
  condition: {
66
- broadcaster_user_id: userId,
66
+ broadcaster_user_id: targetUserId,
67
67
  },
68
68
  }),
69
69
  })
@@ -64,11 +64,11 @@ type ChannelCharityCampaignProgress = EventConfig<{
64
64
 
65
65
  registerEvent("channel.charity_campaign.progress", {
66
66
  scopes: ["channel:read:charity"],
67
- subscriber: (userId) => ({
67
+ subscriber: (currentUserId, targetUserId) => ({
68
68
  type: "channel.charity_campaign.progress",
69
69
  version: "1",
70
70
  condition: {
71
- broadcaster_user_id: userId,
71
+ broadcaster_user_id: targetUserId,
72
72
  },
73
73
  }),
74
74
  })
@@ -66,11 +66,11 @@ type ChannelCharityCampaignStart = EventConfig<{
66
66
 
67
67
  registerEvent("channel.charity_campaign.start", {
68
68
  scopes: ["channel:read:charity"],
69
- subscriber: (userId) => ({
69
+ subscriber: (currentUserId, targetUserId) => ({
70
70
  type: "channel.charity_campaign.start",
71
71
  version: "1",
72
72
  condition: {
73
- broadcaster_user_id: userId,
73
+ broadcaster_user_id: targetUserId,
74
74
  },
75
75
  }),
76
76
  })
@@ -66,11 +66,11 @@ type ChannelCharityCampaignStop = EventConfig<{
66
66
 
67
67
  registerEvent("channel.charity_campaign.stop", {
68
68
  scopes: ["channel:read:charity"],
69
- subscriber: (userId) => ({
69
+ subscriber: (currentUserId, targetUserId) => ({
70
70
  type: "channel.charity_campaign.stop",
71
71
  version: "1",
72
72
  condition: {
73
- broadcaster_user_id: userId,
73
+ broadcaster_user_id: targetUserId,
74
74
  },
75
75
  }),
76
76
  })
@@ -30,12 +30,12 @@ type ChannelChatClear = EventConfig<{
30
30
 
31
31
  registerEvent("channel.chat.clear", {
32
32
  scopes: ["user:read:chat"],
33
- subscriber: (userId) => ({
33
+ subscriber: (currentUserId, targetUserId) => ({
34
34
  type: "channel.chat.clear",
35
35
  version: "1",
36
36
  condition: {
37
- broadcaster_user_id: userId,
38
- user_id: userId,
37
+ broadcaster_user_id: targetUserId,
38
+ user_id: currentUserId,
39
39
  },
40
40
  }),
41
41
  })
@@ -36,12 +36,12 @@ type ChannelChatClearUserMessages = EventConfig<{
36
36
 
37
37
  registerEvent("channel.chat.clear_user_messages", {
38
38
  scopes: ["user:read:chat"],
39
- subscriber: (userId) => ({
39
+ subscriber: (currentUserId, targetUserId) => ({
40
40
  type: "channel.chat.clear_user_messages",
41
41
  version: "1",
42
42
  condition: {
43
- broadcaster_user_id: userId,
44
- user_id: userId,
43
+ broadcaster_user_id: targetUserId,
44
+ user_id: currentUserId,
45
45
  },
46
46
  }),
47
47
  })
@@ -149,12 +149,12 @@ type ChannelChatMessage = EventConfig<{
149
149
 
150
150
  registerEvent("channel.chat.message", {
151
151
  scopes: ["user:read:chat"],
152
- subscriber: (userId) => ({
152
+ subscriber: (currentUserId, targetUserId) => ({
153
153
  type: "channel.chat.message",
154
154
  version: "1",
155
155
  condition: {
156
- broadcaster_user_id: userId,
157
- user_id: userId,
156
+ broadcaster_user_id: targetUserId,
157
+ user_id: currentUserId,
158
158
  },
159
159
  }),
160
160
  })
@@ -38,12 +38,12 @@ type ChannelChatMessageDelete = EventConfig<{
38
38
 
39
39
  registerEvent("channel.chat.message_delete", {
40
40
  scopes: ["user:read:chat"],
41
- subscriber: (userId) => ({
41
+ subscriber: (currentUserId, targetUserId) => ({
42
42
  type: "channel.chat.message_delete",
43
43
  version: "1",
44
44
  condition: {
45
- broadcaster_user_id: userId,
46
- user_id: userId,
45
+ broadcaster_user_id: targetUserId,
46
+ user_id: currentUserId,
47
47
  },
48
48
  }),
49
49
  })
@@ -306,12 +306,12 @@ type ChannelChatNotification = EventConfig<{
306
306
 
307
307
  registerEvent("channel.chat.notification", {
308
308
  scopes: ["user:read:chat"],
309
- subscriber: (userId) => ({
309
+ subscriber: (currentUserId, targetUserId) => ({
310
310
  type: "channel.chat.notification",
311
311
  version: "1",
312
312
  condition: {
313
- broadcaster_user_id: userId,
314
- user_id: userId,
313
+ broadcaster_user_id: targetUserId,
314
+ user_id: currentUserId,
315
315
  },
316
316
  }),
317
317
  })
@@ -64,12 +64,12 @@ type ChannelChatUserMessageHold = EventConfig<{
64
64
 
65
65
  registerEvent("channel.chat.user_message_hold", {
66
66
  scopes: ["user:read:chat"],
67
- subscriber: (userId) => ({
67
+ subscriber: (currentUserId, targetUserId) => ({
68
68
  type: "channel.chat.user_message_hold",
69
69
  version: "1",
70
70
  condition: {
71
- broadcaster_user_id: userId,
72
- user_id: userId,
71
+ broadcaster_user_id: targetUserId,
72
+ user_id: currentUserId,
73
73
  },
74
74
  }),
75
75
  })
@@ -71,12 +71,12 @@ type ChannelChatUserMessageUpdate = EventConfig<{
71
71
 
72
72
  registerEvent("channel.chat.user_message_update", {
73
73
  scopes: ["user:read:chat"],
74
- subscriber: (userId) => ({
74
+ subscriber: (currentUserId, targetUserId) => ({
75
75
  type: "channel.chat.user_message_update",
76
76
  version: "1",
77
77
  condition: {
78
- broadcaster_user_id: userId,
79
- user_id: userId,
78
+ broadcaster_user_id: targetUserId,
79
+ user_id: currentUserId,
80
80
  },
81
81
  }),
82
82
  })
@@ -72,12 +72,12 @@ type ChannelChatSettingsUpdate = EventConfig<{
72
72
 
73
73
  registerEvent("channel.chat_settings.update", {
74
74
  scopes: ["user:read:chat"],
75
- subscriber: (userId) => ({
75
+ subscriber: (currentUserId, targetUserId) => ({
76
76
  type: "channel.chat_settings.update",
77
77
  version: "1",
78
78
  condition: {
79
- broadcaster_user_id: userId,
80
- user_id: userId,
79
+ broadcaster_user_id: targetUserId,
80
+ user_id: currentUserId,
81
81
  },
82
82
  }),
83
83
  })
@@ -40,11 +40,11 @@ type ChannelCheer = EventConfig<{
40
40
 
41
41
  registerEvent("channel.cheer", {
42
42
  scopes: ["bits:read"],
43
- subscriber: (userId) => ({
43
+ subscriber: (currentUserId, targetUserId) => ({
44
44
  type: "channel.cheer",
45
45
  version: "1",
46
46
  condition: {
47
- broadcaster_user_id: userId,
47
+ broadcaster_user_id: targetUserId,
48
48
  },
49
49
  }),
50
50
  })
@@ -38,12 +38,12 @@ type ChannelFollow = EventConfig<{
38
38
 
39
39
  registerEvent("channel.follow", {
40
40
  scopes: ["moderator:read:followers"],
41
- subscriber: (userId) => ({
41
+ subscriber: (currentUserId, targetUserId) => ({
42
42
  type: "channel.follow",
43
43
  version: "2",
44
44
  condition: {
45
- broadcaster_user_id: userId,
46
- moderator_user_id: userId,
45
+ broadcaster_user_id: targetUserId,
46
+ moderator_user_id: currentUserId,
47
47
  },
48
48
  }),
49
49
  })
@@ -70,11 +70,11 @@ type ChannelGoalBegin = EventConfig<{
70
70
 
71
71
  registerEvent("channel.goal.begin", {
72
72
  scopes: ["channel:read:goals"],
73
- subscriber: (userId) => ({
73
+ subscriber: (currentUserId, targetUserId) => ({
74
74
  type: "channel.goal.begin",
75
75
  version: "1",
76
76
  condition: {
77
- broadcaster_user_id: userId,
77
+ broadcaster_user_id: targetUserId,
78
78
  },
79
79
  }),
80
80
  })
@@ -70,11 +70,11 @@ type ChannelGoalEnd = EventConfig<{
70
70
 
71
71
  registerEvent("channel.goal.end", {
72
72
  scopes: ["channel:read:goals"],
73
- subscriber: (userId) => ({
73
+ subscriber: (currentUserId, targetUserId) => ({
74
74
  type: "channel.goal.end",
75
75
  version: "1",
76
76
  condition: {
77
- broadcaster_user_id: userId,
77
+ broadcaster_user_id: targetUserId,
78
78
  },
79
79
  }),
80
80
  })
@@ -70,11 +70,11 @@ type ChannelGoalProgress = EventConfig<{
70
70
 
71
71
  registerEvent("channel.goal.progress", {
72
72
  scopes: ["channel:read:goals"],
73
- subscriber: (userId) => ({
73
+ subscriber: (currentUserId, targetUserId) => ({
74
74
  type: "channel.goal.progress",
75
75
  version: "1",
76
76
  condition: {
77
- broadcaster_user_id: userId,
77
+ broadcaster_user_id: targetUserId,
78
78
  },
79
79
  }),
80
80
  })
@@ -74,12 +74,12 @@ registerEvent("channel.guest_star_guest.update@be", {
74
74
  "moderator:manage:guest",
75
75
  "moderator:read:guest",
76
76
  ],
77
- subscriber: (userId) => ({
77
+ subscriber: (currentUserId, targetUserId) => ({
78
78
  type: "channel.guest_star_guest.update@be",
79
79
  version: "beta",
80
80
  condition: {
81
- broadcaster_user_id: userId,
82
- moderator_user_id: userId,
81
+ broadcaster_user_id: targetUserId,
82
+ moderator_user_id: currentUserId,
83
83
  },
84
84
  }),
85
85
  })
@@ -39,12 +39,12 @@ registerEvent("channel.guest_star_session.begin@be", {
39
39
  "moderator:manage:guest",
40
40
  "moderator:read:guest",
41
41
  ],
42
- subscriber: (userId) => ({
42
+ subscriber: (currentUserId, targetUserId) => ({
43
43
  type: "channel.guest_star_session.begin@be",
44
44
  version: "beta",
45
45
  condition: {
46
- broadcaster_user_id: userId,
47
- moderator_user_id: userId,
46
+ broadcaster_user_id: targetUserId,
47
+ moderator_user_id: currentUserId,
48
48
  },
49
49
  }),
50
50
  })
@@ -47,12 +47,12 @@ registerEvent("channel.guest_star_session.end@be", {
47
47
  "moderator:manage:guest",
48
48
  "moderator:read:guest",
49
49
  ],
50
- subscriber: (userId) => ({
50
+ subscriber: (currentUserId, targetUserId) => ({
51
51
  type: "channel.guest_star_session.end@be",
52
52
  version: "beta",
53
53
  condition: {
54
- broadcaster_user_id: userId,
55
- moderator_user_id: userId,
54
+ broadcaster_user_id: targetUserId,
55
+ moderator_user_id: currentUserId,
56
56
  },
57
57
  }),
58
58
  })
@@ -51,12 +51,12 @@ registerEvent("channel.guest_star_settings.update@be", {
51
51
  "moderator:manage:guest",
52
52
  "moderator:read:guest",
53
53
  ],
54
- subscriber: (userId) => ({
54
+ subscriber: (currentUserId, targetUserId) => ({
55
55
  type: "channel.guest_star_settings.update@be",
56
56
  version: "beta",
57
57
  condition: {
58
- broadcaster_user_id: userId,
59
- moderator_user_id: userId,
58
+ broadcaster_user_id: targetUserId,
59
+ moderator_user_id: currentUserId,
60
60
  },
61
61
  }),
62
62
  })
@@ -80,11 +80,11 @@ type ChannelHypeTrainBegin = EventConfig<{
80
80
 
81
81
  registerEvent("channel.hype_train.begin", {
82
82
  scopes: ["channel:read:hype"],
83
- subscriber: (userId) => ({
83
+ subscriber: (currentUserId, targetUserId) => ({
84
84
  type: "channel.hype_train.begin",
85
85
  version: "2",
86
86
  condition: {
87
- broadcaster_user_id: userId,
87
+ broadcaster_user_id: targetUserId,
88
88
  },
89
89
  }),
90
90
  })
@@ -60,11 +60,11 @@ type ChannelHypeTrainEnd = EventConfig<{
60
60
 
61
61
  registerEvent("channel.hype_train.end", {
62
62
  scopes: ["channel:read:hype"],
63
- subscriber: (userId) => ({
63
+ subscriber: (currentUserId, targetUserId) => ({
64
64
  type: "channel.hype_train.end",
65
65
  version: "2",
66
66
  condition: {
67
- broadcaster_user_id: userId,
67
+ broadcaster_user_id: targetUserId,
68
68
  },
69
69
  }),
70
70
  })