@bundle-stats/ui 4.4.0 → 4.5.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/app/header/header.module.css +1 -0
- package/lib/assets/icons.svg +17 -11
- package/lib/assets/icons.svg.js +15 -11
- package/lib/assets/icons.svg.js.map +1 -1
- package/lib/components/bundle-assets/bundle-assets.js +3 -11
- package/lib/components/bundle-assets/bundle-assets.js.map +1 -1
- package/lib/components/bundle-assets/bundle-assets.utils.js +8 -20
- package/lib/components/bundle-assets/bundle-assets.utils.js.map +1 -1
- package/lib/components/bundle-assets/index.js +0 -2
- package/lib/components/bundle-assets/index.js.map +1 -1
- package/lib/components/bundle-modules/bundle-modules.js +2 -10
- package/lib/components/bundle-modules/bundle-modules.js.map +1 -1
- package/lib/components/bundle-modules/bundle-modules.utils.js +1 -13
- package/lib/components/bundle-modules/bundle-modules.utils.js.map +1 -1
- package/lib/components/bundle-modules/index.js +2 -4
- package/lib/components/bundle-modules/index.js.map +1 -1
- package/lib/components/bundle-packages/bundle-packages.js +2 -10
- package/lib/components/bundle-packages/bundle-packages.js.map +1 -1
- package/lib/components/bundle-packages/bundle-packages.utils.js +1 -13
- package/lib/components/bundle-packages/bundle-packages.utils.js.map +1 -1
- package/lib/components/bundle-packages/index.js +2 -4
- package/lib/components/bundle-packages/index.js.map +1 -1
- package/lib/components/jobs-header/jobs-header.js +2 -2
- package/lib/components/jobs-header/jobs-header.js.map +1 -1
- package/lib/components/metrics-table/metrics-table.js +47 -104
- package/lib/components/metrics-table/metrics-table.js.map +1 -1
- package/lib/components/metrics-table/metrics-table.module.css +18 -17
- package/lib/components/metrics-table-search/metrics-table-search.js +1 -1
- package/lib/components/metrics-table-search/metrics-table-search.js.map +1 -1
- package/lib/components/metrics-table-title/metrics-table-title.js +2 -2
- package/lib/components/metrics-table-title/metrics-table-title.js.map +1 -1
- package/lib/components/metrics-table-title/metrics-table-title.module.css +3 -1
- package/lib/components/{job-header → sort-button}/index.js +1 -1
- package/lib/components/sort-button/index.js.map +1 -0
- package/lib/components/sort-button/sort-button.js +73 -0
- package/lib/components/sort-button/sort-button.js.map +1 -0
- package/lib/components/sort-button/sort-button.module.css +89 -0
- package/lib/components/total-size-type-title/total-size-type-title.js +1 -1
- package/lib/components/total-size-type-title/total-size-type-title.js.map +1 -1
- package/lib/constants.js +5 -1
- package/lib/constants.js.map +1 -1
- package/lib/hooks/rows-sort.js +13 -5
- package/lib/hooks/rows-sort.js.map +1 -1
- package/lib/ui/icon/icon.js +2 -0
- package/lib/ui/icon/icon.js.map +1 -1
- package/lib/ui/index.js +1 -3
- package/lib/ui/index.js.map +1 -1
- package/lib-esm/app/header/header.module.css +1 -0
- package/lib-esm/assets/icons.svg +17 -11
- package/lib-esm/assets/icons.svg.js +15 -11
- package/lib-esm/assets/icons.svg.js.map +1 -1
- package/lib-esm/components/bundle-assets/bundle-assets.js +3 -11
- package/lib-esm/components/bundle-assets/bundle-assets.js.map +1 -1
- package/lib-esm/components/bundle-assets/bundle-assets.utils.js +8 -21
- package/lib-esm/components/bundle-assets/bundle-assets.utils.js.map +1 -1
- package/lib-esm/components/bundle-assets/index.js +0 -2
- package/lib-esm/components/bundle-assets/index.js.map +1 -1
- package/lib-esm/components/bundle-modules/bundle-modules.js +2 -10
- package/lib-esm/components/bundle-modules/bundle-modules.js.map +1 -1
- package/lib-esm/components/bundle-modules/bundle-modules.utils.js +1 -14
- package/lib-esm/components/bundle-modules/bundle-modules.utils.js.map +1 -1
- package/lib-esm/components/bundle-modules/index.js +2 -4
- package/lib-esm/components/bundle-modules/index.js.map +1 -1
- package/lib-esm/components/bundle-packages/bundle-packages.js +2 -10
- package/lib-esm/components/bundle-packages/bundle-packages.js.map +1 -1
- package/lib-esm/components/bundle-packages/bundle-packages.utils.js +1 -14
- package/lib-esm/components/bundle-packages/bundle-packages.utils.js.map +1 -1
- package/lib-esm/components/bundle-packages/index.js +2 -4
- package/lib-esm/components/bundle-packages/index.js.map +1 -1
- package/lib-esm/components/jobs-header/jobs-header.js +2 -2
- package/lib-esm/components/jobs-header/jobs-header.js.map +1 -1
- package/lib-esm/components/metrics-table/metrics-table.js +47 -81
- package/lib-esm/components/metrics-table/metrics-table.js.map +1 -1
- package/lib-esm/components/metrics-table/metrics-table.module.css +18 -17
- package/lib-esm/components/metrics-table-search/metrics-table-search.js +1 -1
- package/lib-esm/components/metrics-table-search/metrics-table-search.js.map +1 -1
- package/lib-esm/components/metrics-table-title/metrics-table-title.js +2 -2
- package/lib-esm/components/metrics-table-title/metrics-table-title.js.map +1 -1
- package/lib-esm/components/metrics-table-title/metrics-table-title.module.css +3 -1
- package/lib-esm/components/sort-button/index.js +2 -0
- package/lib-esm/components/sort-button/index.js.map +1 -0
- package/lib-esm/components/sort-button/sort-button.js +43 -0
- package/lib-esm/components/sort-button/sort-button.js.map +1 -0
- package/lib-esm/components/sort-button/sort-button.module.css +89 -0
- package/lib-esm/components/total-size-type-title/total-size-type-title.js +1 -1
- package/lib-esm/components/total-size-type-title/total-size-type-title.js.map +1 -1
- package/lib-esm/constants.js +4 -0
- package/lib-esm/constants.js.map +1 -1
- package/lib-esm/hooks/rows-sort.js +11 -4
- package/lib-esm/hooks/rows-sort.js.map +1 -1
- package/lib-esm/ui/icon/icon.js +2 -0
- package/lib-esm/ui/icon/icon.js.map +1 -1
- package/lib-esm/ui/index.js +0 -1
- package/lib-esm/ui/index.js.map +1 -1
- package/package.json +5 -5
- package/src/app/header/header.module.css +1 -0
- package/src/assets/icons/chevron-down.svg +1 -0
- package/src/assets/icons/chevron-up.svg +1 -0
- package/src/assets/icons/github.svg +1 -1
- package/src/assets/icons.svg +17 -11
- package/src/assets/icons.svg.jsx +25 -11
- package/src/components/bundle-assets/bundle-assets.jsx +3 -10
- package/src/components/bundle-assets/bundle-assets.utils.js +8 -24
- package/src/components/bundle-assets/index.jsx +0 -2
- package/src/components/bundle-modules/bundle-modules.jsx +2 -14
- package/src/components/bundle-modules/bundle-modules.utils.js +1 -17
- package/src/components/bundle-modules/index.jsx +2 -4
- package/src/components/bundle-packages/bundle-packages.jsx +2 -9
- package/src/components/bundle-packages/bundle-packages.utils.js +1 -17
- package/src/components/bundle-packages/index.jsx +2 -4
- package/src/components/jobs-header/jobs-header.tsx +2 -2
- package/src/components/metrics-table/metrics-table.jsx +142 -132
- package/src/components/metrics-table/metrics-table.module.css +18 -17
- package/src/components/metrics-table-search/metrics-table-search.jsx +1 -1
- package/src/components/metrics-table-title/metrics-table-title.jsx +2 -2
- package/src/components/metrics-table-title/metrics-table-title.module.css +3 -1
- package/src/components/sort-button/index.ts +1 -0
- package/src/components/sort-button/sort-button.module.css +89 -0
- package/src/components/sort-button/sort-button.tsx +108 -0
- package/src/components/total-size-type-title/total-size-type-title.jsx +1 -1
- package/src/constants.js +5 -0
- package/src/hooks/rows-sort.ts +48 -0
- package/src/types.d.ts +4 -0
- package/src/ui/icon/icon.tsx +2 -0
- package/src/ui/index.js +0 -1
- package/types/components/bundle-assets/bundle-assets.d.ts +0 -1
- package/types/components/bundle-assets/bundle-assets.utils.d.ts +1 -1
- package/types/components/bundle-modules/bundle-modules.d.ts +1 -3
- package/types/components/bundle-modules/bundle-modules.utils.d.ts +1 -1
- package/types/components/bundle-packages/bundle-packages.d.ts +0 -1
- package/types/components/bundle-packages/bundle-packages.utils.d.ts +1 -1
- package/types/components/metrics-table/metrics-table.d.ts +3 -7
- package/types/components/sort-button/index.d.ts +1 -0
- package/types/components/sort-button/sort-button.d.ts +11 -0
- package/types/constants.d.ts +4 -0
- package/types/hooks/rows-sort.d.ts +14 -11
- package/types/ui/icon/icon.d.ts +4 -0
- package/types/ui/index.d.ts +0 -1
- package/lib/components/bundle-assets/bundle-assets.constants.js +0 -21
- package/lib/components/bundle-assets/bundle-assets.constants.js.map +0 -1
- package/lib/components/bundle-modules/bundle-modules.constants.js +0 -21
- package/lib/components/bundle-modules/bundle-modules.constants.js.map +0 -1
- package/lib/components/bundle-packages/bundle-packages.constants.js +0 -21
- package/lib/components/bundle-packages/bundle-packages.constants.js.map +0 -1
- package/lib/components/job-header/index.js.map +0 -1
- package/lib/components/job-header/job-header.js +0 -54
- package/lib/components/job-header/job-header.js.map +0 -1
- package/lib/components/job-header/job-header.module.css +0 -19
- package/lib/ui/sort-dropdown/index.js +0 -18
- package/lib/ui/sort-dropdown/index.js.map +0 -1
- package/lib/ui/sort-dropdown/sort-dropdown.js +0 -101
- package/lib/ui/sort-dropdown/sort-dropdown.js.map +0 -1
- package/lib/ui/sort-dropdown/sort-dropdown.module.css +0 -22
- package/lib-esm/components/bundle-assets/bundle-assets.constants.js +0 -18
- package/lib-esm/components/bundle-assets/bundle-assets.constants.js.map +0 -1
- package/lib-esm/components/bundle-modules/bundle-modules.constants.js +0 -18
- package/lib-esm/components/bundle-modules/bundle-modules.constants.js.map +0 -1
- package/lib-esm/components/bundle-packages/bundle-packages.constants.js +0 -18
- package/lib-esm/components/bundle-packages/bundle-packages.constants.js.map +0 -1
- package/lib-esm/components/job-header/index.js +0 -2
- package/lib-esm/components/job-header/index.js.map +0 -1
- package/lib-esm/components/job-header/job-header.js +0 -47
- package/lib-esm/components/job-header/job-header.js.map +0 -1
- package/lib-esm/components/job-header/job-header.module.css +0 -19
- package/lib-esm/ui/sort-dropdown/index.js +0 -2
- package/lib-esm/ui/sort-dropdown/index.js.map +0 -1
- package/lib-esm/ui/sort-dropdown/sort-dropdown.js +0 -71
- package/lib-esm/ui/sort-dropdown/sort-dropdown.js.map +0 -1
- package/lib-esm/ui/sort-dropdown/sort-dropdown.module.css +0 -22
- package/src/components/bundle-assets/bundle-assets.constants.js +0 -18
- package/src/components/bundle-modules/bundle-modules.constants.js +0 -18
- package/src/components/bundle-packages/bundle-packages.constants.js +0 -18
- package/src/components/job-header/index.js +0 -1
- package/src/components/job-header/job-header.jsx +0 -69
- package/src/components/job-header/job-header.module.css +0 -19
- package/src/hooks/rows-sort.js +0 -24
- package/src/ui/sort-dropdown/index.js +0 -1
- package/src/ui/sort-dropdown/sort-dropdown.jsx +0 -121
- package/src/ui/sort-dropdown/sort-dropdown.module.css +0 -22
- package/types/components/bundle-assets/bundle-assets.constants.d.ts +0 -21
- package/types/components/bundle-modules/bundle-modules.constants.d.ts +0 -21
- package/types/components/bundle-packages/bundle-packages.constants.d.ts +0 -21
- package/types/components/job-header/index.d.ts +0 -1
- package/types/components/job-header/job-header.d.ts +0 -26
- package/types/ui/sort-dropdown/index.d.ts +0 -1
- package/types/ui/sort-dropdown/sort-dropdown.d.ts +0 -24
|
@@ -1,76 +1,48 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import cx from 'classnames';
|
|
4
4
|
import isEmpty from 'lodash/isEmpty';
|
|
5
5
|
import sum from 'lodash/sum';
|
|
6
6
|
import { METRIC_TYPE_FILE_SIZE, getGlobalMetricType, getMetricRunInfo } from '@bundle-stats/utils';
|
|
7
|
+
import { Icon } from '../../ui/icon';
|
|
7
8
|
import { Table } from '../../ui/table';
|
|
9
|
+
import { Stack } from '../../layout/stack';
|
|
8
10
|
import { Metric } from '../metric';
|
|
9
11
|
import { Delta } from '../delta';
|
|
10
12
|
import { JobName } from '../job-name';
|
|
13
|
+
import { SortButton } from '../sort-button';
|
|
11
14
|
import styles from './metrics-table.module.css';
|
|
12
15
|
const METRIC_TYPE_DATA = getGlobalMetricType(null, METRIC_TYPE_FILE_SIZE);
|
|
13
16
|
const VISIBLE_COUNT = 500;
|
|
17
|
+
const BASELINE_COLUMN_SPAN = 1;
|
|
18
|
+
const CURRENT_COLUMN_SPAN = 3;
|
|
19
|
+
const BASELINE_TITLE = 'Baseline';
|
|
20
|
+
const CURRENT_TITLE = 'Current';
|
|
14
21
|
const getRowsRunTotal = (rows, runIndex) => sum(rows.map((row) => { var _a, _b; return ((_b = (_a = row === null || row === void 0 ? void 0 : row.runs) === null || _a === void 0 ? void 0 : _a[runIndex]) === null || _b === void 0 ? void 0 : _b.value) || 0; }));
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
const className = cx(styles.value, isBaseline ? styles.baseline : styles.current);
|
|
22
|
+
const ColumnJob = ({ run, isBaseline }) => {
|
|
23
|
+
const colSpan = isBaseline ? BASELINE_COLUMN_SPAN : CURRENT_COLUMN_SPAN;
|
|
18
24
|
if (!run) {
|
|
19
|
-
return
|
|
20
|
-
{ children: '-', className },
|
|
21
|
-
...(!isBaseline ? [{ children: ' ', className: styles.delta }] : []),
|
|
22
|
-
];
|
|
25
|
+
return React.createElement(Table.Th, { colSpan: colSpan }, "-");
|
|
23
26
|
}
|
|
24
27
|
const { label, internalBuildNumber } = run;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
{ children: jobName, className },
|
|
28
|
-
...(!isBaseline ? [{ children: ' ', className: cx(styles.delta) }] : []),
|
|
29
|
-
];
|
|
28
|
+
return (React.createElement(Table.Th, { className: styles.job, colSpan: colSpan },
|
|
29
|
+
React.createElement(JobName, { title: isBaseline ? BASELINE_TITLE : CURRENT_TITLE, internalBuildNumber: internalBuildNumber, className: styles.jobName }, label)));
|
|
30
30
|
};
|
|
31
|
-
const
|
|
32
|
-
const isBaseline = runIndex === runs.length - 1;
|
|
33
|
-
const className = cx(styles.value, isBaseline ? styles.baseline : styles.current);
|
|
31
|
+
const ColumnSum = ({ rows, isBaseline, runIndex, updateSort, sort }) => {
|
|
34
32
|
const currentRunTotal = getRowsRunTotal(rows, runIndex);
|
|
35
33
|
const baselineRunTotal = !isBaseline && getRowsRunTotal(rows, runIndex + 1);
|
|
36
34
|
const infoTotal = getMetricRunInfo(METRIC_TYPE_DATA, currentRunTotal, baselineRunTotal);
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
className: styles.delta,
|
|
47
|
-
},
|
|
48
|
-
]
|
|
49
|
-
: []),
|
|
50
|
-
];
|
|
35
|
+
const fieldPath = `runs[${runIndex}]`;
|
|
36
|
+
return (React.createElement(React.Fragment, null,
|
|
37
|
+
React.createElement(Table.Th, { className: cx(styles.value, styles.sum) }, (updateSort && sort) ? (React.createElement(SortButton, { fieldPath: fieldPath, fieldName: "value", label: "absolute value", updateSort: updateSort, sort: sort },
|
|
38
|
+
React.createElement(Metric, { value: infoTotal.displayValue }))) : (React.createElement(Metric, { value: infoTotal.displayValue }))),
|
|
39
|
+
!isBaseline && (React.createElement(React.Fragment, null,
|
|
40
|
+
React.createElement(Table.Th, { className: cx(styles.delta, styles.sum) }, (updateSort && sort) ? (React.createElement(SortButton, { fieldPath: fieldPath, fieldName: "delta", label: "absolute change", updateSort: updateSort, sort: sort },
|
|
41
|
+
React.createElement(Delta, { displayValue: infoTotal.displayDelta, deltaType: infoTotal.deltaType }))) : (React.createElement(Delta, { displayValue: infoTotal.displayDelta, deltaType: infoTotal.deltaType }))),
|
|
42
|
+
React.createElement(Table.Th, { className: cx(styles.delta, styles.sum) }, (updateSort && sort) ? (React.createElement(SortButton, { fieldPath: fieldPath, fieldName: "deltaPercentage", label: "absolute percentual change", updateSort: updateSort, sort: sort },
|
|
43
|
+
React.createElement(Delta, { displayValue: infoTotal.displayDeltaPercentage, deltaType: infoTotal.deltaType }))) : (React.createElement(Delta, { displayValue: infoTotal.displayDeltaPercentage, deltaType: infoTotal.deltaType })))))));
|
|
51
44
|
};
|
|
52
|
-
const
|
|
53
|
-
{
|
|
54
|
-
className: styles.headerRowColumns,
|
|
55
|
-
cells: [
|
|
56
|
-
{
|
|
57
|
-
children: title || ' ',
|
|
58
|
-
className: styles.metricName,
|
|
59
|
-
rowSpan: showHeaderSum ? 2 : 1,
|
|
60
|
-
},
|
|
61
|
-
...runs.map(getHeaderLabelCells(items)).flat(),
|
|
62
|
-
],
|
|
63
|
-
},
|
|
64
|
-
...(showHeaderSum
|
|
65
|
-
? [
|
|
66
|
-
{
|
|
67
|
-
className: styles.headerRowTotals,
|
|
68
|
-
cells: runs.map(getHeaderTotalCells(items)).flat(),
|
|
69
|
-
},
|
|
70
|
-
]
|
|
71
|
-
: []),
|
|
72
|
-
];
|
|
73
|
-
const MetricsTableRow = ({ item, renderRowHeader }) => (React.createElement(Table.Tr, { className: cx(!item.changed && styles.unchanged) },
|
|
45
|
+
const Row = ({ item, renderRowHeader }) => (React.createElement(Table.Tr, { className: cx(!item.changed && styles.unchanged) },
|
|
74
46
|
React.createElement(Table.Th, { className: styles.metricName }, renderRowHeader(item)),
|
|
75
47
|
item.runs.map((run, index) => {
|
|
76
48
|
const isBaseline = index === item.runs.length - 1;
|
|
@@ -78,16 +50,20 @@ const MetricsTableRow = ({ item, renderRowHeader }) => (React.createElement(Tabl
|
|
|
78
50
|
if (!run || typeof run.value === 'undefined') {
|
|
79
51
|
return (React.createElement(React.Fragment, null,
|
|
80
52
|
React.createElement(Table.Td, { className: valueClassName }, "-"),
|
|
81
|
-
!isBaseline && React.createElement(Table.Td, { className: styles.delta })
|
|
53
|
+
!isBaseline && React.createElement(Table.Td, { className: styles.delta }),
|
|
54
|
+
!isBaseline && React.createElement(Table.Td, { className: cx(styles.delta, styles.deltaPercentage) })));
|
|
82
55
|
}
|
|
83
|
-
const { displayValue, deltaPercentage, displayDeltaPercentage, deltaType } = run;
|
|
56
|
+
const { displayValue, deltaPercentage, displayDelta, displayDeltaPercentage, deltaType } = run;
|
|
84
57
|
return (React.createElement(React.Fragment, null,
|
|
85
58
|
React.createElement(Table.Td, { className: valueClassName },
|
|
86
59
|
React.createElement(Metric, { value: displayValue })),
|
|
87
|
-
!isBaseline && typeof deltaPercentage === 'number' && (React.createElement(
|
|
88
|
-
React.createElement(
|
|
60
|
+
!isBaseline && typeof deltaPercentage === 'number' && (React.createElement(React.Fragment, null,
|
|
61
|
+
React.createElement(Table.Td, { className: styles.delta },
|
|
62
|
+
React.createElement(Delta, { displayValue: displayDelta, deltaType: deltaType })),
|
|
63
|
+
React.createElement(Table.Td, { className: cx(styles.delta, styles.deltaPercentage) },
|
|
64
|
+
React.createElement(Delta, { displayValue: displayDeltaPercentage, deltaType: deltaType }))))));
|
|
89
65
|
})));
|
|
90
|
-
|
|
66
|
+
Row.propTypes = {
|
|
91
67
|
item: PropTypes.shape({
|
|
92
68
|
changed: PropTypes.bool,
|
|
93
69
|
runs: PropTypes.arrayOf(PropTypes.shape({
|
|
@@ -100,40 +76,36 @@ MetricsTableRow.propTypes = {
|
|
|
100
76
|
}).isRequired,
|
|
101
77
|
renderRowHeader: PropTypes.func.isRequired,
|
|
102
78
|
};
|
|
103
|
-
export const MetricsTable = ({ className, renderRowHeader, runs, items, emptyMessage, showHeaderSum,
|
|
104
|
-
const
|
|
105
|
-
const headerColumns = getHeaderRows(runs, items, showHeaderSum, title);
|
|
106
|
-
return {
|
|
107
|
-
headers: [...headerRows, ...headerColumns],
|
|
108
|
-
columnClassNames: headerColumns[0].cells.map((headerColumn) => headerColumn.className),
|
|
109
|
-
};
|
|
110
|
-
}, [headerRows, runs, items, showHeaderSum, title]);
|
|
79
|
+
export const MetricsTable = ({ className, renderRowHeader, runs, items, emptyMessage, showHeaderSum, title, showAllItems, setShowAllItems, sort, updateSort, ...restProps }) => {
|
|
80
|
+
const columnCount = (runs.length - 1) * CURRENT_COLUMN_SPAN + BASELINE_COLUMN_SPAN + 1;
|
|
111
81
|
const rootClassName = cx(styles.root, className, runs.length > 1 && styles.multipleRuns, showHeaderSum && styles.showHeaderSum);
|
|
112
82
|
const showEmpty = isEmpty(items);
|
|
113
83
|
const showItems = !showEmpty;
|
|
114
84
|
const hasHiddenItems = (items === null || items === void 0 ? void 0 : items.length) > VISIBLE_COUNT;
|
|
115
85
|
const visibleItems = !hasHiddenItems || showAllItems ? items : items === null || items === void 0 ? void 0 : items.slice(0, VISIBLE_COUNT);
|
|
116
86
|
return (React.createElement(Table, { className: rootClassName, compact: true, ...restProps },
|
|
117
|
-
React.createElement(Table.THead, null,
|
|
118
|
-
|
|
119
|
-
?
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
})),
|
|
87
|
+
React.createElement(Table.THead, null,
|
|
88
|
+
React.createElement(Table.Tr, { className: styles.headerRow },
|
|
89
|
+
React.createElement(Table.Th, { className: styles.metricName, rowSpan: showHeaderSum ? 2 : 1 }, title || ' '),
|
|
90
|
+
runs.map((run, runIndex) => (React.createElement(ColumnJob, { run: run, isBaseline: runIndex === runs.length - 1 })))),
|
|
91
|
+
showHeaderSum && (React.createElement(Table.Tr, { className: styles.headerRow }, runs.map((run, runIndex) => (React.createElement(ColumnSum, { rows: items, isBaseline: runIndex === runs.length - 1, runIndex: runIndex, updateSort: updateSort, sort: sort })))))),
|
|
123
92
|
React.createElement(Table.TBody, null,
|
|
124
93
|
showEmpty && (React.createElement(Table.Tr, null,
|
|
125
|
-
React.createElement(Table.Td, { className: styles.empty, colSpan:
|
|
94
|
+
React.createElement(Table.Td, { className: styles.empty, colSpan: columnCount },
|
|
95
|
+
React.createElement(Stack, { space: "xxsmall" },
|
|
96
|
+
React.createElement("div", null,
|
|
97
|
+
React.createElement(Icon, { glyph: Icon.ICONS.INFO, className: styles.emptyIcon, size: "large" })),
|
|
98
|
+
emptyMessage)))),
|
|
126
99
|
showItems && (React.createElement(React.Fragment, null,
|
|
127
|
-
visibleItems.map((item) => (React.createElement(
|
|
100
|
+
visibleItems.map((item) => (React.createElement(Row, { key: item.key, item: item, renderRowHeader: renderRowHeader }))),
|
|
128
101
|
hasHiddenItems && (React.createElement(Table.Tr, null,
|
|
129
|
-
React.createElement(Table.Td, { className: styles.showAllItems, colSpan:
|
|
102
|
+
React.createElement(Table.Td, { className: styles.showAllItems, colSpan: columnCount }, showAllItems ? (React.createElement("button", { onClick: () => setShowAllItems(false), type: "button", className: styles.showAllItemsButton }, "Show less")) : (React.createElement("button", { onClick: () => setShowAllItems(true), type: "button", className: styles.showAllItemsButton }, "Show all"))))))))));
|
|
130
103
|
};
|
|
131
104
|
MetricsTable.defaultProps = {
|
|
132
105
|
className: '',
|
|
133
106
|
renderRowHeader: (item) => item.label,
|
|
134
107
|
emptyMessage: 'No entries found.',
|
|
135
108
|
showHeaderSum: false,
|
|
136
|
-
headerRows: [],
|
|
137
109
|
title: '',
|
|
138
110
|
};
|
|
139
111
|
MetricsTable.propTypes = {
|
|
@@ -152,12 +124,6 @@ MetricsTable.propTypes = {
|
|
|
152
124
|
})).isRequired,
|
|
153
125
|
emptyMessage: PropTypes.element,
|
|
154
126
|
showHeaderSum: PropTypes.bool,
|
|
155
|
-
headerRows: PropTypes.arrayOf(PropTypes.arrayOf(PropTypes.oneOfType([
|
|
156
|
-
PropTypes.element,
|
|
157
|
-
PropTypes.shape({
|
|
158
|
-
children: PropTypes.node,
|
|
159
|
-
}),
|
|
160
|
-
]))),
|
|
161
127
|
title: PropTypes.element,
|
|
162
128
|
};
|
|
163
129
|
//# sourceMappingURL=metrics-table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metrics-table.js","sourceRoot":"","sources":["../../../src/components/metrics-table/metrics-table.jsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"metrics-table.js","sourceRoot":"","sources":["../../../src/components/metrics-table/metrics-table.jsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,OAAO,MAAM,gBAAgB,CAAC;AACrC,OAAO,GAAG,MAAM,YAAY,CAAC;AAC7B,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEnG,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAEhD,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;AAC1E,MAAM,aAAa,GAAG,GAAG,CAAC;AAC1B,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAC/B,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,cAAc,GAAG,UAAU,CAAC;AAClC,MAAM,aAAa,GAAG,SAAS,CAAC;AAEhC,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CACzC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,eAAC,OAAA,CAAA,MAAA,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,0CAAG,QAAQ,CAAC,0CAAE,KAAK,KAAI,CAAC,CAAA,EAAA,CAAC,CAAC,CAAC;AAE5D,MAAM,SAAS,GAAG,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE;IACxC,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,mBAAmB,CAAC;IAExE,IAAI,CAAC,GAAG,EAAE;QACR,OAAO,oBAAC,KAAK,CAAC,EAAE,IAAC,OAAO,EAAE,OAAO,QAAc,CAAC;KACjD;IAED,MAAM,EAAE,KAAK,EAAE,mBAAmB,EAAE,GAAG,GAAG,CAAC;IAE3C,OAAO,CACL,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO;QAC/C,oBAAC,OAAO,IACN,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,EAClD,mBAAmB,EAAE,mBAAmB,EACxC,SAAS,EAAE,MAAM,CAAC,OAAO,IAExB,KAAK,CACE,CACD,CACZ,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE;IACrE,MAAM,eAAe,GAAG,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACxD,MAAM,gBAAgB,GAAG,CAAC,UAAU,IAAI,eAAe,CAAC,IAAI,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;IAC5E,MAAM,SAAS,GAAG,gBAAgB,CAAC,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC;IACxF,MAAM,SAAS,GAAG,QAAQ,QAAQ,GAAG,CAAC;IAEtC,OAAO,CACL;QACE,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,IAC9C,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CACtB,oBAAC,UAAU,IACT,SAAS,EAAE,SAAS,EACpB,SAAS,EAAC,OAAO,EACjB,KAAK,EAAC,gBAAgB,EACtB,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI;YAEV,oBAAC,MAAM,IAAC,KAAK,EAAE,SAAS,CAAC,YAAY,GAAI,CAC9B,CACd,CAAC,CAAC,CAAC,CACF,oBAAC,MAAM,IAAC,KAAK,EAAE,SAAS,CAAC,YAAY,GAAI,CAC1C,CACQ;QACV,CAAC,UAAU,IAAI,CACd;YACE,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,IAC9C,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CACtB,oBAAC,UAAU,IACT,SAAS,EAAE,SAAS,EACpB,SAAS,EAAC,OAAO,EACjB,KAAK,EAAC,iBAAiB,EACvB,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI;gBAEV,oBAAC,KAAK,IAAC,YAAY,EAAE,SAAS,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,GAAI,CACpE,CACd,CAAC,CAAC,CAAC,CACF,oBAAC,KAAK,IAAC,YAAY,EAAE,SAAS,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,GAAI,CAChF,CACQ;YACX,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,IAC9C,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CACtB,oBAAC,UAAU,IACT,SAAS,EAAE,SAAS,EACpB,SAAS,EAAC,iBAAiB,EAC3B,KAAK,EAAC,4BAA4B,EAClC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI;gBAEV,oBAAC,KAAK,IACJ,YAAY,EAAE,SAAS,CAAC,sBAAsB,EAC9C,SAAS,EAAE,SAAS,CAAC,SAAS,GAC9B,CACS,CACd,CAAC,CAAC,CAAC,CACF,oBAAC,KAAK,IACJ,YAAY,EAAE,SAAS,CAAC,sBAAsB,EAC9C,SAAS,EAAE,SAAS,CAAC,SAAS,GAC9B,CACH,CACQ,CACV,CACJ,CACA,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC,CACzC,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,SAAS,CAAC;IACxD,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,MAAM,CAAC,UAAU,IAAG,eAAe,CAAC,IAAI,CAAC,CAAY;IAEzE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QAC5B,MAAM,UAAU,GAAG,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAClD,MAAM,cAAc,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC;QAGvE,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,WAAW,EAAE;YAC5C,OAAO,CACL;gBACE,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,cAAc,QAAc;gBAChD,CAAC,UAAU,IAAI,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,MAAM,CAAC,KAAK,GAAI;gBACpD,CAAC,UAAU,IAAI,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC,GAAI,CAChF,CACJ,CAAC;SACH;QAED,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,sBAAsB,EAAE,SAAS,EAAE,GACtF,GAAG,CAAC;QAEN,OAAO,CACL;YACE,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,cAAc;gBACjC,oBAAC,MAAM,IAAC,KAAK,EAAE,YAAY,GAAI,CACtB;YACV,CAAC,UAAU,IAAI,OAAO,eAAe,KAAK,QAAQ,IAAI,CACrD;gBACE,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,MAAM,CAAC,KAAK;oBAC/B,oBAAC,KAAK,IAAC,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,GAAI,CAClD;gBACX,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC;oBAC3D,oBAAC,KAAK,IAAC,YAAY,EAAE,sBAAsB,EAAE,SAAS,EAAE,SAAS,GAAI,CAC5D,CACV,CACJ,CACA,CACJ,CAAC;IACJ,CAAC,CAAC,CACO,CACZ,CAAC;AAEF,GAAG,CAAC,SAAS,GAAG;IACd,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC;QACpB,OAAO,EAAE,SAAS,CAAC,IAAI;QACvB,IAAI,EAAE,SAAS,CAAC,OAAO,CACrB,SAAS,CAAC,KAAK,CAAC;YACd,KAAK,EAAE,SAAS,CAAC,MAAM;YACvB,YAAY,EAAE,SAAS,CAAC,MAAM;YAC9B,eAAe,EAAE,SAAS,CAAC,MAAM;YACjC,sBAAsB,EAAE,SAAS,CAAC,MAAM;YACxC,SAAS,EAAE,SAAS,CAAC,MAAM;SAC5B,CAAC,CACH;KACF,CAAC,CAAC,UAAU;IACb,eAAe,EAAE,SAAS,CAAC,IAAI,CAAC,UAAU;CAC3C,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAC3B,SAAS,EACT,eAAe,EACf,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,aAAa,EACb,KAAK,EACL,YAAY,EACZ,eAAe,EACf,IAAI,EACJ,UAAU,EACV,GAAG,SAAS,EACb,EAAE,EAAE;IACH,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,mBAAmB,GAAG,oBAAoB,GAAG,CAAC,CAAC;IAEvF,MAAM,aAAa,GAAG,EAAE,CACtB,MAAM,CAAC,IAAI,EACX,SAAS,EACT,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,YAAY,EACtC,aAAa,IAAI,MAAM,CAAC,aAAa,CACtC,CAAC;IAEF,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,SAAS,GAAG,CAAC,SAAS,CAAC;IAC7B,MAAM,cAAc,GAAG,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,IAAG,aAAa,CAAC;IACrD,MAAM,YAAY,GAAG,CAAC,cAAc,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;IAE9F,OAAO,CACL,oBAAC,KAAK,IAAC,SAAS,EAAE,aAAa,EAAE,OAAO,WAAK,SAAS;QACpD,oBAAC,KAAK,CAAC,KAAK;YACV,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,MAAM,CAAC,SAAS;gBACnC,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IACnE,KAAK,IAAI,GAAG,CACJ;gBACV,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,CAC3B,oBAAC,SAAS,IAAC,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,QAAQ,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,GAAI,CAClE,CAAC,CACO;YACV,aAAa,IAAI,CAChB,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,MAAM,CAAC,SAAS,IAClC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,CAC3B,oBAAC,SAAS,IACR,IAAI,EAAE,KAAK,EACX,UAAU,EAAE,QAAQ,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,EACxC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI,GACV,CACH,CAAC,CACO,CACZ,CACW;QACd,oBAAC,KAAK,CAAC,KAAK;YACT,SAAS,IAAI,CACZ,oBAAC,KAAK,CAAC,EAAE;gBACP,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW;oBACrD,oBAAC,KAAK,IAAC,KAAK,EAAC,SAAS;wBACpB;4BACE,oBAAC,IAAI,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,IAAI,EAAC,OAAO,GAAG,CACtE;wBACL,YAAY,CACP,CACC,CACF,CACZ;YAEA,SAAS,IAAI,CACZ;gBACG,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAC1B,oBAAC,GAAG,IAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,eAAe,GAAI,CACrE,CAAC;gBAED,cAAc,IAAI,CACjB,oBAAC,KAAK,CAAC,EAAE;oBACP,oBAAC,KAAK,CAAC,EAAE,IAAC,SAAS,EAAE,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,WAAW,IAC3D,YAAY,CAAC,CAAC,CAAC,CACd,gCACE,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,EACrC,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,MAAM,CAAC,kBAAkB,gBAG7B,CACV,CAAC,CAAC,CAAC,CACF,gCACE,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,EACpC,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,MAAM,CAAC,kBAAkB,eAG7B,CACV,CACQ,CACF,CACZ,CACA,CACJ,CACW,CACR,CACT,CAAC;AACJ,CAAC,CAAC;AAEF,YAAY,CAAC,YAAY,GAAG;IAC1B,SAAS,EAAE,EAAE;IACb,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK;IACrC,YAAY,EAAE,mBAAmB;IACjC,aAAa,EAAE,KAAK;IACpB,KAAK,EAAE,EAAE;CACV,CAAC;AAEF,YAAY,CAAC,SAAS,GAAG;IACvB,SAAS,EAAE,SAAS,CAAC,MAAM;IAC3B,eAAe,EAAE,SAAS,CAAC,IAAI;IAC/B,IAAI,EAAE,SAAS,CAAC,OAAO,CACrB,SAAS,CAAC,KAAK,CAAC;QACd,mBAAmB,EAAE,SAAS,CAAC,MAAM;KACtC,CAAC,CACH,CAAC,UAAU;IACZ,KAAK,EAAE,SAAS,CAAC,OAAO,CACtB,SAAS,CAAC,KAAK,CAAC;QACd,GAAG,EAAE,SAAS,CAAC,MAAM;QACrB,KAAK,EAAE,SAAS,CAAC,MAAM;QACvB,IAAI,EAAE,SAAS,CAAC,OAAO,CACrB,SAAS,CAAC,KAAK,CAAC;YACd,YAAY,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;YACvE,YAAY,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;SACxE,CAAC,CACH;KACF,CAAC,CACH,CAAC,UAAU;IACZ,YAAY,EAAE,SAAS,CAAC,OAAO;IAC/B,aAAa,EAAE,SAAS,CAAC,IAAI;IAC7B,KAAK,EAAE,SAAS,CAAC,OAAO;CACzB,CAAC"}
|
|
@@ -15,8 +15,9 @@
|
|
|
15
15
|
width: 100%;
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
-
.
|
|
19
|
-
|
|
18
|
+
.root .job {
|
|
19
|
+
padding-right: calc(var(--space-xxxsmall) + var(--space-small));
|
|
20
|
+
text-align: right;
|
|
20
21
|
}
|
|
21
22
|
|
|
22
23
|
.root .value {
|
|
@@ -26,18 +27,13 @@
|
|
|
26
27
|
}
|
|
27
28
|
|
|
28
29
|
.root .delta {
|
|
29
|
-
|
|
30
|
-
text-align: left;
|
|
30
|
+
text-align: right;
|
|
31
31
|
font-size: var(--size-xsmall);
|
|
32
32
|
vertical-align: baseline;
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
.root tbody .delta {
|
|
36
|
-
line-height: 1.6rem; /* baseline alignment with the value */
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
.root .value.current {
|
|
40
|
-
padding-right: var(--space-xxsmall);
|
|
36
|
+
line-height: 1.6rem; /* baseline alignment with the column value */
|
|
41
37
|
}
|
|
42
38
|
|
|
43
39
|
.jobName {
|
|
@@ -45,17 +41,16 @@
|
|
|
45
41
|
}
|
|
46
42
|
|
|
47
43
|
/* columns overrides for showHeaderSum */
|
|
48
|
-
.showHeaderSum .
|
|
49
|
-
.showHeaderSum .headerRowColumns .delta {
|
|
44
|
+
.showHeaderSum .headerRow .job {
|
|
50
45
|
border-bottom: 0;
|
|
51
46
|
padding-bottom: 0;
|
|
52
47
|
}
|
|
53
48
|
|
|
54
|
-
.
|
|
55
|
-
padding-top:
|
|
56
|
-
font-
|
|
57
|
-
font-size: var(--size-xsmall);
|
|
49
|
+
.showHeaderSum .headerRow .sum {
|
|
50
|
+
padding-top: var(--space-xxxsmall);
|
|
51
|
+
font-size: var(--size-small);
|
|
58
52
|
vertical-align: middle;
|
|
53
|
+
text-transform: none;
|
|
59
54
|
}
|
|
60
55
|
|
|
61
56
|
/** rows */
|
|
@@ -66,11 +61,17 @@
|
|
|
66
61
|
|
|
67
62
|
.root .empty {
|
|
68
63
|
background: none !important;
|
|
69
|
-
padding-top: var(--space-xxxlarge);
|
|
70
|
-
padding-bottom: var(--space-xxxlarge);
|
|
64
|
+
padding-top: calc(var(--space-xxxlarge) * 2);
|
|
65
|
+
padding-bottom: calc(var(--space-xxxlarge) * 2);
|
|
71
66
|
text-align: center;
|
|
72
67
|
}
|
|
73
68
|
|
|
69
|
+
.emptyIcon {
|
|
70
|
+
color: var(--color-outline-dark);
|
|
71
|
+
width: var(--space-large);
|
|
72
|
+
height: var(--space-large);
|
|
73
|
+
}
|
|
74
|
+
|
|
74
75
|
.root .showAllItems {
|
|
75
76
|
background: none !important;
|
|
76
77
|
text-align: center;
|
|
@@ -28,7 +28,7 @@ export const MetricsTableSearch = (props) => {
|
|
|
28
28
|
return (React.createElement("div", { className: rootClassname },
|
|
29
29
|
React.createElement(Input, { className: css.input, placeholder: placeholder, onChange: handleChangeValue, value: value, size: "small", autoComplete: "off" }),
|
|
30
30
|
search && (React.createElement("button", { className: css.cancelButton, type: "button", onClick: handleClearValue },
|
|
31
|
-
React.createElement(Icon, { className: css.cancelButtonIcon, glyph:
|
|
31
|
+
React.createElement(Icon, { className: css.cancelButtonIcon, glyph: Icon.ICONS.CANCEL })))));
|
|
32
32
|
};
|
|
33
33
|
MetricsTableSearch.propTypes = {
|
|
34
34
|
className: PropTypes.string,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metrics-table-search.js","sourceRoot":"","sources":["../../../src/components/metrics-table-search/metrics-table-search.jsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAEvC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,GAAG,MAAM,mCAAmC,CAAC;AAEpD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,EAAE;IAC1C,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;IAC/D,MAAM,aAAa,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAE9C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAG3C,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,MAAM,qBAAqB,GAAG,WAAW,CAAC,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IAE3E,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,KAAK,EAAE,EAAE;QACR,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QACpC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAGnB,IAAI,QAAQ,KAAK,MAAM,EAAE;YACvB,qBAAqB,CAAC,QAAQ,CAAC,CAAC;SACjC;IACH,CAAC,EACD,CAAC,MAAM,CAAC,CACT,CAAC;IAEF,MAAM,gBAAgB,GAAG,WAAW,CAAC,GAAG,EAAE;QACxC,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACnB,YAAY,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,6BAAK,SAAS,EAAE,aAAa;QAC3B,oBAAC,KAAK,IACJ,SAAS,EAAE,GAAG,CAAC,KAAK,EACpB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,EAAE,KAAK,EACZ,IAAI,EAAC,OAAO,EACZ,YAAY,EAAC,KAAK,GAClB;QACD,MAAM,IAAI,CACT,gCAAQ,SAAS,EAAE,GAAG,CAAC,YAAY,EAAE,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAE,gBAAgB;YAC1E,oBAAC,IAAI,IAAC,SAAS,EAAE,GAAG,CAAC,gBAAgB,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"metrics-table-search.js","sourceRoot":"","sources":["../../../src/components/metrics-table-search/metrics-table-search.jsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAEvC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,GAAG,MAAM,mCAAmC,CAAC;AAEpD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,EAAE;IAC1C,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;IAC/D,MAAM,aAAa,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAE9C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAG3C,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,MAAM,qBAAqB,GAAG,WAAW,CAAC,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IAE3E,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,KAAK,EAAE,EAAE;QACR,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QACpC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAGnB,IAAI,QAAQ,KAAK,MAAM,EAAE;YACvB,qBAAqB,CAAC,QAAQ,CAAC,CAAC;SACjC;IACH,CAAC,EACD,CAAC,MAAM,CAAC,CACT,CAAC;IAEF,MAAM,gBAAgB,GAAG,WAAW,CAAC,GAAG,EAAE;QACxC,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACnB,YAAY,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,6BAAK,SAAS,EAAE,aAAa;QAC3B,oBAAC,KAAK,IACJ,SAAS,EAAE,GAAG,CAAC,KAAK,EACpB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,EAAE,KAAK,EACZ,IAAI,EAAC,OAAO,EACZ,YAAY,EAAC,KAAK,GAClB;QACD,MAAM,IAAI,CACT,gCAAQ,SAAS,EAAE,GAAG,CAAC,YAAY,EAAE,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAE,gBAAgB;YAC1E,oBAAC,IAAI,IAAC,SAAS,EAAE,GAAG,CAAC,gBAAgB,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAI,CAC5D,CACV,CACG,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAkB,CAAC,SAAS,GAAG;IAC7B,SAAS,EAAE,SAAS,CAAC,MAAM;IAC3B,WAAW,EAAE,SAAS,CAAC,MAAM;IAC7B,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,UAAU;IACnC,YAAY,EAAE,SAAS,CAAC,IAAI,CAAC,UAAU;CACxC,CAAC;AAEF,kBAAkB,CAAC,YAAY,GAAG;IAChC,SAAS,EAAE,EAAE;IACb,WAAW,EAAE,EAAE;CAChB,CAAC"}
|
|
@@ -10,10 +10,10 @@ import css from './metrics-table-title.module.css';
|
|
|
10
10
|
export const MetricsTableTitle = (props) => {
|
|
11
11
|
const { className, title, info, popoverInfo, popoverHref } = props;
|
|
12
12
|
const rootClassName = cx(css.root, className);
|
|
13
|
-
return (React.createElement(Stack, { className: rootClassName },
|
|
13
|
+
return (React.createElement(Stack, { space: "xxsmall", className: rootClassName },
|
|
14
14
|
React.createElement(FlexStack, { space: "xxxsmall", alignItems: "center", as: "h3", className: css.title },
|
|
15
15
|
React.createElement("span", null, title),
|
|
16
|
-
(popoverInfo || popoverHref) && (React.createElement(HoverCard, { label: React.createElement(Icon, { glyph:
|
|
16
|
+
(popoverInfo || popoverHref) && (React.createElement(HoverCard, { label: React.createElement(Icon, { glyph: Icon.ICONS.HELP, className: css.anchorIcon }), anchorClassName: css.anchor },
|
|
17
17
|
React.createElement(Stack, { space: "xxxsmall" },
|
|
18
18
|
popoverInfo && React.createElement("p", null, popoverInfo),
|
|
19
19
|
popoverHref && (React.createElement("p", null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metrics-table-title.js","sourceRoot":"","sources":["../../../src/components/metrics-table-title/metrics-table-title.jsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,IAAI,MAAM,YAAY,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,GAAG,MAAM,kCAAkC,CAAC;AAEnD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,EAAE;IACzC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IACnE,MAAM,aAAa,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAE9C,OAAO,CACL,oBAAC,KAAK,IAAC,SAAS,EAAE,aAAa;
|
|
1
|
+
{"version":3,"file":"metrics-table-title.js","sourceRoot":"","sources":["../../../src/components/metrics-table-title/metrics-table-title.jsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,IAAI,MAAM,YAAY,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,GAAG,MAAM,kCAAkC,CAAC;AAEnD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,EAAE;IACzC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IACnE,MAAM,aAAa,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAE9C,OAAO,CACL,oBAAC,KAAK,IAAC,KAAK,EAAC,SAAS,EAAC,SAAS,EAAE,aAAa;QAC7C,oBAAC,SAAS,IAAC,KAAK,EAAC,UAAU,EAAC,UAAU,EAAC,QAAQ,EAAC,EAAE,EAAC,IAAI,EAAC,SAAS,EAAE,GAAG,CAAC,KAAK;YAC1E,kCAAO,KAAK,CAAQ;YAEnB,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,CAC/B,oBAAC,SAAS,IAAC,KAAK,EAAE,oBAAC,IAAI,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,UAAU,GAAI,EAAE,eAAe,EAAE,GAAG,CAAC,MAAM;gBACxG,oBAAC,KAAK,IAAC,KAAK,EAAC,UAAU;oBACpB,WAAW,IAAI,+BAAI,WAAW,CAAK;oBACnC,WAAW,IAAI,CACd;wBACE,gCAAQ,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,YAAY,IACvF,IAAI,CAAC,SAAS,CACR,CACP,CACL,CACK,CACE,CACb,CACS;QACX,IAAI,IAAI,2BAAG,SAAS,EAAE,GAAG,CAAC,IAAI,IAAG,IAAI,CAAK,CACrC,CACT,CAAC;AACJ,CAAC,CAAC;AAEF,iBAAiB,CAAC,SAAS,GAAG;IAC5B,SAAS,EAAE,SAAS,CAAC,MAAM;IAC3B,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,UAAU;IAClC,IAAI,EAAE,SAAS,CAAC,IAAI;IACpB,WAAW,EAAE,SAAS,CAAC,MAAM;IAC7B,WAAW,EAAE,SAAS,CAAC,MAAM;CAC9B,CAAC;AAEF,iBAAiB,CAAC,YAAY,GAAG;IAC/B,SAAS,EAAE,EAAE;IACb,IAAI,EAAE,IAAI;IACV,WAAW,EAAE,EAAE;IACf,WAAW,EAAE,EAAE;CAChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/sort-button/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import React, { useCallback } from 'react';
|
|
2
|
+
import cx from 'classnames';
|
|
3
|
+
import { SORT } from '../../constants';
|
|
4
|
+
import { Icon } from '../../ui/icon';
|
|
5
|
+
import { Tooltip } from '../../ui/tooltip';
|
|
6
|
+
import css from './sort-button.module.css';
|
|
7
|
+
const getToggleAction = (sort, field, label) => {
|
|
8
|
+
if ((sort === null || sort === void 0 ? void 0 : sort.field) !== field) {
|
|
9
|
+
return { direction: SORT.DESC, title: `Order ${label} descending` };
|
|
10
|
+
}
|
|
11
|
+
if ((sort === null || sort === void 0 ? void 0 : sort.direction) === SORT.DESC) {
|
|
12
|
+
return { direction: SORT.ASC, title: `Order ${label} ascending` };
|
|
13
|
+
}
|
|
14
|
+
return { direction: '', title: 'Reset order' };
|
|
15
|
+
};
|
|
16
|
+
const getAscAction = (label) => {
|
|
17
|
+
return { direction: SORT.ASC, title: `Order ${label} ascending` };
|
|
18
|
+
};
|
|
19
|
+
const getDescAction = (label) => {
|
|
20
|
+
return { direction: SORT.DESC, title: `Order ${label} descending` };
|
|
21
|
+
};
|
|
22
|
+
export const SortButton = (props) => {
|
|
23
|
+
const { className = '', children, fieldPath, fieldName, label, sort, updateSort } = props;
|
|
24
|
+
const field = `${fieldPath}.${fieldName}`;
|
|
25
|
+
const toggleAction = getToggleAction(sort, field, label);
|
|
26
|
+
const ascAction = getAscAction(label);
|
|
27
|
+
const descAction = getDescAction(label);
|
|
28
|
+
const isSorted = sort.field === field;
|
|
29
|
+
const getOrderOnClick = useCallback((action) => () => {
|
|
30
|
+
if (action.direction) {
|
|
31
|
+
updateSort({ field, direction: action.direction });
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
updateSort({ field: '', direction: '' });
|
|
35
|
+
}, [field, updateSort, toggleAction]);
|
|
36
|
+
return (React.createElement("div", { className: cx(css.root, className, isSorted && css.active) },
|
|
37
|
+
React.createElement(Tooltip, { title: toggleAction.title, as: "button", type: "button", onClick: getOrderOnClick(toggleAction), className: cx(css.button, css.toggle) }, children),
|
|
38
|
+
React.createElement(Tooltip, { title: ascAction.title, as: "button", type: "button", onClick: getOrderOnClick(ascAction), className: cx(css.button, css.direction, css.directionAsc, isSorted && sort.direction === SORT.ASC && css.directionActive) },
|
|
39
|
+
React.createElement(Icon, { glyph: Icon.ICONS.CHEVRON_UP, size: "small", className: css.directionIcon })),
|
|
40
|
+
React.createElement(Tooltip, { title: descAction.title, as: "button", type: "button", onClick: getOrderOnClick(descAction), className: cx(css.button, css.direction, css.directionDesc, isSorted && sort.direction === SORT.DESC && css.directionActive) },
|
|
41
|
+
React.createElement(Icon, { glyph: Icon.ICONS.CHEVRON_DOWN, size: "small", className: css.directionIcon }))));
|
|
42
|
+
};
|
|
43
|
+
//# sourceMappingURL=sort-button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sort-button.js","sourceRoot":"","sources":["../../../src/components/sort-button/sort-button.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
.root {
|
|
2
|
+
--icon-dimension: 15px;
|
|
3
|
+
display: inline-block;
|
|
4
|
+
margin: calc(0px - var(--space-xxxsmall));
|
|
5
|
+
margin-right: calc(0px - 1px - var(--icon-dimension));
|
|
6
|
+
border-radius: var(--radius-small);
|
|
7
|
+
position: relative;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.button {
|
|
11
|
+
appearance: none;
|
|
12
|
+
cursor: pointer;
|
|
13
|
+
border: 0;
|
|
14
|
+
padding: 0;
|
|
15
|
+
margin: 0;
|
|
16
|
+
background: transparent;
|
|
17
|
+
transition: var(--transition-out);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.toggle {
|
|
21
|
+
padding: var(--space-xxxsmall);
|
|
22
|
+
padding-right: calc(1px + var(--icon-dimension));
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.direction {
|
|
26
|
+
position: absolute;
|
|
27
|
+
padding: 2px;
|
|
28
|
+
display: block;
|
|
29
|
+
overflow: hidden;
|
|
30
|
+
right: -2px; /* compensate for the button padding */
|
|
31
|
+
color: var(--color-text-ultra-light);
|
|
32
|
+
transition: var(--transition-out);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.directionIcon {
|
|
36
|
+
display: block;
|
|
37
|
+
width: var(--icon-dimension);
|
|
38
|
+
height: var(--icon-dimension);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.directionActive {
|
|
42
|
+
color: var(--color-text);
|
|
43
|
+
transition: var(--transition-in);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.direction:hover,
|
|
47
|
+
.direction:active,
|
|
48
|
+
.direction:focus {
|
|
49
|
+
color: var(--color-text-dark);
|
|
50
|
+
transition: var(--transition-in);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.directionAsc {
|
|
54
|
+
padding-bottom: 0;
|
|
55
|
+
bottom: 50%;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.directionAsc .directionIcon {
|
|
59
|
+
transform: translateY(3px);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.directionDesc {
|
|
63
|
+
padding-top: 0;
|
|
64
|
+
top: 50%;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.directionDesc .directionIcon {
|
|
68
|
+
transform: translateY(-5px);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.root:hover,
|
|
72
|
+
.root:active,
|
|
73
|
+
.root:focus {
|
|
74
|
+
background: var(--color-outline);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.direction {
|
|
78
|
+
pointer-events: none;
|
|
79
|
+
opacity: 0;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.active .direction,
|
|
83
|
+
.root:hover .direction,
|
|
84
|
+
.root:active .direction,
|
|
85
|
+
.root:focus .direction {
|
|
86
|
+
pointer-events: auto;
|
|
87
|
+
opacity: 1;
|
|
88
|
+
transition: var(--transition-in);
|
|
89
|
+
}
|
|
@@ -10,7 +10,7 @@ import { HoverCard } from '../../ui/hover-card';
|
|
|
10
10
|
import css from './total-size-type-title.module.css';
|
|
11
11
|
export const TotalSizeTypeTitle = ({ className }) => (React.createElement(FlexStack, { space: "xxxsmall", alignItems: "center", className: cx(css.root, className) },
|
|
12
12
|
React.createElement("span", { className: css.text }, I18N.ASSET_TOTALS),
|
|
13
|
-
React.createElement(HoverCard, { label: React.createElement(Icon, { glyph:
|
|
13
|
+
React.createElement(HoverCard, { label: React.createElement(Icon, { glyph: Icon.ICONS.HELP }), anchorClassName: css.anchor },
|
|
14
14
|
React.createElement(Stack, { space: "xxxsmall" },
|
|
15
15
|
React.createElement("p", null, I18N.ASSET_TOTALS_INFO),
|
|
16
16
|
React.createElement("p", null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"total-size-type-title.js","sourceRoot":"","sources":["../../../src/components/total-size-type-title/total-size-type-title.jsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,IAAI,MAAM,YAAY,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,GAAG,MAAM,oCAAoC,CAAC;AAErD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CACnD,oBAAC,SAAS,IAAC,KAAK,EAAC,UAAU,EAAC,UAAU,EAAC,QAAQ,EAAC,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC;IAChF,8BAAM,SAAS,EAAE,GAAG,CAAC,IAAI,IAAG,IAAI,CAAC,YAAY,CAAQ;IACrD,oBAAC,SAAS,IAAC,KAAK,EAAE,oBAAC,IAAI,IAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"total-size-type-title.js","sourceRoot":"","sources":["../../../src/components/total-size-type-title/total-size-type-title.jsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,IAAI,MAAM,YAAY,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,GAAG,MAAM,oCAAoC,CAAC;AAErD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CACnD,oBAAC,SAAS,IAAC,KAAK,EAAC,UAAU,EAAC,UAAU,EAAC,QAAQ,EAAC,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC;IAChF,8BAAM,SAAS,EAAE,GAAG,CAAC,IAAI,IAAG,IAAI,CAAC,YAAY,CAAQ;IACrD,oBAAC,SAAS,IAAC,KAAK,EAAE,oBAAC,IAAI,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,GAAI,EAAE,eAAe,EAAE,GAAG,CAAC,MAAM;QAC7E,oBAAC,KAAK,IAAC,KAAK,EAAC,UAAU;YACrB,+BAAI,IAAI,CAAC,iBAAiB,CAAK;YAC/B;gBACE,gCACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,EACvD,SAAS,EAAE,GAAG,CAAC,YAAY,IAE1B,IAAI,CAAC,SAAS,CACR,CACP,CACE,CACE,CACF,CACb,CAAC;AAEF,kBAAkB,CAAC,SAAS,GAAG;IAC7B,SAAS,EAAE,SAAS,CAAC,MAAM;CAC5B,CAAC;AAEF,kBAAkB,CAAC,YAAY,GAAG;IAChC,SAAS,EAAE,EAAE;CACd,CAAC"}
|
package/lib-esm/constants.js
CHANGED
|
@@ -28,4 +28,8 @@ export const METRICS_WEBPACK_MODULES = [
|
|
|
28
28
|
'webpack.duplicateCode',
|
|
29
29
|
];
|
|
30
30
|
export const METRICS_WEBPACK_PACKAGES = ['webpack.packageCount', 'webpack.duplicatePackagesCount'];
|
|
31
|
+
export const SORT = {
|
|
32
|
+
ASC: 'asc',
|
|
33
|
+
DESC: 'desc',
|
|
34
|
+
};
|
|
31
35
|
//# sourceMappingURL=constants.js.map
|
package/lib-esm/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE3D,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,QAAQ,EAAE,GAAG;IACb,MAAM,EAAE,SAAS;IACjB,OAAO,EAAE,UAAU;IACnB,QAAQ,EAAE,WAAW;CACtB,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,QAAQ;IAChC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM;IAC9B,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO;IAChC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ;CACnC,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,UAAU,CAAC,MAAM,CACzD,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;IAClB,GAAG,GAAG;IACN,CAAC,gCAAgC,QAAQ,EAAE,CAAC,EAAE,QAAQ;CACvD,CAAC,EACF,EAAE,CACH,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,4BAA4B;IAC5B,4BAA4B;IAC5B,6BAA6B;IAC7B,2BAA2B;CAC5B,CAAC;AACF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAC;AACnF,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,qBAAqB;IACrB,+BAA+B;IAC/B,uBAAuB;CACxB,CAAC;AACF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,sBAAsB,EAAE,gCAAgC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE3D,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,QAAQ,EAAE,GAAG;IACb,MAAM,EAAE,SAAS;IACjB,OAAO,EAAE,UAAU;IACnB,QAAQ,EAAE,WAAW;CACtB,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,QAAQ;IAChC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM;IAC9B,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO;IAChC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ;CACnC,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,UAAU,CAAC,MAAM,CACzD,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;IAClB,GAAG,GAAG;IACN,CAAC,gCAAgC,QAAQ,EAAE,CAAC,EAAE,QAAQ;CACvD,CAAC,EACF,EAAE,CACH,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,4BAA4B;IAC5B,4BAA4B;IAC5B,6BAA6B;IAC7B,2BAA2B;CAC5B,CAAC;AACF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAC;AACnF,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,qBAAqB;IACrB,+BAA+B;IAC/B,uBAAuB;CACxB,CAAC;AACF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,sBAAsB,EAAE,gCAAgC,CAAC,CAAC;AAEnG,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;CACb,CAAC"}
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
import { useState, useMemo } from 'react';
|
|
2
|
+
import get from 'lodash/get';
|
|
2
3
|
import orderBy from 'lodash/orderBy';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
import { SORT } from '../constants';
|
|
5
|
+
export const getSortFn = (fieldPath, getCustomSort) => (item) => {
|
|
6
|
+
if (!fieldPath) {
|
|
7
|
+
return getCustomSort(item);
|
|
8
|
+
}
|
|
9
|
+
return Math.abs(get(item, fieldPath) || 0);
|
|
10
|
+
};
|
|
11
|
+
export const useRowsSort = ({ rows, fieldPath = 'runs[0].delta', direction = 'desc', getCustomSort, }) => {
|
|
12
|
+
const [sort, updateSort] = useState({ field: fieldPath, direction });
|
|
13
|
+
const orderedRows = useMemo(() => orderBy(rows, getSortFn(sort.field, getCustomSort), direction !== '' ? direction : SORT.ASC), [rows, sort]);
|
|
6
14
|
return {
|
|
7
|
-
sortFields,
|
|
8
15
|
sort,
|
|
9
16
|
updateSort,
|
|
10
17
|
items: orderedRows,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rows-sort.js","sourceRoot":"","sources":["../../src/hooks/rows-sort.
|
|
1
|
+
{"version":3,"file":"rows-sort.js","sourceRoot":"","sources":["../../src/hooks/rows-sort.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,GAAG,MAAM,YAAY,CAAC;AAC7B,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAGrC,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AASpC,MAAM,CAAC,MAAM,SAAS,GACpB,CAAC,SAAiB,EAAE,aAAiD,EAAE,EAAE,CAAC,CAAC,IAAa,EAAE,EAAE;IAC1F,IAAI,CAAC,SAAS,EAAE;QACd,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;KAC5B;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7C,CAAC,CAAC;AAEJ,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAC1B,IAAI,EACJ,SAAS,GAAG,eAAe,EAC3B,SAAS,GAAG,MAAM,EAClB,aAAa,GACK,EAAE,EAAE;IACtB,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;IAErE,MAAM,WAAW,GAAG,OAAO,CACzB,GAAG,EAAE,CACH,OAAO,CACL,IAAI,EACJ,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,EAEpC,SAAS,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAE,IAAI,CAAC,GAAW,CACjD,EACH,CAAC,IAAI,EAAE,IAAI,CAAC,CACb,CAAC;IAEF,OAAO;QACL,IAAI;QACJ,UAAU;QACV,KAAK,EAAE,WAAW;KACnB,CAAC;AACJ,CAAC,CAAC"}
|