@astronautlabs/jwt 1.1.1 → 1.1.3

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 (109) hide show
  1. package/dist/browser/base64url.d.ts +4 -4
  2. package/dist/browser/base64url.js +14 -17
  3. package/dist/browser/base64url.js.map +1 -1
  4. package/dist/browser/{webcrypto-jwt.test.d.ts → browser-engine.test.d.ts} +1 -1
  5. package/dist/browser/{webcrypto-jwt.test.js → browser-engine.test.js} +6 -6
  6. package/dist/browser/browser-engine.test.js.map +1 -0
  7. package/dist/browser/index.d.ts +5 -5
  8. package/dist/browser/index.js +24 -20
  9. package/dist/browser/index.js.map +1 -1
  10. package/dist/browser/utils.d.ts +6 -6
  11. package/dist/browser/utils.js +20 -23
  12. package/dist/browser/utils.js.map +1 -1
  13. package/dist/browser/webcrypto-jwt.d.ts +22 -22
  14. package/dist/browser/webcrypto-jwt.js +312 -384
  15. package/dist/browser/webcrypto-jwt.js.map +1 -1
  16. package/dist/common/expiry.d.ts +1 -1
  17. package/dist/common/expiry.js +23 -24
  18. package/dist/common/expiry.js.map +1 -1
  19. package/dist/common/index.d.ts +2 -2
  20. package/dist/common/index.js +18 -14
  21. package/dist/common/index.js.map +1 -1
  22. package/dist/common/interface.d.ts +39 -39
  23. package/dist/common/interface.js +2 -2
  24. package/dist/engine.test.d.ts +10 -10
  25. package/dist/engine.test.js +198 -312
  26. package/dist/engine.test.js.map +1 -1
  27. package/dist/fixtures/es256.fixture.d.ts +6 -6
  28. package/dist/fixtures/es256.fixture.js +23 -9
  29. package/dist/fixtures/es256.fixture.js.map +1 -1
  30. package/dist/fixtures/hs256.fixture.d.ts +7 -7
  31. package/dist/fixtures/hs256.fixture.js +10 -10
  32. package/dist/fixtures/hs384.fixture.d.ts +6 -6
  33. package/dist/fixtures/hs384.fixture.js +9 -9
  34. package/dist/fixtures/hs512.fixture.d.ts +6 -6
  35. package/dist/fixtures/hs512.fixture.js +9 -9
  36. package/dist/fixtures/rs256.fixture.d.ts +6 -6
  37. package/dist/fixtures/rs256.fixture.js +79 -9
  38. package/dist/fixtures/rs256.fixture.js.map +1 -1
  39. package/dist/fixtures/rs512.fixture.d.ts +6 -6
  40. package/dist/fixtures/rs512.fixture.js +79 -9
  41. package/dist/fixtures/rs512.fixture.js.map +1 -1
  42. package/dist/index.d.ts +3 -3
  43. package/dist/index.js +20 -17
  44. package/dist/index.js.map +1 -1
  45. package/dist/node/index.d.ts +16 -16
  46. package/dist/node/index.js +112 -143
  47. package/dist/node/index.js.map +1 -1
  48. package/dist/{test.d.ts → node/node-engine.test.d.ts} +1 -1
  49. package/dist/node/{engine.test.js → node-engine.test.js} +6 -6
  50. package/dist/node/node-engine.test.js.map +1 -0
  51. package/dist/polyfills.test.d.ts +0 -0
  52. package/dist/polyfills.test.js +8 -0
  53. package/dist/polyfills.test.js.map +1 -0
  54. package/dist/tsconfig.tsbuildinfo +1 -0
  55. package/dist.esm/browser/base64url.js +11 -0
  56. package/dist.esm/browser/base64url.js.map +1 -0
  57. package/dist.esm/browser/browser-engine.test.js +4 -0
  58. package/dist.esm/browser/browser-engine.test.js.map +1 -0
  59. package/dist.esm/browser/index.js +7 -0
  60. package/dist.esm/browser/index.js.map +1 -0
  61. package/dist.esm/browser/utils.js +17 -0
  62. package/dist.esm/browser/utils.js.map +1 -0
  63. package/dist.esm/browser/webcrypto-jwt.js +309 -0
  64. package/dist.esm/browser/webcrypto-jwt.js.map +1 -0
  65. package/dist.esm/common/expiry.js +21 -0
  66. package/dist.esm/common/expiry.js.map +1 -0
  67. package/dist.esm/common/index.js +3 -0
  68. package/dist.esm/common/index.js.map +1 -0
  69. package/dist.esm/common/interface.js +2 -0
  70. package/dist.esm/common/interface.js.map +1 -0
  71. package/dist.esm/engine.test.js +163 -0
  72. package/dist.esm/engine.test.js.map +1 -0
  73. package/dist.esm/fixtures/es256.fixture.js +21 -0
  74. package/dist.esm/fixtures/es256.fixture.js.map +1 -0
  75. package/dist.esm/fixtures/hs256.fixture.js +8 -0
  76. package/dist.esm/fixtures/hs256.fixture.js.map +1 -0
  77. package/dist.esm/fixtures/hs384.fixture.js +7 -0
  78. package/dist.esm/fixtures/hs384.fixture.js.map +1 -0
  79. package/dist.esm/fixtures/hs512.fixture.js +7 -0
  80. package/dist.esm/fixtures/hs512.fixture.js.map +1 -0
  81. package/dist.esm/fixtures/rs256.fixture.js +77 -0
  82. package/dist.esm/fixtures/rs256.fixture.js.map +1 -0
  83. package/dist.esm/fixtures/rs512.fixture.js +77 -0
  84. package/dist.esm/fixtures/rs512.fixture.js.map +1 -0
  85. package/dist.esm/index.js +4 -0
  86. package/dist.esm/index.js.map +1 -0
  87. package/dist.esm/node/index.js +91 -0
  88. package/dist.esm/node/index.js.map +1 -0
  89. package/dist.esm/node/node-engine.test.js +4 -0
  90. package/dist.esm/node/node-engine.test.js.map +1 -0
  91. package/dist.esm/polyfills.test.js +8 -0
  92. package/dist.esm/polyfills.test.js.map +1 -0
  93. package/dist.esm/tsconfig.esm.tsbuildinfo +1 -0
  94. package/package.json +55 -46
  95. package/src/browser/webcrypto-jwt.ts +3 -3
  96. package/src/engine.test.ts +137 -140
  97. package/src/node/index.ts +1 -1
  98. package/src/polyfills.test.ts +7 -0
  99. package/tsconfig.esm.json +7 -0
  100. package/tsconfig.json +3 -4
  101. package/dist/browser/webcrypto-jwt.test.js.map +0 -1
  102. package/dist/node/engine.test.d.ts +0 -1
  103. package/dist/node/engine.test.js.map +0 -1
  104. package/dist/test.js +0 -9
  105. package/dist/test.js.map +0 -1
  106. package/karma.conf.ts +0 -48
  107. package/src/test.ts +0 -7
  108. /package/src/browser/{webcrypto-jwt.test.ts → browser-engine.test.ts} +0 -0
  109. /package/src/node/{engine.test.ts → node-engine.test.ts} +0 -0
@@ -1,4 +1,4 @@
1
- export declare class Base64URL {
2
- static stringify(a: any): string;
3
- static parse(s: any): Uint8Array;
4
- }
1
+ export declare class Base64URL {
2
+ static stringify(a: any): string;
3
+ static parse(s: any): Uint8Array<any>;
4
+ }
@@ -1,18 +1,15 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Base64URL = void 0;
4
- var Base64URL = /** @class */ (function () {
5
- function Base64URL() {
6
- }
7
- Base64URL.stringify = function (a) {
8
- var base64string = btoa(String.fromCharCode.apply(0, a));
9
- return base64string.replace(/=/g, '').replace(/\+/g, '-').replace(/\//g, '_');
10
- };
11
- Base64URL.parse = function (s) {
12
- s = s.replace(/-/g, '+').replace(/_/g, '/').replace(/\s/g, '');
13
- return new Uint8Array(Array.prototype.map.call(atob(s), function (c) { return c.charCodeAt(0); }));
14
- };
15
- return Base64URL;
16
- }());
17
- exports.Base64URL = Base64URL;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Base64URL = void 0;
4
+ class Base64URL {
5
+ static stringify(a) {
6
+ let base64string = btoa(String.fromCharCode.apply(0, a));
7
+ return base64string.replace(/=/g, '').replace(/\+/g, '-').replace(/\//g, '_');
8
+ }
9
+ static parse(s) {
10
+ s = s.replace(/-/g, '+').replace(/_/g, '/').replace(/\s/g, '');
11
+ return new Uint8Array(Array.prototype.map.call(atob(s), c => c.charCodeAt(0)));
12
+ }
13
+ }
14
+ exports.Base64URL = Base64URL;
18
15
  //# sourceMappingURL=base64url.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base64url.js","sourceRoot":"","sources":["../../src/browser/base64url.ts"],"names":[],"mappings":";;;AACA;IAAA;IAUA,CAAC;IATiB,mBAAS,GAAvB,UAAwB,CAAC;QACrB,IAAI,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACzD,OAAO,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAClF,CAAC;IAEa,eAAK,GAAnB,UAAoB,CAAC;QACjB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC/D,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAf,CAAe,CAAC,CAAC,CAAC;IACnF,CAAC;IACL,gBAAC;AAAD,CAAC,AAVD,IAUC;AAVY,8BAAS"}
1
+ {"version":3,"file":"base64url.js","sourceRoot":"","sources":["../../src/browser/base64url.ts"],"names":[],"mappings":";;;AACA,MAAa,SAAS;IACX,MAAM,CAAC,SAAS,CAAC,CAAC;QACrB,IAAI,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACzD,OAAO,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAClF,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC/D,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnF,CAAC;CACJ;AAVD,8BAUC"}
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1,6 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var engine_test_1 = require("../engine.test");
4
- var index_1 = require("./index");
5
- (0, engine_test_1.engineTest)('WebCryptoJWT', index_1.JWT);
6
- //# sourceMappingURL=webcrypto-jwt.test.js.map
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const engine_test_1 = require("../engine.test");
4
+ const index_1 = require("./index");
5
+ (0, engine_test_1.engineTest)('WebCryptoJWT', index_1.JWT);
6
+ //# sourceMappingURL=browser-engine.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-engine.test.js","sourceRoot":"","sources":["../../src/browser/browser-engine.test.ts"],"names":[],"mappings":";;AAAA,gDAA4C;AAC5C,mCAA8B;AAE9B,IAAA,wBAAU,EAAC,cAAc,EAAE,WAAG,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
- import { JWTEngine } from '../common';
2
- export * from '../common';
3
- export * from './webcrypto-jwt';
4
- export declare function createJWTEngine(): JWTEngine;
5
- export declare const JWT: JWTEngine;
1
+ import { JWTEngine } from '../common';
2
+ export * from '../common';
3
+ export * from './webcrypto-jwt';
4
+ export declare function createJWTEngine(): JWTEngine;
5
+ export declare const JWT: JWTEngine;
@@ -1,21 +1,25 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
- };
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.JWT = exports.createJWTEngine = void 0;
14
- var webcrypto_jwt_1 = require("./webcrypto-jwt");
15
- __exportStar(require("../common"), exports);
16
- __exportStar(require("./webcrypto-jwt"), exports);
17
- function createJWTEngine() { return new webcrypto_jwt_1.WebCryptoJWT(); }
18
- exports.createJWTEngine = createJWTEngine;
19
- ;
20
- exports.JWT = createJWTEngine();
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.JWT = void 0;
18
+ exports.createJWTEngine = createJWTEngine;
19
+ const webcrypto_jwt_1 = require("./webcrypto-jwt");
20
+ __exportStar(require("../common"), exports);
21
+ __exportStar(require("./webcrypto-jwt"), exports);
22
+ function createJWTEngine() { return new webcrypto_jwt_1.WebCryptoJWT(); }
23
+ ;
24
+ exports.JWT = createJWTEngine();
21
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AACA,iDAA+C;AAC/C,4CAA0B;AAC1B,kDAAgC;AAChC,SAAgB,eAAe,KAAiB,OAAO,IAAI,4BAAY,EAAE,CAAC,CAAC,CAAC;AAA5E,0CAA4E;AAAA,CAAC;AAChE,QAAA,GAAG,GAAG,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAIA,0CAA4E;AAH5E,mDAA+C;AAC/C,4CAA0B;AAC1B,kDAAgC;AAChC,SAAgB,eAAe,KAAiB,OAAO,IAAI,4BAAY,EAAE,CAAC,CAAC,CAAC;AAAA,CAAC;AAChE,QAAA,GAAG,GAAG,eAAe,EAAE,CAAC"}
@@ -1,6 +1,6 @@
1
- export declare class Utils {
2
- static isString(s: any): boolean;
3
- static utf8ToUint8Array(str: any): Uint8Array;
4
- static isFunction(fn: any): boolean;
5
- static isObject(arg: any): boolean;
6
- }
1
+ export declare class Utils {
2
+ static isString(s: any): s is string;
3
+ static utf8ToUint8Array(str: any): Uint8Array<any>;
4
+ static isFunction(fn: any): boolean;
5
+ static isObject(arg: any): boolean;
6
+ }
@@ -1,24 +1,21 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Utils = void 0;
4
- var base64url_1 = require("./base64url");
5
- var Utils = /** @class */ (function () {
6
- function Utils() {
7
- }
8
- Utils.isString = function (s) {
9
- return typeof s === 'string';
10
- };
11
- Utils.utf8ToUint8Array = function (str) {
12
- str = btoa(unescape(encodeURIComponent(str)));
13
- return base64url_1.Base64URL.parse(str);
14
- };
15
- Utils.isFunction = function (fn) {
16
- return typeof fn === 'function';
17
- };
18
- Utils.isObject = function (arg) {
19
- return arg !== null && typeof arg === 'object';
20
- };
21
- return Utils;
22
- }());
23
- exports.Utils = Utils;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Utils = void 0;
4
+ const base64url_1 = require("./base64url");
5
+ class Utils {
6
+ static isString(s) {
7
+ return typeof s === 'string';
8
+ }
9
+ static utf8ToUint8Array(str) {
10
+ str = btoa(unescape(encodeURIComponent(str)));
11
+ return base64url_1.Base64URL.parse(str);
12
+ }
13
+ static isFunction(fn) {
14
+ return typeof fn === 'function';
15
+ }
16
+ static isObject(arg) {
17
+ return arg !== null && typeof arg === 'object';
18
+ }
19
+ }
20
+ exports.Utils = Utils;
24
21
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/browser/utils.ts"],"names":[],"mappings":";;;AAAA,yCAAwC;AAExC;IAAA;IAiBA,CAAC;IAhBiB,cAAQ,GAAtB,UAAuB,CAAC;QACpB,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC;IACjC,CAAC;IAEa,sBAAgB,GAA9B,UAA+B,GAAG;QAC9B,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC9C,OAAO,qBAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAEa,gBAAU,GAAxB,UAAyB,EAAE;QACvB,OAAO,OAAO,EAAE,KAAK,UAAU,CAAC;IACpC,CAAC;IAEa,cAAQ,GAAtB,UAAuB,GAAG;QACtB,OAAO,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,CAAC;IACnD,CAAC;IACL,YAAC;AAAD,CAAC,AAjBD,IAiBC;AAjBY,sBAAK"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/browser/utils.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AAExC,MAAa,KAAK;IACP,MAAM,CAAC,QAAQ,CAAC,CAAC;QACpB,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC;IACjC,CAAC;IAEM,MAAM,CAAC,gBAAgB,CAAC,GAAG;QAC9B,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC9C,OAAO,qBAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,EAAE;QACvB,OAAO,OAAO,EAAE,KAAK,UAAU,CAAC;IACpC,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,GAAG;QACtB,OAAO,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,CAAC;IACnD,CAAC;CACJ;AAjBD,sBAiBC"}
@@ -1,22 +1,22 @@
1
- import { JWTEngine, EncodeOptions, Token, DecodeOptions } from "../common/interface";
2
- export declare class WebCryptoJWT implements JWTEngine {
3
- private subtleCrypto?;
4
- constructor(subtleCrypto?: SubtleCrypto);
5
- decodeUntrusted(token: string): Promise<Token>;
6
- private findSubtleCrypto;
7
- encode(payload: Record<string, any>, options: EncodeOptions): Promise<Token>;
8
- validate(string: string, options: DecodeOptions): Promise<Token>;
9
- private algorithmOf;
10
- private str2ab;
11
- /**
12
- * Adapted from https://chromium.googlesource.com/chromium/blink/+/master/LayoutTests/crypto/subtle/hmac/sign-verify.html
13
- *
14
- * @param token
15
- * @param secret
16
- * @param alg
17
- */
18
- private _verify;
19
- private _sign;
20
- private _decode;
21
- private _decodeBase64URL;
22
- }
1
+ import { JWTEngine, EncodeOptions, Token, DecodeOptions } from "../common/interface";
2
+ export declare class WebCryptoJWT implements JWTEngine {
3
+ private subtleCrypto?;
4
+ constructor(subtleCrypto?: SubtleCrypto);
5
+ decodeUntrusted(token: string): Promise<Token>;
6
+ private findSubtleCrypto;
7
+ encode(payload: Record<string, any>, options: EncodeOptions): Promise<Token>;
8
+ validate(string: string, options: DecodeOptions): Promise<Token>;
9
+ private algorithmOf;
10
+ private str2ab;
11
+ /**
12
+ * Adapted from https://chromium.googlesource.com/chromium/blink/+/master/LayoutTests/crypto/subtle/hmac/sign-verify.html
13
+ *
14
+ * @param token
15
+ * @param secret
16
+ * @param alg
17
+ */
18
+ private _verify;
19
+ private _sign;
20
+ private _decode;
21
+ private _decodeBase64URL;
22
+ }