@localstack/appinspector-ui 1.0.181 → 1.0.183

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/dist/index.js CHANGED
@@ -2515,7 +2515,7 @@ var SERVICE_NODE_SERVICE_NAME_TEST_ID = "service-node-service-name";
2515
2515
  var SERVICE_NODE_OPERATION_NAME_TEST_ID = "service-node-operation-name";
2516
2516
  var EMULATOR_VERSION_BANNER_TEST_ID = "emulator-version-banner";
2517
2517
  var SPANS_FILTER_NO_MATCH_TEST_ID = "spans-filter-no-match";
2518
- var FILTER_ISSUES_TEST_ID = "filter-issues";
2518
+ var FILTER_STATUS_TEST_ID = "filter-status";
2519
2519
  var FILTER_PRODUCER_TEST_ID = "filter-producer";
2520
2520
  var FILTER_CONSUMER_TEST_ID = "filter-consumer";
2521
2521
  var HIDDEN_OPS_NOTE_TEST_ID = "hidden-ops-note";
@@ -2644,7 +2644,6 @@ import {
2644
2644
  TableRow,
2645
2645
  TableSortLabel,
2646
2646
  TextField,
2647
- Tooltip as Tooltip5,
2648
2647
  Typography as Typography6,
2649
2648
  useTheme as useTheme2
2650
2649
  } from "@mui/material";
@@ -15696,6 +15695,8 @@ import {
15696
15695
  ListSubheader,
15697
15696
  Menu,
15698
15697
  MenuItem,
15698
+ ToggleButton,
15699
+ ToggleButtonGroup,
15699
15700
  Typography as Typography5
15700
15701
  } from "@mui/material";
15701
15702
  import { useState as useState5 } from "react";
@@ -15709,20 +15710,6 @@ var NATIVE_SCROLLBARS = {
15709
15710
  import { Fragment as Fragment4, jsx as jsx127, jsxs as jsxs122 } from "react/jsx-runtime";
15710
15711
  var SHOW_EXCLUSIONS = false;
15711
15712
  var toggle = (list, item) => list.includes(item) ? list.filter((other) => other !== item) : [...list, item];
15712
- var ISSUE_LABELS = { error: "Errors", ok: "No issues", warning: "Warnings" };
15713
- var issueOptionIcon = (value) => {
15714
- switch (value) {
15715
- case "error": {
15716
- return /* @__PURE__ */ jsx127(Cancel3, { sx: { color: "error.main", fontSize: 16 } });
15717
- }
15718
- case "warning": {
15719
- return /* @__PURE__ */ jsx127(WarningIcon, { sx: { color: "warning.main", fontSize: 16 } });
15720
- }
15721
- default: {
15722
- return void 0;
15723
- }
15724
- }
15725
- };
15726
15713
  var FilterDropdown = ({ "data-testid": testId, label, onChange, options, value }) => {
15727
15714
  const [anchorElement, setAnchorElement] = useState5();
15728
15715
  const open = Boolean(anchorElement);
@@ -15806,7 +15793,6 @@ var FilterDropdown = ({ "data-testid": testId, label, onChange, options, value }
15806
15793
  }
15807
15794
  ),
15808
15795
  !!option.serviceCode && /* @__PURE__ */ jsx127(Box5, { sx: { borderRadius: "4px", flexShrink: 0, lineHeight: 0, mr: 1, overflow: "hidden" }, children: /* @__PURE__ */ jsx127(AwsServiceIcon, { hideTooltip: true, service: option.serviceCode, size: "medium" }) }),
15809
- !!option.icon && /* @__PURE__ */ jsx127(Box5, { sx: { alignItems: "center", display: "flex", flexShrink: 0, mr: 1 }, children: option.icon }),
15810
15796
  /* @__PURE__ */ jsx127(
15811
15797
  ListItemText,
15812
15798
  {
@@ -15850,7 +15836,42 @@ var FilterDropdown = ({ "data-testid": testId, label, onChange, options, value }
15850
15836
  )
15851
15837
  ] });
15852
15838
  };
15853
- var SpansFilterBar = ({ facets, onQueryChange, query: query2 }) => {
15839
+ var StatusCount = ({ count: count2, "data-testid": testId }) => /* @__PURE__ */ jsx127(Typography5, { color: "text.secondary", component: "span", "data-testid": testId, variant: "caption", children: count2.toLocaleString() });
15840
+ var StatusFilter = ({ counts, onChange, value }) => {
15841
+ const selected = value.included.length === 0 ? "all" : value.included.length === 1 ? value.included[0] : void 0;
15842
+ return /* @__PURE__ */ jsxs122(
15843
+ ToggleButtonGroup,
15844
+ {
15845
+ "aria-label": "Status",
15846
+ "data-testid": FILTER_STATUS_TEST_ID,
15847
+ exclusive: true,
15848
+ onChange: (_event, next) => {
15849
+ if (next) onChange({ excluded: [], included: next === "all" ? [] : [next] });
15850
+ },
15851
+ size: "small",
15852
+ sx: { "& .MuiToggleButton-root": { gap: 0.5, lineHeight: 1.5, px: 1.25, py: 0.5, textTransform: "none" }, "flexShrink": 0 },
15853
+ value: selected,
15854
+ children: [
15855
+ /* @__PURE__ */ jsxs122(ToggleButton, { value: "all", children: [
15856
+ "All",
15857
+ /* @__PURE__ */ jsx127(StatusCount, { count: counts.all })
15858
+ ] }),
15859
+ /* @__PURE__ */ jsxs122(ToggleButton, { value: "error", children: [
15860
+ /* @__PURE__ */ jsx127(Cancel3, { sx: { color: "error.main", fontSize: 16 } }),
15861
+ "Errors",
15862
+ /* @__PURE__ */ jsx127(StatusCount, { count: counts.error, "data-testid": ERROR_COUNT_TEST_ID })
15863
+ ] }),
15864
+ /* @__PURE__ */ jsxs122(ToggleButton, { value: "warning", children: [
15865
+ /* @__PURE__ */ jsx127(WarningIcon, { sx: { color: "warning.main", fontSize: 16 } }),
15866
+ "Warnings",
15867
+ /* @__PURE__ */ jsx127(StatusCount, { count: counts.warning, "data-testid": WARNING_COUNT_TEST_ID })
15868
+ ] })
15869
+ ]
15870
+ }
15871
+ );
15872
+ };
15873
+ var SpansFilterBar = ({ facets, onQueryChange, query: query2, totalCount }) => {
15874
+ const issueCount = (value) => facets.issues.find((facet) => facet.value === value)?.count ?? 0;
15854
15875
  const dropdown = (key, label, facetValues, toOption, testId) => {
15855
15876
  const value = getQueryValues(query2, key);
15856
15877
  const loaded = new Set(facetValues.map((facet) => facet.value));
@@ -15868,17 +15889,29 @@ var SpansFilterBar = ({ facets, onQueryChange, query: query2 }) => {
15868
15889
  }
15869
15890
  );
15870
15891
  };
15871
- return /* @__PURE__ */ jsxs122(Box5, { sx: { alignItems: "center", display: "flex", gap: 1 }, children: [
15872
- dropdown("producer", "Producer", facets.producer, (facet) => facet.value === EXTERNAL_PRODUCER ? { label: "External producer" } : { label: getServiceDisplayName(facet.value), serviceCode: facet.value }, FILTER_PRODUCER_TEST_ID),
15873
- dropdown("service", "Consumer", facets.service, (facet) => ({ label: getServiceDisplayName(facet.value), serviceCode: facet.value }), FILTER_CONSUMER_TEST_ID),
15874
- dropdown("status", "Issues", facets.issues, (facet) => ({ icon: issueOptionIcon(facet.value), label: ISSUE_LABELS[facet.value] ?? facet.value }), FILTER_ISSUES_TEST_ID)
15875
- ] });
15892
+ return (
15893
+ // Its controls wrap as items of the parent's controls row.
15894
+ /* @__PURE__ */ jsxs122(Box5, { sx: { display: "contents" }, children: [
15895
+ /* @__PURE__ */ jsx127(
15896
+ StatusFilter,
15897
+ {
15898
+ counts: { all: totalCount, error: issueCount("error"), warning: issueCount("warning") },
15899
+ onChange: (next) => {
15900
+ onQueryChange(setQueryValues(query2, "status", next));
15901
+ },
15902
+ value: getQueryValues(query2, "status")
15903
+ }
15904
+ ),
15905
+ dropdown("producer", "Producer", facets.producer, (facet) => facet.value === EXTERNAL_PRODUCER ? { label: "External producer" } : { label: getServiceDisplayName(facet.value), serviceCode: facet.value }, FILTER_PRODUCER_TEST_ID),
15906
+ dropdown("service", "Consumer", facets.service, (facet) => ({ label: getServiceDisplayName(facet.value), serviceCode: facet.value }), FILTER_CONSUMER_TEST_ID)
15907
+ ] })
15908
+ );
15876
15909
  };
15877
15910
 
15878
15911
  // src/components/spans-list/spans-data-grid.tsx
15879
15912
  import { Fragment as Fragment5, jsx as jsx128, jsxs as jsxs123 } from "react/jsx-runtime";
15880
15913
  var SHOW_FILTERS_IN_SEARCH = false;
15881
- var FILTER_NAMES = [["producer", "Producer"], ["service", "Consumer"], ["status", "Issues"]];
15914
+ var FILTER_NAMES = [["producer", "Producer"], ["service", "Consumer"], ["status", "Status"]];
15882
15915
  var columnHelper = createColumnHelper();
15883
15916
  var newSpanBackgroundColor = {
15884
15917
  dark: { from: "rgba(255, 193, 7, 0.14)", to: "rgba(255, 193, 7, 0)" },
@@ -16048,8 +16081,6 @@ var SpansDataGrid = ({
16048
16081
  if (!spansLoaded) return;
16049
16082
  return compute.topLevelIds.map((spanId) => getSpan(spanId)).filter((span) => span !== void 0);
16050
16083
  }, [compute.topLevelIds, getSpan, spansLoaded]);
16051
- const errorCount = compute.allIds.filter((spanId) => compute.rows[spanId]?.error).length;
16052
- const warningCount = compute.allIds.filter((spanId) => compute.rows[spanId]?.warning).length;
16053
16084
  const downstreamOf = useCallback2((spanId) => compute.rows[spanId]?.downstream, [compute.rows]);
16054
16085
  const columns = useMemo4(() => [
16055
16086
  columnHelper.display({
@@ -16167,8 +16198,8 @@ var SpansDataGrid = ({
16167
16198
  }, [order2, spans?.length, lastSpanId]);
16168
16199
  return /* @__PURE__ */ jsxs123(Fragment5, { children: [
16169
16200
  /* @__PURE__ */ jsx128(Grid, { item: true, xs: 12, children: /* @__PURE__ */ jsxs123(Box6, { sx: { display: "flex", flexDirection: "column", gap: "0.5rem", pt: 1, px: 1 }, children: [
16170
- /* @__PURE__ */ jsxs123(Box6, { sx: { alignItems: "center", display: "flex", flexWrap: "wrap", gap: "0.5rem" }, children: [
16171
- /* @__PURE__ */ jsx128(Box6, { sx: { flex: 1, maxWidth: 220, minWidth: 96, order: 1 }, children: /* @__PURE__ */ jsx128(
16201
+ /* @__PURE__ */ jsxs123(Box6, { sx: { alignItems: "center", containerType: "inline-size", display: "flex", flexWrap: "wrap", gap: "0.5rem" }, children: [
16202
+ /* @__PURE__ */ jsx128(Box6, { sx: { flex: "1 1 160px", maxWidth: 220, order: -1 }, children: /* @__PURE__ */ jsx128(
16172
16203
  SpansSearchField,
16173
16204
  {
16174
16205
  onChange: (value) => {
@@ -16178,16 +16209,16 @@ var SpansDataGrid = ({
16178
16209
  value: searchText
16179
16210
  }
16180
16211
  ) }),
16181
- /* @__PURE__ */ jsx128(Box6, { sx: { order: { md: 2, xs: 4 }, width: { md: "auto", xs: "100%" } }, children: /* @__PURE__ */ jsx128(
16212
+ /* @__PURE__ */ jsx128(
16182
16213
  SpansFilterBar,
16183
16214
  {
16184
16215
  facets: compute.facets,
16185
16216
  onQueryChange: updateDropdownQuery,
16186
- query: dropdownQuery
16217
+ query: dropdownQuery,
16218
+ totalCount: compute.totalCount
16187
16219
  }
16188
- ) }),
16189
- /* @__PURE__ */ jsx128(Box6, { sx: { flex: 1, order: { md: 3, xs: 2 } } }),
16190
- /* @__PURE__ */ jsx128(Box6, { sx: { flexShrink: 0, order: { md: 4, xs: 3 } }, children: /* @__PURE__ */ jsx128(
16220
+ ),
16221
+ /* @__PURE__ */ jsx128(Box6, { sx: { "@container (min-width: 960px)": { order: 1 }, "flexShrink": 0, "ml": "auto", "order": -1 }, children: /* @__PURE__ */ jsx128(
16191
16222
  Button3,
16192
16223
  {
16193
16224
  "data-testid": CLEAR_SPANS_TEST_ID,
@@ -16196,7 +16227,8 @@ var SpansDataGrid = ({
16196
16227
  startIcon: /* @__PURE__ */ jsx128(DeleteForeverOutlined, {}),
16197
16228
  children: "Clear Operations"
16198
16229
  }
16199
- ) })
16230
+ ) }),
16231
+ /* @__PURE__ */ jsx128(Box6, { sx: { "@container (min-width: 960px)": { display: "none" }, "flexBasis": "100%", "mt": "-0.5rem", "order": -1 } })
16200
16232
  ] }),
16201
16233
  /* @__PURE__ */ jsxs123(Box6, { sx: { alignItems: "center", display: "flex", gap: "0.5rem", pl: 0.5 }, children: [
16202
16234
  /* @__PURE__ */ jsx128(
@@ -16229,50 +16261,6 @@ var SpansDataGrid = ({
16229
16261
  }
16230
16262
  )
16231
16263
  ] })
16232
- ] }),
16233
- errorCount > 0 && /* @__PURE__ */ jsxs123(Fragment5, { children: [
16234
- /* @__PURE__ */ jsx128(Typography6, { color: "text.secondary", variant: "caption", children: "\xB7" }),
16235
- /* @__PURE__ */ jsx128(Tooltip5, { title: "Number of errors detected across all operations", children: /* @__PURE__ */ jsxs123(
16236
- Box6,
16237
- {
16238
- "data-testid": ERROR_COUNT_TEST_ID,
16239
- sx: {
16240
- alignItems: "center",
16241
- borderBottom: "1px dotted",
16242
- borderColor: "error.main",
16243
- cursor: "help",
16244
- display: "flex",
16245
- gap: 0.5,
16246
- mb: "-1px"
16247
- },
16248
- children: [
16249
- /* @__PURE__ */ jsx128(Typography6, { color: "error", variant: "body2", children: errorCount.toLocaleString() }),
16250
- /* @__PURE__ */ jsx128(Typography6, { color: "error", variant: "caption", children: errorCount === 1 ? "error" : "errors" })
16251
- ]
16252
- }
16253
- ) })
16254
- ] }),
16255
- warningCount > 0 && /* @__PURE__ */ jsxs123(Fragment5, { children: [
16256
- /* @__PURE__ */ jsx128(Typography6, { color: "text.secondary", variant: "caption", children: "\xB7" }),
16257
- /* @__PURE__ */ jsx128(Tooltip5, { title: "Number of warnings detected across all operations", children: /* @__PURE__ */ jsxs123(
16258
- Box6,
16259
- {
16260
- "data-testid": WARNING_COUNT_TEST_ID,
16261
- sx: {
16262
- alignItems: "center",
16263
- borderBottom: "1px dotted",
16264
- borderColor: "warning.main",
16265
- cursor: "help",
16266
- display: "flex",
16267
- gap: 0.5,
16268
- mb: "-1px"
16269
- },
16270
- children: [
16271
- /* @__PURE__ */ jsx128(Typography6, { color: "warning.main", variant: "body2", children: warningCount.toLocaleString() }),
16272
- /* @__PURE__ */ jsx128(Typography6, { color: "warning.main", variant: "caption", children: warningCount === 1 ? "warning" : "warnings" })
16273
- ]
16274
- }
16275
- ) })
16276
16264
  ] })
16277
16265
  ] })
16278
16266
  ] }) }),
@@ -16668,7 +16656,7 @@ var StatusMessage = ({
16668
16656
 
16669
16657
  // src/components/trace-panel/trace-sidebar.tsx
16670
16658
  import { Close as Close4 } from "@mui/icons-material";
16671
- import { Box as Box20, IconButton as IconButton8, ToggleButton as ToggleButton2, ToggleButtonGroup as ToggleButtonGroup2, Typography as Typography15 } from "@mui/material";
16659
+ import { Box as Box20, IconButton as IconButton8, ToggleButton as ToggleButton3, ToggleButtonGroup as ToggleButtonGroup3, Typography as Typography15 } from "@mui/material";
16672
16660
  import { ReactFlowProvider } from "@xyflow/react";
16673
16661
  import * as React125 from "react";
16674
16662
 
@@ -16830,7 +16818,7 @@ function unixNanoToMilliseconds(unixNanoString) {
16830
16818
 
16831
16819
  // src/components/event-details/copy-button.tsx
16832
16820
  import { Check, ContentCopy } from "@mui/icons-material";
16833
- import { IconButton as IconButton4, Tooltip as Tooltip6 } from "@mui/material";
16821
+ import { IconButton as IconButton4, Tooltip as Tooltip5 } from "@mui/material";
16834
16822
  import { useCallback as useCallback3, useState as useState8 } from "react";
16835
16823
  import { jsx as jsx131 } from "react/jsx-runtime";
16836
16824
  var CopyButton = ({ value }) => {
@@ -16844,7 +16832,7 @@ var CopyButton = ({ value }) => {
16844
16832
  }, 1500);
16845
16833
  });
16846
16834
  }, [value]);
16847
- return /* @__PURE__ */ jsx131(Tooltip6, { title: copied ? "Copied!" : "Copy", children: /* @__PURE__ */ jsx131(
16835
+ return /* @__PURE__ */ jsx131(Tooltip5, { title: copied ? "Copied!" : "Copy", children: /* @__PURE__ */ jsx131(
16848
16836
  IconButton4,
16849
16837
  {
16850
16838
  className: "copy-btn",
@@ -31597,7 +31585,7 @@ import { useCallback as useCallback7, useEffect as useEffect16, useRef as useRef
31597
31585
 
31598
31586
  // src/components/trace-graph/service-node.tsx
31599
31587
  import { Cancel as Cancel6, GppBad as GppBad2 } from "@mui/icons-material";
31600
- import { Box as Box17, Divider as Divider4, Stack as Stack5, Tooltip as Tooltip7, Typography as Typography13, useTheme as useTheme4 } from "@mui/material";
31588
+ import { Box as Box17, Divider as Divider4, Stack as Stack5, Tooltip as Tooltip6, Typography as Typography13, useTheme as useTheme4 } from "@mui/material";
31601
31589
  import { Handle, Position } from "@xyflow/react";
31602
31590
  import "@xyflow/react/dist/style.css";
31603
31591
  import "react";
@@ -31664,8 +31652,8 @@ var NodeContent = ({ event, expanded, hasPermissionEvents, isError, isWarning })
31664
31652
  width: "38px"
31665
31653
  },
31666
31654
  children: [
31667
- (isError || isWarning) && hasPermissionEvents && /* @__PURE__ */ jsx143(Tooltip7, { arrow: true, title: "Permission denied", children: /* @__PURE__ */ jsx143(GppBad2, { sx: { color: isError ? theme.palette.error.main : theme.palette.warning.main, fontSize: "16px" } }) }),
31668
- isError && !hasPermissionEvents && /* @__PURE__ */ jsx143(Tooltip7, { arrow: true, title: "Error", children: /* @__PURE__ */ jsx143(Cancel6, { sx: { color: theme.palette.error.main, fontSize: "16px" } }) })
31655
+ (isError || isWarning) && hasPermissionEvents && /* @__PURE__ */ jsx143(Tooltip6, { arrow: true, title: "Permission denied", children: /* @__PURE__ */ jsx143(GppBad2, { sx: { color: isError ? theme.palette.error.main : theme.palette.warning.main, fontSize: "16px" } }) }),
31656
+ isError && !hasPermissionEvents && /* @__PURE__ */ jsx143(Tooltip6, { arrow: true, title: "Error", children: /* @__PURE__ */ jsx143(Cancel6, { sx: { color: theme.palette.error.main, fontSize: "16px" } }) })
31669
31657
  ]
31670
31658
  }
31671
31659
  ),
@@ -32297,7 +32285,7 @@ var getTraceBounds = (spans) => {
32297
32285
 
32298
32286
  // src/components/trace-panel/waterfall.tsx
32299
32287
  import { AccountTreeOutlined, Cancel as Cancel7, Error as ErrorIcon4, FormatListBulleted, KeyboardArrowDown as KeyboardArrowDown2, KeyboardArrowRight as KeyboardArrowRight2 } from "@mui/icons-material";
32300
- import { Box as Box19, ButtonBase, ToggleButton, ToggleButtonGroup, Typography as Typography14 } from "@mui/material";
32288
+ import { Box as Box19, ButtonBase, ToggleButton as ToggleButton2, ToggleButtonGroup as ToggleButtonGroup2, Typography as Typography14 } from "@mui/material";
32301
32289
  import { alpha as alpha5 } from "@mui/material/styles";
32302
32290
  import * as React124 from "react";
32303
32291
 
@@ -32434,7 +32422,7 @@ var WaterfallAxis = ({ durationMs, flat, gridColumns: gridColumns2, onFlatChange
32434
32422
  },
32435
32423
  children: [
32436
32424
  /* @__PURE__ */ jsx147(Box19, { sx: { alignItems: "center", borderRight: 1, borderRightColor: "divider", display: "flex", gridColumn: "1 / 3", pl: "5px" }, children: onFlatChange && /* @__PURE__ */ jsxs136(
32437
- ToggleButtonGroup,
32425
+ ToggleButtonGroup2,
32438
32426
  {
32439
32427
  "aria-label": "Waterfall layout",
32440
32428
  exclusive: true,
@@ -32445,11 +32433,11 @@ var WaterfallAxis = ({ durationMs, flat, gridColumns: gridColumns2, onFlatChange
32445
32433
  sx: { "& .MuiToggleButton-root": { fontSize: 11, gap: "3px", height: 18, lineHeight: 1, px: "6px", py: 0, textTransform: "none" } },
32446
32434
  value: flat ? "list" : "tree",
32447
32435
  children: [
32448
- /* @__PURE__ */ jsxs136(ToggleButton, { "data-testid": WATERFALL_TREE_VIEW_BUTTON_TEST_ID, value: "tree", children: [
32436
+ /* @__PURE__ */ jsxs136(ToggleButton2, { "data-testid": WATERFALL_TREE_VIEW_BUTTON_TEST_ID, value: "tree", children: [
32449
32437
  /* @__PURE__ */ jsx147(AccountTreeOutlined, { sx: { fontSize: 13 } }),
32450
32438
  "Tree"
32451
32439
  ] }),
32452
- /* @__PURE__ */ jsxs136(ToggleButton, { "data-testid": WATERFALL_LIST_VIEW_BUTTON_TEST_ID, value: "list", children: [
32440
+ /* @__PURE__ */ jsxs136(ToggleButton2, { "data-testid": WATERFALL_LIST_VIEW_BUTTON_TEST_ID, value: "list", children: [
32453
32441
  /* @__PURE__ */ jsx147(FormatListBulleted, { sx: { fontSize: 13 } }),
32454
32442
  "List"
32455
32443
  ] })
@@ -32796,7 +32784,7 @@ var TraceSidebar = ({ onClose, onSelectSpan, selectedSpanId, spanMatches, spans
32796
32784
  ].join(" \xB7 ") })
32797
32785
  ] }),
32798
32786
  /* @__PURE__ */ jsxs137(
32799
- ToggleButtonGroup2,
32787
+ ToggleButtonGroup3,
32800
32788
  {
32801
32789
  "aria-label": "Trace view",
32802
32790
  exclusive: true,
@@ -32806,8 +32794,8 @@ var TraceSidebar = ({ onClose, onSelectSpan, selectedSpanId, spanMatches, spans
32806
32794
  size: "small",
32807
32795
  value: view,
32808
32796
  children: [
32809
- /* @__PURE__ */ jsx148(ToggleButton2, { "data-testid": TRACE_SIDEBAR_WATERFALL_BUTTON_TEST_ID, sx: { px: 1.5, py: 0.25, textTransform: "none" }, value: "waterfall", children: "Waterfall" }),
32810
- /* @__PURE__ */ jsx148(ToggleButton2, { "data-testid": TRACE_SIDEBAR_MAP_BUTTON_TEST_ID, sx: { px: 1.5, py: 0.25, textTransform: "none" }, value: "map", children: "Map" })
32797
+ /* @__PURE__ */ jsx148(ToggleButton3, { "data-testid": TRACE_SIDEBAR_WATERFALL_BUTTON_TEST_ID, sx: { px: 1.5, py: 0.25, textTransform: "none" }, value: "waterfall", children: "Waterfall" }),
32798
+ /* @__PURE__ */ jsx148(ToggleButton3, { "data-testid": TRACE_SIDEBAR_MAP_BUTTON_TEST_ID, sx: { px: 1.5, py: 0.25, textTransform: "none" }, value: "map", children: "Map" })
32811
32799
  ]
32812
32800
  }
32813
32801
  ),