0
Fork 0
mirror of https://github.com/logto-io/logto.git synced 2025-02-03 21:48:55 -05:00
logto/packages/core/src/queries/roles.ts

21 lines
599 B
TypeScript
Raw Normal View History

import { Roles, Role } from '@logto/schemas';
import { sql } from 'slonik';
import pool from '@/database/pool';
import { convertToIdentifiers } from '@/database/utils';
const { table, fields } = convertToIdentifiers(Roles);
export const findAllRoles = async () =>
pool.any<Role>(sql`
select ${sql.join(Object.values(fields), sql`, `)}
from ${table}
`);
export const findRolesByRoleNames = async (roleNames: string[]) =>
pool.any<Role>(sql`
select ${sql.join(Object.values(fields), sql`, `)}
from ${table}
where ${fields.name} in (${sql.join(roleNames, sql`, `)})
`);