Skip to content

Commit f4fbf8c

Browse files
committed
add support for roblox
1 parent a59f491 commit f4fbf8c

File tree

6 files changed

+51
-10
lines changed

6 files changed

+51
-10
lines changed

package-lock.json

Lines changed: 6 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@
6666
"typescript": "^5.2.2"
6767
},
6868
"dependencies": {
69-
"@authorizerdev/authorizer-js": "^2.0.2",
69+
"@authorizerdev/authorizer-js": "^2.0.3",
7070
"validator": "^13.11.0"
7171
}
7272
}

src/components/AuthorizerSocialLogin.tsx

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import { Apple } from '../icons/apple';
1111
import { Twitter } from '../icons/twitter';
1212
import { Microsoft } from '../icons/microsoft';
1313
import { Twitch } from '../icons/twitch';
14+
import { Roblox } from '../icons/roblox';
1415

1516
export const AuthorizerSocialLogin: React.FC<{
1617
urlProps?: Record<string, any>;
@@ -25,7 +26,8 @@ export const AuthorizerSocialLogin: React.FC<{
2526
config.is_apple_login_enabled ||
2627
config.is_twitter_login_enabled ||
2728
config.is_microsoft_login_enabled ||
28-
config.is_twitch_login_enabled;
29+
config.is_twitch_login_enabled ||
30+
config.is_roblox_login_enabled;
2931

3032
const data: {
3133
scope?: string;
@@ -161,6 +163,20 @@ export const AuthorizerSocialLogin: React.FC<{
161163
<br />
162164
</>
163165
)}
166+
{config.is_roblox_login_enabled && (
167+
<>
168+
<StyledButton
169+
appearance={ButtonAppearance.Default}
170+
onClick={() => {
171+
window.location.href = `${config.authorizerURL}/oauth_login/roblox?${queryParams}`;
172+
}}
173+
>
174+
<Roblox />
175+
Continue with Roblox
176+
</StyledButton>
177+
<br />
178+
</>
179+
)}
164180
{hasSocialLogin &&
165181
(config.is_basic_authentication_enabled ||
166182
config.is_mobile_basic_authentication_enabled ||

src/contexts/AuthorizerContext.tsx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ const AuthorizerContext = createContext<AuthorizerContextPropsType>({
2929
is_twitter_login_enabled: false,
3030
is_microsoft_login_enabled: false,
3131
is_twitch_login_enabled: false,
32+
is_roblox_login_enabled: false,
3233
is_email_verification_enabled: false,
3334
is_basic_authentication_enabled: false,
3435
is_magic_link_login_enabled: false,
@@ -101,6 +102,7 @@ let initialState: AuthorizerState = {
101102
is_twitter_login_enabled: false,
102103
is_microsoft_login_enabled: false,
103104
is_twitch_login_enabled: false,
105+
is_roblox_login_enabled: false,
104106
is_email_verification_enabled: false,
105107
is_basic_authentication_enabled: false,
106108
is_magic_link_login_enabled: false,
@@ -142,8 +144,10 @@ export const AuthorizerProvider: FC<{
142144
);
143145

144146
const getToken = async () => {
145-
const { data: metaRes, errors: metaResErrors } =
146-
await authorizerRef.current.getMetaData();
147+
const {
148+
data: metaRes,
149+
errors: metaResErrors,
150+
} = await authorizerRef.current.getMetaData();
147151
try {
148152
if (metaResErrors && metaResErrors.length) {
149153
throw new Error(metaResErrors[0].message);

src/icons/roblox.tsx

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
import React from 'react';
2+
3+
export const Roblox = () => {
4+
return (
5+
<div
6+
style={{
7+
position: 'absolute',
8+
left: '10px',
9+
top: '12px',
10+
display: 'flex',
11+
}}
12+
>
13+
<img
14+
src="https://authorizer.dev/_next/image?url=%2Fimages%2Froblox.png&w=24&q=24"
15+
alt="roblox_logo"
16+
/>
17+
</div>
18+
);
19+
};

src/types/index.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ export type AuthorizerConfig = {
1313
is_twitter_login_enabled: boolean;
1414
is_microsoft_login_enabled: boolean;
1515
is_twitch_login_enabled: boolean;
16+
is_roblox_login_enabled: boolean;
1617
is_email_verification_enabled: boolean;
1718
is_basic_authentication_enabled: boolean;
1819
is_magic_link_login_enabled: boolean;
@@ -48,6 +49,7 @@ export type AuthorizerContextPropsType = {
4849
is_twitter_login_enabled: boolean;
4950
is_microsoft_login_enabled: boolean;
5051
is_twitch_login_enabled: boolean;
52+
is_roblox_login_enabled: boolean;
5153
is_email_verification_enabled: boolean;
5254
is_basic_authentication_enabled: boolean;
5355
is_magic_link_login_enabled: boolean;

0 commit comments

Comments
 (0)