@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,101 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.SortDropdown = void 0;
|
|
30
|
-
const react_1 = __importStar(require("react"));
|
|
31
|
-
const prop_types_1 = __importDefault(require("prop-types"));
|
|
32
|
-
const classnames_1 = __importDefault(require("classnames"));
|
|
33
|
-
const dropdown_1 = require("../dropdown");
|
|
34
|
-
const icon_1 = require("../icon");
|
|
35
|
-
const sort_dropdown_module_css_1 = __importDefault(require("./sort-dropdown.module.css"));
|
|
36
|
-
const Item = ({ as: Component, id, label, isActive, direction, defaultDirection, getButtonOnClick, ...restProps }) => {
|
|
37
|
-
const buttonProps = (0, react_1.useMemo)(() => {
|
|
38
|
-
let resolveNextDirection = defaultDirection;
|
|
39
|
-
if (isActive) {
|
|
40
|
-
resolveNextDirection = direction === 'asc' ? 'desc' : 'asc';
|
|
41
|
-
}
|
|
42
|
-
if (resolveNextDirection === 'desc') {
|
|
43
|
-
return {
|
|
44
|
-
className: sort_dropdown_module_css_1.default.itemAsc,
|
|
45
|
-
onClick: getButtonOnClick(id, 'desc'),
|
|
46
|
-
title: `Order data by ${label} descending`,
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
return {
|
|
50
|
-
onClick: getButtonOnClick(id, 'asc'),
|
|
51
|
-
title: `Order data by ${label} ascending`,
|
|
52
|
-
};
|
|
53
|
-
}, [isActive, direction, defaultDirection, id, label]);
|
|
54
|
-
return (react_1.default.createElement(Component, { ...restProps, ...buttonProps, isActive: isActive, className: (0, classnames_1.default)(sort_dropdown_module_css_1.default.item, isActive && sort_dropdown_module_css_1.default.itemActive, buttonProps.className) },
|
|
55
|
-
react_1.default.createElement(icon_1.Icon, { className: sort_dropdown_module_css_1.default.itemIcon, glyph: "arrow" }),
|
|
56
|
-
react_1.default.createElement("span", { className: sort_dropdown_module_css_1.default.itemLabel }, label)));
|
|
57
|
-
};
|
|
58
|
-
Item.propTypes = {
|
|
59
|
-
className: prop_types_1.default.string,
|
|
60
|
-
as: prop_types_1.default.element.isRequired,
|
|
61
|
-
id: prop_types_1.default.string.isRequired,
|
|
62
|
-
label: prop_types_1.default.string.isRequired,
|
|
63
|
-
isActive: prop_types_1.default.bool.isRequired,
|
|
64
|
-
direction: prop_types_1.default.string.isRequired,
|
|
65
|
-
defaultDirection: prop_types_1.default.string.isRequired,
|
|
66
|
-
getButtonOnClick: prop_types_1.default.func.isRequired,
|
|
67
|
-
};
|
|
68
|
-
Item.defaultProps = {
|
|
69
|
-
className: '',
|
|
70
|
-
};
|
|
71
|
-
const SortDropdown = (props) => {
|
|
72
|
-
const { className, label, fields, field, direction, onChange } = props;
|
|
73
|
-
const rootClassName = (0, classnames_1.default)(sort_dropdown_module_css_1.default.root, className);
|
|
74
|
-
const customLabel = fields[field] ? `Ordered by ${fields[field].label}` : label;
|
|
75
|
-
return (react_1.default.createElement(dropdown_1.Dropdown, { className: rootClassName, label: customLabel, glyph: "sort", align: "right" }, ({ MenuItem, menu, menuItemClassName, menuItemActiveClassName }) => {
|
|
76
|
-
const getButtonOnClick = (newField, newDirection) => () => {
|
|
77
|
-
onChange({ field: newField, direction: newDirection });
|
|
78
|
-
menu.toggle();
|
|
79
|
-
};
|
|
80
|
-
return (react_1.default.createElement("div", { className: sort_dropdown_module_css_1.default.items }, Object.entries(fields).map(([key, item]) => (react_1.default.createElement(Item, { key: key, as: MenuItem, isActive: field === key, id: key, label: item.label, direction: direction, defaultDirection: item.defaultDirection, getButtonOnClick: getButtonOnClick })))));
|
|
81
|
-
}));
|
|
82
|
-
};
|
|
83
|
-
exports.SortDropdown = SortDropdown;
|
|
84
|
-
exports.SortDropdown.defaultProps = {
|
|
85
|
-
className: '',
|
|
86
|
-
label: 'Order by',
|
|
87
|
-
onChange: () => { },
|
|
88
|
-
field: '',
|
|
89
|
-
direction: 'asc',
|
|
90
|
-
};
|
|
91
|
-
exports.SortDropdown.propTypes = {
|
|
92
|
-
className: prop_types_1.default.string,
|
|
93
|
-
label: prop_types_1.default.string,
|
|
94
|
-
fields: prop_types_1.default.shape({
|
|
95
|
-
[prop_types_1.default.string]: prop_types_1.default.string,
|
|
96
|
-
}).isRequired,
|
|
97
|
-
onChange: prop_types_1.default.func,
|
|
98
|
-
field: prop_types_1.default.string,
|
|
99
|
-
direction: prop_types_1.default.string,
|
|
100
|
-
};
|
|
101
|
-
//# sourceMappingURL=sort-dropdown.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sort-dropdown.js","sourceRoot":"","sources":["../../../src/ui/sort-dropdown/sort-dropdown.jsx"],"names":[],"mappings":"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"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
.item {
|
|
2
|
-
display: flex;
|
|
3
|
-
align-items: center;
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
.itemIcon {
|
|
7
|
-
flex: 0 0 auto;
|
|
8
|
-
visibility: hidden;
|
|
9
|
-
margin-right: var(--space-xxxsmall);
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
.itemLabel {
|
|
13
|
-
flex: 1 1 100%;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
.itemAsc .itemIcon {
|
|
17
|
-
transform: rotate(180deg);
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
.itemActive .itemIcon {
|
|
21
|
-
visibility: visible;
|
|
22
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
export const SORT_BY_NAME = 'name';
|
|
2
|
-
export const SORT_BY_SIZE = 'size';
|
|
3
|
-
export const SORT_BY_DELTA = 'delta';
|
|
4
|
-
export const SORT_BY = {
|
|
5
|
-
[SORT_BY_NAME]: {
|
|
6
|
-
label: 'Name',
|
|
7
|
-
defaultDirection: 'asc',
|
|
8
|
-
},
|
|
9
|
-
[SORT_BY_DELTA]: {
|
|
10
|
-
label: 'Delta',
|
|
11
|
-
defaultDirection: 'desc',
|
|
12
|
-
},
|
|
13
|
-
[SORT_BY_SIZE]: {
|
|
14
|
-
label: 'Size',
|
|
15
|
-
defaultDirection: 'desc',
|
|
16
|
-
},
|
|
17
|
-
};
|
|
18
|
-
//# sourceMappingURL=bundle-assets.constants.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bundle-assets.constants.js","sourceRoot":"","sources":["../../../src/components/bundle-assets/bundle-assets.constants.js"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC;AACnC,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC;AACnC,MAAM,CAAC,MAAM,aAAa,GAAG,OAAO,CAAC;AAErC,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,CAAC,YAAY,CAAC,EAAE;QACd,KAAK,EAAE,MAAM;QACb,gBAAgB,EAAE,KAAK;KACxB;IACD,CAAC,aAAa,CAAC,EAAE;QACf,KAAK,EAAE,OAAO;QACd,gBAAgB,EAAE,MAAM;KACzB;IACD,CAAC,YAAY,CAAC,EAAE;QACd,KAAK,EAAE,MAAM;QACb,gBAAgB,EAAE,MAAM;KACzB;CACF,CAAC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
export const SORT_BY_NAME = 'name';
|
|
2
|
-
export const SORT_BY_SIZE = 'size';
|
|
3
|
-
export const SORT_BY_DELTA = 'delta';
|
|
4
|
-
export const SORT_BY = {
|
|
5
|
-
[SORT_BY_NAME]: {
|
|
6
|
-
label: 'Name',
|
|
7
|
-
defaultDirection: 'asc',
|
|
8
|
-
},
|
|
9
|
-
[SORT_BY_DELTA]: {
|
|
10
|
-
label: 'Delta',
|
|
11
|
-
defaultDirection: 'desc',
|
|
12
|
-
},
|
|
13
|
-
[SORT_BY_SIZE]: {
|
|
14
|
-
label: 'Size',
|
|
15
|
-
defaultDirection: 'desc',
|
|
16
|
-
},
|
|
17
|
-
};
|
|
18
|
-
//# sourceMappingURL=bundle-modules.constants.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bundle-modules.constants.js","sourceRoot":"","sources":["../../../src/components/bundle-modules/bundle-modules.constants.js"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC;AACnC,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC;AACnC,MAAM,CAAC,MAAM,aAAa,GAAG,OAAO,CAAC;AAErC,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,CAAC,YAAY,CAAC,EAAE;QACd,KAAK,EAAE,MAAM;QACb,gBAAgB,EAAE,KAAK;KACxB;IACD,CAAC,aAAa,CAAC,EAAE;QACf,KAAK,EAAE,OAAO;QACd,gBAAgB,EAAE,MAAM;KACzB;IACD,CAAC,YAAY,CAAC,EAAE;QACd,KAAK,EAAE,MAAM;QACb,gBAAgB,EAAE,MAAM;KACzB;CACF,CAAC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
export const SORT_BY_NAME = 'name';
|
|
2
|
-
export const SORT_BY_SIZE = 'size';
|
|
3
|
-
export const SORT_BY_DELTA = 'delta';
|
|
4
|
-
export const SORT_BY = {
|
|
5
|
-
[SORT_BY_NAME]: {
|
|
6
|
-
label: 'Name',
|
|
7
|
-
defaultDirection: 'asc',
|
|
8
|
-
},
|
|
9
|
-
[SORT_BY_DELTA]: {
|
|
10
|
-
label: 'Delta',
|
|
11
|
-
defaultDirection: 'desc',
|
|
12
|
-
},
|
|
13
|
-
[SORT_BY_SIZE]: {
|
|
14
|
-
label: 'Size',
|
|
15
|
-
defaultDirection: 'desc',
|
|
16
|
-
},
|
|
17
|
-
};
|
|
18
|
-
//# sourceMappingURL=bundle-packages.constants.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bundle-packages.constants.js","sourceRoot":"","sources":["../../../src/components/bundle-packages/bundle-packages.constants.js"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC;AACnC,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC;AACnC,MAAM,CAAC,MAAM,aAAa,GAAG,OAAO,CAAC;AAErC,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,CAAC,YAAY,CAAC,EAAE;QACd,KAAK,EAAE,MAAM;QACb,gBAAgB,EAAE,KAAK;KACxB;IACD,CAAC,aAAa,CAAC,EAAE;QACf,KAAK,EAAE,OAAO;QACd,gBAAgB,EAAE,MAAM;KACzB;IACD,CAAC,YAAY,CAAC,EAAE;QACd,KAAK,EAAE,MAAM;QACb,gBAAgB,EAAE,MAAM;KACzB;CACF,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/job-header/index.js"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import PropTypes from 'prop-types';
|
|
3
|
-
import cx from 'classnames';
|
|
4
|
-
import get from 'lodash/get';
|
|
5
|
-
import { Source, formatDateTime } from '@bundle-stats/utils';
|
|
6
|
-
import { FlexStack } from '../../layout/flex-stack';
|
|
7
|
-
import { Stack } from '../../layout/stack';
|
|
8
|
-
import { Icon } from '../../ui/icon';
|
|
9
|
-
import { Tag } from '../../ui/tag';
|
|
10
|
-
import css from './job-header.module.css';
|
|
11
|
-
export const JobHeader = (props) => {
|
|
12
|
-
const { className, tag, job, children } = props;
|
|
13
|
-
const { builtAt, hash } = get(job, `meta.${Source.webpack}`, {});
|
|
14
|
-
const rootClassName = cx(css.root, className);
|
|
15
|
-
return (React.createElement(Stack, { className: rootClassName, space: "xxsmall" },
|
|
16
|
-
React.createElement(FlexStack, { space: "xsmall", alignItems: "center" },
|
|
17
|
-
React.createElement(FlexStack, { space: "xxxsmall", as: "h1", className: css.title },
|
|
18
|
-
React.createElement("span", null, `#${job.internalBuildNumber}`),
|
|
19
|
-
tag && React.createElement(Tag, { className: css.tag }, tag)),
|
|
20
|
-
builtAt && (React.createElement(FlexStack, { space: "xxxsmall", alignItems: "center", inline: true, as: "span", title: builtAt, className: css.meta },
|
|
21
|
-
React.createElement(Icon, { glyph: "clock", className: css.metaIcon }),
|
|
22
|
-
React.createElement("span", { className: css.metaText }, formatDateTime({ dateStyle: 'medium', timeStyle: 'medium' }, builtAt)))),
|
|
23
|
-
hash && (React.createElement(FlexStack, { space: "xxxsmall", alignItems: "center", inline: true, title: "Webpack bundle hash", className: css.meta },
|
|
24
|
-
React.createElement(Icon, { glyph: "commit", className: css.metaIcon }),
|
|
25
|
-
React.createElement("span", { className: css.metaText }, hash.slice(0, 7))))),
|
|
26
|
-
children && (React.createElement(FlexStack, { space: "xxsmall", className: css.meta },
|
|
27
|
-
React.createElement("div", { className: css.content }, children)))));
|
|
28
|
-
};
|
|
29
|
-
JobHeader.propTypes = {
|
|
30
|
-
className: PropTypes.string,
|
|
31
|
-
tag: PropTypes.string,
|
|
32
|
-
job: PropTypes.shape({
|
|
33
|
-
internalBuildNumber: PropTypes.number,
|
|
34
|
-
meta: PropTypes.shape({
|
|
35
|
-
builtAt: PropTypes.string,
|
|
36
|
-
}),
|
|
37
|
-
summary: PropTypes.object,
|
|
38
|
-
}),
|
|
39
|
-
children: PropTypes.element,
|
|
40
|
-
};
|
|
41
|
-
JobHeader.defaultProps = {
|
|
42
|
-
className: '',
|
|
43
|
-
tag: '',
|
|
44
|
-
job: null,
|
|
45
|
-
children: null,
|
|
46
|
-
};
|
|
47
|
-
//# sourceMappingURL=job-header.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"job-header.js","sourceRoot":"","sources":["../../../src/components/job-header/job-header.jsx"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
.title {
|
|
2
|
-
font-size: var(--size-xlarge);
|
|
3
|
-
line-height: 1;
|
|
4
|
-
font-weight: bold;
|
|
5
|
-
vertical-align: top;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
.tag {
|
|
9
|
-
margin-left: var(--space-xxsmall);
|
|
10
|
-
vertical-align: top;
|
|
11
|
-
outline: 1px solid var(--color-outline);
|
|
12
|
-
background: var(--color-highlight);
|
|
13
|
-
color: var(--color-text-light);
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
.meta {
|
|
17
|
-
font-size: var(--size-small);
|
|
18
|
-
color: var(--color-text-light);
|
|
19
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/sort-dropdown/index.js"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import React, { useMemo } from 'react';
|
|
2
|
-
import PropTypes from 'prop-types';
|
|
3
|
-
import cx from 'classnames';
|
|
4
|
-
import { Dropdown } from '../dropdown';
|
|
5
|
-
import { Icon } from '../icon';
|
|
6
|
-
import css from './sort-dropdown.module.css';
|
|
7
|
-
const Item = ({ as: Component, id, label, isActive, direction, defaultDirection, getButtonOnClick, ...restProps }) => {
|
|
8
|
-
const buttonProps = useMemo(() => {
|
|
9
|
-
let resolveNextDirection = defaultDirection;
|
|
10
|
-
if (isActive) {
|
|
11
|
-
resolveNextDirection = direction === 'asc' ? 'desc' : 'asc';
|
|
12
|
-
}
|
|
13
|
-
if (resolveNextDirection === 'desc') {
|
|
14
|
-
return {
|
|
15
|
-
className: css.itemAsc,
|
|
16
|
-
onClick: getButtonOnClick(id, 'desc'),
|
|
17
|
-
title: `Order data by ${label} descending`,
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
return {
|
|
21
|
-
onClick: getButtonOnClick(id, 'asc'),
|
|
22
|
-
title: `Order data by ${label} ascending`,
|
|
23
|
-
};
|
|
24
|
-
}, [isActive, direction, defaultDirection, id, label]);
|
|
25
|
-
return (React.createElement(Component, { ...restProps, ...buttonProps, isActive: isActive, className: cx(css.item, isActive && css.itemActive, buttonProps.className) },
|
|
26
|
-
React.createElement(Icon, { className: css.itemIcon, glyph: "arrow" }),
|
|
27
|
-
React.createElement("span", { className: css.itemLabel }, label)));
|
|
28
|
-
};
|
|
29
|
-
Item.propTypes = {
|
|
30
|
-
className: PropTypes.string,
|
|
31
|
-
as: PropTypes.element.isRequired,
|
|
32
|
-
id: PropTypes.string.isRequired,
|
|
33
|
-
label: PropTypes.string.isRequired,
|
|
34
|
-
isActive: PropTypes.bool.isRequired,
|
|
35
|
-
direction: PropTypes.string.isRequired,
|
|
36
|
-
defaultDirection: PropTypes.string.isRequired,
|
|
37
|
-
getButtonOnClick: PropTypes.func.isRequired,
|
|
38
|
-
};
|
|
39
|
-
Item.defaultProps = {
|
|
40
|
-
className: '',
|
|
41
|
-
};
|
|
42
|
-
export const SortDropdown = (props) => {
|
|
43
|
-
const { className, label, fields, field, direction, onChange } = props;
|
|
44
|
-
const rootClassName = cx(css.root, className);
|
|
45
|
-
const customLabel = fields[field] ? `Ordered by ${fields[field].label}` : label;
|
|
46
|
-
return (React.createElement(Dropdown, { className: rootClassName, label: customLabel, glyph: "sort", align: "right" }, ({ MenuItem, menu, menuItemClassName, menuItemActiveClassName }) => {
|
|
47
|
-
const getButtonOnClick = (newField, newDirection) => () => {
|
|
48
|
-
onChange({ field: newField, direction: newDirection });
|
|
49
|
-
menu.toggle();
|
|
50
|
-
};
|
|
51
|
-
return (React.createElement("div", { className: css.items }, Object.entries(fields).map(([key, item]) => (React.createElement(Item, { key: key, as: MenuItem, isActive: field === key, id: key, label: item.label, direction: direction, defaultDirection: item.defaultDirection, getButtonOnClick: getButtonOnClick })))));
|
|
52
|
-
}));
|
|
53
|
-
};
|
|
54
|
-
SortDropdown.defaultProps = {
|
|
55
|
-
className: '',
|
|
56
|
-
label: 'Order by',
|
|
57
|
-
onChange: () => { },
|
|
58
|
-
field: '',
|
|
59
|
-
direction: 'asc',
|
|
60
|
-
};
|
|
61
|
-
SortDropdown.propTypes = {
|
|
62
|
-
className: PropTypes.string,
|
|
63
|
-
label: PropTypes.string,
|
|
64
|
-
fields: PropTypes.shape({
|
|
65
|
-
[PropTypes.string]: PropTypes.string,
|
|
66
|
-
}).isRequired,
|
|
67
|
-
onChange: PropTypes.func,
|
|
68
|
-
field: PropTypes.string,
|
|
69
|
-
direction: PropTypes.string,
|
|
70
|
-
};
|
|
71
|
-
//# sourceMappingURL=sort-dropdown.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sort-dropdown.js","sourceRoot":"","sources":["../../../src/ui/sort-dropdown/sort-dropdown.jsx"],"names":[],"mappings":"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"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
.item {
|
|
2
|
-
display: flex;
|
|
3
|
-
align-items: center;
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
.itemIcon {
|
|
7
|
-
flex: 0 0 auto;
|
|
8
|
-
visibility: hidden;
|
|
9
|
-
margin-right: var(--space-xxxsmall);
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
.itemLabel {
|
|
13
|
-
flex: 1 1 100%;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
.itemAsc .itemIcon {
|
|
17
|
-
transform: rotate(180deg);
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
.itemActive .itemIcon {
|
|
21
|
-
visibility: visible;
|
|
22
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
export const SORT_BY_NAME = 'name';
|
|
2
|
-
export const SORT_BY_SIZE = 'size';
|
|
3
|
-
export const SORT_BY_DELTA = 'delta';
|
|
4
|
-
|
|
5
|
-
export const SORT_BY = {
|
|
6
|
-
[SORT_BY_NAME]: {
|
|
7
|
-
label: 'Name',
|
|
8
|
-
defaultDirection: 'asc',
|
|
9
|
-
},
|
|
10
|
-
[SORT_BY_DELTA]: {
|
|
11
|
-
label: 'Delta',
|
|
12
|
-
defaultDirection: 'desc',
|
|
13
|
-
},
|
|
14
|
-
[SORT_BY_SIZE]: {
|
|
15
|
-
label: 'Size',
|
|
16
|
-
defaultDirection: 'desc',
|
|
17
|
-
},
|
|
18
|
-
};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
export const SORT_BY_NAME = 'name';
|
|
2
|
-
export const SORT_BY_SIZE = 'size';
|
|
3
|
-
export const SORT_BY_DELTA = 'delta';
|
|
4
|
-
|
|
5
|
-
export const SORT_BY = {
|
|
6
|
-
[SORT_BY_NAME]: {
|
|
7
|
-
label: 'Name',
|
|
8
|
-
defaultDirection: 'asc',
|
|
9
|
-
},
|
|
10
|
-
[SORT_BY_DELTA]: {
|
|
11
|
-
label: 'Delta',
|
|
12
|
-
defaultDirection: 'desc',
|
|
13
|
-
},
|
|
14
|
-
[SORT_BY_SIZE]: {
|
|
15
|
-
label: 'Size',
|
|
16
|
-
defaultDirection: 'desc',
|
|
17
|
-
},
|
|
18
|
-
};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
export const SORT_BY_NAME = 'name';
|
|
2
|
-
export const SORT_BY_SIZE = 'size';
|
|
3
|
-
export const SORT_BY_DELTA = 'delta';
|
|
4
|
-
|
|
5
|
-
export const SORT_BY = {
|
|
6
|
-
[SORT_BY_NAME]: {
|
|
7
|
-
label: 'Name',
|
|
8
|
-
defaultDirection: 'asc',
|
|
9
|
-
},
|
|
10
|
-
[SORT_BY_DELTA]: {
|
|
11
|
-
label: 'Delta',
|
|
12
|
-
defaultDirection: 'desc',
|
|
13
|
-
},
|
|
14
|
-
[SORT_BY_SIZE]: {
|
|
15
|
-
label: 'Size',
|
|
16
|
-
defaultDirection: 'desc',
|
|
17
|
-
},
|
|
18
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './job-header';
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import PropTypes from 'prop-types';
|
|
3
|
-
import cx from 'classnames';
|
|
4
|
-
import get from 'lodash/get';
|
|
5
|
-
import { Source, formatDateTime } from '@bundle-stats/utils';
|
|
6
|
-
|
|
7
|
-
import { FlexStack } from '../../layout/flex-stack';
|
|
8
|
-
import { Stack } from '../../layout/stack';
|
|
9
|
-
import { Icon } from '../../ui/icon';
|
|
10
|
-
import { Tag } from '../../ui/tag';
|
|
11
|
-
import css from './job-header.module.css';
|
|
12
|
-
|
|
13
|
-
export const JobHeader = (props) => {
|
|
14
|
-
const { className, tag, job, children } = props;
|
|
15
|
-
|
|
16
|
-
const { builtAt, hash } = get(job, `meta.${Source.webpack}`, {});
|
|
17
|
-
const rootClassName = cx(css.root, className);
|
|
18
|
-
|
|
19
|
-
return (
|
|
20
|
-
<Stack className={rootClassName} space="xxsmall">
|
|
21
|
-
<FlexStack space="xsmall" alignItems="center">
|
|
22
|
-
<FlexStack space="xxxsmall" as="h1" className={css.title}>
|
|
23
|
-
<span>{`#${job.internalBuildNumber}`}</span>
|
|
24
|
-
{tag && <Tag className={css.tag}>{tag}</Tag>}
|
|
25
|
-
</FlexStack>
|
|
26
|
-
|
|
27
|
-
{builtAt && (
|
|
28
|
-
<FlexStack space="xxxsmall" alignItems="center" inline as="span" title={builtAt} className={css.meta}>
|
|
29
|
-
<Icon glyph="clock" className={css.metaIcon} />
|
|
30
|
-
<span className={css.metaText}>
|
|
31
|
-
{formatDateTime({ dateStyle: 'medium', timeStyle: 'medium' }, builtAt)}
|
|
32
|
-
</span>
|
|
33
|
-
</FlexStack>
|
|
34
|
-
)}
|
|
35
|
-
|
|
36
|
-
{hash && (
|
|
37
|
-
<FlexStack space="xxxsmall" alignItems="center" inline title="Webpack bundle hash" className={css.meta}>
|
|
38
|
-
<Icon glyph="commit" className={css.metaIcon} />
|
|
39
|
-
<span className={css.metaText}>{hash.slice(0, 7)}</span>
|
|
40
|
-
</FlexStack>
|
|
41
|
-
)}
|
|
42
|
-
</FlexStack>
|
|
43
|
-
{children && (<FlexStack space="xxsmall" className={css.meta}>
|
|
44
|
-
<div className={css.content}>{children}</div>
|
|
45
|
-
</FlexStack>
|
|
46
|
-
)}
|
|
47
|
-
</Stack>
|
|
48
|
-
);
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
JobHeader.propTypes = {
|
|
52
|
-
className: PropTypes.string,
|
|
53
|
-
tag: PropTypes.string,
|
|
54
|
-
job: PropTypes.shape({
|
|
55
|
-
internalBuildNumber: PropTypes.number,
|
|
56
|
-
meta: PropTypes.shape({
|
|
57
|
-
builtAt: PropTypes.string,
|
|
58
|
-
}),
|
|
59
|
-
summary: PropTypes.object, // eslint-disable-line react/forbid-prop-types
|
|
60
|
-
}),
|
|
61
|
-
children: PropTypes.element,
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
JobHeader.defaultProps = {
|
|
65
|
-
className: '',
|
|
66
|
-
tag: '',
|
|
67
|
-
job: null,
|
|
68
|
-
children: null,
|
|
69
|
-
};
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
.title {
|
|
2
|
-
font-size: var(--size-xlarge);
|
|
3
|
-
line-height: 1;
|
|
4
|
-
font-weight: bold;
|
|
5
|
-
vertical-align: top;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
.tag {
|
|
9
|
-
margin-left: var(--space-xxsmall);
|
|
10
|
-
vertical-align: top;
|
|
11
|
-
outline: 1px solid var(--color-outline);
|
|
12
|
-
background: var(--color-highlight);
|
|
13
|
-
color: var(--color-text-light);
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
.meta {
|
|
17
|
-
font-size: var(--size-small);
|
|
18
|
-
color: var(--color-text-light);
|
|
19
|
-
}
|
package/src/hooks/rows-sort.js
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { useState, useMemo } from 'react';
|
|
2
|
-
import orderBy from 'lodash/orderBy';
|
|
3
|
-
|
|
4
|
-
export const useRowsSort = ({
|
|
5
|
-
rows,
|
|
6
|
-
sortFields,
|
|
7
|
-
sortBy = 'size',
|
|
8
|
-
sortDirection = 'desc',
|
|
9
|
-
getCustomSort,
|
|
10
|
-
}) => {
|
|
11
|
-
const [sort, updateSort] = useState({ field: sortBy, direction: sortDirection });
|
|
12
|
-
|
|
13
|
-
const orderedRows = useMemo(
|
|
14
|
-
() => orderBy(rows, getCustomSort(sort.field), sort.direction),
|
|
15
|
-
[rows, sort],
|
|
16
|
-
);
|
|
17
|
-
|
|
18
|
-
return {
|
|
19
|
-
sortFields,
|
|
20
|
-
sort,
|
|
21
|
-
updateSort,
|
|
22
|
-
items: orderedRows,
|
|
23
|
-
};
|
|
24
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './sort-dropdown';
|