@multiplatform.one/keycloak 0.2.5 → 0.2.7
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/esm/Authenticated.mjs +25 -13
- package/dist/esm/Authenticated.mjs.map +3 -3
- package/dist/esm/authConfig.mjs +1 -0
- package/dist/esm/authConfig.mjs.map +2 -2
- package/dist/esm/hooks/useKeycloak/index.mjs.map +1 -1
- package/dist/esm/hooks/useKeycloak/useKeycloak.mjs +4 -59
- package/dist/esm/hooks/useKeycloak/useKeycloak.mjs.map +3 -3
- package/dist/esm/hooks/useKeycloak/useKeycloak.native.mjs.map +1 -1
- package/dist/esm/hooks/useLogin.mjs.map +1 -1
- package/dist/esm/provider/afterAuth.mjs +1 -1
- package/dist/esm/provider/afterAuth.mjs.map +2 -2
- package/dist/esm/provider/keycloakProvider.mjs +11 -9
- package/dist/esm/provider/keycloakProvider.mjs.map +3 -3
- package/dist/jsx/Authenticated.mjs +22 -10
- package/dist/jsx/Authenticated.mjs.map +2 -2
- package/dist/jsx/authConfig.mjs +1 -0
- package/dist/jsx/authConfig.mjs.map +2 -2
- package/dist/jsx/hooks/useKeycloak/index.mjs.map +1 -1
- package/dist/jsx/hooks/useKeycloak/useKeycloak.mjs +4 -5
- package/dist/jsx/hooks/useKeycloak/useKeycloak.mjs.map +2 -2
- package/dist/jsx/hooks/useKeycloak/useKeycloak.native.mjs.map +1 -1
- package/dist/jsx/hooks/useLogin.mjs.map +1 -1
- package/dist/jsx/provider/afterAuth.mjs +1 -1
- package/dist/jsx/provider/afterAuth.mjs.map +2 -2
- package/dist/jsx/provider/keycloakProvider.mjs +12 -10
- package/dist/jsx/provider/keycloakProvider.mjs.map +2 -2
- package/dist/jsx/provider/keycloakProvider.native.mjs.map +1 -1
- package/dist/lib/Authenticated.d.ts +2 -2
- package/dist/lib/Authenticated.js +22 -10
- package/dist/lib/Authenticated.js.map +2 -2
- package/dist/lib/authConfig.d.ts +2 -1
- package/dist/lib/authConfig.js +1 -0
- package/dist/lib/authConfig.js.map +2 -2
- package/dist/lib/hooks/useKeycloak/index.d.ts +2 -2
- package/dist/lib/hooks/useKeycloak/index.js.map +1 -1
- package/dist/lib/hooks/useKeycloak/useKeycloak.d.ts +1 -1
- package/dist/lib/hooks/useKeycloak/useKeycloak.js +5 -20
- package/dist/lib/hooks/useKeycloak/useKeycloak.js.map +2 -2
- package/dist/lib/hooks/useKeycloak/useKeycloak.native.d.ts +2 -2
- package/dist/lib/hooks/useKeycloak/useKeycloak.native.js.map +1 -1
- package/dist/lib/hooks/useLogin.d.ts +1 -1
- package/dist/lib/hooks/useLogin.js.map +1 -1
- package/dist/lib/provider/afterAuth.js +1 -1
- package/dist/lib/provider/afterAuth.js.map +2 -2
- package/dist/lib/provider/keycloakProvider.d.ts +3 -3
- package/dist/lib/provider/keycloakProvider.js +15 -13
- package/dist/lib/provider/keycloakProvider.js.map +2 -2
- package/dist/lib/provider/keycloakProvider.native.js.map +1 -1
- package/dist/lib/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +16 -18
- package/src/Authenticated.tsx +23 -11
- package/src/authConfig.ts +3 -1
- package/src/hooks/useKeycloak/index.ts +2 -2
- package/src/hooks/useKeycloak/useKeycloak.native.ts +2 -2
- package/src/hooks/useKeycloak/useKeycloak.ts +6 -7
- package/src/hooks/useLogin.ts +1 -1
- package/src/provider/afterAuth.tsx +1 -1
- package/src/provider/keycloakProvider.native.tsx +1 -1
- package/src/provider/keycloakProvider.tsx +14 -12
|
@@ -1,18 +1,30 @@
|
|
|
1
|
-
import React from "react";
|
|
1
|
+
import React, { useEffect } from "react";
|
|
2
2
|
import { useLogin, useKeycloak } from "./hooks/index.mjs";
|
|
3
|
-
|
|
3
|
+
import { useAuthState } from "./state/index.mjs";
|
|
4
|
+
import { useAuthConfig } from "./hooks/useAuthConfig.mjs";
|
|
5
|
+
function Authenticated(_ref) {
|
|
6
|
+
var children = _ref.children, disabled = _ref.disabled, loginRoute = _ref.loginRoute, loggedOutComponent = _ref.loggedOutComponent;
|
|
7
|
+
var authConfig = useAuthConfig();
|
|
8
|
+
var authState = useAuthState();
|
|
9
|
+
var login = useLogin(loginRoute);
|
|
4
10
|
var _useKeycloak = useKeycloak(), authenticated = _useKeycloak.authenticated;
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
useEffect(function() {
|
|
12
|
+
if (authenticated !== false)
|
|
13
|
+
return;
|
|
14
|
+
if (authConfig.persist) {
|
|
15
|
+
authState.setIdToken("");
|
|
16
|
+
authState.setRefreshToken("");
|
|
17
|
+
authState.setToken("");
|
|
18
|
+
}
|
|
19
|
+
login();
|
|
20
|
+
}, [authenticated]);
|
|
21
|
+
if (disabled || authenticated)
|
|
22
|
+
return /* @__PURE__ */ React.createElement(React.Fragment, null, children);
|
|
23
|
+
var LoggedOutComponent = loggedOutComponent || function() {
|
|
24
|
+
return null;
|
|
25
|
+
};
|
|
26
|
+
return /* @__PURE__ */ React.createElement(LoggedOutComponent, null);
|
|
27
|
+
}
|
|
16
28
|
function withAuthenticated(Component) {
|
|
17
29
|
return function(props) {
|
|
18
30
|
return /* @__PURE__ */ React.createElement(Authenticated, null, /* @__PURE__ */ React.createElement(Component, props));
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Authenticated.tsx"],
|
|
4
|
-
"sourcesContent": ["/**\n * File: /auth/Authenticated.tsx\n * Project: app\n * File Created: 08-11-2022 05:58:23\n * Author: Clay Risser\n * -----\n * Last Modified: 22-11-2022 06:26:38\n * Modified By: Clay Risser\n * -----\n * Risser Labs LLC (c) Copyright 2021 - 2022\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport React from 'react';\nimport { useLogin, useKeycloak } from \"./hooks/index.mjs\";\
|
|
5
|
-
"mappings": "AAwBA,OAAO,
|
|
6
|
-
"names": [
|
|
4
|
+
"sourcesContent": ["/**\n * File: /auth/Authenticated.tsx\n * Project: app\n * File Created: 08-11-2022 05:58:23\n * Author: Clay Risser\n * -----\n * Last Modified: 22-11-2022 06:26:38\n * Modified By: Clay Risser\n * -----\n * Risser Labs LLC (c) Copyright 2021 - 2022\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport React, { useEffect } from 'react';\nimport { useLogin, useKeycloak } from \"./hooks/index.mjs\";\nimport { useAuthState } from \"./state/index.mjs\";\nimport { useAuthConfig } from \"./hooks/useAuthConfig.mjs\";\nexport function Authenticated(_ref) {\n var children = _ref.children,\n disabled = _ref.disabled,\n loginRoute = _ref.loginRoute,\n loggedOutComponent = _ref.loggedOutComponent;\n var authConfig = useAuthConfig();\n var authState = useAuthState();\n var login = useLogin(loginRoute);\n var _useKeycloak = useKeycloak(),\n authenticated = _useKeycloak.authenticated;\n useEffect(function () {\n if (authenticated !== false) return;\n if (authConfig.persist) {\n authState.setIdToken('');\n authState.setRefreshToken('');\n authState.setToken('');\n }\n login();\n }, [authenticated]);\n if (disabled || authenticated) return /*#__PURE__*/React.createElement(React.Fragment, null, children);\n var LoggedOutComponent = loggedOutComponent || function () {\n return null;\n };\n return /*#__PURE__*/React.createElement(LoggedOutComponent, null);\n}\nexport function withAuthenticated(Component) {\n return function (props) {\n return /*#__PURE__*/React.createElement(Authenticated, null, /*#__PURE__*/React.createElement(Component, props));\n };\n}"],
|
|
5
|
+
"mappings": "AAwBA,OAAO,SAAS,iBAAiB;AACjC,SAAS,UAAU,mBAAmB;AACtC,SAAS,oBAAoB;AAC7B,SAAS,qBAAqB;AACvB,SAAS,cAAc,MAAM;AAClC,MAAI,WAAW,KAAK,UAClB,WAAW,KAAK,UAChB,aAAa,KAAK,YAClB,qBAAqB,KAAK;AAC5B,MAAI,aAAa,cAAc;AAC/B,MAAI,YAAY,aAAa;AAC7B,MAAI,QAAQ,SAAS,UAAU;AAC/B,MAAI,eAAe,YAAY,GAC7B,gBAAgB,aAAa;AAC/B,YAAU,WAAY;AACpB,QAAI,kBAAkB;AAAO;AAC7B,QAAI,WAAW,SAAS;AACtB,gBAAU,WAAW,EAAE;AACvB,gBAAU,gBAAgB,EAAE;AAC5B,gBAAU,SAAS,EAAE;AAAA,IACvB;AACA,UAAM;AAAA,EACR,GAAG,CAAC,aAAa,CAAC;AAClB,MAAI,YAAY;AAAe,WAAoB,sBAAM,cAAc,MAAM,UAAU,MAAM,QAAQ;AACrG,MAAI,qBAAqB,sBAAsB,WAAY;AACzD,WAAO;AAAA,EACT;AACA,SAAoB,sBAAM,cAAc,oBAAoB,IAAI;AAClE;AACO,SAAS,kBAAkB,WAAW;AAC3C,SAAO,SAAU,OAAO;AACtB,WAAoB,sBAAM,cAAc,eAAe,MAAmB,sBAAM,cAAc,WAAW,KAAK,CAAC;AAAA,EACjH;AACF;",
|
|
6
|
+
"names": []
|
|
7
7
|
}
|
package/dist/esm/authConfig.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/authConfig.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * File: /src/authConfig.ts\n * Project: app\n * File Created: 08-11-2022 09:21:15\n * Author: Clay Risser\n * -----\n * Last Modified:
|
|
5
|
-
"mappings": "AAwBA,SAAS,qBAAqB;AACvB,IAAI,oBAAoB;AAAA,EAC7B,iBAAiB;AAAA,EACjB,KAAK;AACP;AACO,IAAI,oBAAiC,8BAAc,iBAAiB;",
|
|
4
|
+
"sourcesContent": ["/**\n * File: /src/authConfig.ts\n * Project: app\n * File Created: 08-11-2022 09:21:15\n * Author: Clay Risser\n * -----\n * Last Modified: 25-04-2023 23:08:17\n * Modified By: Clay Risser\n * -----\n * Risser Labs LLC (c) Copyright 2021 - 2022\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createContext } from 'react';\nexport var defaultAuthConfig = {\n ensureFreshness: true,\n persist: true,\n ssr: true\n};\nexport var AuthConfigContext = /*#__PURE__*/createContext(defaultAuthConfig);"],
|
|
5
|
+
"mappings": "AAwBA,SAAS,qBAAqB;AACvB,IAAI,oBAAoB;AAAA,EAC7B,iBAAiB;AAAA,EACjB,SAAS;AAAA,EACT,KAAK;AACP;AACO,IAAI,oBAAiC,8BAAc,iBAAiB;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/hooks/useKeycloak/index.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * File: /src/hooks/useKeycloak/index.ts\n * Project: app\n * File Created: 08-11-2022 14:10:44\n * Author: Clay Risser\n * -----\n * Last Modified:
|
|
4
|
+
"sourcesContent": ["/**\n * File: /src/hooks/useKeycloak/index.ts\n * Project: app\n * File Created: 08-11-2022 14:10:44\n * Author: Clay Risser\n * -----\n * Last Modified: 24-04-2023 17:50:36\n * Modified By: Clay Risser\n * -----\n * Risser Labs LLC (c) Copyright 2021 - 2022\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nexport * from \"./useKeycloak.mjs\";\nexport {};"],
|
|
5
5
|
"mappings": "AAuBA,cAAc;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,61 +1,7 @@
|
|
|
1
|
-
function _typeof(obj) {
|
|
2
|
-
"@babel/helpers - typeof";
|
|
3
|
-
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(obj2) {
|
|
4
|
-
return typeof obj2;
|
|
5
|
-
} : function(obj2) {
|
|
6
|
-
return obj2 && "function" == typeof Symbol && obj2.constructor === Symbol && obj2 !== Symbol.prototype ? "symbol" : typeof obj2;
|
|
7
|
-
}, _typeof(obj);
|
|
8
|
-
}
|
|
9
|
-
function ownKeys(object, enumerableOnly) {
|
|
10
|
-
var keys = Object.keys(object);
|
|
11
|
-
if (Object.getOwnPropertySymbols) {
|
|
12
|
-
var symbols = Object.getOwnPropertySymbols(object);
|
|
13
|
-
enumerableOnly && (symbols = symbols.filter(function(sym) {
|
|
14
|
-
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
15
|
-
})), keys.push.apply(keys, symbols);
|
|
16
|
-
}
|
|
17
|
-
return keys;
|
|
18
|
-
}
|
|
19
|
-
function _objectSpread(target) {
|
|
20
|
-
for (var i = 1; i < arguments.length; i++) {
|
|
21
|
-
var source = null != arguments[i] ? arguments[i] : {};
|
|
22
|
-
i % 2 ? ownKeys(Object(source), true).forEach(function(key) {
|
|
23
|
-
_defineProperty(target, key, source[key]);
|
|
24
|
-
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function(key) {
|
|
25
|
-
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
return target;
|
|
29
|
-
}
|
|
30
|
-
function _defineProperty(obj, key, value) {
|
|
31
|
-
key = _toPropertyKey(key);
|
|
32
|
-
if (key in obj) {
|
|
33
|
-
Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true });
|
|
34
|
-
} else {
|
|
35
|
-
obj[key] = value;
|
|
36
|
-
}
|
|
37
|
-
return obj;
|
|
38
|
-
}
|
|
39
|
-
function _toPropertyKey(arg) {
|
|
40
|
-
var key = _toPrimitive(arg, "string");
|
|
41
|
-
return _typeof(key) === "symbol" ? key : String(key);
|
|
42
|
-
}
|
|
43
|
-
function _toPrimitive(input, hint) {
|
|
44
|
-
if (_typeof(input) !== "object" || input === null)
|
|
45
|
-
return input;
|
|
46
|
-
var prim = input[Symbol.toPrimitive];
|
|
47
|
-
if (prim !== void 0) {
|
|
48
|
-
var res = prim.call(input, hint || "default");
|
|
49
|
-
if (_typeof(res) !== "object")
|
|
50
|
-
return res;
|
|
51
|
-
throw new TypeError("@@toPrimitive must return a primitive value.");
|
|
52
|
-
}
|
|
53
|
-
return (hint === "string" ? String : Number)(input);
|
|
54
|
-
}
|
|
55
1
|
import { MultiPlatform } from "multiplatform.one";
|
|
56
2
|
import { useAuthConfig } from "../useAuthConfig.mjs";
|
|
57
|
-
import { useKeycloak as useReactKeycloak } from "@react-keycloak
|
|
58
|
-
import { useKeycloak as useSsrKeycloak } from "@react-keycloak
|
|
3
|
+
import { useKeycloak as useReactKeycloak } from "@bitspur/react-keycloak-web";
|
|
4
|
+
import { useKeycloak as useSsrKeycloak } from "@bitspur/react-keycloak-ssr";
|
|
59
5
|
function useKeycloak() {
|
|
60
6
|
var authConfig = useAuthConfig();
|
|
61
7
|
if (MultiPlatform.isStorybook)
|
|
@@ -64,13 +10,12 @@ function useKeycloak() {
|
|
|
64
10
|
};
|
|
65
11
|
if (MultiPlatform.isNext && authConfig.ssr) {
|
|
66
12
|
var _useSsrKeycloak = useSsrKeycloak(), ssrKeycloak = _useSsrKeycloak.keycloak, _initialized = _useSsrKeycloak.initialized;
|
|
67
|
-
var _keycloak =
|
|
13
|
+
var _keycloak = ssrKeycloak || {};
|
|
68
14
|
if (!_initialized)
|
|
69
15
|
_keycloak.authenticated = void 0;
|
|
70
16
|
return _keycloak;
|
|
71
17
|
}
|
|
72
|
-
var _useReactKeycloak = useReactKeycloak(),
|
|
73
|
-
var keycloak = _objectSpread({}, reactKeycloak);
|
|
18
|
+
var _useReactKeycloak = useReactKeycloak(), keycloak = _useReactKeycloak.keycloak, initialized = _useReactKeycloak.initialized;
|
|
74
19
|
if (!initialized)
|
|
75
20
|
keycloak.authenticated = void 0;
|
|
76
21
|
return keycloak;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/hooks/useKeycloak/useKeycloak.ts"],
|
|
4
|
-
"sourcesContent": ["
|
|
5
|
-
"mappings": "
|
|
6
|
-
"names": [
|
|
4
|
+
"sourcesContent": ["/**\n * File: /src/hooks/useKeycloak/useKeycloak.ts\n * Project: app\n * File Created: 08-11-2022 06:04:59\n * Author: Clay Risser\n * -----\n * Last Modified: 25-04-2023 23:18:16\n * Modified By: Clay Risser\n * -----\n * Risser Labs LLC (c) Copyright 2021 - 2022\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { MultiPlatform } from 'multiplatform.one';\nimport { useAuthConfig } from \"../useAuthConfig.mjs\";\nimport { useKeycloak as useReactKeycloak } from '@bitspur/react-keycloak-web';\nimport { useKeycloak as useSsrKeycloak } from '@bitspur/react-keycloak-ssr';\nexport function useKeycloak() {\n var authConfig = useAuthConfig();\n if (MultiPlatform.isStorybook) return {\n authenticated: true\n };\n if (MultiPlatform.isNext && authConfig.ssr) {\n var _useSsrKeycloak = useSsrKeycloak(),\n ssrKeycloak = _useSsrKeycloak.keycloak,\n _initialized = _useSsrKeycloak.initialized;\n var _keycloak = ssrKeycloak || {};\n if (!_initialized) _keycloak.authenticated = undefined;\n return _keycloak;\n }\n var _useReactKeycloak = useReactKeycloak(),\n keycloak = _useReactKeycloak.keycloak,\n initialized = _useReactKeycloak.initialized;\n if (!initialized) keycloak.authenticated = undefined;\n return keycloak;\n}"],
|
|
5
|
+
"mappings": "AAwBA,SAAS,qBAAqB;AAC9B,SAAS,qBAAqB;AAC9B,SAAS,eAAe,wBAAwB;AAChD,SAAS,eAAe,sBAAsB;AACvC,SAAS,cAAc;AAC5B,MAAI,aAAa,cAAc;AAC/B,MAAI,cAAc;AAAa,WAAO;AAAA,MACpC,eAAe;AAAA,IACjB;AACA,MAAI,cAAc,UAAU,WAAW,KAAK;AAC1C,QAAI,kBAAkB,eAAe,GACnC,cAAc,gBAAgB,UAC9B,eAAe,gBAAgB;AACjC,QAAI,YAAY,eAAe,CAAC;AAChC,QAAI,CAAC;AAAc,gBAAU,gBAAgB;AAC7C,WAAO;AAAA,EACT;AACA,MAAI,oBAAoB,iBAAiB,GACvC,WAAW,kBAAkB,UAC7B,cAAc,kBAAkB;AAClC,MAAI,CAAC;AAAa,aAAS,gBAAgB;AAC3C,SAAO;AACT;",
|
|
6
|
+
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/hooks/useKeycloak/useKeycloak.native.ts"],
|
|
4
|
-
"sourcesContent": ["function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n/**\n * File: /src/hooks/useKeycloak/useKeycloak.native.ts\n * Project: app\n * File Created: 08-11-2022 14:10:25\n * Author: Clay Risser\n * -----\n * Last Modified: 24-
|
|
4
|
+
"sourcesContent": ["function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n/**\n * File: /src/hooks/useKeycloak/useKeycloak.native.ts\n * Project: app\n * File Created: 08-11-2022 14:10:25\n * Author: Clay Risser\n * -----\n * Last Modified: 24-04-2023 17:50:55\n * Modified By: Clay Risser\n * -----\n * Risser Labs LLC (c) Copyright 2021 - 2022\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport atob from 'core-js-pure/stable/atob';\nimport escape from 'core-js-pure/stable/escape';\nimport { MultiPlatform } from 'multiplatform.one';\nimport { useKeycloak as useExpoKeycloak } from 'expo-keycloak-auth';\nexport function useKeycloak() {\n if (MultiPlatform.isStorybook) return {\n authenticated: true\n };\n var _useExpoKeycloak = useExpoKeycloak(),\n ready = _useExpoKeycloak.ready,\n login = _useExpoKeycloak.login,\n isLoggedIn = _useExpoKeycloak.isLoggedIn,\n token = _useExpoKeycloak.token,\n logout = _useExpoKeycloak.logout,\n refreshToken = _useExpoKeycloak.refreshToken;\n var keycloak = new ExpoKeycloak(ready, isLoggedIn, login, logout, token || undefined, refreshToken || undefined);\n return keycloak;\n}\nexport var ExpoKeycloak = /*#__PURE__*/_createClass(function ExpoKeycloak(ready, isLoggedIn, login, logout, token, refreshToken) {\n _classCallCheck(this, ExpoKeycloak);\n this.logout = logout;\n this.token = token;\n this.refreshToken = refreshToken;\n if (ready) this.authenticated = isLoggedIn;\n if (this.authenticated) {\n if (this.token) this.tokenParsed = decodeToken(this.token);\n if (this.refreshToken) {\n this.refreshTokenParsed = decodeToken(this.refreshToken);\n }\n if (this.tokenParsed) {\n this.subject = this.tokenParsed.sub;\n this.realmAccess = this.tokenParsed.realm_access;\n this.resourceAccess = this.tokenParsed.resource_access;\n }\n }\n this.login = function () {\n return login();\n };\n});\nfunction decodeToken(str) {\n str = str.split('.')[1];\n str = str.replace(/-/g, '+');\n str = str.replace(/_/g, '/');\n switch (str.length % 4) {\n case 0:\n break;\n case 2:\n str += '==';\n break;\n case 3:\n str += '=';\n break;\n default:\n throw 'Invalid token';\n }\n str = decodeURIComponent(escape(atob(str)));\n str = JSON.parse(str);\n return str;\n}"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": ["obj", "ExpoKeycloak"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/useLogin.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * File: /src/hooks/useLogin.ts\n * Project: app\n * File Created: 08-11-2022 08:49:14\n * Author: Clay Risser\n * -----\n * Last Modified:
|
|
4
|
+
"sourcesContent": ["/**\n * File: /src/hooks/useLogin.ts\n * Project: app\n * File Created: 08-11-2022 08:49:14\n * Author: Clay Risser\n * -----\n * Last Modified: 25-04-2023 23:09:10\n * Modified By: Clay Risser\n * -----\n * Risser Labs LLC (c) Copyright 2021 - 2022\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { MultiPlatform } from 'multiplatform.one';\nimport { useAuthConfig } from \"./useAuthConfig.mjs\";\nimport { useCurrentRouteName } from \"./useCurrentRouteName/index.mjs\";\nimport { useKeycloak } from \"./useKeycloak/useKeycloak.mjs\";\nimport { useRouter } from 'solito/router';\nexport function useLogin(loginRoute) {\n if (MultiPlatform.isStorybook) return function () {\n return null;\n };\n var keycloak = useKeycloak();\n var authConfig = useAuthConfig();\n var currentRouteName = useCurrentRouteName();\n var router = useRouter();\n return function () {\n if (!loginRoute) loginRoute = authConfig.loginRoute;\n if (!loginRoute) {\n keycloak.login();\n return;\n }\n var url = new URL(\"x://\".concat(loginRoute));\n var searchParams = new URLSearchParams(url.search);\n if (currentRouteName) searchParams.append('backTo', currentRouteName);\n var query = searchParams.toString();\n if (query.length) query = \"?\".concat(query);\n router.push(\"\".concat(url.pathname.substring(2)).concat(query));\n };\n}"],
|
|
5
5
|
"mappings": "AAwBA,SAAS,qBAAqB;AAC9B,SAAS,qBAAqB;AAC9B,SAAS,2BAA2B;AACpC,SAAS,mBAAmB;AAC5B,SAAS,iBAAiB;AACnB,SAAS,SAAS,YAAY;AACnC,MAAI,cAAc;AAAa,WAAO,WAAY;AAChD,aAAO;AAAA,IACT;AACA,MAAI,WAAW,YAAY;AAC3B,MAAI,aAAa,cAAc;AAC/B,MAAI,mBAAmB,oBAAoB;AAC3C,MAAI,SAAS,UAAU;AACvB,SAAO,WAAY;AACjB,QAAI,CAAC;AAAY,mBAAa,WAAW;AACzC,QAAI,CAAC,YAAY;AACf,eAAS,MAAM;AACf;AAAA,IACF;AACA,QAAI,MAAM,IAAI,IAAI,OAAO,OAAO,UAAU,CAAC;AAC3C,QAAI,eAAe,IAAI,gBAAgB,IAAI,MAAM;AACjD,QAAI;AAAkB,mBAAa,OAAO,UAAU,gBAAgB;AACpE,QAAI,QAAQ,aAAa,SAAS;AAClC,QAAI,MAAM;AAAQ,cAAQ,IAAI,OAAO,KAAK;AAC1C,WAAO,KAAK,GAAG,OAAO,IAAI,SAAS,UAAU,CAAC,CAAC,EAAE,OAAO,KAAK,CAAC;AAAA,EAChE;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/provider/afterAuth.tsx"],
|
|
4
|
-
"sourcesContent": ["/**\n * File: /auth/provider/afterAuth.tsx\n * Project: app\n * File Created: 22-11-2022 17:49:58\n * Author: Clay Risser\n * -----\n * Last Modified: 22-11-2022 18:00:39\n * Modified By: Clay Risser\n * -----\n * Risser Labs LLC (c) Copyright 2021 - 2022\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport React, { useEffect } from 'react';\nimport { useAuthConfig } from \"../hooks/useAuthConfig.mjs\";\nimport { useAuthState } from \"../state/index.mjs\";\nimport { useKeycloak } from \"../hooks/index.mjs\";\nvar logger = console;\nexport var AfterAuth = function AfterAuth(_ref) {\n var children = _ref.children;\n var authConfig = useAuthConfig();\n var _useKeycloak = useKeycloak(),\n token = _useKeycloak.token,\n refreshToken = _useKeycloak.refreshToken,\n authenticated = _useKeycloak.authenticated,\n idToken = _useKeycloak.idToken;\n var authState = useAuthState();\n useEffect(function () {\n if (!authenticated) return;\n if (token) {\n authState.setToken(token);\n if (idToken) authState.setIdToken(idToken);\n if (authConfig.ensureFreshness && refreshToken) authState.setRefreshToken(refreshToken);\n }\n }, [token, refreshToken, idToken]);\n useEffect(function () {\n if (authConfig.debug && authState.token) logger.debug('token', authState.token);\n }, [authState.token]);\n useEffect(function () {\n if (authConfig.debug && authState.idToken) logger.debug('idToken', authState.idToken);\n }, [authState.idToken]);\n useEffect(function () {\n if (authConfig.debug && authState.refreshToken) logger.debug(authState.refreshToken);\n }, [authState.refreshToken]);\n useEffect(function () {\n if (authConfig.debug) logger.debug('authenticated', authenticated);\n }, [authenticated]);\n return /*#__PURE__*/React.createElement(React.Fragment, null, children);\n};"],
|
|
5
|
-
"mappings": "AAwBA,OAAO,SAAS,iBAAiB;AACjC,SAAS,qBAAqB;AAC9B,SAAS,oBAAoB;AAC7B,SAAS,mBAAmB;AAC5B,IAAI,SAAS;AACN,IAAI,YAAY,SAASA,WAAU,MAAM;AAC9C,MAAI,WAAW,KAAK;AACpB,MAAI,aAAa,cAAc;AAC/B,MAAI,eAAe,YAAY,GAC7B,QAAQ,aAAa,OACrB,eAAe,aAAa,cAC5B,gBAAgB,aAAa,eAC7B,UAAU,aAAa;AACzB,MAAI,YAAY,aAAa;AAC7B,YAAU,WAAY;AACpB,QAAI,CAAC;AAAe;AACpB,QAAI,OAAO;
|
|
4
|
+
"sourcesContent": ["/**\n * File: /auth/provider/afterAuth.tsx\n * Project: app\n * File Created: 22-11-2022 17:49:58\n * Author: Clay Risser\n * -----\n * Last Modified: 22-11-2022 18:00:39\n * Modified By: Clay Risser\n * -----\n * Risser Labs LLC (c) Copyright 2021 - 2022\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport React, { useEffect } from 'react';\nimport { useAuthConfig } from \"../hooks/useAuthConfig.mjs\";\nimport { useAuthState } from \"../state/index.mjs\";\nimport { useKeycloak } from \"../hooks/index.mjs\";\nvar logger = console;\nexport var AfterAuth = function AfterAuth(_ref) {\n var children = _ref.children;\n var authConfig = useAuthConfig();\n var _useKeycloak = useKeycloak(),\n token = _useKeycloak.token,\n refreshToken = _useKeycloak.refreshToken,\n authenticated = _useKeycloak.authenticated,\n idToken = _useKeycloak.idToken;\n var authState = useAuthState();\n useEffect(function () {\n if (!authenticated) return;\n if (authConfig.persist && token) {\n authState.setToken(token);\n if (idToken) authState.setIdToken(idToken);\n if (authConfig.ensureFreshness && refreshToken) authState.setRefreshToken(refreshToken);\n }\n }, [token, refreshToken, idToken]);\n useEffect(function () {\n if (authConfig.debug && authState.token) logger.debug('token', authState.token);\n }, [authState.token]);\n useEffect(function () {\n if (authConfig.debug && authState.idToken) logger.debug('idToken', authState.idToken);\n }, [authState.idToken]);\n useEffect(function () {\n if (authConfig.debug && authState.refreshToken) logger.debug(authState.refreshToken);\n }, [authState.refreshToken]);\n useEffect(function () {\n if (authConfig.debug) logger.debug('authenticated', authenticated);\n }, [authenticated]);\n return /*#__PURE__*/React.createElement(React.Fragment, null, children);\n};"],
|
|
5
|
+
"mappings": "AAwBA,OAAO,SAAS,iBAAiB;AACjC,SAAS,qBAAqB;AAC9B,SAAS,oBAAoB;AAC7B,SAAS,mBAAmB;AAC5B,IAAI,SAAS;AACN,IAAI,YAAY,SAASA,WAAU,MAAM;AAC9C,MAAI,WAAW,KAAK;AACpB,MAAI,aAAa,cAAc;AAC/B,MAAI,eAAe,YAAY,GAC7B,QAAQ,aAAa,OACrB,eAAe,aAAa,cAC5B,gBAAgB,aAAa,eAC7B,UAAU,aAAa;AACzB,MAAI,YAAY,aAAa;AAC7B,YAAU,WAAY;AACpB,QAAI,CAAC;AAAe;AACpB,QAAI,WAAW,WAAW,OAAO;AAC/B,gBAAU,SAAS,KAAK;AACxB,UAAI;AAAS,kBAAU,WAAW,OAAO;AACzC,UAAI,WAAW,mBAAmB;AAAc,kBAAU,gBAAgB,YAAY;AAAA,IACxF;AAAA,EACF,GAAG,CAAC,OAAO,cAAc,OAAO,CAAC;AACjC,YAAU,WAAY;AACpB,QAAI,WAAW,SAAS,UAAU;AAAO,aAAO,MAAM,SAAS,UAAU,KAAK;AAAA,EAChF,GAAG,CAAC,UAAU,KAAK,CAAC;AACpB,YAAU,WAAY;AACpB,QAAI,WAAW,SAAS,UAAU;AAAS,aAAO,MAAM,WAAW,UAAU,OAAO;AAAA,EACtF,GAAG,CAAC,UAAU,OAAO,CAAC;AACtB,YAAU,WAAY;AACpB,QAAI,WAAW,SAAS,UAAU;AAAc,aAAO,MAAM,UAAU,YAAY;AAAA,EACrF,GAAG,CAAC,UAAU,YAAY,CAAC;AAC3B,YAAU,WAAY;AACpB,QAAI,WAAW;AAAO,aAAO,MAAM,iBAAiB,aAAa;AAAA,EACnE,GAAG,CAAC,aAAa,CAAC;AAClB,SAAoB,sBAAM,cAAc,MAAM,UAAU,MAAM,QAAQ;AACxE;",
|
|
6
6
|
"names": ["AfterAuth"]
|
|
7
7
|
}
|
|
@@ -108,17 +108,17 @@ function _arrayWithHoles(arr) {
|
|
|
108
108
|
if (Array.isArray(arr))
|
|
109
109
|
return arr;
|
|
110
110
|
}
|
|
111
|
-
import Keycloak from "keycloak-js";
|
|
111
|
+
import Keycloak from "@bitspur/keycloak-js";
|
|
112
112
|
import React, { useMemo, useEffect, useState } from "react";
|
|
113
113
|
import { AfterAuth } from "./afterAuth.mjs";
|
|
114
114
|
import { MultiPlatform } from "multiplatform.one";
|
|
115
|
-
import { ReactKeycloakProvider } from "@react-keycloak
|
|
116
|
-
import { SSRKeycloakProvider, SSRCookies } from "@react-keycloak
|
|
115
|
+
import { ReactKeycloakProvider } from "@bitspur/react-keycloak-web";
|
|
116
|
+
import { SSRKeycloakProvider, SSRCookies } from "@bitspur/react-keycloak-ssr";
|
|
117
117
|
import { useAuthConfig } from "../hooks/useAuthConfig.mjs";
|
|
118
118
|
import { useAuthState } from "../state/index.mjs";
|
|
119
119
|
import { useRouter } from "next/router";
|
|
120
120
|
var logger = console;
|
|
121
|
-
|
|
121
|
+
function KeycloakProvider(_ref) {
|
|
122
122
|
var _query$idToken, _query$token, _query$refreshToken;
|
|
123
123
|
var children = _ref.children, cookies = _ref.cookies, debug = _ref.debug, keycloakConfig = _ref.keycloakConfig, keycloakInitOptions = _ref.keycloakInitOptions, loadingComponent = _ref.loadingComponent;
|
|
124
124
|
var authState = useAuthState();
|
|
@@ -129,9 +129,9 @@ var KeycloakProvider = function KeycloakProvider2(_ref) {
|
|
|
129
129
|
query: {}
|
|
130
130
|
}, query = _ref2.query;
|
|
131
131
|
var authConfig = useAuthConfig();
|
|
132
|
-
var _useState = useState("idToken" in query && (((_query$idToken = query.idToken) === null || _query$idToken === void 0 ? void 0 : _query$idToken.toString()) || true) || authState.idToken || false), _useState2 = _slicedToArray(_useState, 2), idToken = _useState2[0], setIdToken = _useState2[1];
|
|
133
|
-
var _useState3 = useState("token" in query && (((_query$token = query.token) === null || _query$token === void 0 ? void 0 : _query$token.toString()) || true) || authState.token || false), _useState4 = _slicedToArray(_useState3, 2), token = _useState4[0], setToken = _useState4[1];
|
|
134
|
-
var _useState5 = useState(authConfig.ensureFreshness && ("refreshToken" in query && (((_query$refreshToken = query.refreshToken) === null || _query$refreshToken === void 0 ? void 0 : _query$refreshToken.toString()) || true) || authState.refreshToken) || false), _useState6 = _slicedToArray(_useState5, 2), refreshToken = _useState6[0], setRefreshToken = _useState6[1];
|
|
132
|
+
var _useState = useState("idToken" in query && (((_query$idToken = query.idToken) === null || _query$idToken === void 0 ? void 0 : _query$idToken.toString()) || true) || authConfig.persist && authState.idToken || false), _useState2 = _slicedToArray(_useState, 2), idToken = _useState2[0], setIdToken = _useState2[1];
|
|
133
|
+
var _useState3 = useState("token" in query && (((_query$token = query.token) === null || _query$token === void 0 ? void 0 : _query$token.toString()) || true) || authConfig.persist && authState.token || false), _useState4 = _slicedToArray(_useState3, 2), token = _useState4[0], setToken = _useState4[1];
|
|
134
|
+
var _useState5 = useState(authConfig.ensureFreshness && ("refreshToken" in query && (((_query$refreshToken = query.refreshToken) === null || _query$refreshToken === void 0 ? void 0 : _query$refreshToken.toString()) || true) || authConfig.persist && authState.refreshToken) || false), _useState6 = _slicedToArray(_useState5, 2), refreshToken = _useState6[0], setRefreshToken = _useState6[1];
|
|
135
135
|
var explicitToken = "idToken" in query || "token" in query || "refreshToken" in query;
|
|
136
136
|
useEffect(function() {
|
|
137
137
|
var _window2, _window2$ReactNativeW, _window3, _window3$parent;
|
|
@@ -262,6 +262,8 @@ var KeycloakProvider = function KeycloakProvider2(_ref) {
|
|
|
262
262
|
}, []);
|
|
263
263
|
var initOptions = useMemo(function() {
|
|
264
264
|
var initOptions2 = _objectSpread(_objectSpread({}, defaultKeycloakInitOptions), keycloakInitOptions);
|
|
265
|
+
if (debug)
|
|
266
|
+
initOptions2.enableLogging = true;
|
|
265
267
|
if (token && typeof token === "string") {
|
|
266
268
|
initOptions2.token = token;
|
|
267
269
|
if (idToken && typeof idToken === "string")
|
|
@@ -275,7 +277,7 @@ var KeycloakProvider = function KeycloakProvider2(_ref) {
|
|
|
275
277
|
}
|
|
276
278
|
return initOptions2;
|
|
277
279
|
}, [keycloakInitOptions, token, refreshToken, idToken]);
|
|
278
|
-
if (token === true || refreshToken === true)
|
|
280
|
+
if (token === true || idToken === true || refreshToken === true)
|
|
279
281
|
return /* @__PURE__ */ React.createElement(LoadingComponent, null);
|
|
280
282
|
if (cookies && authConfig.ssr) {
|
|
281
283
|
return (
|
|
@@ -299,7 +301,7 @@ var KeycloakProvider = function KeycloakProvider2(_ref) {
|
|
|
299
301
|
authClient: keycloak,
|
|
300
302
|
LoadingComponent: /* @__PURE__ */ React.createElement(LoadingComponent, null)
|
|
301
303
|
}, /* @__PURE__ */ React.createElement(AfterAuth, null, children));
|
|
302
|
-
}
|
|
304
|
+
}
|
|
303
305
|
var defaultKeycloakInitOptions = {
|
|
304
306
|
checkLoginIframe: true,
|
|
305
307
|
checkLoginIframeInterval: 5,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/provider/keycloakProvider.tsx"],
|
|
4
|
-
"sourcesContent": ["function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n/**\n * File: /auth/provider/keycloakProvider.tsx\n * Project: app\n * File Created: 08-11-2022 03:12:43\n * Author: Clay Risser\n * -----\n * Last Modified: 22-11-2022 18:07:46\n * Modified By: Clay Risser\n * -----\n * Risser Labs LLC (c) Copyright 2021 - 2022\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport Keycloak from 'keycloak-js';\nimport React, { useMemo, useEffect, useState } from 'react';\nimport { AfterAuth } from \"./afterAuth.mjs\";\nimport { MultiPlatform } from 'multiplatform.one';\nimport { ReactKeycloakProvider } from '@react-keycloak/web';\nimport { SSRKeycloakProvider, SSRCookies } from '@react-keycloak/ssr';\nimport { useAuthConfig } from \"../hooks/useAuthConfig.mjs\";\nimport { useAuthState } from \"../state/index.mjs\";\nimport { useRouter } from 'next/router';\nvar logger = console;\nexport var KeycloakProvider = function KeycloakProvider(_ref) {\n var _query$idToken, _query$token, _query$refreshToken;\n var children = _ref.children,\n cookies = _ref.cookies,\n debug = _ref.debug,\n keycloakConfig = _ref.keycloakConfig,\n keycloakInitOptions = _ref.keycloakInitOptions,\n loadingComponent = _ref.loadingComponent;\n var authState = useAuthState();\n var LoadingComponent = loadingComponent || function () {\n return /*#__PURE__*/React.createElement(React.Fragment, null, debug ? 'authenticating' : null);\n };\n var _ref2 = MultiPlatform.isNext ? useRouter() : {\n query: {}\n },\n query = _ref2.query;\n var authConfig = useAuthConfig();\n var _useState = useState('idToken' in query && (((_query$idToken = query.idToken) === null || _query$idToken === void 0 ? void 0 : _query$idToken.toString()) || true) || authState.idToken || false),\n _useState2 = _slicedToArray(_useState, 2),\n idToken = _useState2[0],\n setIdToken = _useState2[1];\n var _useState3 = useState('token' in query && (((_query$token = query.token) === null || _query$token === void 0 ? void 0 : _query$token.toString()) || true) || authState.token || false),\n _useState4 = _slicedToArray(_useState3, 2),\n token = _useState4[0],\n setToken = _useState4[1];\n var _useState5 = useState(authConfig.ensureFreshness && ('refreshToken' in query && (((_query$refreshToken = query.refreshToken) === null || _query$refreshToken === void 0 ? void 0 : _query$refreshToken.toString()) || true) || authState.refreshToken) || false),\n _useState6 = _slicedToArray(_useState5, 2),\n refreshToken = _useState6[0],\n setRefreshToken = _useState6[1];\n var explicitToken = 'idToken' in query || 'token' in query || 'refreshToken' in query;\n useEffect(function () {\n var _window2, _window2$ReactNativeW, _window3, _window3$parent;\n if (token !== true && refreshToken !== true && idToken !== true) return;\n if (debug) logger.debug('post message', {\n type: 'LOADED'\n });\n (authConfig.messageHandlerKeys || []).forEach(function (key) {\n var _window, _window$webkit, _window$webkit$messag, _window$webkit$messag2;\n (_window = window) === null || _window === void 0 ? void 0 : (_window$webkit = _window.webkit) === null || _window$webkit === void 0 ? void 0 : (_window$webkit$messag = _window$webkit.messageHandlers) === null || _window$webkit$messag === void 0 ? void 0 : (_window$webkit$messag2 = _window$webkit$messag[key]) === null || _window$webkit$messag2 === void 0 ? void 0 : _window$webkit$messag2.postMessage(JSON.stringify({\n type: 'LOADED'\n }));\n });\n (_window2 = window) === null || _window2 === void 0 ? void 0 : (_window2$ReactNativeW = _window2.ReactNativeWebView) === null || _window2$ReactNativeW === void 0 ? void 0 : _window2$ReactNativeW.postMessage(JSON.stringify({\n type: 'LOADED'\n }));\n (_window3 = window) === null || _window3 === void 0 ? void 0 : (_window3$parent = _window3.parent) === null || _window3$parent === void 0 ? void 0 : _window3$parent.postMessage(JSON.stringify({\n type: 'LOADED'\n }));\n }, []);\n useEffect(function () {\n if (token !== true) return;\n var messageCallback = function messageCallback(e) {\n var data = e === null || e === void 0 ? void 0 : e.data;\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (err) {}\n }\n if (debug) logger.debug('received message', data);\n var message = data;\n if (!message.type) return;\n if (message.type.toUpperCase() === 'TOKEN' && message.payload) {\n if (debug) logger.debug('setting token', message.payload);\n setToken(message.payload);\n }\n };\n if (debug) {\n logger.debug('listening for message', {\n type: 'TOKEN',\n payload: '<some_token>'\n });\n }\n window.addEventListener('message', messageCallback);\n return function () {\n window.removeEventListener('message', messageCallback);\n };\n }, []);\n useEffect(function () {\n if (idToken !== true) return;\n var messageCallback = function messageCallback(e) {\n var data = e === null || e === void 0 ? void 0 : e.data;\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (err) {}\n }\n if (debug) logger.debug('received message', data);\n var message = data;\n if (!message.type) return;\n if (message.type.toUpperCase() === 'ID_TOKEN' && message.payload) {\n if (debug) logger.debug('setting id token', message.payload);\n setIdToken(message.payload);\n }\n };\n if (debug) {\n logger.debug('listening for message', {\n type: 'ID_TOKEN',\n payload: '<some_id_token>'\n });\n }\n window.addEventListener('message', messageCallback);\n return function () {\n window.removeEventListener('message', messageCallback);\n };\n }, []);\n useEffect(function () {\n if (refreshToken !== true) return;\n var messageCallback = function messageCallback(e) {\n var data = e === null || e === void 0 ? void 0 : e.data;\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (err) {}\n }\n if (debug) logger.debug('received message', data);\n var message = data;\n if (!message.type) return;\n if (message.type.toUpperCase() === 'REFRESH_TOKEN' && message.payload) {\n if (debug) logger.debug('setting refresh token', message.payload);\n setRefreshToken(message.payload);\n }\n };\n if (debug) {\n logger.debug('listening for message', {\n type: 'REFRESH_TOKEN',\n payload: '<some_refresh_token>'\n });\n }\n window.addEventListener('message', messageCallback);\n return function () {\n window.removeEventListener('message', messageCallback);\n };\n }, []);\n var keycloak = useMemo(function () {\n return typeof window !== 'undefined' && new Keycloak({\n url: keycloakConfig.baseUrl,\n realm: keycloakConfig.realm,\n clientId: keycloakConfig.clientId\n });\n }, []);\n var initOptions = useMemo(function () {\n var initOptions = _objectSpread(_objectSpread({}, defaultKeycloakInitOptions), keycloakInitOptions);\n if (token && typeof token === 'string') {\n initOptions.token = token;\n if (idToken && typeof idToken === 'string') initOptions.idToken = idToken;\n if (refreshToken && typeof refreshToken === 'string') initOptions.refreshToken = refreshToken;\n if (explicitToken) {\n initOptions.checkLoginIframe = false;\n initOptions.onLoad = undefined;\n }\n }\n return initOptions;\n }, [keycloakInitOptions, token, refreshToken, idToken]);\n if (token === true || refreshToken === true) return /*#__PURE__*/React.createElement(LoadingComponent, null);\n if (cookies && authConfig.ssr) {\n return (\n /*#__PURE__*/\n // @ts-ignore\n React.createElement(SSRKeycloakProvider, {\n initOptions: initOptions,\n keycloakConfig: {\n url: keycloakConfig.baseUrl,\n realm: keycloakConfig.realm,\n clientId: keycloakConfig.clientId\n },\n persistor: SSRCookies(cookies),\n LoadingComponent: /*#__PURE__*/React.createElement(LoadingComponent, null)\n }, /*#__PURE__*/React.createElement(AfterAuth, null, children))\n );\n }\n if (!keycloak) return /*#__PURE__*/React.createElement(React.Fragment, null, children);\n return /*#__PURE__*/React.createElement(ReactKeycloakProvider, {\n initOptions: initOptions,\n authClient: keycloak,\n LoadingComponent: /*#__PURE__*/React.createElement(LoadingComponent, null)\n }, /*#__PURE__*/React.createElement(AfterAuth, null, children));\n};\nexport var defaultKeycloakInitOptions = {\n checkLoginIframe: true,\n checkLoginIframeInterval: 5,\n enableLogging: false,\n onLoad: 'check-sso',\n pkceMethod: 'S256'\n};"],
|
|
5
|
-
"mappings": "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
|
|
6
|
-
"names": ["obj", "
|
|
4
|
+
"sourcesContent": ["function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n/**\n * File: /auth/provider/keycloakProvider.tsx\n * Project: app\n * File Created: 08-11-2022 03:12:43\n * Author: Clay Risser\n * -----\n * Last Modified: 22-11-2022 18:07:46\n * Modified By: Clay Risser\n * -----\n * Risser Labs LLC (c) Copyright 2021 - 2022\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport Keycloak from '@bitspur/keycloak-js';\nimport React, { useMemo, useEffect, useState } from 'react';\nimport { AfterAuth } from \"./afterAuth.mjs\";\nimport { MultiPlatform } from 'multiplatform.one';\nimport { ReactKeycloakProvider } from '@bitspur/react-keycloak-web';\nimport { SSRKeycloakProvider, SSRCookies } from '@bitspur/react-keycloak-ssr';\nimport { useAuthConfig } from \"../hooks/useAuthConfig.mjs\";\nimport { useAuthState } from \"../state/index.mjs\";\nimport { useRouter } from 'next/router';\nvar logger = console;\nexport function KeycloakProvider(_ref) {\n var _query$idToken, _query$token, _query$refreshToken;\n var children = _ref.children,\n cookies = _ref.cookies,\n debug = _ref.debug,\n keycloakConfig = _ref.keycloakConfig,\n keycloakInitOptions = _ref.keycloakInitOptions,\n loadingComponent = _ref.loadingComponent;\n var authState = useAuthState();\n var LoadingComponent = loadingComponent || function () {\n return /*#__PURE__*/React.createElement(React.Fragment, null, debug ? 'authenticating' : null);\n };\n var _ref2 = MultiPlatform.isNext ? useRouter() : {\n query: {}\n },\n query = _ref2.query;\n var authConfig = useAuthConfig();\n var _useState = useState('idToken' in query && (((_query$idToken = query.idToken) === null || _query$idToken === void 0 ? void 0 : _query$idToken.toString()) || true) || authConfig.persist && authState.idToken || false),\n _useState2 = _slicedToArray(_useState, 2),\n idToken = _useState2[0],\n setIdToken = _useState2[1];\n var _useState3 = useState('token' in query && (((_query$token = query.token) === null || _query$token === void 0 ? void 0 : _query$token.toString()) || true) || authConfig.persist && authState.token || false),\n _useState4 = _slicedToArray(_useState3, 2),\n token = _useState4[0],\n setToken = _useState4[1];\n var _useState5 = useState(authConfig.ensureFreshness && ('refreshToken' in query && (((_query$refreshToken = query.refreshToken) === null || _query$refreshToken === void 0 ? void 0 : _query$refreshToken.toString()) || true) || authConfig.persist && authState.refreshToken) || false),\n _useState6 = _slicedToArray(_useState5, 2),\n refreshToken = _useState6[0],\n setRefreshToken = _useState6[1];\n var explicitToken = 'idToken' in query || 'token' in query || 'refreshToken' in query;\n useEffect(function () {\n var _window2, _window2$ReactNativeW, _window3, _window3$parent;\n if (token !== true && refreshToken !== true && idToken !== true) return;\n if (debug) logger.debug('post message', {\n type: 'LOADED'\n });\n (authConfig.messageHandlerKeys || []).forEach(function (key) {\n var _window, _window$webkit, _window$webkit$messag, _window$webkit$messag2;\n (_window = window) === null || _window === void 0 ? void 0 : (_window$webkit = _window.webkit) === null || _window$webkit === void 0 ? void 0 : (_window$webkit$messag = _window$webkit.messageHandlers) === null || _window$webkit$messag === void 0 ? void 0 : (_window$webkit$messag2 = _window$webkit$messag[key]) === null || _window$webkit$messag2 === void 0 ? void 0 : _window$webkit$messag2.postMessage(JSON.stringify({\n type: 'LOADED'\n }));\n });\n (_window2 = window) === null || _window2 === void 0 ? void 0 : (_window2$ReactNativeW = _window2.ReactNativeWebView) === null || _window2$ReactNativeW === void 0 ? void 0 : _window2$ReactNativeW.postMessage(JSON.stringify({\n type: 'LOADED'\n }));\n (_window3 = window) === null || _window3 === void 0 ? void 0 : (_window3$parent = _window3.parent) === null || _window3$parent === void 0 ? void 0 : _window3$parent.postMessage(JSON.stringify({\n type: 'LOADED'\n }));\n }, []);\n useEffect(function () {\n if (token !== true) return;\n var messageCallback = function messageCallback(e) {\n var data = e === null || e === void 0 ? void 0 : e.data;\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (err) {}\n }\n if (debug) logger.debug('received message', data);\n var message = data;\n if (!message.type) return;\n if (message.type.toUpperCase() === 'TOKEN' && message.payload) {\n if (debug) logger.debug('setting token', message.payload);\n setToken(message.payload);\n }\n };\n if (debug) {\n logger.debug('listening for message', {\n type: 'TOKEN',\n payload: '<some_token>'\n });\n }\n window.addEventListener('message', messageCallback);\n return function () {\n window.removeEventListener('message', messageCallback);\n };\n }, []);\n useEffect(function () {\n if (idToken !== true) return;\n var messageCallback = function messageCallback(e) {\n var data = e === null || e === void 0 ? void 0 : e.data;\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (err) {}\n }\n if (debug) logger.debug('received message', data);\n var message = data;\n if (!message.type) return;\n if (message.type.toUpperCase() === 'ID_TOKEN' && message.payload) {\n if (debug) logger.debug('setting id token', message.payload);\n setIdToken(message.payload);\n }\n };\n if (debug) {\n logger.debug('listening for message', {\n type: 'ID_TOKEN',\n payload: '<some_id_token>'\n });\n }\n window.addEventListener('message', messageCallback);\n return function () {\n window.removeEventListener('message', messageCallback);\n };\n }, []);\n useEffect(function () {\n if (refreshToken !== true) return;\n var messageCallback = function messageCallback(e) {\n var data = e === null || e === void 0 ? void 0 : e.data;\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (err) {}\n }\n if (debug) logger.debug('received message', data);\n var message = data;\n if (!message.type) return;\n if (message.type.toUpperCase() === 'REFRESH_TOKEN' && message.payload) {\n if (debug) logger.debug('setting refresh token', message.payload);\n setRefreshToken(message.payload);\n }\n };\n if (debug) {\n logger.debug('listening for message', {\n type: 'REFRESH_TOKEN',\n payload: '<some_refresh_token>'\n });\n }\n window.addEventListener('message', messageCallback);\n return function () {\n window.removeEventListener('message', messageCallback);\n };\n }, []);\n var keycloak = useMemo(function () {\n return typeof window !== 'undefined' && new Keycloak({\n url: keycloakConfig.baseUrl,\n realm: keycloakConfig.realm,\n clientId: keycloakConfig.clientId\n });\n }, []);\n var initOptions = useMemo(function () {\n var initOptions = _objectSpread(_objectSpread({}, defaultKeycloakInitOptions), keycloakInitOptions);\n if (debug) initOptions.enableLogging = true;\n if (token && typeof token === 'string') {\n initOptions.token = token;\n if (idToken && typeof idToken === 'string') initOptions.idToken = idToken;\n if (refreshToken && typeof refreshToken === 'string') initOptions.refreshToken = refreshToken;\n if (explicitToken) {\n initOptions.checkLoginIframe = false;\n initOptions.onLoad = undefined;\n }\n }\n return initOptions;\n }, [keycloakInitOptions, token, refreshToken, idToken]);\n if (token === true || idToken === true || refreshToken === true) return /*#__PURE__*/React.createElement(LoadingComponent, null);\n if (cookies && authConfig.ssr) {\n return (\n /*#__PURE__*/\n // @ts-ignore\n React.createElement(SSRKeycloakProvider, {\n initOptions: initOptions,\n keycloakConfig: {\n url: keycloakConfig.baseUrl,\n realm: keycloakConfig.realm,\n clientId: keycloakConfig.clientId\n },\n persistor: SSRCookies(cookies),\n LoadingComponent: /*#__PURE__*/React.createElement(LoadingComponent, null)\n }, /*#__PURE__*/React.createElement(AfterAuth, null, children))\n );\n }\n if (!keycloak) return /*#__PURE__*/React.createElement(React.Fragment, null, children);\n return /*#__PURE__*/React.createElement(ReactKeycloakProvider, {\n initOptions: initOptions,\n authClient: keycloak,\n LoadingComponent: /*#__PURE__*/React.createElement(LoadingComponent, null)\n }, /*#__PURE__*/React.createElement(AfterAuth, null, children));\n}\nexport var defaultKeycloakInitOptions = {\n checkLoginIframe: true,\n checkLoginIframeInterval: 5,\n enableLogging: false,\n onLoad: 'check-sso',\n pkceMethod: 'S256'\n};"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["obj", "messageCallback", "initOptions"]
|
|
7
7
|
}
|
|
@@ -1,15 +1,27 @@
|
|
|
1
|
+
import { useEffect } from "react";
|
|
1
2
|
import { useLogin, useKeycloak } from "./hooks";
|
|
2
|
-
|
|
3
|
+
import { useAuthState } from "./state";
|
|
4
|
+
import { useAuthConfig } from "./hooks/useAuthConfig";
|
|
5
|
+
function Authenticated({ children, disabled, loginRoute, loggedOutComponent }) {
|
|
6
|
+
const authConfig = useAuthConfig();
|
|
7
|
+
const authState = useAuthState();
|
|
8
|
+
const login = useLogin(loginRoute);
|
|
3
9
|
const { authenticated } = useKeycloak();
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
useEffect(() => {
|
|
11
|
+
if (authenticated !== false)
|
|
12
|
+
return;
|
|
13
|
+
if (authConfig.persist) {
|
|
14
|
+
authState.setIdToken("");
|
|
15
|
+
authState.setRefreshToken("");
|
|
16
|
+
authState.setToken("");
|
|
17
|
+
}
|
|
18
|
+
login();
|
|
19
|
+
}, [authenticated]);
|
|
20
|
+
if (disabled || authenticated)
|
|
21
|
+
return <>{children}</>;
|
|
22
|
+
const LoggedOutComponent = loggedOutComponent || (() => null);
|
|
23
|
+
return <LoggedOutComponent />;
|
|
24
|
+
}
|
|
13
25
|
function withAuthenticated(Component) {
|
|
14
26
|
return (props) => <Authenticated><Component {...props} /></Authenticated>;
|
|
15
27
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Authenticated.tsx"],
|
|
4
|
-
"sourcesContent": ["/**\n * File: /auth/Authenticated.tsx\n * Project: app\n * File Created: 08-11-2022 05:58:23\n * Author: Clay Risser\n * -----\n * Last Modified: 22-11-2022 06:26:38\n * Modified By: Clay Risser\n * -----\n * Risser Labs LLC (c) Copyright 2021 - 2022\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport React from 'react';\nimport type { ComponentType,
|
|
5
|
-
"mappings": "
|
|
4
|
+
"sourcesContent": ["/**\n * File: /auth/Authenticated.tsx\n * Project: app\n * File Created: 08-11-2022 05:58:23\n * Author: Clay Risser\n * -----\n * Last Modified: 22-11-2022 06:26:38\n * Modified By: Clay Risser\n * -----\n * Risser Labs LLC (c) Copyright 2021 - 2022\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport React, { useEffect } from 'react';\nimport type { ComponentType, ReactNode } from 'react';\nimport { useLogin, useKeycloak } from './hooks';\nimport { useAuthState } from './state';\nimport { useAuthConfig } from './hooks/useAuthConfig';\n\nexport interface AuthenticatedProps {\n children: ReactNode;\n disabled?: boolean;\n loggedOutComponent?: ComponentType;\n loginRoute?: string;\n}\n\nexport function Authenticated({ children, disabled, loginRoute, loggedOutComponent }: AuthenticatedProps) {\n const authConfig = useAuthConfig();\n const authState = useAuthState();\n const login = useLogin(loginRoute);\n const { authenticated } = useKeycloak();\n\n useEffect(() => {\n if (authenticated !== false) return;\n if (authConfig.persist) {\n authState.setIdToken('');\n authState.setRefreshToken('');\n authState.setToken('');\n }\n login();\n }, [authenticated]);\n\n if (disabled || authenticated) return <>{children}</>;\n const LoggedOutComponent = loggedOutComponent || (() => null);\n return <LoggedOutComponent />;\n}\n\nexport function withAuthenticated<P extends object>(Component: ComponentType<P>) {\n return (props: P) => (\n <Authenticated>\n <Component {...props} />\n </Authenticated>\n );\n}\n"],
|
|
5
|
+
"mappings": "AAwBA,SAAgB,iBAAiB;AAEjC,SAAS,UAAU,mBAAmB;AACtC,SAAS,oBAAoB;AAC7B,SAAS,qBAAqB;AASvB,SAAS,cAAc,EAAE,UAAU,UAAU,YAAY,mBAAmB,GAAuB;AACxG,QAAM,aAAa,cAAc;AACjC,QAAM,YAAY,aAAa;AAC/B,QAAM,QAAQ,SAAS,UAAU;AACjC,QAAM,EAAE,cAAc,IAAI,YAAY;AAEtC,YAAU,MAAM;AACd,QAAI,kBAAkB;AAAO;AAC7B,QAAI,WAAW,SAAS;AACtB,gBAAU,WAAW,EAAE;AACvB,gBAAU,gBAAgB,EAAE;AAC5B,gBAAU,SAAS,EAAE;AAAA,IACvB;AACA,UAAM;AAAA,EACR,GAAG,CAAC,aAAa,CAAC;AAElB,MAAI,YAAY;AAAe,WAAO,GAAG,SAAS;AAClD,QAAM,qBAAqB,uBAAuB,MAAM;AACxD,SAAO,CAAC,mBAAmB;AAC7B;AAEO,SAAS,kBAAoC,WAA6B;AAC/E,SAAO,CAAC,UACN,CAAC,cACC,CAAC,cAAc,OAAO,EACxB,EAFC;AAIL;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/jsx/authConfig.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/authConfig.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * File: /src/authConfig.ts\n * Project: app\n * File Created: 08-11-2022 09:21:15\n * Author: Clay Risser\n * -----\n * Last Modified:
|
|
5
|
-
"mappings": "AAwBA,SAAS,qBAAqB;AAEvB,MAAM,oBAAgC;AAAA,EAC3C,iBAAiB;AAAA,EACjB,KAAK;AACP;AAEO,MAAM,oBAAoB,cAA0B,iBAAiB;",
|
|
4
|
+
"sourcesContent": ["/**\n * File: /src/authConfig.ts\n * Project: app\n * File Created: 08-11-2022 09:21:15\n * Author: Clay Risser\n * -----\n * Last Modified: 25-04-2023 23:08:17\n * Modified By: Clay Risser\n * -----\n * Risser Labs LLC (c) Copyright 2021 - 2022\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createContext } from 'react';\n\nexport const defaultAuthConfig: AuthConfig = {\n ensureFreshness: true,\n persist: true,\n ssr: true,\n};\n\nexport const AuthConfigContext = createContext<AuthConfig>(defaultAuthConfig);\n\nexport interface AuthConfig {\n debug?: boolean;\n ensureFreshness?: boolean;\n loginRoute?: string;\n messageHandlerKeys?: string[];\n persist?: boolean;\n ssr?: boolean;\n}\n"],
|
|
5
|
+
"mappings": "AAwBA,SAAS,qBAAqB;AAEvB,MAAM,oBAAgC;AAAA,EAC3C,iBAAiB;AAAA,EACjB,SAAS;AAAA,EACT,KAAK;AACP;AAEO,MAAM,oBAAoB,cAA0B,iBAAiB;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/hooks/useKeycloak/index.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * File: /src/hooks/useKeycloak/index.ts\n * Project: app\n * File Created: 08-11-2022 14:10:44\n * Author: Clay Risser\n * -----\n * Last Modified:
|
|
4
|
+
"sourcesContent": ["/**\n * File: /src/hooks/useKeycloak/index.ts\n * Project: app\n * File Created: 08-11-2022 14:10:44\n * Author: Clay Risser\n * -----\n * Last Modified: 24-04-2023 17:50:36\n * Modified By: Clay Risser\n * -----\n * Risser Labs LLC (c) Copyright 2021 - 2022\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { KeycloakResourceAccess, KeycloakRoles, KeycloakTokenParsed } from '@bitspur/keycloak-js';\nexport * from './useKeycloak';\n\nexport interface IKeycloak {\n authenticated?: boolean;\n idToken?: string;\n realmAccess?: KeycloakRoles;\n refreshToken?: string;\n refreshTokenParsed?: KeycloakTokenParsed;\n resourceAccess?: KeycloakResourceAccess;\n subject?: string;\n token?: string;\n tokenParsed?: ITokenParsed;\n login: () => Promise<unknown> | unknown;\n logout: () => Promise<unknown> | unknown;\n}\n\nexport interface ITokenParsed extends KeycloakTokenParsed {\n 'allowed-origins'?: string[];\n email_verified?: boolean;\n preferred_username?: string;\n scope?: string;\n sid?: string;\n}\n"],
|
|
5
5
|
"mappings": "AAyBA,cAAc;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|