Files
nodewarden/public/web/vault-utils.js
T

45 lines
1.2 KiB
JavaScript

export function parseFieldType(v) {
if (v === null || v === undefined) return 0;
if (typeof v === 'number' && isFinite(v)) return v === 1 || v === 2 || v === 3 ? v : 0;
var s = String(v).trim().toLowerCase();
if (s === '1' || s === 'hidden') return 1;
if (s === '2' || s === 'boolean' || s === 'checkbox') return 2;
if (s === '3' || s === 'linked' || s === 'link') return 3;
return 0;
}
export function selectedCount(selectedMap) {
var n = 0;
for (var k in selectedMap) if (selectedMap[k]) n++;
return n;
}
export function cipherTypeKey(c) {
var tnum = Number(c && c.type || 1);
if (tnum === 1) return 'login';
if (tnum === 3) return 'card';
if (tnum === 4) return 'identity';
if (tnum === 2) return 'note';
return 'other';
}
export function hostFromUri(uri) {
if (!uri) return '';
try {
var normalized = /^https?:\/\//i.test(uri) ? uri : ('https://' + uri);
return new URL(normalized).hostname || '';
} catch (_) {
return '';
}
}
export function firstCipherUri(c) {
var uris = c && c.login && Array.isArray(c.login.uris) ? c.login.uris : [];
for (var i = 0; i < uris.length; i++) {
var u = uris[i] && (uris[i].decUri || uris[i].uri);
if (u) return u;
}
return '';
}