/
githubmirror
/
novu
Обзор
Документация
Войти
/
githubmirror
/
novu
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
next
libs/application-generic/src/commands/project.command.ts
116 строк
2 KB
Adam Chmara
feat(api-service,worker): context bound preferences (inbox facing flow) fixes NV-6974 (#9816)
09 янв 2026, 16:47
Не верифицирован
09 янв 2026, 16:47
257f1f4
Код
Авторство
О чём код?
import { DirectionEnum, KeysOfT, UserSessionData } from '@novu/shared'; import { IsArray, IsDefined, IsEnum, IsNotEmpty, IsNumber, IsOptional, IsString, Max, Min } from 'class-validator'; import { BaseCommand } from './base.command'; export abstract class EnvironmentLevelCommand extends BaseCommand { @IsNotEmpty() readonly environmentId: string; readonly organizationId?: string; } export abstract class EnvironmentLevelWithUserCommand extends BaseCommand { @IsNotEmpty() readonly environmentId: string; readonly organizationId?: string; @IsNotEmpty() readonly userId: string; } export abstract class OrganizationLevelCommand extends BaseCommand { readonly environmentId?: string; @IsNotEmpty() readonly organizationId: string; } export abstract class OrganizationLevelWithUserCommand extends BaseCommand { readonly environmentId?: string; @IsNotEmpty() readonly organizationId: string; @IsNotEmpty() readonly userId: string; } export abstract class EnvironmentWithUserCommand extends BaseCommand { @IsNotEmpty() readonly environmentId: string; @IsNotEmpty() readonly organizationId: string; @IsNotEmpty() readonly userId: string; } export abstract class EnvironmentWithUserObjectCommand extends BaseCommand { @IsNotEmpty() user: UserSessionData; } export abstract class PaginatedListCommand extends EnvironmentWithUserObjectCommand { @IsDefined() @IsNumber() offset: number; @IsDefined() @IsNumber() limit: number; @IsDefined() @IsEnum(DirectionEnum) orderDirection: DirectionEnum; @IsDefined() @IsString() orderBy: string; } export abstract class EnvironmentWithSubscriber extends BaseCommand { @IsNotEmpty() readonly environmentId: string; @IsNotEmpty() readonly organizationId: string; @IsNotEmpty() readonly subscriberId: string; @IsOptional() @IsArray() @IsString({ each: true }) readonly contextKeys?: string[]; } export abstract class EnvironmentCommand extends BaseCommand { @IsNotEmpty() readonly environmentId: string; @IsNotEmpty() readonly organizationId: string; } export abstract class CursorBasedPaginatedCommand<T, K extends KeysOfT<T>> extends EnvironmentWithUserObjectCommand { @IsDefined() @IsNumber() @Min(1) @Max(100) limit: number; @IsString() @IsOptional() after?: string; @IsString() @IsOptional() before?: string; orderBy: K; orderDirection?: DirectionEnum; includeCursor?: boolean; }