@darajs/core 1.13.1 → 1.14.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/dist/api/http.d.ts +1 -10
  2. package/dist/api/http.d.ts.map +1 -1
  3. package/dist/api/http.js +37 -7
  4. package/dist/api/http.js.map +1 -1
  5. package/dist/api/index.d.ts +2 -2
  6. package/dist/api/index.d.ts.map +1 -1
  7. package/dist/api/index.js +1 -1
  8. package/dist/api/index.js.map +1 -1
  9. package/dist/auth/auth-wrapper.d.ts +3 -2
  10. package/dist/auth/auth-wrapper.d.ts.map +1 -1
  11. package/dist/auth/auth-wrapper.js +89 -25
  12. package/dist/auth/auth-wrapper.js.map +1 -1
  13. package/dist/auth/auth.d.ts +8 -6
  14. package/dist/auth/auth.d.ts.map +1 -1
  15. package/dist/auth/auth.js +19 -23
  16. package/dist/auth/auth.js.map +1 -1
  17. package/dist/auth/basic/basic-auth-login.d.ts.map +1 -1
  18. package/dist/auth/basic/basic-auth-login.js +7 -11
  19. package/dist/auth/basic/basic-auth-login.js.map +1 -1
  20. package/dist/auth/basic/basic-auth-logout.d.ts.map +1 -1
  21. package/dist/auth/basic/basic-auth-logout.js +3 -4
  22. package/dist/auth/basic/basic-auth-logout.js.map +1 -1
  23. package/dist/auth/default/default-auth-login.d.ts.map +1 -1
  24. package/dist/auth/default/default-auth-login.js +7 -15
  25. package/dist/auth/default/default-auth-login.js.map +1 -1
  26. package/dist/auth/index.d.ts +2 -2
  27. package/dist/auth/index.d.ts.map +1 -1
  28. package/dist/auth/index.js +2 -2
  29. package/dist/auth/index.js.map +1 -1
  30. package/dist/auth/use-session-token.d.ts +7 -0
  31. package/dist/auth/use-session-token.d.ts.map +1 -0
  32. package/dist/auth/use-session-token.js +18 -0
  33. package/dist/auth/use-session-token.js.map +1 -0
  34. package/dist/{dara_core-1.13.1-py3-none-any.whl → dara_core-1.14.0a1-py3-none-any.whl} +0 -0
  35. package/dist/index.d.ts +3 -3
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +1 -1
  38. package/dist/index.js.map +1 -1
  39. package/dist/shared/context/index.d.ts +0 -1
  40. package/dist/shared/context/index.d.ts.map +1 -1
  41. package/dist/shared/context/index.js +0 -1
  42. package/dist/shared/context/index.js.map +1 -1
  43. package/dist/shared/context/request-extras-context.d.ts +0 -1
  44. package/dist/shared/context/request-extras-context.d.ts.map +1 -1
  45. package/dist/shared/context/request-extras-context.js +2 -8
  46. package/dist/shared/context/request-extras-context.js.map +1 -1
  47. package/dist/shared/global-state-store.d.ts +51 -0
  48. package/dist/shared/global-state-store.d.ts.map +1 -0
  49. package/dist/shared/global-state-store.js +135 -0
  50. package/dist/shared/global-state-store.js.map +1 -0
  51. package/dist/shared/index.d.ts +1 -1
  52. package/dist/shared/index.d.ts.map +1 -1
  53. package/dist/shared/index.js +1 -1
  54. package/dist/shared/index.js.map +1 -1
  55. package/dist/shared/interactivity/persistence.d.ts +2 -3
  56. package/dist/shared/interactivity/persistence.d.ts.map +1 -1
  57. package/dist/shared/interactivity/persistence.js +10 -13
  58. package/dist/shared/interactivity/persistence.js.map +1 -1
  59. package/dist/shared/private-route/private-route.js +1 -1
  60. package/dist/shared/private-route/private-route.js.map +1 -1
  61. package/dist/shared/template-root/template-root.js +1 -1
  62. package/dist/shared/template-root/template-root.js.map +1 -1
  63. package/dist/umd/dara.core.umd.js +631 -468
  64. package/package.json +9 -9
  65. package/dist/auth/auth-context.d.ts +0 -22
  66. package/dist/auth/auth-context.d.ts.map +0 -1
  67. package/dist/auth/auth-context.js +0 -18
  68. package/dist/auth/auth-context.js.map +0 -1
@@ -1,16 +1,7 @@
1
- /**
2
- * Request options to merge into the provided options.
3
- */
4
- export interface RequestOptions {
5
- options?: RequestInit;
6
- sessionToken?: string;
7
- }
8
1
  /**
9
2
  * Extra options to pass to the request function.
10
- * If a string is passed, it is assumed to be the session token.
11
- * If an object is passed, it is assumed to be a RequestOptions object with the token and additional options.
12
3
  */
13
- export type RequestExtras = string | RequestOptions;
4
+ export type RequestExtras = RequestInit;
14
5
  /**
15
6
  * Serializable form of RequestExtras.
16
7
  * Required to use for e.g. recoil params as they need to be serializable.
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../js/api/http.tsx"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,cAAc,CAAC;AAEpD;;;GAGG;AACH,qBAAa,yBAAyB;IAClC,MAAM,EAAE,aAAa,CAAC;gBAEV,MAAM,EAAE,aAAa;IAIjC;;;OAGG;IACH,cAAc,IAAI,aAAa,GAAG,IAAI;IAoBtC;;OAEG;IACH,MAAM,IAAI,MAAM,GAAG,IAAI;CAS1B;AAED;;;;;;GAMG;AACH,wBAAsB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,CA8BhH"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../js/api/http.tsx"],"names":[],"mappings":"AAOA;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,WAAW,CAAC;AAExC;;;GAGG;AACH,qBAAa,yBAAyB;IAClC,MAAM,EAAE,aAAa,CAAC;gBAEV,MAAM,EAAE,aAAa;IAIjC;;;OAGG;IACH,cAAc,IAAI,aAAa,GAAG,IAAI;IAoBtC;;OAEG;IACH,MAAM,IAAI,MAAM,GAAG,IAAI;CAS1B;AAED;;;;;;GAMG;AACH,wBAAsB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,CAqEhH"}
package/dist/api/http.js CHANGED
@@ -20,6 +20,8 @@ var __rest = (this && this.__rest) || function (s, e) {
20
20
  };
21
21
  /* eslint-disable import/prefer-default-export */
22
22
  import cloneDeep from 'lodash/cloneDeep';
23
+ import { validateResponse } from '@darajs/ui-utils';
24
+ import globalStore from '../shared/global-state-store';
23
25
  /**
24
26
  * Serializable form of RequestExtras.
25
27
  * Required to use for e.g. recoil params as they need to be serializable.
@@ -33,7 +35,6 @@ export class RequestExtrasSerializable {
33
35
  * Transforms the headers into a serializable format rather than a Headers object.
34
36
  */
35
37
  toSerializable() {
36
- var _a;
37
38
  if (!this.extras) {
38
39
  return null;
39
40
  }
@@ -42,9 +43,9 @@ export class RequestExtrasSerializable {
42
43
  }
43
44
  const serializable = cloneDeep(this.extras);
44
45
  // Make headers serializable
45
- if ((_a = serializable.options) === null || _a === void 0 ? void 0 : _a.headers) {
46
- const headers = new Headers(serializable.options.headers);
47
- serializable.options.headers = Object.fromEntries(headers.entries());
46
+ if (serializable === null || serializable === void 0 ? void 0 : serializable.headers) {
47
+ const headers = new Headers(serializable.headers);
48
+ serializable.headers = Object.fromEntries(headers.entries());
48
49
  }
49
50
  return serializable;
50
51
  }
@@ -69,8 +70,9 @@ export class RequestExtrasSerializable {
69
70
  export function request(url, options, extras) {
70
71
  return __awaiter(this, void 0, void 0, function* () {
71
72
  var _a, _b;
72
- const sessionToken = typeof extras === 'string' ? extras : extras === null || extras === void 0 ? void 0 : extras.sessionToken;
73
- const mergedOptions = extras && typeof extras === 'object' ? Object.assign(Object.assign({}, options), extras.options) : options;
73
+ // block on the token in case it's locked, i.e. being refreshed by another concurrent request
74
+ const sessionToken = yield globalStore.getValue('sessionToken');
75
+ const mergedOptions = extras ? Object.assign(Object.assign({}, options), extras) : options;
74
76
  const { headers } = mergedOptions, other = __rest(mergedOptions, ["headers"]);
75
77
  const headersInterface = new Headers(headers);
76
78
  // default to json accept header
@@ -87,7 +89,35 @@ export function request(url, options, extras) {
87
89
  }
88
90
  const baseUrl = (_b = (_a = window.dara) === null || _a === void 0 ? void 0 : _a.base_url) !== null && _b !== void 0 ? _b : '';
89
91
  const urlString = url instanceof URL ? url.pathname + url.search : url;
90
- return fetch(baseUrl + urlString, Object.assign({ headers: headersInterface }, other));
92
+ const response = yield fetch(baseUrl + urlString, Object.assign({ headers: headersInterface }, other));
93
+ // in case of an auth error, attempt to refresh the token and retry the request
94
+ if (response.status === 401 || response.status === 403) {
95
+ try {
96
+ // Lock the token value while it's being replaced.
97
+ // If it's already being replaced, this will instead wait for the replacement to complete
98
+ // rather than invoking the refresh again.
99
+ const refreshedToken = yield globalStore.replaceValue('sessionToken', () => __awaiter(this, void 0, void 0, function* () {
100
+ const refreshResponse = yield fetch(`${baseUrl}/api/auth/refresh-token`, Object.assign(Object.assign({ headers: headersInterface }, other), { method: 'POST' }));
101
+ if (refreshResponse.ok) {
102
+ const { token } = yield refreshResponse.json();
103
+ return token;
104
+ }
105
+ // this will throw an error with the error content
106
+ yield validateResponse(refreshResponse, 'Request auth error, failed to refresh the session token');
107
+ }));
108
+ // retry the request with the new token
109
+ headersInterface.set('Authorization', `Bearer ${refreshedToken}`);
110
+ return fetch(baseUrl + urlString, Object.assign({ headers: headersInterface }, other));
111
+ }
112
+ catch (e) {
113
+ // refresh failed - return the original request, the caller is supposed to handle the error
114
+ // however they wish
115
+ // eslint-disable-next-line no-console
116
+ console.error('Failed to refresh token', e);
117
+ return response;
118
+ }
119
+ }
120
+ return response;
91
121
  });
92
122
  }
93
123
  //# sourceMappingURL=http.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../js/api/http.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../js/api/http.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- export { useSession, getSessionToken, verifySessionToken, useUser, handleAuthErrors } from '../auth/auth';
1
+ export { useSession, requestSessionToken, verifySessionToken, useUser, handleAuthErrors } from '../auth/auth';
2
2
  export { cancelTask, fetchTaskResult, useConfig, useComponents, useTemplate, useActions } from './core';
3
3
  export { WebSocketClientInterface, WebSocketClient, setupWebsocket } from './websocket';
4
- export { request, RequestExtras, RequestOptions } from './http';
4
+ export { request, RequestExtras } from './http';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../js/api/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,kBAAkB,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC1G,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACxG,OAAO,EAAE,wBAAwB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACxF,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../js/api/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC9G,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACxG,OAAO,EAAE,wBAAwB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACxF,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC"}
package/dist/api/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export { useSession, getSessionToken, verifySessionToken, useUser, handleAuthErrors } from '../auth/auth';
1
+ export { useSession, requestSessionToken, verifySessionToken, useUser, handleAuthErrors } from '../auth/auth';
2
2
  export { cancelTask, fetchTaskResult, useConfig, useComponents, useTemplate, useActions } from './core';
3
3
  export { WebSocketClient, setupWebsocket } from './websocket';
4
4
  export { request } from './http';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../js/api/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,kBAAkB,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC1G,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACxG,OAAO,EAA4B,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACxF,OAAO,EAAE,OAAO,EAAiC,MAAM,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../js/api/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC9G,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACxG,OAAO,EAA4B,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACxF,OAAO,EAAE,OAAO,EAAiB,MAAM,QAAQ,CAAC"}
@@ -4,8 +4,9 @@ interface AuthWrapperProps {
4
4
  children: ReactNode;
5
5
  }
6
6
  /**
7
- * Simple Auth Wrapper component that makes the session request to the backend and then provides the session token down
8
- * to the rest of the app via context
7
+ * Simple Auth Wrapper component that initializes the token from localStorage,
8
+ * synchronizes token with localStorage and refreshes the token if it's about to expire.
9
+ * Renders the login/logout components and the children wrapped in PrivateRoute.
9
10
  *
10
11
  * @param props - the component props
11
12
  */
@@ -1 +1 @@
1
- {"version":3,"file":"auth-wrapper.d.ts","sourceRoot":"","sources":["../../js/auth/auth-wrapper.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAmC,MAAM,OAAO,CAAC;AAanE,UAAU,gBAAgB;IACtB,2BAA2B;IAC3B,QAAQ,EAAE,SAAS,CAAC;CACvB;AAsCD;;;;;GAKG;AACH,iBAAS,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAkDzD;AAED,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"auth-wrapper.d.ts","sourceRoot":"","sources":["../../js/auth/auth-wrapper.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAA2C,MAAM,OAAO,CAAC;AAmD3E,UAAU,gBAAgB;IACtB,2BAA2B;IAC3B,QAAQ,EAAE,SAAS,CAAC;CACvB;AAsCD;;;;;;GAMG;AACH,iBAAS,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAsEzD;AAED,eAAe,WAAW,CAAC"}
@@ -1,3 +1,12 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
1
10
  var __rest = (this && this.__rest) || function (s, e) {
2
11
  var t = {};
3
12
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
@@ -10,17 +19,53 @@ var __rest = (this && this.__rest) || function (s, e) {
10
19
  return t;
11
20
  };
12
21
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
- /* eslint-disable react-hooks/exhaustive-deps */
14
- import { useContext, useEffect, useState } from 'react';
22
+ import jwtDecode from 'jwt-decode';
23
+ import { useContext, useEffect, useRef, useState } from 'react';
15
24
  import { Route, Switch } from 'react-router-dom';
25
+ import { request } from '../api/http';
16
26
  import DefaultFallback from '../components/fallback/default';
17
27
  import ErrorPage from '../pages/error-page';
18
28
  import Center from '../shared/center/center';
19
29
  import { ImportersCtx } from '../shared/context';
30
+ import globalStore from '../shared/global-state-store';
20
31
  import PrivateRoute from '../shared/private-route/private-route';
21
32
  import { getToken, getTokenKey } from '../shared/utils';
22
- import { useAuthComponents } from './auth';
23
- import AuthContext from './auth-context';
33
+ import { useAuthConfig } from './auth';
34
+ /**
35
+ * Refreshes the token if it's about to expire
36
+ *
37
+ * @param token token to refresh if expired
38
+ */
39
+ function checkTokenExpiry(token) {
40
+ return __awaiter(this, void 0, void 0, function* () {
41
+ // check if token is expired
42
+ if (token) {
43
+ try {
44
+ const decoded = jwtDecode(token);
45
+ // If it's about to expire within 5 minutes
46
+ if (decoded.exp * 1000 - Date.now() < 5 * 60 * 1000) {
47
+ // token is expired, refresh it
48
+ const res = yield request('/api/auth/refresh-token', {
49
+ headers: {
50
+ Accept: 'application/json',
51
+ 'Content-Type': 'application/json',
52
+ },
53
+ method: 'POST',
54
+ });
55
+ // if refreshing token succeeded, update the token
56
+ if (res.ok) {
57
+ const { token: newToken } = yield res.json();
58
+ return newToken;
59
+ }
60
+ }
61
+ }
62
+ catch (e) {
63
+ // eslint-disable-next-line no-console
64
+ console.warn('Failed to refresh token', e);
65
+ }
66
+ }
67
+ });
68
+ }
24
69
  /**
25
70
  * Simplified version of DynamicComponent, just for the auth components.
26
71
  * This is because we can't use the component registry for auth components, since the component registry operates
@@ -45,38 +90,57 @@ function DynamicAuthComponent(props) {
45
90
  .catch((err) => {
46
91
  throw new Error(`Failed to import module ${props.component.py_module}`, err);
47
92
  });
48
- }, [props.component]);
93
+ }, [props.component, importers]);
49
94
  return component;
50
95
  }
51
96
  /**
52
- * Simple Auth Wrapper component that makes the session request to the backend and then provides the session token down
53
- * to the rest of the app via context
97
+ * Simple Auth Wrapper component that initializes the token from localStorage,
98
+ * synchronizes token with localStorage and refreshes the token if it's about to expire.
99
+ * Renders the login/logout components and the children wrapped in PrivateRoute.
54
100
  *
55
101
  * @param props - the component props
56
102
  */
57
103
  function AuthWrapper(props) {
58
- const [token, setToken] = useState(() => getToken());
59
- const { data: authComponents, isLoading } = useAuthComponents();
60
- /**
61
- * Set token handler - updates the token in state and local storage
62
- *
63
- * @param newToken new token
64
- */
65
- function onSetToken(newToken) {
66
- const key = getTokenKey();
67
- if (newToken) {
68
- localStorage.setItem(key, newToken);
69
- }
70
- else {
71
- localStorage.removeItem(key);
72
- }
73
- setToken(newToken);
104
+ const { data: authConfig, isLoading } = useAuthConfig();
105
+ const isMounted = useRef(false);
106
+ // set initial token from local storage as soon as we render
107
+ if (!isMounted.current) {
108
+ isMounted.current = true;
109
+ globalStore.setValue('sessionToken', getToken());
74
110
  }
111
+ // check token expiry every minute
112
+ useEffect(() => {
113
+ if (!(authConfig === null || authConfig === void 0 ? void 0 : authConfig.supports_token_refresh)) {
114
+ return;
115
+ }
116
+ const interval = setInterval(() => __awaiter(this, void 0, void 0, function* () {
117
+ // use async to handle in-progress refresh
118
+ const token = yield globalStore.getValue('sessionToken');
119
+ const newToken = yield checkTokenExpiry(token);
120
+ // update the token if it's refreshed
121
+ if (newToken) {
122
+ globalStore.setValue('sessionToken', newToken);
123
+ }
124
+ }), 60 * 1000);
125
+ return () => clearInterval(interval);
126
+ }, [authConfig]);
127
+ useEffect(() => {
128
+ // sync the token with local storage
129
+ return globalStore.subscribe('sessionToken', (newToken) => {
130
+ const key = getTokenKey();
131
+ if (newToken) {
132
+ localStorage.setItem(key, newToken);
133
+ }
134
+ else {
135
+ localStorage.removeItem(key);
136
+ }
137
+ });
138
+ }, []);
75
139
  if (isLoading) {
76
140
  return (_jsx(Center, { children: _jsx(DefaultFallback, {}) }));
77
141
  }
78
- const { login, logout } = authComponents, extraRoutes = __rest(authComponents, ["login", "logout"]);
79
- return (_jsx(AuthContext.Provider, { value: { setToken: onSetToken, token }, children: _jsxs(Switch, { children: [_jsx(Route, { path: "/login", children: _jsx(DynamicAuthComponent, { component: login }) }), _jsx(Route, { path: "/logout", children: _jsx(DynamicAuthComponent, { component: logout }) }), Object.entries(extraRoutes).map(([path, component]) => (_jsx(Route, { path: `/${path}`, children: _jsx(DynamicAuthComponent, { component: component }) }, path))), _jsx(Route, { component: ErrorPage, path: "/error" }), _jsx(Route, { path: "/", render: () => _jsx(PrivateRoute, { children: props.children }) })] }) }));
142
+ const _a = authConfig.auth_components, { login, logout } = _a, extraRoutes = __rest(_a, ["login", "logout"]);
143
+ return (_jsxs(Switch, { children: [_jsx(Route, { path: "/login", children: _jsx(DynamicAuthComponent, { component: login }) }), _jsx(Route, { path: "/logout", children: _jsx(DynamicAuthComponent, { component: logout }) }), Object.entries(extraRoutes).map(([path, component]) => (_jsx(Route, { path: `/${path}`, children: _jsx(DynamicAuthComponent, { component: component }) }, path))), _jsx(Route, { component: ErrorPage, path: "/error" }), _jsx(Route, { path: "/", render: () => _jsx(PrivateRoute, { children: props.children }) })] }));
80
144
  }
81
145
  export default AuthWrapper;
82
146
  //# sourceMappingURL=auth-wrapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth-wrapper.js","sourceRoot":"","sources":["../../js/auth/auth-wrapper.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth-wrapper.js","sourceRoot":"","sources":["../../js/auth/auth-wrapper.tsx"],"names":[],"mappings":"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"}
@@ -22,10 +22,14 @@ interface AuthComponents {
22
22
  login: AuthComponent;
23
23
  logout: AuthComponent;
24
24
  }
25
+ interface AuthConfig {
26
+ auth_components: AuthComponents;
27
+ supports_token_refresh: boolean;
28
+ }
25
29
  /**
26
30
  * Fetch components to use for authentication
27
31
  */
28
- export declare function useAuthComponents(): UseQueryResult<AuthComponents>;
32
+ export declare function useAuthConfig(): UseQueryResult<AuthConfig>;
29
33
  interface RedirectResponse {
30
34
  redirect_uri: string;
31
35
  }
@@ -34,10 +38,8 @@ interface SuccessResponse {
34
38
  }
35
39
  /**
36
40
  * Revoke the current session
37
- *
38
- * @param token current token
39
41
  */
40
- export declare function revokeSession(token?: string): Promise<RedirectResponse | SuccessResponse>;
42
+ export declare function revokeSession(): Promise<RedirectResponse | SuccessResponse>;
41
43
  /**
42
44
  * Helper function to handle auth errors in a response
43
45
  *
@@ -51,10 +53,10 @@ export declare function handleAuthErrors(res: Response, toLogin?: boolean, ignor
51
53
  */
52
54
  export declare function useUser(): UseQueryResult<UserData, RequestError>;
53
55
  /** Api call to fetch the session token from the backend */
54
- export declare function getSessionToken(body?: User): Promise<string>;
56
+ export declare function requestSessionToken(body?: User): Promise<string>;
55
57
  /** Api call to fetch the session token from the backend */
56
58
  export declare function useSession(body?: User): UseQueryResult<string, RequestError>;
57
59
  /** Api call to verify the session token from the backend */
58
- export declare function verifySessionToken(token: string): Promise<boolean>;
60
+ export declare function verifySessionToken(): Promise<boolean>;
59
61
  export {};
60
62
  //# sourceMappingURL=auth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../js/auth/auth.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAY,MAAM,uBAAuB,CAAC;AAEjE,OAAO,EAAe,YAAY,EAAoB,MAAM,kBAAkB,CAAC;AAK/E,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEzC,aAAK,yBAAyB;IAC1B,WAAW,gBAAgB;IAC3B,aAAa,YAAY;IACzB,mBAAmB,wBAAwB;IAC3C,aAAa,kBAAkB;IAC/B,KAAK,UAAU;IACf,YAAY,iBAAiB;CAChC;AA2CD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,cAAc;IACpB,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC;IAC/B,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,aAAa,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,cAAc,CAAC,cAAc,CAAC,CAYlE;AAED,UAAU,gBAAgB;IACtB,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,UAAU,eAAe;IACrB,OAAO,EAAE,OAAO,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,eAAe,CAAC,CAoB/F;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAClC,GAAG,EAAE,QAAQ,EACb,OAAO,UAAQ,EACf,YAAY,GAAE,KAAK,CAAC,yBAAyB,CAAQ,GACtD,OAAO,CAAC,OAAO,CAAC,CAqBlB;AAED;;GAEG;AACH,wBAAgB,OAAO,IAAI,cAAc,CAAC,QAAQ,EAAE,YAAY,CAAC,CAYhE;AAED,2DAA2D;AAC3D,wBAAsB,eAAe,CAAC,IAAI,GAAE,IAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAoBtE;AAED,2DAA2D;AAC3D,wBAAgB,UAAU,CAAC,IAAI,GAAE,IAAS,GAAG,cAAc,CAAC,MAAM,EAAE,YAAY,CAAC,CAQhF;AAED,4DAA4D;AAC5D,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CASxE"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../js/auth/auth.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAY,MAAM,uBAAuB,CAAC;AAEjE,OAAO,EAAe,YAAY,EAAoB,MAAM,kBAAkB,CAAC;AAK/E,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEzC,aAAK,yBAAyB;IAC1B,WAAW,gBAAgB;IAC3B,aAAa,YAAY;IACzB,mBAAmB,wBAAwB;IAC3C,aAAa,kBAAkB;IAC/B,KAAK,UAAU;IACf,YAAY,iBAAiB;CAChC;AA2CD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,cAAc;IACpB,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC;IAC/B,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,aAAa,CAAC;CACzB;AAED,UAAU,UAAU;IAChB,eAAe,EAAE,cAAc,CAAC;IAChC,sBAAsB,EAAE,OAAO,CAAC;CACnC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,cAAc,CAAC,UAAU,CAAC,CAY1D;AAED,UAAU,gBAAgB;IACtB,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,UAAU,eAAe;IACrB,OAAO,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,gBAAgB,GAAG,eAAe,CAAC,CAcjF;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAClC,GAAG,EAAE,QAAQ,EACb,OAAO,UAAQ,EACf,YAAY,GAAE,KAAK,CAAC,yBAAyB,CAAQ,GACtD,OAAO,CAAC,OAAO,CAAC,CAqBlB;AAED;;GAEG;AACH,wBAAgB,OAAO,IAAI,cAAc,CAAC,QAAQ,EAAE,YAAY,CAAC,CAYhE;AAED,2DAA2D;AAC3D,wBAAsB,mBAAmB,CAAC,IAAI,GAAE,IAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAoB1E;AAED,2DAA2D;AAC3D,wBAAgB,UAAU,CAAC,IAAI,GAAE,IAAS,GAAG,cAAc,CAAC,MAAM,EAAE,YAAY,CAAC,CAQhF;AAED,4DAA4D;AAC5D,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAK3D"}
package/dist/auth/auth.js CHANGED
@@ -53,9 +53,9 @@ function shouldRedirectToLogin(message) {
53
53
  /**
54
54
  * Fetch components to use for authentication
55
55
  */
56
- export function useAuthComponents() {
57
- return useQuery(['auth-components'], () => __awaiter(this, void 0, void 0, function* () {
58
- const response = yield request('/api/core/auth-components', {
56
+ export function useAuthConfig() {
57
+ return useQuery(['auth-config'], () => __awaiter(this, void 0, void 0, function* () {
58
+ const response = yield request('/api/core/auth-config', {
59
59
  method: HTTP_METHOD.GET,
60
60
  });
61
61
  return response.json();
@@ -63,26 +63,22 @@ export function useAuthComponents() {
63
63
  }
64
64
  /**
65
65
  * Revoke the current session
66
- *
67
- * @param token current token
68
66
  */
69
- export function revokeSession(token) {
67
+ export function revokeSession() {
70
68
  return __awaiter(this, void 0, void 0, function* () {
71
- if (token) {
72
- try {
73
- const response = yield request('/api/auth/revoke-session', {
74
- method: HTTP_METHOD.POST,
75
- }, token);
76
- if (response.ok) {
77
- const responseData = yield response.json();
78
- return responseData;
79
- }
80
- }
81
- catch (e) {
82
- // eslint-disable-next-line no-console
83
- console.error('Failed to revoke session', e);
69
+ try {
70
+ const response = yield request('/api/auth/revoke-session', {
71
+ method: HTTP_METHOD.POST,
72
+ });
73
+ if (response.ok) {
74
+ const responseData = yield response.json();
75
+ return responseData;
84
76
  }
85
77
  }
78
+ catch (e) {
79
+ // eslint-disable-next-line no-console
80
+ console.error('Failed to revoke session', e);
81
+ }
86
82
  });
87
83
  }
88
84
  /**
@@ -127,7 +123,7 @@ export function useUser() {
127
123
  });
128
124
  }
129
125
  /** Api call to fetch the session token from the backend */
130
- export function getSessionToken() {
126
+ export function requestSessionToken() {
131
127
  return __awaiter(this, arguments, void 0, function* (body = {}) {
132
128
  const res = yield request('/api/auth/session', {
133
129
  body: JSON.stringify(body),
@@ -149,18 +145,18 @@ export function getSessionToken() {
149
145
  export function useSession(body = {}) {
150
146
  return useQuery({
151
147
  queryFn: () => __awaiter(this, void 0, void 0, function* () {
152
- return getSessionToken(body);
148
+ return requestSessionToken(body);
153
149
  }),
154
150
  queryKey: ['session'],
155
151
  refetchOnMount: false,
156
152
  });
157
153
  }
158
154
  /** Api call to verify the session token from the backend */
159
- export function verifySessionToken(token) {
155
+ export function verifySessionToken() {
160
156
  return __awaiter(this, void 0, void 0, function* () {
161
157
  const res = yield request('/api/auth/verify-session', {
162
158
  method: HTTP_METHOD.POST,
163
- }, token);
159
+ });
164
160
  return res.ok;
165
161
  });
166
162
  }
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../js/auth/auth.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../js/auth/auth.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"basic-auth-login.d.ts","sourceRoot":"","sources":["../../../js/auth/basic/basic-auth-login.tsx"],"names":[],"mappings":"AA+HA;;GAEG;AACH,iBAAS,cAAc,IAAI,GAAG,CAAC,OAAO,CA+GrC;AAED,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"basic-auth-login.d.ts","sourceRoot":"","sources":["../../../js/auth/basic/basic-auth-login.tsx"],"names":[],"mappings":"AA8HA;;GAEG;AACH,iBAAS,cAAc,IAAI,GAAG,CAAC,OAAO,CA4GrC;AAED,eAAe,cAAc,CAAC"}
@@ -10,16 +10,15 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
11
  /* eslint-disable react-hooks/exhaustive-deps */
12
12
  import { transparentize } from 'polished';
13
- import { useContext, useEffect, useState } from 'react';
13
+ import { useEffect, useState } from 'react';
14
14
  import { useHistory, useLocation } from 'react-router-dom';
15
15
  import styled from '@darajs/styled-components';
16
16
  import { Button } from '@darajs/ui-components';
17
- import { getSessionToken } from '../../api';
17
+ import { requestSessionToken } from '../../api';
18
18
  import DefaultFallback from '../../components/fallback/default';
19
19
  import Center from '../../shared/center/center';
20
- import { AuthCtx } from '../../shared/context';
21
- import { getTokenKey } from '../../shared/utils';
22
20
  import { verifySessionToken } from '../auth';
21
+ import { getSessionToken, setSessionToken } from '../use-session-token';
23
22
  const Wrapper = styled.div `
24
23
  display: flex;
25
24
  flex: 1 1 0%;
@@ -123,7 +122,6 @@ function BasicAuthLogin() {
123
122
  const [username, setUsername] = useState('');
124
123
  const [password, setPassword] = useState('');
125
124
  const [isError, setIsError] = useState(false);
126
- const { token, setToken } = useContext(AuthCtx);
127
125
  const history = useHistory();
128
126
  const location = useLocation();
129
127
  const queryParams = new URLSearchParams(location.search);
@@ -132,9 +130,9 @@ function BasicAuthLogin() {
132
130
  setIsLoggingIn(true);
133
131
  setIsError(false);
134
132
  try {
135
- const sessionToken = yield getSessionToken({ password, username });
133
+ const sessionToken = yield requestSessionToken({ password, username });
136
134
  if (sessionToken) {
137
- setToken(sessionToken);
135
+ setSessionToken(sessionToken);
138
136
  history.replace(decodeURIComponent(previousLocation));
139
137
  }
140
138
  }
@@ -144,11 +142,9 @@ function BasicAuthLogin() {
144
142
  setIsLoggingIn(false);
145
143
  });
146
144
  useEffect(() => {
147
- const key = getTokenKey();
148
145
  // If we landed on this page with a token already, verify it
149
- if (token) {
150
- // Grab the token from local storage again as it may have changed
151
- verifySessionToken(localStorage.getItem(key)).then((verified) => {
146
+ if (getSessionToken()) {
147
+ verifySessionToken().then((verified) => {
152
148
  // we already have a valid token, redirect
153
149
  if (verified) {
154
150
  history.replace(decodeURIComponent(previousLocation));
@@ -1 +1 @@
1
- {"version":3,"file":"basic-auth-login.js","sourceRoot":"","sources":["../../../js/auth/basic/basic-auth-login.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"basic-auth-login.js","sourceRoot":"","sources":["../../../js/auth/basic/basic-auth-login.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"basic-auth-logout.d.ts","sourceRoot":"","sources":["../../../js/auth/basic/basic-auth-logout.tsx"],"names":[],"mappings":"AAMA;;GAEG;AACH,iBAAS,eAAe,IAAI,GAAG,CAAC,OAAO,CAWtC;AAED,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"basic-auth-logout.d.ts","sourceRoot":"","sources":["../../../js/auth/basic/basic-auth-logout.tsx"],"names":[],"mappings":"AAOA;;GAEG;AACH,iBAAS,eAAe,IAAI,GAAG,CAAC,OAAO,CAStC;AAED,eAAe,eAAe,CAAC"}
@@ -1,15 +1,14 @@
1
1
  /* eslint-disable react-hooks/exhaustive-deps */
2
2
  import { useEffect } from 'react';
3
3
  import { revokeSession } from '../../auth/auth';
4
- import { useAuthCtx } from '../../auth/auth-context';
4
+ import { setSessionToken } from '../use-session-token';
5
5
  /**
6
6
  * Auth component that wipes user token in AuthContext on mount and redirects to /login
7
7
  */
8
8
  function BasicAuthLogout() {
9
- const { setToken, token } = useAuthCtx();
10
9
  useEffect(() => {
11
- revokeSession(token).then(() => {
12
- setToken(null);
10
+ revokeSession().then(() => {
11
+ setSessionToken(null);
13
12
  window.location.href = `${window.dara.base_url}/login`;
14
13
  });
15
14
  }, []);
@@ -1 +1 @@
1
- {"version":3,"file":"basic-auth-logout.js","sourceRoot":"","sources":["../../../js/auth/basic/basic-auth-logout.tsx"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD;;GAEG;AACH,SAAS,eAAe;IACpB,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,UAAU,EAAE,CAAC;IAEzC,SAAS,CAAC,GAAG,EAAE;QACX,aAAa,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YAC3B,QAAQ,CAAC,IAAI,CAAC,CAAC;YACf,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,QAAQ,CAAC;QAC3D,CAAC,CAAC,CAAC;IACP,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"basic-auth-logout.js","sourceRoot":"","sources":["../../../js/auth/basic/basic-auth-logout.tsx"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD;;GAEG;AACH,SAAS,eAAe;IACpB,SAAS,CAAC,GAAG,EAAE;QACX,aAAa,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YACtB,eAAe,CAAC,IAAI,CAAC,CAAC;YACtB,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,QAAQ,CAAC;QAC3D,CAAC,CAAC,CAAC;IACP,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,eAAe,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"default-auth-login.d.ts","sourceRoot":"","sources":["../../../js/auth/default/default-auth-login.tsx"],"names":[],"mappings":"AAWA;;GAEG;AACH,iBAAS,gBAAgB,IAAI,GAAG,CAAC,OAAO,CAiDvC;AAED,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"default-auth-login.d.ts","sourceRoot":"","sources":["../../../js/auth/default/default-auth-login.tsx"],"names":[],"mappings":"AAUA;;GAEG;AACH,iBAAS,gBAAgB,IAAI,GAAG,CAAC,OAAO,CAuCvC;AAED,eAAe,gBAAgB,CAAC"}