@bundle-stats/ui 4.23.0-beta.1 → 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 (324) hide show
  1. package/lib/app/app.js +2 -1
  2. package/lib/app/app.js.map +1 -1
  3. package/lib/app/app.module.css +8 -9
  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/entry-info/entry-info.js +4 -2
  24. package/lib/components/entry-info/entry-info.js.map +1 -1
  25. package/lib/components/entry-info/entry-info.module.css +7 -2
  26. package/lib/components/jobs-header/jobs-header.js +1 -1
  27. package/lib/components/jobs-header/jobs-header.js.map +1 -1
  28. package/lib/components/jobs-header/jobs-header.module.css +0 -1
  29. package/lib/components/metric-change-legend/metric-change-legend.js +2 -2
  30. package/lib/components/metric-change-legend/metric-change-legend.js.map +1 -1
  31. package/lib/components/metric-change-legend/metric-change-legend.module.css +11 -0
  32. package/lib/components/metric-run-info/metric-run-info.js +4 -11
  33. package/lib/components/metric-run-info/metric-run-info.js.map +1 -1
  34. package/lib/components/metrics-display-selector/metrics-display-selector.module.css +0 -2
  35. package/lib/components/metrics-table/metrics-table.js +31 -20
  36. package/lib/components/metrics-table/metrics-table.js.map +1 -1
  37. package/lib/components/metrics-table/metrics-table.module.css +4 -12
  38. package/lib/components/metrics-table-options/metrics-table-options.js +5 -6
  39. package/lib/components/metrics-table-options/metrics-table-options.js.map +1 -1
  40. package/lib/components/metrics-table-row-count/index.js +18 -0
  41. package/lib/components/metrics-table-row-count/index.js.map +1 -0
  42. package/lib/components/metrics-table-row-count/metrics-table-row-count.js +17 -0
  43. package/lib/components/metrics-table-row-count/metrics-table-row-count.js.map +1 -0
  44. package/lib/components/metrics-table-row-count/metrics-table-row-count.module.css +5 -0
  45. package/lib/components/metrics-treemap/metrics-treemap.constants.js +3 -1
  46. package/lib/components/metrics-treemap/metrics-treemap.constants.js.map +1 -1
  47. package/lib/components/metrics-treemap/metrics-treemap.js +46 -113
  48. package/lib/components/metrics-treemap/metrics-treemap.js.map +1 -1
  49. package/lib/components/metrics-treemap/metrics-treemap.module.css +3 -274
  50. package/lib/components/metrics-treemap/metrics-treemap.utils.js +81 -16
  51. package/lib/components/metrics-treemap/metrics-treemap.utils.js.map +1 -1
  52. package/lib/components/metrics-treemap/tile/index.js +18 -0
  53. package/lib/components/metrics-treemap/tile/index.js.map +1 -0
  54. package/lib/components/metrics-treemap/tile/tile.js +79 -0
  55. package/lib/components/metrics-treemap/tile/tile.js.map +1 -0
  56. package/lib/components/metrics-treemap/tile/tile.module.css +145 -0
  57. package/lib/components/metrics-treemap/tile-group/index.js +18 -0
  58. package/lib/components/metrics-treemap/tile-group/index.js.map +1 -0
  59. package/lib/components/metrics-treemap/tile-group/tile-group.js +75 -0
  60. package/lib/components/metrics-treemap/tile-group/tile-group.js.map +1 -0
  61. package/lib/components/metrics-treemap/tile-group/tile-group.module.css +57 -0
  62. package/lib/components/metrics-treemap/tile-group-title/index.js +18 -0
  63. package/lib/components/metrics-treemap/tile-group-title/index.js.map +1 -0
  64. package/lib/components/metrics-treemap/tile-group-title/tile-group-title.js +24 -0
  65. package/lib/components/metrics-treemap/tile-group-title/tile-group-title.js.map +1 -0
  66. package/lib/components/metrics-treemap/tile-group-title/tile-group-title.module.css +48 -0
  67. package/lib/components/sort-button/sort-button.module.css +0 -2
  68. package/lib/components/summary/summary.js +5 -4
  69. package/lib/components/summary/summary.js.map +1 -1
  70. package/lib/components/summary/summary.module.css +10 -14
  71. package/lib/css/default.css +7 -4
  72. package/lib/css/variables.css +36 -25
  73. package/lib/layout/flex-stack/flex-stack.js +2 -2
  74. package/lib/layout/flex-stack/flex-stack.js.map +1 -1
  75. package/lib/layout/flex-stack/flex-stack.module.css +65 -10
  76. package/lib/query-state.js +6 -3
  77. package/lib/query-state.js.map +1 -1
  78. package/lib/ui/button/button.js +3 -2
  79. package/lib/ui/button/button.js.map +1 -1
  80. package/lib/ui/button/button.module.css +38 -27
  81. package/lib/ui/control-group/control-group.js +1 -1
  82. package/lib/ui/control-group/control-group.js.map +1 -1
  83. package/lib/ui/copy-to-clipboard/copy-to-clipboard.module.css +2 -2
  84. package/lib/ui/dialog/dialog.js +3 -1
  85. package/lib/ui/dialog/dialog.js.map +1 -1
  86. package/lib/ui/dialog/dialog.module.css +5 -0
  87. package/lib/ui/dropdown/dropdown.js +11 -3
  88. package/lib/ui/dropdown/dropdown.js.map +1 -1
  89. package/lib/ui/dropdown/dropdown.module.css +49 -7
  90. package/lib/ui/filters/filters.js +28 -16
  91. package/lib/ui/filters/filters.js.map +1 -1
  92. package/lib/ui/filters/filters.module.css +3 -19
  93. package/lib/ui/hover-card/hover-card.js +7 -1
  94. package/lib/ui/hover-card/hover-card.js.map +1 -1
  95. package/lib/ui/hover-card/hover-card.module.css +5 -6
  96. package/lib/ui/input/input.module.css +2 -2
  97. package/lib/ui/table/table.module.css +12 -5
  98. package/lib/ui/tabs/tabs.module.css +13 -9
  99. package/lib/ui/tag/tag.module.css +0 -2
  100. package/lib/ui/textarea/textarea.module.css +2 -2
  101. package/lib/ui/toolbar/toolbar.js +2 -1
  102. package/lib/ui/toolbar/toolbar.js.map +1 -1
  103. package/lib/ui/toolbar/toolbar.module.css +0 -6
  104. package/lib/ui/tooltip/tooltip.js +6 -1
  105. package/lib/ui/tooltip/tooltip.js.map +1 -1
  106. package/lib/ui/tooltip/tooltip.module.css +1 -1
  107. package/lib/utils/index.js +1 -0
  108. package/lib/utils/index.js.map +1 -1
  109. package/lib/utils/portal.js +10 -0
  110. package/lib/utils/portal.js.map +1 -0
  111. package/lib-esm/app/app.js +2 -1
  112. package/lib-esm/app/app.js.map +1 -1
  113. package/lib-esm/app/app.module.css +8 -9
  114. package/lib-esm/app/header/header.module.css +1 -3
  115. package/lib-esm/components/asset-name/asset-name.js +8 -7
  116. package/lib-esm/components/asset-name/asset-name.js.map +1 -1
  117. package/lib-esm/components/asset-name/asset-name.module.css +11 -10
  118. package/lib-esm/components/bundle-assets/bundle-assets.js +4 -2
  119. package/lib-esm/components/bundle-assets/bundle-assets.js.map +1 -1
  120. package/lib-esm/components/bundle-assets/bundle-assets.module.css +0 -12
  121. package/lib-esm/components/bundle-assets/index.js +2 -1
  122. package/lib-esm/components/bundle-assets/index.js.map +1 -1
  123. package/lib-esm/components/bundle-assets-totals/bundle-assets-totals.js +4 -2
  124. package/lib-esm/components/bundle-assets-totals/bundle-assets-totals.js.map +1 -1
  125. package/lib-esm/components/bundle-modules/bundle-modules.js +5 -3
  126. package/lib-esm/components/bundle-modules/bundle-modules.js.map +1 -1
  127. package/lib-esm/components/bundle-modules/bundle-modules.module.css +2 -16
  128. package/lib-esm/components/bundle-modules/index.js +2 -1
  129. package/lib-esm/components/bundle-modules/index.js.map +1 -1
  130. package/lib-esm/components/bundle-packages/bundle-packages.js +5 -3
  131. package/lib-esm/components/bundle-packages/bundle-packages.js.map +1 -1
  132. package/lib-esm/components/bundle-packages/bundle-packages.module.css +18 -22
  133. package/lib-esm/components/entry-info/entry-info.js +4 -2
  134. package/lib-esm/components/entry-info/entry-info.js.map +1 -1
  135. package/lib-esm/components/entry-info/entry-info.module.css +7 -2
  136. package/lib-esm/components/jobs-header/jobs-header.js +1 -1
  137. package/lib-esm/components/jobs-header/jobs-header.js.map +1 -1
  138. package/lib-esm/components/jobs-header/jobs-header.module.css +0 -1
  139. package/lib-esm/components/metric-change-legend/metric-change-legend.js +2 -2
  140. package/lib-esm/components/metric-change-legend/metric-change-legend.js.map +1 -1
  141. package/lib-esm/components/metric-change-legend/metric-change-legend.module.css +11 -0
  142. package/lib-esm/components/metric-run-info/metric-run-info.js +5 -12
  143. package/lib-esm/components/metric-run-info/metric-run-info.js.map +1 -1
  144. package/lib-esm/components/metrics-display-selector/metrics-display-selector.module.css +0 -2
  145. package/lib-esm/components/metrics-table/metrics-table.js +32 -20
  146. package/lib-esm/components/metrics-table/metrics-table.js.map +1 -1
  147. package/lib-esm/components/metrics-table/metrics-table.module.css +4 -12
  148. package/lib-esm/components/metrics-table-options/metrics-table-options.js +6 -7
  149. package/lib-esm/components/metrics-table-options/metrics-table-options.js.map +1 -1
  150. package/lib-esm/components/metrics-table-row-count/index.js +2 -0
  151. package/lib-esm/components/metrics-table-row-count/index.js.map +1 -0
  152. package/lib-esm/components/metrics-table-row-count/metrics-table-row-count.js +10 -0
  153. package/lib-esm/components/metrics-table-row-count/metrics-table-row-count.js.map +1 -0
  154. package/lib-esm/components/metrics-table-row-count/metrics-table-row-count.module.css +5 -0
  155. package/lib-esm/components/metrics-treemap/metrics-treemap.constants.js +2 -0
  156. package/lib-esm/components/metrics-treemap/metrics-treemap.constants.js.map +1 -1
  157. package/lib-esm/components/metrics-treemap/metrics-treemap.js +52 -120
  158. package/lib-esm/components/metrics-treemap/metrics-treemap.js.map +1 -1
  159. package/lib-esm/components/metrics-treemap/metrics-treemap.module.css +3 -274
  160. package/lib-esm/components/metrics-treemap/metrics-treemap.utils.js +80 -18
  161. package/lib-esm/components/metrics-treemap/metrics-treemap.utils.js.map +1 -1
  162. package/lib-esm/components/metrics-treemap/tile/index.js +2 -0
  163. package/lib-esm/components/metrics-treemap/tile/index.js.map +1 -0
  164. package/lib-esm/components/metrics-treemap/tile/tile.js +40 -0
  165. package/lib-esm/components/metrics-treemap/tile/tile.js.map +1 -0
  166. package/lib-esm/components/metrics-treemap/tile/tile.module.css +145 -0
  167. package/lib-esm/components/metrics-treemap/tile-group/index.js +2 -0
  168. package/lib-esm/components/metrics-treemap/tile-group/index.js.map +1 -0
  169. package/lib-esm/components/metrics-treemap/tile-group/tile-group.js +35 -0
  170. package/lib-esm/components/metrics-treemap/tile-group/tile-group.js.map +1 -0
  171. package/lib-esm/components/metrics-treemap/tile-group/tile-group.module.css +57 -0
  172. package/lib-esm/components/metrics-treemap/tile-group-title/index.js +2 -0
  173. package/lib-esm/components/metrics-treemap/tile-group-title/index.js.map +1 -0
  174. package/lib-esm/components/metrics-treemap/tile-group-title/tile-group-title.js +17 -0
  175. package/lib-esm/components/metrics-treemap/tile-group-title/tile-group-title.js.map +1 -0
  176. package/lib-esm/components/metrics-treemap/tile-group-title/tile-group-title.module.css +48 -0
  177. package/lib-esm/components/sort-button/sort-button.module.css +0 -2
  178. package/lib-esm/components/summary/summary.js +5 -4
  179. package/lib-esm/components/summary/summary.js.map +1 -1
  180. package/lib-esm/components/summary/summary.module.css +10 -14
  181. package/lib-esm/css/default.css +7 -4
  182. package/lib-esm/css/variables.css +36 -25
  183. package/lib-esm/layout/flex-stack/flex-stack.js +3 -2
  184. package/lib-esm/layout/flex-stack/flex-stack.js.map +1 -1
  185. package/lib-esm/layout/flex-stack/flex-stack.module.css +65 -10
  186. package/lib-esm/query-state.js +7 -4
  187. package/lib-esm/query-state.js.map +1 -1
  188. package/lib-esm/ui/button/button.js +3 -2
  189. package/lib-esm/ui/button/button.js.map +1 -1
  190. package/lib-esm/ui/button/button.module.css +38 -27
  191. package/lib-esm/ui/control-group/control-group.js +1 -1
  192. package/lib-esm/ui/control-group/control-group.js.map +1 -1
  193. package/lib-esm/ui/copy-to-clipboard/copy-to-clipboard.module.css +2 -2
  194. package/lib-esm/ui/dialog/dialog.js +3 -1
  195. package/lib-esm/ui/dialog/dialog.js.map +1 -1
  196. package/lib-esm/ui/dialog/dialog.module.css +5 -0
  197. package/lib-esm/ui/dropdown/dropdown.js +9 -2
  198. package/lib-esm/ui/dropdown/dropdown.js.map +1 -1
  199. package/lib-esm/ui/dropdown/dropdown.module.css +49 -7
  200. package/lib-esm/ui/filters/filters.js +29 -17
  201. package/lib-esm/ui/filters/filters.js.map +1 -1
  202. package/lib-esm/ui/filters/filters.module.css +3 -19
  203. package/lib-esm/ui/hover-card/hover-card.js +7 -1
  204. package/lib-esm/ui/hover-card/hover-card.js.map +1 -1
  205. package/lib-esm/ui/hover-card/hover-card.module.css +5 -6
  206. package/lib-esm/ui/input/input.module.css +2 -2
  207. package/lib-esm/ui/table/table.module.css +12 -5
  208. package/lib-esm/ui/tabs/tabs.module.css +13 -9
  209. package/lib-esm/ui/tag/tag.module.css +0 -2
  210. package/lib-esm/ui/textarea/textarea.module.css +2 -2
  211. package/lib-esm/ui/toolbar/toolbar.js +2 -1
  212. package/lib-esm/ui/toolbar/toolbar.js.map +1 -1
  213. package/lib-esm/ui/toolbar/toolbar.module.css +0 -6
  214. package/lib-esm/ui/tooltip/tooltip.js +6 -1
  215. package/lib-esm/ui/tooltip/tooltip.js.map +1 -1
  216. package/lib-esm/ui/tooltip/tooltip.module.css +1 -1
  217. package/lib-esm/utils/index.js +1 -0
  218. package/lib-esm/utils/index.js.map +1 -1
  219. package/lib-esm/utils/portal.js +6 -0
  220. package/lib-esm/utils/portal.js.map +1 -0
  221. package/package.json +17 -17
  222. package/src/app/app.jsx +3 -2
  223. package/src/app/app.module.css +8 -9
  224. package/src/app/header/header.module.css +1 -3
  225. package/src/components/asset-name/asset-name.module.css +11 -10
  226. package/src/components/asset-name/asset-name.tsx +17 -14
  227. package/src/components/bundle-assets/bundle-assets.module.css +0 -12
  228. package/src/components/bundle-assets/bundle-assets.tsx +8 -1
  229. package/src/components/bundle-assets/index.tsx +3 -1
  230. package/src/components/bundle-assets-totals/bundle-assets-totals.jsx +6 -4
  231. package/src/components/bundle-modules/bundle-modules.module.css +2 -16
  232. package/src/components/bundle-modules/bundle-modules.tsx +10 -3
  233. package/src/components/bundle-modules/index.tsx +3 -1
  234. package/src/components/bundle-packages/bundle-packages.jsx +14 -3
  235. package/src/components/bundle-packages/bundle-packages.module.css +18 -22
  236. package/src/components/entry-info/entry-info.module.css +7 -2
  237. package/src/components/entry-info/entry-info.tsx +9 -3
  238. package/src/components/jobs-header/jobs-header.module.css +0 -1
  239. package/src/components/jobs-header/jobs-header.tsx +2 -2
  240. package/src/components/metric-change-legend/metric-change-legend.module.css +11 -0
  241. package/src/components/metric-change-legend/metric-change-legend.tsx +2 -2
  242. package/src/components/metric-run-info/metric-run-info.stories.tsx +9 -0
  243. package/src/components/metric-run-info/metric-run-info.tsx +10 -12
  244. package/src/components/metrics-display-selector/metrics-display-selector.module.css +0 -2
  245. package/src/components/metrics-table/metrics-table.module.css +4 -12
  246. package/src/components/metrics-table/metrics-table.tsx +70 -39
  247. package/src/components/metrics-table-options/metrics-table-options.tsx +14 -15
  248. package/src/components/metrics-table-row-count/index.ts +1 -0
  249. package/src/components/metrics-table-row-count/metrics-table-row-count.module.css +5 -0
  250. package/src/components/metrics-table-row-count/metrics-table-row-count.tsx +21 -0
  251. package/src/components/metrics-treemap/metrics-treemap.constants.ts +9 -0
  252. package/src/components/metrics-treemap/metrics-treemap.module.css +3 -274
  253. package/src/components/metrics-treemap/metrics-treemap.stories.utils.ts +46 -0
  254. package/src/components/metrics-treemap/metrics-treemap.tsx +123 -428
  255. package/src/components/metrics-treemap/metrics-treemap.utils.ts +161 -27
  256. package/src/components/metrics-treemap/tile/index.ts +1 -0
  257. package/src/components/metrics-treemap/tile/tile.module.css +145 -0
  258. package/src/components/metrics-treemap/tile/tile.stories.tsx +139 -0
  259. package/src/components/metrics-treemap/tile/tile.tsx +121 -0
  260. package/src/components/metrics-treemap/tile-group/index.ts +1 -0
  261. package/src/components/metrics-treemap/tile-group/tile-group.module.css +57 -0
  262. package/src/components/metrics-treemap/tile-group/tile-group.stories.tsx +163 -0
  263. package/src/components/metrics-treemap/tile-group/tile-group.tsx +177 -0
  264. package/src/components/metrics-treemap/tile-group-title/index.ts +1 -0
  265. package/src/components/metrics-treemap/tile-group-title/tile-group-title.module.css +48 -0
  266. package/src/components/metrics-treemap/tile-group-title/tile-group-title.stories.tsx +88 -0
  267. package/src/components/metrics-treemap/tile-group-title/tile-group-title.tsx +51 -0
  268. package/src/components/sort-button/sort-button.module.css +0 -2
  269. package/src/components/summary/summary.module.css +10 -14
  270. package/src/components/summary/summary.tsx +9 -8
  271. package/src/css/default.css +7 -4
  272. package/src/css/variables.css +36 -25
  273. package/src/layout/flex-stack/flex-stack.module.css +65 -10
  274. package/src/layout/flex-stack/flex-stack.stories.tsx +68 -9
  275. package/src/layout/flex-stack/flex-stack.tsx +24 -4
  276. package/src/query-state.tsx +9 -4
  277. package/src/ui/button/button.module.css +38 -27
  278. package/src/ui/button/button.stories.tsx +1 -1
  279. package/src/ui/button/button.tsx +3 -1
  280. package/src/ui/control-group/control-group.tsx +1 -1
  281. package/src/ui/copy-to-clipboard/copy-to-clipboard.module.css +2 -2
  282. package/src/ui/dialog/dialog.module.css +5 -0
  283. package/src/ui/dialog/dialog.stories.tsx +8 -0
  284. package/src/ui/dialog/dialog.tsx +7 -0
  285. package/src/ui/dropdown/dropdown.module.css +49 -7
  286. package/src/ui/dropdown/dropdown.stories.tsx +6 -0
  287. package/src/ui/dropdown/dropdown.tsx +13 -2
  288. package/src/ui/filters/filters.module.css +3 -19
  289. package/src/ui/filters/filters.tsx +131 -67
  290. package/src/ui/hover-card/hover-card.module.css +5 -6
  291. package/src/ui/hover-card/hover-card.tsx +7 -1
  292. package/src/ui/input/input.module.css +2 -2
  293. package/src/ui/table/table.module.css +12 -5
  294. package/src/ui/tabs/tabs.module.css +13 -9
  295. package/src/ui/tag/tag.module.css +0 -2
  296. package/src/ui/textarea/textarea.module.css +2 -2
  297. package/src/ui/toolbar/toolbar.jsx +4 -1
  298. package/src/ui/toolbar/toolbar.module.css +0 -6
  299. package/src/ui/tooltip/tooltip.module.css +1 -1
  300. package/src/ui/tooltip/tooltip.tsx +6 -1
  301. package/src/utils/index.ts +1 -0
  302. package/src/utils/portal.ts +9 -0
  303. package/types/components/metric-run-info/metric-run-info.d.ts +1 -0
  304. package/types/components/metrics-table/metrics-table.d.ts +2 -1
  305. package/types/components/metrics-table-row-count/index.d.ts +1 -0
  306. package/types/components/metrics-table-row-count/metrics-table-row-count.d.ts +7 -0
  307. package/types/components/metrics-treemap/metrics-treemap.constants.d.ts +2 -0
  308. package/types/components/metrics-treemap/metrics-treemap.utils.d.ts +16 -5
  309. package/types/components/metrics-treemap/tile/index.d.ts +1 -0
  310. package/types/components/metrics-treemap/tile/tile.d.ts +11 -0
  311. package/types/components/metrics-treemap/tile-group/index.d.ts +1 -0
  312. package/types/components/metrics-treemap/tile-group/tile-group.d.ts +20 -0
  313. package/types/components/metrics-treemap/tile-group-title/index.d.ts +1 -0
  314. package/types/components/metrics-treemap/tile-group-title/tile-group-title.d.ts +12 -0
  315. package/types/layout/flex-stack/flex-stack.d.ts +6 -2
  316. package/types/ui/button/button.d.ts +1 -0
  317. package/types/ui/dropdown/dropdown.d.ts +3 -1
  318. package/types/ui/filters/filters.d.ts +2 -1
  319. package/types/utils/index.d.ts +1 -0
  320. package/types/utils/portal.d.ts +1 -0
  321. package/vitest.config.ts +4 -0
  322. package/lib/components/metrics-table-options/metrics-table-options.module.css +0 -15
  323. package/lib-esm/components/metrics-table-options/metrics-table-options.module.css +0 -15
  324. package/src/components/metrics-table-options/metrics-table-options.module.css +0 -15
@@ -1,17 +1,16 @@
1
- import React, { forwardRef, useCallback, useMemo, useRef, } from 'react';
2
- import { useHoverDirty, useMeasure } from 'react-use';
1
+ import React, { useCallback, useEffect, useMemo, useRef, } from 'react';
2
+ import { useMeasure } from 'react-use';
3
3
  import cx from 'classnames';
4
4
  import { hierarchy, treemap, treemapSquarify } from 'd3';
5
- import { Tooltip, TooltipArrow, TooltipAnchor } from 'ariakit/tooltip';
6
- import { METRIC_TYPE_CONFIGS, formatFileSize, getMetricRunInfo, } from '@bundle-stats/utils';
5
+ import { Tooltip, TooltipArrow } from 'ariakit/tooltip';
6
+ import { FlexStack } from '../../layout/flex-stack';
7
7
  import { Stack } from '../../layout/stack';
8
8
  import { FileName } from '../../ui/file-name';
9
- import { Delta } from '../delta';
10
9
  import { RunInfo } from '../run-info';
11
- import { SQUARIFY_RATIO, PADDING_OUTER, PADDING_INNER, NESTED_PADDING, NESTED_PADDING_TOP, NESTED_PADDING_LEFT, } from './metrics-treemap.constants';
12
- import * as I18N from './metrics-treemap.i18n';
10
+ import { SQUARIFY_RATIO, PADDING_OUTER, PADDING_INNER, NESTED_PADDING, NESTED_PADDING_TOP, NESTED_PADDING_LEFT, NODE_ID_SELECTOR, } from './metrics-treemap.constants';
13
11
  import css from './metrics-treemap.module.css';
14
- import { resolveGroupDeltaType, resolveTileSizeDisplay, resolveTileGroupSizeDisplay, useTooltipStateWithMouseFollow, } from './metrics-treemap.utils';
12
+ import { getGroupRunInfo, getTreemapNodesIndex, useTreemapTooltipState, } from './metrics-treemap.utils';
13
+ import { TileGroup } from './tile-group';
15
14
  const TileTooltipContent = (props) => {
16
15
  const { item } = props;
17
16
  const currentRun = item.runs[0];
@@ -19,119 +18,23 @@ const TileTooltipContent = (props) => {
19
18
  return (React.createElement(Stack, { space: "small", className: css.tileTooltipContent },
20
19
  React.createElement("h3", { className: css.tileTooltipContentTitle },
21
20
  React.createElement(FileName, { as: "code", name: item.label })),
22
- React.createElement(RunInfo, { current: currentRun.displayValue, delta: currentRun.displayDeltaPercentage, deltaType: currentRun.deltaType, baseline: (baselineRun === null || baselineRun === void 0 ? void 0 : baselineRun.displayValue) || '0B' })));
21
+ React.createElement(RunInfo, { current: currentRun.displayValue, delta: currentRun.displayDelta, deltaPercentage: currentRun.displayDeltaPercentage, deltaType: currentRun.deltaType, baseline: (baselineRun === null || baselineRun === void 0 ? void 0 : baselineRun.displayValue) || '0B' })));
23
22
  };
24
- const TileContent = forwardRef((props, ref) => {
25
- const { label, sizeDisplay, item, runInfo } = props;
26
- if (sizeDisplay === 'minimal') {
27
- return React.createElement("div", { className: css.tileContent, ref: ref });
28
- }
29
- const resolvedLabel = label || item.label;
30
- if (sizeDisplay === 'small') {
31
- return (React.createElement("div", { className: css.tileContent, ref: ref },
32
- React.createElement("p", { className: css.tileContentLabel }, resolvedLabel)));
33
- }
34
- return (React.createElement("div", { className: css.tileContent, ref: ref },
35
- React.createElement("p", { className: css.tileContentLabel }, label || item.label),
36
- React.createElement("p", { className: css.tileContentValue },
37
- React.createElement("span", { className: css.tileContentMetric }, runInfo.displayValue),
38
- React.createElement(Delta, { className: css.tileContentDelta, displayValue: runInfo.displayDeltaPercentage, deltaType: runInfo.deltaType }))));
39
- });
40
- const TileContentWithTooltip = (props) => {
41
- const { label, sizeDisplay, item, runInfo, parentRef } = props;
42
- const tooltipState = useTooltipStateWithMouseFollow({ parentRef });
43
- return (React.createElement(React.Fragment, null,
44
- React.createElement(TooltipAnchor, { state: tooltipState, className: css.tileContentTooltipAnchor },
45
- React.createElement(TileContent, { label: label, sizeDisplay: sizeDisplay, item: item, runInfo: runInfo })),
46
- React.createElement(Tooltip, { state: tooltipState, className: css.tooltip },
47
- React.createElement(TooltipArrow, { state: tooltipState, size: 16, className: css.tileTooltipArrow }),
48
- React.createElement(TileTooltipContent, { item: item }))));
49
- };
50
- const Tile = (props) => {
51
- var _a;
52
- const { left, top, width, height, data, onClick } = props;
53
- const { item, label } = data;
54
- const runInfo = (_a = item.runs) === null || _a === void 0 ? void 0 : _a[0];
55
- const sizeDisplay = useMemo(() => resolveTileSizeDisplay(width, height), [width, height]);
56
- const handleOnClick = useCallback((event) => {
57
- event.stopPropagation();
58
- onClick === null || onClick === void 0 ? void 0 : onClick(item.key);
59
- }, [item.key, onClick]);
60
- const contentRef = useRef(null);
61
- const hover = useHoverDirty(contentRef);
62
- const className = cx(css.tile, css[`tile-${runInfo.deltaType}`], sizeDisplay === 'small' && css.tileSizeSmall, sizeDisplay === 'default' && css.tileSizeDefault, left === PADDING_INNER && css.tileFirstCol);
63
- return (React.createElement("div", { onClick: handleOnClick, role: "button", "aria-label": I18N.TILE_LABEL, ref: contentRef, style: { left, top, width, height }, className: className }, hover ? (React.createElement(TileContentWithTooltip, { label: label, sizeDisplay: sizeDisplay, item: item, runInfo: runInfo, parentRef: contentRef })) : (React.createElement(TileContent, { label: label, sizeDisplay: sizeDisplay, item: item, runInfo: runInfo }))));
64
- };
65
- const TileGroupTitleTooltipContent = (props) => {
66
- const { title, runInfo, baselineDisplayValue } = props;
67
- return (React.createElement(Stack, { space: "small", className: css.tileTooltip },
23
+ const TileGroupTooltipContent = (props) => {
24
+ const { node } = props;
25
+ const title = node.id || node.label;
26
+ const groupRunInfo = node.total && getGroupRunInfo(node.total);
27
+ return (React.createElement(Stack, { space: "small", className: css.tileTooltipContent },
68
28
  React.createElement("h3", { className: css.tileTooltipContentTitle },
69
29
  React.createElement(FileName, { as: "code", name: title })),
70
- runInfo && (React.createElement(RunInfo, { current: runInfo.displayValue, baseline: baselineDisplayValue, delta: runInfo.displayDeltaPercentage, deltaType: runInfo.deltaType }))));
71
- };
72
- const TileGroupTitleContent = (props) => {
73
- const { title, runInfo } = props;
74
- return (React.createElement("div", { className: css.tileGroupTitleContent },
75
- title && React.createElement("span", { className: css.tileGroupTitleText }, title),
76
- runInfo && (React.createElement("span", { className: css.tileGroupTitleTotal },
77
- runInfo.displayValue,
78
- 'displayDelta' in runInfo && `(${runInfo.displayDeltaPercentage})`))));
30
+ groupRunInfo && (React.createElement(RunInfo, { current: groupRunInfo.runInfo.displayValue, baseline: groupRunInfo.baselineDisplayValue, delta: groupRunInfo.runInfo.displayDeltaPercentage, deltaType: groupRunInfo.runInfo.deltaType }))));
79
31
  };
80
- const TileGroupTitleContentWithTooltip = (props) => {
81
- const { parentRef, tooltipContent, ...restProps } = props;
82
- const tooltipState = useTooltipStateWithMouseFollow({ parentRef });
83
- return (React.createElement(React.Fragment, null,
84
- React.createElement(TooltipAnchor, { state: tooltipState, className: css.tileContentTooltipAnchor },
85
- React.createElement(TileGroupTitleContent, { ...restProps })),
86
- React.createElement(Tooltip, { state: tooltipState, className: css.tooltip },
87
- React.createElement(TooltipArrow, { state: tooltipState, size: 16, className: css.tileTooltipArrow }),
88
- React.createElement(TileGroupTitleTooltipContent, { ...tooltipContent }))));
89
- };
90
- const TileGroupTitle = (props) => {
91
- const { tooltipContent, ...restProps } = props;
92
- const contentRef = useRef(null);
93
- const hover = useHoverDirty(contentRef);
94
- return (React.createElement("div", { className: css.tileGroupTitle, ref: contentRef }, hover ? (React.createElement(TileGroupTitleContentWithTooltip, { parentRef: contentRef, tooltipContent: tooltipContent, ...restProps })) : (React.createElement(TileGroupTitleContent, { ...restProps }))));
95
- };
96
- const TileGroup = (props) => {
97
- const { title = '', total, id, childNodes, onItemClick, onGroupClick, left, top, width, height, absoluteLeft, absoluteTop, } = props;
98
- const onClick = useCallback((event) => {
99
- onGroupClick === null || onGroupClick === void 0 ? void 0 : onGroupClick(id);
100
- event.stopPropagation();
101
- }, [onGroupClick, id]);
102
- const displaySize = useMemo(() => resolveTileGroupSizeDisplay(width || 0, height || 0), [width, height]);
103
- const [runInfo, baselineDisplayValue, deltaType] = useMemo(() => {
104
- if (!total) {
105
- return [];
106
- }
107
- const resolvedRunInfo = getMetricRunInfo(METRIC_TYPE_CONFIGS.METRIC_TYPE_FILE_SIZE, total.current, total.baseline);
108
- const resolvedBaselineDisplayValue = formatFileSize(total.baseline);
109
- const resolvedDeltaType = resolveGroupDeltaType(resolvedRunInfo);
110
- return [resolvedRunInfo, resolvedBaselineDisplayValue, resolvedDeltaType];
111
- }, [total]);
112
- const rootClassName = cx(css.tileGroup, css[`tileGroup--${deltaType}`], css[`tileGroup--${displaySize}`]);
113
- const tooltipContent = {
114
- title: id || title,
115
- runInfo,
116
- baselineDisplayValue,
117
- };
118
- if (title && displaySize === 'minimal') {
119
- return (React.createElement("div", { onClick: onClick, role: "button", "aria-label": I18N.TILE_GROUP_LABEL, className: rootClassName, style: { left, top, width, height } },
120
- React.createElement(TileGroupTitle, { tooltipContent: tooltipContent })));
32
+ const TreemapTooltipContent = (props) => {
33
+ const { node } = props;
34
+ if ('item' in node) {
35
+ return React.createElement(TileTooltipContent, { item: node.item });
121
36
  }
122
- if (title && displaySize === 'small') {
123
- return (React.createElement("div", { onClick: onClick, role: "button", "aria-label": I18N.TILE_GROUP_LABEL, style: { left, top, width, height }, className: rootClassName },
124
- React.createElement(TileGroupTitle, { title: title, tooltipContent: tooltipContent })));
125
- }
126
- return (React.createElement("div", { onClick: onClick, role: "button", "aria-label": I18N.TILE_GROUP_LABEL, className: cx(rootClassName, css.tileGroupSizeDefault), style: { left, top, width, height } },
127
- React.createElement(TileGroupTitle, { title: title, runInfo: runInfo, tooltipContent: tooltipContent }), childNodes === null || childNodes === void 0 ? void 0 :
128
- childNodes.map((childNode) => {
129
- if ('children' in childNode) {
130
- const groupData = childNode.data;
131
- return (React.createElement(TileGroup, { title: groupData.label, total: groupData.total, id: groupData.id, childNodes: childNode.children, 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 }));
132
- }
133
- 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 }));
134
- })));
37
+ return React.createElement(TileGroupTooltipContent, { node: node });
135
38
  };
136
39
  function useMetricsTreemapHierarchy(params) {
137
40
  const { treeNodes, width, height, nested } = params;
@@ -160,12 +63,41 @@ function useMetricsTreemapHierarchy(params) {
160
63
  return treemapNodes;
161
64
  }
162
65
  export const MetricsTreemap = (props) => {
163
- var _a;
164
66
  const { className = '', treeNodes, onItemClick, onGroupClick, emptyMessage = 'No data', nested = false, ...restProps } = props;
165
67
  const [containerRef, { width, height }] = useMeasure();
166
68
  const rootNode = useMetricsTreemapHierarchy({ treeNodes, width, height, nested });
167
- return (React.createElement("div", { className: cx(css.root, nested && css.nested, className), ...restProps, ref: containerRef }, rootNode.children && ((_a = rootNode.children) === null || _a === void 0 ? void 0 : _a.length) > 0 ? (React.createElement("div", { className: css.canvas },
168
- React.createElement(TileGroup, { title: nested ? rootNode.data.label : undefined, total: rootNode.data.total, id: rootNode.data.id, childNodes: rootNode.children, onItemClick: onItemClick, onGroupClick: onGroupClick, left: rootNode.x0, top: rootNode.y0, absoluteLeft: rootNode.x0, absoluteTop: rootNode.y0, width: rootNode.x1 - rootNode.x0, height: rootNode.y1 - rootNode.y0 }))) : (React.createElement("div", { className: css.emptyMessage },
169
- React.createElement("div", { className: css.emptyMessageWrapper }, emptyMessage)))));
69
+ const nodesIndex = useMemo(() => getTreemapNodesIndex(treeNodes), [treeNodes]);
70
+ const { tooltipState, setPointer, hoveredNodeId, setHoveredNode, clearHoveredNode } = useTreemapTooltipState();
71
+ const canvasRef = useRef(null);
72
+ const tooltipNode = hoveredNodeId === null ? null : nodesIndex.get(hoveredNodeId);
73
+ const handlePointerEvent = useCallback((event) => {
74
+ var _a, _b;
75
+ tooltipState.anchorRef.current = canvasRef.current;
76
+ setPointer(event.clientX, event.clientY);
77
+ const target = (_a = event.target) === null || _a === void 0 ? void 0 : _a.closest(NODE_ID_SELECTOR);
78
+ setHoveredNode((_b = target === null || target === void 0 ? void 0 : target.dataset.treemapId) !== null && _b !== void 0 ? _b : null);
79
+ }, [tooltipState, setPointer, setHoveredNode]);
80
+ const hasNodes = Boolean(rootNode.children && rootNode.children.length > 0);
81
+ useEffect(() => {
82
+ const canvas = canvasRef.current;
83
+ if (!canvas) {
84
+ return undefined;
85
+ }
86
+ canvas.addEventListener('mousemove', handlePointerEvent);
87
+ canvas.addEventListener('mouseover', handlePointerEvent);
88
+ canvas.addEventListener('mouseleave', clearHoveredNode);
89
+ return () => {
90
+ canvas.removeEventListener('mousemove', handlePointerEvent);
91
+ canvas.removeEventListener('mouseover', handlePointerEvent);
92
+ canvas.removeEventListener('mouseleave', clearHoveredNode);
93
+ };
94
+ }, [hasNodes, handlePointerEvent, clearHoveredNode]);
95
+ const canvasContent = useMemo(() => (React.createElement(TileGroup, { title: nested ? rootNode.data.label : undefined, total: rootNode.data.total, id: rootNode.data.id, childNodes: rootNode.children, nested: nested, onItemClick: onItemClick, onGroupClick: onGroupClick, left: rootNode.x0, top: rootNode.y0, absoluteLeft: rootNode.x0, absoluteTop: rootNode.y0, width: rootNode.x1 - rootNode.x0, height: rootNode.y1 - rootNode.y0 })), [rootNode, width, height, nested, onItemClick, onGroupClick]);
96
+ return (React.createElement("div", { className: cx(css.root, className), ...restProps, ref: containerRef },
97
+ hasNodes ? (React.createElement("div", { className: css.canvas, ref: canvasRef }, canvasContent)) : (React.createElement(FlexStack, { alignItems: "center", justifyContent: "center", className: css.emptyMessage },
98
+ React.createElement("div", { className: css.emptyMessageWrapper }, emptyMessage))),
99
+ tooltipNode && (React.createElement(Tooltip, { state: tooltipState, className: css.tooltip },
100
+ React.createElement(TooltipArrow, { state: tooltipState, size: 16, className: css.tileTooltipArrow }),
101
+ React.createElement(TreemapTooltipContent, { node: tooltipNode })))));
170
102
  };
171
103
  //# sourceMappingURL=metrics-treemap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"metrics-treemap.js","sourceRoot":"","sources":["../../../src/components/metrics-treemap/metrics-treemap.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metrics-treemap.js","sourceRoot":"","sources":["../../../src/components/metrics-treemap/metrics-treemap.tsx"],"names":[],"mappings":"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"}
@@ -16,270 +16,6 @@
16
16
  background: var(--color-background);
17
17
  }
18
18
 
19
- /**
20
- * Tile group
21
- */
22
- .tileGroup {
23
- position: absolute;
24
- }
25
-
26
- .tileGroupTitle {
27
- width: 100%;
28
- cursor: default;
29
- }
30
-
31
- .tileGroupTitleContent {
32
- width: 100%;
33
- padding: var(--space-xxxsmall) 2px var(--space-xxxsmall) var(--space-xxsmall);
34
- display: flex;
35
- align-items: center;
36
- color: var(--color-text);
37
- font-family: var(--font-family-fixed);
38
- font-size: 10px;
39
- line-height: var(--space-small);
40
- overflow: hidden;
41
- white-space: nowrap;
42
- text-overflow: ellipsis;
43
- }
44
-
45
- .tileGroupTitleText,
46
- .tileGroupTitleTotal {
47
- flex: 0 0 auto;
48
- min-width: 0;
49
- }
50
-
51
- .tileGroupTitleTotal {
52
- margin-left: var(--space-xxsmall);
53
- color: var(--color-text-light);
54
- }
55
-
56
- .tileGroupTitle {
57
- transition: var(--transition-out);
58
- }
59
-
60
- .tileGroupTitle:hover .tileGroupTitleText {
61
- text-decoration: underline;
62
- transition: var(--transition-in);
63
- }
64
-
65
- /** Tile group size variation */
66
- .tileGroup {
67
- transition: var(--transition-out);
68
- transition-property: background-color, outline;
69
- border-radius: var(--radius-xsmall);
70
- }
71
-
72
- .tileGroup--minimal,
73
- .tileGroup--small {
74
- border-radius: calc(var(--radius-xsmall) / 2);
75
- }
76
-
77
- .tileGroup--minimal .tileGroupTitle,
78
- .tileGroup--small .tileGroupTitle {
79
- height: 100%; /* full height when title is missing or we do not render any children */
80
- }
81
-
82
- .tileGroup--minimal .tileGroupTitleContent,
83
- .tileGroup--small .tileGroupTitleContent {
84
- min-height: 100%;
85
- }
86
-
87
- /** Tile group nested variation */
88
- .nested .tileGroup {
89
- background-color: rgba(27, 26, 33, 0.03);
90
- outline: 1px solid rgba(255, 255, 255, 0.8);
91
- }
92
-
93
- .nested .tileGroup:has(> .tileGroupTitle:hover),
94
- .nested .tileGroup:has(> .tile:hover) {
95
- background-color: rgba(27, 26, 33, 0.06);
96
- outline: 1px solid rgba(255, 255, 255, 1);
97
- transition: var(--transition-in);
98
- transition-property: background-color, outline;
99
- }
100
-
101
- .nested .tileGroup--NEGATIVE {
102
- background-color: rgba(194, 31, 37, 0.04);
103
- }
104
-
105
- .nested .tileGroup--NEGATIVE:has(> .tileGroupTitle:hover),
106
- .nested .tileGroup--NEGATIVE:has(> .tile:hover) {
107
- background-color: rgba(194, 31, 37, 0.1);
108
- }
109
-
110
- .nested .tileGroup--POSITIVE {
111
- background-color: rgba(42, 147, 39, 0.04);
112
- }
113
-
114
- .nested .tileGroup--POSITIVE:has(> .tileGroupTitle:hover),
115
- .nested .tileGroup--POSITIVE:has(> .tile:hover) {
116
- background-color: rgba(42, 147, 39, 0.1);
117
- }
118
-
119
- /* reset bacground color when having a not changed group */
120
- .nested .tileGroup--POSITIVE > .tileGroup--NO_CHANGE,
121
- .nested .tileGroup--NEGATIVE > .tileGroup--NO_CHANGE {
122
- background-color: var(--color-background);
123
- background-image: linear-gradient(rgba(27, 26, 33, 0.1), rgba(27, 26, 33, 0.1));
124
- }
125
-
126
- .nested .tileGroup--POSITIVE > .tileGroup--NO_CHANGE:has(> .tileGroupTitle:hover),
127
- .nested .tileGroup--POSITIVE > .tileGroup--NO_CHANGE:has(> .tile:hover),
128
- .nested .tileGroup--NEGATIVE > .tileGroup--NO_CHANGE:has(> .tileGroupTitle:hover),
129
- .nested .tileGroup--NEGATIVE > .tileGroup--NEGATIVE > .tileGroup--NO_CHANGE:has(> .tile:hover) {
130
- background-color: var(--color-background);
131
- background-image: linear-gradient(rgba(27, 26, 33, 0.1), rgba(27, 26, 33, 0.1));
132
- }
133
-
134
- /** Leaf wrapper button */
135
- .tile {
136
- position: absolute;
137
- appearance: none;
138
- border: 0;
139
- border-radius: 0;
140
- padding: 0;
141
- border-radius: calc(var(--radius-xsmall) / 2);
142
- background: var(--color-background);
143
- display: flex;
144
- align-items: center;
145
- font-family: var(--font-family-fixed);
146
- font-size: var(--size-small);
147
- line-height: var(--line-height-heading);
148
- text-align: left;
149
- transition: var(--transition-out);
150
- transition-property: opacity, background-color;
151
- }
152
-
153
- .tile::before {
154
- content: '';
155
- display: block;
156
- position: absolute;
157
- z-index: 1;
158
- left: 0;
159
- top: 0;
160
- width: 100%;
161
- height: 100%;
162
- background-color: currentColor;
163
- }
164
-
165
- .tileContent {
166
- position: relative;
167
- z-index: 1;
168
- width: 100%;
169
- height: 100%;
170
- display: flex;
171
- flex-flow: column;
172
- justify-content: center;
173
- padding: var(--space-xxsmall) var(--space-xxsmall);
174
- gap: var(--space-xxxsmall);
175
- line-height: var(--line-height-heading);
176
- }
177
-
178
- /** Align label to other elements on the first column cells */
179
- .tileFirstCol .tileContent {
180
- padding-left: var(--space-small);
181
- }
182
-
183
- .tileContentLabel {
184
- flex: 0 1 auto;
185
- width: 100%;
186
- min-width: 0;
187
- line-height: var(--line-height-heading);
188
- max-height: calc(2em * var(--line-height-heading)); /* render max 2 rows */
189
- overflow-wrap: break-word;
190
- word-wrap: break-word;
191
- word-break: break-all;
192
- word-break: break-word;
193
- hyphens: auto;
194
- white-space: normal;
195
- overflow: hidden;
196
- }
197
-
198
- .tileContentValue {
199
- flex: 0 0 auto;
200
- max-width: calc(100% + var(--space-xxsmall));
201
- white-space: nowrap;
202
- overflow: hidden;
203
- }
204
-
205
- .tileContentMetric {
206
- font-weight: bold;
207
- }
208
-
209
- .tileContentDelta {
210
- margin-left: var(--space-xxxsmall);
211
- }
212
-
213
- /** Tile size variation */
214
- .tileSizeSmall .tileContent {
215
- padding: var(--space-xxxsmall);
216
- font-size: 10px;
217
- }
218
-
219
- .tileSizeSmall .tileContentLabel {
220
- margin-top: 0;
221
- }
222
-
223
- /** Tile diff variation */
224
- .tile {
225
- outline: 1px solid rgba(255, 255, 255, 1);
226
- color: var(--color-text);
227
- }
228
-
229
- .tile::before {
230
- color: var(--color-highlight);
231
- transition: var(--transition-out);
232
- transition-property: opacity;
233
- opacity: 0.6;
234
- }
235
-
236
- .tile:hover::before {
237
- transition: var(--transition-in);
238
- transition-property: opacity;
239
- opacity: 0.4;
240
- }
241
-
242
- .tile:hover .tileContentLabel {
243
- text-decoration: underline;
244
- }
245
-
246
- .tile-NO_CHANGE {
247
- color: var(--color-text-light);
248
- }
249
-
250
- .tile-NO_CHANGE::before {
251
- color: var(--color-gray-50);
252
- opacity: 0.4;
253
- }
254
-
255
- .tile-NO_CHANGE:hover::before {
256
- opacity: 0.2;
257
- }
258
-
259
- .tile-HIGH_NEGATIVE::before {
260
- color: var(--color-red-100);
261
- }
262
-
263
- .tile-NEGATIVE::before {
264
- color: var(--color-red-50);
265
- }
266
-
267
- .tile-LOW_NEGATIVE::before {
268
- color: var(--color-red-50);
269
- }
270
-
271
- .tile-LOW_POSITIVE::before {
272
- color: var(--color-green-50);
273
- }
274
-
275
- .tile-POSITIVE::before {
276
- color: var(--color-green-50);
277
- }
278
-
279
- .tile-HIGH_POSITIVE::before {
280
- color: var(--color-green-100);
281
- }
282
-
283
19
  /** empty message */
284
20
  .emptyMessage {
285
21
  position: absolute;
@@ -287,9 +23,6 @@
287
23
  top: 0;
288
24
  width: 100%;
289
25
  height: 100%;
290
- display: flex;
291
- align-items: center;
292
- justify-content: center;
293
26
  }
294
27
 
295
28
  .emptyMessageWrapper {
@@ -298,13 +31,8 @@
298
31
  }
299
32
 
300
33
  /** tooltip */
301
- .tileContentTooltipAnchor {
302
- width: 100%;
303
- height: 100%;
304
- }
305
-
306
34
  .tooltip {
307
- z-index: var(--layer-high);
35
+ z-index: var(--layer-overlay);
308
36
  padding: var(--space-xsmall) var(--space-small);
309
37
  border-radius: var(--radius-medium);
310
38
  width: calc(100vw - 2 * var(--space-small));
@@ -326,7 +54,8 @@
326
54
  font-size: var(--size-small);
327
55
  }
328
56
 
329
- /* prevent tooltip portal wrapper from capturing events */
57
+ /* prevent the tooltip portal wrapper from capturing pointer events - the
58
+ treemap relies on pointer events reaching the canvas to track the hovered cell */
330
59
  div[role='presentation']:has(.tooltip) {
331
60
  pointer-events: none;
332
61
  }