All files / libs/reporting/custom-reports/shared/src/lib/business/metrics keys.ts

100% Statements 13/13
100% Branches 3/3
100% Functions 1/1
100% Lines 13/13

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 141x 1x 1x 1x 1x 1x 2x 2x 1x 2x 2x 2x 2x  
import { sha1 } from 'object-hash';
 
const MAX_KEY_LENGTH = 30;
const SHA_LENGTH = 6;
 
export const generateCustomReportMetricIdentifierFromKey = (key: string) => {
  const truncatedKey =
    key.length > MAX_KEY_LENGTH
      ? `${key.slice(0, MAX_KEY_LENGTH - SHA_LENGTH - 1)}-${sha1(key).slice(0, SHA_LENGTH)}`
      : key;
 
  return `data_${truncatedKey}`;
};