@parca/profile 0.16.143 → 0.16.145
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/CHANGELOG.md +10 -0
- package/dist/Callgraph/index.js +1 -1
- package/dist/GraphTooltip/index.js +1 -1
- package/dist/MatchersInput/index.js +1 -1
- package/dist/MetricsGraph/MetricsTooltip/index.js +1 -1
- package/dist/MetricsGraph/index.js +2 -2
- package/dist/ProfileExplorer/ProfileExplorerCompare.d.ts +1 -1
- package/dist/ProfileExplorer/ProfileExplorerSingle.d.ts +1 -1
- package/dist/ProfileExplorer/index.d.ts +1 -1
- package/dist/ProfileIcicleGraph/IcicleGraph/ColorStackLegend.d.ts +1 -1
- package/dist/ProfileIcicleGraph/IcicleGraph/ColorStackLegend.js +1 -1
- package/dist/ProfileIcicleGraph/IcicleGraph/IcicleGraphNodes.js +1 -1
- package/dist/ProfileIcicleGraph/IcicleGraph/index.d.ts +1 -1
- package/dist/ProfileIcicleGraph/IcicleGraph/index.js +1 -1
- package/dist/ProfileIcicleGraph/IcicleGraph/useColoredGraph.js +1 -1
- package/dist/ProfileIcicleGraph/IcicleGraph/useNodeColor.js +1 -1
- package/dist/ProfileIcicleGraph/IcicleGraph/utils.js +1 -1
- package/dist/ProfileIcicleGraph/index.d.ts +1 -1
- package/dist/ProfileIcicleGraph/index.js +8 -6
- package/dist/ProfileMetricsGraph/index.js +1 -1
- package/dist/ProfileSelector/index.js +1 -1
- package/dist/ProfileSource.js +1 -1
- package/dist/ProfileView/FilterByFunctionButton.d.ts +1 -1
- package/dist/ProfileView/ViewSelector.d.ts +1 -1
- package/dist/ProfileView/ViewSelector.js +1 -1
- package/dist/ProfileView/VisualizationPanel.d.ts +1 -1
- package/dist/ProfileView/index.js +2 -2
- package/dist/ProfileViewWithData.d.ts +1 -1
- package/dist/ProfileViewWithData.js +2 -2
- package/dist/TopTable/index.d.ts +1 -1
- package/dist/TopTable/index.js +1 -1
- package/dist/components/DiffLegend.js +1 -1
- package/package.json +8 -6
- package/src/Callgraph/index.tsx +1 -1
- package/src/GraphTooltip/index.tsx +1 -1
- package/src/MatchersInput/index.tsx +1 -1
- package/src/MetricsGraph/MetricsTooltip/index.tsx +1 -1
- package/src/MetricsGraph/index.tsx +2 -2
- package/src/ProfileExplorer/ProfileExplorerCompare.tsx +1 -1
- package/src/ProfileExplorer/ProfileExplorerSingle.tsx +1 -1
- package/src/ProfileExplorer/index.tsx +1 -1
- package/src/ProfileIcicleGraph/IcicleGraph/ColorStackLegend.tsx +2 -2
- package/src/ProfileIcicleGraph/IcicleGraph/IcicleGraphNodes.tsx +1 -1
- package/src/ProfileIcicleGraph/IcicleGraph/index.tsx +1 -1
- package/src/ProfileIcicleGraph/IcicleGraph/useColoredGraph.ts +2 -2
- package/src/ProfileIcicleGraph/IcicleGraph/useNodeColor.ts +1 -1
- package/src/ProfileIcicleGraph/IcicleGraph/utils.ts +1 -1
- package/src/ProfileIcicleGraph/index.tsx +10 -15
- package/src/ProfileMetricsGraph/index.tsx +1 -1
- package/src/ProfileSelector/index.tsx +1 -1
- package/src/ProfileSource.tsx +1 -1
- package/src/ProfileView/FilterByFunctionButton.tsx +1 -1
- package/src/ProfileView/ViewSelector.tsx +2 -2
- package/src/ProfileView/VisualizationPanel.tsx +1 -1
- package/src/ProfileView/index.tsx +2 -2
- package/src/ProfileViewWithData.tsx +2 -2
- package/src/TopTable/index.tsx +1 -1
- package/src/components/DiffLegend.tsx +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,16 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [0.16.145](https://github.com/parca-dev/parca/compare/@parca/profile@0.16.144...@parca/profile@0.16.145) (2023-03-21)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @parca/profile
|
|
9
|
+
|
|
10
|
+
## [0.16.144](https://github.com/parca-dev/parca/compare/@parca/profile@0.16.143...@parca/profile@0.16.144) (2023-03-21)
|
|
11
|
+
|
|
12
|
+
# 0.16.0 (2023-03-01)
|
|
13
|
+
|
|
14
|
+
**Note:** Version bump only for package @parca/profile
|
|
15
|
+
|
|
6
16
|
## [0.16.143](https://github.com/parca-dev/parca/compare/@parca/profile@0.16.142...@parca/profile@0.16.143) (2023-03-21)
|
|
7
17
|
|
|
8
18
|
**Note:** Version bump only for package @parca/profile
|
package/dist/Callgraph/index.js
CHANGED
|
@@ -28,8 +28,8 @@ import * as d3 from 'd3';
|
|
|
28
28
|
import SVG from 'react-inlinesvg';
|
|
29
29
|
import { MapInteractionCSS } from 'react-map-interaction';
|
|
30
30
|
import { Button, useKeyDown, useURLState } from '@parca/components';
|
|
31
|
-
import { getNewSpanColor } from '@parca/functions';
|
|
32
31
|
import { selectDarkMode, setHoveringNode, useAppDispatch, useAppSelector } from '@parca/store';
|
|
32
|
+
import { getNewSpanColor } from '@parca/utilities';
|
|
33
33
|
import GraphTooltip from '../GraphTooltip';
|
|
34
34
|
var Callgraph = function (_a) {
|
|
35
35
|
var data = _a.data, svgString = _a.svgString, sampleUnit = _a.sampleUnit, width = _a.width;
|
|
@@ -38,8 +38,8 @@ import { pointer } from 'd3-selection';
|
|
|
38
38
|
import { CopyToClipboard } from 'react-copy-to-clipboard';
|
|
39
39
|
import { usePopper } from 'react-popper';
|
|
40
40
|
import { useKeyDown } from '@parca/components';
|
|
41
|
-
import { getLastItem, valueFormatter } from '@parca/functions';
|
|
42
41
|
import { selectHoveringNode, useAppSelector } from '@parca/store';
|
|
42
|
+
import { getLastItem, valueFormatter } from '@parca/utilities';
|
|
43
43
|
import { hexifyAddress, truncateString, truncateStringReverse } from '../';
|
|
44
44
|
import { ExpandOnHover } from './ExpandOnHoverValue';
|
|
45
45
|
var NoData = function () {
|
|
@@ -26,8 +26,8 @@ import { useEffect, useMemo, useRef, useState } from 'react';
|
|
|
26
26
|
import cx from 'classnames';
|
|
27
27
|
import TextareaAutosize from 'react-textarea-autosize';
|
|
28
28
|
import { useGrpcMetadata } from '@parca/components';
|
|
29
|
-
import { sanitizeLabelValue } from '@parca/functions';
|
|
30
29
|
import { Query } from '@parca/parser';
|
|
30
|
+
import { sanitizeLabelValue } from '@parca/utilities';
|
|
31
31
|
import SuggestionsList, { Suggestion, Suggestions } from './SuggestionsList';
|
|
32
32
|
export var useLabelNames = function (client) {
|
|
33
33
|
var _a = useState(true), loading = _a[0], setLoading = _a[1];
|
|
@@ -36,7 +36,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
36
36
|
import { useEffect, useState } from 'react';
|
|
37
37
|
import { usePopper } from 'react-popper';
|
|
38
38
|
import { TextWithTooltip } from '@parca/components';
|
|
39
|
-
import { formatDate, valueFormatter } from '@parca/
|
|
39
|
+
import { formatDate, valueFormatter } from '@parca/utilities';
|
|
40
40
|
import { timeFormat } from '../../';
|
|
41
41
|
var virtualElement = {
|
|
42
42
|
getBoundingClientRect: function () {
|
|
@@ -27,8 +27,8 @@ import * as d3 from 'd3';
|
|
|
27
27
|
import { pointer } from 'd3-selection';
|
|
28
28
|
import throttle from 'lodash.throttle';
|
|
29
29
|
import { DateTimeRange, useKeyDown } from '@parca/components';
|
|
30
|
-
import { useContainerDimensions } from '@parca/
|
|
31
|
-
import { formatDate, formatForTimespan, sanitizeHighlightedValues, valueFormatter, } from '@parca/
|
|
30
|
+
import { useContainerDimensions } from '@parca/hooks';
|
|
31
|
+
import { formatDate, formatForTimespan, sanitizeHighlightedValues, valueFormatter, } from '@parca/utilities';
|
|
32
32
|
import MetricsCircle from '../MetricsCircle';
|
|
33
33
|
import MetricsSeries from '../MetricsSeries';
|
|
34
34
|
import MetricsTooltip from './MetricsTooltip';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { QueryServiceClient } from '@parca/client';
|
|
3
|
-
import type { NavigateFunction } from '@parca/
|
|
3
|
+
import type { NavigateFunction } from '@parca/utilities';
|
|
4
4
|
import { ProfileSelection } from '..';
|
|
5
5
|
import { QuerySelection } from '../ProfileSelector';
|
|
6
6
|
interface ProfileExplorerCompareProps {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { QueryServiceClient } from '@parca/client';
|
|
3
|
-
import type { NavigateFunction } from '@parca/
|
|
3
|
+
import type { NavigateFunction } from '@parca/utilities';
|
|
4
4
|
import { ProfileSelection } from '..';
|
|
5
5
|
import { QuerySelection } from '../ProfileSelector';
|
|
6
6
|
interface ProfileExplorerSingleProps {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { QueryServiceClient } from '@parca/client';
|
|
3
|
-
import type { NavigateFunction } from '@parca/
|
|
3
|
+
import type { NavigateFunction } from '@parca/utilities';
|
|
4
4
|
interface ProfileExplorerProps {
|
|
5
5
|
queryClient: QueryServiceClient;
|
|
6
6
|
queryParams: any;
|
|
@@ -26,7 +26,7 @@ import { useMemo } from 'react';
|
|
|
26
26
|
import { Icon } from '@iconify/react';
|
|
27
27
|
import cx from 'classnames';
|
|
28
28
|
import { useURLState } from '@parca/components';
|
|
29
|
-
import
|
|
29
|
+
import { USER_PREFERENCES, useUserPreference } from '@parca/hooks';
|
|
30
30
|
import { EVERYTHING_ELSE, selectStackColors, useAppSelector } from '@parca/store';
|
|
31
31
|
var ColorStackLegend = function (_a) {
|
|
32
32
|
var navigateTo = _a.navigateTo, _b = _a.compareMode, compareMode = _b === void 0 ? false : _b;
|
|
@@ -26,8 +26,8 @@ import React, { useMemo } from 'react';
|
|
|
26
26
|
import cx from 'classnames';
|
|
27
27
|
import { scaleLinear } from 'd3-scale';
|
|
28
28
|
import { useKeyDown } from '@parca/components';
|
|
29
|
-
import { isSearchMatch } from '@parca/functions';
|
|
30
29
|
import { selectBinaries, setHoveringNode, useAppDispatch, useAppSelector } from '@parca/store';
|
|
30
|
+
import { isSearchMatch } from '@parca/utilities';
|
|
31
31
|
import useNodeColor from './useNodeColor';
|
|
32
32
|
import { nodeLabel } from './utils';
|
|
33
33
|
export var RowHeight = 26;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { Flamegraph } from '@parca/client';
|
|
3
|
-
import { type NavigateFunction } from '@parca/
|
|
3
|
+
import { type NavigateFunction } from '@parca/utilities';
|
|
4
4
|
interface IcicleGraphProps {
|
|
5
5
|
graph: Flamegraph;
|
|
6
6
|
sampleUnit: string;
|
|
@@ -24,8 +24,8 @@ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-run
|
|
|
24
24
|
// limitations under the License.
|
|
25
25
|
import { memo, useEffect, useMemo, useRef, useState } from 'react';
|
|
26
26
|
import { scaleLinear } from 'd3-scale';
|
|
27
|
-
import { selectQueryParam } from '@parca/functions';
|
|
28
27
|
import { setHoveringNode, useAppDispatch } from '@parca/store';
|
|
28
|
+
import { selectQueryParam } from '@parca/utilities';
|
|
29
29
|
import GraphTooltip from '../../GraphTooltip';
|
|
30
30
|
import ColorStackLegend from './ColorStackLegend';
|
|
31
31
|
import { IcicleNode, RowHeight } from './IcicleGraphNodes';
|
|
@@ -22,7 +22,7 @@ var __assign = (this && this.__assign) || function () {
|
|
|
22
22
|
return __assign.apply(this, arguments);
|
|
23
23
|
};
|
|
24
24
|
import { useEffect, useMemo } from 'react';
|
|
25
|
-
import
|
|
25
|
+
import { USER_PREFERENCES, useUserPreference } from '@parca/hooks';
|
|
26
26
|
import { selectDarkMode, setFeatures, useAppDispatch, useAppSelector, } from '@parca/store';
|
|
27
27
|
import { extractFeature } from './utils';
|
|
28
28
|
var colorNodes = function (nodes, strings, mappings, locations, functions, features) {
|
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
// See the License for the specific language governing permissions and
|
|
12
12
|
// limitations under the License.
|
|
13
13
|
import { useMemo } from 'react';
|
|
14
|
-
import { COLOR_PROFILES, diffColor } from '@parca/functions';
|
|
15
14
|
import { EVERYTHING_ELSE, selectDarkMode, selectStackColors, useAppSelector } from '@parca/store';
|
|
15
|
+
import { COLOR_PROFILES, diffColor } from '@parca/utilities';
|
|
16
16
|
var useNodeColor = function (_a) {
|
|
17
17
|
var data = _a.data, compareMode = _a.compareMode;
|
|
18
18
|
var colors = useAppSelector(selectStackColors);
|
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
11
11
|
// See the License for the specific language governing permissions and
|
|
12
12
|
// limitations under the License.
|
|
13
|
-
import { getLastItem } from '@parca/functions';
|
|
14
13
|
import { EVERYTHING_ELSE, FEATURE_TYPES } from '@parca/store';
|
|
14
|
+
import { getLastItem } from '@parca/utilities';
|
|
15
15
|
import { hexifyAddress } from '../../utils';
|
|
16
16
|
export var getBinaryName = function (node, mappings, locations, strings) {
|
|
17
17
|
var _a, _b;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { Flamegraph } from '@parca/client';
|
|
3
|
-
import { type NavigateFunction } from '@parca/
|
|
3
|
+
import { type NavigateFunction } from '@parca/utilities';
|
|
4
4
|
export type ResizeHandler = (width: number, height: number) => void;
|
|
5
5
|
interface ProfileIcicleGraphProps {
|
|
6
6
|
width?: number;
|
|
@@ -24,8 +24,8 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
|
|
|
24
24
|
// limitations under the License.
|
|
25
25
|
import { useEffect, useMemo } from 'react';
|
|
26
26
|
import { Button } from '@parca/components';
|
|
27
|
-
import { useContainerDimensions } from '@parca/
|
|
28
|
-
import { selectQueryParam } from '@parca/
|
|
27
|
+
import { useContainerDimensions } from '@parca/hooks';
|
|
28
|
+
import { selectQueryParam } from '@parca/utilities';
|
|
29
29
|
import DiffLegend from '../components/DiffLegend';
|
|
30
30
|
import { IcicleGraph } from './IcicleGraph';
|
|
31
31
|
var numberFormatter = new Intl.NumberFormat('en-US');
|
|
@@ -55,10 +55,9 @@ var ProfileIcicleGraph = function (_a) {
|
|
|
55
55
|
numberFormatter.format(trimmed),
|
|
56
56
|
numberFormatter.format((trimmed * BigInt(100)) / rawTotalDivisor),
|
|
57
57
|
filtered > 0,
|
|
58
|
-
numberFormatter.format(
|
|
59
|
-
numberFormatter.format((filtered * BigInt(100)) / rawTotalDivisor),
|
|
58
|
+
numberFormatter.format((total * BigInt(100)) / rawTotalDivisor),
|
|
60
59
|
];
|
|
61
|
-
}, [filtered, graph, total]), totalFormatted = _c[0], rawFormatted = _c[1], isTrimmed = _c[2], trimmedFormatted = _c[3], trimmedPercentage = _c[4], isFiltered = _c[5],
|
|
60
|
+
}, [filtered, graph, total]), totalFormatted = _c[0], rawFormatted = _c[1], isTrimmed = _c[2], trimmedFormatted = _c[3], trimmedPercentage = _c[4], isFiltered = _c[5], filteredPercentage = _c[6];
|
|
62
61
|
useEffect(function () {
|
|
63
62
|
if (setActionButtons === undefined) {
|
|
64
63
|
return;
|
|
@@ -69,6 +68,9 @@ var ProfileIcicleGraph = function (_a) {
|
|
|
69
68
|
return _jsx("div", { children: "no data..." });
|
|
70
69
|
if (total === BigInt(0) && !loading)
|
|
71
70
|
return _jsx(_Fragment, { children: "Profile has no samples" });
|
|
72
|
-
|
|
71
|
+
if (isTrimmed) {
|
|
72
|
+
console.info("Trimmed ".concat(trimmedFormatted, " (").concat(trimmedPercentage, "%) too small values."));
|
|
73
|
+
}
|
|
74
|
+
return (_jsxs("div", __assign({ className: "relative" }, { children: [compareMode && _jsx(DiffLegend, {}), _jsx("div", __assign({ ref: ref }, { children: _jsx(IcicleGraph, { width: dimensions === null || dimensions === void 0 ? void 0 : dimensions.width, graph: graph, curPath: curPath, setCurPath: setNewCurPath, sampleUnit: sampleUnit, navigateTo: navigateTo }) })), _jsxs("p", __assign({ className: "my-2 text-xs" }, { children: ["Showing ", totalFormatted, ' ', isFiltered ? (_jsxs("span", { children: ["(", filteredPercentage, "%) filtered of ", rawFormatted, ' '] })) : (_jsx(_Fragment, {})), "values.", ' '] }))] })));
|
|
73
75
|
};
|
|
74
76
|
export default ProfileIcicleGraph;
|
|
@@ -61,8 +61,8 @@ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-run
|
|
|
61
61
|
import { useEffect, useState } from 'react';
|
|
62
62
|
import { Duration, Timestamp } from '@parca/client';
|
|
63
63
|
import { useGrpcMetadata, useParcaContext } from '@parca/components';
|
|
64
|
-
import { getStepDuration } from '@parca/functions';
|
|
65
64
|
import { Query } from '@parca/parser';
|
|
65
|
+
import { getStepDuration } from '@parca/utilities';
|
|
66
66
|
import MetricsGraph from '../MetricsGraph';
|
|
67
67
|
import useDelayedLoader from '../useDelayedLoader';
|
|
68
68
|
export var useQueryRange = function (client, queryExpression, start, end) {
|
|
@@ -24,9 +24,9 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
|
|
|
24
24
|
// limitations under the License.
|
|
25
25
|
import { useEffect, useState } from 'react';
|
|
26
26
|
import { Button, ButtonGroup, Card, DateTimeRange, DateTimeRangePicker, useGrpcMetadata, } from '@parca/components';
|
|
27
|
-
import { getStepDuration, getStepDurationInMilliseconds } from '@parca/functions';
|
|
28
27
|
import { CloseIcon } from '@parca/icons';
|
|
29
28
|
import { Query } from '@parca/parser';
|
|
29
|
+
import { getStepDuration, getStepDurationInMilliseconds } from '@parca/utilities';
|
|
30
30
|
import { MergedProfileSelection } from '..';
|
|
31
31
|
import MatchersInput from '../MatchersInput/index';
|
|
32
32
|
import ProfileMetricsGraph from '../ProfileMetricsGraph';
|
package/dist/ProfileSource.js
CHANGED
|
@@ -12,8 +12,8 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
|
|
|
12
12
|
// See the License for the specific language governing permissions and
|
|
13
13
|
// limitations under the License.
|
|
14
14
|
import { ProfileDiffSelection_Mode, QueryRequest_Mode, QueryRequest_ReportType, Timestamp, } from '@parca/client';
|
|
15
|
-
import { formatDate } from '@parca/functions';
|
|
16
15
|
import { ProfileType, Query } from '@parca/parser';
|
|
16
|
+
import { formatDate } from '@parca/utilities';
|
|
17
17
|
export var timeFormat = "MMM d, 'at' h:mm:s a '(UTC)'";
|
|
18
18
|
export var timeFormatShort = 'MMM d, h:mma';
|
|
19
19
|
export function ParamsString(params) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import type { NavigateFunction } from '@parca/
|
|
2
|
+
import type { NavigateFunction } from '@parca/utilities';
|
|
3
3
|
declare const FilterByFunctionButton: ({ navigateTo, }: {
|
|
4
4
|
navigateTo: NavigateFunction | undefined;
|
|
5
5
|
}) => JSX.Element;
|
|
@@ -23,7 +23,7 @@ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-run
|
|
|
23
23
|
// See the License for the specific language governing permissions and
|
|
24
24
|
// limitations under the License.
|
|
25
25
|
import { Select, useURLState } from '@parca/components';
|
|
26
|
-
import useUIFeatureFlag from '@parca/
|
|
26
|
+
import { useUIFeatureFlag } from '@parca/hooks';
|
|
27
27
|
var ViewSelector = function (_a) {
|
|
28
28
|
var defaultValue = _a.defaultValue, navigateTo = _a.navigateTo, position = _a.position, placeholderText = _a.placeholderText, _b = _a.primary, primary = _b === void 0 ? false : _b, _c = _a.addView, addView = _c === void 0 ? false : _c, _d = _a.disabled, disabled = _d === void 0 ? false : _d;
|
|
29
29
|
var callgraphEnabled = useUIFeatureFlag('callgraph')[0];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { DraggableProvidedDragHandleProps } from 'react-beautiful-dnd';
|
|
3
|
-
import type { NavigateFunction } from '@parca/
|
|
3
|
+
import type { NavigateFunction } from '@parca/utilities';
|
|
4
4
|
interface Props {
|
|
5
5
|
dashboardItem: string;
|
|
6
6
|
index: number;
|
|
@@ -74,9 +74,9 @@ import { scaleLinear } from 'd3';
|
|
|
74
74
|
import graphviz from 'graphviz-wasm';
|
|
75
75
|
import { DragDropContext, Draggable, Droppable, } from 'react-beautiful-dnd';
|
|
76
76
|
import { Button, Card, ConditionalWrapper, KeyDownProvider, useParcaContext, useURLState, } from '@parca/components';
|
|
77
|
-
import { useContainerDimensions } from '@parca/
|
|
78
|
-
import { getNewSpanColor } from '@parca/functions';
|
|
77
|
+
import { useContainerDimensions } from '@parca/hooks';
|
|
79
78
|
import { selectDarkMode, useAppSelector } from '@parca/store';
|
|
79
|
+
import { getNewSpanColor } from '@parca/utilities';
|
|
80
80
|
import { Callgraph } from '../';
|
|
81
81
|
import { jsonToDot } from '../Callgraph/utils';
|
|
82
82
|
import ProfileIcicleGraph from '../ProfileIcicleGraph';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { QueryServiceClient } from '@parca/client';
|
|
3
|
-
import { type NavigateFunction } from '@parca/
|
|
3
|
+
import { type NavigateFunction } from '@parca/utilities';
|
|
4
4
|
import { ProfileSource } from './ProfileSource';
|
|
5
5
|
interface ProfileViewWithDataProps {
|
|
6
6
|
queryClient: QueryServiceClient;
|
|
@@ -50,8 +50,8 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
50
50
|
import { useEffect, useState } from 'react';
|
|
51
51
|
import { QueryRequest_ReportType } from '@parca/client';
|
|
52
52
|
import { useGrpcMetadata, useParcaContext, useURLState } from '@parca/components';
|
|
53
|
-
import {
|
|
54
|
-
import
|
|
53
|
+
import { USER_PREFERENCES, useUserPreference } from '@parca/hooks';
|
|
54
|
+
import { saveAsBlob } from '@parca/utilities';
|
|
55
55
|
import { ProfileView } from './ProfileView';
|
|
56
56
|
import { useQuery } from './useQuery';
|
|
57
57
|
import { downloadPprof } from './utils';
|
package/dist/TopTable/index.d.ts
CHANGED
package/dist/TopTable/index.js
CHANGED
|
@@ -25,7 +25,7 @@ import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
|
25
25
|
import React, { useCallback, useEffect, useMemo } from 'react';
|
|
26
26
|
import { createColumnHelper } from '@tanstack/react-table';
|
|
27
27
|
import { Button, Table, useURLState } from '@parca/components';
|
|
28
|
-
import { getLastItem, isSearchMatch, parseParams, valueFormatter, } from '@parca/
|
|
28
|
+
import { getLastItem, isSearchMatch, parseParams, valueFormatter, } from '@parca/utilities';
|
|
29
29
|
import { hexifyAddress } from '../utils';
|
|
30
30
|
export var RowLabel = function (meta) {
|
|
31
31
|
var _a, _b, _c, _d, _e, _f;
|
|
@@ -25,8 +25,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
25
25
|
import { Fragment, useState } from 'react';
|
|
26
26
|
import { Popover, Transition } from '@headlessui/react';
|
|
27
27
|
import { usePopper } from 'react-popper';
|
|
28
|
-
import { getIncreasedSpanColor, getNewSpanColor, getReducedSpanColor } from '@parca/functions';
|
|
29
28
|
import { selectDarkMode, useAppSelector } from '@parca/store';
|
|
29
|
+
import { getIncreasedSpanColor, getNewSpanColor, getReducedSpanColor } from '@parca/utilities';
|
|
30
30
|
var transparencyValues = [-100, -80, -60, -40, -20, 0, 20, 40, 60, 80, 100];
|
|
31
31
|
var DiffLegendBar = function (_a) {
|
|
32
32
|
var onMouseEnter = _a.onMouseEnter, onMouseLeave = _a.onMouseLeave;
|
package/package.json
CHANGED
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@parca/profile",
|
|
3
|
-
"version": "0.16.
|
|
3
|
+
"version": "0.16.145",
|
|
4
4
|
"description": "Profile viewing libraries",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@parca/client": "^0.16.
|
|
7
|
-
"@parca/components": "^0.16.
|
|
6
|
+
"@parca/client": "^0.16.69",
|
|
7
|
+
"@parca/components": "^0.16.119",
|
|
8
8
|
"@parca/dynamicsize": "^0.16.54",
|
|
9
|
-
"@parca/functions": "^0.16.
|
|
9
|
+
"@parca/functions": "^0.16.70",
|
|
10
|
+
"@parca/hooks": "^0.0.3",
|
|
10
11
|
"@parca/parser": "^0.16.55",
|
|
11
|
-
"@parca/store": "^0.16.
|
|
12
|
+
"@parca/store": "^0.16.69",
|
|
13
|
+
"@parca/utilities": "^0.0.3",
|
|
12
14
|
"@types/react-beautiful-dnd": "^13.1.3",
|
|
13
15
|
"d3": "7.8.2",
|
|
14
16
|
"d3-scale": "^4.0.2",
|
|
@@ -45,5 +47,5 @@
|
|
|
45
47
|
"access": "public",
|
|
46
48
|
"registry": "https://registry.npmjs.org/"
|
|
47
49
|
},
|
|
48
|
-
"gitHead": "
|
|
50
|
+
"gitHead": "472dedb7be9a8b5eaee182d4fe42bf0ab2cb03d0"
|
|
49
51
|
}
|
package/src/Callgraph/index.tsx
CHANGED
|
@@ -20,8 +20,8 @@ import {MapInteractionCSS} from 'react-map-interaction';
|
|
|
20
20
|
|
|
21
21
|
import {CallgraphEdge, Callgraph as CallgraphType} from '@parca/client';
|
|
22
22
|
import {Button, useKeyDown, useURLState} from '@parca/components';
|
|
23
|
-
import {getNewSpanColor} from '@parca/functions';
|
|
24
23
|
import {selectDarkMode, setHoveringNode, useAppDispatch, useAppSelector} from '@parca/store';
|
|
24
|
+
import {getNewSpanColor} from '@parca/utilities';
|
|
25
25
|
|
|
26
26
|
import GraphTooltip from '../GraphTooltip';
|
|
27
27
|
|
|
@@ -30,8 +30,8 @@ import {
|
|
|
30
30
|
Function as ParcaFunction,
|
|
31
31
|
} from '@parca/client/dist/parca/metastore/v1alpha1/metastore';
|
|
32
32
|
import {useKeyDown} from '@parca/components';
|
|
33
|
-
import {getLastItem, valueFormatter} from '@parca/functions';
|
|
34
33
|
import {selectHoveringNode, useAppSelector} from '@parca/store';
|
|
34
|
+
import {getLastItem, valueFormatter} from '@parca/utilities';
|
|
35
35
|
|
|
36
36
|
import {hexifyAddress, truncateString, truncateStringReverse} from '../';
|
|
37
37
|
import {ExpandOnHover} from './ExpandOnHoverValue';
|
|
@@ -18,8 +18,8 @@ import TextareaAutosize from 'react-textarea-autosize';
|
|
|
18
18
|
|
|
19
19
|
import {LabelsResponse, QueryServiceClient} from '@parca/client';
|
|
20
20
|
import {useGrpcMetadata} from '@parca/components';
|
|
21
|
-
import {sanitizeLabelValue} from '@parca/functions';
|
|
22
21
|
import {Query} from '@parca/parser';
|
|
22
|
+
import {sanitizeLabelValue} from '@parca/utilities';
|
|
23
23
|
|
|
24
24
|
import SuggestionsList, {Suggestion, Suggestions} from './SuggestionsList';
|
|
25
25
|
|
|
@@ -18,7 +18,7 @@ import {usePopper} from 'react-popper';
|
|
|
18
18
|
|
|
19
19
|
import {Label} from '@parca/client';
|
|
20
20
|
import {TextWithTooltip} from '@parca/components';
|
|
21
|
-
import {formatDate, valueFormatter} from '@parca/
|
|
21
|
+
import {formatDate, valueFormatter} from '@parca/utilities';
|
|
22
22
|
|
|
23
23
|
import {HighlightedSeries} from '../';
|
|
24
24
|
import {timeFormat} from '../../';
|
|
@@ -19,13 +19,13 @@ import throttle from 'lodash.throttle';
|
|
|
19
19
|
|
|
20
20
|
import {Label, MetricsSample, MetricsSeries as MetricsSeriesPb} from '@parca/client';
|
|
21
21
|
import {DateTimeRange, useKeyDown} from '@parca/components';
|
|
22
|
-
import {useContainerDimensions} from '@parca/
|
|
22
|
+
import {useContainerDimensions} from '@parca/hooks';
|
|
23
23
|
import {
|
|
24
24
|
formatDate,
|
|
25
25
|
formatForTimespan,
|
|
26
26
|
sanitizeHighlightedValues,
|
|
27
27
|
valueFormatter,
|
|
28
|
-
} from '@parca/
|
|
28
|
+
} from '@parca/utilities';
|
|
29
29
|
|
|
30
30
|
import {MergedProfileSelection} from '..';
|
|
31
31
|
import MetricsCircle from '../MetricsCircle';
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
// limitations under the License.
|
|
13
13
|
|
|
14
14
|
import {QueryServiceClient} from '@parca/client';
|
|
15
|
-
import type {NavigateFunction} from '@parca/functions';
|
|
16
15
|
import {Query} from '@parca/parser';
|
|
16
|
+
import type {NavigateFunction} from '@parca/utilities';
|
|
17
17
|
|
|
18
18
|
import {ProfileDiffSource, ProfileSelection, ProfileViewWithData} from '..';
|
|
19
19
|
import ProfileSelector, {QuerySelection} from '../ProfileSelector';
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
// limitations under the License.
|
|
13
13
|
|
|
14
14
|
import {QueryServiceClient} from '@parca/client';
|
|
15
|
-
import type {NavigateFunction} from '@parca/
|
|
15
|
+
import type {NavigateFunction} from '@parca/utilities';
|
|
16
16
|
|
|
17
17
|
import {ProfileSelection, ProfileViewWithData} from '..';
|
|
18
18
|
import ProfileSelector, {QuerySelection} from '../ProfileSelector';
|
|
@@ -17,8 +17,8 @@ import {Provider} from 'react-redux';
|
|
|
17
17
|
|
|
18
18
|
import {QueryServiceClient} from '@parca/client';
|
|
19
19
|
import {DateTimeRange, KeyDownProvider, useParcaContext} from '@parca/components';
|
|
20
|
-
import type {NavigateFunction} from '@parca/functions';
|
|
21
20
|
import {store} from '@parca/store';
|
|
21
|
+
import type {NavigateFunction} from '@parca/utilities';
|
|
22
22
|
|
|
23
23
|
import {ProfileSelection, ProfileSelectionFromParams, SuffixParams} from '..';
|
|
24
24
|
import {QuerySelection, useProfileTypes} from '../ProfileSelector';
|
|
@@ -17,9 +17,9 @@ import {Icon} from '@iconify/react';
|
|
|
17
17
|
import cx from 'classnames';
|
|
18
18
|
|
|
19
19
|
import {useURLState} from '@parca/components';
|
|
20
|
-
import
|
|
21
|
-
import useUserPreference, {USER_PREFERENCES} from '@parca/functions/useUserPreference';
|
|
20
|
+
import {USER_PREFERENCES, useUserPreference} from '@parca/hooks';
|
|
22
21
|
import {EVERYTHING_ELSE, selectStackColors, useAppSelector} from '@parca/store';
|
|
22
|
+
import type {NavigateFunction} from '@parca/utilities';
|
|
23
23
|
|
|
24
24
|
interface Props {
|
|
25
25
|
navigateTo?: NavigateFunction;
|
|
@@ -23,8 +23,8 @@ import {
|
|
|
23
23
|
Function as ParcaFunction,
|
|
24
24
|
} from '@parca/client/dist/parca/metastore/v1alpha1/metastore';
|
|
25
25
|
import {useKeyDown} from '@parca/components';
|
|
26
|
-
import {isSearchMatch} from '@parca/functions';
|
|
27
26
|
import {selectBinaries, setHoveringNode, useAppDispatch, useAppSelector} from '@parca/store';
|
|
27
|
+
import {isSearchMatch} from '@parca/utilities';
|
|
28
28
|
|
|
29
29
|
import useNodeColor from './useNodeColor';
|
|
30
30
|
import {nodeLabel} from './utils';
|
|
@@ -16,8 +16,8 @@ import {memo, useEffect, useMemo, useRef, useState} from 'react';
|
|
|
16
16
|
import {scaleLinear} from 'd3-scale';
|
|
17
17
|
|
|
18
18
|
import {Flamegraph} from '@parca/client';
|
|
19
|
-
import {selectQueryParam, type NavigateFunction} from '@parca/functions';
|
|
20
19
|
import {setHoveringNode, useAppDispatch} from '@parca/store';
|
|
20
|
+
import {selectQueryParam, type NavigateFunction} from '@parca/utilities';
|
|
21
21
|
|
|
22
22
|
import GraphTooltip from '../../GraphTooltip';
|
|
23
23
|
import ColorStackLegend from './ColorStackLegend';
|
|
@@ -19,8 +19,7 @@ import {
|
|
|
19
19
|
Mapping,
|
|
20
20
|
Function as ParcaFunction,
|
|
21
21
|
} from '@parca/client/dist/parca/metastore/v1alpha1/metastore';
|
|
22
|
-
import
|
|
23
|
-
import useUserPreference, {USER_PREFERENCES} from '@parca/functions/useUserPreference';
|
|
22
|
+
import {USER_PREFERENCES, useUserPreference} from '@parca/hooks';
|
|
24
23
|
import {
|
|
25
24
|
selectDarkMode,
|
|
26
25
|
setFeatures,
|
|
@@ -29,6 +28,7 @@ import {
|
|
|
29
28
|
type FeatureType,
|
|
30
29
|
type FeaturesMap,
|
|
31
30
|
} from '@parca/store';
|
|
31
|
+
import type {ColorProfileName} from '@parca/utilities';
|
|
32
32
|
|
|
33
33
|
import {extractFeature} from './utils';
|
|
34
34
|
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
|
|
14
14
|
import {useMemo} from 'react';
|
|
15
15
|
|
|
16
|
-
import {COLOR_PROFILES, diffColor} from '@parca/functions';
|
|
17
16
|
import {EVERYTHING_ELSE, selectDarkMode, selectStackColors, useAppSelector} from '@parca/store';
|
|
17
|
+
import {COLOR_PROFILES, diffColor} from '@parca/utilities';
|
|
18
18
|
|
|
19
19
|
import type {ColoredFlamegraphNode} from './useColoredGraph';
|
|
20
20
|
|
|
@@ -17,8 +17,8 @@ import {
|
|
|
17
17
|
Mapping,
|
|
18
18
|
Function as ParcaFunction,
|
|
19
19
|
} from '@parca/client/dist/parca/metastore/v1alpha1/metastore';
|
|
20
|
-
import {getLastItem} from '@parca/functions';
|
|
21
20
|
import {EVERYTHING_ELSE, FEATURE_TYPES, type Feature} from '@parca/store';
|
|
21
|
+
import {getLastItem} from '@parca/utilities';
|
|
22
22
|
|
|
23
23
|
import {hexifyAddress} from '../../utils';
|
|
24
24
|
|
|
@@ -15,8 +15,8 @@ import {useEffect, useMemo} from 'react';
|
|
|
15
15
|
|
|
16
16
|
import {Flamegraph} from '@parca/client';
|
|
17
17
|
import {Button} from '@parca/components';
|
|
18
|
-
import {useContainerDimensions} from '@parca/
|
|
19
|
-
import {selectQueryParam, type NavigateFunction} from '@parca/
|
|
18
|
+
import {useContainerDimensions} from '@parca/hooks';
|
|
19
|
+
import {selectQueryParam, type NavigateFunction} from '@parca/utilities';
|
|
20
20
|
|
|
21
21
|
import DiffLegend from '../components/DiffLegend';
|
|
22
22
|
import {IcicleGraph} from './IcicleGraph';
|
|
@@ -69,7 +69,6 @@ const ProfileIcicleGraph = ({
|
|
|
69
69
|
trimmedFormatted,
|
|
70
70
|
trimmedPercentage,
|
|
71
71
|
isFiltered,
|
|
72
|
-
filteredFormatted,
|
|
73
72
|
filteredPercentage,
|
|
74
73
|
] = useMemo(() => {
|
|
75
74
|
if (graph === undefined) {
|
|
@@ -90,8 +89,7 @@ const ProfileIcicleGraph = ({
|
|
|
90
89
|
numberFormatter.format(trimmed),
|
|
91
90
|
numberFormatter.format((trimmed * BigInt(100)) / rawTotalDivisor),
|
|
92
91
|
filtered > 0,
|
|
93
|
-
numberFormatter.format(
|
|
94
|
-
numberFormatter.format((filtered * BigInt(100)) / rawTotalDivisor),
|
|
92
|
+
numberFormatter.format((total * BigInt(100)) / rawTotalDivisor),
|
|
95
93
|
];
|
|
96
94
|
}, [filtered, graph, total]);
|
|
97
95
|
|
|
@@ -118,6 +116,10 @@ const ProfileIcicleGraph = ({
|
|
|
118
116
|
|
|
119
117
|
if (total === BigInt(0) && !loading) return <>Profile has no samples</>;
|
|
120
118
|
|
|
119
|
+
if (isTrimmed) {
|
|
120
|
+
console.info(`Trimmed ${trimmedFormatted} (${trimmedPercentage}%) too small values.`);
|
|
121
|
+
}
|
|
122
|
+
|
|
121
123
|
return (
|
|
122
124
|
<div className="relative">
|
|
123
125
|
{compareMode && <DiffLegend />}
|
|
@@ -132,22 +134,15 @@ const ProfileIcicleGraph = ({
|
|
|
132
134
|
/>
|
|
133
135
|
</div>
|
|
134
136
|
<p className="my-2 text-xs">
|
|
135
|
-
Showing {totalFormatted}
|
|
136
|
-
samples.{' '}
|
|
137
|
+
Showing {totalFormatted}{' '}
|
|
137
138
|
{isFiltered ? (
|
|
138
139
|
<span>
|
|
139
|
-
|
|
140
|
-
</span>
|
|
141
|
-
) : (
|
|
142
|
-
<></>
|
|
143
|
-
)}
|
|
144
|
-
{isTrimmed ? (
|
|
145
|
-
<span>
|
|
146
|
-
Trimmed {trimmedFormatted} ({trimmedPercentage}%) too small samples.
|
|
140
|
+
({filteredPercentage}%) filtered of {rawFormatted}{' '}
|
|
147
141
|
</span>
|
|
148
142
|
) : (
|
|
149
143
|
<></>
|
|
150
144
|
)}
|
|
145
|
+
values.{' '}
|
|
151
146
|
</p>
|
|
152
147
|
</div>
|
|
153
148
|
);
|
|
@@ -17,8 +17,8 @@ import {RpcError} from '@protobuf-ts/runtime-rpc';
|
|
|
17
17
|
|
|
18
18
|
import {Duration, Label, QueryRangeResponse, QueryServiceClient, Timestamp} from '@parca/client';
|
|
19
19
|
import {DateTimeRange, useGrpcMetadata, useParcaContext} from '@parca/components';
|
|
20
|
-
import {getStepDuration} from '@parca/functions';
|
|
21
20
|
import {Query} from '@parca/parser';
|
|
21
|
+
import {getStepDuration} from '@parca/utilities';
|
|
22
22
|
|
|
23
23
|
import {MergedProfileSelection, ProfileSelection} from '..';
|
|
24
24
|
import MetricsGraph from '../MetricsGraph';
|
|
@@ -24,9 +24,9 @@ import {
|
|
|
24
24
|
DateTimeRangePicker,
|
|
25
25
|
useGrpcMetadata,
|
|
26
26
|
} from '@parca/components';
|
|
27
|
-
import {getStepDuration, getStepDurationInMilliseconds} from '@parca/functions';
|
|
28
27
|
import {CloseIcon} from '@parca/icons';
|
|
29
28
|
import {Query} from '@parca/parser';
|
|
29
|
+
import {getStepDuration, getStepDurationInMilliseconds} from '@parca/utilities';
|
|
30
30
|
|
|
31
31
|
import {MergedProfileSelection, ProfileSelection} from '..';
|
|
32
32
|
import MatchersInput from '../MatchersInput/index';
|
package/src/ProfileSource.tsx
CHANGED
|
@@ -20,8 +20,8 @@ import {
|
|
|
20
20
|
QueryRequest_ReportType,
|
|
21
21
|
Timestamp,
|
|
22
22
|
} from '@parca/client';
|
|
23
|
-
import {formatDate} from '@parca/functions';
|
|
24
23
|
import {Matcher, ProfileType, Query} from '@parca/parser';
|
|
24
|
+
import {formatDate} from '@parca/utilities';
|
|
25
25
|
|
|
26
26
|
export interface ProfileSource {
|
|
27
27
|
QueryRequest: () => QueryRequest;
|
|
@@ -16,7 +16,7 @@ import {useCallback, useMemo, useState} from 'react';
|
|
|
16
16
|
import {Icon} from '@iconify/react';
|
|
17
17
|
|
|
18
18
|
import {Input, useURLState} from '@parca/components';
|
|
19
|
-
import type {NavigateFunction} from '@parca/
|
|
19
|
+
import type {NavigateFunction} from '@parca/utilities';
|
|
20
20
|
|
|
21
21
|
const FilterByFunctionButton = ({
|
|
22
22
|
navigateTo,
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
// limitations under the License.
|
|
13
13
|
|
|
14
14
|
import {Select, useURLState, type SelectElement} from '@parca/components';
|
|
15
|
-
import
|
|
16
|
-
import
|
|
15
|
+
import {useUIFeatureFlag} from '@parca/hooks';
|
|
16
|
+
import type {NavigateFunction} from '@parca/utilities';
|
|
17
17
|
|
|
18
18
|
interface Props {
|
|
19
19
|
position: number;
|
|
@@ -17,8 +17,8 @@ import {Icon} from '@iconify/react';
|
|
|
17
17
|
import cx from 'classnames';
|
|
18
18
|
import type {DraggableProvidedDragHandleProps} from 'react-beautiful-dnd';
|
|
19
19
|
|
|
20
|
-
import type {NavigateFunction} from '@parca/functions';
|
|
21
20
|
import {CloseIcon} from '@parca/icons';
|
|
21
|
+
import type {NavigateFunction} from '@parca/utilities';
|
|
22
22
|
|
|
23
23
|
import ViewSelector from './ViewSelector';
|
|
24
24
|
|
|
@@ -33,9 +33,9 @@ import {
|
|
|
33
33
|
useParcaContext,
|
|
34
34
|
useURLState,
|
|
35
35
|
} from '@parca/components';
|
|
36
|
-
import {useContainerDimensions} from '@parca/
|
|
37
|
-
import {getNewSpanColor} from '@parca/functions';
|
|
36
|
+
import {useContainerDimensions} from '@parca/hooks';
|
|
38
37
|
import {selectDarkMode, useAppSelector} from '@parca/store';
|
|
38
|
+
import {getNewSpanColor} from '@parca/utilities';
|
|
39
39
|
|
|
40
40
|
import {Callgraph} from '../';
|
|
41
41
|
import {jsonToDot} from '../Callgraph/utils';
|
|
@@ -15,8 +15,8 @@ import {useEffect, useState} from 'react';
|
|
|
15
15
|
|
|
16
16
|
import {QueryRequest_ReportType, QueryServiceClient} from '@parca/client';
|
|
17
17
|
import {useGrpcMetadata, useParcaContext, useURLState} from '@parca/components';
|
|
18
|
-
import {
|
|
19
|
-
import
|
|
18
|
+
import {USER_PREFERENCES, useUserPreference} from '@parca/hooks';
|
|
19
|
+
import {saveAsBlob, type NavigateFunction} from '@parca/utilities';
|
|
20
20
|
|
|
21
21
|
import {ProfileSource} from './ProfileSource';
|
|
22
22
|
import {ProfileView} from './ProfileView';
|
package/src/TopTable/index.tsx
CHANGED
|
@@ -16,8 +16,8 @@ import {Fragment, useState} from 'react';
|
|
|
16
16
|
import {Popover, Transition} from '@headlessui/react';
|
|
17
17
|
import {usePopper} from 'react-popper';
|
|
18
18
|
|
|
19
|
-
import {getIncreasedSpanColor, getNewSpanColor, getReducedSpanColor} from '@parca/functions';
|
|
20
19
|
import {selectDarkMode, useAppSelector} from '@parca/store';
|
|
20
|
+
import {getIncreasedSpanColor, getNewSpanColor, getReducedSpanColor} from '@parca/utilities';
|
|
21
21
|
|
|
22
22
|
const transparencyValues = [-100, -80, -60, -40, -20, 0, 20, 40, 60, 80, 100];
|
|
23
23
|
|