Add SCIM user activation/deactivation

This commit is contained in:
Tuan Dang
2024-07-16 20:19:27 +07:00
parent c90ecd336c
commit a1d00f2c41
17 changed files with 182 additions and 55 deletions
@@ -0,0 +1,25 @@
import { Knex } from "knex";
import { TableName } from "../schemas";
export async function up(knex: Knex): Promise<void> {
if (await knex.schema.hasTable(TableName.OrgMembership)) {
await knex.schema.alterTable(TableName.OrgMembership, (t) => {
t.boolean("isActive").nullable();
});
await knex(TableName.OrgMembership).update("isActive", true);
await knex.schema.alterTable(TableName.OrgMembership, (t) => {
t.boolean("isActive").notNullable().alter();
});
}
}
export async function down(knex: Knex): Promise<void> {
if (await knex.schema.hasTable(TableName.OrgMembership)) {
await knex.schema.alterTable(TableName.OrgMembership, (t) => {
t.dropColumn("isActive");
});
}
}
+2 -1
View File
@@ -17,7 +17,8 @@ export const OrgMembershipsSchema = z.object({
userId: z.string().uuid().nullable().optional(),
orgId: z.string().uuid(),
roleId: z.string().uuid().nullable().optional(),
projectFavorites: z.string().array().nullable().optional()
projectFavorites: z.string().array().nullable().optional(),
isActive: z.boolean()
});
export type TOrgMemberships = z.infer<typeof OrgMembershipsSchema>;
+2 -1
View File
@@ -29,7 +29,8 @@ export async function seed(knex: Knex): Promise<void> {
role: OrgMembershipRole.Admin,
orgId: org.id,
status: OrgMembershipStatus.Accepted,
userId: user.id
userId: user.id,
isActive: true
}
]);
}