Skip to content

Commit ad5cd3b

Browse files
authored
fix: move SignInAndUpHeader inside ThirdPartyEmailPasswordHeader to improve overrides (#771)
1 parent 07fdb99 commit ad5cd3b

File tree

10 files changed

+46
-45
lines changed

10 files changed

+46
-45
lines changed

CHANGELOG.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [0.35.9] - 2023-12-06
99

10-
- Fixes ThirdPartyEmailPassword rendering sign in/up switcher even with disabled email password. Instead it'll now render `SignInAndUpHeader` in this case (overrideable as `ThirdPartySignInAndUpHeader`)
10+
- Fixes ThirdPartyEmailPassword rendering sign in/up switcher even with disabled email password. Instead it'll now render `SignInAndUpHeader_Override` in this case (overrideable as `ThirdPartySignInAndUpHeader`). Overriding `ThirdPartyEmailPasswordHeader_Override` should still cover all cases.
11+
- Added a new prop to `ThirdPartyEmailPasswordHeader_Override` you can use to check if email password is enabled.
1112

1213
## [0.35.8] - 2023-11-26
1314

lib/build/recipe/emailpassword/components/themes/resetPasswordUsingToken/submitNewPassword.d.ts

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/build/recipe/emailpassword/components/themes/signInAndUp/signIn.d.ts

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

lib/build/recipe/emailpassword/components/themes/signInAndUp/signUp.d.ts

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

lib/build/recipe/thirdpartyemailpassword/components/themes/signInAndUp/header.d.ts

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

lib/build/recipe/thirdpartyemailpassword/components/themes/translations.d.ts

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

lib/build/recipe/thirdpartypasswordless/components/themes/translations.d.ts

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

lib/build/thirdpartyemailpasswordprebuiltui.js

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

lib/ts/recipe/thirdpartyemailpassword/components/themes/signInAndUp/header.tsx

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,28 +12,26 @@
1212
* License for the specific language governing permissions and limitations
1313
* under the License.
1414
*/
15-
/*
16-
* Imports.
17-
*/
1815
import { withOverride } from "../../../../../components/componentOverride/withOverride";
1916
import { SignInHeader } from "../../../../emailpassword/components/themes/signInAndUp/signInHeader";
2017
import { SignUpHeader } from "../../../../emailpassword/components/themes/signInAndUp/signUpHeader";
18+
import { SignInAndUpHeader } from "../../../../thirdparty/components/themes/signInAndUp/signInAndUpHeader";
2119

22-
/*
23-
* Component.
24-
*/
2520
export const Header = withOverride(
2621
"ThirdPartyEmailPasswordHeader",
2722
function ThirdPartyEmailPasswordHeader({
2823
isSignUp,
2924
setIsSignUp,
25+
emailPasswordEnabled,
3026
}: {
27+
emailPasswordEnabled: boolean;
3128
isSignUp: boolean;
3229
setIsSignUp: (isSignUp: boolean) => void;
3330
}): JSX.Element {
34-
/*
35-
* Render.
36-
*/
31+
if (emailPasswordEnabled !== true) {
32+
return <SignInAndUpHeader />;
33+
}
34+
3735
if (isSignUp === true) {
3836
return <SignUpHeader onClick={() => setIsSignUp(false)} />;
3937
} else {

lib/ts/recipe/thirdpartyemailpassword/components/themes/signInAndUp/index.tsx

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ import { SignUpFooter } from "../../../../emailpassword/components/themes/signIn
3030
import { SignUpForm } from "../../../../emailpassword/components/themes/signInAndUp/signUpForm";
3131
import { useDynamicLoginMethods } from "../../../../multitenancy/dynamicLoginMethodsContext";
3232
import { ProvidersForm } from "../../../../thirdparty/components/themes/signInAndUp/providersForm";
33-
import { SignInAndUpHeader } from "../../../../thirdparty/components/themes/signInAndUp/signInAndUpHeader";
3433
import { ThemeBase } from "../themeBase";
3534

3635
import { Header } from "./header";
@@ -54,7 +53,7 @@ const SignInAndUpTheme: React.FC<ThirdPartyEmailPasswordSignInAndUpThemeProps> =
5453
(usesDynamicLoginMethods === false && hasProviders) || (loginMethods?.thirdparty.enabled && hasProviders);
5554
const emailPasswordEnabled =
5655
(props.emailPasswordRecipe !== undefined && usesDynamicLoginMethods === false) ||
57-
loginMethods?.emailpassword.enabled;
56+
loginMethods?.emailpassword.enabled === true;
5857

5958
if (thirdPartyEnabled === false && emailPasswordEnabled === false) {
6059
return null;
@@ -63,14 +62,11 @@ const SignInAndUpTheme: React.FC<ThirdPartyEmailPasswordSignInAndUpThemeProps> =
6362
return (
6463
<div data-supertokens="container">
6564
<div data-supertokens="row">
66-
{emailPasswordEnabled ? (
67-
<Header
68-
isSignUp={props.epState.isSignUp}
69-
setIsSignUp={(isSignUp) => props.epDispatch({ type: isSignUp ? "setSignUp" : "setSignIn" })}
70-
/>
71-
) : (
72-
<SignInAndUpHeader />
73-
)}
65+
<Header
66+
isSignUp={props.epState.isSignUp}
67+
setIsSignUp={(isSignUp) => props.epDispatch({ type: isSignUp ? "setSignUp" : "setSignIn" })}
68+
emailPasswordEnabled={emailPasswordEnabled}
69+
/>
7470
{props.commonState.error && <GeneralError error={props.commonState.error} />}
7571
{props.tpChildProps !== undefined && thirdPartyEnabled && (
7672
<ProvidersForm {...props.tpChildProps} featureState={props.tpState} dispatch={props.tpDispatch} />

0 commit comments

Comments
 (0)