@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.
Files changed (81) hide show
  1. package/LICENSE.md +24 -0
  2. package/README.md +261 -0
  3. package/lib/SSRKeycloakProvider.d.ts +20 -0
  4. package/lib/SSRKeycloakProvider.js +78 -0
  5. package/lib/SSRKeycloakProvider.js.map +10 -0
  6. package/lib/index.d.ts +7 -0
  7. package/lib/index.js +8 -0
  8. package/lib/index.js.map +10 -0
  9. package/lib/internals/KeycloakProvider.d.ts +146 -0
  10. package/lib/internals/KeycloakProvider.js +4 -0
  11. package/lib/internals/KeycloakProvider.js.map +10 -0
  12. package/lib/internals/context.d.ts +4 -0
  13. package/lib/internals/context.js +8 -0
  14. package/lib/internals/context.js.map +10 -0
  15. package/lib/internals/keycloak.d.ts +5 -0
  16. package/lib/internals/keycloak.js +29 -0
  17. package/lib/internals/keycloak.js.map +10 -0
  18. package/lib/internals/utils.d.ts +1 -0
  19. package/lib/internals/utils.js +2 -0
  20. package/lib/internals/utils.js.map +10 -0
  21. package/lib/persistors/client.d.ts +11 -0
  22. package/lib/persistors/client.js +26 -0
  23. package/lib/persistors/client.js.map +10 -0
  24. package/lib/persistors/server.d.ts +3 -0
  25. package/lib/persistors/server.js +34 -0
  26. package/lib/persistors/server.js.map +10 -0
  27. package/lib/persistors/types.d.ts +22 -0
  28. package/lib/persistors/types.js +2 -0
  29. package/lib/persistors/types.js.map +10 -0
  30. package/lib/persistors/utils.d.ts +5 -0
  31. package/lib/persistors/utils.js +20 -0
  32. package/lib/persistors/utils.js.map +10 -0
  33. package/lib/types.d.ts +6 -0
  34. package/lib/types.js +2 -0
  35. package/lib/types.js.map +10 -0
  36. package/lib/useKeycloak.d.ts +6 -0
  37. package/lib/useKeycloak.js +12 -0
  38. package/lib/useKeycloak.js.map +10 -0
  39. package/lib/withKeycloak.d.ts +43 -0
  40. package/lib/withKeycloak.js +25 -0
  41. package/lib/withKeycloak.js.map +10 -0
  42. package/lib-commonjs/SSRKeycloakProvider.d.ts +20 -0
  43. package/lib-commonjs/SSRKeycloakProvider.js +104 -0
  44. package/lib-commonjs/SSRKeycloakProvider.js.map +10 -0
  45. package/lib-commonjs/index.d.ts +7 -0
  46. package/lib-commonjs/index.js +29 -0
  47. package/lib-commonjs/index.js.map +10 -0
  48. package/lib-commonjs/internals/KeycloakProvider.d.ts +146 -0
  49. package/lib-commonjs/internals/KeycloakProvider.js +7 -0
  50. package/lib-commonjs/internals/KeycloakProvider.js.map +10 -0
  51. package/lib-commonjs/internals/context.d.ts +4 -0
  52. package/lib-commonjs/internals/context.js +11 -0
  53. package/lib-commonjs/internals/context.js.map +10 -0
  54. package/lib-commonjs/internals/keycloak.d.ts +5 -0
  55. package/lib-commonjs/internals/keycloak.js +34 -0
  56. package/lib-commonjs/internals/keycloak.js.map +10 -0
  57. package/lib-commonjs/internals/utils.d.ts +1 -0
  58. package/lib-commonjs/internals/utils.js +6 -0
  59. package/lib-commonjs/internals/utils.js.map +10 -0
  60. package/lib-commonjs/persistors/client.d.ts +11 -0
  61. package/lib-commonjs/persistors/client.js +29 -0
  62. package/lib-commonjs/persistors/client.js.map +10 -0
  63. package/lib-commonjs/persistors/server.d.ts +3 -0
  64. package/lib-commonjs/persistors/server.js +39 -0
  65. package/lib-commonjs/persistors/server.js.map +10 -0
  66. package/lib-commonjs/persistors/types.d.ts +22 -0
  67. package/lib-commonjs/persistors/types.js +3 -0
  68. package/lib-commonjs/persistors/types.js.map +10 -0
  69. package/lib-commonjs/persistors/utils.d.ts +5 -0
  70. package/lib-commonjs/persistors/utils.js +31 -0
  71. package/lib-commonjs/persistors/utils.js.map +10 -0
  72. package/lib-commonjs/types.d.ts +6 -0
  73. package/lib-commonjs/types.js +3 -0
  74. package/lib-commonjs/types.js.map +10 -0
  75. package/lib-commonjs/useKeycloak.d.ts +6 -0
  76. package/lib-commonjs/useKeycloak.js +16 -0
  77. package/lib-commonjs/useKeycloak.js.map +10 -0
  78. package/lib-commonjs/withKeycloak.d.ts +43 -0
  79. package/lib-commonjs/withKeycloak.js +52 -0
  80. package/lib-commonjs/withKeycloak.js.map +10 -0
  81. package/package.json +71 -0
@@ -0,0 +1,146 @@
1
+ /// <reference types="react" />
2
+ export declare const KeycloakProvider: {
3
+ new (props: import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>): {
4
+ state: {
5
+ initialized: boolean;
6
+ isAuthenticated: boolean;
7
+ isLoading: boolean;
8
+ };
9
+ componentDidMount(): void;
10
+ componentDidUpdate({ authClient: prevAuthClient, initOptions: prevInitOptions, }: import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>): void;
11
+ init(): void;
12
+ onError: (event: import("@react-keycloak-refork/core").AuthClientEvent) => (error?: import("@react-keycloak-refork/core").AuthClientError | undefined) => void;
13
+ updateState: (event: import("@react-keycloak-refork/core").AuthClientEvent) => () => void;
14
+ refreshToken: (event: import("@react-keycloak-refork/core").AuthClientEvent) => () => void;
15
+ render(): import("react").JSX.Element;
16
+ context: unknown;
17
+ setState<K extends keyof {
18
+ initialized: boolean;
19
+ isAuthenticated: boolean;
20
+ isLoading: boolean;
21
+ }>(state: {
22
+ initialized: boolean;
23
+ isAuthenticated: boolean;
24
+ isLoading: boolean;
25
+ } | ((prevState: Readonly<{
26
+ initialized: boolean;
27
+ isAuthenticated: boolean;
28
+ isLoading: boolean;
29
+ }>, props: Readonly<import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>>) => {
30
+ initialized: boolean;
31
+ isAuthenticated: boolean;
32
+ isLoading: boolean;
33
+ } | Pick<{
34
+ initialized: boolean;
35
+ isAuthenticated: boolean;
36
+ isLoading: boolean;
37
+ }, K> | null) | Pick<{
38
+ initialized: boolean;
39
+ isAuthenticated: boolean;
40
+ isLoading: boolean;
41
+ }, K> | null, callback?: (() => void) | undefined): void;
42
+ forceUpdate(callback?: (() => void) | undefined): void;
43
+ readonly props: Readonly<import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>>;
44
+ refs: {
45
+ [key: string]: import("react").ReactInstance;
46
+ };
47
+ shouldComponentUpdate?(nextProps: Readonly<import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>>, nextState: Readonly<{
48
+ initialized: boolean;
49
+ isAuthenticated: boolean;
50
+ isLoading: boolean;
51
+ }>, nextContext: any): boolean;
52
+ componentWillUnmount?(): void;
53
+ componentDidCatch?(error: Error, errorInfo: import("react").ErrorInfo): void;
54
+ getSnapshotBeforeUpdate?(prevProps: Readonly<import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>>, prevState: Readonly<{
55
+ initialized: boolean;
56
+ isAuthenticated: boolean;
57
+ isLoading: boolean;
58
+ }>): any;
59
+ componentWillMount?(): void;
60
+ UNSAFE_componentWillMount?(): void;
61
+ componentWillReceiveProps?(nextProps: Readonly<import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>>, nextContext: any): void;
62
+ UNSAFE_componentWillReceiveProps?(nextProps: Readonly<import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>>, nextContext: any): void;
63
+ componentWillUpdate?(nextProps: Readonly<import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>>, nextState: Readonly<{
64
+ initialized: boolean;
65
+ isAuthenticated: boolean;
66
+ isLoading: boolean;
67
+ }>, nextContext: any): void;
68
+ UNSAFE_componentWillUpdate?(nextProps: Readonly<import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>>, nextState: Readonly<{
69
+ initialized: boolean;
70
+ isAuthenticated: boolean;
71
+ isLoading: boolean;
72
+ }>, nextContext: any): void;
73
+ };
74
+ new (props: import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>, context: any): {
75
+ state: {
76
+ initialized: boolean;
77
+ isAuthenticated: boolean;
78
+ isLoading: boolean;
79
+ };
80
+ componentDidMount(): void;
81
+ componentDidUpdate({ authClient: prevAuthClient, initOptions: prevInitOptions, }: import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>): void;
82
+ init(): void;
83
+ onError: (event: import("@react-keycloak-refork/core").AuthClientEvent) => (error?: import("@react-keycloak-refork/core").AuthClientError | undefined) => void;
84
+ updateState: (event: import("@react-keycloak-refork/core").AuthClientEvent) => () => void;
85
+ refreshToken: (event: import("@react-keycloak-refork/core").AuthClientEvent) => () => void;
86
+ render(): import("react").JSX.Element;
87
+ context: unknown;
88
+ setState<K_1 extends keyof {
89
+ initialized: boolean;
90
+ isAuthenticated: boolean;
91
+ isLoading: boolean;
92
+ }>(state: {
93
+ initialized: boolean;
94
+ isAuthenticated: boolean;
95
+ isLoading: boolean;
96
+ } | ((prevState: Readonly<{
97
+ initialized: boolean;
98
+ isAuthenticated: boolean;
99
+ isLoading: boolean;
100
+ }>, props: Readonly<import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>>) => {
101
+ initialized: boolean;
102
+ isAuthenticated: boolean;
103
+ isLoading: boolean;
104
+ } | Pick<{
105
+ initialized: boolean;
106
+ isAuthenticated: boolean;
107
+ isLoading: boolean;
108
+ }, K_1> | null) | Pick<{
109
+ initialized: boolean;
110
+ isAuthenticated: boolean;
111
+ isLoading: boolean;
112
+ }, K_1> | null, callback?: (() => void) | undefined): void;
113
+ forceUpdate(callback?: (() => void) | undefined): void;
114
+ readonly props: Readonly<import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>>;
115
+ refs: {
116
+ [key: string]: import("react").ReactInstance;
117
+ };
118
+ shouldComponentUpdate?(nextProps: Readonly<import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>>, nextState: Readonly<{
119
+ initialized: boolean;
120
+ isAuthenticated: boolean;
121
+ isLoading: boolean;
122
+ }>, nextContext: any): boolean;
123
+ componentWillUnmount?(): void;
124
+ componentDidCatch?(error: Error, errorInfo: import("react").ErrorInfo): void;
125
+ getSnapshotBeforeUpdate?(prevProps: Readonly<import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>>, prevState: Readonly<{
126
+ initialized: boolean;
127
+ isAuthenticated: boolean;
128
+ isLoading: boolean;
129
+ }>): any;
130
+ componentWillMount?(): void;
131
+ UNSAFE_componentWillMount?(): void;
132
+ componentWillReceiveProps?(nextProps: Readonly<import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>>, nextContext: any): void;
133
+ UNSAFE_componentWillReceiveProps?(nextProps: Readonly<import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>>, nextContext: any): void;
134
+ componentWillUpdate?(nextProps: Readonly<import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>>, nextState: Readonly<{
135
+ initialized: boolean;
136
+ isAuthenticated: boolean;
137
+ isLoading: boolean;
138
+ }>, nextContext: any): void;
139
+ UNSAFE_componentWillUpdate?(nextProps: Readonly<import("@react-keycloak-refork/core").AuthProviderProps<import("@react-keycloak-refork/core").AuthClient>>, nextState: Readonly<{
140
+ initialized: boolean;
141
+ isAuthenticated: boolean;
142
+ isLoading: boolean;
143
+ }>, nextContext: any): void;
144
+ };
145
+ contextType?: import("react").Context<any> | undefined;
146
+ };
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.KeycloakProvider = void 0;
4
+ var core_1 = require("@react-keycloak-refork/core");
5
+ var context_1 = require("./context");
6
+ exports.KeycloakProvider = (0, core_1.createAuthProvider)(context_1.reactKeycloakSsrContext);
7
+ //# sourceMappingURL=KeycloakProvider.js.map
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "file": "KeycloakProvider.js",
4
+ "sourceRoot": "",
5
+ "sources": [
6
+ "@react-keycloak-refork\\ssr\\internals\\KeycloakProvider.ts"
7
+ ],
8
+ "names": [],
9
+ "mappings": ";;;AAAA,oDAAgE;AAEhE,qCAAmD;AAEtC,QAAA,gBAAgB,GAAG,IAAA,yBAAkB,EAAC,iCAAuB,CAAC,CAAA"
10
+ }
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import type { AuthClient } from '@react-keycloak-refork/core';
3
+ export declare const reactKeycloakSsrContext: import("react").Context<import("@react-keycloak-refork/core").IAuthContextProps<AuthClient>>;
4
+ export declare const ReactKeycloakSSRContextConsumer: import("react").Consumer<import("@react-keycloak-refork/core").IAuthContextProps<AuthClient>>;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ReactKeycloakSSRContextConsumer = exports.reactKeycloakSsrContext = void 0;
4
+ var core_1 = require("@react-keycloak-refork/core");
5
+ var utils_1 = require("./utils");
6
+ // Context to hold Keycloak and his state
7
+ exports.reactKeycloakSsrContext = (0, core_1.createAuthContext)({
8
+ initialized: (0, utils_1.isServer)(),
9
+ });
10
+ exports.ReactKeycloakSSRContextConsumer = exports.reactKeycloakSsrContext.Consumer;
11
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "file": "context.js",
4
+ "sourceRoot": "",
5
+ "sources": [
6
+ "@react-keycloak-refork\\ssr\\internals\\context.ts"
7
+ ],
8
+ "names": [],
9
+ "mappings": ";;;AAAA,oDAA+D;AAG/D,iCAAkC;AAElC,yCAAyC;AAC5B,QAAA,uBAAuB,GAAG,IAAA,wBAAiB,EAAa;IACnE,WAAW,EAAE,IAAA,gBAAQ,GAAE;CACxB,CAAC,CAAA;AAEW,QAAA,+BAA+B,GAAG,+BAAuB,CAAC,QAAQ,CAAA"
10
+ }
@@ -0,0 +1,5 @@
1
+ import type { AuthClient } from '@react-keycloak-refork/core';
2
+ import type { KeycloakConfig } from 'keycloak-js';
3
+ import type { TokenPersistor } from '../persistors/types';
4
+ export declare const getKeycloakStub: (persistor: TokenPersistor) => AuthClient;
5
+ export declare const getKeycloakInstance: (keycloakConfig: KeycloakConfig, persistor?: TokenPersistor, recreate?: boolean) => AuthClient;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getKeycloakInstance = exports.getKeycloakStub = void 0;
4
+ var utils_1 = require("./utils");
5
+ // Keycloak singleton
6
+ var keycloakInstance;
7
+ // KeycloakStub singleton
8
+ var keycloakStubInstance;
9
+ // this is a fake Keycloak instance we use to initialize Keycloak on the server.
10
+ // This gets over-written as soon as Keycloak is initialized on the client.
11
+ var getKeycloakStub = function (persistor) {
12
+ var kcTokens = persistor.getTokens();
13
+ keycloakStubInstance = {
14
+ init: function () { return Promise.resolve(true); },
15
+ updateToken: function () { return Promise.resolve(false); },
16
+ idToken: kcTokens.idToken,
17
+ token: kcTokens.token,
18
+ refreshToken: kcTokens.refreshToken,
19
+ authenticated: !!kcTokens.idToken && !!kcTokens.token,
20
+ };
21
+ return keycloakStubInstance;
22
+ };
23
+ exports.getKeycloakStub = getKeycloakStub;
24
+ var Keycloak = !(0, utils_1.isServer)() ? require('keycloak-js').default : null;
25
+ var getKeycloakInstance = function (keycloakConfig, persistor, recreate) {
26
+ if (recreate === void 0) { recreate = false; }
27
+ var isServerCheck = (0, utils_1.isServer)();
28
+ if (recreate || (!keycloakInstance && !isServerCheck)) {
29
+ keycloakInstance = Keycloak(keycloakConfig);
30
+ }
31
+ return !isServerCheck ? keycloakInstance : (0, exports.getKeycloakStub)(persistor);
32
+ };
33
+ exports.getKeycloakInstance = getKeycloakInstance;
34
+ //# sourceMappingURL=keycloak.js.map
@@ -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,iCAAkC;AAElC,qBAAqB;AACrB,IAAI,gBAA4B,CAAA;AAEhC,yBAAyB;AACzB,IAAI,oBAAmC,CAAA;AAEvC,gFAAgF;AAChF,2EAA2E;AACpE,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;AAbY,QAAA,eAAe,mBAa3B;AAED,IAAM,QAAQ,GAAG,CAAC,IAAA,gBAAQ,GAAE,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;AAE7D,IAAM,mBAAmB,GAAG,UACjC,cAA8B,EAC9B,SAA0B,EAC1B,QAAgB;IAAhB,yBAAA,EAAA,gBAAgB;IAEhB,IAAM,aAAa,GAAG,IAAA,gBAAQ,GAAE,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,IAAA,uBAAe,EAAC,SAAU,CAAC,CAAA;AACxE,CAAC,CAAA;AAZY,QAAA,mBAAmB,uBAY/B"
10
+ }
@@ -0,0 +1 @@
1
+ export declare const isServer: () => boolean;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isServer = void 0;
4
+ var isServer = function () { return typeof window === 'undefined'; };
5
+ exports.isServer = isServer;
6
+ //# 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\\internals\\utils.ts"
7
+ ],
8
+ "names": [],
9
+ "mappings": ";;;AAAO,IAAM,QAAQ,GAAG,cAAM,OAAA,OAAO,MAAM,KAAK,WAAW,EAA7B,CAA6B,CAAA;AAA9C,QAAA,QAAQ,YAAsC"
10
+ }
@@ -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,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Cookies = void 0;
4
+ var utils_1 = require("./utils");
5
+ var Cookies = /** @class */ (function () {
6
+ function Cookies() {
7
+ }
8
+ Cookies.prototype.setTokens = function (_a) {
9
+ var idToken = _a.idToken, token = _a.token;
10
+ !!token && (0, utils_1.setCookie)('kcToken', btoa(token));
11
+ !!idToken && (0, utils_1.setCookie)('kcIdToken', btoa(idToken));
12
+ };
13
+ Cookies.prototype.getTokens = function () {
14
+ var tknStr = (0, utils_1.getCookie)('kcToken');
15
+ var idTknStr = (0, utils_1.getCookie)('kcIdToken');
16
+ return {
17
+ idToken: idTknStr ? atob(idTknStr) : undefined,
18
+ refreshToken: '',
19
+ token: tknStr ? atob(tknStr) : undefined,
20
+ };
21
+ };
22
+ Cookies.prototype.resetTokens = function () {
23
+ (0, utils_1.removeCookie)('kcToken');
24
+ (0, utils_1.removeCookie)('kcIdToken');
25
+ };
26
+ return Cookies;
27
+ }());
28
+ exports.Cookies = Cookies;
29
+ //# 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,iCAA4D;AAE5D;IAAA;IAqBA,CAAC;IApBC,2BAAS,GAAT,UAAU,EAAoC;YAAlC,OAAO,aAAA,EAAE,KAAK,WAAA;QACxB,CAAC,CAAC,KAAK,IAAI,IAAA,iBAAS,EAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;QAC5C,CAAC,CAAC,OAAO,IAAI,IAAA,iBAAS,EAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;IACpD,CAAC;IAED,2BAAS,GAAT;QACE,IAAM,MAAM,GAAG,IAAA,iBAAS,EAAC,SAAS,CAAC,CAAA;QACnC,IAAM,QAAQ,GAAG,IAAA,iBAAS,EAAC,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,IAAA,oBAAY,EAAC,SAAS,CAAC,CAAA;QACvB,IAAA,oBAAY,EAAC,WAAW,CAAC,CAAA;IAC3B,CAAC;IACH,cAAC;AAAD,CAAC,AArBD,IAqBC;AArBY,0BAAO"
10
+ }
@@ -0,0 +1,3 @@
1
+ import type { TokenPersistor } from './types';
2
+ export declare const ExpressCookies: (req: any) => TokenPersistor;
3
+ export declare const SSRCookies: (cookies: any) => TokenPersistor;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SSRCookies = exports.ExpressCookies = void 0;
4
+ var js_base64_1 = require("js-base64");
5
+ var utils_1 = require("./utils");
6
+ var ExpressCookies = function (req) { return ({
7
+ setTokens: function () { },
8
+ getTokens: function () {
9
+ var _a = req.cookies || {}, kcIdToken = _a.kcIdToken, kcToken = _a.kcToken;
10
+ return {
11
+ idToken: kcIdToken ? js_base64_1.Base64.decode(kcIdToken) : undefined,
12
+ token: kcToken ? js_base64_1.Base64.decode(kcToken) : undefined,
13
+ };
14
+ },
15
+ resetTokens: function () { },
16
+ }); };
17
+ exports.ExpressCookies = ExpressCookies;
18
+ var SSRCookies = function (cookies) { return ({
19
+ setTokens: function (_a) {
20
+ var idToken = _a.idToken, token = _a.token;
21
+ !!token && (0, utils_1.setCookie)('kcToken', (0, utils_1.encode)(token));
22
+ !!idToken && (0, utils_1.setCookie)('kcIdToken', (0, utils_1.encode)(idToken));
23
+ },
24
+ getTokens: function () {
25
+ var tknStr = (0, utils_1.getCookie)('kcToken', cookies);
26
+ var idTknStr = (0, utils_1.getCookie)('kcIdToken', cookies);
27
+ return {
28
+ idToken: idTknStr ? (0, utils_1.decode)(idTknStr) : '',
29
+ refreshToken: '',
30
+ token: tknStr ? (0, utils_1.decode)(tknStr) : '',
31
+ };
32
+ },
33
+ resetTokens: function () {
34
+ (0, utils_1.removeCookie)('kcToken');
35
+ (0, utils_1.removeCookie)('kcIdToken');
36
+ },
37
+ }); };
38
+ exports.SSRCookies = SSRCookies;
39
+ //# 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,uCAAkC;AAGlC,iCAA4E;AAErE,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,kBAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;YACzD,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,kBAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;SACpD,CAAA;IACH,CAAC;IACD,WAAW,EAAE,cAAO,CAAC;CACtB,CAAC,EAV0D,CAU1D,CAAA;AAVW,QAAA,cAAc,kBAUzB;AAEK,IAAM,UAAU,GAAG,UAAC,OAAY,IAAqB,OAAA,CAAC;IAC3D,SAAS,EAAE,UAAC,EAAkB;YAAhB,OAAO,aAAA,EAAE,KAAK,WAAA;QAC1B,CAAC,CAAC,KAAK,IAAI,IAAA,iBAAS,EAAC,SAAS,EAAE,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC,CAAA;QAC9C,CAAC,CAAC,OAAO,IAAI,IAAA,iBAAS,EAAC,WAAW,EAAE,IAAA,cAAM,EAAC,OAAO,CAAC,CAAC,CAAA;IACtD,CAAC;IACD,SAAS,EAAE;QACT,IAAM,MAAM,GAAG,IAAA,iBAAS,EAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QAC5C,IAAM,QAAQ,GAAG,IAAA,iBAAS,EAAC,WAAW,EAAE,OAAO,CAAC,CAAA;QAEhD,OAAO;YACL,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAA,cAAM,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;YACzC,YAAY,EAAE,EAAE;YAChB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,IAAA,cAAM,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;SACpC,CAAA;IACH,CAAC;IACD,WAAW,EAAE;QACX,IAAA,oBAAY,EAAC,SAAS,CAAC,CAAA;QACvB,IAAA,oBAAY,EAAC,WAAW,CAAC,CAAA;IAC3B,CAAC;CACF,CAAC,EAnB0D,CAmB1D,CAAA;AAnBW,QAAA,UAAU,cAmBrB"
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,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "file": "types.js",
4
+ "sourceRoot": "",
5
+ "sources": [
6
+ "@react-keycloak-refork\\ssr\\persistors\\types.ts"
7
+ ],
8
+ "names": [],
9
+ "mappings": ""
10
+ }
@@ -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,31 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.decode = exports.encode = exports.removeCookie = exports.getCookie = exports.setCookie = void 0;
7
+ var js_base64_1 = require("js-base64");
8
+ var js_cookie_1 = __importDefault(require("js-cookie"));
9
+ var utils_1 = require("../internals/utils");
10
+ function setCookie(name, val) {
11
+ return js_cookie_1.default.set(name, val);
12
+ }
13
+ exports.setCookie = setCookie;
14
+ function getCookie(name, cookies) {
15
+ if (cookies === void 0) { cookies = {}; }
16
+ return (0, utils_1.isServer)() ? cookies[name] : js_cookie_1.default.get(name);
17
+ }
18
+ exports.getCookie = getCookie;
19
+ function removeCookie(name) {
20
+ js_cookie_1.default.remove(name);
21
+ }
22
+ exports.removeCookie = removeCookie;
23
+ function encode(value) {
24
+ return (0, js_base64_1.btoa)(value);
25
+ }
26
+ exports.encode = encode;
27
+ function decode(value) {
28
+ return (0, js_base64_1.atob)(value);
29
+ }
30
+ exports.decode = decode;
31
+ //# 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,uCAAsC;AACtC,wDAA8B;AAE9B,4CAA6C;AAE7C,SAAgB,SAAS,CAAC,IAAY,EAAE,GAAW;IACjD,OAAO,mBAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;AAC9B,CAAC;AAFD,8BAEC;AAED,SAAgB,SAAS,CAAC,IAAY,EAAE,OAAY;IAAZ,wBAAA,EAAA,YAAY;IAClD,OAAO,IAAA,gBAAQ,GAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,mBAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;AACtD,CAAC;AAFD,8BAEC;AAED,SAAgB,YAAY,CAAC,IAAY;IACvC,mBAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;AACrB,CAAC;AAFD,oCAEC;AAED,SAAgB,MAAM,CAAC,KAAa;IAClC,OAAO,IAAA,gBAAI,EAAC,KAAK,CAAC,CAAA;AACpB,CAAC;AAFD,wBAEC;AAED,SAAgB,MAAM,CAAC,KAAa;IAClC,OAAO,IAAA,gBAAI,EAAC,KAAK,CAAC,CAAA;AACpB,CAAC;AAFD,wBAEC"
10
+ }
@@ -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
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "file": "types.js",
4
+ "sourceRoot": "",
5
+ "sources": [
6
+ "@react-keycloak-refork\\ssr\\types.ts"
7
+ ],
8
+ "names": [],
9
+ "mappings": ""
10
+ }
@@ -0,0 +1,6 @@
1
+ import type { SSRAuthClient } from './types';
2
+ export type useKeycloakHookResults<T extends SSRAuthClient> = {
3
+ initialized: boolean;
4
+ keycloak?: T;
5
+ };
6
+ export declare function useKeycloak<T extends SSRAuthClient = SSRAuthClient>(): useKeycloakHookResults<T>;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useKeycloak = void 0;
4
+ var react_1 = require("react");
5
+ var context_1 = require("./internals/context");
6
+ var utils_1 = require("./internals/utils");
7
+ function useKeycloak() {
8
+ var _a = (0, react_1.useContext)(context_1.reactKeycloakSsrContext), initialized = _a.initialized, authClient = _a.authClient;
9
+ var initializedVar = initialized || (0, utils_1.isServer)();
10
+ return {
11
+ initialized: initializedVar,
12
+ keycloak: authClient,
13
+ };
14
+ }
15
+ exports.useKeycloak = useKeycloak;
16
+ //# 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,+BAAkC;AAElC,+CAA6D;AAC7D,2CAA4C;AAU5C,SAAgB,WAAW;IAGnB,IAAA,KAA8B,IAAA,kBAAU,EAAC,iCAAuB,CAAC,EAA/D,WAAW,iBAAA,EAAE,UAAU,gBAAwC,CAAA;IACvE,IAAM,cAAc,GAAG,WAAW,IAAI,IAAA,gBAAQ,GAAE,CAAA;IAEhD,OAAO;QACL,WAAW,EAAE,cAAc;QAC3B,QAAQ,EAAE,UAA2B;KACtC,CAAA;AACH,CAAC;AAVD,kCAUC"
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,52 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ var desc = Object.getOwnPropertyDescriptor(m, k);
16
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
+ desc = { enumerable: true, get: function() { return m[k]; } };
18
+ }
19
+ Object.defineProperty(o, k2, desc);
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
29
+ var __importStar = (this && this.__importStar) || function (mod) {
30
+ if (mod && mod.__esModule) return mod;
31
+ var result = {};
32
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
33
+ __setModuleDefault(result, mod);
34
+ return result;
35
+ };
36
+ Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.withKeycloak = void 0;
38
+ var React = __importStar(require("react"));
39
+ var useKeycloak_1 = require("./useKeycloak");
40
+ /**
41
+ * An HOC which injects the `keycloak` instance and the `keycloakInitialized` flag as props.
42
+ *
43
+ * @deprecated Please migrate to useKeycloak hook where/when possible.
44
+ */
45
+ function withKeycloak(Component) {
46
+ return function WrappedComponent(props) {
47
+ var _a = (0, useKeycloak_1.useKeycloak)(), keycloak = _a.keycloak, initialized = _a.initialized;
48
+ return (React.createElement(Component, __assign({}, props, { keycloakInitialized: initialized, keycloak: keycloak })));
49
+ };
50
+ }
51
+ exports.withKeycloak = withKeycloak;
52
+ //# sourceMappingURL=withKeycloak.js.map