@allior/wmake-streamelements-events 2.0.4 → 3.1.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/README.md +110 -86
- package/dist/react/hooks/factory.d.ts +31 -0
- package/dist/react/hooks/factory.d.ts.map +1 -0
- package/dist/react/hooks/use-on-event-received.d.ts +85 -13
- package/dist/react/hooks/use-on-event-received.d.ts.map +1 -1
- package/dist/react/index.iife.js +1 -1
- package/dist/react/index.iife.js.map +1 -1
- package/dist/react/index.js +49 -10
- package/dist/react/index.js.map +1 -1
- package/dist/root/{aggregate.d.ts → aggregator/index.d.ts} +5 -3
- package/dist/root/aggregator/index.d.ts.map +1 -0
- package/dist/root/aggregator/types.d.ts +14 -0
- package/dist/root/aggregator/types.d.ts.map +1 -0
- package/dist/root/classifier.d.ts.map +1 -1
- package/dist/root/guards/on-event-received.d.ts +2 -3
- package/dist/root/guards/on-event-received.d.ts.map +1 -1
- package/dist/root/index.d.ts +1 -1
- package/dist/root/index.d.ts.map +1 -1
- package/dist/root/index.iife.js +1 -1
- package/dist/root/index.iife.js.map +1 -1
- package/dist/root/index.js +2 -2
- package/dist/root/types/on-event-received/base.d.ts +0 -13
- package/dist/root/types/on-event-received/base.d.ts.map +1 -1
- package/dist/root/types/on-event-received/button.d.ts +10 -0
- package/dist/root/types/on-event-received/button.d.ts.map +1 -0
- package/dist/root/types/on-event-received/index.d.ts +8 -8
- package/dist/root/types/on-event-received/index.d.ts.map +1 -1
- package/dist/root/types/on-event-received/moderation.d.ts +9 -1
- package/dist/root/types/on-event-received/moderation.d.ts.map +1 -1
- package/dist/root/types/on-event-received/subscriber.d.ts +2 -2
- package/dist/root/types/on-event-received/subscriber.d.ts.map +1 -1
- package/dist/root/types/on-event-received/unknown.d.ts +6 -0
- package/dist/root/types/on-event-received/unknown.d.ts.map +1 -0
- package/dist/{root-BzhLLMHq.js → root-DJod-F4M.js} +31 -47
- package/dist/root-DJod-F4M.js.map +1 -0
- package/package.json +1 -1
- package/dist/root/aggregate.d.ts.map +0 -1
- package/dist/root/types/on-event-received/donation.d.ts +0 -25
- package/dist/root/types/on-event-received/donation.d.ts.map +0 -1
- package/dist/root/types/on-event-received/other.d.ts +0 -10
- package/dist/root/types/on-event-received/other.d.ts.map +0 -1
- package/dist/root-BzhLLMHq.js.map +0 -1
package/dist/react/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as e, c as t, d as n, f as r, i, l as a, m as o, n as s, o as c, p as l, r as u, s as d, t as f, u as p } from "../root-
|
|
1
|
+
import { a as e, c as t, d as n, f as r, i, l as a, m as o, n as s, o as c, p as l, r as u, s as d, t as f, u as p } from "../root-DJod-F4M.js";
|
|
2
2
|
import { useEffect as m, useRef as h } from "react";
|
|
3
3
|
//#region src/react/hooks/use-event-listener.ts
|
|
4
4
|
function g(e, t, n = []) {
|
|
@@ -14,24 +14,63 @@ var _ = (e) => typeof e == "object" && !!e && "listener" in e;
|
|
|
14
14
|
function v(e) {
|
|
15
15
|
return (t) => _(t) && e(t);
|
|
16
16
|
}
|
|
17
|
-
var y = v((e) => e.listener === "message"), b = v((e) => e.listener === "follower-latest"), x = v((e) => e.listener === "subscriber-latest"), S = v((e) => e.listener === "cheer-latest"), C = v((e) => e.listener === "raid-latest"), w = v((e) => e.listener === "
|
|
17
|
+
var y = v((e) => e.listener === "message"), b = v((e) => e.listener === "follower-latest"), x = v((e) => e.listener === "subscriber-latest"), S = v((e) => e.listener === "cheer-latest"), C = v((e) => e.listener === "raid-latest"), w = v((e) => e.listener === "delete-message"), T = v((e) => e.listener === "delete-messages"), E = v((e) => e.listener === "event" && e.event?.type === "communityGiftPurchase"), D = v((e) => e.listener === "event" && e.event?.type === "subscriber"), O = v((e) => e.listener === "event:test" && e.event?.listener === "widget-button");
|
|
18
18
|
//#endregion
|
|
19
|
-
//#region src/react/hooks/
|
|
20
|
-
function
|
|
19
|
+
//#region src/react/hooks/factory.ts
|
|
20
|
+
function k(e) {
|
|
21
|
+
return e ? Array.isArray(e) ? { deps: e } : e : {};
|
|
22
|
+
}
|
|
23
|
+
function A(e, t, n) {
|
|
24
|
+
let { classified: i, deps: a = [] } = n;
|
|
21
25
|
g("onEventReceived", (n) => {
|
|
22
|
-
e(n.detail)
|
|
23
|
-
|
|
26
|
+
if (e(n.detail)) if (i) {
|
|
27
|
+
let e = r(n.detail);
|
|
28
|
+
e && t(e);
|
|
29
|
+
} else t(n);
|
|
30
|
+
}, a);
|
|
31
|
+
}
|
|
32
|
+
function j(e) {
|
|
33
|
+
return (t, n) => A(e, t, k(n));
|
|
24
34
|
}
|
|
25
|
-
|
|
35
|
+
//#endregion
|
|
36
|
+
//#region src/react/hooks/use-on-event-received.ts
|
|
37
|
+
function M(e, t = []) {
|
|
26
38
|
g("onEventReceived", e, t);
|
|
27
39
|
}
|
|
28
|
-
var
|
|
40
|
+
var N = j(y), P = N, F = j(w), I = j(T), L = j(O), R = j(b), z = j(S), B = j(C), V = j(D), H = (e, t = []) => {
|
|
41
|
+
V((t) => {
|
|
42
|
+
t.type === "self-sub" && e(t);
|
|
43
|
+
}, {
|
|
44
|
+
classified: !0,
|
|
45
|
+
deps: t
|
|
46
|
+
});
|
|
47
|
+
}, U = (e, t = []) => {
|
|
48
|
+
V((t) => {
|
|
49
|
+
t.type === "sub-renewal" && e(t);
|
|
50
|
+
}, {
|
|
51
|
+
classified: !0,
|
|
52
|
+
deps: t
|
|
53
|
+
});
|
|
54
|
+
}, W = (e, t = []) => {
|
|
55
|
+
V((t) => {
|
|
56
|
+
t.type === "solo-sub-to-someone" && e(t);
|
|
57
|
+
}, {
|
|
58
|
+
classified: !0,
|
|
59
|
+
deps: t
|
|
60
|
+
});
|
|
61
|
+
}, G = j(x), K = j(E), q = (e, t, r = []) => {
|
|
62
|
+
M((r) => {
|
|
63
|
+
n(r.detail, t, (t) => {
|
|
64
|
+
t && e(t);
|
|
65
|
+
});
|
|
66
|
+
}, r);
|
|
67
|
+
};
|
|
29
68
|
//#endregion
|
|
30
69
|
//#region src/react/hooks/use-on-widget-load.ts
|
|
31
|
-
function
|
|
70
|
+
function J(e, t = []) {
|
|
32
71
|
g("onWidgetLoad", e, t);
|
|
33
72
|
}
|
|
34
73
|
//#endregion
|
|
35
|
-
export { f as AlertQueue, s as TwitchUserMessageData, u as UserRole, r as classifyEvent, l as getCacheKey, i as getTestAlertKey, e as getTestMessageKey,
|
|
74
|
+
export { f as AlertQueue, s as TwitchUserMessageData, u as UserRole, n as aggregateIncomingEvent, r as classifyEvent, l as getCacheKey, i as getTestAlertKey, e as getTestMessageKey, o as parseTier, c as testAlert, a as testAlerts, d as testMessage, t as testMessages, p as testOnWidgetLoadDetail, g as useEventListener, q as useOnAggregatedCommunityGift, z as useOnCheerReceived, K as useOnCommunityGiftPurchaseReceived, F as useOnDeleteMessage, I as useOnDeleteMessages, M as useOnEventReceived, R as useOnFollowerReceived, P as useOnMessageReceived, B as useOnRaidReceived, H as useOnSelfSubReceived, W as useOnSoloGiftReceived, U as useOnSubRenewalReceived, G as useOnSubscriberLatestReceived, V as useOnSubscriberReceived, N as useOnTwitchMessageReceived, L as useOnWidgetButtonReceived, J as useOnWidgetLoad };
|
|
36
75
|
|
|
37
76
|
//# sourceMappingURL=index.js.map
|
package/dist/react/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../src/react/hooks/use-event-listener.ts","../../src/root/guards/on-event-received.ts","../../src/react/hooks/use-on-event-received.ts","../../src/react/hooks/use-on-widget-load.ts"],"sourcesContent":["import { type DependencyList, useEffect, useRef } from \"react\";\nimport type {\n\tWindowEventKey,\n\tWindowEventListener,\n} from \"../types/window-events.js\";\n\nexport function useEventListener<K extends WindowEventKey>(\n\teventName: K,\n\thandler: WindowEventListener<K>,\n\tdeps: DependencyList = [],\n): void {\n\tconst callbackRef = useRef<WindowEventListener<K>>(handler);\n\tcallbackRef.current = handler;\n\n\tuseEffect(() => {\n\t\tconst fn = (ev: WindowEventMap[K]) => callbackRef.current.call(window, ev);\n\t\twindow.addEventListener(eventName, fn);\n\t\treturn () => window.removeEventListener(eventName, fn);\n\t}, [eventName, ...deps]);\n}\n","import type {\n\tCheerDetail,\n\tCommunityGiftPurchaseDetail,\n\tDeleteMessageDetail,\n\tDeleteMessagesDetail,\n\tDonationDetail,\n\tFollowerDetail,\n\tMinimalEvent,\n\tRaidDetail,\n\tSubscriberDetail,\n\tSubscriberLatestDetail,\n\tTwitchMessageDetail,\n\tWidgetButtonDetail,\n} from \"@/root/types/on-event-received\";\n\nexport const isDetail = (d: unknown): d is MinimalEvent =>\n\ttypeof d === \"object\" && d !== null && \"listener\" in d;\n\nexport function createGuard<T extends MinimalEvent>(\n\tpredicate: (d: MinimalEvent) => boolean,\n) {\n\treturn (d: unknown): d is T => isDetail(d) && predicate(d);\n}\n\nexport const isTwitchMessageEvent = createGuard<TwitchMessageDetail>(\n\t(d) => d.listener === \"message\",\n);\nexport const isFollowerDetail = createGuard<FollowerDetail>(\n\t(d) => d.listener === \"follower-latest\",\n);\nexport const isSubscriberLatestDetail = createGuard<SubscriberLatestDetail>(\n\t(d) => d.listener === \"subscriber-latest\",\n);\nexport const isCheerDetail = createGuard<CheerDetail>(\n\t(d) => d.listener === \"cheer-latest\",\n);\nexport const isRaidDetail = createGuard<RaidDetail>(\n\t(d) => d.listener === \"raid-latest\",\n);\nexport const isDonationDetail = createGuard<DonationDetail>(\n\t(d) => d.listener === \"donation\",\n);\nexport const isDeleteMessageDetail = createGuard<DeleteMessageDetail>(\n\t(d) => d.listener === \"delete-message\",\n);\nexport const isDeleteMessagesDetail = createGuard<DeleteMessagesDetail>(\n\t(d) => d.listener === \"delete-messages\",\n);\nexport const isCommunityGiftPurchaseDetail =\n\tcreateGuard<CommunityGiftPurchaseDetail>(\n\t\t(d) => d.listener === \"event\" && d.event?.type === \"communityGiftPurchase\",\n\t);\nexport const isSubscriberDetail = createGuard<SubscriberDetail>(\n\t(d) => d.listener === \"event\" && d.event?.type === \"subscriber\",\n);\nexport const isWidgetButtonDetail = createGuard<WidgetButtonDetail>(\n\t(d) => d.listener === \"event:test\" && d.event?.listener === \"widget-button\",\n);\n","import type { DependencyList } from \"react\";\nimport {\n\tisCheerDetail,\n\tisCommunityGiftPurchaseDetail,\n\tisDeleteMessageDetail,\n\tisDeleteMessagesDetail,\n\tisDonationDetail,\n\tisFollowerDetail,\n\tisRaidDetail,\n\tisSubscriberDetail,\n\tisSubscriberLatestDetail,\n\tisTwitchMessageEvent,\n\tisWidgetButtonDetail,\n} from \"@/root/guards\";\nimport type {\n\tCheerDetail,\n\tCommunityGiftPurchaseDetail,\n\tDeleteMessageDetail,\n\tDeleteMessagesDetail,\n\tDonationDetail,\n\tFollowerDetail,\n\tMinimalEvent,\n\tRaidDetail,\n\tSubscriberDetail,\n\tSubscriberLatestDetail,\n\tTwitchMessageDetail,\n\tWidgetButtonDetail,\n} from \"@/root/types/on-event-received\";\nimport type { WindowEventListener } from \"../types/window-events\";\nimport { useEventListener } from \"./use-event-listener\";\n\nfunction useOnEvent<T extends MinimalEvent>(\n\tguard: (d: unknown) => d is T,\n\thandler: (ev: CustomEvent<T>) => void,\n\tdeps: DependencyList = [],\n) {\n\tuseEventListener(\n\t\t\"onEventReceived\",\n\t\t(ev) => {\n\t\t\tif (guard(ev.detail)) handler(ev as CustomEvent<T>);\n\t\t},\n\t\tdeps,\n\t);\n}\n\nexport function useOnEventReceived(\n\thandler: WindowEventListener<\"onEventReceived\">,\n\tdeps: DependencyList = [],\n): void {\n\tuseEventListener(\"onEventReceived\", handler, deps);\n}\n\nexport const useOnTwitchMessageReceived = (\n\thandler: (ev: CustomEvent<TwitchMessageDetail>) => void,\n\tdeps?: DependencyList,\n) => useOnEvent(isTwitchMessageEvent, handler, deps);\n\nexport const useOnMessageReceived = useOnTwitchMessageReceived;\n\nexport const useOnWidgetButtonReceived = (\n\thandler: (ev: CustomEvent<WidgetButtonDetail>) => void,\n\tdeps?: DependencyList,\n) => useOnEvent(isWidgetButtonDetail, handler, deps);\n\nexport const useOnFollowerReceived = (\n\thandler: (ev: CustomEvent<FollowerDetail>) => void,\n\tdeps?: DependencyList,\n) => useOnEvent(isFollowerDetail, handler, deps);\n\nexport const useOnCommunityGiftPurchaseReceived = (\n\thandler: (ev: CustomEvent<CommunityGiftPurchaseDetail>) => void,\n\tdeps?: DependencyList,\n) => useOnEvent(isCommunityGiftPurchaseDetail, handler, deps);\n\nexport const useOnSubscriberLatestReceived = (\n\thandler: (ev: CustomEvent<SubscriberLatestDetail>) => void,\n\tdeps?: DependencyList,\n) => useOnEvent(isSubscriberLatestDetail, handler, deps);\n\nexport const useOnSubscriberReceived = (\n\thandler: (ev: CustomEvent<SubscriberDetail>) => void,\n\tdeps?: DependencyList,\n) => useOnEvent(isSubscriberDetail, handler, deps);\n\nexport const useOnCheerReceived = (\n\thandler: (ev: CustomEvent<CheerDetail>) => void,\n\tdeps?: DependencyList,\n) => useOnEvent(isCheerDetail, handler, deps);\n\nexport const useOnRaidReceived = (\n\thandler: (ev: CustomEvent<RaidDetail>) => void,\n\tdeps?: DependencyList,\n) => useOnEvent(isRaidDetail, handler, deps);\n\nexport const useOnDonationReceived = (\n\thandler: (ev: CustomEvent<DonationDetail>) => void,\n\tdeps?: DependencyList,\n) => useOnEvent(isDonationDetail, handler, deps);\n\nexport const useOnDeleteMessage = (\n\thandler: (ev: CustomEvent<DeleteMessageDetail>) => void,\n\tdeps?: DependencyList,\n) => useOnEvent(isDeleteMessageDetail, handler, deps);\n\nexport const useOnDeleteMessages = (\n\thandler: (ev: CustomEvent<DeleteMessagesDetail>) => void,\n\tdeps?: DependencyList,\n) => useOnEvent(isDeleteMessagesDetail, handler, deps);\n","import type { DependencyList } from \"react\";\nimport type { WindowEventListener } from \"@/react/types/window-events.js\";\nimport type { OnWidgetLoadEventDetails } from \"@/root/types/on-widget-load\";\nimport { useEventListener } from \"./use-event-listener.js\";\n\nexport function useOnWidgetLoad<FieldData = unknown>(\n\thandler: (ev: CustomEvent<OnWidgetLoadEventDetails<FieldData>>) => void,\n\tdeps: DependencyList = [],\n): void {\n\tuseEventListener(\n\t\t\"onWidgetLoad\",\n\t\thandler as WindowEventListener<\"onWidgetLoad\">,\n\t\tdeps,\n\t);\n}\n"],"mappings":";;;AAMA,SAAgB,EACf,GACA,GACA,IAAuB,EAAE,EAClB;CACP,IAAM,IAAc,EAA+B,EAAQ;AAG3D,CAFA,EAAY,UAAU,GAEtB,QAAgB;EACf,IAAM,KAAM,MAA0B,EAAY,QAAQ,KAAK,QAAQ,EAAG;AAE1E,SADA,OAAO,iBAAiB,GAAW,EAAG,QACzB,OAAO,oBAAoB,GAAW,EAAG;IACpD,CAAC,GAAW,GAAG,EAAK,CAAC;;;;ACHzB,IAAa,KAAY,MACxB,OAAO,KAAM,cAAY,KAAc,cAAc;AAEtD,SAAgB,EACf,GACC;AACD,SAAQ,MAAuB,EAAS,EAAE,IAAI,EAAU,EAAE;;AAG3D,IAAa,IAAuB,GAClC,MAAM,EAAE,aAAa,UACtB,EACY,IAAmB,GAC9B,MAAM,EAAE,aAAa,kBACtB,EACY,IAA2B,GACtC,MAAM,EAAE,aAAa,oBACtB,EACY,IAAgB,GAC3B,MAAM,EAAE,aAAa,eACtB,EACY,IAAe,GAC1B,MAAM,EAAE,aAAa,cACtB,EACY,IAAmB,GAC9B,MAAM,EAAE,aAAa,WACtB,EACY,IAAwB,GACnC,MAAM,EAAE,aAAa,iBACtB,EACY,IAAyB,GACpC,MAAM,EAAE,aAAa,kBACtB,EACY,IACZ,GACE,MAAM,EAAE,aAAa,WAAW,EAAE,OAAO,SAAS,wBACnD,EACW,IAAqB,GAChC,MAAM,EAAE,aAAa,WAAW,EAAE,OAAO,SAAS,aACnD,EACY,IAAuB,GAClC,MAAM,EAAE,aAAa,gBAAgB,EAAE,OAAO,aAAa,gBAC5D;;;AC1BD,SAAS,EACR,GACA,GACA,IAAuB,EAAE,EACxB;AACD,GACC,oBACC,MAAO;AACP,EAAI,EAAM,EAAG,OAAO,IAAE,EAAQ,EAAqB;IAEpD,EACA;;AAGF,SAAgB,EACf,GACA,IAAuB,EAAE,EAClB;AACP,GAAiB,mBAAmB,GAAS,EAAK;;AAGnD,IAAa,KACZ,GACA,MACI,EAAW,GAAsB,GAAS,EAAK,EAEvC,IAAuB,GAEvB,KACZ,GACA,MACI,EAAW,GAAsB,GAAS,EAAK,EAEvC,KACZ,GACA,MACI,EAAW,GAAkB,GAAS,EAAK,EAEnC,KACZ,GACA,MACI,EAAW,GAA+B,GAAS,EAAK,EAEhD,KACZ,GACA,MACI,EAAW,GAA0B,GAAS,EAAK,EAE3C,KACZ,GACA,MACI,EAAW,GAAoB,GAAS,EAAK,EAErC,KACZ,GACA,MACI,EAAW,GAAe,GAAS,EAAK,EAEhC,KACZ,GACA,MACI,EAAW,GAAc,GAAS,EAAK,EAE/B,KACZ,GACA,MACI,EAAW,GAAkB,GAAS,EAAK,EAEnC,KACZ,GACA,MACI,EAAW,GAAuB,GAAS,EAAK,EAExC,KACZ,GACA,MACI,EAAW,GAAwB,GAAS,EAAK;;;ACtGtD,SAAgB,EACf,GACA,IAAuB,EAAE,EAClB;AACP,GACC,gBACA,GACA,EACA"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/react/hooks/use-event-listener.ts","../../src/root/guards/on-event-received.ts","../../src/react/hooks/factory.ts","../../src/react/hooks/use-on-event-received.ts","../../src/react/hooks/use-on-widget-load.ts"],"sourcesContent":["import { type DependencyList, useEffect, useRef } from \"react\";\nimport type {\n\tWindowEventKey,\n\tWindowEventListener,\n} from \"../types/window-events.js\";\n\nexport function useEventListener<K extends WindowEventKey>(\n\teventName: K,\n\thandler: WindowEventListener<K>,\n\tdeps: DependencyList = [],\n): void {\n\tconst callbackRef = useRef<WindowEventListener<K>>(handler);\n\tcallbackRef.current = handler;\n\n\tuseEffect(() => {\n\t\tconst fn = (ev: WindowEventMap[K]) => callbackRef.current.call(window, ev);\n\t\twindow.addEventListener(eventName, fn);\n\t\treturn () => window.removeEventListener(eventName, fn);\n\t}, [eventName, ...deps]);\n}\n","import type {\n\tCheerDetail,\n\tCommunityGiftPurchaseDetail,\n\tDeleteMessageDetail,\n\tDeleteMessagesDetail,\n\tFollowerDetail,\n\tMinimalEvent,\n\tRaidDetail,\n\tSubscriberDetail,\n\tSubscriberLatestDetail,\n\tTestButtonDetail,\n\tTwitchMessageDetail,\n} from \"@/root/types/on-event-received\";\n\nexport const isDetail = (d: unknown): d is MinimalEvent =>\n\ttypeof d === \"object\" && d !== null && \"listener\" in d;\n\nexport function createGuard<T extends MinimalEvent>(\n\tpredicate: (d: MinimalEvent) => boolean,\n) {\n\treturn (d: unknown): d is T => isDetail(d) && predicate(d);\n}\n\nexport const isTwitchMessageEvent = createGuard<TwitchMessageDetail>(\n\t(d) => d.listener === \"message\",\n);\nexport const isFollowerDetail = createGuard<FollowerDetail>(\n\t(d) => d.listener === \"follower-latest\",\n);\nexport const isSubscriberLatestDetail = createGuard<SubscriberLatestDetail>(\n\t(d) => d.listener === \"subscriber-latest\",\n);\nexport const isCheerDetail = createGuard<CheerDetail>(\n\t(d) => d.listener === \"cheer-latest\",\n);\nexport const isRaidDetail = createGuard<RaidDetail>(\n\t(d) => d.listener === \"raid-latest\",\n);\nexport const isDeleteMessageDetail = createGuard<DeleteMessageDetail>(\n\t(d) => d.listener === \"delete-message\",\n);\nexport const isDeleteMessagesDetail = createGuard<DeleteMessagesDetail>(\n\t(d) => d.listener === \"delete-messages\",\n);\nexport const isCommunityGiftPurchaseDetail =\n\tcreateGuard<CommunityGiftPurchaseDetail>(\n\t\t(d) => d.listener === \"event\" && d.event?.type === \"communityGiftPurchase\",\n\t);\nexport const isSubscriberDetail = createGuard<SubscriberDetail>(\n\t(d) => d.listener === \"event\" && d.event?.type === \"subscriber\",\n);\nexport const isWidgetButtonDetail = createGuard<TestButtonDetail>(\n\t(d) => d.listener === \"event:test\" && d.event?.listener === \"widget-button\",\n);\n","import type { DependencyList } from \"react\";\nimport { classifyEvent } from \"@/root/classifier\";\nimport type {\n\tClassifiedEvent,\n\tIncomingDetail,\n\tMinimalEvent,\n} from \"@/root/types/on-event-received\";\nimport { useEventListener } from \"./use-event-listener\";\n\n/**\n * Configuration options for StreamElements event hooks.\n */\nexport interface HookOptions<C extends boolean = boolean> {\n\t/**\n\t * If true, the hook will return a classified/normalized event object\n\t * instead of the raw StreamElements CustomEvent.\n\t *\n\t * Note: Only supported for alert-related hooks.\n\t */\n\tclassified?: C;\n\t/**\n\t * React dependency list to control hook re-subscription.\n\t */\n\tdeps?: DependencyList;\n}\n\nexport type HookHandler<T, C, R extends boolean> = (\n\tdata: R extends true ? C : CustomEvent<T>,\n) => void;\n\nexport function parseDepsOrOptions<C extends boolean>(\n\tdepsOrOptions?: DependencyList | HookOptions<C>,\n): HookOptions<C> {\n\tif (!depsOrOptions) return {} as HookOptions<C>;\n\tif (Array.isArray(depsOrOptions))\n\t\treturn { deps: depsOrOptions } as HookOptions<C>;\n\treturn depsOrOptions as HookOptions<C>;\n}\n\n/**\n * Base internal engine for event-guarded listeners.\n */\nexport function useOnEvent<\n\tT extends MinimalEvent,\n\tC = never,\n\tR extends boolean = boolean,\n>(\n\tguard: (d: unknown) => d is T,\n\thandler: HookHandler<T, C, R>,\n\toptions: HookOptions<R>,\n) {\n\tconst { classified, deps = [] } = options;\n\tuseEventListener(\n\t\t\"onEventReceived\",\n\t\t(ev) => {\n\t\t\tif (guard(ev.detail)) {\n\t\t\t\tif (classified) {\n\t\t\t\t\tconst data = classifyEvent(ev.detail as unknown as IncomingDetail);\n\t\t\t\t\tif (data) (handler as (d: C) => void)(data as C);\n\t\t\t\t} else {\n\t\t\t\t\t(handler as (d: CustomEvent<T>) => void)(ev as CustomEvent<T>);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tdeps,\n\t);\n}\n\n/**\n * Hook Factory to reduce boilerplate.\n * If C is not provided, classification mode is disabled for the hook.\n */\nexport function createEventHook<T extends MinimalEvent>(\n\tguard: (d: unknown) => d is T,\n): (\n\thandler: (ev: CustomEvent<T>) => void,\n\tdepsOrOptions?: DependencyList | HookOptions<false>,\n) => void;\n\nexport function createEventHook<T extends MinimalEvent, C>(\n\tguard: (d: unknown) => d is T,\n): <R extends boolean = false>(\n\thandler: HookHandler<T, C, R>,\n\tdepsOrOptions?: DependencyList | HookOptions<R>,\n) => void;\n\nexport function createEventHook(guard: (d: unknown) => d is MinimalEvent) {\n\treturn <R extends boolean>(\n\t\thandler: HookHandler<MinimalEvent, ClassifiedEvent, R>,\n\t\tdepsOrOptions?: DependencyList | HookOptions<R>,\n\t) => {\n\t\tconst options = parseDepsOrOptions(depsOrOptions);\n\t\treturn useOnEvent(guard, handler, options);\n\t};\n}\n","import type { DependencyList } from \"react\";\nimport { aggregateIncomingEvent, type AggregatorOptions } from \"@/root/aggregator\";\nimport {\n\tisCheerDetail,\n\tisCommunityGiftPurchaseDetail,\n\tisDeleteMessageDetail,\n\tisDeleteMessagesDetail,\n\tisFollowerDetail,\n\tisRaidDetail,\n\tisSubscriberDetail,\n\tisSubscriberLatestDetail,\n\tisTwitchMessageEvent,\n\tisWidgetButtonDetail,\n} from \"@/root/guards\";\nimport type {\n\tAggregatedCommunityGift,\n\tCheerDetail,\n\tClassifiedButtonClick,\n\tClassifiedCheer,\n\tClassifiedDeleteMessage,\n\tClassifiedDeleteMessages,\n\tClassifiedEvent,\n\tClassifiedFollower,\n\tClassifiedRaid,\n\tClassifiedSelfSub,\n\tClassifiedSoloSub,\n\tClassifiedSubRenewal,\n\tCommunityGiftPurchaseDetail,\n\tDeleteMessageDetail,\n\tDeleteMessagesDetail,\n\tFollowerDetail,\n\tIncomingDetail,\n\tRaidDetail,\n\tSubscriberDetail,\n\tSubscriberLatestDetail,\n\tTestButtonDetail,\n\tTwitchMessageDetail,\n} from \"@/root/types/on-event-received\";\nimport type { WindowEventListener } from \"../types/window-events\";\nimport { createEventHook } from \"./factory\";\nimport { useEventListener } from \"./use-event-listener\";\n\n/**\n * Low-level hook to subscribe to the generic 'onEventReceived' from StreamElements.\n *\n * @param handler Generic event listener for all StreamElements events.\n * @param deps React dependency list.\n */\nexport function useOnEventReceived(\n\thandler: WindowEventListener<\"onEventReceived\">,\n\tdeps: DependencyList = [],\n): void {\n\tuseEventListener(\"onEventReceived\", handler, deps);\n}\n\n/**\n * Listens for Twitch chat messages received.\n * Classification is not supported for this hook.\n */\nexport const useOnTwitchMessageReceived =\n\tcreateEventHook<TwitchMessageDetail>(isTwitchMessageEvent);\n\n/** Alias for useOnTwitchMessageReceived */\nexport const useOnMessageReceived = useOnTwitchMessageReceived;\n\n/**\n * Listens for single message deletion events in Twitch chat.\n * Calls on deleting certain user message.\n * Supports classification into ClassifiedDeleteMessage.\n */\nexport const useOnDeleteMessage = createEventHook<\n\tDeleteMessageDetail,\n\tClassifiedDeleteMessage\n>(isDeleteMessageDetail);\n\n/**\n * Listens for multiple message deletion (clear chat/timeout) events in Twitch chat.\n * Calls on user ban or timeout.\n * Supports classification into ClassifiedDeleteMessages.\n */\nexport const useOnDeleteMessages = createEventHook<\n\tDeleteMessagesDetail,\n\tClassifiedDeleteMessages\n>(isDeleteMessagesDetail);\n\n/**\n * Listens for Widget Button clicks configured in the StreamElements Overlay Editor.\n * Supports classification into ClassifiedButtonClick.\n */\nexport const useOnWidgetButtonReceived = createEventHook<\n\tTestButtonDetail,\n\tClassifiedButtonClick\n>(isWidgetButtonDetail);\n\n/**\n * Listens for new Follower events.\n * Supports classification into ClassifiedFollower.\n */\nexport const useOnFollowerReceived = createEventHook<\n\tFollowerDetail,\n\tClassifiedFollower\n>(isFollowerDetail);\n\n/**\n * Listens for Cheer (bits) events.\n * Supports classification into ClassifiedCheer.\n */\nexport const useOnCheerReceived = createEventHook<CheerDetail, ClassifiedCheer>(\n\tisCheerDetail,\n);\n\n/**\n * Listens for Raid events.\n * Supports classification into ClassifiedRaid.\n */\nexport const useOnRaidReceived = createEventHook<RaidDetail, ClassifiedRaid>(\n\tisRaidDetail,\n);\n\n/**\n * Listens for general Subscriber events.\n * Supports classification into ClassifiedEvent union.\n */\nexport const useOnSubscriberReceived = createEventHook<\n\tSubscriberDetail,\n\tClassifiedEvent\n>(isSubscriberDetail);\n\n/**\n * Listens for personal subscription events where a user subscribes for the first time.\n */\nexport const useOnSelfSubReceived = (\n\thandler: (event: ClassifiedSelfSub) => void,\n\tdeps: DependencyList = [],\n) => {\n\tuseOnSubscriberReceived(\n\t\t(sub) => {\n\t\t\tif (sub.type === \"self-sub\") handler(sub as ClassifiedSelfSub);\n\t\t},\n\t\t{ classified: true, deps },\n\t);\n};\n\n/**\n * Listens for subscription renewal events (resubs) with month count.\n */\nexport const useOnSubRenewalReceived = (\n\thandler: (event: ClassifiedSubRenewal) => void,\n\tdeps: DependencyList = [],\n) => {\n\tuseOnSubscriberReceived(\n\t\t(sub) => {\n\t\t\tif (sub.type === \"sub-renewal\") handler(sub as ClassifiedSubRenewal);\n\t\t},\n\t\t{ classified: true, deps },\n\t);\n};\n\n/**\n * Listens for solo gift subscription events (one user gifting to another specific user).\n */\nexport const useOnSoloGiftReceived = (\n\thandler: (event: ClassifiedSoloSub) => void,\n\tdeps: DependencyList = [],\n) => {\n\tuseOnSubscriberReceived(\n\t\t(sub) => {\n\t\t\tif (sub.type === \"solo-sub-to-someone\") handler(sub as ClassifiedSoloSub);\n\t\t},\n\t\t{ classified: true, deps },\n\t);\n};\n\n/**\n * Listens for the latest Subscriber status updates.\n * Supports classification into ClassifiedEvent union.\n */\nexport const useOnSubscriberLatestReceived = createEventHook<\n\tSubscriberLatestDetail,\n\tClassifiedEvent\n>(isSubscriberLatestDetail);\n\n/**\n * Listens for Community Gift Purchase (bulk gifts) events.\n */\nexport const useOnCommunityGiftPurchaseReceived = createEventHook<\n\tCommunityGiftPurchaseDetail,\n\tClassifiedEvent\n>(isCommunityGiftPurchaseDetail);\n\n/**\n * Specialized hook for handling aggregated mass-gift subscriptions.\n *\n * Normalizes Multiple subscriber events into a single sender event with a list of recipients.\n * Essential for \"Community Gift\" alerts to avoid spamming multiple notifications.\n *\n * @param handler Receives the aggregated community gift object.\n * @param options Aggregator options (broadcasterLogin, cache, etc).\n * @param deps React dependency list.\n */\nexport const useOnAggregatedCommunityGift = (\n\thandler: (event: AggregatedCommunityGift) => void,\n\toptions?: AggregatorOptions,\n\tdeps: DependencyList = [],\n) => {\n\tuseOnEventReceived((ev) => {\n\t\taggregateIncomingEvent(\n\t\t\tev.detail as unknown as IncomingDetail,\n\t\t\toptions,\n\t\t\t(normalized) => {\n\t\t\t\tif (normalized) handler(normalized as AggregatedCommunityGift);\n\t\t\t},\n\t\t);\n\t}, deps);\n};\n\nexport type { HookOptions } from \"./factory\";\n","import type { DependencyList } from \"react\";\nimport type { WindowEventListener } from \"@/react/types/window-events.js\";\nimport type { OnWidgetLoadEventDetails } from \"@/root/types/on-widget-load\";\nimport { useEventListener } from \"./use-event-listener.js\";\n\nexport function useOnWidgetLoad<FieldData = unknown>(\n\thandler: (ev: CustomEvent<OnWidgetLoadEventDetails<FieldData>>) => void,\n\tdeps: DependencyList = [],\n): void {\n\tuseEventListener(\n\t\t\"onWidgetLoad\",\n\t\thandler as WindowEventListener<\"onWidgetLoad\">,\n\t\tdeps,\n\t);\n}\n"],"mappings":";;;AAMA,SAAgB,EACf,GACA,GACA,IAAuB,EAAE,EAClB;CACP,IAAM,IAAc,EAA+B,EAAQ;AAG3D,CAFA,EAAY,UAAU,GAEtB,QAAgB;EACf,IAAM,KAAM,MAA0B,EAAY,QAAQ,KAAK,QAAQ,EAAG;AAE1E,SADA,OAAO,iBAAiB,GAAW,EAAG,QACzB,OAAO,oBAAoB,GAAW,EAAG;IACpD,CAAC,GAAW,GAAG,EAAK,CAAC;;;;ACJzB,IAAa,KAAY,MACxB,OAAO,KAAM,cAAY,KAAc,cAAc;AAEtD,SAAgB,EACf,GACC;AACD,SAAQ,MAAuB,EAAS,EAAE,IAAI,EAAU,EAAE;;AAG3D,IAAa,IAAuB,GAClC,MAAM,EAAE,aAAa,UACtB,EACY,IAAmB,GAC9B,MAAM,EAAE,aAAa,kBACtB,EACY,IAA2B,GACtC,MAAM,EAAE,aAAa,oBACtB,EACY,IAAgB,GAC3B,MAAM,EAAE,aAAa,eACtB,EACY,IAAe,GAC1B,MAAM,EAAE,aAAa,cACtB,EACY,IAAwB,GACnC,MAAM,EAAE,aAAa,iBACtB,EACY,IAAyB,GACpC,MAAM,EAAE,aAAa,kBACtB,EACY,IACZ,GACE,MAAM,EAAE,aAAa,WAAW,EAAE,OAAO,SAAS,wBACnD,EACW,IAAqB,GAChC,MAAM,EAAE,aAAa,WAAW,EAAE,OAAO,SAAS,aACnD,EACY,IAAuB,GAClC,MAAM,EAAE,aAAa,gBAAgB,EAAE,OAAO,aAAa,gBAC5D;;;ACvBD,SAAgB,EACf,GACiB;AAIjB,QAHK,IACD,MAAM,QAAQ,EAAc,GACxB,EAAE,MAAM,GAAe,GACxB,IAHoB,EAAE;;AAS9B,SAAgB,EAKf,GACA,GACA,GACC;CACD,IAAM,EAAE,eAAY,UAAO,EAAE,KAAK;AAClC,GACC,oBACC,MAAO;AACP,MAAI,EAAM,EAAG,OAAO,CACnB,KAAI,GAAY;GACf,IAAM,IAAO,EAAc,EAAG,OAAoC;AAClE,GAAI,KAAO,EAA2B,EAAU;QAE/C,GAAwC,EAAqB;IAIjE,EACA;;AAqBF,SAAgB,EAAgB,GAA0C;AACzE,SACC,GACA,MAGO,EAAW,GAAO,GADT,EAAmB,EAAc,CACP;;;;AC5C5C,SAAgB,EACf,GACA,IAAuB,EAAE,EAClB;AACP,GAAiB,mBAAmB,GAAS,EAAK;;AAOnD,IAAa,IACZ,EAAqC,EAAqB,EAG9C,IAAuB,GAOvB,IAAqB,EAGhC,EAAsB,EAOX,IAAsB,EAGjC,EAAuB,EAMZ,IAA4B,EAGvC,EAAqB,EAMV,IAAwB,EAGnC,EAAiB,EAMN,IAAqB,EACjC,EACA,EAMY,IAAoB,EAChC,EACA,EAMY,IAA0B,EAGrC,EAAmB,EAKR,KACZ,GACA,IAAuB,EAAE,KACrB;AACJ,IACE,MAAQ;AACR,EAAI,EAAI,SAAS,cAAY,EAAQ,EAAyB;IAE/D;EAAE,YAAY;EAAM;EAAM,CAC1B;GAMW,KACZ,GACA,IAAuB,EAAE,KACrB;AACJ,IACE,MAAQ;AACR,EAAI,EAAI,SAAS,iBAAe,EAAQ,EAA4B;IAErE;EAAE,YAAY;EAAM;EAAM,CAC1B;GAMW,KACZ,GACA,IAAuB,EAAE,KACrB;AACJ,IACE,MAAQ;AACR,EAAI,EAAI,SAAS,yBAAuB,EAAQ,EAAyB;IAE1E;EAAE,YAAY;EAAM;EAAM,CAC1B;GAOW,IAAgC,EAG3C,EAAyB,EAKd,IAAqC,EAGhD,EAA8B,EAYnB,KACZ,GACA,GACA,IAAuB,EAAE,KACrB;AACJ,IAAoB,MAAO;AAC1B,IACC,EAAG,QACH,IACC,MAAe;AACf,GAAI,KAAY,EAAQ,EAAsC;IAE/D;IACC,EAAK;;;;AChNT,SAAgB,EACf,GACA,IAAuB,EAAE,EAClB;AACP,GACC,gBACA,GACA,EACA"}
|
|
@@ -2,11 +2,13 @@
|
|
|
2
2
|
* Event normalizer — aggregate mode: buffer events by activityGroup,
|
|
3
3
|
* merge into one normalized event per action (timeout 2.5s).
|
|
4
4
|
*/
|
|
5
|
-
import type { ClassifiedEvent, IncomingDetail
|
|
5
|
+
import type { ClassifiedEvent, IncomingDetail } from "../types/on-event-received/index.js";
|
|
6
|
+
import type { AggregatorOptions } from "./types.js";
|
|
6
7
|
/**
|
|
7
8
|
* Normalizes an incoming subscription event (StreamElements/Twitch).
|
|
8
9
|
* Buffers community-gift recipients by activityGroup, then emits one normalized event per group.
|
|
9
10
|
* For self-sub, solo-sub, sub-renewal emits immediately (with optional cache dedup).
|
|
10
11
|
*/
|
|
11
|
-
export declare function
|
|
12
|
-
|
|
12
|
+
export declare function aggregateIncomingEvent(detail: IncomingDetail, options: AggregatorOptions | undefined, onNormalized: (event: ClassifiedEvent | null) => void): void;
|
|
13
|
+
export * from "./types.js";
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/root/aggregator/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAGX,eAAe,EACf,cAAc,EACd,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,iBAAiB,EAAmB,MAAM,YAAY,CAAC;AAwHrE;;;;GAIG;AACH,wBAAgB,sBAAsB,CACrC,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,iBAAiB,GAAG,SAAS,EACtC,YAAY,EAAE,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,KAAK,IAAI,GACnD,IAAI,CA4FN;AAED,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface CacheLike {
|
|
2
|
+
_has(key: string): boolean;
|
|
3
|
+
_set(key: string, value: boolean): void;
|
|
4
|
+
}
|
|
5
|
+
export interface CacheSubsByType {
|
|
6
|
+
_has?(key: string): boolean;
|
|
7
|
+
_set?(key: string, value: boolean): void;
|
|
8
|
+
[type: string]: CacheLike | ((k: string) => boolean) | ((k: string, v: boolean) => void) | undefined;
|
|
9
|
+
}
|
|
10
|
+
export interface AggregatorOptions {
|
|
11
|
+
cacheSubs?: CacheSubsByType;
|
|
12
|
+
broadcasterLogin?: string;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/root/aggregator/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACzB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3B,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CACxC;AAED,MAAM,WAAW,eAAe;IAC/B,IAAI,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,IAAI,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IACzC,CAAC,IAAI,EAAE,MAAM,GACV,SAAS,GACT,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,GACxB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC,GACjC,SAAS,CAAC;CACb;AAED,MAAM,WAAW,iBAAiB;IACjC,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"classifier.d.ts","sourceRoot":"","sources":["../../src/root/classifier.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEzE,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,QAAQ,CAO3E;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAoB1D;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,cAAc,GAAG,eAAe,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"classifier.d.ts","sourceRoot":"","sources":["../../src/root/classifier.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEzE,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,QAAQ,CAO3E;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAoB1D;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,cAAc,GAAG,eAAe,GAAG,IAAI,CAgO5E"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CheerDetail, CommunityGiftPurchaseDetail, DeleteMessageDetail, DeleteMessagesDetail,
|
|
1
|
+
import type { CheerDetail, CommunityGiftPurchaseDetail, DeleteMessageDetail, DeleteMessagesDetail, FollowerDetail, MinimalEvent, RaidDetail, SubscriberDetail, SubscriberLatestDetail, TestButtonDetail, TwitchMessageDetail } from "../../root/types/on-event-received";
|
|
2
2
|
export declare const isDetail: (d: unknown) => d is MinimalEvent;
|
|
3
3
|
export declare function createGuard<T extends MinimalEvent>(predicate: (d: MinimalEvent) => boolean): (d: unknown) => d is T;
|
|
4
4
|
export declare const isTwitchMessageEvent: (d: unknown) => d is TwitchMessageDetail;
|
|
@@ -6,10 +6,9 @@ export declare const isFollowerDetail: (d: unknown) => d is FollowerDetail;
|
|
|
6
6
|
export declare const isSubscriberLatestDetail: (d: unknown) => d is SubscriberLatestDetail;
|
|
7
7
|
export declare const isCheerDetail: (d: unknown) => d is CheerDetail;
|
|
8
8
|
export declare const isRaidDetail: (d: unknown) => d is RaidDetail;
|
|
9
|
-
export declare const isDonationDetail: (d: unknown) => d is DonationDetail;
|
|
10
9
|
export declare const isDeleteMessageDetail: (d: unknown) => d is DeleteMessageDetail;
|
|
11
10
|
export declare const isDeleteMessagesDetail: (d: unknown) => d is DeleteMessagesDetail;
|
|
12
11
|
export declare const isCommunityGiftPurchaseDetail: (d: unknown) => d is CommunityGiftPurchaseDetail;
|
|
13
12
|
export declare const isSubscriberDetail: (d: unknown) => d is SubscriberDetail;
|
|
14
|
-
export declare const isWidgetButtonDetail: (d: unknown) => d is
|
|
13
|
+
export declare const isWidgetButtonDetail: (d: unknown) => d is TestButtonDetail;
|
|
15
14
|
//# sourceMappingURL=on-event-received.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"on-event-received.d.ts","sourceRoot":"","sources":["../../../src/root/guards/on-event-received.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,WAAW,EACX,2BAA2B,EAC3B,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,
|
|
1
|
+
{"version":3,"file":"on-event-received.d.ts","sourceRoot":"","sources":["../../../src/root/guards/on-event-received.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,WAAW,EACX,2BAA2B,EAC3B,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACnB,MAAM,gCAAgC,CAAC;AAExC,eAAO,MAAM,QAAQ,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,YACY,CAAC;AAExD,wBAAgB,WAAW,CAAC,CAAC,SAAS,YAAY,EACjD,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,IAE/B,GAAG,OAAO,KAAG,CAAC,IAAI,CAAC,CAC3B;AAED,eAAO,MAAM,oBAAoB,MAHrB,OAAO,KAAG,CAAC,uBAKtB,CAAC;AACF,eAAO,MAAM,gBAAgB,MANjB,OAAO,KAAG,CAAC,kBAQtB,CAAC;AACF,eAAO,MAAM,wBAAwB,MATzB,OAAO,KAAG,CAAC,0BAWtB,CAAC;AACF,eAAO,MAAM,aAAa,MAZd,OAAO,KAAG,CAAC,eActB,CAAC;AACF,eAAO,MAAM,YAAY,MAfb,OAAO,KAAG,CAAC,cAiBtB,CAAC;AACF,eAAO,MAAM,qBAAqB,MAlBtB,OAAO,KAAG,CAAC,uBAoBtB,CAAC;AACF,eAAO,MAAM,sBAAsB,MArBvB,OAAO,KAAG,CAAC,wBAuBtB,CAAC;AACF,eAAO,MAAM,6BAA6B,MAxB9B,OAAO,KAAG,CAAC,+BA2BrB,CAAC;AACH,eAAO,MAAM,kBAAkB,MA5BnB,OAAO,KAAG,CAAC,oBA8BtB,CAAC;AACF,eAAO,MAAM,oBAAoB,MA/BrB,OAAO,KAAG,CAAC,oBAiCtB,CAAC"}
|
package/dist/root/index.d.ts
CHANGED
package/dist/root/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/root/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/root/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,OAAO,oBAAoB,CAAC;AAE5B,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC"}
|
package/dist/root/index.iife.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});function t(e){if(e==null)return{tier:0,tierText:``};let t=typeof e==`string`?e:String(e),n=parseInt(t,10);return Number.isNaN(n)?{tier:0,tierText:t}:{tier:n>=3e3?3:n>=2e3?2:+(n>=1e3),tierText:t}}function n(e){let t=e.listener,n=e.event??{},r=n.activityGroup,i=n.activityId??n._id;return r?String(r):i?String(i):t===`subscriber-latest`&&n.bulkGifted?`sl-bulk-`+(n.sender??``)+`-`+(n.amount??``)+`-`+(n.tier??``)+`-`+(n._id??``):`sl-${n._id??n.activityId??``}`}function r(e){let n=e.listener,r=e.event??{},i=r.data??r,a=t(i.tier??r.tier);if(n===`event`){if(r.type===`communityGiftPurchase`){let e=i.username&&String(i.username).toLowerCase()===`anonymous`||i.sender===`Anonymous`;return{type:e?`community-gift-anonymous`:`community-gift`,tier:a.tier,tierText:a.tierText,totalAmount:parseInt(String(i.amount),10)||1,recipients:[],sender:e?void 0:i.sender??i.displayName??i.username,anonymousDisplayName:e?i.displayName??`Anonymous`:void 0}}if(r.type===`subscriber`){let t=i.gifted===!0,n=i.sender,o=parseInt(String(i.amount),10)||1,s=i.username??i.displayName,c=r.activityGroup;if(n===`Anonymous`&&c)return{type:`community-gift-anonymous`,_role:`recipient`,activityGroup:c,recipient:s??i.displayName,tier:a.tier,tierText:a.tierText};if(t&&n&&n!==`Anonymous`){if(!(i.communityGifted===!0||c!=null&&c!==``)){let e=String(i.message??``).indexOf(`first Gift Sub`)!==-1;return{type:`solo-sub-to-someone`,sender:n,recipient:s??i.displayName,tier:a.tier,tierText:a.tierText,firstGiftInChannel:e}}return{type:`community-gift`,_role:`recipient`,activityGroup:c??``,recipient:s??i.displayName,tier:a.tier,tierText:a.tierText}}return!t&&o>1?{type:`sub-renewal`,name:s??i.displayName,months:o,tier:a.tier,tierText:a.tierText}:!t&&o===1?{type:`self-sub`,name:s??i.displayName,tier:a.tier,tierText:a.tierText}:c?{type:`community-gift`,_role:`recipient`,activityGroup:c,recipient:s??i.displayName,tier:a.tier,tierText:a.tierText}:{type:`unknown`,detail:e}}return{type:`unknown`,detail:e}}if(n===`subscriber-latest`){let t=r.bulkGifted===!0,n=r.sender,i=r.name,o=parseInt(String(r.amount),10)||1,s=r.gifted===!0,c=r.isCommunityGift===!0||r.communityGifted===!0;if(t&&n===`Anonymous`)return{type:`community-gift-anonymous`,tier:a.tier,tierText:a.tierText,totalAmount:o,recipients:[]};if(t&&n)return{type:`community-gift`,sender:n,tier:a.tier,tierText:a.tierText,totalAmount:o,recipients:[]};if(s&&!c&&n){let e=String(r.message??``).indexOf(`first Gift Sub`)!==-1;return{type:`solo-sub-to-someone`,sender:n,recipient:i??``,tier:a.tier,tierText:a.tierText,firstGiftInChannel:e}}return!s&&o>1?{type:`sub-renewal`,name:i??``,months:o,tier:a.tier,tierText:a.tierText}:!s&&o===1&&(n==null||i===n)?{type:`self-sub`,name:i??``,tier:a.tier,tierText:a.tierText}:{type:`unknown`,detail:e}}if(n===`follower-latest`)return{type:`follow`,name:r.name??``};if(n===`cheer-latest`){let e=parseInt(String(r.amount),10)||0;return{type:`cheer`,name:r.name??``,amount:e}}if(n===`raid-latest`){let e=parseInt(String(r.amount),10)||0;return{type:`raid`,name:r.name??``,viewers:e}}if(n===`donation`){let t=e.event?.data;return{type:`donation`,amount:t?.amount_main??t?.amount??0,currency:t?.currency,username:t?.username,message:t?.message,billingSystem:t?.billing_system,id:t?.id}}return{type:`unknown`,detail:e}}var i=2500,a={},o={};function s(e,t){if(!e)return null;if(typeof e._has==`function`&&typeof e._set==`function`)return e;let n=e[t];return n&&typeof n._has==`function`?n:null}function c(e,t,n,r){let i=s(n,t.type);i?._has(e)||(i&&i._set(e,!0),r(t))}function l(e,t,n,r){let i=a[e];if(!i)return;delete a[e],o[e]&&(clearTimeout(o[e]),delete o[e]);let s=i.purchase,l=i.subscribers??[],u=i.type,d=i.tier,f=i.tierText,p=i.totalAmount??l.length,m=l.map(e=>e.recipient??e.username??e.name).filter(Boolean),h=l[0]?.sender,g=s?.sender??i.sender??h;u===`community-gift`&&r&&g===r||(u===`community-gift-anonymous`?c(e,{type:`community-gift-anonymous`,tier:d,tierText:f,totalAmount:p,recipients:m,anonymousDisplayName:s?.anonymousDisplayName},t,n):c(e,{type:`community-gift`,sender:g,tier:d,tierText:f,totalAmount:p,recipients:m},t,n))}function u(e,t,c){let u=t?.cacheSubs,d=t?.broadcasterLogin??``,f=r(e);if(!f){c(null);return}let p=s(u,f.type),m=n(e),h=e.event??{},g=h.data??h;if(f._role===`recipient`){let e=f,t=e.activityGroup??m;a[t]||(a[t]={type:e.type,subscribers:[],tier:e.tier,tierText:e.tierText,totalAmount:0}),o[t]&&clearTimeout(o[t]),o[t]=setTimeout(()=>{l(t,u,c,d)},i),a[t].subscribers.push({recipient:e.recipient,username:g.username,name:g.displayName,sender:g.sender}),a[t].totalAmount===0&&(a[t].totalAmount=1);return}if(f.type===`community-gift-anonymous`||f.type===`community-gift`){if(e.listener===`event`&&h.type===`communityGiftPurchase`){let e=h.activityGroup??g?.activityGroup??m,t=f;a[e]?(a[e].purchase=t,a[e].tier=t.tier,a[e].tierText=t.tierText,a[e].totalAmount=t.totalAmount??a[e].totalAmount,a[e].sender=t.sender,o[e]&&clearTimeout(o[e]),o[e]=setTimeout(()=>{l(e,u,c,d)},i)):(a[e]={type:t.type,purchase:t,subscribers:[],tier:t.tier,tierText:t.tierText,totalAmount:Number(t.totalAmount)||0,sender:t.sender},o[e]=setTimeout(()=>{l(e,u,c,d)},i));return}if(e.listener===`subscriber-latest`){let e=f;if(f.type===`community-gift`&&d&&e.sender===d){c(null);return}return}return}if(f.type===`self-sub`||f.type===`solo-sub-to-someone`||f.type===`sub-renewal`){if(p?._has(m)){c(null);return}p&&p._set(m,!0);let e=f;if(f.type===`solo-sub-to-someone`&&d&&e.sender===d){c(null);return}c(f)}}var d={session:{data:{"follower-latest":{name:`imacanadiannn`},"follower-session":{count:0},"follower-week":{count:0},"follower-month":{count:0},"follower-goal":{amount:137},"follower-total":{count:118,activityId:``,sessionTop:!1},"subscriber-latest":{name:``,amount:0,tier:``,message:``},"subscriber-new-latest":{name:``,amount:0,message:``},"subscriber-resub-latest":{name:``,amount:0,message:``},"subscriber-gifted-latest":{name:``,amount:0,message:``,tier:``,sender:``},"subscriber-session":{count:0},"subscriber-new-session":{count:0},"subscriber-resub-session":{count:0},"subscriber-gifted-session":{count:0},"subscriber-week":{count:0},"subscriber-month":{count:0},"subscriber-goal":{amount:0},"subscriber-total":{count:0,activityId:``,sessionTop:!1},"subscriber-points":{amount:0,activityId:``,sessionTop:!1},"subscriber-alltime-gifter":{name:``,amount:0},"host-latest":{name:``,amount:0},"raid-latest":{name:`agnascor2`,amount:6},"cheer-session":{amount:0},"cheer-week":{amount:0},"cheer-month":{amount:0},"cheer-total":{amount:0},"cheer-count":{count:0},"cheer-goal":{amount:0},"cheer-latest":{name:``,amount:0},"cheer-session-top-donation":{amount:0,name:``},"cheer-weekly-top-donation":{amount:0,name:``},"cheer-monthly-top-donation":{amount:0,name:``},"cheer-alltime-top-donation":{amount:0,name:``},"cheer-session-top-donator":{amount:0,name:``},"cheer-weekly-top-donator":{amount:0,name:``},"cheer-monthly-top-donator":{amount:0,name:``},"cheer-alltime-top-donator":{amount:0,name:``},"tip-latest":{name:``,amount:0},"tip-session-top-donation":{amount:0,name:``},"tip-weekly-top-donation":{name:``,amount:0},"tip-monthly-top-donation":{name:``,amount:0},"tip-alltime-top-donation":{name:``,amount:0},"tip-session-top-donator":{amount:0,name:``},"tip-weekly-top-donator":{name:``,amount:0},"tip-monthly-top-donator":{name:``,amount:0},"tip-alltime-top-donator":{name:``,amount:0},"tip-session":{amount:0},"tip-week":{amount:0},"tip-month":{amount:0},"tip-total":{amount:0},"tip-count":{count:0},"tip-goal":{amount:0},"merch-goal-orders":{amount:0},"merch-goal-items":{amount:0},"merch-goal-total":{amount:0},"merch-latest":{name:``,amount:0,items:[]},"charityCampaignDonation-latest":{name:``,amount:0},"charityCampaignDonation-weekly-top-donation":{name:``,amount:0},"charityCampaignDonation-monthly-top-donation":{name:``,amount:0},"charityCampaignDonation-alltime-top-donation":{name:``,amount:0},"charityCampaignDonation-weekly-top-donator":{name:``,amount:0},"charityCampaignDonation-monthly-top-donator":{name:``,amount:0},"charityCampaignDonation-alltime-top-donator":{name:``,amount:0},"cheerPurchase-latest":{name:``,amount:0},"cheerPurchase-weekly-top-donation":{name:``,amount:0},"cheerPurchase-monthly-top-donation":{name:``,amount:0},"cheerPurchase-alltime-top-donation":{name:``,amount:0},"cheerPurchase-weekly-top-donator":{name:``,amount:0},"cheerPurchase-monthly-top-donator":{name:``,amount:0},"cheerPurchase-alltime-top-donator":{name:``,amount:0},"superchat-latest":{name:``,amount:0},"superchat-weekly-top-donation":{name:``,amount:0},"superchat-monthly-top-donation":{name:``,amount:0},"superchat-alltime-top-donation":{name:``,amount:0},"superchat-weekly-top-donator":{name:``,amount:0},"superchat-monthly-top-donator":{name:``,amount:0},"superchat-alltime-top-donator":{name:``,amount:0},"superchat-session":{amount:0},"superchat-week":{amount:0},"superchat-month":{amount:0},"superchat-total":{amount:0},"superchat-count":{count:0},"superchat-goal":{amount:0},"purchase-latest":{name:``,amount:0,avatar:``,message:``,items:[]},"follower-recent":[{name:`imacanadiannn`,createdAt:`2026-01-13T01:53:50.296Z`,type:`follower`},{name:`piwo143`,createdAt:`2026-01-13T01:51:39.472Z`,type:`follower`},{name:`latvan_`,createdAt:`2026-01-12T23:54:29.235Z`,type:`follower`},{name:`wheinwait`,createdAt:`2026-01-12T23:11:28.946Z`,type:`follower`},{name:`agnascor2`,createdAt:`2026-01-12T23:11:14.880Z`,type:`follower`},{name:`sunlitetuts`,createdAt:`2026-01-12T21:03:59.207Z`,type:`follower`},{name:`ayanamya`,createdAt:`2026-01-12T20:00:55.509Z`,type:`follower`},{name:`hopeless28`,createdAt:`2026-01-12T18:35:21.731Z`,type:`follower`},{name:`kakoytoclown`,createdAt:`2026-01-11T18:39:36.843Z`,type:`follower`},{name:`dababe__jq1`,createdAt:`2024-10-10T23:27:49.699Z`,type:`follower`},{name:`jjjllkmf`,createdAt:`2024-05-05T09:44:16.287Z`,type:`follower`},{name:`d4c_valintine`,createdAt:`2024-05-03T15:13:28.365Z`,type:`follower`},{name:`angelbliss_`,createdAt:`2024-04-30T20:07:23.132Z`,type:`follower`},{name:`o1zich`,createdAt:`2024-04-22T16:23:26.139Z`,type:`follower`},{name:`nearbuziky`,createdAt:`2024-04-19T19:21:27.569Z`,type:`follower`},{name:`samirkasamsa`,createdAt:`2024-04-19T17:06:38.963Z`,type:`follower`},{name:`flip1mip`,createdAt:`2024-04-19T17:06:18.276Z`,type:`follower`},{name:`valerie_solo`,createdAt:`2024-04-19T17:06:07.473Z`,type:`follower`},{name:`sxaelence`,createdAt:`2024-04-19T07:06:46.330Z`,type:`follower`},{name:`avokadik99`,createdAt:`2024-04-17T16:11:29.604Z`,type:`follower`},{name:`blackvoronstream`,createdAt:`2024-04-16T21:29:33.306Z`,type:`follower`},{name:`baldejniyy`,createdAt:`2024-04-16T21:29:09.647Z`,type:`follower`},{name:`p3ch4n_ka`,createdAt:`2024-04-16T16:37:31.841Z`,type:`follower`},{name:`kakosik_bee`,createdAt:`2024-04-16T15:56:27.435Z`,type:`follower`},{name:`hikotoru`,createdAt:`2024-04-16T15:13:25.226Z`,type:`follower`}],"subscriber-recent":[],"host-recent":[],"raid-recent":[{name:`agnascor2`,amount:6,createdAt:`2026-01-12T23:08:21.815Z`,type:`raid`},{name:`justduckomgg`,amount:7,createdAt:`2024-04-19T17:05:53.185Z`,type:`raid`},{name:`veessmk`,amount:6,createdAt:`2024-04-17T15:40:43.945Z`,type:`raid`},{name:`night_sculptor`,amount:12,createdAt:`2024-04-16T18:07:40.040Z`,type:`raid`},{name:`pixiemays`,amount:6,createdAt:`2024-04-16T16:37:24.433Z`,type:`raid`},{name:`night_sculptor`,amount:8,createdAt:`2024-04-14T18:31:20.049Z`,type:`raid`},{name:`pixiemays`,amount:19,createdAt:`2024-04-14T13:22:05.794Z`,type:`raid`},{name:`pixiemays`,amount:15,createdAt:`2024-04-12T17:03:36.115Z`,type:`raid`},{name:`alechkavt`,amount:9,createdAt:`2024-04-11T17:54:47.691Z`,type:`raid`},{name:`pixiemays`,amount:8,createdAt:`2024-04-11T14:10:49.548Z`,type:`raid`},{name:`night_sculptor`,amount:22,createdAt:`2024-04-09T16:13:41.195Z`,type:`raid`},{name:`pixiemays`,amount:5,createdAt:`2024-04-08T09:54:01.603Z`,type:`raid`},{name:`aki_neki`,amount:5,createdAt:`2024-04-07T21:52:45.919Z`,type:`raid`},{name:`alechkavt`,amount:11,createdAt:`2024-04-07T18:59:39.286Z`,type:`raid`},{name:`veessmk`,amount:15,createdAt:`2024-04-07T16:13:25.172Z`,type:`raid`},{name:`veessmk`,amount:10,createdAt:`2024-03-17T16:11:38.631Z`,type:`raid`}],"charityCampaignDonation-recent":[],"cheer-recent":[],"cheerPurchase-recent":[],"superchat-recent":[],"tip-recent":[],"merch-recent":[],"channel-points-latest":{amount:0,message:``,name:``,redemption:``},"community-gift-latest":{amount:0,name:``,tier:``},"charityCampaignDonation-session-top-donation":{amount:0,name:``},"charityCampaignDonation-session-top-donator":{amount:0,name:``},"cheerPurchase-session-top-donation":{amount:0,name:``},"cheerPurchase-session-top-donator":{amount:0,name:``},"hypetrain-latest":{active:0,amount:0,level:0,levelChanged:0,name:``,type:``},"hypetrain-latest-top-contributors":[],"hypetrain-level-goal":{amount:0},"hypetrain-level-progress":{amount:0,percent:0},"hypetrain-total":{amount:0},"superchat-session-top-donation":{amount:0,name:``},"superchat-session-top-donator":{amount:0,name:``}},settings:{autoReset:!0,calendar:!1,resetOnStart:!1}},recents:[{name:`imacanadiannn`,createdAt:`2026-01-13T01:53:50.296Z`,type:`follower`},{name:`piwo143`,createdAt:`2026-01-13T01:51:39.472Z`,type:`follower`},{name:`latvan_`,createdAt:`2026-01-12T23:54:29.235Z`,type:`follower`},{name:`wheinwait`,createdAt:`2026-01-12T23:11:28.946Z`,type:`follower`},{name:`agnascor2`,createdAt:`2026-01-12T23:11:14.880Z`,type:`follower`},{name:`sunlitetuts`,createdAt:`2026-01-12T21:03:59.207Z`,type:`follower`},{name:`ayanamya`,createdAt:`2026-01-12T20:00:55.509Z`,type:`follower`},{name:`hopeless28`,createdAt:`2026-01-12T18:35:21.731Z`,type:`follower`},{name:`kakoytoclown`,createdAt:`2026-01-11T18:39:36.843Z`,type:`follower`},{name:`dababe__jq1`,createdAt:`2024-10-10T23:27:49.699Z`,type:`follower`},{name:`jjjllkmf`,createdAt:`2024-05-05T09:44:16.287Z`,type:`follower`},{name:`d4c_valintine`,createdAt:`2024-05-03T15:13:28.365Z`,type:`follower`},{name:`angelbliss_`,createdAt:`2024-04-30T20:07:23.132Z`,type:`follower`},{name:`o1zich`,createdAt:`2024-04-22T16:23:26.139Z`,type:`follower`},{name:`nearbuziky`,createdAt:`2024-04-19T19:21:27.569Z`,type:`follower`},{name:`samirkasamsa`,createdAt:`2024-04-19T17:06:38.963Z`,type:`follower`},{name:`flip1mip`,createdAt:`2024-04-19T17:06:18.276Z`,type:`follower`},{name:`valerie_solo`,createdAt:`2024-04-19T17:06:07.473Z`,type:`follower`},{name:`sxaelence`,createdAt:`2024-04-19T07:06:46.330Z`,type:`follower`},{name:`avokadik99`,createdAt:`2024-04-17T16:11:29.604Z`,type:`follower`},{name:`blackvoronstream`,createdAt:`2024-04-16T21:29:33.306Z`,type:`follower`},{name:`baldejniyy`,createdAt:`2024-04-16T21:29:09.647Z`,type:`follower`},{name:`p3ch4n_ka`,createdAt:`2024-04-16T16:37:31.841Z`,type:`follower`},{name:`kakosik_bee`,createdAt:`2024-04-16T15:56:27.435Z`,type:`follower`},{name:`hikotoru`,createdAt:`2024-04-16T15:13:25.226Z`,type:`follower`},{name:`agnascor2`,amount:6,createdAt:`2026-01-12T23:08:21.815Z`,type:`raid`},{name:`justduckomgg`,amount:7,createdAt:`2024-04-19T17:05:53.185Z`,type:`raid`},{name:`veessmk`,amount:6,createdAt:`2024-04-17T15:40:43.945Z`,type:`raid`},{name:`night_sculptor`,amount:12,createdAt:`2024-04-16T18:07:40.040Z`,type:`raid`},{name:`pixiemays`,amount:6,createdAt:`2024-04-16T16:37:24.433Z`,type:`raid`},{name:`night_sculptor`,amount:8,createdAt:`2024-04-14T18:31:20.049Z`,type:`raid`},{name:`pixiemays`,amount:19,createdAt:`2024-04-14T13:22:05.794Z`,type:`raid`},{name:`pixiemays`,amount:15,createdAt:`2024-04-12T17:03:36.115Z`,type:`raid`},{name:`alechkavt`,amount:9,createdAt:`2024-04-11T17:54:47.691Z`,type:`raid`},{name:`pixiemays`,amount:8,createdAt:`2024-04-11T14:10:49.548Z`,type:`raid`},{name:`night_sculptor`,amount:22,createdAt:`2024-04-09T16:13:41.195Z`,type:`raid`},{name:`pixiemays`,amount:5,createdAt:`2024-04-08T09:54:01.603Z`,type:`raid`},{name:`aki_neki`,amount:5,createdAt:`2024-04-07T21:52:45.919Z`,type:`raid`},{name:`alechkavt`,amount:11,createdAt:`2024-04-07T18:59:39.286Z`,type:`raid`},{name:`veessmk`,amount:15,createdAt:`2024-04-07T16:13:25.172Z`,type:`raid`},{name:`veessmk`,amount:10,createdAt:`2024-03-17T16:11:38.631Z`,type:`raid`}],currency:{code:`USD`,name:`U.S. Dollar`,symbol:`$`},channel:{username:`encry_s`,apiToken:`HAHANOTNOW`,id:`65ba7503dc0415cb368947b1`,providerId:`485678132`,avatar:`https://static-cdn.jtvnw.net/jtv_user_pictures/6fe93724-803a-4e5a-b58a-1d42fbc84661-profile_image-300x300.jpeg`},fieldData:{testMessageButton:`zaytri_dynamicchatbubbles`,previewMode:!1,previewType:`random`,previewMessage:``,theme:`animal-crossing`,corner:`round`,darkMode:!1,highlightStyle:`normal`,actionStyle:`italics`,maxWidth:400,maxHeight:300,fixedWidth:!1,positionMode:`list`,listDirection:`bottom`,listAlignment:`center`,topEdge:!0,bottomEdge:!0,leftEdge:!0,rightEdge:!0,edgeDeviation:0,padding:30,animation:`dynamic`,dynamicModifier:1.75,maxMessages:25,hideOutOfBounds:!0,lifetime:0,delay:1,googleFont:`Nunito`,customFont:``,fontSize:18,fontWeight:`bold`,textDirection:`ltr`,useCustomBorderColors:!0,borderColor:`#fed400`,nameColor:`#000000`,useCustomMessageColors:!0,backgroundColor:`#fff3c0`,textColor:`#000000`,pronounsMode:`suffix`,pronounsLowercase:!0,pronounsBadgeCustomColors:!1,pronounsBadgeBackgroundColor:`#000000`,pronounsBadgeBorderColor:`#FFFFFF`,pronounsBadgeTextColor:`#FFFFFF`,showBadges:!0,largeEmotes:!0,ffzGlobal:!1,bttvGlobal:!1,emoteOnly:!1,highlightOnly:!1,allowedStrings:[],minMessages:0,messageCooldown:0,raidCooldown:0,raidMin:0,includeEveryone:!0,includeFollowers:`true`,minFollowTime:1,includeSubs:!0,includeVIPs:!0,includeMods:!0,allowUserList:[],ignoreUserList:[`StreamElements`,`Streamlabs`,`Nightbot`,`Sery_Bot`],ignorePrefixList:[`!`],volume:50,soundGroup1:[],userLevelSoundGroup1:`everyone`,specificUsersSoundGroup1:[],messageTypeSoundGroup1:`all`,soundGroup2:[],userLevelSoundGroup2:`everyone`,specificUsersSoundGroup2:[],messageTypeSoundGroup2:`all`,soundGroup3:[],userLevelSoundGroup3:`everyone`,specificUsersSoundGroup3:[],messageTypeSoundGroup3:`all`,soundGroup4:[],userLevelSoundGroup4:`everyone`,specificUsersSoundGroup4:[],messageTypeSoundGroup4:`all`,soundGroup5:[],userLevelSoundGroup5:`everyone`,specificUsersSoundGroup5:[],messageTypeSoundGroup5:`all`,soundGroup6:[],userLevelSoundGroup6:`everyone`,specificUsersSoundGroup6:[],messageTypeSoundGroup6:`all`,soundGroup7:[],userLevelSoundGroup7:`everyone`,specificUsersSoundGroup7:[],messageTypeSoundGroup7:`all`,soundGroup8:[],userLevelSoundGroup8:`everyone`,specificUsersSoundGroup8:[],messageTypeSoundGroup8:`all`,soundGroup9:[],userLevelSoundGroup9:`everyone`,specificUsersSoundGroup9:[],messageTypeSoundGroup9:`all`,soundGroup10:[],userLevelSoundGroup10:`everyone`,specificUsersSoundGroup10:[],messageTypeSoundGroup10:`all`,widgetName:`Chat Bubbles`,widgetAuthor:`Zaytri`,widgetVersion:`2.12.0`,widgetUpdateUrl:`https://github.com/zaytri/stream-elements-widgets/blob/main/DynamicChatBubbles`,ignoreFirst:!0},overlay:{isEditorMode:!0,muted:!1}},f={follower:{listener:`follower-latest`,event:{name:`An1by`}},communityGiftAnonymous:{listener:`event`,event:{type:`communityGiftPurchase`,provider:`twitch`,channel:`663b10ba6cd449c4162a2230`,activityGroup:`41a50a915794e4ae7cf5e600fd3445d4`,data:{amount:2,username:`anonymous`,displayName:`AnAnonymousGifter`,tier:`2000`,sender:`Anonymous`},_id:`699868d7df734989ec85d393`,activityId:`699868d7df734989ec85d393`}},communityGift:{listener:`event`,event:{type:`communityGiftPurchase`,provider:`twitch`,channel:`663b10ba6cd449c4162a2230`,activityGroup:`841592c0bccbf3e1e7de71e1c8f4d9f0`,data:{amount:1,username:`rishamon`,displayName:`rishamon`,tier:`1000`,sender:`rishamon`},_id:`699867c7fef23197a6a089f5`,activityId:`699867c7fef23197a6a089f5`}},sub:{listener:`subscriber-latest`,event:{name:`An1by`,amount:1}},selfSub:{listener:`event`,event:{type:`subscriber`,provider:`twitch`,channel:`663b10ba6cd449c4162a2230`,data:{amount:1,username:`rishamon`,displayName:`rishamon`,tier:`1000`},_id:`6998676317aed69e62b8f283`,activityId:`6998676317aed69e62b8f283`}},soloSubToSomeone:{listener:`event`,event:{type:`subscriber`,provider:`twitch`,channel:`663b10ba6cd449c4162a2230`,data:{amount:1,username:`encry_s`,displayName:`encry_s`,message:`rishamon gifted a Tier 1 sub to encry_s! This is their first Gift Sub in the channel!`,tier:`1000`,sender:`rishamon`,gifted:!0},_id:`699866e82d9cd9a70854baf2`,activityId:`699866e82d9cd9a70854baf2`}},subRenewal:{listener:`event`,event:{type:`subscriber`,provider:`twitch`,channel:`663b10ba6cd449c4162a2230`,data:{amount:8,username:`silgestian`,displayName:`SilgeStian`,tier:`1000`},_id:`69986dfaf25724ff4162bd1a`,activityId:`69986dfaf25724ff4162bd1a`}},bits:{listener:`cheer-latest`,event:{name:`An1by`,amount:30}},raid:{listener:`raid-latest`,event:{name:`An1by`,amount:50}},donationShortText:{listener:`donation`,event:{data:{alert_type:`1`,currency:`RUB`,billing_system:`CARD`,id:5,amount_main:500,amount:500,username:`An1by`,message:`Simple message text`}}},donationLongText:{listener:`donation`,event:{data:{alert_type:`1`,currency:`RUB`,billing_system:`CARD`,id:5,amount_main:500,amount:500,username:`An1by`,message:`A plain gray stone lay on the shore, basking in the sun's warmth. A shove broke its peace—a thoughtless toss sent it flying. The stone splashed into water. Ripples spread, yet none noticed. It sank to the bottom, heavy with loneliness. "Didn't I deserve to stay where I was happy still?" it wondered.`}}},donation:{listener:`donation`,event:{data:{alert_type:`1`,currency:`RUB`,billing_system:`CARD`,id:5,amount_main:500,amount:500,username:`An1by`,message:``}}}},p={zeroWidthEmotesInRow:{listener:`message`,event:{service:`twitch`,data:{time:1768317417111,tags:{"badge-info":`subscriber/23`,badges:`broadcaster/1,subscriber/0`,"client-nonce":`f70c4cd8b6034d1f805298246ee1bc35`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`5f752ae3-4be9-4f93-82d1-d78575ba07fd`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1768317416862`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`}],channel:`an1by`,text:`Censored Censored Censored emotes in row`,isAction:!1,emotes:[{type:`7tv`,name:`Censored`,id:`01GC2KBETR0009QMKQRDSHDTVB`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp`,2:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp`,3:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/3x.webp`,4:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp`},start:0,end:8},{type:`7tv`,name:`Censored`,id:`01GC2KBETR0009QMKQRDSHDTVB`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp`,2:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp`,3:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/3x.webp`,4:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp`},start:9,end:17},{type:`7tv`,name:`Censored`,id:`01GC2KBETR0009QMKQRDSHDTVB`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp`,2:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp`,3:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/3x.webp`,4:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp`},start:18,end:26}],msgId:`5f752ae3-4be9-4f93-82d1-d78575ba07fd`},renderedText:`<img src="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp" srcset="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp 1x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp 2x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp 4x" title="Censored" class="emote"><img src="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp" srcset="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp 1x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp 2x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp 4x" title="Censored" class="emote"><img src="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp" srcset="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp 1x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp 2x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp 4x" title="Censored" class="emote">emotes in row`}},zeroWidthEmoteInMiddle:{listener:`message`,event:{service:`twitch`,data:{time:1768317383248,tags:{"badge-info":`subscriber/23`,badges:`broadcaster/1,subscriber/0`,"client-nonce":`847f9c27722340d090eddcb0d0662b5b`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`3dea1e1e-89f7-4a5f-b743-13ba0386492f`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1768317382987`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`}],channel:`an1by`,text:`text and Censored emote`,isAction:!1,emotes:[{type:`7tv`,name:`Censored`,id:`01GC2KBETR0009QMKQRDSHDTVB`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp`,2:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp`,3:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/3x.webp`,4:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp`},start:9,end:17}],msgId:`3dea1e1e-89f7-4a5f-b743-13ba0386492f`},renderedText:`text and <img src="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp" srcset="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp 1x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp 2x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp 4x" title="Censored" class="emote">emote`}},zeroWidthEmoteFirst:{listener:`message`,event:{service:`twitch`,data:{time:1768317236883,tags:{"badge-info":`subscriber/23`,badges:`broadcaster/1,subscriber/0`,"client-nonce":`e9d0621827184c1b940fd700ae599d60`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`6f347337-354a-42e5-bab0-935e19d74152`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1768317236625`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`}],channel:`an1by`,text:`Censored <- zeroWidth emote on the first place`,isAction:!1,emotes:[{type:`7tv`,name:`Censored`,id:`01GC2KBETR0009QMKQRDSHDTVB`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp`,2:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp`,3:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/3x.webp`,4:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp`},start:0,end:8}],msgId:`6f347337-354a-42e5-bab0-935e19d74152`},renderedText:`<img src="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp" srcset="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp 1x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp 2x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp 4x" title="Censored" class="emote"><- zeroWidth emote on the first place`}},veryShort:{listener:`message`,event:{service:`twitch`,data:{time:1749743750546,tags:{"badge-info":``,badges:``,"client-nonce":`a3fe71a5771d0c31466dd333c963231e`,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`3d0d1a43-45e5-4652-be59-0b31dfeba796`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749743749437`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`IHaveVeryBigNickname`,userId:`958683839`,displayName:`IHaveVeryBigNickname`,displayColor:``,badges:[],channel:`IHaveVeryBigNickname`,text:`A!`,isAction:!1,emotes:[],msgId:`3d0d1a43-45e5-4652-be59-0b31dfeba796`},renderedText:`A!`}},viewer:{listener:`message`,event:{service:`twitch`,data:{time:1749743750546,tags:{"badge-info":``,badges:``,"client-nonce":`a3fe71a5771d0c31466dd333c963231e`,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`3d0d1a43-45e5-4652-be59-0b31dfeba796`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749743749437`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`SimpleViewer`,userId:`958683839`,displayName:`SimpleViewer`,displayColor:``,badges:[],channel:`SimpleViewer`,text:`I finally finished it...`,isAction:!1,emotes:[],msgId:`3d0d1a43-45e5-4652-be59-0b31dfeba796`},renderedText:`I finally finished it...`}},vip:{listener:`message`,event:{service:`twitch`,data:{time:1749743844261,tags:{"badge-info":``,badges:`vip/1`,"client-nonce":`fd72ba163a9cc1a6486b2eddb0f5d893`,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`51cac44b-9908-49d2-b424-489276e1e521`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749743843170`,turbo:`0`,"user-id":`958683839`,"user-type":``,vip:`1`},nick:`VipPersona`,userId:`958683839`,displayName:`VipPersona`,displayColor:``,badges:[{type:`vip`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/b817aba4-fad8-49e2-b88a-7cc744dfa6ec/3`,description:`VIP`}],channel:`VipPersona`,text:`I am a VIP persona!`,isAction:!1,emotes:[],msgId:`51cac44b-9908-49d2-b424-489276e1e521`},renderedText:`I am a VIP persona!`}},vipLong:{listener:`message`,event:{service:`twitch`,data:{time:1749743844261,tags:{"badge-info":``,badges:`vip/1`,"client-nonce":`fd72ba163a9cc1a6486b2eddb0f5d893`,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`51cac44b-9908-49d2-b424-489276e1e521`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749743843170`,turbo:`0`,"user-id":`958683839`,"user-type":``,vip:`1`},nick:`VipPersona`,userId:`958683839`,displayName:`VipPersona`,displayColor:``,badges:[{type:`vip`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/b817aba4-fad8-49e2-b88a-7cc744dfa6ec/3`,description:`VIP`}],channel:`VipPersona`,text:`I am a VIP persona! Are you see this?`,isAction:!1,emotes:[],msgId:`51cac44b-9908-49d2-b424-489276e1e521`},renderedText:`I am a VIP persona! Are you see this?`}},artist:{listener:`message`,event:{service:`twitch`,data:{time:1749743916482,tags:{"badge-info":``,badges:`artist-badge/1`,"client-nonce":`54128d734d44e28ffc32e1ce236993f5`,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`8ee7e71a-3608-486a-bd82-a82b65982ca7`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749743915371`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`StarArtist`,userId:`958683839`,displayName:`StarArtist`,displayColor:``,badges:[{type:`artist-badge`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/4300a897-03dc-4e83-8c0e-c332fee7057f/3`,description:`Artist`}],channel:`StarArtist`,text:`Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.`,isAction:!1,emotes:[],msgId:`8ee7e71a-3608-486a-bd82-a82b65982ca7`},renderedText:`Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.`}},subscriber:{listener:`message`,event:{data:{tags:{badges:`subscriber/1`,color:`#ff69b4`,vip:`0`,subscriber:`1`,"user-id":`100135110`,"user-type":`subscriber`},nick:`YourSub`,userId:`100135110`,displayName:`YourSub`,displayColor:`#ff69b4`,badges:[{type:`partner`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/d12a2e27-16f6-41d0-ab77-b780518f00a3/3`,description:`Verified`}],text:`This is a subscriber's test message. I'm just a subscriber, srsly.`,emotes:[],msgId:`43285909-412c-4eee-b80d-89f1482ba53142`},renderedText:`This is a subscriber's test message. I'm just a subscriber, srsly.`}},founder:{listener:`message`,event:{service:`twitch`,data:{time:1749743750546,tags:{"badge-info":``,badges:`founder/1,subscriber/1`,"client-nonce":`a3fe71a5771d0c31466dd333c963231e`,color:``,"display-name":`sub__founder`,emotes:``,"first-msg":`0`,flags:``,id:`3d0d1a43-45e5-4652-be59-0b31dfeba796`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1749743749437`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`sub__founder`,userId:`958683839`,displayName:`sub__founder`,displayColor:``,badges:[{type:`founder`}],channel:`an1by`,text:`I finally finished it...`,isAction:!1,emotes:[],msgId:`3d0d1a43-45e5-4652-be59-0b31dfeba796`},renderedText:`I finally finished it...`}},moderator:{listener:`message`,event:{service:`twitch`,data:{time:1749743997223,tags:{"badge-info":``,badges:`moderator/1`,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`3e7ba532-f181-4bcc-90f1-a3c48ca3c820`,mod:`1`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749743996136`,turbo:`0`,"user-id":`958683839`,"user-type":`mod`},nick:`mediator`,userId:`958683839`,displayName:`mediator`,displayColor:``,badges:[{type:`moderator`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/3267646d-33f0-4b17-b3df-f923a41db1d0/3`,description:`Moderator`}],channel:`mediator`,text:`Did someone say... MODERATOR!?`,isAction:!1,emotes:[],msgId:`3e7ba532-f181-4bcc-90f1-a3c48ca3c820`},renderedText:`Did someone say... MODERATOR!?`}},moderatorLong:{listener:`message`,event:{service:`twitch`,data:{time:1749743997223,tags:{"badge-info":``,badges:`moderator/1`,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`3e7ba532-f181-4bcc-90f1-a3c48ca3c820`,mod:`1`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749743996136`,turbo:`0`,"user-id":`958683839`,"user-type":`mod`},nick:`mediator`,userId:`958683839`,displayName:`mediator`,displayColor:``,badges:[{type:`moderator`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/3267646d-33f0-4b17-b3df-f923a41db1d0/3`,description:`Moderator`}],channel:`mediator`,text:`Did someone say... MODERATOR!? Yes, I am moderator!`,isAction:!1,emotes:[],msgId:`3e7ba532-f181-4bcc-90f1-a3c48ca3c820`},renderedText:`Did someone say... MODERATOR!? Yes, I am moderator!`}},broadcaster:{listener:`message`,event:{service:`twitch`,data:{time:1749744800809,tags:{"badge-info":`subscriber/16`,badges:`broadcaster/1,subscriber/0,minecraft-15th-anniversary-celebration/1`,"client-nonce":`6989104421ee14c0a8c216ef1c6bb5ed`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`35a9bea7-076e-4d17-8cb7-7e65c8111b3d`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1749744799706`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`},{type:`minecraft-15th-anniversary-celebration`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/178077b2-8b86-4f8d-927c-66ed6c1b025f/3`,description:`Minecraft 15th Anniversary Celebration`}],channel:`an1by`,text:`I made this chat Besplatno`,isAction:!1,emotes:[{type:`7tv`,name:`Besplatno`,id:`01FE70VRT00009TR6M9N941A28`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/1x.webp`,2:`https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/2x.webp`,3:`https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/3x.webp`,4:`https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/4x.webp`},start:17,end:26}],msgId:`35a9bea7-076e-4d17-8cb7-7e65c8111b3d`},renderedText:`I made this chat <img src="https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/1x.webp" srcset="https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/1x.webp 1x, https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/2x.webp 2x, https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/4x.webp 4x" title="Besplatno" class="emote">`}},broadcasterShort:{listener:`message`,event:{service:`twitch`,data:{time:1749744800809,tags:{"badge-info":`subscriber/16`,badges:`broadcaster/1,subscriber/0,minecraft-15th-anniversary-celebration/1`,"client-nonce":`6989104421ee14c0a8c216ef1c6bb5ed`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`35a9bea7-076e-4d17-8cb7-7e65c8111b3d`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1749744799706`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`},{type:`minecraft-15th-anniversary-celebration`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/178077b2-8b86-4f8d-927c-66ed6c1b025f/3`,description:`Minecraft 15th Anniversary Celebration`}],channel:`an1by`,text:`okak`,isAction:!1,emotes:[],msgId:`35a9bea7-076e-4d17-8cb7-7e65c8111b3d`},renderedText:`I made this chat <img src="https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/1x.webp" srcset="https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/1x.webp 1x, https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/2x.webp 2x, https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/4x.webp 4x" title="Besplatno" class="emote">`}},emoteSolo:{listener:`message`,event:{service:`twitch`,data:{time:1749744097330,tags:{"badge-info":``,badges:``,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`9ab645b9-7c27-4c6f-99fd-f63727ca3700`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749744096217`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`tr0l1`,userId:`958683839`,displayName:`tr0l1`,displayColor:``,badges:[],channel:`tr0l1`,text:`🤤😮💀👈👉`,isAction:!1,emotes:[{type:`emoji`,name:`1f62e`,id:`1f62e`,gif:!1,urls:{1:`https://twemoji.maxcdn.com/36x36/1f62e.png`}},{type:`emoji`,name:`1f480`,id:`1f480`,gif:!1,urls:{1:`https://twemoji.maxcdn.com/36x36/1f480.png`}},{type:`emoji`,name:`1f448`,id:`1f448`,gif:!1,urls:{1:`https://twemoji.maxcdn.com/36x36/1f448.png`}},{type:`emoji`,name:`1f449`,id:`1f449`,gif:!1,urls:{1:`https://twemoji.maxcdn.com/36x36/1f449.png`}}],msgId:`9ab645b9-7c27-4c6f-99fd-f63727ca3700`},renderedText:`🤤😮💀👈👉`}},emoteOne:{listener:`message`,event:{service:`twitch`,data:{time:1749744131183,tags:{"badge-info":``,badges:``,color:``,"display-name":`An1by`,emotes:`41:20-27/245:29-43/28087:45-51/58765:53-63/555555584:65-66/64138:10-18`,"first-msg":`0`,flags:``,id:`beb957ea-dfbd-4184-82a3-458121f44867`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749744130018`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`tr0l1`,userId:`958683839`,displayName:`tr0l1`,displayColor:``,badges:[],channel:`tr0l1`,text:`SeemsGood`,isAction:!1,emotes:[{type:`twitch`,name:`SeemsGood`,id:`64138`,gif:!1,animated:!1,urls:{1:`https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/1.0`,2:`https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/2.0`,4:`https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/3.0`},start:0,end:9}],msgId:`beb957ea-dfbd-4184-82a3-458121f44867`},renderedText:`<img src="https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/1.0" srcset="https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/1.0 1x, https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/2.0 2x, https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/3.0 4x" title="SeemsGood" class="emote">`}},emoteText:{listener:`message`,event:{service:`twitch`,data:{time:1749744131183,tags:{"badge-info":``,badges:``,color:``,"display-name":`7TVUser`,emotes:`41:20-27/245:29-43/28087:45-51/58765:53-63/555555584:65-66/64138:10-18`,"first-msg":`0`,flags:``,id:`beb957ea-dfbd-4184-82a3-458121f44867`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749744130018`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`7TVUser`,userId:`958683839`,displayName:`7TVUser`,displayColor:``,badges:[],channel:`7TVUser`,text:`Not emote SeemsGood Kreygasm ResidentSleeper WutFace NotLikeThis <3`,isAction:!1,emotes:[{type:`twitch`,name:`SeemsGood`,id:`64138`,gif:!1,animated:!1,urls:{1:`https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/1.0`,2:`https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/2.0`,4:`https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/3.0`},start:10,end:19},{type:`twitch`,name:`Kreygasm`,id:`41`,gif:!1,animated:!1,urls:{1:`https://static-cdn.jtvnw.net/emoticons/v2/41/static/dark/1.0`,2:`https://static-cdn.jtvnw.net/emoticons/v2/41/static/dark/2.0`,4:`https://static-cdn.jtvnw.net/emoticons/v2/41/static/dark/3.0`},start:20,end:28},{type:`twitch`,name:`ResidentSleeper`,id:`245`,gif:!1,animated:!1,urls:{1:`https://static-cdn.jtvnw.net/emoticons/v2/245/static/dark/1.0`,2:`https://static-cdn.jtvnw.net/emoticons/v2/245/static/dark/2.0`,4:`https://static-cdn.jtvnw.net/emoticons/v2/245/static/dark/3.0`},start:29,end:44},{type:`twitch`,name:`WutFace`,id:`28087`,gif:!1,animated:!1,urls:{1:`https://static-cdn.jtvnw.net/emoticons/v2/28087/static/dark/1.0`,2:`https://static-cdn.jtvnw.net/emoticons/v2/28087/static/dark/2.0`,4:`https://static-cdn.jtvnw.net/emoticons/v2/28087/static/dark/3.0`},start:45,end:52},{type:`twitch`,name:`NotLikeThis`,id:`58765`,gif:!1,animated:!1,urls:{1:`https://static-cdn.jtvnw.net/emoticons/v2/58765/static/dark/1.0`,2:`https://static-cdn.jtvnw.net/emoticons/v2/58765/static/dark/2.0`,4:`https://static-cdn.jtvnw.net/emoticons/v2/58765/static/dark/3.0`},start:53,end:64},{type:`twitch`,name:`<3`,id:`9`,gif:!1,animated:!1,urls:{1:`https://static-cdn.jtvnw.net/emoticons/v2/9/static/dark/1.0`,2:`https://static-cdn.jtvnw.net/emoticons/v2/9/static/dark/2.0`,4:`https://static-cdn.jtvnw.net/emoticons/v2/9/static/dark/3.0`},start:65,end:67}],msgId:`beb957ea-dfbd-4184-82a3-458121f44867`},renderedText:`Not emote <img src="https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/1.0" srcset="https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/1.0 1x, https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/2.0 2x, https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/3.0 4x" title="SeemsGood" class="emote"><img src="https://static-cdn.jtvnw.net/emoticons/v2/41/static/dark/1.0" srcset="https://static-cdn.jtvnw.net/emoticons/v2/41/static/dark/1.0 1x, https://static-cdn.jtvnw.net/emoticons/v2/41/static/dark/2.0 2x, https://static-cdn.jtvnw.net/emoticons/v2/41/static/dark/3.0 4x" title="Kreygasm" class="emote"><img src="https://static-cdn.jtvnw.net/emoticons/v2/245/static/dark/1.0" srcset="https://static-cdn.jtvnw.net/emoticons/v2/245/static/dark/1.0 1x, https://static-cdn.jtvnw.net/emoticons/v2/245/static/dark/2.0 2x, https://static-cdn.jtvnw.net/emoticons/v2/245/static/dark/3.0 4x" title="ResidentSleeper" class="emote"><img src="https://static-cdn.jtvnw.net/emoticons/v2/28087/static/dark/1.0" srcset="https://static-cdn.jtvnw.net/emoticons/v2/28087/static/dark/1.0 1x, https://static-cdn.jtvnw.net/emoticons/v2/28087/static/dark/2.0 2x, https://static-cdn.jtvnw.net/emoticons/v2/28087/static/dark/3.0 4x" title="WutFace" class="emote"><img src="https://static-cdn.jtvnw.net/emoticons/v2/58765/static/dark/1.0" srcset="https://static-cdn.jtvnw.net/emoticons/v2/58765/static/dark/1.0 1x, https://static-cdn.jtvnw.net/emoticons/v2/58765/static/dark/2.0 2x, https://static-cdn.jtvnw.net/emoticons/v2/58765/static/dark/3.0 4x" title="NotLikeThis" class="emote"><img src="https://static-cdn.jtvnw.net/emoticons/v2/9/static/dark/1.0" srcset="https://static-cdn.jtvnw.net/emoticons/v2/9/static/dark/1.0 1x, https://static-cdn.jtvnw.net/emoticons/v2/9/static/dark/2.0 2x, https://static-cdn.jtvnw.net/emoticons/v2/9/static/dark/3.0 4x" title="<3" class="emote">`}},zeroWidthEmotes:{listener:`message`,event:{service:`twitch`,data:{time:1759956619137,tags:{"badge-info":`subscriber/20`,badges:``,"client-nonce":`f7b17aea5c07c5c08fd920278fb52b5a`,color:`#DAA520`,"display-name":`7TVUser`,emotes:``,"first-msg":`0`,flags:``,id:`b44d1c53-1de9-454c-a269-bd8849cbcd2d`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1759956618295`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`7TVUser`,userId:`958683839`,displayName:`7TVUser`,displayColor:`#DAA520`,badges:[{type:`minecraft-15th-anniversary-celebration`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/178077b2-8b86-4f8d-927c-66ed6c1b025f/3`,description:`Minecraft 15th Anniversary Celebration`}],channel:`7TVUser`,text:`Zero-width emotes AYAYA PETPET right there!!`,isAction:!1,emotes:[{type:`7tv`,name:`AYAYA`,id:`01GB32XE6R00018VJGJ4A9BNCV`,gif:!1,animated:!1,urls:{1:`https://cdn.7tv.app/emote/01GB32XE6R00018VJGJ4A9BNCV/1x.webp`,2:`https://cdn.7tv.app/emote/01GB32XE6R00018VJGJ4A9BNCV/2x.webp`,3:`https://cdn.7tv.app/emote/01GB32XE6R00018VJGJ4A9BNCV/3x.webp`,4:`https://cdn.7tv.app/emote/01GB32XE6R00018VJGJ4A9BNCV/4x.webp`},start:18,end:23},{type:`7tv`,name:`PETPET`,id:`01FE3XY508000AA32JP519W2EW`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01FE3XY508000AA32JP519W2EW/1x.webp`,2:`https://cdn.7tv.app/emote/01FE3XY508000AA32JP519W2EW/2x.webp`,3:`https://cdn.7tv.app/emote/01FE3XY508000AA32JP519W2EW/3x.webp`,4:`https://cdn.7tv.app/emote/01FE3XY508000AA32JP519W2EW/4x.webp`},start:24,end:30}],msgId:`b44d1c53-1de9-454c-a269-bd8849cbcd2d`},renderedText:`Zero-width emotes <img src="https://cdn.7tv.app/emote/01GB32XE6R00018VJGJ4A9BNCV/1x.webp" srcset="https://cdn.7tv.app/emote/01GB32XE6R00018VJGJ4A9BNCV/1x.webp 1x, https://cdn.7tv.app/emote/01GB32XE6R00018VJGJ4A9BNCV/2x.webp 2x, https://cdn.7tv.app/emote/01GB32XE6R00018VJGJ4A9BNCV/4x.webp 4x" title="AYAYA" class="emote"><img src="https://cdn.7tv.app/emote/01FE3XY508000AA32JP519W2EW/1x.webp" srcset="https://cdn.7tv.app/emote/01FE3XY508000AA32JP519W2EW/1x.webp 1x, https://cdn.7tv.app/emote/01FE3XY508000AA32JP519W2EW/2x.webp 2x, https://cdn.7tv.app/emote/01FE3XY508000AA32JP519W2EW/4x.webp 4x" title="PETPET" class="emote">right there!!`}},sevenTv:{listener:`message`,event:{service:`twitch`,data:{time:1749744413746,tags:{"badge-info":``,badges:``,"client-nonce":`2bd56e3c058b5a4fc4e46c3e369891e6`,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`4c71789c-8c02-4e25-a71f-3a7d0ef19a33`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749744412641`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`tr0l1`,userId:`958683839`,displayName:`tr0l1`,displayColor:``,badges:[],channel:`tr0l1`,text:`ало ало Инса Каори Hello everyone! Hello everyone! Hello everyone!Hello everyone! Hello everyone! Hello everyone! Hello everyone! Hello everyone!`,isAction:!1,emotes:[{type:`7tv`,name:`ало`,id:`01F6PRA3N80003BH8AEY9DWKDQ`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/1x.webp`,2:`https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/2x.webp`,3:`https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/3x.webp`,4:`https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/4x.webp`},start:0,end:3},{type:`7tv`,name:`ало`,id:`01F6PRA3N80003BH8AEY9DWKDQ`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/1x.webp`,2:`https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/2x.webp`,3:`https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/3x.webp`,4:`https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/4x.webp`},start:4,end:7},{type:`7tv`,name:`Инса`,id:`01JRE4VRRXWF0922HA3F9BZG6M`,gif:!1,animated:!1,urls:{1:`https://cdn.7tv.app/emote/01JRE4VRRXWF0922HA3F9BZG6M/1x.webp`,2:`https://cdn.7tv.app/emote/01JRE4VRRXWF0922HA3F9BZG6M/2x.webp`,3:`https://cdn.7tv.app/emote/01JRE4VRRXWF0922HA3F9BZG6M/3x.webp`,4:`https://cdn.7tv.app/emote/01JRE4VRRXWF0922HA3F9BZG6M/4x.webp`},start:8,end:12},{type:`7tv`,name:`Каори`,id:`01GY6TCEFG000BGHWA5T6NGBRA`,gif:!1,animated:!1,urls:{1:`https://cdn.7tv.app/emote/01GY6TCEFG000BGHWA5T6NGBRA/1x.webp`,2:`https://cdn.7tv.app/emote/01GY6TCEFG000BGHWA5T6NGBRA/2x.webp`,3:`https://cdn.7tv.app/emote/01GY6TCEFG000BGHWA5T6NGBRA/3x.webp`,4:`https://cdn.7tv.app/emote/01GY6TCEFG000BGHWA5T6NGBRA/4x.webp`},start:13,end:18}],msgId:`4c71789c-8c02-4e25-a71f-3a7d0ef19a33`},renderedText:`<img src="https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/1x.webp" srcset="https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/1x.webp 1x, https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/2x.webp 2x, https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/4x.webp 4x" title="ало" class="emote"><img src="https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/1x.webp" srcset="https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/1x.webp 1x, https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/2x.webp 2x, https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/4x.webp 4x" title="ало" class="emote"><img src="https://cdn.7tv.app/emote/01JRE4VRRXWF0922HA3F9BZG6M/1x.webp" srcset="https://cdn.7tv.app/emote/01JRE4VRRXWF0922HA3F9BZG6M/1x.webp 1x, https://cdn.7tv.app/emote/01JRE4VRRXWF0922HA3F9BZG6M/2x.webp 2x, https://cdn.7tv.app/emote/01JRE4VRRXWF0922HA3F9BZG6M/4x.webp 4x" title="Инса" class="emote"><img src="https://cdn.7tv.app/emote/01GY6TCEFG000BGHWA5T6NGBRA/1x.webp" srcset="https://cdn.7tv.app/emote/01GY6TCEFG000BGHWA5T6NGBRA/1x.webp 1x, https://cdn.7tv.app/emote/01GY6TCEFG000BGHWA5T6NGBRA/2x.webp 2x, https://cdn.7tv.app/emote/01GY6TCEFG000BGHWA5T6NGBRA/4x.webp 4x" title="Каори" class="emote">Hello everyone!`}},sevenTvSolo:{listener:`message`,event:{service:`twitch`,data:{time:1768321684253,tags:{"badge-info":`subscriber/23`,badges:`broadcaster/1,subscriber/0`,"client-nonce":`51cc77206bf346eda20774b75aac675d`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`e30a02bf-a3c7-40f2-9325-cdc2690d3631`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1768321684074`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`}],channel:`an1by`,text:`DurkaDance ͏`,isAction:!1,emotes:[{type:`7tv`,name:`DurkaDance`,id:`01JQBC7K2FX7HE4SFZFJEN6CWY`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01JQBC7K2FX7HE4SFZFJEN6CWY/1x.webp`,2:`https://cdn.7tv.app/emote/01JQBC7K2FX7HE4SFZFJEN6CWY/2x.webp`,3:`https://cdn.7tv.app/emote/01JQBC7K2FX7HE4SFZFJEN6CWY/3x.webp`,4:`https://cdn.7tv.app/emote/01JQBC7K2FX7HE4SFZFJEN6CWY/4x.webp`},start:0,end:10}],msgId:`e30a02bf-a3c7-40f2-9325-cdc2690d3631`},renderedText:`<img src="https://cdn.7tv.app/emote/01JQBC7K2FX7HE4SFZFJEN6CWY/1x.webp" srcset="https://cdn.7tv.app/emote/01JQBC7K2FX7HE4SFZFJEN6CWY/1x.webp 1x, https://cdn.7tv.app/emote/01JQBC7K2FX7HE4SFZFJEN6CWY/2x.webp 2x, https://cdn.7tv.app/emote/01JQBC7K2FX7HE4SFZFJEN6CWY/4x.webp 4x" title="DurkaDance" class="emote"> ͏`}},replyToEmotes:{listener:`message`,event:{service:`twitch`,data:{time:1761442000746,tags:{"badge-info":`subscriber/21`,badges:`broadcaster/1,subscriber/0,minecraft-15th-anniversary-celebration/1`,"client-nonce":`467bc72d78248ec07dfb0602744268ca`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`9efd9377-2bd3-4c69-ace4-c21760337bab`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1761442000143`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`},{type:`minecraft-15th-anniversary-celebration`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/178077b2-8b86-4f8d-927c-66ed6c1b025f/3`,description:`Minecraft 15th Anniversary Celebration`}],channel:`an1by`,text:`AREYOUAGIRL Censored Emotes there DiscoDoge Кута`,isAction:!1,emotes:[{type:`7tv`,name:`AREYOUAGIRL`,id:`01F6N58M5R0004P7N4A9PK7KD9`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01F6N58M5R0004P7N4A9PK7KD9/1x.webp`,2:`https://cdn.7tv.app/emote/01F6N58M5R0004P7N4A9PK7KD9/2x.webp`,3:`https://cdn.7tv.app/emote/01F6N58M5R0004P7N4A9PK7KD9/3x.webp`,4:`https://cdn.7tv.app/emote/01F6N58M5R0004P7N4A9PK7KD9/4x.webp`},start:0,end:11},{type:`7tv`,name:`Censored`,id:`01GC2KBETR0009QMKQRDSHDTVB`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp`,2:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp`,3:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/3x.webp`,4:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp`},start:12,end:20},{type:`7tv`,name:`DiscoDoge`,id:`01F6REQR2R0006GRP49Q74YFVT`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01F6REQR2R0006GRP49Q74YFVT/1x.webp`,2:`https://cdn.7tv.app/emote/01F6REQR2R0006GRP49Q74YFVT/2x.webp`,3:`https://cdn.7tv.app/emote/01F6REQR2R0006GRP49Q74YFVT/3x.webp`,4:`https://cdn.7tv.app/emote/01F6REQR2R0006GRP49Q74YFVT/4x.webp`},start:34,end:43},{type:`7tv`,name:`Кута`,id:`01GZRXWQMR0001GP2RPRY13KD2`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01GZRXWQMR0001GP2RPRY13KD2/1x.webp`,2:`https://cdn.7tv.app/emote/01GZRXWQMR0001GP2RPRY13KD2/2x.webp`,3:`https://cdn.7tv.app/emote/01GZRXWQMR0001GP2RPRY13KD2/3x.webp`,4:`https://cdn.7tv.app/emote/01GZRXWQMR0001GP2RPRY13KD2/4x.webp`},start:44,end:48}],msgId:`9efd9377-2bd3-4c69-ace4-c21760337bab`},renderedText:`<img src="https://cdn.7tv.app/emote/01F6N58M5R0004P7N4A9PK7KD9/1x.webp" srcset="https://cdn.7tv.app/emote/01F6N58M5R0004P7N4A9PK7KD9/1x.webp 1x, https://cdn.7tv.app/emote/01F6N58M5R0004P7N4A9PK7KD9/2x.webp 2x, https://cdn.7tv.app/emote/01F6N58M5R0004P7N4A9PK7KD9/4x.webp 4x" title="AREYOUAGIRL" class="emote"><img src="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp" srcset="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp 1x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp 2x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp 4x" title="Censored" class="emote">Emotes there <img src="https://cdn.7tv.app/emote/01F6REQR2R0006GRP49Q74YFVT/1x.webp" srcset="https://cdn.7tv.app/emote/01F6REQR2R0006GRP49Q74YFVT/1x.webp 1x, https://cdn.7tv.app/emote/01F6REQR2R0006GRP49Q74YFVT/2x.webp 2x, https://cdn.7tv.app/emote/01F6REQR2R0006GRP49Q74YFVT/4x.webp 4x" title="DiscoDoge" class="emote"><img src="https://cdn.7tv.app/emote/01GZRXWQMR0001GP2RPRY13KD2/1x.webp" srcset="https://cdn.7tv.app/emote/01GZRXWQMR0001GP2RPRY13KD2/1x.webp 1x, https://cdn.7tv.app/emote/01GZRXWQMR0001GP2RPRY13KD2/2x.webp 2x, https://cdn.7tv.app/emote/01GZRXWQMR0001GP2RPRY13KD2/4x.webp 4x" title="Кута" class="emote">`}},replyFromEmotes:{listener:`message`,event:{service:`twitch`,data:{time:1761442023380,tags:{"badge-info":`subscriber/21`,badges:`broadcaster/1,subscriber/0,minecraft-15th-anniversary-celebration/1`,"client-nonce":`4052e6a7ed6bb6b8836aa625170c4f7b`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`f7bed8dd-5a48-4209-8617-e1a3c0720ee4`,mod:`0`,"reply-parent-display-name":`An1by`,"reply-parent-msg-body":`AREYOUAGIRL\\sCensored\\sThere\\semotes\\sDiscoDoge\\sКута`,"reply-parent-msg-id":`9efd9377-2bd3-4c69-ace4-c21760337bab`,"reply-parent-user-id":`958683839`,"reply-parent-user-login":`an1by`,"reply-thread-parent-display-name":`An1by`,"reply-thread-parent-msg-id":`9efd9377-2bd3-4c69-ace4-c21760337bab`,"reply-thread-parent-user-id":`958683839`,"reply-thread-parent-user-login":`an1by`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1761442022738`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`},{type:`minecraft-15th-anniversary-celebration`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/178077b2-8b86-4f8d-927c-66ed6c1b025f/3`,description:`Minecraft 15th Anniversary Celebration`}],channel:`an1by`,text:`@An1by I'm replying to message with emotes agarge Looks good, am I right?`,isAction:!1,emotes:[{type:`7tv`,name:`agarge`,id:`01HTDV6DE8000B1F9GAE4NZ73B`,gif:!1,animated:!1,urls:{1:`https://cdn.7tv.app/emote/01HTDV6DE8000B1F9GAE4NZ73B/1x.webp`,2:`https://cdn.7tv.app/emote/01HTDV6DE8000B1F9GAE4NZ73B/2x.webp`,3:`https://cdn.7tv.app/emote/01HTDV6DE8000B1F9GAE4NZ73B/3x.webp`,4:`https://cdn.7tv.app/emote/01HTDV6DE8000B1F9GAE4NZ73B/4x.webp`},start:43,end:49}],msgId:`f7bed8dd-5a48-4209-8617-e1a3c0720ee4`},renderedText:`@An1by I'm replying to message with emotes <img src="https://cdn.7tv.app/emote/01HTDV6DE8000B1F9GAE4NZ73B/1x.webp" srcset="https://cdn.7tv.app/emote/01HTDV6DE8000B1F9GAE4NZ73B/1x.webp 1x, https://cdn.7tv.app/emote/01HTDV6DE8000B1F9GAE4NZ73B/2x.webp 2x, https://cdn.7tv.app/emote/01HTDV6DE8000B1F9GAE4NZ73B/4x.webp 4x" title="agarge" class="emote">Looks good, am I right?`}},replyTo:{listener:`message`,event:{service:`twitch`,data:{time:1761435519083,tags:{"badge-info":`subscriber/21`,badges:`broadcaster/1,subscriber/0,minecraft-15th-anniversary-celebration/1`,"client-nonce":`da4c68fddba7eb1be7ae2b6a44c207a2`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`794c103d-a5d5-4ce1-bcd8-98ac6717c8e7`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1761435518511`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`},{type:`minecraft-15th-anniversary-celebration`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/178077b2-8b86-4f8d-927c-66ed6c1b025f/3`,description:`Minecraft 15th Anniversary Celebration`}],channel:`an1by`,text:`I'll reply to that message`,isAction:!1,emotes:[],msgId:`794c103d-a5d5-4ce1-bcd8-98ac6717c8e7`},renderedText:`I'll reply to that message`}},replyFrom:{listener:`message`,event:{service:`twitch`,data:{time:1761435541811,tags:{"badge-info":`subscriber/21`,badges:`broadcaster/1,subscriber/0,minecraft-15th-anniversary-celebration/1`,"client-nonce":`b59db94320a8a01942290c61f6a27480`,color:`#DAA520`,"display-name":`An1by`,emotes:`emotesv2_f54e2bcddf4948808b845e37dd4e08de:26-36`,"first-msg":`0`,flags:``,id:`bc101ec7-5663-4ee5-9580-536ed9a5804e`,mod:`0`,"reply-parent-display-name":`An1by`,"reply-parent-msg-body":`I'll\\sreply\\sto\\sthat\\smessage`,"reply-parent-msg-id":`794c103d-a5d5-4ce1-bcd8-98ac6717c8e7`,"reply-parent-user-id":`958683839`,"reply-parent-user-login":`an1by`,"reply-thread-parent-display-name":`An1by`,"reply-thread-parent-msg-id":`794c103d-a5d5-4ce1-bcd8-98ac6717c8e7`,"reply-thread-parent-user-id":`958683839`,"reply-thread-parent-user-login":`an1by`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1761435541217`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`},{type:`minecraft-15th-anniversary-celebration`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/178077b2-8b86-4f8d-927c-66ed6c1b025f/3`,description:`Minecraft 15th Anniversary Celebration`}],channel:`an1by`,text:`@An1by Replying right now akidaKrutoi`,isAction:!1,emotes:[{type:`twitch`,name:`akidaKrutoi`,id:`emotesv2_f54e2bcddf4948808b845e37dd4e08de`,gif:!1,urls:{1:`https://static-cdn.jtvnw.net/emoticons/v2/emotesv2_f54e2bcddf4948808b845e37dd4e08de/default/dark/1.0`,2:`https://static-cdn.jtvnw.net/emoticons/v2/emotesv2_f54e2bcddf4948808b845e37dd4e08de/default/dark/2.0`,4:`https://static-cdn.jtvnw.net/emoticons/v2/emotesv2_f54e2bcddf4948808b845e37dd4e08de/default/dark/3.0`},start:26,end:36}],msgId:`bc101ec7-5663-4ee5-9580-536ed9a5804e`},renderedText:`@An1by Replying right now <img src="https://static-cdn.jtvnw.net/emoticons/v2/emotesv2_f54e2bcddf4948808b845e37dd4e08de/default/dark/1.0" srcset="https://static-cdn.jtvnw.net/emoticons/v2/emotesv2_f54e2bcddf4948808b845e37dd4e08de/default/dark/1.0 1x, https://static-cdn.jtvnw.net/emoticons/v2/emotesv2_f54e2bcddf4948808b845e37dd4e08de/default/dark/2.0 2x, https://static-cdn.jtvnw.net/emoticons/v2/emotesv2_f54e2bcddf4948808b845e37dd4e08de/default/dark/3.0 4x" title="akidaKrutoi" class="emote">`}}},m=`onEventReceived`;function h(e){if(typeof window>`u`)return;let t=p[e.startsWith(`testMessage_`)?e.replace(`testMessage_`,``):e];t&&window.dispatchEvent(new CustomEvent(m,{detail:t}))}function g(e){if(typeof window>`u`)return;let t=f[e.startsWith(`testAlert_`)?e.replace(`testAlert_`,``):e];t&&window.dispatchEvent(new CustomEvent(m,{detail:t}))}function _(e){if(!e.startsWith(`testMessage`))return null;let t=e.replace(`testMessage`,``);return t.charAt(0).toLowerCase()+t.slice(1)}function v(e){if(!e.startsWith(`testAlert`))return null;let t=e.replace(`testAlert`,``);return t.charAt(0).toLowerCase()+t.slice(1)}var y=function(e){return e.BROADCASTER=`broadcaster`,e.LEAD_MODERATOR=`lead_moderator`,e.MODERATOR=`moderator`,e.VIP=`vip`,e.ARTIST=`artist`,e.FOUNDER=`founder`,e.SUBSCRIBER=`subscriber`,e.TURBO=`turbo`,e.DEFAULT=`default`,e}({});e.AlertQueue=class{queue=[];isShowingAlert=!1;onNextAlert;constructor(e){this.onNextAlert=e}push(e){this.queue.push(e)}processNextAlert(){if(this.queue.length===0||this.isShowingAlert)return;let e=this.queue.shift();e&&(this.isShowingAlert=!0,this.onNextAlert(this,e))}},e.TwitchUserMessageData=({badges:e=[],tags:t={}})=>{let n=t=>!!e.find(e=>e.type===t),r=t.badges??``,i=t[`user-type`]??``,a=r.includes(`subscriber/1`)||t.subscriber===`1`||n(`subscriber`),o=r.includes(`founder/1`)||n(`founder`),s=r.includes(`broadcaster/1`)||n(`broadcaster`),c=t[`first-msg`]===`1`,l=t.turbo===`1`,u=t.vip===`1`||r.includes(`vip/1`)||n(`vip`),d=r.includes(`lead_moderator/1`)||n(`lead_moderator`),f=(t.mod===`1`||r.includes(`moderator/1`)||i===`mod`)&&!d||n(`moderator`),p=f||d,m=r.includes(`artist-badge/1`)||n(`artist-badge`),h=[];return s&&h.push(y.BROADCASTER),d&&h.push(y.LEAD_MODERATOR),f&&h.push(y.MODERATOR),u&&h.push(y.VIP),m&&h.push(y.ARTIST),o&&h.push(y.FOUNDER),a&&h.push(y.SUBSCRIBER),l&&h.push(y.TURBO),h.push(y.DEFAULT),{isSubscriber:a,isBroadcaster:s,isFirstMessageChatter:c,isFounder:o,isTurbo:l,isVip:u,isAnyModerator:p,isModerator:f,isLeadModerator:d,isArtist:m,roles:h,includesBadgeType:n,getSubscriberMonths:()=>{for(let e of[`badge-info`,`badges`]){let n=t[e];if(n){let e=n.match(/^subscriber\/(\d+)$/);if(e)return parseInt(e[1],10)}}return 0},getBadgeUrlByType:t=>e.find(e=>e.type===t)?.url}},e.UserRole=y,e.classifyEvent=r,e.getCacheKey=n,e.getTestAlertKey=v,e.getTestMessageKey=_,e.normalizeIncomingEvent=u,e.parseTier=t,e.testAlert=g,e.testAlerts=f,e.testMessage=h,e.testMessages=p,e.testOnWidgetLoadDetail=d})(this.WmakeStreamelementsEvents=this.WmakeStreamelementsEvents||{});
|
|
1
|
+
(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});function t(e){if(e==null)return{tier:0,tierText:``};let t=typeof e==`string`?e:String(e),n=parseInt(t,10);return Number.isNaN(n)?{tier:0,tierText:t}:{tier:n>=3e3?3:n>=2e3?2:+(n>=1e3),tierText:t}}function n(e){let t=e.listener,n=e.event??{},r=n.activityGroup,i=n.activityId??n._id;return r?String(r):i?String(i):t===`subscriber-latest`&&n.bulkGifted?`sl-bulk-`+(n.sender??``)+`-`+(n.amount??``)+`-`+(n.tier??``)+`-`+(n._id??``):`sl-${n._id??n.activityId??``}`}function r(e){let n=e.listener,r=e.event??{},i=r.data??r,a=t(i.tier??r.tier);if(n===`event`){if(r.type===`communityGiftPurchase`){let e=i.username&&String(i.username).toLowerCase()===`anonymous`||i.sender===`Anonymous`;return{type:e?`community-gift-anonymous`:`community-gift`,tier:a.tier,tierText:a.tierText,totalAmount:parseInt(String(i.amount),10)||1,recipients:[],sender:e?void 0:i.sender??i.displayName??i.username,anonymousDisplayName:e?i.displayName??`Anonymous`:void 0}}if(r.type===`subscriber`){let t=i.gifted===!0,n=i.sender,o=parseInt(String(i.amount),10)||1,s=i.username??i.displayName,c=r.activityGroup;if(n===`Anonymous`&&c)return{type:`community-gift-anonymous`,_role:`recipient`,activityGroup:c,recipient:s??i.displayName,tier:a.tier,tierText:a.tierText};if(t&&n&&n!==`Anonymous`){if(!(i.communityGifted===!0||c!=null&&c!==``)){let e=String(i.message??``).indexOf(`first Gift Sub`)!==-1;return{type:`solo-sub-to-someone`,sender:n,recipient:s??i.displayName,tier:a.tier,tierText:a.tierText,firstGiftInChannel:e}}return{type:`community-gift`,_role:`recipient`,activityGroup:c??``,recipient:s??i.displayName,tier:a.tier,tierText:a.tierText}}return!t&&o>1?{type:`sub-renewal`,name:s??i.displayName,months:o,tier:a.tier,tierText:a.tierText}:!t&&o===1?{type:`self-sub`,name:s??i.displayName,tier:a.tier,tierText:a.tierText}:c?{type:`community-gift`,_role:`recipient`,activityGroup:c,recipient:s??i.displayName,tier:a.tier,tierText:a.tierText}:{type:`unknown`,detail:e}}return{type:`unknown`,detail:e}}if(n===`subscriber-latest`){let t=r.bulkGifted===!0,n=r.sender,i=r.name,o=parseInt(String(r.amount),10)||1,s=r.gifted===!0,c=r.isCommunityGift===!0||r.communityGifted===!0;if(t&&n===`Anonymous`)return{type:`community-gift-anonymous`,tier:a.tier,tierText:a.tierText,totalAmount:o,recipients:[]};if(t&&n)return{type:`community-gift`,sender:n,tier:a.tier,tierText:a.tierText,totalAmount:o,recipients:[]};if(s&&!c&&n){let e=String(r.message??``).indexOf(`first Gift Sub`)!==-1;return{type:`solo-sub-to-someone`,sender:n,recipient:i??``,tier:a.tier,tierText:a.tierText,firstGiftInChannel:e}}return!s&&o>1?{type:`sub-renewal`,name:i??``,months:o,tier:a.tier,tierText:a.tierText}:!s&&o===1&&(n==null||i===n)?{type:`self-sub`,name:i??``,tier:a.tier,tierText:a.tierText}:{type:`unknown`,detail:e}}if(n===`follower-latest`)return{type:`follow`,name:r.name??``};if(n===`cheer-latest`){let e=parseInt(String(r.amount),10)||0;return{type:`cheer`,name:r.name??``,amount:e}}if(n===`raid-latest`){let e=parseInt(String(r.amount),10)||0;return{type:`raid`,name:r.name??``,viewers:e}}return n===`delete-message`?{type:`delete-message`,messageId:r.msgId??``}:n===`delete-messages`?{type:`delete-messages`,userName:r.userId??``}:n===`event:test`&&r.listener===`widget-button`?{type:`button`,field:r.field}:{type:`unknown`,detail:e}}var i=2500,a={},o={};function s(e,t){if(!e)return null;if(typeof e._has==`function`&&typeof e._set==`function`)return e;let n=e[t];return n&&typeof n._has==`function`?n:null}function c(e,t,n,r){let i=s(n,t.type);i?._has(e)||(i&&i._set(e,!0),r(t))}function l(e,t,n,r){let i=a[e];if(!i)return;delete a[e],o[e]&&(clearTimeout(o[e]),delete o[e]);let s=i.purchase,l=i.subscribers??[],u=i.type,d=i.tier,f=i.tierText,p=i.totalAmount??l.length,m=l.map(e=>e.recipient??e.username??e.name).filter(Boolean),h=l[0]?.sender,g=s?.sender??i.sender??h;u===`community-gift`&&r&&g===r||(u===`community-gift-anonymous`?c(e,{type:`community-gift-anonymous`,tier:d,tierText:f,totalAmount:p,recipients:m,anonymousDisplayName:s?.anonymousDisplayName},t,n):c(e,{type:`community-gift`,sender:g,tier:d,tierText:f,totalAmount:p,recipients:m},t,n))}function u(e,t,s){let c=t?.cacheSubs,u=t?.broadcasterLogin??``,d=r(e);if(!d){s(null);return}let f=n(e),p=e.event??{},m=p.data??p;if(d._role===`recipient`){let e=d,t=e.activityGroup??f;a[t]||(a[t]={type:e.type,subscribers:[],tier:e.tier,tierText:e.tierText,totalAmount:0}),o[t]&&clearTimeout(o[t]),o[t]=setTimeout(()=>{l(t,c,s,u)},i),a[t].subscribers.push({recipient:e.recipient,username:m.username,name:m.displayName,sender:m.sender}),a[t].totalAmount===0&&(a[t].totalAmount=1);return}if(d.type===`community-gift-anonymous`||d.type===`community-gift`){if(e.listener===`event`&&p.type===`communityGiftPurchase`){let e=p.activityGroup??m?.activityGroup??f,t=d;a[e]?(a[e].purchase=t,a[e].tier=t.tier,a[e].tierText=t.tierText,a[e].totalAmount=t.totalAmount??a[e].totalAmount,a[e].sender=t.sender,o[e]&&clearTimeout(o[e]),o[e]=setTimeout(()=>{l(e,c,s,u)},i)):(a[e]={type:t.type,purchase:t,subscribers:[],tier:t.tier,tierText:t.tierText,totalAmount:Number(t.totalAmount)||0,sender:t.sender},o[e]=setTimeout(()=>{l(e,c,s,u)},i));return}if(e.listener===`subscriber-latest`){let e=d;if(d.type===`community-gift`&&u&&e.sender===u){s(null);return}return}return}}var d={session:{data:{"follower-latest":{name:`imacanadiannn`},"follower-session":{count:0},"follower-week":{count:0},"follower-month":{count:0},"follower-goal":{amount:137},"follower-total":{count:118,activityId:``,sessionTop:!1},"subscriber-latest":{name:``,amount:0,tier:``,message:``},"subscriber-new-latest":{name:``,amount:0,message:``},"subscriber-resub-latest":{name:``,amount:0,message:``},"subscriber-gifted-latest":{name:``,amount:0,message:``,tier:``,sender:``},"subscriber-session":{count:0},"subscriber-new-session":{count:0},"subscriber-resub-session":{count:0},"subscriber-gifted-session":{count:0},"subscriber-week":{count:0},"subscriber-month":{count:0},"subscriber-goal":{amount:0},"subscriber-total":{count:0,activityId:``,sessionTop:!1},"subscriber-points":{amount:0,activityId:``,sessionTop:!1},"subscriber-alltime-gifter":{name:``,amount:0},"host-latest":{name:``,amount:0},"raid-latest":{name:`agnascor2`,amount:6},"cheer-session":{amount:0},"cheer-week":{amount:0},"cheer-month":{amount:0},"cheer-total":{amount:0},"cheer-count":{count:0},"cheer-goal":{amount:0},"cheer-latest":{name:``,amount:0},"cheer-session-top-donation":{amount:0,name:``},"cheer-weekly-top-donation":{amount:0,name:``},"cheer-monthly-top-donation":{amount:0,name:``},"cheer-alltime-top-donation":{amount:0,name:``},"cheer-session-top-donator":{amount:0,name:``},"cheer-weekly-top-donator":{amount:0,name:``},"cheer-monthly-top-donator":{amount:0,name:``},"cheer-alltime-top-donator":{amount:0,name:``},"tip-latest":{name:``,amount:0},"tip-session-top-donation":{amount:0,name:``},"tip-weekly-top-donation":{name:``,amount:0},"tip-monthly-top-donation":{name:``,amount:0},"tip-alltime-top-donation":{name:``,amount:0},"tip-session-top-donator":{amount:0,name:``},"tip-weekly-top-donator":{name:``,amount:0},"tip-monthly-top-donator":{name:``,amount:0},"tip-alltime-top-donator":{name:``,amount:0},"tip-session":{amount:0},"tip-week":{amount:0},"tip-month":{amount:0},"tip-total":{amount:0},"tip-count":{count:0},"tip-goal":{amount:0},"merch-goal-orders":{amount:0},"merch-goal-items":{amount:0},"merch-goal-total":{amount:0},"merch-latest":{name:``,amount:0,items:[]},"charityCampaignDonation-latest":{name:``,amount:0},"charityCampaignDonation-weekly-top-donation":{name:``,amount:0},"charityCampaignDonation-monthly-top-donation":{name:``,amount:0},"charityCampaignDonation-alltime-top-donation":{name:``,amount:0},"charityCampaignDonation-weekly-top-donator":{name:``,amount:0},"charityCampaignDonation-monthly-top-donator":{name:``,amount:0},"charityCampaignDonation-alltime-top-donator":{name:``,amount:0},"cheerPurchase-latest":{name:``,amount:0},"cheerPurchase-weekly-top-donation":{name:``,amount:0},"cheerPurchase-monthly-top-donation":{name:``,amount:0},"cheerPurchase-alltime-top-donation":{name:``,amount:0},"cheerPurchase-weekly-top-donator":{name:``,amount:0},"cheerPurchase-monthly-top-donator":{name:``,amount:0},"cheerPurchase-alltime-top-donator":{name:``,amount:0},"superchat-latest":{name:``,amount:0},"superchat-weekly-top-donation":{name:``,amount:0},"superchat-monthly-top-donation":{name:``,amount:0},"superchat-alltime-top-donation":{name:``,amount:0},"superchat-weekly-top-donator":{name:``,amount:0},"superchat-monthly-top-donator":{name:``,amount:0},"superchat-alltime-top-donator":{name:``,amount:0},"superchat-session":{amount:0},"superchat-week":{amount:0},"superchat-month":{amount:0},"superchat-total":{amount:0},"superchat-count":{count:0},"superchat-goal":{amount:0},"purchase-latest":{name:``,amount:0,avatar:``,message:``,items:[]},"follower-recent":[{name:`imacanadiannn`,createdAt:`2026-01-13T01:53:50.296Z`,type:`follower`},{name:`piwo143`,createdAt:`2026-01-13T01:51:39.472Z`,type:`follower`},{name:`latvan_`,createdAt:`2026-01-12T23:54:29.235Z`,type:`follower`},{name:`wheinwait`,createdAt:`2026-01-12T23:11:28.946Z`,type:`follower`},{name:`agnascor2`,createdAt:`2026-01-12T23:11:14.880Z`,type:`follower`},{name:`sunlitetuts`,createdAt:`2026-01-12T21:03:59.207Z`,type:`follower`},{name:`ayanamya`,createdAt:`2026-01-12T20:00:55.509Z`,type:`follower`},{name:`hopeless28`,createdAt:`2026-01-12T18:35:21.731Z`,type:`follower`},{name:`kakoytoclown`,createdAt:`2026-01-11T18:39:36.843Z`,type:`follower`},{name:`dababe__jq1`,createdAt:`2024-10-10T23:27:49.699Z`,type:`follower`},{name:`jjjllkmf`,createdAt:`2024-05-05T09:44:16.287Z`,type:`follower`},{name:`d4c_valintine`,createdAt:`2024-05-03T15:13:28.365Z`,type:`follower`},{name:`angelbliss_`,createdAt:`2024-04-30T20:07:23.132Z`,type:`follower`},{name:`o1zich`,createdAt:`2024-04-22T16:23:26.139Z`,type:`follower`},{name:`nearbuziky`,createdAt:`2024-04-19T19:21:27.569Z`,type:`follower`},{name:`samirkasamsa`,createdAt:`2024-04-19T17:06:38.963Z`,type:`follower`},{name:`flip1mip`,createdAt:`2024-04-19T17:06:18.276Z`,type:`follower`},{name:`valerie_solo`,createdAt:`2024-04-19T17:06:07.473Z`,type:`follower`},{name:`sxaelence`,createdAt:`2024-04-19T07:06:46.330Z`,type:`follower`},{name:`avokadik99`,createdAt:`2024-04-17T16:11:29.604Z`,type:`follower`},{name:`blackvoronstream`,createdAt:`2024-04-16T21:29:33.306Z`,type:`follower`},{name:`baldejniyy`,createdAt:`2024-04-16T21:29:09.647Z`,type:`follower`},{name:`p3ch4n_ka`,createdAt:`2024-04-16T16:37:31.841Z`,type:`follower`},{name:`kakosik_bee`,createdAt:`2024-04-16T15:56:27.435Z`,type:`follower`},{name:`hikotoru`,createdAt:`2024-04-16T15:13:25.226Z`,type:`follower`}],"subscriber-recent":[],"host-recent":[],"raid-recent":[{name:`agnascor2`,amount:6,createdAt:`2026-01-12T23:08:21.815Z`,type:`raid`},{name:`justduckomgg`,amount:7,createdAt:`2024-04-19T17:05:53.185Z`,type:`raid`},{name:`veessmk`,amount:6,createdAt:`2024-04-17T15:40:43.945Z`,type:`raid`},{name:`night_sculptor`,amount:12,createdAt:`2024-04-16T18:07:40.040Z`,type:`raid`},{name:`pixiemays`,amount:6,createdAt:`2024-04-16T16:37:24.433Z`,type:`raid`},{name:`night_sculptor`,amount:8,createdAt:`2024-04-14T18:31:20.049Z`,type:`raid`},{name:`pixiemays`,amount:19,createdAt:`2024-04-14T13:22:05.794Z`,type:`raid`},{name:`pixiemays`,amount:15,createdAt:`2024-04-12T17:03:36.115Z`,type:`raid`},{name:`alechkavt`,amount:9,createdAt:`2024-04-11T17:54:47.691Z`,type:`raid`},{name:`pixiemays`,amount:8,createdAt:`2024-04-11T14:10:49.548Z`,type:`raid`},{name:`night_sculptor`,amount:22,createdAt:`2024-04-09T16:13:41.195Z`,type:`raid`},{name:`pixiemays`,amount:5,createdAt:`2024-04-08T09:54:01.603Z`,type:`raid`},{name:`aki_neki`,amount:5,createdAt:`2024-04-07T21:52:45.919Z`,type:`raid`},{name:`alechkavt`,amount:11,createdAt:`2024-04-07T18:59:39.286Z`,type:`raid`},{name:`veessmk`,amount:15,createdAt:`2024-04-07T16:13:25.172Z`,type:`raid`},{name:`veessmk`,amount:10,createdAt:`2024-03-17T16:11:38.631Z`,type:`raid`}],"charityCampaignDonation-recent":[],"cheer-recent":[],"cheerPurchase-recent":[],"superchat-recent":[],"tip-recent":[],"merch-recent":[],"channel-points-latest":{amount:0,message:``,name:``,redemption:``},"community-gift-latest":{amount:0,name:``,tier:``},"charityCampaignDonation-session-top-donation":{amount:0,name:``},"charityCampaignDonation-session-top-donator":{amount:0,name:``},"cheerPurchase-session-top-donation":{amount:0,name:``},"cheerPurchase-session-top-donator":{amount:0,name:``},"hypetrain-latest":{active:0,amount:0,level:0,levelChanged:0,name:``,type:``},"hypetrain-latest-top-contributors":[],"hypetrain-level-goal":{amount:0},"hypetrain-level-progress":{amount:0,percent:0},"hypetrain-total":{amount:0},"superchat-session-top-donation":{amount:0,name:``},"superchat-session-top-donator":{amount:0,name:``}},settings:{autoReset:!0,calendar:!1,resetOnStart:!1}},recents:[{name:`imacanadiannn`,createdAt:`2026-01-13T01:53:50.296Z`,type:`follower`},{name:`piwo143`,createdAt:`2026-01-13T01:51:39.472Z`,type:`follower`},{name:`latvan_`,createdAt:`2026-01-12T23:54:29.235Z`,type:`follower`},{name:`wheinwait`,createdAt:`2026-01-12T23:11:28.946Z`,type:`follower`},{name:`agnascor2`,createdAt:`2026-01-12T23:11:14.880Z`,type:`follower`},{name:`sunlitetuts`,createdAt:`2026-01-12T21:03:59.207Z`,type:`follower`},{name:`ayanamya`,createdAt:`2026-01-12T20:00:55.509Z`,type:`follower`},{name:`hopeless28`,createdAt:`2026-01-12T18:35:21.731Z`,type:`follower`},{name:`kakoytoclown`,createdAt:`2026-01-11T18:39:36.843Z`,type:`follower`},{name:`dababe__jq1`,createdAt:`2024-10-10T23:27:49.699Z`,type:`follower`},{name:`jjjllkmf`,createdAt:`2024-05-05T09:44:16.287Z`,type:`follower`},{name:`d4c_valintine`,createdAt:`2024-05-03T15:13:28.365Z`,type:`follower`},{name:`angelbliss_`,createdAt:`2024-04-30T20:07:23.132Z`,type:`follower`},{name:`o1zich`,createdAt:`2024-04-22T16:23:26.139Z`,type:`follower`},{name:`nearbuziky`,createdAt:`2024-04-19T19:21:27.569Z`,type:`follower`},{name:`samirkasamsa`,createdAt:`2024-04-19T17:06:38.963Z`,type:`follower`},{name:`flip1mip`,createdAt:`2024-04-19T17:06:18.276Z`,type:`follower`},{name:`valerie_solo`,createdAt:`2024-04-19T17:06:07.473Z`,type:`follower`},{name:`sxaelence`,createdAt:`2024-04-19T07:06:46.330Z`,type:`follower`},{name:`avokadik99`,createdAt:`2024-04-17T16:11:29.604Z`,type:`follower`},{name:`blackvoronstream`,createdAt:`2024-04-16T21:29:33.306Z`,type:`follower`},{name:`baldejniyy`,createdAt:`2024-04-16T21:29:09.647Z`,type:`follower`},{name:`p3ch4n_ka`,createdAt:`2024-04-16T16:37:31.841Z`,type:`follower`},{name:`kakosik_bee`,createdAt:`2024-04-16T15:56:27.435Z`,type:`follower`},{name:`hikotoru`,createdAt:`2024-04-16T15:13:25.226Z`,type:`follower`},{name:`agnascor2`,amount:6,createdAt:`2026-01-12T23:08:21.815Z`,type:`raid`},{name:`justduckomgg`,amount:7,createdAt:`2024-04-19T17:05:53.185Z`,type:`raid`},{name:`veessmk`,amount:6,createdAt:`2024-04-17T15:40:43.945Z`,type:`raid`},{name:`night_sculptor`,amount:12,createdAt:`2024-04-16T18:07:40.040Z`,type:`raid`},{name:`pixiemays`,amount:6,createdAt:`2024-04-16T16:37:24.433Z`,type:`raid`},{name:`night_sculptor`,amount:8,createdAt:`2024-04-14T18:31:20.049Z`,type:`raid`},{name:`pixiemays`,amount:19,createdAt:`2024-04-14T13:22:05.794Z`,type:`raid`},{name:`pixiemays`,amount:15,createdAt:`2024-04-12T17:03:36.115Z`,type:`raid`},{name:`alechkavt`,amount:9,createdAt:`2024-04-11T17:54:47.691Z`,type:`raid`},{name:`pixiemays`,amount:8,createdAt:`2024-04-11T14:10:49.548Z`,type:`raid`},{name:`night_sculptor`,amount:22,createdAt:`2024-04-09T16:13:41.195Z`,type:`raid`},{name:`pixiemays`,amount:5,createdAt:`2024-04-08T09:54:01.603Z`,type:`raid`},{name:`aki_neki`,amount:5,createdAt:`2024-04-07T21:52:45.919Z`,type:`raid`},{name:`alechkavt`,amount:11,createdAt:`2024-04-07T18:59:39.286Z`,type:`raid`},{name:`veessmk`,amount:15,createdAt:`2024-04-07T16:13:25.172Z`,type:`raid`},{name:`veessmk`,amount:10,createdAt:`2024-03-17T16:11:38.631Z`,type:`raid`}],currency:{code:`USD`,name:`U.S. Dollar`,symbol:`$`},channel:{username:`encry_s`,apiToken:`HAHANOTNOW`,id:`65ba7503dc0415cb368947b1`,providerId:`485678132`,avatar:`https://static-cdn.jtvnw.net/jtv_user_pictures/6fe93724-803a-4e5a-b58a-1d42fbc84661-profile_image-300x300.jpeg`},fieldData:{testMessageButton:`zaytri_dynamicchatbubbles`,previewMode:!1,previewType:`random`,previewMessage:``,theme:`animal-crossing`,corner:`round`,darkMode:!1,highlightStyle:`normal`,actionStyle:`italics`,maxWidth:400,maxHeight:300,fixedWidth:!1,positionMode:`list`,listDirection:`bottom`,listAlignment:`center`,topEdge:!0,bottomEdge:!0,leftEdge:!0,rightEdge:!0,edgeDeviation:0,padding:30,animation:`dynamic`,dynamicModifier:1.75,maxMessages:25,hideOutOfBounds:!0,lifetime:0,delay:1,googleFont:`Nunito`,customFont:``,fontSize:18,fontWeight:`bold`,textDirection:`ltr`,useCustomBorderColors:!0,borderColor:`#fed400`,nameColor:`#000000`,useCustomMessageColors:!0,backgroundColor:`#fff3c0`,textColor:`#000000`,pronounsMode:`suffix`,pronounsLowercase:!0,pronounsBadgeCustomColors:!1,pronounsBadgeBackgroundColor:`#000000`,pronounsBadgeBorderColor:`#FFFFFF`,pronounsBadgeTextColor:`#FFFFFF`,showBadges:!0,largeEmotes:!0,ffzGlobal:!1,bttvGlobal:!1,emoteOnly:!1,highlightOnly:!1,allowedStrings:[],minMessages:0,messageCooldown:0,raidCooldown:0,raidMin:0,includeEveryone:!0,includeFollowers:`true`,minFollowTime:1,includeSubs:!0,includeVIPs:!0,includeMods:!0,allowUserList:[],ignoreUserList:[`StreamElements`,`Streamlabs`,`Nightbot`,`Sery_Bot`],ignorePrefixList:[`!`],volume:50,soundGroup1:[],userLevelSoundGroup1:`everyone`,specificUsersSoundGroup1:[],messageTypeSoundGroup1:`all`,soundGroup2:[],userLevelSoundGroup2:`everyone`,specificUsersSoundGroup2:[],messageTypeSoundGroup2:`all`,soundGroup3:[],userLevelSoundGroup3:`everyone`,specificUsersSoundGroup3:[],messageTypeSoundGroup3:`all`,soundGroup4:[],userLevelSoundGroup4:`everyone`,specificUsersSoundGroup4:[],messageTypeSoundGroup4:`all`,soundGroup5:[],userLevelSoundGroup5:`everyone`,specificUsersSoundGroup5:[],messageTypeSoundGroup5:`all`,soundGroup6:[],userLevelSoundGroup6:`everyone`,specificUsersSoundGroup6:[],messageTypeSoundGroup6:`all`,soundGroup7:[],userLevelSoundGroup7:`everyone`,specificUsersSoundGroup7:[],messageTypeSoundGroup7:`all`,soundGroup8:[],userLevelSoundGroup8:`everyone`,specificUsersSoundGroup8:[],messageTypeSoundGroup8:`all`,soundGroup9:[],userLevelSoundGroup9:`everyone`,specificUsersSoundGroup9:[],messageTypeSoundGroup9:`all`,soundGroup10:[],userLevelSoundGroup10:`everyone`,specificUsersSoundGroup10:[],messageTypeSoundGroup10:`all`,widgetName:`Chat Bubbles`,widgetAuthor:`Zaytri`,widgetVersion:`2.12.0`,widgetUpdateUrl:`https://github.com/zaytri/stream-elements-widgets/blob/main/DynamicChatBubbles`,ignoreFirst:!0},overlay:{isEditorMode:!0,muted:!1}},f={follower:{listener:`follower-latest`,event:{name:`An1by`}},communityGiftAnonymous:{listener:`event`,event:{type:`communityGiftPurchase`,provider:`twitch`,channel:`663b10ba6cd449c4162a2230`,activityGroup:`41a50a915794e4ae7cf5e600fd3445d4`,data:{amount:2,username:`anonymous`,displayName:`AnAnonymousGifter`,tier:`2000`,sender:`Anonymous`},_id:`699868d7df734989ec85d393`,activityId:`699868d7df734989ec85d393`}},communityGift:{listener:`event`,event:{type:`communityGiftPurchase`,provider:`twitch`,channel:`663b10ba6cd449c4162a2230`,activityGroup:`841592c0bccbf3e1e7de71e1c8f4d9f0`,data:{amount:1,username:`rishamon`,displayName:`rishamon`,tier:`1000`,sender:`rishamon`},_id:`699867c7fef23197a6a089f5`,activityId:`699867c7fef23197a6a089f5`}},sub:{listener:`subscriber-latest`,event:{name:`An1by`,amount:1}},selfSub:{listener:`event`,event:{type:`subscriber`,provider:`twitch`,channel:`663b10ba6cd449c4162a2230`,data:{amount:1,username:`rishamon`,displayName:`rishamon`,tier:`1000`},_id:`6998676317aed69e62b8f283`,activityId:`6998676317aed69e62b8f283`}},soloSubToSomeone:{listener:`event`,event:{type:`subscriber`,provider:`twitch`,channel:`663b10ba6cd449c4162a2230`,data:{amount:1,username:`encry_s`,displayName:`encry_s`,message:`rishamon gifted a Tier 1 sub to encry_s! This is their first Gift Sub in the channel!`,tier:`1000`,sender:`rishamon`,gifted:!0},_id:`699866e82d9cd9a70854baf2`,activityId:`699866e82d9cd9a70854baf2`}},subRenewal:{listener:`event`,event:{type:`subscriber`,provider:`twitch`,channel:`663b10ba6cd449c4162a2230`,data:{amount:8,username:`silgestian`,displayName:`SilgeStian`,tier:`1000`},_id:`69986dfaf25724ff4162bd1a`,activityId:`69986dfaf25724ff4162bd1a`}},bits:{listener:`cheer-latest`,event:{name:`An1by`,amount:30}},raid:{listener:`raid-latest`,event:{name:`An1by`,amount:50}},donationShortText:{listener:`donation`,event:{data:{alert_type:`1`,currency:`RUB`,billing_system:`CARD`,id:5,amount_main:500,amount:500,username:`An1by`,message:`Simple message text`}}},donationLongText:{listener:`donation`,event:{data:{alert_type:`1`,currency:`RUB`,billing_system:`CARD`,id:5,amount_main:500,amount:500,username:`An1by`,message:`A plain gray stone lay on the shore, basking in the sun's warmth. A shove broke its peace—a thoughtless toss sent it flying. The stone splashed into water. Ripples spread, yet none noticed. It sank to the bottom, heavy with loneliness. "Didn't I deserve to stay where I was happy still?" it wondered.`}}},donation:{listener:`donation`,event:{data:{alert_type:`1`,currency:`RUB`,billing_system:`CARD`,id:5,amount_main:500,amount:500,username:`An1by`,message:``}}}},p={zeroWidthEmotesInRow:{listener:`message`,event:{service:`twitch`,data:{time:1768317417111,tags:{"badge-info":`subscriber/23`,badges:`broadcaster/1,subscriber/0`,"client-nonce":`f70c4cd8b6034d1f805298246ee1bc35`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`5f752ae3-4be9-4f93-82d1-d78575ba07fd`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1768317416862`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`}],channel:`an1by`,text:`Censored Censored Censored emotes in row`,isAction:!1,emotes:[{type:`7tv`,name:`Censored`,id:`01GC2KBETR0009QMKQRDSHDTVB`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp`,2:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp`,3:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/3x.webp`,4:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp`},start:0,end:8},{type:`7tv`,name:`Censored`,id:`01GC2KBETR0009QMKQRDSHDTVB`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp`,2:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp`,3:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/3x.webp`,4:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp`},start:9,end:17},{type:`7tv`,name:`Censored`,id:`01GC2KBETR0009QMKQRDSHDTVB`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp`,2:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp`,3:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/3x.webp`,4:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp`},start:18,end:26}],msgId:`5f752ae3-4be9-4f93-82d1-d78575ba07fd`},renderedText:`<img src="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp" srcset="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp 1x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp 2x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp 4x" title="Censored" class="emote"><img src="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp" srcset="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp 1x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp 2x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp 4x" title="Censored" class="emote"><img src="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp" srcset="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp 1x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp 2x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp 4x" title="Censored" class="emote">emotes in row`}},zeroWidthEmoteInMiddle:{listener:`message`,event:{service:`twitch`,data:{time:1768317383248,tags:{"badge-info":`subscriber/23`,badges:`broadcaster/1,subscriber/0`,"client-nonce":`847f9c27722340d090eddcb0d0662b5b`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`3dea1e1e-89f7-4a5f-b743-13ba0386492f`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1768317382987`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`}],channel:`an1by`,text:`text and Censored emote`,isAction:!1,emotes:[{type:`7tv`,name:`Censored`,id:`01GC2KBETR0009QMKQRDSHDTVB`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp`,2:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp`,3:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/3x.webp`,4:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp`},start:9,end:17}],msgId:`3dea1e1e-89f7-4a5f-b743-13ba0386492f`},renderedText:`text and <img src="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp" srcset="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp 1x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp 2x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp 4x" title="Censored" class="emote">emote`}},zeroWidthEmoteFirst:{listener:`message`,event:{service:`twitch`,data:{time:1768317236883,tags:{"badge-info":`subscriber/23`,badges:`broadcaster/1,subscriber/0`,"client-nonce":`e9d0621827184c1b940fd700ae599d60`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`6f347337-354a-42e5-bab0-935e19d74152`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1768317236625`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`}],channel:`an1by`,text:`Censored <- zeroWidth emote on the first place`,isAction:!1,emotes:[{type:`7tv`,name:`Censored`,id:`01GC2KBETR0009QMKQRDSHDTVB`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp`,2:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp`,3:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/3x.webp`,4:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp`},start:0,end:8}],msgId:`6f347337-354a-42e5-bab0-935e19d74152`},renderedText:`<img src="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp" srcset="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp 1x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp 2x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp 4x" title="Censored" class="emote"><- zeroWidth emote on the first place`}},veryShort:{listener:`message`,event:{service:`twitch`,data:{time:1749743750546,tags:{"badge-info":``,badges:``,"client-nonce":`a3fe71a5771d0c31466dd333c963231e`,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`3d0d1a43-45e5-4652-be59-0b31dfeba796`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749743749437`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`IHaveVeryBigNickname`,userId:`958683839`,displayName:`IHaveVeryBigNickname`,displayColor:``,badges:[],channel:`IHaveVeryBigNickname`,text:`A!`,isAction:!1,emotes:[],msgId:`3d0d1a43-45e5-4652-be59-0b31dfeba796`},renderedText:`A!`}},viewer:{listener:`message`,event:{service:`twitch`,data:{time:1749743750546,tags:{"badge-info":``,badges:``,"client-nonce":`a3fe71a5771d0c31466dd333c963231e`,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`3d0d1a43-45e5-4652-be59-0b31dfeba796`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749743749437`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`SimpleViewer`,userId:`958683839`,displayName:`SimpleViewer`,displayColor:``,badges:[],channel:`SimpleViewer`,text:`I finally finished it...`,isAction:!1,emotes:[],msgId:`3d0d1a43-45e5-4652-be59-0b31dfeba796`},renderedText:`I finally finished it...`}},vip:{listener:`message`,event:{service:`twitch`,data:{time:1749743844261,tags:{"badge-info":``,badges:`vip/1`,"client-nonce":`fd72ba163a9cc1a6486b2eddb0f5d893`,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`51cac44b-9908-49d2-b424-489276e1e521`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749743843170`,turbo:`0`,"user-id":`958683839`,"user-type":``,vip:`1`},nick:`VipPersona`,userId:`958683839`,displayName:`VipPersona`,displayColor:``,badges:[{type:`vip`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/b817aba4-fad8-49e2-b88a-7cc744dfa6ec/3`,description:`VIP`}],channel:`VipPersona`,text:`I am a VIP persona!`,isAction:!1,emotes:[],msgId:`51cac44b-9908-49d2-b424-489276e1e521`},renderedText:`I am a VIP persona!`}},vipLong:{listener:`message`,event:{service:`twitch`,data:{time:1749743844261,tags:{"badge-info":``,badges:`vip/1`,"client-nonce":`fd72ba163a9cc1a6486b2eddb0f5d893`,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`51cac44b-9908-49d2-b424-489276e1e521`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749743843170`,turbo:`0`,"user-id":`958683839`,"user-type":``,vip:`1`},nick:`VipPersona`,userId:`958683839`,displayName:`VipPersona`,displayColor:``,badges:[{type:`vip`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/b817aba4-fad8-49e2-b88a-7cc744dfa6ec/3`,description:`VIP`}],channel:`VipPersona`,text:`I am a VIP persona! Are you see this?`,isAction:!1,emotes:[],msgId:`51cac44b-9908-49d2-b424-489276e1e521`},renderedText:`I am a VIP persona! Are you see this?`}},artist:{listener:`message`,event:{service:`twitch`,data:{time:1749743916482,tags:{"badge-info":``,badges:`artist-badge/1`,"client-nonce":`54128d734d44e28ffc32e1ce236993f5`,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`8ee7e71a-3608-486a-bd82-a82b65982ca7`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749743915371`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`StarArtist`,userId:`958683839`,displayName:`StarArtist`,displayColor:``,badges:[{type:`artist-badge`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/4300a897-03dc-4e83-8c0e-c332fee7057f/3`,description:`Artist`}],channel:`StarArtist`,text:`Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.`,isAction:!1,emotes:[],msgId:`8ee7e71a-3608-486a-bd82-a82b65982ca7`},renderedText:`Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.`}},subscriber:{listener:`message`,event:{data:{tags:{badges:`subscriber/1`,color:`#ff69b4`,vip:`0`,subscriber:`1`,"user-id":`100135110`,"user-type":`subscriber`},nick:`YourSub`,userId:`100135110`,displayName:`YourSub`,displayColor:`#ff69b4`,badges:[{type:`partner`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/d12a2e27-16f6-41d0-ab77-b780518f00a3/3`,description:`Verified`}],text:`This is a subscriber's test message. I'm just a subscriber, srsly.`,emotes:[],msgId:`43285909-412c-4eee-b80d-89f1482ba53142`},renderedText:`This is a subscriber's test message. I'm just a subscriber, srsly.`}},founder:{listener:`message`,event:{service:`twitch`,data:{time:1749743750546,tags:{"badge-info":``,badges:`founder/1,subscriber/1`,"client-nonce":`a3fe71a5771d0c31466dd333c963231e`,color:``,"display-name":`sub__founder`,emotes:``,"first-msg":`0`,flags:``,id:`3d0d1a43-45e5-4652-be59-0b31dfeba796`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1749743749437`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`sub__founder`,userId:`958683839`,displayName:`sub__founder`,displayColor:``,badges:[{type:`founder`}],channel:`an1by`,text:`I finally finished it...`,isAction:!1,emotes:[],msgId:`3d0d1a43-45e5-4652-be59-0b31dfeba796`},renderedText:`I finally finished it...`}},moderator:{listener:`message`,event:{service:`twitch`,data:{time:1749743997223,tags:{"badge-info":``,badges:`moderator/1`,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`3e7ba532-f181-4bcc-90f1-a3c48ca3c820`,mod:`1`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749743996136`,turbo:`0`,"user-id":`958683839`,"user-type":`mod`},nick:`mediator`,userId:`958683839`,displayName:`mediator`,displayColor:``,badges:[{type:`moderator`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/3267646d-33f0-4b17-b3df-f923a41db1d0/3`,description:`Moderator`}],channel:`mediator`,text:`Did someone say... MODERATOR!?`,isAction:!1,emotes:[],msgId:`3e7ba532-f181-4bcc-90f1-a3c48ca3c820`},renderedText:`Did someone say... MODERATOR!?`}},moderatorLong:{listener:`message`,event:{service:`twitch`,data:{time:1749743997223,tags:{"badge-info":``,badges:`moderator/1`,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`3e7ba532-f181-4bcc-90f1-a3c48ca3c820`,mod:`1`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749743996136`,turbo:`0`,"user-id":`958683839`,"user-type":`mod`},nick:`mediator`,userId:`958683839`,displayName:`mediator`,displayColor:``,badges:[{type:`moderator`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/3267646d-33f0-4b17-b3df-f923a41db1d0/3`,description:`Moderator`}],channel:`mediator`,text:`Did someone say... MODERATOR!? Yes, I am moderator!`,isAction:!1,emotes:[],msgId:`3e7ba532-f181-4bcc-90f1-a3c48ca3c820`},renderedText:`Did someone say... MODERATOR!? Yes, I am moderator!`}},broadcaster:{listener:`message`,event:{service:`twitch`,data:{time:1749744800809,tags:{"badge-info":`subscriber/16`,badges:`broadcaster/1,subscriber/0,minecraft-15th-anniversary-celebration/1`,"client-nonce":`6989104421ee14c0a8c216ef1c6bb5ed`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`35a9bea7-076e-4d17-8cb7-7e65c8111b3d`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1749744799706`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`},{type:`minecraft-15th-anniversary-celebration`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/178077b2-8b86-4f8d-927c-66ed6c1b025f/3`,description:`Minecraft 15th Anniversary Celebration`}],channel:`an1by`,text:`I made this chat Besplatno`,isAction:!1,emotes:[{type:`7tv`,name:`Besplatno`,id:`01FE70VRT00009TR6M9N941A28`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/1x.webp`,2:`https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/2x.webp`,3:`https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/3x.webp`,4:`https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/4x.webp`},start:17,end:26}],msgId:`35a9bea7-076e-4d17-8cb7-7e65c8111b3d`},renderedText:`I made this chat <img src="https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/1x.webp" srcset="https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/1x.webp 1x, https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/2x.webp 2x, https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/4x.webp 4x" title="Besplatno" class="emote">`}},broadcasterShort:{listener:`message`,event:{service:`twitch`,data:{time:1749744800809,tags:{"badge-info":`subscriber/16`,badges:`broadcaster/1,subscriber/0,minecraft-15th-anniversary-celebration/1`,"client-nonce":`6989104421ee14c0a8c216ef1c6bb5ed`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`35a9bea7-076e-4d17-8cb7-7e65c8111b3d`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1749744799706`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`},{type:`minecraft-15th-anniversary-celebration`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/178077b2-8b86-4f8d-927c-66ed6c1b025f/3`,description:`Minecraft 15th Anniversary Celebration`}],channel:`an1by`,text:`okak`,isAction:!1,emotes:[],msgId:`35a9bea7-076e-4d17-8cb7-7e65c8111b3d`},renderedText:`I made this chat <img src="https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/1x.webp" srcset="https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/1x.webp 1x, https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/2x.webp 2x, https://cdn.7tv.app/emote/01FE70VRT00009TR6M9N941A28/4x.webp 4x" title="Besplatno" class="emote">`}},emoteSolo:{listener:`message`,event:{service:`twitch`,data:{time:1749744097330,tags:{"badge-info":``,badges:``,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`9ab645b9-7c27-4c6f-99fd-f63727ca3700`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749744096217`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`tr0l1`,userId:`958683839`,displayName:`tr0l1`,displayColor:``,badges:[],channel:`tr0l1`,text:`🤤😮💀👈👉`,isAction:!1,emotes:[{type:`emoji`,name:`1f62e`,id:`1f62e`,gif:!1,urls:{1:`https://twemoji.maxcdn.com/36x36/1f62e.png`}},{type:`emoji`,name:`1f480`,id:`1f480`,gif:!1,urls:{1:`https://twemoji.maxcdn.com/36x36/1f480.png`}},{type:`emoji`,name:`1f448`,id:`1f448`,gif:!1,urls:{1:`https://twemoji.maxcdn.com/36x36/1f448.png`}},{type:`emoji`,name:`1f449`,id:`1f449`,gif:!1,urls:{1:`https://twemoji.maxcdn.com/36x36/1f449.png`}}],msgId:`9ab645b9-7c27-4c6f-99fd-f63727ca3700`},renderedText:`🤤😮💀👈👉`}},emoteOne:{listener:`message`,event:{service:`twitch`,data:{time:1749744131183,tags:{"badge-info":``,badges:``,color:``,"display-name":`An1by`,emotes:`41:20-27/245:29-43/28087:45-51/58765:53-63/555555584:65-66/64138:10-18`,"first-msg":`0`,flags:``,id:`beb957ea-dfbd-4184-82a3-458121f44867`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749744130018`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`tr0l1`,userId:`958683839`,displayName:`tr0l1`,displayColor:``,badges:[],channel:`tr0l1`,text:`SeemsGood`,isAction:!1,emotes:[{type:`twitch`,name:`SeemsGood`,id:`64138`,gif:!1,animated:!1,urls:{1:`https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/1.0`,2:`https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/2.0`,4:`https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/3.0`},start:0,end:9}],msgId:`beb957ea-dfbd-4184-82a3-458121f44867`},renderedText:`<img src="https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/1.0" srcset="https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/1.0 1x, https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/2.0 2x, https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/3.0 4x" title="SeemsGood" class="emote">`}},emoteText:{listener:`message`,event:{service:`twitch`,data:{time:1749744131183,tags:{"badge-info":``,badges:``,color:``,"display-name":`7TVUser`,emotes:`41:20-27/245:29-43/28087:45-51/58765:53-63/555555584:65-66/64138:10-18`,"first-msg":`0`,flags:``,id:`beb957ea-dfbd-4184-82a3-458121f44867`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749744130018`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`7TVUser`,userId:`958683839`,displayName:`7TVUser`,displayColor:``,badges:[],channel:`7TVUser`,text:`Not emote SeemsGood Kreygasm ResidentSleeper WutFace NotLikeThis <3`,isAction:!1,emotes:[{type:`twitch`,name:`SeemsGood`,id:`64138`,gif:!1,animated:!1,urls:{1:`https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/1.0`,2:`https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/2.0`,4:`https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/3.0`},start:10,end:19},{type:`twitch`,name:`Kreygasm`,id:`41`,gif:!1,animated:!1,urls:{1:`https://static-cdn.jtvnw.net/emoticons/v2/41/static/dark/1.0`,2:`https://static-cdn.jtvnw.net/emoticons/v2/41/static/dark/2.0`,4:`https://static-cdn.jtvnw.net/emoticons/v2/41/static/dark/3.0`},start:20,end:28},{type:`twitch`,name:`ResidentSleeper`,id:`245`,gif:!1,animated:!1,urls:{1:`https://static-cdn.jtvnw.net/emoticons/v2/245/static/dark/1.0`,2:`https://static-cdn.jtvnw.net/emoticons/v2/245/static/dark/2.0`,4:`https://static-cdn.jtvnw.net/emoticons/v2/245/static/dark/3.0`},start:29,end:44},{type:`twitch`,name:`WutFace`,id:`28087`,gif:!1,animated:!1,urls:{1:`https://static-cdn.jtvnw.net/emoticons/v2/28087/static/dark/1.0`,2:`https://static-cdn.jtvnw.net/emoticons/v2/28087/static/dark/2.0`,4:`https://static-cdn.jtvnw.net/emoticons/v2/28087/static/dark/3.0`},start:45,end:52},{type:`twitch`,name:`NotLikeThis`,id:`58765`,gif:!1,animated:!1,urls:{1:`https://static-cdn.jtvnw.net/emoticons/v2/58765/static/dark/1.0`,2:`https://static-cdn.jtvnw.net/emoticons/v2/58765/static/dark/2.0`,4:`https://static-cdn.jtvnw.net/emoticons/v2/58765/static/dark/3.0`},start:53,end:64},{type:`twitch`,name:`<3`,id:`9`,gif:!1,animated:!1,urls:{1:`https://static-cdn.jtvnw.net/emoticons/v2/9/static/dark/1.0`,2:`https://static-cdn.jtvnw.net/emoticons/v2/9/static/dark/2.0`,4:`https://static-cdn.jtvnw.net/emoticons/v2/9/static/dark/3.0`},start:65,end:67}],msgId:`beb957ea-dfbd-4184-82a3-458121f44867`},renderedText:`Not emote <img src="https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/1.0" srcset="https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/1.0 1x, https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/2.0 2x, https://static-cdn.jtvnw.net/emoticons/v2/64138/static/dark/3.0 4x" title="SeemsGood" class="emote"><img src="https://static-cdn.jtvnw.net/emoticons/v2/41/static/dark/1.0" srcset="https://static-cdn.jtvnw.net/emoticons/v2/41/static/dark/1.0 1x, https://static-cdn.jtvnw.net/emoticons/v2/41/static/dark/2.0 2x, https://static-cdn.jtvnw.net/emoticons/v2/41/static/dark/3.0 4x" title="Kreygasm" class="emote"><img src="https://static-cdn.jtvnw.net/emoticons/v2/245/static/dark/1.0" srcset="https://static-cdn.jtvnw.net/emoticons/v2/245/static/dark/1.0 1x, https://static-cdn.jtvnw.net/emoticons/v2/245/static/dark/2.0 2x, https://static-cdn.jtvnw.net/emoticons/v2/245/static/dark/3.0 4x" title="ResidentSleeper" class="emote"><img src="https://static-cdn.jtvnw.net/emoticons/v2/28087/static/dark/1.0" srcset="https://static-cdn.jtvnw.net/emoticons/v2/28087/static/dark/1.0 1x, https://static-cdn.jtvnw.net/emoticons/v2/28087/static/dark/2.0 2x, https://static-cdn.jtvnw.net/emoticons/v2/28087/static/dark/3.0 4x" title="WutFace" class="emote"><img src="https://static-cdn.jtvnw.net/emoticons/v2/58765/static/dark/1.0" srcset="https://static-cdn.jtvnw.net/emoticons/v2/58765/static/dark/1.0 1x, https://static-cdn.jtvnw.net/emoticons/v2/58765/static/dark/2.0 2x, https://static-cdn.jtvnw.net/emoticons/v2/58765/static/dark/3.0 4x" title="NotLikeThis" class="emote"><img src="https://static-cdn.jtvnw.net/emoticons/v2/9/static/dark/1.0" srcset="https://static-cdn.jtvnw.net/emoticons/v2/9/static/dark/1.0 1x, https://static-cdn.jtvnw.net/emoticons/v2/9/static/dark/2.0 2x, https://static-cdn.jtvnw.net/emoticons/v2/9/static/dark/3.0 4x" title="<3" class="emote">`}},zeroWidthEmotes:{listener:`message`,event:{service:`twitch`,data:{time:1759956619137,tags:{"badge-info":`subscriber/20`,badges:``,"client-nonce":`f7b17aea5c07c5c08fd920278fb52b5a`,color:`#DAA520`,"display-name":`7TVUser`,emotes:``,"first-msg":`0`,flags:``,id:`b44d1c53-1de9-454c-a269-bd8849cbcd2d`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1759956618295`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`7TVUser`,userId:`958683839`,displayName:`7TVUser`,displayColor:`#DAA520`,badges:[{type:`minecraft-15th-anniversary-celebration`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/178077b2-8b86-4f8d-927c-66ed6c1b025f/3`,description:`Minecraft 15th Anniversary Celebration`}],channel:`7TVUser`,text:`Zero-width emotes AYAYA PETPET right there!!`,isAction:!1,emotes:[{type:`7tv`,name:`AYAYA`,id:`01GB32XE6R00018VJGJ4A9BNCV`,gif:!1,animated:!1,urls:{1:`https://cdn.7tv.app/emote/01GB32XE6R00018VJGJ4A9BNCV/1x.webp`,2:`https://cdn.7tv.app/emote/01GB32XE6R00018VJGJ4A9BNCV/2x.webp`,3:`https://cdn.7tv.app/emote/01GB32XE6R00018VJGJ4A9BNCV/3x.webp`,4:`https://cdn.7tv.app/emote/01GB32XE6R00018VJGJ4A9BNCV/4x.webp`},start:18,end:23},{type:`7tv`,name:`PETPET`,id:`01FE3XY508000AA32JP519W2EW`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01FE3XY508000AA32JP519W2EW/1x.webp`,2:`https://cdn.7tv.app/emote/01FE3XY508000AA32JP519W2EW/2x.webp`,3:`https://cdn.7tv.app/emote/01FE3XY508000AA32JP519W2EW/3x.webp`,4:`https://cdn.7tv.app/emote/01FE3XY508000AA32JP519W2EW/4x.webp`},start:24,end:30}],msgId:`b44d1c53-1de9-454c-a269-bd8849cbcd2d`},renderedText:`Zero-width emotes <img src="https://cdn.7tv.app/emote/01GB32XE6R00018VJGJ4A9BNCV/1x.webp" srcset="https://cdn.7tv.app/emote/01GB32XE6R00018VJGJ4A9BNCV/1x.webp 1x, https://cdn.7tv.app/emote/01GB32XE6R00018VJGJ4A9BNCV/2x.webp 2x, https://cdn.7tv.app/emote/01GB32XE6R00018VJGJ4A9BNCV/4x.webp 4x" title="AYAYA" class="emote"><img src="https://cdn.7tv.app/emote/01FE3XY508000AA32JP519W2EW/1x.webp" srcset="https://cdn.7tv.app/emote/01FE3XY508000AA32JP519W2EW/1x.webp 1x, https://cdn.7tv.app/emote/01FE3XY508000AA32JP519W2EW/2x.webp 2x, https://cdn.7tv.app/emote/01FE3XY508000AA32JP519W2EW/4x.webp 4x" title="PETPET" class="emote">right there!!`}},sevenTv:{listener:`message`,event:{service:`twitch`,data:{time:1749744413746,tags:{"badge-info":``,badges:``,"client-nonce":`2bd56e3c058b5a4fc4e46c3e369891e6`,color:``,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`4c71789c-8c02-4e25-a71f-3a7d0ef19a33`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`0`,"tmi-sent-ts":`1749744412641`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`tr0l1`,userId:`958683839`,displayName:`tr0l1`,displayColor:``,badges:[],channel:`tr0l1`,text:`ало ало Инса Каори Hello everyone! Hello everyone! Hello everyone!Hello everyone! Hello everyone! Hello everyone! Hello everyone! Hello everyone!`,isAction:!1,emotes:[{type:`7tv`,name:`ало`,id:`01F6PRA3N80003BH8AEY9DWKDQ`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/1x.webp`,2:`https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/2x.webp`,3:`https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/3x.webp`,4:`https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/4x.webp`},start:0,end:3},{type:`7tv`,name:`ало`,id:`01F6PRA3N80003BH8AEY9DWKDQ`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/1x.webp`,2:`https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/2x.webp`,3:`https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/3x.webp`,4:`https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/4x.webp`},start:4,end:7},{type:`7tv`,name:`Инса`,id:`01JRE4VRRXWF0922HA3F9BZG6M`,gif:!1,animated:!1,urls:{1:`https://cdn.7tv.app/emote/01JRE4VRRXWF0922HA3F9BZG6M/1x.webp`,2:`https://cdn.7tv.app/emote/01JRE4VRRXWF0922HA3F9BZG6M/2x.webp`,3:`https://cdn.7tv.app/emote/01JRE4VRRXWF0922HA3F9BZG6M/3x.webp`,4:`https://cdn.7tv.app/emote/01JRE4VRRXWF0922HA3F9BZG6M/4x.webp`},start:8,end:12},{type:`7tv`,name:`Каори`,id:`01GY6TCEFG000BGHWA5T6NGBRA`,gif:!1,animated:!1,urls:{1:`https://cdn.7tv.app/emote/01GY6TCEFG000BGHWA5T6NGBRA/1x.webp`,2:`https://cdn.7tv.app/emote/01GY6TCEFG000BGHWA5T6NGBRA/2x.webp`,3:`https://cdn.7tv.app/emote/01GY6TCEFG000BGHWA5T6NGBRA/3x.webp`,4:`https://cdn.7tv.app/emote/01GY6TCEFG000BGHWA5T6NGBRA/4x.webp`},start:13,end:18}],msgId:`4c71789c-8c02-4e25-a71f-3a7d0ef19a33`},renderedText:`<img src="https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/1x.webp" srcset="https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/1x.webp 1x, https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/2x.webp 2x, https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/4x.webp 4x" title="ало" class="emote"><img src="https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/1x.webp" srcset="https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/1x.webp 1x, https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/2x.webp 2x, https://cdn.7tv.app/emote/01F6PRA3N80003BH8AEY9DWKDQ/4x.webp 4x" title="ало" class="emote"><img src="https://cdn.7tv.app/emote/01JRE4VRRXWF0922HA3F9BZG6M/1x.webp" srcset="https://cdn.7tv.app/emote/01JRE4VRRXWF0922HA3F9BZG6M/1x.webp 1x, https://cdn.7tv.app/emote/01JRE4VRRXWF0922HA3F9BZG6M/2x.webp 2x, https://cdn.7tv.app/emote/01JRE4VRRXWF0922HA3F9BZG6M/4x.webp 4x" title="Инса" class="emote"><img src="https://cdn.7tv.app/emote/01GY6TCEFG000BGHWA5T6NGBRA/1x.webp" srcset="https://cdn.7tv.app/emote/01GY6TCEFG000BGHWA5T6NGBRA/1x.webp 1x, https://cdn.7tv.app/emote/01GY6TCEFG000BGHWA5T6NGBRA/2x.webp 2x, https://cdn.7tv.app/emote/01GY6TCEFG000BGHWA5T6NGBRA/4x.webp 4x" title="Каори" class="emote">Hello everyone!`}},sevenTvSolo:{listener:`message`,event:{service:`twitch`,data:{time:1768321684253,tags:{"badge-info":`subscriber/23`,badges:`broadcaster/1,subscriber/0`,"client-nonce":`51cc77206bf346eda20774b75aac675d`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`e30a02bf-a3c7-40f2-9325-cdc2690d3631`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1768321684074`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`}],channel:`an1by`,text:`DurkaDance ͏`,isAction:!1,emotes:[{type:`7tv`,name:`DurkaDance`,id:`01JQBC7K2FX7HE4SFZFJEN6CWY`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01JQBC7K2FX7HE4SFZFJEN6CWY/1x.webp`,2:`https://cdn.7tv.app/emote/01JQBC7K2FX7HE4SFZFJEN6CWY/2x.webp`,3:`https://cdn.7tv.app/emote/01JQBC7K2FX7HE4SFZFJEN6CWY/3x.webp`,4:`https://cdn.7tv.app/emote/01JQBC7K2FX7HE4SFZFJEN6CWY/4x.webp`},start:0,end:10}],msgId:`e30a02bf-a3c7-40f2-9325-cdc2690d3631`},renderedText:`<img src="https://cdn.7tv.app/emote/01JQBC7K2FX7HE4SFZFJEN6CWY/1x.webp" srcset="https://cdn.7tv.app/emote/01JQBC7K2FX7HE4SFZFJEN6CWY/1x.webp 1x, https://cdn.7tv.app/emote/01JQBC7K2FX7HE4SFZFJEN6CWY/2x.webp 2x, https://cdn.7tv.app/emote/01JQBC7K2FX7HE4SFZFJEN6CWY/4x.webp 4x" title="DurkaDance" class="emote"> ͏`}},replyToEmotes:{listener:`message`,event:{service:`twitch`,data:{time:1761442000746,tags:{"badge-info":`subscriber/21`,badges:`broadcaster/1,subscriber/0,minecraft-15th-anniversary-celebration/1`,"client-nonce":`467bc72d78248ec07dfb0602744268ca`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`9efd9377-2bd3-4c69-ace4-c21760337bab`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1761442000143`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`},{type:`minecraft-15th-anniversary-celebration`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/178077b2-8b86-4f8d-927c-66ed6c1b025f/3`,description:`Minecraft 15th Anniversary Celebration`}],channel:`an1by`,text:`AREYOUAGIRL Censored Emotes there DiscoDoge Кута`,isAction:!1,emotes:[{type:`7tv`,name:`AREYOUAGIRL`,id:`01F6N58M5R0004P7N4A9PK7KD9`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01F6N58M5R0004P7N4A9PK7KD9/1x.webp`,2:`https://cdn.7tv.app/emote/01F6N58M5R0004P7N4A9PK7KD9/2x.webp`,3:`https://cdn.7tv.app/emote/01F6N58M5R0004P7N4A9PK7KD9/3x.webp`,4:`https://cdn.7tv.app/emote/01F6N58M5R0004P7N4A9PK7KD9/4x.webp`},start:0,end:11},{type:`7tv`,name:`Censored`,id:`01GC2KBETR0009QMKQRDSHDTVB`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp`,2:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp`,3:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/3x.webp`,4:`https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp`},start:12,end:20},{type:`7tv`,name:`DiscoDoge`,id:`01F6REQR2R0006GRP49Q74YFVT`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01F6REQR2R0006GRP49Q74YFVT/1x.webp`,2:`https://cdn.7tv.app/emote/01F6REQR2R0006GRP49Q74YFVT/2x.webp`,3:`https://cdn.7tv.app/emote/01F6REQR2R0006GRP49Q74YFVT/3x.webp`,4:`https://cdn.7tv.app/emote/01F6REQR2R0006GRP49Q74YFVT/4x.webp`},start:34,end:43},{type:`7tv`,name:`Кута`,id:`01GZRXWQMR0001GP2RPRY13KD2`,gif:!0,animated:!0,urls:{1:`https://cdn.7tv.app/emote/01GZRXWQMR0001GP2RPRY13KD2/1x.webp`,2:`https://cdn.7tv.app/emote/01GZRXWQMR0001GP2RPRY13KD2/2x.webp`,3:`https://cdn.7tv.app/emote/01GZRXWQMR0001GP2RPRY13KD2/3x.webp`,4:`https://cdn.7tv.app/emote/01GZRXWQMR0001GP2RPRY13KD2/4x.webp`},start:44,end:48}],msgId:`9efd9377-2bd3-4c69-ace4-c21760337bab`},renderedText:`<img src="https://cdn.7tv.app/emote/01F6N58M5R0004P7N4A9PK7KD9/1x.webp" srcset="https://cdn.7tv.app/emote/01F6N58M5R0004P7N4A9PK7KD9/1x.webp 1x, https://cdn.7tv.app/emote/01F6N58M5R0004P7N4A9PK7KD9/2x.webp 2x, https://cdn.7tv.app/emote/01F6N58M5R0004P7N4A9PK7KD9/4x.webp 4x" title="AREYOUAGIRL" class="emote"><img src="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp" srcset="https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/1x.webp 1x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/2x.webp 2x, https://cdn.7tv.app/emote/01GC2KBETR0009QMKQRDSHDTVB/4x.webp 4x" title="Censored" class="emote">Emotes there <img src="https://cdn.7tv.app/emote/01F6REQR2R0006GRP49Q74YFVT/1x.webp" srcset="https://cdn.7tv.app/emote/01F6REQR2R0006GRP49Q74YFVT/1x.webp 1x, https://cdn.7tv.app/emote/01F6REQR2R0006GRP49Q74YFVT/2x.webp 2x, https://cdn.7tv.app/emote/01F6REQR2R0006GRP49Q74YFVT/4x.webp 4x" title="DiscoDoge" class="emote"><img src="https://cdn.7tv.app/emote/01GZRXWQMR0001GP2RPRY13KD2/1x.webp" srcset="https://cdn.7tv.app/emote/01GZRXWQMR0001GP2RPRY13KD2/1x.webp 1x, https://cdn.7tv.app/emote/01GZRXWQMR0001GP2RPRY13KD2/2x.webp 2x, https://cdn.7tv.app/emote/01GZRXWQMR0001GP2RPRY13KD2/4x.webp 4x" title="Кута" class="emote">`}},replyFromEmotes:{listener:`message`,event:{service:`twitch`,data:{time:1761442023380,tags:{"badge-info":`subscriber/21`,badges:`broadcaster/1,subscriber/0,minecraft-15th-anniversary-celebration/1`,"client-nonce":`4052e6a7ed6bb6b8836aa625170c4f7b`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`f7bed8dd-5a48-4209-8617-e1a3c0720ee4`,mod:`0`,"reply-parent-display-name":`An1by`,"reply-parent-msg-body":`AREYOUAGIRL\\sCensored\\sThere\\semotes\\sDiscoDoge\\sКута`,"reply-parent-msg-id":`9efd9377-2bd3-4c69-ace4-c21760337bab`,"reply-parent-user-id":`958683839`,"reply-parent-user-login":`an1by`,"reply-thread-parent-display-name":`An1by`,"reply-thread-parent-msg-id":`9efd9377-2bd3-4c69-ace4-c21760337bab`,"reply-thread-parent-user-id":`958683839`,"reply-thread-parent-user-login":`an1by`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1761442022738`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`},{type:`minecraft-15th-anniversary-celebration`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/178077b2-8b86-4f8d-927c-66ed6c1b025f/3`,description:`Minecraft 15th Anniversary Celebration`}],channel:`an1by`,text:`@An1by I'm replying to message with emotes agarge Looks good, am I right?`,isAction:!1,emotes:[{type:`7tv`,name:`agarge`,id:`01HTDV6DE8000B1F9GAE4NZ73B`,gif:!1,animated:!1,urls:{1:`https://cdn.7tv.app/emote/01HTDV6DE8000B1F9GAE4NZ73B/1x.webp`,2:`https://cdn.7tv.app/emote/01HTDV6DE8000B1F9GAE4NZ73B/2x.webp`,3:`https://cdn.7tv.app/emote/01HTDV6DE8000B1F9GAE4NZ73B/3x.webp`,4:`https://cdn.7tv.app/emote/01HTDV6DE8000B1F9GAE4NZ73B/4x.webp`},start:43,end:49}],msgId:`f7bed8dd-5a48-4209-8617-e1a3c0720ee4`},renderedText:`@An1by I'm replying to message with emotes <img src="https://cdn.7tv.app/emote/01HTDV6DE8000B1F9GAE4NZ73B/1x.webp" srcset="https://cdn.7tv.app/emote/01HTDV6DE8000B1F9GAE4NZ73B/1x.webp 1x, https://cdn.7tv.app/emote/01HTDV6DE8000B1F9GAE4NZ73B/2x.webp 2x, https://cdn.7tv.app/emote/01HTDV6DE8000B1F9GAE4NZ73B/4x.webp 4x" title="agarge" class="emote">Looks good, am I right?`}},replyTo:{listener:`message`,event:{service:`twitch`,data:{time:1761435519083,tags:{"badge-info":`subscriber/21`,badges:`broadcaster/1,subscriber/0,minecraft-15th-anniversary-celebration/1`,"client-nonce":`da4c68fddba7eb1be7ae2b6a44c207a2`,color:`#DAA520`,"display-name":`An1by`,emotes:``,"first-msg":`0`,flags:``,id:`794c103d-a5d5-4ce1-bcd8-98ac6717c8e7`,mod:`0`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1761435518511`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`},{type:`minecraft-15th-anniversary-celebration`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/178077b2-8b86-4f8d-927c-66ed6c1b025f/3`,description:`Minecraft 15th Anniversary Celebration`}],channel:`an1by`,text:`I'll reply to that message`,isAction:!1,emotes:[],msgId:`794c103d-a5d5-4ce1-bcd8-98ac6717c8e7`},renderedText:`I'll reply to that message`}},replyFrom:{listener:`message`,event:{service:`twitch`,data:{time:1761435541811,tags:{"badge-info":`subscriber/21`,badges:`broadcaster/1,subscriber/0,minecraft-15th-anniversary-celebration/1`,"client-nonce":`b59db94320a8a01942290c61f6a27480`,color:`#DAA520`,"display-name":`An1by`,emotes:`emotesv2_f54e2bcddf4948808b845e37dd4e08de:26-36`,"first-msg":`0`,flags:``,id:`bc101ec7-5663-4ee5-9580-536ed9a5804e`,mod:`0`,"reply-parent-display-name":`An1by`,"reply-parent-msg-body":`I'll\\sreply\\sto\\sthat\\smessage`,"reply-parent-msg-id":`794c103d-a5d5-4ce1-bcd8-98ac6717c8e7`,"reply-parent-user-id":`958683839`,"reply-parent-user-login":`an1by`,"reply-thread-parent-display-name":`An1by`,"reply-thread-parent-msg-id":`794c103d-a5d5-4ce1-bcd8-98ac6717c8e7`,"reply-thread-parent-user-id":`958683839`,"reply-thread-parent-user-login":`an1by`,"returning-chatter":`0`,"room-id":`958683839`,subscriber:`1`,"tmi-sent-ts":`1761435541217`,turbo:`0`,"user-id":`958683839`,"user-type":``},nick:`an1by`,userId:`958683839`,displayName:`An1by`,displayColor:`#DAA520`,badges:[{type:`broadcaster`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/5527c58c-fb7d-422d-b71b-f309dcb85cc1/3`,description:`Broadcaster`},{type:`subscriber`,version:`0`,url:`https://static-cdn.jtvnw.net/badges/v1/5d9f2208-5dd8-11e7-8513-2ff4adfae661/3`,description:`Subscriber`},{type:`minecraft-15th-anniversary-celebration`,version:`1`,url:`https://static-cdn.jtvnw.net/badges/v1/178077b2-8b86-4f8d-927c-66ed6c1b025f/3`,description:`Minecraft 15th Anniversary Celebration`}],channel:`an1by`,text:`@An1by Replying right now akidaKrutoi`,isAction:!1,emotes:[{type:`twitch`,name:`akidaKrutoi`,id:`emotesv2_f54e2bcddf4948808b845e37dd4e08de`,gif:!1,urls:{1:`https://static-cdn.jtvnw.net/emoticons/v2/emotesv2_f54e2bcddf4948808b845e37dd4e08de/default/dark/1.0`,2:`https://static-cdn.jtvnw.net/emoticons/v2/emotesv2_f54e2bcddf4948808b845e37dd4e08de/default/dark/2.0`,4:`https://static-cdn.jtvnw.net/emoticons/v2/emotesv2_f54e2bcddf4948808b845e37dd4e08de/default/dark/3.0`},start:26,end:36}],msgId:`bc101ec7-5663-4ee5-9580-536ed9a5804e`},renderedText:`@An1by Replying right now <img src="https://static-cdn.jtvnw.net/emoticons/v2/emotesv2_f54e2bcddf4948808b845e37dd4e08de/default/dark/1.0" srcset="https://static-cdn.jtvnw.net/emoticons/v2/emotesv2_f54e2bcddf4948808b845e37dd4e08de/default/dark/1.0 1x, https://static-cdn.jtvnw.net/emoticons/v2/emotesv2_f54e2bcddf4948808b845e37dd4e08de/default/dark/2.0 2x, https://static-cdn.jtvnw.net/emoticons/v2/emotesv2_f54e2bcddf4948808b845e37dd4e08de/default/dark/3.0 4x" title="akidaKrutoi" class="emote">`}}},m=`onEventReceived`;function h(e){if(typeof window>`u`)return;let t=p[e.startsWith(`testMessage_`)?e.replace(`testMessage_`,``):e];t&&window.dispatchEvent(new CustomEvent(m,{detail:t}))}function g(e){if(typeof window>`u`)return;let t=f[e.startsWith(`testAlert_`)?e.replace(`testAlert_`,``):e];t&&window.dispatchEvent(new CustomEvent(m,{detail:t}))}function _(e){if(!e.startsWith(`testMessage`))return null;let t=e.replace(`testMessage`,``);return t.charAt(0).toLowerCase()+t.slice(1)}function v(e){if(!e.startsWith(`testAlert`))return null;let t=e.replace(`testAlert`,``);return t.charAt(0).toLowerCase()+t.slice(1)}var y=function(e){return e.BROADCASTER=`broadcaster`,e.LEAD_MODERATOR=`lead_moderator`,e.MODERATOR=`moderator`,e.VIP=`vip`,e.ARTIST=`artist`,e.FOUNDER=`founder`,e.SUBSCRIBER=`subscriber`,e.TURBO=`turbo`,e.DEFAULT=`default`,e}({});e.AlertQueue=class{queue=[];isShowingAlert=!1;onNextAlert;constructor(e){this.onNextAlert=e}push(e){this.queue.push(e)}processNextAlert(){if(this.queue.length===0||this.isShowingAlert)return;let e=this.queue.shift();e&&(this.isShowingAlert=!0,this.onNextAlert(this,e))}},e.TwitchUserMessageData=({badges:e=[],tags:t={}})=>{let n=t=>!!e.find(e=>e.type===t),r=t.badges??``,i=t[`user-type`]??``,a=r.includes(`subscriber/1`)||t.subscriber===`1`||n(`subscriber`),o=r.includes(`founder/1`)||n(`founder`),s=r.includes(`broadcaster/1`)||n(`broadcaster`),c=t[`first-msg`]===`1`,l=t.turbo===`1`,u=t.vip===`1`||r.includes(`vip/1`)||n(`vip`),d=r.includes(`lead_moderator/1`)||n(`lead_moderator`),f=(t.mod===`1`||r.includes(`moderator/1`)||i===`mod`)&&!d||n(`moderator`),p=f||d,m=r.includes(`artist-badge/1`)||n(`artist-badge`),h=[];return s&&h.push(y.BROADCASTER),d&&h.push(y.LEAD_MODERATOR),f&&h.push(y.MODERATOR),u&&h.push(y.VIP),m&&h.push(y.ARTIST),o&&h.push(y.FOUNDER),a&&h.push(y.SUBSCRIBER),l&&h.push(y.TURBO),h.push(y.DEFAULT),{isSubscriber:a,isBroadcaster:s,isFirstMessageChatter:c,isFounder:o,isTurbo:l,isVip:u,isAnyModerator:p,isModerator:f,isLeadModerator:d,isArtist:m,roles:h,includesBadgeType:n,getSubscriberMonths:()=>{for(let e of[`badge-info`,`badges`]){let n=t[e];if(n){let e=n.match(/^subscriber\/(\d+)$/);if(e)return parseInt(e[1],10)}}return 0},getBadgeUrlByType:t=>e.find(e=>e.type===t)?.url}},e.UserRole=y,e.aggregateIncomingEvent=u,e.classifyEvent=r,e.getCacheKey=n,e.getTestAlertKey=v,e.getTestMessageKey=_,e.parseTier=t,e.testAlert=g,e.testAlerts=f,e.testMessage=h,e.testMessages=p,e.testOnWidgetLoadDetail=d})(this.WmakeStreamelementsEvents=this.WmakeStreamelementsEvents||{});
|
|
2
2
|
//# sourceMappingURL=index.iife.js.map
|