41 lines
1.3 KiB
TypeScript
41 lines
1.3 KiB
TypeScript
import { DSQL_DATASQUIREL_MARIADB_USERS } from "../../../types/dsql";
|
|
import { DatabaseScopedAccessObject, UserType } from "../../../types";
|
|
import handleMariadbUserGrantsForDatabasesRecreateRecordsForDatabase from "./handle-mariadb-user-grants-for-databases-recreate-records";
|
|
import handleMariadbUserGrantsForDatabasesRecreateGrants from "./handle-mariadb-user-grants-for-databases-recreate-grants";
|
|
|
|
type Params = {
|
|
accessedDatabases: DatabaseScopedAccessObject[];
|
|
user: UserType;
|
|
updatedRecord: DSQL_DATASQUIREL_MARIADB_USERS;
|
|
};
|
|
|
|
type Return = {
|
|
msg?: string;
|
|
success?: boolean;
|
|
};
|
|
|
|
export default async function handleMariadbUserGrantsForDatabases({
|
|
accessedDatabases,
|
|
user,
|
|
updatedRecord,
|
|
}: Params): Promise<Return> {
|
|
/**
|
|
* # Recreate Records
|
|
*/
|
|
for (let i = 0; i < accessedDatabases.length; i++) {
|
|
await handleMariadbUserGrantsForDatabasesRecreateRecordsForDatabase({
|
|
currentAccessedDatabase: accessedDatabases[i],
|
|
updatedRecord,
|
|
user,
|
|
});
|
|
|
|
await handleMariadbUserGrantsForDatabasesRecreateGrants({
|
|
currentAccessedDatabase: accessedDatabases[i],
|
|
updatedRecord,
|
|
user,
|
|
});
|
|
}
|
|
|
|
return { success: true };
|
|
}
|