UNPKG

@sphereon/oid4vci-common

Version:

OpenID 4 Verifiable Credential Issuance Common Types

44 lines 1.58 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getFormatForVersion = exports.getUniformFormat = exports.isNotFormat = exports.isFormat = void 0; const types_1 = require("../types"); function isFormat(formatObject, format) { return formatObject.format === format; } exports.isFormat = isFormat; function isNotFormat(formatObject, format) { return formatObject.format !== format; } exports.isNotFormat = isNotFormat; const isUniformFormat = (format) => { return ['jwt_vc_json', 'jwt_vc_json-ld', 'ldp_vc', 'vc+sd-jwt', 'mso_mdoc'].includes(format); }; function getUniformFormat(format) { // Already valid format if (isUniformFormat(format)) { return format; } // Older formats if (format.toLocaleLowerCase() === 'jwt_vc' || format.toLocaleLowerCase() === 'jwt') { return 'jwt_vc'; } if (format === 'ldp_vc' || format === 'ldp') { return 'ldp_vc'; } throw new Error(`Invalid format: ${format}`); } exports.getUniformFormat = getUniformFormat; function getFormatForVersion(format, version) { const uniformFormat = isUniformFormat(format) ? format : getUniformFormat(format); if (version === types_1.OpenId4VCIVersion.VER_1_0_08) { if (uniformFormat === 'jwt_vc_json') { return 'jwt_vc'; } else if (uniformFormat === 'ldp_vc' || uniformFormat === 'jwt_vc_json-ld') { return 'ldp_vc'; } } return uniformFormat; } exports.getFormatForVersion = getFormatForVersion; //# sourceMappingURL=FormatUtils.js.map