@descope/angular-sdk 0.5.10 → 0.5.11

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 (146) hide show
  1. package/.eslintrc.json +41 -0
  2. package/.prettierrc +7 -0
  3. package/CHANGELOG.md +5 -0
  4. package/LICENSE +21 -0
  5. package/README.md +647 -11
  6. package/angular.json +154 -0
  7. package/{esm2022 → dist/esm2022}/lib/components/access-key-management/access-key-management.component.mjs +4 -4
  8. package/{esm2022 → dist/esm2022}/lib/components/audit-management/audit-management.component.mjs +4 -4
  9. package/dist/esm2022/lib/components/descope/descope.component.mjs +156 -0
  10. package/{esm2022 → dist/esm2022}/lib/components/role-management/role-management.component.mjs +4 -4
  11. package/dist/esm2022/lib/components/sign-in-flow/sign-in-flow.component.mjs +44 -0
  12. package/dist/esm2022/lib/components/sign-up-flow/sign-up-flow.component.mjs +44 -0
  13. package/dist/esm2022/lib/components/sign-up-or-in-flow/sign-up-or-in-flow.component.mjs +44 -0
  14. package/{esm2022 → dist/esm2022}/lib/components/user-management/user-management.component.mjs +4 -4
  15. package/dist/esm2022/lib/components/user-profile/user-profile.component.mjs +66 -0
  16. package/{esm2022 → dist/esm2022}/lib/descope-auth.module.mjs +5 -5
  17. package/{esm2022 → dist/esm2022}/lib/services/descope-auth.guard.mjs +1 -1
  18. package/dist/esm2022/lib/services/descope-auth.service.mjs +154 -0
  19. package/dist/esm2022/lib/services/descope.interceptor.mjs +51 -0
  20. package/dist/esm2022/lib/types/types.mjs +6 -0
  21. package/{esm2022 → dist/esm2022}/lib/utils/constants.mjs +1 -1
  22. package/dist/esm2022/lib/utils/helpers.mjs +27 -0
  23. package/{fesm2022 → dist/fesm2022}/descope-angular-sdk.mjs +37 -37
  24. package/dist/fesm2022/descope-angular-sdk.mjs.map +1 -0
  25. package/{lib → dist/lib}/services/descope-auth.service.d.ts +3 -2
  26. package/jest.config.js +17 -0
  27. package/package.json +62 -19
  28. package/project.json +17 -0
  29. package/projects/angular-sdk/.eslintrc.json +32 -0
  30. package/projects/angular-sdk/ng-package.json +17 -0
  31. package/projects/angular-sdk/package.json +87 -0
  32. package/projects/angular-sdk/src/environment.ts +3 -0
  33. package/projects/angular-sdk/src/lib/components/access-key-management/access-key-management.component.spec.ts +84 -0
  34. package/projects/angular-sdk/src/lib/components/access-key-management/access-key-management.component.ts +63 -0
  35. package/projects/angular-sdk/src/lib/components/audit-management/audit-management.component.spec.ts +84 -0
  36. package/projects/angular-sdk/src/lib/components/audit-management/audit-management.component.ts +63 -0
  37. package/projects/angular-sdk/src/lib/components/descope/descope.component.spec.ts +142 -0
  38. package/projects/angular-sdk/src/lib/components/descope/descope.component.ts +171 -0
  39. package/projects/angular-sdk/src/lib/components/role-management/role-management.component.spec.ts +84 -0
  40. package/projects/angular-sdk/src/lib/components/role-management/role-management.component.ts +63 -0
  41. package/projects/angular-sdk/src/lib/components/sign-in-flow/sign-in-flow.component.html +17 -0
  42. package/projects/angular-sdk/src/lib/components/sign-in-flow/sign-in-flow.component.spec.ts +53 -0
  43. package/projects/angular-sdk/src/lib/components/sign-in-flow/sign-in-flow.component.ts +35 -0
  44. package/projects/angular-sdk/src/lib/components/sign-up-flow/sign-up-flow.component.html +17 -0
  45. package/projects/angular-sdk/src/lib/components/sign-up-flow/sign-up-flow.component.spec.ts +51 -0
  46. package/projects/angular-sdk/src/lib/components/sign-up-flow/sign-up-flow.component.ts +35 -0
  47. package/projects/angular-sdk/src/lib/components/sign-up-or-in-flow/sign-up-or-in-flow.component.html +17 -0
  48. package/projects/angular-sdk/src/lib/components/sign-up-or-in-flow/sign-up-or-in-flow.component.spec.ts +53 -0
  49. package/projects/angular-sdk/src/lib/components/sign-up-or-in-flow/sign-up-or-in-flow.component.ts +35 -0
  50. package/projects/angular-sdk/src/lib/components/user-management/user-management.component.spec.ts +84 -0
  51. package/projects/angular-sdk/src/lib/components/user-management/user-management.component.ts +64 -0
  52. package/projects/angular-sdk/src/lib/components/user-profile/user-profile.component.spec.ts +93 -0
  53. package/projects/angular-sdk/src/lib/components/user-profile/user-profile.component.ts +77 -0
  54. package/projects/angular-sdk/src/lib/descope-auth.module.ts +61 -0
  55. package/projects/angular-sdk/src/lib/services/descope-auth.guard.spec.ts +76 -0
  56. package/projects/angular-sdk/src/lib/services/descope-auth.guard.ts +16 -0
  57. package/projects/angular-sdk/src/lib/services/descope-auth.service.spec.ts +309 -0
  58. package/projects/angular-sdk/src/lib/services/descope-auth.service.ts +200 -0
  59. package/projects/angular-sdk/src/lib/services/descope.interceptor.spec.ts +102 -0
  60. package/projects/angular-sdk/src/lib/services/descope.interceptor.ts +76 -0
  61. package/projects/angular-sdk/src/lib/types/types.ts +15 -0
  62. package/projects/angular-sdk/src/lib/utils/constants.ts +8 -0
  63. package/projects/angular-sdk/src/lib/utils/helpers.spec.ts +103 -0
  64. package/projects/angular-sdk/src/lib/utils/helpers.ts +36 -0
  65. package/projects/angular-sdk/src/public-api.ts +18 -0
  66. package/projects/angular-sdk/tsconfig.lib.json +12 -0
  67. package/projects/angular-sdk/tsconfig.lib.prod.json +10 -0
  68. package/projects/angular-sdk/tsconfig.spec.json +11 -0
  69. package/projects/demo-app/.eslintrc.json +31 -0
  70. package/projects/demo-app/src/app/app-routing.module.ts +33 -0
  71. package/projects/demo-app/src/app/app.component.html +3 -0
  72. package/projects/demo-app/src/app/app.component.scss +18 -0
  73. package/projects/demo-app/src/app/app.component.spec.ts +37 -0
  74. package/projects/demo-app/src/app/app.component.ts +8 -0
  75. package/projects/demo-app/src/app/app.module.ts +63 -0
  76. package/projects/demo-app/src/app/home/home.component.html +32 -0
  77. package/projects/demo-app/src/app/home/home.component.scss +15 -0
  78. package/projects/demo-app/src/app/home/home.component.spec.ts +44 -0
  79. package/projects/demo-app/src/app/home/home.component.ts +85 -0
  80. package/projects/demo-app/src/app/interceptor/auth.interceptor.ts +20 -0
  81. package/projects/demo-app/src/app/login/login.component.html +20 -0
  82. package/projects/demo-app/src/app/login/login.component.spec.ts +42 -0
  83. package/projects/demo-app/src/app/login/login.component.ts +41 -0
  84. package/projects/demo-app/src/app/manage-access-keys/manage-access-keys.component.html +12 -0
  85. package/projects/demo-app/src/app/manage-access-keys/manage-access-keys.component.spec.ts +36 -0
  86. package/projects/demo-app/src/app/manage-access-keys/manage-access-keys.component.ts +15 -0
  87. package/projects/demo-app/src/app/manage-audit/manage-audit.component.html +6 -0
  88. package/projects/demo-app/src/app/manage-audit/manage-audit.component.spec.ts +36 -0
  89. package/projects/demo-app/src/app/manage-audit/manage-audit.component.ts +15 -0
  90. package/projects/demo-app/src/app/manage-roles/manage-roles.component.html +6 -0
  91. package/projects/demo-app/src/app/manage-roles/manage-roles.component.spec.ts +36 -0
  92. package/projects/demo-app/src/app/manage-roles/manage-roles.component.ts +15 -0
  93. package/projects/demo-app/src/app/manage-users/manage-users.component.html +6 -0
  94. package/projects/demo-app/src/app/manage-users/manage-users.component.spec.ts +36 -0
  95. package/projects/demo-app/src/app/manage-users/manage-users.component.ts +15 -0
  96. package/projects/demo-app/src/app/my-user-profile/my-user-profile.component.html +6 -0
  97. package/projects/demo-app/src/app/my-user-profile/my-user-profile.component.spec.ts +36 -0
  98. package/projects/demo-app/src/app/my-user-profile/my-user-profile.component.ts +20 -0
  99. package/projects/demo-app/src/app/my-user-profile/my-user-profile.scss +18 -0
  100. package/projects/demo-app/src/app/protected/protected.component.html +18 -0
  101. package/projects/demo-app/src/app/protected/protected.component.scss +8 -0
  102. package/projects/demo-app/src/app/protected/protected.component.spec.ts +42 -0
  103. package/projects/demo-app/src/app/protected/protected.component.ts +41 -0
  104. package/projects/demo-app/src/assets/.gitkeep +0 -0
  105. package/projects/demo-app/src/environments/conifg.ts +14 -0
  106. package/projects/demo-app/src/environments/environment.ts +20 -0
  107. package/projects/demo-app/src/favicon.ico +0 -0
  108. package/projects/demo-app/src/index.html +17 -0
  109. package/projects/demo-app/src/main.ts +7 -0
  110. package/projects/demo-app/src/styles.scss +21 -0
  111. package/projects/demo-app/tsconfig.app.json +11 -0
  112. package/projects/demo-app/tsconfig.spec.json +10 -0
  113. package/scripts/setversion/setversion.js +20 -0
  114. package/setup-jest.ts +1 -0
  115. package/tsconfig.json +36 -0
  116. package/esm2022/lib/components/descope/descope.component.mjs +0 -156
  117. package/esm2022/lib/components/sign-in-flow/sign-in-flow.component.mjs +0 -44
  118. package/esm2022/lib/components/sign-up-flow/sign-up-flow.component.mjs +0 -44
  119. package/esm2022/lib/components/sign-up-or-in-flow/sign-up-or-in-flow.component.mjs +0 -44
  120. package/esm2022/lib/components/user-profile/user-profile.component.mjs +0 -66
  121. package/esm2022/lib/services/descope-auth.service.mjs +0 -154
  122. package/esm2022/lib/services/descope.interceptor.mjs +0 -51
  123. package/esm2022/lib/types/types.mjs +0 -6
  124. package/esm2022/lib/utils/helpers.mjs +0 -27
  125. package/fesm2022/descope-angular-sdk.mjs.map +0 -1
  126. /package/{environment.d.ts → dist/environment.d.ts} +0 -0
  127. /package/{esm2022 → dist/esm2022}/descope-angular-sdk.mjs +0 -0
  128. /package/{esm2022 → dist/esm2022}/environment.mjs +0 -0
  129. /package/{esm2022 → dist/esm2022}/public-api.mjs +0 -0
  130. /package/{index.d.ts → dist/index.d.ts} +0 -0
  131. /package/{lib → dist/lib}/components/access-key-management/access-key-management.component.d.ts +0 -0
  132. /package/{lib → dist/lib}/components/audit-management/audit-management.component.d.ts +0 -0
  133. /package/{lib → dist/lib}/components/descope/descope.component.d.ts +0 -0
  134. /package/{lib → dist/lib}/components/role-management/role-management.component.d.ts +0 -0
  135. /package/{lib → dist/lib}/components/sign-in-flow/sign-in-flow.component.d.ts +0 -0
  136. /package/{lib → dist/lib}/components/sign-up-flow/sign-up-flow.component.d.ts +0 -0
  137. /package/{lib → dist/lib}/components/sign-up-or-in-flow/sign-up-or-in-flow.component.d.ts +0 -0
  138. /package/{lib → dist/lib}/components/user-management/user-management.component.d.ts +0 -0
  139. /package/{lib → dist/lib}/components/user-profile/user-profile.component.d.ts +0 -0
  140. /package/{lib → dist/lib}/descope-auth.module.d.ts +0 -0
  141. /package/{lib → dist/lib}/services/descope-auth.guard.d.ts +0 -0
  142. /package/{lib → dist/lib}/services/descope.interceptor.d.ts +0 -0
  143. /package/{lib → dist/lib}/types/types.d.ts +0 -0
  144. /package/{lib → dist/lib}/utils/constants.d.ts +0 -0
  145. /package/{lib → dist/lib}/utils/helpers.d.ts +0 -0
  146. /package/{public-api.d.ts → dist/public-api.d.ts} +0 -0
@@ -37,10 +37,10 @@ export class UserManagementComponent {
37
37
  this.webComponent.logger = this.logger;
38
38
  }
39
39
  }
40
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: UserManagementComponent, deps: [{ token: i0.ElementRef }, { token: i1.DescopeAuthConfig }], target: i0.ɵɵFactoryTarget.Component }); }
41
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: UserManagementComponent, isStandalone: true, selector: "user-management[tenant]", inputs: { tenant: "tenant", widgetId: "widgetId", theme: "theme", debug: "debug", logger: "logger" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true }); }
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UserManagementComponent, deps: [{ token: i0.ElementRef }, { token: i1.DescopeAuthConfig }], target: i0.ɵɵFactoryTarget.Component }); }
41
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: UserManagementComponent, isStandalone: true, selector: "user-management[tenant]", inputs: { tenant: "tenant", widgetId: "widgetId", theme: "theme", debug: "debug", logger: "logger" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true }); }
42
42
  }
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: UserManagementComponent, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UserManagementComponent, decorators: [{
44
44
  type: Component,
45
45
  args: [{
46
46
  selector: 'user-management[tenant]',
@@ -58,4 +58,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
58
58
  }], logger: [{
59
59
  type: Input
60
60
  }] } });
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1tYW5hZ2VtZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItc2RrL3NyYy9saWIvY29tcG9uZW50cy91c2VyLW1hbmFnZW1lbnQvdXNlci1tYW5hZ2VtZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTywyQkFBMkIsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBUzFFLE1BQU0sT0FBTyx1QkFBdUI7SUFhbkMsWUFDUyxVQUFzQixFQUM5QixhQUFnQztRQUR4QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBSGQsaUJBQVksR0FBRyxJQUFJLDJCQUEyQixFQUFFLENBQUM7UUFNakUsSUFBSSxDQUFDLFNBQVMsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxPQUFPLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQztRQUNyQyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQyxhQUFhLENBQUM7SUFDbEQsQ0FBQztJQUVELFFBQVE7UUFDUCxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxXQUFXO1FBQ1YsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVPLGlCQUFpQjtRQUN4QixJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUUzRCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDakIsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUN6RDtRQUNELElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN2QixJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDdEU7UUFDRCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3BEO1FBQ0QsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztTQUMvRDtRQUVELElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNmLElBQUksQ0FBQyxZQUFvQixDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1NBQ2hEO0lBQ0YsQ0FBQzs4R0FwRFcsdUJBQXVCO2tHQUF2Qix1QkFBdUIsOE1BRnpCLEVBQUU7OzJGQUVBLHVCQUF1QjtrQkFMbkMsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUseUJBQXlCO29CQUNuQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLEVBQUU7aUJBQ1o7aUlBS1MsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IERlc2NvcGVVc2VyTWFuYWdlbWVudFdpZGdldCBmcm9tICdAZGVzY29wZS91c2VyLW1hbmFnZW1lbnQtd2lkZ2V0JztcbmltcG9ydCB7IElMb2dnZXIgfSBmcm9tICdAZGVzY29wZS93ZWItY29tcG9uZW50JztcbmltcG9ydCB7IERlc2NvcGVBdXRoQ29uZmlnIH0gZnJvbSAnLi4vLi4vdHlwZXMvdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICd1c2VyLW1hbmFnZW1lbnRbdGVuYW50XScsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBjbGFzcyBVc2VyTWFuYWdlbWVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcblx0cHJvamVjdElkOiBzdHJpbmc7XG5cdGJhc2VVcmw/OiBzdHJpbmc7XG5cdGJhc2VTdGF0aWNVcmw/OiBzdHJpbmc7XG5cdEBJbnB1dCgpIHRlbmFudDogc3RyaW5nO1xuXHRASW5wdXQoKSB3aWRnZXRJZDogc3RyaW5nO1xuXG5cdEBJbnB1dCgpIHRoZW1lOiAnbGlnaHQnIHwgJ2RhcmsnIHwgJ29zJztcblx0QElucHV0KCkgZGVidWc6IGJvb2xlYW47XG5cdEBJbnB1dCgpIGxvZ2dlcjogSUxvZ2dlcjtcblxuXHRwcml2YXRlIHJlYWRvbmx5IHdlYkNvbXBvbmVudCA9IG5ldyBEZXNjb3BlVXNlck1hbmFnZW1lbnRXaWRnZXQoKTtcblxuXHRjb25zdHJ1Y3Rvcihcblx0XHRwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG5cdFx0ZGVzY29wZUNvbmZpZzogRGVzY29wZUF1dGhDb25maWdcblx0KSB7XG5cdFx0dGhpcy5wcm9qZWN0SWQgPSBkZXNjb3BlQ29uZmlnLnByb2plY3RJZDtcblx0XHR0aGlzLmJhc2VVcmwgPSBkZXNjb3BlQ29uZmlnLmJhc2VVcmw7XG5cdFx0dGhpcy5iYXNlU3RhdGljVXJsID0gZGVzY29wZUNvbmZpZy5iYXNlU3RhdGljVXJsO1xuXHR9XG5cblx0bmdPbkluaXQoKSB7XG5cdFx0dGhpcy5zZXR1cFdlYkNvbXBvbmVudCgpO1xuXHRcdHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKHRoaXMud2ViQ29tcG9uZW50KTtcblx0fVxuXG5cdG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuXHRcdHRoaXMuc2V0dXBXZWJDb21wb25lbnQoKTtcblx0fVxuXG5cdHByaXZhdGUgc2V0dXBXZWJDb21wb25lbnQoKSB7XG5cdFx0dGhpcy53ZWJDb21wb25lbnQuc2V0QXR0cmlidXRlKCdwcm9qZWN0LWlkJywgdGhpcy5wcm9qZWN0SWQpO1xuXHRcdHRoaXMud2ViQ29tcG9uZW50LnNldEF0dHJpYnV0ZSgndGVuYW50JywgdGhpcy50ZW5hbnQpO1xuXHRcdHRoaXMud2ViQ29tcG9uZW50LnNldEF0dHJpYnV0ZSgnd2lkZ2V0LWlkJywgdGhpcy53aWRnZXRJZCk7XG5cblx0XHRpZiAodGhpcy5iYXNlVXJsKSB7XG5cdFx0XHR0aGlzLndlYkNvbXBvbmVudC5zZXRBdHRyaWJ1dGUoJ2Jhc2UtdXJsJywgdGhpcy5iYXNlVXJsKTtcblx0XHR9XG5cdFx0aWYgKHRoaXMuYmFzZVN0YXRpY1VybCkge1xuXHRcdFx0dGhpcy53ZWJDb21wb25lbnQuc2V0QXR0cmlidXRlKCdiYXNlLXN0YXRpYy11cmwnLCB0aGlzLmJhc2VTdGF0aWNVcmwpO1xuXHRcdH1cblx0XHRpZiAodGhpcy50aGVtZSkge1xuXHRcdFx0dGhpcy53ZWJDb21wb25lbnQuc2V0QXR0cmlidXRlKCd0aGVtZScsIHRoaXMudGhlbWUpO1xuXHRcdH1cblx0XHRpZiAodGhpcy5kZWJ1Zykge1xuXHRcdFx0dGhpcy53ZWJDb21wb25lbnQuc2V0QXR0cmlidXRlKCdkZWJ1ZycsIHRoaXMuZGVidWcudG9TdHJpbmcoKSk7XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMubG9nZ2VyKSB7XG5cdFx0XHQodGhpcy53ZWJDb21wb25lbnQgYXMgYW55KS5sb2dnZXIgPSB0aGlzLmxvZ2dlcjtcblx0XHR9XG5cdH1cbn1cbiJdfQ==
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1tYW5hZ2VtZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItc2RrL3NyYy9saWIvY29tcG9uZW50cy91c2VyLW1hbmFnZW1lbnQvdXNlci1tYW5hZ2VtZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTywyQkFBMkIsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBUzFFLE1BQU0sT0FBTyx1QkFBdUI7SUFhbEMsWUFDVSxVQUFzQixFQUM5QixhQUFnQztRQUR4QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBSGYsaUJBQVksR0FBRyxJQUFJLDJCQUEyQixFQUFFLENBQUM7UUFNaEUsSUFBSSxDQUFDLFNBQVMsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxPQUFPLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQztRQUNyQyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQyxhQUFhLENBQUM7SUFDbkQsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUUzRCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUMxRDtRQUNELElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDdkU7UUFDRCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3JEO1FBQ0QsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztTQUNoRTtRQUVELElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNkLElBQUksQ0FBQyxZQUFvQixDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1NBQ2pEO0lBQ0gsQ0FBQzsrR0FwRFUsdUJBQXVCO21HQUF2Qix1QkFBdUIsOE1BRnhCLEVBQUU7OzRGQUVELHVCQUF1QjtrQkFMbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUseUJBQXlCO29CQUNuQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLEVBQUU7aUJBQ2I7aUlBS1UsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IERlc2NvcGVVc2VyTWFuYWdlbWVudFdpZGdldCBmcm9tICdAZGVzY29wZS91c2VyLW1hbmFnZW1lbnQtd2lkZ2V0JztcbmltcG9ydCB7IElMb2dnZXIgfSBmcm9tICdAZGVzY29wZS93ZWItY29tcG9uZW50JztcbmltcG9ydCB7IERlc2NvcGVBdXRoQ29uZmlnIH0gZnJvbSAnLi4vLi4vdHlwZXMvdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd1c2VyLW1hbmFnZW1lbnRbdGVuYW50XScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBjbGFzcyBVc2VyTWFuYWdlbWVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgcHJvamVjdElkOiBzdHJpbmc7XG4gIGJhc2VVcmw/OiBzdHJpbmc7XG4gIGJhc2VTdGF0aWNVcmw/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHRlbmFudDogc3RyaW5nO1xuICBASW5wdXQoKSB3aWRnZXRJZDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIHRoZW1lOiAnbGlnaHQnIHwgJ2RhcmsnIHwgJ29zJztcbiAgQElucHV0KCkgZGVidWc6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGxvZ2dlcjogSUxvZ2dlcjtcblxuICBwcml2YXRlIHJlYWRvbmx5IHdlYkNvbXBvbmVudCA9IG5ldyBEZXNjb3BlVXNlck1hbmFnZW1lbnRXaWRnZXQoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgZGVzY29wZUNvbmZpZzogRGVzY29wZUF1dGhDb25maWdcbiAgKSB7XG4gICAgdGhpcy5wcm9qZWN0SWQgPSBkZXNjb3BlQ29uZmlnLnByb2plY3RJZDtcbiAgICB0aGlzLmJhc2VVcmwgPSBkZXNjb3BlQ29uZmlnLmJhc2VVcmw7XG4gICAgdGhpcy5iYXNlU3RhdGljVXJsID0gZGVzY29wZUNvbmZpZy5iYXNlU3RhdGljVXJsO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zZXR1cFdlYkNvbXBvbmVudCgpO1xuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKHRoaXMud2ViQ29tcG9uZW50KTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuc2V0dXBXZWJDb21wb25lbnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBXZWJDb21wb25lbnQoKSB7XG4gICAgdGhpcy53ZWJDb21wb25lbnQuc2V0QXR0cmlidXRlKCdwcm9qZWN0LWlkJywgdGhpcy5wcm9qZWN0SWQpO1xuICAgIHRoaXMud2ViQ29tcG9uZW50LnNldEF0dHJpYnV0ZSgndGVuYW50JywgdGhpcy50ZW5hbnQpO1xuICAgIHRoaXMud2ViQ29tcG9uZW50LnNldEF0dHJpYnV0ZSgnd2lkZ2V0LWlkJywgdGhpcy53aWRnZXRJZCk7XG5cbiAgICBpZiAodGhpcy5iYXNlVXJsKSB7XG4gICAgICB0aGlzLndlYkNvbXBvbmVudC5zZXRBdHRyaWJ1dGUoJ2Jhc2UtdXJsJywgdGhpcy5iYXNlVXJsKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuYmFzZVN0YXRpY1VybCkge1xuICAgICAgdGhpcy53ZWJDb21wb25lbnQuc2V0QXR0cmlidXRlKCdiYXNlLXN0YXRpYy11cmwnLCB0aGlzLmJhc2VTdGF0aWNVcmwpO1xuICAgIH1cbiAgICBpZiAodGhpcy50aGVtZSkge1xuICAgICAgdGhpcy53ZWJDb21wb25lbnQuc2V0QXR0cmlidXRlKCd0aGVtZScsIHRoaXMudGhlbWUpO1xuICAgIH1cbiAgICBpZiAodGhpcy5kZWJ1Zykge1xuICAgICAgdGhpcy53ZWJDb21wb25lbnQuc2V0QXR0cmlidXRlKCdkZWJ1ZycsIHRoaXMuZGVidWcudG9TdHJpbmcoKSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubG9nZ2VyKSB7XG4gICAgICAodGhpcy53ZWJDb21wb25lbnQgYXMgYW55KS5sb2dnZXIgPSB0aGlzLmxvZ2dlcjtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,66 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import DescopeUserProfileWidget from '@descope/user-profile-widget';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../types/types";
5
+ export class UserProfileComponent {
6
+ constructor(elementRef, descopeConfig) {
7
+ this.elementRef = elementRef;
8
+ this.logout = new EventEmitter();
9
+ this.webComponent = new DescopeUserProfileWidget();
10
+ this.projectId = descopeConfig.projectId;
11
+ this.baseUrl = descopeConfig.baseUrl;
12
+ this.baseStaticUrl = descopeConfig.baseStaticUrl;
13
+ }
14
+ ngOnInit() {
15
+ this.setupWebComponent();
16
+ this.elementRef.nativeElement.appendChild(this.webComponent);
17
+ }
18
+ ngOnChanges() {
19
+ this.setupWebComponent();
20
+ }
21
+ setupWebComponent() {
22
+ this.webComponent.setAttribute('project-id', this.projectId);
23
+ this.webComponent.setAttribute('widget-id', this.widgetId);
24
+ if (this.baseUrl) {
25
+ this.webComponent.setAttribute('base-url', this.baseUrl);
26
+ }
27
+ if (this.baseStaticUrl) {
28
+ this.webComponent.setAttribute('base-static-url', this.baseStaticUrl);
29
+ }
30
+ if (this.theme) {
31
+ this.webComponent.setAttribute('theme', this.theme);
32
+ }
33
+ if (this.debug) {
34
+ this.webComponent.setAttribute('debug', this.debug.toString());
35
+ }
36
+ if (this.logger) {
37
+ this.webComponent.logger = this.logger;
38
+ }
39
+ if (this.logout) {
40
+ this.webComponent.addEventListener('logout', (e) => {
41
+ this.logout?.emit(e);
42
+ });
43
+ }
44
+ }
45
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UserProfileComponent, deps: [{ token: i0.ElementRef }, { token: i1.DescopeAuthConfig }], target: i0.ɵɵFactoryTarget.Component }); }
46
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: UserProfileComponent, isStandalone: true, selector: "user-profile", inputs: { widgetId: "widgetId", theme: "theme", debug: "debug", logger: "logger" }, outputs: { logout: "logout" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true }); }
47
+ }
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UserProfileComponent, decorators: [{
49
+ type: Component,
50
+ args: [{
51
+ selector: 'user-profile',
52
+ standalone: true,
53
+ template: ''
54
+ }]
55
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.DescopeAuthConfig }]; }, propDecorators: { widgetId: [{
56
+ type: Input
57
+ }], theme: [{
58
+ type: Input
59
+ }], debug: [{
60
+ type: Input
61
+ }], logger: [{
62
+ type: Input
63
+ }], logout: [{
64
+ type: Output
65
+ }] } });
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wcm9maWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItc2RrL3NyYy9saWIvY29tcG9uZW50cy91c2VyLXByb2ZpbGUvdXNlci1wcm9maWxlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sd0JBQXdCLE1BQU0sOEJBQThCLENBQUM7OztBQVNwRSxNQUFNLE9BQU8sb0JBQW9CO0lBYy9CLFlBQ1UsVUFBc0IsRUFDOUIsYUFBZ0M7UUFEeEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUx0QixXQUFNLEdBQThCLElBQUksWUFBWSxFQUFlLENBQUM7UUFFN0QsaUJBQVksR0FBRyxJQUFJLHdCQUF3QixFQUFFLENBQUM7UUFNN0QsSUFBSSxDQUFDLFNBQVMsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxPQUFPLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQztRQUNyQyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQyxhQUFhLENBQUM7SUFDbkQsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0QsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDMUQ7UUFDRCxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQ3ZFO1FBQ0QsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNyRDtRQUNELElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNkLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7U0FDaEU7UUFFRCxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDZCxJQUFJLENBQUMsWUFBb0IsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztTQUNqRDtRQUVELElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNmLElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBUSxFQUFFLEVBQUU7Z0JBQ3hELElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQWdCLENBQUMsQ0FBQztZQUN0QyxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQzsrR0F6RFUsb0JBQW9CO21HQUFwQixvQkFBb0IsZ05BRnJCLEVBQUU7OzRGQUVELG9CQUFvQjtrQkFMaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxFQUFFO2lCQUNiO2lJQUtVLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBRUksTUFBTTtzQkFBZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgT3V0cHV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IERlc2NvcGVVc2VyUHJvZmlsZVdpZGdldCBmcm9tICdAZGVzY29wZS91c2VyLXByb2ZpbGUtd2lkZ2V0JztcbmltcG9ydCB7IElMb2dnZXIgfSBmcm9tICdAZGVzY29wZS93ZWItY29tcG9uZW50JztcbmltcG9ydCB7IERlc2NvcGVBdXRoQ29uZmlnIH0gZnJvbSAnLi4vLi4vdHlwZXMvdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd1c2VyLXByb2ZpbGUnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgY2xhc3MgVXNlclByb2ZpbGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIHByb2plY3RJZDogc3RyaW5nO1xuICBiYXNlVXJsPzogc3RyaW5nO1xuICBiYXNlU3RhdGljVXJsPzogc3RyaW5nO1xuICBASW5wdXQoKSB3aWRnZXRJZDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIHRoZW1lOiAnbGlnaHQnIHwgJ2RhcmsnIHwgJ29zJztcbiAgQElucHV0KCkgZGVidWc6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGxvZ2dlcjogSUxvZ2dlcjtcblxuICBAT3V0cHV0KCkgbG9nb3V0OiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudD4oKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHdlYkNvbXBvbmVudCA9IG5ldyBEZXNjb3BlVXNlclByb2ZpbGVXaWRnZXQoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgZGVzY29wZUNvbmZpZzogRGVzY29wZUF1dGhDb25maWdcbiAgKSB7XG4gICAgdGhpcy5wcm9qZWN0SWQgPSBkZXNjb3BlQ29uZmlnLnByb2plY3RJZDtcbiAgICB0aGlzLmJhc2VVcmwgPSBkZXNjb3BlQ29uZmlnLmJhc2VVcmw7XG4gICAgdGhpcy5iYXNlU3RhdGljVXJsID0gZGVzY29wZUNvbmZpZy5iYXNlU3RhdGljVXJsO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zZXR1cFdlYkNvbXBvbmVudCgpO1xuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKHRoaXMud2ViQ29tcG9uZW50KTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuc2V0dXBXZWJDb21wb25lbnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBXZWJDb21wb25lbnQoKSB7XG4gICAgdGhpcy53ZWJDb21wb25lbnQuc2V0QXR0cmlidXRlKCdwcm9qZWN0LWlkJywgdGhpcy5wcm9qZWN0SWQpO1xuICAgIHRoaXMud2ViQ29tcG9uZW50LnNldEF0dHJpYnV0ZSgnd2lkZ2V0LWlkJywgdGhpcy53aWRnZXRJZCk7XG4gICAgaWYgKHRoaXMuYmFzZVVybCkge1xuICAgICAgdGhpcy53ZWJDb21wb25lbnQuc2V0QXR0cmlidXRlKCdiYXNlLXVybCcsIHRoaXMuYmFzZVVybCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmJhc2VTdGF0aWNVcmwpIHtcbiAgICAgIHRoaXMud2ViQ29tcG9uZW50LnNldEF0dHJpYnV0ZSgnYmFzZS1zdGF0aWMtdXJsJywgdGhpcy5iYXNlU3RhdGljVXJsKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudGhlbWUpIHtcbiAgICAgIHRoaXMud2ViQ29tcG9uZW50LnNldEF0dHJpYnV0ZSgndGhlbWUnLCB0aGlzLnRoZW1lKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuZGVidWcpIHtcbiAgICAgIHRoaXMud2ViQ29tcG9uZW50LnNldEF0dHJpYnV0ZSgnZGVidWcnLCB0aGlzLmRlYnVnLnRvU3RyaW5nKCkpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmxvZ2dlcikge1xuICAgICAgKHRoaXMud2ViQ29tcG9uZW50IGFzIGFueSkubG9nZ2VyID0gdGhpcy5sb2dnZXI7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubG9nb3V0KSB7XG4gICAgICB0aGlzLndlYkNvbXBvbmVudC5hZGRFdmVudExpc3RlbmVyKCdsb2dvdXQnLCAoZTogRXZlbnQpID0+IHtcbiAgICAgICAgdGhpcy5sb2dvdXQ/LmVtaXQoZSBhcyBDdXN0b21FdmVudCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -22,8 +22,8 @@ export class DescopeAuthModule {
22
22
  providers: [{ provide: DescopeAuthConfig, useValue: config }]
23
23
  };
24
24
  }
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DescopeAuthModule, deps: [{ token: DescopeAuthModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
26
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.9", ngImport: i0, type: DescopeAuthModule, imports: [DescopeComponent,
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DescopeAuthModule, deps: [{ token: DescopeAuthModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
26
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: DescopeAuthModule, imports: [DescopeComponent,
27
27
  SignInFlowComponent,
28
28
  SignUpFlowComponent,
29
29
  SignUpOrInFlowComponent,
@@ -40,9 +40,9 @@ export class DescopeAuthModule {
40
40
  AccessKeyManagementComponent,
41
41
  AuditManagementComponent,
42
42
  UserProfileComponent] }); }
43
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DescopeAuthModule }); }
43
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DescopeAuthModule }); }
44
44
  }
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DescopeAuthModule, decorators: [{
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DescopeAuthModule, decorators: [{
46
46
  type: NgModule,
47
47
  args: [{
48
48
  schemas: [CUSTOM_ELEMENTS_SCHEMA],
@@ -74,4 +74,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
74
74
  }, {
75
75
  type: SkipSelf
76
76
  }] }]; } });
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY29wZS1hdXRoLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItc2RrL3NyYy9saWIvZGVzY29wZS1hdXRoLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ04sc0JBQXNCLEVBRXRCLFFBQVEsRUFDUixRQUFRLEVBQ1IsUUFBUSxFQUNSLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG9FQUFvRSxDQUFDO0FBQ2xILE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUEyQmxELE1BQU0sT0FBTyxpQkFBaUI7SUFDN0IsWUFBb0MsWUFBZ0M7UUFDbkUsSUFBSSxZQUFZLEVBQUU7WUFDakIsTUFBTSxJQUFJLEtBQUssQ0FDZCwwREFBMEQsQ0FDMUQsQ0FBQztTQUNGO0lBQ0YsQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFPLENBQ2IsTUFBMEI7UUFFMUIsT0FBTztZQUNOLFFBQVEsRUFBRSxpQkFBaUI7WUFDM0IsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUFDO1NBQzdELENBQUM7SUFDSCxDQUFDOzhHQWhCVyxpQkFBaUI7K0dBQWpCLGlCQUFpQixZQXRCNUIsZ0JBQWdCO1lBQ2hCLG1CQUFtQjtZQUNuQixtQkFBbUI7WUFDbkIsdUJBQXVCO1lBQ3ZCLHVCQUF1QjtZQUN2Qix1QkFBdUI7WUFDdkIsNEJBQTRCO1lBQzVCLHdCQUF3QjtZQUN4QixvQkFBb0IsYUFHcEIsZ0JBQWdCO1lBQ2hCLG1CQUFtQjtZQUNuQixtQkFBbUI7WUFDbkIsdUJBQXVCO1lBQ3ZCLHVCQUF1QjtZQUN2Qix1QkFBdUI7WUFDdkIsNEJBQTRCO1lBQzVCLHdCQUF3QjtZQUN4QixvQkFBb0I7K0dBR1QsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQXpCN0IsUUFBUTttQkFBQztvQkFDVCxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDakMsT0FBTyxFQUFFO3dCQUNSLGdCQUFnQjt3QkFDaEIsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLHVCQUF1Qjt3QkFDdkIsdUJBQXVCO3dCQUN2Qix1QkFBdUI7d0JBQ3ZCLDRCQUE0Qjt3QkFDNUIsd0JBQXdCO3dCQUN4QixvQkFBb0I7cUJBQ3BCO29CQUNELE9BQU8sRUFBRTt3QkFDUixnQkFBZ0I7d0JBQ2hCLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQix1QkFBdUI7d0JBQ3ZCLHVCQUF1Qjt3QkFDdkIsdUJBQXVCO3dCQUN2Qiw0QkFBNEI7d0JBQzVCLHdCQUF3Qjt3QkFDeEIsb0JBQW9CO3FCQUNwQjtpQkFDRDs7MEJBRWEsUUFBUTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG5cdENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsXG5cdE1vZHVsZVdpdGhQcm92aWRlcnMsXG5cdE5nTW9kdWxlLFxuXHRPcHRpb25hbCxcblx0U2tpcFNlbGZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZXNjb3BlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Rlc2NvcGUvZGVzY29wZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2lnbkluRmxvd0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zaWduLWluLWZsb3cvc2lnbi1pbi1mbG93LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTaWduVXBGbG93Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NpZ24tdXAtZmxvdy9zaWduLXVwLWZsb3cuY29tcG9uZW50JztcbmltcG9ydCB7IFNpZ25VcE9ySW5GbG93Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NpZ24tdXAtb3ItaW4tZmxvdy9zaWduLXVwLW9yLWluLWZsb3cuY29tcG9uZW50JztcbmltcG9ydCB7IFVzZXJNYW5hZ2VtZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3VzZXItbWFuYWdlbWVudC91c2VyLW1hbmFnZW1lbnQuY29tcG9uZW50JztcbmltcG9ydCB7IFJvbGVNYW5hZ2VtZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JvbGUtbWFuYWdlbWVudC9yb2xlLW1hbmFnZW1lbnQuY29tcG9uZW50JztcbmltcG9ydCB7IEFjY2Vzc0tleU1hbmFnZW1lbnRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYWNjZXNzLWtleS1tYW5hZ2VtZW50L2FjY2Vzcy1rZXktbWFuYWdlbWVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXVkaXRNYW5hZ2VtZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2F1ZGl0LW1hbmFnZW1lbnQvYXVkaXQtbWFuYWdlbWVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVXNlclByb2ZpbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdXNlci1wcm9maWxlL3VzZXItcHJvZmlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGVzY29wZUF1dGhDb25maWcgfSBmcm9tICcuL3R5cGVzL3R5cGVzJztcblxuQE5nTW9kdWxlKHtcblx0c2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxuXHRpbXBvcnRzOiBbXG5cdFx0RGVzY29wZUNvbXBvbmVudCxcblx0XHRTaWduSW5GbG93Q29tcG9uZW50LFxuXHRcdFNpZ25VcEZsb3dDb21wb25lbnQsXG5cdFx0U2lnblVwT3JJbkZsb3dDb21wb25lbnQsXG5cdFx0VXNlck1hbmFnZW1lbnRDb21wb25lbnQsXG5cdFx0Um9sZU1hbmFnZW1lbnRDb21wb25lbnQsXG5cdFx0QWNjZXNzS2V5TWFuYWdlbWVudENvbXBvbmVudCxcblx0XHRBdWRpdE1hbmFnZW1lbnRDb21wb25lbnQsXG5cdFx0VXNlclByb2ZpbGVDb21wb25lbnRcblx0XSxcblx0ZXhwb3J0czogW1xuXHRcdERlc2NvcGVDb21wb25lbnQsXG5cdFx0U2lnbkluRmxvd0NvbXBvbmVudCxcblx0XHRTaWduVXBGbG93Q29tcG9uZW50LFxuXHRcdFNpZ25VcE9ySW5GbG93Q29tcG9uZW50LFxuXHRcdFVzZXJNYW5hZ2VtZW50Q29tcG9uZW50LFxuXHRcdFJvbGVNYW5hZ2VtZW50Q29tcG9uZW50LFxuXHRcdEFjY2Vzc0tleU1hbmFnZW1lbnRDb21wb25lbnQsXG5cdFx0QXVkaXRNYW5hZ2VtZW50Q29tcG9uZW50LFxuXHRcdFVzZXJQcm9maWxlQ29tcG9uZW50XG5cdF1cbn0pXG5leHBvcnQgY2xhc3MgRGVzY29wZUF1dGhNb2R1bGUge1xuXHRjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKSBwYXJlbnRNb2R1bGU/OiBEZXNjb3BlQXV0aE1vZHVsZSkge1xuXHRcdGlmIChwYXJlbnRNb2R1bGUpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihcblx0XHRcdFx0J0Rlc2NvcGVBdXRoTW9kdWxlIGlzIGFscmVhZHkgbG9hZGVkLiBJbXBvcnQgaXQgb25seSBvbmNlJ1xuXHRcdFx0KTtcblx0XHR9XG5cdH1cblxuXHRzdGF0aWMgZm9yUm9vdChcblx0XHRjb25maWc/OiBEZXNjb3BlQXV0aENvbmZpZ1xuXHQpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPERlc2NvcGVBdXRoTW9kdWxlPiB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdG5nTW9kdWxlOiBEZXNjb3BlQXV0aE1vZHVsZSxcblx0XHRcdHByb3ZpZGVyczogW3sgcHJvdmlkZTogRGVzY29wZUF1dGhDb25maWcsIHVzZVZhbHVlOiBjb25maWcgfV1cblx0XHR9O1xuXHR9XG59XG4iXX0=
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY29wZS1hdXRoLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItc2RrL3NyYy9saWIvZGVzY29wZS1hdXRoLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsc0JBQXNCLEVBRXRCLFFBQVEsRUFDUixRQUFRLEVBQ1IsUUFBUSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG9FQUFvRSxDQUFDO0FBQ2xILE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUEyQmxELE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsWUFBb0MsWUFBZ0M7UUFDbEUsSUFBSSxZQUFZLEVBQUU7WUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FDYiwwREFBMEQsQ0FDM0QsQ0FBQztTQUNIO0lBQ0gsQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFPLENBQ1osTUFBMEI7UUFFMUIsT0FBTztZQUNMLFFBQVEsRUFBRSxpQkFBaUI7WUFDM0IsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUFDO1NBQzlELENBQUM7SUFDSixDQUFDOytHQWhCVSxpQkFBaUI7Z0hBQWpCLGlCQUFpQixZQXRCMUIsZ0JBQWdCO1lBQ2hCLG1CQUFtQjtZQUNuQixtQkFBbUI7WUFDbkIsdUJBQXVCO1lBQ3ZCLHVCQUF1QjtZQUN2Qix1QkFBdUI7WUFDdkIsNEJBQTRCO1lBQzVCLHdCQUF3QjtZQUN4QixvQkFBb0IsYUFHcEIsZ0JBQWdCO1lBQ2hCLG1CQUFtQjtZQUNuQixtQkFBbUI7WUFDbkIsdUJBQXVCO1lBQ3ZCLHVCQUF1QjtZQUN2Qix1QkFBdUI7WUFDdkIsNEJBQTRCO1lBQzVCLHdCQUF3QjtZQUN4QixvQkFBb0I7Z0hBR1gsaUJBQWlCOzs0RkFBakIsaUJBQWlCO2tCQXpCN0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDakMsT0FBTyxFQUFFO3dCQUNQLGdCQUFnQjt3QkFDaEIsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLHVCQUF1Qjt3QkFDdkIsdUJBQXVCO3dCQUN2Qix1QkFBdUI7d0JBQ3ZCLDRCQUE0Qjt3QkFDNUIsd0JBQXdCO3dCQUN4QixvQkFBb0I7cUJBQ3JCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxnQkFBZ0I7d0JBQ2hCLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQix1QkFBdUI7d0JBQ3ZCLHVCQUF1Qjt3QkFDdkIsdUJBQXVCO3dCQUN2Qiw0QkFBNEI7d0JBQzVCLHdCQUF3Qjt3QkFDeEIsb0JBQW9CO3FCQUNyQjtpQkFDRjs7MEJBRWMsUUFBUTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsXG4gIE1vZHVsZVdpdGhQcm92aWRlcnMsXG4gIE5nTW9kdWxlLFxuICBPcHRpb25hbCxcbiAgU2tpcFNlbGZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZXNjb3BlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Rlc2NvcGUvZGVzY29wZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2lnbkluRmxvd0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zaWduLWluLWZsb3cvc2lnbi1pbi1mbG93LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTaWduVXBGbG93Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NpZ24tdXAtZmxvdy9zaWduLXVwLWZsb3cuY29tcG9uZW50JztcbmltcG9ydCB7IFNpZ25VcE9ySW5GbG93Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NpZ24tdXAtb3ItaW4tZmxvdy9zaWduLXVwLW9yLWluLWZsb3cuY29tcG9uZW50JztcbmltcG9ydCB7IFVzZXJNYW5hZ2VtZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3VzZXItbWFuYWdlbWVudC91c2VyLW1hbmFnZW1lbnQuY29tcG9uZW50JztcbmltcG9ydCB7IFJvbGVNYW5hZ2VtZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JvbGUtbWFuYWdlbWVudC9yb2xlLW1hbmFnZW1lbnQuY29tcG9uZW50JztcbmltcG9ydCB7IEFjY2Vzc0tleU1hbmFnZW1lbnRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYWNjZXNzLWtleS1tYW5hZ2VtZW50L2FjY2Vzcy1rZXktbWFuYWdlbWVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXVkaXRNYW5hZ2VtZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2F1ZGl0LW1hbmFnZW1lbnQvYXVkaXQtbWFuYWdlbWVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVXNlclByb2ZpbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdXNlci1wcm9maWxlL3VzZXItcHJvZmlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGVzY29wZUF1dGhDb25maWcgfSBmcm9tICcuL3R5cGVzL3R5cGVzJztcblxuQE5nTW9kdWxlKHtcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxuICBpbXBvcnRzOiBbXG4gICAgRGVzY29wZUNvbXBvbmVudCxcbiAgICBTaWduSW5GbG93Q29tcG9uZW50LFxuICAgIFNpZ25VcEZsb3dDb21wb25lbnQsXG4gICAgU2lnblVwT3JJbkZsb3dDb21wb25lbnQsXG4gICAgVXNlck1hbmFnZW1lbnRDb21wb25lbnQsXG4gICAgUm9sZU1hbmFnZW1lbnRDb21wb25lbnQsXG4gICAgQWNjZXNzS2V5TWFuYWdlbWVudENvbXBvbmVudCxcbiAgICBBdWRpdE1hbmFnZW1lbnRDb21wb25lbnQsXG4gICAgVXNlclByb2ZpbGVDb21wb25lbnRcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIERlc2NvcGVDb21wb25lbnQsXG4gICAgU2lnbkluRmxvd0NvbXBvbmVudCxcbiAgICBTaWduVXBGbG93Q29tcG9uZW50LFxuICAgIFNpZ25VcE9ySW5GbG93Q29tcG9uZW50LFxuICAgIFVzZXJNYW5hZ2VtZW50Q29tcG9uZW50LFxuICAgIFJvbGVNYW5hZ2VtZW50Q29tcG9uZW50LFxuICAgIEFjY2Vzc0tleU1hbmFnZW1lbnRDb21wb25lbnQsXG4gICAgQXVkaXRNYW5hZ2VtZW50Q29tcG9uZW50LFxuICAgIFVzZXJQcm9maWxlQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRGVzY29wZUF1dGhNb2R1bGUge1xuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKSBwYXJlbnRNb2R1bGU/OiBEZXNjb3BlQXV0aE1vZHVsZSkge1xuICAgIGlmIChwYXJlbnRNb2R1bGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0Rlc2NvcGVBdXRoTW9kdWxlIGlzIGFscmVhZHkgbG9hZGVkLiBJbXBvcnQgaXQgb25seSBvbmNlJ1xuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBzdGF0aWMgZm9yUm9vdChcbiAgICBjb25maWc/OiBEZXNjb3BlQXV0aENvbmZpZ1xuICApOiBNb2R1bGVXaXRoUHJvdmlkZXJzPERlc2NvcGVBdXRoTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBEZXNjb3BlQXV0aE1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogRGVzY29wZUF1dGhDb25maWcsIHVzZVZhbHVlOiBjb25maWcgfV1cbiAgICB9O1xuICB9XG59XG4iXX0=
@@ -12,4 +12,4 @@ export const descopeAuthGuard = (route) => {
12
12
  }
13
13
  return of(isAuthenticated);
14
14
  };
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY29wZS1hdXRoLmd1YXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1zZGsvc3JjL2xpYi9zZXJ2aWNlcy9kZXNjb3BlLWF1dGguZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQTBCLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWhDLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLENBQUMsS0FBNkIsRUFBRSxFQUFFO0lBQ2pFLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQy9DLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5QixNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDckQsTUFBTSxlQUFlLEdBQUcsV0FBVyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3RELElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRTtRQUN0QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQzVDO0lBQ0QsT0FBTyxFQUFFLENBQUMsZUFBZSxDQUFDLENBQUM7QUFDNUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IERlc2NvcGVBdXRoU2VydmljZSB9IGZyb20gJy4vZGVzY29wZS1hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZyb20sIG9mIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjb25zdCBkZXNjb3BlQXV0aEd1YXJkID0gKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KSA9PiB7XG5cdGNvbnN0IGF1dGhTZXJ2aWNlID0gaW5qZWN0KERlc2NvcGVBdXRoU2VydmljZSk7XG5cdGNvbnN0IHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuXHRjb25zdCBmYWxsYmFja1VybCA9IHJvdXRlLmRhdGFbJ2Rlc2NvcGVGYWxsYmFja1VybCddO1xuXHRjb25zdCBpc0F1dGhlbnRpY2F0ZWQgPSBhdXRoU2VydmljZS5pc0F1dGhlbnRpY2F0ZWQoKTtcblx0aWYgKCFpc0F1dGhlbnRpY2F0ZWQgJiYgISFmYWxsYmFja1VybCkge1xuXHRcdHJldHVybiBmcm9tKHJvdXRlci5uYXZpZ2F0ZShbZmFsbGJhY2tVcmxdKSk7XG5cdH1cblx0cmV0dXJuIG9mKGlzQXV0aGVudGljYXRlZCk7XG59O1xuIl19
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY29wZS1hdXRoLmd1YXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1zZGsvc3JjL2xpYi9zZXJ2aWNlcy9kZXNjb3BlLWF1dGguZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQTBCLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWhDLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLENBQUMsS0FBNkIsRUFBRSxFQUFFO0lBQ2hFLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQy9DLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5QixNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDckQsTUFBTSxlQUFlLEdBQUcsV0FBVyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3RELElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRTtRQUNyQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQzdDO0lBQ0QsT0FBTyxFQUFFLENBQUMsZUFBZSxDQUFDLENBQUM7QUFDN0IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IERlc2NvcGVBdXRoU2VydmljZSB9IGZyb20gJy4vZGVzY29wZS1hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZyb20sIG9mIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjb25zdCBkZXNjb3BlQXV0aEd1YXJkID0gKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KSA9PiB7XG4gIGNvbnN0IGF1dGhTZXJ2aWNlID0gaW5qZWN0KERlc2NvcGVBdXRoU2VydmljZSk7XG4gIGNvbnN0IHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuICBjb25zdCBmYWxsYmFja1VybCA9IHJvdXRlLmRhdGFbJ2Rlc2NvcGVGYWxsYmFja1VybCddO1xuICBjb25zdCBpc0F1dGhlbnRpY2F0ZWQgPSBhdXRoU2VydmljZS5pc0F1dGhlbnRpY2F0ZWQoKTtcbiAgaWYgKCFpc0F1dGhlbnRpY2F0ZWQgJiYgISFmYWxsYmFja1VybCkge1xuICAgIHJldHVybiBmcm9tKHJvdXRlci5uYXZpZ2F0ZShbZmFsbGJhY2tVcmxdKSk7XG4gIH1cbiAgcmV0dXJuIG9mKGlzQXV0aGVudGljYXRlZCk7XG59O1xuIl19
@@ -0,0 +1,154 @@
1
+ import { Injectable } from '@angular/core';
2
+ import createSdk from '@descope/web-js-sdk';
3
+ import { BehaviorSubject, finalize, tap } from 'rxjs';
4
+ import { observabilify } from '../utils/helpers';
5
+ import { baseHeaders, isBrowser } from '../utils/constants';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../types/types";
8
+ export class DescopeAuthService {
9
+ constructor(config) {
10
+ this.descopeSdk = observabilify(createSdk({
11
+ persistTokens: isBrowser(),
12
+ ...config,
13
+ storeLastAuthenticatedUser: isBrowser(),
14
+ autoRefresh: isBrowser(),
15
+ baseHeaders
16
+ }));
17
+ this.sessionSubject = new BehaviorSubject({
18
+ isAuthenticated: false,
19
+ isSessionLoading: false,
20
+ sessionToken: ''
21
+ });
22
+ this.session$ = this.sessionSubject.asObservable();
23
+ this.userSubject = new BehaviorSubject({
24
+ isUserLoading: false
25
+ });
26
+ this.user$ = this.userSubject.asObservable();
27
+ this.descopeSdk.onSessionTokenChange(this.setSession.bind(this));
28
+ this.descopeSdk.onUserChange(this.setUser.bind(this));
29
+ }
30
+ refreshSession() {
31
+ const beforeRefreshSession = this.sessionSubject.value;
32
+ this.sessionSubject.next({
33
+ ...beforeRefreshSession,
34
+ isSessionLoading: true
35
+ });
36
+ return this.descopeSdk.refresh().pipe(tap((data) => {
37
+ const afterRequestSession = this.sessionSubject.value;
38
+ if (data.ok && data.data) {
39
+ this.sessionSubject.next({
40
+ ...afterRequestSession,
41
+ sessionToken: data.data.sessionJwt,
42
+ isAuthenticated: !!data.data.sessionJwt
43
+ });
44
+ }
45
+ else {
46
+ this.sessionSubject.next({
47
+ ...afterRequestSession,
48
+ sessionToken: '',
49
+ isAuthenticated: false
50
+ });
51
+ }
52
+ }), finalize(() => {
53
+ const afterRefreshSession = this.sessionSubject.value;
54
+ this.sessionSubject.next({
55
+ ...afterRefreshSession,
56
+ isSessionLoading: false
57
+ });
58
+ }));
59
+ }
60
+ refreshUser() {
61
+ const beforeRefreshUser = this.userSubject.value;
62
+ this.userSubject.next({
63
+ ...beforeRefreshUser,
64
+ isUserLoading: true
65
+ });
66
+ return this.descopeSdk.me().pipe(tap((data) => {
67
+ const afterRequestUser = this.userSubject.value;
68
+ if (data.data) {
69
+ this.userSubject.next({
70
+ ...afterRequestUser,
71
+ user: {
72
+ ...data.data
73
+ }
74
+ });
75
+ }
76
+ }), finalize(() => {
77
+ const afterRefreshUser = this.userSubject.value;
78
+ this.userSubject.next({
79
+ ...afterRefreshUser,
80
+ isUserLoading: false
81
+ });
82
+ }));
83
+ }
84
+ getSessionToken() {
85
+ if (isBrowser()) {
86
+ return this.descopeSdk.getSessionToken();
87
+ }
88
+ console.warn('Get session token is not supported in SSR');
89
+ return '';
90
+ }
91
+ getRefreshToken() {
92
+ if (isBrowser()) {
93
+ return this.descopeSdk.getRefreshToken();
94
+ }
95
+ this.descopeSdk.getJwtPermissions;
96
+ console.warn('Get refresh token is not supported in SSR');
97
+ return '';
98
+ }
99
+ isSessionTokenExpired(token = this.getSessionToken()) {
100
+ if (isBrowser()) {
101
+ return this.descopeSdk.isJwtExpired(token ?? '');
102
+ }
103
+ console.warn('isSessionTokenExpired is not supported in SSR');
104
+ return true;
105
+ }
106
+ isRefreshTokenExpired(token = this.getRefreshToken()) {
107
+ if (isBrowser()) {
108
+ return this.descopeSdk.isJwtExpired(token ?? '');
109
+ }
110
+ console.warn('isRefreshTokenExpired is not supported in SSR');
111
+ return true;
112
+ }
113
+ getJwtPermissions(token = this.getSessionToken(), tenant) {
114
+ if (token === null) {
115
+ console.error('Could not get JWT Permissions - not authenticated');
116
+ return [];
117
+ }
118
+ return this.descopeSdk.getJwtPermissions(token, tenant);
119
+ }
120
+ getJwtRoles(token = this.getSessionToken(), tenant) {
121
+ if (token === null) {
122
+ console.error('Could not get JWT Roles - not authenticated');
123
+ return [];
124
+ }
125
+ return this.descopeSdk.getJwtRoles(token, tenant);
126
+ }
127
+ isAuthenticated() {
128
+ return this.sessionSubject.value.isAuthenticated;
129
+ }
130
+ setSession(sessionToken) {
131
+ const currentSession = this.sessionSubject.value;
132
+ this.sessionSubject.next({
133
+ sessionToken,
134
+ isAuthenticated: !!sessionToken,
135
+ isSessionLoading: currentSession.isSessionLoading
136
+ });
137
+ }
138
+ setUser(user) {
139
+ const currentUser = this.userSubject.value;
140
+ this.userSubject.next({
141
+ isUserLoading: currentUser.isUserLoading,
142
+ user
143
+ });
144
+ }
145
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DescopeAuthService, deps: [{ token: i1.DescopeAuthConfig }], target: i0.ɵɵFactoryTarget.Injectable }); }
146
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DescopeAuthService, providedIn: 'root' }); }
147
+ }
148
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DescopeAuthService, decorators: [{
149
+ type: Injectable,
150
+ args: [{
151
+ providedIn: 'root'
152
+ }]
153
+ }], ctorParameters: function () { return [{ type: i1.DescopeAuthConfig }]; } });
154
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY29wZS1hdXRoLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXNkay9zcmMvbGliL3NlcnZpY2VzL2Rlc2NvcGUtYXV0aC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxTQUFTLE1BQU0scUJBQXFCLENBQUM7QUFDNUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQWMsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQWtCLE1BQU0sa0JBQWtCLENBQUM7QUFDakUsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7O0FBaUI1RCxNQUFNLE9BQU8sa0JBQWtCO0lBTzdCLFlBQVksTUFBeUI7UUFDbkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxhQUFhLENBQzdCLFNBQVMsQ0FBQztZQUNSLGFBQWEsRUFBRSxTQUFTLEVBQVU7WUFDbEMsR0FBRyxNQUFNO1lBQ1QsMEJBQTBCLEVBQUUsU0FBUyxFQUFVO1lBQy9DLFdBQVcsRUFBRSxTQUFTLEVBQVU7WUFDaEMsV0FBVztTQUNaLENBQUMsQ0FDSCxDQUFDO1FBRUYsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLGVBQWUsQ0FBaUI7WUFDeEQsZUFBZSxFQUFFLEtBQUs7WUFDdEIsZ0JBQWdCLEVBQUUsS0FBSztZQUN2QixZQUFZLEVBQUUsRUFBRTtTQUNqQixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBYztZQUNsRCxhQUFhLEVBQUUsS0FBSztTQUNyQixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsS0FBSyxH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IGZvciBUUyBpc3N1ZSBodHRwczovL2dpdGh1Yi5jb20vbWljcm9zb2Z0L1R5cGVTY3JpcHQvaXNzdWVzLzQyODczXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbmltcG9ydCB0eXBlICogYXMgXzEgZnJvbSAnQGRlc2NvcGUvY29yZS1qcy1zZGsnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHR5cGUgeyBVc2VyUmVzcG9uc2UgfSBmcm9tICdAZGVzY29wZS93ZWItanMtc2RrJztcbmltcG9ydCBjcmVhdGVTZGsgZnJvbSAnQGRlc2NvcGUvd2ViLWpzLXNkayc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZpbmFsaXplLCBPYnNlcnZhYmxlLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG9ic2VydmFiaWxpZnksIE9ic2VydmFibGVmaWVkIH0gZnJvbSAnLi4vdXRpbHMvaGVscGVycyc7XG5pbXBvcnQgeyBiYXNlSGVhZGVycywgaXNCcm93c2VyIH0gZnJvbSAnLi4vdXRpbHMvY29uc3RhbnRzJztcbmltcG9ydCB7IERlc2NvcGVBdXRoQ29uZmlnIH0gZnJvbSAnLi4vdHlwZXMvdHlwZXMnO1xuXG50eXBlIERlc2NvcGVTREsgPSBSZXR1cm5UeXBlPHR5cGVvZiBjcmVhdGVTZGs+O1xudHlwZSBBbmd1bGFyRGVzY29wZVNESyA9IE9ic2VydmFibGVmaWVkPERlc2NvcGVTREs+O1xuXG5leHBvcnQgaW50ZXJmYWNlIERlc2NvcGVTZXNzaW9uIHtcbiAgaXNBdXRoZW50aWNhdGVkOiBib29sZWFuO1xuICBpc1Nlc3Npb25Mb2FkaW5nOiBib29sZWFuO1xuICBzZXNzaW9uVG9rZW46IHN0cmluZyB8IG51bGw7XG59XG5cbmV4cG9ydCB0eXBlIERlc2NvcGVVc2VyID0geyB1c2VyPzogVXNlclJlc3BvbnNlOyBpc1VzZXJMb2FkaW5nOiBib29sZWFuIH07XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIERlc2NvcGVBdXRoU2VydmljZSB7XG4gIHB1YmxpYyBkZXNjb3BlU2RrOiBBbmd1bGFyRGVzY29wZVNESztcbiAgcHJpdmF0ZSByZWFkb25seSBzZXNzaW9uU3ViamVjdDogQmVoYXZpb3JTdWJqZWN0PERlc2NvcGVTZXNzaW9uPjtcbiAgcHJpdmF0ZSByZWFkb25seSB1c2VyU3ViamVjdDogQmVoYXZpb3JTdWJqZWN0PERlc2NvcGVVc2VyPjtcbiAgcmVhZG9ubHkgc2Vzc2lvbiQ6IE9ic2VydmFibGU8RGVzY29wZVNlc3Npb24+O1xuICByZWFkb25seSB1c2VyJDogT2JzZXJ2YWJsZTxEZXNjb3BlVXNlcj47XG5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBEZXNjb3BlQXV0aENvbmZpZykge1xuICAgIHRoaXMuZGVzY29wZVNkayA9IG9ic2VydmFiaWxpZnk8RGVzY29wZVNESz4oXG4gICAgICBjcmVhdGVTZGsoe1xuICAgICAgICBwZXJzaXN0VG9rZW5zOiBpc0Jyb3dzZXIoKSBhcyB0cnVlLFxuICAgICAgICAuLi5jb25maWcsXG4gICAgICAgIHN0b3JlTGFzdEF1dGhlbnRpY2F0ZWRVc2VyOiBpc0Jyb3dzZXIoKSBhcyB0cnVlLFxuICAgICAgICBhdXRvUmVmcmVzaDogaXNCcm93c2VyKCkgYXMgdHJ1ZSxcbiAgICAgICAgYmFzZUhlYWRlcnNcbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHRoaXMuc2Vzc2lvblN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PERlc2NvcGVTZXNzaW9uPih7XG4gICAgICBpc0F1dGhlbnRpY2F0ZWQ6IGZhbHNlLFxuICAgICAgaXNTZXNzaW9uTG9hZGluZzogZmFsc2UsXG4gICAgICBzZXNzaW9uVG9rZW46ICcnXG4gICAgfSk7XG4gICAgdGhpcy5zZXNzaW9uJCA9IHRoaXMuc2Vzc2lvblN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gICAgdGhpcy51c2VyU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RGVzY29wZVVzZXI+KHtcbiAgICAgIGlzVXNlckxvYWRpbmc6IGZhbHNlXG4gICAgfSk7XG4gICAgdGhpcy51c2VyJCA9IHRoaXMudXNlclN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gICAgdGhpcy5kZXNjb3BlU2RrLm9uU2Vzc2lvblRva2VuQ2hhbmdlKHRoaXMuc2V0U2Vzc2lvbi5iaW5kKHRoaXMpKTtcbiAgICB0aGlzLmRlc2NvcGVTZGsub25Vc2VyQ2hhbmdlKHRoaXMuc2V0VXNlci5iaW5kKHRoaXMpKTtcbiAgfVxuXG4gIHJlZnJlc2hTZXNzaW9uKCkge1xuICAgIGNvbnN0IGJlZm9yZVJlZnJlc2hTZXNzaW9uID0gdGhpcy5zZXNzaW9uU3ViamVjdC52YWx1ZTtcbiAgICB0aGlzLnNlc3Npb25TdWJqZWN0Lm5leHQoe1xuICAgICAgLi4uYmVmb3JlUmVmcmVzaFNlc3Npb24sXG4gICAgICBpc1Nlc3Npb25Mb2FkaW5nOiB0cnVlXG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMuZGVzY29wZVNkay5yZWZyZXNoKCkucGlwZShcbiAgICAgIHRhcCgoZGF0YSkgPT4ge1xuICAgICAgICBjb25zdCBhZnRlclJlcXVlc3RTZXNzaW9uID0gdGhpcy5zZXNzaW9uU3ViamVjdC52YWx1ZTtcbiAgICAgICAgaWYgKGRhdGEub2sgJiYgZGF0YS5kYXRhKSB7XG4gICAgICAgICAgdGhpcy5zZXNzaW9uU3ViamVjdC5uZXh0KHtcbiAgICAgICAgICAgIC4uLmFmdGVyUmVxdWVzdFNlc3Npb24sXG4gICAgICAgICAgICBzZXNzaW9uVG9rZW46IGRhdGEuZGF0YS5zZXNzaW9uSnd0LFxuICAgICAgICAgICAgaXNBdXRoZW50aWNhdGVkOiAhIWRhdGEuZGF0YS5zZXNzaW9uSnd0XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5zZXNzaW9uU3ViamVjdC5uZXh0KHtcbiAgICAgICAgICAgIC4uLmFmdGVyUmVxdWVzdFNlc3Npb24sXG4gICAgICAgICAgICBzZXNzaW9uVG9rZW46ICcnLFxuICAgICAgICAgICAgaXNBdXRoZW50aWNhdGVkOiBmYWxzZVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIGZpbmFsaXplKCgpID0+IHtcbiAgICAgICAgY29uc3QgYWZ0ZXJSZWZyZXNoU2Vzc2lvbiA9IHRoaXMuc2Vzc2lvblN1YmplY3QudmFsdWU7XG4gICAgICAgIHRoaXMuc2Vzc2lvblN1YmplY3QubmV4dCh7XG4gICAgICAgICAgLi4uYWZ0ZXJSZWZyZXNoU2Vzc2lvbixcbiAgICAgICAgICBpc1Nlc3Npb25Mb2FkaW5nOiBmYWxzZVxuICAgICAgICB9KTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHJlZnJlc2hVc2VyKCkge1xuICAgIGNvbnN0IGJlZm9yZVJlZnJlc2hVc2VyID0gdGhpcy51c2VyU3ViamVjdC52YWx1ZTtcbiAgICB0aGlzLnVzZXJTdWJqZWN0Lm5leHQoe1xuICAgICAgLi4uYmVmb3JlUmVmcmVzaFVzZXIsXG4gICAgICBpc1VzZXJMb2FkaW5nOiB0cnVlXG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMuZGVzY29wZVNkay5tZSgpLnBpcGUoXG4gICAgICB0YXAoKGRhdGEpID0+IHtcbiAgICAgICAgY29uc3QgYWZ0ZXJSZXF1ZXN0VXNlciA9IHRoaXMudXNlclN1YmplY3QudmFsdWU7XG4gICAgICAgIGlmIChkYXRhLmRhdGEpIHtcbiAgICAgICAgICB0aGlzLnVzZXJTdWJqZWN0Lm5leHQoe1xuICAgICAgICAgICAgLi4uYWZ0ZXJSZXF1ZXN0VXNlcixcbiAgICAgICAgICAgIHVzZXI6IHtcbiAgICAgICAgICAgICAgLi4uZGF0YS5kYXRhXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICBjb25zdCBhZnRlclJlZnJlc2hVc2VyID0gdGhpcy51c2VyU3ViamVjdC52YWx1ZTtcbiAgICAgICAgdGhpcy51c2VyU3ViamVjdC5uZXh0KHtcbiAgICAgICAgICAuLi5hZnRlclJlZnJlc2hVc2VyLFxuICAgICAgICAgIGlzVXNlckxvYWRpbmc6IGZhbHNlXG4gICAgICAgIH0pO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0U2Vzc2lvblRva2VuKCkge1xuICAgIGlmIChpc0Jyb3dzZXIoKSkge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgdGhpcy5kZXNjb3BlU2RrIGFzIEFuZ3VsYXJEZXNjb3BlU0RLICYge1xuICAgICAgICAgIGdldFNlc3Npb25Ub2tlbjogKCkgPT4gc3RyaW5nIHwgbnVsbDtcbiAgICAgICAgfVxuICAgICAgKS5nZXRTZXNzaW9uVG9rZW4oKTtcbiAgICB9XG4gICAgY29uc29sZS53YXJuKCdHZXQgc2Vzc2lvbiB0b2tlbiBpcyBub3Qgc3VwcG9ydGVkIGluIFNTUicpO1xuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGdldFJlZnJlc2hUb2tlbigpIHtcbiAgICBpZiAoaXNCcm93c2VyKCkpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIHRoaXMuZGVzY29wZVNkayBhcyBBbmd1bGFyRGVzY29wZVNESyAmIHtcbiAgICAgICAgICBnZXRSZWZyZXNoVG9rZW46ICgpID0+IHN0cmluZyB8IG51bGw7XG4gICAgICAgIH1cbiAgICAgICkuZ2V0UmVmcmVzaFRva2VuKCk7XG4gICAgfVxuICAgIHRoaXMuZGVzY29wZVNkay5nZXRKd3RQZXJtaXNzaW9ucztcbiAgICBjb25zb2xlLndhcm4oJ0dldCByZWZyZXNoIHRva2VuIGlzIG5vdCBzdXBwb3J0ZWQgaW4gU1NSJyk7XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgaXNTZXNzaW9uVG9rZW5FeHBpcmVkKHRva2VuID0gdGhpcy5nZXRTZXNzaW9uVG9rZW4oKSkge1xuICAgIGlmIChpc0Jyb3dzZXIoKSkge1xuICAgICAgcmV0dXJuIHRoaXMuZGVzY29wZVNkay5pc0p3dEV4cGlyZWQodG9rZW4gPz8gJycpO1xuICAgIH1cbiAgICBjb25zb2xlLndhcm4oJ2lzU2Vzc2lvblRva2VuRXhwaXJlZCBpcyBub3Qgc3VwcG9ydGVkIGluIFNTUicpO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgaXNSZWZyZXNoVG9rZW5FeHBpcmVkKHRva2VuID0gdGhpcy5nZXRSZWZyZXNoVG9rZW4oKSkge1xuICAgIGlmIChpc0Jyb3dzZXIoKSkge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgdGhpcy5kZXNjb3BlU2RrIGFzIEFuZ3VsYXJEZXNjb3BlU0RLICYge1xuICAgICAgICAgIGlzSnd0RXhwaXJlZDogKHRva2VuOiBzdHJpbmcpID0+IGJvb2xlYW4gfCBudWxsO1xuICAgICAgICB9XG4gICAgICApLmlzSnd0RXhwaXJlZCh0b2tlbiA/PyAnJyk7XG4gICAgfVxuICAgIGNvbnNvbGUud2FybignaXNSZWZyZXNoVG9rZW5FeHBpcmVkIGlzIG5vdCBzdXBwb3J0ZWQgaW4gU1NSJyk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBnZXRKd3RQZXJtaXNzaW9ucyh0b2tlbiA9IHRoaXMuZ2V0U2Vzc2lvblRva2VuKCksIHRlbmFudD86IHN0cmluZykge1xuICAgIGlmICh0b2tlbiA9PT0gbnVsbCkge1xuICAgICAgY29uc29sZS5lcnJvcignQ291bGQgbm90IGdldCBKV1QgUGVybWlzc2lvbnMgLSBub3QgYXV0aGVudGljYXRlZCcpO1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5kZXNjb3BlU2RrLmdldEp3dFBlcm1pc3Npb25zKHRva2VuLCB0ZW5hbnQpO1xuICB9XG5cbiAgZ2V0Snd0Um9sZXModG9rZW4gPSB0aGlzLmdldFNlc3Npb25Ub2tlbigpLCB0ZW5hbnQ/OiBzdHJpbmcpIHtcbiAgICBpZiAodG9rZW4gPT09IG51bGwpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0NvdWxkIG5vdCBnZXQgSldUIFJvbGVzIC0gbm90IGF1dGhlbnRpY2F0ZWQnKTtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZGVzY29wZVNkay5nZXRKd3RSb2xlcyh0b2tlbiwgdGVuYW50KTtcbiAgfVxuXG4gIGlzQXV0aGVudGljYXRlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5zZXNzaW9uU3ViamVjdC52YWx1ZS5pc0F1dGhlbnRpY2F0ZWQ7XG4gIH1cblxuICBwcml2YXRlIHNldFNlc3Npb24oc2Vzc2lvblRva2VuOiBzdHJpbmcgfCBudWxsKSB7XG4gICAgY29uc3QgY3VycmVudFNlc3Npb24gPSB0aGlzLnNlc3Npb25TdWJqZWN0LnZhbHVlO1xuICAgIHRoaXMuc2Vzc2lvblN1YmplY3QubmV4dCh7XG4gICAgICBzZXNzaW9uVG9rZW4sXG4gICAgICBpc0F1dGhlbnRpY2F0ZWQ6ICEhc2Vzc2lvblRva2VuLFxuICAgICAgaXNTZXNzaW9uTG9hZGluZzogY3VycmVudFNlc3Npb24uaXNTZXNzaW9uTG9hZGluZ1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRVc2VyKHVzZXI6IFVzZXJSZXNwb25zZSkge1xuICAgIGNvbnN0IGN1cnJlbnRVc2VyID0gdGhpcy51c2VyU3ViamVjdC52YWx1ZTtcbiAgICB0aGlzLnVzZXJTdWJqZWN0Lm5leHQoe1xuICAgICAgaXNVc2VyTG9hZGluZzogY3VycmVudFVzZXIuaXNVc2VyTG9hZGluZyxcbiAgICAgIHVzZXJcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -0,0 +1,51 @@
1
+ import { inject } from '@angular/core';
2
+ import { throwError } from 'rxjs';
3
+ import { catchError, switchMap } from 'rxjs/operators';
4
+ import { DescopeAuthService } from './descope-auth.service';
5
+ import { DescopeAuthConfig } from '../types/types';
6
+ export const descopeInterceptor = (request, next) => {
7
+ const config = inject(DescopeAuthConfig);
8
+ const authService = inject(DescopeAuthService);
9
+ function refreshAndRetry(request, next, error) {
10
+ return authService.refreshSession().pipe(switchMap((refreshed) => {
11
+ if (refreshed.ok && refreshed.data) {
12
+ const requestWithRefreshedToken = addTokenToRequest(request, refreshed.data?.sessionJwt);
13
+ return next(requestWithRefreshedToken);
14
+ }
15
+ else {
16
+ return throwError(() => error ?? new Error('Could not refresh session!'));
17
+ }
18
+ }));
19
+ }
20
+ function shouldIntercept(request) {
21
+ return ((config.pathsToIntercept?.length === 0 ||
22
+ config.pathsToIntercept?.some((path) => request.url.includes(path))) ??
23
+ true);
24
+ }
25
+ function addTokenToRequest(request, token) {
26
+ return request.clone({
27
+ setHeaders: {
28
+ Authorization: `Bearer ${token}`
29
+ }
30
+ });
31
+ }
32
+ if (shouldIntercept(request)) {
33
+ const token = authService.getSessionToken();
34
+ if (!token) {
35
+ return refreshAndRetry(request, next);
36
+ }
37
+ const requestWithToken = addTokenToRequest(request, token);
38
+ return next(requestWithToken).pipe(catchError((error) => {
39
+ if (error.status === 401 || error.status === 403) {
40
+ return refreshAndRetry(request, next, error);
41
+ }
42
+ else {
43
+ return throwError(() => error);
44
+ }
45
+ }));
46
+ }
47
+ else {
48
+ return next(request);
49
+ }
50
+ };
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY29wZS5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItc2RrL3NyYy9saWIvc2VydmljZXMvZGVzY29wZS5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBT3ZDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBc0IsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLEVBQUU7SUFDckUsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDekMsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFFL0MsU0FBUyxlQUFlLENBQ3RCLE9BQTZCLEVBQzdCLElBQW1CLEVBQ25CLEtBQXlCO1FBRXpCLE9BQU8sV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDLElBQUksQ0FDdEMsU0FBUyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDdEIsSUFBSSxTQUFTLENBQUMsRUFBRSxJQUFJLFNBQVMsQ0FBQyxJQUFJLEVBQUU7Z0JBQ2xDLE1BQU0seUJBQXlCLEdBQUcsaUJBQWlCLENBQ2pELE9BQU8sRUFDUCxTQUFTLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FDM0IsQ0FBQztnQkFDRixPQUFPLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO2FBQ3hDO2lCQUFNO2dCQUNMLE9BQU8sVUFBVSxDQUNmLEdBQUcsRUFBRSxDQUFDLEtBQUssSUFBSSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUN2RCxDQUFDO2FBQ0g7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELFNBQVMsZUFBZSxDQUFDLE9BQTZCO1FBQ3BELE9BQU8sQ0FDTCxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLEtBQUssQ0FBQztZQUNwQyxNQUFNLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ3RFLElBQUksQ0FDTCxDQUFDO0lBQ0osQ0FBQztJQUVELFNBQVMsaUJBQWlCLENBQ3hCLE9BQTZCLEVBQzdCLEtBQWE7UUFFYixPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDbkIsVUFBVSxFQUFFO2dCQUNWLGFBQWEsRUFBRSxVQUFVLEtBQUssRUFBRTthQUNqQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxJQUFJLGVBQWUsQ0FBQyxPQUFPLENBQUMsRUFBRTtRQUM1QixNQUFNLEtBQUssR0FBRyxXQUFXLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDNUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE9BQU8sZUFBZSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztTQUN2QztRQUNELE1BQU0sZ0JBQWdCLEdBQUcsaUJBQWlCLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzNELE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsSUFBSSxDQUNoQyxVQUFVLENBQUMsQ0FBQyxLQUF3QixFQUFFLEVBQUU7WUFDdEMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLEdBQUcsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRTtnQkFDaEQsT0FBTyxlQUFlLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQzthQUM5QztpQkFBTTtnQkFDTCxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUNoQztRQUNILENBQUMsQ0FBQyxDQUNILENBQUM7S0FDSDtTQUFNO1FBQ0wsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7S0FDdEI7QUFDSCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEh0dHBFcnJvclJlc3BvbnNlLFxuICBIdHRwSGFuZGxlckZuLFxuICBIdHRwSW50ZXJjZXB0b3JGbixcbiAgSHR0cFJlcXVlc3Rcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRGVzY29wZUF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9kZXNjb3BlLWF1dGguc2VydmljZSc7XG5pbXBvcnQgeyBEZXNjb3BlQXV0aENvbmZpZyB9IGZyb20gJy4uL3R5cGVzL3R5cGVzJztcblxuZXhwb3J0IGNvbnN0IGRlc2NvcGVJbnRlcmNlcHRvcjogSHR0cEludGVyY2VwdG9yRm4gPSAocmVxdWVzdCwgbmV4dCkgPT4ge1xuICBjb25zdCBjb25maWcgPSBpbmplY3QoRGVzY29wZUF1dGhDb25maWcpO1xuICBjb25zdCBhdXRoU2VydmljZSA9IGluamVjdChEZXNjb3BlQXV0aFNlcnZpY2UpO1xuXG4gIGZ1bmN0aW9uIHJlZnJlc2hBbmRSZXRyeShcbiAgICByZXF1ZXN0OiBIdHRwUmVxdWVzdDx1bmtub3duPixcbiAgICBuZXh0OiBIdHRwSGFuZGxlckZuLFxuICAgIGVycm9yPzogSHR0cEVycm9yUmVzcG9uc2VcbiAgKSB7XG4gICAgcmV0dXJuIGF1dGhTZXJ2aWNlLnJlZnJlc2hTZXNzaW9uKCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgocmVmcmVzaGVkKSA9PiB7XG4gICAgICAgIGlmIChyZWZyZXNoZWQub2sgJiYgcmVmcmVzaGVkLmRhdGEpIHtcbiAgICAgICAgICBjb25zdCByZXF1ZXN0V2l0aFJlZnJlc2hlZFRva2VuID0gYWRkVG9rZW5Ub1JlcXVlc3QoXG4gICAgICAgICAgICByZXF1ZXN0LFxuICAgICAgICAgICAgcmVmcmVzaGVkLmRhdGE/LnNlc3Npb25Kd3RcbiAgICAgICAgICApO1xuICAgICAgICAgIHJldHVybiBuZXh0KHJlcXVlc3RXaXRoUmVmcmVzaGVkVG9rZW4pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKFxuICAgICAgICAgICAgKCkgPT4gZXJyb3IgPz8gbmV3IEVycm9yKCdDb3VsZCBub3QgcmVmcmVzaCBzZXNzaW9uIScpXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZnVuY3Rpb24gc2hvdWxkSW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgIChjb25maWcucGF0aHNUb0ludGVyY2VwdD8ubGVuZ3RoID09PSAwIHx8XG4gICAgICAgIGNvbmZpZy5wYXRoc1RvSW50ZXJjZXB0Py5zb21lKChwYXRoKSA9PiByZXF1ZXN0LnVybC5pbmNsdWRlcyhwYXRoKSkpID8/XG4gICAgICB0cnVlXG4gICAgKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGFkZFRva2VuVG9SZXF1ZXN0KFxuICAgIHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+LFxuICAgIHRva2VuOiBzdHJpbmdcbiAgKTogSHR0cFJlcXVlc3Q8dW5rbm93bj4ge1xuICAgIHJldHVybiByZXF1ZXN0LmNsb25lKHtcbiAgICAgIHNldEhlYWRlcnM6IHtcbiAgICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3Rva2VufWBcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGlmIChzaG91bGRJbnRlcmNlcHQocmVxdWVzdCkpIHtcbiAgICBjb25zdCB0b2tlbiA9IGF1dGhTZXJ2aWNlLmdldFNlc3Npb25Ub2tlbigpO1xuICAgIGlmICghdG9rZW4pIHtcbiAgICAgIHJldHVybiByZWZyZXNoQW5kUmV0cnkocmVxdWVzdCwgbmV4dCk7XG4gICAgfVxuICAgIGNvbnN0IHJlcXVlc3RXaXRoVG9rZW4gPSBhZGRUb2tlblRvUmVxdWVzdChyZXF1ZXN0LCB0b2tlbik7XG4gICAgcmV0dXJuIG5leHQocmVxdWVzdFdpdGhUb2tlbikucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICBpZiAoZXJyb3Iuc3RhdHVzID09PSA0MDEgfHwgZXJyb3Iuc3RhdHVzID09PSA0MDMpIHtcbiAgICAgICAgICByZXR1cm4gcmVmcmVzaEFuZFJldHJ5KHJlcXVlc3QsIG5leHQsIGVycm9yKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcik7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gbmV4dChyZXF1ZXN0KTtcbiAgfVxufTtcbiJdfQ==
@@ -0,0 +1,6 @@
1
+ export class DescopeAuthConfig {
2
+ constructor() {
3
+ this.projectId = '';
4
+ }
5
+ }
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXNkay9zcmMvbGliL3R5cGVzL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxpQkFBaUI7SUFBOUI7UUFDRSxjQUFTLEdBQUcsRUFBRSxDQUFDO0lBU2pCLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElMb2dnZXIgfSBmcm9tICdAZGVzY29wZS93ZWItY29tcG9uZW50JztcblxuZXhwb3J0IGNsYXNzIERlc2NvcGVBdXRoQ29uZmlnIHtcbiAgcHJvamVjdElkID0gJyc7XG4gIGJhc2VVcmw/OiBzdHJpbmc7XG4gIGJhc2VTdGF0aWNVcmw/OiBzdHJpbmc7XG4gIC8vIElmIHRydWUsIHRva2VucyB3aWxsIGJlIHN0b3JlZCBvbiBsb2NhbCBzdG9yYWdlXG4gIHBlcnNpc3RUb2tlbnM/OiBib29sZWFuO1xuICBzZXNzaW9uVG9rZW5WaWFDb29raWU/OiBib29sZWFuO1xuICAvLyBJZiB0cnVlLCBsYXN0IGF1dGhlbnRpY2F0ZWQgdXNlciB3aWxsIGJlIHN0b3JlZCBvbiBsb2NhbCBzdG9yYWdlIGFuZCBjYW4gYWNjZXNzZWQgd2l0aCBnZXRVc2VyIGZ1bmN0aW9uXG4gIHN0b3JlTGFzdEF1dGhlbnRpY2F0ZWRVc2VyPzogYm9vbGVhbjtcbiAgcGF0aHNUb0ludGVyY2VwdD86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgdHlwZSB7IElMb2dnZXIgfTtcbiJdfQ==
@@ -4,4 +4,4 @@ export const baseHeaders = {
4
4
  'x-descope-sdk-version': environment.buildVersion
5
5
  };
6
6
  export const isBrowser = () => typeof window !== 'undefined';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1zZGsvc3JjL2xpYi91dGlscy9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWhELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRztJQUMxQixvQkFBb0IsRUFBRSxTQUFTO0lBQy9CLHVCQUF1QixFQUFFLFdBQVcsQ0FBQyxZQUFZO0NBQ2pELENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsR0FBRyxFQUFFLENBQUMsT0FBTyxNQUFNLEtBQUssV0FBVyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZW52aXJvbm1lbnQgfSBmcm9tICcuLi8uLi9lbnZpcm9ubWVudCc7XG5cbmV4cG9ydCBjb25zdCBiYXNlSGVhZGVycyA9IHtcblx0J3gtZGVzY29wZS1zZGstbmFtZSc6ICdhbmd1bGFyJyxcblx0J3gtZGVzY29wZS1zZGstdmVyc2lvbic6IGVudmlyb25tZW50LmJ1aWxkVmVyc2lvblxufTtcblxuZXhwb3J0IGNvbnN0IGlzQnJvd3NlciA9ICgpID0+IHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnO1xuIl19
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1zZGsvc3JjL2xpYi91dGlscy9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWhELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRztJQUN6QixvQkFBb0IsRUFBRSxTQUFTO0lBQy9CLHVCQUF1QixFQUFFLFdBQVcsQ0FBQyxZQUFZO0NBQ2xELENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsR0FBRyxFQUFFLENBQUMsT0FBTyxNQUFNLEtBQUssV0FBVyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZW52aXJvbm1lbnQgfSBmcm9tICcuLi8uLi9lbnZpcm9ubWVudCc7XG5cbmV4cG9ydCBjb25zdCBiYXNlSGVhZGVycyA9IHtcbiAgJ3gtZGVzY29wZS1zZGstbmFtZSc6ICdhbmd1bGFyJyxcbiAgJ3gtZGVzY29wZS1zZGstdmVyc2lvbic6IGVudmlyb25tZW50LmJ1aWxkVmVyc2lvblxufTtcblxuZXhwb3J0IGNvbnN0IGlzQnJvd3NlciA9ICgpID0+IHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnO1xuIl19
@@ -0,0 +1,27 @@
1
+ import { from } from 'rxjs';
2
+ export function observabilify(value) {
3
+ /* eslint-disable @typescript-eslint/no-explicit-any */
4
+ const observableValue = {};
5
+ for (const key in value) {
6
+ if (typeof value[key] === 'function') {
7
+ const fn = value[key];
8
+ observableValue[key] = (...args) => {
9
+ const fnResult = fn(...args);
10
+ if (fnResult instanceof Promise) {
11
+ return from(fnResult);
12
+ }
13
+ else {
14
+ return fnResult;
15
+ }
16
+ };
17
+ }
18
+ else if (typeof value[key] === 'object' && value[key] !== null) {
19
+ observableValue[key] = observabilify(value[key]);
20
+ }
21
+ else {
22
+ observableValue[key] = value[key];
23
+ }
24
+ }
25
+ return observableValue;
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItc2RrL3NyYy9saWIvdXRpbHMvaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBWXhDLE1BQU0sVUFBVSxhQUFhLENBQUksS0FBUTtJQUN2Qyx1REFBdUQ7SUFDdkQsTUFBTSxlQUFlLEdBQVEsRUFBRSxDQUFDO0lBRWhDLEtBQUssTUFBTSxHQUFHLElBQUksS0FBSyxFQUFFO1FBQ3ZCLElBQUksT0FBTyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssVUFBVSxFQUFFO1lBQ3BDLE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQW9DLENBQUM7WUFDekQsZUFBZSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFlLEVBQUUsRUFBRTtnQkFDNUMsTUFBTSxRQUFRLEdBQUcsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7Z0JBQzdCLElBQUksUUFBUSxZQUFZLE9BQU8sRUFBRTtvQkFDL0IsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7aUJBQ3ZCO3FCQUFNO29CQUNMLE9BQU8sUUFBUSxDQUFDO2lCQUNqQjtZQUNILENBQUMsQ0FBQztTQUNIO2FBQU0sSUFBSSxPQUFPLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxRQUFRLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksRUFBRTtZQUNoRSxlQUFlLENBQUMsR0FBRyxDQUFDLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ2xEO2FBQU07WUFDTCxlQUFlLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ25DO0tBQ0Y7SUFFRCxPQUFPLGVBQW9DLENBQUM7QUFDOUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZyb20sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IHR5cGUgT2JzZXJ2YWJsZWZpZWQ8VD4gPSB7XG4gIFtLIGluIGtleW9mIFRdOiBUW0tdIGV4dGVuZHMgKC4uLmFyZ3M6IGluZmVyIEFyZ3MpID0+IFByb21pc2U8aW5mZXIgUj5cbiAgICA/ICguLi5hcmdzOiBBcmdzKSA9PiBPYnNlcnZhYmxlPFI+XG4gICAgOiBUW0tdIGV4dGVuZHMgKC4uLmFyZ3M6IGluZmVyIEFyZ3MpID0+IGluZmVyIFJcbiAgICAgID8gKC4uLmFyZ3M6IEFyZ3MpID0+IFJcbiAgICAgIDogVFtLXSBleHRlbmRzIG9iamVjdFxuICAgICAgICA/IE9ic2VydmFibGVmaWVkPFRbS10+XG4gICAgICAgIDogVFtLXTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBvYnNlcnZhYmlsaWZ5PFQ+KHZhbHVlOiBUKTogT2JzZXJ2YWJsZWZpZWQ8VD4ge1xuICAvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG4gIGNvbnN0IG9ic2VydmFibGVWYWx1ZTogYW55ID0ge307XG5cbiAgZm9yIChjb25zdCBrZXkgaW4gdmFsdWUpIHtcbiAgICBpZiAodHlwZW9mIHZhbHVlW2tleV0gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNvbnN0IGZuID0gdmFsdWVba2V5XSBhcyAoLi4uYXJnczogdW5rbm93bltdKSA9PiB1bmtub3duO1xuICAgICAgb2JzZXJ2YWJsZVZhbHVlW2tleV0gPSAoLi4uYXJnczogdW5rbm93bltdKSA9PiB7XG4gICAgICAgIGNvbnN0IGZuUmVzdWx0ID0gZm4oLi4uYXJncyk7XG4gICAgICAgIGlmIChmblJlc3VsdCBpbnN0YW5jZW9mIFByb21pc2UpIHtcbiAgICAgICAgICByZXR1cm4gZnJvbShmblJlc3VsdCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIGZuUmVzdWx0O1xuICAgICAgICB9XG4gICAgICB9O1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlW2tleV0gPT09ICdvYmplY3QnICYmIHZhbHVlW2tleV0gIT09IG51bGwpIHtcbiAgICAgIG9ic2VydmFibGVWYWx1ZVtrZXldID0gb2JzZXJ2YWJpbGlmeSh2YWx1ZVtrZXldKTtcbiAgICB9IGVsc2Uge1xuICAgICAgb2JzZXJ2YWJsZVZhbHVlW2tleV0gPSB2YWx1ZVtrZXldO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBvYnNlcnZhYmxlVmFsdWUgYXMgT2JzZXJ2YWJsZWZpZWQ8VD47XG59XG4iXX0=