|
1 |
| -const s = (t) => { |
| 1 | +const f = (t, e) => { |
2 | 2 | if (typeof t != "object" || t === null)
|
3 | 3 | return t;
|
4 | 4 | const a = {};
|
5 |
| - for (const r in t) |
6 |
| - a[r] = s(t[r]); |
7 |
| - return a; |
8 |
| -}, d = (t) => { |
| 5 | + for (const n in t) |
| 6 | + a[n] = f(t[n]); |
| 7 | + return typeof a.url == "string" && a.url.startsWith("/") && (e || (e = process.env.CMS_URL), a.url = `${e}${a.url}`), a; |
| 8 | +}, d = (t, e) => { |
9 | 9 | const a = {};
|
10 |
| - for (const r in t) { |
11 |
| - const e = t[r]; |
12 |
| - if (typeof e == "object" && e !== null && "data" in e && e.data !== null && "id" in e.data && "attributes" in e.data) { |
13 |
| - const i = l(e); |
14 |
| - a[r] = { id: e.data.id, ...i }; |
| 10 | + for (const n in t) { |
| 11 | + const o = t[n]; |
| 12 | + if (typeof o == "object" && o !== null && "data" in o && o.data !== null && "id" in o.data && "attributes" in o.data) { |
| 13 | + const i = s(o, e); |
| 14 | + a[n] = { id: o.data.id, ...i }; |
15 | 15 | } else
|
16 |
| - Array.isArray(e) ? a[r] = e.map((i) => d(i)) : a[r] = s(e); |
| 16 | + Array.isArray(o) ? a[n] = o.map((i) => d(i, e)) : a[n] = f(o, e); |
17 | 17 | }
|
18 | 18 | return a;
|
19 |
| -}, l = (t) => { |
| 19 | +}, s = (t, e) => { |
20 | 20 | if (Array.isArray(t))
|
21 | 21 | return {
|
22 |
| - data: t.map(l) |
| 22 | + data: t.map((n) => s(n, e)) |
23 | 23 | };
|
24 | 24 | if (t == null || typeof t == "object" && !Object.keys(t).length)
|
25 | 25 | return null;
|
26 | 26 | let a = { ...t };
|
27 | 27 | return t.attributes && (a = {
|
28 | 28 | ...a,
|
29 |
| - ...d(t.attributes) |
30 |
| - }, delete a.attributes), t.data && (a = l(t.data)), a; |
31 |
| -}, m = (t) => { |
32 |
| - const a = t?.meta?.pagination?.total, r = t?.meta?.pagination?.limit, e = t?.meta?.pagination?.start; |
33 |
| - let i = 0, n = 1; |
34 |
| - a && r && (i = Math.ceil(a / r)), e && r && (n = Math.floor(e / r) + 1); |
35 |
| - const c = n < i, f = n >= 2; |
36 |
| - let o = l(t.data); |
37 |
| - return o.data && (o = o.data), { |
| 29 | + ...d(t.attributes, e) |
| 30 | + }, delete a.attributes), t.data && (a = s(t.data, e)), a.url?.startsWith("/") && (e || (e = process.env.CMS_URL), a.url = `${e}${a.url}`), a; |
| 31 | +}, m = (t, e) => { |
| 32 | + const a = t?.meta?.pagination?.total, n = t?.meta?.pagination?.limit, o = t?.meta?.pagination?.start; |
| 33 | + let i = 0, r = 1; |
| 34 | + a && n && (i = Math.ceil(a / n)), o && n && (r = Math.floor(o / n) + 1); |
| 35 | + const u = r < i, c = r >= 2; |
| 36 | + let l = s(t.data, e); |
| 37 | + return l.data && (l = l.data), { |
38 | 38 | meta: {
|
39 | 39 | ...t?.meta,
|
40 | 40 | pagination: {
|
41 | 41 | ...t?.meta?.pagination,
|
42 | 42 | ...i && { pages: i },
|
43 |
| - ...n && { page: n }, |
44 |
| - hasNextPage: c, |
45 |
| - hasPrevPage: f |
| 43 | + ...r && { page: r }, |
| 44 | + hasNextPage: u, |
| 45 | + hasPrevPage: c |
46 | 46 | }
|
47 | 47 | },
|
48 |
| - data: o |
| 48 | + data: l |
49 | 49 | };
|
50 | 50 | };
|
51 | 51 | export {
|
52 | 52 | m as normalize,
|
53 |
| - l as normalizeContent, |
| 53 | + s as normalizeContent, |
54 | 54 | d as normalizeNestedAttributes
|
55 | 55 | };
|
0 commit comments