@equinor/fusion-framework-module-msal 0.1.0-beta.3 → 0.1.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 (44) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/client/package.json +7 -0
  3. package/dist/esm/client/behavior.js +2 -0
  4. package/dist/esm/client/behavior.js.map +1 -0
  5. package/dist/esm/client/client.js +63 -0
  6. package/dist/esm/client/client.js.map +1 -0
  7. package/dist/esm/client/create-auth-client.js +16 -0
  8. package/dist/esm/client/create-auth-client.js.map +1 -0
  9. package/dist/esm/client/index.js +5 -0
  10. package/dist/esm/client/index.js.map +1 -0
  11. package/dist/esm/client/log/console.js +27 -0
  12. package/dist/esm/client/log/console.js.map +1 -0
  13. package/dist/esm/client/request.js +2 -0
  14. package/dist/esm/client/request.js.map +1 -0
  15. package/dist/esm/client/util/browser.js +5 -0
  16. package/dist/esm/client/util/browser.js.map +1 -0
  17. package/dist/esm/client/util/url.js +10 -0
  18. package/dist/esm/client/util/url.js.map +1 -0
  19. package/dist/esm/index.js.map +1 -1
  20. package/dist/esm/provider.js +28 -6
  21. package/dist/esm/provider.js.map +1 -1
  22. package/dist/tsconfig.tsbuildinfo +1 -1
  23. package/dist/types/client/behavior.d.ts +2 -0
  24. package/dist/types/client/client.d.ts +13 -0
  25. package/dist/types/client/create-auth-client.d.ts +7 -0
  26. package/dist/types/client/index.d.ts +4 -0
  27. package/dist/types/client/log/console.d.ts +8 -0
  28. package/dist/types/client/request.d.ts +2 -0
  29. package/dist/types/client/util/browser.d.ts +1 -0
  30. package/dist/types/client/util/url.d.ts +1 -0
  31. package/dist/types/configurator.d.ts +1 -1
  32. package/dist/types/provider.d.ts +20 -10
  33. package/package.json +5 -5
  34. package/src/client/behavior.ts +14 -0
  35. package/src/client/client.ts +158 -0
  36. package/src/client/create-auth-client.ts +46 -0
  37. package/src/client/index.ts +6 -0
  38. package/src/client/log/console.ts +55 -0
  39. package/src/client/request.ts +66 -0
  40. package/src/client/util/browser.ts +14 -0
  41. package/src/client/util/url.ts +24 -0
  42. package/src/configurator.ts +1 -1
  43. package/src/index.ts +1 -0
  44. package/src/provider.ts +68 -12
package/CHANGELOG.md ADDED
@@ -0,0 +1,18 @@
1
+ # Change Log
2
+
3
+ All notable changes to this project will be documented in this file.
4
+ See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
+
6
+ # 0.1.0 (2022-02-07)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **module-msal:** invert bool check of scopes ([3d9fb50](https://github.com/equinor/fusion-framework/commit/3d9fb50e4b3d408cab4f6e68c44ca9045e8ce40d))
12
+
13
+
14
+ ### Features
15
+
16
+ * add client for msal ([41e6b13](https://github.com/equinor/fusion-framework/commit/41e6b1378f41b1e03023186d480460a0189878c6))
17
+ * **module-msal:** change behavoir to redirect ([9f2193f](https://github.com/equinor/fusion-framework/commit/9f2193f21a7056cb6b42513845fdc19910522628))
18
+ * **module-msal:** expose account ([f4b27b3](https://github.com/equinor/fusion-framework/commit/f4b27b3db7cf5133afbaf366ba953561dd23c113))
@@ -0,0 +1,7 @@
1
+ {
2
+ "name": "@equinor/fusion-framework-module-http/client",
3
+ "types": "../dist/types/client/index.d.ts",
4
+ "main": "../dist/esm/client/index.js",
5
+ "module": "../dist/esm/client/index.js",
6
+ "sideEffects": false
7
+ }
@@ -0,0 +1,2 @@
1
+ export const defaultBehavior = 'redirect';
2
+ //# sourceMappingURL=behavior.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"behavior.js","sourceRoot":"","sources":["../../../src/client/behavior.ts"],"names":[],"mappings":"AAaA,MAAM,CAAC,MAAM,eAAe,GAAiB,UAAU,CAAC"}
@@ -0,0 +1,63 @@
1
+ import { PublicClientApplication, } from '@azure/msal-browser';
2
+ import { defaultBehavior } from './behavior';
3
+ export class AuthClient extends PublicClientApplication {
4
+ tenantId;
5
+ get account() {
6
+ const accounts = this.getAllAccounts();
7
+ return accounts.find((a) => (a.tenantId = this.tenantId));
8
+ }
9
+ get clientId() {
10
+ return this.config.auth?.clientId;
11
+ }
12
+ get requestOrigin() {
13
+ return this.browserStorage.getTemporaryCache('request.origin', true);
14
+ }
15
+ constructor(tenantId, config) {
16
+ super(config);
17
+ this.tenantId = tenantId;
18
+ }
19
+ async login(options, behavior = defaultBehavior, silent = true) {
20
+ const loginHint = options?.loginHint || this.account?.username;
21
+ const scopes = options?.scopes || [];
22
+ const request = { ...options, loginHint, scopes };
23
+ if (loginHint && silent) {
24
+ this.logger.verbose('Attempting to login in silently');
25
+ try {
26
+ return this.ssoSilent(request);
27
+ }
28
+ catch {
29
+ this.logger.verbose('Silent login attempt failed');
30
+ }
31
+ }
32
+ this.logger.verbose(`Attempting to login in by [${behavior}]`);
33
+ switch (behavior) {
34
+ case 'popup':
35
+ return this.loginPopup(request);
36
+ case 'redirect': {
37
+ return this.loginRedirect(request);
38
+ }
39
+ }
40
+ }
41
+ async acquireToken(options = { scopes: [] }, behavior = defaultBehavior, silent = true) {
42
+ const account = await this.account;
43
+ if (silent && account) {
44
+ this.logger.verbose('Attempting to acquire token in silently');
45
+ try {
46
+ return this.acquireTokenSilent({ account, ...options });
47
+ }
48
+ catch (err) {
49
+ this.logger.info('Expected to navigate away from the current page but timeout occurred.');
50
+ }
51
+ }
52
+ this.logger.verbose(`Attempting to acquire token by [${behavior}]`);
53
+ switch (behavior) {
54
+ case 'popup':
55
+ return this.acquireTokenPopup(options);
56
+ case 'redirect': {
57
+ return this.acquireTokenRedirect(options);
58
+ }
59
+ }
60
+ }
61
+ }
62
+ export default AuthClient;
63
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/client/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,uBAAuB,GAO1B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAgB,eAAe,EAAE,MAAM,YAAY,CAAC;AAkC3D,MAAM,OAAO,UAAW,SAAQ,uBAAuB;IA0B9B;IApBrB,IAAI,OAAO;QACP,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACvC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9D,CAAC;IAKD,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC;IACtC,CAAC;IAED,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;IACzE,CAAC;IAMD,YAAqB,QAAgB,EAAE,MAAqB;QACxD,KAAK,CAAC,MAAM,CAAC,CAAC;QADG,aAAQ,GAAR,QAAQ,CAAQ;IAErC,CAAC;IAaD,KAAK,CAAC,KAAK,CACP,OAAqB,EACrB,WAAyB,eAAe,EACxC,MAAM,GAAG,IAAI;QAEb,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC;QAC/D,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;QAElD,IAAI,SAAS,IAAI,MAAM,EAAE;YACrB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,iCAAiC,CAAC,CAAC;YACvD,IAAI;gBACA,OAAO,IAAI,CAAC,SAAS,CAAC,OAA2B,CAAC,CAAC;aACtD;YAAC,MAAM;gBACJ,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;aACtD;SACJ;QAED,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8BAA8B,QAAQ,GAAG,CAAC,CAAC;QAE/D,QAAQ,QAAQ,EAAE;YACd,KAAK,OAAO;gBACR,OAAO,IAAI,CAAC,UAAU,CAAC,OAAuB,CAAC,CAAC;YACpD,KAAK,UAAU,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,aAAa,CAAC,OAA0B,CAAC,CAAC;aACzD;SACJ;IACL,CAAC;IAgBM,KAAK,CAAC,YAAY,CACrB,UAAuB,EAAE,MAAM,EAAE,EAAE,EAAE,EACrC,WAAyB,eAAe,EACxC,MAAM,GAAG,IAAI;QAEb,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC;QACnC,IAAI,MAAM,IAAI,OAAO,EAAE;YACnB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,yCAAyC,CAAC,CAAC;YAC/D,IAAI;gBACA,OAAO,IAAI,CAAC,kBAAkB,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;aAC3D;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,uEAAuE,CAC1E,CAAC;aACL;SACJ;QAED,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,mCAAmC,QAAQ,GAAG,CAAC,CAAC;QAEpE,QAAQ,QAAQ,EAAE;YACd,KAAK,OAAO;gBACR,OAAO,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAC3C,KAAK,UAAU,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;aAC7C;SACJ;IACL,CAAC;CACJ;AAED,eAAe,UAAU,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { AuthClient } from './client';
2
+ import { normalizeUri } from './util/url';
3
+ export const createAuthClient = (tenantId, clientId, redirectUri, config, ctor) => {
4
+ const auth = {
5
+ clientId,
6
+ redirectUri: normalizeUri(redirectUri || ''),
7
+ navigateToLoginRequestUrl: false,
8
+ authority: `https://login.microsoftonline.com/${tenantId}`,
9
+ ...config?.auth,
10
+ };
11
+ const cache = { cacheLocation: 'localStorage', ...config?.cache };
12
+ const system = config?.system;
13
+ return new (ctor || AuthClient)(tenantId, { auth, cache, system });
14
+ };
15
+ export default createAuthClient;
16
+ //# sourceMappingURL=create-auth-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-auth-client.js","sourceRoot":"","sources":["../../../src/client/create-auth-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAwB1C,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC5B,QAAgB,EAChB,QAAgB,EAChB,WAAoB,EACpB,MAAyB,EACzB,IAAyD,EACxD,EAAE;IACH,MAAM,IAAI,GAA0B;QAChC,QAAQ;QACR,WAAW,EAAE,YAAY,CAAC,WAAW,IAAI,EAAE,CAAC;QAC5C,yBAAyB,EAAE,KAAK;QAChC,SAAS,EAAE,qCAAqC,QAAQ,EAAE;QAC1D,GAAG,MAAM,EAAE,IAAI;KAClB,CAAC;IACF,MAAM,KAAK,GAAG,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,CAAC;IAClE,MAAM,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC;IAC9B,OAAO,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAM,CAAC;AAC5E,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { default, createAuthClient } from './create-auth-client';
2
+ export { ConsoleLogger } from './log/console';
3
+ export * from './client';
4
+ export * from './request';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAoB,MAAM,sBAAsB,CAAC;AAEnF,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { Logger, LogLevel } from '@azure/msal-browser';
2
+ export class ConsoleLogger extends Logger {
3
+ constructor(logLevel) {
4
+ super({
5
+ logLevel,
6
+ loggerCallback: (...args) => this.loggerCallback(...args),
7
+ });
8
+ }
9
+ loggerCallback(lvl, msg, _containsPii) {
10
+ console[this.getLogType(lvl)](`%c FUSION::MSAL %c %s`, 'border: 1px solid;', 'border: none;', msg);
11
+ }
12
+ getLogType = (lvl) => {
13
+ switch (lvl) {
14
+ case LogLevel.Error:
15
+ return 'error';
16
+ case LogLevel.Warning:
17
+ return 'warn';
18
+ case LogLevel.Info:
19
+ return 'info';
20
+ case LogLevel.Verbose:
21
+ default:
22
+ return 'debug';
23
+ }
24
+ };
25
+ }
26
+ export default ConsoleLogger;
27
+ //# sourceMappingURL=console.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console.js","sourceRoot":"","sources":["../../../../src/client/log/console.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAevD,MAAM,OAAO,aAAc,SAAQ,MAAM;IAIrC,YAAY,QAAmB;QAC3B,KAAK,CAAC;YACF,QAAQ;YACR,cAAc,EAAE,CAAC,GAAG,IAAiC,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC;SACzF,CAAC,CAAC;IACP,CAAC;IAGS,cAAc,CAAC,GAAa,EAAE,GAAW,EAAE,YAAsB;QACvE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CACzB,uBAAuB,EACvB,oBAAoB,EACpB,eAAe,EACf,GAAG,CACN,CAAC;IACN,CAAC;IAKS,UAAU,GAAG,CAAC,GAAa,EAAgB,EAAE;QACnD,QAAQ,GAAG,EAAE;YACT,KAAK,QAAQ,CAAC,KAAK;gBACf,OAAO,OAAO,CAAC;YACnB,KAAK,QAAQ,CAAC,OAAO;gBACjB,OAAO,MAAM,CAAC;YAClB,KAAK,QAAQ,CAAC,IAAI;gBACd,OAAO,MAAM,CAAC;YAClB,KAAK,QAAQ,CAAC,OAAO,CAAC;YACtB;gBACI,OAAO,OAAO,CAAC;SACtB;IACL,CAAC,CAAC;CACL;AAED,eAAe,aAAa,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/client/request.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ export const redirect = (url, timeout = 3000, history) => {
2
+ history ? window.location.assign(url) : window.location.replace(url);
3
+ return new Promise((_, reject) => setTimeout(reject, timeout));
4
+ };
5
+ //# sourceMappingURL=browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../../src/client/util/browser.ts"],"names":[],"mappings":"AAUA,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,OAAO,GAAG,IAAI,EAAE,OAAiB,EAAiB,EAAE;IACtF,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACrE,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AACnE,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ export const normalizeUri = (uri, home = window.location.origin) => {
2
+ uri = uri.match(/^http[s]?/) ? uri : home + uri;
3
+ const { origin, pathname } = new URL(uri);
4
+ return origin + pathname.replace(/((?<=[/])[/]+)|\/$/, '');
5
+ };
6
+ export const compareOrigin = (a, b) => {
7
+ const url = { a: normalizeUri(a), b: normalizeUri(b) };
8
+ return url.a === url.b;
9
+ };
10
+ //# sourceMappingURL=url.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"url.js","sourceRoot":"","sources":["../../../../src/client/util/url.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,OAAe,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAU,EAAE;IACvF,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC;IAChD,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1C,OAAO,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;AAC/D,CAAC,CAAC;AAOF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAS,EAAE,CAAS,EAAW,EAAE;IAC3D,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;IACvD,OAAO,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;AAC3B,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AAEzB,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC"}
@@ -1,8 +1,13 @@
1
- import { createAuthClient } from '@equinor/fusion-web-msal';
1
+ import { createAuthClient, ConsoleLogger } from './client';
2
+ const DEFAULT_CLIENT_NAME = 'default';
2
3
  export class AuthProvider {
3
4
  _config;
4
- get client() {
5
- return this.createClient();
5
+ _clients = {};
6
+ get defaultClient() {
7
+ return this.getClient(DEFAULT_CLIENT_NAME);
8
+ }
9
+ get defaultAccount() {
10
+ return this.defaultClient.account;
6
11
  }
7
12
  get defaultConfig() {
8
13
  return this._config.defaultConfig;
@@ -10,22 +15,39 @@ export class AuthProvider {
10
15
  constructor(_config) {
11
16
  this._config = _config;
12
17
  }
18
+ getClient(name) {
19
+ if (!this._clients[name]) {
20
+ this._clients[name] = this.createClient(name);
21
+ }
22
+ return this._clients[name];
23
+ }
13
24
  createClient(name) {
14
25
  const config = name ? this._config.getClientConfig(name) : this._config.defaultConfig;
15
26
  if (!config) {
16
27
  throw Error('Could not find any config');
17
28
  }
18
- return createAuthClient(config.tenantId, config.clientId, config.redirectUri, config.config);
29
+ const client = createAuthClient(config.tenantId, config.clientId, config.redirectUri, config.config);
30
+ client.setLogger(new ConsoleLogger(3));
31
+ return client;
32
+ }
33
+ async handleRedirect() {
34
+ const { redirectUri } = this.defaultConfig || {};
35
+ if (window.location.pathname === redirectUri) {
36
+ const url = this.defaultClient.requestOrigin || '';
37
+ await this.defaultClient.handleRedirectPromise();
38
+ window.location.replace(url);
39
+ }
40
+ return null;
19
41
  }
20
42
  acquireToken(req) {
21
- return this.createClient().acquireToken(req);
43
+ return this.defaultClient.acquireToken(req);
22
44
  }
23
45
  async acquireAccessToken(req) {
24
46
  const token = await this.acquireToken(req);
25
47
  return token ? token.accessToken : undefined;
26
48
  }
27
49
  async login() {
28
- await this.client.login();
50
+ await this.defaultClient.login();
29
51
  }
30
52
  }
31
53
  //# sourceMappingURL=provider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAgBxE,MAAM,OAAO,YAAY;IASC;IARtB,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;IAC/B,CAAC;IAED,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;IACtC,CAAC;IAED,YAAsB,OAA0B;QAA1B,YAAO,GAAP,OAAO,CAAmB;IAAG,CAAC;IAEpD,YAAY,CAAC,IAAa;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;QACtF,IAAI,CAAC,MAAM,EAAE;YACT,MAAM,KAAK,CAAC,2BAA2B,CAAC,CAAC;SAC5C;QACD,OAAO,gBAAgB,CACnB,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,MAAM,CAChB,CAAC;IACN,CAAC;IAED,YAAY,CAAC,GAAgB;QACzB,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,GAAgB;QACrC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAC3C,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,KAAK;QACP,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;CACJ"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,gBAAgB,EAAe,aAAa,EAAE,MAAM,UAAU,CAAC;AA4CpF,MAAM,mBAAmB,GAAG,SAAS,CAAC;AAEtC,MAAM,OAAO,YAAY;IAcC;IAbZ,QAAQ,GAA+B,EAAE,CAAC;IACpD,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,cAAc;QACd,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;IACtC,CAAC;IAED,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;IACtC,CAAC;IAED,YAAsB,OAA0B;QAA1B,YAAO,GAAP,OAAO,CAAmB;IAAG,CAAC;IAEpD,SAAS,CAAC,IAAY;QAClB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YACtB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;SACjD;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,YAAY,CAAC,IAAa;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;QACtF,IAAI,CAAC,MAAM,EAAE;YACT,MAAM,KAAK,CAAC,2BAA2B,CAAC,CAAC;SAC5C;QACD,MAAM,MAAM,GAAG,gBAAgB,CAC3B,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,MAAM,CAChB,CAAC;QAEF,MAAM,CAAC,SAAS,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAEvC,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,cAAc;QAChB,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC;QACjD,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,WAAW,EAAE;YAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,IAAI,EAAE,CAAC;YACnD,MAAM,IAAI,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC;YACjD,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;SAChC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,YAAY,CAAC,GAAgB;QACzB,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,GAAgB;QACrC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAC3C,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,KAAK;QACP,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IACrC,CAAC;CACJ"}