fix: address comments

This commit is contained in:
abdou6666 2024-12-30 09:44:17 +01:00
parent 7a8a8fa151
commit 1e2fb1cfba
3 changed files with 11 additions and 7 deletions

View File

@ -24,7 +24,6 @@ import { nlpValueModels } from './nlp/seeds/nlp-value.seed-model';
import { SettingSeeder } from './setting/seeds/setting.seed';
import { DEFAULT_SETTINGS } from './setting/seeds/setting.seed-model';
import { PermissionCreateDto } from './user/dto/permission.dto';
import { Model } from './user/schemas/model.schema';
import { Role } from './user/schemas/role.schema';
import { ModelSeeder } from './user/seeds/model.seed';
import { modelModels } from './user/seeds/model.seed-model';
@ -72,8 +71,8 @@ export async function seedDatabase(app: INestApplicationContext) {
throw e;
}
const models = (await modelSeeder.findAll()) as Model[];
const roles = (await roleSeeder.findAll()) as Role[];
const models = await modelSeeder.findAll();
const roles = await roleSeeder.findAll();
const adminRole = roles.find(({ name }) => name === 'admin') as Role;
const managerRole = roles.find(({ name }) => name === 'manager') as Role;
const managerModels = models.filter(
@ -84,11 +83,11 @@ export async function seedDatabase(app: INestApplicationContext) {
...managerModels.map((model) => [model.id, managerRole.id]),
] as [string, string][];
const permissionSeeds = roleModelsCombinations.reduce<PermissionCreateDto[]>(
const permissionSeeds = roleModelsCombinations.reduce(
(acc, [modelId, roleId]) => {
return acc.concat(permissionModels(modelId, roleId));
},
[],
[] as PermissionCreateDto[],
);
// Seed permissions

View File

@ -52,11 +52,16 @@ export class SettingRepository extends BaseRepository<Setting> {
if (payload && 'value' in payload) {
const hasType = 'type' in payload;
if (hasType) {
// Case when we need to update both the type and value
this.validateSettingValue(payload.type, payload.value);
} else {
// Case when we only update the setting value
const setting = await this.findOne(criteria);
if (setting && 'type' in setting)
if (setting && 'type' in setting) {
this.validateSettingValue(setting.type, payload.value);
} else {
throw new Error('Unable to find the setting to be updated');
}
}
}
}

View File

@ -77,7 +77,7 @@ export interface NumberSetting extends Setting {
type: SettingType.number;
value: number;
options: never;
config: {
config?: {
min: number;
max: number;
step: number;