@schemavaults/auth-common 0.12.0 → 0.12.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.
@@ -26,12 +26,41 @@ export async function decodeJWTs({ token_sources, decodeJWT, jwt_audience }, deb
26
26
  if (debug && successfulDecodeResult) {
27
27
  console.log(`[decodeJWTs] Decoded ${n_successful_decode_results}/${n_token_sources} tokens successfully.`);
28
28
  }
29
+ function describeTokenSource(source) {
30
+ const hint = typeof source.sourceHint === "string" && source.sourceHint.length > 0
31
+ ? source.sourceHint
32
+ : "(no source hint)";
33
+ return `source: '${hint}', type: '${source.type}'`;
34
+ }
29
35
  if (!successfulDecodeResult) {
36
+ const rejectedDescriptions = [];
37
+ const rejectionReasons = [];
38
+ decodeResults.forEach((result, index) => {
39
+ if (result.status !== "rejected")
40
+ return;
41
+ const source = token_sources[index];
42
+ const sourceDescription = source !== undefined
43
+ ? describeTokenSource(source)
44
+ : `source: '(unknown, index=${index})', type: '(unknown)'`;
45
+ const reason = result.reason;
46
+ const reasonMessage = reason instanceof Error
47
+ ? reason.message
48
+ : typeof reason === "string"
49
+ ? reason
50
+ : "Unknown error";
51
+ rejectedDescriptions.push(`{ ${sourceDescription}, error: ${reasonMessage} }`);
52
+ rejectionReasons.push(reason);
53
+ });
30
54
  const errorMessage = n_token_sources > 1
31
- ? `Failed to decode any of the ${n_token_sources} provided JWTs`
32
- : "Failed to decode the single JWT that was provided!";
55
+ ? `Failed to decode any of the ${n_token_sources} provided JWTs [${rejectedDescriptions.join("; ")}]`
56
+ : `Failed to decode the single JWT that was provided! [${rejectedDescriptions.join("; ")}]`;
33
57
  console.warn(errorMessage);
34
- throw new Error(errorMessage);
58
+ const cause = rejectionReasons.length === 0
59
+ ? undefined
60
+ : rejectionReasons.length === 1
61
+ ? rejectionReasons[0]
62
+ : new AggregateError(rejectionReasons, errorMessage);
63
+ throw new Error(errorMessage, cause === undefined ? undefined : { cause });
35
64
  }
36
65
  function validateSameInfoAcrossTokens() {
37
66
  const uids_set = new Set();
@@ -1 +1 @@
1
- {"version":3,"file":"decode-jwts.js","sourceRoot":"","sources":["../../src/middleware/decode-jwts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decode-jwts.js","sourceRoot":"","sources":["../../src/middleware/decode-jwts.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@schemavaults/auth-common",
3
3
  "description": "Types and utility functions for authentication and authorization",
4
- "version": "0.12.0",
4
+ "version": "0.12.1",
5
5
  "license": "UNLICENSED",
6
6
  "private": false,
7
7
  "repository": {