mirror of
https://github.com/awatertrevi/infisical.git
synced 2026-09-22 13:39:35 +00:00
feat: rabbit and reptile feedback changes
This commit is contained in:
@@ -30,7 +30,7 @@ export const getDefaultOnPremFeatures = (): TFeatureSet => ({
|
||||
auditLogsRetentionDays: 0,
|
||||
auditLogStreams: false,
|
||||
auditLogStreamLimit: 3,
|
||||
samlSSO: true,
|
||||
samlSSO: false,
|
||||
hsm: false,
|
||||
oidcSSO: false,
|
||||
scim: false,
|
||||
|
||||
@@ -181,7 +181,7 @@ export const oidcConfigServiceFactory = ({
|
||||
manageGroupMemberships
|
||||
}: TOidcLoginDTO) => {
|
||||
const serverCfg = await getServerCfg();
|
||||
const sanitizedEmail = email.toLowerCase();
|
||||
const sanitizedEmail = email.trim().toLowerCase();
|
||||
|
||||
if (serverCfg.enabledLoginMethods && !serverCfg.enabledLoginMethods.includes(LoginMethod.OIDC)) {
|
||||
throw new ForbiddenRequestError({
|
||||
|
||||
@@ -110,7 +110,12 @@ export const registerProjectMembershipRouter = async (server: FastifyZodProvider
|
||||
.default([])
|
||||
.describe(PROJECT_USERS.REMOVE_MEMBER.emails)
|
||||
.refine((val) => val.every((el) => el === el.toLowerCase()), "Email must be lowercase"),
|
||||
usernames: z.string().array().default([]).describe(PROJECT_USERS.REMOVE_MEMBER.usernames)
|
||||
usernames: z
|
||||
.string()
|
||||
.array()
|
||||
.default([])
|
||||
.describe(PROJECT_USERS.REMOVE_MEMBER.usernames)
|
||||
.refine((val) => val.every((el) => el === el.toLowerCase()), "Username must be lowercase")
|
||||
}),
|
||||
response: {
|
||||
200: z.object({
|
||||
|
||||
@@ -723,8 +723,8 @@ export const authLoginServiceFactory = ({
|
||||
}
|
||||
|
||||
user = await userDAL.create({
|
||||
username: email.toLowerCase(),
|
||||
email: email.toLowerCase(),
|
||||
username: email.trim().toLowerCase(),
|
||||
email: email.trim().toLowerCase(),
|
||||
isEmailVerified: true,
|
||||
firstName,
|
||||
lastName,
|
||||
|
||||
@@ -73,7 +73,7 @@ export const authSignupServiceFactory = ({
|
||||
}: TAuthSignupDep) => {
|
||||
// first step of signup. create user and send email
|
||||
const beginEmailSignupProcess = async (email: string) => {
|
||||
const sanitizedEmail = email.toLowerCase();
|
||||
const sanitizedEmail = email.trim().toLowerCase();
|
||||
const isEmailInvalid = await isDisposableEmail(sanitizedEmail);
|
||||
if (isEmailInvalid) {
|
||||
throw new Error("Provided a disposable email");
|
||||
@@ -113,7 +113,7 @@ export const authSignupServiceFactory = ({
|
||||
};
|
||||
|
||||
const verifyEmailSignup = async (email: string, code: string) => {
|
||||
const sanitizedEmail = email.toLowerCase();
|
||||
const sanitizedEmail = email.trim().toLowerCase();
|
||||
const usersByUsername = await userDAL.findUserByUsername(sanitizedEmail);
|
||||
const user =
|
||||
usersByUsername?.length > 1 ? usersByUsername.find((el) => el.username === sanitizedEmail) : usersByUsername?.[0];
|
||||
@@ -166,7 +166,7 @@ export const authSignupServiceFactory = ({
|
||||
authorization,
|
||||
useDefaultOrg
|
||||
}: TCompleteAccountSignupDTO) => {
|
||||
const sanitizedEmail = email.toLowerCase();
|
||||
const sanitizedEmail = email.trim().toLowerCase();
|
||||
const appCfg = getConfig();
|
||||
const serverCfg = await getServerCfg();
|
||||
|
||||
@@ -415,7 +415,7 @@ export const authSignupServiceFactory = ({
|
||||
encryptedPrivateKeyTag,
|
||||
authorization
|
||||
}: TCompleteAccountInviteDTO) => {
|
||||
const sanitizedEmail = email.toLowerCase();
|
||||
const sanitizedEmail = email.trim().toLowerCase();
|
||||
const usersByUsername = await userDAL.findUserByUsername(sanitizedEmail);
|
||||
const user =
|
||||
usersByUsername?.length > 1 ? usersByUsername.find((el) => el.username === sanitizedEmail) : usersByUsername?.[0];
|
||||
|
||||
@@ -272,7 +272,7 @@ export const superAdminServiceFactory = ({
|
||||
userAgent
|
||||
}: TAdminSignUpDTO) => {
|
||||
const appCfg = getConfig();
|
||||
const sanitizedEmail = email.toLowerCase();
|
||||
const sanitizedEmail = email.trim().toLowerCase();
|
||||
const existingUser = await userDAL.findOne({ username: sanitizedEmail });
|
||||
if (existingUser) throw new BadRequestError({ name: "Admin sign up", message: "User already exists" });
|
||||
|
||||
@@ -349,7 +349,7 @@ export const superAdminServiceFactory = ({
|
||||
|
||||
const bootstrapInstance = async ({ email, password, organizationName }: TAdminBootstrapInstanceDTO) => {
|
||||
const appCfg = getConfig();
|
||||
const sanitizedEmail = email.toLowerCase();
|
||||
const sanitizedEmail = email.trim().toLowerCase();
|
||||
const serverCfg = await serverCfgDAL.findById(ADMIN_CONFIG_DB_UUID);
|
||||
if (serverCfg?.initialized) {
|
||||
throw new BadRequestError({ message: "Instance has already been set up" });
|
||||
|
||||
@@ -230,7 +230,7 @@ export const userServiceFactory = ({
|
||||
if (duplicatedAccounts.length && myAccount) {
|
||||
await userDAL.transaction(async (tx) => {
|
||||
await userDAL.delete({ $in: { id: duplicatedAccounts?.map((el) => el.id) } }, tx);
|
||||
await userDAL.updateById(userId, { username: myAccount.username.toLowerCase() });
|
||||
await userDAL.updateById(userId, { username: myAccount.username.toLowerCase() }, tx);
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
@@ -89,7 +89,7 @@ export const SelectOrganizationPage = () => {
|
||||
</div>
|
||||
<div className="thin-scrollbar flex h-full max-h-60 w-full flex-col items-stretch gap-2 overflow-auto rounded-md">
|
||||
{duplicateAccounts?.data?.duplicateAccounts?.map((el) => {
|
||||
const lastSession = el.devices.at(-1);
|
||||
const lastSession = el.devices?.at(-1);
|
||||
return (
|
||||
<div
|
||||
key={el.id}
|
||||
|
||||
Reference in New Issue
Block a user