@smg-automotive/auth 6.8.0-auth0-update-user-profile-endpoint.2 → 6.8.0-auth0-update-helpers.1
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/client/helpers/getAccessToken.d.ts +4 -0
- package/dist/cjs/client/helpers/getAccessToken.js +27 -0
- package/dist/cjs/client/helpers/getAccessToken.js.map +1 -0
- package/dist/cjs/client/helpers/index.d.ts +1 -0
- package/dist/cjs/client/hooks/__tests__/UseUser.Test.d.ts +1 -0
- package/dist/cjs/client/hooks/index.d.ts +1 -0
- package/dist/cjs/client/hooks/useUser.d.ts +9 -0
- package/dist/cjs/client/hooks/useUser.js +26 -0
- package/dist/cjs/client/hooks/useUser.js.map +1 -0
- package/dist/cjs/index.d.ts +2 -0
- package/dist/cjs/index.js +7 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/server/getAuth0Instance.d.ts +1 -2
- package/dist/cjs/server/helpers/getAccessToken.d.ts +2 -0
- package/dist/cjs/server/helpers/getAccessToken.js +12 -0
- package/dist/cjs/server/helpers/getAccessToken.js.map +1 -0
- package/dist/cjs/server/helpers/getUser.d.ts +3 -0
- package/dist/cjs/server/helpers/getUser.js +14 -0
- package/dist/cjs/server/helpers/getUser.js.map +1 -0
- package/dist/cjs/server/helpers/index.d.ts +3 -0
- package/dist/cjs/server/helpers/isLoggedIn.d.ts +2 -0
- package/dist/cjs/server/helpers/isLoggedIn.js +11 -0
- package/dist/cjs/server/helpers/isLoggedIn.js.map +1 -0
- package/dist/cjs/server/hooks/onCallbackFactory.js +6 -0
- package/dist/cjs/server/hooks/onCallbackFactory.js.map +1 -1
- package/dist/cjs/server/middleware/login.js +3 -2
- package/dist/cjs/server/middleware/login.js.map +1 -1
- package/dist/cjs/server.d.ts +2 -1
- package/dist/cjs/server.js +6 -0
- package/dist/cjs/server.js.map +1 -1
- package/dist/config-U4mojGmR.d.ts +38 -0
- package/dist/esm/client/helpers/getAccessToken.d.ts +4 -0
- package/dist/esm/client/helpers/getAccessToken.js +25 -0
- package/dist/esm/client/helpers/getAccessToken.js.map +1 -0
- package/dist/esm/client/helpers/index.d.ts +1 -0
- package/dist/esm/client/hooks/__tests__/UseUser.Test.d.ts +1 -0
- package/dist/esm/client/hooks/index.d.ts +1 -0
- package/dist/esm/client/hooks/useUser.d.ts +9 -0
- package/dist/esm/client/hooks/useUser.js +24 -0
- package/dist/esm/client/hooks/useUser.js.map +1 -0
- package/dist/esm/index.d.ts +2 -0
- package/dist/esm/index.js +2 -1
- package/dist/esm/server/getAuth0Instance.d.ts +1 -2
- package/dist/esm/server/helpers/getAccessToken.d.ts +2 -0
- package/dist/esm/server/helpers/getAccessToken.js +10 -0
- package/dist/esm/server/helpers/getAccessToken.js.map +1 -0
- package/dist/esm/server/helpers/getUser.d.ts +3 -0
- package/dist/esm/server/helpers/getUser.js +12 -0
- package/dist/esm/server/helpers/getUser.js.map +1 -0
- package/dist/esm/server/helpers/index.d.ts +3 -0
- package/dist/esm/server/helpers/isLoggedIn.d.ts +2 -0
- package/dist/esm/server/helpers/isLoggedIn.js +9 -0
- package/dist/esm/server/helpers/isLoggedIn.js.map +1 -0
- package/dist/esm/server/hooks/onCallbackFactory.js +6 -0
- package/dist/esm/server/hooks/onCallbackFactory.js.map +1 -1
- package/dist/esm/server/middleware/login.js +3 -2
- package/dist/esm/server/middleware/login.js.map +1 -1
- package/dist/esm/server.d.ts +2 -1
- package/dist/esm/server.js +3 -0
- package/dist/esm/server.js.map +1 -1
- package/dist/fixtures.d.ts +3 -80
- package/dist/index.d.ts +17 -1
- package/dist/server.d.ts +14 -1
- package/dist/sessionUser-cqv4vnLO.d.ts +45 -0
- package/package.json +7 -4
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var errors = require('@auth0/nextjs-auth0/errors');
|
|
4
|
+
|
|
5
|
+
const getAccessToken = async ({ config }) => {
|
|
6
|
+
const tokenResponse = await fetch(config.tokenEndpoint, {
|
|
7
|
+
method: 'GET',
|
|
8
|
+
headers: {
|
|
9
|
+
'Content-Type': 'application/json',
|
|
10
|
+
},
|
|
11
|
+
});
|
|
12
|
+
if (!tokenResponse.ok) {
|
|
13
|
+
let accessTokenError;
|
|
14
|
+
try {
|
|
15
|
+
accessTokenError = await tokenResponse.json();
|
|
16
|
+
}
|
|
17
|
+
catch {
|
|
18
|
+
throw new Error('Unexpected error when getting access token');
|
|
19
|
+
}
|
|
20
|
+
throw new errors.AccessTokenError(accessTokenError.error.code, accessTokenError.error.message);
|
|
21
|
+
}
|
|
22
|
+
const tokenSet = await tokenResponse.json();
|
|
23
|
+
return tokenSet.token;
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
exports.getAccessToken = getAccessToken;
|
|
27
|
+
//# sourceMappingURL=getAccessToken.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getAccessToken.js","sources":["../../../../../src/client/helpers/getAccessToken.ts"],"sourcesContent":[null],"names":["AccessTokenError"],"mappings":";;;;AAIO,MAAM,cAAc,GAAG,OAAO,EAAE,MAAM,EAA2B,KAAI;IAC1E,MAAM,aAAa,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE;AACtD,QAAA,MAAM,EAAE,KAAK;AACb,QAAA,OAAO,EAAE;AACP,YAAA,cAAc,EAAE,kBAAkB;AACnC,SAAA;AACF,KAAA,CAAC;AAEF,IAAA,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE;AACrB,QAAA,IAAI,gBAAgB;AAEpB,QAAA,IAAI;AACF,YAAA,gBAAgB,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE;QAC/C;AAAE,QAAA,MAAM;AACN,YAAA,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC;QAC/D;AAEA,QAAA,MAAM,IAAIA,uBAAgB,CACxB,gBAAgB,CAAC,KAAK,CAAC,IAAI,EAC3B,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAC/B;IACH;AAEA,IAAA,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE;IAC3C,OAAO,QAAQ,CAAC,KAAK;AACvB;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { getAccessToken } from './getAccessToken';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { useUser } from './useUser';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Auth0Config, EnrichedSessionUser } from 'src/types';
|
|
2
|
+
export declare const useUser: ({ config }: {
|
|
3
|
+
config: Auth0Config;
|
|
4
|
+
}) => {
|
|
5
|
+
user: EnrichedSessionUser | null;
|
|
6
|
+
error: Error | null;
|
|
7
|
+
isLoading: boolean;
|
|
8
|
+
invalidate: () => Promise<EnrichedSessionUser | undefined>;
|
|
9
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var useSWR = require('swr');
|
|
5
|
+
var react = require('react');
|
|
6
|
+
|
|
7
|
+
const userFetcher = async (url) => {
|
|
8
|
+
const response = await fetch(url);
|
|
9
|
+
if (!response.ok) {
|
|
10
|
+
throw new Error('Unauthorized');
|
|
11
|
+
}
|
|
12
|
+
return response.json();
|
|
13
|
+
};
|
|
14
|
+
const useUser = ({ config }) => {
|
|
15
|
+
const { data, error, isLoading, mutate } = useSWR(config.userProfileEndpoint, userFetcher);
|
|
16
|
+
const invalidate = react.useCallback(() => mutate(), [mutate]);
|
|
17
|
+
return {
|
|
18
|
+
user: data ?? null,
|
|
19
|
+
error: error ?? null,
|
|
20
|
+
isLoading,
|
|
21
|
+
invalidate,
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
exports.useUser = useUser;
|
|
26
|
+
//# sourceMappingURL=useUser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useUser.js","sources":["../../../../../src/client/hooks/useUser.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAOA;AACE;AACA;AACE;;AAGF;AACF;;AAGE;AAMA;;;;;;;AAQF;;"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
'use strict';
|
|
3
2
|
|
|
3
|
+
var getAccessToken = require('./client/helpers/getAccessToken.js');
|
|
4
|
+
var useUser = require('./client/hooks/useUser.js');
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
exports.getAccessToken = getAccessToken.getAccessToken;
|
|
9
|
+
exports.useUser = useUser.useUser;
|
|
4
10
|
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Auth0Client } from '@auth0/nextjs-auth0/server';
|
|
2
|
-
type GetAuth0InstanceContext = {
|
|
2
|
+
export type GetAuth0InstanceContext = {
|
|
3
3
|
protocol: string;
|
|
4
4
|
host: string;
|
|
5
5
|
isProxied: boolean;
|
|
@@ -7,4 +7,3 @@ type GetAuth0InstanceContext = {
|
|
|
7
7
|
export declare const getAuth0Instance: ({ protocol, host, isProxied, onError, }: GetAuth0InstanceContext & {
|
|
8
8
|
onError?: (error: Error) => void;
|
|
9
9
|
}) => Auth0Client;
|
|
10
|
-
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var getAuth0Instance = require('../getAuth0Instance.js');
|
|
4
|
+
|
|
5
|
+
const getAccessToken = async (context) => {
|
|
6
|
+
const auth0Instance = getAuth0Instance.getAuth0Instance(context);
|
|
7
|
+
const { token } = await auth0Instance.getAccessToken();
|
|
8
|
+
return token;
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
exports.getAccessToken = getAccessToken;
|
|
12
|
+
//# sourceMappingURL=getAccessToken.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getAccessToken.js","sources":["../../../../../src/server/helpers/getAccessToken.ts"],"sourcesContent":[null],"names":["getAuth0Instance"],"mappings":";;;;MAEa,cAAc,GAAG,OAAO,OAAgC,KAAI;AACvE,IAAA,MAAM,aAAa,GAAGA,iCAAgB,CAAC,OAAO,CAAC;IAC/C,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,aAAa,CAAC,cAAc,EAAE;AACtD,IAAA,OAAO,KAAK;AACd;;;;"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var getAuth0Instance = require('../getAuth0Instance.js');
|
|
4
|
+
|
|
5
|
+
const getUser = async (context) => {
|
|
6
|
+
const auth0Instance = getAuth0Instance.getAuth0Instance(context);
|
|
7
|
+
const sessionData = await auth0Instance.getSession();
|
|
8
|
+
if (!sessionData || !sessionData.user)
|
|
9
|
+
return null;
|
|
10
|
+
return sessionData.user;
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
exports.getUser = getUser;
|
|
14
|
+
//# sourceMappingURL=getUser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getUser.js","sources":["../../../../../src/server/helpers/getUser.ts"],"sourcesContent":[null],"names":["getAuth0Instance"],"mappings":";;;;MAIa,OAAO,GAAG,OACrB,OAAgC,KACD;AAC/B,IAAA,MAAM,aAAa,GAAGA,iCAAgB,CAAC,OAAO,CAAC;AAC/C,IAAA,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE;AAEpD,IAAA,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,IAAI;AAAE,QAAA,OAAO,IAAI;IAElD,OAAO,WAAW,CAAC,IAAmB;AACxC;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isLoggedIn.js","sources":["../../../../../src/server/helpers/isLoggedIn.ts"],"sourcesContent":[null],"names":["getUser"],"mappings":";;;;MAGa,UAAU,GAAG,OAAO,OAAgC,KAAI;AACnE,IAAA,MAAM,IAAI,GAAG,MAAMA,eAAO,CAAC,OAAO,CAAC;IACnC,OAAO,CAAC,CAAC,IAAI;AACf;;;;"}
|
|
@@ -22,6 +22,12 @@ const getLocaleFromContext = ({ returnTo }, appBaseUrl) => {
|
|
|
22
22
|
const errorCodeRegex = /\(([^)(]+)\)/;
|
|
23
23
|
const incompleteTokenErrorCode = 'ERR_INCOMPLETE_TOKEN';
|
|
24
24
|
const handleAuth0Error = ({ error, auth0Config, appBaseUrl, localeFromUrl, onError, }) => {
|
|
25
|
+
if (error.code === 'authorization_error' &&
|
|
26
|
+
error.cause?.code === 'access_denied') {
|
|
27
|
+
const url = new URL(auth0Config.loginEndpoint, appBaseUrl);
|
|
28
|
+
url.searchParams.set('clean_state', 'true');
|
|
29
|
+
return server.NextResponse.redirect(url);
|
|
30
|
+
}
|
|
25
31
|
const authorizedLocales = auth0Config.languageConfig.supported;
|
|
26
32
|
const locale = authorizedLocales.includes(localeFromUrl)
|
|
27
33
|
? localeFromUrl
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onCallbackFactory.js","sources":["../../../../../src/server/hooks/onCallbackFactory.ts"],"sourcesContent":[null],"names":["NextResponse","cookies","decodeJwt"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"onCallbackFactory.js","sources":["../../../../../src/server/hooks/onCallbackFactory.ts"],"sourcesContent":[null],"names":["NextResponse","cookies","decodeJwt"],"mappings":"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"}
|
|
@@ -5,14 +5,15 @@ const addLoginParamsFromCookies = ({ request, auth0Config: { selectedSellerIdCoo
|
|
|
5
5
|
return;
|
|
6
6
|
const searchParams = new URLSearchParams(request.nextUrl.search);
|
|
7
7
|
const hasSellerId = searchParams.has('seller_id');
|
|
8
|
-
|
|
8
|
+
const cleanState = searchParams.get('clean_state') === 'true';
|
|
9
|
+
if (!hasSellerId && !cleanState) {
|
|
9
10
|
const sellerId = request.cookies.get(selectedSellerIdCookie.name)?.value;
|
|
10
11
|
if (sellerId) {
|
|
11
12
|
searchParams.set('seller_id', sellerId);
|
|
12
13
|
}
|
|
13
14
|
}
|
|
14
15
|
const hasImpersonateSellerId = searchParams.has('impersonate_seller_id');
|
|
15
|
-
if (!hasImpersonateSellerId) {
|
|
16
|
+
if (!hasImpersonateSellerId && !cleanState) {
|
|
16
17
|
const impersonatedSellerId = request.cookies.get(impersonatedSellerIdCookie.name)?.value;
|
|
17
18
|
if (impersonatedSellerId) {
|
|
18
19
|
searchParams.set('impersonate_seller_id', impersonatedSellerId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.js","sources":["../../../../../src/server/middleware/login.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAIO,MAAM,yBAAyB,GAAG,CAAC,EACxC,OAAO,EACP,WAAW,EAAE,EACX,sBAAsB,EACtB,0BAA0B,EAC1B,aAAa,GACd,GAIF,KAAyB;AACxB,IAAA,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ,KAAK,aAAa;QAAE;IAEhD,MAAM,YAAY,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;IAChE,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC;IACjD,IAAI,CAAC,WAAW,EAAE;
|
|
1
|
+
{"version":3,"file":"login.js","sources":["../../../../../src/server/middleware/login.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAIO,MAAM,yBAAyB,GAAG,CAAC,EACxC,OAAO,EACP,WAAW,EAAE,EACX,sBAAsB,EACtB,0BAA0B,EAC1B,aAAa,GACd,GAIF,KAAyB;AACxB,IAAA,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ,KAAK,aAAa;QAAE;IAEhD,MAAM,YAAY,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;IAChE,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC;IACjD,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,MAAM;AAE7D,IAAA,IAAI,CAAC,WAAW,IAAI,CAAC,UAAU,EAAE;AAC/B,QAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,KAAK;QACxE,IAAI,QAAQ,EAAE;AACZ,YAAA,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC;QACzC;IACF;IAEA,MAAM,sBAAsB,GAAG,YAAY,CAAC,GAAG,CAAC,uBAAuB,CAAC;AACxE,IAAA,IAAI,CAAC,sBAAsB,IAAI,CAAC,UAAU,EAAE;AAC1C,QAAA,MAAM,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAC9C,0BAA0B,CAAC,IAAI,CAChC,EAAE,KAAK;QAER,IAAI,oBAAoB,EAAE;AACxB,YAAA,YAAY,CAAC,GAAG,CAAC,uBAAuB,EAAE,oBAAoB,CAAC;QACjE;IACF;IAEA,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC,QAAQ,EAAE;AAClD;;;;"}
|
package/dist/cjs/server.d.ts
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
export
|
|
1
|
+
export * from './server/middleware';
|
|
2
|
+
export * from './server/helpers';
|
package/dist/cjs/server.js
CHANGED
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var index = require('./server/middleware/index.js');
|
|
4
|
+
var getAccessToken = require('./server/helpers/getAccessToken.js');
|
|
5
|
+
var getUser = require('./server/helpers/getUser.js');
|
|
6
|
+
var isLoggedIn = require('./server/helpers/isLoggedIn.js');
|
|
4
7
|
|
|
5
8
|
|
|
6
9
|
|
|
7
10
|
exports.authMiddleware = index.authMiddleware;
|
|
11
|
+
exports.getAccessToken = getAccessToken.getAccessToken;
|
|
12
|
+
exports.getUser = getUser.getUser;
|
|
13
|
+
exports.isLoggedIn = isLoggedIn.isLoggedIn;
|
|
8
14
|
//# sourceMappingURL=server.js.map
|
package/dist/cjs/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Language } from '@smg-automotive/i18n-pkg';
|
|
2
|
+
|
|
3
|
+
type CookieOptions = {
|
|
4
|
+
name: string;
|
|
5
|
+
httpOnly: boolean;
|
|
6
|
+
maxAge: number;
|
|
7
|
+
secure: boolean;
|
|
8
|
+
sameSite: boolean | 'lax' | 'strict' | 'none' | undefined;
|
|
9
|
+
path: string;
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
type Auth0Config = {
|
|
13
|
+
loginEndpoint: string;
|
|
14
|
+
logoutEndpoint: string;
|
|
15
|
+
tokenEndpoint: string;
|
|
16
|
+
callbackEndpoint: string;
|
|
17
|
+
userProfileEndpoint: string;
|
|
18
|
+
intervalDelayInMs: number;
|
|
19
|
+
refreshThresholdInMs: number;
|
|
20
|
+
selectedSellerIdCookie: CookieOptions;
|
|
21
|
+
impersonatedSellerIdCookie: CookieOptions;
|
|
22
|
+
proxyPathSegment: string;
|
|
23
|
+
legacyAccessTokenName: string;
|
|
24
|
+
legacyRefreshTokenName: string;
|
|
25
|
+
providerInterval: number;
|
|
26
|
+
debugForceTokenRefresh: boolean;
|
|
27
|
+
languageConfig: {
|
|
28
|
+
default: Language;
|
|
29
|
+
supported: Language[];
|
|
30
|
+
};
|
|
31
|
+
scopes: string;
|
|
32
|
+
globalAuthErrorPath: string;
|
|
33
|
+
authCookieNames: string[];
|
|
34
|
+
sessionCookieName: string;
|
|
35
|
+
audience: string;
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
export type { Auth0Config as A };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { AccessTokenError } from '@auth0/nextjs-auth0/errors';
|
|
2
|
+
|
|
3
|
+
const getAccessToken = async ({ config }) => {
|
|
4
|
+
const tokenResponse = await fetch(config.tokenEndpoint, {
|
|
5
|
+
method: 'GET',
|
|
6
|
+
headers: {
|
|
7
|
+
'Content-Type': 'application/json',
|
|
8
|
+
},
|
|
9
|
+
});
|
|
10
|
+
if (!tokenResponse.ok) {
|
|
11
|
+
let accessTokenError;
|
|
12
|
+
try {
|
|
13
|
+
accessTokenError = await tokenResponse.json();
|
|
14
|
+
}
|
|
15
|
+
catch {
|
|
16
|
+
throw new Error('Unexpected error when getting access token');
|
|
17
|
+
}
|
|
18
|
+
throw new AccessTokenError(accessTokenError.error.code, accessTokenError.error.message);
|
|
19
|
+
}
|
|
20
|
+
const tokenSet = await tokenResponse.json();
|
|
21
|
+
return tokenSet.token;
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
export { getAccessToken };
|
|
25
|
+
//# sourceMappingURL=getAccessToken.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getAccessToken.js","sources":["../../../../../src/client/helpers/getAccessToken.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAIO,MAAM,cAAc,GAAG,OAAO,EAAE,MAAM,EAA2B,KAAI;IAC1E,MAAM,aAAa,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE;AACtD,QAAA,MAAM,EAAE,KAAK;AACb,QAAA,OAAO,EAAE;AACP,YAAA,cAAc,EAAE,kBAAkB;AACnC,SAAA;AACF,KAAA,CAAC;AAEF,IAAA,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE;AACrB,QAAA,IAAI,gBAAgB;AAEpB,QAAA,IAAI;AACF,YAAA,gBAAgB,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE;QAC/C;AAAE,QAAA,MAAM;AACN,YAAA,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC;QAC/D;AAEA,QAAA,MAAM,IAAI,gBAAgB,CACxB,gBAAgB,CAAC,KAAK,CAAC,IAAI,EAC3B,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAC/B;IACH;AAEA,IAAA,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE;IAC3C,OAAO,QAAQ,CAAC,KAAK;AACvB;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { getAccessToken } from './getAccessToken';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { useUser } from './useUser';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Auth0Config, EnrichedSessionUser } from 'src/types';
|
|
2
|
+
export declare const useUser: ({ config }: {
|
|
3
|
+
config: Auth0Config;
|
|
4
|
+
}) => {
|
|
5
|
+
user: EnrichedSessionUser | null;
|
|
6
|
+
error: Error | null;
|
|
7
|
+
isLoading: boolean;
|
|
8
|
+
invalidate: () => Promise<EnrichedSessionUser | undefined>;
|
|
9
|
+
};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import useSWR from 'swr';
|
|
3
|
+
import { useCallback } from 'react';
|
|
4
|
+
|
|
5
|
+
const userFetcher = async (url) => {
|
|
6
|
+
const response = await fetch(url);
|
|
7
|
+
if (!response.ok) {
|
|
8
|
+
throw new Error('Unauthorized');
|
|
9
|
+
}
|
|
10
|
+
return response.json();
|
|
11
|
+
};
|
|
12
|
+
const useUser = ({ config }) => {
|
|
13
|
+
const { data, error, isLoading, mutate } = useSWR(config.userProfileEndpoint, userFetcher);
|
|
14
|
+
const invalidate = useCallback(() => mutate(), [mutate]);
|
|
15
|
+
return {
|
|
16
|
+
user: data ?? null,
|
|
17
|
+
error: error ?? null,
|
|
18
|
+
isLoading,
|
|
19
|
+
invalidate,
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
export { useUser };
|
|
24
|
+
//# sourceMappingURL=useUser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useUser.js","sources":["../../../../../src/client/hooks/useUser.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAOA;AACE;AACA;AACE;;AAGF;AACF;;AAGE;AAMA;;;;;;;AAQF;;"}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Auth0Client } from '@auth0/nextjs-auth0/server';
|
|
2
|
-
type GetAuth0InstanceContext = {
|
|
2
|
+
export type GetAuth0InstanceContext = {
|
|
3
3
|
protocol: string;
|
|
4
4
|
host: string;
|
|
5
5
|
isProxied: boolean;
|
|
@@ -7,4 +7,3 @@ type GetAuth0InstanceContext = {
|
|
|
7
7
|
export declare const getAuth0Instance: ({ protocol, host, isProxied, onError, }: GetAuth0InstanceContext & {
|
|
8
8
|
onError?: (error: Error) => void;
|
|
9
9
|
}) => Auth0Client;
|
|
10
|
-
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { getAuth0Instance } from '../getAuth0Instance.js';
|
|
2
|
+
|
|
3
|
+
const getAccessToken = async (context) => {
|
|
4
|
+
const auth0Instance = getAuth0Instance(context);
|
|
5
|
+
const { token } = await auth0Instance.getAccessToken();
|
|
6
|
+
return token;
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
export { getAccessToken };
|
|
10
|
+
//# sourceMappingURL=getAccessToken.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getAccessToken.js","sources":["../../../../../src/server/helpers/getAccessToken.ts"],"sourcesContent":[null],"names":[],"mappings":";;MAEa,cAAc,GAAG,OAAO,OAAgC,KAAI;AACvE,IAAA,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAC/C,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,aAAa,CAAC,cAAc,EAAE;AACtD,IAAA,OAAO,KAAK;AACd;;;;"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { getAuth0Instance } from '../getAuth0Instance.js';
|
|
2
|
+
|
|
3
|
+
const getUser = async (context) => {
|
|
4
|
+
const auth0Instance = getAuth0Instance(context);
|
|
5
|
+
const sessionData = await auth0Instance.getSession();
|
|
6
|
+
if (!sessionData || !sessionData.user)
|
|
7
|
+
return null;
|
|
8
|
+
return sessionData.user;
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export { getUser };
|
|
12
|
+
//# sourceMappingURL=getUser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getUser.js","sources":["../../../../../src/server/helpers/getUser.ts"],"sourcesContent":[null],"names":[],"mappings":";;MAIa,OAAO,GAAG,OACrB,OAAgC,KACD;AAC/B,IAAA,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC;AAC/C,IAAA,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE;AAEpD,IAAA,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,IAAI;AAAE,QAAA,OAAO,IAAI;IAElD,OAAO,WAAW,CAAC,IAAmB;AACxC;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isLoggedIn.js","sources":["../../../../../src/server/helpers/isLoggedIn.ts"],"sourcesContent":[null],"names":[],"mappings":";;MAGa,UAAU,GAAG,OAAO,OAAgC,KAAI;AACnE,IAAA,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC;IACnC,OAAO,CAAC,CAAC,IAAI;AACf;;;;"}
|
|
@@ -20,6 +20,12 @@ const getLocaleFromContext = ({ returnTo }, appBaseUrl) => {
|
|
|
20
20
|
const errorCodeRegex = /\(([^)(]+)\)/;
|
|
21
21
|
const incompleteTokenErrorCode = 'ERR_INCOMPLETE_TOKEN';
|
|
22
22
|
const handleAuth0Error = ({ error, auth0Config, appBaseUrl, localeFromUrl, onError, }) => {
|
|
23
|
+
if (error.code === 'authorization_error' &&
|
|
24
|
+
error.cause?.code === 'access_denied') {
|
|
25
|
+
const url = new URL(auth0Config.loginEndpoint, appBaseUrl);
|
|
26
|
+
url.searchParams.set('clean_state', 'true');
|
|
27
|
+
return NextResponse.redirect(url);
|
|
28
|
+
}
|
|
23
29
|
const authorizedLocales = auth0Config.languageConfig.supported;
|
|
24
30
|
const locale = authorizedLocales.includes(localeFromUrl)
|
|
25
31
|
? localeFromUrl
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onCallbackFactory.js","sources":["../../../../../src/server/hooks/onCallbackFactory.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"onCallbackFactory.js","sources":["../../../../../src/server/hooks/onCallbackFactory.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -3,14 +3,15 @@ const addLoginParamsFromCookies = ({ request, auth0Config: { selectedSellerIdCoo
|
|
|
3
3
|
return;
|
|
4
4
|
const searchParams = new URLSearchParams(request.nextUrl.search);
|
|
5
5
|
const hasSellerId = searchParams.has('seller_id');
|
|
6
|
-
|
|
6
|
+
const cleanState = searchParams.get('clean_state') === 'true';
|
|
7
|
+
if (!hasSellerId && !cleanState) {
|
|
7
8
|
const sellerId = request.cookies.get(selectedSellerIdCookie.name)?.value;
|
|
8
9
|
if (sellerId) {
|
|
9
10
|
searchParams.set('seller_id', sellerId);
|
|
10
11
|
}
|
|
11
12
|
}
|
|
12
13
|
const hasImpersonateSellerId = searchParams.has('impersonate_seller_id');
|
|
13
|
-
if (!hasImpersonateSellerId) {
|
|
14
|
+
if (!hasImpersonateSellerId && !cleanState) {
|
|
14
15
|
const impersonatedSellerId = request.cookies.get(impersonatedSellerIdCookie.name)?.value;
|
|
15
16
|
if (impersonatedSellerId) {
|
|
16
17
|
searchParams.set('impersonate_seller_id', impersonatedSellerId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.js","sources":["../../../../../src/server/middleware/login.ts"],"sourcesContent":[null],"names":[],"mappings":"AAIO,MAAM,yBAAyB,GAAG,CAAC,EACxC,OAAO,EACP,WAAW,EAAE,EACX,sBAAsB,EACtB,0BAA0B,EAC1B,aAAa,GACd,GAIF,KAAyB;AACxB,IAAA,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ,KAAK,aAAa;QAAE;IAEhD,MAAM,YAAY,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;IAChE,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC;IACjD,IAAI,CAAC,WAAW,EAAE;
|
|
1
|
+
{"version":3,"file":"login.js","sources":["../../../../../src/server/middleware/login.ts"],"sourcesContent":[null],"names":[],"mappings":"AAIO,MAAM,yBAAyB,GAAG,CAAC,EACxC,OAAO,EACP,WAAW,EAAE,EACX,sBAAsB,EACtB,0BAA0B,EAC1B,aAAa,GACd,GAIF,KAAyB;AACxB,IAAA,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ,KAAK,aAAa;QAAE;IAEhD,MAAM,YAAY,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;IAChE,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC;IACjD,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,MAAM;AAE7D,IAAA,IAAI,CAAC,WAAW,IAAI,CAAC,UAAU,EAAE;AAC/B,QAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,KAAK;QACxE,IAAI,QAAQ,EAAE;AACZ,YAAA,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC;QACzC;IACF;IAEA,MAAM,sBAAsB,GAAG,YAAY,CAAC,GAAG,CAAC,uBAAuB,CAAC;AACxE,IAAA,IAAI,CAAC,sBAAsB,IAAI,CAAC,UAAU,EAAE;AAC1C,QAAA,MAAM,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAC9C,0BAA0B,CAAC,IAAI,CAChC,EAAE,KAAK;QAER,IAAI,oBAAoB,EAAE;AACxB,YAAA,YAAY,CAAC,GAAG,CAAC,uBAAuB,EAAE,oBAAoB,CAAC;QACjE;IACF;IAEA,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC,QAAQ,EAAE;AAClD;;;;"}
|
package/dist/esm/server.d.ts
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
export
|
|
1
|
+
export * from './server/middleware';
|
|
2
|
+
export * from './server/helpers';
|
package/dist/esm/server.js
CHANGED
|
@@ -1,2 +1,5 @@
|
|
|
1
1
|
export { authMiddleware } from './server/middleware/index.js';
|
|
2
|
+
export { getAccessToken } from './server/helpers/getAccessToken.js';
|
|
3
|
+
export { getUser } from './server/helpers/getUser.js';
|
|
4
|
+
export { isLoggedIn } from './server/helpers/isLoggedIn.js';
|
|
2
5
|
//# sourceMappingURL=server.js.map
|
package/dist/esm/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"server.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
|
package/dist/fixtures.d.ts
CHANGED
|
@@ -1,86 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
name: string;
|
|
5
|
-
httpOnly: boolean;
|
|
6
|
-
maxAge: number;
|
|
7
|
-
secure: boolean;
|
|
8
|
-
sameSite: boolean | 'lax' | 'strict' | 'none' | undefined;
|
|
9
|
-
path: string;
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
type Auth0Config = {
|
|
13
|
-
loginEndpoint: string;
|
|
14
|
-
logoutEndpoint: string;
|
|
15
|
-
tokenEndpoint: string;
|
|
16
|
-
callbackEndpoint: string;
|
|
17
|
-
userProfileEndpoint: string;
|
|
18
|
-
intervalDelayInMs: number;
|
|
19
|
-
refreshThresholdInMs: number;
|
|
20
|
-
selectedSellerIdCookie: CookieOptions;
|
|
21
|
-
impersonatedSellerIdCookie: CookieOptions;
|
|
22
|
-
proxyPathSegment: string;
|
|
23
|
-
legacyAccessTokenName: string;
|
|
24
|
-
legacyRefreshTokenName: string;
|
|
25
|
-
providerInterval: number;
|
|
26
|
-
debugForceTokenRefresh: boolean;
|
|
27
|
-
languageConfig: {
|
|
28
|
-
default: Language;
|
|
29
|
-
supported: Language[];
|
|
30
|
-
};
|
|
31
|
-
scopes: string;
|
|
32
|
-
globalAuthErrorPath: string;
|
|
33
|
-
authCookieNames: string[];
|
|
34
|
-
sessionCookieName: string;
|
|
35
|
-
audience: string;
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
declare enum Auth0UserType {
|
|
39
|
-
Private = "private",
|
|
40
|
-
Professional = "professional"
|
|
41
|
-
}
|
|
42
|
-
type Auth0User = {
|
|
43
|
-
email: string;
|
|
44
|
-
email_verified: boolean;
|
|
45
|
-
sub: string;
|
|
46
|
-
};
|
|
1
|
+
import { A as Auth0Config } from './config-U4mojGmR.js';
|
|
2
|
+
import { E as EnrichedSessionUser, a as Entitlements } from './sessionUser-cqv4vnLO.js';
|
|
3
|
+
import '@smg-automotive/i18n-pkg';
|
|
47
4
|
|
|
48
5
|
declare const authConfig: (args?: Partial<Auth0Config>) => Auth0Config;
|
|
49
6
|
|
|
50
|
-
type ManagedSeller = {
|
|
51
|
-
id: number;
|
|
52
|
-
billingAddress: string | null;
|
|
53
|
-
billingCity: string | null;
|
|
54
|
-
billingCountryCode: string | null;
|
|
55
|
-
billingName: string | null;
|
|
56
|
-
billingPostOfficeBox: string | null;
|
|
57
|
-
billingZipCode: string | null;
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
type EntitlementsEntry = {
|
|
61
|
-
maxItems: number;
|
|
62
|
-
remainingItems: number | null;
|
|
63
|
-
};
|
|
64
|
-
type Entitlement = {
|
|
65
|
-
global: EntitlementsEntry;
|
|
66
|
-
listings: Record<number, EntitlementsEntry>;
|
|
67
|
-
usageDuration?: number;
|
|
68
|
-
};
|
|
69
|
-
type Entitlements = Record<string, Entitlement>;
|
|
70
|
-
|
|
71
|
-
type SessionUser = Auth0User & {
|
|
72
|
-
isImpersonated: boolean;
|
|
73
|
-
forceTenantSelection: boolean;
|
|
74
|
-
isMultiTenantUser: boolean;
|
|
75
|
-
userId: string;
|
|
76
|
-
sellerId: string;
|
|
77
|
-
userType: Auth0UserType;
|
|
78
|
-
};
|
|
79
|
-
type EnrichedSessionUser = SessionUser & {
|
|
80
|
-
entitlements: Entitlements | null;
|
|
81
|
-
managedSellers: ManagedSeller[];
|
|
82
|
-
};
|
|
83
|
-
|
|
84
7
|
declare const privateUser: (props?: Partial<Exclude<EnrichedSessionUser, "userType" | "isMultiTenantUser">>) => EnrichedSessionUser;
|
|
85
8
|
declare const professionalUser: (props?: Partial<Exclude<EnrichedSessionUser, "userType">>) => EnrichedSessionUser;
|
|
86
9
|
declare const multiTenantUser: (props?: Partial<Exclude<EnrichedSessionUser, "userType" | "isMultiTenantUser">>) => EnrichedSessionUser;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,2 +1,18 @@
|
|
|
1
|
+
import { A as Auth0Config } from './config-U4mojGmR.js';
|
|
2
|
+
import { E as EnrichedSessionUser } from './sessionUser-cqv4vnLO.js';
|
|
3
|
+
import '@smg-automotive/i18n-pkg';
|
|
1
4
|
|
|
2
|
-
|
|
5
|
+
declare const getAccessToken: ({ config }: {
|
|
6
|
+
config: Auth0Config;
|
|
7
|
+
}) => Promise<any>;
|
|
8
|
+
|
|
9
|
+
declare const useUser: ({ config }: {
|
|
10
|
+
config: Auth0Config;
|
|
11
|
+
}) => {
|
|
12
|
+
user: EnrichedSessionUser | null;
|
|
13
|
+
error: Error | null;
|
|
14
|
+
isLoading: boolean;
|
|
15
|
+
invalidate: () => Promise<EnrichedSessionUser | undefined>;
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export { getAccessToken, useUser };
|
package/dist/server.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { NextRequest, NextResponse } from 'next/server';
|
|
2
2
|
import { Language } from '@smg-automotive/i18n-pkg';
|
|
3
|
+
import { S as SessionUser } from './sessionUser-cqv4vnLO.js';
|
|
3
4
|
|
|
4
5
|
declare enum Brand {
|
|
5
6
|
AutoScout24 = "autoscout24",
|
|
@@ -17,4 +18,16 @@ declare const authMiddleware: ({ request, isProtectedRoute, language, host, prot
|
|
|
17
18
|
brand: Brand;
|
|
18
19
|
}) => Promise<NextResponse>;
|
|
19
20
|
|
|
20
|
-
|
|
21
|
+
type GetAuth0InstanceContext = {
|
|
22
|
+
protocol: string;
|
|
23
|
+
host: string;
|
|
24
|
+
isProxied: boolean;
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
declare const getAccessToken: (context: GetAuth0InstanceContext) => Promise<string>;
|
|
28
|
+
|
|
29
|
+
declare const getUser: (context: GetAuth0InstanceContext) => Promise<SessionUser | null>;
|
|
30
|
+
|
|
31
|
+
declare const isLoggedIn: (context: GetAuth0InstanceContext) => Promise<boolean>;
|
|
32
|
+
|
|
33
|
+
export { authMiddleware, getAccessToken, getUser, isLoggedIn };
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
declare enum Auth0UserType {
|
|
2
|
+
Private = "private",
|
|
3
|
+
Professional = "professional"
|
|
4
|
+
}
|
|
5
|
+
type Auth0User = {
|
|
6
|
+
email: string;
|
|
7
|
+
email_verified: boolean;
|
|
8
|
+
sub: string;
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
type ManagedSeller = {
|
|
12
|
+
id: number;
|
|
13
|
+
billingAddress: string | null;
|
|
14
|
+
billingCity: string | null;
|
|
15
|
+
billingCountryCode: string | null;
|
|
16
|
+
billingName: string | null;
|
|
17
|
+
billingPostOfficeBox: string | null;
|
|
18
|
+
billingZipCode: string | null;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
type EntitlementsEntry = {
|
|
22
|
+
maxItems: number;
|
|
23
|
+
remainingItems: number | null;
|
|
24
|
+
};
|
|
25
|
+
type Entitlement = {
|
|
26
|
+
global: EntitlementsEntry;
|
|
27
|
+
listings: Record<number, EntitlementsEntry>;
|
|
28
|
+
usageDuration?: number;
|
|
29
|
+
};
|
|
30
|
+
type Entitlements = Record<string, Entitlement>;
|
|
31
|
+
|
|
32
|
+
type SessionUser = Auth0User & {
|
|
33
|
+
isImpersonated: boolean;
|
|
34
|
+
forceTenantSelection: boolean;
|
|
35
|
+
isMultiTenantUser: boolean;
|
|
36
|
+
userId: string;
|
|
37
|
+
sellerId: string;
|
|
38
|
+
userType: Auth0UserType;
|
|
39
|
+
};
|
|
40
|
+
type EnrichedSessionUser = SessionUser & {
|
|
41
|
+
entitlements: Entitlements | null;
|
|
42
|
+
managedSellers: ManagedSeller[];
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
export type { EnrichedSessionUser as E, SessionUser as S, Entitlements as a };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@smg-automotive/auth",
|
|
3
|
-
"version": "6.8.0-auth0-update-
|
|
3
|
+
"version": "6.8.0-auth0-update-helpers.1",
|
|
4
4
|
"description": "SMG Automotive auth package",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": {
|
|
@@ -64,6 +64,7 @@
|
|
|
64
64
|
"dotenv": "17.2.1",
|
|
65
65
|
"jest": "30.0.5",
|
|
66
66
|
"jest-environment-jsdom": "30.0.5",
|
|
67
|
+
"jest-fetch-mock": "3.0.3",
|
|
67
68
|
"next": "15.5.0",
|
|
68
69
|
"react": "18.3.1",
|
|
69
70
|
"react-dom": "18.3.1",
|
|
@@ -73,6 +74,7 @@
|
|
|
73
74
|
"rollup-plugin-peer-deps-external": "2.2.4",
|
|
74
75
|
"rollup-plugin-preserve-directives": "0.4.0",
|
|
75
76
|
"semantic-release": "24.2.7",
|
|
77
|
+
"swr": "2.3.6",
|
|
76
78
|
"ts-jest": "29.4.1",
|
|
77
79
|
"ts-node": "10.9.2",
|
|
78
80
|
"typescript": "5.9.2",
|
|
@@ -85,8 +87,9 @@
|
|
|
85
87
|
"jose": "6.0.12"
|
|
86
88
|
},
|
|
87
89
|
"peerDependencies": {
|
|
88
|
-
"next": "
|
|
89
|
-
"react": "
|
|
90
|
-
"react-dom": "
|
|
90
|
+
"next": "^15.0.0",
|
|
91
|
+
"react": "^19.0.0",
|
|
92
|
+
"react-dom": "^19.0.0",
|
|
93
|
+
"swr": "^2.0.0"
|
|
91
94
|
}
|
|
92
95
|
}
|