@bundle-stats/ui 4.22.3 → 4.23.0-beta.10

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 (395) hide show
  1. package/lib/app/app.js +4 -0
  2. package/lib/app/app.js.map +1 -1
  3. package/lib/app/app.module.css +14 -5
  4. package/lib/app/header/header.module.css +1 -3
  5. package/lib/components/asset-name/asset-name.js +8 -7
  6. package/lib/components/asset-name/asset-name.js.map +1 -1
  7. package/lib/components/asset-name/asset-name.module.css +11 -10
  8. package/lib/components/bundle-assets/bundle-assets.js +4 -2
  9. package/lib/components/bundle-assets/bundle-assets.js.map +1 -1
  10. package/lib/components/bundle-assets/bundle-assets.module.css +0 -12
  11. package/lib/components/bundle-assets/index.js +2 -1
  12. package/lib/components/bundle-assets/index.js.map +1 -1
  13. package/lib/components/bundle-assets-totals/bundle-assets-totals.js +4 -2
  14. package/lib/components/bundle-assets-totals/bundle-assets-totals.js.map +1 -1
  15. package/lib/components/bundle-modules/bundle-modules.js +5 -3
  16. package/lib/components/bundle-modules/bundle-modules.js.map +1 -1
  17. package/lib/components/bundle-modules/bundle-modules.module.css +2 -16
  18. package/lib/components/bundle-modules/index.js +2 -1
  19. package/lib/components/bundle-modules/index.js.map +1 -1
  20. package/lib/components/bundle-packages/bundle-packages.js +5 -3
  21. package/lib/components/bundle-packages/bundle-packages.js.map +1 -1
  22. package/lib/components/bundle-packages/bundle-packages.module.css +18 -22
  23. package/lib/components/delta/delta.js +3 -13
  24. package/lib/components/delta/delta.js.map +1 -1
  25. package/lib/components/delta/delta.module.css +13 -12
  26. package/lib/components/delta/index.js.map +1 -1
  27. package/lib/components/entry-info/entry-info.js +4 -2
  28. package/lib/components/entry-info/entry-info.js.map +1 -1
  29. package/lib/components/entry-info/entry-info.module.css +7 -2
  30. package/lib/components/index.js +3 -1
  31. package/lib/components/index.js.map +1 -1
  32. package/lib/components/insight-icon/insight-icon.module.css +6 -6
  33. package/lib/components/job-name/job-name.js +1 -2
  34. package/lib/components/job-name/job-name.js.map +1 -1
  35. package/lib/components/jobs-header/jobs-header.js +1 -1
  36. package/lib/components/jobs-header/jobs-header.js.map +1 -1
  37. package/lib/components/jobs-header/jobs-header.module.css +0 -1
  38. package/lib/components/metric-change-legend/index.js +18 -0
  39. package/lib/components/metric-change-legend/index.js.map +1 -0
  40. package/lib/components/metric-change-legend/metric-change-legend.js +91 -0
  41. package/lib/components/metric-change-legend/metric-change-legend.js.map +1 -0
  42. package/lib/components/metric-change-legend/metric-change-legend.module.css +80 -0
  43. package/lib/components/metric-run-info/metric-run-info.js +24 -8
  44. package/lib/components/metric-run-info/metric-run-info.js.map +1 -1
  45. package/lib/components/metrics-display-selector/metrics-display-selector.js +7 -9
  46. package/lib/components/metrics-display-selector/metrics-display-selector.js.map +1 -1
  47. package/lib/components/metrics-display-selector/metrics-display-selector.module.css +0 -27
  48. package/lib/components/metrics-table/metrics-table.js +31 -20
  49. package/lib/components/metrics-table/metrics-table.js.map +1 -1
  50. package/lib/components/metrics-table/metrics-table.module.css +4 -12
  51. package/lib/components/metrics-table-header/metrics-table-header.js +6 -6
  52. package/lib/components/metrics-table-header/metrics-table-header.js.map +1 -1
  53. package/lib/components/metrics-table-header/metrics-table-header.module.css +8 -12
  54. package/lib/components/metrics-table-options/metrics-table-options.js +4 -5
  55. package/lib/components/metrics-table-options/metrics-table-options.js.map +1 -1
  56. package/lib/components/metrics-table-row-count/index.js +18 -0
  57. package/lib/components/metrics-table-row-count/index.js.map +1 -0
  58. package/lib/components/metrics-table-row-count/metrics-table-row-count.js +17 -0
  59. package/lib/components/metrics-table-row-count/metrics-table-row-count.js.map +1 -0
  60. package/lib/components/metrics-table-row-count/metrics-table-row-count.module.css +5 -0
  61. package/lib/components/metrics-table-title/metrics-table-title.js +1 -1
  62. package/lib/components/metrics-table-title/metrics-table-title.js.map +1 -1
  63. package/lib/components/metrics-treemap/metrics-treemap.constants.js +3 -1
  64. package/lib/components/metrics-treemap/metrics-treemap.constants.js.map +1 -1
  65. package/lib/components/metrics-treemap/metrics-treemap.js +46 -113
  66. package/lib/components/metrics-treemap/metrics-treemap.js.map +1 -1
  67. package/lib/components/metrics-treemap/metrics-treemap.module.css +3 -274
  68. package/lib/components/metrics-treemap/metrics-treemap.utils.js +81 -16
  69. package/lib/components/metrics-treemap/metrics-treemap.utils.js.map +1 -1
  70. package/lib/components/metrics-treemap/tile/index.js +18 -0
  71. package/lib/components/metrics-treemap/tile/index.js.map +1 -0
  72. package/lib/components/metrics-treemap/tile/tile.js +79 -0
  73. package/lib/components/metrics-treemap/tile/tile.js.map +1 -0
  74. package/lib/components/metrics-treemap/tile/tile.module.css +145 -0
  75. package/lib/components/metrics-treemap/tile-group/index.js +18 -0
  76. package/lib/components/metrics-treemap/tile-group/index.js.map +1 -0
  77. package/lib/components/metrics-treemap/tile-group/tile-group.js +75 -0
  78. package/lib/components/metrics-treemap/tile-group/tile-group.js.map +1 -0
  79. package/lib/components/metrics-treemap/tile-group/tile-group.module.css +57 -0
  80. package/lib/components/metrics-treemap/tile-group-title/index.js +18 -0
  81. package/lib/components/metrics-treemap/tile-group-title/index.js.map +1 -0
  82. package/lib/components/metrics-treemap/tile-group-title/tile-group-title.js +24 -0
  83. package/lib/components/metrics-treemap/tile-group-title/tile-group-title.js.map +1 -0
  84. package/lib/components/metrics-treemap/tile-group-title/tile-group-title.module.css +48 -0
  85. package/lib/components/run-info/run-info.js +26 -14
  86. package/lib/components/run-info/run-info.js.map +1 -1
  87. package/lib/components/run-info/run-info.module.css +35 -26
  88. package/lib/components/sort-button/sort-button.module.css +0 -2
  89. package/lib/components/summary/summary.js +10 -10
  90. package/lib/components/summary/summary.js.map +1 -1
  91. package/lib/components/summary/summary.module.css +60 -14
  92. package/lib/constants.js +13 -1
  93. package/lib/constants.js.map +1 -1
  94. package/lib/css/default.css +7 -4
  95. package/lib/css/variables.css +84 -60
  96. package/lib/layout/flex-stack/flex-stack.js +2 -2
  97. package/lib/layout/flex-stack/flex-stack.js.map +1 -1
  98. package/lib/layout/flex-stack/flex-stack.module.css +65 -10
  99. package/lib/query-state.js +6 -3
  100. package/lib/query-state.js.map +1 -1
  101. package/lib/ui/button/button.js +3 -2
  102. package/lib/ui/button/button.js.map +1 -1
  103. package/lib/ui/button/button.module.css +38 -27
  104. package/lib/ui/control-group/control-group.js +1 -1
  105. package/lib/ui/control-group/control-group.js.map +1 -1
  106. package/lib/ui/copy-to-clipboard/copy-to-clipboard.module.css +2 -2
  107. package/lib/ui/dialog/dialog.js +7 -3
  108. package/lib/ui/dialog/dialog.js.map +1 -1
  109. package/lib/ui/dialog/dialog.module.css +27 -0
  110. package/lib/ui/dropdown/dropdown.js +13 -4
  111. package/lib/ui/dropdown/dropdown.js.map +1 -1
  112. package/lib/ui/dropdown/dropdown.module.css +60 -7
  113. package/lib/ui/filters/filters.js +28 -16
  114. package/lib/ui/filters/filters.js.map +1 -1
  115. package/lib/ui/filters/filters.module.css +3 -19
  116. package/lib/ui/hover-card/hover-card.js +7 -1
  117. package/lib/ui/hover-card/hover-card.js.map +1 -1
  118. package/lib/ui/hover-card/hover-card.module.css +18 -5
  119. package/lib/ui/input/input.module.css +2 -2
  120. package/lib/ui/table/table.module.css +12 -6
  121. package/lib/ui/tabs/tabs.module.css +13 -9
  122. package/lib/ui/tag/tag.module.css +0 -2
  123. package/lib/ui/textarea/textarea.module.css +2 -2
  124. package/lib/ui/toolbar/toolbar.js +2 -1
  125. package/lib/ui/toolbar/toolbar.js.map +1 -1
  126. package/lib/ui/toolbar/toolbar.module.css +0 -6
  127. package/lib/ui/tooltip/tooltip.js +6 -1
  128. package/lib/ui/tooltip/tooltip.js.map +1 -1
  129. package/lib/ui/tooltip/tooltip.module.css +12 -1
  130. package/lib/utils/index.js +1 -0
  131. package/lib/utils/index.js.map +1 -1
  132. package/lib/utils/portal.js +10 -0
  133. package/lib/utils/portal.js.map +1 -0
  134. package/lib-esm/app/app.js +5 -1
  135. package/lib-esm/app/app.js.map +1 -1
  136. package/lib-esm/app/app.module.css +14 -5
  137. package/lib-esm/app/header/header.module.css +1 -3
  138. package/lib-esm/components/asset-name/asset-name.js +8 -7
  139. package/lib-esm/components/asset-name/asset-name.js.map +1 -1
  140. package/lib-esm/components/asset-name/asset-name.module.css +11 -10
  141. package/lib-esm/components/bundle-assets/bundle-assets.js +4 -2
  142. package/lib-esm/components/bundle-assets/bundle-assets.js.map +1 -1
  143. package/lib-esm/components/bundle-assets/bundle-assets.module.css +0 -12
  144. package/lib-esm/components/bundle-assets/index.js +2 -1
  145. package/lib-esm/components/bundle-assets/index.js.map +1 -1
  146. package/lib-esm/components/bundle-assets-totals/bundle-assets-totals.js +4 -2
  147. package/lib-esm/components/bundle-assets-totals/bundle-assets-totals.js.map +1 -1
  148. package/lib-esm/components/bundle-modules/bundle-modules.js +5 -3
  149. package/lib-esm/components/bundle-modules/bundle-modules.js.map +1 -1
  150. package/lib-esm/components/bundle-modules/bundle-modules.module.css +2 -16
  151. package/lib-esm/components/bundle-modules/index.js +2 -1
  152. package/lib-esm/components/bundle-modules/index.js.map +1 -1
  153. package/lib-esm/components/bundle-packages/bundle-packages.js +5 -3
  154. package/lib-esm/components/bundle-packages/bundle-packages.js.map +1 -1
  155. package/lib-esm/components/bundle-packages/bundle-packages.module.css +18 -22
  156. package/lib-esm/components/delta/delta.js +3 -13
  157. package/lib-esm/components/delta/delta.js.map +1 -1
  158. package/lib-esm/components/delta/delta.module.css +13 -12
  159. package/lib-esm/components/delta/index.js.map +1 -1
  160. package/lib-esm/components/entry-info/entry-info.js +4 -2
  161. package/lib-esm/components/entry-info/entry-info.js.map +1 -1
  162. package/lib-esm/components/entry-info/entry-info.module.css +7 -2
  163. package/lib-esm/components/index.js +1 -0
  164. package/lib-esm/components/index.js.map +1 -1
  165. package/lib-esm/components/insight-icon/insight-icon.module.css +6 -6
  166. package/lib-esm/components/job-name/job-name.js +1 -2
  167. package/lib-esm/components/job-name/job-name.js.map +1 -1
  168. package/lib-esm/components/jobs-header/jobs-header.js +1 -1
  169. package/lib-esm/components/jobs-header/jobs-header.js.map +1 -1
  170. package/lib-esm/components/jobs-header/jobs-header.module.css +0 -1
  171. package/lib-esm/components/metric-change-legend/index.js +2 -0
  172. package/lib-esm/components/metric-change-legend/index.js.map +1 -0
  173. package/lib-esm/components/metric-change-legend/metric-change-legend.js +84 -0
  174. package/lib-esm/components/metric-change-legend/metric-change-legend.js.map +1 -0
  175. package/lib-esm/components/metric-change-legend/metric-change-legend.module.css +80 -0
  176. package/lib-esm/components/metric-run-info/metric-run-info.js +24 -8
  177. package/lib-esm/components/metric-run-info/metric-run-info.js.map +1 -1
  178. package/lib-esm/components/metrics-display-selector/metrics-display-selector.js +7 -9
  179. package/lib-esm/components/metrics-display-selector/metrics-display-selector.js.map +1 -1
  180. package/lib-esm/components/metrics-display-selector/metrics-display-selector.module.css +0 -27
  181. package/lib-esm/components/metrics-table/metrics-table.js +32 -20
  182. package/lib-esm/components/metrics-table/metrics-table.js.map +1 -1
  183. package/lib-esm/components/metrics-table/metrics-table.module.css +4 -12
  184. package/lib-esm/components/metrics-table-header/metrics-table-header.js +6 -6
  185. package/lib-esm/components/metrics-table-header/metrics-table-header.js.map +1 -1
  186. package/lib-esm/components/metrics-table-header/metrics-table-header.module.css +8 -12
  187. package/lib-esm/components/metrics-table-options/metrics-table-options.js +5 -6
  188. package/lib-esm/components/metrics-table-options/metrics-table-options.js.map +1 -1
  189. package/lib-esm/components/metrics-table-row-count/index.js +2 -0
  190. package/lib-esm/components/metrics-table-row-count/index.js.map +1 -0
  191. package/lib-esm/components/metrics-table-row-count/metrics-table-row-count.js +10 -0
  192. package/lib-esm/components/metrics-table-row-count/metrics-table-row-count.js.map +1 -0
  193. package/lib-esm/components/metrics-table-row-count/metrics-table-row-count.module.css +5 -0
  194. package/lib-esm/components/metrics-table-title/metrics-table-title.js +1 -1
  195. package/lib-esm/components/metrics-table-title/metrics-table-title.js.map +1 -1
  196. package/lib-esm/components/metrics-treemap/metrics-treemap.constants.js +2 -0
  197. package/lib-esm/components/metrics-treemap/metrics-treemap.constants.js.map +1 -1
  198. package/lib-esm/components/metrics-treemap/metrics-treemap.js +52 -120
  199. package/lib-esm/components/metrics-treemap/metrics-treemap.js.map +1 -1
  200. package/lib-esm/components/metrics-treemap/metrics-treemap.module.css +3 -274
  201. package/lib-esm/components/metrics-treemap/metrics-treemap.utils.js +80 -18
  202. package/lib-esm/components/metrics-treemap/metrics-treemap.utils.js.map +1 -1
  203. package/lib-esm/components/metrics-treemap/tile/index.js +2 -0
  204. package/lib-esm/components/metrics-treemap/tile/index.js.map +1 -0
  205. package/lib-esm/components/metrics-treemap/tile/tile.js +40 -0
  206. package/lib-esm/components/metrics-treemap/tile/tile.js.map +1 -0
  207. package/lib-esm/components/metrics-treemap/tile/tile.module.css +145 -0
  208. package/lib-esm/components/metrics-treemap/tile-group/index.js +2 -0
  209. package/lib-esm/components/metrics-treemap/tile-group/index.js.map +1 -0
  210. package/lib-esm/components/metrics-treemap/tile-group/tile-group.js +35 -0
  211. package/lib-esm/components/metrics-treemap/tile-group/tile-group.js.map +1 -0
  212. package/lib-esm/components/metrics-treemap/tile-group/tile-group.module.css +57 -0
  213. package/lib-esm/components/metrics-treemap/tile-group-title/index.js +2 -0
  214. package/lib-esm/components/metrics-treemap/tile-group-title/index.js.map +1 -0
  215. package/lib-esm/components/metrics-treemap/tile-group-title/tile-group-title.js +17 -0
  216. package/lib-esm/components/metrics-treemap/tile-group-title/tile-group-title.js.map +1 -0
  217. package/lib-esm/components/metrics-treemap/tile-group-title/tile-group-title.module.css +48 -0
  218. package/lib-esm/components/run-info/run-info.js +26 -14
  219. package/lib-esm/components/run-info/run-info.js.map +1 -1
  220. package/lib-esm/components/run-info/run-info.module.css +35 -26
  221. package/lib-esm/components/sort-button/sort-button.module.css +0 -2
  222. package/lib-esm/components/summary/summary.js +11 -11
  223. package/lib-esm/components/summary/summary.js.map +1 -1
  224. package/lib-esm/components/summary/summary.module.css +60 -14
  225. package/lib-esm/constants.js +12 -0
  226. package/lib-esm/constants.js.map +1 -1
  227. package/lib-esm/css/default.css +7 -4
  228. package/lib-esm/css/variables.css +84 -60
  229. package/lib-esm/layout/flex-stack/flex-stack.js +3 -2
  230. package/lib-esm/layout/flex-stack/flex-stack.js.map +1 -1
  231. package/lib-esm/layout/flex-stack/flex-stack.module.css +65 -10
  232. package/lib-esm/query-state.js +7 -4
  233. package/lib-esm/query-state.js.map +1 -1
  234. package/lib-esm/ui/button/button.js +3 -2
  235. package/lib-esm/ui/button/button.js.map +1 -1
  236. package/lib-esm/ui/button/button.module.css +38 -27
  237. package/lib-esm/ui/control-group/control-group.js +1 -1
  238. package/lib-esm/ui/control-group/control-group.js.map +1 -1
  239. package/lib-esm/ui/copy-to-clipboard/copy-to-clipboard.module.css +2 -2
  240. package/lib-esm/ui/dialog/dialog.js +7 -3
  241. package/lib-esm/ui/dialog/dialog.js.map +1 -1
  242. package/lib-esm/ui/dialog/dialog.module.css +27 -0
  243. package/lib-esm/ui/dropdown/dropdown.js +11 -3
  244. package/lib-esm/ui/dropdown/dropdown.js.map +1 -1
  245. package/lib-esm/ui/dropdown/dropdown.module.css +60 -7
  246. package/lib-esm/ui/filters/filters.js +29 -17
  247. package/lib-esm/ui/filters/filters.js.map +1 -1
  248. package/lib-esm/ui/filters/filters.module.css +3 -19
  249. package/lib-esm/ui/hover-card/hover-card.js +7 -1
  250. package/lib-esm/ui/hover-card/hover-card.js.map +1 -1
  251. package/lib-esm/ui/hover-card/hover-card.module.css +18 -5
  252. package/lib-esm/ui/input/input.module.css +2 -2
  253. package/lib-esm/ui/table/table.module.css +12 -6
  254. package/lib-esm/ui/tabs/tabs.module.css +13 -9
  255. package/lib-esm/ui/tag/tag.module.css +0 -2
  256. package/lib-esm/ui/textarea/textarea.module.css +2 -2
  257. package/lib-esm/ui/toolbar/toolbar.js +2 -1
  258. package/lib-esm/ui/toolbar/toolbar.js.map +1 -1
  259. package/lib-esm/ui/toolbar/toolbar.module.css +0 -6
  260. package/lib-esm/ui/tooltip/tooltip.js +6 -1
  261. package/lib-esm/ui/tooltip/tooltip.js.map +1 -1
  262. package/lib-esm/ui/tooltip/tooltip.module.css +12 -1
  263. package/lib-esm/utils/index.js +1 -0
  264. package/lib-esm/utils/index.js.map +1 -1
  265. package/lib-esm/utils/portal.js +6 -0
  266. package/lib-esm/utils/portal.js.map +1 -0
  267. package/package.json +18 -18
  268. package/src/app/app.jsx +7 -1
  269. package/src/app/app.module.css +14 -5
  270. package/src/app/header/header.module.css +1 -3
  271. package/src/components/asset-name/asset-name.module.css +11 -10
  272. package/src/components/asset-name/asset-name.tsx +17 -14
  273. package/src/components/bundle-assets/bundle-assets.module.css +0 -12
  274. package/src/components/bundle-assets/bundle-assets.tsx +8 -1
  275. package/src/components/bundle-assets/index.tsx +3 -1
  276. package/src/components/bundle-assets-totals/bundle-assets-totals.jsx +6 -4
  277. package/src/components/bundle-modules/bundle-modules.module.css +2 -16
  278. package/src/components/bundle-modules/bundle-modules.tsx +10 -3
  279. package/src/components/bundle-modules/index.tsx +3 -1
  280. package/src/components/bundle-packages/bundle-packages.jsx +14 -3
  281. package/src/components/bundle-packages/bundle-packages.module.css +18 -22
  282. package/src/components/delta/delta.module.css +13 -12
  283. package/src/components/delta/delta.tsx +32 -0
  284. package/src/components/entry-info/entry-info.module.css +7 -2
  285. package/src/components/entry-info/entry-info.tsx +9 -3
  286. package/src/components/index.ts +3 -0
  287. package/src/components/insight-icon/insight-icon.module.css +6 -6
  288. package/src/components/job-name/job-name.jsx +2 -3
  289. package/src/components/jobs-header/jobs-header.module.css +0 -1
  290. package/src/components/jobs-header/jobs-header.tsx +2 -2
  291. package/src/components/metric-change-legend/index.ts +1 -0
  292. package/src/components/metric-change-legend/metric-change-legend.module.css +80 -0
  293. package/src/components/metric-change-legend/metric-change-legend.stories.tsx +13 -0
  294. package/src/components/metric-change-legend/metric-change-legend.tsx +148 -0
  295. package/src/components/metric-run-info/metric-run-info.stories.tsx +9 -0
  296. package/src/components/metric-run-info/metric-run-info.tsx +39 -17
  297. package/src/components/metrics-display-selector/metrics-display-selector.module.css +0 -27
  298. package/src/components/metrics-display-selector/metrics-display-selector.tsx +25 -37
  299. package/src/components/metrics-table/metrics-table.module.css +4 -12
  300. package/src/components/metrics-table/metrics-table.tsx +70 -39
  301. package/src/components/metrics-table-header/metrics-table-header.module.css +8 -12
  302. package/src/components/metrics-table-header/metrics-table-header.tsx +5 -6
  303. package/src/components/metrics-table-options/metrics-table-options.tsx +13 -14
  304. package/src/components/metrics-table-row-count/index.ts +1 -0
  305. package/src/components/metrics-table-row-count/metrics-table-row-count.module.css +5 -0
  306. package/src/components/metrics-table-row-count/metrics-table-row-count.tsx +21 -0
  307. package/src/components/metrics-table-title/metrics-table-title.jsx +1 -1
  308. package/src/components/metrics-treemap/metrics-treemap.constants.ts +9 -0
  309. package/src/components/metrics-treemap/metrics-treemap.module.css +3 -274
  310. package/src/components/metrics-treemap/metrics-treemap.stories.utils.ts +46 -0
  311. package/src/components/metrics-treemap/metrics-treemap.tsx +123 -428
  312. package/src/components/metrics-treemap/metrics-treemap.utils.ts +161 -27
  313. package/src/components/metrics-treemap/tile/index.ts +1 -0
  314. package/src/components/metrics-treemap/tile/tile.module.css +145 -0
  315. package/src/components/metrics-treemap/tile/tile.stories.tsx +139 -0
  316. package/src/components/metrics-treemap/tile/tile.tsx +121 -0
  317. package/src/components/metrics-treemap/tile-group/index.ts +1 -0
  318. package/src/components/metrics-treemap/tile-group/tile-group.module.css +57 -0
  319. package/src/components/metrics-treemap/tile-group/tile-group.stories.tsx +163 -0
  320. package/src/components/metrics-treemap/tile-group/tile-group.tsx +177 -0
  321. package/src/components/metrics-treemap/tile-group-title/index.ts +1 -0
  322. package/src/components/metrics-treemap/tile-group-title/tile-group-title.module.css +48 -0
  323. package/src/components/metrics-treemap/tile-group-title/tile-group-title.stories.tsx +88 -0
  324. package/src/components/metrics-treemap/tile-group-title/tile-group-title.tsx +51 -0
  325. package/src/components/run-info/run-info.module.css +35 -26
  326. package/src/components/run-info/run-info.stories.tsx +16 -10
  327. package/src/components/run-info/run-info.tsx +132 -73
  328. package/src/components/sort-button/sort-button.module.css +0 -2
  329. package/src/components/summary/summary.module.css +60 -14
  330. package/src/components/summary/summary.tsx +50 -52
  331. package/src/constants.ts +13 -0
  332. package/src/css/default.css +7 -4
  333. package/src/css/variables.css +84 -60
  334. package/src/layout/flex-stack/flex-stack.module.css +65 -10
  335. package/src/layout/flex-stack/flex-stack.stories.tsx +68 -9
  336. package/src/layout/flex-stack/flex-stack.tsx +24 -4
  337. package/src/query-state.tsx +9 -4
  338. package/src/ui/button/button.module.css +38 -27
  339. package/src/ui/button/button.stories.tsx +1 -1
  340. package/src/ui/button/button.tsx +3 -1
  341. package/src/ui/control-group/control-group.tsx +1 -1
  342. package/src/ui/copy-to-clipboard/copy-to-clipboard.module.css +2 -2
  343. package/src/ui/dialog/dialog.module.css +27 -0
  344. package/src/ui/dialog/dialog.stories.tsx +8 -0
  345. package/src/ui/dialog/dialog.tsx +16 -2
  346. package/src/ui/dropdown/dropdown.module.css +60 -7
  347. package/src/ui/dropdown/dropdown.stories.tsx +6 -0
  348. package/src/ui/dropdown/dropdown.tsx +17 -2
  349. package/src/ui/filters/filters.module.css +3 -19
  350. package/src/ui/filters/filters.tsx +131 -67
  351. package/src/ui/hover-card/hover-card.module.css +18 -5
  352. package/src/ui/hover-card/hover-card.tsx +7 -1
  353. package/src/ui/input/input.module.css +2 -2
  354. package/src/ui/table/table.module.css +12 -6
  355. package/src/ui/tabs/tabs.module.css +13 -9
  356. package/src/ui/tag/tag.module.css +0 -2
  357. package/src/ui/textarea/textarea.module.css +2 -2
  358. package/src/ui/toolbar/toolbar.jsx +4 -1
  359. package/src/ui/toolbar/toolbar.module.css +0 -6
  360. package/src/ui/tooltip/tooltip.module.css +12 -1
  361. package/src/ui/tooltip/tooltip.tsx +6 -1
  362. package/src/utils/index.ts +1 -0
  363. package/src/utils/portal.ts +9 -0
  364. package/types/components/delta/delta.d.ts +7 -21
  365. package/types/components/delta/index.d.ts +1 -1
  366. package/types/components/index.d.ts +3 -0
  367. package/types/components/metric-change-legend/index.d.ts +1 -0
  368. package/types/components/metric-change-legend/metric-change-legend.d.ts +4 -0
  369. package/types/components/metric-run-info/metric-run-info.d.ts +3 -6
  370. package/types/components/metrics-table/metrics-table.d.ts +2 -1
  371. package/types/components/metrics-table-row-count/index.d.ts +1 -0
  372. package/types/components/metrics-table-row-count/metrics-table-row-count.d.ts +7 -0
  373. package/types/components/metrics-treemap/metrics-treemap.constants.d.ts +2 -0
  374. package/types/components/metrics-treemap/metrics-treemap.utils.d.ts +16 -5
  375. package/types/components/metrics-treemap/tile/index.d.ts +1 -0
  376. package/types/components/metrics-treemap/tile/tile.d.ts +11 -0
  377. package/types/components/metrics-treemap/tile-group/index.d.ts +1 -0
  378. package/types/components/metrics-treemap/tile-group/tile-group.d.ts +20 -0
  379. package/types/components/metrics-treemap/tile-group-title/index.d.ts +1 -0
  380. package/types/components/metrics-treemap/tile-group-title/tile-group-title.d.ts +12 -0
  381. package/types/components/run-info/run-info.d.ts +16 -7
  382. package/types/constants.d.ts +12 -0
  383. package/types/layout/flex-stack/flex-stack.d.ts +6 -2
  384. package/types/ui/button/button.d.ts +1 -0
  385. package/types/ui/dialog/dialog.d.ts +3 -2
  386. package/types/ui/dropdown/dropdown.d.ts +4 -1
  387. package/types/ui/filters/filters.d.ts +2 -1
  388. package/types/utils/index.d.ts +1 -0
  389. package/types/utils/portal.d.ts +1 -0
  390. package/vitest.config.ts +4 -0
  391. package/lib/components/metrics-table-options/metrics-table-options.module.css +0 -15
  392. package/lib-esm/components/metrics-table-options/metrics-table-options.module.css +0 -15
  393. package/src/components/delta/delta.jsx +0 -22
  394. package/src/components/metrics-table-options/metrics-table-options.module.css +0 -15
  395. /package/src/components/delta/{index.js → index.ts} +0 -0
@@ -0,0 +1,35 @@
1
+ import React, { useCallback, useMemo } from 'react';
2
+ import cx from 'classnames';
3
+ import * as I18N from '../metrics-treemap.i18n';
4
+ import { getGroupRunInfo, resolveTileGroupSizeDisplay } from '../metrics-treemap.utils';
5
+ import { Tile } from '../tile';
6
+ import { TileGroupTitle } from '../tile-group-title';
7
+ import css from './tile-group.module.css';
8
+ export const TileGroup = (props) => {
9
+ const { title = '', total, id, childNodes, nested = false, onItemClick, onGroupClick, left, top, width, height, absoluteLeft, absoluteTop, } = props;
10
+ const onClick = useCallback((event) => {
11
+ onGroupClick === null || onGroupClick === void 0 ? void 0 : onGroupClick(id);
12
+ event.stopPropagation();
13
+ }, [onGroupClick, id]);
14
+ const displaySize = useMemo(() => resolveTileGroupSizeDisplay(width || 0, height || 0), [width, height]);
15
+ const groupRunInfo = useMemo(() => (total ? getGroupRunInfo(total) : undefined), [total]);
16
+ const rootClassName = cx(css.root, css[`tileGroup--${groupRunInfo === null || groupRunInfo === void 0 ? void 0 : groupRunInfo.deltaType}`], css[`tileGroup--${displaySize}`], nested && css.nested);
17
+ if (title && displaySize === 'minimal') {
18
+ return (React.createElement("div", { onClick: onClick, role: "button", "aria-label": I18N.TILE_GROUP_LABEL, className: rootClassName, style: { left, top, width, height } },
19
+ React.createElement(TileGroupTitle, { id: id, fill: true })));
20
+ }
21
+ if (title && displaySize === 'small') {
22
+ return (React.createElement("div", { onClick: onClick, role: "button", "aria-label": I18N.TILE_GROUP_LABEL, style: { left, top, width, height }, className: rootClassName },
23
+ React.createElement(TileGroupTitle, { id: id, title: title, fill: true })));
24
+ }
25
+ return (React.createElement("div", { onClick: onClick, role: "button", "aria-label": I18N.TILE_GROUP_LABEL, className: cx(rootClassName, css.tileGroupSizeDefault), style: { left, top, width, height } },
26
+ React.createElement(TileGroupTitle, { id: id, title: title, runInfo: groupRunInfo === null || groupRunInfo === void 0 ? void 0 : groupRunInfo.runInfo }), childNodes === null || childNodes === void 0 ? void 0 :
27
+ childNodes.map((childNode) => {
28
+ if ('children' in childNode) {
29
+ const groupData = childNode.data;
30
+ return (React.createElement(TileGroup, { title: groupData.label, total: groupData.total, id: groupData.id, childNodes: childNode.children, nested: nested, left: childNode.x0 - absoluteLeft, top: childNode.y0 - absoluteTop, absoluteLeft: childNode.x0, absoluteTop: childNode.y0, width: childNode.x1 - childNode.x0, height: childNode.y1 - childNode.y0, onItemClick: onItemClick, onGroupClick: onGroupClick, key: groupData.id }));
31
+ }
32
+ return (React.createElement(Tile, { data: childNode.data, left: childNode.x0 - absoluteLeft, top: childNode.y0 - absoluteTop, width: childNode.x1 - childNode.x0, height: childNode.y1 - childNode.y0, onClick: onItemClick, key: childNode.data.id }));
33
+ })));
34
+ };
35
+ //# sourceMappingURL=tile-group.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tile-group.js","sourceRoot":"","sources":["../../../../src/components/metrics-treemap/tile-group/tile-group.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ .root {
2
+ border-radius: var(--radius-xsmall);
3
+ position: absolute;
4
+ }
5
+
6
+ /** Tile group size variation */
7
+ .root {
8
+ transition: var(--transition-out);
9
+ transition-property: background-color, outline;
10
+ }
11
+
12
+ /** Tile group nested variation */
13
+ .root.nested {
14
+ background-color: rgba(27, 26, 33, 0.03);
15
+ outline: 1px solid rgba(255, 255, 255, 0.8);
16
+ }
17
+
18
+ .root.nested:has(> [data-treemap-tile-group-title]:hover),
19
+ .root.nested:has(> [data-treemap-tile]:hover) {
20
+ background-color: rgba(27, 26, 33, 0.06);
21
+ outline: 1px solid rgba(255, 255, 255, 1);
22
+ transition: var(--transition-in);
23
+ transition-property: background-color, outline;
24
+ }
25
+
26
+ .nested.tileGroup--NEGATIVE {
27
+ background-color: rgba(194, 31, 37, 0.04);
28
+ }
29
+
30
+ .nested.tileGroup--NEGATIVE:has(> [data-treemap-tile-group-title]:hover),
31
+ .nested.tileGroup--NEGATIVE:has(> [data-treemap-tile]:hover) {
32
+ background-color: rgba(194, 31, 37, 0.1);
33
+ }
34
+
35
+ .nested.tileGroup--POSITIVE {
36
+ background-color: rgba(42, 147, 39, 0.04);
37
+ }
38
+
39
+ .nested.tileGroup--POSITIVE:has(> [data-treemap-tile-group-title]:hover),
40
+ .nested.tileGroup--POSITIVE:has(> [data-treemap-tile]:hover) {
41
+ background-color: rgba(42, 147, 39, 0.1);
42
+ }
43
+
44
+ /* reset bacground color when having a not changed group */
45
+ .nested.tileGroup--POSITIVE > .tileGroup--NO_CHANGE,
46
+ .nested.tileGroup--NEGATIVE > .tileGroup--NO_CHANGE {
47
+ background-color: var(--color-background);
48
+ background-image: linear-gradient(rgba(27, 26, 33, 0.1), rgba(27, 26, 33, 0.1));
49
+ }
50
+
51
+ .nested.tileGroup--POSITIVE > .tileGroup--NO_CHANGE:has(> [data-treemap-tile-group-title]:hover),
52
+ .nested.tileGroup--POSITIVE > .tileGroup--NO_CHANGE:has(> [data-treemap-tile]:hover),
53
+ .nested.tileGroup--NEGATIVE > .tileGroup--NO_CHANGE:has(> [data-treemap-tile-group-title]:hover),
54
+ .nested.tileGroup--NEGATIVE > .tileGroup--NEGATIVE > .tileGroup--NO_CHANGE:has(> [data-treemap-tile]:hover) {
55
+ background-color: var(--color-background);
56
+ background-image: linear-gradient(rgba(27, 26, 33, 0.1), rgba(27, 26, 33, 0.1));
57
+ }
@@ -0,0 +1,2 @@
1
+ export * from './tile-group-title';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/metrics-treemap/tile-group-title/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ import cx from 'classnames';
3
+ import css from './tile-group-title.module.css';
4
+ const TileGroupTitleContent = (props) => {
5
+ const { title, runInfo } = props;
6
+ return (React.createElement("div", { className: css.tileGroupTitleContent },
7
+ title && React.createElement("span", { className: css.tileGroupTitleText }, title),
8
+ runInfo && (React.createElement("span", { className: css.tileGroupTitleTotal },
9
+ runInfo.displayValue,
10
+ 'displayDelta' in runInfo && `(${runInfo.displayDeltaPercentage})`))));
11
+ };
12
+ export const TileGroupTitle = (props) => {
13
+ const { id, fill = false, ...restProps } = props;
14
+ return (React.createElement("div", { className: cx(css.root, fill && css.fill), "data-treemap-id": id, "data-treemap-tile-group-title": true },
15
+ React.createElement(TileGroupTitleContent, { ...restProps })));
16
+ };
17
+ //# sourceMappingURL=tile-group-title.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tile-group-title.js","sourceRoot":"","sources":["../../../../src/components/metrics-treemap/tile-group-title/tile-group-title.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,YAAY,CAAC;AAG5B,OAAO,GAAG,MAAM,+BAA+B,CAAC;AAOhD,MAAM,qBAAqB,GAAG,CAAC,KAAiC,EAAE,EAAE;IAClE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAEjC,OAAO,CACL,6BAAK,SAAS,EAAE,GAAG,CAAC,qBAAqB;QACtC,KAAK,IAAI,8BAAM,SAAS,EAAE,GAAG,CAAC,kBAAkB,IAAG,KAAK,CAAQ;QAChE,OAAO,IAAI,CACV,8BAAM,SAAS,EAAE,GAAG,CAAC,mBAAmB;YACrC,OAAO,CAAC,YAAY;YACpB,cAAc,IAAI,OAAO,IAAI,IAAI,OAAO,CAAC,sBAAsB,GAAG,CAC9D,CACR,CACG,CACP,CAAC;AACJ,CAAC,CAAC;AAaF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAA0B,EAAE,EAAE;IAC3D,MAAM,EAAE,EAAE,EAAE,IAAI,GAAG,KAAK,EAAE,GAAG,SAAS,EAAE,GAAG,KAAK,CAAC;IAEjD,OAAO,CACL,6BACE,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,qBACxB,EAAE;QAGnB,oBAAC,qBAAqB,OAAK,SAAS,GAAI,CACpC,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,48 @@
1
+ .root {
2
+ width: 100%;
3
+ cursor: default;
4
+ }
5
+
6
+ .tileGroupTitleContent {
7
+ width: 100%;
8
+ padding: var(--space-xxxsmall) calc(var(--space-xxxsmall) / 2) var(--space-xxxsmall) var(--space-xxsmall);
9
+ border-radius: var(--radius-xsmall);
10
+ display: flex;
11
+ align-items: center;
12
+ color: var(--color-text);
13
+ font-family: var(--font-family-fixed);
14
+ font-size: 10px;
15
+ line-height: var(--space-small);
16
+ overflow: hidden;
17
+ white-space: nowrap;
18
+ text-overflow: ellipsis;
19
+ }
20
+
21
+ .tileGroupTitleText,
22
+ .tileGroupTitleTotal {
23
+ flex: 0 0 auto;
24
+ min-width: 0;
25
+ }
26
+
27
+ .tileGroupTitleTotal {
28
+ margin-left: var(--space-xxsmall);
29
+ color: var(--color-text-light);
30
+ }
31
+
32
+ .root {
33
+ transition: var(--transition-out);
34
+ }
35
+
36
+ .root:hover .tileGroupTitleText {
37
+ text-decoration: underline;
38
+ transition: var(--transition-in);
39
+ }
40
+
41
+ /** Fill variation */
42
+ .fill {
43
+ height: 100%;
44
+ }
45
+
46
+ .fill .tileGroupTitleContent {
47
+ min-height: 100%;
48
+ }
@@ -17,26 +17,38 @@ const getMetricParams = (value) => {
17
17
  }
18
18
  return [matches[1], matches[2]];
19
19
  };
20
- export const RunInfo = ({ className = '', title = null, titleHoverCard = null, titleTooltip = null, current = '', baseline = '', delta = '', deltaPercentage = '', deltaType = '', as: Component = 'div', size = 'medium', showBaseline = true, loading = false, enhance = false, ...restProps }) => {
21
- const rootClassName = cx(css.root, className, css[size], (delta || deltaPercentage) && css.showDelta);
20
+ const RunInfoTitle = ({ className, title, titleHoverCard, titleTooltip }) => (React.createElement(FlexStack, { space: "xxxsmall", alignItems: "center", as: "h3", className: cx(css.title, className) },
21
+ React.createElement("span", { className: css.titleText }, title),
22
+ titleHoverCard && (React.createElement(HoverCard, { label: React.createElement(Icon, { glyph: Icon.ICONS.HELP }), className: cx(css.titleIcon, css.titleHoverCardIcon) }, titleHoverCard)),
23
+ titleTooltip && (React.createElement(Tooltip, { title: titleTooltip, className: cx(css.titleIcon, css.titleTooltipIcon) },
24
+ React.createElement(Icon, { glyph: Icon.ICONS.HELP })))));
25
+ const RunInfoContent = ({ className, loading = false, current = '', enhance = false, baseline = '', delta = '', deltaPercentage = '', deltaType = 'NO_CHANGE', showBaseline = true, showDelta = true, }) => {
22
26
  const currentValueParams = useMemo(() => {
23
27
  if (!enhance || typeof current !== 'string') {
24
28
  return [current];
25
29
  }
26
30
  return getMetricParams(current);
27
31
  }, [current, enhance]);
32
+ const contentClassName = cx(css.content, className);
33
+ if (loading) {
34
+ return (React.createElement(Stack, { space: "xxxsmall", className: contentClassName },
35
+ React.createElement(Skeleton, { className: css.currentMetric }),
36
+ showBaseline && React.createElement(Skeleton, { className: css.baselineMetric })));
37
+ }
38
+ return (React.createElement(Stack, { space: "xxxsmall", className: contentClassName },
39
+ React.createElement(Metric, { value: currentValueParams[0], unit: currentValueParams[1], inline: true, className: css.currentMetric }, showDelta && (React.createElement("div", { className: css.delta },
40
+ deltaPercentage && (React.createElement(Delta, { displayValue: deltaPercentage, deltaType: deltaType, className: css.deltaValue })),
41
+ delta && (React.createElement(Delta, { displayValue: delta, deltaType: deltaType, className: css.deltaValue }))))),
42
+ showBaseline && (React.createElement(FlexStack, { alignItems: "center", space: "xxxsmall", className: css.baselineMetric },
43
+ React.createElement("span", { className: css.baselineMetricLabel }, "vs"),
44
+ React.createElement(Metric, { value: baseline, inline: true, className: css.baselineMetricValue })))));
45
+ };
46
+ export const RunInfo = ({ className = '', title = null, titleHoverCard = null, titleTooltip = null, current = '', baseline = '', delta = '', deltaPercentage = '', deltaType = 'NO_CHANGE', as: Component = 'div', size = 'medium', showBaseline = true, showDelta = true, loading = false, enhance = false, children, ...restProps }) => {
47
+ const rootClassName = cx(css.root, loading && css.loading, css[size], className);
28
48
  return (React.createElement(Component, { className: rootClassName, ...restProps },
29
- title && (React.createElement(FlexStack, { space: "xxxsmall", alignItems: "center", as: "h3", className: css.title },
30
- React.createElement("span", { className: css.titleText }, title),
31
- titleHoverCard && (React.createElement(HoverCard, { label: React.createElement(Icon, { glyph: Icon.ICONS.HELP }), className: cx(css.titleIcon, css.titleHoverCardIcon) }, titleHoverCard)),
32
- titleTooltip && (React.createElement(Tooltip, { title: titleTooltip, className: cx(css.titleIcon, css.titleTooltipIcon) },
33
- React.createElement(Icon, { glyph: Icon.ICONS.HELP }))))),
34
- !loading ? (React.createElement(Stack, { space: "xxxsmall", className: css.info },
35
- React.createElement(Metric, { value: currentValueParams[0], unit: currentValueParams[1], inline: true, className: css.currentMetric }, (delta || deltaPercentage) && (React.createElement("span", { className: css.delta },
36
- deltaPercentage && (React.createElement(Delta, { displayValue: deltaPercentage, deltaType: deltaType, className: css.deltaValue })),
37
- delta && (React.createElement(Delta, { displayValue: delta, deltaType: deltaType, className: css.deltaValue }))))),
38
- showBaseline && React.createElement(Metric, { className: css.baselineMetric, value: baseline }))) : (React.createElement(Stack, { space: "xxxsmall", className: css.info },
39
- React.createElement(Skeleton, { className: cx(css.currentMetric, css.loading) }),
40
- showBaseline && React.createElement(Skeleton, { as: "p", className: cx(css.baselineMetric, css.loading) })))));
49
+ React.createElement(Stack, { space: "xsmall" },
50
+ title && (React.createElement(RunInfoTitle, { title: title, titleHoverCard: titleHoverCard, titleTooltip: titleTooltip })),
51
+ React.createElement(RunInfoContent, { loading: loading, current: current, enhance: enhance, baseline: baseline, delta: delta, deltaPercentage: deltaPercentage, deltaType: deltaType, showBaseline: showBaseline, showDelta: showDelta }),
52
+ children)));
41
53
  };
42
54
  //# sourceMappingURL=run-info.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"run-info.js","sourceRoot":"","sources":["../../../src/components/run-info/run-info.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-info.js","sourceRoot":"","sources":["../../../src/components/run-info/run-info.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  .title {
2
- color: var(--color-text-ultra-light);
2
+ color: var(--color-text-light);
3
3
  font-weight: bold;
4
4
  font-size: var(--size-xsmall);
5
5
  text-transform: uppercase;
@@ -16,14 +16,11 @@
16
16
 
17
17
  .titleIcon {
18
18
  flex: 0 0 var(--space-small);
19
+ /* compensate for the button icon spacing */
19
20
  margin-top: -3px !important;
20
21
  margin-bottom: -3px !important;
21
22
  }
22
23
 
23
- .title + .info {
24
- margin-top: var(--space-xxsmall);
25
- }
26
-
27
24
  .currentMetric {
28
25
  color: var(--color-heading);
29
26
  white-space: nowrap;
@@ -32,33 +29,32 @@
32
29
  height: var(--line-height-number);
33
30
  }
34
31
 
35
- .delta {
36
- font-weight: bold;
37
- }
38
-
39
- .deltaValue + .deltaValue::before {
40
- margin-left: calc(var(--space-xxxsmall) / 2);
41
- margin-right: calc(var(--space-xxxsmall) / 2);
42
- content: '/';
43
- color: var(--color-text-ultra-light);
44
- }
45
-
46
32
  .baselineMetric {
47
33
  color: var(--color-text-ultra-light);
48
34
  font-size: var(--size-small);
35
+ font-family: var(--font-family-fixed);
36
+ font-weight: normal;
49
37
  line-height: var(--line-height-number);
50
38
  height: var(--line-height-number);
51
39
  }
52
40
 
53
- /* Loading state */
54
- .loading.currentMetric {
55
- min-width: 0;
56
- max-width: 8em;
41
+ .baselineMetricValue {
42
+ color: var(--color-text-light);
43
+ line-height: inherit;
57
44
  }
58
45
 
59
- .loading.baselineMetric {
60
- min-width: 0;
61
- max-width: 8em;
46
+
47
+ .delta {
48
+ font-weight: bold;
49
+ font-size: var(--size-small);
50
+ line-height: var(--line-height-number);
51
+ }
52
+
53
+ .deltaValue + .deltaValue::before {
54
+ margin-left: var(--space-xxxsmall);
55
+ margin-right: var(--space-xxxsmall);
56
+ content: '/';
57
+ color: var(--color-outline-dark);
62
58
  }
63
59
 
64
60
  /* Hover state */
@@ -82,15 +78,28 @@
82
78
  visibility 0s;
83
79
  }
84
80
 
85
- /* Size variation */
86
- .currentMetric {
87
- font-size: var(--size-xxlarge);
81
+ /* Loading state */
82
+ .loading .currentMetric {
83
+ max-width: 6em;
88
84
  }
89
85
 
86
+ .loading .baselineMetric {
87
+ max-width: 6em;
88
+ }
89
+
90
+ .loading .delta {
91
+ max-width: 12em;
92
+ }
93
+
94
+ /* Size variation */
90
95
  .small .currentMetric {
91
96
  font-size: var(--size-medium);
92
97
  }
93
98
 
99
+ .currentMetric {
100
+ font-size: var(--size-xxlarge);
101
+ }
102
+
94
103
  .large .currentMetric {
95
104
  font-size: var(--size-xxxlarge);
96
105
  }
@@ -18,7 +18,6 @@
18
18
  overflow: hidden;
19
19
  right: -2px; /* compensate for the button padding */
20
20
  color: var(--color-text-ultra-light);
21
- transition: var(--transition-out);
22
21
  }
23
22
 
24
23
  .directionIcon {
@@ -36,7 +35,6 @@
36
35
  .direction:active,
37
36
  .direction:focus {
38
37
  color: var(--color-text-dark);
39
- transition: var(--transition-in);
40
38
  }
41
39
 
42
40
  .directionAsc {
@@ -2,26 +2,26 @@ import React from 'react';
2
2
  import cx from 'classnames';
3
3
  import get from 'lodash/get';
4
4
  import { METRIC_COMPONENT_LINKS } from '@bundle-stats/utils';
5
- import { METRICS_WEBPACK_ASSETS, METRICS_WEBPACK_GENERAL, METRICS_WEBPACK_MODULES, METRICS_WEBPACK_PACKAGES, } from '../../constants';
5
+ import { METRICS_GROUP_ASSETS, METRICS_GROUP_MODULES, METRICS_GROUP_PACKAGES, METRICS_WEBPACK_GENERAL, } from '../../constants';
6
6
  import { Box } from '../../layout/box';
7
+ import { FlexStack } from '../../layout/flex-stack';
7
8
  import { ComponentLink } from '../component-link';
8
9
  import { MetricRunInfo } from '../metric-run-info';
9
10
  import css from './summary.module.css';
10
- const METRICS_WEBPACK_OTHERS = [
11
- ...METRICS_WEBPACK_ASSETS,
12
- ...METRICS_WEBPACK_MODULES,
13
- ...METRICS_WEBPACK_PACKAGES,
14
- ];
11
+ import { Stack } from '../../layout';
15
12
  const SummaryItem = (props) => {
16
13
  const { className = '', metricId, data, customLink: SummaryItemCustomLink, size, loading, showDelta, showBaseline, } = props;
17
14
  const componentLink = METRIC_COMPONENT_LINKS.get(metricId);
18
15
  const metricData = get(data, metricId, { current: 0, baseline: 0 });
19
- return (React.createElement(Box, { key: metricId, outline: true, outlineHover: true, padding: "small", as: SummaryItemCustomLink, ...componentLink === null || componentLink === void 0 ? void 0 : componentLink.link, className: className },
16
+ return (React.createElement(SummaryItemCustomLink, { key: metricId, ...componentLink === null || componentLink === void 0 ? void 0 : componentLink.link, className: className },
20
17
  React.createElement(MetricRunInfo, { metricId: metricId, current: metricData.current, baseline: metricData.baseline, showDelta: showDelta, showBaseline: showBaseline, size: size, loading: loading })));
21
18
  };
22
19
  export const Summary = ({ className = '', data = null, loading = false, showSummaryItemDelta = true, showSummaryItemBaseline = true, summaryItemLink = ComponentLink, }) => (React.createElement(Box, { className: cx(css.root, className) },
23
- React.createElement("div", { className: css.wrapper },
24
- React.createElement("div", { className: css.items }, METRICS_WEBPACK_GENERAL.map((metricId) => (React.createElement(SummaryItem, { key: metricId, className: css.item, metricId: metricId, data: data, size: "large", loading: loading, customLink: summaryItemLink, showDelta: showSummaryItemDelta, showBaseline: showSummaryItemBaseline }))))),
25
- React.createElement("div", { className: css.wrapper },
26
- React.createElement("div", { className: css.items }, METRICS_WEBPACK_OTHERS.map((metricId) => (React.createElement(SummaryItem, { key: metricId, className: cx(css.item, css.itemSmall), metricId: metricId, data: data, customLink: summaryItemLink, loading: loading, showDelta: showSummaryItemDelta, showBaseline: false })))))));
20
+ React.createElement(FlexStack, { wrap: "wrap", gap: "small", className: css.row },
21
+ React.createElement(Box, { outline: true, padding: "small", className: css.rowGroup },
22
+ React.createElement(FlexStack, { wrap: "wrap", gap: "medium" }, METRICS_WEBPACK_GENERAL.map((metricId) => (React.createElement(SummaryItem, { key: metricId, className: css.item, metricId: metricId, data: data, size: "xlarge", loading: loading, customLink: summaryItemLink, showDelta: showSummaryItemDelta, showBaseline: showSummaryItemBaseline })))))),
23
+ React.createElement(FlexStack, { wrap: "wrap", gap: "small", className: css.row }, [METRICS_GROUP_ASSETS, METRICS_GROUP_MODULES, METRICS_GROUP_PACKAGES].map((metricGroup) => (React.createElement(Stack, { className: css.rowGroup, key: metricGroup.title },
24
+ React.createElement("h3", { className: css.rowGroupTitle }, metricGroup.title),
25
+ React.createElement(Box, { outline: true, padding: "small" },
26
+ React.createElement(FlexStack, { wrap: "wrap", gap: "medium" }, metricGroup.metrics.map((metricId) => (React.createElement(SummaryItem, { key: metricId, className: css.item, metricId: metricId, data: data, size: "large", loading: loading, customLink: summaryItemLink, showDelta: showSummaryItemDelta, showBaseline: showSummaryItemBaseline })))))))))));
27
27
  //# sourceMappingURL=summary.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"summary.js","sourceRoot":"","sources":["../../../src/components/summary/summary.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"summary.js","sourceRoot":"","sources":["../../../src/components/summary/summary.tsx"],"names":[],"mappings":"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"}
@@ -3,29 +3,75 @@
3
3
  width: 100%;
4
4
  }
5
5
 
6
- .wrapper {
6
+ .row {
7
7
  width: 100%;
8
8
  }
9
9
 
10
- .wrapper + .wrapper {
11
- margin-top: var(--summary-gap);
10
+ .rowGroup {
11
+ flex: 1 1 auto;
12
+ }
13
+
14
+ .rowGroupTitle {
15
+ position: absolute;
16
+ font-size: 0;
17
+ width: 0;
18
+ left: -99999px;
12
19
  }
13
20
 
14
- .items {
15
- display: flex;
16
- flex-wrap: wrap;
17
- width: calc(100% + var(--summary-gap));
18
- margin-top: calc(0px - var(--summary-gap));
19
- margin-left: calc(0px - var(--summary-gap));
21
+ .row + .row {
22
+ margin-top: var(--summary-gap);
20
23
  }
21
24
 
22
25
  .item {
23
- margin: var(--summary-gap) 0 0 var(--summary-gap);
24
- flex: 1 0 10%; /* force equal sizes */
25
- min-width: 12em;
26
+ flex: 1 1 10%; /* force equal sizes */
27
+ min-width: 8em;
26
28
  text-decoration: none;
29
+ position: relative;
30
+ z-index: 0;
27
31
  }
28
32
 
29
- .itemSmall {
30
- min-width: 8em;
33
+ .item::before {
34
+ content: '';
35
+ border-radius: var(--radius-medium);
36
+ background: var(--color-highlight);
37
+ display: block;
38
+ position: absolute;
39
+ z-index: -1;
40
+ top: calc(0px - var(--space-xsmall));
41
+ right: calc(0px - var(--space-xsmall));
42
+ bottom: calc(0px - var(--space-xsmall));
43
+ left: calc(0px - var(--space-xsmall));
44
+ opacity: 0;
45
+ transition: var(--transition-out);
46
+ }
47
+
48
+ .item:focus::before,
49
+ .item:active::before,
50
+ .item:hover::before {
51
+ opacity: 1;
52
+ transition: var(--transition-in);
53
+ }
54
+
55
+ .item + .item::after {
56
+ content: '';
57
+ border-radius: var(--radius-medium);
58
+ background: var(--color-outline);
59
+ display: block;
60
+ width: 1px;
61
+ position: absolute;
62
+ left: calc(0px - var(--space-xsmall));
63
+ top: var(--space-xxsmall);
64
+ bottom: var(--space-xxsmall);
65
+ opacity: 1;
66
+ transition: var(--transition-out);
67
+ }
68
+
69
+ .item:focus::after,
70
+ .item:active::after,
71
+ .item:hover::after,
72
+ .item:focus + .item::after,
73
+ .item:active + .item::after,
74
+ .item:hover + .item::after {
75
+ opacity: 0;
76
+ transition: var(--transition-in);
31
77
  }
@@ -28,6 +28,18 @@ 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 METRICS_GROUP_ASSETS = {
32
+ title: 'Assets',
33
+ metrics: METRICS_WEBPACK_ASSETS,
34
+ };
35
+ export const METRICS_GROUP_MODULES = {
36
+ title: 'Modules',
37
+ metrics: METRICS_WEBPACK_MODULES,
38
+ };
39
+ export const METRICS_GROUP_PACKAGES = {
40
+ title: 'Packages',
41
+ metrics: METRICS_WEBPACK_PACKAGES,
42
+ };
31
43
  export const SORT = {
32
44
  ASC: 'asc',
33
45
  DESC: 'desc',
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"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;CACJ,CAAC;AAEX,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,yCAAmB,CAAA;IACnB,qCAAe,CAAA;AACjB,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG,kBAAkB,CAAC,KAAK,CAAC;AAElE,MAAM,CAAN,IAAY,qBAGX;AAHD,WAAY,qBAAqB;IAC/B,0CAAiB,CAAA;IACjB,0CAAiB,CAAA;AACnB,CAAC,EAHW,qBAAqB,KAArB,qBAAqB,QAGhC;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG,qBAAqB,CAAC,MAAM,CAAC;AAEzE,MAAM,CAAN,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,kCAAc,CAAA;IACd,oDAAgC,CAAA;IAChC,4CAAwB,CAAA;AAC1B,CAAC,EAJW,gBAAgB,KAAhB,gBAAgB,QAI3B;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE;QACvB,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,2CAA2C;KACrD;IACD,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE;QAC7B,KAAK,EAAE,YAAY;QACnB,OAAO,EAAE,iDAAiD;KAC3D;IACD,CAAC,gBAAgB,CAAC,cAAc,CAAC,EAAE;QACjC,KAAK,EAAE,gBAAgB;QACvB,OAAO,EAAE,uBAAuB;KACjC;CACF,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ html {
15
15
 
16
16
  body {
17
17
  background: var(--color-background);
18
+ accent-color: var(--color-accent);
18
19
  color: var(--color-text);
19
20
  line-height: var(--line-height);
20
21
  }
@@ -59,12 +60,14 @@ code {
59
60
  }
60
61
 
61
62
  a {
62
- color: var(--color-primary);
63
+ color: var(--color-accent);
64
+ transition: var(--transition-out);
63
65
  }
64
66
 
65
- a:hover,
67
+ a:focus,
66
68
  a:active,
67
- a:focus {
68
- color: var(--color-primary-dark);
69
+ a:hover {
70
+ color: var(--color-accent-dark);
69
71
  outline: none;
72
+ transition: var(--transition-in);
70
73
  }