summaryrefslogtreecommitdiff
path: root/src/components/Composables/useDataFormatter.js
blob: 9ba219c48a7c29ee542ce0a463c354b16012336b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/**
 * Composable for data formatting utilities
 * Extracted from DataFormatterMixin for use in Composition API
 */

export function useDataFormatter() {
  const dataFormatter = (value) => {
    if (value === undefined || value === null || value === '') {
      return '--';
    } else if (typeof value === 'number') {
      return parseFloat(value.toFixed(3));
    } else {
      return value;
    }
  };

  const statusIcon = (status) => {
    switch (status) {
      case 'OK':
        return 'success';
      case 'Warning':
        return 'warning';
      case 'Critical':
        return 'danger';
      default:
        return '';
    }
  };

  const dataFormatterArray = (value) => {
    return value.join(', ');
  };

  return {
    dataFormatter,
    statusIcon,
    dataFormatterArray,
  };
}