const {v4: uuid} = require('uuid');
class Utils {
- static generateGUID() {
+ static generateUUID() {
return uuid();
}
return date.toISOString().substr(11, 8);
}
- static convertToDate(date) {
- // Check
- if (!date) {
- return date;
- }
- // Check Type
- if (!(date instanceof Date)) {
- return new Date(date);
- }
- return date;
- }
-
static isIterable(obj) {
if (obj) {
return typeof obj[Symbol.iterator] === 'function';
}
}
+ static convertToDate(date) {
+ // Check
+ if (!date) {
+ return date;
+ }
+ // Check Type
+ if (!(date instanceof Date)) {
+ return new Date(date);
+ }
+ return date;
+ }
+
static convertToObjectID(id) {
let changedID = id;
// Check
return changedID;
}
- static convertToInt(id) {
- let changedID = id;
- if (!id) {
+ static convertToInt(value) {
+ let changedValue = value;
+ if (!value) {
return 0;
}
+ if (Number.isSafeInteger(value)) {
+ return value;
+ }
// Check
- if (typeof id === 'string') {
+ if (typeof value === 'string') {
// Create Object
- changedID = parseInt(id);
+ changedValue = parseInt(value);
}
- return changedID;
+ return changedValue;
}
- static convertToFloat(id) {
- let changedID = id;
- if (!id) {
+ static convertToFloat(value) {
+ let changedValue = value;
+ if (!value) {
return 0;
}
// Check
- if (typeof id === 'string') {
+ if (typeof value === 'string') {
// Create Object
- changedID = parseFloat(id);
+ changedValue = parseFloat(value);
}
- return changedID;
+ return changedValue;
}
static convertToBoolean(value) {
return result;
}
- static getRandomInt(max, min) {
+ static getRandomFloat(max, min = 0) {
+ if (min) {
+ return Math.random() * (max - min + 1) + min;
+ }
+ return Math.random() * max + 1;
+ }
+
+ static getRandomInt(max, min = 0) {
+ if (min) {
+ return Math.floor(Utils.getRandomFloat(max, min));
+ }
+ return Math.floor(Utils.getRandomFloat(max));
+ }
+
+ static roundTo(number, scale) {
+ return Utils.convertToFloat(number.toFixed(scale));
+ }
+
+ static getRandomFloatRounded(max, min = 0, scale = 2) {
if (min) {
- return Math.floor((Math.random() * (max - min)) + min);
+ return Utils.roundTo(Utils.getRandomFloat(max, min), scale);
}
- return Math.floor((Math.random() * max));
+ return Utils.roundTo(Utils.getRandomFloat(max), scale);
}
- static basicFormatLog(prefixString = '') {
+ static logPrefix(prefixString = '') {
const date = new Date();
- return date.toISOString().substr(0, 19) + prefixString;
+ return date.toLocaleString() + prefixString;
}
static objectHasOwnProperty(object, property) {
static cloneJSonDocument(jsonDocument) {
return JSON.parse(JSON.stringify(jsonDocument));
}
+
+ static isString(value) {
+ return typeof value === 'string';
+ }
+
+ static isUndefined(value) {
+ return typeof value === 'undefined';
+ }
+
+ static isNullOrUndefined(value) {
+ // eslint-disable-next-line eqeqeq
+ if (value == null) {
+ return true;
+ }
+ return false;
+ }
+
+ static isEmptyArray(object) {
+ if (Array.isArray(object) && object.length > 0) {
+ return false;
+ }
+ return true;
+ }
}
module.exports = Utils;