Add follow and unfollow for live and offline channels.

Long-press actions use Helix for follow status and web GQL mutations via the linked session.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
copilot 2026-10-07 03:06:05 +02:00
parent 318dc84dc5
commit 30848e6fe8
15 changed files with 835 additions and 41 deletions

View file

@ -44,6 +44,13 @@ class UnauthorizedException extends ApiException {
: super(message, 401, DioExceptionType.badResponse);
}
/// Twitch GQL rejected the request for a missing/invalid Client-Integrity token.
class IntegrityCheckException extends ApiException {
const IntegrityCheckException([
String message = 'Twitch integrity check failed',
]) : super(message);
}
/// Base API client to eliminate code duplication across API services
abstract class BaseApiClient {
final Dio _dio;