87 lines
2.5 KiB
TypeScript
87 lines
2.5 KiB
TypeScript
import { DefaultAdminRoles } from "~/application/dtos/shared/DefaultAdminRoles";
|
|
import { DefaultAppRoles } from "~/application/dtos/shared/DefaultAppRoles";
|
|
|
|
const NotificationChannelTypes = [
|
|
"admin-accounts",
|
|
"admin-users",
|
|
"admin-subscriptions",
|
|
"admin-api-keys",
|
|
"admin-emails",
|
|
"admin-groups",
|
|
"admin-linked-accounts",
|
|
"admin-account-members",
|
|
"admin-onboarding",
|
|
"admin-rows",
|
|
"roles",
|
|
"my-rows",
|
|
] as const;
|
|
export type NotificationChannel = typeof NotificationChannelTypes[number];
|
|
|
|
export interface NotificationChannelDto {
|
|
name: NotificationChannel;
|
|
descriptionKey: `notifications.admin.channelDescriptions.${NotificationChannel}`;
|
|
roles?: string[];
|
|
}
|
|
|
|
export const NotificationChannels: NotificationChannelDto[] = [
|
|
{
|
|
name: "admin-accounts",
|
|
descriptionKey: "notifications.admin.channelDescriptions.admin-accounts",
|
|
roles: [DefaultAdminRoles.SuperAdmin],
|
|
},
|
|
{
|
|
name: "admin-users",
|
|
descriptionKey: "notifications.admin.channelDescriptions.admin-users",
|
|
roles: [DefaultAdminRoles.SuperAdmin],
|
|
},
|
|
{
|
|
name: "admin-subscriptions",
|
|
descriptionKey: "notifications.admin.channelDescriptions.admin-subscriptions",
|
|
roles: [DefaultAdminRoles.SuperAdmin],
|
|
},
|
|
{
|
|
name: "admin-api-keys",
|
|
descriptionKey: "notifications.admin.channelDescriptions.admin-api-keys",
|
|
roles: [DefaultAdminRoles.SuperAdmin],
|
|
},
|
|
{
|
|
name: "admin-emails",
|
|
descriptionKey: "notifications.admin.channelDescriptions.admin-emails",
|
|
roles: [DefaultAdminRoles.SuperAdmin],
|
|
},
|
|
{
|
|
name: "admin-groups",
|
|
descriptionKey: "notifications.admin.channelDescriptions.admin-groups",
|
|
roles: [DefaultAdminRoles.SuperAdmin],
|
|
},
|
|
{
|
|
name: "admin-linked-accounts",
|
|
descriptionKey: "notifications.admin.channelDescriptions.admin-linked-accounts",
|
|
roles: [DefaultAdminRoles.SuperAdmin],
|
|
},
|
|
{
|
|
name: "admin-account-members",
|
|
descriptionKey: "notifications.admin.channelDescriptions.admin-account-members",
|
|
roles: [DefaultAdminRoles.SuperAdmin],
|
|
},
|
|
{
|
|
name: "admin-onboarding",
|
|
descriptionKey: "notifications.admin.channelDescriptions.admin-onboarding",
|
|
roles: [DefaultAdminRoles.SuperAdmin],
|
|
},
|
|
{
|
|
name: "admin-rows",
|
|
descriptionKey: "notifications.admin.channelDescriptions.admin-rows",
|
|
roles: [DefaultAdminRoles.SuperAdmin],
|
|
},
|
|
{
|
|
name: "roles",
|
|
descriptionKey: "notifications.admin.channelDescriptions.roles",
|
|
roles: [DefaultAppRoles.SuperUser],
|
|
},
|
|
{
|
|
name: "my-rows",
|
|
descriptionKey: "notifications.admin.channelDescriptions.my-rows",
|
|
},
|
|
];
|