@openstax/ts-utils 1.12.2 → 1.12.3
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/dist/cjs/services/authProvider/index.d.ts +4 -3
- package/dist/cjs/services/authProvider/index.js +9 -6
- package/dist/cjs/tsconfig.without-specs.cjs.tsbuildinfo +1 -1
- package/dist/esm/services/authProvider/index.d.ts +4 -3
- package/dist/esm/services/authProvider/index.js +9 -6
- package/dist/esm/tsconfig.without-specs.esm.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { FetchConfig } from '../../fetch';
|
|
2
|
-
import type { HttpHeaders } from '../../routing';
|
|
2
|
+
import type { HttpHeaders, QueryParams } from '../../routing';
|
|
3
3
|
export interface TokenUser {
|
|
4
4
|
id: number;
|
|
5
5
|
name: string;
|
|
@@ -35,15 +35,16 @@ export declare type AuthProvider = {
|
|
|
35
35
|
getAuthorizedFetchConfig: () => Promise<FetchConfig>;
|
|
36
36
|
};
|
|
37
37
|
export declare type CookieAuthProviderRequest = {
|
|
38
|
-
headers: HttpHeaders;
|
|
39
38
|
cookies?: string[];
|
|
39
|
+
headers: HttpHeaders;
|
|
40
|
+
queryStringParameters?: QueryParams;
|
|
40
41
|
};
|
|
41
42
|
export declare type CookieAuthProvider = (inputs: {
|
|
42
43
|
request: CookieAuthProviderRequest;
|
|
43
44
|
}) => AuthProvider;
|
|
44
45
|
export declare type StubAuthProvider = (user: User | undefined) => AuthProvider;
|
|
45
46
|
export declare const stubAuthProvider: (user?: User | undefined) => AuthProvider;
|
|
46
|
-
export declare const getAuthTokenOrCookie: (request: CookieAuthProviderRequest, cookieName: string) => [string, {
|
|
47
|
+
export declare const getAuthTokenOrCookie: (request: CookieAuthProviderRequest, cookieName: string, queryKey?: string) => [string, {
|
|
47
48
|
Authorization: string;
|
|
48
49
|
}] | [string, {
|
|
49
50
|
cookie: string;
|
|
@@ -12,12 +12,15 @@ const stubAuthProvider = (user) => ({
|
|
|
12
12
|
getAuthorizedFetchConfig: () => Promise.resolve(user ? { headers: { Authorization: user.uuid } } : {})
|
|
13
13
|
});
|
|
14
14
|
exports.stubAuthProvider = stubAuthProvider;
|
|
15
|
-
const getAuthTokenOrCookie = (request, cookieName) => {
|
|
16
|
-
var _a;
|
|
15
|
+
const getAuthTokenOrCookie = (request, cookieName, queryKey = 'auth') => {
|
|
16
|
+
var _a, _b;
|
|
17
|
+
const authParam = request.queryStringParameters ? request.queryStringParameters[queryKey] : undefined;
|
|
17
18
|
const authHeader = (0, helpers_2.getHeader)(request.headers, 'authorization');
|
|
18
|
-
const cookieValue = cookie_1.default.parse(((_a = request.cookies) === null || _a === void 0 ? void 0 : _a.join('; '))
|
|
19
|
-
return
|
|
20
|
-
? (0, helpers_1.tuple)(
|
|
21
|
-
:
|
|
19
|
+
const cookieValue = cookie_1.default.parse((_b = (_a = request.cookies) === null || _a === void 0 ? void 0 : _a.join('; ')) !== null && _b !== void 0 ? _b : '')[cookieName];
|
|
20
|
+
return typeof authParam === 'string'
|
|
21
|
+
? (0, helpers_1.tuple)(authParam, { Authorization: `Bearer ${authParam}` })
|
|
22
|
+
: authHeader && authHeader.length >= 8 && authHeader.startsWith('Bearer ')
|
|
23
|
+
? (0, helpers_1.tuple)(authHeader.slice(7), { Authorization: authHeader })
|
|
24
|
+
: (0, helpers_1.tuple)(cookieValue, { cookie: cookie_1.default.serialize(cookieName, cookieValue) });
|
|
22
25
|
};
|
|
23
26
|
exports.getAuthTokenOrCookie = getAuthTokenOrCookie;
|