@frontegg/rest-api 2.10.44 → 2.10.48

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 (46) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/auth/index.d.ts +8 -1
  3. package/dist/auth/index.js +32 -2
  4. package/dist/auth/index.js.map +1 -1
  5. package/dist/auth/interfaces.d.ts +19 -0
  6. package/dist/constants.d.ts +7 -0
  7. package/dist/constants.js +9 -2
  8. package/dist/constants.js.map +1 -1
  9. package/dist/es2015/auth/index.d.ts +8 -1
  10. package/dist/es2015/auth/index.js +27 -0
  11. package/dist/es2015/auth/index.js.map +1 -1
  12. package/dist/es2015/auth/interfaces.d.ts +19 -0
  13. package/dist/es2015/constants.d.ts +7 -0
  14. package/dist/es2015/constants.js +9 -2
  15. package/dist/es2015/constants.js.map +1 -1
  16. package/dist/es2015/fetch.d.ts +2 -0
  17. package/dist/es2015/fetch.js +11 -13
  18. package/dist/es2015/fetch.js.map +1 -1
  19. package/dist/es2015/interfaces.d.ts +1 -0
  20. package/dist/es2015/jwt.js.map +1 -1
  21. package/dist/es2015/teams/interfaces.d.ts +6 -0
  22. package/dist/es2015/tenants/index.d.ts +7 -1
  23. package/dist/es2015/tenants/index.js +11 -0
  24. package/dist/es2015/tenants/index.js.map +1 -1
  25. package/dist/es2015/tenants/interfaces.d.ts +5 -0
  26. package/dist/fetch.d.ts +2 -0
  27. package/dist/fetch.js +12 -13
  28. package/dist/fetch.js.map +1 -1
  29. package/dist/interfaces.d.ts +1 -0
  30. package/dist/jwt.js.map +1 -1
  31. package/dist/teams/interfaces.d.ts +6 -0
  32. package/dist/tenants/index.d.ts +7 -1
  33. package/dist/tenants/index.js +13 -1
  34. package/dist/tenants/index.js.map +1 -1
  35. package/dist/tenants/interfaces.d.ts +5 -0
  36. package/dist/umd/index.js +63 -15
  37. package/package.json +1 -1
  38. package/src/auth/index.ts +46 -2
  39. package/src/auth/interfaces.ts +22 -0
  40. package/src/constants.ts +9 -2
  41. package/src/fetch.ts +2 -2
  42. package/src/interfaces.ts +1 -0
  43. package/src/jwt.ts +1 -1
  44. package/src/teams/interfaces.ts +7 -0
  45. package/src/tenants/index.ts +12 -1
  46. package/src/tenants/interfaces.ts +6 -0
@@ -13,6 +13,7 @@ export interface KeyValuePair {
13
13
  export declare type LogLevel = 'warn' | 'error';
14
14
  export interface ContextOptions {
15
15
  baseUrl: string;
16
+ clientId?: string;
16
17
  tokenResolver?: () => Promise<string> | string;
17
18
  additionalQueryParamsResolver?: () => Promise<KeyValuePair[]> | KeyValuePair[];
18
19
  additionalHeadersResolver?: () => Promise<KeyValuePair[]> | KeyValuePair[];
@@ -1 +1 @@
1
- {"version":3,"file":"jwt.js","sourceRoot":"","sources":["../../src/jwt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jwt.js","sourceRoot":"","sources":["../../src/jwt.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,11 @@ export declare type IUserProfile = {
16
16
  metadata: any;
17
17
  roleIds?: string[];
18
18
  verified?: boolean;
19
+ superUser?: boolean;
20
+ };
21
+ export declare type ITeamUserTenant = {
22
+ tenantId: string;
23
+ roles: IRole[];
19
24
  };
20
25
  export declare type ITeamUser = {
21
26
  id: string;
@@ -33,6 +38,7 @@ export declare type ITeamUser = {
33
38
  customData?: any;
34
39
  lastLogin?: string;
35
40
  mfaEnabled?: boolean;
41
+ tenants?: ITeamUserTenant;
36
42
  };
37
43
  export declare type ITeamUserRole = {
38
44
  id: string;
@@ -1,4 +1,4 @@
1
- import { ISwitchTenant, ITenantsResponse } from './interfaces';
1
+ import { ISubTenant, ISwitchTenant, ITenantsResponse } from './interfaces';
2
2
  /**
3
3
  * switch logged in user to specific tenant by providing tenantId.
4
4
  *
@@ -12,3 +12,9 @@ export declare function switchTenant(body: ISwitchTenant): Promise<void>;
12
12
  * ``authorized user``
13
13
  */
14
14
  export declare function getTenants(): Promise<ITenantsResponse[]>;
15
+ /**
16
+ * retrieve logged in user's available sub tenants.
17
+ *
18
+ * ``authorized user``
19
+ */
20
+ export declare function getSubTenants(): Promise<ISubTenant>;
@@ -32,4 +32,15 @@ export function getTenants() {
32
32
  return Get(`${urls.identity.users.v2}/me/tenants`);
33
33
  });
34
34
  }
35
+ /**
36
+ * retrieve logged in user's available sub tenants.
37
+ *
38
+ * ``authorized user``
39
+ */
40
+ export function getSubTenants() {
41
+ return __awaiter(this, void 0, void 0, function* () {
42
+ console.debug('getSubTenants()');
43
+ return Get(urls.tenants.hierarchy.v1);
44
+ });
45
+ }
35
46
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tenants/index.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAC,GAAG,EAAE,GAAG,EAAC,MAAM,UAAU,CAAC;AAClC,OAAO,EAAC,IAAI,EAAC,MAAM,cAAc,CAAC;AAElC;;;;;GAKG;AACH,MAAM,UAAgB,YAAY,CAAC,IAAmB;;QACpD,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QACtC,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACvD,CAAC;CAAA;AAED;;;;GAIG;AACH,MAAM,UAAgB,UAAU;;QAC9B,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC9B,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,CAAC;IACrD,CAAC;CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tenants/index.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAC,GAAG,EAAE,GAAG,EAAC,MAAM,UAAU,CAAC;AAClC,OAAO,EAAC,IAAI,EAAC,MAAM,cAAc,CAAC;AAElC;;;;;GAKG;AACH,MAAM,UAAgB,YAAY,CAAC,IAAmB;;QACpD,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QACtC,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACvD,CAAC;CAAA;AAED;;;;GAIG;AACH,MAAM,UAAgB,UAAU;;QAC9B,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC9B,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,CAAC;IACrD,CAAC;CAAA;AAGD;;;;GAIG;AACH,MAAM,UAAgB,aAAa;;QACjC,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACjC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC;CAAA"}
@@ -17,3 +17,8 @@ export interface ITenantsResponse {
17
17
  currency?: string;
18
18
  logo?: string;
19
19
  }
20
+ export interface ISubTenant {
21
+ tenantId: string;
22
+ tenantName?: string;
23
+ level: number;
24
+ }
package/dist/fetch.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { ContextOptions } from './interfaces';
1
2
  interface RequestOptions {
2
3
  url: string;
3
4
  method: 'GET' | 'POST' | 'PATCH' | 'PUT' | 'DELETE';
@@ -8,6 +9,7 @@ interface RequestOptions {
8
9
  headers?: Record<string, string>;
9
10
  credentials?: RequestCredentials;
10
11
  }
12
+ export declare function getBaseUrl(context: ContextOptions): string;
11
13
  export declare const Get: (url: string, params?: any, opts?: Omit<RequestOptions, "method" | "url"> | undefined) => Promise<any>;
12
14
  export declare const Post: (url: string, body?: any, opts?: Omit<RequestOptions, "method" | "url"> | undefined) => Promise<any>;
13
15
  export declare const Patch: (url: string, body?: any, opts?: Omit<RequestOptions, "method" | "url"> | undefined) => Promise<any>;
package/dist/fetch.js CHANGED
@@ -9,25 +9,24 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.PostDownload = exports.Delete = exports.Put = exports.Patch = exports.Post = exports.Get = void 0;
12
+ exports.PostDownload = exports.Delete = exports.Put = exports.Patch = exports.Post = exports.Get = exports.getBaseUrl = void 0;
13
13
  const ContextHolder_1 = require("./ContextHolder");
14
14
  const error_1 = require("./error");
15
15
  function getBaseUrl(context) {
16
- return __awaiter(this, void 0, void 0, function* () {
17
- let baseUrl = context.baseUrl;
18
- const prefix = context.urlPrefix || 'frontegg';
19
- if (!baseUrl.endsWith('/')) {
20
- baseUrl += '/';
21
- }
22
- if (!baseUrl.endsWith(prefix)) {
23
- baseUrl += prefix;
24
- }
25
- return baseUrl;
26
- });
16
+ let baseUrl = context.baseUrl;
17
+ const prefix = context.urlPrefix || 'frontegg';
18
+ if (!baseUrl.endsWith('/')) {
19
+ baseUrl += '/';
20
+ }
21
+ if (!baseUrl.endsWith(prefix)) {
22
+ baseUrl += prefix;
23
+ }
24
+ return baseUrl;
27
25
  }
26
+ exports.getBaseUrl = getBaseUrl;
28
27
  function prepareUrl(context, url, params) {
29
28
  return __awaiter(this, void 0, void 0, function* () {
30
- const baseUrl = yield getBaseUrl(context);
29
+ const baseUrl = getBaseUrl(context);
31
30
  const paramsToSend = yield buildQueryParams(context, params);
32
31
  let finalUrl = url.startsWith('http') ? url : `${baseUrl}${url}`;
33
32
  const hasKeys = Object.keys(paramsToSend).length > 0;
package/dist/fetch.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../src/fetch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../src/fetch.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ export interface KeyValuePair {
13
13
  export declare type LogLevel = 'warn' | 'error';
14
14
  export interface ContextOptions {
15
15
  baseUrl: string;
16
+ clientId?: string;
16
17
  tokenResolver?: () => Promise<string> | string;
17
18
  additionalQueryParamsResolver?: () => Promise<KeyValuePair[]> | KeyValuePair[];
18
19
  additionalHeadersResolver?: () => Promise<KeyValuePair[]> | KeyValuePair[];
package/dist/jwt.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"jwt.js","sourceRoot":"","sources":["../src/jwt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jwt.js","sourceRoot":"","sources":["../src/jwt.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,11 @@ export declare type IUserProfile = {
16
16
  metadata: any;
17
17
  roleIds?: string[];
18
18
  verified?: boolean;
19
+ superUser?: boolean;
20
+ };
21
+ export declare type ITeamUserTenant = {
22
+ tenantId: string;
23
+ roles: IRole[];
19
24
  };
20
25
  export declare type ITeamUser = {
21
26
  id: string;
@@ -33,6 +38,7 @@ export declare type ITeamUser = {
33
38
  customData?: any;
34
39
  lastLogin?: string;
35
40
  mfaEnabled?: boolean;
41
+ tenants?: ITeamUserTenant;
36
42
  };
37
43
  export declare type ITeamUserRole = {
38
44
  id: string;
@@ -1,4 +1,4 @@
1
- import { ISwitchTenant, ITenantsResponse } from './interfaces';
1
+ import { ISubTenant, ISwitchTenant, ITenantsResponse } from './interfaces';
2
2
  /**
3
3
  * switch logged in user to specific tenant by providing tenantId.
4
4
  *
@@ -12,3 +12,9 @@ export declare function switchTenant(body: ISwitchTenant): Promise<void>;
12
12
  * ``authorized user``
13
13
  */
14
14
  export declare function getTenants(): Promise<ITenantsResponse[]>;
15
+ /**
16
+ * retrieve logged in user's available sub tenants.
17
+ *
18
+ * ``authorized user``
19
+ */
20
+ export declare function getSubTenants(): Promise<ISubTenant>;
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.getTenants = exports.switchTenant = void 0;
12
+ exports.getSubTenants = exports.getTenants = exports.switchTenant = void 0;
13
13
  const fetch_1 = require("../fetch");
14
14
  const constants_1 = require("../constants");
15
15
  /**
@@ -37,4 +37,16 @@ function getTenants() {
37
37
  });
38
38
  }
39
39
  exports.getTenants = getTenants;
40
+ /**
41
+ * retrieve logged in user's available sub tenants.
42
+ *
43
+ * ``authorized user``
44
+ */
45
+ function getSubTenants() {
46
+ return __awaiter(this, void 0, void 0, function* () {
47
+ console.debug('getSubTenants()');
48
+ return fetch_1.Get(constants_1.urls.tenants.hierarchy.v1);
49
+ });
50
+ }
51
+ exports.getSubTenants = getSubTenants;
40
52
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tenants/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,oCAAkC;AAClC,4CAAkC;AAElC;;;;;GAKG;AACH,SAAsB,YAAY,CAAC,IAAmB;;QACpD,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QACtC,OAAO,WAAG,CAAC,GAAG,gBAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACvD,CAAC;CAAA;AAHD,oCAGC;AAED;;;;GAIG;AACH,SAAsB,UAAU;;QAC9B,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC9B,OAAO,WAAG,CAAC,GAAG,gBAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,CAAC;IACrD,CAAC;CAAA;AAHD,gCAGC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tenants/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,oCAAkC;AAClC,4CAAkC;AAElC;;;;;GAKG;AACH,SAAsB,YAAY,CAAC,IAAmB;;QACpD,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QACtC,OAAO,WAAG,CAAC,GAAG,gBAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACvD,CAAC;CAAA;AAHD,oCAGC;AAED;;;;GAIG;AACH,SAAsB,UAAU;;QAC9B,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC9B,OAAO,WAAG,CAAC,GAAG,gBAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,CAAC;IACrD,CAAC;CAAA;AAHD,gCAGC;AAGD;;;;GAIG;AACH,SAAsB,aAAa;;QACjC,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACjC,OAAO,WAAG,CAAC,gBAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC;CAAA;AAHD,sCAGC"}
@@ -17,3 +17,8 @@ export interface ITenantsResponse {
17
17
  currency?: string;
18
18
  logo?: string;
19
19
  }
20
+ export interface ISubTenant {
21
+ tenantId: string;
22
+ tenantName?: string;
23
+ level: number;
24
+ }
package/dist/umd/index.js CHANGED
@@ -117,21 +117,19 @@
117
117
  }
118
118
 
119
119
  function getBaseUrl(context) {
120
- return __awaiter(this, void 0, void 0, function* () {
121
- let baseUrl = context.baseUrl;
122
- const prefix = context.urlPrefix || 'frontegg';
123
- if (!baseUrl.endsWith('/')) {
124
- baseUrl += '/';
125
- }
126
- if (!baseUrl.endsWith(prefix)) {
127
- baseUrl += prefix;
128
- }
129
- return baseUrl;
130
- });
120
+ let baseUrl = context.baseUrl;
121
+ const prefix = context.urlPrefix || 'frontegg';
122
+ if (!baseUrl.endsWith('/')) {
123
+ baseUrl += '/';
124
+ }
125
+ if (!baseUrl.endsWith(prefix)) {
126
+ baseUrl += prefix;
127
+ }
128
+ return baseUrl;
131
129
  }
132
130
  function prepareUrl(context, url, params) {
133
131
  return __awaiter(this, void 0, void 0, function* () {
134
- const baseUrl = yield getBaseUrl(context);
132
+ const baseUrl = getBaseUrl(context);
135
133
  const paramsToSend = yield buildQueryParams(context, params);
136
134
  let finalUrl = url.startsWith('http') ? url : `${baseUrl}${url}`;
137
135
  const hasKeys = Object.keys(paramsToSend).length > 0;
@@ -278,6 +276,7 @@
278
276
 
279
277
  var fetch$1 = /*#__PURE__*/Object.freeze({
280
278
  __proto__: null,
279
+ getBaseUrl: getBaseUrl,
281
280
  Get: Get,
282
281
  Post: Post,
283
282
  Patch: Patch,
@@ -304,7 +303,8 @@
304
303
  v1: '/identity/resources/configurations/v1'
305
304
  },
306
305
  sso: {
307
- v1: '/identity/resources/sso/v1'
306
+ v1: '/identity/resources/sso/v1',
307
+ v2: '/identity/resources/sso/v2'
308
308
  },
309
309
  permissions: {
310
310
  v1: '/identity/resources/permissions/v1'
@@ -351,6 +351,9 @@
351
351
  tenants: {
352
352
  accountSettings: {
353
353
  v1: '/tenants/resources/account-settings/v1'
354
+ },
355
+ hierarchy: {
356
+ v1: '/tenants/resources/hierarchy/v1'
354
357
  }
355
358
  },
356
359
  integrations: {
@@ -422,7 +425,10 @@
422
425
  },
423
426
  webhooks: {
424
427
  v1: '/webhook'
425
- }
428
+ },
429
+ oauth: {
430
+ v1: '/oauth'
431
+ },
426
432
  };
427
433
 
428
434
  /**
@@ -640,6 +646,16 @@
640
646
  return user;
641
647
  });
642
648
  }
649
+ function generateLoginResponseFromOAuthResponse(oauthResponse) {
650
+ return __awaiter(this, void 0, void 0, function* () {
651
+ ContextHolder.setAccessToken(oauthResponse.id_token);
652
+ const me = yield Get(`${urls.identity.users.v2}/me`);
653
+ const decodedContent = oauthResponse.id_token ? jwtDecode(oauthResponse.id_token) : {};
654
+ const user = Object.assign(Object.assign({ mfaRequired: false, accessToken: oauthResponse.id_token, refreshToken: oauthResponse.refresh_token }, decodedContent), me);
655
+ ContextHolder.setUser(user);
656
+ return user;
657
+ });
658
+ }
643
659
  /**
644
660
  * Check if requested email address has sso configuration
645
661
  * If true, this function will return the sso address to navigate to
@@ -1021,6 +1037,16 @@
1021
1037
  return Get(urls.identity.sso.v1);
1022
1038
  });
1023
1039
  }
1040
+ /**
1041
+ * Get social logins providers configurations V2 supports dev credentials as well
1042
+ * @return array of providers configurations
1043
+ */
1044
+ function getSocialLoginProvidersV2() {
1045
+ return __awaiter(this, void 0, void 0, function* () {
1046
+ console.debug('getSocialLoginProvidersV2()');
1047
+ return Get(urls.identity.sso.v2);
1048
+ });
1049
+ }
1024
1050
  /**
1025
1051
  * Login using social login
1026
1052
  * @return cookie with refresh token
@@ -1344,11 +1370,19 @@
1344
1370
  const data = yield Post(`${urls.identity.auth.v2}/user/oidc/postlogin`, body);
1345
1371
  return generateLoginResponse(data);
1346
1372
  });
1373
+ }
1374
+ function exchangeOAuthTokens(body) {
1375
+ return __awaiter(this, void 0, void 0, function* () {
1376
+ console.debug('exchangeOauthTokens()');
1377
+ const data = yield Post(`${urls.oauth.v1}/token`, body);
1378
+ return generateLoginResponseFromOAuthResponse(data);
1379
+ });
1347
1380
  }
1348
1381
 
1349
1382
  var auth = /*#__PURE__*/Object.freeze({
1350
1383
  __proto__: null,
1351
1384
  generateLoginResponse: generateLoginResponse,
1385
+ generateLoginResponseFromOAuthResponse: generateLoginResponseFromOAuthResponse,
1352
1386
  preLogin: preLogin,
1353
1387
  preLoginWithIdpType: preLoginWithIdpType,
1354
1388
  postLogin: postLogin,
@@ -1382,6 +1416,7 @@
1382
1416
  getOidcConfiguration: getOidcConfiguration,
1383
1417
  getSSOPublicConfiguration: getSSOPublicConfiguration,
1384
1418
  getSocialLoginProviders: getSocialLoginProviders,
1419
+ getSocialLoginProvidersV2: getSocialLoginProvidersV2,
1385
1420
  loginViaSocialLogin: loginViaSocialLogin,
1386
1421
  getVendorConfig: getVendorConfig,
1387
1422
  signUpUser: signUpUser,
@@ -1413,6 +1448,7 @@
1413
1448
  getSSOGroups: getSSOGroups,
1414
1449
  preLoginV2: preLoginV2,
1415
1450
  oidcPostLoginV2: oidcPostLoginV2,
1451
+ exchangeOAuthTokens: exchangeOAuthTokens,
1416
1452
  getGlobalSecurityPolicy: getGlobalSecurityPolicy,
1417
1453
  getMfaPolicy: getMfaPolicy,
1418
1454
  saveMfaPolicy: saveMfaPolicy,
@@ -2042,12 +2078,24 @@
2042
2078
  console.debug('getTenants()');
2043
2079
  return Get(`${urls.identity.users.v2}/me/tenants`);
2044
2080
  });
2081
+ }
2082
+ /**
2083
+ * retrieve logged in user's available sub tenants.
2084
+ *
2085
+ * ``authorized user``
2086
+ */
2087
+ function getSubTenants() {
2088
+ return __awaiter(this, void 0, void 0, function* () {
2089
+ console.debug('getSubTenants()');
2090
+ return Get(urls.tenants.hierarchy.v1);
2091
+ });
2045
2092
  }
2046
2093
 
2047
2094
  var tenants = /*#__PURE__*/Object.freeze({
2048
2095
  __proto__: null,
2049
2096
  switchTenant: switchTenant,
2050
- getTenants: getTenants
2097
+ getTenants: getTenants,
2098
+ getSubTenants: getSubTenants
2051
2099
  });
2052
2100
 
2053
2101
  /*** update account settings for tenant.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@frontegg/rest-api",
3
3
  "libName": "FronteggRestApi",
4
- "version": "2.10.44",
4
+ "version": "2.10.48",
5
5
  "author": "Frontegg LTD",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
package/src/auth/index.ts CHANGED
@@ -21,7 +21,8 @@ import {
21
21
  IGetUserPasswordConfig,
22
22
  ILogin,
23
23
  ILoginResponse,
24
- ILoginViaSocialLogin, ILoginViaSocialLoginResponse,
24
+ ILoginViaSocialLogin,
25
+ ILoginViaSocialLoginResponse,
25
26
  ILoginWithMfa,
26
27
  IOidcPostLogin,
27
28
  IOidcConfiguration,
@@ -46,7 +47,20 @@ import {
46
47
  IUserIdResponse,
47
48
  IVendorConfig,
48
49
  IVerifyMfa,
49
- IVerifyMfaResponse, TestConfig, ISSOPublicConfiguration, IPreLoginWithIdpTypeResponse, IPasswordlessPreLogin, IPasswordlessPostLogin, ICreateSSODomain, IVerifyInviteToken, ISSODomain, ISSOConfigurationDefaultRoles, ISSOConfiguration, IUpdateSSOConfiguration, IOidcPostLoginV2
50
+ IVerifyMfaResponse,
51
+ TestConfig,
52
+ ISSOPublicConfiguration,
53
+ IPreLoginWithIdpTypeResponse,
54
+ IPasswordlessPreLogin,
55
+ IPasswordlessPostLogin,
56
+ ICreateSSODomain,
57
+ IVerifyInviteToken,
58
+ ISSODomain,
59
+ ISSOConfigurationDefaultRoles,
60
+ ISSOConfiguration,
61
+ IUpdateSSOConfiguration,
62
+ IOidcPostLoginV2,
63
+ IExchangeOAuthTokens, IOAuthTokenResponse, ISocialLoginProviderConfigurationV2,
50
64
  } from './interfaces';
51
65
 
52
66
  /*****************************************
@@ -69,6 +83,21 @@ export async function generateLoginResponse(loginResponse: ILoginResponse): Prom
69
83
  return user;
70
84
  }
71
85
 
86
+ export async function generateLoginResponseFromOAuthResponse(oauthResponse: IOAuthTokenResponse): Promise<ILoginResponse> {
87
+ ContextHolder.setAccessToken(oauthResponse.id_token);
88
+ const me = await Get(`${urls.identity.users.v2}/me`);
89
+ const decodedContent: any = oauthResponse.id_token ? jwtDecode(oauthResponse.id_token) : {};
90
+ const user = {
91
+ mfaRequired: false,
92
+ accessToken: oauthResponse.id_token,
93
+ refreshToken: oauthResponse.refresh_token,
94
+ ...decodedContent,
95
+ ...me,
96
+ };
97
+ ContextHolder.setUser(user);
98
+ return user;
99
+ }
100
+
72
101
  /**
73
102
  * Check if requested email address has sso configuration
74
103
  * If true, this function will return the sso address to navigate to
@@ -422,6 +451,15 @@ export async function getSocialLoginProviders(): Promise<ISocialLoginProviderCon
422
451
  return Get(urls.identity.sso.v1);
423
452
  }
424
453
 
454
+ /**
455
+ * Get social logins providers configurations V2 supports dev credentials as well
456
+ * @return array of providers configurations
457
+ */
458
+ export async function getSocialLoginProvidersV2(): Promise<ISocialLoginProviderConfigurationV2[]> {
459
+ console.debug('getSocialLoginProvidersV2()');
460
+ return Get(urls.identity.sso.v2);
461
+ }
462
+
425
463
  /**
426
464
  * Login using social login
427
465
  * @return cookie with refresh token
@@ -728,3 +766,9 @@ export async function oidcPostLoginV2(body: IOidcPostLoginV2): Promise<ILoginRes
728
766
  const data = await Post(`${urls.identity.auth.v2}/user/oidc/postlogin`, body);
729
767
  return generateLoginResponse(data);
730
768
  }
769
+
770
+ export async function exchangeOAuthTokens(body: IExchangeOAuthTokens): Promise<ILoginResponse> {
771
+ console.debug('exchangeOauthTokens()');
772
+ const data = await Post(`${urls.oauth.v1}/token`, body);
773
+ return generateLoginResponseFromOAuthResponse(data);
774
+ }
@@ -143,6 +143,15 @@ export interface ISocialLoginProviderConfiguration {
143
143
  active: boolean;
144
144
  }
145
145
 
146
+ export interface ISocialLoginProviderConfigurationV2 {
147
+ type: SocialLoginProviders;
148
+ clientId?: string | null;
149
+ redirectUrl: string;
150
+ active: boolean;
151
+ authorizationUrl?: string | null;
152
+ customised: boolean;
153
+ }
154
+
146
155
  export interface ILoginViaSocialLogin {
147
156
  code: string;
148
157
  redirectUri?: string;
@@ -315,4 +324,17 @@ export interface ISSOConfiguration {
315
324
  groups: ISamlRolesGroup[]
316
325
  }
317
326
 
327
+ export interface IExchangeOAuthTokens {
328
+ code: string;
329
+ redirect_uri: string;
330
+ code_verifier: string;
331
+ }
332
+
333
+ export interface IOAuthTokenResponse {
334
+ access_token: string;
335
+ expires_in?: number;
336
+ id_token: string;
337
+ refresh_token: string;
338
+ }
339
+
318
340
  export type IUpdateSSOConfiguration = Partial<Omit<ISSOConfiguration, 'id' | 'createdAt' | 'updatedAt' | 'domains'>>
package/src/constants.ts CHANGED
@@ -16,7 +16,8 @@ export const urls = {
16
16
  v1: '/identity/resources/configurations/v1'
17
17
  },
18
18
  sso: {
19
- v1: '/identity/resources/sso/v1'
19
+ v1: '/identity/resources/sso/v1',
20
+ v2: '/identity/resources/sso/v2'
20
21
  },
21
22
  permissions: {
22
23
  v1: '/identity/resources/permissions/v1'
@@ -63,6 +64,9 @@ export const urls = {
63
64
  tenants: {
64
65
  accountSettings: {
65
66
  v1: '/tenants/resources/account-settings/v1'
67
+ },
68
+ hierarchy: {
69
+ v1: '/tenants/resources/hierarchy/v1'
66
70
  }
67
71
  },
68
72
  integrations: {
@@ -134,5 +138,8 @@ export const urls = {
134
138
  },
135
139
  webhooks: {
136
140
  v1: '/webhook'
137
- }
141
+ },
142
+ oauth: {
143
+ v1: '/oauth'
144
+ },
138
145
  }
package/src/fetch.ts CHANGED
@@ -13,7 +13,7 @@ interface RequestOptions {
13
13
  credentials?: RequestCredentials;
14
14
  }
15
15
 
16
- async function getBaseUrl(context: ContextOptions): Promise<string> {
16
+ export function getBaseUrl(context: ContextOptions): string {
17
17
  let baseUrl = context.baseUrl;
18
18
  const prefix = context.urlPrefix || 'frontegg';
19
19
  if (!baseUrl.endsWith('/')) {
@@ -26,7 +26,7 @@ async function getBaseUrl(context: ContextOptions): Promise<string> {
26
26
  }
27
27
 
28
28
  async function prepareUrl(context: ContextOptions, url: string, params?: any): Promise<string> {
29
- const baseUrl = await getBaseUrl(context);
29
+ const baseUrl = getBaseUrl(context);
30
30
  const paramsToSend = await buildQueryParams(context, params);
31
31
 
32
32
  let finalUrl = url.startsWith('http') ? url : `${baseUrl}${url}`;
package/src/interfaces.ts CHANGED
@@ -17,6 +17,7 @@ export type LogLevel = 'warn' | 'error';
17
17
 
18
18
  export interface ContextOptions {
19
19
  baseUrl: string;
20
+ clientId?: string;
20
21
  tokenResolver?: () => Promise<string> | string; // custom resolve Authorization Header value
21
22
  additionalQueryParamsResolver?: () => Promise<KeyValuePair[]> | KeyValuePair[];
22
23
  additionalHeadersResolver?: () => Promise<KeyValuePair[]> | KeyValuePair[];
package/src/jwt.ts CHANGED
@@ -87,6 +87,6 @@ export const jwtDecode = (token: string, options: { header?: boolean } = {}) =>
87
87
  try {
88
88
  return JSON.parse(base64UrlDecode(token.split('.')[pos]));
89
89
  } catch (e) {
90
- throw new InvalidTokenError('Invalid token specified: ' + e.message);
90
+ throw new InvalidTokenError('Invalid token specified: ' + (e as Error).message);
91
91
  }
92
92
  };