@bundle-stats/ui 3.2.5 → 3.2.6-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 (58) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/lib/components/bundle-assets/bundle-assets.js +15 -7
  3. package/lib/components/bundle-assets/bundle-assets.module.css +13 -26
  4. package/lib/components/bundle-packages/bundle-packages.js +8 -4
  5. package/lib/components/bundle-packages/bundle-packages.module.css +4 -12
  6. package/lib/components/delta/delta.module.css +1 -0
  7. package/lib/components/metrics-table-search/metrics-table-search.module.css +5 -4
  8. package/lib/css/variables.css +4 -4
  9. package/lib/layout/box/box.module.css +9 -0
  10. package/lib/ui/dropdown/dropdown.js +1 -2
  11. package/lib/ui/dropdown/dropdown.module.css +7 -8
  12. package/lib/ui/filters/filters.js +10 -5
  13. package/lib/ui/filters/filters.module.css +10 -0
  14. package/lib/ui/index.js +8 -0
  15. package/lib/ui/table/table.module.css +0 -4
  16. package/lib/ui/tag/index.js +18 -0
  17. package/lib/ui/tag/tag.js +72 -0
  18. package/lib/ui/tag/tag.module.css +55 -0
  19. package/lib/ui/tag/tag.stories.js +38 -0
  20. package/lib/ui/tooltip/tooltip.module.css +1 -1
  21. package/lib-esm/components/bundle-assets/bundle-assets.js +14 -7
  22. package/lib-esm/components/bundle-assets/bundle-assets.module.css +13 -26
  23. package/lib-esm/components/bundle-packages/bundle-packages.js +7 -4
  24. package/lib-esm/components/bundle-packages/bundle-packages.module.css +4 -12
  25. package/lib-esm/components/delta/delta.module.css +1 -0
  26. package/lib-esm/components/metrics-table-search/metrics-table-search.module.css +5 -4
  27. package/lib-esm/css/variables.css +4 -4
  28. package/lib-esm/layout/box/box.module.css +9 -0
  29. package/lib-esm/ui/dropdown/dropdown.js +1 -2
  30. package/lib-esm/ui/dropdown/dropdown.module.css +7 -8
  31. package/lib-esm/ui/filters/filters.js +9 -4
  32. package/lib-esm/ui/filters/filters.module.css +10 -0
  33. package/lib-esm/ui/index.js +1 -0
  34. package/lib-esm/ui/table/table.module.css +0 -4
  35. package/lib-esm/ui/tag/index.js +1 -0
  36. package/lib-esm/ui/tag/tag.js +45 -0
  37. package/lib-esm/ui/tag/tag.module.css +55 -0
  38. package/lib-esm/ui/tag/tag.stories.js +23 -0
  39. package/lib-esm/ui/tooltip/tooltip.module.css +1 -1
  40. package/package.json +7 -7
  41. package/src/components/bundle-assets/bundle-assets.jsx +58 -41
  42. package/src/components/bundle-assets/bundle-assets.module.css +13 -26
  43. package/src/components/bundle-packages/bundle-packages.jsx +10 -5
  44. package/src/components/bundle-packages/bundle-packages.module.css +4 -12
  45. package/src/components/delta/delta.module.css +1 -0
  46. package/src/components/metrics-table-search/metrics-table-search.module.css +5 -4
  47. package/src/css/variables.css +4 -4
  48. package/src/layout/box/box.module.css +9 -0
  49. package/src/ui/dropdown/dropdown.jsx +4 -6
  50. package/src/ui/dropdown/dropdown.module.css +7 -8
  51. package/src/ui/filters/filters.jsx +53 -50
  52. package/src/ui/filters/filters.module.css +10 -0
  53. package/src/ui/index.js +1 -0
  54. package/src/ui/table/table.module.css +0 -4
  55. package/src/ui/tag/index.js +1 -0
  56. package/src/ui/tag/tag.jsx +49 -0
  57. package/src/ui/tag/tag.module.css +55 -0
  58. package/src/ui/tooltip/tooltip.module.css +1 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,25 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [3.2.6-beta.1](https://github.com/relative-ci/bundle-stats/compare/v3.2.5...v3.2.6-beta.1) (2022-02-25)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **ui:** Add border-radius to flags ([4f7663b](https://github.com/relative-ci/bundle-stats/commit/4f7663b29a954cf1ace9caa9739acd9f37aa3b95))
12
+ * **ui:** Box - add border-radius to outline ([bd78d20](https://github.com/relative-ci/bundle-stats/commit/bd78d2052db4b781afc3a1d9e8dd583986d0093d))
13
+ * **ui:** Normlize border-radius usage ([e8a6b30](https://github.com/relative-ci/bundle-stats/commit/e8a6b302729112d75a82c74ef1d952fc639d16ab))
14
+ * **ui:** Table - remove last row bottom line ([9398a93](https://github.com/relative-ci/bundle-stats/commit/9398a936e1d937aed188f96ce56ebfa56f3af7d7))
15
+
16
+
17
+ ### Features
18
+
19
+ * **ui:** Add Tag component ([f796f9c](https://github.com/relative-ci/bundle-stats/commit/f796f9c909703dab3a513059215a2ce24bc12244))
20
+
21
+
22
+
23
+
24
+
6
25
  ## [3.2.5](https://github.com/relative-ci/bundle-stats/compare/v3.2.4...v3.2.5) (2022-02-15)
7
26
 
8
27
 
@@ -33,6 +33,8 @@ var _popover = require("../../ui/popover");
33
33
 
34
34
  var _tooltip = require("../../ui/tooltip");
35
35
 
36
+ var _tag = require("../../ui/tag");
37
+
36
38
  var _filters = require("../../ui/filters");
37
39
 
38
40
  var _sortDropdown = require("../../ui/sort-dropdown");
@@ -151,16 +153,22 @@ var getRenderRowHeader = function getRenderRowHeader(_ref6) {
151
153
  }, /*#__PURE__*/_react["default"].createElement(_icon.Icon, {
152
154
  className: _bundleAssetsModule["default"].notPredictiveIcon,
153
155
  glyph: "warning"
154
- })), isChunk && /*#__PURE__*/_react["default"].createElement("span", {
156
+ })), isChunk && /*#__PURE__*/_react["default"].createElement(_tag.Tag, {
155
157
  title: "Chunk",
156
- className: _bundleAssetsModule["default"].flagChunk
157
- }, "c"), isEntry && /*#__PURE__*/_react["default"].createElement("span", {
158
+ size: _tag.Tag.SIZES.SMALL,
159
+ kind: _tag.Tag.KINDS.INFO,
160
+ className: (0, _classnames["default"])(_bundleAssetsModule["default"].tag, _bundleAssetsModule["default"].tagChunk)
161
+ }), isEntry && /*#__PURE__*/_react["default"].createElement(_tag.Tag, {
158
162
  title: "Entrypoint",
159
- className: _bundleAssetsModule["default"].flagEntry
160
- }, "e"), isInitial && /*#__PURE__*/_react["default"].createElement("span", {
163
+ size: _tag.Tag.SIZES.SMALL,
164
+ kind: _tag.Tag.KINDS.INFO,
165
+ className: (0, _classnames["default"])(_bundleAssetsModule["default"].tag, _bundleAssetsModule["default"].tagEntry)
166
+ }), isInitial && /*#__PURE__*/_react["default"].createElement(_tag.Tag, {
161
167
  title: "Initial",
162
- className: _bundleAssetsModule["default"].flagInitial
163
- }, "i"))
168
+ size: _tag.Tag.SIZES.SMALL,
169
+ kind: _tag.Tag.KINDS.INFO,
170
+ className: (0, _classnames["default"])(_bundleAssetsModule["default"].tag, _bundleAssetsModule["default"].tagInitial)
171
+ }))
164
172
  }, /*#__PURE__*/_react["default"].createElement(_assetInfo.AssetInfo, {
165
173
  className: _bundleAssetsModule["default"].assetInfo,
166
174
  item: item,
@@ -30,41 +30,28 @@
30
30
  display: none;
31
31
  }
32
32
 
33
- .flag {
34
- display: inline-block;
35
- width: var(--space-xsmall);
36
- height: var(--space-xsmall);
37
- font-family: var(--font-family);
38
- font-size: 8px;
39
- font-weight: bold;
40
- background: var(--color-highlight);
41
- color: var(--color-text-light);
42
- line-height: var(--space-xsmall);
43
- text-align: center;
44
- text-transform: uppercase;
45
- vertical-align: middle;
46
- }
47
-
48
- .flag + .flag {
33
+ .tag + .tag {
49
34
  margin-left: 2px;
50
35
  }
51
36
 
52
- .flagEntry {
53
- composes: flag;
37
+ .tagEntry {
54
38
  background: var(--color-info-light);
55
- color: var(--color-background);
56
39
  }
57
40
 
58
- .flagInitial {
59
- composes: flag;
41
+ .tagEntry::before {
42
+ content: 'e';
43
+ }
44
+
45
+ .tagInitial {
60
46
  background: var(--color-info-light);
61
- color: var(--color-background);
62
47
  }
63
48
 
64
- .flagChunk {
65
- composes: flag;
66
- background: var(--color-info);
67
- color: var(--color-background);
49
+ .tagInitial::before {
50
+ content: 'i';
51
+ }
52
+
53
+ .tagChunk::before {
54
+ content: 'c';
68
55
  }
69
56
 
70
57
  /* Tooltip not predictive */
@@ -31,6 +31,8 @@ var _popover = require("../../ui/popover");
31
31
 
32
32
  var _sortDropdown = require("../../ui/sort-dropdown");
33
33
 
34
+ var _tag = require("../../ui/tag");
35
+
34
36
  var _toolbar = require("../../ui/toolbar");
35
37
 
36
38
  var _fileName = require("../../ui/file-name");
@@ -139,10 +141,12 @@ var PackageRowHeader = function PackageRowHeader(_ref2) {
139
141
  className: _bundlePackagesModule["default"].packageNames
140
142
  }, packageNames.map(function (packageName, index) {
141
143
  // Render duplicate flag only for the last entry
142
- var duplicateFlag = index === packageNames.length - 1 && item.duplicate && /*#__PURE__*/_react["default"].createElement("span", {
143
- className: _bundlePackagesModule["default"].duplicate,
144
- title: "Duplicate package"
145
- }, "D");
144
+ var duplicateFlag = index === packageNames.length - 1 && item.duplicate && /*#__PURE__*/_react["default"].createElement(_tag.Tag, {
145
+ title: "Duplicate package",
146
+ kind: _tag.Tag.KINDS.DANGER,
147
+ size: _tag.Tag.SIZES.SMALL,
148
+ className: _bundlePackagesModule["default"].tagDuplicate
149
+ });
146
150
 
147
151
  return /*#__PURE__*/_react["default"].createElement(_popover.Popover, {
148
152
  className: _bundlePackagesModule["default"].packageName,
@@ -12,20 +12,12 @@
12
12
  margin-right: -1px; /** collapse border */
13
13
  }
14
14
 
15
- .duplicate {
15
+ .tagDuplicate {
16
16
  margin-right: var(--space-xxxsmall);
17
- display: inline-block;
18
- width: var(--space-small);
19
- height: var(--space-small);
20
- font-size: 10px;
21
- font-weight: bold;
22
- line-height: var(--space-small);
23
- text-align: center;
24
- text-transform: uppercase;
25
- vertical-align: middle;
17
+ }
26
18
 
27
- background: var(--color-danger);
28
- color: var(--color-light);
19
+ .tagDuplicate::before {
20
+ content: 'd';
29
21
  }
30
22
 
31
23
  .packageName {
@@ -28,6 +28,7 @@
28
28
  }
29
29
 
30
30
  .inverted {
31
+ border-radius: var(--radius-small);
31
32
  background-color: var(--color-gray-ultra-light);
32
33
  color: var(--color-light);
33
34
  }
@@ -5,6 +5,7 @@
5
5
  }
6
6
 
7
7
  .input {
8
+ border-radius: var(--radius-small) 0 0 var(--radius-small);
8
9
  height: var(--space-large);
9
10
  border-color: var(--color-outline);
10
11
  }
@@ -21,12 +22,12 @@
21
22
  cursor: pointer;
22
23
  border-radius: 50%;
23
24
  position: absolute;
24
- right: 0;
25
+ right: 2px;
25
26
  top: 50%;
26
27
  transform: translateY(-50%);
27
- padding: var(--space-xxsmall);
28
- width: var(--space-large);
29
- height: var(--space-large);
28
+ padding: var(--space-xxxsmall);
29
+ width: var(--space-medium);
30
+ height: var(--space-medium);
30
31
  background: radial-gradient(var(--color-background) 50%, transparent);
31
32
  color: var(--color-text-ultra-light);
32
33
  transition: var(--transition-in);
@@ -170,7 +170,7 @@
170
170
  --color-outline-warning: var(--color-yellow-200);
171
171
  --color-outline-danger: var(--color-red-100);
172
172
 
173
- --color-shadow: rgba(0, 0, 0, 0.2);
173
+ --color-shadow: rgba(0, 0, 0, 0.1);
174
174
 
175
175
  --transition-in: all 0.2s ease-in;
176
176
  --transition-out: all 0.17s ease-out;
@@ -181,9 +181,9 @@
181
181
  --layer-high: 1000;
182
182
  --layer-xhigh: 10000;
183
183
 
184
- --radius-small: var(--space-xxxsmall);
185
- --radius-medium: var(--space-xxsmall);
186
- --radius-large: var(--space-small);
184
+ --radius-small: 2px;
185
+ --radius-medium: var(--space-xxxsmall);
186
+ --radius-large: var(--space-xxsmall);
187
187
 
188
188
  /** Layout */
189
189
  --max-width: 80rem;
@@ -4,6 +4,15 @@
4
4
 
5
5
  .outline {
6
6
  border: 1px solid var(--color-outline);
7
+ border-radius: var(--radius-medium);
8
+ }
9
+
10
+ .outline > :first-child {
11
+ border-radius: var(--radius-medium) var(--radius-medium) 0 0;
12
+ }
13
+
14
+ .outline > :last-child {
15
+ border-radius: 0 0 var(--radius-medium) var(--radius-medium);
7
16
  }
8
17
 
9
18
  .padding-xxxsmall {
@@ -39,8 +39,7 @@ var Dropdown = function Dropdown(props) {
39
39
  className: rootClassName,
40
40
  tabIndex: null
41
41
  }), /*#__PURE__*/_react["default"].createElement(_flexStack.FlexStack, {
42
- space: "xxxsmall",
43
- className: _dropdownModule["default"].label
42
+ space: "xxxsmall"
44
43
  }, glyph && /*#__PURE__*/_react["default"].createElement(_icon.Icon, {
45
44
  className: _dropdownModule["default"].labelIcon,
46
45
  glyph: glyph
@@ -2,15 +2,9 @@
2
2
  background: none;
3
3
  border: none;
4
4
  padding: 0;
5
- }
6
5
 
7
- .root:focus {
8
- outline: none;
9
- box-shadow: 0 0 var(--space-xxxsmall) var(--color-shadow);
10
- }
11
-
12
- .label {
13
6
  border: 1px solid var(--color-outline);
7
+ border-radius: var(--radius-small);
14
8
  padding: calc(var(--space-xxsmall) - 1px);
15
9
  display: flex;
16
10
  align-items: center;
@@ -24,7 +18,11 @@
24
18
  color: var(--color-text-light);
25
19
  }
26
20
 
27
- .label:hover {
21
+ .root:hover,
22
+ .root:focus,
23
+ .root:active {
24
+ outline: none;
25
+ box-shadow: 0 0 var(--space-xxxsmall) var(--color-shadow);
28
26
  border-color: var(--color-outline-dark);
29
27
  color: var(--color-text);
30
28
  }
@@ -33,6 +31,7 @@
33
31
  position: absolute;
34
32
  left: 0;
35
33
  top: 100%;
34
+ border-radius: var(--radius-medium);
36
35
  box-shadow: 0 2px var(--space-xxsmall) var(--color-shadow);
37
36
  background: var(--color-background);
38
37
  min-width: 180px;
@@ -92,7 +92,8 @@ Filter.defaultProps = {
92
92
  };
93
93
 
94
94
  var FilterGroup = function FilterGroup(props) {
95
- var groupKey = props.groupKey,
95
+ var className = props.className,
96
+ groupKey = props.groupKey,
96
97
  data = props.data,
97
98
  values = props.values,
98
99
  onCheckboxChange = props.onCheckboxChange,
@@ -138,6 +139,7 @@ var FilterGroup = function FilterGroup(props) {
138
139
  };
139
140
 
140
141
  return /*#__PURE__*/_react["default"].createElement(_dropdown.Dropdown, {
142
+ className: className,
141
143
  label: dropdownLabel,
142
144
  ariaLabel: "".concat(groupLabel, ": ").concat(filterSuffix)
143
145
  }, function (_ref7) {
@@ -188,6 +190,7 @@ var FilterGroup = function FilterGroup(props) {
188
190
  };
189
191
 
190
192
  FilterGroup.propTypes = {
193
+ className: _propTypes["default"].string,
191
194
  groupKey: _propTypes["default"].string.isRequired,
192
195
  data: _propTypes["default"].object.isRequired,
193
196
  // eslint-disable-line react/forbid-prop-types
@@ -196,6 +199,9 @@ FilterGroup.propTypes = {
196
199
  onCheckboxChange: _propTypes["default"].func.isRequired,
197
200
  toggleFilters: _propTypes["default"].func.isRequired
198
201
  };
202
+ FilterGroup.defaultProps = {
203
+ className: ''
204
+ };
199
205
 
200
206
  var Filters = function Filters(props) {
201
207
  var className = props.className,
@@ -231,16 +237,15 @@ var Filters = function Filters(props) {
231
237
  });
232
238
  }
233
239
 
234
- return /*#__PURE__*/_react["default"].createElement("div", {
235
- className: _filtersModule["default"].item
236
- }, /*#__PURE__*/_react["default"].createElement(FilterGroup, {
240
+ return /*#__PURE__*/_react["default"].createElement(FilterGroup, {
241
+ className: _filtersModule["default"].item,
237
242
  key: name,
238
243
  groupKey: name,
239
244
  data: data,
240
245
  values: values,
241
246
  onCheckboxChange: onCheckboxChange,
242
247
  toggleFilters: toggleFilters
243
- }));
248
+ });
244
249
  })));
245
250
  };
246
251
 
@@ -11,6 +11,7 @@
11
11
  }
12
12
 
13
13
  .filterInput {
14
+ border-radius: var(--radius-small) 0 0 var(--radius-small);
14
15
  flex: 0 0 auto;
15
16
  height: 1em;
16
17
  cursor: pointer;
@@ -129,11 +130,20 @@
129
130
  }
130
131
 
131
132
  .item {
133
+ border-radius: 0;
132
134
  position: relative;
133
135
  flex: 0 0 auto;
134
136
  margin-right: -1px;
135
137
  }
136
138
 
139
+ .item:first-child {
140
+ border-radius: var(--radius-small) 0 0 var(--radius-small);
141
+ }
142
+
143
+ .item:last-child {
144
+ border-radius: 0 var(--radius-small) var(--radius-small) 0;
145
+ }
146
+
137
147
  .item:hover {
138
148
  z-index: var(--layer-low); /* show collapsed border */
139
149
  }
package/lib/ui/index.js CHANGED
@@ -105,6 +105,12 @@ Object.defineProperty(exports, "Tabs", {
105
105
  return _tabs.Tabs;
106
106
  }
107
107
  });
108
+ Object.defineProperty(exports, "Tag", {
109
+ enumerable: true,
110
+ get: function get() {
111
+ return _tag.Tag;
112
+ }
113
+ });
108
114
  Object.defineProperty(exports, "Tooltip", {
109
115
  enumerable: true,
110
116
  get: function get() {
@@ -146,4 +152,6 @@ var _table = require("./table");
146
152
 
147
153
  var _tabs = require("./tabs");
148
154
 
155
+ var _tag = require("./tag");
156
+
149
157
  var _tooltip = require("./tooltip");
@@ -13,10 +13,6 @@
13
13
  text-align: left;
14
14
  }
15
15
 
16
- tr:last-child .cell {
17
- border-bottom-width: 1px;
18
- }
19
-
20
16
  .root thead .cell {
21
17
  border-width: 0 0 2px;
22
18
  text-transform: uppercase;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ var _tag = require("./tag");
8
+
9
+ Object.keys(_tag).forEach(function (key) {
10
+ if (key === "default" || key === "__esModule") return;
11
+ if (key in exports && exports[key] === _tag[key]) return;
12
+ Object.defineProperty(exports, key, {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _tag[key];
16
+ }
17
+ });
18
+ });
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Tag = exports.SIZES = exports.KINDS = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+
12
+ var _classnames = _interopRequireDefault(require("classnames"));
13
+
14
+ var _tagModule = _interopRequireDefault(require("./tag.module.css"));
15
+
16
+ var _excluded = ["className", "as", "kind", "size"];
17
+
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
19
+
20
+ 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); }
21
+
22
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
23
+
24
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
25
+
26
+ var KINDS = {
27
+ DEFAULT: 'default',
28
+ SUCCESS: 'success',
29
+ INFO: 'info',
30
+ WARNING: 'warning',
31
+ DANGER: 'danger'
32
+ };
33
+ exports.KINDS = KINDS;
34
+ var SIZES = {
35
+ SMALL: 'small',
36
+ MEDIUM: 'medium',
37
+ LARGE: 'large'
38
+ };
39
+ exports.SIZES = SIZES;
40
+
41
+ var Tag = function Tag(props) {
42
+ var _props$className = props.className,
43
+ className = _props$className === void 0 ? '' : _props$className,
44
+ _props$as = props.as,
45
+ Component = _props$as === void 0 ? 'span' : _props$as,
46
+ _props$kind = props.kind,
47
+ kind = _props$kind === void 0 ? KINDS.DEFAULT : _props$kind,
48
+ _props$size = props.size,
49
+ size = _props$size === void 0 ? SIZES.MEDIUM : _props$size,
50
+ restProps = _objectWithoutProperties(props, _excluded);
51
+
52
+ var rootClassName = (0, _classnames["default"])(_tagModule["default"].root, className, _tagModule["default"][kind], _tagModule["default"][size]);
53
+ return /*#__PURE__*/_react["default"].createElement(Component, _extends({
54
+ className: rootClassName
55
+ }, restProps));
56
+ };
57
+
58
+ exports.Tag = Tag;
59
+ Tag.propTypes = {
60
+ className: _propTypes["default"].string,
61
+ as: _propTypes["default"].elementType,
62
+ kind: _propTypes["default"].oneOf(Object.values(KINDS)),
63
+ size: _propTypes["default"].oneOf(Object.values(SIZES))
64
+ };
65
+ Tag.defaultProps = {
66
+ className: '',
67
+ as: 'span',
68
+ kind: KINDS.DEFAULT,
69
+ size: SIZES.MEDIUM
70
+ };
71
+ Tag.KINDS = KINDS;
72
+ Tag.SIZES = SIZES;
@@ -0,0 +1,55 @@
1
+ .root {
2
+ display: inline-block;
3
+ font-family: var(--font-family);
4
+ font-weight: bold;
5
+ background: var(--color-text-light);
6
+ color: var(--color-light);
7
+ text-align: center;
8
+ text-transform: uppercase;
9
+ }
10
+
11
+ /** Kind variation */
12
+ .success {
13
+ background: var(--color-success);
14
+ }
15
+
16
+ .info {
17
+ background: var(--color-info);
18
+ }
19
+
20
+ .warning {
21
+ background: var(--color-warning-dark);
22
+ }
23
+
24
+ .danger {
25
+ background: var(--color-danger);
26
+ }
27
+
28
+ /** Size variation */
29
+ /** default: medium */
30
+ .root {
31
+ border-radius: var(--radius-medium);
32
+ padding: var(--space-xxxsmall);
33
+ min-width: var(--space-small);
34
+ height: var(--space-small);
35
+ font-size: 9px;
36
+ line-height: 1;
37
+ }
38
+
39
+ .small {
40
+ border-radius: var(--radius-small);
41
+ padding: calc(var(--space-xxxsmall) / 2);
42
+ height: var(--space-xsmall);
43
+ min-width: var(--space-xsmall);
44
+ font-size: 8px;
45
+ line-height: 1;
46
+ }
47
+
48
+ .large {
49
+ border-radius: var(--radius-large);
50
+ padding: var(--space-xxxsmall) var(--space-xxsmall);
51
+ min-width: var(--space-medium);
52
+ height: var(--space-medium);
53
+ font-size: 12px;
54
+ line-height: var(--space-small);
55
+ }
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = exports.OneLetter = exports.Default = void 0;
7
+
8
+ var _ = require(".");
9
+
10
+ var _default = {
11
+ title: 'UI/Tag',
12
+ component: _.Tag,
13
+ argTypes: {
14
+ kind: {
15
+ control: 'select',
16
+ options: Object.values(_.Tag.KINDS)
17
+ },
18
+ size: {
19
+ control: 'select',
20
+ options: Object.values(_.Tag.SIZES)
21
+ }
22
+ },
23
+ args: {
24
+ children: 'tag'
25
+ }
26
+ };
27
+ exports["default"] = _default;
28
+
29
+ var Default = _.Tag.bind();
30
+
31
+ exports.Default = Default;
32
+
33
+ var OneLetter = _.Tag.bind();
34
+
35
+ exports.OneLetter = OneLetter;
36
+ OneLetter.args = {
37
+ children: 'd'
38
+ };
@@ -12,7 +12,7 @@
12
12
 
13
13
  .tooltip {
14
14
  padding: var(--space-xxxsmall) var(--space-xxsmall);
15
- border-radius: var(--radius-small);
15
+ border-radius: var(--radius-medium);
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));
@@ -14,6 +14,7 @@ import { Icon } from '../../ui/icon';
14
14
  import { FileName } from '../../ui/file-name';
15
15
  import { Popover } from '../../ui/popover';
16
16
  import { Tooltip } from '../../ui/tooltip';
17
+ import { Tag } from '../../ui/tag';
17
18
  import { Filters } from '../../ui/filters';
18
19
  import { SortDropdown } from '../../ui/sort-dropdown';
19
20
  import { EmptySet } from '../../ui/empty-set';
@@ -100,16 +101,22 @@ const getRenderRowHeader = _ref4 => {
100
101
  }, /*#__PURE__*/React.createElement(Icon, {
101
102
  className: css.notPredictiveIcon,
102
103
  glyph: "warning"
103
- })), isChunk && /*#__PURE__*/React.createElement("span", {
104
+ })), isChunk && /*#__PURE__*/React.createElement(Tag, {
104
105
  title: "Chunk",
105
- className: css.flagChunk
106
- }, "c"), isEntry && /*#__PURE__*/React.createElement("span", {
106
+ size: Tag.SIZES.SMALL,
107
+ kind: Tag.KINDS.INFO,
108
+ className: cx(css.tag, css.tagChunk)
109
+ }), isEntry && /*#__PURE__*/React.createElement(Tag, {
107
110
  title: "Entrypoint",
108
- className: css.flagEntry
109
- }, "e"), isInitial && /*#__PURE__*/React.createElement("span", {
111
+ size: Tag.SIZES.SMALL,
112
+ kind: Tag.KINDS.INFO,
113
+ className: cx(css.tag, css.tagEntry)
114
+ }), isInitial && /*#__PURE__*/React.createElement(Tag, {
110
115
  title: "Initial",
111
- className: css.flagInitial
112
- }, "i"))
116
+ size: Tag.SIZES.SMALL,
117
+ kind: Tag.KINDS.INFO,
118
+ className: cx(css.tag, css.tagInitial)
119
+ }))
113
120
  }, /*#__PURE__*/React.createElement(AssetInfo, {
114
121
  className: css.assetInfo,
115
122
  item: item,