@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
|
-
|
|
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
|
-
|
|
22
|
-
|
|
23
|
-
const
|
|
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;
|
|
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;
|
|
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.
|
|
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": "
|
|
44
|
-
"@sd-jwt/utils": "
|
|
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
|
}
|