Fix a null or undefined condition
[e-mobility-charging-stations-simulator.git] / src / utils / Utils.ts
index 4a9bdb709a2ab8c530a18e2aaa4b41a2d452342c..6557a588446455506656c7f7133e8fe85c5881f0 100644 (file)
@@ -26,7 +26,7 @@ export default class Utils {
   }
 
   public static async sleep(milliSeconds: number): Promise<NodeJS.Timeout> {
-    return new Promise(resolve => setTimeout(resolve as () => void, milliSeconds));
+    return new Promise((resolve) => setTimeout(resolve as () => void, milliSeconds));
   }
 
   public static formatDurationMilliSeconds(duration: number): string {
@@ -184,8 +184,8 @@ export default class Utils {
     return clone<T>(object);
   }
 
-  public static isIterable<T>(obj: T): boolean {
-    return obj ? typeof obj[Symbol.iterator] === 'function' : false;
+  public static isIterable<T extends Iterable<T>>(obj: T): boolean {
+    return !Utils.isNullOrUndefined(obj) ? typeof obj[Symbol.iterator] === 'function' : false;
   }
 
   public static isString(value: unknown): boolean {
@@ -197,7 +197,7 @@ export default class Utils {
   }
 
   public static isUndefined(value: unknown): boolean {
-    return typeof value === 'undefined';
+    return value === undefined;
   }
 
   public static isNullOrUndefined(value: unknown): boolean {