mirror of
https://github.com/hexastack/hexabot
synced 2025-05-08 14:54:45 +00:00
fix: address comments
This commit is contained in:
parent
7a8a8fa151
commit
1e2fb1cfba
@ -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
|
||||
|
@ -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');
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -77,7 +77,7 @@ export interface NumberSetting extends Setting {
|
||||
type: SettingType.number;
|
||||
value: number;
|
||||
options: never;
|
||||
config: {
|
||||
config?: {
|
||||
min: number;
|
||||
max: number;
|
||||
step: number;
|
||||
|
Loading…
Reference in New Issue
Block a user