@sd-jwt/decode 0.1.2-alpha.0 → 0.1.2-alpha.5

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.
@@ -5,25 +5,25 @@ const fromString_1 = require("../disclosures/fromString");
5
5
  const jwt_1 = require("../jwt");
6
6
  const keyBinding_1 = require("../keyBinding");
7
7
  const sdJwtFromCompact = (compact) => {
8
+ if (!compact.includes('~')) {
9
+ throw new Error('compact is not a valid sd-jwt. It must contain at least one ~');
10
+ }
8
11
  const [jwtWithoutDisclosures, ...encodedDisclosures] = compact.split('~');
9
12
  const { header, payload, signature } = (0, jwt_1.jwtFromCompact)(jwtWithoutDisclosures);
10
- if (encodedDisclosures.length === 0) {
13
+ // No KB-JWT or disclosures
14
+ if (encodedDisclosures.length === 1 && encodedDisclosures[0] === '') {
11
15
  return {
12
16
  header,
13
17
  payload,
14
18
  signature
15
19
  };
16
20
  }
17
- const hasKeyBinding = !compact.endsWith('~');
18
21
  // If the disclosure array ends with an `~` we do not have
19
22
  // a key binding and `String.split` takes it as an empty string
20
23
  // as element which we would not like to include in the disclosures.
21
- if (!hasKeyBinding)
22
- encodedDisclosures.pop();
23
- const compactKeyBinding = hasKeyBinding
24
- ? encodedDisclosures.pop()
25
- : undefined;
26
- const keyBinding = compactKeyBinding
24
+ const compactKeyBinding = encodedDisclosures.pop();
25
+ const hasKeyBinding = compactKeyBinding && compactKeyBinding !== '';
26
+ const keyBinding = hasKeyBinding
27
27
  ? (0, keyBinding_1.keyBindingFromCompact)(compactKeyBinding)
28
28
  : undefined;
29
29
  const disclosures = encodedDisclosures.map(fromString_1.disclosureFromString);
@@ -1 +1 @@
1
- {"version":3,"file":"fromCompact.js","sourceRoot":"","sources":["../../src/sdJwt/fromCompact.ts"],"names":[],"mappings":";;;AAAA,0DAAgE;AAChE,gCAAuC;AACvC,8CAAqD;AAE9C,MAAM,gBAAgB,GAAG,CAI5B,OAAe,EACjB,EAAE;IACA,MAAM,CAAC,qBAAqB,EAAE,GAAG,kBAAkB,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAEzE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAA,oBAAc,EACjD,qBAAqB,CACxB,CAAA;IAED,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,OAAO;YACH,MAAM;YACN,OAAO;YACP,SAAS;SACZ,CAAA;IACL,CAAC;IAED,MAAM,aAAa,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;IAE5C,0DAA0D;IAC1D,+DAA+D;IAC/D,oEAAoE;IACpE,IAAI,CAAC,aAAa;QAAE,kBAAkB,CAAC,GAAG,EAAE,CAAA;IAE5C,MAAM,iBAAiB,GAAG,aAAa;QACnC,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE;QAC1B,CAAC,CAAC,SAAS,CAAA;IAEf,MAAM,UAAU,GAAG,iBAAiB;QAChC,CAAC,CAAC,IAAA,kCAAqB,EAAC,iBAAiB,CAAC;QAC1C,CAAC,CAAC,SAAS,CAAA;IAEf,MAAM,WAAW,GAAG,kBAAkB,CAAC,GAAG,CAAC,iCAAoB,CAAC,CAAA;IAEhE,OAAO;QACH,MAAM;QACN,OAAO;QACP,SAAS;QACT,UAAU;QACV,WAAW;KACd,CAAA;AACL,CAAC,CAAA;AA5CY,QAAA,gBAAgB,oBA4C5B"}
1
+ {"version":3,"file":"fromCompact.js","sourceRoot":"","sources":["../../src/sdJwt/fromCompact.ts"],"names":[],"mappings":";;;AAAA,0DAAgE;AAChE,gCAAuC;AACvC,8CAAqD;AAE9C,MAAM,gBAAgB,GAAG,CAI5B,OAAe,EACjB,EAAE;IACA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CACX,+DAA+D,CAClE,CAAA;IACL,CAAC;IACD,MAAM,CAAC,qBAAqB,EAAE,GAAG,kBAAkB,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAEzE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAA,oBAAc,EACjD,qBAAqB,CACxB,CAAA;IAED,2BAA2B;IAC3B,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;QAClE,OAAO;YACH,MAAM;YACN,OAAO;YACP,SAAS;SACZ,CAAA;IACL,CAAC;IAED,0DAA0D;IAC1D,+DAA+D;IAC/D,oEAAoE;IACpE,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,GAAG,EAAE,CAAA;IAClD,MAAM,aAAa,GAAG,iBAAiB,IAAI,iBAAiB,KAAK,EAAE,CAAA;IAEnE,MAAM,UAAU,GAAG,aAAa;QAC5B,CAAC,CAAC,IAAA,kCAAqB,EAAC,iBAAiB,CAAC;QAC1C,CAAC,CAAC,SAAS,CAAA;IAEf,MAAM,WAAW,GAAG,kBAAkB,CAAC,GAAG,CAAC,iCAAoB,CAAC,CAAA;IAEhE,OAAO;QACH,MAAM;QACN,OAAO;QACP,SAAS;QACT,UAAU;QACV,WAAW;KACd,CAAA;AACL,CAAC,CAAA;AA7CY,QAAA,gBAAgB,oBA6C5B"}
@@ -11,7 +11,6 @@ const sdJwtVcFromCompact = (compact) => {
11
11
  (0, utils_1.assertClaimInObject)(sdJwt.payload, 'iss');
12
12
  (0, utils_1.assertClaimInObject)(sdJwt.payload, 'vct');
13
13
  (0, utils_1.assertClaimInObject)(sdJwt.payload, 'iat');
14
- (0, utils_1.assertClaimInObject)(sdJwt.payload, 'cnf');
15
14
  }
16
15
  catch (e) {
17
16
  if (e instanceof Error) {
@@ -1 +1 @@
1
- {"version":3,"file":"fromCompact.js","sourceRoot":"","sources":["../../src/sdJwtVc/fromCompact.ts"],"names":[],"mappings":";;;AAAA,yCAAmD;AACnD,sDAAuD;AAEhD,MAAM,kBAAkB,GAAG,CAI9B,OAAe,EACjB,EAAE;IACA,MAAM,KAAK,GAAG,IAAA,8BAAgB,EAAkB,OAAO,CAAC,CAAA;IAExD,IAAI,CAAC;QACD,IAAA,2BAAmB,EAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,CAAA;QACrD,IAAA,2BAAmB,EAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QACxC,IAAA,2BAAmB,EAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QACzC,IAAA,2BAAmB,EAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QACzC,IAAA,2BAAmB,EAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QACzC,IAAA,2BAAmB,EAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IAC7C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,IAAI,CAAC,YAAY,KAAK,EAAE,CAAC;YACrB,CAAC,CAAC,OAAO,GAAG,qDAAqD,CAAC,CAAC,OAAO,EAAE,CAAA;QAChF,CAAC;QAED,MAAM,CAAC,CAAA;IACX,CAAC;IAED,OAAO,KAAK,CAAA;AAChB,CAAC,CAAA;AAxBY,QAAA,kBAAkB,sBAwB9B"}
1
+ {"version":3,"file":"fromCompact.js","sourceRoot":"","sources":["../../src/sdJwtVc/fromCompact.ts"],"names":[],"mappings":";;;AAAA,yCAAmD;AACnD,sDAAuD;AAEhD,MAAM,kBAAkB,GAAG,CAI9B,OAAe,EACjB,EAAE;IACA,MAAM,KAAK,GAAG,IAAA,8BAAgB,EAAkB,OAAO,CAAC,CAAA;IAExD,IAAI,CAAC;QACD,IAAA,2BAAmB,EAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,CAAA;QACrD,IAAA,2BAAmB,EAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QACxC,IAAA,2BAAmB,EAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QACzC,IAAA,2BAAmB,EAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QACzC,IAAA,2BAAmB,EAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IAC7C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,IAAI,CAAC,YAAY,KAAK,EAAE,CAAC;YACrB,CAAC,CAAC,OAAO,GAAG,qDAAqD,CAAC,CAAC,OAAO,EAAE,CAAA;QAChF,CAAC;QAED,MAAM,CAAC,CAAA;IACX,CAAC;IAED,OAAO,KAAK,CAAA;AAChB,CAAC,CAAA;AAvBY,QAAA,kBAAkB,sBAuB9B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sd-jwt/decode",
3
- "version": "0.1.2-alpha.0",
3
+ "version": "0.1.2-alpha.5",
4
4
  "description": "Decode implementation of sd-jwt Draft 06 and sd-jwt-vc Draft 01",
5
5
  "license": "(MIT OR Apache-2.0)",
6
6
  "author": "Berend Sliedrecht <sliedrecht@berend.io>",
@@ -30,22 +30,20 @@
30
30
  },
31
31
  "main": "build/index.js",
32
32
  "files": [
33
- "build",
34
- "../../LICENSE-MIT",
35
- "../../LICENSE-APACHE-2.0"
33
+ "build"
36
34
  ],
37
35
  "scripts": {
38
36
  "build": "tsc",
39
- "test": "node --require ts-node/register --test ./tests/*.test.ts",
40
- "release": "release-it"
37
+ "test": "node --require ts-node/register --test ./tests/*.test.ts"
41
38
  },
42
39
  "dependencies": {
43
- "@sd-jwt/types": "workspace:*",
44
- "@sd-jwt/utils": "workspace:*"
40
+ "@sd-jwt/types": "0.1.2-alpha.5",
41
+ "@sd-jwt/utils": "0.1.2-alpha.5"
45
42
  },
46
43
  "devDependencies": {
47
44
  "@types/node": "*",
48
45
  "ts-node": "*",
49
46
  "typescript": "*"
50
- }
47
+ },
48
+ "gitHead": "da3ab7d9b8fde060e8e178e7daccc984b4609e2f"
51
49
  }