From b1102e3458c6ff4fa352cf0c13ec9bd22977e099 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9sar=20Rodr=C3=ADguez=20Vilagr=C3=A1?= <128821412+CesarRodrigu@users.noreply.github.com> Date: Tue, 9 Dec 2025 07:07:53 +0100 Subject: [PATCH] feat: Add Refresh Token Support to Kick OAuth Provider (#6263) --- packages/core/src/social-providers/kick.ts | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/packages/core/src/social-providers/kick.ts b/packages/core/src/social-providers/kick.ts index 29a26098ec..6711601b2b 100644 --- a/packages/core/src/social-providers/kick.ts +++ b/packages/core/src/social-providers/kick.ts @@ -1,6 +1,10 @@ import { betterFetch } from "@better-fetch/fetch"; import type { OAuthProvider, ProviderOptions } from "../oauth2"; -import { createAuthorizationURL, validateAuthorizationCode } from "../oauth2"; +import { + createAuthorizationURL, + refreshAccessToken, + validateAuthorizationCode, +} from "../oauth2"; export interface KickProfile { /** @@ -53,6 +57,18 @@ export const kick = (options: KickOptions) => { codeVerifier, }); }, + refreshAccessToken: options.refreshAccessToken + ? options.refreshAccessToken + : async (refreshToken) => { + return refreshAccessToken({ + refreshToken, + options: { + clientId: options.clientId, + clientSecret: options.clientSecret, + }, + tokenEndpoint: "https://id.kick.com/oauth/token", + }); + }, async getUserInfo(token) { if (options.getUserInfo) { return options.getUserInfo(token);