@lumiastream/lumia-types 3.3.8 → 3.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.
@@ -1,4 +1,24 @@
1
1
  import { LumiaAlertValues } from './activity.types.js';
2
+ /**
3
+ * Eventlist categories. The eventlist module uses these as a *blacklist* via
4
+ * `content.filters` — any category listed there is hidden from the rendered
5
+ * feed (and so anything NOT listed is shown).
6
+ *
7
+ * Policy: every category here corresponds to a viewer-facing event class. We
8
+ * deliberately do NOT have an "others" catch-all category — alerts that exist
9
+ * only as stream-management / administrative signals (OBS scene switches,
10
+ * stream-live notices, music-player events, poll progress, etc.) are simply
11
+ * left out of `LumiaMapAlertTypeToEventListType` below. The eventlist
12
+ * component only renders MAPPED alerts, so unmapped alerts are silently
13
+ * excluded from every feed without needing a UI toggle.
14
+ *
15
+ * When adding a new value here, mirror it in:
16
+ * - `ALL_LUMIA_EVENTLIST_CATEGORIES` in Lumia-UI's SE importer
17
+ * - the `ALL_EVENT_CATEGORIES` constant in Overlay-UI's `layer.actions.ts`
18
+ * (labelmarquee branch)
19
+ * Otherwise category-scoped widgets (`labelmarquee`, SE `*-recent` imports)
20
+ * leak the new category through.
21
+ */
2
22
  export var LumiaEventListTypes;
3
23
  (function (LumiaEventListTypes) {
4
24
  LumiaEventListTypes["REDEMPTION"] = "redemption";
@@ -23,106 +43,347 @@ export var LumiaEventListTypes;
23
43
  LumiaEventListTypes["FANS"] = "fans";
24
44
  LumiaEventListTypes["SHARES"] = "shares";
25
45
  LumiaEventListTypes["RAFFLE"] = "raffles";
26
- LumiaEventListTypes["OTHERS"] = "others";
27
46
  })(LumiaEventListTypes || (LumiaEventListTypes = {}));
47
+ /**
48
+ * Categorization map from `LumiaAlertValues` → `LumiaEventListTypes`. The
49
+ * eventlist module ONLY renders alerts that appear in this map — anything
50
+ * absent is silently excluded from every feed (no UI toggle to surface it).
51
+ *
52
+ * Policy:
53
+ * - Map only viewer-facing events. Stream-management / administrative
54
+ * signals (OBS / SLOBS / Meld scene switches, music-player events,
55
+ * poll/prediction/goal lifecycle, stream-live notices, channel
56
+ * join/leave, ad starts/stops, Pulse heartrate, etc.) are NOT mapped
57
+ * — they don't belong in a viewer-facing activity feed and have no UI
58
+ * toggle to bring them in.
59
+ * - Categorize by the *viewer's* intent, not payload shape. A Throne /
60
+ * Fourthwall shop gift purchase is a viewer buying something for the
61
+ * streamer → PURCHASES. A subscription-expired notice is admin, not a
62
+ * new subscriber → omit entirely (was OTHERS, now unmapped).
63
+ * - Session-counter alerts (e.g. TWITCH_SESSION_FOLLOWERS) mirror the
64
+ * category of their per-event cousin (FOLLOWER) so a counter widget
65
+ * can reuse the same category filter.
66
+ *
67
+ * Grouped by platform / source for review; ordering within groups follows
68
+ * the enum declaration in `activity.types.ts`. Alerts that previously
69
+ * mapped to OTHERS were removed in this revision and are now unmapped
70
+ * (purposefully hidden from all eventlists).
71
+ */
28
72
  export const LumiaMapAlertTypeToEventListType = {
73
+ // --- Lumia Stream native ---
29
74
  [LumiaAlertValues.LUMIASTREAM_DONATION]: LumiaEventListTypes.DONATION,
30
- [LumiaAlertValues.DONORDRIVE_DONATION]: LumiaEventListTypes.DONATION,
31
- [LumiaAlertValues.EXTRALIFE_DONATION]: LumiaEventListTypes.DONATION,
32
- [LumiaAlertValues.LUMIASTREAM_RAFFLE_START]: LumiaEventListTypes.RAFFLE,
33
- [LumiaAlertValues.LUMIASTREAM_RAFFLE_STOP]: LumiaEventListTypes.RAFFLE,
34
- [LumiaAlertValues.LUMIASTREAM_RAFFLE_WINNER]: LumiaEventListTypes.RAFFLE,
35
- [LumiaAlertValues.LUMIASTREAM_TOURNAMENT_START]: LumiaEventListTypes.OTHERS,
36
- [LumiaAlertValues.LUMIASTREAM_TOURNAMENT_END]: LumiaEventListTypes.OTHERS,
37
- [LumiaAlertValues.LUMIASTREAM_TOURNAMENT_WINNER]: LumiaEventListTypes.OTHERS,
38
- [LumiaAlertValues.FACEBOOK_FAN]: LumiaEventListTypes.FANS,
75
+ // Raffle / spinwheel / roulette / slots winners are explicitly hidden via
76
+ // `AlertsToFilter` below — they're stream-side games, not viewer-facing
77
+ // activity feed events.
78
+ // --- Twitch ---
79
+ [LumiaAlertValues.TWITCH_EXTENSION]: LumiaEventListTypes.EXTENSION,
80
+ [LumiaAlertValues.TWITCH_POINTS]: LumiaEventListTypes.POINTS,
81
+ [LumiaAlertValues.TWITCH_FOLLOWER]: LumiaEventListTypes.FOLLOWER,
82
+ [LumiaAlertValues.TWITCH_SESSION_FOLLOWERS]: LumiaEventListTypes.FOLLOWER,
83
+ [LumiaAlertValues.TWITCH_SUBSCRIBER]: LumiaEventListTypes.SUBSCRIBERS,
84
+ [LumiaAlertValues.TWITCH_SESSION_SUBS]: LumiaEventListTypes.SUBSCRIBERS,
85
+ [LumiaAlertValues.TWITCH_GIFT_SUBSCRIPTION]: LumiaEventListTypes.GIFTS,
86
+ [LumiaAlertValues.TWITCH_SESSION_GIFT_SUBSCRIPTIONS]: LumiaEventListTypes.GIFTS,
87
+ [LumiaAlertValues.TWITCH_RAID]: LumiaEventListTypes.RAIDS,
88
+ [LumiaAlertValues.TWITCH_RAID_OUT]: LumiaEventListTypes.RAIDS,
89
+ [LumiaAlertValues.TWITCH_BITS]: LumiaEventListTypes.BITS,
90
+ [LumiaAlertValues.TWITCH_BITS_COMBO]: LumiaEventListTypes.BITS,
91
+ [LumiaAlertValues.TWITCH_SESSION_BITS]: LumiaEventListTypes.BITS,
92
+ // TWITCH_REDEMPTION is explicitly hidden via `AlertsToFilter` — its
93
+ // payload is too channel-points-specific for a generic activity feed.
94
+ // Streamlabs Redemption (loyalty points) is in the REDEMPTION category
95
+ // below if that semantic is needed.
96
+ [LumiaAlertValues.TWITCH_HYPETRAIN_STARTED]: LumiaEventListTypes.HYPETRAIN,
97
+ // HYPETRAIN_PROGRESSED / LEVEL_PROGRESSED / ENDED are hidden via
98
+ // `AlertsToFilter` — only the STARTED event reads as a real "event" in
99
+ // the feed; the rest are progress ticks the streamer doesn't want
100
+ // cluttering things.
101
+ [LumiaAlertValues.TWITCH_CHARITY_DONATION]: LumiaEventListTypes.DONATION,
102
+ [LumiaAlertValues.TWITCH_POWERUPS]: LumiaEventListTypes.BITS,
103
+ [LumiaAlertValues.TWITCH_POWERUPS_POINTS]: LumiaEventListTypes.POINTS,
104
+ // --- YouTube ---
105
+ // YouTube "subscribers" are free follows in YT-speak — categorize as
106
+ // FOLLOWER so a "Recent Followers" widget unifies Twitch follows + YT
107
+ // subs. Paid memberships are categorized as SUBSCRIBERS below.
108
+ [LumiaAlertValues.YOUTUBE_SUBSCRIBER]: LumiaEventListTypes.FOLLOWER,
109
+ [LumiaAlertValues.YOUTUBE_SESSION_SUBS]: LumiaEventListTypes.FOLLOWER,
110
+ [LumiaAlertValues.YOUTUBE_MEMBER]: LumiaEventListTypes.SUBSCRIBERS,
111
+ [LumiaAlertValues.YOUTUBE_SESSION_MEMBERS]: LumiaEventListTypes.SUBSCRIBERS,
112
+ [LumiaAlertValues.YOUTUBE_GIFT_MEMBERS]: LumiaEventListTypes.GIFTS,
113
+ [LumiaAlertValues.YOUTUBE_SESSION_GIFT_MEMBERS]: LumiaEventListTypes.GIFTS,
114
+ [LumiaAlertValues.YOUTUBE_SUPERCHAT]: LumiaEventListTypes.SUPERCHATS,
115
+ [LumiaAlertValues.YOUTUBE_SESSION_SUPERCHATS]: LumiaEventListTypes.SUPERCHATS,
116
+ [LumiaAlertValues.YOUTUBE_SUPERSTICKER]: LumiaEventListTypes.SUPERSTICKERS,
117
+ [LumiaAlertValues.YOUTUBE_SESSION_SUPERSTICKERS]: LumiaEventListTypes.SUPERSTICKERS,
118
+ [LumiaAlertValues.YOUTUBE_GIFTS]: LumiaEventListTypes.GIFTS,
119
+ [LumiaAlertValues.YOUTUBE_SESSION_GIFTS]: LumiaEventListTypes.GIFTS,
120
+ // YOUTUBE_LIKE / TIKTOK_LIKE / TIKTOK_TOTAL_LIKES / TWITTER_LIKE are
121
+ // hidden via `AlertsToFilter` — likes are too frequent / noisy for a
122
+ // recent-activity feed.
123
+ // --- Facebook ---
39
124
  [LumiaAlertValues.FACEBOOK_FOLLOWER]: LumiaEventListTypes.FOLLOWER,
40
- [LumiaAlertValues.FACEBOOK_GIFT_SUBSCRIPTION]: LumiaEventListTypes.GIFTS,
41
125
  [LumiaAlertValues.FACEBOOK_REACTION]: LumiaEventListTypes.LIKES,
42
- [LumiaAlertValues.FACEBOOK_SHARE]: LumiaEventListTypes.SHARES,
43
126
  [LumiaAlertValues.FACEBOOK_STAR]: LumiaEventListTypes.STARS,
127
+ // FB Supporters are paid subscriptions, FB Fans are free fan-status, FB
128
+ // Gift Subscriptions are gifted Supporters → keep all three in their
129
+ // distinct categories.
44
130
  [LumiaAlertValues.FACEBOOK_SUPPORT]: LumiaEventListTypes.SUBSCRIBERS,
45
- [LumiaAlertValues.KOFI_COMMISSION]: LumiaEventListTypes.PURCHASES,
46
- [LumiaAlertValues.KOFI_DONATION]: LumiaEventListTypes.DONATION,
47
- [LumiaAlertValues.KOFI_SHOPORDER]: LumiaEventListTypes.PURCHASES,
48
- [LumiaAlertValues.KOFI_SUBSCRIPTION]: LumiaEventListTypes.SUBSCRIBERS,
49
- [LumiaAlertValues.FOURTHWALL_DONATION]: LumiaEventListTypes.DONATION,
50
- [LumiaAlertValues.FOURTHWALL_SHOPORDER]: LumiaEventListTypes.PURCHASES,
51
- [LumiaAlertValues.FOURTHWALL_SUBSCRIPTION]: LumiaEventListTypes.SUBSCRIBERS,
52
- [LumiaAlertValues.FOURTHWALL_SUBSCRIPTION_CHANGED]: LumiaEventListTypes.SUBSCRIBERS,
53
- [LumiaAlertValues.FOURTHWALL_SUBSCRIPTION_EXPIRED]: LumiaEventListTypes.SUBSCRIBERS,
54
- [LumiaAlertValues.FOURTHWALL_GIFTPURCHASE]: LumiaEventListTypes.PURCHASES,
55
- [LumiaAlertValues.FOURTHWALL_GIVEAWAY_STARTED]: LumiaEventListTypes.GIFTS,
56
- [LumiaAlertValues.FOURTHWALL_GIVEAWAY_ENDED]: LumiaEventListTypes.GIFTS,
57
- [LumiaAlertValues.FOURTHWALL_THANKYOU_SENT]: LumiaEventListTypes.OTHERS,
58
- [LumiaAlertValues.FOURTHWALL_NEWSLETTER_SUBSCRIBED]: LumiaEventListTypes.OTHERS,
59
- [LumiaAlertValues.PATREON_PLEDGE]: LumiaEventListTypes.SUBSCRIBERS,
60
- [LumiaAlertValues.STREAMELEMENTS_DONATION]: LumiaEventListTypes.DONATION,
61
- [LumiaAlertValues.STREAMLABS_CHARITY]: LumiaEventListTypes.DONATION,
62
- [LumiaAlertValues.STREAMLABS_DONATION]: LumiaEventListTypes.DONATION,
63
- [LumiaAlertValues.STREAMLABS_MERCH]: LumiaEventListTypes.PURCHASES,
64
- [LumiaAlertValues.STREAMLABS_PRIMEGIFT]: LumiaEventListTypes.GIFTS,
65
- [LumiaAlertValues.STREAMLABS_REDEMPTION]: LumiaEventListTypes.PURCHASES,
131
+ [LumiaAlertValues.FACEBOOK_GIFT_SUBSCRIPTION]: LumiaEventListTypes.GIFTS,
132
+ [LumiaAlertValues.FACEBOOK_SHARE]: LumiaEventListTypes.SHARES,
133
+ [LumiaAlertValues.FACEBOOK_FAN]: LumiaEventListTypes.FANS,
134
+ // --- TikTok ---
66
135
  [LumiaAlertValues.TIKTOK_FOLLOWER]: LumiaEventListTypes.FOLLOWER,
67
136
  [LumiaAlertValues.TIKTOK_GIFT]: LumiaEventListTypes.GIFTS,
68
- [LumiaAlertValues.TIKTOK_LIKE]: LumiaEventListTypes.LIKES,
69
- [LumiaAlertValues.TIKTOK_TOTAL_LIKES]: LumiaEventListTypes.LIKES,
70
- [LumiaAlertValues.TIKTOK_SHARE]: LumiaEventListTypes.SHARES,
137
+ // TikTok Super Fan = paid membership (subscriber-equivalent). Super Fan
138
+ // BOX is a separate gift-style event where a viewer receives a fan-only
139
+ // drop — categorize as GIFTS to keep the SUBSCRIBERS feed sub-only.
71
140
  [LumiaAlertValues.TIKTOK_SUPER_FAN]: LumiaEventListTypes.SUBSCRIBERS,
141
+ [LumiaAlertValues.TIKTOK_SUPER_FAN_BOX]: LumiaEventListTypes.GIFTS,
72
142
  [LumiaAlertValues.TIKTOK_TREASURE_CHEST]: LumiaEventListTypes.GIFTS,
73
- [LumiaAlertValues.TIKTOK_QUESTION]: LumiaEventListTypes.OTHERS,
74
- [LumiaAlertValues.TIKTOK_POLL]: LumiaEventListTypes.OTHERS,
75
- [LumiaAlertValues.TIKTOK_SUPER_FAN_BOX]: LumiaEventListTypes.SUBSCRIBERS,
76
143
  [LumiaAlertValues.TIKTOK_SHOP_PURCHASE]: LumiaEventListTypes.PURCHASES,
77
- [LumiaAlertValues.TIKTOK_PIN_MESSAGE]: LumiaEventListTypes.OTHERS,
78
- [LumiaAlertValues.TIKTOK_BATTLE_START]: LumiaEventListTypes.OTHERS,
79
- [LumiaAlertValues.TIKTOK_BATTLE_PROGRESS]: LumiaEventListTypes.OTHERS,
80
- [LumiaAlertValues.TIKTOK_BATTLE_END]: LumiaEventListTypes.OTHERS,
144
+ [LumiaAlertValues.TIKTOK_SHARE]: LumiaEventListTypes.SHARES,
145
+ // --- Kick ---
146
+ [LumiaAlertValues.KICK_POINTS]: LumiaEventListTypes.POINTS,
81
147
  [LumiaAlertValues.KICK_FOLLOWER]: LumiaEventListTypes.FOLLOWER,
82
148
  [LumiaAlertValues.KICK_SESSION_FOLLOWERS]: LumiaEventListTypes.FOLLOWER,
83
- [LumiaAlertValues.KICK_GIFT_SUBSCRIPTION]: LumiaEventListTypes.GIFTS,
84
- [LumiaAlertValues.KICK_SESSION_GIFT_SUBSCRIPTIONS]: LumiaEventListTypes.GIFTS,
85
149
  [LumiaAlertValues.KICK_SUBSCRIBER]: LumiaEventListTypes.SUBSCRIBERS,
86
150
  [LumiaAlertValues.KICK_SESSION_SUBS]: LumiaEventListTypes.SUBSCRIBERS,
87
- [LumiaAlertValues.TILTIFY_DONATION]: LumiaEventListTypes.DONATION,
88
- [LumiaAlertValues.TIPEEESTREAM_DONATION]: LumiaEventListTypes.DONATION,
89
- [LumiaAlertValues.TREATSTREAM_TREAT]: LumiaEventListTypes.PURCHASES,
90
- [LumiaAlertValues.TWITCH_BITS]: LumiaEventListTypes.BITS,
91
- [LumiaAlertValues.TWITCH_BITS_COMBO]: LumiaEventListTypes.BITS,
92
- [LumiaAlertValues.TWITCH_SESSION_BITS]: LumiaEventListTypes.BITS,
93
- [LumiaAlertValues.TWITCH_POWERUPS]: LumiaEventListTypes.BITS,
94
- [LumiaAlertValues.TWITCH_POWERUPS_POINTS]: LumiaEventListTypes.POINTS,
95
- [LumiaAlertValues.TWITCH_CLIP]: LumiaEventListTypes.OTHERS,
96
- [LumiaAlertValues.TWITCH_EXTENSION]: LumiaEventListTypes.EXTENSION,
97
- [LumiaAlertValues.TWITCH_FOLLOWER]: LumiaEventListTypes.FOLLOWER,
98
- [LumiaAlertValues.TWITCH_SESSION_FOLLOWERS]: LumiaEventListTypes.FOLLOWER,
99
- [LumiaAlertValues.TWITCH_GIFT_SUBSCRIPTION]: LumiaEventListTypes.GIFTS,
100
- [LumiaAlertValues.TWITCH_SESSION_GIFT_SUBSCRIPTIONS]: LumiaEventListTypes.GIFTS,
101
- [LumiaAlertValues.TWITCH_HYPETRAIN_STARTED]: LumiaEventListTypes.HYPETRAIN,
102
- [LumiaAlertValues.TWITCH_POINTS]: LumiaEventListTypes.POINTS,
103
- [LumiaAlertValues.KICK_POINTS]: LumiaEventListTypes.POINTS,
104
- [LumiaAlertValues.TWITCH_RAID]: LumiaEventListTypes.RAIDS,
105
- [LumiaAlertValues.TWITCH_RAID_OUT]: LumiaEventListTypes.RAIDS,
151
+ [LumiaAlertValues.KICK_GIFT_SUBSCRIPTION]: LumiaEventListTypes.GIFTS,
152
+ [LumiaAlertValues.KICK_SESSION_GIFT_SUBSCRIPTIONS]: LumiaEventListTypes.GIFTS,
106
153
  [LumiaAlertValues.KICK_KICKS]: LumiaEventListTypes.KICKS,
107
154
  [LumiaAlertValues.KICK_SESSION_KICKS]: LumiaEventListTypes.KICKS,
108
155
  [LumiaAlertValues.KICK_HOST]: LumiaEventListTypes.HOSTS,
109
- [LumiaAlertValues.TWITCH_SHOUTOUT_RECEIVE]: LumiaEventListTypes.OTHERS,
110
- [LumiaAlertValues.TWITCH_SUBSCRIBER]: LumiaEventListTypes.SUBSCRIBERS,
111
- [LumiaAlertValues.TWITCH_SESSION_SUBS]: LumiaEventListTypes.SUBSCRIBERS,
112
- [LumiaAlertValues.TWITCH_CHARITY_DONATION]: LumiaEventListTypes.DONATION,
113
- [LumiaAlertValues.TWITCH_AD_STARTED]: LumiaEventListTypes.OTHERS,
114
- [LumiaAlertValues.TWITCH_AD_STOPPED]: LumiaEventListTypes.OTHERS,
115
- [LumiaAlertValues.TWITCH_WATCH_STREAK]: LumiaEventListTypes.OTHERS,
156
+ // --- Third-party donation / commerce platforms ---
157
+ [LumiaAlertValues.STREAMLABS_DONATION]: LumiaEventListTypes.DONATION,
158
+ [LumiaAlertValues.STREAMLABS_CHARITY]: LumiaEventListTypes.DONATION,
159
+ [LumiaAlertValues.STREAMLABS_MERCH]: LumiaEventListTypes.PURCHASES,
160
+ // Streamlabs Redemption was previously miscategorized as PURCHASES. It's
161
+ // a Streamlabs loyalty-points redemption — the dedicated REDEMPTION
162
+ // category is the correct home, mirroring TWITCH_REDEMPTION.
163
+ [LumiaAlertValues.STREAMLABS_REDEMPTION]: LumiaEventListTypes.REDEMPTION,
164
+ [LumiaAlertValues.STREAMLABS_PRIMEGIFT]: LumiaEventListTypes.GIFTS,
165
+ [LumiaAlertValues.STREAMELEMENTS_DONATION]: LumiaEventListTypes.DONATION,
166
+ [LumiaAlertValues.EXTRALIFE_DONATION]: LumiaEventListTypes.DONATION,
167
+ [LumiaAlertValues.DONORDRIVE_DONATION]: LumiaEventListTypes.DONATION,
168
+ [LumiaAlertValues.TILTIFY_DONATION]: LumiaEventListTypes.DONATION,
169
+ // Throne is a viewer wishlist platform — a "gift purchase" is a viewer
170
+ // buying an item off the streamer's wishlist. Treat all three Throne
171
+ // events as PURCHASES so they don't leak into the SUBSCRIBERS feed.
172
+ [LumiaAlertValues.THRONE_GIFT_PURCHASE]: LumiaEventListTypes.PURCHASES,
173
+ [LumiaAlertValues.THRONE_CONTRIBUTION_PURCHASE]: LumiaEventListTypes.PURCHASES,
174
+ [LumiaAlertValues.THRONE_GIFT_CROWDFUNDED]: LumiaEventListTypes.PURCHASES,
175
+ [LumiaAlertValues.TIPEEESTREAM_DONATION]: LumiaEventListTypes.DONATION,
176
+ [LumiaAlertValues.TREATSTREAM_TREAT]: LumiaEventListTypes.PURCHASES,
177
+ [LumiaAlertValues.PATREON_PLEDGE]: LumiaEventListTypes.SUBSCRIBERS,
178
+ [LumiaAlertValues.KOFI_DONATION]: LumiaEventListTypes.DONATION,
179
+ [LumiaAlertValues.KOFI_SUBSCRIPTION]: LumiaEventListTypes.SUBSCRIBERS,
180
+ [LumiaAlertValues.KOFI_COMMISSION]: LumiaEventListTypes.PURCHASES,
181
+ [LumiaAlertValues.KOFI_SHOPORDER]: LumiaEventListTypes.PURCHASES,
182
+ [LumiaAlertValues.FOURTHWALL_SHOPORDER]: LumiaEventListTypes.PURCHASES,
183
+ [LumiaAlertValues.FOURTHWALL_DONATION]: LumiaEventListTypes.DONATION,
184
+ [LumiaAlertValues.FOURTHWALL_SUBSCRIPTION]: LumiaEventListTypes.SUBSCRIBERS,
185
+ [LumiaAlertValues.FOURTHWALL_SUBSCRIPTION_CHANGED]: LumiaEventListTypes.SUBSCRIBERS,
186
+ [LumiaAlertValues.FOURTHWALL_GIFTPURCHASE]: LumiaEventListTypes.PURCHASES,
187
+ // --- Social media (Twitter / X) ---
116
188
  [LumiaAlertValues.TWITTER_FOLLOWER]: LumiaEventListTypes.FOLLOWER,
117
- [LumiaAlertValues.TWITTER_LIKE]: LumiaEventListTypes.LIKES,
118
189
  [LumiaAlertValues.TWITTER_RETWEET]: LumiaEventListTypes.RETWEETS,
190
+ // --- E-commerce ---
119
191
  [LumiaAlertValues.WOOCOMMERCE_ORDER]: LumiaEventListTypes.PURCHASES,
120
- [LumiaAlertValues.YOUTUBE_MEMBER]: LumiaEventListTypes.SUBSCRIBERS,
121
- [LumiaAlertValues.YOUTUBE_SUBSCRIBER]: LumiaEventListTypes.FOLLOWER,
122
- [LumiaAlertValues.YOUTUBE_SUPERCHAT]: LumiaEventListTypes.SUPERCHATS,
123
- [LumiaAlertValues.YOUTUBE_SUPERSTICKER]: LumiaEventListTypes.SUPERSTICKERS,
124
- [LumiaAlertValues.YOUTUBE_GIFTS]: LumiaEventListTypes.GIFTS,
125
- [LumiaAlertValues.YOUTUBE_LIKE]: LumiaEventListTypes.LIKES,
126
- [LumiaAlertValues.YOUTUBE_VIEWERS]: LumiaEventListTypes.OTHERS,
127
- [LumiaAlertValues.CROWDCONTROL_EFFECT]: LumiaEventListTypes.OTHERS,
128
192
  };
193
+ /**
194
+ * Alerts that should NOT appear in the eventlist's user-facing picker AND
195
+ * should NOT render in any eventlist feed. The invariant is:
196
+ *
197
+ * - Every `LumiaAlertValues` member must appear in EITHER
198
+ * `LumiaMapAlertTypeToEventListType` (mapped → visible in the picker
199
+ * and eventlist) OR in `AlertsToFilter` (hidden everywhere). Never
200
+ * both, never neither.
201
+ *
202
+ * Shared between LumiaStream (`EventCollection.ts` skips processing these
203
+ * to avoid spamming the event log, `EventListFilterPopover` hides them from
204
+ * the picker) and Overlay-UI (eventlist Manager picker hides them, eventlist
205
+ * component drops them at render). Was duplicated in both repos before
206
+ * being consolidated here.
207
+ *
208
+ * Grouped by source / platform. When adding a new alert to
209
+ * `LumiaAlertValues`, place it in EXACTLY ONE of the two lists. Default
210
+ * choice is `AlertsToFilter` (hidden) unless it's a viewer-facing event
211
+ * the eventlist should render.
212
+ */
213
+ export const AlertsToFilter = [
214
+ // --- Lumia Stream native ---
215
+ LumiaAlertValues.LUMIASTREAM_LUMIA_OPENED,
216
+ LumiaAlertValues.LUMIASTREAM_LUMIA_CLOSED,
217
+ LumiaAlertValues.LUMIASTREAM_STREAMMODE_ON,
218
+ LumiaAlertValues.LUMIASTREAM_STREAMMODE_OFF,
219
+ LumiaAlertValues.LUMIASTREAM_SPINWHEEL_WINNER,
220
+ LumiaAlertValues.LUMIASTREAM_RAFFLE_START,
221
+ LumiaAlertValues.LUMIASTREAM_RAFFLE_STOP,
222
+ LumiaAlertValues.LUMIASTREAM_RAFFLE_WINNER,
223
+ LumiaAlertValues.LUMIASTREAM_TOURNAMENT_START,
224
+ LumiaAlertValues.LUMIASTREAM_TOURNAMENT_END,
225
+ LumiaAlertValues.LUMIASTREAM_TOURNAMENT_WINNER,
226
+ LumiaAlertValues.LUMIASTREAM_POLL_STARTED,
227
+ LumiaAlertValues.LUMIASTREAM_POLL_PROGRESSED,
228
+ LumiaAlertValues.LUMIASTREAM_POLL_ENDED,
229
+ LumiaAlertValues.LUMIASTREAM_VIEWERQUEUE_STARTED,
230
+ LumiaAlertValues.LUMIASTREAM_VIEWERQUEUE_ENDED,
231
+ LumiaAlertValues.LUMIASTREAM_VIEWER_ACHIEVEMENT,
232
+ LumiaAlertValues.LUMIASTREAM_VARIABLE_CHANGED,
233
+ LumiaAlertValues.LUMIASTREAM_ROULETTE_WINNER,
234
+ LumiaAlertValues.LUMIASTREAM_SLOTS_WINNER,
235
+ // --- Twitch ---
236
+ LumiaAlertValues.TWITCH_STREAM_LIVE,
237
+ LumiaAlertValues.TWITCH_STREAM_OFFLINE,
238
+ LumiaAlertValues.TWITCH_ENTRANCE,
239
+ LumiaAlertValues.TWITCH_FIRST_CHATTER,
240
+ LumiaAlertValues.TWITCH_HYPETRAIN_PROGRESSED,
241
+ LumiaAlertValues.TWITCH_HYPETRAIN_LEVEL_PROGRESSED,
242
+ LumiaAlertValues.TWITCH_HYPETRAIN_ENDED,
243
+ LumiaAlertValues.TWITCH_REDEMPTION,
244
+ LumiaAlertValues.TWITCH_POLL_STARTED,
245
+ LumiaAlertValues.TWITCH_POLL_PROGRESSED,
246
+ LumiaAlertValues.TWITCH_POLL_ENDED,
247
+ LumiaAlertValues.TWITCH_PREDICTION_STARTED,
248
+ LumiaAlertValues.TWITCH_PREDICTION_PROGRESSED,
249
+ LumiaAlertValues.TWITCH_PREDICTION_LOCKED,
250
+ LumiaAlertValues.TWITCH_PREDICTION_ENDED,
251
+ LumiaAlertValues.TWITCH_GOAL_STARTED,
252
+ LumiaAlertValues.TWITCH_GOAL_PROGRESSED,
253
+ LumiaAlertValues.TWITCH_GOAL_ENDED,
254
+ LumiaAlertValues.TWITCH_CHARITY_CAMPAIGN_STARTED,
255
+ LumiaAlertValues.TWITCH_CHARITY_CAMPAIGN_PROGRESSED,
256
+ LumiaAlertValues.TWITCH_CHARITY_CAMPAIGN_STOPPED,
257
+ LumiaAlertValues.TWITCH_CATEGORY,
258
+ LumiaAlertValues.TWITCH_CLIP,
259
+ LumiaAlertValues.TWITCH_CHANNEL_JOIN,
260
+ LumiaAlertValues.TWITCH_CHANNEL_LEAVE,
261
+ LumiaAlertValues.TWITCH_BANNED,
262
+ LumiaAlertValues.TWITCH_TIMEOUT,
263
+ LumiaAlertValues.TWITCH_TIMEOUT_OVER,
264
+ LumiaAlertValues.TWITCH_SHOUTOUT_RECEIVE,
265
+ LumiaAlertValues.TWITCH_AD_STARTED,
266
+ LumiaAlertValues.TWITCH_AD_STOPPED,
267
+ LumiaAlertValues.TWITCH_WATCH_STREAK,
268
+ // --- YouTube ---
269
+ LumiaAlertValues.YOUTUBE_STREAM_LIVE,
270
+ LumiaAlertValues.YOUTUBE_STREAM_OFFLINE,
271
+ LumiaAlertValues.YOUTUBE_ENTRANCE,
272
+ LumiaAlertValues.YOUTUBE_FIRST_CHATTER,
273
+ LumiaAlertValues.YOUTUBE_LIKE,
274
+ LumiaAlertValues.YOUTUBE_VIEWERS,
275
+ // --- Facebook ---
276
+ LumiaAlertValues.FACEBOOK_STREAM_LIVE,
277
+ LumiaAlertValues.FACEBOOK_STREAM_OFFLINE,
278
+ LumiaAlertValues.FACEBOOK_ENTRANCE,
279
+ LumiaAlertValues.FACEBOOK_FIRST_CHATTER,
280
+ // --- TikTok ---
281
+ LumiaAlertValues.TIKTOK_STREAM_END,
282
+ LumiaAlertValues.TIKTOK_ENTRANCE,
283
+ LumiaAlertValues.TIKTOK_FIRST_CHATTER,
284
+ LumiaAlertValues.TIKTOK_NEW_VIDEO,
285
+ LumiaAlertValues.TIKTOK_TOTAL_LIKES,
286
+ LumiaAlertValues.TIKTOK_LIKE,
287
+ LumiaAlertValues.TIKTOK_QUESTION,
288
+ LumiaAlertValues.TIKTOK_POLL,
289
+ LumiaAlertValues.TIKTOK_PIN_MESSAGE,
290
+ LumiaAlertValues.TIKTOK_BATTLE_START,
291
+ LumiaAlertValues.TIKTOK_BATTLE_PROGRESS,
292
+ LumiaAlertValues.TIKTOK_BATTLE_END,
293
+ // --- Kick ---
294
+ LumiaAlertValues.KICK_ENTRANCE,
295
+ LumiaAlertValues.KICK_FIRST_CHATTER,
296
+ LumiaAlertValues.KICK_BANNED,
297
+ LumiaAlertValues.KICK_UNBANNED,
298
+ // --- Discord ---
299
+ LumiaAlertValues.DISCORD_FIRST_CHATTER,
300
+ LumiaAlertValues.DISCORD_ENTRANCE,
301
+ // --- Third-party (Fourthwall housekeeping) ---
302
+ LumiaAlertValues.FOURTHWALL_SUBSCRIPTION_EXPIRED,
303
+ LumiaAlertValues.FOURTHWALL_GIVEAWAY_STARTED,
304
+ LumiaAlertValues.FOURTHWALL_GIVEAWAY_ENDED,
305
+ LumiaAlertValues.FOURTHWALL_THANKYOU_SENT,
306
+ LumiaAlertValues.FOURTHWALL_NEWSLETTER_SUBSCRIBED,
307
+ // --- Broadcasting apps (OBS / SLOBS / Meld) ---
308
+ LumiaAlertValues.OBS_SWITCH_PROFILE,
309
+ LumiaAlertValues.OBS_SWITCH_SCENE,
310
+ LumiaAlertValues.OBS_SCENE_ITEM_VISIBILITY,
311
+ LumiaAlertValues.OBS_SCENE_ITEM_HIDDEN,
312
+ LumiaAlertValues.OBS_SWITCH_TRANSITION,
313
+ LumiaAlertValues.OBS_TRANSITION_BEGIN,
314
+ LumiaAlertValues.OBS_TRANSITION_END,
315
+ LumiaAlertValues.OBS_STREAM_STARTING,
316
+ LumiaAlertValues.OBS_STREAM_STOPPING,
317
+ LumiaAlertValues.OBS_RECORDING_STARTING,
318
+ LumiaAlertValues.OBS_RECORDING_STOPPING,
319
+ LumiaAlertValues.OBS_MEDIA_INPUT_PLAYBACK_STARTED,
320
+ LumiaAlertValues.OBS_MEDIA_INPUT_PLAYBACK_ENDED,
321
+ LumiaAlertValues.OBS_VIRTUALCAM_STATE_CHANGED,
322
+ LumiaAlertValues.OBS_SCREENSHOT_SAVED,
323
+ LumiaAlertValues.OBS_REPLAY_BUFFER_SAVED,
324
+ LumiaAlertValues.OBS_VERTICAL_BACKTRACK_SAVED,
325
+ LumiaAlertValues.OBS_VENDOR_EVENT,
326
+ LumiaAlertValues.SLOBS_SWITCH_SCENE_COLLECTION,
327
+ LumiaAlertValues.SLOBS_SWITCH_SCENE,
328
+ LumiaAlertValues.SLOBS_SCENE_ITEM_VISIBILITY,
329
+ LumiaAlertValues.SLOBS_SCENE_ITEM_HIDDEN,
330
+ LumiaAlertValues.MELD_STREAM_STARTING,
331
+ LumiaAlertValues.MELD_STREAM_STOPPING,
332
+ LumiaAlertValues.MELD_RECORDING_STARTING,
333
+ LumiaAlertValues.MELD_RECORDING_STOPPING,
334
+ LumiaAlertValues.MELD_SWITCH_SCENE,
335
+ LumiaAlertValues.MELD_SWITCH_VERTICAL_SCENE,
336
+ // --- Music players ---
337
+ LumiaAlertValues.SPOTIFY_SWITCH_SONG,
338
+ LumiaAlertValues.SPOTIFY_SONG_PLAYED,
339
+ LumiaAlertValues.SPOTIFY_SONG_PAUSED,
340
+ LumiaAlertValues.YOUTUBEMUSIC_SWITCH_SONG,
341
+ LumiaAlertValues.YOUTUBEMUSIC_SONG_PLAYED,
342
+ LumiaAlertValues.YOUTUBEMUSIC_SONG_PAUSED,
343
+ LumiaAlertValues.NOWPLAYING_SWITCH_SONG,
344
+ LumiaAlertValues.NOWPLAYING_SONG_PLAYED,
345
+ LumiaAlertValues.NOWPLAYING_SONG_PAUSED,
346
+ LumiaAlertValues.VLC_SWITCH_SONG,
347
+ LumiaAlertValues.VLC_SONG_PLAYED,
348
+ LumiaAlertValues.VLC_SONG_PAUSED,
349
+ // --- Health / fitness ---
350
+ LumiaAlertValues.PULSE_HEARTRATE,
351
+ LumiaAlertValues.PULSE_CALORIES,
352
+ // --- Social media ---
353
+ LumiaAlertValues.TWITTER_LIKE,
354
+ // --- Other integrations ---
355
+ LumiaAlertValues.STREAMERBOT_ACTION,
356
+ LumiaAlertValues.CROWDCONTROL_EFFECT,
357
+ // --- VTube Studio ---
358
+ LumiaAlertValues.VTUBESTUDIO_HOTKEY_TRIGGERED,
359
+ LumiaAlertValues.VTUBESTUDIO_MODEL_LOADED,
360
+ LumiaAlertValues.VTUBESTUDIO_ANIMATION_START,
361
+ LumiaAlertValues.VTUBESTUDIO_ANIMATION_END,
362
+ LumiaAlertValues.VTUBESTUDIO_ITEM_ADDED,
363
+ LumiaAlertValues.VTUBESTUDIO_ITEM_REMOVED,
364
+ LumiaAlertValues.VTUBESTUDIO_BACKGROUND_CHANGED,
365
+ ];
366
+ /**
367
+ * Platforms whose events should be hidden from the eventlist / event log
368
+ * processing pipeline. These are connections whose alerts are stream
369
+ * management or housekeeping (broadcasting apps, music players, health
370
+ * trackers, automation tools) rather than viewer-facing activity.
371
+ *
372
+ * Used by LumiaStream's `EventCollection.ts` to short-circuit processing
373
+ * before the event lands in the eventlist DB at all. Was duplicated in
374
+ * LumiaStream `Integrations.types.ts` before being consolidated here.
375
+ */
376
+ export const PlatformsToFilter = [
377
+ 'obs',
378
+ 'slobs',
379
+ 'meld',
380
+ 'paypal',
381
+ 'pulsoid',
382
+ 'hyperate',
383
+ 'spotify',
384
+ 'youtubemusic',
385
+ 'nowplaying',
386
+ 'vlc',
387
+ 'streamerbot',
388
+ 'vtubestudio',
389
+ ];
package/dist/esm/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  export { LumiaStreamingSites, LumiaActivityCommandTypes, LumiaExternalActivityCommandTypes, LumiaAlertValues, LumiaAlertFriendlyValues, LumiaActivityOriginTypes, LumiaActivityApiValueType, LumiaActivityNoValueTypes, LumiaActivityTestType, } from './activity.types.js';
2
2
  export { LumiaVariationConditions, LumiaVariationCurrency, VariationCurrencySymbol, LumiaRedemptionCurrency, LumiaRedemptionCurrencySymbol, LumiaAlertConfigs, } from './alert.types.js';
3
3
  export { LumiaIntegrations, LumiaEventTypes, } from './event.types.js';
4
- export { LumiaEventListTypes, LumiaMapAlertTypeToEventListType } from './eventlist.types.js';
4
+ export { LumiaEventListTypes, LumiaMapAlertTypeToEventListType, AlertsToFilter, PlatformsToFilter } from './eventlist.types.js';
5
5
  export { SystemVariables, ReservedVariables, AllVariables, getAcceptedVariableName, getAcceptedVariableNames, } from './variables.types.js';
6
6
  export { formatCondition } from './helpers.js';
7
7
  export { KickKicksData } from './kick_kicks.js';
@@ -1,3 +1,24 @@
1
+ import { LumiaAlertValues } from './activity.types';
2
+ /**
3
+ * Eventlist categories. The eventlist module uses these as a *blacklist* via
4
+ * `content.filters` — any category listed there is hidden from the rendered
5
+ * feed (and so anything NOT listed is shown).
6
+ *
7
+ * Policy: every category here corresponds to a viewer-facing event class. We
8
+ * deliberately do NOT have an "others" catch-all category — alerts that exist
9
+ * only as stream-management / administrative signals (OBS scene switches,
10
+ * stream-live notices, music-player events, poll progress, etc.) are simply
11
+ * left out of `LumiaMapAlertTypeToEventListType` below. The eventlist
12
+ * component only renders MAPPED alerts, so unmapped alerts are silently
13
+ * excluded from every feed without needing a UI toggle.
14
+ *
15
+ * When adding a new value here, mirror it in:
16
+ * - `ALL_LUMIA_EVENTLIST_CATEGORIES` in Lumia-UI's SE importer
17
+ * - the `ALL_EVENT_CATEGORIES` constant in Overlay-UI's `layer.actions.ts`
18
+ * (labelmarquee branch)
19
+ * Otherwise category-scoped widgets (`labelmarquee`, SE `*-recent` imports)
20
+ * leak the new category through.
21
+ */
1
22
  export declare enum LumiaEventListTypes {
2
23
  REDEMPTION = "redemption",
3
24
  FOLLOWER = "follower",
@@ -20,107 +41,63 @@ export declare enum LumiaEventListTypes {
20
41
  STARS = "stars",
21
42
  FANS = "fans",
22
43
  SHARES = "shares",
23
- RAFFLE = "raffles",
24
- OTHERS = "others"
44
+ RAFFLE = "raffles"
25
45
  }
26
- export declare const LumiaMapAlertTypeToEventListType: {
27
- "lumiastream-donation": LumiaEventListTypes;
28
- "donordrive-donation": LumiaEventListTypes;
29
- "extralife-donation": LumiaEventListTypes;
30
- "lumiastream-raffleStart": LumiaEventListTypes;
31
- "lumiastream-raffleStop": LumiaEventListTypes;
32
- "lumiastream-raffleWinner": LumiaEventListTypes;
33
- "lumiastream-tournamentStart": LumiaEventListTypes;
34
- "lumiastream-tournamentEnd": LumiaEventListTypes;
35
- "lumiastream-tournamentWinner": LumiaEventListTypes;
36
- "facebook-fan": LumiaEventListTypes;
37
- "facebook-follower": LumiaEventListTypes;
38
- "facebook-subscriptionGift": LumiaEventListTypes;
39
- "facebook-reaction": LumiaEventListTypes;
40
- "facebook-share": LumiaEventListTypes;
41
- "facebook-star": LumiaEventListTypes;
42
- "facebook-support": LumiaEventListTypes;
43
- "kofi-commission": LumiaEventListTypes;
44
- "kofi-donation": LumiaEventListTypes;
45
- "kofi-shopOrder": LumiaEventListTypes;
46
- "kofi-subscription": LumiaEventListTypes;
47
- "fourthwall-donation": LumiaEventListTypes;
48
- "fourthwall-shopOrder": LumiaEventListTypes;
49
- "fourthwall-subscription": LumiaEventListTypes;
50
- "fourthwall-subscriptionChanged": LumiaEventListTypes;
51
- "fourthwall-subscriptionExpired": LumiaEventListTypes;
52
- "fourthwall-giftpurchase": LumiaEventListTypes;
53
- "fourthwall-giveawayStarted": LumiaEventListTypes;
54
- "fourthwall-giveawayEnded": LumiaEventListTypes;
55
- "fourthwall-thankyouSent": LumiaEventListTypes;
56
- "fourthwall-newsletterSubscribed": LumiaEventListTypes;
57
- "patreon-campaignPledge": LumiaEventListTypes;
58
- "streamelements-donation": LumiaEventListTypes;
59
- "streamlabs-charity": LumiaEventListTypes;
60
- "streamlabs-donation": LumiaEventListTypes;
61
- "streamlabs-merch": LumiaEventListTypes;
62
- "streamlabs-primegift": LumiaEventListTypes;
63
- "streamlabs-redemption": LumiaEventListTypes;
64
- "tiktok-follower": LumiaEventListTypes;
65
- "tiktok-gift": LumiaEventListTypes;
66
- "tiktok-like": LumiaEventListTypes;
67
- "tiktok-totalLikes": LumiaEventListTypes;
68
- "tiktok-share": LumiaEventListTypes;
69
- "tiktok-superFan": LumiaEventListTypes;
70
- "tiktok-treasureChest": LumiaEventListTypes;
71
- "tiktok-question": LumiaEventListTypes;
72
- "tiktok-poll": LumiaEventListTypes;
73
- "tiktok-superFanBox": LumiaEventListTypes;
74
- "tiktok-shopPurchase": LumiaEventListTypes;
75
- "tiktok-pinMessage": LumiaEventListTypes;
76
- "tiktok-battleStart": LumiaEventListTypes;
77
- "tiktok-battleProgress": LumiaEventListTypes;
78
- "tiktok-battleEnd": LumiaEventListTypes;
79
- "kick-follower": LumiaEventListTypes;
80
- "kick-sessionFollowers": LumiaEventListTypes;
81
- "kick-subscriptionGift": LumiaEventListTypes;
82
- "kick-sessionGiftSubscriptions": LumiaEventListTypes;
83
- "kick-subscriber": LumiaEventListTypes;
84
- "kick-sessionSubs": LumiaEventListTypes;
85
- "tiltify-campaignDonation": LumiaEventListTypes;
86
- "tipeeestream-donation": LumiaEventListTypes;
87
- "treatstream-treat": LumiaEventListTypes;
88
- "twitch-bits": LumiaEventListTypes;
89
- "twitch-bitsCombo": LumiaEventListTypes;
90
- "twitch-sessionBits": LumiaEventListTypes;
91
- "twitch-powerups": LumiaEventListTypes;
92
- "twitch-powerupsPoints": LumiaEventListTypes;
93
- "twitch-clip": LumiaEventListTypes;
94
- "twitch-extension": LumiaEventListTypes;
95
- "twitch-follower": LumiaEventListTypes;
96
- "twitch-sessionFollowers": LumiaEventListTypes;
97
- "twitch-giftSubscription": LumiaEventListTypes;
98
- "twitch-sessionGiftSubscriptions": LumiaEventListTypes;
99
- "twitch-hypetrainStarted": LumiaEventListTypes;
100
- "twitch-points": LumiaEventListTypes;
101
- "kick-points": LumiaEventListTypes;
102
- "twitch-raid": LumiaEventListTypes;
103
- "twitch-raidOut": LumiaEventListTypes;
104
- "kick-kicks": LumiaEventListTypes;
105
- "kick-sessionKicks": LumiaEventListTypes;
106
- "kick-host": LumiaEventListTypes;
107
- "twitch-shoutoutReceive": LumiaEventListTypes;
108
- "twitch-subscriber": LumiaEventListTypes;
109
- "twitch-sessionSubs": LumiaEventListTypes;
110
- "twitch-charityDonation": LumiaEventListTypes;
111
- "twitch-adStarted": LumiaEventListTypes;
112
- "twitch-adStopped": LumiaEventListTypes;
113
- "twitch-watchStreak": LumiaEventListTypes;
114
- "twitter-follower": LumiaEventListTypes;
115
- "twitter-like": LumiaEventListTypes;
116
- "twitter-retweet": LumiaEventListTypes;
117
- "woocommerce-order": LumiaEventListTypes;
118
- "youtube-member": LumiaEventListTypes;
119
- "youtube-subscriber": LumiaEventListTypes;
120
- "youtube-superchat": LumiaEventListTypes;
121
- "youtube-supersticker": LumiaEventListTypes;
122
- "youtube-gifts": LumiaEventListTypes;
123
- "youtube-like": LumiaEventListTypes;
124
- "youtube-viewers": LumiaEventListTypes;
125
- "crowdcontrol-effect": LumiaEventListTypes;
126
- };
46
+ /**
47
+ * Categorization map from `LumiaAlertValues` → `LumiaEventListTypes`. The
48
+ * eventlist module ONLY renders alerts that appear in this map — anything
49
+ * absent is silently excluded from every feed (no UI toggle to surface it).
50
+ *
51
+ * Policy:
52
+ * - Map only viewer-facing events. Stream-management / administrative
53
+ * signals (OBS / SLOBS / Meld scene switches, music-player events,
54
+ * poll/prediction/goal lifecycle, stream-live notices, channel
55
+ * join/leave, ad starts/stops, Pulse heartrate, etc.) are NOT mapped
56
+ * — they don't belong in a viewer-facing activity feed and have no UI
57
+ * toggle to bring them in.
58
+ * - Categorize by the *viewer's* intent, not payload shape. A Throne /
59
+ * Fourthwall shop gift purchase is a viewer buying something for the
60
+ * streamer → PURCHASES. A subscription-expired notice is admin, not a
61
+ * new subscriber → omit entirely (was OTHERS, now unmapped).
62
+ * - Session-counter alerts (e.g. TWITCH_SESSION_FOLLOWERS) mirror the
63
+ * category of their per-event cousin (FOLLOWER) so a counter widget
64
+ * can reuse the same category filter.
65
+ *
66
+ * Grouped by platform / source for review; ordering within groups follows
67
+ * the enum declaration in `activity.types.ts`. Alerts that previously
68
+ * mapped to OTHERS were removed in this revision and are now unmapped
69
+ * (purposefully hidden from all eventlists).
70
+ */
71
+ export declare const LumiaMapAlertTypeToEventListType: Partial<Record<LumiaAlertValues, LumiaEventListTypes>>;
72
+ /**
73
+ * Alerts that should NOT appear in the eventlist's user-facing picker AND
74
+ * should NOT render in any eventlist feed. The invariant is:
75
+ *
76
+ * - Every `LumiaAlertValues` member must appear in EITHER
77
+ * `LumiaMapAlertTypeToEventListType` (mapped → visible in the picker
78
+ * and eventlist) OR in `AlertsToFilter` (hidden everywhere). Never
79
+ * both, never neither.
80
+ *
81
+ * Shared between LumiaStream (`EventCollection.ts` skips processing these
82
+ * to avoid spamming the event log, `EventListFilterPopover` hides them from
83
+ * the picker) and Overlay-UI (eventlist Manager picker hides them, eventlist
84
+ * component drops them at render). Was duplicated in both repos before
85
+ * being consolidated here.
86
+ *
87
+ * Grouped by source / platform. When adding a new alert to
88
+ * `LumiaAlertValues`, place it in EXACTLY ONE of the two lists. Default
89
+ * choice is `AlertsToFilter` (hidden) unless it's a viewer-facing event
90
+ * the eventlist should render.
91
+ */
92
+ export declare const AlertsToFilter: LumiaAlertValues[];
93
+ /**
94
+ * Platforms whose events should be hidden from the eventlist / event log
95
+ * processing pipeline. These are connections whose alerts are stream
96
+ * management or housekeeping (broadcasting apps, music players, health
97
+ * trackers, automation tools) rather than viewer-facing activity.
98
+ *
99
+ * Used by LumiaStream's `EventCollection.ts` to short-circuit processing
100
+ * before the event lands in the eventlist DB at all. Was duplicated in
101
+ * LumiaStream `Integrations.types.ts` before being consolidated here.
102
+ */
103
+ export declare const PlatformsToFilter: string[];
@@ -1,7 +1,27 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LumiaMapAlertTypeToEventListType = exports.LumiaEventListTypes = void 0;
3
+ exports.PlatformsToFilter = exports.AlertsToFilter = exports.LumiaMapAlertTypeToEventListType = exports.LumiaEventListTypes = void 0;
4
4
  const activity_types_1 = require("./activity.types");
5
+ /**
6
+ * Eventlist categories. The eventlist module uses these as a *blacklist* via
7
+ * `content.filters` — any category listed there is hidden from the rendered
8
+ * feed (and so anything NOT listed is shown).
9
+ *
10
+ * Policy: every category here corresponds to a viewer-facing event class. We
11
+ * deliberately do NOT have an "others" catch-all category — alerts that exist
12
+ * only as stream-management / administrative signals (OBS scene switches,
13
+ * stream-live notices, music-player events, poll progress, etc.) are simply
14
+ * left out of `LumiaMapAlertTypeToEventListType` below. The eventlist
15
+ * component only renders MAPPED alerts, so unmapped alerts are silently
16
+ * excluded from every feed without needing a UI toggle.
17
+ *
18
+ * When adding a new value here, mirror it in:
19
+ * - `ALL_LUMIA_EVENTLIST_CATEGORIES` in Lumia-UI's SE importer
20
+ * - the `ALL_EVENT_CATEGORIES` constant in Overlay-UI's `layer.actions.ts`
21
+ * (labelmarquee branch)
22
+ * Otherwise category-scoped widgets (`labelmarquee`, SE `*-recent` imports)
23
+ * leak the new category through.
24
+ */
5
25
  var LumiaEventListTypes;
6
26
  (function (LumiaEventListTypes) {
7
27
  LumiaEventListTypes["REDEMPTION"] = "redemption";
@@ -26,106 +46,347 @@ var LumiaEventListTypes;
26
46
  LumiaEventListTypes["FANS"] = "fans";
27
47
  LumiaEventListTypes["SHARES"] = "shares";
28
48
  LumiaEventListTypes["RAFFLE"] = "raffles";
29
- LumiaEventListTypes["OTHERS"] = "others";
30
49
  })(LumiaEventListTypes || (exports.LumiaEventListTypes = LumiaEventListTypes = {}));
50
+ /**
51
+ * Categorization map from `LumiaAlertValues` → `LumiaEventListTypes`. The
52
+ * eventlist module ONLY renders alerts that appear in this map — anything
53
+ * absent is silently excluded from every feed (no UI toggle to surface it).
54
+ *
55
+ * Policy:
56
+ * - Map only viewer-facing events. Stream-management / administrative
57
+ * signals (OBS / SLOBS / Meld scene switches, music-player events,
58
+ * poll/prediction/goal lifecycle, stream-live notices, channel
59
+ * join/leave, ad starts/stops, Pulse heartrate, etc.) are NOT mapped
60
+ * — they don't belong in a viewer-facing activity feed and have no UI
61
+ * toggle to bring them in.
62
+ * - Categorize by the *viewer's* intent, not payload shape. A Throne /
63
+ * Fourthwall shop gift purchase is a viewer buying something for the
64
+ * streamer → PURCHASES. A subscription-expired notice is admin, not a
65
+ * new subscriber → omit entirely (was OTHERS, now unmapped).
66
+ * - Session-counter alerts (e.g. TWITCH_SESSION_FOLLOWERS) mirror the
67
+ * category of their per-event cousin (FOLLOWER) so a counter widget
68
+ * can reuse the same category filter.
69
+ *
70
+ * Grouped by platform / source for review; ordering within groups follows
71
+ * the enum declaration in `activity.types.ts`. Alerts that previously
72
+ * mapped to OTHERS were removed in this revision and are now unmapped
73
+ * (purposefully hidden from all eventlists).
74
+ */
31
75
  exports.LumiaMapAlertTypeToEventListType = {
76
+ // --- Lumia Stream native ---
32
77
  [activity_types_1.LumiaAlertValues.LUMIASTREAM_DONATION]: LumiaEventListTypes.DONATION,
33
- [activity_types_1.LumiaAlertValues.DONORDRIVE_DONATION]: LumiaEventListTypes.DONATION,
34
- [activity_types_1.LumiaAlertValues.EXTRALIFE_DONATION]: LumiaEventListTypes.DONATION,
35
- [activity_types_1.LumiaAlertValues.LUMIASTREAM_RAFFLE_START]: LumiaEventListTypes.RAFFLE,
36
- [activity_types_1.LumiaAlertValues.LUMIASTREAM_RAFFLE_STOP]: LumiaEventListTypes.RAFFLE,
37
- [activity_types_1.LumiaAlertValues.LUMIASTREAM_RAFFLE_WINNER]: LumiaEventListTypes.RAFFLE,
38
- [activity_types_1.LumiaAlertValues.LUMIASTREAM_TOURNAMENT_START]: LumiaEventListTypes.OTHERS,
39
- [activity_types_1.LumiaAlertValues.LUMIASTREAM_TOURNAMENT_END]: LumiaEventListTypes.OTHERS,
40
- [activity_types_1.LumiaAlertValues.LUMIASTREAM_TOURNAMENT_WINNER]: LumiaEventListTypes.OTHERS,
41
- [activity_types_1.LumiaAlertValues.FACEBOOK_FAN]: LumiaEventListTypes.FANS,
78
+ // Raffle / spinwheel / roulette / slots winners are explicitly hidden via
79
+ // `AlertsToFilter` below — they're stream-side games, not viewer-facing
80
+ // activity feed events.
81
+ // --- Twitch ---
82
+ [activity_types_1.LumiaAlertValues.TWITCH_EXTENSION]: LumiaEventListTypes.EXTENSION,
83
+ [activity_types_1.LumiaAlertValues.TWITCH_POINTS]: LumiaEventListTypes.POINTS,
84
+ [activity_types_1.LumiaAlertValues.TWITCH_FOLLOWER]: LumiaEventListTypes.FOLLOWER,
85
+ [activity_types_1.LumiaAlertValues.TWITCH_SESSION_FOLLOWERS]: LumiaEventListTypes.FOLLOWER,
86
+ [activity_types_1.LumiaAlertValues.TWITCH_SUBSCRIBER]: LumiaEventListTypes.SUBSCRIBERS,
87
+ [activity_types_1.LumiaAlertValues.TWITCH_SESSION_SUBS]: LumiaEventListTypes.SUBSCRIBERS,
88
+ [activity_types_1.LumiaAlertValues.TWITCH_GIFT_SUBSCRIPTION]: LumiaEventListTypes.GIFTS,
89
+ [activity_types_1.LumiaAlertValues.TWITCH_SESSION_GIFT_SUBSCRIPTIONS]: LumiaEventListTypes.GIFTS,
90
+ [activity_types_1.LumiaAlertValues.TWITCH_RAID]: LumiaEventListTypes.RAIDS,
91
+ [activity_types_1.LumiaAlertValues.TWITCH_RAID_OUT]: LumiaEventListTypes.RAIDS,
92
+ [activity_types_1.LumiaAlertValues.TWITCH_BITS]: LumiaEventListTypes.BITS,
93
+ [activity_types_1.LumiaAlertValues.TWITCH_BITS_COMBO]: LumiaEventListTypes.BITS,
94
+ [activity_types_1.LumiaAlertValues.TWITCH_SESSION_BITS]: LumiaEventListTypes.BITS,
95
+ // TWITCH_REDEMPTION is explicitly hidden via `AlertsToFilter` — its
96
+ // payload is too channel-points-specific for a generic activity feed.
97
+ // Streamlabs Redemption (loyalty points) is in the REDEMPTION category
98
+ // below if that semantic is needed.
99
+ [activity_types_1.LumiaAlertValues.TWITCH_HYPETRAIN_STARTED]: LumiaEventListTypes.HYPETRAIN,
100
+ // HYPETRAIN_PROGRESSED / LEVEL_PROGRESSED / ENDED are hidden via
101
+ // `AlertsToFilter` — only the STARTED event reads as a real "event" in
102
+ // the feed; the rest are progress ticks the streamer doesn't want
103
+ // cluttering things.
104
+ [activity_types_1.LumiaAlertValues.TWITCH_CHARITY_DONATION]: LumiaEventListTypes.DONATION,
105
+ [activity_types_1.LumiaAlertValues.TWITCH_POWERUPS]: LumiaEventListTypes.BITS,
106
+ [activity_types_1.LumiaAlertValues.TWITCH_POWERUPS_POINTS]: LumiaEventListTypes.POINTS,
107
+ // --- YouTube ---
108
+ // YouTube "subscribers" are free follows in YT-speak — categorize as
109
+ // FOLLOWER so a "Recent Followers" widget unifies Twitch follows + YT
110
+ // subs. Paid memberships are categorized as SUBSCRIBERS below.
111
+ [activity_types_1.LumiaAlertValues.YOUTUBE_SUBSCRIBER]: LumiaEventListTypes.FOLLOWER,
112
+ [activity_types_1.LumiaAlertValues.YOUTUBE_SESSION_SUBS]: LumiaEventListTypes.FOLLOWER,
113
+ [activity_types_1.LumiaAlertValues.YOUTUBE_MEMBER]: LumiaEventListTypes.SUBSCRIBERS,
114
+ [activity_types_1.LumiaAlertValues.YOUTUBE_SESSION_MEMBERS]: LumiaEventListTypes.SUBSCRIBERS,
115
+ [activity_types_1.LumiaAlertValues.YOUTUBE_GIFT_MEMBERS]: LumiaEventListTypes.GIFTS,
116
+ [activity_types_1.LumiaAlertValues.YOUTUBE_SESSION_GIFT_MEMBERS]: LumiaEventListTypes.GIFTS,
117
+ [activity_types_1.LumiaAlertValues.YOUTUBE_SUPERCHAT]: LumiaEventListTypes.SUPERCHATS,
118
+ [activity_types_1.LumiaAlertValues.YOUTUBE_SESSION_SUPERCHATS]: LumiaEventListTypes.SUPERCHATS,
119
+ [activity_types_1.LumiaAlertValues.YOUTUBE_SUPERSTICKER]: LumiaEventListTypes.SUPERSTICKERS,
120
+ [activity_types_1.LumiaAlertValues.YOUTUBE_SESSION_SUPERSTICKERS]: LumiaEventListTypes.SUPERSTICKERS,
121
+ [activity_types_1.LumiaAlertValues.YOUTUBE_GIFTS]: LumiaEventListTypes.GIFTS,
122
+ [activity_types_1.LumiaAlertValues.YOUTUBE_SESSION_GIFTS]: LumiaEventListTypes.GIFTS,
123
+ // YOUTUBE_LIKE / TIKTOK_LIKE / TIKTOK_TOTAL_LIKES / TWITTER_LIKE are
124
+ // hidden via `AlertsToFilter` — likes are too frequent / noisy for a
125
+ // recent-activity feed.
126
+ // --- Facebook ---
42
127
  [activity_types_1.LumiaAlertValues.FACEBOOK_FOLLOWER]: LumiaEventListTypes.FOLLOWER,
43
- [activity_types_1.LumiaAlertValues.FACEBOOK_GIFT_SUBSCRIPTION]: LumiaEventListTypes.GIFTS,
44
128
  [activity_types_1.LumiaAlertValues.FACEBOOK_REACTION]: LumiaEventListTypes.LIKES,
45
- [activity_types_1.LumiaAlertValues.FACEBOOK_SHARE]: LumiaEventListTypes.SHARES,
46
129
  [activity_types_1.LumiaAlertValues.FACEBOOK_STAR]: LumiaEventListTypes.STARS,
130
+ // FB Supporters are paid subscriptions, FB Fans are free fan-status, FB
131
+ // Gift Subscriptions are gifted Supporters → keep all three in their
132
+ // distinct categories.
47
133
  [activity_types_1.LumiaAlertValues.FACEBOOK_SUPPORT]: LumiaEventListTypes.SUBSCRIBERS,
48
- [activity_types_1.LumiaAlertValues.KOFI_COMMISSION]: LumiaEventListTypes.PURCHASES,
49
- [activity_types_1.LumiaAlertValues.KOFI_DONATION]: LumiaEventListTypes.DONATION,
50
- [activity_types_1.LumiaAlertValues.KOFI_SHOPORDER]: LumiaEventListTypes.PURCHASES,
51
- [activity_types_1.LumiaAlertValues.KOFI_SUBSCRIPTION]: LumiaEventListTypes.SUBSCRIBERS,
52
- [activity_types_1.LumiaAlertValues.FOURTHWALL_DONATION]: LumiaEventListTypes.DONATION,
53
- [activity_types_1.LumiaAlertValues.FOURTHWALL_SHOPORDER]: LumiaEventListTypes.PURCHASES,
54
- [activity_types_1.LumiaAlertValues.FOURTHWALL_SUBSCRIPTION]: LumiaEventListTypes.SUBSCRIBERS,
55
- [activity_types_1.LumiaAlertValues.FOURTHWALL_SUBSCRIPTION_CHANGED]: LumiaEventListTypes.SUBSCRIBERS,
56
- [activity_types_1.LumiaAlertValues.FOURTHWALL_SUBSCRIPTION_EXPIRED]: LumiaEventListTypes.SUBSCRIBERS,
57
- [activity_types_1.LumiaAlertValues.FOURTHWALL_GIFTPURCHASE]: LumiaEventListTypes.PURCHASES,
58
- [activity_types_1.LumiaAlertValues.FOURTHWALL_GIVEAWAY_STARTED]: LumiaEventListTypes.GIFTS,
59
- [activity_types_1.LumiaAlertValues.FOURTHWALL_GIVEAWAY_ENDED]: LumiaEventListTypes.GIFTS,
60
- [activity_types_1.LumiaAlertValues.FOURTHWALL_THANKYOU_SENT]: LumiaEventListTypes.OTHERS,
61
- [activity_types_1.LumiaAlertValues.FOURTHWALL_NEWSLETTER_SUBSCRIBED]: LumiaEventListTypes.OTHERS,
62
- [activity_types_1.LumiaAlertValues.PATREON_PLEDGE]: LumiaEventListTypes.SUBSCRIBERS,
63
- [activity_types_1.LumiaAlertValues.STREAMELEMENTS_DONATION]: LumiaEventListTypes.DONATION,
64
- [activity_types_1.LumiaAlertValues.STREAMLABS_CHARITY]: LumiaEventListTypes.DONATION,
65
- [activity_types_1.LumiaAlertValues.STREAMLABS_DONATION]: LumiaEventListTypes.DONATION,
66
- [activity_types_1.LumiaAlertValues.STREAMLABS_MERCH]: LumiaEventListTypes.PURCHASES,
67
- [activity_types_1.LumiaAlertValues.STREAMLABS_PRIMEGIFT]: LumiaEventListTypes.GIFTS,
68
- [activity_types_1.LumiaAlertValues.STREAMLABS_REDEMPTION]: LumiaEventListTypes.PURCHASES,
134
+ [activity_types_1.LumiaAlertValues.FACEBOOK_GIFT_SUBSCRIPTION]: LumiaEventListTypes.GIFTS,
135
+ [activity_types_1.LumiaAlertValues.FACEBOOK_SHARE]: LumiaEventListTypes.SHARES,
136
+ [activity_types_1.LumiaAlertValues.FACEBOOK_FAN]: LumiaEventListTypes.FANS,
137
+ // --- TikTok ---
69
138
  [activity_types_1.LumiaAlertValues.TIKTOK_FOLLOWER]: LumiaEventListTypes.FOLLOWER,
70
139
  [activity_types_1.LumiaAlertValues.TIKTOK_GIFT]: LumiaEventListTypes.GIFTS,
71
- [activity_types_1.LumiaAlertValues.TIKTOK_LIKE]: LumiaEventListTypes.LIKES,
72
- [activity_types_1.LumiaAlertValues.TIKTOK_TOTAL_LIKES]: LumiaEventListTypes.LIKES,
73
- [activity_types_1.LumiaAlertValues.TIKTOK_SHARE]: LumiaEventListTypes.SHARES,
140
+ // TikTok Super Fan = paid membership (subscriber-equivalent). Super Fan
141
+ // BOX is a separate gift-style event where a viewer receives a fan-only
142
+ // drop — categorize as GIFTS to keep the SUBSCRIBERS feed sub-only.
74
143
  [activity_types_1.LumiaAlertValues.TIKTOK_SUPER_FAN]: LumiaEventListTypes.SUBSCRIBERS,
144
+ [activity_types_1.LumiaAlertValues.TIKTOK_SUPER_FAN_BOX]: LumiaEventListTypes.GIFTS,
75
145
  [activity_types_1.LumiaAlertValues.TIKTOK_TREASURE_CHEST]: LumiaEventListTypes.GIFTS,
76
- [activity_types_1.LumiaAlertValues.TIKTOK_QUESTION]: LumiaEventListTypes.OTHERS,
77
- [activity_types_1.LumiaAlertValues.TIKTOK_POLL]: LumiaEventListTypes.OTHERS,
78
- [activity_types_1.LumiaAlertValues.TIKTOK_SUPER_FAN_BOX]: LumiaEventListTypes.SUBSCRIBERS,
79
146
  [activity_types_1.LumiaAlertValues.TIKTOK_SHOP_PURCHASE]: LumiaEventListTypes.PURCHASES,
80
- [activity_types_1.LumiaAlertValues.TIKTOK_PIN_MESSAGE]: LumiaEventListTypes.OTHERS,
81
- [activity_types_1.LumiaAlertValues.TIKTOK_BATTLE_START]: LumiaEventListTypes.OTHERS,
82
- [activity_types_1.LumiaAlertValues.TIKTOK_BATTLE_PROGRESS]: LumiaEventListTypes.OTHERS,
83
- [activity_types_1.LumiaAlertValues.TIKTOK_BATTLE_END]: LumiaEventListTypes.OTHERS,
147
+ [activity_types_1.LumiaAlertValues.TIKTOK_SHARE]: LumiaEventListTypes.SHARES,
148
+ // --- Kick ---
149
+ [activity_types_1.LumiaAlertValues.KICK_POINTS]: LumiaEventListTypes.POINTS,
84
150
  [activity_types_1.LumiaAlertValues.KICK_FOLLOWER]: LumiaEventListTypes.FOLLOWER,
85
151
  [activity_types_1.LumiaAlertValues.KICK_SESSION_FOLLOWERS]: LumiaEventListTypes.FOLLOWER,
86
- [activity_types_1.LumiaAlertValues.KICK_GIFT_SUBSCRIPTION]: LumiaEventListTypes.GIFTS,
87
- [activity_types_1.LumiaAlertValues.KICK_SESSION_GIFT_SUBSCRIPTIONS]: LumiaEventListTypes.GIFTS,
88
152
  [activity_types_1.LumiaAlertValues.KICK_SUBSCRIBER]: LumiaEventListTypes.SUBSCRIBERS,
89
153
  [activity_types_1.LumiaAlertValues.KICK_SESSION_SUBS]: LumiaEventListTypes.SUBSCRIBERS,
90
- [activity_types_1.LumiaAlertValues.TILTIFY_DONATION]: LumiaEventListTypes.DONATION,
91
- [activity_types_1.LumiaAlertValues.TIPEEESTREAM_DONATION]: LumiaEventListTypes.DONATION,
92
- [activity_types_1.LumiaAlertValues.TREATSTREAM_TREAT]: LumiaEventListTypes.PURCHASES,
93
- [activity_types_1.LumiaAlertValues.TWITCH_BITS]: LumiaEventListTypes.BITS,
94
- [activity_types_1.LumiaAlertValues.TWITCH_BITS_COMBO]: LumiaEventListTypes.BITS,
95
- [activity_types_1.LumiaAlertValues.TWITCH_SESSION_BITS]: LumiaEventListTypes.BITS,
96
- [activity_types_1.LumiaAlertValues.TWITCH_POWERUPS]: LumiaEventListTypes.BITS,
97
- [activity_types_1.LumiaAlertValues.TWITCH_POWERUPS_POINTS]: LumiaEventListTypes.POINTS,
98
- [activity_types_1.LumiaAlertValues.TWITCH_CLIP]: LumiaEventListTypes.OTHERS,
99
- [activity_types_1.LumiaAlertValues.TWITCH_EXTENSION]: LumiaEventListTypes.EXTENSION,
100
- [activity_types_1.LumiaAlertValues.TWITCH_FOLLOWER]: LumiaEventListTypes.FOLLOWER,
101
- [activity_types_1.LumiaAlertValues.TWITCH_SESSION_FOLLOWERS]: LumiaEventListTypes.FOLLOWER,
102
- [activity_types_1.LumiaAlertValues.TWITCH_GIFT_SUBSCRIPTION]: LumiaEventListTypes.GIFTS,
103
- [activity_types_1.LumiaAlertValues.TWITCH_SESSION_GIFT_SUBSCRIPTIONS]: LumiaEventListTypes.GIFTS,
104
- [activity_types_1.LumiaAlertValues.TWITCH_HYPETRAIN_STARTED]: LumiaEventListTypes.HYPETRAIN,
105
- [activity_types_1.LumiaAlertValues.TWITCH_POINTS]: LumiaEventListTypes.POINTS,
106
- [activity_types_1.LumiaAlertValues.KICK_POINTS]: LumiaEventListTypes.POINTS,
107
- [activity_types_1.LumiaAlertValues.TWITCH_RAID]: LumiaEventListTypes.RAIDS,
108
- [activity_types_1.LumiaAlertValues.TWITCH_RAID_OUT]: LumiaEventListTypes.RAIDS,
154
+ [activity_types_1.LumiaAlertValues.KICK_GIFT_SUBSCRIPTION]: LumiaEventListTypes.GIFTS,
155
+ [activity_types_1.LumiaAlertValues.KICK_SESSION_GIFT_SUBSCRIPTIONS]: LumiaEventListTypes.GIFTS,
109
156
  [activity_types_1.LumiaAlertValues.KICK_KICKS]: LumiaEventListTypes.KICKS,
110
157
  [activity_types_1.LumiaAlertValues.KICK_SESSION_KICKS]: LumiaEventListTypes.KICKS,
111
158
  [activity_types_1.LumiaAlertValues.KICK_HOST]: LumiaEventListTypes.HOSTS,
112
- [activity_types_1.LumiaAlertValues.TWITCH_SHOUTOUT_RECEIVE]: LumiaEventListTypes.OTHERS,
113
- [activity_types_1.LumiaAlertValues.TWITCH_SUBSCRIBER]: LumiaEventListTypes.SUBSCRIBERS,
114
- [activity_types_1.LumiaAlertValues.TWITCH_SESSION_SUBS]: LumiaEventListTypes.SUBSCRIBERS,
115
- [activity_types_1.LumiaAlertValues.TWITCH_CHARITY_DONATION]: LumiaEventListTypes.DONATION,
116
- [activity_types_1.LumiaAlertValues.TWITCH_AD_STARTED]: LumiaEventListTypes.OTHERS,
117
- [activity_types_1.LumiaAlertValues.TWITCH_AD_STOPPED]: LumiaEventListTypes.OTHERS,
118
- [activity_types_1.LumiaAlertValues.TWITCH_WATCH_STREAK]: LumiaEventListTypes.OTHERS,
159
+ // --- Third-party donation / commerce platforms ---
160
+ [activity_types_1.LumiaAlertValues.STREAMLABS_DONATION]: LumiaEventListTypes.DONATION,
161
+ [activity_types_1.LumiaAlertValues.STREAMLABS_CHARITY]: LumiaEventListTypes.DONATION,
162
+ [activity_types_1.LumiaAlertValues.STREAMLABS_MERCH]: LumiaEventListTypes.PURCHASES,
163
+ // Streamlabs Redemption was previously miscategorized as PURCHASES. It's
164
+ // a Streamlabs loyalty-points redemption — the dedicated REDEMPTION
165
+ // category is the correct home, mirroring TWITCH_REDEMPTION.
166
+ [activity_types_1.LumiaAlertValues.STREAMLABS_REDEMPTION]: LumiaEventListTypes.REDEMPTION,
167
+ [activity_types_1.LumiaAlertValues.STREAMLABS_PRIMEGIFT]: LumiaEventListTypes.GIFTS,
168
+ [activity_types_1.LumiaAlertValues.STREAMELEMENTS_DONATION]: LumiaEventListTypes.DONATION,
169
+ [activity_types_1.LumiaAlertValues.EXTRALIFE_DONATION]: LumiaEventListTypes.DONATION,
170
+ [activity_types_1.LumiaAlertValues.DONORDRIVE_DONATION]: LumiaEventListTypes.DONATION,
171
+ [activity_types_1.LumiaAlertValues.TILTIFY_DONATION]: LumiaEventListTypes.DONATION,
172
+ // Throne is a viewer wishlist platform — a "gift purchase" is a viewer
173
+ // buying an item off the streamer's wishlist. Treat all three Throne
174
+ // events as PURCHASES so they don't leak into the SUBSCRIBERS feed.
175
+ [activity_types_1.LumiaAlertValues.THRONE_GIFT_PURCHASE]: LumiaEventListTypes.PURCHASES,
176
+ [activity_types_1.LumiaAlertValues.THRONE_CONTRIBUTION_PURCHASE]: LumiaEventListTypes.PURCHASES,
177
+ [activity_types_1.LumiaAlertValues.THRONE_GIFT_CROWDFUNDED]: LumiaEventListTypes.PURCHASES,
178
+ [activity_types_1.LumiaAlertValues.TIPEEESTREAM_DONATION]: LumiaEventListTypes.DONATION,
179
+ [activity_types_1.LumiaAlertValues.TREATSTREAM_TREAT]: LumiaEventListTypes.PURCHASES,
180
+ [activity_types_1.LumiaAlertValues.PATREON_PLEDGE]: LumiaEventListTypes.SUBSCRIBERS,
181
+ [activity_types_1.LumiaAlertValues.KOFI_DONATION]: LumiaEventListTypes.DONATION,
182
+ [activity_types_1.LumiaAlertValues.KOFI_SUBSCRIPTION]: LumiaEventListTypes.SUBSCRIBERS,
183
+ [activity_types_1.LumiaAlertValues.KOFI_COMMISSION]: LumiaEventListTypes.PURCHASES,
184
+ [activity_types_1.LumiaAlertValues.KOFI_SHOPORDER]: LumiaEventListTypes.PURCHASES,
185
+ [activity_types_1.LumiaAlertValues.FOURTHWALL_SHOPORDER]: LumiaEventListTypes.PURCHASES,
186
+ [activity_types_1.LumiaAlertValues.FOURTHWALL_DONATION]: LumiaEventListTypes.DONATION,
187
+ [activity_types_1.LumiaAlertValues.FOURTHWALL_SUBSCRIPTION]: LumiaEventListTypes.SUBSCRIBERS,
188
+ [activity_types_1.LumiaAlertValues.FOURTHWALL_SUBSCRIPTION_CHANGED]: LumiaEventListTypes.SUBSCRIBERS,
189
+ [activity_types_1.LumiaAlertValues.FOURTHWALL_GIFTPURCHASE]: LumiaEventListTypes.PURCHASES,
190
+ // --- Social media (Twitter / X) ---
119
191
  [activity_types_1.LumiaAlertValues.TWITTER_FOLLOWER]: LumiaEventListTypes.FOLLOWER,
120
- [activity_types_1.LumiaAlertValues.TWITTER_LIKE]: LumiaEventListTypes.LIKES,
121
192
  [activity_types_1.LumiaAlertValues.TWITTER_RETWEET]: LumiaEventListTypes.RETWEETS,
193
+ // --- E-commerce ---
122
194
  [activity_types_1.LumiaAlertValues.WOOCOMMERCE_ORDER]: LumiaEventListTypes.PURCHASES,
123
- [activity_types_1.LumiaAlertValues.YOUTUBE_MEMBER]: LumiaEventListTypes.SUBSCRIBERS,
124
- [activity_types_1.LumiaAlertValues.YOUTUBE_SUBSCRIBER]: LumiaEventListTypes.FOLLOWER,
125
- [activity_types_1.LumiaAlertValues.YOUTUBE_SUPERCHAT]: LumiaEventListTypes.SUPERCHATS,
126
- [activity_types_1.LumiaAlertValues.YOUTUBE_SUPERSTICKER]: LumiaEventListTypes.SUPERSTICKERS,
127
- [activity_types_1.LumiaAlertValues.YOUTUBE_GIFTS]: LumiaEventListTypes.GIFTS,
128
- [activity_types_1.LumiaAlertValues.YOUTUBE_LIKE]: LumiaEventListTypes.LIKES,
129
- [activity_types_1.LumiaAlertValues.YOUTUBE_VIEWERS]: LumiaEventListTypes.OTHERS,
130
- [activity_types_1.LumiaAlertValues.CROWDCONTROL_EFFECT]: LumiaEventListTypes.OTHERS,
131
195
  };
196
+ /**
197
+ * Alerts that should NOT appear in the eventlist's user-facing picker AND
198
+ * should NOT render in any eventlist feed. The invariant is:
199
+ *
200
+ * - Every `LumiaAlertValues` member must appear in EITHER
201
+ * `LumiaMapAlertTypeToEventListType` (mapped → visible in the picker
202
+ * and eventlist) OR in `AlertsToFilter` (hidden everywhere). Never
203
+ * both, never neither.
204
+ *
205
+ * Shared between LumiaStream (`EventCollection.ts` skips processing these
206
+ * to avoid spamming the event log, `EventListFilterPopover` hides them from
207
+ * the picker) and Overlay-UI (eventlist Manager picker hides them, eventlist
208
+ * component drops them at render). Was duplicated in both repos before
209
+ * being consolidated here.
210
+ *
211
+ * Grouped by source / platform. When adding a new alert to
212
+ * `LumiaAlertValues`, place it in EXACTLY ONE of the two lists. Default
213
+ * choice is `AlertsToFilter` (hidden) unless it's a viewer-facing event
214
+ * the eventlist should render.
215
+ */
216
+ exports.AlertsToFilter = [
217
+ // --- Lumia Stream native ---
218
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_LUMIA_OPENED,
219
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_LUMIA_CLOSED,
220
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_STREAMMODE_ON,
221
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_STREAMMODE_OFF,
222
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_SPINWHEEL_WINNER,
223
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_RAFFLE_START,
224
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_RAFFLE_STOP,
225
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_RAFFLE_WINNER,
226
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_TOURNAMENT_START,
227
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_TOURNAMENT_END,
228
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_TOURNAMENT_WINNER,
229
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_POLL_STARTED,
230
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_POLL_PROGRESSED,
231
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_POLL_ENDED,
232
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_VIEWERQUEUE_STARTED,
233
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_VIEWERQUEUE_ENDED,
234
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_VIEWER_ACHIEVEMENT,
235
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_VARIABLE_CHANGED,
236
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_ROULETTE_WINNER,
237
+ activity_types_1.LumiaAlertValues.LUMIASTREAM_SLOTS_WINNER,
238
+ // --- Twitch ---
239
+ activity_types_1.LumiaAlertValues.TWITCH_STREAM_LIVE,
240
+ activity_types_1.LumiaAlertValues.TWITCH_STREAM_OFFLINE,
241
+ activity_types_1.LumiaAlertValues.TWITCH_ENTRANCE,
242
+ activity_types_1.LumiaAlertValues.TWITCH_FIRST_CHATTER,
243
+ activity_types_1.LumiaAlertValues.TWITCH_HYPETRAIN_PROGRESSED,
244
+ activity_types_1.LumiaAlertValues.TWITCH_HYPETRAIN_LEVEL_PROGRESSED,
245
+ activity_types_1.LumiaAlertValues.TWITCH_HYPETRAIN_ENDED,
246
+ activity_types_1.LumiaAlertValues.TWITCH_REDEMPTION,
247
+ activity_types_1.LumiaAlertValues.TWITCH_POLL_STARTED,
248
+ activity_types_1.LumiaAlertValues.TWITCH_POLL_PROGRESSED,
249
+ activity_types_1.LumiaAlertValues.TWITCH_POLL_ENDED,
250
+ activity_types_1.LumiaAlertValues.TWITCH_PREDICTION_STARTED,
251
+ activity_types_1.LumiaAlertValues.TWITCH_PREDICTION_PROGRESSED,
252
+ activity_types_1.LumiaAlertValues.TWITCH_PREDICTION_LOCKED,
253
+ activity_types_1.LumiaAlertValues.TWITCH_PREDICTION_ENDED,
254
+ activity_types_1.LumiaAlertValues.TWITCH_GOAL_STARTED,
255
+ activity_types_1.LumiaAlertValues.TWITCH_GOAL_PROGRESSED,
256
+ activity_types_1.LumiaAlertValues.TWITCH_GOAL_ENDED,
257
+ activity_types_1.LumiaAlertValues.TWITCH_CHARITY_CAMPAIGN_STARTED,
258
+ activity_types_1.LumiaAlertValues.TWITCH_CHARITY_CAMPAIGN_PROGRESSED,
259
+ activity_types_1.LumiaAlertValues.TWITCH_CHARITY_CAMPAIGN_STOPPED,
260
+ activity_types_1.LumiaAlertValues.TWITCH_CATEGORY,
261
+ activity_types_1.LumiaAlertValues.TWITCH_CLIP,
262
+ activity_types_1.LumiaAlertValues.TWITCH_CHANNEL_JOIN,
263
+ activity_types_1.LumiaAlertValues.TWITCH_CHANNEL_LEAVE,
264
+ activity_types_1.LumiaAlertValues.TWITCH_BANNED,
265
+ activity_types_1.LumiaAlertValues.TWITCH_TIMEOUT,
266
+ activity_types_1.LumiaAlertValues.TWITCH_TIMEOUT_OVER,
267
+ activity_types_1.LumiaAlertValues.TWITCH_SHOUTOUT_RECEIVE,
268
+ activity_types_1.LumiaAlertValues.TWITCH_AD_STARTED,
269
+ activity_types_1.LumiaAlertValues.TWITCH_AD_STOPPED,
270
+ activity_types_1.LumiaAlertValues.TWITCH_WATCH_STREAK,
271
+ // --- YouTube ---
272
+ activity_types_1.LumiaAlertValues.YOUTUBE_STREAM_LIVE,
273
+ activity_types_1.LumiaAlertValues.YOUTUBE_STREAM_OFFLINE,
274
+ activity_types_1.LumiaAlertValues.YOUTUBE_ENTRANCE,
275
+ activity_types_1.LumiaAlertValues.YOUTUBE_FIRST_CHATTER,
276
+ activity_types_1.LumiaAlertValues.YOUTUBE_LIKE,
277
+ activity_types_1.LumiaAlertValues.YOUTUBE_VIEWERS,
278
+ // --- Facebook ---
279
+ activity_types_1.LumiaAlertValues.FACEBOOK_STREAM_LIVE,
280
+ activity_types_1.LumiaAlertValues.FACEBOOK_STREAM_OFFLINE,
281
+ activity_types_1.LumiaAlertValues.FACEBOOK_ENTRANCE,
282
+ activity_types_1.LumiaAlertValues.FACEBOOK_FIRST_CHATTER,
283
+ // --- TikTok ---
284
+ activity_types_1.LumiaAlertValues.TIKTOK_STREAM_END,
285
+ activity_types_1.LumiaAlertValues.TIKTOK_ENTRANCE,
286
+ activity_types_1.LumiaAlertValues.TIKTOK_FIRST_CHATTER,
287
+ activity_types_1.LumiaAlertValues.TIKTOK_NEW_VIDEO,
288
+ activity_types_1.LumiaAlertValues.TIKTOK_TOTAL_LIKES,
289
+ activity_types_1.LumiaAlertValues.TIKTOK_LIKE,
290
+ activity_types_1.LumiaAlertValues.TIKTOK_QUESTION,
291
+ activity_types_1.LumiaAlertValues.TIKTOK_POLL,
292
+ activity_types_1.LumiaAlertValues.TIKTOK_PIN_MESSAGE,
293
+ activity_types_1.LumiaAlertValues.TIKTOK_BATTLE_START,
294
+ activity_types_1.LumiaAlertValues.TIKTOK_BATTLE_PROGRESS,
295
+ activity_types_1.LumiaAlertValues.TIKTOK_BATTLE_END,
296
+ // --- Kick ---
297
+ activity_types_1.LumiaAlertValues.KICK_ENTRANCE,
298
+ activity_types_1.LumiaAlertValues.KICK_FIRST_CHATTER,
299
+ activity_types_1.LumiaAlertValues.KICK_BANNED,
300
+ activity_types_1.LumiaAlertValues.KICK_UNBANNED,
301
+ // --- Discord ---
302
+ activity_types_1.LumiaAlertValues.DISCORD_FIRST_CHATTER,
303
+ activity_types_1.LumiaAlertValues.DISCORD_ENTRANCE,
304
+ // --- Third-party (Fourthwall housekeeping) ---
305
+ activity_types_1.LumiaAlertValues.FOURTHWALL_SUBSCRIPTION_EXPIRED,
306
+ activity_types_1.LumiaAlertValues.FOURTHWALL_GIVEAWAY_STARTED,
307
+ activity_types_1.LumiaAlertValues.FOURTHWALL_GIVEAWAY_ENDED,
308
+ activity_types_1.LumiaAlertValues.FOURTHWALL_THANKYOU_SENT,
309
+ activity_types_1.LumiaAlertValues.FOURTHWALL_NEWSLETTER_SUBSCRIBED,
310
+ // --- Broadcasting apps (OBS / SLOBS / Meld) ---
311
+ activity_types_1.LumiaAlertValues.OBS_SWITCH_PROFILE,
312
+ activity_types_1.LumiaAlertValues.OBS_SWITCH_SCENE,
313
+ activity_types_1.LumiaAlertValues.OBS_SCENE_ITEM_VISIBILITY,
314
+ activity_types_1.LumiaAlertValues.OBS_SCENE_ITEM_HIDDEN,
315
+ activity_types_1.LumiaAlertValues.OBS_SWITCH_TRANSITION,
316
+ activity_types_1.LumiaAlertValues.OBS_TRANSITION_BEGIN,
317
+ activity_types_1.LumiaAlertValues.OBS_TRANSITION_END,
318
+ activity_types_1.LumiaAlertValues.OBS_STREAM_STARTING,
319
+ activity_types_1.LumiaAlertValues.OBS_STREAM_STOPPING,
320
+ activity_types_1.LumiaAlertValues.OBS_RECORDING_STARTING,
321
+ activity_types_1.LumiaAlertValues.OBS_RECORDING_STOPPING,
322
+ activity_types_1.LumiaAlertValues.OBS_MEDIA_INPUT_PLAYBACK_STARTED,
323
+ activity_types_1.LumiaAlertValues.OBS_MEDIA_INPUT_PLAYBACK_ENDED,
324
+ activity_types_1.LumiaAlertValues.OBS_VIRTUALCAM_STATE_CHANGED,
325
+ activity_types_1.LumiaAlertValues.OBS_SCREENSHOT_SAVED,
326
+ activity_types_1.LumiaAlertValues.OBS_REPLAY_BUFFER_SAVED,
327
+ activity_types_1.LumiaAlertValues.OBS_VERTICAL_BACKTRACK_SAVED,
328
+ activity_types_1.LumiaAlertValues.OBS_VENDOR_EVENT,
329
+ activity_types_1.LumiaAlertValues.SLOBS_SWITCH_SCENE_COLLECTION,
330
+ activity_types_1.LumiaAlertValues.SLOBS_SWITCH_SCENE,
331
+ activity_types_1.LumiaAlertValues.SLOBS_SCENE_ITEM_VISIBILITY,
332
+ activity_types_1.LumiaAlertValues.SLOBS_SCENE_ITEM_HIDDEN,
333
+ activity_types_1.LumiaAlertValues.MELD_STREAM_STARTING,
334
+ activity_types_1.LumiaAlertValues.MELD_STREAM_STOPPING,
335
+ activity_types_1.LumiaAlertValues.MELD_RECORDING_STARTING,
336
+ activity_types_1.LumiaAlertValues.MELD_RECORDING_STOPPING,
337
+ activity_types_1.LumiaAlertValues.MELD_SWITCH_SCENE,
338
+ activity_types_1.LumiaAlertValues.MELD_SWITCH_VERTICAL_SCENE,
339
+ // --- Music players ---
340
+ activity_types_1.LumiaAlertValues.SPOTIFY_SWITCH_SONG,
341
+ activity_types_1.LumiaAlertValues.SPOTIFY_SONG_PLAYED,
342
+ activity_types_1.LumiaAlertValues.SPOTIFY_SONG_PAUSED,
343
+ activity_types_1.LumiaAlertValues.YOUTUBEMUSIC_SWITCH_SONG,
344
+ activity_types_1.LumiaAlertValues.YOUTUBEMUSIC_SONG_PLAYED,
345
+ activity_types_1.LumiaAlertValues.YOUTUBEMUSIC_SONG_PAUSED,
346
+ activity_types_1.LumiaAlertValues.NOWPLAYING_SWITCH_SONG,
347
+ activity_types_1.LumiaAlertValues.NOWPLAYING_SONG_PLAYED,
348
+ activity_types_1.LumiaAlertValues.NOWPLAYING_SONG_PAUSED,
349
+ activity_types_1.LumiaAlertValues.VLC_SWITCH_SONG,
350
+ activity_types_1.LumiaAlertValues.VLC_SONG_PLAYED,
351
+ activity_types_1.LumiaAlertValues.VLC_SONG_PAUSED,
352
+ // --- Health / fitness ---
353
+ activity_types_1.LumiaAlertValues.PULSE_HEARTRATE,
354
+ activity_types_1.LumiaAlertValues.PULSE_CALORIES,
355
+ // --- Social media ---
356
+ activity_types_1.LumiaAlertValues.TWITTER_LIKE,
357
+ // --- Other integrations ---
358
+ activity_types_1.LumiaAlertValues.STREAMERBOT_ACTION,
359
+ activity_types_1.LumiaAlertValues.CROWDCONTROL_EFFECT,
360
+ // --- VTube Studio ---
361
+ activity_types_1.LumiaAlertValues.VTUBESTUDIO_HOTKEY_TRIGGERED,
362
+ activity_types_1.LumiaAlertValues.VTUBESTUDIO_MODEL_LOADED,
363
+ activity_types_1.LumiaAlertValues.VTUBESTUDIO_ANIMATION_START,
364
+ activity_types_1.LumiaAlertValues.VTUBESTUDIO_ANIMATION_END,
365
+ activity_types_1.LumiaAlertValues.VTUBESTUDIO_ITEM_ADDED,
366
+ activity_types_1.LumiaAlertValues.VTUBESTUDIO_ITEM_REMOVED,
367
+ activity_types_1.LumiaAlertValues.VTUBESTUDIO_BACKGROUND_CHANGED,
368
+ ];
369
+ /**
370
+ * Platforms whose events should be hidden from the eventlist / event log
371
+ * processing pipeline. These are connections whose alerts are stream
372
+ * management or housekeeping (broadcasting apps, music players, health
373
+ * trackers, automation tools) rather than viewer-facing activity.
374
+ *
375
+ * Used by LumiaStream's `EventCollection.ts` to short-circuit processing
376
+ * before the event lands in the eventlist DB at all. Was duplicated in
377
+ * LumiaStream `Integrations.types.ts` before being consolidated here.
378
+ */
379
+ exports.PlatformsToFilter = [
380
+ 'obs',
381
+ 'slobs',
382
+ 'meld',
383
+ 'paypal',
384
+ 'pulsoid',
385
+ 'hyperate',
386
+ 'spotify',
387
+ 'youtubemusic',
388
+ 'nowplaying',
389
+ 'vlc',
390
+ 'streamerbot',
391
+ 'vtubestudio',
392
+ ];
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export { LumiaStreamingSites, LumiaActivityCommandTypes, LumiaExternalActivityCommandTypes, LumiaAlertValues, LumiaAlertFriendlyValues, LumiaActivityOriginTypes, LumiaActivityApiValueType, LumiaActivityNoValueTypes, LumiaActivityTestType, } from './activity.types';
2
2
  export { LumiaVariationConditions, LumiaVariationCurrency, VariationCurrencySymbol, LumiaRedemptionCurrency, LumiaRedemptionCurrencySymbol, LumiaAlertConfigs, LumiaDynamicCondition, type LumiaSelectionOption, } from './alert.types';
3
3
  export { ILumiaSendPack, ILumiaEvent, ILumiaEventChatCommandBody, ILumiaEventChatBody, ILumiaEventAlertBody, ILumiaEventStateBody, ILumiaLight, LumiaIntegrations, LumiaEventTypes, } from './event.types';
4
- export { LumiaEventListTypes, LumiaMapAlertTypeToEventListType } from './eventlist.types';
4
+ export { LumiaEventListTypes, LumiaMapAlertTypeToEventListType, AlertsToFilter, PlatformsToFilter } from './eventlist.types';
5
5
  export { SystemVariables, ReservedVariables, AllVariables, getAcceptedVariableName, getAcceptedVariableNames, type LumiaAcceptedVariable, type LumiaAcceptedVariableDefinition, } from './variables.types';
6
6
  export { formatCondition } from './helpers';
7
7
  export { KickKicksData } from './kick_kicks';
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SongRequestPlaybackTarget = exports.SongRequestProvider = exports.SongRequestSource = exports.SongRequestStatus = exports.VIEWER_PROFILE_ACHIEVEMENTS = exports.YoutubeSuperstickersData = exports.TiktokGiftsData = exports.KickKicksData = exports.formatCondition = exports.getAcceptedVariableNames = exports.getAcceptedVariableName = exports.AllVariables = exports.ReservedVariables = exports.SystemVariables = exports.LumiaMapAlertTypeToEventListType = exports.LumiaEventListTypes = exports.LumiaEventTypes = exports.LumiaIntegrations = exports.LumiaAlertConfigs = exports.LumiaRedemptionCurrencySymbol = exports.LumiaRedemptionCurrency = exports.VariationCurrencySymbol = exports.LumiaVariationCurrency = exports.LumiaVariationConditions = exports.LumiaActivityTestType = exports.LumiaActivityNoValueTypes = exports.LumiaActivityApiValueType = exports.LumiaActivityOriginTypes = exports.LumiaAlertFriendlyValues = exports.LumiaAlertValues = exports.LumiaExternalActivityCommandTypes = exports.LumiaActivityCommandTypes = exports.LumiaStreamingSites = void 0;
3
+ exports.SongRequestPlaybackTarget = exports.SongRequestProvider = exports.SongRequestSource = exports.SongRequestStatus = exports.VIEWER_PROFILE_ACHIEVEMENTS = exports.YoutubeSuperstickersData = exports.TiktokGiftsData = exports.KickKicksData = exports.formatCondition = exports.getAcceptedVariableNames = exports.getAcceptedVariableName = exports.AllVariables = exports.ReservedVariables = exports.SystemVariables = exports.PlatformsToFilter = exports.AlertsToFilter = exports.LumiaMapAlertTypeToEventListType = exports.LumiaEventListTypes = exports.LumiaEventTypes = exports.LumiaIntegrations = exports.LumiaAlertConfigs = exports.LumiaRedemptionCurrencySymbol = exports.LumiaRedemptionCurrency = exports.VariationCurrencySymbol = exports.LumiaVariationCurrency = exports.LumiaVariationConditions = exports.LumiaActivityTestType = exports.LumiaActivityNoValueTypes = exports.LumiaActivityApiValueType = exports.LumiaActivityOriginTypes = exports.LumiaAlertFriendlyValues = exports.LumiaAlertValues = exports.LumiaExternalActivityCommandTypes = exports.LumiaActivityCommandTypes = exports.LumiaStreamingSites = void 0;
4
4
  var activity_types_1 = require("./activity.types");
5
5
  Object.defineProperty(exports, "LumiaStreamingSites", { enumerable: true, get: function () { return activity_types_1.LumiaStreamingSites; } });
6
6
  Object.defineProperty(exports, "LumiaActivityCommandTypes", { enumerable: true, get: function () { return activity_types_1.LumiaActivityCommandTypes; } });
@@ -24,6 +24,8 @@ Object.defineProperty(exports, "LumiaEventTypes", { enumerable: true, get: funct
24
24
  var eventlist_types_1 = require("./eventlist.types");
25
25
  Object.defineProperty(exports, "LumiaEventListTypes", { enumerable: true, get: function () { return eventlist_types_1.LumiaEventListTypes; } });
26
26
  Object.defineProperty(exports, "LumiaMapAlertTypeToEventListType", { enumerable: true, get: function () { return eventlist_types_1.LumiaMapAlertTypeToEventListType; } });
27
+ Object.defineProperty(exports, "AlertsToFilter", { enumerable: true, get: function () { return eventlist_types_1.AlertsToFilter; } });
28
+ Object.defineProperty(exports, "PlatformsToFilter", { enumerable: true, get: function () { return eventlist_types_1.PlatformsToFilter; } });
27
29
  var variables_types_1 = require("./variables.types");
28
30
  Object.defineProperty(exports, "SystemVariables", { enumerable: true, get: function () { return variables_types_1.SystemVariables; } });
29
31
  Object.defineProperty(exports, "ReservedVariables", { enumerable: true, get: function () { return variables_types_1.ReservedVariables; } });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lumiastream/lumia-types",
3
- "version": "3.3.8",
3
+ "version": "3.4.0",
4
4
  "description": "",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/esm/index.js",
@@ -31,7 +31,8 @@
31
31
  ],
32
32
  "scripts": {
33
33
  "build": "npm run clean && tsc -p tsconfig.json && tsc -p tsconfig.esm.json && npm run sync:custom-overlays && npm run sync:custom-code && node ./scripts/finalize-esm-build.mjs",
34
- "prepublishOnly": "npm run build",
34
+ "test": "node ./scripts/check-eventlist-alert-invariant.mjs",
35
+ "prepublishOnly": "npm run build && npm test",
35
36
  "lint": "tslint --project tsconfig.json \"src/**/*.ts\"",
36
37
  "lint:fix": "tslint --project tsconfig.json --fix \"src/**/*.ts\"",
37
38
  "clean": "rm -rf dist",