@bmc-soft/keycloak-auth 2.0.2 → 2.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_lib/index.d.ts +1 -0
- package/dist/_lib/index.d.ts.map +1 -1
- package/dist/_lib/types/authStage.d.ts +1 -0
- package/dist/_lib/types/authStage.d.ts.map +1 -1
- package/dist/_lib/types/authStage.js +1 -0
- package/dist/_lib/types/authStage.js.map +1 -1
- package/dist/_lib/types/confirmAuthPhase.d.ts +1 -0
- package/dist/_lib/types/confirmAuthPhase.d.ts.map +1 -1
- package/dist/_lib/types/confirmAuthPhase.js +1 -0
- package/dist/_lib/types/confirmAuthPhase.js.map +1 -1
- package/dist/_lib/types/index.d.ts +1 -0
- package/dist/_lib/types/index.d.ts.map +1 -1
- package/dist/_lib/types/successFeedback.d.ts +6 -0
- package/dist/_lib/types/successFeedback.d.ts.map +1 -0
- package/dist/_lib/types/successFeedback.js +2 -0
- package/dist/_lib/types/successFeedback.js.map +1 -0
- package/dist/axios/adapters/KeycloakTokenProvider.js +1 -1
- package/dist/axios/adapters/KeycloakTokenProvider.js.map +1 -1
- package/dist/context/KeycloakConfigContext.d.ts.map +1 -1
- package/dist/context/KeycloakConfigContext.js +15 -12
- package/dist/context/KeycloakConfigContext.js.map +1 -1
- package/dist/context/KeycloakInstanceContext.d.ts.map +1 -1
- package/dist/context/KeycloakInstanceContext.js +30 -6
- package/dist/context/KeycloakInstanceContext.js.map +1 -1
- package/dist/context/TokenContext.d.ts.map +1 -1
- package/dist/context/TokenContext.js +15 -11
- package/dist/context/TokenContext.js.map +1 -1
- package/dist/core/adapter.d.ts.map +1 -1
- package/dist/core/adapter.js +24 -15
- package/dist/core/adapter.js.map +1 -1
- package/dist/core/sessionTermination.d.ts +2 -0
- package/dist/core/sessionTermination.d.ts.map +1 -0
- package/dist/core/sessionTermination.js +38 -0
- package/dist/core/sessionTermination.js.map +1 -0
- package/dist/hooks/useKeycloakAuthScreen.d.ts.map +1 -1
- package/dist/hooks/useKeycloakAuthScreen.js +2 -1
- package/dist/hooks/useKeycloakAuthScreen.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/screens/AuthPage/AuthPage.d.ts +2 -1
- package/dist/screens/AuthPage/AuthPage.d.ts.map +1 -1
- package/dist/screens/AuthPage/AuthPage.js +29 -9
- package/dist/screens/AuthPage/AuthPage.js.map +1 -1
- package/dist/screens/ConfirmAuthPage/ConfirmAuthPage.d.ts +3 -0
- package/dist/screens/ConfirmAuthPage/ConfirmAuthPage.d.ts.map +1 -1
- package/dist/screens/ConfirmAuthPage/ConfirmAuthPage.js +47 -7
- package/dist/screens/ConfirmAuthPage/ConfirmAuthPage.js.map +1 -1
- package/dist/storage/credentialStorage.d.ts +2 -0
- package/dist/storage/credentialStorage.d.ts.map +1 -1
- package/dist/storage/credentialStorage.js +55 -0
- package/dist/storage/credentialStorage.js.map +1 -1
- package/dist/storage/index.d.ts +1 -0
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +1 -0
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/installStorage.d.ts +3 -0
- package/dist/storage/installStorage.d.ts.map +1 -0
- package/dist/storage/installStorage.js +91 -0
- package/dist/storage/installStorage.js.map +1 -0
- package/dist/storage/tokenStorage.d.ts.map +1 -1
- package/dist/storage/tokenStorage.js.map +1 -1
- package/dist/ui/NumberPad/NumberPad.d.ts +1 -0
- package/dist/ui/NumberPad/NumberPad.d.ts.map +1 -1
- package/dist/ui/NumberPad/NumberPad.js +12 -6
- package/dist/ui/NumberPad/NumberPad.js.map +1 -1
- package/dist/ui/PINConfirm/PINConfirm.d.ts +1 -1
- package/dist/ui/PINConfirm/PINConfirm.d.ts.map +1 -1
- package/dist/ui/PINConfirm/PINConfirm.js +52 -18
- package/dist/ui/PINConfirm/PINConfirm.js.map +1 -1
- package/dist/ui/PINIndicator/PINIndicator.d.ts +1 -0
- package/dist/ui/PINIndicator/PINIndicator.d.ts.map +1 -1
- package/dist/ui/PINIndicator/PINIndicator.js +52 -13
- package/dist/ui/PINIndicator/PINIndicator.js.map +1 -1
- package/dist/ui/PINSetup/PINSetup.d.ts.map +1 -1
- package/dist/ui/PINSetup/PINSetup.js +4 -2
- package/dist/ui/PINSetup/PINSetup.js.map +1 -1
- package/dist/ui/PINSetup/stages/BiometryStage.d.ts.map +1 -1
- package/dist/ui/PINSetup/stages/BiometryStage.js +1 -1
- package/dist/ui/PINSetup/stages/BiometryStage.js.map +1 -1
- package/dist/ui/SuccessAuthAnimation/SuccessAuthAnimation.d.ts +11 -0
- package/dist/ui/SuccessAuthAnimation/SuccessAuthAnimation.d.ts.map +1 -0
- package/dist/ui/SuccessAuthAnimation/SuccessAuthAnimation.js +86 -0
- package/dist/ui/SuccessAuthAnimation/SuccessAuthAnimation.js.map +1 -0
- package/dist/ui/SuccessAuthAnimation/index.d.ts +2 -0
- package/dist/ui/SuccessAuthAnimation/index.d.ts.map +1 -0
- package/dist/ui/SuccessAuthAnimation/index.js +2 -0
- package/dist/ui/SuccessAuthAnimation/index.js.map +1 -0
- package/dist/ui/WebViewLogin/WebViewLogin.d.ts.map +1 -1
- package/dist/ui/WebViewLogin/WebViewLogin.js +117 -10
- package/dist/ui/WebViewLogin/WebViewLogin.js.map +1 -1
- package/dist/ui/WebViewLogout/WebViewLogout.js +4 -4
- package/dist/ui/WebViewLogout/WebViewLogout.js.map +1 -1
- package/dist/ui/index.d.ts +1 -0
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/index.js +1 -0
- package/dist/ui/index.js.map +1 -1
- package/dist/widgets/ReauthBottomSheet/ReauthBottomSheet.d.ts +4 -0
- package/dist/widgets/ReauthBottomSheet/ReauthBottomSheet.d.ts.map +1 -1
- package/dist/widgets/ReauthBottomSheet/ReauthBottomSheet.js +32 -4
- package/dist/widgets/ReauthBottomSheet/ReauthBottomSheet.js.map +1 -1
- package/package.json +7 -4
package/dist/_lib/index.d.ts
CHANGED
|
@@ -4,4 +4,5 @@ export { getInjectedJSForLogout } from './getInjectedJSForLogout';
|
|
|
4
4
|
export { AUTH_STAGE, type AuthStage } from './types';
|
|
5
5
|
export { CONFIRM_AUTH_PHASE, type ConfirmAuthPhase } from './types';
|
|
6
6
|
export { SETUP_STAGE, type SetupStage } from './types';
|
|
7
|
+
export type { SuccessFeedbackConfig } from './types';
|
|
7
8
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/_lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/_lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,sBAAsB,EAAC,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAC,sBAAsB,EAAC,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAC,UAAU,EAAE,KAAK,SAAS,EAAC,MAAM,SAAS,CAAC;AACnD,OAAO,EAAC,kBAAkB,EAAE,KAAK,gBAAgB,EAAC,MAAM,SAAS,CAAC;AAClE,OAAO,EAAC,WAAW,EAAE,KAAK,UAAU,EAAC,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/_lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,sBAAsB,EAAC,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAC,sBAAsB,EAAC,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAC,UAAU,EAAE,KAAK,SAAS,EAAC,MAAM,SAAS,CAAC;AACnD,OAAO,EAAC,kBAAkB,EAAE,KAAK,gBAAgB,EAAC,MAAM,SAAS,CAAC;AAClE,OAAO,EAAC,WAAW,EAAE,KAAK,UAAU,EAAC,MAAM,SAAS,CAAC;AACrD,YAAY,EAAC,qBAAqB,EAAC,MAAM,SAAS,CAAC"}
|
|
@@ -2,6 +2,7 @@ export declare const AUTH_STAGE: {
|
|
|
2
2
|
readonly LOGIN: "LOGIN";
|
|
3
3
|
readonly SETUP_PIN: "SETUP_PIN";
|
|
4
4
|
readonly PROCESSING: "PROCESSING";
|
|
5
|
+
readonly SUCCESS: "SUCCESS";
|
|
5
6
|
};
|
|
6
7
|
export type AuthStage = (typeof AUTH_STAGE)[keyof typeof AUTH_STAGE];
|
|
7
8
|
//# sourceMappingURL=authStage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authStage.d.ts","sourceRoot":"","sources":["../../../src/_lib/types/authStage.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU
|
|
1
|
+
{"version":3,"file":"authStage.d.ts","sourceRoot":"","sources":["../../../src/_lib/types/authStage.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU;;;;;CAKb,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authStage.js","sourceRoot":"","sources":["../../../src/_lib/types/authStage.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;
|
|
1
|
+
{"version":3,"file":"authStage.js","sourceRoot":"","sources":["../../../src/_lib/types/authStage.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;IACxB,OAAO,EAAE,SAAS;CACV,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export declare const CONFIRM_AUTH_PHASE: {
|
|
2
2
|
readonly PIN: "pin";
|
|
3
3
|
readonly WEBVIEW_LOGIN: "webview_login";
|
|
4
|
+
readonly SUCCESS: "success";
|
|
4
5
|
};
|
|
5
6
|
export type ConfirmAuthPhase = (typeof CONFIRM_AUTH_PHASE)[keyof typeof CONFIRM_AUTH_PHASE];
|
|
6
7
|
//# sourceMappingURL=confirmAuthPhase.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"confirmAuthPhase.d.ts","sourceRoot":"","sources":["../../../src/_lib/types/confirmAuthPhase.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,kBAAkB
|
|
1
|
+
{"version":3,"file":"confirmAuthPhase.d.ts","sourceRoot":"","sources":["../../../src/_lib/types/confirmAuthPhase.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,kBAAkB;;;;CAIrB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,OAAO,kBAAkB,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"confirmAuthPhase.js","sourceRoot":"","sources":["../../../src/_lib/types/confirmAuthPhase.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,GAAG,EAAE,KAAK;IACV,aAAa,EAAE,eAAe;
|
|
1
|
+
{"version":3,"file":"confirmAuthPhase.js","sourceRoot":"","sources":["../../../src/_lib/types/confirmAuthPhase.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,GAAG,EAAE,KAAK;IACV,aAAa,EAAE,eAAe;IAC9B,OAAO,EAAE,SAAS;CACV,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { AUTH_STAGE, type AuthStage } from './authStage';
|
|
2
2
|
export { CONFIRM_AUTH_PHASE, type ConfirmAuthPhase } from './confirmAuthPhase';
|
|
3
3
|
export { SETUP_STAGE, type SetupStage } from './pinSetupStage';
|
|
4
|
+
export type { SuccessFeedbackConfig } from './successFeedback';
|
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_lib/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,KAAK,SAAS,EAAC,MAAM,aAAa,CAAC;AACvD,OAAO,EAAC,kBAAkB,EAAE,KAAK,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAC,WAAW,EAAE,KAAK,UAAU,EAAC,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_lib/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,KAAK,SAAS,EAAC,MAAM,aAAa,CAAC;AACvD,OAAO,EAAC,kBAAkB,EAAE,KAAK,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAC,WAAW,EAAE,KAAK,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAC7D,YAAY,EAAC,qBAAqB,EAAC,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"successFeedback.d.ts","sourceRoot":"","sources":["../../../src/_lib/types/successFeedback.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,qBAAqB;IAKpC,OAAO,CAAC,EAAE,OAAO,CAAC;IAMlB,KAAK,CAAC,EAAE,MAAM,CAAC;IAMf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"successFeedback.js","sourceRoot":"","sources":["../../../src/_lib/types/successFeedback.ts"],"names":[],"mappings":""}
|
|
@@ -19,7 +19,7 @@ export class KeycloakTokenProvider {
|
|
|
19
19
|
}
|
|
20
20
|
async refreshToken() {
|
|
21
21
|
try {
|
|
22
|
-
const updated = await this.keycloakClient.updateToken(
|
|
22
|
+
const updated = await this.keycloakClient.updateToken(60);
|
|
23
23
|
const { token, refreshToken, idToken } = this.keycloakClient;
|
|
24
24
|
if (token) {
|
|
25
25
|
if (!updated) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeycloakTokenProvider.js","sourceRoot":"","sources":["../../../src/axios/adapters/KeycloakTokenProvider.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,4BAA4B,CAAC;AAuBxD,MAAM,OAAO,qBAAqB;IAGhC,YAAY,cAAyC;QACnD,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAMD,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC;YAEH,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;YACxC,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO,KAAK,CAAC;YACf,CAAC;YAGD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,SAAS,EAAE,CAAC;YAC9C,OAAO,MAAM,EAAE,WAAW,IAAI,MAAM,EAAE,KAAK,IAAI,IAAI,CAAC;QACtD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,KAAK,CAAC,CAAC;YACjE,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IASD,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"KeycloakTokenProvider.js","sourceRoot":"","sources":["../../../src/axios/adapters/KeycloakTokenProvider.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,4BAA4B,CAAC;AAuBxD,MAAM,OAAO,qBAAqB;IAGhC,YAAY,cAAyC;QACnD,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAMD,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC;YAEH,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;YACxC,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO,KAAK,CAAC;YACf,CAAC;YAGD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,SAAS,EAAE,CAAC;YAC9C,OAAO,MAAM,EAAE,WAAW,IAAI,MAAM,EAAE,KAAK,IAAI,IAAI,CAAC;QACtD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,KAAK,CAAC,CAAC;YACjE,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IASD,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAG1D,MAAM,EAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,cAAc,CAAC;YAC3D,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,MAAM,YAAY,CAAC,UAAU,CAAC;oBAC5B,WAAW,EAAE,KAAK;oBAClB,YAAY,EAAE,YAAY,IAAI,SAAS;oBACvC,OAAO,EAAE,OAAO,IAAI,SAAS;iBAC9B,CAAC,CAAC;gBACH,OAAO,KAAK,CAAC;YACf,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,KAAK,CAAC,CAAC;YACrE,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAKD,KAAK,CAAC,eAAe;QACnB,IAAI,CAAC;YAEH,IAAI,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;gBACrC,OAAO,IAAI,CAAC;YACd,CAAC;YAGD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,SAAS,EAAE,CAAC;YAC9C,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,YAAY,IAAI,MAAM,EAAE,YAAY,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,kDAAkD,EAAE,KAAK,CAAC,CAAC;YACzE,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;CAOF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeycloakConfigContext.d.ts","sourceRoot":"","sources":["../../src/context/KeycloakConfigContext.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,EAEZ,KAAK,SAAS,EAMf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EACV,sBAAsB,EACtB,oBAAoB,EACpB,cAAc,EACd,qBAAqB,EACtB,MAAM,SAAS,CAAC;AAGjB,UAAU,0BAA0B;IAClC,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,gBAAgB,EAAE,sBAAsB,CAAC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACzE,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,6BAA6B,EAAE,OAAO,CAAC;IAEvC,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACtC;AAID,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,SAAS,CAAC;IAEpB,MAAM,EAAE,qBAAqB,CAAC;IAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACzE,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C,6BAA6B,CAAC,EAAE,OAAO,CAAC;CACzC;AAiBD,eAAO,MAAM,sBAAsB,
|
|
1
|
+
{"version":3,"file":"KeycloakConfigContext.d.ts","sourceRoot":"","sources":["../../src/context/KeycloakConfigContext.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,EAEZ,KAAK,SAAS,EAMf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EACV,sBAAsB,EACtB,oBAAoB,EACpB,cAAc,EACd,qBAAqB,EACtB,MAAM,SAAS,CAAC;AAGjB,UAAU,0BAA0B;IAClC,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,gBAAgB,EAAE,sBAAsB,CAAC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACzE,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,6BAA6B,EAAE,OAAO,CAAC;IAEvC,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACtC;AAID,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,SAAS,CAAC;IAEpB,MAAM,EAAE,qBAAqB,CAAC;IAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACzE,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C,6BAA6B,CAAC,EAAE,OAAO,CAAC;CACzC;AAiBD,eAAO,MAAM,sBAAsB,yDAuFlC,CAAC;AASF,eAAO,MAAM,iBAAiB,QAAO,cAQpC,CAAC;AAEF,eAAO,MAAM,yBAAyB,QAAO,IAAI,CAC/C,0BAA0B,EACxB,sBAAsB,GACtB,eAAe,GACf,kBAAkB,GAClB,cAAc,GACd,iBAAiB,GACjB,sBAAsB,GACtB,+BAA+B,CAiBlC,CAAC;AAKF,eAAO,MAAM,wBAAwB,QAAO,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAM/D,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { createContext, useCallback, useContext, useEffect, useMemo, useState, } from 'react';
|
|
2
|
-
import { credentialStorage } from '../storage';
|
|
2
|
+
import { credentialStorage, ensureFreshInstallStorage } from '../storage';
|
|
3
3
|
const KeycloakConfigContext = createContext(null);
|
|
4
4
|
function getEffectiveConfig(config, pinSet) {
|
|
5
5
|
const use2faClient = config.clientId2fa != null && (pinSet === false || pinSet === null);
|
|
@@ -15,19 +15,22 @@ export const KeycloakConfigProvider = React.memo(({ children, config, offlineAcc
|
|
|
15
15
|
const [pinSet, setPinSet] = useState(null);
|
|
16
16
|
useEffect(() => {
|
|
17
17
|
let mounted = true;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
18
|
+
const prepareConfig = async () => {
|
|
19
|
+
try {
|
|
20
|
+
await ensureFreshInstallStorage();
|
|
21
|
+
const hasPin = await credentialStorage.hasPIN();
|
|
22
|
+
if (mounted) {
|
|
23
|
+
setPinSet(hasPin);
|
|
24
|
+
}
|
|
23
25
|
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
26
|
+
catch (error) {
|
|
27
|
+
console.error('[KeycloakConfigProvider] PIN check error:', error);
|
|
28
|
+
if (mounted) {
|
|
29
|
+
setPinSet(false);
|
|
30
|
+
}
|
|
29
31
|
}
|
|
30
|
-
}
|
|
32
|
+
};
|
|
33
|
+
prepareConfig();
|
|
31
34
|
return () => {
|
|
32
35
|
mounted = false;
|
|
33
36
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeycloakConfigContext.js","sourceRoot":"","sources":["../../src/context/KeycloakConfigContext.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,EACZ,aAAa,EAEb,WAAW,EACX,UAAU,EACV,SAAS,EACT,OAAO,EACP,QAAQ,GACT,MAAM,OAAO,CAAC;AAQf,OAAO,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"KeycloakConfigContext.js","sourceRoot":"","sources":["../../src/context/KeycloakConfigContext.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeycloakInstanceContext.d.ts","sourceRoot":"","sources":["../../src/context/KeycloakInstanceContext.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAEZ,KAAK,SAAS,EAMf,MAAM,OAAO,CAAC;AAGf,OAAO,yBAAyB,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,SAAS,CAAC;AAMnD,UAAU,4BAA4B;IACpC,QAAQ,EAAE,yBAAyB,GAAG,IAAI,CAAC;IAC3C,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IAEpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAID,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IAEpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAE9B,UAAU,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;CAC9C;
|
|
1
|
+
{"version":3,"file":"KeycloakInstanceContext.d.ts","sourceRoot":"","sources":["../../src/context/KeycloakInstanceContext.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAEZ,KAAK,SAAS,EAMf,MAAM,OAAO,CAAC;AAGf,OAAO,yBAAyB,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,SAAS,CAAC;AAMnD,UAAU,4BAA4B;IACpC,QAAQ,EAAE,yBAAyB,GAAG,IAAI,CAAC;IAC3C,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IAEpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAID,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IAEpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAE9B,UAAU,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;CAC9C;AAGD,eAAO,MAAM,wBAAwB,2DAuPpC,CAAC;AAQF,eAAO,MAAM,mBAAmB,QAAO,4BAQtC,CAAC"}
|
|
@@ -6,7 +6,7 @@ import { tokenStorage } from '../storage';
|
|
|
6
6
|
import { useKeycloakConfig, useKeycloakSessionOptions } from './KeycloakConfigContext';
|
|
7
7
|
import { reauthRequiredRef } from './reauthRequiredRef';
|
|
8
8
|
const KeycloakInstanceContext = createContext(null);
|
|
9
|
-
const MIN_VALIDITY_ON_APP_RESUME =
|
|
9
|
+
const MIN_VALIDITY_ON_APP_RESUME = 60;
|
|
10
10
|
export const KeycloakInstanceProvider = React.memo(({ children, redirectUri, autoRefreshToken = true, autoRefreshTokenMinValidity = 5, onReauthRequired, initOnLoad, }) => {
|
|
11
11
|
const config = useKeycloakConfig();
|
|
12
12
|
const [keycloak, setKeycloak] = useState(null);
|
|
@@ -16,6 +16,7 @@ export const KeycloakInstanceProvider = React.memo(({ children, redirectUri, aut
|
|
|
16
16
|
const [tokenVersion, setTokenVersion] = useState(0);
|
|
17
17
|
const appStateRef = useRef(AppState.currentState);
|
|
18
18
|
const backgroundedAtRef = useRef(null);
|
|
19
|
+
const hasStoredSessionRef = useRef(false);
|
|
19
20
|
const { backgroundReauth, clientSecret, deferStoredTokensUntilRefresh, getClientSecret, initRecoveryStrategy, isConfigReady, } = useKeycloakSessionOptions();
|
|
20
21
|
const resolvedBackgroundReauth = useMemo(() => resolveBackgroundReauthConfig(backgroundReauth), [backgroundReauth]);
|
|
21
22
|
useEffect(() => {
|
|
@@ -27,12 +28,15 @@ export const KeycloakInstanceProvider = React.memo(({ children, redirectUri, aut
|
|
|
27
28
|
let mounted = true;
|
|
28
29
|
const buildInitOptions = async () => {
|
|
29
30
|
const { accessToken = undefined, token = undefined, idToken = undefined, offlineToken = undefined, refreshToken = undefined, } = await tokenStorage.getTokens();
|
|
31
|
+
const storedAccessToken = accessToken ?? token;
|
|
32
|
+
const storedRefreshToken = offlineToken ?? refreshToken;
|
|
33
|
+
hasStoredSessionRef.current = Boolean(storedAccessToken && storedRefreshToken);
|
|
30
34
|
return {
|
|
31
35
|
...(deferStoredTokensUntilRefresh
|
|
32
36
|
? {}
|
|
33
37
|
: {
|
|
34
|
-
token:
|
|
35
|
-
refreshToken:
|
|
38
|
+
token: storedAccessToken,
|
|
39
|
+
refreshToken: storedRefreshToken,
|
|
36
40
|
idToken,
|
|
37
41
|
}),
|
|
38
42
|
...(initOnLoad != null && { onLoad: initOnLoad }),
|
|
@@ -107,8 +111,13 @@ export const KeycloakInstanceProvider = React.memo(({ children, redirectUri, aut
|
|
|
107
111
|
keycloak.onTokenExpired = () => {
|
|
108
112
|
keycloak
|
|
109
113
|
.updateToken(minValidity)
|
|
110
|
-
.then(refreshed => {
|
|
114
|
+
.then(async (refreshed) => {
|
|
111
115
|
if (refreshed) {
|
|
116
|
+
await tokenStorage.saveTokens({
|
|
117
|
+
accessToken: keycloak.token,
|
|
118
|
+
offlineToken: keycloak.refreshToken,
|
|
119
|
+
idToken: keycloak.idToken,
|
|
120
|
+
});
|
|
112
121
|
setTokenVersion(v => v + 1);
|
|
113
122
|
}
|
|
114
123
|
})
|
|
@@ -140,6 +149,10 @@ export const KeycloakInstanceProvider = React.memo(({ children, redirectUri, aut
|
|
|
140
149
|
if (prev.match(/inactive|background/) && nextAppState === 'active') {
|
|
141
150
|
const backgroundedAt = backgroundedAtRef.current;
|
|
142
151
|
backgroundedAtRef.current = null;
|
|
152
|
+
const hasKeycloakSession = keycloak?.authenticated ||
|
|
153
|
+
(deferStoredTokensUntilRefresh && hasStoredSessionRef.current);
|
|
154
|
+
if (!hasKeycloakSession)
|
|
155
|
+
return;
|
|
143
156
|
if (shouldShowBackgroundReauth({
|
|
144
157
|
enabled: resolvedBackgroundReauth.enabled,
|
|
145
158
|
thresholdMs: resolvedBackgroundReauth.thresholdMs,
|
|
@@ -154,8 +167,13 @@ export const KeycloakInstanceProvider = React.memo(({ children, redirectUri, aut
|
|
|
154
167
|
return;
|
|
155
168
|
keycloak
|
|
156
169
|
.updateToken(MIN_VALIDITY_ON_APP_RESUME)
|
|
157
|
-
.then(refreshed => {
|
|
170
|
+
.then(async (refreshed) => {
|
|
158
171
|
if (refreshed) {
|
|
172
|
+
await tokenStorage.saveTokens({
|
|
173
|
+
accessToken: keycloak.token,
|
|
174
|
+
offlineToken: keycloak.refreshToken,
|
|
175
|
+
idToken: keycloak.idToken,
|
|
176
|
+
});
|
|
159
177
|
setTokenVersion(v => v + 1);
|
|
160
178
|
}
|
|
161
179
|
})
|
|
@@ -172,7 +190,13 @@ export const KeycloakInstanceProvider = React.memo(({ children, redirectUri, aut
|
|
|
172
190
|
}
|
|
173
191
|
});
|
|
174
192
|
return () => subscription.remove();
|
|
175
|
-
}, [
|
|
193
|
+
}, [
|
|
194
|
+
config.url,
|
|
195
|
+
deferStoredTokensUntilRefresh,
|
|
196
|
+
keycloak,
|
|
197
|
+
onReauthRequired,
|
|
198
|
+
resolvedBackgroundReauth,
|
|
199
|
+
]);
|
|
176
200
|
const value = useMemo(() => ({
|
|
177
201
|
keycloak,
|
|
178
202
|
isInitialized,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeycloakInstanceContext.js","sourceRoot":"","sources":["../../src/context/KeycloakInstanceContext.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EACZ,aAAa,EAEb,UAAU,EACV,SAAS,EACT,OAAO,EACP,MAAM,EACN,QAAQ,GACT,MAAM,OAAO,CAAC;AACf,OAAO,EAAC,QAAQ,EAAsB,MAAM,cAAc,CAAC;AAE3D,OAAO,yBAAyB,MAAM,gBAAgB,CAAC;AAEvD,OAAO,EAAC,6BAA6B,EAAE,0BAA0B,EAAC,MAAM,uBAAuB,CAAC;AAChG,OAAO,EAAC,YAAY,EAAC,MAAM,YAAY,CAAC;AACxC,OAAO,EAAC,iBAAiB,EAAE,yBAAyB,EAAC,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAC,iBAAiB,EAAC,MAAM,qBAAqB,CAAC;AAYtD,MAAM,uBAAuB,GAAG,aAAa,CAAsC,IAAI,CAAC,CAAC;AAezF,MAAM,0BAA0B,GAAG,
|
|
1
|
+
{"version":3,"file":"KeycloakInstanceContext.js","sourceRoot":"","sources":["../../src/context/KeycloakInstanceContext.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenContext.d.ts","sourceRoot":"","sources":["../../src/context/TokenContext.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,EAEZ,KAAK,SAAS,
|
|
1
|
+
{"version":3,"file":"TokenContext.d.ts","sourceRoot":"","sources":["../../src/context/TokenContext.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,EAEZ,KAAK,SAAS,EAOf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAQlD,UAAU,iBAAiB;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAClC;AAID,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,SAAS,CAAC;IAEpB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,CAAC;CAC7C;AAED,eAAO,MAAM,aAAa,gDAyKxB,CAAC;AASH,eAAO,MAAM,QAAQ,QAAO,iBAQ3B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { createContext, useCallback, useContext, useEffect, useMemo, useState, } from 'react';
|
|
1
|
+
import React, { createContext, useCallback, useContext, useEffect, useMemo, useRef, useState, } from 'react';
|
|
2
2
|
import { tokenStorage } from '../storage';
|
|
3
3
|
import { useKeycloakInstance } from './KeycloakInstanceContext';
|
|
4
4
|
const TokenContext = createContext(null);
|
|
@@ -7,6 +7,7 @@ export const TokenProvider = React.memo(({ children, onTokens }) => {
|
|
|
7
7
|
const [token, setToken] = useState(null);
|
|
8
8
|
const [refreshToken, setRefreshToken] = useState(null);
|
|
9
9
|
const [idToken, setIdToken] = useState(null);
|
|
10
|
+
const updateTokenPromiseRef = useRef(null);
|
|
10
11
|
useEffect(() => {
|
|
11
12
|
onTokens?.({
|
|
12
13
|
accessToken: token,
|
|
@@ -40,21 +41,12 @@ export const TokenProvider = React.memo(({ children, onTokens }) => {
|
|
|
40
41
|
const currentIdToken = keycloak.idToken;
|
|
41
42
|
if (currentToken !== token) {
|
|
42
43
|
setToken(currentToken || null);
|
|
43
|
-
if (currentToken) {
|
|
44
|
-
tokenStorage.saveToken(currentToken).catch(console.error);
|
|
45
|
-
}
|
|
46
44
|
}
|
|
47
45
|
if (currentRefreshToken !== refreshToken) {
|
|
48
46
|
setRefreshToken(currentRefreshToken || null);
|
|
49
|
-
if (currentRefreshToken) {
|
|
50
|
-
tokenStorage.saveRefreshToken(currentRefreshToken).catch(console.error);
|
|
51
|
-
}
|
|
52
47
|
}
|
|
53
48
|
if (currentIdToken !== idToken) {
|
|
54
49
|
setIdToken(currentIdToken || null);
|
|
55
|
-
if (currentIdToken) {
|
|
56
|
-
tokenStorage.saveIdToken(currentIdToken).catch(console.error);
|
|
57
|
-
}
|
|
58
50
|
}
|
|
59
51
|
}, [
|
|
60
52
|
keycloak,
|
|
@@ -68,10 +60,13 @@ export const TokenProvider = React.memo(({ children, onTokens }) => {
|
|
|
68
60
|
tokenVersion,
|
|
69
61
|
]);
|
|
70
62
|
const updateToken = useCallback(async (minValidity = 120) => {
|
|
63
|
+
if (updateTokenPromiseRef.current) {
|
|
64
|
+
return updateTokenPromiseRef.current;
|
|
65
|
+
}
|
|
71
66
|
if (!keycloak || !isInitialized) {
|
|
72
67
|
throw new Error('[TokenContext] Keycloak not initialized');
|
|
73
68
|
}
|
|
74
|
-
|
|
69
|
+
const updatePromise = (async () => {
|
|
75
70
|
const updated = await keycloak.updateToken(minValidity);
|
|
76
71
|
if (updated && keycloak.token) {
|
|
77
72
|
setToken(keycloak.token);
|
|
@@ -85,6 +80,10 @@ export const TokenProvider = React.memo(({ children, onTokens }) => {
|
|
|
85
80
|
return keycloak.token;
|
|
86
81
|
}
|
|
87
82
|
return keycloak.token || token || '';
|
|
83
|
+
})();
|
|
84
|
+
updateTokenPromiseRef.current = updatePromise;
|
|
85
|
+
try {
|
|
86
|
+
return await updatePromise;
|
|
88
87
|
}
|
|
89
88
|
catch (error) {
|
|
90
89
|
const refreshError = error === true
|
|
@@ -94,6 +93,11 @@ export const TokenProvider = React.memo(({ children, onTokens }) => {
|
|
|
94
93
|
console.error('[TokenContext] Update token error:', refreshError);
|
|
95
94
|
throw refreshError;
|
|
96
95
|
}
|
|
96
|
+
finally {
|
|
97
|
+
if (updateTokenPromiseRef.current === updatePromise) {
|
|
98
|
+
updateTokenPromiseRef.current = null;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
97
101
|
}, [keycloak, isInitialized, token]);
|
|
98
102
|
const clearTokens = useCallback(async () => {
|
|
99
103
|
setToken(null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenContext.js","sourceRoot":"","sources":["../../src/context/TokenContext.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,EACZ,aAAa,EAEb,WAAW,EACX,UAAU,EACV,SAAS,EACT,OAAO,EACP,QAAQ,GACT,MAAM,OAAO,CAAC;AAGf,OAAO,EAAC,YAAY,EAAC,MAAM,YAAY,CAAC;AACxC,OAAO,EAAC,mBAAmB,EAAC,MAAM,2BAA2B,CAAC;AAiB9D,MAAM,YAAY,GAAG,aAAa,CAA2B,IAAI,CAAC,CAAC;AAQnE,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAqB,CAAC,EAAC,QAAQ,EAAE,QAAQ,EAAC,EAAE,EAAE;IACnF,MAAM,EAAC,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAC,GAAG,mBAAmB,EAAE,CAAC;IACtE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACtE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"TokenContext.js","sourceRoot":"","sources":["../../src/context/TokenContext.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/core/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/core/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,SAAS,CAAC;AAgDnD,cAAM,SAAU,YAAW,eAAe;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuC;IAC9D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAkC;gBAG5D,MAAM,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAClC,eAAe,EAAE,QAAQ,CAAC,cAAc,CAAC,EACzC,WAAW,EAAE,QAAQ,CAAC,qBAAqB,CAAC;IAM9C,qBAAqB,IAAI,eAAe;IAIxC,cAAc,CAAC,OAAO,EAAE,oBAAoB;IAItC,KAAK,CAAC,GAAG,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAShD,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAKvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IASlC,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAIjE,2BAA2B,CAAC,qBAAqB,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAIvF,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAa1E,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA6B5E,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAI7E,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIzE,WAAW,CAAC,OAAO,CAAC,EAAE;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAC,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM;CAW7E;AAED,eAAe,SAAS,CAAC"}
|
package/dist/core/adapter.js
CHANGED
|
@@ -73,22 +73,31 @@ class RNAdapter {
|
|
|
73
73
|
return readTokenResponse(tokenRes, 'exchange');
|
|
74
74
|
}
|
|
75
75
|
async refreshTokens(tokenUrl, params) {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
method: 'POST',
|
|
79
|
-
headers: {
|
|
80
|
-
'Content-type': 'application/x-www-form-urlencoded',
|
|
81
|
-
},
|
|
82
|
-
body,
|
|
83
|
-
});
|
|
84
|
-
try {
|
|
85
|
-
return await readTokenResponse(tokenRes, 'refresh');
|
|
86
|
-
}
|
|
87
|
-
catch (error) {
|
|
88
|
-
this.client.__lastTokenRefreshError =
|
|
89
|
-
error instanceof Error ? error : new Error(String(error));
|
|
90
|
-
throw error;
|
|
76
|
+
if (this.client.__refreshTokensPromise) {
|
|
77
|
+
return this.client.__refreshTokensPromise;
|
|
91
78
|
}
|
|
79
|
+
this.client.__refreshTokensPromise = (async () => {
|
|
80
|
+
const body = await createTokenRequestBody(params, this.initOptions);
|
|
81
|
+
const tokenRes = await fetch(tokenUrl, {
|
|
82
|
+
method: 'POST',
|
|
83
|
+
headers: {
|
|
84
|
+
'Content-type': 'application/x-www-form-urlencoded',
|
|
85
|
+
},
|
|
86
|
+
body,
|
|
87
|
+
});
|
|
88
|
+
try {
|
|
89
|
+
return await readTokenResponse(tokenRes, 'refresh');
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
this.client.__lastTokenRefreshError =
|
|
93
|
+
error instanceof Error ? error : new Error(String(error));
|
|
94
|
+
throw error;
|
|
95
|
+
}
|
|
96
|
+
finally {
|
|
97
|
+
this.client.__refreshTokensPromise = undefined;
|
|
98
|
+
}
|
|
99
|
+
})();
|
|
100
|
+
return this.client.__refreshTokensPromise;
|
|
92
101
|
}
|
|
93
102
|
async fetchUserProfile(profileUrl, token) {
|
|
94
103
|
return await fetchJSON(profileUrl, token);
|
package/dist/core/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/core/adapter.ts"],"names":[],"mappings":"AAaA,OAAO,YAAY,MAAM,WAAW,CAAC;AAErC,OAAO,EAAC,SAAS,EAAC,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/core/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sessionTermination.d.ts","sourceRoot":"","sources":["../../src/core/sessionTermination.ts"],"names":[],"mappings":"AA8BA,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CASxE"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
const SESSION_TERMINATION_MARKERS = [
|
|
2
|
+
'invalid_grant',
|
|
3
|
+
'refresh token expired',
|
|
4
|
+
'refresh token has expired',
|
|
5
|
+
'token is not active',
|
|
6
|
+
'session not active',
|
|
7
|
+
'offline token is missing',
|
|
8
|
+
'offline user session not found',
|
|
9
|
+
'unauthorized_client',
|
|
10
|
+
'invalid client',
|
|
11
|
+
'invalid client credentials',
|
|
12
|
+
"session doesn't have required client",
|
|
13
|
+
];
|
|
14
|
+
const NETWORK_ERROR_MARKERS = [
|
|
15
|
+
'network request failed',
|
|
16
|
+
'failed to fetch',
|
|
17
|
+
'networkerror',
|
|
18
|
+
'internet',
|
|
19
|
+
'timed out',
|
|
20
|
+
'timeout',
|
|
21
|
+
];
|
|
22
|
+
function getErrorText(error) {
|
|
23
|
+
if (error instanceof Error) {
|
|
24
|
+
return error.message.toLowerCase();
|
|
25
|
+
}
|
|
26
|
+
return String(error).toLowerCase();
|
|
27
|
+
}
|
|
28
|
+
export function isKeycloakSessionTerminatedError(error) {
|
|
29
|
+
const text = getErrorText(error);
|
|
30
|
+
if (SESSION_TERMINATION_MARKERS.some(marker => text.includes(marker))) {
|
|
31
|
+
return true;
|
|
32
|
+
}
|
|
33
|
+
if (NETWORK_ERROR_MARKERS.some(marker => text.includes(marker))) {
|
|
34
|
+
return false;
|
|
35
|
+
}
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=sessionTermination.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sessionTermination.js","sourceRoot":"","sources":["../../src/core/sessionTermination.ts"],"names":[],"mappings":"AAAA,MAAM,2BAA2B,GAAG;IAClC,eAAe;IACf,uBAAuB;IACvB,2BAA2B;IAC3B,qBAAqB;IACrB,oBAAoB;IACpB,0BAA0B;IAC1B,gCAAgC;IAChC,qBAAqB;IACrB,gBAAgB;IAChB,4BAA4B;IAC5B,sCAAsC;CACvC,CAAC;AAEF,MAAM,qBAAqB,GAAG;IAC5B,wBAAwB;IACxB,iBAAiB;IACjB,cAAc;IACd,UAAU;IACV,WAAW;IACX,SAAS;CACV,CAAC;AAEF,SAAS,YAAY,CAAC,KAAc;IAClC,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IACrC,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,gCAAgC,CAAC,KAAc;IAC7D,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QACtE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QAChE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useKeycloakAuthScreen.d.ts","sourceRoot":"","sources":["../../src/hooks/useKeycloakAuthScreen.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,OAAO,GAAG,SAAS,CAAC;AAEnE,MAAM,WAAW,4BAA4B;IAK3C,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB;AAMD,wBAAgB,qBAAqB,CACnC,OAAO,GAAE,4BAAiC,GACzC,2BAA2B,
|
|
1
|
+
{"version":3,"file":"useKeycloakAuthScreen.d.ts","sourceRoot":"","sources":["../../src/hooks/useKeycloakAuthScreen.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,OAAO,GAAG,SAAS,CAAC;AAEnE,MAAM,WAAW,4BAA4B;IAK3C,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB;AAMD,wBAAgB,qBAAqB,CACnC,OAAO,GAAE,4BAAiC,GACzC,2BAA2B,CA8D7B"}
|
|
@@ -16,7 +16,8 @@ export function useKeycloakAuthScreen(options = {}) {
|
|
|
16
16
|
tokenStorage.hasTokens(),
|
|
17
17
|
credentialStorage.hasPIN(),
|
|
18
18
|
]);
|
|
19
|
-
|
|
19
|
+
const result = hasTokens && hasPIN ? 'confirm' : 'login';
|
|
20
|
+
return result;
|
|
20
21
|
}, [shouldShowConfirm]);
|
|
21
22
|
useEffect(() => {
|
|
22
23
|
if (!isInitialized) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useKeycloakAuthScreen.js","sourceRoot":"","sources":["../../src/hooks/useKeycloakAuthScreen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAEvD,OAAO,EAAC,mBAAmB,EAAC,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAC,iBAAiB,EAAE,YAAY,EAAC,MAAM,YAAY,CAAC;AAsB3D,MAAM,UAAU,qBAAqB,CACnC,UAAwC,EAAE;IAE1C,MAAM,EAAC,aAAa,EAAC,GAAG,mBAAmB,EAAE,CAAC;IAC9C,MAAM,EAAC,iBAAiB,EAAC,GAAG,OAAO,CAAC;IAEpC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAqB,WAAW,CAAC,CAAC;IACtE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAe,IAAI,CAAC,CAAC;IAEvD,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,IAAiC,EAAE;QACxE,IAAI,iBAAiB,EAAE,CAAC;YACtB,MAAM,IAAI,GAAG,MAAM,iBAAiB,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;QACpC,CAAC;QACD,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC5C,YAAY,CAAC,SAAS,EAAE;YACxB,iBAAiB,CAAC,MAAM,EAAE;SAC3B,CAAC,CAAC;QACH,
|
|
1
|
+
{"version":3,"file":"useKeycloakAuthScreen.js","sourceRoot":"","sources":["../../src/hooks/useKeycloakAuthScreen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAEvD,OAAO,EAAC,mBAAmB,EAAC,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAC,iBAAiB,EAAE,YAAY,EAAC,MAAM,YAAY,CAAC;AAsB3D,MAAM,UAAU,qBAAqB,CACnC,UAAwC,EAAE;IAE1C,MAAM,EAAC,aAAa,EAAC,GAAG,mBAAmB,EAAE,CAAC;IAC9C,MAAM,EAAC,iBAAiB,EAAC,GAAG,OAAO,CAAC;IAEpC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAqB,WAAW,CAAC,CAAC;IACtE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAe,IAAI,CAAC,CAAC;IAEvD,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,IAAiC,EAAE;QACxE,IAAI,iBAAiB,EAAE,CAAC;YACtB,MAAM,IAAI,GAAG,MAAM,iBAAiB,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;QACpC,CAAC;QACD,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC5C,YAAY,CAAC,SAAS,EAAE;YACxB,iBAAiB,CAAC,MAAM,EAAE;SAC3B,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;QACzD,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAExB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,IAAI,OAAO,GAAG,IAAI,CAAC;QAEnB,MAAM,GAAG,GAAG,KAAK,IAAI,EAAE;YACrB,IAAI,CAAC;gBACH,SAAS,CAAC,WAAW,CAAC,CAAC;gBACvB,YAAY,CAAC,IAAI,CAAC,CAAC;gBACnB,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACf,MAAM,MAAM,GAAG,MAAM,aAAa,EAAE,CAAC;gBACrC,IAAI,OAAO,EAAE,CAAC;oBACZ,SAAS,CAAC,MAAM,CAAC,CAAC;gBACpB,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,SAAS,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;gBACtE,IAAI,OAAO,EAAE,CAAC;oBACZ,QAAQ,CAAC,SAAS,CAAC,CAAC;oBACpB,SAAS,CAAC,OAAO,CAAC,CAAC;gBACrB,CAAC;YACH,CAAC;oBAAS,CAAC;gBACT,IAAI,OAAO,EAAE,CAAC;oBACZ,YAAY,CAAC,KAAK,CAAC,CAAC;gBACtB,CAAC;YACH,CAAC;QACH,CAAC,CAAC;QAEF,GAAG,EAAE,CAAC;QAEN,OAAO,GAAG,EAAE;YACV,OAAO,GAAG,KAAK,CAAC;QAClB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC;IAEnC,OAAO;QACL,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW;QAC5C,SAAS,EAAE,CAAC,aAAa,IAAI,SAAS;QACtC,KAAK;KACN,CAAC;AACJ,CAAC"}
|