@edirect/oidc-client 11.0.39 → 11.0.41
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/README.md +19 -15
- package/dist/README.md +19 -15
- package/dist/package.json +9 -9
- package/dist/src/connect.d.ts +1 -1
- package/dist/src/connect.d.ts.map +1 -1
- package/dist/src/connect.js +1 -1
- package/dist/src/grant-type/client_credentials.d.ts.map +1 -1
- package/dist/src/grant-type/client_credentials.js +2 -2
- package/package.json +14 -10
package/README.md
CHANGED
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
# @edirect/oidc-client
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
OpenID Connect client for Edirect applications. Provides a simple interface for authenticating with OIDC providers, supporting multiple grant types and token management.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- Supports password, client_credentials, and other grant types
|
|
8
|
+
- Handles access and refresh tokens
|
|
9
|
+
- Integrates with Edirect config modules
|
|
4
10
|
|
|
5
11
|
## Installation
|
|
6
12
|
|
|
7
|
-
```
|
|
8
|
-
|
|
13
|
+
```bash
|
|
14
|
+
npm install @edirect/oidc-client
|
|
9
15
|
```
|
|
10
16
|
|
|
11
17
|
## Usage
|
|
@@ -14,22 +20,20 @@ $ npm i --save @edirect/oidc-client
|
|
|
14
20
|
(async () => {
|
|
15
21
|
const OidcClient = require('@edirect/oidc-client');
|
|
16
22
|
const oidcClient = await OidcClient({
|
|
17
|
-
grantType: '
|
|
18
|
-
baseUrl:
|
|
19
|
-
oidcPath:
|
|
20
|
-
clientId:
|
|
21
|
-
clientSecret:
|
|
22
|
-
redirectUri:
|
|
23
|
+
grantType: 'password' | 'client_credentials' | 'authorization_code',
|
|
24
|
+
baseUrl: process.env.OIDC_PROVIDER_URL,
|
|
25
|
+
oidcPath: process.env.OIDC_PROVIDER_PATH,
|
|
26
|
+
clientId: process.env.OIDC_CLIENT_ID,
|
|
27
|
+
clientSecret: process.env.OIDC_CLIENT_SECRET,
|
|
28
|
+
redirectUri: process.env.OIDC_CALLBACK_URL,
|
|
23
29
|
});
|
|
24
30
|
|
|
25
31
|
const loginData = {
|
|
26
|
-
username:
|
|
27
|
-
password:
|
|
28
|
-
};
|
|
32
|
+
username: process.env.OIDC_USERNAME,
|
|
33
|
+
password: process.env.OIDC_PASSWORD,
|
|
34
|
+
};
|
|
29
35
|
|
|
30
|
-
const accessTokenSet = await oidcClient.getAccessToken(
|
|
31
|
-
loginData || undefined
|
|
32
|
-
);
|
|
36
|
+
const accessTokenSet = await oidcClient.getAccessToken(loginData);
|
|
33
37
|
console.log('\n', { accessTokenSet }, '\n');
|
|
34
38
|
|
|
35
39
|
// not applicable to client_credentials grant type
|
package/dist/README.md
CHANGED
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
# @edirect/oidc-client
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
OpenID Connect client for Edirect applications. Provides a simple interface for authenticating with OIDC providers, supporting multiple grant types and token management.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- Supports password, client_credentials, and other grant types
|
|
8
|
+
- Handles access and refresh tokens
|
|
9
|
+
- Integrates with Edirect config modules
|
|
4
10
|
|
|
5
11
|
## Installation
|
|
6
12
|
|
|
7
|
-
```
|
|
8
|
-
|
|
13
|
+
```bash
|
|
14
|
+
npm install @edirect/oidc-client
|
|
9
15
|
```
|
|
10
16
|
|
|
11
17
|
## Usage
|
|
@@ -14,22 +20,20 @@ $ npm i --save @edirect/oidc-client
|
|
|
14
20
|
(async () => {
|
|
15
21
|
const OidcClient = require('@edirect/oidc-client');
|
|
16
22
|
const oidcClient = await OidcClient({
|
|
17
|
-
grantType: '
|
|
18
|
-
baseUrl:
|
|
19
|
-
oidcPath:
|
|
20
|
-
clientId:
|
|
21
|
-
clientSecret:
|
|
22
|
-
redirectUri:
|
|
23
|
+
grantType: 'password' | 'client_credentials' | 'authorization_code',
|
|
24
|
+
baseUrl: process.env.OIDC_PROVIDER_URL,
|
|
25
|
+
oidcPath: process.env.OIDC_PROVIDER_PATH,
|
|
26
|
+
clientId: process.env.OIDC_CLIENT_ID,
|
|
27
|
+
clientSecret: process.env.OIDC_CLIENT_SECRET,
|
|
28
|
+
redirectUri: process.env.OIDC_CALLBACK_URL,
|
|
23
29
|
});
|
|
24
30
|
|
|
25
31
|
const loginData = {
|
|
26
|
-
username:
|
|
27
|
-
password:
|
|
28
|
-
};
|
|
32
|
+
username: process.env.OIDC_USERNAME,
|
|
33
|
+
password: process.env.OIDC_PASSWORD,
|
|
34
|
+
};
|
|
29
35
|
|
|
30
|
-
const accessTokenSet = await oidcClient.getAccessToken(
|
|
31
|
-
loginData || undefined
|
|
32
|
-
);
|
|
36
|
+
const accessTokenSet = await oidcClient.getAccessToken(loginData);
|
|
33
37
|
console.log('\n', { accessTokenSet }, '\n');
|
|
34
38
|
|
|
35
39
|
// not applicable to client_credentials grant type
|
package/dist/package.json
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@edirect/oidc-client",
|
|
3
|
-
"version": "11.0.
|
|
4
|
-
"main": "./dist/
|
|
5
|
-
"
|
|
3
|
+
"version": "11.0.40",
|
|
4
|
+
"main": "./dist/cjs/index.js",
|
|
5
|
+
"module": "./dist/esm/index.js",
|
|
6
|
+
"types": "./dist/types/index.d.ts",
|
|
6
7
|
"exports": {
|
|
7
|
-
"./package.json": "./package.json",
|
|
8
8
|
".": {
|
|
9
|
-
"
|
|
10
|
-
"
|
|
11
|
-
"types": "./dist/
|
|
12
|
-
|
|
13
|
-
|
|
9
|
+
"require": "./dist/cjs/index.js",
|
|
10
|
+
"import": "./dist/esm/index.js",
|
|
11
|
+
"types": "./dist/types/index.d.ts"
|
|
12
|
+
},
|
|
13
|
+
"./package.json": "./package.json"
|
|
14
14
|
},
|
|
15
15
|
"files": [
|
|
16
16
|
"dist"
|
package/dist/src/connect.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../src/connect.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../src/connect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAG9D,qBAAa,WAAW;IACtB,aAAa,EAAE,GAAG,CAAC;IACnB,OAAO,EAAG,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,gBAAgB,CAAC;;IAMzB,OAAO,CAAC,MAAM,EAAE,OAAO;CAsB9B"}
|
package/dist/src/connect.js
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.OidcConnect = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const client = tslib_1.__importStar(require("openid-client"));
|
|
6
5
|
const error_handler_1 = tslib_1.__importDefault(require("./utils/error-handler"));
|
|
7
6
|
class OidcConnect {
|
|
8
7
|
configuration;
|
|
@@ -16,6 +15,7 @@ class OidcConnect {
|
|
|
16
15
|
this.baseUrl = params.baseUrl;
|
|
17
16
|
this.redirectUri = params.redirectUri;
|
|
18
17
|
const issuer = new URL(`${params.baseUrl}/${params.oidcPath}`);
|
|
18
|
+
const client = await import('openid-client');
|
|
19
19
|
this.configuration = await client.discovery(issuer, params.clientId, params.clientSecret);
|
|
20
20
|
// Set additional metadata if needed
|
|
21
21
|
if (this.configuration) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client_credentials.d.ts","sourceRoot":"","sources":["../../../src/grant-type/client_credentials.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"client_credentials.d.ts","sourceRoot":"","sources":["../../../src/grant-type/client_credentials.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAKnD,qBAAa,UAAW,SAAQ,WAAW;IACzC,YAAY,EAAE,yBAAyB,CAAC;IACxC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK,QAAQ,GAAG,IAAI,CAAC;IAChD,QAAQ,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,QAAQ,CAAC;;IAW3C,OAAO,CAAC,MAAM,EAAE,OAAO;IAQhC,cAAc,CAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAwBrB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;CAKvC;AAED,eAAO,MAAM,IAAI,YAAmB,CAAC"}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.oidc = exports.OidcClient = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const client = tslib_1.__importStar(require("openid-client"));
|
|
6
5
|
const connect_1 = require("../connect");
|
|
7
6
|
const token_1 = require("../token");
|
|
8
7
|
const parse_token_1 = tslib_1.__importDefault(require("../utils/parse-token"));
|
|
@@ -37,7 +36,8 @@ class OidcClient extends connect_1.OidcConnect {
|
|
|
37
36
|
...data,
|
|
38
37
|
};
|
|
39
38
|
try {
|
|
40
|
-
const
|
|
39
|
+
const { clientCredentialsGrant } = await import('openid-client');
|
|
40
|
+
const tokenSetRaw = await clientCredentialsGrant(this.configuration, params);
|
|
41
41
|
const tokenSet = (0, parse_token_1.default)(tokenSetRaw);
|
|
42
42
|
this.token = this.setToken(tokenSet);
|
|
43
43
|
return this.token;
|
package/package.json
CHANGED
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@edirect/oidc-client",
|
|
3
|
-
"version": "11.0.
|
|
3
|
+
"version": "11.0.41",
|
|
4
4
|
"packageScope": "@edirect",
|
|
5
|
-
"main": "./dist/
|
|
6
|
-
"
|
|
5
|
+
"main": "./dist/cjs/index.js",
|
|
6
|
+
"module": "./dist/esm/index.js",
|
|
7
|
+
"types": "./dist/types/index.d.ts",
|
|
7
8
|
"exports": {
|
|
8
|
-
"./package.json": "./package.json",
|
|
9
9
|
".": {
|
|
10
|
-
"
|
|
11
|
-
"import": "./dist/
|
|
12
|
-
"
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
10
|
+
"require": "./dist/cjs/index.js",
|
|
11
|
+
"import": "./dist/esm/index.js",
|
|
12
|
+
"types": "./dist/types/index.d.ts"
|
|
13
|
+
},
|
|
14
|
+
"./package.json": "./package.json"
|
|
16
15
|
},
|
|
17
16
|
"files": [
|
|
18
17
|
"dist"
|
|
@@ -37,5 +36,10 @@
|
|
|
37
36
|
}
|
|
38
37
|
}
|
|
39
38
|
}
|
|
39
|
+
},
|
|
40
|
+
"scripts": {
|
|
41
|
+
"build:cjs": "tsc -p tsconfig.cjs.json",
|
|
42
|
+
"build:esm": "tsc -p tsconfig.esm.json",
|
|
43
|
+
"build": "pnpm run build:cjs && pnpm run build:esm"
|
|
40
44
|
}
|
|
41
45
|
}
|