Skip to content

Commit 10dcdb0

Browse files
committed
fix: Use new thirdparty interface for all examples
1 parent 1c5a5cb commit 10dcdb0

File tree

3 files changed

+147
-95
lines changed
  • examples
    • with-django/with-thirdpartyemailpassword/project
    • with-fastapi/with-thirdpartyemailpassword
    • with-flask/with-thirdpartyemailpassword

3 files changed

+147
-95
lines changed

examples/with-django/with-thirdpartyemailpassword/project/settings.py

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,6 @@
2929
session,
3030
thirdpartyemailpassword,
3131
)
32-
from supertokens_python.recipe.thirdpartyemailpassword import (
33-
Apple,
34-
Discord,
35-
Github,
36-
Google,
37-
GoogleWorkspaces,
38-
)
3932

4033
# Build paths inside the project like this: BASE_DIR / 'subdir'.
4134
BASE_DIR = Path(__file__).resolve().parent.parent
@@ -112,15 +105,15 @@ def get_website_domain():
112105
"keyId": os.environ["APPLE_KEY_ID"],
113106
"teamId": os.environ["APPLE_TEAM_ID"],
114107
"privateKey": os.environ["APPLE_PRIVATE_KEY"],
115-
}
108+
},
116109
),
117110
thirdpartyemailpassword.ProviderClientConfig(
118111
client_id=os.environ["APPLE_CLIENT_ID_MOBILE"],
119112
additional_config={
120113
"keyId": os.environ["APPLE_KEY_ID"],
121114
"teamId": os.environ["APPLE_TEAM_ID"],
122115
"privateKey": os.environ["APPLE_PRIVATE_KEY"],
123-
}
116+
},
124117
),
125118
],
126119
)

examples/with-fastapi/with-thirdpartyemailpassword/main.py

Lines changed: 73 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,7 @@
2222
)
2323
from supertokens_python.recipe.session import SessionContainer
2424
from supertokens_python.recipe.session.framework.fastapi import verify_session
25-
from supertokens_python.recipe.thirdpartyemailpassword import (
26-
Apple,
27-
Discord,
28-
Github,
29-
Google,
30-
GoogleWorkspaces,
31-
)
25+
3226

3327
load_dotenv()
3428

@@ -62,46 +56,82 @@ def get_website_domain():
6256
emailverification.init("REQUIRED"),
6357
thirdpartyemailpassword.init(
6458
providers=[
65-
Google(
66-
is_default=True,
67-
client_id=os.environ.get("GOOGLE_CLIENT_ID"), # type: ignore
68-
client_secret=os.environ.get("GOOGLE_CLIENT_SECRET"), # type: ignore
69-
),
70-
Google(
71-
client_id=os.environ.get("GOOGLE_CLIENT_ID_MOBILE"), # type: ignore
72-
client_secret=os.environ.get("GOOGLE_CLIENT_SECRET"), # type: ignore
73-
),
74-
Github(
75-
is_default=True,
76-
client_id=os.environ.get("GITHUB_CLIENT_ID"), # type: ignore
77-
client_secret=os.environ.get("GITHUB_CLIENT_SECRET"), # type: ignore
78-
),
79-
Github(
80-
client_id=os.environ.get("GITHUB_CLIENT_ID_MOBILE"), # type: ignore
81-
client_secret=os.environ.get("GITHUB_CLIENT_SECRET_MOBILE"), # type: ignore
59+
thirdpartyemailpassword.ProviderInput(
60+
config=thirdpartyemailpassword.ProviderConfig(
61+
third_party_id="google",
62+
clients=[
63+
thirdpartyemailpassword.ProviderClientConfig(
64+
client_id=os.environ["GOOGLE_CLIENT_ID"],
65+
client_secret=os.environ["GOOGLE_CLIENT_SECRET"],
66+
),
67+
thirdpartyemailpassword.ProviderClientConfig(
68+
client_id=os.environ["GOOGLE_CLIENT_ID_MOBILE"],
69+
client_secret=os.environ["GOOGLE_CLIENT_SECRET_MOBILE"],
70+
),
71+
],
72+
),
8273
),
83-
Apple(
84-
is_default=True,
85-
client_id=os.environ.get("APPLE_CLIENT_ID"), # type: ignore
86-
client_key_id=os.environ.get("APPLE_KEY_ID"), # type: ignore
87-
client_team_id=os.environ.get("APPLE_TEAM_ID"), # type: ignore
88-
client_private_key=os.environ.get("APPLE_PRIVATE_KEY"), # type: ignore
74+
thirdpartyemailpassword.ProviderInput(
75+
config=thirdpartyemailpassword.ProviderConfig(
76+
third_party_id="github",
77+
clients=[
78+
thirdpartyemailpassword.ProviderClientConfig(
79+
client_id=os.environ["GITHUB_CLIENT_ID"],
80+
client_secret=os.environ["GITHUB_CLIENT_SECRET"],
81+
),
82+
thirdpartyemailpassword.ProviderClientConfig(
83+
client_id=os.environ["GITHUB_CLIENT_ID_MOBILE"],
84+
client_secret=os.environ["GITHUB_CLIENT_SECRET_MOBILE"],
85+
),
86+
],
87+
)
8988
),
90-
Apple(
91-
client_id=os.environ.get("APPLE_CLIENT_ID_MOBILE"), # type: ignore
92-
client_key_id=os.environ.get("APPLE_KEY_ID"), # type: ignore
93-
client_team_id=os.environ.get("APPLE_TEAM_ID"), # type: ignore
94-
client_private_key=os.environ.get("APPLE_PRIVATE_KEY"), # type: ignore
89+
thirdpartyemailpassword.ProviderInput(
90+
config=thirdpartyemailpassword.ProviderConfig(
91+
third_party_id="apple",
92+
clients=[
93+
thirdpartyemailpassword.ProviderClientConfig(
94+
client_id=os.environ["APPLE_CLIENT_ID"],
95+
additional_config={
96+
"keyId": os.environ["APPLE_KEY_ID"],
97+
"teamId": os.environ["APPLE_TEAM_ID"],
98+
"privateKey": os.environ["APPLE_PRIVATE_KEY"],
99+
},
100+
),
101+
thirdpartyemailpassword.ProviderClientConfig(
102+
client_id=os.environ["APPLE_CLIENT_ID_MOBILE"],
103+
additional_config={
104+
"keyId": os.environ["APPLE_KEY_ID"],
105+
"teamId": os.environ["APPLE_TEAM_ID"],
106+
"privateKey": os.environ["APPLE_PRIVATE_KEY"],
107+
},
108+
),
109+
],
110+
)
95111
),
96-
GoogleWorkspaces(
97-
is_default=True,
98-
client_id=os.environ.get("GOOGLE_WORKSPACES_CLIENT_ID"), # type: ignore
99-
client_secret=os.environ.get("GOOGLE_WORKSPACES_CLIENT_SECRET"), # type: ignore
112+
thirdpartyemailpassword.ProviderInput(
113+
config=thirdpartyemailpassword.ProviderConfig(
114+
third_party_id="googleworkspaces",
115+
clients=[
116+
thirdpartyemailpassword.ProviderClientConfig(
117+
client_id=os.environ["GOOGLE_WORKSPACES_CLIENT_ID"],
118+
client_secret=os.environ[
119+
"GOOGLE_WORKSPACES_CLIENT_SECRET"
120+
],
121+
),
122+
],
123+
)
100124
),
101-
Discord(
102-
is_default=True,
103-
client_id=os.environ.get("DISCORD_CLIENT_ID"), # type: ignore
104-
client_secret=os.environ.get("DISCORD_CLIENT_SECRET"), # type: ignore
125+
thirdpartyemailpassword.ProviderInput(
126+
config=thirdpartyemailpassword.ProviderConfig(
127+
third_party_id="discord",
128+
clients=[
129+
thirdpartyemailpassword.ProviderClientConfig(
130+
client_id=os.environ["DISCORD_CLIENT_ID"],
131+
client_secret=os.environ["DISCORD_CLIENT_SECRET"],
132+
),
133+
],
134+
)
105135
),
106136
]
107137
),

examples/with-flask/with-thirdpartyemailpassword/app.py

Lines changed: 72 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,6 @@
1818
thirdpartyemailpassword,
1919
)
2020
from supertokens_python.recipe.session.framework.flask import verify_session
21-
from supertokens_python.recipe.thirdpartyemailpassword import (
22-
Apple,
23-
Discord,
24-
Github,
25-
Google,
26-
GoogleWorkspaces,
27-
)
2821

2922
load_dotenv()
3023

@@ -55,46 +48,82 @@ def get_website_domain():
5548
emailverification.init("REQUIRED"),
5649
thirdpartyemailpassword.init(
5750
providers=[
58-
Google(
59-
is_default=True,
60-
client_id=os.environ.get("GOOGLE_CLIENT_ID"), # type: ignore
61-
client_secret=os.environ.get("GOOGLE_CLIENT_SECRET"), # type: ignore
62-
),
63-
Google(
64-
client_id=os.environ.get("GOOGLE_CLIENT_ID_MOBILE"), # type: ignore
65-
client_secret=os.environ.get("GOOGLE_CLIENT_SECRET"), # type: ignore
66-
),
67-
Github(
68-
is_default=True,
69-
client_id=os.environ.get("GITHUB_CLIENT_ID"), # type: ignore
70-
client_secret=os.environ.get("GITHUB_CLIENT_SECRET"), # type: ignore
71-
),
72-
Github(
73-
client_id=os.environ.get("GITHUB_CLIENT_ID_MOBILE"), # type: ignore
74-
client_secret=os.environ.get("GITHUB_CLIENT_SECRET_MOBILE"), # type: ignore
51+
thirdpartyemailpassword.ProviderInput(
52+
config=thirdpartyemailpassword.ProviderConfig(
53+
third_party_id="google",
54+
clients=[
55+
thirdpartyemailpassword.ProviderClientConfig(
56+
client_id=os.environ["GOOGLE_CLIENT_ID"],
57+
client_secret=os.environ["GOOGLE_CLIENT_SECRET"],
58+
),
59+
thirdpartyemailpassword.ProviderClientConfig(
60+
client_id=os.environ["GOOGLE_CLIENT_ID_MOBILE"],
61+
client_secret=os.environ["GOOGLE_CLIENT_SECRET_MOBILE"],
62+
),
63+
],
64+
),
7565
),
76-
Apple(
77-
is_default=True,
78-
client_id=os.environ.get("APPLE_CLIENT_ID"), # type: ignore
79-
client_key_id=os.environ.get("APPLE_KEY_ID"), # type: ignore
80-
client_team_id=os.environ.get("APPLE_TEAM_ID"), # type: ignore
81-
client_private_key=os.environ.get("APPLE_PRIVATE_KEY"), # type: ignore
66+
thirdpartyemailpassword.ProviderInput(
67+
config=thirdpartyemailpassword.ProviderConfig(
68+
third_party_id="github",
69+
clients=[
70+
thirdpartyemailpassword.ProviderClientConfig(
71+
client_id=os.environ["GITHUB_CLIENT_ID"],
72+
client_secret=os.environ["GITHUB_CLIENT_SECRET"],
73+
),
74+
thirdpartyemailpassword.ProviderClientConfig(
75+
client_id=os.environ["GITHUB_CLIENT_ID_MOBILE"],
76+
client_secret=os.environ["GITHUB_CLIENT_SECRET_MOBILE"],
77+
),
78+
],
79+
)
8280
),
83-
Apple(
84-
client_id=os.environ.get("APPLE_CLIENT_ID_MOBILE"), # type: ignore
85-
client_key_id=os.environ.get("APPLE_KEY_ID"), # type: ignore
86-
client_team_id=os.environ.get("APPLE_TEAM_ID"), # type: ignore
87-
client_private_key=os.environ.get("APPLE_PRIVATE_KEY"), # type: ignore
81+
thirdpartyemailpassword.ProviderInput(
82+
config=thirdpartyemailpassword.ProviderConfig(
83+
third_party_id="apple",
84+
clients=[
85+
thirdpartyemailpassword.ProviderClientConfig(
86+
client_id=os.environ["APPLE_CLIENT_ID"],
87+
additional_config={
88+
"keyId": os.environ["APPLE_KEY_ID"],
89+
"teamId": os.environ["APPLE_TEAM_ID"],
90+
"privateKey": os.environ["APPLE_PRIVATE_KEY"],
91+
},
92+
),
93+
thirdpartyemailpassword.ProviderClientConfig(
94+
client_id=os.environ["APPLE_CLIENT_ID_MOBILE"],
95+
additional_config={
96+
"keyId": os.environ["APPLE_KEY_ID"],
97+
"teamId": os.environ["APPLE_TEAM_ID"],
98+
"privateKey": os.environ["APPLE_PRIVATE_KEY"],
99+
},
100+
),
101+
],
102+
)
88103
),
89-
GoogleWorkspaces(
90-
is_default=True,
91-
client_id=os.environ.get("GOOGLE_WORKSPACES_CLIENT_ID"), # type: ignore
92-
client_secret=os.environ.get("GOOGLE_WORKSPACES_CLIENT_SECRET"), # type: ignore
104+
thirdpartyemailpassword.ProviderInput(
105+
config=thirdpartyemailpassword.ProviderConfig(
106+
third_party_id="googleworkspaces",
107+
clients=[
108+
thirdpartyemailpassword.ProviderClientConfig(
109+
client_id=os.environ["GOOGLE_WORKSPACES_CLIENT_ID"],
110+
client_secret=os.environ[
111+
"GOOGLE_WORKSPACES_CLIENT_SECRET"
112+
],
113+
),
114+
],
115+
)
93116
),
94-
Discord(
95-
is_default=True,
96-
client_id=os.environ.get("DISCORD_CLIENT_ID"), # type: ignore
97-
client_secret=os.environ.get("DISCORD_CLIENT_SECRET"), # type: ignore
117+
thirdpartyemailpassword.ProviderInput(
118+
config=thirdpartyemailpassword.ProviderConfig(
119+
third_party_id="discord",
120+
clients=[
121+
thirdpartyemailpassword.ProviderClientConfig(
122+
client_id=os.environ["DISCORD_CLIENT_ID"],
123+
client_secret=os.environ["DISCORD_CLIENT_SECRET"],
124+
),
125+
],
126+
)
98127
),
99128
]
100129
),

0 commit comments

Comments
 (0)