@tsed/jwks 7.83.3 → 8.0.0-alpha.10
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/lib/esm/getJwks.js +1 -1
- package/lib/esm/getJwks.js.map +1 -1
- package/lib/esm/index.js +1 -1
- package/lib/esm/index.js.map +1 -1
- package/lib/types/index.d.ts +1 -1
- package/package.json +14 -12
- package/vitest.config.mts +5 -5
- package/lib/cjs/getJwks.js +0 -38
- package/lib/cjs/getJwks.js.map +0 -1
- package/lib/cjs/index.js +0 -7
- package/lib/cjs/index.js.map +0 -1
- package/lib/cjs/package.json +0 -3
- package/lib/esm/package.json +0 -3
- package/lib/types-esm/getJwks.d.ts +0 -10
- package/lib/types-esm/index.d.ts +0 -2
package/lib/esm/getJwks.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { dirname } from "node:path";
|
|
1
2
|
import fs from "fs-extra";
|
|
2
3
|
// @ts-ignore
|
|
3
4
|
import { JWK, JWKS } from "jose2";
|
|
4
|
-
import { dirname } from "node:path";
|
|
5
5
|
export function generateJwks(options = {}) {
|
|
6
6
|
const { certificates } = options;
|
|
7
7
|
const keystore = new JWKS.KeyStore();
|
package/lib/esm/getJwks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getJwks.js","sourceRoot":"","sources":["../../src/getJwks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,aAAa;AACb,OAAO,EAAC,GAAG,EAAE,IAAI,EAAgB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"getJwks.js","sourceRoot":"","sources":["../../src/getJwks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,aAAa;AACb,OAAO,EAAC,GAAG,EAAE,IAAI,EAAgB,MAAM,OAAO,CAAC;AAW/C,MAAM,UAAU,YAAY,CAAC,UAAgC,EAAE;IAC7D,MAAM,EAAC,YAAY,EAAC,GAAG,OAAO,CAAC;IAC/B,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;IAErC,IAAI,YAAY,EAAE,CAAC;QACjB,YAAY,CAAC,OAAO,CAAC,CAAC,EAAC,IAAI,EAAE,GAAG,OAAO,EAAC,EAAE,EAAE;YAC1C,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,EAAC,QAAQ,EAAE,OAAO,EAAC,CAAC,CAAC;YAC3D,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAElD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,EAAC,GAAG,EAAE,KAAK,EAAC,CAAC,CAAC;QACjD,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,EAAE,EAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAC,CAAC,CAAC;QACjE,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,EAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAC,CAAC,CAAC;IACtE,CAAC;IAED,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,OAAoB;IAC1C,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAExC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QACnC,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,EAAC,QAAQ,EAAE,OAAO,EAAC,CAAC,CAAC,CAAC;AACxE,CAAC"}
|
package/lib/esm/index.js
CHANGED
package/lib/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,aAAa;AACb,cAAc,OAAO,CAAC"}
|
package/lib/types/index.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tsed/jwks",
|
|
3
3
|
"description": "Utils to generate jwks pair keys",
|
|
4
|
-
"type": "
|
|
5
|
-
"version": "
|
|
4
|
+
"type": "module",
|
|
5
|
+
"version": "8.0.0-alpha.10",
|
|
6
6
|
"source": "./src/index.ts",
|
|
7
|
-
"main": "./lib/
|
|
7
|
+
"main": "./lib/esm/index.js",
|
|
8
8
|
"module": "./lib/esm/index.js",
|
|
9
9
|
"typings": "./lib/types/index.d.ts",
|
|
10
10
|
"exports": {
|
|
11
11
|
".": {
|
|
12
12
|
"types": "./lib/types/index.d.ts",
|
|
13
13
|
"import": "./lib/esm/index.js",
|
|
14
|
-
"
|
|
15
|
-
"default": "./lib/cjs/index.js"
|
|
14
|
+
"default": "./lib/esm/index.js"
|
|
16
15
|
}
|
|
17
16
|
},
|
|
18
17
|
"scripts": {
|
|
@@ -25,14 +24,14 @@
|
|
|
25
24
|
"dependencies": {
|
|
26
25
|
"fs-extra": "^11.2.0",
|
|
27
26
|
"jose2": "npm:jose@^2.0.4",
|
|
28
|
-
"tslib": "2.
|
|
27
|
+
"tslib": "2.7.0"
|
|
29
28
|
},
|
|
30
29
|
"devDependencies": {
|
|
31
|
-
"@tsed/barrels": "
|
|
32
|
-
"@tsed/typescript": "
|
|
33
|
-
"eslint": "
|
|
34
|
-
"typescript": "4.
|
|
35
|
-
"vitest": "2.
|
|
30
|
+
"@tsed/barrels": "8.0.0-alpha.10",
|
|
31
|
+
"@tsed/typescript": "8.0.0-alpha.10",
|
|
32
|
+
"eslint": "9.12.0",
|
|
33
|
+
"typescript": "5.4.5",
|
|
34
|
+
"vitest": "2.1.2"
|
|
36
35
|
},
|
|
37
36
|
"peerDependencies": {},
|
|
38
37
|
"repository": "https://github.com/tsedio/tsed",
|
|
@@ -41,5 +40,8 @@
|
|
|
41
40
|
},
|
|
42
41
|
"homepage": "https://github.com/tsedio/tsed/tree/production/packages/security/jwks",
|
|
43
42
|
"author": "Romain Lenzotti",
|
|
44
|
-
"license": "MIT"
|
|
43
|
+
"license": "MIT",
|
|
44
|
+
"publishConfig": {
|
|
45
|
+
"tag": "alpha"
|
|
46
|
+
}
|
|
45
47
|
}
|
package/vitest.config.mts
CHANGED
|
@@ -10,12 +10,12 @@ export default defineConfig(
|
|
|
10
10
|
coverage: {
|
|
11
11
|
...presets.test.coverage,
|
|
12
12
|
thresholds: {
|
|
13
|
-
statements:
|
|
14
|
-
branches:
|
|
15
|
-
functions:
|
|
16
|
-
lines:
|
|
13
|
+
statements: 100,
|
|
14
|
+
branches: 100,
|
|
15
|
+
functions: 100,
|
|
16
|
+
lines: 100
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
|
-
);
|
|
21
|
+
);
|
package/lib/cjs/getJwks.js
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getJwks = exports.generateJwks = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
|
|
6
|
-
// @ts-ignore
|
|
7
|
-
const jose2_1 = require("jose2");
|
|
8
|
-
const node_path_1 = require("node:path");
|
|
9
|
-
function generateJwks(options = {}) {
|
|
10
|
-
const { certificates } = options;
|
|
11
|
-
const keystore = new jose2_1.JWKS.KeyStore();
|
|
12
|
-
if (certificates) {
|
|
13
|
-
certificates.forEach(({ path, ...options }) => {
|
|
14
|
-
const content = fs_extra_1.default.readFileSync(path, { encoding: "utf-8" });
|
|
15
|
-
const isPrivate = content.includes("PRIVATE KEY");
|
|
16
|
-
if (!isPrivate) {
|
|
17
|
-
keystore.add(jose2_1.JWK.asKey(content, options));
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
keystore.generateSync("RSA", 2048, { use: "sig" });
|
|
23
|
-
keystore.generateSync("EC", "P-256", { use: "sig", alg: "ES256" });
|
|
24
|
-
keystore.generateSync("OKP", "Ed25519", { use: "sig", alg: "EdDSA" });
|
|
25
|
-
}
|
|
26
|
-
return keystore.toJWKS(true);
|
|
27
|
-
}
|
|
28
|
-
exports.generateJwks = generateJwks;
|
|
29
|
-
function getJwks(options) {
|
|
30
|
-
fs_extra_1.default.ensureDirSync((0, node_path_1.dirname)(options.path));
|
|
31
|
-
if (!fs_extra_1.default.existsSync(options.path)) {
|
|
32
|
-
const keys = generateJwks(options);
|
|
33
|
-
fs_extra_1.default.writeFileSync(options.path, JSON.stringify(keys, null, 2));
|
|
34
|
-
}
|
|
35
|
-
return JSON.parse(fs_extra_1.default.readFileSync(options.path, { encoding: "utf-8" }));
|
|
36
|
-
}
|
|
37
|
-
exports.getJwks = getJwks;
|
|
38
|
-
//# sourceMappingURL=getJwks.js.map
|
package/lib/cjs/getJwks.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getJwks.js","sourceRoot":"","sources":["../../src/getJwks.ts"],"names":[],"mappings":";;;;AAAA,gEAA0B;AAC1B,aAAa;AACb,iCAA+C;AAC/C,yCAAkC;AAWlC,SAAgB,YAAY,CAAC,UAAgC,EAAE;IAC7D,MAAM,EAAC,YAAY,EAAC,GAAG,OAAO,CAAC;IAC/B,MAAM,QAAQ,GAAG,IAAI,YAAI,CAAC,QAAQ,EAAE,CAAC;IAErC,IAAI,YAAY,EAAE;QAChB,YAAY,CAAC,OAAO,CAAC,CAAC,EAAC,IAAI,EAAE,GAAG,OAAO,EAAC,EAAE,EAAE;YAC1C,MAAM,OAAO,GAAG,kBAAE,CAAC,YAAY,CAAC,IAAI,EAAE,EAAC,QAAQ,EAAE,OAAO,EAAC,CAAC,CAAC;YAC3D,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAElD,IAAI,CAAC,SAAS,EAAE;gBACd,QAAQ,CAAC,GAAG,CAAC,WAAG,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;aAC3C;QACH,CAAC,CAAC,CAAC;KACJ;SAAM;QACL,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,EAAC,GAAG,EAAE,KAAK,EAAC,CAAC,CAAC;QACjD,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,EAAE,EAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAC,CAAC,CAAC;QACjE,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,EAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAC,CAAC,CAAC;KACrE;IAED,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AApBD,oCAoBC;AAED,SAAgB,OAAO,CAAC,OAAoB;IAC1C,kBAAE,CAAC,aAAa,CAAC,IAAA,mBAAO,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAExC,IAAI,CAAC,kBAAE,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QAChC,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QACnC,kBAAE,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;KAC/D;IAED,OAAO,IAAI,CAAC,KAAK,CAAC,kBAAE,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,EAAC,QAAQ,EAAE,OAAO,EAAC,CAAC,CAAC,CAAC;AACxE,CAAC;AATD,0BASC"}
|
package/lib/cjs/index.js
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
|
-
// @ts-ignore
|
|
5
|
-
tslib_1.__exportStar(require("jose2"), exports);
|
|
6
|
-
tslib_1.__exportStar(require("./getJwks.js"), exports);
|
|
7
|
-
//# sourceMappingURL=index.js.map
|
package/lib/cjs/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,aAAa;AACb,gDAAsB;AACtB,uDAA6B"}
|
package/lib/cjs/package.json
DELETED
package/lib/esm/package.json
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { KeyParameters } from "jose2";
|
|
2
|
-
export interface JwksKeyParameters extends KeyParameters {
|
|
3
|
-
path: string;
|
|
4
|
-
}
|
|
5
|
-
export interface JwksOptions {
|
|
6
|
-
path: string;
|
|
7
|
-
certificates?: JwksKeyParameters[];
|
|
8
|
-
}
|
|
9
|
-
export declare function generateJwks(options?: Partial<JwksOptions>): any;
|
|
10
|
-
export declare function getJwks(options: JwksOptions): any;
|
package/lib/types-esm/index.d.ts
DELETED