From 348471513e9ea954cc51da71cf8c161acd0ee153 Mon Sep 17 00:00:00 2001
From: DewanaGustavus <76590469+DewanaGustavus@users.noreply.github.com>
Date: Thu, 16 Nov 2023 23:06:17 +0700
Subject: [PATCH] feat: SOAP JSON response parser

---
 src/utils/JSONConverter.ts | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)
 create mode 100644 src/utils/JSONConverter.ts

diff --git a/src/utils/JSONConverter.ts b/src/utils/JSONConverter.ts
new file mode 100644
index 0000000..e3d4be9
--- /dev/null
+++ b/src/utils/JSONConverter.ts
@@ -0,0 +1,26 @@
+
+type JSONType = JSON | JSON[] | null;
+
+export function ConvertArray<T>(data : JSONType) {
+    if (data === null) {
+        return [];
+    }
+
+    const arrayData = Array.isArray(data) ? data : [data];
+
+    const parsedData = arrayData.map((item) => {
+        return JSON.parse(JSON.stringify(item)) as T;
+    });
+
+    return parsedData;
+}
+
+export function ConvertSingle<T>(data : JSONType) {
+    if (Array.isArray(data)) {
+        data = data.length > 0 ? data[0] : null;
+    }
+
+    const order = JSON.parse(JSON.stringify(data)) as T;
+
+    return order;
+}
\ No newline at end of file
-- 
GitLab