angular-auth-oidc-client
Version:
Angular Lib for OpenID Connect & OAuth2
82 lines • 6.96 kB
JavaScript
export function getVerifyAlg(alg) {
switch (alg.charAt(0)) {
case 'R':
return {
name: 'RSASSA-PKCS1-v1_5',
hash: 'SHA-256',
};
case 'E':
if (alg.includes('256')) {
return {
name: 'ECDSA',
hash: 'SHA-256',
};
}
else if (alg.includes('384')) {
return {
name: 'ECDSA',
hash: 'SHA-384',
};
}
else {
return null;
}
default:
return null;
}
}
export function alg2kty(alg) {
switch (alg.charAt(0)) {
case 'R':
return 'RSA';
case 'E':
return 'EC';
default:
throw new Error('Cannot infer kty from alg: ' + alg);
}
}
export function getImportAlg(alg) {
switch (alg.charAt(0)) {
case 'R':
if (alg.includes('256')) {
return {
name: 'RSASSA-PKCS1-v1_5',
hash: 'SHA-256',
};
}
else if (alg.includes('384')) {
return {
name: 'RSASSA-PKCS1-v1_5',
hash: 'SHA-384',
};
}
else if (alg.includes('512')) {
return {
name: 'RSASSA-PKCS1-v1_5',
hash: 'SHA-512',
};
}
else {
return null;
}
case 'E':
if (alg.includes('256')) {
return {
name: 'ECDSA',
namedCurve: 'P-256',
};
}
else if (alg.includes('384')) {
return {
name: 'ECDSA',
namedCurve: 'P-384',
};
}
else {
return null;
}
default:
return null;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4tdmFsaWRhdGlvbi5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF1dGgtb2lkYy1jbGllbnQvc3JjL2xpYi92YWxpZGF0aW9uL3Rva2VuLXZhbGlkYXRpb24uaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxZQUFZLENBQzFCLEdBQVc7SUFFWCxRQUFRLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUN0QixLQUFLLEdBQUc7WUFDTixPQUFPO2dCQUNMLElBQUksRUFBRSxtQkFBbUI7Z0JBQ3pCLElBQUksRUFBRSxTQUFTO2FBQ2hCLENBQUM7UUFDSixLQUFLLEdBQUc7WUFDTixJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDeEIsT0FBTztvQkFDTCxJQUFJLEVBQUUsT0FBTztvQkFDYixJQUFJLEVBQUUsU0FBUztpQkFDaEIsQ0FBQztZQUNKLENBQUM7aUJBQU0sSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQy9CLE9BQU87b0JBQ0wsSUFBSSxFQUFFLE9BQU87b0JBQ2IsSUFBSSxFQUFFLFNBQVM7aUJBQ2hCLENBQUM7WUFDSixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO1FBQ0g7WUFDRSxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0FBQ0gsQ0FBQztBQUVELE1BQU0sVUFBVSxPQUFPLENBQUMsR0FBVztJQUNqQyxRQUFRLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUN0QixLQUFLLEdBQUc7WUFDTixPQUFPLEtBQUssQ0FBQztRQUVmLEtBQUssR0FBRztZQUNOLE9BQU8sSUFBSSxDQUFDO1FBRWQ7WUFDRSxNQUFNLElBQUksS0FBSyxDQUFDLDZCQUE2QixHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBQ3pELENBQUM7QUFDSCxDQUFDO0FBRUQsTUFBTSxVQUFVLFlBQVksQ0FDMUIsR0FBVztJQUVYLFFBQVEsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3RCLEtBQUssR0FBRztZQUNOLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUN4QixPQUFPO29CQUNMLElBQUksRUFBRSxtQkFBbUI7b0JBQ3pCLElBQUksRUFBRSxTQUFTO2lCQUNoQixDQUFDO1lBQ0osQ0FBQztpQkFBTSxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDL0IsT0FBTztvQkFDTCxJQUFJLEVBQUUsbUJBQW1CO29CQUN6QixJQUFJLEVBQUUsU0FBUztpQkFDaEIsQ0FBQztZQUNKLENBQUM7aUJBQU0sSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQy9CLE9BQU87b0JBQ0wsSUFBSSxFQUFFLG1CQUFtQjtvQkFDekIsSUFBSSxFQUFFLFNBQVM7aUJBQ2hCLENBQUM7WUFDSixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO1FBQ0gsS0FBSyxHQUFHO1lBQ04sSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ3hCLE9BQU87b0JBQ0wsSUFBSSxFQUFFLE9BQU87b0JBQ2IsVUFBVSxFQUFFLE9BQU87aUJBQ3BCLENBQUM7WUFDSixDQUFDO2lCQUFNLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUMvQixPQUFPO29CQUNMLElBQUksRUFBRSxPQUFPO29CQUNiLFVBQVUsRUFBRSxPQUFPO2lCQUNwQixDQUFDO1lBQ0osQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE9BQU8sSUFBSSxDQUFDO1lBQ2QsQ0FBQztRQUNIO1lBQ0UsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gZ2V0VmVyaWZ5QWxnKFxuICBhbGc6IHN0cmluZ1xuKTogUnNhSGFzaGVkSW1wb3J0UGFyYW1zIHwgRWNkc2FQYXJhbXMgfCBudWxsIHtcbiAgc3dpdGNoIChhbGcuY2hhckF0KDApKSB7XG4gICAgY2FzZSAnUic6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBuYW1lOiAnUlNBU1NBLVBLQ1MxLXYxXzUnLFxuICAgICAgICBoYXNoOiAnU0hBLTI1NicsXG4gICAgICB9O1xuICAgIGNhc2UgJ0UnOlxuICAgICAgaWYgKGFsZy5pbmNsdWRlcygnMjU2JykpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBuYW1lOiAnRUNEU0EnLFxuICAgICAgICAgIGhhc2g6ICdTSEEtMjU2JyxcbiAgICAgICAgfTtcbiAgICAgIH0gZWxzZSBpZiAoYWxnLmluY2x1ZGVzKCczODQnKSkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG5hbWU6ICdFQ0RTQScsXG4gICAgICAgICAgaGFzaDogJ1NIQS0zODQnLFxuICAgICAgICB9O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBudWxsO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhbGcya3R5KGFsZzogc3RyaW5nKTogc3RyaW5nIHtcbiAgc3dpdGNoIChhbGcuY2hhckF0KDApKSB7XG4gICAgY2FzZSAnUic6XG4gICAgICByZXR1cm4gJ1JTQSc7XG5cbiAgICBjYXNlICdFJzpcbiAgICAgIHJldHVybiAnRUMnO1xuXG4gICAgZGVmYXVsdDpcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGluZmVyIGt0eSBmcm9tIGFsZzogJyArIGFsZyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEltcG9ydEFsZyhcbiAgYWxnOiBzdHJpbmdcbik6IFJzYUhhc2hlZEltcG9ydFBhcmFtcyB8IEVjS2V5SW1wb3J0UGFyYW1zIHwgbnVsbCB7XG4gIHN3aXRjaCAoYWxnLmNoYXJBdCgwKSkge1xuICAgIGNhc2UgJ1InOlxuICAgICAgaWYgKGFsZy5pbmNsdWRlcygnMjU2JykpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBuYW1lOiAnUlNBU1NBLVBLQ1MxLXYxXzUnLFxuICAgICAgICAgIGhhc2g6ICdTSEEtMjU2JyxcbiAgICAgICAgfTtcbiAgICAgIH0gZWxzZSBpZiAoYWxnLmluY2x1ZGVzKCczODQnKSkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG5hbWU6ICdSU0FTU0EtUEtDUzEtdjFfNScsXG4gICAgICAgICAgaGFzaDogJ1NIQS0zODQnLFxuICAgICAgICB9O1xuICAgICAgfSBlbHNlIGlmIChhbGcuaW5jbHVkZXMoJzUxMicpKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgbmFtZTogJ1JTQVNTQS1QS0NTMS12MV81JyxcbiAgICAgICAgICBoYXNoOiAnU0hBLTUxMicsXG4gICAgICAgIH07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICBjYXNlICdFJzpcbiAgICAgIGlmIChhbGcuaW5jbHVkZXMoJzI1NicpKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgbmFtZTogJ0VDRFNBJyxcbiAgICAgICAgICBuYW1lZEN1cnZlOiAnUC0yNTYnLFxuICAgICAgICB9O1xuICAgICAgfSBlbHNlIGlmIChhbGcuaW5jbHVkZXMoJzM4NCcpKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgbmFtZTogJ0VDRFNBJyxcbiAgICAgICAgICBuYW1lZEN1cnZlOiAnUC0zODQnLFxuICAgICAgICB9O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBudWxsO1xuICB9XG59XG4iXX0=