Documentation
¶
Index ¶
- func NewEmoteOverview(channelID string, cache EmoteCache, replacer EmoteReplacer, width, height int) *emoteOverview
- type APIClient
- type AccountProvider
- type AppStateManager
- type BadgeReplacer
- type ChatuinoServer
- type ConnectionPool
- type DependencyContainer
- type EmoteCache
- type EmoteReplacer
- type EventSubMessage
- type MessageLogger
- type ModStatusFetcher
- type RecentMessageService
- type Root
- type UserConfiguration
- type UserEmoteClient
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewEmoteOverview ¶ added in v0.6.0
func NewEmoteOverview(channelID string, cache EmoteCache, replacer EmoteReplacer, width, height int) *emoteOverview
Types ¶
type APIClient ¶ added in v0.0.4
type APIClient interface {
GetUsers(ctx context.Context, logins []string, ids []string) (twitchapi.UserResponse, error)
GetStreamInfo(ctx context.Context, broadcastID []string) (twitchapi.GetStreamsResponse, error)
GetChatSettings(ctx context.Context, broadcasterID string, moderatorID string) (twitchapi.GetChatSettingsResponse, error)
}
type AccountProvider ¶
type AppStateManager ¶ added in v0.6.2
type BadgeReplacer ¶ added in v0.6.2
type ChatuinoServer ¶ added in v0.7.0
type ConnectionPool ¶ added in v0.8.0
type ConnectionPool interface {
ConnectIRC(accountID string) error
DisconnectIRC(accountID string)
SendIRC(accountID string, msg twitchirc.IRCer) error
JoinChannel(accountID, channel string) error
SubscribeEventSub(accountID string, req twitchapi.CreateEventSubSubscriptionRequest, service wspool.EventSubService) error
Close() error
}
ConnectionPool manages WebSocket connections for IRC and EventSub.
type DependencyContainer ¶ added in v0.6.2
type DependencyContainer struct {
UserConfig UserConfiguration
Keymap save.KeyMap
Accounts []save.Account
ServerAPI ChatuinoServer
APIUserClients map[string]APIClient
AccountProvider AccountProvider
EmoteCache EmoteCache
BadgeCache *badge.Cache
EmoteReplacer EmoteReplacer
BadgeReplacer BadgeReplacer
ImageDisplayManager *kittyimg.DisplayManager
RecentMessageService RecentMessageService
MessageLogger MessageLogger
Pool ConnectionPool
AppStateManager AppStateManager
}
type EmoteCache ¶ added in v0.6.2
type EmoteCache interface {
GetByText(channelID, text string) (emote.Emote, bool)
RefreshLocal(ctx context.Context, channelID string) error
RefreshGlobal(ctx context.Context) error
GetAllForChannel(id string) emote.EmoteSet
AddUserEmotes(userID string, emotes []emote.Emote)
AllEmotesUsableByUser(userID string) []emote.Emote
RemoveEmoteSetForChannel(channelID string)
LoadSetForeignEmote(emoteID, emoteText string) emote.Emote
}
type EmoteReplacer ¶ added in v0.4.0
type EventSubMessage ¶ added in v0.3.0
type EventSubMessage struct {
Payload eventsub.Message[eventsub.NotificationPayload]
}
EventSubMessage is kept for backward compatibility but no longer used. Events now come through wspool.EventSubEvent.
type MessageLogger ¶ added in v0.5.0
type MessageLogger interface {
MessagesFromUserInChannel(username string, broadcasterChannel string) ([]messagelog.LogEntry, error)
}
type ModStatusFetcher ¶ added in v0.5.1
type RecentMessageService ¶ added in v0.3.0
type Root ¶
type Root struct {
// contains filtered or unexported fields
}
func NewUI ¶
func NewUI( messageLoggerChan chan<- *twitchirc.PrivateMessage, dependencies *DependencyContainer, ) *Root
func (*Root) HasSessionLoaded ¶ added in v0.6.2
func (*Root) TakeStateSnapshot ¶
type UserConfiguration ¶ added in v0.5.0
type UserEmoteClient ¶ added in v0.5.1
Click to show internal directories.
Click to hide internal directories.