@veritree/services 2.82.3 → 2.83.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/helpers/session.js +48 -18
package/package.json
CHANGED
package/src/helpers/session.js
CHANGED
|
@@ -1,17 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Retrieves the current user session from browser storage.
|
|
3
|
+
* Checks localStorage first, then falls back to sessionStorage.
|
|
4
|
+
*
|
|
5
|
+
* @returns {Object} The parsed session object, or an empty object if no session exists or parsing fails
|
|
6
|
+
*/
|
|
1
7
|
export const getSession = () => {
|
|
2
|
-
|
|
8
|
+
try {
|
|
9
|
+
const localSession = localStorage.getItem("session");
|
|
10
|
+
|
|
11
|
+
if (localSession) {
|
|
12
|
+
return JSON.parse(localSession);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
const sessionSession = sessionStorage.getItem("session");
|
|
16
|
+
|
|
17
|
+
if (sessionSession) {
|
|
18
|
+
return JSON.parse(sessionSession);
|
|
19
|
+
}
|
|
20
|
+
} catch (error) {
|
|
21
|
+
console.error("Failed to parse session data:", error);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
return {};
|
|
3
25
|
};
|
|
4
26
|
|
|
5
27
|
export const getMe = () => {
|
|
6
|
-
return JSON.parse(localStorage.getItem(
|
|
7
|
-
}
|
|
28
|
+
return JSON.parse(localStorage.getItem("me") || "{}");
|
|
29
|
+
};
|
|
8
30
|
|
|
9
31
|
/**
|
|
10
32
|
* Returns reseller org based on:
|
|
11
33
|
* - if has veritree org, return veritree org
|
|
12
34
|
* - if no veritree org, return first reseller org
|
|
13
35
|
*
|
|
14
|
-
* @param {Array<Object>} resellers
|
|
36
|
+
* @param {Array<{org: Object}>} resellers - Array of reseller objects, each containing an org property
|
|
15
37
|
* @returns {object} org
|
|
16
38
|
*/
|
|
17
39
|
export const getResellerOrg = (resellers) => {
|
|
@@ -19,7 +41,9 @@ export const getResellerOrg = (resellers) => {
|
|
|
19
41
|
return getVeritreeOrg(resellers);
|
|
20
42
|
}
|
|
21
43
|
|
|
22
|
-
return resellers
|
|
44
|
+
return Array.isArray(resellers) && resellers.length > 0
|
|
45
|
+
? resellers[0].org
|
|
46
|
+
: {};
|
|
23
47
|
};
|
|
24
48
|
|
|
25
49
|
/**
|
|
@@ -48,17 +72,17 @@ export function getOrgType(orgType) {
|
|
|
48
72
|
let orgTypeFormatted = null;
|
|
49
73
|
|
|
50
74
|
switch (orgType) {
|
|
51
|
-
case
|
|
52
|
-
orgTypeFormatted =
|
|
75
|
+
case "owner":
|
|
76
|
+
orgTypeFormatted = "ownerAccount";
|
|
53
77
|
break;
|
|
54
|
-
case
|
|
55
|
-
orgTypeFormatted =
|
|
78
|
+
case "organization":
|
|
79
|
+
orgTypeFormatted = "orgAccount";
|
|
56
80
|
break;
|
|
57
|
-
case
|
|
58
|
-
orgTypeFormatted =
|
|
81
|
+
case "sponsor":
|
|
82
|
+
orgTypeFormatted = "sponsorAccount";
|
|
59
83
|
break;
|
|
60
|
-
case
|
|
61
|
-
orgTypeFormatted =
|
|
84
|
+
case "reseller":
|
|
85
|
+
orgTypeFormatted = "resellerAccount";
|
|
62
86
|
break;
|
|
63
87
|
}
|
|
64
88
|
|
|
@@ -131,10 +155,16 @@ export const getUserOrganizations = (me) => {
|
|
|
131
155
|
}
|
|
132
156
|
|
|
133
157
|
return [
|
|
134
|
-
...(me.user_owners
|
|
135
|
-
|
|
158
|
+
...(me.user_owners
|
|
159
|
+
? me.user_owners.map((uo) => uo.org).filter(Boolean)
|
|
160
|
+
: []),
|
|
161
|
+
...(me.user_resellers
|
|
162
|
+
? me.user_resellers.map((ur) => ur.org).filter(Boolean)
|
|
163
|
+
: []),
|
|
136
164
|
...(me.user_orgs ? me.user_orgs.map((uo) => uo.org).filter(Boolean) : []),
|
|
137
|
-
...(me.user_sponsors
|
|
165
|
+
...(me.user_sponsors
|
|
166
|
+
? me.user_sponsors.map((us) => us.org).filter(Boolean)
|
|
167
|
+
: []),
|
|
138
168
|
];
|
|
139
169
|
};
|
|
140
170
|
|
|
@@ -151,7 +181,7 @@ export const extractOrgPublicIdFromPath = (path) => {
|
|
|
151
181
|
}
|
|
152
182
|
|
|
153
183
|
const url = new URL(path, location.origin);
|
|
154
|
-
const pathSegments = url.pathname.split(
|
|
184
|
+
const pathSegments = url.pathname.split("/").filter(Boolean);
|
|
155
185
|
|
|
156
186
|
return pathSegments.length > 0 ? pathSegments[0] : null;
|
|
157
|
-
};
|
|
187
|
+
};
|