@atproto/jwk 0.1.0
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/CHANGELOG.md +7 -0
- package/LICENSE.txt +7 -0
- package/dist/alg.d.ts +3 -0
- package/dist/alg.d.ts.map +1 -0
- package/dist/alg.js +90 -0
- package/dist/alg.js.map +1 -0
- package/dist/errors.d.ts +24 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +62 -0
- package/dist/errors.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +27 -0
- package/dist/index.js.map +1 -0
- package/dist/jwk.d.ts +2424 -0
- package/dist/jwk.d.ts.map +1 -0
- package/dist/jwk.js +112 -0
- package/dist/jwk.js.map +1 -0
- package/dist/jwks.d.ts +1770 -0
- package/dist/jwks.d.ts.map +1 -0
- package/dist/jwks.js +12 -0
- package/dist/jwks.js.map +1 -0
- package/dist/jwt-decode.d.ts +6 -0
- package/dist/jwt-decode.d.ts.map +1 -0
- package/dist/jwt-decode.js +20 -0
- package/dist/jwt-decode.js.map +1 -0
- package/dist/jwt-verify.d.ts +20 -0
- package/dist/jwt-verify.d.ts.map +1 -0
- package/dist/jwt-verify.js +3 -0
- package/dist/jwt-verify.js.map +1 -0
- package/dist/jwt.d.ts +1785 -0
- package/dist/jwt.d.ts.map +1 -0
- package/dist/jwt.js +150 -0
- package/dist/jwt.js.map +1 -0
- package/dist/key.d.ts +38 -0
- package/dist/key.d.ts.map +1 -0
- package/dist/key.js +131 -0
- package/dist/key.js.map +1 -0
- package/dist/keyset.d.ts +41 -0
- package/dist/keyset.d.ts.map +1 -0
- package/dist/keyset.js +234 -0
- package/dist/keyset.js.map +1 -0
- package/dist/util.d.ts +48 -0
- package/dist/util.d.ts.map +1 -0
- package/dist/util.js +143 -0
- package/dist/util.js.map +1 -0
- package/package.json +38 -0
- package/src/alg.ts +98 -0
- package/src/errors.ts +56 -0
- package/src/index.ts +10 -0
- package/src/jwk.ts +141 -0
- package/src/jwks.ts +15 -0
- package/src/jwt-decode.ts +27 -0
- package/src/jwt-verify.ts +22 -0
- package/src/jwt.ts +173 -0
- package/src/key.ts +93 -0
- package/src/keyset.ts +240 -0
- package/src/util.ts +181 -0
- package/tsconfig.build.json +8 -0
- package/tsconfig.json +4 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jwks.d.ts","sourceRoot":"","sources":["../src/jwks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAErB,CAAA;AAEF,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAA;AAE7C,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAExB,CAAA;AAEF,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAA"}
|
package/dist/jwks.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.jwksPubSchema = exports.jwksSchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const jwk_js_1 = require("./jwk.js");
|
|
6
|
+
exports.jwksSchema = zod_1.z.object({
|
|
7
|
+
keys: zod_1.z.array(jwk_js_1.jwkSchema),
|
|
8
|
+
});
|
|
9
|
+
exports.jwksPubSchema = zod_1.z.object({
|
|
10
|
+
keys: zod_1.z.array(jwk_js_1.jwkPubSchema),
|
|
11
|
+
});
|
|
12
|
+
//# sourceMappingURL=jwks.js.map
|
package/dist/jwks.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jwks.js","sourceRoot":"","sources":["../src/jwks.ts"],"names":[],"mappings":";;;AAAA,6BAAuB;AAEvB,qCAAkD;AAErC,QAAA,UAAU,GAAG,OAAC,CAAC,MAAM,CAAC;IACjC,IAAI,EAAE,OAAC,CAAC,KAAK,CAAC,kBAAS,CAAC;CACzB,CAAC,CAAA;AAIW,QAAA,aAAa,GAAG,OAAC,CAAC,MAAM,CAAC;IACpC,IAAI,EAAE,OAAC,CAAC,KAAK,CAAC,qBAAY,CAAC;CAC5B,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jwt-decode.d.ts","sourceRoot":"","sources":["../src/jwt-decode.ts"],"names":[],"mappings":"AACA,OAAO,EACL,SAAS,EACT,UAAU,EAGX,MAAM,UAAU,CAAA;AAGjB,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG;IAC5C,MAAM,EAAE,SAAS,CAAA;IACjB,OAAO,EAAE,UAAU,CAAA;CACpB,CAcA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.unsafeDecodeJwt = void 0;
|
|
4
|
+
const errors_js_1 = require("./errors.js");
|
|
5
|
+
const jwt_js_1 = require("./jwt.js");
|
|
6
|
+
const util_js_1 = require("./util.js");
|
|
7
|
+
function unsafeDecodeJwt(jwt) {
|
|
8
|
+
const { 0: headerEnc, 1: payloadEnc, length } = jwt.split('.');
|
|
9
|
+
if (length > 3 || length < 2) {
|
|
10
|
+
throw new errors_js_1.JwtVerifyError(undefined, errors_js_1.ERR_JWT_INVALID);
|
|
11
|
+
}
|
|
12
|
+
const header = jwt_js_1.jwtHeaderSchema.parse((0, util_js_1.parseB64uJson)(headerEnc));
|
|
13
|
+
if (length === 2 && header?.alg !== 'none') {
|
|
14
|
+
throw new errors_js_1.JwtVerifyError(undefined, errors_js_1.ERR_JWT_INVALID);
|
|
15
|
+
}
|
|
16
|
+
const payload = jwt_js_1.jwtPayloadSchema.parse((0, util_js_1.parseB64uJson)(payloadEnc));
|
|
17
|
+
return { header, payload };
|
|
18
|
+
}
|
|
19
|
+
exports.unsafeDecodeJwt = unsafeDecodeJwt;
|
|
20
|
+
//# sourceMappingURL=jwt-decode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jwt-decode.js","sourceRoot":"","sources":["../src/jwt-decode.ts"],"names":[],"mappings":";;;AAAA,2CAA6D;AAC7D,qCAKiB;AACjB,uCAAyC;AAEzC,SAAgB,eAAe,CAAC,GAAW;IAIzC,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC9D,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,0BAAc,CAAC,SAAS,EAAE,2BAAe,CAAC,CAAA;IACtD,CAAC;IAED,MAAM,MAAM,GAAG,wBAAe,CAAC,KAAK,CAAC,IAAA,uBAAa,EAAC,SAAU,CAAC,CAAC,CAAA;IAC/D,IAAI,MAAM,KAAK,CAAC,IAAI,MAAM,EAAE,GAAG,KAAK,MAAM,EAAE,CAAC;QAC3C,MAAM,IAAI,0BAAc,CAAC,SAAS,EAAE,2BAAe,CAAC,CAAA;IACtD,CAAC;IAED,MAAM,OAAO,GAAG,yBAAgB,CAAC,KAAK,CAAC,IAAA,uBAAa,EAAC,UAAW,CAAC,CAAC,CAAA;IAElE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;AAC5B,CAAC;AAjBD,0CAiBC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { JwtHeader, JwtPayload } from './jwt.js';
|
|
2
|
+
import { RequiredKey } from './util.js';
|
|
3
|
+
export type VerifyOptions<C extends string = string> = {
|
|
4
|
+
audience?: string | readonly string[];
|
|
5
|
+
/** in seconds */
|
|
6
|
+
clockTolerance?: number;
|
|
7
|
+
issuer?: string | readonly string[];
|
|
8
|
+
/** in seconds */
|
|
9
|
+
maxTokenAge?: number;
|
|
10
|
+
subject?: string;
|
|
11
|
+
typ?: string;
|
|
12
|
+
currentDate?: Date;
|
|
13
|
+
requiredClaims?: readonly C[];
|
|
14
|
+
};
|
|
15
|
+
export type VerifyPayload = Record<string, unknown>;
|
|
16
|
+
export type VerifyResult<P extends VerifyPayload, C extends string> = {
|
|
17
|
+
payload: RequiredKey<P & JwtPayload, C>;
|
|
18
|
+
protectedHeader: JwtHeader;
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=jwt-verify.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jwt-verify.d.ts","sourceRoot":"","sources":["../src/jwt-verify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAEvC,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI;IACrD,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAA;IACrC,iBAAiB;IACjB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAA;IACnC,iBAAiB;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,IAAI,CAAA;IAClB,cAAc,CAAC,EAAE,SAAS,CAAC,EAAE,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAEnD,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,aAAa,EAAE,CAAC,SAAS,MAAM,IAAI;IACpE,OAAO,EAAE,WAAW,CAAC,CAAC,GAAG,UAAU,EAAE,CAAC,CAAC,CAAA;IACvC,eAAe,EAAE,SAAS,CAAA;CAC3B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jwt-verify.js","sourceRoot":"","sources":["../src/jwt-verify.ts"],"names":[],"mappings":""}
|