@sudoplatform/sudo-user 9.0.2 → 10.0.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 (50) hide show
  1. package/docs/.nojekyll +1 -0
  2. package/docs/assets/highlight.css +22 -0
  3. package/docs/assets/icons.css +1043 -0
  4. package/docs/assets/{images/icons.png → icons.png} +0 -0
  5. package/docs/assets/{images/icons@2x.png → icons@2x.png} +0 -0
  6. package/docs/assets/main.js +52 -0
  7. package/docs/assets/search.js +1 -0
  8. package/docs/assets/style.css +1388 -0
  9. package/docs/assets/{images/widgets.png → widgets.png} +0 -0
  10. package/docs/assets/{images/widgets@2x.png → widgets@2x.png} +0 -0
  11. package/docs/classes/AlreadyRegisteredError.html +8 -0
  12. package/docs/classes/DefaultSudoUserClient.html +68 -0
  13. package/docs/classes/IdentityServiceConfigNotFoundError.html +10 -0
  14. package/docs/classes/LocalAuthenticationProvider.html +12 -0
  15. package/docs/classes/TESTAuthenticationProvider.html +11 -0
  16. package/docs/index.html +44 -159
  17. package/docs/interfaces/AuthenticationProvider.html +6 -0
  18. package/docs/interfaces/AuthenticationTokens.html +7 -0
  19. package/docs/interfaces/SudoUserClient.html +90 -0
  20. package/docs/modules.html +1 -143
  21. package/lib/client/apiClient.js +9 -6
  22. package/lib/core/auth-store.js +5 -1
  23. package/lib/core/key-manager.js +2 -1
  24. package/lib/core/sdk-config.d.ts +17 -3
  25. package/lib/core/sdk-config.js +23 -8
  26. package/lib/gen/graphql-types.d.ts +9 -9
  27. package/lib/index.d.ts +1 -1
  28. package/lib/index.js +20 -15
  29. package/lib/sdk.d.ts +1 -0
  30. package/lib/sdk.js +18 -0
  31. package/lib/user/auth-provider.js +1 -1
  32. package/lib/user/auth.d.ts +1 -0
  33. package/lib/user/auth.js +6 -3
  34. package/lib/user/error.d.ts +13 -1
  35. package/lib/user/error.js +31 -4
  36. package/lib/user/identity-provider.js +6 -4
  37. package/lib/user/user-client.js +19 -16
  38. package/package.json +49 -46
  39. package/docs/assets/css/main.css +0 -2660
  40. package/docs/assets/js/main.js +0 -248
  41. package/docs/assets/js/search.js +0 -1
  42. package/docs/classes/alreadyregisterederror.html +0 -346
  43. package/docs/classes/defaultsudouserclient.html +0 -1045
  44. package/docs/classes/localauthenticationprovider.html +0 -287
  45. package/docs/classes/testauthenticationprovider.html +0 -317
  46. package/docs/interfaces/authenticationprovider.html +0 -216
  47. package/docs/interfaces/authenticationtokens.html +0 -233
  48. package/docs/interfaces/sudouserclient.html +0 -855
  49. package/lib/core/protected-store.d.ts +0 -5
  50. package/lib/runtimes/browser/browser-crypto.d.ts +0 -2
package/docs/modules.html CHANGED
@@ -1,143 +1 @@
1
- <!doctype html>
2
- <html class="default no-js">
3
- <head>
4
- <meta charset="utf-8">
5
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
6
- <title>@sudoplatform/sudo-user</title>
7
- <meta name="description" content="Documentation for @sudoplatform/sudo-user">
8
- <meta name="viewport" content="width=device-width, initial-scale=1">
9
- <link rel="stylesheet" href="assets/css/main.css">
10
- <script async src="assets/js/search.js" id="search-script"></script>
11
- </head>
12
- <body>
13
- <header>
14
- <div class="tsd-page-toolbar">
15
- <div class="container">
16
- <div class="table-wrap">
17
- <div class="table-cell" id="tsd-search" data-index="assets/js/search.json" data-base=".">
18
- <div class="field">
19
- <label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
20
- <input id="tsd-search-field" type="text" />
21
- </div>
22
- <ul class="results">
23
- <li class="state loading">Preparing search index...</li>
24
- <li class="state failure">The search index is not available</li>
25
- </ul>
26
- <a href="index.html" class="title">@sudoplatform/sudo-user</a>
27
- </div>
28
- <div class="table-cell" id="tsd-widgets">
29
- <div id="tsd-filter">
30
- <a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
31
- <div class="tsd-filter-group">
32
- <div class="tsd-select" id="tsd-filter-visibility">
33
- <span class="tsd-select-label">All</span>
34
- <ul class="tsd-select-list">
35
- <li data-value="public">Public</li>
36
- <li data-value="protected">Public/Protected</li>
37
- <li data-value="private" class="selected">All</li>
38
- </ul>
39
- </div>
40
- <input type="checkbox" id="tsd-filter-inherited" checked />
41
- <label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
42
- <input type="checkbox" id="tsd-filter-externals" checked />
43
- <label class="tsd-widget" for="tsd-filter-externals">Externals</label>
44
- </div>
45
- </div>
46
- <a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
47
- </div>
48
- </div>
49
- </div>
50
- </div>
51
- <div class="tsd-page-title">
52
- <div class="container">
53
- <h1>@sudoplatform/sudo-user</h1>
54
- </div>
55
- </div>
56
- </header>
57
- <div class="container container-main">
58
- <div class="row">
59
- <div class="col-8 col-content">
60
- <section class="tsd-panel-group tsd-index-group">
61
- <h2>Index</h2>
62
- <section class="tsd-panel tsd-index-panel">
63
- <div class="tsd-index-content">
64
- <section class="tsd-index-section ">
65
- <h3>Classes</h3>
66
- <ul class="tsd-index-list">
67
- <li class="tsd-kind-class"><a href="classes/alreadyregisterederror.html" class="tsd-kind-icon">Already<wbr>Registered<wbr>Error</a></li>
68
- <li class="tsd-kind-class"><a href="classes/defaultsudouserclient.html" class="tsd-kind-icon">Default<wbr>Sudo<wbr>User<wbr>Client</a></li>
69
- <li class="tsd-kind-class"><a href="classes/localauthenticationprovider.html" class="tsd-kind-icon">Local<wbr>Authentication<wbr>Provider</a></li>
70
- <li class="tsd-kind-class"><a href="classes/testauthenticationprovider.html" class="tsd-kind-icon">TESTAuthentication<wbr>Provider</a></li>
71
- </ul>
72
- </section>
73
- <section class="tsd-index-section ">
74
- <h3>Interfaces</h3>
75
- <ul class="tsd-index-list">
76
- <li class="tsd-kind-interface"><a href="interfaces/authenticationprovider.html" class="tsd-kind-icon">Authentication<wbr>Provider</a></li>
77
- <li class="tsd-kind-interface"><a href="interfaces/authenticationtokens.html" class="tsd-kind-icon">Authentication<wbr>Tokens</a></li>
78
- <li class="tsd-kind-interface"><a href="interfaces/sudouserclient.html" class="tsd-kind-icon">Sudo<wbr>User<wbr>Client</a></li>
79
- </ul>
80
- </section>
81
- </div>
82
- </section>
83
- </section>
84
- </div>
85
- <div class="col-4 col-menu menu-sticky-wrap menu-highlight">
86
- <nav class="tsd-navigation primary">
87
- <ul>
88
- <li class="current ">
89
- <a href="modules.html">Exports</a>
90
- </li>
91
- </ul>
92
- </nav>
93
- <nav class="tsd-navigation secondary menu-sticky">
94
- <ul class="before-current">
95
- <li class=" tsd-kind-class">
96
- <a href="classes/alreadyregisterederror.html" class="tsd-kind-icon">Already<wbr>Registered<wbr>Error</a>
97
- </li>
98
- <li class=" tsd-kind-class">
99
- <a href="classes/defaultsudouserclient.html" class="tsd-kind-icon">Default<wbr>Sudo<wbr>User<wbr>Client</a>
100
- </li>
101
- <li class=" tsd-kind-class">
102
- <a href="classes/localauthenticationprovider.html" class="tsd-kind-icon">Local<wbr>Authentication<wbr>Provider</a>
103
- </li>
104
- <li class=" tsd-kind-class">
105
- <a href="classes/testauthenticationprovider.html" class="tsd-kind-icon">TESTAuthentication<wbr>Provider</a>
106
- </li>
107
- <li class=" tsd-kind-interface">
108
- <a href="interfaces/authenticationprovider.html" class="tsd-kind-icon">Authentication<wbr>Provider</a>
109
- </li>
110
- <li class=" tsd-kind-interface">
111
- <a href="interfaces/authenticationtokens.html" class="tsd-kind-icon">Authentication<wbr>Tokens</a>
112
- </li>
113
- <li class=" tsd-kind-interface">
114
- <a href="interfaces/sudouserclient.html" class="tsd-kind-icon">Sudo<wbr>User<wbr>Client</a>
115
- </li>
116
- </ul>
117
- </nav>
118
- </div>
119
- </div>
120
- </div>
121
- <footer class="with-border-bottom">
122
- <div class="container">
123
- <h2>Legend</h2>
124
- <div class="tsd-legend-group">
125
- <ul class="tsd-legend">
126
- <li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li>
127
- <li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li>
128
- <li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li>
129
- </ul>
130
- <ul class="tsd-legend">
131
- <li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li>
132
- <li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li>
133
- </ul>
134
- </div>
135
- </div>
136
- </footer>
137
- <div class="container tsd-generator">
138
- <p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p>
139
- </div>
140
- <div class="overlay"></div>
141
- <script src="assets/js/main.js"></script>
142
- </body>
143
- </html>
1
+ <!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>@sudoplatform/sudo-user</title><meta name="description" content="Documentation for @sudoplatform/sudo-user"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script async src="assets/search.js" id="search-script"></script></head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base="."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="index.html" class="title">@sudoplatform/sudo-user</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label><input type="checkbox" id="tsd-filter-externals" checked/><label class="tsd-widget" for="tsd-filter-externals">Externals</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><h1>@sudoplatform/sudo-user</h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Classes</h3><ul class="tsd-index-list"><li class="tsd-kind-class"><a href="classes/AlreadyRegisteredError.html" class="tsd-kind-icon">Already<wbr/>Registered<wbr/>Error</a></li><li class="tsd-kind-class"><a href="classes/DefaultSudoUserClient.html" class="tsd-kind-icon">Default<wbr/>Sudo<wbr/>User<wbr/>Client</a></li><li class="tsd-kind-class"><a href="classes/IdentityServiceConfigNotFoundError.html" class="tsd-kind-icon">Identity<wbr/>Service<wbr/>Config<wbr/>Not<wbr/>Found<wbr/>Error</a></li><li class="tsd-kind-class"><a href="classes/LocalAuthenticationProvider.html" class="tsd-kind-icon">Local<wbr/>Authentication<wbr/>Provider</a></li><li class="tsd-kind-class"><a href="classes/TESTAuthenticationProvider.html" class="tsd-kind-icon">TESTAuthentication<wbr/>Provider</a></li></ul></section><section class="tsd-index-section "><h3>Interfaces</h3><ul class="tsd-index-list"><li class="tsd-kind-interface"><a href="interfaces/AuthenticationProvider.html" class="tsd-kind-icon">Authentication<wbr/>Provider</a></li><li class="tsd-kind-interface"><a href="interfaces/AuthenticationTokens.html" class="tsd-kind-icon">Authentication<wbr/>Tokens</a></li><li class="tsd-kind-interface"><a href="interfaces/SudoUserClient.html" class="tsd-kind-icon">Sudo<wbr/>User<wbr/>Client</a></li></ul></section></div></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class="current"><a href="modules.html">Exports</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="tsd-kind-class"><a href="classes/AlreadyRegisteredError.html" class="tsd-kind-icon">Already<wbr/>Registered<wbr/>Error</a></li><li class="tsd-kind-class"><a href="classes/DefaultSudoUserClient.html" class="tsd-kind-icon">Default<wbr/>Sudo<wbr/>User<wbr/>Client</a></li><li class="tsd-kind-class"><a href="classes/IdentityServiceConfigNotFoundError.html" class="tsd-kind-icon">Identity<wbr/>Service<wbr/>Config<wbr/>Not<wbr/>Found<wbr/>Error</a></li><li class="tsd-kind-class"><a href="classes/LocalAuthenticationProvider.html" class="tsd-kind-icon">Local<wbr/>Authentication<wbr/>Provider</a></li><li class="tsd-kind-class"><a href="classes/TESTAuthenticationProvider.html" class="tsd-kind-icon">TESTAuthentication<wbr/>Provider</a></li><li class="tsd-kind-interface"><a href="interfaces/AuthenticationProvider.html" class="tsd-kind-icon">Authentication<wbr/>Provider</a></li><li class="tsd-kind-interface"><a href="interfaces/AuthenticationTokens.html" class="tsd-kind-icon">Authentication<wbr/>Tokens</a></li><li class="tsd-kind-interface"><a href="interfaces/SudoUserClient.html" class="tsd-kind-icon">Sudo<wbr/>User<wbr/>Client</a></li></ul></nav></div></div></div><footer class="with-border-bottom"><div class="container"><h2>Legend</h2><div class="tsd-legend-group"><ul class="tsd-legend"><li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li><li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li></ul></div><h2>Settings</h2><p>Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="container tsd-generator"><p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div><div class="overlay"></div><script src="assets/main.js"></script></body></html>
@@ -58,9 +58,10 @@ class ApiClient {
58
58
  fetchPolicy: 'no-cache'
59
59
  });
60
60
  } catch (err) {
61
- var _err$graphQLErrors;
61
+ var _apolloError$graphQLE;
62
62
 
63
- const error = (_err$graphQLErrors = err.graphQLErrors) === null || _err$graphQLErrors === void 0 ? void 0 : _err$graphQLErrors[0];
63
+ const apolloError = err;
64
+ const error = (_apolloError$graphQLE = apolloError.graphQLErrors) === null || _apolloError$graphQLE === void 0 ? void 0 : _apolloError$graphQLE[0];
64
65
 
65
66
  if (error) {
66
67
  throw this.graphQLErrorsToClientError(error);
@@ -101,9 +102,10 @@ class ApiClient {
101
102
  fetchPolicy: 'no-cache'
102
103
  });
103
104
  } catch (err) {
104
- var _err$graphQLErrors2;
105
+ var _apolloError$graphQLE2;
105
106
 
106
- const error = (_err$graphQLErrors2 = err.graphQLErrors) === null || _err$graphQLErrors2 === void 0 ? void 0 : _err$graphQLErrors2[0];
107
+ const apolloError = err;
108
+ const error = (_apolloError$graphQLE2 = apolloError.graphQLErrors) === null || _apolloError$graphQLE2 === void 0 ? void 0 : _apolloError$graphQLE2[0];
107
109
 
108
110
  if (error) {
109
111
  throw this.graphQLErrorsToClientError(error);
@@ -143,9 +145,10 @@ class ApiClient {
143
145
  fetchPolicy: 'no-cache'
144
146
  });
145
147
  } catch (err) {
146
- var _err$graphQLErrors3;
148
+ var _apolloError$graphQLE3;
147
149
 
148
- const error = (_err$graphQLErrors3 = err.graphQLErrors) === null || _err$graphQLErrors3 === void 0 ? void 0 : _err$graphQLErrors3[0];
150
+ const apolloError = err;
151
+ const error = (_apolloError$graphQLE3 = apolloError.graphQLErrors) === null || _apolloError$graphQLE3 === void 0 ? void 0 : _apolloError$graphQLE3[0];
149
152
 
150
153
  if (error) {
151
154
  throw this.graphQLErrorsToClientError(error);
@@ -13,6 +13,10 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
13
13
 
14
14
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
15
15
 
16
+ function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
17
+
18
+ function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
19
+
16
20
  function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
17
21
 
18
22
  function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError("attempted to set read only private field"); } descriptor.value = value; } }
@@ -30,7 +34,7 @@ var _secrets = /*#__PURE__*/new WeakMap();
30
34
  */
31
35
  class AuthenticationStore {
32
36
  constructor() {
33
- _secrets.set(this, {
37
+ _classPrivateFieldInitSpec(this, _secrets, {
34
38
  writable: true,
35
39
  value: {}
36
40
  });
@@ -53,7 +53,8 @@ class KeyManager {
53
53
  fatal: true
54
54
  }).decode(passwordBuffer);
55
55
  } catch (err) {
56
- throw new _sudoCommon.DecodeError(err.message);
56
+ const error = err;
57
+ throw new _sudoCommon.DecodeError(error.message);
57
58
  }
58
59
  }
59
60
  /**
@@ -1,5 +1,18 @@
1
1
  import * as t from 'io-ts';
2
- declare const federatedSignIn: t.IntersectionC<[t.TypeC<{
2
+ export declare const IdentityServiceConfigCodec: t.IntersectionC<[t.TypeC<{
3
+ region: t.StringC;
4
+ poolId: t.StringC;
5
+ clientId: t.StringC;
6
+ identityPoolId: t.StringC;
7
+ apiUrl: t.StringC;
8
+ apiKey: t.StringC;
9
+ bucket: t.StringC;
10
+ transientBucket: t.StringC;
11
+ registrationMethods: t.ArrayC<t.StringC>;
12
+ }>, t.PartialC<{
13
+ refreshTokenLifetime: t.NumberC;
14
+ }>]>;
15
+ export declare const FederatedSignInConfigCodec: t.IntersectionC<[t.TypeC<{
3
16
  appClientId: t.StringC;
4
17
  signInRedirectUri: t.StringC;
5
18
  signOutRedirectUri: t.StringC;
@@ -34,5 +47,6 @@ export declare const Config: t.IntersectionC<[t.TypeC<{
34
47
  }>]>;
35
48
  }>]>;
36
49
  export declare type Config = t.TypeOf<typeof Config>;
37
- export declare type FederatedSignInConfig = t.TypeOf<typeof federatedSignIn>;
38
- export {};
50
+ export declare type IdentityServiceConfig = t.TypeOf<typeof IdentityServiceConfigCodec>;
51
+ export declare type FederatedSignInConfig = t.TypeOf<typeof FederatedSignInConfigCodec>;
52
+ export declare function getIdentityServiceConfig(): Config;
@@ -3,15 +3,20 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.Config = void 0;
6
+ exports.IdentityServiceConfigCodec = exports.FederatedSignInConfigCodec = exports.Config = void 0;
7
+ exports.getIdentityServiceConfig = getIdentityServiceConfig;
8
+
9
+ var _sudoCommon = require("@sudoplatform/sudo-common");
7
10
 
8
11
  var t = _interopRequireWildcard(require("io-ts"));
9
12
 
13
+ var _error = require("../user/error");
14
+
10
15
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
11
16
 
12
17
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
13
18
 
14
- const identityService = t.intersection([t.type({
19
+ const IdentityServiceConfigCodec = t.intersection([t.type({
15
20
  region: t.string,
16
21
  poolId: t.string,
17
22
  clientId: t.string,
@@ -23,8 +28,9 @@ const identityService = t.intersection([t.type({
23
28
  registrationMethods: t.array(t.string)
24
29
  }), t.partial({
25
30
  refreshTokenLifetime: t.number
26
- })]);
27
- const federatedSignIn = t.intersection([t.type({
31
+ })], 'IdentityServiceConfig');
32
+ exports.IdentityServiceConfigCodec = IdentityServiceConfigCodec;
33
+ const FederatedSignInConfigCodec = t.intersection([t.type({
28
34
  appClientId: t.string,
29
35
  signInRedirectUri: t.string,
30
36
  signOutRedirectUri: t.string,
@@ -32,10 +38,19 @@ const federatedSignIn = t.intersection([t.type({
32
38
  }), t.partial({
33
39
  identityProvider: t.string,
34
40
  refreshTokenLifetime: t.number
35
- })]);
41
+ })], 'FederatedSignInConfig');
42
+ exports.FederatedSignInConfigCodec = FederatedSignInConfigCodec;
36
43
  const Config = t.intersection([t.type({
37
- identityService
44
+ identityService: IdentityServiceConfigCodec
38
45
  }), t.partial({
39
- federatedSignIn
46
+ federatedSignIn: FederatedSignInConfigCodec
40
47
  })]);
41
- exports.Config = Config;
48
+ exports.Config = Config;
49
+
50
+ function getIdentityServiceConfig() {
51
+ if (!_sudoCommon.DefaultConfigurationManager.getInstance().getConfigSet('identityService')) {
52
+ throw new _error.IdentityServiceConfigNotFoundError();
53
+ }
54
+
55
+ return _sudoCommon.DefaultConfigurationManager.getInstance().bindConfigSet(Config, undefined);
56
+ }
@@ -64,30 +64,30 @@ export declare type DeregisterMutationVariables = Exact<{
64
64
  }>;
65
65
  export declare type DeregisterMutation = {
66
66
  __typename?: 'Mutation';
67
- } & {
68
- deregister?: Maybe<{
67
+ deregister?: {
69
68
  __typename?: 'Deregister';
70
- } & Pick<Deregister, 'success'>>;
69
+ success: boolean;
70
+ } | null | undefined;
71
71
  };
72
72
  export declare type GlobalSignOutMutationVariables = Exact<{
73
73
  [key: string]: never;
74
74
  }>;
75
75
  export declare type GlobalSignOutMutation = {
76
76
  __typename?: 'Mutation';
77
- } & {
78
- globalSignOut?: Maybe<{
77
+ globalSignOut?: {
79
78
  __typename?: 'GlobalSignOut';
80
- } & Pick<GlobalSignOut, 'success'>>;
79
+ success: boolean;
80
+ } | null | undefined;
81
81
  };
82
82
  export declare type RegisterFederatedIdMutationVariables = Exact<{
83
83
  input: RegisterFederatedIdInput;
84
84
  }>;
85
85
  export declare type RegisterFederatedIdMutation = {
86
86
  __typename?: 'Mutation';
87
- } & {
88
- registerFederatedId?: Maybe<{
87
+ registerFederatedId?: {
89
88
  __typename?: 'FederatedId';
90
- } & Pick<FederatedId, 'identityId'>>;
89
+ identityId: string;
90
+ } | null | undefined;
91
91
  };
92
92
  export declare const DeregisterDocument: DocumentNode<DeregisterMutation, Exact<{
93
93
  [key: string]: never;
package/lib/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  export { DefaultSudoUserClient } from './user/user-client';
2
2
  export * from './user/user-client-interface';
3
3
  export { TESTAuthenticationProvider, LocalAuthenticationProvider, AuthenticationProvider, } from './user/auth-provider';
4
- export { AlreadyRegisteredError } from './user/error';
4
+ export * from './user/error';
package/lib/index.js CHANGED
@@ -7,19 +7,18 @@ var _exportNames = {
7
7
  DefaultSudoUserClient: true,
8
8
  TESTAuthenticationProvider: true,
9
9
  LocalAuthenticationProvider: true,
10
- AuthenticationProvider: true,
11
- AlreadyRegisteredError: true
10
+ AuthenticationProvider: true
12
11
  };
13
- Object.defineProperty(exports, "DefaultSudoUserClient", {
12
+ Object.defineProperty(exports, "AuthenticationProvider", {
14
13
  enumerable: true,
15
14
  get: function () {
16
- return _userClient.DefaultSudoUserClient;
15
+ return _authProvider.AuthenticationProvider;
17
16
  }
18
17
  });
19
- Object.defineProperty(exports, "TESTAuthenticationProvider", {
18
+ Object.defineProperty(exports, "DefaultSudoUserClient", {
20
19
  enumerable: true,
21
20
  get: function () {
22
- return _authProvider.TESTAuthenticationProvider;
21
+ return _userClient.DefaultSudoUserClient;
23
22
  }
24
23
  });
25
24
  Object.defineProperty(exports, "LocalAuthenticationProvider", {
@@ -28,16 +27,10 @@ Object.defineProperty(exports, "LocalAuthenticationProvider", {
28
27
  return _authProvider.LocalAuthenticationProvider;
29
28
  }
30
29
  });
31
- Object.defineProperty(exports, "AuthenticationProvider", {
32
- enumerable: true,
33
- get: function () {
34
- return _authProvider.AuthenticationProvider;
35
- }
36
- });
37
- Object.defineProperty(exports, "AlreadyRegisteredError", {
30
+ Object.defineProperty(exports, "TESTAuthenticationProvider", {
38
31
  enumerable: true,
39
32
  get: function () {
40
- return _error.AlreadyRegisteredError;
33
+ return _authProvider.TESTAuthenticationProvider;
41
34
  }
42
35
  });
43
36
 
@@ -59,4 +52,16 @@ Object.keys(_userClientInterface).forEach(function (key) {
59
52
 
60
53
  var _authProvider = require("./user/auth-provider");
61
54
 
62
- var _error = require("./user/error");
55
+ var _error = require("./user/error");
56
+
57
+ Object.keys(_error).forEach(function (key) {
58
+ if (key === "default" || key === "__esModule") return;
59
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
60
+ if (key in exports && exports[key] === _error[key]) return;
61
+ Object.defineProperty(exports, key, {
62
+ enumerable: true,
63
+ get: function () {
64
+ return _error[key];
65
+ }
66
+ });
67
+ });
package/lib/sdk.d.ts ADDED
@@ -0,0 +1 @@
1
+ export * from './core/sdk-config';
package/lib/sdk.js ADDED
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ var _sdkConfig = require("./core/sdk-config");
8
+
9
+ Object.keys(_sdkConfig).forEach(function (key) {
10
+ if (key === "default" || key === "__esModule") return;
11
+ if (key in exports && exports[key] === _sdkConfig[key]) return;
12
+ Object.defineProperty(exports, key, {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _sdkConfig[key];
16
+ }
17
+ });
18
+ });
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.LocalAuthenticationProvider = exports.LocalAuthenticationInfo = exports.TESTAuthenticationProvider = exports.TESTAuthenticationInfo = void 0;
6
+ exports.TESTAuthenticationProvider = exports.TESTAuthenticationInfo = exports.LocalAuthenticationProvider = exports.LocalAuthenticationInfo = void 0;
7
7
 
8
8
  var JWT = _interopRequireWildcard(require("jsonwebtoken"));
9
9
 
@@ -32,6 +32,7 @@ export interface AuthUI {
32
32
  */
33
33
  presentSignOutUI(): void;
34
34
  }
35
+ export declare const DefaultRefreshTokenLifetime = 60;
35
36
  export declare class CognitoAuthUI implements AuthUI, Subscriber {
36
37
  private authenticationStore;
37
38
  private federatedSignInConfig;
package/lib/user/auth.js CHANGED
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.CognitoAuthUI = void 0;
6
+ exports.DefaultRefreshTokenLifetime = exports.CognitoAuthUI = void 0;
7
7
 
8
8
  var _sudoCommon = require("@sudoplatform/sudo-common");
9
9
 
@@ -23,6 +23,9 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
23
23
 
24
24
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
25
25
 
26
+ const DefaultRefreshTokenLifetime = 60;
27
+ exports.DefaultRefreshTokenLifetime = DefaultRefreshTokenLifetime;
28
+
26
29
  class CognitoAuthUI {
27
30
  constructor(authenticationStore, federatedSignInConfig, keyManager, logger, launchUriFn) {
28
31
  this.authenticationStore = authenticationStore;
@@ -41,7 +44,7 @@ class CognitoAuthUI {
41
44
  this.authenticationStore.subscribe(this);
42
45
  this.auth = this.initCognitoAuthSDK();
43
46
  const refreshTokenLifetime = this.federatedSignInConfig.refreshTokenLifetime;
44
- this.refreshTokenLifetime = refreshTokenLifetime !== null && refreshTokenLifetime !== void 0 ? refreshTokenLifetime : 60;
47
+ this.refreshTokenLifetime = refreshTokenLifetime ?? DefaultRefreshTokenLifetime;
45
48
  this.logger = logger;
46
49
  }
47
50
 
@@ -52,7 +55,7 @@ class CognitoAuthUI {
52
55
  IdentityProvider: this.federatedSignInConfig.identityProvider,
53
56
  RedirectUriSignIn: this.federatedSignInConfig.signInRedirectUri,
54
57
  RedirectUriSignOut: this.federatedSignInConfig.signOutRedirectUri,
55
- TokenScopesArray: ['openid', 'aws.cognito.signin.user.admin'],
58
+ TokenScopesArray: ['openid'],
56
59
  Storage: this.authenticationStore,
57
60
  LaunchUri: this.launchUriFn
58
61
  };
@@ -1,6 +1,18 @@
1
+ declare class UserError extends Error {
2
+ constructor(msg?: string);
3
+ }
1
4
  /**
2
5
  * Indicates the user associated with the client is already registered.
3
6
  */
4
- export declare class AlreadyRegisteredError extends Error {
7
+ export declare class AlreadyRegisteredError extends UserError {
8
+ constructor();
9
+ }
10
+ /**
11
+ * Indicates the configuration related to Identity Service is not found. This may indicate that Identity Service
12
+ * is not deployed into your runtime instance or the config file that
13
+ * you are using is invalid.
14
+ */
15
+ export declare class IdentityServiceConfigNotFoundError extends UserError {
5
16
  constructor();
6
17
  }
18
+ export {};
package/lib/user/error.js CHANGED
@@ -3,17 +3,44 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.AlreadyRegisteredError = void 0;
6
+ exports.IdentityServiceConfigNotFoundError = exports.AlreadyRegisteredError = void 0;
7
7
 
8
+ class UserError extends Error {
9
+ constructor(msg) {
10
+ super(msg);
11
+ this.name = this.constructor.name;
12
+
13
+ if (Error.captureStackTrace) {
14
+ Error.captureStackTrace(this, this.constructor);
15
+ }
16
+ }
17
+
18
+ }
8
19
  /**
9
20
  * Indicates the user associated with the client is already registered.
10
21
  */
11
- class AlreadyRegisteredError extends Error {
22
+
23
+
24
+ class AlreadyRegisteredError extends UserError {
12
25
  constructor() {
13
26
  super('User is already registered.');
14
- this.name = 'AlreadyRegisteredError';
27
+ }
28
+
29
+ }
30
+ /**
31
+ * Indicates the configuration related to Identity Service is not found. This may indicate that Identity Service
32
+ * is not deployed into your runtime instance or the config file that
33
+ * you are using is invalid.
34
+ */
35
+
36
+
37
+ exports.AlreadyRegisteredError = AlreadyRegisteredError;
38
+
39
+ class IdentityServiceConfigNotFoundError extends UserError {
40
+ constructor() {
41
+ super('Identity service configuration not found.');
15
42
  }
16
43
 
17
44
  }
18
45
 
19
- exports.AlreadyRegisteredError = AlreadyRegisteredError;
46
+ exports.IdentityServiceConfigNotFoundError = IdentityServiceConfigNotFoundError;
@@ -30,7 +30,7 @@ class CognitoUserPoolIdentityProvider {
30
30
 
31
31
  this.idpService = this.initCognitoIdpService();
32
32
  const refreshTokenLifetime = this.config.identityService.refreshTokenLifetime;
33
- this.refreshTokenLifetime = refreshTokenLifetime !== null && refreshTokenLifetime !== void 0 ? refreshTokenLifetime : 60;
33
+ this.refreshTokenLifetime = refreshTokenLifetime ?? 60;
34
34
  this.logger = logger;
35
35
  }
36
36
 
@@ -80,7 +80,8 @@ class CognitoUserPoolIdentityProvider {
80
80
  throw new _sudoCommon.UserNotConfirmedError();
81
81
  }
82
82
  } catch (err) {
83
- const errorMsg = err.message;
83
+ const error = err;
84
+ const errorMsg = error.message;
84
85
 
85
86
  if (errorMsg.includes('sudoplatform.ServiceError')) {
86
87
  throw new _sudoCommon.ServiceError(errorMsg);
@@ -232,8 +233,9 @@ class CognitoUserPoolIdentityProvider {
232
233
  } else {
233
234
  reject(new _sudoCommon.AuthenticationError('Authentication tokens not found.'));
234
235
  }
235
- } catch (error) {
236
- reject(new _sudoCommon.AuthenticationError(error));
236
+ } catch (err) {
237
+ const error = err;
238
+ reject(new _sudoCommon.AuthenticationError(error.message));
237
239
  }
238
240
  });
239
241
  }