@multiplatform.one/keycloak 0.3.1 → 0.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/provider/index.mjs +1 -1
- package/dist/esm/provider/index.mjs.map +2 -2
- package/dist/esm/provider/keycloakProvider.mjs +36 -35
- package/dist/esm/provider/keycloakProvider.mjs.map +2 -2
- package/dist/jsx/provider/index.mjs +1 -1
- package/dist/jsx/provider/index.mjs.map +2 -2
- package/dist/jsx/provider/keycloakProvider.mjs +45 -36
- package/dist/jsx/provider/keycloakProvider.mjs.map +2 -2
- package/dist/lib/provider/index.js +1 -1
- package/dist/lib/provider/index.js.map +2 -2
- package/dist/lib/provider/keycloakProvider.d.ts +0 -1
- package/dist/lib/provider/keycloakProvider.js +46 -38
- package/dist/lib/provider/keycloakProvider.js.map +2 -2
- package/dist/lib/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/provider/index.tsx +1 -1
- package/src/provider/keycloakProvider.tsx +47 -35
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/provider/index.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); }\nvar _excluded = [\"realm\", \"clientId\", \"baseUrl\", \"debug\", \"ensureFreshness\", \"loginRoute\", \"messageHandlerKeys\", \"ssr\", \"children\", \"cookies\", \"disabled\", \"loadingComponent\", \"onEvent\", \"onTokens\"];\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 _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n/**\n * File: /auth/provider/index.tsx\n * Project: app\n * File Created: 08-11-2022 06:33:07\n * Author: Clay Risser\n * -----\n * Last Modified: 22-11-2022 18:00:13\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, { useMemo } from 'react';\nimport { AuthConfigContext, defaultAuthConfig } from \"../authConfig.mjs\";\nimport { KeycloakProvider } from \"./keycloakProvider.mjs\"; // @ts-ignore\nimport { config } from 'app/config';\nvar persist = config.get('KEYCLOAK_PERSIST') === '1';\nexport var AuthProvider = function AuthProvider(_ref) {\n var realm = _ref.realm,\n clientId = _ref.clientId,\n baseUrl = _ref.baseUrl,\n debug = _ref.debug,\n ensureFreshness = _ref.ensureFreshness,\n loginRoute = _ref.loginRoute,\n messageHandlerKeys = _ref.messageHandlerKeys,\n ssr = _ref.ssr,\n children = _ref.children,\n cookies = _ref.cookies,\n disabled = _ref.disabled,\n loadingComponent = _ref.loadingComponent,\n onEvent = _ref.onEvent,\n onTokens = _ref.onTokens,\n keycloakInitOptions = _objectWithoutProperties(_ref, _excluded);\n var authConfig = useMemo(function () {\n return _objectSpread(_objectSpread({}, defaultAuthConfig), {}, {\n debug: debug,\n ensureFreshness: ensureFreshness,\n loginRoute: loginRoute,\n messageHandlerKeys: messageHandlerKeys,\n persist: persist,\n ssr: ssr\n });\n }, [debug, ensureFreshness, loginRoute, messageHandlerKeys, persist, ssr]);\n if (disabled) {\n return /*#__PURE__*/React.createElement(AuthConfigContext.Provider, {\n value: authConfig\n }, children);\n }\n return /*#__PURE__*/React.createElement(AuthConfigContext.Provider, {\n value: authConfig\n }, /*#__PURE__*/React.createElement(KeycloakProvider, {\n cookies: cookies,\n keycloakConfig: {\n realm: realm,\n clientId: clientId,\n url: baseUrl\n },\n keycloakInitOptions: keycloakInitOptions,\n loadingComponent: loadingComponent,\n onEvent: onEvent,\n onTokens: onTokens\n }, children));\n};\nexport * from \"./keycloakProvider.mjs\";"],
|
|
5
|
-
"mappings": "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
|
|
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); }\nvar _excluded = [\"realm\", \"clientId\", \"baseUrl\", \"debug\", \"ensureFreshness\", \"loginRoute\", \"messageHandlerKeys\", \"ssr\", \"children\", \"cookies\", \"disabled\", \"loadingComponent\", \"onEvent\", \"onTokens\"];\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 _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n/**\n * File: /auth/provider/index.tsx\n * Project: app\n * File Created: 08-11-2022 06:33:07\n * Author: Clay Risser\n * -----\n * Last Modified: 22-11-2022 18:00:13\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, { useMemo } from 'react';\nimport { AuthConfigContext, defaultAuthConfig } from \"../authConfig.mjs\";\nimport { KeycloakProvider } from \"./keycloakProvider.mjs\"; // @ts-ignore\nimport { config } from 'app/config';\nvar persist = config.get('KEYCLOAK_PERSIST') === '1';\nexport var AuthProvider = function AuthProvider(_ref) {\n var realm = _ref.realm,\n clientId = _ref.clientId,\n baseUrl = _ref.baseUrl,\n debug = _ref.debug,\n ensureFreshness = _ref.ensureFreshness,\n loginRoute = _ref.loginRoute,\n messageHandlerKeys = _ref.messageHandlerKeys,\n ssr = _ref.ssr,\n children = _ref.children,\n cookies = _ref.cookies,\n disabled = _ref.disabled,\n loadingComponent = _ref.loadingComponent,\n onEvent = _ref.onEvent,\n onTokens = _ref.onTokens,\n keycloakInitOptions = _objectWithoutProperties(_ref, _excluded);\n var authConfig = useMemo(function () {\n return _objectSpread(_objectSpread({}, defaultAuthConfig), {}, {\n debug: debug,\n ensureFreshness: ensureFreshness,\n loginRoute: loginRoute,\n messageHandlerKeys: messageHandlerKeys,\n persist: ssr ? false : persist,\n ssr: ssr\n });\n }, [debug, ensureFreshness, loginRoute, messageHandlerKeys, persist, ssr]);\n if (disabled) {\n return /*#__PURE__*/React.createElement(AuthConfigContext.Provider, {\n value: authConfig\n }, children);\n }\n return /*#__PURE__*/React.createElement(AuthConfigContext.Provider, {\n value: authConfig\n }, /*#__PURE__*/React.createElement(KeycloakProvider, {\n cookies: cookies,\n keycloakConfig: {\n realm: realm,\n clientId: clientId,\n url: baseUrl\n },\n keycloakInitOptions: keycloakInitOptions,\n loadingComponent: loadingComponent,\n onEvent: onEvent,\n onTokens: onTokens\n }, children));\n};\nexport * from \"./keycloakProvider.mjs\";"],
|
|
5
|
+
"mappings": "AAAA,SAAS,QAAQ,KAAK;AAAE;AAA2B,SAAO,UAAU,cAAc,OAAO,UAAU,YAAY,OAAO,OAAO,WAAW,SAAUA,MAAK;AAAE,WAAO,OAAOA;AAAA,EAAK,IAAI,SAAUA,MAAK;AAAE,WAAOA,QAAO,cAAc,OAAO,UAAUA,KAAI,gBAAgB,UAAUA,SAAQ,OAAO,YAAY,WAAW,OAAOA;AAAA,EAAK,GAAG,QAAQ,GAAG;AAAG;AAC/U,IAAI,YAAY,CAAC,SAAS,YAAY,WAAW,SAAS,mBAAmB,cAAc,sBAAsB,OAAO,YAAY,WAAW,YAAY,oBAAoB,WAAW,UAAU;AACpM,SAAS,QAAQ,QAAQ,gBAAgB;AAAE,MAAI,OAAO,OAAO,KAAK,MAAM;AAAG,MAAI,OAAO,uBAAuB;AAAE,QAAI,UAAU,OAAO,sBAAsB,MAAM;AAAG,uBAAmB,UAAU,QAAQ,OAAO,SAAU,KAAK;AAAE,aAAO,OAAO,yBAAyB,QAAQ,GAAG,EAAE;AAAA,IAAY,CAAC,IAAI,KAAK,KAAK,MAAM,MAAM,OAAO;AAAA,EAAG;AAAE,SAAO;AAAM;AACpV,SAAS,cAAc,QAAQ;AAAE,WAAS,IAAI,GAAG,IAAI,UAAU,QAAQ,KAAK;AAAE,QAAI,SAAS,QAAQ,UAAU,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC;AAAG,QAAI,IAAI,QAAQ,OAAO,MAAM,GAAG,IAAE,EAAE,QAAQ,SAAU,KAAK;AAAE,sBAAgB,QAAQ,KAAK,OAAO,GAAG,CAAC;AAAA,IAAG,CAAC,IAAI,OAAO,4BAA4B,OAAO,iBAAiB,QAAQ,OAAO,0BAA0B,MAAM,CAAC,IAAI,QAAQ,OAAO,MAAM,CAAC,EAAE,QAAQ,SAAU,KAAK;AAAE,aAAO,eAAe,QAAQ,KAAK,OAAO,yBAAyB,QAAQ,GAAG,CAAC;AAAA,IAAG,CAAC;AAAA,EAAG;AAAE,SAAO;AAAQ;AACzf,SAAS,gBAAgB,KAAK,KAAK,OAAO;AAAE,QAAM,eAAe,GAAG;AAAG,MAAI,OAAO,KAAK;AAAE,WAAO,eAAe,KAAK,KAAK,EAAE,OAAc,YAAY,MAAM,cAAc,MAAM,UAAU,KAAK,CAAC;AAAA,EAAG,OAAO;AAAE,QAAI,GAAG,IAAI;AAAA,EAAO;AAAE,SAAO;AAAK;AAC3O,SAAS,eAAe,KAAK;AAAE,MAAI,MAAM,aAAa,KAAK,QAAQ;AAAG,SAAO,QAAQ,GAAG,MAAM,WAAW,MAAM,OAAO,GAAG;AAAG;AAC5H,SAAS,aAAa,OAAO,MAAM;AAAE,MAAI,QAAQ,KAAK,MAAM,YAAY,UAAU;AAAM,WAAO;AAAO,MAAI,OAAO,MAAM,OAAO,WAAW;AAAG,MAAI,SAAS,QAAW;AAAE,QAAI,MAAM,KAAK,KAAK,OAAO,QAAQ,SAAS;AAAG,QAAI,QAAQ,GAAG,MAAM;AAAU,aAAO;AAAK,UAAM,IAAI,UAAU,8CAA8C;AAAA,EAAG;AAAE,UAAQ,SAAS,WAAW,SAAS,QAAQ,KAAK;AAAG;AAC5X,SAAS,yBAAyB,QAAQ,UAAU;AAAE,MAAI,UAAU;AAAM,WAAO,CAAC;AAAG,MAAI,SAAS,8BAA8B,QAAQ,QAAQ;AAAG,MAAI,KAAK;AAAG,MAAI,OAAO,uBAAuB;AAAE,QAAI,mBAAmB,OAAO,sBAAsB,MAAM;AAAG,SAAK,IAAI,GAAG,IAAI,iBAAiB,QAAQ,KAAK;AAAE,YAAM,iBAAiB,CAAC;AAAG,UAAI,SAAS,QAAQ,GAAG,KAAK;AAAG;AAAU,UAAI,CAAC,OAAO,UAAU,qBAAqB,KAAK,QAAQ,GAAG;AAAG;AAAU,aAAO,GAAG,IAAI,OAAO,GAAG;AAAA,IAAG;AAAA,EAAE;AAAE,SAAO;AAAQ;AAC3e,SAAS,8BAA8B,QAAQ,UAAU;AAAE,MAAI,UAAU;AAAM,WAAO,CAAC;AAAG,MAAI,SAAS,CAAC;AAAG,MAAI,aAAa,OAAO,KAAK,MAAM;AAAG,MAAI,KAAK;AAAG,OAAK,IAAI,GAAG,IAAI,WAAW,QAAQ,KAAK;AAAE,UAAM,WAAW,CAAC;AAAG,QAAI,SAAS,QAAQ,GAAG,KAAK;AAAG;AAAU,WAAO,GAAG,IAAI,OAAO,GAAG;AAAA,EAAG;AAAE,SAAO;AAAQ;AAyBlT,OAAO,SAAS,eAAe;AAC/B,SAAS,mBAAmB,yBAAyB;AACrD,SAAS,wBAAwB;AACjC,SAAS,cAAc;AACvB,IAAI,UAAU,OAAO,IAAI,kBAAkB,MAAM;AAC1C,IAAI,eAAe,SAASC,cAAa,MAAM;AACpD,MAAI,QAAQ,KAAK,OACf,WAAW,KAAK,UAChB,UAAU,KAAK,SACf,QAAQ,KAAK,OACb,kBAAkB,KAAK,iBACvB,aAAa,KAAK,YAClB,qBAAqB,KAAK,oBAC1B,MAAM,KAAK,KACX,WAAW,KAAK,UAChB,UAAU,KAAK,SACf,WAAW,KAAK,UAChB,mBAAmB,KAAK,kBACxB,UAAU,KAAK,SACf,WAAW,KAAK,UAChB,sBAAsB,yBAAyB,MAAM,SAAS;AAChE,MAAI,aAAa,QAAQ,WAAY;AACnC,WAAO,cAAc,cAAc,CAAC,GAAG,iBAAiB,GAAG,CAAC,GAAG;AAAA,MAC7D;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,SAAS,MAAM,QAAQ;AAAA,MACvB;AAAA,IACF,CAAC;AAAA,EACH,GAAG,CAAC,OAAO,iBAAiB,YAAY,oBAAoB,SAAS,GAAG,CAAC;AACzE,MAAI,UAAU;AACZ,WAAoB,sBAAM,cAAc,kBAAkB,UAAU;AAAA,MAClE,OAAO;AAAA,IACT,GAAG,QAAQ;AAAA,EACb;AACA,SAAoB,sBAAM,cAAc,kBAAkB,UAAU;AAAA,IAClE,OAAO;AAAA,EACT,GAAgB,sBAAM,cAAc,kBAAkB;AAAA,IACpD;AAAA,IACA,gBAAgB;AAAA,MACd;AAAA,MACA;AAAA,MACA,KAAK;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAG,QAAQ,CAAC;AACd;AACA,cAAc;",
|
|
6
6
|
"names": ["obj", "AuthProvider"]
|
|
7
7
|
}
|
|
@@ -119,7 +119,7 @@ import { useAuthState } from "../state/index.mjs";
|
|
|
119
119
|
import { useRouter } from "next/router";
|
|
120
120
|
var logger = console;
|
|
121
121
|
function KeycloakProvider(_ref) {
|
|
122
|
-
var _query$
|
|
122
|
+
var _query$refreshToken, _query$idToken, _query$token;
|
|
123
123
|
var children = _ref.children, cookies = _ref.cookies, keycloakConfig = _ref.keycloakConfig, keycloakInitOptions = _ref.keycloakInitOptions, loadingComponent = _ref.loadingComponent, onEvent = _ref.onEvent, onTokens = _ref.onTokens;
|
|
124
124
|
var _useAuthConfig = useAuthConfig(), debug = _useAuthConfig.debug, ensureFreshness = _useAuthConfig.ensureFreshness, persist = _useAuthConfig.persist, messageHandlerKeys = _useAuthConfig.messageHandlerKeys, ssr = _useAuthConfig.ssr;
|
|
125
125
|
var authState = useAuthState();
|
|
@@ -129,9 +129,9 @@ function KeycloakProvider(_ref) {
|
|
|
129
129
|
var _ref2 = MultiPlatform.isNext ? useRouter() : {
|
|
130
130
|
query: {}
|
|
131
131
|
}, query = _ref2.query;
|
|
132
|
-
var _useState = useState("
|
|
133
|
-
var _useState3 = useState("
|
|
134
|
-
var _useState5 = useState(
|
|
132
|
+
var _useState = useState(validToken(ensureFreshness && ("refreshToken" in query && (((_query$refreshToken = query.refreshToken) === null || _query$refreshToken === void 0 ? void 0 : _query$refreshToken.toString()) || true) || persist && authState.refreshToken) || false)), _useState2 = _slicedToArray(_useState, 2), refreshToken = _useState2[0], setRefreshToken = _useState2[1];
|
|
133
|
+
var _useState3 = useState(validToken("idToken" in query && (((_query$idToken = query.idToken) === null || _query$idToken === void 0 ? void 0 : _query$idToken.toString()) || true) || persist && authState.idToken || false, refreshToken)), _useState4 = _slicedToArray(_useState3, 2), idToken = _useState4[0], setIdToken = _useState4[1];
|
|
134
|
+
var _useState5 = useState(validToken("token" in query && (((_query$token = query.token) === null || _query$token === void 0 ? void 0 : _query$token.toString()) || true) || persist && authState.token || false, refreshToken)), _useState6 = _slicedToArray(_useState5, 2), token = _useState6[0], setToken = _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;
|
|
@@ -155,18 +155,10 @@ function KeycloakProvider(_ref) {
|
|
|
155
155
|
}));
|
|
156
156
|
}, []);
|
|
157
157
|
useEffect(function() {
|
|
158
|
-
if (
|
|
159
|
-
setIdToken(false);
|
|
160
|
-
if (typeof refreshToken === "string" && !isTokenValid(refreshToken))
|
|
161
|
-
setRefreshToken(false);
|
|
162
|
-
if (typeof token === "string" && !isTokenValid(token))
|
|
163
|
-
setToken(false);
|
|
164
|
-
}, [idToken, token, refreshToken]);
|
|
165
|
-
useEffect(function() {
|
|
166
|
-
if (token !== true)
|
|
158
|
+
if (refreshToken !== true)
|
|
167
159
|
return;
|
|
168
160
|
var messageCallback = function messageCallback2(e) {
|
|
169
|
-
var data = e === null || e === void 0 ? void 0 : e.data;
|
|
161
|
+
var data = (e === null || e === void 0 ? void 0 : e.data) || null;
|
|
170
162
|
if (typeof data === "string") {
|
|
171
163
|
try {
|
|
172
164
|
data = JSON.parse(data);
|
|
@@ -178,16 +170,16 @@ function KeycloakProvider(_ref) {
|
|
|
178
170
|
var message = data;
|
|
179
171
|
if (!message.type)
|
|
180
172
|
return;
|
|
181
|
-
if (message.type.toUpperCase() === "
|
|
173
|
+
if (message.type.toUpperCase() === "REFRESH_TOKEN" && message.payload) {
|
|
182
174
|
if (debug)
|
|
183
|
-
logger.debug("setting token", message.payload);
|
|
184
|
-
|
|
175
|
+
logger.debug("setting refresh token", message.payload);
|
|
176
|
+
setRefreshToken(validToken(message.payload));
|
|
185
177
|
}
|
|
186
178
|
};
|
|
187
179
|
if (debug) {
|
|
188
180
|
logger.debug("listening for message", {
|
|
189
|
-
type: "
|
|
190
|
-
payload: "<
|
|
181
|
+
type: "REFRESH_TOKEN",
|
|
182
|
+
payload: "<some_refresh_token>"
|
|
191
183
|
});
|
|
192
184
|
}
|
|
193
185
|
window.addEventListener("message", messageCallback);
|
|
@@ -196,10 +188,10 @@ function KeycloakProvider(_ref) {
|
|
|
196
188
|
};
|
|
197
189
|
}, []);
|
|
198
190
|
useEffect(function() {
|
|
199
|
-
if (
|
|
191
|
+
if (token !== true)
|
|
200
192
|
return;
|
|
201
193
|
var messageCallback = function messageCallback2(e) {
|
|
202
|
-
var data = e === null || e === void 0 ? void 0 : e.data;
|
|
194
|
+
var data = (e === null || e === void 0 ? void 0 : e.data) || null;
|
|
203
195
|
if (typeof data === "string") {
|
|
204
196
|
try {
|
|
205
197
|
data = JSON.parse(data);
|
|
@@ -211,16 +203,16 @@ function KeycloakProvider(_ref) {
|
|
|
211
203
|
var message = data;
|
|
212
204
|
if (!message.type)
|
|
213
205
|
return;
|
|
214
|
-
if (message.type.toUpperCase() === "
|
|
206
|
+
if (message.type.toUpperCase() === "TOKEN" && message.payload) {
|
|
215
207
|
if (debug)
|
|
216
|
-
logger.debug("setting
|
|
217
|
-
|
|
208
|
+
logger.debug("setting token", message.payload);
|
|
209
|
+
setToken(validToken(message.payload, refreshToken));
|
|
218
210
|
}
|
|
219
211
|
};
|
|
220
212
|
if (debug) {
|
|
221
213
|
logger.debug("listening for message", {
|
|
222
|
-
type: "
|
|
223
|
-
payload: "<
|
|
214
|
+
type: "TOKEN",
|
|
215
|
+
payload: "<some_token>"
|
|
224
216
|
});
|
|
225
217
|
}
|
|
226
218
|
window.addEventListener("message", messageCallback);
|
|
@@ -229,10 +221,10 @@ function KeycloakProvider(_ref) {
|
|
|
229
221
|
};
|
|
230
222
|
}, []);
|
|
231
223
|
useEffect(function() {
|
|
232
|
-
if (
|
|
224
|
+
if (idToken !== true)
|
|
233
225
|
return;
|
|
234
226
|
var messageCallback = function messageCallback2(e) {
|
|
235
|
-
var data = e === null || e === void 0 ? void 0 : e.data;
|
|
227
|
+
var data = (e === null || e === void 0 ? void 0 : e.data) || null;
|
|
236
228
|
if (typeof data === "string") {
|
|
237
229
|
try {
|
|
238
230
|
data = JSON.parse(data);
|
|
@@ -244,16 +236,16 @@ function KeycloakProvider(_ref) {
|
|
|
244
236
|
var message = data;
|
|
245
237
|
if (!message.type)
|
|
246
238
|
return;
|
|
247
|
-
if (message.type.toUpperCase() === "
|
|
239
|
+
if (message.type.toUpperCase() === "ID_TOKEN" && message.payload) {
|
|
248
240
|
if (debug)
|
|
249
|
-
logger.debug("setting
|
|
250
|
-
|
|
241
|
+
logger.debug("setting id token", message.payload);
|
|
242
|
+
setIdToken(validToken(message.payload, refreshToken));
|
|
251
243
|
}
|
|
252
244
|
};
|
|
253
245
|
if (debug) {
|
|
254
246
|
logger.debug("listening for message", {
|
|
255
|
-
type: "
|
|
256
|
-
payload: "<
|
|
247
|
+
type: "ID_TOKEN",
|
|
248
|
+
payload: "<some_id_token>"
|
|
257
249
|
});
|
|
258
250
|
}
|
|
259
251
|
window.addEventListener("message", messageCallback);
|
|
@@ -327,6 +319,16 @@ function KeycloakProvider(_ref) {
|
|
|
327
319
|
onTokens
|
|
328
320
|
}, /* @__PURE__ */ React.createElement(AfterAuth, null, children));
|
|
329
321
|
}
|
|
322
|
+
function validToken(token, refreshToken) {
|
|
323
|
+
if (typeof token !== "string")
|
|
324
|
+
return token;
|
|
325
|
+
if (refreshToken) {
|
|
326
|
+
if (refreshToken === true || isTokenValid(refreshToken))
|
|
327
|
+
return token;
|
|
328
|
+
return false;
|
|
329
|
+
}
|
|
330
|
+
return isTokenValid(token) ? token : false;
|
|
331
|
+
}
|
|
330
332
|
function isTokenValid(token) {
|
|
331
333
|
try {
|
|
332
334
|
var _token$split;
|
|
@@ -347,7 +349,6 @@ var defaultKeycloakInitOptions = {
|
|
|
347
349
|
};
|
|
348
350
|
export {
|
|
349
351
|
KeycloakProvider,
|
|
350
|
-
defaultKeycloakInitOptions
|
|
351
|
-
isTokenValid
|
|
352
|
+
defaultKeycloakInitOptions
|
|
352
353
|
};
|
|
353
354
|
//# sourceMappingURL=keycloakProvider.mjs.map
|
|
@@ -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 '@bitspur/keycloak-js';\nimport React, { useMemo, useEffect, useState, useCallback } 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 keycloakConfig = _ref.keycloakConfig,\n keycloakInitOptions = _ref.keycloakInitOptions,\n loadingComponent = _ref.loadingComponent,\n onEvent = _ref.onEvent,\n onTokens = _ref.onTokens;\n var _useAuthConfig = useAuthConfig(),\n debug = _useAuthConfig.debug,\n ensureFreshness = _useAuthConfig.ensureFreshness,\n persist = _useAuthConfig.persist,\n messageHandlerKeys = _useAuthConfig.messageHandlerKeys,\n ssr = _useAuthConfig.ssr;\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 _useState = useState('idToken' in query && (((_query$idToken = query.idToken) === null || _query$idToken === void 0 ? void 0 : _query$idToken.toString()) || true) || 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) || persist && authState.token || false),\n _useState4 = _slicedToArray(_useState3, 2),\n token = _useState4[0],\n setToken = _useState4[1];\n var _useState5 = useState(ensureFreshness && ('refreshToken' in query && (((_query$refreshToken = query.refreshToken) === null || _query$refreshToken === void 0 ? void 0 : _query$refreshToken.toString()) || true) || 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 (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 (typeof idToken === 'string' && !isTokenValid(idToken)) setIdToken(false);\n if (typeof refreshToken === 'string' && !isTokenValid(refreshToken)) setRefreshToken(false);\n if (typeof token === 'string' && !isTokenValid(token)) setToken(false);\n }, [idToken, token, refreshToken]);\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 handleEvent = useCallback(function (eventType, error) {\n if (error) {\n if (typeof error === 'string') throw new Error(error);\n var err = new Error(error.error);\n err.errorDescription = error.error_description;\n throw err;\n }\n if (onEvent) onEvent(eventType, error);\n }, []);\n var keycloak = useMemo(function () {\n return typeof window !== 'undefined' && new Keycloak({\n url: keycloakConfig.url,\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 && ssr) {\n return (\n /*#__PURE__*/\n // @ts-ignore\n React.createElement(SSRKeycloakProvider, {\n LoadingComponent: /*#__PURE__*/React.createElement(LoadingComponent, null)\n // keycloak-js already handles refreshing tokens\n ,\n autoRefreshToken: false,\n initOptions: initOptions,\n onEvent: handleEvent,\n onTokens: onTokens,\n persistor: SSRCookies(cookies),\n keycloakConfig: {\n clientId: keycloakConfig.clientId,\n realm: keycloakConfig.realm,\n url: keycloakConfig.url\n }\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 LoadingComponent: /*#__PURE__*/React.createElement(LoadingComponent, null),\n authClient: keycloak\n // keycloak-js already handles refreshing tokens\n ,\n autoRefreshToken: false,\n initOptions: initOptions,\n onEvent: handleEvent,\n onTokens: onTokens\n }, /*#__PURE__*/React.createElement(AfterAuth, null, children));\n}\nexport function isTokenValid(token) {\n try {\n var _token$split;\n var _JSON$parse = JSON.parse(Buffer.from(((_token$split = token.split('.')) === null || _token$split === void 0 ? void 0 : _token$split[1]) || '', 'base64').toString() || '{}'),\n exp = _JSON$parse.exp;\n return Math.floor(Date.now() / 1000) <= exp;\n } catch (err) {\n if (err instanceof SyntaxError) return false;\n throw err;\n }\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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
|
|
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, useCallback } 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$refreshToken, _query$idToken, _query$token;\n var children = _ref.children,\n cookies = _ref.cookies,\n keycloakConfig = _ref.keycloakConfig,\n keycloakInitOptions = _ref.keycloakInitOptions,\n loadingComponent = _ref.loadingComponent,\n onEvent = _ref.onEvent,\n onTokens = _ref.onTokens;\n var _useAuthConfig = useAuthConfig(),\n debug = _useAuthConfig.debug,\n ensureFreshness = _useAuthConfig.ensureFreshness,\n persist = _useAuthConfig.persist,\n messageHandlerKeys = _useAuthConfig.messageHandlerKeys,\n ssr = _useAuthConfig.ssr;\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 _useState = useState(validToken(ensureFreshness && ('refreshToken' in query && (((_query$refreshToken = query.refreshToken) === null || _query$refreshToken === void 0 ? void 0 : _query$refreshToken.toString()) || true) || persist && authState.refreshToken) || false)),\n _useState2 = _slicedToArray(_useState, 2),\n refreshToken = _useState2[0],\n setRefreshToken = _useState2[1];\n var _useState3 = useState(validToken('idToken' in query && (((_query$idToken = query.idToken) === null || _query$idToken === void 0 ? void 0 : _query$idToken.toString()) || true) || persist && authState.idToken || false, refreshToken)),\n _useState4 = _slicedToArray(_useState3, 2),\n idToken = _useState4[0],\n setIdToken = _useState4[1];\n var _useState5 = useState(validToken('token' in query && (((_query$token = query.token) === null || _query$token === void 0 ? void 0 : _query$token.toString()) || true) || persist && authState.token || false, refreshToken)),\n _useState6 = _slicedToArray(_useState5, 2),\n token = _useState6[0],\n setToken = _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 (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 (refreshToken !== true) return;\n var messageCallback = function messageCallback(e) {\n var data = (e === null || e === void 0 ? void 0 : e.data) || null;\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(validToken(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 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) || null;\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(validToken(message.payload, refreshToken));\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) || null;\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(validToken(message.payload, refreshToken));\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 var handleEvent = useCallback(function (eventType, error) {\n if (error) {\n if (typeof error === 'string') throw new Error(error);\n var err = new Error(error.error);\n err.errorDescription = error.error_description;\n throw err;\n }\n if (onEvent) onEvent(eventType, error);\n }, []);\n var keycloak = useMemo(function () {\n return typeof window !== 'undefined' && new Keycloak({\n url: keycloakConfig.url,\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 && ssr) {\n return (\n /*#__PURE__*/\n // @ts-ignore\n React.createElement(SSRKeycloakProvider, {\n LoadingComponent: /*#__PURE__*/React.createElement(LoadingComponent, null)\n // keycloak-js already handles refreshing tokens\n ,\n autoRefreshToken: false,\n initOptions: initOptions,\n onEvent: handleEvent,\n onTokens: onTokens,\n persistor: SSRCookies(cookies),\n keycloakConfig: {\n clientId: keycloakConfig.clientId,\n realm: keycloakConfig.realm,\n url: keycloakConfig.url\n }\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 LoadingComponent: /*#__PURE__*/React.createElement(LoadingComponent, null),\n authClient: keycloak\n // keycloak-js already handles refreshing tokens\n ,\n autoRefreshToken: false,\n initOptions: initOptions,\n onEvent: handleEvent,\n onTokens: onTokens\n }, /*#__PURE__*/React.createElement(AfterAuth, null, children));\n}\nfunction validToken(token, refreshToken) {\n if (typeof token !== 'string') return token;\n if (refreshToken) {\n if (refreshToken === true || isTokenValid(refreshToken)) return token;\n return false;\n }\n return isTokenValid(token) ? token : false;\n}\nfunction isTokenValid(token) {\n try {\n var _token$split;\n var _JSON$parse = JSON.parse(Buffer.from(((_token$split = token.split('.')) === null || _token$split === void 0 ? void 0 : _token$split[1]) || '', 'base64').toString() || '{}'),\n exp = _JSON$parse.exp;\n return Math.floor(Date.now() / 1000) <= exp;\n } catch (err) {\n if (err instanceof SyntaxError) return false;\n throw err;\n }\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
6
|
"names": ["obj", "messageCallback", "initOptions"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/provider/index.tsx"],
|
|
4
|
-
"sourcesContent": ["/**\n * File: /auth/provider/index.tsx\n * Project: app\n * File Created: 08-11-2022 06:33:07\n * Author: Clay Risser\n * -----\n * Last Modified: 22-11-2022 18:00:13\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, { useMemo } from 'react';\nimport type { AuthClientEvent, AuthClientError, AuthClientTokens } from '@bitspur/react-keycloak-core';\nimport type { AuthConfig } from '../authConfig';\nimport type { FC, ComponentType, ReactNode } from 'react';\nimport type { KeycloakConfig, KeycloakInitOptions } from '@bitspur/keycloak-js';\nimport { AuthConfigContext, defaultAuthConfig } from '../authConfig';\nimport { KeycloakProvider } from './keycloakProvider';\n// @ts-ignore\nimport { config } from 'app/config';\n\nexport interface AuthProviderProps\n extends Partial<Omit<AuthConfig, 'persist'>>,\n Omit<KeycloakConfig, 'url'>,\n KeycloakInitOptions {\n children: ReactNode;\n cookies?: unknown;\n disabled?: boolean;\n baseUrl?: string;\n loadingComponent?: ComponentType;\n onEvent?: (eventType: AuthClientEvent, error?: AuthClientError) => void;\n onTokens?: (tokens: AuthClientTokens) => void;\n}\n\nconst persist = config.get('KEYCLOAK_PERSIST') === '1';\n\nexport const AuthProvider: FC<AuthProviderProps> = ({\n // keycloak config\n realm,\n clientId,\n baseUrl,\n // auth config\n debug,\n ensureFreshness,\n loginRoute,\n messageHandlerKeys,\n ssr,\n // props\n children,\n cookies,\n disabled,\n loadingComponent,\n onEvent,\n onTokens,\n ...keycloakInitOptions\n}: AuthProviderProps) => {\n const authConfig = useMemo(\n () => ({\n ...defaultAuthConfig,\n debug,\n ensureFreshness,\n loginRoute,\n messageHandlerKeys,\n persist,\n ssr,\n }),\n [debug, ensureFreshness, loginRoute, messageHandlerKeys, persist, ssr],\n );\n\n if (disabled) {\n return <AuthConfigContext.Provider value={authConfig}>{children}</AuthConfigContext.Provider>;\n }\n\n return (\n <AuthConfigContext.Provider value={authConfig}>\n <KeycloakProvider\n cookies={cookies}\n keycloakConfig={{\n realm,\n clientId,\n url: baseUrl,\n }}\n keycloakInitOptions={keycloakInitOptions}\n loadingComponent={loadingComponent}\n onEvent={onEvent}\n onTokens={onTokens}\n >\n {children}\n </KeycloakProvider>\n </AuthConfigContext.Provider>\n );\n};\n\nexport * from './keycloakProvider';\n"],
|
|
5
|
-
"mappings": "AAwBA,SAAgB,eAAe;AAK/B,SAAS,mBAAmB,yBAAyB;AACrD,SAAS,wBAAwB;AAEjC,SAAS,cAAc;AAevB,MAAM,UAAU,OAAO,IAAI,kBAAkB,MAAM;AAE5C,MAAM,eAAsC,CAAC;AAAA;AAAA,EAElD;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAyB;AACvB,QAAM,aAAa;AAAA,IACjB,OAAO;AAAA,MACL,GAAG;AAAA,MACH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,
|
|
4
|
+
"sourcesContent": ["/**\n * File: /auth/provider/index.tsx\n * Project: app\n * File Created: 08-11-2022 06:33:07\n * Author: Clay Risser\n * -----\n * Last Modified: 22-11-2022 18:00:13\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, { useMemo } from 'react';\nimport type { AuthClientEvent, AuthClientError, AuthClientTokens } from '@bitspur/react-keycloak-core';\nimport type { AuthConfig } from '../authConfig';\nimport type { FC, ComponentType, ReactNode } from 'react';\nimport type { KeycloakConfig, KeycloakInitOptions } from '@bitspur/keycloak-js';\nimport { AuthConfigContext, defaultAuthConfig } from '../authConfig';\nimport { KeycloakProvider } from './keycloakProvider';\n// @ts-ignore\nimport { config } from 'app/config';\n\nexport interface AuthProviderProps\n extends Partial<Omit<AuthConfig, 'persist'>>,\n Omit<KeycloakConfig, 'url'>,\n KeycloakInitOptions {\n children: ReactNode;\n cookies?: unknown;\n disabled?: boolean;\n baseUrl?: string;\n loadingComponent?: ComponentType;\n onEvent?: (eventType: AuthClientEvent, error?: AuthClientError) => void;\n onTokens?: (tokens: AuthClientTokens) => void;\n}\n\nconst persist = config.get('KEYCLOAK_PERSIST') === '1';\n\nexport const AuthProvider: FC<AuthProviderProps> = ({\n // keycloak config\n realm,\n clientId,\n baseUrl,\n // auth config\n debug,\n ensureFreshness,\n loginRoute,\n messageHandlerKeys,\n ssr,\n // props\n children,\n cookies,\n disabled,\n loadingComponent,\n onEvent,\n onTokens,\n ...keycloakInitOptions\n}: AuthProviderProps) => {\n const authConfig = useMemo(\n () => ({\n ...defaultAuthConfig,\n debug,\n ensureFreshness,\n loginRoute,\n messageHandlerKeys,\n persist: ssr ? false : persist,\n ssr,\n }),\n [debug, ensureFreshness, loginRoute, messageHandlerKeys, persist, ssr],\n );\n\n if (disabled) {\n return <AuthConfigContext.Provider value={authConfig}>{children}</AuthConfigContext.Provider>;\n }\n\n return (\n <AuthConfigContext.Provider value={authConfig}>\n <KeycloakProvider\n cookies={cookies}\n keycloakConfig={{\n realm,\n clientId,\n url: baseUrl,\n }}\n keycloakInitOptions={keycloakInitOptions}\n loadingComponent={loadingComponent}\n onEvent={onEvent}\n onTokens={onTokens}\n >\n {children}\n </KeycloakProvider>\n </AuthConfigContext.Provider>\n );\n};\n\nexport * from './keycloakProvider';\n"],
|
|
5
|
+
"mappings": "AAwBA,SAAgB,eAAe;AAK/B,SAAS,mBAAmB,yBAAyB;AACrD,SAAS,wBAAwB;AAEjC,SAAS,cAAc;AAevB,MAAM,UAAU,OAAO,IAAI,kBAAkB,MAAM;AAE5C,MAAM,eAAsC,CAAC;AAAA;AAAA,EAElD;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAyB;AACvB,QAAM,aAAa;AAAA,IACjB,OAAO;AAAA,MACL,GAAG;AAAA,MACH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,SAAS,MAAM,QAAQ;AAAA,MACvB;AAAA,IACF;AAAA,IACA,CAAC,OAAO,iBAAiB,YAAY,oBAAoB,SAAS,GAAG;AAAA,EACvE;AAEA,MAAI,UAAU;AACZ,WAAO,CAAC,kBAAkB,SAAS,OAAO,aAAa,SAAS,EAAxD,kBAAkB;AAAA,EAC5B;AAEA,SACE,CAAC,kBAAkB,SAAS,OAAO,YACjC,CAAC;AAAA,IACC,SAAS;AAAA,IACT,gBAAgB;AAAA,MACd;AAAA,MACA;AAAA,MACA,KAAK;AAAA,IACP;AAAA,IACA,qBAAqB;AAAA,IACrB,kBAAkB;AAAA,IAClB,SAAS;AAAA,IACT,UAAU;AAAA,IAET,SACH,EAbC,iBAcH,EAfC,kBAAkB;AAiBvB;AAEA,cAAc;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -21,14 +21,22 @@ function KeycloakProvider({
|
|
|
21
21
|
const authState = useAuthState();
|
|
22
22
|
const LoadingComponent = loadingComponent || (() => <>{debug ? "authenticating" : null}</>);
|
|
23
23
|
const { query } = MultiPlatform.isNext ? useRouter() : { query: {} };
|
|
24
|
+
const [refreshToken, setRefreshToken] = useState(
|
|
25
|
+
validToken(
|
|
26
|
+
ensureFreshness && ("refreshToken" in query && (query.refreshToken?.toString() || true) || persist && authState.refreshToken) || false
|
|
27
|
+
)
|
|
28
|
+
);
|
|
24
29
|
const [idToken, setIdToken] = useState(
|
|
25
|
-
|
|
30
|
+
validToken(
|
|
31
|
+
"idToken" in query && (query.idToken?.toString() || true) || persist && authState.idToken || false,
|
|
32
|
+
refreshToken
|
|
33
|
+
)
|
|
26
34
|
);
|
|
27
35
|
const [token, setToken] = useState(
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
36
|
+
validToken(
|
|
37
|
+
"token" in query && (query.token?.toString() || true) || persist && authState.token || false,
|
|
38
|
+
refreshToken
|
|
39
|
+
)
|
|
32
40
|
);
|
|
33
41
|
const explicitToken = "idToken" in query || "token" in query || "refreshToken" in query;
|
|
34
42
|
useEffect(() => {
|
|
@@ -43,18 +51,10 @@ function KeycloakProvider({
|
|
|
43
51
|
window?.parent?.postMessage(JSON.stringify({ type: "LOADED" }));
|
|
44
52
|
}, []);
|
|
45
53
|
useEffect(() => {
|
|
46
|
-
if (
|
|
47
|
-
setIdToken(false);
|
|
48
|
-
if (typeof refreshToken === "string" && !isTokenValid(refreshToken))
|
|
49
|
-
setRefreshToken(false);
|
|
50
|
-
if (typeof token === "string" && !isTokenValid(token))
|
|
51
|
-
setToken(false);
|
|
52
|
-
}, [idToken, token, refreshToken]);
|
|
53
|
-
useEffect(() => {
|
|
54
|
-
if (token !== true)
|
|
54
|
+
if (refreshToken !== true)
|
|
55
55
|
return;
|
|
56
56
|
const messageCallback = (e) => {
|
|
57
|
-
let data = e?.data;
|
|
57
|
+
let data = e?.data || null;
|
|
58
58
|
if (typeof data === "string") {
|
|
59
59
|
try {
|
|
60
60
|
data = JSON.parse(data);
|
|
@@ -66,16 +66,16 @@ function KeycloakProvider({
|
|
|
66
66
|
const message = data;
|
|
67
67
|
if (!message.type)
|
|
68
68
|
return;
|
|
69
|
-
if (message.type.toUpperCase() === "
|
|
69
|
+
if (message.type.toUpperCase() === "REFRESH_TOKEN" && message.payload) {
|
|
70
70
|
if (debug)
|
|
71
|
-
logger.debug("setting token", message.payload);
|
|
72
|
-
|
|
71
|
+
logger.debug("setting refresh token", message.payload);
|
|
72
|
+
setRefreshToken(validToken(message.payload));
|
|
73
73
|
}
|
|
74
74
|
};
|
|
75
75
|
if (debug) {
|
|
76
76
|
logger.debug("listening for message", {
|
|
77
|
-
type: "
|
|
78
|
-
payload: "<
|
|
77
|
+
type: "REFRESH_TOKEN",
|
|
78
|
+
payload: "<some_refresh_token>"
|
|
79
79
|
});
|
|
80
80
|
}
|
|
81
81
|
window.addEventListener("message", messageCallback);
|
|
@@ -84,10 +84,10 @@ function KeycloakProvider({
|
|
|
84
84
|
};
|
|
85
85
|
}, []);
|
|
86
86
|
useEffect(() => {
|
|
87
|
-
if (
|
|
87
|
+
if (token !== true)
|
|
88
88
|
return;
|
|
89
89
|
const messageCallback = (e) => {
|
|
90
|
-
let data = e?.data;
|
|
90
|
+
let data = e?.data || null;
|
|
91
91
|
if (typeof data === "string") {
|
|
92
92
|
try {
|
|
93
93
|
data = JSON.parse(data);
|
|
@@ -99,16 +99,16 @@ function KeycloakProvider({
|
|
|
99
99
|
const message = data;
|
|
100
100
|
if (!message.type)
|
|
101
101
|
return;
|
|
102
|
-
if (message.type.toUpperCase() === "
|
|
102
|
+
if (message.type.toUpperCase() === "TOKEN" && message.payload) {
|
|
103
103
|
if (debug)
|
|
104
|
-
logger.debug("setting
|
|
105
|
-
|
|
104
|
+
logger.debug("setting token", message.payload);
|
|
105
|
+
setToken(validToken(message.payload, refreshToken));
|
|
106
106
|
}
|
|
107
107
|
};
|
|
108
108
|
if (debug) {
|
|
109
109
|
logger.debug("listening for message", {
|
|
110
|
-
type: "
|
|
111
|
-
payload: "<
|
|
110
|
+
type: "TOKEN",
|
|
111
|
+
payload: "<some_token>"
|
|
112
112
|
});
|
|
113
113
|
}
|
|
114
114
|
window.addEventListener("message", messageCallback);
|
|
@@ -117,10 +117,10 @@ function KeycloakProvider({
|
|
|
117
117
|
};
|
|
118
118
|
}, []);
|
|
119
119
|
useEffect(() => {
|
|
120
|
-
if (
|
|
120
|
+
if (idToken !== true)
|
|
121
121
|
return;
|
|
122
122
|
const messageCallback = (e) => {
|
|
123
|
-
let data = e?.data;
|
|
123
|
+
let data = e?.data || null;
|
|
124
124
|
if (typeof data === "string") {
|
|
125
125
|
try {
|
|
126
126
|
data = JSON.parse(data);
|
|
@@ -132,16 +132,16 @@ function KeycloakProvider({
|
|
|
132
132
|
const message = data;
|
|
133
133
|
if (!message.type)
|
|
134
134
|
return;
|
|
135
|
-
if (message.type.toUpperCase() === "
|
|
135
|
+
if (message.type.toUpperCase() === "ID_TOKEN" && message.payload) {
|
|
136
136
|
if (debug)
|
|
137
|
-
logger.debug("setting
|
|
138
|
-
|
|
137
|
+
logger.debug("setting id token", message.payload);
|
|
138
|
+
setIdToken(validToken(message.payload, refreshToken));
|
|
139
139
|
}
|
|
140
140
|
};
|
|
141
141
|
if (debug) {
|
|
142
142
|
logger.debug("listening for message", {
|
|
143
|
-
type: "
|
|
144
|
-
payload: "<
|
|
143
|
+
type: "ID_TOKEN",
|
|
144
|
+
payload: "<some_id_token>"
|
|
145
145
|
});
|
|
146
146
|
}
|
|
147
147
|
window.addEventListener("message", messageCallback);
|
|
@@ -219,6 +219,16 @@ function KeycloakProvider({
|
|
|
219
219
|
onTokens={onTokens}
|
|
220
220
|
><AfterAuth>{children}</AfterAuth></ReactKeycloakProvider>;
|
|
221
221
|
}
|
|
222
|
+
function validToken(token, refreshToken) {
|
|
223
|
+
if (typeof token !== "string")
|
|
224
|
+
return token;
|
|
225
|
+
if (refreshToken) {
|
|
226
|
+
if (refreshToken === true || isTokenValid(refreshToken))
|
|
227
|
+
return token;
|
|
228
|
+
return false;
|
|
229
|
+
}
|
|
230
|
+
return isTokenValid(token) ? token : false;
|
|
231
|
+
}
|
|
222
232
|
function isTokenValid(token) {
|
|
223
233
|
try {
|
|
224
234
|
const { exp } = JSON.parse(Buffer.from(token.split(".")?.[1] || "", "base64").toString() || "{}");
|
|
@@ -238,7 +248,6 @@ const defaultKeycloakInitOptions = {
|
|
|
238
248
|
};
|
|
239
249
|
export {
|
|
240
250
|
KeycloakProvider,
|
|
241
|
-
defaultKeycloakInitOptions
|
|
242
|
-
isTokenValid
|
|
251
|
+
defaultKeycloakInitOptions
|
|
243
252
|
};
|
|
244
253
|
//# sourceMappingURL=keycloakProvider.mjs.map
|