@bundle-stats/ui 4.12.2 → 4.13.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 (301) hide show
  1. package/lib/app/app.js +5 -13
  2. package/lib/app/app.js.map +1 -1
  3. package/lib/app/app.module.css +2 -2
  4. package/lib/assets/icons.svg +26 -20
  5. package/lib/assets/icons.svg.js +27 -23
  6. package/lib/assets/icons.svg.js.map +1 -1
  7. package/lib/components/bundle-assets/bundle-assets.js +21 -6
  8. package/lib/components/bundle-assets/bundle-assets.js.map +1 -1
  9. package/lib/components/bundle-assets/bundle-assets.module.css +0 -5
  10. package/lib/components/bundle-assets/index.js +3 -4
  11. package/lib/components/bundle-assets/index.js.map +1 -1
  12. package/lib/components/bundle-assets-totals/bundle-assets-totals.js +88 -0
  13. package/lib/components/bundle-assets-totals/bundle-assets-totals.js.map +1 -0
  14. package/lib/{ui/horizontal-bar-chart → components/bundle-assets-totals}/index.js +1 -1
  15. package/lib/components/bundle-assets-totals/index.js.map +1 -0
  16. package/lib/components/bundle-modules/bundle-modules.js +24 -9
  17. package/lib/components/bundle-modules/bundle-modules.js.map +1 -1
  18. package/lib/components/bundle-modules/bundle-modules.module.css +0 -5
  19. package/lib/components/bundle-modules/index.js +3 -4
  20. package/lib/components/bundle-modules/index.js.map +1 -1
  21. package/lib/components/bundle-packages/bundle-packages.js +19 -4
  22. package/lib/components/bundle-packages/bundle-packages.js.map +1 -1
  23. package/lib/components/bundle-packages/bundle-packages.module.css +0 -5
  24. package/lib/components/bundle-packages/index.js +3 -4
  25. package/lib/components/bundle-packages/index.js.map +1 -1
  26. package/lib/components/index.js +3 -7
  27. package/lib/components/index.js.map +1 -1
  28. package/lib/components/jobs-header/jobs-header.module.css +0 -4
  29. package/lib/components/{bundle-assets-totals-table → metrics-display-selector}/index.js +1 -1
  30. package/lib/components/metrics-display-selector/index.js.map +1 -0
  31. package/lib/components/metrics-display-selector/metrics-display-selector.js +21 -0
  32. package/lib/components/metrics-display-selector/metrics-display-selector.js.map +1 -0
  33. package/lib/components/metrics-display-selector/metrics-display-selector.module.css +10 -0
  34. package/lib/components/metrics-table/metrics-table.i18n.js +1 -6
  35. package/lib/components/metrics-table/metrics-table.i18n.js.map +1 -1
  36. package/lib/components/metrics-table/metrics-table.js +4 -37
  37. package/lib/components/metrics-table/metrics-table.js.map +1 -1
  38. package/lib/components/metrics-table/metrics-table.module.css +1 -44
  39. package/lib/components/{total-size-type-title → metrics-table-header}/index.js +1 -1
  40. package/lib/components/metrics-table-header/index.js.map +1 -0
  41. package/lib/components/metrics-table-header/metrics-table-header.i18n.js +9 -0
  42. package/lib/components/metrics-table-header/metrics-table-header.i18n.js.map +1 -0
  43. package/lib/components/metrics-table-header/metrics-table-header.js +79 -0
  44. package/lib/components/metrics-table-header/metrics-table-header.js.map +1 -0
  45. package/lib/components/metrics-table-header/metrics-table-header.module.css +51 -0
  46. package/lib/components/metrics-table-options/metrics-table-options.js +2 -2
  47. package/lib/components/metrics-table-options/metrics-table-options.js.map +1 -1
  48. package/lib/components/metrics-table-title/metrics-table-title.js +1 -1
  49. package/lib/components/metrics-table-title/metrics-table-title.js.map +1 -1
  50. package/lib/components/metrics-table-title/metrics-table-title.module.css +4 -4
  51. package/lib/components/{bundle-assets-totals-chart-bars → metrics-treemap}/index.js +1 -1
  52. package/lib/components/metrics-treemap/index.js.map +1 -0
  53. package/lib/components/metrics-treemap/metrics-treemap.js +163 -0
  54. package/lib/components/metrics-treemap/metrics-treemap.js.map +1 -0
  55. package/lib/components/metrics-treemap/metrics-treemap.module.css +201 -0
  56. package/lib/components/sort-button/sort-button.module.css +1 -0
  57. package/lib/constants.js +6 -1
  58. package/lib/constants.js.map +1 -1
  59. package/lib/css/variables.css +11 -11
  60. package/lib/hooks/entry-info.js +12 -0
  61. package/lib/hooks/entry-info.js.map +1 -0
  62. package/lib/hooks/metrics-display-type.js +40 -0
  63. package/lib/hooks/metrics-display-type.js.map +1 -0
  64. package/lib/layout/flex-stack/flex-stack.js +3 -4
  65. package/lib/layout/flex-stack/flex-stack.js.map +1 -1
  66. package/lib/layout/flex-stack/flex-stack.module.css +19 -23
  67. package/lib/query-state.js +1 -1
  68. package/lib/query-state.js.map +1 -1
  69. package/lib/ui/button/button.module.css +1 -0
  70. package/lib/ui/dropdown/dropdown.js +10 -40
  71. package/lib/ui/dropdown/dropdown.js.map +1 -1
  72. package/lib/ui/dropdown/index.js.map +1 -1
  73. package/lib/ui/filters/filters.js +33 -35
  74. package/lib/ui/filters/filters.js.map +1 -1
  75. package/lib/ui/filters/filters.module.css +55 -67
  76. package/lib/ui/hover-card/hover-card.js +1 -1
  77. package/lib/ui/hover-card/hover-card.js.map +1 -1
  78. package/lib/ui/icon/icon.js +2 -0
  79. package/lib/ui/icon/icon.js.map +1 -1
  80. package/lib/ui/index.js +1 -3
  81. package/lib/ui/index.js.map +1 -1
  82. package/lib/ui/toolbar/toolbar.module.css +1 -3
  83. package/lib-esm/app/app.js +5 -13
  84. package/lib-esm/app/app.js.map +1 -1
  85. package/lib-esm/app/app.module.css +2 -2
  86. package/lib-esm/assets/icons.svg +26 -20
  87. package/lib-esm/assets/icons.svg.js +27 -23
  88. package/lib-esm/assets/icons.svg.js.map +1 -1
  89. package/lib-esm/components/bundle-assets/bundle-assets.js +21 -6
  90. package/lib-esm/components/bundle-assets/bundle-assets.js.map +1 -1
  91. package/lib-esm/components/bundle-assets/bundle-assets.module.css +0 -5
  92. package/lib-esm/components/bundle-assets/index.js +5 -6
  93. package/lib-esm/components/bundle-assets/index.js.map +1 -1
  94. package/lib-esm/components/bundle-assets-totals/bundle-assets-totals.js +58 -0
  95. package/lib-esm/components/bundle-assets-totals/bundle-assets-totals.js.map +1 -0
  96. package/lib-esm/components/bundle-assets-totals/index.js +2 -0
  97. package/lib-esm/components/bundle-assets-totals/index.js.map +1 -0
  98. package/lib-esm/components/bundle-modules/bundle-modules.js +24 -9
  99. package/lib-esm/components/bundle-modules/bundle-modules.js.map +1 -1
  100. package/lib-esm/components/bundle-modules/bundle-modules.module.css +0 -5
  101. package/lib-esm/components/bundle-modules/index.js +3 -4
  102. package/lib-esm/components/bundle-modules/index.js.map +1 -1
  103. package/lib-esm/components/bundle-packages/bundle-packages.js +19 -4
  104. package/lib-esm/components/bundle-packages/bundle-packages.js.map +1 -1
  105. package/lib-esm/components/bundle-packages/bundle-packages.module.css +0 -5
  106. package/lib-esm/components/bundle-packages/index.js +5 -6
  107. package/lib-esm/components/bundle-packages/index.js.map +1 -1
  108. package/lib-esm/components/index.js +1 -3
  109. package/lib-esm/components/index.js.map +1 -1
  110. package/lib-esm/components/jobs-header/jobs-header.module.css +0 -4
  111. package/lib-esm/components/metrics-display-selector/index.js +2 -0
  112. package/lib-esm/components/metrics-display-selector/index.js.map +1 -0
  113. package/lib-esm/components/metrics-display-selector/metrics-display-selector.js +14 -0
  114. package/lib-esm/components/metrics-display-selector/metrics-display-selector.js.map +1 -0
  115. package/lib-esm/components/metrics-display-selector/metrics-display-selector.module.css +10 -0
  116. package/lib-esm/components/metrics-table/metrics-table.i18n.js +0 -5
  117. package/lib-esm/components/metrics-table/metrics-table.i18n.js.map +1 -1
  118. package/lib-esm/components/metrics-table/metrics-table.js +4 -37
  119. package/lib-esm/components/metrics-table/metrics-table.js.map +1 -1
  120. package/lib-esm/components/metrics-table/metrics-table.module.css +1 -44
  121. package/lib-esm/components/metrics-table-header/index.js +2 -0
  122. package/lib-esm/components/metrics-table-header/index.js.map +1 -0
  123. package/lib-esm/components/metrics-table-header/metrics-table-header.i18n.js +6 -0
  124. package/lib-esm/components/metrics-table-header/metrics-table-header.i18n.js.map +1 -0
  125. package/lib-esm/components/metrics-table-header/metrics-table-header.js +49 -0
  126. package/lib-esm/components/metrics-table-header/metrics-table-header.js.map +1 -0
  127. package/lib-esm/components/metrics-table-header/metrics-table-header.module.css +51 -0
  128. package/lib-esm/components/metrics-table-options/metrics-table-options.js +3 -3
  129. package/lib-esm/components/metrics-table-options/metrics-table-options.js.map +1 -1
  130. package/lib-esm/components/metrics-table-title/metrics-table-title.js +1 -1
  131. package/lib-esm/components/metrics-table-title/metrics-table-title.js.map +1 -1
  132. package/lib-esm/components/metrics-table-title/metrics-table-title.module.css +4 -4
  133. package/lib-esm/components/metrics-treemap/index.js +2 -0
  134. package/lib-esm/components/metrics-treemap/index.js.map +1 -0
  135. package/lib-esm/components/metrics-treemap/metrics-treemap.js +135 -0
  136. package/lib-esm/components/metrics-treemap/metrics-treemap.js.map +1 -0
  137. package/lib-esm/components/metrics-treemap/metrics-treemap.module.css +201 -0
  138. package/lib-esm/components/sort-button/sort-button.module.css +1 -0
  139. package/lib-esm/constants.js +5 -0
  140. package/lib-esm/constants.js.map +1 -1
  141. package/lib-esm/css/variables.css +11 -11
  142. package/lib-esm/hooks/entry-info.js +8 -0
  143. package/lib-esm/hooks/entry-info.js.map +1 -0
  144. package/lib-esm/hooks/metrics-display-type.js +36 -0
  145. package/lib-esm/hooks/metrics-display-type.js.map +1 -0
  146. package/lib-esm/layout/flex-stack/flex-stack.js +3 -4
  147. package/lib-esm/layout/flex-stack/flex-stack.js.map +1 -1
  148. package/lib-esm/layout/flex-stack/flex-stack.module.css +19 -23
  149. package/lib-esm/query-state.js +1 -1
  150. package/lib-esm/query-state.js.map +1 -1
  151. package/lib-esm/ui/button/button.module.css +1 -0
  152. package/lib-esm/ui/dropdown/dropdown.js +8 -39
  153. package/lib-esm/ui/dropdown/dropdown.js.map +1 -1
  154. package/lib-esm/ui/dropdown/index.js.map +1 -1
  155. package/lib-esm/ui/filters/filters.js +34 -36
  156. package/lib-esm/ui/filters/filters.js.map +1 -1
  157. package/lib-esm/ui/filters/filters.module.css +55 -67
  158. package/lib-esm/ui/hover-card/hover-card.js +1 -1
  159. package/lib-esm/ui/hover-card/hover-card.js.map +1 -1
  160. package/lib-esm/ui/icon/icon.js +2 -0
  161. package/lib-esm/ui/icon/icon.js.map +1 -1
  162. package/lib-esm/ui/index.js +0 -1
  163. package/lib-esm/ui/index.js.map +1 -1
  164. package/lib-esm/ui/toolbar/toolbar.module.css +1 -3
  165. package/package.json +10 -7
  166. package/src/app/app.jsx +5 -17
  167. package/src/app/app.module.css +2 -2
  168. package/src/assets/icons/table.svg +3 -0
  169. package/src/assets/icons/treemap.svg +4 -0
  170. package/src/assets/icons.svg +26 -20
  171. package/src/assets/icons.svg.jsx +91 -55
  172. package/src/components/bundle-assets/bundle-assets.jsx +47 -16
  173. package/src/components/bundle-assets/bundle-assets.module.css +0 -5
  174. package/src/components/bundle-assets/index.jsx +10 -5
  175. package/src/components/bundle-assets-totals/bundle-assets-totals.jsx +125 -0
  176. package/src/components/bundle-assets-totals/index.js +1 -0
  177. package/src/components/bundle-modules/bundle-modules.module.css +0 -5
  178. package/src/components/bundle-modules/bundle-modules.tsx +65 -35
  179. package/src/components/bundle-modules/index.tsx +4 -3
  180. package/src/components/bundle-packages/bundle-packages.jsx +42 -14
  181. package/src/components/bundle-packages/bundle-packages.module.css +0 -5
  182. package/src/components/bundle-packages/index.jsx +10 -5
  183. package/src/components/index.js +1 -3
  184. package/src/components/jobs-header/jobs-header.module.css +0 -4
  185. package/src/components/metrics-display-selector/index.tsx +1 -0
  186. package/src/components/metrics-display-selector/metrics-display-selector.module.css +10 -0
  187. package/src/components/metrics-display-selector/metrics-display-selector.tsx +47 -0
  188. package/src/components/metrics-table/metrics-table.i18n.ts +0 -7
  189. package/src/components/metrics-table/metrics-table.module.css +1 -44
  190. package/src/components/metrics-table/metrics-table.tsx +17 -153
  191. package/src/components/metrics-table-header/index.ts +1 -0
  192. package/src/components/metrics-table-header/metrics-table-header.i18n.ts +6 -0
  193. package/src/components/metrics-table-header/metrics-table-header.module.css +51 -0
  194. package/src/components/metrics-table-header/metrics-table-header.tsx +172 -0
  195. package/src/components/metrics-table-options/metrics-table-options.jsx +4 -10
  196. package/src/components/metrics-table-title/metrics-table-title.jsx +1 -1
  197. package/src/components/metrics-table-title/metrics-table-title.module.css +4 -4
  198. package/src/components/metrics-treemap/index.ts +1 -0
  199. package/src/components/metrics-treemap/metrics-treemap.module.css +201 -0
  200. package/src/components/metrics-treemap/metrics-treemap.stories.tsx +23 -0
  201. package/src/components/metrics-treemap/metrics-treemap.tsx +304 -0
  202. package/src/components/sort-button/sort-button.module.css +1 -0
  203. package/src/{constants.js → constants.ts} +5 -0
  204. package/src/css/variables.css +11 -11
  205. package/src/hooks/entry-info.ts +19 -0
  206. package/src/hooks/metrics-display-type.ts +56 -0
  207. package/src/layout/flex-stack/flex-stack.module.css +19 -23
  208. package/src/layout/flex-stack/flex-stack.tsx +2 -8
  209. package/src/query-state.tsx +1 -1
  210. package/src/types.d.ts +2 -0
  211. package/src/ui/button/button.module.css +1 -0
  212. package/src/ui/dropdown/dropdown.stories.tsx +25 -0
  213. package/src/ui/dropdown/dropdown.tsx +66 -0
  214. package/src/ui/filters/filters.module.css +55 -67
  215. package/src/ui/filters/filters.stories.tsx +109 -0
  216. package/src/ui/filters/filters.tsx +128 -167
  217. package/src/ui/hover-card/hover-card.tsx +1 -1
  218. package/src/ui/icon/icon.tsx +2 -0
  219. package/src/ui/index.js +0 -1
  220. package/src/ui/toolbar/toolbar.module.css +1 -3
  221. package/types/components/bundle-assets/bundle-assets.d.ts +2 -1
  222. package/types/components/{bundle-assets-totals-table/bundle-assets-totals-table.d.ts → bundle-assets-totals/bundle-assets-totals.d.ts} +6 -2
  223. package/types/components/bundle-assets-totals/index.d.ts +1 -0
  224. package/types/components/bundle-modules/bundle-modules.d.ts +2 -1
  225. package/types/components/bundle-modules/index.d.ts +1 -1
  226. package/types/components/bundle-packages/bundle-packages.d.ts +1 -0
  227. package/types/components/index.d.ts +1 -3
  228. package/types/components/metrics-display-selector/index.d.ts +1 -0
  229. package/types/components/metrics-display-selector/metrics-display-selector.d.ts +9 -0
  230. package/types/components/metrics-table/metrics-table.d.ts +4 -10
  231. package/types/components/metrics-table/metrics-table.i18n.d.ts +0 -5
  232. package/types/components/metrics-table-header/index.d.ts +1 -0
  233. package/types/components/metrics-table-header/metrics-table-header.d.ts +15 -0
  234. package/types/components/metrics-table-header/metrics-table-header.i18n.d.ts +5 -0
  235. package/types/components/metrics-treemap/index.d.ts +1 -0
  236. package/types/components/metrics-treemap/metrics-treemap.d.ts +9 -0
  237. package/types/constants.d.ts +19 -15
  238. package/types/hooks/entry-info.d.ts +8 -0
  239. package/types/hooks/metrics-display-type.d.ts +4 -0
  240. package/types/ui/dropdown/dropdown.d.ts +12 -47
  241. package/types/ui/dropdown/index.d.ts +1 -1
  242. package/types/ui/filters/filters.d.ts +2 -7
  243. package/types/ui/icon/icon.d.ts +4 -0
  244. package/types/ui/index.d.ts +0 -1
  245. package/lib/components/bundle-assets-totals-chart-bars/bundle-assets-totals-chart-bars.js +0 -95
  246. package/lib/components/bundle-assets-totals-chart-bars/bundle-assets-totals-chart-bars.js.map +0 -1
  247. package/lib/components/bundle-assets-totals-chart-bars/bundle-assets-totals-chart-bars.module.css +0 -42
  248. package/lib/components/bundle-assets-totals-chart-bars/index.js.map +0 -1
  249. package/lib/components/bundle-assets-totals-table/bundle-assets-totals-table.js +0 -57
  250. package/lib/components/bundle-assets-totals-table/bundle-assets-totals-table.js.map +0 -1
  251. package/lib/components/bundle-assets-totals-table/bundle-assets-totals-table.module.css +0 -3
  252. package/lib/components/bundle-assets-totals-table/index.js.map +0 -1
  253. package/lib/components/total-size-type-title/index.js.map +0 -1
  254. package/lib/components/total-size-type-title/total-size-type-title.js +0 -32
  255. package/lib/components/total-size-type-title/total-size-type-title.js.map +0 -1
  256. package/lib/components/total-size-type-title/total-size-type-title.module.css +0 -14
  257. package/lib/ui/horizontal-bar-chart/horizontal-bar-chart.js +0 -102
  258. package/lib/ui/horizontal-bar-chart/horizontal-bar-chart.js.map +0 -1
  259. package/lib/ui/horizontal-bar-chart/horizontal-bar-chart.module.css +0 -42
  260. package/lib/ui/horizontal-bar-chart/index.js.map +0 -1
  261. package/lib-esm/components/bundle-assets-totals-chart-bars/bundle-assets-totals-chart-bars.js +0 -66
  262. package/lib-esm/components/bundle-assets-totals-chart-bars/bundle-assets-totals-chart-bars.js.map +0 -1
  263. package/lib-esm/components/bundle-assets-totals-chart-bars/bundle-assets-totals-chart-bars.module.css +0 -42
  264. package/lib-esm/components/bundle-assets-totals-chart-bars/index.js +0 -2
  265. package/lib-esm/components/bundle-assets-totals-chart-bars/index.js.map +0 -1
  266. package/lib-esm/components/bundle-assets-totals-table/bundle-assets-totals-table.js +0 -27
  267. package/lib-esm/components/bundle-assets-totals-table/bundle-assets-totals-table.js.map +0 -1
  268. package/lib-esm/components/bundle-assets-totals-table/bundle-assets-totals-table.module.css +0 -3
  269. package/lib-esm/components/bundle-assets-totals-table/index.js +0 -2
  270. package/lib-esm/components/bundle-assets-totals-table/index.js.map +0 -1
  271. package/lib-esm/components/total-size-type-title/index.js +0 -2
  272. package/lib-esm/components/total-size-type-title/index.js.map +0 -1
  273. package/lib-esm/components/total-size-type-title/total-size-type-title.js +0 -25
  274. package/lib-esm/components/total-size-type-title/total-size-type-title.js.map +0 -1
  275. package/lib-esm/components/total-size-type-title/total-size-type-title.module.css +0 -14
  276. package/lib-esm/ui/horizontal-bar-chart/horizontal-bar-chart.js +0 -96
  277. package/lib-esm/ui/horizontal-bar-chart/horizontal-bar-chart.js.map +0 -1
  278. package/lib-esm/ui/horizontal-bar-chart/horizontal-bar-chart.module.css +0 -42
  279. package/lib-esm/ui/horizontal-bar-chart/index.js +0 -2
  280. package/lib-esm/ui/horizontal-bar-chart/index.js.map +0 -1
  281. package/src/components/bundle-assets-totals-chart-bars/bundle-assets-totals-chart-bars.jsx +0 -106
  282. package/src/components/bundle-assets-totals-chart-bars/bundle-assets-totals-chart-bars.module.css +0 -42
  283. package/src/components/bundle-assets-totals-chart-bars/index.js +0 -1
  284. package/src/components/bundle-assets-totals-table/bundle-assets-totals-table.jsx +0 -55
  285. package/src/components/bundle-assets-totals-table/bundle-assets-totals-table.module.css +0 -3
  286. package/src/components/bundle-assets-totals-table/index.js +0 -1
  287. package/src/components/total-size-type-title/index.js +0 -1
  288. package/src/components/total-size-type-title/total-size-type-title.jsx +0 -41
  289. package/src/components/total-size-type-title/total-size-type-title.module.css +0 -14
  290. package/src/ui/dropdown/dropdown.jsx +0 -88
  291. package/src/ui/horizontal-bar-chart/horizontal-bar-chart.jsx +0 -156
  292. package/src/ui/horizontal-bar-chart/horizontal-bar-chart.module.css +0 -42
  293. package/src/ui/horizontal-bar-chart/index.js +0 -1
  294. package/types/components/bundle-assets-totals-chart-bars/bundle-assets-totals-chart-bars.d.ts +0 -22
  295. package/types/components/bundle-assets-totals-chart-bars/index.d.ts +0 -1
  296. package/types/components/bundle-assets-totals-table/index.d.ts +0 -1
  297. package/types/components/total-size-type-title/index.d.ts +0 -1
  298. package/types/components/total-size-type-title/total-size-type-title.d.ts +0 -14
  299. package/types/ui/horizontal-bar-chart/horizontal-bar-chart.d.ts +0 -23
  300. package/types/ui/horizontal-bar-chart/index.d.ts +0 -1
  301. /package/src/ui/dropdown/{index.js → index.ts} +0 -0
@@ -1,26 +1,26 @@
1
1
  <svg width="0" height="0" style="position:absolute">
2
- <symbol viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" id="arrow" xmlns="http://www.w3.org/2000/svg">
2
+ <symbol viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-arrow-down" id="arrow" xmlns="http://www.w3.org/2000/svg">
3
3
  <path d="M12 5v14M19 12l-7 7-7-7"/>
4
4
  </symbol>
5
- <symbol fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" viewBox="0 0 24 24" id="arrow-right-circle" xmlns="http://www.w3.org/2000/svg">
5
+ <symbol fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-arrow-right-circle" viewBox="0 0 24 24" id="arrow-right-circle" xmlns="http://www.w3.org/2000/svg">
6
6
  <circle cx="12" cy="12" r="10"/>
7
- <path d="M12 16l4-4-4-4M8 12h8"/>
7
+ <path d="m12 16 4-4-4-4M8 12h8"/>
8
8
  </symbol>
9
- <symbol fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" viewBox="0 0 24 24" id="chevron-down" xmlns="http://www.w3.org/2000/svg">
10
- <path d="M6 9l6 6 6-6"/>
9
+ <symbol fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down" viewBox="0 0 24 24" id="chevron-down" xmlns="http://www.w3.org/2000/svg">
10
+ <path d="m6 9 6 6 6-6"/>
11
11
  </symbol>
12
- <symbol fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" viewBox="0 0 24 24" id="chevron-up" xmlns="http://www.w3.org/2000/svg">
13
- <path d="M18 15l-6-6-6 6"/>
12
+ <symbol fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-up" viewBox="0 0 24 24" id="chevron-up" xmlns="http://www.w3.org/2000/svg">
13
+ <path d="m18 15-6-6-6 6"/>
14
14
  </symbol>
15
- <symbol viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" id="clock" xmlns="http://www.w3.org/2000/svg">
15
+ <symbol viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-clock" id="clock" xmlns="http://www.w3.org/2000/svg">
16
16
  <circle cx="12" cy="12" r="10"/>
17
17
  <path d="M12 6v6l4 2"/>
18
18
  </symbol>
19
- <symbol fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" viewBox="0 0 24 24" id="close" xmlns="http://www.w3.org/2000/svg">
19
+ <symbol fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-x-circle" viewBox="0 0 24 24" id="close" xmlns="http://www.w3.org/2000/svg">
20
20
  <circle cx="12" cy="12" r="10"/>
21
- <path d="M15 9l-6 6M9 9l6 6"/>
21
+ <path d="m15 9-6 6M9 9l6 6"/>
22
22
  </symbol>
23
- <symbol viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" id="commit" xmlns="http://www.w3.org/2000/svg">
23
+ <symbol viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-git-commit" id="commit" xmlns="http://www.w3.org/2000/svg">
24
24
  <circle cx="12" cy="12" r="4"/>
25
25
  <path d="M1.05 12H7M17.01 12h5.95"/>
26
26
  </symbol>
@@ -28,24 +28,24 @@
28
28
  <circle cx="12" cy="12" r="10"/>
29
29
  <path d="M12 8v4M12 16h.01"/>
30
30
  </symbol>
31
- <symbol fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" viewBox="0 0 24 24" id="external-link" xmlns="http://www.w3.org/2000/svg">
32
- <path d="M18 13v6a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h6M15 3h6v6M10 14L21 3"/>
31
+ <symbol fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-external-link" viewBox="0 0 24 24" id="external-link" xmlns="http://www.w3.org/2000/svg">
32
+ <path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6M15 3h6v6M10 14 21 3"/>
33
33
  </symbol>
34
- <symbol viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" id="filter" xmlns="http://www.w3.org/2000/svg">
34
+ <symbol viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-bar-chart" id="filter" xmlns="http://www.w3.org/2000/svg">
35
35
  <path d="M12 20V10M18 20V4M6 20v-4"/>
36
36
  </symbol>
37
37
  <symbol viewBox="0 0 98 96" id="github" xmlns="http://www.w3.org/2000/svg">
38
- <path fill-rule="evenodd" clip-rule="evenodd" d="M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a46.97 46.97 0 0112.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0z" fill="currentColor"/>
38
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a46.97 46.97 0 0 1 12.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0z" fill="currentColor"/>
39
39
  </symbol>
40
- <symbol viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" id="help" xmlns="http://www.w3.org/2000/svg">
40
+ <symbol viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-help-circle" id="help" xmlns="http://www.w3.org/2000/svg">
41
41
  <circle cx="12" cy="12" r="10"/>
42
- <path d="M9.09 9a3 3 0 015.83 1c0 2-3 3-3 3M12 17h.01"/>
42
+ <path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3M12 17h.01"/>
43
43
  </symbol>
44
44
  <symbol fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" viewBox="0 0 24 24" id="info" xmlns="http://www.w3.org/2000/svg">
45
45
  <circle cx="12" cy="12" r="10"/>
46
46
  <path d="M12 16v-4M12 8h.01"/>
47
47
  </symbol>
48
- <symbol viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" id="menu" xmlns="http://www.w3.org/2000/svg">
48
+ <symbol viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-menu" id="menu" xmlns="http://www.w3.org/2000/svg">
49
49
  <path d="M3 12h18M3 6h18M3 18h18"/>
50
50
  </symbol>
51
51
  <symbol fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" viewBox="0 0 24 24" id="more-vertical" xmlns="http://www.w3.org/2000/svg">
@@ -57,7 +57,13 @@
57
57
  <path d="M3 18h6v-2H3v2zM3 6v2h18V6H3zm0 7h12v-2H3v2z"/>
58
58
  <path d="M0 0h24v24H0z" fill="none"/>
59
59
  </symbol>
60
- <symbol viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" id="warning" xmlns="http://www.w3.org/2000/svg">
61
- <path d="M10.29 3.86L1.82 18a2 2 0 001.71 3h16.94a2 2 0 001.71-3L13.71 3.86a2 2 0 00-3.42 0zM12 9v4M12 17h.01"/>
60
+ <symbol fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" viewBox="0 0 24 24" id="table" xmlns="http://www.w3.org/2000/svg">
61
+ <path d="M9 3H5a2 2 0 0 0-2 2v4m6-6h10a2 2 0 0 1 2 2v4M9 3v18m0 0h10a2 2 0 0 0 2-2V9M9 21H5a2 2 0 0 1-2-2V9m0 0h18"/>
62
+ </symbol>
63
+ <symbol fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" viewBox="0 0 24 24" id="treemap" xmlns="http://www.w3.org/2000/svg">
64
+ <path d="M9 3H5a2 2 0 0 0-2 2v4m6-6h10a2 2 0 0 1 2 2v4M9 21h10a2 2 0 0 0 2-2V9M9 21H5a2 2 0 0 1-2-2V9M12.025 3.422 12 20.652ZM12.85 9l7.347.025zm-.153 6 7.576.025zm4.334.764L17 20.326Z"/>
65
+ </symbol>
66
+ <symbol viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-alert-triangle" id="warning" xmlns="http://www.w3.org/2000/svg">
67
+ <path d="M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0zM12 9v4M12 17h.01"/>
62
68
  </symbol>
63
69
  </svg>
@@ -6,9 +6,10 @@ export const SvgIcons = (props) => (
6
6
  viewBox="0 0 24 24"
7
7
  fill="none"
8
8
  stroke="currentColor"
9
- stroke-width="2"
10
- stroke-linecap="round"
11
- stroke-linejoin="round"
9
+ strokeWidth="2"
10
+ strokeLinecap="round"
11
+ strokeLinejoin="round"
12
+ className="feather feather-arrow-down"
12
13
  id="arrow"
13
14
  xmlns="http://www.w3.org/2000/svg"
14
15
  >
@@ -17,47 +18,51 @@ export const SvgIcons = (props) => (
17
18
  <symbol
18
19
  fill="none"
19
20
  stroke="currentColor"
20
- stroke-width="2"
21
- stroke-linecap="round"
22
- stroke-linejoin="round"
21
+ strokeWidth="2"
22
+ strokeLinecap="round"
23
+ strokeLinejoin="round"
24
+ className="feather feather-arrow-right-circle"
23
25
  viewBox="0 0 24 24"
24
26
  id="arrow-right-circle"
25
27
  xmlns="http://www.w3.org/2000/svg"
26
28
  >
27
29
  <circle cx="12" cy="12" r="10" />
28
- <path d="M12 16l4-4-4-4M8 12h8" />
30
+ <path d="m12 16 4-4-4-4M8 12h8" />
29
31
  </symbol>
30
32
  <symbol
31
33
  fill="none"
32
34
  stroke="currentColor"
33
- stroke-width="2"
34
- stroke-linecap="round"
35
- stroke-linejoin="round"
35
+ strokeWidth="2"
36
+ strokeLinecap="round"
37
+ strokeLinejoin="round"
38
+ className="lucide lucide-chevron-down"
36
39
  viewBox="0 0 24 24"
37
40
  id="chevron-down"
38
41
  xmlns="http://www.w3.org/2000/svg"
39
42
  >
40
- <path d="M6 9l6 6 6-6" />
43
+ <path d="m6 9 6 6 6-6" />
41
44
  </symbol>
42
45
  <symbol
43
46
  fill="none"
44
47
  stroke="currentColor"
45
- stroke-width="2"
46
- stroke-linecap="round"
47
- stroke-linejoin="round"
48
+ strokeWidth="2"
49
+ strokeLinecap="round"
50
+ strokeLinejoin="round"
51
+ className="lucide lucide-chevron-up"
48
52
  viewBox="0 0 24 24"
49
53
  id="chevron-up"
50
54
  xmlns="http://www.w3.org/2000/svg"
51
55
  >
52
- <path d="M18 15l-6-6-6 6" />
56
+ <path d="m18 15-6-6-6 6" />
53
57
  </symbol>
54
58
  <symbol
55
59
  viewBox="0 0 24 24"
56
60
  fill="none"
57
61
  stroke="currentColor"
58
- stroke-width="2"
59
- stroke-linecap="round"
60
- stroke-linejoin="round"
62
+ strokeWidth="2"
63
+ strokeLinecap="round"
64
+ strokeLinejoin="round"
65
+ className="feather feather-clock"
61
66
  id="clock"
62
67
  xmlns="http://www.w3.org/2000/svg"
63
68
  >
@@ -67,23 +72,25 @@ export const SvgIcons = (props) => (
67
72
  <symbol
68
73
  fill="none"
69
74
  stroke="currentColor"
70
- stroke-width="2"
71
- stroke-linecap="round"
72
- stroke-linejoin="round"
75
+ strokeWidth="2"
76
+ strokeLinecap="round"
77
+ strokeLinejoin="round"
78
+ className="feather feather-x-circle"
73
79
  viewBox="0 0 24 24"
74
80
  id="close"
75
81
  xmlns="http://www.w3.org/2000/svg"
76
82
  >
77
83
  <circle cx="12" cy="12" r="10" />
78
- <path d="M15 9l-6 6M9 9l6 6" />
84
+ <path d="m15 9-6 6M9 9l6 6" />
79
85
  </symbol>
80
86
  <symbol
81
87
  viewBox="0 0 24 24"
82
88
  fill="none"
83
89
  stroke="currentColor"
84
- stroke-width="2"
85
- stroke-linecap="round"
86
- stroke-linejoin="round"
90
+ strokeWidth="2"
91
+ strokeLinecap="round"
92
+ strokeLinejoin="round"
93
+ className="feather feather-git-commit"
87
94
  id="commit"
88
95
  xmlns="http://www.w3.org/2000/svg"
89
96
  >
@@ -93,9 +100,9 @@ export const SvgIcons = (props) => (
93
100
  <symbol
94
101
  fill="none"
95
102
  stroke="currentColor"
96
- stroke-width="2"
97
- stroke-linecap="round"
98
- stroke-linejoin="round"
103
+ strokeWidth="2"
104
+ strokeLinecap="round"
105
+ strokeLinejoin="round"
99
106
  viewBox="0 0 24 24"
100
107
  id="error"
101
108
  xmlns="http://www.w3.org/2000/svg"
@@ -106,22 +113,24 @@ export const SvgIcons = (props) => (
106
113
  <symbol
107
114
  fill="none"
108
115
  stroke="currentColor"
109
- stroke-width="2"
110
- stroke-linecap="round"
111
- stroke-linejoin="round"
116
+ strokeWidth="2"
117
+ strokeLinecap="round"
118
+ strokeLinejoin="round"
119
+ className="feather feather-external-link"
112
120
  viewBox="0 0 24 24"
113
121
  id="external-link"
114
122
  xmlns="http://www.w3.org/2000/svg"
115
123
  >
116
- <path d="M18 13v6a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h6M15 3h6v6M10 14L21 3" />
124
+ <path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6M15 3h6v6M10 14 21 3" />
117
125
  </symbol>
118
126
  <symbol
119
127
  viewBox="0 0 24 24"
120
128
  fill="none"
121
129
  stroke="currentColor"
122
- stroke-width="2"
123
- stroke-linecap="round"
124
- stroke-linejoin="round"
130
+ strokeWidth="2"
131
+ strokeLinecap="round"
132
+ strokeLinejoin="round"
133
+ className="feather feather-bar-chart"
125
134
  id="filter"
126
135
  xmlns="http://www.w3.org/2000/svg"
127
136
  >
@@ -129,9 +138,9 @@ export const SvgIcons = (props) => (
129
138
  </symbol>
130
139
  <symbol viewBox="0 0 98 96" id="github" xmlns="http://www.w3.org/2000/svg">
131
140
  <path
132
- fill-rule="evenodd"
133
- clip-rule="evenodd"
134
- d="M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a46.97 46.97 0 0112.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0z"
141
+ fillRule="evenodd"
142
+ clipRule="evenodd"
143
+ d="M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a46.97 46.97 0 0 1 12.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0z"
135
144
  fill="currentColor"
136
145
  />
137
146
  </symbol>
@@ -139,21 +148,22 @@ export const SvgIcons = (props) => (
139
148
  viewBox="0 0 24 24"
140
149
  fill="none"
141
150
  stroke="currentColor"
142
- stroke-width="2"
143
- stroke-linecap="round"
144
- stroke-linejoin="round"
151
+ strokeWidth="2"
152
+ strokeLinecap="round"
153
+ strokeLinejoin="round"
154
+ className="feather feather-help-circle"
145
155
  id="help"
146
156
  xmlns="http://www.w3.org/2000/svg"
147
157
  >
148
158
  <circle cx="12" cy="12" r="10" />
149
- <path d="M9.09 9a3 3 0 015.83 1c0 2-3 3-3 3M12 17h.01" />
159
+ <path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3M12 17h.01" />
150
160
  </symbol>
151
161
  <symbol
152
162
  fill="none"
153
163
  stroke="currentColor"
154
- stroke-width="2"
155
- stroke-linecap="round"
156
- stroke-linejoin="round"
164
+ strokeWidth="2"
165
+ strokeLinecap="round"
166
+ strokeLinejoin="round"
157
167
  viewBox="0 0 24 24"
158
168
  id="info"
159
169
  xmlns="http://www.w3.org/2000/svg"
@@ -165,9 +175,10 @@ export const SvgIcons = (props) => (
165
175
  viewBox="0 0 24 24"
166
176
  fill="none"
167
177
  stroke="currentColor"
168
- stroke-width="2"
169
- stroke-linecap="round"
170
- stroke-linejoin="round"
178
+ strokeWidth="2"
179
+ strokeLinecap="round"
180
+ strokeLinejoin="round"
181
+ className="feather feather-menu"
171
182
  id="menu"
172
183
  xmlns="http://www.w3.org/2000/svg"
173
184
  >
@@ -176,9 +187,9 @@ export const SvgIcons = (props) => (
176
187
  <symbol
177
188
  fill="none"
178
189
  stroke="currentColor"
179
- stroke-width="2"
180
- stroke-linecap="round"
181
- stroke-linejoin="round"
190
+ strokeWidth="2"
191
+ strokeLinecap="round"
192
+ strokeLinejoin="round"
182
193
  viewBox="0 0 24 24"
183
194
  id="more-vertical"
184
195
  xmlns="http://www.w3.org/2000/svg"
@@ -191,17 +202,42 @@ export const SvgIcons = (props) => (
191
202
  <path d="M3 18h6v-2H3v2zM3 6v2h18V6H3zm0 7h12v-2H3v2z" />
192
203
  <path d="M0 0h24v24H0z" fill="none" />
193
204
  </symbol>
205
+ <symbol
206
+ fill="none"
207
+ stroke="currentColor"
208
+ strokeWidth="2"
209
+ strokeLinecap="round"
210
+ strokeLinejoin="round"
211
+ viewBox="0 0 24 24"
212
+ id="table"
213
+ xmlns="http://www.w3.org/2000/svg"
214
+ >
215
+ <path d="M9 3H5a2 2 0 0 0-2 2v4m6-6h10a2 2 0 0 1 2 2v4M9 3v18m0 0h10a2 2 0 0 0 2-2V9M9 21H5a2 2 0 0 1-2-2V9m0 0h18" />
216
+ </symbol>
217
+ <symbol
218
+ fill="none"
219
+ stroke="currentColor"
220
+ strokeLinecap="round"
221
+ strokeLinejoin="round"
222
+ strokeWidth="2"
223
+ viewBox="0 0 24 24"
224
+ id="treemap"
225
+ xmlns="http://www.w3.org/2000/svg"
226
+ >
227
+ <path d="M9 3H5a2 2 0 0 0-2 2v4m6-6h10a2 2 0 0 1 2 2v4M9 21h10a2 2 0 0 0 2-2V9M9 21H5a2 2 0 0 1-2-2V9M12.025 3.422 12 20.652ZM12.85 9l7.347.025zm-.153 6 7.576.025zm4.334.764L17 20.326Z" />
228
+ </symbol>
194
229
  <symbol
195
230
  viewBox="0 0 24 24"
196
231
  fill="none"
197
232
  stroke="currentColor"
198
- stroke-width="2"
199
- stroke-linecap="round"
200
- stroke-linejoin="round"
233
+ strokeWidth="2"
234
+ strokeLinecap="round"
235
+ strokeLinejoin="round"
236
+ className="feather feather-alert-triangle"
201
237
  id="warning"
202
238
  xmlns="http://www.w3.org/2000/svg"
203
239
  >
204
- <path d="M10.29 3.86L1.82 18a2 2 0 001.71 3h16.94a2 2 0 001.71-3L13.71 3.86a2 2 0 00-3.42 0zM12 9v4M12 17h.01" />
240
+ <path d="M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0zM12 9v4M12 17h.01" />
205
241
  </symbol>
206
242
  </svg>
207
243
  );
@@ -13,12 +13,17 @@ import {
13
13
 
14
14
  import config from '../../config.json';
15
15
  import I18N from '../../i18n';
16
+ import { MetricsDisplayType } from '../../constants';
17
+ import { useMetricsDisplayType } from '../../hooks/metrics-display-type';
18
+ import { Box } from '../../layout/box';
16
19
  import { FlexStack } from '../../layout/flex-stack';
20
+ import { Stack } from '../../layout/stack';
17
21
  import { Icon } from '../../ui/icon';
18
22
  import { InputSearch } from '../../ui/input-search';
19
23
  import { FileName } from '../../ui/file-name';
20
24
  import { HoverCard } from '../../ui/hover-card';
21
25
  import { Tag } from '../../ui/tag';
26
+ import { Table } from '../../ui/table';
22
27
  import { Filters } from '../../ui/filters';
23
28
  import { EmptySet } from '../../ui/empty-set';
24
29
  import { Toolbar } from '../../ui/toolbar';
@@ -28,6 +33,9 @@ import { ComponentLink } from '../component-link';
28
33
  import { MetricsTable } from '../metrics-table';
29
34
  import { MetricsTableOptions } from '../metrics-table-options';
30
35
  import { MetricsTableTitle } from '../metrics-table-title';
36
+ import { MetricsDisplaySelector } from '../metrics-display-selector';
37
+ import { MetricsTableHeader } from '../metrics-table-header';
38
+ import { MetricsTreemap } from '../metrics-treemap';
31
39
  import { SEARCH_PLACEHOLDER } from './bundle-assets.i18n';
32
40
  import css from './bundle-assets.module.css';
33
41
 
@@ -174,10 +182,13 @@ export const BundleAssets = (props) => {
174
182
  updateSearch,
175
183
  customComponentLink: CustomComponentLink,
176
184
  hideEntryInfo,
185
+ showEntryInfo,
177
186
  } = props;
178
187
 
179
188
  const jobLabels = jobs?.map((job) => job?.label);
180
189
 
190
+ const [displayType, setDisplayType] = useMetricsDisplayType();
191
+
181
192
  const dropdownFilters = useMemo(
182
193
  () => getFilters({ compareMode: jobs?.length > 1, filters }),
183
194
  [jobs, filters],
@@ -223,11 +234,11 @@ export const BundleAssets = (props) => {
223
234
 
224
235
  return (
225
236
  <>
226
- <section className={cx(css.root, className)}>
237
+ <Stack space="xsmall" as="section" className={cx(css.root, className)}>
227
238
  <Toolbar
228
- className={css.toolbar}
229
239
  renderActions={({ actionClassName }) => (
230
240
  <FlexStack space="xxsmall" className={cx(css.dropdown, actionClassName)}>
241
+ <MetricsDisplaySelector onSelect={setDisplayType} value={displayType} />
231
242
  <MetricsTableOptions
232
243
  handleViewAll={resetAllFilters}
233
244
  handleResetFilters={resetFilters}
@@ -250,19 +261,38 @@ export const BundleAssets = (props) => {
250
261
  />
251
262
  </FlexStack>
252
263
  </Toolbar>
253
- <main>
254
- <MetricsTable
255
- runs={jobs}
256
- items={items}
257
- renderRowHeader={renderRowHeader}
258
- emptyMessage={emptyMessage}
259
- showHeaderSum
260
- title={metricsTableTitle}
261
- sort={sort}
262
- updateSort={updateSort}
263
- />
264
- </main>
265
- </section>
264
+ <Box outline as="main">
265
+ {displayType === MetricsDisplayType.TABLE && (
266
+ <MetricsTable
267
+ runs={jobs}
268
+ items={items}
269
+ renderRowHeader={renderRowHeader}
270
+ emptyMessage={emptyMessage}
271
+ showHeaderSum
272
+ title={metricsTableTitle}
273
+ sort={sort}
274
+ updateSort={updateSort}
275
+ />
276
+ )}
277
+ {displayType === MetricsDisplayType.TREEMAP && (
278
+ <>
279
+ <Table compact>
280
+ <MetricsTableHeader
281
+ metricTitle={metricsTableTitle}
282
+ showSum
283
+ jobs={jobs}
284
+ rows={items}
285
+ />
286
+ </Table>
287
+ <MetricsTreemap
288
+ emptyMessage={emptyMessage}
289
+ items={items}
290
+ onItemClick={showEntryInfo}
291
+ />
292
+ </>
293
+ )}
294
+ </Box>
295
+ </Stack>
266
296
 
267
297
  {entryItem && (
268
298
  <AssetInfo
@@ -330,7 +360,8 @@ BundleAssets.propTypes = {
330
360
  updateSort: PropTypes.func.isRequired,
331
361
  allItems: PropTypes.arrayOf(PropTypes.shape({
332
362
  key: PropTypes.string,
333
- })),
363
+ })).isRequired,
334
364
  customComponentLink: PropTypes.elementType,
335
365
  hideEntryInfo: PropTypes.func.isRequired,
366
+ showEntryInfo: PropTypes.func.isRequired,
336
367
  };
@@ -1,11 +1,6 @@
1
- .toolbar {
2
- border-bottom: 1px solid var(--color-outline);
3
- }
4
-
5
1
  .toolbarSearch {
6
2
  width: 100%;
7
3
  max-width: 240px;
8
- margin-right: -1px; /** collapse border */
9
4
  }
10
5
 
11
6
  .assetNameWrapper {
@@ -1,4 +1,4 @@
1
- import React, { useCallback, useMemo } from 'react';
1
+ import React, { useMemo } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import * as webpack from '@bundle-stats/utils/lib-esm/webpack';
4
4
  import { ASSET_FILTERS } from '@bundle-stats/utils';
@@ -10,8 +10,14 @@ import {
10
10
  import { useRowsFilter } from '../../hooks/rows-filter';
11
11
  import { useRowsSort } from '../../hooks/rows-sort';
12
12
  import { useSearchParams } from '../../hooks/search-params';
13
+ import { useEntryInfo } from '../../hooks/entry-info';
13
14
  import { BundleAssets as BundleAssetsComponent } from './bundle-assets';
14
- import { addRowAssetFlags, addRowIsNotPredictive, getRowFilter, getCustomSort } from './bundle-assets.utils';
15
+ import {
16
+ addRowAssetFlags,
17
+ addRowIsNotPredictive,
18
+ getRowFilter,
19
+ getCustomSort,
20
+ } from './bundle-assets.utils';
15
21
 
16
22
  export const BundleAssets = (props) => {
17
23
  const { jobs, filters, search, setState, sortBy, direction, ...restProps } = props;
@@ -59,9 +65,7 @@ export const BundleAssets = (props) => {
59
65
  getCustomSort,
60
66
  });
61
67
 
62
- const hideEntryInfo = useCallback(() => {
63
- setState({ entryId: '' });
64
- }, [setState]);
68
+ const [hideEntryInfo, showEntryInfo] = useEntryInfo({ setState });
65
69
 
66
70
  return (
67
71
  <BundleAssetsComponent
@@ -72,6 +76,7 @@ export const BundleAssets = (props) => {
72
76
  allItems={rows}
73
77
  totalRowCount={totalRowCount}
74
78
  hideEntryInfo={hideEntryInfo}
79
+ showEntryInfo={showEntryInfo}
75
80
  />
76
81
  );
77
82
  };