@react-keycloak-refork/ssr 5.0.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/LICENSE.md +24 -0
- package/README.md +261 -0
- package/lib/SSRKeycloakProvider.d.ts +20 -0
- package/lib/SSRKeycloakProvider.js +78 -0
- package/lib/SSRKeycloakProvider.js.map +10 -0
- package/lib/index.d.ts +7 -0
- package/lib/index.js +8 -0
- package/lib/index.js.map +10 -0
- package/lib/internals/KeycloakProvider.d.ts +146 -0
- package/lib/internals/KeycloakProvider.js +4 -0
- package/lib/internals/KeycloakProvider.js.map +10 -0
- package/lib/internals/context.d.ts +4 -0
- package/lib/internals/context.js +8 -0
- package/lib/internals/context.js.map +10 -0
- package/lib/internals/keycloak.d.ts +5 -0
- package/lib/internals/keycloak.js +29 -0
- package/lib/internals/keycloak.js.map +10 -0
- package/lib/internals/utils.d.ts +1 -0
- package/lib/internals/utils.js +2 -0
- package/lib/internals/utils.js.map +10 -0
- package/lib/persistors/client.d.ts +11 -0
- package/lib/persistors/client.js +26 -0
- package/lib/persistors/client.js.map +10 -0
- package/lib/persistors/server.d.ts +3 -0
- package/lib/persistors/server.js +34 -0
- package/lib/persistors/server.js.map +10 -0
- package/lib/persistors/types.d.ts +22 -0
- package/lib/persistors/types.js +2 -0
- package/lib/persistors/types.js.map +10 -0
- package/lib/persistors/utils.d.ts +5 -0
- package/lib/persistors/utils.js +20 -0
- package/lib/persistors/utils.js.map +10 -0
- package/lib/types.d.ts +6 -0
- package/lib/types.js +2 -0
- package/lib/types.js.map +10 -0
- package/lib/useKeycloak.d.ts +6 -0
- package/lib/useKeycloak.js +12 -0
- package/lib/useKeycloak.js.map +10 -0
- package/lib/withKeycloak.d.ts +43 -0
- package/lib/withKeycloak.js +25 -0
- package/lib/withKeycloak.js.map +10 -0
- package/lib-commonjs/SSRKeycloakProvider.d.ts +20 -0
- package/lib-commonjs/SSRKeycloakProvider.js +104 -0
- package/lib-commonjs/SSRKeycloakProvider.js.map +10 -0
- package/lib-commonjs/index.d.ts +7 -0
- package/lib-commonjs/index.js +29 -0
- package/lib-commonjs/index.js.map +10 -0
- package/lib-commonjs/internals/KeycloakProvider.d.ts +146 -0
- package/lib-commonjs/internals/KeycloakProvider.js +7 -0
- package/lib-commonjs/internals/KeycloakProvider.js.map +10 -0
- package/lib-commonjs/internals/context.d.ts +4 -0
- package/lib-commonjs/internals/context.js +11 -0
- package/lib-commonjs/internals/context.js.map +10 -0
- package/lib-commonjs/internals/keycloak.d.ts +5 -0
- package/lib-commonjs/internals/keycloak.js +34 -0
- package/lib-commonjs/internals/keycloak.js.map +10 -0
- package/lib-commonjs/internals/utils.d.ts +1 -0
- package/lib-commonjs/internals/utils.js +6 -0
- package/lib-commonjs/internals/utils.js.map +10 -0
- package/lib-commonjs/persistors/client.d.ts +11 -0
- package/lib-commonjs/persistors/client.js +29 -0
- package/lib-commonjs/persistors/client.js.map +10 -0
- package/lib-commonjs/persistors/server.d.ts +3 -0
- package/lib-commonjs/persistors/server.js +39 -0
- package/lib-commonjs/persistors/server.js.map +10 -0
- package/lib-commonjs/persistors/types.d.ts +22 -0
- package/lib-commonjs/persistors/types.js +3 -0
- package/lib-commonjs/persistors/types.js.map +10 -0
- package/lib-commonjs/persistors/utils.d.ts +5 -0
- package/lib-commonjs/persistors/utils.js +31 -0
- package/lib-commonjs/persistors/utils.js.map +10 -0
- package/lib-commonjs/types.d.ts +6 -0
- package/lib-commonjs/types.js +3 -0
- package/lib-commonjs/types.js.map +10 -0
- package/lib-commonjs/useKeycloak.d.ts +6 -0
- package/lib-commonjs/useKeycloak.js +16 -0
- package/lib-commonjs/useKeycloak.js.map +10 -0
- package/lib-commonjs/withKeycloak.d.ts +43 -0
- package/lib-commonjs/withKeycloak.js +52 -0
- package/lib-commonjs/withKeycloak.js.map +10 -0
- package/package.json +71 -0
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"file": "keycloak.js",
|
|
4
|
+
"sourceRoot": "",
|
|
5
|
+
"sources": [
|
|
6
|
+
"@react-keycloak-refork\\ssr\\internals\\keycloak.ts"
|
|
7
|
+
],
|
|
8
|
+
"names": [],
|
|
9
|
+
"mappings": "AAMA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAElC,qBAAqB;AACrB,IAAI,gBAA4B,CAAA;AAEhC,yBAAyB;AACzB,IAAI,oBAAmC,CAAA;AAEvC,gFAAgF;AAChF,2EAA2E;AAC3E,MAAM,CAAC,IAAM,eAAe,GAAG,UAAC,SAAyB;IACvD,IAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,EAAE,CAAA;IAEtC,oBAAoB,GAAG;QACrB,IAAI,EAAE,cAAM,OAAA,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAArB,CAAqB;QACjC,WAAW,EAAE,cAAM,OAAA,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAtB,CAAsB;QACzC,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,aAAa,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK;KAC1B,CAAA;IAE7B,OAAO,oBAAoB,CAAA;AAC7B,CAAC,CAAA;AAED,IAAM,QAAQ,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;AAEpE,MAAM,CAAC,IAAM,mBAAmB,GAAG,UACjC,cAA8B,EAC9B,SAA0B,EAC1B,QAAgB;IAAhB,yBAAA,EAAA,gBAAgB;IAEhB,IAAM,aAAa,GAAG,QAAQ,EAAE,CAAA;IAEhC,IAAI,QAAQ,IAAI,CAAC,CAAC,gBAAgB,IAAI,CAAC,aAAa,CAAC,EAAE;QACrD,gBAAgB,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAA;KAC5C;IAED,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,eAAe,CAAC,SAAU,CAAC,CAAA;AACxE,CAAC,CAAA"
|
|
10
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const isServer: () => boolean;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { AuthClientTokens } from '@react-keycloak-refork/core';
|
|
2
|
+
import type { TokenPersistor } from './types';
|
|
3
|
+
export declare class Cookies implements TokenPersistor {
|
|
4
|
+
setTokens({ idToken, token }: AuthClientTokens): void;
|
|
5
|
+
getTokens(): {
|
|
6
|
+
idToken: string | undefined;
|
|
7
|
+
refreshToken: string;
|
|
8
|
+
token: string | undefined;
|
|
9
|
+
};
|
|
10
|
+
resetTokens(): void;
|
|
11
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { getCookie, removeCookie, setCookie } from './utils';
|
|
2
|
+
var Cookies = /** @class */ (function () {
|
|
3
|
+
function Cookies() {
|
|
4
|
+
}
|
|
5
|
+
Cookies.prototype.setTokens = function (_a) {
|
|
6
|
+
var idToken = _a.idToken, token = _a.token;
|
|
7
|
+
!!token && setCookie('kcToken', btoa(token));
|
|
8
|
+
!!idToken && setCookie('kcIdToken', btoa(idToken));
|
|
9
|
+
};
|
|
10
|
+
Cookies.prototype.getTokens = function () {
|
|
11
|
+
var tknStr = getCookie('kcToken');
|
|
12
|
+
var idTknStr = getCookie('kcIdToken');
|
|
13
|
+
return {
|
|
14
|
+
idToken: idTknStr ? atob(idTknStr) : undefined,
|
|
15
|
+
refreshToken: '',
|
|
16
|
+
token: tknStr ? atob(tknStr) : undefined,
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
Cookies.prototype.resetTokens = function () {
|
|
20
|
+
removeCookie('kcToken');
|
|
21
|
+
removeCookie('kcIdToken');
|
|
22
|
+
};
|
|
23
|
+
return Cookies;
|
|
24
|
+
}());
|
|
25
|
+
export { Cookies };
|
|
26
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"file": "client.js",
|
|
4
|
+
"sourceRoot": "",
|
|
5
|
+
"sources": [
|
|
6
|
+
"@react-keycloak-refork\\ssr\\persistors\\client.ts"
|
|
7
|
+
],
|
|
8
|
+
"names": [],
|
|
9
|
+
"mappings": "AAGA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAE5D;IAAA;IAqBA,CAAC;IApBC,2BAAS,GAAT,UAAU,EAAoC;YAAlC,OAAO,aAAA,EAAE,KAAK,WAAA;QACxB,CAAC,CAAC,KAAK,IAAI,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;QAC5C,CAAC,CAAC,OAAO,IAAI,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;IACpD,CAAC;IAED,2BAAS,GAAT;QACE,IAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAA;QACnC,IAAM,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC,CAAA;QAEvC,OAAO;YACL,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;YAC9C,YAAY,EAAE,EAAE;YAChB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;SACzC,CAAA;IACH,CAAC;IAED,6BAAW,GAAX;QACE,YAAY,CAAC,SAAS,CAAC,CAAA;QACvB,YAAY,CAAC,WAAW,CAAC,CAAA;IAC3B,CAAC;IACH,cAAC;AAAD,CAAC,AArBD,IAqBC"
|
|
10
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Base64 } from 'js-base64';
|
|
2
|
+
import { decode, encode, getCookie, removeCookie, setCookie } from './utils';
|
|
3
|
+
export var ExpressCookies = function (req) { return ({
|
|
4
|
+
setTokens: function () { },
|
|
5
|
+
getTokens: function () {
|
|
6
|
+
var _a = req.cookies || {}, kcIdToken = _a.kcIdToken, kcToken = _a.kcToken;
|
|
7
|
+
return {
|
|
8
|
+
idToken: kcIdToken ? Base64.decode(kcIdToken) : undefined,
|
|
9
|
+
token: kcToken ? Base64.decode(kcToken) : undefined,
|
|
10
|
+
};
|
|
11
|
+
},
|
|
12
|
+
resetTokens: function () { },
|
|
13
|
+
}); };
|
|
14
|
+
export var SSRCookies = function (cookies) { return ({
|
|
15
|
+
setTokens: function (_a) {
|
|
16
|
+
var idToken = _a.idToken, token = _a.token;
|
|
17
|
+
!!token && setCookie('kcToken', encode(token));
|
|
18
|
+
!!idToken && setCookie('kcIdToken', encode(idToken));
|
|
19
|
+
},
|
|
20
|
+
getTokens: function () {
|
|
21
|
+
var tknStr = getCookie('kcToken', cookies);
|
|
22
|
+
var idTknStr = getCookie('kcIdToken', cookies);
|
|
23
|
+
return {
|
|
24
|
+
idToken: idTknStr ? decode(idTknStr) : '',
|
|
25
|
+
refreshToken: '',
|
|
26
|
+
token: tknStr ? decode(tknStr) : '',
|
|
27
|
+
};
|
|
28
|
+
},
|
|
29
|
+
resetTokens: function () {
|
|
30
|
+
removeCookie('kcToken');
|
|
31
|
+
removeCookie('kcIdToken');
|
|
32
|
+
},
|
|
33
|
+
}); };
|
|
34
|
+
//# sourceMappingURL=server.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"file": "server.js",
|
|
4
|
+
"sourceRoot": "",
|
|
5
|
+
"sources": [
|
|
6
|
+
"@react-keycloak-refork\\ssr\\persistors\\server.ts"
|
|
7
|
+
],
|
|
8
|
+
"names": [],
|
|
9
|
+
"mappings": "AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAGlC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAE5E,MAAM,CAAC,IAAM,cAAc,GAAG,UAAC,GAAQ,IAAqB,OAAA,CAAC;IAC3D,SAAS,EAAE,cAAO,CAAC;IACnB,SAAS,EAAE;QACH,IAAA,KAAyB,GAAG,CAAC,OAAO,IAAI,EAAE,EAAxC,SAAS,eAAA,EAAE,OAAO,aAAsB,CAAA;QAChD,OAAO;YACL,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;YACzD,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;SACpD,CAAA;IACH,CAAC;IACD,WAAW,EAAE,cAAO,CAAC;CACtB,CAAC,EAV0D,CAU1D,CAAA;AAEF,MAAM,CAAC,IAAM,UAAU,GAAG,UAAC,OAAY,IAAqB,OAAA,CAAC;IAC3D,SAAS,EAAE,UAAC,EAAkB;YAAhB,OAAO,aAAA,EAAE,KAAK,WAAA;QAC1B,CAAC,CAAC,KAAK,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;QAC9C,CAAC,CAAC,OAAO,IAAI,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;IACtD,CAAC;IACD,SAAS,EAAE;QACT,IAAM,MAAM,GAAG,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QAC5C,IAAM,QAAQ,GAAG,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;QAEhD,OAAO;YACL,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;YACzC,YAAY,EAAE,EAAE;YAChB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;SACpC,CAAA;IACH,CAAC;IACD,WAAW,EAAE;QACX,YAAY,CAAC,SAAS,CAAC,CAAA;QACvB,YAAY,CAAC,WAAW,CAAC,CAAA;IAC3B,CAAC;CACF,CAAC,EAnB0D,CAmB1D,CAAA"
|
|
10
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { AuthClientTokens } from '@react-keycloak-refork/core';
|
|
2
|
+
/**
|
|
3
|
+
* TokenPersistor
|
|
4
|
+
*/
|
|
5
|
+
export interface TokenPersistor {
|
|
6
|
+
/**
|
|
7
|
+
* Invoked to store current/updated Keycloak tokens.
|
|
8
|
+
*
|
|
9
|
+
* @param {AuthClientTokens} tokens The current Keycloak tokens set.
|
|
10
|
+
*/
|
|
11
|
+
setTokens: (tokens: AuthClientTokens) => void;
|
|
12
|
+
/**
|
|
13
|
+
* Invoked to retrieve Keycloak tokens to use.
|
|
14
|
+
*
|
|
15
|
+
* @returns {AuthClientTokens} Keycloak tokens set to be used.
|
|
16
|
+
*/
|
|
17
|
+
getTokens: () => AuthClientTokens;
|
|
18
|
+
/**
|
|
19
|
+
* Invoked when stored Keycloak tokens should be removed.
|
|
20
|
+
*/
|
|
21
|
+
resetTokens: () => void;
|
|
22
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare function setCookie(name: string, val: string): string | undefined;
|
|
2
|
+
export declare function getCookie(name: string, cookies?: {}): any;
|
|
3
|
+
export declare function removeCookie(name: string): void;
|
|
4
|
+
export declare function encode(value: string): string;
|
|
5
|
+
export declare function decode(value: string): string;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { atob, btoa } from 'js-base64';
|
|
2
|
+
import Cookie from 'js-cookie';
|
|
3
|
+
import { isServer } from '../internals/utils';
|
|
4
|
+
export function setCookie(name, val) {
|
|
5
|
+
return Cookie.set(name, val);
|
|
6
|
+
}
|
|
7
|
+
export function getCookie(name, cookies) {
|
|
8
|
+
if (cookies === void 0) { cookies = {}; }
|
|
9
|
+
return isServer() ? cookies[name] : Cookie.get(name);
|
|
10
|
+
}
|
|
11
|
+
export function removeCookie(name) {
|
|
12
|
+
Cookie.remove(name);
|
|
13
|
+
}
|
|
14
|
+
export function encode(value) {
|
|
15
|
+
return btoa(value);
|
|
16
|
+
}
|
|
17
|
+
export function decode(value) {
|
|
18
|
+
return atob(value);
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"file": "utils.js",
|
|
4
|
+
"sourceRoot": "",
|
|
5
|
+
"sources": [
|
|
6
|
+
"@react-keycloak-refork\\ssr\\persistors\\utils.ts"
|
|
7
|
+
],
|
|
8
|
+
"names": [],
|
|
9
|
+
"mappings": "AAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,MAAM,MAAM,WAAW,CAAA;AAE9B,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAE7C,MAAM,UAAU,SAAS,CAAC,IAAY,EAAE,GAAW;IACjD,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;AAC9B,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAY,EAAE,OAAY;IAAZ,wBAAA,EAAA,YAAY;IAClD,OAAO,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;AACtD,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;AACrB,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,KAAa;IAClC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAA;AACpB,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,KAAa;IAClC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAA;AACpB,CAAC"
|
|
10
|
+
}
|
package/lib/types.d.ts
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { AuthClient } from '@react-keycloak-refork/core';
|
|
2
|
+
import type { KeycloakInstance } from 'keycloak-js';
|
|
3
|
+
export interface SSRAuthClient extends Omit<KeycloakInstance, 'init' | 'updateToken'>, AuthClient {
|
|
4
|
+
/** A boolean indicating if the user is authenticated or not. */
|
|
5
|
+
authenticated?: boolean;
|
|
6
|
+
}
|
package/lib/types.js
ADDED
package/lib/types.js.map
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { useContext } from 'react';
|
|
2
|
+
import { reactKeycloakSsrContext } from './internals/context';
|
|
3
|
+
import { isServer } from './internals/utils';
|
|
4
|
+
export function useKeycloak() {
|
|
5
|
+
var _a = useContext(reactKeycloakSsrContext), initialized = _a.initialized, authClient = _a.authClient;
|
|
6
|
+
var initializedVar = initialized || isServer();
|
|
7
|
+
return {
|
|
8
|
+
initialized: initializedVar,
|
|
9
|
+
keycloak: authClient,
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=useKeycloak.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"file": "useKeycloak.js",
|
|
4
|
+
"sourceRoot": "",
|
|
5
|
+
"sources": [
|
|
6
|
+
"@react-keycloak-refork\\ssr\\useKeycloak.ts"
|
|
7
|
+
],
|
|
8
|
+
"names": [],
|
|
9
|
+
"mappings": "AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAElC,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAU5C,MAAM,UAAU,WAAW;IAGnB,IAAA,KAA8B,UAAU,CAAC,uBAAuB,CAAC,EAA/D,WAAW,iBAAA,EAAE,UAAU,gBAAwC,CAAA;IACvE,IAAM,cAAc,GAAG,WAAW,IAAI,QAAQ,EAAE,CAAA;IAEhD,OAAO;QACL,WAAW,EAAE,cAAc;QAC3B,QAAQ,EAAE,UAA2B;KACtC,CAAA;AACH,CAAC"
|
|
10
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import type { SSRAuthClient } from './types';
|
|
3
|
+
type InjectedProps<ACT> = {
|
|
4
|
+
keycloakInitialized: boolean;
|
|
5
|
+
keycloak: ACT;
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* An HOC which injects the `keycloak` instance and the `keycloakInitialized` flag as props.
|
|
9
|
+
*
|
|
10
|
+
* @deprecated Please migrate to useKeycloak hook where/when possible.
|
|
11
|
+
*/
|
|
12
|
+
export declare function withKeycloak<P extends InjectedProps<ACT>, ACT extends SSRAuthClient = SSRAuthClient>(Component: React.ComponentType<P>): React.FC<Subtract<P, InjectedProps<ACT>>>;
|
|
13
|
+
/**
|
|
14
|
+
* SetDifference (same as Exclude)
|
|
15
|
+
* @desc Set difference of given union types `A` and `B`
|
|
16
|
+
* @example
|
|
17
|
+
* // Expect: "1"
|
|
18
|
+
* SetDifference<'1' | '2' | '3', '2' | '3' | '4'>;
|
|
19
|
+
*
|
|
20
|
+
* // Expect: string | number
|
|
21
|
+
* SetDifference<string | number | (() => void), Function>;
|
|
22
|
+
*/
|
|
23
|
+
type SetDifference<A, B> = A extends B ? never : A;
|
|
24
|
+
/**
|
|
25
|
+
* SetComplement
|
|
26
|
+
* @desc Set complement of given union types `A` and (it's subset) `A1`
|
|
27
|
+
* @example
|
|
28
|
+
* // Expect: "1"
|
|
29
|
+
* SetComplement<'1' | '2' | '3', '2' | '3'>;
|
|
30
|
+
*/
|
|
31
|
+
type SetComplement<A, A1 extends A> = SetDifference<A, A1>;
|
|
32
|
+
/**
|
|
33
|
+
* Subtract
|
|
34
|
+
* @desc From `T` remove properties that exist in `T1` (`T1` has a subset of the properties of `T`)
|
|
35
|
+
* @example
|
|
36
|
+
* type Props = { name: string; age: number; visible: boolean };
|
|
37
|
+
* type DefaultProps = { age: number };
|
|
38
|
+
*
|
|
39
|
+
* // Expect: { name: string; visible: boolean; }
|
|
40
|
+
* type RestProps = Subtract<Props, DefaultProps>;
|
|
41
|
+
*/
|
|
42
|
+
type Subtract<T extends T1, T1 extends object> = Pick<T, SetComplement<keyof T, keyof T1>>;
|
|
43
|
+
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
import * as React from 'react';
|
|
13
|
+
import { useKeycloak } from './useKeycloak';
|
|
14
|
+
/**
|
|
15
|
+
* An HOC which injects the `keycloak` instance and the `keycloakInitialized` flag as props.
|
|
16
|
+
*
|
|
17
|
+
* @deprecated Please migrate to useKeycloak hook where/when possible.
|
|
18
|
+
*/
|
|
19
|
+
export function withKeycloak(Component) {
|
|
20
|
+
return function WrappedComponent(props) {
|
|
21
|
+
var _a = useKeycloak(), keycloak = _a.keycloak, initialized = _a.initialized;
|
|
22
|
+
return (React.createElement(Component, __assign({}, props, { keycloakInitialized: initialized, keycloak: keycloak })));
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=withKeycloak.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"file": "withKeycloak.js",
|
|
4
|
+
"sourceRoot": "",
|
|
5
|
+
"sources": [
|
|
6
|
+
"@react-keycloak-refork\\ssr\\withKeycloak.tsx"
|
|
7
|
+
],
|
|
8
|
+
"names": [],
|
|
9
|
+
"mappings": ";;;;;;;;;;;AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAU3C;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAI1B,SAAiC;IAEjC,OAAO,SAAS,gBAAgB,CAAC,KAAQ;QACjC,IAAA,KAA4B,WAAW,EAAE,EAAvC,QAAQ,cAAA,EAAE,WAAW,iBAAkB,CAAA;QAE/C,OAAO,CACL,oBAAC,SAAS,eACH,KAAW,IAChB,mBAAmB,EAAE,WAAW,EAChC,QAAQ,EAAE,QAAQ,IAClB,CACH,CAAA;IACH,CAAC,CAAA;AACH,CAAC"
|
|
10
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { AuthClient, AuthClientInitOptions, AuthProviderProps, AuthClientEvent, AuthClientError, AuthClientTokens } from '@react-keycloak-refork/core';
|
|
2
|
+
import type { KeycloakConfig } from 'keycloak-js';
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import type { TokenPersistor } from './persistors/types';
|
|
5
|
+
import type { SSRAuthClient } from './types';
|
|
6
|
+
export interface SSRKeycloakProviderProps<T extends SSRAuthClient> extends Omit<AuthProviderProps<T>, 'authClient'> {
|
|
7
|
+
persistor: TokenPersistor;
|
|
8
|
+
keycloakConfig: KeycloakConfig;
|
|
9
|
+
}
|
|
10
|
+
interface SSRKeycloakProviderState {
|
|
11
|
+
initOptions: AuthClientInitOptions;
|
|
12
|
+
keycloak: AuthClient;
|
|
13
|
+
}
|
|
14
|
+
export declare class SSRKeycloakProvider extends React.PureComponent<SSRKeycloakProviderProps<SSRAuthClient>, SSRKeycloakProviderState> {
|
|
15
|
+
constructor(props: SSRKeycloakProviderProps<SSRAuthClient>);
|
|
16
|
+
onEvent: (event: AuthClientEvent, error?: AuthClientError) => void;
|
|
17
|
+
onTokens: (tokens: AuthClientTokens) => void;
|
|
18
|
+
render(): React.JSX.Element;
|
|
19
|
+
}
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
var __assign = (this && this.__assign) || function () {
|
|
18
|
+
__assign = Object.assign || function(t) {
|
|
19
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
20
|
+
s = arguments[i];
|
|
21
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
22
|
+
t[p] = s[p];
|
|
23
|
+
}
|
|
24
|
+
return t;
|
|
25
|
+
};
|
|
26
|
+
return __assign.apply(this, arguments);
|
|
27
|
+
};
|
|
28
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
29
|
+
if (k2 === undefined) k2 = k;
|
|
30
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
31
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
32
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
33
|
+
}
|
|
34
|
+
Object.defineProperty(o, k2, desc);
|
|
35
|
+
}) : (function(o, m, k, k2) {
|
|
36
|
+
if (k2 === undefined) k2 = k;
|
|
37
|
+
o[k2] = m[k];
|
|
38
|
+
}));
|
|
39
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
40
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
41
|
+
}) : function(o, v) {
|
|
42
|
+
o["default"] = v;
|
|
43
|
+
});
|
|
44
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
45
|
+
if (mod && mod.__esModule) return mod;
|
|
46
|
+
var result = {};
|
|
47
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
48
|
+
__setModuleDefault(result, mod);
|
|
49
|
+
return result;
|
|
50
|
+
};
|
|
51
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
52
|
+
var t = {};
|
|
53
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
54
|
+
t[p] = s[p];
|
|
55
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
56
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
57
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
58
|
+
t[p[i]] = s[p[i]];
|
|
59
|
+
}
|
|
60
|
+
return t;
|
|
61
|
+
};
|
|
62
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
63
|
+
exports.SSRKeycloakProvider = void 0;
|
|
64
|
+
var React = __importStar(require("react"));
|
|
65
|
+
var keycloak_1 = require("./internals/keycloak");
|
|
66
|
+
var KeycloakProvider_1 = require("./internals/KeycloakProvider");
|
|
67
|
+
var SSRKeycloakProvider = /** @class */ (function (_super) {
|
|
68
|
+
__extends(SSRKeycloakProvider, _super);
|
|
69
|
+
function SSRKeycloakProvider(props) {
|
|
70
|
+
var _this = _super.call(this, props) || this;
|
|
71
|
+
_this.onEvent = function (event, error) {
|
|
72
|
+
var _a, _b, _c, _d;
|
|
73
|
+
if (event === 'onReady') {
|
|
74
|
+
if (!_this.state.keycloak.authenticated) {
|
|
75
|
+
(_b = (_a = _this.props) === null || _a === void 0 ? void 0 : _a.persistor) === null || _b === void 0 ? void 0 : _b.resetTokens();
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
// Propagate events up
|
|
79
|
+
(_d = (_c = _this.props) === null || _c === void 0 ? void 0 : _c.onEvent) === null || _d === void 0 ? void 0 : _d.call(_c, event, error);
|
|
80
|
+
};
|
|
81
|
+
_this.onTokens = function (tokens) {
|
|
82
|
+
var _a, _b, _c, _d;
|
|
83
|
+
// Persist updated tokens
|
|
84
|
+
(_b = (_a = _this.props) === null || _a === void 0 ? void 0 : _a.persistor) === null || _b === void 0 ? void 0 : _b.setTokens(tokens);
|
|
85
|
+
// Propagate events up
|
|
86
|
+
(_d = (_c = _this.props) === null || _c === void 0 ? void 0 : _c.onTokens) === null || _d === void 0 ? void 0 : _d.call(_c, tokens);
|
|
87
|
+
};
|
|
88
|
+
var initOptions = props.initOptions, keycloakConfig = props.keycloakConfig, persistor = props.persistor;
|
|
89
|
+
var cachedTokens = persistor.getTokens();
|
|
90
|
+
_this.state = {
|
|
91
|
+
keycloak: (0, keycloak_1.getKeycloakInstance)(keycloakConfig, persistor),
|
|
92
|
+
initOptions: __assign(__assign({}, cachedTokens), initOptions),
|
|
93
|
+
};
|
|
94
|
+
return _this;
|
|
95
|
+
}
|
|
96
|
+
SSRKeycloakProvider.prototype.render = function () {
|
|
97
|
+
var _a = this.props, children = _a.children, persistor = _a.persistor, providerProps = __rest(_a, ["children", "persistor"]);
|
|
98
|
+
var _b = this.state, initOptions = _b.initOptions, keycloak = _b.keycloak;
|
|
99
|
+
return (React.createElement(KeycloakProvider_1.KeycloakProvider, __assign({}, providerProps, { authClient: keycloak, initOptions: initOptions, onEvent: this.onEvent, onTokens: this.onTokens }), children));
|
|
100
|
+
};
|
|
101
|
+
return SSRKeycloakProvider;
|
|
102
|
+
}(React.PureComponent));
|
|
103
|
+
exports.SSRKeycloakProvider = SSRKeycloakProvider;
|
|
104
|
+
//# sourceMappingURL=SSRKeycloakProvider.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"file": "SSRKeycloakProvider.js",
|
|
4
|
+
"sourceRoot": "",
|
|
5
|
+
"sources": [
|
|
6
|
+
"@react-keycloak-refork\\ssr\\SSRKeycloakProvider.tsx"
|
|
7
|
+
],
|
|
8
|
+
"names": [],
|
|
9
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,2CAA8B;AAI9B,iDAA0D;AAC1D,iEAA+D;AAiB/D;IAAyC,uCAGxC;IACC,6BAAY,KAA8C;QAA1D,YACE,kBAAM,KAAK,CAAC,SAYb;QAED,aAAO,GAAG,UAAC,KAAsB,EAAE,KAAuB;;YACxD,IAAI,KAAK,KAAK,SAAS,EAAE;gBACvB,IAAI,CAAE,KAAI,CAAC,KAAK,CAAC,QAA6B,CAAC,aAAa,EAAE;oBAC5D,MAAA,MAAA,KAAI,CAAC,KAAK,0CAAE,SAAS,0CAAE,WAAW,EAAE,CAAA;iBACrC;aACF;YAED,sBAAsB;YACtB,MAAA,MAAA,KAAI,CAAC,KAAK,0CAAE,OAAO,mDAAG,KAAK,EAAE,KAAK,CAAC,CAAA;QACrC,CAAC,CAAA;QAED,cAAQ,GAAG,UAAC,MAAwB;;YAClC,yBAAyB;YACzB,MAAA,MAAA,KAAI,CAAC,KAAK,0CAAE,SAAS,0CAAE,SAAS,CAAC,MAAM,CAAC,CAAA;YAExC,sBAAsB;YACtB,MAAA,MAAA,KAAI,CAAC,KAAK,0CAAE,QAAQ,mDAAG,MAAM,CAAC,CAAA;QAChC,CAAC,CAAA;QA7BS,IAAA,WAAW,GAAgC,KAAK,YAArC,EAAE,cAAc,GAAgB,KAAK,eAArB,EAAE,SAAS,GAAK,KAAK,UAAV,CAAU;QACxD,IAAM,YAAY,GAAG,SAAS,CAAC,SAAS,EAAE,CAAA;QAE1C,KAAI,CAAC,KAAK,GAAG;YACX,QAAQ,EAAE,IAAA,8BAAmB,EAAC,cAAc,EAAE,SAAS,CAAC;YACxD,WAAW,wBACN,YAAY,GACZ,WAAW,CACf;SACF,CAAA;;IACH,CAAC;IAqBD,oCAAM,GAAN;QACE,IAAM,KAA4C,IAAI,CAAC,KAAK,EAApD,QAAQ,cAAA,EAAE,SAAS,eAAA,EAAK,aAAa,cAAvC,yBAAyC,CAAa,CAAA;QACtD,IAAA,KAA4B,IAAI,CAAC,KAAK,EAApC,WAAW,iBAAA,EAAE,QAAQ,cAAe,CAAA;QAE5C,OAAO,CACL,oBAAC,mCAAgB,eACX,aAAa,IACjB,UAAU,EAAE,QAAQ,EACpB,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ,KAEtB,QAAQ,CACQ,CACpB,CAAA;IACH,CAAC;IACH,0BAAC;AAAD,CAAC,AAtDD,CAAyC,KAAK,CAAC,aAAa,GAsD3D;AAtDY,kDAAmB"
|
|
10
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { SSRKeycloakProvider } from './SSRKeycloakProvider';
|
|
2
|
+
export { useKeycloak } from './useKeycloak';
|
|
3
|
+
export { withKeycloak } from './withKeycloak';
|
|
4
|
+
export { getKeycloakInstance } from './internals/keycloak';
|
|
5
|
+
export * from './persistors/client';
|
|
6
|
+
export * from './persistors/server';
|
|
7
|
+
export * from './types';
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.getKeycloakInstance = exports.withKeycloak = exports.useKeycloak = exports.SSRKeycloakProvider = void 0;
|
|
18
|
+
var SSRKeycloakProvider_1 = require("./SSRKeycloakProvider");
|
|
19
|
+
Object.defineProperty(exports, "SSRKeycloakProvider", { enumerable: true, get: function () { return SSRKeycloakProvider_1.SSRKeycloakProvider; } });
|
|
20
|
+
var useKeycloak_1 = require("./useKeycloak");
|
|
21
|
+
Object.defineProperty(exports, "useKeycloak", { enumerable: true, get: function () { return useKeycloak_1.useKeycloak; } });
|
|
22
|
+
var withKeycloak_1 = require("./withKeycloak");
|
|
23
|
+
Object.defineProperty(exports, "withKeycloak", { enumerable: true, get: function () { return withKeycloak_1.withKeycloak; } });
|
|
24
|
+
var keycloak_1 = require("./internals/keycloak");
|
|
25
|
+
Object.defineProperty(exports, "getKeycloakInstance", { enumerable: true, get: function () { return keycloak_1.getKeycloakInstance; } });
|
|
26
|
+
__exportStar(require("./persistors/client"), exports);
|
|
27
|
+
__exportStar(require("./persistors/server"), exports);
|
|
28
|
+
__exportStar(require("./types"), exports);
|
|
29
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"file": "index.js",
|
|
4
|
+
"sourceRoot": "",
|
|
5
|
+
"sources": [
|
|
6
|
+
"@react-keycloak-refork\\ssr\\index.ts"
|
|
7
|
+
],
|
|
8
|
+
"names": [],
|
|
9
|
+
"mappings": ";;;;;;;;;;;;;;;;;AAAA,6DAA2D;AAAlD,0HAAA,mBAAmB,OAAA;AAC5B,6CAA2C;AAAlC,0GAAA,WAAW,OAAA;AACpB,+CAA6C;AAApC,4GAAA,YAAY,OAAA;AAErB,iDAA0D;AAAjD,+GAAA,mBAAmB,OAAA;AAE5B,sDAAmC;AACnC,sDAAmC;AAEnC,0CAAuB"
|
|
10
|
+
}
|