@equinor/fusion-framework-module-msal 11.0.0 → 11.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/version.js +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +8 -5
- package/CHANGELOG.md +0 -1212
- package/docs/api-reference.md +0 -85
- package/docs/auth-code-flow.md +0 -86
- package/docs/migration-v2-to-v4.md +0 -115
- package/docs/testing.md +0 -191
- package/docs/troubleshooting.md +0 -17
- package/docs/version-management.md +0 -67
- package/src/MsalClient.interface.ts +0 -139
- package/src/MsalClient.ts +0 -326
- package/src/MsalConfigurator.ts +0 -486
- package/src/MsalProvider.interface.ts +0 -179
- package/src/MsalProvider.ts +0 -776
- package/src/MsalProxyProvider.interface.ts +0 -72
- package/src/__tests__/MsalConfigurator.test.ts +0 -222
- package/src/__tests__/MsalProvider.test.ts +0 -74
- package/src/__tests__/create-proxy-provider.test.ts +0 -77
- package/src/__tests__/mock/create-mock-user-from-token.test.ts +0 -46
- package/src/__tests__/mock/msal-mock.test.ts +0 -613
- package/src/__tests__/versioning/resolve-version.test.ts +0 -161
- package/src/create-client-log-callback.ts +0 -102
- package/src/create-proxy-provider.ts +0 -97
- package/src/index.ts +0 -48
- package/src/mock/MsalMockClient.ts +0 -618
- package/src/mock/MsalMockConfigurator.ts +0 -305
- package/src/mock/create-mock-token.ts +0 -92
- package/src/mock/create-mock-user-from-token.ts +0 -46
- package/src/mock/create-msal-mock-client.ts +0 -25
- package/src/mock/decode-jwt-segment.ts +0 -22
- package/src/mock/index.ts +0 -30
- package/src/mock/module.ts +0 -54
- package/src/module.ts +0 -142
- package/src/msal-config-schema.ts +0 -81
- package/src/static.ts +0 -38
- package/src/telemetry-config-schema.ts +0 -25
- package/src/types.ts +0 -16
- package/src/util/compare-origin.ts +0 -18
- package/src/util/normalize-uri.ts +0 -24
- package/src/util/redirect.ts +0 -19
- package/src/v2/IAuthClient.interface.ts +0 -114
- package/src/v2/Logger.ts +0 -204
- package/src/v2/MsalProvider.interface.ts +0 -102
- package/src/v2/create-proxy-client.ts +0 -195
- package/src/v2/create-proxy-provider.ts +0 -177
- package/src/v2/map-account-info.ts +0 -23
- package/src/v2/map-authentication-result.ts +0 -28
- package/src/v2/types.ts +0 -674
- package/src/v4/create-proxy-provider.ts +0 -75
- package/src/v4/index.ts +0 -13
- package/src/v4/types.ts +0 -727
- package/src/version.ts +0 -2
- package/src/versioning/VersionError.ts +0 -64
- package/src/versioning/index.ts +0 -29
- package/src/versioning/resolve-version.ts +0 -154
- package/src/versioning/types.ts +0 -60
- package/tsconfig.json +0 -18
- package/vitest.config.ts +0 -11
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import type { IMsalProvider } from '../MsalProvider.interface';
|
|
2
|
-
import { MsalModuleVersion } from '../static';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Creates a v4-compatible proxy provider.
|
|
6
|
-
*
|
|
7
|
-
* Since v4 and v5 are API compatible, this creates a simple passthrough proxy
|
|
8
|
-
* that only adjusts the msalVersion property to report V4 compatibility.
|
|
9
|
-
*
|
|
10
|
-
* @param provider - The base MSAL v5 provider instance to wrap
|
|
11
|
-
* @returns A proxy provider reporting v4 compatibility
|
|
12
|
-
*
|
|
13
|
-
* @example
|
|
14
|
-
* ```typescript
|
|
15
|
-
* const baseProvider = new MsalProvider(config);
|
|
16
|
-
* const v4Proxy = createProxyProvider(baseProvider);
|
|
17
|
-
*
|
|
18
|
-
* // Use with v4-compatible API (same as v5)
|
|
19
|
-
* await v4Proxy.login({ request: { scopes: ['User.Read'] } });
|
|
20
|
-
* ```
|
|
21
|
-
*/
|
|
22
|
-
export function createProxyProvider(provider: IMsalProvider): IMsalProvider {
|
|
23
|
-
// Create passthrough proxy that only overrides msalVersion
|
|
24
|
-
return new Proxy(provider, {
|
|
25
|
-
get: (target: IMsalProvider, prop: keyof IMsalProvider) => {
|
|
26
|
-
// Passthrough every property except msalVersion, which reports V4 compatibility
|
|
27
|
-
switch (prop) {
|
|
28
|
-
case 'msalVersion': {
|
|
29
|
-
// Report as V4 for compatibility tracking
|
|
30
|
-
return MsalModuleVersion.V4;
|
|
31
|
-
}
|
|
32
|
-
case 'version': {
|
|
33
|
-
return target.version;
|
|
34
|
-
}
|
|
35
|
-
case 'client': {
|
|
36
|
-
return target.client;
|
|
37
|
-
}
|
|
38
|
-
case 'account': {
|
|
39
|
-
return target.account;
|
|
40
|
-
}
|
|
41
|
-
case 'acquireAccessToken': {
|
|
42
|
-
return target.acquireAccessToken.bind(target);
|
|
43
|
-
}
|
|
44
|
-
case 'acquireToken': {
|
|
45
|
-
return target.acquireToken.bind(target);
|
|
46
|
-
}
|
|
47
|
-
case 'login': {
|
|
48
|
-
return target.login.bind(target);
|
|
49
|
-
}
|
|
50
|
-
case 'logout': {
|
|
51
|
-
return target.logout.bind(target);
|
|
52
|
-
}
|
|
53
|
-
case 'handleRedirect': {
|
|
54
|
-
return target.handleRedirect.bind(target);
|
|
55
|
-
}
|
|
56
|
-
case 'createProxyProvider': {
|
|
57
|
-
return target.createProxyProvider.bind(target);
|
|
58
|
-
}
|
|
59
|
-
case 'initialize': {
|
|
60
|
-
return () => {
|
|
61
|
-
// noop - initialize is handled by the provider, not the proxy
|
|
62
|
-
};
|
|
63
|
-
}
|
|
64
|
-
default: {
|
|
65
|
-
// Prevent 'then' from being called - this is not an async operation
|
|
66
|
-
if (prop === 'then') return undefined;
|
|
67
|
-
|
|
68
|
-
// Exhaustive check: TypeScript-only guard to ensure all IMsalProvider keys are handled
|
|
69
|
-
const exhausted: never = prop;
|
|
70
|
-
return (target as IMsalProvider)[exhausted];
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
},
|
|
74
|
-
}) as IMsalProvider;
|
|
75
|
-
}
|
package/src/v4/index.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* MSAL v4 compatibility layer for v5 implementation.
|
|
3
|
-
*
|
|
4
|
-
* @remarks
|
|
5
|
-
* This module provides v4-compatible proxies when running on v5.
|
|
6
|
-
* Since v4 and v5 are API compatible, this is primarily a passthrough
|
|
7
|
-
* with version metadata adjustments.
|
|
8
|
-
*
|
|
9
|
-
* @module v4
|
|
10
|
-
*/
|
|
11
|
-
|
|
12
|
-
export { createProxyProvider } from './create-proxy-provider';
|
|
13
|
-
export type * from './types';
|