Update various SSO / SAML auth methods to support username

This commit is contained in:
Tuan Dang
2024-02-24 22:17:51 -08:00
parent bfee74ff4e
commit 8c31566e17
14 changed files with 37 additions and 33 deletions
+3 -3
View File
@@ -15,7 +15,7 @@ export const LoginSSO = ({ providerAuthToken }: Props) => {
const [password, setPassword] = useState("");
const {
email,
username,
isUserCompleted
} = jwt_decode(providerAuthToken) as any;
@@ -35,7 +35,7 @@ export const LoginSSO = ({ providerAuthToken }: Props) => {
return (
<PasswordStep
providerAuthToken={providerAuthToken}
email={email}
email={username}
password={password}
setPassword={setPassword}
setStep={setStep}
@@ -45,7 +45,7 @@ export const LoginSSO = ({ providerAuthToken }: Props) => {
return (
<MFAStep
providerAuthToken={providerAuthToken}
email={email}
email={username}
password={password}
/>
);
@@ -113,8 +113,8 @@ export const OrgMembersSection = () => {
/>
<DeleteActionModal
isOpen={popUp.removeMember.isOpen}
title={`Are you sure want to remove member with email ${
(popUp?.removeMember?.data as { email: string })?.email || ""
title={`Are you sure want to remove member with username ${
(popUp?.removeMember?.data as { username: string })?.username || ""
}?`}
onChange={(isOpen) => handlePopUpToggle("removeMember", isOpen)}
deleteKey="confirm"
@@ -41,7 +41,7 @@ type Props = {
popUpName: keyof UsePopUpState<["removeMember", "upgradePlan"]>,
data?: {
orgMembershipId?: string;
email?: string;
username?: string;
description?: string;
}
) => void;
@@ -174,6 +174,7 @@ export const OrgMembersTable = ({ handlePopUpOpen, setCompleteInviteLink }: Prop
filterdUser?.map(
({ user: u, inviteEmail, role, roleId, id: orgMembershipId, status }) => {
const name = u && u.firstName ? `${u.firstName} ${u.lastName}` : "-";
const email = u?.email || inviteEmail;
const username = u?.username ?? inviteEmail ?? "-";
return (
<Tr key={`org-membership-${orgMembershipId}`} className="w-full">
@@ -207,7 +208,7 @@ export const OrgMembersTable = ({ handlePopUpOpen, setCompleteInviteLink }: Prop
))}
</Select>
)}
{(status === "invited" || status === "verified") &&
{(status === "invited" || status === "verified") && email &&
serverDetails?.emailConfigured && (
<Button
isDisabled={!isAllowed}
@@ -240,7 +241,7 @@ export const OrgMembersTable = ({ handlePopUpOpen, setCompleteInviteLink }: Prop
return;
}
handlePopUpOpen("removeMember", { orgMembershipId, email });
handlePopUpOpen("removeMember", { orgMembershipId, username });
}}
size="lg"
colorSchema="danger"
+3 -3
View File
@@ -16,7 +16,7 @@ export const SignupSSO = ({
const [password, setPassword] = useState("");
const {
email,
username,
organizationName,
firstName,
lastName,
@@ -27,7 +27,7 @@ export const SignupSSO = ({
case 0:
return (
<UserInfoSSOStep
email={email}
username={username}
name={`${firstName} ${lastName}`}
providerOrganizationName={organizationName}
password={password}
@@ -39,7 +39,7 @@ export const SignupSSO = ({
case 1:
return (
<BackupPDFStep
email={email}
email={username}
password={password}
name={`${firstName} ${lastName}`}
/>
@@ -24,7 +24,7 @@ const client = new jsrp.client();
type Props = {
setStep: (step: number) => void;
email: string;
username: string;
password: string;
setPassword: (value: string) => void;
name: string;
@@ -57,7 +57,7 @@ type Errors = {
* @param {string} obj.setLastName - function managing the state of user's last name
*/
export const UserInfoSSOStep = ({
email,
username,
name,
providerOrganizationName,
password,
@@ -113,7 +113,7 @@ export const UserInfoSSOStep = ({
client.init(
{
username: email,
username,
password
},
async () => {
@@ -156,7 +156,7 @@ export const UserInfoSSOStep = ({
});
const response = await completeAccountSignup({
email,
email: username,
firstName: name.split(" ")[0],
lastName: name.split(" ").slice(1).join(" "),
protectedKey,