add Utils used for u2f and webauthn
base64url parts copied from pbs render_u2f_error copied from pve Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
This commit is contained in:
parent
d3812684c2
commit
c7f2b15ac9
45
src/Utils.js
45
src/Utils.js
@ -1172,6 +1172,51 @@ utilities: {
|
||||
|
||||
return Proxmox.Utils.unknownText;
|
||||
},
|
||||
|
||||
render_u2f_error: function(error) {
|
||||
var ErrorNames = {
|
||||
'1': gettext('Other Error'),
|
||||
'2': gettext('Bad Request'),
|
||||
'3': gettext('Configuration Unsupported'),
|
||||
'4': gettext('Device Ineligible'),
|
||||
'5': gettext('Timeout'),
|
||||
};
|
||||
return "U2F Error: " + ErrorNames[error] || Proxmox.Utils.unknownText;
|
||||
},
|
||||
|
||||
// Convert an ArrayBuffer to a base64url encoded string.
|
||||
// A `null` value will be preserved for convenience.
|
||||
bytes_to_base64url: function(bytes) {
|
||||
if (bytes === null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return btoa(Array
|
||||
.from(new Uint8Array(bytes))
|
||||
.map(val => String.fromCharCode(val))
|
||||
.join(''),
|
||||
)
|
||||
.replace(/\+/g, '-')
|
||||
.replace(/\//g, '_')
|
||||
.replace(/[=]/g, '');
|
||||
},
|
||||
|
||||
// Convert an a base64url string to an ArrayBuffer.
|
||||
// A `null` value will be preserved for convenience.
|
||||
base64url_to_bytes: function(b64u) {
|
||||
if (b64u === null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return new Uint8Array(
|
||||
atob(b64u
|
||||
.replace(/-/g, '+')
|
||||
.replace(/_/g, '/'),
|
||||
)
|
||||
.split('')
|
||||
.map(val => val.charCodeAt(0)),
|
||||
);
|
||||
},
|
||||
},
|
||||
|
||||
singleton: true,
|
||||
|
Loading…
Reference in New Issue
Block a user