@darajs/core 1.13.0 → 1.14.0-alpha.0

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 (94) hide show
  1. package/README.md +15 -0
  2. package/dist/api/http.d.ts +1 -10
  3. package/dist/api/http.d.ts.map +1 -1
  4. package/dist/api/http.js +37 -7
  5. package/dist/api/http.js.map +1 -1
  6. package/dist/api/index.d.ts +2 -2
  7. package/dist/api/index.d.ts.map +1 -1
  8. package/dist/api/index.js +1 -1
  9. package/dist/api/index.js.map +1 -1
  10. package/dist/auth/auth-wrapper.d.ts.map +1 -1
  11. package/dist/auth/auth-wrapper.js +21 -20
  12. package/dist/auth/auth-wrapper.js.map +1 -1
  13. package/dist/auth/auth.d.ts +3 -5
  14. package/dist/auth/auth.d.ts.map +1 -1
  15. package/dist/auth/auth.js +16 -20
  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 +8 -12
  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/components/fallback/dots.d.ts +0 -1
  35. package/dist/components/fallback/dots.d.ts.map +1 -1
  36. package/dist/{dara_core-1.13.0-py3-none-any.whl → dara_core-1.14.0a0-py3-none-any.whl} +0 -0
  37. package/dist/devtools/floating-button.d.ts +0 -1
  38. package/dist/devtools/floating-button.d.ts.map +1 -1
  39. package/dist/index.d.ts +3 -3
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/index.js +1 -1
  42. package/dist/index.js.map +1 -1
  43. package/dist/shared/context/direction-context.d.ts +0 -1
  44. package/dist/shared/context/direction-context.d.ts.map +1 -1
  45. package/dist/shared/context/display-context.d.ts +0 -1
  46. package/dist/shared/context/display-context.d.ts.map +1 -1
  47. package/dist/shared/context/importers-context.d.ts +0 -1
  48. package/dist/shared/context/importers-context.d.ts.map +1 -1
  49. package/dist/shared/context/index.d.ts +0 -1
  50. package/dist/shared/context/index.d.ts.map +1 -1
  51. package/dist/shared/context/index.js +0 -1
  52. package/dist/shared/context/index.js.map +1 -1
  53. package/dist/shared/context/registries-context.d.ts +0 -1
  54. package/dist/shared/context/registries-context.d.ts.map +1 -1
  55. package/dist/shared/context/request-extras-context.d.ts +0 -2
  56. package/dist/shared/context/request-extras-context.d.ts.map +1 -1
  57. package/dist/shared/context/request-extras-context.js +2 -8
  58. package/dist/shared/context/request-extras-context.js.map +1 -1
  59. package/dist/shared/context/websocket-context.d.ts +0 -1
  60. package/dist/shared/context/websocket-context.d.ts.map +1 -1
  61. package/dist/shared/global-state-store.d.ts +51 -0
  62. package/dist/shared/global-state-store.d.ts.map +1 -0
  63. package/dist/shared/global-state-store.js +135 -0
  64. package/dist/shared/global-state-store.js.map +1 -0
  65. package/dist/shared/index.d.ts +1 -1
  66. package/dist/shared/index.d.ts.map +1 -1
  67. package/dist/shared/index.js +1 -1
  68. package/dist/shared/index.js.map +1 -1
  69. package/dist/shared/interactivity/derived-variable.d.ts.map +1 -1
  70. package/dist/shared/interactivity/derived-variable.js +3 -3
  71. package/dist/shared/interactivity/derived-variable.js.map +1 -1
  72. package/dist/shared/interactivity/persistence.d.ts +2 -3
  73. package/dist/shared/interactivity/persistence.d.ts.map +1 -1
  74. package/dist/shared/interactivity/persistence.js +10 -13
  75. package/dist/shared/interactivity/persistence.js.map +1 -1
  76. package/dist/shared/private-route/private-route.js +1 -1
  77. package/dist/shared/private-route/private-route.js.map +1 -1
  78. package/dist/shared/template-root/template-root.js +1 -1
  79. package/dist/shared/template-root/template-root.js.map +1 -1
  80. package/dist/shared/utils/inject-css.d.ts +0 -1
  81. package/dist/shared/utils/inject-css.d.ts.map +1 -1
  82. package/dist/shared/utils/use-action.js +2 -2
  83. package/dist/shared/utils/use-action.js.map +1 -1
  84. package/dist/types/core.d.ts +0 -1
  85. package/dist/types/core.d.ts.map +1 -1
  86. package/dist/types/utils.d.ts.map +1 -1
  87. package/dist/types/utils.js +3 -2
  88. package/dist/types/utils.js.map +1 -1
  89. package/dist/umd/dara.core.umd.js +722 -778
  90. package/package.json +9 -11
  91. package/dist/auth/auth-context.d.ts +0 -22
  92. package/dist/auth/auth-context.d.ts.map +0 -1
  93. package/dist/auth/auth-context.js +0 -18
  94. package/dist/auth/auth-context.js.map +0 -1
package/README.md CHANGED
@@ -79,6 +79,21 @@ This repository covers the Dara Application Framework first-party packages.
79
79
  - `dara-components`: Components for the Dara Framework.
80
80
  - `create-dara-app`: A CLI tool for creating new Dara applications.
81
81
 
82
+ And the supporting UI packages and tools.
83
+
84
+ - `eslint-config` - base ESLint configuration
85
+ - `prettier-config` - base Prettier configuration
86
+ - `stylelint-config` - base Stylelint configuration
87
+ - `styled-components` - styled-components theme
88
+ - `ui-causal-graph-editor` - causal graph editor component
89
+ - `ui-code-editor` - code editor component
90
+ - `ui-components` - base UI components
91
+ - `ui-hierarchy-viewer` - hierarchy viewer component
92
+ - `ui-icons` - icon components for Dara packages
93
+ - `ui-notifications` - notification components
94
+ - `ui-utils` - miscellaneous utility functions
95
+ - `ui-widgets` - widget components
96
+
82
97
  More information on the repository structure can be found in the [CONTRIBUTING.md](https://github.com/causalens/dara/blob/master/CONTRIBUTING.md) file.
83
98
 
84
99
  ## License
@@ -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":";;;;;;;;;;;;;;;;;;;;AAAA,iDAAiD;AACjD,OAAO,SAAS,MAAM,kBAAkB,CAAC;AAiBzC;;;GAGG;AACH,MAAM,OAAO,yBAAyB;IAGlC,YAAY,MAAqB;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,cAAc;;QACV,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC,MAAM,CAAC;QACvB,CAAC;QAED,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE5C,4BAA4B;QAC5B,IAAI,MAAA,YAAY,CAAC,OAAO,0CAAE,OAAO,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC1D,YAAY,CAAC,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QACzE,CAAC;QAED,OAAO,YAAY,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,MAAM;QACF,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAE3C,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IACxC,CAAC;CACJ;AAED;;;;;;GAMG;AACH,MAAM,UAAgB,OAAO,CAAC,GAAiB,EAAE,OAAoB,EAAE,MAAsB;;;QACzF,MAAM,YAAY,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,CAAC;QAChF,MAAM,aAAa,GAAG,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,iCAAM,OAAO,GAAK,MAAM,CAAC,OAAO,EAAG,CAAC,CAAC,OAAO,CAAC;QAEzG,MAAM,EAAE,OAAO,KAAe,aAAa,EAAvB,KAAK,UAAK,aAAa,EAArC,WAAqB,CAAgB,CAAC;QAE5C,MAAM,gBAAgB,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;QAE9C,gCAAgC;QAChC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QACvD,CAAC;QAED,8DAA8D;QAC9D,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,cAAc,CAAC,KAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,CAAA,IAAI,CAAC,CAAC,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,aAAY,QAAQ,CAAC,EAAE,CAAC;YAC7G,gBAAgB,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QAC7D,CAAC;QAED,yCAAyC;QACzC,IAAI,YAAY,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;YACzD,gBAAgB,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,YAAY,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,OAAO,GAAW,MAAA,MAAA,MAAM,CAAC,IAAI,0CAAE,QAAQ,mCAAI,EAAE,CAAC;QACpD,MAAM,SAAS,GAAG,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;QAEvE,OAAO,KAAK,CAAC,OAAO,GAAG,SAAS,kBAC5B,OAAO,EAAE,gBAAgB,IACtB,KAAK,EACV,CAAC;IACP,CAAC;CAAA"}
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"}
@@ -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":"AAAA,OAAO,EAAE,SAAS,EAA2C,MAAM,OAAO,CAAC;AAa3E,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"}
@@ -10,17 +10,16 @@ var __rest = (this && this.__rest) || function (s, e) {
10
10
  return t;
11
11
  };
12
12
  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';
13
+ import { useContext, useEffect, useRef, useState } from 'react';
15
14
  import { Route, Switch } from 'react-router-dom';
16
15
  import DefaultFallback from '../components/fallback/default';
17
16
  import ErrorPage from '../pages/error-page';
18
17
  import Center from '../shared/center/center';
19
18
  import { ImportersCtx } from '../shared/context';
19
+ import globalStore from '../shared/global-state-store';
20
20
  import PrivateRoute from '../shared/private-route/private-route';
21
21
  import { getToken, getTokenKey } from '../shared/utils';
22
22
  import { useAuthComponents } from './auth';
23
- import AuthContext from './auth-context';
24
23
  /**
25
24
  * Simplified version of DynamicComponent, just for the auth components.
26
25
  * This is because we can't use the component registry for auth components, since the component registry operates
@@ -45,7 +44,7 @@ function DynamicAuthComponent(props) {
45
44
  .catch((err) => {
46
45
  throw new Error(`Failed to import module ${props.component.py_module}`, err);
47
46
  });
48
- }, [props.component]);
47
+ }, [props.component, importers]);
49
48
  return component;
50
49
  }
51
50
  /**
@@ -55,28 +54,30 @@ function DynamicAuthComponent(props) {
55
54
  * @param props - the component props
56
55
  */
57
56
  function AuthWrapper(props) {
58
- const [token, setToken] = useState(() => getToken());
59
57
  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);
58
+ const isMounted = useRef(false);
59
+ // set initial token from local storage as soon as we render
60
+ if (!isMounted.current) {
61
+ isMounted.current = true;
62
+ globalStore.setValue('sessionToken', getToken());
74
63
  }
64
+ useEffect(() => {
65
+ // sync the token with local storage
66
+ return globalStore.subscribe('sessionToken', (newToken) => {
67
+ const key = getTokenKey();
68
+ if (newToken) {
69
+ localStorage.setItem(key, newToken);
70
+ }
71
+ else {
72
+ localStorage.removeItem(key);
73
+ }
74
+ });
75
+ }, []);
75
76
  if (isLoading) {
76
77
  return (_jsx(Center, { children: _jsx(DefaultFallback, {}) }));
77
78
  }
78
79
  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 }) })] }) }));
80
+ 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
81
  }
81
82
  export default AuthWrapper;
82
83
  //# 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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"}
@@ -34,10 +34,8 @@ interface SuccessResponse {
34
34
  }
35
35
  /**
36
36
  * Revoke the current session
37
- *
38
- * @param token current token
39
37
  */
40
- export declare function revokeSession(token?: string): Promise<RedirectResponse | SuccessResponse>;
38
+ export declare function revokeSession(): Promise<RedirectResponse | SuccessResponse>;
41
39
  /**
42
40
  * Helper function to handle auth errors in a response
43
41
  *
@@ -51,10 +49,10 @@ export declare function handleAuthErrors(res: Response, toLogin?: boolean, ignor
51
49
  */
52
50
  export declare function useUser(): UseQueryResult<UserData, RequestError>;
53
51
  /** Api call to fetch the session token from the backend */
54
- export declare function getSessionToken(body?: User): Promise<string>;
52
+ export declare function requestSessionToken(body?: User): Promise<string>;
55
53
  /** Api call to fetch the session token from the backend */
56
54
  export declare function useSession(body?: User): UseQueryResult<string, RequestError>;
57
55
  /** Api call to verify the session token from the backend */
58
- export declare function verifySessionToken(token: string): Promise<boolean>;
56
+ export declare function verifySessionToken(): Promise<boolean>;
59
57
  export {};
60
58
  //# 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;;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;;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
@@ -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,23 +130,21 @@ 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
  }
141
- catch (_b) {
139
+ catch (_a) {
142
140
  setIsError(true);
143
141
  }
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":";;;;;;;;;;AAAA,gDAAgD;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,eAAe,MAAM,+BAA+B,CAAC;AAC5D,OAAO,MAAM,MAAM,wBAAwB,CAAC;AAE5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAExE,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;kBAQR,CAAC,KAAK,EAAE,EAAE,CACpB,qDAAqD,cAAc,CAC/D,GAAG,EACH,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAChC,QAAQ,cAAc,CACnB,GAAG,EACH,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAC3B,4DAA4D,cAAc,CACvE,GAAG,EACH,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAC3B,QAAQ,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ;CACrE,CAAC;AAEF,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAA;;;aAGV,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI;;wBAEvB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;;kBAEzC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM;;;;;;;;CAQrD,CAAC;AAEF,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAA;;CAE7B,CAAC;AAEF,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;;;;CAIvB,CAAC;AAEF,MAAM,SAAS,GAAG,MAAM,CAAC,EAAE,CAAuB;;;;;;aAMrC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;;;kBAG9B,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;CAClE,CAAC;AAEF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;;;CAGzB,CAAC;AAEF,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAsB;;;;;;;;;;;;aAYzC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI;;wBAEvB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;;;;;wBAKnC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;0BACjC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;;;;;;4BAM7E,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;8BACjC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;;;CAG9G,CAAC;AAEF,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;;;;;;;;yBAQV,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO;;;;CAI7D,CAAC;AAEF;;GAEG;AACH,SAAS,cAAc;;IACnB,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEtD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IACrD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IACrD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE9C,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,MAAM,WAAW,GAAG,IAAI,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEzD,MAAM,gBAAgB,GAAG,MAAA,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,mCAAI,GAAG,CAAC;IAE5D,MAAM,KAAK,GAAG,GAAwB,EAAE;QACpC,cAAc,CAAC,IAAI,CAAC,CAAC;QACrB,UAAU,CAAC,KAAK,CAAC,CAAC;QAElB,IAAI,CAAC;YACD,MAAM,YAAY,GAAW,MAAM,mBAAmB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;YAE/E,IAAI,YAAY,EAAE,CAAC;gBACf,eAAe,CAAC,YAAY,CAAC,CAAC;gBAC9B,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAC1D,CAAC;QACL,CAAC;QAAC,WAAM,CAAC;YACL,UAAU,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;QAED,cAAc,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC,CAAA,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACX,4DAA4D;QAC5D,IAAI,eAAe,EAAE,EAAE,CAAC;YACpB,kBAAkB,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACnC,0CAA0C;gBAC1C,IAAI,QAAQ,EAAE,CAAC;oBACX,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAC;gBAC1D,CAAC;qBAAM,CAAC;oBACJ,mBAAmB,CAAC,KAAK,CAAC,CAAC;gBAC/B,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;aAAM,CAAC;YACJ,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,wDAAwD;IACxD,IAAI,gBAAgB,EAAE,CAAC;QACnB,OAAO,CACH,KAAC,MAAM,cACH,KAAC,eAAe,KAAG,GACd,CACZ,CAAC;IACN,CAAC;IAED,OAAO,CACH,KAAC,OAAO,cACJ,KAAC,IAAI,cACD,KAAC,WAAW,cACR,MAAC,IAAI,IACD,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;wBACZ,CAAC,CAAC,cAAc,EAAE,CAAC;wBACnB,KAAK,EAAE,CAAC;oBACZ,CAAC,aAED,0BACI,KAAC,KAAK,IAAC,OAAO,EAAC,UAAU,yBAAiB,EAC1C,KAAC,WAAW,cACA,OAAO,EACf,EAAE,EAAC,UAAU,EACb,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC5C,QAAQ,QACR,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,QAAQ,GACjB,IACA,EAEN,0BACI,KAAC,KAAK,IAAC,OAAO,EAAC,UAAU,yBAAiB,EAC1C,KAAC,WAAW,cACA,OAAO,EACf,EAAE,EAAC,UAAU,EACb,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC5C,QAAQ,QACR,IAAI,EAAC,UAAU,EACf,KAAK,EAAE,QAAQ,GACjB,IACA,EACN,KAAC,SAAS,eAAU,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,+CAE9C,EACZ,wBACI,KAAC,YAAY,IACT,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EACzB,OAAO,EAAC,SAAS,EACjB,IAAI,EAAC,QAAQ,wBAGF,GACb,IACH,GACG,GACX,GACD,CACb,CAAC;AACN,CAAC;AAED,eAAe,cAAc,CAAC"}
@@ -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"}
@@ -9,43 +9,35 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  };
10
10
  import { jsx as _jsx } from "react/jsx-runtime";
11
11
  /* eslint-disable react-hooks/exhaustive-deps */
12
- import { useContext, useEffect } from 'react';
12
+ import { useEffect } from 'react';
13
13
  import { useHistory, useLocation } from 'react-router-dom';
14
14
  import DefaultFallback from '../../components/fallback/default';
15
15
  import Center from '../../shared/center/center';
16
- import { AuthCtx } from '../../shared/context';
17
- import { getTokenKey } from '../../shared/utils';
18
- import { getSessionToken, verifySessionToken } from '../auth';
16
+ import { requestSessionToken, verifySessionToken } from '../auth';
17
+ import { getSessionToken, setSessionToken } from '../use-session-token';
19
18
  /**
20
19
  * The Login component gets a new session token from the backend and stores it in local storage
21
20
  */
22
21
  function DefaultAuthLogin() {
23
22
  var _a;
24
- const { token, setToken } = useContext(AuthCtx);
25
23
  const history = useHistory();
26
24
  const location = useLocation();
27
25
  const queryParams = new URLSearchParams(location.search);
28
26
  const previousLocation = (_a = queryParams.get('referrer')) !== null && _a !== void 0 ? _a : '/';
29
27
  function getNewToken() {
30
28
  return __awaiter(this, void 0, void 0, function* () {
31
- const sessionToken = yield getSessionToken({});
29
+ const sessionToken = yield requestSessionToken({});
32
30
  // in default auth this always succeeds
33
31
  if (sessionToken) {
34
- setToken(sessionToken);
32
+ setSessionToken(sessionToken);
35
33
  history.replace(decodeURIComponent(previousLocation));
36
34
  }
37
35
  });
38
36
  }
39
37
  useEffect(() => {
40
- const key = getTokenKey();
41
38
  // If we landed on this page with a token already, verify it
42
- if (token) {
43
- const storedToken = localStorage.getItem(key);
44
- if (token !== undefined && token !== null && (!storedToken || storedToken === 'undefined')) {
45
- localStorage.setItem(key, token);
46
- }
47
- // Grab the token from local storage again as it may have changed
48
- verifySessionToken(localStorage.getItem(key)).then((verified) => {
39
+ if (getSessionToken()) {
40
+ verifySessionToken().then((verified) => {
49
41
  // we already have a valid token, redirect
50
42
  if (verified) {
51
43
  history.replace(decodeURIComponent(previousLocation));
@@ -1 +1 @@
1
- {"version":3,"file":"default-auth-login.js","sourceRoot":"","sources":["../../../js/auth/default/default-auth-login.tsx"],"names":[],"mappings":";;;;;;;;;;AAAA,gDAAgD;AAChD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,eAAe,MAAM,+BAA+B,CAAC;AAC5D,OAAO,MAAM,MAAM,wBAAwB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE9D;;GAEG;AACH,SAAS,gBAAgB;;IACrB,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IAEhD,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,MAAM,WAAW,GAAG,IAAI,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEzD,MAAM,gBAAgB,GAAG,MAAA,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,mCAAI,GAAG,CAAC;IAE5D,SAAe,WAAW;;YACtB,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,EAAE,CAAC,CAAC;YAC/C,uCAAuC;YACvC,IAAI,YAAY,EAAE,CAAC;gBACf,QAAQ,CAAC,YAAY,CAAC,CAAC;gBACvB,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAC1D,CAAC;QACL,CAAC;KAAA;IAED,SAAS,CAAC,GAAG,EAAE;QACX,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC;QAE1B,4DAA4D;QAC5D,IAAI,KAAK,EAAE,CAAC;YACR,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC9C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,CAAC,WAAW,IAAI,WAAW,KAAK,WAAW,CAAC,EAAE,CAAC;gBACzF,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACrC,CAAC;YAED,iEAAiE;YACjE,kBAAkB,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;gBAC5D,0CAA0C;gBAC1C,IAAI,QAAQ,EAAE,CAAC;oBACX,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAC;gBAC1D,CAAC;qBAAM,CAAC;oBACJ,6BAA6B;oBAC7B,WAAW,EAAE,CAAC;gBAClB,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;aAAM,CAAC;YACJ,6BAA6B;YAC7B,WAAW,EAAE,CAAC;QAClB,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACH,KAAC,MAAM,cACH,KAAC,eAAe,KAAG,GACd,CACZ,CAAC;AACN,CAAC;AAED,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"default-auth-login.js","sourceRoot":"","sources":["../../../js/auth/default/default-auth-login.tsx"],"names":[],"mappings":";;;;;;;;;;AAAA,gDAAgD;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,eAAe,MAAM,+BAA+B,CAAC;AAC5D,OAAO,MAAM,MAAM,wBAAwB,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAExE;;GAEG;AACH,SAAS,gBAAgB;;IACrB,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,MAAM,WAAW,GAAG,IAAI,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEzD,MAAM,gBAAgB,GAAG,MAAA,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,mCAAI,GAAG,CAAC;IAE5D,SAAe,WAAW;;YACtB,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,EAAE,CAAC,CAAC;YACnD,uCAAuC;YACvC,IAAI,YAAY,EAAE,CAAC;gBACf,eAAe,CAAC,YAAY,CAAC,CAAC;gBAC9B,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAC1D,CAAC;QACL,CAAC;KAAA;IAED,SAAS,CAAC,GAAG,EAAE;QACX,4DAA4D;QAC5D,IAAI,eAAe,EAAE,EAAE,CAAC;YACpB,kBAAkB,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACnC,0CAA0C;gBAC1C,IAAI,QAAQ,EAAE,CAAC;oBACX,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAC;gBAC1D,CAAC;qBAAM,CAAC;oBACJ,6BAA6B;oBAC7B,WAAW,EAAE,CAAC;gBAClB,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;aAAM,CAAC;YACJ,6BAA6B;YAC7B,WAAW,EAAE,CAAC;QAClB,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACH,KAAC,MAAM,cACH,KAAC,eAAe,KAAG,GACd,CACZ,CAAC;AACN,CAAC;AAED,eAAe,gBAAgB,CAAC"}
@@ -1,5 +1,5 @@
1
- export { default as AuthCtx, useAuthCtx, useSessionToken } from './auth-context';
2
- export { verifySessionToken, useUser, useSession, handleAuthErrors, getSessionToken, revokeSession } from './auth';
1
+ export { getSessionToken, useSessionToken } from './use-session-token';
2
+ export { verifySessionToken, useUser, useSession, handleAuthErrors, requestSessionToken, revokeSession } from './auth';
3
3
  export { default as AuthWrapper } from './auth-wrapper';
4
4
  export { default as BasicAuthLogin } from './basic/basic-auth-login';
5
5
  export { default as BasicAuthLogout } from './basic/basic-auth-logout';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../js/auth/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACnH,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../js/auth/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvH,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,8BAA8B,CAAC"}