feat: warn if charging profile schedule periods are not sorted
[e-mobility-charging-stations-simulator.git] / src / utils / Utils.ts
index ff41faf8a674540a8b512ac8664cb61e98bfc6ec..14869b0d35cee8bb2b9a429de17499196ac38437 100644 (file)
@@ -354,3 +354,12 @@ export const getWebSocketCloseEventStatusString = (code: number): string => {
   }
   return '(Unknown)';
 };
+
+export const isArraySorted = <T>(elements: T[], compareFn: (a: T, b: T) => number): boolean => {
+  for (let i = 0; i < elements.length - 1; ++i) {
+    if (compareFn(elements[i], elements[i + 1]) > 0) {
+      return false;
+    }
+  }
+  return true;
+};