@multiplatform.one/keycloak 1.0.7 → 1.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/Authenticated.js +1 -1
- package/dist/cjs/Authenticated.js.map +1 -1
- package/dist/cjs/Authenticated.native.js +1 -1
- package/dist/cjs/Authenticated.native.js.map +1 -1
- package/dist/cjs/index.js +0 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/index.native.js +0 -2
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/keycloak/keycloak.js +4 -2
- package/dist/cjs/keycloak/keycloak.js.map +1 -1
- package/dist/cjs/provider/KeycloakProvider.js +6 -5
- package/dist/cjs/provider/KeycloakProvider.js.map +1 -1
- package/dist/cjs/provider/KeycloakProvider.native.js +8 -4
- package/dist/cjs/provider/KeycloakProvider.native.js.map +2 -2
- package/dist/cjs/state.js +1 -1
- package/dist/cjs/state.js.map +1 -1
- package/dist/cjs/state.native.js +1 -1
- package/dist/cjs/state.native.js.map +1 -1
- package/dist/esm/Authenticated.js +1 -1
- package/dist/esm/Authenticated.js.map +1 -1
- package/dist/esm/Authenticated.mjs +1 -1
- package/dist/esm/Authenticated.native.js +1 -1
- package/dist/esm/Authenticated.native.js.map +1 -1
- package/dist/esm/hooks/useTokensFromQuery/index.native.mjs +2 -0
- package/dist/esm/index.js +0 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs +0 -1
- package/dist/esm/index.native.js +0 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/keycloak/keycloak.js +4 -1
- package/dist/esm/keycloak/keycloak.js.map +1 -1
- package/dist/esm/keycloak/keycloak.mjs +6 -1
- package/dist/esm/keycloak/keycloak.native.mjs +84 -0
- package/dist/esm/provider/AuthProvider/AuthProvider.native.mjs +111 -0
- package/dist/esm/provider/KeycloakProvider.js +7 -6
- package/dist/esm/provider/KeycloakProvider.js.map +1 -1
- package/dist/esm/provider/KeycloakProvider.mjs +11 -7
- package/dist/esm/provider/KeycloakProvider.native.js +9 -5
- package/dist/esm/provider/KeycloakProvider.native.js.map +2 -2
- package/dist/esm/session/session.native.mjs +7 -0
- package/dist/esm/state.js +1 -1
- package/dist/esm/state.js.map +1 -1
- package/dist/esm/state.mjs +1 -1
- package/dist/esm/state.native.js +1 -1
- package/dist/esm/state.native.js.map +2 -2
- package/dist/jsx/Authenticated.js +1 -1
- package/dist/jsx/Authenticated.js.map +1 -1
- package/dist/jsx/Authenticated.mjs +1 -1
- package/dist/jsx/Authenticated.native.js +1 -1
- package/dist/jsx/Authenticated.native.js.map +1 -1
- package/dist/jsx/hooks/useTokensFromQuery/index.native.mjs +2 -0
- package/dist/jsx/index.js +0 -1
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +0 -1
- package/dist/jsx/index.native.js +0 -1
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/keycloak/keycloak.js +4 -1
- package/dist/jsx/keycloak/keycloak.js.map +1 -1
- package/dist/jsx/keycloak/keycloak.mjs +6 -1
- package/dist/jsx/keycloak/keycloak.native.mjs +84 -0
- package/dist/jsx/provider/AuthProvider/AuthProvider.native.mjs +111 -0
- package/dist/jsx/provider/KeycloakProvider.js +7 -6
- package/dist/jsx/provider/KeycloakProvider.js.map +1 -1
- package/dist/jsx/provider/KeycloakProvider.mjs +11 -7
- package/dist/jsx/provider/KeycloakProvider.native.js +9 -5
- package/dist/jsx/provider/KeycloakProvider.native.js.map +2 -2
- package/dist/jsx/session/session.native.mjs +7 -0
- package/dist/jsx/state.js +1 -1
- package/dist/jsx/state.js.map +1 -1
- package/dist/jsx/state.mjs +1 -1
- package/dist/jsx/state.native.js +1 -1
- package/dist/jsx/state.native.js.map +2 -2
- package/package.json +26 -38
- package/src/Authenticated.tsx +1 -1
- package/src/index.ts +0 -1
- package/src/keycloak/keycloak.ts +3 -0
- package/src/provider/KeycloakProvider.tsx +20 -16
- package/src/state.ts +1 -1
- package/types/Authenticated.d.ts +0 -20
- package/types/Authenticated.d.ts.map +1 -1
- package/types/index.d.ts +0 -1
- package/types/index.d.ts.map +1 -1
- package/types/keycloak/keycloak.d.ts +1 -1
- package/types/keycloak/keycloak.d.ts.map +1 -1
- package/types/provider/AfterAuth.d.ts +0 -20
- package/types/provider/AfterAuth.d.ts.map +1 -1
- package/types/provider/AuthProvider/AuthProvider.d.ts +0 -20
- package/types/provider/AuthProvider/AuthProvider.d.ts.map +1 -1
- package/types/provider/AuthProvider/AuthProvider.native.d.ts +0 -20
- package/types/provider/AuthProvider/AuthProvider.native.d.ts.map +1 -1
- package/types/provider/KeycloakProvider.d.ts +1 -21
- package/types/provider/KeycloakProvider.d.ts.map +1 -1
- package/dist/cjs/apollo.js +0 -64
- package/dist/cjs/apollo.js.map +0 -6
- package/dist/cjs/apollo.native.js +0 -95
- package/dist/cjs/apollo.native.js.map +0 -6
- package/dist/esm/apollo.js +0 -49
- package/dist/esm/apollo.js.map +0 -6
- package/dist/esm/apollo.mjs +0 -44
- package/dist/esm/apollo.native.js +0 -74
- package/dist/esm/apollo.native.js.map +0 -6
- package/dist/jsx/apollo.js +0 -49
- package/dist/jsx/apollo.js.map +0 -6
- package/dist/jsx/apollo.mjs +0 -44
- package/dist/jsx/apollo.native.js +0 -74
- package/dist/jsx/apollo.native.js.map +0 -6
- package/src/apollo.ts +0 -95
- package/types/apollo.d.ts +0 -5
- package/types/apollo.d.ts.map +0 -1
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
import { useMemo } from "react";
|
|
2
2
|
import { AuthConfigContext } from "../authConfig";
|
|
3
3
|
import { AuthProvider } from "./AuthProvider";
|
|
4
|
-
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
import { Fragment, jsx } from "react/jsx-runtime";
|
|
5
5
|
function KeycloakProvider({
|
|
6
|
+
baseUrl,
|
|
6
7
|
children,
|
|
7
|
-
debug,
|
|
8
|
-
realm,
|
|
9
8
|
clientId,
|
|
10
|
-
|
|
9
|
+
debug,
|
|
10
|
+
disabled,
|
|
11
11
|
publicClientId,
|
|
12
|
+
realm,
|
|
12
13
|
session
|
|
13
14
|
}) {
|
|
14
|
-
const authConfig = useMemo(() => ({ debug }), [debug]);
|
|
15
|
-
return /* @__PURE__ */ jsx(AuthConfigContext.Provider, { value: authConfig, children: /* @__PURE__ */ jsx(
|
|
15
|
+
const authConfig = useMemo(() => ({ debug, disabled }), [debug, disabled]);
|
|
16
|
+
return /* @__PURE__ */ jsx(AuthConfigContext.Provider, { value: authConfig, children: disabled ? /* @__PURE__ */ jsx(Fragment, { children }) : /* @__PURE__ */ jsx(
|
|
16
17
|
AuthProvider,
|
|
17
18
|
{
|
|
18
19
|
sessionProvider: { session },
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/provider/KeycloakProvider.tsx"],
|
|
4
|
-
"mappings": "AAqBA,SAAgB,eAAe;AAI/B,SAAS,yBAAyB;AAClC,SAAS,oBAAoB;
|
|
4
|
+
"mappings": "AAqBA,SAAgB,eAAe;AAI/B,SAAS,yBAAyB;AAClC,SAAS,oBAAoB;AAwBrB;AAdD,SAAS,iBAAiB;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA0B;AACxB,QAAM,aAAa,QAAQ,OAAO,EAAE,OAAO,SAAS,IAAI,CAAC,OAAO,QAAQ,CAAC;AACzE,SACE,oBAAC,kBAAkB,UAAlB,EAA2B,OAAO,YAChC,qBACC,gCAAG,UAAS,IAEZ;AAAA,IAAC;AAAA;AAAA,MACC,iBAAiB,EAAE,QAAQ;AAAA,MAC3B,gBAAgB;AAAA,QACd,UAAU,YAAY;AAAA,QACtB;AAAA,QACA,OAAO,SAAS;AAAA,QAChB,KAAK;AAAA,MACP;AAAA,MAEC;AAAA;AAAA,EACH,GAEJ;AAEJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1,22 +1,26 @@
|
|
|
1
1
|
import { useMemo } from "react";
|
|
2
2
|
import { AuthConfigContext } from "../authConfig.mjs";
|
|
3
3
|
import { AuthProvider } from "./AuthProvider/index.mjs";
|
|
4
|
-
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
import { Fragment, jsx } from "react/jsx-runtime";
|
|
5
5
|
function KeycloakProvider({
|
|
6
|
+
baseUrl,
|
|
6
7
|
children,
|
|
7
|
-
debug,
|
|
8
|
-
realm,
|
|
9
8
|
clientId,
|
|
10
|
-
|
|
9
|
+
debug,
|
|
10
|
+
disabled,
|
|
11
11
|
publicClientId,
|
|
12
|
+
realm,
|
|
12
13
|
session
|
|
13
14
|
}) {
|
|
14
15
|
const authConfig = useMemo(() => ({
|
|
15
|
-
debug
|
|
16
|
-
|
|
16
|
+
debug,
|
|
17
|
+
disabled
|
|
18
|
+
}), [debug, disabled]);
|
|
17
19
|
return /* @__PURE__ */jsx(AuthConfigContext.Provider, {
|
|
18
20
|
value: authConfig,
|
|
19
|
-
children: /* @__PURE__ */jsx(
|
|
21
|
+
children: disabled ? /* @__PURE__ */jsx(Fragment, {
|
|
22
|
+
children
|
|
23
|
+
}) : /* @__PURE__ */jsx(AuthProvider, {
|
|
20
24
|
sessionProvider: {
|
|
21
25
|
session
|
|
22
26
|
},
|
|
@@ -1,18 +1,22 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { useMemo } from "react";
|
|
3
3
|
import { AuthConfigContext } from "../authConfig";
|
|
4
4
|
import { AuthProvider } from "./AuthProvider";
|
|
5
5
|
function KeycloakProvider(param) {
|
|
6
|
-
var
|
|
6
|
+
var baseUrl = param.baseUrl, children = param.children, clientId = param.clientId, debug = param.debug, disabled = param.disabled, publicClientId = param.publicClientId, realm = param.realm, session = param.session, authConfig = useMemo(function() {
|
|
7
7
|
return {
|
|
8
|
-
debug
|
|
8
|
+
debug,
|
|
9
|
+
disabled
|
|
9
10
|
};
|
|
10
11
|
}, [
|
|
11
|
-
debug
|
|
12
|
+
debug,
|
|
13
|
+
disabled
|
|
12
14
|
]);
|
|
13
15
|
return /* @__PURE__ */ _jsx(AuthConfigContext.Provider, {
|
|
14
16
|
value: authConfig,
|
|
15
|
-
children: /* @__PURE__ */ _jsx(
|
|
17
|
+
children: disabled ? /* @__PURE__ */ _jsx(_Fragment, {
|
|
18
|
+
children
|
|
19
|
+
}) : /* @__PURE__ */ _jsx(AuthProvider, {
|
|
16
20
|
sessionProvider: {
|
|
17
21
|
session
|
|
18
22
|
},
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/provider/Users/clayrisser/Projects/.bitspur/multiplatform.one/packages/keycloak/src/provider/KeycloakProvider.tsx"],
|
|
4
|
-
"mappings": "AAmBC,SAAA,OAAA,YAAA;AAED,SAAgBA,eAAe;AAI/B,SAASC,yBAAyB;AAClC,SAASC,oBAAoB;AAUtB,SAASC,iBAAiB,
|
|
5
|
-
"names": ["useMemo", "AuthConfigContext", "AuthProvider", "KeycloakProvider", "
|
|
4
|
+
"mappings": "AAmBC,SAAA,OAAA,MAAA,YAAA,iBAAA;AAED,SAAgBA,eAAe;AAI/B,SAASC,yBAAyB;AAClC,SAASC,oBAAoB;AAUtB,SAASC,iBAAiB,OAST;MARtBC,UAD+B,MAC/BA,SACAC,WAF+B,MAE/BA,UACAC,WAH+B,MAG/BA,UACAC,QAJ+B,MAI/BA,OACAC,WAL+B,MAK/BA,UACAC,iBAN+B,MAM/BA,gBACAC,QAP+B,MAO/BA,OACAC,UAR+B,MAQ/BA,SAEMC,aAAaZ,QAAQ,WAAA;WAAO;MAAEO;MAAOC;IAAS;KAAI;IAACD;IAAOC;GAAS;AACzE,SACE,qBAACP,kBAAkBY,UAAQ;IAACC,OAAOF;cAChCJ,WACC,qBAAA,WAAA;;SAEA,qBAACN,cAAAA;MACCa,iBAAiB;QAAEJ;MAAQ;MAC3BK,gBAAgB;QACdV,UAAUA,YAAY;QACtBG;QACAC,OAAOA,SAAS;QAChBO,KAAKb;MACP;;;;AAOV;",
|
|
5
|
+
"names": ["useMemo", "AuthConfigContext", "AuthProvider", "KeycloakProvider", "baseUrl", "children", "clientId", "debug", "disabled", "publicClientId", "realm", "session", "authConfig", "Provider", "value", "sessionProvider", "keycloakConfig", "url"]
|
|
6
6
|
}
|
package/dist/esm/state.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { createStateStore } from "multiplatform.one/zustand";
|
|
2
1
|
import { MultiPlatform } from "multiplatform.one";
|
|
2
|
+
import { createStateStore } from "@multiplatform.one/zustand";
|
|
3
3
|
const persist = MultiPlatform.isIframe || !MultiPlatform.isNext && !MultiPlatform.isServer, { useStore } = createStateStore(
|
|
4
4
|
"auth",
|
|
5
5
|
{
|
package/dist/esm/state.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/state.ts"],
|
|
4
|
-
"mappings": "AAqBA,SAAS,
|
|
4
|
+
"mappings": "AAqBA,SAAS,qBAAqB;AAC9B,SAAS,wBAAwB;AAE1B,MAAM,UAAU,cAAc,YAAa,CAAC,cAAc,UAAU,CAAC,cAAc,UAEpF,EAAE,SAAS,IAAI;AAAA,EACnB;AAAA,EACA;AAAA,IACE,SAAS;AAAA,IACT,cAAc;AAAA,IACd,OAAO;AAAA,EACT;AAAA,EACA;AAAA,EACA,EAAE,QAAQ;AACZ;AAEO,SAAS,eAAe;AAC7B,SAAO,SAAS;AAClB;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/esm/state.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { createStateStore } from "multiplatform.one/zustand";
|
|
2
1
|
import { MultiPlatform } from "multiplatform.one";
|
|
2
|
+
import { createStateStore } from "@multiplatform.one/zustand";
|
|
3
3
|
const persist = MultiPlatform.isIframe || !MultiPlatform.isNext && !MultiPlatform.isServer,
|
|
4
4
|
{
|
|
5
5
|
useStore
|
package/dist/esm/state.native.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { createStateStore } from "multiplatform.one/zustand";
|
|
2
1
|
import { MultiPlatform } from "multiplatform.one";
|
|
2
|
+
import { createStateStore } from "@multiplatform.one/zustand";
|
|
3
3
|
var persist = MultiPlatform.isIframe || !MultiPlatform.isNext && !MultiPlatform.isServer, useStore = createStateStore("auth", {
|
|
4
4
|
idToken: "",
|
|
5
5
|
refreshToken: "",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Users/clayrisser/Projects/.bitspur/multiplatform.one/packages/keycloak/src/state.ts"],
|
|
4
|
-
"mappings": "AAqBA,SAASA,
|
|
5
|
-
"names": ["
|
|
4
|
+
"mappings": "AAqBA,SAASA,qBAAqB;AAC9B,SAASC,wBAAwB;AAE1B,IAAMC,UAAUF,cAAcG,YAAa,CAACH,cAAcI,UAAU,CAACJ,cAAcK,UAElFC,WAAaL,iBACnB,QACA;EACEM,SAAS;EACTC,cAAc;EACdC,OAAO;AACT,GACAC,QACA;EAAER;AAAQ,CAAA,EARJI;AAWD,SAASK,eAAAA;AACd,SAAOL,SAAAA;AACT;",
|
|
5
|
+
"names": ["MultiPlatform", "createStateStore", "persist", "isIframe", "isNext", "isServer", "useStore", "idToken", "refreshToken", "token", "undefined", "useAuthState"]
|
|
6
6
|
}
|
|
@@ -19,7 +19,7 @@ function Authenticated({ children, disabled, loggedOutComponent, loadingComponen
|
|
|
19
19
|
const LoadingComponent = loadingComponent;
|
|
20
20
|
return LoadingComponent ? /* @__PURE__ */ jsx(LoadingComponent, {}) : /* @__PURE__ */ jsx(Text, { children: authConfig.debug ? "loading" : null });
|
|
21
21
|
}
|
|
22
|
-
if (keycloak.authenticated)
|
|
22
|
+
if (keycloak === null || keycloak.authenticated)
|
|
23
23
|
return /* @__PURE__ */ jsx(Fragment, { children });
|
|
24
24
|
const LoggedOutComponent = loggedOutComponent;
|
|
25
25
|
return LoggedOutComponent ? /* @__PURE__ */ jsx(LoggedOutComponent, {}) : /* @__PURE__ */ jsx(Text, { children: authConfig.debug ? "not authenticated" : null });
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Authenticated.tsx"],
|
|
4
|
-
"mappings": ";AAuBA,SAAkD,iBAAiB;AACnE,SAAS,qBAAqB;AAC9B,SAAS,YAAY;AACrB,SAAS,eAAe,0BAA0B;AAClD,SAAS,mBAAmB;AAE5B,OAAO,kBAAkB;AAyBF;AAvBvB,OAAO,eAAe;AAQf,SAAS,cAAc,EAAE,UAAU,UAAU,oBAAoB,iBAAiB,GAAuB;AAC9G,QAAM,aAAa,cAAc,GAC3B,WAAW,YAAY,GACvB,kBAAkB,mBAAmB;AAY3C,MAVA,UAAU,MAAM;AACd,IAAI,CAAC,YAAY,cAAc,YAAY,cAAc,YAAY,SAAS,iBAAiB,mBAG/F,SAAS,MAAM;AAAA,MACb,aAAa,WAAW;AAAA,IAC1B,CAAC;AAAA,EACH,GAAG,CAAC,UAAU,aAAa,CAAC,GAExB,OAAO,WAAa,QAAa,WAAW,WAAW,WACvD;AAAU,WAAO,gCAAG,UAAS;AACjC,MAAI,OAAO,WAAa,KAAa;AACnC,UAAM,mBAAmB;AACzB,WAAO,mBAAmB,oBAAC,oBAAiB,IAAK,oBAAC,QAAM,qBAAW,QAAQ,YAAY,MAAK;AAAA,EAC9F;AACA,MAAI,SAAS;AAAe,WAAO,gCAAG,UAAS;
|
|
4
|
+
"mappings": ";AAuBA,SAAkD,iBAAiB;AACnE,SAAS,qBAAqB;AAC9B,SAAS,YAAY;AACrB,SAAS,eAAe,0BAA0B;AAClD,SAAS,mBAAmB;AAE5B,OAAO,kBAAkB;AAyBF;AAvBvB,OAAO,eAAe;AAQf,SAAS,cAAc,EAAE,UAAU,UAAU,oBAAoB,iBAAiB,GAAuB;AAC9G,QAAM,aAAa,cAAc,GAC3B,WAAW,YAAY,GACvB,kBAAkB,mBAAmB;AAY3C,MAVA,UAAU,MAAM;AACd,IAAI,CAAC,YAAY,cAAc,YAAY,cAAc,YAAY,SAAS,iBAAiB,mBAG/F,SAAS,MAAM;AAAA,MACb,aAAa,WAAW;AAAA,IAC1B,CAAC;AAAA,EACH,GAAG,CAAC,UAAU,aAAa,CAAC,GAExB,OAAO,WAAa,QAAa,WAAW,WAAW,WACvD;AAAU,WAAO,gCAAG,UAAS;AACjC,MAAI,OAAO,WAAa,KAAa;AACnC,UAAM,mBAAmB;AACzB,WAAO,mBAAmB,oBAAC,oBAAiB,IAAK,oBAAC,QAAM,qBAAW,QAAQ,YAAY,MAAK;AAAA,EAC9F;AACA,MAAI,aAAa,QAAQ,SAAS;AAAe,WAAO,gCAAG,UAAS;AACpE,QAAM,qBAAqB;AAC3B,SAAO,qBAAqB,oBAAC,sBAAmB,IAAK,oBAAC,QAAM,qBAAW,QAAQ,sBAAsB,MAAK;AAC5G;AAEO,SAAS,kBAAoC,WAA6B;AAC/E,SAAO,CAAC,UACN,oBAAC,iBACC,8BAAC,aAAW,GAAG,OAAO,GACxB;AAEJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -30,7 +30,7 @@ function Authenticated({
|
|
|
30
30
|
children: authConfig.debug ? "loading" : null
|
|
31
31
|
});
|
|
32
32
|
}
|
|
33
|
-
if (keycloak.authenticated) return /* @__PURE__ */jsx(Fragment, {
|
|
33
|
+
if (keycloak === null || keycloak.authenticated) return /* @__PURE__ */jsx(Fragment, {
|
|
34
34
|
children
|
|
35
35
|
});
|
|
36
36
|
const LoggedOutComponent = loggedOutComponent;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Users/clayrisser/Projects/.bitspur/multiplatform.one/packages/keycloak/src/Authenticated.tsx"],
|
|
4
|
-
"mappings": ";;AAuBA,SAAkDA,iBAAiB;AACnE,SAASC,qBAAqB;AAC9B,SAASC,YAAY;AACrB,SAASC,eAAeC,0BAA0B;AAClD,SAASC,mBAAmB;AAE5B,OAAOC,kBAAkB;;;;;;;;;;;;;;;;;;;;AAEzBC,OAAOD,eAAeA;AAQf,SAASE,cAAc,OAAgF;MAA9EC,WAAF,MAAEA,UAAUC,WAAZ,MAAYA,UAAUC,qBAAtB,MAAsBA,oBAAoBC,mBAA1C,MAA0CA,kBAChEC,aAAaV,cAAAA,GACbW,WAAWT,YAAAA,GACXU,kBAAkBX,mBAAAA;AAYxB,MAVAJ,UAAU,WAAA;AACR,IAAI,CAACc,YAAYb,cAAce,YAAYf,cAAcgB,YAAYH,SAASI,iBAAiBH,mBAG/FD,SAASK,MAAM;MACbC,aAAaP,WAAWQ;IAC1B,CAAA;EACF,GAAG;IAACP,YAAAA,OAAAA,SAAAA,SAAUI;GAAc,GAExB,OAAOR,WAAa,QAAaA,WAAWG,WAAWH,WACvDA;AAAU,WAAO,qBAAA,WAAA;;;AACrB,MAAI,OAAOI,WAAa,KAAa;AACnC,QAAMQ,mBAAmBV;AACzB,WAAOU,mBAAmB,qBAACA,kBAAAA,CAAAA,CAAAA,IAAsB,qBAACpB,MAAAA;gBAAMW,WAAWU,QAAQ,YAAY;;EACzF;AACA,MAAIT,SAASI;AAAe,WAAO,qBAAA,WAAA;;;
|
|
4
|
+
"mappings": ";;AAuBA,SAAkDA,iBAAiB;AACnE,SAASC,qBAAqB;AAC9B,SAASC,YAAY;AACrB,SAASC,eAAeC,0BAA0B;AAClD,SAASC,mBAAmB;AAE5B,OAAOC,kBAAkB;;;;;;;;;;;;;;;;;;;;AAEzBC,OAAOD,eAAeA;AAQf,SAASE,cAAc,OAAgF;MAA9EC,WAAF,MAAEA,UAAUC,WAAZ,MAAYA,UAAUC,qBAAtB,MAAsBA,oBAAoBC,mBAA1C,MAA0CA,kBAChEC,aAAaV,cAAAA,GACbW,WAAWT,YAAAA,GACXU,kBAAkBX,mBAAAA;AAYxB,MAVAJ,UAAU,WAAA;AACR,IAAI,CAACc,YAAYb,cAAce,YAAYf,cAAcgB,YAAYH,SAASI,iBAAiBH,mBAG/FD,SAASK,MAAM;MACbC,aAAaP,WAAWQ;IAC1B,CAAA;EACF,GAAG;IAACP,YAAAA,OAAAA,SAAAA,SAAUI;GAAc,GAExB,OAAOR,WAAa,QAAaA,WAAWG,WAAWH,WACvDA;AAAU,WAAO,qBAAA,WAAA;;;AACrB,MAAI,OAAOI,WAAa,KAAa;AACnC,QAAMQ,mBAAmBV;AACzB,WAAOU,mBAAmB,qBAACA,kBAAAA,CAAAA,CAAAA,IAAsB,qBAACpB,MAAAA;gBAAMW,WAAWU,QAAQ,YAAY;;EACzF;AACA,MAAIT,aAAa,QAAQA,SAASI;AAAe,WAAO,qBAAA,WAAA;;;AACxD,MAAMM,qBAAqBb;AAC3B,SAAOa,qBAAqB,qBAACA,oBAAAA,CAAAA,CAAAA,IAAwB,qBAACtB,MAAAA;cAAMW,WAAWU,QAAQ,sBAAsB;;AACvG;AAEO,SAASE,kBAAoCC,WAA2B;AAC7E,SAAO,SAACC,OAAAA;WACN,qBAACnB,eAAAA;gBACC,qBAACkB,WAAAA,eAAAA,CAAAA,GAAcC,KAAAA,CAAAA;;;AAGrB;",
|
|
5
5
|
"names": ["useEffect", "MultiPlatform", "Text", "useAuthConfig", "useTokensFromQuery", "useKeycloak", "AsyncStorage", "global", "Authenticated", "children", "disabled", "loggedOutComponent", "loadingComponent", "authConfig", "keycloak", "tokensFromQuery", "isIframe", "isServer", "authenticated", "login", "redirectUri", "loginRedirectUri", "LoadingComponent", "debug", "LoggedOutComponent", "withAuthenticated", "Component", "props"]
|
|
6
6
|
}
|
package/dist/jsx/index.js
CHANGED
package/dist/jsx/index.js.map
CHANGED
package/dist/jsx/index.mjs
CHANGED
package/dist/jsx/index.native.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Users/clayrisser/Projects/.bitspur/multiplatform.one/packages/keycloak/src/index.ts"],
|
|
4
|
-
"mappings": "AAqBA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;
|
|
4
|
+
"mappings": "AAqBA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -4,6 +4,7 @@ import { MultiPlatform } from "multiplatform.one";
|
|
|
4
4
|
import { getSession, useSession } from "../session/session";
|
|
5
5
|
import { jwtDecode } from "jwt-decode";
|
|
6
6
|
import { signIn, signOut } from "next-auth/react";
|
|
7
|
+
import { useAuthConfig } from "../hooks";
|
|
7
8
|
import { useContext } from "react";
|
|
8
9
|
class Keycloak {
|
|
9
10
|
constructor(config, input, idToken, refreshToken, login, logout) {
|
|
@@ -92,7 +93,9 @@ class Keycloak {
|
|
|
92
93
|
}
|
|
93
94
|
}
|
|
94
95
|
function useKeycloak() {
|
|
95
|
-
const keycloak = useContext(KeycloakContext), keycloakConfig = useContext(KeycloakConfigContext);
|
|
96
|
+
const keycloak = useContext(KeycloakContext), keycloakConfig = useContext(KeycloakConfigContext), { disabled } = useAuthConfig();
|
|
97
|
+
if (disabled)
|
|
98
|
+
return null;
|
|
96
99
|
if (keycloak)
|
|
97
100
|
return keycloak;
|
|
98
101
|
const { session, status } = useSession();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/keycloak/keycloak.ts"],
|
|
4
|
-
"mappings": "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
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -4,6 +4,7 @@ import { MultiPlatform } from "multiplatform.one";
|
|
|
4
4
|
import { getSession, useSession } from "../session/session.mjs";
|
|
5
5
|
import { jwtDecode } from "jwt-decode";
|
|
6
6
|
import { signIn, signOut } from "next-auth/react";
|
|
7
|
+
import { useAuthConfig } from "../hooks/index.mjs";
|
|
7
8
|
import { useContext } from "react";
|
|
8
9
|
class Keycloak {
|
|
9
10
|
constructor(config, input, idToken, refreshToken, login, logout) {
|
|
@@ -87,7 +88,11 @@ class Keycloak {
|
|
|
87
88
|
}
|
|
88
89
|
function useKeycloak() {
|
|
89
90
|
const keycloak = useContext(KeycloakContext),
|
|
90
|
-
keycloakConfig = useContext(KeycloakConfigContext)
|
|
91
|
+
keycloakConfig = useContext(KeycloakConfigContext),
|
|
92
|
+
{
|
|
93
|
+
disabled
|
|
94
|
+
} = useAuthConfig();
|
|
95
|
+
if (disabled) return null;
|
|
91
96
|
if (keycloak) return keycloak;
|
|
92
97
|
const {
|
|
93
98
|
session,
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { KeycloakConfigContext } from "../keycloak/config.mjs";
|
|
2
|
+
import { KeycloakContext } from "./context.mjs";
|
|
3
|
+
import { MultiPlatform } from "multiplatform.one";
|
|
4
|
+
import { jwtDecode } from "jwt-decode";
|
|
5
|
+
import { useContext } from "react";
|
|
6
|
+
class Keycloak {
|
|
7
|
+
constructor(config, input, idToken, refreshToken, login, logout) {
|
|
8
|
+
this.config = config;
|
|
9
|
+
typeof input == "string" ? (this.token = input, this.idToken = idToken, this.refreshToken = refreshToken) : typeof input == "object" && (typeof input.init == "function" ? this.keycloakClient = input : this.mock = input), this.token && !this._tokenParsed && (this._tokenParsed = jwtDecode(this.token)), this.idToken && !this._idTokenParsed && (this._idTokenParsed = jwtDecode(this.idToken)), this.refreshToken && !this._refreshTokenParsed && (this._refreshTokenParsed = jwtDecode(this.refreshToken)), this._login = login, this._logout = logout;
|
|
10
|
+
}
|
|
11
|
+
token;
|
|
12
|
+
idToken;
|
|
13
|
+
refreshToken;
|
|
14
|
+
_idTokenParsed;
|
|
15
|
+
_login;
|
|
16
|
+
_logout;
|
|
17
|
+
_refreshTokenParsed;
|
|
18
|
+
_tokenParsed;
|
|
19
|
+
keycloakClient;
|
|
20
|
+
mock;
|
|
21
|
+
get tokenParsed() {
|
|
22
|
+
return this.keycloakClient ? this.keycloakClient.tokenParsed : this._tokenParsed;
|
|
23
|
+
}
|
|
24
|
+
get idTokenParsed() {
|
|
25
|
+
return this.keycloakClient ? this.keycloakClient.idTokenParsed : this._idTokenParsed;
|
|
26
|
+
}
|
|
27
|
+
get refreshTokenParsed() {
|
|
28
|
+
return this.keycloakClient ? this.keycloakClient.refreshTokenParsed : this._refreshTokenParsed;
|
|
29
|
+
}
|
|
30
|
+
get clientId() {
|
|
31
|
+
return this.keycloakClient ? this.keycloakClient.clientId : this.tokenParsed?.azp || this.config.clientId;
|
|
32
|
+
}
|
|
33
|
+
get email() {
|
|
34
|
+
return this.keycloakClient ? this.keycloakClient.tokenParsed?.email : this.mock ? this.mock.email : this.tokenParsed?.email;
|
|
35
|
+
}
|
|
36
|
+
get realm() {
|
|
37
|
+
return this.keycloakClient ? this.keycloakClient.realm : this.tokenParsed?.iss?.split("/").pop() || this.config.realm;
|
|
38
|
+
}
|
|
39
|
+
get realmAccess() {
|
|
40
|
+
return this.keycloakClient ? this.keycloakClient.realmAccess : this.tokenParsed?.realm_access;
|
|
41
|
+
}
|
|
42
|
+
get resourceAccess() {
|
|
43
|
+
return this.keycloakClient ? this.keycloakClient.resourceAccess : this.tokenParsed?.resource_access;
|
|
44
|
+
}
|
|
45
|
+
get sessionId() {
|
|
46
|
+
return this.keycloakClient ? this.keycloakClient.sessionId : this.tokenParsed?.session_state;
|
|
47
|
+
}
|
|
48
|
+
get subject() {
|
|
49
|
+
return this.keycloakClient ? this.keycloakClient.subject : this.tokenParsed?.sub;
|
|
50
|
+
}
|
|
51
|
+
get username() {
|
|
52
|
+
return this.mock ? this.mock.username : this.tokenParsed?.preferred_username;
|
|
53
|
+
}
|
|
54
|
+
async getUserInfo() {
|
|
55
|
+
if (!this.authenticated) return;
|
|
56
|
+
const response = await fetch(`${this.config.url}/realms/${this.config.realm}/protocol/openid-connect/userinfo`, {
|
|
57
|
+
method: "GET",
|
|
58
|
+
headers: {
|
|
59
|
+
Authorization: "Bearer " + this.token,
|
|
60
|
+
Accept: "application/json"
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
if (response.ok) return response.json();
|
|
64
|
+
}
|
|
65
|
+
async login(options = {}) {
|
|
66
|
+
this.idToken = void 0, this.refreshToken = void 0, this.token = void 0, this.keycloakClient ? await this.keycloakClient.login(options) : await this._login?.(options);
|
|
67
|
+
}
|
|
68
|
+
async logout(options = {}) {
|
|
69
|
+
this.idToken = void 0, this.refreshToken = void 0, this.token = void 0, this.keycloakClient ? await this.keycloakClient.logout(options) : await this._logout?.(options);
|
|
70
|
+
}
|
|
71
|
+
get authenticated() {
|
|
72
|
+
return this.mock ? !0 : this.keycloakClient ? !!this.keycloakClient.authenticated : !this.tokenParsed?.exp || !this.idToken ? !1 : this.tokenParsed.exp > Date.now() / 1e3;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
function useKeycloak() {
|
|
76
|
+
const keycloak = useContext(KeycloakContext),
|
|
77
|
+
keycloakConfig = useContext(KeycloakConfigContext);
|
|
78
|
+
if (keycloak) return keycloak;
|
|
79
|
+
if (MultiPlatform.isStorybook) return new Keycloak(keycloakConfig, {
|
|
80
|
+
email: "storybook@example.com",
|
|
81
|
+
username: "storybook"
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
export { Keycloak, useKeycloak };
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { useState, useEffect, useMemo, useCallback } from "react";
|
|
2
|
+
import { AfterAuth } from "../AfterAuth.mjs";
|
|
3
|
+
import { Keycloak, KeycloakConfigContext } from "../../keycloak/index.mjs";
|
|
4
|
+
import { KeycloakContext } from "../../keycloak/context.mjs";
|
|
5
|
+
import { makeRedirectUri, useAuthRequest, useAutoDiscovery, refreshAsync, exchangeCodeAsync } from "expo-auth-session";
|
|
6
|
+
import { persist, useAuthState } from "../../state.mjs";
|
|
7
|
+
import { validOrRefreshableToken, isTokenExpired } from "../../token.mjs";
|
|
8
|
+
import { jsx } from "react/jsx-runtime";
|
|
9
|
+
const REFRESH_THRESHOLD = 5;
|
|
10
|
+
function AuthProvider({
|
|
11
|
+
children,
|
|
12
|
+
keycloakConfig
|
|
13
|
+
}) {
|
|
14
|
+
const [keycloak, setKeycloak] = useState(),
|
|
15
|
+
authState = useAuthState(),
|
|
16
|
+
initialRefreshToken = useMemo(() => validOrRefreshableToken(persist && authState.refreshToken || !1), []),
|
|
17
|
+
keycloakUrl = `${keycloakConfig?.url}/realms/${keycloakConfig?.realm}`,
|
|
18
|
+
clientId = keycloakConfig.publicClientId || keycloakConfig?.clientId || "",
|
|
19
|
+
discovery = useAutoDiscovery(keycloakUrl),
|
|
20
|
+
redirectUri = makeRedirectUri(),
|
|
21
|
+
[tokens, setTokens] = useState({
|
|
22
|
+
refreshToken: initialRefreshToken,
|
|
23
|
+
token: validOrRefreshableToken(persist && authState.token || !1, initialRefreshToken),
|
|
24
|
+
idToken: validOrRefreshableToken(persist && authState.idToken || !1, initialRefreshToken)
|
|
25
|
+
}),
|
|
26
|
+
scopes = useMemo(() => [... /* @__PURE__ */new Set(["email", "openid", "profile", ...(keycloakConfig.scopes || [])])], [keycloakConfig.scopes]),
|
|
27
|
+
[request, response, promptAsync] = useAuthRequest({
|
|
28
|
+
clientId,
|
|
29
|
+
redirectUri,
|
|
30
|
+
scopes
|
|
31
|
+
}, discovery);
|
|
32
|
+
useEffect(() => {
|
|
33
|
+
!discovery || !response?.type || !request?.codeVerifier || !clientId || (async () => {
|
|
34
|
+
if (response?.type === "success" && request.codeVerifier && response.params.code) {
|
|
35
|
+
const tokenResponse = await exchangeCodeAsync({
|
|
36
|
+
clientId,
|
|
37
|
+
code: response.params.code,
|
|
38
|
+
redirectUri,
|
|
39
|
+
scopes,
|
|
40
|
+
extraParams: {
|
|
41
|
+
code_verifier: request.codeVerifier
|
|
42
|
+
}
|
|
43
|
+
}, discovery);
|
|
44
|
+
tokenResponse && setTokens({
|
|
45
|
+
idToken: tokenResponse.idToken,
|
|
46
|
+
refreshToken: tokenResponse.refreshToken,
|
|
47
|
+
token: tokenResponse.accessToken
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
})();
|
|
51
|
+
}, [!discovery, request?.codeVerifier, response?.type === "success" ? response?.params?.code : void 0, clientId, scopes, redirectUri]);
|
|
52
|
+
const resetTokens = useCallback(() => {
|
|
53
|
+
authState.setIdToken(""), authState.setRefreshToken(""), authState.setToken(""), setTokens({
|
|
54
|
+
refreshToken: void 0,
|
|
55
|
+
token: void 0,
|
|
56
|
+
idToken: void 0
|
|
57
|
+
});
|
|
58
|
+
}, []),
|
|
59
|
+
refreshTokens = useCallback(async () => {
|
|
60
|
+
if (discovery) if (typeof tokens.refreshToken == "string") {
|
|
61
|
+
if (isTokenExpired(tokens.refreshToken)) resetTokens();else {
|
|
62
|
+
const tokenResponse = await refreshAsync({
|
|
63
|
+
clientId,
|
|
64
|
+
refreshToken: tokens.refreshToken,
|
|
65
|
+
scopes
|
|
66
|
+
}, discovery);
|
|
67
|
+
tokenResponse ? setTokens({
|
|
68
|
+
idToken: tokenResponse.idToken,
|
|
69
|
+
refreshToken: tokenResponse.refreshToken,
|
|
70
|
+
token: tokenResponse.accessToken
|
|
71
|
+
}) : resetTokens();
|
|
72
|
+
}
|
|
73
|
+
} else authState.refreshToken && typeof authState.refreshToken == "string" && isTokenExpired(authState.refreshToken) && resetTokens();
|
|
74
|
+
}, [!discovery, tokens.refreshToken, clientId, scopes]);
|
|
75
|
+
return useEffect(() => {
|
|
76
|
+
discovery && refreshTokens();
|
|
77
|
+
}, [!discovery]), useEffect(() => {
|
|
78
|
+
if (!request) return;
|
|
79
|
+
let refreshHandle;
|
|
80
|
+
return (async () => {
|
|
81
|
+
if (tokens.token && isTokenExpired(tokens.token)) await refreshTokens();else {
|
|
82
|
+
const _keycloak = new Keycloak(keycloakConfig, tokens.token || void 0, tokens.idToken || void 0, tokens.refreshToken || void 0, async options => {
|
|
83
|
+
await promptAsync(options);
|
|
84
|
+
}, async _options => {
|
|
85
|
+
resetTokens();
|
|
86
|
+
});
|
|
87
|
+
if (_keycloak.tokenParsed?.exp) {
|
|
88
|
+
const timeout = Math.max(Math.min(_keycloak.tokenParsed.exp, _keycloak.refreshTokenParsed?.exp || 0) - Math.floor(Date.now() / 1e3) - REFRESH_THRESHOLD, REFRESH_THRESHOLD) * 1e3;
|
|
89
|
+
if (timeout > 0) refreshHandle = setTimeout(() => {
|
|
90
|
+
refreshTokens();
|
|
91
|
+
}, timeout);else {
|
|
92
|
+
setTimeout(() => _keycloak.logout(), Math.max(0, timeout + REFRESH_THRESHOLD) * 1e3);
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
setKeycloak(_keycloak);
|
|
97
|
+
}
|
|
98
|
+
})(), () => {
|
|
99
|
+
refreshHandle && clearTimeout(refreshHandle);
|
|
100
|
+
};
|
|
101
|
+
}, [!request, tokens.token, tokens.idToken, tokens.refreshToken, refreshTokens]), /* @__PURE__ */jsx(KeycloakConfigContext.Provider, {
|
|
102
|
+
value: keycloakConfig,
|
|
103
|
+
children: /* @__PURE__ */jsx(KeycloakContext.Provider, {
|
|
104
|
+
value: keycloak,
|
|
105
|
+
children: /* @__PURE__ */jsx(AfterAuth, {
|
|
106
|
+
children
|
|
107
|
+
})
|
|
108
|
+
})
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
export { AuthProvider };
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
import { useMemo } from "react";
|
|
2
2
|
import { AuthConfigContext } from "../authConfig";
|
|
3
3
|
import { AuthProvider } from "./AuthProvider";
|
|
4
|
-
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
import { Fragment, jsx } from "react/jsx-runtime";
|
|
5
5
|
function KeycloakProvider({
|
|
6
|
+
baseUrl,
|
|
6
7
|
children,
|
|
7
|
-
debug,
|
|
8
|
-
realm,
|
|
9
8
|
clientId,
|
|
10
|
-
|
|
9
|
+
debug,
|
|
10
|
+
disabled,
|
|
11
11
|
publicClientId,
|
|
12
|
+
realm,
|
|
12
13
|
session
|
|
13
14
|
}) {
|
|
14
|
-
const authConfig = useMemo(() => ({ debug }), [debug]);
|
|
15
|
-
return /* @__PURE__ */ jsx(AuthConfigContext.Provider, { value: authConfig, children: /* @__PURE__ */ jsx(
|
|
15
|
+
const authConfig = useMemo(() => ({ debug, disabled }), [debug, disabled]);
|
|
16
|
+
return /* @__PURE__ */ jsx(AuthConfigContext.Provider, { value: authConfig, children: disabled ? /* @__PURE__ */ jsx(Fragment, { children }) : /* @__PURE__ */ jsx(
|
|
16
17
|
AuthProvider,
|
|
17
18
|
{
|
|
18
19
|
sessionProvider: { session },
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/provider/KeycloakProvider.tsx"],
|
|
4
|
-
"mappings": "AAqBA,SAAgB,eAAe;AAI/B,SAAS,yBAAyB;AAClC,SAAS,oBAAoB;
|
|
4
|
+
"mappings": "AAqBA,SAAgB,eAAe;AAI/B,SAAS,yBAAyB;AAClC,SAAS,oBAAoB;AAwBrB;AAdD,SAAS,iBAAiB;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA0B;AACxB,QAAM,aAAa,QAAQ,OAAO,EAAE,OAAO,SAAS,IAAI,CAAC,OAAO,QAAQ,CAAC;AACzE,SACE,oBAAC,kBAAkB,UAAlB,EAA2B,OAAO,YAChC,qBACC,gCAAG,UAAS,IAEZ;AAAA,IAAC;AAAA;AAAA,MACC,iBAAiB,EAAE,QAAQ;AAAA,MAC3B,gBAAgB;AAAA,QACd,UAAU,YAAY;AAAA,QACtB;AAAA,QACA,OAAO,SAAS;AAAA,QAChB,KAAK;AAAA,MACP;AAAA,MAEC;AAAA;AAAA,EACH,GAEJ;AAEJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1,22 +1,26 @@
|
|
|
1
1
|
import { useMemo } from "react";
|
|
2
2
|
import { AuthConfigContext } from "../authConfig.mjs";
|
|
3
3
|
import { AuthProvider } from "./AuthProvider/index.mjs";
|
|
4
|
-
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
import { Fragment, jsx } from "react/jsx-runtime";
|
|
5
5
|
function KeycloakProvider({
|
|
6
|
+
baseUrl,
|
|
6
7
|
children,
|
|
7
|
-
debug,
|
|
8
|
-
realm,
|
|
9
8
|
clientId,
|
|
10
|
-
|
|
9
|
+
debug,
|
|
10
|
+
disabled,
|
|
11
11
|
publicClientId,
|
|
12
|
+
realm,
|
|
12
13
|
session
|
|
13
14
|
}) {
|
|
14
15
|
const authConfig = useMemo(() => ({
|
|
15
|
-
debug
|
|
16
|
-
|
|
16
|
+
debug,
|
|
17
|
+
disabled
|
|
18
|
+
}), [debug, disabled]);
|
|
17
19
|
return /* @__PURE__ */jsx(AuthConfigContext.Provider, {
|
|
18
20
|
value: authConfig,
|
|
19
|
-
children: /* @__PURE__ */jsx(
|
|
21
|
+
children: disabled ? /* @__PURE__ */jsx(Fragment, {
|
|
22
|
+
children
|
|
23
|
+
}) : /* @__PURE__ */jsx(AuthProvider, {
|
|
20
24
|
sessionProvider: {
|
|
21
25
|
session
|
|
22
26
|
},
|
|
@@ -1,18 +1,22 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { useMemo } from "react";
|
|
3
3
|
import { AuthConfigContext } from "../authConfig";
|
|
4
4
|
import { AuthProvider } from "./AuthProvider";
|
|
5
5
|
function KeycloakProvider(param) {
|
|
6
|
-
var
|
|
6
|
+
var baseUrl = param.baseUrl, children = param.children, clientId = param.clientId, debug = param.debug, disabled = param.disabled, publicClientId = param.publicClientId, realm = param.realm, session = param.session, authConfig = useMemo(function() {
|
|
7
7
|
return {
|
|
8
|
-
debug
|
|
8
|
+
debug,
|
|
9
|
+
disabled
|
|
9
10
|
};
|
|
10
11
|
}, [
|
|
11
|
-
debug
|
|
12
|
+
debug,
|
|
13
|
+
disabled
|
|
12
14
|
]);
|
|
13
15
|
return /* @__PURE__ */ _jsx(AuthConfigContext.Provider, {
|
|
14
16
|
value: authConfig,
|
|
15
|
-
children: /* @__PURE__ */ _jsx(
|
|
17
|
+
children: disabled ? /* @__PURE__ */ _jsx(_Fragment, {
|
|
18
|
+
children
|
|
19
|
+
}) : /* @__PURE__ */ _jsx(AuthProvider, {
|
|
16
20
|
sessionProvider: {
|
|
17
21
|
session
|
|
18
22
|
},
|