@azure/msal-browser 3.0.0-alpha.1 → 3.0.0-alpha.2

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 (142) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +213 -213
  3. package/dist/app/IPublicClientApplication.d.ts +45 -45
  4. package/dist/app/IPublicClientApplication.js +96 -96
  5. package/dist/app/PublicClientApplication.d.ts +244 -244
  6. package/dist/app/PublicClientApplication.js +307 -307
  7. package/dist/broker/nativeBroker/NativeMessageHandler.d.ts +63 -63
  8. package/dist/broker/nativeBroker/NativeMessageHandler.js +255 -255
  9. package/dist/broker/nativeBroker/NativeRequest.d.ts +43 -43
  10. package/dist/broker/nativeBroker/NativeResponse.d.ts +48 -48
  11. package/dist/cache/AsyncMemoryStorage.d.ts +51 -51
  12. package/dist/cache/AsyncMemoryStorage.js +132 -132
  13. package/dist/cache/BrowserCacheManager.d.ts +377 -377
  14. package/dist/cache/BrowserCacheManager.js +1276 -1276
  15. package/dist/cache/BrowserStorage.d.ts +11 -11
  16. package/dist/cache/BrowserStorage.js +35 -35
  17. package/dist/cache/CryptoKeyStore.d.ts +17 -17
  18. package/dist/cache/CryptoKeyStore.js +41 -41
  19. package/dist/cache/DatabaseStorage.d.ts +56 -56
  20. package/dist/cache/DatabaseStorage.js +190 -190
  21. package/dist/cache/IAsyncMemoryStorage.d.ts +27 -27
  22. package/dist/cache/ITokenCache.d.ts +10 -10
  23. package/dist/cache/IWindowStorage.d.ts +27 -27
  24. package/dist/cache/MemoryStorage.d.ts +11 -11
  25. package/dist/cache/MemoryStorage.js +31 -31
  26. package/dist/cache/TokenCache.d.ts +76 -76
  27. package/dist/cache/TokenCache.js +225 -225
  28. package/dist/config/Configuration.d.ts +203 -203
  29. package/dist/config/Configuration.js +101 -101
  30. package/dist/controllers/ControllerFactory.d.ts +9 -9
  31. package/dist/controllers/ControllerFactory.js +37 -37
  32. package/dist/controllers/IController.d.ts +66 -66
  33. package/dist/controllers/StandardController.d.ts +413 -413
  34. package/dist/controllers/StandardController.js +1272 -1272
  35. package/dist/crypto/BrowserCrypto.d.ts +61 -61
  36. package/dist/crypto/BrowserCrypto.js +131 -131
  37. package/dist/crypto/CryptoOps.d.ts +73 -73
  38. package/dist/crypto/CryptoOps.js +150 -150
  39. package/dist/crypto/GuidGenerator.d.ts +12 -12
  40. package/dist/crypto/GuidGenerator.js +96 -96
  41. package/dist/crypto/ISubtleCrypto.d.ts +9 -9
  42. package/dist/crypto/ModernBrowserCrypto.d.ts +9 -9
  43. package/dist/crypto/ModernBrowserCrypto.js +24 -24
  44. package/dist/crypto/MsBrowserCrypto.d.ts +9 -9
  45. package/dist/crypto/MsBrowserCrypto.js +79 -79
  46. package/dist/crypto/MsrBrowserCrypto.d.ts +17 -17
  47. package/dist/crypto/MsrBrowserCrypto.js +28 -28
  48. package/dist/crypto/PkceGenerator.d.ts +24 -24
  49. package/dist/crypto/PkceGenerator.js +58 -58
  50. package/dist/crypto/SignedHttpRequest.d.ts +30 -30
  51. package/dist/crypto/SignedHttpRequest.js +39 -39
  52. package/dist/encode/Base64Decode.d.ts +22 -22
  53. package/dist/encode/Base64Decode.js +73 -73
  54. package/dist/encode/Base64Encode.d.ts +31 -31
  55. package/dist/encode/Base64Encode.js +79 -79
  56. package/dist/error/BrowserAuthError.d.ts +382 -382
  57. package/dist/error/BrowserAuthError.js +483 -483
  58. package/dist/error/BrowserConfigurationAuthError.d.ts +70 -70
  59. package/dist/error/BrowserConfigurationAuthError.js +96 -96
  60. package/dist/error/NativeAuthError.d.ts +56 -56
  61. package/dist/error/NativeAuthError.js +88 -88
  62. package/dist/event/EventHandler.d.ts +41 -41
  63. package/dist/event/EventHandler.js +119 -119
  64. package/dist/event/EventMessage.d.ts +25 -25
  65. package/dist/event/EventMessage.js +67 -67
  66. package/dist/event/EventType.d.ts +26 -26
  67. package/dist/event/EventType.js +31 -31
  68. package/dist/index.d.ts +35 -35
  69. package/dist/index.js +1 -1
  70. package/dist/interaction_client/BaseInteractionClient.d.ts +52 -52
  71. package/dist/interaction_client/BaseInteractionClient.js +138 -138
  72. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.d.ts +4 -4
  73. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.js +10 -10
  74. package/dist/interaction_client/NativeInteractionClient.d.ts +148 -148
  75. package/dist/interaction_client/NativeInteractionClient.js +516 -516
  76. package/dist/interaction_client/PopupClient.d.ts +111 -111
  77. package/dist/interaction_client/PopupClient.js +476 -476
  78. package/dist/interaction_client/RedirectClient.d.ts +48 -48
  79. package/dist/interaction_client/RedirectClient.js +290 -290
  80. package/dist/interaction_client/SilentAuthCodeClient.d.ts +22 -22
  81. package/dist/interaction_client/SilentAuthCodeClient.js +62 -62
  82. package/dist/interaction_client/SilentCacheClient.d.ts +21 -21
  83. package/dist/interaction_client/SilentCacheClient.js +67 -67
  84. package/dist/interaction_client/SilentIframeClient.d.ts +31 -31
  85. package/dist/interaction_client/SilentIframeClient.js +127 -127
  86. package/dist/interaction_client/SilentRefreshClient.d.ts +19 -19
  87. package/dist/interaction_client/SilentRefreshClient.js +62 -62
  88. package/dist/interaction_client/StandardInteractionClient.d.ts +59 -59
  89. package/dist/interaction_client/StandardInteractionClient.js +259 -259
  90. package/dist/interaction_handler/InteractionHandler.d.ts +39 -39
  91. package/dist/interaction_handler/InteractionHandler.js +127 -127
  92. package/dist/interaction_handler/RedirectHandler.d.ts +24 -24
  93. package/dist/interaction_handler/RedirectHandler.js +118 -118
  94. package/dist/interaction_handler/SilentHandler.d.ts +47 -47
  95. package/dist/interaction_handler/SilentHandler.js +162 -162
  96. package/dist/internals.d.ts +23 -23
  97. package/dist/internals.js +4 -4
  98. package/dist/navigation/INavigationClient.d.ts +16 -16
  99. package/dist/navigation/NavigationClient.d.ts +22 -22
  100. package/dist/navigation/NavigationClient.js +40 -40
  101. package/dist/navigation/NavigationOptions.d.ts +12 -12
  102. package/dist/network/FetchClient.d.ts +26 -26
  103. package/dist/network/FetchClient.js +99 -99
  104. package/dist/network/XhrClient.d.ts +40 -40
  105. package/dist/network/XhrClient.js +117 -117
  106. package/dist/operatingcontext/BaseOperatingContext.d.ts +40 -40
  107. package/dist/operatingcontext/BaseOperatingContext.js +44 -44
  108. package/dist/operatingcontext/StandardOperatingContext.d.ts +25 -25
  109. package/dist/operatingcontext/StandardOperatingContext.js +43 -43
  110. package/dist/operatingcontext/TeamsAppOperatingContext.d.ts +25 -25
  111. package/dist/operatingcontext/TeamsAppOperatingContext.js +42 -42
  112. package/dist/packageMetadata.d.ts +2 -2
  113. package/dist/packageMetadata.js +4 -4
  114. package/dist/request/AuthorizationCodeRequest.d.ts +8 -8
  115. package/dist/request/AuthorizationUrlRequest.d.ts +8 -8
  116. package/dist/request/EndSessionPopupRequest.d.ts +18 -18
  117. package/dist/request/EndSessionRequest.d.ts +15 -15
  118. package/dist/request/PopupRequest.d.ts +32 -32
  119. package/dist/request/PopupWindowAttributes.d.ts +15 -15
  120. package/dist/request/RedirectRequest.d.ts +33 -33
  121. package/dist/request/SilentRequest.d.ts +30 -30
  122. package/dist/request/SsoSilentRequest.d.ts +26 -26
  123. package/dist/telemetry/BrowserPerformanceClient.d.ts +38 -38
  124. package/dist/telemetry/BrowserPerformanceClient.js +124 -124
  125. package/dist/telemetry/BrowserPerformanceMeasurement.d.ts +21 -21
  126. package/dist/telemetry/BrowserPerformanceMeasurement.js +92 -92
  127. package/dist/utils/BrowserConstants.d.ts +166 -166
  128. package/dist/utils/BrowserConstants.js +214 -214
  129. package/dist/utils/BrowserProtocolUtils.d.ts +18 -18
  130. package/dist/utils/BrowserProtocolUtils.js +34 -34
  131. package/dist/utils/BrowserStringUtils.d.ts +26 -26
  132. package/dist/utils/BrowserStringUtils.js +149 -149
  133. package/dist/utils/BrowserUtils.d.ts +65 -65
  134. package/dist/utils/BrowserUtils.js +138 -138
  135. package/dist/utils/MathUtils.d.ts +11 -11
  136. package/dist/utils/MathUtils.js +21 -21
  137. package/lib/msal-browser.cjs.js +18383 -0
  138. package/lib/msal-browser.cjs.js.map +1 -0
  139. package/lib/msal-browser.js +18389 -0
  140. package/lib/msal-browser.js.map +1 -0
  141. package/lib/msal-browser.min.js +74 -0
  142. package/package.json +97 -95
@@ -1,149 +1,149 @@
1
- import { AuthenticationResult, Logger, ICrypto, AuthToken, AccountEntity, ScopeSet, IPerformanceClient } from "@azure/msal-common";
2
- import { BaseInteractionClient } from "./BaseInteractionClient";
3
- import { BrowserConfiguration } from "../config/Configuration";
4
- import { BrowserCacheManager } from "../cache/BrowserCacheManager";
5
- import { EventHandler } from "../event/EventHandler";
6
- import { PopupRequest } from "../request/PopupRequest";
7
- import { SilentRequest } from "../request/SilentRequest";
8
- import { SsoSilentRequest } from "../request/SsoSilentRequest";
9
- import { NativeMessageHandler } from "../broker/nativeBroker/NativeMessageHandler";
10
- import { ApiId } from "../utils/BrowserConstants";
11
- import { NativeTokenRequest } from "../broker/nativeBroker/NativeRequest";
12
- import { MATS, NativeResponse } from "../broker/nativeBroker/NativeResponse";
13
- import { RedirectRequest } from "../request/RedirectRequest";
14
- import { INavigationClient } from "../navigation/INavigationClient";
15
- import { SilentCacheClient } from "./SilentCacheClient";
16
- export declare class NativeInteractionClient extends BaseInteractionClient {
17
- protected apiId: ApiId;
18
- protected accountId: string;
19
- protected nativeMessageHandler: NativeMessageHandler;
20
- protected silentCacheClient: SilentCacheClient;
21
- protected nativeStorageManager: BrowserCacheManager;
22
- constructor(config: BrowserConfiguration, browserStorage: BrowserCacheManager, browserCrypto: ICrypto, logger: Logger, eventHandler: EventHandler, navigationClient: INavigationClient, apiId: ApiId, performanceClient: IPerformanceClient, provider: NativeMessageHandler, accountId: string, nativeStorageImpl: BrowserCacheManager, correlationId?: string);
23
- /**
24
- * Acquire token from native platform via browser extension
25
- * @param request
26
- */
27
- acquireToken(request: PopupRequest | SilentRequest | SsoSilentRequest): Promise<AuthenticationResult>;
28
- /**
29
- * Creates silent flow request
30
- * @param request
31
- * @param cachedAccount
32
- * @returns CommonSilentFlowRequest
33
- */
34
- private createSilentCacheRequest;
35
- /**
36
- * Fetches the tokens from the cache if un-expired
37
- * @param nativeAccountId
38
- * @param request
39
- * @returns authenticationResult
40
- */
41
- protected acquireTokensFromCache(nativeAccountId: string, request: NativeTokenRequest): Promise<AuthenticationResult>;
42
- /**
43
- * Acquires a token from native platform then redirects to the redirectUri instead of returning the response
44
- * @param request
45
- */
46
- acquireTokenRedirect(request: RedirectRequest): Promise<void>;
47
- /**
48
- * If the previous page called native platform for a token using redirect APIs, send the same request again and return the response
49
- */
50
- handleRedirectPromise(): Promise<AuthenticationResult | null>;
51
- /**
52
- * Logout from native platform via browser extension
53
- * @param request
54
- */
55
- logout(): Promise<void>;
56
- /**
57
- * Transform response from native platform into AuthenticationResult object which will be returned to the end user
58
- * @param response
59
- * @param request
60
- * @param reqTimestamp
61
- */
62
- protected handleNativeResponse(response: NativeResponse, request: NativeTokenRequest, reqTimestamp: number): Promise<AuthenticationResult>;
63
- /**
64
- * Create an idToken Object (not entity)
65
- * @param response
66
- * @returns
67
- */
68
- protected createIdTokenObj(response: NativeResponse): AuthToken;
69
- /**
70
- * creates an homeAccountIdentifier for the account
71
- * @param response
72
- * @param idTokenObj
73
- * @returns
74
- */
75
- protected createHomeAccountIdentifier(response: NativeResponse, idTokenObj: AuthToken): string;
76
- /**
77
- * Creates account entity
78
- * @param response
79
- * @param homeAccountIdentifier
80
- * @param idTokenObj
81
- * @param authority
82
- * @returns
83
- */
84
- protected createAccountEntity(response: NativeResponse, homeAccountIdentifier: string, idTokenObj: AuthToken, authority: string): AccountEntity;
85
- /**
86
- * Helper to generate scopes
87
- * @param response
88
- * @param request
89
- * @returns
90
- */
91
- generateScopes(response: NativeResponse, request: NativeTokenRequest): ScopeSet;
92
- /**
93
- * If PoP token is requesred, records the PoP token if returned from the WAM, else generates one in the browser
94
- * @param request
95
- * @param response
96
- */
97
- generatePopAccessToken(response: NativeResponse, request: NativeTokenRequest): Promise<string>;
98
- /**
99
- * Generates authentication result
100
- * @param response
101
- * @param request
102
- * @param idTokenObj
103
- * @param accountEntity
104
- * @param authority
105
- * @param reqTimestamp
106
- * @returns
107
- */
108
- protected generateAuthenticationResult(response: NativeResponse, request: NativeTokenRequest, idTokenObj: AuthToken, accountEntity: AccountEntity, authority: string, reqTimestamp: number): Promise<AuthenticationResult>;
109
- /**
110
- * cache the account entity in browser storage
111
- * @param accountEntity
112
- */
113
- cacheAccount(accountEntity: AccountEntity): void;
114
- /**
115
- * Stores the access_token and id_token in inmemory storage
116
- * @param response
117
- * @param request
118
- * @param homeAccountIdentifier
119
- * @param idTokenObj
120
- * @param responseAccessToken
121
- * @param tenantId
122
- * @param reqTimestamp
123
- */
124
- cacheNativeTokens(response: NativeResponse, request: NativeTokenRequest, homeAccountIdentifier: string, idTokenObj: AuthToken, responseAccessToken: string, tenantId: string, reqTimestamp: number): void;
125
- protected addTelemetryFromNativeResponse(response: NativeResponse): MATS | null;
126
- /**
127
- * Validates native platform response before processing
128
- * @param response
129
- */
130
- private validateNativeResponse;
131
- /**
132
- * Gets MATS telemetry from native response
133
- * @param response
134
- * @returns
135
- */
136
- private getMATSFromResponse;
137
- /**
138
- * Returns whether or not response came from native cache
139
- * @param response
140
- * @returns
141
- */
142
- protected isResponseFromCache(mats: MATS): boolean;
143
- /**
144
- * Translates developer provided request object into NativeRequest object
145
- * @param request
146
- */
147
- protected initializeNativeRequest(request: PopupRequest | SsoSilentRequest): Promise<NativeTokenRequest>;
148
- }
1
+ import { AuthenticationResult, Logger, ICrypto, AuthToken, AccountEntity, ScopeSet, IPerformanceClient } from "@azure/msal-common";
2
+ import { BaseInteractionClient } from "./BaseInteractionClient";
3
+ import { BrowserConfiguration } from "../config/Configuration";
4
+ import { BrowserCacheManager } from "../cache/BrowserCacheManager";
5
+ import { EventHandler } from "../event/EventHandler";
6
+ import { PopupRequest } from "../request/PopupRequest";
7
+ import { SilentRequest } from "../request/SilentRequest";
8
+ import { SsoSilentRequest } from "../request/SsoSilentRequest";
9
+ import { NativeMessageHandler } from "../broker/nativeBroker/NativeMessageHandler";
10
+ import { ApiId } from "../utils/BrowserConstants";
11
+ import { NativeTokenRequest } from "../broker/nativeBroker/NativeRequest";
12
+ import { MATS, NativeResponse } from "../broker/nativeBroker/NativeResponse";
13
+ import { RedirectRequest } from "../request/RedirectRequest";
14
+ import { INavigationClient } from "../navigation/INavigationClient";
15
+ import { SilentCacheClient } from "./SilentCacheClient";
16
+ export declare class NativeInteractionClient extends BaseInteractionClient {
17
+ protected apiId: ApiId;
18
+ protected accountId: string;
19
+ protected nativeMessageHandler: NativeMessageHandler;
20
+ protected silentCacheClient: SilentCacheClient;
21
+ protected nativeStorageManager: BrowserCacheManager;
22
+ constructor(config: BrowserConfiguration, browserStorage: BrowserCacheManager, browserCrypto: ICrypto, logger: Logger, eventHandler: EventHandler, navigationClient: INavigationClient, apiId: ApiId, performanceClient: IPerformanceClient, provider: NativeMessageHandler, accountId: string, nativeStorageImpl: BrowserCacheManager, correlationId?: string);
23
+ /**
24
+ * Acquire token from native platform via browser extension
25
+ * @param request
26
+ */
27
+ acquireToken(request: PopupRequest | SilentRequest | SsoSilentRequest): Promise<AuthenticationResult>;
28
+ /**
29
+ * Creates silent flow request
30
+ * @param request
31
+ * @param cachedAccount
32
+ * @returns CommonSilentFlowRequest
33
+ */
34
+ private createSilentCacheRequest;
35
+ /**
36
+ * Fetches the tokens from the cache if un-expired
37
+ * @param nativeAccountId
38
+ * @param request
39
+ * @returns authenticationResult
40
+ */
41
+ protected acquireTokensFromCache(nativeAccountId: string, request: NativeTokenRequest): Promise<AuthenticationResult>;
42
+ /**
43
+ * Acquires a token from native platform then redirects to the redirectUri instead of returning the response
44
+ * @param request
45
+ */
46
+ acquireTokenRedirect(request: RedirectRequest): Promise<void>;
47
+ /**
48
+ * If the previous page called native platform for a token using redirect APIs, send the same request again and return the response
49
+ */
50
+ handleRedirectPromise(): Promise<AuthenticationResult | null>;
51
+ /**
52
+ * Logout from native platform via browser extension
53
+ * @param request
54
+ */
55
+ logout(): Promise<void>;
56
+ /**
57
+ * Transform response from native platform into AuthenticationResult object which will be returned to the end user
58
+ * @param response
59
+ * @param request
60
+ * @param reqTimestamp
61
+ */
62
+ protected handleNativeResponse(response: NativeResponse, request: NativeTokenRequest, reqTimestamp: number): Promise<AuthenticationResult>;
63
+ /**
64
+ * Create an idToken Object (not entity)
65
+ * @param response
66
+ * @returns
67
+ */
68
+ protected createIdTokenObj(response: NativeResponse): AuthToken;
69
+ /**
70
+ * creates an homeAccountIdentifier for the account
71
+ * @param response
72
+ * @param idTokenObj
73
+ * @returns
74
+ */
75
+ protected createHomeAccountIdentifier(response: NativeResponse, idTokenObj: AuthToken): string;
76
+ /**
77
+ * Creates account entity
78
+ * @param response
79
+ * @param homeAccountIdentifier
80
+ * @param idTokenObj
81
+ * @param authority
82
+ * @returns
83
+ */
84
+ protected createAccountEntity(response: NativeResponse, homeAccountIdentifier: string, idTokenObj: AuthToken, authority: string): AccountEntity;
85
+ /**
86
+ * Helper to generate scopes
87
+ * @param response
88
+ * @param request
89
+ * @returns
90
+ */
91
+ generateScopes(response: NativeResponse, request: NativeTokenRequest): ScopeSet;
92
+ /**
93
+ * If PoP token is requesred, records the PoP token if returned from the WAM, else generates one in the browser
94
+ * @param request
95
+ * @param response
96
+ */
97
+ generatePopAccessToken(response: NativeResponse, request: NativeTokenRequest): Promise<string>;
98
+ /**
99
+ * Generates authentication result
100
+ * @param response
101
+ * @param request
102
+ * @param idTokenObj
103
+ * @param accountEntity
104
+ * @param authority
105
+ * @param reqTimestamp
106
+ * @returns
107
+ */
108
+ protected generateAuthenticationResult(response: NativeResponse, request: NativeTokenRequest, idTokenObj: AuthToken, accountEntity: AccountEntity, authority: string, reqTimestamp: number): Promise<AuthenticationResult>;
109
+ /**
110
+ * cache the account entity in browser storage
111
+ * @param accountEntity
112
+ */
113
+ cacheAccount(accountEntity: AccountEntity): void;
114
+ /**
115
+ * Stores the access_token and id_token in inmemory storage
116
+ * @param response
117
+ * @param request
118
+ * @param homeAccountIdentifier
119
+ * @param idTokenObj
120
+ * @param responseAccessToken
121
+ * @param tenantId
122
+ * @param reqTimestamp
123
+ */
124
+ cacheNativeTokens(response: NativeResponse, request: NativeTokenRequest, homeAccountIdentifier: string, idTokenObj: AuthToken, responseAccessToken: string, tenantId: string, reqTimestamp: number): void;
125
+ protected addTelemetryFromNativeResponse(response: NativeResponse): MATS | null;
126
+ /**
127
+ * Validates native platform response before processing
128
+ * @param response
129
+ */
130
+ private validateNativeResponse;
131
+ /**
132
+ * Gets MATS telemetry from native response
133
+ * @param response
134
+ * @returns
135
+ */
136
+ private getMATSFromResponse;
137
+ /**
138
+ * Returns whether or not response came from native cache
139
+ * @param response
140
+ * @returns
141
+ */
142
+ protected isResponseFromCache(mats: MATS): boolean;
143
+ /**
144
+ * Translates developer provided request object into NativeRequest object
145
+ * @param request
146
+ */
147
+ protected initializeNativeRequest(request: PopupRequest | SsoSilentRequest): Promise<NativeTokenRequest>;
148
+ }
149
149
  //# sourceMappingURL=NativeInteractionClient.d.ts.map