@sphereon/oid4vci-common 0.8.2-next.6 → 0.8.2-next.87
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/dist/functions/AuthorizationResponseUtil.d.ts +3 -0
- package/dist/functions/AuthorizationResponseUtil.d.ts.map +1 -0
- package/dist/functions/AuthorizationResponseUtil.js +21 -0
- package/dist/functions/AuthorizationResponseUtil.js.map +1 -0
- package/dist/functions/CredentialOfferUtil.d.ts +5 -0
- package/dist/functions/CredentialOfferUtil.d.ts.map +1 -1
- package/dist/functions/CredentialOfferUtil.js +92 -2
- package/dist/functions/CredentialOfferUtil.js.map +1 -1
- package/dist/functions/CredentialRequestUtil.d.ts +3 -2
- package/dist/functions/CredentialRequestUtil.d.ts.map +1 -1
- package/dist/functions/CredentialRequestUtil.js +41 -2
- package/dist/functions/CredentialRequestUtil.js.map +1 -1
- package/dist/functions/CredentialResponseUtil.d.ts +11 -0
- package/dist/functions/CredentialResponseUtil.d.ts.map +1 -0
- package/dist/functions/CredentialResponseUtil.js +80 -0
- package/dist/functions/CredentialResponseUtil.js.map +1 -0
- package/dist/functions/Encoding.js +1 -1
- package/dist/functions/Encoding.js.map +1 -1
- package/dist/functions/FormatUtils.d.ts +15 -0
- package/dist/functions/FormatUtils.d.ts.map +1 -0
- package/dist/functions/FormatUtils.js +44 -0
- package/dist/functions/FormatUtils.js.map +1 -0
- package/dist/functions/HttpUtils.d.ts +3 -3
- package/dist/functions/HttpUtils.d.ts.map +1 -1
- package/dist/functions/HttpUtils.js +2 -2
- package/dist/functions/HttpUtils.js.map +1 -1
- package/dist/functions/IssuerMetadataUtils.d.ts +8 -1
- package/dist/functions/IssuerMetadataUtils.d.ts.map +1 -1
- package/dist/functions/IssuerMetadataUtils.js +42 -7
- package/dist/functions/IssuerMetadataUtils.js.map +1 -1
- package/dist/functions/RandomUtils.d.ts +10 -0
- package/dist/functions/RandomUtils.d.ts.map +1 -0
- package/dist/functions/RandomUtils.js +73 -0
- package/dist/functions/RandomUtils.js.map +1 -0
- package/dist/functions/index.d.ts +8 -0
- package/dist/functions/index.d.ts.map +1 -1
- package/dist/functions/index.js +9 -0
- package/dist/functions/index.js.map +1 -1
- package/dist/functions/randomBytes.d.ts +7 -0
- package/dist/functions/randomBytes.d.ts.map +1 -0
- package/dist/functions/randomBytes.js +56 -0
- package/dist/functions/randomBytes.js.map +1 -0
- package/dist/types/Authorization.types.d.ts +64 -15
- package/dist/types/Authorization.types.d.ts.map +1 -1
- package/dist/types/Authorization.types.js +30 -9
- package/dist/types/Authorization.types.js.map +1 -1
- package/dist/types/CredentialIssuance.types.d.ts +5 -1
- package/dist/types/CredentialIssuance.types.d.ts.map +1 -1
- package/dist/types/CredentialIssuance.types.js +2 -2
- package/dist/types/CredentialIssuance.types.js.map +1 -1
- package/dist/types/Generic.types.d.ts +63 -18
- package/dist/types/Generic.types.d.ts.map +1 -1
- package/dist/types/Generic.types.js.map +1 -1
- package/dist/types/OpenID4VCIVersions.types.d.ts +1 -0
- package/dist/types/OpenID4VCIVersions.types.d.ts.map +1 -1
- package/dist/types/OpenID4VCIVersions.types.js +4 -3
- package/dist/types/OpenID4VCIVersions.types.js.map +1 -1
- package/dist/types/QRCode.types.js +0 -2
- package/dist/types/QRCode.types.js.map +1 -1
- package/dist/types/ServerMetadata.d.ts +2 -0
- package/dist/types/ServerMetadata.d.ts.map +1 -1
- package/dist/types/ServerMetadata.js +1 -1
- package/dist/types/ServerMetadata.js.map +1 -1
- package/dist/types/StateManager.types.d.ts +4 -4
- package/dist/types/StateManager.types.d.ts.map +1 -1
- package/dist/types/StateManager.types.js +1 -1
- package/dist/types/StateManager.types.js.map +1 -1
- package/dist/types/Token.types.d.ts +1 -1
- package/dist/types/Token.types.d.ts.map +1 -1
- package/dist/types/Token.types.js +1 -1
- package/dist/types/Token.types.js.map +1 -1
- package/dist/types/v1_0_08.types.d.ts +6 -2
- package/dist/types/v1_0_08.types.d.ts.map +1 -1
- package/dist/types/v1_0_11.types.d.ts +13 -13
- package/dist/types/v1_0_11.types.d.ts.map +1 -1
- package/dist/types/v1_0_11.types.js.map +1 -1
- package/dist/types/v1_0_12.types.d.ts +3 -0
- package/dist/types/v1_0_12.types.d.ts.map +1 -0
- package/dist/types/v1_0_12.types.js +3 -0
- package/dist/types/v1_0_12.types.js.map +1 -0
- package/lib/__tests__/CredentialOfferUtil.spec.ts +51 -2
- package/lib/__tests__/Encoding.spec.ts +15 -0
- package/lib/__tests__/randomBytes.spec.ts +15 -0
- package/lib/functions/AuthorizationResponseUtil.ts +18 -0
- package/lib/functions/CredentialOfferUtil.ts +89 -1
- package/lib/functions/CredentialRequestUtil.ts +46 -3
- package/lib/functions/CredentialResponseUtil.ts +90 -0
- package/lib/functions/Encoding.ts +1 -1
- package/lib/functions/FormatUtils.ts +52 -0
- package/lib/functions/HttpUtils.ts +6 -6
- package/lib/functions/IssuerMetadataUtils.ts +45 -4
- package/lib/functions/RandomUtils.ts +43 -0
- package/lib/functions/index.ts +8 -0
- package/lib/functions/randomBytes.js +61 -0
- package/lib/types/Authorization.types.ts +100 -11
- package/lib/types/CredentialIssuance.types.ts +9 -2
- package/lib/types/Generic.types.ts +89 -16
- package/lib/types/OpenID4VCIVersions.types.ts +2 -1
- package/lib/types/QRCode.types.ts +2 -2
- package/lib/types/ServerMetadata.ts +2 -0
- package/lib/types/v1_0_08.types.ts +7 -2
- package/lib/types/v1_0_11.types.ts +19 -16
- package/lib/types/v1_0_12.types.ts +4 -0
- package/package.json +17 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpUtils.js","sourceRoot":"","sources":["../../lib/functions/HttpUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,6CAAoC;AACpC,kDAA0B;AAE1B,oCAAoD;AAEpD,MAAM,KAAK,GAAG,IAAA,eAAK,EAAC,0BAA0B,CAAC,CAAC;AAEzC,MAAM,OAAO,GAAG,CACrB,GAAW,EACX,IAMC,EAC2B,EAAE;IAC9B,OAAO,MAAM,WAAW,CAAC,GAAG,EAAE,SAAS,kBAAI,MAAM,EAAE,KAAK,IAAK,IAAI,EAAG,CAAC;AACvE,CAAC,CAAA,CAAC;AAXW,QAAA,OAAO,WAWlB;AAEK,MAAM,QAAQ,GAAG,CACtB,GAAW,EACX,IAAc,EACd,IAMC,EAC2B,EAAE;IAC9B,OAAO,MAAM,IAAA,YAAI,EAAC,GAAG,EAAE,IAAI,EAAE,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,EAAC,CAAC,mBAAM,IAAI,EAAG,CAAC,iBAAG,WAAW,EAAE,gBAAQ,CAAC,gBAAgB,IAAK,IAAI,CAAE,CAAC,CAAC;AACtH,CAAC,CAAA,CAAC;AAZW,QAAA,QAAQ,YAYnB;AAEK,MAAM,IAAI,GAAG,CAClB,GAAW,EACX,IAAe,EACf,IAMC,EAC2B,EAAE;IAC9B,OAAO,MAAM,WAAW,CAAC,GAAG,EAAE,IAAI,kBAAI,MAAM,EAAE,MAAM,IAAK,IAAI,EAAG,CAAC;AACnE,CAAC,CAAA,CAAC;AAZW,QAAA,IAAI,QAYf;AAEF,MAAM,WAAW,GAAG,CAClB,GAAW,EACX,IAAe,EACf,IAOC,EAC2B,EAAE;;IAC9B,MAAM,OAAO,GAA2B,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,aAAa,mCAAI,EAAE,CAAC;IAClE,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,EAAE;
|
|
1
|
+
{"version":3,"file":"HttpUtils.js","sourceRoot":"","sources":["../../lib/functions/HttpUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,6CAAoC;AACpC,kDAA0B;AAE1B,oCAAoD;AAEpD,MAAM,KAAK,GAAG,IAAA,eAAK,EAAC,0BAA0B,CAAC,CAAC;AAEzC,MAAM,OAAO,GAAG,CACrB,GAAW,EACX,IAMC,EAC2B,EAAE;IAC9B,OAAO,MAAM,WAAW,CAAC,GAAG,EAAE,SAAS,kBAAI,MAAM,EAAE,KAAK,IAAK,IAAI,EAAG,CAAC;AACvE,CAAC,CAAA,CAAC;AAXW,QAAA,OAAO,WAWlB;AAEK,MAAM,QAAQ,GAAG,CACtB,GAAW,EACX,IAAc,EACd,IAMC,EAC2B,EAAE;IAC9B,OAAO,MAAM,IAAA,YAAI,EAAC,GAAG,EAAE,IAAI,EAAE,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,EAAC,CAAC,mBAAM,IAAI,EAAG,CAAC,iBAAG,WAAW,EAAE,gBAAQ,CAAC,gBAAgB,IAAK,IAAI,CAAE,CAAC,CAAC;AACtH,CAAC,CAAA,CAAC;AAZW,QAAA,QAAQ,YAYnB;AAEK,MAAM,IAAI,GAAG,CAClB,GAAW,EACX,IAAe,EACf,IAMC,EAC2B,EAAE;IAC9B,OAAO,MAAM,WAAW,CAAC,GAAG,EAAE,IAAI,kBAAI,MAAM,EAAE,MAAM,IAAK,IAAI,EAAG,CAAC;AACnE,CAAC,CAAA,CAAC;AAZW,QAAA,IAAI,QAYf;AAEF,MAAM,WAAW,GAAG,CAClB,GAAW,EACX,IAAe,EACf,IAOC,EAC2B,EAAE;;IAC9B,MAAM,OAAO,GAA2B,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,aAAa,mCAAI,EAAE,CAAC;IAClE,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,EAAE,CAAC;QACtB,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,OAAO,IAAI,CAAC,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IAC9H,CAAC;IACD,MAAM,MAAM,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;IAClE,MAAM,MAAM,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC;IAC/D,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;IAC3B,IAAI,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;QAC5B,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,KAAI,IAAI,CAAC,WAAW,KAAK,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;YACtE,MAAM,KAAK,CACT,kDAAkD,OAAO,CAAC,cAAc,CAAC,uCAAuC,IAAI,CAAC,WAAW,GAAG,CACpI,CAAC;QACJ,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,EAAE,CAAC;YACtB,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;QAC7C,CAAC;aAAM,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YAC5B,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAgB;QAC3B,MAAM;QACN,OAAO;QACP,IAAI;KACL,CAAC;IAEF,KAAK,CAAC,uBAAuB,GAAG,EAAE,CAAC,CAAC;IACpC,IAAI,IAAI,EAAE,CAAC;QACT,KAAK,CAAC,YAAY,OAAO,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,KAAK,CAAC,eAAe,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACxD,MAAM,YAAY,GAAG,MAAM,IAAA,mBAAK,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC/C,MAAM,cAAc,GAAG,MAAM,KAAK,kBAAkB,IAAI,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,kBAAkB,CAAC;IACxH,MAAM,OAAO,GAAG,YAAY,IAAI,YAAY,CAAC,MAAM,IAAI,GAAG,IAAI,YAAY,CAAC,MAAM,GAAG,GAAG,CAAC;IACxF,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC;IAC/C,MAAM,YAAY,GAAG,cAAc,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;IAE5G,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,YAAY,YAAY,CAAC,MAAM,cAAc,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IACnH,IAAI,CAAC,OAAO,KAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,0BAA0B,CAAA,EAAE,CAAC;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACrE,CAAC;IACD,KAAK,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC;IAElC,OAAO;QACL,YAAY;QACZ,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;QAC/C,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;KAC/C,CAAC;AACJ,CAAC,CAAA,CAAC;AAEK,MAAM,UAAU,GAAG,CAAC,GAAW,EAAW,EAAE;IACjD,MAAM,UAAU,GAAG,IAAI,MAAM,CAC3B,kBAAkB,GAAG,oBAAoB;QACvC,kDAAkD,GAAG,uBAAuB;QAC5E,gBAAgB,GAAG,wBAAwB;QAC3C,6BAA6B,GAAG,8BAA8B;QAC9D,kCAAkC,GAAG,yBAAyB;QAC9D,0BAA0B,GAAG,wBAAwB;QACrD,oBAAoB,EAAE,4BAA4B;IACpD,GAAG,CACJ,CAAC;IACF,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC,CAAC;AAZW,QAAA,UAAU,cAYrB;AAEK,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,IAAY,EAAU,EAAE;IAC9D,OAAO,IAAA,eAAO,EAAC,IAAA,iBAAS,EAAC,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;AAC/C,CAAC,CAAC;AAFW,QAAA,QAAQ,YAEnB;AAEK,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,IAAY,EAAU,EAAE;IAC7D,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACvF,CAAC,CAAC;AAFW,QAAA,OAAO,WAElB;AAEK,MAAM,SAAS,GAAG,CAAC,KAAa,EAAE,IAAY,EAAU,EAAE;IAC/D,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACvE,CAAC,CAAC;AAFW,QAAA,SAAS,aAEpB;AAEK,MAAM,SAAS,GAAG,CACvB,SAAY,EACZ,IAKC,EACE,EAAE;IACL,IAAI,GAAG,GAAG,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAE,SAAoB,CAAC;IACvF,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAE,CAAC;QACjB,GAAG,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,IAAA,iBAAS,EAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACjC,2BAA2B;YAC3B,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAClC,GAAG,GAAG,IAAA,eAAO,EAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,IAAA,iBAAS,EAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;aAAM,CAAC;YACN,wBAAwB;YACxB,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,IAAI,IAAI,GAAG,GAAG,CAAC;YACf,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxB,2BAA2B;gBAC3B,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACzB,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;YAC/B,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnC,IAAI,IAAI,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;oBACxB,GAAG,GAAG,IAAA,eAAO,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBAC3B,CAAC;gBACD,GAAG,IAAI,IAAA,eAAO,EAAC,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,IAAA,gBAAQ,EAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,IAAA,iBAAS,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC5F,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,eAAe,EAAE,CAAC;QAC1B,GAAG,GAAG,IAAA,iBAAS,EAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,aAAa,EAAE,CAAC;QACxB,GAAG,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO,GAAQ,CAAC;IAClB,CAAC;IACD,OAAO,IAAI,GAAG,CAAC,GAAG,CAAM,CAAC;AAC3B,CAAC,CAAC;AA/CW,QAAA,SAAS,aA+CpB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CredentialIssuerMetadata, CredentialSupported, CredentialSupportedTypeV1_0_08, CredentialSupportedV1_0_08, IssuerMetadataV1_0_08, MetadataDisplay, OID4VCICredentialFormat, OpenId4VCIVersion } from '../types';
|
|
1
|
+
import { AuthorizationServerMetadata, CredentialIssuerMetadata, CredentialSupported, CredentialSupportedTypeV1_0_08, CredentialSupportedV1_0_08, IssuerMetadataV1_0_08, MetadataDisplay, OID4VCICredentialFormat, OpenId4VCIVersion } from '../types';
|
|
2
2
|
export declare function getSupportedCredentials(opts?: {
|
|
3
3
|
issuerMetadata?: CredentialIssuerMetadata | IssuerMetadataV1_0_08;
|
|
4
4
|
version: OpenId4VCIVersion;
|
|
@@ -11,9 +11,16 @@ export declare function getSupportedCredential(opts?: {
|
|
|
11
11
|
types?: string | string[];
|
|
12
12
|
format?: (OID4VCICredentialFormat | string) | (OID4VCICredentialFormat | string)[];
|
|
13
13
|
}): CredentialSupported[];
|
|
14
|
+
export declare function getTypesFromCredentialSupported(credentialSupported: CredentialSupported, opts?: {
|
|
15
|
+
filterVerifiableCredential: boolean;
|
|
16
|
+
}): string[];
|
|
14
17
|
export declare function credentialsSupportedV8ToV11(supportedV8: CredentialSupportedTypeV1_0_08): CredentialSupported[];
|
|
15
18
|
export declare function credentialSupportedV8ToV11(key: string, supportedV8: CredentialSupportedV1_0_08): CredentialSupported[];
|
|
16
19
|
export declare function getIssuerDisplays(metadata: CredentialIssuerMetadata | IssuerMetadataV1_0_08, opts?: {
|
|
17
20
|
prefLocales: string[];
|
|
18
21
|
}): MetadataDisplay[];
|
|
22
|
+
/**
|
|
23
|
+
* TODO check again when WAL-617 is done to replace how we get the issuer name.
|
|
24
|
+
*/
|
|
25
|
+
export declare function getIssuerName(url: string, credentialIssuerMetadata?: Partial<AuthorizationServerMetadata> & (CredentialIssuerMetadata | IssuerMetadataV1_0_08)): string;
|
|
19
26
|
//# sourceMappingURL=IssuerMetadataUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IssuerMetadataUtils.d.ts","sourceRoot":"","sources":["../../lib/functions/IssuerMetadataUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EAExB,mBAAmB,EACnB,8BAA8B,EAC9B,0BAA0B,EAC1B,qBAAqB,EACrB,eAAe,EACf,uBAAuB,EACvB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAElB,wBAAgB,uBAAuB,CAAC,IAAI,CAAC,EAAE;IAC7C,cAAc,CAAC,EAAE,wBAAwB,GAAG,qBAAqB,CAAC;IAClE,OAAO,EAAE,iBAAiB,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,CAAC,uBAAuB,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,GAAG,MAAM,CAAC,EAAE,CAAC;CACpF,GAAG,mBAAmB,EAAE,CAKxB;AAED,wBAAgB,sBAAsB,CAAC,IAAI,CAAC,EAAE;IAC5C,cAAc,CAAC,EAAE,wBAAwB,GAAG,qBAAqB,CAAC;IAClE,OAAO,EAAE,iBAAiB,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC1B,MAAM,CAAC,EAAE,CAAC,uBAAuB,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,GAAG,MAAM,CAAC,EAAE,CAAC;CACpF,GAAG,mBAAmB,EAAE,CAsExB;AAaD,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,8BAA8B,GAAG,mBAAmB,EAAE,CAM9G;AAED,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,0BAA0B,GAAG,mBAAmB,EAAE,CAgBtH;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,wBAAwB,GAAG,qBAAqB,EAAE,IAAI,CAAC,EAAE;IAAE,WAAW,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,eAAe,EAAE,CAMjJ"}
|
|
1
|
+
{"version":3,"file":"IssuerMetadataUtils.d.ts","sourceRoot":"","sources":["../../lib/functions/IssuerMetadataUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,wBAAwB,EAExB,mBAAmB,EACnB,8BAA8B,EAC9B,0BAA0B,EAC1B,qBAAqB,EACrB,eAAe,EACf,uBAAuB,EACvB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAElB,wBAAgB,uBAAuB,CAAC,IAAI,CAAC,EAAE;IAC7C,cAAc,CAAC,EAAE,wBAAwB,GAAG,qBAAqB,CAAC;IAClE,OAAO,EAAE,iBAAiB,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,CAAC,uBAAuB,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,GAAG,MAAM,CAAC,EAAE,CAAC;CACpF,GAAG,mBAAmB,EAAE,CAKxB;AAED,wBAAgB,sBAAsB,CAAC,IAAI,CAAC,EAAE;IAC5C,cAAc,CAAC,EAAE,wBAAwB,GAAG,qBAAqB,CAAC;IAClE,OAAO,EAAE,iBAAiB,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC1B,MAAM,CAAC,EAAE,CAAC,uBAAuB,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,GAAG,MAAM,CAAC,EAAE,CAAC;CACpF,GAAG,mBAAmB,EAAE,CAsExB;AAED,wBAAgB,+BAA+B,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,IAAI,CAAC,EAAE;IAAE,0BAA0B,EAAE,OAAO,CAAA;CAAE,YAoBvI;AAaD,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,8BAA8B,GAAG,mBAAmB,EAAE,CAM9G;AAED,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,0BAA0B,GAAG,mBAAmB,EAAE,CAgBtH;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,wBAAwB,GAAG,qBAAqB,EAAE,IAAI,CAAC,EAAE;IAAE,WAAW,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,eAAe,EAAE,CAMjJ;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,MAAM,EACX,wBAAwB,CAAC,EAAE,OAAO,CAAC,2BAA2B,CAAC,GAAG,CAAC,wBAAwB,GAAG,qBAAqB,CAAC,GACnH,MAAM,CAUR"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getIssuerDisplays = exports.credentialSupportedV8ToV11 = exports.credentialsSupportedV8ToV11 = exports.getSupportedCredential = exports.getSupportedCredentials = void 0;
|
|
3
|
+
exports.getIssuerName = exports.getIssuerDisplays = exports.credentialSupportedV8ToV11 = exports.credentialsSupportedV8ToV11 = exports.getTypesFromCredentialSupported = exports.getSupportedCredential = exports.getSupportedCredentials = void 0;
|
|
4
4
|
const types_1 = require("../types");
|
|
5
5
|
function getSupportedCredentials(opts) {
|
|
6
6
|
if ((opts === null || opts === void 0 ? void 0 : opts.types) && Array.isArray(opts === null || opts === void 0 ? void 0 : opts.types)) {
|
|
@@ -10,7 +10,7 @@ function getSupportedCredentials(opts) {
|
|
|
10
10
|
}
|
|
11
11
|
exports.getSupportedCredentials = getSupportedCredentials;
|
|
12
12
|
function getSupportedCredential(opts) {
|
|
13
|
-
var _a;
|
|
13
|
+
var _a, _b;
|
|
14
14
|
const { issuerMetadata } = opts !== null && opts !== void 0 ? opts : {};
|
|
15
15
|
let formats;
|
|
16
16
|
if ((opts === null || opts === void 0 ? void 0 : opts.format) && Array.isArray(opts.format)) {
|
|
@@ -28,7 +28,7 @@ function getSupportedCredential(opts) {
|
|
|
28
28
|
}
|
|
29
29
|
const { version, types } = opts !== null && opts !== void 0 ? opts : { version: types_1.OpenId4VCIVersion.VER_1_0_11 };
|
|
30
30
|
if (version === types_1.OpenId4VCIVersion.VER_1_0_08 || !Array.isArray(issuerMetadata.credentials_supported)) {
|
|
31
|
-
credentialsSupported = credentialsSupportedV8ToV11(issuerMetadata.credentials_supported);
|
|
31
|
+
credentialsSupported = credentialsSupportedV8ToV11((_a = issuerMetadata.credentials_supported) !== null && _a !== void 0 ? _a : {});
|
|
32
32
|
}
|
|
33
33
|
else {
|
|
34
34
|
credentialsSupported = issuerMetadata.credentials_supported;
|
|
@@ -56,9 +56,9 @@ function getSupportedCredential(opts) {
|
|
|
56
56
|
}
|
|
57
57
|
const supportedFormats = formats && formats.length > 0 ? formats : ['jwt_vc_json', 'jwt_vc_json-ld', 'ldp_vc'];
|
|
58
58
|
const credentialSupportedOverlap = [];
|
|
59
|
-
if (((opts === null || opts === void 0 ? void 0 : opts.types) && typeof (opts === null || opts === void 0 ? void 0 : opts.types) === 'string') || ((
|
|
59
|
+
if (((opts === null || opts === void 0 ? void 0 : opts.types) && typeof (opts === null || opts === void 0 ? void 0 : opts.types) === 'string') || ((_b = opts === null || opts === void 0 ? void 0 : opts.types) === null || _b === void 0 ? void 0 : _b.length) === 1) {
|
|
60
60
|
const types = Array.isArray(opts.types) ? opts.types[0] : opts.types;
|
|
61
|
-
const supported = credentialsSupported.filter((sup) => sup.id === types || (initiationTypes && arrayEqualsIgnoreOrder(sup
|
|
61
|
+
const supported = credentialsSupported.filter((sup) => sup.id === types || (initiationTypes && arrayEqualsIgnoreOrder(getTypesFromCredentialSupported(sup), initiationTypes)));
|
|
62
62
|
if (supported) {
|
|
63
63
|
credentialSupportedOverlap.push(...supported);
|
|
64
64
|
}
|
|
@@ -69,7 +69,7 @@ function getSupportedCredential(opts) {
|
|
|
69
69
|
initiationTypes.push('VerifiableCredential');
|
|
70
70
|
}
|
|
71
71
|
const supported = credentialsSupported.filter((sup) => {
|
|
72
|
-
const supTypes = sup
|
|
72
|
+
const supTypes = getTypesFromCredentialSupported(sup);
|
|
73
73
|
if (!supTypes.includes('VerifiableCredential')) {
|
|
74
74
|
supTypes.push('VerifiableCredential');
|
|
75
75
|
}
|
|
@@ -82,6 +82,26 @@ function getSupportedCredential(opts) {
|
|
|
82
82
|
return credentialSupportedOverlap;
|
|
83
83
|
}
|
|
84
84
|
exports.getSupportedCredential = getSupportedCredential;
|
|
85
|
+
function getTypesFromCredentialSupported(credentialSupported, opts) {
|
|
86
|
+
let types = [];
|
|
87
|
+
if (credentialSupported.format === 'jwt_vc_json' ||
|
|
88
|
+
credentialSupported.format === 'jwt_vc' ||
|
|
89
|
+
credentialSupported.format === 'jwt_vc_json-ld' ||
|
|
90
|
+
credentialSupported.format === 'ldp_vc') {
|
|
91
|
+
types = credentialSupported.types;
|
|
92
|
+
}
|
|
93
|
+
else if (credentialSupported.format === 'vc+sd-jwt') {
|
|
94
|
+
types = [credentialSupported.vct];
|
|
95
|
+
}
|
|
96
|
+
if (!types || types.length === 0) {
|
|
97
|
+
throw Error('Could not deduce types from credential supported');
|
|
98
|
+
}
|
|
99
|
+
if (opts === null || opts === void 0 ? void 0 : opts.filterVerifiableCredential) {
|
|
100
|
+
return types.filter((type) => type !== 'VerifiableCredential');
|
|
101
|
+
}
|
|
102
|
+
return types;
|
|
103
|
+
}
|
|
104
|
+
exports.getTypesFromCredentialSupported = getTypesFromCredentialSupported;
|
|
85
105
|
function arrayEqualsIgnoreOrder(a, b) {
|
|
86
106
|
if (a.length !== b.length)
|
|
87
107
|
return false;
|
|
@@ -110,7 +130,7 @@ function credentialSupportedV8ToV11(key, supportedV8) {
|
|
|
110
130
|
throw Error(`Unknown format received ${JSON.stringify(format)}`);
|
|
111
131
|
}
|
|
112
132
|
let credentialSupport = {};
|
|
113
|
-
credentialSupport = Object.assign(Object.assign({ format, display: supportedV8.display }, credentialSupportBrief), { credentialSubject: supportedV8.claims });
|
|
133
|
+
credentialSupport = Object.assign(Object.assign({ format: format, display: supportedV8.display }, credentialSupportBrief), { credentialSubject: supportedV8.claims });
|
|
114
134
|
return credentialSupport;
|
|
115
135
|
});
|
|
116
136
|
}
|
|
@@ -121,4 +141,19 @@ function getIssuerDisplays(metadata, opts) {
|
|
|
121
141
|
return matchedDisplays.sort((item) => { var _a; return (item.locale ? (_a = opts === null || opts === void 0 ? void 0 : opts.prefLocales.indexOf(item.locale)) !== null && _a !== void 0 ? _a : 1 : Number.MAX_VALUE); });
|
|
122
142
|
}
|
|
123
143
|
exports.getIssuerDisplays = getIssuerDisplays;
|
|
144
|
+
/**
|
|
145
|
+
* TODO check again when WAL-617 is done to replace how we get the issuer name.
|
|
146
|
+
*/
|
|
147
|
+
function getIssuerName(url, credentialIssuerMetadata) {
|
|
148
|
+
if (credentialIssuerMetadata) {
|
|
149
|
+
const displays = credentialIssuerMetadata ? getIssuerDisplays(credentialIssuerMetadata) : [];
|
|
150
|
+
for (const display of displays) {
|
|
151
|
+
if (display.name) {
|
|
152
|
+
return display.name;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
return url;
|
|
157
|
+
}
|
|
158
|
+
exports.getIssuerName = getIssuerName;
|
|
124
159
|
//# sourceMappingURL=IssuerMetadataUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IssuerMetadataUtils.js","sourceRoot":"","sources":["../../lib/functions/IssuerMetadataUtils.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"IssuerMetadataUtils.js","sourceRoot":"","sources":["../../lib/functions/IssuerMetadataUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { SupportedEncodings } from 'uint8arrays/to-string';
|
|
2
|
+
import { CodeChallengeMethod } from '../types';
|
|
3
|
+
export declare const CODE_VERIFIER_DEFAULT_LENGTH = 128;
|
|
4
|
+
export declare const NONCE_LENGTH = 32;
|
|
5
|
+
export declare const generateRandomString: (length: number, encoding?: SupportedEncodings) => string;
|
|
6
|
+
export declare const generateNonce: (length?: number) => string;
|
|
7
|
+
export declare const generateCodeVerifier: (length?: number) => string;
|
|
8
|
+
export declare const createCodeChallenge: (codeVerifier: string, codeChallengeMethod?: CodeChallengeMethod) => string;
|
|
9
|
+
export declare const assertValidCodeVerifier: (codeVerifier: string) => void;
|
|
10
|
+
//# sourceMappingURL=RandomUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RandomUtils.d.ts","sourceRoot":"","sources":["../../lib/functions/RandomUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAI/C,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAChD,eAAO,MAAM,YAAY,KAAK,CAAC;AAE/B,eAAO,MAAM,oBAAoB,WAAY,MAAM,aAAa,kBAAkB,KAAG,MAEpF,CAAC;AAEF,eAAO,MAAM,aAAa,YAAa,MAAM,KAAG,MAE/C,CAAC;AACF,eAAO,MAAM,oBAAoB,YAAa,MAAM,KAAG,MAItD,CAAC;AAEF,eAAO,MAAM,mBAAmB,iBAAkB,MAAM,wBAAwB,mBAAmB,KAAG,MASrG,CAAC;AAEF,eAAO,MAAM,uBAAuB,iBAAkB,MAAM,SAO3D,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.assertValidCodeVerifier = exports.createCodeChallenge = exports.generateCodeVerifier = exports.generateNonce = exports.generateRandomString = exports.NONCE_LENGTH = exports.CODE_VERIFIER_DEFAULT_LENGTH = void 0;
|
|
30
|
+
const sha_js_1 = __importDefault(require("sha.js"));
|
|
31
|
+
const u8a = __importStar(require("uint8arrays"));
|
|
32
|
+
const types_1 = require("../types");
|
|
33
|
+
const randomBytes_1 = require("./randomBytes");
|
|
34
|
+
exports.CODE_VERIFIER_DEFAULT_LENGTH = 128;
|
|
35
|
+
exports.NONCE_LENGTH = 32;
|
|
36
|
+
const generateRandomString = (length, encoding) => {
|
|
37
|
+
return u8a.toString((0, randomBytes_1.randomBytes)(length), encoding).slice(0, length);
|
|
38
|
+
};
|
|
39
|
+
exports.generateRandomString = generateRandomString;
|
|
40
|
+
const generateNonce = (length) => {
|
|
41
|
+
return (0, exports.generateRandomString)(length !== null && length !== void 0 ? length : exports.NONCE_LENGTH);
|
|
42
|
+
};
|
|
43
|
+
exports.generateNonce = generateNonce;
|
|
44
|
+
const generateCodeVerifier = (length) => {
|
|
45
|
+
const codeVerifier = (0, exports.generateRandomString)(length !== null && length !== void 0 ? length : exports.CODE_VERIFIER_DEFAULT_LENGTH, 'base64url');
|
|
46
|
+
(0, exports.assertValidCodeVerifier)(codeVerifier);
|
|
47
|
+
return codeVerifier;
|
|
48
|
+
};
|
|
49
|
+
exports.generateCodeVerifier = generateCodeVerifier;
|
|
50
|
+
const createCodeChallenge = (codeVerifier, codeChallengeMethod) => {
|
|
51
|
+
if (codeChallengeMethod === types_1.CodeChallengeMethod.plain) {
|
|
52
|
+
return codeVerifier;
|
|
53
|
+
}
|
|
54
|
+
else if (!codeChallengeMethod || codeChallengeMethod === types_1.CodeChallengeMethod.S256) {
|
|
55
|
+
return u8a.toString((0, sha_js_1.default)('sha256').update(codeVerifier).digest(), 'base64url');
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
// Just a precaution if a new method would be introduced
|
|
59
|
+
throw Error(`code challenge method ${codeChallengeMethod} not implemented`);
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
exports.createCodeChallenge = createCodeChallenge;
|
|
63
|
+
const assertValidCodeVerifier = (codeVerifier) => {
|
|
64
|
+
const length = codeVerifier.length;
|
|
65
|
+
if (length < 43) {
|
|
66
|
+
throw Error(`code_verifier should have a minimum length of 43; see rfc7636`);
|
|
67
|
+
}
|
|
68
|
+
else if (length > 128) {
|
|
69
|
+
throw Error(`code_verifier should have a maximum length of 128; see rfc7636`);
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
exports.assertValidCodeVerifier = assertValidCodeVerifier;
|
|
73
|
+
//# sourceMappingURL=RandomUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RandomUtils.js","sourceRoot":"","sources":["../../lib/functions/RandomUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAyB;AACzB,iDAAmC;AAGnC,oCAA+C;AAE/C,+CAA4C;AAE/B,QAAA,4BAA4B,GAAG,GAAG,CAAC;AACnC,QAAA,YAAY,GAAG,EAAE,CAAC;AAExB,MAAM,oBAAoB,GAAG,CAAC,MAAc,EAAE,QAA6B,EAAU,EAAE;IAC5F,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAA,yBAAW,EAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACtE,CAAC,CAAC;AAFW,QAAA,oBAAoB,wBAE/B;AAEK,MAAM,aAAa,GAAG,CAAC,MAAe,EAAU,EAAE;IACvD,OAAO,IAAA,4BAAoB,EAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,oBAAY,CAAC,CAAC;AACtD,CAAC,CAAC;AAFW,QAAA,aAAa,iBAExB;AACK,MAAM,oBAAoB,GAAG,CAAC,MAAe,EAAU,EAAE;IAC9D,MAAM,YAAY,GAAG,IAAA,4BAAoB,EAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,oCAA4B,EAAE,WAAW,CAAC,CAAC;IAC/F,IAAA,+BAAuB,EAAC,YAAY,CAAC,CAAC;IACtC,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC;AAJW,QAAA,oBAAoB,wBAI/B;AAEK,MAAM,mBAAmB,GAAG,CAAC,YAAoB,EAAE,mBAAyC,EAAU,EAAE;IAC7G,IAAI,mBAAmB,KAAK,2BAAmB,CAAC,KAAK,EAAE,CAAC;QACtD,OAAO,YAAY,CAAC;IACtB,CAAC;SAAM,IAAI,CAAC,mBAAmB,IAAI,mBAAmB,KAAK,2BAAmB,CAAC,IAAI,EAAE,CAAC;QACpF,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAA,gBAAG,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,EAAE,WAAW,CAAC,CAAC;IAChF,CAAC;SAAM,CAAC;QACN,wDAAwD;QACxD,MAAM,KAAK,CAAC,yBAAyB,mBAAmB,kBAAkB,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC,CAAC;AATW,QAAA,mBAAmB,uBAS9B;AAEK,MAAM,uBAAuB,GAAG,CAAC,YAAoB,EAAE,EAAE;IAC9D,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;IACnC,IAAI,MAAM,GAAG,EAAE,EAAE,CAAC;QAChB,MAAM,KAAK,CAAC,+DAA+D,CAAC,CAAC;IAC/E,CAAC;SAAM,IAAI,MAAM,GAAG,GAAG,EAAE,CAAC;QACxB,MAAM,KAAK,CAAC,gEAAgE,CAAC,CAAC;IAChF,CAAC;AACH,CAAC,CAAC;AAPW,QAAA,uBAAuB,2BAOlC"}
|
|
@@ -1,5 +1,13 @@
|
|
|
1
|
+
import { randomBytes } from './randomBytes.js';
|
|
1
2
|
export * from './CredentialRequestUtil';
|
|
3
|
+
export * from './CredentialResponseUtil';
|
|
2
4
|
export * from './CredentialOfferUtil';
|
|
3
5
|
export * from './Encoding';
|
|
4
6
|
export * from './TypeConversionUtils';
|
|
7
|
+
export * from './IssuerMetadataUtils';
|
|
8
|
+
export * from './FormatUtils';
|
|
9
|
+
export * from './HttpUtils';
|
|
10
|
+
export * from './AuthorizationResponseUtil';
|
|
11
|
+
export { randomBytes };
|
|
12
|
+
export * from './RandomUtils';
|
|
5
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/functions/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/functions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,cAAc,eAAe,CAAC"}
|
package/dist/functions/index.js
CHANGED
|
@@ -14,8 +14,17 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.randomBytes = void 0;
|
|
18
|
+
const randomBytes_js_1 = require("./randomBytes.js");
|
|
19
|
+
Object.defineProperty(exports, "randomBytes", { enumerable: true, get: function () { return randomBytes_js_1.randomBytes; } });
|
|
17
20
|
__exportStar(require("./CredentialRequestUtil"), exports);
|
|
21
|
+
__exportStar(require("./CredentialResponseUtil"), exports);
|
|
18
22
|
__exportStar(require("./CredentialOfferUtil"), exports);
|
|
19
23
|
__exportStar(require("./Encoding"), exports);
|
|
20
24
|
__exportStar(require("./TypeConversionUtils"), exports);
|
|
25
|
+
__exportStar(require("./IssuerMetadataUtils"), exports);
|
|
26
|
+
__exportStar(require("./FormatUtils"), exports);
|
|
27
|
+
__exportStar(require("./HttpUtils"), exports);
|
|
28
|
+
__exportStar(require("./AuthorizationResponseUtil"), exports);
|
|
29
|
+
__exportStar(require("./RandomUtils"), exports);
|
|
21
30
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/functions/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/functions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qDAA+C;AAUtC,4FAVA,4BAAW,OAUA;AATpB,0DAAwC;AACxC,2DAAyC;AACzC,wDAAsC;AACtC,6CAA2B;AAC3B,wDAAsC;AACtC,wDAAsC;AACtC,gDAA8B;AAC9B,8CAA4B;AAC5B,8DAA4C;AAE5C,gDAA8B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"randomBytes.d.ts","sourceRoot":"","sources":["../../lib/functions/randomBytes.js"],"names":[],"mappings":";AAUA,oCAEC;;;;AAuBD,oDAsBC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
// limit of Crypto.getRandomValues()
|
|
3
|
+
// https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues
|
|
4
|
+
const MAX_BYTES = 65536;
|
|
5
|
+
// Node supports requesting up to this number of bytes
|
|
6
|
+
// https://github.com/nodejs/node/blob/master/lib/internal/crypto/random.js#L48
|
|
7
|
+
const MAX_UINT32 = 4294967295;
|
|
8
|
+
function oldBrowser() {
|
|
9
|
+
throw new Error('Secure random number generation is not supported by this browser.\nUse Chrome, Firefox or Internet Explorer 11');
|
|
10
|
+
}
|
|
11
|
+
// eslint-disable-next-line no-undef
|
|
12
|
+
const _global = typeof globalThis !== 'undefined' ? globalThis : global;
|
|
13
|
+
let crypto = _global.crypto || _global.msCrypto;
|
|
14
|
+
if (!crypto) {
|
|
15
|
+
try {
|
|
16
|
+
// eslint-disable-next-line no-undef
|
|
17
|
+
crypto = require('crypto');
|
|
18
|
+
}
|
|
19
|
+
catch (err) {
|
|
20
|
+
throw Error('crypto module is not available');
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
if (crypto && crypto.getRandomValues) {
|
|
24
|
+
// eslint-disable-next-line no-undef
|
|
25
|
+
module.exports = randomBytes;
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
// eslint-disable-next-line no-undef
|
|
29
|
+
module.exports = oldBrowser;
|
|
30
|
+
}
|
|
31
|
+
function randomBytes(size) {
|
|
32
|
+
// phantomjs needs to throw
|
|
33
|
+
if (size > MAX_UINT32)
|
|
34
|
+
throw new Error('requested too many random bytes');
|
|
35
|
+
// eslint-disable-next-line no-undef
|
|
36
|
+
const bytes = Buffer.allocUnsafe(size);
|
|
37
|
+
if (size > 0) {
|
|
38
|
+
// getRandomValues fails on IE if size == 0
|
|
39
|
+
if (size > MAX_BYTES) {
|
|
40
|
+
// this is the max bytes crypto.getRandomValues
|
|
41
|
+
// can do at once see https://developer.mozilla.org/en-US/docs/Web/API/window.crypto.getRandomValues
|
|
42
|
+
for (let generated = 0; generated < size; generated += MAX_BYTES) {
|
|
43
|
+
// buffer.slice automatically checks if the end is past the end of
|
|
44
|
+
// the buffer so we don't have to here
|
|
45
|
+
crypto.getRandomValues(bytes.slice(generated, generated + MAX_BYTES));
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
crypto.getRandomValues(bytes);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
return Uint8Array.from(bytes);
|
|
53
|
+
}
|
|
54
|
+
// eslint-disable-next-line no-undef
|
|
55
|
+
module.exports = { randomBytes };
|
|
56
|
+
//# sourceMappingURL=randomBytes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"randomBytes.js","sourceRoot":"","sources":["../../lib/functions/randomBytes.js"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,oCAAoC;AACpC,0EAA0E;AAC1E,MAAM,SAAS,GAAG,KAAK,CAAC;AAExB,sDAAsD;AACtD,+EAA+E;AAC/E,MAAM,UAAU,GAAG,UAAU,CAAC;AAE9B,SAAS,UAAU;IACjB,MAAM,IAAI,KAAK,CAAC,gHAAgH,CAAC,CAAC;AACpI,CAAC;AAED,oCAAoC;AACpC,MAAM,OAAO,GAAG,OAAO,UAAU,KAAK,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;AAExE,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,QAAQ,CAAC;AAChD,IAAI,CAAC,MAAM,EAAE,CAAC;IACZ,IAAI,CAAC;QACH,oCAAoC;QACpC,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,KAAK,CAAC,gCAAgC,CAAC,CAAC;IAChD,CAAC;AACH,CAAC;AAED,IAAI,MAAM,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;IACrC,oCAAoC;IACpC,MAAM,CAAC,OAAO,GAAG,WAAW,CAAC;AAC/B,CAAC;KAAM,CAAC;IACN,oCAAoC;IACpC,MAAM,CAAC,OAAO,GAAG,UAAU,CAAC;AAC9B,CAAC;AAED,SAAS,WAAW,CAAC,IAAI;IACvB,2BAA2B;IAC3B,IAAI,IAAI,GAAG,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAE1E,oCAAoC;IACpC,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEvC,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QACb,2CAA2C;QAC3C,IAAI,IAAI,GAAG,SAAS,EAAE,CAAC;YACrB,+CAA+C;YAC/C,oGAAoG;YACpG,KAAK,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,GAAG,IAAI,EAAE,SAAS,IAAI,SAAS,EAAE,CAAC;gBACjE,kEAAkE;gBAClE,sCAAsC;gBACtC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,oCAAoC;AACpC,MAAM,CAAC,OAAO,GAAG,EAAE,WAAW,EAAE,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CredentialOfferPayload, UniformCredentialOffer } from './CredentialIssuance.types';
|
|
2
|
-
import { ErrorResponse,
|
|
2
|
+
import { ErrorResponse, IssuerCredentialSubject, JsonLdIssuerCredentialDefinition, OID4VCICredentialFormat } from './Generic.types';
|
|
3
3
|
import { EndpointMetadata } from './ServerMetadata';
|
|
4
4
|
export interface CommonAuthorizationRequest {
|
|
5
5
|
/**
|
|
@@ -62,14 +62,17 @@ export interface CommonAuthorizationRequest {
|
|
|
62
62
|
/**
|
|
63
63
|
* string type added for conformity with our previous code in the client
|
|
64
64
|
*/
|
|
65
|
-
export type AuthorizationDetails = AuthorizationDetailsJwtVcJson |
|
|
66
|
-
export type AuthorizationRequest = AuthorizationRequestJwtVcJson |
|
|
65
|
+
export type AuthorizationDetails = (CommonAuthorizationDetails & (AuthorizationDetailsJwtVcJson | AuthorizationDetailsJwtVcJsonLdAndLdpVc | AuthorizationDetailsSdJwtVc)) | string;
|
|
66
|
+
export type AuthorizationRequest = AuthorizationRequestJwtVcJson | AuthorizationRequestJwtVcJsonLdAndLdpVc | AuthorizationRequestSdJwtVc;
|
|
67
67
|
export interface AuthorizationRequestJwtVcJson extends CommonAuthorizationRequest {
|
|
68
68
|
authorization_details?: AuthorizationDetailsJwtVcJson[];
|
|
69
69
|
}
|
|
70
70
|
export interface AuthorizationRequestJwtVcJsonLdAndLdpVc extends CommonAuthorizationRequest {
|
|
71
71
|
authorization_details?: AuthorizationDetailsJwtVcJsonLdAndLdpVc[];
|
|
72
72
|
}
|
|
73
|
+
export interface AuthorizationRequestSdJwtVc extends CommonAuthorizationRequest {
|
|
74
|
+
authorization_details?: AuthorizationDetailsSdJwtVc[];
|
|
75
|
+
}
|
|
73
76
|
export interface CommonAuthorizationDetails {
|
|
74
77
|
/**
|
|
75
78
|
* REQUIRED. JSON string that determines the authorization details type.
|
|
@@ -88,10 +91,10 @@ export interface CommonAuthorizationDetails {
|
|
|
88
91
|
* the authorization detail's locations common data field MUST be set to the Credential Issuer Identifier value.
|
|
89
92
|
*/
|
|
90
93
|
locations?: string[];
|
|
91
|
-
types: string[];
|
|
92
94
|
[key: string]: any;
|
|
93
95
|
}
|
|
94
96
|
export interface AuthorizationDetailsJwtVcJson extends CommonAuthorizationDetails {
|
|
97
|
+
format: 'jwt_vc_json' | 'jwt_vc';
|
|
95
98
|
/**
|
|
96
99
|
* A JSON object containing a list of key value pairs, where the key identifies the claim offered in the Credential.
|
|
97
100
|
* The value MAY be a dictionary, which allows to represent the full (potentially deeply nested) structure of the
|
|
@@ -99,8 +102,10 @@ export interface AuthorizationDetailsJwtVcJson extends CommonAuthorizationDetail
|
|
|
99
102
|
* credential to be issued.
|
|
100
103
|
*/
|
|
101
104
|
credentialSubject?: IssuerCredentialSubject;
|
|
105
|
+
types: string[];
|
|
102
106
|
}
|
|
103
107
|
export interface AuthorizationDetailsJwtVcJsonLdAndLdpVc extends CommonAuthorizationDetails {
|
|
108
|
+
format: 'ldp_vc' | 'jwt_vc_json-ld';
|
|
104
109
|
/**
|
|
105
110
|
* REQUIRED. JSON object containing (and isolating) the detailed description of the credential type.
|
|
106
111
|
* This object MUST be processed using full JSON-LD processing. It consists of the following sub-claims:
|
|
@@ -108,7 +113,12 @@ export interface AuthorizationDetailsJwtVcJsonLdAndLdpVc extends CommonAuthoriza
|
|
|
108
113
|
* - types: REQUIRED. JSON array as defined in Appendix E.1.3.2.
|
|
109
114
|
* This claim contains the type values the Wallet shall request in the subsequent Credential Request
|
|
110
115
|
*/
|
|
111
|
-
credential_definition:
|
|
116
|
+
credential_definition: JsonLdIssuerCredentialDefinition;
|
|
117
|
+
}
|
|
118
|
+
export interface AuthorizationDetailsSdJwtVc extends CommonAuthorizationDetails {
|
|
119
|
+
format: 'vc+sd-jwt';
|
|
120
|
+
vct: string;
|
|
121
|
+
claims?: IssuerCredentialSubject;
|
|
112
122
|
}
|
|
113
123
|
export declare enum GrantTypes {
|
|
114
124
|
AUTHORIZATION_CODE = "authorization_code",
|
|
@@ -123,8 +133,8 @@ export declare enum ResponseType {
|
|
|
123
133
|
AUTH_CODE = "code"
|
|
124
134
|
}
|
|
125
135
|
export declare enum CodeChallengeMethod {
|
|
126
|
-
|
|
127
|
-
|
|
136
|
+
plain = "plain",
|
|
137
|
+
S256 = "S256"
|
|
128
138
|
}
|
|
129
139
|
export interface AuthorizationServerOpts {
|
|
130
140
|
allowInsecureEndpoints?: boolean;
|
|
@@ -137,8 +147,12 @@ export interface IssuerOpts {
|
|
|
137
147
|
tokenEndpoint?: string;
|
|
138
148
|
fetchMetadata?: boolean;
|
|
139
149
|
}
|
|
150
|
+
export interface AccessTokenFromAuthorizationResponseOpts extends AccessTokenRequestOpts {
|
|
151
|
+
authorizationResponse: AuthorizationResponse;
|
|
152
|
+
}
|
|
140
153
|
export interface AccessTokenRequestOpts {
|
|
141
|
-
credentialOffer
|
|
154
|
+
credentialOffer?: UniformCredentialOffer;
|
|
155
|
+
credentialIssuer?: string;
|
|
142
156
|
asOpts?: AuthorizationServerOpts;
|
|
143
157
|
metadata?: EndpointMetadata;
|
|
144
158
|
codeVerifier?: string;
|
|
@@ -146,20 +160,55 @@ export interface AccessTokenRequestOpts {
|
|
|
146
160
|
redirectUri?: string;
|
|
147
161
|
pin?: string;
|
|
148
162
|
}
|
|
163
|
+
/**
|
|
164
|
+
* Determinse whether PAR should be used when supported
|
|
165
|
+
*
|
|
166
|
+
* REQUIRE: Require PAR, if AS does not support it throw an error
|
|
167
|
+
* AUTO: Use PAR is the AS supports it, otherwise construct a reqular URI,
|
|
168
|
+
* NEVER: Do not use PAR even if the AS supports it (not recommended)
|
|
169
|
+
*/
|
|
170
|
+
export declare enum PARMode {
|
|
171
|
+
REQUIRE = 0,
|
|
172
|
+
AUTO = 1,
|
|
173
|
+
NEVER = 2
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Optional options to provide PKCE params like code verifier and challenge yourself, or to disable PKCE altogether. If not provide PKCE will still be used! If individual params are not provide, they will be generated/calculated
|
|
177
|
+
*/
|
|
178
|
+
export interface PKCEOpts {
|
|
179
|
+
/**
|
|
180
|
+
* PKCE is enabled by default even if you do not provide these options. Set this to true to disable PKCE
|
|
181
|
+
*/
|
|
182
|
+
disabled?: boolean;
|
|
183
|
+
/**
|
|
184
|
+
* Provide a code_challenge, otherwise it will be calculated using the code_verifier and method
|
|
185
|
+
*/
|
|
186
|
+
codeChallenge?: string;
|
|
187
|
+
/**
|
|
188
|
+
* The code_challenge_method, should always by S256
|
|
189
|
+
*/
|
|
190
|
+
codeChallengeMethod?: CodeChallengeMethod;
|
|
191
|
+
/**
|
|
192
|
+
* Provide a code_verifier, otherwise it will be generated
|
|
193
|
+
*/
|
|
194
|
+
codeVerifier?: string;
|
|
195
|
+
}
|
|
149
196
|
export interface AuthorizationRequestOpts {
|
|
150
|
-
clientId
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
authorizationDetails?: AuthorizationDetails[];
|
|
154
|
-
redirectUri
|
|
197
|
+
clientId?: string;
|
|
198
|
+
pkce?: PKCEOpts;
|
|
199
|
+
parMode?: PARMode;
|
|
200
|
+
authorizationDetails?: AuthorizationDetails | AuthorizationDetails[];
|
|
201
|
+
redirectUri?: string;
|
|
155
202
|
scope?: string;
|
|
156
203
|
}
|
|
157
|
-
export interface
|
|
158
|
-
grant_type: string;
|
|
204
|
+
export interface AuthorizationResponse {
|
|
159
205
|
code: string;
|
|
160
206
|
scope?: string;
|
|
161
207
|
state?: string;
|
|
162
208
|
}
|
|
209
|
+
export interface AuthorizationGrantResponse extends AuthorizationResponse {
|
|
210
|
+
grant_type: string;
|
|
211
|
+
}
|
|
163
212
|
export interface AccessTokenRequest {
|
|
164
213
|
client_id?: string;
|
|
165
214
|
code?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Authorization.types.d.ts","sourceRoot":"","sources":["../../lib/types/Authorization.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,
|
|
1
|
+
{"version":3,"file":"Authorization.types.d.ts","sourceRoot":"","sources":["../../lib/types/Authorization.types.ts"],"names":[],"mappings":"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"}
|