@parca/profile 0.19.142 → 0.19.143

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 (135) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/GraphTooltipArrow/useGraphTooltipMetaInfo/index.d.ts.map +1 -1
  3. package/dist/GraphTooltipArrow/useGraphTooltipMetaInfo/index.js +22 -28
  4. package/dist/ProfileExplorer/ProfileExplorerCompare.d.ts.map +1 -1
  5. package/dist/ProfileExplorer/ProfileExplorerCompare.js +72 -73
  6. package/dist/ProfileFlameChart/SamplesStrips/index.d.ts +2 -2
  7. package/dist/ProfileFlameChart/SamplesStrips/index.d.ts.map +1 -1
  8. package/dist/ProfileFlameChart/index.d.ts.map +1 -1
  9. package/dist/ProfileFlameChart/index.js +20 -24
  10. package/dist/ProfileFlameGraph/FlameGraphArrow/ContextMenu.d.ts.map +1 -1
  11. package/dist/ProfileFlameGraph/FlameGraphArrow/ContextMenu.js +13 -14
  12. package/dist/ProfileFlameGraph/FlameGraphArrow/TextWithEllipsis.d.ts.map +1 -1
  13. package/dist/ProfileFlameGraph/FlameGraphArrow/TextWithEllipsis.js +6 -5
  14. package/dist/ProfileFlameGraph/index.d.ts.map +1 -1
  15. package/dist/ProfileFlameGraph/index.js +8 -7
  16. package/dist/ProfileMetricsGraph/index.d.ts.map +1 -1
  17. package/dist/ProfileMetricsGraph/index.js +6 -8
  18. package/dist/ProfileSelector/MetricsGraphSection.d.ts.map +1 -1
  19. package/dist/ProfileSelector/MetricsGraphSection.js +48 -55
  20. package/dist/ProfileSelector/index.d.ts +1 -1
  21. package/dist/ProfileSelector/index.d.ts.map +1 -1
  22. package/dist/ProfileSelector/index.js +216 -210
  23. package/dist/ProfileSelector/useAutoQuerySelector.d.ts +1 -3
  24. package/dist/ProfileSelector/useAutoQuerySelector.d.ts.map +1 -1
  25. package/dist/ProfileSelector/useAutoQuerySelector.js +133 -104
  26. package/dist/ProfileView/components/ActionButtons/SortByDropdown.d.ts.map +1 -1
  27. package/dist/ProfileView/components/ActionButtons/SortByDropdown.js +24 -25
  28. package/dist/ProfileView/components/ColorStackLegend.d.ts.map +1 -1
  29. package/dist/ProfileView/components/ColorStackLegend.js +3 -5
  30. package/dist/ProfileView/components/InvertCallStack/index.d.ts.map +1 -1
  31. package/dist/ProfileView/components/InvertCallStack/index.js +47 -47
  32. package/dist/ProfileView/components/ProfileFilters/useProfileFiltersUrlState.d.ts +1 -2
  33. package/dist/ProfileView/components/ProfileFilters/useProfileFiltersUrlState.d.ts.map +1 -1
  34. package/dist/ProfileView/components/ProfileFilters/useProfileFiltersUrlState.js +37 -34
  35. package/dist/ProfileView/components/Toolbars/MultiLevelDropdown.d.ts.map +1 -1
  36. package/dist/ProfileView/components/Toolbars/MultiLevelDropdown.js +282 -294
  37. package/dist/ProfileView/components/Toolbars/TableColumnsDropdown.d.ts.map +1 -1
  38. package/dist/ProfileView/components/Toolbars/TableColumnsDropdown.js +7 -8
  39. package/dist/ProfileView/components/Toolbars/index.d.ts +2 -2
  40. package/dist/ProfileView/components/Toolbars/index.d.ts.map +1 -1
  41. package/dist/ProfileView/components/Toolbars/index.js +1 -1
  42. package/dist/ProfileView/components/ViewSelector/index.d.ts.map +1 -1
  43. package/dist/ProfileView/components/ViewSelector/index.js +53 -75
  44. package/dist/ProfileView/context/DashboardContext.d.ts.map +1 -1
  45. package/dist/ProfileView/context/DashboardContext.js +36 -44
  46. package/dist/ProfileView/hooks/useResetFlameGraphState.d.ts.map +1 -1
  47. package/dist/ProfileView/hooks/useResetFlameGraphState.js +8 -7
  48. package/dist/ProfileView/hooks/useResetStateOnProfileTypeChange.d.ts.map +1 -1
  49. package/dist/ProfileView/hooks/useResetStateOnProfileTypeChange.js +59 -59
  50. package/dist/ProfileView/hooks/useResetStateOnSeriesChange.d.ts.map +1 -1
  51. package/dist/ProfileView/hooks/useResetStateOnSeriesChange.js +37 -22
  52. package/dist/ProfileView/hooks/useVisualizationState.d.ts +3 -3
  53. package/dist/ProfileView/hooks/useVisualizationState.d.ts.map +1 -1
  54. package/dist/ProfileView/hooks/useVisualizationState.js +116 -147
  55. package/dist/ProfileViewWithData.d.ts.map +1 -1
  56. package/dist/ProfileViewWithData.js +35 -45
  57. package/dist/Sandwich/index.d.ts.map +1 -1
  58. package/dist/Sandwich/index.js +6 -5
  59. package/dist/SourceView/index.d.ts.map +1 -1
  60. package/dist/SourceView/index.js +6 -4
  61. package/dist/SourceView/useSelectedLineRange.d.ts.map +1 -1
  62. package/dist/SourceView/useSelectedLineRange.js +52 -76
  63. package/dist/Table/MoreDropdown.d.ts.map +1 -1
  64. package/dist/Table/MoreDropdown.js +42 -53
  65. package/dist/Table/TableContextMenu.d.ts.map +1 -1
  66. package/dist/Table/TableContextMenu.js +15 -19
  67. package/dist/Table/hooks/useTableConfiguration.d.ts.map +1 -1
  68. package/dist/Table/hooks/useTableConfiguration.js +107 -115
  69. package/dist/Table/index.d.ts.map +1 -1
  70. package/dist/Table/index.js +16 -16
  71. package/dist/TopTable/index.d.ts.map +1 -1
  72. package/dist/TopTable/index.js +112 -127
  73. package/dist/hooks/urlParsers.d.ts +18 -0
  74. package/dist/hooks/urlParsers.d.ts.map +1 -0
  75. package/dist/hooks/urlParsers.js +44 -0
  76. package/dist/hooks/useColorBy.d.ts +5 -0
  77. package/dist/hooks/useColorBy.d.ts.map +1 -0
  78. package/dist/hooks/useColorBy.js +63 -0
  79. package/dist/hooks/useCompareModeMeta.d.ts.map +1 -1
  80. package/dist/hooks/useCompareModeMeta.js +94 -138
  81. package/dist/hooks/useDashboardItems.d.ts +5 -0
  82. package/dist/hooks/useDashboardItems.d.ts.map +1 -0
  83. package/dist/hooks/useDashboardItems.js +68 -0
  84. package/dist/hooks/useQueryState.d.ts +4 -4
  85. package/dist/hooks/useQueryState.d.ts.map +1 -1
  86. package/dist/hooks/useQueryState.js +127 -122
  87. package/dist/index.d.ts +3 -2
  88. package/dist/index.d.ts.map +1 -1
  89. package/dist/index.js +3 -12
  90. package/dist/useSumBy.d.ts +1 -1
  91. package/dist/useSumBy.d.ts.map +1 -1
  92. package/dist/useSumBy.js +2 -2
  93. package/package.json +4 -3
  94. package/src/GraphTooltipArrow/useGraphTooltipMetaInfo/index.ts +11 -13
  95. package/src/ProfileExplorer/ProfileExplorerCompare.tsx +11 -9
  96. package/src/ProfileFlameChart/SamplesStrips/index.tsx +2 -2
  97. package/src/ProfileFlameChart/index.tsx +21 -28
  98. package/src/ProfileFlameGraph/FlameGraphArrow/ContextMenu.tsx +10 -9
  99. package/src/ProfileFlameGraph/FlameGraphArrow/TextWithEllipsis.tsx +5 -3
  100. package/src/ProfileFlameGraph/index.tsx +6 -9
  101. package/src/ProfileMetricsGraph/index.tsx +6 -8
  102. package/src/ProfileSelector/MetricsGraphSection.tsx +5 -10
  103. package/src/ProfileSelector/index.tsx +33 -33
  104. package/src/ProfileSelector/useAutoQuerySelector.ts +64 -42
  105. package/src/ProfileView/components/ActionButtons/SortByDropdown.tsx +10 -6
  106. package/src/ProfileView/components/ColorStackLegend.tsx +2 -4
  107. package/src/ProfileView/components/InvertCallStack/index.tsx +5 -4
  108. package/src/ProfileView/components/ProfileFilters/useProfileFiltersUrlState.test.tsx +94 -192
  109. package/src/ProfileView/components/ProfileFilters/useProfileFiltersUrlState.ts +21 -21
  110. package/src/ProfileView/components/Toolbars/MultiLevelDropdown.tsx +24 -25
  111. package/src/ProfileView/components/Toolbars/TableColumnsDropdown.tsx +4 -5
  112. package/src/ProfileView/components/Toolbars/index.tsx +3 -3
  113. package/src/ProfileView/components/ViewSelector/index.tsx +9 -16
  114. package/src/ProfileView/context/DashboardContext.tsx +6 -6
  115. package/src/ProfileView/hooks/useResetFlameGraphState.ts +6 -4
  116. package/src/ProfileView/hooks/useResetStateOnProfileTypeChange.ts +24 -26
  117. package/src/ProfileView/hooks/useResetStateOnSeriesChange.ts +16 -8
  118. package/src/ProfileView/hooks/useVisualizationState.ts +61 -69
  119. package/src/ProfileViewWithData.tsx +29 -35
  120. package/src/Sandwich/index.tsx +4 -3
  121. package/src/SourceView/index.tsx +4 -2
  122. package/src/SourceView/useSelectedLineRange.ts +34 -19
  123. package/src/Table/MoreDropdown.tsx +9 -11
  124. package/src/Table/TableContextMenu.tsx +10 -13
  125. package/src/Table/hooks/useTableConfiguration.tsx +3 -4
  126. package/src/Table/index.tsx +12 -21
  127. package/src/TopTable/index.tsx +3 -4
  128. package/src/hooks/urlParsers.ts +38 -0
  129. package/src/hooks/useColorBy.ts +42 -0
  130. package/src/hooks/useCompareModeMeta.ts +61 -91
  131. package/src/hooks/useDashboardItems.ts +46 -0
  132. package/src/hooks/useQueryState.test.tsx +275 -345
  133. package/src/hooks/useQueryState.ts +153 -120
  134. package/src/index.tsx +16 -15
  135. package/src/useSumBy.ts +3 -3
@@ -34,9 +34,10 @@ import React, { useCallback, useEffect, useRef, useState } from 'react';
34
34
  import { Menu } from '@headlessui/react';
35
35
  import { Icon } from '@iconify/react';
36
36
  import cx from 'classnames';
37
- import { useURLState } from '@parca/components';
37
+ import { useQueryState } from 'nuqs';
38
38
  import { USER_PREFERENCES, useUserPreference } from '@parca/hooks';
39
39
  import { FIELD_FUNCTION_FILE_NAME, FIELD_FUNCTION_NAME, FIELD_LOCATION_ADDRESS, FIELD_MAPPING_FILE } from '../../../ProfileFlameGraph/FlameGraphArrow';
40
+ import { boolParam, hiddenBinariesParser, stringParam } from '../../../hooks/urlParsers';
40
41
  import { useProfileViewContext } from '../../context/ProfileViewContext';
41
42
  import SwitchMenuItem from './SwitchMenuItem';
42
43
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
@@ -159,7 +160,7 @@ var _MenuItem = function MenuItem(_ref) {
159
160
  });
160
161
  };
161
162
  var MultiLevelDropdown = function MultiLevelDropdown(t0) {
162
- var $ = _c(94);
163
+ var $ = _c(93);
163
164
  var onSelect = t0.onSelect,
164
165
  profileType = t0.profileType,
165
166
  groupBy = t0.groupBy,
@@ -176,34 +177,22 @@ var MultiLevelDropdown = function MultiLevelDropdown(t0) {
176
177
  setShouldOpenLeft = _useState4[1];
177
178
  var t1;
178
179
  if ($[0] === Symbol["for"]("react.memo_cache_sentinel")) {
179
- t1 = {
180
- defaultValue: FIELD_FUNCTION_NAME
181
- };
180
+ t1 = stringParam.withDefault(FIELD_FUNCTION_NAME);
182
181
  $[0] = t1;
183
182
  } else {
184
183
  t1 = $[0];
185
184
  }
186
- var _useURLState = useURLState("sort_by", t1),
187
- _useURLState2 = _slicedToArray(_useURLState, 1),
188
- storeSortBy = _useURLState2[0];
189
- var _useURLState3 = useURLState("color_stack_legend"),
190
- _useURLState4 = _slicedToArray(_useURLState3, 2),
191
- colorStackLegend = _useURLState4[0],
192
- setStoreColorStackLegend = _useURLState4[1];
193
- var t2;
194
- if ($[1] === Symbol["for"]("react.memo_cache_sentinel")) {
195
- t2 = {
196
- defaultValue: [],
197
- alwaysReturnArray: true
198
- };
199
- $[1] = t2;
200
- } else {
201
- t2 = $[1];
202
- }
203
- var _useURLState5 = useURLState("hidden_binaries", t2),
204
- _useURLState6 = _slicedToArray(_useURLState5, 2),
205
- hiddenBinaries = _useURLState6[0],
206
- setHiddenBinaries = _useURLState6[1];
185
+ var _useQueryState = useQueryState("sort_by", t1),
186
+ _useQueryState2 = _slicedToArray(_useQueryState, 1),
187
+ storeSortBy = _useQueryState2[0];
188
+ var _useQueryState3 = useQueryState("color_stack_legend", stringParam),
189
+ _useQueryState4 = _slicedToArray(_useQueryState3, 2),
190
+ colorStackLegend = _useQueryState4[0],
191
+ setStoreColorStackLegend = _useQueryState4[1];
192
+ var _useQueryState5 = useQueryState("hidden_binaries", hiddenBinariesParser),
193
+ _useQueryState6 = _slicedToArray(_useQueryState5, 2),
194
+ hiddenBinaries = _useQueryState6[0],
195
+ setHiddenBinaries = _useQueryState6[1];
207
196
  var _useProfileViewContex = useProfileViewContext(),
208
197
  compareMode = _useProfileViewContex.compareMode;
209
198
  var _useUserPreference = useUserPreference(USER_PREFERENCES.FLAMEGRAPH_COLOR_PROFILE.key),
@@ -211,17 +200,16 @@ var MultiLevelDropdown = function MultiLevelDropdown(t0) {
211
200
  colorProfileName = _useUserPreference2[0];
212
201
  var isColorStackLegendEnabled = colorStackLegend === "true";
213
202
  var isLeftAligned = alignFunctionName === "left";
214
- var compareAbsoluteDefault = (profileType === null || profileType === void 0 ? void 0 : profileType.delta) === false ? "true" : "false";
215
- var _useURLState7 = useURLState("compare_absolute"),
216
- _useURLState8 = _slicedToArray(_useURLState7, 2),
217
- t3 = _useURLState8[0],
218
- setCompareAbsolute = _useURLState8[1];
219
- var compareAbsolute = t3 === undefined ? compareAbsoluteDefault : t3;
220
- var isCompareAbsolute = compareAbsolute === "true";
221
- var t4;
222
- var t5;
223
- if ($[2] !== isTableVizOnly) {
224
- t4 = function t4() {
203
+ var compareAbsoluteDefault = (profileType === null || profileType === void 0 ? void 0 : profileType.delta) === false;
204
+ var _useQueryState7 = useQueryState("compare_absolute", boolParam),
205
+ _useQueryState8 = _slicedToArray(_useQueryState7, 2),
206
+ compareAbsolute = _useQueryState8[0],
207
+ setCompareAbsolute = _useQueryState8[1];
208
+ var isCompareAbsolute = compareAbsolute !== null && compareAbsolute !== void 0 ? compareAbsolute : compareAbsoluteDefault;
209
+ var t2;
210
+ var t3;
211
+ if ($[1] !== isTableVizOnly) {
212
+ t2 = function t2() {
225
213
  var checkOverflow = function checkOverflow() {
226
214
  if (dropdownRef.current !== null) {
227
215
  var rect = dropdownRef.current.getBoundingClientRect();
@@ -238,348 +226,348 @@ var MultiLevelDropdown = function MultiLevelDropdown(t0) {
238
226
  return window.removeEventListener("resize", checkOverflow);
239
227
  };
240
228
  };
241
- t5 = [isTableVizOnly];
242
- $[2] = isTableVizOnly;
243
- $[3] = t4;
244
- $[4] = t5;
229
+ t3 = [isTableVizOnly];
230
+ $[1] = isTableVizOnly;
231
+ $[2] = t2;
232
+ $[3] = t3;
245
233
  } else {
246
- t4 = $[3];
247
- t5 = $[4];
234
+ t2 = $[2];
235
+ t3 = $[3];
248
236
  }
249
- useEffect(t4, t5);
250
- var t6;
251
- if ($[5] !== hiddenBinaries || $[6] !== setHiddenBinaries) {
252
- t6 = function t6(index) {
237
+ useEffect(t2, t3);
238
+ var t4;
239
+ if ($[4] !== hiddenBinaries || $[5] !== setHiddenBinaries) {
240
+ t4 = function t4(index) {
253
241
  var updatedBinaries = _toConsumableArray(hiddenBinaries);
254
242
  updatedBinaries.splice(index, 1);
255
243
  setHiddenBinaries(updatedBinaries);
256
244
  };
257
- $[5] = hiddenBinaries;
258
- $[6] = setHiddenBinaries;
259
- $[7] = t6;
245
+ $[4] = hiddenBinaries;
246
+ $[5] = setHiddenBinaries;
247
+ $[6] = t4;
260
248
  } else {
261
- t6 = $[7];
249
+ t4 = $[6];
262
250
  }
263
- var handleBinaryToggle = t6;
264
- var t7;
265
- if ($[8] !== setStoreColorStackLegend) {
266
- t7 = function t7(value) {
251
+ var handleBinaryToggle = t4;
252
+ var t5;
253
+ if ($[7] !== setStoreColorStackLegend) {
254
+ t5 = function t5(value) {
267
255
  setStoreColorStackLegend(value);
268
256
  };
269
- $[8] = setStoreColorStackLegend;
270
- $[9] = t7;
257
+ $[7] = setStoreColorStackLegend;
258
+ $[8] = t5;
271
259
  } else {
272
- t7 = $[9];
260
+ t5 = $[8];
273
261
  }
274
- var setColorStackLegend = t7;
275
- var t8;
276
- if ($[10] !== setHiddenBinaries) {
277
- t8 = function t8() {
262
+ var setColorStackLegend = t5;
263
+ var t6;
264
+ if ($[9] !== setHiddenBinaries) {
265
+ t6 = function t6() {
278
266
  setHiddenBinaries([]);
279
267
  };
280
- $[10] = setHiddenBinaries;
281
- $[11] = t8;
268
+ $[9] = setHiddenBinaries;
269
+ $[10] = t6;
282
270
  } else {
283
- t8 = $[11];
271
+ t6 = $[10];
284
272
  }
285
- var resetLegend = t8;
286
- var t9;
287
- if ($[12] !== toggleGroupBy) {
288
- t9 = {
273
+ var resetLegend = t6;
274
+ var t7;
275
+ if ($[11] !== toggleGroupBy) {
276
+ t7 = {
289
277
  label: "Function",
290
278
  onclick: function onclick() {
291
279
  return toggleGroupBy(FIELD_FUNCTION_NAME);
292
280
  },
293
281
  value: FIELD_FUNCTION_NAME
294
282
  };
295
- $[12] = toggleGroupBy;
296
- $[13] = t9;
283
+ $[11] = toggleGroupBy;
284
+ $[12] = t7;
297
285
  } else {
298
- t9 = $[13];
286
+ t7 = $[12];
299
287
  }
300
- var t10;
301
- if ($[14] !== toggleGroupBy) {
302
- t10 = {
288
+ var t8;
289
+ if ($[13] !== toggleGroupBy) {
290
+ t8 = {
303
291
  label: "Binary",
304
292
  onclick: function onclick() {
305
293
  return toggleGroupBy(FIELD_MAPPING_FILE);
306
294
  },
307
295
  value: FIELD_MAPPING_FILE
308
296
  };
309
- $[14] = toggleGroupBy;
310
- $[15] = t10;
297
+ $[13] = toggleGroupBy;
298
+ $[14] = t8;
311
299
  } else {
312
- t10 = $[15];
300
+ t8 = $[14];
313
301
  }
314
- var t11;
315
- if ($[16] !== toggleGroupBy) {
316
- t11 = {
302
+ var t9;
303
+ if ($[15] !== toggleGroupBy) {
304
+ t9 = {
317
305
  label: "Code",
318
306
  onclick: function onclick() {
319
307
  return toggleGroupBy(FIELD_FUNCTION_FILE_NAME);
320
308
  },
321
309
  value: FIELD_FUNCTION_FILE_NAME
322
310
  };
323
- $[16] = toggleGroupBy;
324
- $[17] = t11;
311
+ $[15] = toggleGroupBy;
312
+ $[16] = t9;
325
313
  } else {
326
- t11 = $[17];
314
+ t9 = $[16];
327
315
  }
328
- var t12;
329
- if ($[18] !== toggleGroupBy) {
330
- t12 = {
316
+ var t10;
317
+ if ($[17] !== toggleGroupBy) {
318
+ t10 = {
331
319
  label: "Address",
332
320
  onclick: function onclick() {
333
321
  return toggleGroupBy(FIELD_LOCATION_ADDRESS);
334
322
  },
335
323
  value: FIELD_LOCATION_ADDRESS
336
324
  };
337
- $[18] = toggleGroupBy;
338
- $[19] = t12;
325
+ $[17] = toggleGroupBy;
326
+ $[18] = t10;
339
327
  } else {
340
- t12 = $[19];
328
+ t10 = $[18];
341
329
  }
342
- var t13;
343
- if ($[20] !== t10 || $[21] !== t11 || $[22] !== t12 || $[23] !== t9) {
344
- t13 = [t9, t10, t11, t12];
345
- $[20] = t10;
346
- $[21] = t11;
347
- $[22] = t12;
348
- $[23] = t9;
349
- $[24] = t13;
330
+ var t11;
331
+ if ($[19] !== t10 || $[20] !== t7 || $[21] !== t8 || $[22] !== t9) {
332
+ t11 = [t7, t8, t9, t10];
333
+ $[19] = t10;
334
+ $[20] = t7;
335
+ $[21] = t8;
336
+ $[22] = t9;
337
+ $[23] = t11;
350
338
  } else {
351
- t13 = $[24];
339
+ t11 = $[23];
352
340
  }
353
- var t14 = !!isTableVizOnly;
354
- var t15;
355
- if ($[25] !== t13 || $[26] !== t14) {
356
- t15 = {
341
+ var t12 = !!isTableVizOnly;
342
+ var t13;
343
+ if ($[24] !== t11 || $[25] !== t12) {
344
+ t13 = {
357
345
  label: "Levels",
358
346
  id: "h-levels-filter",
359
- items: t13,
360
- hide: t14,
347
+ items: t11,
348
+ hide: t12,
361
349
  icon: "heroicons-solid:bars-3"
362
350
  };
363
- $[25] = t13;
364
- $[26] = t14;
365
- $[27] = t15;
351
+ $[24] = t11;
352
+ $[25] = t12;
353
+ $[26] = t13;
366
354
  } else {
367
- t15 = $[27];
355
+ t13 = $[26];
368
356
  }
369
- var t16;
370
- if ($[28] !== setColorBy) {
371
- t16 = {
357
+ var t14;
358
+ if ($[27] !== setColorBy) {
359
+ t14 = {
372
360
  label: "Binary",
373
361
  onclick: function onclick() {
374
362
  return setColorBy("binary");
375
363
  },
376
364
  value: "binary"
377
365
  };
378
- $[28] = setColorBy;
379
- $[29] = t16;
366
+ $[27] = setColorBy;
367
+ $[28] = t14;
380
368
  } else {
381
- t16 = $[29];
369
+ t14 = $[28];
382
370
  }
383
- var t17;
384
- if ($[30] !== setColorBy) {
385
- t17 = {
371
+ var t15;
372
+ if ($[29] !== setColorBy) {
373
+ t15 = {
386
374
  label: "Filename",
387
375
  onclick: function onclick() {
388
376
  return setColorBy("filename");
389
377
  },
390
378
  value: "filename"
391
379
  };
392
- $[30] = setColorBy;
393
- $[31] = t17;
380
+ $[29] = setColorBy;
381
+ $[30] = t15;
394
382
  } else {
395
- t17 = $[31];
383
+ t15 = $[30];
396
384
  }
397
- var t18;
398
- if ($[32] !== t16 || $[33] !== t17) {
399
- t18 = {
385
+ var t16;
386
+ if ($[31] !== t14 || $[32] !== t15) {
387
+ t16 = {
400
388
  label: "Color by",
401
389
  id: "h-color-by-filter",
402
- items: [t16, t17],
390
+ items: [t14, t15],
403
391
  hide: false,
404
392
  icon: "carbon:color-palette"
405
393
  };
406
- $[32] = t16;
407
- $[33] = t17;
408
- $[34] = t18;
394
+ $[31] = t14;
395
+ $[32] = t15;
396
+ $[33] = t16;
409
397
  } else {
410
- t18 = $[34];
398
+ t16 = $[33];
411
399
  }
412
- var t19 = isColorStackLegendEnabled ? "Hide legend" : "Show legend";
413
- var t20;
414
- if ($[35] !== isColorStackLegendEnabled || $[36] !== setColorStackLegend) {
415
- t20 = function t20() {
400
+ var t17 = isColorStackLegendEnabled ? "Hide legend" : "Show legend";
401
+ var t18;
402
+ if ($[34] !== isColorStackLegendEnabled || $[35] !== setColorStackLegend) {
403
+ t18 = function t18() {
416
404
  return setColorStackLegend(isColorStackLegendEnabled ? "false" : "true");
417
405
  };
418
- $[35] = isColorStackLegendEnabled;
419
- $[36] = setColorStackLegend;
420
- $[37] = t20;
406
+ $[34] = isColorStackLegendEnabled;
407
+ $[35] = setColorStackLegend;
408
+ $[36] = t18;
421
409
  } else {
422
- t20 = $[37];
423
- }
424
- var t21 = compareMode || colorProfileName === "default";
425
- var t22 = isColorStackLegendEnabled ? "ph:eye-closed" : "ph:eye";
426
- var t23;
427
- if ($[38] !== t19 || $[39] !== t20 || $[40] !== t21 || $[41] !== t22) {
428
- t23 = {
429
- label: t19,
430
- onclick: t20,
431
- hide: t21,
410
+ t18 = $[36];
411
+ }
412
+ var t19 = compareMode || colorProfileName === "default";
413
+ var t20 = isColorStackLegendEnabled ? "ph:eye-closed" : "ph:eye";
414
+ var t21;
415
+ if ($[37] !== t17 || $[38] !== t18 || $[39] !== t19 || $[40] !== t20) {
416
+ t21 = {
417
+ label: t17,
418
+ onclick: t18,
419
+ hide: t19,
432
420
  id: "h-show-legend-button",
433
- icon: t22
421
+ icon: t20
434
422
  };
435
- $[38] = t19;
436
- $[39] = t20;
437
- $[40] = t21;
438
- $[41] = t22;
439
- $[42] = t23;
423
+ $[37] = t17;
424
+ $[38] = t18;
425
+ $[39] = t19;
426
+ $[40] = t20;
427
+ $[41] = t21;
440
428
  } else {
441
- t23 = $[42];
429
+ t21 = $[41];
442
430
  }
443
- var t24 = isLeftAligned ? "Right-align function names" : "Left-align function names";
444
- var t25;
445
- if ($[43] !== isLeftAligned || $[44] !== setAlignFunctionName) {
446
- t25 = function t25() {
431
+ var t22 = isLeftAligned ? "Right-align function names" : "Left-align function names";
432
+ var t23;
433
+ if ($[42] !== isLeftAligned || $[43] !== setAlignFunctionName) {
434
+ t23 = function t23() {
447
435
  return setAlignFunctionName(isLeftAligned ? "right" : "left");
448
436
  };
449
- $[43] = isLeftAligned;
450
- $[44] = setAlignFunctionName;
451
- $[45] = t25;
437
+ $[42] = isLeftAligned;
438
+ $[43] = setAlignFunctionName;
439
+ $[44] = t23;
452
440
  } else {
453
- t25 = $[45];
454
- }
455
- var t26 = !!isTableVizOnly;
456
- var t27 = isLeftAligned ? "ic:outline-align-horizontal-right" : "ic:outline-align-horizontal-left";
457
- var t28;
458
- if ($[46] !== t24 || $[47] !== t25 || $[48] !== t26 || $[49] !== t27) {
459
- t28 = {
460
- label: t24,
461
- onclick: t25,
441
+ t23 = $[44];
442
+ }
443
+ var t24 = !!isTableVizOnly;
444
+ var t25 = isLeftAligned ? "ic:outline-align-horizontal-right" : "ic:outline-align-horizontal-left";
445
+ var t26;
446
+ if ($[45] !== t22 || $[46] !== t23 || $[47] !== t24 || $[48] !== t25) {
447
+ t26 = {
448
+ label: t22,
449
+ onclick: t23,
462
450
  id: "h-align-function-names",
463
- hide: t26,
464
- icon: t27
451
+ hide: t24,
452
+ icon: t25
465
453
  };
466
- $[46] = t24;
467
- $[47] = t25;
468
- $[48] = t26;
469
- $[49] = t27;
470
- $[50] = t28;
454
+ $[45] = t22;
455
+ $[46] = t23;
456
+ $[47] = t24;
457
+ $[48] = t25;
458
+ $[49] = t26;
471
459
  } else {
472
- t28 = $[50];
460
+ t26 = $[49];
473
461
  }
474
- var t29 = isCompareAbsolute ? "Compare Relative" : "Compare Absolute";
475
- var t30;
476
- if ($[51] !== isCompareAbsolute || $[52] !== setCompareAbsolute) {
477
- t30 = function t30() {
478
- return setCompareAbsolute(isCompareAbsolute ? "false" : "true");
462
+ var t27 = isCompareAbsolute ? "Compare Relative" : "Compare Absolute";
463
+ var t28;
464
+ if ($[50] !== isCompareAbsolute || $[51] !== setCompareAbsolute) {
465
+ t28 = function t28() {
466
+ return void setCompareAbsolute(!isCompareAbsolute);
479
467
  };
480
- $[51] = isCompareAbsolute;
481
- $[52] = setCompareAbsolute;
482
- $[53] = t30;
468
+ $[50] = isCompareAbsolute;
469
+ $[51] = setCompareAbsolute;
470
+ $[52] = t28;
483
471
  } else {
484
- t30 = $[53];
485
- }
486
- var t31 = !compareMode;
487
- var t32 = isCompareAbsolute ? "fluent-mdl2:compare" : "fluent-mdl2:compare-uneven";
488
- var t33;
489
- if ($[54] !== t29 || $[55] !== t30 || $[56] !== t31 || $[57] !== t32) {
490
- t33 = {
491
- label: t29,
492
- onclick: t30,
493
- hide: t31,
494
- icon: t32
472
+ t28 = $[52];
473
+ }
474
+ var t29 = !compareMode;
475
+ var t30 = isCompareAbsolute ? "fluent-mdl2:compare" : "fluent-mdl2:compare-uneven";
476
+ var t31;
477
+ if ($[53] !== t27 || $[54] !== t28 || $[55] !== t29 || $[56] !== t30) {
478
+ t31 = {
479
+ label: t27,
480
+ onclick: t28,
481
+ hide: t29,
482
+ icon: t30
495
483
  };
496
- $[54] = t29;
497
- $[55] = t30;
498
- $[56] = t31;
499
- $[57] = t32;
500
- $[58] = t33;
484
+ $[53] = t27;
485
+ $[54] = t28;
486
+ $[55] = t29;
487
+ $[56] = t30;
488
+ $[57] = t31;
501
489
  } else {
502
- t33 = $[58];
490
+ t31 = $[57];
503
491
  }
504
- var t34 = !!isTableVizOnly;
505
- var t35;
506
- if ($[59] === Symbol["for"]("react.memo_cache_sentinel")) {
507
- t35 = /*#__PURE__*/_jsx(SwitchMenuItem, {
492
+ var t32 = !!isTableVizOnly;
493
+ var t33;
494
+ if ($[58] === Symbol["for"]("react.memo_cache_sentinel")) {
495
+ t33 = /*#__PURE__*/_jsx(SwitchMenuItem, {
508
496
  label: "Dock graph tooltip",
509
497
  id: "h-dock-graph-meta-info",
510
498
  userPreferenceDetails: USER_PREFERENCES.GRAPH_METAINFO_DOCKED
511
499
  });
512
- $[59] = t35;
500
+ $[58] = t33;
513
501
  } else {
514
- t35 = $[59];
502
+ t33 = $[58];
515
503
  }
516
- var t36;
517
- if ($[60] !== t34) {
518
- t36 = {
504
+ var t34;
505
+ if ($[59] !== t32) {
506
+ t34 = {
519
507
  label: "Dock Graph MetaInfo",
520
- hide: t34,
521
- customSubmenu: t35,
508
+ hide: t32,
509
+ customSubmenu: t33,
522
510
  renderAsDiv: true
523
511
  };
512
+ $[59] = t32;
524
513
  $[60] = t34;
525
- $[61] = t36;
526
514
  } else {
527
- t36 = $[61];
515
+ t34 = $[60];
528
516
  }
529
- var t37 = !!isTableVizOnly;
530
- var t38;
531
- if ($[62] === Symbol["for"]("react.memo_cache_sentinel")) {
532
- t38 = /*#__PURE__*/_jsx(SwitchMenuItem, {
517
+ var t35 = !!isTableVizOnly;
518
+ var t36;
519
+ if ($[61] === Symbol["for"]("react.memo_cache_sentinel")) {
520
+ t36 = /*#__PURE__*/_jsx(SwitchMenuItem, {
533
521
  label: "Highlight similar stacks when hovering over a node",
534
522
  id: "h-highlight-similar-stacks",
535
523
  userPreferenceDetails: USER_PREFERENCES.HIGHLIGHT_SIMILAR_STACKS
536
524
  });
537
- $[62] = t38;
525
+ $[61] = t36;
538
526
  } else {
539
- t38 = $[62];
527
+ t36 = $[61];
540
528
  }
541
- var t39;
542
- if ($[63] !== t37) {
543
- t39 = {
529
+ var t37;
530
+ if ($[62] !== t35) {
531
+ t37 = {
544
532
  label: "Highlight similar stacks when hovering over a node",
545
- hide: t37,
546
- customSubmenu: t38,
533
+ hide: t35,
534
+ customSubmenu: t36,
547
535
  renderAsDiv: true
548
536
  };
537
+ $[62] = t35;
549
538
  $[63] = t37;
550
- $[64] = t39;
551
539
  } else {
552
- t39 = $[64];
540
+ t37 = $[63];
553
541
  }
554
- var t40 = hiddenBinaries === undefined || hiddenBinaries.length === 0;
555
- var t41;
556
- if ($[65] !== resetLegend) {
557
- t41 = function t41() {
542
+ var t38 = hiddenBinaries.length === 0;
543
+ var t39;
544
+ if ($[64] !== resetLegend) {
545
+ t39 = function t39() {
558
546
  return resetLegend();
559
547
  };
560
- $[65] = resetLegend;
561
- $[66] = t41;
548
+ $[64] = resetLegend;
549
+ $[65] = t39;
562
550
  } else {
563
- t41 = $[66];
551
+ t39 = $[65];
564
552
  }
565
- var t42;
566
- if ($[67] !== t40 || $[68] !== t41) {
567
- t42 = {
553
+ var t40;
554
+ if ($[66] !== t38 || $[67] !== t39) {
555
+ t40 = {
568
556
  label: "Reset Legend",
569
- hide: t40,
570
- onclick: t41,
557
+ hide: t38,
558
+ onclick: t39,
571
559
  id: "h-reset-legend-button",
572
560
  icon: "system-uicons:reset"
573
561
  };
574
- $[67] = t40;
575
- $[68] = t41;
576
- $[69] = t42;
562
+ $[66] = t38;
563
+ $[67] = t39;
564
+ $[68] = t40;
577
565
  } else {
578
- t42 = $[69];
566
+ t40 = $[68];
579
567
  }
580
- var t43;
581
- if ($[70] !== handleBinaryToggle || $[71] !== hiddenBinaries) {
582
- t43 = hiddenBinaries === null || hiddenBinaries === void 0 ? void 0 : hiddenBinaries.map(function (binary, index_0) {
568
+ var t41;
569
+ if ($[69] !== handleBinaryToggle || $[70] !== hiddenBinaries) {
570
+ t41 = hiddenBinaries.map(function (binary, index_0) {
583
571
  return {
584
572
  label: binary,
585
573
  customSubmenu: /*#__PURE__*/_jsxs("div", {
@@ -599,55 +587,55 @@ var MultiLevelDropdown = function MultiLevelDropdown(t0) {
599
587
  })
600
588
  };
601
589
  });
602
- $[70] = handleBinaryToggle;
603
- $[71] = hiddenBinaries;
604
- $[72] = t43;
590
+ $[69] = handleBinaryToggle;
591
+ $[70] = hiddenBinaries;
592
+ $[71] = t41;
605
593
  } else {
606
- t43 = $[72];
594
+ t41 = $[71];
607
595
  }
608
- var t44 = hiddenBinaries === undefined || hiddenBinaries.length === 0;
609
- var t45;
610
- if ($[73] !== t43 || $[74] !== t44) {
611
- t45 = {
596
+ var t42 = hiddenBinaries.length === 0;
597
+ var t43;
598
+ if ($[72] !== t41 || $[73] !== t42) {
599
+ t43 = {
612
600
  label: "Hidden Binaries",
613
601
  id: "h-hidden-binaries",
614
- items: t43,
615
- hide: t44,
602
+ items: t41,
603
+ hide: t42,
616
604
  icon: "ph:eye-closed"
617
605
  };
618
- $[73] = t43;
619
- $[74] = t44;
620
- $[75] = t45;
606
+ $[72] = t41;
607
+ $[73] = t42;
608
+ $[74] = t43;
621
609
  } else {
622
- t45 = $[75];
623
- }
624
- var t46;
625
- if ($[76] !== t15 || $[77] !== t18 || $[78] !== t23 || $[79] !== t28 || $[80] !== t33 || $[81] !== t36 || $[82] !== t39 || $[83] !== t42 || $[84] !== t45) {
626
- t46 = [t15, t18, t23, t28, t33, t36, t39, t42, t45];
627
- $[76] = t15;
628
- $[77] = t18;
629
- $[78] = t23;
630
- $[79] = t28;
631
- $[80] = t33;
632
- $[81] = t36;
633
- $[82] = t39;
634
- $[83] = t42;
635
- $[84] = t45;
636
- $[85] = t46;
610
+ t43 = $[74];
611
+ }
612
+ var t44;
613
+ if ($[75] !== t13 || $[76] !== t16 || $[77] !== t21 || $[78] !== t26 || $[79] !== t31 || $[80] !== t34 || $[81] !== t37 || $[82] !== t40 || $[83] !== t43) {
614
+ t44 = [t13, t16, t21, t26, t31, t34, t37, t40, t43];
615
+ $[75] = t13;
616
+ $[76] = t16;
617
+ $[77] = t21;
618
+ $[78] = t26;
619
+ $[79] = t31;
620
+ $[80] = t34;
621
+ $[81] = t37;
622
+ $[82] = t40;
623
+ $[83] = t43;
624
+ $[84] = t44;
637
625
  } else {
638
- t46 = $[85];
626
+ t44 = $[84];
639
627
  }
640
- var menuItems = t46;
641
- var t47;
642
- if ($[86] !== colorBy || $[87] !== groupBy || $[88] !== isTableVizOnly || $[89] !== menuItems || $[90] !== onSelect || $[91] !== shouldOpenLeft || $[92] !== storeSortBy) {
643
- t47 = /*#__PURE__*/_jsx("div", {
628
+ var menuItems = t44;
629
+ var t45;
630
+ if ($[85] !== colorBy || $[86] !== groupBy || $[87] !== isTableVizOnly || $[88] !== menuItems || $[89] !== onSelect || $[90] !== shouldOpenLeft || $[91] !== storeSortBy) {
631
+ t45 = /*#__PURE__*/_jsx("div", {
644
632
  className: "relative inline-block text-left",
645
633
  id: "h-visualisation-toolbar-actions",
646
634
  ref: dropdownRef,
647
635
  children: /*#__PURE__*/_jsx(Menu, {
648
- children: function children(t48) {
649
- var open = t48.open,
650
- close = t48.close;
636
+ children: function children(t46) {
637
+ var open = t46.open,
638
+ close = t46.close;
651
639
  return /*#__PURE__*/_jsxs(_Fragment, {
652
640
  children: [/*#__PURE__*/_jsxs(Menu.Button, {
653
641
  className: "flex dark:bg-gray-900 dark:border-gray-600 justify-center w-full px-4 py-2 text-sm font-normal text-gray-600 dark:text-gray-200 bg-white rounded-md focus:outline-none focus-visible:ring-2 focus-visible:ring-white focus-visible:ring-opacity-75 border border-gray-200 pr-[1.7rem]",
@@ -673,7 +661,7 @@ var MultiLevelDropdown = function MultiLevelDropdown(t0) {
673
661
  onSelect: onSelect,
674
662
  closeDropdown: close,
675
663
  activeValueForSortBy: storeSortBy,
676
- activeValueForColorBy: colorBy === undefined || colorBy === "" ? "binary" : colorBy,
664
+ activeValueForColorBy: colorBy,
677
665
  activeValuesForLevel: groupBy,
678
666
  renderAsDiv: item_0.renderAsDiv
679
667
  }), index_1);
@@ -683,18 +671,18 @@ var MultiLevelDropdown = function MultiLevelDropdown(t0) {
683
671
  }
684
672
  })
685
673
  });
686
- $[86] = colorBy;
687
- $[87] = groupBy;
688
- $[88] = isTableVizOnly;
689
- $[89] = menuItems;
690
- $[90] = onSelect;
691
- $[91] = shouldOpenLeft;
692
- $[92] = storeSortBy;
693
- $[93] = t47;
674
+ $[85] = colorBy;
675
+ $[86] = groupBy;
676
+ $[87] = isTableVizOnly;
677
+ $[88] = menuItems;
678
+ $[89] = onSelect;
679
+ $[90] = shouldOpenLeft;
680
+ $[91] = storeSortBy;
681
+ $[92] = t45;
694
682
  } else {
695
- t47 = $[93];
683
+ t45 = $[92];
696
684
  }
697
- return t47;
685
+ return t45;
698
686
  };
699
687
  export default MultiLevelDropdown;
700
688
  function _temp(item) {