src/utils/services/utils.service.ts
Methods |
|
Static capitalizeName | ||||||
capitalizeName(name: string)
|
||||||
Defined in src/utils/services/utils.service.ts:53
|
||||||
Parameters :
Returns :
string
|
Static generateHash | ||||||
generateHash(password: string)
|
||||||
Defined in src/utils/services/utils.service.ts:27
|
||||||
Parameters :
Returns :
string
|
Static generateRandomInteger |
generateRandomInteger(min: number, max: number)
|
Defined in src/utils/services/utils.service.ts:35
|
Returns :
number
|
Static generateRandomString | ||||||
generateRandomString(length: number)
|
||||||
Defined in src/utils/services/utils.service.ts:39
|
||||||
Parameters :
Returns :
string
|
Static getAge |
getAge(d1: Date, d2?: Date)
|
Defined in src/utils/services/utils.service.ts:47
|
Returns :
number
|
Static toDto | ||||||||||||
toDto(model, entity: E, options?: any)
|
||||||||||||
Defined in src/utils/services/utils.service.ts:5
|
||||||||||||
Type parameters :
|
||||||||||||
Parameters :
Returns :
T
|
Static toDto | ||||||||||||
toDto(model, entity: E[], options?: any)
|
||||||||||||
Defined in src/utils/services/utils.service.ts:10
|
||||||||||||
Type parameters :
|
||||||||||||
Parameters :
Returns :
T[]
|
Static toDto | ||||||||||||
toDto(model, entity: E | E[], options?: any)
|
||||||||||||
Defined in src/utils/services/utils.service.ts:15
|
||||||||||||
Type parameters :
|
||||||||||||
Parameters :
Returns :
T | []
|
Static validateHash |
validateHash(password: string, hash: string)
|
Defined in src/utils/services/utils.service.ts:31
|
Returns :
Promise<boolean>
|
import * as bcrypt from 'bcrypt';
import * as _ from 'lodash';
export class UtilsService {
public static toDto<T, E>(
model: new (entity: E, options?: any) => T,
entity: E,
options?: any,
): T;
public static toDto<T, E>(
model: new (entity: E, options?: any) => T,
entity: E[],
options?: any,
): T[];
public static toDto<T, E>(
model: new (entity: E, options?: any) => T,
entity: E | E[],
options?: any,
): T | T[] {
if (_.isArray(entity)) {
return entity.map((u) => new model(u, options));
}
return new model(entity, options);
}
static generateHash(password: string): string {
return bcrypt.hashSync(password, 10);
}
static validateHash(password: string, hash: string): Promise<boolean> {
return bcrypt.compare(password, hash || '');
}
static generateRandomInteger(min: number, max: number): number {
return Math.floor(min + Math.random() * (max + 1 - min));
}
static generateRandomString(length: number): string {
return Math.random()
.toString(36)
.replace(/[^a-zA-Z0-9]+/g, '')
.toUpperCase()
.substr(0, length);
}
static getAge(d1: Date, d2?: Date): number {
d2 = d2 || new Date();
const diff = d2.getTime() - d1.getTime();
return Math.floor(diff / (1000 * 60 * 60 * 24 * 365.25));
}
static capitalizeName(name: string): string {
return _.capitalize(name);
}
}