@asgardeo/auth-spa 0.3.12 → 0.4.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/README.md +31 -0
  2. package/dist/asgardeo-spa.production.esm.js +46 -10
  3. package/dist/asgardeo-spa.production.esm.js.map +1 -1
  4. package/dist/asgardeo-spa.production.js +45 -9
  5. package/dist/asgardeo-spa.production.js.map +1 -1
  6. package/dist/asgardeo-spa.production.min.js +1 -1
  7. package/dist/asgardeo-spa.production.min.js.map +1 -1
  8. package/dist/polyfilled/asgardeo-spa.production.esm.js +75 -39
  9. package/dist/polyfilled/asgardeo-spa.production.esm.js.map +1 -1
  10. package/dist/polyfilled/asgardeo-spa.production.js +75 -39
  11. package/dist/polyfilled/asgardeo-spa.production.js.map +1 -1
  12. package/dist/polyfilled/asgardeo-spa.production.min.js +1 -1
  13. package/dist/polyfilled/asgardeo-spa.production.min.js.map +1 -1
  14. package/dist/src/client.d.ts +22 -1
  15. package/dist/src/client.d.ts.map +1 -1
  16. package/dist/src/client.js +29 -2
  17. package/dist/src/client.js.map +1 -1
  18. package/dist/src/clients/main-thread-client.d.ts.map +1 -1
  19. package/dist/src/clients/main-thread-client.js +19 -5
  20. package/dist/src/clients/main-thread-client.js.map +1 -1
  21. package/dist/src/clients/web-worker-client.d.ts.map +1 -1
  22. package/dist/src/clients/web-worker-client.js +27 -1
  23. package/dist/src/clients/web-worker-client.js.map +1 -1
  24. package/dist/src/constants/messages-types.d.ts +2 -0
  25. package/dist/src/constants/messages-types.d.ts.map +1 -1
  26. package/dist/src/constants/messages-types.js +2 -0
  27. package/dist/src/constants/messages-types.js.map +1 -1
  28. package/dist/src/helpers/authentication-helper.d.ts +4 -5
  29. package/dist/src/helpers/authentication-helper.d.ts.map +1 -1
  30. package/dist/src/helpers/authentication-helper.js +16 -20
  31. package/dist/src/helpers/authentication-helper.js.map +1 -1
  32. package/dist/src/http-client/clients/axios-http-client.d.ts.map +1 -1
  33. package/dist/src/http-client/clients/axios-http-client.js +1 -0
  34. package/dist/src/http-client/clients/axios-http-client.js.map +1 -1
  35. package/dist/src/models/client.d.ts +4 -1
  36. package/dist/src/models/client.d.ts.map +1 -1
  37. package/dist/src/models/http-client.d.ts +2 -0
  38. package/dist/src/models/http-client.d.ts.map +1 -1
  39. package/dist/src/models/message.d.ts +2 -2
  40. package/dist/src/models/message.d.ts.map +1 -1
  41. package/dist/src/models/web-worker.d.ts +3 -1
  42. package/dist/src/models/web-worker.d.ts.map +1 -1
  43. package/dist/src/models/web-worker.js.map +1 -1
  44. package/dist/src/public-api.d.ts +3 -0
  45. package/dist/src/public-api.d.ts.map +1 -1
  46. package/dist/src/public-api.js +5 -0
  47. package/dist/src/public-api.js.map +1 -1
  48. package/dist/src/worker/worker-core.d.ts.map +1 -1
  49. package/dist/src/worker/worker-core.js +23 -5
  50. package/dist/src/worker/worker-core.js.map +1 -1
  51. package/dist/src/worker/worker-receiver.d.ts.map +1 -1
  52. package/dist/src/worker/worker-receiver.js +9 -1
  53. package/dist/src/worker/worker-receiver.js.map +1 -1
  54. package/dist/tsconfig.tsbuildinfo +1 -1
  55. package/package.json +2 -2
  56. package/src/client.ts +31 -4
  57. package/src/clients/main-thread-client.ts +28 -5
  58. package/src/clients/web-worker-client.ts +33 -0
  59. package/src/constants/messages-types.ts +2 -0
  60. package/src/helpers/authentication-helper.ts +13 -34
  61. package/src/http-client/clients/axios-http-client.ts +2 -0
  62. package/src/models/client.ts +4 -0
  63. package/src/models/http-client.ts +2 -0
  64. package/src/models/message.ts +4 -0
  65. package/src/models/web-worker.ts +3 -0
  66. package/src/public-api.ts +7 -0
  67. package/src/worker/worker-core.ts +33 -8
  68. package/src/worker/worker-receiver.ts +9 -0
@@ -21,6 +21,7 @@ import {
21
21
  AuthClientConfig,
22
22
  AuthorizationURLParams,
23
23
  BasicUserInfo,
24
+ CryptoHelper,
24
25
  CustomGrantConfig,
25
26
  DecodedIDTokenPayload,
26
27
  FetchResponse,
@@ -62,21 +63,35 @@ export const WebWorkerCore = async (
62
63
 
63
64
  const _httpClient: HttpClientInstance = HttpClient.getInstance();
64
65
 
65
- _httpClient?.init && (await _httpClient.init(true, _authenticationHelper.attachToken));
66
+ const attachToken = async (request: HttpRequestConfig): Promise<void> => {
67
+ const requestConfig = { attachToken: true, ...request };
68
+ if (requestConfig.attachToken) {
69
+ if(requestConfig.shouldAttachIDPAccessToken) {
70
+ request.headers = {
71
+ ...request.headers,
72
+ Authorization: `Bearer ${ await _authenticationHelper.getIDPAccessToken() }`
73
+ };
74
+ } else {
75
+ request.headers = {
76
+ ...request.headers,
77
+ Authorization: `Bearer ${ await _authenticationHelper.getAccessToken() }`
78
+ };
79
+ }
80
+ }
81
+ };
82
+
83
+ _httpClient?.init && (await _httpClient.init(true, attachToken));
66
84
 
67
85
  const setHttpRequestStartCallback = (callback: () => void): void => {
68
- _authenticationHelper.setHttpRequestStartCallback(_httpClient, callback);
86
+ _httpClient?.setHttpRequestStartCallback && _httpClient.setHttpRequestStartCallback(callback);
69
87
  };
70
88
 
71
- const setHttpRequestSuccessCallback = (
72
- callback: (response: HttpResponse) => void
73
- ): void => {
74
- _authenticationHelper.setHttpRequestSuccessCallback(_httpClient, callback);
89
+ const setHttpRequestSuccessCallback = (callback: (response: HttpResponse) => void): void => {
90
+ _httpClient?.setHttpRequestSuccessCallback && _httpClient.setHttpRequestSuccessCallback(callback);
75
91
  };
76
92
 
77
93
  const setHttpRequestFinishCallback = (callback: () => void): void => {
78
- _httpClient?.setHttpRequestFinishCallback &&
79
- _httpClient.setHttpRequestFinishCallback(callback);
94
+ _httpClient?.setHttpRequestFinishCallback && _httpClient.setHttpRequestFinishCallback(callback);
80
95
  };
81
96
 
82
97
  const httpRequest = async (
@@ -179,6 +194,14 @@ export const WebWorkerCore = async (
179
194
  return _authenticationHelper.getDecodedIDToken();
180
195
  };
181
196
 
197
+ const getCryptoHelper = async (): Promise<CryptoHelper> => {
198
+ return _authenticationHelper.getCryptoHelper();
199
+ };
200
+
201
+ const getDecodedIDPIDToken = async (): Promise<DecodedIDTokenPayload> => {
202
+ return _authenticationHelper.getDecodedIDPIDToken();
203
+ };
204
+
182
205
  const getIDToken = async (): Promise<string> => {
183
206
  return _authenticationHelper.getIDToken();
184
207
  };
@@ -217,6 +240,8 @@ export const WebWorkerCore = async (
217
240
  getAuthorizationURL,
218
241
  getBasicUserInfo,
219
242
  getConfigData,
243
+ getCryptoHelper,
244
+ getDecodedIDPIDToken,
220
245
  getDecodedIDToken,
221
246
  getIDToken,
222
247
  getOIDCServiceEndpoints,
@@ -29,6 +29,7 @@ import {
29
29
  GET_AUTH_URL,
30
30
  GET_BASIC_USER_INFO,
31
31
  GET_CONFIG_DATA,
32
+ GET_CRYPTO_HELPER,
32
33
  GET_DECODED_ID_TOKEN,
33
34
  GET_ID_TOKEN,
34
35
  GET_OIDC_SERVICE_ENDPOINTS,
@@ -195,6 +196,14 @@ export const workerReceiver = (
195
196
  port.postMessage(MessageUtils.generateFailureMessage(error));
196
197
  }
197
198
 
199
+ break;
200
+ case GET_CRYPTO_HELPER:
201
+ try {
202
+ port.postMessage(MessageUtils.generateSuccessMessage(await webWorker.getCryptoHelper()));
203
+ } catch (error) {
204
+ port.postMessage(MessageUtils.generateFailureMessage(error));
205
+ }
206
+
198
207
  break;
199
208
  case GET_ID_TOKEN:
200
209
  try {