@overlaysymphony/twitch 0.3.4 → 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.
- package/package.json +3 -2
- package/src/chat/chat.ts +5 -3
- package/src/eventsub/events/automod.message.hold-2.ts +3 -3
- package/src/eventsub/events/automod.message.update-2.ts +3 -3
- package/src/eventsub/events/automod.settings.update-1.ts +3 -3
- package/src/eventsub/events/automod.terms.update-1.ts +3 -3
- package/src/eventsub/events/channel.ad_break.begin-1.ts +2 -2
- package/src/eventsub/events/channel.ban-1.ts +2 -2
- package/src/eventsub/events/channel.bits.use-1.ts +2 -2
- package/src/eventsub/events/channel.channel_points_automatic_reward_redemption.add-2.ts +2 -2
- package/src/eventsub/events/channel.channel_points_custom_reward.add-1.ts +2 -2
- package/src/eventsub/events/channel.channel_points_custom_reward.remove-1.ts +2 -2
- package/src/eventsub/events/channel.channel_points_custom_reward.update-1.ts +2 -2
- package/src/eventsub/events/channel.channel_points_custom_reward_redemption.add-1.ts +2 -2
- package/src/eventsub/events/channel.channel_points_custom_reward_redemption.update-1.ts +2 -2
- package/src/eventsub/events/channel.charity_campaign.donate-1.ts +2 -2
- package/src/eventsub/events/channel.charity_campaign.progress-1.ts +2 -2
- package/src/eventsub/events/channel.charity_campaign.start-1.ts +2 -2
- package/src/eventsub/events/channel.charity_campaign.stop-1.ts +2 -2
- package/src/eventsub/events/channel.chat.clear-1.ts +3 -3
- package/src/eventsub/events/channel.chat.clear_user_messages-1.ts +3 -3
- package/src/eventsub/events/channel.chat.message-1.ts +3 -3
- package/src/eventsub/events/channel.chat.message_delete-1.ts +3 -3
- package/src/eventsub/events/channel.chat.notification-1.ts +3 -3
- package/src/eventsub/events/channel.chat.user_message_hold-1.ts +3 -3
- package/src/eventsub/events/channel.chat.user_message_update-1.ts +3 -3
- package/src/eventsub/events/channel.chat_settings.update-1.ts +3 -3
- package/src/eventsub/events/channel.cheer-1.ts +2 -2
- package/src/eventsub/events/channel.follow-2.ts +3 -3
- package/src/eventsub/events/channel.goal.begin-1.ts +2 -2
- package/src/eventsub/events/channel.goal.end-1.ts +2 -2
- package/src/eventsub/events/channel.goal.progress-1.ts +2 -2
- package/src/eventsub/events/channel.guest_star_guest.update-beta.ts +3 -3
- package/src/eventsub/events/channel.guest_star_session.begin-beta.ts +3 -3
- package/src/eventsub/events/channel.guest_star_session.end-beta.ts +3 -3
- package/src/eventsub/events/channel.guest_star_settings.update-beta.ts +3 -3
- package/src/eventsub/events/channel.hype_train.begin-2.ts +2 -2
- package/src/eventsub/events/channel.hype_train.end-2.ts +2 -2
- package/src/eventsub/events/channel.hype_train.progress-2.ts +2 -2
- package/src/eventsub/events/channel.moderate-2.ts +3 -3
- package/src/eventsub/events/channel.moderator.add-1.ts +2 -2
- package/src/eventsub/events/channel.moderator.remove-1.ts +2 -2
- package/src/eventsub/events/channel.poll.begin-1.ts +2 -2
- package/src/eventsub/events/channel.poll.end-1.ts +2 -2
- package/src/eventsub/events/channel.poll.progress-1.ts +2 -2
- package/src/eventsub/events/channel.prediction.begin-1.ts +2 -2
- package/src/eventsub/events/channel.prediction.end-1.ts +2 -2
- package/src/eventsub/events/channel.prediction.lock-1.ts +2 -2
- package/src/eventsub/events/channel.prediction.progress-1.ts +2 -2
- package/src/eventsub/events/channel.raid-1.ts +2 -2
- package/src/eventsub/events/channel.shared_chat.begin-1.ts +2 -2
- package/src/eventsub/events/channel.shared_chat.end-1.ts +2 -2
- package/src/eventsub/events/channel.shared_chat.update-1.ts +2 -2
- package/src/eventsub/events/channel.shield_mode.begin-1.ts +3 -3
- package/src/eventsub/events/channel.shield_mode.end-1.ts +3 -3
- package/src/eventsub/events/channel.shoutout.create-1.ts +3 -3
- package/src/eventsub/events/channel.shoutout.receive-1.ts +3 -3
- package/src/eventsub/events/channel.subscribe-1.ts +2 -2
- package/src/eventsub/events/channel.subscription.end-1.ts +2 -2
- package/src/eventsub/events/channel.subscription.gift-1.ts +2 -2
- package/src/eventsub/events/channel.subscription.message-1.ts +2 -2
- package/src/eventsub/events/channel.suspicious_user.message-1.ts +3 -3
- package/src/eventsub/events/channel.suspicious_user.update-1.ts +3 -3
- package/src/eventsub/events/channel.unban-1.ts +2 -2
- package/src/eventsub/events/channel.unban_request.create-1.ts +3 -3
- package/src/eventsub/events/channel.unban_request.resolve-1.ts +3 -3
- package/src/eventsub/events/channel.update-2.ts +2 -2
- package/src/eventsub/events/channel.vip.add-1.ts +2 -2
- package/src/eventsub/events/channel.vip.remove-1.ts +2 -2
- package/src/eventsub/events/channel.warning.acknowledge-1.ts +3 -3
- package/src/eventsub/events/channel.warning.send-1.ts +3 -3
- package/src/eventsub/events/stream.offline-1.ts +2 -2
- package/src/eventsub/events/stream.online-1.ts +2 -2
- package/src/eventsub/events/user.update-1.ts +2 -2
- package/src/eventsub/events/user.whisper.message-1.ts +2 -2
- package/src/eventsub/events-helpers.ts +11 -4
- package/src/eventsub/eventsub.ts +52 -34
- package/src/eventsub/index.ts +1 -0
- package/src/helix/index.ts +1 -0
- package/src/helix/users/users.ts +29 -0
- package/src/helpers/alerts/alerts.ts +2 -2
- package/src/helpers/charity/charity.ts +2 -2
- package/src/helpers/goal/goal.ts +2 -2
- package/src/helpers/hype-train/hype-train.ts +2 -2
- package/src/helpers/poll/poll.ts +2 -2
- package/src/helpers/prediction/prediction.ts +2 -2
- package/src/helpers/redemption/redemption.ts +2 -2
- package/src/helpers/status/status.ts +2 -2
|
@@ -247,12 +247,12 @@ registerEvent("channel.moderate", {
|
|
|
247
247
|
"moderator:read:vips",
|
|
248
248
|
"moderator:read:warnings",
|
|
249
249
|
],
|
|
250
|
-
subscriber: (
|
|
250
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
251
251
|
type: "channel.moderate",
|
|
252
252
|
version: "2",
|
|
253
253
|
condition: {
|
|
254
|
-
broadcaster_user_id:
|
|
255
|
-
moderator_user_id:
|
|
254
|
+
broadcaster_user_id: targetUserId,
|
|
255
|
+
moderator_user_id: currentUserId,
|
|
256
256
|
},
|
|
257
257
|
}),
|
|
258
258
|
})
|
|
@@ -34,11 +34,11 @@ type ChannelModeratorAdd = EventConfig<{
|
|
|
34
34
|
|
|
35
35
|
registerEvent("channel.moderator.add", {
|
|
36
36
|
scopes: ["moderation:read"],
|
|
37
|
-
subscriber: (
|
|
37
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
38
38
|
type: "channel.moderator.add",
|
|
39
39
|
version: "1",
|
|
40
40
|
condition: {
|
|
41
|
-
broadcaster_user_id:
|
|
41
|
+
broadcaster_user_id: targetUserId,
|
|
42
42
|
},
|
|
43
43
|
}),
|
|
44
44
|
})
|
|
@@ -34,11 +34,11 @@ type ChannelModeratorRemove = EventConfig<{
|
|
|
34
34
|
|
|
35
35
|
registerEvent("channel.moderator.remove", {
|
|
36
36
|
scopes: ["moderation:read"],
|
|
37
|
-
subscriber: (
|
|
37
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
38
38
|
type: "channel.moderator.remove",
|
|
39
39
|
version: "1",
|
|
40
40
|
condition: {
|
|
41
|
-
broadcaster_user_id:
|
|
41
|
+
broadcaster_user_id: targetUserId,
|
|
42
42
|
},
|
|
43
43
|
}),
|
|
44
44
|
})
|
|
@@ -63,11 +63,11 @@ type ChannelPollBegin = EventConfig<{
|
|
|
63
63
|
|
|
64
64
|
registerEvent("channel.poll.begin", {
|
|
65
65
|
scopes: ["channel:manage:polls", "channel:read:polls"],
|
|
66
|
-
subscriber: (
|
|
66
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
67
67
|
type: "channel.poll.begin",
|
|
68
68
|
version: "1",
|
|
69
69
|
condition: {
|
|
70
|
-
broadcaster_user_id:
|
|
70
|
+
broadcaster_user_id: targetUserId,
|
|
71
71
|
},
|
|
72
72
|
}),
|
|
73
73
|
})
|
|
@@ -65,11 +65,11 @@ type ChannelPollEnd = EventConfig<{
|
|
|
65
65
|
|
|
66
66
|
registerEvent("channel.poll.end", {
|
|
67
67
|
scopes: ["channel:manage:polls", "channel:read:polls"],
|
|
68
|
-
subscriber: (
|
|
68
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
69
69
|
type: "channel.poll.end",
|
|
70
70
|
version: "1",
|
|
71
71
|
condition: {
|
|
72
|
-
broadcaster_user_id:
|
|
72
|
+
broadcaster_user_id: targetUserId,
|
|
73
73
|
},
|
|
74
74
|
}),
|
|
75
75
|
})
|
|
@@ -63,11 +63,11 @@ type ChannelPollProgress = EventConfig<{
|
|
|
63
63
|
|
|
64
64
|
registerEvent("channel.poll.progress", {
|
|
65
65
|
scopes: ["channel:manage:polls", "channel:read:polls"],
|
|
66
|
-
subscriber: (
|
|
66
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
67
67
|
type: "channel.poll.progress",
|
|
68
68
|
version: "1",
|
|
69
69
|
condition: {
|
|
70
|
-
broadcaster_user_id:
|
|
70
|
+
broadcaster_user_id: targetUserId,
|
|
71
71
|
},
|
|
72
72
|
}),
|
|
73
73
|
})
|
|
@@ -62,11 +62,11 @@ type ChannelPredictionBegin = EventConfig<{
|
|
|
62
62
|
|
|
63
63
|
registerEvent("channel.prediction.begin", {
|
|
64
64
|
scopes: ["channel:manage:predictions", "channel:read:predictions"],
|
|
65
|
-
subscriber: (
|
|
65
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
66
66
|
type: "channel.prediction.begin",
|
|
67
67
|
version: "1",
|
|
68
68
|
condition: {
|
|
69
|
-
broadcaster_user_id:
|
|
69
|
+
broadcaster_user_id: targetUserId,
|
|
70
70
|
},
|
|
71
71
|
}),
|
|
72
72
|
})
|
|
@@ -66,11 +66,11 @@ type ChannelPredictionEnd = EventConfig<{
|
|
|
66
66
|
|
|
67
67
|
registerEvent("channel.prediction.end", {
|
|
68
68
|
scopes: ["channel:manage:predictions", "channel:read:predictions"],
|
|
69
|
-
subscriber: (
|
|
69
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
70
70
|
type: "channel.prediction.end",
|
|
71
71
|
version: "1",
|
|
72
72
|
condition: {
|
|
73
|
-
broadcaster_user_id:
|
|
73
|
+
broadcaster_user_id: targetUserId,
|
|
74
74
|
},
|
|
75
75
|
}),
|
|
76
76
|
})
|
|
@@ -62,11 +62,11 @@ type ChannelPredictionLock = EventConfig<{
|
|
|
62
62
|
|
|
63
63
|
registerEvent("channel.prediction.lock", {
|
|
64
64
|
scopes: ["channel:manage:predictions", "channel:read:predictions"],
|
|
65
|
-
subscriber: (
|
|
65
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
66
66
|
type: "channel.prediction.lock",
|
|
67
67
|
version: "1",
|
|
68
68
|
condition: {
|
|
69
|
-
broadcaster_user_id:
|
|
69
|
+
broadcaster_user_id: targetUserId,
|
|
70
70
|
},
|
|
71
71
|
}),
|
|
72
72
|
})
|
|
@@ -62,11 +62,11 @@ type ChannelPredictionProgress = EventConfig<{
|
|
|
62
62
|
|
|
63
63
|
registerEvent("channel.prediction.progress", {
|
|
64
64
|
scopes: ["channel:manage:predictions", "channel:read:predictions"],
|
|
65
|
-
subscriber: (
|
|
65
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
66
66
|
type: "channel.prediction.progress",
|
|
67
67
|
version: "1",
|
|
68
68
|
condition: {
|
|
69
|
-
broadcaster_user_id:
|
|
69
|
+
broadcaster_user_id: targetUserId,
|
|
70
70
|
},
|
|
71
71
|
}),
|
|
72
72
|
})
|
|
@@ -38,11 +38,11 @@ type ChannelRaid = EventConfig<{
|
|
|
38
38
|
|
|
39
39
|
registerEvent("channel.raid", {
|
|
40
40
|
scopes: [],
|
|
41
|
-
subscriber: (
|
|
41
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
42
42
|
type: "channel.raid",
|
|
43
43
|
version: "1",
|
|
44
44
|
condition: {
|
|
45
|
-
to_broadcaster_user_id:
|
|
45
|
+
to_broadcaster_user_id: targetUserId,
|
|
46
46
|
},
|
|
47
47
|
}),
|
|
48
48
|
})
|
|
@@ -45,11 +45,11 @@ type ChannelSharedChatBegin = EventConfig<{
|
|
|
45
45
|
|
|
46
46
|
registerEvent("channel.shared_chat.begin", {
|
|
47
47
|
scopes: [],
|
|
48
|
-
subscriber: (
|
|
48
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
49
49
|
type: "channel.shared_chat.begin",
|
|
50
50
|
version: "1",
|
|
51
51
|
condition: {
|
|
52
|
-
broadcaster_user_id:
|
|
52
|
+
broadcaster_user_id: targetUserId,
|
|
53
53
|
},
|
|
54
54
|
}),
|
|
55
55
|
})
|
|
@@ -36,11 +36,11 @@ type ChannelSharedChatEnd = EventConfig<{
|
|
|
36
36
|
|
|
37
37
|
registerEvent("channel.shared_chat.end", {
|
|
38
38
|
scopes: [],
|
|
39
|
-
subscriber: (
|
|
39
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
40
40
|
type: "channel.shared_chat.end",
|
|
41
41
|
version: "1",
|
|
42
42
|
condition: {
|
|
43
|
-
broadcaster_user_id:
|
|
43
|
+
broadcaster_user_id: targetUserId,
|
|
44
44
|
},
|
|
45
45
|
}),
|
|
46
46
|
})
|
|
@@ -45,11 +45,11 @@ type ChannelSharedChatUpdate = EventConfig<{
|
|
|
45
45
|
|
|
46
46
|
registerEvent("channel.shared_chat.update", {
|
|
47
47
|
scopes: [],
|
|
48
|
-
subscriber: (
|
|
48
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
49
49
|
type: "channel.shared_chat.update",
|
|
50
50
|
version: "1",
|
|
51
51
|
condition: {
|
|
52
|
-
broadcaster_user_id:
|
|
52
|
+
broadcaster_user_id: targetUserId,
|
|
53
53
|
},
|
|
54
54
|
}),
|
|
55
55
|
})
|
|
@@ -40,12 +40,12 @@ type ChannelShieldModeBegin = EventConfig<{
|
|
|
40
40
|
|
|
41
41
|
registerEvent("channel.shield_mode.begin", {
|
|
42
42
|
scopes: ["moderator:manage:shield", "moderator:read:shield"],
|
|
43
|
-
subscriber: (
|
|
43
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
44
44
|
type: "channel.shield_mode.begin",
|
|
45
45
|
version: "1",
|
|
46
46
|
condition: {
|
|
47
|
-
broadcaster_user_id:
|
|
48
|
-
moderator_user_id:
|
|
47
|
+
broadcaster_user_id: targetUserId,
|
|
48
|
+
moderator_user_id: currentUserId,
|
|
49
49
|
},
|
|
50
50
|
}),
|
|
51
51
|
})
|
|
@@ -40,12 +40,12 @@ type ChannelShieldModeEnd = EventConfig<{
|
|
|
40
40
|
|
|
41
41
|
registerEvent("channel.shield_mode.end", {
|
|
42
42
|
scopes: ["moderator:manage:shield", "moderator:read:shield"],
|
|
43
|
-
subscriber: (
|
|
43
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
44
44
|
type: "channel.shield_mode.end",
|
|
45
45
|
version: "1",
|
|
46
46
|
condition: {
|
|
47
|
-
broadcaster_user_id:
|
|
48
|
-
moderator_user_id:
|
|
47
|
+
broadcaster_user_id: targetUserId,
|
|
48
|
+
moderator_user_id: currentUserId,
|
|
49
49
|
},
|
|
50
50
|
}),
|
|
51
51
|
})
|
|
@@ -50,12 +50,12 @@ type ChannelShoutoutCreate = EventConfig<{
|
|
|
50
50
|
|
|
51
51
|
registerEvent("channel.shoutout.create", {
|
|
52
52
|
scopes: ["moderator:manage:shoutouts", "moderator:read:shoutouts"],
|
|
53
|
-
subscriber: (
|
|
53
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
54
54
|
type: "channel.shoutout.create",
|
|
55
55
|
version: "1",
|
|
56
56
|
condition: {
|
|
57
|
-
broadcaster_user_id:
|
|
58
|
-
moderator_user_id:
|
|
57
|
+
broadcaster_user_id: targetUserId,
|
|
58
|
+
moderator_user_id: currentUserId,
|
|
59
59
|
},
|
|
60
60
|
}),
|
|
61
61
|
})
|
|
@@ -40,12 +40,12 @@ type ChannelShoutoutReceive = EventConfig<{
|
|
|
40
40
|
|
|
41
41
|
registerEvent("channel.shoutout.receive", {
|
|
42
42
|
scopes: ["moderator:manage:shoutouts", "moderator:read:shoutouts"],
|
|
43
|
-
subscriber: (
|
|
43
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
44
44
|
type: "channel.shoutout.receive",
|
|
45
45
|
version: "1",
|
|
46
46
|
condition: {
|
|
47
|
-
broadcaster_user_id:
|
|
48
|
-
moderator_user_id:
|
|
47
|
+
broadcaster_user_id: targetUserId,
|
|
48
|
+
moderator_user_id: currentUserId,
|
|
49
49
|
},
|
|
50
50
|
}),
|
|
51
51
|
})
|
|
@@ -38,11 +38,11 @@ type ChannelSubscribe = EventConfig<{
|
|
|
38
38
|
|
|
39
39
|
registerEvent("channel.subscribe", {
|
|
40
40
|
scopes: ["channel:read:subscriptions"],
|
|
41
|
-
subscriber: (
|
|
41
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
42
42
|
type: "channel.subscribe",
|
|
43
43
|
version: "1",
|
|
44
44
|
condition: {
|
|
45
|
-
broadcaster_user_id:
|
|
45
|
+
broadcaster_user_id: targetUserId,
|
|
46
46
|
},
|
|
47
47
|
}),
|
|
48
48
|
})
|
|
@@ -38,11 +38,11 @@ type ChannelSubscriptionEnd = EventConfig<{
|
|
|
38
38
|
|
|
39
39
|
registerEvent("channel.subscription.end", {
|
|
40
40
|
scopes: ["channel:read:subscriptions"],
|
|
41
|
-
subscriber: (
|
|
41
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
42
42
|
type: "channel.subscription.end",
|
|
43
43
|
version: "1",
|
|
44
44
|
condition: {
|
|
45
|
-
broadcaster_user_id:
|
|
45
|
+
broadcaster_user_id: targetUserId,
|
|
46
46
|
},
|
|
47
47
|
}),
|
|
48
48
|
})
|
|
@@ -42,11 +42,11 @@ type ChannelSubscriptionGift = EventConfig<{
|
|
|
42
42
|
|
|
43
43
|
registerEvent("channel.subscription.gift", {
|
|
44
44
|
scopes: ["channel:read:subscriptions"],
|
|
45
|
-
subscriber: (
|
|
45
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
46
46
|
type: "channel.subscription.gift",
|
|
47
47
|
version: "1",
|
|
48
48
|
condition: {
|
|
49
|
-
broadcaster_user_id:
|
|
49
|
+
broadcaster_user_id: targetUserId,
|
|
50
50
|
},
|
|
51
51
|
}),
|
|
52
52
|
})
|
|
@@ -56,11 +56,11 @@ type ChannelSubscriptionMessage = EventConfig<{
|
|
|
56
56
|
|
|
57
57
|
registerEvent("channel.subscription.message", {
|
|
58
58
|
scopes: ["channel:read:subscriptions"],
|
|
59
|
-
subscriber: (
|
|
59
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
60
60
|
type: "channel.subscription.message",
|
|
61
61
|
version: "1",
|
|
62
62
|
condition: {
|
|
63
|
-
broadcaster_user_id:
|
|
63
|
+
broadcaster_user_id: targetUserId,
|
|
64
64
|
},
|
|
65
65
|
}),
|
|
66
66
|
})
|
|
@@ -74,12 +74,12 @@ type ChannelSuspiciousUserMessage = EventConfig<{
|
|
|
74
74
|
|
|
75
75
|
registerEvent("channel.suspicious_user.message", {
|
|
76
76
|
scopes: ["moderator:read:suspicious"],
|
|
77
|
-
subscriber: (
|
|
77
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
78
78
|
type: "channel.suspicious_user.message",
|
|
79
79
|
version: "1",
|
|
80
80
|
condition: {
|
|
81
|
-
moderator_user_id:
|
|
82
|
-
broadcaster_user_id:
|
|
81
|
+
moderator_user_id: currentUserId,
|
|
82
|
+
broadcaster_user_id: targetUserId,
|
|
83
83
|
},
|
|
84
84
|
}),
|
|
85
85
|
})
|
|
@@ -44,12 +44,12 @@ type ChannelSuspiciousUserUpdate = EventConfig<{
|
|
|
44
44
|
|
|
45
45
|
registerEvent("channel.suspicious_user.update", {
|
|
46
46
|
scopes: ["moderator:read:suspicious"],
|
|
47
|
-
subscriber: (
|
|
47
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
48
48
|
type: "channel.suspicious_user.update",
|
|
49
49
|
version: "1",
|
|
50
50
|
condition: {
|
|
51
|
-
moderator_user_id:
|
|
52
|
-
broadcaster_user_id:
|
|
51
|
+
moderator_user_id: currentUserId,
|
|
52
|
+
broadcaster_user_id: targetUserId,
|
|
53
53
|
},
|
|
54
54
|
}),
|
|
55
55
|
})
|
|
@@ -40,11 +40,11 @@ type ChannelUnban = EventConfig<{
|
|
|
40
40
|
|
|
41
41
|
registerEvent("channel.unban", {
|
|
42
42
|
scopes: ["channel:moderate"],
|
|
43
|
-
subscriber: (
|
|
43
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
44
44
|
type: "channel.unban",
|
|
45
45
|
version: "1",
|
|
46
46
|
condition: {
|
|
47
|
-
broadcaster_user_id:
|
|
47
|
+
broadcaster_user_id: targetUserId,
|
|
48
48
|
},
|
|
49
49
|
}),
|
|
50
50
|
})
|
|
@@ -42,12 +42,12 @@ type ChannelUnbanRequestCreate = EventConfig<{
|
|
|
42
42
|
|
|
43
43
|
registerEvent("channel.unban_request.create", {
|
|
44
44
|
scopes: ["moderator:manage:unban", "moderator:read:unban"],
|
|
45
|
-
subscriber: (
|
|
45
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
46
46
|
type: "channel.unban_request.create",
|
|
47
47
|
version: "1",
|
|
48
48
|
condition: {
|
|
49
|
-
moderator_user_id:
|
|
50
|
-
broadcaster_user_id:
|
|
49
|
+
moderator_user_id: currentUserId,
|
|
50
|
+
broadcaster_user_id: targetUserId,
|
|
51
51
|
},
|
|
52
52
|
}),
|
|
53
53
|
})
|
|
@@ -53,12 +53,12 @@ type ChannelUnbanRequestResolve = EventConfig<{
|
|
|
53
53
|
|
|
54
54
|
registerEvent("channel.unban_request.resolve", {
|
|
55
55
|
scopes: ["moderator:manage:unban", "moderator:read:unban"],
|
|
56
|
-
subscriber: (
|
|
56
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
57
57
|
type: "channel.unban_request.resolve",
|
|
58
58
|
version: "1",
|
|
59
59
|
condition: {
|
|
60
|
-
moderator_user_id:
|
|
61
|
-
broadcaster_user_id:
|
|
60
|
+
moderator_user_id: currentUserId,
|
|
61
|
+
broadcaster_user_id: targetUserId,
|
|
62
62
|
},
|
|
63
63
|
}),
|
|
64
64
|
})
|
|
@@ -38,11 +38,11 @@ type ChannelUpdate = EventConfig<{
|
|
|
38
38
|
|
|
39
39
|
registerEvent("channel.update", {
|
|
40
40
|
scopes: [],
|
|
41
|
-
subscriber: (
|
|
41
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
42
42
|
type: "channel.update",
|
|
43
43
|
version: "2",
|
|
44
44
|
condition: {
|
|
45
|
-
broadcaster_user_id:
|
|
45
|
+
broadcaster_user_id: targetUserId,
|
|
46
46
|
},
|
|
47
47
|
}),
|
|
48
48
|
})
|
|
@@ -34,11 +34,11 @@ type ChannelVipAdd = EventConfig<{
|
|
|
34
34
|
|
|
35
35
|
registerEvent("channel.vip.add", {
|
|
36
36
|
scopes: ["channel:manage:vips", "channel:read:vips"],
|
|
37
|
-
subscriber: (
|
|
37
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
38
38
|
type: "channel.vip.add",
|
|
39
39
|
version: "1",
|
|
40
40
|
condition: {
|
|
41
|
-
broadcaster_user_id:
|
|
41
|
+
broadcaster_user_id: targetUserId,
|
|
42
42
|
},
|
|
43
43
|
}),
|
|
44
44
|
})
|
|
@@ -34,11 +34,11 @@ type ChannelVipRemove = EventConfig<{
|
|
|
34
34
|
|
|
35
35
|
registerEvent("channel.vip.remove", {
|
|
36
36
|
scopes: ["channel:manage:vips", "channel:read:vips"],
|
|
37
|
-
subscriber: (
|
|
37
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
38
38
|
type: "channel.vip.remove",
|
|
39
39
|
version: "1",
|
|
40
40
|
condition: {
|
|
41
|
-
broadcaster_user_id:
|
|
41
|
+
broadcaster_user_id: targetUserId,
|
|
42
42
|
},
|
|
43
43
|
}),
|
|
44
44
|
})
|
|
@@ -36,12 +36,12 @@ type ChannelWarningAcknowledge = EventConfig<{
|
|
|
36
36
|
|
|
37
37
|
registerEvent("channel.warning.acknowledge", {
|
|
38
38
|
scopes: ["moderator:manage:warnings", "moderator:read:warnings"],
|
|
39
|
-
subscriber: (
|
|
39
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
40
40
|
type: "channel.warning.acknowledge",
|
|
41
41
|
version: "1",
|
|
42
42
|
condition: {
|
|
43
|
-
broadcaster_user_id:
|
|
44
|
-
moderator_user_id:
|
|
43
|
+
broadcaster_user_id: targetUserId,
|
|
44
|
+
moderator_user_id: currentUserId,
|
|
45
45
|
},
|
|
46
46
|
}),
|
|
47
47
|
})
|
|
@@ -46,12 +46,12 @@ type ChannelWarningSend = EventConfig<{
|
|
|
46
46
|
|
|
47
47
|
registerEvent("channel.warning.send", {
|
|
48
48
|
scopes: ["moderator:manage:warnings", "moderator:read:warnings"],
|
|
49
|
-
subscriber: (
|
|
49
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
50
50
|
type: "channel.warning.send",
|
|
51
51
|
version: "1",
|
|
52
52
|
condition: {
|
|
53
|
-
broadcaster_user_id:
|
|
54
|
-
moderator_user_id:
|
|
53
|
+
broadcaster_user_id: targetUserId,
|
|
54
|
+
moderator_user_id: currentUserId,
|
|
55
55
|
},
|
|
56
56
|
}),
|
|
57
57
|
})
|
|
@@ -28,11 +28,11 @@ type StreamOffline = EventConfig<{
|
|
|
28
28
|
|
|
29
29
|
registerEvent("stream.offline", {
|
|
30
30
|
scopes: [],
|
|
31
|
-
subscriber: (
|
|
31
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
32
32
|
type: "stream.offline",
|
|
33
33
|
version: "1",
|
|
34
34
|
condition: {
|
|
35
|
-
broadcaster_user_id:
|
|
35
|
+
broadcaster_user_id: targetUserId,
|
|
36
36
|
},
|
|
37
37
|
}),
|
|
38
38
|
})
|
|
@@ -34,11 +34,11 @@ type StreamOnline = EventConfig<{
|
|
|
34
34
|
|
|
35
35
|
registerEvent("stream.online", {
|
|
36
36
|
scopes: [],
|
|
37
|
-
subscriber: (
|
|
37
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
38
38
|
type: "stream.online",
|
|
39
39
|
version: "1",
|
|
40
40
|
condition: {
|
|
41
|
-
broadcaster_user_id:
|
|
41
|
+
broadcaster_user_id: targetUserId,
|
|
42
42
|
},
|
|
43
43
|
}),
|
|
44
44
|
})
|
|
@@ -38,11 +38,11 @@ type UserUpdate = EventConfig<{
|
|
|
38
38
|
|
|
39
39
|
registerEvent("user.update", {
|
|
40
40
|
scopes: ["user:read:email"],
|
|
41
|
-
subscriber: (
|
|
41
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
42
42
|
type: "user.update",
|
|
43
43
|
version: "1",
|
|
44
44
|
condition: {
|
|
45
|
-
user_id:
|
|
45
|
+
user_id: currentUserId,
|
|
46
46
|
},
|
|
47
47
|
}),
|
|
48
48
|
})
|
|
@@ -41,11 +41,11 @@ type UserWhisperMessage = EventConfig<{
|
|
|
41
41
|
|
|
42
42
|
registerEvent("user.whisper.message", {
|
|
43
43
|
scopes: ["user:manage:whispers", "user:read:whispers"],
|
|
44
|
-
subscriber: (
|
|
44
|
+
subscriber: (currentUserId, targetUserId) => ({
|
|
45
45
|
type: "user.whisper.message",
|
|
46
46
|
version: "1",
|
|
47
47
|
condition: {
|
|
48
|
-
user_id:
|
|
48
|
+
user_id: currentUserId,
|
|
49
49
|
},
|
|
50
50
|
}),
|
|
51
51
|
})
|
|
@@ -32,7 +32,10 @@ export type EventConfig<
|
|
|
32
32
|
const events: {
|
|
33
33
|
[Type in EventType]?: {
|
|
34
34
|
scopes: string[]
|
|
35
|
-
subscriber: (
|
|
35
|
+
subscriber: (
|
|
36
|
+
currentUserId: string,
|
|
37
|
+
targetUserId: string,
|
|
38
|
+
) => EventConfigs[Type]["Subscription"]
|
|
36
39
|
}
|
|
37
40
|
} = {}
|
|
38
41
|
|
|
@@ -40,7 +43,10 @@ export function registerEvent<Type extends EventType>(
|
|
|
40
43
|
type: Type,
|
|
41
44
|
config: {
|
|
42
45
|
scopes: string[]
|
|
43
|
-
subscriber: (
|
|
46
|
+
subscriber: (
|
|
47
|
+
currentUserId: string,
|
|
48
|
+
targetUserId: string,
|
|
49
|
+
) => EventConfigs[Type]["Subscription"]
|
|
44
50
|
},
|
|
45
51
|
): void {
|
|
46
52
|
// @ts-expect-error too complex for typescript
|
|
@@ -49,9 +55,10 @@ export function registerEvent<Type extends EventType>(
|
|
|
49
55
|
|
|
50
56
|
export function buildSubscription<Type extends EventType>(
|
|
51
57
|
type: Type,
|
|
52
|
-
|
|
58
|
+
currentUserId: string,
|
|
59
|
+
targetUserId: string,
|
|
53
60
|
): EventConfigs[Type]["Subscription"] {
|
|
54
61
|
if (!events[type]) throw new Error(`Event ${type} is not registered.`)
|
|
55
62
|
|
|
56
|
-
return events[type].subscriber(
|
|
63
|
+
return events[type].subscriber(currentUserId, targetUserId)
|
|
57
64
|
}
|