@bundle-stats/ui 3.2.7-beta.3 → 3.2.9-beta.1

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.
Files changed (64) hide show
  1. package/CHANGELOG.md +32 -3
  2. package/lib/app/app.js +124 -79
  3. package/lib/app/app.module.css +3 -3
  4. package/lib/components/asset-info/asset-info.module.css +1 -0
  5. package/lib/components/bundle-assets/bundle-assets.js +97 -57
  6. package/lib/components/bundle-assets/bundle-assets.module.css +19 -13
  7. package/lib/components/bundle-assets-totals-table/bundle-assets-totals-table.js +13 -3
  8. package/lib/components/bundle-modules/bundle-modules.js +49 -64
  9. package/lib/components/bundle-packages/bundle-packages.js +94 -46
  10. package/lib/components/bundle-packages/bundle-packages.module.css +14 -14
  11. package/lib/components/metrics-table/metrics-table.js +72 -59
  12. package/lib/components/metrics-table/metrics-table.module.css +18 -7
  13. package/lib/components/module-info/module-info.js +2 -2
  14. package/lib/hooks/search-params.js +25 -25
  15. package/lib/ui/empty-set/empty-set.js +5 -4
  16. package/lib/ui/empty-set/empty-set.module.css +2 -2
  17. package/lib/ui/hover-card/hover-card.js +7 -15
  18. package/lib/ui/hover-card/hover-card.module.css +7 -30
  19. package/lib/ui/table/table.js +5 -74
  20. package/lib/ui/table/table.module.css +23 -19
  21. package/lib/ui/table/table.stories.js +1 -1
  22. package/lib/ui/tooltip/tooltip.module.css +1 -0
  23. package/lib-esm/app/app.js +118 -76
  24. package/lib-esm/app/app.module.css +3 -3
  25. package/lib-esm/components/asset-info/asset-info.module.css +1 -0
  26. package/lib-esm/components/bundle-assets/bundle-assets.js +91 -61
  27. package/lib-esm/components/bundle-assets/bundle-assets.module.css +19 -13
  28. package/lib-esm/components/bundle-assets-totals-table/bundle-assets-totals-table.js +6 -3
  29. package/lib-esm/components/bundle-modules/bundle-modules.js +31 -47
  30. package/lib-esm/components/bundle-packages/bundle-packages.js +83 -43
  31. package/lib-esm/components/bundle-packages/bundle-packages.module.css +14 -14
  32. package/lib-esm/components/metrics-table/metrics-table.js +61 -53
  33. package/lib-esm/components/metrics-table/metrics-table.module.css +18 -7
  34. package/lib-esm/components/module-info/module-info.js +2 -2
  35. package/lib-esm/hooks/search-params.js +21 -22
  36. package/lib-esm/ui/empty-set/empty-set.js +4 -4
  37. package/lib-esm/ui/empty-set/empty-set.module.css +2 -2
  38. package/lib-esm/ui/hover-card/hover-card.js +7 -14
  39. package/lib-esm/ui/hover-card/hover-card.module.css +7 -30
  40. package/lib-esm/ui/table/table.js +5 -65
  41. package/lib-esm/ui/table/table.module.css +23 -19
  42. package/lib-esm/ui/table/table.stories.js +1 -1
  43. package/lib-esm/ui/tooltip/tooltip.module.css +1 -0
  44. package/package.json +3 -3
  45. package/src/app/app.jsx +135 -133
  46. package/src/app/app.module.css +3 -3
  47. package/src/components/asset-info/asset-info.module.css +1 -0
  48. package/src/components/bundle-assets/bundle-assets.jsx +94 -59
  49. package/src/components/bundle-assets/bundle-assets.module.css +19 -13
  50. package/src/components/bundle-assets-totals-table/bundle-assets-totals-table.jsx +2 -0
  51. package/src/components/bundle-modules/bundle-modules.jsx +28 -38
  52. package/src/components/bundle-packages/bundle-packages.jsx +80 -43
  53. package/src/components/bundle-packages/bundle-packages.module.css +14 -14
  54. package/src/components/metrics-table/metrics-table.jsx +53 -44
  55. package/src/components/metrics-table/metrics-table.module.css +18 -7
  56. package/src/components/module-info/module-info.jsx +2 -2
  57. package/src/hooks/search-params.js +24 -22
  58. package/src/ui/empty-set/empty-set.jsx +25 -21
  59. package/src/ui/empty-set/empty-set.module.css +2 -2
  60. package/src/ui/hover-card/hover-card.jsx +5 -19
  61. package/src/ui/hover-card/hover-card.module.css +7 -30
  62. package/src/ui/table/table.jsx +5 -52
  63. package/src/ui/table/table.module.css +23 -19
  64. package/src/ui/tooltip/tooltip.module.css +1 -0
@@ -8,45 +8,22 @@
8
8
  text-decoration: none;
9
9
  }
10
10
 
11
- a.anchor,
12
- buton.anchor {
13
- cursor: pointer;
11
+ .anchor:hover {
12
+ color: var(--color-primary);
14
13
  }
15
14
 
16
- a.anchor:hover,
17
- button.anchor:hover {
18
- color: var(--color-primary);
19
- text-decoration: underline;
15
+ .anchor:focus {
16
+ outline: 0;
20
17
  }
21
18
 
22
19
  .hoverCard {
23
- padding: var(--space-xsmall) var(--space-large) var(--space-xsmall) var(--space-small);
20
+ padding: var(--space-xsmall) var(--space-small);
24
21
  border-radius: var(--radius-medium);
25
- max-width: 320px;
22
+ width: calc(100vw - 2 * var(--space-small));
23
+ max-width: 360px;
26
24
  outline: none;
27
25
  filter: drop-shadow(0 0 var(--space-xxsmall) var(--color-shadow));
28
26
  will-change: filter;
29
27
  background: var(--color-light);
30
28
  font-size: var(--size-small);
31
29
  }
32
-
33
- .closeBtn {
34
- position: absolute;
35
- right: var(--space-xxxsmall);
36
- top: var(--space-xxxsmall);
37
- width: var(--space-large);
38
- height: var(--space-large);
39
- padding: var(--space-xxsmall);
40
- background: none;
41
- border: none;
42
- cursor: pointer;
43
- color: var(--color-text-ultra-light);
44
- transition: var(--transition-out);
45
- }
46
-
47
- .closeBtn:hover,
48
- .closeBtn:active,
49
- .closeBtn:focus {
50
- color: var(--color-text-light);
51
- transition: var(--transition-in);
52
- }
@@ -1,67 +1,7 @@
1
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
-
3
1
  import React from 'react';
4
2
  import PropTypes from 'prop-types';
5
3
  import cx from 'classnames';
6
4
  import css from './table.module.css';
7
-
8
- const THead = props => /*#__PURE__*/React.createElement("thead", props);
9
-
10
- const TBody = props => /*#__PURE__*/React.createElement("tbody", props);
11
-
12
- const Tr = props => {
13
- const {
14
- className,
15
- ...restProps
16
- } = props;
17
- return /*#__PURE__*/React.createElement("tr", _extends({
18
- className: cx(css.row, className)
19
- }, restProps));
20
- };
21
-
22
- Tr.defaultProps = {
23
- className: ''
24
- };
25
- Tr.propTypes = {
26
- /** Adopted child class name */
27
- className: PropTypes.string
28
- };
29
-
30
- const Th = props => {
31
- const {
32
- className,
33
- ...restProps
34
- } = props;
35
- return /*#__PURE__*/React.createElement("th", _extends({
36
- className: cx(css.cell, className)
37
- }, restProps));
38
- };
39
-
40
- Th.defaultProps = {
41
- className: ''
42
- };
43
- Th.propTypes = {
44
- /** Adopted child class name */
45
- className: PropTypes.string
46
- };
47
-
48
- const Td = props => {
49
- const {
50
- className,
51
- ...restProps
52
- } = props;
53
- return /*#__PURE__*/React.createElement("td", _extends({
54
- className: cx(css.cell, className)
55
- }, restProps));
56
- };
57
-
58
- Td.defaultProps = {
59
- className: ''
60
- };
61
- Td.propTypes = {
62
- /** Adopted child class name */
63
- className: PropTypes.string
64
- };
65
5
  export const Table = _ref => {
66
6
  let {
67
7
  className,
@@ -82,11 +22,11 @@ export const Table = _ref => {
82
22
  className: rootClassName
83
23
  }, children);
84
24
  };
85
- Table.THead = THead;
86
- Table.TBody = TBody;
87
- Table.Th = Th;
88
- Table.Tr = Tr;
89
- Table.Td = Td;
25
+ Table.THead = 'thead';
26
+ Table.TBody = 'tbody';
27
+ Table.Tr = 'tr';
28
+ Table.Th = 'th';
29
+ Table.Td = 'td';
90
30
  Table.defaultProps = {
91
31
  className: '',
92
32
  emptyMessage: 'No entries found.',
@@ -4,48 +4,51 @@
4
4
  border-spacing: 0;
5
5
  empty-cells: show;
6
6
  background: var(--color-background);
7
+ text-align: left;
7
8
  }
8
9
 
9
- .cell {
10
+ .root th,
11
+ .root td {
10
12
  border: 1px solid var(--color-outline);
11
13
  border-width: 1px 0 0;
12
- padding: var(--space-small) var(--space-small);
13
- text-align: left;
14
+ padding: var(--space-small);
14
15
  }
15
16
 
16
- .root thead .cell {
17
+ .root thead th {
17
18
  border-width: 0 0 1px;
18
19
  text-transform: uppercase;
19
20
  vertical-align: top;
20
21
  background: var(--color-highlight);
21
22
  }
22
23
 
23
- .root thead .cell:empty {
24
+ .root thead th:empty {
24
25
  display: none;
25
26
  }
26
27
 
27
- .root tbody .cell {
28
+ .root tbody th {
28
29
  font-weight: normal;
29
30
  }
30
31
 
31
- .root tbody tr:first-child .cell {
32
+ .root tbody tr:first-child td,
33
+ .root tbody tr:first-child th {
32
34
  border-top: 0;
33
35
  }
34
36
 
35
- .root tbody .cell a {
37
+ .root tbody td a {
36
38
  color: inherit;
37
39
  text-decoration: none;
38
40
  }
39
41
 
40
- .root tbody .cell a:hover,
41
- .root tbody .cell a:focus,
42
- .root tbody .cell a:active
42
+ .root tbody td a:hover,
43
+ .root tbody td a:focus,
44
+ .root tbody td a:active
43
45
  {
44
46
  color: var(--color-primary);
45
47
  text-decoration: underline;
46
48
  }
47
49
 
48
- .root tbody tr:hover .cell {
50
+ .root tbody tr:hover th,
51
+ .root tbody tr:hover td {
49
52
  background-color: var(--color-highlight-warning);
50
53
  }
51
54
 
@@ -64,21 +67,21 @@
64
67
  border-radius: var(--table-radius);
65
68
  }
66
69
 
67
- .outline thead tr:first-child .cell:first-child,
68
- .outline tbody:first-child tr:first-child .cell:first-child {
70
+ .outline thead:first-child tr:first-child th:first-child,
71
+ .outline tbody:first-child tr:first-child td:first-child {
69
72
  border-top-left-radius: var(--table-radius);
70
73
  }
71
74
 
72
- .outline thead tr:first-child .cell:last-child,
73
- .outline tbody:first-child tr:first-child .cell:last-child {
75
+ .outline thead tr:first-child th:last-child,
76
+ .outline tbody:first-child tr:first-child td:last-child {
74
77
  border-top-right-radius: var(--table-radius);
75
78
  }
76
79
 
77
- .outline tbody:last-child tr:last-child .cell:first-child {
80
+ .outline tbody:last-child tr:last-child td:first-child {
78
81
  border-bottom-left-radius: var(--table-radius);
79
82
  }
80
83
 
81
- .outline tbody:last-child tr:last-child .cell:last-child {
84
+ .outline tbody:last-child tr:last-child td:last-child {
82
85
  border-bottom-right-radius: var(--table-radius);
83
86
  }
84
87
 
@@ -87,7 +90,8 @@
87
90
  }
88
91
 
89
92
  /* compact variation */
90
- .compact .cell {
93
+ .compact td,
94
+ .compact th {
91
95
  padding-top: var(--space-xsmall);
92
96
  padding-bottom: var(--space-xsmall);
93
97
  }
@@ -46,7 +46,7 @@ stories.add('with custom content and attributes', () => /*#__PURE__*/React.creat
46
46
  style: {
47
47
  textDecoration: 'underline'
48
48
  }
49
- }, "Col C(undefiner)"))), /*#__PURE__*/React.createElement(TBody, null, /*#__PURE__*/React.createElement(Tr, null, /*#__PURE__*/React.createElement(Th, null, /*#__PURE__*/React.createElement("strong", null, "row 1")), /*#__PURE__*/React.createElement(Td, {
49
+ }, "Col C(underline)"))), /*#__PURE__*/React.createElement(TBody, null, /*#__PURE__*/React.createElement(Tr, null, /*#__PURE__*/React.createElement(Th, null, /*#__PURE__*/React.createElement("strong", null, "row 1")), /*#__PURE__*/React.createElement(Td, {
50
50
  style: {
51
51
  textAlign: 'right'
52
52
  }
@@ -16,6 +16,7 @@
16
16
  background: var(--color-light);
17
17
  color: var(--color-text);
18
18
  filter: drop-shadow(0 0 var(--space-xxxsmall) var(--color-shadow));
19
+ will-change: filter;
19
20
  font-size: var(--size-xsmall);
20
21
  line-height: var(--space-small);
21
22
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bundle-stats/ui",
3
- "version": "3.2.7-beta.3",
3
+ "version": "3.2.9-beta.1",
4
4
  "description": "UI components for BundleStats projects.",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-esm/index.js",
@@ -85,12 +85,12 @@
85
85
  "react-router-dom": "5.3.0"
86
86
  },
87
87
  "dependencies": {
88
- "@bundle-stats/utils": "^3.2.7-beta.3",
88
+ "@bundle-stats/utils": "^3.2.9-beta.1",
89
89
  "ariakit": "2.0.0-alpha.19",
90
90
  "date-fns": "2.28.0",
91
91
  "modern-css-reset": "1.4.0",
92
92
  "query-string": "7.1.1",
93
93
  "use-query-params": "1.2.3"
94
94
  },
95
- "gitHead": "23478e08f6882f7c20f373f5bb9bc3beaaea4ea7"
95
+ "gitHead": "a441f0e13edd57a72ae69a7f847483e38b072226"
96
96
  }
package/src/app/app.jsx CHANGED
@@ -1,4 +1,4 @@
1
- import React, { useEffect } from 'react';
1
+ import React, { useContext, useEffect, useMemo } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { HashRouter, NavLink, Route, Switch, useLocation } from 'react-router-dom';
4
4
  import { COMPONENT } from '@bundle-stats/utils';
@@ -56,16 +56,110 @@ Layout.defaultProps = {
56
56
  version: null,
57
57
  };
58
58
 
59
- const AppComponent = ({ version, jobs }) => {
59
+ const JobsContext = React.createContext({ jobs: [] });
60
+ const JobsProvider = ({ jobs, ...restProps }) => {
61
+ const value = useMemo(() => ({ jobs }), [jobs]);
62
+ return <JobsContext.Provider value={value} {...restProps} />;
63
+ };
64
+
65
+ JobsProvider.propTypes = {
66
+ jobs: PropTypes.arrayOf(PropTypes.object).isRequired,
67
+ };
68
+
69
+ const OverviewContent = () => {
70
+ const { jobs } = useContext(JobsContext);
71
+ const { duplicatePackagesCount } = jobs[0].summary.webpack;
72
+ const duplicatePackagesInsights = Boolean(
73
+ duplicatePackagesCount.current || duplicatePackagesCount.baseline,
74
+ );
75
+
76
+ return (
77
+ <Stack space="medium">
78
+ {duplicatePackagesInsights && (
79
+ <Container>
80
+ <DuplicatePackagesWarning
81
+ duplicatePackagesCount={duplicatePackagesCount}
82
+ showDelta={jobs.length > 1}
83
+ />
84
+ </Container>
85
+ )}
86
+ <Container>
87
+ <Stack space="small">
88
+ <TotalSizeTypeTitle />
89
+ <BundleAssetsTotalsChartBars jobs={jobs} />
90
+ <BundleAssetsTotalsTable jobs={jobs} outline />
91
+ </Stack>
92
+ </Container>
93
+ </Stack>
94
+ );
95
+ };
96
+
97
+ const AssetsContent = () => {
60
98
  const [bundleStatsState, bundleStatsSetState] = useComponentQueryState(COMPONENT.BUNDLE_ASSETS);
61
- const [bundlePackagesState, bundlePackagesSetState] = useComponentQueryState(
62
- COMPONENT.BUNDLE_PACKAGES,
99
+ const { jobs } = useContext(JobsContext);
100
+
101
+ return (
102
+ <Container>
103
+ <Stack space="medium">
104
+ <Summary
105
+ keys={METRICS_WEBPACK_ASSETS}
106
+ data={jobs?.[0]?.summary}
107
+ showSummaryItemDelta={jobs?.length !== 1}
108
+ />
109
+ <Box outline>
110
+ <BundleAssets jobs={jobs} setState={bundleStatsSetState} {...bundleStatsState} />
111
+ </Box>
112
+ </Stack>
113
+ </Container>
63
114
  );
115
+ };
116
+
117
+ const ModulesContent = () => {
64
118
  const [bundleModulesState, bundleModulesSetState] = useComponentQueryState(
65
119
  COMPONENT.BUNDLE_MODULES,
66
120
  );
121
+ const { jobs } = useContext(JobsContext);
122
+
123
+ return (
124
+ <Container>
125
+ <Stack space="medium">
126
+ <Summary
127
+ keys={METRICS_WEBPACK_MODULES}
128
+ data={jobs?.[0]?.summary}
129
+ showSummaryItemDelta={jobs?.length !== 1}
130
+ />
131
+ <Box outline>
132
+ <BundleModules jobs={jobs} setState={bundleModulesSetState} {...bundleModulesState} />
133
+ </Box>
134
+ </Stack>
135
+ </Container>
136
+ );
137
+ };
138
+
139
+ const PackagesContent = () => {
140
+ const [bundlePackagesState, bundlePackagesSetState] = useComponentQueryState(
141
+ COMPONENT.BUNDLE_PACKAGES,
142
+ );
143
+ const { jobs } = useContext(JobsContext);
67
144
 
68
- if (jobs.length === 0) {
145
+ return (
146
+ <Container>
147
+ <Stack space="medium">
148
+ <Summary
149
+ keys={METRICS_WEBPACK_PACKAGES}
150
+ data={jobs?.[0]?.summary}
151
+ showSummaryItemDelta={jobs?.length !== 1}
152
+ />
153
+ <Box outline>
154
+ <BundlePackages jobs={jobs} {...bundlePackagesState} setState={bundlePackagesSetState} />
155
+ </Box>
156
+ </Stack>
157
+ </Container>
158
+ );
159
+ };
160
+
161
+ const AppComponent = ({ version, jobs }) => {
162
+ if (jobs?.length === 0) {
69
163
  return (
70
164
  <Layout version={version}>
71
165
  <Container>
@@ -75,137 +169,45 @@ const AppComponent = ({ version, jobs }) => {
75
169
  );
76
170
  }
77
171
 
78
- const { duplicatePackagesCount } = jobs[0].summary.webpack;
79
- const duplicatePackagesInsights = Boolean(
80
- duplicatePackagesCount.current || duplicatePackagesCount.baseline,
81
- );
82
-
83
172
  return (
84
- <Layout jobs={jobs} version={version}>
85
- <Container className={css.summaryContainer}>
86
- <Summary
87
- size="large"
88
- keys={METRICS_WEBPACK_GENERAL}
89
- data={jobs[0].summary}
90
- showSummaryItemDelta={jobs.length !== 1}
91
- />
92
- </Container>
173
+ <JobsProvider jobs={jobs}>
174
+ <Layout jobs={jobs} version={version}>
175
+ <Container className={css.summaryContainer}>
176
+ <Summary
177
+ size="large"
178
+ keys={METRICS_WEBPACK_GENERAL}
179
+ data={jobs[0].summary}
180
+ showSummaryItemDelta={jobs.length !== 1}
181
+ />
182
+ </Container>
93
183
 
94
- <Container className={css.tabsContainer}>
95
- <Tabs className={css.tabs}>
96
- <NavLink exact to={URLS.OVERVIEW} activeClassName={css.tabActive}>
97
- {I18N.OVERVIEW}
98
- </NavLink>
99
- <NavLink exact to={URLS.ASSETS} activeClassName={css.tabActive}>
100
- {I18N.ASSETS}
101
- </NavLink>
102
- <NavLink exact to={URLS.MODULES} activeClassName={css.tabActive}>
103
- {I18N.MODULES}
104
- </NavLink>
105
- <NavLink exact to={URLS.PACKAGES} activeClassName={css.tabActive}>
106
- {I18N.PACKAGES}
107
- </NavLink>
108
- </Tabs>
109
- </Container>
184
+ <Container className={css.tabsContainer}>
185
+ <Tabs className={css.tabs}>
186
+ <NavLink exact to={URLS.OVERVIEW} activeClassName={css.tabActive}>
187
+ {I18N.OVERVIEW}
188
+ </NavLink>
189
+ <NavLink exact to={URLS.ASSETS} activeClassName={css.tabActive}>
190
+ {I18N.ASSETS}
191
+ </NavLink>
192
+ <NavLink exact to={URLS.MODULES} activeClassName={css.tabActive}>
193
+ {I18N.MODULES}
194
+ </NavLink>
195
+ <NavLink exact to={URLS.PACKAGES} activeClassName={css.tabActive}>
196
+ {I18N.PACKAGES}
197
+ </NavLink>
198
+ </Tabs>
199
+ </Container>
110
200
 
111
- <div className={css.tabsContent}>
112
- <Switch>
113
- <Route
114
- exact
115
- path={URLS.ASSETS}
116
- render={({ location }) => (
117
- <Container>
118
- <Stack space="medium">
119
- <Summary
120
- keys={METRICS_WEBPACK_ASSETS}
121
- data={jobs[0].summary}
122
- showSummaryItemDelta={jobs.length !== 1}
123
- />
124
- <Box outline>
125
- <BundleAssets
126
- jobs={jobs}
127
- setState={bundleStatsSetState}
128
- {...bundleStatsState}
129
- key={`${location.pathname}_${location.search}`}
130
- />
131
- </Box>
132
- </Stack>
133
- </Container>
134
- )}
135
- />
136
- <Route
137
- exact
138
- path={URLS.MODULES}
139
- render={() => (
140
- <Container>
141
- <Stack space="medium">
142
- <Summary
143
- keys={METRICS_WEBPACK_MODULES}
144
- data={jobs[0].summary}
145
- showSummaryItemDelta={jobs.length !== 1}
146
- />
147
- <Box outline>
148
- <BundleModules
149
- jobs={jobs}
150
- setState={bundleModulesSetState}
151
- {...bundleModulesState}
152
- />
153
- </Box>
154
- </Stack>
155
- </Container>
156
- )}
157
- />
158
- <Route
159
- exact
160
- path={URLS.PACKAGES}
161
- render={({ location }) => (
162
- <Container>
163
- <Stack space="medium">
164
- <Summary
165
- keys={METRICS_WEBPACK_PACKAGES}
166
- data={jobs[0].summary}
167
- showSummaryItemDelta={jobs.length !== 1}
168
- />
169
- <Box outline>
170
- <BundlePackages
171
- jobs={jobs}
172
- {...bundlePackagesState}
173
- setState={bundlePackagesSetState}
174
- key={`${location.pathname}_${location.search}`}
175
- />
176
- </Box>
177
- </Stack>
178
- </Container>
179
- )}
180
- />
181
- <Route
182
- exact
183
- path={URLS.OVERVIEW}
184
- render={() => (
185
- <Stack space="large">
186
- {duplicatePackagesInsights && (
187
- <Container>
188
- <DuplicatePackagesWarning
189
- duplicatePackagesCount={duplicatePackagesCount}
190
- showDelta={jobs.length > 1}
191
- />
192
- </Container>
193
- )}
194
- <Container>
195
- <Stack space="small">
196
- <TotalSizeTypeTitle />
197
- <BundleAssetsTotalsChartBars jobs={jobs} />
198
- <Box outline>
199
- <BundleAssetsTotalsTable jobs={jobs} />
200
- </Box>
201
- </Stack>
202
- </Container>
203
- </Stack>
204
- )}
205
- />
206
- </Switch>
207
- </div>
208
- </Layout>
201
+ <div className={css.tabsContent}>
202
+ <Switch>
203
+ <Route exact path={URLS.ASSETS} component={AssetsContent} />
204
+ <Route exact path={URLS.MODULES} component={ModulesContent} />
205
+ <Route exact path={URLS.PACKAGES} component={PackagesContent} />
206
+ <Route exact path={URLS.OVERVIEW} component={OverviewContent} />
207
+ </Switch>
208
+ </div>
209
+ </Layout>
210
+ </JobsProvider>
209
211
  );
210
212
  };
211
213
 
@@ -13,7 +13,7 @@
13
13
  }
14
14
 
15
15
  .summaryContainer {
16
- padding-top: var(--space-large);
16
+ padding-top: var(--space-medium);
17
17
  padding-bottom: var(--space-small);
18
18
  }
19
19
 
@@ -35,8 +35,8 @@
35
35
  }
36
36
 
37
37
  .tabsContent {
38
- padding-top: var(--space-large);
39
- padding-bottom: var(--space-large);
38
+ padding-top: var(--space-medium);
39
+ padding-bottom: var(--space-medium);
40
40
  min-height: 480px;
41
41
  }
42
42
 
@@ -1,4 +1,5 @@
1
1
  .fileName {
2
+ max-width: 100%;
2
3
  padding: 2px;
3
4
  background: var(--color-highlight-warning);
4
5
  }