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