@bundle-stats/ui 4.23.0-beta.1 → 4.23.0-beta.11
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.
- package/lib/app/app.js +16 -5
- package/lib/app/app.js.map +1 -1
- package/lib/app/app.module.css +13 -9
- package/lib/app/header/header.module.css +1 -3
- package/lib/components/asset-name/asset-name.js +8 -7
- package/lib/components/asset-name/asset-name.js.map +1 -1
- package/lib/components/asset-name/asset-name.module.css +11 -10
- package/lib/components/bundle-assets/bundle-assets.js +4 -2
- package/lib/components/bundle-assets/bundle-assets.js.map +1 -1
- package/lib/components/bundle-assets/bundle-assets.module.css +0 -12
- package/lib/components/bundle-assets/index.js +2 -1
- package/lib/components/bundle-assets/index.js.map +1 -1
- package/lib/components/bundle-assets-totals/bundle-assets-totals.js +4 -2
- package/lib/components/bundle-assets-totals/bundle-assets-totals.js.map +1 -1
- package/lib/components/bundle-modules/bundle-modules.js +5 -3
- package/lib/components/bundle-modules/bundle-modules.js.map +1 -1
- package/lib/components/bundle-modules/bundle-modules.module.css +2 -16
- package/lib/components/bundle-modules/index.js +2 -1
- package/lib/components/bundle-modules/index.js.map +1 -1
- package/lib/components/bundle-packages/bundle-packages.js +5 -3
- package/lib/components/bundle-packages/bundle-packages.js.map +1 -1
- package/lib/components/bundle-packages/bundle-packages.module.css +18 -22
- package/lib/components/entry-info/entry-info.js +4 -2
- package/lib/components/entry-info/entry-info.js.map +1 -1
- package/lib/components/entry-info/entry-info.module.css +8 -2
- package/lib/components/jobs-header/jobs-header.js +1 -1
- package/lib/components/jobs-header/jobs-header.js.map +1 -1
- package/lib/components/jobs-header/jobs-header.module.css +0 -1
- package/lib/components/metric-change-legend/metric-change-legend.js +2 -2
- package/lib/components/metric-change-legend/metric-change-legend.js.map +1 -1
- package/lib/components/metric-change-legend/metric-change-legend.module.css +11 -0
- package/lib/components/metric-run-info/metric-run-info.js +4 -11
- package/lib/components/metric-run-info/metric-run-info.js.map +1 -1
- package/lib/components/metrics-display-selector/metrics-display-selector.module.css +4 -4
- package/lib/components/metrics-table/metrics-table.js +31 -20
- package/lib/components/metrics-table/metrics-table.js.map +1 -1
- package/lib/components/metrics-table/metrics-table.module.css +4 -12
- package/lib/components/metrics-table-options/metrics-table-options.js +5 -6
- package/lib/components/metrics-table-options/metrics-table-options.js.map +1 -1
- package/lib/components/metrics-table-row-count/index.js +18 -0
- package/lib/components/metrics-table-row-count/index.js.map +1 -0
- package/lib/components/metrics-table-row-count/metrics-table-row-count.js +17 -0
- package/lib/components/metrics-table-row-count/metrics-table-row-count.js.map +1 -0
- package/lib/components/metrics-table-row-count/metrics-table-row-count.module.css +5 -0
- package/lib/components/metrics-treemap/metrics-treemap.constants.js +3 -1
- package/lib/components/metrics-treemap/metrics-treemap.constants.js.map +1 -1
- package/lib/components/metrics-treemap/metrics-treemap.js +46 -113
- package/lib/components/metrics-treemap/metrics-treemap.js.map +1 -1
- package/lib/components/metrics-treemap/metrics-treemap.module.css +3 -274
- package/lib/components/metrics-treemap/metrics-treemap.utils.js +81 -16
- package/lib/components/metrics-treemap/metrics-treemap.utils.js.map +1 -1
- package/lib/components/metrics-treemap/tile/index.js +18 -0
- package/lib/components/metrics-treemap/tile/index.js.map +1 -0
- package/lib/components/metrics-treemap/tile/tile.js +79 -0
- package/lib/components/metrics-treemap/tile/tile.js.map +1 -0
- package/lib/components/metrics-treemap/tile/tile.module.css +146 -0
- package/lib/components/metrics-treemap/tile-group/index.js +18 -0
- package/lib/components/metrics-treemap/tile-group/index.js.map +1 -0
- package/lib/components/metrics-treemap/tile-group/tile-group.js +75 -0
- package/lib/components/metrics-treemap/tile-group/tile-group.js.map +1 -0
- package/lib/components/metrics-treemap/tile-group/tile-group.module.css +59 -0
- package/lib/components/metrics-treemap/tile-group-title/index.js +18 -0
- package/lib/components/metrics-treemap/tile-group-title/index.js.map +1 -0
- package/lib/components/metrics-treemap/tile-group-title/tile-group-title.js +24 -0
- package/lib/components/metrics-treemap/tile-group-title/tile-group-title.js.map +1 -0
- package/lib/components/metrics-treemap/tile-group-title/tile-group-title.module.css +44 -0
- package/lib/components/run-info/run-info.module.css +6 -6
- package/lib/components/sort-button/sort-button.module.css +5 -4
- package/lib/components/summary/summary.js +5 -4
- package/lib/components/summary/summary.js.map +1 -1
- package/lib/components/summary/summary.module.css +18 -18
- package/lib/css/default.css +9 -4
- package/lib/css/variables.css +42 -28
- package/lib/layout/box/box.module.css +4 -2
- package/lib/layout/flex-stack/flex-stack.js +2 -2
- package/lib/layout/flex-stack/flex-stack.js.map +1 -1
- package/lib/layout/flex-stack/flex-stack.module.css +65 -10
- package/lib/query-state.js +6 -3
- package/lib/query-state.js.map +1 -1
- package/lib/ui/button/button.js +3 -2
- package/lib/ui/button/button.js.map +1 -1
- package/lib/ui/button/button.module.css +41 -28
- package/lib/ui/control-group/control-group.js +1 -1
- package/lib/ui/control-group/control-group.js.map +1 -1
- package/lib/ui/copy-to-clipboard/copy-to-clipboard.module.css +4 -2
- package/lib/ui/dialog/dialog.js +3 -1
- package/lib/ui/dialog/dialog.js.map +1 -1
- package/lib/ui/dialog/dialog.module.css +16 -5
- package/lib/ui/dropdown/dropdown.js +11 -3
- package/lib/ui/dropdown/dropdown.js.map +1 -1
- package/lib/ui/dropdown/dropdown.module.css +56 -9
- package/lib/ui/filters/filters.js +28 -16
- package/lib/ui/filters/filters.js.map +1 -1
- package/lib/ui/filters/filters.module.css +7 -21
- package/lib/ui/hover-card/hover-card.js +7 -1
- package/lib/ui/hover-card/hover-card.js.map +1 -1
- package/lib/ui/hover-card/hover-card.module.css +14 -10
- package/lib/ui/input/input.module.css +4 -2
- package/lib/ui/table/table.module.css +14 -5
- package/lib/ui/tabs/tabs.module.css +17 -9
- package/lib/ui/tag/tag.module.css +0 -2
- package/lib/ui/textarea/textarea.module.css +4 -2
- package/lib/ui/toolbar/toolbar.js +2 -1
- package/lib/ui/toolbar/toolbar.js.map +1 -1
- package/lib/ui/toolbar/toolbar.module.css +0 -6
- package/lib/ui/tooltip/tooltip.js +6 -1
- package/lib/ui/tooltip/tooltip.js.map +1 -1
- package/lib/ui/tooltip/tooltip.module.css +5 -3
- package/lib/utils/index.js +1 -0
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/portal.js +26 -0
- package/lib/utils/portal.js.map +1 -0
- package/lib-esm/app/app.js +16 -5
- package/lib-esm/app/app.js.map +1 -1
- package/lib-esm/app/app.module.css +13 -9
- package/lib-esm/app/header/header.module.css +1 -3
- package/lib-esm/components/asset-name/asset-name.js +8 -7
- package/lib-esm/components/asset-name/asset-name.js.map +1 -1
- package/lib-esm/components/asset-name/asset-name.module.css +11 -10
- package/lib-esm/components/bundle-assets/bundle-assets.js +4 -2
- package/lib-esm/components/bundle-assets/bundle-assets.js.map +1 -1
- package/lib-esm/components/bundle-assets/bundle-assets.module.css +0 -12
- package/lib-esm/components/bundle-assets/index.js +2 -1
- package/lib-esm/components/bundle-assets/index.js.map +1 -1
- package/lib-esm/components/bundle-assets-totals/bundle-assets-totals.js +4 -2
- package/lib-esm/components/bundle-assets-totals/bundle-assets-totals.js.map +1 -1
- package/lib-esm/components/bundle-modules/bundle-modules.js +5 -3
- package/lib-esm/components/bundle-modules/bundle-modules.js.map +1 -1
- package/lib-esm/components/bundle-modules/bundle-modules.module.css +2 -16
- package/lib-esm/components/bundle-modules/index.js +2 -1
- package/lib-esm/components/bundle-modules/index.js.map +1 -1
- package/lib-esm/components/bundle-packages/bundle-packages.js +5 -3
- package/lib-esm/components/bundle-packages/bundle-packages.js.map +1 -1
- package/lib-esm/components/bundle-packages/bundle-packages.module.css +18 -22
- package/lib-esm/components/entry-info/entry-info.js +4 -2
- package/lib-esm/components/entry-info/entry-info.js.map +1 -1
- package/lib-esm/components/entry-info/entry-info.module.css +8 -2
- package/lib-esm/components/jobs-header/jobs-header.js +1 -1
- package/lib-esm/components/jobs-header/jobs-header.js.map +1 -1
- package/lib-esm/components/jobs-header/jobs-header.module.css +0 -1
- package/lib-esm/components/metric-change-legend/metric-change-legend.js +2 -2
- package/lib-esm/components/metric-change-legend/metric-change-legend.js.map +1 -1
- package/lib-esm/components/metric-change-legend/metric-change-legend.module.css +11 -0
- package/lib-esm/components/metric-run-info/metric-run-info.js +5 -12
- package/lib-esm/components/metric-run-info/metric-run-info.js.map +1 -1
- package/lib-esm/components/metrics-display-selector/metrics-display-selector.module.css +4 -4
- package/lib-esm/components/metrics-table/metrics-table.js +32 -20
- package/lib-esm/components/metrics-table/metrics-table.js.map +1 -1
- package/lib-esm/components/metrics-table/metrics-table.module.css +4 -12
- package/lib-esm/components/metrics-table-options/metrics-table-options.js +6 -7
- package/lib-esm/components/metrics-table-options/metrics-table-options.js.map +1 -1
- package/lib-esm/components/metrics-table-row-count/index.js +2 -0
- package/lib-esm/components/metrics-table-row-count/index.js.map +1 -0
- package/lib-esm/components/metrics-table-row-count/metrics-table-row-count.js +10 -0
- package/lib-esm/components/metrics-table-row-count/metrics-table-row-count.js.map +1 -0
- package/lib-esm/components/metrics-table-row-count/metrics-table-row-count.module.css +5 -0
- package/lib-esm/components/metrics-treemap/metrics-treemap.constants.js +2 -0
- package/lib-esm/components/metrics-treemap/metrics-treemap.constants.js.map +1 -1
- package/lib-esm/components/metrics-treemap/metrics-treemap.js +52 -120
- package/lib-esm/components/metrics-treemap/metrics-treemap.js.map +1 -1
- package/lib-esm/components/metrics-treemap/metrics-treemap.module.css +3 -274
- package/lib-esm/components/metrics-treemap/metrics-treemap.utils.js +80 -18
- package/lib-esm/components/metrics-treemap/metrics-treemap.utils.js.map +1 -1
- package/lib-esm/components/metrics-treemap/tile/index.js +2 -0
- package/lib-esm/components/metrics-treemap/tile/index.js.map +1 -0
- package/lib-esm/components/metrics-treemap/tile/tile.js +40 -0
- package/lib-esm/components/metrics-treemap/tile/tile.js.map +1 -0
- package/lib-esm/components/metrics-treemap/tile/tile.module.css +146 -0
- package/lib-esm/components/metrics-treemap/tile-group/index.js +2 -0
- package/lib-esm/components/metrics-treemap/tile-group/index.js.map +1 -0
- package/lib-esm/components/metrics-treemap/tile-group/tile-group.js +35 -0
- package/lib-esm/components/metrics-treemap/tile-group/tile-group.js.map +1 -0
- package/lib-esm/components/metrics-treemap/tile-group/tile-group.module.css +59 -0
- package/lib-esm/components/metrics-treemap/tile-group-title/index.js +2 -0
- package/lib-esm/components/metrics-treemap/tile-group-title/index.js.map +1 -0
- package/lib-esm/components/metrics-treemap/tile-group-title/tile-group-title.js +17 -0
- package/lib-esm/components/metrics-treemap/tile-group-title/tile-group-title.js.map +1 -0
- package/lib-esm/components/metrics-treemap/tile-group-title/tile-group-title.module.css +44 -0
- package/lib-esm/components/run-info/run-info.module.css +6 -6
- package/lib-esm/components/sort-button/sort-button.module.css +5 -4
- package/lib-esm/components/summary/summary.js +5 -4
- package/lib-esm/components/summary/summary.js.map +1 -1
- package/lib-esm/components/summary/summary.module.css +18 -18
- package/lib-esm/css/default.css +9 -4
- package/lib-esm/css/variables.css +42 -28
- package/lib-esm/layout/box/box.module.css +4 -2
- package/lib-esm/layout/flex-stack/flex-stack.js +3 -2
- package/lib-esm/layout/flex-stack/flex-stack.js.map +1 -1
- package/lib-esm/layout/flex-stack/flex-stack.module.css +65 -10
- package/lib-esm/query-state.js +7 -4
- package/lib-esm/query-state.js.map +1 -1
- package/lib-esm/ui/button/button.js +3 -2
- package/lib-esm/ui/button/button.js.map +1 -1
- package/lib-esm/ui/button/button.module.css +41 -28
- package/lib-esm/ui/control-group/control-group.js +1 -1
- package/lib-esm/ui/control-group/control-group.js.map +1 -1
- package/lib-esm/ui/copy-to-clipboard/copy-to-clipboard.module.css +4 -2
- package/lib-esm/ui/dialog/dialog.js +3 -1
- package/lib-esm/ui/dialog/dialog.js.map +1 -1
- package/lib-esm/ui/dialog/dialog.module.css +16 -5
- package/lib-esm/ui/dropdown/dropdown.js +9 -2
- package/lib-esm/ui/dropdown/dropdown.js.map +1 -1
- package/lib-esm/ui/dropdown/dropdown.module.css +56 -9
- package/lib-esm/ui/filters/filters.js +29 -17
- package/lib-esm/ui/filters/filters.js.map +1 -1
- package/lib-esm/ui/filters/filters.module.css +7 -21
- package/lib-esm/ui/hover-card/hover-card.js +7 -1
- package/lib-esm/ui/hover-card/hover-card.js.map +1 -1
- package/lib-esm/ui/hover-card/hover-card.module.css +14 -10
- package/lib-esm/ui/input/input.module.css +4 -2
- package/lib-esm/ui/table/table.module.css +14 -5
- package/lib-esm/ui/tabs/tabs.module.css +17 -9
- package/lib-esm/ui/tag/tag.module.css +0 -2
- package/lib-esm/ui/textarea/textarea.module.css +4 -2
- package/lib-esm/ui/toolbar/toolbar.js +2 -1
- package/lib-esm/ui/toolbar/toolbar.js.map +1 -1
- package/lib-esm/ui/toolbar/toolbar.module.css +0 -6
- package/lib-esm/ui/tooltip/tooltip.js +6 -1
- package/lib-esm/ui/tooltip/tooltip.js.map +1 -1
- package/lib-esm/ui/tooltip/tooltip.module.css +5 -3
- package/lib-esm/utils/index.js +1 -0
- package/lib-esm/utils/index.js.map +1 -1
- package/lib-esm/utils/portal.js +21 -0
- package/lib-esm/utils/portal.js.map +1 -0
- package/package.json +17 -17
- package/src/app/app.jsx +31 -12
- package/src/app/app.module.css +13 -9
- package/src/app/header/header.module.css +1 -3
- package/src/components/asset-name/asset-name.module.css +11 -10
- package/src/components/asset-name/asset-name.tsx +17 -14
- package/src/components/bundle-assets/bundle-assets.module.css +0 -12
- package/src/components/bundle-assets/bundle-assets.tsx +8 -1
- package/src/components/bundle-assets/index.tsx +3 -1
- package/src/components/bundle-assets-totals/bundle-assets-totals.jsx +6 -4
- package/src/components/bundle-modules/bundle-modules.module.css +2 -16
- package/src/components/bundle-modules/bundle-modules.tsx +10 -3
- package/src/components/bundle-modules/index.tsx +3 -1
- package/src/components/bundle-packages/bundle-packages.jsx +14 -3
- package/src/components/bundle-packages/bundle-packages.module.css +18 -22
- package/src/components/entry-info/entry-info.module.css +8 -2
- package/src/components/entry-info/entry-info.tsx +9 -3
- package/src/components/jobs-header/jobs-header.module.css +0 -1
- package/src/components/jobs-header/jobs-header.tsx +2 -2
- package/src/components/metric-change-legend/metric-change-legend.module.css +11 -0
- package/src/components/metric-change-legend/metric-change-legend.tsx +2 -2
- package/src/components/metric-run-info/metric-run-info.stories.tsx +9 -0
- package/src/components/metric-run-info/metric-run-info.tsx +10 -12
- package/src/components/metrics-display-selector/metrics-display-selector.module.css +4 -4
- package/src/components/metrics-table/metrics-table.module.css +4 -12
- package/src/components/metrics-table/metrics-table.tsx +70 -39
- package/src/components/metrics-table-options/metrics-table-options.tsx +14 -15
- package/src/components/metrics-table-row-count/index.ts +1 -0
- package/src/components/metrics-table-row-count/metrics-table-row-count.module.css +5 -0
- package/src/components/metrics-table-row-count/metrics-table-row-count.tsx +21 -0
- package/src/components/metrics-treemap/metrics-treemap.constants.ts +9 -0
- package/src/components/metrics-treemap/metrics-treemap.module.css +3 -274
- package/src/components/metrics-treemap/metrics-treemap.stories.utils.ts +46 -0
- package/src/components/metrics-treemap/metrics-treemap.tsx +123 -428
- package/src/components/metrics-treemap/metrics-treemap.utils.ts +161 -27
- package/src/components/metrics-treemap/tile/index.ts +1 -0
- package/src/components/metrics-treemap/tile/tile.module.css +146 -0
- package/src/components/metrics-treemap/tile/tile.stories.tsx +139 -0
- package/src/components/metrics-treemap/tile/tile.tsx +121 -0
- package/src/components/metrics-treemap/tile-group/index.ts +1 -0
- package/src/components/metrics-treemap/tile-group/tile-group.module.css +59 -0
- package/src/components/metrics-treemap/tile-group/tile-group.stories.tsx +163 -0
- package/src/components/metrics-treemap/tile-group/tile-group.tsx +177 -0
- package/src/components/metrics-treemap/tile-group-title/index.ts +1 -0
- package/src/components/metrics-treemap/tile-group-title/tile-group-title.module.css +44 -0
- package/src/components/metrics-treemap/tile-group-title/tile-group-title.stories.tsx +88 -0
- package/src/components/metrics-treemap/tile-group-title/tile-group-title.tsx +51 -0
- package/src/components/run-info/run-info.module.css +6 -6
- package/src/components/sort-button/sort-button.module.css +5 -4
- package/src/components/summary/summary.module.css +18 -18
- package/src/components/summary/summary.tsx +9 -8
- package/src/css/default.css +9 -4
- package/src/css/variables.css +42 -28
- package/src/layout/box/box.module.css +4 -2
- package/src/layout/flex-stack/flex-stack.module.css +65 -10
- package/src/layout/flex-stack/flex-stack.stories.tsx +68 -9
- package/src/layout/flex-stack/flex-stack.tsx +24 -4
- package/src/query-state.tsx +9 -4
- package/src/ui/button/button.module.css +41 -28
- package/src/ui/button/button.stories.tsx +1 -1
- package/src/ui/button/button.tsx +3 -1
- package/src/ui/control-group/control-group.tsx +1 -1
- package/src/ui/copy-to-clipboard/copy-to-clipboard.module.css +4 -2
- package/src/ui/dialog/dialog.module.css +16 -5
- package/src/ui/dialog/dialog.stories.tsx +8 -0
- package/src/ui/dialog/dialog.tsx +7 -0
- package/src/ui/dropdown/dropdown.module.css +56 -9
- package/src/ui/dropdown/dropdown.stories.tsx +6 -0
- package/src/ui/dropdown/dropdown.tsx +13 -2
- package/src/ui/filters/filters.module.css +7 -21
- package/src/ui/filters/filters.tsx +131 -67
- package/src/ui/hover-card/hover-card.module.css +14 -10
- package/src/ui/hover-card/hover-card.tsx +7 -1
- package/src/ui/input/input.module.css +4 -2
- package/src/ui/table/table.module.css +14 -5
- package/src/ui/tabs/tabs.module.css +17 -9
- package/src/ui/tag/tag.module.css +0 -2
- package/src/ui/textarea/textarea.module.css +4 -2
- package/src/ui/toolbar/toolbar.jsx +4 -1
- package/src/ui/toolbar/toolbar.module.css +0 -6
- package/src/ui/tooltip/tooltip.module.css +5 -3
- package/src/ui/tooltip/tooltip.tsx +6 -1
- package/src/utils/index.ts +1 -0
- package/src/utils/portal.ts +34 -0
- package/types/components/metric-run-info/metric-run-info.d.ts +1 -0
- package/types/components/metrics-table/metrics-table.d.ts +2 -1
- package/types/components/metrics-table-row-count/index.d.ts +1 -0
- package/types/components/metrics-table-row-count/metrics-table-row-count.d.ts +7 -0
- package/types/components/metrics-treemap/metrics-treemap.constants.d.ts +2 -0
- package/types/components/metrics-treemap/metrics-treemap.utils.d.ts +16 -5
- package/types/components/metrics-treemap/tile/index.d.ts +1 -0
- package/types/components/metrics-treemap/tile/tile.d.ts +11 -0
- package/types/components/metrics-treemap/tile-group/index.d.ts +1 -0
- package/types/components/metrics-treemap/tile-group/tile-group.d.ts +20 -0
- package/types/components/metrics-treemap/tile-group-title/index.d.ts +1 -0
- package/types/components/metrics-treemap/tile-group-title/tile-group-title.d.ts +12 -0
- package/types/layout/flex-stack/flex-stack.d.ts +6 -2
- package/types/ui/button/button.d.ts +1 -0
- package/types/ui/dropdown/dropdown.d.ts +3 -1
- package/types/ui/filters/filters.d.ts +2 -1
- package/types/utils/index.d.ts +1 -0
- package/types/utils/portal.d.ts +2 -0
- package/vitest.config.ts +4 -0
- package/lib/components/metrics-table-options/metrics-table-options.module.css +0 -15
- package/lib-esm/components/metrics-table-options/metrics-table-options.module.css +0 -15
- package/src/components/metrics-table-options/metrics-table-options.module.css +0 -15
|
@@ -42,15 +42,14 @@ const react_use_1 = require("react-use");
|
|
|
42
42
|
const classnames_1 = __importDefault(require("classnames"));
|
|
43
43
|
const d3_1 = require("d3");
|
|
44
44
|
const tooltip_1 = require("ariakit/tooltip");
|
|
45
|
-
const
|
|
45
|
+
const flex_stack_1 = require("../../layout/flex-stack");
|
|
46
46
|
const stack_1 = require("../../layout/stack");
|
|
47
47
|
const file_name_1 = require("../../ui/file-name");
|
|
48
|
-
const delta_1 = require("../delta");
|
|
49
48
|
const run_info_1 = require("../run-info");
|
|
50
49
|
const metrics_treemap_constants_1 = require("./metrics-treemap.constants");
|
|
51
|
-
const I18N = __importStar(require("./metrics-treemap.i18n"));
|
|
52
50
|
const metrics_treemap_module_css_1 = __importDefault(require("./metrics-treemap.module.css"));
|
|
53
51
|
const metrics_treemap_utils_1 = require("./metrics-treemap.utils");
|
|
52
|
+
const tile_group_1 = require("./tile-group");
|
|
54
53
|
const TileTooltipContent = (props) => {
|
|
55
54
|
const { item } = props;
|
|
56
55
|
const currentRun = item.runs[0];
|
|
@@ -58,118 +57,23 @@ const TileTooltipContent = (props) => {
|
|
|
58
57
|
return (react_1.default.createElement(stack_1.Stack, { space: "small", className: metrics_treemap_module_css_1.default.tileTooltipContent },
|
|
59
58
|
react_1.default.createElement("h3", { className: metrics_treemap_module_css_1.default.tileTooltipContentTitle },
|
|
60
59
|
react_1.default.createElement(file_name_1.FileName, { as: "code", name: item.label })),
|
|
61
|
-
react_1.default.createElement(run_info_1.RunInfo, { current: currentRun.displayValue, delta: currentRun.displayDeltaPercentage, deltaType: currentRun.deltaType, baseline: baselineRun?.displayValue || '0B' })));
|
|
60
|
+
react_1.default.createElement(run_info_1.RunInfo, { current: currentRun.displayValue, delta: currentRun.displayDelta, deltaPercentage: currentRun.displayDeltaPercentage, deltaType: currentRun.deltaType, baseline: baselineRun?.displayValue || '0B' })));
|
|
62
61
|
};
|
|
63
|
-
const
|
|
64
|
-
const {
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
}
|
|
68
|
-
const resolvedLabel = label || item.label;
|
|
69
|
-
if (sizeDisplay === 'small') {
|
|
70
|
-
return (react_1.default.createElement("div", { className: metrics_treemap_module_css_1.default.tileContent, ref: ref },
|
|
71
|
-
react_1.default.createElement("p", { className: metrics_treemap_module_css_1.default.tileContentLabel }, resolvedLabel)));
|
|
72
|
-
}
|
|
73
|
-
return (react_1.default.createElement("div", { className: metrics_treemap_module_css_1.default.tileContent, ref: ref },
|
|
74
|
-
react_1.default.createElement("p", { className: metrics_treemap_module_css_1.default.tileContentLabel }, label || item.label),
|
|
75
|
-
react_1.default.createElement("p", { className: metrics_treemap_module_css_1.default.tileContentValue },
|
|
76
|
-
react_1.default.createElement("span", { className: metrics_treemap_module_css_1.default.tileContentMetric }, runInfo.displayValue),
|
|
77
|
-
react_1.default.createElement(delta_1.Delta, { className: metrics_treemap_module_css_1.default.tileContentDelta, displayValue: runInfo.displayDeltaPercentage, deltaType: runInfo.deltaType }))));
|
|
78
|
-
});
|
|
79
|
-
const TileContentWithTooltip = (props) => {
|
|
80
|
-
const { label, sizeDisplay, item, runInfo, parentRef } = props;
|
|
81
|
-
const tooltipState = (0, metrics_treemap_utils_1.useTooltipStateWithMouseFollow)({ parentRef });
|
|
82
|
-
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
83
|
-
react_1.default.createElement(tooltip_1.TooltipAnchor, { state: tooltipState, className: metrics_treemap_module_css_1.default.tileContentTooltipAnchor },
|
|
84
|
-
react_1.default.createElement(TileContent, { label: label, sizeDisplay: sizeDisplay, item: item, runInfo: runInfo })),
|
|
85
|
-
react_1.default.createElement(tooltip_1.Tooltip, { state: tooltipState, className: metrics_treemap_module_css_1.default.tooltip },
|
|
86
|
-
react_1.default.createElement(tooltip_1.TooltipArrow, { state: tooltipState, size: 16, className: metrics_treemap_module_css_1.default.tileTooltipArrow }),
|
|
87
|
-
react_1.default.createElement(TileTooltipContent, { item: item }))));
|
|
88
|
-
};
|
|
89
|
-
const Tile = (props) => {
|
|
90
|
-
const { left, top, width, height, data, onClick } = props;
|
|
91
|
-
const { item, label } = data;
|
|
92
|
-
const runInfo = item.runs?.[0];
|
|
93
|
-
const sizeDisplay = (0, react_1.useMemo)(() => (0, metrics_treemap_utils_1.resolveTileSizeDisplay)(width, height), [width, height]);
|
|
94
|
-
const handleOnClick = (0, react_1.useCallback)((event) => {
|
|
95
|
-
event.stopPropagation();
|
|
96
|
-
onClick?.(item.key);
|
|
97
|
-
}, [item.key, onClick]);
|
|
98
|
-
const contentRef = (0, react_1.useRef)(null);
|
|
99
|
-
const hover = (0, react_use_1.useHoverDirty)(contentRef);
|
|
100
|
-
const className = (0, classnames_1.default)(metrics_treemap_module_css_1.default.tile, metrics_treemap_module_css_1.default[`tile-${runInfo.deltaType}`], sizeDisplay === 'small' && metrics_treemap_module_css_1.default.tileSizeSmall, sizeDisplay === 'default' && metrics_treemap_module_css_1.default.tileSizeDefault, left === metrics_treemap_constants_1.PADDING_INNER && metrics_treemap_module_css_1.default.tileFirstCol);
|
|
101
|
-
return (react_1.default.createElement("div", { onClick: handleOnClick, role: "button", "aria-label": I18N.TILE_LABEL, ref: contentRef, style: { left, top, width, height }, className: className }, hover ? (react_1.default.createElement(TileContentWithTooltip, { label: label, sizeDisplay: sizeDisplay, item: item, runInfo: runInfo, parentRef: contentRef })) : (react_1.default.createElement(TileContent, { label: label, sizeDisplay: sizeDisplay, item: item, runInfo: runInfo }))));
|
|
102
|
-
};
|
|
103
|
-
const TileGroupTitleTooltipContent = (props) => {
|
|
104
|
-
const { title, runInfo, baselineDisplayValue } = props;
|
|
105
|
-
return (react_1.default.createElement(stack_1.Stack, { space: "small", className: metrics_treemap_module_css_1.default.tileTooltip },
|
|
62
|
+
const TileGroupTooltipContent = (props) => {
|
|
63
|
+
const { node } = props;
|
|
64
|
+
const title = node.id || node.label;
|
|
65
|
+
const groupRunInfo = node.total && (0, metrics_treemap_utils_1.getGroupRunInfo)(node.total);
|
|
66
|
+
return (react_1.default.createElement(stack_1.Stack, { space: "small", className: metrics_treemap_module_css_1.default.tileTooltipContent },
|
|
106
67
|
react_1.default.createElement("h3", { className: metrics_treemap_module_css_1.default.tileTooltipContentTitle },
|
|
107
68
|
react_1.default.createElement(file_name_1.FileName, { as: "code", name: title })),
|
|
108
|
-
|
|
69
|
+
groupRunInfo && (react_1.default.createElement(run_info_1.RunInfo, { current: groupRunInfo.runInfo.displayValue, baseline: groupRunInfo.baselineDisplayValue, delta: groupRunInfo.runInfo.displayDeltaPercentage, deltaType: groupRunInfo.runInfo.deltaType }))));
|
|
109
70
|
};
|
|
110
|
-
const
|
|
111
|
-
const {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
runInfo && (react_1.default.createElement("span", { className: metrics_treemap_module_css_1.default.tileGroupTitleTotal },
|
|
115
|
-
runInfo.displayValue,
|
|
116
|
-
'displayDelta' in runInfo && `(${runInfo.displayDeltaPercentage})`))));
|
|
117
|
-
};
|
|
118
|
-
const TileGroupTitleContentWithTooltip = (props) => {
|
|
119
|
-
const { parentRef, tooltipContent, ...restProps } = props;
|
|
120
|
-
const tooltipState = (0, metrics_treemap_utils_1.useTooltipStateWithMouseFollow)({ parentRef });
|
|
121
|
-
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
122
|
-
react_1.default.createElement(tooltip_1.TooltipAnchor, { state: tooltipState, className: metrics_treemap_module_css_1.default.tileContentTooltipAnchor },
|
|
123
|
-
react_1.default.createElement(TileGroupTitleContent, { ...restProps })),
|
|
124
|
-
react_1.default.createElement(tooltip_1.Tooltip, { state: tooltipState, className: metrics_treemap_module_css_1.default.tooltip },
|
|
125
|
-
react_1.default.createElement(tooltip_1.TooltipArrow, { state: tooltipState, size: 16, className: metrics_treemap_module_css_1.default.tileTooltipArrow }),
|
|
126
|
-
react_1.default.createElement(TileGroupTitleTooltipContent, { ...tooltipContent }))));
|
|
127
|
-
};
|
|
128
|
-
const TileGroupTitle = (props) => {
|
|
129
|
-
const { tooltipContent, ...restProps } = props;
|
|
130
|
-
const contentRef = (0, react_1.useRef)(null);
|
|
131
|
-
const hover = (0, react_use_1.useHoverDirty)(contentRef);
|
|
132
|
-
return (react_1.default.createElement("div", { className: metrics_treemap_module_css_1.default.tileGroupTitle, ref: contentRef }, hover ? (react_1.default.createElement(TileGroupTitleContentWithTooltip, { parentRef: contentRef, tooltipContent: tooltipContent, ...restProps })) : (react_1.default.createElement(TileGroupTitleContent, { ...restProps }))));
|
|
133
|
-
};
|
|
134
|
-
const TileGroup = (props) => {
|
|
135
|
-
const { title = '', total, id, childNodes, onItemClick, onGroupClick, left, top, width, height, absoluteLeft, absoluteTop, } = props;
|
|
136
|
-
const onClick = (0, react_1.useCallback)((event) => {
|
|
137
|
-
onGroupClick?.(id);
|
|
138
|
-
event.stopPropagation();
|
|
139
|
-
}, [onGroupClick, id]);
|
|
140
|
-
const displaySize = (0, react_1.useMemo)(() => (0, metrics_treemap_utils_1.resolveTileGroupSizeDisplay)(width || 0, height || 0), [width, height]);
|
|
141
|
-
const [runInfo, baselineDisplayValue, deltaType] = (0, react_1.useMemo)(() => {
|
|
142
|
-
if (!total) {
|
|
143
|
-
return [];
|
|
144
|
-
}
|
|
145
|
-
const resolvedRunInfo = (0, utils_1.getMetricRunInfo)(utils_1.METRIC_TYPE_CONFIGS.METRIC_TYPE_FILE_SIZE, total.current, total.baseline);
|
|
146
|
-
const resolvedBaselineDisplayValue = (0, utils_1.formatFileSize)(total.baseline);
|
|
147
|
-
const resolvedDeltaType = (0, metrics_treemap_utils_1.resolveGroupDeltaType)(resolvedRunInfo);
|
|
148
|
-
return [resolvedRunInfo, resolvedBaselineDisplayValue, resolvedDeltaType];
|
|
149
|
-
}, [total]);
|
|
150
|
-
const rootClassName = (0, classnames_1.default)(metrics_treemap_module_css_1.default.tileGroup, metrics_treemap_module_css_1.default[`tileGroup--${deltaType}`], metrics_treemap_module_css_1.default[`tileGroup--${displaySize}`]);
|
|
151
|
-
const tooltipContent = {
|
|
152
|
-
title: id || title,
|
|
153
|
-
runInfo,
|
|
154
|
-
baselineDisplayValue,
|
|
155
|
-
};
|
|
156
|
-
if (title && displaySize === 'minimal') {
|
|
157
|
-
return (react_1.default.createElement("div", { onClick: onClick, role: "button", "aria-label": I18N.TILE_GROUP_LABEL, className: rootClassName, style: { left, top, width, height } },
|
|
158
|
-
react_1.default.createElement(TileGroupTitle, { tooltipContent: tooltipContent })));
|
|
71
|
+
const TreemapTooltipContent = (props) => {
|
|
72
|
+
const { node } = props;
|
|
73
|
+
if ('item' in node) {
|
|
74
|
+
return react_1.default.createElement(TileTooltipContent, { item: node.item });
|
|
159
75
|
}
|
|
160
|
-
|
|
161
|
-
return (react_1.default.createElement("div", { onClick: onClick, role: "button", "aria-label": I18N.TILE_GROUP_LABEL, style: { left, top, width, height }, className: rootClassName },
|
|
162
|
-
react_1.default.createElement(TileGroupTitle, { title: title, tooltipContent: tooltipContent })));
|
|
163
|
-
}
|
|
164
|
-
return (react_1.default.createElement("div", { onClick: onClick, role: "button", "aria-label": I18N.TILE_GROUP_LABEL, className: (0, classnames_1.default)(rootClassName, metrics_treemap_module_css_1.default.tileGroupSizeDefault), style: { left, top, width, height } },
|
|
165
|
-
react_1.default.createElement(TileGroupTitle, { title: title, runInfo: runInfo, tooltipContent: tooltipContent }),
|
|
166
|
-
childNodes?.map((childNode) => {
|
|
167
|
-
if ('children' in childNode) {
|
|
168
|
-
const groupData = childNode.data;
|
|
169
|
-
return (react_1.default.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 }));
|
|
170
|
-
}
|
|
171
|
-
return (react_1.default.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 }));
|
|
172
|
-
})));
|
|
76
|
+
return react_1.default.createElement(TileGroupTooltipContent, { node: node });
|
|
173
77
|
};
|
|
174
78
|
function useMetricsTreemapHierarchy(params) {
|
|
175
79
|
const { treeNodes, width, height, nested } = params;
|
|
@@ -201,9 +105,38 @@ const MetricsTreemap = (props) => {
|
|
|
201
105
|
const { className = '', treeNodes, onItemClick, onGroupClick, emptyMessage = 'No data', nested = false, ...restProps } = props;
|
|
202
106
|
const [containerRef, { width, height }] = (0, react_use_1.useMeasure)();
|
|
203
107
|
const rootNode = useMetricsTreemapHierarchy({ treeNodes, width, height, nested });
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
108
|
+
const nodesIndex = (0, react_1.useMemo)(() => (0, metrics_treemap_utils_1.getTreemapNodesIndex)(treeNodes), [treeNodes]);
|
|
109
|
+
const { tooltipState, setPointer, hoveredNodeId, setHoveredNode, clearHoveredNode } = (0, metrics_treemap_utils_1.useTreemapTooltipState)();
|
|
110
|
+
const canvasRef = (0, react_1.useRef)(null);
|
|
111
|
+
const tooltipNode = hoveredNodeId === null ? null : nodesIndex.get(hoveredNodeId);
|
|
112
|
+
const handlePointerEvent = (0, react_1.useCallback)((event) => {
|
|
113
|
+
tooltipState.anchorRef.current = canvasRef.current;
|
|
114
|
+
setPointer(event.clientX, event.clientY);
|
|
115
|
+
const target = event.target?.closest(metrics_treemap_constants_1.NODE_ID_SELECTOR);
|
|
116
|
+
setHoveredNode(target?.dataset.treemapId ?? null);
|
|
117
|
+
}, [tooltipState, setPointer, setHoveredNode]);
|
|
118
|
+
const hasNodes = Boolean(rootNode.children && rootNode.children.length > 0);
|
|
119
|
+
(0, react_1.useEffect)(() => {
|
|
120
|
+
const canvas = canvasRef.current;
|
|
121
|
+
if (!canvas) {
|
|
122
|
+
return undefined;
|
|
123
|
+
}
|
|
124
|
+
canvas.addEventListener('mousemove', handlePointerEvent);
|
|
125
|
+
canvas.addEventListener('mouseover', handlePointerEvent);
|
|
126
|
+
canvas.addEventListener('mouseleave', clearHoveredNode);
|
|
127
|
+
return () => {
|
|
128
|
+
canvas.removeEventListener('mousemove', handlePointerEvent);
|
|
129
|
+
canvas.removeEventListener('mouseover', handlePointerEvent);
|
|
130
|
+
canvas.removeEventListener('mouseleave', clearHoveredNode);
|
|
131
|
+
};
|
|
132
|
+
}, [hasNodes, handlePointerEvent, clearHoveredNode]);
|
|
133
|
+
const canvasContent = (0, react_1.useMemo)(() => (react_1.default.createElement(tile_group_1.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]);
|
|
134
|
+
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(metrics_treemap_module_css_1.default.root, className), ...restProps, ref: containerRef },
|
|
135
|
+
hasNodes ? (react_1.default.createElement("div", { className: metrics_treemap_module_css_1.default.canvas, ref: canvasRef }, canvasContent)) : (react_1.default.createElement(flex_stack_1.FlexStack, { alignItems: "center", justifyContent: "center", className: metrics_treemap_module_css_1.default.emptyMessage },
|
|
136
|
+
react_1.default.createElement("div", { className: metrics_treemap_module_css_1.default.emptyMessageWrapper }, emptyMessage))),
|
|
137
|
+
tooltipNode && (react_1.default.createElement(tooltip_1.Tooltip, { state: tooltipState, className: metrics_treemap_module_css_1.default.tooltip },
|
|
138
|
+
react_1.default.createElement(tooltip_1.TooltipArrow, { state: tooltipState, size: 16, className: metrics_treemap_module_css_1.default.tileTooltipArrow }),
|
|
139
|
+
react_1.default.createElement(TreemapTooltipContent, { node: tooltipNode })))));
|
|
207
140
|
};
|
|
208
141
|
exports.MetricsTreemap = MetricsTreemap;
|
|
209
142
|
//# 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-
|
|
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
|
}
|
|
@@ -2,12 +2,13 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getTreemapNodes = getTreemapNodes;
|
|
4
4
|
exports.getTreemapNodesGroupedByPath = getTreemapNodesGroupedByPath;
|
|
5
|
+
exports.getTreemapNodesIndex = getTreemapNodesIndex;
|
|
5
6
|
exports.resolveGroupDeltaType = resolveGroupDeltaType;
|
|
7
|
+
exports.getGroupRunInfo = getGroupRunInfo;
|
|
6
8
|
exports.resolveTileGroupSizeDisplay = resolveTileGroupSizeDisplay;
|
|
7
9
|
exports.resolveTileSizeDisplay = resolveTileSizeDisplay;
|
|
8
|
-
exports.
|
|
10
|
+
exports.useTreemapTooltipState = useTreemapTooltipState;
|
|
9
11
|
const react_1 = require("react");
|
|
10
|
-
const react_use_1 = require("react-use");
|
|
11
12
|
const tooltip_1 = require("ariakit/tooltip");
|
|
12
13
|
const utils_1 = require("@bundle-stats/utils");
|
|
13
14
|
const metrics_treemap_constants_1 = require("./metrics-treemap.constants");
|
|
@@ -105,6 +106,17 @@ function getTreemapNodesGroupedByPath(items) {
|
|
|
105
106
|
total,
|
|
106
107
|
};
|
|
107
108
|
}
|
|
109
|
+
function getTreemapNodesIndex(node, index = new Map()) {
|
|
110
|
+
index.set(node.id, node);
|
|
111
|
+
node.children.forEach((childNode) => {
|
|
112
|
+
if ('children' in childNode) {
|
|
113
|
+
getTreemapNodesIndex(childNode, index);
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
index.set(childNode.id, childNode);
|
|
117
|
+
});
|
|
118
|
+
return index;
|
|
119
|
+
}
|
|
108
120
|
function resolveGroupDeltaType(metricRunInfo) {
|
|
109
121
|
if (!metricRunInfo) {
|
|
110
122
|
return utils_1.DeltaType.NO_CHANGE;
|
|
@@ -118,6 +130,14 @@ function resolveGroupDeltaType(metricRunInfo) {
|
|
|
118
130
|
}
|
|
119
131
|
return utils_1.DeltaType.NO_CHANGE;
|
|
120
132
|
}
|
|
133
|
+
function getGroupRunInfo(total) {
|
|
134
|
+
const runInfo = (0, utils_1.getMetricRunInfo)(utils_1.METRIC_TYPE_CONFIGS.METRIC_TYPE_FILE_SIZE, total.current, total.baseline);
|
|
135
|
+
return {
|
|
136
|
+
runInfo,
|
|
137
|
+
baselineDisplayValue: (0, utils_1.formatFileSize)(total.baseline),
|
|
138
|
+
deltaType: resolveGroupDeltaType(runInfo),
|
|
139
|
+
};
|
|
140
|
+
}
|
|
121
141
|
const PADDING_TOP = 8;
|
|
122
142
|
const PADDING_BOTTOM = 8;
|
|
123
143
|
const PADDING_LEFT = 8;
|
|
@@ -151,23 +171,68 @@ function resolveTileSizeDisplay(width, height) {
|
|
|
151
171
|
}
|
|
152
172
|
return 'default';
|
|
153
173
|
}
|
|
154
|
-
function
|
|
155
|
-
const {
|
|
156
|
-
const
|
|
174
|
+
function useTreemapTooltipState(options = {}) {
|
|
175
|
+
const { gutter = 16, timeout = 240, hideTimeout = timeout } = options;
|
|
176
|
+
const pointerRef = (0, react_1.useRef)(null);
|
|
177
|
+
const frameRef = (0, react_1.useRef)(0);
|
|
178
|
+
const hideTimeoutRef = (0, react_1.useRef)(0);
|
|
157
179
|
const getAnchorRect = (0, react_1.useCallback)(() => {
|
|
158
|
-
|
|
180
|
+
const pointer = pointerRef.current;
|
|
181
|
+
if (!pointer) {
|
|
159
182
|
return null;
|
|
160
183
|
}
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
y: pointer.docY - (document?.defaultView?.scrollY ?? 0),
|
|
164
|
-
w: 1,
|
|
165
|
-
h: 1,
|
|
166
|
-
};
|
|
167
|
-
return newRect;
|
|
168
|
-
}, [pointer.docX, pointer.docY]);
|
|
184
|
+
return { x: pointer.x, y: pointer.y, w: 1, h: 1 };
|
|
185
|
+
}, []);
|
|
169
186
|
const tooltipState = (0, tooltip_1.useTooltipState)({ gutter, getAnchorRect, timeout });
|
|
170
|
-
|
|
171
|
-
|
|
187
|
+
const { mounted, render, show, hide } = tooltipState;
|
|
188
|
+
const [hoveredNodeId, setHoveredNodeId] = (0, react_1.useState)(null);
|
|
189
|
+
const hoveredNodeIdRef = (0, react_1.useRef)(null);
|
|
190
|
+
(0, react_1.useEffect)(() => () => {
|
|
191
|
+
cancelAnimationFrame(frameRef.current);
|
|
192
|
+
window.clearTimeout(hideTimeoutRef.current);
|
|
193
|
+
}, []);
|
|
194
|
+
const setPointer = (0, react_1.useCallback)((x, y) => {
|
|
195
|
+
pointerRef.current = { x, y };
|
|
196
|
+
if (!mounted || frameRef.current) {
|
|
197
|
+
return;
|
|
198
|
+
}
|
|
199
|
+
frameRef.current = requestAnimationFrame(() => {
|
|
200
|
+
frameRef.current = 0;
|
|
201
|
+
render();
|
|
202
|
+
});
|
|
203
|
+
}, [mounted, render]);
|
|
204
|
+
const commitHoveredNode = (0, react_1.useCallback)((nodeId) => {
|
|
205
|
+
hoveredNodeIdRef.current = nodeId;
|
|
206
|
+
setHoveredNodeId(nodeId);
|
|
207
|
+
if (nodeId === null) {
|
|
208
|
+
hide();
|
|
209
|
+
return;
|
|
210
|
+
}
|
|
211
|
+
show();
|
|
212
|
+
}, [hide, show]);
|
|
213
|
+
const setHoveredNode = (0, react_1.useCallback)((nodeId) => {
|
|
214
|
+
window.clearTimeout(hideTimeoutRef.current);
|
|
215
|
+
hideTimeoutRef.current = 0;
|
|
216
|
+
if (nodeId === hoveredNodeIdRef.current) {
|
|
217
|
+
return;
|
|
218
|
+
}
|
|
219
|
+
if (nodeId !== null || !hideTimeout) {
|
|
220
|
+
commitHoveredNode(nodeId);
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
223
|
+
hideTimeoutRef.current = window.setTimeout(() => {
|
|
224
|
+
hideTimeoutRef.current = 0;
|
|
225
|
+
commitHoveredNode(null);
|
|
226
|
+
}, hideTimeout);
|
|
227
|
+
}, [commitHoveredNode, hideTimeout]);
|
|
228
|
+
const clearHoveredNode = (0, react_1.useCallback)(() => {
|
|
229
|
+
window.clearTimeout(hideTimeoutRef.current);
|
|
230
|
+
hideTimeoutRef.current = 0;
|
|
231
|
+
if (hoveredNodeIdRef.current === null) {
|
|
232
|
+
return;
|
|
233
|
+
}
|
|
234
|
+
commitHoveredNode(null);
|
|
235
|
+
}, [commitHoveredNode]);
|
|
236
|
+
return { tooltipState, setPointer, hoveredNodeId, setHoveredNode, clearHoveredNode };
|
|
172
237
|
}
|
|
173
238
|
//# sourceMappingURL=metrics-treemap.utils.js.map
|